@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.
Files changed (97) hide show
  1. package/dist/cjs/{Helper-63d6ab45.js → Helper-f14223e6.js} +48 -1
  2. package/dist/cjs/Helper-f14223e6.js.map +1 -0
  3. package/dist/cjs/app-globals-8c76baa2.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/salla-add-product-button_40.cjs.entry.js +2 -2
  6. package/dist/cjs/salla-add-product-button_40.cjs.entry.js.map +1 -1
  7. package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
  8. package/dist/cjs/salla-products-list.cjs.entry.js +27 -47
  9. package/dist/cjs/salla-products-list.cjs.entry.js.map +1 -1
  10. package/dist/cjs/salla-products-slider.cjs.entry.js +9 -35
  11. package/dist/cjs/salla-products-slider.cjs.entry.js.map +1 -1
  12. package/dist/cjs/twilight.cjs.js +1 -1
  13. package/dist/collection/Helpers/Helper.js +47 -0
  14. package/dist/collection/Helpers/Helper.js.map +1 -1
  15. package/dist/collection/components/salla-products-list/salla-products-list.js +27 -47
  16. package/dist/collection/components/salla-products-list/salla-products-list.js.map +1 -1
  17. package/dist/collection/components/salla-products-slider/salla-products-slider.js +26 -52
  18. package/dist/collection/components/salla-products-slider/salla-products-slider.js.map +1 -1
  19. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
  20. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js.map +1 -1
  21. package/dist/components/Helper.js +47 -0
  22. package/dist/components/Helper.js.map +1 -1
  23. package/dist/components/index.js.map +1 -1
  24. package/dist/components/salla-products-list.js +27 -47
  25. package/dist/components/salla-products-list.js.map +1 -1
  26. package/dist/components/salla-products-slider.js +10 -36
  27. package/dist/components/salla-products-slider.js.map +1 -1
  28. package/dist/components/salla-quantity-input.js +1 -1
  29. package/dist/components/salla-quantity-input.js.map +1 -1
  30. package/dist/esm/{Helper-30bbdc37.js → Helper-a7971963.js} +48 -1
  31. package/dist/esm/Helper-a7971963.js.map +1 -0
  32. package/dist/esm/app-globals-8e3be062.js.map +1 -1
  33. package/dist/esm/loader.js +1 -1
  34. package/dist/esm/salla-add-product-button_40.entry.js +2 -2
  35. package/dist/esm/salla-add-product-button_40.entry.js.map +1 -1
  36. package/dist/esm/salla-filters-widget.entry.js +1 -1
  37. package/dist/esm/salla-products-list.entry.js +27 -47
  38. package/dist/esm/salla-products-list.entry.js.map +1 -1
  39. package/dist/esm/salla-products-slider.entry.js +9 -35
  40. package/dist/esm/salla-products-slider.entry.js.map +1 -1
  41. package/dist/esm/twilight.js +1 -1
  42. package/dist/esm-es5/Helper-a7971963.js +5 -0
  43. package/dist/esm-es5/Helper-a7971963.js.map +1 -0
  44. package/dist/esm-es5/app-globals-8e3be062.js.map +1 -1
  45. package/dist/esm-es5/loader.js +1 -1
  46. package/dist/esm-es5/salla-add-product-button_40.entry.js +1 -1
  47. package/dist/esm-es5/salla-add-product-button_40.entry.js.map +1 -1
  48. package/dist/esm-es5/salla-filters-widget.entry.js +1 -1
  49. package/dist/esm-es5/salla-products-list.entry.js +2 -2
  50. package/dist/esm-es5/salla-products-list.entry.js.map +1 -1
  51. package/dist/esm-es5/salla-products-slider.entry.js +1 -1
  52. package/dist/esm-es5/salla-products-slider.entry.js.map +1 -1
  53. package/dist/esm-es5/twilight.js +1 -1
  54. package/dist/twilight/p-0254e9be.system.js +1 -1
  55. package/dist/twilight/p-059b0be0.system.js.map +1 -1
  56. package/dist/twilight/{p-3544bca0.entry.js → p-05e73fab.entry.js} +2 -2
  57. package/dist/twilight/{p-3544bca0.entry.js.map → p-05e73fab.entry.js.map} +1 -1
  58. package/dist/twilight/p-2042f370.system.js +5 -0
  59. package/dist/twilight/p-2042f370.system.js.map +1 -0
  60. package/dist/twilight/p-24d6867a.entry.js +5 -0
  61. package/dist/twilight/p-24d6867a.entry.js.map +1 -0
  62. package/dist/twilight/p-3278e007.js.map +1 -1
  63. package/dist/twilight/p-5ffffea6.js +5 -0
  64. package/dist/twilight/p-5ffffea6.js.map +1 -0
  65. package/dist/twilight/p-7857f10e.system.entry.js +5 -0
  66. package/dist/twilight/p-7857f10e.system.entry.js.map +1 -0
  67. package/dist/twilight/{p-710f64c1.entry.js → p-84baa754.entry.js} +2 -2
  68. package/dist/twilight/p-908e0bc9.system.entry.js +5 -0
  69. package/dist/twilight/p-908e0bc9.system.entry.js.map +1 -0
  70. package/dist/twilight/{p-3ae8f976.system.entry.js → p-941f36a6.system.entry.js} +2 -2
  71. package/dist/twilight/{p-3ae8f976.system.entry.js.map → p-941f36a6.system.entry.js.map} +1 -1
  72. package/dist/twilight/{p-e4f8147f.system.entry.js → p-d38d47c0.system.entry.js} +2 -2
  73. package/dist/twilight/p-ef0c75da.entry.js +5 -0
  74. package/dist/twilight/p-ef0c75da.entry.js.map +1 -0
  75. package/dist/twilight/twilight.esm.js +1 -1
  76. package/dist/types/Helpers/Helper.d.ts +2 -0
  77. package/dist/types/components/salla-products-list/salla-products-list.d.ts +4 -2
  78. package/dist/types/components/salla-products-slider/salla-products-slider.d.ts +6 -6
  79. package/package.json +5 -5
  80. package/dist/cjs/Helper-63d6ab45.js.map +0 -1
  81. package/dist/esm/Helper-30bbdc37.js.map +0 -1
  82. package/dist/esm-es5/Helper-30bbdc37.js +0 -5
  83. package/dist/esm-es5/Helper-30bbdc37.js.map +0 -1
  84. package/dist/twilight/p-77944169.system.js +0 -5
  85. package/dist/twilight/p-77944169.system.js.map +0 -1
  86. package/dist/twilight/p-82053aa3.system.entry.js +0 -5
  87. package/dist/twilight/p-82053aa3.system.entry.js.map +0 -1
  88. package/dist/twilight/p-be3279c0.entry.js +0 -5
  89. package/dist/twilight/p-be3279c0.entry.js.map +0 -1
  90. package/dist/twilight/p-c3539119.entry.js +0 -5
  91. package/dist/twilight/p-c3539119.entry.js.map +0 -1
  92. package/dist/twilight/p-cf703bcf.system.entry.js +0 -5
  93. package/dist/twilight/p-cf703bcf.system.entry.js.map +0 -1
  94. package/dist/twilight/p-dad8bacc.js +0 -5
  95. package/dist/twilight/p-dad8bacc.js.map +0 -1
  96. /package/dist/twilight/{p-710f64c1.entry.js.map → p-84baa754.entry.js.map} +0 -0
  97. /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-63d6ab45.js.map
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}