@veloceapps/sdk 11.0.0-7 → 11.0.0-71
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cms/cms.actions.d.ts +92 -29
- package/cms/components/element-renderer/element-renderer.component.d.ts +3 -10
- package/cms/services/element-context.service.d.ts +0 -1
- package/cms/types/common.types.d.ts +2 -0
- package/cms/types/index.d.ts +0 -1
- package/cms/utils/path.utils.d.ts +1 -2
- package/cms/vendor-map.d.ts +17 -40
- package/core/index.d.ts +1 -1
- package/core/modules/configuration/index.d.ts +3 -4
- package/core/modules/configuration/services/configuration-runtime.service.d.ts +8 -19
- package/core/modules/configuration/services/configuration-state.service.d.ts +8 -8
- package/core/modules/configuration/services/configuration.service.d.ts +23 -47
- package/core/modules/configuration/services/test-mode-configuration.service.d.ts +23 -0
- package/core/modules/configuration/types/configuration-runtime.types.d.ts +0 -5
- package/core/modules/configuration/types/configuration.types.d.ts +4 -2
- package/core/modules/configuration/types/index.d.ts +2 -0
- package/core/modules/flow-configuration/index.d.ts +0 -3
- package/core/modules/flow-configuration/services/flow-configuration.service.d.ts +11 -38
- package/core/operators/filter-successful-execute.operator.d.ts +3 -0
- package/core/operators/index.d.ts +1 -0
- package/core/services/catalog-products.service.d.ts +11 -0
- package/core/services/flow-info.service.d.ts +27 -12
- package/core/services/flow-state-configuration.service.d.ts +2 -8
- package/core/services/flow-state.service.d.ts +13 -22
- package/core/services/index.d.ts +3 -3
- package/core/services/integration.state.d.ts +1 -1
- package/core/services/product-images.service.d.ts +3 -3
- package/core/services/runtime-settings.service.d.ts +1 -1
- package/core/services/sales-transaction.service.d.ts +27 -0
- package/core/types/flow-customization.types.d.ts +2 -2
- package/core/types/flow-state.types.d.ts +2 -2
- package/core/types/index.d.ts +0 -1
- package/core/utils/index.d.ts +2 -2
- package/core/utils/transaction-item.utils.d.ts +7 -0
- package/core/utils/transaction-item.worker.d.ts +8 -0
- package/esm2020/cms/cms.actions.mjs +93 -71
- package/esm2020/cms/cms.default.mjs +2 -3
- package/esm2020/cms/components/element-renderer/element-renderer.component.mjs +7 -64
- package/esm2020/cms/components/preview/preview.component.mjs +3 -3
- package/esm2020/cms/services/element-context.service.mjs +1 -1
- package/esm2020/cms/types/common.types.mjs +1 -1
- package/esm2020/cms/types/index.mjs +1 -2
- package/esm2020/cms/utils/element.utils.mjs +3 -3
- package/esm2020/cms/utils/elements-resolver.mjs +16 -5
- package/esm2020/cms/utils/path.utils.mjs +1 -10
- package/esm2020/cms/vendor-map.mjs +17 -18
- package/esm2020/core/core.module.mjs +7 -7
- package/esm2020/core/index.mjs +2 -2
- package/esm2020/core/modules/configuration/configuration.module.mjs +14 -4
- package/esm2020/core/modules/configuration/index.mjs +4 -5
- package/esm2020/core/modules/configuration/services/configuration-runtime.service.mjs +16 -101
- package/esm2020/core/modules/configuration/services/configuration-state.service.mjs +65 -77
- package/esm2020/core/modules/configuration/services/configuration.service.mjs +104 -223
- package/esm2020/core/modules/configuration/services/test-mode-configuration.service.mjs +74 -0
- package/esm2020/core/modules/configuration/types/configuration-runtime.types.mjs +1 -1
- package/esm2020/core/modules/configuration/types/configuration.types.mjs +1 -1
- package/esm2020/core/modules/configuration/types/index.mjs +3 -0
- package/esm2020/core/modules/flow-configuration/flow-configuration.module.mjs +3 -4
- package/esm2020/core/modules/flow-configuration/index.mjs +1 -4
- package/esm2020/core/modules/flow-configuration/services/flow-configuration.service.mjs +44 -128
- package/esm2020/core/operators/filter-successful-execute.operator.mjs +5 -0
- package/esm2020/core/operators/index.mjs +2 -0
- package/esm2020/core/services/catalog-products.service.mjs +25 -0
- package/esm2020/core/services/flow-info.service.mjs +82 -31
- package/esm2020/core/services/flow-state-configuration.service.mjs +10 -25
- package/esm2020/core/services/flow-state.service.mjs +60 -172
- package/esm2020/core/services/index.mjs +4 -4
- package/esm2020/core/services/integration.state.mjs +2 -2
- package/esm2020/core/services/product-images.service.mjs +8 -8
- package/esm2020/core/services/runtime-settings.service.mjs +3 -3
- package/esm2020/core/services/sales-transaction.service.mjs +62 -0
- package/esm2020/core/types/flow-customization.types.mjs +1 -1
- package/esm2020/core/types/flow-state.types.mjs +1 -1
- package/esm2020/core/types/index.mjs +1 -2
- package/esm2020/core/utils/index.mjs +3 -3
- package/esm2020/core/utils/transaction-item.utils.mjs +60 -0
- package/esm2020/core/utils/transaction-item.worker.mjs +16 -0
- package/esm2020/src/components/flow-header/flow-header.component.mjs +8 -12
- package/esm2020/src/components/guided-selling/guided-selling.component.mjs +8 -12
- package/esm2020/src/flow-routing.module.mjs +12 -41
- package/esm2020/src/flow.component.mjs +5 -5
- package/esm2020/src/guards/flow.guard.mjs +13 -14
- package/esm2020/src/guards/product-unload.guard.mjs +7 -9
- package/esm2020/src/index.mjs +1 -3
- package/esm2020/src/pages/assets/assets.component.mjs +8 -9
- package/esm2020/src/pages/catalog/catalog.component.mjs +8 -9
- package/esm2020/src/pages/debug/debug.component.mjs +14 -23
- package/esm2020/src/pages/product/product.component.mjs +12 -89
- package/esm2020/src/pages/product/product.module.mjs +5 -5
- package/esm2020/src/pages/record-not-found/record-not-found.component.mjs +5 -6
- package/esm2020/src/pages/shopping-cart/shopping-cart.component.mjs +8 -9
- package/esm2020/src/resolvers/flow.resolver.mjs +10 -18
- package/esm2020/src/resolvers/pcm-model.resolver.mjs +12 -0
- package/esm2020/src/resolvers/sales-transaction.resolver.mjs +64 -0
- package/esm2020/src/resolvers/ui-definition.resolver.mjs +42 -0
- package/esm2020/src/services/flow-dialog.service.mjs +8 -8
- package/esm2020/src/services/flow-router.service.mjs +16 -33
- package/esm2020/src/services/flow.service.mjs +13 -54
- package/esm2020/src/types/index.mjs +2 -3
- package/esm2020/src/types/route.types.mjs +1 -1
- package/fesm2015/veloceapps-sdk-cms.mjs +138 -275
- package/fesm2015/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk-core.mjs +808 -1658
- package/fesm2015/veloceapps-sdk-core.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk.mjs +188 -801
- package/fesm2015/veloceapps-sdk.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-cms.mjs +134 -267
- package/fesm2020/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-core.mjs +867 -1738
- package/fesm2020/veloceapps-sdk-core.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk.mjs +188 -795
- package/fesm2020/veloceapps-sdk.mjs.map +1 -1
- package/package.json +1 -1
- package/src/components/flow-header/flow-header.component.d.ts +3 -3
- package/src/components/guided-selling/guided-selling.component.d.ts +3 -3
- package/src/flow-routing.module.d.ts +1 -2
- package/src/flow.component.d.ts +2 -2
- package/src/guards/product-unload.guard.d.ts +5 -6
- package/src/index.d.ts +0 -2
- package/src/pages/assets/assets.component.d.ts +3 -3
- package/src/pages/catalog/catalog.component.d.ts +3 -3
- package/src/pages/debug/debug.component.d.ts +2 -5
- package/src/pages/product/product.component.d.ts +5 -14
- package/src/pages/product/product.module.d.ts +1 -1
- package/src/pages/record-not-found/record-not-found.component.d.ts +2 -3
- package/src/pages/shopping-cart/shopping-cart.component.d.ts +3 -3
- package/src/resolvers/flow.resolver.d.ts +5 -6
- package/src/resolvers/pcm-model.resolver.d.ts +3 -0
- package/src/resolvers/sales-transaction.resolver.d.ts +18 -0
- package/src/resolvers/ui-definition.resolver.d.ts +3 -0
- package/src/services/flow-dialog.service.d.ts +5 -4
- package/src/services/flow-router.service.d.ts +4 -6
- package/src/services/flow.service.d.ts +2 -7
- package/src/types/index.d.ts +1 -2
- package/src/types/route.types.d.ts +0 -5
- package/cms/plugins/configuration.plugin.d.ts +0 -23
- package/cms/types/configuration.types.d.ts +0 -21
- package/core/modules/configuration/helpers.d.ts +0 -6
- package/core/modules/configuration/services/runtime-context.service.d.ts +0 -12
- package/core/modules/flow-configuration/services/flow-update.service.d.ts +0 -13
- package/core/modules/flow-configuration/types/update.types.d.ts +0 -12
- package/core/services/context.service.d.ts +0 -23
- package/core/services/quote-draft.service.d.ts +0 -50
- package/core/types/runtime.types.d.ts +0 -30
- package/core/utils/line-item.utils.d.ts +0 -25
- package/core/utils/line-item.worker.d.ts +0 -9
- package/esm2020/cms/plugins/configuration.plugin.mjs +0 -109
- package/esm2020/cms/types/configuration.types.mjs +0 -2
- package/esm2020/core/modules/configuration/helpers.mjs +0 -73
- package/esm2020/core/modules/configuration/services/runtime-context.service.mjs +0 -45
- package/esm2020/core/modules/flow-configuration/services/flow-update.service.mjs +0 -138
- package/esm2020/core/modules/flow-configuration/types/update.types.mjs +0 -2
- package/esm2020/core/services/context.service.mjs +0 -91
- package/esm2020/core/services/quote-draft.service.mjs +0 -192
- package/esm2020/core/types/runtime.types.mjs +0 -16
- package/esm2020/core/utils/line-item.utils.mjs +0 -187
- package/esm2020/core/utils/line-item.worker.mjs +0 -19
- package/esm2020/src/guards/context.guard.mjs +0 -91
- package/esm2020/src/guards/index.mjs +0 -2
- package/esm2020/src/pages/remote/remote.component.mjs +0 -342
- package/esm2020/src/pages/remote/remote.module.mjs +0 -20
- package/esm2020/src/pages/remote/remote.types.mjs +0 -2
- package/esm2020/src/resolvers/quote.resolver.mjs +0 -82
- package/esm2020/src/types/context-route.types.mjs +0 -2
- package/esm2020/src/types/metrics.types.mjs +0 -2
- package/esm2020/src/utils/flow.utils.mjs +0 -25
- package/esm2020/src/utils/index.mjs +0 -2
- package/src/guards/context.guard.d.ts +0 -19
- package/src/guards/index.d.ts +0 -1
- package/src/pages/remote/remote.component.d.ts +0 -46
- package/src/pages/remote/remote.module.d.ts +0 -10
- package/src/pages/remote/remote.types.d.ts +0 -4
- package/src/resolvers/quote.resolver.d.ts +0 -19
- package/src/types/context-route.types.d.ts +0 -5
- package/src/types/metrics.types.d.ts +0 -5
- package/src/utils/flow.utils.d.ts +0 -8
- package/src/utils/index.d.ts +0 -1
@@ -1,164 +1,119 @@
|
|
1
|
-
import { HttpErrorResponse } from '@angular/common/http';
|
2
1
|
import { Injectable } from '@angular/core';
|
3
|
-
import {
|
4
|
-
import {
|
5
|
-
import {
|
6
|
-
import { cloneDeep, transform } from 'lodash';
|
2
|
+
import { OrchestrationsApiService } from '@veloceapps/api/v2';
|
3
|
+
import { extractErrorDetails, isDefined, } from '@veloceapps/core';
|
4
|
+
import { cloneDeep } from 'lodash';
|
7
5
|
import { MessageService } from 'primeng/api';
|
8
|
-
import {
|
9
|
-
import {
|
10
|
-
import {
|
11
|
-
import {
|
12
|
-
import { QuoteDraftService } from '../../../services/quote-draft.service';
|
13
|
-
import { RuntimeSettingsService } from '../../../services/runtime-settings.service';
|
14
|
-
import { RuntimeStep } from '../../../types';
|
15
|
-
import { assetPredicateFn } from '../../../utils';
|
16
|
-
import { LineItemWorker } from '../../../utils/line-item.worker';
|
17
|
-
import { getDefaultLineItem, getGuidedSellingConfigurationRequest } from '../helpers';
|
6
|
+
import { BehaviorSubject, noop, of, throwError } from 'rxjs';
|
7
|
+
import { catchError, filter, finalize, map, tap } from 'rxjs/operators';
|
8
|
+
import { FlowInfoService, SalesTransactionService } from '../../../services';
|
9
|
+
import { generateTransactionItem, TransactionItemWorker } from '../../../utils';
|
18
10
|
import { ConfigurationRuntimeService } from './configuration-runtime.service';
|
19
11
|
import * as i0 from "@angular/core";
|
20
|
-
import * as i1 from "../../../services
|
21
|
-
import * as i2 from "
|
22
|
-
import * as i3 from "
|
23
|
-
import * as i4 from "@veloceapps/api";
|
24
|
-
import * as i5 from "primeng/api";
|
25
|
-
import * as i6 from "primeng/dynamicdialog";
|
26
|
-
import * as i7 from "../../../services/runtime-settings.service";
|
12
|
+
import * as i1 from "../../../services";
|
13
|
+
import * as i2 from "primeng/api";
|
14
|
+
import * as i3 from "./configuration-runtime.service";
|
15
|
+
import * as i4 from "@veloceapps/api/v2";
|
27
16
|
export class ConfigurationService {
|
28
|
-
|
29
|
-
this.
|
30
|
-
|
31
|
-
|
32
|
-
this.
|
17
|
+
get state$() {
|
18
|
+
return this.configurationStateSubj$.asObservable().pipe(filter(isDefined));
|
19
|
+
}
|
20
|
+
get state() {
|
21
|
+
return this.configurationStateSubj$.getValue();
|
22
|
+
}
|
23
|
+
get previousState() {
|
24
|
+
return this.previousConfigurationStateSubj$.getValue();
|
25
|
+
}
|
26
|
+
get root$() {
|
27
|
+
return this.state$.pipe(map(state => state.salesTransaction.salesTransactionItems[0]), filter(isDefined));
|
28
|
+
}
|
29
|
+
get root() {
|
30
|
+
return this.configurationStateSubj$.getValue()?.salesTransaction.salesTransactionItems[0] ?? null;
|
31
|
+
}
|
32
|
+
constructor(flowInfoService, messageService, configurationRuntimeService, salesTransactionService, orchestrationsApiService) {
|
33
|
+
this.flowInfoService = flowInfoService;
|
33
34
|
this.messageService = messageService;
|
34
|
-
this.
|
35
|
-
this.
|
36
|
-
this.
|
37
|
-
this.
|
38
|
-
this.
|
35
|
+
this.configurationRuntimeService = configurationRuntimeService;
|
36
|
+
this.salesTransactionService = salesTransactionService;
|
37
|
+
this.orchestrationsApiService = orchestrationsApiService;
|
38
|
+
this.hasUnsavedChanges = false;
|
39
|
+
this.configurationStateSubj$ = new BehaviorSubject(null);
|
40
|
+
this.previousConfigurationStateSubj$ = new BehaviorSubject(null);
|
39
41
|
this.isLoadingSubj$ = new BehaviorSubject(false);
|
40
42
|
this.isLoading$ = this.isLoadingSubj$.asObservable();
|
41
|
-
this.hasUnsavedChanges = false;
|
42
43
|
}
|
43
44
|
reset() {
|
44
45
|
this.hasUnsavedChanges = false;
|
45
|
-
this.
|
46
|
-
this.
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
46
|
+
this.configurationStateSubj$.next(null);
|
47
|
+
this.previousConfigurationStateSubj$.next(null);
|
48
|
+
}
|
49
|
+
init$() {
|
50
|
+
const { state } = this.salesTransactionService;
|
51
|
+
const { productId, transactionItemId } = this.flowInfoService.context;
|
52
|
+
if (!state) {
|
53
|
+
return of(undefined);
|
54
|
+
}
|
55
|
+
const salesTransactionItems = state?.salesTransaction.salesTransactionItems ?? [];
|
56
|
+
let transactionItem = salesTransactionItems.find(item => item.id === transactionItemId);
|
57
|
+
if (!transactionItem && productId) {
|
58
|
+
transactionItem =
|
59
|
+
salesTransactionItems.find(item => item.productId === productId) ?? generateTransactionItem(productId);
|
60
|
+
}
|
61
|
+
const configurationState = {
|
62
|
+
...state,
|
63
|
+
salesTransaction: {
|
64
|
+
...state.salesTransaction,
|
65
|
+
salesTransactionItems: transactionItem ? [transactionItem] : [],
|
66
|
+
},
|
67
|
+
};
|
68
|
+
this.configurationStateSubj$.next(configurationState);
|
69
|
+
this.previousConfigurationStateSubj$.next(configurationState);
|
70
|
+
return of(undefined);
|
71
|
+
}
|
72
|
+
patch$(transactionItem) {
|
73
|
+
const { state, root } = this;
|
74
|
+
if (!state) {
|
75
|
+
return throwError(() => new Error(`Configuration State is not initialized`));
|
54
76
|
}
|
55
|
-
|
56
|
-
|
57
|
-
|
77
|
+
if (!root) {
|
78
|
+
return throwError(() => new Error(`Root SalesTransactionItem not found`));
|
79
|
+
}
|
80
|
+
const newRoot = new TransactionItemWorker(root).replace(transactionItem).ti;
|
81
|
+
const newTransactionContext = {
|
82
|
+
...state,
|
83
|
+
salesTransaction: {
|
84
|
+
...state.salesTransaction,
|
85
|
+
salesTransactionItems: [newRoot],
|
86
|
+
},
|
87
|
+
};
|
88
|
+
return this.configureRequest$(newTransactionContext).pipe(catchError(error => {
|
58
89
|
console.error(error);
|
59
|
-
if (!this.
|
90
|
+
if (!this.configurationRuntimeService.uiDefinitionProps.suppressToastMessages) {
|
60
91
|
this.messageService.add({ severity: 'error', summary: error });
|
61
92
|
}
|
62
|
-
// bounce back if configuration call has failed
|
63
|
-
const prevState = this.configurationState.value;
|
64
|
-
this.configurationState.next(prevState ? { ...prevState } : null);
|
65
93
|
return throwError(() => error);
|
66
94
|
}), tap(() => {
|
67
95
|
if (!this.hasUnsavedChanges) {
|
68
96
|
this.hasUnsavedChanges = true;
|
69
97
|
}
|
70
|
-
}));
|
71
|
-
}
|
72
|
-
patch(lineItem, options) {
|
73
|
-
this.patch$(lineItem, options).subscribe();
|
74
|
-
}
|
75
|
-
setConfigurableRamp(lineItem) {
|
76
|
-
this.configurableRamp = lineItem;
|
77
|
-
}
|
78
|
-
get() {
|
79
|
-
return this.configurationState.pipe(map(state => state?.lineItem), shareReplay());
|
80
|
-
}
|
81
|
-
getSnapshot() {
|
82
|
-
return this.configurationState.value?.lineItem ? { ...this.configurationState.value?.lineItem } : undefined;
|
83
|
-
}
|
84
|
-
getRuntimeModel() {
|
85
|
-
const runtimeModel = this.runtimeService.runtimeModel;
|
86
|
-
if (!runtimeModel) {
|
87
|
-
throw new Error('Runtime model not initialized');
|
88
|
-
}
|
89
|
-
return runtimeModel;
|
90
|
-
}
|
91
|
-
getRuntimeContext() {
|
92
|
-
const runtimeContext = this.runtimeService.runtimeContext;
|
93
|
-
if (!runtimeContext) {
|
94
|
-
throw new Error('Runtime context not initialized');
|
95
|
-
}
|
96
|
-
return runtimeContext;
|
97
|
-
}
|
98
|
-
get state$() {
|
99
|
-
return this.configurationState.asObservable();
|
98
|
+
}), map(noop));
|
100
99
|
}
|
101
|
-
|
102
|
-
|
100
|
+
patch(transactionItem) {
|
101
|
+
this.patch$(transactionItem).subscribe();
|
103
102
|
}
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
}
|
110
|
-
get context$() {
|
111
|
-
return this.contextService.resolve$();
|
112
|
-
}
|
113
|
-
get charges$() {
|
114
|
-
return this.configurationState.pipe(map(state => state?.charges ?? {}));
|
115
|
-
}
|
116
|
-
get chargesSnapshot() {
|
117
|
-
return this.configurationState.value?.charges ?? {};
|
118
|
-
}
|
119
|
-
get pricePlans$() {
|
120
|
-
return this.configurationState.pipe(map(state => state?.pricePlans ?? {}));
|
121
|
-
}
|
122
|
-
get pricePlansSnapshot() {
|
123
|
-
return this.configurationState.value?.pricePlans ?? {};
|
124
|
-
}
|
125
|
-
get procedureContext$() {
|
126
|
-
return this.configurationState.pipe(map(state => state?.procedureContext ?? {}));
|
127
|
-
}
|
128
|
-
get procedureContextSnapshot() {
|
129
|
-
return this.configurationState.value?.procedureContext ?? {};
|
130
|
-
}
|
131
|
-
configure() {
|
132
|
-
return this.configureRequest$(this.generateRequest());
|
133
|
-
}
|
134
|
-
configureRequest$(configurationRequest) {
|
135
|
-
const runtimeContext = this.getRuntimeContext();
|
136
|
-
const runtimeModel = this.getRuntimeModel();
|
137
|
-
const uiDefinitionProperties = this.getUIDefinitionProperties();
|
138
|
-
const mainPricingEnabled = runtimeContext.properties?.PricingEnabled;
|
139
|
-
const pricingEnabled = mainPricingEnabled ? mainPricingEnabled === 'true' : uiDefinitionProperties.pricingEnabled;
|
140
|
-
const customPriceApi = this.runtimeSettings.getConfigurationSettings()['CUSTOM_PRICE_API'];
|
103
|
+
configureRequest$(transactionContext) {
|
104
|
+
const request = {
|
105
|
+
transactionContext,
|
106
|
+
flowId: this.flowInfoService.flow.id,
|
107
|
+
};
|
141
108
|
this.isLoadingSubj$.next(true);
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
pricingEnabled,
|
148
|
-
});
|
149
|
-
return configure$.pipe(tap(result => {
|
150
|
-
this.contextService.update(result.context);
|
151
|
-
this.configurationState.next(result);
|
152
|
-
this.previousConfigurationState.next(cloneDeep(result));
|
153
|
-
if (result.deletedLineItems?.length) {
|
154
|
-
this.showInactiveProductsConfirmation();
|
155
|
-
}
|
156
|
-
this.configurableRamp = result.lineItem;
|
157
|
-
}), map(({ lineItem }) => lineItem), catchError(error => throwError(() => {
|
158
|
-
const resetState = this.previousConfigurationState.value;
|
109
|
+
return this.orchestrationsApiService.apply$(request).pipe(tap(result => {
|
110
|
+
this.configurationStateSubj$.next(result);
|
111
|
+
this.previousConfigurationStateSubj$.next(cloneDeep(result));
|
112
|
+
}), map(response => response.salesTransaction), catchError(error => throwError(() => {
|
113
|
+
const resetState = this.previousConfigurationStateSubj$.getValue();
|
159
114
|
if (resetState) {
|
160
|
-
this.
|
161
|
-
this.
|
115
|
+
this.previousConfigurationStateSubj$.next(cloneDeep(resetState));
|
116
|
+
this.configurationStateSubj$.next(resetState);
|
162
117
|
}
|
163
118
|
if (error.error) {
|
164
119
|
return extractErrorDetails(error.error).join('. ');
|
@@ -167,98 +122,24 @@ export class ConfigurationService {
|
|
167
122
|
})), finalize(() => this.isLoadingSubj$.next(false)));
|
168
123
|
}
|
169
124
|
configureExternal$(props) {
|
170
|
-
|
171
|
-
|
172
|
-
.pipe(switchMap(() => this.configure()), first(), catchError(error => {
|
173
|
-
this.messageService.add({ severity: ToastType.error, summary: error });
|
174
|
-
throw error;
|
175
|
-
}), finalize(() => this.reset()));
|
125
|
+
// TODO: implement
|
126
|
+
throw new Error('Not implemented');
|
176
127
|
}
|
177
128
|
configureGuidedSelling$(data) {
|
178
|
-
|
179
|
-
|
180
|
-
configurationRequest: getGuidedSellingConfigurationRequest(data, this.contextService.resolve()),
|
181
|
-
})
|
182
|
-
.pipe(catchError(error => {
|
183
|
-
if (error instanceof HttpErrorResponse) {
|
184
|
-
this.messageService.add({ severity: ToastType.error, summary: error.error.message || error.error });
|
185
|
-
}
|
186
|
-
throw error;
|
187
|
-
}));
|
188
|
-
}
|
189
|
-
generateRequest(lightMode = true) {
|
190
|
-
const lineItem = this.generateLineItem();
|
191
|
-
let request = {
|
192
|
-
lineItem,
|
193
|
-
mode: this.mode,
|
194
|
-
step: !this.configurationState.value?.lineItem ? RuntimeStep.START : RuntimeStep.UPDATE,
|
195
|
-
attributeDomainMode: 'ALL',
|
196
|
-
context: this.contextService.resolve(),
|
197
|
-
lineItems: this.quoteDraftService.quoteDraft?.currentState || [],
|
198
|
-
asset: this.getAsset(),
|
199
|
-
};
|
200
|
-
if (lightMode) {
|
201
|
-
request = ConfigurationTranslatorUtils.lightenConfigurationRequest(request);
|
202
|
-
}
|
203
|
-
return request;
|
204
|
-
}
|
205
|
-
generateLineItem() {
|
206
|
-
const runtimeContext = this.getRuntimeContext();
|
207
|
-
const uiDefinitionProperties = this.getUIDefinitionProperties();
|
208
|
-
let lineItem = this.configurableRamp;
|
209
|
-
if (!lineItem) {
|
210
|
-
const { initializationProps } = this.runtimeService ?? {};
|
211
|
-
lineItem = getDefaultLineItem(runtimeContext, uiDefinitionProperties, initializationProps?.defaultQty);
|
212
|
-
// Set default attributes
|
213
|
-
if (initializationProps?.attributesMap) {
|
214
|
-
const attributes = transform(initializationProps?.attributesMap, (acc, value, name) => acc.push({ name, value }), []);
|
215
|
-
lineItem = new LineItemWorker(lineItem).patchAttribute(attributes).li;
|
216
|
-
}
|
217
|
-
}
|
218
|
-
return lineItem;
|
129
|
+
// TODO: implement
|
130
|
+
throw new Error('Not implemented');
|
219
131
|
}
|
220
|
-
|
221
|
-
const
|
222
|
-
if (!
|
223
|
-
|
132
|
+
getPCMModel() {
|
133
|
+
const pcmModel = this.configurationRuntimeService.pcmModel;
|
134
|
+
if (!pcmModel) {
|
135
|
+
throw new Error('PCM model not initialized');
|
224
136
|
}
|
225
|
-
|
226
|
-
return this.quoteDraftService.assetsState?.initialState.find(li => assetPredicateFn(li, assetId));
|
227
|
-
}
|
228
|
-
getUIDefinitionProperties() {
|
229
|
-
return {
|
230
|
-
...(this.getRuntimeContext().uiDefinitionContainer?.source.properties ?? {}),
|
231
|
-
...(this.runtimeService.uiDefinitionProperties ?? {}),
|
232
|
-
};
|
233
|
-
}
|
234
|
-
showInactiveProductsConfirmation() {
|
235
|
-
const confirmationConfig = {
|
236
|
-
title: ' ',
|
237
|
-
description: 'This quote contains inactive products. Do you want to remove them?',
|
238
|
-
primaryButtonLabel: 'Remove products',
|
239
|
-
secondaryButtonLabel: 'Back to Quote',
|
240
|
-
};
|
241
|
-
this.dialogService
|
242
|
-
.open(ConfirmationComponent, {
|
243
|
-
dismissableMask: false,
|
244
|
-
closeOnEscape: false,
|
245
|
-
closable: false,
|
246
|
-
showHeader: true,
|
247
|
-
header: `Inactive Products in Quote`,
|
248
|
-
width: '440px',
|
249
|
-
data: { confirmationConfig },
|
250
|
-
})
|
251
|
-
.onClose.subscribe(result => {
|
252
|
-
if (!result) {
|
253
|
-
const context = this.contextService.resolve();
|
254
|
-
window['VELO_BACK_FN'].apply(null, [context.headerId]);
|
255
|
-
}
|
256
|
-
});
|
137
|
+
return pcmModel;
|
257
138
|
}
|
258
139
|
}
|
259
|
-
ConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationService, deps: [{ token: i1.
|
140
|
+
ConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationService, deps: [{ token: i1.FlowInfoService }, { token: i2.MessageService }, { token: i3.ConfigurationRuntimeService }, { token: i1.SalesTransactionService }, { token: i4.OrchestrationsApiService }], target: i0.ɵɵFactoryTarget.Injectable });
|
260
141
|
ConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationService });
|
261
142
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfigurationService, decorators: [{
|
262
143
|
type: Injectable
|
263
|
-
}], ctorParameters: function () { return [{ type: i1.
|
264
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY29yZS9tb2R1bGVzL2NvbmZpZ3VyYXRpb24vc2VydmljZXMvY29uZmlndXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHFCQUFxQixFQUFzQixTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RixPQUFPLEVBSUwsaUJBQWlCLEVBRWpCLDRCQUE0QixFQUU1QixtQkFBbUIsR0FPcEIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEVBQUUsU0FBUyxFQUFjLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFjLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3BGLE9BQU8sRUFBa0IsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUV0RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7O0FBSzlFLE1BQU0sT0FBTyxvQkFBb0I7SUFXL0IsWUFDVSxpQkFBb0MsRUFDcEMsY0FBMkMsRUFDM0MsY0FBOEIsRUFDOUIsdUJBQWdELEVBQ2hELGNBQThCLEVBQzlCLGFBQTRCLEVBQzVCLGVBQXVDO1FBTnZDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsbUJBQWMsR0FBZCxjQUFjLENBQTZCO1FBQzNDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qiw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBQ2hELG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixvQkFBZSxHQUFmLGVBQWUsQ0FBd0I7UUFqQnpDLFNBQUksR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7UUFHaEMsdUJBQWtCLEdBQUcsSUFBSSxlQUFlLENBQXdCLElBQUksQ0FBQyxDQUFDO1FBQ3RFLCtCQUEwQixHQUFHLElBQUksZUFBZSxDQUF3QixJQUFJLENBQUMsQ0FBQztRQUM5RSxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTdDLGVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2hELHNCQUFpQixHQUFHLEtBQUssQ0FBQztJQVU5QixDQUFDO0lBRUcsS0FBSztRQUNWLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU1QixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQWtCLEVBQUUsT0FBOEI7UUFDOUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLENBQUM7U0FDakU7UUFFRCxNQUFNLDBCQUEwQixHQUM5QixPQUFPLEVBQUUsMEJBQTBCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsNkJBQTZCLENBQUMsS0FBSyxNQUFNLENBQUM7UUFFbkgsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsMEJBQTBCLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFcEcsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUMxQixVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVyQixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxxQkFBcUIsRUFBRTtnQkFDckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2FBQ2hFO1lBRUQsK0NBQStDO1lBQy9DLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7WUFDaEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFbEUsT0FBTyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7YUFDL0I7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFrQixFQUFFLE9BQThCO1FBQzdELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxRQUFrQjtRQUMzQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFTSxHQUFHO1FBQ1IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLEVBQzdCLFdBQVcsRUFBRSxDQUNkLENBQUM7SUFDSixDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQzlHLENBQUM7SUFFTSxlQUFlO1FBQ3BCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDO1FBQ3RELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1NBQ2xEO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVNLGlCQUFpQjtRQUN0QixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQztRQUMxRCxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsaUNBQWlDLENBQUMsQ0FBQztTQUNwRDtRQUVELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxxQkFBcUI7UUFDOUIsT0FBTyxJQUFJLENBQUMsMEJBQTBCLENBQUMsS0FBSyxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssRUFBRSxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBVyxrQkFBa0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsZ0JBQWdCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsSUFBVyx3QkFBd0I7UUFDakMsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLGdCQUFnQixJQUFJLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxvQkFBMEM7UUFDakUsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDaEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzVDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFFaEUsTUFBTSxrQkFBa0IsR0FBRyxjQUFjLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQztRQUNyRSxNQUFNLGNBQWMsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxjQUFjLENBQUM7UUFDbEgsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyx3QkFBd0IsRUFBRSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFFM0YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0IsTUFBTSxVQUFVLEdBQ2QsY0FBYyxJQUFJLGNBQWM7WUFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsWUFBWSxFQUFFLENBQUM7WUFDaEgsQ0FBQyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDN0Msb0JBQW9CO2dCQUNwQixZQUFZO2dCQUNaLGNBQWM7YUFDZixDQUFDLENBQUM7UUFFVCxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQ3BCLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNYLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3JDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFFeEQsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFO2dCQUNuQyxJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQzthQUN6QztZQUVELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQzFDLENBQUMsQ0FBQyxFQUNGLEdBQUcsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUMvQixVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDakIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxLQUFLLENBQUM7WUFDekQsSUFBSSxVQUFVLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFDNUQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUMxQztZQUNELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtnQkFDZixPQUFPLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDcEQ7WUFDRCxPQUFPLEtBQUssQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FDSCxFQUNELFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNoRCxDQUFDO0lBQ0osQ0FBQztJQUVNLGtCQUFrQixDQUFDLEtBQWlDO1FBQ3pELE9BQU8sSUFBSSxDQUFDLGNBQWM7YUFDdkIsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxHQUFHLEVBQUUsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQzthQUMvRixJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUNqQyxLQUFLLEVBQUUsRUFDUCxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN2RSxNQUFNLEtBQUssQ0FBQztRQUNkLENBQUMsQ0FBQyxFQUNGLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FDN0IsQ0FBQztJQUNOLENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxJQUE2QjtRQUMxRCxPQUFPLElBQUksQ0FBQyx1QkFBdUI7YUFDaEMsaUJBQWlCLENBQUM7WUFDakIsb0JBQW9CLEVBQUUsb0NBQW9DLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDaEcsQ0FBQzthQUNELElBQUksQ0FDSCxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxLQUFLLFlBQVksaUJBQWlCLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO2FBQ3JHO1lBQ0QsTUFBTSxLQUFLLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVNLGVBQWUsQ0FBQyxZQUFxQixJQUFJO1FBQzlDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXpDLElBQUksT0FBTyxHQUF5QjtZQUNsQyxRQUFRO1lBQ1IsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNO1lBQ3ZGLG1CQUFtQixFQUFFLEtBQUs7WUFDMUIsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFO1lBQ3RDLFNBQVMsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLFlBQVksSUFBSSxFQUFFO1lBQ2hFLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1NBQ3ZCLENBQUM7UUFFRixJQUFJLFNBQVMsRUFBRTtZQUNiLE9BQU8sR0FBRyw0QkFBNEIsQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM3RTtRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDaEQsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUVoRSxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDckMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNiLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDO1lBRTFELFFBQVEsR0FBRyxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFFdkcseUJBQXlCO1lBQ3pCLElBQUksbUJBQW1CLEVBQUUsYUFBYSxFQUFFO2dCQUN0QyxNQUFNLFVBQVUsR0FBRyxTQUFTLENBQzFCLG1CQUFtQixFQUFFLGFBQWEsRUFDbEMsQ0FBQyxHQUFtQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFDL0QsRUFBRSxDQUNILENBQUM7Z0JBRUYsUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDdkU7U0FDRjtRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFTSxRQUFRO1FBQ2IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ3ZDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDYixPQUFPO1NBQ1I7UUFFRCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQztRQUNqRSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7SUFFTyx5QkFBeUI7UUFDL0IsT0FBTztZQUNMLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSxNQUFNLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQztZQUM1RSxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsSUFBSSxFQUFFLENBQUM7U0FDdEQsQ0FBQztJQUNKLENBQUM7SUFFTyxnQ0FBZ0M7UUFDdEMsTUFBTSxrQkFBa0IsR0FBdUI7WUFDN0MsS0FBSyxFQUFFLEdBQUc7WUFDVixXQUFXLEVBQUUsb0VBQW9FO1lBQ2pGLGtCQUFrQixFQUFFLGlCQUFpQjtZQUNyQyxvQkFBb0IsRUFBRSxlQUFlO1NBQ3RDLENBQUM7UUFFRixJQUFJLENBQUMsYUFBYTthQUNmLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUMzQixlQUFlLEVBQUUsS0FBSztZQUN0QixhQUFhLEVBQUUsS0FBSztZQUNwQixRQUFRLEVBQUUsS0FBSztZQUNmLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLE1BQU0sRUFBRSw0QkFBNEI7WUFDcEMsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsRUFBRSxrQkFBa0IsRUFBRTtTQUM3QixDQUFDO2FBQ0QsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMxQixJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNYLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzlDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7YUFDeEQ7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O2lIQXpUVSxvQkFBb0I7cUhBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uQXBpU2VydmljZSB9IGZyb20gJ0B2ZWxvY2VhcHBzL2FwaSc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Db21wb25lbnQsIENvbmZpcm1hdGlvbkNvbmZpZywgVG9hc3RUeXBlIH0gZnJvbSAnQHZlbG9jZWFwcHMvY29tcG9uZW50cyc7XG5pbXBvcnQge1xuICBDaGFyZ2UsXG4gIENvbXBpbGVkUHJpY2VQbGFuLFxuICBDb25maWd1cmF0aW9uQ29udGV4dCxcbiAgQ29uZmlndXJhdGlvbk1vZGUsXG4gIENvbmZpZ3VyYXRpb25SZXF1ZXN0LFxuICBDb25maWd1cmF0aW9uVHJhbnNsYXRvclV0aWxzLFxuICBDb25maWd1cmVQcmljZSxcbiAgZXh0cmFjdEVycm9yRGV0YWlscyxcbiAgTGluZUl0ZW0sXG4gIE5ld0F0dHJpYnV0ZSxcbiAgUGF0Y2hMaW5lSXRlbU9wdGlvbnMsXG4gIFJ1bnRpbWVNb2RlbCxcbiAgVUlEZWZpbml0aW9uUHJvcHMsXG4gIFZsV2luZG93LFxufSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCwgRGljdGlvbmFyeSwgdHJhbnNmb3JtIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaW5hbGl6ZSwgZmlyc3QsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2NvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBRdW90ZURyYWZ0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3F1b3RlLWRyYWZ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgUnVudGltZVNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3J1bnRpbWUtc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBSdW50aW1lQ29udGV4dCwgUnVudGltZVN0ZXAgfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBhc3NldFByZWRpY2F0ZUZuIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgTGluZUl0ZW1Xb3JrZXIgfSBmcm9tICcuLi8uLi8uLi91dGlscy9saW5lLWl0ZW0ud29ya2VyJztcbmltcG9ydCB7IGdldERlZmF1bHRMaW5lSXRlbSwgZ2V0R3VpZGVkU2VsbGluZ0NvbmZpZ3VyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi4vaGVscGVycyc7XG5pbXBvcnQgeyBFeHRlcm5hbENvbmZpZ3VyYXRpb25Qcm9wcywgR3VpZGVkU2VsbGluZ1N1Ym1pdERhdGEgfSBmcm9tICcuLi90eXBlcy9jb25maWd1cmF0aW9uLnR5cGVzJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbi1ydW50aW1lLnNlcnZpY2UnO1xuXG5kZWNsYXJlIGNvbnN0IHdpbmRvdzogVmxXaW5kb3c7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uU2VydmljZSB7XG4gIHByaXZhdGUgbW9kZSA9IENvbmZpZ3VyYXRpb25Nb2RlLlNFQVJDSDtcbiAgcHJpdmF0ZSBjb25maWd1cmFibGVSYW1wOiBMaW5lSXRlbSB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIGNvbmZpZ3VyYXRpb25TdGF0ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Q29uZmlndXJlUHJpY2UgfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSBwcmV2aW91c0NvbmZpZ3VyYXRpb25TdGF0ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Q29uZmlndXJlUHJpY2UgfCBudWxsPihudWxsKTtcbiAgcHJpdmF0ZSBpc0xvYWRpbmdTdWJqJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHB1YmxpYyBpc0xvYWRpbmckID0gdGhpcy5pc0xvYWRpbmdTdWJqJC5hc09ic2VydmFibGUoKTtcbiAgcHVibGljIGhhc1Vuc2F2ZWRDaGFuZ2VzID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBxdW90ZURyYWZ0U2VydmljZTogUXVvdGVEcmFmdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbkFwaVNlcnZpY2U6IENvbmZpZ3VyYXRpb25BcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIHJ1bnRpbWVTZXR0aW5nczogUnVudGltZVNldHRpbmdzU2VydmljZSxcbiAgKSB7fVxuXG4gIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLmhhc1Vuc2F2ZWRDaGFuZ2VzID0gZmFsc2U7XG4gICAgdGhpcy5ydW50aW1lU2VydmljZS5yZXNldCgpO1xuXG4gICAgdGhpcy5jb25maWd1cmFibGVSYW1wID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY29uZmlndXJhdGlvblN0YXRlLm5leHQobnVsbCk7XG4gICAgdGhpcy5wcmV2aW91c0NvbmZpZ3VyYXRpb25TdGF0ZS5uZXh0KG51bGwpO1xuICB9XG5cbiAgcHVibGljIHBhdGNoJChsaW5lSXRlbTogTGluZUl0ZW0sIG9wdGlvbnM/OiBQYXRjaExpbmVJdGVtT3B0aW9ucyk6IE9ic2VydmFibGU8TGluZUl0ZW0+IHtcbiAgICBjb25zdCBzb3VyY2UgPSB0aGlzLmdldFNuYXBzaG90KCk7XG4gICAgaWYgKCFzb3VyY2UpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihgU291cmNlIExpbmVJdGVtIG5vdCBmb3VuZGApKTtcbiAgICB9XG5cbiAgICBjb25zdCBza2lwQ2FyZGluYWxpdHlDYWxjdWxhdGlvbiA9XG4gICAgICBvcHRpb25zPy5za2lwQ2FyZGluYWxpdHlDYWxjdWxhdGlvbiB8fCB0aGlzLmNvbnRleHRTbmFwc2hvdC5wcm9wZXJ0aWVzWycjc2tpcENhcmRpbmFsaXR5Q2FsY3VsYXRpb24nXSA9PT0gJ3RydWUnO1xuXG4gICAgdGhpcy5jb25maWd1cmFibGVSYW1wID0gbmV3IExpbmVJdGVtV29ya2VyKHNvdXJjZSkucmVwbGFjZShsaW5lSXRlbSwgc2tpcENhcmRpbmFsaXR5Q2FsY3VsYXRpb24pLmxpO1xuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJlKCkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcblxuICAgICAgICBpZiAoIXRoaXMucnVudGltZVNlcnZpY2UudWlEZWZpbml0aW9uUHJvcGVydGllcy5zdXBwcmVzc1RvYXN0TWVzc2FnZXMpIHtcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiAnZXJyb3InLCBzdW1tYXJ5OiBlcnJvciB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGJvdW5jZSBiYWNrIGlmIGNvbmZpZ3VyYXRpb24gY2FsbCBoYXMgZmFpbGVkXG4gICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuY29uZmlndXJhdGlvblN0YXRlLnZhbHVlO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZS5uZXh0KHByZXZTdGF0ZSA/IHsgLi4ucHJldlN0YXRlIH0gOiBudWxsKTtcblxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBlcnJvcik7XG4gICAgICB9KSxcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIGlmICghdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcykge1xuICAgICAgICAgIHRoaXMuaGFzVW5zYXZlZENoYW5nZXMgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHBhdGNoKGxpbmVJdGVtOiBMaW5lSXRlbSwgb3B0aW9ucz86IFBhdGNoTGluZUl0ZW1PcHRpb25zKTogdm9pZCB7XG4gICAgdGhpcy5wYXRjaCQobGluZUl0ZW0sIG9wdGlvbnMpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIHNldENvbmZpZ3VyYWJsZVJhbXAobGluZUl0ZW06IExpbmVJdGVtKTogdm9pZCB7XG4gICAgdGhpcy5jb25maWd1cmFibGVSYW1wID0gbGluZUl0ZW07XG4gIH1cblxuICBwdWJsaWMgZ2V0KCk6IE9ic2VydmFibGU8TGluZUl0ZW0gfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU3RhdGUucGlwZShcbiAgICAgIG1hcChzdGF0ZSA9PiBzdGF0ZT8ubGluZUl0ZW0pLFxuICAgICAgc2hhcmVSZXBsYXkoKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldFNuYXBzaG90KCk6IExpbmVJdGVtIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU3RhdGUudmFsdWU/LmxpbmVJdGVtID8geyAuLi50aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZS52YWx1ZT8ubGluZUl0ZW0gfSA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSdW50aW1lTW9kZWwoKTogUnVudGltZU1vZGVsIHtcbiAgICBjb25zdCBydW50aW1lTW9kZWwgPSB0aGlzLnJ1bnRpbWVTZXJ2aWNlLnJ1bnRpbWVNb2RlbDtcbiAgICBpZiAoIXJ1bnRpbWVNb2RlbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdSdW50aW1lIG1vZGVsIG5vdCBpbml0aWFsaXplZCcpO1xuICAgIH1cblxuICAgIHJldHVybiBydW50aW1lTW9kZWw7XG4gIH1cblxuICBwdWJsaWMgZ2V0UnVudGltZUNvbnRleHQoKTogUnVudGltZUNvbnRleHQge1xuICAgIGNvbnN0IHJ1bnRpbWVDb250ZXh0ID0gdGhpcy5ydW50aW1lU2VydmljZS5ydW50aW1lQ29udGV4dDtcbiAgICBpZiAoIXJ1bnRpbWVDb250ZXh0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1J1bnRpbWUgY29udGV4dCBub3QgaW5pdGlhbGl6ZWQnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcnVudGltZUNvbnRleHQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHN0YXRlJCgpOiBPYnNlcnZhYmxlPENvbmZpZ3VyZVByaWNlIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3RhdGVTbmFwc2hvdCgpOiBDb25maWd1cmVQcmljZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZS52YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcHJldmlvdXNTdGF0ZVNuYXBzaG90KCk6IENvbmZpZ3VyZVByaWNlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMucHJldmlvdXNDb25maWd1cmF0aW9uU3RhdGUudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbnRleHRTbmFwc2hvdCgpOiBDb25maWd1cmF0aW9uQ29udGV4dCB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2UucmVzb2x2ZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBjb250ZXh0JCgpOiBPYnNlcnZhYmxlPENvbmZpZ3VyYXRpb25Db250ZXh0PiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dFNlcnZpY2UucmVzb2x2ZSQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hhcmdlcyQoKTogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PENoYXJnZT4+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU3RhdGUucGlwZShtYXAoc3RhdGUgPT4gc3RhdGU/LmNoYXJnZXMgPz8ge30pKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hhcmdlc1NuYXBzaG90KCk6IERpY3Rpb25hcnk8Q2hhcmdlPiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblN0YXRlLnZhbHVlPy5jaGFyZ2VzID8/IHt9O1xuICB9XG5cbiAgcHVibGljIGdldCBwcmljZVBsYW5zJCgpOiBPYnNlcnZhYmxlPERpY3Rpb25hcnk8Q29tcGlsZWRQcmljZVBsYW4+PiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblN0YXRlLnBpcGUobWFwKHN0YXRlID0+IHN0YXRlPy5wcmljZVBsYW5zID8/IHt9KSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHByaWNlUGxhbnNTbmFwc2hvdCgpOiBEaWN0aW9uYXJ5PENvbXBpbGVkUHJpY2VQbGFuPiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblN0YXRlLnZhbHVlPy5wcmljZVBsYW5zID8/IHt9O1xuICB9XG5cbiAgcHVibGljIGdldCBwcm9jZWR1cmVDb250ZXh0JCgpOiBPYnNlcnZhYmxlPERpY3Rpb25hcnk8dW5rbm93bj4+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU3RhdGUucGlwZShtYXAoc3RhdGUgPT4gc3RhdGU/LnByb2NlZHVyZUNvbnRleHQgPz8ge30pKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcHJvY2VkdXJlQ29udGV4dFNuYXBzaG90KCk6IERpY3Rpb25hcnk8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZS52YWx1ZT8ucHJvY2VkdXJlQ29udGV4dCA/PyB7fTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maWd1cmUoKTogT2JzZXJ2YWJsZTxMaW5lSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZ3VyZVJlcXVlc3QkKHRoaXMuZ2VuZXJhdGVSZXF1ZXN0KCkpO1xuICB9XG5cbiAgcHVibGljIGNvbmZpZ3VyZVJlcXVlc3QkKGNvbmZpZ3VyYXRpb25SZXF1ZXN0OiBDb25maWd1cmF0aW9uUmVxdWVzdCk6IE9ic2VydmFibGU8TGluZUl0ZW0+IHtcbiAgICBjb25zdCBydW50aW1lQ29udGV4dCA9IHRoaXMuZ2V0UnVudGltZUNvbnRleHQoKTtcbiAgICBjb25zdCBydW50aW1lTW9kZWwgPSB0aGlzLmdldFJ1bnRpbWVNb2RlbCgpO1xuICAgIGNvbnN0IHVpRGVmaW5pdGlvblByb3BlcnRpZXMgPSB0aGlzLmdldFVJRGVmaW5pdGlvblByb3BlcnRpZXMoKTtcblxuICAgIGNvbnN0IG1haW5QcmljaW5nRW5hYmxlZCA9IHJ1bnRpbWVDb250ZXh0LnByb3BlcnRpZXM/LlByaWNpbmdFbmFibGVkO1xuICAgIGNvbnN0IHByaWNpbmdFbmFibGVkID0gbWFpblByaWNpbmdFbmFibGVkID8gbWFpblByaWNpbmdFbmFibGVkID09PSAndHJ1ZScgOiB1aURlZmluaXRpb25Qcm9wZXJ0aWVzLnByaWNpbmdFbmFibGVkO1xuICAgIGNvbnN0IGN1c3RvbVByaWNlQXBpID0gdGhpcy5ydW50aW1lU2V0dGluZ3MuZ2V0Q29uZmlndXJhdGlvblNldHRpbmdzKClbJ0NVU1RPTV9QUklDRV9BUEknXTtcblxuICAgIHRoaXMuaXNMb2FkaW5nU3ViaiQubmV4dCh0cnVlKTtcblxuICAgIGNvbnN0IGNvbmZpZ3VyZSQgPVxuICAgICAgcHJpY2luZ0VuYWJsZWQgJiYgY3VzdG9tUHJpY2VBcGlcbiAgICAgICAgPyB0aGlzLmNvbmZpZ3VyYXRpb25BcGlTZXJ2aWNlLmN1c3RvbUNvbmZpZ3VyZVByaWNlKHsgdXJsOiBjdXN0b21QcmljZUFwaSwgY29uZmlndXJhdGlvblJlcXVlc3QsIHJ1bnRpbWVNb2RlbCB9KVxuICAgICAgICA6IHRoaXMuY29uZmlndXJhdGlvbkFwaVNlcnZpY2UuY29uZmlndXJlTGluZUl0ZW0oe1xuICAgICAgICAgICAgY29uZmlndXJhdGlvblJlcXVlc3QsXG4gICAgICAgICAgICBydW50aW1lTW9kZWwsXG4gICAgICAgICAgICBwcmljaW5nRW5hYmxlZCxcbiAgICAgICAgICB9KTtcblxuICAgIHJldHVybiBjb25maWd1cmUkLnBpcGUoXG4gICAgICB0YXAocmVzdWx0ID0+IHtcbiAgICAgICAgdGhpcy5jb250ZXh0U2VydmljZS51cGRhdGUocmVzdWx0LmNvbnRleHQpO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZS5uZXh0KHJlc3VsdCk7XG4gICAgICAgIHRoaXMucHJldmlvdXNDb25maWd1cmF0aW9uU3RhdGUubmV4dChjbG9uZURlZXAocmVzdWx0KSk7XG5cbiAgICAgICAgaWYgKHJlc3VsdC5kZWxldGVkTGluZUl0ZW1zPy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLnNob3dJbmFjdGl2ZVByb2R1Y3RzQ29uZmlybWF0aW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNvbmZpZ3VyYWJsZVJhbXAgPSByZXN1bHQubGluZUl0ZW07XG4gICAgICB9KSxcbiAgICAgIG1hcCgoeyBsaW5lSXRlbSB9KSA9PiBsaW5lSXRlbSksXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+XG4gICAgICAgIHRocm93RXJyb3IoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlc2V0U3RhdGUgPSB0aGlzLnByZXZpb3VzQ29uZmlndXJhdGlvblN0YXRlLnZhbHVlO1xuICAgICAgICAgIGlmIChyZXNldFN0YXRlKSB7XG4gICAgICAgICAgICB0aGlzLnByZXZpb3VzQ29uZmlndXJhdGlvblN0YXRlLm5leHQoY2xvbmVEZWVwKHJlc2V0U3RhdGUpKTtcbiAgICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblN0YXRlLm5leHQocmVzZXRTdGF0ZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlcnJvci5lcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIGV4dHJhY3RFcnJvckRldGFpbHMoZXJyb3IuZXJyb3IpLmpvaW4oJy4gJyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBlcnJvci5tZXNzYWdlIHx8IEpTT04uc3RyaW5naWZ5KGVycm9yKTtcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5pc0xvYWRpbmdTdWJqJC5uZXh0KGZhbHNlKSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maWd1cmVFeHRlcm5hbCQocHJvcHM6IEV4dGVybmFsQ29uZmlndXJhdGlvblByb3BzKTogT2JzZXJ2YWJsZTxMaW5lSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLnJ1bnRpbWVTZXJ2aWNlXG4gICAgICAuaW5pdCh7IHByb2R1Y3RJZDogcHJvcHMucHJvZHVjdElkLCBkZWZhdWx0UXR5OiBwcm9wcy5xdHksIGF0dHJpYnV0ZXNNYXA6IHByb3BzLmF0dHJpYnV0ZXNNYXAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25maWd1cmUoKSksXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6IFRvYXN0VHlwZS5lcnJvciwgc3VtbWFyeTogZXJyb3IgfSk7XG4gICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIH0pLFxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiB0aGlzLnJlc2V0KCkpLFxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maWd1cmVHdWlkZWRTZWxsaW5nJChkYXRhOiBHdWlkZWRTZWxsaW5nU3VibWl0RGF0YSk6IE9ic2VydmFibGU8Q29uZmlndXJlUHJpY2U+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uQXBpU2VydmljZVxuICAgICAgLmNvbmZpZ3VyZUxpbmVJdGVtKHtcbiAgICAgICAgY29uZmlndXJhdGlvblJlcXVlc3Q6IGdldEd1aWRlZFNlbGxpbmdDb25maWd1cmF0aW9uUmVxdWVzdChkYXRhLCB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlc29sdmUoKSksXG4gICAgICB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiBUb2FzdFR5cGUuZXJyb3IsIHN1bW1hcnk6IGVycm9yLmVycm9yLm1lc3NhZ2UgfHwgZXJyb3IuZXJyb3IgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9KSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVSZXF1ZXN0KGxpZ2h0TW9kZTogYm9vbGVhbiA9IHRydWUpOiBDb25maWd1cmF0aW9uUmVxdWVzdCB7XG4gICAgY29uc3QgbGluZUl0ZW0gPSB0aGlzLmdlbmVyYXRlTGluZUl0ZW0oKTtcblxuICAgIGxldCByZXF1ZXN0OiBDb25maWd1cmF0aW9uUmVxdWVzdCA9IHtcbiAgICAgIGxpbmVJdGVtLFxuICAgICAgbW9kZTogdGhpcy5tb2RlLFxuICAgICAgc3RlcDogIXRoaXMuY29uZmlndXJhdGlvblN0YXRlLnZhbHVlPy5saW5lSXRlbSA/IFJ1bnRpbWVTdGVwLlNUQVJUIDogUnVudGltZVN0ZXAuVVBEQVRFLFxuICAgICAgYXR0cmlidXRlRG9tYWluTW9kZTogJ0FMTCcsXG4gICAgICBjb250ZXh0OiB0aGlzLmNvbnRleHRTZXJ2aWNlLnJlc29sdmUoKSxcbiAgICAgIGxpbmVJdGVtczogdGhpcy5xdW90ZURyYWZ0U2VydmljZS5xdW90ZURyYWZ0Py5jdXJyZW50U3RhdGUgfHwgW10sXG4gICAgICBhc3NldDogdGhpcy5nZXRBc3NldCgpLFxuICAgIH07XG5cbiAgICBpZiAobGlnaHRNb2RlKSB7XG4gICAgICByZXF1ZXN0ID0gQ29uZmlndXJhdGlvblRyYW5zbGF0b3JVdGlscy5saWdodGVuQ29uZmlndXJhdGlvblJlcXVlc3QocmVxdWVzdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcXVlc3Q7XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVMaW5lSXRlbSgpOiBMaW5lSXRlbSB7XG4gICAgY29uc3QgcnVudGltZUNvbnRleHQgPSB0aGlzLmdldFJ1bnRpbWVDb250ZXh0KCk7XG4gICAgY29uc3QgdWlEZWZpbml0aW9uUHJvcGVydGllcyA9IHRoaXMuZ2V0VUlEZWZpbml0aW9uUHJvcGVydGllcygpO1xuXG4gICAgbGV0IGxpbmVJdGVtID0gdGhpcy5jb25maWd1cmFibGVSYW1wO1xuICAgIGlmICghbGluZUl0ZW0pIHtcbiAgICAgIGNvbnN0IHsgaW5pdGlhbGl6YXRpb25Qcm9wcyB9ID0gdGhpcy5ydW50aW1lU2VydmljZSA/PyB7fTtcblxuICAgICAgbGluZUl0ZW0gPSBnZXREZWZhdWx0TGluZUl0ZW0ocnVudGltZUNvbnRleHQsIHVpRGVmaW5pdGlvblByb3BlcnRpZXMsIGluaXRpYWxpemF0aW9uUHJvcHM/LmRlZmF1bHRRdHkpO1xuXG4gICAgICAvLyBTZXQgZGVmYXVsdCBhdHRyaWJ1dGVzXG4gICAgICBpZiAoaW5pdGlhbGl6YXRpb25Qcm9wcz8uYXR0cmlidXRlc01hcCkge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gdHJhbnNmb3JtKFxuICAgICAgICAgIGluaXRpYWxpemF0aW9uUHJvcHM/LmF0dHJpYnV0ZXNNYXAsXG4gICAgICAgICAgKGFjYzogTmV3QXR0cmlidXRlW10sIHZhbHVlLCBuYW1lKSA9PiBhY2MucHVzaCh7IG5hbWUsIHZhbHVlIH0pLFxuICAgICAgICAgIFtdLFxuICAgICAgICApO1xuXG4gICAgICAgIGxpbmVJdGVtID0gbmV3IExpbmVJdGVtV29ya2VyKGxpbmVJdGVtKS5wYXRjaEF0dHJpYnV0ZShhdHRyaWJ1dGVzKS5saTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbGluZUl0ZW07XG4gIH1cblxuICBwdWJsaWMgZ2V0QXNzZXQoKTogTGluZUl0ZW0gfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGxpbmVJdGVtID0gdGhpcy5jb25maWd1cmFibGVSYW1wO1xuICAgIGlmICghbGluZUl0ZW0pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBhc3NldElkID0gbGluZUl0ZW0uYXNzZXRJZCA/PyBsaW5lSXRlbS5vcGVuT3JkZXJMaW5lSXRlbUlkO1xuICAgIHJldHVybiB0aGlzLnF1b3RlRHJhZnRTZXJ2aWNlLmFzc2V0c1N0YXRlPy5pbml0aWFsU3RhdGUuZmluZChsaSA9PiBhc3NldFByZWRpY2F0ZUZuKGxpLCBhc3NldElkKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFVJRGVmaW5pdGlvblByb3BlcnRpZXMoKTogVUlEZWZpbml0aW9uUHJvcHMge1xuICAgIHJldHVybiB7XG4gICAgICAuLi4odGhpcy5nZXRSdW50aW1lQ29udGV4dCgpLnVpRGVmaW5pdGlvbkNvbnRhaW5lcj8uc291cmNlLnByb3BlcnRpZXMgPz8ge30pLFxuICAgICAgLi4uKHRoaXMucnVudGltZVNlcnZpY2UudWlEZWZpbml0aW9uUHJvcGVydGllcyA/PyB7fSksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc2hvd0luYWN0aXZlUHJvZHVjdHNDb25maXJtYXRpb24oKTogdm9pZCB7XG4gICAgY29uc3QgY29uZmlybWF0aW9uQ29uZmlnOiBDb25maXJtYXRpb25Db25maWcgPSB7XG4gICAgICB0aXRsZTogJyAnLFxuICAgICAgZGVzY3JpcHRpb246ICdUaGlzIHF1b3RlIGNvbnRhaW5zIGluYWN0aXZlIHByb2R1Y3RzLiBEbyB5b3Ugd2FudCB0byByZW1vdmUgdGhlbT8nLFxuICAgICAgcHJpbWFyeUJ1dHRvbkxhYmVsOiAnUmVtb3ZlIHByb2R1Y3RzJyxcbiAgICAgIHNlY29uZGFyeUJ1dHRvbkxhYmVsOiAnQmFjayB0byBRdW90ZScsXG4gICAgfTtcblxuICAgIHRoaXMuZGlhbG9nU2VydmljZVxuICAgICAgLm9wZW4oQ29uZmlybWF0aW9uQ29tcG9uZW50LCB7XG4gICAgICAgIGRpc21pc3NhYmxlTWFzazogZmFsc2UsXG4gICAgICAgIGNsb3NlT25Fc2NhcGU6IGZhbHNlLFxuICAgICAgICBjbG9zYWJsZTogZmFsc2UsXG4gICAgICAgIHNob3dIZWFkZXI6IHRydWUsXG4gICAgICAgIGhlYWRlcjogYEluYWN0aXZlIFByb2R1Y3RzIGluIFF1b3RlYCxcbiAgICAgICAgd2lkdGg6ICc0NDBweCcsXG4gICAgICAgIGRhdGE6IHsgY29uZmlybWF0aW9uQ29uZmlnIH0sXG4gICAgICB9KVxuICAgICAgLm9uQ2xvc2Uuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgIGlmICghcmVzdWx0KSB7XG4gICAgICAgICAgY29uc3QgY29udGV4dCA9IHRoaXMuY29udGV4dFNlcnZpY2UucmVzb2x2ZSgpO1xuICAgICAgICAgIHdpbmRvd1snVkVMT19CQUNLX0ZOJ10uYXBwbHkobnVsbCwgW2NvbnRleHQuaGVhZGVySWRdKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
144
|
+
}], ctorParameters: function () { return [{ type: i1.FlowInfoService }, { type: i2.MessageService }, { type: i3.ConfigurationRuntimeService }, { type: i1.SalesTransactionService }, { type: i4.OrchestrationsApiService }]; } });
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY29yZS9tb2R1bGVzL2NvbmZpZ3VyYXRpb24vc2VydmljZXMvY29uZmlndXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUF5QixNQUFNLG9CQUFvQixDQUFDO0FBQ3JGLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsU0FBUyxHQUtWLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNuQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDN0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7OztBQUc5RSxNQUFNLE9BQU8sb0JBQW9CO0lBUS9CLElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJ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O1xuaW1wb3J0IHsgT3JjaGVzdHJhdGlvbnNBcGlTZXJ2aWNlLCBQcm9jZWR1cmVBcHBseVJlcXVlc3QgfSBmcm9tICdAdmVsb2NlYXBwcy9hcGkvdjInO1xuaW1wb3J0IHtcbiAgZXh0cmFjdEVycm9yRGV0YWlscyxcbiAgaXNEZWZpbmVkLFxuICBQQ01Nb2RlbCxcbiAgU2FsZXNUcmFuc2FjdGlvbixcbiAgU2FsZXNUcmFuc2FjdGlvbkl0ZW0sXG4gIFRyYW5zYWN0aW9uQ29udGV4dCxcbn0gZnJvbSAnQHZlbG9jZWFwcHMvY29yZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG5vb3AsIE9ic2VydmFibGUsIG9mLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaWx0ZXIsIGZpbmFsaXplLCBtYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEZsb3dJbmZvU2VydmljZSwgU2FsZXNUcmFuc2FjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBnZW5lcmF0ZVRyYW5zYWN0aW9uSXRlbSwgVHJhbnNhY3Rpb25JdGVtV29ya2VyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgRXh0ZXJuYWxDb25maWd1cmF0aW9uUHJvcHMsIEd1aWRlZFNlbGxpbmdTdWJtaXREYXRhIH0gZnJvbSAnLi4vdHlwZXMvY29uZmlndXJhdGlvbi50eXBlcyc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UgfSBmcm9tICcuL2NvbmZpZ3VyYXRpb24tcnVudGltZS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ3VyYXRpb25TZXJ2aWNlIHtcbiAgcHVibGljIGlzTG9hZGluZyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHB1YmxpYyBoYXNVbnNhdmVkQ2hhbmdlcyA9IGZhbHNlO1xuXG4gIHByaXZhdGUgY29uZmlndXJhdGlvblN0YXRlU3ViaiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRyYW5zYWN0aW9uQ29udGV4dCB8IG51bGw+KG51bGwpO1xuICBwcml2YXRlIHByZXZpb3VzQ29uZmlndXJhdGlvblN0YXRlU3ViaiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRyYW5zYWN0aW9uQ29udGV4dCB8IG51bGw+KG51bGwpO1xuICBwcml2YXRlIGlzTG9hZGluZ1N1YmokID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgcHVibGljIGdldCBzdGF0ZSQoKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbkNvbnRleHQ+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmF0aW9uU3RhdGVTdWJqJC5hc09ic2VydmFibGUoKS5waXBlKGZpbHRlcihpc0RlZmluZWQpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc3RhdGUoKTogVHJhbnNhY3Rpb25Db250ZXh0IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblN0YXRlU3ViaiQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcHJldmlvdXNTdGF0ZSgpOiBUcmFuc2FjdGlvbkNvbnRleHQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5wcmV2aW91c0NvbmZpZ3VyYXRpb25TdGF0ZVN1YmokLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJvb3QkKCk6IE9ic2VydmFibGU8U2FsZXNUcmFuc2FjdGlvbkl0ZW0+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZSQucGlwZShcbiAgICAgIG1hcChzdGF0ZSA9PiBzdGF0ZS5zYWxlc1RyYW5zYWN0aW9uLnNhbGVzVHJhbnNhY3Rpb25JdGVtc1swXSksXG4gICAgICBmaWx0ZXIoaXNEZWZpbmVkKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCByb290KCk6IFNhbGVzVHJhbnNhY3Rpb25JdGVtIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblN0YXRlU3ViaiQuZ2V0VmFsdWUoKT8uc2FsZXNUcmFuc2FjdGlvbi5zYWxlc1RyYW5zYWN0aW9uSXRlbXNbMF0gPz8gbnVsbDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmxvd0luZm9TZXJ2aWNlOiBGbG93SW5mb1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2U6IENvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZSxcbiAgICBwcml2YXRlIHNhbGVzVHJhbnNhY3Rpb25TZXJ2aWNlOiBTYWxlc1RyYW5zYWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIG9yY2hlc3RyYXRpb25zQXBpU2VydmljZTogT3JjaGVzdHJhdGlvbnNBcGlTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmlzTG9hZGluZyQgPSB0aGlzLmlzTG9hZGluZ1N1YmokLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMuaGFzVW5zYXZlZENoYW5nZXMgPSBmYWxzZTtcblxuICAgIHRoaXMuY29uZmlndXJhdGlvblN0YXRlU3ViaiQubmV4dChudWxsKTtcbiAgICB0aGlzLnByZXZpb3VzQ29uZmlndXJhdGlvblN0YXRlU3ViaiQubmV4dChudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0JCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICBjb25zdCB7IHN0YXRlIH0gPSB0aGlzLnNhbGVzVHJhbnNhY3Rpb25TZXJ2aWNlO1xuICAgIGNvbnN0IHsgcHJvZHVjdElkLCB0cmFuc2FjdGlvbkl0ZW1JZCB9ID0gdGhpcy5mbG93SW5mb1NlcnZpY2UuY29udGV4dDtcblxuICAgIGlmICghc3RhdGUpIHtcbiAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGNvbnN0IHNhbGVzVHJhbnNhY3Rpb25JdGVtcyA9IHN0YXRlPy5zYWxlc1RyYW5zYWN0aW9uLnNhbGVzVHJhbnNhY3Rpb25JdGVtcyA/PyBbXTtcbiAgICBsZXQgdHJhbnNhY3Rpb25JdGVtID0gc2FsZXNUcmFuc2FjdGlvbkl0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSB0cmFuc2FjdGlvbkl0ZW1JZCk7XG4gICAgaWYgKCF0cmFuc2FjdGlvbkl0ZW0gJiYgcHJvZHVjdElkKSB7XG4gICAgICB0cmFuc2FjdGlvbkl0ZW0gPVxuICAgICAgICBzYWxlc1RyYW5zYWN0aW9uSXRlbXMuZmluZChpdGVtID0+IGl0ZW0ucHJvZHVjdElkID09PSBwcm9kdWN0SWQpID8/IGdlbmVyYXRlVHJhbnNhY3Rpb25JdGVtKHByb2R1Y3RJZCk7XG4gICAgfVxuXG4gICAgY29uc3QgY29uZmlndXJhdGlvblN0YXRlOiBUcmFuc2FjdGlvbkNvbnRleHQgPSB7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIHNhbGVzVHJhbnNhY3Rpb246IHtcbiAgICAgICAgLi4uc3RhdGUuc2FsZXNUcmFuc2FjdGlvbixcbiAgICAgICAgc2FsZXNUcmFuc2FjdGlvbkl0ZW1zOiB0cmFuc2FjdGlvbkl0ZW0gPyBbdHJhbnNhY3Rpb25JdGVtXSA6IFtdLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgdGhpcy5jb25maWd1cmF0aW9uU3RhdGVTdWJqJC5uZXh0KGNvbmZpZ3VyYXRpb25TdGF0ZSk7XG4gICAgdGhpcy5wcmV2aW91c0NvbmZpZ3VyYXRpb25TdGF0ZVN1YmokLm5leHQoY29uZmlndXJhdGlvblN0YXRlKTtcblxuICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICB9XG5cbiAgcHVibGljIHBhdGNoJCh0cmFuc2FjdGlvbkl0ZW06IFNhbGVzVHJhbnNhY3Rpb25JdGVtKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY29uc3QgeyBzdGF0ZSwgcm9vdCB9ID0gdGhpcztcblxuICAgIGlmICghc3RhdGUpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcihgQ29uZmlndXJhdGlvbiBTdGF0ZSBpcyBub3QgaW5pdGlhbGl6ZWRgKSk7XG4gICAgfVxuICAgIGlmICghcm9vdCkge1xuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gbmV3IEVycm9yKGBSb290IFNhbGVzVHJhbnNhY3Rpb25JdGVtIG5vdCBmb3VuZGApKTtcbiAgICB9XG5cbiAgICBjb25zdCBuZXdSb290ID0gbmV3IFRyYW5zYWN0aW9uSXRlbVdvcmtlcihyb290KS5yZXBsYWNlKHRyYW5zYWN0aW9uSXRlbSkudGk7XG4gICAgY29uc3QgbmV3VHJhbnNhY3Rpb25Db250ZXh0OiBUcmFuc2FjdGlvbkNvbnRleHQgPSB7XG4gICAgICAuLi5zdGF0ZSxcbiAgICAgIHNhbGVzVHJhbnNhY3Rpb246IHtcbiAgICAgICAgLi4uc3RhdGUuc2FsZXNUcmFuc2FjdGlvbixcbiAgICAgICAgc2FsZXNUcmFuc2FjdGlvbkl0ZW1zOiBbbmV3Um9vdF0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmVSZXF1ZXN0JChuZXdUcmFuc2FjdGlvbkNvbnRleHQpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG5cbiAgICAgICAgaWYgKCF0aGlzLmNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZS51aURlZmluaXRpb25Qcm9wcy5zdXBwcmVzc1RvYXN0TWVzc2FnZXMpIHtcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiAnZXJyb3InLCBzdW1tYXJ5OiBlcnJvciB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGVycm9yKTtcbiAgICAgIH0pLFxuICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc1Vuc2F2ZWRDaGFuZ2VzKSB7XG4gICAgICAgICAgdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgbWFwKG5vb3ApLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgcGF0Y2godHJhbnNhY3Rpb25JdGVtOiBTYWxlc1RyYW5zYWN0aW9uSXRlbSk6IHZvaWQge1xuICAgIHRoaXMucGF0Y2gkKHRyYW5zYWN0aW9uSXRlbSkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwdWJsaWMgY29uZmlndXJlUmVxdWVzdCQodHJhbnNhY3Rpb25Db250ZXh0OiBUcmFuc2FjdGlvbkNvbnRleHQpOiBPYnNlcnZhYmxlPFNhbGVzVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCByZXF1ZXN0OiBQcm9jZWR1cmVBcHBseVJlcXVlc3QgPSB7XG4gICAgICB0cmFuc2FjdGlvbkNvbnRleHQsXG4gICAgICBmbG93SWQ6IHRoaXMuZmxvd0luZm9TZXJ2aWNlLmZsb3cuaWQsXG4gICAgfTtcblxuICAgIHRoaXMuaXNMb2FkaW5nU3ViaiQubmV4dCh0cnVlKTtcblxuICAgIHJldHVybiB0aGlzLm9yY2hlc3RyYXRpb25zQXBpU2VydmljZS5hcHBseSQocmVxdWVzdCkucGlwZShcbiAgICAgIHRhcChyZXN1bHQgPT4ge1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb25TdGF0ZVN1YmokLm5leHQocmVzdWx0KTtcbiAgICAgICAgdGhpcy5wcmV2aW91c0NvbmZpZ3VyYXRpb25TdGF0ZVN1YmokLm5leHQoY2xvbmVEZWVwKHJlc3VsdCkpO1xuICAgICAgfSksXG4gICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2Uuc2FsZXNUcmFuc2FjdGlvbiksXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+XG4gICAgICAgIHRocm93RXJyb3IoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlc2V0U3RhdGUgPSB0aGlzLnByZXZpb3VzQ29uZmlndXJhdGlvblN0YXRlU3ViaiQuZ2V0VmFsdWUoKTtcbiAgICAgICAgICBpZiAocmVzZXRTdGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5wcmV2aW91c0NvbmZpZ3VyYXRpb25TdGF0ZVN1YmokLm5leHQoY2xvbmVEZWVwKHJlc2V0U3RhdGUpKTtcbiAgICAgICAgICAgIHRoaXMuY29uZmlndXJhdGlvblN0YXRlU3ViaiQubmV4dChyZXNldFN0YXRlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZXJyb3IuZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBleHRyYWN0RXJyb3JEZXRhaWxzKGVycm9yLmVycm9yKS5qb2luKCcuICcpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBlcnJvci5tZXNzYWdlIHx8IEpTT04uc3RyaW5naWZ5KGVycm9yKTtcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgZmluYWxpemUoKCkgPT4gdGhpcy5pc0xvYWRpbmdTdWJqJC5uZXh0KGZhbHNlKSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maWd1cmVFeHRlcm5hbCQocHJvcHM6IEV4dGVybmFsQ29uZmlndXJhdGlvblByb3BzKTogT2JzZXJ2YWJsZTxTYWxlc1RyYW5zYWN0aW9uPiB7XG4gICAgLy8gVE9ETzogaW1wbGVtZW50XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maWd1cmVHdWlkZWRTZWxsaW5nJChkYXRhOiBHdWlkZWRTZWxsaW5nU3VibWl0RGF0YSk6IE9ic2VydmFibGU8U2FsZXNUcmFuc2FjdGlvbj4ge1xuICAgIC8vIFRPRE86IGltcGxlbWVudFxuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0UENNTW9kZWwoKTogUENNTW9kZWwge1xuICAgIGNvbnN0IHBjbU1vZGVsID0gdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UucGNtTW9kZWw7XG4gICAgaWYgKCFwY21Nb2RlbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQQ00gbW9kZWwgbm90IGluaXRpYWxpemVkJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBjbU1vZGVsO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,74 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import { UUID, } from '@veloceapps/core';
|
3
|
+
import { map, noop, of, switchMap, tap, throwError } from 'rxjs';
|
4
|
+
import { FlowInfoService, RuntimeSettingsService, SalesTransactionService } from '../../../services';
|
5
|
+
import { ConfigurationRuntimeService } from './configuration-runtime.service';
|
6
|
+
import { ConfigurationService } from './configuration.service';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
import * as i1 from "../../../services";
|
9
|
+
import * as i2 from "./configuration.service";
|
10
|
+
import * as i3 from "./configuration-runtime.service";
|
11
|
+
export class TestModeConfigurationService {
|
12
|
+
constructor(flowInfoService, configurationService, configurationRuntimeService, salesTransactionService, runtimeSettingsService) {
|
13
|
+
this.flowInfoService = flowInfoService;
|
14
|
+
this.configurationService = configurationService;
|
15
|
+
this.configurationRuntimeService = configurationRuntimeService;
|
16
|
+
this.salesTransactionService = salesTransactionService;
|
17
|
+
this.runtimeSettingsService = runtimeSettingsService;
|
18
|
+
this.isInitialized = false;
|
19
|
+
}
|
20
|
+
initTestMode$(uiDefinitionContainer, options) {
|
21
|
+
this.configurationRuntimeService.uiDefinitionContainer = uiDefinitionContainer;
|
22
|
+
if (this.checkInitialized(uiDefinitionContainer)) {
|
23
|
+
this.configurationRuntimeService.pcmModel = this.pcmModel;
|
24
|
+
return of(undefined);
|
25
|
+
}
|
26
|
+
this.configurationService.reset();
|
27
|
+
const { productId, quoteId, flowId } = uiDefinitionContainer.source.properties ?? {};
|
28
|
+
if (!productId) {
|
29
|
+
return throwError(() => 'Unable to start the Configuration Preview: Product is missing.');
|
30
|
+
}
|
31
|
+
if (!quoteId) {
|
32
|
+
return throwError(() => `Unable to start the Configuration Preview: Quote is missing.`);
|
33
|
+
}
|
34
|
+
if (!flowId) {
|
35
|
+
return throwError(() => `Unable to start the Configuration Preview: Flow is missing.`);
|
36
|
+
}
|
37
|
+
return this.runtimeSettingsService.create().pipe(switchMap(() => this.flowInfoService.init$(flowId, { productId, headerId: quoteId })), switchMap(() => this.configurationRuntimeService.init$({ productId })), tap(pcmModel => (this.pcmModel = pcmModel)), switchMap(() => {
|
38
|
+
if (options?.customizationMode) {
|
39
|
+
return of(undefined);
|
40
|
+
}
|
41
|
+
return this.initConfiguration$(quoteId);
|
42
|
+
}), tap(() => (this.isInitialized = true)), map(noop));
|
43
|
+
}
|
44
|
+
initConfiguration$(quoteId) {
|
45
|
+
this.salesTransactionService.setState(this.getTestTransactionContext(quoteId));
|
46
|
+
return this.configurationService.init$().pipe(switchMap(() => this.configurationService.state
|
47
|
+
? this.configurationService.configureRequest$(this.configurationService.state)
|
48
|
+
: of(undefined)), map(noop));
|
49
|
+
}
|
50
|
+
getTestTransactionContext(quoteId) {
|
51
|
+
const testTransaction = {
|
52
|
+
id: quoteId,
|
53
|
+
businessObjectType: 'Quote',
|
54
|
+
salesTransactionItems: [],
|
55
|
+
};
|
56
|
+
return {
|
57
|
+
salesTransaction: testTransaction,
|
58
|
+
transactionId: quoteId,
|
59
|
+
businessObjectType: 'Quote',
|
60
|
+
childNodes: {},
|
61
|
+
id: UUID.UUID(),
|
62
|
+
tagAttributes: {},
|
63
|
+
};
|
64
|
+
}
|
65
|
+
checkInitialized(uiDefinitionContainer) {
|
66
|
+
return this.isInitialized && !!uiDefinitionContainer.source.properties?.persistTestState;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
TestModeConfigurationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, deps: [{ token: i1.FlowInfoService }, { token: i2.ConfigurationService }, { token: i3.ConfigurationRuntimeService }, { token: i1.SalesTransactionService }, { token: i1.RuntimeSettingsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
70
|
+
TestModeConfigurationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService });
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TestModeConfigurationService, decorators: [{
|
72
|
+
type: Injectable
|
73
|
+
}], ctorParameters: function () { return [{ type: i1.FlowInfoService }, { type: i2.ConfigurationService }, { type: i3.ConfigurationRuntimeService }, { type: i1.SalesTransactionService }, { type: i1.RuntimeSettingsService }]; } });
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1tb2RlLWNvbmZpZ3VyYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvbW9kdWxlcy9jb25maWd1cmF0aW9uL3NlcnZpY2VzL3Rlc3QtbW9kZS1jb25maWd1cmF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBTUwsSUFBSSxHQUNMLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVyRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7QUFHL0QsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QyxZQUNVLGVBQWdDLEVBQ2hDLG9CQUEwQyxFQUMxQywyQkFBd0QsRUFDeEQsdUJBQWdELEVBQ2hELHNCQUE4QztRQUo5QyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQTZCO1FBQ3hELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFDaEQsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQVJoRCxrQkFBYSxHQUFHLEtBQUssQ0FBQztJQVMzQixDQUFDO0lBRUcsYUFBYSxDQUNsQixxQkFBNEMsRUFDNUMsT0FBc0M7UUFFdEMsSUFBSSxDQUFDLDJCQUEyQixDQUFDLHFC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RUFBRTtZQUNmLGFBQWEsRUFBRSxFQUFFO1NBQ2xCLENBQUM7SUFDSixDQUFDO0lBRU8sZ0JBQWdCLENBQUMscUJBQTRDO1FBQ25FLE9BQU8sSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQztJQUMzRixDQUFDOzt5SEFwRlUsNEJBQTRCOzZIQUE1Qiw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFEeEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFBDTU1vZGVsLFxuICBTYWxlc1RyYW5zYWN0aW9uLFxuICBTYWxlc1RyYW5zYWN0aW9uSXRlbSxcbiAgVHJhbnNhY3Rpb25Db250ZXh0LFxuICBVSURlZmluaXRpb25Db250YWluZXIsXG4gIFVVSUQsXG59IGZyb20gJ0B2ZWxvY2VhcHBzL2NvcmUnO1xuaW1wb3J0IHsgbWFwLCBub29wLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZsb3dJbmZvU2VydmljZSwgUnVudGltZVNldHRpbmdzU2VydmljZSwgU2FsZXNUcmFuc2FjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBUZXN0TW9kZUNvbmZpZ3VyYXRpb25PcHRpb25zIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWd1cmF0aW9uLXJ1bnRpbWUuc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRlc3RNb2RlQ29uZmlndXJhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBwY21Nb2RlbD86IFBDTU1vZGVsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmxvd0luZm9TZXJ2aWNlOiBGbG93SW5mb1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2U6IENvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZSxcbiAgICBwcml2YXRlIHNhbGVzVHJhbnNhY3Rpb25TZXJ2aWNlOiBTYWxlc1RyYW5zYWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJ1bnRpbWVTZXR0aW5nc1NlcnZpY2U6IFJ1bnRpbWVTZXR0aW5nc1NlcnZpY2UsXG4gICkge31cblxuICBwdWJsaWMgaW5pdFRlc3RNb2RlJChcbiAgICB1aURlZmluaXRpb25Db250YWluZXI6IFVJRGVmaW5pdGlvbkNvbnRhaW5lcixcbiAgICBvcHRpb25zPzogVGVzdE1vZGVDb25maWd1cmF0aW9uT3B0aW9ucyxcbiAgKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UudWlEZWZpbml0aW9uQ29udGFpbmVyID0gdWlEZWZpbml0aW9uQ29udGFpbmVyO1xuXG4gICAgaWYgKHRoaXMuY2hlY2tJbml0aWFsaXplZCh1aURlZmluaXRpb25Db250YWluZXIpKSB7XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb25SdW50aW1lU2VydmljZS5wY21Nb2RlbCA9IHRoaXMucGNtTW9kZWw7XG4gICAgICByZXR1cm4gb2YodW5kZWZpbmVkKTtcbiAgICB9XG4gICAgdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5yZXNldCgpO1xuXG4gICAgY29uc3QgeyBwcm9kdWN0SWQsIHF1b3RlSWQsIGZsb3dJZCB9ID0gdWlEZWZpbml0aW9uQ29udGFpbmVyLnNvdXJjZS5wcm9wZXJ0aWVzID8/IHt9O1xuXG4gICAgaWYgKCFwcm9kdWN0SWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+ICdVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogUHJvZHVjdCBpcyBtaXNzaW5nLicpO1xuICAgIH1cbiAgICBpZiAoIXF1b3RlSWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGBVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogUXVvdGUgaXMgbWlzc2luZy5gKTtcbiAgICB9XG4gICAgaWYgKCFmbG93SWQpIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IGBVbmFibGUgdG8gc3RhcnQgdGhlIENvbmZpZ3VyYXRpb24gUHJldmlldzogRmxvdyBpcyBtaXNzaW5nLmApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnJ1bnRpbWVTZXR0aW5nc1NlcnZpY2UuY3JlYXRlKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLmZsb3dJbmZvU2VydmljZS5pbml0JChmbG93SWQsIHsgcHJvZHVjdElkLCBoZWFkZXJJZDogcXVvdGVJZCB9KSksXG4gICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25maWd1cmF0aW9uUnVudGltZVNlcnZpY2UuaW5pdCQoeyBwcm9kdWN0SWQgfSkpLFxuICAgICAgdGFwKHBjbU1vZGVsID0+ICh0aGlzLnBjbU1vZGVsID0gcGNtTW9kZWwpKSxcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XG4gICAgICAgIGlmIChvcHRpb25zPy5jdXN0b21pemF0aW9uTW9kZSkge1xuICAgICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaW5pdENvbmZpZ3VyYXRpb24kKHF1b3RlSWQpO1xuICAgICAgfSksXG4gICAgICB0YXAoKCkgPT4gKHRoaXMuaXNJbml0aWFsaXplZCA9IHRydWUpKSxcbiAgICAgIG1hcChub29wKSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q29uZmlndXJhdGlvbiQocXVvdGVJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgdGhpcy5zYWxlc1RyYW5zYWN0aW9uU2VydmljZS5zZXRTdGF0ZSh0aGlzLmdldFRlc3RUcmFuc2FjdGlvbkNvbnRleHQocXVvdGVJZCkpO1xuXG4gICAgcmV0dXJuIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuaW5pdCQoKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2Uuc3RhdGVcbiAgICAgICAgICA/IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuY29uZmlndXJlUmVxdWVzdCQodGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5zdGF0ZSlcbiAgICAgICAgICA6IG9mKHVuZGVmaW5lZCksXG4gICAgICApLFxuICAgICAgbWFwKG5vb3ApLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldFRlc3RUcmFuc2FjdGlvbkNvbnRleHQocXVvdGVJZDogc3RyaW5nKTogVHJhbnNhY3Rpb25Db250ZXh0IHtcbiAgICBjb25zdCB0ZXN0VHJhbnNhY3Rpb24gPSB7XG4gICAgICBpZDogcXVvdGVJZCxcbiAgICAgIGJ1c2luZXNzT2JqZWN0VHlwZTogJ1F1b3RlJyxcbiAgICAgIHNhbGVzVHJhbnNhY3Rpb25JdGVtczogW10gYXMgU2FsZXNUcmFuc2FjdGlvbkl0ZW1bXSxcbiAgICB9IGFzIFNhbGVzVHJhbnNhY3Rpb247XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2FsZXNUcmFuc2FjdGlvbjogdGVzdFRyYW5zYWN0aW9uLFxuICAgICAgdHJhbnNhY3Rpb25JZDogcXVvdGVJZCxcbiAgICAgIGJ1c2luZXNzT2JqZWN0VHlwZTogJ1F1b3RlJyxcbiAgICAgIGNoaWxkTm9kZXM6IHt9LFxuICAgICAgaWQ6IFVVSUQuVVVJRCgpLFxuICAgICAgdGFnQXR0cmlidXRlczoge30sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tJbml0aWFsaXplZCh1aURlZmluaXRpb25Db250YWluZXI6IFVJRGVmaW5pdGlvbkNvbnRhaW5lcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzSW5pdGlhbGl6ZWQgJiYgISF1aURlZmluaXRpb25Db250YWluZXIuc291cmNlLnByb3BlcnRpZXM/LnBlcnNpc3RUZXN0U3RhdGU7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,2 +1,2 @@
|
|
1
1
|
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1ydW50aW1lLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY29yZS9tb2R1bGVzL2NvbmZpZ3VyYXRpb24vdHlwZXMvY29uZmlndXJhdGlvbi1ydW50aW1lLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFJ1bnRpbWVJbml0aWFsaXphdGlvblByb3BzIHtcbiAgcHJvZHVjdElkOiBzdHJpbmc7XG59XG4iXX0=
|
@@ -1,2 +1,2 @@
|
|
1
1
|
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi50eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvbW9kdWxlcy9jb25maWd1cmF0aW9uL3R5cGVzL2NvbmZpZ3VyYXRpb24udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2R1Y3QgfSBmcm9tICdAdmVsb2NlYXBwcy9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBHdWlkZWRTZWxsaW5nU3VibWl0RGF0YSB7XG4gIG9yY2hlc3RyYXRpb25OYW1lOiBzdHJpbmc7XG4gIGF0dHJpYnV0ZXNNYXA6IFJlY29yZDxzdHJpbmcsIGFueT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZXJuYWxDb25maWd1cmF0aW9uUHJvcHMge1xuICBwcm9kdWN0SWQ6IHN0cmluZztcbiAgcXR5PzogbnVtYmVyO1xuICBhdHRyaWJ1dGVzTWFwPzogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZXdDb25maWd1cmF0aW9uUHJvcHMgZXh0ZW5kcyBFeHRlcm5hbENvbmZpZ3VyYXRpb25Qcm9wcyB7XG4gIHByb2R1Y3Q6IFByb2R1Y3Q7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVzdE1vZGVDb25maWd1cmF0aW9uT3B0aW9ucyB7XG4gIGN1c3RvbWl6YXRpb25Nb2RlPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './configuration.types';
|
2
|
+
export * from './configuration-runtime.types';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jb3JlL21vZHVsZXMvY29uZmlndXJhdGlvbi90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbmZpZ3VyYXRpb24udHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maWd1cmF0aW9uLXJ1bnRpbWUudHlwZXMnO1xuIl19
|
@@ -1,18 +1,17 @@
|
|
1
1
|
import { NgModule } from '@angular/core';
|
2
2
|
import { ApiModule } from '@veloceapps/api';
|
3
3
|
import { FlowConfigurationService } from './services/flow-configuration.service';
|
4
|
-
import { FlowUpdateService } from './services/flow-update.service';
|
5
4
|
import * as i0 from "@angular/core";
|
6
5
|
export class FlowConfigurationModule {
|
7
6
|
}
|
8
7
|
FlowConfigurationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowConfigurationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
9
8
|
FlowConfigurationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: FlowConfigurationModule, imports: [ApiModule] });
|
10
|
-
FlowConfigurationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowConfigurationModule, providers: [FlowConfigurationService
|
9
|
+
FlowConfigurationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowConfigurationModule, providers: [FlowConfigurationService], imports: [ApiModule] });
|
11
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: FlowConfigurationModule, decorators: [{
|
12
11
|
type: NgModule,
|
13
12
|
args: [{
|
14
13
|
imports: [ApiModule],
|
15
|
-
providers: [FlowConfigurationService
|
14
|
+
providers: [FlowConfigurationService],
|
16
15
|
}]
|
17
16
|
}] });
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1jb25maWd1cmF0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvbW9kdWxlcy9mbG93LWNvbmZpZ3VyYXRpb24vZmxvdy1jb25maWd1cmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFNakYsTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1QjtxSEFBdkIsdUJBQXVCLFlBSHhCLFNBQVM7cUhBR1IsdUJBQXVCLGFBRnZCLENBQUMsd0JBQXdCLENBQUMsWUFEM0IsU0FBUzsyRkFHUix1QkFBdUI7a0JBSm5DLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDO29CQUNwQixTQUFTLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztpQkFDdEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXBpTW9kdWxlIH0gZnJvbSAnQHZlbG9jZWFwcHMvYXBpJztcbmltcG9ydCB7IEZsb3dDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZmxvdy1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQXBpTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbRmxvd0NvbmZpZ3VyYXRpb25TZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRmxvd0NvbmZpZ3VyYXRpb25Nb2R1bGUge31cbiJdfQ==
|
@@ -1,5 +1,2 @@
|
|
1
|
-
export * from './flow-configuration.module';
|
2
1
|
export * from './services/flow-configuration.service';
|
3
|
-
|
4
|
-
export * from './types/update.types';
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jb3JlL21vZHVsZXMvZmxvdy1jb25maWd1cmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Zsb3ctY29uZmlndXJhdGlvbi5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9mbG93LWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2Zsb3ctdXBkYXRlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcy91cGRhdGUudHlwZXMnO1xuIl19
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jb3JlL21vZHVsZXMvZmxvdy1jb25maWd1cmF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUNBQXVDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2Zsb3ctY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbiJdfQ==
|