diff options
Diffstat (limited to 'app/assets/javascripts/breakpoints.coffee')
-rw-r--r-- | app/assets/javascripts/breakpoints.coffee | 43 |
1 files changed, 26 insertions, 17 deletions
diff --git a/app/assets/javascripts/breakpoints.coffee b/app/assets/javascripts/breakpoints.coffee index fd2ee8efa2c..73a42d99982 100644 --- a/app/assets/javascripts/breakpoints.coffee +++ b/app/assets/javascripts/breakpoints.coffee @@ -1,24 +1,33 @@ class @Breakpoints - BREAKPOINTS = ["xs", "sm", "md", "lg"] + instance = null; - constructor: -> - @setup() + class BreakpointInstance + BREAKPOINTS = ["xs", "sm", "md", "lg"] - setup: -> - allDeviceSelector = BREAKPOINTS.map (breakpoint) -> - ".device-#{breakpoint}" + constructor: -> + @setup() - if $(allDeviceSelector.join(",")).length - return + setup: -> + allDeviceSelector = BREAKPOINTS.map (breakpoint) -> + ".device-#{breakpoint}" - # Create all the elements - $.each BREAKPOINTS, (i, breakpoint) -> - $("body").append "<div class='device-#{breakpoint} visible-#{breakpoint}'></div>" + return if $(allDeviceSelector.join(",")).length - getBreakpointSize: -> - allDeviceSelector = BREAKPOINTS.map (breakpoint) -> - ".device-#{breakpoint}" + # Create all the elements + $.each BREAKPOINTS, (i, breakpoint) -> + $("body").append "<div class='device-#{breakpoint} visible-#{breakpoint}'></div>" - $visibleDevice = $(allDeviceSelector.join(",")).filter(":visible") - - return $visibleDevice.attr("class").split("visible-")[1] + getBreakpointSize: -> + @setup() + + allDeviceSelector = BREAKPOINTS.map (breakpoint) -> + ".device-#{breakpoint}" + + $visibleDevice = $(allDeviceSelector.join(",")).filter(":visible") + + return $visibleDevice.attr("class").split("visible-")[1] + + @get: -> + return instance ?= new BreakpointInstance + +@bp = Breakpoints.get() |