@veloceapps/sdk 8.0.0-17 → 8.0.0-171
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +0 -1
- package/cms/README.md +0 -20
- package/cms/cms.actions.d.ts +7 -1
- package/cms/components/preview/preview.component.d.ts +2 -3
- package/cms/components/preview/preview.types.d.ts +4 -0
- package/cms/index.d.ts +1 -0
- package/cms/modules/runtime/services/runtime.service.d.ts +1 -1
- package/cms/services/index.d.ts +0 -1
- package/cms/types/index.d.ts +0 -1
- package/cms/utils/element-metadata-worker.d.ts +11 -0
- package/cms/utils/elements-resolver.d.ts +0 -2
- package/cms/utils/index.d.ts +3 -0
- package/cms/utils/transpilation-worker.d.ts +13 -0
- package/cms/vendor-map.d.ts +26 -15
- package/core/README.md +20 -0
- package/core/modules/configuration/configuration.module.d.ts +2 -1
- package/core/modules/configuration/helpers.d.ts +4 -3
- package/core/modules/configuration/index.d.ts +1 -1
- package/core/modules/configuration/services/configuration-runtime.service.d.ts +1 -1
- package/core/modules/configuration/services/configuration-state.service.d.ts +51 -0
- package/core/modules/configuration/services/configuration.service.d.ts +10 -5
- package/core/modules/configuration/types/configuration.types.d.ts +4 -0
- package/core/modules/flow-configuration/flow-configuration.module.d.ts +2 -1
- package/core/modules/flow-configuration/services/flow-configuration.service.d.ts +5 -0
- package/core/pipes/action-code.pipe.d.ts +8 -0
- package/core/pipes/date.pipe.d.ts +2 -1
- package/core/pipes/index.d.ts +1 -0
- package/core/pipes/pipes.module.d.ts +2 -1
- package/core/services/context.service.d.ts +4 -0
- package/core/services/flow-info.service.d.ts +29 -0
- package/core/services/flow-state-configuration.service.d.ts +19 -0
- package/core/services/flow-state.service.d.ts +79 -0
- package/core/services/index.d.ts +4 -1
- package/core/services/quote-draft.service.d.ts +8 -1
- package/core/services/runtime-settings.service.d.ts +4 -1
- package/core/types/flow-customization.types.d.ts +22 -0
- package/core/types/flow-state.types.d.ts +6 -0
- package/core/types/formatting-settings.types.d.ts +2 -0
- package/core/types/index.d.ts +3 -0
- package/{cms → core}/types/integration.types.d.ts +1 -0
- package/core/types/pipe.types.d.ts +1 -0
- package/core/utils/line-item.utils.d.ts +0 -1
- package/esm2020/cms/cms.actions.mjs +15 -1
- package/esm2020/cms/components/element-children/element-children.component.mjs +3 -3
- package/esm2020/cms/components/element-children/element-children.module.mjs +4 -4
- package/esm2020/cms/components/element-drop-handle/element-drop-handle.component.mjs +3 -3
- package/esm2020/cms/components/element-drop-handle/element-drop-handle.module.mjs +4 -4
- package/esm2020/cms/components/element-renderer/element-renderer.component.mjs +6 -6
- package/esm2020/cms/components/element-renderer/element-renderer.module.mjs +4 -4
- package/esm2020/cms/components/element-tools-panel/element-tools-panel.component.mjs +5 -5
- package/esm2020/cms/components/plugin.component.mjs +3 -3
- package/esm2020/cms/components/preview/preview.component.mjs +11 -11
- package/esm2020/cms/components/preview/preview.module.mjs +6 -6
- package/esm2020/cms/components/preview/preview.types.mjs +1 -1
- package/esm2020/cms/directives/custom-template.directive.mjs +7 -7
- package/esm2020/cms/index.mjs +2 -1
- package/esm2020/cms/launcher.module.mjs +7 -7
- package/esm2020/cms/modules/federated/federated-host.directive.mjs +3 -3
- package/esm2020/cms/modules/federated/federated.component.mjs +3 -3
- package/esm2020/cms/modules/federated/federated.module.mjs +4 -4
- package/esm2020/cms/modules/migrations/migrations.mjs +2 -2
- package/esm2020/cms/modules/migrations/migrations.module.mjs +4 -4
- package/esm2020/cms/modules/migrations/services/migrations.service.mjs +9 -5
- package/esm2020/cms/modules/runtime/runtime.module.mjs +4 -4
- package/esm2020/cms/modules/runtime/services/compilation.service.mjs +14 -10
- package/esm2020/cms/modules/runtime/services/runtime-editor.service.mjs +3 -3
- package/esm2020/cms/modules/runtime/services/runtime.service.mjs +7 -7
- package/esm2020/cms/plugins/configuration.plugin.mjs +11 -7
- package/esm2020/cms/plugins/element-hover.plugin.mjs +3 -3
- package/esm2020/cms/plugins/io.plugin.mjs +3 -3
- package/esm2020/cms/plugins/page.plugin.mjs +3 -3
- package/esm2020/cms/plugins/region.plugin.mjs +3 -3
- package/esm2020/cms/plugins/script.plugin.mjs +3 -3
- package/esm2020/cms/services/element-context.service.mjs +3 -3
- package/esm2020/cms/services/index.mjs +1 -2
- package/esm2020/cms/services/io-provider.service.mjs +13 -12
- package/esm2020/cms/services/resources.service.mjs +3 -3
- package/esm2020/cms/services/templates.service.mjs +13 -12
- package/esm2020/cms/types/index.mjs +1 -2
- package/esm2020/cms/utils/element-metadata-worker.mjs +31 -0
- package/esm2020/cms/utils/elements-resolver.mjs +14 -28
- package/esm2020/cms/utils/index.mjs +4 -1
- package/esm2020/cms/utils/path.utils.mjs +3 -3
- package/esm2020/cms/utils/transpilation-worker.mjs +52 -0
- package/esm2020/cms/vendor-map.mjs +18 -6
- package/esm2020/core/core.module.mjs +16 -9
- package/esm2020/core/directives/directives.module.mjs +4 -4
- package/esm2020/core/directives/primeng-calendar.directive.mjs +3 -3
- package/esm2020/core/modules/configuration/configuration.module.mjs +9 -25
- package/esm2020/core/modules/configuration/helpers.mjs +28 -3
- package/esm2020/core/modules/configuration/index.mjs +2 -2
- package/esm2020/core/modules/configuration/services/configuration-runtime.service.mjs +11 -14
- package/esm2020/core/modules/configuration/services/configuration-state.service.mjs +299 -0
- package/esm2020/core/modules/configuration/services/configuration.service.mjs +70 -47
- package/esm2020/core/modules/configuration/services/runtime-context.service.mjs +9 -9
- package/esm2020/core/modules/configuration/types/configuration.types.mjs +1 -1
- package/esm2020/core/modules/flow-configuration/flow-configuration.module.mjs +8 -8
- package/esm2020/core/modules/flow-configuration/services/flow-configuration.service.mjs +13 -10
- package/esm2020/core/modules/flow-configuration/services/flow-update.service.mjs +3 -3
- package/esm2020/core/pipes/action-code.pipe.mjs +20 -0
- package/esm2020/core/pipes/date.pipe.mjs +13 -7
- package/esm2020/core/pipes/index.mjs +2 -1
- package/esm2020/core/pipes/number.pipe.mjs +3 -3
- package/esm2020/core/pipes/pipes.module.mjs +8 -7
- package/esm2020/core/pipes/price.pipe.mjs +3 -3
- package/esm2020/core/services/context.service.mjs +34 -7
- package/esm2020/core/services/flow-info.service.mjs +99 -0
- package/esm2020/core/services/flow-state-configuration.service.mjs +53 -0
- package/esm2020/core/services/flow-state.service.mjs +502 -0
- package/esm2020/core/services/index.mjs +5 -2
- package/esm2020/core/services/integration.state.mjs +36 -0
- package/esm2020/core/services/product-images.service.mjs +6 -7
- package/esm2020/core/services/quote-draft.service.mjs +33 -9
- package/esm2020/core/services/runtime-settings.service.mjs +21 -7
- package/esm2020/core/types/flow-customization.types.mjs +3 -0
- package/esm2020/core/types/flow-state.types.mjs +2 -0
- package/esm2020/core/types/formatting-settings.types.mjs +1 -1
- package/esm2020/core/types/index.mjs +4 -1
- package/esm2020/core/types/integration.types.mjs +2 -0
- package/esm2020/core/types/pipe.types.mjs +2 -0
- package/esm2020/core/utils/line-item.utils.mjs +30 -15
- package/esm2020/src/components/dialog/dialog.component.mjs +3 -3
- package/esm2020/src/components/dialog/dialog.module.mjs +4 -4
- package/esm2020/src/components/doc-gen/doc-gen.component.mjs +51 -51
- package/esm2020/src/components/doc-gen/doc-gen.module.mjs +4 -4
- package/esm2020/src/components/flow-header/flow-header.component.mjs +108 -0
- package/esm2020/src/components/flow-header/flow-header.module.mjs +19 -0
- package/esm2020/src/components/flow-header/index.mjs +2 -0
- package/esm2020/src/components/guided-selling/guided-selling.component.mjs +39 -45
- package/esm2020/src/components/guided-selling/guided-selling.module.mjs +4 -4
- package/esm2020/src/configure-primeng.mjs +33 -0
- package/esm2020/src/flow-routing.module.mjs +66 -75
- package/esm2020/src/flow.component.mjs +24 -33
- package/esm2020/src/flow.module.mjs +11 -9
- package/esm2020/src/guards/context.guard.mjs +9 -14
- package/esm2020/src/guards/flow.guard.mjs +37 -0
- package/esm2020/src/guards/product-unload.guard.mjs +7 -4
- package/esm2020/src/guards/root.guard.mjs +17 -13
- package/esm2020/src/pages/assets/assets.component.mjs +34 -38
- package/esm2020/src/pages/assets/assets.module.mjs +4 -4
- package/esm2020/src/pages/catalog/catalog.component.mjs +34 -38
- package/esm2020/src/pages/catalog/catalog.module.mjs +4 -4
- package/esm2020/src/pages/debug/debug.component.mjs +12 -16
- package/esm2020/src/pages/debug/debug.module.mjs +4 -4
- package/esm2020/src/pages/empty-account/empty-account.component.mjs +3 -3
- package/esm2020/src/pages/empty-account/empty-account.module.mjs +4 -4
- package/esm2020/src/pages/product/product.component.mjs +24 -14
- package/esm2020/src/pages/product/product.module.mjs +4 -4
- package/esm2020/src/pages/record-not-found/record-not-found.component.mjs +8 -5
- package/esm2020/src/pages/record-not-found/record-not-found.module.mjs +4 -4
- package/esm2020/src/pages/remote/remote.component.mjs +20 -20
- package/esm2020/src/pages/remote/remote.module.mjs +4 -4
- package/esm2020/src/pages/shopping-cart/shopping-cart.component.mjs +35 -39
- package/esm2020/src/pages/shopping-cart/shopping-cart.module.mjs +4 -4
- package/esm2020/src/resolvers/flow.resolver.mjs +39 -51
- package/esm2020/src/resolvers/quote.resolver.mjs +57 -65
- package/esm2020/src/services/doc-gen.service.mjs +7 -6
- package/esm2020/src/services/flow-dialog.service.mjs +23 -8
- package/esm2020/src/services/flow-router.service.mjs +59 -18
- package/esm2020/src/services/flow.service.mjs +72 -25
- package/esm2020/src/services/guided-selling.service.mjs +8 -7
- package/esm2020/src/services/index.mjs +3 -1
- package/esm2020/src/types/index.mjs +1 -2
- package/esm2020/src/utils/flow.utils.mjs +6 -2
- package/fesm2015/veloceapps-sdk-cms.mjs +355 -271
- package/fesm2015/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk-core.mjs +1639 -781
- package/fesm2015/veloceapps-sdk-core.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk.mjs +828 -1541
- package/fesm2015/veloceapps-sdk.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-cms.mjs +357 -283
- package/fesm2020/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-core.mjs +1780 -958
- package/fesm2020/veloceapps-sdk-core.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk.mjs +888 -1599
- package/fesm2020/veloceapps-sdk.mjs.map +1 -1
- package/package.json +7 -14
- package/src/components/doc-gen/doc-gen.component.d.ts +8 -9
- package/src/components/flow-header/flow-header.component.d.ts +25 -0
- package/src/components/flow-header/flow-header.module.d.ts +9 -0
- package/src/components/flow-header/index.d.ts +1 -0
- package/src/components/guided-selling/guided-selling.component.d.ts +6 -8
- package/src/configure-primeng.d.ts +1 -0
- package/src/flow-routing.module.d.ts +6 -7
- package/src/flow.component.d.ts +7 -11
- package/src/flow.module.d.ts +2 -2
- package/src/guards/context.guard.d.ts +4 -5
- package/src/guards/flow.guard.d.ts +2 -0
- package/src/guards/product-unload.guard.d.ts +2 -2
- package/src/guards/root.guard.d.ts +0 -1
- package/src/pages/assets/assets.component.d.ts +5 -7
- package/src/pages/catalog/catalog.component.d.ts +5 -7
- package/src/pages/debug/debug.component.d.ts +5 -8
- package/src/pages/product/product.component.d.ts +7 -6
- package/src/pages/record-not-found/record-not-found.component.d.ts +2 -0
- package/src/pages/remote/remote.component.d.ts +2 -3
- package/src/pages/shopping-cart/shopping-cart.component.d.ts +5 -7
- package/src/resolvers/flow.resolver.d.ts +6 -7
- package/src/resolvers/quote.resolver.d.ts +7 -12
- package/src/services/doc-gen.service.d.ts +1 -1
- package/src/services/flow-dialog.service.d.ts +5 -2
- package/src/services/flow-router.service.d.ts +7 -3
- package/src/services/flow.service.d.ts +10 -4
- package/src/services/guided-selling.service.d.ts +1 -1
- package/src/services/index.d.ts +2 -0
- package/src/types/index.d.ts +0 -1
- package/core/modules/configuration/services/configuration.state.d.ts +0 -30
- package/core/services/metric-calculation/metric-calculation.service.d.ts +0 -25
- package/core/services/metric-calculation/metric-calculation.types.d.ts +0 -1
- package/core/services/metric-calculation/metric-calculation.utils.d.ts +0 -5
- package/esm2020/cms/services/integration.state.mjs +0 -37
- package/esm2020/cms/types/integration.types.mjs +0 -2
- package/esm2020/core/modules/configuration/services/configuration.state.mjs +0 -142
- package/esm2020/core/services/metric-calculation/metric-calculation.service.mjs +0 -85
- package/esm2020/core/services/metric-calculation/metric-calculation.types.mjs +0 -2
- package/esm2020/core/services/metric-calculation/metric-calculation.utils.mjs +0 -42
- package/esm2020/runtime/components/component-preview/component-preview.component.mjs +0 -125
- package/esm2020/runtime/components/index.mjs +0 -5
- package/esm2020/runtime/components/section-renderer/section-renderer.component.mjs +0 -67
- package/esm2020/runtime/components/ui-runtime/runtime.component.mjs +0 -440
- package/esm2020/runtime/components/ui-runtime-preview/runtime-preview.component.mjs +0 -108
- package/esm2020/runtime/execution/components/children-placeholder/children-placeholder.component.mjs +0 -60
- package/esm2020/runtime/execution/components/context-provider/context-provider.component.mjs +0 -39
- package/esm2020/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.mjs +0 -67
- package/esm2020/runtime/execution/components/federated/federated.component.mjs +0 -74
- package/esm2020/runtime/execution/components/velo-attribute/velo-attribute.component.mjs +0 -60
- package/esm2020/runtime/execution/components/velo-multiselect/velo-multiselect.component.mjs +0 -130
- package/esm2020/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.mjs +0 -72
- package/esm2020/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.mjs +0 -97
- package/esm2020/runtime/execution/components/velo-port-radio/velo-port-radio.component.mjs +0 -142
- package/esm2020/runtime/execution/components/velo-type/velo-type.component.mjs +0 -119
- package/esm2020/runtime/execution/directives/section-script.directive.mjs +0 -247
- package/esm2020/runtime/execution/directives/sf-query.directive.mjs +0 -35
- package/esm2020/runtime/execution/directives/velo-attribute.directive.mjs +0 -88
- package/esm2020/runtime/execution/directives/velo-port.directive.mjs +0 -376
- package/esm2020/runtime/execution/directives/vl-approval.directive.mjs +0 -23
- package/esm2020/runtime/execution/directives/vl-document-attachments.directive.mjs +0 -36
- package/esm2020/runtime/execution/directives/vl-document-templates.directive.mjs +0 -60
- package/esm2020/runtime/execution/directives/vl-quote.directive.mjs +0 -42
- package/esm2020/runtime/execution/directives/vl-ramp.directive.mjs +0 -55
- package/esm2020/runtime/execution/runtime-execution.module.mjs +0 -133
- package/esm2020/runtime/execution/utils/federated.util.mjs +0 -32
- package/esm2020/runtime/index.mjs +0 -5
- package/esm2020/runtime/runtime.module.mjs +0 -74
- package/esm2020/runtime/services/cart.service.mjs +0 -29
- package/esm2020/runtime/services/collapsible-state.service.mjs +0 -34
- package/esm2020/runtime/services/configuration.service.mjs +0 -119
- package/esm2020/runtime/services/current-state.service.mjs +0 -17
- package/esm2020/runtime/services/form-scope.service.mjs +0 -30
- package/esm2020/runtime/services/index.mjs +0 -4
- package/esm2020/runtime/services/product-model-cache.service.mjs +0 -31
- package/esm2020/runtime/services/runtime-context.service.mjs +0 -60
- package/esm2020/runtime/services/runtime-form.service.mjs +0 -219
- package/esm2020/runtime/services/runtime.service.mjs +0 -115
- package/esm2020/runtime/services/section-helper.service.mjs +0 -27
- package/esm2020/runtime/services/section-scope.service.mjs +0 -36
- package/esm2020/runtime/services/section-store.service.mjs +0 -22
- package/esm2020/runtime/services/section.service.mjs +0 -117
- package/esm2020/runtime/types/bound-data.types.mjs +0 -7
- package/esm2020/runtime/types/index.mjs +0 -3
- package/esm2020/runtime/types/quote-states.types.mjs +0 -2
- package/esm2020/runtime/types/runtime.types.mjs +0 -2
- package/esm2020/runtime/types/script-registry.types.mjs +0 -51
- package/esm2020/runtime/utils/line-item.util.mjs +0 -270
- package/esm2020/runtime/utils/section.utils.mjs +0 -26
- package/esm2020/runtime/utils/sections-binder.helper.mjs +0 -105
- package/esm2020/runtime/veloceapps-sdk-runtime.mjs +0 -5
- package/esm2020/src/components/header/cart-overlay/cart-preview.component.mjs +0 -119
- package/esm2020/src/components/header/cart-overlay/cart-preview.module.mjs +0 -47
- package/esm2020/src/components/header/header.component.mjs +0 -355
- package/esm2020/src/components/header/header.module.mjs +0 -52
- package/esm2020/src/components/header/header.types.mjs +0 -2
- package/esm2020/src/components/header/metrics/index.mjs +0 -2
- package/esm2020/src/components/header/metrics/metrics.component.mjs +0 -255
- package/esm2020/src/components/header/metrics/metrics.definitions.mjs +0 -2
- package/esm2020/src/components/header/metrics/metrics.module.mjs +0 -69
- package/esm2020/src/pages/legacy-product/legacy-product.component.mjs +0 -137
- package/esm2020/src/pages/legacy-product/legacy-product.module.mjs +0 -19
- package/esm2020/src/types/flow-customization.types.mjs +0 -3
- package/fesm2015/veloceapps-sdk-runtime.mjs +0 -3770
- package/fesm2015/veloceapps-sdk-runtime.mjs.map +0 -1
- package/fesm2020/veloceapps-sdk-runtime.mjs +0 -3767
- package/fesm2020/veloceapps-sdk-runtime.mjs.map +0 -1
- package/runtime/README.md +0 -5
- package/runtime/components/component-preview/component-preview.component.d.ts +0 -27
- package/runtime/components/index.d.ts +0 -4
- package/runtime/components/section-renderer/section-renderer.component.d.ts +0 -25
- package/runtime/components/ui-runtime/runtime.component.d.ts +0 -53
- package/runtime/components/ui-runtime-preview/runtime-preview.component.d.ts +0 -27
- package/runtime/execution/components/children-placeholder/children-placeholder.component.d.ts +0 -30
- package/runtime/execution/components/context-provider/context-provider.component.d.ts +0 -14
- package/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.d.ts +0 -25
- package/runtime/execution/components/federated/federated.component.d.ts +0 -36
- package/runtime/execution/components/velo-attribute/velo-attribute.component.d.ts +0 -19
- package/runtime/execution/components/velo-multiselect/velo-multiselect.component.d.ts +0 -35
- package/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.d.ts +0 -22
- package/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.d.ts +0 -22
- package/runtime/execution/components/velo-port-radio/velo-port-radio.component.d.ts +0 -28
- package/runtime/execution/components/velo-type/velo-type.component.d.ts +0 -31
- package/runtime/execution/directives/section-script.directive.d.ts +0 -59
- package/runtime/execution/directives/sf-query.directive.d.ts +0 -15
- package/runtime/execution/directives/velo-attribute.directive.d.ts +0 -26
- package/runtime/execution/directives/velo-port.directive.d.ts +0 -74
- package/runtime/execution/directives/vl-approval.directive.d.ts +0 -10
- package/runtime/execution/directives/vl-document-attachments.directive.d.ts +0 -15
- package/runtime/execution/directives/vl-document-templates.directive.d.ts +0 -33
- package/runtime/execution/directives/vl-quote.directive.d.ts +0 -14
- package/runtime/execution/directives/vl-ramp.directive.d.ts +0 -15
- package/runtime/execution/runtime-execution.module.d.ts +0 -25
- package/runtime/execution/utils/federated.util.d.ts +0 -6
- package/runtime/index.d.ts +0 -4
- package/runtime/runtime.module.d.ts +0 -16
- package/runtime/services/cart.service.d.ts +0 -15
- package/runtime/services/collapsible-state.service.d.ts +0 -15
- package/runtime/services/configuration.service.d.ts +0 -20
- package/runtime/services/current-state.service.d.ts +0 -8
- package/runtime/services/form-scope.service.d.ts +0 -20
- package/runtime/services/index.d.ts +0 -3
- package/runtime/services/product-model-cache.service.d.ts +0 -14
- package/runtime/services/runtime-context.service.d.ts +0 -16
- package/runtime/services/runtime-form.service.d.ts +0 -24
- package/runtime/services/runtime.service.d.ts +0 -44
- package/runtime/services/section-helper.service.d.ts +0 -8
- package/runtime/services/section-scope.service.d.ts +0 -14
- package/runtime/services/section-store.service.d.ts +0 -11
- package/runtime/services/section.service.d.ts +0 -30
- package/runtime/types/bound-data.types.d.ts +0 -13
- package/runtime/types/index.d.ts +0 -2
- package/runtime/types/quote-states.types.d.ts +0 -6
- package/runtime/types/runtime.types.d.ts +0 -19
- package/runtime/types/script-registry.types.d.ts +0 -13
- package/runtime/utils/line-item.util.d.ts +0 -34
- package/runtime/utils/section.utils.d.ts +0 -2
- package/runtime/utils/sections-binder.helper.d.ts +0 -16
- package/src/components/header/cart-overlay/cart-preview.component.d.ts +0 -36
- package/src/components/header/cart-overlay/cart-preview.module.d.ts +0 -14
- package/src/components/header/header.component.d.ts +0 -70
- package/src/components/header/header.module.d.ts +0 -16
- package/src/components/header/header.types.d.ts +0 -20
- package/src/components/header/metrics/index.d.ts +0 -1
- package/src/components/header/metrics/metrics.component.d.ts +0 -67
- package/src/components/header/metrics/metrics.definitions.d.ts +0 -1
- package/src/components/header/metrics/metrics.module.d.ts +0 -18
- package/src/pages/legacy-product/legacy-product.component.d.ts +0 -37
- package/src/pages/legacy-product/legacy-product.module.d.ts +0 -9
- package/src/types/flow-customization.types.d.ts +0 -12
- /package/{cms → core}/services/integration.state.d.ts +0 -0
@@ -1,46 +1,37 @@
|
|
1
1
|
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
2
|
-
import {
|
3
|
-
import {
|
4
|
-
import { map } from 'rxjs';
|
2
|
+
import { FlowInfoService } from '@veloceapps/sdk/core';
|
3
|
+
import { combineLatest, map } from 'rxjs';
|
5
4
|
import { FlowService } from './services';
|
6
|
-
import { FlowDocGenService } from './services/doc-gen.service';
|
7
5
|
import { FlowRouterService } from './services/flow-router.service';
|
6
|
+
import { FlowGuidedSellingService } from './services/guided-selling.service';
|
8
7
|
import * as i0 from "@angular/core";
|
9
8
|
import * as i1 from "./services/flow-router.service";
|
10
|
-
import * as i2 from "
|
11
|
-
import * as i3 from "
|
12
|
-
import * as i4 from "./services/
|
13
|
-
import * as i5 from "@
|
14
|
-
import * as i6 from "@angular/
|
15
|
-
import * as i7 from "@
|
16
|
-
import * as i8 from "
|
17
|
-
import * as i9 from "./components/
|
18
|
-
import * as i10 from "./components/
|
19
|
-
import * as i11 from "./components/guided-selling/guided-selling.component";
|
9
|
+
import * as i2 from "./services";
|
10
|
+
import * as i3 from "@veloceapps/sdk/core";
|
11
|
+
import * as i4 from "./services/guided-selling.service";
|
12
|
+
import * as i5 from "@angular/common";
|
13
|
+
import * as i6 from "@angular/router";
|
14
|
+
import * as i7 from "@veloceapps/components";
|
15
|
+
import * as i8 from "./components/flow-header/flow-header.component";
|
16
|
+
import * as i9 from "./components/doc-gen/doc-gen.component";
|
17
|
+
import * as i10 from "./components/guided-selling/guided-selling.component";
|
20
18
|
export class FlowComponent {
|
21
|
-
constructor(routerService,
|
19
|
+
constructor(routerService, flowService, flowInfo, guidedSellingService) {
|
22
20
|
this.routerService = routerService;
|
23
|
-
this.quoteDraftService = quoteDraftService;
|
24
21
|
this.flowService = flowService;
|
25
|
-
this.
|
26
|
-
this.
|
22
|
+
this.flowInfo = flowInfo;
|
23
|
+
this.guidedSellingService = guidedSellingService;
|
27
24
|
this.isLoading$ = this.routerService.loading$;
|
28
|
-
this.showHeader$ = this.routerService.route
|
29
|
-
this.isStandalone$ = this.
|
25
|
+
this.showHeader$ = combineLatest([this.routerService.route$, this.flowInfo.flow$]).pipe(map(([route, flow]) => route.data['showHeader'] && !flow?.properties.standalone));
|
26
|
+
this.isStandalone$ = this.flowInfo.flow$.pipe(map(flow => Boolean(flow?.properties.standalone)));
|
27
|
+
this.guidedSellingVisible$ = this.guidedSellingService.isVisible$;
|
30
28
|
this.flowService.initSubscriptions();
|
31
29
|
}
|
32
|
-
ngOnInit() {
|
33
|
-
this.integrationState.clear();
|
34
|
-
}
|
35
|
-
ngOnDestroy() {
|
36
|
-
this.flowService.cleanup();
|
37
|
-
this.docGenService.cleanup();
|
38
|
-
}
|
39
30
|
}
|
40
|
-
FlowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
41
|
-
FlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
31
|
+
FlowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowComponent, deps: [{ token: i1.FlowRouterService }, { token: i2.FlowService }, { token: i3.FlowInfoService }, { token: i4.FlowGuidedSellingService }], target: i0.ɵɵFactoryTarget.Component });
|
32
|
+
FlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: FlowComponent, selector: "vl-flow", ngImport: i0, template: "<vl-flow-new-header *ngIf=\"showHeader$ | async\"></vl-flow-new-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <div class=\"guided-selling\" [ngClass]=\"{ hidden: (guidedSellingVisible$ | async) === false }\">\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n </div>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#fff;z-index:999}.guided-selling{position:absolute;top:0;width:100%;height:100%;z-index:100}.hidden{display:none}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i7.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { kind: "component", type: i8.FlowHeaderComponent, selector: "vl-flow-new-header" }, { kind: "component", type: i9.DocGenComponent, selector: "vl-flow-doc-gen" }, { kind: "component", type: i10.GuidedSellingComponent, selector: "vl-flow-guided-selling" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowComponent, decorators: [{
|
43
34
|
type: Component,
|
44
|
-
args: [{ selector: 'vl-flow', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vl-flow-header *ngIf=\"showHeader$ | async\"></vl-flow-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#
|
45
|
-
}], ctorParameters: function () { return [{ type: i1.FlowRouterService }, { type: i2.
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
35
|
+
args: [{ selector: 'vl-flow', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vl-flow-new-header *ngIf=\"showHeader$ | async\"></vl-flow-new-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n\n <div class=\"guided-selling\" [ngClass]=\"{ hidden: (guidedSellingVisible$ | async) === false }\">\n <vl-flow-guided-selling *ngIf=\"(isStandalone$ | async) !== true\"></vl-flow-guided-selling>\n </div>\n</div>\n\n<ng-container *ngIf=\"(isStandalone$ | async) !== true\">\n <vl-flow-doc-gen></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;width:100%;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;inset:0;background-color:#fff;z-index:999}.guided-selling{position:absolute;top:0;width:100%;height:100%;z-index:100}.hidden{display:none}\n"] }]
|
36
|
+
}], ctorParameters: function () { return [{ type: i1.FlowRouterService }, { type: i2.FlowService }, { type: i3.FlowInfoService }, { type: i4.FlowGuidedSellingService }]; } });
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZmxvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZmxvdy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7Ozs7Ozs7QUFRN0UsTUFBTSxPQUFPLGFBQWE7SUFNeEIsWUFDVSxhQUFnQyxFQUNoQyxXQUF3QixFQUN4QixRQUF5QixFQUN6QixvQkFBOEM7UUFIOUMsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBQ2hDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBMEI7UUFFdEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztRQUU5QyxJQUFJLENBQUMsV0FBVyxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3JGLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FDakYsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRyxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQztRQUVsRSxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDdkMsQ0FBQzs7MEdBdEJVLGFBQWE7OEZBQWIsYUFBYSwrQ0NiMUIsMGxCQWlCQTsyRkRKYSxhQUFhO2tCQU56QixTQUFTOytCQUNFLFNBQVMsbUJBR0YsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZsb3dJbmZvU2VydmljZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL3Nkay9jb3JlJztcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmxvd1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IEZsb3dSb3V0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9mbG93LXJvdXRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dHdWlkZWRTZWxsaW5nU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ3VpZGVkLXNlbGxpbmcuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmxvdy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Zsb3cuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZsb3dDb21wb25lbnQge1xuICBwdWJsaWMgaXNMb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHVibGljIHNob3dIZWFkZXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBwdWJsaWMgaXNTdGFuZGFsb25lJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgcHVibGljIGd1aWRlZFNlbGxpbmdWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlclNlcnZpY2U6IEZsb3dSb3V0ZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmxvd1NlcnZpY2U6IEZsb3dTZXJ2aWNlLFxuICAgIHByaXZhdGUgZmxvd0luZm86IEZsb3dJbmZvU2VydmljZSxcbiAgICBwcml2YXRlIGd1aWRlZFNlbGxpbmdTZXJ2aWNlOiBGbG93R3VpZGVkU2VsbGluZ1NlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuaXNMb2FkaW5nJCA9IHRoaXMucm91dGVyU2VydmljZS5sb2FkaW5nJDtcblxuICAgIHRoaXMuc2hvd0hlYWRlciQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnJvdXRlclNlcnZpY2Uucm91dGUkLCB0aGlzLmZsb3dJbmZvLmZsb3ckXSkucGlwZShcbiAgICAgIG1hcCgoW3JvdXRlLCBmbG93XSkgPT4gcm91dGUuZGF0YVsnc2hvd0hlYWRlciddICYmICFmbG93Py5wcm9wZXJ0aWVzLnN0YW5kYWxvbmUpLFxuICAgICk7XG5cbiAgICB0aGlzLmlzU3RhbmRhbG9uZSQgPSB0aGlzLmZsb3dJbmZvLmZsb3ckLnBpcGUobWFwKGZsb3cgPT4gQm9vbGVhbihmbG93Py5wcm9wZXJ0aWVzLnN0YW5kYWxvbmUpKSk7XG4gICAgdGhpcy5ndWlkZWRTZWxsaW5nVmlzaWJsZSQgPSB0aGlzLmd1aWRlZFNlbGxpbmdTZXJ2aWNlLmlzVmlzaWJsZSQ7XG5cbiAgICB0aGlzLmZsb3dTZXJ2aWNlLmluaXRTdWJzY3JpcHRpb25zKCk7XG4gIH1cbn1cbiIsIjx2bC1mbG93LW5ldy1oZWFkZXIgKm5nSWY9XCJzaG93SGVhZGVyJCB8IGFzeW5jXCI+PC92bC1mbG93LW5ldy1oZWFkZXI+XG5cbjxkaXYgY2xhc3M9XCJmbG93LWNvbnRlbnRcIj5cbiAgPGRpdiBjbGFzcz1cImxvYWRpbmctb3ZlcmxheVwiICpuZ0lmPVwiaXNMb2FkaW5nJCB8IGFzeW5jXCI+XG4gICAgPHZsLWxvYWRlciBsYWJlbD1cIkxPQURJTkdcIj48L3ZsLWxvYWRlcj5cbiAgPC9kaXY+XG5cbiAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuXG4gIDxkaXYgY2xhc3M9XCJndWlkZWQtc2VsbGluZ1wiIFtuZ0NsYXNzXT1cInsgaGlkZGVuOiAoZ3VpZGVkU2VsbGluZ1Zpc2libGUkIHwgYXN5bmMpID09PSBmYWxzZSB9XCI+XG4gICAgPHZsLWZsb3ctZ3VpZGVkLXNlbGxpbmcgKm5nSWY9XCIoaXNTdGFuZGFsb25lJCB8IGFzeW5jKSAhPT0gdHJ1ZVwiPjwvdmwtZmxvdy1ndWlkZWQtc2VsbGluZz5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIihpc1N0YW5kYWxvbmUkIHwgYXN5bmMpICE9PSB0cnVlXCI+XG4gIDx2bC1mbG93LWRvYy1nZW4+PC92bC1mbG93LWRvYy1nZW4+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
@@ -7,40 +7,42 @@ import { SdkCoreModule } from '@veloceapps/sdk/core';
|
|
7
7
|
import { FlowDialogModule } from './components/dialog/dialog.module';
|
8
8
|
import { DocGenModule } from './components/doc-gen/doc-gen.module';
|
9
9
|
import { GuidedSellingModule } from './components/guided-selling/guided-selling.module';
|
10
|
-
import {
|
10
|
+
import { FlowNewHeaderModule } from './components/flow-header';
|
11
11
|
import { FlowRoutingModule } from './flow-routing.module';
|
12
12
|
import { FlowComponent } from './flow.component';
|
13
13
|
import { FlowService } from './services';
|
14
14
|
import { FlowDocGenService } from './services/doc-gen.service';
|
15
15
|
import { FlowDialogService } from './services/flow-dialog.service';
|
16
16
|
import { FlowGuidedSellingService } from './services/guided-selling.service';
|
17
|
+
import { configurePrimengShadowDOM } from './configure-primeng';
|
17
18
|
import * as i0 from "@angular/core";
|
19
|
+
configurePrimengShadowDOM();
|
18
20
|
export class FlowModule {
|
19
21
|
}
|
20
|
-
FlowModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
21
|
-
FlowModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
22
|
+
FlowModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
23
|
+
FlowModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FlowModule, declarations: [FlowComponent], imports: [CommonModule,
|
22
24
|
LetDirectiveModule,
|
23
25
|
FlowRoutingModule,
|
24
26
|
ApiModule,
|
25
27
|
LauncherModule,
|
26
28
|
LoaderModule,
|
27
|
-
|
29
|
+
FlowNewHeaderModule,
|
28
30
|
FlowDialogModule,
|
29
31
|
SdkCoreModule,
|
30
32
|
DocGenModule,
|
31
33
|
GuidedSellingModule] });
|
32
|
-
FlowModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
34
|
+
FlowModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowModule, providers: [FlowService, FlowDialogService, FlowDocGenService, FlowGuidedSellingService], imports: [CommonModule,
|
33
35
|
LetDirectiveModule,
|
34
36
|
FlowRoutingModule,
|
35
37
|
ApiModule,
|
36
38
|
LauncherModule,
|
37
39
|
LoaderModule,
|
38
|
-
|
40
|
+
FlowNewHeaderModule,
|
39
41
|
FlowDialogModule,
|
40
42
|
SdkCoreModule,
|
41
43
|
DocGenModule,
|
42
44
|
GuidedSellingModule] });
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowModule, decorators: [{
|
44
46
|
type: NgModule,
|
45
47
|
args: [{
|
46
48
|
declarations: [FlowComponent],
|
@@ -51,7 +53,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
|
|
51
53
|
ApiModule,
|
52
54
|
LauncherModule,
|
53
55
|
LoaderModule,
|
54
|
-
|
56
|
+
FlowNewHeaderModule,
|
55
57
|
FlowDialogModule,
|
56
58
|
SdkCoreModule,
|
57
59
|
DocGenModule,
|
@@ -60,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
|
|
60
62
|
providers: [FlowService, FlowDialogService, FlowDocGenService, FlowGuidedSellingService],
|
61
63
|
}]
|
62
64
|
}] });
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZmxvdy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUN4RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFFaEUseUJBQXlCLEVBQUUsQ0FBQztBQW1CNUIsTUFBTSxPQUFPLFVBQVU7O3VHQUFWLFVBQVU7d0dBQVYsVUFBVSxpQkFoQk4sYUFBYSxhQUUxQixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGlCQUFpQjtRQUNqQixTQUFTO1FBQ1QsY0FBYztRQUNkLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osbUJBQW1CO3dHQUlWLFVBQVUsYUFGVixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxZQVp0RixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLGlCQUFpQjtRQUNqQixTQUFTO1FBQ1QsY0FBYztRQUNkLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osbUJBQW1COzJGQUlWLFVBQVU7a0JBakJ0QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDN0IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLFNBQVM7d0JBQ1QsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLFlBQVk7d0JBQ1osbUJBQW1CO3FCQUNwQjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUM7aUJBQ3pGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGlNb2R1bGUgfSBmcm9tICdAdmVsb2NlYXBwcy9hcGknO1xuaW1wb3J0IHsgTGV0RGlyZWN0aXZlTW9kdWxlLCBMb2FkZXJNb2R1bGUgfSBmcm9tICdAdmVsb2NlYXBwcy9jb21wb25lbnRzJztcbmltcG9ydCB7IExhdW5jaGVyTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2Ntcyc7XG5pbXBvcnQgeyBTZGtDb3JlTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRmxvd0RpYWxvZ01vZHVsZSB9IGZyb20gJy4vY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLm1vZHVsZSc7XG5pbXBvcnQgeyBEb2NHZW5Nb2R1bGUgfSBmcm9tICcuL2NvbXBvbmVudHMvZG9jLWdlbi9kb2MtZ2VuLm1vZHVsZSc7XG5pbXBvcnQgeyBHdWlkZWRTZWxsaW5nTW9kdWxlIH0gZnJvbSAnLi9jb21wb25lbnRzL2d1aWRlZC1zZWxsaW5nL2d1aWRlZC1zZWxsaW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBGbG93TmV3SGVhZGVyTW9kdWxlIH0gZnJvbSAnLi9jb21wb25lbnRzL2Zsb3ctaGVhZGVyJztcbmltcG9ydCB7IEZsb3dSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9mbG93LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IEZsb3dDb21wb25lbnQgfSBmcm9tICcuL2Zsb3cuY29tcG9uZW50JztcbmltcG9ydCB7IEZsb3dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBGbG93RG9jR2VuU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZG9jLWdlbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9mbG93LWRpYWxvZy5zZXJ2aWNlJztcbmltcG9ydCB7IEZsb3dHdWlkZWRTZWxsaW5nU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZ3VpZGVkLXNlbGxpbmcuc2VydmljZSc7XG5pbXBvcnQgeyBjb25maWd1cmVQcmltZW5nU2hhZG93RE9NIH0gZnJvbSAnLi9jb25maWd1cmUtcHJpbWVuZyc7XG5cbmNvbmZpZ3VyZVByaW1lbmdTaGFkb3dET00oKTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRmxvd0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTGV0RGlyZWN0aXZlTW9kdWxlLFxuICAgIEZsb3dSb3V0aW5nTW9kdWxlLFxuICAgIEFwaU1vZHVsZSxcbiAgICBMYXVuY2hlck1vZHVsZSxcbiAgICBMb2FkZXJNb2R1bGUsXG4gICAgRmxvd05ld0hlYWRlck1vZHVsZSxcbiAgICBGbG93RGlhbG9nTW9kdWxlLFxuICAgIFNka0NvcmVNb2R1bGUsXG4gICAgRG9jR2VuTW9kdWxlLFxuICAgIEd1aWRlZFNlbGxpbmdNb2R1bGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW0Zsb3dTZXJ2aWNlLCBGbG93RGlhbG9nU2VydmljZSwgRmxvd0RvY0dlblNlcnZpY2UsIEZsb3dHdWlkZWRTZWxsaW5nU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEZsb3dNb2R1bGUge31cbiJdfQ==
|
@@ -1,9 +1,9 @@
|
|
1
1
|
import { HttpErrorResponse } from '@angular/common/http';
|
2
2
|
import { Injectable } from '@angular/core';
|
3
3
|
import { Router } from '@angular/router';
|
4
|
-
import { ConfigurationContextMode } from '@veloceapps/core';
|
4
|
+
import { ConfigurationContextMode, extractErrorDetails, isVeloceError } from '@veloceapps/core';
|
5
5
|
import { ContextService, RuntimeSettingsService } from '@veloceapps/sdk/core';
|
6
|
-
import { catchError, forkJoin,
|
6
|
+
import { catchError, forkJoin, map, of, tap } from 'rxjs';
|
7
7
|
import { FlowRouterService } from '../services/flow-router.service';
|
8
8
|
import { getDefaultProperties } from '../utils';
|
9
9
|
import * as i0 from "@angular/core";
|
@@ -24,7 +24,7 @@ export class ContextGuard {
|
|
24
24
|
const mode = this.getConfigurationContextMode(accountId, quoteId, orderId, rpcMessage);
|
25
25
|
// Restrict if mode is not defined
|
26
26
|
if (mode == null) {
|
27
|
-
return this.
|
27
|
+
return this.routerService.showErrorPage$('Mode is undefined');
|
28
28
|
}
|
29
29
|
const headerId = accountId || quoteId || orderId || this.rpcMessageId || 'empty-for-test-mode';
|
30
30
|
// Allow if context is already initialized with the same headerId
|
@@ -36,7 +36,6 @@ export class ContextGuard {
|
|
36
36
|
}
|
37
37
|
// Initialize context and runtime settings
|
38
38
|
return forkJoin([this.contextService.create(headerId, mode), this.runtimeSettingsService.create()]).pipe(tap(([context]) => {
|
39
|
-
// Update context with queryParams
|
40
39
|
this.contextService.update({
|
41
40
|
...context,
|
42
41
|
properties: {
|
@@ -49,7 +48,8 @@ export class ContextGuard {
|
|
49
48
|
this.runtimeSettingsService.initCurrency(context.properties['CurrencyIsoCode']);
|
50
49
|
}), map(() => true), catchError(e => {
|
51
50
|
const message = e instanceof HttpErrorResponse ? e.error.message : e;
|
52
|
-
|
51
|
+
const errorDetails = isVeloceError(e.error) ? extractErrorDetails(e.error) : [];
|
52
|
+
return this.routerService.showErrorPage$(message, errorDetails);
|
53
53
|
}));
|
54
54
|
}
|
55
55
|
canActivate(route) {
|
@@ -82,15 +82,10 @@ export class ContextGuard {
|
|
82
82
|
}
|
83
83
|
return;
|
84
84
|
}
|
85
|
-
handleError(route, message) {
|
86
|
-
this.contextService.delete();
|
87
|
-
const parentUrl = this.routerService.getFlowRootPath(route);
|
88
|
-
return from(this.router.navigate([parentUrl, '404'], { state: { message } })).pipe(map(() => false));
|
89
|
-
}
|
90
85
|
}
|
91
|
-
ContextGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
92
|
-
ContextGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
93
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
86
|
+
ContextGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContextGuard, deps: [{ token: i1.Router }, { token: i2.FlowRouterService }, { token: i3.ContextService }, { token: i3.RuntimeSettingsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
87
|
+
ContextGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContextGuard });
|
88
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ContextGuard, decorators: [{
|
94
89
|
type: Injectable
|
95
90
|
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.FlowRouterService }, { type: i3.ContextService }, { type: i3.RuntimeSettingsService }]; } });
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9ndWFyZHMvY29udGV4dC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBeUQsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBd0IsTUFBTSxrQkFBa0IsQ0FBQztBQUN0SCxPQUFPLEVBQUUsY0FBYyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDOzs7OztBQUtoRCxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUNZLE1BQWMsRUFDZCxhQUFnQyxFQUNoQyxjQUE4QixFQUM5QixzQkFBOEM7UUFIOUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGtCQUFhLEdBQWIsYUFBYSxDQUFtQjtRQUNoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtJQUN2RCxDQUFDO0lBRUcsZUFBZSxDQUFDLEtBQTZCO1FBQ2xELE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDOUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsV0FBVyxDQUFDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDdEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXZGLGtDQUFrQztRQUNsQyxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUU7WUFDaEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQy9EO1FBRUQsTUFBTSxRQUFRLEdBQUcsU0FBUyxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxxQkFBcUIsQ0FBQztRQUUvRixpRUFBaUU7UUFDakUsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRTtZQUNyQyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBRXJELElBQUksUUFBUSxJQUFJLGNBQWMsQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFO2dCQUNwRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQjtTQUNGO1FBRUQsMENBQTBDO1FBQzFDLE9BQU8sUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN0RyxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUM7Z0JBQ3pCLEdBQUcsT0FBTztnQkFDVixVQUFVLEVBQUU7b0JBQ1YsR0FBRyxPQUFPLENBQUMsVUFBVTtvQkFDckIsR0FBRyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7b0JBQ3RCLEdBQUcsb0JBQW9CLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQztpQkFDbEM7YUFDRixDQUFDLENBQUM7WUFFSCx5QkFBeUI7WUFDekIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztRQUNsRixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQ2YsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2IsTUFBTSxPQUFPLEdBQUcsQ0FBQyxZQUFZLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2hGLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQTZCO1FBQzlDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU0sZ0JBQWdCLENBQUMsVUFBa0M7UUFDeEQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFZLFlBQVk7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUU7WUFDdkIsT0FBTztTQUNSO1FBRUQsTUFBTSxVQUFVLEdBQWUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUQsTUFBTSxpQkFBaUIsR0FBRyxVQUFVLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDO1FBQ3RFLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBRXJDLE9BQU8saUJBQWlCLElBQUksT0FBTyxDQUFDO0lBQ3RDLENBQUM7SUFFTywyQkFBMkIsQ0FDakMsU0FBa0IsRUFDbEIsT0FBZ0IsRUFDaEIsT0FBZ0IsRUFDaEIsVUFBbUI7UUFFbkIsSUFBSSxTQUFTLEVBQUU7WUFDYixPQUFPLHdCQUF3QixDQUFDLE9BQU8sQ0FBQztTQUN6QztRQUVELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyx3QkFBd0IsQ0FBQyxLQUFLLENBQUM7U0FDdkM7UUFFRCxJQUFJLE9BQU8sRUFBRTtZQUNYLE9BQU8sd0JBQXdCLENBQUMsS0FBSyxDQUFDO1NBQ3ZDO1FBRUQsSUFBSSxVQUFVLEVBQUU7WUFDZCxPQUFPLHdCQUF3QixDQUFDLE1BQU0sQ0FBQztTQUN4QztRQUVELE9BQU87SUFDVCxDQUFDOzt5R0FqR1UsWUFBWTs2R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLCBleHRyYWN0RXJyb3JEZXRhaWxzLCBpc1ZlbG9jZUVycm9yLCBScGNNZXNzYWdlLCBWbFdpbmRvdyB9IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgQ29udGV4dFNlcnZpY2UsIFJ1bnRpbWVTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmb3JrSm9pbiwgbWFwLCBPYnNlcnZhYmxlLCBvZiwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93Um91dGVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctcm91dGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgZ2V0RGVmYXVsdFByb3BlcnRpZXMgfSBmcm9tICcuLi91dGlscyc7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBWbFdpbmRvdztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbnRleHRHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxuICAgIHByb3RlY3RlZCByb3V0ZXJTZXJ2aWNlOiBGbG93Um91dGVyU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBydW50aW1lU2V0dGluZ3NTZXJ2aWNlOiBSdW50aW1lU2V0dGluZ3NTZXJ2aWNlLFxuICApIHt9XG5cbiAgcHVibGljIGNoZWNrQWN0aXZhdGlvbihyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHsgcXVlcnlQYXJhbXMgfSA9IHJvdXRlO1xuICAgIGNvbnN0IHsgYWNjb3VudElkLCBxdW90ZUlkLCBvcmRlcklkIH0gPSBxdWVyeVBhcmFtcztcbiAgICBjb25zdCBycGNNZXNzYWdlID0gd2luZG93LlJQQ19NRVNTQUdFO1xuICAgIGNvbnN0IG1vZGUgPSB0aGlzLmdldENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZShhY2NvdW50SWQsIHF1b3RlSWQsIG9yZGVySWQsIHJwY01lc3NhZ2UpO1xuXG4gICAgLy8gUmVzdHJpY3QgaWYgbW9kZSBpcyBub3QgZGVmaW5lZFxuICAgIGlmIChtb2RlID09IG51bGwpIHtcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlclNlcnZpY2Uuc2hvd0Vycm9yUGFnZSQoJ01vZGUgaXMgdW5kZWZpbmVkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgaGVhZGVySWQgPSBhY2NvdW50SWQgfHwgcXVvdGVJZCB8fCBvcmRlcklkIHx8IHRoaXMucnBjTWVzc2FnZUlkIHx8ICdlbXB0eS1mb3ItdGVzdC1tb2RlJztcblxuICAgIC8vIEFsbG93IGlmIGNvbnRleHQgaXMgYWxyZWFkeSBpbml0aWFsaXplZCB3aXRoIHRoZSBzYW1lIGhlYWRlcklkXG4gICAgaWYgKHRoaXMuY29udGV4dFNlcnZpY2UuaXNJbml0aWFsaXplZCkge1xuICAgICAgY29uc3QgY3VycmVudENvbnRleHQgPSB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlc29sdmUoKTtcblxuICAgICAgaWYgKGhlYWRlcklkICYmIGN1cnJlbnRDb250ZXh0LmhlYWRlcklkID09PSBoZWFkZXJJZCkge1xuICAgICAgICByZXR1cm4gb2YodHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW5pdGlhbGl6ZSBjb250ZXh0IGFuZCBydW50aW1lIHNldHRpbmdzXG4gICAgcmV0dXJuIGZvcmtKb2luKFt0aGlzLmNvbnRleHRTZXJ2aWNlLmNyZWF0ZShoZWFkZXJJZCwgbW9kZSksIHRoaXMucnVudGltZVNldHRpbmdzU2VydmljZS5jcmVhdGUoKV0pLnBpcGUoXG4gICAgICB0YXAoKFtjb250ZXh0XSkgPT4ge1xuICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnVwZGF0ZSh7XG4gICAgICAgICAgLi4uY29udGV4dCxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAuLi5jb250ZXh0LnByb3BlcnRpZXMsXG4gICAgICAgICAgICAuLi4ocXVlcnlQYXJhbXMgPz8ge30pLFxuICAgICAgICAgICAgLi4uZ2V0RGVmYXVsdFByb3BlcnRpZXMoeyBtb2RlIH0pLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIEluaXQgY3VycmVuY3kgc2V0dGluZ3NcbiAgICAgICAgdGhpcy5ydW50aW1lU2V0dGluZ3NTZXJ2aWNlLmluaXRDdXJyZW5jeShjb250ZXh0LnByb3BlcnRpZXNbJ0N1cnJlbmN5SXNvQ29kZSddKTtcbiAgICAgIH0pLFxuICAgICAgbWFwKCgpID0+IHRydWUpLFxuICAgICAgY2F0Y2hFcnJvcihlID0+IHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGUgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSA/IGUuZXJyb3IubWVzc2FnZSA6IGU7XG4gICAgICAgIGNvbnN0IGVycm9yRGV0YWlscyA9IGlzVmVsb2NlRXJyb3IoZS5lcnJvcikgPyBleHRyYWN0RXJyb3JEZXRhaWxzKGUuZXJyb3IpIDogW107XG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlclNlcnZpY2Uuc2hvd0Vycm9yUGFnZSQobWVzc2FnZSwgZXJyb3JEZXRhaWxzKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgUHJvbWlzZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrQWN0aXZhdGlvbihyb3V0ZSk7XG4gIH1cblxuICBwdWJsaWMgY2FuQWN0aXZhdGVDaGlsZChjaGlsZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KTogT2JzZXJ2YWJsZTxib29sZWFuPiB8IFByb21pc2U8Ym9vbGVhbj4gfCBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGVja0FjdGl2YXRpb24oY2hpbGRSb3V0ZSk7XG4gIH1cblxuICBwcml2YXRlIGdldCBycGNNZXNzYWdlSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXdpbmRvdy5SUENfTUVTU0FHRSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJwY01lc3NhZ2U6IFJwY01lc3NhZ2UgPSBKU09OLnBhcnNlKHdpbmRvdy5SUENfTUVTU0FHRSk7XG4gICAgY29uc3QgdmVsb2NlUmVmZXJlbmNlSWQgPSBycGNNZXNzYWdlLmNvbmZpZ3VyYXRpb24/LlZlbG9jZVJlZmVyZW5jZUlkO1xuICAgIGNvbnN0IHF1b3RlSWQgPSBycGNNZXNzYWdlLnF1b3RlPy5JZDtcblxuICAgIHJldHVybiB2ZWxvY2VSZWZlcmVuY2VJZCB8fCBxdW90ZUlkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb25maWd1cmF0aW9uQ29udGV4dE1vZGUoXG4gICAgYWNjb3VudElkPzogc3RyaW5nLFxuICAgIHF1b3RlSWQ/OiBzdHJpbmcsXG4gICAgb3JkZXJJZD86IHN0cmluZyxcbiAgICBycGNNZXNzYWdlPzogc3RyaW5nLFxuICApOiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUgfCB1bmRlZmluZWQge1xuICAgIGlmIChhY2NvdW50SWQpIHtcbiAgICAgIHJldHVybiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuQUNDT1VOVDtcbiAgICB9XG5cbiAgICBpZiAocXVvdGVJZCkge1xuICAgICAgcmV0dXJuIENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZS5RVU9URTtcbiAgICB9XG5cbiAgICBpZiAob3JkZXJJZCkge1xuICAgICAgcmV0dXJuIENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZS5PUkRFUjtcbiAgICB9XG5cbiAgICBpZiAocnBjTWVzc2FnZSkge1xuICAgICAgcmV0dXJuIENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZS5SRU1PVEU7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,37 @@
|
|
1
|
+
import { HttpErrorResponse } from '@angular/common/http';
|
2
|
+
import { inject } from '@angular/core';
|
3
|
+
import { extractErrorDetails, isVeloceError } from '@veloceapps/core';
|
4
|
+
import { ConfigurationService, ContextService, FlowInfoService, FlowStateService, IntegrationState, QuoteDraftService, } from '@veloceapps/sdk/core';
|
5
|
+
import { catchError, map } from 'rxjs';
|
6
|
+
import { FlowRouterService } from '../services/flow-router.service';
|
7
|
+
export const keepFlowInitialized = (route) => {
|
8
|
+
const contextService = inject(ContextService);
|
9
|
+
const flowState = inject(FlowStateService);
|
10
|
+
const flowInfoService = inject(FlowInfoService);
|
11
|
+
const routerService = inject(FlowRouterService);
|
12
|
+
const quoteDraft = inject(QuoteDraftService);
|
13
|
+
const configurationService = inject(ConfigurationService);
|
14
|
+
const integrationState = inject(IntegrationState);
|
15
|
+
const { flowId } = route.queryParams;
|
16
|
+
const flow = flowInfoService.flow;
|
17
|
+
if (flow && flow?.id === flowId) {
|
18
|
+
return true;
|
19
|
+
}
|
20
|
+
// Cleanup
|
21
|
+
flowState.cleanup();
|
22
|
+
quoteDraft.reset();
|
23
|
+
configurationService.reset();
|
24
|
+
integrationState.clear();
|
25
|
+
flowInfoService.cleanup();
|
26
|
+
contextService.delete();
|
27
|
+
if (!flowId) {
|
28
|
+
return true;
|
29
|
+
}
|
30
|
+
const params = { ...route.queryParams, ...flow?.properties.queryParams };
|
31
|
+
return flowInfoService.init$(flowId, params).pipe(map(() => true), catchError(e => {
|
32
|
+
const message = e instanceof HttpErrorResponse ? e.error.message : e;
|
33
|
+
const errorDetails = isVeloceError(e.error) ? extractErrorDetails(e.error) : [];
|
34
|
+
return routerService.showErrorPage$(message, errorDetails);
|
35
|
+
}));
|
36
|
+
};
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9ndWFyZHMvZmxvdy5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN0RSxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCxlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVwRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBa0IsQ0FBQyxLQUE2QixFQUFFLEVBQUU7SUFDbEYsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzlDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sZUFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNoRCxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNoRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM3QyxNQUFNLG9CQUFvQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQzFELE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFbEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7SUFDckMsTUFBTSxJQUFJLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQztJQUVsQyxJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBRSxLQUFLLE1BQU0sRUFBRTtRQUMvQixPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsVUFBVTtJQUNWLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwQixVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDbkIsb0JBQW9CLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDN0IsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDekIsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFCLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUV4QixJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUVELE1BQU0sTUFBTSxHQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxFQUFFLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqRixPQUFPLGVBQWUsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDL0MsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUNmLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRTtRQUNiLE1BQU0sT0FBTyxHQUFHLENBQUMsWUFBWSxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRSxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNoRixPQUFPLGFBQWEsQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzdELENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuQWN0aXZhdGVGbiwgUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGV4dHJhY3RFcnJvckRldGFpbHMsIGlzVmVsb2NlRXJyb3IgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7XG4gIENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICBDb250ZXh0U2VydmljZSxcbiAgRmxvd0luZm9TZXJ2aWNlLFxuICBGbG93U3RhdGVTZXJ2aWNlLFxuICBJbnRlZ3JhdGlvblN0YXRlLFxuICBRdW90ZURyYWZ0U2VydmljZSxcbn0gZnJvbSAnQHZlbG9jZWFwcHMvc2RrL2NvcmUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93Um91dGVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctcm91dGVyLnNlcnZpY2UnO1xuXG5leHBvcnQgY29uc3Qga2VlcEZsb3dJbml0aWFsaXplZDogQ2FuQWN0aXZhdGVGbiA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCkgPT4ge1xuICBjb25zdCBjb250ZXh0U2VydmljZSA9IGluamVjdChDb250ZXh0U2VydmljZSk7XG4gIGNvbnN0IGZsb3dTdGF0ZSA9IGluamVjdChGbG93U3RhdGVTZXJ2aWNlKTtcbiAgY29uc3QgZmxvd0luZm9TZXJ2aWNlID0gaW5qZWN0KEZsb3dJbmZvU2VydmljZSk7XG4gIGNvbnN0IHJvdXRlclNlcnZpY2UgPSBpbmplY3QoRmxvd1JvdXRlclNlcnZpY2UpO1xuICBjb25zdCBxdW90ZURyYWZ0ID0gaW5qZWN0KFF1b3RlRHJhZnRTZXJ2aWNlKTtcbiAgY29uc3QgY29uZmlndXJhdGlvblNlcnZpY2UgPSBpbmplY3QoQ29uZmlndXJhdGlvblNlcnZpY2UpO1xuICBjb25zdCBpbnRlZ3JhdGlvblN0YXRlID0gaW5qZWN0KEludGVncmF0aW9uU3RhdGUpO1xuXG4gIGNvbnN0IHsgZmxvd0lkIH0gPSByb3V0ZS5xdWVyeVBhcmFtcztcbiAgY29uc3QgZmxvdyA9IGZsb3dJbmZvU2VydmljZS5mbG93O1xuXG4gIGlmIChmbG93ICYmIGZsb3c/LmlkID09PSBmbG93SWQpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENsZWFudXBcbiAgZmxvd1N0YXRlLmNsZWFudXAoKTtcbiAgcXVvdGVEcmFmdC5yZXNldCgpO1xuICBjb25maWd1cmF0aW9uU2VydmljZS5yZXNldCgpO1xuICBpbnRlZ3JhdGlvblN0YXRlLmNsZWFyKCk7XG4gIGZsb3dJbmZvU2VydmljZS5jbGVhbnVwKCk7XG4gIGNvbnRleHRTZXJ2aWNlLmRlbGV0ZSgpO1xuXG4gIGlmICghZmxvd0lkKSB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjb25zdCBwYXJhbXM6IFBhcmFtcyA9IHsgLi4ucm91dGUucXVlcnlQYXJhbXMsIC4uLmZsb3c/LnByb3BlcnRpZXMucXVlcnlQYXJhbXMgfTtcbiAgcmV0dXJuIGZsb3dJbmZvU2VydmljZS5pbml0JChmbG93SWQsIHBhcmFtcykucGlwZShcbiAgICBtYXAoKCkgPT4gdHJ1ZSksXG4gICAgY2F0Y2hFcnJvcihlID0+IHtcbiAgICAgIGNvbnN0IG1lc3NhZ2UgPSBlIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UgPyBlLmVycm9yLm1lc3NhZ2UgOiBlO1xuICAgICAgY29uc3QgZXJyb3JEZXRhaWxzID0gaXNWZWxvY2VFcnJvcihlLmVycm9yKSA/IGV4dHJhY3RFcnJvckRldGFpbHMoZS5lcnJvcikgOiBbXTtcbiAgICAgIHJldHVybiByb3V0ZXJTZXJ2aWNlLnNob3dFcnJvclBhZ2UkKG1lc3NhZ2UsIGVycm9yRGV0YWlscyk7XG4gICAgfSksXG4gICk7XG59O1xuIl19
|
@@ -29,6 +29,9 @@ export class ProductUnloadGuard {
|
|
29
29
|
}
|
30
30
|
// clear obsolete queryParams
|
31
31
|
const urlTree = this.router.parseUrl(nextState.url);
|
32
|
+
if (!urlTree.queryParams['productId']) {
|
33
|
+
return true;
|
34
|
+
}
|
32
35
|
delete urlTree.queryParams['productId'];
|
33
36
|
// replace url after deactivation has finished
|
34
37
|
setTimeout(() => this.router.navigateByUrl(urlTree.toString(), { replaceUrl: true }));
|
@@ -38,9 +41,9 @@ export class ProductUnloadGuard {
|
|
38
41
|
}));
|
39
42
|
}
|
40
43
|
}
|
41
|
-
ProductUnloadGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
42
|
-
ProductUnloadGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
44
|
+
ProductUnloadGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProductUnloadGuard, deps: [{ token: i1.Router }, { token: i2.ContextService }, { token: i2.QuoteDraftService }, { token: i2.ConfigurationService }, { token: i3.FlowDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
|
45
|
+
ProductUnloadGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProductUnloadGuard });
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ProductUnloadGuard, decorators: [{
|
44
47
|
type: Injectable
|
45
48
|
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.ContextService }, { type: i2.QuoteDraftService }, { type: i2.ConfigurationService }, { type: i3.FlowDialogService }]; } });
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC11bmxvYWQuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZ3VhcmRzL3Byb2R1Y3QtdW5sb2FkLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUF5QyxNQUFNLEVBQWdDLE1BQU0saUJBQWlCLENBQUM7QUFDOUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9GLE9BQU8sRUFBYyxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7OztBQUdwRSxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQ1UsTUFBYyxFQUNkLGNBQThCLEVBQzlCLGlCQUFvQyxFQUNwQyxvQkFBMEMsRUFDMUMsaUJBQW9DO1FBSnBDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFDM0MsQ0FBQztJQUVHLGFBQWEsQ0FDbEIsQ0FBWSxFQUNaLEtBQTZCLEVBQzdCLFlBQWlDLEVBQ2pDLFNBQStCO1FBRS9CLElBQUksVUFBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUxQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsaUJBQWlCLEVBQUU7WUFDdkYsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1NBQ2hFO1FBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUNwQixHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDWCxJQUFJLE1BQU0sRUFBRTtnQkFDVixJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUU1RixJQUFJLENBQUMsU0FBUyxJQUFJLFlBQVksQ0FBQyxHQUFHLEtBQUssU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDcEQsT0FBTyxJQUFJLENBQUM7aUJBQ2I7Z0JBRUQsNkJBQTZCO2dCQUM3QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBRXBELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxFQUFFO29CQUNyQyxPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFFRCxPQUFPLE9BQU8sQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBRXhDLDhDQUE4QztnQkFDOUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBRXRGLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzsrR0FqRFUsa0JBQWtCO21IQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgQ2FuRGVhY3RpdmF0ZSwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlLCBDb250ZXh0U2VydmljZSwgUXVvdGVEcmFmdFNlcnZpY2UgfSBmcm9tICdAdmVsb2NlYXBwcy9zZGsvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtYXAsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93RGlhbG9nU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zsb3ctZGlhbG9nLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUHJvZHVjdFVubG9hZEd1YXJkIGltcGxlbWVudHMgQ2FuRGVhY3RpdmF0ZTxhbnk+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIHF1b3RlRHJhZnRTZXJ2aWNlOiBRdW90ZURyYWZ0U2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGZsb3dEaWFsb2dTZXJ2aWNlOiBGbG93RGlhbG9nU2VydmljZSxcbiAgKSB7fVxuXG4gIHB1YmxpYyBjYW5EZWFjdGl2YXRlKFxuICAgIF86IENvbXBvbmVudCxcbiAgICByb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCxcbiAgICBjdXJyZW50U3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsXG4gICAgbmV4dFN0YXRlPzogUm91dGVyU3RhdGVTbmFwc2hvdCxcbiAgKTogT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT4ge1xuICAgIGxldCBvYnNlcnZhYmxlID0gb2YodHJ1ZSk7XG5cbiAgICBpZiAoIXRoaXMucXVvdGVEcmFmdFNlcnZpY2UuaXNTdGFuZGFsb25lICYmIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuaGFzVW5zYXZlZENoYW5nZXMpIHtcbiAgICAgIG9ic2VydmFibGUgPSB0aGlzLmZsb3dEaWFsb2dTZXJ2aWNlLnNob3dVbnNhdmVkQ2hhbmdlc0RpYWxvZygpO1xuICAgIH1cblxuICAgIHJldHVybiBvYnNlcnZhYmxlLnBpcGUoXG4gICAgICBtYXAodW5sb2FkID0+IHtcbiAgICAgICAgaWYgKHVubG9hZCkge1xuICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UucmVzZXQoKTtcbiAgICAgICAgICB0aGlzLmNvbnRleHRTZXJ2aWNlLnVwZGF0ZSh7IHByb3BlcnRpZXM6IHsgcHJvZHVjdElkOiB1bmRlZmluZWQsIGxpbmVJdGVtSWQ6IHVuZGVmaW5lZCB9IH0pO1xuXG4gICAgICAgICAgaWYgKCFuZXh0U3RhdGUgfHwgY3VycmVudFN0YXRlLnVybCA9PT0gbmV4dFN0YXRlLnVybCkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gY2xlYXIgb2Jzb2xldGUgcXVlcnlQYXJhbXNcbiAgICAgICAgICBjb25zdCB1cmxUcmVlID0gdGhpcy5yb3V0ZXIucGFyc2VVcmwobmV4dFN0YXRlLnVybCk7XG5cbiAgICAgICAgICBpZiAoIXVybFRyZWUucXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBkZWxldGUgdXJsVHJlZS5xdWVyeVBhcmFtc1sncHJvZHVjdElkJ107XG5cbiAgICAgICAgICAvLyByZXBsYWNlIHVybCBhZnRlciBkZWFjdGl2YXRpb24gaGFzIGZpbmlzaGVkXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHVybFRyZWUudG9TdHJpbmcoKSwgeyByZXBsYWNlVXJsOiB0cnVlIH0pKTtcblxuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIl19
|
@@ -9,21 +9,25 @@ export class RootGuard {
|
|
9
9
|
this.router = router;
|
10
10
|
this.routerService = routerService;
|
11
11
|
this.initialized = false;
|
12
|
-
this.navToRestore = null;
|
13
12
|
}
|
14
13
|
canActivate(route) {
|
15
14
|
// We always need to initialize root component first, and only then start checking guards/resolvers
|
16
15
|
if (!this.initialized) {
|
17
16
|
this.initialized = true;
|
18
|
-
|
17
|
+
const navToRestore = this.router.getCurrentNavigation();
|
19
18
|
const rootUrl = this.routerService.getFlowRootPath(route);
|
20
|
-
this.router
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
19
|
+
this.router
|
20
|
+
.navigate([rootUrl], {
|
21
|
+
replaceUrl: !navToRestore?.previousNavigation,
|
22
|
+
skipLocationChange: true,
|
23
|
+
})
|
24
|
+
.then(success => {
|
25
|
+
if (!success || !navToRestore) {
|
26
|
+
return;
|
27
|
+
}
|
28
|
+
setTimeout(() => {
|
29
|
+
this.router.navigateByUrl(navToRestore.extractedUrl, navToRestore.extras);
|
30
|
+
});
|
27
31
|
});
|
28
32
|
}
|
29
33
|
return true;
|
@@ -33,10 +37,10 @@ export class RootGuard {
|
|
33
37
|
return true;
|
34
38
|
}
|
35
39
|
}
|
36
|
-
RootGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
37
|
-
RootGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
40
|
+
RootGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RootGuard, deps: [{ token: i1.Router }, { token: i2.FlowRouterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
41
|
+
RootGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RootGuard, providedIn: 'root' });
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: RootGuard, decorators: [{
|
39
43
|
type: Injectable,
|
40
44
|
args: [{ providedIn: 'root' }]
|
41
45
|
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.FlowRouterService }]; } });
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9ndWFyZHMvcm9vdC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBc0QsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7QUFHcEUsTUFBTSxPQUFPLFNBQVM7SUFHcEIsWUFBb0IsTUFBYyxFQUFVLGFBQWdDO1FBQXhELFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBbUI7UUFGcEUsZ0JBQVcsR0FBRyxLQUFLLENBQUM7SUFFbUQsQ0FBQztJQUV6RSxXQUFXLENBQUMsS0FBNkI7UUFDOUMsbUdBQW1HO1FBRW5HLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQ3hCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUV4RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsTUFBTTtpQkFDUixRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDbkIsVUFBVSxFQUFFLENBQUMsWUFBWSxFQUFFLGtCQUFrQjtnQkFDN0Msa0JBQWtCLEVBQUUsSUFBSTthQUN6QixDQUFDO2lCQUNELElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDZCxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFO29CQUM3QixPQUFPO2lCQUNSO2dCQUVELFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVFLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOztzR0FuQ1UsU0FBUzswR0FBVCxTQUFTLGNBREksTUFBTTsyRkFDbkIsU0FBUztrQkFEckIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZSwgQ2FuRGVhY3RpdmF0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZsb3dSb3V0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZmxvdy1yb3V0ZXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUm9vdEd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUsIENhbkRlYWN0aXZhdGU8YW55PiB7XG4gIHByaXZhdGUgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJvdXRlclNlcnZpY2U6IEZsb3dSb3V0ZXJTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBjYW5BY3RpdmF0ZShyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBQcm9taXNlPGJvb2xlYW4+IHwgYm9vbGVhbiB7XG4gICAgLy8gV2UgYWx3YXlzIG5lZWQgdG8gaW5pdGlhbGl6ZSByb290IGNvbXBvbmVudCBmaXJzdCwgYW5kIG9ubHkgdGhlbiBzdGFydCBjaGVja2luZyBndWFyZHMvcmVzb2x2ZXJzXG5cbiAgICBpZiAoIXRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgICAgY29uc3QgbmF2VG9SZXN0b3JlID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcblxuICAgICAgY29uc3Qgcm9vdFVybCA9IHRoaXMucm91dGVyU2VydmljZS5nZXRGbG93Um9vdFBhdGgocm91dGUpO1xuICAgICAgdGhpcy5yb3V0ZXJcbiAgICAgICAgLm5hdmlnYXRlKFtyb290VXJsXSwge1xuICAgICAgICAgIHJlcGxhY2VVcmw6ICFuYXZUb1Jlc3RvcmU/LnByZXZpb3VzTmF2aWdhdGlvbixcbiAgICAgICAgICBza2lwTG9jYXRpb25DaGFuZ2U6IHRydWUsXG4gICAgICAgIH0pXG4gICAgICAgIC50aGVuKHN1Y2Nlc3MgPT4ge1xuICAgICAgICAgIGlmICghc3VjY2VzcyB8fCAhbmF2VG9SZXN0b3JlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKG5hdlRvUmVzdG9yZS5leHRyYWN0ZWRVcmwsIG5hdlRvUmVzdG9yZS5leHRyYXMpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5EZWFjdGl2YXRlKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
|