summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/breakpoints.coffee
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/breakpoints.coffee')
-rw-r--r--app/assets/javascripts/breakpoints.coffee43
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()