@veloceapps/sdk 7.0.2-37 → 7.0.2-39

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. package/core/core.module.d.ts +2 -0
  2. package/core/directives/directives.module.d.ts +7 -0
  3. package/core/directives/index.d.ts +2 -0
  4. package/core/directives/primeng-calendar.directive.d.ts +14 -0
  5. package/core/index.d.ts +2 -0
  6. package/core/pipes/date.pipe.d.ts +12 -0
  7. package/core/pipes/index.d.ts +4 -0
  8. package/core/pipes/number.pipe.d.ts +10 -0
  9. package/core/pipes/pipes.module.d.ts +9 -0
  10. package/core/pipes/price.pipe.d.ts +10 -0
  11. package/core/services/runtime-settings.service.d.ts +3 -0
  12. package/core/types/formatting-settings.types.d.ts +11 -0
  13. package/core/types/index.d.ts +1 -0
  14. package/esm2020/cms/modules/runtime/services/compilation.service.mjs +3 -1
  15. package/esm2020/core/core.module.mjs +18 -1
  16. package/esm2020/core/directives/directives.module.mjs +16 -0
  17. package/esm2020/core/directives/index.mjs +3 -0
  18. package/esm2020/core/directives/primeng-calendar.directive.mjs +41 -0
  19. package/esm2020/core/index.mjs +3 -1
  20. package/esm2020/core/modules/configuration/configuration.module.mjs +2 -2
  21. package/esm2020/core/pipes/date.pipe.mjs +38 -0
  22. package/esm2020/core/pipes/index.mjs +5 -0
  23. package/esm2020/core/pipes/number.pipe.mjs +27 -0
  24. package/esm2020/core/pipes/pipes.module.mjs +18 -0
  25. package/esm2020/core/pipes/price.pipe.mjs +30 -0
  26. package/esm2020/core/services/runtime-settings.service.mjs +31 -5
  27. package/esm2020/core/types/formatting-settings.types.mjs +3 -0
  28. package/esm2020/core/types/index.mjs +2 -1
  29. package/esm2020/src/components/header/header.component.mjs +10 -17
  30. package/esm2020/src/components/header/header.module.mjs +7 -3
  31. package/esm2020/src/components/header/metrics/metrics.component.mjs +3 -3
  32. package/esm2020/src/components/header/metrics/metrics.module.mjs +7 -3
  33. package/fesm2015/veloceapps-sdk-cms.mjs +2 -1
  34. package/fesm2015/veloceapps-sdk-cms.mjs.map +1 -1
  35. package/fesm2015/veloceapps-sdk-core.mjs +199 -6
  36. package/fesm2015/veloceapps-sdk-core.mjs.map +1 -1
  37. package/fesm2015/veloceapps-sdk.mjs +26 -28
  38. package/fesm2015/veloceapps-sdk.mjs.map +1 -1
  39. package/fesm2020/veloceapps-sdk-cms.mjs +2 -1
  40. package/fesm2020/veloceapps-sdk-cms.mjs.map +1 -1
  41. package/fesm2020/veloceapps-sdk-core.mjs +191 -6
  42. package/fesm2020/veloceapps-sdk-core.mjs.map +1 -1
  43. package/fesm2020/veloceapps-sdk.mjs +26 -27
  44. package/fesm2020/veloceapps-sdk.mjs.map +1 -1
  45. package/package.json +1 -1
  46. package/src/components/header/header.component.d.ts +2 -3
  47. package/src/components/header/header.module.d.ts +2 -1
  48. package/src/components/header/metrics/metrics.module.d.ts +2 -1
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, NgModule } from '@angular/core';
3
- import { UUID, ConfigurationContext, RuntimeModel, ConfigurationContextMode, SalesforceIdUtils, ConfigurationMode, ConfigurationTranslatorUtils, ChargeGroupUtils, parseJsonSafely } from '@veloceapps/core';
2
+ import { InjectionToken, Injectable, NgModule, inject, Directive, Input, LOCALE_ID, Pipe } from '@angular/core';
3
+ import { UUID, ConfigurationContext, RuntimeModel, ConfigurationContextMode, SalesforceIdUtils, ConfigurationMode, ConfigurationTranslatorUtils, ChargeGroupUtils, DEFAULT_CURRENCY_ISO_CODE, DEFAULT_CURRENCY_SYMBOL, validateDateFormat, DEFAULT_DATE_FORMAT, DEFAULT_DECIMAL_SEPARATOR, DEFAULT_THOUSANDS_SEPARATOR, getSupportedDateFormats, DEFAULT_DECIMALS_COUNT, parseJsonSafely, formatNumber } from '@veloceapps/core';
4
4
  import { BehaviorSubject, combineLatest, zip, noop, throwError, shareReplay as shareReplay$1, tap as tap$1, map as map$2, of, switchMap as switchMap$1, catchError as catchError$1, Subject, take as take$1, distinctUntilChanged } from 'rxjs';
