@kaspernj/api-maker 1.0.2058 → 1.0.2060
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.
- package/build/api.d.ts +89 -14
- package/build/api.d.ts.map +1 -1
- package/build/api.js +90 -15
- package/build/attribute-not-loaded-error.d.ts.map +1 -1
- package/build/attribute-not-loaded-error.js +0 -1
- package/build/base-component.d.ts.map +1 -1
- package/build/base-component.js +0 -1
- package/build/base-error.d.ts.map +1 -1
- package/build/base-error.js +3 -4
- package/build/base-model/attribute.d.ts +5 -15
- package/build/base-model/attribute.d.ts.map +1 -1
- package/build/base-model/attribute.js +5 -16
- package/build/base-model/column.d.ts +1 -3
- package/build/base-model/column.d.ts.map +1 -1
- package/build/base-model/column.js +1 -4
- package/build/base-model/reflection.d.ts +24 -12
- package/build/base-model/reflection.d.ts.map +1 -1
- package/build/base-model/reflection.js +12 -13
- package/build/base-model/scope.d.ts +9 -3
- package/build/base-model/scope.d.ts.map +1 -1
- package/build/base-model/scope.js +5 -4
- package/build/base-model.js +9 -11
- package/build/bootstrap/attribute-row.d.ts.map +1 -1
- package/build/bootstrap/attribute-row.js +76 -75
- package/build/bootstrap/attribute-rows.d.ts.map +1 -1
- package/build/bootstrap/attribute-rows.js +12 -11
- package/build/bootstrap/card.d.ts.map +1 -1
- package/build/bootstrap/card.js +62 -58
- package/build/bootstrap/checkbox.d.ts.map +1 -1
- package/build/bootstrap/checkbox.js +32 -31
- package/build/bootstrap/checkboxes.d.ts.map +1 -1
- package/build/bootstrap/checkboxes.js +102 -95
- package/build/bootstrap/index.d.ts.map +1 -1
- package/build/bootstrap/index.js +0 -1
- package/build/bootstrap/input.d.ts.map +1 -1
- package/build/bootstrap/input.js +55 -54
- package/build/bootstrap/invalid-feedback.d.ts.map +1 -1
- package/build/bootstrap/invalid-feedback.js +3 -4
- package/build/bootstrap/paginate.d.ts.map +1 -1
- package/build/bootstrap/paginate.js +86 -82
- package/build/bootstrap/radio-buttons.d.ts.map +1 -1
- package/build/bootstrap/radio-buttons.js +16 -17
- package/build/bootstrap/select.d.ts.map +1 -1
- package/build/bootstrap/select.js +14 -15
- package/build/bootstrap/sort-link.d.ts.map +1 -1
- package/build/bootstrap/sort-link.js +55 -51
- package/build/cable-connection-pool.d.ts.map +1 -1
- package/build/cable-connection-pool.js +22 -21
- package/build/cable-subscription-pool.d.ts.map +1 -1
- package/build/cable-subscription-pool.js +53 -54
- package/build/cable-subscription.d.ts.map +1 -1
- package/build/cable-subscription.js +0 -1
- package/build/cache-key-generator.d.ts.map +1 -1
- package/build/cache-key-generator.js +0 -1
- package/build/can-can.d.ts.map +1 -1
- package/build/can-can.js +26 -25
- package/build/channels-consumer.d.ts.map +1 -1
- package/build/channels-consumer.js +0 -1
- package/build/collection-loader.d.ts.map +1 -1
- package/build/collection-loader.js +0 -1
- package/build/collection.d.ts.map +1 -1
- package/build/collection.js +1 -2
- package/build/command-submit-data.d.ts.map +1 -1
- package/build/command-submit-data.js +4 -5
- package/build/commands-pool.d.ts.map +1 -1
- package/build/commands-pool.js +49 -50
- package/build/compose.d.ts.map +1 -1
- package/build/compose.js +0 -1
- package/build/config.d.ts +5 -1
- package/build/config.d.ts.map +1 -1
- package/build/config.js +5 -2
- package/build/custom-error.d.ts.map +1 -1
- package/build/custom-error.js +0 -1
- package/build/data-set-to-attributes.d.ts.map +1 -1
- package/build/data-set-to-attributes.js +0 -1
- package/build/deserializer.d.ts.map +1 -1
- package/build/deserializer.js +0 -1
- package/build/destroy-error.d.ts.map +1 -1
- package/build/destroy-error.js +0 -1
- package/build/devise.d.ts +2 -1
- package/build/devise.d.ts.map +1 -1
- package/build/devise.js +2 -2
- package/build/draggable-sort/controller.d.ts.map +1 -1
- package/build/draggable-sort/controller.js +72 -73
- package/build/draggable-sort/index.d.ts.map +1 -1
- package/build/draggable-sort/index.js +54 -50
- package/build/draggable-sort/item.d.ts.map +1 -1
- package/build/draggable-sort/item.js +127 -123
- package/build/error-logger.d.ts.map +1 -1
- package/build/error-logger.js +4 -5
- package/build/error-messages.d.ts.map +1 -1
- package/build/error-messages.js +0 -1
- package/build/event-connection.d.ts.map +1 -1
- package/build/event-connection.js +9 -10
- package/build/event-emitter-listener.d.ts.map +1 -1
- package/build/event-emitter-listener.js +0 -1
- package/build/event-model-class.d.ts.map +1 -1
- package/build/event-model-class.js +9 -7
- package/build/events.d.ts.map +1 -1
- package/build/events.js +0 -1
- package/build/form.d.ts.map +1 -1
- package/build/form.js +38 -34
- package/build/history-expo.d.ts.map +1 -1
- package/build/history-expo.js +0 -1
- package/build/history-react-native.d.ts.map +1 -1
- package/build/history-react-native.js +0 -1
- package/build/history.d.ts +1 -1
- package/build/history.d.ts.map +1 -1
- package/build/history.js +0 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +0 -1
- package/build/inputs/attachment.d.ts.map +1 -1
- package/build/inputs/attachment.js +63 -59
- package/build/inputs/auto-submit.d.ts.map +1 -1
- package/build/inputs/auto-submit.js +0 -1
- package/build/inputs/checkbox.d.ts.map +1 -1
- package/build/inputs/checkbox.js +60 -56
- package/build/inputs/checkboxes.d.ts.map +1 -1
- package/build/inputs/checkboxes.js +58 -57
- package/build/inputs/id-for-component.d.ts.map +1 -1
- package/build/inputs/id-for-component.js +0 -1
- package/build/inputs/input-wrapper.d.ts.map +1 -1
- package/build/inputs/input-wrapper.js +0 -1
- package/build/inputs/input.d.ts.map +1 -1
- package/build/inputs/input.js +138 -134
- package/build/inputs/money.d.ts.map +1 -1
- package/build/inputs/money.js +100 -96
- package/build/inputs/name-for-component.d.ts.map +1 -1
- package/build/inputs/name-for-component.js +0 -1
- package/build/inputs/select.d.ts.map +1 -1
- package/build/inputs/select.js +57 -53
- package/build/instance-of-class-name.d.ts.map +1 -1
- package/build/instance-of-class-name.js +0 -1
- package/build/is-expo.d.ts.map +1 -1
- package/build/is-expo.js +0 -1
- package/build/key-value-store.d.ts.map +1 -1
- package/build/key-value-store.js +0 -1
- package/build/link.d.ts.map +1 -1
- package/build/link.js +49 -45
- package/build/logger.d.ts.map +1 -1
- package/build/logger.js +2 -3
- package/build/merge-styles.d.ts.map +1 -1
- package/build/merge-styles.js +0 -1
- package/build/modal.d.ts.map +1 -1
- package/build/modal.js +3 -4
- package/build/model-class-require.d.ts +5 -2
- package/build/model-class-require.d.ts.map +1 -1
- package/build/model-class-require.js +8 -4
- package/build/model-events.d.ts.map +1 -1
- package/build/model-events.js +0 -1
- package/build/model-name.d.ts.map +1 -1
- package/build/model-name.js +2 -3
- package/build/model-prop-type.d.ts.map +1 -1
- package/build/model-prop-type.js +0 -1
- package/build/model-recipes-loader.d.ts.map +1 -1
- package/build/model-recipes-loader.js +0 -1
- package/build/model-recipes-model-loader.d.ts.map +1 -1
- package/build/model-recipes-model-loader.js +0 -1
- package/build/models-response-reader.d.ts +3 -3
- package/build/models-response-reader.d.ts.map +1 -1
- package/build/models-response-reader.js +0 -1
- package/build/models.d.ts.map +1 -1
- package/build/models.js +0 -1
- package/build/money-formatter.d.ts.map +1 -1
- package/build/money-formatter.js +0 -1
- package/build/not-loaded-error.d.ts.map +1 -1
- package/build/not-loaded-error.js +0 -1
- package/build/params.d.ts +24 -7
- package/build/params.d.ts.map +1 -1
- package/build/params.js +18 -5
- package/build/preloaded.d.ts +8 -3
- package/build/preloaded.d.ts.map +1 -1
- package/build/preloaded.js +5 -1
- package/build/resize-observer.d.ts.map +1 -1
- package/build/resize-observer.js +0 -1
- package/build/rest-props-validator.d.ts.map +1 -1
- package/build/rest-props-validator.js +0 -1
- package/build/result.d.ts +18 -26
- package/build/result.d.ts.map +1 -1
- package/build/result.js +8 -23
- package/build/router/route.d.ts.map +1 -1
- package/build/router/route.js +167 -163
- package/build/router/switch.d.ts.map +1 -1
- package/build/router/switch.js +49 -45
- package/build/router.d.ts.map +1 -1
- package/build/router.js +23 -22
- package/build/routes-native.d.ts.map +1 -1
- package/build/routes-native.js +0 -1
- package/build/routes.d.ts.map +1 -1
- package/build/routes.js +0 -1
- package/build/run-last.d.ts.map +1 -1
- package/build/run-last.js +9 -10
- package/build/serializer.d.ts.map +1 -1
- package/build/serializer.js +0 -1
- package/build/services.d.ts.map +1 -1
- package/build/services.js +0 -1
- package/build/session-status-updater.d.ts.map +1 -1
- package/build/session-status-updater.js +7 -8
- package/build/source-maps-loader.js +1 -2
- package/build/super-admin/config-reader.d.ts.map +1 -1
- package/build/super-admin/config-reader.js +0 -1
- package/build/super-admin/edit-page/edit-attribute-checkbox.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute-checkbox.js +42 -38
- package/build/super-admin/edit-page/edit-attribute-content.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute-content.js +42 -38
- package/build/super-admin/edit-page/edit-attribute-input.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute-input.js +48 -44
- package/build/super-admin/edit-page/edit-attribute.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute.js +26 -25
- package/build/super-admin/edit-page.d.ts.map +1 -1
- package/build/super-admin/edit-page.js +70 -66
- package/build/super-admin/has-edit-config.d.ts.map +1 -1
- package/build/super-admin/has-edit-config.js +0 -1
- package/build/super-admin/index-page.d.ts.map +1 -1
- package/build/super-admin/index-page.js +10 -9
- package/build/super-admin/index.d.ts.map +1 -1
- package/build/super-admin/index.js +34 -32
- package/build/super-admin/layout/header/index.d.ts +1 -0
- package/build/super-admin/layout/header/index.d.ts.map +1 -1
- package/build/super-admin/layout/header/index.js +115 -79
- package/build/super-admin/layout/index.d.ts.map +1 -1
- package/build/super-admin/layout/index.js +48 -44
- package/build/super-admin/layout/menu/index.d.ts +1 -0
- package/build/super-admin/layout/menu/index.d.ts.map +1 -1
- package/build/super-admin/layout/menu/index.js +107 -62
- package/build/super-admin/layout/menu/menu-content.d.ts.map +1 -1
- package/build/super-admin/layout/menu/menu-content.js +14 -13
- package/build/super-admin/layout/menu/menu-item.d.ts.map +1 -1
- package/build/super-admin/layout/menu/menu-item.js +46 -42
- package/build/super-admin/layout/no-access.d.ts.map +1 -1
- package/build/super-admin/layout/no-access.js +0 -1
- package/build/super-admin/model-class-table.d.ts.map +1 -1
- package/build/super-admin/model-class-table.js +39 -35
- package/build/super-admin/models.d.ts.map +1 -1
- package/build/super-admin/models.js +0 -1
- package/build/super-admin/show-nav.d.ts.map +1 -1
- package/build/super-admin/show-nav.js +14 -13
- package/build/super-admin/show-page/belongs-to-attribute-row.d.ts.map +1 -1
- package/build/super-admin/show-page/belongs-to-attribute-row.js +0 -1
- package/build/super-admin/show-page/index.d.ts.map +1 -1
- package/build/super-admin/show-page/index.js +83 -82
- package/build/super-admin/show-reflection-actions.d.ts.map +1 -1
- package/build/super-admin/show-reflection-actions.js +27 -26
- package/build/super-admin/show-reflection-link.d.ts.map +1 -1
- package/build/super-admin/show-reflection-link.js +9 -7
- package/build/super-admin/show-reflection-page.d.ts.map +1 -1
- package/build/super-admin/show-reflection-page.js +22 -21
- package/build/table/column-content.d.ts.map +1 -1
- package/build/table/column-content.js +47 -48
- package/build/table/column-identifier.d.ts.map +1 -1
- package/build/table/column-identifier.js +0 -1
- package/build/table/column-visible.d.ts.map +1 -1
- package/build/table/column-visible.js +0 -1
- package/build/table/components/column.d.ts.map +1 -1
- package/build/table/components/column.js +0 -1
- package/build/table/components/flat-list.d.ts.map +1 -1
- package/build/table/components/flat-list.js +0 -1
- package/build/table/components/header.d.ts.map +1 -1
- package/build/table/components/header.js +0 -1
- package/build/table/components/row.d.ts.map +1 -1
- package/build/table/components/row.js +0 -1
- package/build/table/filters/attribute-element.d.ts.map +1 -1
- package/build/table/filters/attribute-element.js +24 -20
- package/build/table/filters/filter-form.d.ts.map +1 -1
- package/build/table/filters/filter-form.js +253 -250
- package/build/table/filters/filter.d.ts.map +1 -1
- package/build/table/filters/filter.js +31 -27
- package/build/table/filters/index.d.ts.map +1 -1
- package/build/table/filters/index.js +82 -78
- package/build/table/filters/load-search-modal.d.ts.map +1 -1
- package/build/table/filters/load-search-modal.js +40 -35
- package/build/table/filters/reflection-element.d.ts.map +1 -1
- package/build/table/filters/reflection-element.js +19 -15
- package/build/table/filters/save-search-modal.d.ts.map +1 -1
- package/build/table/filters/save-search-modal.js +23 -21
- package/build/table/filters/scope-element.d.ts.map +1 -1
- package/build/table/filters/scope-element.js +22 -18
- package/build/table/header-column-content.d.ts.map +1 -1
- package/build/table/header-column-content.js +19 -18
- package/build/table/header-column.d.ts.map +1 -1
- package/build/table/header-column.js +73 -69
- package/build/table/header-select.d.ts.map +1 -1
- package/build/table/header-select.js +33 -29
- package/build/table/model-callback-args.d.ts.map +1 -1
- package/build/table/model-callback-args.js +0 -1
- package/build/table/model-column.d.ts.map +1 -1
- package/build/table/model-column.js +36 -35
- package/build/table/model-row.d.ts.map +1 -1
- package/build/table/model-row.js +55 -51
- package/build/table/select-calculator.d.ts.map +1 -1
- package/build/table/select-calculator.js +0 -1
- package/build/table/settings/column-row.d.ts.map +1 -1
- package/build/table/settings/column-row.js +59 -55
- package/build/table/settings/download-action.d.ts.map +1 -1
- package/build/table/settings/download-action.js +26 -22
- package/build/table/settings/index.d.ts.map +1 -1
- package/build/table/settings/index.js +28 -24
- package/build/table/table-settings.d.ts.map +1 -1
- package/build/table/table-settings.js +152 -153
- package/build/table/table.d.ts.map +1 -1
- package/build/table/table.js +509 -502
- package/build/table/use-sorting.d.ts.map +1 -1
- package/build/table/use-sorting.js +0 -1
- package/build/table/widths.d.ts.map +1 -1
- package/build/table/widths.js +0 -1
- package/build/table/worker-plugins-check-all-checkbox.d.ts.map +1 -1
- package/build/table/worker-plugins-check-all-checkbox.js +64 -60
- package/build/table/worker-plugins-checkbox.d.ts.map +1 -1
- package/build/table/worker-plugins-checkbox.js +66 -62
- package/build/translated-attributes.d.ts.map +1 -1
- package/build/translated-attributes.js +0 -1
- package/build/translated-collections.d.ts.map +1 -1
- package/build/translated-collections.js +0 -1
- package/build/updated-attribute.d.ts.map +1 -1
- package/build/updated-attribute.js +5 -6
- package/build/url-encode.d.ts.map +1 -1
- package/build/url-encode.js +0 -1
- package/build/use-breakpoint.d.ts.map +1 -1
- package/build/use-breakpoint.js +2 -2
- package/build/use-can-can.d.ts.map +1 -1
- package/build/use-can-can.js +0 -1
- package/build/use-collection.d.ts.map +1 -1
- package/build/use-collection.js +1 -2
- package/build/use-created-event.d.ts.map +1 -1
- package/build/use-created-event.js +3 -4
- package/build/use-current-user-context.d.ts.map +1 -1
- package/build/use-current-user-context.js +5 -6
- package/build/use-current-user.d.ts.map +1 -1
- package/build/use-current-user.js +3 -4
- package/build/use-destroyed-event.d.ts.map +1 -1
- package/build/use-destroyed-event.js +4 -5
- package/build/use-event-emitter.d.ts.map +1 -1
- package/build/use-event-emitter.js +0 -1
- package/build/use-event-listener.d.ts.map +1 -1
- package/build/use-event-listener.js +0 -1
- package/build/use-input.d.ts.map +1 -1
- package/build/use-input.js +0 -1
- package/build/use-model-event.d.ts.map +1 -1
- package/build/use-model-event.js +0 -1
- package/build/use-model.d.ts.map +1 -1
- package/build/use-model.js +1 -2
- package/build/use-resize-observer.d.ts.map +1 -1
- package/build/use-resize-observer.js +3 -4
- package/build/use-router.d.ts.map +1 -1
- package/build/use-router.js +11 -5
- package/build/use-screen-layout.d.ts.map +1 -1
- package/build/use-screen-layout.js +16 -7
- package/build/use-styles.d.ts.map +1 -1
- package/build/use-styles.js +3 -3
- package/build/use-updated-event.d.ts.map +1 -1
- package/build/use-updated-event.js +5 -4
- package/build/use-validation-errors.d.ts.map +1 -1
- package/build/use-validation-errors.js +1 -1
- package/build/utils/button.d.ts.map +1 -1
- package/build/utils/button.js +71 -67
- package/build/utils/card.d.ts.map +1 -1
- package/build/utils/card.js +19 -18
- package/build/utils/checkbox.d.ts.map +1 -1
- package/build/utils/checkbox.js +40 -36
- package/build/utils/checkboxes.d.ts.map +1 -1
- package/build/utils/checkboxes.js +95 -87
- package/build/utils/default-style.d.ts.map +1 -1
- package/build/utils/default-style.js +2 -3
- package/build/utils/header.d.ts.map +1 -1
- package/build/utils/header.js +0 -1
- package/build/utils/icon.d.ts.map +1 -1
- package/build/utils/icon.js +0 -1
- package/build/utils/invalid-feedback.d.ts.map +1 -1
- package/build/utils/invalid-feedback.js +9 -8
- package/build/utils/modal.d.ts.map +1 -1
- package/build/utils/modal.js +7 -5
- package/build/utils/text.d.ts.map +1 -1
- package/build/utils/text.js +0 -1
- package/build/validation-error.d.ts.map +1 -1
- package/build/validation-error.js +19 -20
- package/build/validation-errors.d.ts.map +1 -1
- package/build/validation-errors.js +10 -11
- package/build/with-api-maker.d.ts.map +1 -1
- package/build/with-api-maker.js +0 -1
- package/build/with-collection.d.ts.map +1 -1
- package/build/with-collection.js +0 -1
- package/build/with-current-user.d.ts.map +1 -1
- package/build/with-current-user.js +0 -1
- package/build/with-model.d.ts.map +1 -1
- package/build/with-model.js +0 -1
- package/build/with-router.d.ts +5 -2
- package/build/with-router.d.ts.map +1 -1
- package/build/with-router.js +10 -6
- package/package.json +3 -2
|
@@ -4,6 +4,78 @@ const diggerize_1 = require("diggerize");
|
|
|
4
4
|
const eventemitter3_1 = require("eventemitter3");
|
|
5
5
|
class DraggableSortController {
|
|
6
6
|
constructor({ data, events, keyExtractor }) {
|
|
7
|
+
this.getEvents = () => this.events;
|
|
8
|
+
this.getItemDataForItem = (item) => this.getItemDataForIndex(this.data.indexOf(item));
|
|
9
|
+
this.getItemDataForKey = (key) => this.itemData.find((itemDataI) => (0, diggerize_1.digg)(itemDataI, "key") == key);
|
|
10
|
+
this.getItemDataForIndex = (index) => (0, diggerize_1.digg)(this, "itemData", index);
|
|
11
|
+
this.onDragStart = ({ item, itemIndex }) => {
|
|
12
|
+
if (item) {
|
|
13
|
+
this.draggedItem = item;
|
|
14
|
+
this.draggedItemData = this.getItemDataForIndex(itemIndex);
|
|
15
|
+
this.draggedItemIndex = itemIndex;
|
|
16
|
+
this.draggedItemPosition = this.draggedItemData.position;
|
|
17
|
+
this.events.emit("onDragStart", { item, itemData: this.draggedItemData });
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
this.onDragEnd = () => {
|
|
21
|
+
const itemData = this.draggedItemData;
|
|
22
|
+
const fromIndex = itemData.index;
|
|
23
|
+
const fromPosition = (0, diggerize_1.digg)(this, "draggedItemPosition");
|
|
24
|
+
const toPosition = this.draggedItemNewPosition;
|
|
25
|
+
const fromItem = this.draggedItem;
|
|
26
|
+
const toItem = this.draggedOverItem;
|
|
27
|
+
const callbackArgs = { item: itemData.item, itemData, fromIndex, fromItem, fromPosition, toItem, toPosition };
|
|
28
|
+
this.draggedItemData.events.emit("resetPosition", {
|
|
29
|
+
callback: () => {
|
|
30
|
+
this.events.emit("onDragEndAnimation", callbackArgs);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
this.draggedItem = null;
|
|
34
|
+
this.draggedItemData = null;
|
|
35
|
+
this.draggedItemNewPosition = null;
|
|
36
|
+
this.draggedOverItem = null;
|
|
37
|
+
this.draggedOverItemData = null;
|
|
38
|
+
this.events.emit("onDragEnd", callbackArgs);
|
|
39
|
+
};
|
|
40
|
+
this.onItemLayout = ({ events, index, item, layout }) => {
|
|
41
|
+
if (!(index in this.itemData))
|
|
42
|
+
throw new Error(`Item not found for index ${index}`);
|
|
43
|
+
const itemData = this.itemData[index];
|
|
44
|
+
itemData.layout = layout;
|
|
45
|
+
if (!itemData.initialLayout) {
|
|
46
|
+
itemData.baseX = layout.x;
|
|
47
|
+
itemData.events = events;
|
|
48
|
+
itemData.initialLayout = layout;
|
|
49
|
+
itemData.key = this.keyExtractor(item);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
this.onMove = ({ gestate }) => {
|
|
53
|
+
// Send move-event to the item being dragged so it will actually move around
|
|
54
|
+
this.draggedItemData?.events?.emit("move", { gestate });
|
|
55
|
+
const moveX = gestate.dx + this.initialDragPosition.x;
|
|
56
|
+
for (const itemIndex in this.itemData) {
|
|
57
|
+
const itemData = this.getItemDataForIndex(itemIndex);
|
|
58
|
+
const baseX = (0, diggerize_1.digg)(itemData, "baseX");
|
|
59
|
+
let smallestWidth = this.draggedItemData.layout.width;
|
|
60
|
+
if (itemData.layout.width < smallestWidth)
|
|
61
|
+
smallestWidth = itemData.layout.width;
|
|
62
|
+
if (moveX > baseX && moveX < (baseX + smallestWidth) && itemIndex != this.draggedItemData.index) {
|
|
63
|
+
this.draggedOverItem = itemData.item;
|
|
64
|
+
this.draggedOverItemData = itemData;
|
|
65
|
+
const positionOfDraggedItem = this.currentOrder.indexOf(this.draggedItemData.item);
|
|
66
|
+
const positionOfOverItem = this.currentOrder.indexOf(this.draggedOverItemData.item);
|
|
67
|
+
this.currentOrder[positionOfDraggedItem] = this.draggedOverItemData.item;
|
|
68
|
+
this.currentOrder[positionOfOverItem] = this.draggedItemData.item;
|
|
69
|
+
this.draggedItemData.position = positionOfOverItem;
|
|
70
|
+
this.draggedOverItemData.position = positionOfDraggedItem;
|
|
71
|
+
this.updatePositionOfItems();
|
|
72
|
+
this.draggedItemNewPosition = positionOfOverItem;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
this.setInitialDragPosition = (initialDragPosition) => {
|
|
77
|
+
this.initialDragPosition = initialDragPosition;
|
|
78
|
+
};
|
|
7
79
|
this.data = data;
|
|
8
80
|
this.currentOrder = [...data];
|
|
9
81
|
this.events = events || new eventemitter3_1.EventEmitter();
|
|
@@ -22,78 +94,6 @@ class DraggableSortController {
|
|
|
22
94
|
};
|
|
23
95
|
}
|
|
24
96
|
}
|
|
25
|
-
getEvents = () => this.events;
|
|
26
|
-
getItemDataForItem = (item) => this.getItemDataForIndex(this.data.indexOf(item));
|
|
27
|
-
getItemDataForKey = (key) => this.itemData.find((itemDataI) => (0, diggerize_1.digg)(itemDataI, "key") == key);
|
|
28
|
-
getItemDataForIndex = (index) => (0, diggerize_1.digg)(this, "itemData", index);
|
|
29
|
-
onDragStart = ({ item, itemIndex }) => {
|
|
30
|
-
if (item) {
|
|
31
|
-
this.draggedItem = item;
|
|
32
|
-
this.draggedItemData = this.getItemDataForIndex(itemIndex);
|
|
33
|
-
this.draggedItemIndex = itemIndex;
|
|
34
|
-
this.draggedItemPosition = this.draggedItemData.position;
|
|
35
|
-
this.events.emit("onDragStart", { item, itemData: this.draggedItemData });
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
onDragEnd = () => {
|
|
39
|
-
const itemData = this.draggedItemData;
|
|
40
|
-
const fromIndex = itemData.index;
|
|
41
|
-
const fromPosition = (0, diggerize_1.digg)(this, "draggedItemPosition");
|
|
42
|
-
const toPosition = this.draggedItemNewPosition;
|
|
43
|
-
const fromItem = this.draggedItem;
|
|
44
|
-
const toItem = this.draggedOverItem;
|
|
45
|
-
const callbackArgs = { item: itemData.item, itemData, fromIndex, fromItem, fromPosition, toItem, toPosition };
|
|
46
|
-
this.draggedItemData.events.emit("resetPosition", {
|
|
47
|
-
callback: () => {
|
|
48
|
-
this.events.emit("onDragEndAnimation", callbackArgs);
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
this.draggedItem = null;
|
|
52
|
-
this.draggedItemData = null;
|
|
53
|
-
this.draggedItemNewPosition = null;
|
|
54
|
-
this.draggedOverItem = null;
|
|
55
|
-
this.draggedOverItemData = null;
|
|
56
|
-
this.events.emit("onDragEnd", callbackArgs);
|
|
57
|
-
};
|
|
58
|
-
onItemLayout = ({ events, index, item, layout }) => {
|
|
59
|
-
if (!(index in this.itemData))
|
|
60
|
-
throw new Error(`Item not found for index ${index}`);
|
|
61
|
-
const itemData = this.itemData[index];
|
|
62
|
-
itemData.layout = layout;
|
|
63
|
-
if (!itemData.initialLayout) {
|
|
64
|
-
itemData.baseX = layout.x;
|
|
65
|
-
itemData.events = events;
|
|
66
|
-
itemData.initialLayout = layout;
|
|
67
|
-
itemData.key = this.keyExtractor(item);
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
onMove = ({ gestate }) => {
|
|
71
|
-
// Send move-event to the item being dragged so it will actually move around
|
|
72
|
-
this.draggedItemData?.events?.emit("move", { gestate });
|
|
73
|
-
const moveX = gestate.dx + this.initialDragPosition.x;
|
|
74
|
-
for (const itemIndex in this.itemData) {
|
|
75
|
-
const itemData = this.getItemDataForIndex(itemIndex);
|
|
76
|
-
const baseX = (0, diggerize_1.digg)(itemData, "baseX");
|
|
77
|
-
let smallestWidth = this.draggedItemData.layout.width;
|
|
78
|
-
if (itemData.layout.width < smallestWidth)
|
|
79
|
-
smallestWidth = itemData.layout.width;
|
|
80
|
-
if (moveX > baseX && moveX < (baseX + smallestWidth) && itemIndex != this.draggedItemData.index) {
|
|
81
|
-
this.draggedOverItem = itemData.item;
|
|
82
|
-
this.draggedOverItemData = itemData;
|
|
83
|
-
const positionOfDraggedItem = this.currentOrder.indexOf(this.draggedItemData.item);
|
|
84
|
-
const positionOfOverItem = this.currentOrder.indexOf(this.draggedOverItemData.item);
|
|
85
|
-
this.currentOrder[positionOfDraggedItem] = this.draggedOverItemData.item;
|
|
86
|
-
this.currentOrder[positionOfOverItem] = this.draggedItemData.item;
|
|
87
|
-
this.draggedItemData.position = positionOfOverItem;
|
|
88
|
-
this.draggedOverItemData.position = positionOfDraggedItem;
|
|
89
|
-
this.updatePositionOfItems();
|
|
90
|
-
this.draggedItemNewPosition = positionOfOverItem;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
setInitialDragPosition = (initialDragPosition) => {
|
|
95
|
-
this.initialDragPosition = initialDragPosition;
|
|
96
|
-
};
|
|
97
97
|
updatePositionOfItems() {
|
|
98
98
|
let currentPosition = 0;
|
|
99
99
|
for (const item of this.currentOrder) {
|
|
@@ -110,4 +110,3 @@ class DraggableSortController {
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
exports.default = DraggableSortController;
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsiZHJhZ2dhYmxlLXNvcnQvY29udHJvbGxlci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUE4QjtBQUM5QixpREFBMEM7QUFFMUMsTUFBcUIsdUJBQXVCO0lBQzFDLFlBQVksRUFBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBQztRQUN0QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtRQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxJQUFJLDRCQUFZLEVBQUUsQ0FBQTtRQUMxQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtRQUVoQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQTtRQUN2QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQTtRQUMzQixJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFBO1FBRWxDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFBO1FBQzNCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUE7UUFFL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUE7UUFFbEIsS0FBSyxNQUFNLFNBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxHQUFHO2dCQUN6QixLQUFLLEVBQUUsU0FBUztnQkFDaEIsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7Z0JBQ3JCLFFBQVEsRUFBRSxTQUFTO2FBQ3BCLENBQUE7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQzdCLGtCQUFrQixHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FB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QUFJLENBQUMsQ0FBQTtZQUU5QyxJQUFJLElBQUEsZ0JBQUksRUFBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLElBQUksSUFBQSxnQkFBSSxFQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsdUZBQXVGO2dCQUM5SixRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtvQkFDckMsQ0FBQyxFQUFFLGVBQWU7b0JBQ2xCLENBQUMsRUFBRSxDQUFDO2lCQUNMLENBQUMsQ0FBQTtZQUNKLENBQUM7WUFFRCxRQUFRLENBQUMsS0FBSyxHQUFHLGVBQWUsQ0FBQTtZQUNoQyxlQUFlLElBQUksSUFBQSxnQkFBSSxFQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDdEQsQ0FBQztJQUNILENBQUM7Q0FDRjtBQXJJRCwwQ0FxSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2RpZ2d9IGZyb20gXCJkaWdnZXJpemVcIlxuaW1wb3J0IHtFdmVudEVtaXR0ZXJ9IGZyb20gXCJldmVudGVtaXR0ZXIzXCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRHJhZ2dhYmxlU29ydENvbnRyb2xsZXIge1xuICBjb25zdHJ1Y3Rvcih7ZGF0YSwgZXZlbnRzLCBrZXlFeHRyYWN0b3J9KSB7XG4gICAgdGhpcy5kYXRhID0gZGF0YVxuICAgIHRoaXMuY3VycmVudE9yZGVyID0gWy4uLmRhdGFdXG4gICAgdGhpcy5ldmVudHMgPSBldmVudHMgfHwgbmV3IEV2ZW50RW1pdHRlcigpXG4gICAgdGhpcy5rZXlFeHRyYWN0b3IgPSBrZXlFeHRyYWN0b3JcblxuICAgIHRoaXMuZHJhZ2dlZEl0ZW0gPSBudWxsXG4gICAgdGhpcy5kcmFnZ2VkSXRlbURhdGEgPSBudWxsXG4gICAgdGhpcy5kcmFnZ2VkSXRlbU5ld1Bvc2l0aW9uID0gbnVsbFxuXG4gICAgdGhpcy5kcmFnZ2VkT3Zlckl0ZW0gPSBudWxsXG4gICAgdGhpcy5kcmFnZ2VkT3Zlckl0ZW1EYXRhID0gbnVsbFxuXG4gICAgdGhpcy5pdGVtRGF0YSA9IHt9XG5cbiAgICBmb3IgKGNvbnN0IGl0ZW1JbmRleCBpbiBkYXRhKSB7XG4gICAgICB0aGlzLml0ZW1EYXRhW2l0ZW1JbmRleF0gPSB7XG4gICAgICAgIGluZGV4OiBpdGVtSW5kZXgsXG4gICAgICAgIGl0ZW06IGRhdGFbaXRlbUluZGV4XSxcbiAgICAgICAgcG9zaXRpb246IGl0ZW1JbmRleFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldEV2ZW50cyA9ICgpID0+IHRoaXMuZXZlbnRzXG4gIGdldEl0ZW1EYXRhRm9ySXRlbSA9IChpdGVtKSA9PiB0aGlzLmdldEl0ZW1EYXRhRm9ySW5kZXgodGhpcy5kYXRhLmluZGV4T2YoaXRlbSkpXG4gIGdldEl0ZW1EYXRhRm9yS2V5ID0gKGtleSkgPT4gdGhpcy5pdGVtRGF0YS5maW5kKChpdGVtRGF0YUkpID0+IGRpZ2coaXRlbURhdGFJLCBcImtleVwiKSA9PSBrZXkpXG4gIGdldEl0ZW1EYXRhRm9ySW5kZXggPSAoaW5kZXgpID0+IGRpZ2codGhpcywgXCJpdGVtRGF0YVwiLCBpbmRleClcblxuICBvbkRyYWdTdGFydCA9ICh7aXRlbSwgaXRlbUluZGV4fSkgPT4ge1xuICAgIGlmIChpdGVtKSB7XG4gICAgICB0aGlzLmRyYWdnZWRJdGVtID0gaXRlbVxuICAgICAgdGhpcy5kcmFnZ2VkSXRlbURhdGEgPSB0aGlzLmdldEl0ZW1EYXRhRm9ySW5kZXgoaXRlbUluZGV4KVxuICAgICAgdGhpcy5kcmFnZ2VkSXRlbUluZGV4ID0gaXRlbUluZGV4XG4gICAgICB0aGlzLmRyYWdnZWRJdGVtUG9zaXRpb24gPSB0aGlzLmRyYWdnZWRJdGVtRGF0YS5wb3NpdGlvblxuICAgICAgdGhpcy5ldmVudHMuZW1pdChcIm9uRHJhZ1N0YXJ0XCIsIHtpdGVtLCBpdGVtRGF0YTogdGhpcy5kcmFnZ2VkSXRlbURhdGF9KVxuICAgIH1cbiAgfVxuXG4gIG9uRHJhZ0VuZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtRGF0YSA9IHRoaXMuZHJhZ2dlZEl0ZW1EYXRhXG4gICAgY29uc3QgZnJvbUluZGV4ID0gaXRlbURhdGEuaW5kZXhcbiAgICBjb25zdCBmcm9tUG9zaXRpb24gPSBkaWdnKHRoaXMsIFwiZHJhZ2dlZEl0ZW1Qb3NpdGlvblwiKVxuICAgIGNvbnN0IHRvUG9zaXRpb24gPSB0aGlzLmRyYWdnZWRJdGVtTmV3UG9zaXRpb25cbiAgICBjb25zdCBmcm9tSXRlbSA9IHRoaXMuZHJhZ2dlZEl0ZW1cbiAgICBjb25zdCB0b0l0ZW0gPSB0aGlzLmRyYWdnZWRPdmVySXRlbVxuICAgIGNvbnN0IGNhbGxiYWNrQXJncyA9IHtpdGVtOiBpdGVtRGF0YS5pdGVtLCBpdGVtRGF0YSwgZnJvbUluZGV4LCBmcm9tSXRlbSwgZnJvbVBvc2l0aW9uLCB0b0l0ZW0sIHRvUG9zaXRpb259XG5cbiAgICB0aGlzLmRyYWdnZWRJdGVtRGF0YS5ldmVudHMuZW1pdChcInJlc2V0UG9zaXRpb25cIiwge1xuICAgICAgY2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5ldmVudHMuZW1pdChcIm9uRHJhZ0VuZEFuaW1hdGlvblwiLCBjYWxsYmFja0FyZ3MpXG4gICAgICB9XG4gICAgfSlcblxuICAgIHRoaXMuZHJhZ2dlZEl0ZW0gPSBudWxsXG4gICAgdGhpcy5kcmFnZ2VkSXRlbURhdGEgPSBudWxsXG4gICAgdGhpcy5kcmFnZ2VkSXRlbU5ld1Bvc2l0aW9uID0gbnVsbFxuXG4gICAgdGhpcy5kcmFnZ2VkT3Zlckl0ZW0gPSBudWxsXG4gICAgdGhpcy5kcmFnZ2VkT3Zlckl0ZW1EYXRhID0gbnVsbFxuXG4gICAgdGhpcy5ldmVudHMuZW1pdChcIm9uRHJhZ0VuZFwiLCBjYWxsYmFja0FyZ3MpXG4gIH1cblxuICBvbkl0ZW1MYXlvdXQgPSAoe2V2ZW50cywgaW5kZXgsIGl0ZW0sIGxheW91dH0pID0+IHtcbiAgICBpZiAoIShpbmRleCBpbiB0aGlzLml0ZW1EYXRhKSkgdGhyb3cgbmV3IEVycm9yKGBJdGVtIG5vdCBmb3VuZCBmb3IgaW5kZXggJHtpbmRleH1gKVxuXG4gICAgY29uc3QgaXRlbURhdGEgPSB0aGlzLml0ZW1EYXRhW2luZGV4XVxuXG4gICAgaXRlbURhdGEubGF5b3V0ID0gbGF5b3V0XG5cbiAgICBpZiAoIWl0ZW1EYXRhLmluaXRpYWxMYXlvdXQpIHtcbiAgICAgIGl0ZW1EYXRhLmJhc2VYID0gbGF5b3V0LnhcbiAgICAgIGl0ZW1EYXRhLmV2ZW50cyA9IGV2ZW50c1xuICAgICAgaXRlbURhdGEuaW5pdGlhbExheW91dCA9IGxheW91dFxuICAgICAgaXRlbURhdGEua2V5ID0gdGhpcy5rZXlFeHRyYWN0b3IoaXRlbSlcbiAgICB9XG4gIH1cblxuICBvbk1vdmUgPSAoe2dlc3RhdGV9KSA9PiB7XG4gICAgLy8gU2VuZCBtb3ZlLWV2ZW50IHRvIHRoZSBpdGVtIGJlaW5nIGRyYWdnZWQgc28gaXQgd2lsbCBhY3R1YWxseSBtb3ZlIGFyb3VuZFxuICAgIHRoaXMuZHJhZ2dlZEl0ZW1EYXRhPy5ldmVudHM/LmVtaXQoXCJtb3ZlXCIsIHtnZXN0YXRlfSlcblxuICAgIGNvbnN0IG1vdmVYID0gZ2VzdGF0ZS5keCArIHRoaXMuaW5pdGlhbERyYWdQb3NpdGlvbi54XG5cbiAgICBmb3IgKGNvbnN0IGl0ZW1JbmRleCBpbiB0aGlzLml0ZW1EYXRhKSB7XG4gICAgICBjb25zdCBpdGVtRGF0YSA9IHRoaXMuZ2V0SXRlbURhdGFGb3JJbmRleChpdGVtSW5kZXgpXG4gICAgICBjb25zdCBiYXNlWCA9IGRpZ2coaXRlbURhdGEsIFwiYmFzZVhcIilcbiAgICAgIGxldCBzbWFsbGVzdFdpZHRoID0gdGhpcy5kcmFnZ2VkSXRlbURhdGEubGF5b3V0LndpZHRoXG5cbiAgICAgIGlmIChpdGVtRGF0YS5sYXlvdXQud2lkdGggPCBzbWFsbGVzdFdpZHRoKSBzbWFsbGVzdFdpZHRoID0gaXRlbURhdGEubGF5b3V0LndpZHRoXG5cbiAgICAgIGlmIChtb3ZlWCA+IGJhc2VYICYmIG1vdmVYIDwgKGJhc2VYICsgc21hbGxlc3RXaWR0aCkgJiYgaXRlbUluZGV4ICE9IHRoaXMuZHJhZ2dlZEl0ZW1EYXRhLmluZGV4KSB7XG4gICAgICAgIHRoaXMuZHJhZ2dlZE92ZXJJdGVtID0gaXRlbURhdGEuaXRlbVxuICAgICAgICB0aGlzLmRyYWdnZWRPdmVySXRlbURhdGEgPSBpdGVtRGF0YVxuXG4gICAgICAgIGNvbnN0IHBvc2l0aW9uT2ZEcmFnZ2VkSXRlbSA9IHRoaXMuY3VycmVudE9yZGVyLmluZGV4T2YodGhpcy5kcmFnZ2VkSXRlbURhdGEuaXRlbSlcbiAgICAgICAgY29uc3QgcG9zaXRpb25PZk92ZXJJdGVtID0gdGhpcy5jdXJyZW50T3JkZXIuaW5kZXhPZih0aGlzLmRyYWdnZWRPdmVySXRlbURhdGEuaXRlbSlcblxuICAgICAgICB0aGlzLmN1cnJlbnRPcmRlcltwb3NpdGlvbk9mRHJhZ2dlZEl0ZW1dID0gdGhpcy5kcmFnZ2VkT3Zlckl0ZW1EYXRhLml0ZW1cbiAgICAgICAgdGhpcy5jdXJyZW50T3JkZXJbcG9zaXRpb25PZk92ZXJJdGVtXSA9IHRoaXMuZHJhZ2dlZEl0ZW1EYXRhLml0ZW1cblxuICAgICAgICB0aGlzLmRyYWdnZWRJdGVtRGF0YS5wb3NpdGlvbiA9IHBvc2l0aW9uT2ZPdmVySXRlbVxuICAgICAgICB0aGlzLmRyYWdnZWRPdmVySXRlbURhdGEucG9zaXRpb24gPSBwb3NpdGlvbk9mRHJhZ2dlZEl0ZW1cblxuICAgICAgICB0aGlzLnVwZGF0ZVBvc2l0aW9uT2ZJdGVtcygpXG4gICAgICAgIHRoaXMuZHJhZ2dlZEl0ZW1OZXdQb3NpdGlvbiA9IHBvc2l0aW9uT2ZPdmVySXRlbVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNldEluaXRpYWxEcmFnUG9zaXRpb24gPSAoaW5pdGlhbERyYWdQb3NpdGlvbikgPT4ge1xuICAgIHRoaXMuaW5pdGlhbERyYWdQb3NpdGlvbiA9IGluaXRpYWxEcmFnUG9zaXRpb25cbiAgfVxuXG4gIHVwZGF0ZVBvc2l0aW9uT2ZJdGVtcygpIHtcbiAgICBsZXQgY3VycmVudFBvc2l0aW9uID0gMFxuXG4gICAgZm9yIChjb25zdCBpdGVtIG9mIHRoaXMuY3VycmVudE9yZGVyKSB7XG4gICAgICBjb25zdCBpdGVtRGF0YSA9IHRoaXMuZ2V0SXRlbURhdGFGb3JJdGVtKGl0ZW0pXG5cbiAgICAgIGlmIChkaWdnKGl0ZW1EYXRhLCBcImluZGV4XCIpICE9IGRpZ2codGhpcywgXCJkcmFnZ2VkSXRlbURhdGFcIiwgXCJpbmRleFwiKSkgeyAvLyBEb250IGFuaW1hdGUgZHJhZ2dlZCBlbGVtZW50IHRvIGEgbmV3IHBvc2l0aW9uIGJlY2F1c2UgaXQgaXMgY3VycmVudGx5IGJlaW5nIGRyYWdnZWRcbiAgICAgICAgaXRlbURhdGEuZXZlbnRzLmVtaXQoXCJtb3ZlVG9Qb3NpdGlvblwiLCB7XG4gICAgICAgICAgeDogY3VycmVudFBvc2l0aW9uLFxuICAgICAgICAgIHk6IDBcbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaXRlbURhdGEuYmFzZVggPSBjdXJyZW50UG9zaXRpb25cbiAgICAgIGN1cnJlbnRQb3NpdGlvbiArPSBkaWdnKGl0ZW1EYXRhLCBcImxheW91dFwiLCBcIndpZHRoXCIpXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/draggable-sort/index.jsx"],"names":[],"mappings":""}
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
|
+
var _a;
|
|
38
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
40
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
40
41
|
const react_1 = __importStar(require("react"));
|
|
@@ -47,11 +48,58 @@ const memo_js_1 = __importDefault(require("set-state-compare/build/memo.js"));
|
|
|
47
48
|
const prop_types_1 = __importDefault(require("prop-types"));
|
|
48
49
|
const prop_types_exact_1 = __importDefault(require("prop-types-exact"));
|
|
49
50
|
const use_event_emitter_js_1 = __importDefault(require("../use-event-emitter.js"));
|
|
50
|
-
exports.default = (0, memo_js_1.default)((0, shape_component_js_1.shapeComponent)(class DraggableSort extends shape_component_js_1.ShapeComponent {
|
|
51
|
-
|
|
51
|
+
exports.default = (0, memo_js_1.default)((0, shape_component_js_1.shapeComponent)((_a = class DraggableSort extends shape_component_js_1.ShapeComponent {
|
|
52
|
+
constructor() {
|
|
53
|
+
super(...arguments);
|
|
54
|
+
this.onDragItemStart = ({ itemData }) => {
|
|
55
|
+
if (this.props.onDragItemStart) {
|
|
56
|
+
this.p.onDragItemStart({ itemData });
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
this.onDragItemEnd = (args) => {
|
|
60
|
+
if (args.toPosition !== null) {
|
|
61
|
+
this.p.onReordered(args);
|
|
62
|
+
}
|
|
63
|
+
if (this.props.onDragItemEnd) {
|
|
64
|
+
this.p.onDragItemEnd(args);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
setup() {
|
|
69
|
+
const { data, keyExtractor } = this.p;
|
|
70
|
+
const { events } = this.props;
|
|
71
|
+
this.controller || (this.controller = new controller_js_1.default({ data, events, keyExtractor }));
|
|
72
|
+
this.panResponder || (this.panResponder = react_native_1.PanResponder.create({
|
|
73
|
+
onStartShouldSetPanResponder: (e) => {
|
|
74
|
+
const initialDragPosition = { x: e.nativeEvent.locationX, y: e.nativeEvent.locationY };
|
|
75
|
+
this.controller.setInitialDragPosition(initialDragPosition);
|
|
76
|
+
if (this.controller.draggedItemData) {
|
|
77
|
+
return true;
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
onPanResponderMove: (e, gestate) => {
|
|
81
|
+
this.tt.controller.onMove({ gestate });
|
|
82
|
+
},
|
|
83
|
+
onPanResponderRelease: (e, gestate) => {
|
|
84
|
+
if (this.controller.draggedItem) {
|
|
85
|
+
this.tt.controller.onDragEnd();
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}));
|
|
89
|
+
(0, use_event_emitter_js_1.default)(this.controller.getEvents(), "onDragStart", this.tt.onDragItemStart);
|
|
90
|
+
(0, use_event_emitter_js_1.default)(this.controller.getEvents(), "onDragEnd", this.tt.onDragItemEnd);
|
|
91
|
+
}
|
|
92
|
+
render() {
|
|
93
|
+
const { data, horizontal, keyExtractor, renderItem } = this.p;
|
|
94
|
+
const { cacheKeyExtractor, dataSet } = this.props;
|
|
95
|
+
const actualDataSet = (0, react_1.useMemo)(() => Object.assign({ component: "draggable-sort" }, dataSet), [dataSet]);
|
|
96
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.Animated.View, { dataSet: actualDataSet, style: this.cache("rootViewStyle", { flexDirection: horizontal ? "row" : "column" }, [horizontal]), ...this.tt.panResponder.panHandlers, children: data.map((item, itemIndex) => (0, jsx_runtime_1.jsx)(item_1.default, { cacheKey: cacheKeyExtractor ? cacheKeyExtractor(item) : undefined, controller: this.tt.controller, item: item, itemIndex: itemIndex, onItemMoved: this.props.onItemMoved, renderItem: renderItem }, keyExtractor(item))) }));
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
_a.defaultProps = {
|
|
52
100
|
horizontal: false
|
|
53
|
-
}
|
|
54
|
-
|
|
101
|
+
},
|
|
102
|
+
_a.propTypes = (0, prop_types_exact_1.default)({
|
|
55
103
|
cacheKeyExtractor: prop_types_1.default.func,
|
|
56
104
|
data: prop_types_1.default.array.isRequired,
|
|
57
105
|
dataSet: prop_types_1.default.object,
|
|
@@ -63,49 +111,5 @@ exports.default = (0, memo_js_1.default)((0, shape_component_js_1.shapeComponent
|
|
|
63
111
|
onItemMoved: prop_types_1.default.func,
|
|
64
112
|
onReordered: prop_types_1.default.func.isRequired,
|
|
65
113
|
renderItem: prop_types_1.default.func.isRequired
|
|
66
|
-
})
|
|
67
|
-
|
|
68
|
-
const { data, keyExtractor } = this.p;
|
|
69
|
-
const { events } = this.props;
|
|
70
|
-
this.controller ||= new controller_js_1.default({ data, events, keyExtractor });
|
|
71
|
-
this.panResponder ||= react_native_1.PanResponder.create({
|
|
72
|
-
onStartShouldSetPanResponder: (e) => {
|
|
73
|
-
const initialDragPosition = { x: e.nativeEvent.locationX, y: e.nativeEvent.locationY };
|
|
74
|
-
this.controller.setInitialDragPosition(initialDragPosition);
|
|
75
|
-
if (this.controller.draggedItemData) {
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
onPanResponderMove: (e, gestate) => {
|
|
80
|
-
this.tt.controller.onMove({ gestate });
|
|
81
|
-
},
|
|
82
|
-
onPanResponderRelease: (e, gestate) => {
|
|
83
|
-
if (this.controller.draggedItem) {
|
|
84
|
-
this.tt.controller.onDragEnd();
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
(0, use_event_emitter_js_1.default)(this.controller.getEvents(), "onDragStart", this.tt.onDragItemStart);
|
|
89
|
-
(0, use_event_emitter_js_1.default)(this.controller.getEvents(), "onDragEnd", this.tt.onDragItemEnd);
|
|
90
|
-
}
|
|
91
|
-
render() {
|
|
92
|
-
const { data, horizontal, keyExtractor, renderItem } = this.p;
|
|
93
|
-
const { cacheKeyExtractor, dataSet } = this.props;
|
|
94
|
-
const actualDataSet = (0, react_1.useMemo)(() => Object.assign({ component: "draggable-sort" }, dataSet), [dataSet]);
|
|
95
|
-
return ((0, jsx_runtime_1.jsx)(react_native_1.Animated.View, { dataSet: actualDataSet, style: this.rootViewStyle ||= { flexDirection: horizontal ? "row" : "column" }, ...this.tt.panResponder.panHandlers, children: data.map((item, itemIndex) => (0, jsx_runtime_1.jsx)(item_1.default, { cacheKey: cacheKeyExtractor ? cacheKeyExtractor(item) : undefined, controller: this.tt.controller, item: item, itemIndex: itemIndex, onItemMoved: this.props.onItemMoved, renderItem: renderItem }, keyExtractor(item))) }));
|
|
96
|
-
}
|
|
97
|
-
onDragItemStart = ({ itemData }) => {
|
|
98
|
-
if (this.props.onDragItemStart) {
|
|
99
|
-
this.p.onDragItemStart({ itemData });
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
onDragItemEnd = (args) => {
|
|
103
|
-
if (args.toPosition !== null) {
|
|
104
|
-
this.p.onReordered(args);
|
|
105
|
-
}
|
|
106
|
-
if (this.props.onDragItemEnd) {
|
|
107
|
-
this.p.onDragItemEnd(args);
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
}));
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiL3NyYy8iLCJzb3VyY2VzIjpbImRyYWdnYWJsZS1zb3J0L2luZGV4LmpzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQ0FBb0M7QUFDcEMsK0NBQW1EO0FBQ25ELG1GQUF5RjtBQUN6RixvRUFBd0M7QUFDeEMsa0RBQXNDO0FBQ3RDLGlEQUEwQztBQUMxQyw4RUFBa0Q7QUFDbEQsNERBQWtDO0FBQ2xDLHdFQUE2QztBQUM3QyxtRkFBcUQ7QUFFckQsa0JBQWUsSUFBQSxpQkFBSSxFQUFDLElBQUEsbUNBQWMsRUFBQyxNQUFNLGFBQWMsU0FBUSxtQ0FBYztJQUMzRSxNQUFNLENBQUMsWUFBWSxHQUFHO1FBQ3BCLFVBQVUsRUFBRSxLQUFLO0tBQ2xCLENBQUE7SUFFRCxNQUFNLENBQUMsU0FBUyxHQUFHLElBQUEsMEJBQWMsRUFBQztRQUNoQyxpQkFBaUIsRUFBRSxvQkFBUyxDQUFDLElBQUk7UUFDakMsSUFBSSxFQUFFLG9CQUFTLENBQUMsS0FBSyxDQUFDLFVBQVU7UUFDaEMsT0FBTyxFQUFFLG9CQUFTLENBQUMsTUFBTTtRQUN6QixNQUFNLEVBQUUsb0JBQVMsQ0FBQyxVQUFVLENBQUMsNEJBQVksQ0FBQztRQUMxQyxVQUFVLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtRQUNyQyxZQUFZLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtRQUN2QyxhQUFhLEVBQUUsb0JBQVMsQ0FBQyxJQUFJO1FBQzdCLGVBQWUsRUFBRSxvQkFBUyxDQUFDLElBQUk7UUFDL0IsV0FBVyxFQUFFLG9CQUFTLENBQUMsSUFBSTtRQUMzQixXQUFXLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtRQUN0QyxVQUFVLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtLQUN0QyxDQUFDLENBQUE7SUFFRixLQUFLO1FBQ0gsTUFB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QixXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQ25DLFVBQVUsRUFBRSxVQUFVLElBRmpCLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FHdkIsQ0FDSCxHQUNhLENBQ2pCLENBQUE7SUFDSCxDQUFDO0lBRUQsZUFBZSxHQUFHLENBQUMsRUFBQyxRQUFRLEVBQUMsRUFBRSxFQUFFO1FBQy9CLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxFQUFDLFFBQVEsRUFBQyxDQUFDLENBQUE7UUFDcEMsQ0FBQztJQUNILENBQUMsQ0FBQTtJQUVELGFBQWEsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMxQixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzVCLENBQUM7SUFDSCxDQUFDLENBQUE7Q0FDRixDQUFDLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge3VzZU1lbW99IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQge0FuaW1hdGVkLCBQYW5SZXNwb25kZXJ9IGZyb20gXCJyZWFjdC1uYXRpdmVcIlxuaW1wb3J0IHtzaGFwZUNvbXBvbmVudCwgU2hhcGVDb21wb25lbnR9IGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC9zaGFwZS1jb21wb25lbnQuanNcIlxuaW1wb3J0IENvbnRyb2xsZXIgZnJvbSBcIi4vY29udHJvbGxlci5qc1wiXG5pbXBvcnQgRHJhZ2dhYmxlU29ydEl0ZW0gZnJvbSBcIi4vaXRlbVwiXG5pbXBvcnQge0V2ZW50RW1pdHRlcn0gZnJvbSBcImV2ZW50ZW1pdHRlcjNcIlxuaW1wb3J0IG1lbW8gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL21lbW8uanNcIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgcHJvcFR5cGVzRXhhY3QgZnJvbSBcInByb3AtdHlwZXMtZXhhY3RcIlxuaW1wb3J0IHVzZUV2ZW50RW1pdHRlciBmcm9tIFwiLi4vdXNlLWV2ZW50LWVtaXR0ZXIuanNcIlxuXG5leHBvcnQgZGVmYXVsdCBtZW1vKHNoYXBlQ29tcG9uZW50KGNsYXNzIERyYWdnYWJsZVNvcnQgZXh0ZW5kcyBTaGFwZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgaG9yaXpvbnRhbDogZmFsc2VcbiAgfVxuXG4gIHN0YXRpYyBwcm9wVHlwZXMgPSBwcm9wVHlwZXNFeGFjdCh7XG4gICAgY2FjaGVLZXlFeHRyYWN0b3I6IFByb3BUeXBlcy5mdW5jLFxuICAgIGRhdGE6IFByb3BUeXBlcy5hcnJheS5pc1JlcXVpcmVkLFxuICAgIGRhdGFTZXQ6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgZXZlbnRzOiBQcm9wVHlwZXMuaW5zdGFuY2VPZihFdmVudEVtaXR0ZXIpLFxuICAgIGhvcml6b250YWw6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAga2V5RXh0cmFjdG9yOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIG9uRHJhZ0l0ZW1FbmQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uRHJhZ0l0ZW1TdGFydDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25JdGVtTW92ZWQ6IFByb3BUeXBlcy5mdW5jLFxuICAgIG9uUmVvcmRlcmVkOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHJlbmRlckl0ZW06IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWRcbiAgfSlcblxuICBzZXR1cCgpIHtcbiAgICBjb25zdCB7ZGF0YSwga2V5RXh0cmFjdG9yfSA9IHRoaXMucFxuICAgIGNvbnN0IHtldmVudHN9ID0gdGhpcy5wcm9wc1xuXG4gICAgdGhpcy5jb250cm9sbGVyIHx8PSBuZXcgQ29udHJvbGxlcih7ZGF0YSwgZXZlbnRzLCBrZXlFeHRyYWN0b3J9KVxuICAgIHRoaXMucGFuUmVzcG9uZGVyIHx8PSBQYW5SZXNwb25kZXIuY3JlYXRlKHtcbiAgICAgIG9uU3RhcnRTaG91bGRTZXRQYW5SZXNwb25kZXI6IChlKSA9PiB7XG4gICAgICAgIGNvbnN0IGluaXRpYWxEcmFnUG9zaXRpb24gPSB7eDogZS5uYXRpdmVFdmVudC5sb2NhdGlvblgsIHk6IGUubmF0aXZlRXZlbnQubG9jYXRpb25ZfVxuXG4gICAgICAgIHRoaXMuY29udHJvbGxlci5zZXRJbml0aWFsRHJhZ1Bvc2l0aW9uKGluaXRpYWxEcmFnUG9zaXRpb24pXG5cbiAgICAgICAgaWYgKHRoaXMuY29udHJvbGxlci5kcmFnZ2VkSXRlbURhdGEpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgb25QYW5SZXNwb25kZXJNb3ZlOiAoZSwgZ2VzdGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLnR0LmNvbnRyb2xsZXIub25Nb3ZlKHtnZXN0YXRlfSlcbiAgICAgIH0sXG4gICAgICBvblBhblJlc3BvbmRlclJlbGVhc2U6IChlLCBnZXN0YXRlKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2xsZXIuZHJhZ2dlZEl0ZW0pIHtcbiAgICAgICAgICB0aGlzLnR0LmNvbnRyb2xsZXIub25EcmFnRW5kKClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG5cbiAgICB1c2VFdmVudEVtaXR0ZXIodGhpcy5jb250cm9sbGVyLmdldEV2ZW50cygpLCBcIm9uRHJhZ1N0YXJ0XCIsIHRoaXMudHQub25EcmFnSXRlbVN0YXJ0KVxuICAgIHVzZUV2ZW50RW1pdHRlcih0aGlzLmNvbnRyb2xsZXIuZ2V0RXZlbnRzKCksIFwib25EcmFnRW5kXCIsIHRoaXMudHQub25EcmFnSXRlbUVuZClcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7ZGF0YSwgaG9yaXpvbnRhbCwga2V5RXh0cmFjdG9yLCByZW5kZXJJdGVtfSA9IHRoaXMucFxuICAgIGNvbnN0IHtjYWNoZUtleUV4dHJhY3RvciwgZGF0YVNldH0gPSB0aGlzLnByb3BzXG4gICAgY29uc3QgYWN0dWFsRGF0YVNldCA9IHVzZU1lbW8oXG4gICAgICAoKSA9PiBPYmplY3QuYXNzaWduKFxuICAgICAgICB7Y29tcG9uZW50OiBcImRyYWdnYWJsZS1zb3J0XCJ9LFxuICAgICAgICBkYXRhU2V0XG4gICAgICApLFxuICAgICAgW2RhdGFTZXRdXG4gICAgKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxBbmltYXRlZC5WaWV3XG4gICAgICAgIGRhdGFTZXQ9e2FjdHVhbERhdGFTZXR9XG4gICAgICAgIHN0eWxlPXt0aGlzLnJvb3RWaWV3U3R5bGUgfHw9IHtmbGV4RGlyZWN0aW9uOiBob3Jpem9udGFsID8gXCJyb3dcIiA6IFwiY29sdW1uXCJ9fVxuICAgICAgICB7Li4udGhpcy50dC5wYW5SZXNwb25kZXIucGFuSGFuZGxlcnN9XG4gICAgICA+XG4gICAgICAgIHtkYXRhLm1hcCgoaXRlbSwgaXRlbUluZGV4KSA9PlxuICAgICAgICAgIDxEcmFnZ2FibGVTb3J0SXRlbVxuICAgICAgICAgICAgY2FjaGVLZXk9e2NhY2hlS2V5RXh0cmFjdG9yID8gY2FjaGVLZXlFeHRyYWN0b3IoaXRlbSkgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICBjb250cm9sbGVyPXt0aGlzLnR0LmNvbnRyb2xsZXJ9XG4gICAgICAgICAgICBpdGVtPXtpdGVtfVxuICAgICAgICAgICAgaXRlbUluZGV4PXtpdGVtSW5kZXh9XG4gICAgICAgICAgICBrZXk9e2tleUV4dHJhY3RvcihpdGVtKX1cbiAgICAgICAgICAgIG9uSXRlbU1vdmVkPXt0aGlzLnByb3BzLm9uSXRlbU1vdmVkfVxuICAgICAgICAgICAgcmVuZGVySXRlbT17cmVuZGVySXRlbX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9BbmltYXRlZC5WaWV3PlxuICAgIClcbiAgfVxuXG4gIG9uRHJhZ0l0ZW1TdGFydCA9ICh7aXRlbURhdGF9KSA9PiB7XG4gICAgaWYgKHRoaXMucHJvcHMub25EcmFnSXRlbVN0YXJ0KSB7XG4gICAgICB0aGlzLnAub25EcmFnSXRlbVN0YXJ0KHtpdGVtRGF0YX0pXG4gICAgfVxuICB9XG5cbiAgb25EcmFnSXRlbUVuZCA9IChhcmdzKSA9PiB7XG4gICAgaWYgKGFyZ3MudG9Qb3NpdGlvbiAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5wLm9uUmVvcmRlcmVkKGFyZ3MpXG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvcHMub25EcmFnSXRlbUVuZCkge1xuICAgICAgdGhpcy5wLm9uRHJhZ0l0ZW1FbmQoYXJncylcbiAgICB9XG4gIH1cbn0pKVxuIl19
|
|
114
|
+
}),
|
|
115
|
+
_a)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item.d.ts","sourceRoot":"
|
|
1
|
+
{"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../src/draggable-sort/item.jsx"],"names":[],"mappings":""}
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
|
+
var _a;
|
|
38
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
40
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
40
41
|
const react_1 = __importStar(require("react"));
|
|
@@ -45,132 +46,135 @@ const memo_js_1 = __importDefault(require("set-state-compare/build/memo.js"));
|
|
|
45
46
|
const prop_types_1 = __importDefault(require("prop-types"));
|
|
46
47
|
const prop_types_exact_1 = __importDefault(require("prop-types-exact"));
|
|
47
48
|
const use_event_emitter_js_1 = __importDefault(require("../use-event-emitter.js"));
|
|
48
|
-
exports.default = (0, memo_js_1.default)((0, shape_component_js_1.shapeComponent)(class DraggableSortItem extends shape_component_js_1.ShapeComponent {
|
|
49
|
-
|
|
49
|
+
exports.default = (0, memo_js_1.default)((0, shape_component_js_1.shapeComponent)((_a = class DraggableSortItem extends shape_component_js_1.ShapeComponent {
|
|
50
|
+
constructor() {
|
|
51
|
+
super(...arguments);
|
|
52
|
+
this.initialLayout = null;
|
|
53
|
+
this.onDragStart = ({ itemData }) => {
|
|
54
|
+
const newState = { dragging: true };
|
|
55
|
+
if (itemData.index == this.p.itemIndex) {
|
|
56
|
+
newState.active = true;
|
|
57
|
+
this.baseXAtStartedDragging = this.getBaseX();
|
|
58
|
+
}
|
|
59
|
+
this.setState(newState);
|
|
60
|
+
};
|
|
61
|
+
this.onDragEndAnimation = () => this.setState({ active: false, dragging: false });
|
|
62
|
+
this.onLayout = (e) => {
|
|
63
|
+
const { controller, item, itemIndex } = this.p;
|
|
64
|
+
controller.onItemLayout({ events: this.tt.events, index: itemIndex, item, layout: e.nativeEvent.layout });
|
|
65
|
+
if (!this.tt.initialLayout) {
|
|
66
|
+
this.initialLayout = e.nativeEvent.layout;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
this.onMove = ({ gestate }) => {
|
|
70
|
+
const x = gestate.dx + this.tt.baseXAtStartedDragging - this.tt.initialLayout.x;
|
|
71
|
+
const y = this.tt.initialLayout.y;
|
|
72
|
+
this.tt.position.setValue({ x, y });
|
|
73
|
+
if (this.props.onItemMoved) {
|
|
74
|
+
this.p.onItemMoved({ itemIndex: this.p.itemIndex, x, y });
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
this.onMoveToPosition = ({ x, y }) => {
|
|
78
|
+
const calculatedXFromStartingPosition = x - this.tt.initialLayout.x;
|
|
79
|
+
const animationArgs = {
|
|
80
|
+
duration: 200,
|
|
81
|
+
easing: react_native_1.Easing.inOut(react_native_1.Easing.linear),
|
|
82
|
+
toValue: {
|
|
83
|
+
x: calculatedXFromStartingPosition,
|
|
84
|
+
y
|
|
85
|
+
},
|
|
86
|
+
useNativeDriver: true,
|
|
87
|
+
};
|
|
88
|
+
const animationEventArgs = { animationArgs, animationType: "moveToPosition", item: this.p.item };
|
|
89
|
+
this.p.controller.events.emit("onAnimationStart", animationEventArgs);
|
|
90
|
+
react_native_1.Animated
|
|
91
|
+
.timing(this.tt.position, animationArgs)
|
|
92
|
+
.start(() => {
|
|
93
|
+
this.p.controller.events.emit("onAnimationEnd", animationEventArgs);
|
|
94
|
+
});
|
|
95
|
+
if (this.props.onItemMoved) {
|
|
96
|
+
this.p.onItemMoved({
|
|
97
|
+
animationArgs,
|
|
98
|
+
itemIndex: this.p.itemIndex,
|
|
99
|
+
x: calculatedXFromStartingPosition,
|
|
100
|
+
y
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
this.getBaseX = () => this.p.controller.getItemDataForIndex(this.p.itemIndex).baseX;
|
|
105
|
+
this.onResetPosition = (args) => {
|
|
106
|
+
const baseX = this.getBaseX() - this.tt.initialLayout.x;
|
|
107
|
+
const animationArgs = {
|
|
108
|
+
duration: 200,
|
|
109
|
+
easing: react_native_1.Easing.inOut(react_native_1.Easing.linear),
|
|
110
|
+
toValue: {
|
|
111
|
+
x: baseX,
|
|
112
|
+
y: 0
|
|
113
|
+
},
|
|
114
|
+
useNativeDriver: true,
|
|
115
|
+
};
|
|
116
|
+
const animationEventArgs = { animationArgs, animationType: "resetPosition", item: this.p.item };
|
|
117
|
+
this.p.controller.events.emit("onAnimationStart", animationEventArgs);
|
|
118
|
+
react_native_1.Animated
|
|
119
|
+
.timing(this.tt.position, animationArgs)
|
|
120
|
+
.start(() => {
|
|
121
|
+
this.p.controller.events.emit("onAnimationEnd", animationEventArgs);
|
|
122
|
+
if (args?.callback)
|
|
123
|
+
args.callback();
|
|
124
|
+
});
|
|
125
|
+
if (this.props.onItemMoved) {
|
|
126
|
+
this.p.onItemMoved({
|
|
127
|
+
animationArgs,
|
|
128
|
+
itemIndex: this.p.itemIndex,
|
|
129
|
+
x: baseX,
|
|
130
|
+
y: 0
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
setup() {
|
|
136
|
+
this.useStates({
|
|
137
|
+
active: false,
|
|
138
|
+
dragging: false
|
|
139
|
+
});
|
|
140
|
+
this.events || (this.events = new eventemitter3_1.EventEmitter());
|
|
141
|
+
this.position || (this.position = new react_native_1.Animated.ValueXY());
|
|
142
|
+
this.panResponder || (this.panResponder = react_native_1.PanResponder.create({
|
|
143
|
+
onStartShouldSetPanResponder: (e) => {
|
|
144
|
+
this.setState({ dragging: true });
|
|
145
|
+
this.p.controller.onDragStart({ item: this.p.item, itemIndex: this.p.itemIndex });
|
|
146
|
+
return false;
|
|
147
|
+
}
|
|
148
|
+
}));
|
|
149
|
+
(0, use_event_emitter_js_1.default)(this.p.controller.getEvents(), "onDragStart", this.tt.onDragStart);
|
|
150
|
+
(0, use_event_emitter_js_1.default)(this.p.controller.getEvents(), "onDragEndAnimation", this.tt.onDragEndAnimation);
|
|
151
|
+
(0, use_event_emitter_js_1.default)(this.tt.events, "move", this.tt.onMove);
|
|
152
|
+
(0, use_event_emitter_js_1.default)(this.tt.events, "moveToPosition", this.tt.onMoveToPosition);
|
|
153
|
+
(0, use_event_emitter_js_1.default)(this.tt.events, "resetPosition", this.tt.onResetPosition);
|
|
154
|
+
}
|
|
155
|
+
render() {
|
|
156
|
+
const { item, renderItem } = this.p;
|
|
157
|
+
const { active } = this.s;
|
|
158
|
+
const style = (0, react_1.useMemo)(() => {
|
|
159
|
+
const style = {
|
|
160
|
+
transform: this.tt.position.getTranslateTransform()
|
|
161
|
+
};
|
|
162
|
+
if (active) {
|
|
163
|
+
style.backgroundColor = "#fff";
|
|
164
|
+
style.elevation = 2;
|
|
165
|
+
style.zIndex = 99999;
|
|
166
|
+
}
|
|
167
|
+
return style;
|
|
168
|
+
}, [active]);
|
|
169
|
+
return ((0, jsx_runtime_1.jsx)(react_native_1.Animated.View, { dataSet: this.cache("draggableSortItemDataSet", { component: "draggable-sort/item" }), onLayout: this.tt.onLayout, style: style, children: renderItem({ isActive: active, item, touchProps: this.tt.panResponder.panHandlers }) }));
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
_a.propTypes = (0, prop_types_exact_1.default)({
|
|
50
173
|
cacheKey: prop_types_1.default.string,
|
|
51
174
|
controller: prop_types_1.default.object.isRequired,
|
|
52
175
|
item: prop_types_1.default.any.isRequired,
|
|
53
176
|
itemIndex: prop_types_1.default.number.isRequired,
|
|
54
177
|
onItemMoved: prop_types_1.default.func,
|
|
55
178
|
renderItem: prop_types_1.default.func.isRequired
|
|
56
|
-
})
|
|
57
|
-
|
|
58
|
-
setup() {
|
|
59
|
-
this.useStates({
|
|
60
|
-
active: false,
|
|
61
|
-
dragging: false
|
|
62
|
-
});
|
|
63
|
-
this.events ||= new eventemitter3_1.EventEmitter();
|
|
64
|
-
this.position ||= new react_native_1.Animated.ValueXY();
|
|
65
|
-
this.panResponder ||= react_native_1.PanResponder.create({
|
|
66
|
-
onStartShouldSetPanResponder: (e) => {
|
|
67
|
-
this.setState({ dragging: true });
|
|
68
|
-
this.p.controller.onDragStart({ item: this.p.item, itemIndex: this.p.itemIndex });
|
|
69
|
-
return false;
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
(0, use_event_emitter_js_1.default)(this.p.controller.getEvents(), "onDragStart", this.tt.onDragStart);
|
|
73
|
-
(0, use_event_emitter_js_1.default)(this.p.controller.getEvents(), "onDragEndAnimation", this.tt.onDragEndAnimation);
|
|
74
|
-
(0, use_event_emitter_js_1.default)(this.tt.events, "move", this.tt.onMove);
|
|
75
|
-
(0, use_event_emitter_js_1.default)(this.tt.events, "moveToPosition", this.tt.onMoveToPosition);
|
|
76
|
-
(0, use_event_emitter_js_1.default)(this.tt.events, "resetPosition", this.tt.onResetPosition);
|
|
77
|
-
}
|
|
78
|
-
render() {
|
|
79
|
-
const { item, renderItem } = this.p;
|
|
80
|
-
const { active } = this.s;
|
|
81
|
-
const style = (0, react_1.useMemo)(() => {
|
|
82
|
-
const style = {
|
|
83
|
-
transform: this.tt.position.getTranslateTransform()
|
|
84
|
-
};
|
|
85
|
-
if (active) {
|
|
86
|
-
style.backgroundColor = "#fff";
|
|
87
|
-
style.elevation = 2;
|
|
88
|
-
style.zIndex = 99999;
|
|
89
|
-
}
|
|
90
|
-
return style;
|
|
91
|
-
}, [active]);
|
|
92
|
-
return ((0, jsx_runtime_1.jsx)(react_native_1.Animated.View, { dataSet: this.draggableSortItemDataSet ||= { component: "draggable-sort/item" }, onLayout: this.tt.onLayout, style: style, children: renderItem({ isActive: active, item, touchProps: this.tt.panResponder.panHandlers }) }));
|
|
93
|
-
}
|
|
94
|
-
onDragStart = ({ itemData }) => {
|
|
95
|
-
const newState = { dragging: true };
|
|
96
|
-
if (itemData.index == this.p.itemIndex) {
|
|
97
|
-
newState.active = true;
|
|
98
|
-
this.baseXAtStartedDragging = this.getBaseX();
|
|
99
|
-
}
|
|
100
|
-
this.setState(newState);
|
|
101
|
-
};
|
|
102
|
-
onDragEndAnimation = () => this.setState({ active: false, dragging: false });
|
|
103
|
-
onLayout = (e) => {
|
|
104
|
-
const { controller, item, itemIndex } = this.p;
|
|
105
|
-
controller.onItemLayout({ events: this.tt.events, index: itemIndex, item, layout: e.nativeEvent.layout });
|
|
106
|
-
if (!this.tt.initialLayout) {
|
|
107
|
-
this.initialLayout = e.nativeEvent.layout;
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
onMove = ({ gestate }) => {
|
|
111
|
-
const x = gestate.dx + this.tt.baseXAtStartedDragging - this.tt.initialLayout.x;
|
|
112
|
-
const y = this.tt.initialLayout.y;
|
|
113
|
-
this.tt.position.setValue({ x, y });
|
|
114
|
-
if (this.props.onItemMoved) {
|
|
115
|
-
this.p.onItemMoved({ itemIndex: this.p.itemIndex, x, y });
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
onMoveToPosition = ({ x, y }) => {
|
|
119
|
-
const calculatedXFromStartingPosition = x - this.tt.initialLayout.x;
|
|
120
|
-
const animationArgs = {
|
|
121
|
-
duration: 200,
|
|
122
|
-
easing: react_native_1.Easing.inOut(react_native_1.Easing.linear),
|
|
123
|
-
toValue: {
|
|
124
|
-
x: calculatedXFromStartingPosition,
|
|
125
|
-
y
|
|
126
|
-
},
|
|
127
|
-
useNativeDriver: true,
|
|
128
|
-
};
|
|
129
|
-
const animationEventArgs = { animationArgs, animationType: "moveToPosition", item: this.p.item };
|
|
130
|
-
this.p.controller.events.emit("onAnimationStart", animationEventArgs);
|
|
131
|
-
react_native_1.Animated
|
|
132
|
-
.timing(this.tt.position, animationArgs)
|
|
133
|
-
.start(() => {
|
|
134
|
-
this.p.controller.events.emit("onAnimationEnd", animationEventArgs);
|
|
135
|
-
});
|
|
136
|
-
if (this.props.onItemMoved) {
|
|
137
|
-
this.p.onItemMoved({
|
|
138
|
-
animationArgs,
|
|
139
|
-
itemIndex: this.p.itemIndex,
|
|
140
|
-
x: calculatedXFromStartingPosition,
|
|
141
|
-
y
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
};
|
|
145
|
-
getBaseX = () => this.p.controller.getItemDataForIndex(this.p.itemIndex).baseX;
|
|
146
|
-
onResetPosition = (args) => {
|
|
147
|
-
const baseX = this.getBaseX() - this.tt.initialLayout.x;
|
|
148
|
-
const animationArgs = {
|
|
149
|
-
duration: 200,
|
|
150
|
-
easing: react_native_1.Easing.inOut(react_native_1.Easing.linear),
|
|
151
|
-
toValue: {
|
|
152
|
-
x: baseX,
|
|
153
|
-
y: 0
|
|
154
|
-
},
|
|
155
|
-
useNativeDriver: true,
|
|
156
|
-
};
|
|
157
|
-
const animationEventArgs = { animationArgs, animationType: "resetPosition", item: this.p.item };
|
|
158
|
-
this.p.controller.events.emit("onAnimationStart", animationEventArgs);
|
|
159
|
-
react_native_1.Animated
|
|
160
|
-
.timing(this.tt.position, animationArgs)
|
|
161
|
-
.start(() => {
|
|
162
|
-
this.p.controller.events.emit("onAnimationEnd", animationEventArgs);
|
|
163
|
-
if (args?.callback)
|
|
164
|
-
args.callback();
|
|
165
|
-
});
|
|
166
|
-
if (this.props.onItemMoved) {
|
|
167
|
-
this.p.onItemMoved({
|
|
168
|
-
animationArgs,
|
|
169
|
-
itemIndex: this.p.itemIndex,
|
|
170
|
-
x: baseX,
|
|
171
|
-
y: 0
|
|
172
|
-
});
|
|
173
|
-
}
|
|
174
|
-
};
|
|
175
|
-
}));
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsiZHJhZ2dhYmxlLXNvcnQvaXRlbS5qc3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQW9DO0FBQ3BDLCtDQUEyRDtBQUMzRCxtRkFBeUY7QUFDekYsaURBQTBDO0FBQzFDLDhFQUFrRDtBQUNsRCw0REFBa0M7QUFDbEMsd0VBQTZDO0FBQzdDLG1GQUFxRDtBQUVyRCxrQkFBZSxJQUFBLGlCQUFJLEVBQUMsSUFBQSxtQ0FBYyxFQUFDLE1BQU0saUJBQWtCLFNBQVEsbUNBQWM7SUFDL0UsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFBLDBCQUFjLEVBQUM7UUFDaEMsUUFBUSxFQUFFLG9CQUFTLENBQUMsTUFBTTtRQUMxQixVQUFVLEVBQUUsb0JBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVTtRQUN2QyxJQUFJLEVBQUUsb0JBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVTtRQUM5QixTQUFTLEVBQUUsb0JBQVMsQ0FBQyxNQUFNLENBQUMsVUFBVTtRQUN0QyxXQUFXLEVBQUUsb0JBQVMsQ0FBQyxJQUFJO1FBQzNCLFVBQVUsRUFBRSxvQkFBUyxDQUFDLElBQUksQ0FBQyxVQUFVO0tBQ3RDLENBQUMsQ0FBQTtJQUVGLGFBQWEsR0FBRyxJQUFJLENBQUE7SUFFcEIsS0FBSztRQUNILElBQUksQ0FBQyxTQUFTLENBQUM7WUFDYixNQUFNLEVBQUUsS0FBSztZQUNiLFFBQVEsRUFBRSxLQUFLO1NBQ2hCLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxNQUFNLEtBQUssSUFBSSw0QkFBWSxFQUFFLENBQUE7UUFDbEMsSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLHVCQUFRLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDeEMsSUFBSSxDQUFDLFlBQVksS0FBSywyQkFBWSxDQUFDLE1BQU0sQ0FBQztZQUN4Qyw0QkFBNEIsRUFBRSxDQUFDLENBQUMsRUFBSSxFQUFFO2dCQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUE7Z0JBQy9CLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUMsQ0FBQyxDQUFBO2dCQUUvRSxPQUFPLEtBQUssQ0FBQTtZQUNkLENBQUM7U0FDRixDQUFDLENBQUE7UUFFRixJQUFBLDhCQUFlLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDbEYsSUFBQSw4QkFBZSxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUNoRyxJQUFBLDhCQUFlLEVBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDdkQsSUFBQSw4QkFBZSxFQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQTtRQUMzRSxJQUFBLDhCQUFlLEVBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDM0UsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUE7UUFDakMsTUFBTSxFQUFDLE1BQU0sRUFBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUE7UUFDdkIsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFPLEVBQ25CLEdBQUcsRUFBRTtZQUNILE1BQU0sS0FBSyxHQUFHO2dCQUNaLFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRTthQUNwRCxDQUFBO1lBRUQsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxLQUFLLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQTtnQkFDOUIsS0FBSyxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUE7Z0JBQ25CLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFBO1lBQ3RCLENBQUM7WUFFRCxPQUFPLEtBQUssQ0FBQTtRQUNkLENBQUMsRUFDRCxDQUFDLE1BQU0sQ0FBQyxDQUNULENBQUE7UUFFRCxPQUFPLENBQ0wsdUJBQUMsdUJBQVEsQ0FBQyxJQUFJLElBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyx3QkFBd0IsS0FBSyxFQUFDLFNBQVMsRUFBRSxxQkFBcUIsRUFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxZQUNuSSxVQUFVLENBQUMsRUFBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFDLENBQUMsR0FDckUsQ0FDakIsQ0FBQTtJQUNILENBQUM7SUFFRCxXQUFXLEdBQUcsQ0FBQyxFQUFDLFFBQVEsRUFBQyxFQUFFLEVBQUU7UUFDM0IsTUFBTSxRQUFRLEdBQUcsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDLENBQUE7UUFFakMsSUFBSSxRQUFRLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDdkMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUE7WUFDdEIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtRQUMvQyxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUN6QixDQUFDLENBQUE7SUFFRCxrQkFBa0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQTtJQUUxRSxRQUFRLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUNmLE1BQU0sRUFBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUE7UUFFNUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUMsQ0FBQyxDQUFBO1FBRXZHLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUE7UUFDM0MsQ0FBQztJQUNILENBQUMsQ0FBQTtJQUVELE1BQU0sR0FBRyxDQUFDLEVBQUMsT0FBTyxFQUFDLEVBQUUsRUFBRTtRQUNyQixNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFBO1FBQy9FLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQTtRQUVqQyxJQUFJLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FBQTtRQUVqQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQyxDQUFDLENBQUE7UUFDekQsQ0FBQztJQUNILENBQUMsQ0FBQTtJQUVELGdCQUFnQixHQUFHLENBQUMsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFDLEVBQUUsRUFBRTtRQUM1QixNQUFNLCtCQUErQixHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUE7UUFDbkUsTUFBTSxhQUFhLEdBQUc7WUFDcEIsUUFBUSxFQUFFLEdBQUc7WUFDYixNQUFNLEVBQUUscUJBQU0sQ0FBQyxLQUFLLENBQUMscUJBQU0sQ0FBQyxNQUFNLENBQUM7WUFDbkMsT0FBTyxFQUFFO2dCQUNQLENBQUMsRUFBRSwrQkFBK0I7Z0JBQ2xDLENBQUM7YUFDRjtZQUNELGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQUE7UUFDRCxNQUFNLGtCQUFrQixHQUFHLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUMsQ0FBQTtRQUU5RixJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLGtCQUFrQixDQUFDLENBQUE7UUFFckUsdUJBQVE7YUFDTCxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDO2FBQ3ZDLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLENBQUE7UUFDckUsQ0FBQyxDQUFDLENBQUE7UUFFSixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7Z0JBQ2pCLGFBQWE7Z0JBQ2IsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUztnQkFDM0IsQ0FBQyxFQUFFLCtCQUErQjtnQkFDbEMsQ0FBQzthQUNGLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDLENBQUE7SUFFRCxRQUFRLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUE7SUFFOUUsZUFBZSxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDekIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQTtRQUN2RCxNQUFNLGFBQWEsR0FBRztZQUNwQixRQUFRLEVBQUUsR0FBRztZQUNiLE1BQU0sRUFBRSxxQkFBTSxDQUFDLEtBQUssQ0FBQyxxQkFBTSxDQUFDLE1BQU0sQ0FBQztZQUNuQyxPQUFPLEVBQUU7Z0JBQ1AsQ0FBQyxFQUFFLEtBQUs7Z0JBQ1IsQ0FBQyxFQUFFLENBQUM7YUFDTDtZQUNELGVBQWUsRUFBRSxJQUFJO1NBQ3RCLENBQUE7UUFDRCxNQUFNLGtCQUFrQixHQUFHLEVBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFDLENBQUE7UUFFN0YsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFBO1FBRXJFLHVCQUFRO2FBQ0wsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQzthQUN2QyxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ1YsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFBO1lBQ25FLElBQUksSUFBSSxFQUFFLFFBQVE7Z0JBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFBO1FBQ3JDLENBQUMsQ0FBQyxDQUFBO1FBRUosSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO2dCQUNqQixhQUFhO2dCQUNiLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVM7Z0JBQzNCLENBQUMsRUFBRSxLQUFLO2dCQUNSLENBQUMsRUFBRSxDQUFDO2FBQ0wsQ0FBQyxDQUFBO1FBQ0osQ0FBQztJQUNILENBQUMsQ0FBQTtDQUNGLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7dXNlTWVtb30gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7QW5pbWF0ZWQsIEVhc2luZywgUGFuUmVzcG9uZGVyfSBmcm9tIFwicmVhY3QtbmF0aXZlXCJcbmltcG9ydCB7c2hhcGVDb21wb25lbnQsIFNoYXBlQ29tcG9uZW50fSBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvYnVpbGQvc2hhcGUtY29tcG9uZW50LmpzXCJcbmltcG9ydCB7RXZlbnRFbWl0dGVyfSBmcm9tIFwiZXZlbnRlbWl0dGVyM1wiXG5pbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvYnVpbGQvbWVtby5qc1wiXG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCJcbmltcG9ydCBwcm9wVHlwZXNFeGFjdCBmcm9tIFwicHJvcC10eXBlcy1leGFjdFwiXG5pbXBvcnQgdXNlRXZlbnRFbWl0dGVyIGZyb20gXCIuLi91c2UtZXZlbnQtZW1pdHRlci5qc1wiXG5cbmV4cG9ydCBkZWZhdWx0IG1lbW8oc2hhcGVDb21wb25lbnQoY2xhc3MgRHJhZ2dhYmxlU29ydEl0ZW0gZXh0ZW5kcyBTaGFwZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSBwcm9wVHlwZXNFeGFjdCh7XG4gICAgY2FjaGVLZXk6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgY29udHJvbGxlcjogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIGl0ZW06IFByb3BUeXBlcy5hbnkuaXNSZXF1aXJlZCxcbiAgICBpdGVtSW5kZXg6IFByb3BUeXBlcy5udW1iZXIuaXNSZXF1aXJlZCxcbiAgICBvbkl0ZW1Nb3ZlZDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgcmVuZGVySXRlbTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZFxuICB9KVxuXG4gIGluaXRpYWxMYXlvdXQgPSBudWxsXG5cbiAgc2V0dXAoKSB7XG4gICAgdGhpcy51c2VTdGF0ZXMoe1xuICAgICAgYWN0aXZlOiBmYWxzZSxcbiAgICAgIGRyYWdnaW5nOiBmYWxzZVxuICAgIH0pXG5cbiAgICB0aGlzLmV2ZW50cyB8fD0gbmV3IEV2ZW50RW1pdHRlcigpXG4gICAgdGhpcy5wb3NpdGlvbiB8fD0gbmV3IEFuaW1hdGVkLlZhbHVlWFkoKVxuICAgIHRoaXMucGFuUmVzcG9uZGVyIHx8PSBQYW5SZXNwb25kZXIuY3JlYXRlKHtcbiAgICAgIG9uU3RhcnRTaG91bGRTZXRQYW5SZXNwb25kZXI6IChlLCApID0+IHtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7ZHJhZ2dpbmc6IHRydWV9KVxuICAgICAgICB0aGlzLnAuY29udHJvbGxlci5vbkRyYWdTdGFydCh7aXRlbTogdGhpcy5wLml0ZW0sIGl0ZW1JbmRleDogdGhpcy5wLml0ZW1JbmRleH0pXG5cbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfSlcblxuICAgIHVzZUV2ZW50RW1pdHRlcih0aGlzLnAuY29udHJvbGxlci5nZXRFdmVudHMoKSwgXCJvbkRyYWdTdGFydFwiLCB0aGlzLnR0Lm9uRHJhZ1N0YXJ0KVxuICAgIHVzZUV2ZW50RW1pdHRlcih0aGlzLnAuY29udHJvbGxlci5nZXRFdmVudHMoKSwgXCJvbkRyYWdFbmRBbmltYXRpb25cIiwgdGhpcy50dC5vbkRyYWdFbmRBbmltYXRpb24pXG4gICAgdXNlRXZlbnRFbWl0dGVyKHRoaXMudHQuZXZlbnRzLCBcIm1vdmVcIiwgdGhpcy50dC5vbk1vdmUpXG4gICAgdXNlRXZlbnRFbWl0dGVyKHRoaXMudHQuZXZlbnRzLCBcIm1vdmVUb1Bvc2l0aW9uXCIsIHRoaXMudHQub25Nb3ZlVG9Qb3NpdGlvbilcbiAgICB1c2VFdmVudEVtaXR0ZXIodGhpcy50dC5ldmVudHMsIFwicmVzZXRQb3NpdGlvblwiLCB0aGlzLnR0Lm9uUmVzZXRQb3NpdGlvbilcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7aXRlbSwgcmVuZGVySXRlbX0gPSB0aGlzLnBcbiAgICBjb25zdCB7YWN0aXZlfSA9IHRoaXMuc1xuICAgIGNvbnN0IHN0eWxlID0gdXNlTWVtbyhcbiAgICAgICgpID0+IHtcbiAgICAgICAgY29uc3Qgc3R5bGUgPSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0aGlzLnR0LnBvc2l0aW9uLmdldFRyYW5zbGF0ZVRyYW5zZm9ybSgpXG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYWN0aXZlKSB7XG4gICAgICAgICAgc3R5bGUuYmFja2dyb3VuZENvbG9yID0gXCIjZmZmXCJcbiAgICAgICAgICBzdHlsZS5lbGV2YXRpb24gPSAyXG4gICAgICAgICAgc3R5bGUuekluZGV4ID0gOTk5OTlcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBzdHlsZVxuICAgICAgfSxcbiAgICAgIFthY3RpdmVdXG4gICAgKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxBbmltYXRlZC5WaWV3IGRhdGFTZXQ9e3RoaXMuZHJhZ2dhYmxlU29ydEl0ZW1EYXRhU2V0IHx8PSB7Y29tcG9uZW50OiBcImRyYWdnYWJsZS1zb3J0L2l0ZW1cIn19IG9uTGF5b3V0PXt0aGlzLnR0Lm9uTGF5b3V0fSBzdHlsZT17c3R5bGV9PlxuICAgICAgICB7cmVuZGVySXRlbSh7aXNBY3RpdmU6IGFjdGl2ZSwgaXRlbSwgdG91Y2hQcm9wczogdGhpcy50dC5wYW5SZXNwb25kZXIucGFuSGFuZGxlcnN9KX1cbiAgICAgIDwvQW5pbWF0ZWQuVmlldz5cbiAgICApXG4gIH1cblxuICBvbkRyYWdTdGFydCA9ICh7aXRlbURhdGF9KSA9PiB7XG4gICAgY29uc3QgbmV3U3RhdGUgPSB7ZHJhZ2dpbmc6IHRydWV9XG5cbiAgICBpZiAoaXRlbURhdGEuaW5kZXggPT0gdGhpcy5wLml0ZW1JbmRleCkge1xuICAgICAgbmV3U3RhdGUuYWN0aXZlID0gdHJ1ZVxuICAgICAgdGhpcy5iYXNlWEF0U3RhcnRlZERyYWdnaW5nID0gdGhpcy5nZXRCYXNlWCgpXG4gICAgfVxuXG4gICAgdGhpcy5zZXRTdGF0ZShuZXdTdGF0ZSlcbiAgfVxuXG4gIG9uRHJhZ0VuZEFuaW1hdGlvbiA9ICgpID0+IHRoaXMuc2V0U3RhdGUoe2FjdGl2ZTogZmFsc2UsIGRyYWdnaW5nOiBmYWxzZX0pXG5cbiAgb25MYXlvdXQgPSAoZSkgPT4ge1xuICAgIGNvbnN0IHtjb250cm9sbGVyLCBpdGVtLCBpdGVtSW5kZXh9ID0gdGhpcy5wXG5cbiAgICBjb250cm9sbGVyLm9uSXRlbUxheW91dCh7ZXZlbnRzOiB0aGlzLnR0LmV2ZW50cywgaW5kZXg6IGl0ZW1JbmRleCwgaXRlbSwgbGF5b3V0OiBlLm5hdGl2ZUV2ZW50LmxheW91dH0pXG5cbiAgICBpZiAoIXRoaXMudHQuaW5pdGlhbExheW91dCkge1xuICAgICAgdGhpcy5pbml0aWFsTGF5b3V0ID0gZS5uYXRpdmVFdmVudC5sYXlvdXRcbiAgICB9XG4gIH1cblxuICBvbk1vdmUgPSAoe2dlc3RhdGV9KSA9PiB7XG4gICAgY29uc3QgeCA9IGdlc3RhdGUuZHggKyB0aGlzLnR0LmJhc2VYQXRTdGFydGVkRHJhZ2dpbmcgLSB0aGlzLnR0LmluaXRpYWxMYXlvdXQueFxuICAgIGNvbnN0IHkgPSB0aGlzLnR0LmluaXRpYWxMYXlvdXQueVxuXG4gICAgdGhpcy50dC5wb3NpdGlvbi5zZXRWYWx1ZSh7eCwgeX0pXG5cbiAgICBpZiAodGhpcy5wcm9wcy5vbkl0ZW1Nb3ZlZCkge1xuICAgICAgdGhpcy5wLm9uSXRlbU1vdmVkKHtpdGVtSW5kZXg6IHRoaXMucC5pdGVtSW5kZXgsIHgsIHl9KVxuICAgIH1cbiAgfVxuXG4gIG9uTW92ZVRvUG9zaXRpb24gPSAoe3gsIHl9KSA9PiB7XG4gICAgY29uc3QgY2FsY3VsYXRlZFhGcm9tU3RhcnRpbmdQb3NpdGlvbiA9IHggLSB0aGlzLnR0LmluaXRpYWxMYXlvdXQueFxuICAgIGNvbnN0IGFuaW1hdGlvbkFyZ3MgPSB7XG4gICAgICBkdXJhdGlvbjogMjAwLFxuICAgICAgZWFzaW5nOiBFYXNpbmcuaW5PdXQoRWFzaW5nLmxpbmVhciksXG4gICAgICB0b1ZhbHVlOiB7XG4gICAgICAgIHg6IGNhbGN1bGF0ZWRYRnJvbVN0YXJ0aW5nUG9zaXRpb24sXG4gICAgICAgIHlcbiAgICAgIH0sXG4gICAgICB1c2VOYXRpdmVEcml2ZXI6IHRydWUsXG4gICAgfVxuICAgIGNvbnN0IGFuaW1hdGlvbkV2ZW50QXJncyA9IHthbmltYXRpb25BcmdzLCBhbmltYXRpb25UeXBlOiBcIm1vdmVUb1Bvc2l0aW9uXCIsIGl0ZW06IHRoaXMucC5pdGVtfVxuXG4gICAgdGhpcy5wLmNvbnRyb2xsZXIuZXZlbnRzLmVtaXQoXCJvbkFuaW1hdGlvblN0YXJ0XCIsIGFuaW1hdGlvbkV2ZW50QXJncylcblxuICAgIEFuaW1hdGVkXG4gICAgICAudGltaW5nKHRoaXMudHQucG9zaXRpb24sIGFuaW1hdGlvbkFyZ3MpXG4gICAgICAuc3RhcnQoKCkgPT4ge1xuICAgICAgICB0aGlzLnAuY29udHJvbGxlci5ldmVudHMuZW1pdChcIm9uQW5pbWF0aW9uRW5kXCIsIGFuaW1hdGlvbkV2ZW50QXJncylcbiAgICAgIH0pXG5cbiAgICBpZiAodGhpcy5wcm9wcy5vbkl0ZW1Nb3ZlZCkge1xuICAgICAgdGhpcy5wLm9uSXRlbU1vdmVkKHtcbiAgICAgICAgYW5pbWF0aW9uQXJncyxcbiAgICAgICAgaXRlbUluZGV4OiB0aGlzLnAuaXRlbUluZGV4LFxuICAgICAgICB4OiBjYWxjdWxhdGVkWEZyb21TdGFydGluZ1Bvc2l0aW9uLFxuICAgICAgICB5XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGdldEJhc2VYID0gKCkgPT4gdGhpcy5wLmNvbnRyb2xsZXIuZ2V0SXRlbURhdGFGb3JJbmRleCh0aGlzLnAuaXRlbUluZGV4KS5iYXNlWFxuXG4gIG9uUmVzZXRQb3NpdGlvbiA9IChhcmdzKSA9PiB7XG4gICAgY29uc3QgYmFzZVggPSB0aGlzLmdldEJhc2VYKCkgLSB0aGlzLnR0LmluaXRpYWxMYXlvdXQueFxuICAgIGNvbnN0IGFuaW1hdGlvbkFyZ3MgPSB7XG4gICAgICBkdXJhdGlvbjogMjAwLFxuICAgICAgZWFzaW5nOiBFYXNpbmcuaW5PdXQoRWFzaW5nLmxpbmVhciksXG4gICAgICB0b1ZhbHVlOiB7XG4gICAgICAgIHg6IGJhc2VYLFxuICAgICAgICB5OiAwXG4gICAgICB9LFxuICAgICAgdXNlTmF0aXZlRHJpdmVyOiB0cnVlLFxuICAgIH1cbiAgICBjb25zdCBhbmltYXRpb25FdmVudEFyZ3MgPSB7YW5pbWF0aW9uQXJncywgYW5pbWF0aW9uVHlwZTogXCJyZXNldFBvc2l0aW9uXCIsIGl0ZW06IHRoaXMucC5pdGVtfVxuXG4gICAgdGhpcy5wLmNvbnRyb2xsZXIuZXZlbnRzLmVtaXQoXCJvbkFuaW1hdGlvblN0YXJ0XCIsIGFuaW1hdGlvbkV2ZW50QXJncylcblxuICAgIEFuaW1hdGVkXG4gICAgICAudGltaW5nKHRoaXMudHQucG9zaXRpb24sIGFuaW1hdGlvbkFyZ3MpXG4gICAgICAuc3RhcnQoKCkgPT4ge1xuICAgICAgICB0aGlzLnAuY29udHJvbGxlci5ldmVudHMuZW1pdChcIm9uQW5pbWF0aW9uRW5kXCIsIGFuaW1hdGlvbkV2ZW50QXJncylcbiAgICAgICAgaWYgKGFyZ3M/LmNhbGxiYWNrKSBhcmdzLmNhbGxiYWNrKClcbiAgICAgIH0pXG5cbiAgICBpZiAodGhpcy5wcm9wcy5vbkl0ZW1Nb3ZlZCkge1xuICAgICAgdGhpcy5wLm9uSXRlbU1vdmVkKHtcbiAgICAgICAgYW5pbWF0aW9uQXJncyxcbiAgICAgICAgaXRlbUluZGV4OiB0aGlzLnAuaXRlbUluZGV4LFxuICAgICAgICB4OiBiYXNlWCxcbiAgICAgICAgeTogMFxuICAgICAgfSlcbiAgICB9XG4gIH1cbn0pKVxuIl19
|
|
179
|
+
}),
|
|
180
|
+
_a)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-logger.d.ts","sourceRoot":"
|
|
1
|
+
{"version":3,"file":"error-logger.d.ts","sourceRoot":"","sources":["../src/error-logger.js"],"names":[],"mappings":"AAGA;IAEI,mBAAsB;IACtB,uBAA0B;IAC1B,cAAgB;IAChB,yBAA4B;IAC5B,mCAA8C;IAWhD,8BAEC;IAED,eAIC;IAED,uBAA6B;IAC7B,4BAAmD;IACnD,+BAAiF;IACjF,4BAAoF;IAEpF,uBAYC;IAED,kCAYC;IAED,mCAoBC;IAED,gDAkBC;IAED,iCAIC;CACF;6BA7G4B,yBAAyB"}
|