easy-file-system 5.0.73 → 5.0.74

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.
Files changed (45) hide show
  1. package/lib/button/toggle.js +60 -0
  2. package/lib/constants.js +34 -0
  3. package/lib/customEventTypes.js +46 -0
  4. package/lib/div/item/entry/drag/directoryName.js +42 -0
  5. package/lib/div/item/entry/drag/fileName.js +33 -0
  6. package/lib/div/item/entry/drag.js +37 -0
  7. package/lib/div/item/entry/marker.js +29 -0
  8. package/lib/div/item/entry.js +43 -0
  9. package/lib/entryTypes.js +30 -0
  10. package/lib/example/preamble.js +10 -0
  11. package/lib/example/view/button.js +28 -0
  12. package/lib/example/view/explorer/first.js +33 -0
  13. package/lib/example/view/explorer/second.js +30 -0
  14. package/lib/example/view/rubbishBin.js +22 -0
  15. package/lib/example/view.js +111 -0
  16. package/lib/example.js +19 -0
  17. package/lib/explorer.js +427 -0
  18. package/lib/index.js +83 -0
  19. package/lib/item/entry/drag/directoryName.js +152 -0
  20. package/lib/item/entry/drag/fileName.js +80 -0
  21. package/lib/item/entry/drag.js +207 -0
  22. package/lib/item/entry/marker/directoryName.js +39 -0
  23. package/lib/item/entry/marker/fileName.js +40 -0
  24. package/lib/item/entry/marker.js +32 -0
  25. package/lib/item/entry.js +76 -0
  26. package/lib/list/entries.js +510 -0
  27. package/lib/mixins/dragEntryItem.js +63 -0
  28. package/lib/mixins/explorer.js +76 -0
  29. package/lib/mixins/nameSpan.js +36 -0
  30. package/lib/mixins/rubbishBin.js +26 -0
  31. package/lib/rubbishBin.js +206 -0
  32. package/lib/span/name.js +117 -0
  33. package/lib/styles.js +66 -0
  34. package/lib/svg/directoryName.js +49 -0
  35. package/lib/svg/fileName.js +50 -0
  36. package/lib/svg/marker.js +43 -0
  37. package/lib/svg/rubbishBin/closed.js +68 -0
  38. package/lib/svg/rubbishBin/open.js +72 -0
  39. package/lib/svg/toggle/down.js +47 -0
  40. package/lib/svg/toggle/up.js +48 -0
  41. package/lib/svg.js +29 -0
  42. package/lib/utilities/name.js +66 -0
  43. package/lib/utilities/path.js +19 -0
  44. package/lib/utilities/pathMap.js +62 -0
  45. package/package.json +2 -2
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ function addDragEntryItem(pathMap, explorer) {
12
+ const { entryDirectory } = pathMap;
13
+ entryDirectory ? this.addDirectoryNameDragEntryItem(pathMap, explorer) : this.addFileNameDragEntryItem(pathMap, explorer);
14
+ }
15
+ function removeDragEntryItem(pathMap, explorer) {
16
+ const { entryDirectory } = pathMap;
17
+ entryDirectory ? this.removeDirectoryNameDragEntryItem(pathMap, explorer) : this.removeFileNameDragEntryItem(pathMap, explorer);
18
+ }
19
+ function addFileNameDragEntryItem(pathMap, explorer) {
20
+ explorer = this; ///
21
+ const { targetEntryPath } = pathMap;
22
+ if (targetEntryPath === null) {
23
+ return;
24
+ }
25
+ const filePath = targetEntryPath; ///
26
+ explorer.addFilePath(filePath);
27
+ }
28
+ function removeFileNameDragEntryItem(pathMap, explorer) {
29
+ const { sourceEntryPath } = pathMap;
30
+ if (sourceEntryPath === null) {
31
+ return;
32
+ }
33
+ const filePath = sourceEntryPath; ///
34
+ explorer.removeFilePath(filePath);
35
+ }
36
+ function addDirectoryNameDragEntryItem(pathMap, explorer) {
37
+ explorer = this; ///
38
+ const { targetEntryPath } = pathMap;
39
+ if (targetEntryPath === null) {
40
+ return;
41
+ }
42
+ const { readOnly, collapsed } = pathMap, directoryPath = targetEntryPath; ///
43
+ explorer.addDirectoryPath(directoryPath, readOnly, collapsed);
44
+ }
45
+ function removeDirectoryNameDragEntryItem(pathMap, explorer) {
46
+ const { sourceEntryPath } = pathMap;
47
+ if (sourceEntryPath === null) {
48
+ return;
49
+ }
50
+ const directoryPath = sourceEntryPath; ///
51
+ explorer.removeDirectoryPath(directoryPath);
52
+ }
53
+ const dragEntryItemMixins = {
54
+ addDragEntryItem,
55
+ removeDragEntryItem,
56
+ addFileNameDragEntryItem,
57
+ removeFileNameDragEntryItem,
58
+ addDirectoryNameDragEntryItem,
59
+ removeDirectoryNameDragEntryItem
60
+ };
61
+ const _default = dragEntryItemMixins;
62
+
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZ0VudHJ5SXRlbS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuZnVuY3Rpb24gYWRkRHJhZ0VudHJ5SXRlbShwYXRoTWFwLCBleHBsb3Jlcikge1xuICBjb25zdCB7IGVudHJ5RGlyZWN0b3J5IH0gPSBwYXRoTWFwO1xuXG4gIGVudHJ5RGlyZWN0b3J5ID9cbiAgICB0aGlzLmFkZERpcmVjdG9yeU5hbWVEcmFnRW50cnlJdGVtKHBhdGhNYXAsIGV4cGxvcmVyKSA6XG4gICAgICB0aGlzLmFkZEZpbGVOYW1lRHJhZ0VudHJ5SXRlbShwYXRoTWFwLCBleHBsb3Jlcik7XG59XG5cbmZ1bmN0aW9uIHJlbW92ZURyYWdFbnRyeUl0ZW0ocGF0aE1hcCwgZXhwbG9yZXIpIHtcbiAgY29uc3QgeyBlbnRyeURpcmVjdG9yeSB9ID0gcGF0aE1hcDtcblxuICBlbnRyeURpcmVjdG9yeSA/XG4gICAgdGhpcy5yZW1vdmVEaXJlY3RvcnlOYW1lRHJhZ0VudHJ5SXRlbShwYXRoTWFwLCBleHBsb3JlcikgOlxuICAgICAgdGhpcy5yZW1vdmVGaWxlTmFtZURyYWdFbnRyeUl0ZW0ocGF0aE1hcCwgZXhwbG9yZXIpO1xufVxuXG5mdW5jdGlvbiBhZGRGaWxlTmFtZURyYWdFbnRyeUl0ZW0ocGF0aE1hcCwgZXhwbG9yZXIpIHtcbiAgZXhwbG9yZXIgPSB0aGlzOyAgLy8vXG5cbiAgY29uc3QgeyB0YXJnZXRFbnRyeVBhdGggfSA9IHBhdGhNYXA7XG5cbiAgaWYgKHRhcmdldEVudHJ5UGF0aCA9PT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IGZpbGVQYXRoID0gdGFyZ2V0RW50cnlQYXRoOyAvLy9cblxuICBleHBsb3Jlci5hZGRGaWxlUGF0aChmaWxlUGF0aCk7XG59XG5cbmZ1bmN0aW9uIHJlbW92ZUZpbGVOYW1lRHJhZ0VudHJ5SXRlbShwYXRoTWFwLCBleHBsb3Jlcikge1xuICBjb25zdCB7IHNvdXJjZUVudHJ5UGF0aCB9ID0gcGF0aE1hcDtcblxuICBpZiAoc291cmNlRW50cnlQYXRoID09PSBudWxsKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgZmlsZVBhdGggPSBzb3VyY2VFbnRyeVBhdGg7IC8vL1xuXG4gIGV4cGxvcmVyLnJlbW92ZUZpbGVQYXRoKGZpbGVQYXRoKTtcbn1cblxuZnVuY3Rpb24gYWRkRGlyZWN0b3J5TmFtZURyYWdFbnRyeUl0ZW0ocGF0aE1hcCwgZXhwbG9yZXIpIHtcbiAgZXhwbG9yZXIgPSB0aGlzOyAgLy8vXG5cbiAgY29uc3QgeyB0YXJnZXRFbnRyeVBhdGggfSA9IHBhdGhNYXA7XG5cbiAgaWYgKHRhcmdldEVudHJ5UGF0aCA9PT0gbnVsbCkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHsgcmVhZE9ubHksIGNvbGxhcHNlZCB9ID0gcGF0aE1hcCxcbiAgICAgICAgZGlyZWN0b3J5UGF0aCA9IHRhcmdldEVudHJ5UGF0aDsgIC8vL1xuXG4gIGV4cGxvcmVyLmFkZERpcmVjdG9yeVBhdGgoZGlyZWN0b3J5UGF0aCwgcmVhZE9ubHksIGNvbGxhcHNlZCk7XG59XG5cbmZ1bmN0aW9uIHJlbW92ZURpcmVjdG9yeU5hbWVEcmFnRW50cnlJdGVtKHBhdGhNYXAsIGV4cGxvcmVyKSB7XG4gIGNvbnN0IHsgc291cmNlRW50cnlQYXRoIH0gPSBwYXRoTWFwO1xuXG4gIGlmIChzb3VyY2VFbnRyeVBhdGggPT09IG51bGwpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBkaXJlY3RvcnlQYXRoID0gc291cmNlRW50cnlQYXRoOyAgLy8vXG5cbiAgZXhwbG9yZXIucmVtb3ZlRGlyZWN0b3J5UGF0aChkaXJlY3RvcnlQYXRoKTtcbn1cblxuY29uc3QgZHJhZ0VudHJ5SXRlbU1peGlucyA9IHtcbiAgYWRkRHJhZ0VudHJ5SXRlbSxcbiAgcmVtb3ZlRHJhZ0VudHJ5SXRlbSxcbiAgYWRkRmlsZU5hbWVEcmFnRW50cnlJdGVtLFxuICByZW1vdmVGaWxlTmFtZURyYWdFbnRyeUl0ZW0sXG4gIGFkZERpcmVjdG9yeU5hbWVEcmFnRW50cnlJdGVtLFxuICByZW1vdmVEaXJlY3RvcnlOYW1lRHJhZ0VudHJ5SXRlbVxufTtcblxuZXhwb3J0IGRlZmF1bHQgZHJhZ0VudHJ5SXRlbU1peGlucztcbiJdLCJuYW1lcyI6WyJhZGREcmFnRW50cnlJdGVtIiwicGF0aE1hcCIsImV4cGxvcmVyIiwiZW50cnlEaXJlY3RvcnkiLCJhZGREaXJlY3RvcnlOYW1lRHJhZ0VudHJ5SXRlbSIsImFkZEZpbGVOYW1lRHJhZ0VudHJ5SXRlbSIsInJlbW92ZURyYWdFbnRyeUl0ZW0iLCJyZW1vdmVEaXJlY3RvcnlOYW1lRHJhZ0VudHJ5SXRlbSIsInJlbW92ZUZpbGVOYW1lRHJhZ0VudHJ5SXRlbSIsInRhcmdldEVudHJ5UGF0aCIsImZpbGVQYXRoIiwiYWRkRmlsZVBhdGgiLCJzb3VyY2VFbnRyeVBhdGgiLCJyZW1vdmVGaWxlUGF0aCIsInJlYWRPbmx5IiwiY29sbGFwc2VkIiwiZGlyZWN0b3J5UGF0aCIsImFkZERpcmVjdG9yeVBhdGgiLCJyZW1vdmVEaXJlY3RvcnlQYXRoIiwiZHJhZ0VudHJ5SXRlbU1peGlucyJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZ0ZBOzs7ZUFBQTs7O0FBOUVBLFNBQVNBLGlCQUFpQkMsT0FBTyxFQUFFQyxRQUFRO0lBQ3pDLE1BQU0sRUFBRUMsY0FBYyxFQUFFLEdBQUdGO0lBRTNCRSxpQkFDRSxJQUFJLENBQUNDLDZCQUE2QixDQUFDSCxTQUFTQyxZQUMxQyxJQUFJLENBQUNHLHdCQUF3QixDQUFDSixTQUFTQztBQUM3QztBQUVBLFNBQVNJLG9CQUFvQkwsT0FBTyxFQUFFQyxRQUFRO0lBQzVDLE1BQU0sRUFBRUMsY0FBYyxFQUFFLEdBQUdGO0lBRTNCRSxpQkFDRSxJQUFJLENBQUNJLGdDQUFnQyxDQUFDTixTQUFTQyxZQUM3QyxJQUFJLENBQUNNLDJCQUEyQixDQUFDUCxTQUFTQztBQUNoRDtBQUVBLFNBQVNHLHlCQUF5QkosT0FBTyxFQUFFQyxRQUFRO0lBQ2pEQSxXQUFXLElBQUksRUFBRyxHQUFHO0lBRXJCLE1BQU0sRUFBRU8sZUFBZSxFQUFFLEdBQUdSO0lBRTVCLElBQUlRLG9CQUFvQixNQUFNO1FBQzVCO0lBQ0Y7SUFFQSxNQUFNQyxXQUFXRCxpQkFBaUIsR0FBRztJQUVyQ1AsU0FBU1MsV0FBVyxDQUFDRDtBQUN2QjtBQUVBLFNBQVNGLDRCQUE0QlAsT0FBTyxFQUFFQyxRQUFRO0lBQ3BELE1BQU0sRUFBRVUsZUFBZSxFQUFFLEdBQUdYO0lBRTVCLElBQUlXLG9CQUFvQixNQUFNO1FBQzVCO0lBQ0Y7SUFFQSxNQUFNRixXQUFXRSxpQkFBaUIsR0FBRztJQUVyQ1YsU0FBU1csY0FBYyxDQUFDSDtBQUMxQjtBQUVBLFNBQVNOLDhCQUE4QkgsT0FBTyxFQUFFQyxRQUFRO0lBQ3REQSxXQUFXLElBQUksRUFBRyxHQUFHO0lBRXJCLE1BQU0sRUFBRU8sZUFBZSxFQUFFLEdBQUdSO0lBRTVCLElBQUlRLG9CQUFvQixNQUFNO1FBQzVCO0lBQ0Y7SUFFQSxNQUFNLEVBQUVLLFFBQVEsRUFBRUMsU0FBUyxFQUFFLEdBQUdkLFNBQzFCZSxnQkFBZ0JQLGlCQUFrQixHQUFHO0lBRTNDUCxTQUFTZSxnQkFBZ0IsQ0FBQ0QsZUFBZUYsVUFBVUM7QUFDckQ7QUFFQSxTQUFTUixpQ0FBaUNOLE9BQU8sRUFBRUMsUUFBUTtJQUN6RCxNQUFNLEVBQUVVLGVBQWUsRUFBRSxHQUFHWDtJQUU1QixJQUFJVyxvQkFBb0IsTUFBTTtRQUM1QjtJQUNGO0lBRUEsTUFBTUksZ0JBQWdCSixpQkFBa0IsR0FBRztJQUUzQ1YsU0FBU2dCLG1CQUFtQixDQUFDRjtBQUMvQjtBQUVBLE1BQU1HLHNCQUFzQjtJQUMxQm5CO0lBQ0FNO0lBQ0FEO0lBQ0FHO0lBQ0FKO0lBQ0FHO0FBQ0Y7TUFFQSxXQUFlWSJ9
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _customEventTypes = require("../customEventTypes");
12
+ function onCustomOpen(openCustomHandler, element) {
13
+ const customEventType = _customEventTypes.OPEN_CUSTOM_EVENT_TYPE, customHandler = openCustomHandler; ///
14
+ this.onCustomEvent(customEventType, customHandler, element);
15
+ }
16
+ function offCustomOpen(openCustomHandler, element) {
17
+ const customEventType = _customEventTypes.OPEN_CUSTOM_EVENT_TYPE, customHandler = openCustomHandler; ///
18
+ this.offCustomEvent(customEventType, customHandler, element);
19
+ }
20
+ function onCustomMove(moveCustomHandler, element) {
21
+ const customEventType = _customEventTypes.MOVE_CUSTOM_EVENT_TYPE, customHandler = moveCustomHandler; ///
22
+ this.onCustomEvent(customEventType, customHandler, element);
23
+ }
24
+ function offCustomMove(moveCustomHandler, element) {
25
+ const customEventType = _customEventTypes.MOVE_CUSTOM_EVENT_TYPE, customHandler = moveCustomHandler; ///
26
+ this.offCustomEvent(customEventType, customHandler, element);
27
+ }
28
+ function onCustomRemove(removeCustomHandler, element) {
29
+ const customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
30
+ this.onCustomEvent(customEventType, customHandler, element);
31
+ }
32
+ function offCustomRemove(removeCustomHandler, element) {
33
+ const customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
34
+ this.offCustomEvent(customEventType, customHandler, element);
35
+ }
36
+ function onCustomRename(renameCustomHandler, element) {
37
+ const customEventType = _customEventTypes.RENAME_CUSTOM_EVENT_TYPE, customHandler = renameCustomHandler; ///
38
+ this.onCustomEvent(customEventType, customHandler, element);
39
+ }
40
+ function offCustomRename(renameCustomHandler, element) {
41
+ const customEventType = _customEventTypes.RENAME_CUSTOM_EVENT_TYPE, customHandler = renameCustomHandler; ///
42
+ this.offCustomEvent(customEventType, customHandler, element);
43
+ }
44
+ function onCustomCreate(createCustomHandler, element) {
45
+ const customEventType = _customEventTypes.CREATE_CUSTOM_EVENT_TYPE, customHandler = createCustomHandler; ///
46
+ this.onCustomEvent(customEventType, customHandler, element);
47
+ }
48
+ function offCustomCreate(createCustomHandler, element) {
49
+ const customEventType = _customEventTypes.CREATE_CUSTOM_EVENT_TYPE, customHandler = createCustomHandler; ///
50
+ this.offCustomEvent(customEventType, customHandler, element);
51
+ }
52
+ function onCustomSelect(selectCustomHandler, element) {
53
+ const customEventType = _customEventTypes.SELECT_CUSTOM_EVENT_TYPE, customHandler = selectCustomHandler; ///
54
+ this.onCustomEvent(customEventType, customHandler, element);
55
+ }
56
+ function offCustomSelect(selectCustomHandler, element) {
57
+ const customEventType = _customEventTypes.SELECT_CUSTOM_EVENT_TYPE, customHandler = selectCustomHandler; ///
58
+ this.offCustomEvent(customEventType, customHandler, element);
59
+ }
60
+ const explorerMixins = {
61
+ onCustomOpen,
62
+ offCustomOpen,
63
+ onCustomMove,
64
+ offCustomMove,
65
+ onCustomRemove,
66
+ offCustomRemove,
67
+ onCustomRename,
68
+ offCustomRename,
69
+ onCustomCreate,
70
+ offCustomCreate,
71
+ onCustomSelect,
72
+ offCustomSelect
73
+ };
74
+ const _default = explorerMixins;
75
+
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZXhwbG9yZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IE9QRU5fQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgICBNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgU0VMRUNUX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgUkVOQU1FX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgUkVNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICAgQ1JFQVRFX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gb25DdXN0b21PcGVuKG9wZW5DdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE9QRU5fQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBvcGVuQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21PcGVuKG9wZW5DdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE9QRU5fQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBvcGVuQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21Nb3ZlKG1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBtb3ZlQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21Nb3ZlKG1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IE1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBtb3ZlQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21SZW1vdmUocmVtb3ZlQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBSRU1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSByZW1vdmVDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVJlbW92ZShyZW1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHJlbW92ZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tUmVuYW1lKHJlbmFtZUN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gUkVOQU1FX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gcmVuYW1lQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21SZW5hbWUocmVuYW1lQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBSRU5BTUVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSByZW5hbWVDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbUNyZWF0ZShjcmVhdGVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IENSRUFURV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNyZWF0ZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tQ3JlYXRlKGNyZWF0ZUN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gQ1JFQVRFX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gY3JlYXRlQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21TZWxlY3Qoc2VsZWN0Q3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBTRUxFQ1RfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBzZWxlY3RDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVNlbGVjdChzZWxlY3RDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFNFTEVDVF9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHNlbGVjdEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmNvbnN0IGV4cGxvcmVyTWl4aW5zID0ge1xuICBvbkN1c3RvbU9wZW4sXG4gIG9mZkN1c3RvbU9wZW4sXG4gIG9uQ3VzdG9tTW92ZSxcbiAgb2ZmQ3VzdG9tTW92ZSxcbiAgb25DdXN0b21SZW1vdmUsXG4gIG9mZkN1c3RvbVJlbW92ZSxcbiAgb25DdXN0b21SZW5hbWUsXG4gIG9mZkN1c3RvbVJlbmFtZSxcbiAgb25DdXN0b21DcmVhdGUsXG4gIG9mZkN1c3RvbUNyZWF0ZSxcbiAgb25DdXN0b21TZWxlY3QsXG4gIG9mZkN1c3RvbVNlbGVjdFxufTtcblxuZXhwb3J0IGRlZmF1bHQgZXhwbG9yZXJNaXhpbnM7XG4iXSwibmFtZXMiOlsib25DdXN0b21PcGVuIiwib3BlbkN1c3RvbUhhbmRsZXIiLCJlbGVtZW50IiwiY3VzdG9tRXZlbnRUeXBlIiwiT1BFTl9DVVNUT01fRVZFTlRfVFlQRSIsImN1c3RvbUhhbmRsZXIiLCJvbkN1c3RvbUV2ZW50Iiwib2ZmQ3VzdG9tT3BlbiIsIm9mZkN1c3RvbUV2ZW50Iiwib25DdXN0b21Nb3ZlIiwibW92ZUN1c3RvbUhhbmRsZXIiLCJNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFIiwib2ZmQ3VzdG9tTW92ZSIsIm9uQ3VzdG9tUmVtb3ZlIiwicmVtb3ZlQ3VzdG9tSGFuZGxlciIsIlJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbVJlbW92ZSIsIm9uQ3VzdG9tUmVuYW1lIiwicmVuYW1lQ3VzdG9tSGFuZGxlciIsIlJFTkFNRV9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbVJlbmFtZSIsIm9uQ3VzdG9tQ3JlYXRlIiwiY3JlYXRlQ3VzdG9tSGFuZGxlciIsIkNSRUFURV9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbUNyZWF0ZSIsIm9uQ3VzdG9tU2VsZWN0Iiwic2VsZWN0Q3VzdG9tSGFuZGxlciIsIlNFTEVDVF9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbVNlbGVjdCIsImV4cGxvcmVyTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkE0R0E7OztlQUFBOzs7a0NBckd5QztBQUV6QyxTQUFTQSxhQUFhQyxpQkFBaUIsRUFBRUMsT0FBTztJQUM5QyxNQUFNQyxrQkFBa0JDLHdDQUFzQixFQUN4Q0MsZ0JBQWdCSixtQkFBb0IsR0FBRztJQUU3QyxJQUFJLENBQUNLLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNLLGNBQWNOLGlCQUFpQixFQUFFQyxPQUFPO0lBQy9DLE1BQU1DLGtCQUFrQkMsd0NBQXNCLEVBQ3hDQyxnQkFBZ0JKLG1CQUFvQixHQUFHO0lBRTdDLElBQUksQ0FBQ08sY0FBYyxDQUFDTCxpQkFBaUJFLGVBQWVIO0FBQ3REO0FBRUEsU0FBU08sYUFBYUMsaUJBQWlCLEVBQUVSLE9BQU87SUFDOUMsTUFBTUMsa0JBQWtCUSx3Q0FBc0IsRUFDeENOLGdCQUFnQkssbUJBQW9CLEdBQUc7SUFFN0MsSUFBSSxDQUFDSixhQUFhLENBQUNILGlCQUFpQkUsZUFBZUg7QUFDckQ7QUFFQSxTQUFTVSxjQUFjRixpQkFBaUIsRUFBRVIsT0FBTztJQUMvQyxNQUFNQyxrQkFBa0JRLHdDQUFzQixFQUN4Q04sZ0JBQWdCSyxtQkFBb0IsR0FBRztJQUU3QyxJQUFJLENBQUNGLGNBQWMsQ0FBQ0wsaUJBQWlCRSxlQUFlSDtBQUN0RDtBQUVBLFNBQVNXLGVBQWVDLG1CQUFtQixFQUFFWixPQUFPO0lBQ2xELE1BQU1DLGtCQUFrQlksMENBQXdCLEVBQzFDVixnQkFBZ0JTLHFCQUFzQixHQUFHO0lBRS9DLElBQUksQ0FBQ1IsYUFBYSxDQUFDSCxpQkFBaUJFLGVBQWVIO0FBQ3JEO0FBRUEsU0FBU2MsZ0JBQWdCRixtQkFBbUIsRUFBRVosT0FBTztJQUNuRCxNQUFNQyxrQkFBa0JZLDBDQUF3QixFQUMxQ1YsZ0JBQWdCUyxxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNOLGNBQWMsQ0FBQ0wsaUJBQWlCRSxlQUFlSDtBQUN0RDtBQUVBLFNBQVNlLGVBQWVDLG1CQUFtQixFQUFFaEIsT0FBTztJQUNsRCxNQUFNQyxrQkFBa0JnQiwwQ0FBd0IsRUFDMUNkLGdCQUFnQmEscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDWixhQUFhLENBQUNILGlCQUFpQkUsZUFBZUg7QUFDckQ7QUFFQSxTQUFTa0IsZ0JBQWdCRixtQkFBbUIsRUFBRWhCLE9BQU87SUFDbkQsTUFBTUMsa0JBQWtCZ0IsMENBQXdCLEVBQzFDZCxnQkFBZ0JhLHFCQUFzQixHQUFHO0lBRS9DLElBQUksQ0FBQ1YsY0FBYyxDQUFDTCxpQkFBaUJFLGVBQWVIO0FBQ3REO0FBRUEsU0FBU21CLGVBQWVDLG1CQUFtQixFQUFFcEIsT0FBTztJQUNsRCxNQUFNQyxrQkFBa0JvQiwwQ0FBd0IsRUFDMUNsQixnQkFBZ0JpQixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNoQixhQUFhLENBQUNILGlCQUFpQkUsZUFBZUg7QUFDckQ7QUFFQSxTQUFTc0IsZ0JBQWdCRixtQkFBbUIsRUFBRXBCLE9BQU87SUFDbkQsTUFBTUMsa0JBQWtCb0IsMENBQXdCLEVBQzFDbEIsZ0JBQWdCaUIscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDZCxjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxTQUFTdUIsZUFBZUMsbUJBQW1CLEVBQUV4QixPQUFPO0lBQ2xELE1BQU1DLGtCQUFrQndCLDBDQUF3QixFQUMxQ3RCLGdCQUFnQnFCLHFCQUFzQixHQUFHO0lBRS9DLElBQUksQ0FBQ3BCLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVMwQixnQkFBZ0JGLG1CQUFtQixFQUFFeEIsT0FBTztJQUNuRCxNQUFNQyxrQkFBa0J3QiwwQ0FBd0IsRUFDMUN0QixnQkFBZ0JxQixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNsQixjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxNQUFNMkIsaUJBQWlCO0lBQ3JCN0I7SUFDQU87SUFDQUU7SUFDQUc7SUFDQUM7SUFDQUc7SUFDQUM7SUFDQUc7SUFDQUM7SUFDQUc7SUFDQUM7SUFDQUc7QUFDRjtNQUVBLFdBQWVDIn0=
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _customEventTypes = require("../customEventTypes");
12
+ function onCustomChange(changeCustomHandler, element) {
13
+ const customEventType = _customEventTypes.CHANGE_CUSTOM_EVENT_TYPE, customHandler = changeCustomHandler; ///
14
+ this.onCustomEvent(customEventType, customHandler, element);
15
+ }
16
+ function offCustomChange(changeCustomHandler, element) {
17
+ const customEventType = _customEventTypes.CHANGE_CUSTOM_EVENT_TYPE, customHandler = changeCustomHandler; ///
18
+ this.offCustomEvent(customEventType, customHandler, element);
19
+ }
20
+ function onCustomCancel(cancelCustomHandler, element) {
21
+ const customEventType = _customEventTypes.CANCEL_CUSTOM_EVENT_TYPE, customHandler = cancelCustomHandler; ///
22
+ this.onCustomEvent(customEventType, customHandler, element);
23
+ }
24
+ function offCustomCancel(cancelCustomHandler, element) {
25
+ const customEventType = _customEventTypes.CANCEL_CUSTOM_EVENT_TYPE, customHandler = cancelCustomHandler; ///
26
+ this.offCustomEvent(customEventType, customHandler, element);
27
+ }
28
+ const nameSpanMixins = {
29
+ onCustomChange,
30
+ offCustomChange,
31
+ onCustomCancel,
32
+ offCustomCancel
33
+ };
34
+ const _default = nameSpanMixins;
35
+
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvbmFtZVNwYW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IENIQU5HRV9DVVNUT01fRVZFTlRfVFlQRSwgQ0FOQ0VMX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gb25DdXN0b21DaGFuZ2UoY2hhbmdlQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDSEFOR0VfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBjaGFuZ2VDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbUNoYW5nZShjaGFuZ2VDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IENIQU5HRV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNoYW5nZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tQ2FuY2VsKGNhbmNlbEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNhbmNlbEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tQ2FuY2VsKGNhbmNlbEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgICAgY3VzdG9tSGFuZGxlciA9IGNhbmNlbEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmNvbnN0IG5hbWVTcGFuTWl4aW5zID0ge1xuICBvbkN1c3RvbUNoYW5nZSxcbiAgb2ZmQ3VzdG9tQ2hhbmdlLFxuICBvbkN1c3RvbUNhbmNlbCxcbiAgb2ZmQ3VzdG9tQ2FuY2VsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBuYW1lU3Bhbk1peGlucztcbiJdLCJuYW1lcyI6WyJvbkN1c3RvbUNoYW5nZSIsImNoYW5nZUN1c3RvbUhhbmRsZXIiLCJlbGVtZW50IiwiY3VzdG9tRXZlbnRUeXBlIiwiQ0hBTkdFX0NVU1RPTV9FVkVOVF9UWVBFIiwiY3VzdG9tSGFuZGxlciIsIm9uQ3VzdG9tRXZlbnQiLCJvZmZDdXN0b21DaGFuZ2UiLCJvZmZDdXN0b21FdmVudCIsIm9uQ3VzdG9tQ2FuY2VsIiwiY2FuY2VsQ3VzdG9tSGFuZGxlciIsIkNBTkNFTF9DVVNUT01fRVZFTlRfVFlQRSIsIm9mZkN1c3RvbUNhbmNlbCIsIm5hbWVTcGFuTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF1Q0E7OztlQUFBOzs7a0NBckNtRTtBQUVuRSxTQUFTQSxlQUFlQyxtQkFBbUIsRUFBRUMsT0FBTztJQUNsRCxNQUFNQyxrQkFBa0JDLDBDQUF3QixFQUMxQ0MsZ0JBQWdCSixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNLLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNLLGdCQUFnQk4sbUJBQW1CLEVBQUVDLE9BQU87SUFDbkQsTUFBTUMsa0JBQWtCQywwQ0FBd0IsRUFDMUNDLGdCQUFnQkoscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDTyxjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxTQUFTTyxlQUFlQyxtQkFBbUIsRUFBRVIsT0FBTztJQUNoRCxNQUFNQyxrQkFBa0JRLDBDQUF3QixFQUMxQ04sZ0JBQWdCSyxxQkFBc0IsR0FBRztJQUVqRCxJQUFJLENBQUNKLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNVLGdCQUFnQkYsbUJBQW1CLEVBQUVSLE9BQU87SUFDakQsTUFBTUMsa0JBQWtCUSwwQ0FBd0IsRUFDMUNOLGdCQUFnQksscUJBQXNCLEdBQUc7SUFFakQsSUFBSSxDQUFDRixjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxNQUFNVyxpQkFBaUI7SUFDckJiO0lBQ0FPO0lBQ0FFO0lBQ0FHO0FBQ0Y7TUFFQSxXQUFlQyJ9
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _customEventTypes = require("../customEventTypes");
12
+ function onCustomRemove(removeCustomHandler, element) {
13
+ const customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
14
+ this.onCustomEvent(customEventType, customHandler, element);
15
+ }
16
+ function offCustomRemove(removeCustomHandler, element) {
17
+ const customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE, customHandler = removeCustomHandler; ///
18
+ this.offCustomEvent(customEventType, customHandler, element);
19
+ }
20
+ const rubbishBinMixins = {
21
+ onCustomRemove,
22
+ offCustomRemove
23
+ };
24
+ const _default = rubbishBinMixins;
25
+
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvcnViYmlzaEJpbi5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgUkVNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gb25DdXN0b21SZW1vdmUocmVtb3ZlQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBSRU1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSByZW1vdmVDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVJlbW92ZShyZW1vdmVDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHJlbW92ZUN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmNvbnN0IHJ1YmJpc2hCaW5NaXhpbnMgPSB7XG4gIG9uQ3VzdG9tUmVtb3ZlLFxuICBvZmZDdXN0b21SZW1vdmVcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHJ1YmJpc2hCaW5NaXhpbnM7XG4iXSwibmFtZXMiOlsib25DdXN0b21SZW1vdmUiLCJyZW1vdmVDdXN0b21IYW5kbGVyIiwiZWxlbWVudCIsImN1c3RvbUV2ZW50VHlwZSIsIlJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSIsImN1c3RvbUhhbmRsZXIiLCJvbkN1c3RvbUV2ZW50Iiwib2ZmQ3VzdG9tUmVtb3ZlIiwib2ZmQ3VzdG9tRXZlbnQiLCJydWJiaXNoQmluTWl4aW5zIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF1QkE7OztlQUFBOzs7a0NBckJ5QztBQUV6QyxTQUFTQSxlQUFlQyxtQkFBbUIsRUFBRUMsT0FBTztJQUNsRCxNQUFNQyxrQkFBa0JDLDBDQUF3QixFQUMxQ0MsZ0JBQWdCSixxQkFBc0IsR0FBRztJQUUvQyxJQUFJLENBQUNLLGFBQWEsQ0FBQ0gsaUJBQWlCRSxlQUFlSDtBQUNyRDtBQUVBLFNBQVNLLGdCQUFnQk4sbUJBQW1CLEVBQUVDLE9BQU87SUFDbkQsTUFBTUMsa0JBQWtCQywwQ0FBd0IsRUFDMUNDLGdCQUFnQkoscUJBQXNCLEdBQUc7SUFFL0MsSUFBSSxDQUFDTyxjQUFjLENBQUNMLGlCQUFpQkUsZUFBZUg7QUFDdEQ7QUFFQSxNQUFNTyxtQkFBbUI7SUFDdkJUO0lBQ0FPO0FBQ0Y7TUFFQSxXQUFlRSJ9
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _easywithstyle = /*#__PURE__*/ _interop_require_default(require("easy-with-style"));
12
+ const _easy = require("easy");
13
+ const _easydraganddrop = require("easy-drag-and-drop");
14
+ const _rubbishBin = /*#__PURE__*/ _interop_require_default(require("./mixins/rubbishBin"));
15
+ const _open = /*#__PURE__*/ _interop_require_default(require("./svg/rubbishBin/open"));
16
+ const _closed = /*#__PURE__*/ _interop_require_default(require("./svg/rubbishBin/closed"));
17
+ const _dragEntryItem = /*#__PURE__*/ _interop_require_default(require("./mixins/dragEntryItem"));
18
+ const _fileName = /*#__PURE__*/ _interop_require_default(require("./item/entry/marker/fileName"));
19
+ const _directoryName = /*#__PURE__*/ _interop_require_default(require("./item/entry/marker/directoryName"));
20
+ const _customEventTypes = require("./customEventTypes");
21
+ const _pathMap = require("./utilities/pathMap");
22
+ const _entryTypes = require("./entryTypes");
23
+ function _interop_require_default(obj) {
24
+ return obj && obj.__esModule ? obj : {
25
+ default: obj
26
+ };
27
+ }
28
+ class RubbishBin extends _easy.Element {
29
+ dragOverCustomHandler = (event, element, dragElement)=>{
30
+ const dragEntryItem = dragElement, markerEntryItem = this.retrieveMarkerEntryItem();
31
+ let markerEntryItemPath = markerEntryItem.getPath(), markerEntryItemExplorer = markerEntryItem.getExplorer(), previousMarkerEntryItemPath = markerEntryItemPath, previousMarkerEntryItemExplorer = markerEntryItemExplorer; ///
32
+ markerEntryItemPath = null; ///
33
+ markerEntryItemExplorer = this; ///
34
+ if (markerEntryItemExplorer !== previousMarkerEntryItemExplorer || markerEntryItemPath !== previousMarkerEntryItemPath) {
35
+ const dragEntryItemType = dragEntryItem.getType();
36
+ previousMarkerEntryItemExplorer.removeMarker();
37
+ markerEntryItemExplorer.addMarker(markerEntryItemPath, dragEntryItemType);
38
+ }
39
+ };
40
+ dropCustomHandler = (event, element, dragElement, aborted, done)=>{
41
+ const dragEntryItem = dragElement, markerEntryItem = this.retrieveMarkerEntryItem(), markerEntryItemExplorer = markerEntryItem.getExplorer();
42
+ if (aborted) {
43
+ markerEntryItemExplorer.removeMarker();
44
+ done();
45
+ return;
46
+ }
47
+ markerEntryItemExplorer.dropDragEntryItem(event, element, dragEntryItem, done);
48
+ };
49
+ getReference() {
50
+ const { reference = null } = this.properties;
51
+ return reference;
52
+ }
53
+ getReferences() {
54
+ const { references = [] } = this.properties;
55
+ return references;
56
+ }
57
+ retrieveMarkerEntryItem() {
58
+ const markerEntryItem = getMarkerEntryItem();
59
+ return markerEntryItem;
60
+ }
61
+ addMarker(markerEntryItemPath, dragEntryItemType) {
62
+ const markerEntryItemName = markerEntryItemPath; ///
63
+ this.addMarkerEntryItem(markerEntryItemName, dragEntryItemType);
64
+ this.open();
65
+ }
66
+ removeMarker() {
67
+ this.removeMarkerEntryItem();
68
+ this.close();
69
+ }
70
+ addMarkerEntryItem(markerEntryItemName, dragEntryItemType) {
71
+ let markerEntryItem;
72
+ const name = markerEntryItemName, type = dragEntryItemType; ///
73
+ switch(type){
74
+ case _entryTypes.FILE_NAME_DRAG_ENTRY_TYPE:
75
+ {
76
+ const explorer = this, fileNameMarkerEntryItem = /*#__PURE__*/ React.createElement(_fileName.default, {
77
+ name: name,
78
+ explorer: explorer
79
+ });
80
+ markerEntryItem = fileNameMarkerEntryItem; ///
81
+ break;
82
+ }
83
+ case _entryTypes.DIRECTORY_NAME_DRAG_ENTRY_TYPE:
84
+ {
85
+ const explorer = this, directoryNameMarkerEntryItem = /*#__PURE__*/ React.createElement(_directoryName.default, {
86
+ name: name,
87
+ explorer: explorer
88
+ });
89
+ markerEntryItem = directoryNameMarkerEntryItem; ///
90
+ break;
91
+ }
92
+ }
93
+ setMarkerEntryItem(markerEntryItem);
94
+ }
95
+ removeMarkerEntryItem() {
96
+ resetMarkerEntryItem();
97
+ resetDropElement();
98
+ }
99
+ dropDragEntryItem(event, element, dragEntryItem, done) {
100
+ const dragEntryItemExplorer = dragEntryItem.getExplorer(), sourceEntryPath = (0, _pathMap.sourceEntryPathFromEntryItem)(dragEntryItem), targetEntryPath = null, pathMaps = dragEntryItem.getPathMaps(sourceEntryPath, targetEntryPath), explorer = dragEntryItemExplorer; ///
101
+ this.removeDragEntryItems(event, element, pathMaps, explorer, done);
102
+ }
103
+ removeDragEntryItems(event, element, pathMaps, explorer, done) {
104
+ const customEventType = _customEventTypes.REMOVE_CUSTOM_EVENT_TYPE;
105
+ this.callCustomHandlersAsync(customEventType, event, element, pathMaps, ()=>{
106
+ pathMaps.forEach((pathMap)=>{
107
+ this.removeDragEntryItem(pathMap, explorer);
108
+ });
109
+ pathMaps.forEach((pathMap)=>{
110
+ this.addDragEntryItem(pathMap, explorer);
111
+ });
112
+ this.removeMarker();
113
+ done();
114
+ });
115
+ }
116
+ open() {
117
+ this.showOpenRubbishBinSVG();
118
+ this.hideClosedRubbishBinSVG();
119
+ }
120
+ close() {
121
+ this.hideOpenRubbishBinSVG();
122
+ this.showClosedRubbishBinSVG();
123
+ }
124
+ didMount() {
125
+ this.enableDrop();
126
+ this.onCustomDrop(this.dropCustomHandler);
127
+ this.onCustomDragOver(this.dragOverCustomHandler);
128
+ this.close();
129
+ }
130
+ willUnmount() {
131
+ this.disableDrop();
132
+ this.offCustomDrop(this.dropCustomHandler);
133
+ this.offCustomDragOver(this.dragOverCustomHandler);
134
+ }
135
+ addFilePath(filePath, readOnly = false) {
136
+ ///
137
+ }
138
+ removeFilePath(filePath, removeEmptyParentDirectories = false) {
139
+ ///
140
+ }
141
+ removeAllPaths() {
142
+ ///
143
+ }
144
+ addDirectoryPath(directoryPath, readOnly = false, collapsed = true) {
145
+ ///
146
+ }
147
+ removeDirectoryPath(directoryPath, removeEmptyParentDirectories = false) {
148
+ ///
149
+ }
150
+ getMarkerEntryItemPath() {
151
+ const { markerEntryItemPath } = this.getState();
152
+ return markerEntryItemPath;
153
+ }
154
+ getMarkerEntryItemExplorer() {
155
+ const { markerEntryItemExplorer } = this.getState();
156
+ return markerEntryItemExplorer;
157
+ }
158
+ setMarkerEntryItemPath(markerEntryItemPath) {
159
+ this.updateState({
160
+ markerEntryItemPath
161
+ });
162
+ }
163
+ setMarkerEntryItemExplorer(markerEntryItemExplorer) {
164
+ this.updateState({
165
+ markerEntryItemExplorer
166
+ });
167
+ }
168
+ setInitialState() {
169
+ const markerEntryItemPath = null, markerEntryItemExplorer = null;
170
+ this.setState({
171
+ markerEntryItemPath,
172
+ markerEntryItemExplorer
173
+ });
174
+ }
175
+ childElements() {
176
+ const { OpenRubbishBinSVG, ClosedRubbishBinSVG } = this.constructor;
177
+ return [
178
+ /*#__PURE__*/ React.createElement(OpenRubbishBinSVG, null),
179
+ /*#__PURE__*/ React.createElement(ClosedRubbishBinSVG, null)
180
+ ];
181
+ }
182
+ initialise() {
183
+ this.assignContext();
184
+ this.setInitialState();
185
+ }
186
+ static OpenRubbishBinSVG = _open.default;
187
+ static ClosedRubbishBinSVG = _closed.default;
188
+ static tagName = "div";
189
+ static ignoredProperties = [
190
+ "reference",
191
+ "references"
192
+ ];
193
+ static defaultProperties = {
194
+ className: "rubbish-bin"
195
+ };
196
+ }
197
+ Object.assign(RubbishBin.prototype, _easydraganddrop.dropMixins);
198
+ Object.assign(RubbishBin.prototype, _rubbishBin.default);
199
+ Object.assign(RubbishBin.prototype, _dragEntryItem.default);
200
+ const _default = (0, _easywithstyle.default)(RubbishBin)`
201
+
202
+ display: inline-block;
203
+
204
+ `;
205
+
206
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9ydWJiaXNoQmluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBFbGVtZW50IH0gZnJvbSBcImVhc3lcIjtcbmltcG9ydCB7IGRyb3BNaXhpbnMgfSBmcm9tIFwiZWFzeS1kcmFnLWFuZC1kcm9wXCI7XG5cbmltcG9ydCBydWJiaXNoQmluTWl4aW5zIGZyb20gXCIuL21peGlucy9ydWJiaXNoQmluXCI7XG5pbXBvcnQgT3BlblJ1YmJpc2hCaW5TVkcgZnJvbSBcIi4vc3ZnL3J1YmJpc2hCaW4vb3BlblwiO1xuaW1wb3J0IENsb3NlZFJ1YmJpc2hCaW5TVkcgZnJvbSBcIi4vc3ZnL3J1YmJpc2hCaW4vY2xvc2VkXCI7XG5pbXBvcnQgZHJhZ0VudHJ5SXRlbU1peGlucyBmcm9tIFwiLi9taXhpbnMvZHJhZ0VudHJ5SXRlbVwiO1xuaW1wb3J0IEZpbGVOYW1lTWFya2VyRW50cnlJdGVtIGZyb20gXCIuL2l0ZW0vZW50cnkvbWFya2VyL2ZpbGVOYW1lXCI7XG5pbXBvcnQgRGlyZWN0b3J5TmFtZU1hcmtlckVudHJ5SXRlbSBmcm9tIFwiLi9pdGVtL2VudHJ5L21hcmtlci9kaXJlY3RvcnlOYW1lXCI7XG5cbmltcG9ydCB7IFJFTU9WRV9DVVNUT01fRVZFTlRfVFlQRSB9IGZyb20gXCIuL2N1c3RvbUV2ZW50VHlwZXNcIjtcbmltcG9ydCB7IHNvdXJjZUVudHJ5UGF0aEZyb21FbnRyeUl0ZW0gfSBmcm9tIFwiLi91dGlsaXRpZXMvcGF0aE1hcFwiO1xuaW1wb3J0IHsgRElSRUNUT1JZX05BTUVfRFJBR19FTlRSWV9UWVBFLCBGSUxFX05BTUVfRFJBR19FTlRSWV9UWVBFIH0gZnJvbSBcIi4vZW50cnlUeXBlc1wiO1xuXG5jbGFzcyBSdWJiaXNoQmluIGV4dGVuZHMgRWxlbWVudCB7XG4gIGRyYWdPdmVyQ3VzdG9tSGFuZGxlciA9IChldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpID0+IHtcbiAgICBjb25zdCBkcmFnRW50cnlJdGVtID0gZHJhZ0VsZW1lbnQsICAvLy9cbiAgICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSB0aGlzLnJldHJpZXZlTWFya2VyRW50cnlJdGVtKCk7XG5cbiAgICBsZXQgbWFya2VyRW50cnlJdGVtUGF0aCA9IG1hcmtlckVudHJ5SXRlbS5nZXRQYXRoKCksXG4gICAgICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIgPSBtYXJrZXJFbnRyeUl0ZW0uZ2V0RXhwbG9yZXIoKSxcbiAgICAgICAgICBwcmV2aW91c01hcmtlckVudHJ5SXRlbVBhdGggPSBtYXJrZXJFbnRyeUl0ZW1QYXRoLCAvLy9cbiAgICAgICAgICBwcmV2aW91c01hcmtlckVudHJ5SXRlbUV4cGxvcmVyID0gbWFya2VyRW50cnlJdGVtRXhwbG9yZXI7IC8vL1xuXG4gICAgbWFya2VyRW50cnlJdGVtUGF0aCA9IG51bGw7IC8vL1xuXG4gICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIgPSB0aGlzOyAgLy8vXG5cbiAgICBpZiAoKG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyICE9PSBwcmV2aW91c01hcmtlckVudHJ5SXRlbUV4cGxvcmVyKSB8fCAobWFya2VyRW50cnlJdGVtUGF0aCAhPT0gcHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1QYXRoKSkge1xuICAgICAgY29uc3QgZHJhZ0VudHJ5SXRlbVR5cGUgPSBkcmFnRW50cnlJdGVtLmdldFR5cGUoKTtcblxuICAgICAgcHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1FeHBsb3Jlci5yZW1vdmVNYXJrZXIoKTtcblxuICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIuYWRkTWFya2VyKG1hcmtlckVudHJ5SXRlbVBhdGgsIGRyYWdFbnRyeUl0ZW1UeXBlKTtcbiAgICB9XG4gIH1cblxuICBkcm9wQ3VzdG9tSGFuZGxlciA9IChldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQsIGFib3J0ZWQsIGRvbmUpID0+IHtcbiAgICBjb25zdCBkcmFnRW50cnlJdGVtID0gZHJhZ0VsZW1lbnQsICAvLy9cbiAgICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSB0aGlzLnJldHJpZXZlTWFya2VyRW50cnlJdGVtKCksXG4gICAgICAgICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIgPSBtYXJrZXJFbnRyeUl0ZW0uZ2V0RXhwbG9yZXIoKTtcblxuICAgIGlmIChhYm9ydGVkKSB7XG4gICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3Jlci5yZW1vdmVNYXJrZXIoKTtcblxuICAgICAgZG9uZSgpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbWFya2VyRW50cnlJdGVtRXhwbG9yZXIuZHJvcERyYWdFbnRyeUl0ZW0oZXZlbnQsIGVsZW1lbnQsIGRyYWdFbnRyeUl0ZW0sIGRvbmUpO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlKCkge1xuICAgIGNvbnN0IHsgcmVmZXJlbmNlID0gbnVsbCB9ID0gdGhpcy5wcm9wZXJ0aWVzO1xuXG4gICAgcmV0dXJuIHJlZmVyZW5jZTtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZXMoKSB7XG4gICAgY29uc3QgeyByZWZlcmVuY2VzID0gW10gfSA9IHRoaXMucHJvcGVydGllcztcblxuICAgIHJldHVybiByZWZlcmVuY2VzO1xuICB9XG5cbiAgcmV0cmlldmVNYXJrZXJFbnRyeUl0ZW0oKSB7XG4gICAgY29uc3QgbWFya2VyRW50cnlJdGVtID0gZ2V0TWFya2VyRW50cnlJdGVtKCk7XG5cbiAgICByZXR1cm4gbWFya2VyRW50cnlJdGVtO1xuICB9XG5cbiAgYWRkTWFya2VyKG1hcmtlckVudHJ5SXRlbVBhdGgsIGRyYWdFbnRyeUl0ZW1UeXBlKSB7XG4gICAgY29uc3QgbWFya2VyRW50cnlJdGVtTmFtZSA9IG1hcmtlckVudHJ5SXRlbVBhdGg7ICAvLy9cblxuICAgIHRoaXMuYWRkTWFya2VyRW50cnlJdGVtKG1hcmtlckVudHJ5SXRlbU5hbWUsIGRyYWdFbnRyeUl0ZW1UeXBlKTtcblxuICAgIHRoaXMub3BlbigpO1xuICB9XG5cbiAgcmVtb3ZlTWFya2VyKCkge1xuICAgIHRoaXMucmVtb3ZlTWFya2VyRW50cnlJdGVtKCk7XG5cbiAgICB0aGlzLmNsb3NlKCk7XG4gIH1cblxuICBhZGRNYXJrZXJFbnRyeUl0ZW0obWFya2VyRW50cnlJdGVtTmFtZSwgZHJhZ0VudHJ5SXRlbVR5cGUpIHtcbiAgICBsZXQgbWFya2VyRW50cnlJdGVtO1xuXG4gICAgY29uc3QgbmFtZSA9IG1hcmtlckVudHJ5SXRlbU5hbWUsIC8vL1xuICAgICAgICAgIHR5cGUgPSBkcmFnRW50cnlJdGVtVHlwZTsgIC8vL1xuXG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlIEZJTEVfTkFNRV9EUkFHX0VOVFJZX1RZUEUgOiB7XG4gICAgICAgIGNvbnN0IGV4cGxvcmVyID0gdGhpcywgIC8vL1xuICAgICAgICAgICAgICBmaWxlTmFtZU1hcmtlckVudHJ5SXRlbSA9XG5cbiAgICAgICAgICAgICAgICA8RmlsZU5hbWVNYXJrZXJFbnRyeUl0ZW0gbmFtZT17bmFtZX0gZXhwbG9yZXI9e2V4cGxvcmVyfSAvPlxuXG4gICAgICAgICAgICAgIDtcblxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSBmaWxlTmFtZU1hcmtlckVudHJ5SXRlbTsgIC8vL1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBjYXNlIERJUkVDVE9SWV9OQU1FX0RSQUdfRU5UUllfVFlQRSA6IHtcbiAgICAgICAgY29uc3QgZXhwbG9yZXIgPSB0aGlzLCAgLy8vXG4gICAgICAgICAgICAgIGRpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0gPVxuXG4gICAgICAgICAgICAgICAgPERpcmVjdG9yeU5hbWVNYXJrZXJFbnRyeUl0ZW0gbmFtZT17bmFtZX0gZXhwbG9yZXI9e2V4cGxvcmVyfSAvPlxuXG4gICAgICAgICAgICAgIDtcblxuICAgICAgICBtYXJrZXJFbnRyeUl0ZW0gPSBkaXJlY3RvcnlOYW1lTWFya2VyRW50cnlJdGVtOyAvLy9cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRNYXJrZXJFbnRyeUl0ZW0obWFya2VyRW50cnlJdGVtKTtcbiAgfVxuXG4gIHJlbW92ZU1hcmtlckVudHJ5SXRlbSgpIHtcbiAgICByZXNldE1hcmtlckVudHJ5SXRlbSgpO1xuXG4gICAgcmVzZXREcm9wRWxlbWVudCgpO1xuICB9XG5cbiAgZHJvcERyYWdFbnRyeUl0ZW0oZXZlbnQsIGVsZW1lbnQsIGRyYWdFbnRyeUl0ZW0sIGRvbmUpIHtcbiAgICBjb25zdCBkcmFnRW50cnlJdGVtRXhwbG9yZXIgPSBkcmFnRW50cnlJdGVtLmdldEV4cGxvcmVyKCksXG4gICAgICAgICAgc291cmNlRW50cnlQYXRoID0gc291cmNlRW50cnlQYXRoRnJvbUVudHJ5SXRlbShkcmFnRW50cnlJdGVtKSxcbiAgICAgICAgICB0YXJnZXRFbnRyeVBhdGggPSBudWxsLFxuICAgICAgICAgIHBhdGhNYXBzID0gZHJhZ0VudHJ5SXRlbS5nZXRQYXRoTWFwcyhzb3VyY2VFbnRyeVBhdGgsIHRhcmdldEVudHJ5UGF0aCksXG4gICAgICAgICAgZXhwbG9yZXIgPSBkcmFnRW50cnlJdGVtRXhwbG9yZXI7ICAvLy9cblxuICAgIHRoaXMucmVtb3ZlRHJhZ0VudHJ5SXRlbXMoZXZlbnQsIGVsZW1lbnQsIHBhdGhNYXBzLCBleHBsb3JlciwgZG9uZSk7XG4gIH1cblxuICByZW1vdmVEcmFnRW50cnlJdGVtcyhldmVudCwgZWxlbWVudCwgcGF0aE1hcHMsIGV4cGxvcmVyLCBkb25lKSB7XG4gICAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gUkVNT1ZFX0NVU1RPTV9FVkVOVF9UWVBFO1xuXG4gICAgdGhpcy5jYWxsQ3VzdG9tSGFuZGxlcnNBc3luYyhjdXN0b21FdmVudFR5cGUsIGV2ZW50LCBlbGVtZW50LCBwYXRoTWFwcywgKCkgPT4ge1xuICAgICAgcGF0aE1hcHMuZm9yRWFjaCgocGF0aE1hcCkgPT4ge1xuICAgICAgICB0aGlzLnJlbW92ZURyYWdFbnRyeUl0ZW0ocGF0aE1hcCwgZXhwbG9yZXIpXG4gICAgICB9KTtcblxuICAgICAgcGF0aE1hcHMuZm9yRWFjaCgocGF0aE1hcCkgPT4ge1xuICAgICAgICB0aGlzLmFkZERyYWdFbnRyeUl0ZW0ocGF0aE1hcCwgZXhwbG9yZXIpO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMucmVtb3ZlTWFya2VyKCk7XG5cbiAgICAgIGRvbmUoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9wZW4oKSB7XG4gICAgdGhpcy5zaG93T3BlblJ1YmJpc2hCaW5TVkcoKTtcbiAgICB0aGlzLmhpZGVDbG9zZWRSdWJiaXNoQmluU1ZHKCk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmhpZGVPcGVuUnViYmlzaEJpblNWRygpO1xuICAgIHRoaXMuc2hvd0Nsb3NlZFJ1YmJpc2hCaW5TVkcoKTtcbiAgfVxuXG4gIGRpZE1vdW50KCkge1xuICAgIHRoaXMuZW5hYmxlRHJvcCgpO1xuXG4gICAgdGhpcy5vbkN1c3RvbURyb3AodGhpcy5kcm9wQ3VzdG9tSGFuZGxlcik7XG5cbiAgICB0aGlzLm9uQ3VzdG9tRHJhZ092ZXIodGhpcy5kcmFnT3ZlckN1c3RvbUhhbmRsZXIpO1xuXG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgd2lsbFVubW91bnQoKSB7XG4gICAgdGhpcy5kaXNhYmxlRHJvcCgpO1xuXG4gICAgdGhpcy5vZmZDdXN0b21Ecm9wKHRoaXMuZHJvcEN1c3RvbUhhbmRsZXIpO1xuXG4gICAgdGhpcy5vZmZDdXN0b21EcmFnT3Zlcih0aGlzLmRyYWdPdmVyQ3VzdG9tSGFuZGxlcik7XG4gIH1cblxuICBhZGRGaWxlUGF0aChmaWxlUGF0aCwgcmVhZE9ubHkgPSBmYWxzZSkge1xuICAgIC8vL1xuICB9XG5cbiAgcmVtb3ZlRmlsZVBhdGgoZmlsZVBhdGgsIHJlbW92ZUVtcHR5UGFyZW50RGlyZWN0b3JpZXMgPSBmYWxzZSkge1xuICAgIC8vL1xuICB9XG5cbiAgcmVtb3ZlQWxsUGF0aHMoKSB7XG4gICAgLy8vXG4gIH1cblxuICBhZGREaXJlY3RvcnlQYXRoKGRpcmVjdG9yeVBhdGgsIHJlYWRPbmx5ID0gZmFsc2UsIGNvbGxhcHNlZCA9IHRydWUpIHtcbiAgICAvLy9cbiAgfVxuXG4gIHJlbW92ZURpcmVjdG9yeVBhdGgoZGlyZWN0b3J5UGF0aCwgcmVtb3ZlRW1wdHlQYXJlbnREaXJlY3RvcmllcyA9IGZhbHNlKSB7XG4gICAgLy8vXG4gIH1cblxuICBnZXRNYXJrZXJFbnRyeUl0ZW1QYXRoKCkge1xuICAgIGNvbnN0IHsgbWFya2VyRW50cnlJdGVtUGF0aCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gICAgcmV0dXJuIG1hcmtlckVudHJ5SXRlbVBhdGg7XG4gIH1cblxuICBnZXRNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlcigpIHtcbiAgICBjb25zdCB7IG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyIH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgICByZXR1cm4gbWFya2VyRW50cnlJdGVtRXhwbG9yZXI7XG4gIH1cblxuICBzZXRNYXJrZXJFbnRyeUl0ZW1QYXRoKG1hcmtlckVudHJ5SXRlbVBhdGgpIHtcbiAgICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICAgIG1hcmtlckVudHJ5SXRlbVBhdGhcbiAgICB9KTtcbiAgfVxuXG4gIHNldE1hcmtlckVudHJ5SXRlbUV4cGxvcmVyKG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyKSB7XG4gICAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgICBtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlclxuICAgIH0pO1xuICB9XG5cbiAgc2V0SW5pdGlhbFN0YXRlKCkge1xuICAgIGNvbnN0IG1hcmtlckVudHJ5SXRlbVBhdGggPSBudWxsLFxuICAgICAgICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyID0gbnVsbDtcblxuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgbWFya2VyRW50cnlJdGVtUGF0aCxcbiAgICAgIG1hcmtlckVudHJ5SXRlbUV4cGxvcmVyXG4gICAgfSk7XG4gIH1cblxuICBjaGlsZEVsZW1lbnRzKCkge1xuICAgIGNvbnN0IHsgT3BlblJ1YmJpc2hCaW5TVkcsIENsb3NlZFJ1YmJpc2hCaW5TVkcgfSA9IHRoaXMuY29uc3RydWN0b3I7XG5cbiAgICByZXR1cm4gKFtcblxuICAgICAgPE9wZW5SdWJiaXNoQmluU1ZHLz4sXG4gICAgICA8Q2xvc2VkUnViYmlzaEJpblNWRy8+XG5cbiAgICBdKTtcbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgdGhpcy5hc3NpZ25Db250ZXh0KCk7XG5cbiAgICB0aGlzLnNldEluaXRpYWxTdGF0ZSgpO1xuICB9XG5cbiAgc3RhdGljIE9wZW5SdWJiaXNoQmluU1ZHID0gT3BlblJ1YmJpc2hCaW5TVkc7XG5cbiAgc3RhdGljIENsb3NlZFJ1YmJpc2hCaW5TVkcgPSBDbG9zZWRSdWJiaXNoQmluU1ZHO1xuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJkaXZcIjtcblxuICBzdGF0aWMgaWdub3JlZFByb3BlcnRpZXMgPSBbXG4gICAgXCJyZWZlcmVuY2VcIixcbiAgICBcInJlZmVyZW5jZXNcIlxuICBdO1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcGVydGllcyA9IHtcbiAgICBjbGFzc05hbWU6IFwicnViYmlzaC1iaW5cIlxuICB9O1xufVxuXG5PYmplY3QuYXNzaWduKFJ1YmJpc2hCaW4ucHJvdG90eXBlLCBkcm9wTWl4aW5zKTtcbk9iamVjdC5hc3NpZ24oUnViYmlzaEJpbi5wcm90b3R5cGUsIHJ1YmJpc2hCaW5NaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihSdWJiaXNoQmluLnByb3RvdHlwZSwgZHJhZ0VudHJ5SXRlbU1peGlucyk7XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZShSdWJiaXNoQmluKWBcbiAgXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIFxuYDtcbiJdLCJuYW1lcyI6WyJSdWJiaXNoQmluIiwiRWxlbWVudCIsImRyYWdPdmVyQ3VzdG9tSGFuZGxlciIsImV2ZW50IiwiZWxlbWVudCIsImRyYWdFbGVtZW50IiwiZHJhZ0VudHJ5SXRlbSIsIm1hcmtlckVudHJ5SXRlbSIsInJldHJpZXZlTWFya2VyRW50cnlJdGVtIiwibWFya2VyRW50cnlJdGVtUGF0aCIsImdldFBhdGgiLCJtYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciIsImdldEV4cGxvcmVyIiwicHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1QYXRoIiwicHJldmlvdXNNYXJrZXJFbnRyeUl0ZW1FeHBsb3JlciIsImRyYWdFbnRyeUl0ZW1UeXBlIiwiZ2V0VHlwZSIsInJlbW92ZU1hcmtlciIsImFkZE1hcmtlciIsImRyb3BDdXN0b21IYW5kbGVyIiwiYWJvcnRlZCIsImRvbmUiLCJkcm9wRHJhZ0VudHJ5SXRlbSIsImdldFJlZmVyZW5jZSIsInJlZmVyZW5jZSIsInByb3BlcnRpZXMiLCJnZXRSZWZlcmVuY2VzIiwicmVmZXJlbmNlcyIsImdldE1hcmtlckVudHJ5SXRlbSIsIm1hcmtlckVudHJ5SXRlbU5hbWUiLCJhZGRNYXJrZXJFbnRyeUl0ZW0iLCJvcGVuIiwicmVtb3ZlTWFya2VyRW50cnlJdGVtIiwiY2xvc2UiLCJuYW1lIiwidHlwZSIsIkZJTEVfTkFNRV9EUkFHX0VOVFJZX1RZUEUiLCJleHBsb3JlciIsImZpbGVOYW1lTWFya2VyRW50cnlJdGVtIiwiRmlsZU5hbWVNYXJrZXJFbnRyeUl0ZW0iLCJESVJFQ1RPUllfTkFNRV9EUkFHX0VOVFJZX1RZUEUiLCJkaXJlY3RvcnlOYW1lTWFya2VyRW50cnlJdGVtIiwiRGlyZWN0b3J5TmFtZU1hcmtlckVudHJ5SXRlbSIsInNldE1hcmtlckVudHJ5SXRlbSIsInJlc2V0TWFya2VyRW50cnlJdGVtIiwicmVzZXREcm9wRWxlbWVudCIsImRyYWdFbnRyeUl0ZW1FeHBsb3JlciIsInNvdXJjZUVudHJ5UGF0aCIsInNvdXJjZUVudHJ5UGF0aEZyb21FbnRyeUl0ZW0iLCJ0YXJnZXRFbnRyeVBhdGgiLCJwYXRoTWFwcyIsImdldFBhdGhNYXBzIiwicmVtb3ZlRHJhZ0VudHJ5SXRlbXMiLCJjdXN0b21FdmVudFR5cGUiLCJSRU1PVkVfQ1VTVE9NX0VWRU5UX1RZUEUiLCJjYWxsQ3VzdG9tSGFuZGxlcnNBc3luYyIsImZvckVhY2giLCJwYXRoTWFwIiwicmVtb3ZlRHJhZ0VudHJ5SXRlbSIsImFkZERyYWdFbnRyeUl0ZW0iLCJzaG93T3BlblJ1YmJpc2hCaW5TVkciLCJoaWRlQ2xvc2VkUnViYmlzaEJpblNWRyIsImhpZGVPcGVuUnViYmlzaEJpblNWRyIsInNob3dDbG9zZWRSdWJiaXNoQmluU1ZHIiwiZGlkTW91bnQiLCJlbmFibGVEcm9wIiwib25DdXN0b21Ecm9wIiwib25DdXN0b21EcmFnT3ZlciIsIndpbGxVbm1vdW50IiwiZGlzYWJsZURyb3AiLCJvZmZDdXN0b21Ecm9wIiwib2ZmQ3VzdG9tRHJhZ092ZXIiLCJhZGRGaWxlUGF0aCIsImZpbGVQYXRoIiwicmVhZE9ubHkiLCJyZW1vdmVGaWxlUGF0aCIsInJlbW92ZUVtcHR5UGFyZW50RGlyZWN0b3JpZXMiLCJyZW1vdmVBbGxQYXRocyIsImFkZERpcmVjdG9yeVBhdGgiLCJkaXJlY3RvcnlQYXRoIiwiY29sbGFwc2VkIiwicmVtb3ZlRGlyZWN0b3J5UGF0aCIsImdldE1hcmtlckVudHJ5SXRlbVBhdGgiLCJnZXRTdGF0ZSIsImdldE1hcmtlckVudHJ5SXRlbUV4cGxvcmVyIiwic2V0TWFya2VyRW50cnlJdGVtUGF0aCIsInVwZGF0ZVN0YXRlIiwic2V0TWFya2VyRW50cnlJdGVtRXhwbG9yZXIiLCJzZXRJbml0aWFsU3RhdGUiLCJzZXRTdGF0ZSIsImNoaWxkRWxlbWVudHMiLCJPcGVuUnViYmlzaEJpblNWRyIsIkNsb3NlZFJ1YmJpc2hCaW5TVkciLCJpbml0aWFsaXNlIiwiYXNzaWduQ29udGV4dCIsInRhZ05hbWUiLCJpZ25vcmVkUHJvcGVydGllcyIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiZHJvcE1peGlucyIsInJ1YmJpc2hCaW5NaXhpbnMiLCJkcmFnRW50cnlJdGVtTWl4aW5zIiwid2l0aFN0eWxlIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF1UkE7OztlQUFBOzs7c0VBclJzQjtzQkFFRTtpQ0FDRzttRUFFRTs2REFDQzsrREFDRTtzRUFDQTtpRUFDSTtzRUFDSztrQ0FFQTt5QkFDSTs0QkFDNkI7Ozs7OztBQUUxRSxNQUFNQSxtQkFBbUJDLGFBQU87SUFDOUJDLHdCQUF3QixDQUFDQyxPQUFPQyxTQUFTQztRQUN2QyxNQUFNQyxnQkFBZ0JELGFBQ2hCRSxrQkFBa0IsSUFBSSxDQUFDQyx1QkFBdUI7UUFFcEQsSUFBSUMsc0JBQXNCRixnQkFBZ0JHLE9BQU8sSUFDM0NDLDBCQUEwQkosZ0JBQWdCSyxXQUFXLElBQ3JEQyw4QkFBOEJKLHFCQUM5Qkssa0NBQWtDSCx5QkFBeUIsR0FBRztRQUVwRUYsc0JBQXNCLE1BQU0sR0FBRztRQUUvQkUsMEJBQTBCLElBQUksRUFBRyxHQUFHO1FBRXBDLElBQUksQUFBQ0EsNEJBQTRCRyxtQ0FBcUNMLHdCQUF3QkksNkJBQThCO1lBQzFILE1BQU1FLG9CQUFvQlQsY0FBY1UsT0FBTztZQUUvQ0YsZ0NBQWdDRyxZQUFZO1lBRTVDTix3QkFBd0JPLFNBQVMsQ0FBQ1QscUJBQXFCTTtRQUN6RDtJQUNGLEVBQUM7SUFFREksb0JBQW9CLENBQUNoQixPQUFPQyxTQUFTQyxhQUFhZSxTQUFTQztRQUN6RCxNQUFNZixnQkFBZ0JELGFBQ2hCRSxrQkFBa0IsSUFBSSxDQUFDQyx1QkFBdUIsSUFDOUNHLDBCQUEwQkosZ0JBQWdCSyxXQUFXO1FBRTNELElBQUlRLFNBQVM7WUFDWFQsd0JBQXdCTSxZQUFZO1lBRXBDSTtZQUVBO1FBQ0Y7UUFFQVYsd0JBQXdCVyxpQkFBaUIsQ0FBQ25CLE9BQU9DLFNBQVNFLGVBQWVlO0lBQzNFLEVBQUM7SUFFREUsZUFBZTtRQUNiLE1BQU0sRUFBRUMsWUFBWSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUNDLFVBQVU7UUFFNUMsT0FBT0Q7SUFDVDtJQUVBRSxnQkFBZ0I7UUFDZCxNQUFNLEVBQUVDLGFBQWEsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDRixVQUFVO1FBRTNDLE9BQU9FO0lBQ1Q7SUFFQW5CLDBCQUEwQjtRQUN4QixNQUFNRCxrQkFBa0JxQjtRQUV4QixPQUFPckI7SUFDVDtJQUVBVyxVQUFVVCxtQkFBbUIsRUFBRU0saUJBQWlCLEVBQUU7UUFDaEQsTUFBTWMsc0JBQXNCcEIscUJBQXNCLEdBQUc7UUFFckQsSUFBSSxDQUFDcUIsa0JBQWtCLENBQUNELHFCQUFxQmQ7UUFFN0MsSUFBSSxDQUFDZ0IsSUFBSTtJQUNYO0lBRUFkLGVBQWU7UUFDYixJQUFJLENBQUNlLHFCQUFxQjtRQUUxQixJQUFJLENBQUNDLEtBQUs7SUFDWjtJQUVBSCxtQkFBbUJELG1CQUFtQixFQUFFZCxpQkFBaUIsRUFBRTtRQUN6RCxJQUFJUjtRQUVKLE1BQU0yQixPQUFPTCxxQkFDUE0sT0FBT3BCLG1CQUFvQixHQUFHO1FBRXBDLE9BQVFvQjtZQUNOLEtBQUtDLHFDQUF5QjtnQkFBRztvQkFDL0IsTUFBTUMsV0FBVyxJQUFJLEVBQ2ZDLHdDQUVFLG9CQUFDQyxpQkFBdUI7d0JBQUNMLE1BQU1BO3dCQUFNRyxVQUFVQTs7b0JBSXZEOUIsa0JBQWtCK0IseUJBQTBCLEdBQUc7b0JBRS9DO2dCQUNGO1lBRUEsS0FBS0UsMENBQThCO2dCQUFHO29CQUNwQyxNQUFNSCxXQUFXLElBQUksRUFDZkksNkNBRUUsb0JBQUNDLHNCQUE0Qjt3QkFBQ1IsTUFBTUE7d0JBQU1HLFVBQVVBOztvQkFJNUQ5QixrQkFBa0JrQyw4QkFBOEIsR0FBRztvQkFFbkQ7Z0JBQ0Y7UUFDRjtRQUVBRSxtQkFBbUJwQztJQUNyQjtJQUVBeUIsd0JBQXdCO1FBQ3RCWTtRQUVBQztJQUNGO0lBRUF2QixrQkFBa0JuQixLQUFLLEVBQUVDLE9BQU8sRUFBRUUsYUFBYSxFQUFFZSxJQUFJLEVBQUU7UUFDckQsTUFBTXlCLHdCQUF3QnhDLGNBQWNNLFdBQVcsSUFDakRtQyxrQkFBa0JDLElBQUFBLHFDQUE0QixFQUFDMUMsZ0JBQy9DMkMsa0JBQWtCLE1BQ2xCQyxXQUFXNUMsY0FBYzZDLFdBQVcsQ0FBQ0osaUJBQWlCRSxrQkFDdERaLFdBQVdTLHVCQUF3QixHQUFHO1FBRTVDLElBQUksQ0FBQ00sb0JBQW9CLENBQUNqRCxPQUFPQyxTQUFTOEMsVUFBVWIsVUFBVWhCO0lBQ2hFO0lBRUErQixxQkFBcUJqRCxLQUFLLEVBQUVDLE9BQU8sRUFBRThDLFFBQVEsRUFBRWIsUUFBUSxFQUFFaEIsSUFBSSxFQUFFO1FBQzdELE1BQU1nQyxrQkFBa0JDLDBDQUF3QjtRQUVoRCxJQUFJLENBQUNDLHVCQUF1QixDQUFDRixpQkFBaUJsRCxPQUFPQyxTQUFTOEMsVUFBVTtZQUN0RUEsU0FBU00sT0FBTyxDQUFDLENBQUNDO2dCQUNoQixJQUFJLENBQUNDLG1CQUFtQixDQUFDRCxTQUFTcEI7WUFDcEM7WUFFQWEsU0FBU00sT0FBTyxDQUFDLENBQUNDO2dCQUNoQixJQUFJLENBQUNFLGdCQUFnQixDQUFDRixTQUFTcEI7WUFDakM7WUFFQSxJQUFJLENBQUNwQixZQUFZO1lBRWpCSTtRQUNGO0lBQ0Y7SUFFQVUsT0FBTztRQUNMLElBQUksQ0FBQzZCLHFCQUFxQjtRQUMxQixJQUFJLENBQUNDLHVCQUF1QjtJQUM5QjtJQUVBNUIsUUFBUTtRQUNOLElBQUksQ0FBQzZCLHFCQUFxQjtRQUMxQixJQUFJLENBQUNDLHVCQUF1QjtJQUM5QjtJQUVBQyxXQUFXO1FBQ1QsSUFBSSxDQUFDQyxVQUFVO1FBRWYsSUFBSSxDQUFDQyxZQUFZLENBQUMsSUFBSSxDQUFDL0MsaUJBQWlCO1FBRXhDLElBQUksQ0FBQ2dELGdCQUFnQixDQUFDLElBQUksQ0FBQ2pFLHFCQUFxQjtRQUVoRCxJQUFJLENBQUMrQixLQUFLO0lBQ1o7SUFFQW1DLGNBQWM7UUFDWixJQUFJLENBQUNDLFdBQVc7UUFFaEIsSUFBSSxDQUFDQyxhQUFhLENBQUMsSUFBSSxDQUFDbkQsaUJBQWlCO1FBRXpDLElBQUksQ0FBQ29ELGlCQUFpQixDQUFDLElBQUksQ0FBQ3JFLHFCQUFxQjtJQUNuRDtJQUVBc0UsWUFBWUMsUUFBUSxFQUFFQyxXQUFXLEtBQUssRUFBRTtJQUN0QyxHQUFHO0lBQ0w7SUFFQUMsZUFBZUYsUUFBUSxFQUFFRywrQkFBK0IsS0FBSyxFQUFFO0lBQzdELEdBQUc7SUFDTDtJQUVBQyxpQkFBaUI7SUFDZixHQUFHO0lBQ0w7SUFFQUMsaUJBQWlCQyxhQUFhLEVBQUVMLFdBQVcsS0FBSyxFQUFFTSxZQUFZLElBQUksRUFBRTtJQUNsRSxHQUFHO0lBQ0w7SUFFQUMsb0JBQW9CRixhQUFhLEVBQUVILCtCQUErQixLQUFLLEVBQUU7SUFDdkUsR0FBRztJQUNMO0lBRUFNLHlCQUF5QjtRQUN2QixNQUFNLEVBQUV6RSxtQkFBbUIsRUFBRSxHQUFHLElBQUksQ0FBQzBFLFFBQVE7UUFFN0MsT0FBTzFFO0lBQ1Q7SUFFQTJFLDZCQUE2QjtRQUMzQixNQUFNLEVBQUV6RSx1QkFBdUIsRUFBRSxHQUFHLElBQUksQ0FBQ3dFLFFBQVE7UUFFakQsT0FBT3hFO0lBQ1Q7SUFFQTBFLHVCQUF1QjVFLG1CQUFtQixFQUFFO1FBQzFDLElBQUksQ0FBQzZFLFdBQVcsQ0FBQztZQUNmN0U7UUFDRjtJQUNGO0lBRUE4RSwyQkFBMkI1RSx1QkFBdUIsRUFBRTtRQUNsRCxJQUFJLENBQUMyRSxXQUFXLENBQUM7WUFDZjNFO1FBQ0Y7SUFDRjtJQUVBNkUsa0JBQWtCO1FBQ2hCLE1BQU0vRSxzQkFBc0IsTUFDdEJFLDBCQUEwQjtRQUVoQyxJQUFJLENBQUM4RSxRQUFRLENBQUM7WUFDWmhGO1lBQ0FFO1FBQ0Y7SUFDRjtJQUVBK0UsZ0JBQWdCO1FBQ2QsTUFBTSxFQUFFQyxpQkFBaUIsRUFBRUMsbUJBQW1CLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVztRQUVuRSxPQUFROzBCQUVOLG9CQUFDRDswQkFDRCxvQkFBQ0M7U0FFRjtJQUNIO0lBRUFDLGFBQWE7UUFDWCxJQUFJLENBQUNDLGFBQWE7UUFFbEIsSUFBSSxDQUFDTixlQUFlO0lBQ3RCO0lBRUEsT0FBT0csb0JBQW9CQSxhQUFpQixDQUFDO0lBRTdDLE9BQU9DLHNCQUFzQkEsZUFBbUIsQ0FBQztJQUVqRCxPQUFPRyxVQUFVLE1BQU07SUFFdkIsT0FBT0Msb0JBQW9CO1FBQ3pCO1FBQ0E7S0FDRCxDQUFDO0lBRUYsT0FBT0Msb0JBQW9CO1FBQ3pCQyxXQUFXO0lBQ2IsRUFBRTtBQUNKO0FBRUFDLE9BQU9DLE1BQU0sQ0FBQ3BHLFdBQVdxRyxTQUFTLEVBQUVDLDJCQUFVO0FBQzlDSCxPQUFPQyxNQUFNLENBQUNwRyxXQUFXcUcsU0FBUyxFQUFFRSxtQkFBZ0I7QUFDcERKLE9BQU9DLE1BQU0sQ0FBQ3BHLFdBQVdxRyxTQUFTLEVBQUVHLHNCQUFtQjtNQUV2RCxXQUFlQyxJQUFBQSxzQkFBUyxFQUFDekcsV0FBVyxDQUFDOzs7O0FBSXJDLENBQUMifQ==
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _easywithstyle = /*#__PURE__*/ _interop_require_default(require("easy-with-style"));
12
+ const _necessary = require("necessary");
13
+ const _easy = require("easy");
14
+ const _nameSpan = /*#__PURE__*/ _interop_require_default(require("../mixins/nameSpan"));
15
+ const _constants = require("../constants");
16
+ const _customEventTypes = require("../customEventTypes");
17
+ function _interop_require_default(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ const { first } = _necessary.arrayUtilities, { ENTER_KEY_CODE, ESCAPE_KEY_CODE } = _necessary.keyCodes;
23
+ class NameSpan extends _easy.Element {
24
+ keyDownHandler = (event, element)=>{
25
+ const { keyCode } = event;
26
+ if (keyCode === ENTER_KEY_CODE) {
27
+ const customEventType = _customEventTypes.CHANGE_CUSTOM_EVENT_TYPE;
28
+ this.callCustomHandlers(customEventType, event, element);
29
+ event.preventDefault();
30
+ }
31
+ if (keyCode === ESCAPE_KEY_CODE) {
32
+ const customEventType = _customEventTypes.CANCEL_CUSTOM_EVENT_TYPE;
33
+ this.callCustomHandlers(customEventType, event, element);
34
+ event.preventDefault();
35
+ }
36
+ };
37
+ getName() {
38
+ const html = this.html(), name = html; ///
39
+ return name;
40
+ }
41
+ setName(name) {
42
+ const domElement = this.getDOMElement(), { firstChild } = domElement;
43
+ let textNode;
44
+ if (firstChild !== null) {
45
+ textNode = firstChild; ///
46
+ } else {
47
+ textNode = _easy.document.createTextNode();
48
+ domElement.appendChild(textNode);
49
+ }
50
+ textNode.nodeValue = name; ///
51
+ }
52
+ edit() {
53
+ this.focus();
54
+ this.addAttribute(_constants.CONTENT_EDITABLE, _constants.TRUE);
55
+ this.onKeyDown(this.keyDownHandler);
56
+ const html = this.html(), range = _easy.document.createRange(), selection = _easy.window.getSelection(), domElement = this.getDOMElement(), htmlLength = html.length, { childNodes } = domElement, firstChildNode = first(childNodes), textNode = firstChildNode; ///
57
+ range.setStart(textNode, 0);
58
+ range.setEnd(textNode, htmlLength);
59
+ selection.removeAllRanges();
60
+ selection.addRange(range);
61
+ }
62
+ reset() {
63
+ this.offKeyDown(this.keyDownHandler);
64
+ this.removeAttribute(_constants.CONTENT_EDITABLE, _constants.TRUE);
65
+ }
66
+ isEditable() {
67
+ const contentEditableAttribute = this.hasAttribute(_constants.CONTENT_EDITABLE), editable = contentEditableAttribute; ///
68
+ return editable;
69
+ }
70
+ didMount() {
71
+ ///
72
+ }
73
+ willUnmount() {
74
+ const editable = this.isEditable();
75
+ if (editable) {
76
+ this.reset();
77
+ }
78
+ }
79
+ parentContext() {
80
+ const isEditable = this.isEditable.bind(this), 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), onCustomNameSpanChange = this.onCustomChange.bind(this), offCustomNameSpanCancel = this.offCustomCancel.bind(this), offCustomNameSpanChange = this.offCustomChange.bind(this); ///
81
+ return {
82
+ isEditable,
83
+ editNameSpan,
84
+ resetNameSpan,
85
+ getNameSpanName,
86
+ setNameSpanName,
87
+ onCustomNameSpanCancel,
88
+ onCustomNameSpanChange,
89
+ offCustomNameSpanCancel,
90
+ offCustomNameSpanChange
91
+ };
92
+ }
93
+ static tagName = "span";
94
+ static defaultProperties = {
95
+ className: "name"
96
+ };
97
+ }
98
+ Object.assign(NameSpan.prototype, _easy.focusMixins);
99
+ Object.assign(NameSpan.prototype, _nameSpan.default);
100
+ const _default = (0, _easywithstyle.default)(NameSpan)`
101
+
102
+ border: none;
103
+ display: inline-block;
104
+ font-size: inherit;
105
+ text-align: left;
106
+ background: transparent;
107
+ font-weight: inherit;
108
+ font-family: inherit;
109
+
110
+ [contentEditable] {
111
+ border: 1px solid black;
112
+ padding: 4px;
113
+ }
114
+
115
+ `;
116
+
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcGFuL25hbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IGtleUNvZGVzLCBhcnJheVV0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIjtcbmltcG9ydCB7IEVsZW1lbnQsIHdpbmRvdywgZG9jdW1lbnQsIGZvY3VzTWl4aW5zIH0gZnJvbSBcImVhc3lcIjtcblxuaW1wb3J0IG5hbWVTcGFuTWl4aW5zIGZyb20gXCIuLi9taXhpbnMvbmFtZVNwYW5cIjtcblxuaW1wb3J0IHsgVFJVRSwgQ09OVEVOVF9FRElUQUJMRSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7Q0FOQ0VMX0NVU1RPTV9FVkVOVF9UWVBFLCBDSEFOR0VfQ1VTVE9NX0VWRU5UX1RZUEV9IGZyb20gXCIuLi9jdXN0b21FdmVudFR5cGVzXCI7XG5cbmNvbnN0IHsgZmlyc3QgfSA9IGFycmF5VXRpbGl0aWVzLFxuICAgICAgeyBFTlRFUl9LRVlfQ09ERSwgRVNDQVBFX0tFWV9DT0RFIH0gPSBrZXlDb2RlcztcblxuY2xhc3MgTmFtZVNwYW4gZXh0ZW5kcyBFbGVtZW50IHtcbiAga2V5RG93bkhhbmRsZXIgPSAoZXZlbnQsIGVsZW1lbnQpID0+IHtcbiAgICBjb25zdCB7IGtleUNvZGUgfSA9IGV2ZW50O1xuXG4gICAgaWYgKGtleUNvZGUgPT09IEVOVEVSX0tFWV9DT0RFKSB7XG4gICAgICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBDSEFOR0VfQ1VTVE9NX0VWRU5UX1RZUEU7XG5cbiAgICAgIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzKGN1c3RvbUV2ZW50VHlwZSwgZXZlbnQsIGVsZW1lbnQpO1xuXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIGlmIChrZXlDb2RlID09PSBFU0NBUEVfS0VZX0NPREUpIHtcbiAgICAgIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IENBTkNFTF9DVVNUT01fRVZFTlRfVFlQRTtcblxuICAgICAgdGhpcy5jYWxsQ3VzdG9tSGFuZGxlcnMoY3VzdG9tRXZlbnRUeXBlLCBldmVudCwgZWxlbWVudCk7XG5cbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0TmFtZSgpIHtcbiAgICBjb25zdCBodG1sID0gdGhpcy5odG1sKCksXG4gICAgICAgICAgbmFtZSA9IGh0bWw7ICAvLy9cblxuICAgIHJldHVybiBuYW1lO1xuICB9XG5cbiAgc2V0TmFtZShuYW1lKSB7XG4gICAgY29uc3QgZG9tRWxlbWVudCA9IHRoaXMuZ2V0RE9NRWxlbWVudCgpLFxuICAgICAgICAgIHsgZmlyc3RDaGlsZCB9ID0gZG9tRWxlbWVudDtcblxuICAgIGxldCB0ZXh0Tm9kZTtcblxuICAgIGlmIChmaXJzdENoaWxkICE9PSBudWxsKSB7XG4gICAgICB0ZXh0Tm9kZSA9IGZpcnN0Q2hpbGQ7ICAvLy9cbiAgICB9IGVsc2Uge1xuICAgICAgdGV4dE5vZGUgPSBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgpO1xuXG4gICAgICBkb21FbGVtZW50LmFwcGVuZENoaWxkKHRleHROb2RlKTtcbiAgICB9XG5cbiAgICB0ZXh0Tm9kZS5ub2RlVmFsdWUgPSBuYW1lOyAgLy8vXG4gIH1cblxuICBlZGl0KCkge1xuICAgIHRoaXMuZm9jdXMoKTtcblxuICAgIHRoaXMuYWRkQXR0cmlidXRlKENPTlRFTlRfRURJVEFCTEUsIFRSVUUpO1xuXG4gICAgdGhpcy5vbktleURvd24odGhpcy5rZXlEb3duSGFuZGxlcik7XG5cbiAgICBjb25zdCBodG1sID0gdGhpcy5odG1sKCksXG4gICAgICAgICAgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpLFxuICAgICAgICAgIHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKSxcbiAgICAgICAgICBkb21FbGVtZW50ID0gdGhpcy5nZXRET01FbGVtZW50KCksXG4gICAgICAgICAgaHRtbExlbmd0aCA9IGh0bWwubGVuZ3RoLFxuICAgICAgICAgIHsgY2hpbGROb2RlcyB9ID0gZG9tRWxlbWVudCxcbiAgICAgICAgICBmaXJzdENoaWxkTm9kZSA9IGZpcnN0KGNoaWxkTm9kZXMpLFxuICAgICAgICAgIHRleHROb2RlID0gZmlyc3RDaGlsZE5vZGU7ICAvLy9cblxuICAgIHJhbmdlLnNldFN0YXJ0KHRleHROb2RlLCAwKTtcblxuICAgIHJhbmdlLnNldEVuZCh0ZXh0Tm9kZSwgaHRtbExlbmd0aCk7XG5cbiAgICBzZWxlY3Rpb24ucmVtb3ZlQWxsUmFuZ2VzKCk7XG5cbiAgICBzZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpO1xuICB9XG5cbiAgcmVzZXQoKSB7XG4gICAgdGhpcy5vZmZLZXlEb3duKHRoaXMua2V5RG93bkhhbmRsZXIpO1xuXG4gICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoQ09OVEVOVF9FRElUQUJMRSwgVFJVRSk7XG4gIH1cblxuICBpc0VkaXRhYmxlKCkge1xuICAgIGNvbnN0IGNvbnRlbnRFZGl0YWJsZUF0dHJpYnV0ZSA9IHRoaXMuaGFzQXR0cmlidXRlKENPTlRFTlRfRURJVEFCTEUpLFxuICAgICAgICAgIGVkaXRhYmxlID0gY29udGVudEVkaXRhYmxlQXR0cmlidXRlOyAvLy9cblxuICAgIHJldHVybiBlZGl0YWJsZTtcbiAgfVxuXG4gIGRpZE1vdW50KCkge1xuICAgIC8vL1xuICB9XG5cbiAgd2lsbFVubW91bnQoKSB7XG4gICAgY29uc3QgZWRpdGFibGUgPSB0aGlzLmlzRWRpdGFibGUoKTtcblxuICAgIGlmIChlZGl0YWJsZSkge1xuICAgICAgdGhpcy5yZXNldCgpO1xuICAgIH1cbiAgfVxuXG4gIHBhcmVudENvbnRleHQoKSB7XG4gICAgY29uc3QgaXNFZGl0YWJsZSA9IHRoaXMuaXNFZGl0YWJsZS5iaW5kKHRoaXMpLFxuICAgICAgICAgIGVkaXROYW1lU3BhbiA9IHRoaXMuZWRpdC5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICByZXNldE5hbWVTcGFuID0gdGhpcy5yZXNldC5iaW5kKHRoaXMpLCAvLy9cbiAgICAgICAgICBnZXROYW1lU3Bhbk5hbWUgPSB0aGlzLmdldE5hbWUuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgc2V0TmFtZVNwYW5OYW1lID0gdGhpcy5zZXROYW1lLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIG9uQ3VzdG9tTmFtZVNwYW5DYW5jZWwgPSB0aGlzLm9uQ3VzdG9tQ2FuY2VsLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIG9uQ3VzdG9tTmFtZVNwYW5DaGFuZ2UgPSB0aGlzLm9uQ3VzdG9tQ2hhbmdlLmJpbmQodGhpcyksIC8vL1xuICAgICAgICAgIG9mZkN1c3RvbU5hbWVTcGFuQ2FuY2VsID0gdGhpcy5vZmZDdXN0b21DYW5jZWwuYmluZCh0aGlzKSwgLy8vXG4gICAgICAgICAgb2ZmQ3VzdG9tTmFtZVNwYW5DaGFuZ2UgPSB0aGlzLm9mZkN1c3RvbUNoYW5nZS5iaW5kKHRoaXMpOyAvLy9cblxuICAgIHJldHVybiAoe1xuICAgICAgaXNFZGl0YWJsZSxcbiAgICAgIGVkaXROYW1lU3BhbixcbiAgICAgIHJlc2V0TmFtZVNwYW4sXG4gICAgICBnZXROYW1lU3Bhbk5hbWUsXG4gICAgICBzZXROYW1lU3Bhbk5hbWUsXG4gICAgICBvbkN1c3RvbU5hbWVTcGFuQ2FuY2VsLFxuICAgICAgb25DdXN0b21OYW1lU3BhbkNoYW5nZSxcbiAgICAgIG9mZkN1c3RvbU5hbWVTcGFuQ2FuY2VsLFxuICAgICAgb2ZmQ3VzdG9tTmFtZVNwYW5DaGFuZ2VcbiAgICB9KTtcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJzcGFuXCI7ICAvLy9cblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcIm5hbWVcIlxuICB9O1xufVxuXG5PYmplY3QuYXNzaWduKE5hbWVTcGFuLnByb3RvdHlwZSwgZm9jdXNNaXhpbnMpO1xuT2JqZWN0LmFzc2lnbihOYW1lU3Bhbi5wcm90b3R5cGUsIG5hbWVTcGFuTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKE5hbWVTcGFuKWBcblxuICBib3JkZXI6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXG4gIFtjb250ZW50RWRpdGFibGVdIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgICBwYWRkaW5nOiA0cHg7XG4gIH1cbiAgXG5gO1xuIl0sIm5hbWVzIjpbImZpcnN0IiwiYXJyYXlVdGlsaXRpZXMiLCJFTlRFUl9LRVlfQ09ERSIsIkVTQ0FQRV9LRVlfQ09ERSIsImtleUNvZGVzIiwiTmFtZVNwYW4iLCJFbGVtZW50Iiwia2V5RG93bkhhbmRsZXIiLCJldmVudCIsImVsZW1lbnQiLCJrZXlDb2RlIiwiY3VzdG9tRXZlbnRUeXBlIiwiQ0hBTkdFX0NVU1RPTV9FVkVOVF9UWVBFIiwiY2FsbEN1c3RvbUhhbmRsZXJzIiwicHJldmVudERlZmF1bHQiLCJDQU5DRUxfQ1VTVE9NX0VWRU5UX1RZUEUiLCJnZXROYW1lIiwiaHRtbCIsIm5hbWUiLCJzZXROYW1lIiwiZG9tRWxlbWVudCIsImdldERPTUVsZW1lbnQiLCJmaXJzdENoaWxkIiwidGV4dE5vZGUiLCJkb2N1bWVudCIsImNyZWF0ZVRleHROb2RlIiwiYXBwZW5kQ2hpbGQiLCJub2RlVmFsdWUiLCJlZGl0IiwiZm9jdXMiLCJhZGRBdHRyaWJ1dGUiLCJDT05URU5UX0VESVRBQkxFIiwiVFJVRSIsIm9uS2V5RG93biIsInJhbmdlIiwiY3JlYXRlUmFuZ2UiLCJzZWxlY3Rpb24iLCJ3aW5kb3ciLCJnZXRTZWxlY3Rpb24iLCJodG1sTGVuZ3RoIiwibGVuZ3RoIiwiY2hpbGROb2RlcyIsImZpcnN0Q2hpbGROb2RlIiwic2V0U3RhcnQiLCJzZXRFbmQiLCJyZW1vdmVBbGxSYW5nZXMiLCJhZGRSYW5nZSIsInJlc2V0Iiwib2ZmS2V5RG93biIsInJlbW92ZUF0dHJpYnV0ZSIsImlzRWRpdGFibGUiLCJjb250ZW50RWRpdGFibGVBdHRyaWJ1dGUiLCJoYXNBdHRyaWJ1dGUiLCJlZGl0YWJsZSIsImRpZE1vdW50Iiwid2lsbFVubW91bnQiLCJwYXJlbnRDb250ZXh0IiwiYmluZCIsImVkaXROYW1lU3BhbiIsInJlc2V0TmFtZVNwYW4iLCJnZXROYW1lU3Bhbk5hbWUiLCJzZXROYW1lU3Bhbk5hbWUiLCJvbkN1c3RvbU5hbWVTcGFuQ2FuY2VsIiwib25DdXN0b21DYW5jZWwiLCJvbkN1c3RvbU5hbWVTcGFuQ2hhbmdlIiwib25DdXN0b21DaGFuZ2UiLCJvZmZDdXN0b21OYW1lU3BhbkNhbmNlbCIsIm9mZkN1c3RvbUNhbmNlbCIsIm9mZkN1c3RvbU5hbWVTcGFuQ2hhbmdlIiwib2ZmQ3VzdG9tQ2hhbmdlIiwidGFnTmFtZSIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiZm9jdXNNaXhpbnMiLCJuYW1lU3Bhbk1peGlucyIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBZ0pBOzs7ZUFBQTs7O3NFQTlJc0I7MkJBRW1CO3NCQUNjO2lFQUU1QjsyQkFFWTtrQ0FDMEI7Ozs7OztBQUVqRSxNQUFNLEVBQUVBLEtBQUssRUFBRSxHQUFHQyx5QkFBYyxFQUMxQixFQUFFQyxjQUFjLEVBQUVDLGVBQWUsRUFBRSxHQUFHQyxtQkFBUTtBQUVwRCxNQUFNQyxpQkFBaUJDLGFBQU87SUFDNUJDLGlCQUFpQixDQUFDQyxPQUFPQztRQUN2QixNQUFNLEVBQUVDLE9BQU8sRUFBRSxHQUFHRjtRQUVwQixJQUFJRSxZQUFZUixnQkFBZ0I7WUFDOUIsTUFBTVMsa0JBQWtCQywwQ0FBd0I7WUFFaEQsSUFBSSxD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