@buynomics-lib/bn-shared 1.12.7-hotfix-bd-1066.0

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.
Files changed (99) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/build/domains/fitting/enums/fitting-statuses.d.ts +6 -0
  3. package/build/domains/fitting/enums/fitting-statuses.js +11 -0
  4. package/build/domains/fitting/enums/fitting-statuses.js.map +1 -0
  5. package/build/domains/fitting/interfaces/fitting-logs.d.ts +5 -0
  6. package/build/domains/fitting/interfaces/fitting-logs.js +3 -0
  7. package/build/domains/fitting/interfaces/fitting-logs.js.map +1 -0
  8. package/build/domains/fitting/interfaces/fitting.d.ts +11 -0
  9. package/build/domains/fitting/interfaces/fitting.js +3 -0
  10. package/build/domains/fitting/interfaces/fitting.js.map +1 -0
  11. package/build/domains/pricing/intermediaries/enums/intermediary-group-range-formats.d.ts +4 -0
  12. package/build/domains/pricing/intermediaries/enums/intermediary-group-range-formats.js +9 -0
  13. package/build/domains/pricing/intermediaries/enums/intermediary-group-range-formats.js.map +1 -0
  14. package/build/domains/pricing/intermediaries/enums/intermediary-group-types.d.ts +4 -0
  15. package/build/domains/pricing/intermediaries/enums/intermediary-group-types.js +9 -0
  16. package/build/domains/pricing/intermediaries/enums/intermediary-group-types.js.map +1 -0
  17. package/build/domains/promotions/helpers/promotion-periods.d.ts +2 -0
  18. package/build/domains/promotions/helpers/promotion-periods.js +47 -0
  19. package/build/domains/promotions/helpers/promotion-periods.js.map +1 -0
  20. package/build/domains/promotions/interfaces/promotion-period.d.ts +5 -0
  21. package/build/domains/promotions/interfaces/promotion-period.js +3 -0
  22. package/build/domains/promotions/interfaces/promotion-period.js.map +1 -0
  23. package/build/enums/client/client-clv-periods.d.ts +4 -0
  24. package/build/enums/client/client-clv-periods.js +9 -0
  25. package/build/enums/client/client-clv-periods.js.map +1 -0
  26. package/build/enums/client/client-clv-price-types.d.ts +8 -0
  27. package/build/enums/client/client-clv-price-types.js +13 -0
  28. package/build/enums/client/client-clv-price-types.js.map +1 -0
  29. package/build/enums/client/client-decimal-settings.d.ts +18 -0
  30. package/build/enums/client/client-decimal-settings.js +24 -0
  31. package/build/enums/client/client-decimal-settings.js.map +1 -0
  32. package/build/enums/client/client-terms.d.ts +10 -0
  33. package/build/enums/client/client-terms.js +15 -0
  34. package/build/enums/client/client-terms.js.map +1 -0
  35. package/build/enums/client/client-types.d.ts +4 -0
  36. package/build/enums/client/client-types.js +9 -0
  37. package/build/enums/client/client-types.js.map +1 -0
  38. package/build/enums/deeperion/deeperion-versions.d.ts +6 -0
  39. package/build/enums/deeperion/deeperion-versions.js +11 -0
  40. package/build/enums/deeperion/deeperion-versions.js.map +1 -0
  41. package/build/enums/permissions.d.ts +74 -0
  42. package/build/enums/permissions.js +78 -0
  43. package/build/enums/permissions.js.map +1 -0
  44. package/build/enums/price-level/price-level-types.d.ts +6 -0
  45. package/build/enums/price-level/price-level-types.js +11 -0
  46. package/build/enums/price-level/price-level-types.js.map +1 -0
  47. package/build/enums/product/configurable-product-field.d.ts +7 -0
  48. package/build/enums/product/configurable-product-field.js +12 -0
  49. package/build/enums/product/configurable-product-field.js.map +1 -0
  50. package/build/enums/product/sortable-product-fields.d.ts +6 -0
  51. package/build/enums/product/sortable-product-fields.js +11 -0
  52. package/build/enums/product/sortable-product-fields.js.map +1 -0
  53. package/build/enums/scenario/custom-formula-params.d.ts +5 -0
  54. package/build/enums/scenario/custom-formula-params.js +19 -0
  55. package/build/enums/scenario/custom-formula-params.js.map +1 -0
  56. package/build/helpers/calculate-range.d.ts +5 -0
  57. package/build/helpers/calculate-range.js +18 -0
  58. package/build/helpers/calculate-range.js.map +1 -0
  59. package/build/helpers/deeperion/get-latest-deeperion-version.d.ts +1 -0
  60. package/build/helpers/deeperion/get-latest-deeperion-version.js +14 -0
  61. package/build/helpers/deeperion/get-latest-deeperion-version.js.map +1 -0
  62. package/build/helpers/deeperion/get-latest-deeperion-version.test.d.ts +1 -0
  63. package/build/helpers/deeperion/get-latest-deeperion-version.test.js +11 -0
  64. package/build/helpers/deeperion/get-latest-deeperion-version.test.js.map +1 -0
  65. package/build/helpers/enum-helper.d.ts +8 -0
  66. package/build/helpers/enum-helper.js +15 -0
  67. package/build/helpers/enum-helper.js.map +1 -0
  68. package/build/helpers/formula/formula-converter.d.ts +4 -0
  69. package/build/helpers/formula/formula-converter.js +6 -0
  70. package/build/helpers/formula/formula-converter.js.map +1 -0
  71. package/build/helpers/formula/formula-validator/formula-validator.d.ts +9 -0
  72. package/build/helpers/formula/formula-validator/formula-validator.js +61 -0
  73. package/build/helpers/formula/formula-validator/formula-validator.js.map +1 -0
  74. package/build/helpers/formula/formula-validator/formula-validator.test.d.ts +1 -0
  75. package/build/helpers/formula/formula-validator/formula-validator.test.js +63 -0
  76. package/build/helpers/formula/formula-validator/formula-validator.test.js.map +1 -0
  77. package/build/helpers/formula/json-formula-to-expression.d.ts +14 -0
  78. package/build/helpers/formula/json-formula-to-expression.js +43 -0
  79. package/build/helpers/formula/json-formula-to-expression.js.map +1 -0
  80. package/build/helpers/get-property-name.d.ts +1 -0
  81. package/build/helpers/get-property-name.js +16 -0
  82. package/build/helpers/get-property-name.js.map +1 -0
  83. package/build/helpers/price-decision/price-decision-helper.d.ts +8 -0
  84. package/build/helpers/price-decision/price-decision-helper.js +12 -0
  85. package/build/helpers/price-decision/price-decision-helper.js.map +1 -0
  86. package/build/helpers/price-decision/price-decision-helper.test.d.ts +1 -0
  87. package/build/helpers/price-decision/price-decision-helper.test.js +50 -0
  88. package/build/helpers/price-decision/price-decision-helper.test.js.map +1 -0
  89. package/build/index.d.ts +29 -0
  90. package/build/index.js +58 -0
  91. package/build/index.js.map +1 -0
  92. package/build/interfaces/file-upload.d.ts +5 -0
  93. package/build/interfaces/file-upload.js +3 -0
  94. package/build/interfaces/file-upload.js.map +1 -0
  95. package/build/interfaces/simulation/simulation-input-change-events.d.ts +4 -0
  96. package/build/interfaces/simulation/simulation-input-change-events.js +3 -0
  97. package/build/interfaces/simulation/simulation-input-change-events.js.map +1 -0
  98. package/package.json +38 -0
  99. package/readme.md +3 -0
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BnPermissions = void 0;
4
+ exports.BnPermissions = {
5
+ Client: {
6
+ Create: 'create_client',
7
+ Delete: 'delete_client',
8
+ EditInfo: 'edit_client_info',
9
+ EditTags: 'edit_client_tags',
10
+ Get: 'get_client',
11
+ List: 'list_clients',
12
+ Switch: 'switch_client',
13
+ },
14
+ CustomerSample: {
15
+ Create: 'create_customer_sample',
16
+ Delete: 'delete_customer_sample',
17
+ Edit: 'edit_customer_sample',
18
+ Get: 'get_customer_sample',
19
+ List: 'list_customer_samples',
20
+ BulkDelete: 'bulk_delete_customer_samples',
21
+ },
22
+ Organization: {
23
+ Create: 'create_organization',
24
+ Delete: 'delete_organization',
25
+ Edit: 'edit_organization',
26
+ Get: 'get_organization',
27
+ List: 'list_organizations',
28
+ Switch: 'switch_organization',
29
+ },
30
+ PriceLevel: {
31
+ Create: 'create_price_level',
32
+ Delete: 'delete_price_level',
33
+ Edit: 'edit_price_level',
34
+ Get: 'get_price_level',
35
+ List: 'list_price_levels',
36
+ },
37
+ Project: {
38
+ Create: 'create_project',
39
+ Duplicate: 'duplicate_project',
40
+ Delete: 'delete_project',
41
+ Edit: 'edit_project',
42
+ Get: 'get_project',
43
+ List: 'list_projects',
44
+ BulkDelete: 'bulk_delete_projects',
45
+ },
46
+ Roles: {
47
+ OrgAdmin: 'bn_org_admin',
48
+ OrgUser: 'bn_org_user',
49
+ SuperAdmin: 'bn_super_admin',
50
+ },
51
+ ScenarioSet: {
52
+ Create: 'create_scenario_set',
53
+ Delete: 'delete_scenario_set',
54
+ Get: 'get_scenario_set',
55
+ List: 'list_scenario_sets',
56
+ Update: 'edit_scenario_set',
57
+ },
58
+ User: {
59
+ Create: 'create_user',
60
+ Delete: 'delete_user',
61
+ Edit: 'edit_user',
62
+ Get: 'get_user',
63
+ List: 'list_users',
64
+ },
65
+ Fitting: {
66
+ Create: 'create_fitting',
67
+ Delete: 'delete_fitting',
68
+ Edit: 'edit_fitting',
69
+ List: 'list_fittings',
70
+ },
71
+ Promotion: {
72
+ Create: 'create_promotion',
73
+ Delete: 'delete_promotion',
74
+ Edit: 'edit_promotion',
75
+ List: 'list_promotions',
76
+ },
77
+ };
78
+ //# sourceMappingURL=permissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/enums/permissions.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B,MAAM,EAAE;QACN,MAAM,EAAE,eAAe;QACvB,MAAM,EAAE,eAAe;QACvB,QAAQ,EAAE,kBAAkB;QAC5B,QAAQ,EAAE,kBAAkB;QAC5B,GAAG,EAAE,YAAY;QACjB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,eAAe;KACxB;IACD,cAAc,EAAE;QACd,MAAM,EAAE,wBAAwB;QAChC,MAAM,EAAE,wBAAwB;QAChC,IAAI,EAAE,sBAAsB;QAC5B,GAAG,EAAE,qBAAqB;QAC1B,IAAI,EAAE,uBAAuB;QAC7B,UAAU,EAAE,8BAA8B;KAC3C;IACD,YAAY,EAAE;QACZ,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,qBAAqB;QAC7B,IAAI,EAAE,mBAAmB;QACzB,GAAG,EAAE,kBAAkB;QACvB,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,qBAAqB;KAC9B;IACD,UAAU,EAAE;QACV,MAAM,EAAE,oBAAoB;QAC5B,MAAM,EAAE,oBAAoB;QAC5B,IAAI,EAAE,kBAAkB;QACxB,GAAG,EAAE,iBAAiB;QACtB,IAAI,EAAE,mBAAmB;KAC1B;IACD,OAAO,EAAE;QACP,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,mBAAmB;QAC9B,MAAM,EAAE,gBAAgB;QACxB,IAAI,EAAE,cAAc;QACpB,GAAG,EAAE,aAAa;QAClB,IAAI,EAAE,eAAe;QACrB,UAAU,EAAE,sBAAsB;KACnC;IACD,KAAK,EAAE;QACL,QAAQ,EAAE,cAAc;QACxB,OAAO,EAAE,aAAa;QACtB,UAAU,EAAE,gBAAgB;KAC7B;IACD,WAAW,EAAE;QACX,MAAM,EAAE,qBAAqB;QAC7B,MAAM,EAAE,qBAAqB;QAC7B,GAAG,EAAE,kBAAkB;QACvB,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,mBAAmB;KAC5B;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,aAAa;QACrB,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,UAAU;QACf,IAAI,EAAE,YAAY;KACnB;IACD,OAAO,EAAE;QACP,MAAM,EAAE,gBAAgB;QACxB,MAAM,EAAE,gBAAgB;QACxB,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,eAAe;KACtB;IACD,SAAS,EAAE;QACT,MAAM,EAAE,kBAAkB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,iBAAiB;KACxB;CACF,CAAA"}
@@ -0,0 +1,6 @@
1
+ export declare enum PriceLevelTypes {
2
+ Regular = 1,
3
+ Manufacturer = 2,
4
+ ListPrice = 3,
5
+ EndCustomer = 4
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PriceLevelTypes = void 0;
4
+ var PriceLevelTypes;
5
+ (function (PriceLevelTypes) {
6
+ PriceLevelTypes[PriceLevelTypes["Regular"] = 1] = "Regular";
7
+ PriceLevelTypes[PriceLevelTypes["Manufacturer"] = 2] = "Manufacturer";
8
+ PriceLevelTypes[PriceLevelTypes["ListPrice"] = 3] = "ListPrice";
9
+ PriceLevelTypes[PriceLevelTypes["EndCustomer"] = 4] = "EndCustomer";
10
+ })(PriceLevelTypes = exports.PriceLevelTypes || (exports.PriceLevelTypes = {}));
11
+ //# sourceMappingURL=price-level-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"price-level-types.js","sourceRoot":"","sources":["../../../src/enums/price-level/price-level-types.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,2DAAW,CAAA;IACX,qEAAgB,CAAA;IAChB,+DAAa,CAAA;IACb,mEAAe,CAAA;AACjB,CAAC,EALW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAK1B"}
@@ -0,0 +1,7 @@
1
+ export declare enum ConfigurableProductFields {
2
+ Availability = 1,
3
+ MeasuringUnits = 2,
4
+ Intermediaries = 3,
5
+ CustomerLifetimeValue = 4,
6
+ PriceThresholds = 5
7
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConfigurableProductFields = void 0;
4
+ var ConfigurableProductFields;
5
+ (function (ConfigurableProductFields) {
6
+ ConfigurableProductFields[ConfigurableProductFields["Availability"] = 1] = "Availability";
7
+ ConfigurableProductFields[ConfigurableProductFields["MeasuringUnits"] = 2] = "MeasuringUnits";
8
+ ConfigurableProductFields[ConfigurableProductFields["Intermediaries"] = 3] = "Intermediaries";
9
+ ConfigurableProductFields[ConfigurableProductFields["CustomerLifetimeValue"] = 4] = "CustomerLifetimeValue";
10
+ ConfigurableProductFields[ConfigurableProductFields["PriceThresholds"] = 5] = "PriceThresholds";
11
+ })(ConfigurableProductFields = exports.ConfigurableProductFields || (exports.ConfigurableProductFields = {}));
12
+ //# sourceMappingURL=configurable-product-field.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configurable-product-field.js","sourceRoot":"","sources":["../../../src/enums/product/configurable-product-field.ts"],"names":[],"mappings":";;;AAAA,IAAY,yBAMX;AAND,WAAY,yBAAyB;IACnC,yFAAgB,CAAA;IAChB,6FAAkB,CAAA;IAClB,6FAAkB,CAAA;IAClB,2GAAyB,CAAA;IACzB,+FAAmB,CAAA;AACrB,CAAC,EANW,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QAMpC"}
@@ -0,0 +1,6 @@
1
+ export declare enum SortableProductFields {
2
+ Static = "static",
3
+ ValueDriver = "valueDriver",
4
+ IntermediaryGroup = "intermediaryGroup",
5
+ IntermediaryCost = "intermediaryCost"
6
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SortableProductFields = void 0;
4
+ var SortableProductFields;
5
+ (function (SortableProductFields) {
6
+ SortableProductFields["Static"] = "static";
7
+ SortableProductFields["ValueDriver"] = "valueDriver";
8
+ SortableProductFields["IntermediaryGroup"] = "intermediaryGroup";
9
+ SortableProductFields["IntermediaryCost"] = "intermediaryCost";
10
+ })(SortableProductFields = exports.SortableProductFields || (exports.SortableProductFields = {}));
11
+ //# sourceMappingURL=sortable-product-fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sortable-product-fields.js","sourceRoot":"","sources":["../../../src/enums/product/sortable-product-fields.ts"],"names":[],"mappings":";;;AAAA,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,0CAAiB,CAAA;IACjB,oDAA2B,CAAA;IAC3B,gEAAuC,CAAA;IACvC,8DAAqC,CAAA;AACvC,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC"}
@@ -0,0 +1,5 @@
1
+ export declare enum CustomCostFormulaParams {
2
+ CurrentPrice = "current_price",
3
+ EndCustomerPrice = "end_customer_price"
4
+ }
5
+ export declare const getCustomFormulaParamsLabel: (value: CustomCostFormulaParams) => "Current Price" | "End Customer Price" | "Undefined Formula Param";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCustomFormulaParamsLabel = exports.CustomCostFormulaParams = void 0;
4
+ var CustomCostFormulaParams;
5
+ (function (CustomCostFormulaParams) {
6
+ CustomCostFormulaParams["CurrentPrice"] = "current_price";
7
+ CustomCostFormulaParams["EndCustomerPrice"] = "end_customer_price";
8
+ })(CustomCostFormulaParams = exports.CustomCostFormulaParams || (exports.CustomCostFormulaParams = {}));
9
+ exports.getCustomFormulaParamsLabel = function (value) {
10
+ switch (value) {
11
+ case CustomCostFormulaParams.CurrentPrice:
12
+ return 'Current Price';
13
+ case CustomCostFormulaParams.EndCustomerPrice:
14
+ return 'End Customer Price';
15
+ default:
16
+ return 'Undefined Formula Param';
17
+ }
18
+ };
19
+ //# sourceMappingURL=custom-formula-params.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-formula-params.js","sourceRoot":"","sources":["../../../src/enums/scenario/custom-formula-params.ts"],"names":[],"mappings":";;;AAAA,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IACjC,yDAA8B,CAAA;IAC9B,kEAAuC,CAAA;AACzC,CAAC,EAHW,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAGlC;AAEY,QAAA,2BAA2B,GAAG,UAAC,KAA8B;IACxE,QAAQ,KAAK,EAAE;QACb,KAAK,uBAAuB,CAAC,YAAY;YACvC,OAAO,eAAe,CAAA;QACxB,KAAK,uBAAuB,CAAC,gBAAgB;YAC3C,OAAO,oBAAoB,CAAA;QAC7B;YACE,OAAO,yBAAyB,CAAA;KACnC;AACH,CAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ export declare const calculateRange: ({ from, to, step, }: {
2
+ from: number;
3
+ to: number;
4
+ step: number;
5
+ }) => number[];
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.calculateRange = void 0;
4
+ exports.calculateRange = function (_a) {
5
+ var from = _a.from, to = _a.to, step = _a.step;
6
+ if (from === undefined || to === undefined || step === undefined) {
7
+ return [];
8
+ }
9
+ var rangeValues = [from];
10
+ // needed because of https://stackoverflow.com/questions/1458633/how-to-deal-with-floating-point-number-precision-in-javascript
11
+ var current = Math.round((from + step) * Math.pow(10, 12)) / Math.pow(10, 12);
12
+ while (current <= to) {
13
+ rangeValues.push(current);
14
+ current = Math.round((current + step) * Math.pow(10, 12)) / Math.pow(10, 12);
15
+ }
16
+ return rangeValues;
17
+ };
18
+ //# sourceMappingURL=calculate-range.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calculate-range.js","sourceRoot":"","sources":["../../src/helpers/calculate-range.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG,UAAC,EAQ9B;QAPC,IAAI,UAAA,EACJ,EAAE,QAAA,EACF,IAAI,UAAA;IAMJ,IAAI,IAAI,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE;QAChE,OAAO,EAAE,CAAA;KACV;IAED,IAAM,WAAW,GAAG,CAAC,IAAI,CAAC,CAAA;IAE1B,+HAA+H;IAC/H,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,SAAA,EAAE,EAAI,EAAE,CAAA,CAAC,GAAG,SAAA,EAAE,EAAI,EAAE,CAAA,CAAA;IAC7D,OAAO,OAAO,IAAI,EAAE,EAAE;QACpB,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzB,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,SAAA,EAAE,EAAI,EAAE,CAAA,CAAC,GAAG,SAAA,EAAE,EAAI,EAAE,CAAA,CAAA;KAC7D;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare const getLatestDeeperionVersionValue: () => any;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getLatestDeeperionVersionValue = void 0;
7
+ var deeperion_versions_1 = require("../../enums/deeperion/deeperion-versions");
8
+ var enum_helper_1 = __importDefault(require("../enum-helper"));
9
+ exports.getLatestDeeperionVersionValue = function () {
10
+ var allVersions = enum_helper_1.default.getEnumKeys(deeperion_versions_1.DeeperionVersions);
11
+ var latestVersion = allVersions[allVersions.length - 1];
12
+ return deeperion_versions_1.DeeperionVersions[latestVersion];
13
+ };
14
+ //# sourceMappingURL=get-latest-deeperion-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-latest-deeperion-version.js","sourceRoot":"","sources":["../../../src/helpers/deeperion/get-latest-deeperion-version.ts"],"names":[],"mappings":";;;;;;AAAA,+EAA4E;AAC5E,+DAAuC;AAE1B,QAAA,8BAA8B,GAAG;IAC5C,IAAM,WAAW,GAAG,qBAAU,CAAC,WAAW,CAAC,sCAAiB,CAAC,CAAA;IAC7D,IAAM,aAAa,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACzD,OAAO,sCAAiB,CAAC,aAAa,CAAC,CAAA;AACzC,CAAC,CAAA"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var deeperion_versions_1 = require("../../enums/deeperion/deeperion-versions");
4
+ var get_latest_deeperion_version_1 = require("./get-latest-deeperion-version");
5
+ describe('getLatestDeeperionVersion', function () {
6
+ it('should get the latest version', function () {
7
+ var value = get_latest_deeperion_version_1.getLatestDeeperionVersionValue();
8
+ expect(value).toEqual(deeperion_versions_1.DeeperionVersions.v1_8_0);
9
+ });
10
+ });
11
+ //# sourceMappingURL=get-latest-deeperion-version.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-latest-deeperion-version.test.js","sourceRoot":"","sources":["../../../src/helpers/deeperion/get-latest-deeperion-version.test.ts"],"names":[],"mappings":";;AAAA,+EAA4E;AAC5E,+EAA+E;AAE/E,QAAQ,CAAC,2BAA2B,EAAE;IACpC,EAAE,CAAC,+BAA+B,EAAE;QAClC,IAAM,KAAK,GAAG,6DAA8B,EAAE,CAAA;QAC9C,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,sCAAiB,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,8 @@
1
+ declare type EnumType = {
2
+ [s: string]: unknown;
3
+ } | ArrayLike<unknown>;
4
+ declare const EnumHelper: {
5
+ getEnumKeys: (type: EnumType) => string[];
6
+ getEnumValues: (type: EnumType) => any[];
7
+ };
8
+ export default EnumHelper;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var getEnumKeys = function (type) {
4
+ var numKeys = Object.keys(type).length / 2;
5
+ return Object.keys(type).filter(function (key, idx) { return idx >= numKeys; });
6
+ };
7
+ var getEnumValues = function (type) {
8
+ return Object.values(type).map(function (t) { return t.toString(); });
9
+ };
10
+ var EnumHelper = {
11
+ getEnumKeys: getEnumKeys,
12
+ getEnumValues: getEnumValues,
13
+ };
14
+ exports.default = EnumHelper;
15
+ //# sourceMappingURL=enum-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-helper.js","sourceRoot":"","sources":["../../src/helpers/enum-helper.ts"],"names":[],"mappings":";;AAEA,IAAM,WAAW,GAAG,UAAC,IAAc;IACjC,IAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;IAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAC,GAAG,EAAE,GAAG,IAAK,OAAA,GAAG,IAAI,OAAO,EAAd,CAAc,CAAC,CAAA;AAC/D,CAAC,CAAA;AAED,IAAM,aAAa,GAAG,UAAC,IAAc;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAC,CAAS,CAAC,QAAQ,EAAE,EAArB,CAAqB,CAAC,CAAA;AAC9D,CAAC,CAAA;AAED,IAAM,UAAU,GAAG;IACjB,WAAW,aAAA;IACX,aAAa,eAAA;CACd,CAAA;AAED,kBAAe,UAAU,CAAA"}
@@ -0,0 +1,4 @@
1
+ declare const FormulaConverter: {
2
+ stringToElement: (param: string) => string;
3
+ };
4
+ export default FormulaConverter;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var stringToElement = function (param) { return "$" + param; };
4
+ var FormulaConverter = { stringToElement: stringToElement };
5
+ exports.default = FormulaConverter;
6
+ //# sourceMappingURL=formula-converter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formula-converter.js","sourceRoot":"","sources":["../../../src/helpers/formula/formula-converter.ts"],"names":[],"mappings":";;AAAA,IAAM,eAAe,GAAG,UAAC,KAAa,IAAK,OAAA,MAAI,KAAO,EAAX,CAAW,CAAA;AAEtD,IAAM,gBAAgB,GAAG,EAAE,eAAe,iBAAA,EAAE,CAAA;AAE5C,kBAAe,gBAAgB,CAAA"}
@@ -0,0 +1,9 @@
1
+ declare type FormulaElementType = string | number | undefined | null | typeof NaN;
2
+ declare const FormulaValidator: {
3
+ isValidElement: (element: FormulaElementType) => boolean;
4
+ isVariable: (element: string) => boolean;
5
+ isCustomVariable: (element: string) => boolean;
6
+ canBeComputed: (formulaArray: FormulaElementType[]) => boolean;
7
+ isOperand: (element: string) => boolean;
8
+ };
9
+ export default FormulaValidator;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var mathjs_1 = require("mathjs");
7
+ var custom_formula_params_1 = require("../../../enums/scenario/custom-formula-params");
8
+ var enum_helper_1 = __importDefault(require("../../enum-helper"));
9
+ var formula_converter_1 = __importDefault(require("../formula-converter"));
10
+ var mathParser = mathjs_1.parser();
11
+ var isVariable = function (element) {
12
+ return /\$.{36}$/g.test(element);
13
+ };
14
+ var computeWithRandomNumbers = function (formulaArray) {
15
+ var randomVariablesFormula = formulaArray.map(function (element) {
16
+ if (isVariable(element) || isCustomVariable(element)) {
17
+ return Math.random();
18
+ }
19
+ else {
20
+ return element;
21
+ }
22
+ });
23
+ return mathParser.evaluate(randomVariablesFormula.join(' '));
24
+ };
25
+ var isCustomVariable = function (element) {
26
+ var customParams = enum_helper_1.default.getEnumValues(custom_formula_params_1.CustomCostFormulaParams).map(function (e) { return formula_converter_1.default.stringToElement(e); });
27
+ return customParams.some(function (cp) { return cp === element; });
28
+ };
29
+ var isOperand = function (element) {
30
+ return ['/', '*', '+', '-', '(', ')'].includes(element);
31
+ };
32
+ var isValidElement = function (element) {
33
+ var elementString = element;
34
+ var elementNumber = element;
35
+ return (isOperand(elementString) ||
36
+ isVariable(elementString) ||
37
+ isCustomVariable(elementString) ||
38
+ !isNaN(elementNumber));
39
+ };
40
+ var canBeComputed = function (formulaArray) {
41
+ var isValid = true;
42
+ try {
43
+ var result = computeWithRandomNumbers(formulaArray);
44
+ if (!isFinite(result) || result === undefined) {
45
+ isValid = false;
46
+ }
47
+ }
48
+ catch (_a) {
49
+ isValid = false;
50
+ }
51
+ return isValid;
52
+ };
53
+ var FormulaValidator = {
54
+ isValidElement: isValidElement,
55
+ isVariable: isVariable,
56
+ isCustomVariable: isCustomVariable,
57
+ canBeComputed: canBeComputed,
58
+ isOperand: isOperand,
59
+ };
60
+ exports.default = FormulaValidator;
61
+ //# sourceMappingURL=formula-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formula-validator.js","sourceRoot":"","sources":["../../../../src/helpers/formula/formula-validator/formula-validator.ts"],"names":[],"mappings":";;;;;AAAA,iCAA+B;AAC/B,uFAAuF;AACvF,kEAA0C;AAC1C,2EAAmD;AACnD,IAAM,UAAU,GAAG,eAAM,EAAE,CAAA;AAI3B,IAAM,UAAU,GAAG,UAAC,OAAe;IACjC,OAAO,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAClC,CAAC,CAAA;AAED,IAAM,wBAAwB,GAAG,UAAC,YAAkC;IAClE,IAAM,sBAAsB,GAAG,YAAY,CAAC,GAAG,CAAC,UAAC,OAAO;QACtD,IAAI,UAAU,CAAC,OAAiB,CAAC,IAAI,gBAAgB,CAAC,OAAiB,CAAC,EAAE;YACxE,OAAO,IAAI,CAAC,MAAM,EAAE,CAAA;SACrB;aAAM;YACL,OAAO,OAAO,CAAA;SACf;IACH,CAAC,CAAC,CAAA;IACF,OAAO,UAAU,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC9D,CAAC,CAAA;AAED,IAAM,gBAAgB,GAAG,UAAC,OAAe;IACvC,IAAM,YAAY,GAAG,qBAAU,CAAC,aAAa,CAC3C,+CAAuB,CACxB,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,2BAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAnC,CAAmC,CAAC,CAAA;IACjD,OAAO,YAAY,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,KAAK,OAAO,EAAd,CAAc,CAAC,CAAA;AAClD,CAAC,CAAA;AAED,IAAM,SAAS,GAAG,UAAC,OAAe;IAChC,OAAA,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;AAAhD,CAAgD,CAAA;AAElD,IAAM,cAAc,GAAG,UAAC,OAA2B;IACjD,IAAM,aAAa,GAAG,OAAiB,CAAA;IACvC,IAAM,aAAa,GAAG,OAAiB,CAAA;IAEvC,OAAO,CACL,SAAS,CAAC,aAAa,CAAC;QACxB,UAAU,CAAC,aAAa,CAAC;QACzB,gBAAgB,CAAC,aAAa,CAAC;QAC/B,CAAC,KAAK,CAAC,aAAa,CAAC,CACtB,CAAA;AACH,CAAC,CAAA;AAED,IAAM,aAAa,GAAG,UAAC,YAAkC;IACvD,IAAI,OAAO,GAAG,IAAI,CAAA;IAClB,IAAI;QACF,IAAM,MAAM,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAA;QACrD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,SAAS,EAAE;YAC7C,OAAO,GAAG,KAAK,CAAA;SAChB;KACF;IAAC,WAAM;QACN,OAAO,GAAG,KAAK,CAAA;KAChB;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,IAAM,gBAAgB,GAAG;IACvB,cAAc,gBAAA;IACd,UAAU,YAAA;IACV,gBAAgB,kBAAA;IAChB,aAAa,eAAA;IACb,SAAS,WAAA;CACV,CAAA;AAED,kBAAe,gBAAgB,CAAA"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var formula_validator_1 = __importDefault(require("./formula-validator"));
7
+ describe('FormulaValidator', function () {
8
+ describe('isValidElement', function () {
9
+ it('should return true for operand', function () {
10
+ expect(formula_validator_1.default.isValidElement('+')).toBeTruthy();
11
+ });
12
+ it('should return true for number', function () {
13
+ expect(formula_validator_1.default.isValidElement(2)).toBeTruthy();
14
+ });
15
+ it('should return true for current_price', function () {
16
+ expect(formula_validator_1.default.isValidElement('$current_price')).toBeTruthy();
17
+ });
18
+ it('should return true for GUID', function () {
19
+ expect(formula_validator_1.default.isValidElement('$7b4944ae-4d40-4ae3-aa35-3200cc102341')).toBeTruthy();
20
+ });
21
+ it('should return true for null', function () {
22
+ expect(formula_validator_1.default.isValidElement(null)).toBeTruthy();
23
+ });
24
+ it('should return false for NaN', function () {
25
+ expect(formula_validator_1.default.isValidElement(NaN)).toBeFalsy();
26
+ });
27
+ });
28
+ describe('canBeExecuted', function () {
29
+ it('should return true for all numbers', function () {
30
+ var formulaArray = [
31
+ '(',
32
+ '1',
33
+ '+',
34
+ '9',
35
+ ')',
36
+ '*',
37
+ '2',
38
+ '/',
39
+ '5',
40
+ '-',
41
+ '1',
42
+ ];
43
+ expect(formula_validator_1.default.canBeComputed(formulaArray)).toBeTruthy();
44
+ });
45
+ it('should return true when there are no constants', function () {
46
+ var formulaArray = ['(', "$7b4944ae-4d40-4ae3-aa35-3200cc102341", ')'];
47
+ expect(formula_validator_1.default.canBeComputed(formulaArray)).toBeTruthy();
48
+ });
49
+ it('should return false when empty array', function () {
50
+ var formulaArray = [];
51
+ expect(formula_validator_1.default.canBeComputed(formulaArray)).toBeFalsy();
52
+ });
53
+ it('should return false when there is null element', function () {
54
+ var formulaArray = ['1', '+', 'null', '1'];
55
+ expect(formula_validator_1.default.canBeComputed(formulaArray)).toBeFalsy();
56
+ });
57
+ it('should return false when invalid formula', function () {
58
+ var formulaArray = ['1', '1'];
59
+ expect(formula_validator_1.default.canBeComputed(formulaArray)).toBeFalsy();
60
+ });
61
+ });
62
+ });
63
+ //# sourceMappingURL=formula-validator.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formula-validator.test.js","sourceRoot":"","sources":["../../../../src/helpers/formula/formula-validator/formula-validator.test.ts"],"names":[],"mappings":";;;;;AAAA,0EAAkD;AAElD,QAAQ,CAAC,kBAAkB,EAAE;IAC3B,QAAQ,CAAC,gBAAgB,EAAE;QACzB,EAAE,CAAC,gCAAgC,EAAE;YACnC,MAAM,CAAC,2BAAgB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QAC3D,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,+BAA+B,EAAE;YAClC,MAAM,CAAC,2BAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACzD,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,sCAAsC,EAAE;YACzC,MAAM,CAAC,2BAAgB,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACxE,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,6BAA6B,EAAE;YAChC,MAAM,CACJ,2BAAgB,CAAC,cAAc,CAAC,uCAAuC,CAAC,CACzE,CAAC,UAAU,EAAE,CAAA;QAChB,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,6BAA6B,EAAE;YAChC,MAAM,CAAC,2BAAgB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QAC5D,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,6BAA6B,EAAE;YAChC,MAAM,CAAC,2BAAgB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAC1D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,eAAe,EAAE;QACxB,EAAE,CAAC,oCAAoC,EAAE;YACvC,IAAM,YAAY,GAAG;gBACnB,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;gBACH,GAAG;aACJ,CAAA;YACD,MAAM,CAAC,2BAAgB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACnE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gDAAgD,EAAE;YACnD,IAAM,YAAY,GAAG,CAAC,GAAG,EAAE,uCAAuC,EAAE,GAAG,CAAC,CAAA;YACxE,MAAM,CAAC,2BAAgB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,EAAE,CAAA;QACnE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE;YACzC,IAAM,YAAY,GAAG,EAAE,CAAA;YACvB,MAAM,CAAC,2BAAgB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAClE,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,gDAAgD,EAAE;YACnD,IAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;YAC5C,MAAM,CAAC,2BAAgB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAClE,CAAC,CAAC,CAAA;QACF,EAAE,CAAC,0CAA0C,EAAE;YAC7C,IAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAC/B,MAAM,CAAC,2BAAgB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;QAClE,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ export declare const JSONFormulaToExpression: (formula: string[], params: {
2
+ id: string;
3
+ name: string;
4
+ }[]) => {
5
+ expression: any[];
6
+ invalidElements: string[];
7
+ };
8
+ export declare const expressionToJSONFormula: (expression: string[], params: {
9
+ id: string;
10
+ name: string;
11
+ }[]) => {
12
+ formula: string[];
13
+ invalidElements: string[];
14
+ };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.expressionToJSONFormula = exports.JSONFormulaToExpression = void 0;
7
+ var __1 = require("../..");
8
+ var formula_converter_1 = __importDefault(require("./formula-converter"));
9
+ exports.JSONFormulaToExpression = function (formula, params) {
10
+ var invalidElements = [];
11
+ var newExpression = formula.map(function (element) {
12
+ if (__1.FormulaValidator.isValidElement(element)) {
13
+ return element;
14
+ }
15
+ var param = params.find(function (p) { return p.name === element; });
16
+ if (param) {
17
+ return { id: param.id, name: element };
18
+ }
19
+ else {
20
+ invalidElements.push(element);
21
+ return null;
22
+ }
23
+ });
24
+ return { expression: newExpression, invalidElements: invalidElements };
25
+ };
26
+ exports.expressionToJSONFormula = function (expression, params) {
27
+ var invalidElements = [];
28
+ var jsonFormula = expression.map(function (element) {
29
+ if (__1.FormulaValidator.isOperand(element) || !isNaN(+element)) {
30
+ return element;
31
+ }
32
+ var param = params.find(function (p) { return formula_converter_1.default.stringToElement(p.id) === element; });
33
+ if (param) {
34
+ return param.name;
35
+ }
36
+ else {
37
+ invalidElements.push(element);
38
+ return null;
39
+ }
40
+ });
41
+ return { formula: jsonFormula, invalidElements: invalidElements };
42
+ };
43
+ //# sourceMappingURL=json-formula-to-expression.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-formula-to-expression.js","sourceRoot":"","sources":["../../../src/helpers/formula/json-formula-to-expression.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAwC;AACxC,0EAAkD;AAErC,QAAA,uBAAuB,GAAG,UACrC,OAAiB,EACjB,MAAsC;IAEtC,IAAM,eAAe,GAAa,EAAE,CAAA;IACpC,IAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,UAAC,OAAO;QACxC,IAAI,oBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;YAC5C,OAAO,OAAO,CAAA;SACf;QAED,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,OAAO,EAAlB,CAAkB,CAAC,CAAA;QAEpD,IAAI,KAAK,EAAE;YACT,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;SACvC;aAAM;YACL,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC7B,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,iBAAA,EAAE,CAAA;AACvD,CAAC,CAAA;AAEY,QAAA,uBAAuB,GAAG,UACrC,UAAoB,EACpB,MAAsC;IAEtC,IAAM,eAAe,GAAa,EAAE,CAAA;IACpC,IAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,UAAC,OAAO;QACzC,IAAI,oBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE;YAC3D,OAAO,OAAO,CAAA;SACf;QAED,IAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CACvB,UAAC,CAAC,IAAK,OAAA,2BAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,EAAlD,CAAkD,CAC1D,CAAA;QAED,IAAI,KAAK,EAAE;YACT,OAAO,KAAK,CAAC,IAAI,CAAA;SAClB;aAAM;YACL,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC7B,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,iBAAA,EAAE,CAAA;AAClD,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare function getPropertyName(f: (x: any) => any): string;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPropertyName = void 0;
4
+ function getPropertyNameNotString(f) {
5
+ var p = new Proxy({}, {
6
+ get: function (target, prop) {
7
+ return prop;
8
+ },
9
+ });
10
+ return f(p);
11
+ }
12
+ function getPropertyName(f) {
13
+ return getPropertyNameNotString(f).toString();
14
+ }
15
+ exports.getPropertyName = getPropertyName;
16
+ //# sourceMappingURL=get-property-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-property-name.js","sourceRoot":"","sources":["../../src/helpers/get-property-name.ts"],"names":[],"mappings":";;;AAAA,SAAS,wBAAwB,CAAC,CAAkB;IAClD,IAAM,CAAC,GAAG,IAAI,KAAK,CACjB,EAAE,EACF;QACE,GAAG,YAAC,MAAM,EAAE,IAAI;YACd,OAAO,IAAI,CAAA;QACb,CAAC;KACF,CACF,CAAA;IACD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;AACb,CAAC;AAED,SAAgB,eAAe,CAAC,CAAkB;IAChD,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;AAC/C,CAAC;AAFD,0CAEC"}
@@ -0,0 +1,8 @@
1
+ interface IAvailabilityGroupProduct {
2
+ id: string;
3
+ isIncluded: boolean;
4
+ }
5
+ declare const PriceDecisionNullificationHelper: {
6
+ didAvailabilityGroupProductsChange: (beforeProducts: IAvailabilityGroupProduct[], products: IAvailabilityGroupProduct[]) => boolean;
7
+ };
8
+ export default PriceDecisionNullificationHelper;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var didAvailabilityGroupProductsChange = function (beforeProducts, products) {
4
+ var didRemoveIncludedProducts = beforeProducts.some(function (bp) { return bp.isIncluded && !products.some(function (p) { return p.id === bp.id; }); });
5
+ var didAddIncludedProducts = products.some(function (p) { return p.isIncluded && !beforeProducts.some(function (bp) { return bp.id === p.id; }); });
6
+ return didRemoveIncludedProducts || didAddIncludedProducts;
7
+ };
8
+ var PriceDecisionNullificationHelper = {
9
+ didAvailabilityGroupProductsChange: didAvailabilityGroupProductsChange,
10
+ };
11
+ exports.default = PriceDecisionNullificationHelper;
12
+ //# sourceMappingURL=price-decision-helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"price-decision-helper.js","sourceRoot":"","sources":["../../../src/helpers/price-decision/price-decision-helper.ts"],"names":[],"mappings":";;AAKA,IAAM,kCAAkC,GAAG,UACzC,cAA2C,EAC3C,QAAqC;IAErC,IAAM,yBAAyB,GAAG,cAAc,CAAC,IAAI,CACnD,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAd,CAAc,CAAC,EAAtD,CAAsD,CAC/D,CAAA;IACD,IAAM,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAC1C,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,UAAU,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAd,CAAc,CAAC,EAA5D,CAA4D,CACpE,CAAA;IAED,OAAO,yBAAyB,IAAI,sBAAsB,CAAA;AAC5D,CAAC,CAAA;AAED,IAAM,gCAAgC,GAAG;IACvC,kCAAkC,oCAAA;CACnC,CAAA;AAED,kBAAe,gCAAgC,CAAA"}