@parv0888/scheme-engine 0.1.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.
- package/dist/calculators/discount-application.d.ts +44 -0
- package/dist/calculators/discount-application.d.ts.map +1 -0
- package/dist/calculators/discount-application.js +174 -0
- package/dist/calculators/discount-application.js.map +1 -0
- package/dist/calculators/index.d.ts +65 -0
- package/dist/calculators/index.d.ts.map +1 -0
- package/dist/calculators/index.js +196 -0
- package/dist/calculators/index.js.map +1 -0
- package/dist/calculators/payout-types/article.d.ts +23 -0
- package/dist/calculators/payout-types/article.d.ts.map +1 -0
- package/dist/calculators/payout-types/article.js +73 -0
- package/dist/calculators/payout-types/article.js.map +1 -0
- package/dist/calculators/payout-types/basket.d.ts +49 -0
- package/dist/calculators/payout-types/basket.d.ts.map +1 -0
- package/dist/calculators/payout-types/basket.js +108 -0
- package/dist/calculators/payout-types/basket.js.map +1 -0
- package/dist/calculators/payout-types/coupon.d.ts +23 -0
- package/dist/calculators/payout-types/coupon.d.ts.map +1 -0
- package/dist/calculators/payout-types/coupon.js +74 -0
- package/dist/calculators/payout-types/coupon.js.map +1 -0
- package/dist/calculators/payout-types/discount.d.ts +21 -0
- package/dist/calculators/payout-types/discount.d.ts.map +1 -0
- package/dist/calculators/payout-types/discount.js +110 -0
- package/dist/calculators/payout-types/discount.js.map +1 -0
- package/dist/calculators/payout-types/fixed-discount.d.ts +31 -0
- package/dist/calculators/payout-types/fixed-discount.d.ts.map +1 -0
- package/dist/calculators/payout-types/fixed-discount.js +65 -0
- package/dist/calculators/payout-types/fixed-discount.js.map +1 -0
- package/dist/calculators/payout-types/foc.d.ts +30 -0
- package/dist/calculators/payout-types/foc.d.ts.map +1 -0
- package/dist/calculators/payout-types/foc.js +130 -0
- package/dist/calculators/payout-types/foc.js.map +1 -0
- package/dist/calculators/payout-types/mrp-percentage.d.ts +34 -0
- package/dist/calculators/payout-types/mrp-percentage.d.ts.map +1 -0
- package/dist/calculators/payout-types/mrp-percentage.js +77 -0
- package/dist/calculators/payout-types/mrp-percentage.js.map +1 -0
- package/dist/calculators/payout-types/nlp.d.ts +22 -0
- package/dist/calculators/payout-types/nlp.d.ts.map +1 -0
- package/dist/calculators/payout-types/nlp.js +59 -0
- package/dist/calculators/payout-types/nlp.js.map +1 -0
- package/dist/calculators/payout-types/per-unit.d.ts +32 -0
- package/dist/calculators/payout-types/per-unit.d.ts.map +1 -0
- package/dist/calculators/payout-types/per-unit.js +94 -0
- package/dist/calculators/payout-types/per-unit.js.map +1 -0
- package/dist/calculators/payout-types/product-new.d.ts +27 -0
- package/dist/calculators/payout-types/product-new.d.ts.map +1 -0
- package/dist/calculators/payout-types/product-new.js +85 -0
- package/dist/calculators/payout-types/product-new.js.map +1 -0
- package/dist/calculators/payout-types/product.d.ts +31 -0
- package/dist/calculators/payout-types/product.d.ts.map +1 -0
- package/dist/calculators/payout-types/product.js +73 -0
- package/dist/calculators/payout-types/product.js.map +1 -0
- package/dist/calculators/payout-types/topup.d.ts +19 -0
- package/dist/calculators/payout-types/topup.d.ts.map +1 -0
- package/dist/calculators/payout-types/topup.js +46 -0
- package/dist/calculators/payout-types/topup.js.map +1 -0
- package/dist/calculators/slab-matcher.d.ts +41 -0
- package/dist/calculators/slab-matcher.d.ts.map +1 -0
- package/dist/calculators/slab-matcher.js +68 -0
- package/dist/calculators/slab-matcher.js.map +1 -0
- package/dist/esm/calculators/discount-application.js +170 -0
- package/dist/esm/calculators/discount-application.js.map +1 -0
- package/dist/esm/calculators/index.js +176 -0
- package/dist/esm/calculators/index.js.map +1 -0
- package/dist/esm/calculators/payout-types/article.js +70 -0
- package/dist/esm/calculators/payout-types/article.js.map +1 -0
- package/dist/esm/calculators/payout-types/basket.js +105 -0
- package/dist/esm/calculators/payout-types/basket.js.map +1 -0
- package/dist/esm/calculators/payout-types/coupon.js +71 -0
- package/dist/esm/calculators/payout-types/coupon.js.map +1 -0
- package/dist/esm/calculators/payout-types/discount.js +107 -0
- package/dist/esm/calculators/payout-types/discount.js.map +1 -0
- package/dist/esm/calculators/payout-types/fixed-discount.js +62 -0
- package/dist/esm/calculators/payout-types/fixed-discount.js.map +1 -0
- package/dist/esm/calculators/payout-types/foc.js +127 -0
- package/dist/esm/calculators/payout-types/foc.js.map +1 -0
- package/dist/esm/calculators/payout-types/mrp-percentage.js +74 -0
- package/dist/esm/calculators/payout-types/mrp-percentage.js.map +1 -0
- package/dist/esm/calculators/payout-types/nlp.js +56 -0
- package/dist/esm/calculators/payout-types/nlp.js.map +1 -0
- package/dist/esm/calculators/payout-types/per-unit.js +91 -0
- package/dist/esm/calculators/payout-types/per-unit.js.map +1 -0
- package/dist/esm/calculators/payout-types/product-new.js +82 -0
- package/dist/esm/calculators/payout-types/product-new.js.map +1 -0
- package/dist/esm/calculators/payout-types/product.js +70 -0
- package/dist/esm/calculators/payout-types/product.js.map +1 -0
- package/dist/esm/calculators/payout-types/topup.js +43 -0
- package/dist/esm/calculators/payout-types/topup.js.map +1 -0
- package/dist/esm/calculators/slab-matcher.js +64 -0
- package/dist/esm/calculators/slab-matcher.js.map +1 -0
- package/dist/esm/helpers/calc-type-checks.js +30 -0
- package/dist/esm/helpers/calc-type-checks.js.map +1 -0
- package/dist/esm/helpers/compare-value.js +109 -0
- package/dist/esm/helpers/compare-value.js.map +1 -0
- package/dist/esm/helpers/constraint-checks.js +67 -0
- package/dist/esm/helpers/constraint-checks.js.map +1 -0
- package/dist/esm/helpers/index.js +8 -0
- package/dist/esm/helpers/index.js.map +1 -0
- package/dist/esm/helpers/math.js +84 -0
- package/dist/esm/helpers/math.js.map +1 -0
- package/dist/esm/helpers/payout-type-checks.js +29 -0
- package/dist/esm/helpers/payout-type-checks.js.map +1 -0
- package/dist/esm/helpers/qualifier-checks.js +188 -0
- package/dist/esm/helpers/qualifier-checks.js.map +1 -0
- package/dist/esm/helpers/scheme-applicability.js +93 -0
- package/dist/esm/helpers/scheme-applicability.js.map +1 -0
- package/dist/esm/index.js +10 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/types/applied-scheme.js +19 -0
- package/dist/esm/types/applied-scheme.js.map +1 -0
- package/dist/esm/types/enums.js +115 -0
- package/dist/esm/types/enums.js.map +1 -0
- package/dist/esm/types/index.js +5 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/item-props.js +2 -0
- package/dist/esm/types/item-props.js.map +1 -0
- package/dist/esm/types/scheme.js +2 -0
- package/dist/esm/types/scheme.js.map +1 -0
- package/dist/helpers/calc-type-checks.d.ts +21 -0
- package/dist/helpers/calc-type-checks.d.ts.map +1 -0
- package/dist/helpers/calc-type-checks.js +36 -0
- package/dist/helpers/calc-type-checks.js.map +1 -0
- package/dist/helpers/compare-value.d.ts +40 -0
- package/dist/helpers/compare-value.d.ts.map +1 -0
- package/dist/helpers/compare-value.js +120 -0
- package/dist/helpers/compare-value.js.map +1 -0
- package/dist/helpers/constraint-checks.d.ts +30 -0
- package/dist/helpers/constraint-checks.d.ts.map +1 -0
- package/dist/helpers/constraint-checks.js +73 -0
- package/dist/helpers/constraint-checks.js.map +1 -0
- package/dist/helpers/index.d.ts +8 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/index.js +24 -0
- package/dist/helpers/index.js.map +1 -0
- package/dist/helpers/math.d.ts +50 -0
- package/dist/helpers/math.d.ts.map +1 -0
- package/dist/helpers/math.js +96 -0
- package/dist/helpers/math.js.map +1 -0
- package/dist/helpers/payout-type-checks.d.ts +17 -0
- package/dist/helpers/payout-type-checks.d.ts.map +1 -0
- package/dist/helpers/payout-type-checks.js +34 -0
- package/dist/helpers/payout-type-checks.js.map +1 -0
- package/dist/helpers/qualifier-checks.d.ts +62 -0
- package/dist/helpers/qualifier-checks.d.ts.map +1 -0
- package/dist/helpers/qualifier-checks.js +194 -0
- package/dist/helpers/qualifier-checks.js.map +1 -0
- package/dist/helpers/scheme-applicability.d.ts +40 -0
- package/dist/helpers/scheme-applicability.d.ts.map +1 -0
- package/dist/helpers/scheme-applicability.js +99 -0
- package/dist/helpers/scheme-applicability.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/types/applied-scheme.d.ts +157 -0
- package/dist/types/applied-scheme.d.ts.map +1 -0
- package/dist/types/applied-scheme.js +22 -0
- package/dist/types/applied-scheme.js.map +1 -0
- package/dist/types/enums.d.ts +91 -0
- package/dist/types/enums.d.ts.map +1 -0
- package/dist/types/enums.js +118 -0
- package/dist/types/enums.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +21 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/item-props.d.ts +103 -0
- package/dist/types/item-props.d.ts.map +1 -0
- package/dist/types/item-props.js +3 -0
- package/dist/types/item-props.js.map +1 -0
- package/dist/types/scheme.d.ts +172 -0
- package/dist/types/scheme.d.ts.map +1 -0
- package/dist/types/scheme.js +3 -0
- package/dist/types/scheme.js.map +1 -0
- package/package.json +29 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isSchemeApplicable = isSchemeApplicable;
|
|
4
|
+
exports.isPrimaryOrSecondaryCategorySchemeOn = isPrimaryOrSecondaryCategorySchemeOn;
|
|
5
|
+
exports.isSchemeHaveValidFilterConstraints = isSchemeHaveValidFilterConstraints;
|
|
6
|
+
exports.isSchemeApplicableOnFilterConstraints = isSchemeApplicableOnFilterConstraints;
|
|
7
|
+
const enums_1 = require("../types/enums");
|
|
8
|
+
/**
|
|
9
|
+
* Checks if a scheme is applicable to a specific item based on schemeOn type.
|
|
10
|
+
* Uses FE superset: includes GROUP, ALL, MASTER_BATCH.
|
|
11
|
+
*/
|
|
12
|
+
function isSchemeApplicable(scheme, item, categories) {
|
|
13
|
+
const schemeOn = scheme.schemeOn;
|
|
14
|
+
if (schemeOn === enums_1.SchemeSchemeOn.GROUP) {
|
|
15
|
+
return ((!!item.primaryCategoryId && categories.includes(item.primaryCategoryId.toString())) ||
|
|
16
|
+
(!!item.secondaryCategoryId && categories.includes(item.secondaryCategoryId.toString())) ||
|
|
17
|
+
(!!item.masterBatchId &&
|
|
18
|
+
categories.includes(item.masterBatchId.toString()) &&
|
|
19
|
+
scheme.alternateSchemeId == null) ||
|
|
20
|
+
(!!item.productId && categories.includes(item.productId.toString())));
|
|
21
|
+
}
|
|
22
|
+
else if (schemeOn === enums_1.SchemeSchemeOn.PRIMARY_CATEGORY) {
|
|
23
|
+
return !!item.primaryCategoryId && categories.includes(item.primaryCategoryId.toString());
|
|
24
|
+
}
|
|
25
|
+
else if (schemeOn === enums_1.SchemeSchemeOn.SECONDARY_CATEGORY) {
|
|
26
|
+
return !!item.secondaryCategoryId && categories.includes(item.secondaryCategoryId.toString());
|
|
27
|
+
}
|
|
28
|
+
else if (schemeOn === enums_1.SchemeSchemeOn.ALL) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
else if (schemeOn === enums_1.SchemeSchemeOn.MASTER_BATCH) {
|
|
32
|
+
return (!!item.masterBatchId &&
|
|
33
|
+
categories.includes(item.masterBatchId.toString()) &&
|
|
34
|
+
scheme.alternateSchemeId == null);
|
|
35
|
+
}
|
|
36
|
+
else if (schemeOn === enums_1.SchemeSchemeOn.PRODUCT) {
|
|
37
|
+
// Product-level scheme
|
|
38
|
+
return !!item.productId && categories.includes(item.productId.toString());
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Checks if the schemeOn value is a category type (primary or secondary).
|
|
46
|
+
*/
|
|
47
|
+
function isPrimaryOrSecondaryCategorySchemeOn(schemeOn) {
|
|
48
|
+
return (schemeOn === enums_1.SchemeSchemeOn.PRIMARY_CATEGORY ||
|
|
49
|
+
schemeOn === enums_1.SchemeSchemeOn.SECONDARY_CATEGORY);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Checks if a scheme has any active filter constraints configured.
|
|
53
|
+
*/
|
|
54
|
+
function isSchemeHaveValidFilterConstraints(scheme) {
|
|
55
|
+
const fc = scheme.filterConstraints;
|
|
56
|
+
if (!fc)
|
|
57
|
+
return false;
|
|
58
|
+
return ((!!fc.mrp && fc.mrp.length > 0) ||
|
|
59
|
+
(!!fc.attribute1 && fc.attribute1.length > 0) ||
|
|
60
|
+
(!!fc.attribute2 && fc.attribute2.length > 0) ||
|
|
61
|
+
(!!fc.altCategory && fc.altCategory.length > 0) ||
|
|
62
|
+
(!!fc.manufacturingBatchNumbers && fc.manufacturingBatchNumbers.length > 0));
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Checks if an item passes all active filter constraints of a scheme.
|
|
66
|
+
* All non-empty filter lists must match (AND logic).
|
|
67
|
+
*/
|
|
68
|
+
function isSchemeApplicableOnFilterConstraints(filterConstraints, item) {
|
|
69
|
+
const results = [];
|
|
70
|
+
if (filterConstraints.mrp && filterConstraints.mrp.length > 0) {
|
|
71
|
+
if (!item.mrp)
|
|
72
|
+
return false;
|
|
73
|
+
results.push(filterConstraints.mrp.includes(item.mrp));
|
|
74
|
+
}
|
|
75
|
+
if (filterConstraints.attribute1 && filterConstraints.attribute1.length > 0) {
|
|
76
|
+
if (!item.productAttributeText1)
|
|
77
|
+
return false;
|
|
78
|
+
results.push(filterConstraints.attribute1.includes(item.productAttributeText1));
|
|
79
|
+
}
|
|
80
|
+
if (filterConstraints.attribute2 && filterConstraints.attribute2.length > 0) {
|
|
81
|
+
if (!item.productAttributeText2)
|
|
82
|
+
return false;
|
|
83
|
+
results.push(filterConstraints.attribute2.includes(item.productAttributeText2));
|
|
84
|
+
}
|
|
85
|
+
if (filterConstraints.altCategory && filterConstraints.altCategory.length > 0) {
|
|
86
|
+
if (!item.category1)
|
|
87
|
+
return false;
|
|
88
|
+
results.push(filterConstraints.altCategory.includes(item.category1));
|
|
89
|
+
}
|
|
90
|
+
if (filterConstraints.manufacturingBatchNumbers && filterConstraints.manufacturingBatchNumbers.length > 0) {
|
|
91
|
+
if (!item.batchNo)
|
|
92
|
+
return false;
|
|
93
|
+
results.push(filterConstraints.manufacturingBatchNumbers.includes(item.batchNo));
|
|
94
|
+
}
|
|
95
|
+
if (results.length === 0)
|
|
96
|
+
return false;
|
|
97
|
+
return results.every((v) => v);
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=scheme-applicability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheme-applicability.js","sourceRoot":"","sources":["../../src/helpers/scheme-applicability.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC;AAG1B,cAAc,eAAe,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ─── @fa/scheme-engine ──────────────────────────────────────────
|
|
3
|
+
// Pure-function scheme calculation engine for FieldAssist DMS.
|
|
4
|
+
// Zero dependencies on NestJS, Nuxt, or BaseOrderItem.
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
17
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
// ─── Types ──────────────────────────────────────────────────────
|
|
21
|
+
__exportStar(require("./types"), exports);
|
|
22
|
+
// ─── Helpers ────────────────────────────────────────────────────
|
|
23
|
+
__exportStar(require("./helpers"), exports);
|
|
24
|
+
// ─── Calculators ────────────────────────────────────────────────
|
|
25
|
+
__exportStar(require("./calculators"), exports);
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,mEAAmE;AACnE,+DAA+D;AAC/D,uDAAuD;;;;;;;;;;;;;;;;AAEvD,mEAAmE;AACnE,0CAAwB;AAExB,mEAAmE;AACnE,4CAA0B;AAE1B,mEAAmE;AACnE,gDAA8B"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { SchemeCategory, SchemePayoutType, AdditionalCalculationLogic } from "./enums";
|
|
2
|
+
export interface AppliedSchemeEntry {
|
|
3
|
+
/** FE/engine product identifier for the SKU this scheme entry is attached to. */
|
|
4
|
+
productId: number;
|
|
5
|
+
/** DB identifier for the product row (when different from productId in some deployments). */
|
|
6
|
+
productDbId: number;
|
|
7
|
+
/** Identifier of the scheme that got applied. */
|
|
8
|
+
schemeId: number;
|
|
9
|
+
/** Scheme category in business terms: Primary (trade) vs Secondary (additional) discount bucket. */
|
|
10
|
+
schemeType: SchemeCategory | string;
|
|
11
|
+
/** Payout mechanic for the scheme (Discount, FOC, Product, MRP%, etc.). */
|
|
12
|
+
schemePayoutType: SchemePayoutType | string;
|
|
13
|
+
/** Unit price used when applying this scheme entry (PTR/ex-tax for most flows). */
|
|
14
|
+
price: number;
|
|
15
|
+
/** Primary discount percent contributed by this scheme entry (meaning depends on payout type). */
|
|
16
|
+
primaryDiscountPercent: number;
|
|
17
|
+
/** Primary discount value (amount) computed/applied for this entry on the line. */
|
|
18
|
+
primaryDiscountValue: number;
|
|
19
|
+
/** Secondary discount percent contributed by this scheme entry (meaning depends on payout type). */
|
|
20
|
+
secondaryDiscountPercent: number;
|
|
21
|
+
/** Secondary discount value (amount) computed/applied for this entry on the line. */
|
|
22
|
+
secondaryDiscountValue: number;
|
|
23
|
+
/** Convenience copy of scheme id when stored separately for primary bucket (legacy item model compatibility). */
|
|
24
|
+
primarySchemeId: number | null;
|
|
25
|
+
/** Convenience copy of scheme id when stored separately for secondary bucket (legacy item model compatibility). */
|
|
26
|
+
secondarySchemeId: number | null;
|
|
27
|
+
/** Slab identifier that matched for this scheme when stored in primary bucket. */
|
|
28
|
+
primarySchemeSlabId: number | null;
|
|
29
|
+
/** Slab identifier that matched for this scheme when stored in secondary bucket. */
|
|
30
|
+
secondarySchemeSlabId: number | null;
|
|
31
|
+
/** FOC “percent” value used by item layer to derive free quantity/discount impact. */
|
|
32
|
+
focPercent: number;
|
|
33
|
+
/** Monetary value equivalent of FOC benefit (when represented as discount value). */
|
|
34
|
+
focValue: number;
|
|
35
|
+
/** Gross-value representation of FOC benefit (some flows compute on gross totals). */
|
|
36
|
+
focGrossValue: number;
|
|
37
|
+
/** Free quantity granted by the scheme (FOC/Product payout types). */
|
|
38
|
+
freeQty: number;
|
|
39
|
+
/** Free quantity that should be treated as discount quantity in some pricing flows. */
|
|
40
|
+
freeQtyForDiscount: number;
|
|
41
|
+
/** UI hint: whether quantity breakdown/details should be shown for this applied scheme. */
|
|
42
|
+
showQtyDetails: boolean;
|
|
43
|
+
/** Step value of the scheme (used for stepped schemes / display). */
|
|
44
|
+
schemeStep: number;
|
|
45
|
+
/** Whether this scheme is applied per-item/individual line instead of being pooled. */
|
|
46
|
+
isIndividual: boolean;
|
|
47
|
+
/** True if the scheme is a markup scheme (discount is computed as markup reversal). */
|
|
48
|
+
isMarkup?: boolean;
|
|
49
|
+
/** Basket identifier if this entry came from a basket scheme. */
|
|
50
|
+
basketId?: number;
|
|
51
|
+
/** Scheme attribute text attached for reporting/labeling (can drive special behaviors). */
|
|
52
|
+
schemeAttributeText: string | null;
|
|
53
|
+
/** Human-readable scheme name (for UI/printing/debug). */
|
|
54
|
+
schemeName: string;
|
|
55
|
+
/** Additional calculation logic modifier (e.g. discount value subtracted from price). */
|
|
56
|
+
additionalCalculationLogic?: AdditionalCalculationLogic | null;
|
|
57
|
+
/** Ordering/priority sequence across multiple schemes when the caller enforces a sequence. */
|
|
58
|
+
schemeSequence?: number | null;
|
|
59
|
+
/** If true, once this scheme is applied the product may be blocked from other schemes (company rule). */
|
|
60
|
+
restrictProductsWithSchemeApplied?: boolean | null;
|
|
61
|
+
/** Stored inputs required to re-derive PerUnit % when net prices/taxes change later. */
|
|
62
|
+
recalculateSchemeData?: RecalculateSchemeData | null;
|
|
63
|
+
/** Additional discount percent component (GST reform / claim flows). */
|
|
64
|
+
additionalDiscountPercent_1?: number;
|
|
65
|
+
/** Additional discount value component (GST reform / claim flows). */
|
|
66
|
+
additionalDiscountValue_1?: number;
|
|
67
|
+
/** Marks this entry as a GST reform/claim scheme application. */
|
|
68
|
+
isGstReformScheme?: boolean;
|
|
69
|
+
/** Budget remaining/allocated for this scheme (value/quantity), if budgeted schemes are enabled. */
|
|
70
|
+
schemeBudget: number | null;
|
|
71
|
+
/** Budget type (value-based vs quantity-based). */
|
|
72
|
+
schemeBudgetType: number | null;
|
|
73
|
+
/** Master batch identifier (pricing batch) for which this scheme entry applies. */
|
|
74
|
+
masterBatchId?: string;
|
|
75
|
+
/** Scheme variant label/type (e.g. master-batch variant). */
|
|
76
|
+
schemeVariant?: string;
|
|
77
|
+
/** Parent scheme identifier when a scheme is derived/variant of another. */
|
|
78
|
+
parentSchemeId?: string;
|
|
79
|
+
/** Audit trail of which entity/entities the scheme was applied on (product/category/batch). */
|
|
80
|
+
schemeAppliedOn?: Array<string | undefined>;
|
|
81
|
+
/** Region id that controlled scheme applicability (when schemes are region-scoped). */
|
|
82
|
+
schemeApplicableOnRegion?: number | null;
|
|
83
|
+
/** Manufacturing batch number (distinct from pricing masterBatchId). */
|
|
84
|
+
batchNo?: string | null;
|
|
85
|
+
/** Preferred scheme flag (when multiple schemes compete, preferred may win). */
|
|
86
|
+
isPreferred?: boolean | null;
|
|
87
|
+
/** Quantity expressed in “cases” for batch/pricing scenarios (when the caller uses cases terminology). */
|
|
88
|
+
cases?: number;
|
|
89
|
+
/** Remaining quantity eligible for scheme in split/batch scenarios. */
|
|
90
|
+
remainingQuantity?: number;
|
|
91
|
+
/** Optional consolidated discount percent stored by caller/UI (not always used by engine). */
|
|
92
|
+
discountPercent?: number;
|
|
93
|
+
}
|
|
94
|
+
export interface RecalculateSchemeData {
|
|
95
|
+
/** Per-unit discount amount (value) taken from the slab payout for PerUnit schemes. */
|
|
96
|
+
discountAmountOfPerUnit: number;
|
|
97
|
+
/** Total tax % used to convert between tax-inclusive and tax-exclusive values for percentage derivation. */
|
|
98
|
+
totalTaxPercentage: number;
|
|
99
|
+
/** True if this PerUnit scheme is based on standard unit pricing. */
|
|
100
|
+
usesStdUnit: boolean;
|
|
101
|
+
/** True if this PerUnit scheme is based on super unit pricing. */
|
|
102
|
+
usesSuperUnit: boolean;
|
|
103
|
+
/** True if this PerUnit scheme is based on additional unit pricing. */
|
|
104
|
+
usesAdditionalUnit: boolean;
|
|
105
|
+
/** The compare value (qty/units/amount) that was used to match the slab. */
|
|
106
|
+
compareValue: number;
|
|
107
|
+
/** When true, scheme expects complete-number rounding behavior at the item layer. */
|
|
108
|
+
calculationOnCompleteNumber?: boolean;
|
|
109
|
+
/** Additional calculation logic modifier used when deriving percent from per-unit value. */
|
|
110
|
+
additionalCalculationLogic?: AdditionalCalculationLogic | null;
|
|
111
|
+
}
|
|
112
|
+
export interface SchemeSlabResult {
|
|
113
|
+
/** True when at least one slab matched and produced a payout. */
|
|
114
|
+
matched: boolean;
|
|
115
|
+
/** Identifier of the slab that matched (null when not matched). */
|
|
116
|
+
matchedSlabId: number | null;
|
|
117
|
+
/** Payout type this result corresponds to (matches scheme payoutType). */
|
|
118
|
+
payoutType: SchemePayoutType | string;
|
|
119
|
+
/** Discount percent that should be applied to the item base (meaning depends on payout type). */
|
|
120
|
+
discountPercent: number;
|
|
121
|
+
/** Discount value (amount) when payout is value-based (e.g. fixed discount) or computed by calculator. */
|
|
122
|
+
discountValue: number;
|
|
123
|
+
/** Free quantity produced by PRODUCT/FOC payout types. */
|
|
124
|
+
freeQty: number;
|
|
125
|
+
/** FOC percent/quantity representation used by item layer for FOC-type schemes. */
|
|
126
|
+
focPercent: number;
|
|
127
|
+
/** True when the result represents a GST reform/claim scheme flow. */
|
|
128
|
+
isGstReform: boolean;
|
|
129
|
+
/** Additional GST discount percent component (used when targetMethod is GST-specific). */
|
|
130
|
+
additionalDiscountPercent_1: number;
|
|
131
|
+
/** Budget consumed by applying this scheme result (0 for non-budget schemes). */
|
|
132
|
+
budgetConsumed: number;
|
|
133
|
+
/** Data needed for later PerUnit % recalculation after price/tax updates. */
|
|
134
|
+
recalculateSchemeData: RecalculateSchemeData | null;
|
|
135
|
+
/** How the application layer should apply this result onto the item model. */
|
|
136
|
+
targetMethod: "setDiscountScheme" | "setFocScheme" | "setDiscountAndValueScheme" | "setGstDiscountScheme" | "addProduct";
|
|
137
|
+
/** For add-product style schemes, specifies the free product and quantity to add. */
|
|
138
|
+
productToAdd?: {
|
|
139
|
+
productId: number;
|
|
140
|
+
quantity: number;
|
|
141
|
+
masterBatchId?: string | null;
|
|
142
|
+
};
|
|
143
|
+
/** Non-fatal issues (missing slabs, invalid types, zero-outs) surfaced for debugging/telemetry. */
|
|
144
|
+
warnings: string[];
|
|
145
|
+
}
|
|
146
|
+
export interface AppliedDiscountResult {
|
|
147
|
+
/** Total discount value aggregated across all applied schemes of the requested category. */
|
|
148
|
+
discountValue: number;
|
|
149
|
+
/** Effective discount percent for the category (can be computed from value/base). */
|
|
150
|
+
discountPercent: number;
|
|
151
|
+
/** True when at least one intermediate discount value was clamped to 0 due to negative/invalid math. */
|
|
152
|
+
clampedToZero: boolean;
|
|
153
|
+
/** Aggregated warnings encountered while applying discounts. */
|
|
154
|
+
warnings: string[];
|
|
155
|
+
}
|
|
156
|
+
export declare function createEmptySlabResult(payoutType: SchemePayoutType | string): SchemeSlabResult;
|
|
157
|
+
//# sourceMappingURL=applied-scheme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applied-scheme.d.ts","sourceRoot":"","sources":["../../src/types/applied-scheme.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createEmptySlabResult = createEmptySlabResult;
|
|
4
|
+
// ─── Default / empty SchemeSlabResult ───────────────────────────
|
|
5
|
+
function createEmptySlabResult(payoutType) {
|
|
6
|
+
return {
|
|
7
|
+
matched: false,
|
|
8
|
+
matchedSlabId: null,
|
|
9
|
+
payoutType,
|
|
10
|
+
discountPercent: 0,
|
|
11
|
+
discountValue: 0,
|
|
12
|
+
freeQty: 0,
|
|
13
|
+
focPercent: 0,
|
|
14
|
+
isGstReform: false,
|
|
15
|
+
additionalDiscountPercent_1: 0,
|
|
16
|
+
budgetConsumed: 0,
|
|
17
|
+
recalculateSchemeData: null,
|
|
18
|
+
targetMethod: "setDiscountScheme",
|
|
19
|
+
warnings: [],
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=applied-scheme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applied-scheme.js","sourceRoot":"","sources":["../../src/types/applied-scheme.ts"],"names":[],"mappings":";;AAsMA,sDAgBC;AAjBD,mEAAmE;AACnE,SAAgB,qBAAqB,CAAC,UAAqC;IACzE,OAAO;QACL,OAAO,EAAE,KAAK;QACd,aAAa,EAAE,IAAI;QACnB,UAAU;QACV,eAAe,EAAE,CAAC;QAClB,aAAa,EAAE,CAAC;QAChB,OAAO,EAAE,CAAC;QACV,UAAU,EAAE,CAAC;QACb,WAAW,EAAE,KAAK;QAClB,2BAA2B,EAAE,CAAC;QAC9B,cAAc,EAAE,CAAC;QACjB,qBAAqB,EAAE,IAAI;QAC3B,YAAY,EAAE,mBAAmB;QACjC,QAAQ,EAAE,EAAE;KACb,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
export declare enum SchemeCategory {
|
|
2
|
+
PRIMARY = "Primary",
|
|
3
|
+
SECONDARY = "Secondary"
|
|
4
|
+
}
|
|
5
|
+
export declare enum SchemePayoutType {
|
|
6
|
+
PRODUCT = "Product",
|
|
7
|
+
FOC = "FOC",
|
|
8
|
+
ARTICLE = "Article",
|
|
9
|
+
DISCOUNT = "Discount",
|
|
10
|
+
TOPUP = "TopUpDiscount",
|
|
11
|
+
PERUNIT = "PerUnitDiscount",
|
|
12
|
+
BASKET = "Basket",
|
|
13
|
+
FIXED_DISCOUNT = "FixedValueDiscount",
|
|
14
|
+
COUPON = "CouponScheme",
|
|
15
|
+
PERCENTAGE_DISCOUNT_ON_MRP = "PercentageDiscountOnMRP",
|
|
16
|
+
FOC_SLAB = "FOCSlab",
|
|
17
|
+
PRODUCT_SCHEME_NEW = "ProductSchemeNew",
|
|
18
|
+
NLP = "NLP"
|
|
19
|
+
}
|
|
20
|
+
export declare const SchemePayoutCalculationType: {
|
|
21
|
+
readonly NONE: "none";
|
|
22
|
+
readonly STEP: "step";
|
|
23
|
+
readonly CONTINUOUS: "continuous";
|
|
24
|
+
readonly STEP_MULTIPLIER: "stepmultiplier";
|
|
25
|
+
readonly PRORATA: "prorata";
|
|
26
|
+
};
|
|
27
|
+
export type SchemePayoutCalculationTypeValue = (typeof SchemePayoutCalculationType)[keyof typeof SchemePayoutCalculationType];
|
|
28
|
+
export declare const SchemeConstraintType: {
|
|
29
|
+
readonly AMOUNT: "Amount";
|
|
30
|
+
readonly QUANTITY: "Quantity";
|
|
31
|
+
readonly STD_UNIT: "Standard_Unit";
|
|
32
|
+
readonly ACTUAL_STD_UNIT: "Actual_Standard_Unit";
|
|
33
|
+
readonly SUPER_UNIT: "Super_Unit";
|
|
34
|
+
readonly ADDITIONAL_UNIT: "Additional_Unit";
|
|
35
|
+
};
|
|
36
|
+
export type SchemeConstraintTypeValue = (typeof SchemeConstraintType)[keyof typeof SchemeConstraintType];
|
|
37
|
+
export declare const SchemeSchemeOn: {
|
|
38
|
+
readonly PRODUCT: "Product";
|
|
39
|
+
readonly PRIMARY_CATEGORY: "Primary_Category";
|
|
40
|
+
readonly SECONDARY_CATEGORY: "Secondary_Category";
|
|
41
|
+
readonly GROUP: "Group";
|
|
42
|
+
readonly ALL: "All";
|
|
43
|
+
readonly MASTER_BATCH: "Master_Batch";
|
|
44
|
+
};
|
|
45
|
+
export type SchemeSchemeOnValue = (typeof SchemeSchemeOn)[keyof typeof SchemeSchemeOn];
|
|
46
|
+
export declare enum AdditionalCalculationLogic {
|
|
47
|
+
DISCOUNT_VALUE_SUBTRACTED_FROM_MRP = 1,
|
|
48
|
+
DISCOUNT_VALUE_SUBTRACTED_FROM_PRICE = 2
|
|
49
|
+
}
|
|
50
|
+
export declare enum SchemeBudgetType {
|
|
51
|
+
VALUE = 1,
|
|
52
|
+
QUANTITY = 2
|
|
53
|
+
}
|
|
54
|
+
export declare const SchemeSubType: {
|
|
55
|
+
readonly EXTENDABLE: "Extendable";
|
|
56
|
+
readonly NON_EXTENDABLE: "Non_Extendable";
|
|
57
|
+
};
|
|
58
|
+
export declare const SchemeSubType2: {
|
|
59
|
+
readonly CLAIMABLE: "Claimable";
|
|
60
|
+
readonly NON_CLAIMABLE: "Non_Claimable";
|
|
61
|
+
};
|
|
62
|
+
export declare const SchemePayoutIn: {
|
|
63
|
+
readonly QUANTITY: "Quantity";
|
|
64
|
+
readonly STANDARD_UNIT: "Standard_Unit";
|
|
65
|
+
};
|
|
66
|
+
export type SchemePayoutInValue = (typeof SchemePayoutIn)[keyof typeof SchemePayoutIn];
|
|
67
|
+
export declare enum EntityType {
|
|
68
|
+
product = 1,
|
|
69
|
+
primaryCategory = 2,
|
|
70
|
+
secondaryCategory = 3,
|
|
71
|
+
alternateCategory = 4,
|
|
72
|
+
attributeText1 = 5
|
|
73
|
+
}
|
|
74
|
+
export declare enum SecondQualifierType {
|
|
75
|
+
LPC = 1
|
|
76
|
+
}
|
|
77
|
+
export declare enum ThirdQualifierType {
|
|
78
|
+
VALUE = 1,
|
|
79
|
+
QUANTITY = 2
|
|
80
|
+
}
|
|
81
|
+
export declare enum DiscountOnType {
|
|
82
|
+
GroupScheme = 1
|
|
83
|
+
}
|
|
84
|
+
export declare const SchemeVariantType: {
|
|
85
|
+
readonly NORMAL: "Normal";
|
|
86
|
+
readonly MASTER_BATCH: "MasterBatch";
|
|
87
|
+
};
|
|
88
|
+
export declare enum MultipleSchemesWithSameSku {
|
|
89
|
+
APPLY_LOWEST_GEO_HIERARCHY_SCHEME = 1
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=enums.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/types/enums.ts"],"names":[],"mappings":"AAEA,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,SAAS,cAAc;CACxB;AAID,oBAAY,gBAAgB;IAC1B,OAAO,YAAY;IACnB,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,kBAAkB;IACvB,OAAO,oBAAoB;IAC3B,MAAM,WAAW;IACjB,cAAc,uBAAuB;IACrC,MAAM,iBAAiB;IACvB,0BAA0B,4BAA4B;IACtD,QAAQ,YAAY;IACpB,kBAAkB,qBAAqB;IACvC,GAAG,QAAQ;CACZ;AAID,eAAO,MAAM,2BAA2B;;;;;;CAM9B,CAAC;AAEX,MAAM,MAAM,gCAAgC,GAC1C,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,OAAO,2BAA2B,CAAC,CAAC;AAIjF,eAAO,MAAM,oBAAoB;;;;;;;CAOvB,CAAC;AAEX,MAAM,MAAM,yBAAyB,GACnC,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,OAAO,oBAAoB,CAAC,CAAC;AAGnE,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAGvD,oBAAY,0BAA0B;IACpC,kCAAkC,IAAI;IACtC,oCAAoC,IAAI;CACzC;AAGD,oBAAY,gBAAgB;IAC1B,KAAK,IAAI;IACT,QAAQ,IAAI;CACb;AAGD,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AAEX,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAGX,eAAO,MAAM,cAAc;;;CAGjB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC7B,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAGvD,oBAAY,UAAU;IACpB,OAAO,IAAI;IACX,eAAe,IAAI;IACnB,iBAAiB,IAAI;IACrB,iBAAiB,IAAI;IACrB,cAAc,IAAI;CACnB;AAGD,oBAAY,mBAAmB;IAC7B,GAAG,IAAI;CACR;AAGD,oBAAY,kBAAkB;IAC5B,KAAK,IAAI;IACT,QAAQ,IAAI;CACb;AAGD,oBAAY,cAAc;IACxB,WAAW,IAAI;CAChB;AAGD,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AAGX,oBAAY,0BAA0B;IACpC,iCAAiC,IAAI;CACtC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MultipleSchemesWithSameSku = exports.SchemeVariantType = exports.DiscountOnType = exports.ThirdQualifierType = exports.SecondQualifierType = exports.EntityType = exports.SchemePayoutIn = exports.SchemeSubType2 = exports.SchemeSubType = exports.SchemeBudgetType = exports.AdditionalCalculationLogic = exports.SchemeSchemeOn = exports.SchemeConstraintType = exports.SchemePayoutCalculationType = exports.SchemePayoutType = exports.SchemeCategory = void 0;
|
|
4
|
+
// ─── Scheme Category ────────────────────────────────────────────
|
|
5
|
+
// DB values: "Primary", "Secondary"
|
|
6
|
+
var SchemeCategory;
|
|
7
|
+
(function (SchemeCategory) {
|
|
8
|
+
SchemeCategory["PRIMARY"] = "Primary";
|
|
9
|
+
SchemeCategory["SECONDARY"] = "Secondary";
|
|
10
|
+
})(SchemeCategory || (exports.SchemeCategory = SchemeCategory = {}));
|
|
11
|
+
// ─── Scheme Payout Type ─────────────────────────────────────────
|
|
12
|
+
// DB values must never change (see Appendix A)
|
|
13
|
+
var SchemePayoutType;
|
|
14
|
+
(function (SchemePayoutType) {
|
|
15
|
+
SchemePayoutType["PRODUCT"] = "Product";
|
|
16
|
+
SchemePayoutType["FOC"] = "FOC";
|
|
17
|
+
SchemePayoutType["ARTICLE"] = "Article";
|
|
18
|
+
SchemePayoutType["DISCOUNT"] = "Discount";
|
|
19
|
+
SchemePayoutType["TOPUP"] = "TopUpDiscount";
|
|
20
|
+
SchemePayoutType["PERUNIT"] = "PerUnitDiscount";
|
|
21
|
+
SchemePayoutType["BASKET"] = "Basket";
|
|
22
|
+
SchemePayoutType["FIXED_DISCOUNT"] = "FixedValueDiscount";
|
|
23
|
+
SchemePayoutType["COUPON"] = "CouponScheme";
|
|
24
|
+
SchemePayoutType["PERCENTAGE_DISCOUNT_ON_MRP"] = "PercentageDiscountOnMRP";
|
|
25
|
+
SchemePayoutType["FOC_SLAB"] = "FOCSlab";
|
|
26
|
+
SchemePayoutType["PRODUCT_SCHEME_NEW"] = "ProductSchemeNew";
|
|
27
|
+
SchemePayoutType["NLP"] = "NLP";
|
|
28
|
+
})(SchemePayoutType || (exports.SchemePayoutType = SchemePayoutType = {}));
|
|
29
|
+
// ─── Payout Calculation Type ────────────────────────────────────
|
|
30
|
+
// Normalized to lowercase. Code always compares via .toLowerCase()
|
|
31
|
+
exports.SchemePayoutCalculationType = {
|
|
32
|
+
NONE: "none",
|
|
33
|
+
STEP: "step",
|
|
34
|
+
CONTINUOUS: "continuous",
|
|
35
|
+
STEP_MULTIPLIER: "stepmultiplier",
|
|
36
|
+
PRORATA: "prorata",
|
|
37
|
+
};
|
|
38
|
+
// ─── Constraint Type ────────────────────────────────────────────
|
|
39
|
+
// DB values: "Amount", "Quantity", "Standard_Unit", etc.
|
|
40
|
+
exports.SchemeConstraintType = {
|
|
41
|
+
AMOUNT: "Amount",
|
|
42
|
+
QUANTITY: "Quantity",
|
|
43
|
+
STD_UNIT: "Standard_Unit",
|
|
44
|
+
ACTUAL_STD_UNIT: "Actual_Standard_Unit",
|
|
45
|
+
SUPER_UNIT: "Super_Unit",
|
|
46
|
+
ADDITIONAL_UNIT: "Additional_Unit",
|
|
47
|
+
};
|
|
48
|
+
// ─── Scheme On (applicability target) ───────────────────────────
|
|
49
|
+
exports.SchemeSchemeOn = {
|
|
50
|
+
PRODUCT: "Product",
|
|
51
|
+
PRIMARY_CATEGORY: "Primary_Category",
|
|
52
|
+
SECONDARY_CATEGORY: "Secondary_Category",
|
|
53
|
+
GROUP: "Group",
|
|
54
|
+
ALL: "All",
|
|
55
|
+
MASTER_BATCH: "Master_Batch",
|
|
56
|
+
};
|
|
57
|
+
// ─── Additional Calculation Logic ───────────────────────────────
|
|
58
|
+
var AdditionalCalculationLogic;
|
|
59
|
+
(function (AdditionalCalculationLogic) {
|
|
60
|
+
AdditionalCalculationLogic[AdditionalCalculationLogic["DISCOUNT_VALUE_SUBTRACTED_FROM_MRP"] = 1] = "DISCOUNT_VALUE_SUBTRACTED_FROM_MRP";
|
|
61
|
+
AdditionalCalculationLogic[AdditionalCalculationLogic["DISCOUNT_VALUE_SUBTRACTED_FROM_PRICE"] = 2] = "DISCOUNT_VALUE_SUBTRACTED_FROM_PRICE";
|
|
62
|
+
})(AdditionalCalculationLogic || (exports.AdditionalCalculationLogic = AdditionalCalculationLogic = {}));
|
|
63
|
+
// ─── Scheme Budget Type ─────────────────────────────────────────
|
|
64
|
+
var SchemeBudgetType;
|
|
65
|
+
(function (SchemeBudgetType) {
|
|
66
|
+
SchemeBudgetType[SchemeBudgetType["VALUE"] = 1] = "VALUE";
|
|
67
|
+
SchemeBudgetType[SchemeBudgetType["QUANTITY"] = 2] = "QUANTITY";
|
|
68
|
+
})(SchemeBudgetType || (exports.SchemeBudgetType = SchemeBudgetType = {}));
|
|
69
|
+
// ─── Scheme Sub Type ────────────────────────────────────────────
|
|
70
|
+
exports.SchemeSubType = {
|
|
71
|
+
EXTENDABLE: "Extendable",
|
|
72
|
+
NON_EXTENDABLE: "Non_Extendable",
|
|
73
|
+
};
|
|
74
|
+
exports.SchemeSubType2 = {
|
|
75
|
+
CLAIMABLE: "Claimable",
|
|
76
|
+
NON_CLAIMABLE: "Non_Claimable",
|
|
77
|
+
};
|
|
78
|
+
// ─── Scheme Payout In ───────────────────────────────────────────
|
|
79
|
+
exports.SchemePayoutIn = {
|
|
80
|
+
QUANTITY: "Quantity",
|
|
81
|
+
STANDARD_UNIT: "Standard_Unit",
|
|
82
|
+
};
|
|
83
|
+
// ─── Entity Type (for first qualifier) ──────────────────────────
|
|
84
|
+
var EntityType;
|
|
85
|
+
(function (EntityType) {
|
|
86
|
+
EntityType[EntityType["product"] = 1] = "product";
|
|
87
|
+
EntityType[EntityType["primaryCategory"] = 2] = "primaryCategory";
|
|
88
|
+
EntityType[EntityType["secondaryCategory"] = 3] = "secondaryCategory";
|
|
89
|
+
EntityType[EntityType["alternateCategory"] = 4] = "alternateCategory";
|
|
90
|
+
EntityType[EntityType["attributeText1"] = 5] = "attributeText1";
|
|
91
|
+
})(EntityType || (exports.EntityType = EntityType = {}));
|
|
92
|
+
// ─── Second Qualifier Type ──────────────────────────────────────
|
|
93
|
+
var SecondQualifierType;
|
|
94
|
+
(function (SecondQualifierType) {
|
|
95
|
+
SecondQualifierType[SecondQualifierType["LPC"] = 1] = "LPC";
|
|
96
|
+
})(SecondQualifierType || (exports.SecondQualifierType = SecondQualifierType = {}));
|
|
97
|
+
// ─── Third Qualifier Type ───────────────────────────────────────
|
|
98
|
+
var ThirdQualifierType;
|
|
99
|
+
(function (ThirdQualifierType) {
|
|
100
|
+
ThirdQualifierType[ThirdQualifierType["VALUE"] = 1] = "VALUE";
|
|
101
|
+
ThirdQualifierType[ThirdQualifierType["QUANTITY"] = 2] = "QUANTITY";
|
|
102
|
+
})(ThirdQualifierType || (exports.ThirdQualifierType = ThirdQualifierType = {}));
|
|
103
|
+
// ─── Discount On Type ───────────────────────────────────────────
|
|
104
|
+
var DiscountOnType;
|
|
105
|
+
(function (DiscountOnType) {
|
|
106
|
+
DiscountOnType[DiscountOnType["GroupScheme"] = 1] = "GroupScheme";
|
|
107
|
+
})(DiscountOnType || (exports.DiscountOnType = DiscountOnType = {}));
|
|
108
|
+
// ─── Scheme Variant Type ────────────────────────────────────────
|
|
109
|
+
exports.SchemeVariantType = {
|
|
110
|
+
NORMAL: "Normal",
|
|
111
|
+
MASTER_BATCH: "MasterBatch",
|
|
112
|
+
};
|
|
113
|
+
// ─── Multiple Schemes With Same SKU ─────────────────────────────
|
|
114
|
+
var MultipleSchemesWithSameSku;
|
|
115
|
+
(function (MultipleSchemesWithSameSku) {
|
|
116
|
+
MultipleSchemesWithSameSku[MultipleSchemesWithSameSku["APPLY_LOWEST_GEO_HIERARCHY_SCHEME"] = 1] = "APPLY_LOWEST_GEO_HIERARCHY_SCHEME";
|
|
117
|
+
})(MultipleSchemesWithSameSku || (exports.MultipleSchemesWithSameSku = MultipleSchemesWithSameSku = {}));
|
|
118
|
+
//# sourceMappingURL=enums.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/types/enums.ts"],"names":[],"mappings":";;;AAAA,mEAAmE;AACnE,oCAAoC;AACpC,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;AACzB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,mEAAmE;AACnE,+CAA+C;AAC/C,IAAY,gBAcX;AAdD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,+BAAW,CAAA;IACX,uCAAmB,CAAA;IACnB,yCAAqB,CAAA;IACrB,2CAAuB,CAAA;IACvB,+CAA2B,CAAA;IAC3B,qCAAiB,CAAA;IACjB,yDAAqC,CAAA;IACrC,2CAAuB,CAAA;IACvB,0EAAsD,CAAA;IACtD,wCAAoB,CAAA;IACpB,2DAAuC,CAAA;IACvC,+BAAW,CAAA;AACb,CAAC,EAdW,gBAAgB,gCAAhB,gBAAgB,QAc3B;AAED,mEAAmE;AACnE,mEAAmE;AACtD,QAAA,2BAA2B,GAAG;IACzC,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,gBAAgB;IACjC,OAAO,EAAE,SAAS;CACV,CAAC;AAKX,mEAAmE;AACnE,yDAAyD;AAC5C,QAAA,oBAAoB,GAAG;IAClC,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,eAAe;IACzB,eAAe,EAAE,sBAAsB;IACvC,UAAU,EAAE,YAAY;IACxB,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAKX,mEAAmE;AACtD,QAAA,cAAc,GAAG;IAC5B,OAAO,EAAE,SAAS;IAClB,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,YAAY,EAAE,cAAc;CACpB,CAAC;AAKX,mEAAmE;AACnE,IAAY,0BAGX;AAHD,WAAY,0BAA0B;IACpC,uIAAsC,CAAA;IACtC,2IAAwC,CAAA;AAC1C,CAAC,EAHW,0BAA0B,0CAA1B,0BAA0B,QAGrC;AAED,mEAAmE;AACnE,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,yDAAS,CAAA;IACT,+DAAY,CAAA;AACd,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B;AAED,mEAAmE;AACtD,QAAA,aAAa,GAAG;IAC3B,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,gBAAgB;CACxB,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,eAAe;CACtB,CAAC;AAEX,mEAAmE;AACtD,QAAA,cAAc,GAAG;IAC5B,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,eAAe;CACtB,CAAC;AAKX,mEAAmE;AACnE,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,iDAAW,CAAA;IACX,iEAAmB,CAAA;IACnB,qEAAqB,CAAA;IACrB,qEAAqB,CAAA;IACrB,+DAAkB,CAAA;AACpB,CAAC,EANW,UAAU,0BAAV,UAAU,QAMrB;AAED,mEAAmE;AACnE,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,2DAAO,CAAA;AACT,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAED,mEAAmE;AACnE,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,6DAAS,CAAA;IACT,mEAAY,CAAA;AACd,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,mEAAmE;AACnE,IAAY,cAEX;AAFD,WAAY,cAAc;IACxB,iEAAe,CAAA;AACjB,CAAC,EAFW,cAAc,8BAAd,cAAc,QAEzB;AAED,mEAAmE;AACtD,QAAA,iBAAiB,GAAG;IAC/B,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,aAAa;CACnB,CAAC;AAEX,mEAAmE;AACnE,IAAY,0BAEX;AAFD,WAAY,0BAA0B;IACpC,qIAAqC,CAAA;AACvC,CAAC,EAFW,0BAA0B,0CAA1B,0BAA0B,QAErC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./enums"), exports);
|
|
18
|
+
__exportStar(require("./scheme"), exports);
|
|
19
|
+
__exportStar(require("./applied-scheme"), exports);
|
|
20
|
+
__exportStar(require("./item-props"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,2CAAyB;AACzB,mDAAiC;AACjC,+CAA6B"}
|