@veloceapps/sdk 2.0.17 → 2.0.18

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.
@@ -57,10 +57,10 @@ export class ProductComponent {
57
57
  this.runtimeService
58
58
  .init({ productId, offeringId })
59
59
  .pipe(tap(context => (this.uiDefinition = context === null || context === void 0 ? void 0 : context.uiDefinition)), switchMap(() => this.customize(productId)), switchMap(() => this.conigurationService.configure()), tap(() => this.state$.next({ loading: false, failure: false })), catchError(error => {
60
- this.messageService.add({
61
- severity: 'error',
62
- summary: error,
63
- });
60
+ var _a, _b;
61
+ if (!((_b = (_a = this.uiDefinition) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.suppressToastMessages)) {
62
+ this.messageService.add({ severity: 'error', summary: error });
63
+ }
64
64
  this.state$.next({ loading: false, failure: true });
65
65
  return of();
66
66
  }), takeUntil(this.destroy$))
@@ -77,7 +77,7 @@ export class ProductComponent {
77
77
  }
78
78
  }
79
79
  ProductComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ProductComponent, deps: [{ token: i1.ConfigurationRuntimeService }, { token: i1.ConfigurationService }, { token: i2.QuoteService }, { token: i3.ActivatedRoute }, { token: i4.MessageService }, { token: FLOW_CUSTOMIZATION, optional: true }], target: i0.ɵɵFactoryTarget.Component });