5
5
  import { filter, tap, map, first, switchMap, skip, take, shareReplay, catchError, finalize } from 'rxjs/operators';
6
6
  import * as i1 from '@veloceapps/api';
@@ -10,6 +10,8 @@ import { ToastType, ConfirmationComponent, ConfirmationDialogModule } from '@vel
10
10
  import * as i5 from 'primeng/api';
11
11
  import * as i6 from 'primeng/dynamicdialog';
12
12
  import moment from 'moment';
13
+ import { NgControl } from '@angular/forms';
14
+ import { DATE_PIPE_DEFAULT_OPTIONS, formatDate } from '@angular/common';
13
15
 
14
16
  const getDefaultLineItem = (context, uiDefinitionProperties, qty = 1) => {
15
17
  var _a, _b, _c;
@@ -17,6 +19,8 @@ const getDefaultLineItem = (context, uiDefinitionProperties, qty = 1) => {
17
19
  return Object.assign({ id, type: (_a = uiDefinitionProperties.rootType) !== null && _a !== void 0 ? _a : '', cfgStatus: 'Default', actionCode: 'ADD', qty, productName: ((_b = context.properties) === null || _b === void 0 ? void 0 : _b['displayName']) || context.productName, productId: (_c = context.productId) !== null && _c !== void 0 ? _c : '' }, (uiDefinitionProperties.offeringId ? { offeringId: uiDefinitionProperties.offeringId } : {}));
18
20
  };
19
21
 
22
+ const FORMATTING_SETTINGS_TOKEN = new InjectionToken('Summary of formatting settings for variant types of data, e.g. numbers, text, dates, etc');
23
+
20
24
  var RuntimeMode;
21
25
  (function (RuntimeMode) {
22
26
  RuntimeMode[RuntimeMode["TEST"] = 0] = "TEST";
@@ -1235,8 +1239,8 @@ class RuntimeSettingsService {
1235
1239
  this.configurationSettingsApiService = configurationSettingsApiService;
1236
1240
  this.configurationSettings$ = new BehaviorSubject({});
1237
1241
  this.currencySettings$ = new BehaviorSubject({
1238
- iso: 'USD',
1239
- symbol: '$',
1242
+ iso: DEFAULT_CURRENCY_ISO_CODE,
1243
+ symbol: DEFAULT_CURRENCY_SYMBOL,
1240
1244
  });
1241
1245
  this.getCurrencySymbol = (locale, currency) => {
1242
1246
  return (0)
@@ -1246,7 +1250,10 @@ class RuntimeSettingsService {
1246
1250
  };
1247
1251
  }
1248
1252
  create() {
1249
- return this.configurationSettingsApiService.fetchSettings().pipe(map$2(settings => this.parseConfigurationSettings(settings)), tap$1(configurationSettings => this.configurationSettings$.next(configurationSettings)), map$2(() => undefined));
1253
+ return this.configurationSettingsApiService.fetchSettings().pipe(map$2(settings => this.parseConfigurationSettings(settings)), tap$1(configurationSettings => {
1254
+ this.configurationSettings$.next(configurationSettings);
1255
+ this.formattingSettings = this.getFormattingSettings();
1256
+ }), map$2(() => undefined));
1250
1257
  }
1251
1258
  initCurrency(iso) {
1252
1259
  if (iso) {
@@ -1254,6 +1261,30 @@ class RuntimeSettingsService {
1254
1261
  this.currencySettings$.next({ iso, symbol });
1255
1262
  }
1256
1263
  }
1264
+ getFormattingSettings() {
1265
+ var _a, _b, _c, _d;
1266
+ if (this.formattingSettings) {
1267
+ return this.formattingSettings;
1268
+ }
1269
+ const shoppingCartSettings = (_a = this.getConfigurationSettings()['shopping-cart']) === null || _a === void 0 ? void 0 : _a.reduce((acc, setting) => {
1270
+ return Object.assign(Object.assign({}, acc), { [setting.id]: setting.properties });
1271
+ }, {});
1272
+ const currencySettings = this.getCurrencySettings();
1273
+ const dateFormat = (validateDateFormat((_b = shoppingCartSettings === null || shoppingCartSettings === void 0 ? void 0 : shoppingCartSettings.DATE_FORMAT) !== null && _b !== void 0 ? _b : '') && (shoppingCartSettings === null || shoppingCartSettings === void 0 ? void 0 : shoppingCartSettings.DATE_FORMAT)) ||
1274
+ DEFAULT_DATE_FORMAT;
1275
+ const decimalSeparator = (_c = shoppingCartSettings === null || shoppingCartSettings === void 0 ? void 0 : shoppingCartSettings.DECIMAL_SEPARATOR) !== null && _c !== void 0 ? _c : DEFAULT_DECIMAL_SEPARATOR;
1276
+ const thousandsSeparator = (_d = shoppingCartSettings === null || shoppingCartSettings === void 0 ? void 0 : shoppingCartSettings.THOUSANDS_SEPARATOR) !== null && _d !== void 0 ? _d : DEFAULT_THOUSANDS_SEPARATOR;
1277
+ return {
1278
+ currencySymbol: currencySettings.symbol,
1279
+ dateFormats: getSupportedDateFormats(dateFormat),
1280
+ decimalSeparator: (['.', ','].includes(decimalSeparator) && decimalSeparator) || DEFAULT_DECIMAL_SEPARATOR,
1281
+ decimalsCount: (!isNaN(Number(shoppingCartSettings === null || shoppingCartSettings === void 0 ? void 0 : shoppingCartSettings.PRICE_SCALE)) && Number(shoppingCartSettings === null || shoppingCartSettings === void 0 ? void 0 : shoppingCartSettings.PRICE_SCALE)) ||
1282
+ DEFAULT_DECIMALS_COUNT,
1283
+ thousandsSeparator: ['.', ',', ''].includes(thousandsSeparator)
1284
+ ? thousandsSeparator
1285
+ : DEFAULT_THOUSANDS_SEPARATOR,
1286
+ };
1287
+ }
1257
1288
  getConfigurationSettings() {
1258
1289
  return this.configurationSettings$.value;
1259
1290
  }
@@ -1286,6 +1317,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
1286
1317
  args: [{ providedIn: 'root' }]
1287
1318
  }], ctorParameters: function () { return [{ type: i1.ConfigurationSettingsApiService }]; } });
1288
1319
 
1320
+ const DEFAULT_FORMATTING_SETTINGS = {
1321
+ currencySymbol: DEFAULT_CURRENCY_SYMBOL,
1322
+ decimalsCount: DEFAULT_DECIMALS_COUNT,
1323
+ dateFormats: getSupportedDateFormats(DEFAULT_DATE_FORMAT),
1324
+ decimalSeparator: DEFAULT_DECIMAL_SEPARATOR,
1325
+ thousandsSeparator: DEFAULT_THOUSANDS_SEPARATOR,
1326
+ };
1289
1327
  class SdkCoreModule {
1290
1328
  }
1291
1329
  SdkCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -1296,6 +1334,10 @@ SdkCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
1296
1334
  ProductImagesService,
1297
1335
  MetricsCalculationService,
1298
1336
  RuntimeSettingsService,
1337
+ {
1338
+ provide: FORMATTING_SETTINGS_TOKEN,
1339
+ useExisting: RuntimeSettingsService,
1340
+ },
1299
1341
  ], imports: [ConfigurationModule, FlowConfigurationModule] });
