Files
@ 40d5a54dec99
Branch filter:
Location: light9/web/edit-choice.coffee - annotation
40d5a54dec99
1.5 KiB
text/coffeescript
ts warnings
4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 | log = debug('editchoice')
RDFS = 'http://www.w3.org/2000/01/rdf-schema#'
window.setupDrop = (senseElem, highlightElem, coordinateOriginElem, onDrop) ->
highlight = -> highlightElem.classList.add('dragging')
unhighlight = -> highlightElem.classList.remove('dragging')
senseElem.addEventListener 'drag', (event) =>
senseElem.addEventListener 'dragstart', (event) =>
senseElem.addEventListener 'dragend', (event) =>
senseElem.addEventListener 'dragover', (event) =>
event.preventDefault()
event.dataTransfer.dropEffect = 'copy'
highlight()
senseElem.addEventListener 'dragenter', (event) =>
highlight()
senseElem.addEventListener 'dragleave', (event) =>
unhighlight()
senseElem.addEventListener 'drop', (event) ->
event.preventDefault()
uri = event.dataTransfer.getData('text/uri-list')
pos = if coordinateOriginElem?
root = coordinateOriginElem.getBoundingClientRect()
$V([event.pageX - root.left, event.pageY - root.top])
else
null
try
onDrop(uri, pos)
catch e
log(e)
unhighlight()
coffeeElementSetup(class EditChoice extends Polymer.Element
@is: "edit-choice",
@getter_properties:
graph: {type: Object, notify: true},
uri: {type: String, notify: true},
_setUri: (u) ->
@uri = u
@dispatchEvent(new CustomEvent('edited'))
connectedCallback: ->
super.connectedCallback()
setupDrop(@$.box, @$.box, null, @_setUri.bind(@))
unlink: ->
@_setUri(null)
)
|