80
- ProductComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ProductComponent, selector: "vl-flow-product", ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i5.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
80
+ ProductComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: ProductComponent, selector: "vl-flow-product", ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-preview [uiDefinition]=\"uiDefinition\"></vl-cms-preview>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [""], components: [{ type: i5.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: i1.PreviewComponent, selector: "vl-cms-preview", inputs: ["modelId", "uiDefinition", "clearState"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i6.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
81
81
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ProductComponent, decorators: [{
82
82
  type: Component,
83
83
  args: [{
@@ -92,4 +92,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
92
92
  type: Inject,
93
93
  args: [FLOW_CUSTOMIZATION]
94
94
  }] }]; } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvcHJvZHVjdC9wcm9kdWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9wcm9kdWN0L3Byb2R1Y3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsVUFBVSxFQUF3QixNQUFNLGNBQWMsQ0FBQztBQUloRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RyxPQUFPLEVBQXFCLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0FBYTdGLE1BQU0sT0FBTyxnQkFBZ0I7SUFNM0IsWUFDVSxjQUEyQyxFQUMzQyxtQkFBeUMsRUFDekMsWUFBMEIsRUFDMUIsS0FBcUIsRUFDckIsY0FBOEIsRUFDVSxvQkFBd0M7UUFMaEYsbUJBQWMsR0FBZCxjQUFjLENBQTZCO1FBQzNDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBc0I7UUFDekMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQ1UseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFvQjtRQVhsRixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUdoQyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVB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ZixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDcEQsT0FBTyxFQUFFLEVBQUUsQ0FBQztRQUNkLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFpQixFQUFFLFdBQW1CO1FBQzFELElBQUksVUFBVSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRTtZQUNuRCxPQUFPLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNsQztRQUVELE9BQU8sS0FBSyxDQUFDLFlBQVk7YUFDdEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsS0FBSyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDbkUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQzthQUM1QixJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNwQixDQUFDOzs4R0FuRlUsZ0JBQWdCLHlMQVlMLGtCQUFrQjtrR0FaN0IsZ0JBQWdCLHVEQ3BCN0Isd1ZBU0E7NEZEV2EsZ0JBQWdCO2tCQU41QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFdBQVcsRUFBRSwwQkFBMEI7b0JBQ3ZDLFNBQVMsRUFBRSxDQUFDLDBCQUEwQixDQUFDO29CQUN2QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7OzBCQWFJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRW50aXR5VXRpbCwgTGluZUl0ZW0sIFF1b3RlRHJhZnQgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLCBDb25maWd1cmF0aW9uU2VydmljZSwgVUlEZWZpbml0aW9uIH0gZnJvbSAnQHZlbG9jZS9zZGsvY21zJztcbmltcG9ydCB7IFF1b3RlU2VydmljZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL3J1bnRpbWUnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNhdGNoRXJyb3IsIGZpcnN0LCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmxvd0N1c3RvbWl6YXRpb24sIEZMT1dfQ1VTVE9NSVpBVElPTiB9IGZyb20gJy4uLy4uL3R5cGVzL2Zsb3ctY3VzdG9taXphdGlvbi50eXBlcyc7XG5cbmludGVyZmFjZSBTdGF0ZSB7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGZhaWx1cmU6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctcHJvZHVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIHVpRGVmaW5pdGlvbj86IFVJRGVmaW5pdGlvbjtcbiAgcHVibGljIHN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3RhdGU+KHsgbG9hZGluZzogdHJ1ZSwgZmFpbHVyZTogZmFsc2UgfSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uaWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBxdW90ZVNlcnZpY2U6IFF1b3RlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZMT1dfQ1VTVE9NSVpBVElPTikgcHJpdmF0ZSBjdXN0b21pemF0aW9uU2VydmljZT86IEZsb3dDdXN0b21pemF0aW9uLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5xdW90ZVNlcnZpY2UucXVvdGUkXG4gICAgICAucGlwZShmaXJzdCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHF1b3RlID0+IHRoaXMuaW5pdChxdW90ZSwgdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcykpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21pemUocHJvZHVjdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy5jdXN0b21pemF0aW9uU2VydmljZT8uZ2V0VWlEZWZpbml0aW9uKSB7XG4gICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuZ2V0VWlEZWZpbml0aW9uKHByb2R1Y3RJZCkucGlwZShcbiAgICAgIHRhcCh1aURlZiA9PiB7XG4gICAgICAgIGlmICh1aURlZikge1xuICAgICAgICAgIHRoaXMudWlEZWZpbml0aW9uID0gdWlEZWY7XG4gICAgICAgICAgdGhpcy5ydW50aW1lU2VydmljZS51aURlZmluaXRpb25Qcm9wZXJ0aWVzID0gdWlEZWYucHJvcGVydGllcyA/PyB7fTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHZvaWQge1xuICAgIGNvbnN0IGxpbmVJdGVtSWQgPSB0aGlzLmdldExpbmVJdGVtSWQocXVvdGUsIHF1ZXJ5UGFyYW1zKTtcbiAgICBjb25zdCBjdXJyZW50U3RhdGVJdGVtOiBMaW5lSXRlbSB8IHVuZGVmaW5lZCA9IEVudGl0eVV0aWwuZmluZEJ5SWQobGluZUl0ZW1JZCwgcXVvdGUuY3VycmVudFN0YXRlKTtcbiAgICBjb25zdCBwcm9kdWN0SWQgPSBjdXJyZW50U3RhdGVJdGVtPy5wcm9kdWN0SWQgPz8gcXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddO1xuICAgIGNvbnN0IHsgb2ZmZXJpbmdJZCB9ID0gY3VycmVudFN0YXRlSXRlbSA/PyB7fTtcblxuICAgIGlmIChjdXJyZW50U3RhdGVJdGVtKSB7XG4gICAgICB0aGlzLmNvbmlndXJhdGlvblNlcnZpY2UudXBkYXRlQ3VycmVudFN0YXRlcyh7XG4gICAgICAgIGNvbmZpZ3VyYWJsZVJhbXA6IGN1cnJlbnRTdGF0ZUl0ZW0sXG4gICAgICAgIGN1cnJlbnRTdGF0ZTogcXVvdGUuY3VycmVudFN0YXRlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5ydW50aW1lU2VydmljZVxuICAgICAgLmluaXQoeyBwcm9kdWN0SWQsIG9mZmVyaW5nSWQgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoY29udGV4dCA9PiAodGhpcy51aURlZmluaXRpb24gPSBjb250ZXh0Py51aURlZmluaXRpb24pKSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY3VzdG9taXplKHByb2R1Y3RJZCkpLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25pZ3VyYXRpb25TZXJ2aWNlLmNvbmZpZ3VyZSgpKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogZmFsc2UgfSkpLFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7XG4gICAgICAgICAgICBzZXZlcml0eTogJ2Vycm9yJyxcbiAgICAgICAgICAgIHN1bW1hcnk6IGVycm9yLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogdHJ1ZSB9KTtcbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGluZUl0ZW1JZChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKEVudGl0eVV0aWwuaXNQcmVzZW50KHF1ZXJ5UGFyYW1zWydsaW5lSXRlbUlkJ10pKSB7XG4gICAgICByZXR1cm4gcXVlcnlQYXJhbXNbJ2xpbmVJdGVtSWQnXTtcbiAgICB9XG5cbiAgICByZXR1cm4gcXVvdGUuY3VycmVudFN0YXRlXG4gICAgICAuZmlsdGVyKGxpbmVJdGVtID0+IGxpbmVJdGVtLnByb2R1Y3RJZCA9PT0gcXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddKVxuICAgICAgLm1hcChsaW5lSXRlbSA9PiBsaW5lSXRlbS5pZClcbiAgICAgIC5maW5kKGlkID0+IGlkKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDx2bC1sb2FkZXIgKm5nSWY9XCJzdGF0ZS5sb2FkaW5nOyBlbHNlIGNvbnRlbnRcIiBbbGFiZWxdPVwiJ0xvYWRpbmcgVUknXCI+PC92bC1sb2FkZXI+XG5cbiAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3RhdGUuZmFpbHVyZVwiPlxuICAgICAgPHZsLWNtcy1wcmV2aWV3IFt1aURlZmluaXRpb25dPVwidWlEZWZpbml0aW9uXCI+PC92bC1jbXMtcHJldmlldz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9zcmMvcGFnZXMvcHJvZHVjdC9wcm9kdWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL3NyYy9wYWdlcy9wcm9kdWN0L3Byb2R1Y3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsVUFBVSxFQUF3QixNQUFNLGNBQWMsQ0FBQztBQUloRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RyxPQUFPLEVBQXFCLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7O0FBYTdGLE1BQU0sT0FBTyxnQkFBZ0I7SUFNM0IsWUFDVSxjQUEyQyxFQUMzQyxtQkFBeUMsRUFDekMsWUFBMEIsRUFDMUIsS0FBcUIsRUFDckIsY0FBOEIsRUFDVSxvQkFBd0M7UUFMaEYsbUJBQWMsR0FBZCxjQUFjLENBQTZCO1FBQzNDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBc0I7UUFDekMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQ1UseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFvQjtRQVhsRixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUdoQyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVB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QWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRW50aXR5VXRpbCwgTGluZUl0ZW0sIFF1b3RlRHJhZnQgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLCBDb25maWd1cmF0aW9uU2VydmljZSwgVUlEZWZpbml0aW9uIH0gZnJvbSAnQHZlbG9jZS9zZGsvY21zJztcbmltcG9ydCB7IFF1b3RlU2VydmljZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL3J1bnRpbWUnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNhdGNoRXJyb3IsIGZpcnN0LCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRmxvd0N1c3RvbWl6YXRpb24sIEZMT1dfQ1VTVE9NSVpBVElPTiB9IGZyb20gJy4uLy4uL3R5cGVzL2Zsb3ctY3VzdG9taXphdGlvbi50eXBlcyc7XG5cbmludGVyZmFjZSBTdGF0ZSB7XG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIGZhaWx1cmU6IGJvb2xlYW47XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZsLWZsb3ctcHJvZHVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9kdWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvZHVjdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIHVpRGVmaW5pdGlvbj86IFVJRGVmaW5pdGlvbjtcbiAgcHVibGljIHN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U3RhdGU+KHsgbG9hZGluZzogdHJ1ZSwgZmFpbHVyZTogZmFsc2UgfSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBydW50aW1lU2VydmljZTogQ29uZmlndXJhdGlvblJ1bnRpbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uaWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBxdW90ZVNlcnZpY2U6IFF1b3RlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEZMT1dfQ1VTVE9NSVpBVElPTikgcHJpdmF0ZSBjdXN0b21pemF0aW9uU2VydmljZT86IEZsb3dDdXN0b21pemF0aW9uLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5xdW90ZVNlcnZpY2UucXVvdGUkXG4gICAgICAucGlwZShmaXJzdCgpLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHF1b3RlID0+IHRoaXMuaW5pdChxdW90ZSwgdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcykpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21pemUocHJvZHVjdElkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy5jdXN0b21pemF0aW9uU2VydmljZT8uZ2V0VWlEZWZpbml0aW9uKSB7XG4gICAgICByZXR1cm4gb2YobnVsbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuZ2V0VWlEZWZpbml0aW9uKHByb2R1Y3RJZCkucGlwZShcbiAgICAgIHRhcCh1aURlZiA9PiB7XG4gICAgICAgIGlmICh1aURlZikge1xuICAgICAgICAgIHRoaXMudWlEZWZpbml0aW9uID0gdWlEZWY7XG4gICAgICAgICAgdGhpcy5ydW50aW1lU2VydmljZS51aURlZmluaXRpb25Qcm9wZXJ0aWVzID0gdWlEZWYucHJvcGVydGllcyA/PyB7fTtcbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHZvaWQge1xuICAgIGNvbnN0IGxpbmVJdGVtSWQgPSB0aGlzLmdldExpbmVJdGVtSWQocXVvdGUsIHF1ZXJ5UGFyYW1zKTtcbiAgICBjb25zdCBjdXJyZW50U3RhdGVJdGVtOiBMaW5lSXRlbSB8IHVuZGVmaW5lZCA9IEVudGl0eVV0aWwuZmluZEJ5SWQobGluZUl0ZW1JZCwgcXVvdGUuY3VycmVudFN0YXRlKTtcbiAgICBjb25zdCBwcm9kdWN0SWQgPSBjdXJyZW50U3RhdGVJdGVtPy5wcm9kdWN0SWQgPz8gcXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddO1xuICAgIGNvbnN0IHsgb2ZmZXJpbmdJZCB9ID0gY3VycmVudFN0YXRlSXRlbSA/PyB7fTtcblxuICAgIGlmIChjdXJyZW50U3RhdGVJdGVtKSB7XG4gICAgICB0aGlzLmNvbmlndXJhdGlvblNlcnZpY2UudXBkYXRlQ3VycmVudFN0YXRlcyh7XG4gICAgICAgIGNvbmZpZ3VyYWJsZVJhbXA6IGN1cnJlbnRTdGF0ZUl0ZW0sXG4gICAgICAgIGN1cnJlbnRTdGF0ZTogcXVvdGUuY3VycmVudFN0YXRlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5ydW50aW1lU2VydmljZVxuICAgICAgLmluaXQoeyBwcm9kdWN0SWQsIG9mZmVyaW5nSWQgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoY29udGV4dCA9PiAodGhpcy51aURlZmluaXRpb24gPSBjb250ZXh0Py51aURlZmluaXRpb24pKSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMuY3VzdG9taXplKHByb2R1Y3RJZCkpLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5jb25pZ3VyYXRpb25TZXJ2aWNlLmNvbmZpZ3VyZSgpKSxcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogZmFsc2UgfSkpLFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICBpZiAoIXRoaXMudWlEZWZpbml0aW9uPy5wcm9wZXJ0aWVzPy5zdXBwcmVzc1RvYXN0TWVzc2FnZXMpIHtcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKHsgc2V2ZXJpdHk6ICdlcnJvcicsIHN1bW1hcnk6IGVycm9yIH0pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuc3RhdGUkLm5leHQoeyBsb2FkaW5nOiBmYWxzZSwgZmFpbHVyZTogdHJ1ZSB9KTtcbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TGluZUl0ZW1JZChxdW90ZTogUXVvdGVEcmFmdCwgcXVlcnlQYXJhbXM6IFBhcmFtcyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKEVudGl0eVV0aWwuaXNQcmVzZW50KHF1ZXJ5UGFyYW1zWydsaW5lSXRlbUlkJ10pKSB7XG4gICAgICByZXR1cm4gcXVlcnlQYXJhbXNbJ2xpbmVJdGVtSWQnXTtcbiAgICB9XG5cbiAgICByZXR1cm4gcXVvdGUuY3VycmVudFN0YXRlXG4gICAgICAuZmlsdGVyKGxpbmVJdGVtID0+IGxpbmVJdGVtLnByb2R1Y3RJZCA9PT0gcXVlcnlQYXJhbXNbJ3Byb2R1Y3RJZCddKVxuICAgICAgLm1hcChsaW5lSXRlbSA9PiBsaW5lSXRlbS5pZClcbiAgICAgIC5maW5kKGlkID0+IGlkKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG4gIDx2bC1sb2FkZXIgKm5nSWY9XCJzdGF0ZS5sb2FkaW5nOyBlbHNlIGNvbnRlbnRcIiBbbGFiZWxdPVwiJ0xvYWRpbmcgVUknXCI+PC92bC1sb2FkZXI+XG5cbiAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc3RhdGUuZmFpbHVyZVwiPlxuICAgICAgPHZsLWNtcy1wcmV2aWV3IFt1aURlZmluaXRpb25dPVwidWlEZWZpbml0aW9uXCI+PC92bC1jbXMtcHJldmlldz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -2,8 +2,8 @@ import { __decorate, __param, __awaiter, __rest } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
