@kaspernj/api-maker 1.0.2160 → 1.0.2161
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 +46 -34
- package/build/api.d.ts.map +1 -1
- package/build/api.js +32 -25
- package/build/attribute-not-loaded-error.d.ts.map +1 -1
- package/build/attribute-not-loaded-error.js +2 -1
- package/build/base-error.d.ts +49 -60
- package/build/base-error.d.ts.map +1 -1
- package/build/base-error.js +3 -2
- package/build/base-model/column.d.ts +2 -2
- package/build/base-model/column.d.ts.map +1 -1
- package/build/base-model/column.js +3 -2
- package/build/base-model/reflection.d.ts +8 -3
- package/build/base-model/reflection.d.ts.map +1 -1
- package/build/base-model/reflection.js +8 -3
- package/build/base-model/scope.d.ts +1 -1
- package/build/base-model/scope.d.ts.map +1 -1
- package/build/base-model/scope.js +3 -2
- package/build/base-model.d.ts +3801 -117
- package/build/base-model.d.ts.map +1 -1
- package/build/base-model.js +271 -143
- package/build/bootstrap/attribute-row.d.ts +12 -0
- package/build/bootstrap/attribute-row.d.ts.map +1 -1
- package/build/bootstrap/attribute-row.js +23 -5
- package/build/bootstrap/attribute-rows.d.ts +8 -0
- package/build/bootstrap/attribute-rows.d.ts.map +1 -1
- package/build/bootstrap/attribute-rows.js +14 -5
- package/build/bootstrap/card.d.ts +17 -0
- package/build/bootstrap/card.d.ts.map +1 -1
- package/build/bootstrap/card.js +30 -10
- package/build/bootstrap/checkbox.d.ts +16 -0
- package/build/bootstrap/checkbox.d.ts.map +1 -1
- package/build/bootstrap/checkbox.js +20 -2
- package/build/bootstrap/checkboxes.d.ts +31 -0
- package/build/bootstrap/checkboxes.d.ts.map +1 -1
- package/build/bootstrap/checkboxes.js +35 -3
- package/build/bootstrap/index.js +2 -1
- package/build/bootstrap/input.d.ts +24 -0
- package/build/bootstrap/input.d.ts.map +1 -1
- package/build/bootstrap/input.js +27 -2
- package/build/bootstrap/invalid-feedback.d.ts.map +1 -1
- package/build/bootstrap/invalid-feedback.js +2 -1
- package/build/bootstrap/paginate.d.ts +5 -0
- package/build/bootstrap/paginate.d.ts.map +1 -1
- package/build/bootstrap/paginate.js +9 -4
- package/build/bootstrap/radio-buttons.js +2 -1
- package/build/bootstrap/select.js +2 -1
- package/build/bootstrap/sort-link.d.ts +10 -0
- package/build/bootstrap/sort-link.d.ts.map +1 -1
- package/build/bootstrap/sort-link.js +15 -4
- package/build/cable-connection-pool.d.ts +201 -24
- package/build/cable-connection-pool.d.ts.map +1 -1
- package/build/cable-connection-pool.js +76 -16
- package/build/cable-subscription-pool.d.ts +186 -20
- package/build/cable-subscription-pool.d.ts.map +1 -1
- package/build/cable-subscription-pool.js +61 -22
- package/build/cable-subscription.d.ts.map +1 -1
- package/build/cable-subscription.js +3 -2
- package/build/cache-key-generator.d.ts +194 -20
- package/build/cache-key-generator.d.ts.map +1 -1
- package/build/cache-key-generator.js +63 -12
- package/build/can-can.d.ts +146 -29
- package/build/can-can.d.ts.map +1 -1
- package/build/can-can.js +105 -19
- package/build/channels-consumer.d.ts +23 -1
- package/build/channels-consumer.d.ts.map +1 -1
- package/build/channels-consumer.js +26 -8
- package/build/collection-loader.js +2 -1
- package/build/collection.d.ts +361 -370
- package/build/collection.d.ts.map +1 -1
- package/build/collection.js +59 -19
- package/build/command-execution.d.ts +50 -26
- package/build/command-execution.d.ts.map +1 -1
- package/build/command-execution.js +31 -13
- package/build/command-submit-data.d.ts +50 -37
- package/build/command-submit-data.d.ts.map +1 -1
- package/build/command-submit-data.js +35 -22
- package/build/commands-pool.d.ts +65 -27
- package/build/commands-pool.d.ts.map +1 -1
- package/build/commands-pool.js +67 -20
- package/build/compose.d.ts +8 -2
- package/build/compose.d.ts.map +1 -1
- package/build/compose.js +9 -2
- package/build/config.d.ts +31 -15
- package/build/config.d.ts.map +1 -1
- package/build/config.js +60 -23
- package/build/custom-error.d.ts.map +1 -1
- package/build/custom-error.js +2 -1
- package/build/data-set-to-attributes.d.ts +14 -2
- package/build/data-set-to-attributes.d.ts.map +1 -1
- package/build/data-set-to-attributes.js +12 -3
- package/build/deserializer.d.ts +116 -2
- package/build/deserializer.d.ts.map +1 -1
- package/build/deserializer.js +13 -2
- package/build/destroy-error.d.ts.map +1 -1
- package/build/destroy-error.js +2 -1
- package/build/devise.d.ts +638 -39
- package/build/devise.d.ts.map +1 -1
- package/build/devise.js +97 -28
- package/build/draggable-sort/controller.d.ts +126 -35
- package/build/draggable-sort/controller.d.ts.map +1 -1
- package/build/draggable-sort/controller.js +100 -28
- package/build/draggable-sort/index.d.ts +55 -0
- package/build/draggable-sort/index.d.ts.map +1 -1
- package/build/draggable-sort/index.js +71 -3
- package/build/draggable-sort/item.d.ts +54 -0
- package/build/draggable-sort/item.d.ts.map +1 -1
- package/build/draggable-sort/item.js +94 -6
- package/build/error-logger.d.ts +30 -14
- package/build/error-logger.d.ts.map +1 -1
- package/build/error-logger.js +22 -11
- package/build/event-connection.d.ts.map +1 -1
- package/build/event-connection.js +3 -2
- package/build/event-emitter-listener.d.ts.map +1 -1
- package/build/event-emitter-listener.js +2 -1
- package/build/event-model-class.d.ts.map +1 -1
- package/build/event-model-class.js +2 -1
- package/build/events.d.ts.map +1 -1
- package/build/events.js +2 -1
- package/build/form.d.ts +23 -0
- package/build/form.d.ts.map +1 -1
- package/build/form.js +16 -4
- package/build/history-expo.d.ts +6 -2
- package/build/history-expo.d.ts.map +1 -1
- package/build/history-expo.js +5 -2
- package/build/history-react-native.d.ts +6 -2
- package/build/history-react-native.d.ts.map +1 -1
- package/build/history-react-native.js +5 -2
- package/build/history.js +2 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +2 -1
- package/build/inputs/attachment.d.ts +11 -0
- package/build/inputs/attachment.d.ts.map +1 -1
- package/build/inputs/attachment.js +17 -4
- package/build/inputs/auto-submit.d.ts +41 -13
- package/build/inputs/auto-submit.d.ts.map +1 -1
- package/build/inputs/auto-submit.js +16 -4
- package/build/inputs/checkbox.d.ts +15 -0
- package/build/inputs/checkbox.d.ts.map +1 -1
- package/build/inputs/checkbox.js +22 -6
- package/build/inputs/checkboxes.d.ts +16 -0
- package/build/inputs/checkboxes.d.ts.map +1 -1
- package/build/inputs/checkboxes.js +20 -4
- package/build/inputs/id-for-component.d.ts +21 -2
- package/build/inputs/id-for-component.d.ts.map +1 -1
- package/build/inputs/id-for-component.js +9 -2
- package/build/inputs/input-wrapper.d.ts.map +1 -1
- package/build/inputs/input-wrapper.js +2 -1
- package/build/inputs/input.d.ts +36 -0
- package/build/inputs/input.d.ts.map +1 -1
- package/build/inputs/input.js +26 -7
- package/build/inputs/money.d.ts +2 -0
- package/build/inputs/money.d.ts.map +1 -1
- package/build/inputs/money.js +6 -3
- package/build/inputs/name-for-component.d.ts +21 -2
- package/build/inputs/name-for-component.d.ts.map +1 -1
- package/build/inputs/name-for-component.js +9 -2
- package/build/inputs/select.d.ts +33 -0
- package/build/inputs/select.d.ts.map +1 -1
- package/build/inputs/select.js +21 -4
- package/build/instance-of-class-name.d.ts +7 -2
- package/build/instance-of-class-name.d.ts.map +1 -1
- package/build/instance-of-class-name.js +8 -4
- package/build/is-expo.d.ts.map +1 -1
- package/build/is-expo.js +2 -1
- package/build/key-value-store.d.ts +24 -14
- package/build/key-value-store.d.ts.map +1 -1
- package/build/key-value-store.js +22 -12
- package/build/link.d.ts +30 -0
- package/build/link.d.ts.map +1 -1
- package/build/link.js +76 -30
- package/build/logger.d.ts +10 -6
- package/build/logger.d.ts.map +1 -1
- package/build/logger.js +7 -4
- package/build/merge-styles.d.ts +10 -2
- package/build/merge-styles.d.ts.map +1 -1
- package/build/merge-styles.js +10 -3
- package/build/modal.d.ts +2 -0
- package/build/modal.d.ts.map +1 -1
- package/build/modal.js +6 -4
- package/build/model-class-require.d.ts +4 -2
- package/build/model-class-require.d.ts.map +1 -1
- package/build/model-class-require.js +4 -2
- package/build/model-events.d.ts +139 -346
- package/build/model-events.d.ts.map +1 -1
- package/build/model-events.js +21 -9
- package/build/model-name.d.ts +21 -7
- package/build/model-name.d.ts.map +1 -1
- package/build/model-name.js +12 -2
- package/build/model-prop-type.d.ts +533 -26
- package/build/model-prop-type.d.ts.map +1 -1
- package/build/model-prop-type.js +69 -11
- package/build/model-recipes-loader.d.ts +7 -3
- package/build/model-recipes-loader.d.ts.map +1 -1
- package/build/model-recipes-loader.js +4 -2
- package/build/model-recipes-model-loader.d.ts +189 -1493
- package/build/model-recipes-model-loader.d.ts.map +1 -1
- package/build/model-recipes-model-loader.js +119 -17
- package/build/models-response-reader.d.ts +600 -195
- package/build/models-response-reader.d.ts.map +1 -1
- package/build/models-response-reader.js +12 -4
- package/build/models.d.ts +438 -1
- package/build/models.d.ts.map +1 -1
- package/build/models.js +2 -1
- package/build/money-formatter.d.ts +25 -31
- package/build/money-formatter.d.ts.map +1 -1
- package/build/money-formatter.js +11 -8
- package/build/not-loaded-error.d.ts.map +1 -1
- package/build/not-loaded-error.js +2 -1
- package/build/params.d.ts +25 -17
- package/build/params.d.ts.map +1 -1
- package/build/params.js +19 -15
- package/build/preloaded.d.ts +61 -64
- package/build/preloaded.d.ts.map +1 -1
- package/build/preloaded.js +10 -4
- package/build/reset-realtime-runtime-state.d.ts.map +1 -1
- package/build/reset-realtime-runtime-state.js +2 -1
- package/build/resize-observer.d.ts.map +1 -1
- package/build/resize-observer.js +2 -1
- package/build/rest-props-validator.d.ts +2 -2
- package/build/rest-props-validator.d.ts.map +1 -1
- package/build/rest-props-validator.js +3 -2
- package/build/result.d.ts +142 -175
- package/build/result.d.ts.map +1 -1
- package/build/result.js +3 -2
- package/build/router/route.d.ts +50 -0
- package/build/router/route.d.ts.map +1 -1
- package/build/router/route.js +39 -10
- package/build/router/switch.d.ts +37 -1
- package/build/router/switch.d.ts.map +1 -1
- package/build/router/switch.js +29 -7
- package/build/router.d.ts +20 -0
- package/build/router.d.ts.map +1 -1
- package/build/router.js +15 -4
- package/build/routes-native.d.ts +13 -13
- package/build/routes-native.d.ts.map +1 -1
- package/build/routes-native.js +23 -11
- package/build/routes.d.ts +17 -9
- package/build/routes.d.ts.map +1 -1
- package/build/routes.js +7 -2
- package/build/run-last.d.ts.map +1 -1
- package/build/run-last.js +2 -1
- package/build/serializer.d.ts +44 -12
- package/build/serializer.d.ts.map +1 -1
- package/build/serializer.js +36 -7
- package/build/services.d.ts +29 -4
- package/build/services.d.ts.map +1 -1
- package/build/services.js +16 -4
- package/build/session-status-updater.d.ts +73 -25
- package/build/session-status-updater.d.ts.map +1 -1
- package/build/session-status-updater.js +52 -14
- package/build/source-maps-loader.d.ts +88 -33
- package/build/source-maps-loader.d.ts.map +1 -1
- package/build/source-maps-loader.js +74 -18
- package/build/super-admin/config-reader.d.ts.map +1 -1
- package/build/super-admin/config-reader.js +11 -16
- package/build/super-admin/edit-page/edit-attribute-checkbox.d.ts +10 -0
- package/build/super-admin/edit-page/edit-attribute-checkbox.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute-checkbox.js +16 -4
- package/build/super-admin/edit-page/edit-attribute-content.d.ts +9 -0
- package/build/super-admin/edit-page/edit-attribute-content.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute-content.js +15 -4
- package/build/super-admin/edit-page/edit-attribute-input.d.ts +8 -0
- package/build/super-admin/edit-page/edit-attribute-input.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute-input.js +13 -4
- package/build/super-admin/edit-page/edit-attribute.d.ts +6 -0
- package/build/super-admin/edit-page/edit-attribute.d.ts.map +1 -1
- package/build/super-admin/edit-page/edit-attribute.js +11 -4
- package/build/super-admin/edit-page.d.ts +5 -0
- package/build/super-admin/edit-page.d.ts.map +1 -1
- package/build/super-admin/edit-page.js +11 -5
- package/build/super-admin/has-edit-config.d.ts.map +1 -1
- package/build/super-admin/has-edit-config.js +2 -1
- package/build/super-admin/index-page.d.ts +4 -0
- package/build/super-admin/index-page.d.ts.map +1 -1
- package/build/super-admin/index-page.js +9 -4
- package/build/super-admin/index.d.ts +4 -0
- package/build/super-admin/index.d.ts.map +1 -1
- package/build/super-admin/index.js +12 -6
- package/build/super-admin/layout/header/index.d.ts +4 -0
- package/build/super-admin/layout/header/index.d.ts.map +1 -1
- package/build/super-admin/layout/header/index.js +13 -8
- package/build/super-admin/layout/index.d.ts +24 -0
- package/build/super-admin/layout/index.d.ts.map +1 -1
- package/build/super-admin/layout/index.js +33 -5
- package/build/super-admin/layout/menu/index.d.ts +2 -0
- package/build/super-admin/layout/menu/index.d.ts.map +1 -1
- package/build/super-admin/layout/menu/index.js +8 -6
- package/build/super-admin/layout/menu/menu-content.d.ts +2 -0
- package/build/super-admin/layout/menu/menu-content.d.ts.map +1 -1
- package/build/super-admin/layout/menu/menu-content.js +6 -4
- package/build/super-admin/layout/menu/menu-item.d.ts +9 -0
- package/build/super-admin/layout/menu/menu-item.d.ts.map +1 -1
- package/build/super-admin/layout/menu/menu-item.js +15 -4
- package/build/super-admin/layout/no-access.d.ts +2 -0
- package/build/super-admin/layout/no-access.d.ts.map +1 -1
- package/build/super-admin/layout/no-access.js +7 -5
- package/build/super-admin/model-class-table.d.ts +4 -0
- package/build/super-admin/model-class-table.d.ts.map +1 -1
- package/build/super-admin/model-class-table.js +9 -4
- package/build/super-admin/models.d.ts.map +1 -1
- package/build/super-admin/models.js +2 -1
- package/build/super-admin/show-nav.d.ts +2 -0
- package/build/super-admin/show-nav.d.ts.map +1 -1
- package/build/super-admin/show-nav.js +6 -4
- package/build/super-admin/show-page/belongs-to-attribute-row.d.ts +17 -1
- 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 +14 -5
- package/build/super-admin/show-page/index.d.ts +4 -0
- package/build/super-admin/show-page/index.d.ts.map +1 -1
- package/build/super-admin/show-page/index.js +9 -4
- package/build/super-admin/show-reflection-actions.d.ts +6 -0
- package/build/super-admin/show-reflection-actions.d.ts.map +1 -1
- package/build/super-admin/show-reflection-actions.js +11 -4
- package/build/super-admin/show-reflection-link.d.ts +4 -0
- package/build/super-admin/show-reflection-link.d.ts.map +1 -1
- package/build/super-admin/show-reflection-link.js +9 -4
- package/build/super-admin/show-reflection-page.d.ts +5 -0
- package/build/super-admin/show-reflection-page.d.ts.map +1 -1
- package/build/super-admin/show-reflection-page.js +10 -4
- package/build/table/column-content.d.ts +155 -19
- package/build/table/column-content.d.ts.map +1 -1
- package/build/table/column-content.js +55 -12
- package/build/table/column-identifier.d.ts +11 -2
- package/build/table/column-identifier.d.ts.map +1 -1
- package/build/table/column-identifier.js +7 -2
- package/build/table/column-visible.d.ts +11 -2
- package/build/table/column-visible.d.ts.map +1 -1
- package/build/table/column-visible.js +8 -2
- package/build/table/components/column.d.ts +2 -0
- package/build/table/components/column.d.ts.map +1 -1
- package/build/table/components/column.js +6 -4
- package/build/table/components/flat-list.d.ts +2 -0
- package/build/table/components/flat-list.d.ts.map +1 -1
- package/build/table/components/flat-list.js +6 -4
- package/build/table/components/header.d.ts +2 -0
- package/build/table/components/header.d.ts.map +1 -1
- package/build/table/components/header.js +6 -4
- package/build/table/components/row.d.ts +2 -0
- package/build/table/components/row.d.ts.map +1 -1
- package/build/table/components/row.js +6 -4
- package/build/table/filters/attribute-element.d.ts +2 -0
- package/build/table/filters/attribute-element.d.ts.map +1 -1
- package/build/table/filters/attribute-element.js +7 -7
- package/build/table/filters/filter-form.d.ts +58 -0
- package/build/table/filters/filter-form.d.ts.map +1 -1
- package/build/table/filters/filter-form.js +72 -9
- package/build/table/filters/filter.d.ts +2 -0
- package/build/table/filters/filter.d.ts.map +1 -1
- package/build/table/filters/filter.js +6 -4
- package/build/table/filters/index.d.ts +127 -0
- package/build/table/filters/index.d.ts.map +1 -1
- package/build/table/filters/index.js +21 -4
- package/build/table/filters/load-search-modal.d.ts +130 -0
- package/build/table/filters/load-search-modal.d.ts.map +1 -1
- package/build/table/filters/load-search-modal.js +28 -6
- package/build/table/filters/reflection-element.d.ts +2 -0
- package/build/table/filters/reflection-element.d.ts.map +1 -1
- package/build/table/filters/reflection-element.js +6 -4
- package/build/table/filters/save-search-modal.d.ts +134 -0
- package/build/table/filters/save-search-modal.d.ts.map +1 -1
- package/build/table/filters/save-search-modal.js +36 -5
- package/build/table/filters/scope-element.d.ts +6 -0
- package/build/table/filters/scope-element.d.ts.map +1 -1
- package/build/table/filters/scope-element.js +13 -8
- package/build/table/header-column-content.d.ts +7 -0
- package/build/table/header-column-content.d.ts.map +1 -1
- package/build/table/header-column-content.js +12 -4
- package/build/table/header-column.d.ts +50 -0
- package/build/table/header-column.d.ts.map +1 -1
- package/build/table/header-column.js +32 -5
- package/build/table/header-select.d.ts +18 -0
- package/build/table/header-select.d.ts.map +1 -1
- package/build/table/header-select.js +19 -4
- package/build/table/model-callback-args.d.ts +116 -3
- package/build/table/model-callback-args.d.ts.map +1 -1
- package/build/table/model-callback-args.js +10 -3
- package/build/table/model-column.d.ts +136 -0
- package/build/table/model-column.d.ts.map +1 -1
- package/build/table/model-column.js +27 -4
- package/build/table/model-row.d.ts +19 -0
- package/build/table/model-row.d.ts.map +1 -1
- package/build/table/model-row.js +24 -4
- package/build/table/select-calculator.d.ts +37 -2
- package/build/table/select-calculator.d.ts.map +1 -1
- package/build/table/select-calculator.js +29 -6
- package/build/table/settings/column-row.d.ts +6 -0
- package/build/table/settings/column-row.d.ts.map +1 -1
- package/build/table/settings/column-row.js +13 -12
- package/build/table/settings/download-action.d.ts +5 -0
- package/build/table/settings/download-action.d.ts.map +1 -1
- package/build/table/settings/download-action.js +10 -4
- package/build/table/settings/index.d.ts +5 -0
- package/build/table/settings/index.d.ts.map +1 -1
- package/build/table/settings/index.js +10 -4
- package/build/table/should-render-loading-content.d.ts +2 -2
- package/build/table/should-render-loading-content.d.ts.map +1 -1
- package/build/table/should-render-loading-content.js +3 -2
- package/build/table/table-settings.d.ts +236 -43
- package/build/table/table-settings.d.ts.map +1 -1
- package/build/table/table-settings.js +104 -20
- package/build/table/table.d.ts +271 -0
- package/build/table/table.d.ts.map +1 -1
- package/build/table/table.js +167 -16
- package/build/table/use-sorting.d.ts +10 -8
- package/build/table/use-sorting.d.ts.map +1 -1
- package/build/table/use-sorting.js +16 -8
- package/build/table/widths.d.ts +55 -8
- package/build/table/widths.d.ts.map +1 -1
- package/build/table/widths.js +25 -2
- package/build/table/worker-plugins-check-all-checkbox.d.ts +18 -0
- package/build/table/worker-plugins-check-all-checkbox.d.ts.map +1 -1
- package/build/table/worker-plugins-check-all-checkbox.js +25 -5
- package/build/table/worker-plugins-checkbox.d.ts +5 -0
- package/build/table/worker-plugins-checkbox.d.ts.map +1 -1
- package/build/table/worker-plugins-checkbox.js +10 -4
- package/build/translated-attributes.d.ts +7 -2
- package/build/translated-attributes.d.ts.map +1 -1
- package/build/translated-attributes.js +8 -2
- package/build/translated-collections.d.ts +11 -2
- package/build/translated-collections.d.ts.map +1 -1
- package/build/translated-collections.js +9 -3
- package/build/updated-attribute.d.ts.map +1 -1
- package/build/updated-attribute.js +2 -1
- package/build/url-encode.d.ts.map +1 -1
- package/build/url-encode.js +2 -1
- package/build/use-can-can.d.ts +2 -2
- package/build/use-can-can.d.ts.map +1 -1
- package/build/use-can-can.js +27 -12
- package/build/use-collection.d.ts +167 -121
- package/build/use-collection.d.ts.map +1 -1
- package/build/use-collection.js +113 -44
- package/build/use-created-event.d.ts +120 -11
- package/build/use-created-event.d.ts.map +1 -1
- package/build/use-created-event.js +10 -7
- package/build/use-current-user-context.d.ts +2 -2
- package/build/use-current-user-context.d.ts.map +1 -1
- package/build/use-current-user-context.js +3 -2
- package/build/use-current-user.d.ts +86 -70
- package/build/use-current-user.d.ts.map +1 -1
- package/build/use-current-user.js +36 -8
- package/build/use-destroyed-event.d.ts +117 -8
- package/build/use-destroyed-event.d.ts.map +1 -1
- package/build/use-destroyed-event.js +29 -22
- package/build/use-input.d.ts +74 -12
- package/build/use-input.d.ts.map +1 -1
- package/build/use-input.js +33 -5
- package/build/use-model-class-event.d.ts +124 -10
- package/build/use-model-class-event.d.ts.map +1 -1
- package/build/use-model-class-event.js +26 -16
- package/build/use-model-event.d.ts +121 -8
- package/build/use-model-event.d.ts.map +1 -1
- package/build/use-model-event.js +24 -19
- package/build/use-model.d.ts +162 -244
- package/build/use-model.d.ts.map +1 -1
- package/build/use-model.js +85 -32
- package/build/use-resize-observer.d.ts.map +1 -1
- package/build/use-resize-observer.js +2 -1
- package/build/use-router.d.ts.map +1 -1
- package/build/use-router.js +2 -1
- package/build/use-screen-layout.d.ts +7 -2
- package/build/use-screen-layout.d.ts.map +1 -1
- package/build/use-screen-layout.js +8 -5
- package/build/use-shape.js +2 -1
- package/build/use-styles.d.ts +11 -5
- package/build/use-styles.d.ts.map +1 -1
- package/build/use-styles.js +16 -9
- package/build/use-updated-event.d.ts +66 -182
- package/build/use-updated-event.d.ts.map +1 -1
- package/build/use-updated-event.js +22 -18
- package/build/use-validation-errors.d.ts.map +1 -1
- package/build/use-validation-errors.js +2 -1
- package/build/utils/button.d.ts +14 -0
- package/build/utils/button.d.ts.map +1 -1
- package/build/utils/button.js +24 -7
- package/build/utils/card.d.ts +9 -0
- package/build/utils/card.d.ts.map +1 -1
- package/build/utils/card.js +13 -2
- package/build/utils/checkbox.d.ts +12 -0
- package/build/utils/checkbox.d.ts.map +1 -1
- package/build/utils/checkbox.js +18 -4
- package/build/utils/checkboxes.d.ts +25 -0
- package/build/utils/checkboxes.d.ts.map +1 -1
- package/build/utils/checkboxes.js +29 -3
- package/build/utils/default-style.d.ts +10 -4
- package/build/utils/default-style.d.ts.map +1 -1
- package/build/utils/default-style.js +12 -4
- package/build/utils/header.d.ts +6 -1
- package/build/utils/header.d.ts.map +1 -1
- package/build/utils/header.js +4 -2
- package/build/utils/icon.d.ts +7 -6
- package/build/utils/icon.d.ts.map +1 -1
- package/build/utils/icon.js +12 -11
- package/build/utils/invalid-feedback.d.ts +4 -0
- package/build/utils/invalid-feedback.d.ts.map +1 -1
- package/build/utils/invalid-feedback.js +8 -2
- package/build/utils/modal.d.ts +2 -0
- package/build/utils/modal.d.ts.map +1 -1
- package/build/utils/modal.js +9 -7
- package/build/utils/text.d.ts +8 -1
- package/build/utils/text.d.ts.map +1 -1
- package/build/utils/text.js +9 -2
- package/build/validation-error.d.ts +5 -2
- package/build/validation-error.d.ts.map +1 -1
- package/build/validation-error.js +5 -2
- package/build/validation-errors.d.ts +57 -15
- package/build/validation-errors.d.ts.map +1 -1
- package/build/validation-errors.js +37 -8
- package/build/websocket-request-client.d.ts +61 -15
- package/build/websocket-request-client.d.ts.map +1 -1
- package/build/websocket-request-client.js +35 -9
- package/build/with-api-maker.d.ts.map +1 -1
- package/build/with-api-maker.js +2 -1
- package/build/with-collection.d.ts.map +1 -1
- package/build/with-collection.js +2 -1
- package/build/with-current-user.d.ts.map +1 -1
- package/build/with-current-user.js +2 -1
- package/build/with-model.d.ts.map +1 -1
- package/build/with-model.js +2 -1
- package/build/with-router.d.ts.map +1 -1
- package/build/with-router.js +2 -1
- package/package.json +4 -3
- package/build/base-component.d.ts +0 -5
- package/build/base-component.d.ts.map +0 -1
- package/build/base-component.js +0 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection.d.ts","sourceRoot":"/src/","sources":["collection.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"collection.d.ts","sourceRoot":"/src/","sources":["collection.js"],"names":[],"mappings":"AASA;;;GAGG;AAEH,kGAAkG;AAClG,6DAA6D;AAC7D,qIAAqI;AACrI,4EAA4E;AAC5E,0FAA0F;AAC1F;;;;;;;;;;;;GAYG;AACH,oEAAoE;AACpE;;;;;;;GAOG;AACH;;;;;GAKG;AACH;;;;;;GAMG;AAEH;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,8DAA8D;AAC9D,wCADyD,EAAE,SAA7C,cAAe,iBAAiB,EAAE,OAAQ;IAEtD,4BAAkC;IAElC;;;OAGG;IACH,kBAHW,kBAAkB,CAAC,EAAE,CAAC,cACtB,aAAa,EAOvB;IAFC,yBAA0B;IAC1B,6BAAgB;IAGlB;;;OAGG;IACH,6BAHW,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACtB,IAAI,CAmBhB;IAED;;;OAGG;IACH,0BAHW,MAAM,GACJ,IAAI,CAIhB;IAED,iCAAiC;IACjC,SADc,OAAO,CAAC,MAAM,CAAC,CAO5B;IAED,sBAAsB;IACtB,YADc,IAAI,CAGjB;IAED;;;OAGG;IACH,eAHW,CAAS,IAAiC,EAAjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAma+0b,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAnat5hB,KAAI,IAAI,GAChD,OAAO,CAAC,IAAI,CAAC,CAQzB;IAED;;;OAGG;IACH,gBAHc,MAAM,EAAA,GACP,IAAI,CAYhB;IAED,sCAAsC;IACtC,SADc,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAIjC;IAED;;;OAGG;IACH,oCAHc,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAA,GAC5B,IAAI,CAmBhB;IAED,kEAAkE;IAClE,gBADc,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAS7D;IAED,yBAAyB;IACzB,YADc,OAAO,CAWpB;IAED;;;OAGG;IACH,cAHW,MAAM,GACJ,IAAI,CAIhB;IAED,oCAAoC;IACpC,aADc,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAO/B;IAED,kDAAkD;IAClD,UADc,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAoB7C;IAED,oCAAoC;IACpC,eADc,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAS/B;IAGD;;;OAGG;IACH,mBAHW,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAChB,IAAI,CAIhB;IAGD;;;OAGG;IACH,eAHW,OAAO,CAAC,EAAE,CAAC,GACT,IAAI,CAchB;IAGD;;;OAGG;IACH,eAHW,CAAS,IAAiC,EAAjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmQ+0b,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAnQt5hB,KAAG,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmQoyb,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAhQh5hB;IAE3D;;;OAGG;IACH,kBAHW,CAAS,IAAiC,EAAjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA6P+0b,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA7Pt5hB,KAAG,IAAI,GAC/C,IAAI,CAEgD;IAEjE;;;OAGG;IACH,cAHW,CAAS,IAAiC,EAAjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAuP+0b,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAvPt5hB,KAAG,IAAI,GAC/C,KAAK,CAAC,OAAO,CAAC,CAE8B;IAEzD;;;OAGG;IACH,sBAHW,YAAY,GACV,IAAI,CAIhB;IAED;;;OAGG;IACH,WAHW,MAAM,GACJ,IAAI,CAMhB;IAED;;;OAGG;IACH,iBAHW,MAAM,GACJ,IAAI,CAIhB;IAED,yBAAyB;IACzB,cADc,OAAO,CAkBpB;IAED,oCAAoC;IACpC,UADc,kBAAkB,CAoB/B;IAED;;;OAGG;IACH,SAHW,MAAM,GACJ,IAAI,CAIhB;IAED;;;OAGG;IACH,eAHW,MAAM,GACJ,IAAI,CAIhB;IAED;;;OAGG;IACH,gBAHW,uBAAuB,GACrB,IAAI,CAKhB;IAED,iCAAiC;IACjC,UADc,OAAO,CAAC,MAAM,CAAC,CAU5B;IAED;;;OAGG;IACH,eAHW,sBAAsB,GACpB,IAAI,CAKhB;IAED;;;OAGG;IACH,qBAHW,MAAM,GACJ,IAAI,CAIhB;IAED;;;OAGG;IACH,uBAHW,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACtB,IAAI,CAmBhB;IAED;;;OAGG;IACH,8BAHW,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GACtB,IAAI,CAmBhB;IAED;;;OAGG;IACH,aAHW,MAAM,GACJ,IAAI,CAIhB;IAED,6CAA6C;IAC7C,WADc,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAQxC;IAED,oBAAoB;IACpB,cADc,EAAE,CAOf;IAED,oCAAoC;IACpC,iCAIC;IAGD;;;OAGG;IACH,0BAHW,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,GAChB,IAAI,CAMhB;IAED;;;OAGG;IACH,qBAHW,aAAa,GACX,IAAI,CAMhB;IAED,0DAA0D;IAC1D,aADc,OAAO,wBAAwB,EAAE,OAAO,CAiBrD;CACF;oBAziBuD,EAAE,SAA7C,cAAe,iBAAiB,EAAE,OAAQ,IAC1C,YAAY,CAAC,EAAE,CAAC;yBAGf,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;2BACrE,MAAM,GAAG,MAAM,EAAE,GAAG,UAAU;uCAC9B,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;qCAC1F,wBAAwB,GAAG,MAAM,EAAE;sCACnC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;8BAEjD,CACZ,MAAU,GACV,MAAU,GACV,OAAW,GACX,IAAQ,GACJ,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAChC,YAAY,GACZ,uBAAuB,GACvB,sBAAsB,GACtB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CACzB;iCAEU,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;;WAG/B,MAAM;iBACN,MAAM;aACN,MAAM;gBACN,MAAM;gBACN,MAAM;;+BAGoC,EAAE,SAA7C,cAAe,iBAAiB,EAAE,OAAQ;gBAEzC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;UAClB,sBAAsB;;uBAGoB,EAAE,SAA7C,cAAe,iBAAiB,EAAE,OAAQ;gBAEzC,kBAAkB,CAAC,EAAE,CAAC;YACtB,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;cAClB,kBAAkB,CAAC,EAAE,CAAC;;+BAIoB,EAAE,SAA7C,cAAe,iBAAiB,EAAE,OAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA4f8yb,CAAC;;;6BAA6O,CAAC;;;;;;;oBAAoc,CAAC;;;;;6BAAm7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAzf/7hB,EAAE;qBACF,MAAM;;;gBAKN,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;mBACxB,MAAM;YACN,OAAO;eACP,OAAO;cACP,KAAK,CAAC,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAChC,MAAM;WACN,MAAM;cACN,MAAM;aACN,kBAAkB;UAClB,MAAM;aACN,MAAM;cACN,YAAY;cACZ,uBAAuB;aACvB,sBAAsB;gBACtB,MAAM;aACN,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;oBACxB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;;mBA3EnB,aAAa"}
|
package/build/collection.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// @ts-check
|
|
1
2
|
import cloneDeep from "clone-deep";
|
|
2
3
|
import CommandsPool from "./commands-pool.js"; // eslint-disable-line sort-imports
|
|
3
4
|
import { digg } from "diggerize";
|
|
@@ -9,8 +10,46 @@ import uniqunize from "uniqunize";
|
|
|
9
10
|
* @template {typeof import("./base-model.js").default} MC
|
|
10
11
|
* @typedef {InstanceType<MC>} ModelOf
|
|
11
12
|
*/
|
|
12
|
-
/** @typedef {Record<string,
|
|
13
|
-
/** @typedef {string |
|
|
13
|
+
/** @typedef {Record<string, string | string[] | Record<string, string | string[]>>} PreloadMap */
|
|
14
|
+
/** @typedef {string | string[] | PreloadMap} PreloadValue */
|
|
15
|
+
/** @typedef {Record<string, string | number | boolean | null | Array<string | number | boolean | null>>} CollectionSearchParamMap */
|
|
16
|
+
/** @typedef {CollectionSearchParamMap | string[]} CollectionSearchParams */
|
|
17
|
+
/** @typedef {Record<string, string | number | boolean | null>} CollectionRansackParams */
|
|
18
|
+
/**
|
|
19
|
+
* @typedef {(
|
|
20
|
+
* string |
|
|
21
|
+
* number |
|
|
22
|
+
* boolean |
|
|
23
|
+
* null |
|
|
24
|
+
* Array<string | [string, string]> |
|
|
25
|
+
* PreloadValue |
|
|
26
|
+
* CollectionRansackParams |
|
|
27
|
+
* CollectionSearchParams |
|
|
28
|
+
* Record<string, string[]>
|
|
29
|
+
* )} QueryParamValue
|
|
30
|
+
*/
|
|
31
|
+
/** @typedef {Record<string, QueryParamValue>} QueryParamValueMap */
|
|
32
|
+
/**
|
|
33
|
+
* @typedef {object} CollectionResponseMeta
|
|
34
|
+
* @property {number} count
|
|
35
|
+
* @property {number} currentPage
|
|
36
|
+
* @property {number} perPage
|
|
37
|
+
* @property {number} totalCount
|
|
38
|
+
* @property {number} totalPages
|
|
39
|
+
*/
|
|
40
|
+
/**
|
|
41
|
+
* @template {typeof import("./base-model.js").default} MC
|
|
42
|
+
* @typedef {object} CollectionResponse
|
|
43
|
+
* @property {Array<ModelOf<MC>>} collection
|
|
44
|
+
* @property {CollectionResponseMeta} meta
|
|
45
|
+
*/
|
|
46
|
+
/**
|
|
47
|
+
* @template {typeof import("./base-model.js").default} MC
|
|
48
|
+
* @typedef {object} ResultArgs
|
|
49
|
+
* @property {ApiMakerCollection<MC>} collection
|
|
50
|
+
* @property {Array<ModelOf<MC>>} models
|
|
51
|
+
* @property {CollectionResponse<MC>} response
|
|
52
|
+
*/
|
|
14
53
|
/**
|
|
15
54
|
* @template {typeof import("./base-model.js").default} MC
|
|
16
55
|
* @typedef {object} CollectionArgsType
|
|
@@ -28,12 +67,12 @@ import uniqunize from "uniqunize";
|
|
|
28
67
|
* @property {number} [limit]
|
|
29
68
|
* @property {number} [page]
|
|
30
69
|
* @property {string} [pageKey]
|
|
31
|
-
* @property {
|
|
70
|
+
* @property {QueryParamValueMap} [params]
|
|
32
71
|
* @property {number} [per]
|
|
33
72
|
* @property {string} [perKey]
|
|
34
73
|
* @property {PreloadValue} [preload]
|
|
35
|
-
* @property {
|
|
36
|
-
* @property {
|
|
74
|
+
* @property {CollectionRansackParams} [ransack]
|
|
75
|
+
* @property {CollectionSearchParams} [search]
|
|
37
76
|
* @property {string} [searchKey]
|
|
38
77
|
* @property {Record<string, string[]>} [select]
|
|
39
78
|
* @property {Record<string, string[]>} [selectColumns]
|
|
@@ -168,16 +207,16 @@ export default class ApiMakerCollection {
|
|
|
168
207
|
if (!(this.args.reflectionName in this.args.model.relationshipsCache)) {
|
|
169
208
|
throw new Error(`${this.args.reflectionName} hasnt been loaded yet`);
|
|
170
209
|
}
|
|
171
|
-
return this.args.model.relationshipsCache[this.args.reflectionName];
|
|
210
|
+
return /** @type {Array<ModelOf<MC>>} */ (this.args.model.relationshipsCache[this.args.reflectionName]);
|
|
172
211
|
}
|
|
173
212
|
/** @returns {ModelOf<MC> | Array<ModelOf<MC>>} */
|
|
174
213
|
loaded() {
|
|
175
214
|
const { model, reflectionName } = this.args;
|
|
176
215
|
if (reflectionName in model.relationships) {
|
|
177
|
-
return model.relationships[reflectionName];
|
|
216
|
+
return /** @type {ModelOf<MC> | Array<ModelOf<MC>>} */ (model.relationships[reflectionName]);
|
|
178
217
|
}
|
|
179
218
|
else if (reflectionName in model.relationshipsCache) {
|
|
180
|
-
return model.relationshipsCache[reflectionName];
|
|
219
|
+
return /** @type {ModelOf<MC> | Array<ModelOf<MC>>} */ (model.relationshipsCache[reflectionName]);
|
|
181
220
|
}
|
|
182
221
|
else if (model.isNewRecord()) {
|
|
183
222
|
const reflectionNameUnderscore = inflection.underscore(reflectionName);
|
|
@@ -218,8 +257,9 @@ export default class ApiMakerCollection {
|
|
|
218
257
|
if (!(reflectionName in model.relationships)) {
|
|
219
258
|
model.relationships[reflectionName] = [];
|
|
220
259
|
}
|
|
221
|
-
|
|
222
|
-
|
|
260
|
+
const relationshipModels = /** @type {Array<ModelOf<MC>>} */ (model.relationships[reflectionName]);
|
|
261
|
+
if (!relationshipModels.includes(newModel)) {
|
|
262
|
+
relationshipModels.push(newModel);
|
|
223
263
|
}
|
|
224
264
|
}
|
|
225
265
|
// Array shortcuts
|
|
@@ -235,7 +275,7 @@ export default class ApiMakerCollection {
|
|
|
235
275
|
forEach(callback) { return this.loadedArray().forEach(callback); }
|
|
236
276
|
/**
|
|
237
277
|
* @param {function(import("./base-model.js").default): void} callback
|
|
238
|
-
* @returns {
|
|
278
|
+
* @returns {Array<unknown>}
|
|
239
279
|
*/
|
|
240
280
|
map(callback) { return this.loadedArray().map(callback); }
|
|
241
281
|
/**
|
|
@@ -275,9 +315,9 @@ export default class ApiMakerCollection {
|
|
|
275
315
|
}
|
|
276
316
|
return false;
|
|
277
317
|
}
|
|
278
|
-
/** @returns {
|
|
318
|
+
/** @returns {QueryParamValueMap} */
|
|
279
319
|
params() {
|
|
280
|
-
let params = {};
|
|
320
|
+
let params = /** @type {QueryParamValueMap} */ ({});
|
|
281
321
|
if (this.queryArgs.params)
|
|
282
322
|
params = incorporate(params, this.queryArgs.params);
|
|
283
323
|
if (this.queryArgs.abilities)
|
|
@@ -323,7 +363,7 @@ export default class ApiMakerCollection {
|
|
|
323
363
|
return this._merge({ perKey });
|
|
324
364
|
}
|
|
325
365
|
/**
|
|
326
|
-
* @param {
|
|
366
|
+
* @param {CollectionRansackParams} params
|
|
327
367
|
* @returns {this}
|
|
328
368
|
*/
|
|
329
369
|
ransack(params) {
|
|
@@ -333,14 +373,14 @@ export default class ApiMakerCollection {
|
|
|
333
373
|
}
|
|
334
374
|
/** @returns {Promise<Result>} */
|
|
335
375
|
async result() {
|
|
336
|
-
const response = await this._response();
|
|
376
|
+
const response = /** @type {CollectionResponse<MC>} */ (await this._response());
|
|
337
377
|
const models = digg(response, "collection");
|
|
338
378
|
this._addQueryToModels(models);
|
|
339
|
-
const result = new Result(
|
|
379
|
+
const result = new Result({ collection: this, models, response });
|
|
340
380
|
return result;
|
|
341
381
|
}
|
|
342
382
|
/**
|
|
343
|
-
* @param {
|
|
383
|
+
* @param {CollectionSearchParams} params
|
|
344
384
|
* @returns {this}
|
|
345
385
|
*/
|
|
346
386
|
search(params) {
|
|
@@ -435,7 +475,7 @@ export default class ApiMakerCollection {
|
|
|
435
475
|
incorporate(this.queryArgs, newQueryArgs);
|
|
436
476
|
return this;
|
|
437
477
|
}
|
|
438
|
-
/** @returns {
|
|
478
|
+
/** @returns {import("./command-execution.js").default} */
|
|
439
479
|
_response() {
|
|
440
480
|
if (!this.args)
|
|
441
481
|
throw new Error("No args?");
|
|
@@ -452,4 +492,4 @@ export default class ApiMakerCollection {
|
|
|
452
492
|
}, {});
|
|
453
493
|
}
|
|
454
494
|
}
|
|
455
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsiY29sbGVjdGlvbi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLFNBQVMsTUFBTSxZQUFZLENBQUE7QUFDbEMsT0FBTyxZQUFZLE1BQU0sb0JBQW9CLENBQUEsQ0FBQyxtQ0FBbUM7QUFDakYsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLFdBQVcsQ0FBQTtBQUM5QixPQUFPLEtBQUssVUFBVSxNQUFNLFlBQVksQ0FBQSxDQUFDLG1DQUFtQztBQUM1RSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sY0FBYyxDQUFBO0FBQ3hDLE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQSxDQUFDLG1DQUFtQztBQUNwRSxPQUFPLFNBQVMsTUFBTSxXQUFXLENBQUE7QUFFakM7OztHQUdHO0FBRUgsZ0RBQWdEO0FBRWhELCtFQUErRTtBQUUvRTs7Ozs7O0dBTUc7QUFFSDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUVILDhEQUE4RDtBQUM5RCxNQUFNLENBQUMsT0FBTyxPQUFPLGtCQUFrQjtJQUNyQyxNQUFNLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtJQUVsQzs7O09BR0c7SUFDSCxZQUFZLElBQUksRUFBRSxTQUFTLEdBQUcsRUFBRTtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7UUFFL0YsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7SUFDbEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILFNBQVMsQ0FBQyxpQkFBaUI7UUFDekIsTUFBTSxZQUFZLEdBQUcsdUNBQXVDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FB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RXpDLE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVELDJEQUEyRDtJQUMzRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUMzQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1FBQ25FLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxLQUFLLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFBO1FBRTNKLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBRTVELE9BQU8sWUFBWSxDQUFDLFVBQVUsQ0FDNUI7WUFDRSxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNuQixPQUFPLEVBQUUsR0FBRyxjQUFjLENBQUMsY0FBYyxRQUFRO1lBQ2pELGNBQWMsRUFBRSxjQUFjLENBQUMsY0FBYztZQUM3QyxJQUFJLEVBQUUsT0FBTztTQUNkLEVBQ0QsRUFBRSxDQUNILENBQUE7SUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNsb25lRGVlcCBmcm9tIFwiY2xvbmUtZGVlcFwiXG5pbXBvcnQgQ29tbWFuZHNQb29sIGZyb20gXCIuL2NvbW1hbmRzLXBvb2wuanNcIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNvcnQtaW1wb3J0c1xuaW1wb3J0IHtkaWdnfSBmcm9tIFwiZGlnZ2VyaXplXCJcbmltcG9ydCAqIGFzIGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNvcnQtaW1wb3J0c1xuaW1wb3J0IHtpbmNvcnBvcmF0ZX0gZnJvbSBcImluY29ycG9yYXRvclwiXG5pbXBvcnQgUmVzdWx0IGZyb20gXCIuL3Jlc3VsdC5qc1wiIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc29ydC1pbXBvcnRzXG5pbXBvcnQgdW5pcXVuaXplIGZyb20gXCJ1bmlxdW5pemVcIlxuXG4vKipcbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fSBNQ1xuICogQHR5cGVkZWYge0luc3RhbmNlVHlwZTxNQz59IE1vZGVsT2ZcbiAqL1xuXG4vKiogQHR5cGVkZWYge1JlY29yZDxzdHJpbmcsIGFueT59IFByZWxvYWRNYXAgKi9cblxuLyoqIEB0eXBlZGVmIHtzdHJpbmcgfCBBcnJheTxzdHJpbmcgfCBQcmVsb2FkTWFwPiB8IFByZWxvYWRNYXB9IFByZWxvYWRWYWx1ZSAqL1xuXG4vKipcbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fSBNQ1xuICogQHR5cGVkZWYge29iamVjdH0gQ29sbGVjdGlvbkFyZ3NUeXBlXG4gKiBAcHJvcGVydHkge2ltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fSBbbW9kZWxdXG4gKiBAcHJvcGVydHkge01DfSBtb2RlbENsYXNzXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW3JlZmxlY3Rpb25OYW1lXVxuICovXG5cbi8qKlxuICogQHR5cGVkZWYge29iamVjdH0gUXVlcnlBcmdzVHlwZVxuICogQHByb3BlcnR5IHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59IFthYmlsaXRpZXNdXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW2FjY2Vzc2libGVCeV1cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW2NvdW50XVxuICogQHByb3BlcnR5IHtib29sZWFufSBbZGlzdGluY3RdXG4gKiBAcHJvcGVydHkge0FycmF5PHN0cmluZyB8IFtzdHJpbmcsIHN0cmluZ10+fSBbZ3JvdXBCeV1cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBbbGltaXRdXG4gKiBAcHJvcGVydHkge251bWJlcn0gW3BhZ2VdXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW3BhZ2VLZXldXG4gKiBAcHJvcGVydHkge1JlY29yZDxzdHJpbmcsIGFueT59IFtwYXJhbXNdXG4gKiBAcHJvcGVydHkge251bWJlcn0gW3Blcl1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbcGVyS2V5XVxuICogQHByb3BlcnR5IHtQcmVsb2FkVmFsdWV9IFtwcmVsb2FkXVxuICogQHByb3BlcnR5IHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBbcmFuc2Fja11cbiAqIEBwcm9wZXJ0eSB7UmVjb3JkPHN0cmluZywgYW55Pn0gW3NlYXJjaF1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbc2VhcmNoS2V5XVxuICogQHByb3BlcnR5IHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59IFtzZWxlY3RdXG4gKiBAcHJvcGVydHkge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gW3NlbGVjdENvbHVtbnNdXG4gKi9cblxuLyoqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fSBNQyAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQXBpTWFrZXJDb2xsZWN0aW9uIHtcbiAgc3RhdGljIGFwaU1ha2VyVHlwZSA9IFwiQ29sbGVjdGlvblwiXG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Q29sbGVjdGlvbkFyZ3NUeXBlPE1DPn0gYXJnc1xuICAgKiBAcGFyYW0ge1F1ZXJ5QXJnc1R5cGV9IHF1ZXJ5QXJnc1xuICAgKi9cbiAgY29uc3RydWN0b3IoYXJncywgcXVlcnlBcmdzID0ge30pIHtcbiAgICBpZiAoIWFyZ3MubW9kZWxDbGFzcykgdGhyb3cgbmV3IEVycm9yKGBObyBtb2RlbENsYXNzIGdpdmVuIGluICR7T2JqZWN0LmtleXMoYXJncykuam9pbihcIiwgXCIpfWApXG5cbiAgICB0aGlzLnF1ZXJ5QXJncyA9IHF1ZXJ5QXJnc1xuICAgIHRoaXMuYXJncyA9IGFyZ3NcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gb3JpZ2luYWxBYmlsaXRpZXNcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBhYmlsaXRpZXMob3JpZ2luYWxBYmlsaXRpZXMpIHtcbiAgICBjb25zdCBuZXdBYmlsaXRpZXMgPSAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gKi8gKHt9KVxuXG4gICAgZm9yIChjb25zdCBvcmlnaW5hbEFiaWxpdHlOYW1lIGluIG9yaWdpbmFsQWJpbGl0aWVzKSB7XG4gICAgICBjb25zdCBuZXdNb2RlbE5hbWUgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUob3JpZ2luYWxBYmlsaXR5TmFtZSlcbiAgICAgIGNvbnN0IG5ld1ZhbHVlcyA9IFtdXG4gICAgICBjb25zdCBvcmlnaW5hbFZhbHVlcyA9IG9yaWdpbmFsQWJpbGl0aWVzW29yaWdpbmFsQWJpbGl0eU5hbWVdXG5cbiAgICAgIGZvciAoY29uc3Qgb3JpZ2luYWxBYmlsaXR5TmFtZSBvZiBvcmlnaW5hbFZhbHVlcykge1xuICAgICAgICBjb25zdCBuZXdBYmlsaXR5TmFtZSA9IGluZmxlY3Rpb24udW5kZXJzY29yZShvcmlnaW5hbEFiaWxpdHlOYW1lKVxuICAgICAgICBuZXdWYWx1ZXMucHVzaChuZXdBYmlsaXR5TmFtZSlcbiAgICAgIH1cblxuICAgICAgbmV3QWJpbGl0aWVzW25ld01vZGVsTmFtZV0gPSBuZXdWYWx1ZXNcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe2FiaWxpdGllczogbmV3QWJpbGl0aWVzfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWJpbGl0eU5hbWVcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBhY2Nlc3NpYmxlQnkoYWJpbGl0eU5hbWUpIHtcbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe2FjY2Vzc2libGVCeTogaW5mbGVjdGlvbi51bmRlcnNjb3JlKGFiaWxpdHlOYW1lKX0pXG4gIH1cblxuICAvKiogQHJldHVybnMge1Byb21pc2U8bnVtYmVyPn0gKi9cbiAgYXN5bmMgY291bnQoKSB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmNsb25lKClcbiAgICAgIC5fbWVyZ2Uoe2NvdW50OiB0cnVlfSlcbiAgICAgIC5fcmVzcG9uc2UoKVxuXG4gICAgcmV0dXJuIGRpZ2cocmVzcG9uc2UsIFwiY291bnRcIilcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dGhpc30gKi9cbiAgZGlzdGluY3QoKSB7XG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHtkaXN0aW5jdDogdHJ1ZX0pXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtmdW5jdGlvbihpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdCkgOiB2b2lkfSBjYWxsYmFja1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIGFzeW5jIGVhY2goY2FsbGJhY2spIHtcbiAgICBjb25zdCBhcnJheSA9IGF3YWl0IHRoaXMudG9BcnJheSgpXG5cbiAgICBmb3IgKGNvbnN0IG1vZGVsIGluIGFycmF5KSB7XG4gICAgICBjYWxsYmFjay5jYWxsKG1vZGVsKVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gey4uLnN0cmluZ30ga2V5c1xuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIGV4Y2VwdCguLi5rZXlzKSB7XG4gICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgaWYgKGtleSA9PSBcInBhZ2VcIikge1xuICAgICAgICBkZWxldGUgdGhpcy5xdWVyeUFyZ3Nba2V5XVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmhhbmRsZWQga2V5OiAke2tleX1gKVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKiogQHJldHVybnMge1Byb21pc2U8TW9kZWxPZjxNQz4+fSAqL1xuICBhc3luYyBmaXJzdCgpIHtcbiAgICBjb25zdCBtb2RlbHMgPSBhd2FpdCB0aGlzLnRvQXJyYXkoKVxuICAgIHJldHVybiBtb2RlbHNbMF1cbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gey4uLihzdHJpbmcgfCBbc3RyaW5nLCBzdHJpbmddKX0gYXJyYXlPZlRhYmxlc0FuZENvbHVtbnNcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBncm91cEJ5KC4uLmFycmF5T2ZUYWJsZXNBbmRDb2x1bW5zKSB7XG4gICAgY29uc3QgYXJyYXlPZlRhYmxlc0FuZENvbHVtbnNXaXRoTG93ZXJjYXNlQ29sdW1ucyA9IC8qKiBAdHlwZSB7QXJyYXk8c3RyaW5nIHwgW3N0cmluZywgc3RyaW5nXT59ICovIChbXSlcblxuICAgIGZvciAoY29uc3QgdGFibGVBbmRDb2x1bW4gb2YgYXJyYXlPZlRhYmxlc0FuZENvbHVtbnMpIHtcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHRhYmxlQW5kQ29sdW1uKSkge1xuICAgICAgICBhcnJheU9mVGFibGVzQW5kQ29sdW1uc1dpdGhMb3dlcmNhc2VDb2x1bW5zLnB1c2goW3RhYmxlQW5kQ29sdW1uWzBdLCB0YWJsZUFuZENvbHVtblsxXS50b0xvd2VyQ2FzZSgpXSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFycmF5T2ZUYWJsZXNBbmRDb2x1bW5zV2l0aExvd2VyY2FzZUNvbHVtbnMucHVzaCh0YWJsZUFuZENvbHVtbi50b0xvd2VyQ2FzZSgpKVxuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRHcm91cEJ5ID0gdGhpcy5xdWVyeUFyZ3MuZ3JvdXBCeSB8fCBbXVxuICAgIGNvbnN0IG5ld0dyb3VwQnkgPSBjdXJyZW50R3JvdXBCeS5jb25jYXQoYXJyYXlPZlRhYmxlc0FuZENvbHVtbnNXaXRoTG93ZXJjYXNlQ29sdW1ucylcblxuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7XG4gICAgICBncm91cEJ5OiBuZXdHcm91cEJ5XG4gICAgfSlcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7UHJvbWlzZTxNb2RlbE9mPE1DPiB8IEFycmF5PE1vZGVsT2Y8TUM+PiB8IG51bGw+fSAqL1xuICBhc3luYyBlbnN1cmVMb2FkZWQoKSB7XG4gICAgaWYgKCF0aGlzLmlzTG9hZGVkKCkpIHtcbiAgICAgIGNvbnN0IG1vZGVscyA9IGF3YWl0IHRoaXMudG9BcnJheSgpXG5cbiAgICAgIHRoaXMuc2V0KG1vZGVscylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5sb2FkZWQoKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtib29sZWFufSAqL1xuICBpc0xvYWRlZCgpIHtcbiAgICBjb25zdCB7bW9kZWwsIHJlZmxlY3Rpb25OYW1lfSA9IHRoaXMuYXJnc1xuXG4gICAgaWYgKHJlZmxlY3Rpb25OYW1lIGluIG1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9IGVsc2UgaWYgKHJlZmxlY3Rpb25OYW1lIGluIG1vZGVsLnJlbGF0aW9uc2hpcHMpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtudW1iZXJ9IGFtb3VudFxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIGxpbWl0KGFtb3VudCkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7bGltaXQ6IGFtb3VudH0pXG4gIH1cblxuICAvKiogQHJldHVybnMge0FycmF5PE1vZGVsT2Y8TUM+Pn0gKi9cbiAgcHJlbG9hZGVkKCkge1xuICAgIGlmICghKHRoaXMuYXJncy5yZWZsZWN0aW9uTmFtZSBpbiB0aGlzLmFyZ3MubW9kZWwucmVsYXRpb25zaGlwc0NhY2hlKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3RoaXMuYXJncy5yZWZsZWN0aW9uTmFtZX0gaGFzbnQgYmVlbiBsb2FkZWQgeWV0YClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5hcmdzLm1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZVt0aGlzLmFyZ3MucmVmbGVjdGlvbk5hbWVdXG4gIH1cblxuICAvKiogQHJldHVybnMge01vZGVsT2Y8TUM+IHwgQXJyYXk8TW9kZWxPZjxNQz4+fSAqL1xuICBsb2FkZWQoKSB7XG4gICAgY29uc3Qge21vZGVsLCByZWZsZWN0aW9uTmFtZX0gPSB0aGlzLmFyZ3NcblxuICAgIGlmIChyZWZsZWN0aW9uTmFtZSBpbiBtb2RlbC5yZWxhdGlvbnNoaXBzKSB7XG4gICAgICByZXR1cm4gbW9kZWwucmVsYXRpb25zaGlwc1tyZWZsZWN0aW9uTmFtZV1cbiAgICB9IGVsc2UgaWYgKHJlZmxlY3Rpb25OYW1lIGluIG1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZSkge1xuICAgICAgcmV0dXJuIG1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZVtyZWZsZWN0aW9uTmFtZV1cbiAgICB9IGVsc2UgaWYgKG1vZGVsLmlzTmV3UmVjb3JkKCkpIHtcbiAgICAgIGNvbnN0IHJlZmxlY3Rpb25OYW1lVW5kZXJzY29yZSA9IGluZmxlY3Rpb24udW5kZXJzY29yZShyZWZsZWN0aW9uTmFtZSlcblxuICAgICAgLy8gSW5pdGlhbGl6ZSBhcyBlbXB0eSBhbmQgdHJ5IGFnYWluIHRvIHJldHVybiB0aGUgZW1wdHkgcmVzdWx0XG4gICAgICB0aGlzLnNldChbXSlcblxuICAgICAgcmV0dXJuIGRpZ2cobW9kZWwucmVsYXRpb25zaGlwcywgcmVmbGVjdGlvbk5hbWVVbmRlcnNjb3JlKVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCByZWxhdGlvbnNoaXBzTG9hZGVkID0gdW5pcXVuaXplKE9iamVjdC5rZXlzKG1vZGVsLnJlbGF0aW9uc2hpcHMpLmNvbmNhdChPYmplY3Qua2V5cyhtb2RlbC5yZWxhdGlvbnNoaXBzQ2FjaGUpKSlcblxuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3JlZmxlY3Rpb25OYW1lfSBoYXNuJ3QgYmVlbiBsb2FkZWQgeWV0IG9uICR7bW9kZWwubW9kZWxDbGFzc0RhdGEoKS5uYW1lfS4gTG9hZGVkIHdhczogJHtyZWxhdGlvbnNoaXBzTG9hZGVkLmpvaW4oXCIsIFwiKX1gKVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7QXJyYXk8TW9kZWxPZjxNQz4+fSAqL1xuICBsb2FkZWRBcnJheSgpIHtcbiAgICBjb25zdCBsb2FkZWQgPSB0aGlzLmxvYWRlZCgpXG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheShsb2FkZWQpKSB7XG4gICAgICByZXR1cm4gbG9hZGVkXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIidsb2FkZWQnIHdhc24ndCBhbiBhcnJheVwiKVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlcGxhY2VzIHRoZSByZWxhdGlvbnNoaXBzIHdpdGggdGhlIGdpdmVuIG5ldyBjb2xsZWN0aW9uLlxuICAvKipcbiAgICogQHBhcmFtIHtBcnJheTxNb2RlbE9mPE1DPj59IG5ld0NvbGxlY3Rpb25cbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBzZXQobmV3Q29sbGVjdGlvbikge1xuICAgIHRoaXMuYXJncy5tb2RlbC5yZWxhdGlvbnNoaXBzW3RoaXMuYXJncy5yZWZsZWN0aW9uTmFtZV0gPSBuZXdDb2xsZWN0aW9uXG4gIH1cblxuICAvLyBQdXNoZXMgYW5vdGhlciBtb2RlbCBvbnRvIHRoZSBnaXZlbiBjb2xsZWN0aW9uLlxuICAvKipcbiAgICogQHBhcmFtIHtNb2RlbE9mPE1DPn0gbmV3TW9kZWxcbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBwdXNoKG5ld01vZGVsKSB7XG4gICAgY29uc3Qge21vZGVsLCByZWZsZWN0aW9uTmFtZX0gPSB0aGlzLmFyZ3NcblxuICAgIGlmICghKHJlZmxlY3Rpb25OYW1lIGluIG1vZGVsLnJlbGF0aW9uc2hpcHMpKSB7XG4gICAgICBtb2RlbC5yZWxhdGlvbnNoaXBzW3JlZmxlY3Rpb25OYW1lXSA9IFtdXG4gICAgfVxuXG4gICAgaWYgKCFtb2RlbC5yZWxhdGlvbnNoaXBzW3JlZmxlY3Rpb25OYW1lXS5pbmNsdWRlcyhuZXdNb2RlbCkpIHtcbiAgICAgIG1vZGVsLnJlbGF0aW9uc2hpcHNbcmVmbGVjdGlvbk5hbWVdLnB1c2gobmV3TW9kZWwpXG4gICAgfVxuICB9XG5cbiAgLy8gQXJyYXkgc2hvcnRjdXRzXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9uKGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0KTogYm9vbGVhbn0gY2FsbGJhY2tcbiAgICogQHJldHVybnMge2ltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fVxuICAgKi9cbiAgZmluZChjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5sb2FkZWRBcnJheSgpLmZpbmQoY2FsbGJhY2spIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtmdW5jdGlvbihpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdCk6IHZvaWR9IGNhbGxiYWNrXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgZm9yRWFjaChjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5sb2FkZWRBcnJheSgpLmZvckVhY2goY2FsbGJhY2spIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtmdW5jdGlvbihpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdCk6IHZvaWR9IGNhbGxiYWNrXG4gICAqIEByZXR1cm5zIHthbnlbXX1cbiAgICovXG4gIG1hcChjYWxsYmFjaykgeyByZXR1cm4gdGhpcy5sb2FkZWRBcnJheSgpLm1hcChjYWxsYmFjaykgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1ByZWxvYWRWYWx1ZX0gcHJlbG9hZFZhbHVlXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgcHJlbG9hZChwcmVsb2FkVmFsdWUpIHtcbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe3ByZWxvYWQ6IHByZWxvYWRWYWx1ZX0pXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtudW1iZXJ9IHBhZ2VcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBwYWdlKHBhZ2UpIHtcbiAgICBjb25zdCBwYWdlVG9Vc2UgPSBwYWdlIHx8IDFcblxuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cGFnZTogcGFnZVRvVXNlfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGFnZUtleVxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHBhZ2VLZXkocGFnZUtleSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cGFnZUtleX0pXG4gIH1cblxuICAvKiogQHJldHVybnMge2Jvb2xlYW59ICovXG4gIGlzRmlsdGVyZWQoKSB7XG4gICAgY29uc3Qge3F1ZXJ5QXJnc30gPSB0aGlzXG5cbiAgICBpZiAoXG4gICAgICBxdWVyeUFyZ3MuYWNjZXNzaWJsZUJ5IHx8XG4gICAgICBxdWVyeUFyZ3MuY291bnQgfHxcbiAgICAgIHF1ZXJ5QXJncy5saW1pdCB8fFxuICAgICAgcXVlcnlBcmdzLnBhZ2UgfHxcbiAgICAgIHF1ZXJ5QXJncy5wYXJhbXMgfHxcbiAgICAgIHF1ZXJ5QXJncy5wZXIgfHxcbiAgICAgIHF1ZXJ5QXJncy5yYW5zYWNrIHx8XG4gICAgICBxdWVyeUFyZ3Muc2VhcmNoXG4gICAgKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSAqL1xuICBwYXJhbXMoKSB7XG4gICAgbGV0IHBhcmFtcyA9IHt9XG5cbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MucGFyYW1zKSBwYXJhbXMgPSBpbmNvcnBvcmF0ZShwYXJhbXMsIHRoaXMucXVlcnlBcmdzLnBhcmFtcylcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MuYWJpbGl0aWVzKSBwYXJhbXMuYWJpbGl0aWVzID0gdGhpcy5xdWVyeUFyZ3MuYWJpbGl0aWVzXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLmFjY2Vzc2libGVCeSkgcGFyYW1zLmFjY2Vzc2libGVfYnkgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUodGhpcy5xdWVyeUFyZ3MuYWNjZXNzaWJsZUJ5KVxuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5jb3VudCkgcGFyYW1zLmNvdW50ID0gdGhpcy5xdWVyeUFyZ3MuY291bnRcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MuZGlzdGluY3QpIHBhcmFtcy5kaXN0aW5jdCA9IHRoaXMucXVlcnlBcmdzLmRpc3RpbmN0XG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLmdyb3VwQnkpIHBhcmFtcy5ncm91cF9ieSA9IHRoaXMucXVlcnlBcmdzLmdyb3VwQnlcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MucmFuc2FjaykgcGFyYW1zLnEgPSB0aGlzLnF1ZXJ5QXJncy5yYW5zYWNrXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLmxpbWl0KSBwYXJhbXMubGltaXQgPSB0aGlzLnF1ZXJ5QXJncy5saW1pdFxuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5wcmVsb2FkKSBwYXJhbXMucHJlbG9hZCA9IHRoaXMucXVlcnlBcmdzLnByZWxvYWRcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MucGFnZSkgcGFyYW1zLnBhZ2UgPSB0aGlzLnF1ZXJ5QXJncy5wYWdlXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLnBlcikgcGFyYW1zLnBlciA9IHRoaXMucXVlcnlBcmdzLnBlclxuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5zZWFyY2gpIHBhcmFtcy5zZWFyY2ggPSB0aGlzLnF1ZXJ5QXJncy5zZWFyY2hcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3Muc2VsZWN0KSBwYXJhbXMuc2VsZWN0ID0gdGhpcy5xdWVyeUFyZ3Muc2VsZWN0XG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLnNlbGVjdENvbHVtbnMpIHBhcmFtcy5zZWxlY3RfY29sdW1ucyA9IHRoaXMucXVlcnlBcmdzLnNlbGVjdENvbHVtbnNcblxuICAgIHJldHVybiBwYXJhbXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge251bWJlcn0gcGVyXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgcGVyKHBlcikge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cGVyfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcGVyS2V5XG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgcGVyS2V5KHBlcktleSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cGVyS2V5fSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IHBhcmFtc1xuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHJhbnNhY2socGFyYW1zKSB7XG4gICAgaWYgKHBhcmFtcykgdGhpcy5fbWVyZ2Uoe3JhbnNhY2s6IHBhcmFtc30pXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7UHJvbWlzZTxSZXN1bHQ+fSAqL1xuICBhc3luYyByZXN1bHQoKSB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLl9yZXNwb25zZSgpXG4gICAgY29uc3QgbW9kZWxzID0gZGlnZyhyZXNwb25zZSwgXCJjb2xsZWN0aW9uXCIpXG5cbiAgICB0aGlzLl9hZGRRdWVyeVRvTW9kZWxzKG1vZGVscylcblxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBSZXN1bHQoLyoqIEB0eXBlIHthbnl9ICovICh7Y29sbGVjdGlvbjogdGhpcywgbW9kZWxzLCByZXNwb25zZX0pKVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gcGFyYW1zXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgc2VhcmNoKHBhcmFtcykge1xuICAgIGlmIChwYXJhbXMpIHRoaXMuX21lcmdlKHtzZWFyY2g6IHBhcmFtc30pXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2VhcmNoS2V5XG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgc2VhcmNoS2V5KHNlYXJjaEtleSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7c2VhcmNoS2V5fSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gb3JpZ2luYWxTZWxlY3RcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBzZWxlY3Qob3JpZ2luYWxTZWxlY3QpIHtcbiAgICBjb25zdCBuZXdTZWxlY3QgPSAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gKi8gKHt9KVxuXG4gICAgZm9yIChjb25zdCBvcmlnaW5hbE1vZGVsTmFtZSBpbiBvcmlnaW5hbFNlbGVjdCkge1xuICAgICAgY29uc3QgbmV3TW9kZWxOYW1lID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKG9yaWdpbmFsTW9kZWxOYW1lKVxuICAgICAgY29uc3QgbmV3VmFsdWVzID0gW11cbiAgICAgIGNvbnN0IG9yaWdpbmFsVmFsdWVzID0gb3JpZ2luYWxTZWxlY3Rbb3JpZ2luYWxNb2RlbE5hbWVdXG5cbiAgICAgIGZvciAoY29uc3Qgb3JpZ2luYWxBdHRyaWJ1dGVOYW1lIG9mIG9yaWdpbmFsVmFsdWVzKSB7XG4gICAgICAgIGNvbnN0IG5ld0F0dHJpYnV0ZU5hbWUgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUob3JpZ2luYWxBdHRyaWJ1dGVOYW1lKVxuICAgICAgICBuZXdWYWx1ZXMucHVzaChuZXdBdHRyaWJ1dGVOYW1lKVxuICAgICAgfVxuXG4gICAgICBuZXdTZWxlY3RbbmV3TW9kZWxOYW1lXSA9IG5ld1ZhbHVlc1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7c2VsZWN0OiBuZXdTZWxlY3R9KVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgc3RyaW5nW10+fSBvcmlnaW5hbFNlbGVjdFxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHNlbGVjdENvbHVtbnMob3JpZ2luYWxTZWxlY3QpIHtcbiAgICBjb25zdCBuZXdTZWxlY3QgPSAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gKi8gKHt9KVxuXG4gICAgZm9yIChjb25zdCBvcmlnaW5hbE1vZGVsTmFtZSBpbiBvcmlnaW5hbFNlbGVjdCkge1xuICAgICAgY29uc3QgbmV3TW9kZWxOYW1lID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKGluZmxlY3Rpb24udW5kZXJzY29yZShvcmlnaW5hbE1vZGVsTmFtZSkpXG4gICAgICBjb25zdCBuZXdWYWx1ZXMgPSBbXVxuICAgICAgY29uc3Qgb3JpZ2luYWxWYWx1ZXMgPSBvcmlnaW5hbFNlbGVjdFtvcmlnaW5hbE1vZGVsTmFtZV1cblxuICAgICAgZm9yIChjb25zdCBvcmlnaW5hbEF0dHJpYnV0ZU5hbWUgb2Ygb3JpZ2luYWxWYWx1ZXMpIHtcbiAgICAgICAgY29uc3QgbmV3QXR0cmlidXRlTmFtZSA9IGluZmxlY3Rpb24udW5kZXJzY29yZShvcmlnaW5hbEF0dHJpYnV0ZU5hbWUpXG4gICAgICAgIG5ld1ZhbHVlcy5wdXNoKG5ld0F0dHJpYnV0ZU5hbWUpXG4gICAgICB9XG5cbiAgICAgIG5ld1NlbGVjdFtuZXdNb2RlbE5hbWVdID0gbmV3VmFsdWVzXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHtzZWxlY3RDb2x1bW5zOiBuZXdTZWxlY3R9KVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzb3J0QnlcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBzb3J0KHNvcnRCeSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cmFuc2Fjazoge3M6IHNvcnRCeX19KVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtQcm9taXNlPEFycmF5PE1vZGVsT2Y8TUM+Pj59ICovXG4gIGFzeW5jIHRvQXJyYXkoKSB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLl9yZXNwb25zZSgpXG4gICAgY29uc3QgbW9kZWxzID0gZGlnZyhyZXNwb25zZSwgXCJjb2xsZWN0aW9uXCIpXG5cbiAgICB0aGlzLl9hZGRRdWVyeVRvTW9kZWxzKG1vZGVscylcblxuICAgIHJldHVybiBtb2RlbHNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7TUN9ICovXG4gIG1vZGVsQ2xhc3MoKSB7XG4gICAgaWYgKCF0aGlzLmFyZ3MubW9kZWxDbGFzcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gbW9kZWwgY2xhc3MgZ2l2ZW4gaW4gYXJnc1wiKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFyZ3MubW9kZWxDbGFzc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcGlNYWtlckNvbGxlY3Rpb259ICovXG4gIGNsb25lKCkge1xuICAgIGNvbnN0IGNsb25lZFF1ZXJ5QXJncyA9IGNsb25lRGVlcCh0aGlzLnF1ZXJ5QXJncylcblxuICAgIHJldHVybiBuZXcgQXBpTWFrZXJDb2xsZWN0aW9uKHRoaXMuYXJncywgY2xvbmVkUXVlcnlBcmdzKVxuICB9XG5cbiAgLy8gVGhpcyBpcyBuZWVkZWQgd2hlbiByZWxvYWRpbmcgYSB2ZXJzaW9uIG9mIHRoZSBtb2RlbCB3aXRoIHRoZSBzYW1lIHNlbGVjdGVkIGF0dHJpYnV0ZXMgYW5kIHByZWxvYWRzXG4gIC8qKlxuICAgKiBAcGFyYW0ge0FycmF5PE1vZGVsT2Y8TUM+Pn0gbW9kZWxzXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgX2FkZFF1ZXJ5VG9Nb2RlbHMobW9kZWxzKSB7XG4gICAgZm9yIChjb25zdCBtb2RlbCBvZiBtb2RlbHMpIHtcbiAgICAgIG1vZGVsLmNvbGxlY3Rpb24gPSB0aGlzXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UXVlcnlBcmdzVHlwZX0gbmV3UXVlcnlBcmdzXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgX21lcmdlKG5ld1F1ZXJ5QXJncykge1xuICAgIGluY29ycG9yYXRlKHRoaXMucXVlcnlBcmdzLCBuZXdRdWVyeUFyZ3MpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtQcm9taXNlPHtjb2xsZWN0aW9uOiBBcnJheTxNb2RlbE9mPE1DPj59Pn0gKi9cbiAgX3Jlc3BvbnNlKCkge1xuICAgIGlmICghdGhpcy5hcmdzKSB0aHJvdyBuZXcgRXJyb3IoXCJObyBhcmdzP1wiKVxuICAgIGlmICghdGhpcy5hcmdzLm1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihcIk5vIG1vZGVsQ2xhc3MgaW4gYXJnc1wiKVxuICAgIGlmICghdGhpcy5hcmdzLm1vZGVsQ2xhc3MubW9kZWxDbGFzc0RhdGEpIHRocm93IG5ldyBFcnJvcihgTm8gbW9kZWxDbGFzc0RhdGEgb24gbW9kZWxDbGFzcyAke3RoaXMuYXJncy5tb2RlbENsYXNzPy5uYW1lfSAoJHt0eXBlb2YgdGhpcy5hcmdzLm1vZGVsQ2xhc3N9KWApXG5cbiAgICBjb25zdCBtb2RlbENsYXNzRGF0YSA9IHRoaXMuYXJncy5tb2RlbENsYXNzLm1vZGVsQ2xhc3NEYXRhKClcblxuICAgIHJldHVybiBDb21tYW5kc1Bvb2wuYWRkQ29tbWFuZChcbiAgICAgIHtcbiAgICAgICAgYXJnczogdGhpcy5wYXJhbXMoKSxcbiAgICAgICAgY29tbWFuZDogYCR7bW9kZWxDbGFzc0RhdGEuY29sbGVjdGlvbk5hbWV9LWluZGV4YCxcbiAgICAgICAgY29sbGVjdGlvbk5hbWU6IG1vZGVsQ2xhc3NEYXRhLmNvbGxlY3Rpb25OYW1lLFxuICAgICAgICB0eXBlOiBcImluZGV4XCJcbiAgICAgIH0sXG4gICAgICB7fVxuICAgIClcbiAgfVxufVxuIl19
|
|
495
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIvc3JjLyIsInNvdXJjZXMiOlsiY29sbGVjdGlvbi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBQ1osT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFBO0FBQ2xDLE9BQU8sWUFBWSxNQUFNLG9CQUFvQixDQUFBLENBQUMsbUNBQW1DO0FBQ2pGLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxXQUFXLENBQUE7QUFDOUIsT0FBTyxLQUFLLFVBQVUsTUFBTSxZQUFZLENBQUEsQ0FBQyxtQ0FBbUM7QUFDNUUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGNBQWMsQ0FBQTtBQUN4QyxPQUFPLE1BQU0sTUFBTSxhQUFhLENBQUEsQ0FBQyxtQ0FBbUM7QUFDcEUsT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFBO0FBRWpDOzs7R0FHRztBQUVILGtHQUFrRztBQUNsRyw2REFBNkQ7QUFDN0QscUlBQXFJO0FBQ3JJLDRFQUE0RTtBQUM1RSwwRkFBMEY7QUFDMUY7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsb0VBQW9FO0FBQ3BFOzs7Ozs7O0dBT0c7QUFDSDs7Ozs7R0FLRztBQUNIOzs7Ozs7R0FNRztBQUVIOzs7Ozs7R0FNRztBQUVIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBRUgsOERBQThEO0FBQzlELE1BQU0sQ0FBQyxPQUFPLE9BQU8sa0JBQWtCO0lBQ3JDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFBO0lBRWxDOzs7T0FHRztJQUNILFlBQVksSUFBSSxFQUFFLFNBQVMsR0FBRyxFQUFFO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUUvRixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQTtRQUMx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dCI6WyIvLyBAdHMtY2hlY2tcbmltcG9ydCBjbG9uZURlZXAgZnJvbSBcImNsb25lLWRlZXBcIlxuaW1wb3J0IENvbW1hbmRzUG9vbCBmcm9tIFwiLi9jb21tYW5kcy1wb29sLmpzXCIgLy8gZXNsaW50LWRpc2FibGUtbGluZSBzb3J0LWltcG9ydHNcbmltcG9ydCB7ZGlnZ30gZnJvbSBcImRpZ2dlcml6ZVwiXG5pbXBvcnQgKiBhcyBpbmZsZWN0aW9uIGZyb20gXCJpbmZsZWN0aW9uXCIgLy8gZXNsaW50LWRpc2FibGUtbGluZSBzb3J0LWltcG9ydHNcbmltcG9ydCB7aW5jb3Jwb3JhdGV9IGZyb20gXCJpbmNvcnBvcmF0b3JcIlxuaW1wb3J0IFJlc3VsdCBmcm9tIFwiLi9yZXN1bHQuanNcIiAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNvcnQtaW1wb3J0c1xuaW1wb3J0IHVuaXF1bml6ZSBmcm9tIFwidW5pcXVuaXplXCJcblxuLyoqXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdH0gTUNcbiAqIEB0eXBlZGVmIHtJbnN0YW5jZVR5cGU8TUM+fSBNb2RlbE9mXG4gKi9cblxuLyoqIEB0eXBlZGVmIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPj59IFByZWxvYWRNYXAgKi9cbi8qKiBAdHlwZWRlZiB7c3RyaW5nIHwgc3RyaW5nW10gfCBQcmVsb2FkTWFwfSBQcmVsb2FkVmFsdWUgKi9cbi8qKiBAdHlwZWRlZiB7UmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IG51bGwgfCBBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgbnVsbD4+fSBDb2xsZWN0aW9uU2VhcmNoUGFyYW1NYXAgKi9cbi8qKiBAdHlwZWRlZiB7Q29sbGVjdGlvblNlYXJjaFBhcmFtTWFwIHwgc3RyaW5nW119IENvbGxlY3Rpb25TZWFyY2hQYXJhbXMgKi9cbi8qKiBAdHlwZWRlZiB7UmVjb3JkPHN0cmluZywgc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IG51bGw+fSBDb2xsZWN0aW9uUmFuc2Fja1BhcmFtcyAqL1xuLyoqXG4gKiBAdHlwZWRlZiB7KFxuICogICBzdHJpbmcgfFxuICogICBudW1iZXIgfFxuICogICBib29sZWFuIHxcbiAqICAgbnVsbCB8XG4gKiAgIEFycmF5PHN0cmluZyB8IFtzdHJpbmcsIHN0cmluZ10+IHxcbiAqICAgUHJlbG9hZFZhbHVlIHxcbiAqICAgQ29sbGVjdGlvblJhbnNhY2tQYXJhbXMgfFxuICogICBDb2xsZWN0aW9uU2VhcmNoUGFyYW1zIHxcbiAqICAgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+XG4gKiApfSBRdWVyeVBhcmFtVmFsdWVcbiAqL1xuLyoqIEB0eXBlZGVmIHtSZWNvcmQ8c3RyaW5nLCBRdWVyeVBhcmFtVmFsdWU+fSBRdWVyeVBhcmFtVmFsdWVNYXAgKi9cbi8qKlxuICogQHR5cGVkZWYge29iamVjdH0gQ29sbGVjdGlvblJlc3BvbnNlTWV0YVxuICogQHByb3BlcnR5IHtudW1iZXJ9IGNvdW50XG4gKiBAcHJvcGVydHkge251bWJlcn0gY3VycmVudFBhZ2VcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBwZXJQYWdlXG4gKiBAcHJvcGVydHkge251bWJlcn0gdG90YWxDb3VudFxuICogQHByb3BlcnR5IHtudW1iZXJ9IHRvdGFsUGFnZXNcbiAqL1xuLyoqXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdH0gTUNcbiAqIEB0eXBlZGVmIHtvYmplY3R9IENvbGxlY3Rpb25SZXNwb25zZVxuICogQHByb3BlcnR5IHtBcnJheTxNb2RlbE9mPE1DPj59IGNvbGxlY3Rpb25cbiAqIEBwcm9wZXJ0eSB7Q29sbGVjdGlvblJlc3BvbnNlTWV0YX0gbWV0YVxuICovXG4vKipcbiAqIEB0ZW1wbGF0ZSB7dHlwZW9mIGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fSBNQ1xuICogQHR5cGVkZWYge29iamVjdH0gUmVzdWx0QXJnc1xuICogQHByb3BlcnR5IHtBcGlNYWtlckNvbGxlY3Rpb248TUM+fSBjb2xsZWN0aW9uXG4gKiBAcHJvcGVydHkge0FycmF5PE1vZGVsT2Y8TUM+Pn0gbW9kZWxzXG4gKiBAcHJvcGVydHkge0NvbGxlY3Rpb25SZXNwb25zZTxNQz59IHJlc3BvbnNlXG4gKi9cblxuLyoqXG4gKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdH0gTUNcbiAqIEB0eXBlZGVmIHtvYmplY3R9IENvbGxlY3Rpb25BcmdzVHlwZVxuICogQHByb3BlcnR5IHtpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdH0gW21vZGVsXVxuICogQHByb3BlcnR5IHtNQ30gbW9kZWxDbGFzc1xuICogQHByb3BlcnR5IHtzdHJpbmd9IFtyZWZsZWN0aW9uTmFtZV1cbiAqL1xuXG4vKipcbiAqIEB0eXBlZGVmIHtvYmplY3R9IFF1ZXJ5QXJnc1R5cGVcbiAqIEBwcm9wZXJ0eSB7UmVjb3JkPHN0cmluZywgc3RyaW5nW10+fSBbYWJpbGl0aWVzXVxuICogQHByb3BlcnR5IHtzdHJpbmd9IFthY2Nlc3NpYmxlQnldXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFtjb3VudF1cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW2Rpc3RpbmN0XVxuICogQHByb3BlcnR5IHtBcnJheTxzdHJpbmcgfCBbc3RyaW5nLCBzdHJpbmddPn0gW2dyb3VwQnldXG4gKiBAcHJvcGVydHkge251bWJlcn0gW2xpbWl0XVxuICogQHByb3BlcnR5IHtudW1iZXJ9IFtwYWdlXVxuICogQHByb3BlcnR5IHtzdHJpbmd9IFtwYWdlS2V5XVxuICogQHByb3BlcnR5IHtRdWVyeVBhcmFtVmFsdWVNYXB9IFtwYXJhbXNdXG4gKiBAcHJvcGVydHkge251bWJlcn0gW3Blcl1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbcGVyS2V5XVxuICogQHByb3BlcnR5IHtQcmVsb2FkVmFsdWV9IFtwcmVsb2FkXVxuICogQHByb3BlcnR5IHtDb2xsZWN0aW9uUmFuc2Fja1BhcmFtc30gW3JhbnNhY2tdXG4gKiBAcHJvcGVydHkge0NvbGxlY3Rpb25TZWFyY2hQYXJhbXN9IFtzZWFyY2hdXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW3NlYXJjaEtleV1cbiAqIEBwcm9wZXJ0eSB7UmVjb3JkPHN0cmluZywgc3RyaW5nW10+fSBbc2VsZWN0XVxuICogQHByb3BlcnR5IHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59IFtzZWxlY3RDb2x1bW5zXVxuICovXG5cbi8qKiBAdGVtcGxhdGUge3R5cGVvZiBpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdH0gTUMgKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFwaU1ha2VyQ29sbGVjdGlvbiB7XG4gIHN0YXRpYyBhcGlNYWtlclR5cGUgPSBcIkNvbGxlY3Rpb25cIlxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge0NvbGxlY3Rpb25BcmdzVHlwZTxNQz59IGFyZ3NcbiAgICogQHBhcmFtIHtRdWVyeUFyZ3NUeXBlfSBxdWVyeUFyZ3NcbiAgICovXG4gIGNvbnN0cnVjdG9yKGFyZ3MsIHF1ZXJ5QXJncyA9IHt9KSB7XG4gICAgaWYgKCFhcmdzLm1vZGVsQ2xhc3MpIHRocm93IG5ldyBFcnJvcihgTm8gbW9kZWxDbGFzcyBnaXZlbiBpbiAke09iamVjdC5rZXlzKGFyZ3MpLmpvaW4oXCIsIFwiKX1gKVxuXG4gICAgdGhpcy5xdWVyeUFyZ3MgPSBxdWVyeUFyZ3NcbiAgICB0aGlzLmFyZ3MgPSBhcmdzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59IG9yaWdpbmFsQWJpbGl0aWVzXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgYWJpbGl0aWVzKG9yaWdpbmFsQWJpbGl0aWVzKSB7XG4gICAgY29uc3QgbmV3QWJpbGl0aWVzID0gLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59ICovICh7fSlcblxuICAgIGZvciAoY29uc3Qgb3JpZ2luYWxBYmlsaXR5TmFtZSBpbiBvcmlnaW5hbEFiaWxpdGllcykge1xuICAgICAgY29uc3QgbmV3TW9kZWxOYW1lID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKG9yaWdpbmFsQWJpbGl0eU5hbWUpXG4gICAgICBjb25zdCBuZXdWYWx1ZXMgPSBbXVxuICAgICAgY29uc3Qgb3JpZ2luYWxWYWx1ZXMgPSBvcmlnaW5hbEFiaWxpdGllc1tvcmlnaW5hbEFiaWxpdHlOYW1lXVxuXG4gICAgICBmb3IgKGNvbnN0IG9yaWdpbmFsQWJpbGl0eU5hbWUgb2Ygb3JpZ2luYWxWYWx1ZXMpIHtcbiAgICAgICAgY29uc3QgbmV3QWJpbGl0eU5hbWUgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUob3JpZ2luYWxBYmlsaXR5TmFtZSlcbiAgICAgICAgbmV3VmFsdWVzLnB1c2gobmV3QWJpbGl0eU5hbWUpXG4gICAgICB9XG5cbiAgICAgIG5ld0FiaWxpdGllc1tuZXdNb2RlbE5hbWVdID0gbmV3VmFsdWVzXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHthYmlsaXRpZXM6IG5ld0FiaWxpdGllc30pXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFiaWxpdHlOYW1lXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgYWNjZXNzaWJsZUJ5KGFiaWxpdHlOYW1lKSB7XG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHthY2Nlc3NpYmxlQnk6IGluZmxlY3Rpb24udW5kZXJzY29yZShhYmlsaXR5TmFtZSl9KVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtQcm9taXNlPG51bWJlcj59ICovXG4gIGFzeW5jIGNvdW50KCkge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbG9uZSgpXG4gICAgICAuX21lcmdlKHtjb3VudDogdHJ1ZX0pXG4gICAgICAuX3Jlc3BvbnNlKClcblxuICAgIHJldHVybiBkaWdnKHJlc3BvbnNlLCBcImNvdW50XCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge3RoaXN9ICovXG4gIGRpc3RpbmN0KCkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7ZGlzdGluY3Q6IHRydWV9KVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb24oaW1wb3J0KFwiLi9iYXNlLW1vZGVsLmpzXCIpLmRlZmF1bHQpIDogdm9pZH0gY2FsbGJhY2tcbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59XG4gICAqL1xuICBhc3luYyBlYWNoKGNhbGxiYWNrKSB7XG4gICAgY29uc3QgYXJyYXkgPSBhd2FpdCB0aGlzLnRvQXJyYXkoKVxuXG4gICAgZm9yIChjb25zdCBtb2RlbCBpbiBhcnJheSkge1xuICAgICAgY2FsbGJhY2suY2FsbChtb2RlbClcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHsuLi5zdHJpbmd9IGtleXNcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBleGNlcHQoLi4ua2V5cykge1xuICAgIGZvciAoY29uc3Qga2V5IG9mIGtleXMpIHtcbiAgICAgIGlmIChrZXkgPT0gXCJwYWdlXCIpIHtcbiAgICAgICAgZGVsZXRlIHRoaXMucXVlcnlBcmdzW2tleV1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5oYW5kbGVkIGtleTogJHtrZXl9YClcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtQcm9taXNlPE1vZGVsT2Y8TUM+Pn0gKi9cbiAgYXN5bmMgZmlyc3QoKSB7XG4gICAgY29uc3QgbW9kZWxzID0gYXdhaXQgdGhpcy50b0FycmF5KClcbiAgICByZXR1cm4gbW9kZWxzWzBdXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHsuLi4oc3RyaW5nIHwgW3N0cmluZywgc3RyaW5nXSl9IGFycmF5T2ZUYWJsZXNBbmRDb2x1bW5zXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgZ3JvdXBCeSguLi5hcnJheU9mVGFibGVzQW5kQ29sdW1ucykge1xuICAgIGNvbnN0IGFycmF5T2ZUYWJsZXNBbmRDb2x1bW5zV2l0aExvd2VyY2FzZUNvbHVtbnMgPSAvKiogQHR5cGUge0FycmF5PHN0cmluZyB8IFtzdHJpbmcsIHN0cmluZ10+fSAqLyAoW10pXG5cbiAgICBmb3IgKGNvbnN0IHRhYmxlQW5kQ29sdW1uIG9mIGFycmF5T2ZUYWJsZXNBbmRDb2x1bW5zKSB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheSh0YWJsZUFuZENvbHVtbikpIHtcbiAgICAgICAgYXJyYXlPZlRhYmxlc0FuZENvbHVtbnNXaXRoTG93ZXJjYXNlQ29sdW1ucy5wdXNoKFt0YWJsZUFuZENvbHVtblswXSwgdGFibGVBbmRDb2x1bW5bMV0udG9Mb3dlckNhc2UoKV0pXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhcnJheU9mVGFibGVzQW5kQ29sdW1uc1dpdGhMb3dlcmNhc2VDb2x1bW5zLnB1c2godGFibGVBbmRDb2x1bW4udG9Mb3dlckNhc2UoKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50R3JvdXBCeSA9IHRoaXMucXVlcnlBcmdzLmdyb3VwQnkgfHwgW11cbiAgICBjb25zdCBuZXdHcm91cEJ5ID0gY3VycmVudEdyb3VwQnkuY29uY2F0KGFycmF5T2ZUYWJsZXNBbmRDb2x1bW5zV2l0aExvd2VyY2FzZUNvbHVtbnMpXG5cbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe1xuICAgICAgZ3JvdXBCeTogbmV3R3JvdXBCeVxuICAgIH0pXG4gIH1cblxuICAvKiogQHJldHVybnMge1Byb21pc2U8TW9kZWxPZjxNQz4gfCBBcnJheTxNb2RlbE9mPE1DPj4gfCBudWxsPn0gKi9cbiAgYXN5bmMgZW5zdXJlTG9hZGVkKCkge1xuICAgIGlmICghdGhpcy5pc0xvYWRlZCgpKSB7XG4gICAgICBjb25zdCBtb2RlbHMgPSBhd2FpdCB0aGlzLnRvQXJyYXkoKVxuXG4gICAgICB0aGlzLnNldChtb2RlbHMpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMubG9hZGVkKClcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7Ym9vbGVhbn0gKi9cbiAgaXNMb2FkZWQoKSB7XG4gICAgY29uc3Qge21vZGVsLCByZWZsZWN0aW9uTmFtZX0gPSB0aGlzLmFyZ3NcblxuICAgIGlmIChyZWZsZWN0aW9uTmFtZSBpbiBtb2RlbC5yZWxhdGlvbnNoaXBzQ2FjaGUpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBlbHNlIGlmIChyZWZsZWN0aW9uTmFtZSBpbiBtb2RlbC5yZWxhdGlvbnNoaXBzKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBhbW91bnRcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBsaW1pdChhbW91bnQpIHtcbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe2xpbWl0OiBhbW91bnR9KVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcnJheTxNb2RlbE9mPE1DPj59ICovXG4gIHByZWxvYWRlZCgpIHtcbiAgICBpZiAoISh0aGlzLmFyZ3MucmVmbGVjdGlvbk5hbWUgaW4gdGhpcy5hcmdzLm1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHt0aGlzLmFyZ3MucmVmbGVjdGlvbk5hbWV9IGhhc250IGJlZW4gbG9hZGVkIHlldGApXG4gICAgfVxuXG4gICAgcmV0dXJuIC8qKiBAdHlwZSB7QXJyYXk8TW9kZWxPZjxNQz4+fSAqLyAodGhpcy5hcmdzLm1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZVt0aGlzLmFyZ3MucmVmbGVjdGlvbk5hbWVdKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtNb2RlbE9mPE1DPiB8IEFycmF5PE1vZGVsT2Y8TUM+Pn0gKi9cbiAgbG9hZGVkKCkge1xuICAgIGNvbnN0IHttb2RlbCwgcmVmbGVjdGlvbk5hbWV9ID0gdGhpcy5hcmdzXG5cbiAgICBpZiAocmVmbGVjdGlvbk5hbWUgaW4gbW9kZWwucmVsYXRpb25zaGlwcykge1xuICAgICAgcmV0dXJuIC8qKiBAdHlwZSB7TW9kZWxPZjxNQz4gfCBBcnJheTxNb2RlbE9mPE1DPj59ICovIChtb2RlbC5yZWxhdGlvbnNoaXBzW3JlZmxlY3Rpb25OYW1lXSlcbiAgICB9IGVsc2UgaWYgKHJlZmxlY3Rpb25OYW1lIGluIG1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZSkge1xuICAgICAgcmV0dXJuIC8qKiBAdHlwZSB7TW9kZWxPZjxNQz4gfCBBcnJheTxNb2RlbE9mPE1DPj59ICovIChtb2RlbC5yZWxhdGlvbnNoaXBzQ2FjaGVbcmVmbGVjdGlvbk5hbWVdKVxuICAgIH0gZWxzZSBpZiAobW9kZWwuaXNOZXdSZWNvcmQoKSkge1xuICAgICAgY29uc3QgcmVmbGVjdGlvbk5hbWVVbmRlcnNjb3JlID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKHJlZmxlY3Rpb25OYW1lKVxuXG4gICAgICAvLyBJbml0aWFsaXplIGFzIGVtcHR5IGFuZCB0cnkgYWdhaW4gdG8gcmV0dXJuIHRoZSBlbXB0eSByZXN1bHRcbiAgICAgIHRoaXMuc2V0KFtdKVxuXG4gICAgICByZXR1cm4gZGlnZyhtb2RlbC5yZWxhdGlvbnNoaXBzLCByZWZsZWN0aW9uTmFtZVVuZGVyc2NvcmUpXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHJlbGF0aW9uc2hpcHNMb2FkZWQgPSB1bmlxdW5pemUoT2JqZWN0LmtleXMobW9kZWwucmVsYXRpb25zaGlwcykuY29uY2F0KE9iamVjdC5rZXlzKG1vZGVsLnJlbGF0aW9uc2hpcHNDYWNoZSkpKVxuXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7cmVmbGVjdGlvbk5hbWV9IGhhc24ndCBiZWVuIGxvYWRlZCB5ZXQgb24gJHttb2RlbC5tb2RlbENsYXNzRGF0YSgpLm5hbWV9LiBMb2FkZWQgd2FzOiAke3JlbGF0aW9uc2hpcHNMb2FkZWQuam9pbihcIiwgXCIpfWApXG4gICAgfVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcnJheTxNb2RlbE9mPE1DPj59ICovXG4gIGxvYWRlZEFycmF5KCkge1xuICAgIGNvbnN0IGxvYWRlZCA9IHRoaXMubG9hZGVkKClcblxuICAgIGlmIChBcnJheS5pc0FycmF5KGxvYWRlZCkpIHtcbiAgICAgIHJldHVybiBsb2FkZWRcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiJ2xvYWRlZCcgd2Fzbid0IGFuIGFycmF5XCIpXG4gICAgfVxuICB9XG5cbiAgLy8gUmVwbGFjZXMgdGhlIHJlbGF0aW9uc2hpcHMgd2l0aCB0aGUgZ2l2ZW4gbmV3IGNvbGxlY3Rpb24uXG4gIC8qKlxuICAgKiBAcGFyYW0ge0FycmF5PE1vZGVsT2Y8TUM+Pn0gbmV3Q29sbGVjdGlvblxuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICovXG4gIHNldChuZXdDb2xsZWN0aW9uKSB7XG4gICAgdGhpcy5hcmdzLm1vZGVsLnJlbGF0aW9uc2hpcHNbdGhpcy5hcmdzLnJlZmxlY3Rpb25OYW1lXSA9IG5ld0NvbGxlY3Rpb25cbiAgfVxuXG4gIC8vIFB1c2hlcyBhbm90aGVyIG1vZGVsIG9udG8gdGhlIGdpdmVuIGNvbGxlY3Rpb24uXG4gIC8qKlxuICAgKiBAcGFyYW0ge01vZGVsT2Y8TUM+fSBuZXdNb2RlbFxuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICovXG4gIHB1c2gobmV3TW9kZWwpIHtcbiAgICBjb25zdCB7bW9kZWwsIHJlZmxlY3Rpb25OYW1lfSA9IHRoaXMuYXJnc1xuXG4gICAgaWYgKCEocmVmbGVjdGlvbk5hbWUgaW4gbW9kZWwucmVsYXRpb25zaGlwcykpIHtcbiAgICAgIG1vZGVsLnJlbGF0aW9uc2hpcHNbcmVmbGVjdGlvbk5hbWVdID0gW11cbiAgICB9XG5cbiAgICBjb25zdCByZWxhdGlvbnNoaXBNb2RlbHMgPSAvKiogQHR5cGUge0FycmF5PE1vZGVsT2Y8TUM+Pn0gKi8gKG1vZGVsLnJlbGF0aW9uc2hpcHNbcmVmbGVjdGlvbk5hbWVdKVxuXG4gICAgaWYgKCFyZWxhdGlvbnNoaXBNb2RlbHMuaW5jbHVkZXMobmV3TW9kZWwpKSB7XG4gICAgICByZWxhdGlvbnNoaXBNb2RlbHMucHVzaChuZXdNb2RlbClcbiAgICB9XG4gIH1cblxuICAvLyBBcnJheSBzaG9ydGN1dHNcbiAgLyoqXG4gICAqIEBwYXJhbSB7ZnVuY3Rpb24oaW1wb3J0KFwiLi9iYXNlLW1vZGVsLmpzXCIpLmRlZmF1bHQpOiBib29sZWFufSBjYWxsYmFja1xuICAgKiBAcmV0dXJucyB7aW1wb3J0KFwiLi9iYXNlLW1vZGVsLmpzXCIpLmRlZmF1bHR9XG4gICAqL1xuICBmaW5kKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmxvYWRlZEFycmF5KCkuZmluZChjYWxsYmFjaykgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9uKGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0KTogdm9pZH0gY2FsbGJhY2tcbiAgICogQHJldHVybnMge3ZvaWR9XG4gICAqL1xuICBmb3JFYWNoKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmxvYWRlZEFycmF5KCkuZm9yRWFjaChjYWxsYmFjaykgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Z1bmN0aW9uKGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0KTogdm9pZH0gY2FsbGJhY2tcbiAgICogQHJldHVybnMge0FycmF5PHVua25vd24+fVxuICAgKi9cbiAgbWFwKGNhbGxiYWNrKSB7IHJldHVybiB0aGlzLmxvYWRlZEFycmF5KCkubWFwKGNhbGxiYWNrKSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UHJlbG9hZFZhbHVlfSBwcmVsb2FkVmFsdWVcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBwcmVsb2FkKHByZWxvYWRWYWx1ZSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cHJlbG9hZDogcHJlbG9hZFZhbHVlfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge251bWJlcn0gcGFnZVxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHBhZ2UocGFnZSkge1xuICAgIGNvbnN0IHBhZ2VUb1VzZSA9IHBhZ2UgfHwgMVxuXG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHtwYWdlOiBwYWdlVG9Vc2V9KVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBwYWdlS2V5XG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgcGFnZUtleShwYWdlS2V5KSB7XG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHtwYWdlS2V5fSlcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7Ym9vbGVhbn0gKi9cbiAgaXNGaWx0ZXJlZCgpIHtcbiAgICBjb25zdCB7cXVlcnlBcmdzfSA9IHRoaXNcblxuICAgIGlmIChcbiAgICAgIHF1ZXJ5QXJncy5hY2Nlc3NpYmxlQnkgfHxcbiAgICAgIHF1ZXJ5QXJncy5jb3VudCB8fFxuICAgICAgcXVlcnlBcmdzLmxpbWl0IHx8XG4gICAgICBxdWVyeUFyZ3MucGFnZSB8fFxuICAgICAgcXVlcnlBcmdzLnBhcmFtcyB8fFxuICAgICAgcXVlcnlBcmdzLnBlciB8fFxuICAgICAgcXVlcnlBcmdzLnJhbnNhY2sgfHxcbiAgICAgIHF1ZXJ5QXJncy5zZWFyY2hcbiAgICApIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICAvKiogQHJldHVybnMge1F1ZXJ5UGFyYW1WYWx1ZU1hcH0gKi9cbiAgcGFyYW1zKCkge1xuICAgIGxldCBwYXJhbXMgPSAvKiogQHR5cGUge1F1ZXJ5UGFyYW1WYWx1ZU1hcH0gKi8gKHt9KVxuXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLnBhcmFtcykgcGFyYW1zID0gaW5jb3Jwb3JhdGUocGFyYW1zLCB0aGlzLnF1ZXJ5QXJncy5wYXJhbXMpXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLmFiaWxpdGllcykgcGFyYW1zLmFiaWxpdGllcyA9IHRoaXMucXVlcnlBcmdzLmFiaWxpdGllc1xuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5hY2Nlc3NpYmxlQnkpIHBhcmFtcy5hY2Nlc3NpYmxlX2J5ID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKHRoaXMucXVlcnlBcmdzLmFjY2Vzc2libGVCeSlcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MuY291bnQpIHBhcmFtcy5jb3VudCA9IHRoaXMucXVlcnlBcmdzLmNvdW50XG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLmRpc3RpbmN0KSBwYXJhbXMuZGlzdGluY3QgPSB0aGlzLnF1ZXJ5QXJncy5kaXN0aW5jdFxuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5ncm91cEJ5KSBwYXJhbXMuZ3JvdXBfYnkgPSB0aGlzLnF1ZXJ5QXJncy5ncm91cEJ5XG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLnJhbnNhY2spIHBhcmFtcy5xID0gdGhpcy5xdWVyeUFyZ3MucmFuc2Fja1xuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5saW1pdCkgcGFyYW1zLmxpbWl0ID0gdGhpcy5xdWVyeUFyZ3MubGltaXRcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3MucHJlbG9hZCkgcGFyYW1zLnByZWxvYWQgPSB0aGlzLnF1ZXJ5QXJncy5wcmVsb2FkXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLnBhZ2UpIHBhcmFtcy5wYWdlID0gdGhpcy5xdWVyeUFyZ3MucGFnZVxuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5wZXIpIHBhcmFtcy5wZXIgPSB0aGlzLnF1ZXJ5QXJncy5wZXJcbiAgICBpZiAodGhpcy5xdWVyeUFyZ3Muc2VhcmNoKSBwYXJhbXMuc2VhcmNoID0gdGhpcy5xdWVyeUFyZ3Muc2VhcmNoXG4gICAgaWYgKHRoaXMucXVlcnlBcmdzLnNlbGVjdCkgcGFyYW1zLnNlbGVjdCA9IHRoaXMucXVlcnlBcmdzLnNlbGVjdFxuICAgIGlmICh0aGlzLnF1ZXJ5QXJncy5zZWxlY3RDb2x1bW5zKSBwYXJhbXMuc2VsZWN0X2NvbHVtbnMgPSB0aGlzLnF1ZXJ5QXJncy5zZWxlY3RDb2x1bW5zXG5cbiAgICByZXR1cm4gcGFyYW1zXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtudW1iZXJ9IHBlclxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHBlcihwZXIpIHtcbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe3Blcn0pXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHBlcktleVxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHBlcktleShwZXJLZXkpIHtcbiAgICByZXR1cm4gdGhpcy5fbWVyZ2Uoe3BlcktleX0pXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtDb2xsZWN0aW9uUmFuc2Fja1BhcmFtc30gcGFyYW1zXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgcmFuc2FjayhwYXJhbXMpIHtcbiAgICBpZiAocGFyYW1zKSB0aGlzLl9tZXJnZSh7cmFuc2FjazogcGFyYW1zfSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtQcm9taXNlPFJlc3VsdD59ICovXG4gIGFzeW5jIHJlc3VsdCgpIHtcbiAgICBjb25zdCByZXNwb25zZSA9IC8qKiBAdHlwZSB7Q29sbGVjdGlvblJlc3BvbnNlPE1DPn0gKi8gKGF3YWl0IHRoaXMuX3Jlc3BvbnNlKCkpXG4gICAgY29uc3QgbW9kZWxzID0gZGlnZyhyZXNwb25zZSwgXCJjb2xsZWN0aW9uXCIpXG5cbiAgICB0aGlzLl9hZGRRdWVyeVRvTW9kZWxzKG1vZGVscylcblxuICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBSZXN1bHQoe2NvbGxlY3Rpb246IHRoaXMsIG1vZGVscywgcmVzcG9uc2V9KVxuXG4gICAgcmV0dXJuIHJlc3VsdFxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7Q29sbGVjdGlvblNlYXJjaFBhcmFtc30gcGFyYW1zXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgc2VhcmNoKHBhcmFtcykge1xuICAgIGlmIChwYXJhbXMpIHRoaXMuX21lcmdlKHtzZWFyY2g6IHBhcmFtc30pXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc2VhcmNoS2V5XG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgc2VhcmNoS2V5KHNlYXJjaEtleSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7c2VhcmNoS2V5fSlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gb3JpZ2luYWxTZWxlY3RcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBzZWxlY3Qob3JpZ2luYWxTZWxlY3QpIHtcbiAgICBjb25zdCBuZXdTZWxlY3QgPSAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gKi8gKHt9KVxuXG4gICAgZm9yIChjb25zdCBvcmlnaW5hbE1vZGVsTmFtZSBpbiBvcmlnaW5hbFNlbGVjdCkge1xuICAgICAgY29uc3QgbmV3TW9kZWxOYW1lID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKG9yaWdpbmFsTW9kZWxOYW1lKVxuICAgICAgY29uc3QgbmV3VmFsdWVzID0gW11cbiAgICAgIGNvbnN0IG9yaWdpbmFsVmFsdWVzID0gb3JpZ2luYWxTZWxlY3Rbb3JpZ2luYWxNb2RlbE5hbWVdXG5cbiAgICAgIGZvciAoY29uc3Qgb3JpZ2luYWxBdHRyaWJ1dGVOYW1lIG9mIG9yaWdpbmFsVmFsdWVzKSB7XG4gICAgICAgIGNvbnN0IG5ld0F0dHJpYnV0ZU5hbWUgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUob3JpZ2luYWxBdHRyaWJ1dGVOYW1lKVxuICAgICAgICBuZXdWYWx1ZXMucHVzaChuZXdBdHRyaWJ1dGVOYW1lKVxuICAgICAgfVxuXG4gICAgICBuZXdTZWxlY3RbbmV3TW9kZWxOYW1lXSA9IG5ld1ZhbHVlc1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7c2VsZWN0OiBuZXdTZWxlY3R9KVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgc3RyaW5nW10+fSBvcmlnaW5hbFNlbGVjdFxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHNlbGVjdENvbHVtbnMob3JpZ2luYWxTZWxlY3QpIHtcbiAgICBjb25zdCBuZXdTZWxlY3QgPSAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gKi8gKHt9KVxuXG4gICAgZm9yIChjb25zdCBvcmlnaW5hbE1vZGVsTmFtZSBpbiBvcmlnaW5hbFNlbGVjdCkge1xuICAgICAgY29uc3QgbmV3TW9kZWxOYW1lID0gaW5mbGVjdGlvbi51bmRlcnNjb3JlKGluZmxlY3Rpb24udW5kZXJzY29yZShvcmlnaW5hbE1vZGVsTmFtZSkpXG4gICAgICBjb25zdCBuZXdWYWx1ZXMgPSBbXVxuICAgICAgY29uc3Qgb3JpZ2luYWxWYWx1ZXMgPSBvcmlnaW5hbFNlbGVjdFtvcmlnaW5hbE1vZGVsTmFtZV1cblxuICAgICAgZm9yIChjb25zdCBvcmlnaW5hbEF0dHJpYnV0ZU5hbWUgb2Ygb3JpZ2luYWxWYWx1ZXMpIHtcbiAgICAgICAgY29uc3QgbmV3QXR0cmlidXRlTmFtZSA9IGluZmxlY3Rpb24udW5kZXJzY29yZShvcmlnaW5hbEF0dHJpYnV0ZU5hbWUpXG4gICAgICAgIG5ld1ZhbHVlcy5wdXNoKG5ld0F0dHJpYnV0ZU5hbWUpXG4gICAgICB9XG5cbiAgICAgIG5ld1NlbGVjdFtuZXdNb2RlbE5hbWVdID0gbmV3VmFsdWVzXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuX21lcmdlKHtzZWxlY3RDb2x1bW5zOiBuZXdTZWxlY3R9KVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBzb3J0QnlcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBzb3J0KHNvcnRCeSkge1xuICAgIHJldHVybiB0aGlzLl9tZXJnZSh7cmFuc2Fjazoge3M6IHNvcnRCeX19KVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtQcm9taXNlPEFycmF5PE1vZGVsT2Y8TUM+Pj59ICovXG4gIGFzeW5jIHRvQXJyYXkoKSB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLl9yZXNwb25zZSgpXG4gICAgY29uc3QgbW9kZWxzID0gZGlnZyhyZXNwb25zZSwgXCJjb2xsZWN0aW9uXCIpXG5cbiAgICB0aGlzLl9hZGRRdWVyeVRvTW9kZWxzKG1vZGVscylcblxuICAgIHJldHVybiBtb2RlbHNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7TUN9ICovXG4gIG1vZGVsQ2xhc3MoKSB7XG4gICAgaWYgKCF0aGlzLmFyZ3MubW9kZWxDbGFzcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTm8gbW9kZWwgY2xhc3MgZ2l2ZW4gaW4gYXJnc1wiKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmFyZ3MubW9kZWxDbGFzc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcGlNYWtlckNvbGxlY3Rpb259ICovXG4gIGNsb25lKCkge1xuICAgIGNvbnN0IGNsb25lZFF1ZXJ5QXJncyA9IGNsb25lRGVlcCh0aGlzLnF1ZXJ5QXJncylcblxuICAgIHJldHVybiBuZXcgQXBpTWFrZXJDb2xsZWN0aW9uKHRoaXMuYXJncywgY2xvbmVkUXVlcnlBcmdzKVxuICB9XG5cbiAgLy8gVGhpcyBpcyBuZWVkZWQgd2hlbiByZWxvYWRpbmcgYSB2ZXJzaW9uIG9mIHRoZSBtb2RlbCB3aXRoIHRoZSBzYW1lIHNlbGVjdGVkIGF0dHJpYnV0ZXMgYW5kIHByZWxvYWRzXG4gIC8qKlxuICAgKiBAcGFyYW0ge0FycmF5PE1vZGVsT2Y8TUM+Pn0gbW9kZWxzXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgX2FkZFF1ZXJ5VG9Nb2RlbHMobW9kZWxzKSB7XG4gICAgZm9yIChjb25zdCBtb2RlbCBvZiBtb2RlbHMpIHtcbiAgICAgIG1vZGVsLmNvbGxlY3Rpb24gPSB0aGlzXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7UXVlcnlBcmdzVHlwZX0gbmV3UXVlcnlBcmdzXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgX21lcmdlKG5ld1F1ZXJ5QXJncykge1xuICAgIGluY29ycG9yYXRlKHRoaXMucXVlcnlBcmdzLCBuZXdRdWVyeUFyZ3MpXG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtpbXBvcnQoXCIuL2NvbW1hbmQtZXhlY3V0aW9uLmpzXCIpLmRlZmF1bHR9ICovXG4gIF9yZXNwb25zZSgpIHtcbiAgICBpZiAoIXRoaXMuYXJncykgdGhyb3cgbmV3IEVycm9yKFwiTm8gYXJncz9cIilcbiAgICBpZiAoIXRoaXMuYXJncy5tb2RlbENsYXNzKSB0aHJvdyBuZXcgRXJyb3IoXCJObyBtb2RlbENsYXNzIGluIGFyZ3NcIilcbiAgICBpZiAoIXRoaXMuYXJncy5tb2RlbENsYXNzLm1vZGVsQ2xhc3NEYXRhKSB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vZGVsQ2xhc3NEYXRhIG9uIG1vZGVsQ2xhc3MgJHt0aGlzLmFyZ3MubW9kZWxDbGFzcz8ubmFtZX0gKCR7dHlwZW9mIHRoaXMuYXJncy5tb2RlbENsYXNzfSlgKVxuXG4gICAgY29uc3QgbW9kZWxDbGFzc0RhdGEgPSB0aGlzLmFyZ3MubW9kZWxDbGFzcy5tb2RlbENsYXNzRGF0YSgpXG5cbiAgICByZXR1cm4gQ29tbWFuZHNQb29sLmFkZENvbW1hbmQoXG4gICAgICB7XG4gICAgICAgIGFyZ3M6IHRoaXMucGFyYW1zKCksXG4gICAgICAgIGNvbW1hbmQ6IGAke21vZGVsQ2xhc3NEYXRhLmNvbGxlY3Rpb25OYW1lfS1pbmRleGAsXG4gICAgICAgIGNvbGxlY3Rpb25OYW1lOiBtb2RlbENsYXNzRGF0YS5jb2xsZWN0aW9uTmFtZSxcbiAgICAgICAgdHlwZTogXCJpbmRleFwiXG4gICAgICB9LFxuICAgICAge31cbiAgICApXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/** @typedef {object | string | number | boolean | null | undefined | Array<object | string | number | boolean | null | undefined>} CommandValue */
|
|
2
|
+
/** @typedef {Record<string, CommandValue>} CommandData */
|
|
3
|
+
/**
|
|
4
|
+
* @typedef {object} ProgressData
|
|
5
|
+
* @property {number | undefined} count
|
|
6
|
+
* @property {number | undefined} progress
|
|
7
|
+
* @property {number | undefined} total
|
|
8
|
+
*/
|
|
1
9
|
/** Shared thenable command handle with progress and log subscriptions. */
|
|
2
10
|
export default class ApiMakerCommandExecution {
|
|
3
11
|
logListeners: any[];
|
|
@@ -12,60 +20,76 @@ export default class ApiMakerCommandExecution {
|
|
|
12
20
|
resolveResultPromise: (value: any) => void;
|
|
13
21
|
rejectResultPromise: (reason?: any) => void;
|
|
14
22
|
/**
|
|
15
|
-
* @param {(value:
|
|
23
|
+
* @param {(value: CommandData) => void} callback
|
|
16
24
|
* @returns {() => void}
|
|
17
25
|
*/
|
|
18
|
-
onReceived(callback: (value:
|
|
26
|
+
onReceived(callback: (value: CommandData) => void): () => void;
|
|
19
27
|
/**
|
|
20
|
-
* @param {(value:
|
|
28
|
+
* @param {(value: ProgressData | undefined) => void} callback
|
|
21
29
|
* @returns {() => void}
|
|
22
30
|
*/
|
|
23
|
-
onProgress(callback: (value:
|
|
31
|
+
onProgress(callback: (value: ProgressData | undefined) => void): () => void;
|
|
24
32
|
/**
|
|
25
33
|
* @param {(value: string) => void} callback
|
|
26
34
|
* @returns {() => void}
|
|
27
35
|
*/
|
|
28
36
|
onLog(callback: (value: string) => void): () => void;
|
|
29
|
-
/** @returns {Promise<
|
|
30
|
-
progress(): Promise<
|
|
31
|
-
/** @returns {Promise<
|
|
32
|
-
received(): Promise<
|
|
37
|
+
/** @returns {Promise<ProgressData | undefined>} */
|
|
38
|
+
progress(): Promise<ProgressData | undefined>;
|
|
39
|
+
/** @returns {Promise<CommandData | undefined>} */
|
|
40
|
+
received(): Promise<CommandData | undefined>;
|
|
33
41
|
/** @returns {string[]} */
|
|
34
42
|
logs(): string[];
|
|
35
|
-
/** @returns {Promise<
|
|
36
|
-
result(): Promise<
|
|
37
|
-
/** @returns {Promise<any>} */
|
|
38
|
-
then(...args: any[]): Promise<any>;
|
|
39
|
-
/** @returns {Promise<any>} */
|
|
40
|
-
catch(...args: any[]): Promise<any>;
|
|
41
|
-
/** @returns {Promise<any>} */
|
|
42
|
-
finally(...args: any[]): Promise<any>;
|
|
43
|
+
/** @returns {Promise<CommandData>} */
|
|
44
|
+
result(): Promise<CommandData>;
|
|
43
45
|
/**
|
|
44
|
-
* @param {
|
|
46
|
+
* @param {Parameters<Promise<CommandData>["then"]>} args
|
|
47
|
+
* @returns {ReturnType<Promise<CommandData>["then"]>}
|
|
48
|
+
*/
|
|
49
|
+
then(onfulfilled?: (value: CommandData) => unknown, onrejected?: (reason: any) => unknown): ReturnType<Promise<CommandData>["then"]>;
|
|
50
|
+
/**
|
|
51
|
+
* @param {Parameters<Promise<CommandData>["catch"]>} args
|
|
52
|
+
* @returns {ReturnType<Promise<CommandData>["catch"]>}
|
|
53
|
+
*/
|
|
54
|
+
catch(onrejected?: (reason: any) => unknown): ReturnType<Promise<CommandData>["catch"]>;
|
|
55
|
+
/**
|
|
56
|
+
* @param {Parameters<Promise<CommandData>["finally"]>} args
|
|
57
|
+
* @returns {ReturnType<Promise<CommandData>["finally"]>}
|
|
58
|
+
*/
|
|
59
|
+
finally(onfinally?: () => void): ReturnType<Promise<CommandData>["finally"]>;
|
|
60
|
+
/**
|
|
61
|
+
* @param {CommandData} data
|
|
45
62
|
* @returns {void}
|
|
46
63
|
*/
|
|
47
|
-
setReceived(data:
|
|
48
|
-
receivedData:
|
|
64
|
+
setReceived(data: CommandData): void;
|
|
65
|
+
receivedData: CommandData;
|
|
49
66
|
/**
|
|
50
|
-
* @param {
|
|
67
|
+
* @param {ProgressData} data
|
|
51
68
|
* @returns {void}
|
|
52
69
|
*/
|
|
53
|
-
setProgress(data:
|
|
54
|
-
progressData:
|
|
70
|
+
setProgress(data: ProgressData): void;
|
|
71
|
+
progressData: ProgressData;
|
|
55
72
|
/**
|
|
56
73
|
* @param {string} message
|
|
57
74
|
* @returns {void}
|
|
58
75
|
*/
|
|
59
76
|
addLog(message: string): void;
|
|
60
77
|
/**
|
|
61
|
-
* @param {
|
|
78
|
+
* @param {CommandData} value
|
|
62
79
|
* @returns {void}
|
|
63
80
|
*/
|
|
64
|
-
resolve(value:
|
|
81
|
+
resolve(value: CommandData): void;
|
|
65
82
|
/**
|
|
66
|
-
* @param {
|
|
83
|
+
* @param {Error} error
|
|
67
84
|
* @returns {void}
|
|
68
85
|
*/
|
|
69
|
-
reject(error:
|
|
86
|
+
reject(error: Error): void;
|
|
70
87
|
}
|
|
88
|
+
export type CommandValue = object | string | number | boolean | null | undefined | Array<object | string | number | boolean | null | undefined>;
|
|
89
|
+
export type CommandData = Record<string, CommandValue>;
|
|
90
|
+
export type ProgressData = {
|
|
91
|
+
count: number | undefined;
|
|
92
|
+
progress: number | undefined;
|
|
93
|
+
total: number | undefined;
|
|
94
|
+
};
|
|
71
95
|
//# sourceMappingURL=command-execution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-execution.d.ts","sourceRoot":"/src/","sources":["command-execution.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"command-execution.d.ts","sourceRoot":"/src/","sources":["command-execution.js"],"names":[],"mappings":"AACA,mJAAmJ;AACnJ,0DAA0D;AAC1D;;;;;GAKG;AAEH,0EAA0E;AAC1E;IAGI,oBAAsB;IACtB,gBAAkB;IAClB,yBAA2B;IAC3B,yBAA2B;IAE3B,8BAEE;IADA,6CAAqC;IAEvC,8BAEE;IADA,6CAAqC;IAEvC,4BAGE;IAFA,2CAAmC;IACnC,4CAAiC;IAIrC;;;OAGG;IACH,qBAHW,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAC1B,MAAM,IAAI,CAYtB;IAED;;;OAGG;IACH,qBAHW,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,KAAK,IAAI,GACvC,MAAM,IAAI,CAYtB;IAED;;;OAGG;IACH,gBAHW,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GACrB,MAAM,IAAI,CAYtB;IAED,mDAAmD;IACnD,YADc,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAG9C;IAED,kDAAkD;IAClD,YADc,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAG7C;IAED,0BAA0B;IAC1B,QADc,MAAM,EAAE,CAGrB;IAED,sCAAsC;IACtC,UADc,OAAO,CAAC,WAAW,CAAC,CAGjC;IAED;;;OAGG;IACH,4FAFa,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAIpD;IAED;;;OAGG;IACH,8CAFa,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,CAIrD;IAED;;;OAGG;IACH,iCAFa,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,CAIvD;IAED;;;OAGG;IACH,kBAHW,WAAW,GACT,IAAI,CAShB;IANC,0BAAwB;IAQ1B;;;OAGG;IACH,kBAHW,YAAY,GACV,IAAI,CAShB;IANC,2BAAwB;IAQ1B;;;OAGG;IACH,gBAHW,MAAM,GACJ,IAAI,CAQhB;IAED;;;OAGG;IACH,eAHW,WAAW,GACT,IAAI,CAMhB;IAED;;;OAGG;IACH,cAHW,KAAK,GACH,IAAI,CAMhB;CACF;2BAnLa,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;0BACpH,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC;;WAG5B,MAAM,GAAG,SAAS;cAClB,MAAM,GAAG,SAAS;WAClB,MAAM,GAAG,SAAS"}
|