"enable aexpr";

System.register(['active-expression-rewriting', 'reactive-jsx', 'src/components/halo/lively-halo-item.js', 'src/client/graphics.js', 'src/client/contextmenu.js', './Connection.js', 'src/client/constants.js'], function (_export, _context) {
  "use strict";

  var _getAndCallMember, _setMember, _setLocal, _getLocal, _getGlobal, _getMember, _traceMember, _childExpression, _children, _attributes, _element, HaloItem, pt, ContextMenu, Connection, domEvents, cssProperties;

  return {
    setters: [function (_activeExpressionRewriting) {
      _getAndCallMember = _activeExpressionRewriting.getAndCallMember;
      _setMember = _activeExpressionRewriting.setMember;
      _setLocal = _activeExpressionRewriting.setLocal;
      _getLocal = _activeExpressionRewriting.getLocal;
      _getGlobal = _activeExpressionRewriting.getGlobal;
      _getMember = _activeExpressionRewriting.getMember;
      _traceMember = _activeExpressionRewriting.traceMember;
    }, function (_reactiveJsx) {
      _childExpression = _reactiveJsx.childExpression;
      _children = _reactiveJsx.children;
      _attributes = _reactiveJsx.attributes;
      _element = _reactiveJsx.element;
    }, function (_srcComponentsHaloLivelyHaloItemJs) {
      HaloItem = _srcComponentsHaloLivelyHaloItemJs.default;
    }, function (_srcClientGraphicsJs) {
      pt = _srcClientGraphicsJs.pt;
    }, function (_srcClientContextmenuJs) {
      ContextMenu = _srcClientContextmenuJs.default;
    }, function (_ConnectionJs) {
      Connection = _ConnectionJs.default;
    }, function (_srcClientConstantsJs) {
      domEvents = _srcClientConstantsJs.domEvents;
      cssProperties = _srcClientConstantsJs.cssProperties;
    }],
    execute: function () {
      const __SystemJSRewritingHack = {};
      _recorder_._src_components_halo_lively_halo_connectors_item_js = _recorder_._src_components_halo_lively_halo_connectors_item_js || {};
      let _scope = {
        isScope: true
      };
      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'HaloItem', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'HaloItem', HaloItem) : void 0, HaloItem;
        },

        set(thisIsVererySecretVariableName) {
          let _scope2 = {
            isScope: true
          };
          HaloItem = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope2, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName), true ? _setLocal(_scope, 'HaloItem', HaloItem, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 15,
              line: 3
            },
            start: {
              column: 7,
              line: 3
            },
            source: ''
          }) : void 0, HaloItem;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'pt', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'pt', pt) : void 0, pt;
        },

        set(thisIsVererySecretVariableName) {
          let _scope3 = {
            isScope: true
          };
          pt = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope3, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName), true ? _setLocal(_scope, 'pt', pt, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 10,
              line: 4
            },
            start: {
              column: 8,
              line: 4
            },
            source: ''
          }) : void 0, pt;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'ContextMenu', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'ContextMenu', ContextMenu) : void 0, ContextMenu;
        },

        set(thisIsVererySecretVariableName) {
          let _scope4 = {
            isScope: true
          };
          ContextMenu = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope4, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName), true ? _setLocal(_scope, 'ContextMenu', ContextMenu, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 18,
              line: 5
            },
            start: {
              column: 7,
              line: 5
            },
            source: ''
          }) : void 0, ContextMenu;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'Connection', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'Connection', Connection) : void 0, Connection;
        },

        set(thisIsVererySecretVariableName) {
          let _scope5 = {
            isScope: true
          };
          Connection = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope5, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName), true ? _setLocal(_scope, 'Connection', Connection, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 17,
              line: 6
            },
            start: {
              column: 7,
              line: 6
            },
            source: ''
          }) : void 0, Connection;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'cssProperties', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'cssProperties', cssProperties) : void 0, cssProperties;
        },

        set(thisIsVererySecretVariableName) {
          let _scope6 = {
            isScope: true
          };
          cssProperties = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope6, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName), true ? _setLocal(_scope, 'cssProperties', cssProperties, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 33,
              line: 7
            },
            start: {
              column: 20,
              line: 7
            },
            source: ''
          }) : void 0, cssProperties;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'domEvents', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'domEvents', domEvents) : void 0, domEvents;
        },

        set(thisIsVererySecretVariableName) {
          let _scope7 = {
            isScope: true
          };
          domEvents = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope7, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName), true ? _setLocal(_scope, 'domEvents', domEvents, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 18,
              line: 7
            },
            start: {
              column: 9,
              line: 7
            },
            source: ''
          }) : void 0, domEvents;
          return true;
        },

        enumerable: true,
        configurable: true
      });
      class LivelyHaloConnectorsItem extends HaloItem {

        async initialize() {
          _setMember(this, 'windowTitle', "LivelyHaloConnectorsItem", {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 49,
              line: 13
            },
            start: {
              column: 4,
              line: 13
            },
            source: ''
          });

          if (self.__expressionAnalysisMode__) _traceMember(this, 'registerEvent');
          this.registerEvent('click', 'onClick');

          _setMember(this, '__classFilePath__', 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js', (self.__expressionAnalysisMode__ ? _getGlobal('undefined') : void 0, undefined));
        }

        onClick(evt) {
          let _scope8 = {
            isScope: true
          };

          _setMember(this, 'source', _getMember((self.__expressionAnalysisMode__ ? _getGlobal('window') : void 0, window), 'that'), {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 31,
              line: 19
            },
            start: {
              column: 6,
              line: 19
            },
            source: ''
          });

          if (self.__expressionAnalysisMode__) _traceMember(this, 'showStartingConnectorsMenuFor');
          this.showStartingConnectorsMenuFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope8, 'evt', evt) : void 0 : evt, evt));

          if (self.__expressionAnalysisMode__) _traceMember(this, 'hideHalo');
          this.hideHalo();
        }

        attachedCallback() {}

        detachedCallback() {}

        async showMenu(evt, menuItems) {
          let _scope9 = {
            isScope: true
          };

          return self.__expressionAnalysisMode__ ? _traceMember(ContextMenu, 'openIn') : void 0, (self.__expressionAnalysisMode__ ? _getLocal(_scope, 'ContextMenu', ContextMenu) : void 0, ContextMenu).openIn(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('document') : void 0, document), 'body'), (evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope9, 'evt', evt) : void 0 : evt, evt), (self.__expressionAnalysisMode__ ? _getGlobal('undefined') : void 0, undefined), _getMember((self.__expressionAnalysisMode__ ? _getGlobal('document') : void 0, document), 'body'), (menuItems === Object(menuItems) ? self.__expressionAnalysisMode__ ? _getLocal(_scope9, 'menuItems', menuItems) : void 0 : menuItems, menuItems));
        }

        async showStartingConnectorsMenuFor(evt) {
          let _scope11 = {
            isScope: true
          };


          let myConnectionsMenu = _getAndCallMember((self.__expressionAnalysisMode__ ? _traceMember(Connection, 'allConnectionsFor') : void 0, (self.__expressionAnalysisMode__ ? _getLocal(_scope, 'Connection', Connection) : void 0, Connection).allConnectionsFor(_getMember(this, 'source'))), 'map', [connection => {
            let _scope10 = {
              isScope: true
            };
            return [(self.__expressionAnalysisMode__ ? _traceMember(connection, 'getLabel') : void 0, (connection === Object(connection) ? self.__expressionAnalysisMode__ ? _getLocal(_scope10, 'connection', connection) : void 0 : connection, connection).getLabel()), () => {
              return self.__expressionAnalysisMode__ ? _traceMember(this, 'openConnectionEditor') : void 0, this.openConnectionEditor((connection === Object(connection) ? self.__expressionAnalysisMode__ ? _getLocal(_scope10, 'connection', connection) : void 0 : connection, connection));
            }];
          }]);

          const menuItems = [['Value', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt), 'value', false);
          }], ['Width', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt), 'style.width', false);
          }], ['Height', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt), 'style.height', false);
          }], ['Events', (self.__expressionAnalysisMode__ ? _traceMember(this, 'getAllEventsFor') : void 0, this.getAllEventsFor(_getMember(this, 'source'), (evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt)))], ['Style', (self.__expressionAnalysisMode__ ? _traceMember(this, 'getAllStylesFor') : void 0, this.getAllStylesFor(_getMember(this, 'source'), (evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt)))], ['On custom...', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionCustom') : void 0, this.startCreatingConnectionCustom((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt));
          }], ['Connections', (myConnectionsMenu === Object(myConnectionsMenu) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'myConnectionsMenu', myConnectionsMenu) : void 0 : myConnectionsMenu, myConnectionsMenu), '', '<i class="fa fa-arrow-right" aria-hidden="true"></i>']];

          return self.__expressionAnalysisMode__ ? _traceMember(this, 'showMenu') : void 0, this.showMenu((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'evt', evt) : void 0 : evt, evt), (menuItems === Object(menuItems) ? self.__expressionAnalysisMode__ ? _getLocal(_scope11, 'menuItems', menuItems) : void 0 : menuItems, menuItems));
        }

        //More events https://developer.mozilla.org/en-US/docs/Web/Events
        getAllEventsFor(object, evt) {
          let _scope13 = {
            isScope: true
          };

          const allEvents = (self.__expressionAnalysisMode__ ? _traceMember(domEvents, 'map') : void 0, (self.__expressionAnalysisMode__ ? _getLocal(_scope, 'domEvents', domEvents) : void 0, domEvents).map(domEvent => {
            let _scope12 = {
              isScope: true
            };
            return [(domEvent === Object(domEvent) ? self.__expressionAnalysisMode__ ? _getLocal(_scope12, 'domEvent', domEvent) : void 0 : domEvent, domEvent), () => {
              return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope13, 'evt', evt) : void 0 : evt, evt), (domEvent === Object(domEvent) ? self.__expressionAnalysisMode__ ? _getLocal(_scope12, 'domEvent', domEvent) : void 0 : domEvent, domEvent), true);
            }];
          }));

          return [['click', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope13, 'evt', evt) : void 0 : evt, evt), 'click', true);
          }], ['dblclick', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope13, 'evt', evt) : void 0 : evt, evt), 'dblclick', true);
          }], ['mousemove', () => {
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope13, 'evt', evt) : void 0 : evt, evt), 'mousemove', true);
          }], ['more', (allEvents === Object(allEvents) ? self.__expressionAnalysisMode__ ? _getLocal(_scope13, 'allEvents', allEvents) : void 0 : allEvents, allEvents)]];
        }

        getAllStylesFor(object, evt, isFinishing = false) {
          let _scope14 = {
            isScope: true
          };

          const result = [];

          if (self.__expressionAnalysisMode__) _traceMember(cssProperties, 'forEach');
          (self.__expressionAnalysisMode__ ? _getLocal(_scope, 'cssProperties', cssProperties) : void 0, cssProperties).forEach(cssProperty => {
            let _scope15 = {
              isScope: true
            };

            if (isFinishing === Object(isFinishing) ? self.__expressionAnalysisMode__ ? _getLocal(_scope14, 'isFinishing', isFinishing) : void 0 : isFinishing, isFinishing) {
              if (self.__expressionAnalysisMode__) _traceMember(result, 'push');

              (result === Object(result) ? self.__expressionAnalysisMode__ ? _getLocal(_scope14, 'result', result) : void 0 : result, result).push([(cssProperty === Object(cssProperty) ? self.__expressionAnalysisMode__ ? _getLocal(_scope15, 'cssProperty', cssProperty) : void 0 : cssProperty, cssProperty), event => {
                let _scope16 = {
                  isScope: true
                };
                return self.__expressionAnalysisMode__ ? _traceMember(this, 'finishCreatingConnection') : void 0, this.finishCreatingConnection((object === Object(object) ? self.__expressionAnalysisMode__ ? _getLocal(_scope14, 'object', object) : void 0 : object, object), 'style.' + (cssProperty === Object(cssProperty) ? self.__expressionAnalysisMode__ ? _getLocal(_scope15, 'cssProperty', cssProperty) : void 0 : cssProperty, cssProperty), (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope16, 'event', event) : void 0 : event, event));
              }]);
            } else {
              if (self.__expressionAnalysisMode__) _traceMember(result, 'push');

              (result === Object(result) ? self.__expressionAnalysisMode__ ? _getLocal(_scope14, 'result', result) : void 0 : result, result).push([(cssProperty === Object(cssProperty) ? self.__expressionAnalysisMode__ ? _getLocal(_scope15, 'cssProperty', cssProperty) : void 0 : cssProperty, cssProperty), () => {
                return self.__expressionAnalysisMode__ ? _traceMember(this, 'startCreatingConnectionFor') : void 0, this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope14, 'evt', evt) : void 0 : evt, evt), 'style.' + (cssProperty === Object(cssProperty) ? self.__expressionAnalysisMode__ ? _getLocal(_scope15, 'cssProperty', cssProperty) : void 0 : cssProperty, cssProperty), false);
              }]);
            }
          });

          return result === Object(result) ? self.__expressionAnalysisMode__ ? _getLocal(_scope14, 'result', result) : void 0 : result, result;
        }

        async showFinishingConnectorsMenuFor(evt, morph) {
          let _scope17 = {
            isScope: true
          };

          const menuItems = [['Value', event => {
            let _scope18 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'finishCreatingConnection') : void 0, this.finishCreatingConnection((morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'morph', morph) : void 0 : morph, morph), 'value', (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope18, 'event', event) : void 0 : event, event));
          }], ['Width', event => {
            let _scope19 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'finishCreatingConnection') : void 0, this.finishCreatingConnection((morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'morph', morph) : void 0 : morph, morph), 'style.width', (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope19, 'event', event) : void 0 : event, event));
          }], ['Height', event => {
            let _scope20 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'finishCreatingConnection') : void 0, this.finishCreatingConnection((morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'morph', morph) : void 0 : morph, morph), 'style.height', (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope20, 'event', event) : void 0 : event, event));
          }], ['innerHTML', event => {
            let _scope21 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'finishCreatingConnection') : void 0, this.finishCreatingConnection((morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'morph', morph) : void 0 : morph, morph), 'innerHTML', (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope21, 'event', event) : void 0 : event, event));
          }],
          // Hook for chained events
          //['Events', this.getAllEventsFor(morph, evt, true)],
          ['Style', (self.__expressionAnalysisMode__ ? _traceMember(this, 'getAllStylesFor') : void 0, this.getAllStylesFor((morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'morph', morph) : void 0 : morph, morph), (evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'evt', evt) : void 0 : evt, evt), true))], ['On custom...', event => {
            let _scope22 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'finishCreatingConnectionCustom') : void 0, this.finishCreatingConnectionCustom((morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'morph', morph) : void 0 : morph, morph), (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope22, 'event', event) : void 0 : event, event));
          }]];
          return await (self.__expressionAnalysisMode__ ? _traceMember(this, 'showMenu') : void 0, this.showMenu((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'evt', evt) : void 0 : evt, evt), (menuItems === Object(menuItems) ? self.__expressionAnalysisMode__ ? _getLocal(_scope17, 'menuItems', menuItems) : void 0 : menuItems, menuItems)));
        }

        elementUnderHand(evt) {
          let _scope23 = {
            isScope: true
          };

          return _getAndCallMember(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively), 'hand'), 'elementUnderHand', [(evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope23, 'evt', evt) : void 0 : evt, evt)]);
        }

        onPointerMove(evt) {
          let _scope24 = {
            isScope: true
          };

          if (_getMember(this, 'dropIndicator')) {
            _getAndCallMember(_getMember(this, 'dropIndicator'), 'remove', []);
          }_setMember(this, 'dropTarget', (self.__expressionAnalysisMode__ ? _traceMember(this, 'elementUnderHand') : void 0, this.elementUnderHand((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope24, 'evt', evt) : void 0 : evt, evt))), {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 48,
              line: 102
            },
            start: {
              column: 4,
              line: 102
            },
            source: ''
          });
          if (_getMember(this, 'dropTarget')) {
            _setMember(this, 'dropIndicator', (self.__expressionAnalysisMode__ ? _traceMember(lively, 'showElement') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).showElement(_getMember(this, 'dropTarget'))), {
              file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
              end: {
                column: 62,
                line: 104
              },
              start: {
                column: 6,
                line: 104
              },
              source: ''
            });
            _setMember(_getMember(_getMember(this, 'dropIndicator'), 'style'), 'border', "3px dashed rgba(0,100,0,0.5)", {
              file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
              end: {
                column: 70,
                line: 105
              },
              start: {
                column: 6,
                line: 105
              },
              source: ''
            });
            _setMember(_getMember(this, 'dropIndicator'), 'innerHTML', "", {
              file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
              end: {
                column: 39,
                line: 106
              },
              start: {
                column: 6,
                line: 106
              },
              source: ''
            });
          }

          if (_getMember(this, 'valueIndicator')) {
            _getAndCallMember(_getMember(this, 'valueIndicator'), 'remove', []);
          }
          _setMember(this, 'valueIndicator', _element('span', _attributes(), _children(_childExpression(_getMember(this, 'sourceProperty'))), {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 60,
              line: 112
            },
            start: {
              column: 26,
              line: 112
            }
          }), {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 60,
              line: 112
            },
            start: {
              column: 4,
              line: 112
            },
            source: ''
          });
          _setMember(_getMember(this, 'valueIndicator'), 'isMetaNode', true, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 41,
              line: 113
            },
            start: {
              column: 4,
              line: 113
            },
            source: ''
          });
          _setMember(_getMember(_getMember(this, 'valueIndicator'), 'style'), 'zIndex', 200, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 42,
              line: 114
            },
            start: {
              column: 4,
              line: 114
            },
            source: ''
          });
          _getAndCallMember(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('document') : void 0, document), 'body'), 'appendChild', [_getMember(this, 'valueIndicator')]);
          if (self.__expressionAnalysisMode__) _traceMember(lively, 'setGlobalPosition');
          (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).setGlobalPosition(_getMember(this, 'valueIndicator'), (self.__expressionAnalysisMode__ ? _getLocal(_scope, 'pt', pt) : void 0, pt)(_getMember((self.__expressionAnalysisMode__ ? _traceMember(lively, 'getPosition') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).getPosition((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope24, 'evt', evt) : void 0 : evt, evt))), 'x') + 1, _getMember((self.__expressionAnalysisMode__ ? _traceMember(lively, 'getPosition') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).getPosition((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope24, 'evt', evt) : void 0 : evt, evt))), 'y') + 1));
        }

        onPointerUp(evt) {
          let _scope25 = {
            isScope: true
          };
          if (self.__expressionAnalysisMode__) _traceMember(lively, 'removeEventListener');

          (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).removeEventListener("Connectors");

          if (_getMember(this, 'dropIndicator')) {
            _getAndCallMember(_getMember(this, 'dropIndicator'), 'remove', []);
          }if (_getMember(this, 'valueIndicator')) {
            _getAndCallMember(_getMember(this, 'valueIndicator'), 'remove', []);
          }var morph = (self.__expressionAnalysisMode__ ? _traceMember(this, 'elementUnderHand') : void 0, this.elementUnderHand((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope25, 'evt', evt) : void 0 : evt, evt)));

          if (self.__expressionAnalysisMode__) _traceMember(this, 'showFinishingConnectorsMenuFor');
          this.showFinishingConnectorsMenuFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope25, 'evt', evt) : void 0 : evt, evt), (morph === Object(morph) ? self.__expressionAnalysisMode__ ? _getLocal(_scope25, 'morph', morph) : void 0 : morph, morph));
        }

        async openConnectionEditor(connection) {
          let _scope26 = {
            isScope: true
          };

          let editor = await (self.__expressionAnalysisMode__ ? _traceMember(lively, 'openComponentInWindow') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).openComponentInWindow('lively-connection-editor'));
          if (self.__expressionAnalysisMode__) _traceMember(lively, 'setExtent');
          (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).setExtent(_getMember((editor === Object(editor) ? self.__expressionAnalysisMode__ ? _getLocal(_scope26, 'editor', editor) : void 0 : editor, editor), 'parentElement'), (self.__expressionAnalysisMode__ ? _traceMember(lively, 'pt') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).pt(800, 50)));
          if (self.__expressionAnalysisMode__) _traceMember(editor, 'setConnection');
          (editor === Object(editor) ? self.__expressionAnalysisMode__ ? _getLocal(_scope26, 'editor', editor) : void 0 : editor, editor).setConnection((connection === Object(connection) ? self.__expressionAnalysisMode__ ? _getLocal(_scope26, 'connection', connection) : void 0 : connection, connection));
        }

        async startCreatingConnectionCustom(evt) {
          let _scope27 = {
            isScope: true
          };

          var userinput = await (self.__expressionAnalysisMode__ ? _traceMember(lively, 'prompt') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).prompt("Enter something", "value"));
          if (self.__expressionAnalysisMode__) _traceMember(this, 'startCreatingConnectionFor');
          this.startCreatingConnectionFor((evt === Object(evt) ? self.__expressionAnalysisMode__ ? _getLocal(_scope27, 'evt', evt) : void 0 : evt, evt), (userinput === Object(userinput) ? self.__expressionAnalysisMode__ ? _getLocal(_scope27, 'userinput', userinput) : void 0 : userinput, userinput), false);
        }

        startCreatingConnectionFor(evt, property, isEvent) {
          let _scope28 = {
            isScope: true
          };

          _setMember(this, 'sourceProperty', (property === Object(property) ? self.__expressionAnalysisMode__ ? _getLocal(_scope28, 'property', property) : void 0 : property, property), {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 34,
              line: 141
            },
            start: {
              column: 4,
              line: 141
            },
            source: ''
          });
          _setMember(this, 'isEvent', (isEvent === Object(isEvent) ? self.__expressionAnalysisMode__ ? _getLocal(_scope28, 'isEvent', isEvent) : void 0 : isEvent, isEvent), {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 26,
              line: 142
            },
            start: {
              column: 4,
              line: 142
            },
            source: ''
          });

          if (self.__expressionAnalysisMode__) _traceMember(lively, 'addEventListener');
          (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).addEventListener("Connectors", _getMember(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('document') : void 0, document), 'body'), 'parentElement'), "pointermove", e => {
            let _scope29 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'onPointerMove') : void 0, this.onPointerMove((e === Object(e) ? self.__expressionAnalysisMode__ ? _getLocal(_scope29, 'e', e) : void 0 : e, e));
          }, { capture: true });
          if (self.__expressionAnalysisMode__) _traceMember(lively, 'addEventListener');
          (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).addEventListener("Connectors", _getMember(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('document') : void 0, document), 'body'), 'parentElement'), "pointerup", e => {
            let _scope30 = {
              isScope: true
            };
            return self.__expressionAnalysisMode__ ? _traceMember(this, 'onPointerUp') : void 0, this.onPointerUp((e === Object(e) ? self.__expressionAnalysisMode__ ? _getLocal(_scope30, 'e', e) : void 0 : e, e));
          }, { capture: true });
        }

        async finishCreatingConnectionCustom(target, event) {
          let _scope31 = {
            isScope: true
          };

          var userinput = await (self.__expressionAnalysisMode__ ? _traceMember(lively, 'prompt') : void 0, (self.__expressionAnalysisMode__ ? _getGlobal('lively') : void 0, lively).prompt("Enter something", "style.width"));
          if (self.__expressionAnalysisMode__) _traceMember(this, 'finishCreatingConnection');
          this.finishCreatingConnection((target === Object(target) ? self.__expressionAnalysisMode__ ? _getLocal(_scope31, 'target', target) : void 0 : target, target), (userinput === Object(userinput) ? self.__expressionAnalysisMode__ ? _getLocal(_scope31, 'userinput', userinput) : void 0 : userinput, userinput), (event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope31, 'event', event) : void 0 : event, event));
        }

        finishCreatingConnection(target, targetProperty, event) {
          let _scope32 = {
            isScope: true
          };

          let connection = new (self.__expressionAnalysisMode__ ? _getLocal(_scope, 'Connection', Connection) : void 0, Connection)(_getMember(this, 'source'), _getMember(this, 'sourceProperty'), (target === Object(target) ? self.__expressionAnalysisMode__ ? _getLocal(_scope32, 'target', target) : void 0 : target, target), (targetProperty === Object(targetProperty) ? self.__expressionAnalysisMode__ ? _getLocal(_scope32, 'targetProperty', targetProperty) : void 0 : targetProperty, targetProperty), _getMember(this, 'isEvent'));
          if (self.__expressionAnalysisMode__) _traceMember(connection, 'activate');
          (connection === Object(connection) ? self.__expressionAnalysisMode__ ? _getLocal(_scope32, 'connection', connection) : void 0 : connection, connection).activate();
          if (self.__expressionAnalysisMode__) _traceMember(connection, 'drawConnectionLine');
          (connection === Object(connection) ? self.__expressionAnalysisMode__ ? _getLocal(_scope32, 'connection', connection) : void 0 : connection, connection).drawConnectionLine();
          if (!_getMember((event === Object(event) ? self.__expressionAnalysisMode__ ? _getLocal(_scope32, 'event', event) : void 0 : event, event), 'shiftKey')) {
            if (self.__expressionAnalysisMode__) _traceMember(this, 'openConnectionEditor');

            this.openConnectionEditor((connection === Object(connection) ? self.__expressionAnalysisMode__ ? _getLocal(_scope32, 'connection', connection) : void 0 : connection, connection));
          }
        }
      }

      _export('default', LivelyHaloConnectorsItem);

      if (self.__expressionAnalysisMode__) _traceMember(Object, 'defineProperty');
      Object.defineProperty(_getMember((self.__expressionAnalysisMode__ ? _getGlobal('_recorder_') : void 0, _recorder_), '_src_components_halo_lively_halo_connectors_item_js'), 'LivelyHaloConnectorsItem', {
        get() {
          return self.__expressionAnalysisMode__ ? _getLocal(_scope, 'LivelyHaloConnectorsItem', LivelyHaloConnectorsItem) : void 0, LivelyHaloConnectorsItem;
        },

        set(thisIsVererySecretVariableName) {
          let _scope33 = {
            isScope: true
          };
          _export('default', LivelyHaloConnectorsItem = (thisIsVererySecretVariableName === Object(thisIsVererySecretVariableName) ? self.__expressionAnalysisMode__ ? _getLocal(_scope33, 'thisIsVererySecretVariableName', thisIsVererySecretVariableName) : void 0 : thisIsVererySecretVariableName, thisIsVererySecretVariableName)), true ? _setLocal(_scope, 'LivelyHaloConnectorsItem', LivelyHaloConnectorsItem, {
            file: 'https://lively-kernel.org/lively4/lively4-portal/src/components/halo/lively-halo-connectors-item.js',
            end: {
              column: 45,
              line: 10
            },
            start: {
              column: 21,
              line: 10
            },
            source: ''
          }) : void 0, LivelyHaloConnectorsItem;
          return true;
        },

        enumerable: true,
        configurable: true
      });
    }
  };
});