@veloceapps/sdk 7.0.2-2 → 7.0.2-21
Sign up to get free protection for your applications and to get access to all the features.
- package/cms/cms.actions.d.ts +7 -1
- package/cms/components/element-children/element-children.component.d.ts +3 -1
- package/cms/components/element-tools-panel/element-tools-panel.component.d.ts +14 -0
- package/cms/components/preview/preview.module.d.ts +2 -1
- package/cms/components/preview/preview.types.d.ts +4 -0
- package/cms/injection-tokens.d.ts +1 -3
- package/cms/modules/runtime/services/compilation.service.d.ts +2 -1
- package/cms/modules/runtime/services/runtime-editor.service.d.ts +6 -4
- package/cms/modules/runtime/types/runtime.actions.d.ts +5 -2
- package/cms/plugins/element-hover.plugin.d.ts +32 -0
- package/cms/plugins/script.plugin.d.ts +0 -3
- package/cms/types/common.types.d.ts +11 -1
- package/cms/types/index.d.ts +2 -0
- package/cms/types/layouts.types.d.ts +28 -2
- package/cms/types/pages.types.d.ts +1 -0
- package/cms/utils/elements-resolver.d.ts +5 -1
- package/cms/utils/script.utils.d.ts +2 -0
- package/cms/vendor-map.d.ts +7 -5
- package/core/modules/configuration/services/configuration.service.d.ts +3 -3
- package/core/types/ui-definition.types.d.ts +7 -2
- package/core/utils/line-item.utils.d.ts +4 -2
- package/core/utils/line-item.worker.d.ts +2 -2
- package/esm2020/cms/cms.actions.mjs +11 -2
- package/esm2020/cms/cms.elements.mjs +14 -3
- package/esm2020/cms/cms.layouts.mjs +39 -1
- package/esm2020/cms/components/element-children/element-children.component.mjs +11 -6
- package/esm2020/cms/components/element-drop-handle/element-drop-handle.component.mjs +2 -2
- package/esm2020/cms/components/element-tools-panel/element-tools-panel.component.mjs +35 -0
- package/esm2020/cms/components/preview/preview.module.mjs +22 -4
- package/esm2020/cms/components/preview/preview.types.mjs +1 -1
- package/esm2020/cms/injection-tokens.mjs +1 -2
- package/esm2020/cms/modules/runtime/services/compilation.service.mjs +3 -3
- package/esm2020/cms/modules/runtime/services/runtime-editor.service.mjs +5 -3
- package/esm2020/cms/modules/runtime/services/runtime.service.mjs +2 -2
- package/esm2020/cms/modules/runtime/types/runtime.actions.mjs +1 -1
- package/esm2020/cms/plugins/element-hover.plugin.mjs +112 -0
- package/esm2020/cms/plugins/script.plugin.mjs +6 -40
- package/esm2020/cms/services/integration.state.mjs +3 -6
- package/esm2020/cms/services/io-provider.service.mjs +7 -5
- package/esm2020/cms/types/common.types.mjs +1 -1
- package/esm2020/cms/types/index.mjs +3 -1
- package/esm2020/cms/types/layouts.types.mjs +70 -1
- package/esm2020/cms/types/pages.types.mjs +2 -0
- package/esm2020/cms/utils/elements-resolver.mjs +22 -8
- package/esm2020/cms/utils/script.utils.mjs +42 -0
- package/esm2020/cms/vendor-map.mjs +3 -2
- package/esm2020/core/modules/configuration/services/configuration.service.mjs +6 -5
- package/esm2020/core/types/ui-definition.types.mjs +1 -1
- package/esm2020/core/utils/line-item.utils.mjs +35 -16
- package/esm2020/core/utils/line-item.worker.mjs +5 -5
- package/esm2020/src/components/header/header.component.mjs +15 -3
- package/esm2020/src/flow-routing.module.mjs +1 -1
- package/fesm2015/veloceapps-sdk-cms.mjs +343 -108
- package/fesm2015/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk-core.mjs +46 -24
- package/fesm2015/veloceapps-sdk-core.mjs.map +1 -1
- package/fesm2015/veloceapps-sdk.mjs +15 -2
- package/fesm2015/veloceapps-sdk.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-cms.mjs +424 -122
- package/fesm2020/veloceapps-sdk-cms.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk-core.mjs +46 -24
- package/fesm2020/veloceapps-sdk-core.mjs.map +1 -1
- package/fesm2020/veloceapps-sdk.mjs +14 -2
- package/fesm2020/veloceapps-sdk.mjs.map +1 -1
- package/package.json +1 -1
@@ -503,18 +503,25 @@ const removeLineItem = (lineItem, idToRemove) => {
|
|
503
503
|
.filter(r => !!r),
|
504
504
|
};
|
505
505
|
};
|
506
|
-
const replaceLineItem = (lineItem, replaceTo) => {
|
506
|
+
const replaceLineItem = (lineItem, replaceTo, skipCardinalityCalculation = false) => {
|
507
507
|
if (lineItem.id === replaceTo.id) {
|
508
|
-
|
508
|
+
if (!skipCardinalityCalculation) {
|
509
|
+
return { ...recalculateCardinalityVariables(lineItem, replaceTo) };
|
510
|
+
}
|
511
|
+
else {
|
512
|
+
return { ...replaceTo };
|
513
|
+
}
|
509
514
|
}
|
510
515
|
return {
|
511
516
|
...lineItem,
|
512
|
-
lineItems: lineItem.lineItems.map(li => replaceLineItem(li, replaceTo)),
|
517
|
+
lineItems: lineItem.lineItems.map(li => replaceLineItem(li, replaceTo, skipCardinalityCalculation)),
|
513
518
|
};
|
514
519
|
};
|
515
520
|
const calculateCardinalityVariables = (lineItems) => {
|
516
521
|
const cardVars = new Map();
|
517
|
-
lineItems
|
522
|
+
lineItems
|
523
|
+
.filter(({ port, type }) => !!port && !!type)
|
524
|
+
.forEach(li => {
|
518
525
|
const cardinalityVariableName = `#CV-${li.type}@${li.port}`;
|
519
526
|
cardVars.set(cardinalityVariableName, (cardVars.get(cardinalityVariableName) ?? 0) + li.qty);
|
520
527
|
});
|
@@ -554,13 +561,13 @@ const upsertAttributes = (originalAttributes, attributesToUpsert) => {
|
|
554
561
|
];
|
555
562
|
}, originalAttributes);
|
556
563
|
};
|
557
|
-
const patchAttributes = (rootLineItem, id, attrs) => {
|
564
|
+
const patchAttributes = (rootLineItem, id, attrs, skipCardinalityCalculation = false) => {
|
558
565
|
const lineItem = findLineItem(id, [rootLineItem]);
|
559
566
|
if (!lineItem) {
|
560
567
|
return rootLineItem;
|
561
568
|
}
|
562
569
|
const attributes = upsertAttributes(lineItem.attributes, attrs);
|
563
|
-
return replaceLineItem(rootLineItem, { ...lineItem, attributes });
|
570
|
+
return replaceLineItem(rootLineItem, { ...lineItem, attributes }, skipCardinalityCalculation);
|
564
571
|
};
|
565
572
|
const getAttributeValue = (attributes, name) => attributes.find(attr => attr.name === name)?.value;
|
566
573
|
const generateLineItem = (port, type, parentId, attributes = [], lineItems = []) => {
|
@@ -588,19 +595,31 @@ const getRecommendedPrices = (portDomain, type) => {
|
|
588
595
|
};
|
589
596
|
const generateModifiedAssetsMap = (lineItems) => {
|
590
597
|
return lineItems.reduce((acc, li) => {
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
}
|
598
|
+
const isModified = isLineItemModified(li);
|
599
|
+
if (!isModified) {
|
600
|
+
return acc;
|
601
|
+
}
|
602
|
+
const target = getOriginParent(lineItems, li);
|
603
|
+
const id = target?.assetId ?? target?.openOrderLineItemId;
|
604
|
+
if (id) {
|
605
|
+
acc[id] = true;
|
600
606
|
}
|
601
607
|
return acc;
|
602
608
|
}, {});
|
603
609
|
};
|
610
|
+
const getOriginParent = (lineItems, currentLineItem) => {
|
611
|
+
let target = currentLineItem;
|
612
|
+
while (target && target.rampInstanceId) {
|
613
|
+
target = lineItems.find(sub => sub.id === currentLineItem.rampInstanceId);
|
614
|
+
}
|
615
|
+
return target;
|
616
|
+
};
|
617
|
+
const isLineItemModified = (lineItem) => {
|
618
|
+
if (lineItem.actionCode === 'EXIST' && lineItem.status === 'PENDING') {
|
619
|
+
return false;
|
620
|
+
}
|
621
|
+
return lineItem.actionCode !== 'EXIST';
|
622
|
+
};
|
604
623
|
const multiplyLineItems = (lineItem, qty, split) => {
|
605
624
|
if (split) {
|
606
625
|
const unifyIds = (lineItem) => ({
|
@@ -629,8 +648,10 @@ var lineItem_utils = /*#__PURE__*/Object.freeze({
|
|
629
648
|
generateModifiedAssetsMap: generateModifiedAssetsMap,
|
630
649
|
getAttributeValue: getAttributeValue,
|
631
650
|
getAttributes: getAttributes,
|
651
|
+
getOriginParent: getOriginParent,
|
632
652
|
getRecommendedPrices: getRecommendedPrices,
|
633
653
|
insertLineItem: insertLineItem,
|
654
|
+
isLineItemModified: isLineItemModified,
|
634
655
|
mapAttributes: mapAttributes,
|
635
656
|
multiplyLineItems: multiplyLineItems,
|
636
657
|
patchAttributes: patchAttributes,
|
@@ -650,11 +671,11 @@ class LineItemWorker {
|
|
650
671
|
remove(id) {
|
651
672
|
return new LineItemWorker(removeLineItem(this.li, id));
|
652
673
|
}
|
653
|
-
replace(toReplace) {
|
654
|
-
return new LineItemWorker(replaceLineItem(this.li, toReplace));
|
674
|
+
replace(toReplace, skipCardinalityCalculation = false) {
|
675
|
+
return new LineItemWorker(replaceLineItem(this.li, toReplace, skipCardinalityCalculation));
|
655
676
|
}
|
656
|
-
patchAttribute(attrs, id) {
|
657
|
-
return new LineItemWorker(patchAttributes(this.li, id ?? this.li.id, attrs));
|
677
|
+
patchAttribute(attrs, id, skipCardinalityCalculation = false) {
|
678
|
+
return new LineItemWorker(patchAttributes(this.li, id ?? this.li.id, attrs, skipCardinalityCalculation));
|
658
679
|
}
|
659
680
|
}
|
660
681
|
|
@@ -680,11 +701,12 @@ class ConfigurationService {
|
|
680
701
|
this.charges.next({});
|
681
702
|
this.pricePlans.next({});
|
682
703
|
}
|
683
|
-
patch$(lineItem) {
|
704
|
+
patch$(lineItem, options) {
|
684
705
|
if (!this.lineItem.value) {
|
685
706
|
return throwError(() => new Error(`Source LineItem not found`));
|
686
707
|
}
|
687
|
-
|
708
|
+
const skipCardinalityCalculation = options?.skipCardinalityCalculation || this.contextSnapshot.properties['#skipCardinalityCalculation'] === 'true';
|
709
|
+
this.configurableRamp = new LineItemWorker(this.lineItem.value).replace(lineItem, skipCardinalityCalculation).li;
|
688
710
|
return this.configure().pipe(catchError(error => {
|
689
711
|
console.error(error);
|
690
712
|
if (!this.runtimeService.uiDefinitionProperties.suppressToastMessages) {
|
@@ -699,8 +721,8 @@ class ConfigurationService {
|
|
699
721
|
}
|
700
722
|
}));
|
701
723
|
}
|
702
|
-
patch(lineItem) {
|
703
|
-
this.patch$(lineItem).subscribe();
|
724
|
+
patch(lineItem, options) {
|
725
|
+
this.patch$(lineItem, options).subscribe();
|
704
726
|
}
|
705
727
|
setConfigurableRamp(lineItem) {
|
706
728
|
this.configurableRamp = lineItem;
|
@@ -1285,5 +1307,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
|
|
1285
1307
|
* Generated bundle index. Do not edit.
|
1286
1308
|
*/
|
1287
1309
|
|
1288
|
-
export { ConfigurationRuntimeService, ConfigurationService, ContextService, FlowConfigurationModule, FlowConfigurationService, FlowUpdateService, LineItemWorker, MetricsCalculationService, ProductImagesService, QuoteDraftService, RuntimeMode, RuntimeOperation, RuntimeStep, SdkCoreModule, UI_DEFINITION_VERSION, calculateCardinalityVariables, extractMetadata, findLineItem, findLineItemWithComparator, generateLineItem, generateModifiedAssetsMap, getAttributeValue, getAttributes, getDefaultLineItem, getRecommendedPrices, insertLineItem, lineItem_utils as lineItemUtils, mapAttributes, multiplyLineItems, patchAttributes, recalculateCardinalityVariables, removeLineItem, replaceLineItem, upsertAttributes };
|
1310
|
+
export { ConfigurationRuntimeService, ConfigurationService, ContextService, FlowConfigurationModule, FlowConfigurationService, FlowUpdateService, LineItemWorker, MetricsCalculationService, ProductImagesService, QuoteDraftService, RuntimeMode, RuntimeOperation, RuntimeStep, SdkCoreModule, UI_DEFINITION_VERSION, calculateCardinalityVariables, extractMetadata, findLineItem, findLineItemWithComparator, generateLineItem, generateModifiedAssetsMap, getAttributeValue, getAttributes, getDefaultLineItem, getOriginParent, getRecommendedPrices, insertLineItem, isLineItemModified, lineItem_utils as lineItemUtils, mapAttributes, multiplyLineItems, patchAttributes, recalculateCardinalityVariables, removeLineItem, replaceLineItem, upsertAttributes };
|
1289
1311
|
//# sourceMappingURL=veloceapps-sdk-core.mjs.map
|