Merge afb-client
[src/app-framework-demo.git] / afb-client / bower_components / tether / coffee / markAttachment.coffee
diff --git a/afb-client/bower_components/tether/coffee/markAttachment.coffee b/afb-client/bower_components/tether/coffee/markAttachment.coffee
new file mode 100644 (file)
index 0000000..b29c9ef
--- /dev/null
@@ -0,0 +1,30 @@
+@Tether.modules.push
+  initialize: ->
+    @markers = {}
+
+    for type in ['target', 'element']
+      el = document.createElement 'div'
+      el.className = @getClass("#{ type }-marker")
+
+      dot = document.createElement 'div'
+      dot.className = @getClass('marker-dot')
+      el.appendChild dot
+
+      @[type].appendChild el
+
+      @markers[type] = {dot, el}
+
+  position: ({manualOffset, manualTargetOffset}) ->
+    offsets =
+      element: manualOffset
+      target: manualTargetOffset
+
+    for type, offset of offsets
+      for side, val of offset
+        if typeof val isnt 'string' or (val.indexOf('%') is -1 and val.indexOf('px') is -1)
+          val += 'px'
+
+        if @markers[type].dot.style[side] isnt val
+          @markers[type].dot.style[side] = val
+
+    true