@veloceapps/sdk 5.0.9 → 5.0.11
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 +102 -51
- package/bundles/veloce-sdk-cms.umd.js.map +1 -1
- package/bundles/veloce-sdk-core.umd.js.map +1 -1
- package/bundles/veloce-sdk-runtime.umd.js.map +1 -1
- package/bundles/veloce-sdk.umd.js +4 -2
- package/bundles/veloce-sdk.umd.js.map +1 -1
- package/cms/components/element-renderer/element-renderer.component.d.ts +1 -0
- package/cms/services/launcher.service.d.ts +3 -3
- package/cms/types/compilation.types.d.ts +6 -0
- package/cms/types/index.d.ts +1 -0
- package/cms/utils/elements-resolver.d.ts +3 -0
- package/cms/vendor-map.d.ts +124 -116
- package/core/modules/configuration/services/configuration-runtime.service.d.ts +1 -1
- package/esm2015/cms/components/element-renderer/element-renderer.component.js +23 -2
- package/esm2015/cms/components/element.component.js +1 -1
- package/esm2015/cms/components/preview/preview.component.js +7 -4
- package/esm2015/cms/decorators/element.decorator.js +1 -1
- package/esm2015/cms/directives/custom-template.directive.js +1 -1
- package/esm2015/cms/engine/models/entity.js +1 -1
- package/esm2015/cms/modules/federated/federated.component.js +1 -1
- package/esm2015/cms/modules/federated/federated.utils.js +1 -1
- package/esm2015/cms/plugins/configuration.plugin.js +1 -1
- package/esm2015/cms/plugins/script.plugin.js +1 -1
- package/esm2015/cms/services/dynamic-module.service.js +1 -1
- package/esm2015/cms/services/element-context.service.js +1 -1
- package/esm2015/cms/services/integration.state.js +1 -1
- package/esm2015/cms/services/launcher.service.js +10 -10
- package/esm2015/cms/services/templates.service.js +1 -1
- package/esm2015/cms/types/compilation.types.js +2 -0
- package/esm2015/cms/types/index.js +2 -1
- package/esm2015/cms/utils/element.utils.js +1 -1
- package/esm2015/cms/utils/elements-resolver.js +52 -30
- package/esm2015/core/modules/configuration/services/configuration-runtime.service.js +1 -1
- package/esm2015/core/modules/configuration/services/configuration.service.js +1 -1
- package/esm2015/core/modules/configuration/services/runtime-context.service.js +1 -1
- package/esm2015/core/modules/flow-configuration/services/flow-update.service.js +1 -1
- package/esm2015/core/services/context.service.js +1 -1
- package/esm2015/core/services/quote-draft.service.js +1 -1
- package/esm2015/core/utils/line-item.utils.js +1 -1
- package/esm2015/runtime/components/component-preview/component-preview.component.js +1 -1
- package/esm2015/runtime/components/section-renderer/section-renderer.component.js +1 -1
- package/esm2015/runtime/components/ui-runtime/runtime.component.js +1 -1
- package/esm2015/runtime/components/ui-runtime-preview/runtime-preview.component.js +1 -1
- package/esm2015/runtime/execution/components/children-placeholder/children-placeholder.component.js +1 -1
- package/esm2015/runtime/execution/components/context-provider/context-provider.component.js +1 -1
- package/esm2015/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.js +1 -1
- package/esm2015/runtime/execution/components/federated/federated.component.js +1 -1
- package/esm2015/runtime/execution/components/velo-attribute/velo-attribute.component.js +1 -1
- package/esm2015/runtime/execution/components/velo-multiselect/velo-multiselect.component.js +1 -1
- package/esm2015/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.js +1 -1
- package/esm2015/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.js +1 -1
- package/esm2015/runtime/execution/components/velo-port-radio/velo-port-radio.component.js +1 -1
- package/esm2015/runtime/execution/components/velo-type/velo-type.component.js +1 -1
- package/esm2015/runtime/execution/directives/section-script.directive.js +1 -1
- package/esm2015/runtime/execution/directives/sf-query.directive.js +1 -1
- package/esm2015/runtime/execution/directives/velo-attribute.directive.js +1 -1
- package/esm2015/runtime/execution/directives/velo-port.directive.js +1 -1
- package/esm2015/runtime/execution/directives/vl-approval.directive.js +1 -1
- package/esm2015/runtime/execution/directives/vl-document-attachments.directive.js +1 -1
- package/esm2015/runtime/execution/directives/vl-document-templates.directive.js +1 -1
- package/esm2015/runtime/execution/directives/vl-quote.directive.js +1 -1
- package/esm2015/runtime/execution/directives/vl-ramp.directive.js +1 -1
- package/esm2015/runtime/execution/utils/federated.util.js +1 -1
- package/esm2015/runtime/services/cart.service.js +1 -1
- package/esm2015/runtime/services/collapsible-state.service.js +1 -1
- package/esm2015/runtime/services/configuration.service.js +1 -1
- package/esm2015/runtime/services/current-state.service.js +1 -1
- package/esm2015/runtime/services/form-scope.service.js +1 -1
- package/esm2015/runtime/services/product-model-cache.service.js +1 -1
- package/esm2015/runtime/services/runtime-context.service.js +1 -1
- package/esm2015/runtime/services/runtime-form.service.js +2 -2
- package/esm2015/runtime/services/runtime.service.js +1 -1
- package/esm2015/runtime/services/section-helper.service.js +1 -1
- package/esm2015/runtime/services/section-scope.service.js +1 -1
- package/esm2015/runtime/services/section-store.service.js +1 -1
- package/esm2015/runtime/services/section.service.js +1 -1
- package/esm2015/runtime/types/script-registry.types.js +1 -1
- package/esm2015/runtime/utils/line-item.util.js +1 -1
- package/esm2015/runtime/utils/sections-binder.helper.js +1 -1
- package/esm2015/src/components/dialog/dialog.component.js +1 -1
- package/esm2015/src/components/doc-gen/doc-gen.component.js +2 -2
- package/esm2015/src/components/header/cart-overlay/cart-preview.component.js +2 -2
- package/esm2015/src/components/header/header.component.js +4 -2
- package/esm2015/src/components/header/metrics/metrics.component.js +1 -1
- package/esm2015/src/flow-routing.module.js +1 -1
- package/esm2015/src/flow.component.js +1 -1
- package/esm2015/src/guards/product-unload.guard.js +1 -1
- package/esm2015/src/guards/root.guard.js +1 -1
- package/esm2015/src/pages/catalog/catalog.component.js +1 -1
- package/esm2015/src/pages/debug/debug.component.js +1 -1
- package/esm2015/src/pages/legacy-product/legacy-product.component.js +1 -1
- package/esm2015/src/pages/product/product.component.js +1 -1
- package/esm2015/src/pages/record-not-found/record-not-found.component.js +1 -1
- package/esm2015/src/pages/shopping-cart/shopping-cart.component.js +1 -1
- package/esm2015/src/resolvers/flow.resolver.js +1 -1
- package/esm2015/src/resolvers/quote.resolver.js +1 -1
- package/esm2015/src/services/flow-router.service.js +1 -1
- package/fesm2015/veloce-sdk-cms.js +86 -40
- package/fesm2015/veloce-sdk-cms.js.map +1 -1
- package/fesm2015/veloce-sdk-core.js.map +1 -1
- package/fesm2015/veloce-sdk-runtime.js +1 -1
- package/fesm2015/veloce-sdk-runtime.js.map +1 -1
- package/fesm2015/veloce-sdk.js +4 -2
- package/fesm2015/veloce-sdk.js.map +1 -1
- package/package.json +1 -1
- package/runtime/services/runtime-form.service.d.ts +3 -3
- package/runtime/utils/line-item.util.d.ts +1 -1
- package/src/guards/product-unload.guard.d.ts +2 -1
- package/src/resolvers/flow.resolver.d.ts +1 -1
package/fesm2015/veloce-sdk.js
CHANGED
@@ -449,7 +449,7 @@ class CartPreviewComponent {
|
|
449
449
|
}
|
450
450
|
}
|
451
451
|
CartPreviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CartPreviewComponent, deps: [{ token: i1$2.FlowConfigurationService }, { token: FlowRouterService }, { token: i1$2.ProductImagesService }, { token: i1$2.QuoteDraftService }], target: i0.ɵɵFactoryTarget.Component });
|
452
|
-
CartPreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CartPreviewComponent, selector: "vl-cart-preview", inputs: { products: "products" }, viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: OverlayPanel, descendants: true }], usesOnChanges: true, ngImport: i0, 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
|
452
|
+
CartPreviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: CartPreviewComponent, selector: "vl-cart-preview", inputs: { products: "products" }, viewQueries: [{ propertyName: "overlayPanel", first: true, predicate: OverlayPanel, descendants: true }], usesOnChanges: true, ngImport: i0, 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 </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 </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;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$1.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { type: i4.VirtualScroller, selector: "p-virtualScroller", inputs: ["value", "itemSize", "style", "styleClass", "scrollHeight", "lazy", "rows", "minBufferPx", "maxBufferPx", "delay", "trackBy", "totalRecords", "first", "cache"], outputs: ["onLazyLoad"] }, { type: i5.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass"], outputs: ["onClick", "onFocus", "onBlur"] }, { type: i6.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$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { type: i3.LetDirective, selector: "[vlLet]", inputs: ["vlLet"] }, { type: i5$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i10.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }], pipes: { "async": i5$1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
453
453
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CartPreviewComponent, decorators: [{
|
454
454
|
type: Component,
|
455
455
|
args: [{
|
@@ -1095,7 +1095,9 @@ class FlowHeaderComponent {
|
|
1095
1095
|
!this.quoteDraftService.hasAssets);
|
1096
1096
|
}
|
1097
1097
|
isUpsellQuoteWithoutChanges() {
|
1098
|
-
|
1098
|
+
const noUpdates = this.quoteDraftService.activeCurrentState.every(lineItem => lineItem.actionCode === 'EXIST');
|
1099
|
+
const sameNumberOfProducts = this.quoteDraftService.getInitialCurrentState().length === this.quoteDraftService.activeCurrentState.length;
|
1100
|
+
return noUpdates && sameNumberOfProducts;
|
1099
1101
|
}
|
1100
1102
|
}
|
1101
1103
|
FlowHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FlowHeaderComponent, deps: [{ token: i1$2.ContextService }, { token: i1$2.QuoteDraftService }, { token: i2.QuoteApiService }, { token: i2.SalesforceApiService }, { token: i1$2.FlowConfigurationService }, { token: FlowRouterService }, { token: FlowDialogService }, { token: i1$1.IntegrationState }], target: i0.ɵɵFactoryTarget.Component });
|