{"version":3,"names":["HaloVivideOutportConnectionItem","__SystemJSRewritingHack","_export","setters","_srcClientLivelyJs","lively","default","_srcClientMorphicNodeHelpersJs","nodes","_srcClientMorphicEventHelpersJs","events","_srcClientGraphicsJs","pt","_srcComponentsHaloLivelyHaloItemJs","HaloItem","_srcClientPreferencesJs","Preferences","_srcClientMorphicSnappingJs","Snapping","Grid","_srcClientVivideComponentsVivideViewJs","VivideView","_srcClientSvgJs","svg","_utils","cancelEvent","execute","_recorder_","_src_components_halo_lively_halo_vivide_outport_connection_item_js","Object","defineProperty","get","set","thisIsVererySecretVariableName","enumerable","configurable","path","overlay","initialize","addEventListener","evt","removeConnection","setTarget","target","_target","updateTarget","view","_view","classList","add","offset","getClientPosition","startPoint","getClientBounds","rightCenter","subPt","startOffsetPoint","addPt","targetCenterPoint","getClientCenter","setPathVertices","c","x1","x","y1","y","setClientPosition","setExtent","extent","removeConnectionTo","haloService","showHalos","window","that"],"sources":["lively-halo-vivide-outport-connection-item.js"],"sourcesContent":["import lively from 'src/client/lively.js'\nimport * as nodes from 'src/client/morphic/node-helpers.js';\nimport * as events from 'src/client/morphic/event-helpers.js';\nimport {pt} from 'src/client/graphics.js'\nimport HaloItem from 'src/components/halo/lively-halo-item.js';\nimport Preferences from 'src/client/preferences.js'; \nimport Snapping from \"src/client/morphic/snapping.js\"\nimport {Grid} from 'src/client/morphic/snapping.js';\nimport VivideView from 'src/client/vivide/components/vivide-view.js';\nimport svg from \"src/client/svg.js\"\nimport { cancelEvent } from 'utils';\n\nexport default class HaloVivideOutportConnectionItem extends HaloItem {\n\n  get path() { return this.get('#path-to-target'); }\n  get overlay() { return this.get('#overlay-target'); }\n\n  initialize() {\n    this.addEventListener('click', evt => this.removeConnection(evt));\n    this.path.addEventListener('click', cancelEvent);\n    this.overlay.addEventListener('click', cancelEvent);\n  }\n\n  setTarget(target) {\n    this._target = target;\n  }\n\n  updateTarget(view) {\n    this._view = view;\n    if(!this._target) {\n      this.classList.add('broken');\n      return;\n    }\n\n    let offset = lively.getClientPosition(this.get('svg'));\n    let startPoint = lively.getClientBounds(this).rightCenter().subPt(offset);\n    let startOffsetPoint = startPoint.addPt(pt(20, 0));\n    let targetCenterPoint = lively.getClientCenter(this._target).subPt(offset);\n\n    svg.setPathVertices(this.path, [\n      { c: 'M', x1: startPoint.x, y1: startPoint.y},\n      { c: 'L', x1: startOffsetPoint.x, y1: startOffsetPoint.y},\n      { c: 'L', x1: startOffsetPoint.x, y1: targetCenterPoint.y},\n      { c: 'L', x1: targetCenterPoint.x, y1: targetCenterPoint.y},\n    ]);\n\n    lively.setClientPosition(this.overlay, lively.getClientPosition(this._target));\n    lively.setExtent(this.overlay, lively.getClientBounds(this._target).extent());\n  }\n  \n  removeConnection(evt) {\n    if(this._view && this._target) {\n      this._view.removeConnectionTo(this._target);\n      lively.haloService.showHalos(window.that);\n      cancelEvent(evt);\n    }\n  }\n}\n"],"mappings":"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"}