3
  import { InjectionToken, Component, ChangeDetectionStrategy, Inject, Injector, Injectable, Directive, ViewContainerRef, SkipSelf, ViewChild, Input, EventEmitter, TemplateRef, Output, NgModule, ViewEncapsulation } from '@angular/core';
4
4
  import * as rxjs from 'rxjs';
5
- import { BehaviorSubject, combineLatest, of, shareReplay, throwError, Subject, takeUntil, map as map$1, from, tap as tap$1, switchMap, forkJoin, catchError as catchError$1 } from 'rxjs';
6
- import * as i7 from '@angular/common';
5
+ import { BehaviorSubject, combineLatest, of, throwError, shareReplay, Subject, takeUntil, map as map$1, filter, from, tap as tap$1, switchMap, forkJoin, catchError as catchError$1 } from 'rxjs';
6
+ import * as i8 from '@angular/common';
7
7
  import { DOCUMENT, CommonModule } from '@angular/common';
8
8
  import { UUID, EntityUtil, RuntimeModel, ConfigurationContextMode, SalesforceIdUtils, ConfigurationMode, CoreModule } from '@veloce/core';
9
9
  import { DragDropModule } from '@angular/cdk/drag-drop';
@@ -11,14 +11,14 @@ import * as angularForms from '@angular/forms';
11
11
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
12
12
  import * as lodash from 'lodash';
