@veloceapps/sdk 2.0.4 → 2.0.6

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.
Files changed (142) hide show
  1. package/bundles/veloce-sdk-cms.umd.js +519 -352
  2. package/bundles/veloce-sdk-cms.umd.js.map +1 -1
  3. package/bundles/veloce-sdk-runtime.umd.js +145 -144
  4. package/bundles/veloce-sdk-runtime.umd.js.map +1 -1
  5. package/bundles/veloce-sdk.umd.js +1104 -8
  6. package/bundles/veloce-sdk.umd.js.map +1 -1
  7. package/cms/components/preview/preview.component.d.ts +4 -1
  8. package/cms/modules/configuration/index.d.ts +2 -0
  9. package/cms/modules/configuration/services/configuration-runtime.service.d.ts +30 -0
  10. package/cms/modules/configuration/services/configuration.service.d.ts +6 -9
  11. package/cms/modules/configuration/services/runtime-context.service.d.ts +14 -0
  12. package/cms/modules/configuration/types/configuration-runtime.types.d.ts +6 -0
  13. package/cms/modules/configuration/types/configuration.types.d.ts +2 -0
  14. package/esm2015/cms/components/element-children/element-children.component.js +3 -3
  15. package/esm2015/cms/components/element-children/element-children.module.js +4 -4
  16. package/esm2015/cms/components/element-renderer/element-renderer.component.js +3 -3
  17. package/esm2015/cms/components/element-renderer/element-renderer.module.js +4 -4
  18. package/esm2015/cms/components/federated/federated.component.js +3 -3
  19. package/esm2015/cms/components/federated/federated.module.js +4 -4
  20. package/esm2015/cms/components/plugin.component.js +3 -3
  21. package/esm2015/cms/components/preview/preview.component.js +33 -24
  22. package/esm2015/cms/components/preview/preview.module.js +4 -4
  23. package/esm2015/cms/directives/custom-template.directive.js +3 -3
  24. package/esm2015/cms/launcher.module.js +4 -4
  25. package/esm2015/cms/modules/configuration/configuration.module.js +25 -6
  26. package/esm2015/cms/modules/configuration/index.js +3 -1
  27. package/esm2015/cms/modules/configuration/services/configuration-runtime.service.js +83 -0
  28. package/esm2015/cms/modules/configuration/services/configuration.service.js +35 -41
  29. package/esm2015/cms/modules/configuration/services/runtime-context.service.js +60 -0
  30. package/esm2015/cms/modules/configuration/types/configuration-runtime.types.js +2 -0
  31. package/esm2015/cms/modules/configuration/types/configuration.types.js +1 -1
  32. package/esm2015/cms/plugins/configuration.plugin.js +3 -3
  33. package/esm2015/cms/plugins/io.plugin.js +3 -3
  34. package/esm2015/cms/plugins/script.plugin.js +3 -3
  35. package/esm2015/cms/services/dynamic-module.service.js +3 -3
  36. package/esm2015/cms/services/element-context.service.js +3 -3
  37. package/esm2015/cms/services/io-provider.service.js +3 -3
  38. package/esm2015/cms/services/launcher.service.js +3 -3
  39. package/esm2015/cms/services/templates.service.js +3 -3
  40. package/esm2015/index.js +2 -2
  41. package/esm2015/runtime/components/component-preview/component-preview.component.js +3 -3
  42. package/esm2015/runtime/components/section-renderer/section-renderer.component.js +3 -3
  43. package/esm2015/runtime/components/ui-runtime/runtime.component.js +3 -3
  44. package/esm2015/runtime/components/ui-runtime-preview/runtime-preview.component.js +3 -3
  45. package/esm2015/runtime/execution/components/children-placeholder/children-placeholder.component.js +6 -6
  46. package/esm2015/runtime/execution/components/context-provider/context-provider.component.js +3 -3
  47. package/esm2015/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.js +3 -3
  48. package/esm2015/runtime/execution/components/federated/federated.component.js +3 -3
  49. package/esm2015/runtime/execution/components/velo-attribute/velo-attribute.component.js +3 -3
  50. package/esm2015/runtime/execution/components/velo-multiselect/velo-multiselect.component.js +3 -3
  51. package/esm2015/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.js +3 -3
  52. package/esm2015/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.js +3 -3
  53. package/esm2015/runtime/execution/components/velo-port-radio/velo-port-radio.component.js +3 -3
  54. package/esm2015/runtime/execution/components/velo-type/velo-type.component.js +3 -3
  55. package/esm2015/runtime/execution/directives/section-script.directive.js +3 -3
  56. package/esm2015/runtime/execution/directives/sf-query.directive.js +3 -3
  57. package/esm2015/runtime/execution/directives/velo-attribute.directive.js +3 -3
  58. package/esm2015/runtime/execution/directives/velo-port.directive.js +18 -18
  59. package/esm2015/runtime/execution/directives/vl-approval.directive.js +3 -3
  60. package/esm2015/runtime/execution/directives/vl-document-attachments.directive.js +3 -3
  61. package/esm2015/runtime/execution/directives/vl-document-templates.directive.js +3 -3
  62. package/esm2015/runtime/execution/directives/vl-quote.directive.js +3 -3
  63. package/esm2015/runtime/execution/directives/vl-ramp.directive.js +3 -3
  64. package/esm2015/runtime/execution/runtime-execution.module.js +4 -4
  65. package/esm2015/runtime/runtime.module.js +4 -4
  66. package/esm2015/runtime/services/cart.service.js +3 -3
  67. package/esm2015/runtime/services/collapsible-state.service.js +3 -3
  68. package/esm2015/runtime/services/configuration.service.js +3 -3
  69. package/esm2015/runtime/services/context.service.js +6 -5
  70. package/esm2015/runtime/services/current-state.service.js +3 -3
  71. package/esm2015/runtime/services/form-scope.service.js +3 -3
  72. package/esm2015/runtime/services/product-model-cache.service.js +3 -3
  73. package/esm2015/runtime/services/quote.service.js +3 -3
  74. package/esm2015/runtime/services/runtime-context.service.js +3 -3
  75. package/esm2015/runtime/services/runtime-form.service.js +3 -3
  76. package/esm2015/runtime/services/runtime.service.js +3 -3
  77. package/esm2015/runtime/services/section-helper.service.js +3 -3
  78. package/esm2015/runtime/services/section-scope.service.js +3 -3
  79. package/esm2015/runtime/services/section-store.service.js +3 -3
  80. package/esm2015/runtime/services/section.service.js +6 -6
  81. package/esm2015/src/constants.js +2 -0
  82. package/esm2015/src/flow-routing.module.js +75 -0
  83. package/esm2015/src/flow.component.js +23 -0
  84. package/esm2015/src/flow.module.js +24 -0
  85. package/esm2015/src/guards/context.guard.js +63 -0
  86. package/esm2015/src/guards/index.js +2 -0
  87. package/esm2015/src/guards/root.guard.js +41 -0
  88. package/esm2015/src/index.js +6 -0
  89. package/esm2015/src/pages/debug/debug.component.js +54 -0
  90. package/esm2015/src/pages/debug/debug.module.js +44 -0
  91. package/esm2015/src/pages/legacy-product/legacy-product.component.js +117 -0
  92. package/esm2015/src/pages/legacy-product/legacy-product.module.js +20 -0
  93. package/esm2015/src/pages/product/product.component.js +95 -0
  94. package/esm2015/src/pages/product/product.module.js +20 -0
  95. package/esm2015/src/pages/record-not-found/record-not-found.component.js +26 -0
  96. package/esm2015/src/pages/record-not-found/record-not-found.module.js +20 -0
  97. package/esm2015/src/resolvers/context.resolver.js +42 -0
  98. package/esm2015/src/resolvers/flow.resolver.js +58 -0
  99. package/esm2015/src/resolvers/quote.resolver.js +36 -0
  100. package/esm2015/src/services/flow.service.js +24 -0
  101. package/esm2015/src/services/index.js +2 -0
  102. package/esm2015/src/services/router.service.js +47 -0
  103. package/esm2015/src/types/context-route.types.js +2 -0
  104. package/esm2015/src/types/flow-customization.types.js +3 -0
  105. package/esm2015/src/types/flow.types.js +2 -0
  106. package/esm2015/src/types/index.js +4 -0
  107. package/esm2015/src/types/route.types.js +2 -0
  108. package/fesm2015/veloce-sdk-cms.js +461 -316
  109. package/fesm2015/veloce-sdk-cms.js.map +1 -1
  110. package/fesm2015/veloce-sdk-runtime.js +145 -144
  111. package/fesm2015/veloce-sdk-runtime.js.map +1 -1
  112. package/fesm2015/veloce-sdk.js +725 -1
  113. package/fesm2015/veloce-sdk.js.map +1 -1
  114. package/index.d.ts +1 -2
  115. package/package.json +1 -1
  116. package/src/constants.d.ts +1 -0
  117. package/src/flow-routing.module.d.ts +9 -0
  118. package/src/flow.component.d.ts +8 -0
  119. package/src/flow.module.d.ts +12 -0
  120. package/src/guards/context.guard.d.ts +16 -0
  121. package/src/guards/index.d.ts +1 -0
  122. package/src/guards/root.guard.d.ts +15 -0
  123. package/src/index.d.ts +5 -0
  124. package/src/pages/debug/debug.component.d.ts +24 -0
  125. package/src/pages/debug/debug.module.d.ts +13 -0
  126. package/src/pages/legacy-product/legacy-product.component.d.ts +33 -0
  127. package/src/pages/legacy-product/legacy-product.module.d.ts +10 -0
  128. package/src/pages/product/product.component.d.ts +32 -0
  129. package/src/pages/product/product.module.d.ts +10 -0
  130. package/src/pages/record-not-found/record-not-found.component.d.ts +11 -0
  131. package/src/pages/record-not-found/record-not-found.module.d.ts +9 -0
  132. package/src/resolvers/context.resolver.d.ts +16 -0
  133. package/src/resolvers/flow.resolver.d.ts +14 -0
  134. package/src/resolvers/quote.resolver.d.ts +15 -0
  135. package/src/services/flow.service.d.ts +13 -0
  136. package/src/services/index.d.ts +1 -0
  137. package/src/services/router.service.d.ts +12 -0
  138. package/src/types/context-route.types.d.ts +5 -0
  139. package/src/types/flow-customization.types.d.ts +7 -0
  140. package/src/types/flow.types.d.ts +5 -0
  141. package/src/types/index.d.ts +3 -0
  142. package/src/types/route.types.d.ts +4 -0
