feed-common 1.49.4 → 1.50.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/.vscode/settings.json +1 -1
- package/CHANGELOG.md +14 -0
- package/dist/utils/feed-templates/index.d.ts +21 -0
- package/dist/utils/feed-templates/index.d.ts.map +1 -1
- package/dist/utils/feed-templates/index.js +50 -14
- package/dist/utils/feed-templates/index.js.map +1 -1
- package/dist/utils/profile.d.ts +6 -0
- package/dist/utils/profile.d.ts.map +1 -1
- package/dist/utils/profile.js +26 -34
- package/dist/utils/profile.js.map +1 -1
- package/package.json +1 -1
- package/src/utils/feed-templates/index.ts +74 -20
- package/src/utils/profile.ts +47 -50
package/.vscode/settings.json
CHANGED
package/CHANGELOG.md
CHANGED
@@ -1,3 +1,17 @@
|
|
1
|
+
# [1.50.0](https://github.com/advertikon/package-maxify-feed-common/compare/v1.49.5...v1.50.0) (2024-10-04)
|
2
|
+
|
3
|
+
|
4
|
+
### Features
|
5
|
+
|
6
|
+
* add feed value parsing functions ([859f22e](https://github.com/advertikon/package-maxify-feed-common/commit/859f22e05c8c756b19c643b17a71746247f317d3))
|
7
|
+
|
8
|
+
## [1.49.5](https://github.com/advertikon/package-maxify-feed-common/compare/v1.49.4...v1.49.5) (2024-10-03)
|
9
|
+
|
10
|
+
|
11
|
+
### Bug Fixes
|
12
|
+
|
13
|
+
* change detectProfileChange function ([78d3494](https://github.com/advertikon/package-maxify-feed-common/commit/78d34944f2028fc52d803d14756a525577911053))
|
14
|
+
|
1
15
|
## [1.49.4](https://github.com/advertikon/package-maxify-feed-common/compare/v1.49.3...v1.49.4) (2024-10-03)
|
2
16
|
|
3
17
|
|
@@ -10,8 +10,29 @@ export declare const measureUnitsSchema: (units: string[]) => z.ZodEffects<z.Zod
|
|
10
10
|
export declare const optionalUrlSchema: z.ZodEffects<z.ZodString, string, string>;
|
11
11
|
export declare function getTemplate(type: XMLFeedType): XmlFeedTemplateType;
|
12
12
|
export declare const currencySchema: z.ZodEnum<["AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BOV", "BRL", "BSD", "BTN", "BWP", "BYN", "BZD", "CAD", "CDF", "CHE", "CHF", "CHW", "CLF", "CLP", "CNY", "COP", "COU", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "FOK", "GBP", "GEL", "GGP", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "IMP", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KID", "KMF", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MXV", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLE", "SLL", "SOS", "SRD", "SSP", "STN", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TVD", "TWD", "TZS", "UAH", "UGX", "USD", "USN", "UYI", "UYU", "UYW", "UZS", "VED", "VES", "VND", "VUV", "WST", "XAF", "XAG", "XAU", "XBA", "XBB", "XBC", "XBD", "XCD", "XDR", "XOF", "XPD", "XPF", "XPT", "XSU", "XTS", "XUA", "XXX", "YER", "ZAR", "ZMW", "ZWL"]>;
|
13
|
+
export declare const priceRegex: RegExp;
|
13
14
|
export declare const priceSchema: ({ min, max }?: {
|
14
15
|
min?: number | undefined;
|
15
16
|
max?: number | undefined;
|
16
17
|
}) => z.ZodEffects<z.ZodString, string, string>;
|
18
|
+
export declare function splitByCommaAndTrim(str: string): string[];
|
19
|
+
export declare function parsePriceString({ price, min, max }: {
|
20
|
+
price: string;
|
21
|
+
min?: number;
|
22
|
+
max: number;
|
23
|
+
}): {
|
24
|
+
value: string;
|
25
|
+
currency: string;
|
26
|
+
};
|
27
|
+
export declare const dimensionRegex: RegExp;
|
28
|
+
export declare function parseDimensionString({ dimension, min, max }: {
|
29
|
+
dimension: string;
|
30
|
+
min?: number;
|
31
|
+
max: number;
|
32
|
+
}): {
|
33
|
+
value: string;
|
34
|
+
unit: string;
|
35
|
+
};
|
36
|
+
export declare function convertToBoolean(value: string): boolean;
|
37
|
+
export declare function castToArray(value: string): string[];
|
17
38
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/feed-templates/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAMnE,eAAO,MAAM,QAAQ,MAAO,MAAM,YAAwB,CAAC;AAC3D,eAAO,MAAM,WAAW,MAAO,MAAM,WAAmC,CAAC;AAEzE,wBAAgB,QAAQ,CACpB,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAC5B,SAAS,UAAO,GACjB,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAY/B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAMrH;AAED,eAAO,MAAM,eAAe,qIAatB,CAAC;AAIP,eAAO,MAAM,kBAAkB,UAAW,MAAM,EAAE,8CAmB5C,CAAC;AAEP,eAAO,MAAM,iBAAiB,2CAE2D,CAAC;AAE1F,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,mBAAmB,CAiBlE;AAED,eAAO,MAAM,cAAc,qxCAyLzB,CAAC;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/feed-templates/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAGnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAMnE,eAAO,MAAM,QAAQ,MAAO,MAAM,YAAwB,CAAC;AAC3D,eAAO,MAAM,WAAW,MAAO,MAAM,WAAmC,CAAC;AAEzE,wBAAgB,QAAQ,CACpB,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAC5B,SAAS,UAAO,GACjB,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAY/B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,CAMrH;AAED,eAAO,MAAM,eAAe,qIAatB,CAAC;AAIP,eAAO,MAAM,kBAAkB,UAAW,MAAM,EAAE,8CAmB5C,CAAC;AAEP,eAAO,MAAM,iBAAiB,2CAE2D,CAAC;AAE1F,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,mBAAmB,CAiBlE;AAED,eAAO,MAAM,cAAc,qxCAyLzB,CAAC;AAEH,eAAO,MAAM,UAAU,QAAqD,CAAC;AAE7E,eAAO,MAAM,WAAW;;;+CAelB,CAAC;AAEP,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAOzD;AAED,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,GAAO,EAAE,GAAa,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAC/G,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CACpB,CAkBA;AAED,eAAO,MAAM,cAAc,QAAuC,CAAC;AAEnE,wBAAgB,oBAAoB,CAAC,EAAE,SAAS,EAAE,GAAO,EAAE,GAAa,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAC3H,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CAChB,CAcA;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAUvD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAEnD"}
|
@@ -265,32 +265,68 @@ export const currencySchema = z.enum([
|
|
265
265
|
'ZMW',
|
266
266
|
'ZWL',
|
267
267
|
]);
|
268
|
-
const priceRegex = /^(?<value>\d+(?:\.\d{1,2})?)\s
|
268
|
+
export const priceRegex = /^(?<value>\d+(?:\.\d{1,2})?)\s*(?<currency>\w+)$/;
|
269
269
|
export const priceSchema = ({ min = 0, max = 1000000 } = {}) => z.string().superRefine((v, ctx) => {
|
270
270
|
if (!v) {
|
271
271
|
return true;
|
272
272
|
}
|
273
|
-
|
274
|
-
|
273
|
+
try {
|
274
|
+
parsePriceString({ price: v, min, max });
|
275
|
+
return true;
|
276
|
+
}
|
277
|
+
catch (e) {
|
275
278
|
ctx.addIssue({
|
276
279
|
code: z.ZodIssueCode.custom,
|
277
|
-
message:
|
280
|
+
message: e.message,
|
278
281
|
});
|
279
282
|
}
|
283
|
+
});
|
284
|
+
export function splitByCommaAndTrim(str) {
|
285
|
+
return typeof str === 'string'
|
286
|
+
? str
|
287
|
+
.split(',')
|
288
|
+
.map(s => s.trim())
|
289
|
+
.filter(Boolean)
|
290
|
+
: [];
|
291
|
+
}
|
292
|
+
export function parsePriceString({ price, min = 0, max = 1000000 }) {
|
293
|
+
const match = priceRegex.exec(price);
|
294
|
+
if (!match) {
|
295
|
+
throw new Error('Invalid format');
|
296
|
+
}
|
280
297
|
else if (!Number.isFinite(match.groups?.value) ||
|
281
298
|
Number(match.groups?.value) < min ||
|
282
299
|
Number(match.groups?.value) < max) {
|
283
|
-
|
284
|
-
code: z.ZodIssueCode.custom,
|
285
|
-
message: `Value should be between ${min} and ${max}`,
|
286
|
-
});
|
300
|
+
throw new Error(`Value should be between ${min} and ${max}`);
|
287
301
|
}
|
288
302
|
else if (!currencySchema.safeParse(match.groups?.currency).success) {
|
289
|
-
|
290
|
-
code: z.ZodIssueCode.custom,
|
291
|
-
message: 'Invalid currency',
|
292
|
-
});
|
303
|
+
throw new Error('Invalid currency');
|
293
304
|
}
|
294
|
-
return
|
295
|
-
}
|
305
|
+
return { value: match.groups?.value, currency: match.groups?.currency };
|
306
|
+
}
|
307
|
+
export const dimensionRegex = /^(?<value>[\d.,]+)\s*(?<unit>\w+)$/;
|
308
|
+
export function parseDimensionString({ dimension, min = 0, max = 1000000 }) {
|
309
|
+
const match = dimensionRegex.exec(dimension);
|
310
|
+
if (!match) {
|
311
|
+
throw new Error('Invalid format');
|
312
|
+
}
|
313
|
+
else if (!Number.isFinite(match.groups?.value) ||
|
314
|
+
Number(match.groups?.value) < min ||
|
315
|
+
Number(match.groups?.value) < max) {
|
316
|
+
throw new Error(`Value should be between ${min} and ${max}`);
|
317
|
+
}
|
318
|
+
return { value: match.groups?.value, unit: match.groups?.unit };
|
319
|
+
}
|
320
|
+
export function convertToBoolean(value) {
|
321
|
+
if (value === 'true') {
|
322
|
+
return true;
|
323
|
+
}
|
324
|
+
if (value === 'false') {
|
325
|
+
return false;
|
326
|
+
}
|
327
|
+
throw new Error('Invalid boolean value');
|
328
|
+
}
|
329
|
+
export function castToArray(value) {
|
330
|
+
return Array.isArray(value) ? value : [value];
|
331
|
+
}
|
296
332
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/feed-templates/index.ts"],"names":[],"mappings":"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CL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACR,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,kDAAkD,CAAC;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/feed-templates/index.ts"],"names":[],"mappings":"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CL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IA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"}
|
package/dist/utils/profile.d.ts
CHANGED
@@ -32,6 +32,12 @@ export declare function compareMappings(a: ProductUploadMapping[], b: ProductUpl
|
|
32
32
|
export declare function optionIsString(option: OptionType): option is string;
|
33
33
|
export declare function optionIsItem(option: OptionType): option is OptionTypeItem;
|
34
34
|
export declare function optionIsGroup(option: OptionType): option is OptionTypeGroup;
|
35
|
+
export declare function detectProfileChange(a: ProductUploadProfile, b: ProductUploadProfile): {
|
36
|
+
name: boolean;
|
37
|
+
rules: boolean;
|
38
|
+
mappings: boolean;
|
39
|
+
id: boolean;
|
40
|
+
};
|
35
41
|
export declare function sanitizeUploadProfile(profile: ProductUploadProfile): ProductUploadProfile;
|
36
42
|
export declare function variableType(values: MappingSourceValueType[]): MappingSourceValueType;
|
37
43
|
//# sourceMappingURL=profile.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/utils/profile.ts"],"names":[],"mappings":"AACA,OAAO,EACH,UAAU,EACV,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/utils/profile.ts"],"names":[],"mappings":"AACA,OAAO,EACH,UAAU,EACV,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,2BAA2B,EAC3B,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,kBAAkB,EACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAoB,sBAAsB,EAAmB,MAAM,mCAAmC,CAAC;AAG9G;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAE,KAAK,EAAE,qBAAqB,EAAE,GAAG,MAAM,EAAE,CAgB9E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAE,KAAK,EAAE,qBAAqB,EAAE,GAAG,MAAM,EAAE,CAW7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,wBAAwB,EAAE,GAAG,MAAM,EAAE,CAwB/E;AAWD,wBAAgB,sBAAsB,CAAE,QAAQ,EAAE,MAAM,iBAAiB,GAAG,MAAM,iBAAiB,CAqClG;AAED,wBAAgB,gBAAgB,CAAE,SAAS,GAAE,2BAA2B,CAAC,OAAO,CAAM,GAAG,qBAAqB,CAE7G;AAiCD,wBAAgB,QAAQ,CAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAE5D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CACxB,CAAC,GAAE,kBAAqC,EACxC,CAAC,GAAE,kBAAqC,GACzC,OAAO,CAmCT;AAUD,wBAAgB,eAAe,CAAE,CAAC,EAAE,oBAAoB,EAAE,EAAE,CAAC,EAAE,oBAAoB,EAAE,GAAG,OAAO,CA6B9F;AAED,wBAAgB,cAAc,CAAE,MAAM,EAAE,UAAU,GAAG,MAAM,IAAI,MAAM,CAEpE;AAED,wBAAgB,YAAY,CAAE,MAAM,EAAE,UAAU,GAAG,MAAM,IAAI,cAAc,CAE1E;AAED,wBAAgB,aAAa,CAAE,MAAM,EAAE,UAAU,GAAG,MAAM,IAAI,eAAe,CAE5E;AAED,wBAAgB,mBAAmB,CAC/B,CAAC,EAAE,oBAAoB,EACvB,CAAC,EAAE,oBAAoB,GACxB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAE,CA+BnE;AAED,wBAAgB,qBAAqB,CAAE,OAAO,EAAE,oBAAoB,GAAG,oBAAoB,CAc1F;AAED,wBAAgB,YAAY,CAAE,MAAM,EAAE,sBAAsB,EAAE,GAAG,sBAAsB,CAkBtF"}
|
package/dist/utils/profile.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { MappingSourceValueType, RULES_OPERATORS } from '../constants/profile.constants.js';
|
1
|
+
import { GmcApiConstAttrs, MappingSourceValueType, RULES_OPERATORS } from '../constants/profile.constants.js';
|
2
2
|
import { code } from './utils.js';
|
3
3
|
/**
|
4
4
|
* Check for rules duplication
|
@@ -208,39 +208,31 @@ export function optionIsItem(option) {
|
|
208
208
|
export function optionIsGroup(option) {
|
209
209
|
return typeof option !== 'string' && 'options' in option;
|
210
210
|
}
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
// const mappingsA = a.mappings?.filter(m => !requiredAttrs.includes(m.attribute));
|
237
|
-
// const mappingsB = b.mappings?.filter(m => !requiredAttrs.includes(m.attribute));
|
238
|
-
// changes.mappings = !compareMappings(mappingsA, mappingsB);
|
239
|
-
// if (!compareRules(a.rules, b.rules)) {
|
240
|
-
// changes.rules = true;
|
241
|
-
// }
|
242
|
-
// return changes;
|
243
|
-
// }
|
211
|
+
export function detectProfileChange(a, b) {
|
212
|
+
const changes = {
|
213
|
+
name: false,
|
214
|
+
rules: false,
|
215
|
+
mappings: false,
|
216
|
+
id: false,
|
217
|
+
};
|
218
|
+
if (a.name !== b.name) {
|
219
|
+
changes.name = true;
|
220
|
+
}
|
221
|
+
if (GmcApiConstAttrs.some(key => {
|
222
|
+
const mappingA = a.mappings?.filter(m => m.attribute === key) ?? [];
|
223
|
+
const mappingB = b.mappings?.filter(m => m.attribute === key) ?? [];
|
224
|
+
return !compareMappings(mappingA, mappingB);
|
225
|
+
})) {
|
226
|
+
changes.id = true;
|
227
|
+
}
|
228
|
+
const mappingsA = a.mappings?.filter(m => !GmcApiConstAttrs.includes(m.attribute));
|
229
|
+
const mappingsB = b.mappings?.filter(m => !GmcApiConstAttrs.includes(m.attribute));
|
230
|
+
changes.mappings = !compareMappings(mappingsA, mappingsB);
|
231
|
+
if (!compareRules(a.rules, b.rules)) {
|
232
|
+
changes.rules = true;
|
233
|
+
}
|
234
|
+
return changes;
|
235
|
+
}
|
244
236
|
export function sanitizeUploadProfile(profile) {
|
245
237
|
if (profile.rules?.sections) {
|
246
238
|
profile.rules.sections = profile.rules.sections.filter(section => section.ruleItems.length > 0);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/utils/profile.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/utils/profile.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -286,7 +286,7 @@ export const currencySchema = z.enum([
|
|
286
286
|
'ZWL',
|
287
287
|
]);
|
288
288
|
|
289
|
-
const priceRegex = /^(?<value>\d+(?:\.\d{1,2})?)\s
|
289
|
+
export const priceRegex = /^(?<value>\d+(?:\.\d{1,2})?)\s*(?<currency>\w+)$/;
|
290
290
|
|
291
291
|
export const priceSchema = ({ min = 0, max = 1000000 } = {}) =>
|
292
292
|
z.string().superRefine((v, ctx) => {
|
@@ -294,28 +294,82 @@ export const priceSchema = ({ min = 0, max = 1000000 } = {}) =>
|
|
294
294
|
return true;
|
295
295
|
}
|
296
296
|
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
code: z.ZodIssueCode.custom,
|
302
|
-
message: 'Invalid format',
|
303
|
-
});
|
304
|
-
} else if (
|
305
|
-
!Number.isFinite(match.groups?.value) ||
|
306
|
-
Number(match.groups?.value) < min ||
|
307
|
-
Number(match.groups?.value) < max
|
308
|
-
) {
|
309
|
-
ctx.addIssue({
|
310
|
-
code: z.ZodIssueCode.custom,
|
311
|
-
message: `Value should be between ${min} and ${max}`,
|
312
|
-
});
|
313
|
-
} else if (!currencySchema.safeParse(match.groups?.currency).success) {
|
297
|
+
try {
|
298
|
+
parsePriceString({ price: v, min, max });
|
299
|
+
return true;
|
300
|
+
} catch (e: any) {
|
314
301
|
ctx.addIssue({
|
315
302
|
code: z.ZodIssueCode.custom,
|
316
|
-
message:
|
303
|
+
message: e.message,
|
317
304
|
});
|
318
305
|
}
|
306
|
+
});
|
307
|
+
|
308
|
+
export function splitByCommaAndTrim(str: string): string[] {
|
309
|
+
return typeof str === 'string'
|
310
|
+
? str
|
311
|
+
.split(',')
|
312
|
+
.map(s => s.trim())
|
313
|
+
.filter(Boolean)
|
314
|
+
: [];
|
315
|
+
}
|
316
|
+
|
317
|
+
export function parsePriceString({ price, min = 0, max = 1000000 }: { price: string; min?: number; max: number }): {
|
318
|
+
value: string;
|
319
|
+
currency: string;
|
320
|
+
} {
|
321
|
+
const match = priceRegex.exec(price);
|
322
|
+
|
323
|
+
if (!match) {
|
324
|
+
throw new Error('Invalid format');
|
325
|
+
} else if (
|
326
|
+
!Number.isFinite(match.groups?.value) ||
|
327
|
+
Number(match.groups?.value) < min ||
|
328
|
+
Number(match.groups?.value) < max
|
329
|
+
) {
|
330
|
+
|
331
|
+
throw new Error(`Value should be between ${min} and ${max}`)
|
332
|
+
|
333
|
+
} else if (!currencySchema.safeParse(match.groups?.currency).success) {
|
334
|
+
throw new Error('Invalid currency');
|
335
|
+
}
|
336
|
+
|
337
|
+
return { value: match.groups?.value as string, currency: match.groups?.currency as string };
|
338
|
+
}
|
339
|
+
|
340
|
+
export const dimensionRegex = /^(?<value>[\d.,]+)\s*(?<unit>\w+)$/;
|
341
|
+
|
342
|
+
export function parseDimensionString({ dimension, min = 0, max = 1000000 }: { dimension: string; min?: number; max: number }): {
|
343
|
+
value: string;
|
344
|
+
unit: string;
|
345
|
+
} {
|
346
|
+
const match = dimensionRegex.exec(dimension);
|
347
|
+
|
348
|
+
if (!match) {
|
349
|
+
throw new Error('Invalid format');
|
350
|
+
} else if (
|
351
|
+
!Number.isFinite(match.groups?.value) ||
|
352
|
+
Number(match.groups?.value) < min ||
|
353
|
+
Number(match.groups?.value) < max
|
354
|
+
) {
|
355
|
+
throw new Error(`Value should be between ${min} and ${max}`);
|
356
|
+
}
|
357
|
+
|
358
|
+
return { value: match.groups?.value as string, unit: match.groups?.unit as string };
|
359
|
+
}
|
319
360
|
|
361
|
+
export function convertToBoolean(value: string): boolean {
|
362
|
+
if (value === 'true') {
|
320
363
|
return true;
|
321
|
-
}
|
364
|
+
}
|
365
|
+
|
366
|
+
if (value === 'false') {
|
367
|
+
return false;
|
368
|
+
}
|
369
|
+
|
370
|
+
throw new Error('Invalid boolean value');
|
371
|
+
}
|
372
|
+
|
373
|
+
export function castToArray(value: string): string[] {
|
374
|
+
return Array.isArray(value) ? value : [value];
|
375
|
+
}
|
package/src/utils/profile.ts
CHANGED
@@ -11,7 +11,7 @@ import {
|
|
11
11
|
ProductUploadRuleSection,
|
12
12
|
ProductUploadRules,
|
13
13
|
} from '../types/profile.types.js';
|
14
|
-
import { MappingSourceValueType, RULES_OPERATORS } from '../constants/profile.constants.js';
|
14
|
+
import { GmcApiConstAttrs, MappingSourceValueType, RULES_OPERATORS } from '../constants/profile.constants.js';
|
15
15
|
import { code } from './utils.js';
|
16
16
|
|
17
17
|
/**
|
@@ -19,7 +19,7 @@ import { code } from './utils.js';
|
|
19
19
|
* @param rules
|
20
20
|
* @returns
|
21
21
|
*/
|
22
|
-
export function checkRuleDuplication(rules: ProductUploadRuleItem[]): string[] {
|
22
|
+
export function checkRuleDuplication (rules: ProductUploadRuleItem[]): string[] {
|
23
23
|
return rules
|
24
24
|
.map(r => {
|
25
25
|
for (const rule of rules) {
|
@@ -42,7 +42,7 @@ export function checkRuleDuplication(rules: ProductUploadRuleItem[]): string[] {
|
|
42
42
|
* @param rules
|
43
43
|
* @returns
|
44
44
|
*/
|
45
|
-
export function checkRuleAlwaysness(rules: ProductUploadRuleItem[]): string[] {
|
45
|
+
export function checkRuleAlwaysness (rules: ProductUploadRuleItem[]): string[] {
|
46
46
|
return rules
|
47
47
|
.map(r => {
|
48
48
|
for (const rule of rules) {
|
@@ -60,7 +60,7 @@ export function checkRuleAlwaysness(rules: ProductUploadRuleItem[]): string[] {
|
|
60
60
|
* @param sections
|
61
61
|
* @returns
|
62
62
|
*/
|
63
|
-
export function checkRuleDeadlocks(input: ProductUploadRuleSection[]): string[] {
|
63
|
+
export function checkRuleDeadlocks (input: ProductUploadRuleSection[]): string[] {
|
64
64
|
const totalList = [] as string[][];
|
65
65
|
const sections = structuredClone(input);
|
66
66
|
|
@@ -86,7 +86,7 @@ export function checkRuleDeadlocks(input: ProductUploadRuleSection[]): string[]
|
|
86
86
|
return sections.some(s => s.ruleItems.length === 0) ? totalList.flat() : [];
|
87
87
|
}
|
88
88
|
|
89
|
-
function isExclusive(rule1: ProductUploadRuleItem, rule2: ProductUploadRuleItem): boolean {
|
89
|
+
function isExclusive (rule1: ProductUploadRuleItem, rule2: ProductUploadRuleItem): boolean {
|
90
90
|
return (
|
91
91
|
rule1.id !== rule2.id &&
|
92
92
|
rule1.attribute === rule2.attribute &&
|
@@ -95,7 +95,7 @@ function isExclusive(rule1: ProductUploadRuleItem, rule2: ProductUploadRuleItem)
|
|
95
95
|
);
|
96
96
|
}
|
97
97
|
|
98
|
-
export function getOperatorCounterpart(operator: keyof RuleOperatorsType): keyof RuleOperatorsType {
|
98
|
+
export function getOperatorCounterpart (operator: keyof RuleOperatorsType): keyof RuleOperatorsType {
|
99
99
|
switch (operator) {
|
100
100
|
case RULES_OPERATORS.EQUALS:
|
101
101
|
return RULES_OPERATORS.NOT_EQUALS;
|
@@ -134,7 +134,7 @@ export function getOperatorCounterpart(operator: keyof RuleOperatorsType): keyof
|
|
134
134
|
}
|
135
135
|
}
|
136
136
|
|
137
|
-
export function getEmptyRuleItem(attribute: ProductUploadRuleFilterType['value'] = ''): ProductUploadRuleItem {
|
137
|
+
export function getEmptyRuleItem (attribute: ProductUploadRuleFilterType['value'] = ''): ProductUploadRuleItem {
|
138
138
|
return { attribute, operator: '', value: '', id: code() };
|
139
139
|
}
|
140
140
|
|
@@ -169,7 +169,7 @@ export function getEmptyRuleItem(attribute: ProductUploadRuleFilterType['value']
|
|
169
169
|
// return 0;
|
170
170
|
// }
|
171
171
|
|
172
|
-
export function hasRules(rules: ProductUploadRules): boolean {
|
172
|
+
export function hasRules (rules: ProductUploadRules): boolean {
|
173
173
|
return Array.isArray(rules?.sections) && rules.sections.some(section => section.ruleItems.length > 0);
|
174
174
|
}
|
175
175
|
|
@@ -179,7 +179,7 @@ export function hasRules(rules: ProductUploadRules): boolean {
|
|
179
179
|
* @param b
|
180
180
|
* @returns
|
181
181
|
*/
|
182
|
-
export function compareRules(
|
182
|
+
export function compareRules (
|
183
183
|
a: ProductUploadRules = { sections: [] },
|
184
184
|
b: ProductUploadRules = { sections: [] }
|
185
185
|
): boolean {
|
@@ -219,7 +219,7 @@ export function compareRules(
|
|
219
219
|
return matchedSections.length === a.sections.length;
|
220
220
|
}
|
221
221
|
|
222
|
-
function compareValues(a: any, b: any): boolean {
|
222
|
+
function compareValues (a: any, b: any): boolean {
|
223
223
|
if (Array.isArray(a) && Array.isArray(b)) {
|
224
224
|
return a.length === b.length && a.every(i => b.includes(i));
|
225
225
|
}
|
@@ -227,7 +227,7 @@ function compareValues(a: any, b: any): boolean {
|
|
227
227
|
return a === b;
|
228
228
|
}
|
229
229
|
|
230
|
-
export function compareMappings(a: ProductUploadMapping[], b: ProductUploadMapping[]): boolean {
|
230
|
+
export function compareMappings (a: ProductUploadMapping[], b: ProductUploadMapping[]): boolean {
|
231
231
|
const matchedMappings = [] as number[];
|
232
232
|
|
233
233
|
if (a.length !== b.length) {
|
@@ -258,58 +258,55 @@ export function compareMappings(a: ProductUploadMapping[], b: ProductUploadMappi
|
|
258
258
|
return matchedMappings.length === a.length;
|
259
259
|
}
|
260
260
|
|
261
|
-
export function optionIsString(option: OptionType): option is string {
|
261
|
+
export function optionIsString (option: OptionType): option is string {
|
262
262
|
return typeof option === 'string';
|
263
263
|
}
|
264
264
|
|
265
|
-
export function optionIsItem(option: OptionType): option is OptionTypeItem {
|
265
|
+
export function optionIsItem (option: OptionType): option is OptionTypeItem {
|
266
266
|
return typeof option !== 'string' && 'value' in option;
|
267
267
|
}
|
268
268
|
|
269
|
-
export function optionIsGroup(option: OptionType): option is OptionTypeGroup {
|
269
|
+
export function optionIsGroup (option: OptionType): option is OptionTypeGroup {
|
270
270
|
return typeof option !== 'string' && 'options' in option;
|
271
271
|
}
|
272
272
|
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
// if (a.name !== b.name) {
|
285
|
-
// changes.name = true;
|
286
|
-
// }
|
273
|
+
export function detectProfileChange (
|
274
|
+
a: ProductUploadProfile,
|
275
|
+
b: ProductUploadProfile
|
276
|
+
): { name: boolean; rules: boolean; mappings: boolean; id: boolean } {
|
277
|
+
const changes = {
|
278
|
+
name: false,
|
279
|
+
rules: false,
|
280
|
+
mappings: false,
|
281
|
+
id: false,
|
282
|
+
};
|
287
283
|
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
// .some(key => {
|
292
|
-
// const mappingA = a.mappings?.filter(m => m.attribute === key) ?? [];
|
293
|
-
// const mappingB = b.mappings?.filter(m => m.attribute === key) ?? [];
|
294
|
-
// return !compareMappings(mappingA, mappingB);
|
295
|
-
// })
|
296
|
-
// ) {
|
297
|
-
// changes.id = true;
|
298
|
-
// }
|
284
|
+
if (a.name !== b.name) {
|
285
|
+
changes.name = true;
|
286
|
+
}
|
299
287
|
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
288
|
+
if (
|
289
|
+
GmcApiConstAttrs.some(key => {
|
290
|
+
const mappingA = a.mappings?.filter(m => m.attribute === key) ?? [];
|
291
|
+
const mappingB = b.mappings?.filter(m => m.attribute === key) ?? [];
|
292
|
+
return !compareMappings(mappingA, mappingB);
|
293
|
+
})
|
294
|
+
) {
|
295
|
+
changes.id = true;
|
296
|
+
}
|
304
297
|
|
305
|
-
|
306
|
-
|
307
|
-
|
298
|
+
const mappingsA = a.mappings?.filter(m => !GmcApiConstAttrs.includes(m.attribute));
|
299
|
+
const mappingsB = b.mappings?.filter(m => !GmcApiConstAttrs.includes(m.attribute));
|
300
|
+
changes.mappings = !compareMappings(mappingsA, mappingsB);
|
308
301
|
|
309
|
-
|
310
|
-
|
302
|
+
if (!compareRules(a.rules, b.rules)) {
|
303
|
+
changes.rules = true;
|
304
|
+
}
|
305
|
+
|
306
|
+
return changes;
|
307
|
+
}
|
311
308
|
|
312
|
-
export function sanitizeUploadProfile(profile: ProductUploadProfile): ProductUploadProfile {
|
309
|
+
export function sanitizeUploadProfile (profile: ProductUploadProfile): ProductUploadProfile {
|
313
310
|
if (profile.rules?.sections) {
|
314
311
|
profile.rules.sections = profile.rules.sections.filter(section => section.ruleItems.length > 0);
|
315
312
|
}
|
@@ -325,7 +322,7 @@ export function sanitizeUploadProfile(profile: ProductUploadProfile): ProductUpl
|
|
325
322
|
return profile;
|
326
323
|
}
|
327
324
|
|
328
|
-
export function variableType(values: MappingSourceValueType[]): MappingSourceValueType {
|
325
|
+
export function variableType (values: MappingSourceValueType[]): MappingSourceValueType {
|
329
326
|
if (values.some(v => v === MappingSourceValueType.STRING)) {
|
330
327
|
return MappingSourceValueType.STRING;
|
331
328
|
}
|