13
13
  import { compact, sortBy, isArray, pull, flatten, set } from 'lodash';
14
+ import * as i6 from '@veloce/components';
15
+ import { ConfirmationComponent, LoaderModule, ConfirmationDialogModule } from '@veloce/components';
14
16
  import * as i2$1 from '@veloce/sdk/runtime';
15
17
  import { RuntimeMode, RuntimeStep, ContextService } from '@veloce/sdk/runtime';
16
18
  import * as rxjsOperators from 'rxjs/operators';
17
19
  import { map, first, tap, catchError } from 'rxjs/operators';
18
- import * as i5$1 from '@veloce/components';
19
- import { ConfirmationComponent, LoaderModule, ConfirmationDialogModule } from '@veloce/components';
20
20
  import * as i1 from '@veloce/api';
21
- import { SalesforceApiService, QuoteApiService, DocumentTemplatesApiService, DocumentAttachmentApiService, ContextApiService, ProductModelApiService, ConfigurationApiService } from '@veloce/api';
21
+ import { SalesforceApiService, QuoteApiService, DocumentTemplatesApiService, DocumentAttachmentApiService, ContextApiService, ProductModelApiService, ConfigurationApiService, ApiModule } from '@veloce/api';
22
22
  import * as i2 from 'primeng/api';
