@salla.sa/twilight-components 2.11.126 → 2.11.128
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/cjs/{Helper-63d6ab45.js → Helper-f14223e6.js} +48 -1
- package/dist/cjs/Helper-f14223e6.js.map +1 -0
- package/dist/cjs/app-globals-8c76baa2.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/salla-add-product-button_40.cjs.entry.js +2 -2
- package/dist/cjs/salla-add-product-button_40.cjs.entry.js.map +1 -1
- package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
- package/dist/cjs/salla-products-list.cjs.entry.js +27 -47
- package/dist/cjs/salla-products-list.cjs.entry.js.map +1 -1
- package/dist/cjs/salla-products-slider.cjs.entry.js +9 -35
- package/dist/cjs/salla-products-slider.cjs.entry.js.map +1 -1
- package/dist/cjs/twilight.cjs.js +1 -1
- package/dist/collection/Helpers/Helper.js +47 -0
- package/dist/collection/Helpers/Helper.js.map +1 -1
- package/dist/collection/components/salla-products-list/salla-products-list.js +27 -47
- package/dist/collection/components/salla-products-list/salla-products-list.js.map +1 -1
- package/dist/collection/components/salla-products-slider/salla-products-slider.js +26 -52
- package/dist/collection/components/salla-products-slider/salla-products-slider.js.map +1 -1
- package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
- package/dist/collection/components/salla-quantity-input/salla-quantity-input.js.map +1 -1
- package/dist/components/Helper.js +47 -0
- package/dist/components/Helper.js.map +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/salla-products-list.js +27 -47
- package/dist/components/salla-products-list.js.map +1 -1
- package/dist/components/salla-products-slider.js +10 -36
- package/dist/components/salla-products-slider.js.map +1 -1
- package/dist/components/salla-quantity-input.js +1 -1
- package/dist/components/salla-quantity-input.js.map +1 -1
- package/dist/esm/{Helper-30bbdc37.js → Helper-a7971963.js} +48 -1
- package/dist/esm/Helper-a7971963.js.map +1 -0
- package/dist/esm/app-globals-8e3be062.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/salla-add-product-button_40.entry.js +2 -2
- package/dist/esm/salla-add-product-button_40.entry.js.map +1 -1
- package/dist/esm/salla-filters-widget.entry.js +1 -1
- package/dist/esm/salla-products-list.entry.js +27 -47
- package/dist/esm/salla-products-list.entry.js.map +1 -1
- package/dist/esm/salla-products-slider.entry.js +9 -35
- package/dist/esm/salla-products-slider.entry.js.map +1 -1
- package/dist/esm/twilight.js +1 -1
- package/dist/esm-es5/Helper-a7971963.js +5 -0
- package/dist/esm-es5/Helper-a7971963.js.map +1 -0
- package/dist/esm-es5/app-globals-8e3be062.js.map +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/salla-add-product-button_40.entry.js +1 -1
- package/dist/esm-es5/salla-add-product-button_40.entry.js.map +1 -1
- package/dist/esm-es5/salla-filters-widget.entry.js +1 -1
- package/dist/esm-es5/salla-products-list.entry.js +2 -2
- package/dist/esm-es5/salla-products-list.entry.js.map +1 -1
- package/dist/esm-es5/salla-products-slider.entry.js +1 -1
- package/dist/esm-es5/salla-products-slider.entry.js.map +1 -1
- package/dist/esm-es5/twilight.js +1 -1
- package/dist/twilight/p-0254e9be.system.js +1 -1
- package/dist/twilight/p-059b0be0.system.js.map +1 -1
- package/dist/twilight/{p-3544bca0.entry.js → p-05e73fab.entry.js} +2 -2
- package/dist/twilight/{p-3544bca0.entry.js.map → p-05e73fab.entry.js.map} +1 -1
- package/dist/twilight/p-2042f370.system.js +5 -0
- package/dist/twilight/p-2042f370.system.js.map +1 -0
- package/dist/twilight/p-24d6867a.entry.js +5 -0
- package/dist/twilight/p-24d6867a.entry.js.map +1 -0
- package/dist/twilight/p-3278e007.js.map +1 -1
- package/dist/twilight/p-5ffffea6.js +5 -0
- package/dist/twilight/p-5ffffea6.js.map +1 -0
- package/dist/twilight/p-7857f10e.system.entry.js +5 -0
- package/dist/twilight/p-7857f10e.system.entry.js.map +1 -0
- package/dist/twilight/{p-710f64c1.entry.js → p-84baa754.entry.js} +2 -2
- package/dist/twilight/p-908e0bc9.system.entry.js +5 -0
- package/dist/twilight/p-908e0bc9.system.entry.js.map +1 -0
- package/dist/twilight/{p-3ae8f976.system.entry.js → p-941f36a6.system.entry.js} +2 -2
- package/dist/twilight/{p-3ae8f976.system.entry.js.map → p-941f36a6.system.entry.js.map} +1 -1
- package/dist/twilight/{p-e4f8147f.system.entry.js → p-d38d47c0.system.entry.js} +2 -2
- package/dist/twilight/p-ef0c75da.entry.js +5 -0
- package/dist/twilight/p-ef0c75da.entry.js.map +1 -0
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/types/Helpers/Helper.d.ts +2 -0
- package/dist/types/components/salla-products-list/salla-products-list.d.ts +4 -2
- package/dist/types/components/salla-products-slider/salla-products-slider.d.ts +6 -6
- package/package.json +5 -5
- package/dist/cjs/Helper-63d6ab45.js.map +0 -1
- package/dist/esm/Helper-30bbdc37.js.map +0 -1
- package/dist/esm-es5/Helper-30bbdc37.js +0 -5
- package/dist/esm-es5/Helper-30bbdc37.js.map +0 -1
- package/dist/twilight/p-77944169.system.js +0 -5
- package/dist/twilight/p-77944169.system.js.map +0 -1
- package/dist/twilight/p-82053aa3.system.entry.js +0 -5
- package/dist/twilight/p-82053aa3.system.entry.js.map +0 -1
- package/dist/twilight/p-be3279c0.entry.js +0 -5
- package/dist/twilight/p-be3279c0.entry.js.map +0 -1
- package/dist/twilight/p-c3539119.entry.js +0 -5
- package/dist/twilight/p-c3539119.entry.js.map +0 -1
- package/dist/twilight/p-cf703bcf.system.entry.js +0 -5
- package/dist/twilight/p-cf703bcf.system.entry.js.map +0 -1
- package/dist/twilight/p-dad8bacc.js +0 -5
- package/dist/twilight/p-dad8bacc.js.map +0 -1
- /package/dist/twilight/{p-710f64c1.entry.js.map → p-84baa754.entry.js.map} +0 -0
- /package/dist/twilight/{p-e4f8147f.system.entry.js.map → p-d38d47c0.system.entry.js.map} +0 -0
|
@@ -33,9 +33,56 @@ class Helper {
|
|
|
33
33
|
//@ts-ignore
|
|
34
34
|
return this.debounce_(fn, ...data);
|
|
35
35
|
}
|
|
36
|
+
getProductsSource(source) {
|
|
37
|
+
return {
|
|
38
|
+
'brands.single': 'brands',
|
|
39
|
+
'product.index': 'categories',
|
|
40
|
+
'product.index.latest': 'latest',
|
|
41
|
+
'product.index.offers': 'offers',
|
|
42
|
+
'product.index.search': 'search',
|
|
43
|
+
'landing-page': 'landing-page',
|
|
44
|
+
'product.index.tag': 'tags',
|
|
45
|
+
'product.index.sales': 'sales',
|
|
46
|
+
'components.most_sales_products': 'sales', //temporary, delete it after two days from now
|
|
47
|
+
}[source || salla.config.get('page.slug')] || source || 'latest';
|
|
48
|
+
}
|
|
49
|
+
getProductsSourceValue(source, sourceValue) {
|
|
50
|
+
const parsedSource = this.getProductsSource(source);
|
|
51
|
+
// Validate if the source value is a valid JSON string
|
|
52
|
+
let parsedSourceValue = null;
|
|
53
|
+
if (sourceValue) {
|
|
54
|
+
try {
|
|
55
|
+
parsedSourceValue = JSON.parse(sourceValue);
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
console.error('Invalid JSON string in sourceValue:', error);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
// Handle different source types
|
|
62
|
+
if (!['search', 'json', 'offers', 'latest', 'sales', 'related'].includes(parsedSource)) {
|
|
63
|
+
if (Array.isArray(parsedSourceValue) && parsedSourceValue.length) {
|
|
64
|
+
return parsedSourceValue;
|
|
65
|
+
}
|
|
66
|
+
if (typeof parsedSourceValue === 'number') {
|
|
67
|
+
return [parsedSourceValue];
|
|
68
|
+
}
|
|
69
|
+
if (!sourceValue && ['categories', 'tags', 'brands'].includes(source)) {
|
|
70
|
+
return [salla.config.get('page.id')];
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Return sourceValue if it exists and is a valid JSON object/array
|
|
74
|
+
if (parsedSourceValue || sourceValue) {
|
|
75
|
+
return parsedSourceValue || sourceValue;
|
|
76
|
+
}
|
|
77
|
+
if (parsedSource === 'search') {
|
|
78
|
+
return new URLSearchParams(window.location.search).get('q') || '';
|
|
79
|
+
}
|
|
80
|
+
// Return page id as default value
|
|
81
|
+
return salla.config.get('page.id');
|
|
82
|
+
}
|
|
36
83
|
}
|
|
37
84
|
const Helper$1 = new Helper;
|
|
38
85
|
|
|
39
86
|
exports.Helper = Helper$1;
|
|
40
87
|
|
|
41
|
-
//# sourceMappingURL=Helper-
|
|
88
|
+
//# sourceMappingURL=Helper-f14223e6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"Helper-f14223e6.js","mappings":"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","names":[],"sources":["./src/Helpers/Helper.ts"],"sourcesContent":["//TODO::reduce it to 10\nsalla.event.setMaxListeners(100);\n\nclass Helper {\n private debounce_: Boolean;\n\n toggleElementClassIf(element, classes1, classes2, callback) {\n classes1 = Array.isArray(classes1) ? classes1 : classes1.split(' ');\n classes2 = Array.isArray(classes2) ? classes2 : classes2.split(' ');\n let isClasses1 = callback(element);\n element?.classList.remove(...(isClasses1 ? classes2 : classes1));\n element?.classList.add(...(isClasses1 ? classes1 : classes2));\n return this;\n }\n\n toggleClassIf(selector, classes1, classes2, callback) {\n document.querySelectorAll(selector).forEach(element => this.toggleElementClassIf(element, classes1, classes2, callback));\n return this;\n }\n\n isValidEmail(email) {\n const re = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return re.test(String(email).toLowerCase());\n }\n\n filterEmojies(text) {\n var characterFilter = /(?:[\\u2700-\\u27bf]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\u0023-\\u0039]\\ufe0f?\\u20e3|\\u3299|\\u3297|\\u303d|\\u3030|\\u24c2|\\ud83c[\\udd70-\\udd71]|\\ud83c[\\udd7e-\\udd7f]|\\ud83c\\udd8e|\\ud83c[\\udd91-\\udd9a]|\\ud83c[\\udde6-\\uddff]|\\ud83c[\\ude01-\\ude02]|\\ud83c\\ude1a|\\ud83c\\ude2f|\\ud83c[\\ude32-\\ude3a]|\\ud83c[\\ude50-\\ude51]|\\u203c|\\u2049|[\\u25aa-\\u25ab]|\\u25b6|\\u25c0|[\\u25fb-\\u25fe]|\\u00a9|\\u00ae|\\u2122|\\u2139|\\ud83c\\udc04|[\\u2600-\\u26FF]|\\u2b05|\\u2b06|\\u2b07|\\u2b1b|\\u2b1c|\\u2b50|\\u2b55|\\u231a|\\u231b|\\u2328|\\u23cf|[\\u23e9-\\u23f3]|[\\u23f8-\\u23fa]|\\ud83c\\udccf|\\u2934|\\u2935|[\\u2190-\\u21ff])/g;\n return text.replace(characterFilter, \"\");\n }\n\n debounce(fn, ...data) {\n if (!this.debounce_) {\n this.debounce_ = salla.helpers.debounce((callback, ...innerData) => callback(...innerData), 500);\n }\n //@ts-ignore\n return this.debounce_(fn, ...data);\n }\n\n getProductsSource(source) {\n return {\n 'brands.single': 'brands',\n 'product.index': 'categories',\n 'product.index.latest': 'latest',\n 'product.index.offers': 'offers',\n 'product.index.search': 'search',\n 'landing-page': 'landing-page',\n 'product.index.tag': 'tags',\n 'product.index.sales': 'sales',\n 'components.most_sales_products': 'sales',//temporary, delete it after two days from now\n }[source || salla.config.get('page.slug')] || source || 'latest';\n }\n\n getProductsSourceValue(source, sourceValue) {\n const parsedSource = this.getProductsSource(source);\n\n // Validate if the source value is a valid JSON string\n let parsedSourceValue: any = null;\n if (sourceValue) {\n try {\n parsedSourceValue = JSON.parse(sourceValue);\n } catch (error) {\n console.error('Invalid JSON string in sourceValue:', error);\n }\n }\n\n // Handle different source types\n if (!['search', 'json', 'offers', 'latest', 'sales', 'related'].includes(parsedSource)) {\n\n if (Array.isArray(parsedSourceValue) && parsedSourceValue.length) {\n return parsedSourceValue;\n }\n\n if (typeof parsedSourceValue === 'number') {\n return [parsedSourceValue];\n }\n\n if (!sourceValue && ['categories', 'tags', 'brands'].includes(source)) {\n return [salla.config.get('page.id')];\n }\n }\n\n // Return sourceValue if it exists and is a valid JSON object/array\n if (parsedSourceValue || sourceValue) {\n return parsedSourceValue || sourceValue;\n }\n\n if (parsedSource === 'search') {\n return new URLSearchParams(window.location.search).get('q') || '';\n }\n\n // Return page id as default value\n return salla.config.get('page.id');\n }\n}\n\nexport default new Helper;\n"],"version":3}
|