1300
1342
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkCoreModule, decorators: [{
1301
1343
  type: NgModule,
@@ -1307,13 +1349,164 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
1307
1349
  ProductImagesService,
1308
1350
  MetricsCalculationService,
1309
1351
  RuntimeSettingsService,
1352
+ {
1353
+ provide: FORMATTING_SETTINGS_TOKEN,
1354
+ useExisting: RuntimeSettingsService,
1355
+ },
1310
1356
  ],
1311
1357
  }]
1312
1358
  }] });
1313
1359
 
1360
+ class CalendarDirective {
1361
+ constructor() {
1362
+ var _a;
1363
+ this.ngControl = inject(NgControl, { host: true, optional: true });
1364
+ this.formattingSettings = (_a = inject(FORMATTING_SETTINGS_TOKEN, { optional: true })) === null || _a === void 0 ? void 0 : _a.getFormattingSettings();
1365
+ this.destroy$ = new Subject();
1366
+ }
1367
+ set vlCalendar(calendar) {
1368
+ this.calendar = calendar;
1369
+ }
1370
+ ngOnDestroy() {
1371
+ this.destroy$.next();
1372
+ this.destroy$.complete();
1373
+ }
1374
+ ngOnInit() {
1375
+ var _a, _b;
1376
+ if (this.calendar) {
1377
+ this.calendar.dateFormat = (_b = (_a = this.formattingSettings) === null || _a === void 0 ? void 0 : _a.dateFormats.primengFormat) !== null && _b !== void 0 ? _b : DEFAULT_DATE_FORMAT;
1378
+ if (this.ngControl && this.ngControl.control) {
1379
+ const control = this.ngControl.control;
1380
+ control.setValue(control.value, { emitEvent: false });
1381
+ }
1382
+ }
1383
+ }
1384
+ }
1385
+ CalendarDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
1386
+ CalendarDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: CalendarDirective, selector: "[vlCalendar]", inputs: { vlCalendar: "vlCalendar" }, ngImport: i0 });
1387
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: CalendarDirective, decorators: [{
1388
+ type: Directive,
1389
+ args: [{
1390
+ selector: '[vlCalendar]',
1391
+ }]
1392
+ }], propDecorators: { vlCalendar: [{
1393
+ type: Input
1394
+ }] } });
1395
+
1396
+ class SdkDirectivesModule {
1397
+ }
1398
+ SdkDirectivesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkDirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1399
+ SdkDirectivesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: SdkDirectivesModule, declarations: [CalendarDirective], exports: [CalendarDirective] });
1400
+ SdkDirectivesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkDirectivesModule });
1401
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkDirectivesModule, decorators: [{
1402
+ type: NgModule,
1403
+ args: [{
1404
+ declarations: [CalendarDirective],
1405
+ exports: [CalendarDirective],
1406
+ }]
1407
+ }] });
1408
+
1409
+ class DatePipe {
1410
+ constructor() {
1411
+ var _a;
1412
+ this.locale = inject(LOCALE_ID);
1413
+ this.defaultOptions = inject(DATE_PIPE_DEFAULT_OPTIONS, { optional: true });
1414
+ this.formattingSettings = (_a = inject(FORMATTING_SETTINGS_TOKEN, { optional: true })) === null || _a === void 0 ? void 0 : _a.getFormattingSettings();
1415
+ this.destroy$ = new Subject();
1416
+ }
1417
+ ngOnDestroy() {
1418
+ this.destroy$.next();
1419
+ this.destroy$.complete();
1420
+ }
1421
+ transform(date) {
1422
+ var _a, _b;
1423
+ if (!date) {
1424
+ return '';
1425
+ }
1426
+ try {
1427
+ return formatDate(date, ((_a = this.formattingSettings) === null || _a === void 0 ? void 0 : _a.dateFormats.datePipeFormat) || DEFAULT_DATE_FORMAT, this.locale, (_b = this.defaultOptions) === null || _b === void 0 ? void 0 : _b.timezone);
1428
+ }
1429
+ catch (error) {
1430
+ return new Date(date).toString();
1431
+ }
1432
+ }
1433
+ }
1434
+ DatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1435
+ DatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: DatePipe, name: "vlDate" });
1436
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: DatePipe, decorators: [{
1437
+ type: Pipe,
1438
+ args: [{
1439
+ name: 'vlDate',
1440
+ }]
1441
+ }] });
1442
+
1443
+ class NumberPipe {
1444
+ constructor() {
1445
+ var _a;
1446
+ this.formattingSettings = (_a = inject(FORMATTING_SETTINGS_TOKEN, { optional: true })) === null || _a === void 0 ? void 0 : _a.getFormattingSettings();
1447
+ this.destroy$ = new Subject();
1448
+ }
1449
+ ngOnDestroy() {
1450
+ this.destroy$.next();
1451
+ this.destroy$.complete();
1452
+ }
1453
+ transform(price) {
1454
+ var _a, _b, _c;
1455
+ return formatNumber(price, (_a = this.formattingSettings) === null || _a === void 0 ? void 0 : _a.thousandsSeparator, (_b = this.formattingSettings) === null || _b === void 0 ? void 0 : _b.decimalSeparator, (_c = this.formattingSettings) === null || _c === void 0 ? void 0 : _c.decimalsCount);
1456
+ }
1457
+ }
1458
+ NumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NumberPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1459
+ NumberPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: NumberPipe, name: "vlNumber" });
1460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: NumberPipe, decorators: [{
1461
+ type: Pipe,
1462
+ args: [{
1463
+ name: 'vlNumber',
1464
+ }]
1465
+ }] });
1466
+
1467
+ class PricePipe {
1468
+ constructor() {
1469
+ var _a;
1470
+ this.formattingSettings = (_a = inject(FORMATTING_SETTINGS_TOKEN, { optional: true })) === null || _a === void 0 ? void 0 : _a.getFormattingSettings();
1471
+ this.destroy$ = new Subject();
1472
+ }
1473
+ ngOnDestroy() {
1474
+ this.destroy$.next();
1475
+ this.destroy$.complete();
1476
+ }
1477
+ transform(price) {
1478
+ var _a, _b, _c, _d;
1479
+ if (price == null || price === '') {
1480
+ return '';
1481
+ }
1482
+ return `${((_a = this.formattingSettings) === null || _a === void 0 ? void 0 : _a.currencySymbol) || DEFAULT_CURRENCY_SYMBOL}${formatNumber(price, (_b = this.formattingSettings) === null || _b === void 0 ? void 0 : _b.thousandsSeparator, (_c = this.formattingSettings) === null || _c === void 0 ? void 0 : _c.decimalSeparator, (_d = this.formattingSettings) === null || _d === void 0 ? void 0 : _d.decimalsCount)}`;
1483
+ }
1484
+ }
1485
+ PricePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PricePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
1486
+ PricePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PricePipe, name: "vlPrice" });
1487
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PricePipe, decorators: [{
1488
+ type: Pipe,
1489
+ args: [{
1490
+ name: 'vlPrice',
1491
+ }]
1492
+ }] });
1493
+
1494
+ class SdkPipesModule {
1495
+ }
1496
+ SdkPipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1497
+ SdkPipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: SdkPipesModule, declarations: [NumberPipe, PricePipe, DatePipe], exports: [NumberPipe, PricePipe, DatePipe] });
1498
+ SdkPipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkPipesModule });
1499
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: SdkPipesModule, decorators: [{
1500
+ type: NgModule,
1501
+ args: [{
1502
+ declarations: [NumberPipe, PricePipe, DatePipe],
1503
+ exports: [NumberPipe, PricePipe, DatePipe],
1504
+ }]
1505
+ }] });
1506
+
1314
1507
  /**
1315
1508
  * Generated bundle index. Do not edit.
1316
1509
  */
1317
1510
 
1318
- export { ConfigurationRuntimeService, ConfigurationService, ContextService, FlowConfigurationModule, FlowConfigurationService, FlowUpdateService, LineItemWorker, MetricsCalculationService, ProductImagesService, QuoteDraftService, RuntimeMode, RuntimeOperation, RuntimeSettingsService, 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 };
1511
+ export { CalendarDirective, ConfigurationRuntimeService, ConfigurationService, ContextService, DEFAULT_FORMATTING_SETTINGS, DatePipe, FORMATTING_SETTINGS_TOKEN, FlowConfigurationModule, FlowConfigurationService, FlowUpdateService, LineItemWorker, MetricsCalculationService, NumberPipe, PricePipe, ProductImagesService, QuoteDraftService, RuntimeMode, RuntimeOperation, RuntimeSettingsService, RuntimeStep, SdkCoreModule, SdkDirectivesModule, SdkPipesModule, 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 };
1319
1512
  //# sourceMappingURL=veloceapps-sdk-core.mjs.map