23
23
  import * as i5 from 'primeng/dynamicdialog';
24
24
  import { DialogService } from 'primeng/dynamicdialog';
@@ -763,25 +763,26 @@ class ConfigurationService {
763
763
  this.lineItem.next(undefined);
764
764
  this.charges.next({});
765
765
  }
766
- patch(lineItem) {
766
+ patch$(lineItem) {
767
767
  if (!this.lineItem.value) {
768
- return;
768
+ return throwError(() => new Error(`Source LineItem not found`));
769
769
  }
770
770
  this.states.configurableRamp = new LineItemWorker(this.lineItem.value).replace(lineItem).li;
771
771
  this.states.asset = this.states.configurableRamp
772
772
  ? this.runtimeService.getAsset(this.states.configurableRamp)
773
773
  : undefined;
774
- this.configure()
775
- .pipe(catchError(error => {
776
- this.messageService.add({
777
- severity: 'error',
778
- summary: error,
779
- });
774
+ return this.configure().pipe(catchError(error => {
775
+ console.error(error);
776
+ if (!this.runtimeService.uiDefinitionProperties.suppressToastMessages) {
777
+ this.messageService.add({ severity: 'error', summary: error });
778
+ }
780
779
  // bounce back if configuration call has failed
781
780
  this.lineItem.next(this.lineItem.value ? Object.assign({}, this.lineItem.value) : undefined);
782
- return of();
783
- }))
784
- .subscribe();
781
+ return throwError(() => error);
782
+ }));
783
+ }
784
+ patch(lineItem) {
785
+ this.patch$(lineItem).subscribe();
785
786
  }
786
787
  updateCurrentStates(update) {
787
788
  this.states = Object.assign(Object.assign({}, this.states), update);
@@ -809,7 +810,7 @@ class ConfigurationService {
809
810
  const runtimeContext = this.getRuntimeContext();
810
811
  const runtimeModel = this.getRuntimeModel();
811
812
  if (!runtimeContext || !runtimeModel) {
812
- return of(undefined);
813
+ return throwError(() => new Error('Runtime context/model not initialized'));
813
814
  }
814
815
  const uiDefinitionProperties = Object.assign(Object.assign({}, ((_b = (_a = runtimeContext.uiDefinition) === null || _a === void 0 ? void 0 : _a.properties) !== null && _b !== void 0 ? _b : {})), ((_c = this.runtimeService.uiDefinitionProperties) !== null && _c !== void 0 ? _c : {}));
815
816
  const lineItem = (_d = this.states.configurableRamp) !== null && _d !== void 0 ? _d : getDefaultLineItem(runtimeContext, uiDefinitionProperties);
@@ -1272,6 +1273,43 @@ var vlCmsModules = /*#__PURE__*/Object.freeze({
1272
1273
  ConfigurationService: ConfigurationService
1273
1274
  });
1274
1275
 
1276
+ const InitAction = { type: 'INIT' };
1277
+ const ClearAction = { type: 'CLEAR' };
1278
+ class IntegrationState {
1279
+ constructor() {
1280
+ this.stateSubj$ = new BehaviorSubject({});
1281
+ this.action$ = new BehaviorSubject(InitAction);
1282
+ }
1283
+ get state$() {
1284
+ return this.stateSubj$.asObservable();
1285
+ }
1286
+ get state() {
1287
+ return this.stateSubj$.getValue();
1288
+ }
1289
+ patchState(update) {
1290
+ this.stateSubj$.next(Object.assign(Object.assign({}, this.stateSubj$.getValue()), update));
1291
+ }
1292
+ dispatch(action) {
1293
+ this.action$.next(action);
1294
+ }
1295
+ listen$(actionType) {
1296
+ return this.action$.pipe(filter(action => action.type === actionType), map$1(action => action.payload));
1297
+ }
1298
+ listenAll$() {
1299
+ return this.action$.asObservable();
1300
+ }
1301
+ clear() {
1302
+ this.stateSubj$.next({});
1303
+ this.action$.next(ClearAction);
1304
+ }
1305
+ }
1306
+ IntegrationState.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IntegrationState, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1307
+ IntegrationState.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IntegrationState, providedIn: 'root' });
1308
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IntegrationState, decorators: [{
1309
+ type: Injectable,
1310
+ args: [{ providedIn: 'root' }]
1311
+ }] });
1312
+
1275
1313
  var vlCmsUtils = /*#__PURE__*/Object.freeze({
1276
1314
  __proto__: null,
1277
1315
  UiBuildError: UiBuildError,
@@ -1298,7 +1336,8 @@ var vlCmsUtils = /*#__PURE__*/Object.freeze({
1298
1336
  });
1299
1337
 
1300
1338
  const vendorMap = {
1301
- '@veloce/sdk/cms': Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, vlCmsModules), vlCmsUtils), vlCmsLineItemTypes), vlInjectionTokens), { TemplatesService }),
1339
+ '@veloce/sdk/cms': Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, vlCmsModules), vlCmsUtils), vlCmsLineItemTypes), vlInjectionTokens), { TemplatesService,
1340
+ IntegrationState }),
1302
1341
  '@veloce/api': {
1303
1342
  SalesforceApiService,
1304
1343
  QuoteApiService,
@@ -1384,12 +1423,13 @@ class ElementsResolver {
1384
1423
  return finalElement;
1385
1424
  }
1386
1425
  resolveElement(sourceElement) {
1426
+ var _a;
1387
1427
  const element = this.processElementMetadata(sourceElement);
1388
1428
  if (!element) {
1389
1429
  return;
1390
1430
  }
1391
1431
  const config = CONFIG[element.type];
1392
- const defaultPlugins = DEFAULT_PLUGINS[this.uiDef.type];
1432
+ const defaultPlugins = (_a = DEFAULT_PLUGINS[this.uiDef.type]) !== null && _a !== void 0 ? _a : [];
1393
1433
  if (!config) {
1394
1434
  console.warn(`Unknown element type "${element.type}"`);
1395
1435
  return;
@@ -1457,11 +1497,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
1457
1497
  }], ctorParameters: function () { return [{ type: i0.Compiler }, { type: DynamicModuleService }]; } });
