@vendure/admin-ui 1.7.4 → 1.8.0
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/README.md +49 -0
- package/angular.json +196 -0
- package/i18n-coverage.json +71 -0
- package/package/bundles/vendure-admin-ui-catalog.umd.js +5689 -0
- package/package/bundles/vendure-admin-ui-catalog.umd.js.map +1 -0
- package/package/bundles/vendure-admin-ui-core.umd.js +16863 -0
- package/package/bundles/vendure-admin-ui-core.umd.js.map +1 -0
- package/package/bundles/vendure-admin-ui-customer.umd.js +1680 -0
- package/package/bundles/vendure-admin-ui-customer.umd.js.map +1 -0
- package/package/bundles/vendure-admin-ui-dashboard.umd.js +759 -0
- package/package/bundles/vendure-admin-ui-dashboard.umd.js.map +1 -0
- package/{bundles → package/bundles}/vendure-admin-ui-login.umd.js +0 -0
- package/{bundles → package/bundles}/vendure-admin-ui-login.umd.js.map +0 -0
- package/{bundles → package/bundles}/vendure-admin-ui-marketing.umd.js +0 -0
- package/{bundles → package/bundles}/vendure-admin-ui-marketing.umd.js.map +0 -0
- package/package/bundles/vendure-admin-ui-order.umd.js +4028 -0
- package/package/bundles/vendure-admin-ui-order.umd.js.map +1 -0
- package/package/bundles/vendure-admin-ui-settings.umd.js +3700 -0
- package/package/bundles/vendure-admin-ui-settings.umd.js.map +1 -0
- package/package/bundles/vendure-admin-ui-system.umd.js +524 -0
- package/{bundles → package/bundles}/vendure-admin-ui-system.umd.js.map +0 -0
- package/{bundles → package/bundles}/vendure-admin-ui.umd.js +0 -0
- package/{bundles → package/bundles}/vendure-admin-ui.umd.js.map +0 -0
- package/package/catalog/catalog.module.d.ts +5 -0
- package/{catalog → package/catalog}/catalog.routes.d.ts +0 -0
- package/{catalog → package/catalog}/components/apply-facet-dialog/apply-facet-dialog.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/asset-detail/asset-detail.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/asset-list/asset-list.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/assets/assets.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.d.ts +0 -0
- package/package/catalog/components/assign-to-channel-dialog/assign-to-channel-dialog.component.d.ts +17 -0
- package/package/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.d.ts +38 -0
- package/package/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.graphql.d.ts +4 -0
- package/{catalog → package/catalog}/components/collection-contents/collection-contents.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/collection-detail/collection-detail.component.d.ts +0 -0
- package/package/catalog/components/collection-list/collection-list-bulk-actions.d.ts +6 -0
- package/package/catalog/components/collection-list/collection-list.component.d.ts +35 -0
- package/{catalog → package/catalog}/components/collection-tree/array-to-tree.d.ts +0 -0
- package/package/catalog/components/collection-tree/collection-tree-node.component.d.ts +40 -0
- package/package/catalog/components/collection-tree/collection-tree.component.d.ts +36 -0
- package/{catalog → package/catalog}/components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/facet-detail/facet-detail.component.d.ts +0 -0
- package/package/catalog/components/facet-list/facet-list-bulk-actions.d.ts +5 -0
- package/package/catalog/components/facet-list/facet-list.component.d.ts +25 -0
- package/{catalog → package/catalog}/components/generate-product-variants/generate-product-variants.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/option-value-input/option-value-input.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/product-detail/product-detail.component.d.ts +0 -0
- package/package/catalog/components/product-list/product-list-bulk-actions.d.ts +6 -0
- package/package/catalog/components/product-list/product-list.component.d.ts +30 -0
- package/{catalog → package/catalog}/components/product-options-editor/product-options-editor.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/product-variants-editor/product-variants-editor.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/product-variants-list/product-variants-list.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/product-variants-table/product-variants-table.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/update-product-option-dialog/update-product-option-dialog.component.d.ts +0 -0
- package/{catalog → package/catalog}/components/variant-price-detail/variant-price-detail.component.d.ts +0 -0
- package/{catalog → package/catalog}/package.json +0 -0
- package/{catalog → package/catalog}/providers/product-detail/product-detail.service.d.ts +0 -0
- package/{catalog → package/catalog}/providers/product-detail/replace-last.d.ts +0 -0
- package/{catalog → package/catalog}/providers/routing/asset-resolver.d.ts +0 -0
- package/{catalog → package/catalog}/providers/routing/collection-resolver.d.ts +0 -0
- package/{catalog → package/catalog}/providers/routing/facet-resolver.d.ts +0 -0
- package/{catalog → package/catalog}/providers/routing/product-resolver.d.ts +0 -0
- package/{catalog → package/catalog}/providers/routing/product-variants-resolver.d.ts +0 -0
- package/package/catalog/public_api.d.ts +39 -0
- package/{catalog → package/catalog}/vendure-admin-ui-catalog.d.ts +0 -0
- package/package/catalog/vendure-admin-ui-catalog.metadata.json +1 -0
- package/{core → package/core}/app.component.d.ts +0 -0
- package/{core → package/core}/app.component.module.d.ts +0 -0
- package/{core → package/core}/app.config.d.ts +0 -0
- package/{core → package/core}/common/base-detail.component.d.ts +0 -0
- package/{core → package/core}/common/base-entity-resolver.d.ts +0 -0
- package/{core → package/core}/common/base-list.component.d.ts +0 -0
- package/package/core/common/component-registry-types.d.ts +56 -0
- package/{core → package/core}/common/deactivate-aware.d.ts +0 -0
- package/{core → package/core}/common/detail-breadcrumb.d.ts +0 -0
- package/package/core/common/generated-types.d.ts +9748 -0
- package/{core → package/core}/common/introspection-result-wrapper.d.ts +0 -0
- package/{core → package/core}/common/introspection-result.d.ts +0 -0
- package/{core → package/core}/common/single-search-selection-model.d.ts +0 -0
- package/package/core/common/utilities/bulk-action-utils.d.ts +19 -0
- package/{core → package/core}/common/utilities/configurable-operation-utils.d.ts +0 -0
- package/{core → package/core}/common/utilities/create-updated-translatable.d.ts +0 -0
- package/{core → package/core}/common/utilities/find-translation.d.ts +0 -0
- package/{core → package/core}/common/utilities/flatten-facet-values.d.ts +0 -0
- package/{core → package/core}/common/utilities/get-default-ui-language.d.ts +0 -0
- package/{core → package/core}/common/utilities/interpolate-description.d.ts +0 -0
- package/package/core/common/utilities/selection-manager.d.ts +30 -0
- package/{core → package/core}/common/utilities/string-to-color.d.ts +0 -0
- package/package/core/common/version.d.ts +1 -0
- package/{core → package/core}/components/app-shell/app-shell.component.d.ts +0 -0
- package/{core → package/core}/components/breadcrumb/breadcrumb.component.d.ts +0 -0
- package/{core → package/core}/components/channel-switcher/channel-switcher.component.d.ts +0 -0
- package/{core → package/core}/components/main-nav/main-nav.component.d.ts +0 -0
- package/{core → package/core}/components/notification/notification.component.d.ts +0 -0
- package/{core → package/core}/components/overlay-host/overlay-host.component.d.ts +0 -0
- package/{core → package/core}/components/theme-switcher/theme-switcher.component.d.ts +0 -0
- package/{core → package/core}/components/ui-language-switcher-dialog/ui-language-switcher-dialog.component.d.ts +0 -0
- package/{core → package/core}/components/user-menu/user-menu.component.d.ts +0 -0
- package/{core → package/core}/core.module.d.ts +0 -0
- package/{core → package/core}/data/check-jobs-link.d.ts +0 -0
- package/{core → package/core}/data/client-state/client-defaults.d.ts +0 -0
- package/{core → package/core}/data/client-state/client-resolvers.d.ts +0 -0
- package/{core → package/core}/data/data.module.d.ts +0 -0
- package/{core → package/core}/data/definitions/administrator-definitions.d.ts +0 -0
- package/{core → package/core}/data/definitions/auth-definitions.d.ts +0 -0
- package/{core → package/core}/data/definitions/client-definitions.d.ts +0 -0
- package/package/core/data/definitions/collection-definitions.d.ts +13 -0
- package/{core → package/core}/data/definitions/customer-definitions.d.ts +0 -0
- package/package/core/data/definitions/facet-definitions.d.ts +13 -0
- package/package/core/data/definitions/order-definitions.d.ts +39 -0
- package/package/core/data/definitions/product-definitions.d.ts +46 -0
- package/{core → package/core}/data/definitions/promotion-definitions.d.ts +0 -0
- package/{core → package/core}/data/definitions/settings-definitions.d.ts +0 -0
- package/{core → package/core}/data/definitions/shared-definitions.d.ts +0 -0
- package/{core → package/core}/data/definitions/shipping-definitions.d.ts +0 -0
- package/{core → package/core}/data/omit-typename-link.d.ts +0 -0
- package/{core → package/core}/data/providers/administrator-data.service.d.ts +0 -0
- package/{core → package/core}/data/providers/auth-data.service.d.ts +0 -0
- package/{core → package/core}/data/providers/base-data.service.d.ts +0 -0
- package/{core → package/core}/data/providers/client-data.service.d.ts +0 -0
- package/package/core/data/providers/collection-data.service.d.ts +28 -0
- package/{core → package/core}/data/providers/customer-data.service.d.ts +0 -0
- package/{core → package/core}/data/providers/data.service.d.ts +0 -0
- package/package/core/data/providers/facet-data.service.d.ts +24 -0
- package/{core → package/core}/data/providers/fetch-adapter.d.ts +0 -0
- package/{core → package/core}/data/providers/interceptor.d.ts +0 -0
- package/package/core/data/providers/order-data.service.d.ts +52 -0
- package/package/core/data/providers/product-data.service.d.ts +82 -0
- package/{core → package/core}/data/providers/promotion-data.service.d.ts +0 -0
- package/{core → package/core}/data/providers/settings-data.service.d.ts +0 -0
- package/{core → package/core}/data/providers/shipping-method-data.service.d.ts +0 -0
- package/{core → package/core}/data/query-result.d.ts +0 -0
- package/{core → package/core}/data/server-config.d.ts +0 -0
- package/{core → package/core}/data/utils/add-custom-fields.d.ts +0 -0
- package/{core → package/core}/data/utils/get-server-location.d.ts +0 -0
- package/{core → package/core}/data/utils/remove-readonly-custom-fields.d.ts +0 -0
- package/{core → package/core}/data/utils/transform-relation-custom-field-inputs.d.ts +0 -0
- package/{core → package/core}/package.json +0 -0
- package/{core → package/core}/providers/auth/auth.service.d.ts +0 -0
- package/package/core/providers/bulk-action-registry/bulk-action-registry.service.d.ts +6 -0
- package/package/core/providers/bulk-action-registry/bulk-action-types.d.ts +149 -0
- package/package/core/providers/bulk-action-registry/register-bulk-action.d.ts +53 -0
- package/{core → package/core}/providers/component-registry/component-registry.service.d.ts +0 -0
- package/{core → package/core}/providers/custom-detail-component/custom-detail-component-types.d.ts +0 -0
- package/{core → package/core}/providers/custom-detail-component/custom-detail-component.service.d.ts +0 -0
- package/{core → package/core}/providers/custom-field-component/custom-field-component.service.d.ts +0 -0
- package/{core → package/core}/providers/dashboard-widget/dashboard-widget-types.d.ts +0 -0
- package/{core → package/core}/providers/dashboard-widget/dashboard-widget.service.d.ts +0 -0
- package/{core → package/core}/providers/dashboard-widget/register-dashboard-widget.d.ts +0 -0
- package/{core → package/core}/providers/guard/auth.guard.d.ts +0 -0
- package/{core → package/core}/providers/health-check/health-check.service.d.ts +0 -0
- package/{core → package/core}/providers/i18n/custom-http-loader.d.ts +0 -0
- package/{core → package/core}/providers/i18n/custom-message-format-compiler.d.ts +0 -0
- package/{core → package/core}/providers/i18n/i18n.service.d.ts +0 -0
- package/{core → package/core}/providers/job-queue/job-queue.service.d.ts +0 -0
- package/{core → package/core}/providers/local-storage/local-storage.service.d.ts +0 -0
- package/package/core/providers/modal/modal.service.d.ts +134 -0
- package/package/core/providers/nav-builder/nav-builder-types.d.ts +92 -0
- package/{core → package/core}/providers/nav-builder/nav-builder.service.d.ts +0 -0
- package/{core → package/core}/providers/notification/notification.service.d.ts +0 -0
- package/{core → package/core}/providers/overlay-host/overlay-host.service.d.ts +0 -0
- package/package/core/public_api.d.ts +239 -0
- package/{core → package/core}/shared/components/action-bar/action-bar.component.d.ts +0 -0
- package/{core → package/core}/shared/components/action-bar-items/action-bar-items.component.d.ts +0 -0
- package/{core → package/core}/shared/components/address-form/address-form.component.d.ts +0 -0
- package/{core → package/core}/shared/components/affixed-input/affixed-input.component.d.ts +0 -0
- package/{core → package/core}/shared/components/affixed-input/percentage-suffix-input.component.d.ts +0 -0
- package/{core → package/core}/shared/components/asset-file-input/asset-file-input.component.d.ts +0 -0
- package/package/core/shared/components/asset-gallery/asset-gallery.component.d.ts +67 -0
- package/{core → package/core}/shared/components/asset-picker-dialog/asset-picker-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/asset-preview/asset-preview.component.d.ts +0 -0
- package/{core → package/core}/shared/components/asset-preview-dialog/asset-preview-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/asset-preview-links/asset-preview-links.component.d.ts +0 -0
- package/{core → package/core}/shared/components/asset-search-input/asset-search-input.component.d.ts +0 -0
- package/package/core/shared/components/bulk-action-menu/bulk-action-menu.component.d.ts +29 -0
- package/{core → package/core}/shared/components/channel-assignment-control/channel-assignment-control.component.d.ts +0 -0
- package/{core → package/core}/shared/components/channel-badge/channel-badge.component.d.ts +0 -0
- package/{core → package/core}/shared/components/chip/chip.component.d.ts +0 -0
- package/{core → package/core}/shared/components/configurable-input/configurable-input.component.d.ts +0 -0
- package/{core → package/core}/shared/components/currency-input/currency-input.component.d.ts +0 -0
- package/{core → package/core}/shared/components/custom-detail-component-host/custom-detail-component-host.component.d.ts +0 -0
- package/{core → package/core}/shared/components/custom-field-control/custom-field-control.component.d.ts +0 -0
- package/{core → package/core}/shared/components/customer-label/customer-label.component.d.ts +0 -0
- package/{core → package/core}/shared/components/data-table/data-table-column.component.d.ts +0 -0
- package/package/core/shared/components/data-table/data-table.component.d.ts +101 -0
- package/{core → package/core}/shared/components/datetime-picker/constants.d.ts +0 -0
- package/{core → package/core}/shared/components/datetime-picker/datetime-picker.component.d.ts +0 -0
- package/{core → package/core}/shared/components/datetime-picker/datetime-picker.service.d.ts +0 -0
- package/{core → package/core}/shared/components/datetime-picker/types.d.ts +0 -0
- package/{core → package/core}/shared/components/dropdown/dropdown-item.directive.d.ts +0 -0
- package/package/core/shared/components/dropdown/dropdown-menu.component.d.ts +31 -0
- package/{core → package/core}/shared/components/dropdown/dropdown-trigger.directive.d.ts +0 -0
- package/{core → package/core}/shared/components/dropdown/dropdown.component.d.ts +0 -0
- package/{core → package/core}/shared/components/edit-note-dialog/edit-note-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/empty-placeholder/empty-placeholder.component.d.ts +0 -0
- package/{core → package/core}/shared/components/entity-info/entity-info.component.d.ts +0 -0
- package/{core → package/core}/shared/components/extension-host/extension-host-config.d.ts +0 -0
- package/{core → package/core}/shared/components/extension-host/extension-host.component.d.ts +0 -0
- package/{core → package/core}/shared/components/extension-host/extension-host.service.d.ts +0 -0
- package/{core → package/core}/shared/components/extension-host/host-external-frame.d.ts +0 -0
- package/{core → package/core}/shared/components/facet-value-chip/facet-value-chip.component.d.ts +0 -0
- package/{core → package/core}/shared/components/facet-value-selector/facet-value-selector.component.d.ts +0 -0
- package/{core → package/core}/shared/components/focal-point-control/focal-point-control.component.d.ts +0 -0
- package/{core → package/core}/shared/components/form-field/form-field-control.directive.d.ts +0 -0
- package/{core → package/core}/shared/components/form-field/form-field.component.d.ts +0 -0
- package/{core → package/core}/shared/components/form-item/form-item.component.d.ts +0 -0
- package/{core → package/core}/shared/components/formatted-address/formatted-address.component.d.ts +0 -0
- package/{core → package/core}/shared/components/help-tooltip/help-tooltip.component.d.ts +0 -0
- package/{core → package/core}/shared/components/history-entry-detail/history-entry-detail.component.d.ts +0 -0
- package/{core → package/core}/shared/components/items-per-page-controls/items-per-page-controls.component.d.ts +0 -0
- package/{core → package/core}/shared/components/labeled-data/labeled-data.component.d.ts +0 -0
- package/{core → package/core}/shared/components/language-selector/language-selector.component.d.ts +0 -0
- package/{core → package/core}/shared/components/manage-tags-dialog/manage-tags-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/modal-dialog/dialog-buttons.directive.d.ts +0 -0
- package/{core → package/core}/shared/components/modal-dialog/dialog-component-outlet.component.d.ts +0 -0
- package/{core → package/core}/shared/components/modal-dialog/dialog-title.directive.d.ts +0 -0
- package/{core → package/core}/shared/components/modal-dialog/modal-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/object-tree/object-tree.component.d.ts +0 -0
- package/{core → package/core}/shared/components/order-state-label/order-state-label.component.d.ts +0 -0
- package/{core → package/core}/shared/components/pagination-controls/pagination-controls.component.d.ts +0 -0
- package/{core → package/core}/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/product-search-input/product-search-input.component.d.ts +0 -0
- package/{core → package/core}/shared/components/product-selector/product-selector.component.d.ts +0 -0
- package/package/core/shared/components/radio-card/radio-card-fieldset.component.d.ts +21 -0
- package/package/core/shared/components/radio-card/radio-card.component.d.ts +19 -0
- package/{core → package/core}/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/rich-text-editor/link-dialog/link-dialog.component.d.ts +0 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.d.ts +28 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.d.ts +31 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/custom-nodes.d.ts +4 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/inputrules.d.ts +8 -0
- package/{core → package/core}/shared/components/rich-text-editor/prosemirror/keymap.d.ts +0 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/menu/links.d.ts +4 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.d.ts +16 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/menu/menu-plugin.d.ts +9 -0
- package/{core → package/core}/shared/components/rich-text-editor/prosemirror/menu/menu.d.ts +0 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/menu/sub-menu-with-icon.d.ts +14 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/plugins/image-plugin.d.ts +7 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.d.ts +5 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/plugins/raw-editor-plugin.d.ts +7 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/plugins/tables-plugin.d.ts +13 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.d.ts +25 -0
- package/package/core/shared/components/rich-text-editor/prosemirror/types.d.ts +9 -0
- package/{core → package/core}/shared/components/rich-text-editor/prosemirror/utils.d.ts +0 -0
- package/package/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.d.ts +18 -0
- package/package/core/shared/components/rich-text-editor/rich-text-editor.component.d.ts +39 -0
- package/{core → package/core}/shared/components/select-toggle/select-toggle.component.d.ts +0 -0
- package/{core → package/core}/shared/components/simple-dialog/simple-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/components/status-badge/status-badge.component.d.ts +0 -0
- package/{core → package/core}/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.d.ts +0 -0
- package/{core → package/core}/shared/components/table-row-action/table-row-action.component.d.ts +0 -0
- package/{core → package/core}/shared/components/tag-selector/tag-selector.component.d.ts +0 -0
- package/{core → package/core}/shared/components/timeline-entry/timeline-entry.component.d.ts +0 -0
- package/{core → package/core}/shared/components/title-input/title-input.component.d.ts +0 -0
- package/{core → package/core}/shared/components/ui-extension-point/ui-extension-point.component.d.ts +0 -0
- package/{core → package/core}/shared/directives/disabled.directive.d.ts +0 -0
- package/{core → package/core}/shared/directives/if-default-channel-active.directive.d.ts +0 -0
- package/{core → package/core}/shared/directives/if-directive-base.d.ts +0 -0
- package/{core → package/core}/shared/directives/if-multichannel.directive.d.ts +0 -0
- package/{core → package/core}/shared/directives/if-permissions.directive.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component.d.ts +0 -0
- package/package/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.d.ts +27 -0
- package/package/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.d.ts +19 -0
- package/package/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.d.ts +20 -0
- package/{core → package/core}/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/currency-form-input/currency-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/date-form-input/date-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/number-form-input/number-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/password-form-input/password-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.d.ts +0 -0
- package/package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +90 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/relation-form-input/relation-selector-dialog/relation-selector-dialog.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/rich-text-form-input/rich-text-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/select-form-input/select-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/text-form-input/text-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/dynamic-form-inputs/textarea-form-input/textarea-form-input.component.d.ts +0 -0
- package/{core → package/core}/shared/pipes/asset-preview.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/channel-label.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/custom-field-label.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/duration.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/file-size.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/has-permission.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/locale-base.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/locale-currency-name.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/locale-currency.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/locale-date.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/locale-language-name.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/locale-region-name.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/sentence-case.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/sort.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/state-i18n-token.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/string-to-color.pipe.d.ts +0 -0
- package/{core → package/core}/shared/pipes/time-ago.pipe.d.ts +0 -0
- package/{core → package/core}/shared/providers/routing/can-deactivate-detail-guard.d.ts +0 -0
- package/{core → package/core}/shared/shared.module.d.ts +0 -0
- package/{core → package/core}/validators/unicode-pattern.validator.d.ts +0 -0
- package/{core → package/core}/vendure-admin-ui-core.d.ts +0 -0
- package/package/core/vendure-admin-ui-core.metadata.json +1 -0
- package/{customer → package/customer}/components/add-customer-to-group-dialog/add-customer-to-group-dialog.component.d.ts +0 -0
- package/{customer → package/customer}/components/address-card/address-card.component.d.ts +0 -0
- package/{customer → package/customer}/components/address-detail-dialog/address-detail-dialog.component.d.ts +0 -0
- package/{customer → package/customer}/components/customer-detail/customer-detail.component.d.ts +0 -0
- package/{customer → package/customer}/components/customer-group-detail-dialog/customer-group-detail-dialog.component.d.ts +0 -0
- package/{customer → package/customer}/components/customer-group-list/customer-group-list.component.d.ts +0 -0
- package/package/customer/components/customer-group-member-list/customer-group-member-list.component.d.ts +44 -0
- package/{customer → package/customer}/components/customer-history/customer-history.component.d.ts +0 -0
- package/{customer → package/customer}/components/customer-list/customer-list.component.d.ts +0 -0
- package/{customer → package/customer}/components/customer-status-label/customer-status-label.component.d.ts +0 -0
- package/{customer → package/customer}/components/select-customer-group-dialog/select-customer-group-dialog.component.d.ts +0 -0
- package/{customer → package/customer}/customer.module.d.ts +0 -0
- package/{customer → package/customer}/customer.routes.d.ts +0 -0
- package/{customer → package/customer}/package.json +0 -0
- package/{customer → package/customer}/providers/routing/customer-resolver.d.ts +0 -0
- package/{customer → package/customer}/public_api.d.ts +0 -0
- package/{customer → package/customer}/vendure-admin-ui-customer.d.ts +0 -0
- package/package/customer/vendure-admin-ui-customer.metadata.json +1 -0
- package/{dashboard → package/dashboard}/components/dashboard/dashboard.component.d.ts +0 -0
- package/{dashboard → package/dashboard}/components/dashboard-widget/dashboard-widget.component.d.ts +0 -0
- package/{dashboard → package/dashboard}/dashboard.module.d.ts +0 -0
- package/{dashboard → package/dashboard}/dashboard.routes.d.ts +0 -0
- package/{dashboard → package/dashboard}/default-widgets.d.ts +0 -0
- package/{dashboard → package/dashboard}/package.json +0 -0
- package/{dashboard → package/dashboard}/public_api.d.ts +0 -0
- package/{dashboard → package/dashboard}/vendure-admin-ui-dashboard.d.ts +0 -0
- package/{dashboard → package/dashboard}/vendure-admin-ui-dashboard.metadata.json +0 -0
- package/{dashboard → package/dashboard}/widgets/latest-orders-widget/latest-orders-widget.component.d.ts +0 -0
- package/{dashboard → package/dashboard}/widgets/order-summary-widget/order-summary-widget.component.d.ts +0 -0
- package/{dashboard → package/dashboard}/widgets/test-widget/test-widget.component.d.ts +0 -0
- package/{dashboard → package/dashboard}/widgets/welcome-widget/welcome-widget.component.d.ts +0 -0
- package/package/esm2015/catalog/catalog.module.js +85 -0
- package/{esm2015 → package/esm2015}/catalog/catalog.routes.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/apply-facet-dialog/apply-facet-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/asset-detail/asset-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/asset-list/asset-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/assets/assets.component.js +0 -0
- package/package/esm2015/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.js +112 -0
- package/package/esm2015/catalog/components/assign-to-channel-dialog/assign-to-channel-dialog.component.js +51 -0
- package/package/esm2015/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.js +89 -0
- package/package/esm2015/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.graphql.js +69 -0
- package/{esm2015 → package/esm2015}/catalog/components/collection-contents/collection-contents.component.js +0 -0
- package/package/esm2015/catalog/components/collection-detail/collection-detail.component.js +244 -0
- package/package/esm2015/catalog/components/collection-list/collection-list-bulk-actions.js +147 -0
- package/package/esm2015/catalog/components/collection-list/collection-list.component.js +154 -0
- package/{esm2015 → package/esm2015}/catalog/components/collection-tree/array-to-tree.js +0 -0
- package/package/esm2015/catalog/components/collection-tree/collection-tree-node.component.js +126 -0
- package/package/esm2015/catalog/components/collection-tree/collection-tree.component.js +77 -0
- package/{esm2015 → package/esm2015}/catalog/components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/facet-detail/facet-detail.component.js +0 -0
- package/package/esm2015/catalog/components/facet-list/facet-list-bulk-actions.js +208 -0
- package/package/esm2015/catalog/components/facet-list/facet-list.component.js +116 -0
- package/{esm2015 → package/esm2015}/catalog/components/generate-product-variants/generate-product-variants.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/option-value-input/option-value-input.component.js +0 -0
- package/package/esm2015/catalog/components/product-detail/product-detail.component.js +527 -0
- package/package/esm2015/catalog/components/product-list/product-list-bulk-actions.js +173 -0
- package/package/esm2015/catalog/components/product-list/product-list.component.js +158 -0
- package/{esm2015 → package/esm2015}/catalog/components/product-options-editor/product-options-editor.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/product-variants-editor/product-variants-editor.component.js +0 -0
- package/package/esm2015/catalog/components/product-variants-list/product-variants-list.component.js +214 -0
- package/{esm2015 → package/esm2015}/catalog/components/product-variants-table/product-variants-table.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/update-product-option-dialog/update-product-option-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/components/variant-price-detail/variant-price-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/providers/product-detail/product-detail.service.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/providers/product-detail/replace-last.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/providers/routing/asset-resolver.js +0 -0
- package/package/esm2015/catalog/providers/routing/collection-resolver.js +39 -0
- package/{esm2015 → package/esm2015}/catalog/providers/routing/facet-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/providers/routing/product-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/catalog/providers/routing/product-variants-resolver.js +0 -0
- package/package/esm2015/catalog/public_api.js +41 -0
- package/{esm2015 → package/esm2015}/catalog/vendure-admin-ui-catalog.js +0 -0
- package/{esm2015 → package/esm2015}/core/app.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/app.component.module.js +0 -0
- package/{esm2015 → package/esm2015}/core/app.config.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/base-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/base-entity-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/base-list.component.js +0 -0
- package/package/esm2015/core/common/component-registry-types.js +2 -0
- package/{esm2015 → package/esm2015}/core/common/deactivate-aware.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/detail-breadcrumb.js +0 -0
- package/package/esm2015/core/common/generated-types.js +987 -0
- package/{esm2015 → package/esm2015}/core/common/introspection-result-wrapper.js +0 -0
- package/package/esm2015/core/common/introspection-result.js +300 -0
- package/{esm2015 → package/esm2015}/core/common/single-search-selection-model.js +0 -0
- package/package/esm2015/core/common/utilities/bulk-action-utils.js +44 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/configurable-operation-utils.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/create-updated-translatable.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/find-translation.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/flatten-facet-values.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/get-default-ui-language.js +0 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/interpolate-description.js +0 -0
- package/package/esm2015/core/common/utilities/selection-manager.js +96 -0
- package/{esm2015 → package/esm2015}/core/common/utilities/string-to-color.js +0 -0
- package/package/esm2015/core/common/version.js +3 -0
- package/{esm2015 → package/esm2015}/core/components/app-shell/app-shell.component.js +0 -0
- package/package/esm2015/core/components/breadcrumb/breadcrumb.component.js +126 -0
- package/{esm2015 → package/esm2015}/core/components/channel-switcher/channel-switcher.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/components/main-nav/main-nav.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/components/notification/notification.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/components/overlay-host/overlay-host.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/components/theme-switcher/theme-switcher.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/components/ui-language-switcher-dialog/ui-language-switcher-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/components/user-menu/user-menu.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/core.module.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/check-jobs-link.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/client-state/client-defaults.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/client-state/client-resolvers.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/data.module.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/administrator-definitions.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/auth-definitions.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/client-definitions.js +0 -0
- package/package/esm2015/core/data/definitions/collection-definitions.js +173 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/customer-definitions.js +0 -0
- package/package/esm2015/core/data/definitions/facet-definitions.js +140 -0
- package/package/esm2015/core/data/definitions/order-definitions.js +585 -0
- package/package/esm2015/core/data/definitions/product-definitions.js +759 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/promotion-definitions.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/settings-definitions.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/shared-definitions.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/definitions/shipping-definitions.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/omit-typename-link.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/administrator-data.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/auth-data.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/base-data.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/client-data.service.js +0 -0
- package/package/esm2015/core/data/providers/collection-data.service.js +90 -0
- package/package/esm2015/core/data/providers/customer-data.service.js +121 -0
- package/{esm2015 → package/esm2015}/core/data/providers/data.service.js +0 -0
- package/package/esm2015/core/data/providers/facet-data.service.js +76 -0
- package/{esm2015 → package/esm2015}/core/data/providers/fetch-adapter.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/interceptor.js +0 -0
- package/package/esm2015/core/data/providers/order-data.service.js +139 -0
- package/package/esm2015/core/data/providers/product-data.service.js +240 -0
- package/{esm2015 → package/esm2015}/core/data/providers/promotion-data.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/settings-data.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/providers/shipping-method-data.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/query-result.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/server-config.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/utils/add-custom-fields.js +0 -0
- package/{esm2015 → package/esm2015}/core/data/utils/get-server-location.js +0 -0
- package/package/esm2015/core/data/utils/remove-readonly-custom-fields.js +95 -0
- package/{esm2015 → package/esm2015}/core/data/utils/transform-relation-custom-field-inputs.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/auth/auth.service.js +0 -0
- package/package/esm2015/core/providers/bulk-action-registry/bulk-action-registry.service.js +27 -0
- package/package/esm2015/core/providers/bulk-action-registry/bulk-action-types.js +2 -0
- package/package/esm2015/core/providers/bulk-action-registry/register-bulk-action.js +63 -0
- package/{esm2015 → package/esm2015}/core/providers/component-registry/component-registry.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/custom-detail-component/custom-detail-component-types.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/custom-detail-component/custom-detail-component.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/custom-field-component/custom-field-component.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/dashboard-widget/dashboard-widget-types.js +0 -0
- package/package/esm2015/core/providers/dashboard-widget/dashboard-widget.service.js +94 -0
- package/{esm2015 → package/esm2015}/core/providers/dashboard-widget/register-dashboard-widget.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/guard/auth.guard.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/health-check/health-check.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/i18n/custom-http-loader.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/i18n/custom-message-format-compiler.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/i18n/i18n.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/job-queue/job-queue.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/local-storage/local-storage.service.js +0 -0
- package/package/esm2015/core/providers/modal/modal.service.js +101 -0
- package/package/esm2015/core/providers/nav-builder/nav-builder-types.js +2 -0
- package/{esm2015 → package/esm2015}/core/providers/nav-builder/nav-builder.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/notification/notification.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/providers/overlay-host/overlay-host.service.js +0 -0
- package/package/esm2015/core/public_api.js +241 -0
- package/package/esm2015/core/shared/components/action-bar/action-bar.component.js +43 -0
- package/{esm2015 → package/esm2015}/core/shared/components/action-bar-items/action-bar-items.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/address-form/address-form.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/affixed-input/affixed-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/affixed-input/percentage-suffix-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/asset-file-input/asset-file-input.component.js +0 -0
- package/package/esm2015/core/shared/components/asset-gallery/asset-gallery.component.js +84 -0
- package/{esm2015 → package/esm2015}/core/shared/components/asset-picker-dialog/asset-picker-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/asset-preview/asset-preview.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/asset-preview-dialog/asset-preview-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/asset-preview-links/asset-preview-links.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/asset-search-input/asset-search-input.component.js +0 -0
- package/package/esm2015/core/shared/components/bulk-action-menu/bulk-action-menu.component.js +99 -0
- package/{esm2015 → package/esm2015}/core/shared/components/channel-assignment-control/channel-assignment-control.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/channel-badge/channel-badge.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/chip/chip.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/configurable-input/configurable-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/currency-input/currency-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/custom-field-control/custom-field-control.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/customer-label/customer-label.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/data-table/data-table-column.component.js +0 -0
- package/package/esm2015/core/shared/components/data-table/data-table.component.js +162 -0
- package/{esm2015 → package/esm2015}/core/shared/components/datetime-picker/constants.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/datetime-picker/datetime-picker.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/datetime-picker/datetime-picker.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/datetime-picker/types.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/dropdown/dropdown-item.directive.js +0 -0
- package/package/esm2015/core/shared/components/dropdown/dropdown-menu.component.js +122 -0
- package/{esm2015 → package/esm2015}/core/shared/components/dropdown/dropdown-trigger.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/dropdown/dropdown.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/edit-note-dialog/edit-note-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/empty-placeholder/empty-placeholder.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/entity-info/entity-info.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/extension-host/extension-host-config.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/extension-host/extension-host.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/extension-host/extension-host.service.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/extension-host/host-external-frame.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/facet-value-chip/facet-value-chip.component.js +0 -0
- package/package/esm2015/core/shared/components/facet-value-selector/facet-value-selector.component.js +117 -0
- package/{esm2015 → package/esm2015}/core/shared/components/focal-point-control/focal-point-control.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/form-field/form-field-control.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/form-field/form-field.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/form-item/form-item.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/formatted-address/formatted-address.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/help-tooltip/help-tooltip.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/history-entry-detail/history-entry-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/items-per-page-controls/items-per-page-controls.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/labeled-data/labeled-data.component.js +0 -0
- package/package/esm2015/core/shared/components/language-selector/language-selector.component.js +21 -0
- package/{esm2015 → package/esm2015}/core/shared/components/manage-tags-dialog/manage-tags-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/modal-dialog/dialog-buttons.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/modal-dialog/dialog-component-outlet.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/modal-dialog/dialog-title.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/modal-dialog/modal-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/object-tree/object-tree.component.js +0 -0
- package/package/esm2015/core/shared/components/order-state-label/order-state-label.component.js +44 -0
- package/{esm2015 → package/esm2015}/core/shared/components/pagination-controls/pagination-controls.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.js +0 -0
- package/package/esm2015/core/shared/components/product-search-input/product-search-input.component.js +104 -0
- package/package/esm2015/core/shared/components/product-selector/product-selector.component.js +61 -0
- package/package/esm2015/core/shared/components/radio-card/radio-card-fieldset.component.js +57 -0
- package/package/esm2015/core/shared/components/radio-card/radio-card.component.js +54 -0
- package/package/esm2015/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.js +32 -0
- package/{esm2015 → package/esm2015}/core/shared/components/rich-text-editor/link-dialog/link-dialog.component.js +0 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.js +140 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.js +45 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/custom-nodes.js +60 -0
- package/{esm2015 → package/esm2015}/core/shared/components/rich-text-editor/prosemirror/inputrules.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/rich-text-editor/prosemirror/keymap.js +0 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/links.js +69 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.js +42 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu-plugin.js +12 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu.js +247 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/sub-menu-with-icon.js +16 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/image-plugin.js +100 -0
- package/{esm2015 → package/esm2015}/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.js +0 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/raw-editor-plugin.js +97 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/tables-plugin.js +166 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.js +142 -0
- package/package/esm2015/core/shared/components/rich-text-editor/prosemirror/types.js +2 -0
- package/{esm2015 → package/esm2015}/core/shared/components/rich-text-editor/prosemirror/utils.js +0 -0
- package/package/esm2015/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.js +57 -0
- package/package/esm2015/core/shared/components/rich-text-editor/rich-text-editor.component.js +97 -0
- package/{esm2015 → package/esm2015}/core/shared/components/select-toggle/select-toggle.component.js +0 -0
- package/package/esm2015/core/shared/components/simple-dialog/simple-dialog.component.js +21 -0
- package/{esm2015 → package/esm2015}/core/shared/components/status-badge/status-badge.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/table-row-action/table-row-action.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/tag-selector/tag-selector.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/timeline-entry/timeline-entry.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/title-input/title-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/components/ui-extension-point/ui-extension-point.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/directives/disabled.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/directives/if-default-channel-active.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/directives/if-directive-base.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/directives/if-multichannel.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/directives/if-permissions.directive.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component.js +0 -0
- package/package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.js +59 -0
- package/package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.js +66 -0
- package/package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.js +88 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/currency-form-input/currency-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/date-form-input/date-form-input.component.js +0 -0
- package/package/esm2015/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.js +266 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/number-form-input/number-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/password-form-input/password-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.js +0 -0
- package/package/esm2015/core/shared/dynamic-form-inputs/register-dynamic-input-components.js +136 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/relation-form-input/relation-selector-dialog/relation-selector-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/rich-text-form-input/rich-text-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/text-form-input/text-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/dynamic-form-inputs/textarea-form-input/textarea-form-input.component.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/asset-preview.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/channel-label.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/custom-field-label.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/duration.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/file-size.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/has-permission.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/locale-base.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/locale-currency-name.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/locale-currency.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/locale-date.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/locale-language-name.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/locale-region-name.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/sentence-case.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/sort.pipe.js +0 -0
- package/package/esm2015/core/shared/pipes/state-i18n-token.pipe.js +47 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/string-to-color.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/pipes/time-ago.pipe.js +0 -0
- package/{esm2015 → package/esm2015}/core/shared/providers/routing/can-deactivate-detail-guard.js +0 -0
- package/package/esm2015/core/shared/shared.module.js +287 -0
- package/{esm2015 → package/esm2015}/core/validators/unicode-pattern.validator.js +0 -0
- package/{esm2015 → package/esm2015}/core/vendure-admin-ui-core.js +0 -0
- package/{esm2015 → package/esm2015}/customer/components/add-customer-to-group-dialog/add-customer-to-group-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/customer/components/address-card/address-card.component.js +0 -0
- package/{esm2015 → package/esm2015}/customer/components/address-detail-dialog/address-detail-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/customer/components/customer-detail/customer-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/customer/components/customer-group-detail-dialog/customer-group-detail-dialog.component.js +0 -0
- package/package/esm2015/customer/components/customer-group-list/customer-group-list.component.js +198 -0
- package/package/esm2015/customer/components/customer-group-member-list/customer-group-member-list.component.js +101 -0
- package/{esm2015 → package/esm2015}/customer/components/customer-history/customer-history.component.js +0 -0
- package/package/esm2015/customer/components/customer-list/customer-list.component.js +81 -0
- package/{esm2015 → package/esm2015}/customer/components/customer-status-label/customer-status-label.component.js +0 -0
- package/{esm2015 → package/esm2015}/customer/components/select-customer-group-dialog/select-customer-group-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/customer/customer.module.js +0 -0
- package/{esm2015 → package/esm2015}/customer/customer.routes.js +0 -0
- package/{esm2015 → package/esm2015}/customer/providers/routing/customer-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/customer/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/customer/vendure-admin-ui-customer.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/components/dashboard/dashboard.component.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/components/dashboard-widget/dashboard-widget.component.js +0 -0
- package/package/esm2015/dashboard/dashboard.module.js +29 -0
- package/{esm2015 → package/esm2015}/dashboard/dashboard.routes.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/default-widgets.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/vendure-admin-ui-dashboard.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/widgets/order-summary-widget/order-summary-widget.component.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/widgets/test-widget/test-widget.component.js +0 -0
- package/{esm2015 → package/esm2015}/dashboard/widgets/welcome-widget/welcome-widget.component.js +0 -0
- package/{esm2015 → package/esm2015}/login/components/login/login.component.js +0 -0
- package/{esm2015 → package/esm2015}/login/login.module.js +0 -0
- package/{esm2015 → package/esm2015}/login/login.routes.js +0 -0
- package/{esm2015 → package/esm2015}/login/providers/login.guard.js +0 -0
- package/{esm2015 → package/esm2015}/login/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/login/vendure-admin-ui-login.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/components/promotion-detail/promotion-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/components/promotion-list/promotion-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/marketing.module.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/marketing.routes.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/providers/routing/promotion-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/marketing/vendure-admin-ui-marketing.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/add-manual-payment-dialog/add-manual-payment-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/cancel-order-dialog/cancel-order-dialog.component.js +0 -0
- package/package/esm2015/order/components/coupon-code-selector/coupon-code-selector.component.js +42 -0
- package/package/esm2015/order/components/draft-order-detail/draft-order-detail.component.js +195 -0
- package/package/esm2015/order/components/draft-order-variant-selector/draft-order-variant-selector.component.js +59 -0
- package/{esm2015 → package/esm2015}/order/components/fulfill-order-dialog/fulfill-order-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/fulfillment-card/fulfillment-card.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/fulfillment-detail/fulfillment-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/fulfillment-state-label/fulfillment-state-label.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/line-fulfillment/line-fulfillment.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/line-refunds/line-refunds.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/modification-detail/modification-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-custom-fields-card/order-custom-fields-card.component.js +0 -0
- package/package/esm2015/order/components/order-detail/order-detail.component.js +550 -0
- package/package/esm2015/order/components/order-editor/order-editor.component.js +375 -0
- package/{esm2015 → package/esm2015}/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-history/order-history.component.js +0 -0
- package/package/esm2015/order/components/order-list/order-list.component.js +211 -0
- package/{esm2015 → package/esm2015}/order/components/order-payment-card/order-payment-card.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-process-graph/constants.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-process-graph/order-process-edge.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-process-graph/order-process-graph.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-process-graph/order-process-node.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-process-graph/types.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-process-graph-dialog/order-process-graph-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/order-state-select-dialog/order-state-select-dialog.component.js +0 -0
- package/package/esm2015/order/components/order-table/order-table.component.js +87 -0
- package/{esm2015 → package/esm2015}/order/components/payment-detail/payment-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/payment-state-label/payment-state-label.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/refund-order-dialog/refund-order-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/refund-state-label/refund-state-label.component.js +0 -0
- package/package/esm2015/order/components/select-address-dialog/select-address-dialog.component.js +91 -0
- package/package/esm2015/order/components/select-address-dialog/select-address-dialog.graphql.js +14 -0
- package/package/esm2015/order/components/select-customer-dialog/select-customer-dialog.component.js +59 -0
- package/package/esm2015/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.js +30 -0
- package/{esm2015 → package/esm2015}/order/components/settle-refund-dialog/settle-refund-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/order/components/simple-item-list/simple-item-list.component.js +0 -0
- package/package/esm2015/order/order.module.js +82 -0
- package/package/esm2015/order/order.routes.js +73 -0
- package/{esm2015 → package/esm2015}/order/providers/order-transition.service.js +0 -0
- package/package/esm2015/order/providers/routing/order-resolver.js +50 -0
- package/package/esm2015/order/providers/routing/order.guard.js +41 -0
- package/package/esm2015/order/public_api.js +44 -0
- package/{esm2015 → package/esm2015}/order/vendure-admin-ui-order.js +0 -0
- package/{esm2015 → package/esm2015}/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/add-country-to-zone-dialog/add-country-to-zone-dialog.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/admin-detail/admin-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/administrator-list/administrator-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/channel-detail/channel-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/channel-list/channel-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/country-detail/country-detail.component.js +0 -0
- package/package/esm2015/settings/components/country-list/country-list.component.js +82 -0
- package/{esm2015 → package/esm2015}/settings/components/global-settings/global-settings.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/payment-method-detail/payment-method-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/payment-method-list/payment-method-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/permission-grid/permission-grid.component.js +0 -0
- package/package/esm2015/settings/components/profile/profile.component.js +82 -0
- package/{esm2015 → package/esm2015}/settings/components/role-detail/role-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/role-list/role-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/shipping-eligibility-test-result/shipping-eligibility-test-result.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/shipping-method-detail/shipping-method-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/shipping-method-list/shipping-method-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/shipping-method-test-result/shipping-method-test-result.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/tax-category-detail/tax-category-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/tax-category-list/tax-category-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/tax-rate-detail/tax-rate-detail.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/tax-rate-list/tax-rate-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/test-address-form/test-address-form.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/test-order-builder/test-order-builder.component.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/zone-detail-dialog/zone-detail-dialog.component.js +0 -0
- package/package/esm2015/settings/components/zone-list/zone-list.component.js +160 -0
- package/{esm2015 → package/esm2015}/settings/components/zone-member-list/zone-member-controls.directive.js +0 -0
- package/{esm2015 → package/esm2015}/settings/components/zone-member-list/zone-member-list-header.directive.js +0 -0
- package/package/esm2015/settings/components/zone-member-list/zone-member-list.component.js +63 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/administrator-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/channel-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/country-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/global-settings-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/payment-method-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/profile-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/role-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/shipping-method-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/tax-category-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/providers/routing/tax-rate-resolver.js +0 -0
- package/{esm2015 → package/esm2015}/settings/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/settings/settings.module.js +0 -0
- package/{esm2015 → package/esm2015}/settings/settings.routes.js +0 -0
- package/{esm2015 → package/esm2015}/settings/vendure-admin-ui-settings.js +0 -0
- package/package/esm2015/system/components/health-check/health-check.component.js +19 -0
- package/{esm2015 → package/esm2015}/system/components/job-list/job-list.component.js +0 -0
- package/{esm2015 → package/esm2015}/system/components/job-state-label/job-state-label.component.js +0 -0
- package/{esm2015 → package/esm2015}/system/public_api.js +0 -0
- package/{esm2015 → package/esm2015}/system/system.module.js +0 -0
- package/{esm2015 → package/esm2015}/system/system.routes.js +0 -0
- package/{esm2015 → package/esm2015}/system/vendure-admin-ui-system.js +0 -0
- package/{esm2015 → package/esm2015}/vendure-admin-ui.js +0 -0
- package/package/fesm2015/vendure-admin-ui-catalog.js +4768 -0
- package/package/fesm2015/vendure-admin-ui-catalog.js.map +1 -0
- package/package/fesm2015/vendure-admin-ui-core.js +17900 -0
- package/package/fesm2015/vendure-admin-ui-core.js.map +1 -0
- package/package/fesm2015/vendure-admin-ui-customer.js +1184 -0
- package/package/fesm2015/vendure-admin-ui-customer.js.map +1 -0
- package/package/fesm2015/vendure-admin-ui-dashboard.js +375 -0
- package/package/fesm2015/vendure-admin-ui-dashboard.js.map +1 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui-login.js +0 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui-login.js.map +0 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui-marketing.js +0 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui-marketing.js.map +0 -0
- package/package/fesm2015/vendure-admin-ui-order.js +3155 -0
- package/package/fesm2015/vendure-admin-ui-order.js.map +1 -0
- package/package/fesm2015/vendure-admin-ui-settings.js +2977 -0
- package/package/fesm2015/vendure-admin-ui-settings.js.map +1 -0
- package/package/fesm2015/vendure-admin-ui-system.js +171 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui-system.js.map +0 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui.js +0 -0
- package/{fesm2015 → package/fesm2015}/vendure-admin-ui.js.map +0 -0
- package/{login → package/login}/components/login/login.component.d.ts +0 -0
- package/{login → package/login}/login.module.d.ts +0 -0
- package/{login → package/login}/login.routes.d.ts +0 -0
- package/{login → package/login}/package.json +0 -0
- package/{login → package/login}/providers/login.guard.d.ts +0 -0
- package/{login → package/login}/public_api.d.ts +0 -0
- package/{login → package/login}/vendure-admin-ui-login.d.ts +0 -0
- package/{login → package/login}/vendure-admin-ui-login.metadata.json +0 -0
- package/{marketing → package/marketing}/components/promotion-detail/promotion-detail.component.d.ts +0 -0
- package/{marketing → package/marketing}/components/promotion-list/promotion-list.component.d.ts +0 -0
- package/{marketing → package/marketing}/marketing.module.d.ts +0 -0
- package/{marketing → package/marketing}/marketing.routes.d.ts +0 -0
- package/{marketing → package/marketing}/package.json +0 -0
- package/{marketing → package/marketing}/providers/routing/promotion-resolver.d.ts +0 -0
- package/{marketing → package/marketing}/public_api.d.ts +0 -0
- package/{marketing → package/marketing}/vendure-admin-ui-marketing.d.ts +0 -0
- package/{marketing → package/marketing}/vendure-admin-ui-marketing.metadata.json +0 -0
- package/{order → package/order}/components/add-manual-payment-dialog/add-manual-payment-dialog.component.d.ts +0 -0
- package/{order → package/order}/components/cancel-order-dialog/cancel-order-dialog.component.d.ts +0 -0
- package/package/order/components/coupon-code-selector/coupon-code-selector.component.d.ts +18 -0
- package/package/order/components/draft-order-detail/draft-order-detail.component.d.ts +49 -0
- package/package/order/components/draft-order-variant-selector/draft-order-variant-selector.component.d.ts +21 -0
- package/{order → package/order}/components/fulfill-order-dialog/fulfill-order-dialog.component.d.ts +0 -0
- package/{order → package/order}/components/fulfillment-card/fulfillment-card.component.d.ts +0 -0
- package/{order → package/order}/components/fulfillment-detail/fulfillment-detail.component.d.ts +0 -0
- package/{order → package/order}/components/fulfillment-state-label/fulfillment-state-label.component.d.ts +0 -0
- package/{order → package/order}/components/line-fulfillment/line-fulfillment.component.d.ts +0 -0
- package/{order → package/order}/components/line-refunds/line-refunds.component.d.ts +0 -0
- package/{order → package/order}/components/modification-detail/modification-detail.component.d.ts +0 -0
- package/{order → package/order}/components/order-custom-fields-card/order-custom-fields-card.component.d.ts +0 -0
- package/{order → package/order}/components/order-detail/order-detail.component.d.ts +0 -0
- package/package/order/components/order-editor/order-editor.component.d.ts +71 -0
- package/{order → package/order}/components/order-edits-preview-dialog/order-edits-preview-dialog.component.d.ts +0 -0
- package/{order → package/order}/components/order-history/order-history.component.d.ts +0 -0
- package/package/order/components/order-list/order-list.component.d.ts +35 -0
- package/{order → package/order}/components/order-payment-card/order-payment-card.component.d.ts +0 -0
- package/{order → package/order}/components/order-process-graph/constants.d.ts +0 -0
- package/{order → package/order}/components/order-process-graph/order-process-edge.component.d.ts +0 -0
- package/{order → package/order}/components/order-process-graph/order-process-graph.component.d.ts +0 -0
- package/{order → package/order}/components/order-process-graph/order-process-node.component.d.ts +0 -0
- package/{order → package/order}/components/order-process-graph/types.d.ts +0 -0
- package/{order → package/order}/components/order-process-graph-dialog/order-process-graph-dialog.component.d.ts +0 -0
- package/{order → package/order}/components/order-state-select-dialog/order-state-select-dialog.component.d.ts +0 -0
- package/package/order/components/order-table/order-table.component.d.ts +37 -0
- package/{order → package/order}/components/payment-detail/payment-detail.component.d.ts +0 -0
- package/{order → package/order}/components/payment-state-label/payment-state-label.component.d.ts +0 -0
- package/{order → package/order}/components/refund-order-dialog/refund-order-dialog.component.d.ts +0 -0
- package/{order → package/order}/components/refund-state-label/refund-state-label.component.d.ts +0 -0
- package/package/order/components/select-address-dialog/select-address-dialog.component.d.ts +24 -0
- package/package/order/components/select-address-dialog/select-address-dialog.graphql.d.ts +1 -0
- package/package/order/components/select-customer-dialog/select-customer-dialog.component.d.ts +22 -0
- package/package/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.d.ts +16 -0
- package/{order → package/order}/components/settle-refund-dialog/settle-refund-dialog.component.d.ts +0 -0
- package/{order → package/order}/components/simple-item-list/simple-item-list.component.d.ts +0 -0
- package/{order → package/order}/order.module.d.ts +0 -0
- package/{order → package/order}/order.routes.d.ts +0 -0
- package/{order → package/order}/package.json +0 -0
- package/{order → package/order}/providers/order-transition.service.d.ts +0 -0
- package/package/order/providers/routing/order-resolver.d.ts +13 -0
- package/package/order/providers/routing/order.guard.d.ts +9 -0
- package/package/order/public_api.d.ts +42 -0
- package/{order → package/order}/vendure-admin-ui-order.d.ts +0 -0
- package/package/order/vendure-admin-ui-order.metadata.json +1 -0
- package/package/package.json +59 -0
- package/{public_api.d.ts → package/public_api.d.ts} +0 -0
- package/{settings → package/settings}/components/add-country-to-zone-dialog/add-country-to-zone-dialog.component.d.ts +0 -0
- package/{settings → package/settings}/components/admin-detail/admin-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/administrator-list/administrator-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/channel-detail/channel-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/channel-list/channel-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/country-detail/country-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/country-list/country-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/global-settings/global-settings.component.d.ts +0 -0
- package/{settings → package/settings}/components/payment-method-detail/payment-method-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/payment-method-list/payment-method-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/permission-grid/permission-grid.component.d.ts +0 -0
- package/{settings → package/settings}/components/profile/profile.component.d.ts +0 -0
- package/{settings → package/settings}/components/role-detail/role-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/role-list/role-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/shipping-eligibility-test-result/shipping-eligibility-test-result.component.d.ts +0 -0
- package/{settings → package/settings}/components/shipping-method-detail/shipping-method-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/shipping-method-list/shipping-method-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/shipping-method-test-result/shipping-method-test-result.component.d.ts +0 -0
- package/{settings → package/settings}/components/tax-category-detail/tax-category-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/tax-category-list/tax-category-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/tax-rate-detail/tax-rate-detail.component.d.ts +0 -0
- package/{settings → package/settings}/components/tax-rate-list/tax-rate-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/test-address-form/test-address-form.component.d.ts +0 -0
- package/{settings → package/settings}/components/test-order-builder/test-order-builder.component.d.ts +0 -0
- package/{settings → package/settings}/components/zone-detail-dialog/zone-detail-dialog.component.d.ts +0 -0
- package/{settings → package/settings}/components/zone-list/zone-list.component.d.ts +0 -0
- package/{settings → package/settings}/components/zone-member-list/zone-member-controls.directive.d.ts +0 -0
- package/{settings → package/settings}/components/zone-member-list/zone-member-list-header.directive.d.ts +0 -0
- package/package/settings/components/zone-member-list/zone-member-list.component.d.ts +23 -0
- package/{settings → package/settings}/package.json +0 -0
- package/{settings → package/settings}/providers/routing/administrator-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/channel-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/country-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/global-settings-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/payment-method-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/profile-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/role-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/shipping-method-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/tax-category-resolver.d.ts +0 -0
- package/{settings → package/settings}/providers/routing/tax-rate-resolver.d.ts +0 -0
- package/{settings → package/settings}/public_api.d.ts +0 -0
- package/{settings → package/settings}/settings.module.d.ts +0 -0
- package/{settings → package/settings}/settings.routes.d.ts +0 -0
- package/{settings → package/settings}/vendure-admin-ui-settings.d.ts +0 -0
- package/package/settings/vendure-admin-ui-settings.metadata.json +1 -0
- package/{static → package/static}/assets/.gitkeep +0 -0
- package/{static → package/static}/assets/logo-300px.png +0 -0
- package/{static → package/static}/assets/logo-75px.png +0 -0
- package/{static → package/static}/favicon.ico +0 -0
- package/package/static/i18n-messages/cs.json +721 -0
- package/package/static/i18n-messages/de.json +721 -0
- package/package/static/i18n-messages/en.json +721 -0
- package/package/static/i18n-messages/es.json +721 -0
- package/package/static/i18n-messages/fr.json +721 -0
- package/package/static/i18n-messages/it.json +721 -0
- package/package/static/i18n-messages/pl.json +721 -0
- package/package/static/i18n-messages/pt_BR.json +721 -0
- package/package/static/i18n-messages/pt_PT.json +721 -0
- package/package/static/i18n-messages/ru.json +721 -0
- package/package/static/i18n-messages/uk.json +721 -0
- package/package/static/i18n-messages/zh_Hans.json +721 -0
- package/package/static/i18n-messages/zh_Hant.json +721 -0
- package/{static → package/static}/index.html +0 -0
- package/{static → package/static}/polyfills.ts +0 -0
- package/{static → package/static}/styles/_mixins.scss +0 -0
- package/{static → package/static}/styles/_variables.scss +0 -0
- package/package/static/styles/global/_forms.scss +148 -0
- package/package/static/styles/global/_overrides.scss +72 -0
- package/{static → package/static}/styles/global/_sass-overrides.scss +0 -0
- package/package/static/styles/global/_utilities.scss +131 -0
- package/{static → package/static}/styles/styles.scss +0 -0
- package/{static → package/static}/styles/theme/dark.scss +0 -0
- package/{static → package/static}/styles/theme/default.scss +0 -0
- package/{static → package/static}/styles/ui-extension-theme.scss +0 -0
- package/package/static/theme.min.css +8 -0
- package/{static → package/static}/vendure-ui-config.json +0 -0
- package/{system → package/system}/components/health-check/health-check.component.d.ts +0 -0
- package/{system → package/system}/components/job-list/job-list.component.d.ts +0 -0
- package/{system → package/system}/components/job-state-label/job-state-label.component.d.ts +0 -0
- package/{system → package/system}/package.json +0 -0
- package/{system → package/system}/public_api.d.ts +0 -0
- package/{system → package/system}/system.module.d.ts +0 -0
- package/{system → package/system}/system.routes.d.ts +0 -0
- package/{system → package/system}/vendure-admin-ui-system.d.ts +0 -0
- package/package/system/vendure-admin-ui-system.metadata.json +1 -0
- package/{vendure-admin-ui.d.ts → package/vendure-admin-ui.d.ts} +0 -0
- package/{vendure-admin-ui.metadata.json → package/vendure-admin-ui.metadata.json} +0 -0
- package/package.json +59 -21
- package/tsconfig.json +61 -0
- package/tsconfig.lib.json +26 -0
- package/tsconfig.lib.prod.json +14 -0
- package/tslint.json +33 -0
- package/LICENSE +0 -9
- package/bundles/vendure-admin-ui-catalog.umd.js +0 -4861
- package/bundles/vendure-admin-ui-catalog.umd.js.map +0 -1
- package/bundles/vendure-admin-ui-core.umd.js +0 -15291
- package/bundles/vendure-admin-ui-core.umd.js.map +0 -1
- package/bundles/vendure-admin-ui-customer.umd.js +0 -1679
- package/bundles/vendure-admin-ui-customer.umd.js.map +0 -1
- package/bundles/vendure-admin-ui-dashboard.umd.js +0 -757
- package/bundles/vendure-admin-ui-dashboard.umd.js.map +0 -1
- package/bundles/vendure-admin-ui-order.umd.js +0 -3422
- package/bundles/vendure-admin-ui-order.umd.js.map +0 -1
- package/bundles/vendure-admin-ui-settings.umd.js +0 -3699
- package/bundles/vendure-admin-ui-settings.umd.js.map +0 -1
- package/bundles/vendure-admin-ui-system.umd.js +0 -524
- package/catalog/catalog.module.d.ts +0 -2
- package/catalog/components/collection-list/collection-list.component.d.ts +0 -33
- package/catalog/components/collection-tree/collection-tree-node.component.d.ts +0 -36
- package/catalog/components/collection-tree/collection-tree.component.d.ts +0 -35
- package/catalog/components/facet-list/facet-list.component.d.ts +0 -24
- package/catalog/components/product-list/product-list.component.d.ts +0 -29
- package/catalog/public_api.d.ts +0 -33
- package/catalog/vendure-admin-ui-catalog.metadata.json +0 -1
- package/core/common/component-registry-types.d.ts +0 -56
- package/core/common/generated-types.d.ts +0 -9142
- package/core/common/utilities/selection-manager.d.ts +0 -23
- package/core/common/version.d.ts +0 -1
- package/core/data/definitions/collection-definitions.d.ts +0 -10
- package/core/data/definitions/facet-definitions.d.ts +0 -10
- package/core/data/definitions/order-definitions.d.ts +0 -27
- package/core/data/definitions/product-definitions.d.ts +0 -45
- package/core/data/providers/collection-data.service.d.ts +0 -25
- package/core/data/providers/facet-data.service.d.ts +0 -21
- package/core/data/providers/order-data.service.d.ts +0 -35
- package/core/data/providers/product-data.service.d.ts +0 -81
- package/core/providers/modal/modal.service.d.ts +0 -132
- package/core/providers/nav-builder/nav-builder-types.d.ts +0 -91
- package/core/public_api.d.ts +0 -222
- package/core/shared/components/asset-gallery/asset-gallery.component.d.ts +0 -67
- package/core/shared/components/data-table/data-table.component.d.ts +0 -82
- package/core/shared/components/dropdown/dropdown-menu.component.d.ts +0 -30
- package/core/shared/components/rich-text-editor/prosemirror/inputrules.d.ts +0 -8
- package/core/shared/components/rich-text-editor/prosemirror/menu/images.d.ts +0 -4
- package/core/shared/components/rich-text-editor/prosemirror/menu/links.d.ts +0 -4
- package/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.d.ts +0 -4
- package/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.d.ts +0 -5
- package/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.d.ts +0 -21
- package/core/shared/components/rich-text-editor/prosemirror/types.d.ts +0 -11
- package/core/shared/components/rich-text-editor/rich-text-editor.component.d.ts +0 -35
- package/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.d.ts +0 -32
- package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +0 -89
- package/core/vendure-admin-ui-core.metadata.json +0 -1
- package/customer/components/customer-group-member-list/customer-group-member-list.component.d.ts +0 -37
- package/customer/vendure-admin-ui-customer.metadata.json +0 -1
- package/esm2015/catalog/catalog.module.js +0 -62
- package/esm2015/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.js +0 -109
- package/esm2015/catalog/components/collection-detail/collection-detail.component.js +0 -244
- package/esm2015/catalog/components/collection-list/collection-list.component.js +0 -145
- package/esm2015/catalog/components/collection-tree/collection-tree-node.component.js +0 -117
- package/esm2015/catalog/components/collection-tree/collection-tree.component.js +0 -76
- package/esm2015/catalog/components/facet-list/facet-list.component.js +0 -107
- package/esm2015/catalog/components/product-detail/product-detail.component.js +0 -515
- package/esm2015/catalog/components/product-list/product-list.component.js +0 -153
- package/esm2015/catalog/components/product-variants-list/product-variants-list.component.js +0 -214
- package/esm2015/catalog/providers/routing/collection-resolver.js +0 -38
- package/esm2015/catalog/public_api.js +0 -35
- package/esm2015/core/common/component-registry-types.js +0 -2
- package/esm2015/core/common/generated-types.js +0 -983
- package/esm2015/core/common/introspection-result.js +0 -195
- package/esm2015/core/common/utilities/selection-manager.js +0 -64
- package/esm2015/core/common/version.js +0 -3
- package/esm2015/core/components/breadcrumb/breadcrumb.component.js +0 -126
- package/esm2015/core/data/definitions/collection-definitions.js +0 -144
- package/esm2015/core/data/definitions/facet-definitions.js +0 -110
- package/esm2015/core/data/definitions/order-definitions.js +0 -472
- package/esm2015/core/data/definitions/product-definitions.js +0 -745
- package/esm2015/core/data/providers/collection-data.service.js +0 -75
- package/esm2015/core/data/providers/customer-data.service.js +0 -117
- package/esm2015/core/data/providers/facet-data.service.js +0 -60
- package/esm2015/core/data/providers/order-data.service.js +0 -103
- package/esm2015/core/data/providers/product-data.service.js +0 -235
- package/esm2015/core/data/utils/remove-readonly-custom-fields.js +0 -91
- package/esm2015/core/providers/dashboard-widget/dashboard-widget.service.js +0 -97
- package/esm2015/core/providers/modal/modal.service.js +0 -100
- package/esm2015/core/providers/nav-builder/nav-builder-types.js +0 -2
- package/esm2015/core/public_api.js +0 -224
- package/esm2015/core/shared/components/action-bar/action-bar.component.js +0 -47
- package/esm2015/core/shared/components/asset-gallery/asset-gallery.component.js +0 -84
- package/esm2015/core/shared/components/data-table/data-table.component.js +0 -113
- package/esm2015/core/shared/components/dropdown/dropdown-menu.component.js +0 -121
- package/esm2015/core/shared/components/facet-value-selector/facet-value-selector.component.js +0 -117
- package/esm2015/core/shared/components/language-selector/language-selector.component.js +0 -21
- package/esm2015/core/shared/components/order-state-label/order-state-label.component.js +0 -43
- package/esm2015/core/shared/components/product-search-input/product-search-input.component.js +0 -104
- package/esm2015/core/shared/components/product-selector/product-selector.component.js +0 -61
- package/esm2015/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.js +0 -32
- package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/images.js +0 -36
- package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/links.js +0 -69
- package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.js +0 -20
- package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu.js +0 -192
- package/esm2015/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.js +0 -112
- package/esm2015/core/shared/components/rich-text-editor/prosemirror/types.js +0 -2
- package/esm2015/core/shared/components/rich-text-editor/rich-text-editor.component.js +0 -86
- package/esm2015/core/shared/components/simple-dialog/simple-dialog.component.js +0 -21
- package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.js +0 -125
- package/esm2015/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.js +0 -266
- package/esm2015/core/shared/dynamic-form-inputs/register-dynamic-input-components.js +0 -134
- package/esm2015/core/shared/pipes/state-i18n-token.pipe.js +0 -46
- package/esm2015/core/shared/shared.module.js +0 -275
- package/esm2015/customer/components/customer-group-list/customer-group-list.component.js +0 -198
- package/esm2015/customer/components/customer-group-member-list/customer-group-member-list.component.js +0 -101
- package/esm2015/customer/components/customer-list/customer-list.component.js +0 -81
- package/esm2015/dashboard/dashboard.module.js +0 -25
- package/esm2015/order/components/order-detail/order-detail.component.js +0 -550
- package/esm2015/order/components/order-editor/order-editor.component.js +0 -381
- package/esm2015/order/components/order-list/order-list.component.js +0 -195
- package/esm2015/order/components/order-table/order-table.component.js +0 -76
- package/esm2015/order/order.module.js +0 -70
- package/esm2015/order/order.routes.js +0 -54
- package/esm2015/order/providers/routing/order-resolver.js +0 -33
- package/esm2015/order/public_api.js +0 -36
- package/esm2015/settings/components/country-list/country-list.component.js +0 -82
- package/esm2015/settings/components/profile/profile.component.js +0 -82
- package/esm2015/settings/components/zone-list/zone-list.component.js +0 -160
- package/esm2015/settings/components/zone-member-list/zone-member-list.component.js +0 -63
- package/esm2015/system/components/health-check/health-check.component.js +0 -19
- package/fesm2015/vendure-admin-ui-catalog.js +0 -3994
- package/fesm2015/vendure-admin-ui-catalog.js.map +0 -1
- package/fesm2015/vendure-admin-ui-core.js +0 -16292
- package/fesm2015/vendure-admin-ui-core.js.map +0 -1
- package/fesm2015/vendure-admin-ui-customer.js +0 -1184
- package/fesm2015/vendure-admin-ui-customer.js.map +0 -1
- package/fesm2015/vendure-admin-ui-dashboard.js +0 -371
- package/fesm2015/vendure-admin-ui-dashboard.js.map +0 -1
- package/fesm2015/vendure-admin-ui-order.js +0 -2607
- package/fesm2015/vendure-admin-ui-order.js.map +0 -1
- package/fesm2015/vendure-admin-ui-settings.js +0 -2977
- package/fesm2015/vendure-admin-ui-settings.js.map +0 -1
- package/fesm2015/vendure-admin-ui-system.js +0 -171
- package/order/components/order-editor/order-editor.component.d.ts +0 -76
- package/order/components/order-list/order-list.component.d.ts +0 -34
- package/order/components/order-table/order-table.component.d.ts +0 -28
- package/order/providers/routing/order-resolver.d.ts +0 -10
- package/order/public_api.d.ts +0 -34
- package/order/vendure-admin-ui-order.metadata.json +0 -1
- package/settings/components/zone-member-list/zone-member-list.component.d.ts +0 -21
- package/settings/vendure-admin-ui-settings.metadata.json +0 -1
- package/static/i18n-messages/cs.json +0 -688
- package/static/i18n-messages/de.json +0 -688
- package/static/i18n-messages/en.json +0 -689
- package/static/i18n-messages/es.json +0 -688
- package/static/i18n-messages/fr.json +0 -688
- package/static/i18n-messages/it.json +0 -688
- package/static/i18n-messages/pl.json +0 -688
- package/static/i18n-messages/pt_BR.json +0 -688
- package/static/i18n-messages/pt_PT.json +0 -688
- package/static/i18n-messages/ru.json +0 -688
- package/static/i18n-messages/uk.json +0 -688
- package/static/i18n-messages/zh_Hans.json +0 -688
- package/static/i18n-messages/zh_Hant.json +0 -688
- package/static/styles/global/_forms.scss +0 -146
- package/static/styles/global/_overrides.scss +0 -72
- package/static/styles/global/_utilities.scss +0 -127
- package/static/theme.min.css +0 -8
- package/system/vendure-admin-ui-system.metadata.json +0 -1
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { ChangeDetectorRef, Directive, ViewChild } from '@angular/core';
|
|
2
|
+
import { CodeJar } from 'codejar';
|
|
3
|
+
export class BaseCodeEditorFormInputComponent {
|
|
4
|
+
constructor(changeDetector) {
|
|
5
|
+
this.changeDetector = changeDetector;
|
|
6
|
+
this.isValid = true;
|
|
7
|
+
}
|
|
8
|
+
get height() {
|
|
9
|
+
var _a;
|
|
10
|
+
return ((_a = this.config.ui) === null || _a === void 0 ? void 0 : _a.height) || this.config.height;
|
|
11
|
+
}
|
|
12
|
+
configure(config) {
|
|
13
|
+
this.formControl.addValidators(config.validator);
|
|
14
|
+
this.highlight = config.highlight;
|
|
15
|
+
this.getErrorMessage = config.getErrorMessage;
|
|
16
|
+
}
|
|
17
|
+
ngAfterViewInit() {
|
|
18
|
+
let lastVal = '';
|
|
19
|
+
const highlight = (editor) => {
|
|
20
|
+
var _a;
|
|
21
|
+
const code = (_a = editor.textContent) !== null && _a !== void 0 ? _a : '';
|
|
22
|
+
if (code === lastVal) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
lastVal = code;
|
|
26
|
+
this.errorMessage = this.getErrorMessage(code);
|
|
27
|
+
this.changeDetector.markForCheck();
|
|
28
|
+
editor.innerHTML = this.highlight(code, this.getErrorPos(this.errorMessage));
|
|
29
|
+
};
|
|
30
|
+
this.jar = CodeJar(this.editorElementRef.nativeElement, highlight);
|
|
31
|
+
this.jar.onUpdate(value => {
|
|
32
|
+
this.formControl.setValue(value);
|
|
33
|
+
this.formControl.markAsDirty();
|
|
34
|
+
this.isValid = this.formControl.valid;
|
|
35
|
+
});
|
|
36
|
+
this.jar.updateCode(this.formControl.value);
|
|
37
|
+
if (this.readonly) {
|
|
38
|
+
this.editorElementRef.nativeElement.contentEditable = 'false';
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
getErrorPos(errorMessage) {
|
|
42
|
+
if (!errorMessage) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
const matches = errorMessage.match(/at position (\d+)/);
|
|
46
|
+
const pos = matches === null || matches === void 0 ? void 0 : matches[1];
|
|
47
|
+
return pos != null ? +pos : undefined;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
BaseCodeEditorFormInputComponent.decorators = [
|
|
51
|
+
{ type: Directive }
|
|
52
|
+
];
|
|
53
|
+
BaseCodeEditorFormInputComponent.ctorParameters = () => [
|
|
54
|
+
{ type: ChangeDetectorRef }
|
|
55
|
+
];
|
|
56
|
+
BaseCodeEditorFormInputComponent.propDecorators = {
|
|
57
|
+
editorElementRef: [{ type: ViewChild, args: ['editor',] }]
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb2RlLWVkaXRvci1mb3JtLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvc2hhcmVkL2R5bmFtaWMtZm9ybS1pbnB1dHMvY29kZS1lZGl0b3ItZm9ybS1pbnB1dC9iYXNlLWNvZGUtZWRpdG9yLWZvcm0taW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFjLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBV2xDLE1BQU0sT0FBZ0IsZ0NBQWdDO0lBV2xELFlBQWdDLGNBQWlDO1FBQWpDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQVBqRSxZQUFPLEdBQUcsSUFBSSxDQUFDO0lBT3FELENBQUM7SUFFckUsSUFBSSxNQUFNOztRQUNOLE9BQU8sQ0FBQSxNQUFBLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSwwQ0FBRSxNQUFNLEtBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDeEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUF3QjtRQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQztJQUNsRCxDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNqQixNQUFNLFNBQVMsR0FBRyxDQUFDLE1BQW1CLEVBQUUsRUFBRTs7WUFDdEMsTUFBTSxJQUFJLEdBQUcsTUFBQSxNQUFNLENBQUMsV0FBVyxtQ0FBSSxFQUFFLENBQUM7WUFDdEMsSUFBSSxJQUFJLEtBQUssT0FBTyxFQUFFO2dCQUNsQixPQUFPO2FBQ1Y7WUFDRCxPQUFPLEdBQUcsSUFBSSxDQUFDO1lBQ2YsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDbkMsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2pGLENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU1QyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDZixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUM7U0FDakU7SUFDTCxDQUFDO0lBRVMsV0FBVyxDQUFDLFlBQWdDO1FBQ2xELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDZixPQUFPO1NBQ1Y7UUFDRCxNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDeEQsTUFBTSxHQUFHLEdBQUcsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUMxQyxDQUFDOzs7WUF4REosU0FBUzs7O1lBYmMsaUJBQWlCOzs7K0JBb0JwQyxTQUFTLFNBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IERlZmF1bHRGb3JtQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtdHlwZXMnO1xyXG5pbXBvcnQgeyBDb2RlSmFyIH0gZnJvbSAnY29kZWphcic7XHJcblxyXG5pbXBvcnQgeyBGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vY29tcG9uZW50LXJlZ2lzdHJ5LXR5cGVzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29kZUVkaXRvckNvbmZpZyB7XHJcbiAgICB2YWxpZGF0b3I6IFZhbGlkYXRvckZuO1xyXG4gICAgZ2V0RXJyb3JNZXNzYWdlOiAoY29udGVudDogc3RyaW5nKSA9PiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgICBoaWdobGlnaHQ6IChjb250ZW50OiBzdHJpbmcsIGVycm9yUG9zOiBudW1iZXIgfCB1bmRlZmluZWQpID0+IHN0cmluZztcclxufVxyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ29kZUVkaXRvckZvcm1JbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIEZvcm1JbnB1dENvbXBvbmVudCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICByZWFkb25seTogYm9vbGVhbjtcclxuICAgIGZvcm1Db250cm9sOiBGb3JtQ29udHJvbDtcclxuICAgIGNvbmZpZzogRGVmYXVsdEZvcm1Db21wb25lbnRDb25maWc8J2pzb24tZWRpdG9yLWZvcm0taW5wdXQnPjtcclxuICAgIGlzVmFsaWQgPSB0cnVlO1xyXG4gICAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgICBAVmlld0NoaWxkKCdlZGl0b3InKSBwcml2YXRlIGVkaXRvckVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xyXG4gICAgamFyOiBDb2RlSmFyO1xyXG4gICAgcHJpdmF0ZSBoaWdobGlnaHQ6IENvZGVFZGl0b3JDb25maWdbJ2hpZ2hsaWdodCddO1xyXG4gICAgcHJpdmF0ZSBnZXRFcnJvck1lc3NhZ2U6IENvZGVFZGl0b3JDb25maWdbJ2dldEVycm9yTWVzc2FnZSddO1xyXG5cclxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG5cclxuICAgIGdldCBoZWlnaHQoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLnVpPy5oZWlnaHQgfHwgdGhpcy5jb25maWcuaGVpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIGNvbmZpZ3VyZShjb25maWc6IENvZGVFZGl0b3JDb25maWcpIHtcclxuICAgICAgICB0aGlzLmZvcm1Db250cm9sLmFkZFZhbGlkYXRvcnMoY29uZmlnLnZhbGlkYXRvcik7XHJcbiAgICAgICAgdGhpcy5oaWdobGlnaHQgPSBjb25maWcuaGlnaGxpZ2h0O1xyXG4gICAgICAgIHRoaXMuZ2V0RXJyb3JNZXNzYWdlID0gY29uZmlnLmdldEVycm9yTWVzc2FnZTtcclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgbGV0IGxhc3RWYWwgPSAnJztcclxuICAgICAgICBjb25zdCBoaWdobGlnaHQgPSAoZWRpdG9yOiBIVE1MRWxlbWVudCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBjb2RlID0gZWRpdG9yLnRleHRDb250ZW50ID8/ICcnO1xyXG4gICAgICAgICAgICBpZiAoY29kZSA9PT0gbGFzdFZhbCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxhc3RWYWwgPSBjb2RlO1xyXG4gICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZ2V0RXJyb3JNZXNzYWdlKGNvZGUpO1xyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICBlZGl0b3IuaW5uZXJIVE1MID0gdGhpcy5oaWdobGlnaHQoY29kZSwgdGhpcy5nZXRFcnJvclBvcyh0aGlzLmVycm9yTWVzc2FnZSkpO1xyXG4gICAgICAgIH07XHJcbiAgICAgICAgdGhpcy5qYXIgPSBDb2RlSmFyKHRoaXMuZWRpdG9yRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBoaWdobGlnaHQpO1xyXG4gICAgICAgIHRoaXMuamFyLm9uVXBkYXRlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzRGlydHkoKTtcclxuICAgICAgICAgICAgdGhpcy5pc1ZhbGlkID0gdGhpcy5mb3JtQ29udHJvbC52YWxpZDtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmphci51cGRhdGVDb2RlKHRoaXMuZm9ybUNvbnRyb2wudmFsdWUpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5yZWFkb25seSkge1xyXG4gICAgICAgICAgICB0aGlzLmVkaXRvckVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250ZW50RWRpdGFibGUgPSAnZmFsc2UnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0RXJyb3JQb3MoZXJyb3JNZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBudW1iZXIgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIGlmICghZXJyb3JNZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IGVycm9yTWVzc2FnZS5tYXRjaCgvYXQgcG9zaXRpb24gKFxcZCspLyk7XHJcbiAgICAgICAgY29uc3QgcG9zID0gbWF0Y2hlcz8uWzFdO1xyXG4gICAgICAgIHJldHVybiBwb3MgIT0gbnVsbCA/ICtwb3MgOiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
|
|
2
|
+
import { BaseCodeEditorFormInputComponent } from './base-code-editor-form-input.component';
|
|
3
|
+
function htmlValidator() {
|
|
4
|
+
return (control) => {
|
|
5
|
+
return null;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
const HTML_TAG_RE = /<\/?[^>]+>?/g;
|
|
9
|
+
/**
|
|
10
|
+
* @description
|
|
11
|
+
* A JSON editor input with syntax highlighting and error detection. Works well
|
|
12
|
+
* with `text` type fields.
|
|
13
|
+
*
|
|
14
|
+
* @docsCategory custom-input-components
|
|
15
|
+
* @docsPage default-inputs
|
|
16
|
+
*/
|
|
17
|
+
export class HtmlEditorFormInputComponent extends BaseCodeEditorFormInputComponent {
|
|
18
|
+
constructor(changeDetector) {
|
|
19
|
+
super(changeDetector);
|
|
20
|
+
this.changeDetector = changeDetector;
|
|
21
|
+
}
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
this.configure({
|
|
24
|
+
validator: htmlValidator,
|
|
25
|
+
highlight: (html, errorPos) => {
|
|
26
|
+
let hasMarkedError = false;
|
|
27
|
+
return html.replace(HTML_TAG_RE, (match, ...args) => {
|
|
28
|
+
let errorClass = '';
|
|
29
|
+
if (errorPos && !hasMarkedError) {
|
|
30
|
+
const length = args[0].length;
|
|
31
|
+
const offset = args[4];
|
|
32
|
+
if (errorPos <= length + offset) {
|
|
33
|
+
errorClass = 'je-error';
|
|
34
|
+
hasMarkedError = true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return ('<span class="he-tag' +
|
|
38
|
+
' ' +
|
|
39
|
+
errorClass +
|
|
40
|
+
'">' +
|
|
41
|
+
this.encodeHtmlChars(match).replace(/([a-zA-Z0-9-]+=)(["'][^'"]*["'])/g, (_match, ..._args) => `${_args[0]}<span class="he-attr">${_args[1]}</span>`) +
|
|
42
|
+
'</span>');
|
|
43
|
+
});
|
|
44
|
+
},
|
|
45
|
+
getErrorMessage: (json) => {
|
|
46
|
+
return;
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
encodeHtmlChars(html) {
|
|
51
|
+
return html.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
HtmlEditorFormInputComponent.id = 'html-editor-form-input';
|
|
55
|
+
HtmlEditorFormInputComponent.decorators = [
|
|
56
|
+
{ type: Component, args: [{
|
|
57
|
+
selector: 'vdr-html-editor-form-input',
|
|
58
|
+
template: "<div #editor class=\"code-editor html-editor\" [class.invalid]=\"!isValid\" [style.height]=\"height || '300px'\"></div>\r\n<div class=\"error-message\">\r\n <span *ngIf=\"errorMessage\">{{ errorMessage }}</span>\r\n</div>\r\n",
|
|
59
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
60
|
+
styles: [".code-editor{min-height:6rem;background-color:var(--color-json-editor-background-color);color:var(--color-json-editor-text);border:1px solid var(--color-component-border-200);border-radius:3px;padding:6px;-moz-tab-size:4;tab-size:4;font-family:\"Source Code Pro\",\"Lucida Console\",Monaco,monospace;font-size:14px;font-weight:400;height:340px;letter-spacing:normal;line-height:20px;resize:both;text-align:initial;min-width:200px}.code-editor:focus{border-color:var(--color-primary-500)}.code-editor.invalid{border-color:var(--clr-forms-invalid-color)}.error-message{min-height:1rem;color:var(--color-json-editor-error)}.code-editor ::ng-deep .he-tag{color:var(--color-json-editor-key)}.code-editor ::ng-deep .he-attr{color:var(--color-json-editor-number)}.code-editor ::ng-deep .he-error{-webkit-text-decoration-line:underline;text-decoration-line:underline;-webkit-text-decoration-style:wavy;text-decoration-style:wavy;-webkit-text-decoration-color:var(--color-json-editor-error);text-decoration-color:var(--color-json-editor-error)}\n"]
|
|
61
|
+
},] }
|
|
62
|
+
];
|
|
63
|
+
HtmlEditorFormInputComponent.ctorParameters = () => [
|
|
64
|
+
{ type: ChangeDetectorRef }
|
|
65
|
+
];
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1lZGl0b3ItZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL3NoYXJlZC9keW5hbWljLWZvcm0taW5wdXRzL2NvZGUtZWRpdG9yLWZvcm0taW5wdXQvaHRtbC1lZGl0b3ItZm9ybS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFNN0csT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFM0YsU0FBUyxhQUFhO0lBQ2xCLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQ3pELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUM7QUFFbkM7Ozs7Ozs7R0FPRztBQU9ILE1BQU0sT0FBTyw0QkFDVCxTQUFRLGdDQUFnQztJQUt4QyxZQUFzQixjQUFpQztRQUNuRCxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7UUFESixtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7SUFFdkQsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ1gsU0FBUyxFQUFFLGFBQWE7WUFDeEIsU0FBUyxFQUFFLENBQUMsSUFBWSxFQUFFLFFBQTRCLEVBQUUsRUFBRTtnQkFDdEQsSUFBSSxjQUFjLEdBQUcsS0FBSyxDQUFDO2dCQUMzQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxFQUFFLEVBQUU7b0JBQ2hELElBQUksVUFBVSxHQUFHLEVBQUUsQ0FBQztvQkFDcEIsSUFBSSxRQUFRLElBQUksQ0FBQyxjQUFjLEVBQUU7d0JBQzdCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7d0JBQzlCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDdkIsSUFBSSxRQUFRLElBQUksTUFBTSxHQUFHLE1BQU0sRUFBRTs0QkFDN0IsVUFBVSxHQUFHLFVBQVUsQ0FBQzs0QkFDeEIsY0FBYyxHQUFHLElBQUksQ0FBQzt5QkFDekI7cUJBQ0o7b0JBQ0QsT0FBTyxDQUNILHFCQUFxQjt3QkFDckIsR0FBRzt3QkFDSCxVQUFVO3dCQUNWLElBQUk7d0JBQ0osSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQy9CLG1DQUFtQyxFQUNuQyxDQUFDLE1BQU0sRUFBRSxHQUFHLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixLQUFLLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FDOUU7d0JBQ0QsU0FBUyxDQUNaLENBQUM7Z0JBQ04sQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO1lBQ0QsZUFBZSxFQUFFLENBQUMsSUFBWSxFQUFzQixFQUFFO2dCQUNsRCxPQUFPO1lBQ1gsQ0FBQztTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxlQUFlLENBQUMsSUFBWTtRQUNoQyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuRixDQUFDOztBQTFDZSwrQkFBRSxHQUEyQix3QkFBd0IsQ0FBQzs7WUFWekUsU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLGdQQUFzRDtnQkFFdEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7WUE3QmdELGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRGVmYXVsdEZvcm1Db21wb25lbnRJZCB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvc2hhcmVkLXR5cGVzJztcclxuXHJcbmltcG9ydCB7IEZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb21wb25lbnQtcmVnaXN0cnktdHlwZXMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvZGVFZGl0b3JGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtY29kZS1lZGl0b3ItZm9ybS1pbnB1dC5jb21wb25lbnQnO1xyXG5cclxuZnVuY3Rpb24gaHRtbFZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XHJcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH07XHJcbn1cclxuXHJcbmNvbnN0IEhUTUxfVEFHX1JFID0gLzxcXC8/W14+XSs+Py9nO1xyXG5cclxuLyoqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKiBBIEpTT04gZWRpdG9yIGlucHV0IHdpdGggc3ludGF4IGhpZ2hsaWdodGluZyBhbmQgZXJyb3IgZGV0ZWN0aW9uLiBXb3JrcyB3ZWxsXHJcbiAqIHdpdGggYHRleHRgIHR5cGUgZmllbGRzLlxyXG4gKlxyXG4gKiBAZG9jc0NhdGVnb3J5IGN1c3RvbS1pbnB1dC1jb21wb25lbnRzXHJcbiAqIEBkb2NzUGFnZSBkZWZhdWx0LWlucHV0c1xyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1odG1sLWVkaXRvci1mb3JtLWlucHV0JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9odG1sLWVkaXRvci1mb3JtLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2h0bWwtZWRpdG9yLWZvcm0taW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSHRtbEVkaXRvckZvcm1JbnB1dENvbXBvbmVudFxyXG4gICAgZXh0ZW5kcyBCYXNlQ29kZUVkaXRvckZvcm1JbnB1dENvbXBvbmVudFxyXG4gICAgaW1wbGVtZW50cyBGb3JtSW5wdXRDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIE9uSW5pdFxyXG57XHJcbiAgICBzdGF0aWMgcmVhZG9ubHkgaWQ6IERlZmF1bHRGb3JtQ29tcG9uZW50SWQgPSAnaHRtbC1lZGl0b3ItZm9ybS1pbnB1dCc7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIHN1cGVyKGNoYW5nZURldGVjdG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLmNvbmZpZ3VyZSh7XHJcbiAgICAgICAgICAgIHZhbGlkYXRvcjogaHRtbFZhbGlkYXRvcixcclxuICAgICAgICAgICAgaGlnaGxpZ2h0OiAoaHRtbDogc3RyaW5nLCBlcnJvclBvczogbnVtYmVyIHwgdW5kZWZpbmVkKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBsZXQgaGFzTWFya2VkRXJyb3IgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBodG1sLnJlcGxhY2UoSFRNTF9UQUdfUkUsIChtYXRjaCwgLi4uYXJncykgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBlcnJvckNsYXNzID0gJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yUG9zICYmICFoYXNNYXJrZWRFcnJvcikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsZW5ndGggPSBhcmdzWzBdLmxlbmd0aDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gYXJnc1s0XTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yUG9zIDw9IGxlbmd0aCArIG9mZnNldCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JDbGFzcyA9ICdqZS1lcnJvcic7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNNYXJrZWRFcnJvciA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgJzxzcGFuIGNsYXNzPVwiaGUtdGFnJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICcgJyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yQ2xhc3MgK1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAnXCI+JyArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZW5jb2RlSHRtbENoYXJzKG1hdGNoKS5yZXBsYWNlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLyhbYS16QS1aMC05LV0rPSkoW1wiJ11bXidcIl0qW1wiJ10pL2csXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoX21hdGNoLCAuLi5fYXJncykgPT4gYCR7X2FyZ3NbMF19PHNwYW4gY2xhc3M9XCJoZS1hdHRyXCI+JHtfYXJnc1sxXX08L3NwYW4+YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgKSArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICc8L3NwYW4+J1xyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgZ2V0RXJyb3JNZXNzYWdlOiAoanNvbjogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGVuY29kZUh0bWxDaGFycyhodG1sOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBodG1sLnJlcGxhY2UoLyYvZywgJyZhbXA7JykucmVwbGFjZSgvPC9nLCAnJmx0OycpLnJlcGxhY2UoLz4vZywgJyZndDsnKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component } from '@angular/core';
|
|
2
|
+
import { BaseCodeEditorFormInputComponent } from './base-code-editor-form-input.component';
|
|
3
|
+
export function jsonValidator() {
|
|
4
|
+
return (control) => {
|
|
5
|
+
const error = { jsonInvalid: true };
|
|
6
|
+
try {
|
|
7
|
+
JSON.parse(control.value);
|
|
8
|
+
}
|
|
9
|
+
catch (e) {
|
|
10
|
+
control.setErrors(error);
|
|
11
|
+
return error;
|
|
12
|
+
}
|
|
13
|
+
control.setErrors(null);
|
|
14
|
+
return null;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @description
|
|
19
|
+
* A JSON editor input with syntax highlighting and error detection. Works well
|
|
20
|
+
* with `text` type fields.
|
|
21
|
+
*
|
|
22
|
+
* @docsCategory custom-input-components
|
|
23
|
+
* @docsPage default-inputs
|
|
24
|
+
*/
|
|
25
|
+
export class JsonEditorFormInputComponent extends BaseCodeEditorFormInputComponent {
|
|
26
|
+
constructor(changeDetector) {
|
|
27
|
+
super(changeDetector);
|
|
28
|
+
this.changeDetector = changeDetector;
|
|
29
|
+
}
|
|
30
|
+
ngOnInit() {
|
|
31
|
+
this.configure({
|
|
32
|
+
validator: jsonValidator,
|
|
33
|
+
highlight: (json, errorPos) => {
|
|
34
|
+
json = json.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
|
|
35
|
+
let hasMarkedError = false;
|
|
36
|
+
return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, (match, ...args) => {
|
|
37
|
+
let cls = 'number';
|
|
38
|
+
if (/^"/.test(match)) {
|
|
39
|
+
if (/:$/.test(match)) {
|
|
40
|
+
cls = 'key';
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
cls = 'string';
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
else if (/true|false/.test(match)) {
|
|
47
|
+
cls = 'boolean';
|
|
48
|
+
}
|
|
49
|
+
else if (/null/.test(match)) {
|
|
50
|
+
cls = 'null';
|
|
51
|
+
}
|
|
52
|
+
let errorClass = '';
|
|
53
|
+
if (errorPos && !hasMarkedError) {
|
|
54
|
+
const length = args[0].length;
|
|
55
|
+
const offset = args[4];
|
|
56
|
+
if (errorPos <= length + offset) {
|
|
57
|
+
errorClass = 'je-error';
|
|
58
|
+
hasMarkedError = true;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return '<span class="je-' + cls + ' ' + errorClass + '">' + match + '</span>';
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
getErrorMessage: (json) => {
|
|
65
|
+
try {
|
|
66
|
+
JSON.parse(json);
|
|
67
|
+
}
|
|
68
|
+
catch (e) {
|
|
69
|
+
return e.message;
|
|
70
|
+
}
|
|
71
|
+
return;
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
JsonEditorFormInputComponent.id = 'json-editor-form-input';
|
|
77
|
+
JsonEditorFormInputComponent.decorators = [
|
|
78
|
+
{ type: Component, args: [{
|
|
79
|
+
selector: 'vdr-json-editor-form-input',
|
|
80
|
+
template: "<div #editor class=\"code-editor json-editor\" [class.invalid]=\"!isValid\" [style.height]=\"height || '300px'\"></div>\r\n<div class=\"error-message\">\r\n <span *ngIf=\"errorMessage\">{{ errorMessage }}</span>\r\n</div>\r\n",
|
|
81
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
82
|
+
styles: [".code-editor{min-height:6rem;background-color:var(--color-json-editor-background-color);color:var(--color-json-editor-text);border:1px solid var(--color-component-border-200);border-radius:3px;padding:6px;-moz-tab-size:4;tab-size:4;font-family:\"Source Code Pro\",\"Lucida Console\",Monaco,monospace;font-size:14px;font-weight:400;height:340px;letter-spacing:normal;line-height:20px;resize:both;text-align:initial;min-width:200px}.code-editor:focus{border-color:var(--color-primary-500)}.code-editor.invalid{border-color:var(--clr-forms-invalid-color)}.error-message{min-height:1rem;color:var(--color-json-editor-error)}.code-editor ::ng-deep .je-string{color:var(--color-json-editor-string)}.code-editor ::ng-deep .je-number{color:var(--color-json-editor-number)}.code-editor ::ng-deep .je-boolean{color:var(--color-json-editor-boolean)}.code-editor ::ng-deep .je-null{color:var(--color-json-editor-null)}.code-editor ::ng-deep .je-key{color:var(--color-json-editor-key)}.code-editor ::ng-deep .je-error{-webkit-text-decoration-line:underline;text-decoration-line:underline;-webkit-text-decoration-style:wavy;text-decoration-style:wavy;-webkit-text-decoration-color:var(--color-json-editor-error);text-decoration-color:var(--color-json-editor-error)}\n"]
|
|
83
|
+
},] }
|
|
84
|
+
];
|
|
85
|
+
JsonEditorFormInputComponent.ctorParameters = () => [
|
|
86
|
+
{ type: ChangeDetectorRef }
|
|
87
|
+
];
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1lZGl0b3ItZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL3NoYXJlZC9keW5hbWljLWZvcm0taW5wdXRzL2NvZGUtZWRpdG9yLWZvcm0taW5wdXQvanNvbi1lZGl0b3ItZm9ybS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQix1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFNN0csT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFM0YsTUFBTSxVQUFVLGFBQWE7SUFDekIsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDekQsTUFBTSxLQUFLLEdBQXFCLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1FBRXRELElBQUk7WUFDQSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM3QjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFPSCxNQUFNLE9BQU8sNEJBQ1QsU0FBUSxnQ0FBZ0M7SUFLeEMsWUFBc0IsY0FBaUM7UUFDbkQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBREosbUJBQWMsR0FBZCxjQUFjLENBQW1CO0lBRXZELENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNYLFNBQVMsRUFBRSxhQUFhO1lBQ3hCLFNBQVMsRUFBRSxDQUFDLElBQVksRUFBRSxRQUE0QixFQUFFLEVBQUU7Z0JBQ3RELElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQy9FLElBQUksY0FBYyxHQUFHLEtBQUssQ0FBQztnQkFDM0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUNmLHdHQUF3RyxFQUN4RyxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksRUFBRSxFQUFFO29CQUNmLElBQUksR0FBRyxHQUFHLFFBQVEsQ0FBQztvQkFDbkIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO3dCQUNsQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7NEJBQ2xCLEdBQUcsR0FBRyxLQUFLLENBQUM7eUJBQ2Y7NkJBQU07NEJBQ0gsR0FBRyxHQUFHLFFBQVEsQ0FBQzt5QkFDbEI7cUJBQ0o7eUJBQU0sSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO3dCQUNqQyxHQUFHLEdBQUcsU0FBUyxDQUFDO3FCQUNuQjt5QkFBTSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7d0JBQzNCLEdBQUcsR0FBRyxNQUFNLENBQUM7cUJBQ2hCO29CQUNELElBQUksVUFBVSxHQUFHLEVBQUUsQ0FBQztvQkFDcEIsSUFBSSxRQUFRLElBQUksQ0FBQyxjQUFjLEVBQUU7d0JBQzdCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7d0JBQzlCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzt3QkFDdkIsSUFBSSxRQUFRLElBQUksTUFBTSxHQUFHLE1BQU0sRUFBRTs0QkFDN0IsVUFBVSxHQUFHLFVBQVUsQ0FBQzs0QkFDeEIsY0FBYyxHQUFHLElBQUksQ0FBQzt5QkFDekI7cUJBQ0o7b0JBQ0QsT0FBTyxrQkFBa0IsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLFVBQVUsR0FBRyxJQUFJLEdBQUcsS0FBSyxHQUFHLFNBQVMsQ0FBQztnQkFDbEYsQ0FBQyxDQUNKLENBQUM7WUFDTixDQUFDO1lBQ0QsZUFBZSxFQUFFLENBQUMsSUFBWSxFQUFzQixFQUFFO2dCQUNsRCxJQUFJO29CQUNBLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ3BCO2dCQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUNSLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQztpQkFDcEI7Z0JBQ0QsT0FBTztZQUNYLENBQUM7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDOztBQWpEZSwrQkFBRSxHQUEyQix3QkFBd0IsQ0FBQzs7WUFWekUsU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLGdQQUFzRDtnQkFFdEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7WUFyQ2dELGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRGVmYXVsdEZvcm1Db21wb25lbnRJZCB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvc2hhcmVkLXR5cGVzJztcclxuXHJcbmltcG9ydCB7IEZvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb21wb25lbnQtcmVnaXN0cnktdHlwZXMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvZGVFZGl0b3JGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtY29kZS1lZGl0b3ItZm9ybS1pbnB1dC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGpzb25WYWxpZGF0b3IoKTogVmFsaWRhdG9yRm4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICAgICAgY29uc3QgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMgPSB7IGpzb25JbnZhbGlkOiB0cnVlIH07XHJcblxyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIEpTT04ucGFyc2UoY29udHJvbC52YWx1ZSk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICBjb250cm9sLnNldEVycm9ycyhlcnJvcik7XHJcbiAgICAgICAgICAgIHJldHVybiBlcnJvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnRyb2wuc2V0RXJyb3JzKG51bGwpO1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKiBBIEpTT04gZWRpdG9yIGlucHV0IHdpdGggc3ludGF4IGhpZ2hsaWdodGluZyBhbmQgZXJyb3IgZGV0ZWN0aW9uLiBXb3JrcyB3ZWxsXHJcbiAqIHdpdGggYHRleHRgIHR5cGUgZmllbGRzLlxyXG4gKlxyXG4gKiBAZG9jc0NhdGVnb3J5IGN1c3RvbS1pbnB1dC1jb21wb25lbnRzXHJcbiAqIEBkb2NzUGFnZSBkZWZhdWx0LWlucHV0c1xyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1qc29uLWVkaXRvci1mb3JtLWlucHV0JyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9qc29uLWVkaXRvci1mb3JtLWlucHV0LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL2pzb24tZWRpdG9yLWZvcm0taW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSnNvbkVkaXRvckZvcm1JbnB1dENvbXBvbmVudFxyXG4gICAgZXh0ZW5kcyBCYXNlQ29kZUVkaXRvckZvcm1JbnB1dENvbXBvbmVudFxyXG4gICAgaW1wbGVtZW50cyBGb3JtSW5wdXRDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIE9uSW5pdFxyXG57XHJcbiAgICBzdGF0aWMgcmVhZG9ubHkgaWQ6IERlZmF1bHRGb3JtQ29tcG9uZW50SWQgPSAnanNvbi1lZGl0b3ItZm9ybS1pbnB1dCc7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIHN1cGVyKGNoYW5nZURldGVjdG9yKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLmNvbmZpZ3VyZSh7XHJcbiAgICAgICAgICAgIHZhbGlkYXRvcjoganNvblZhbGlkYXRvcixcclxuICAgICAgICAgICAgaGlnaGxpZ2h0OiAoanNvbjogc3RyaW5nLCBlcnJvclBvczogbnVtYmVyIHwgdW5kZWZpbmVkKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBqc29uID0ganNvbi5yZXBsYWNlKC8mL2csICcmYW1wOycpLnJlcGxhY2UoLzwvZywgJyZsdDsnKS5yZXBsYWNlKC8+L2csICcmZ3Q7Jyk7XHJcbiAgICAgICAgICAgICAgICBsZXQgaGFzTWFya2VkRXJyb3IgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBqc29uLnJlcGxhY2UoXHJcbiAgICAgICAgICAgICAgICAgICAgLyhcIihcXFxcdVthLXpBLVowLTldezR9fFxcXFxbXnVdfFteXFxcXFwiXSkqXCIoXFxzKjopP3xcXGIodHJ1ZXxmYWxzZXxudWxsKVxcYnwtP1xcZCsoPzpcXC5cXGQqKT8oPzpbZUVdWytcXC1dP1xcZCspPykvZyxcclxuICAgICAgICAgICAgICAgICAgICAobWF0Y2gsIC4uLmFyZ3MpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGNscyA9ICdudW1iZXInO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoL15cIi8udGVzdChtYXRjaCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgvOiQvLnRlc3QobWF0Y2gpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xzID0gJ2tleSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNscyA9ICdzdHJpbmcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC90cnVlfGZhbHNlLy50ZXN0KG1hdGNoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xzID0gJ2Jvb2xlYW4nO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKC9udWxsLy50ZXN0KG1hdGNoKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xzID0gJ251bGwnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBlcnJvckNsYXNzID0gJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvclBvcyAmJiAhaGFzTWFya2VkRXJyb3IpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxlbmd0aCA9IGFyZ3NbMF0ubGVuZ3RoO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gYXJnc1s0XTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvclBvcyA8PSBsZW5ndGggKyBvZmZzZXQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvckNsYXNzID0gJ2plLWVycm9yJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNNYXJrZWRFcnJvciA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICc8c3BhbiBjbGFzcz1cImplLScgKyBjbHMgKyAnICcgKyBlcnJvckNsYXNzICsgJ1wiPicgKyBtYXRjaCArICc8L3NwYW4+JztcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgZ2V0RXJyb3JNZXNzYWdlOiAoanNvbjogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgSlNPTi5wYXJzZShqc29uKTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZS5tZXNzYWdlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ComponentFactoryResolver, Injector, Input, ViewChild, ViewChildren, ViewContainerRef, } from '@angular/core';
|
|
3
|
+
import { FormArray, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
|
+
import { assertNever } from '@vendure/common/lib/shared-utils';
|
|
5
|
+
import { simpleDeepClone } from '@vendure/common/lib/simple-deep-clone';
|
|
6
|
+
import { Subject } from 'rxjs';
|
|
7
|
+
import { switchMap, take, takeUntil } from 'rxjs/operators';
|
|
8
|
+
import { getConfigArgValue } from '../../../common/utilities/configurable-operation-utils';
|
|
9
|
+
import { ComponentRegistryService } from '../../../providers/component-registry/component-registry.service';
|
|
10
|
+
/**
|
|
11
|
+
* A host component which delegates to an instance or list of FormInputComponent components.
|
|
12
|
+
*/
|
|
13
|
+
export class DynamicFormInputComponent {
|
|
14
|
+
constructor(componentRegistryService, componentFactoryResolver, changeDetectorRef, injector) {
|
|
15
|
+
this.componentRegistryService = componentRegistryService;
|
|
16
|
+
this.componentFactoryResolver = componentFactoryResolver;
|
|
17
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
18
|
+
this.injector = injector;
|
|
19
|
+
this.renderAsList = false;
|
|
20
|
+
this.listItems = [];
|
|
21
|
+
this.listId = 1;
|
|
22
|
+
this.listFormArray = new FormArray([]);
|
|
23
|
+
this.renderList$ = new Subject();
|
|
24
|
+
this.destroy$ = new Subject();
|
|
25
|
+
}
|
|
26
|
+
ngOnInit() {
|
|
27
|
+
const componentId = this.getInputComponentConfig(this.def).component;
|
|
28
|
+
const componentType = this.componentRegistryService.getInputComponent(componentId);
|
|
29
|
+
if (componentType) {
|
|
30
|
+
this.componentType = componentType;
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
// tslint:disable-next-line:no-console
|
|
34
|
+
console.error(`No form input component registered with the id "${componentId}". Using the default input instead.`);
|
|
35
|
+
const defaultComponentType = this.componentRegistryService.getInputComponent(this.getInputComponentConfig(Object.assign(Object.assign({}, this.def), { ui: undefined })).component);
|
|
36
|
+
if (defaultComponentType) {
|
|
37
|
+
this.componentType = defaultComponentType;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
ngAfterViewInit() {
|
|
42
|
+
var _a;
|
|
43
|
+
if (this.componentType) {
|
|
44
|
+
const factory = this.componentFactoryResolver.resolveComponentFactory(this.componentType);
|
|
45
|
+
// create a temp instance to check the value of `isListInput`
|
|
46
|
+
const cmpRef = factory.create(this.injector);
|
|
47
|
+
const isListInputComponent = (_a = cmpRef.instance.isListInput) !== null && _a !== void 0 ? _a : false;
|
|
48
|
+
cmpRef.destroy();
|
|
49
|
+
if (this.def.list === false && isListInputComponent) {
|
|
50
|
+
throw new Error(`The ${this.componentType.name} component is a list input, but the definition for ${this.def.name} does not expect a list`);
|
|
51
|
+
}
|
|
52
|
+
this.renderAsList = this.def.list && !isListInputComponent;
|
|
53
|
+
if (!this.renderAsList) {
|
|
54
|
+
this.singleComponentRef = this.renderInputComponent(factory, this.singleViewContainer, this.control);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
let formArraySub;
|
|
58
|
+
const renderListInputs = (viewContainerRefs) => {
|
|
59
|
+
if (viewContainerRefs.length) {
|
|
60
|
+
if (formArraySub) {
|
|
61
|
+
formArraySub.unsubscribe();
|
|
62
|
+
}
|
|
63
|
+
this.listFormArray = new FormArray([]);
|
|
64
|
+
this.listItems.forEach(i => { var _a; return (_a = i.componentRef) === null || _a === void 0 ? void 0 : _a.destroy(); });
|
|
65
|
+
viewContainerRefs.forEach((ref, i) => {
|
|
66
|
+
var _a;
|
|
67
|
+
const listItem = (_a = this.listItems) === null || _a === void 0 ? void 0 : _a[i];
|
|
68
|
+
if (listItem) {
|
|
69
|
+
this.listFormArray.push(listItem.control);
|
|
70
|
+
listItem.componentRef = this.renderInputComponent(factory, ref, listItem.control);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
formArraySub = this.listFormArray.valueChanges
|
|
74
|
+
.pipe(takeUntil(this.destroy$))
|
|
75
|
+
.subscribe(val => {
|
|
76
|
+
this.control.markAsTouched();
|
|
77
|
+
this.control.markAsDirty();
|
|
78
|
+
this.onChange(val);
|
|
79
|
+
this.control.patchValue(val, { emitEvent: false });
|
|
80
|
+
});
|
|
81
|
+
setTimeout(() => this.changeDetectorRef.markForCheck());
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
// initial render
|
|
85
|
+
this.listItemContainers.changes
|
|
86
|
+
.pipe(take(1))
|
|
87
|
+
.subscribe(val => renderListInputs(this.listItemContainers));
|
|
88
|
+
// render on changes to the list
|
|
89
|
+
this.renderList$
|
|
90
|
+
.pipe(switchMap(() => this.listItemContainers.changes.pipe(take(1))), takeUntil(this.destroy$))
|
|
91
|
+
.subscribe(() => {
|
|
92
|
+
renderListInputs(this.listItemContainers);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
setTimeout(() => this.changeDetectorRef.markForCheck());
|
|
97
|
+
}
|
|
98
|
+
ngOnChanges(changes) {
|
|
99
|
+
if (this.listItems) {
|
|
100
|
+
for (const item of this.listItems) {
|
|
101
|
+
if (item.componentRef) {
|
|
102
|
+
this.updateBindings(changes, item.componentRef);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
if (this.singleComponentRef) {
|
|
107
|
+
this.updateBindings(changes, this.singleComponentRef);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
ngOnDestroy() {
|
|
111
|
+
this.destroy$.next();
|
|
112
|
+
this.destroy$.complete();
|
|
113
|
+
}
|
|
114
|
+
updateBindings(changes, componentRef) {
|
|
115
|
+
if ('def' in changes) {
|
|
116
|
+
componentRef.instance.config = simpleDeepClone(this.def);
|
|
117
|
+
}
|
|
118
|
+
if ('readonly' in changes) {
|
|
119
|
+
componentRef.instance.readonly = this.readonly;
|
|
120
|
+
}
|
|
121
|
+
componentRef.injector.get(ChangeDetectorRef).markForCheck();
|
|
122
|
+
}
|
|
123
|
+
trackById(index, item) {
|
|
124
|
+
return item.id;
|
|
125
|
+
}
|
|
126
|
+
addListItem() {
|
|
127
|
+
var _a;
|
|
128
|
+
if (!this.listItems) {
|
|
129
|
+
this.listItems = [];
|
|
130
|
+
}
|
|
131
|
+
this.listItems.push({
|
|
132
|
+
id: this.listId++,
|
|
133
|
+
control: new FormControl((_a = this.def.defaultValue) !== null && _a !== void 0 ? _a : null),
|
|
134
|
+
});
|
|
135
|
+
this.renderList$.next();
|
|
136
|
+
}
|
|
137
|
+
moveListItem(event) {
|
|
138
|
+
if (this.listItems) {
|
|
139
|
+
moveItemInArray(this.listItems, event.previousIndex, event.currentIndex);
|
|
140
|
+
this.listFormArray.removeAt(event.previousIndex);
|
|
141
|
+
this.listFormArray.insert(event.currentIndex, event.item.data.control);
|
|
142
|
+
this.renderList$.next();
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
removeListItem(item) {
|
|
146
|
+
var _a;
|
|
147
|
+
if (this.listItems) {
|
|
148
|
+
const index = this.listItems.findIndex(i => i === item);
|
|
149
|
+
(_a = item.componentRef) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
150
|
+
this.listFormArray.removeAt(index);
|
|
151
|
+
this.listItems = this.listItems.filter(i => i !== item);
|
|
152
|
+
this.renderList$.next();
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
renderInputComponent(factory, viewContainerRef, formControl) {
|
|
156
|
+
const componentRef = viewContainerRef.createComponent(factory);
|
|
157
|
+
const { instance } = componentRef;
|
|
158
|
+
instance.config = simpleDeepClone(this.def);
|
|
159
|
+
instance.formControl = formControl;
|
|
160
|
+
instance.readonly = this.readonly;
|
|
161
|
+
componentRef.injector.get(ChangeDetectorRef).markForCheck();
|
|
162
|
+
return componentRef;
|
|
163
|
+
}
|
|
164
|
+
registerOnChange(fn) {
|
|
165
|
+
this.onChange = fn;
|
|
166
|
+
}
|
|
167
|
+
registerOnTouched(fn) {
|
|
168
|
+
this.onTouch = fn;
|
|
169
|
+
}
|
|
170
|
+
writeValue(obj) {
|
|
171
|
+
if (Array.isArray(obj)) {
|
|
172
|
+
if (obj.length === this.listItems.length) {
|
|
173
|
+
obj.forEach((value, index) => {
|
|
174
|
+
var _a;
|
|
175
|
+
const control = (_a = this.listItems[index]) === null || _a === void 0 ? void 0 : _a.control;
|
|
176
|
+
control.patchValue(getConfigArgValue(value), { emitEvent: false });
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
this.listItems = obj.map(value => ({
|
|
181
|
+
id: this.listId++,
|
|
182
|
+
control: new FormControl(getConfigArgValue(value)),
|
|
183
|
+
}));
|
|
184
|
+
this.renderList$.next();
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
this.listItems = [];
|
|
189
|
+
this.renderList$.next();
|
|
190
|
+
}
|
|
191
|
+
this.changeDetectorRef.markForCheck();
|
|
192
|
+
}
|
|
193
|
+
getInputComponentConfig(argDef) {
|
|
194
|
+
var _a;
|
|
195
|
+
if (this.hasUiConfig(argDef) && argDef.ui.component) {
|
|
196
|
+
return argDef.ui;
|
|
197
|
+
}
|
|
198
|
+
const type = argDef === null || argDef === void 0 ? void 0 : argDef.type;
|
|
199
|
+
switch (type) {
|
|
200
|
+
case 'string':
|
|
201
|
+
case 'localeString': {
|
|
202
|
+
const hasOptions = !!(this.isConfigArgDef(argDef) && ((_a = argDef.ui) === null || _a === void 0 ? void 0 : _a.options)) ||
|
|
203
|
+
!!argDef.options;
|
|
204
|
+
if (hasOptions) {
|
|
205
|
+
return { component: 'select-form-input' };
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
return { component: 'text-form-input' };
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
case 'text': {
|
|
212
|
+
return { component: 'textarea-form-input' };
|
|
213
|
+
}
|
|
214
|
+
case 'int':
|
|
215
|
+
case 'float':
|
|
216
|
+
return { component: 'number-form-input' };
|
|
217
|
+
case 'boolean':
|
|
218
|
+
return { component: 'boolean-form-input' };
|
|
219
|
+
case 'datetime':
|
|
220
|
+
return { component: 'date-form-input' };
|
|
221
|
+
case 'ID':
|
|
222
|
+
return { component: 'text-form-input' };
|
|
223
|
+
case 'relation':
|
|
224
|
+
return { component: 'relation-form-input' };
|
|
225
|
+
default:
|
|
226
|
+
assertNever(type);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
isConfigArgDef(def) {
|
|
230
|
+
var _a;
|
|
231
|
+
return ((_a = def) === null || _a === void 0 ? void 0 : _a.__typename) === 'ConfigArgDefinition';
|
|
232
|
+
}
|
|
233
|
+
hasUiConfig(def) {
|
|
234
|
+
var _a, _b;
|
|
235
|
+
return typeof def === 'object' && typeof ((_b = (_a = def) === null || _a === void 0 ? void 0 : _a.ui) === null || _b === void 0 ? void 0 : _b.component) === 'string';
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
DynamicFormInputComponent.decorators = [
|
|
239
|
+
{ type: Component, args: [{
|
|
240
|
+
selector: 'vdr-dynamic-form-input',
|
|
241
|
+
template: "<ng-container *ngIf=\"!renderAsList; else list\">\r\n <ng-container #single></ng-container>\r\n</ng-container>\r\n<ng-template #list>\r\n <div class=\"list-container\" cdkDropList (cdkDropListDropped)=\"moveListItem($event)\">\r\n <div\r\n class=\"list-item-row\"\r\n *ngFor=\"let item of listItems; trackBy: trackById\"\r\n cdkDrag\r\n [cdkDragData]=\"item\"\r\n >\r\n <ng-container #listItem></ng-container>\r\n <button\r\n class=\"btn btn-link btn-sm btn-warning\"\r\n *ngIf=\"!readonly\"\r\n (click)=\"removeListItem(item)\"\r\n [title]=\"'common.remove-item-from-list' | translate\"\r\n >\r\n <clr-icon shape=\"times\"></clr-icon>\r\n </button>\r\n <div class=\"flex-spacer\"></div>\r\n <div class=\"drag-handle\" cdkDragHandle [class.hidden]=\"readonly\">\r\n <clr-icon shape=\"drag-handle\" size=\"24\"></clr-icon>\r\n </div>\r\n </div>\r\n <button class=\"btn btn-secondary btn-sm\" (click)=\"addListItem()\" *ngIf=\"!readonly\">\r\n <clr-icon shape=\"plus\"></clr-icon> {{ 'common.add-item-to-list' | translate }}\r\n </button>\r\n </div>\r\n</ng-template>\r\n",
|
|
242
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
243
|
+
providers: [
|
|
244
|
+
{
|
|
245
|
+
provide: NG_VALUE_ACCESSOR,
|
|
246
|
+
useExisting: DynamicFormInputComponent,
|
|
247
|
+
multi: true,
|
|
248
|
+
},
|
|
249
|
+
],
|
|
250
|
+
styles: [":host{flex:1}.list-container{border:1px solid var(--color-component-border-200);border-radius:3px;padding:12px}.list-item-row{font-size:13px;display:flex;align-items:center;margin:3px 0}.drag-placeholder{transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-preview{font-size:13px;background-color:var(--color-component-bg-100);opacity:.8;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.drag-handle.hidden{display:none}.cdk-drag-placeholder{opacity:.1}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drop-list-dragging .list-item-row:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"]
|
|
251
|
+
},] }
|
|
252
|
+
];
|
|
253
|
+
DynamicFormInputComponent.ctorParameters = () => [
|
|
254
|
+
{ type: ComponentRegistryService },
|
|
255
|
+
{ type: ComponentFactoryResolver },
|
|
256
|
+
{ type: ChangeDetectorRef },
|
|
257
|
+
{ type: Injector }
|
|
258
|
+
];
|
|
259
|
+
DynamicFormInputComponent.propDecorators = {
|
|
260
|
+
def: [{ type: Input }],
|
|
261
|
+
readonly: [{ type: Input }],
|
|
262
|
+
control: [{ type: Input }],
|
|
263
|
+
singleViewContainer: [{ type: ViewChild, args: ['single', { read: ViewContainerRef },] }],
|
|
264
|
+
listItemContainers: [{ type: ViewChildren, args: ['listItem', { read: ViewContainerRef },] }]
|
|
265
|
+
};
|
|
266
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvc2hhcmVkL2R5bmFtaWMtZm9ybS1pbnB1dHMvZHluYW1pYy1mb3JtLWlucHV0L2R5bmFtaWMtZm9ybS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFFVCx3QkFBd0IsRUFFeEIsUUFBUSxFQUNSLEtBQUssRUFPTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFNBQVMsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzNGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBUTVHOztHQUVHO0FBY0gsTUFBTSxPQUFPLHlCQUF5QjtJQW1CbEMsWUFDWSx3QkFBa0QsRUFDbEQsd0JBQWtELEVBQ2xELGlCQUFvQyxFQUNwQyxRQUFrQjtRQUhsQiw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFD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VUFBVTtnQkFDWCxPQUFPLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFLENBQUM7WUFDaEQ7Z0JBQ0ksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztJQUVPLGNBQWMsQ0FBQyxHQUE0Qzs7UUFDL0QsT0FBTyxDQUFBLE1BQUMsR0FBMkIsMENBQUUsVUFBVSxNQUFLLHFCQUFxQixDQUFDO0lBQzlFLENBQUM7SUFFTyxXQUFXLENBQUMsR0FBWTs7UUFDNUIsT0FBTyxPQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksT0FBTyxDQUFBLE1BQUEsTUFBQyxHQUFXLDBDQUFFLEVBQUUsMENBQUUsU0FBUyxDQUFBLEtBQUssUUFBUSxDQUFDO0lBQ3RGLENBQUM7OztZQTNSSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsbTBDQUFrRDtnQkFFbEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFNBQVMsRUFBRTtvQkFDUDt3QkFDSSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUseUJBQXlCO3dCQUN0QyxLQUFLLEVBQUUsSUFBSTtxQkFDZDtpQkFDSjs7YUFDSjs7O1lBdkJRLHdCQUF3QjtZQXpCN0Isd0JBQXdCO1lBSHhCLGlCQUFpQjtZQUtqQixRQUFROzs7a0JBa0RQLEtBQUs7dUJBQ0wsS0FBSztzQkFDTCxLQUFLO2tDQUNMLFNBQVMsU0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7aUNBQzlDLFlBQVksU0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIENvbXBvbmVudCxcclxuICAgIENvbXBvbmVudEZhY3RvcnksXHJcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBDb21wb25lbnRSZWYsXHJcbiAgICBJbmplY3RvcixcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgT25Jbml0LFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgU2ltcGxlQ2hhbmdlcyxcclxuICAgIFR5cGUsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBWaWV3Q2hpbGRyZW4sXHJcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybUFycmF5LCBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFN0cmluZ0N1c3RvbUZpZWxkQ29uZmlnIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9nZW5lcmF0ZWQtdHlwZXMnO1xyXG5pbXBvcnQgeyBDb25maWdBcmdUeXBlLCBDdXN0b21GaWVsZFR5cGUsIERlZmF1bHRGb3JtQ29tcG9uZW50SWQgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NoYXJlZC10eXBlcyc7XHJcbmltcG9ydCB7IGFzc2VydE5ldmVyIH0gZnJvbSAnQHZlbmR1cmUvY29tbW9uL2xpYi9zaGFyZWQtdXRpbHMnO1xyXG5pbXBvcnQgeyBzaW1wbGVEZWVwQ2xvbmUgfSBmcm9tICdAdmVuZHVyZS9jb21tb24vbGliL3NpbXBsZS1kZWVwLWNsb25lJztcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2NvbXBvbmVudC1yZWdpc3RyeS10eXBlcyc7XHJcbmltcG9ydCB7IENvbmZpZ0FyZ0RlZmluaXRpb24sIEN1c3RvbUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2dlbmVyYXRlZC10eXBlcyc7XHJcbmltcG9ydCB7IGdldENvbmZpZ0FyZ1ZhbHVlIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3V0aWxpdGllcy9jb25maWd1cmFibGUtb3BlcmF0aW9uLXV0aWxzJztcclxuaW1wb3J0IHsgQ29tcG9uZW50UmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL2NvbXBvbmVudC1yZWdpc3RyeS9jb21wb25lbnQtcmVnaXN0cnkuc2VydmljZSc7XHJcblxyXG50eXBlIElucHV0TGlzdEl0ZW0gPSB7XHJcbiAgICBpZDogbnVtYmVyO1xyXG4gICAgY29tcG9uZW50UmVmPzogQ29tcG9uZW50UmVmPEZvcm1JbnB1dENvbXBvbmVudD47XHJcbiAgICBjb250cm9sOiBGb3JtQ29udHJvbDtcclxufTtcclxuXHJcbi8qKlxyXG4gKiBBIGhvc3QgY29tcG9uZW50IHdoaWNoIGRlbGVnYXRlcyB0byBhbiBpbnN0YW5jZSBvciBsaXN0IG9mIEZvcm1JbnB1dENvbXBvbmVudCBjb21wb25lbnRzLlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1keW5hbWljLWZvcm0taW5wdXQnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9keW5hbWljLWZvcm0taW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IER5bmFtaWNGb3JtSW5wdXRDb21wb25lbnQsXHJcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1JbnB1dENvbXBvbmVudFxyXG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvclxyXG57XHJcbiAgICBASW5wdXQoKSBkZWY6IENvbmZpZ0FyZ0RlZmluaXRpb24gfCBDdXN0b21GaWVsZENvbmZpZztcclxuICAgIEBJbnB1dCgpIHJlYWRvbmx5OiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgY29udHJvbDogRm9ybUNvbnRyb2w7XHJcbiAgICBAVmlld0NoaWxkKCdzaW5nbGUnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgc2luZ2xlVmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcclxuICAgIEBWaWV3Q2hpbGRyZW4oJ2xpc3RJdGVtJywgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pIGxpc3RJdGVtQ29udGFpbmVyczogUXVlcnlMaXN0PFZpZXdDb250YWluZXJSZWY+O1xyXG4gICAgcmVuZGVyQXNMaXN0ID0gZmFsc2U7XHJcbiAgICBsaXN0SXRlbXM6IElucHV0TGlzdEl0ZW1bXSA9IFtdO1xyXG4gICAgcHJpdmF0ZSBzaW5nbGVDb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxGb3JtSW5wdXRDb21wb25lbnQ+O1xyXG4gICAgcHJpdmF0ZSBsaXN0SWQgPSAxO1xyXG4gICAgcHJpdmF0ZSBsaXN0Rm9ybUFycmF5ID0gbmV3IEZvcm1BcnJheShbXSk7XHJcbiAgICBwcml2YXRlIGNvbXBvbmVudFR5cGU6IFR5cGU8Rm9ybUlucHV0Q29tcG9uZW50PjtcclxuICAgIHByaXZhdGUgb25DaGFuZ2U6ICh2YWw6IGFueSkgPT4gdm9pZDtcclxuICAgIHByaXZhdGUgb25Ub3VjaDogKCkgPT4gdm9pZDtcclxuICAgIHByaXZhdGUgcmVuZGVyTGlzdCQgPSBuZXcgU3ViamVjdCgpO1xyXG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBjb21wb25lbnRSZWdpc3RyeVNlcnZpY2U6IENvbXBvbmVudFJlZ2lzdHJ5U2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudElkID0gdGhpcy5nZXRJbnB1dENvbXBvbmVudENvbmZpZyh0aGlzLmRlZikuY29tcG9uZW50O1xyXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFR5cGUgPSB0aGlzLmNvbXBvbmVudFJlZ2lzdHJ5U2VydmljZS5nZXRJbnB1dENvbXBvbmVudChjb21wb25lbnRJZCk7XHJcbiAgICAgICAgaWYgKGNvbXBvbmVudFR5cGUpIHtcclxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRUeXBlID0gY29tcG9uZW50VHlwZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tY29uc29sZVxyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKFxyXG4gICAgICAgICAgICAgICAgYE5vIGZvcm0gaW5wdXQgY29tcG9uZW50IHJlZ2lzdGVyZWQgd2l0aCB0aGUgaWQgXCIke2NvbXBvbmVudElkfVwiLiBVc2luZyB0aGUgZGVmYXVsdCBpbnB1dCBpbnN0ZWFkLmAsXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRDb21wb25lbnRUeXBlID0gdGhpcy5jb21wb25lbnRSZWdpc3RyeVNlcnZpY2UuZ2V0SW5wdXRDb21wb25lbnQoXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdldElucHV0Q29tcG9uZW50Q29uZmlnKHsgLi4udGhpcy5kZWYsIHVpOiB1bmRlZmluZWQgfSBhcyBhbnkpLmNvbXBvbmVudCxcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgaWYgKGRlZmF1bHRDb21wb25lbnRUeXBlKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBkZWZhdWx0Q29tcG9uZW50VHlwZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY29tcG9uZW50VHlwZSkge1xyXG4gICAgICAgICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy5jb21wb25lbnRUeXBlKTtcclxuXHJcbiAgICAgICAgICAgIC8vIGNyZWF0ZSBhIHRlbXAgaW5zdGFuY2UgdG8gY2hlY2sgdGhlIHZhbHVlIG9mIGBpc0xpc3RJbnB1dGBcclxuICAgICAgICAgICAgY29uc3QgY21wUmVmID0gZmFjdG9yeS5jcmVhdGUodGhpcy5pbmplY3Rvcik7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzTGlzdElucHV0Q29tcG9uZW50ID0gY21wUmVmLmluc3RhbmNlLmlzTGlzdElucHV0ID8/IGZhbHNlO1xyXG4gICAgICAgICAgICBjbXBSZWYuZGVzdHJveSgpO1xyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMuZGVmLmxpc3QgPT09IGZhbHNlICYmIGlzTGlzdElucHV0Q29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgICAgICAgICAgICAgYFRoZSAke3RoaXMuY29tcG9uZW50VHlwZS5uYW1lfSBjb21wb25lbnQgaXMgYSBsaXN0IGlucHV0LCBidXQgdGhlIGRlZmluaXRpb24gZm9yICR7dGhpcy5kZWYubmFtZX0gZG9lcyBub3QgZXhwZWN0IGEgbGlzdGAsXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyQXNMaXN0ID0gdGhpcy5kZWYubGlzdCAmJiAhaXNMaXN0SW5wdXRDb21wb25lbnQ7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5yZW5kZXJBc0xpc3QpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2luZ2xlQ29tcG9uZW50UmVmID0gdGhpcy5yZW5kZXJJbnB1dENvbXBvbmVudChcclxuICAgICAgICAgICAgICAgICAgICBmYWN0b3J5LFxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2luZ2xlVmlld0NvbnRhaW5lcixcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2wsXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbGV0IGZvcm1BcnJheVN1YjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcmVuZGVyTGlzdElucHV0cyA9ICh2aWV3Q29udGFpbmVyUmVmczogUXVlcnlMaXN0PFZpZXdDb250YWluZXJSZWY+KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZpZXdDb250YWluZXJSZWZzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZm9ybUFycmF5U3ViKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtQXJyYXlTdWIudW5zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxpc3RGb3JtQXJyYXkgPSBuZXcgRm9ybUFycmF5KFtdKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5saXN0SXRlbXMuZm9yRWFjaChpID0+IGkuY29tcG9uZW50UmVmPy5kZXN0cm95KCkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2aWV3Q29udGFpbmVyUmVmcy5mb3JFYWNoKChyZWYsIGkpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxpc3RJdGVtID0gdGhpcy5saXN0SXRlbXM/LltpXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaXN0SXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubGlzdEZvcm1BcnJheS5wdXNoKGxpc3RJdGVtLmNvbnRyb2wpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpc3RJdGVtLmNvbXBvbmVudFJlZiA9IHRoaXMucmVuZGVySW5wdXRDb21wb25lbnQoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhY3RvcnksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlzdEl0ZW0uY29udHJvbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1BcnJheVN1YiA9IHRoaXMubGlzdEZvcm1BcnJheS52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUodmFsID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNEaXJ0eSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodmFsKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2wucGF0Y2hWYWx1ZSh2YWwsIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gaW5pdGlhbCByZW5kZXJcclxuICAgICAgICAgICAgICAgIHRoaXMubGlzdEl0ZW1Db250YWluZXJzLmNoYW5nZXNcclxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0YWtlKDEpKVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUodmFsID0+IHJlbmRlckxpc3RJbnB1dHModGhpcy5saXN0SXRlbUNvbnRhaW5lcnMpKTtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyByZW5kZXIgb24gY2hhbmdlcyB0byB0aGUgbGlzdFxyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJMaXN0JFxyXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5saXN0SXRlbUNvbnRhaW5lcnMuY2hhbmdlcy5waXBlKHRha2UoMSkpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxyXG4gICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVuZGVyTGlzdElucHV0cyh0aGlzLmxpc3RJdGVtQ29udGFpbmVycyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubGlzdEl0ZW1zKSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLmxpc3RJdGVtcykge1xyXG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0uY29tcG9uZW50UmVmKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVCaW5kaW5ncyhjaGFuZ2VzLCBpdGVtLmNvbXBvbmVudFJlZik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuc2luZ2xlQ29tcG9uZW50UmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQmluZGluZ3MoY2hhbmdlcywgdGhpcy5zaW5nbGVDb21wb25lbnRSZWYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcclxuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB1cGRhdGVCaW5kaW5ncyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzLCBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxGb3JtSW5wdXRDb21wb25lbnQ+KSB7XHJcbiAgICAgICAgaWYgKCdkZWYnIGluIGNoYW5nZXMpIHtcclxuICAgICAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmNvbmZpZyA9IHNpbXBsZURlZXBDbG9uZSh0aGlzLmRlZik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICgncmVhZG9ubHknIGluIGNoYW5nZXMpIHtcclxuICAgICAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLnJlYWRvbmx5ID0gdGhpcy5yZWFkb25seTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29tcG9uZW50UmVmLmluamVjdG9yLmdldChDaGFuZ2VEZXRlY3RvclJlZikubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2tCeUlkKGluZGV4OiBudW1iZXIsIGl0ZW06IHsgaWQ6IG51bWJlciB9KSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgYWRkTGlzdEl0ZW0oKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmxpc3RJdGVtcykge1xyXG4gICAgICAgICAgICB0aGlzLmxpc3RJdGVtcyA9IFtdO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmxpc3RJdGVtcy5wdXNoKHtcclxuICAgICAgICAgICAgaWQ6IHRoaXMubGlzdElkKyssXHJcbiAgICAgICAgICAgIGNvbnRyb2w6IG5ldyBGb3JtQ29udHJvbCgodGhpcy5kZWYgYXMgQ29uZmlnQXJnRGVmaW5pdGlvbikuZGVmYXVsdFZhbHVlID8/IG51bGwpLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMucmVuZGVyTGlzdCQubmV4dCgpO1xyXG4gICAgfVxyXG5cclxuICAgIG1vdmVMaXN0SXRlbShldmVudDogQ2RrRHJhZ0Ryb3A8SW5wdXRMaXN0SXRlbT4pIHtcclxuICAgICAgICBpZiAodGhpcy5saXN0SXRlbXMpIHtcclxuICAgICAgICAgICAgbW92ZUl0ZW1JbkFycmF5KHRoaXMubGlzdEl0ZW1zLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgICAgICAgICB0aGlzLmxpc3RGb3JtQXJyYXkucmVtb3ZlQXQoZXZlbnQucHJldmlvdXNJbmRleCk7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdEZvcm1BcnJheS5pbnNlcnQoZXZlbnQuY3VycmVudEluZGV4LCBldmVudC5pdGVtLmRhdGEuY29udHJvbCk7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyTGlzdCQubmV4dCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVMaXN0SXRlbShpdGVtOiBJbnB1dExpc3RJdGVtKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubGlzdEl0ZW1zKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5saXN0SXRlbXMuZmluZEluZGV4KGkgPT4gaSA9PT0gaXRlbSk7XHJcbiAgICAgICAgICAgIGl0ZW0uY29tcG9uZW50UmVmPy5kZXN0cm95KCk7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdEZvcm1BcnJheS5yZW1vdmVBdChpbmRleCk7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdEl0ZW1zID0gdGhpcy5saXN0SXRlbXMuZmlsdGVyKGkgPT4gaSAhPT0gaXRlbSk7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyTGlzdCQubmV4dCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHJlbmRlcklucHV0Q29tcG9uZW50KFxyXG4gICAgICAgIGZhY3Rvcnk6IENvbXBvbmVudEZhY3Rvcnk8Rm9ybUlucHV0Q29tcG9uZW50PixcclxuICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICAgIGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCxcclxuICAgICkge1xyXG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xyXG4gICAgICAgIGNvbnN0IHsgaW5zdGFuY2UgfSA9IGNvbXBvbmVudFJlZjtcclxuICAgICAgICBpbnN0YW5jZS5jb25maWcgPSBzaW1wbGVEZWVwQ2xvbmUodGhpcy5kZWYpO1xyXG4gICAgICAgIGluc3RhbmNlLmZvcm1Db250cm9sID0gZm9ybUNvbnRyb2w7XHJcbiAgICAgICAgaW5zdGFuY2UucmVhZG9ubHkgPSB0aGlzLnJlYWRvbmx5O1xyXG4gICAgICAgIGNvbXBvbmVudFJlZi5pbmplY3Rvci5nZXQoQ2hhbmdlRGV0ZWN0b3JSZWYpLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIHJldHVybiBjb21wb25lbnRSZWY7XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xyXG4gICAgICAgICAgICBpZiAob2JqLmxlbmd0aCA9PT0gdGhpcy5saXN0SXRlbXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICBvYmouZm9yRWFjaCgodmFsdWUsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMubGlzdEl0ZW1zW2luZGV4XT8uY29udHJvbDtcclxuICAgICAgICAgICAgICAgICAgICBjb250cm9sLnBhdGNoVmFsdWUoZ2V0Q29uZmlnQXJnVmFsdWUodmFsdWUpLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubGlzdEl0ZW1zID0gb2JqLm1hcChcclxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMubGlzdElkKyssXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sOiBuZXcgRm9ybUNvbnRyb2woZ2V0Q29uZmlnQXJnVmFsdWUodmFsdWUpKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBhcyBJbnB1dExpc3RJdGVtKSxcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlckxpc3QkLm5leHQoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMubGlzdEl0ZW1zID0gW107XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyTGlzdCQubmV4dCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0SW5wdXRDb21wb25lbnRDb25maWcoYXJnRGVmOiBDb25maWdBcmdEZWZpbml0aW9uIHwgQ3VzdG9tRmllbGRDb25maWcpOiB7XHJcbiAgICAgICAgY29tcG9uZW50OiBEZWZhdWx0Rm9ybUNvbXBvbmVudElkO1xyXG4gICAgfSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaGFzVWlDb25maWcoYXJnRGVmKSAmJiBhcmdEZWYudWkuY29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBhcmdEZWYudWk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHR5cGUgPSBhcmdEZWY/LnR5cGUgYXMgQ29uZmlnQXJnVHlwZSB8IEN1c3RvbUZpZWxkVHlwZTtcclxuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSAnc3RyaW5nJzpcclxuICAgICAgICAgICAgY2FzZSAnbG9jYWxlU3RyaW5nJzoge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaGFzT3B0aW9ucyA9XHJcbiAgICAgICAgICAgICAgICAgICAgISEodGhpcy5pc0NvbmZpZ0FyZ0RlZihhcmdEZWYpICYmIGFyZ0RlZi51aT8ub3B0aW9ucykgfHxcclxuICAgICAgICAgICAgICAgICAgICAhIShhcmdEZWYgYXMgU3RyaW5nQ3VzdG9tRmllbGRDb25maWcpLm9wdGlvbnM7XHJcbiAgICAgICAgICAgICAgICBpZiAoaGFzT3B0aW9ucykge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IGNvbXBvbmVudDogJ3NlbGVjdC1mb3JtLWlucHV0JyB9O1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4geyBjb21wb25lbnQ6ICd0ZXh0LWZvcm0taW5wdXQnIH07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY2FzZSAndGV4dCc6IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IGNvbXBvbmVudDogJ3RleHRhcmVhLWZvcm0taW5wdXQnIH07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY2FzZSAnaW50JzpcclxuICAgICAgICAgICAgY2FzZSAnZmxvYXQnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgY29tcG9uZW50OiAnbnVtYmVyLWZvcm0taW5wdXQnIH07XHJcbiAgICAgICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgY29tcG9uZW50OiAnYm9vbGVhbi1mb3JtLWlucHV0JyB9O1xyXG4gICAgICAgICAgICBjYXNlICdkYXRldGltZSc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBjb21wb25lbnQ6ICdkYXRlLWZvcm0taW5wdXQnIH07XHJcbiAgICAgICAgICAgIGNhc2UgJ0lEJzpcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IGNvbXBvbmVudDogJ3RleHQtZm9ybS1pbnB1dCcgfTtcclxuICAgICAgICAgICAgY2FzZSAncmVsYXRpb24nOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgY29tcG9uZW50OiAncmVsYXRpb24tZm9ybS1pbnB1dCcgfTtcclxuICAgICAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgICAgIGFzc2VydE5ldmVyKHR5cGUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGlzQ29uZmlnQXJnRGVmKGRlZjogQ29uZmlnQXJnRGVmaW5pdGlvbiB8IEN1c3RvbUZpZWxkQ29uZmlnKTogZGVmIGlzIENvbmZpZ0FyZ0RlZmluaXRpb24ge1xyXG4gICAgICAgIHJldHVybiAoZGVmIGFzIENvbmZpZ0FyZ0RlZmluaXRpb24pPy5fX3R5cGVuYW1lID09PSAnQ29uZmlnQXJnRGVmaW5pdGlvbic7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYXNVaUNvbmZpZyhkZWY6IHVua25vd24pOiBkZWYgaXMgeyB1aTogeyBjb21wb25lbnQ6IHN0cmluZyB9IH0ge1xyXG4gICAgICAgIHJldHVybiB0eXBlb2YgZGVmID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgKGRlZiBhcyBhbnkpPy51aT8uY29tcG9uZW50ID09PSAnc3RyaW5nJztcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|