@veloceapps/sdk 5.0.7 → 5.0.9
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/bundles/veloce-sdk-cms.umd.js +41 -4
- package/bundles/veloce-sdk-cms.umd.js.map +1 -1
- package/bundles/veloce-sdk.umd.js +469 -192
- package/bundles/veloce-sdk.umd.js.map +1 -1
- package/cms/cms.actions.d.ts +8 -2
- package/cms/types/common.types.d.ts +5 -0
- package/cms/types/index.d.ts +1 -0
- package/cms/types/metrics.types.d.ts +5 -0
- package/cms/utils/elements-resolver.d.ts +2 -1
- package/cms/vendor-map.d.ts +4 -0
- package/esm2015/cms/cms.actions.js +11 -1
- package/esm2015/cms/types/common.types.js +1 -1
- package/esm2015/cms/types/index.js +2 -1
- package/esm2015/cms/types/metrics.types.js +2 -0
- package/esm2015/cms/utils/element.utils.js +6 -1
- package/esm2015/cms/utils/elements-resolver.js +21 -4
- package/esm2015/src/components/header/header.component.js +7 -16
- package/esm2015/src/components/header/header.module.js +6 -2
- package/esm2015/src/components/header/metrics/index.js +2 -0
- package/esm2015/src/components/header/metrics/metrics.component.js +216 -0
- package/esm2015/src/components/header/metrics/metrics.definitions.js +9 -0
- package/esm2015/src/components/header/metrics/metrics.module.js +64 -0
- package/esm2015/src/services/flow-router.service.js +13 -1
- package/esm2015/src/services/flow.service.js +7 -1
- package/fesm2015/veloce-sdk-cms.js +39 -5
- package/fesm2015/veloce-sdk-cms.js.map +1 -1
- package/fesm2015/veloce-sdk.js +356 -85
- package/fesm2015/veloce-sdk.js.map +1 -1
- package/package.json +1 -1
- package/src/components/header/header.component.d.ts +0 -8
- package/src/components/header/header.module.d.ts +2 -1
- package/src/components/header/metrics/index.d.ts +1 -0
- package/src/components/header/metrics/metrics.component.d.ts +49 -0
- package/src/components/header/metrics/metrics.definitions.d.ts +4 -0
- package/src/components/header/metrics/metrics.module.d.ts +17 -0
- package/src/services/flow-router.service.d.ts +1 -0
@@ -1,8 +1,8 @@
|
|
1
1
|
(function (global, factory) {
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@veloce/api'), require('@veloce/components'), require('@veloce/sdk/cms'), require('@veloce/sdk/core'), require('primeng/button'), require('primeng/dynamicdialog'), require('@veloce/core'), require('rxjs'), require('primeng/overlaypanel'), require('primeng/splitbutton'), require('primeng/tooltip'), require('@angular/forms'), require('primeng/inputnumber'), require('primeng/virtualscroller'), require('@angular/router'), require('primeng/api'), require('@angular/
|
3
|
-
typeof define === 'function' && define.amd ? define('@veloce/sdk', ['exports', '@angular/common', '@angular/core', '@veloce/api', '@veloce/components', '@veloce/sdk/cms', '@veloce/sdk/core', 'primeng/button', 'primeng/dynamicdialog', '@veloce/core', 'rxjs', 'primeng/overlaypanel', 'primeng/splitbutton', 'primeng/tooltip', '@angular/forms', 'primeng/inputnumber', 'primeng/virtualscroller', '@angular/router', 'primeng/api', '@angular/
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.veloce = global.veloce || {}, global.veloce.sdk = {}), global.ng.common, global.ng.core, global["@veloce/api"], global["@veloce/components"], global.veloce.sdk.cms, global.veloce.sdk.core, global["primeng/button"], global["primeng/dynamicdialog"], global["@veloce/core"], global.rxjs, global["primeng/overlaypanel"], global.
|
5
|
-
})(this, (function (exports, i5, i0, i2
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('@veloce/api'), require('@veloce/components'), require('@veloce/sdk/cms'), require('@veloce/sdk/core'), require('primeng/button'), require('primeng/dynamicdialog'), require('@veloce/core'), require('rxjs'), require('primeng/overlaypanel'), require('primeng/splitbutton'), require('primeng/tooltip'), require('@angular/forms'), require('primeng/inputnumber'), require('primeng/virtualscroller'), require('@angular/router'), require('primeng/api'), require('@angular/cdk/drag-drop'), require('rxjs/operators'), require('lodash'), require('@veloce/core/forms'), require('primeng/sidebar'), require('primeng/checkbox'), require('primeng/inputtext'), require('@angular/common/http'), require('primeng/dropdown'), require('primeng/radiobutton'), require('@veloce/sdk/runtime'), require('ngx-bootstrap/tooltip')) :
|
3
|
+
typeof define === 'function' && define.amd ? define('@veloce/sdk', ['exports', '@angular/common', '@angular/core', '@veloce/api', '@veloce/components', '@veloce/sdk/cms', '@veloce/sdk/core', 'primeng/button', 'primeng/dynamicdialog', '@veloce/core', 'rxjs', 'primeng/overlaypanel', 'primeng/splitbutton', 'primeng/tooltip', '@angular/forms', 'primeng/inputnumber', 'primeng/virtualscroller', '@angular/router', 'primeng/api', '@angular/cdk/drag-drop', 'rxjs/operators', 'lodash', '@veloce/core/forms', 'primeng/sidebar', 'primeng/checkbox', 'primeng/inputtext', '@angular/common/http', 'primeng/dropdown', 'primeng/radiobutton', '@veloce/sdk/runtime', 'ngx-bootstrap/tooltip'], factory) :
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.veloce = global.veloce || {}, global.veloce.sdk = {}), global.ng.common, global.ng.core, global["@veloce/api"], global["@veloce/components"], global.veloce.sdk.cms, global.veloce.sdk.core, global["primeng/button"], global["primeng/dynamicdialog"], global["@veloce/core"], global.rxjs, global["primeng/overlaypanel"], global.i10$1, global["primeng/tooltip"], global.ng.forms, global["primeng/inputnumber"], global.i4, global.ng.router, global["primeng/api"], global.ng.cdk.dragDrop, global.rxjs.operators, global.lodash, global.forms, global.i4$1, global.i6$1, global["primeng/inputtext"], global.ng.common.http, global["primeng/dropdown"], global["primeng/radiobutton"], global.veloce.sdk.runtime, global["ngx-bootstrap/tooltip"]));
|
5
|
+
})(this, (function (exports, i5$1, i0, i2, i3, i1$1, i1$2, i5, i1, core, rxjs, i3$1, i10$1, i12$1, i10, i6, i4, i1$3, i2$1, i12, operators, lodash, forms, i4$1, i6$1, i11, http, dropdown, i5$2, i4$2, i1$4) { 'use strict';
|
6
6
|
|
7
7
|
function _interopNamespace(e) {
|
8
8
|
if (e && e.__esModule) return e;
|
@@ -22,26 +22,29 @@
|
|
22
22
|
return Object.freeze(n);
|
23
23
|
}
|
24
24
|
|
25
|
-
var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
|
25
|
+
var i5__namespace$1 = /*#__PURE__*/_interopNamespace(i5$1);
|
26
26
|
var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
|
27
|
-
var i2__namespace
|
27
|
+
var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
|
28
28
|
var i3__namespace = /*#__PURE__*/_interopNamespace(i3);
|
29
|
-
var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
|
30
29
|
var i1__namespace$1 = /*#__PURE__*/_interopNamespace(i1$1);
|
31
|
-
var
|
30
|
+
var i1__namespace$2 = /*#__PURE__*/_interopNamespace(i1$2);
|
31
|
+
var i5__namespace = /*#__PURE__*/_interopNamespace(i5);
|
32
32
|
var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
|
33
33
|
var i3__namespace$1 = /*#__PURE__*/_interopNamespace(i3$1);
|
34
|
-
var
|
34
|
+
var i10__namespace$1 = /*#__PURE__*/_interopNamespace(i10$1);
|
35
|
+
var i12__namespace$1 = /*#__PURE__*/_interopNamespace(i12$1);
|
36
|
+
var i10__namespace = /*#__PURE__*/_interopNamespace(i10);
|
37
|
+
var i6__namespace = /*#__PURE__*/_interopNamespace(i6);
|
38
|
+
var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
|
39
|
+
var i1__namespace$3 = /*#__PURE__*/_interopNamespace(i1$3);
|
40
|
+
var i2__namespace$1 = /*#__PURE__*/_interopNamespace(i2$1);
|
35
41
|
var i12__namespace = /*#__PURE__*/_interopNamespace(i12);
|
36
|
-
var i6__namespace$1 = /*#__PURE__*/_interopNamespace(i6);
|
37
|
-
var i6__namespace = /*#__PURE__*/_interopNamespace(i6$1);
|
38
42
|
var i4__namespace$1 = /*#__PURE__*/_interopNamespace(i4$1);
|
39
|
-
var
|
40
|
-
var
|
41
|
-
var
|
42
|
-
var i5__namespace$1 = /*#__PURE__*/_interopNamespace(i5$1);
|
43
|
+
var i6__namespace$1 = /*#__PURE__*/_interopNamespace(i6$1);
|
44
|
+
var i11__namespace = /*#__PURE__*/_interopNamespace(i11);
|
45
|
+
var i5__namespace$2 = /*#__PURE__*/_interopNamespace(i5$2);
|
43
46
|
var i4__namespace$2 = /*#__PURE__*/_interopNamespace(i4$2);
|
44
|
-
var i1__namespace$
|
47
|
+
var i1__namespace$4 = /*#__PURE__*/_interopNamespace(i1$4);
|
45
48
|
|
46
49
|
var VELOCE_FLOW_ROOT_ROUTE = 'VELOCE_FLOW_ROOT_ROUTE';
|
47
50
|
|
@@ -60,7 +63,7 @@
|
|
60
63
|
return FlowDialogComponent;
|
61
64
|
}());
|
62
65
|
FlowDialogComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogComponent, deps: [{ token: i1__namespace.DynamicDialogConfig }, { token: i1__namespace.DynamicDialogRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
63
|
-
FlowDialogComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FlowDialogComponent, selector: "vl-flow-dialog", ngImport: i0__namespace, template: "<div *ngIf=\"config.description\" class=\"description\">\n {{ config.description }}\n</div>\n\n<div class=\"form-actions\">\n <p-button\n *ngIf=\"config.secondaryButton\"\n styleClass=\"p-button-outlined button-text-bold\"\n [label]=\"config.secondaryButton!\"\n (onClick)=\"cancelHandler()\"\n ></p-button>\n <p-button\n styleClass=\"p-button p-button-filled\"\n [label]=\"config.primaryButton\"\n (onClick)=\"confirmHandler()\"\n ></p-button>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host .description{flex:1;padding:0 24px 24px;font-weight:400;font-size:12px;line-height:16px;color:var(--vl-text-color-deep-accent)}:host .form-actions{border-top:1px solid var(--vl-border-color);padding:1.5rem 2.2rem;display:flex;justify-content:flex-end;width:100%;grid-gap:10px;gap:10px}\n"], components: [{ type:
|
66
|
+
FlowDialogComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FlowDialogComponent, selector: "vl-flow-dialog", ngImport: i0__namespace, template: "<div *ngIf=\"config.description\" class=\"description\">\n {{ config.description }}\n</div>\n\n<div class=\"form-actions\">\n <p-button\n *ngIf=\"config.secondaryButton\"\n styleClass=\"p-button-outlined button-text-bold\"\n [label]=\"config.secondaryButton!\"\n (onClick)=\"cancelHandler()\"\n ></p-button>\n <p-button\n styleClass=\"p-button p-button-filled\"\n [label]=\"config.primaryButton\"\n (onClick)=\"confirmHandler()\"\n ></p-button>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%}:host .description{flex:1;padding:0 24px 24px;font-weight:400;font-size:12px;line-height:16px;color:var(--vl-text-color-deep-accent)}:host .form-actions{border-top:1px solid var(--vl-border-color);padding:1.5rem 2.2rem;display:flex;justify-content:flex-end;width:100%;grid-gap:10px;gap:10px}\n"], components: [{ type: i5__namespace.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
64
67
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogComponent, decorators: [{
|
65
68
|
type: i0.Component,
|
66
69
|
args: [{
|
@@ -77,13 +80,13 @@
|
|
77
80
|
return FlowDialogModule;
|
78
81
|
}());
|
79
82
|
FlowDialogModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
80
|
-
FlowDialogModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogModule, declarations: [FlowDialogComponent], imports: [i5.CommonModule,
|
81
|
-
FlowDialogModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogModule, imports: [[i5.CommonModule,
|
83
|
+
FlowDialogModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogModule, declarations: [FlowDialogComponent], imports: [i5$1.CommonModule, i5.ButtonModule], exports: [FlowDialogComponent] });
|
84
|
+
FlowDialogModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogModule, imports: [[i5$1.CommonModule, i5.ButtonModule]] });
|
82
85
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogModule, decorators: [{
|
83
86
|
type: i0.NgModule,
|
84
87
|
args: [{
|
85
88
|
declarations: [FlowDialogComponent],
|
86
|
-
imports: [i5.CommonModule,
|
89
|
+
imports: [i5$1.CommonModule, i5.ButtonModule],
|
87
90
|
exports: [FlowDialogComponent],
|
88
91
|
}]
|
89
92
|
}] });
|
@@ -102,21 +105,21 @@
|
|
102
105
|
FlowDocGenService.prototype.initSubscriptions = function () {
|
103
106
|
var _this = this;
|
104
107
|
this.integrationState
|
105
|
-
.listen$(
|
108
|
+
.listen$(i1$1.FlowAction.FLOW_OPEN_DOC_GEN)
|
106
109
|
.pipe(rxjs.tap(function () { return _this.isVisibleSubj$.next(true); }), rxjs.takeUntil(this.cleanup$))
|
107
110
|
.subscribe();
|
108
111
|
this.integrationState
|
109
|
-
.listen$(
|
112
|
+
.listen$(i1$1.FlowAction.FLOW_CLOSE_DOC_GEN)
|
110
113
|
.pipe(rxjs.tap(function () { return _this.isVisibleSubj$.next(false); }), rxjs.takeUntil(this.cleanup$))
|
111
114
|
.subscribe();
|
112
115
|
};
|
113
116
|
return FlowDocGenService;
|
114
117
|
}());
|
115
|
-
FlowDocGenService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDocGenService, deps: [{ token:
|
118
|
+
FlowDocGenService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDocGenService, deps: [{ token: i1__namespace$1.IntegrationState }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
116
119
|
FlowDocGenService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDocGenService });
|
117
120
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDocGenService, decorators: [{
|
118
121
|
type: i0.Injectable
|
119
|
-
}], ctorParameters: function () { return [{ type:
|
122
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$1.IntegrationState }]; } });
|
120
123
|
|
121
124
|
var DocGenComponent = /** @class */ (function () {
|
122
125
|
function DocGenComponent(quoteDraftService, contextService, templatesApi, docGenService, toastService) {
|
@@ -183,8 +186,8 @@
|
|
183
186
|
var headerId = (_a = _this.contextService.resolve().properties.Id) !== null && _a !== void 0 ? _a : null;
|
184
187
|
var script = meta.js;
|
185
188
|
if (script) {
|
186
|
-
var metadata =
|
187
|
-
script =
|
189
|
+
var metadata = i1$1.extractElementMetadata(script);
|
190
|
+
script = i1$1.extendElementMetadata(script, {
|
188
191
|
inputs: Object.assign(Object.assign({}, metadata.inputs), { Id: headerId ? "\"" + headerId + "\"" : null }),
|
189
192
|
});
|
190
193
|
}
|
@@ -208,8 +211,8 @@
|
|
208
211
|
};
|
209
212
|
return DocGenComponent;
|
210
213
|
}());
|
211
|
-
DocGenComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenComponent, deps: [{ token: i1__namespace$
|
212
|
-
DocGenComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: DocGenComponent, selector: "vl-flow-doc-gen", ngImport: i0__namespace, template: "<ng-container *ngIf=\"isVisible$ | async\">\n <ng-container *ngIf=\"uiDefinition$ | async as uiDefinition\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n</ng-container>\n", styles: [":host,vl-cms-preview{display:contents}\n"], components: [{ type:
|
214
|
+
DocGenComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenComponent, deps: [{ token: i1__namespace$2.QuoteDraftService }, { token: i1__namespace$2.ContextService }, { token: i2__namespace.UITemplatesApiService }, { token: FlowDocGenService }, { token: i3__namespace.ToastService }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
215
|
+
DocGenComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: DocGenComponent, selector: "vl-flow-doc-gen", ngImport: i0__namespace, template: "<ng-container *ngIf=\"isVisible$ | async\">\n <ng-container *ngIf=\"uiDefinition$ | async as uiDefinition\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n</ng-container>\n", styles: [":host,vl-cms-preview{display:contents}\n"], components: [{ type: i1__namespace$1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
213
216
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenComponent, decorators: [{
|
214
217
|
type: i0.Component,
|
215
218
|
args: [{
|
@@ -218,7 +221,7 @@
|
|
218
221
|
styleUrls: ['./doc-gen.component.scss'],
|
219
222
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
220
223
|
}]
|
221
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
224
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$2.QuoteDraftService }, { type: i1__namespace$2.ContextService }, { type: i2__namespace.UITemplatesApiService }, { type: FlowDocGenService }, { type: i3__namespace.ToastService }]; } });
|
222
225
|
|
223
226
|
var DocGenModule = /** @class */ (function () {
|
224
227
|
function DocGenModule() {
|
@@ -226,13 +229,13 @@
|
|
226
229
|
return DocGenModule;
|
227
230
|
}());
|
228
231
|
DocGenModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
229
|
-
DocGenModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenModule, declarations: [DocGenComponent], imports: [i5.CommonModule,
|
230
|
-
DocGenModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenModule, imports: [[i5.CommonModule,
|
232
|
+
DocGenModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenModule, declarations: [DocGenComponent], imports: [i5$1.CommonModule, i1$1.PreviewModule], exports: [DocGenComponent] });
|
233
|
+
DocGenModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenModule, imports: [[i5$1.CommonModule, i1$1.PreviewModule]] });
|
231
234
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DocGenModule, decorators: [{
|
232
235
|
type: i0.NgModule,
|
233
236
|
args: [{
|
234
237
|
declarations: [DocGenComponent],
|
235
|
-
imports: [i5.CommonModule,
|
238
|
+
imports: [i5$1.CommonModule, i1$1.PreviewModule],
|
236
239
|
exports: [DocGenComponent],
|
237
240
|
}]
|
238
241
|
}] });
|
@@ -590,14 +593,14 @@
|
|
590
593
|
return url.replace(flowRootUrl, '');
|
591
594
|
}));
|
592
595
|
};
|
593
|
-
this.routeChange$ = this.router.events.pipe(rxjs.filter(function (e) { return e instanceof i1$
|
596
|
+
this.routeChange$ = this.router.events.pipe(rxjs.filter(function (e) { return e instanceof i1$3.NavigationEnd; }), rxjs.shareReplay());
|
594
597
|
this.lastChildParams$ = this.watchLastChildParams$(this.route).pipe(rxjs.startWith(this.getLastChildParams(this.route.snapshot)), rxjs.shareReplay());
|
595
598
|
this.lastChildRoute$ = this.watchLastChildRoute$(this.route).pipe(rxjs.startWith(this.getLastChildRouteSnapshot(this.route.snapshot)), rxjs.shareReplay());
|
596
|
-
this.loading$ = this.router.events.pipe(rxjs.filter(function (e) { return e instanceof i1$
|
597
|
-
e instanceof i1$
|
598
|
-
e instanceof i1$
|
599
|
-
e instanceof i1$
|
600
|
-
this.router.events.pipe(rxjs.filter(function (e) { return e instanceof i1$
|
599
|
+
this.loading$ = this.router.events.pipe(rxjs.filter(function (e) { return e instanceof i1$3.NavigationStart ||
|
600
|
+
e instanceof i1$3.NavigationCancel ||
|
601
|
+
e instanceof i1$3.NavigationEnd ||
|
602
|
+
e instanceof i1$3.NavigationError; }), rxjs.map(function (e) { return e instanceof i1$3.NavigationStart; }), rxjs.startWith(false), rxjs.distinctUntilChanged());
|
603
|
+
this.router.events.pipe(rxjs.filter(function (e) { return e instanceof i1$3.NavigationEnd; })).subscribe(function () {
|
601
604
|
_this.urlHistory.push(_this.router.url);
|
602
605
|
});
|
603
606
|
}
|
@@ -673,14 +676,25 @@
|
|
673
676
|
var flowRouteUrl = this.getFlowRootPath(routeSnapshot);
|
674
677
|
this.router.navigate([flowRouteUrl, 'catalog'], { queryParams: routeSnapshot.queryParams });
|
675
678
|
};
|
679
|
+
FlowRouterService.prototype.switchObject = function (id) {
|
680
|
+
var routeSnapshot = this.getLastChildRouteSnapshot(this.route.snapshot);
|
681
|
+
var route = this.getLastChildRoute(this.route);
|
682
|
+
var objName = core.SalesforceIdUtils.getSfObjectNameById(id);
|
683
|
+
var queryParams = {
|
684
|
+
quoteId: objName === 'Quote' ? id : undefined,
|
685
|
+
accountId: objName === 'Account' ? id : undefined,
|
686
|
+
orderId: objName === 'Order' ? id : undefined,
|
687
|
+
};
|
688
|
+
this.router.navigate([], { relativeTo: route, queryParams: Object.assign(Object.assign({}, routeSnapshot.queryParams), queryParams) });
|
689
|
+
};
|
676
690
|
return FlowRouterService;
|
677
691
|
}());
|
678
|
-
FlowRouterService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRouterService, deps: [{ token: i1__namespace$
|
692
|
+
FlowRouterService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRouterService, deps: [{ token: i1__namespace$3.Router }, { token: i1__namespace$3.ActivatedRoute }, { token: i1__namespace$2.ContextService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
679
693
|
FlowRouterService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRouterService, providedIn: 'root' });
|
680
694
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRouterService, decorators: [{
|
681
695
|
type: i0.Injectable,
|
682
696
|
args: [{ providedIn: 'root' }]
|
683
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
697
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: i1__namespace$3.ActivatedRoute }, { type: i1__namespace$2.ContextService }]; } });
|
684
698
|
|
685
699
|
var CartPreviewComponent = /** @class */ (function () {
|
686
700
|
function CartPreviewComponent(flowConfiguration, routerService, productImagesService, quoteDraftService) {
|
@@ -689,7 +703,7 @@
|
|
689
703
|
this.productImagesService = productImagesService;
|
690
704
|
this.quoteDraftService = quoteDraftService;
|
691
705
|
this.productRowHeight = 97;
|
692
|
-
this.form = new
|
706
|
+
this.form = new i10.FormGroup({});
|
693
707
|
this.hasTermInProducts = false;
|
694
708
|
this.scrollHeight = 0;
|
695
709
|
this.shouldUpdate$ = new rxjs.BehaviorSubject(true);
|
@@ -761,7 +775,7 @@
|
|
761
775
|
}
|
762
776
|
ids.push(item.id);
|
763
777
|
if (!_this.form.controls[item.id]) {
|
764
|
-
_this.form.addControl(item.id, new
|
778
|
+
_this.form.addControl(item.id, new i10.FormControl(item.qty, []));
|
765
779
|
}
|
766
780
|
else {
|
767
781
|
(_a = _this.form.controls[item.id]) === null || _a === void 0 ? void 0 : _a.setValue(item.qty);
|
@@ -779,8 +793,8 @@
|
|
779
793
|
};
|
780
794
|
return CartPreviewComponent;
|
781
795
|
}());
|
782
|
-
CartPreviewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewComponent, deps: [{ token: i1__namespace$
|
783
|
-
CartPreviewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CartPreviewComponent, selector: "vl-cart-preview", inputs: { products: "products" }, viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: i3$1.OverlayPanel, descendants: true }], usesOnChanges: true, ngImport: i0__namespace, template: "<p-overlayPanel\n styleClass=\"navigation-settings-overlay flow-header-overlay center no-padding\"\n showTransitionOptions=\"0ms\"\n hideTransitionOptions=\"0ms\"\n>\n <ng-template pTemplate>\n <div class=\"flow-header-overlay__wrapper\" *vlLet=\"lockedProductId$ | async as lockedProductId\">\n <ng-container *vlLet=\"isEditMode$ | async as isEditMode\">\n <ng-container *ngIf=\"products.length > 0; else empty\">\n <h2 class=\"flow-header-overlay__title\">\n <span>Products ({{ products.length }})</span>\n <i class=\"vl-icon vl-icon-close close-icon\" (click)=\"overlayPanel.hide()\"></i>\n </h2>\n\n <p-virtualScroller [value]=\"products\" scrollHeight=\"{{ scrollHeight }}px\" [itemSize]=\"productRowHeight\">\n <ng-template pTemplate=\"header\">\n <div class=\"product header\">\n <span>Product</span>\n <span class=\"text-right\">Qty</span>\n <span class=\"text-right\">MRR</span>\n <span class=\"text-right\">NRR</span>\n </div>\n </ng-template>\n\n <ng-template pTemplate=\"item\" let-product>\n <div\n class=\"product item\"\n *vlLet=\"!isEditMode || product.deleted as isReadonlyProduct\"\n [class.readonly]=\"isReadonlyProduct\"\n [class.deleted]=\"product.deleted\"\n >\n <ng-container *vlLet=\"lockedProductId === product.productId as isLockedProduct\">\n <div class=\"product__info\">\n <div class=\"product__image-wrapper\">\n <div\n *ngIf=\"getImageUrl(product.productId) | async as imageUrl; else noImage\"\n class=\"product__image\"\n [ngStyle]=\"{ 'background-image': 'url(' + imageUrl + ')' }\"\n ></div>\n </div>\n <div class=\"flex flex-column justify-content-center\">\n <div class=\"word-break\" [class.line-through]=\"product.deleted\">{{ product.name }}</div>\n <div *ngIf=\"!isReadonlyProduct\">\n <p-button\n label=\"Configure\"\n [disabled]=\"isLockedProduct || !product.configurable || product.hasTerm\"\n styleClass=\"p-button-link p-button-sm p-2 pl-0\"\n (onClick)=\"navigateToProductConfiguration(product.productId, product.id)\"\n ></p-button>\n <p-button\n label=\"Delete\"\n [disabled]=\"isLockedProduct || product.hasTerm\"\n styleClass=\"p-button-link p-button-sm p-button-danger p-2 pr-0\"\n (onClick)=\"deleteHandler(product)\"\n ></p-button>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"form.controls[product.id] as control\">\n <span class=\"pt-2\" *ngIf=\"!isReadonlyProduct; else readonlyQty\">\n <p-inputNumber\n class=\"qty-control\"\n [formControl]=\"$any(control)\"\n [min]=\"1\"\n [required]=\"true\"\n (onBlur)=\"controlBlurHandler(product)\"\n ></p-inputNumber>\n </span>\n <ng-template #readonlyQty\n ><span class=\"text-right\">{{ control.value }}</span></ng-template\n >\n </ng-container>\n\n <span class=\"text-right\" [class.pt-3]=\"!isReadonlyProduct\">${{ product.mrr }}</span>\n <span class=\"text-right\" [class.pt-3]=\"!isReadonlyProduct\">${{ product.nrr }}</span>\n </ng-container>\n </div>\n </ng-template>\n </p-virtualScroller>\n\n <ng-template #noImage>\n <i class=\"vl-icon vl-icon-no-image no-image-icon\"></i>\n </ng-template>\n\n <div class=\"flex justify-content-end footer\">\n <p-button\n label=\"Clear cart\"\n styleClass=\"p-button-link p-button-sm p-button-danger pl-0 pr-0\"\n [disabled]=\"!isEditMode || !!lockedProductId || hasTermInProducts\"\n (onClick)=\"deleteAllHandler()\"\n ></p-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template #empty>\n <h2 class=\"flow-header-overlay__title\">\n <span>Empty Cart</span>\n <i class=\"vl-icon vl-icon-close close-icon\" (click)=\"overlayPanel.hide()\"></i>\n </h2>\n\n <span class=\"empty-state\">There are no products added to the Shopping Cart yet.</span>\n </ng-template>\n </div>\n </ng-template>\n</p-overlayPanel>\n", styles: ["p-virtualscroller ::ng-deep .p-virtualscroller-header{background:none;padding:0;border:none;font-weight:unset}p-virtualscroller ::ng-deep cdk-virtual-scroll-viewport{overflow-y:scroll}.flow-header-overlay__wrapper{display:flex;flex-direction:column;width:460px;max-height:600px}.flow-header-overlay__wrapper .close-icon{cursor:pointer}.flow-header-overlay__title{display:flex;justify-content:space-between;align-items:center;margin:0;padding:16px}.empty-state{color:var(--vl-text-color-deep-accent);padding:0 16px 16px}.product{display:grid;grid-template-columns:auto 60px 70px 70px;padding:16px;border-bottom:1px solid var(--vl-border-color)}.product.readonly{align-items:center}.product.deleted{opacity:.5}.product.header{position:-webkit-sticky;position:sticky;top:0;background-color:var(--surface-card);z-index:1;color:var(--vl-text-color-deep-accent);padding-bottom:0;border-bottom:none;overflow-y:scroll}.product .item{height:97px;overflow:hidden}.product__info{display:flex;grid-gap:16px;gap:16px}.product__image-wrapper{flex-shrink:0;height:64px;width:64px;display:flex;justify-content:center;align-items:center;background:var(--vl-primary-nav-overlay-bg);border-radius:4px}.product__image{background-size:contain;background-repeat:no-repeat;background-position:center;height:calc(100% - 12px);width:calc(100% - 12px)}.product .qty-control ::ng-deep .p-inputnumber-input{align-self:flex-start;text-align:right;height:24px;width:100%}.footer{padding:12px 16px}.word-break{word-break:break-word}.no-image-icon{color:#b4d1ef;height:18px;width:18px}:host ::ng-deep .p-overlaypanel.navigation-settings-overlay{margin-top:20px}\n"], components: [{ type: i3__namespace$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: i4__namespace
|
796
|
+
CartPreviewComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewComponent, deps: [{ token: i1__namespace$2.FlowConfigurationService }, { token: FlowRouterService }, { token: i1__namespace$2.ProductImagesService }, { token: i1__namespace$2.QuoteDraftService }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
797
|
+
CartPreviewComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CartPreviewComponent, selector: "vl-cart-preview", inputs: { products: "products" }, viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: i3$1.OverlayPanel, descendants: true }], usesOnChanges: true, ngImport: i0__namespace, template: "<p-overlayPanel\n styleClass=\"navigation-settings-overlay flow-header-overlay center no-padding\"\n showTransitionOptions=\"0ms\"\n hideTransitionOptions=\"0ms\"\n>\n <ng-template pTemplate>\n <div class=\"flow-header-overlay__wrapper\" *vlLet=\"lockedProductId$ | async as lockedProductId\">\n <ng-container *vlLet=\"isEditMode$ | async as isEditMode\">\n <ng-container *ngIf=\"products.length > 0; else empty\">\n <h2 class=\"flow-header-overlay__title\">\n <span>Products ({{ products.length }})</span>\n <i class=\"vl-icon vl-icon-close close-icon\" (click)=\"overlayPanel.hide()\"></i>\n </h2>\n\n <p-virtualScroller [value]=\"products\" scrollHeight=\"{{ scrollHeight }}px\" [itemSize]=\"productRowHeight\">\n <ng-template pTemplate=\"header\">\n <div class=\"product header\">\n <span>Product</span>\n <span class=\"text-right\">Qty</span>\n <span class=\"text-right\">MRR</span>\n <span class=\"text-right\">NRR</span>\n </div>\n </ng-template>\n\n <ng-template pTemplate=\"item\" let-product>\n <div\n class=\"product item\"\n *vlLet=\"!isEditMode || product.deleted as isReadonlyProduct\"\n [class.readonly]=\"isReadonlyProduct\"\n [class.deleted]=\"product.deleted\"\n >\n <ng-container *vlLet=\"lockedProductId === product.productId as isLockedProduct\">\n <div class=\"product__info\">\n <div class=\"product__image-wrapper\">\n <div\n *ngIf=\"getImageUrl(product.productId) | async as imageUrl; else noImage\"\n class=\"product__image\"\n [ngStyle]=\"{ 'background-image': 'url(' + imageUrl + ')' }\"\n ></div>\n </div>\n <div class=\"flex flex-column justify-content-center\">\n <div class=\"word-break\" [class.line-through]=\"product.deleted\">{{ product.name }}</div>\n <div *ngIf=\"!isReadonlyProduct\">\n <p-button\n label=\"Configure\"\n [disabled]=\"isLockedProduct || !product.configurable || product.hasTerm\"\n styleClass=\"p-button-link p-button-sm p-2 pl-0\"\n (onClick)=\"navigateToProductConfiguration(product.productId, product.id)\"\n ></p-button>\n <p-button\n label=\"Delete\"\n [disabled]=\"isLockedProduct || product.hasTerm\"\n styleClass=\"p-button-link p-button-sm p-button-danger p-2 pr-0\"\n (onClick)=\"deleteHandler(product)\"\n ></p-button>\n </div>\n </div>\n </div>\n\n <ng-container *ngIf=\"form.controls[product.id] as control\">\n <span class=\"pt-2\" *ngIf=\"!isReadonlyProduct; else readonlyQty\">\n <p-inputNumber\n class=\"qty-control\"\n [formControl]=\"$any(control)\"\n [min]=\"1\"\n [required]=\"true\"\n (onBlur)=\"controlBlurHandler(product)\"\n ></p-inputNumber>\n </span>\n <ng-template #readonlyQty\n ><span class=\"text-right\">{{ control.value }}</span></ng-template\n >\n </ng-container>\n\n <span class=\"text-right\" [class.pt-3]=\"!isReadonlyProduct\">${{ product.mrr }}</span>\n <span class=\"text-right\" [class.pt-3]=\"!isReadonlyProduct\">${{ product.nrr }}</span>\n </ng-container>\n </div>\n </ng-template>\n </p-virtualScroller>\n\n <ng-template #noImage>\n <i class=\"vl-icon vl-icon-no-image no-image-icon\"></i>\n </ng-template>\n\n <div class=\"flex justify-content-end footer\">\n <p-button\n label=\"Clear cart\"\n styleClass=\"p-button-link p-button-sm p-button-danger pl-0 pr-0\"\n [disabled]=\"!isEditMode || !!lockedProductId || hasTermInProducts\"\n (onClick)=\"deleteAllHandler()\"\n ></p-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template #empty>\n <h2 class=\"flow-header-overlay__title\">\n <span>Empty Cart</span>\n <i class=\"vl-icon vl-icon-close close-icon\" (click)=\"overlayPanel.hide()\"></i>\n </h2>\n\n <span class=\"empty-state\">There are no products added to the Shopping Cart yet.</span>\n </ng-template>\n </div>\n </ng-template>\n</p-overlayPanel>\n", styles: ["p-virtualscroller ::ng-deep .p-virtualscroller-header{background:none;padding:0;border:none;font-weight:unset}p-virtualscroller ::ng-deep cdk-virtual-scroll-viewport{overflow-y:scroll}.flow-header-overlay__wrapper{display:flex;flex-direction:column;width:460px;max-height:600px}.flow-header-overlay__wrapper .close-icon{cursor:pointer}.flow-header-overlay__title{display:flex;justify-content:space-between;align-items:center;margin:0;padding:16px}.empty-state{color:var(--vl-text-color-deep-accent);padding:0 16px 16px}.product{display:grid;grid-template-columns:auto 60px 70px 70px;padding:16px;border-bottom:1px solid var(--vl-border-color)}.product.readonly{align-items:center}.product.deleted{opacity:.5}.product.header{position:-webkit-sticky;position:sticky;top:0;background-color:var(--surface-card);z-index:1;color:var(--vl-text-color-deep-accent);padding-bottom:0;border-bottom:none;overflow-y:scroll}.product .item{height:97px;overflow:hidden}.product__info{display:flex;grid-gap:16px;gap:16px}.product__image-wrapper{flex-shrink:0;height:64px;width:64px;display:flex;justify-content:center;align-items:center;background:var(--vl-primary-nav-overlay-bg);border-radius:4px}.product__image{background-size:contain;background-repeat:no-repeat;background-position:center;height:calc(100% - 12px);width:calc(100% - 12px)}.product .qty-control ::ng-deep .p-inputnumber-input{align-self:flex-start;text-align:right;height:24px;width:100%}.footer{padding:12px 16px}.word-break{word-break:break-word}.no-image-icon{color:#b4d1ef;height:18px;width:18px}:host ::ng-deep .p-overlaypanel.navigation-settings-overlay{margin-top:20px}\n"], components: [{ type: i3__namespace$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: i4__namespace.VirtualScroller, selector: "p-virtualScroller", inputs: ["value", "itemSize", "style", "styleClass", "scrollHeight", "lazy", "rows", "minBufferPx", "maxBufferPx", "delay", "trackBy", "totalRecords", "first", "cache"], outputs: ["onLazyLoad"] }, { type: i5__namespace.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i6__namespace.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown"] }], directives: [{ type: i2__namespace$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i3__namespace.LetDirective, selector: "[vlLet]", inputs: ["vlLet"] }, { type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5__namespace$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10__namespace.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i10__namespace.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
784
798
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewComponent, decorators: [{
|
785
799
|
type: i0.Component,
|
786
800
|
args: [{
|
@@ -789,7 +803,7 @@
|
|
789
803
|
styleUrls: ['./cart-preview.component.scss'],
|
790
804
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
791
805
|
}]
|
792
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
806
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$2.FlowConfigurationService }, { type: FlowRouterService }, { type: i1__namespace$2.ProductImagesService }, { type: i1__namespace$2.QuoteDraftService }]; }, propDecorators: { overlayPanel: [{
|
793
807
|
type: i0.ViewChild,
|
794
808
|
args: [i3$1.OverlayPanel]
|
795
809
|
}], products: [{
|
@@ -802,34 +816,34 @@
|
|
802
816
|
return CartPreviewModule;
|
803
817
|
}());
|
804
818
|
CartPreviewModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
805
|
-
CartPreviewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewModule, declarations: [CartPreviewComponent], imports: [i5.CommonModule,
|
806
|
-
|
807
|
-
|
819
|
+
CartPreviewModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewModule, declarations: [CartPreviewComponent], imports: [i5$1.CommonModule,
|
820
|
+
i10.ReactiveFormsModule,
|
821
|
+
i5.ButtonModule,
|
808
822
|
i3$1.OverlayPanelModule,
|
809
823
|
i3.LetDirectiveModule,
|
810
|
-
i6
|
811
|
-
i4
|
824
|
+
i6.InputNumberModule,
|
825
|
+
i4.VirtualScrollerModule], exports: [CartPreviewComponent] });
|
812
826
|
CartPreviewModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewModule, imports: [[
|
813
|
-
i5.CommonModule,
|
814
|
-
|
815
|
-
|
827
|
+
i5$1.CommonModule,
|
828
|
+
i10.ReactiveFormsModule,
|
829
|
+
i5.ButtonModule,
|
816
830
|
i3$1.OverlayPanelModule,
|
817
831
|
i3.LetDirectiveModule,
|
818
|
-
i6
|
819
|
-
i4
|
832
|
+
i6.InputNumberModule,
|
833
|
+
i4.VirtualScrollerModule,
|
820
834
|
]] });
|
821
835
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CartPreviewModule, decorators: [{
|
822
836
|
type: i0.NgModule,
|
823
837
|
args: [{
|
824
838
|
declarations: [CartPreviewComponent],
|
825
839
|
imports: [
|
826
|
-
i5.CommonModule,
|
827
|
-
|
828
|
-
|
840
|
+
i5$1.CommonModule,
|
841
|
+
i10.ReactiveFormsModule,
|
842
|
+
i5.ButtonModule,
|
829
843
|
i3$1.OverlayPanelModule,
|
830
844
|
i3.LetDirectiveModule,
|
831
|
-
i6
|
832
|
-
i4
|
845
|
+
i6.InputNumberModule,
|
846
|
+
i4.VirtualScrollerModule,
|
833
847
|
],
|
834
848
|
exports: [CartPreviewComponent],
|
835
849
|
}]
|
@@ -948,11 +962,221 @@
|
|
948
962
|
};
|
949
963
|
return FlowDialogService;
|
950
964
|
}());
|
951
|
-
FlowDialogService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogService, deps: [{ token: i1__namespace.DialogService }, { token: i1__namespace$
|
965
|
+
FlowDialogService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogService, deps: [{ token: i1__namespace.DialogService }, { token: i1__namespace$2.ContextService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
952
966
|
FlowDialogService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogService });
|
953
967
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowDialogService, decorators: [{
|
954
968
|
type: i0.Injectable
|
955
|
-
}], ctorParameters: function () { return [{ type: i1__namespace.DialogService }, { type: i1__namespace$
|
969
|
+
}], ctorParameters: function () { return [{ type: i1__namespace.DialogService }, { type: i1__namespace$2.ContextService }]; } });
|
970
|
+
|
971
|
+
var defaultMetrics = [
|
972
|
+
{ key: 'VDM_Total_MRR', name: 'MRR', visible: true },
|
973
|
+
{ key: 'Effective_VDM_Total_MRR', name: 'E.MRR', visible: true },
|
974
|
+
{ key: 'VDM_Total_NRR', name: 'NRR', visible: true },
|
975
|
+
{ key: 'Effective_VDM_Total_NRR', name: 'E.NRR', visible: true },
|
976
|
+
];
|
977
|
+
var effectiveMetricKeys = ['VDM_Total_MRR', 'VDM_Total_NRR'];
|
978
|
+
var METRICS_STORAGE_KEY = 'vl-metrics';
|
979
|
+
|
980
|
+
var MetricsComponent = /** @class */ (function () {
|
981
|
+
function MetricsComponent(integrationState, contextService, quoteDraftService, cdr) {
|
982
|
+
this.integrationState = integrationState;
|
983
|
+
this.contextService = contextService;
|
984
|
+
this.quoteDraftService = quoteDraftService;
|
985
|
+
this.cdr = cdr;
|
986
|
+
this.emptyStateMetrics = [
|
987
|
+
{ name: 'MRR', value: 0 },
|
988
|
+
{ name: 'E.MRR', value: 0 },
|
989
|
+
{ name: 'NRR', value: 0 },
|
990
|
+
{ name: 'E.NRR', value: 0 },
|
991
|
+
];
|
992
|
+
this.visibleSelectedMetrics = [];
|
993
|
+
this.restSelectedMetrics = [];
|
994
|
+
this.metrics = [];
|
995
|
+
this.filteredMetrics = [];
|
996
|
+
this.sidebarVisible = false;
|
997
|
+
this.searchControl = new i10.FormControl('');
|
998
|
+
this.nameControl = new i10.FormControl('', [
|
999
|
+
forms.requiredValidator,
|
1000
|
+
forms.invalidCharactersValidator(forms.standardCharSetWithSpaceRegExp),
|
1001
|
+
forms.reservedIdentifierValidator,
|
1002
|
+
i10.Validators.maxLength(80),
|
1003
|
+
]);
|
1004
|
+
this.defaultMetrics = [];
|
1005
|
+
this.storedDefaultMetrics = [];
|
1006
|
+
this.metricKeys = [];
|
1007
|
+
this.lastSavedMetrics = [];
|
1008
|
+
this.destroyed$ = new rxjs.Subject();
|
1009
|
+
}
|
1010
|
+
MetricsComponent.prototype.ngOnInit = function () {
|
1011
|
+
var _this = this;
|
1012
|
+
this.quoteDraftService.currentState$
|
1013
|
+
.pipe(operators.takeUntil(this.destroyed$), operators.tap(function (lineItems) {
|
1014
|
+
_this.metricKeys = _this.collectMetricKeys(lineItems).reduce(function (result, key) {
|
1015
|
+
result.push(key);
|
1016
|
+
if (effectiveMetricKeys.includes(key)) {
|
1017
|
+
result.push("Effective_" + key);
|
1018
|
+
}
|
1019
|
+
return result;
|
1020
|
+
}, []);
|
1021
|
+
_this.collectAvailableMetrics();
|
1022
|
+
}))
|
1023
|
+
.subscribe();
|
1024
|
+
this.integrationState
|
1025
|
+
.listen$(i1$1.FlowAction.SET_DEFAULT_METRICS)
|
1026
|
+
.pipe(operators.tap(function (_b) {
|
1027
|
+
var metrics = _b.metrics;
|
1028
|
+
if (lodash.isEqual(_this.storedDefaultMetrics, metrics)) {
|
1029
|
+
return;
|
1030
|
+
}
|
1031
|
+
_this.storedDefaultMetrics = metrics;
|
1032
|
+
_this.collectAvailableMetrics();
|
1033
|
+
}), operators.takeUntil(this.destroyed$))
|
1034
|
+
.subscribe();
|
1035
|
+
this.searchControl.valueChanges.pipe(operators.takeUntil(this.destroyed$), rxjs.startWith('')).subscribe(function (query) {
|
1036
|
+
_this.filteredMetrics = _this.metrics.filter(function (_b) {
|
1037
|
+
var name = _b.name;
|
1038
|
+
return (name || '').toLowerCase().includes(query === null || query === void 0 ? void 0 : query.toLowerCase());
|
1039
|
+
});
|
1040
|
+
});
|
1041
|
+
};
|
1042
|
+
MetricsComponent.prototype.ngOnDestroy = function () {
|
1043
|
+
this.destroyed$.next();
|
1044
|
+
this.destroyed$.complete();
|
1045
|
+
};
|
1046
|
+
MetricsComponent.prototype.openSidebar = function () {
|
1047
|
+
this.overlayPanel.hide();
|
1048
|
+
this.sidebarVisible = true;
|
1049
|
+
};
|
1050
|
+
MetricsComponent.prototype.closeSidebar = function () {
|
1051
|
+
this.sidebarVisible = false;
|
1052
|
+
this.metrics = lodash.cloneDeep(this.lastSavedMetrics);
|
1053
|
+
this.editingMetric = undefined;
|
1054
|
+
this.searchControl.setValue('');
|
1055
|
+
};
|
1056
|
+
MetricsComponent.prototype.getMetricValue = function (key) {
|
1057
|
+
var context = this.contextService.resolve();
|
1058
|
+
if (key.startsWith('Effective_')) {
|
1059
|
+
var correctKey = key.replace('Effective_', '');
|
1060
|
+
return this.toNumber(context.properties[correctKey]) - this.toNumber(context.properties["Previous" + correctKey]);
|
1061
|
+
}
|
1062
|
+
else {
|
1063
|
+
return this.toNumber(context.properties[key]);
|
1064
|
+
}
|
1065
|
+
};
|
1066
|
+
MetricsComponent.prototype.save = function () {
|
1067
|
+
localStorage.setItem(METRICS_STORAGE_KEY, JSON.stringify(this.metrics));
|
1068
|
+
this.setMetrics();
|
1069
|
+
this.lastSavedMetrics = lodash.cloneDeep(this.metrics);
|
1070
|
+
this.closeSidebar();
|
1071
|
+
};
|
1072
|
+
MetricsComponent.prototype.changeMetricOrder = function (event) {
|
1073
|
+
i12.moveItemInArray(this.metrics, event.previousIndex, event.currentIndex);
|
1074
|
+
this.filteredMetrics = this.metrics;
|
1075
|
+
};
|
1076
|
+
MetricsComponent.prototype.editMetric = function (metric) {
|
1077
|
+
if (this.editingMetric && this.nameControl.invalid) {
|
1078
|
+
return;
|
1079
|
+
}
|
1080
|
+
this.editingMetric = metric;
|
1081
|
+
this.nameControl.setValue(metric.name);
|
1082
|
+
};
|
1083
|
+
MetricsComponent.prototype.saveMetric = function () {
|
1084
|
+
var _a;
|
1085
|
+
if (this.nameControl.invalid) {
|
1086
|
+
return;
|
1087
|
+
}
|
1088
|
+
if (this.editingMetric) {
|
1089
|
+
this.editingMetric.name = (_a = this.nameControl.value) === null || _a === void 0 ? void 0 : _a.trim();
|
1090
|
+
}
|
1091
|
+
this.editingMetric = undefined;
|
1092
|
+
};
|
1093
|
+
MetricsComponent.prototype.resetToDefault = function () {
|
1094
|
+
this.collectAvailableMetrics(true);
|
1095
|
+
};
|
1096
|
+
MetricsComponent.prototype.collectMetricKeys = function (lineItems) {
|
1097
|
+
var _this = this;
|
1098
|
+
var keys = [];
|
1099
|
+
lineItems.forEach(function (lineItem) {
|
1100
|
+
keys.push.apply(keys, __spreadArray([], __read(Object.keys(lineItem.totalMetrics || {}))));
|
1101
|
+
keys.push.apply(keys, __spreadArray([], __read(_this.collectMetricKeys(lineItem.lineItems))));
|
1102
|
+
});
|
1103
|
+
return lodash.uniq(keys);
|
1104
|
+
};
|
1105
|
+
MetricsComponent.prototype.setMetrics = function () {
|
1106
|
+
var metrics = lodash.cloneDeep(this.metrics.filter(function (_b) {
|
1107
|
+
var visible = _b.visible;
|
1108
|
+
return visible;
|
1109
|
+
}));
|
1110
|
+
this.visibleSelectedMetrics = metrics.slice(0, 4);
|
1111
|
+
this.restSelectedMetrics = metrics.slice(4);
|
1112
|
+
};
|
1113
|
+
MetricsComponent.prototype.collectAvailableMetrics = function (resetToDefault) {
|
1114
|
+
var _this = this;
|
1115
|
+
if (resetToDefault === void 0) { resetToDefault = false; }
|
1116
|
+
this.metrics = [];
|
1117
|
+
this.defaultMetrics = this.storedDefaultMetrics.length ? this.storedDefaultMetrics : defaultMetrics;
|
1118
|
+
var storedMetrics = JSON.parse(localStorage.getItem(METRICS_STORAGE_KEY) || '[]');
|
1119
|
+
var metricKeys = __spreadArray([], __read(this.metricKeys));
|
1120
|
+
if (!storedMetrics.length || resetToDefault) {
|
1121
|
+
this.defaultMetrics.forEach(function (defaultMetric) {
|
1122
|
+
var metricKeyIndex = metricKeys.findIndex(function (key) { return key === defaultMetric.key; });
|
1123
|
+
var storedMetric = storedMetrics.find(function (_b) {
|
1124
|
+
var key = _b.key;
|
1125
|
+
return key === defaultMetric.key;
|
1126
|
+
});
|
1127
|
+
if (storedMetric && !resetToDefault) {
|
1128
|
+
_this.metrics.push(storedMetric);
|
1129
|
+
}
|
1130
|
+
else {
|
1131
|
+
_this.metrics.push(defaultMetric);
|
1132
|
+
}
|
1133
|
+
if (metricKeyIndex >= 0) {
|
1134
|
+
metricKeys.splice(metricKeyIndex, 1);
|
1135
|
+
}
|
1136
|
+
});
|
1137
|
+
}
|
1138
|
+
else {
|
1139
|
+
this.metrics = __spreadArray([], __read(storedMetrics.reduce(function (result, metric) {
|
1140
|
+
var metricKeyIndex = metricKeys.findIndex(function (key) { return key === metric.key; });
|
1141
|
+
if (metricKeyIndex >= 0) {
|
1142
|
+
metricKeys.splice(metricKeyIndex, 1);
|
1143
|
+
}
|
1144
|
+
return __spreadArray(__spreadArray([], __read(result)), [metric]);
|
1145
|
+
}, [])));
|
1146
|
+
}
|
1147
|
+
this.metrics = __spreadArray(__spreadArray([], __read(this.metrics)), __read(metricKeys.map(function (metricKey) {
|
1148
|
+
return { key: metricKey, name: _this.getMetricName(metricKey), visible: false };
|
1149
|
+
})));
|
1150
|
+
this.metrics = lodash.cloneDeep(this.metrics);
|
1151
|
+
this.searchControl.setValue('');
|
1152
|
+
if (!resetToDefault) {
|
1153
|
+
this.lastSavedMetrics = lodash.cloneDeep(this.metrics);
|
1154
|
+
this.setMetrics();
|
1155
|
+
}
|
1156
|
+
this.cdr.markForCheck();
|
1157
|
+
};
|
1158
|
+
MetricsComponent.prototype.getMetricName = function (key) {
|
1159
|
+
return key.replace(/VDM_|Total_/g, '');
|
1160
|
+
};
|
1161
|
+
MetricsComponent.prototype.toNumber = function (value) {
|
1162
|
+
return +(value || 0);
|
1163
|
+
};
|
1164
|
+
return MetricsComponent;
|
1165
|
+
}());
|
1166
|
+
MetricsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: MetricsComponent, deps: [{ token: i1__namespace$1.IntegrationState }, { token: i1__namespace$2.ContextService }, { token: i1__namespace$2.QuoteDraftService }, { token: i0__namespace.ChangeDetectorRef }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
1167
|
+
MetricsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: MetricsComponent, selector: "vl-metrics", viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: i3$1.OverlayPanel, descendants: true }], ngImport: i0__namespace, template: "<div class=\"header-metrics\" (click)=\"overlayPanel.toggle($event)\">\n <div *ngFor=\"let metric of visibleSelectedMetrics\" class=\"metric\">\n <span class=\"name\" [attr.title]=\"metric.name\">{{ metric.name }}</span>\n <span class=\"filler\"></span>\n <span class=\"value\">${{ getMetricValue(metric.key) | number: '1.2-2' }}</span>\n </div>\n\n <ng-container *ngIf=\"!visibleSelectedMetrics.length\">\n <div *ngFor=\"let metric of emptyStateMetrics\" class=\"metric empty-state-metric\">\n <span class=\"name\" [attr.title]=\"metric.name\">{{ metric.name }}</span>\n <span class=\"filler\"></span>\n <span class=\"value\">${{ metric.value | number: '1.2-2' }}</span>\n </div>\n </ng-container>\n</div>\n\n<p-overlayPanel\n styleClass=\"metrics-overlay-container center no-padding\"\n showTransitionOptions=\"0ms\"\n hideTransitionOptions=\"0ms\"\n>\n <ng-template pTemplate>\n <div class=\"overlay-metrics\">\n <div *ngFor=\"let metric of restSelectedMetrics\" class=\"metric\">\n <span class=\"name\" [attr.title]=\"metric.name\">{{ metric.name }}</span>\n <span class=\"filler\"></span>\n <span class=\"value\">${{ getMetricValue(metric.key) | number: '1.2-2' }}</span>\n </div>\n </div>\n <button class=\"config\" (click)=\"openSidebar()\">\n Metrics Config\n <i class=\"vl-icon vl-icon-chevron-down\"></i>\n </button>\n </ng-template>\n</p-overlayPanel>\n\n<p-sidebar\n [visible]=\"sidebarVisible\"\n (visibleChange)=\"closeSidebar()\"\n position=\"right\"\n [baseZIndex]=\"1000\"\n [style]=\"{ width: '360px' }\"\n>\n <div class=\"container\">\n <div class=\"header\">\n Quote Metrics Config\n <i class=\"vl-icon vl-icon-close\" (click)=\"closeSidebar()\"></i>\n </div>\n\n <div class=\"search-container\">\n <input\n data-test-id=\"search\"\n [formControl]=\"searchControl\"\n pInputText\n placeholder=\"Search for metric\u2026\"\n class=\"w-full\"\n />\n </div>\n\n <div class=\"content\">\n <div class=\"sidebar-metrics\" cdkDropList (cdkDropListDropped)=\"changeMetricOrder($event)\">\n <div\n *ngFor=\"let metric of filteredMetrics\"\n class=\"sidebar-metric\"\n [class.edit]=\"metric.key === editingMetric?.key\"\n cdkDrag\n [cdkDragDisabled]=\"!!searchControl.value\"\n >\n <div class=\"drag-icon\">\n <i class=\"vl-icon vl-icon-reorder\" cdkDragHandle></i>\n </div>\n <ng-container\n [ngTemplateOutlet]=\"metricTemplate\"\n [ngTemplateOutletContext]=\"{ metric: metric }\"\n ></ng-container>\n </div>\n </div>\n\n <div class=\"empty-state\" *ngIf=\"!filteredMetrics.length\">There are no items matching your search criteria</div>\n </div>\n <div class=\"footer\">\n <p-button\n label=\"Reset to default\"\n styleClass=\"p-button-outlined p-button-sm\"\n (onClick)=\"resetToDefault()\"\n ></p-button>\n <p-button label=\"Save\" styleClass=\"p-button p-button-filled p-button-sm\" (onClick)=\"save()\"></p-button>\n </div>\n </div>\n</p-sidebar>\n\n<ng-template #metricTemplate let-metric=\"metric\">\n <div *ngIf=\"editingMetric?.key !== metric.key\" class=\"preview-state\">\n <p-checkbox\n [ngModel]=\"metric.visible\"\n (ngModelChange)=\"metric.visible = !metric.visible\"\n [binary]=\"true\"\n checkboxIcon=\"vl-icon vl-icon-checkmark\"\n ></p-checkbox>\n <div class=\"title\">{{ metric.name }}</div>\n </div>\n\n <div *ngIf=\"editingMetric?.key === metric.key\" class=\"edit-state\">\n <input data-test-id=\"name\" [formControl]=\"nameControl\" pInputText placeholder=\"Metric name\" class=\"w-full\" />\n <vl-error-tooltip [tooltip]=\"nameControl | error: 'name'\" [visible]=\"!!nameControl.errors\"></vl-error-tooltip>\n </div>\n <div *ngIf=\"editingMetric?.key !== metric.key\" (click)=\"editMetric(metric)\" class=\"action edit\">\n <i class=\"vl-icon vl-icon-edit-sm\"></i>\n </div>\n <div *ngIf=\"editingMetric?.key === metric.key\" (click)=\"saveMetric()\" class=\"action save\">\n <i class=\"vl-icon vl-icon-checkmark\"></i>\n </div>\n</ng-template>\n", styles: [":host .header-metrics{cursor:pointer;min-width:130px;max-width:260px;display:flex;flex-wrap:wrap;justify-content:flex-start;grid-gap:0 16px;gap:0 16px;height:32px;align-items:flex-start}:host .header-metrics .metric{flex:1;flex-basis:114px;max-width:122px;display:flex;justify-content:space-between;align-items:flex-end;font-size:12px;line-height:16px;letter-spacing:.3px}:host .header-metrics .metric .name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host .header-metrics .metric .value{font-weight:600}:host .header-metrics .metric.empty-state-metric{filter:blur(1.5px)}:host ::ng-deep .p-sidebar-header{display:none}:host ::ng-deep .p-sidebar-content{padding:0 24px;height:100%}::ng-deep .metrics-overlay-container{width:160px}::ng-deep .metrics-overlay-container .p-overlaypanel-content{padding:0}::ng-deep .metrics-overlay-container .overlay-metrics{max-height:110px;overflow:auto}::ng-deep .metrics-overlay-container .metric{display:flex;padding:0 12px;font-size:12px;line-height:16px;letter-spacing:.3px;align-items:flex-end}::ng-deep .metrics-overlay-container .metric .name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}::ng-deep .metrics-overlay-container .metric .value{font-weight:600}::ng-deep .metrics-overlay-container .metric:not(:last-of-type){margin-bottom:4px}::ng-deep .metrics-overlay-container .metric:first-of-type{margin-top:12px}::ng-deep .metrics-overlay-container .metric:last-of-type{margin-bottom:12px}::ng-deep .metrics-overlay-container .config{display:flex;align-items:center;justify-content:space-between;padding:0 12px;cursor:pointer;background:var(--vl-color-light-blue);outline:none;border:none;width:100%;height:32px;font-size:12px;line-height:16px;letter-spacing:.3px}::ng-deep .metrics-overlay-container .config .vl-icon-chevron-down{color:var(--vl-text-color-accent-light);transform:rotate(-90deg)}.filler{flex:1;margin:0 4px 3px;min-width:5px}.filler:before{display:block;width:100%;height:2px;content:\"\";background-image:radial-gradient(circle at 1px 1px,var(--vl-text-color-accent-light) 1px,transparent 0);background-size:3px 2px}.container{display:flex;flex-direction:column;height:100%}.container .header{margin:15px 0 23px;flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:18px;line-height:26px;letter-spacing:-.6px;color:var(--vl-accent-color)}.container .header i{cursor:pointer;font-size:15px}.container .search-container{margin-bottom:12px}.container .search-container input{width:100%}.container .content{display:flex;flex-direction:column;flex:1;overflow:hidden}.container .footer{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 20px;margin:0 -16px;border-top:1px solid var(--vl-border-color)}.container .footer p-button{flex:1}.container .footer p-button ::ng-deep button{width:100%}.container .footer p-button:not(:last-child){margin-right:16px}.container app-empty-state::ng-deep{margin-bottom:12px}.container app-empty-state::ng-deep .container{width:100%;padding-bottom:0}.sidebar-metrics{width:100%;overflow:auto;padding:1px 0}.empty-state{display:flex;flex:1;align-items:center;justify-content:center;color:var(--vl-text-color-deep-accent);font-size:12px;line-height:16px;letter-spacing:.3px}.sidebar-metric{display:flex;align-items:center;height:32px;position:relative;padding-left:8px;border-radius:2px}.sidebar-metric:hover:not(.edit){background:var(--vl-color-light-blue)}.sidebar-metric:hover:not(.edit) .edit{visibility:visible}.sidebar-metric p-checkbox{margin-right:8px}.sidebar-metric .drag-icon{width:16px;height:16px;margin-right:8px}.sidebar-metric .drag-icon i{cursor:pointer;color:#c5d1e2}.sidebar-metric.cdk-drag-disabled .drag-icon i{cursor:default}.sidebar-metric .title{font-weight:400;font-size:12px;line-height:16px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:text;color:var(--vl-text-color-secondary)}.sidebar-metric .preview-state,.sidebar-metric .edit-state{position:relative;margin-right:8px;min-width:0;display:flex;align-items:center;flex:1}.sidebar-metric .preview-state input,.sidebar-metric .edit-state input{width:100%}.sidebar-metric .action{cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.sidebar-metric .edit{visibility:hidden}.sidebar-metric .edit i{color:var(--vl-text-color-deep-accent);width:12px;height:12px}.sidebar-metric .save{background:var(--vl-primary-color);border-radius:2px}.sidebar-metric .save i{color:#fff}.sidebar-metric ::ng-deep .p-checkbox{width:16px;height:16px}.sidebar-metric ::ng-deep .p-checkbox .p-checkbox-box{width:16px;height:16px}.cdk-drag-preview{z-index:10001!important;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], components: [{ type: i3__namespace$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: i4__namespace$1.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { type: i5__namespace.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i6__namespace$1.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "trueValue", "falseValue"], outputs: ["onChange"] }, { type: i3__namespace.ErrorTooltipComponent, selector: "vl-error-tooltip", inputs: ["tooltip", "visible"] }], directives: [{ type: i5__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i10__namespace.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: i11__namespace.InputText, selector: "[pInputText]" }, { type: i10__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10__namespace.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i12__namespace.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "id", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListAutoScrollDisabled", "cdkDropListOrientation", "cdkDropListLockAxis", "cdkDropListData", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i12__namespace.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragDisabled", "cdkDragStartDelay", "cdkDragLockAxis", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragBoundary", "cdkDragRootElement", "cdkDragPreviewContainer", "cdkDragData", "cdkDragFreeDragPosition"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i12__namespace.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i5__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i10__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "number": i5__namespace$1.DecimalPipe, "error": i3__namespace.ErrorPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
1168
|
+
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: MetricsComponent, decorators: [{
|
1169
|
+
type: i0.Component,
|
1170
|
+
args: [{
|
1171
|
+
selector: 'vl-metrics',
|
1172
|
+
templateUrl: './metrics.component.html',
|
1173
|
+
styleUrls: ['./metrics.component.scss'],
|
1174
|
+
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
1175
|
+
}]
|
1176
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$1.IntegrationState }, { type: i1__namespace$2.ContextService }, { type: i1__namespace$2.QuoteDraftService }, { type: i0__namespace.ChangeDetectorRef }]; }, propDecorators: { overlayPanel: [{
|
1177
|
+
type: i0.ViewChild,
|
1178
|
+
args: [i3$1.OverlayPanel]
|
1179
|
+
}] } });
|
956
1180
|
|
957
1181
|
var FlowHeaderComponent = /** @class */ (function () {
|
958
1182
|
function FlowHeaderComponent(contextService, quoteDraftService, quoteApiService, sfApiService, flowConfiguration, routerService, dialogService, integrationState) {
|
@@ -981,10 +1205,6 @@
|
|
981
1205
|
this.isCartRoute$ = this.routerService.isCartRoute$();
|
982
1206
|
this.isCatalogRoute$ = this.routerService.isCatalogRoute$();
|
983
1207
|
this.objectDetails$ = this.getObjectDetails$();
|
984
|
-
this.totalMRR$ = this.contextService.resolve$().pipe(rxjs.map(function (ctx) { return ctx.properties.VDM_Total_MRR; }), rxjs.distinctUntilChanged(), rxjs.map(function (mrr) { return _this.formatMetric(mrr); }));
|
985
|
-
this.totalNRR$ = this.contextService.resolve$().pipe(rxjs.map(function (ctx) { return ctx.properties.VDM_Total_NRR; }), rxjs.distinctUntilChanged(), rxjs.map(function (nrr) { return _this.formatMetric(nrr); }));
|
986
|
-
this.totalEMRR$ = this.contextService.resolve$().pipe(rxjs.map(function (ctx) { return "" + (_this.toNumber(ctx.properties.VDM_Total_MRR) - _this.toNumber(ctx.properties.PreviousVDM_Total_MRR)); }), rxjs.distinctUntilChanged(), rxjs.map(function (emrr) { return _this.formatMetric(emrr); }));
|
987
|
-
this.totalENRR$ = this.contextService.resolve$().pipe(rxjs.map(function (ctx) { return "" + (_this.toNumber(ctx.properties.VDM_Total_NRR) - _this.toNumber(ctx.properties.PreviousVDM_Total_NRR)); }), rxjs.distinctUntilChanged(), rxjs.map(function (enrr) { return _this.formatMetric(enrr); }));
|
988
1208
|
}
|
989
1209
|
FlowHeaderComponent.prototype.ngOnInit = function () {
|
990
1210
|
var _this = this;
|
@@ -1097,7 +1317,7 @@
|
|
1097
1317
|
}));
|
1098
1318
|
}
|
1099
1319
|
shouldOpen$
|
1100
|
-
.pipe(rxjs.first(), rxjs.tap(function (shouldOpen) { return shouldOpen && _this.integrationState.dispatch(
|
1320
|
+
.pipe(rxjs.first(), rxjs.tap(function (shouldOpen) { return shouldOpen && _this.integrationState.dispatch(i1$1.OpenDocGenAction()); }))
|
1101
1321
|
.subscribe();
|
1102
1322
|
};
|
1103
1323
|
FlowHeaderComponent.prototype.saveButtonClickHandler = function (isCartRoute) {
|
@@ -1260,19 +1480,13 @@
|
|
1260
1480
|
return (((_a = this.quoteDraftService.quoteDraft) === null || _a === void 0 ? void 0 : _a.context.properties.mode) === core.ConfigurationContextMode.ACCOUNT &&
|
1261
1481
|
!this.quoteDraftService.hasAssets);
|
1262
1482
|
};
|
1263
|
-
/**
|
1264
|
-
* Convert a value from string|undefined to number.
|
1265
|
-
*/
|
1266
|
-
FlowHeaderComponent.prototype.toNumber = function (value) {
|
1267
|
-
return +(value || 0);
|
1268
|
-
};
|
1269
1483
|
FlowHeaderComponent.prototype.isUpsellQuoteWithoutChanges = function () {
|
1270
1484
|
return this.quoteDraftService.activeCurrentState.every(function (lineItem) { return lineItem.actionCode === 'EXIST'; });
|
1271
1485
|
};
|
1272
1486
|
return FlowHeaderComponent;
|
1273
1487
|
}());
|
1274
|
-
FlowHeaderComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderComponent, deps: [{ token: i1__namespace$
|
1275
|
-
FlowHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FlowHeaderComponent, selector: "vl-flow-header", ngImport: i0__namespace, template: "<ng-container *ngIf=\"contextProperties$ | async as contextProperties\">\n <ng-container *vlLet=\"objectDetails$ | async as details\">\n <div class=\"flow-info\">\n <nav class=\"nav-item nav-back\" (click)=\"back()\">\n <i class=\"nav-icon vl-icon vl-icon-arrow-left\"></i>\n\n <span> Back to {{ objectName$ | async | titlecase }}</span>\n </nav>\n\n <ng-container *ngIf=\"isAccountMode$ | async\">\n <span class=\"dot-separator\"></span>\n\n <nav class=\"account-name\" [pTooltip]=\"contextProperties.Name ?? ''\" tooltipPosition=\"bottom\" [showDelay]=\"1000\">\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(contextProperties.Id)\">{{ contextProperties.Name }}</a>\n </nav>\n </ng-container>\n\n <ng-container *ngIf=\"isQuoteMode$ | async\">\n <span class=\"dot-separator\"></span>\n\n <span>Quote #{{ details.quoteNumber }}</span>\n\n <span class=\"dot-separator\"></span>\n\n <nav class=\"nav-item\" (click)=\"quoteDetails.toggle($event)\">\n <span>{{ status$ | async }}</span>\n\n <i *ngIf=\"!quoteDetails.overlayVisible\" class=\"vl-icon vl-icon-chevron-down icon-with-margin\"></i>\n <i *ngIf=\"quoteDetails.overlayVisible\" class=\"vl-icon vl-icon-chevron-up icon-with-margin\"></i>\n </nav>\n\n <p-overlayPanel styleClass=\"navigation-settings-overlay flow-header-overlay center\" #quoteDetails>\n <ng-template pTemplate>\n <div class=\"flow-header-overlay__wrapper\">\n <h2 class=\"flow-header-overlay__title\">\n <span>Quote Information</span>\n <i class=\"vl-icon vl-icon-close close-icon\" (click)=\"quoteDetails.hide()\"></i>\n </h2>\n\n <ul class=\"info-list\">\n <li class=\"info-list__row\">\n <span>Account Name:</span>\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(details.accountId)\">\n <span>{{ details.accountName }}</span>\n </a>\n </li>\n <li class=\"info-list__row\">\n <span>Opportunity Name:</span>\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(details.opportunityId)\">\n <span>{{ details.opportunityName }}</span>\n </a>\n </li>\n <li class=\"info-list__row\">\n <span>Quote Name:</span>\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(details.quoteId)\">\n <span>{{ details.quoteName }}</span>\n </a>\n </li>\n </ul>\n </div>\n </ng-template>\n </p-overlayPanel>\n </ng-container>\n </div>\n\n <div class=\"flow-navigation\">\n <ng-container *vlLet=\"isReadonlyMode$ | async as isReadonlyMode\">\n <nav\n class=\"nav-item\"\n [ngClass]=\"{ active: (isCatalogRoute$ | async), disabled: isReadonlyMode }\"\n (click)=\"navigateToCatalog()\"\n >\n Catalog\n </nav>\n <nav class=\"nav-item disabled\" [ngClass]=\"{ active: isConfigurationRoute$ | async }\">Configurator</nav>\n <ng-container *vlLet=\"products$ | async as products\">\n <nav\n class=\"nav-item\"\n [ngClass]=\"{ active: (isCartRoute$ | async), disabled: isReadonlyMode }\"\n (click)=\"navigateToShoppingCart()\"\n >\n Shopping Cart ({{ products.length }})\n </nav>\n\n <nav\n class=\"nav-popover-toggle\"\n [ngClass]=\"{ active: (isCartRoute$ | async), disabled: isReadonlyMode }\"\n (click)=\"toggleCartOverlay(cart, $event)\"\n >\n <i *ngIf=\"!cart?.overlayPanel?.overlayVisible\" class=\"vl-icon vl-icon-chevron-down icon-with-margin\"></i>\n <i *ngIf=\"cart?.overlayPanel?.overlayVisible\" class=\"vl-icon vl-icon-chevron-up icon-with-margin\"></i>\n </nav>\n\n <vl-cart-preview #cart [products]=\"products\"></vl-cart-preview>\n </ng-container>\n </ng-container>\n </div>\n\n <div class=\"flow-controls\">\n <ng-container *ngIf=\"(isReadonlyMode$ | async) === false\">\n <ng-container *vlLet=\"activePriceList$ | async as priceList\">\n <div>\n <ng-container *appLet=\"assetPriceLists$ | async as assetPriceLists\">\n <ng-container *ngIf=\"(isAccountMode$ | async) && assetPriceLists.length > 1; else singlePriceList\">\n <nav class=\"nav-item\" (click)=\"priceListsOverlay?.toggle($event)\">\n <span>{{ priceList?.name }}</span>\n <i\n *ngIf=\"!priceListsOverlay?.overlayVisible\"\n class=\"vl-icon vl-icon-chevron-down icon-with-margin\"\n ></i>\n <i *ngIf=\"priceListsOverlay?.overlayVisible\" class=\"vl-icon vl-icon-chevron-up icon-with-margin\"></i>\n </nav>\n\n <p-overlayPanel styleClass=\"price-list-overlay\" #priceListsOverlay>\n <ng-template pTemplate>\n <span\n *ngFor=\"let option of assetPriceLists\"\n class=\"price-list-option\"\n [class.active]=\"priceList?.id === option.id\"\n (click)=\"selectPriceList(option.id); priceListsOverlay.hide()\"\n >\n {{ option.name }}\n </span>\n </ng-template>\n </p-overlayPanel>\n </ng-container>\n </ng-container>\n\n <ng-template #singlePriceList>\n <div>{{ priceList?.name }}</div>\n </ng-template>\n\n <div *ngIf=\"contextProperties.StartDate\">{{ contextProperties.StartDate | date: 'MM.dd.yyyy' }}</div>\n </div>\n </ng-container>\n </ng-container>\n\n <span class=\"metrics\">\n <div class=\"metrics__row\">\n <span>MRR:</span>\n <span class=\"font-semibold\">${{ totalMRR$ | async }}</span>\n </div>\n <div class=\"metrics__row\">\n <span>NRR:</span>\n <span class=\"font-semibold\">${{ totalNRR$ | async }}</span>\n </div>\n </span>\n\n <span class=\"metrics\">\n <div class=\"metrics__row\">\n <span>E.MRR:</span>\n <span class=\"font-semibold\">${{ totalEMRR$ | async }}</span>\n </div>\n <div class=\"metrics__row\">\n <span>E.NRR:</span>\n <span class=\"font-semibold\">${{ totalENRR$ | async }}</span>\n </div>\n </span>\n\n <ng-container *vlLet=\"isCartRoute$ | async as isCartRoute\">\n <ng-container *vlLet=\"isReadonlyMode$ | async as isReadonlyMode\">\n <p-button\n class=\"doc-gen-button\"\n icon=\"vl-icon vl-icon-doc-gen\"\n [disabled]=\"isReadonlyMode\"\n (onClick)=\"docGenButtonClickHandler(isCartRoute)\"\n ></p-button>\n\n <ng-container *vlLet=\"isSaveInProgress$ | async as isSaveInProgress\">\n <ng-container *vlLet=\"isSubmitInProgress$ | async as isSubmitInProgress\">\n <p-splitButton\n *ngIf=\"!isSaveInProgress && !isSubmitInProgress\"\n label=\"Save to Quote\"\n (onClick)=\"saveButtonClickHandler(isCartRoute)\"\n [model]=\"getSplitButtonActions(isCartRoute)\"\n [disabled]=\"isReadonlyMode\"\n styleClass=\"p-button-outlined\"\n >\n </p-splitButton>\n\n <p-button\n *ngIf=\"isSaveInProgress\"\n class=\"save-button\"\n styleClass=\"p-button\"\n label=\"Saving\"\n [loading]=\"true\"\n ></p-button>\n\n <p-button\n *ngIf=\"isSubmitInProgress\"\n class=\"submit-button\"\n styleClass=\"p-button\"\n label=\"Submitting\"\n [loading]=\"true\"\n ></p-button>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;align-items:center;height:48px;width:100%;background-color:var(--vl-primary-color);color:#fff;padding:0 32px;flex-shrink:0}::ng-deep .p-overlaypanel.flow-header-overlay .p-overlaypanel-content{background-color:#fff;padding:16px}::ng-deep .p-overlaypanel.flow-header-overlay.no-padding .p-overlaypanel-content{padding:0}::ng-deep .p-overlaypanel.flow-header-overlay.left:before{left:6px!important}::ng-deep .p-overlaypanel.flow-header-overlay.right:before{right:6px!important}::ng-deep .p-overlaypanel.flow-header-overlay.left .p-overlaypanel-content{margin-left:-16px}::ng-deep .p-overlaypanel.flow-header-overlay.right .p-overlaypanel-content{margin-right:-16px}::ng-deep .p-overlaypanel.flow-header-overlay:before{background-color:#fff}::ng-deep .p-overlaypanel.price-list-overlay .p-overlaypanel-content{border-radius:5px;border-color:var(--vl-border-color);padding:0;display:flex;flex-direction:column;max-height:140px;overflow:auto}:host ::ng-deep p-splitButton{height:32px;width:146px;display:flex}:host ::ng-deep p-splitButton .p-splitbutton{display:flex;font-size:12px;border-radius:2px;height:100%;width:100%;-webkit-backface-visibility:hidden}:host ::ng-deep p-splitButton .p-splitbutton .p-button:focus{box-shadow:none}:host ::ng-deep p-splitButton .p-splitbutton .p-splitbutton-defaultbutton{padding:7px 12px 7px 10px}:host ::ng-deep p-splitButton .p-splitbutton .p-splitbutton-defaultbutton:disabled{opacity:.2}:host ::ng-deep p-splitButton .p-splitbutton .p-splitbutton-menubutton:disabled{opacity:.3}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button{background-color:#fff;color:var(--vl-primary-color);border:1px solid #fff}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button:enabled:hover{background-color:var(--vl-secondary-nav-bg);color:var(--vl-primary-color);border:1px solid var(--vl-secondary-nav-bg);outline:none}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-menubutton{background-color:var(--vl-secondary-nav-bg);border-radius:0 2px 2px 0;border:1px solid var(--vl-secondary-nav-bg);border-left:none}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-menubutton:hover{background-color:var(--vl-secondary-nav-bg);border:1px solid var(--vl-secondary-nav-bg);border-left:none}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-defaultbutton{border-radius:2px 0 0 2px}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-defaultbutton .p-button-label{font-size:12px;line-height:16px;letter-spacing:.3px;white-space:nowrap}:host ::ng-deep p-splitButton .p-splitbutton .p-menu{display:flex;width:auto;margin-top:2px;border-radius:4px;border:1px solid var(--vl-border-color);box-shadow:0 4px 20px #2767c11a}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list{display:flex;flex-direction:column}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem{display:flex;width:100%;height:32px}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link{padding:8px;width:100%;height:100%}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link:not(.p-disabled):hover{background-color:var(--vl-secondary-nav-bg)}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text{color:var(--vl-primary-color)}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link .p-menuitem-text{line-height:16px;font-size:12px;letter-spacing:.3px;white-space:nowrap}:host ::ng-deep .doc-gen-button{height:32px;width:32px;display:inline-flex}:host ::ng-deep .doc-gen-button .p-button{border:1px solid #fff;border-radius:2px;width:100%;height:100%}:host ::ng-deep .doc-gen-button .p-button.p-component:disabled{opacity:.3}:host ::ng-deep .save-button,:host ::ng-deep .submit-button{height:32px;width:146px;display:flex}:host ::ng-deep .save-button .p-button,:host ::ng-deep .submit-button .p-button{border-radius:3px;width:100%;height:100%;background:rgba(255,255,255,.3);opacity:1;border:none}:host ::ng-deep .save-button .p-button .p-button-label,:host ::ng-deep .submit-button .p-button .p-button-label{font-size:12px;line-height:16px;letter-spacing:.3px;white-space:nowrap}.vl-icon{display:inline-block}.flow-info{flex-shrink:0;display:flex;grid-gap:8px;gap:8px;align-items:center}.flow-info .nav-popover-toggle{margin-left:-8px}.flow-info .nav-back{font-weight:bold}.flow-info .nav-item:not(.disabled):hover,.flow-info .nav-popover-toggle:not(.disabled):hover{opacity:.6}nav{display:flex;align-items:center;cursor:pointer;height:14px}nav.disabled{opacity:.6;cursor:default}nav .nav-icon{margin-right:10px}nav .icon-with-margin{margin:0 4px}nav a{color:#fff}nav.account-name{margin-left:4px;display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis}nav.nav-popover-toggle{width:24px;display:flex;justify-content:center}nav.nav-popover-toggle i{pointer-events:none;margin:0}nav i{pointer-events:none}.metrics__row{display:flex;justify-content:space-between;grid-gap:2px;gap:2px}.dot-separator:after{content:\"\";display:block;width:4px;height:4px;border-radius:50%;background:#fff}.slash-separator:after{content:\"\";display:block;background:#fff;width:1px;height:16px}.flow-header-overlay__wrapper{width:360px}.flow-header-overlay__wrapper .close-icon{cursor:pointer}.flow-header-overlay__wrapper .info-list{list-style:none;padding:0;font-size:12px}.flow-header-overlay__wrapper .info-list__row{padding:8px 0;display:flex;justify-content:space-between}.flow-header-overlay__wrapper .info-list__row a{text-align:right}.flow-header-overlay__title{display:flex;justify-content:space-between;align-items:center;margin:0 0 24px}.flow-navigation{flex-grow:1;display:flex;grid-gap:16px;gap:16px;justify-content:center;font-weight:600}.flow-navigation .cart-nav-container{display:flex}.flow-navigation .nav-popover-toggle{margin-left:-14px}.flow-navigation .nav-item,.flow-navigation .nav-popover-toggle{opacity:.6}.flow-navigation .nav-item.active,.flow-navigation .nav-item:not(.disabled):hover,.flow-navigation .nav-popover-toggle.active,.flow-navigation .nav-popover-toggle:not(.disabled):hover{opacity:1}.price-list-option{padding:8px;color:var(--vl-primary-color);cursor:pointer}.price-list-option.active,.price-list-option:hover{background:var(--vl-secondary-nav-bg)}.flow-controls{flex-shrink:0;display:flex;align-items:center;grid-gap:16px;gap:16px}\n"], components: [{ type: i3__namespace$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: CartPreviewComponent, selector: "vl-cart-preview", inputs: ["products"] }, { type: i2__namespace.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i9__namespace.SplitButton, selector: "p-splitButton", inputs: ["model", "icon", "iconPos", "label", "style", "styleClass", "menuStyle", "menuStyleClass", "disabled", "tabindex", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onClick", "onDropdownClick"] }], directives: [{ type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3__namespace.LetDirective, selector: "[vlLet]", inputs: ["vlLet"] }, { type: i12__namespace.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { type: i2__namespace$2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i5__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i5__namespace.AsyncPipe, "titlecase": i5__namespace.TitleCasePipe, "date": i5__namespace.DatePipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
1488
|
+
FlowHeaderComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderComponent, deps: [{ token: i1__namespace$2.ContextService }, { token: i1__namespace$2.QuoteDraftService }, { token: i2__namespace.QuoteApiService }, { token: i2__namespace.SalesforceApiService }, { token: i1__namespace$2.FlowConfigurationService }, { token: FlowRouterService }, { token: FlowDialogService }, { token: i1__namespace$1.IntegrationState }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
1489
|
+
FlowHeaderComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FlowHeaderComponent, selector: "vl-flow-header", ngImport: i0__namespace, template: "<ng-container *ngIf=\"contextProperties$ | async as contextProperties\">\n <ng-container *ngIf=\"objectDetails$ | async as details\">\n <div class=\"flow-info\">\n <nav class=\"nav-item nav-back\" (click)=\"back()\">\n <i class=\"nav-icon vl-icon vl-icon-arrow-left\"></i>\n\n <span> Back to {{ objectName$ | async | titlecase }}</span>\n </nav>\n\n <ng-container *ngIf=\"isAccountMode$ | async\">\n <span class=\"dot-separator\"></span>\n\n <nav class=\"account-name\" [pTooltip]=\"contextProperties.Name ?? ''\" tooltipPosition=\"bottom\" [showDelay]=\"1000\">\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(contextProperties.Id)\">{{ contextProperties.Name }}</a>\n </nav>\n </ng-container>\n\n <ng-container *ngIf=\"isQuoteMode$ | async\">\n <span class=\"dot-separator\"></span>\n\n <span>Quote #{{ details.quoteNumber }}</span>\n\n <span class=\"dot-separator\"></span>\n\n <nav class=\"nav-item\" (click)=\"quoteDetails.toggle($event)\">\n <span>{{ status$ | async }}</span>\n\n <i *ngIf=\"!quoteDetails.overlayVisible\" class=\"vl-icon vl-icon-chevron-down icon-with-margin\"></i>\n <i *ngIf=\"quoteDetails.overlayVisible\" class=\"vl-icon vl-icon-chevron-up icon-with-margin\"></i>\n </nav>\n\n <p-overlayPanel styleClass=\"navigation-settings-overlay flow-header-overlay center\" #quoteDetails>\n <ng-template pTemplate>\n <div class=\"flow-header-overlay__wrapper\">\n <h2 class=\"flow-header-overlay__title\">\n <span>Quote Information</span>\n <i class=\"vl-icon vl-icon-close close-icon\" (click)=\"quoteDetails.hide()\"></i>\n </h2>\n\n <ul class=\"info-list\">\n <li class=\"info-list__row\">\n <span>Account Name:</span>\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(details.accountId)\">\n <span>{{ details.accountName }}</span>\n </a>\n </li>\n <li class=\"info-list__row\">\n <span>Opportunity Name:</span>\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(details.opportunityId)\">\n <span>{{ details.opportunityName }}</span>\n </a>\n </li>\n <li class=\"info-list__row\">\n <span>Quote Name:</span>\n <a target=\"_blank\" [href]=\"getSalesforceObjectLink(details.quoteId)\">\n <span>{{ details.quoteName }}</span>\n </a>\n </li>\n </ul>\n </div>\n </ng-template>\n </p-overlayPanel>\n </ng-container>\n </div>\n\n <div class=\"flow-navigation\">\n <ng-container *vlLet=\"isReadonlyMode$ | async as isReadonlyMode\">\n <nav\n class=\"nav-item\"\n [ngClass]=\"{ active: (isCatalogRoute$ | async), disabled: isReadonlyMode }\"\n (click)=\"navigateToCatalog()\"\n >\n Catalog\n </nav>\n <nav class=\"nav-item disabled\" [ngClass]=\"{ active: isConfigurationRoute$ | async }\">Configurator</nav>\n <ng-container *vlLet=\"products$ | async as products\">\n <nav\n class=\"nav-item\"\n [ngClass]=\"{ active: (isCartRoute$ | async), disabled: isReadonlyMode }\"\n (click)=\"navigateToShoppingCart()\"\n >\n Shopping Cart ({{ products.length }})\n </nav>\n\n <nav\n class=\"nav-popover-toggle\"\n [ngClass]=\"{ active: (isCartRoute$ | async), disabled: isReadonlyMode }\"\n (click)=\"toggleCartOverlay(cart, $event)\"\n >\n <i *ngIf=\"!cart?.overlayPanel?.overlayVisible\" class=\"vl-icon vl-icon-chevron-down icon-with-margin\"></i>\n <i *ngIf=\"cart?.overlayPanel?.overlayVisible\" class=\"vl-icon vl-icon-chevron-up icon-with-margin\"></i>\n </nav>\n\n <vl-cart-preview #cart [products]=\"products\"></vl-cart-preview>\n </ng-container>\n </ng-container>\n </div>\n\n <div class=\"flow-controls\">\n <ng-container *ngIf=\"(isReadonlyMode$ | async) === false\">\n <ng-container *vlLet=\"activePriceList$ | async as priceList\">\n <div>\n <ng-container *vlLet=\"assetPriceLists$ | async as assetPriceLists\">\n <ng-container *ngIf=\"(isAccountMode$ | async) && assetPriceLists.length > 1; else singlePriceList\">\n <nav class=\"nav-item\" (click)=\"priceListsOverlay?.toggle($event)\">\n <span>{{ priceList?.name }}</span>\n <i\n *ngIf=\"!priceListsOverlay?.overlayVisible\"\n class=\"vl-icon vl-icon-chevron-down icon-with-margin\"\n ></i>\n <i *ngIf=\"priceListsOverlay?.overlayVisible\" class=\"vl-icon vl-icon-chevron-up icon-with-margin\"></i>\n </nav>\n\n <p-overlayPanel styleClass=\"price-list-overlay\" #priceListsOverlay>\n <ng-template pTemplate>\n <span\n *ngFor=\"let option of assetPriceLists\"\n class=\"price-list-option\"\n [class.active]=\"priceList?.id === option.id\"\n (click)=\"selectPriceList(option.id); priceListsOverlay.hide()\"\n >\n {{ option.name }}\n </span>\n </ng-template>\n </p-overlayPanel>\n </ng-container>\n </ng-container>\n\n <ng-template #singlePriceList>\n <div>{{ priceList?.name }}</div>\n </ng-template>\n\n <div *ngIf=\"contextProperties.StartDate\">{{ contextProperties.StartDate | date: 'MM.dd.yyyy' }}</div>\n </div>\n </ng-container>\n </ng-container>\n\n <vl-metrics></vl-metrics>\n\n <ng-container *vlLet=\"isCartRoute$ | async as isCartRoute\">\n <ng-container *vlLet=\"isReadonlyMode$ | async as isReadonlyMode\">\n <p-button\n class=\"doc-gen-button\"\n icon=\"vl-icon vl-icon-doc-gen\"\n [disabled]=\"isReadonlyMode\"\n (onClick)=\"docGenButtonClickHandler(isCartRoute)\"\n ></p-button>\n\n <ng-container *vlLet=\"isSaveInProgress$ | async as isSaveInProgress\">\n <ng-container *vlLet=\"isSubmitInProgress$ | async as isSubmitInProgress\">\n <p-splitButton\n *ngIf=\"!isSaveInProgress && !isSubmitInProgress\"\n label=\"Save to Quote\"\n (onClick)=\"saveButtonClickHandler(isCartRoute)\"\n [model]=\"getSplitButtonActions(isCartRoute)\"\n [disabled]=\"isReadonlyMode\"\n styleClass=\"p-button-outlined\"\n >\n </p-splitButton>\n\n <p-button\n *ngIf=\"isSaveInProgress\"\n class=\"save-button\"\n styleClass=\"p-button\"\n label=\"Saving\"\n [loading]=\"true\"\n ></p-button>\n\n <p-button\n *ngIf=\"isSubmitInProgress\"\n class=\"submit-button\"\n styleClass=\"p-button\"\n label=\"Submitting\"\n [loading]=\"true\"\n ></p-button>\n </ng-container>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </ng-container>\n</ng-container>\n", styles: [":host{display:flex;align-items:center;height:48px;width:100%;background-color:var(--vl-primary-color);color:#fff;padding:0 32px;flex-shrink:0}::ng-deep .p-overlaypanel.flow-header-overlay .p-overlaypanel-content{background-color:#fff;padding:16px}::ng-deep .p-overlaypanel.flow-header-overlay.no-padding .p-overlaypanel-content{padding:0}::ng-deep .p-overlaypanel.flow-header-overlay.left:before{left:6px!important}::ng-deep .p-overlaypanel.flow-header-overlay.right:before{right:6px!important}::ng-deep .p-overlaypanel.flow-header-overlay.left .p-overlaypanel-content{margin-left:-16px}::ng-deep .p-overlaypanel.flow-header-overlay.right .p-overlaypanel-content{margin-right:-16px}::ng-deep .p-overlaypanel.flow-header-overlay:before{background-color:#fff}::ng-deep .p-overlaypanel.price-list-overlay .p-overlaypanel-content{border-radius:5px;border-color:var(--vl-border-color);padding:0;display:flex;flex-direction:column;max-height:140px;overflow:auto}:host ::ng-deep p-splitButton{height:32px;width:146px;display:flex}:host ::ng-deep p-splitButton .p-splitbutton{display:flex;font-size:12px;border-radius:2px;height:100%;width:100%;-webkit-backface-visibility:hidden}:host ::ng-deep p-splitButton .p-splitbutton .p-button:focus{box-shadow:none}:host ::ng-deep p-splitButton .p-splitbutton .p-splitbutton-defaultbutton{padding:7px 12px 7px 10px}:host ::ng-deep p-splitButton .p-splitbutton .p-splitbutton-defaultbutton:disabled{opacity:.2}:host ::ng-deep p-splitButton .p-splitbutton .p-splitbutton-menubutton:disabled{opacity:.3}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button{background-color:#fff;color:var(--vl-primary-color);border:1px solid #fff}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button:enabled:hover{background-color:var(--vl-secondary-nav-bg);color:var(--vl-primary-color);border:1px solid var(--vl-secondary-nav-bg);outline:none}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-menubutton{background-color:var(--vl-secondary-nav-bg);border-radius:0 2px 2px 0;border:1px solid var(--vl-secondary-nav-bg);border-left:none}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-menubutton:hover{background-color:var(--vl-secondary-nav-bg);border:1px solid var(--vl-secondary-nav-bg);border-left:none}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-defaultbutton{border-radius:2px 0 0 2px}:host ::ng-deep p-splitButton .p-splitbutton.p-button-outlined .p-button.p-splitbutton-defaultbutton .p-button-label{font-size:12px;line-height:16px;letter-spacing:.3px;white-space:nowrap}:host ::ng-deep p-splitButton .p-splitbutton .p-menu{display:flex;width:auto;margin-top:2px;border-radius:4px;border:1px solid var(--vl-border-color);box-shadow:0 4px 20px #2767c11a}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list{display:flex;flex-direction:column}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem{display:flex;width:100%;height:32px}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link{padding:8px;width:100%;height:100%}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link:not(.p-disabled):hover{background-color:var(--vl-secondary-nav-bg)}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link:not(.p-disabled):hover .p-menuitem-text{color:var(--vl-primary-color)}:host ::ng-deep p-splitButton .p-splitbutton .p-menu .p-menu-list .p-menuitem .p-menuitem-link .p-menuitem-text{line-height:16px;font-size:12px;letter-spacing:.3px;white-space:nowrap}:host ::ng-deep .doc-gen-button{height:32px;width:32px;display:inline-flex}:host ::ng-deep .doc-gen-button .p-button{border:1px solid #fff;border-radius:2px;width:100%;height:100%}:host ::ng-deep .doc-gen-button .p-button.p-component:disabled{opacity:.3}:host ::ng-deep .save-button,:host ::ng-deep .submit-button{height:32px;width:146px;display:flex}:host ::ng-deep .save-button .p-button,:host ::ng-deep .submit-button .p-button{border-radius:3px;width:100%;height:100%;background:rgba(255,255,255,.3);opacity:1;border:none}:host ::ng-deep .save-button .p-button .p-button-label,:host ::ng-deep .submit-button .p-button .p-button-label{font-size:12px;line-height:16px;letter-spacing:.3px;white-space:nowrap}.vl-icon{display:inline-block}.flow-info{flex-shrink:0;display:flex;grid-gap:8px;gap:8px;align-items:center}.flow-info .nav-popover-toggle{margin-left:-8px}.flow-info .nav-back{font-weight:bold}.flow-info .nav-item:not(.disabled):hover,.flow-info .nav-popover-toggle:not(.disabled):hover{opacity:.6}nav{display:flex;align-items:center;cursor:pointer;height:14px}nav.disabled{opacity:.6;cursor:default}nav .nav-icon{margin-right:10px}nav .icon-with-margin{margin:0 4px}nav a{color:#fff}nav.account-name{margin-left:4px;display:block;max-width:200px;overflow:hidden;text-overflow:ellipsis}nav.nav-popover-toggle{width:24px;display:flex;justify-content:center}nav.nav-popover-toggle i{pointer-events:none;margin:0}nav i{pointer-events:none}.metrics__row{display:flex;justify-content:space-between;grid-gap:2px;gap:2px}.dot-separator:after{content:\"\";display:block;width:4px;height:4px;border-radius:50%;background:#fff}.slash-separator:after{content:\"\";display:block;background:#fff;width:1px;height:16px}.flow-header-overlay__wrapper{width:360px}.flow-header-overlay__wrapper .close-icon{cursor:pointer}.flow-header-overlay__wrapper .info-list{list-style:none;padding:0;font-size:12px}.flow-header-overlay__wrapper .info-list__row{padding:8px 0;display:flex;justify-content:space-between}.flow-header-overlay__wrapper .info-list__row a{text-align:right}.flow-header-overlay__title{display:flex;justify-content:space-between;align-items:center;margin:0 0 24px}.flow-navigation{flex-grow:1;display:flex;grid-gap:16px;gap:16px;justify-content:center;font-weight:600}.flow-navigation .cart-nav-container{display:flex}.flow-navigation .nav-popover-toggle{margin-left:-14px}.flow-navigation .nav-item,.flow-navigation .nav-popover-toggle{opacity:.6}.flow-navigation .nav-item.active,.flow-navigation .nav-item:not(.disabled):hover,.flow-navigation .nav-popover-toggle.active,.flow-navigation .nav-popover-toggle:not(.disabled):hover{opacity:1}.price-list-option{padding:8px;color:var(--vl-primary-color);cursor:pointer}.price-list-option.active,.price-list-option:hover{background:var(--vl-secondary-nav-bg)}.flow-controls{flex-shrink:0;display:flex;align-items:center;grid-gap:16px;gap:16px;font-size:12px;line-height:16px}\n"], components: [{ type: i3__namespace$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: CartPreviewComponent, selector: "vl-cart-preview", inputs: ["products"] }, { type: MetricsComponent, selector: "vl-metrics" }, { type: i5__namespace.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i10__namespace$1.SplitButton, selector: "p-splitButton", inputs: ["model", "icon", "iconPos", "label", "style", "styleClass", "menuStyle", "menuStyleClass", "disabled", "tabindex", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onClick", "onDropdownClick"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i12__namespace$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { type: i2__namespace$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i3__namespace.LetDirective, selector: "[vlLet]", inputs: ["vlLet"] }, { type: i5__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i5__namespace$1.AsyncPipe, "titlecase": i5__namespace$1.TitleCasePipe, "date": i5__namespace$1.DatePipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
1276
1490
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderComponent, decorators: [{
|
1277
1491
|
type: i0.Component,
|
1278
1492
|
args: [{
|
@@ -1281,7 +1495,61 @@
|
|
1281
1495
|
styleUrls: ['./header.component.scss'],
|
1282
1496
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
1283
1497
|
}]
|
1284
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
1498
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$2.ContextService }, { type: i1__namespace$2.QuoteDraftService }, { type: i2__namespace.QuoteApiService }, { type: i2__namespace.SalesforceApiService }, { type: i1__namespace$2.FlowConfigurationService }, { type: FlowRouterService }, { type: FlowDialogService }, { type: i1__namespace$1.IntegrationState }]; } });
|
1499
|
+
|
1500
|
+
var MetricsModule = /** @class */ (function () {
|
1501
|
+
function MetricsModule() {
|
1502
|
+
}
|
1503
|
+
return MetricsModule;
|
1504
|
+
}());
|
1505
|
+
MetricsModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: MetricsModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
1506
|
+
MetricsModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: MetricsModule, declarations: [MetricsComponent], imports: [i5$1.CommonModule,
|
1507
|
+
i10.FormsModule,
|
1508
|
+
i10.ReactiveFormsModule,
|
1509
|
+
i12.DragDropModule,
|
1510
|
+
i5.ButtonModule,
|
1511
|
+
i3$1.OverlayPanelModule,
|
1512
|
+
i4$1.SidebarModule,
|
1513
|
+
i11.InputTextModule,
|
1514
|
+
i6$1.CheckboxModule,
|
1515
|
+
i3.LetDirectiveModule,
|
1516
|
+
i4.VirtualScrollerModule,
|
1517
|
+
i3.ErrorTooltipModule], exports: [MetricsComponent] });
|
1518
|
+
MetricsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: MetricsModule, imports: [[
|
1519
|
+
i5$1.CommonModule,
|
1520
|
+
i10.FormsModule,
|
1521
|
+
i10.ReactiveFormsModule,
|
1522
|
+
i12.DragDropModule,
|
1523
|
+
i5.ButtonModule,
|
1524
|
+
i3$1.OverlayPanelModule,
|
1525
|
+
i4$1.SidebarModule,
|
1526
|
+
i11.InputTextModule,
|
1527
|
+
i6$1.CheckboxModule,
|
1528
|
+
i3.LetDirectiveModule,
|
1529
|
+
i4.VirtualScrollerModule,
|
1530
|
+
i3.ErrorTooltipModule,
|
1531
|
+
]] });
|
1532
|
+
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: MetricsModule, decorators: [{
|
1533
|
+
type: i0.NgModule,
|
1534
|
+
args: [{
|
1535
|
+
declarations: [MetricsComponent],
|
1536
|
+
imports: [
|
1537
|
+
i5$1.CommonModule,
|
1538
|
+
i10.FormsModule,
|
1539
|
+
i10.ReactiveFormsModule,
|
1540
|
+
i12.DragDropModule,
|
1541
|
+
i5.ButtonModule,
|
1542
|
+
i3$1.OverlayPanelModule,
|
1543
|
+
i4$1.SidebarModule,
|
1544
|
+
i11.InputTextModule,
|
1545
|
+
i6$1.CheckboxModule,
|
1546
|
+
i3.LetDirectiveModule,
|
1547
|
+
i4.VirtualScrollerModule,
|
1548
|
+
i3.ErrorTooltipModule,
|
1549
|
+
],
|
1550
|
+
exports: [MetricsComponent],
|
1551
|
+
}]
|
1552
|
+
}] });
|
1285
1553
|
|
1286
1554
|
var FlowHeaderModule = /** @class */ (function () {
|
1287
1555
|
function FlowHeaderModule() {
|
@@ -1289,34 +1557,37 @@
|
|
1289
1557
|
return FlowHeaderModule;
|
1290
1558
|
}());
|
1291
1559
|
FlowHeaderModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
1292
|
-
FlowHeaderModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderModule, declarations: [FlowHeaderComponent], imports: [i5.CommonModule,
|
1560
|
+
FlowHeaderModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderModule, declarations: [FlowHeaderComponent], imports: [i5$1.CommonModule,
|
1293
1561
|
i3$1.OverlayPanelModule,
|
1294
1562
|
i3.LetDirectiveModule,
|
1295
|
-
i12.TooltipModule,
|
1296
|
-
|
1563
|
+
i12$1.TooltipModule,
|
1564
|
+
i5.ButtonModule,
|
1297
1565
|
CartPreviewModule,
|
1298
|
-
|
1566
|
+
i10$1.SplitButtonModule,
|
1567
|
+
MetricsModule], exports: [FlowHeaderComponent] });
|
1299
1568
|
FlowHeaderModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderModule, imports: [[
|
1300
|
-
i5.CommonModule,
|
1569
|
+
i5$1.CommonModule,
|
1301
1570
|
i3$1.OverlayPanelModule,
|
1302
1571
|
i3.LetDirectiveModule,
|
1303
|
-
i12.TooltipModule,
|
1304
|
-
|
1572
|
+
i12$1.TooltipModule,
|
1573
|
+
i5.ButtonModule,
|
1305
1574
|
CartPreviewModule,
|
1306
|
-
|
1575
|
+
i10$1.SplitButtonModule,
|
1576
|
+
MetricsModule,
|
1307
1577
|
]] });
|
1308
1578
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowHeaderModule, decorators: [{
|
1309
1579
|
type: i0.NgModule,
|
1310
1580
|
args: [{
|
1311
1581
|
declarations: [FlowHeaderComponent],
|
1312
1582
|
imports: [
|
1313
|
-
i5.CommonModule,
|
1583
|
+
i5$1.CommonModule,
|
1314
1584
|
i3$1.OverlayPanelModule,
|
1315
1585
|
i3.LetDirectiveModule,
|
1316
|
-
i12.TooltipModule,
|
1317
|
-
|
1586
|
+
i12$1.TooltipModule,
|
1587
|
+
i5.ButtonModule,
|
1318
1588
|
CartPreviewModule,
|
1319
|
-
|
1589
|
+
i10$1.SplitButtonModule,
|
1590
|
+
MetricsModule,
|
1320
1591
|
],
|
1321
1592
|
exports: [FlowHeaderComponent],
|
1322
1593
|
}]
|
@@ -1334,7 +1605,7 @@
|
|
1334
1605
|
FlowService.prototype.initSubscriptions = function () {
|
1335
1606
|
var _this = this;
|
1336
1607
|
this.integrationState
|
1337
|
-
.listen$(
|
1608
|
+
.listen$(i1$1.FlowAction.FLOW_CONFIGURE_PRODUCT)
|
1338
1609
|
.pipe(rxjs.tap(function (payload) {
|
1339
1610
|
var _a, _b;
|
1340
1611
|
var productId = (_a = payload.productId) !== null && _a !== void 0 ? _a : (_b = _this.quoteDraftService.currentState.find(function (li) { return li.id === payload.lineItemId; })) === null || _b === void 0 ? void 0 : _b.productId;
|
@@ -1347,15 +1618,21 @@
|
|
1347
1618
|
}), rxjs.takeUntil(this.cleanup$))
|
1348
1619
|
.subscribe();
|
1349
1620
|
this.integrationState
|
1350
|
-
.listen$(
|
1621
|
+
.listen$(i1$1.FlowAction.FLOW_SWITCH_OBJECT)
|
1622
|
+
.pipe(rxjs.tap(function (payload) {
|
1623
|
+
_this.flowRouterService.switchObject(payload.id);
|
1624
|
+
}), rxjs.takeUntil(this.cleanup$))
|
1625
|
+
.subscribe();
|
1626
|
+
this.integrationState
|
1627
|
+
.listen$(i1$1.FlowAction.FLOW_NAVIGATE_BACK)
|
1351
1628
|
.pipe(rxjs.tap(function () { return _this.flowRouterService.navigateBack(); }), rxjs.takeUntil(this.cleanup$))
|
1352
1629
|
.subscribe();
|
1353
1630
|
this.integrationState
|
1354
|
-
.listen$(
|
1631
|
+
.listen$(i1$1.FlowAction.FLOW_NAVIGATE_TO_CATALOG)
|
1355
1632
|
.pipe(rxjs.tap(function () { return _this.flowRouterService.navigateToCatalog(); }), rxjs.takeUntil(this.cleanup$))
|
1356
1633
|
.subscribe();
|
1357
1634
|
this.integrationState
|
1358
|
-
.listen$(
|
1635
|
+
.listen$(i1$1.FlowAction.FLOW_APPLY_PRODUCT_CONFIGURATION)
|
1359
1636
|
.pipe(rxjs.switchMap(function () {
|
1360
1637
|
var quoteDraft = _this.quoteDraftService.quoteDraft;
|
1361
1638
|
var lineItem = _this.configurationService.getSnapshot();
|
@@ -1382,11 +1659,11 @@
|
|
1382
1659
|
};
|
1383
1660
|
return FlowService;
|
1384
1661
|
}());
|
1385
|
-
FlowService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowService, deps: [{ token:
|
1662
|
+
FlowService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowService, deps: [{ token: i1__namespace$1.IntegrationState }, { token: FlowRouterService }, { token: i1__namespace$2.QuoteDraftService }, { token: i1__namespace$2.ConfigurationService }, { token: i1__namespace$2.FlowConfigurationService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
1386
1663
|
FlowService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowService });
|
1387
1664
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowService, decorators: [{
|
1388
1665
|
type: i0.Injectable
|
1389
|
-
}], ctorParameters: function () { return [{ type:
|
1666
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$1.IntegrationState }, { type: FlowRouterService }, { type: i1__namespace$2.QuoteDraftService }, { type: i1__namespace$2.ConfigurationService }, { type: i1__namespace$2.FlowConfigurationService }]; } });
|
1390
1667
|
|
1391
1668
|
var FlowComponent = /** @class */ (function () {
|
1392
1669
|
function FlowComponent(routerService, quoteDraftService, flowService, docGenService, integrationState) {
|
@@ -1410,8 +1687,8 @@
|
|
1410
1687
|
};
|
1411
1688
|
return FlowComponent;
|
1412
1689
|
}());
|
1413
|
-
FlowComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowComponent, deps: [{ token: FlowRouterService }, { token: i1__namespace$
|
1414
|
-
FlowComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FlowComponent, selector: "vl-flow", ngImport: i0__namespace, template: "<vl-flow-header *ngIf=\"showHeader$ | async\"></vl-flow-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n</div>\n\n<ng-container *vlLet=\"isStandalone$ | async as isStandalone\">\n <vl-flow-doc-gen *ngIf=\"!isStandalone\"></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;left:0;right:0;top:0;bottom:0;background-color:#ffffff80;z-index:4}\n"], components: [{ type: FlowHeaderComponent, selector: "vl-flow-header" }, { type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: DocGenComponent, selector: "vl-flow-doc-gen" }], directives: [{ type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace$
|
1690
|
+
FlowComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowComponent, deps: [{ token: FlowRouterService }, { token: i1__namespace$2.QuoteDraftService }, { token: FlowService }, { token: FlowDocGenService }, { token: i1__namespace$1.IntegrationState }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
1691
|
+
FlowComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: FlowComponent, selector: "vl-flow", ngImport: i0__namespace, template: "<vl-flow-header *ngIf=\"showHeader$ | async\"></vl-flow-header>\n\n<div class=\"flow-content\">\n <div class=\"loading-overlay\" *ngIf=\"isLoading$ | async\">\n <vl-loader label=\"LOADING\"></vl-loader>\n </div>\n\n <router-outlet></router-outlet>\n</div>\n\n<ng-container *vlLet=\"isStandalone$ | async as isStandalone\">\n <vl-flow-doc-gen *ngIf=\"!isStandalone\"></vl-flow-doc-gen>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;height:100%}.flow-content{flex-grow:1;position:relative;overflow:hidden}.loading-overlay{position:absolute;height:100%;width:100%;left:0;right:0;top:0;bottom:0;background-color:#ffffff80;z-index:4}\n"], components: [{ type: FlowHeaderComponent, selector: "vl-flow-header" }, { type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: DocGenComponent, selector: "vl-flow-doc-gen" }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace$3.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate"], exportAs: ["outlet"] }, { type: i3__namespace.LetDirective, selector: "[vlLet]", inputs: ["vlLet"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
1415
1692
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowComponent, decorators: [{
|
1416
1693
|
type: i0.Component,
|
1417
1694
|
args: [{
|
@@ -1420,7 +1697,7 @@
|
|
1420
1697
|
styleUrls: ['./flow.component.scss'],
|
1421
1698
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
1422
1699
|
}]
|
1423
|
-
}], ctorParameters: function () { return [{ type: FlowRouterService }, { type: i1__namespace$
|
1700
|
+
}], ctorParameters: function () { return [{ type: FlowRouterService }, { type: i1__namespace$2.QuoteDraftService }, { type: FlowService }, { type: FlowDocGenService }, { type: i1__namespace$1.IntegrationState }]; } });
|
1424
1701
|
|
1425
1702
|
var getFlowObjectIdPropertyName = function (id) {
|
1426
1703
|
var objectName = core.SalesforceIdUtils.getSfObjectNameById(id);
|
@@ -1518,11 +1795,11 @@
|
|
1518
1795
|
};
|
1519
1796
|
return ContextGuard;
|
1520
1797
|
}());
|
1521
|
-
ContextGuard.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ContextGuard, deps: [{ token: i1__namespace$
|
1798
|
+
ContextGuard.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ContextGuard, deps: [{ token: i1__namespace$3.Router }, { token: FlowRouterService }, { token: i1__namespace$2.ContextService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
1522
1799
|
ContextGuard.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ContextGuard });
|
1523
1800
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ContextGuard, decorators: [{
|
1524
1801
|
type: i0.Injectable
|
1525
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
1802
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: FlowRouterService }, { type: i1__namespace$2.ContextService }]; } });
|
1526
1803
|
|
1527
1804
|
var ProductUnloadGuard = /** @class */ (function () {
|
1528
1805
|
function ProductUnloadGuard(router, contextService, quoteDraftService, configurationService, flowDialogService) {
|
@@ -1557,11 +1834,11 @@
|
|
1557
1834
|
};
|
1558
1835
|
return ProductUnloadGuard;
|
1559
1836
|
}());
|
1560
|
-
ProductUnloadGuard.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductUnloadGuard, deps: [{ token: i1__namespace$
|
1837
|
+
ProductUnloadGuard.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductUnloadGuard, deps: [{ token: i1__namespace$3.Router }, { token: i1__namespace$2.ContextService }, { token: i1__namespace$2.QuoteDraftService }, { token: i1__namespace$2.ConfigurationService }, { token: FlowDialogService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
1561
1838
|
ProductUnloadGuard.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductUnloadGuard });
|
1562
1839
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductUnloadGuard, decorators: [{
|
1563
1840
|
type: i0.Injectable
|
1564
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
1841
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: i1__namespace$2.ContextService }, { type: i1__namespace$2.QuoteDraftService }, { type: i1__namespace$2.ConfigurationService }, { type: FlowDialogService }]; } });
|
1565
1842
|
|
1566
1843
|
var RootGuard = /** @class */ (function () {
|
1567
1844
|
function RootGuard(router, routerService) {
|
@@ -1595,12 +1872,12 @@
|
|
1595
1872
|
};
|
1596
1873
|
return RootGuard;
|
1597
1874
|
}());
|
1598
|
-
RootGuard.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RootGuard, deps: [{ token: i1__namespace$
|
1875
|
+
RootGuard.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RootGuard, deps: [{ token: i1__namespace$3.Router }, { token: FlowRouterService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
1599
1876
|
RootGuard.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RootGuard, providedIn: 'root' });
|
1600
1877
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RootGuard, decorators: [{
|
1601
1878
|
type: i0.Injectable,
|
1602
1879
|
args: [{ providedIn: 'root' }]
|
1603
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
1880
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: FlowRouterService }]; } });
|
1604
1881
|
|
1605
1882
|
var FLOW_CUSTOMIZATION = new i0.InjectionToken('FLOW_CUSTOMIZATION');
|
1606
1883
|
|
@@ -1697,8 +1974,8 @@
|
|
1697
1974
|
};
|
1698
1975
|
return CatalogComponent;
|
1699
1976
|
}());
|
1700
|
-
CatalogComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogComponent, deps: [{ token: i2__namespace
|
1701
|
-
CatalogComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CatalogComponent, selector: "vl-flow-catalog", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type:
|
1977
|
+
CatalogComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogComponent, deps: [{ token: i2__namespace.UITemplatesApiService }, { token: i1__namespace$2.ContextService }, { token: i0__namespace.ChangeDetectorRef }, { token: i3__namespace.ToastService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
1978
|
+
CatalogComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CatalogComponent, selector: "vl-flow-catalog", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i1__namespace$1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
1702
1979
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogComponent, decorators: [{
|
1703
1980
|
type: i0.Component,
|
1704
1981
|
args: [{
|
@@ -1708,7 +1985,7 @@
|
|
1708
1985
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
1709
1986
|
}]
|
1710
1987
|
}], ctorParameters: function () {
|
1711
|
-
return [{ type: i2__namespace
|
1988
|
+
return [{ type: i2__namespace.UITemplatesApiService }, { type: i1__namespace$2.ContextService }, { type: i0__namespace.ChangeDetectorRef }, { type: i3__namespace.ToastService }, { type: undefined, decorators: [{
|
1712
1989
|
type: i0.Optional
|
1713
1990
|
}, {
|
1714
1991
|
type: i0.Inject,
|
@@ -1722,13 +1999,13 @@
|
|
1722
1999
|
return CatalogModule;
|
1723
2000
|
}());
|
1724
2001
|
CatalogModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
1725
|
-
CatalogModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogModule, declarations: [CatalogComponent], imports: [i5.CommonModule,
|
1726
|
-
CatalogModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogModule, imports: [[i5.CommonModule,
|
2002
|
+
CatalogModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogModule, declarations: [CatalogComponent], imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule], exports: [CatalogComponent] });
|
2003
|
+
CatalogModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogModule, imports: [[i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule]] });
|
1727
2004
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: CatalogModule, decorators: [{
|
1728
2005
|
type: i0.NgModule,
|
1729
2006
|
args: [{
|
1730
2007
|
declarations: [CatalogComponent],
|
1731
|
-
imports: [i5.CommonModule,
|
2008
|
+
imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule],
|
1732
2009
|
exports: [CatalogComponent],
|
1733
2010
|
}]
|
1734
2011
|
}] });
|
@@ -1740,8 +2017,8 @@
|
|
1740
2017
|
this.activatedRoute = activatedRoute;
|
1741
2018
|
this.context = context;
|
1742
2019
|
this.quoteDraftService = quoteDraftService;
|
1743
|
-
this.form = new
|
1744
|
-
id: new
|
2020
|
+
this.form = new i10.FormGroup({
|
2021
|
+
id: new i10.FormControl(''),
|
1745
2022
|
});
|
1746
2023
|
this.flows$ = this.flowsApiService.fetchFlows().pipe(rxjs.map(function (flows) { return flows.map(function (flow) {
|
1747
2024
|
var _a, _b, _c;
|
@@ -1771,8 +2048,8 @@
|
|
1771
2048
|
};
|
1772
2049
|
return DebugComponent;
|
1773
2050
|
}());
|
1774
|
-
DebugComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugComponent, deps: [{ token: i2__namespace
|
1775
|
-
DebugComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: DebugComponent, selector: "vl-flow-debug", ngImport: i0__namespace, template: "<form [formGroup]=\"form\">\n <div class=\"fields-container\">\n <div class=\"field\">\n <label>SF Object ID</label>\n <input formControlName=\"id\" pInputText type=\"text\" />\n </div>\n </div>\n\n <p-button\n styleClass=\"p-button-primary\"\n label=\"Run Flow\"\n [disabled]=\"!form.value.id || !selectedFlow\"\n (onClick)=\"runFlow()\"\n ></p-button>\n</form>\n\n<table>\n <thead>\n <tr>\n <th [width]=\"30\"></th>\n <th [width]=\"160\">ID</th>\n <th [width]=\"160\">Entry Path</th>\n <th>QueryParams</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let flow of flows$ | async\" (click)=\"selectedFlow = flow\">\n <td><p-radioButton [inputId]=\"flow.id\" name=\"flow\" [value]=\"flow\" [(ngModel)]=\"selectedFlow\"></p-radioButton></td>\n <td>{{ flow.id }}</td>\n <td>{{ flow.entryPath }}</td>\n <td>{{ flow.queryParamsStr }}</td>\n </tr>\n </tbody>\n</table>\n", styles: [":host{display:block;padding:24px 54px}form{display:flex;align-items:center;justify-content:space-between}.fields-container{display:flex;grid-gap:24px;gap:24px}.field{display:flex;flex-direction:column;width:200px;flex-shrink:0}:host ::ng-deep .p-dropdown{width:100%}table{width:100%;border-collapse:collapse}tr{cursor:pointer}tr:hover{background-color:#f0f5fa}th{text-align:left;font-weight:600}th,td{padding:0 10px;height:30px;border-bottom:1px solid var(--vl-border-color);margin-right:16px}\n"], components: [{ type:
|
2051
|
+
DebugComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugComponent, deps: [{ token: i2__namespace.FlowsApiService }, { token: i1__namespace$3.Router }, { token: i1__namespace$3.ActivatedRoute }, { token: i1__namespace$2.ContextService }, { token: i1__namespace$2.QuoteDraftService }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
2052
|
+
DebugComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: DebugComponent, selector: "vl-flow-debug", ngImport: i0__namespace, template: "<form [formGroup]=\"form\">\n <div class=\"fields-container\">\n <div class=\"field\">\n <label>SF Object ID</label>\n <input formControlName=\"id\" pInputText type=\"text\" />\n </div>\n </div>\n\n <p-button\n styleClass=\"p-button-primary\"\n label=\"Run Flow\"\n [disabled]=\"!form.value.id || !selectedFlow\"\n (onClick)=\"runFlow()\"\n ></p-button>\n</form>\n\n<table>\n <thead>\n <tr>\n <th [width]=\"30\"></th>\n <th [width]=\"160\">ID</th>\n <th [width]=\"160\">Entry Path</th>\n <th>QueryParams</th>\n </tr>\n </thead>\n <tbody>\n <tr *ngFor=\"let flow of flows$ | async\" (click)=\"selectedFlow = flow\">\n <td><p-radioButton [inputId]=\"flow.id\" name=\"flow\" [value]=\"flow\" [(ngModel)]=\"selectedFlow\"></p-radioButton></td>\n <td>{{ flow.id }}</td>\n <td>{{ flow.entryPath }}</td>\n <td>{{ flow.queryParamsStr }}</td>\n </tr>\n </tbody>\n</table>\n", styles: [":host{display:block;padding:24px 54px}form{display:flex;align-items:center;justify-content:space-between}.fields-container{display:flex;grid-gap:24px;gap:24px}.field{display:flex;flex-direction:column;width:200px;flex-shrink:0}:host ::ng-deep .p-dropdown{width:100%}table{width:100%;border-collapse:collapse}tr{cursor:pointer}tr:hover{background-color:#f0f5fa}th{text-align:left;font-weight:600}th,td{padding:0 10px;height:30px;border-bottom:1px solid var(--vl-border-color);margin-right:16px}\n"], components: [{ type: i5__namespace.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i5__namespace$2.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass"], outputs: ["onClick", "onFocus", "onBlur"] }], directives: [{ type: i10__namespace.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i10__namespace.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i10__namespace.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i10__namespace.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: i10__namespace.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10__namespace.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i11__namespace.InputText, selector: "[pInputText]" }, { type: i5__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10__namespace.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
1776
2053
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugComponent, decorators: [{
|
1777
2054
|
type: i0.Component,
|
1778
2055
|
args: [{
|
@@ -1781,7 +2058,7 @@
|
|
1781
2058
|
styleUrls: ['./debug.component.scss'],
|
1782
2059
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
1783
2060
|
}]
|
1784
|
-
}], ctorParameters: function () { return [{ type: i2__namespace
|
2061
|
+
}], ctorParameters: function () { return [{ type: i2__namespace.FlowsApiService }, { type: i1__namespace$3.Router }, { type: i1__namespace$3.ActivatedRoute }, { type: i1__namespace$2.ContextService }, { type: i1__namespace$2.QuoteDraftService }]; } });
|
1785
2062
|
|
1786
2063
|
var routes$1 = [{ path: '', component: DebugComponent }];
|
1787
2064
|
var DebugModule = /** @class */ (function () {
|
@@ -1790,20 +2067,20 @@
|
|
1790
2067
|
return DebugModule;
|
1791
2068
|
}());
|
1792
2069
|
DebugModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
1793
|
-
DebugModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugModule, declarations: [DebugComponent], imports: [i5.CommonModule,
|
1794
|
-
|
1795
|
-
|
1796
|
-
|
1797
|
-
|
2070
|
+
DebugModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugModule, declarations: [DebugComponent], imports: [i5$1.CommonModule,
|
2071
|
+
i10.FormsModule,
|
2072
|
+
i10.ReactiveFormsModule, i1__namespace$3.RouterModule, i5$2.RadioButtonModule,
|
2073
|
+
i5.ButtonModule,
|
2074
|
+
i11.InputTextModule,
|
1798
2075
|
dropdown.DropdownModule] });
|
1799
2076
|
DebugModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugModule, imports: [[
|
1800
|
-
i5.CommonModule,
|
1801
|
-
|
1802
|
-
|
1803
|
-
i1$
|
1804
|
-
i5$
|
1805
|
-
|
1806
|
-
|
2077
|
+
i5$1.CommonModule,
|
2078
|
+
i10.FormsModule,
|
2079
|
+
i10.ReactiveFormsModule,
|
2080
|
+
i1$3.RouterModule.forChild(routes$1),
|
2081
|
+
i5$2.RadioButtonModule,
|
2082
|
+
i5.ButtonModule,
|
2083
|
+
i11.InputTextModule,
|
1807
2084
|
dropdown.DropdownModule,
|
1808
2085
|
]] });
|
1809
2086
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: DebugModule, decorators: [{
|
@@ -1811,13 +2088,13 @@
|
|
1811
2088
|
args: [{
|
1812
2089
|
declarations: [DebugComponent],
|
1813
2090
|
imports: [
|
1814
|
-
i5.CommonModule,
|
1815
|
-
|
1816
|
-
|
1817
|
-
i1$
|
1818
|
-
i5$
|
1819
|
-
|
1820
|
-
|
2091
|
+
i5$1.CommonModule,
|
2092
|
+
i10.FormsModule,
|
2093
|
+
i10.ReactiveFormsModule,
|
2094
|
+
i1$3.RouterModule.forChild(routes$1),
|
2095
|
+
i5$2.RadioButtonModule,
|
2096
|
+
i5.ButtonModule,
|
2097
|
+
i11.InputTextModule,
|
1821
2098
|
dropdown.DropdownModule,
|
1822
2099
|
],
|
1823
2100
|
}]
|
@@ -1846,13 +2123,13 @@
|
|
1846
2123
|
return EmptyAccountModule;
|
1847
2124
|
}());
|
1848
2125
|
EmptyAccountModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: EmptyAccountModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
1849
|
-
EmptyAccountModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: EmptyAccountModule, declarations: [EmptyAccountComponent], imports: [i5.CommonModule,
|
1850
|
-
EmptyAccountModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: EmptyAccountModule, imports: [[i5.CommonModule,
|
2126
|
+
EmptyAccountModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: EmptyAccountModule, declarations: [EmptyAccountComponent], imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule, i3.EmptyStateModule], exports: [EmptyAccountComponent] });
|
2127
|
+
EmptyAccountModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: EmptyAccountModule, imports: [[i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule, i3.EmptyStateModule]] });
|
1851
2128
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: EmptyAccountModule, decorators: [{
|
1852
2129
|
type: i0.NgModule,
|
1853
2130
|
args: [{
|
1854
2131
|
declarations: [EmptyAccountComponent],
|
1855
|
-
imports: [i5.CommonModule,
|
2132
|
+
imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule, i3.EmptyStateModule],
|
1856
2133
|
exports: [EmptyAccountComponent],
|
1857
2134
|
}]
|
1858
2135
|
}] });
|
@@ -1927,12 +2204,12 @@
|
|
1927
2204
|
.find(function (id) { return id; });
|
1928
2205
|
};
|
1929
2206
|
LegacyProductComponent.prototype.configure = function (productId) {
|
1930
|
-
var runtimeContext = this.getRuntimeContext(productId, '', i1$
|
2207
|
+
var runtimeContext = this.getRuntimeContext(productId, '', i1$2.RuntimeOperation.INIT);
|
1931
2208
|
this.startRuntime({}, runtimeContext);
|
1932
2209
|
};
|
1933
2210
|
LegacyProductComponent.prototype.reConfigure = function (lineItemId, currentState) {
|
1934
2211
|
var currentStateItem = core.EntityUtil.findById(lineItemId, currentState);
|
1935
|
-
var runtimeContext = this.getRuntimeContext(currentStateItem.productId, currentStateItem.offeringId, i1$
|
2212
|
+
var runtimeContext = this.getRuntimeContext(currentStateItem.productId, currentStateItem.offeringId, i1$2.RuntimeOperation.UPDATE);
|
1936
2213
|
var states = {
|
1937
2214
|
configurableRamp: currentStateItem,
|
1938
2215
|
currentState: currentState,
|
@@ -1962,13 +2239,13 @@
|
|
1962
2239
|
LegacyProductComponent.prototype.getRuntimeContext = function (productId, offeringId, runtimeOperation) {
|
1963
2240
|
var _this = this;
|
1964
2241
|
return this.runtimeContextService.getRuntimeContext(productId, offeringId).pipe(operators.map(function (runtimeContext) {
|
1965
|
-
runtimeContext.invocationContext = { runtimeOperation: i1$
|
2242
|
+
runtimeContext.invocationContext = { runtimeOperation: i1$2.RuntimeOperation[runtimeOperation] };
|
1966
2243
|
return runtimeContext;
|
1967
2244
|
}), operators.switchMap(function (runtimeContext) { return _this.customizeContext(productId, runtimeContext); }));
|
1968
2245
|
};
|
1969
2246
|
return LegacyProductComponent;
|
1970
2247
|
}());
|
1971
|
-
LegacyProductComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductComponent, deps: [{ token: i1__namespace$
|
2248
|
+
LegacyProductComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductComponent, deps: [{ token: i1__namespace$3.ActivatedRoute }, { token: i1__namespace$2.QuoteDraftService }, { token: i2__namespace.QuoteApiService }, { token: i1__namespace$2.ContextService }, { token: i4__namespace$2.RuntimeContextService }, { token: i4__namespace$2.RuntimeService }, { token: i4__namespace$2.CurrentStateService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
1972
2249
|
LegacyProductComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: LegacyProductComponent, selector: "ng-component", ngImport: i0__namespace, template: "<vl-runtime #runtimeView (solutionUpdated)=\"onSolutionUpdated($event)\"></vl-runtime>\n", styles: [":host{display:block;height:100%}\n"], components: [{ type: i4__namespace$2.RuntimeComponent, selector: "vl-runtime", outputs: ["solutionUpdated"] }] });
|
1973
2250
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductComponent, decorators: [{
|
1974
2251
|
type: i0.Component,
|
@@ -1977,7 +2254,7 @@
|
|
1977
2254
|
styleUrls: ['./legacy-product.component.scss'],
|
1978
2255
|
}]
|
1979
2256
|
}], ctorParameters: function () {
|
1980
|
-
return [{ type: i1__namespace$
|
2257
|
+
return [{ type: i1__namespace$3.ActivatedRoute }, { type: i1__namespace$2.QuoteDraftService }, { type: i2__namespace.QuoteApiService }, { type: i1__namespace$2.ContextService }, { type: i4__namespace$2.RuntimeContextService }, { type: i4__namespace$2.RuntimeService }, { type: i4__namespace$2.CurrentStateService }, { type: undefined, decorators: [{
|
1981
2258
|
type: i0.Optional
|
1982
2259
|
}, {
|
1983
2260
|
type: i0.Inject,
|
@@ -1991,13 +2268,13 @@
|
|
1991
2268
|
return LegacyProductModule;
|
1992
2269
|
}());
|
1993
2270
|
LegacyProductModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
1994
|
-
LegacyProductModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductModule, declarations: [LegacyProductComponent], imports: [i5.CommonModule, i4$2.RuntimeModule, i1__namespace$
|
1995
|
-
LegacyProductModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductModule, imports: [[i5.CommonModule, i4$2.RuntimeModule, i1$
|
2271
|
+
LegacyProductModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductModule, declarations: [LegacyProductComponent], imports: [i5$1.CommonModule, i4$2.RuntimeModule, i1__namespace$4.TooltipModule], exports: [LegacyProductComponent] });
|
2272
|
+
LegacyProductModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductModule, imports: [[i5$1.CommonModule, i4$2.RuntimeModule, i1$4.TooltipModule.forRoot()]] });
|
1996
2273
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: LegacyProductModule, decorators: [{
|
1997
2274
|
type: i0.NgModule,
|
1998
2275
|
args: [{
|
1999
2276
|
declarations: [LegacyProductComponent],
|
2000
|
-
imports: [i5.CommonModule, i4$2.RuntimeModule, i1$
|
2277
|
+
imports: [i5$1.CommonModule, i4$2.RuntimeModule, i1$4.TooltipModule.forRoot()],
|
2001
2278
|
exports: [LegacyProductComponent],
|
2002
2279
|
}]
|
2003
2280
|
}] });
|
@@ -2092,8 +2369,8 @@
|
|
2092
2369
|
};
|
2093
2370
|
return ProductComponent;
|
2094
2371
|
}());
|
2095
|
-
ProductComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductComponent, deps: [{ token: i1__namespace$
|
2096
|
-
ProductComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ProductComponent, selector: "vl-flow-product", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type:
|
2372
|
+
ProductComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductComponent, deps: [{ token: i1__namespace$2.ContextService }, { token: i1__namespace$2.ConfigurationRuntimeService }, { token: i1__namespace$2.ConfigurationService }, { token: i1__namespace$2.QuoteDraftService }, { token: i2__namespace$1.MessageService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
2373
|
+
ProductComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ProductComponent, selector: "vl-flow-product", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i1__namespace$1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
2097
2374
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductComponent, decorators: [{
|
2098
2375
|
type: i0.Component,
|
2099
2376
|
args: [{
|
@@ -2103,7 +2380,7 @@
|
|
2103
2380
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
2104
2381
|
}]
|
2105
2382
|
}], ctorParameters: function () {
|
2106
|
-
return [{ type: i1__namespace$
|
2383
|
+
return [{ type: i1__namespace$2.ContextService }, { type: i1__namespace$2.ConfigurationRuntimeService }, { type: i1__namespace$2.ConfigurationService }, { type: i1__namespace$2.QuoteDraftService }, { type: i2__namespace$1.MessageService }, { type: undefined, decorators: [{
|
2107
2384
|
type: i0.Optional
|
2108
2385
|
}, {
|
2109
2386
|
type: i0.Inject,
|
@@ -2117,13 +2394,13 @@
|
|
2117
2394
|
return ProductModule;
|
2118
2395
|
}());
|
2119
2396
|
ProductModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
2120
|
-
ProductModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductModule, declarations: [ProductComponent], imports: [i5.CommonModule,
|
2121
|
-
ProductModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductModule, imports: [[i5.CommonModule,
|
2397
|
+
ProductModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductModule, declarations: [ProductComponent], imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule], exports: [ProductComponent] });
|
2398
|
+
ProductModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductModule, imports: [[i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule]] });
|
2122
2399
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ProductModule, decorators: [{
|
2123
2400
|
type: i0.NgModule,
|
2124
2401
|
args: [{
|
2125
2402
|
declarations: [ProductComponent],
|
2126
|
-
imports: [i5.CommonModule,
|
2403
|
+
imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule],
|
2127
2404
|
exports: [ProductComponent],
|
2128
2405
|
}]
|
2129
2406
|
}] });
|
@@ -2142,8 +2419,8 @@
|
|
2142
2419
|
}
|
2143
2420
|
return RecordNotFoundComponent;
|
2144
2421
|
}());
|
2145
|
-
RecordNotFoundComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundComponent, deps: [{ token: i1__namespace$
|
2146
|
-
RecordNotFoundComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: RecordNotFoundComponent, selector: "vl-flow-record-not-found", ngImport: i0__namespace, 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", styles: [":host{display:block;padding:24px 54px}\n"], directives: [{ type: i5__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
2422
|
+
RecordNotFoundComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundComponent, deps: [{ token: i1__namespace$3.Router }, { token: i1__namespace$3.ActivatedRoute }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
2423
|
+
RecordNotFoundComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: RecordNotFoundComponent, selector: "vl-flow-record-not-found", ngImport: i0__namespace, 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", styles: [":host{display:block;padding:24px 54px}\n"], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
2147
2424
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundComponent, decorators: [{
|
2148
2425
|
type: i0.Component,
|
2149
2426
|
args: [{
|
@@ -2152,7 +2429,7 @@
|
|
2152
2429
|
styleUrls: ['./record-not-found.component.scss'],
|
2153
2430
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
2154
2431
|
}]
|
2155
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
2432
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: i1__namespace$3.ActivatedRoute }]; } });
|
2156
2433
|
|
2157
2434
|
var routes = [{ path: '', component: RecordNotFoundComponent }];
|
2158
2435
|
var RecordNotFoundModule = /** @class */ (function () {
|
@@ -2161,13 +2438,13 @@
|
|
2161
2438
|
return RecordNotFoundModule;
|
2162
2439
|
}());
|
2163
2440
|
RecordNotFoundModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
2164
|
-
RecordNotFoundModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundModule, declarations: [RecordNotFoundComponent], imports: [i5.CommonModule, i1__namespace$
|
2165
|
-
RecordNotFoundModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundModule, imports: [[i5.CommonModule, i1$
|
2441
|
+
RecordNotFoundModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundModule, declarations: [RecordNotFoundComponent], imports: [i5$1.CommonModule, i1__namespace$3.RouterModule] });
|
2442
|
+
RecordNotFoundModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundModule, imports: [[i5$1.CommonModule, i1$3.RouterModule.forChild(routes)]] });
|
2166
2443
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RecordNotFoundModule, decorators: [{
|
2167
2444
|
type: i0.NgModule,
|
2168
2445
|
args: [{
|
2169
2446
|
declarations: [RecordNotFoundComponent],
|
2170
|
-
imports: [i5.CommonModule, i1$
|
2447
|
+
imports: [i5$1.CommonModule, i1$3.RouterModule.forChild(routes)],
|
2171
2448
|
}]
|
2172
2449
|
}] });
|
2173
2450
|
|
@@ -2263,11 +2540,11 @@
|
|
2263
2540
|
RemoteComponent.prototype.initSubscriptions = function () {
|
2264
2541
|
var _this = this;
|
2265
2542
|
this.integrationState
|
2266
|
-
.listen$(
|
2543
|
+
.listen$(i1$1.FlowAction.REMOTE_CANCEL)
|
2267
2544
|
.pipe(rxjs.tap(function () { return _this.location.back(); }), rxjs.takeUntil(this.destroyed$))
|
2268
2545
|
.subscribe();
|
2269
2546
|
this.integrationState
|
2270
|
-
.listen$(
|
2547
|
+
.listen$(i1$1.FlowAction.REMOTE_APPLY)
|
2271
2548
|
.pipe(rxjs.tap(function () { return _this.saveRpcMessage(); }), rxjs.takeUntil(this.destroyed$))
|
2272
2549
|
.subscribe();
|
2273
2550
|
};
|
@@ -2559,8 +2836,8 @@
|
|
2559
2836
|
};
|
2560
2837
|
return RemoteComponent;
|
2561
2838
|
}());
|
2562
|
-
RemoteComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteComponent, deps: [{ token: i1__namespace$
|
2563
|
-
RemoteComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: RemoteComponent, selector: "vl-flow-remote", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type:
|
2839
|
+
RemoteComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteComponent, deps: [{ token: i1__namespace$2.ContextService }, { token: i1__namespace$2.QuoteDraftService }, { token: i2__namespace.QuoteApiService }, { token: i1__namespace$2.ConfigurationRuntimeService }, { token: i1__namespace$2.ConfigurationService }, { token: i2__namespace$1.MessageService }, { token: i1__namespace$1.IntegrationState }, { token: i5__namespace$1.Location }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
2840
|
+
RemoteComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: RemoteComponent, selector: "vl-flow-remote", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i1__namespace$1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
2564
2841
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteComponent, decorators: [{
|
2565
2842
|
type: i0.Component,
|
2566
2843
|
args: [{
|
@@ -2569,7 +2846,7 @@
|
|
2569
2846
|
styleUrls: ['./remote.component.scss'],
|
2570
2847
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
2571
2848
|
}]
|
2572
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
2849
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$2.ContextService }, { type: i1__namespace$2.QuoteDraftService }, { type: i2__namespace.QuoteApiService }, { type: i1__namespace$2.ConfigurationRuntimeService }, { type: i1__namespace$2.ConfigurationService }, { type: i2__namespace$1.MessageService }, { type: i1__namespace$1.IntegrationState }, { type: i5__namespace$1.Location }]; } });
|
2573
2850
|
|
2574
2851
|
var RemoteModule = /** @class */ (function () {
|
2575
2852
|
function RemoteModule() {
|
@@ -2577,13 +2854,13 @@
|
|
2577
2854
|
return RemoteModule;
|
2578
2855
|
}());
|
2579
2856
|
RemoteModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
2580
|
-
RemoteModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteModule, declarations: [RemoteComponent], imports: [i5.CommonModule,
|
2581
|
-
RemoteModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteModule, imports: [[i5.CommonModule,
|
2857
|
+
RemoteModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteModule, declarations: [RemoteComponent], imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule], exports: [RemoteComponent] });
|
2858
|
+
RemoteModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteModule, imports: [[i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule]] });
|
2582
2859
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: RemoteModule, decorators: [{
|
2583
2860
|
type: i0.NgModule,
|
2584
2861
|
args: [{
|
2585
2862
|
declarations: [RemoteComponent],
|
2586
|
-
imports: [i5.CommonModule,
|
2863
|
+
imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule],
|
2587
2864
|
exports: [RemoteComponent],
|
2588
2865
|
}]
|
2589
2866
|
}] });
|
@@ -2681,8 +2958,8 @@
|
|
2681
2958
|
};
|
2682
2959
|
return ShoppingCartComponent;
|
2683
2960
|
}());
|
2684
|
-
ShoppingCartComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartComponent, deps: [{ token: i2__namespace
|
2685
|
-
ShoppingCartComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ShoppingCartComponent, selector: "vl-flow-shopping-cart", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type:
|
2961
|
+
ShoppingCartComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartComponent, deps: [{ token: i2__namespace.UITemplatesApiService }, { token: i1__namespace$2.ContextService }, { token: i0__namespace.ChangeDetectorRef }, { token: i3__namespace.ToastService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
2962
|
+
ShoppingCartComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ShoppingCartComponent, selector: "vl-flow-shopping-cart", ngImport: i0__namespace, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i3__namespace.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i1__namespace$1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i5__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i5__namespace$1.AsyncPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
|
2686
2963
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartComponent, decorators: [{
|
2687
2964
|
type: i0.Component,
|
2688
2965
|
args: [{
|
@@ -2692,7 +2969,7 @@
|
|
2692
2969
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
2693
2970
|
}]
|
2694
2971
|
}], ctorParameters: function () {
|
2695
|
-
return [{ type: i2__namespace
|
2972
|
+
return [{ type: i2__namespace.UITemplatesApiService }, { type: i1__namespace$2.ContextService }, { type: i0__namespace.ChangeDetectorRef }, { type: i3__namespace.ToastService }, { type: undefined, decorators: [{
|
2696
2973
|
type: i0.Optional
|
2697
2974
|
}, {
|
2698
2975
|
type: i0.Inject,
|
@@ -2706,13 +2983,13 @@
|
|
2706
2983
|
return ShoppingCartModule;
|
2707
2984
|
}());
|
2708
2985
|
ShoppingCartModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
2709
|
-
ShoppingCartModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartModule, declarations: [ShoppingCartComponent], imports: [i5.CommonModule,
|
2710
|
-
ShoppingCartModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartModule, imports: [[i5.CommonModule,
|
2986
|
+
ShoppingCartModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartModule, declarations: [ShoppingCartComponent], imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule], exports: [ShoppingCartComponent] });
|
2987
|
+
ShoppingCartModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartModule, imports: [[i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule]] });
|
2711
2988
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: ShoppingCartModule, decorators: [{
|
2712
2989
|
type: i0.NgModule,
|
2713
2990
|
args: [{
|
2714
2991
|
declarations: [ShoppingCartComponent],
|
2715
|
-
imports: [i5.CommonModule,
|
2992
|
+
imports: [i5$1.CommonModule, i1$1.PreviewModule, i3.LoaderModule],
|
2716
2993
|
exports: [ShoppingCartComponent],
|
2717
2994
|
}]
|
2718
2995
|
}] });
|
@@ -2770,11 +3047,11 @@
|
|
2770
3047
|
};
|
2771
3048
|
return FlowResolver;
|
2772
3049
|
}());
|
2773
|
-
FlowResolver.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowResolver, deps: [{ token: i1__namespace$
|
3050
|
+
FlowResolver.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowResolver, deps: [{ token: i1__namespace$3.Router }, { token: i2__namespace.FlowsApiService }, { token: FlowRouterService }, { token: i1__namespace$2.ContextService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
2774
3051
|
FlowResolver.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowResolver });
|
2775
3052
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowResolver, decorators: [{
|
2776
3053
|
type: i0.Injectable
|
2777
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
3054
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: i2__namespace.FlowsApiService }, { type: FlowRouterService }, { type: i1__namespace$2.ContextService }]; } });
|
2778
3055
|
|
2779
3056
|
var QuoteResolver = /** @class */ (function () {
|
2780
3057
|
function QuoteResolver(router, quoteDraftService, routerService, contextService, flowConfiguration) {
|
@@ -2839,11 +3116,11 @@
|
|
2839
3116
|
};
|
2840
3117
|
return QuoteResolver;
|
2841
3118
|
}());
|
2842
|
-
QuoteResolver.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: QuoteResolver, deps: [{ token: i1__namespace$
|
3119
|
+
QuoteResolver.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: QuoteResolver, deps: [{ token: i1__namespace$3.Router }, { token: i1__namespace$2.QuoteDraftService }, { token: FlowRouterService }, { token: i1__namespace$2.ContextService }, { token: i1__namespace$2.FlowConfigurationService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
|
2843
3120
|
QuoteResolver.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: QuoteResolver });
|
2844
3121
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: QuoteResolver, decorators: [{
|
2845
3122
|
type: i0.Injectable
|
2846
|
-
}], ctorParameters: function () { return [{ type: i1__namespace$
|
3123
|
+
}], ctorParameters: function () { return [{ type: i1__namespace$3.Router }, { type: i1__namespace$2.QuoteDraftService }, { type: FlowRouterService }, { type: i1__namespace$2.ContextService }, { type: i1__namespace$2.FlowConfigurationService }]; } });
|
2847
3124
|
|
2848
3125
|
var rootRoute = {
|
2849
3126
|
id: VELOCE_FLOW_ROOT_ROUTE,
|
@@ -2927,26 +3204,26 @@
|
|
2927
3204
|
return FlowRoutingModule;
|
2928
3205
|
}());
|
2929
3206
|
FlowRoutingModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRoutingModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
2930
|
-
FlowRoutingModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRoutingModule, imports: [i1__namespace$
|
3207
|
+
FlowRoutingModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRoutingModule, imports: [i1__namespace$3.RouterModule, ProductModule,
|
2931
3208
|
LegacyProductModule,
|
2932
3209
|
ShoppingCartModule,
|
2933
3210
|
CatalogModule,
|
2934
3211
|
RemoteModule,
|
2935
|
-
EmptyAccountModule], exports: [i1$
|
3212
|
+
EmptyAccountModule], exports: [i1$3.RouterModule] });
|
2936
3213
|
FlowRoutingModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRoutingModule, providers: [FlowRouterService, RootGuard, ContextGuard, ProductUnloadGuard, FlowResolver, QuoteResolver], imports: [[
|
2937
|
-
i1$
|
3214
|
+
i1$3.RouterModule.forChild([rootRoute]),
|
2938
3215
|
ProductModule,
|
2939
3216
|
LegacyProductModule,
|
2940
3217
|
ShoppingCartModule,
|
2941
3218
|
CatalogModule,
|
2942
3219
|
RemoteModule,
|
2943
3220
|
EmptyAccountModule,
|
2944
|
-
], i1$
|
3221
|
+
], i1$3.RouterModule] });
|
2945
3222
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowRoutingModule, decorators: [{
|
2946
3223
|
type: i0.NgModule,
|
2947
3224
|
args: [{
|
2948
3225
|
imports: [
|
2949
|
-
i1$
|
3226
|
+
i1$3.RouterModule.forChild([rootRoute]),
|
2950
3227
|
ProductModule,
|
2951
3228
|
LegacyProductModule,
|
2952
3229
|
ShoppingCartModule,
|
@@ -2954,7 +3231,7 @@
|
|
2954
3231
|
RemoteModule,
|
2955
3232
|
EmptyAccountModule,
|
2956
3233
|
],
|
2957
|
-
exports: [i1$
|
3234
|
+
exports: [i1$3.RouterModule],
|
2958
3235
|
providers: [FlowRouterService, RootGuard, ContextGuard, ProductUnloadGuard, FlowResolver, QuoteResolver],
|
2959
3236
|
}]
|
2960
3237
|
}] });
|
@@ -2965,25 +3242,25 @@
|
|
2965
3242
|
return FlowModule;
|
2966
3243
|
}());
|
2967
3244
|
FlowModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
|
2968
|
-
FlowModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowModule, declarations: [FlowComponent], imports: [i5.CommonModule,
|
3245
|
+
FlowModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowModule, declarations: [FlowComponent], imports: [i5$1.CommonModule,
|
2969
3246
|
FlowRoutingModule,
|
2970
|
-
i2
|
2971
|
-
|
3247
|
+
i2.ApiModule,
|
3248
|
+
i1$1.LauncherModule,
|
2972
3249
|
i3.LoaderModule,
|
2973
3250
|
FlowHeaderModule,
|
2974
3251
|
FlowDialogModule,
|
2975
|
-
i1$
|
3252
|
+
i1$2.SdkCoreModule,
|
2976
3253
|
DocGenModule,
|
2977
3254
|
i3.LetDirectiveModule] });
|
2978
3255
|
FlowModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0__namespace, type: FlowModule, providers: [FlowService, FlowDialogService, FlowDocGenService], imports: [[
|
2979
|
-
i5.CommonModule,
|
3256
|
+
i5$1.CommonModule,
|
2980
3257
|
FlowRoutingModule,
|
2981
|
-
i2
|
2982
|
-
|
3258
|
+
i2.ApiModule,
|
3259
|
+
i1$1.LauncherModule,
|
2983
3260
|
i3.LoaderModule,
|
2984
3261
|
FlowHeaderModule,
|
2985
3262
|
FlowDialogModule,
|
2986
|
-
i1$
|
3263
|
+
i1$2.SdkCoreModule,
|
2987
3264
|
DocGenModule,
|
2988
3265
|
i3.LetDirectiveModule,
|
2989
3266
|
]] });
|
@@ -2992,14 +3269,14 @@
|
|
2992
3269
|
args: [{
|
2993
3270
|
declarations: [FlowComponent],
|
2994
3271
|
imports: [
|
2995
|
-
i5.CommonModule,
|
3272
|
+
i5$1.CommonModule,
|
2996
3273
|
FlowRoutingModule,
|
2997
|
-
i2
|
2998
|
-
|
3274
|
+
i2.ApiModule,
|
3275
|
+
i1$1.LauncherModule,
|
2999
3276
|
i3.LoaderModule,
|
3000
3277
|
FlowHeaderModule,
|
3001
3278
|
FlowDialogModule,
|
3002
|
-
i1$
|
3279
|
+
i1$2.SdkCoreModule,
|
3003
3280
|
DocGenModule,
|
3004
3281
|
i3.LetDirectiveModule,
|
3005
3282
|
],
|