1458
1498
 
1459
1499
  class PreviewComponent {
1460
- constructor(launcherService, configurationService, messageService, runtimeService) {
1500
+ constructor(launcherService, configurationService, messageService, runtimeService, integrationState) {
1461
1501
  this.launcherService = launcherService;
1462
1502
  this.configurationService = configurationService;
1463
1503
  this.messageService = messageService;
1464
1504
  this.runtimeService = runtimeService;
1505
+ this.integrationState = integrationState;
1506
+ this.clearState = true;
1465
1507
  this.state$ = new BehaviorSubject({ loading: true, failure: false });
1466
1508
  this.elements = [];
1467
1509
  this.destroy$ = new Subject();
@@ -1473,6 +1515,9 @@ class PreviewComponent {
1473
1515
  this.destroy$.next();
1474
1516
  this.destroy$.complete();
1475
1517
  this.configurationService.reset();
1518
+ if (this.clearState) {
1519
+ this.integrationState.clear();
1520
+ }
1476
1521
  }
1477
1522
  initializeConfiguration$() {
1478
1523
  var _a;
@@ -1491,12 +1536,15 @@ class PreviewComponent {
1491
1536
  .pipe(switchMap(() => this.configurationService.configure()));
1492
1537
  }
1493
1538
  elementToMetadataSafe(elements) {
1539
+ var _a, _b;
1494
1540
  try {
1495
1541
  return elements.map(element => elementToMetadata(element));
1496
1542
  }
1497
1543
  catch (e) {
1498
1544
  console.error(e);
1499
- this.messageService.add({ severity: 'error', summary: String(e) });
1545
+ if (!((_b = (_a = this.uiDefinition) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.suppressToastMessages)) {
1546
+ this.messageService.add({ severity: 'error', summary: String(e) });
1547
+ }
1500
1548
  return [];
1501
1549
  }
1502
1550
  }
@@ -1509,18 +1557,19 @@ class PreviewComponent {
1509
1557
  const compilation$ = this.launcherService.compileModule(this.elements, uiDefinitionMeta);
1510
1558
  forkJoin([compilation$, this.initializeConfiguration$()])
1511
1559
  .pipe(tap$1(() => this.state$.next({ loading: false, failure: false })), catchError$1(error => {
1512
- this.messageService.add({
1513
- severity: 'error',
1514
- summary: error,
1515
- });
1560
+ var _a, _b;
1561
+ console.error(error);
1562
+ if (!((_b = (_a = this.uiDefinition) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.suppressToastMessages)) {
1563
+ this.messageService.add({ severity: 'error', summary: error });
1564
+ }
1516
1565
  this.state$.next({ loading: false, failure: true });
1517
1566
  return of();
1518
1567
  }), takeUntil(this.destroy$))
1519
1568
  .subscribe();
1520
1569
  }
1521
1570
  }
1522
- PreviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewComponent, deps: [{ token: LauncherService }, { token: ConfigurationService }, { token: i2.MessageService }, { token: ConfigurationRuntimeService }], target: i0.ɵɵFactoryTarget.Component });
1523
- PreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: PreviewComponent, selector: "vl-cms-preview", inputs: { modelId: "modelId", uiDefinition: "uiDefinition" }, providers: [IOProviderService, TemplatesService], ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-element-renderer *ngFor=\"let el of elements\" [meta]=\"el\"></vl-cms-element-renderer>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [":host{flex-grow:1;display:flex;flex-direction:column;height:100%}\n"], components: [{ type: i5$1.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.ShadowDom });
1571
+ PreviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewComponent, deps: [{ token: LauncherService }, { token: ConfigurationService }, { token: i2.MessageService }, { token: ConfigurationRuntimeService }, { token: IntegrationState }], target: i0.ɵɵFactoryTarget.Component });
1572
+ PreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: PreviewComponent, selector: "vl-cms-preview", inputs: { modelId: "modelId", uiDefinition: "uiDefinition", clearState: "clearState" }, providers: [IOProviderService, TemplatesService], ngImport: i0, template: "<ng-container *ngIf=\"state$ | async as state\">\n <vl-loader *ngIf=\"state.loading; else content\" [label]=\"'Loading UI'\"></vl-loader>\n\n <ng-template #content>\n <ng-container *ngIf=\"!state.failure\">\n <vl-cms-element-renderer *ngFor=\"let el of elements\" [meta]=\"el\"></vl-cms-element-renderer>\n </ng-container>\n </ng-template>\n</ng-container>\n", styles: [":host{flex-grow:1;display:flex;flex-direction:column;height:100%}\n"], components: [{ type: i6.LoaderComponent, selector: "vl-loader", inputs: ["label", "overlayVisible"] }, { type: ElementRendererComponent, selector: "vl-cms-element-renderer", inputs: ["meta"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i8.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.ShadowDom });
1524
1573
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewComponent, decorators: [{
1525
1574
  type: Component,
1526
1575
  args: [{
@@ -1532,10 +1581,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
1532
1581
  // use shadow DOM to prevent UI from being affected by global styles
1533
1582
  encapsulation: ViewEncapsulation.ShadowDom,
1534
1583
  }]
1535
- }], ctorParameters: function () { return [{ type: LauncherService }, { type: ConfigurationService }, { type: i2.MessageService }, { type: ConfigurationRuntimeService }]; }, propDecorators: { modelId: [{
1584
+ }], ctorParameters: function () { return [{ type: LauncherService }, { type: ConfigurationService }, { type: i2.MessageService }, { type: ConfigurationRuntimeService }, { type: IntegrationState }]; }, propDecorators: { modelId: [{
1536
1585
  type: Input
1537
1586
  }], uiDefinition: [{
1538
1587
  type: Input
1588
+ }], clearState: [{
1589
+ type: Input
1539
1590
  }] } });
1540
1591
 
1541
1592
  class ElementRendererModule {
@@ -1569,12 +1620,13 @@ class PreviewModule {
1569
1620
  }
1570
1621
  PreviewModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1571
1622
  PreviewModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewModule, declarations: [PreviewComponent], imports: [CommonModule, LoaderModule, ElementRendererModule, ElementChildrenModule], exports: [PreviewComponent] });
