easy-file-system 2.1.145 → 2.1.148

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,121 +8,69 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
- var _necessary = require("necessary");
12
- var _eventTypes = require("../eventTypes");
13
- var forEach = _necessary.asynchronousUtilities.forEach;
14
- function onOpen(openHandler, element) {
15
- var eventType = _eventTypes.OPEN_EVENT_TYPE, handler = openHandler; ///
16
- this.addEventListener(eventType, handler, element);
11
+ var _customEventTypes = require("../customEventTypes");
12
+ function onCustomOpen(openCustomHandler, element) {
13
+ var customEventType = _customEventTypes.OPEN_CUSTOM_EVENT_TYPE, customHandler = openCustomHandler; ///
14
+ this.onCustomEvent(customEventType, customHandler, element);
17
15
  }
18
- function offOpen(openHandler, element) {
19
- var eventType = _eventTypes.OPEN_EVENT_TYPE, handler = openHandler; ///
20
- this.removeEventListener(eventType, handler, element);
16
+ function offCustomOpen(openCustomHandler, element) {
17
+ var customEventType = _customEventTypes.OPEN_CUSTOM_EVENT_TYPE, customHandler = openCustomHandler; ///
18
+ this.offCustomEvent(customEventType, customHandler, element);
21
19
  }
22
- function onMove(moveHandler, element) {
23
- var eventType = _eventTypes.MOVE_EVENT_TYPE, handler = moveHandler; ///
24
- this.addEventListener(eventType, handler, element);
20
+ function onCustomMove(moveCustomHandler, element) {
21
+ var customEventType = _customEventTypes.MOVE_CUSTOM_EVENT_TYPE, customHandler = moveCustomHandler; ///
22
+ this.onCustomEvent(customEventType, customHandler, element);
25
23
  }
26
- function offMove(moveHandler, element) {
27
- var eventType = _eventTypes.MOVE_EVENT_TYPE, handler = moveHandler; ///
28
- this.removeEventListener(eventType, handler, element);
24
+ function offCustomMove(moveCustomHandler, element) {
25
+ var customEventType = _customEventTypes.MOVE_CUSTOM_EVENT_TYPE, customHandler = moveCustomHandler; ///
26
+ this.offCustomEvent(customEventType, customHandler, element);
29
27
  }
30
- function onRemove(removeHandler, element) {
31
- var eventType = _eventTypes.REMOVE_EVENT_TYPE, handler = removeHandler; ///
32
- this.addEventListener(eventType, handler, element);
28
+ function onCustomRemove(removeCustomHandler, element) {
29
+ var customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
30
+ this.onCustomEvent(customEventType, customHandler, element);
33
31
  }
34
- function offRemove(removeHandler, element) {
35
- var eventType = _eventTypes.REMOVE_EVENT_TYPE, handler = removeHandler; ///
36
- this.removeEventListener(eventType, handler, element);
32
+ function offCustomRemove(removeCustomHandler, element) {
33
+ var customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
34
+ this.offCustomEvent(customEventType, customHandler, element);
37
35
  }
38
- function onRename(renameHandler, element) {
39
- var eventType = _eventTypes.RENAME_EVENT_TYPE, handler = renameHandler; ///
40
- this.addEventListener(eventType, handler, element);
36
+ function onCustomRename(renameCustomHandler, element) {
37
+ var customEventType = _customEventTypes.RENAME_CUSTOM_EVENT_TYPE, customHandler = renameCustomHandler; ///
38
+ this.onCustomEvent(customEventType, customHandler, element);
41
39
  }
42
- function offRename(renameHandler, element) {
43
- var eventType = _eventTypes.RENAME_EVENT_TYPE, handler = renameHandler; ///
44
- this.removeEventListener(eventType, handler, element);
40
+ function offCustomRename(renameCustomHandler, element) {
41
+ var customEventType = _customEventTypes.RENAME_CUSTOM_EVENT_TYPE, customHandler = renameCustomHandler; ///
42
+ this.offCustomEvent(customEventType, customHandler, element);
45
43
  }
46
- function onCreate(createHandler, element) {
47
- var eventType = _eventTypes.CREATE_EVENT_TYPE, handler = createHandler; ///
48
- this.addEventListener(eventType, handler, element);
44
+ function onCustomCreate(createCustomHandler, element) {
45
+ var customEventType = _customEventTypes.CREATE_CUSTOM_EVENT_TYPE, customHandler = createCustomHandler; ///
46
+ this.onCustomEvent(customEventType, customHandler, element);
49
47
  }
50
- function offCreate(createHandler, element) {
51
- var eventType = _eventTypes.CREATE_EVENT_TYPE, handler = createHandler; ///
52
- this.removeEventListener(eventType, handler, element);
48
+ function offCustomCreate(createCustomHandler, element) {
49
+ var customEventType = _customEventTypes.CREATE_CUSTOM_EVENT_TYPE, customHandler = createCustomHandler; ///
50
+ this.offCustomEvent(customEventType, customHandler, element);
53
51
  }
54
- function onSelect(selectHandler, element) {
55
- var eventType = _eventTypes.SELECT_EVENT_TYPE, handler = selectHandler; ///
56
- this.addEventListener(eventType, handler, element);
52
+ function onCustomSelect(selectCustomHandler, element) {
53
+ var customEventType = _customEventTypes.SELECT_CUSTOM_EVENT_TYPE, customHandler = selectCustomHandler; ///
54
+ this.onCustomEvent(customEventType, customHandler, element);
57
55
  }
58
- function offSelect(selectHandler, element) {
59
- var eventType = _eventTypes.SELECT_EVENT_TYPE, handler = selectHandler; ///
60
- this.removeEventListener(eventType, handler, element);
61
- }
62
- function callOpenHandlers(filePath, explorer) {
63
- var _this = this;
64
- var eventType = _eventTypes.OPEN_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
65
- eventListeners.forEach(function(eventListener) {
66
- var handler = eventListener.handler, element = eventListener.element, openHandler = handler; ///
67
- openHandler.call(element, filePath, explorer, _this); ///
68
- });
69
- }
70
- function callSelectHandlers(path, selected, readOnly, explorer) {
71
- var _this = this;
72
- var eventType = _eventTypes.SELECT_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
73
- eventListeners.forEach(function(eventListener) {
74
- var handler = eventListener.handler, element = eventListener.element, selectHandler = handler; ///
75
- selectHandler.call(element, path, selected, readOnly, explorer, _this); ///
76
- });
77
- }
78
- function callRenameHandlersAsync(pathMaps, explorer, done) {
79
- var eventType = _eventTypes.RENAME_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
80
- forEach(eventListeners, function(eventListener, next) {
81
- var handler = eventListener.handler, element = eventListener.element, renameHandler = handler, _$done = next; ///
82
- renameHandler.call(element, pathMaps, explorer, _$done);
83
- }, done);
84
- }
85
- function callMoveHandlersAsync(pathMaps, explorer, done) {
86
- var eventType = _eventTypes.MOVE_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
87
- forEach(eventListeners, function(eventListener, next) {
88
- var handler = eventListener.handler, element = eventListener.element, moveHandler = handler, _$done = next; ///
89
- moveHandler.call(element, pathMaps, explorer, _$done);
90
- }, done);
91
- }
92
- function callRemoveHandlersAsync(pathMaps, explorer, done) {
93
- var eventType = _eventTypes.REMOVE_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
94
- forEach(eventListeners, function(eventListener, next) {
95
- var handler = eventListener.handler, element = eventListener.element, removeHandler = handler, _$done = next; ///
96
- removeHandler.call(element, pathMaps, explorer, _$done);
97
- }, done);
98
- }
99
- function callCreateHandlersAsync(pathMaps, explorer, done) {
100
- var eventType = _eventTypes.CREATE_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
101
- forEach(eventListeners, function(eventListener, next) {
102
- var handler = eventListener.handler, element = eventListener.element, createHandler = handler, _$done = next; ///
103
- createHandler.call(element, pathMaps, explorer, _$done);
104
- }, done);
56
+ function offCustomSelect(selectCustomHandler, element) {
57
+ var customEventType = _customEventTypes.SELECT_CUSTOM_EVENT_TYPE, customHandler = selectCustomHandler; ///
58
+ this.offCustomEvent(customEventType, customHandler, element);
105
59
  }
106
60
  var explorerMixins = {
107
- onOpen: onOpen,
108
- offOpen: offOpen,
109
- onMove: onMove,
110
- offMove: offMove,
111
- onRemove: onRemove,
112
- offRemove: offRemove,
113
- onRename: onRename,
114
- offRename: offRename,
115
- onCreate: onCreate,
116
- offCreate: offCreate,
117
- onSelect: onSelect,
118
- offSelect: offSelect,
119
- callOpenHandlers: callOpenHandlers,
120
- callSelectHandlers: callSelectHandlers,
121
- callMoveHandlersAsync: callMoveHandlersAsync,
122
- callRemoveHandlersAsync: callRemoveHandlersAsync,
123
- callRenameHandlersAsync: callRenameHandlersAsync,
124
- callCreateHandlersAsync: callCreateHandlersAsync
61
+ onCustomOpen: onCustomOpen,
62
+ offCustomOpen: offCustomOpen,
63
+ onCustomMove: onCustomMove,
64
+ offCustomMove: offCustomMove,
65
+ onCustomRemove: onCustomRemove,
66
+ offCustomRemove: offCustomRemove,
67
+ onCustomRename: onCustomRename,
68
+ offCustomRename: offCustomRename,
69
+ onCustomCreate: onCustomCreate,
70
+ offCustomCreate: offCustomCreate,
71
+ onCustomSelect: onCustomSelect,
72
+ offCustomSelect: offCustomSelect
125
73
  };
126
74
  var _default = explorerMixins;
127
75
 
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZXhwbG9yZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGFzeW5jaHJvbm91c1V0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcblxuaW1wb3J0IHsgTU9WRV9FVkVOVF9UWVBFLCBPUEVOX0VWRU5UX1RZUEUsIFJFTU9WRV9FVkVOVF9UWVBFLCBSRU5BTUVfRVZFTlRfVFlQRSwgU0VMRUNUX0VWRU5UX1RZUEUsIENSRUFURV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2V2ZW50VHlwZXNcIjtcblxuY29uc3QgeyBmb3JFYWNoIH0gPSBhc3luY2hyb25vdXNVdGlsaXRpZXM7XG5cbmZ1bmN0aW9uIG9uT3BlbihvcGVuSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBPUEVOX0VWRU5UX1RZUEUsXG4gICAgICBoYW5kbGVyID0gb3BlbkhhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmT3BlbihvcGVuSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBPUEVOX0VWRU5UX1RZUEUsXG4gICAgICBoYW5kbGVyID0gb3BlbkhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25Nb3ZlKG1vdmVIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IE1PVkVfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IG1vdmVIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZk1vdmUobW92ZUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gTU9WRV9FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gbW92ZUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25SZW1vdmUocmVtb3ZlSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBSRU1PVkVfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHJlbW92ZUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmUmVtb3ZlKHJlbW92ZUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gUkVNT1ZFX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSByZW1vdmVIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uUmVuYW1lKHJlbmFtZUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gUkVOQU1FX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSByZW5hbWVIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZlJlbmFtZShyZW5hbWVIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFJFTkFNRV9FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gcmVuYW1lSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkNyZWF0ZShjcmVhdGVIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IENSRUFURV9FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gY3JlYXRlSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDcmVhdGUoY3JlYXRlSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBDUkVBVEVfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGNyZWF0ZUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25TZWxlY3Qoc2VsZWN0SGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBTRUxFQ1RfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHNlbGVjdEhhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmU2VsZWN0KHNlbGVjdEhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gU0VMRUNUX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBzZWxlY3RIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGNhbGxPcGVuSGFuZGxlcnMoZmlsZVBhdGgsIGV4cGxvcmVyKSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IE9QRU5fRVZFTlRfVFlQRSxcbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGV2ZW50TGlzdGVuZXJzLmZvckVhY2goKGV2ZW50TGlzdGVuZXIpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgb3BlbkhhbmRsZXIgPSBoYW5kbGVyOyAgLy8vXG5cbiAgICBvcGVuSGFuZGxlci5jYWxsKGVsZW1lbnQsIGZpbGVQYXRoLCBleHBsb3JlciwgdGhpcyk7ICAvLy9cbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxTZWxlY3RIYW5kbGVycyhwYXRoLCBzZWxlY3RlZCwgcmVhZE9ubHksIGV4cGxvcmVyKSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNFTEVDVF9FVkVOVF9UWVBFLFxuICAgICAgICBldmVudExpc3RlbmVycyA9IHRoaXMuZmluZEV2ZW50TGlzdGVuZXJzKGV2ZW50VHlwZSk7XG5cbiAgZXZlbnRMaXN0ZW5lcnMuZm9yRWFjaCgoZXZlbnRMaXN0ZW5lcikgPT4ge1xuICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBzZWxlY3RIYW5kbGVyID0gaGFuZGxlcjsgIC8vL1xuXG4gICAgc2VsZWN0SGFuZGxlci5jYWxsKGVsZW1lbnQsIHBhdGgsIHNlbGVjdGVkLCByZWFkT25seSwgZXhwbG9yZXIsIHRoaXMpOyAgLy8vXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjYWxsUmVuYW1lSGFuZGxlcnNBc3luYyhwYXRoTWFwcywgZXhwbG9yZXIsIGRvbmUpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gUkVOQU1FX0VWRU5UX1RZUEUsXG4gICAgICAgIGV2ZW50TGlzdGVuZXJzID0gdGhpcy5maW5kRXZlbnRMaXN0ZW5lcnMoZXZlbnRUeXBlKTtcblxuICBmb3JFYWNoKGV2ZW50TGlzdGVuZXJzLCAoZXZlbnRMaXN0ZW5lciwgbmV4dCkgPT4ge1xuICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICByZW5hbWVIYW5kbGVyID0gaGFuZGxlciwgIC8vL1xuICAgICAgICAgIGRvbmUgPSBuZXh0OyAgLy8vXG5cbiAgICByZW5hbWVIYW5kbGVyLmNhbGwoZWxlbWVudCwgcGF0aE1hcHMsIGV4cGxvcmVyLCBkb25lKTtcbiAgfSwgZG9uZSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxNb3ZlSGFuZGxlcnNBc3luYyhwYXRoTWFwcywgZXhwbG9yZXIsIGRvbmUpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gTU9WRV9FVkVOVF9UWVBFLFxuICAgICAgICBldmVudExpc3RlbmVycyA9IHRoaXMuZmluZEV2ZW50TGlzdGVuZXJzKGV2ZW50VHlwZSk7XG5cbiAgZm9yRWFjaChldmVudExpc3RlbmVycywgKGV2ZW50TGlzdGVuZXIsIG5leHQpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgbW92ZUhhbmRsZXIgPSBoYW5kbGVyLCAgLy8vXG4gICAgICAgICAgZG9uZSA9IG5leHQ7ICAvLy9cblxuICAgIG1vdmVIYW5kbGVyLmNhbGwoZWxlbWVudCwgcGF0aE1hcHMsIGV4cGxvcmVyLCBkb25lKTtcbiAgfSwgZG9uZSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxSZW1vdmVIYW5kbGVyc0FzeW5jKHBhdGhNYXBzLCBleHBsb3JlciwgZG9uZSkge1xuICBjb25zdCBldmVudFR5cGUgPSBSRU1PVkVfRVZFTlRfVFlQRSxcbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGZvckVhY2goZXZlbnRMaXN0ZW5lcnMsIChldmVudExpc3RlbmVyLCBuZXh0KSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50IH0gPSBldmVudExpc3RlbmVyLFxuICAgICAgICAgIHJlbW92ZUhhbmRsZXIgPSBoYW5kbGVyLCAgLy8vXG4gICAgICAgICAgZG9uZSA9IG5leHQ7ICAvLy9cblxuICAgIHJlbW92ZUhhbmRsZXIuY2FsbChlbGVtZW50LCBwYXRoTWFwcywgZXhwbG9yZXIsIGRvbmUpO1xuICB9LCBkb25lKTtcbn1cblxuZnVuY3Rpb24gY2FsbENyZWF0ZUhhbmRsZXJzQXN5bmMocGF0aE1hcHMsIGV4cGxvcmVyLCBkb25lKSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IENSRUFURV9FVkVOVF9UWVBFLFxuICAgICAgICBldmVudExpc3RlbmVycyA9IHRoaXMuZmluZEV2ZW50TGlzdGVuZXJzKGV2ZW50VHlwZSk7XG5cbiAgZm9yRWFjaChldmVudExpc3RlbmVycywgKGV2ZW50TGlzdGVuZXIsIG5leHQpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgY3JlYXRlSGFuZGxlciA9IGhhbmRsZXIsICAvLy9cbiAgICAgICAgICBkb25lID0gbmV4dDsgIC8vL1xuXG4gICAgY3JlYXRlSGFuZGxlci5jYWxsKGVsZW1lbnQsIHBhdGhNYXBzLCBleHBsb3JlciwgZG9uZSk7XG4gIH0sIGRvbmUpO1xufVxuXG5jb25zdCBleHBsb3Jlck1peGlucyA9IHtcbiAgb25PcGVuLFxuICBvZmZPcGVuLFxuICBvbk1vdmUsXG4gIG9mZk1vdmUsXG4gIG9uUmVtb3ZlLFxuICBvZmZSZW1vdmUsXG4gIG9uUmVuYW1lLFxuICBvZmZSZW5hbWUsXG4gIG9uQ3JlYXRlLFxuICBvZmZDcmVhdGUsXG4gIG9uU2VsZWN0LFxuICBvZmZTZWxlY3QsXG4gIGNhbGxPcGVuSGFuZGxlcnMsXG4gIGNhbGxTZWxlY3RIYW5kbGVycyxcbiAgY2FsbE1vdmVIYW5kbGVyc0FzeW5jLFxuICBjYWxsUmVtb3ZlSGFuZGxlcnNBc3luYyxcbiAgY2FsbFJlbmFtZUhhbmRsZXJzQXN5bmMsXG4gIGNhbGxDcmVhdGVIYW5kbGVyc0FzeW5jXG59O1xuXG5leHBvcnQgZGVmYXVsdCBleHBsb3Jlck1peGlucztcbiJdLCJuYW1lcyI6WyJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwib25PcGVuIiwib3BlbkhhbmRsZXIiLCJlbGVtZW50IiwiZXZlbnRUeXBlIiwiT1BFTl9FVkVOVF9UWVBFIiwiaGFuZGxlciIsImFkZEV2ZW50TGlzdGVuZXIiLCJvZmZPcGVuIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uTW92ZSIsIm1vdmVIYW5kbGVyIiwiTU9WRV9FVkVOVF9UWVBFIiwib2ZmTW92ZSIsIm9uUmVtb3ZlIiwicmVtb3ZlSGFuZGxlciIsIlJFTU9WRV9FVkVOVF9UWVBFIiwib2ZmUmVtb3ZlIiwib25SZW5hbWUiLCJyZW5hbWVIYW5kbGVyIiwiUkVOQU1FX0VWRU5UX1RZUEUiLCJvZmZSZW5hbWUiLCJvbkNyZWF0ZSIsImNyZWF0ZUhhbmRsZXIiLCJDUkVBVEVfRVZFTlRfVFlQRSIsIm9mZkNyZWF0ZSIsIm9uU2VsZWN0Iiwic2VsZWN0SGFuZGxlciIsIlNFTEVDVF9FVkVOVF9UWVBFIiwib2ZmU2VsZWN0IiwiY2FsbE9wZW5IYW5kbGVycyIsImZpbGVQYXRoIiwiZXhwbG9yZXIiLCJldmVudExpc3RlbmVycyIsImZpbmRFdmVudExpc3RlbmVycyIsImV2ZW50TGlzdGVuZXIiLCJjYWxsIiwiY2FsbFNlbGVjdEhhbmRsZXJzIiwicGF0aCIsInNlbGVjdGVkIiwicmVhZE9ubHkiLCJjYWxsUmVuYW1lSGFuZGxlcnNBc3luYyIsInBhdGhNYXBzIiwiZG9uZSIsIm5leHQiLCJjYWxsTW92ZUhhbmRsZXJzQXN5bmMiLCJjYWxsUmVtb3ZlSGFuZGxlcnNBc3luYyIsImNhbGxDcmVhdGVIYW5kbGVyc0FzeW5jIiwiZXhwbG9yZXJNaXhpbnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQTZMQTs7O2VBQUE7Ozt5QkEzTHNDOzBCQUV1RjtBQUU3SCxJQUFNLEFBQUVBLFVBQVlDLGdDQUFxQixDQUFqQ0Q7QUFFUixTQUFTRSxPQUFPQyxXQUFXLEVBQUVDLE9BQU87SUFDbEMsSUFBTUMsWUFBWUMsMkJBQWUsRUFDN0JDLFVBQVVKLGFBQWMsR0FBRztJQUUvQixJQUFJ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
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZXhwbG9yZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE9QRU5fQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgICBNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgU0VMRUNUX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgUkVOQU1FX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgUkVNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgQ1JFQVRFX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gb25DdXN0b21PcGVuKG9wZW5DdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE9QRU5fQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBvcGVuQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21PcGVuKG9wZW5DdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE9QRU5fQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBvcGVuQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21Nb3ZlKG1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBtb3ZlQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21Nb3ZlKG1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBtb3ZlQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21SZW1vdmUocmVtb3ZlQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBSRU1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSByZW1vdmVDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVJlbW92ZShyZW1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHJlbW92ZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tUmVuYW1lKHJlbmFtZUN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gUkVOQU1FX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gcmVuYW1lQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21SZW5hbWUocmVuYW1lQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBSRU5BTUVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSByZW5hbWVDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbUNyZWF0ZShjcmVhdGVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IENSRUFURV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNyZWF0ZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tQ3JlYXRlKGNyZWF0ZUN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gQ1JFQVRFX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gY3JlYXRlQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21TZWxlY3Qoc2VsZWN0Q3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBTRUxFQ1RfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBzZWxlY3RDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVNlbGVjdChzZWxlY3RDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFNFTEVDVF9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHNlbGVjdEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmNvbnN0IGV4cGxvcmVyTWl4aW5zID0ge1xuICBvbkN1c3RvbU9wZW4sXG4gIG9mZkN1c3RvbU9wZW4sXG4gIG9uQ3VzdG9tTW92ZSxcbiAgb2ZmQ3VzdG9tTW92ZSxcbiAgb25DdXN0b21SZW1vdmUsXG4gIG9mZkN1c3RvbVJlbW92ZSxcbiAgb25DdXN0b21SZW5hbWUsXG4gIG9mZkN1c3RvbVJlbmFtZSxcbiAgb25DdXN0b21DcmVhdGUsXG4gIG9mZkN1c3RvbUNyZWF0ZSxcbiAgb25DdXN0b21TZWxlY3QsXG4gIG9mZkN1c3RvbVNlbGVjdFxufTtcblxuZXhwb3J0IGRlZmF1bHQgZXhwbG9yZXJNaXhpbnM7XG4iXSwibmFtZXMiOlsib25DdXN0b21PcGVuIiwib3BlbkN1c3RvbUhhbmRsZXIiLCJlbGVtZW50IiwiY3VzdG9tRXZlbnRUeXBlIiwiT1BFTl9DVVNUT01fRVZFTlRfVFlQRSIsImN1c3RvbUhhbmRsZXIiLCJvbkN1c3RvbUV2ZW50Iiwib2ZmQ3VzdG9tT3BlbiIsIm9mZkN1c3RvbUV2ZW50Iiwib25DdXN0b21Nb3ZlIiwibW92ZUN1c3RvbUhhbmRsZXIiLCJNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFIiwib2ZmQ3VzdG9tTW92ZSIsIm9uQ3VzdG9tUmVtb3ZlIiwicmVtb3ZlQ3VzdG9tSGFuZGxlciIsIlJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbVJlbW92ZSIsIm9uQ3VzdG9tUmVuYW1lIiwicmVuYW1lQ3VzdG9tSGFuZGxlciIsIlJFTkFNRV9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbVJlbmFtZSIsIm9uQ3VzdG9tQ3JlYXRlIiwiY3JlYXRlQ3VzdG9tSGFuZGxlciIsIkNSRUFURV9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbUNyZWF0ZSIsIm9uQ3VzdG9tU2VsZWN0Iiwic2VsZWN0Q3VzdG9tSGFuZGxlciIsIlNFTEVDVF9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbVNlbGVjdCIsImV4cGxvcmVyTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkE0R0E7OztlQUFBOzs7Z0NBckd5QztBQUV6QyxTQUFTQSxhQUFhQyxpQkFBaUIsRUFBRUMsT0FBTztJQUM5QyxJQUFNQyxrQkFBa0JDLHdDQUFzQixFQUN4Q0MsZ0JBQWdCSixtQkFBb0IsR0FBRztJQUU3QyxJQUFJLENBQUNLLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNLLGNBQWNOLGlCQUFpQixFQUFFQyxPQUFPO0lBQy9DLElBQU1DLGtCQUFrQkMsd0NBQXNCLEVBQ3hDQyxnQkFBZ0JKLG1CQUFvQixHQUFHO0lBRTdDLElBQUksQ0FBQ08sY0FBYyxDQUFDTCxpQkFBaUJFLGVBQWVIO0FBQ3REO0FBRUEsU0FBU08sYUFBYUMsaUJBQWlCLEVBQUVSLE9BQU87SUFDOUMsSUFBTUMsa0JBQWtCUSx3Q0FBc0IsRUFDeENOLGdCQUFnQkssbUJBQW9CLEdBQUc7SUFFN0MsSUFBSSxDQUFDSixhQUFhLENBQUNILGlCQUFpQkUsZUFBZUg7QUFDckQ7QUFFQSxTQUFTVSxjQUFjRixpQkFBaUIsRUFBRVIsT0FBTztJQUMvQyxJQUFNQyxrQkFBa0JRLHdDQUFzQixFQUN4Q04sZ0JBQWdCSyxtQkFBb0IsR0FBRztJQUU3QyxJQUFJLENBQUNGLGNBQWMsQ0FBQ0wsaUJBQWlCRSxlQUFlSDtBQUN0RDtBQUVBLFNBQVNXLGVBQWVDLG1CQUFtQixFQUFFWixPQUFPO0lBQ2xELElBQU1DLGtCQUFrQlksMENBQXdCLEVBQzFDVixnQkFBZ0JTLHFCQUFzQixHQUFHO0lBRS9DLElBQUksQ0FBQ1IsYUFBYSxDQUFDSCxpQkFBaUJFLGVBQWVIO0FBQ3JEO0FBRUEsU0FBU2MsZ0JBQWdCRixtQkFBbUIsRUFBRVosT0FBTztJQUNuRCxJQUFNQyxrQkFBa0JZLDBDQUF3QixFQUMxQ1YsZ0JBQWdCUyxxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNOLGNBQWMsQ0FBQ0wsaUJBQWlCRSxlQUFlSDtBQUN0RDtBQUVBLFNBQVNlLGVBQWVDLG1CQUFtQixFQUFFaEIsT0FBTztJQUNsRCxJQUFNQyxrQkFBa0JnQiwwQ0FBd0IsRUFDMUNkLGdCQUFnQmEscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDWixhQUFhLENBQUNILGlCQUFpQkUsZUFBZUg7QUFDckQ7QUFFQSxTQUFTa0IsZ0JBQWdCRixtQkFBbUIsRUFBRWhCLE9BQU87SUFDbkQsSUFBTUMsa0JBQWtCZ0IsMENBQXdCLEVBQzFDZCxnQkFBZ0JhLHFCQUFzQixHQUFHO0lBRS9DLElBQUksQ0FBQ1YsY0FBYyxDQUFDTCxpQkFBaUJFLGVBQWVIO0FBQ3REO0FBRUEsU0FBU21CLGVBQWVDLG1CQUFtQixFQUFFcEIsT0FBTztJQUNsRCxJQUFNQyxrQkFBa0JvQiwwQ0FBd0IsRUFDMUNsQixnQkFBZ0JpQixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNoQixhQUFhLENBQUNILGlCQUFpQkUsZUFBZUg7QUFDckQ7QUFFQSxTQUFTc0IsZ0JBQWdCRixtQkFBbUIsRUFBRXBCLE9BQU87SUFDbkQsSUFBTUMsa0JBQWtCb0IsMENBQXdCLEVBQzFDbEIsZ0JBQWdCaUIscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDZCxjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxTQUFTdUIsZUFBZUMsbUJBQW1CLEVBQUV4QixPQUFPO0lBQ2xELElBQU1DLGtCQUFrQndCLDBDQUF3QixFQUMxQ3RCLGdCQUFnQnFCLHFCQUFzQixHQUFHO0lBRS9DLElBQUksQ0FBQ3BCLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVMwQixnQkFBZ0JGLG1CQUFtQixFQUFFeEIsT0FBTztJQUNuRCxJQUFNQyxrQkFBa0J3QiwwQ0FBd0IsRUFDMUN0QixnQkFBZ0JxQixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNsQixjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxJQUFNMkIsaUJBQWlCO0lBQ3JCN0IsY0FBQUE7SUFDQU8sZUFBQUE7SUFDQUUsY0FBQUE7SUFDQUcsZUFBQUE7SUFDQUMsZ0JBQUFBO0lBQ0FHLGlCQUFBQTtJQUNBQyxnQkFBQUE7SUFDQUcsaUJBQUFBO0lBQ0FDLGdCQUFBQTtJQUNBRyxpQkFBQUE7SUFDQUMsZ0JBQUFBO0lBQ0FHLGlCQUFBQTtBQUNGO0lBRUEsV0FBZUMifQ==
@@ -8,45 +8,29 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
- var _eventTypes = require("../eventTypes");
12
- function onChange(changeHandler, element) {
13
- var eventType = _eventTypes.CHANGE_EVENT_TYPE, handler = changeHandler; ///
14
- this.addEventListener(eventType, handler, element);
11
+ var _customEventTypes = require("../customEventTypes");
12
+ function onCustomChange(changeCustomHandler, element) {
13
+ var customEventType = _customEventTypes.CHANGE_CUSTOM_EVENT_TYPE, customHandler = changeCustomHandler; ///
14
+ this.onCustomEvent(customEventType, customHandler, element);
15
15
  }
16
- function offChange(changeHandler, element) {
17
- var eventType = _eventTypes.CHANGE_EVENT_TYPE, handler = changeHandler; ///
18
- this.removeEventListener(eventType, handler, element);
16
+ function offCustomChange(changeCustomHandler, element) {
17
+ var customEventType = _customEventTypes.CHANGE_CUSTOM_EVENT_TYPE, customHandler = changeCustomHandler; ///
18
+ this.offCustomEvent(customEventType, customHandler, element);
19
19
  }
20
- function onCancel(cancelHandler, element) {
21
- var eventType = _eventTypes.CANCEL_EVENT_TYPE, handler = cancelHandler; ///
22
- this.addEventListener(eventType, handler, element);
20
+ function onCustomCancel(cancelCustomHandler, element) {
21
+ var customEventType = _customEventTypes.CANCEL_CUSTOM_EVENT_TYPE, customHandler = cancelCustomHandler; ///
22
+ this.onCustomEvent(customEventType, customHandler, element);
23
23
  }
24
- function offCancel(cancelHandler, element) {
25
- var eventType = _eventTypes.CANCEL_EVENT_TYPE, handler = cancelHandler; ///
26
- this.removeEventListener(eventType, handler, element);
27
- }
28
- function callChangeHandlers() {
29
- var eventType = _eventTypes.CHANGE_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
30
- eventListeners.forEach(function(eventListener) {
31
- var handler = eventListener.handler, element = eventListener.element, changeHandler = handler; ///
32
- changeHandler.call(element);
33
- });
34
- }
35
- function callCancelHandlers() {
36
- var eventType = _eventTypes.CANCEL_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
37
- eventListeners.forEach(function(eventListener) {
38
- var handler = eventListener.handler, element = eventListener.element, cancelHandler = handler; ///
39
- cancelHandler.call(element);
40
- });
24
+ function offCustomCancel(cancelCustomHandler, element) {
25
+ var customEventType = _customEventTypes.CANCEL_CUSTOM_EVENT_TYPE, customHandler = cancelCustomHandler; ///
26
+ this.offCustomEvent(customEventType, customHandler, element);
41
27
  }
42
28
  var nameSpanMixins = {
43
- onChange: onChange,
44
- offChange: offChange,
45
- onCancel: onCancel,
46
- offCancel: offCancel,
47
- callChangeHandlers: callChangeHandlers,
48
- callCancelHandlers: callCancelHandlers
29
+ onCustomChange: onCustomChange,
30
+ offCustomChange: offCustomChange,
31
+ onCustomCancel: onCustomCancel,
32
+ offCustomCancel: offCustomCancel
49
33
  };
50
34
  var _default = nameSpanMixins;
51
35
 
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvbmFtZVNwYW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IENIQU5HRV9FVkVOVF9UWVBFLCBDQU5DRUxfRVZFTlRfVFlQRSB9IGZyb20gXCIuLi9ldmVudFR5cGVzXCI7XG5cbmZ1bmN0aW9uIG9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gQ0hBTkdFX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBjaGFuZ2VIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkNoYW5nZShjaGFuZ2VIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IENIQU5HRV9FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gY2hhbmdlSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkNhbmNlbChjYW5jZWxIYW5kbGVyLCBlbGVtZW50KSB7XG4gICAgY29uc3QgZXZlbnRUeXBlID0gQ0FOQ0VMX0VWRU5UX1RZUEUsXG4gICAgICAgICAgaGFuZGxlciA9IGNhbmNlbEhhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ2FuY2VsKGNhbmNlbEhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgICBjb25zdCBldmVudFR5cGUgPSBDQU5DRUxfRVZFTlRfVFlQRSxcbiAgICAgICAgICBoYW5kbGVyID0gY2FuY2VsSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBjYWxsQ2hhbmdlSGFuZGxlcnMoKSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IENIQU5HRV9FVkVOVF9UWVBFLFxuICAgICAgICBldmVudExpc3RlbmVycyA9IHRoaXMuZmluZEV2ZW50TGlzdGVuZXJzKGV2ZW50VHlwZSk7XG5cbiAgZXZlbnRMaXN0ZW5lcnMuZm9yRWFjaCgoZXZlbnRMaXN0ZW5lcikgPT4ge1xuICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBjaGFuZ2VIYW5kbGVyID0gaGFuZGxlcjsgIC8vL1xuXG4gICAgY2hhbmdlSGFuZGxlci5jYWxsKGVsZW1lbnQpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gY2FsbENhbmNlbEhhbmRsZXJzKCkge1xuICBjb25zdCBldmVudFR5cGUgPSBDQU5DRUxfRVZFTlRfVFlQRSxcbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGV2ZW50TGlzdGVuZXJzLmZvckVhY2goKGV2ZW50TGlzdGVuZXIpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgY2FuY2VsSGFuZGxlciA9IGhhbmRsZXI7ICAvLy9cblxuICAgIGNhbmNlbEhhbmRsZXIuY2FsbChlbGVtZW50KTtcbiAgfSk7XG59XG5cbmNvbnN0IG5hbWVTcGFuTWl4aW5zID0ge1xuICBvbkNoYW5nZSxcbiAgb2ZmQ2hhbmdlLFxuICBvbkNhbmNlbCxcbiAgb2ZmQ2FuY2VsLFxuICBjYWxsQ2hhbmdlSGFuZGxlcnMsXG4gIGNhbGxDYW5jZWxIYW5kbGVyc1xufTtcblxuZXhwb3J0IGRlZmF1bHQgbmFtZVNwYW5NaXhpbnM7XG4iXSwibmFtZXMiOlsib25DaGFuZ2UiLCJjaGFuZ2VIYW5kbGVyIiwiZWxlbWVudCIsImV2ZW50VHlwZSIsIkNIQU5HRV9FVkVOVF9UWVBFIiwiaGFuZGxlciIsImFkZEV2ZW50TGlzdGVuZXIiLCJvZmZDaGFuZ2UiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwib25DYW5jZWwiLCJjYW5jZWxIYW5kbGVyIiwiQ0FOQ0VMX0VWRU5UX1RZUEUiLCJvZmZDYW5jZWwiLCJjYWxsQ2hhbmdlSGFuZGxlcnMiLCJldmVudExpc3RlbmVycyIsImZpbmRFdmVudExpc3RlbmVycyIsImZvckVhY2giLCJldmVudExpc3RlbmVyIiwiY2FsbCIsImNhbGxDYW5jZWxIYW5kbGVycyIsIm5hbWVTcGFuTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFpRUE7OztlQUFBOzs7MEJBL0RxRDtBQUVyRCxTQUFTQSxTQUFTQyxhQUFhLEVBQUVDLE9BQU87SUFDdEMsSUFBTUMsWUFBWUMsNkJBQWlCLEVBQzdCQyxVQUFVSixlQUFnQixHQUFHO0lBRW5DLElBQUksQ0FBQ0ssZ0JBQWdCLENBQUNILFdBQVdFLFNBQVNIO0FBQzVDO0FBRUEsU0FBU0ssVUFBVU4sYUFBYSxFQUFFQyxPQUFPO0lBQ3ZDLElBQU1DLFlBQVlDLDZCQUFpQixFQUM3QkMsVUFBVUosZUFBZ0IsR0FBRztJQUVuQyxJQUFJLENBQUNPLG1CQUFtQixDQUFDTCxXQUFXRSxTQUFTSDtBQUMvQztBQUVBLFNBQVNPLFNBQVNDLGFBQWEsRUFBRVIsT0FBTztJQUNwQyxJQUFNQyxZQUFZUSw2QkFBaUIsRUFDN0JOLFVBQVVLLGVBQWdCLEdBQUc7SUFFckMsSUFBSSxDQUFDSixnQkFBZ0IsQ0FBQ0gsV0FBV0UsU0FBU0g7QUFDNUM7QUFFQSxTQUFTVSxVQUFVRixhQUFhLEVBQUVSLE9BQU87SUFDckMsSUFBTUMsWUFBWVEsNkJBQWlCLEVBQzdCTixVQUFVSyxlQUFnQixHQUFHO0lBRXJDLElBQUksQ0FBQ0YsbUJBQW1CLENBQUNMLFdBQVdFLFNBQVNIO0FBQy9DO0FBRUEsU0FBU1c7SUFDUCxJQUFNVixZQUFZQyw2QkFBaUIsRUFDN0JVLGlCQUFpQixJQUFJLENBQUNDLGtCQUFrQixDQUFDWjtJQUUvQ1csZUFBZUUsT0FBTyxDQUFDLFNBQUNDO1FBQ3RCLElBQVFaLFVBQXFCWSxjQUFyQlosU0FBU0gsVUFBWWUsY0FBWmYsU0FDWEQsZ0JBQWdCSSxTQUFVLEdBQUc7UUFFbkNKLGNBQWNpQixJQUFJLENBQUNoQjtJQUNyQjtBQUNGO0FBRUEsU0FBU2lCO0lBQ1AsSUFBTWhCLFlBQVlRLDZCQUFpQixFQUM3QkcsaUJBQWlCLElBQUksQ0FBQ0Msa0JBQWtCLENBQUNaO0lBRS9DVyxlQUFlRSxPQUFPLENBQUMsU0FBQ0M7UUFDdEIsSUFBUVosVUFBcUJZLGNBQXJCWixTQUFTSCxVQUFZZSxjQUFaZixTQUNYUSxnQkFBZ0JMLFNBQVUsR0FBRztRQUVuQ0ssY0FBY1EsSUFBSSxDQUFDaEI7SUFDckI7QUFDRjtBQUVBLElBQU1rQixpQkFBaUI7SUFDckJwQixVQUFBQTtJQUNBTyxXQUFBQTtJQUNBRSxVQUFBQTtJQUNBRyxXQUFBQTtJQUNBQyxvQkFBQUE7SUFDQU0sb0JBQUFBO0FBQ0Y7SUFFQSxXQUFlQyJ9
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvbmFtZVNwYW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IENIQU5HRV9DVVNUT01fRVZFTlRfVFlQRSwgQ0FOQ0VMX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gb25DdXN0b21DaGFuZ2UoY2hhbmdlQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDSEFOR0VfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBjaGFuZ2VDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbUNoYW5nZShjaGFuZ2VDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IENIQU5HRV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNoYW5nZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tQ2FuY2VsKGNhbmNlbEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNhbmNlbEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tQ2FuY2VsKGNhbmNlbEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNhbmNlbEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmNvbnN0IG5hbWVTcGFuTWl4aW5zID0ge1xuICBvbkN1c3RvbUNoYW5nZSxcbiAgb2ZmQ3VzdG9tQ2hhbmdlLFxuICBvbkN1c3RvbUNhbmNlbCxcbiAgb2ZmQ3VzdG9tQ2FuY2VsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBuYW1lU3Bhbk1peGlucztcbiJdLCJuYW1lcyI6WyJvbkN1c3RvbUNoYW5nZSIsImNoYW5nZUN1c3RvbUhhbmRsZXIiLCJlbGVtZW50IiwiY3VzdG9tRXZlbnRUeXBlIiwiQ0hBTkdFX0NVU1RPTV9FVkVOVF9UWVBFIiwiY3VzdG9tSGFuZGxlciIsIm9uQ3VzdG9tRXZlbnQiLCJvZmZDdXN0b21DaGFuZ2UiLCJvZmZDdXN0b21FdmVudCIsIm9uQ3VzdG9tQ2FuY2VsIiwiY2FuY2VsQ3VzdG9tSGFuZGxlciIsIkNBTkNFTF9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbUNhbmNlbCIsIm5hbWVTcGFuTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF1Q0E7OztlQUFBOzs7Z0NBckNtRTtBQUVuRSxTQUFTQSxlQUFlQyxtQkFBbUIsRUFBRUMsT0FBTztJQUNsRCxJQUFNQyxrQkFBa0JDLDBDQUF3QixFQUMxQ0MsZ0JBQWdCSixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNLLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNLLGdCQUFnQk4sbUJBQW1CLEVBQUVDLE9BQU87SUFDbkQsSUFBTUMsa0JBQWtCQywwQ0FBd0IsRUFDMUNDLGdCQUFnQkoscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDTyxjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxTQUFTTyxlQUFlQyxtQkFBbUIsRUFBRVIsT0FBTztJQUNoRCxJQUFNQyxrQkFBa0JRLDBDQUF3QixFQUMxQ04sZ0JBQWdCSyxxQkFBc0IsR0FBRztJQUVqRCxJQUFJLENBQUNKLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNVLGdCQUFnQkYsbUJBQW1CLEVBQUVSLE9BQU87SUFDakQsSUFBTUMsa0JBQWtCUSwwQ0FBd0IsRUFDMUNOLGdCQUFnQksscUJBQXNCLEdBQUc7SUFFakQsSUFBSSxDQUFDRixjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxJQUFNVyxpQkFBaUI7SUFDckJiLGdCQUFBQTtJQUNBTyxpQkFBQUE7SUFDQUUsZ0JBQUFBO0lBQ0FHLGlCQUFBQTtBQUNGO0lBRUEsV0FBZUMifQ==
@@ -8,29 +8,19 @@ Object.defineProperty(exports, "default", {
8
8
  return _default;
9
9
  }
10
10
  });
11
- var _necessary = require("necessary");
12
- var _eventTypes = require("../eventTypes");
13
- var forEach = _necessary.asynchronousUtilities.forEach;
14
- function onRemove(removeHandler, element) {
15
- var eventType = _eventTypes.REMOVE_EVENT_TYPE, handler = removeHandler; ///
16
- this.addEventListener(eventType, handler, element);
11
+ var _customEventTypes = require("../customEventTypes");
12
+ function onCustomRemove(removeCustomHandler, element) {
13
+ var customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
14
+ this.onCustomEvent(customEventType, customHandler, element);
17
15
  }
18
- function offRemove(removeHandler, element) {
19
- var eventType = _eventTypes.REMOVE_EVENT_TYPE, handler = removeHandler; ///
20
- this.removeEventListener(eventType, handler, element);
21
- }
22
- function callRemoveHandlersAsync(pathMaps, explorer, done) {
23
- var eventType = _eventTypes.REMOVE_EVENT_TYPE, eventListeners = this.findEventListeners(eventType);
24
- forEach(eventListeners, function(eventListener, next) {
25
- var handler = eventListener.handler, element = eventListener.element, removeHandler = handler, _$done = next; ///
26
- removeHandler.call(element, pathMaps, explorer, _$done);
27
- }, done);
16
+ function offCustomRemove(removeCustomHandler, element) {
17
+ var customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
18
+ this.offCustomEvent(customEventType, customHandler, element);
28
19
  }
29
20
  var rubbishBinMixins = {
30
- onRemove: onRemove,
31
- offRemove: offRemove,
32
- callRemoveHandlersAsync: callRemoveHandlersAsync
21
+ onCustomRemove: onCustomRemove,
22
+ offCustomRemove: offCustomRemove
33
23
  };
34
24
  var _default = rubbishBinMixins;
35
25
 
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvcnViYmlzaEJpbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgYXN5bmNocm9ub3VzVXRpbGl0aWVzIH0gZnJvbSBcIm5lY2Vzc2FyeVwiO1xuXG5pbXBvcnQgeyBSRU1PVkVfRVZFTlRfVFlQRSB9IGZyb20gXCIuLi9ldmVudFR5cGVzXCI7XG5cbmNvbnN0IHsgZm9yRWFjaCB9ID0gYXN5bmNocm9ub3VzVXRpbGl0aWVzO1xuXG5mdW5jdGlvbiBvblJlbW92ZShyZW1vdmVIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFJFTU9WRV9FVkVOVF9UWVBFLFxuICAgICAgaGFuZGxlciA9IHJlbW92ZUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmUmVtb3ZlKHJlbW92ZUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gUkVNT1ZFX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSByZW1vdmVIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGNhbGxSZW1vdmVIYW5kbGVyc0FzeW5jKHBhdGhNYXBzLCBleHBsb3JlciwgZG9uZSkge1xuICBjb25zdCBldmVudFR5cGUgPSBSRU1PVkVfRVZFTlRfVFlQRSxcbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGZvckVhY2goZXZlbnRMaXN0ZW5lcnMsIChldmVudExpc3RlbmVyLCBuZXh0KSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50IH0gPSBldmVudExpc3RlbmVyLFxuICAgICAgICAgIHJlbW92ZUhhbmRsZXIgPSBoYW5kbGVyLCAgLy8vXG4gICAgICAgICAgZG9uZSA9IG5leHQ7ICAvLy9cblxuICAgIHJlbW92ZUhhbmRsZXIuY2FsbChlbGVtZW50LCBwYXRoTWFwcywgZXhwbG9yZXIsIGRvbmUpO1xuICB9LCBkb25lKTtcbn1cblxuY29uc3QgcnViYmlzaEJpbk1peGlucyA9IHtcbiAgb25SZW1vdmUsXG4gIG9mZlJlbW92ZSxcbiAgY2FsbFJlbW92ZUhhbmRsZXJzQXN5bmNcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHJ1YmJpc2hCaW5NaXhpbnM7XG4iXSwibmFtZXMiOlsiZm9yRWFjaCIsImFzeW5jaHJvbm91c1V0aWxpdGllcyIsIm9uUmVtb3ZlIiwicmVtb3ZlSGFuZGxlciIsImVsZW1lbnQiLCJldmVudFR5cGUiLCJSRU1PVkVfRVZFTlRfVFlQRSIsImhhbmRsZXIiLCJhZGRFdmVudExpc3RlbmVyIiwib2ZmUmVtb3ZlIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImNhbGxSZW1vdmVIYW5kbGVyc0FzeW5jIiwicGF0aE1hcHMiLCJleHBsb3JlciIsImRvbmUiLCJldmVudExpc3RlbmVycyIsImZpbmRFdmVudExpc3RlbmVycyIsImV2ZW50TGlzdGVuZXIiLCJuZXh0IiwiY2FsbCIsInJ1YmJpc2hCaW5NaXhpbnMiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXlDQTs7O2VBQUE7Ozt5QkF2Q3NDOzBCQUVKO0FBRWxDLElBQU0sQUFBRUEsVUFBWUMsZ0NBQXFCLENBQWpDRDtBQUVSLFNBQVNFLFNBQVNDLGFBQWEsRUFBRUMsT0FBTztJQUN0QyxJQUFNQyxZQUFZQyw2QkFBaUIsRUFDL0JDLFVBQVVKLGVBQWdCLEdBQUc7SUFFakMsSUFBSSxDQUFDSyxnQkFBZ0IsQ0FBQ0gsV0FBV0UsU0FBU0g7QUFDNUM7QUFFQSxTQUFTSyxVQUFVTixhQUFhLEVBQUVDLE9BQU87SUFDdkMsSUFBTUMsWUFBWUMsNkJBQWlCLEVBQzdCQyxVQUFVSixlQUFnQixHQUFHO0lBRW5DLElBQUksQ0FBQ08sbUJBQW1CLENBQUNMLFdBQVdFLFNBQVNIO0FBQy9DO0FBRUEsU0FBU08sd0JBQXdCQyxRQUFRLEVBQUVDLFFBQVEsRUFBRUMsSUFBSTtJQUN2RCxJQUFNVCxZQUFZQyw2QkFBaUIsRUFDN0JTLGlCQUFpQixJQUFJLENBQUNDLGtCQUFrQixDQUFDWDtJQUUvQ0wsUUFBUWUsZ0JBQWdCLFNBQUNFLGVBQWVDO1FBQ3RDLElBQVFYLFVBQXFCVSxjQUFyQlYsU0FBU0gsVUFBWWEsY0FBWmIsU0FDWEQsZ0JBQWdCSSxTQUNoQk8sU0FBT0ksTUFBTyxHQUFHO1FBRXZCZixjQUFjZ0IsSUFBSSxDQUFDZixTQUFTUSxVQUFVQyxVQUFVQztJQUNsRCxHQUFHQTtBQUNMO0FBRUEsSUFBTU0sbUJBQW1CO0lBQ3ZCbEIsVUFBQUE7SUFDQU8sV0FBQUE7SUFDQUUseUJBQUFBO0FBQ0Y7SUFFQSxXQUFlUyJ9
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvcnViYmlzaEJpbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgUkVNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gb25DdXN0b21SZW1vdmUocmVtb3ZlQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBSRU1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSByZW1vdmVDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVJlbW92ZShyZW1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHJlbW92ZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmNvbnN0IHJ1YmJpc2hCaW5NaXhpbnMgPSB7XG4gIG9uQ3VzdG9tUmVtb3ZlLFxuICBvZmZDdXN0b21SZW1vdmVcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHJ1YmJpc2hCaW5NaXhpbnM7XG4iXSwibmFtZXMiOlsib25DdXN0b21SZW1vdmUiLCJyZW1vdmVDdXN0b21IYW5kbGVyIiwiZWxlbWVudCIsImN1c3RvbUV2ZW50VHlwZSIsIlJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSIsImN1c3RvbUhhbmRsZXIiLCJvbkN1c3RvbUV2ZW50Iiwib2ZmQ3VzdG9tUmVtb3ZlIiwib2ZmQ3VzdG9tRXZlbnQiLCJydWJiaXNoQmluTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF1QkE7OztlQUFBOzs7Z0NBckJ5QztBQUV6QyxTQUFTQSxlQUFlQyxtQkFBbUIsRUFBRUMsT0FBTztJQUNsRCxJQUFNQyxrQkFBa0JDLDBDQUF3QixFQUMxQ0MsZ0JBQWdCSixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNLLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNLLGdCQUFnQk4sbUJBQW1CLEVBQUVDLE9BQU87SUFDbkQsSUFBTUMsa0JBQWtCQywwQ0FBd0IsRUFDMUNDLGdCQUFnQkoscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDTyxjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxJQUFNTyxtQkFBbUI7SUFDdkJULGdCQUFBQTtJQUNBTyxpQkFBQUE7QUFDRjtJQUVBLFdBQWVFIn0=
package/lib/rubbishBin.js CHANGED
@@ -17,6 +17,7 @@ var _closed = /*#__PURE__*/ _interop_require_default(require("./svg/rubbishBin/c
17
17
  var _dragEntryItem = /*#__PURE__*/ _interop_require_default(require("./mixins/dragEntryItem"));
18
18
  var _fileName = /*#__PURE__*/ _interop_require_default(require("./item/entry/marker/fileName"));
19
19
  var _directoryName = /*#__PURE__*/ _interop_require_default(require("./item/entry/marker/directoryName"));
20
+ var _customEventTypes = require("./customEventTypes");
20
21
  var _pathMap = require("./utilities/pathMap");
21
22
  var _entryTypes = require("./entryTypes");
22
23
  function _assert_this_initialized(self) {
@@ -194,7 +195,7 @@ var RubbishBin = /*#__PURE__*/ function(Element) {
194
195
  _class_call_check(this, RubbishBin);
195
196
  var _this;
196
197
  _this = _super.apply(this, arguments);
197
- _define_property(_assert_this_initialized(_this), "dropHandler", function(dragElement, aborted, element, done) {
198
+ _define_property(_assert_this_initialized(_this), "dropCustomHandler", function(dragElement, aborted, element, done) {
198
199
  var dragEntryItem = dragElement, markerEntryItem = _this.retrieveMarkerEntryItem(), markerEntryItemExplorer = markerEntryItem.getExplorer();
199
200
  if (aborted) {
200
201
  markerEntryItemExplorer.removeMarker();
@@ -203,7 +204,7 @@ var RubbishBin = /*#__PURE__*/ function(Element) {
203
204
  }
204
205
  markerEntryItemExplorer.dropDragEntryItem(dragEntryItem, done);
205
206
  });
206
- _define_property(_assert_this_initialized(_this), "dragOverHandler", function(dragElement, element) {
207
+ _define_property(_assert_this_initialized(_this), "dragOverCustomHandler", function(dragElement, element) {
207
208
  var dragEntryItem = dragElement, markerEntryItem = _this.retrieveMarkerEntryItem();
208
209
  var markerEntryItemPath = markerEntryItem.getPath(), markerEntryItemExplorer = markerEntryItem.getExplorer(), previousMarkerEntryItemPath = markerEntryItemPath, previousMarkerEntryItemExplorer = markerEntryItemExplorer; ///
209
210
  markerEntryItemPath = null; ///
@@ -307,7 +308,8 @@ var RubbishBin = /*#__PURE__*/ function(Element) {
307
308
  key: "removeDragEntryItems",
308
309
  value: function removeDragEntryItems(pathMaps, explorer, done) {
309
310
  var _this = this;
310
- this.callRemoveHandlersAsync(pathMaps, explorer, function() {
311
+ var customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE;
312
+ this.callCustomHandlersAsync(customEventType, pathMaps, explorer, function() {
311
313
  pathMaps.forEach(function(pathMap) {
312
314
  _this.removeDragEntryItem(pathMap, explorer);
313
315
  });
@@ -335,22 +337,18 @@ var RubbishBin = /*#__PURE__*/ function(Element) {
335
337
  {
336
338
  key: "didMount",
337
339
  value: function didMount() {
338
- var onRemove = this.properties.onRemove, removeHandler = onRemove; ///
339
340
  this.enableDrop();
340
- this.onDrop(this.dropHandler);
341
- this.onDragOver(this.dragOverHandler);
342
- removeHandler && this.onRemove(removeHandler);
341
+ this.onCustomDrop(this.dropCustomHandler);
342
+ this.onCustomDragOver(this.dragOverCustomHandler);
343
343
  this.close();
344
344
  }
345
345
  },
346
346
  {
347
347
  key: "willUnmount",
348
348
  value: function willUnmount() {
349
- var onRemove = this.properties.onRemove, removeHandler = onRemove; ///
350
349
  this.disableDrop();
351
- this.offDrop(this.dropHandler);
352
- this.offDragOver(this.dragOverHandler);
353
- removeHandler && this.offRemove(removeHandler);
350
+ this.offCustomDrop(this.dropCustomHandler);
351
+ this.offCustomDragOver(this.dragOverCustomHandler);
354
352
  }
355
353
  },
356
354
  {
@@ -451,7 +449,6 @@ _define_property(RubbishBin, "OpenRubbishBinSVG", _open.default);
451
449
  _define_property(RubbishBin, "ClosedRubbishBinSVG", _closed.default);
452
450
  _define_property(RubbishBin, "tagName", "div");
453
451
  _define_property(RubbishBin, "ignoredProperties", [
454
- "onRemove",
455
452
  "reference",
456
453
  "references"
457
454
  ]);
@@ -463,4 +460,4 @@ Object.assign(RubbishBin.prototype, _rubbishBin.default);
463
460
  Object.assign(RubbishBin.prototype, _dragEntryItem.default);
464
461
  var _default = (0, _easywithstyle.default)(RubbishBin)(_templateObject());
465
462
 
466
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWJiaXNoQmluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcImVhc3lcIjtcbmltcG9ydCB7IGRyb3BNaXhpbnMgfSBmcm9tIFwiZWFzeS1kcmFnLWFuZC1kcm9wXCI7XG5cbmltcG9ydCBydWJiaXNoQmluTWl4aW5zIGZyb20gXCIuL21peGlucy9ydWJiaXNoQmluXCI7XG5pbXBvcnQgT3BlblJ1YmJpc2hCaW5TVkcgZnJvbSBcIi4vc3ZnL3J1YmJpc2hCaW4vb3BlblwiO1xuaW1wb3J0IENsb3NlZFJ1YmJpc2hCaW5TVkcgZnJvbSBcIi4vc3ZnL3J1YmJpc2hCaW4vY2xvc2VkXCI7XG5pbXBvcnQgZHJhZ0VudHJ5SXRlbU1peGlucyBmcm9tIFwiLi9taXhpbnMvZHJhZ0VudHJ5SXRlbVwiO1xuaW1wb3J0IEZpbGVOYW1lTWFya2VyRW50cnlJdGVtIGZyb20gXCIuL2l0ZW0vZW50cnkvbWFya2VyL2ZpbGVOYW1lXCI7XG5pbXBvcnQgRGlyZWN0b3J5TmFtZU1hcmtlckVudHJ5SXRlbSBmcm9tIFwiLi9pdGVtL2VudHJ5L21hcmtlci9kaXJlY3RvcnlOYW1lXCI7XG5cbmltcG9ydCB7IHNvdXJjZUVudHJ5UGF0aEZyb21FbnRyeUl0ZW0gfSBmcm9tIFwiLi91dGlsaXRpZXMvcGF0aE1hcFwiO1xuaW1wb3J0IHsgRElSRUNUT1JZX05BTUVfRFJBR19FTlRSWV9UWVBFLCBGSUxFX05BTUVfRFJBR19FTlRSWV9UWVBFIH0gZnJvbSBcIi4vZW50cnlUeXBlc1wiO1xuXG5jbGFzcyBSdWJiaXNoQmluIGV4dGVuZHMgRWxlbWVudCB7XG4gIGRyb3BIYW5kbGVyID0gKGRyYWdFbGVtZW50LCBhYm9ydGVkLCBlbGVtZW50LCBkb25lKSA9PiB7XG4gICAgY29uc3QgZHJhZ0VudHJ5SXRlbSA9IGRyYWdFbGVtZW50LCAgLy8vXG4gICAgICAgICAgbWFya2VyRW50cnlJdGVtID0gdGhpcy5yZXRyaWV2ZU1hcmtlckVudHJ5SXRlbSgpLFxuICAgICAgICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyID0gbWFya2VyRW50cnlJdGVtLmdldEV4cGxvcmVyKCk7XG5cbiAgICBpZiAoYWJvcnRlZCkge1xuICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIGRvbmUoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyLmRyb3BEcmFnRW50cnlJdGVtKGRyYWdFbnRyeUl0ZW0sIGRvbmUpO1xuICB9XG5cbiAgZHJhZ092ZXJIYW5kbGVyID0gKGRyYWdFbGVtZW50LCBlbGVtZW50KSA9PiB7XG4gICAgY29uc3QgZHJhZ0VudHJ5SXRlbSA9IGRyYWdFbGVtZW50LCAgLy8vXG4gICAgICAgICAgbWFya2VyRW50cnlJdGVtID0gdGhpcy5yZXRyaWV2ZU1hcmtlckVudHJ5SXRlbSgpO1xuXG4gICAgbGV0IG1hcmtlckVudHJ5SXRlbVBhdGggPSBtYXJrZXJFbnRyeUl0ZW0uZ2V0UGF0aCgpLFxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciA9IG1hcmtlckVudHJ5SXRlbS5nZXRFeHBsb3JlcigpLFxuICAgICAgICBwcmV2aW91c01hcmtlckVudHJ5SXRlbVBhdGggPSBtYXJrZXJFbnRyeUl0ZW1QYXRoLCAvLy9cbiAgICAgICAgcHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciA9IG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyOyAvLy9cblxuICAgIG1hcmtlckVudHJ5SXRlbVBhdGggPSBudWxsOyAvLy9cblxuICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyID0gdGhpczsgIC8vL1xuXG4gICAgaWYgKChtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciAhPT0gcHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlcikgfHwgKG1hcmtlckVudHJ5SXRlbVBhdGggIT09IHByZXZpb3VzTWFya2VyRW50cnlJdGVtUGF0aCkpIHtcbiAgICAgIGNvbnN0IGRyYWdFbnRyeUl0ZW1UeXBlID0gZHJhZ0VudHJ5SXRlbS5nZXRUeXBlKCk7XG5cbiAgICAgIHByZXZpb3VzTWFya2VyRW50cnlJdGVtRXhwbG9yZXIucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyLmFkZE1hcmtlcihtYXJrZXJFbnRyeUl0ZW1QYXRoLCBkcmFnRW50cnlJdGVtVHlwZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIGNvbnN0IHsgcmVmZXJlbmNlID0gbnVsbCB9ID0gdGhpcy5wcm9wZXJ0aWVzO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZTtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZXMoKSB7XG4gICAgY29uc3QgeyByZWZlcmVuY2VzID0gW10gfSA9IHRoaXMucHJvcGVydGllcztcblxuICAgIHJldHVybiByZWZlcmVuY2VzO1xuICB9XG5cbiAgcmV0cmlldmVNYXJrZXJFbnRyeUl0ZW0oKSB7XG4gICAgY29uc3QgeyBtYXJrZXJFbnRyeUl0ZW0gfSA9IGdsb2JhbFRoaXM7XG5cbiAgICByZXR1cm4gbWFya2VyRW50cnlJdGVtO1xuICB9XG5cbiAgYWRkTWFya2VyKG1hcmtlckVudHJ5SXRlbVBhdGgsIGRyYWdFbnRyeUl0ZW1UeXBlKSB7XG4gICAgY29uc3QgbWFya2VyRW50cnlJdGVtTmFtZSA9IG1hcmtlckVudHJ5SXRlbVBhdGg7ICAvLy9cblxuICAgIHRoaXMuYWRkTWFya2VyRW50cnlJdGVtKG1hcmtlckVudHJ5SXRlbU5hbWUsIGRyYWdFbnRyeUl0ZW1UeXBlKTtcblxuICAgIHRoaXMub3BlbigpO1xuICB9XG5cbiAgcmVtb3ZlTWFya2VyKCkge1xuICAgIHRoaXMucmVtb3ZlTWFya2VyRW50cnlJdGVtKCk7XG5cbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICBhZGRNYXJrZXJFbnRyeUl0ZW0obWFya2VyRW50cnlJdGVtTmFtZSwgZHJhZ0VudHJ5SXRlbVR5cGUpIHtcbiAgICBsZXQgbWFya2VyRW50cnlJdGVtO1xuXG4gICAgY29uc3QgbmFtZSA9IG1hcmtlckVudHJ5SXRlbU5hbWUsIC8vL1xuICAgICAgICAgIHR5cGUgPSBkcmFnRW50cnlJdGVtVHlwZTsgIC8vL1xuXG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIEZJTEVfTkFNRV9EUkFHX0VOVFJZX1RZUEUgOiB7XG4gICAgICAgIGNvbnN0IGV4cGxvcmVyID0gdGhpcywgIC8vL1xuICAgICAgICAgICAgICBmaWxlTmFtZU1hcmtlckVudHJ5SXRlbSA9XG5cbiAgICAgICAgICAgICAgICA8RmlsZU5hbWVNYXJrZXJFbnRyeUl0ZW0gbmFtZT17bmFtZX0gZXhwbG9yZXI9e2V4cGxvcmVyfSAvPlxuXG4gICAgICAgICAgICAgIDtcblxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSBmaWxlTmFtZU1hcmtlckVudHJ5SXRlbTsgIC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIERJUkVDVE9SWV9OQU1FX0RSQUdfRU5UUllfVFlQRSA6IHtcbiAgICAgICAgY29uc3QgZXhwbG9yZXIgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgICAgIGRpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0gPVxuXG4gICAgICAgICAgICAgICAgPERpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0gbmFtZT17bmFtZX0gZXhwbG9yZXI9e2V4cGxvcmVyfSAvPlxuXG4gICAgICAgICAgICAgIDtcblxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSBkaXJlY3RvcnlOYW1lTWFya2VyRW50cnlJdGVtOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVxuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlTWFya2VyRW50cnlJdGVtKCkge1xuICAgIGNvbnN0IG1hcmtlckVudHJ5SXRlbSA9IG51bGw7XG5cbiAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVxuICAgIH0pO1xuICB9XG5cbiAgZHJvcERyYWdFbnRyeUl0ZW0oZHJhZ0VudHJ5SXRlbSwgZG9uZSkge1xuICAgIGNvbnN0IGRyYWdFbnRyeUl0ZW1FeHBsb3JlciA9IGRyYWdFbnRyeUl0ZW0uZ2V0RXhwbG9yZXIoKSxcbiAgICAgICAgICBzb3VyY2VFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGhGcm9tRW50cnlJdGVtKGRyYWdFbnRyeUl0ZW0pLFxuICAgICAgICAgIHRhcmdldEVudHJ5UGF0aCA9IG51bGwsXG4gICAgICAgICAgcGF0aE1hcHMgPSBkcmFnRW50cnlJdGVtLmdldFBhdGhNYXBzKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKSxcbiAgICAgICAgICBleHBsb3JlciA9IGRyYWdFbnRyeUl0ZW1FeHBsb3JlcjsgIC8vL1xuXG4gICAgdGhpcy5yZW1vdmVEcmFnRW50cnlJdGVtcyhwYXRoTWFwcywgZXhwbG9yZXIsICgpID0+IHtcbiAgICAgIHRoaXMucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIGRvbmUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJlbW92ZURyYWdFbnRyeUl0ZW1zKHBhdGhNYXBzLCBleHBsb3JlciwgZG9uZSkge1xuICAgIHRoaXMuY2FsbFJlbW92ZUhhbmRsZXJzQXN5bmMocGF0aE1hcHMsIGV4cGxvcmVyLCAoKSA9PiB7XG4gICAgICBwYXRoTWFwcy5mb3JFYWNoKChwYXRoTWFwKSA9PiB7XG4gICAgICAgIHRoaXMucmVtb3ZlRHJhZ0VudHJ5SXRlbShwYXRoTWFwLCBleHBsb3JlcilcbiAgICAgIH0pO1xuXG4gICAgICBwYXRoTWFwcy5mb3JFYWNoKChwYXRoTWFwKSA9PiB7XG4gICAgICAgIHRoaXMuYWRkRHJhZ0VudHJ5SXRlbShwYXRoTWFwLCBleHBsb3Jlcik7XG4gICAgICB9KTtcblxuICAgICAgZG9uZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgb3BlbigpIHtcbiAgICB0aGlzLnNob3dPcGVuUnViYmlzaEJpblNWRygpO1xuICAgIHRoaXMuaGlkZUNsb3NlZFJ1YmJpc2hCaW5TVkcoKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuaGlkZU9wZW5SdWJiaXNoQmluU1ZHKCk7XG4gICAgdGhpcy5zaG93Q2xvc2VkUnViYmlzaEJpblNWRygpO1xuICB9XG5cbiAgZGlkTW91bnQoKSB7XG4gICAgY29uc3QgeyBvblJlbW92ZSB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICAgIHJlbW92ZUhhbmRsZXIgPSBvblJlbW92ZTsgLy8vXG5cbiAgICB0aGlzLmVuYWJsZURyb3AoKTtcblxuICAgIHRoaXMub25Ecm9wKHRoaXMuZHJvcEhhbmRsZXIpO1xuXG4gICAgdGhpcy5vbkRyYWdPdmVyKHRoaXMuZHJhZ092ZXJIYW5kbGVyKTtcblxuICAgIHJlbW92ZUhhbmRsZXIgJiYgdGhpcy5vblJlbW92ZShyZW1vdmVIYW5kbGVyKTtcblxuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIHdpbGxVbm1vdW50KCkge1xuICAgIGNvbnN0IHsgb25SZW1vdmUgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgICByZW1vdmVIYW5kbGVyID0gb25SZW1vdmU7IC8vL1xuXG4gICAgdGhpcy5kaXNhYmxlRHJvcCgpO1xuXG4gICAgdGhpcy5vZmZEcm9wKHRoaXMuZHJvcEhhbmRsZXIpO1xuXG4gICAgdGhpcy5vZmZEcmFnT3Zlcih0aGlzLmRyYWdPdmVySGFuZGxlcik7XG5cbiAgICByZW1vdmVIYW5kbGVyICYmIHRoaXMub2ZmUmVtb3ZlKHJlbW92ZUhhbmRsZXIpO1xuICB9XG5cbiAgYWRkRmlsZVBhdGgoZmlsZVBhdGgsIHJlYWRPbmx5ID0gZmFsc2UpIHtcbiAgICAvLy9cbiAgfVxuXG4gIHJlbW92ZUZpbGVQYXRoKGZpbGVQYXRoLCByZW1vdmVFbXB0eVBhcmVudERpcmVjdG9yaWVzID0gZmFsc2UpIHtcbiAgICAvLy9cbiAgfVxuXG4gIHJlbW92ZUFsbFBhdGhzKCkge1xuICAgIC8vL1xuICB9XG5cbiAgYWRkRGlyZWN0b3J5UGF0aChkaXJlY3RvcnlQYXRoLCByZWFkT25seSA9IGZhbHNlLCBjb2xsYXBzZWQgPSB0cnVlKSB7XG4gICAgLy8vXG4gIH1cblxuICByZW1vdmVEaXJlY3RvcnlQYXRoKGRpcmVjdG9yeVBhdGgsIHJlbW92ZUVtcHR5UGFyZW50RGlyZWN0b3JpZXMgPSBmYWxzZSkge1xuICAgIC8vL1xuICB9XG5cbiAgZ2V0TWFya2VyRW50cnlJdGVtUGF0aCgpIHtcbiAgICBjb25zdCB7IG1hcmtlckVudHJ5SXRlbVBhdGggfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICAgIHJldHVybiBtYXJrZXJFbnRyeUl0ZW1QYXRoO1xuICB9XG5cbiAgZ2V0TWFya2VyRW50cnlJdGVtRXhwbG9yZXIoKSB7XG4gICAgY29uc3QgeyBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gICAgcmV0dXJuIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyO1xuICB9XG5cbiAgc2V0TWFya2VyRW50cnlJdGVtUGF0aChtYXJrZXJFbnRyeUl0ZW1QYXRoKSB7XG4gICAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgICBtYXJrZXJFbnRyeUl0ZW1QYXRoXG4gICAgfSk7XG4gIH1cblxuICBzZXRNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlcihtYXJrZXJFbnRyeUl0ZW1FeHBsb3Jlcikge1xuICAgIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXJcbiAgICB9KTtcbiAgfVxuXG4gIHNldEluaXRpYWxTdGF0ZSgpIHtcbiAgICBjb25zdCBtYXJrZXJFbnRyeUl0ZW1QYXRoID0gbnVsbCxcbiAgICAgICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciA9IG51bGw7XG5cbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVBhdGgsXG4gICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlclxuICAgIH0pO1xuICB9XG5cbiAgY2hpbGRFbGVtZW50cygpIHtcbiAgICBjb25zdCB7IE9wZW5SdWJiaXNoQmluU1ZHLCBDbG9zZWRSdWJiaXNoQmluU1ZHIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgcmV0dXJuIChbXG5cbiAgICAgIDxPcGVuUnViYmlzaEJpblNWRy8+LFxuICAgICAgPENsb3NlZFJ1YmJpc2hCaW5TVkcvPlxuXG4gICAgXSk7XG4gIH1cblxuICBpbml0aWFsaXNlKCkge1xuICAgIHRoaXMuYXNzaWduQ29udGV4dCgpO1xuXG4gICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKTtcbiAgfVxuXG4gIHN0YXRpYyBPcGVuUnViYmlzaEJpblNWRyA9IE9wZW5SdWJiaXNoQmluU1ZHO1xuXG4gIHN0YXRpYyBDbG9zZWRSdWJiaXNoQmluU1ZHID0gQ2xvc2VkUnViYmlzaEJpblNWRztcblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiZGl2XCI7XG5cbiAgc3RhdGljIGlnbm9yZWRQcm9wZXJ0aWVzID0gW1xuICAgIFwib25SZW1vdmVcIixcbiAgICBcInJlZmVyZW5jZVwiLFxuICAgIFwicmVmZXJlbmNlc1wiXG4gIF07XG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wZXJ0aWVzID0ge1xuICAgIGNsYXNzTmFtZTogXCJydWJiaXNoLWJpblwiXG4gIH07XG59XG5cbk9iamVjdC5hc3NpZ24oUnViYmlzaEJpbi5wcm90b3R5cGUsIGRyb3BNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihSdWJiaXNoQmluLnByb3RvdHlwZSwgcnViYmlzaEJpbk1peGlucyk7XG5PYmplY3QuYXNzaWduKFJ1YmJpc2hCaW4ucHJvdG90eXBlLCBkcmFnRW50cnlJdGVtTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKFJ1YmJpc2hCaW4pYFxuICBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgXG5gO1xuIl0sIm5hbWVzIjpbIlJ1YmJpc2hCaW4iLCJkcm9wSGFuZGxlciIsImRyYWdFbGVtZW50IiwiYWJvcnRlZCIsImVsZW1lbnQiLCJkb25lIiwiZHJhZ0VudHJ5SXRlbSIsIm1hcmtlckVudHJ5SXRlbSIsInJldHJpZXZlTWFya2VyRW50cnlJdGVtIiwibWFya2VyRW50cnlJdGVtRXhwbG9yZXIiLCJnZXRFeHBsb3JlciIsInJlbW92ZU1hcmtlciIsImRyb3BEcmFnRW50cnlJdGVtIiwiZHJhZ092ZXJIYW5kbGVyIiwibWFya2VyRW50cnlJdGVtUGF0aCIsImdldFBhdGgiLCJwcmV2aW91c01hcmtlckVudHJ5SXRlbVBhdGgiLCJwcmV2aW91c01hcmtlckVudHJ5SXRlbUV4cGxvcmVyIiwiZHJhZ0VudHJ5SXRlbVR5cGUiLCJnZXRUeXBlIiwiYWRkTWFya2VyIiwiZ2V0UmVmZXJlbmNlIiwicHJvcGVydGllcyIsInJlZmVyZW5jZSIsImdldFJlZmVyZW5jZXMiLCJyZWZlcmVuY2VzIiwiZ2xvYmFsVGhpcyIsIm1hcmtlckVudHJ5SXRlbU5hbWUiLCJhZGRNYXJrZXJFbnRyeUl0ZW0iLCJvcGVuIiwicmVtb3ZlTWFya2VyRW50cnlJdGVtIiwiY2xvc2UiLCJuYW1lIiwidHlwZSIsIkZJTEVfTkFNRV9EUkFHX0VOVFJZX1RZUEUiLCJleHBsb3JlciIsImZpbGVOYW1lTWFya2VyRW50cnlJdGVtIiwiRmlsZU5hbWVNYXJrZXJFbnRyeUl0ZW0iLCJESVJFQ1RPUllfTkFNRV9EUkFHX0VOVFJZX1RZUEUiLCJkaXJlY3RvcnlOYW1lTWFya2VyRW50cnlJdGVtIiwiRGlyZWN0b3J5TmFtZU1hcmtlckVudHJ5SXRlbSIsIk9iamVjdCIsImFzc2lnbiIsImRyYWdFbnRyeUl0ZW1FeHBsb3JlciIsInNvdXJjZUVudHJ5UGF0aCIsInNvdXJjZUVudHJ5UGF0aEZyb21FbnRyeUl0ZW0iLCJ0YXJnZXRFbnRyeVBhdGgiLCJwYXRoTWFwcyIsImdldFBhdGhNYXBzIiwicmVtb3ZlRHJhZ0VudHJ5SXRlbXMiLCJjYWxsUmVtb3ZlSGFuZGxlcnNBc3luYyIsImZvckVhY2giLCJwYXRoTWFwIiwicmVtb3ZlRHJhZ0VudHJ5SXRlbSIsImFkZERyYWdFbnRyeUl0ZW0iLCJzaG93T3BlblJ1YmJpc2hCaW5TVkciLCJoaWRlQ2xvc2VkUnViYmlzaEJpblNWRyIsImhpZGVPcGVuUnViYmlzaEJpblNWRyIsInNob3dDbG9zZWRSdWJiaXNoQmluU1ZHIiwiZGlkTW91bnQiLCJvblJlbW92ZSIsInJlbW92ZUhhbmRsZXIiLCJlbmFibGVEcm9wIiwib25Ecm9wIiwib25EcmFnT3ZlciIsIndpbGxVbm1vdW50IiwiZGlzYWJsZURyb3AiLCJvZmZEcm9wIiwib2ZmRHJhZ092ZXIiLCJvZmZSZW1vdmUiLCJhZGRGaWxlUGF0aCIsImZpbGVQYXRoIiwicmVhZE9ubHkiLCJyZW1vdmVGaWxlUGF0aCIsInJlbW92ZUVtcHR5UGFyZW50RGlyZWN0b3JpZXMiLCJyZW1vdmVBbGxQYXRocyIsImFkZERpcmVjdG9yeVBhdGgiLCJkaXJlY3RvcnlQYXRoIiwiY29sbGFwc2VkIiwicmVtb3ZlRGlyZWN0b3J5UGF0aCIsImdldE1hcmtlckVudHJ5SXRlbVBhdGgiLCJnZXRTdGF0ZSIsImdldE1hcmtlckVudHJ5SXRlbUV4cGxvcmVyIiwic2V0TWFya2VyRW50cnlJdGVtUGF0aCIsInVwZGF0ZVN0YXRlIiwic2V0TWFya2VyRW50cnlJdGVtRXhwbG9yZXIiLCJzZXRJbml0aWFsU3RhdGUiLCJzZXRTdGF0ZSIsImNoaWxkRWxlbWVudHMiLCJjb25zdHJ1Y3RvciIsIk9wZW5SdWJiaXNoQmluU1ZHIiwiQ2xvc2VkUnViYmlzaEJpblNWRyIsImluaXRpYWxpc2UiLCJhc3NpZ25Db250ZXh0IiwiRWxlbWVudCIsInRhZ05hbWUiLCJpZ25vcmVkUHJvcGVydGllcyIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwicHJvdG90eXBlIiwiZHJvcE1peGlucyIsInJ1YmJpc2hCaW5NaXhp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
463
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWJiaXNoQmluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcImVhc3lcIjtcbmltcG9ydCB7IGRyb3BNaXhpbnMgfSBmcm9tIFwiZWFzeS1kcmFnLWFuZC1kcm9wXCI7XG5cbmltcG9ydCBydWJiaXNoQmluTWl4aW5zIGZyb20gXCIuL21peGlucy9ydWJiaXNoQmluXCI7XG5pbXBvcnQgT3BlblJ1YmJpc2hCaW5TVkcgZnJvbSBcIi4vc3ZnL3J1YmJpc2hCaW4vb3BlblwiO1xuaW1wb3J0IENsb3NlZFJ1YmJpc2hCaW5TVkcgZnJvbSBcIi4vc3ZnL3J1YmJpc2hCaW4vY2xvc2VkXCI7XG5pbXBvcnQgZHJhZ0VudHJ5SXRlbU1peGlucyBmcm9tIFwiLi9taXhpbnMvZHJhZ0VudHJ5SXRlbVwiO1xuaW1wb3J0IEZpbGVOYW1lTWFya2VyRW50cnlJdGVtIGZyb20gXCIuL2l0ZW0vZW50cnkvbWFya2VyL2ZpbGVOYW1lXCI7XG5pbXBvcnQgRGlyZWN0b3J5TmFtZU1hcmtlckVudHJ5SXRlbSBmcm9tIFwiLi9pdGVtL2VudHJ5L21hcmtlci9kaXJlY3RvcnlOYW1lXCI7XG5cbmltcG9ydCB7IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSB9IGZyb20gXCIuL2N1c3RvbUV2ZW50VHlwZXNcIjtcbmltcG9ydCB7IHNvdXJjZUVudHJ5UGF0aEZyb21FbnRyeUl0ZW0gfSBmcm9tIFwiLi91dGlsaXRpZXMvcGF0aE1hcFwiO1xuaW1wb3J0IHsgRElSRUNUT1JZX05BTUVfRFJBR19FTlRSWV9UWVBFLCBGSUxFX05BTUVfRFJBR19FTlRSWV9UWVBFIH0gZnJvbSBcIi4vZW50cnlUeXBlc1wiO1xuXG5jbGFzcyBSdWJiaXNoQmluIGV4dGVuZHMgRWxlbWVudCB7XG4gIGRyb3BDdXN0b21IYW5kbGVyID0gKGRyYWdFbGVtZW50LCBhYm9ydGVkLCBlbGVtZW50LCBkb25lKSA9PiB7XG4gICAgY29uc3QgZHJhZ0VudHJ5SXRlbSA9IGRyYWdFbGVtZW50LCAgLy8vXG4gICAgICAgICAgbWFya2VyRW50cnlJdGVtID0gdGhpcy5yZXRyaWV2ZU1hcmtlckVudHJ5SXRlbSgpLFxuICAgICAgICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyID0gbWFya2VyRW50cnlJdGVtLmdldEV4cGxvcmVyKCk7XG5cbiAgICBpZiAoYWJvcnRlZCkge1xuICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIGRvbmUoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyLmRyb3BEcmFnRW50cnlJdGVtKGRyYWdFbnRyeUl0ZW0sIGRvbmUpO1xuICB9XG5cbiAgZHJhZ092ZXJDdXN0b21IYW5kbGVyID0gKGRyYWdFbGVtZW50LCBlbGVtZW50KSA9PiB7XG4gICAgY29uc3QgZHJhZ0VudHJ5SXRlbSA9IGRyYWdFbGVtZW50LCAgLy8vXG4gICAgICAgICAgbWFya2VyRW50cnlJdGVtID0gdGhpcy5yZXRyaWV2ZU1hcmtlckVudHJ5SXRlbSgpO1xuXG4gICAgbGV0IG1hcmtlckVudHJ5SXRlbVBhdGggPSBtYXJrZXJFbnRyeUl0ZW0uZ2V0UGF0aCgpLFxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciA9IG1hcmtlckVudHJ5SXRlbS5nZXRFeHBsb3JlcigpLFxuICAgICAgICBwcmV2aW91c01hcmtlckVudHJ5SXRlbVBhdGggPSBtYXJrZXJFbnRyeUl0ZW1QYXRoLCAvLy9cbiAgICAgICAgcHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciA9IG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyOyAvLy9cblxuICAgIG1hcmtlckVudHJ5SXRlbVBhdGggPSBudWxsOyAvLy9cblxuICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyID0gdGhpczsgIC8vL1xuXG4gICAgaWYgKChtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciAhPT0gcHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlcikgfHwgKG1hcmtlckVudHJ5SXRlbVBhdGggIT09IHByZXZpb3VzTWFya2VyRW50cnlJdGVtUGF0aCkpIHtcbiAgICAgIGNvbnN0IGRyYWdFbnRyeUl0ZW1UeXBlID0gZHJhZ0VudHJ5SXRlbS5nZXRUeXBlKCk7XG5cbiAgICAgIHByZXZpb3VzTWFya2VyRW50cnlJdGVtRXhwbG9yZXIucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyLmFkZE1hcmtlcihtYXJrZXJFbnRyeUl0ZW1QYXRoLCBkcmFnRW50cnlJdGVtVHlwZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIGNvbnN0IHsgcmVmZXJlbmNlID0gbnVsbCB9ID0gdGhpcy5wcm9wZXJ0aWVzO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZTtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZXMoKSB7XG4gICAgY29uc3QgeyByZWZlcmVuY2VzID0gW10gfSA9IHRoaXMucHJvcGVydGllcztcblxuICAgIHJldHVybiByZWZlcmVuY2VzO1xuICB9XG5cbiAgcmV0cmlldmVNYXJrZXJFbnRyeUl0ZW0oKSB7XG4gICAgY29uc3QgeyBtYXJrZXJFbnRyeUl0ZW0gfSA9IGdsb2JhbFRoaXM7XG5cbiAgICByZXR1cm4gbWFya2VyRW50cnlJdGVtO1xuICB9XG5cbiAgYWRkTWFya2VyKG1hcmtlckVudHJ5SXRlbVBhdGgsIGRyYWdFbnRyeUl0ZW1UeXBlKSB7XG4gICAgY29uc3QgbWFya2VyRW50cnlJdGVtTmFtZSA9IG1hcmtlckVudHJ5SXRlbVBhdGg7ICAvLy9cblxuICAgIHRoaXMuYWRkTWFya2VyRW50cnlJdGVtKG1hcmtlckVudHJ5SXRlbU5hbWUsIGRyYWdFbnRyeUl0ZW1UeXBlKTtcblxuICAgIHRoaXMub3BlbigpO1xuICB9XG5cbiAgcmVtb3ZlTWFya2VyKCkge1xuICAgIHRoaXMucmVtb3ZlTWFya2VyRW50cnlJdGVtKCk7XG5cbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICBhZGRNYXJrZXJFbnRyeUl0ZW0obWFya2VyRW50cnlJdGVtTmFtZSwgZHJhZ0VudHJ5SXRlbVR5cGUpIHtcbiAgICBsZXQgbWFya2VyRW50cnlJdGVtO1xuXG4gICAgY29uc3QgbmFtZSA9IG1hcmtlckVudHJ5SXRlbU5hbWUsIC8vL1xuICAgICAgICAgIHR5cGUgPSBkcmFnRW50cnlJdGVtVHlwZTsgIC8vL1xuXG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIEZJTEVfTkFNRV9EUkFHX0VOVFJZX1RZUEUgOiB7XG4gICAgICAgIGNvbnN0IGV4cGxvcmVyID0gdGhpcywgIC8vL1xuICAgICAgICAgICAgICBmaWxlTmFtZU1hcmtlckVudHJ5SXRlbSA9XG5cbiAgICAgICAgICAgICAgICA8RmlsZU5hbWVNYXJrZXJFbnRyeUl0ZW0gbmFtZT17bmFtZX0gZXhwbG9yZXI9e2V4cGxvcmVyfSAvPlxuXG4gICAgICAgICAgICAgIDtcblxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSBmaWxlTmFtZU1hcmtlckVudHJ5SXRlbTsgIC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIERJUkVDVE9SWV9OQU1FX0RSQUdfRU5UUllfVFlQRSA6IHtcbiAgICAgICAgY29uc3QgZXhwbG9yZXIgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgICAgIGRpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0gPVxuXG4gICAgICAgICAgICAgICAgPERpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0gbmFtZT17bmFtZX0gZXhwbG9yZXI9e2V4cGxvcmVyfSAvPlxuXG4gICAgICAgICAgICAgIDtcblxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSBkaXJlY3RvcnlOYW1lTWFya2VyRW50cnlJdGVtOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVxuICAgIH0pO1xuICB9XG5cbiAgcmVtb3ZlTWFya2VyRW50cnlJdGVtKCkge1xuICAgIGNvbnN0IG1hcmtlckVudHJ5SXRlbSA9IG51bGw7XG5cbiAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVxuICAgIH0pO1xuICB9XG5cbiAgZHJvcERyYWdFbnRyeUl0ZW0oZHJhZ0VudHJ5SXRlbSwgZG9uZSkge1xuICAgIGNvbnN0IGRyYWdFbnRyeUl0ZW1FeHBsb3JlciA9IGRyYWdFbnRyeUl0ZW0uZ2V0RXhwbG9yZXIoKSxcbiAgICAgICAgICBzb3VyY2VFbnRyeVBhdGggPSBzb3VyY2VFbnRyeVBhdGhGcm9tRW50cnlJdGVtKGRyYWdFbnRyeUl0ZW0pLFxuICAgICAgICAgIHRhcmdldEVudHJ5UGF0aCA9IG51bGwsXG4gICAgICAgICAgcGF0aE1hcHMgPSBkcmFnRW50cnlJdGVtLmdldFBhdGhNYXBzKHNvdXJjZUVudHJ5UGF0aCwgdGFyZ2V0RW50cnlQYXRoKSxcbiAgICAgICAgICBleHBsb3JlciA9IGRyYWdFbnRyeUl0ZW1FeHBsb3JlcjsgIC8vL1xuXG4gICAgdGhpcy5yZW1vdmVEcmFnRW50cnlJdGVtcyhwYXRoTWFwcywgZXhwbG9yZXIsICgpID0+IHtcbiAgICAgIHRoaXMucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIGRvbmUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJlbW92ZURyYWdFbnRyeUl0ZW1zKHBhdGhNYXBzLCBleHBsb3JlciwgZG9uZSkge1xuICAgIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRTtcblxuICAgIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMoY3VzdG9tRXZlbnRUeXBlLCBwYXRoTWFwcywgZXhwbG9yZXIsICgpID0+IHtcbiAgICAgIHBhdGhNYXBzLmZvckVhY2goKHBhdGhNYXApID0+IHtcbiAgICAgICAgdGhpcy5yZW1vdmVEcmFnRW50cnlJdGVtKHBhdGhNYXAsIGV4cGxvcmVyKVxuICAgICAgfSk7XG5cbiAgICAgIHBhdGhNYXBzLmZvckVhY2goKHBhdGhNYXApID0+IHtcbiAgICAgICAgdGhpcy5hZGREcmFnRW50cnlJdGVtKHBhdGhNYXAsIGV4cGxvcmVyKTtcbiAgICAgIH0pO1xuXG4gICAgICBkb25lKCk7XG4gICAgfSk7XG4gIH1cblxuICBvcGVuKCkge1xuICAgIHRoaXMuc2hvd09wZW5SdWJiaXNoQmluU1ZHKCk7XG4gICAgdGhpcy5oaWRlQ2xvc2VkUnViYmlzaEJpblNWRygpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5oaWRlT3BlblJ1YmJpc2hCaW5TVkcoKTtcbiAgICB0aGlzLnNob3dDbG9zZWRSdWJiaXNoQmluU1ZHKCk7XG4gIH1cblxuICBkaWRNb3VudCgpIHtcbiAgICB0aGlzLmVuYWJsZURyb3AoKTtcblxuICAgIHRoaXMub25DdXN0b21Ecm9wKHRoaXMuZHJvcEN1c3RvbUhhbmRsZXIpO1xuXG4gICAgdGhpcy5vbkN1c3RvbURyYWdPdmVyKHRoaXMuZHJhZ092ZXJDdXN0b21IYW5kbGVyKTtcblxuICAgIHRoaXMuY2xvc2UoKTtcbiAgfVxuXG4gIHdpbGxVbm1vdW50KCkge1xuICAgIHRoaXMuZGlzYWJsZURyb3AoKTtcblxuICAgIHRoaXMub2ZmQ3VzdG9tRHJvcCh0aGlzLmRyb3BDdXN0b21IYW5kbGVyKTtcblxuICAgIHRoaXMub2ZmQ3VzdG9tRHJhZ092ZXIodGhpcy5kcmFnT3ZlckN1c3RvbUhhbmRsZXIpO1xuICB9XG5cbiAgYWRkRmlsZVBhdGgoZmlsZVBhdGgsIHJlYWRPbmx5ID0gZmFsc2UpIHtcbiAgICAvLy9cbiAgfVxuXG4gIHJlbW92ZUZpbGVQYXRoKGZpbGVQYXRoLCByZW1vdmVFbXB0eVBhcmVudERpcmVjdG9yaWVzID0gZmFsc2UpIHtcbiAgICAvLy9cbiAgfVxuXG4gIHJlbW92ZUFsbFBhdGhzKCkge1xuICAgIC8vL1xuICB9XG5cbiAgYWRkRGlyZWN0b3J5UGF0aChkaXJlY3RvcnlQYXRoLCByZWFkT25seSA9IGZhbHNlLCBjb2xsYXBzZWQgPSB0cnVlKSB7XG4gICAgLy8vXG4gIH1cblxuICByZW1vdmVEaXJlY3RvcnlQYXRoKGRpcmVjdG9yeVBhdGgsIHJlbW92ZUVtcHR5UGFyZW50RGlyZWN0b3JpZXMgPSBmYWxzZSkge1xuICAgIC8vL1xuICB9XG5cbiAgZ2V0TWFya2VyRW50cnlJdGVtUGF0aCgpIHtcbiAgICBjb25zdCB7IG1hcmtlckVudHJ5SXRlbVBhdGggfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICAgIHJldHVybiBtYXJrZXJFbnRyeUl0ZW1QYXRoO1xuICB9XG5cbiAgZ2V0TWFya2VyRW50cnlJdGVtRXhwbG9yZXIoKSB7XG4gICAgY29uc3QgeyBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gICAgcmV0dXJuIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyO1xuICB9XG5cbiAgc2V0TWFya2VyRW50cnlJdGVtUGF0aChtYXJrZXJFbnRyeUl0ZW1QYXRoKSB7XG4gICAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgICBtYXJrZXJFbnRyeUl0ZW1QYXRoXG4gICAgfSk7XG4gIH1cblxuICBzZXRNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlcihtYXJrZXJFbnRyeUl0ZW1FeHBsb3Jlcikge1xuICAgIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXJcbiAgICB9KTtcbiAgfVxuXG4gIHNldEluaXRpYWxTdGF0ZSgpIHtcbiAgICBjb25zdCBtYXJrZXJFbnRyeUl0ZW1QYXRoID0gbnVsbCxcbiAgICAgICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciA9IG51bGw7XG5cbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVBhdGgsXG4gICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlclxuICAgIH0pO1xuICB9XG5cbiAgY2hpbGRFbGVtZW50cygpIHtcbiAgICBjb25zdCB7IE9wZW5SdWJiaXNoQmluU1ZHLCBDbG9zZWRSdWJiaXNoQmluU1ZHIH0gPSB0aGlzLmNvbnN0cnVjdG9yO1xuXG4gICAgcmV0dXJuIChbXG5cbiAgICAgIDxPcGVuUnViYmlzaEJpblNWRy8+LFxuICAgICAgPENsb3NlZFJ1YmJpc2hCaW5TVkcvPlxuXG4gICAgXSk7XG4gIH1cblxuICBpbml0aWFsaXNlKCkge1xuICAgIHRoaXMuYXNzaWduQ29udGV4dCgpO1xuXG4gICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKTtcbiAgfVxuXG4gIHN0YXRpYyBPcGVuUnViYmlzaEJpblNWRyA9IE9wZW5SdWJiaXNoQmluU1ZHO1xuXG4gIHN0YXRpYyBDbG9zZWRSdWJiaXNoQmluU1ZHID0gQ2xvc2VkUnViYmlzaEJpblNWRztcblxuICBzdGF0aWMgdGFnTmFtZSA9IFwiZGl2XCI7XG5cbiAgc3RhdGljIGlnbm9yZWRQcm9wZXJ0aWVzID0gW1xuICAgIFwicmVmZXJlbmNlXCIsXG4gICAgXCJyZWZlcmVuY2VzXCJcbiAgXTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcInJ1YmJpc2gtYmluXCJcbiAgfTtcbn1cblxuT2JqZWN0LmFzc2lnbihSdWJiaXNoQmluLnByb3RvdHlwZSwgZHJvcE1peGlucyk7XG5PYmplY3QuYXNzaWduKFJ1YmJpc2hCaW4ucHJvdG90eXBlLCBydWJiaXNoQmluTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oUnViYmlzaEJpbi5wcm90b3R5cGUsIGRyYWdFbnRyeUl0ZW1NaXhpbnMpO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoUnViYmlzaEJpbilgXG4gIFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBcbmA7XG4iXSwibmFtZXMiOlsiUnViYmlzaEJpbiIsImRyb3BDdXN0b21IYW5kbGVyIiwiZHJhZ0VsZW1lbnQiLCJhYm9ydGVkIiwiZWxlbWVudCIsImRvbmUiLCJkcmFnRW50cnlJdGVtIiwibWFya2VyRW50cnlJdGVtIiwicmV0cmlldmVNYXJrZXJFbnRyeUl0ZW0iLCJtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciIsImdldEV4cGxvcmVyIiwicmVtb3ZlTWFya2VyIiwiZHJvcERyYWdFbnRyeUl0ZW0iLCJkcmFnT3ZlckN1c3RvbUhhbmRsZXIiLCJtYXJrZXJFbnRyeUl0ZW1QYXRoIiwiZ2V0UGF0aCIsInByZXZpb3VzTWFya2VyRW50cnlJdGVtUGF0aCIsInByZXZpb3VzTWFya2VyRW50cnlJdGVtRXhwbG9yZXIiLCJkcmFnRW50cnlJdGVtVHlwZSIsImdldFR5cGUiLCJhZGRNYXJrZXIiLCJnZXRSZWZlcmVuY2UiLCJwcm9wZXJ0aWVzIiwicmVmZXJlbmNlIiwiZ2V0UmVmZXJlbmNlcyIsInJlZmVyZW5jZXMiLCJnbG9iYWxUaGlzIiwibWFya2VyRW50cnlJdGVtTmFtZSIsImFkZE1hcmtlckVudHJ5SXRlbSIsIm9wZW4iLCJyZW1vdmVNYXJrZXJFbnRyeUl0ZW0iLCJjbG9zZSIsIm5hbWUiLCJ0eXBlIiwiRklMRV9OQU1FX0RSQUdfRU5UUllfVFlQRSIsImV4cGxvcmVyIiwiZmlsZU5hbWVNYXJrZXJFbnRyeUl0ZW0iLCJGaWxlTmFtZU1hcmtlckVudHJ5SXRlbSIsIkRJUkVDVE9SWV9OQU1FX0RSQUdfRU5UUllfVFlQRSIsImRpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0iLCJEaXJlY3RvcnlOYW1lTWFya2VyRW50cnlJdGVtIiwiT2JqZWN0IiwiYXNzaWduIiwiZHJhZ0VudHJ5SXRlbUV4cGxvcmVyIiwic291cmNlRW50cnlQYXRoIiwic291cmNlRW50cnlQYXRoRnJvbUVudHJ5SXRlbSIsInRhcmdldEVudHJ5UGF0aCIsInBhdGhNYXBzIiwiZ2V0UGF0aE1hcHMiLCJyZW1vdmVEcmFnRW50cnlJdGVtcyIsImN1c3RvbUV2ZW50VHlwZSIsIlJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSIsImNhbGxDdXN0b21IYW5kbGVyc0FzeW5jIiwiZm9yRWFjaCIsInBhdGhNYXAiLCJyZW1vdmVEcmFnRW50cnlJdGVtIiwiYWRkRHJhZ0VudHJ5SXRlbSIsInNob3dPcGVuUnViYmlzaEJpblNWRyIsImhpZGVDbG9zZWRSdWJiaXNoQmluU1ZHIiwiaGlkZU9wZW5SdWJiaXNoQmluU1ZHIiwic2hvd0Nsb3NlZFJ1YmJpc2hCaW5TVkciLCJkaWRNb3VudCIsImVuYWJsZURyb3AiLCJvbkN1c3RvbURyb3AiLCJvbkN1c3RvbURyYWdPdmVyIiwid2lsbFVubW91bnQiLCJkaXNhYmxlRHJvcCIsIm9mZkN1c3RvbURyb3AiLCJvZmZDdXN0b21EcmFnT3ZlciIsImFkZEZpbGVQYXRoIiwiZmlsZVBhdGgiLCJyZWFkT25seSIsInJlbW92ZUZpbGVQYXRoIiwicmVtb3ZlRW1wdHlQYXJlbnREaXJlY3RvcmllcyIsInJlbW92ZUFsbFBhdGhzIiwiYWRkRGlyZWN0b3J5UGF0aCIsImRpcmVjdG9yeVBhdGgiLCJjb2xsYXBzZWQiLCJyZW1vdmVEaXJlY3RvcnlQYXRoIiwiZ2V0TWFya2VyRW50cnlJdGVtUGF0aCIsImdldFN0YXRlIiwiZ2V0TWFya2VyRW50cnlJdGVtRXhwbG9yZXIiLCJzZXRNYXJrZXJFbnRyeUl0ZW1QYXRoIiwidXBkYXRlU3RhdGUiLCJzZXRNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciIsInNldEluaXRpYWxTdGF0ZSIsInNldFN0YXRlIiwiY2hpbGRFbGVtZW50cyIsImNvbnN0cnVjdG9yIiwiT3BlblJ1YmJpc2hCaW5TVkciLCJDbG9zZWRSdWJiaXNoQmluU1ZHIiwiaW5pdGlhbGlzZSIsImFzc2lnbkNvbnRleHQiLCJFbGVtZW50IiwidGFnTmFtZSIsImlnbm9yZWRQcm9wZXJ0aWVzIiwiZGVmYXVsdFByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJwcm90b3R5cGUiLCJkcm9wTWl4aW5zIiwicnViYmlzaEJpbk1peGlucyIsImRyYWdFbnRyeUl0ZW1NaXhpbnMiLCJ3aXRoU3R5bGUiXSwibWFwcGluZ3MiOiJBQUFBOzs7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
package/lib/span/name.js CHANGED
@@ -13,6 +13,7 @@ var _necessary = require("necessary");
13
13
  var _easy = require("easy");
14
14
  var _nameSpan = /*#__PURE__*/ _interop_require_default(require("../mixins/nameSpan"));
15
15
  var _constants = require("../constants");
16
+ var _customEventTypes = require("../customEventTypes");
16
17
  function _assert_this_initialized(self) {
17
18
  if (self === void 0) {
18
19
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -192,11 +193,13 @@ var NameSpan = /*#__PURE__*/ function(Element) {
192
193
  _define_property(_assert_this_initialized(_this), "keyDownHandler", function(event, element) {
193
194
  var keyCode = event.keyCode;
194
195
  if (keyCode === ENTER_KEY_CODE) {
195
- _this.callChangeHandlers();
196
+ var customEventType = _customEventTypes.CHANGE_CUSTOM_EVENT_TYPE;
197
+ _this.callCustomHandlers(customEventType);
196
198
  event.preventDefault();
197
199
  }
198
200
  if (keyCode === ESCAPE_KEY_CODE) {
199
- _this.callCancelHandlers();
201
+ var customEventType1 = _customEventTypes.CANCEL_CUSTOM_EVENT_TYPE;
202
+ _this.callCustomHandlers(customEventType1);
200
203
  event.preventDefault();
201
204
  }
202
205
  });
@@ -247,16 +250,16 @@ var NameSpan = /*#__PURE__*/ function(Element) {
247
250
  {
248
251
  key: "parentContext",
249
252
  value: function parentContext() {
250
- var editNameSpan = this.edit.bind(this), resetNameSpan = this.reset.bind(this), getNameSpanName = this.getName.bind(this), setNameSpanName = this.setName.bind(this), onNameSpanChange = this.onChange.bind(this), onNameSpanCancel = this.onCancel.bind(this), offNameSpanChange = this.offChange.bind(this), offNameSpanCancel = this.offCancel.bind(this); ///
253
+ var editNameSpan = this.edit.bind(this), resetNameSpan = this.reset.bind(this), getNameSpanName = this.getName.bind(this), setNameSpanName = this.setName.bind(this), onCustomNameSpanCancel = this.onCustomCancel.bind(this), offCustomNameSpanCancel = this.offCustomCancel.bind(this), onCustomNameSpanChange = this.onCustomChange.bind(this), offCustomNameSpanChange = this.offCustomChange.bind(this); ///
251
254
  return {
252
255
  editNameSpan: editNameSpan,
253
256
  resetNameSpan: resetNameSpan,
254
257
  getNameSpanName: getNameSpanName,
255
258
  setNameSpanName: setNameSpanName,
256
- onNameSpanChange: onNameSpanChange,
257
- onNameSpanCancel: onNameSpanCancel,
258
- offNameSpanChange: offNameSpanChange,
259
- offNameSpanCancel: offNameSpanCancel
259
+ onCustomNameSpanCancel: onCustomNameSpanCancel,
260
+ offCustomNameSpanCancel: offCustomNameSpanCancel,
261
+ onCustomNameSpanChange: onCustomNameSpanChange,
262
+ offCustomNameSpanChange: offCustomNameSpanChange
260
263
  };
261
264
  }
262
265
  }
@@ -271,4 +274,4 @@ _define_property(NameSpan, "defaultProperties", {
271
274
  Object.assign(NameSpan.prototype, _nameSpan.default);
272
275
  var _default = (0, _easywithstyle.default)(NameSpan)(_templateObject());
273
276
 
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcGFuL25hbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IGtleUNvZGVzLCBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcbmltcG9ydCB7IEVsZW1lbnQsIHdpbmRvdywgZG9jdW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuXG5pbXBvcnQgbmFtZVNwYW5NaXhpbnMgZnJvbSBcIi4uL21peGlucy9uYW1lU3BhblwiO1xuXG5pbXBvcnQgeyBUUlVFLCBDT05URU5UX0VESVRBQkxFIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuXG5jb25zdCB7IGZpcnN0IH0gPSBhcnJheVV0aWxpdGllcyxcbiAgICAgIHsgRU5URVJfS0VZX0NPREUsIEVTQ0FQRV9LRVlfQ09ERSB9ID0ga2V5Q29kZXM7XG5cbmNsYXNzIE5hbWVTcGFuIGV4dGVuZHMgRWxlbWVudCB7XG4gIGtleURvd25IYW5kbGVyID0gKGV2ZW50LCBlbGVtZW50KSA9PiB7XG4gICAgY29uc3QgeyBrZXlDb2RlIH0gPSBldmVudDtcblxuICAgIGlmIChrZXlDb2RlID09PSBFTlRFUl9LRVlfQ09ERSkge1xuICAgICAgdGhpcy5jYWxsQ2hhbmdlSGFuZGxlcnMoKTtcblxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBpZiAoa2V5Q29kZSA9PT0gRVNDQVBFX0tFWV9DT0RFKSB7XG4gICAgICB0aGlzLmNhbGxDYW5jZWxIYW5kbGVycygpO1xuXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIGdldE5hbWUoKSB7XG4gICAgY29uc3QgaHRtbCA9IHRoaXMuaHRtbCgpLFxuICAgICAgICAgIG5hbWUgPSBodG1sOyAgLy8vXG5cbiAgICByZXR1cm4gbmFtZTtcbiAgfVxuXG4gIHNldE5hbWUobmFtZSkge1xuICAgIGNvbnN0IGRvbUVsZW1lbnQgPSB0aGlzLmdldERPTUVsZW1lbnQoKSxcbiAgICAgICAgICB7IGZpcnN0Q2hpbGQgfSA9IGRvbUVsZW1lbnQ7XG5cbiAgICBsZXQgdGV4dE5vZGU7XG5cbiAgICBpZiAoZmlyc3RDaGlsZCAhPT0gbnVsbCkge1xuICAgICAgdGV4dE5vZGUgPSBmaXJzdENoaWxkOyAgLy8vXG4gICAgfSBlbHNlIHtcbiAgICAgIHRleHROb2RlID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoKTtcblxuICAgICAgZG9tRWxlbWVudC5hcHBlbmRDaGlsZCh0ZXh0Tm9kZSk7XG4gICAgfVxuXG4gICAgdGV4dE5vZGUubm9kZVZhbHVlID0gbmFtZTsgIC8vL1xuICB9XG5cbiAgZWRpdCgpIHtcbiAgICB0aGlzLmZvY3VzKCk7XG5cbiAgICB0aGlzLmFkZEF0dHJpYnV0ZShDT05URU5UX0VESVRBQkxFLCBUUlVFKTtcblxuICAgIGNvbnN0IGh0bWwgPSB0aGlzLmh0bWwoKSxcbiAgICAgICAgICByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCksXG4gICAgICAgICAgc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpLFxuICAgICAgICAgIGRvbUVsZW1lbnQgPSB0aGlzLmdldERPTUVsZW1lbnQoKSxcbiAgICAgICAgICBodG1sTGVuZ3RoID0gaHRtbC5sZW5ndGgsXG4gICAgICAgICAgeyBjaGlsZE5vZGVzIH0gPSBkb21FbGVtZW50LFxuICAgICAgICAgIGZpcnN0Q2hpbGROb2RlID0gZmlyc3QoY2hpbGROb2RlcyksXG4gICAgICAgICAgdGV4dE5vZGUgPSBmaXJzdENoaWxkTm9kZTsgIC8vL1xuXG4gICAgcmFuZ2Uuc2V0U3RhcnQodGV4dE5vZGUsIDApO1xuXG4gICAgcmFuZ2Uuc2V0RW5kKHRleHROb2RlLCBodG1sTGVuZ3RoKTtcblxuICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTtcblxuICAgIHNlbGVjdGlvbi5hZGRSYW5nZShyYW5nZSk7XG5cbiAgICB0aGlzLm9uS2V5RG93bih0aGlzLmtleURvd25IYW5kbGVyKTtcbiAgfVxuXG4gIHJlc2V0KCkge1xuICAgIHRoaXMub2ZmS2V5RG93bih0aGlzLmtleURvd25IYW5kbGVyKTtcblxuICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKENPTlRFTlRfRURJVEFCTEUsIFRSVUUpO1xuICB9XG5cbiAgcGFyZW50Q29udGV4dCgpIHtcbiAgICBjb25zdCBlZGl0TmFtZVNwYW4gPSB0aGlzLmVkaXQuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgcmVzZXROYW1lU3BhbiA9IHRoaXMucmVzZXQuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgZ2V0TmFtZVNwYW5OYW1lID0gdGhpcy5nZXROYW1lLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIHNldE5hbWVTcGFuTmFtZSA9IHRoaXMuc2V0TmFtZS5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICBvbk5hbWVTcGFuQ2hhbmdlID0gdGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICBvbk5hbWVTcGFuQ2FuY2VsID0gdGhpcy5vbkNhbmNlbC5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICBvZmZOYW1lU3BhbkNoYW5nZSA9IHRoaXMub2ZmQ2hhbmdlLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIG9mZk5hbWVTcGFuQ2FuY2VsID0gdGhpcy5vZmZDYW5jZWwuYmluZCh0aGlzKTsgLy8vXG5cbiAgICByZXR1cm4gKHtcbiAgICAgIGVkaXROYW1lU3BhbixcbiAgICAgIHJlc2V0TmFtZVNwYW4sXG4gICAgICBnZXROYW1lU3Bhbk5hbWUsXG4gICAgICBzZXROYW1lU3Bhbk5hbWUsXG4gICAgICBvbk5hbWVTcGFuQ2hhbmdlLFxuICAgICAgb25OYW1lU3BhbkNhbmNlbCxcbiAgICAgIG9mZk5hbWVTcGFuQ2hhbmdlLFxuICAgICAgb2ZmTmFtZVNwYW5DYW5jZWxcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJzcGFuXCI7ICAvLy9cblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcIm5hbWVcIlxuICB9O1xufVxuXG5PYmplY3QuYXNzaWduKE5hbWVTcGFuLnByb3RvdHlwZSwgbmFtZVNwYW5NaXhpbnMpO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoTmFtZVNwYW4pYFxuXG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG5cbiAgW2NvbnRlbnRFZGl0YWJsZV0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgfVxuICBcbmA7XG4iXSwibmFtZXMiOlsiZmlyc3QiLCJhcnJheVV0aWxpdGllcyIsIkVOVEVSX0tFWV9DT0RFIiwia2V5Q29kZXMiLCJFU0NBUEVfS0VZX0NPREUiLCJOYW1lU3BhbiIsImtleURvd25IYW5kbGVyIiwiZXZlbnQiLCJlbGVtZW50Iiwia2V5Q29kZSIsImNhbGxDaGFuZ2VIYW5kbGVycyIsInByZXZlbnREZWZhdWx0IiwiY2FsbENhbmNlbEhhbmRsZXJzIiwiZ2V0TmFtZSIsImh0bWwiLCJuYW1lIiwic2V0TmFtZSIsImRvbUVsZW1lbnQiLCJnZXRET01FbGVtZW50IiwiZmlyc3RDaGlsZCIsInRleHROb2RlIiwiZG9jdW1lbnQiLCJjcmVhdGVUZXh0Tm9kZSIsImFwcGVuZENoaWxkIiwibm9kZVZhbHVlIiwiZWRpdCIsImZvY3VzIiwiYWRkQXR0cmlidXRlIiwiQ09OVEVOVF9FRElUQUJMRSIsIlRSVUUiLCJyYW5nZSIsImNyZWF0ZVJhbmdlIiwic2VsZWN0aW9uIiwid2luZG93IiwiZ2V0U2VsZWN0aW9uIiwiaHRtbExlbmd0aCIsImxlbmd0aCIsImNoaWxkTm9kZXMiLCJmaXJzdENoaWxkTm9kZSIsInNldFN0YXJ0Iiwic2V0RW5kIiwicmVtb3ZlQWxsUmFuZ2VzIiwiYWRkUmFuZ2UiLCJvbktleURvd24iLCJyZXNldCIsIm9mZktleURvd24iLCJyZW1vdmVBdHRyaWJ1dGUiLCJwYXJlbnRDb250ZXh0IiwiZWRpdE5hbWVTcGFuIiwiYmluZCIsInJlc2V0TmFtZVNwYW4iLCJnZXROYW1lU3Bhbk5hbWUiLCJzZXROYW1lU3Bhbk5hbWUiLCJvbk5hbWVTcGFuQ2hhbmdlIiwib25DaGFuZ2UiLCJvbk5hbWVTcGFuQ2FuY2VsIiwib25DYW5jZWwiLCJvZmZOYW1lU3BhbkNoYW5nZSIsIm9mZkNoYW5nZSIsIm9mZk5hbWVTcGFuQ2FuY2VsIiwib2ZmQ2FuY2VsIiwiRWxlbWVudCIsInRhZ05hbWUiLCJkZWZhdWx0UHJvcGVydGllcyIsImNsYXNzTmFtZSIsIk9iamVjdCIsImFzc2lnbiIsInByb3RvdHlwZSIsIm5hbWVTcGFuTWl4aW5zIiwid2l0aFN0eWxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFxSEE7OztlQUFBOzs7b0VBbkhzQjt5QkFFbUI7b0JBQ0M7K0RBRWY7eUJBRVk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFdkMsSUFBTSxBQUFFQSxRQUFVQyx5QkFBYyxDQUF4QkQsT0FDQUUsaUJBQW9DQyxtQkFBUSxDQUE1Q0QsZ0JBQWdCRSxrQkFBb0JELG1CQUFRLENBQTVCQztBQUV4QixJQUFBLEFBQU1DLHlCQUFELEFBQUw7Y0FBTUE7K0JBQUFBO2FBQUFBO2dDQUFBQTs7O1FBQ0pDLGtEQUFBQSxrQkFBaUIsU0FBQ0MsT0FBT0M7WUFD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
277
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcGFuL25hbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IGtleUNvZGVzLCBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcbmltcG9ydCB7IEVsZW1lbnQsIHdpbmRvdywgZG9jdW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuXG5pbXBvcnQgbmFtZVNwYW5NaXhpbnMgZnJvbSBcIi4uL21peGlucy9uYW1lU3BhblwiO1xuXG5pbXBvcnQgeyBUUlVFLCBDT05URU5UX0VESVRBQkxFIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHtDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUsIENIQU5HRV9DVVNUT01fRVZFTlRfVFlQRX0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuY29uc3QgeyBmaXJzdCB9ID0gYXJyYXlVdGlsaXRpZXMsXG4gICAgICB7IEVOVEVSX0tFWV9DT0RFLCBFU0NBUEVfS0VZX0NPREUgfSA9IGtleUNvZGVzO1xuXG5jbGFzcyBOYW1lU3BhbiBleHRlbmRzIEVsZW1lbnQge1xuICBrZXlEb3duSGFuZGxlciA9IChldmVudCwgZWxlbWVudCkgPT4ge1xuICAgIGNvbnN0IHsga2V5Q29kZSB9ID0gZXZlbnQ7XG5cbiAgICBpZiAoa2V5Q29kZSA9PT0gRU5URVJfS0VZX0NPREUpIHtcbiAgICAgIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IENIQU5HRV9DVVNUT01fRVZFTlRfVFlQRTtcblxuICAgICAgdGhpcy5jYWxsQ3VzdG9tSGFuZGxlcnMoY3VzdG9tRXZlbnRUeXBlKTtcblxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICBpZiAoa2V5Q29kZSA9PT0gRVNDQVBFX0tFWV9DT0RFKSB7XG4gICAgICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEU7XG5cbiAgICAgIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzKGN1c3RvbUV2ZW50VHlwZSk7XG5cbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICBjb25zdCBodG1sID0gdGhpcy5odG1sKCksXG4gICAgICAgICAgbmFtZSA9IGh0bWw7ICAvLy9cblxuICAgIHJldHVybiBuYW1lO1xuICB9XG5cbiAgc2V0TmFtZShuYW1lKSB7XG4gICAgY29uc3QgZG9tRWxlbWVudCA9IHRoaXMuZ2V0RE9NRWxlbWVudCgpLFxuICAgICAgICAgIHsgZmlyc3RDaGlsZCB9ID0gZG9tRWxlbWVudDtcblxuICAgIGxldCB0ZXh0Tm9kZTtcblxuICAgIGlmIChmaXJzdENoaWxkICE9PSBudWxsKSB7XG4gICAgICB0ZXh0Tm9kZSA9IGZpcnN0Q2hpbGQ7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgpO1xuXG4gICAgICBkb21FbGVtZW50LmFwcGVuZENoaWxkKHRleHROb2RlKTtcbiAgICB9XG5cbiAgICB0ZXh0Tm9kZS5ub2RlVmFsdWUgPSBuYW1lOyAgLy8vXG4gIH1cblxuICBlZGl0KCkge1xuICAgIHRoaXMuZm9jdXMoKTtcblxuICAgIHRoaXMuYWRkQXR0cmlidXRlKENPTlRFTlRfRURJVEFCTEUsIFRSVUUpO1xuXG4gICAgY29uc3QgaHRtbCA9IHRoaXMuaHRtbCgpLFxuICAgICAgICAgIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKSxcbiAgICAgICAgICBzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCksXG4gICAgICAgICAgZG9tRWxlbWVudCA9IHRoaXMuZ2V0RE9NRWxlbWVudCgpLFxuICAgICAgICAgIGh0bWxMZW5ndGggPSBodG1sLmxlbmd0aCxcbiAgICAgICAgICB7IGNoaWxkTm9kZXMgfSA9IGRvbUVsZW1lbnQsXG4gICAgICAgICAgZmlyc3RDaGlsZE5vZGUgPSBmaXJzdChjaGlsZE5vZGVzKSxcbiAgICAgICAgICB0ZXh0Tm9kZSA9IGZpcnN0Q2hpbGROb2RlOyAgLy8vXG5cbiAgICByYW5nZS5zZXRTdGFydCh0ZXh0Tm9kZSwgMCk7XG5cbiAgICByYW5nZS5zZXRFbmQodGV4dE5vZGUsIGh0bWxMZW5ndGgpO1xuXG4gICAgc2VsZWN0aW9uLnJlbW92ZUFsbFJhbmdlcygpO1xuXG4gICAgc2VsZWN0aW9uLmFkZFJhbmdlKHJhbmdlKTtcblxuICAgIHRoaXMub25LZXlEb3duKHRoaXMua2V5RG93bkhhbmRsZXIpO1xuICB9XG5cbiAgcmVzZXQoKSB7XG4gICAgdGhpcy5vZmZLZXlEb3duKHRoaXMua2V5RG93bkhhbmRsZXIpO1xuXG4gICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoQ09OVEVOVF9FRElUQUJMRSwgVFJVRSk7XG4gIH1cblxuICBwYXJlbnRDb250ZXh0KCkge1xuICAgIGNvbnN0IGVkaXROYW1lU3BhbiA9IHRoaXMuZWRpdC5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICByZXNldE5hbWVTcGFuID0gdGhpcy5yZXNldC5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICBnZXROYW1lU3Bhbk5hbWUgPSB0aGlzLmdldE5hbWUuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgc2V0TmFtZVNwYW5OYW1lID0gdGhpcy5zZXROYW1lLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIG9uQ3VzdG9tTmFtZVNwYW5DYW5jZWwgPSB0aGlzLm9uQ3VzdG9tQ2FuY2VsLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIG9mZkN1c3RvbU5hbWVTcGFuQ2FuY2VsID0gdGhpcy5vZmZDdXN0b21DYW5jZWwuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgb25DdXN0b21OYW1lU3BhbkNoYW5nZSA9IHRoaXMub25DdXN0b21DaGFuZ2UuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgb2ZmQ3VzdG9tTmFtZVNwYW5DaGFuZ2UgPSB0aGlzLm9mZkN1c3RvbUNoYW5nZS5iaW5kKHRoaXMpOyAvLy9cblxuICAgIHJldHVybiAoe1xuICAgICAgZWRpdE5hbWVTcGFuLFxuICAgICAgcmVzZXROYW1lU3BhbixcbiAgICAgIGdldE5hbWVTcGFuTmFtZSxcbiAgICAgIHNldE5hbWVTcGFuTmFtZSxcbiAgICAgIG9uQ3VzdG9tTmFtZVNwYW5DYW5jZWwsXG4gICAgICBvZmZDdXN0b21OYW1lU3BhbkNhbmNlbCxcbiAgICAgIG9uQ3VzdG9tTmFtZVNwYW5DaGFuZ2UsXG4gICAgICBvZmZDdXN0b21OYW1lU3BhbkNoYW5nZVxuICAgIH0pO1xuICB9XG5cbiAgc3RhdGljIHRhZ05hbWUgPSBcInNwYW5cIjsgIC8vL1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcGVydGllcyA9IHtcbiAgICBjbGFzc05hbWU6IFwibmFtZVwiXG4gIH07XG59XG5cbk9iamVjdC5hc3NpZ24oTmFtZVNwYW4ucHJvdG90eXBlLCBuYW1lU3Bhbk1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZShOYW1lU3BhbilgXG5cbiAgYm9yZGVyOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcblxuICBbY29udGVudEVkaXRhYmxlXSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gICAgcGFkZGluZzogNHB4O1xuICB9XG4gIFxuYDtcbiJdLCJuYW1lcyI6WyJmaXJzdCIsImFycmF5VXRpbGl0aWVzIiwiRU5URVJfS0VZX0NPREUiLCJrZXlDb2RlcyIsIkVTQ0FQRV9LRVlfQ09ERSIsIk5hbWVTcGFuIiwia2V5RG93bkhhbmRsZXIiLCJldmVudCIsImVsZW1lbnQiLCJrZXlDb2RlIiwiY3VzdG9tRXZlbnRUeXBlIiwiQ0hBTkdFX0NVU1RPTV9FVkVOVF9UWVBFIiwiY2FsbEN1c3RvbUhhbmRsZXJzIiwicHJldmVudERlZmF1bHQiLCJDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUiLCJnZXROYW1lIiwiaHRtbCIsIm5hbWUiLCJzZXROYW1lIiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJmaXJzdENoaWxkIiwidGV4dE5vZGUiLCJkb2N1bWVudCIsImNyZWF0ZVRleHROb2RlIiwiYXBwZW5kQ2hpbGQiLCJub2RlVmFsdWUiLCJlZGl0IiwiZm9jdXMiLCJhZGRBdHRyaWJ1dGUiLCJDT05URU5UX0VESVRBQkxFIiwiVFJVRSIsInJhbmdlIiwiY3JlYXRlUmFuZ2UiLCJzZWxlY3Rpb24iLCJ3aW5kb3ciLCJnZXRTZWxlY3Rpb24iLCJodG1sTGVuZ3RoIiwibGVuZ3RoIiwiY2hpbGROb2RlcyIsImZpcnN0Q2hpbGROb2RlIiwic2V0U3RhcnQiLCJzZXRFbmQiLCJyZW1vdmVBbGxSYW5nZXMiLCJhZGRSYW5nZSIsIm9uS2V5RG93biIsInJlc2V0Iiwib2ZmS2V5RG93biIsInJlbW92ZUF0dHJpYnV0ZSIsInBhcmVudENvbnRleHQiLCJlZGl0TmFtZVNwYW4iLCJiaW5kIiwicmVzZXROYW1lU3BhbiIsImdldE5hbWVTcGFuTmFtZSIsInNldE5hbWVTcGFuTmFtZSIsIm9uQ3VzdG9tTmFtZVNwYW5DYW5jZWwiLCJvbkN1c3RvbUNhbmNlbCIsIm9mZkN1c3RvbU5hbWVTcGFuQ2FuY2VsIiwib2ZmQ3VzdG9tQ2FuY2VsIiwib25DdXN0b21OYW1lU3BhbkNoYW5nZSIsIm9uQ3VzdG9tQ2hhbmdlIiwib2ZmQ3VzdG9tTmFtZVNwYW5DaGFuZ2UiLCJvZmZDdXN0b21DaGFuZ2UiLCJFbGVtZW50IiwidGFnTmFtZSIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwibmFtZVNwYW5NaXhpbnMiLCJ3aXRoU3R5bGUiXSwibWFwcGluZ3Mi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