@@ -0,0 +1,63 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ConfigurationContextMode } from '@veloce/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/router";
5
+ import * as i2 from "../services/router.service";
6
+ export class ContextGuard {
7
+ constructor(router, routerService) {
8
+ this.router = router;
9
+ this.routerService = routerService;
10
+ }
11
+ getConfigurationContextMode(accountId, quoteId, orderId, rpcMessage) {
12
+ if (accountId) {
13
+ return ConfigurationContextMode.ACCOUNT;
14
+ }
15
+ if (quoteId) {
16
+ return ConfigurationContextMode.QUOTE;
17
+ }
18
+ if (orderId) {
19
+ return ConfigurationContextMode.ORDER;
20
+ }
21
+ if (rpcMessage) {
22
+ return ConfigurationContextMode.REMOTE;
23
+ }
24
+ return;
25
+ }
26
+ checkActivation(route) {
27
+ var _a, _b;
28
+ const { queryParams } = route;
29
+ const { accountId, quoteId, orderId } = queryParams;
30
+ const rpcMessage = window['RPC_MESSAGE'];
31
+ const rpcMessageId = rpcMessage && ((_b = (_a = JSON.parse(rpcMessage)) === null || _a === void 0 ? void 0 : _a.quote) === null || _b === void 0 ? void 0 : _b.Id);
32
+ const headerId = accountId || quoteId || orderId || rpcMessageId || 'empty-for-test-mode';
33
+ const mode = this.getConfigurationContextMode(accountId, quoteId, orderId, rpcMessage);
34
+ if (mode === void 0) {
35
+ return this.reject(route, 'Mode is undefined');
36
+ }
37
+ const contextRouteData = {
38
+ headerId,
39
+ mode,
40
+ };
41
+ route.data = Object.assign(Object.assign({}, route.data), contextRouteData);
42
+ return true;
43
+ }
44
+ canActivate(route) {
45
+ return this.checkActivation(route);
46
+ }
47
+ canActivateChild(childRoute) {
48
+ return this.checkActivation(childRoute);
49
+ }
50
+ reject(route, message) {
51
+ const parentUrl = this.routerService.getFlowRootPath(route);
52
+ this.router.navigate([parentUrl, '404'], {
53
+ state: { message },
54
+ });
55
+ return false;
56
+ }
57
+ }
58
+ ContextGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContextGuard, deps: [{ token: i1.Router }, { token: i2.RouterService }], target: i0.ɵɵFactoryTarget.Injectable });
59
+ ContextGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContextGuard });
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ContextGuard, decorators: [{
61
+ type: Injectable
62
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.RouterService }]; } });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9ndWFyZHMvY29udGV4dC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBWSxNQUFNLGNBQWMsQ0FBQzs7OztBQVFsRSxNQUFNLE9BQU8sWUFBWTtJQUN2QixZQUFvQixNQUFjLEVBQVUsYUFBNEI7UUFBcEQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFlO0lBQUcsQ0FBQztJQUVwRSwyQkFBMkIsQ0FDakMsU0FBaUIsRUFDakIsT0FBZSxFQUNmLE9BQWUsRUFDZixVQUFrQjtRQUVsQixJQUFJLFNBQVMsRUFBRTtZQUNiLE9BQU8sd0JBQXdCLENBQUMsT0FBTyxDQUFDO1NBQ3pDO1FBRUQsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLHdCQUF3QixDQUFDLEtBQUssQ0FBQztTQUN2QztRQUVELElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyx3QkFBd0IsQ0FBQyxLQUFLLENBQUM7U0FDdkM7UUFFRCxJQUFJLFVBQVUsRUFBRTtZQUNkLE9BQU8sd0JBQXdCLENBQUMsTUFBTSxDQUFDO1NBQ3hDO1FBRUQsT0FBTztJQUNULENBQUM7SUFFRCxlQUFlLENBQUMsS0FBNkI7O1FBQzNDLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDOUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsV0FBVyxDQUFDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6QyxNQUFNLFlBQVksR0FBVyxVQUFVLEtBQUksTUFBQSxNQUFBLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLDBDQUFFLEtBQUssMENBQUUsRUFBRSxDQUFBLENBQUM7UUFFN0UsTUFBTSxRQUFRLEdBQUcsU0FBUyxJQUFJLE9BQU8sSUFBSSxPQUFPLElBQUksWUFBWSxJQUFJLHFCQUFxQixDQUFDO1FBQzFGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUV2RixJQUFJLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNuQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLG1CQUFtQixDQUFDLENBQUM7U0FDaEQ7UUFFRCxNQUFNLGdCQUFnQixHQUFxQjtZQUN6QyxRQUFRO1lBQ1IsSUFBSTtTQUNMLENBQUM7UUFFRixLQUFLLENBQUMsSUFBSSxtQ0FDTCxLQUFLLENBQUMsSUFBSSxHQUNWLGdCQUFnQixDQUNwQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQTZCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBa0M7UUFDakQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTyxNQUFNLENBQUMsS0FBNkIsRUFBRSxPQUFlO1FBQzNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxFQUFFO1lBQ3ZDLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRTtTQUNuQixDQUFDLENBQUM7UUFFSCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OzBHQXJFVSxZQUFZOzhHQUFaLFlBQVk7NEZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlLCBDYW5BY3RpdmF0ZUNoaWxkLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLCBWbFdpbmRvdyB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSb3V0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcm91dGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udGV4dFJvdXRlRGF0YSB9IGZyb20gJy4uL3R5cGVzL2NvbnRleHQtcm91dGUudHlwZXMnO1xuXG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb250ZXh0R3VhcmQgaW1wbGVtZW50cyBDYW5BY3RpdmF0ZSwgQ2FuQWN0aXZhdGVDaGlsZCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGVyU2VydmljZTogUm91dGVyU2VydmljZSkge31cblxuICBwcml2YXRlIGdldENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZShcbiAgICBhY2NvdW50SWQ6IHN0cmluZyxcbiAgICBxdW90ZUlkOiBzdHJpbmcsXG4gICAgb3JkZXJJZDogc3RyaW5nLFxuICAgIHJwY01lc3NhZ2U6IHN0cmluZyxcbiAgKTogQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoYWNjb3VudElkKSB7XG4gICAgICByZXR1cm4gQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLkFDQ09VTlQ7XG4gICAgfVxuXG4gICAgaWYgKHF1b3RlSWQpIHtcbiAgICAgIHJldHVybiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuUVVPVEU7XG4gICAgfVxuXG4gICAgaWYgKG9yZGVySWQpIHtcbiAgICAgIHJldHVybiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuT1JERVI7XG4gICAgfVxuXG4gICAgaWYgKHJwY01lc3NhZ2UpIHtcbiAgICAgIHJldHVybiBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuUkVNT1RFO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfVxuXG4gIGNoZWNrQWN0aXZhdGlvbihyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBQcm9taXNlPGJvb2xlYW4+IHwgYm9vbGVhbiB7XG4gICAgY29uc3QgeyBxdWVyeVBhcmFtcyB9ID0gcm91dGU7XG4gICAgY29uc3QgeyBhY2NvdW50SWQsIHF1b3RlSWQsIG9yZGVySWQgfSA9IHF1ZXJ5UGFyYW1zO1xuICAgIGNvbnN0IHJwY01lc3NhZ2UgPSB3aW5kb3dbJ1JQQ19NRVNTQUdFJ107XG4gICAgY29uc3QgcnBjTWVzc2FnZUlkOiBzdHJpbmcgPSBycGNNZXNzYWdlICYmIEpTT04ucGFyc2UocnBjTWVzc2FnZSk/LnF1b3RlPy5JZDtcblxuICAgIGNvbnN0IGhlYWRlcklkID0gYWNjb3VudElkIHx8IHF1b3RlSWQgfHwgb3JkZXJJZCB8fCBycGNNZXNzYWdlSWQgfHwgJ2VtcHR5LWZvci10ZXN0LW1vZGUnO1xuICAgIGNvbnN0IG1vZGUgPSB0aGlzLmdldENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZShhY2NvdW50SWQsIHF1b3RlSWQsIG9yZGVySWQsIHJwY01lc3NhZ2UpO1xuXG4gICAgaWYgKG1vZGUgPT09IHZvaWQgMCkge1xuICAgICAgcmV0dXJuIHRoaXMucmVqZWN0KHJvdXRlLCAnTW9kZSBpcyB1bmRlZmluZWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb250ZXh0Um91dGVEYXRhOiBDb250ZXh0Um91dGVEYXRhID0ge1xuICAgICAgaGVhZGVySWQsXG4gICAgICBtb2RlLFxuICAgIH07XG5cbiAgICByb3V0ZS5kYXRhID0ge1xuICAgICAgLi4ucm91dGUuZGF0YSxcbiAgICAgIC4uLmNvbnRleHRSb3V0ZURhdGEsXG4gICAgfTtcblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgUHJvbWlzZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrQWN0aXZhdGlvbihyb3V0ZSk7XG4gIH1cblxuICBjYW5BY3RpdmF0ZUNoaWxkKGNoaWxkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgUHJvbWlzZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrQWN0aXZhdGlvbihjaGlsZFJvdXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVqZWN0KHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBtZXNzYWdlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBwYXJlbnRVcmwgPSB0aGlzLnJvdXRlclNlcnZpY2UuZ2V0Rmxvd1Jvb3RQYXRoKHJvdXRlKTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcGFyZW50VXJsLCAnNDA0J10sIHtcbiAgICAgIHN0YXRlOiB7IG1lc3NhZ2UgfSxcbiAgICB9KTtcblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './context.guard';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvZ3VhcmRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnRleHQuZ3VhcmQnO1xuIl19
@@ -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/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.16", ngImport: i0, type: RootGuard, deps: [{ token: i1.Router }, { token: i2.RouterService }], target: i0.ɵɵFactoryTarget.Injectable });
36
+ RootGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RootGuard, providedIn: 'root' });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RootGuard, decorators: [{
38
+ type: Injectable,
39
+ args: [{ providedIn: 'root' }]
40
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.RouterService }]; } });
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9ndWFyZHMvcm9vdC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBTTNDLE1BQU0sT0FBTyxTQUFTO0lBSXBCLFlBQW9CLE1BQWMsRUFBVSxhQUE0QjtRQUFwRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFIaEUsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsaUJBQVksR0FBc0IsSUFBSSxDQUFDO0lBRTRCLENBQUM7SUFFNUUsV0FBVyxDQUFDLEtBQTZCO1FBQ3ZDLG1HQUFtRzs7UUFFbkcsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDckIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFFdkQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsWUFBWSwwQ0FBRSxrQkFBa0IsQ0FBQSxFQUFFLENBQUMsQ0FBQztTQUN6RjthQUFNLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUM1QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1lBQzlCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBRXhELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQzNCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzt1R0E5QlUsU0FBUzsyR0FBVCxTQUFTLGNBREksTUFBTTs0RkFDbkIsU0FBUztrQkFEckIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZSwgQ2FuRGVhY3RpdmF0ZSwgTmF2aWdhdGlvbiwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJvdXRlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yb3V0ZXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUm9vdEd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUsIENhbkRlYWN0aXZhdGU8YW55PiB7XG4gIHByaXZhdGUgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBuYXZUb1Jlc3RvcmU6IE5hdmlnYXRpb24gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJvdXRlclNlcnZpY2U6IFJvdXRlclNlcnZpY2UpIHt9XG5cbiAgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHwgUHJvbWlzZTxib29sZWFuPiB8IGJvb2xlYW4ge1xuICAgIC8vIFdlIGFsd2F5cyBuZWVkIHRvIGluaXRpYWxpemUgcm9vdCBjb21wb25lbnQgZmlyc3QsIGFuZCBvbmx5IHRoZW4gc3RhcnQgY2hlY2tpbmcgZ3VhcmRzL3Jlc29sdmVyc1xuXG4gICAgaWYgKCF0aGlzLmluaXRpYWxpemVkKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIHRoaXMubmF2VG9SZXN0b3JlID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcblxuICAgICAgY29uc3Qgcm9vdFVybCA9IHRoaXMucm91dGVyU2VydmljZS5nZXRGbG93Um9vdFBhdGgocm91dGUpO1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3Jvb3RVcmxdLCB7IHJlcGxhY2VVcmw6ICF0aGlzLm5hdlRvUmVzdG9yZT8ucHJldmlvdXNOYXZpZ2F0aW9uIH0pO1xuICAgIH0gZWxzZSBpZiAodGhpcy5uYXZUb1Jlc3RvcmUpIHtcbiAgICAgIGNvbnN0IG5hdiA9IHRoaXMubmF2VG9SZXN0b3JlO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwobmF2LmV4dHJhY3RlZFVybCwgbmF2LmV4dHJhcyk7XG5cbiAgICAgICAgdGhpcy5uYXZUb1Jlc3RvcmUgPSBudWxsO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBjYW5EZWFjdGl2YXRlKCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,6 @@
1
+ export * from './constants';
2
+ export * from './flow.module';
3
+ export * from './guards';
4
+ export * from './services';
5
+ export * from './types';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2Zsb3cubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZ3VhcmRzJztcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG4iXX0=
@@ -0,0 +1,54 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { FormControl, FormGroup } from '@angular/forms';
3
+ import { map, shareReplay } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../services";
6
+ import * as i2 from "@angular/router";
7
+ import * as i3 from "primeng/button";
8
+ import * as i4 from "primeng/radiobutton";
9
+ import * as i5 from "@angular/forms";
10
+ import * as i6 from "primeng/inputtext";
11
+ import * as i7 from "@angular/common";
12
+ export class DebugComponent {
13
+ constructor(flowService, router, activatedRoute) {
14
+ this.flowService = flowService;
15
+ this.router = router;
16
+ this.activatedRoute = activatedRoute;
17
+ this.form = new FormGroup({
18
+ id: new FormControl(''),
19
+ });
20
+ this.flows$ = this.flowService.fetchFlows().pipe(map(flows => flows.map(flow => {
21
+ var _a, _b, _c;
22
+ 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 : {};
23
+ return {
24
+ id: flow.id,
25
+ entryPath: (_c = flow === null || flow === void 0 ? void 0 : flow.properties) === null || _c === void 0 ? void 0 : _c.entryPath,
26
+ queryParams,
27
+ queryParamsStr: JSON.stringify(queryParams),
28
+ };
29
+ })), shareReplay());
30
+ }
31
+ runFlow() {
32
+ const { id } = this.form.value;
33
+ if (!id || !this.selectedFlow) {
34
+ return;
35
+ }
36
+ const paths = this.selectedFlow.entryPath.split('/').filter(Boolean);
37
+ this.router.navigate(['..', ...paths], {
38
+ queryParams: Object.assign({ flowId: this.selectedFlow.id, quoteId: id }, this.selectedFlow.queryParams),
39
+ relativeTo: this.activatedRoute,
40
+ });
41
+ }
42
+ }
43
+ DebugComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DebugComponent, deps: [{ token: i1.FlowService }, { token: i2.Router }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
44
+ DebugComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: DebugComponent, selector: "vl-flow-debug", ngImport: i0, template: "<form [formGroup]=\"form\">\n <div class=\"field\">\n <label>SF Object ID</label>\n <input formControlName=\"id\" pInputText type=\"text\" />\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: ["form{display:flex;align-items:center;justify-content:space-between}.field{display:flex;flex-direction:column;width:200px;flex-shrink:0}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: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i4.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass"], outputs: ["onClick", "onFocus", "onBlur"] }], directives: [{ type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i6.InputText, selector: "[pInputText]" }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DebugComponent, decorators: [{
46
+ type: Component,
47
+ args: [{
48
+ selector: 'vl-flow-debug',
49
+ templateUrl: './debug.component.html',
50
+ styleUrls: ['./debug.component.scss'],
51
+ changeDetection: ChangeDetectionStrategy.OnPush,
52
+ }]
53
+ }], ctorParameters: function () { return [{ type: i1.FlowService }, { type: i2.Router }, { type: i2.ActivatedRoute }]; } });
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2RlYnVnL2RlYnVnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9kZWJ1Zy9kZWJ1Zy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQWdCcEQsTUFBTSxPQUFPLGNBQWM7SUFRekIsWUFBb0IsV0FBd0IsRUFBVSxNQUFjLEVBQVUsY0FBOEI7UUFBeEYsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBUHJHLFNBQUksR0FBRyxJQUFJLFNBQVMsQ0FBQztZQUMxQixFQUFFLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxDQUFDO1NBQ3hCLENBQUMsQ0FBQztRQU1ELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxJQUFJLENBQzlDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUNWLEtBQUssQ0FBQyxHQUFHLENBQU8sSUFBSSxDQUFDLEVBQUU7O1lBQ3JCLE1BQU0sV0FBVyxHQUFXLE1BQUEsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsVUFBVSwwQ0FBRSxXQUFXLG1DQUFJLEVBQUUsQ0FBQztZQUNoRSxPQUFPO2dCQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtnQkFDWCxTQUFTLEVBQUUsTUFBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsVUFBVSwwQ0FBRSxTQUFTO2dCQUN0QyxXQUFXO2dCQUNYLGNBQWMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQzthQUM1QyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsRUFDRCxXQUFXLEVBQUUsQ0FDZCxDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFL0IsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDN0IsT0FBTztTQUNSO1FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQyxFQUFFO1lBQ3JDLFdBQVcsa0JBQ1QsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUM1QixPQUFPLEVBQUUsRUFBRSxJQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUNqQztZQUNELFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYztTQUNoQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs0R0F6Q1UsY0FBYztnR0FBZCxjQUFjLHFEQ25CM0IsbzRCQWdDQTs0RkRiYSxjQUFjO2tCQU4xQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsd0JBQXdCO29CQUNyQyxTQUFTLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGbG93U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuaW50ZXJmYWNlIEZsb3cge1xuICBpZDogc3RyaW5nO1xuICBlbnRyeVBhdGg6IHN0cmluZztcbiAgcXVlcnlQYXJhbXM6IFBhcmFtcztcbiAgcXVlcnlQYXJhbXNTdHI6IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmwtZmxvdy1kZWJ1ZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kZWJ1Zy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RlYnVnLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEZWJ1Z0NvbXBvbmVudCB7XG4gIHB1YmxpYyBmb3JtID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgaWQ6IG5ldyBGb3JtQ29udHJvbCgnJyksXG4gIH0pO1xuXG4gIHB1YmxpYyBzZWxlY3RlZEZsb3c/OiBGbG93O1xuICBwdWJsaWMgZmxvd3MkOiBPYnNlcnZhYmxlPEZsb3dbXT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmbG93U2VydmljZTogRmxvd1NlcnZpY2UsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgdGhpcy5mbG93cyQgPSB0aGlzLmZsb3dTZXJ2aWNlLmZldGNoRmxvd3MoKS5waXBlKFxuICAgICAgbWFwKGZsb3dzID0+XG4gICAgICAgIGZsb3dzLm1hcDxGbG93PihmbG93ID0+IHtcbiAgICAgICAgICBjb25zdCBxdWVyeVBhcmFtczogUGFyYW1zID0gZmxvdz8ucHJvcGVydGllcz8ucXVlcnlQYXJhbXMgPz8ge307XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkOiBmbG93LmlkLFxuICAgICAgICAgICAgZW50cnlQYXRoOiBmbG93Py5wcm9wZXJ0aWVzPy5lbnRyeVBhdGgsXG4gICAgICAgICAgICBxdWVyeVBhcmFtcyxcbiAgICAgICAgICAgIHF1ZXJ5UGFyYW1zU3RyOiBKU09OLnN0cmluZ2lmeShxdWVyeVBhcmFtcyksXG4gICAgICAgICAgfTtcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgc2hhcmVSZXBsYXkoKSxcbiAgICApO1xuICB9XG5cbiAgcnVuRmxvdygpIHtcbiAgICBjb25zdCB7IGlkIH0gPSB0aGlzLmZvcm0udmFsdWU7XG5cbiAgICBpZiAoIWlkIHx8ICF0aGlzLnNlbGVjdGVkRmxvdykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBhdGhzID0gdGhpcy5zZWxlY3RlZEZsb3cuZW50cnlQYXRoLnNwbGl0KCcvJykuZmlsdGVyKEJvb2xlYW4pO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLi4nLCAuLi5wYXRoc10sIHtcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7XG4gICAgICAgIGZsb3dJZDogdGhpcy5zZWxlY3RlZEZsb3cuaWQsXG4gICAgICAgIHF1b3RlSWQ6IGlkLFxuICAgICAgICAuLi50aGlzLnNlbGVjdGVkRmxvdy5xdWVyeVBhcmFtcyxcbiAgICAgIH0sXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmFjdGl2YXRlZFJvdXRlLFxuICAgIH0pO1xuICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIj5cbiAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XG4gICAgPGxhYmVsPlNGIE9iamVjdCBJRDwvbGFiZWw+XG4gICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cImlkXCIgcElucHV0VGV4dCB0eXBlPVwidGV4dFwiIC8+XG4gIDwvZGl2PlxuXG4gIDxwLWJ1dHRvblxuICAgIHN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi1wcmltYXJ5XCJcbiAgICBsYWJlbD1cIlJ1biBGbG93XCJcbiAgICBbZGlzYWJsZWRdPVwiIWZvcm0udmFsdWUuaWQgfHwgIXNlbGVjdGVkRmxvd1wiXG4gICAgKG9uQ2xpY2spPVwicnVuRmxvdygpXCJcbiAgPjwvcC1idXR0b24+XG48L2Zvcm0+XG5cbjx0YWJsZT5cbiAgPHRoZWFkPlxuICAgIDx0cj5cbiAgICAgIDx0aCBbd2lkdGhdPVwiMzBcIj48L3RoPlxuICAgICAgPHRoIFt3aWR0aF09XCIxNjBcIj5JRDwvdGg+XG4gICAgICA8dGggW3dpZHRoXT1cIjE2MFwiPkVudHJ5IFBhdGg8L3RoPlxuICAgICAgPHRoPlF1ZXJ5UGFyYW1zPC90aD5cbiAgICA8L3RyPlxuICA8L3RoZWFkPlxuICA8dGJvZHk+XG4gICAgPHRyICpuZ0Zvcj1cImxldCBmbG93IG9mIGZsb3dzJCB8IGFzeW5jXCIgKGNsaWNrKT1cInNlbGVjdGVkRmxvdyA9IGZsb3dcIj5cbiAgICAgIDx0ZD48cC1yYWRpb0J1dHRvbiBbaW5wdXRJZF09XCJmbG93LmlkXCIgbmFtZT1cImZsb3dcIiBbdmFsdWVdPVwiZmxvd1wiIFsobmdNb2RlbCldPVwic2VsZWN0ZWRGbG93XCI+PC9wLXJhZGlvQnV0dG9uPjwvdGQ+XG4gICAgICA8dGQ+e3sgZmxvdy5pZCB9fTwvdGQ+XG4gICAgICA8dGQ+e3sgZmxvdy5lbnRyeVBhdGggfX08L3RkPlxuICAgICAgPHRkPnt7IGZsb3cucXVlcnlQYXJhbXNTdHIgfX08L3RkPlxuICAgIDwvdHI+XG4gIDwvdGJvZHk+XG48L3RhYmxlPlxuIl19
@@ -0,0 +1,44 @@
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 { InputTextModule } from 'primeng/inputtext';
7
+ import { RadioButtonModule } from 'primeng/radiobutton';
8
+ import { DebugComponent } from './debug.component';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/router";
11
+ const routes = [{ path: '', component: DebugComponent }];
12
+ export class DebugModule {
13
+ }
14
+ DebugModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DebugModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
15
+ DebugModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DebugModule, declarations: [DebugComponent], imports: [CommonModule,
16
+ FormsModule,
17
+ ReactiveFormsModule, i1.RouterModule, RadioButtonModule,
18
+ ButtonModule,
19
+ InputTextModule] });
20
+ DebugModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DebugModule, imports: [[
21
+ CommonModule,
22
+ FormsModule,
23
+ ReactiveFormsModule,
24
+ RouterModule.forChild(routes),
25
+ RadioButtonModule,
26
+ ButtonModule,
27
+ InputTextModule,
28
+ ]] });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: DebugModule, decorators: [{
30
+ type: NgModule,
31
+ args: [{
32
+ declarations: [DebugComponent],
33
+ imports: [
34
+ CommonModule,
35
+ FormsModule,
36
+ ReactiveFormsModule,
37
+ RouterModule.forChild(routes),
38
+ RadioButtonModule,
39
+ ButtonModule,
40
+ InputTextModule,
41
+ ],
42
+ }]
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVidWcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2RlYnVnL2RlYnVnLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFFbkQsTUFBTSxNQUFNLEdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7QUFjakUsTUFBTSxPQUFPLFdBQVc7O3lHQUFYLFdBQVc7MEdBQVgsV0FBVyxpQkFYUCxjQUFjLGFBRTNCLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CLG1CQUVuQixpQkFBaUI7UUFDakIsWUFBWTtRQUNaLGVBQWU7MEdBR04sV0FBVyxZQVZiO1lBQ1AsWUFBWTtZQUNaLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDN0IsaUJBQWlCO1lBQ2pCLFlBQVk7WUFDWixlQUFlO1NBQ2hCOzRGQUVVLFdBQVc7a0JBWnZCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxDQUFDO29CQUM5QixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7d0JBQzdCLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixlQUFlO3FCQUNoQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5pbXBvcnQgeyBJbnB1dFRleHRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0dGV4dCc7XG5pbXBvcnQgeyBSYWRpb0J1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvcmFkaW9idXR0b24nO1xuaW1wb3J0IHsgRGVidWdDb21wb25lbnQgfSBmcm9tICcuL2RlYnVnLmNvbXBvbmVudCc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW3sgcGF0aDogJycsIGNvbXBvbmVudDogRGVidWdDb21wb25lbnQgfV07XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0RlYnVnQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpLFxuICAgIFJhZGlvQnV0dG9uTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBJbnB1dFRleHRNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERlYnVnTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,117 @@
1
+ import { Component } from '@angular/core';
2
+ import { EntityUtil } from '@veloce/core';
3
+ import { RuntimeOperation, } from '@veloce/sdk/runtime';
4
+ import { Subject } from 'rxjs';
5
+ import { first, map, take, takeUntil } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/router";
8
+ import * as i2 from "@veloce/sdk/runtime";
9
+ import * as i3 from "@veloce/api";
10
+ export class LegacyProductComponent {
11
+ constructor(route, quoteService, quoteApiService, contextService, runtimeContextService, runtimeService, currentStateService) {
12
+ this.route = route;
13
+ this.quoteService = quoteService;
14
+ this.quoteApiService = quoteApiService;
15
+ this.contextService = contextService;
16
+ this.runtimeContextService = runtimeContextService;
17
+ this.runtimeService = runtimeService;
18
+ this.currentStateService = currentStateService;
19
+ this.destroyed$ = new Subject();
20
+ }
21
+ ngOnInit() {
22
+ this.quoteService.quote$
23
+ .pipe(first(), takeUntil(this.destroyed$))
24
+ .subscribe(quote => this.init(quote, this.route.snapshot.queryParams));
25
+ this.runtimeService.onSolutionStopEvent.pipe(take(1)).subscribe(lineItem => this.onSolutionStop(lineItem));
26
+ this.runtimeService.onSolutionReadyEvent.pipe(take(1)).subscribe(event => this.onSolutionReady(event));
27
+ this.runtimeService.onSolutionCancelEvent.pipe(take(1)).subscribe(() => this.onSolutionCancel());
28
+ }
29
+ ngOnDestroy() {
30
+ this.destroyed$.next();
31
+ this.destroyed$.complete();
32
+ }
33
+ onSolutionReady(lineItem) {
34
+ var _a;
35
+ lineItem.actionCode = (_a = lineItem.actionCode) !== null && _a !== void 0 ? _a : 'ADD';
36
+ }
37
+ onSolutionCancel() {
38
+ this.quoteService.quote$.pipe(first(), takeUntil(this.destroyed$)).subscribe(quote => {
39
+ window['VELO_BACK_FN'].apply(null, [quote.quoteId]);
40
+ });
41
+ }
42
+ onSolutionUpdated(lineItem) {
43
+ const states = {
44
+ configurableRamp: lineItem,
45
+ currentState: this.currentStateService.currentState,
46
+ asset: this.getAsset(lineItem),
47
+ };
48
+ this.runtimeService.updateRuntime(states);
49
+ }
50
+ onSolutionStop(lineItem) {
51
+ this.quoteService.quote$.pipe(first(), takeUntil(this.destroyed$)).subscribe(quote => {
52
+ const quoteToUpsert = Object.assign(Object.assign({}, quote), { context: this.contextService.resolve(), currentState: [...(this.currentStateService.currentState || []).filter(li => li.id !== lineItem.id), lineItem] });
53
+ this.quoteApiService
54
+ .upsertQuote(quoteToUpsert)
55
+ .pipe(take(1))
56
+ .subscribe(quote => {
57
+ window['VELO_BACK_FN'].apply(null, [quote.quoteId]);
58
+ });
59
+ });
60
+ }
61
+ init(quote, queryParams) {
62
+ const productId = queryParams['productId'];
63
+ const lineItemId = this.getLineItemId(quote, queryParams);
64
+ this.assets = quote.initialState;
65
+ lineItemId && quote.currentState ? this.reConfigure(lineItemId, quote.currentState) : this.configure(productId);
66
+ }
67
+ getLineItemId(quote, queryParams) {
68
+ if (EntityUtil.isPresent(queryParams['lineItemId'])) {
69
+ return queryParams['lineItemId'];
70
+ }
71
+ return quote.currentState
72
+ .filter(lineItem => lineItem.productId === queryParams['productId'])
73
+ .map(lineItem => lineItem.id)
74
+ .find(id => id);
75
+ }
76
+ configure(productId) {
77
+ const runtimeContext = this.getRuntimeContext(productId, '', RuntimeOperation.INIT);
78
+ this.startRuntime({}, runtimeContext);
79
+ }
80
+ reConfigure(lineItemId, currentState) {
81
+ const currentStateItem = EntityUtil.findById(lineItemId, currentState);
82
+ const runtimeContext = this.getRuntimeContext(currentStateItem.productId, currentStateItem.offeringId, RuntimeOperation.UPDATE);
83
+ const states = {
84
+ configurableRamp: currentStateItem,
85
+ currentState,
86
+ asset: this.getAsset(currentStateItem),
87
+ };
88
+ this.currentStateService.update(currentState);
89
+ this.startRuntime(states, runtimeContext);
90
+ }
91
+ getAsset(lineItem) {
92
+ return this.assets && this.assets.find(a => a.id === lineItem.openOrderLineItemId || a.id === lineItem.assetId);
93
+ }
94
+ startRuntime(states, runtimeContext$) {
95
+ runtimeContext$
96
+ .pipe(take(1), map(runtimeContext => {
97
+ this.runtimeService.startRuntime(runtimeContext, states);
98
+ }))
99
+ .subscribe();
100
+ }
101
+ getRuntimeContext(productId, offeringId, runtimeOperation) {
102
+ return this.runtimeContextService.getRuntimeContext(productId, offeringId).pipe(map(runtimeContext => {
103
+ runtimeContext.invocationContext = { runtimeOperation: RuntimeOperation[runtimeOperation] };
104
+ return runtimeContext;
105
+ }));
106
+ }
107
+ }
108
+ LegacyProductComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LegacyProductComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.QuoteService }, { token: i3.QuoteApiService }, { token: i2.ContextService }, { token: i2.RuntimeContextService }, { token: i2.RuntimeService }, { token: i2.CurrentStateService }], target: i0.ɵɵFactoryTarget.Component });
109
+ LegacyProductComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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: i2.RuntimeComponent, selector: "vl-runtime", outputs: ["solutionUpdated"] }] });
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LegacyProductComponent, decorators: [{
111
+ type: Component,
112
+ args: [{
113
+ templateUrl: './legacy-product.component.html',
114
+ styleUrls: ['./legacy-product.component.scss'],
115
+ }]
116
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.QuoteService }, { type: i3.QuoteApiService }, { type: i2.ContextService }, { type: i2.RuntimeContextService }, { type: i2.RuntimeService }, { type: i2.CurrentStateService }]; } });
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXByb2R1Y3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2xlZ2FjeS1wcm9kdWN0L2xlZ2FjeS1wcm9kdWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9sZWdhY3ktcHJvZHVjdC9sZWdhY3ktcHJvZHVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc3RCxPQUFPLEVBQXdCLFVBQVUsRUFBa0MsTUFBTSxjQUFjLENBQUM7QUFDaEcsT0FBTyxFQU9MLGdCQUFnQixHQUlqQixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQVE3RCxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQ1UsS0FBcUIsRUFDckIsWUFBMEIsRUFDMUIsZUFBZ0MsRUFDaEMsY0FBOEIsRUFDOUIscUJBQTRDLEVBQzVDLGNBQThCLEVBQzlCLG1CQUF3QztRQU54QyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7UUFDNUMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFYMUMsZUFBVSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFZdEMsQ0FBQztJQUVKLFFBQVE7UUFDTixJ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QUFjLENBQUMsRUFBRTtZQUNuQixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQ0g7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRU8saUJBQWlCLENBQ3ZCLFNBQWlCLEVBQ2pCLFVBQWtCLEVBQ2xCLGdCQUFrQztRQUVsQyxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUM3RSxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDbkIsY0FBYyxDQUFDLGlCQUFpQixHQUFHLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQzVGLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOztvSEExSVUsc0JBQXNCO3dHQUF0QixzQkFBc0Isb0RDekJuQywwRkFDQTs0RkR3QmEsc0JBQXNCO2tCQUpsQyxTQUFTO21CQUFDO29CQUNULFdBQVcsRUFBRSxpQ0FBaUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDO2lCQUMvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUXVvdGVBcGlTZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZS9hcGknO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkNvbnRleHQsIEVudGl0eVV0aWwsIExpbmVJdGVtLCBRdW90ZURyYWZ0LCBWbFdpbmRvdyB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQge1xuICBDb250ZXh0U2VydmljZSxcbiAgQ3VycmVudFN0YXRlU2VydmljZSxcbiAgUXVvdGVTZXJ2aWNlLFxuICBRdW90ZVN0YXRlcyxcbiAgUnVudGltZUNvbnRleHQsXG4gIFJ1bnRpbWVDb250ZXh0U2VydmljZSxcbiAgUnVudGltZU9wZXJhdGlvbixcbiAgUnVudGltZVNlcnZpY2UsXG4gIFNvbHV0aW9uUmVhZHlBd2FyZSxcbiAgU29sdXRpb25VcGRhdGVkQXdhcmUsXG59IGZyb20gJ0B2ZWxvY2Uvc2RrL3J1bnRpbWUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlyc3QsIG1hcCwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vbGVnYWN5LXByb2R1Y3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sZWdhY3ktcHJvZHVjdC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBMZWdhY3lQcm9kdWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIFNvbHV0aW9uVXBkYXRlZEF3YXJlLCBTb2x1dGlvblJlYWR5QXdhcmUge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHByaXZhdGUgYXNzZXRzPzogTGluZUl0ZW1bXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHF1b3RlU2VydmljZTogUXVvdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcXVvdGVBcGlTZXJ2aWNlOiBRdW90ZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb250ZXh0U2VydmljZTogQ29udGV4dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBydW50aW1lQ29udGV4dFNlcnZpY2U6IFJ1bnRpbWVDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIHJ1bnRpbWVTZXJ2aWNlOiBSdW50aW1lU2VydmljZSxcbiAgICBwcml2YXRlIGN1cnJlbnRTdGF0ZVNlcnZpY2U6IEN1cnJlbnRTdGF0ZVNlcnZpY2UsXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnF1b3RlU2VydmljZS5xdW90ZSRcbiAgICAgIC5waXBlKGZpcnN0KCksIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKVxuICAgICAgLnN1YnNjcmliZShxdW90ZSA9PiB0aGlzLmluaXQocXVvdGUsIHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMpKTtcblxuICAgIHRoaXMucnVudGltZVNlcnZpY2Uub25Tb2x1dGlvblN0b3BFdmVudC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShsaW5lSXRlbSA9PiB0aGlzLm9uU29sdXRpb25TdG9wKGxpbmVJdGVtKSk7XG5cbiAgICB0aGlzLnJ1bnRpbWVTZXJ2aWNlLm9uU29sdXRpb25SZWFkeUV2ZW50LnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKGV2ZW50ID0+IHRoaXMub25Tb2x1dGlvblJlYWR5KGV2ZW50KSk7XG5cbiAgICB0aGlzLnJ1bnRpbWVTZXJ2aWNlLm9uU29sdXRpb25DYW5jZWxFdmVudC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uU29sdXRpb25DYW5jZWwoKSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3llZCQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgb25Tb2x1dGlvblJlYWR5KGxpbmVJdGVtOiBMaW5lSXRlbSk6IHZvaWQge1xuICAgIGxpbmVJdGVtLmFjdGlvbkNvZGUgPSBsaW5lSXRlbS5hY3Rpb25Db2RlID8/ICdBREQnO1xuICB9XG5cbiAgb25Tb2x1dGlvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICB0aGlzLnF1b3RlU2VydmljZS5xdW90ZSQucGlwZShmaXJzdCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKHF1b3RlID0+IHtcbiAgICAgIHdpbmRvd1snVkVMT19CQUNLX0ZOJ10uYXBwbHkobnVsbCwgW3F1b3RlLnF1b3RlSWRdKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uU29sdXRpb25VcGRhdGVkKGxpbmVJdGVtOiBMaW5lSXRlbSk6IHZvaWQge1xuICAgIGNvbnN0IHN0YXRlczogUXVvdGVTdGF0ZXMgPSB7XG4gICAgICBjb25maWd1cmFibGVSYW1wOiBsaW5lSXRlbSxcbiAgICAgIGN1cnJlbnRTdGF0ZTogdGhpcy5jdXJyZW50U3RhdGVTZXJ2aWNlLmN1cnJlbnRTdGF0ZSxcbiAgICAgIGFzc2V0OiB0aGlzLmdldEFzc2V0KGxpbmVJdGVtKSxcbiAgICB9O1xuXG4gICAgdGhpcy5ydW50aW1lU2VydmljZS51cGRhdGVSdW50aW1lKHN0YXRlcyk7XG4gIH1cblxuICBvblNvbHV0aW9uU3RvcChsaW5lSXRlbTogTGluZUl0ZW0pOiB2b2lkIHtcbiAgICB0aGlzLnF1b3RlU2VydmljZS5xdW90ZSQucGlwZShmaXJzdCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSkuc3Vic2NyaWJlKHF1b3RlID0+IHtcbiAgICAgIGNvbnN0IHF1b3RlVG9VcHNlcnQ6IFF1b3RlRHJhZnQgPSB7XG4gICAgICAgIC4uLnF1b3RlLFxuICAgICAgICBjb250ZXh0OiB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlc29sdmUoKSBhcyBDb25maWd1cmF0aW9uQ29udGV4dCxcbiAgICAgICAgY3VycmVudFN0YXRlOiBbLi4uKHRoaXMuY3VycmVudFN0YXRlU2VydmljZS5jdXJyZW50U3RhdGUgfHwgW10pLmZpbHRlcihsaSA9PiBsaS5pZCAhPT0gbGluZUl0ZW0uaWQpLCBsaW5lSXRlbV0sXG4gICAgICB9O1xuXG4gICAgICB0aGlzLnF1b3RlQXBpU2VydmljZVxuICAgICAgICAudXBzZXJ0UXVvdGUocXVvdGVUb1Vwc2VydClcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZShxdW90ZSA9PiB7XG4gICAgICAgICAgd2luZG93WydWRUxPX0JBQ0tfRk4nXS5hcHBseShudWxsLCBbcXVvdGUucXVvdGVJZF0pO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHZvaWQge1xuICAgIGNvbnN0IHByb2R1Y3RJZCA9IHF1ZXJ5UGFyYW1zWydwcm9kdWN0SWQnXTtcbiAgICBjb25zdCBsaW5lSXRlbUlkID0gdGhpcy5nZXRMaW5lSXRlbUlkKHF1b3RlLCBxdWVyeVBhcmFtcyk7XG4gICAgdGhpcy5hc3NldHMgPSBxdW90ZS5pbml0aWFsU3RhdGU7XG5cbiAgICBsaW5lSXRlbUlkICYmIHF1b3RlLmN1cnJlbnRTdGF0ZSA/IHRoaXMucmVDb25maWd1cmUobGluZUl0ZW1JZCwgcXVvdGUuY3VycmVudFN0YXRlKSA6IHRoaXMuY29uZmlndXJlKHByb2R1Y3RJZCk7XG4gIH1cblxuICBwcml2YXRlIGdldExpbmVJdGVtSWQocXVvdGU6IFF1b3RlRHJhZnQsIHF1ZXJ5UGFyYW1zOiBQYXJhbXMpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmIChFbnRpdHlVdGlsLmlzUHJlc2VudChxdWVyeVBhcmFtc1snbGluZUl0ZW1JZCddKSkge1xuICAgICAgcmV0dXJuIHF1ZXJ5UGFyYW1zWydsaW5lSXRlbUlkJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIHF1b3RlLmN1cnJlbnRTdGF0ZVxuICAgICAgLmZpbHRlcihsaW5lSXRlbSA9PiBsaW5lSXRlbS5wcm9kdWN0SWQgPT09IHF1ZXJ5UGFyYW1zWydwcm9kdWN0SWQnXSlcbiAgICAgIC5tYXAobGluZUl0ZW0gPT4gbGluZUl0ZW0uaWQpXG4gICAgICAuZmluZChpZCA9PiBpZCk7XG4gIH1cblxuICBwcml2YXRlIGNvbmZpZ3VyZShwcm9kdWN0SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHJ1bnRpbWVDb250ZXh0ID0gdGhpcy5nZXRSdW50aW1lQ29udGV4dChwcm9kdWN0SWQsICcnLCBSdW50aW1lT3BlcmF0aW9uLklOSVQpO1xuXG4gICAgdGhpcy5zdGFydFJ1bnRpbWUoe30sIHJ1bnRpbWVDb250ZXh0KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVDb25maWd1cmUobGluZUl0ZW1JZDogc3RyaW5nLCBjdXJyZW50U3RhdGU6IExpbmVJdGVtW10pOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50U3RhdGVJdGVtID0gRW50aXR5VXRpbC5maW5kQnlJZChsaW5lSXRlbUlkLCBjdXJyZW50U3RhdGUpO1xuICAgIGNvbnN0IHJ1bnRpbWVDb250ZXh0ID0gdGhpcy5nZXRSdW50aW1lQ29udGV4dChcbiAgICAgIGN1cnJlbnRTdGF0ZUl0ZW0ucHJvZHVjdElkLFxuICAgICAgY3VycmVudFN0YXRlSXRlbS5vZmZlcmluZ0lkLFxuICAgICAgUnVudGltZU9wZXJhdGlvbi5VUERBVEUsXG4gICAgKTtcblxuICAgIGNvbnN0IHN0YXRlczogUXVvdGVTdGF0ZXMgPSB7XG4gICAgICBjb25maWd1cmFibGVSYW1wOiBjdXJyZW50U3RhdGVJdGVtLFxuICAgICAgY3VycmVudFN0YXRlLFxuICAgICAgYXNzZXQ6IHRoaXMuZ2V0QXNzZXQoY3VycmVudFN0YXRlSXRlbSksXG4gICAgfTtcblxuICAgIHRoaXMuY3VycmVudFN0YXRlU2VydmljZS51cGRhdGUoY3VycmVudFN0YXRlKTtcbiAgICB0aGlzLnN0YXJ0UnVudGltZShzdGF0ZXMsIHJ1bnRpbWVDb250ZXh0KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QXNzZXQobGluZUl0ZW06IExpbmVJdGVtKTogTGluZUl0ZW0gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFzc2V0cyAmJiB0aGlzLmFzc2V0cy5maW5kKGEgPT4gYS5pZCA9PT0gbGluZUl0ZW0ub3Blbk9yZGVyTGluZUl0ZW1JZCB8fCBhLmlkID09PSBsaW5lSXRlbS5hc3NldElkKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRSdW50aW1lKHN0YXRlczogUXVvdGVTdGF0ZXMsIHJ1bnRpbWVDb250ZXh0JDogT2JzZXJ2YWJsZTxSdW50aW1lQ29udGV4dD4pOiB2b2lkIHtcbiAgICBydW50aW1lQ29udGV4dCRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgICBtYXAocnVudGltZUNvbnRleHQgPT4ge1xuICAgICAgICAgIHRoaXMucnVudGltZVNlcnZpY2Uuc3RhcnRSdW50aW1lKHJ1bnRpbWVDb250ZXh0LCBzdGF0ZXMpO1xuICAgICAgICB9KSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UnVudGltZUNvbnRleHQoXG4gICAgcHJvZHVjdElkOiBzdHJpbmcsXG4gICAgb2ZmZXJpbmdJZDogc3RyaW5nLFxuICAgIHJ1bnRpbWVPcGVyYXRpb246IFJ1bnRpbWVPcGVyYXRpb24sXG4gICk6IE9ic2VydmFibGU8UnVudGltZUNvbnRleHQ+IHtcbiAgICByZXR1cm4gdGhpcy5ydW50aW1lQ29udGV4dFNlcnZpY2UuZ2V0UnVudGltZUNvbnRleHQocHJvZHVjdElkLCBvZmZlcmluZ0lkKS5waXBlKFxuICAgICAgbWFwKHJ1bnRpbWVDb250ZXh0ID0+IHtcbiAgICAgICAgcnVudGltZUNvbnRleHQuaW52b2NhdGlvbkNvbnRleHQgPSB7IHJ1bnRpbWVPcGVyYXRpb246IFJ1bnRpbWVPcGVyYXRpb25bcnVudGltZU9wZXJhdGlvbl0gfTtcbiAgICAgICAgcmV0dXJuIHJ1bnRpbWVDb250ZXh0O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxufVxuIiwiPHZsLXJ1bnRpbWUgI3J1bnRpbWVWaWV3IChzb2x1dGlvblVwZGF0ZWQpPVwib25Tb2x1dGlvblVwZGF0ZWQoJGV2ZW50KVwiPjwvdmwtcnVudGltZT5cbiJdfQ==
@@ -0,0 +1,20 @@
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
+ export class LegacyProductModule {
8
+ }
9
+ LegacyProductModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LegacyProductModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ LegacyProductModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LegacyProductModule, declarations: [LegacyProductComponent], imports: [CommonModule, RuntimeModule, TooltipModule], exports: [LegacyProductComponent] });
11
+ LegacyProductModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LegacyProductModule, imports: [[CommonModule, RuntimeModule, TooltipModule]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: LegacyProductModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [LegacyProductComponent],
16
+ imports: [CommonModule, RuntimeModule, TooltipModule],
17
+ exports: [LegacyProductComponent],
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LXByb2R1Y3QubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvc3JjL3BhZ2VzL2xlZ2FjeS1wcm9kdWN0L2xlZ2FjeS1wcm9kdWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQU9wRSxNQUFNLE9BQU8sbUJBQW1COztpSEFBbkIsbUJBQW1CO2tIQUFuQixtQkFBbUIsaUJBSmYsc0JBQXNCLGFBQzNCLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxhQUMxQyxzQkFBc0I7a0hBRXJCLG1CQUFtQixZQUhyQixDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDOzRGQUcxQyxtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDO29CQUNyRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJ1bnRpbWVNb2R1bGUgfSBmcm9tICdAdmVsb2NlL3Nkay9ydW50aW1lJztcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3Rvb2x0aXAnO1xuaW1wb3J0IHsgTGVnYWN5UHJvZHVjdENvbXBvbmVudCB9IGZyb20gJy4vbGVnYWN5LXByb2R1Y3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTGVnYWN5UHJvZHVjdENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJ1bnRpbWVNb2R1bGUsIFRvb2x0aXBNb2R1bGVdLFxuICBleHBvcnRzOiBbTGVnYWN5UHJvZHVjdENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIExlZ2FjeVByb2R1Y3RNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,95 @@
1
+ import { ChangeDetectionStrategy, Component, Inject, Optional } from '@angular/core';
2
+ import { EntityUtil } from '@veloce/core';
3
+ import { BehaviorSubject, catchError, first, of, Subject, switchMap, takeUntil, tap } from 'rxjs';
4
+ import { FLOW_CUSTOMIZATION } from '../../types/flow-customization.types';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@veloce/sdk/cms";
7
+ import * as i2 from "@veloce/sdk/runtime";
8
+ import * as i3 from "@angular/router";
9
+ import * as i4 from "primeng/api";
10
+ import * as i5 from "@veloce/components";
11
+ import * as i6 from "@angular/common";
12
+ export class ProductComponent {
13
+ constructor(runtimeService, conigurationService, quoteService, route, messageService, customizationService) {
14
+ this.runtimeService = runtimeService;
15
+ this.conigurationService = conigurationService;
16
+ this.quoteService = quoteService;
17
+ this.route = route;
18
+ this.messageService = messageService;
19
+ this.customizationService = customizationService;
20
+ this.destroy$ = new Subject();
21
+ this.state$ = new BehaviorSubject({ loading: true, failure: false });
22
+ }
23
+ ngOnInit() {
24
+ this.quoteService.quote$
25
+ .pipe(first(), takeUntil(this.destroy$))
26
+ .subscribe(quote => this.init(quote, this.route.snapshot.queryParams));
27
+ }
28
+ ngOnDestroy() {
29
+ this.destroy$.next();
30
+ this.destroy$.complete();
31
+ }
32
+ customize(productId) {
33
+ var _a;
34
+ if (!((_a = this.customizationService) === null || _a === void 0 ? void 0 : _a.getUiDefinition)) {
35
+ return of(null);
36
+ }
37
+ return this.customizationService.getUiDefinition(productId).pipe(tap(uiDef => {
38
+ var _a;
39
+ if (uiDef) {
40
+ this.uiDefinition = uiDef;
41
+ this.runtimeService.uiDefinitionProperties = (_a = uiDef.properties) !== null && _a !== void 0 ? _a : {};
42
+ }
43
+ }));
44
+ }
45
+ init(quote, queryParams) {
46
+ var _a;
47
+ const lineItemId = this.getLineItemId(quote, queryParams);
48
+ const currentStateItem = EntityUtil.findById(lineItemId, quote.currentState);
49
+ const productId = (_a = currentStateItem === null || currentStateItem === void 0 ? void 0 : currentStateItem.productId) !== null && _a !== void 0 ? _a : queryParams['productId'];
50
+ const { offeringId } = currentStateItem !== null && currentStateItem !== void 0 ? currentStateItem : {};
51
+ if (currentStateItem) {
52
+ this.conigurationService.updateCurrentStates({
53
+ configurableRamp: currentStateItem,
54
+ currentState: quote.currentState,
55
+ });
56
+ }
57
+ this.runtimeService
58
+ .init({ productId, offeringId })
59
+ .pipe(tap(context => (this.uiDefinition = context === null || context === void 0 ? void 0 : context.uiDefinition)), switchMap(() => this.customize(productId)), switchMap(() => this.conigurationService.configure()), tap(() => this.state$.next({ loading: false, failure: false })), catchError(error => {
60
+ this.messageService.add({
61
+ severity: 'error',
62
+ summary: error,
63
+ });
64
+ this.state$.next({ loading: false, failure: true });
65
+ return of();
66
+ }), takeUntil(this.destroy$))
67
+ .subscribe();
68
+ }
69
+ getLineItemId(quote, queryParams) {
70
+ if (EntityUtil.isPresent(queryParams['lineItemId'])) {
71
+ return queryParams['lineItemId'];
72
+ }
73
+ return quote.currentState
74
+ .filter(lineItem => lineItem.productId === queryParams['productId'])
75
+ .map(lineItem => lineItem.id)
76
+ .find(id => id);
77
+ }
78
+ }
79
+ ProductComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ProductComponent, deps: [{ token: i1.ConfigurationRuntimeService }, { token: i1.ConfigurationService }, { token: i2.QuoteService }, { token: i3.ActivatedRoute }, { token: i4.MessageService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0.ɵɵFactoryTarget.Component });
80
+ ProductComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ProductComponent, selector: "vl-flow-product", 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: i5.LoaderComponent, selector: "vl-loader", inputs: ["label"] }, { type: i1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ProductComponent, decorators: [{
82
+ type: Component,
83
+ args: [{
84
+ selector: 'vl-flow-product',
85
+ templateUrl: './product.component.html',
86
+ styleUrls: ['./product.component.scss'],
87
+ changeDetection: ChangeDetectionStrategy.OnPush,
88
+ }]
89
+ }], ctorParameters: function () { return [{ type: i1.ConfigurationRuntimeService }, { type: i1.ConfigurationService }, { type: i2.QuoteService }, { type: i3.ActivatedRoute }, { type: i4.MessageService }, { type: undefined, decorators: [{
90
+ type: Optional
91
+ }, {
92
+ type: Inject,
93
+ args: [FLOW_CUSTOMIZATION]
94
+ }] }]; } });
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvcHJvZHVjdC9wcm9kdWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9wcm9kdWN0L3Byb2R1Y3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsVUFBVSxFQUF3QixNQUFNLGNBQWMsQ0FBQztBQUloRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RyxPQUFPLEVBQXFCLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0FBYTdGLE1BQU0sT0FBTyxnQkFBZ0I7SUFNM0IsWUFDVSxjQUEyQyxFQUMzQyxtQkFBeUMsRUFDekMsWUFBMEIsRUFDMUIsS0FBcUIsRUFDckIsY0FBOEIsRUFDVSxvQkFBd0M7UUFMaEYsbUJBQWMsR0FBZCxjQUFjLENBQTZCO1FBQzNDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBc0I7UUFDekMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQ1UseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFvQjtRQVhsRixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUdoQyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVB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ZixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDcEQsT0FBTyxFQUFFLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFpQixFQUFFLFdBQW1CO1FBQzFELElBQUksVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRTtZQUNuRCxPQUFPLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNsQztRQUVELE9BQU8sS0FBSyxDQUFDLFlBQVk7YUFDdEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsS0FBSyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbkUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQzthQUM1QixJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNwQixDQUFDOzs4R0FuRlUsZ0JBQWdCLHlMQVlMLGtCQUFrQjtrR0FaN0IsZ0JBQWdCLHVEQ3BCN0Isd1ZBU0E7NEZEV2EsZ0JBQWdCO2tCQU41QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFdBQVcsRUFBRSwwQkFBMEI7b0JBQ3ZDLFNBQVMsRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUN2QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQWFJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRW50aXR5VXRpbCwgTGluZUl0ZW0sIFF1b3RlRHJhZnQgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLCBDb25maWd1cmF0aW9uU2VydmljZSwgVUlEZWZpbml0aW9uIH0gZnJvbSAnQHZlbG9jZS9zZGsvY21zJztcbmltcG9ydCB7IFF1b3RlU2VydmljZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL3J1bnRpbWUnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNhdGNoRXJyb3IsIGZpcnN0LCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmxvd0N1c3RvbWl6YXRpb24sIEZMT1dfQ1VTVE9NSVpBVElPTiB9IGZyb20gJy4uLy4uL3R5cGVzL2Zsb3ctY3VzdG9taXphdGlvbi50eXBlcyc7XG5cbmludGVyZmFjZSBTdGF0ZSB7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGZhaWx1cmU6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctcHJvZHVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIHVpRGVmaW5pdGlvbj86IFVJRGVmaW5pdGlvbjtcbiAgcHVibGljIHN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3RhdGU+KHsgbG9hZGluZzogdHJ1ZSwgZmFpbHVyZTogZmFsc2UgfSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uaWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBxdW90ZVNlcnZpY2U6IFF1b3RlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZMT1dfQ1VTVE9NSVpBVElPTikgcHJpdmF0ZSBjdXN0b21pemF0aW9uU2VydmljZT86IEZsb3dDdXN0b21pemF0aW9uLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5xdW90ZVNlcnZpY2UucXVvdGUkXG4gICAgICAucGlwZShmaXJzdCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHF1b3RlID0+IHRoaXMuaW5pdChxdW90ZSwgdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcykpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21pemUocHJvZHVjdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy5jdXN0b21pemF0aW9uU2VydmljZT8uZ2V0VWlEZWZpbml0aW9uKSB7XG4gICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuZ2V0VWlEZWZpbml0aW9uKHByb2R1Y3RJZCkucGlwZShcbiAgICAgIHRhcCh1aURlZiA9PiB7XG4gICAgICAgIGlmICh1aURlZikge1xuICAgICAgICAgIHRoaXMudWlEZWZpbml0aW9uID0gdWlEZWY7XG4gICAgICAgICAgdGhpcy5ydW50aW1lU2VydmljZS51aURlZmluaXRpb25Qcm9wZXJ0aWVzID0gdWlEZWYucHJvcGVydGllcyA/PyB7fTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHZvaWQge1xuICAgIGNvbnN0IGxpbmVJdGVtSWQgPSB0aGlzLmdldExpbmVJdGVtSWQocXVvdGUsIHF1ZXJ5UGFyYW1zKTtcbiAgICBjb25zdCBjdXJyZW50U3RhdGVJdGVtOiBMaW5lSXRlbSB8IHVuZGVmaW5lZCA9IEVudGl0eVV0aWwuZmluZEJ5SWQobGluZUl0ZW1JZCwgcXVvdGUuY3VycmVudFN0YXRlKTtcbiAgICBjb25zdCBwcm9kdWN0SWQgPSBjdXJyZW50U3RhdGVJdGVtPy5wcm9kdWN0SWQgPz8gcXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddO1xuICAgIGNvbnN0IHsgb2ZmZXJpbmdJZCB9ID0gY3VycmVudFN0YXRlSXRlbSA/PyB7fTtcblxuICAgIGlmIChjdXJyZW50U3RhdGVJdGVtKSB7XG4gICAgICB0aGlzLmNvbmlndXJhdGlvblNlcnZpY2UudXBkYXRlQ3VycmVudFN0YXRlcyh7XG4gICAgICAgIGNvbmZpZ3VyYWJsZVJhbXA6IGN1cnJlbnRTdGF0ZUl0ZW0sXG4gICAgICAgIGN1cnJlbnRTdGF0ZTogcXVvdGUuY3VycmVudFN0YXRlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5ydW50aW1lU2VydmljZVxuICAgICAgLmluaXQoeyBwcm9kdWN0SWQsIG9mZmVyaW5nSWQgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoY29udGV4dCA9PiAodGhpcy51aURlZmluaXRpb24gPSBjb250ZXh0Py51aURlZmluaXRpb24pKSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY3VzdG9taXplKHByb2R1Y3RJZCkpLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25pZ3VyYXRpb25TZXJ2aWNlLmNvbmZpZ3VyZSgpKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogZmFsc2UgfSkpLFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XG4gICAgICAgICAgICBzZXZlcml0eTogJ2Vycm9yJyxcbiAgICAgICAgICAgIHN1bW1hcnk6IGVycm9yLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogdHJ1ZSB9KTtcbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGluZUl0ZW1JZChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKEVudGl0eVV0aWwuaXNQcmVzZW50KHF1ZXJ5UGFyYW1zWydsaW5lSXRlbUlkJ10pKSB7XG4gICAgICByZXR1cm4gcXVlcnlQYXJhbXNbJ2xpbmVJdGVtSWQnXTtcbiAgICB9XG5cbiAgICByZXR1cm4gcXVvdGUuY3VycmVudFN0YXRlXG4gICAgICAuZmlsdGVyKGxpbmVJdGVtID0+IGxpbmVJdGVtLnByb2R1Y3RJZCA9PT0gcXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddKVxuICAgICAgLm1hcChsaW5lSXRlbSA9PiBsaW5lSXRlbS5pZClcbiAgICAgIC5maW5kKGlkID0+IGlkKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDx2bC1sb2FkZXIgKm5nSWY9XCJzdGF0ZS5sb2FkaW5nOyBlbHNlIGNvbnRlbnRcIiBbbGFiZWxdPVwiJ0xvYWRpbmcgVUknXCI+PC92bC1sb2FkZXI+XG5cbiAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3RhdGUuZmFpbHVyZVwiPlxuICAgICAgPHZsLWNtcy1wcmV2aWV3IFt1aURlZmluaXRpb25dPVwidWlEZWZpbml0aW9uXCI+PC92bC1jbXMtcHJldmlldz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -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 { ProductComponent } from './product.component';
6
+ import * as i0 from "@angular/core";
7
+ export class ProductModule {
8
+ }
9
+ ProductModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ProductModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ ProductModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ProductModule, declarations: [ProductComponent], imports: [CommonModule, PreviewModule, LoaderModule], exports: [ProductComponent] });
11
+ ProductModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ProductModule, imports: [[CommonModule, PreviewModule, LoaderModule]] });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ProductModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ declarations: [ProductComponent],
16
+ imports: [CommonModule, PreviewModule, LoaderModule],
17
+ exports: [ProductComponent],
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvcHJvZHVjdC9wcm9kdWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU92RCxNQUFNLE9BQU8sYUFBYTs7MkdBQWIsYUFBYTs0R0FBYixhQUFhLGlCQUpULGdCQUFnQixhQUNyQixZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksYUFDekMsZ0JBQWdCOzRHQUVmLGFBQWEsWUFIZixDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDOzRGQUd6QyxhQUFhO2tCQUx6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQztvQkFDcEQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb2FkZXJNb2R1bGUgfSBmcm9tICdAdmVsb2NlL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgUHJldmlld01vZHVsZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL2Ntcyc7XG5pbXBvcnQgeyBQcm9kdWN0Q29tcG9uZW50IH0gZnJvbSAnLi9wcm9kdWN0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1Byb2R1Y3RDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQcmV2aWV3TW9kdWxlLCBMb2FkZXJNb2R1bGVdLFxuICBleHBvcnRzOiBbUHJvZHVjdENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFByb2R1Y3RNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/router";
4
+ import * as i2 from "@angular/common";
5
+ export class RecordNotFoundComponent {
6
+ constructor(router, route) {
7
+ var _a;
8
+ this.router = router;
9
+ this.route = route;
10
+ const navigation = this.router.getCurrentNavigation();
11
+ const { state } = (navigation === null || navigation === void 0 ? void 0 : navigation.extras) || {};
12
+ this.message = state === null || state === void 0 ? void 0 : state.message;
13
+ this.subMessage = ((_a = this.message) === null || _a === void 0 ? void 0 : _a.includes('/describe')) ? 'A potential problem with permissions' : '';
14
+ }
15
+ }
16
+ RecordNotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RecordNotFoundComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
17
+ RecordNotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: RecordNotFoundComponent, selector: "vl-flow-record-not-found", ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-md-12\">\n <div class=\"message-wrapper\">\n <div class=\"msg\">\n <div *ngIf=\"message; else defaultMessage\" class=\"message-title\">\n <p>{{ message }}</p>\n\n <p *ngIf=\"subMessage\" class=\"message-title\">{{ subMessage }}</p>\n </div>\n\n <ng-template #defaultMessage>Record not found</ng-template>\n </div>\n </div>\n </div>\n</div>\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: RecordNotFoundComponent, decorators: [{
19
+ type: Component,
20
+ args: [{
21
+ selector: 'vl-flow-record-not-found',
22
+ templateUrl: './record-not-found.component.html',
23
+ changeDetection: ChangeDetectionStrategy.OnPush,
24
+ }]
25
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }]; } });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLW5vdC1mb3VuZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvcmVjb3JkLW5vdC1mb3VuZC9yZWNvcmQtbm90LWZvdW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9yZWNvcmQtbm90LWZvdW5kL3JlY29yZC1ub3QtZm91bmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVFuRSxNQUFNLE9BQU8sdUJBQXVCO0lBSWxDLFlBQW9CLE1BQWMsRUFBVSxLQUFxQjs7UUFBN0MsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQy9ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUN0RCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQSxVQUFVLGFBQVYsVUFBVSx1QkFBVixVQUFVLENBQUUsTUFBTSxLQUFJLEVBQUUsQ0FBQztRQUUzQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFBLE1BQUEsSUFBSSxDQUFDLE9BQU8sMENBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3RHLENBQUM7O3FIQVZVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLGdFQ1JwQyx1YkFlQTs0RkRQYSx1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsV0FBVyxFQUFFLG1DQUFtQztvQkFDaEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctcmVjb3JkLW5vdC1mb3VuZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWNvcmQtbm90LWZvdW5kLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFJlY29yZE5vdEZvdW5kQ29tcG9uZW50IHtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBzdWJNZXNzYWdlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9uID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcbiAgICBjb25zdCB7IHN0YXRlIH0gPSBuYXZpZ2F0aW9uPy5leHRyYXMgfHwge307XG5cbiAgICB0aGlzLm1lc3NhZ2UgPSBzdGF0ZT8ubWVzc2FnZTtcbiAgICB0aGlzLnN1Yk1lc3NhZ2UgPSB0aGlzLm1lc3NhZ2U/LmluY2x1ZGVzKCcvZGVzY3JpYmUnKSA/ICdBIHBvdGVudGlhbCBwcm9ibGVtIHdpdGggcGVybWlzc2lvbnMnIDogJyc7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxuICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlLXdyYXBwZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtc2dcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2U7IGVsc2UgZGVmYXVsdE1lc3NhZ2VcIiBjbGFzcz1cIm1lc3NhZ2UtdGl0bGVcIj5cbiAgICAgICAgICA8cD57eyBtZXNzYWdlIH19PC9wPlxuXG4gICAgICAgICAgPHAgKm5nSWY9XCJzdWJNZXNzYWdlXCIgY2xhc3M9XCJtZXNzYWdlLXRpdGxlXCI+e3sgc3ViTWVzc2FnZSB9fTwvcD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0TWVzc2FnZT5SZWNvcmQgbm90IGZvdW5kPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19