@veloceapps/sdk 0.0.0-watch
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 +7 -0
- package/cms/cms.actions.d.ts +12 -0
- package/cms/cms.default.d.ts +5 -0
- package/cms/cms.elements.d.ts +4 -0
- package/cms/components/element-children/element-children.component.d.ts +10 -0
- package/cms/components/element-children/element-children.module.d.ts +8 -0
- package/cms/components/element-renderer/element-renderer.component.d.ts +35 -0
- package/cms/components/element-renderer/element-renderer.module.d.ts +7 -0
- package/cms/components/element.component.d.ts +13 -0
- package/cms/components/index.d.ts +1 -0
- package/cms/components/plugin.component.d.ts +15 -0
- package/cms/components/preview/index.d.ts +2 -0
- package/cms/components/preview/preview.component.d.ts +34 -0
- package/cms/components/preview/preview.module.d.ts +11 -0
- package/cms/decorators/element.decorator.d.ts +2 -0
- package/cms/decorators/index.d.ts +1 -0
- package/cms/directives/custom-template.directive.d.ts +12 -0
- package/cms/engine/models/entity.d.ts +11 -0
- package/cms/engine/models/plugin.d.ts +5 -0
- package/cms/index.d.ts +11 -0
- package/cms/injection-tokens.d.ts +11 -0
- package/cms/launcher.module.d.ts +10 -0
- package/cms/modules/federated/default-options.d.ts +4 -0
- package/cms/modules/federated/export.d.ts +1 -0
- package/cms/modules/federated/federated.component.d.ts +26 -0
- package/cms/modules/federated/federated.module.d.ts +9 -0
- package/cms/modules/federated/federated.types.d.ts +30 -0
- package/cms/modules/federated/federated.utils.d.ts +1 -0
- package/cms/package.json +10 -0
- package/cms/plugins/configuration.plugin.d.ts +23 -0
- package/cms/plugins/io.plugin.d.ts +9 -0
- package/cms/plugins/script.plugin.d.ts +13 -0
- package/cms/services/dynamic-module.service.d.ts +15 -0
- package/cms/services/element-context.service.d.ts +8 -0
- package/cms/services/index.d.ts +3 -0
- package/cms/services/integration.state.d.ts +17 -0
- package/cms/services/io-provider.service.d.ts +15 -0
- package/cms/services/launcher.service.d.ts +18 -0
- package/cms/services/templates.service.d.ts +9 -0
- package/cms/types/common.types.d.ts +103 -0
- package/cms/types/configuration.types.d.ts +17 -0
- package/cms/types/elements.types.d.ts +2 -0
- package/cms/types/index.d.ts +5 -0
- package/cms/types/integration.types.d.ts +4 -0
- package/cms/types/path.types.d.ts +11 -0
- package/cms/utils/element.utils.d.ts +15 -0
- package/cms/utils/elements-resolver.d.ts +20 -0
- package/cms/utils/index.d.ts +3 -0
- package/cms/utils/path.utils.d.ts +5 -0
- package/cms/veloce-sdk-cms.d.ts +5 -0
- package/cms/vendor-map.d.ts +689 -0
- package/core/core.module.d.ts +8 -0
- package/core/index.d.ts +6 -0
- package/core/modules/configuration/configuration.module.d.ts +7 -0
- package/core/modules/configuration/helpers.d.ts +3 -0
- package/core/modules/configuration/index.d.ts +4 -0
- package/core/modules/configuration/services/configuration-runtime.service.d.ts +28 -0
- package/core/modules/configuration/services/configuration.service.d.ts +40 -0
- package/core/modules/configuration/services/runtime-context.service.d.ts +14 -0
- package/core/modules/configuration/types/configuration-runtime.types.d.ts +6 -0
- package/core/modules/flow-configuration/flow-configuration.module.d.ts +6 -0
- package/core/modules/flow-configuration/index.d.ts +4 -0
- package/core/modules/flow-configuration/services/flow-configuration.service.d.ts +37 -0
- package/core/modules/flow-configuration/services/flow-update.service.d.ts +12 -0
- package/core/modules/flow-configuration/types/update.types.d.ts +12 -0
- package/core/modules/index.d.ts +2 -0
- package/core/package.json +10 -0
- package/core/services/context.service.d.ts +17 -0
- package/core/services/index.d.ts +3 -0
- package/core/services/product-images.service.d.ts +12 -0
- package/core/services/quote-draft.service.d.ts +31 -0
- package/core/types/index.d.ts +3 -0
- package/core/types/quote-states.types.d.ts +6 -0
- package/core/types/runtime.types.d.ts +31 -0
- package/core/types/ui-definition.types.d.ts +26 -0
- package/core/utils/index.d.ts +2 -0
- package/core/utils/line-item.utils.d.ts +26 -0
- package/core/utils/line-item.worker.d.ts +12 -0
- package/core/veloce-sdk-core.d.ts +5 -0
- package/esm2015/cms/cms.actions.js +17 -0
- package/esm2015/cms/cms.default.js +6 -0
- package/esm2015/cms/cms.elements.js +29 -0
- package/esm2015/cms/components/element-children/element-children.component.js +23 -0
- package/esm2015/cms/components/element-children/element-children.module.js +18 -0
- package/esm2015/cms/components/element-renderer/element-renderer.component.js +143 -0
- package/esm2015/cms/components/element-renderer/element-renderer.module.js +16 -0
- package/esm2015/cms/components/element.component.js +31 -0
- package/esm2015/cms/components/index.js +2 -0
- package/esm2015/cms/components/plugin.component.js +16 -0
- package/esm2015/cms/components/preview/index.js +3 -0
- package/esm2015/cms/components/preview/preview.component.js +105 -0
- package/esm2015/cms/components/preview/preview.module.js +23 -0
- package/esm2015/cms/decorators/element.decorator.js +6 -0
- package/esm2015/cms/decorators/index.js +2 -0
- package/esm2015/cms/directives/custom-template.directive.js +25 -0
- package/esm2015/cms/engine/models/entity.js +18 -0
- package/esm2015/cms/engine/models/plugin.js +6 -0
- package/esm2015/cms/index.js +11 -0
- package/esm2015/cms/injection-tokens.js +8 -0
- package/esm2015/cms/launcher.module.js +23 -0
- package/esm2015/cms/modules/federated/default-options.js +5 -0
- package/esm2015/cms/modules/federated/export.js +2 -0
- package/esm2015/cms/modules/federated/federated.component.js +82 -0
- package/esm2015/cms/modules/federated/federated.module.js +19 -0
- package/esm2015/cms/modules/federated/federated.types.js +2 -0
- package/esm2015/cms/modules/federated/federated.utils.js +37 -0
- package/esm2015/cms/plugins/configuration.plugin.js +94 -0
- package/esm2015/cms/plugins/io.plugin.js +37 -0
- package/esm2015/cms/plugins/script.plugin.js +66 -0
- package/esm2015/cms/services/dynamic-module.service.js +33 -0
- package/esm2015/cms/services/element-context.service.js +10 -0
- package/esm2015/cms/services/index.js +4 -0
- package/esm2015/cms/services/integration.state.js +40 -0
- package/esm2015/cms/services/io-provider.service.js +51 -0
- package/esm2015/cms/services/launcher.service.js +57 -0
- package/esm2015/cms/services/templates.service.js +19 -0
- package/esm2015/cms/types/common.types.js +2 -0
- package/esm2015/cms/types/configuration.types.js +2 -0
- package/esm2015/cms/types/elements.types.js +2 -0
- package/esm2015/cms/types/index.js +6 -0
- package/esm2015/cms/types/integration.types.js +2 -0
- package/esm2015/cms/types/path.types.js +2 -0
- package/esm2015/cms/utils/element.utils.js +149 -0
- package/esm2015/cms/utils/elements-resolver.js +108 -0
- package/esm2015/cms/utils/index.js +4 -0
- package/esm2015/cms/utils/path.utils.js +67 -0
- package/esm2015/cms/veloce-sdk-cms.js +5 -0
- package/esm2015/cms/vendor-map.js +35 -0
- package/esm2015/core/core.module.js +18 -0
- package/esm2015/core/index.js +7 -0
- package/esm2015/core/modules/configuration/configuration.module.js +34 -0
- package/esm2015/core/modules/configuration/helpers.js +10 -0
- package/esm2015/core/modules/configuration/index.js +5 -0
- package/esm2015/core/modules/configuration/services/configuration-runtime.service.js +90 -0
- package/esm2015/core/modules/configuration/services/configuration.service.js +153 -0
- package/esm2015/core/modules/configuration/services/runtime-context.service.js +61 -0
- package/esm2015/core/modules/configuration/types/configuration-runtime.types.js +2 -0
- package/esm2015/core/modules/flow-configuration/flow-configuration.module.js +18 -0
- package/esm2015/core/modules/flow-configuration/index.js +5 -0
- package/esm2015/core/modules/flow-configuration/services/flow-configuration.service.js +90 -0
- package/esm2015/core/modules/flow-configuration/services/flow-update.service.js +114 -0
- package/esm2015/core/modules/flow-configuration/types/update.types.js +2 -0
- package/esm2015/core/modules/index.js +3 -0
- package/esm2015/core/services/context.service.js +44 -0
- package/esm2015/core/services/index.js +4 -0
- package/esm2015/core/services/product-images.service.js +30 -0
- package/esm2015/core/services/quote-draft.service.js +88 -0
- package/esm2015/core/types/index.js +4 -0
- package/esm2015/core/types/quote-states.types.js +2 -0
- package/esm2015/core/types/runtime.types.js +16 -0
- package/esm2015/core/types/ui-definition.types.js +2 -0
- package/esm2015/core/utils/index.js +3 -0
- package/esm2015/core/utils/line-item.utils.js +98 -0
- package/esm2015/core/utils/line-item.worker.js +19 -0
- package/esm2015/core/veloce-sdk-core.js +5 -0
- package/esm2015/index.js +2 -0
- package/esm2015/runtime/components/component-preview/component-preview.component.js +125 -0
- package/esm2015/runtime/components/index.js +5 -0
- package/esm2015/runtime/components/section-renderer/section-renderer.component.js +71 -0
- package/esm2015/runtime/components/ui-runtime/runtime.component.js +427 -0
- package/esm2015/runtime/components/ui-runtime-preview/runtime-preview.component.js +109 -0
- package/esm2015/runtime/execution/components/children-placeholder/children-placeholder.component.js +68 -0
- package/esm2015/runtime/execution/components/context-provider/context-provider.component.js +36 -0
- package/esm2015/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.js +72 -0
- package/esm2015/runtime/execution/components/federated/federated.component.js +81 -0
- package/esm2015/runtime/execution/components/velo-attribute/velo-attribute.component.js +65 -0
- package/esm2015/runtime/execution/components/velo-multiselect/velo-multiselect.component.js +136 -0
- package/esm2015/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.js +80 -0
- package/esm2015/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.js +101 -0
- package/esm2015/runtime/execution/components/velo-port-radio/velo-port-radio.component.js +150 -0
- package/esm2015/runtime/execution/components/velo-type/velo-type.component.js +121 -0
- package/esm2015/runtime/execution/directives/section-script.directive.js +242 -0
- package/esm2015/runtime/execution/directives/sf-query.directive.js +34 -0
- package/esm2015/runtime/execution/directives/velo-attribute.directive.js +86 -0
- package/esm2015/runtime/execution/directives/velo-port.directive.js +373 -0
- package/esm2015/runtime/execution/directives/vl-approval.directive.js +22 -0
- package/esm2015/runtime/execution/directives/vl-document-attachments.directive.js +35 -0
- package/esm2015/runtime/execution/directives/vl-document-templates.directive.js +59 -0
- package/esm2015/runtime/execution/directives/vl-quote.directive.js +41 -0
- package/esm2015/runtime/execution/directives/vl-ramp.directive.js +51 -0
- package/esm2015/runtime/execution/runtime-execution.module.js +163 -0
- package/esm2015/runtime/execution/utils/federated.util.js +37 -0
- package/esm2015/runtime/index.js +5 -0
- package/esm2015/runtime/runtime.module.js +104 -0
- package/esm2015/runtime/services/cart.service.js +28 -0
- package/esm2015/runtime/services/collapsible-state.service.js +34 -0
- package/esm2015/runtime/services/configuration.service.js +102 -0
- package/esm2015/runtime/services/current-state.service.js +17 -0
- package/esm2015/runtime/services/form-scope.service.js +30 -0
- package/esm2015/runtime/services/index.js +4 -0
- package/esm2015/runtime/services/product-model-cache.service.js +30 -0
- package/esm2015/runtime/services/runtime-context.service.js +56 -0
- package/esm2015/runtime/services/runtime-form.service.js +224 -0
- package/esm2015/runtime/services/runtime.service.js +108 -0
- package/esm2015/runtime/services/section-helper.service.js +27 -0
- package/esm2015/runtime/services/section-scope.service.js +36 -0
- package/esm2015/runtime/services/section-store.service.js +22 -0
- package/esm2015/runtime/services/section.service.js +124 -0
- package/esm2015/runtime/types/bound-data.types.js +7 -0
- package/esm2015/runtime/types/index.js +2 -0
- package/esm2015/runtime/types/runtime.types.js +2 -0
- package/esm2015/runtime/types/script-registry.types.js +51 -0
- package/esm2015/runtime/utils/line-item.util.js +273 -0
- package/esm2015/runtime/utils/section.utils.js +26 -0
- package/esm2015/runtime/utils/sections-binder.helper.js +105 -0
- package/esm2015/runtime/veloce-sdk-runtime.js +5 -0
- package/esm2015/src/components/dialog/dialog.component.js +30 -0
- package/esm2015/src/components/dialog/dialog.module.js +19 -0
- package/esm2015/src/components/dialog/dialog.types.js +2 -0
- package/esm2015/src/components/header/cart-overlay/cart-preview.component.js +116 -0
- package/esm2015/src/components/header/cart-overlay/cart-preview.module.js +23 -0
- package/esm2015/src/components/header/header.component.js +196 -0
- package/esm2015/src/components/header/header.module.js +23 -0
- package/esm2015/src/components/header/header.types.js +2 -0
- package/esm2015/src/constants.js +2 -0
- package/esm2015/src/flow-routing.module.js +97 -0
- package/esm2015/src/flow.component.js +35 -0
- package/esm2015/src/flow.module.js +52 -0
- package/esm2015/src/guards/context.guard.js +75 -0
- package/esm2015/src/guards/index.js +2 -0
- package/esm2015/src/guards/product-unload.guard.js +43 -0
- package/esm2015/src/guards/root.guard.js +41 -0
- package/esm2015/src/index.js +7 -0
- package/esm2015/src/pages/catalog/catalog.component.js +117 -0
- package/esm2015/src/pages/catalog/catalog.module.js +20 -0
- package/esm2015/src/pages/debug/debug.component.js +65 -0
- package/esm2015/src/pages/debug/debug.module.js +48 -0
- package/esm2015/src/pages/legacy-product/legacy-product.component.js +132 -0
- package/esm2015/src/pages/legacy-product/legacy-product.module.js +21 -0
- package/esm2015/src/pages/product/product.component.js +95 -0
- package/esm2015/src/pages/product/product.module.js +20 -0
- package/esm2015/src/pages/record-not-found/record-not-found.component.js +29 -0
- package/esm2015/src/pages/record-not-found/record-not-found.module.js +20 -0
- package/esm2015/src/pages/shopping-cart/shopping-cart.component.js +117 -0
- package/esm2015/src/pages/shopping-cart/shopping-cart.module.js +20 -0
- package/esm2015/src/resolvers/flow.resolver.js +58 -0
- package/esm2015/src/resolvers/quote.resolver.js +45 -0
- package/esm2015/src/services/flow-dialog.service.js +80 -0
- package/esm2015/src/services/flow-router.service.js +124 -0
- package/esm2015/src/services/flow.service.js +67 -0
- package/esm2015/src/services/index.js +2 -0
- package/esm2015/src/types/context-route.types.js +2 -0
- package/esm2015/src/types/flow-customization.types.js +3 -0
- package/esm2015/src/types/index.js +3 -0
- package/esm2015/src/types/route.types.js +2 -0
- package/esm2015/src/utils/flow.utils.js +12 -0
- package/esm2015/src/utils/index.js +2 -0
- package/esm2015/veloce-sdk.js +5 -0
- package/fesm2015/veloce-sdk-cms.js +1301 -0
- package/fesm2015/veloce-sdk-cms.js.map +1 -0
- package/fesm2015/veloce-sdk-core.js +837 -0
- package/fesm2015/veloce-sdk-core.js.map +1 -0
- package/fesm2015/veloce-sdk-runtime.js +3895 -0
- package/fesm2015/veloce-sdk-runtime.js.map +1 -0
- package/fesm2015/veloce-sdk.js +1635 -0
- package/fesm2015/veloce-sdk.js.map +1 -0
- package/index.d.ts +1 -0
- package/package.json +49 -0
- package/runtime/components/component-preview/component-preview.component.d.ts +27 -0
- package/runtime/components/index.d.ts +4 -0
- package/runtime/components/section-renderer/section-renderer.component.d.ts +25 -0
- package/runtime/components/ui-runtime/runtime.component.d.ts +53 -0
- package/runtime/components/ui-runtime-preview/runtime-preview.component.d.ts +27 -0
- package/runtime/execution/components/children-placeholder/children-placeholder.component.d.ts +30 -0
- package/runtime/execution/components/context-provider/context-provider.component.d.ts +14 -0
- package/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.d.ts +25 -0
- package/runtime/execution/components/federated/federated.component.d.ts +36 -0
- package/runtime/execution/components/velo-attribute/velo-attribute.component.d.ts +19 -0
- package/runtime/execution/components/velo-multiselect/velo-multiselect.component.d.ts +35 -0
- package/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.d.ts +22 -0
- package/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.d.ts +22 -0
- package/runtime/execution/components/velo-port-radio/velo-port-radio.component.d.ts +28 -0
- package/runtime/execution/components/velo-type/velo-type.component.d.ts +31 -0
- package/runtime/execution/directives/section-script.directive.d.ts +59 -0
- package/runtime/execution/directives/sf-query.directive.d.ts +15 -0
- package/runtime/execution/directives/velo-attribute.directive.d.ts +26 -0
- package/runtime/execution/directives/velo-port.directive.d.ts +74 -0
- package/runtime/execution/directives/vl-approval.directive.d.ts +10 -0
- package/runtime/execution/directives/vl-document-attachments.directive.d.ts +15 -0
- package/runtime/execution/directives/vl-document-templates.directive.d.ts +33 -0
- package/runtime/execution/directives/vl-quote.directive.d.ts +14 -0
- package/runtime/execution/directives/vl-ramp.directive.d.ts +15 -0
- package/runtime/execution/runtime-execution.module.d.ts +27 -0
- package/runtime/execution/utils/federated.util.d.ts +6 -0
- package/runtime/index.d.ts +4 -0
- package/runtime/package.json +10 -0
- package/runtime/runtime.module.d.ts +18 -0
- package/runtime/services/cart.service.d.ts +15 -0
- package/runtime/services/collapsible-state.service.d.ts +15 -0
- package/runtime/services/configuration.service.d.ts +19 -0
- package/runtime/services/current-state.service.d.ts +8 -0
- package/runtime/services/form-scope.service.d.ts +20 -0
- package/runtime/services/index.d.ts +3 -0
- package/runtime/services/product-model-cache.service.d.ts +14 -0
- package/runtime/services/runtime-context.service.d.ts +16 -0
- package/runtime/services/runtime-form.service.d.ts +24 -0
- package/runtime/services/runtime.service.d.ts +43 -0
- package/runtime/services/section-helper.service.d.ts +8 -0
- package/runtime/services/section-scope.service.d.ts +14 -0
- package/runtime/services/section-store.service.d.ts +11 -0
- package/runtime/services/section.service.d.ts +30 -0
- package/runtime/types/bound-data.types.d.ts +13 -0
- package/runtime/types/index.d.ts +1 -0
- package/runtime/types/runtime.types.d.ts +19 -0
- package/runtime/types/script-registry.types.d.ts +13 -0
- package/runtime/utils/line-item.util.d.ts +34 -0
- package/runtime/utils/section.utils.d.ts +2 -0
- package/runtime/utils/sections-binder.helper.d.ts +16 -0
- package/runtime/veloce-sdk-runtime.d.ts +5 -0
- package/src/components/dialog/dialog.component.d.ts +13 -0
- package/src/components/dialog/dialog.module.d.ts +9 -0
- package/src/components/dialog/dialog.types.d.ts +6 -0
- package/src/components/header/cart-overlay/cart-preview.component.d.ts +31 -0
- package/src/components/header/cart-overlay/cart-preview.module.d.ts +13 -0
- package/src/components/header/header.component.d.ts +48 -0
- package/src/components/header/header.module.d.ts +13 -0
- package/src/components/header/header.types.d.ts +19 -0
- package/src/constants.d.ts +1 -0
- package/src/flow-routing.module.d.ts +11 -0
- package/src/flow.component.d.ts +17 -0
- package/src/flow.module.d.ts +15 -0
- package/src/guards/context.guard.d.ts +18 -0
- package/src/guards/index.d.ts +1 -0
- package/src/guards/product-unload.guard.d.ts +16 -0
- package/src/guards/root.guard.d.ts +15 -0
- package/src/index.d.ts +6 -0
- package/src/pages/catalog/catalog.component.d.ts +32 -0
- package/src/pages/catalog/catalog.module.d.ts +10 -0
- package/src/pages/debug/debug.component.d.ts +27 -0
- package/src/pages/debug/debug.module.d.ts +14 -0
- package/src/pages/legacy-product/legacy-product.component.d.ts +37 -0
- package/src/pages/legacy-product/legacy-product.module.d.ts +10 -0
- package/src/pages/product/product.component.d.ts +30 -0
- package/src/pages/product/product.module.d.ts +10 -0
- package/src/pages/record-not-found/record-not-found.component.d.ts +11 -0
- package/src/pages/record-not-found/record-not-found.module.d.ts +9 -0
- package/src/pages/shopping-cart/shopping-cart.component.d.ts +32 -0
- package/src/pages/shopping-cart/shopping-cart.module.d.ts +10 -0
- package/src/resolvers/flow.resolver.d.ts +14 -0
- package/src/resolvers/quote.resolver.d.ts +18 -0
- package/src/services/flow-dialog.service.d.ts +20 -0
- package/src/services/flow-router.service.d.ts +35 -0
- package/src/services/flow.service.d.ts +17 -0
- package/src/services/index.d.ts +1 -0
- package/src/types/context-route.types.d.ts +5 -0
- package/src/types/flow-customization.types.d.ts +11 -0
- package/src/types/index.d.ts +2 -0
- package/src/types/route.types.d.ts +9 -0
- package/src/utils/flow.utils.d.ts +1 -0
- package/src/utils/index.d.ts +1 -0
- package/veloce-sdk.d.ts +5 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './context.guard';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZ3VhcmRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnRleHQuZ3VhcmQnO1xuIl19
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { map, of } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
import * as i2 from "@veloce/sdk/core";
|
|
6
|
+
import * as i3 from "../services/flow-dialog.service";
|
|
7
|
+
export class ProductUnloadGuard {
|
|
8
|
+
constructor(router, contextService, quoteDraftService, configurationService, flowDialogService) {
|
|
9
|
+
this.router = router;
|
|
10
|
+
this.contextService = contextService;
|
|
11
|
+
this.quoteDraftService = quoteDraftService;
|
|
12
|
+
this.configurationService = configurationService;
|
|
13
|
+
this.flowDialogService = flowDialogService;
|
|
14
|
+
}
|
|
15
|
+
canDeactivate(_, route, currentState, nextState) {
|
|
16
|
+
let observable = of(true);
|
|
17
|
+
if (!this.quoteDraftService.isStandalone && this.configurationService.hasUnsavedChanges) {
|
|
18
|
+
observable = this.flowDialogService.showUnsavedChangesDialog().pipe(map(confirmed => !confirmed));
|
|
19
|
+
}
|
|
20
|
+
return observable.pipe(map(unload => {
|
|
21
|
+
if (unload) {
|
|
22
|
+
this.configurationService.reset();
|
|
23
|
+
this.contextService.update({ properties: { productId: undefined, lineItemId: undefined } });
|
|
24
|
+
if (!nextState || currentState.url === nextState.url) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
// clear obsolete queryParams
|
|
28
|
+
const urlTree = this.router.parseUrl(nextState.url);
|
|
29
|
+
delete urlTree.queryParams.productId;
|
|
30
|
+
// replace url after deactivation has finished
|
|
31
|
+
setTimeout(() => this.router.navigateByUrl(urlTree.toString(), { replaceUrl: true }));
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
return false;
|
|
35
|
+
}));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
ProductUnloadGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ProductUnloadGuard, deps: [{ token: i1.Router }, { token: i2.ContextService }, { token: i2.QuoteDraftService }, { token: i2.ConfigurationService }, { token: i3.FlowDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
39
|
+
ProductUnloadGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ProductUnloadGuard });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ProductUnloadGuard, decorators: [{
|
|
41
|
+
type: Injectable
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.ContextService }, { type: i2.QuoteDraftService }, { type: i2.ConfigurationService }, { type: i3.FlowDialogService }]; } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC11bmxvYWQuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZ3VhcmRzL3Byb2R1Y3QtdW5sb2FkLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBSS9CLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsWUFDVSxNQUFjLEVBQ2QsY0FBOEIsRUFDOUIsaUJBQW9DLEVBQ3BDLG9CQUEwQyxFQUMxQyxpQkFBb0M7UUFKcEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUMzQyxDQUFDO0lBRUosYUFBYSxDQUNYLENBQVksRUFDWixLQUE2QixFQUM3QixZQUFpQyxFQUNqQyxTQUErQjtRQUUvQixJQUFJLFVBQVUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLGlCQUFpQixFQUFFO1lBQ3ZGLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1NBQ25HO1FBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUNwQixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDWCxJQUFJLE1BQU0sRUFBRTtnQkFDVixJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUU1RixJQUFJLENBQUMsU0FBUyxJQUFJLFlBQVksQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDcEQsT0FBTyxJQUFJLENBQUM7aUJBQ2I7Z0JBRUQsNkJBQTZCO2dCQUM3QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3BELE9BQU8sT0FBTyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7Z0JBRXJDLDhDQUE4QztnQkFDOUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBRXRGLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOztnSEE1Q1Usa0JBQWtCO29IQUFsQixrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuRGVhY3RpdmF0ZSwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlLCBDb250ZXh0U2VydmljZSwgUXVvdGVEcmFmdFNlcnZpY2UgfSBmcm9tICdAdmVsb2NlL3Nkay9jb3JlJztcbmltcG9ydCB7IG1hcCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZsb3dEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1kaWFsb2cuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQcm9kdWN0VW5sb2FkR3VhcmQgaW1wbGVtZW50cyBDYW5EZWFjdGl2YXRlPGFueT4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcXVvdGVEcmFmdFNlcnZpY2U6IFF1b3RlRHJhZnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgZmxvd0RpYWxvZ1NlcnZpY2U6IEZsb3dEaWFsb2dTZXJ2aWNlLFxuICApIHt9XG5cbiAgY2FuRGVhY3RpdmF0ZShcbiAgICBfOiBDb21wb25lbnQsXG4gICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gICAgY3VycmVudFN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICAgIG5leHRTdGF0ZT86IFJvdXRlclN0YXRlU25hcHNob3QsXG4gICkge1xuICAgIGxldCBvYnNlcnZhYmxlID0gb2YodHJ1ZSk7XG5cbiAgICBpZiAoIXRoaXMucXVvdGVEcmFmdFNlcnZpY2UuaXNTdGFuZGFsb25lICYmIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuaGFzVW5zYXZlZENoYW5nZXMpIHtcbiAgICAgIG9ic2VydmFibGUgPSB0aGlzLmZsb3dEaWFsb2dTZXJ2aWNlLnNob3dVbnNhdmVkQ2hhbmdlc0RpYWxvZygpLnBpcGUobWFwKGNvbmZpcm1lZCA9PiAhY29uZmlybWVkKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9ic2VydmFibGUucGlwZShcbiAgICAgIG1hcCh1bmxvYWQgPT4ge1xuICAgICAgICBpZiAodW5sb2FkKSB7XG4gICAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5yZXNldCgpO1xuICAgICAgICAgIHRoaXMuY29udGV4dFNlcnZpY2UudXBkYXRlKHsgcHJvcGVydGllczogeyBwcm9kdWN0SWQ6IHVuZGVmaW5lZCwgbGluZUl0ZW1JZDogdW5kZWZpbmVkIH0gfSk7XG5cbiAgICAgICAgICBpZiAoIW5leHRTdGF0ZSB8fCBjdXJyZW50U3RhdGUudXJsID09PSBuZXh0U3RhdGUudXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBjbGVhciBvYnNvbGV0ZSBxdWVyeVBhcmFtc1xuICAgICAgICAgIGNvbnN0IHVybFRyZWUgPSB0aGlzLnJvdXRlci5wYXJzZVVybChuZXh0U3RhdGUudXJsKTtcbiAgICAgICAgICBkZWxldGUgdXJsVHJlZS5xdWVyeVBhcmFtcy5wcm9kdWN0SWQ7XG5cbiAgICAgICAgICAvLyByZXBsYWNlIHVybCBhZnRlciBkZWFjdGl2YXRpb24gaGFzIGZpbmlzaGVkXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHVybFRyZWUudG9TdHJpbmcoKSwgeyByZXBsYWNlVXJsOiB0cnVlIH0pKTtcblxuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/router";
|
|
4
|
+
import * as i2 from "../services/flow-router.service";
|
|
5
|
+
export class RootGuard {
|
|
6
|
+
constructor(router, routerService) {
|
|
7
|
+
this.router = router;
|
|
8
|
+
this.routerService = routerService;
|
|
9
|
+
this.initialized = false;
|
|
10
|
+
this.navToRestore = null;
|
|
11
|
+
}
|
|
12
|
+
canActivate(route) {
|
|
13
|
+
// We always need to initialize root component first, and only then start checking guards/resolvers
|
|
14
|
+
var _a;
|
|
15
|
+
if (!this.initialized) {
|
|
16
|
+
this.initialized = true;
|
|
17
|
+
this.navToRestore = this.router.getCurrentNavigation();
|
|
18
|
+
const rootUrl = this.routerService.getFlowRootPath(route);
|
|
19
|
+
this.router.navigate([rootUrl], { replaceUrl: !((_a = this.navToRestore) === null || _a === void 0 ? void 0 : _a.previousNavigation) });
|
|
20
|
+
}
|
|
21
|
+
else if (this.navToRestore) {
|
|
22
|
+
const nav = this.navToRestore;
|
|
23
|
+
setTimeout(() => {
|
|
24
|
+
this.router.navigateByUrl(nav.extractedUrl, nav.extras);
|
|
25
|
+
this.navToRestore = null;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
canDeactivate() {
|
|
31
|
+
this.initialized = false;
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
RootGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RootGuard, deps: [{ token: i1.Router }, { token: i2.FlowRouterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
|
+
RootGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RootGuard, providedIn: 'root' });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RootGuard, decorators: [{
|
|
38
|
+
type: Injectable,
|
|
39
|
+
args: [{ providedIn: 'root' }]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.FlowRouterService }]; } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9ndWFyZHMvcm9vdC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBTTNDLE1BQU0sT0FBTyxTQUFTO0lBSXBCLFlBQW9CLE1BQWMsRUFBVSxhQUFnQztRQUF4RCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBSHBFLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLGlCQUFZLEdBQXNCLElBQUksQ0FBQztJQUVnQyxDQUFDO0lBRWhGLFdBQVcsQ0FBQyxLQUE2QjtRQUN2QyxtR0FBbUc7O1FBRW5HLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBRXZELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLFlBQVksMENBQUUsa0JBQWtCLENBQUEsRUFBRSxDQUFDLENBQUM7U0FDekY7YUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDNUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUM5QixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUV4RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztZQUMzQixDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7dUdBOUJVLFNBQVM7MkdBQVQsU0FBUyxjQURJLE1BQU07NEZBQ25CLFNBQVM7a0JBRHJCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGUsIENhbkRlYWN0aXZhdGUsIE5hdmlnYXRpb24sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93Um91dGVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctcm91dGVyLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFJvb3RHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlLCBDYW5EZWFjdGl2YXRlPGFueT4ge1xuICBwcml2YXRlIGluaXRpYWxpemVkID0gZmFsc2U7XG4gIHByaXZhdGUgbmF2VG9SZXN0b3JlOiBOYXZpZ2F0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByb3V0ZXJTZXJ2aWNlOiBGbG93Um91dGVyU2VydmljZSkge31cblxuICBjYW5BY3RpdmF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBQcm9taXNlPGJvb2xlYW4+IHwgYm9vbGVhbiB7XG4gICAgLy8gV2UgYWx3YXlzIG5lZWQgdG8gaW5pdGlhbGl6ZSByb290IGNvbXBvbmVudCBmaXJzdCwgYW5kIG9ubHkgdGhlbiBzdGFydCBjaGVja2luZyBndWFyZHMvcmVzb2x2ZXJzXG5cbiAgICBpZiAoIXRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgICAgdGhpcy5uYXZUb1Jlc3RvcmUgPSB0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xuXG4gICAgICBjb25zdCByb290VXJsID0gdGhpcy5yb3V0ZXJTZXJ2aWNlLmdldEZsb3dSb290UGF0aChyb3V0ZSk7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcm9vdFVybF0sIHsgcmVwbGFjZVVybDogIXRoaXMubmF2VG9SZXN0b3JlPy5wcmV2aW91c05hdmlnYXRpb24gfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLm5hdlRvUmVzdG9yZSkge1xuICAgICAgY29uc3QgbmF2ID0gdGhpcy5uYXZUb1Jlc3RvcmU7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChuYXYuZXh0cmFjdGVkVXJsLCBuYXYuZXh0cmFzKTtcblxuICAgICAgICB0aGlzLm5hdlRvUmVzdG9yZSA9IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNhbkRlYWN0aXZhdGUoKSB7XG4gICAgdGhpcy5pbml0aWFsaXplZCA9IGZhbHNlO1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './constants';
|
|
2
|
+
export * from './flow.module';
|
|
3
|
+
export * from './guards';
|
|
4
|
+
export * from './services';
|
|
5
|
+
export * from './types';
|
|
6
|
+
export * from './utils';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2Zsb3cubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZ3VhcmRzJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxzJztcbiJdfQ==
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Inject, Optional, } from '@angular/core';
|
|
2
|
+
import { ToastType } from '@veloce/components';
|
|
3
|
+
import { UITemplateComponentType, UITemplateType, } from '@veloce/core';
|
|
4
|
+
import { BehaviorSubject, catchError, map, of, Subject, switchMap, takeUntil, tap } from 'rxjs';
|
|
5
|
+
import { FLOW_CUSTOMIZATION } from '../../types';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@veloce/api";
|
|
8
|
+
import * as i2 from "@veloce/sdk/core";
|
|
9
|
+
import * as i3 from "@veloce/components";
|
|
10
|
+
import * as i4 from "@veloce/sdk/cms";
|
|
11
|
+
import * as i5 from "@angular/common";
|
|
12
|
+
export class CatalogComponent {
|
|
13
|
+
constructor(templatesApi, contextService, cdr, toastService, customizationService) {
|
|
14
|
+
var _a;
|
|
15
|
+
this.templatesApi = templatesApi;
|
|
16
|
+
this.contextService = contextService;
|
|
17
|
+
this.cdr = cdr;
|
|
18
|
+
this.toastService = toastService;
|
|
19
|
+
this.customizationService = customizationService;
|
|
20
|
+
this.uiDefinition = undefined;
|
|
21
|
+
this.state$ = new BehaviorSubject({ loading: true, failure: false });
|
|
22
|
+
this.templateApiName = '';
|
|
23
|
+
this.destroyed$ = new Subject();
|
|
24
|
+
this.templateApiName = (_a = this.contextService.resolve().properties.catalogTemplateApiName) !== null && _a !== void 0 ? _a : '';
|
|
25
|
+
}
|
|
26
|
+
ngOnInit() {
|
|
27
|
+
this.generateUIDefinition$()
|
|
28
|
+
.pipe(tap(uiDef => {
|
|
29
|
+
if (!uiDef) {
|
|
30
|
+
throw new Error(`Component with name '${this.templateApiName}' not found.`);
|
|
31
|
+
}
|
|
32
|
+
this.uiDefinition = uiDef;
|
|
33
|
+
this.state$.next({ loading: false, failure: false });
|
|
34
|
+
}), catchError(err => {
|
|
35
|
+
var _a;
|
|
36
|
+
const message = 'Failed to resolve Catalog component. ' + ((_a = err.message) !== null && _a !== void 0 ? _a : '');
|
|
37
|
+
this.toastService.add({ severity: ToastType.error, summary: message, sticky: true });
|
|
38
|
+
this.uiDefinition = undefined;
|
|
39
|
+
this.state$.next({ loading: false, failure: true });
|
|
40
|
+
return of();
|
|
41
|
+
}), takeUntil(this.destroyed$))
|
|
42
|
+
.subscribe(() => this.cdr.detectChanges());
|
|
43
|
+
}
|
|
44
|
+
ngOnDestroy() {
|
|
45
|
+
this.destroyed$.next();
|
|
46
|
+
this.destroyed$.complete();
|
|
47
|
+
}
|
|
48
|
+
getTemplateRootComponent$(template) {
|
|
49
|
+
return this.templatesApi
|
|
50
|
+
.fetchComponents$(template.id)
|
|
51
|
+
.pipe(map(components => { var _a; return (_a = components.find(c => c.type === UITemplateComponentType.ROOT)) !== null && _a !== void 0 ? _a : undefined; }));
|
|
52
|
+
}
|
|
53
|
+
getLocalCatalogComponentMeta$() {
|
|
54
|
+
var _a, _b;
|
|
55
|
+
if (!((_a = this.customizationService) === null || _a === void 0 ? void 0 : _a.getCatalogComponent)) {
|
|
56
|
+
return of(undefined);
|
|
57
|
+
}
|
|
58
|
+
return (_b = this.customizationService) === null || _b === void 0 ? void 0 : _b.getCatalogComponent(this.templateApiName).pipe(map(component => {
|
|
59
|
+
if (!component) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
html: component.html,
|
|
64
|
+
css: component.css,
|
|
65
|
+
js: component.js,
|
|
66
|
+
json: component.json,
|
|
67
|
+
};
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
getCatalogComponentMeta$() {
|
|
71
|
+
return this.templatesApi.fetchTemplates$().pipe(map(templates => templates.find(template => template.type === UITemplateType.CATALOG && template.name === this.templateApiName)), switchMap(template => (template ? this.getTemplateRootComponent$(template) : of(undefined))), switchMap(component => component ? this.templatesApi.fetchComponentAttachments$(component.uiTemplateId, component) : of(undefined)));
|
|
72
|
+
}
|
|
73
|
+
generateUIDefinition$() {
|
|
74
|
+
return of(undefined).pipe(tap(() => {
|
|
75
|
+
if (!this.templateApiName) {
|
|
76
|
+
throw new Error("Flow Query parameter 'catalogTemplateApiName' is missing.");
|
|
77
|
+
}
|
|
78
|
+
}), switchMap(() => this.getLocalCatalogComponentMeta$()), switchMap(meta => (meta ? of(meta) : this.getCatalogComponentMeta$())), map(meta => {
|
|
79
|
+
if (!meta) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const uiDef = {
|
|
83
|
+
name: '',
|
|
84
|
+
createdTimestamp: 0,
|
|
85
|
+
primary: true,
|
|
86
|
+
type: 'DEFAULT',
|
|
87
|
+
version: 2,
|
|
88
|
+
children: [
|
|
89
|
+
{
|
|
90
|
+
children: [],
|
|
91
|
+
template: meta.html && btoa(meta.html),
|
|
92
|
+
script: meta.js && btoa(meta.js),
|
|
93
|
+
styles: meta.css && btoa(meta.css),
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
};
|
|
97
|
+
return uiDef;
|
|
98
|
+
}));
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
CatalogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogComponent, deps: [{ token: i1.UITemplatesApiService }, { token: i2.ContextService }, { token: i0.ChangeDetectorRef }, { token: i3.ToastService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
102
|
+
CatalogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CatalogComponent, selector: "vl-flow-catalog", ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i4.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
103
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogComponent, decorators: [{
|
|
104
|
+
type: Component,
|
|
105
|
+
args: [{
|
|
106
|
+
selector: 'vl-flow-catalog',
|
|
107
|
+
templateUrl: './catalog.component.html',
|
|
108
|
+
styleUrls: ['./catalog.component.scss'],
|
|
109
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
110
|
+
}]
|
|
111
|
+
}], ctorParameters: function () { return [{ type: i1.UITemplatesApiService }, { type: i2.ContextService }, { type: i0.ChangeDetectorRef }, { type: i3.ToastService }, { type: undefined, decorators: [{
|
|
112
|
+
type: Optional
|
|
113
|
+
}, {
|
|
114
|
+
type: Inject,
|
|
115
|
+
args: [FLOW_CUSTOMIZATION]
|
|
116
|
+
}] }]; } });
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvY2F0YWxvZy9jYXRhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9jYXRhbG9nL2NhdGFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsTUFBTSxFQUdOLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQWdCLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdELE9BQU8sRUFJTCx1QkFBdUIsRUFDdkIsY0FBYyxHQUNmLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVHLE9BQU8sRUFBcUIsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7QUFhcEUsTUFBTSxPQUFPLGdCQUFnQjtJQU8zQixZQUNVLFlBQW1DLEVBQ25DLGNBQThCLEVBQzlCLEdBQXNCLEVBQ3RCLFlBQTBCLEVBQ2Msb0JBQXdDOztRQUpoRixpQkFBWSxHQUFaLFlBQVksQ0FBdUI7UUFDbkMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ2MseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFvQjtRQVhuRixpQkFBWSxHQUFrQixTQUFTLENBQUM7UUFDeEMsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFRLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxF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QUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUMsQ0FBQyxFQUN0RSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDVCxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNULE9BQU87YUFDUjtZQUVELE1BQU0sS0FBSyxHQUFpQjtnQkFDMUIsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDbkIsT0FBTyxFQUFFLElBQUk7Z0JBQ2IsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsUUFBUSxFQUFFO29CQUNSO3dCQUNFLFFBQVEsRUFBRSxFQUFFO3dCQUNaLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO3dCQUN0QyxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzt3QkFDaEMsTUFBTSxFQUFFLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7cUJBQ25DO2lCQUNGO2FBQ0YsQ0FBQztZQUVGLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7OzhHQXRIVSxnQkFBZ0Isa0pBWUwsa0JBQWtCO2tHQVo3QixnQkFBZ0IsdURDakM3Qix3VkFTQTs0RkR3QmEsZ0JBQWdCO2tCQU41QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFdBQVcsRUFBRSwwQkFBMEI7b0JBQ3ZDLFNBQVMsRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUN2QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQWFJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVJVGVtcGxhdGVzQXBpU2VydmljZSB9IGZyb20gJ0B2ZWxvY2UvYXBpJztcbmltcG9ydCB7IFRvYXN0U2VydmljZSwgVG9hc3RUeXBlIH0gZnJvbSAnQHZlbG9jZS9jb21wb25lbnRzJztcbmltcG9ydCB7XG4gIENvbXBvbmVudEF0dGFjaG1lbnRzLFxuICBUZW1wbGF0ZUNvbXBvbmVudCxcbiAgVUlUZW1wbGF0ZSxcbiAgVUlUZW1wbGF0ZUNvbXBvbmVudFR5cGUsXG4gIFVJVGVtcGxhdGVUeXBlLFxufSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2UsIFVJRGVmaW5pdGlvbiB9IGZyb20gJ0B2ZWxvY2Uvc2RrL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjYXRjaEVycm9yLCBtYXAsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0LCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93Q3VzdG9taXphdGlvbiwgRkxPV19DVVNUT01JWkFUSU9OIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5pbnRlcmZhY2UgU3RhdGUge1xuICBsb2FkaW5nOiBib29sZWFuO1xuICBmYWlsdXJlOiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2bC1mbG93LWNhdGFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2F0YWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhdGFsb2cuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIENhdGFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyB1aURlZmluaXRpb24/OiBVSURlZmluaXRpb24gPSB1bmRlZmluZWQ7XG4gIHB1YmxpYyBzdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFN0YXRlPih7IGxvYWRpbmc6IHRydWUsIGZhaWx1cmU6IGZhbHNlIH0pO1xuXG4gIHByaXZhdGUgdGVtcGxhdGVBcGlOYW1lID0gJyc7XG4gIHByaXZhdGUgZGVzdHJveWVkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0ZW1wbGF0ZXNBcGk6IFVJVGVtcGxhdGVzQXBpU2VydmljZSxcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSB0b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZMT1dfQ1VTVE9NSVpBVElPTikgcHJpdmF0ZSBjdXN0b21pemF0aW9uU2VydmljZT86IEZsb3dDdXN0b21pemF0aW9uLFxuICApIHtcbiAgICB0aGlzLnRlbXBsYXRlQXBpTmFtZSA9IHRoaXMuY29udGV4dFNlcnZpY2UucmVzb2x2ZSgpLnByb3BlcnRpZXMuY2F0YWxvZ1RlbXBsYXRlQXBpTmFtZSA/PyAnJztcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZ2VuZXJhdGVVSURlZmluaXRpb24kKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAodWlEZWYgPT4ge1xuICAgICAgICAgIGlmICghdWlEZWYpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29tcG9uZW50IHdpdGggbmFtZSAnJHt0aGlzLnRlbXBsYXRlQXBpTmFtZX0nIG5vdCBmb3VuZC5gKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLnVpRGVmaW5pdGlvbiA9IHVpRGVmO1xuICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogZmFsc2UgfSk7XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKGVyciA9PiB7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9ICdGYWlsZWQgdG8gcmVzb2x2ZSBDYXRhbG9nIGNvbXBvbmVudC4gJyArIChlcnIubWVzc2FnZSA/PyAnJyk7XG4gICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6IFRvYXN0VHlwZS5lcnJvciwgc3VtbWFyeTogbWVzc2FnZSwgc3RpY2t5OiB0cnVlIH0pO1xuXG4gICAgICAgICAgdGhpcy51aURlZmluaXRpb24gPSB1bmRlZmluZWQ7XG4gICAgICAgICAgdGhpcy5zdGF0ZSQubmV4dCh7IGxvYWRpbmc6IGZhbHNlLCBmYWlsdXJlOiB0cnVlIH0pO1xuICAgICAgICAgIHJldHVybiBvZigpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRUZW1wbGF0ZVJvb3RDb21wb25lbnQkKHRlbXBsYXRlOiBVSVRlbXBsYXRlKTogT2JzZXJ2YWJsZTxUZW1wbGF0ZUNvbXBvbmVudCB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLnRlbXBsYXRlc0FwaVxuICAgICAgLmZldGNoQ29tcG9uZW50cyQodGVtcGxhdGUuaWQpXG4gICAgICAucGlwZShtYXAoY29tcG9uZW50cyA9PiBjb21wb25lbnRzLmZpbmQoYyA9PiBjLnR5cGUgPT09IFVJVGVtcGxhdGVDb21wb25lbnRUeXBlLlJPT1QpID8/IHVuZGVmaW5lZCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2NhbENhdGFsb2dDb21wb25lbnRNZXRhJCgpOiBPYnNlcnZhYmxlPENvbXBvbmVudEF0dGFjaG1lbnRzIHwgdW5kZWZpbmVkPiB7XG4gICAgaWYgKCF0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlPy5nZXRDYXRhbG9nQ29tcG9uZW50KSB7XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jdXN0b21pemF0aW9uU2VydmljZT8uZ2V0Q2F0YWxvZ0NvbXBvbmVudCh0aGlzLnRlbXBsYXRlQXBpTmFtZSkucGlwZShcbiAgICAgIG1hcChjb21wb25lbnQgPT4ge1xuICAgICAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiA8Q29tcG9uZW50QXR0YWNobWVudHM+e1xuICAgICAgICAgIGh0bWw6IGNvbXBvbmVudC5odG1sLFxuICAgICAgICAgIGNzczogY29tcG9uZW50LmNzcyxcbiAgICAgICAgICBqczogY29tcG9uZW50LmpzLFxuICAgICAgICAgIGpzb246IGNvbXBvbmVudC5qc29uLFxuICAgICAgICB9O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q2F0YWxvZ0NvbXBvbmVudE1ldGEkKCkge1xuICAgIHJldHVybiB0aGlzLnRlbXBsYXRlc0FwaS5mZXRjaFRlbXBsYXRlcyQoKS5waXBlKFxuICAgICAgbWFwPFVJVGVtcGxhdGVbXSwgVUlUZW1wbGF0ZSB8IHVuZGVmaW5lZD4odGVtcGxhdGVzID0+XG4gICAgICAgIHRlbXBsYXRlcy5maW5kKHRlbXBsYXRlID0+IHRlbXBsYXRlLnR5cGUgPT09IFVJVGVtcGxhdGVUeXBlLkNBVEFMT0cgJiYgdGVtcGxhdGUubmFtZSA9PT0gdGhpcy50ZW1wbGF0ZUFwaU5hbWUpLFxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcCh0ZW1wbGF0ZSA9PiAodGVtcGxhdGUgPyB0aGlzLmdldFRlbXBsYXRlUm9vdENvbXBvbmVudCQodGVtcGxhdGUpIDogb2YodW5kZWZpbmVkKSkpLFxuICAgICAgc3dpdGNoTWFwKGNvbXBvbmVudCA9PlxuICAgICAgICBjb21wb25lbnQgPyB0aGlzLnRlbXBsYXRlc0FwaS5mZXRjaENvbXBvbmVudEF0dGFjaG1lbnRzJChjb21wb25lbnQudWlUZW1wbGF0ZUlkLCBjb21wb25lbnQpIDogb2YodW5kZWZpbmVkKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVVSURlZmluaXRpb24kKCk6IE9ic2VydmFibGU8VUlEZWZpbml0aW9uIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIG9mKHVuZGVmaW5lZCkucGlwZShcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZUFwaU5hbWUpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJGbG93IFF1ZXJ5IHBhcmFtZXRlciAnY2F0YWxvZ1RlbXBsYXRlQXBpTmFtZScgaXMgbWlzc2luZy5cIik7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuZ2V0TG9jYWxDYXRhbG9nQ29tcG9uZW50TWV0YSQoKSksXG4gICAgICBzd2l0Y2hNYXAobWV0YSA9PiAobWV0YSA/IG9mKG1ldGEpIDogdGhpcy5nZXRDYXRhbG9nQ29tcG9uZW50TWV0YSQoKSkpLFxuICAgICAgbWFwKG1ldGEgPT4ge1xuICAgICAgICBpZiAoIW1ldGEpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB1aURlZjogVUlEZWZpbml0aW9uID0ge1xuICAgICAgICAgIG5hbWU6ICcnLFxuICAgICAgICAgIGNyZWF0ZWRUaW1lc3RhbXA6IDAsXG4gICAgICAgICAgcHJpbWFyeTogdHJ1ZSxcbiAgICAgICAgICB0eXBlOiAnREVGQVVMVCcsXG4gICAgICAgICAgdmVyc2lvbjogMixcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICAgICAgICAgIHRlbXBsYXRlOiBtZXRhLmh0bWwgJiYgYnRvYShtZXRhLmh0bWwpLFxuICAgICAgICAgICAgICBzY3JpcHQ6IG1ldGEuanMgJiYgYnRvYShtZXRhLmpzKSxcbiAgICAgICAgICAgICAgc3R5bGVzOiBtZXRhLmNzcyAmJiBidG9hKG1ldGEuY3NzKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdWlEZWY7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwic3RhdGUkIHwgYXN5bmMgYXMgc3RhdGVcIj5cbiAgPHZsLWxvYWRlciAqbmdJZj1cInN0YXRlLmxvYWRpbmc7IGVsc2UgY29udGVudFwiIFtsYWJlbF09XCInTG9hZGluZyBVSSdcIj48L3ZsLWxvYWRlcj5cblxuICA8bmctdGVtcGxhdGUgI2NvbnRlbnQ+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdGF0ZS5mYWlsdXJlXCI+XG4gICAgICA8dmwtY21zLXByZXZpZXcgW3VpRGVmaW5pdGlvbl09XCJ1aURlZmluaXRpb25cIj48L3ZsLWNtcy1wcmV2aWV3PlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { LoaderModule } from '@veloce/components';
|
|
4
|
+
import { PreviewModule } from '@veloce/sdk/cms';
|
|
5
|
+
import { CatalogComponent } from './catalog.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class CatalogModule {
|
|
8
|
+
}
|
|
9
|
+
CatalogModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
CatalogModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogModule, declarations: [CatalogComponent], imports: [CommonModule, PreviewModule, LoaderModule], exports: [CatalogComponent] });
|
|
11
|
+
CatalogModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogModule, imports: [[CommonModule, PreviewModule, LoaderModule]] });
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CatalogModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
declarations: [CatalogComponent],
|
|
16
|
+
imports: [CommonModule, PreviewModule, LoaderModule],
|
|
17
|
+
exports: [CatalogComponent],
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvY2F0YWxvZy9jYXRhbG9nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU92RCxNQUFNLE9BQU8sYUFBYTs7MkdBQWIsYUFBYTs0R0FBYixhQUFhLGlCQUpULGdCQUFnQixhQUNyQixZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksYUFDekMsZ0JBQWdCOzRHQUVmLGFBQWEsWUFIZixDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDOzRGQUd6QyxhQUFhO2tCQUx6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQztvQkFDcEQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2FkZXJNb2R1bGUgfSBmcm9tICdAdmVsb2NlL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgUHJldmlld01vZHVsZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL2Ntcyc7XG5pbXBvcnQgeyBDYXRhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jYXRhbG9nLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0NhdGFsb2dDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQcmV2aWV3TW9kdWxlLCBMb2FkZXJNb2R1bGVdLFxuICBleHBvcnRzOiBbQ2F0YWxvZ0NvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENhdGFsb2dNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { FormControl, FormGroup } from '@angular/forms';
|
|
3
|
+
import { map, shareReplay } from 'rxjs';
|
|
4
|
+
import { getFlowObjectIdPropertyName } from '../../utils';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@veloce/api";
|
|
7
|
+
import * as i2 from "@angular/router";
|
|
8
|
+
import * as i3 from "@veloce/sdk/core";
|
|
9
|
+
import * as i4 from "primeng/dropdown";
|
|
10
|
+
import * as i5 from "primeng/button";
|
|
11
|
+
import * as i6 from "primeng/radiobutton";
|
|
12
|
+
import * as i7 from "@angular/forms";
|
|
13
|
+
import * as i8 from "primeng/inputtext";
|
|
14
|
+
import * as i9 from "@angular/common";
|
|
15
|
+
export class DebugComponent {
|
|
16
|
+
constructor(flowsApiService, router, activatedRoute, context, flowConfiguration, quoteDraftService) {
|
|
17
|
+
this.flowsApiService = flowsApiService;
|
|
18
|
+
this.router = router;
|
|
19
|
+
this.activatedRoute = activatedRoute;
|
|
20
|
+
this.context = context;
|
|
21
|
+
this.flowConfiguration = flowConfiguration;
|
|
22
|
+
this.quoteDraftService = quoteDraftService;
|
|
23
|
+
this.objectNames = ['Account', 'Quote', 'Order'];
|
|
24
|
+
this.form = new FormGroup({
|
|
25
|
+
id: new FormControl(''),
|
|
26
|
+
name: new FormControl('Quote'),
|
|
27
|
+
});
|
|
28
|
+
this.flows$ = this.flowsApiService.fetchFlows().pipe(map(flows => flows.map(flow => {
|
|
29
|
+
var _a, _b, _c;
|
|
30
|
+
const queryParams = (_b = (_a = flow === null || flow === void 0 ? void 0 : flow.properties) === null || _a === void 0 ? void 0 : _a.queryParams) !== null && _b !== void 0 ? _b : {};
|
|
31
|
+
return {
|
|
32
|
+
id: flow.id,
|
|
33
|
+
entryPath: (_c = flow === null || flow === void 0 ? void 0 : flow.properties) === null || _c === void 0 ? void 0 : _c.entryPath,
|
|
34
|
+
queryParams,
|
|
35
|
+
queryParamsStr: JSON.stringify(queryParams),
|
|
36
|
+
};
|
|
37
|
+
})), shareReplay());
|
|
38
|
+
}
|
|
39
|
+
runFlow() {
|
|
40
|
+
const { id, name } = this.form.value;
|
|
41
|
+
const objectPropertyName = getFlowObjectIdPropertyName(name);
|
|
42
|
+
if (!id || !this.selectedFlow) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
// Delete context before starting a new flow
|
|
46
|
+
this.context.delete();
|
|
47
|
+
this.quoteDraftService.reset();
|
|
48
|
+
this.router.navigate(['..', 'flows'], {
|
|
49
|
+
queryParams: Object.assign({ flowId: this.selectedFlow.id, [objectPropertyName]: id }, this.selectedFlow.queryParams),
|
|
50
|
+
relativeTo: this.activatedRoute,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
DebugComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DebugComponent, deps: [{ token: i1.FlowsApiService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.ContextService }, { token: i3.FlowConfigurationService }, { token: i3.QuoteDraftService }], target: i0.ɵɵFactoryTarget.Component });
|
|
55
|
+
DebugComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: DebugComponent, selector: "vl-flow-debug", ngImport: i0, template: "<form [formGroup]=\"form\">\n <div class=\"fields-container\">\n <div class=\"field\">\n <label>SF Object ID</label>\n <input formControlName=\"id\" pInputText type=\"text\" />\n </div>\n\n <div class=\"field\">\n <label>SF Object Name</label>\n <p-dropdown\n appendTo=\"body\"\n formControlName=\"name\"\n [autoDisplayFirst]=\"false\"\n [options]=\"objectNames\"\n ></p-dropdown>\n </div>\n </div>\n\n <p-button\n styleClass=\"p-button-primary\"\n label=\"Run Flow\"\n [disabled]=\"!form.value.id || !selectedFlow\"\n (onClick)=\"runFlow()\"\n ></p-button>\n</form>\n\n<table>\n <thead>\n <tr>\n <th [width]=\"30\"></th>\n <th [width]=\"160\">ID</th>\n <th [width]=\"160\">Entry Path</th>\n <th>QueryParams</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let flow of flows$ | async\" (click)=\"selectedFlow = flow\">\n <td><p-radioButton [inputId]=\"flow.id\" name=\"flow\" [value]=\"flow\" [(ngModel)]=\"selectedFlow\"></p-radioButton></td>\n <td>{{ flow.id }}</td>\n <td>{{ flow.entryPath }}</td>\n <td>{{ flow.queryParamsStr }}</td>\n </tr>\n </tbody>\n</table>\n", styles: [":host{display:block;padding:24px 54px}form{display:flex;align-items:center;justify-content:space-between}.fields-container{display:flex;grid-gap:24px;gap:24px}.field{display:flex;flex-direction:column;width:200px;flex-shrink:0}:host ::ng-deep .p-dropdown{width:100%}table{width:100%;border-collapse:collapse}tr{cursor:pointer}tr:hover{background-color:#f0f5fa}th{text-align:left;font-weight:600}th,td{padding:0 10px;height:30px;border-bottom:1px solid var(--vl-border-color);margin-right:16px}\n"], components: [{ type: i4.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "virtualScroll", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "ariaFilterLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "disabled", "options", "filterValue"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear"] }, { type: i5.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i6.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass"], outputs: ["onClick", "onFocus", "onBlur"] }], directives: [{ type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i8.InputText, selector: "[pInputText]" }, { type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i9.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DebugComponent, decorators: [{
|
|
57
|
+
type: Component,
|
|
58
|
+
args: [{
|
|
59
|
+
selector: 'vl-flow-debug',
|
|
60
|
+
templateUrl: './debug.component.html',
|
|
61
|
+
styleUrls: ['./debug.component.scss'],
|
|
62
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
63
|
+
}]
|
|
64
|
+
}], ctorParameters: function () { return [{ type: i1.FlowsApiService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.ContextService }, { type: i3.FlowConfigurationService }, { type: i3.QuoteDraftService }]; } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2RlYnVnL2RlYnVnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9kZWJ1Zy9kZWJ1Zy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLeEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7OztBQVkxRCxNQUFNLE9BQU8sY0FBYztJQVV6QixZQUNVLGVBQWdDLEVBQ2hDLE1BQWMsRUFDZCxjQUE4QixFQUM5QixPQUF1QixFQUN2QixpQkFBMkMsRUFDM0MsaUJBQW9DO1FBTHBDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBMEI7UUFDM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQWY5QixnQkFBVyxHQUFHLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNyRCxTQUFJLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDMUIsRUFBRSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUN2QixJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsT0FBTyxDQUFDO1NBQy9CLENBQUMsQ0FBQztRQWFELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQ2xELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNWLEtBQUssQ0FBQyxHQUFHLENBQW9CLElBQUksQ0FBQyxFQUFFOztZQUNsQyxNQUFNLFdBQVcsR0FBVyxNQUFBLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLFVBQVUsMENBQUUsV0FBVyxtQ0FBSSxFQUFFLENBQUM7WUFDaEUsT0FBTztnQkFDTCxFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7Z0JBQ1gsU0FBUyxFQUFFLE1BQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLFVBQVUsMENBQUUsU0FBUztnQkFDdEMsV0FBVztnQkFDWCxjQUFjLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUM7YUFDNUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILEVBQ0QsV0FBVyxFQUFFLENBQ2QsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPO1FBQ0wsTUFBTSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNyQyxNQUFNLGtCQUFrQixHQUFHLDJCQUEyQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdELElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQzdCLE9BQU87U0FDUjtRQUVELDRDQUE0QztRQUM1QyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUUvQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBRTtZQUNwQyxXQUFXLGtCQUNULE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFDNUIsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEVBQUUsSUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQ2pDO1lBQ0QsVUFBVSxFQUFFLElBQUksQ0FBQyxjQUFjO1NBQ2hDLENBQUMsQ0FBQztJQUNMLENBQUM7OzRHQXREVSxjQUFjO2dHQUFkLGNBQWMscURDbkIzQix1ckNBNENBOzRGRHpCYSxjQUFjO2tCQU4xQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsd0JBQXdCO29CQUNyQyxTQUFTLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGbG93c0FwaVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlL2FwaSc7XG5pbXBvcnQgeyBGbG93UHJvcGVydGllcyB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSwgRmxvd0NvbmZpZ3VyYXRpb25TZXJ2aWNlLCBRdW90ZURyYWZ0U2VydmljZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZ2V0Rmxvd09iamVjdElkUHJvcGVydHlOYW1lIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5pbnRlcmZhY2UgRmxvd1Byb3BlcnRpZXNFeHQgZXh0ZW5kcyBGbG93UHJvcGVydGllcyB7XG4gIHF1ZXJ5UGFyYW1zU3RyOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctZGVidWcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVidWcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZWJ1Zy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRGVidWdDb21wb25lbnQge1xuICBwdWJsaWMgcmVhZG9ubHkgb2JqZWN0TmFtZXMgPSBbJ0FjY291bnQnLCAnUXVvdGUnLCAnT3JkZXInXTtcbiAgcHVibGljIGZvcm0gPSBuZXcgRm9ybUdyb3VwKHtcbiAgICBpZDogbmV3IEZvcm1Db250cm9sKCcnKSxcbiAgICBuYW1lOiBuZXcgRm9ybUNvbnRyb2woJ1F1b3RlJyksXG4gIH0pO1xuXG4gIHB1YmxpYyBzZWxlY3RlZEZsb3c/OiBGbG93UHJvcGVydGllc0V4dDtcbiAgcHVibGljIGZsb3dzJDogT2JzZXJ2YWJsZTxGbG93UHJvcGVydGllc0V4dFtdPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZsb3dzQXBpU2VydmljZTogRmxvd3NBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBjb250ZXh0OiBDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIGZsb3dDb25maWd1cmF0aW9uOiBGbG93Q29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBxdW90ZURyYWZ0U2VydmljZTogUXVvdGVEcmFmdFNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuZmxvd3MkID0gdGhpcy5mbG93c0FwaVNlcnZpY2UuZmV0Y2hGbG93cygpLnBpcGUoXG4gICAgICBtYXAoZmxvd3MgPT5cbiAgICAgICAgZmxvd3MubWFwPEZsb3dQcm9wZXJ0aWVzRXh0PihmbG93ID0+IHtcbiAgICAgICAgICBjb25zdCBxdWVyeVBhcmFtczogUGFyYW1zID0gZmxvdz8ucHJvcGVydGllcz8ucXVlcnlQYXJhbXMgPz8ge307XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiBmbG93LmlkLFxuICAgICAgICAgICAgZW50cnlQYXRoOiBmbG93Py5wcm9wZXJ0aWVzPy5lbnRyeVBhdGgsXG4gICAgICAgICAgICBxdWVyeVBhcmFtcyxcbiAgICAgICAgICAgIHF1ZXJ5UGFyYW1zU3RyOiBKU09OLnN0cmluZ2lmeShxdWVyeVBhcmFtcyksXG4gICAgICAgICAgfTtcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgc2hhcmVSZXBsYXkoKSxcbiAgICApO1xuICB9XG5cbiAgcnVuRmxvdygpIHtcbiAgICBjb25zdCB7IGlkLCBuYW1lIH0gPSB0aGlzLmZvcm0udmFsdWU7XG4gICAgY29uc3Qgb2JqZWN0UHJvcGVydHlOYW1lID0gZ2V0Rmxvd09iamVjdElkUHJvcGVydHlOYW1lKG5hbWUpO1xuXG4gICAgaWYgKCFpZCB8fCAhdGhpcy5zZWxlY3RlZEZsb3cpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBEZWxldGUgY29udGV4dCBiZWZvcmUgc3RhcnRpbmcgYSBuZXcgZmxvd1xuICAgIHRoaXMuY29udGV4dC5kZWxldGUoKTtcbiAgICB0aGlzLnF1b3RlRHJhZnRTZXJ2aWNlLnJlc2V0KCk7XG5cbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4uJywgJ2Zsb3dzJ10sIHtcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7XG4gICAgICAgIGZsb3dJZDogdGhpcy5zZWxlY3RlZEZsb3cuaWQsXG4gICAgICAgIFtvYmplY3RQcm9wZXJ0eU5hbWVdOiBpZCxcbiAgICAgICAgLi4udGhpcy5zZWxlY3RlZEZsb3cucXVlcnlQYXJhbXMsXG4gICAgICB9LFxuICAgICAgcmVsYXRpdmVUbzogdGhpcy5hY3RpdmF0ZWRSb3V0ZSxcbiAgICB9KTtcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gIDxkaXYgY2xhc3M9XCJmaWVsZHMtY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XG4gICAgICA8bGFiZWw+U0YgT2JqZWN0IElEPC9sYWJlbD5cbiAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJpZFwiIHBJbnB1dFRleHQgdHlwZT1cInRleHRcIiAvPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XG4gICAgICA8bGFiZWw+U0YgT2JqZWN0IE5hbWU8L2xhYmVsPlxuICAgICAgPHAtZHJvcGRvd25cbiAgICAgICAgYXBwZW5kVG89XCJib2R5XCJcbiAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgIFthdXRvRGlzcGxheUZpcnN0XT1cImZhbHNlXCJcbiAgICAgICAgW29wdGlvbnNdPVwib2JqZWN0TmFtZXNcIlxuICAgICAgPjwvcC1kcm9wZG93bj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPHAtYnV0dG9uXG4gICAgc3R5bGVDbGFzcz1cInAtYnV0dG9uLXByaW1hcnlcIlxuICAgIGxhYmVsPVwiUnVuIEZsb3dcIlxuICAgIFtkaXNhYmxlZF09XCIhZm9ybS52YWx1ZS5pZCB8fCAhc2VsZWN0ZWRGbG93XCJcbiAgICAob25DbGljayk9XCJydW5GbG93KClcIlxuICA+PC9wLWJ1dHRvbj5cbjwvZm9ybT5cblxuPHRhYmxlPlxuICA8dGhlYWQ+XG4gICAgPHRyPlxuICAgICAgPHRoIFt3aWR0aF09XCIzMFwiPjwvdGg+XG4gICAgICA8dGggW3dpZHRoXT1cIjE2MFwiPklEPC90aD5cbiAgICAgIDx0aCBbd2lkdGhdPVwiMTYwXCI+RW50cnkgUGF0aDwvdGg+XG4gICAgICA8dGg+UXVlcnlQYXJhbXM8L3RoPlxuICAgIDwvdHI+XG4gIDwvdGhlYWQ+XG4gIDx0Ym9keT5cbiAgICA8dHIgKm5nRm9yPVwibGV0IGZsb3cgb2YgZmxvd3MkIHwgYXN5bmNcIiAoY2xpY2spPVwic2VsZWN0ZWRGbG93ID0gZmxvd1wiPlxuICAgICAgPHRkPjxwLXJhZGlvQnV0dG9uIFtpbnB1dElkXT1cImZsb3cuaWRcIiBuYW1lPVwiZmxvd1wiIFt2YWx1ZV09XCJmbG93XCIgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEZsb3dcIj48L3AtcmFkaW9CdXR0b24+PC90ZD5cbiAgICAgIDx0ZD57eyBmbG93LmlkIH19PC90ZD5cbiAgICAgIDx0ZD57eyBmbG93LmVudHJ5UGF0aCB9fTwvdGQ+XG4gICAgICA8dGQ+e3sgZmxvdy5xdWVyeVBhcmFtc1N0ciB9fTwvdGQ+XG4gICAgPC90cj5cbiAgPC90Ym9keT5cbjwvdGFibGU+XG4iXX0=
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { RouterModule } from '@angular/router';
|
|
5
|
+
import { ButtonModule } from 'primeng/button';
|
|
6
|
+
import { DropdownModule } from 'primeng/dropdown';
|
|
7
|
+
import { InputTextModule } from 'primeng/inputtext';
|
|
8
|
+
import { RadioButtonModule } from 'primeng/radiobutton';
|
|
9
|
+
import { DebugComponent } from './debug.component';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/router";
|
|
12
|
+
const routes = [{ path: '', component: DebugComponent }];
|
|
13
|
+
export class DebugModule {
|
|
14
|
+
}
|
|
15
|
+
DebugModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DebugModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
16
|
+
DebugModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DebugModule, declarations: [DebugComponent], imports: [CommonModule,
|
|
17
|
+
FormsModule,
|
|
18
|
+
ReactiveFormsModule, i1.RouterModule, RadioButtonModule,
|
|
19
|
+
ButtonModule,
|
|
20
|
+
InputTextModule,
|
|
21
|
+
DropdownModule] });
|
|
22
|
+
DebugModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DebugModule, imports: [[
|
|
23
|
+
CommonModule,
|
|
24
|
+
FormsModule,
|
|
25
|
+
ReactiveFormsModule,
|
|
26
|
+
RouterModule.forChild(routes),
|
|
27
|
+
RadioButtonModule,
|
|
28
|
+
ButtonModule,
|
|
29
|
+
InputTextModule,
|
|
30
|
+
DropdownModule,
|
|
31
|
+
]] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DebugModule, decorators: [{
|
|
33
|
+
type: NgModule,
|
|
34
|
+
args: [{
|
|
35
|
+
declarations: [DebugComponent],
|
|
36
|
+
imports: [
|
|
37
|
+
CommonModule,
|
|
38
|
+
FormsModule,
|
|
39
|
+
ReactiveFormsModule,
|
|
40
|
+
RouterModule.forChild(routes),
|
|
41
|
+
RadioButtonModule,
|
|
42
|
+
ButtonModule,
|
|
43
|
+
InputTextModule,
|
|
44
|
+
DropdownModule,
|
|
45
|
+
],
|
|
46
|
+
}]
|
|
47
|
+
}] });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2RlYnVnL2RlYnVnLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBRW5ELE1BQU0sTUFBTSxHQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0FBZWpFLE1BQU0sT0FBTyxXQUFXOzt5R0FBWCxXQUFXOzBHQUFYLFdBQVcsaUJBWlAsY0FBYyxhQUUzQixZQUFZO1FBQ1osV0FBVztRQUNYLG1CQUFtQixtQkFFbkIsaUJBQWlCO1FBQ2pCLFlBQVk7UUFDWixlQUFlO1FBQ2YsY0FBYzswR0FHTCxXQUFXLFlBWGI7WUFDUCxZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUM3QixpQkFBaUI7WUFDakIsWUFBWTtZQUNaLGVBQWU7WUFDZixjQUFjO1NBQ2Y7NEZBRVUsV0FBVztrQkFidkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQzlCLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQzt3QkFDN0IsaUJBQWlCO3dCQUNqQixZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsY0FBYztxQkFDZjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5pbXBvcnQgeyBEcm9wZG93bk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvZHJvcGRvd24nO1xuaW1wb3J0IHsgSW5wdXRUZXh0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dHRleHQnO1xuaW1wb3J0IHsgUmFkaW9CdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3JhZGlvYnV0dG9uJztcbmltcG9ydCB7IERlYnVnQ29tcG9uZW50IH0gZnJvbSAnLi9kZWJ1Zy5jb21wb25lbnQnO1xuXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFt7IHBhdGg6ICcnLCBjb21wb25lbnQ6IERlYnVnQ29tcG9uZW50IH1dO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtEZWJ1Z0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQocm91dGVzKSxcbiAgICBSYWRpb0J1dHRvbk1vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgIERyb3Bkb3duTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEZWJ1Z01vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { Component, Inject, Optional } from '@angular/core';
|
|
2
|
+
import { EntityUtil } from '@veloce/core';
|
|
3
|
+
import { RuntimeOperation } from '@veloce/sdk/core';
|
|
4
|
+
import { of, Subject } from 'rxjs';
|
|
5
|
+
import { first, map, switchMap, take, takeUntil } from 'rxjs/operators';
|
|
6
|
+
import { FLOW_CUSTOMIZATION } from '../../types';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/router";
|
|
9
|
+
import * as i2 from "@veloce/sdk/core";
|
|
10
|
+
import * as i3 from "@veloce/api";
|
|
11
|
+
import * as i4 from "@veloce/sdk/runtime";
|
|
12
|
+
export class LegacyProductComponent {
|
|
13
|
+
constructor(route, quoteDraftService, quoteApiService, contextService, runtimeContextService, runtimeService, currentStateService, customizationService) {
|
|
14
|
+
this.route = route;
|
|
15
|
+
this.quoteDraftService = quoteDraftService;
|
|
16
|
+
this.quoteApiService = quoteApiService;
|
|
17
|
+
this.contextService = contextService;
|
|
18
|
+
this.runtimeContextService = runtimeContextService;
|
|
19
|
+
this.runtimeService = runtimeService;
|
|
20
|
+
this.currentStateService = currentStateService;
|
|
21
|
+
this.customizationService = customizationService;
|
|
22
|
+
this.destroyed$ = new Subject();
|
|
23
|
+
}
|
|
24
|
+
ngOnInit() {
|
|
25
|
+
this.quoteDraftService.quote$
|
|
26
|
+
.pipe(first(), takeUntil(this.destroyed$))
|
|
27
|
+
.subscribe(quote => this.init(quote, this.route.snapshot.queryParams));
|
|
28
|
+
this.runtimeService.onSolutionStopEvent.pipe(take(1)).subscribe(lineItem => this.onSolutionStop(lineItem));
|
|
29
|
+
this.runtimeService.onSolutionReadyEvent.pipe(take(1)).subscribe(event => this.onSolutionReady(event));
|
|
30
|
+
this.runtimeService.onSolutionCancelEvent.pipe(take(1)).subscribe(() => this.onSolutionCancel());
|
|
31
|
+
}
|
|
32
|
+
ngOnDestroy() {
|
|
33
|
+
this.destroyed$.next();
|
|
34
|
+
this.destroyed$.complete();
|
|
35
|
+
}
|
|
36
|
+
onSolutionReady(lineItem) {
|
|
37
|
+
var _a;
|
|
38
|
+
lineItem.actionCode = (_a = lineItem.actionCode) !== null && _a !== void 0 ? _a : 'ADD';
|
|
39
|
+
}
|
|
40
|
+
onSolutionCancel() {
|
|
41
|
+
this.quoteDraftService.quote$.pipe(first(), takeUntil(this.destroyed$)).subscribe(quote => {
|
|
42
|
+
window['VELO_BACK_FN'].apply(null, [quote.quoteId]);
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
onSolutionUpdated(lineItem) {
|
|
46
|
+
const states = {
|
|
47
|
+
configurableRamp: lineItem,
|
|
48
|
+
currentState: this.currentStateService.currentState,
|
|
49
|
+
asset: this.getAsset(lineItem),
|
|
50
|
+
};
|
|
51
|
+
this.runtimeService.updateRuntime(states);
|
|
52
|
+
}
|
|
53
|
+
onSolutionStop(lineItem) {
|
|
54
|
+
this.quoteDraftService.quote$.pipe(first(), takeUntil(this.destroyed$)).subscribe(quote => {
|
|
55
|
+
const quoteToUpsert = Object.assign(Object.assign({}, quote), { context: this.contextService.resolve(), currentState: [...(this.currentStateService.currentState || []).filter(li => li.id !== lineItem.id), lineItem] });
|
|
56
|
+
this.quoteApiService
|
|
57
|
+
.upsertQuote(quoteToUpsert)
|
|
58
|
+
.pipe(take(1))
|
|
59
|
+
.subscribe(quote => {
|
|
60
|
+
window['VELO_BACK_FN'].apply(null, [quote.quoteId]);
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
init(quote, queryParams) {
|
|
65
|
+
const productId = queryParams['productId'];
|
|
66
|
+
const lineItemId = this.getLineItemId(quote, queryParams);
|
|
67
|
+
this.assets = quote.initialState;
|
|
68
|
+
lineItemId && quote.currentState ? this.reConfigure(lineItemId, quote.currentState) : this.configure(productId);
|
|
69
|
+
}
|
|
70
|
+
getLineItemId(quote, queryParams) {
|
|
71
|
+
if (EntityUtil.isPresent(queryParams['lineItemId'])) {
|
|
72
|
+
return queryParams['lineItemId'];
|
|
73
|
+
}
|
|
74
|
+
return quote.currentState
|
|
75
|
+
.filter(lineItem => lineItem.productId === queryParams['productId'])
|
|
76
|
+
.map(lineItem => lineItem.id)
|
|
77
|
+
.find(id => id);
|
|
78
|
+
}
|
|
79
|
+
configure(productId) {
|
|
80
|
+
const runtimeContext = this.getRuntimeContext(productId, '', RuntimeOperation.INIT);
|
|
81
|
+
this.startRuntime({}, runtimeContext);
|
|
82
|
+
}
|
|
83
|
+
reConfigure(lineItemId, currentState) {
|
|
84
|
+
const currentStateItem = EntityUtil.findById(lineItemId, currentState);
|
|
85
|
+
const runtimeContext = this.getRuntimeContext(currentStateItem.productId, currentStateItem.offeringId, RuntimeOperation.UPDATE);
|
|
86
|
+
const states = {
|
|
87
|
+
configurableRamp: currentStateItem,
|
|
88
|
+
currentState,
|
|
89
|
+
asset: this.getAsset(currentStateItem),
|
|
90
|
+
};
|
|
91
|
+
this.currentStateService.update(currentState);
|
|
92
|
+
this.startRuntime(states, runtimeContext);
|
|
93
|
+
}
|
|
94
|
+
getAsset(lineItem) {
|
|
95
|
+
return this.assets && this.assets.find(a => a.id === lineItem.openOrderLineItemId || a.id === lineItem.assetId);
|
|
96
|
+
}
|
|
97
|
+
startRuntime(states, runtimeContext$) {
|
|
98
|
+
runtimeContext$
|
|
99
|
+
.pipe(take(1), map(runtimeContext => {
|
|
100
|
+
this.runtimeService.startRuntime(runtimeContext, states);
|
|
101
|
+
}))
|
|
102
|
+
.subscribe();
|
|
103
|
+
}
|
|
104
|
+
customizeContext(productId, context) {
|
|
105
|
+
var _a;
|
|
106
|
+
if (!((_a = this.customizationService) === null || _a === void 0 ? void 0 : _a.getLegacyUiDefinition)) {
|
|
107
|
+
return of(context);
|
|
108
|
+
}
|
|
109
|
+
return this.customizationService.getLegacyUiDefinition(productId).pipe(map(uiDef => (Object.assign(Object.assign({}, context), { uiDefinition: uiDef !== null && uiDef !== void 0 ? uiDef : context.uiDefinition }))));
|
|
110
|
+
}
|
|
111
|
+
getRuntimeContext(productId, offeringId, runtimeOperation) {
|
|
112
|
+
return this.runtimeContextService.getRuntimeContext(productId, offeringId).pipe(map(runtimeContext => {
|
|
113
|
+
runtimeContext.invocationContext = { runtimeOperation: RuntimeOperation[runtimeOperation] };
|
|
114
|
+
return runtimeContext;
|
|
115
|
+
}), switchMap(runtimeContext => this.customizeContext(productId, runtimeContext)));
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
LegacyProductComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LegacyProductComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.QuoteDraftService }, { token: i3.QuoteApiService }, { token: i2.ContextService }, { token: i4.RuntimeContextService }, { token: i4.RuntimeService }, { token: i4.CurrentStateService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
119
|
+
LegacyProductComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: LegacyProductComponent, selector: "ng-component", ngImport: i0, template: "<vl-runtime #runtimeView (solutionUpdated)=\"onSolutionUpdated($event)\"></vl-runtime>\n", styles: [":host{display:block;height:100%}\n"], components: [{ type: i4.RuntimeComponent, selector: "vl-runtime", outputs: ["solutionUpdated"] }] });
|
|
120
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LegacyProductComponent, decorators: [{
|
|
121
|
+
type: Component,
|
|
122
|
+
args: [{
|
|
123
|
+
templateUrl: './legacy-product.component.html',
|
|
124
|
+
styleUrls: ['./legacy-product.component.scss'],
|
|
125
|
+
}]
|
|
126
|
+
}], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.QuoteDraftService }, { type: i3.QuoteApiService }, { type: i2.ContextService }, { type: i4.RuntimeContextService }, { type: i4.RuntimeService }, { type: i4.CurrentStateService }, { type: undefined, decorators: [{
|
|
127
|
+
type: Optional
|
|
128
|
+
}, {
|
|
129
|
+
type: Inject,
|
|
130
|
+
args: [FLOW_CUSTOMIZATION]
|
|
131
|
+
}] }]; } });
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXByb2R1Y3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2xlZ2FjeS1wcm9kdWN0L2xlZ2FjeS1wcm9kdWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9sZWdhY3ktcHJvZHVjdC9sZWdhY3ktcHJvZHVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBcUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sRUFBRSxVQUFVLEVBQWtDLE1BQU0sY0FBYyxDQUFDO0FBQzFFLE9BQU8sRUFBa0QsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVNwRyxPQUFPLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBcUIsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7OztBQVFwRSxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQ1UsS0FBcUIsRUFDckIsaUJBQW9DLEVBQ3BDLGVBQWdDLEVBQ2hDLGNBQThCLEVBQzlCLHFCQUE0QyxFQUM1QyxjQUE4QixFQUM5QixtQkFBd0MsRUFDQSxvQkFBd0M7UUFQaEYsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsbUJBQWMsR0FBZCxjQUFj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LENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FDOUUsQ0FBQztJQUNKLENBQUM7O29IQXpKVSxzQkFBc0Isb1BBYVgsa0JBQWtCO3dHQWI3QixzQkFBc0Isb0RDdkJuQywwRkFDQTs0RkRzQmEsc0JBQXNCO2tCQUpsQyxTQUFTO21CQUFDO29CQUNULFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO2lCQUMvQzs7MEJBY0ksUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFF1b3RlQXBpU2VydmljZSB9IGZyb20gJ0B2ZWxvY2UvYXBpJztcbmltcG9ydCB7IEVudGl0eVV0aWwsIExpbmVJdGVtLCBRdW90ZURyYWZ0LCBWbFdpbmRvdyB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSwgUXVvdGVEcmFmdFNlcnZpY2UsIFF1b3RlU3RhdGVzLCBSdW50aW1lT3BlcmF0aW9uIH0gZnJvbSAnQHZlbG9jZS9zZGsvY29yZSc7XG5pbXBvcnQge1xuICBDdXJyZW50U3RhdGVTZXJ2aWNlLFxuICBMZWdhY3lSdW50aW1lQ29udGV4dCxcbiAgUnVudGltZUNvbnRleHRTZXJ2aWNlLFxuICBSdW50aW1lU2VydmljZSxcbiAgU29sdXRpb25SZWFkeUF3YXJlLFxuICBTb2x1dGlvblVwZGF0ZWRBd2FyZSxcbn0gZnJvbSAnQHZlbG9jZS9zZGsvcnVudGltZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIG1hcCwgc3dpdGNoTWFwLCB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBGbG93Q3VzdG9taXphdGlvbiwgRkxPV19DVVNUT01JWkFUSU9OIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vbGVnYWN5LXByb2R1Y3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sZWdhY3ktcHJvZHVjdC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBMZWdhY3lQcm9kdWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIFNvbHV0aW9uVXBkYXRlZEF3YXJlLCBTb2x1dGlvblJlYWR5QXdhcmUge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgYXNzZXRzPzogTGluZUl0ZW1bXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHF1b3RlRHJhZnRTZXJ2aWNlOiBRdW90ZURyYWZ0U2VydmljZSxcbiAgICBwcml2YXRlIHF1b3RlQXBpU2VydmljZTogUXVvdGVBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcnVudGltZUNvbnRleHRTZXJ2aWNlOiBSdW50aW1lQ29udGV4dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogUnVudGltZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjdXJyZW50U3RhdGVTZXJ2aWNlOiBDdXJyZW50U3RhdGVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRkxPV19DVVNUT01JWkFUSU9OKSBwcml2YXRlIGN1c3RvbWl6YXRpb25TZXJ2aWNlPzogRmxvd0N1c3RvbWl6YXRpb24sXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnF1b3RlRHJhZnRTZXJ2aWNlLnF1b3RlJFxuICAgICAgLnBpcGUoZmlyc3QoKSwgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAuc3Vic2NyaWJlKHF1b3RlID0+IHRoaXMuaW5pdChxdW90ZSwgdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcykpO1xuXG4gICAgdGhpcy5ydW50aW1lU2VydmljZS5vblNvbHV0aW9uU3RvcEV2ZW50LnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGxpbmVJdGVtID0+IHRoaXMub25Tb2x1dGlvblN0b3AobGluZUl0ZW0pKTtcblxuICAgIHRoaXMucnVudGltZVNlcnZpY2Uub25Tb2x1dGlvblJlYWR5RXZlbnQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoZXZlbnQgPT4gdGhpcy5vblNvbHV0aW9uUmVhZHkoZXZlbnQpKTtcblxuICAgIHRoaXMucnVudGltZVNlcnZpY2Uub25Tb2x1dGlvbkNhbmNlbEV2ZW50LnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMub25Tb2x1dGlvbkNhbmNlbCgpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95ZWQkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBvblNvbHV0aW9uUmVhZHkobGluZUl0ZW06IExpbmVJdGVtKTogdm9pZCB7XG4gICAgbGluZUl0ZW0uYWN0aW9uQ29kZSA9IGxpbmVJdGVtLmFjdGlvbkNvZGUgPz8gJ0FERCc7XG4gIH1cblxuICBvblNvbHV0aW9uQ2FuY2VsKCk6IHZvaWQge1xuICAgIHRoaXMucXVvdGVEcmFmdFNlcnZpY2UucXVvdGUkLnBpcGUoZmlyc3QoKSwgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZShxdW90ZSA9PiB7XG4gICAgICB3aW5kb3dbJ1ZFTE9fQkFDS19GTiddLmFwcGx5KG51bGwsIFtxdW90ZS5xdW90ZUlkXSk7XG4gICAgfSk7XG4gIH1cblxuICBvblNvbHV0aW9uVXBkYXRlZChsaW5lSXRlbTogTGluZUl0ZW0pOiB2b2lkIHtcbiAgICBjb25zdCBzdGF0ZXM6IFF1b3RlU3RhdGVzID0ge1xuICAgICAgY29uZmlndXJhYmxlUmFtcDogbGluZUl0ZW0sXG4gICAgICBjdXJyZW50U3RhdGU6IHRoaXMuY3VycmVudFN0YXRlU2VydmljZS5jdXJyZW50U3RhdGUsXG4gICAgICBhc3NldDogdGhpcy5nZXRBc3NldChsaW5lSXRlbSksXG4gICAgfTtcblxuICAgIHRoaXMucnVudGltZVNlcnZpY2UudXBkYXRlUnVudGltZShzdGF0ZXMpO1xuICB9XG5cbiAgb25Tb2x1dGlvblN0b3AobGluZUl0ZW06IExpbmVJdGVtKTogdm9pZCB7XG4gICAgdGhpcy5xdW90ZURyYWZ0U2VydmljZS5xdW90ZSQucGlwZShmaXJzdCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKHF1b3RlID0+IHtcbiAgICAgIGNvbnN0IHF1b3RlVG9VcHNlcnQ6IFF1b3RlRHJhZnQgPSB7XG4gICAgICAgIC4uLnF1b3RlLFxuICAgICAgICBjb250ZXh0OiB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlc29sdmUoKSxcbiAgICAgICAgY3VycmVudFN0YXRlOiBbLi4uKHRoaXMuY3VycmVudFN0YXRlU2VydmljZS5jdXJyZW50U3RhdGUgfHwgW10pLmZpbHRlcihsaSA9PiBsaS5pZCAhPT0gbGluZUl0ZW0uaWQpLCBsaW5lSXRlbV0sXG4gICAgICB9O1xuXG4gICAgICB0aGlzLnF1b3RlQXBpU2VydmljZVxuICAgICAgICAudXBzZXJ0UXVvdGUocXVvdGVUb1Vwc2VydClcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZShxdW90ZSA9PiB7XG4gICAgICAgICAgd2luZG93WydWRUxPX0JBQ0tfRk4nXS5hcHBseShudWxsLCBbcXVvdGUucXVvdGVJZF0pO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHZvaWQge1xuICAgIGNvbnN0IHByb2R1Y3RJZCA9IHF1ZXJ5UGFyYW1zWydwcm9kdWN0SWQnXTtcbiAgICBjb25zdCBsaW5lSXRlbUlkID0gdGhpcy5nZXRMaW5lSXRlbUlkKHF1b3RlLCBxdWVyeVBhcmFtcyk7XG4gICAgdGhpcy5hc3NldHMgPSBxdW90ZS5pbml0aWFsU3RhdGU7XG5cbiAgICBsaW5lSXRlbUlkICYmIHF1b3RlLmN1cnJlbnRTdGF0ZSA/IHRoaXMucmVDb25maWd1cmUobGluZUl0ZW1JZCwgcXVvdGUuY3VycmVudFN0YXRlKSA6IHRoaXMuY29uZmlndXJlKHByb2R1Y3RJZCk7XG4gIH1cblxuICBwcml2YXRlIGdldExpbmVJdGVtSWQocXVvdGU6IFF1b3RlRHJhZnQsIHF1ZXJ5UGFyYW1zOiBQYXJhbXMpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmIChFbnRpdHlVdGlsLmlzUHJlc2VudChxdWVyeVBhcmFtc1snbGluZUl0ZW1JZCddKSkge1xuICAgICAgcmV0dXJuIHF1ZXJ5UGFyYW1zWydsaW5lSXRlbUlkJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIHF1b3RlLmN1cnJlbnRTdGF0ZVxuICAgICAgLmZpbHRlcihsaW5lSXRlbSA9PiBsaW5lSXRlbS5wcm9kdWN0SWQgPT09IHF1ZXJ5UGFyYW1zWydwcm9kdWN0SWQnXSlcbiAgICAgIC5tYXAobGluZUl0ZW0gPT4gbGluZUl0ZW0uaWQpXG4gICAgICAuZmluZChpZCA9PiBpZCk7XG4gIH1cblxuICBwcml2YXRlIGNvbmZpZ3VyZShwcm9kdWN0SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHJ1bnRpbWVDb250ZXh0ID0gdGhpcy5nZXRSdW50aW1lQ29udGV4dChwcm9kdWN0SWQsICcnLCBSdW50aW1lT3BlcmF0aW9uLklOSVQpO1xuXG4gICAgdGhpcy5zdGFydFJ1bnRpbWUoe30sIHJ1bnRpbWVDb250ZXh0KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVDb25maWd1cmUobGluZUl0ZW1JZDogc3RyaW5nLCBjdXJyZW50U3RhdGU6IExpbmVJdGVtW10pOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50U3RhdGVJdGVtID0gRW50aXR5VXRpbC5maW5kQnlJZChsaW5lSXRlbUlkLCBjdXJyZW50U3RhdGUpO1xuICAgIGNvbnN0IHJ1bnRpbWVDb250ZXh0ID0gdGhpcy5nZXRSdW50aW1lQ29udGV4dChcbiAgICAgIGN1cnJlbnRTdGF0ZUl0ZW0ucHJvZHVjdElkLFxuICAgICAgY3VycmVudFN0YXRlSXRlbS5vZmZlcmluZ0lkLFxuICAgICAgUnVudGltZU9wZXJhdGlvbi5VUERBVEUsXG4gICAgKTtcblxuICAgIGNvbnN0IHN0YXRlczogUXVvdGVTdGF0ZXMgPSB7XG4gICAgICBjb25maWd1cmFibGVSYW1wOiBjdXJyZW50U3RhdGVJdGVtLFxuICAgICAgY3VycmVudFN0YXRlLFxuICAgICAgYXNzZXQ6IHRoaXMuZ2V0QXNzZXQoY3VycmVudFN0YXRlSXRlbSksXG4gICAgfTtcblxuICAgIHRoaXMuY3VycmVudFN0YXRlU2VydmljZS51cGRhdGUoY3VycmVudFN0YXRlKTtcbiAgICB0aGlzLnN0YXJ0UnVudGltZShzdGF0ZXMsIHJ1bnRpbWVDb250ZXh0KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QXNzZXQobGluZUl0ZW06IExpbmVJdGVtKTogTGluZUl0ZW0gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFzc2V0cyAmJiB0aGlzLmFzc2V0cy5maW5kKGEgPT4gYS5pZCA9PT0gbGluZUl0ZW0ub3Blbk9yZGVyTGluZUl0ZW1JZCB8fCBhLmlkID09PSBsaW5lSXRlbS5hc3NldElkKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRSdW50aW1lKHN0YXRlczogUXVvdGVTdGF0ZXMsIHJ1bnRpbWVDb250ZXh0JDogT2JzZXJ2YWJsZTxMZWdhY3lSdW50aW1lQ29udGV4dD4pOiB2b2lkIHtcbiAgICBydW50aW1lQ29udGV4dCRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgICBtYXAocnVudGltZUNvbnRleHQgPT4ge1xuICAgICAgICAgIHRoaXMucnVudGltZVNlcnZpY2Uuc3RhcnRSdW50aW1lKHJ1bnRpbWVDb250ZXh0LCBzdGF0ZXMpO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3VzdG9taXplQ29udGV4dChwcm9kdWN0SWQ6IHN0cmluZywgY29udGV4dDogTGVnYWN5UnVudGltZUNvbnRleHQpOiBPYnNlcnZhYmxlPExlZ2FjeVJ1bnRpbWVDb250ZXh0PiB7XG4gICAgaWYgKCF0aGlzLmN1c3RvbWl6YXRpb25TZXJ2aWNlPy5nZXRMZWdhY3lVaURlZmluaXRpb24pIHtcbiAgICAgIHJldHVybiBvZihjb250ZXh0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jdXN0b21pemF0aW9uU2VydmljZS5nZXRMZWdhY3lVaURlZmluaXRpb24ocHJvZHVjdElkKS5waXBlKFxuICAgICAgbWFwKHVpRGVmID0+ICh7XG4gICAgICAgIC4uLmNvbnRleHQsXG4gICAgICAgIHVpRGVmaW5pdGlvbjogdWlEZWYgPz8gY29udGV4dC51aURlZmluaXRpb24sXG4gICAgICB9KSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UnVudGltZUNvbnRleHQoXG4gICAgcHJvZHVjdElkOiBzdHJpbmcsXG4gICAgb2ZmZXJpbmdJZDogc3RyaW5nLFxuICAgIHJ1bnRpbWVPcGVyYXRpb246IFJ1bnRpbWVPcGVyYXRpb24sXG4gICk6IE9ic2VydmFibGU8TGVnYWN5UnVudGltZUNvbnRleHQ+IHtcbiAgICByZXR1cm4gdGhpcy5ydW50aW1lQ29udGV4dFNlcnZpY2UuZ2V0UnVudGltZUNvbnRleHQocHJvZHVjdElkLCBvZmZlcmluZ0lkKS5waXBlKFxuICAgICAgbWFwKHJ1bnRpbWVDb250ZXh0ID0+IHtcbiAgICAgICAgcnVudGltZUNvbnRleHQuaW52b2NhdGlvbkNvbnRleHQgPSB7IHJ1bnRpbWVPcGVyYXRpb246IFJ1bnRpbWVPcGVyYXRpb25bcnVudGltZU9wZXJhdGlvbl0gfTtcbiAgICAgICAgcmV0dXJuIHJ1bnRpbWVDb250ZXh0O1xuICAgICAgfSksXG4gICAgICBzd2l0Y2hNYXAocnVudGltZUNvbnRleHQgPT4gdGhpcy5jdXN0b21pemVDb250ZXh0KHByb2R1Y3RJZCwgcnVudGltZUNvbnRleHQpKSxcbiAgICApO1xuICB9XG59XG4iLCI8dmwtcnVudGltZSAjcnVudGltZVZpZXcgKHNvbHV0aW9uVXBkYXRlZCk9XCJvblNvbHV0aW9uVXBkYXRlZCgkZXZlbnQpXCI+PC92bC1ydW50aW1lPlxuIl19
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { RuntimeModule } from '@veloce/sdk/runtime';
|
|
4
|
+
import { TooltipModule } from 'ngx-bootstrap/tooltip';
|
|
5
|
+
import { LegacyProductComponent } from './legacy-product.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "ngx-bootstrap/tooltip";
|
|
8
|
+
export class LegacyProductModule {
|
|
9
|
+
}
|
|
10
|
+
LegacyProductModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LegacyProductModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
LegacyProductModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LegacyProductModule, declarations: [LegacyProductComponent], imports: [CommonModule, RuntimeModule, i1.TooltipModule], exports: [LegacyProductComponent] });
|
|
12
|
+
LegacyProductModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LegacyProductModule, imports: [[CommonModule, RuntimeModule, TooltipModule.forRoot()]] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LegacyProductModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
declarations: [LegacyProductComponent],
|
|
17
|
+
imports: [CommonModule, RuntimeModule, TooltipModule.forRoot()],
|
|
18
|
+
exports: [LegacyProductComponent],
|
|
19
|
+
}]
|
|
20
|
+
}] });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXByb2R1Y3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2xlZ2FjeS1wcm9kdWN0L2xlZ2FjeS1wcm9kdWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFPcEUsTUFBTSxPQUFPLG1CQUFtQjs7aUhBQW5CLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGlCQUpmLHNCQUFzQixhQUMzQixZQUFZLEVBQUUsYUFBYSwrQkFDM0Isc0JBQXNCO2tIQUVyQixtQkFBbUIsWUFIckIsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQzs0RkFHcEQsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDL0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSdW50aW1lTW9kdWxlIH0gZnJvbSAnQHZlbG9jZS9zZGsvcnVudGltZSc7XG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC90b29sdGlwJztcbmltcG9ydCB7IExlZ2FjeVByb2R1Y3RDb21wb25lbnQgfSBmcm9tICcuL2xlZ2FjeS1wcm9kdWN0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0xlZ2FjeVByb2R1Y3RDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSdW50aW1lTW9kdWxlLCBUb29sdGlwTW9kdWxlLmZvclJvb3QoKV0sXG4gIGV4cG9ydHM6IFtMZWdhY3lQcm9kdWN0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgTGVnYWN5UHJvZHVjdE1vZHVsZSB7fVxuIl19
|