addio-admin-sdk 1.7.111 → 1.7.112

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.
@@ -1,3 +1,4 @@
1
+ import ITranslation from '../Translation';
1
2
  export interface ITcgExternalServiceParams {
2
3
  readonly cardgame_slugs: string[];
3
4
  readonly default_parent_category?: string | null;
@@ -127,3 +128,33 @@ export declare enum TCGVariationAttributesEnum {
127
128
  export declare const defaultValuesForTcgAttributes: {
128
129
  [value in TCGVariationAttributesEnum]: string;
129
130
  };
131
+ export interface ITcgAttributeValues {
132
+ [slug: string]: {
133
+ readonly value: ITranslation[];
134
+ readonly tag: string | undefined;
135
+ };
136
+ }
137
+ export type ITcgAttributes = {
138
+ [value in TCGVariationAttributesEnum]: ITcgAttributeValues;
139
+ };
140
+ export interface ILangOption {
141
+ slug: string;
142
+ label: string;
143
+ fullLabel?: string;
144
+ }
145
+ export interface ICardFinishTag {
146
+ label: string;
147
+ value: {
148
+ [TCGVariationAttributesEnum.CONDITION]: string;
149
+ [TCGVariationAttributesEnum.FINISH]: string;
150
+ };
151
+ fullLabel?: string;
152
+ variant?: TCGCardFinishEnum;
153
+ selected?: boolean;
154
+ extraLabel?: string;
155
+ }
156
+ export declare enum ItemNameVariantEnum {
157
+ BOTH = "use-both",
158
+ PARENT = "use-parent",
159
+ DECLI = "use-decli"
160
+ }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultValuesForTcgAttributes = exports.TCGVariationAttributesEnum = exports.TCGAttributesEnum = exports.TCGCardFinishEnum = exports.TCGProductFormatsEnum = void 0;
3
+ exports.ItemNameVariantEnum = exports.defaultValuesForTcgAttributes = exports.TCGVariationAttributesEnum = exports.TCGAttributesEnum = exports.TCGCardFinishEnum = exports.TCGProductFormatsEnum = void 0;
4
4
  var TCGProductFormatsEnum;
5
5
  (function (TCGProductFormatsEnum) {
6
6
  TCGProductFormatsEnum["CARD"] = "tcg_card";
@@ -45,4 +45,11 @@ exports.defaultValuesForTcgAttributes = {
45
45
  [TCGVariationAttributesEnum.CONDITION]: '',
46
46
  [TCGVariationAttributesEnum.LANG]: ''
47
47
  };
48
+ var ItemNameVariantEnum;
49
+ (function (ItemNameVariantEnum) {
50
+ ItemNameVariantEnum["BOTH"] = "use-both";
51
+ ItemNameVariantEnum["PARENT"] = "use-parent";
52
+ ItemNameVariantEnum["DECLI"] = "use-decli";
53
+ })(ItemNameVariantEnum = exports.ItemNameVariantEnum || (exports.ItemNameVariantEnum = {}));
54
+ // #endregion
48
55
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Interfaces/TCG/index.ts"],"names":[],"mappings":";;;AA4FA,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAChC,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;IACjB,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;AACtB,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC;AAED,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IAC5B,sCAAiB,CAAA;IACjB,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,0CAAqB,CAAA;IACrB,2CAAsB,CAAA;IACtB,0DAAqC,CAAA;IACrC,sCAAiB,CAAA;IACjB,4CAAuB,CAAA;IACvB,8DAAyC,CAAA;IACzC,kDAA6B,CAAA;IAC7B,oEAA+C,CAAA;AAChD,CAAC,EAZW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAY5B;AAED,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC5B,0CAAqB,CAAA;IACrB,gDAA2B,CAAA;IAC3B,0CAAqB,CAAA;IACrB,oCAAe,CAAA;IACf,8CAAyB,CAAA;AAC1B,CAAC,EANW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAM5B;AAED;;;GAGG;AACH,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACrC,mDAAqB,CAAA;IACrB,yDAA2B,CAAA;IAC3B,mDAAqB,CAAA;AACtB,CAAC,EAJW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAIrC;AAEY,QAAA,6BAA6B,GAAsD;IAC/F,CAAC,0BAA0B,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM;IAC7D,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,EAAE;IAC1C,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,EAAE;CACrC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Interfaces/TCG/index.ts"],"names":[],"mappings":";;;AA8FA,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAChC,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;IACjB,8CAAqB,CAAA;IACrB,8CAAqB,CAAA;AACtB,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC;AAED,IAAY,iBAYX;AAZD,WAAY,iBAAiB;IAC5B,sCAAiB,CAAA;IACjB,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,0CAAqB,CAAA;IACrB,2CAAsB,CAAA;IACtB,0DAAqC,CAAA;IACrC,sCAAiB,CAAA;IACjB,4CAAuB,CAAA;IACvB,8DAAyC,CAAA;IACzC,kDAA6B,CAAA;IAC7B,oEAA+C,CAAA;AAChD,CAAC,EAZW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAY5B;AAED,IAAY,iBAMX;AAND,WAAY,iBAAiB;IAC5B,0CAAqB,CAAA;IACrB,gDAA2B,CAAA;IAC3B,0CAAqB,CAAA;IACrB,oCAAe,CAAA;IACf,8CAAyB,CAAA;AAC1B,CAAC,EANW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAM5B;AAED;;;GAGG;AACH,IAAY,0BAIX;AAJD,WAAY,0BAA0B;IACrC,mDAAqB,CAAA;IACrB,yDAA2B,CAAA;IAC3B,mDAAqB,CAAA;AACtB,CAAC,EAJW,0BAA0B,GAA1B,kCAA0B,KAA1B,kCAA0B,QAIrC;AAEY,QAAA,6BAA6B,GAAsD;IAC/F,CAAC,0BAA0B,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC,MAAM;IAC7D,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,EAAE;IAC1C,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAAE,EAAE;CACrC,CAAA;AA8BD,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC9B,wCAAiB,CAAA;IACjB,4CAAqB,CAAA;IACrB,0CAAmB,CAAA;AACpB,CAAC,EAJW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAI9B;AACD,aAAa"}
@@ -1,2 +1,60 @@
1
- import { ITcgExternalServiceParams } from '../Interfaces/TCG';
1
+ import { ICardFinishTag, ILangOption, ITcgAttributes, ITcgExternalServiceParams, ItemNameVariantEnum } from '../Interfaces/TCG';
2
+ import { TCGCardFinishEnum } from '../Interfaces/TCG';
3
+ import { IIndexedDeclinationAlgolia, IIndexedProductAlgolia } from '../Interfaces/Algolia';
4
+ import IInventoryItem from '../Interfaces/Product/IInventoryItem';
5
+ import { ICartItem } from '../Interfaces/Cart';
6
+ import IAttribute from '../Interfaces/Attribute';
2
7
  export declare const getDefaultTcgExternalServiceParams: () => ITcgExternalServiceParams;
8
+ /**
9
+ * Get show order for a given value
10
+ * @param finishAttrValue
11
+ */
12
+ export declare const getTcgFinishAttrOrder: (finishAttrValue?: TCGCardFinishEnum) => number;
13
+ export declare const getGradientForFinish: (finish: TCGCardFinishEnum) => "other" | "multi" | "cold" | "gold";
14
+ /**
15
+ * Get currently available declinations, ordered by finish attribute (TCG), and by current POS space lang (language attribute TCG)
16
+ * @param declinations
17
+ * @param locale
18
+ * @returns
19
+ */
20
+ export declare const filterAndOrderDeclinations: (declinations: IIndexedDeclinationAlgolia[] | undefined, locale: string | undefined, allInventories: IInventoryItem[]) => IIndexedDeclinationAlgolia[];
21
+ /**
22
+ * Construct all options for Language attribute (TCG), based on available declinations
23
+ * @param declinations
24
+ * @param allTcgAttrLabels All constructed labels based on expected TCG attributes
25
+ * @param locale Current POS locale
26
+ */
27
+ export declare const constructAllLangOptions: (declinations: IIndexedDeclinationAlgolia[], allTcgAttrLabels: ITcgAttributes | undefined, locale: string | undefined) => ILangOption[];
28
+ /**
29
+ * Construct all unique finish and condition attribute combinations (TCG), based on available declinations
30
+ * @param declinations
31
+ * @param allTcgAttrLabels
32
+ */
33
+ export declare const constructAllFinishOptions: (declinations: IIndexedDeclinationAlgolia[], allTcgAttrLabels: ITcgAttributes | undefined, locale: string | undefined) => ICardFinishTag[];
34
+ /**
35
+ * Get set label for a given card product in POS locale
36
+ * @param prod
37
+ * @param allAttributes
38
+ * @param locale
39
+ */
40
+ export declare const getProductSetLabel: (prod: IIndexedProductAlgolia | ICartItem, allAttributes: IAttribute[], locale: string | undefined) => string;
41
+ /**
42
+ * Get first found declination from list where passed attribute values found in decli
43
+ * @param decliList
44
+ * @param attributesToCheck Values of chosen TCG attributes to check for in decli.
45
+ */
46
+ export declare const findCorrespondingDecliByAttributes: (decliList: IIndexedDeclinationAlgolia[], attributesToCheck: {
47
+ [attrSlug: string]: string | undefined;
48
+ }) => IIndexedDeclinationAlgolia | undefined;
49
+ /**
50
+ * Get the available inventory for the currently selected store (found in local storage)
51
+ * @param inventoryItem
52
+ */
53
+ export declare const getAvailableInventoryForCurrentStore: (inventoryItem: IInventoryItem) => number;
54
+ /**
55
+ * Construct product or decli name to show (mostly for cart item retroactions)
56
+ * @param item - The cart item
57
+ * @param locale
58
+ * @param type - Which name(s) to use (either parent name, decli name, or both)
59
+ */
60
+ export declare const getProductNameToUse: (item: ICartItem, locale: string | undefined, type?: ItemNameVariantEnum) => string;
@@ -1,9 +1,241 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDefaultTcgExternalServiceParams = void 0;
6
+ exports.getProductNameToUse = exports.getAvailableInventoryForCurrentStore = exports.findCorrespondingDecliByAttributes = exports.getProductSetLabel = exports.constructAllFinishOptions = exports.constructAllLangOptions = exports.filterAndOrderDeclinations = exports.getGradientForFinish = exports.getTcgFinishAttrOrder = exports.getDefaultTcgExternalServiceParams = void 0;
7
+ const TCG_1 = require("../Interfaces/TCG");
8
+ const uniqBy_1 = __importDefault(require("lodash/uniqBy"));
9
+ const orderBy_1 = __importDefault(require("lodash/orderBy"));
10
+ const TCG_2 = require("../Interfaces/TCG");
11
+ const object_1 = require("../utils/object");
12
+ const locale_1 = require("../utils/locale");
4
13
  const getDefaultTcgExternalServiceParams = () => ({
5
14
  cardgame_slugs: [],
6
15
  default_parent_category: null
7
16
  });
8
17
  exports.getDefaultTcgExternalServiceParams = getDefaultTcgExternalServiceParams;
18
+ /**
19
+ * Get show order for a given value
20
+ * @param finishAttrValue
21
+ */
22
+ const getTcgFinishAttrOrder = (finishAttrValue = TCG_2.TCGCardFinishEnum.NORMAL) => {
23
+ const expectedFinishOrder = {
24
+ [TCG_2.TCGCardFinishEnum.NORMAL]: 1,
25
+ [TCG_2.TCGCardFinishEnum.FOIL]: 2,
26
+ [TCG_2.TCGCardFinishEnum.HOLO]: 3,
27
+ [TCG_2.TCGCardFinishEnum.HOLOFOIL]: 4,
28
+ [TCG_2.TCGCardFinishEnum.COLDFOIL]: 5,
29
+ [TCG_2.TCGCardFinishEnum.REVERSE_HOLOFOIL]: 6,
30
+ [TCG_2.TCGCardFinishEnum.ETCHED]: 7,
31
+ [TCG_2.TCGCardFinishEnum.UNLIMITED]: 8,
32
+ [TCG_2.TCGCardFinishEnum.UNLIMITED_HOLOFOIL]: 9,
33
+ [TCG_2.TCGCardFinishEnum.FIRST_EDITION]: 10,
34
+ [TCG_2.TCGCardFinishEnum.FIRST_EDITION_HOLOFOIL]: 11
35
+ };
36
+ return expectedFinishOrder[finishAttrValue];
37
+ };
38
+ exports.getTcgFinishAttrOrder = getTcgFinishAttrOrder;
39
+ const getGradientForFinish = (finish) => {
40
+ switch (finish) {
41
+ case TCG_2.TCGCardFinishEnum.REVERSE_HOLOFOIL:
42
+ case TCG_2.TCGCardFinishEnum.FIRST_EDITION_HOLOFOIL:
43
+ case TCG_2.TCGCardFinishEnum.UNLIMITED_HOLOFOIL:
44
+ return 'multi';
45
+ case TCG_2.TCGCardFinishEnum.COLDFOIL:
46
+ return 'cold';
47
+ case TCG_2.TCGCardFinishEnum.UNLIMITED:
48
+ case TCG_2.TCGCardFinishEnum.ETCHED:
49
+ case TCG_2.TCGCardFinishEnum.FIRST_EDITION:
50
+ return 'other';
51
+ case TCG_2.TCGCardFinishEnum.FOIL:
52
+ case TCG_2.TCGCardFinishEnum.HOLO:
53
+ case TCG_2.TCGCardFinishEnum.HOLOFOIL:
54
+ default:
55
+ return 'gold';
56
+ }
57
+ };
58
+ exports.getGradientForFinish = getGradientForFinish;
59
+ /**
60
+ * Get currently available declinations, ordered by finish attribute (TCG), and by current POS space lang (language attribute TCG)
61
+ * @param declinations
62
+ * @param locale
63
+ * @returns
64
+ */
65
+ const filterAndOrderDeclinations = (declinations, locale, allInventories) => {
66
+ if (!declinations || !declinations.length)
67
+ return [];
68
+ // A. Filter out any unavailable declinations from possible options
69
+ const removedUnavailableDeclis = declinations.filter((d) => {
70
+ return allInventories.some((i) => i.sku == d.sku);
71
+ });
72
+ // B. Order by finish attribute first, then by lang
73
+ return (0, orderBy_1.default)(removedUnavailableDeclis, (d) => {
74
+ let startNb = 2;
75
+ const finishAttr = (0, object_1.recursiveCheckObject)(d, 'attributes.tcg_finish');
76
+ if (finishAttr) {
77
+ // Multiply start number by finish attr order
78
+ startNb *= (0, exports.getTcgFinishAttrOrder)(finishAttr[0]);
79
+ }
80
+ // If lang attr same as current lang for POS, remove 1 to bring higher up in array
81
+ const langAttr = (0, object_1.recursiveCheckObject)(d, 'attributes.tcg_language');
82
+ if (locale && langAttr && langAttr[0] == `tcg_lang_${locale}`) {
83
+ startNb -= 1;
84
+ }
85
+ return startNb;
86
+ });
87
+ };
88
+ exports.filterAndOrderDeclinations = filterAndOrderDeclinations;
89
+ /**
90
+ * Construct all options for Language attribute (TCG), based on available declinations
91
+ * @param declinations
92
+ * @param allTcgAttrLabels All constructed labels based on expected TCG attributes
93
+ * @param locale Current POS locale
94
+ */
95
+ const constructAllLangOptions = (declinations, allTcgAttrLabels, locale) => {
96
+ if (!declinations.length)
97
+ return [];
98
+ const allOptions = [];
99
+ for (let variation of declinations) {
100
+ const tcgLangAttr = (0, object_1.recursiveCheckObject)(variation, `attributes.${TCG_2.TCGVariationAttributesEnum.LANG}`);
101
+ if (!tcgLangAttr)
102
+ continue;
103
+ const langSlug = tcgLangAttr[0];
104
+ if (langSlug && !allOptions.some((o) => o.slug == langSlug)) {
105
+ const sameLabel = !!allTcgAttrLabels ? allTcgAttrLabels.tcg_language[langSlug] : undefined;
106
+ allOptions.push({
107
+ slug: langSlug,
108
+ label: sameLabel && sameLabel.tag ? sameLabel.tag : tcgLangAttr[0],
109
+ fullLabel: sameLabel ? (0, locale_1.getLocaleOfDictionnary)(sameLabel.value, locale) : tcgLangAttr[0]
110
+ });
111
+ }
112
+ }
113
+ return allOptions;
114
+ };
115
+ exports.constructAllLangOptions = constructAllLangOptions;
116
+ /**
117
+ * Construct all unique finish and condition attribute combinations (TCG), based on available declinations
118
+ * @param declinations
119
+ * @param allTcgAttrLabels
120
+ */
121
+ const constructAllFinishOptions = (declinations, allTcgAttrLabels, locale) => {
122
+ if (!allTcgAttrLabels)
123
+ return [];
124
+ if (!declinations.length)
125
+ return [];
126
+ // a. Create combinations based on variations
127
+ // Only keep combos where condition attr is set
128
+ const allCombinaitions = declinations
129
+ .map((variation) => {
130
+ const tcgFinishAttr = (0, object_1.recursiveCheckObject)(variation, `attributes.${TCG_2.TCGVariationAttributesEnum.FINISH}`);
131
+ const tcgConditionAttr = (0, object_1.recursiveCheckObject)(variation, `attributes.${[TCG_2.TCGVariationAttributesEnum.CONDITION]}`);
132
+ return {
133
+ [TCG_2.TCGVariationAttributesEnum.CONDITION]: !tcgConditionAttr || !tcgConditionAttr.length
134
+ ? TCG_2.defaultValuesForTcgAttributes[TCG_2.TCGVariationAttributesEnum.CONDITION]
135
+ : tcgConditionAttr[0],
136
+ [TCG_2.TCGVariationAttributesEnum.FINISH]: !tcgFinishAttr || !tcgFinishAttr.length
137
+ ? TCG_2.defaultValuesForTcgAttributes[TCG_2.TCGVariationAttributesEnum.FINISH]
138
+ : tcgFinishAttr[0]
139
+ };
140
+ })
141
+ .filter((v) => v.tcg_condition);
142
+ // b. Filter out duplicates
143
+ const removedDuplicates = (0, uniqBy_1.default)(allCombinaitions, (v) => `${v.tcg_condition}${v.tcg_finish ? '_' + v.tcg_finish : ''}`);
144
+ // c. Return constructed options object array
145
+ return removedDuplicates.map((combAttr) => {
146
+ const condLabel = (0, object_1.recursiveCheckObject)(allTcgAttrLabels, `${TCG_2.TCGVariationAttributesEnum.CONDITION}.${combAttr.tcg_condition}.value`);
147
+ const finishLabel = (0, object_1.recursiveCheckObject)(allTcgAttrLabels, `${TCG_2.TCGVariationAttributesEnum.FINISH}.${combAttr.tcg_finish}.value`);
148
+ let fullLabelArray = [];
149
+ if (condLabel)
150
+ fullLabelArray.push((0, locale_1.getLocaleOfDictionnary)(condLabel, locale));
151
+ if (finishLabel)
152
+ fullLabelArray.push((0, locale_1.getLocaleOfDictionnary)(finishLabel, locale));
153
+ return {
154
+ label: `${(0, object_1.recursiveCheckObject)(allTcgAttrLabels, `${TCG_2.TCGVariationAttributesEnum.CONDITION}.${combAttr.tcg_condition}.tag`) || combAttr.tcg_condition}`,
155
+ variant: combAttr.tcg_finish,
156
+ value: combAttr,
157
+ fullLabel: fullLabelArray.join(' - '),
158
+ extraLabel: [TCG_2.TCGCardFinishEnum.FIRST_EDITION, TCG_2.TCGCardFinishEnum.FIRST_EDITION_HOLOFOIL].includes(combAttr.tcg_finish)
159
+ ? ' 1st'
160
+ : ''
161
+ };
162
+ });
163
+ };
164
+ exports.constructAllFinishOptions = constructAllFinishOptions;
165
+ /**
166
+ * Get set label for a given card product in POS locale
167
+ * @param prod
168
+ * @param allAttributes
169
+ * @param locale
170
+ */
171
+ const getProductSetLabel = (prod, allAttributes, locale) => {
172
+ const tcgSetAttr = (0, object_1.recursiveCheckObject)(prod, 'attributes.tcg_set');
173
+ if (!tcgSetAttr)
174
+ return '';
175
+ if (!allAttributes.length)
176
+ return tcgSetAttr[0];
177
+ const sameAttr = allAttributes.find((a) => a.slug == 'tcg_set');
178
+ if (!sameAttr)
179
+ return tcgSetAttr[0];
180
+ const sameValue = sameAttr.values.find((v) => v.slug == tcgSetAttr[0]);
181
+ return sameValue ? (0, locale_1.getLocaleOfDictionnary)(sameValue.value, locale) : tcgSetAttr[0];
182
+ };
183
+ exports.getProductSetLabel = getProductSetLabel;
184
+ /**
185
+ * Get first found declination from list where passed attribute values found in decli
186
+ * @param decliList
187
+ * @param attributesToCheck Values of chosen TCG attributes to check for in decli.
188
+ */
189
+ const findCorrespondingDecliByAttributes = (decliList, attributesToCheck) => {
190
+ if (Object.values(attributesToCheck).every((attr) => attr == undefined))
191
+ return;
192
+ const decliWithSameValues = decliList.find((d) => {
193
+ let foundSameCount = 0;
194
+ const arrayToCheck = Object.entries(attributesToCheck);
195
+ for (let [attrSlug, value] of arrayToCheck) {
196
+ const attrValueToCheck = (0, object_1.recursiveCheckObject)(d, `attributes.${attrSlug}.0`) ||
197
+ (0, object_1.recursiveCheckObject)(TCG_2.defaultValuesForTcgAttributes, attrSlug);
198
+ if (attrValueToCheck == value) {
199
+ foundSameCount += 1;
200
+ }
201
+ }
202
+ return foundSameCount == arrayToCheck.length;
203
+ });
204
+ return decliWithSameValues;
205
+ };
206
+ exports.findCorrespondingDecliByAttributes = findCorrespondingDecliByAttributes;
207
+ /**
208
+ * Get the available inventory for the currently selected store (found in local storage)
209
+ * @param inventoryItem
210
+ */
211
+ const getAvailableInventoryForCurrentStore = (inventoryItem) => {
212
+ const currentStore = localStorage.getItem('branch') || '';
213
+ const sameStoreInv = inventoryItem.inventories.find((i) => i.store_id == currentStore);
214
+ if (!sameStoreInv)
215
+ return 0;
216
+ return sameStoreInv.qty.available;
217
+ };
218
+ exports.getAvailableInventoryForCurrentStore = getAvailableInventoryForCurrentStore;
219
+ /**
220
+ * Construct product or decli name to show (mostly for cart item retroactions)
221
+ * @param item - The cart item
222
+ * @param locale
223
+ * @param type - Which name(s) to use (either parent name, decli name, or both)
224
+ */
225
+ const getProductNameToUse = (item, locale, type) => {
226
+ const productName = !!item.parent_name ? (0, locale_1.getLocaleOfDictionnary)(item.parent_name, locale) : '';
227
+ const decliName = !!item.name ? (0, locale_1.getLocaleOfDictionnary)(item.name, locale) : '';
228
+ let bothNames = [];
229
+ if (!!productName)
230
+ bothNames.push(productName);
231
+ if (!!decliName)
232
+ bothNames.push(decliName);
233
+ const nameStr = type === TCG_1.ItemNameVariantEnum.BOTH
234
+ ? bothNames.join(' | ')
235
+ : type === TCG_1.ItemNameVariantEnum.PARENT
236
+ ? productName
237
+ : decliName;
238
+ return nameStr;
239
+ };
240
+ exports.getProductNameToUse = getProductNameToUse;
9
241
  //# sourceMappingURL=tcgService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tcgService.js","sourceRoot":"","sources":["../../src/utils/tcgService.ts"],"names":[],"mappings":";;;AAEO,MAAM,kCAAkC,GAAG,GAA8B,EAAE,CAAC,CAAC;IACnF,cAAc,EAAE,EAAE;IAClB,uBAAuB,EAAE,IAAI;CAC7B,CAAC,CAAA;AAHW,QAAA,kCAAkC,sCAG7C"}
1
+ {"version":3,"file":"tcgService.js","sourceRoot":"","sources":["../../src/utils/tcgService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "addio-admin-sdk",
3
- "version": "1.7.111",
3
+ "version": "1.7.112",
4
4
  "description": "Admin EComm SDK - Addio",
5
5
  "main": "dist/index.js",
6
6
  "repository": "https://github.com/gitngin/gng-tb-admin-sdk",