1572
- PreviewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewModule, imports: [[CommonModule, LoaderModule, ElementRendererModule, ElementChildrenModule]] });
1623
+ PreviewModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewModule, providers: [IntegrationState], imports: [[CommonModule, LoaderModule, ElementRendererModule, ElementChildrenModule]] });
1573
1624
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreviewModule, decorators: [{
1574
1625
  type: NgModule,
1575
1626
  args: [{
1576
1627
  declarations: [PreviewComponent],
1577
1628
  imports: [CommonModule, LoaderModule, ElementRendererModule, ElementChildrenModule],
1629
+ providers: [IntegrationState],
1578
1630
  exports: [PreviewComponent],
1579
1631
  }]
1580
1632
  }] });
@@ -1617,29 +1669,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
1617
1669
  class LauncherModule {
1618
1670
  }
1619
1671
  LauncherModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LauncherModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1620
- LauncherModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LauncherModule, imports: [CommonModule, CoreModule, ConfigurationModule] });
1621
- LauncherModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LauncherModule, providers: [
1622
- LauncherService,
1623
- DynamicModuleService,
1624
- SalesforceApiService,
1625
- QuoteApiService,
1626
- DocumentTemplatesApiService,
1627
- DocumentAttachmentApiService,
1628
- DialogService,
1629
- ], imports: [[CommonModule, CoreModule, ConfigurationModule]] });
1672
+ LauncherModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LauncherModule, imports: [CommonModule, CoreModule, ApiModule, ConfigurationModule] });
1673
+ LauncherModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LauncherModule, providers: [LauncherService, IntegrationState, DynamicModuleService, DialogService], imports: [[CommonModule, CoreModule, ApiModule, ConfigurationModule]] });
1630
1674
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LauncherModule, decorators: [{
1631
1675
  type: NgModule,
1632
1676
  args: [{
1633
- imports: [CommonModule, CoreModule, ConfigurationModule],
1634
- providers: [
1635
- LauncherService,
1636
- DynamicModuleService,
1637
- SalesforceApiService,
1638
- QuoteApiService,
1639
- DocumentTemplatesApiService,
1640
- DocumentAttachmentApiService,
1641
- DialogService,
1642
- ],
1677
+ imports: [CommonModule, CoreModule, ApiModule, ConfigurationModule],
1678
+ providers: [LauncherService, IntegrationState, DynamicModuleService, DialogService],
1643
1679
  }]
1644
1680
  }] });
1645
1681
 
@@ -1647,5 +1683,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
1647
1683
  * Generated bundle index. Do not edit.
1648
1684
  */
1649
1685
 
1650
- export { ConfigurationRuntimeService, ConfigurationService, DEFAULT_PLUGINS_TOKEN, ELEMENT_CONFIG, ELEMENT_METADATA, ElementComponent, ElementDefinition, LauncherModule, LauncherService, LineItemWorker, PreviewComponent, PreviewModule, SHARED_ELEMENT_METADATA, TemplatesService, UI_DEFINITION_METADATA, UiBuildError, VENDOR_MAP, doesElementSupportIO, elementToMetadata, extendElementMetadata, extractElementMetadata, findLineItem, generateLineItem, getAttributeValue, getAttributes, getDefaultLineItem, getElementConfig, getRecommendedPrices, insertLineItem, mapAttributes, metadataToElement, normalizeElementMetadata, parseBoundPath, patchAttributes, removeLineItem, replaceLineItem, stringifyElementMetadata, upsertAttributes };
1686
+ export { ConfigurationRuntimeService, ConfigurationService, DEFAULT_PLUGINS_TOKEN, ELEMENT_CONFIG, ELEMENT_METADATA, ElementComponent, ElementDefinition, IntegrationState, LauncherModule, LauncherService, LineItemWorker, PreviewComponent, PreviewModule, SHARED_ELEMENT_METADATA, TemplatesService, UI_DEFINITION_METADATA, UiBuildError, VENDOR_MAP, doesElementSupportIO, elementToMetadata, extendElementMetadata, extractElementMetadata, findLineItem, generateLineItem, getAttributeValue, getAttributes, getDefaultLineItem, getElementConfig, getRecommendedPrices, insertLineItem, mapAttributes, metadataToElement, normalizeElementMetadata, parseBoundPath, patchAttributes, removeLineItem, replaceLineItem, stringifyElementMetadata, upsertAttributes };
1651
1687
  //# sourceMappingURL=veloce-sdk-cms.js.map