@selwise/widget 0.0.3 → 1.0.1

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 (638) hide show
  1. package/README.md +2 -1
  2. package/package.json +18 -16
  3. package/dist/npm/cjs/constants.js +0 -167
  4. package/dist/npm/cjs/constants.js.map +0 -1
  5. package/dist/npm/cjs/core/conflict-resolver.js +0 -203
  6. package/dist/npm/cjs/core/conflict-resolver.js.map +0 -1
  7. package/dist/npm/cjs/core/event-batcher.js +0 -977
  8. package/dist/npm/cjs/core/event-batcher.js.map +0 -1
  9. package/dist/npm/cjs/core/experiment-overrides.js +0 -178
  10. package/dist/npm/cjs/core/experiment-overrides.js.map +0 -1
  11. package/dist/npm/cjs/core/experiments.js +0 -317
  12. package/dist/npm/cjs/core/experiments.js.map +0 -1
  13. package/dist/npm/cjs/core/frequency-caps.js +0 -297
  14. package/dist/npm/cjs/core/frequency-caps.js.map +0 -1
  15. package/dist/npm/cjs/core/index.js +0 -27
  16. package/dist/npm/cjs/core/index.js.map +0 -1
  17. package/dist/npm/cjs/core/indexeddb-queue.js +0 -333
  18. package/dist/npm/cjs/core/indexeddb-queue.js.map +0 -1
  19. package/dist/npm/cjs/core/journey-tracker.js +0 -243
  20. package/dist/npm/cjs/core/journey-tracker.js.map +0 -1
  21. package/dist/npm/cjs/core/page-targeting/index.js +0 -72
  22. package/dist/npm/cjs/core/page-targeting/index.js.map +0 -1
  23. package/dist/npm/cjs/core/script-executor.js +0 -80
  24. package/dist/npm/cjs/core/script-executor.js.map +0 -1
  25. package/dist/npm/cjs/core/segments.js +0 -172
  26. package/dist/npm/cjs/core/segments.js.map +0 -1
  27. package/dist/npm/cjs/core/tracker.js +0 -798
  28. package/dist/npm/cjs/core/tracker.js.map +0 -1
  29. package/dist/npm/cjs/datalayer/basket.js +0 -385
  30. package/dist/npm/cjs/datalayer/basket.js.map +0 -1
  31. package/dist/npm/cjs/datalayer/cart-association.js +0 -226
  32. package/dist/npm/cjs/datalayer/cart-association.js.map +0 -1
  33. package/dist/npm/cjs/datalayer/checkout.js +0 -382
  34. package/dist/npm/cjs/datalayer/checkout.js.map +0 -1
  35. package/dist/npm/cjs/datalayer/constants.js +0 -163
  36. package/dist/npm/cjs/datalayer/constants.js.map +0 -1
  37. package/dist/npm/cjs/datalayer/index.js +0 -1010
  38. package/dist/npm/cjs/datalayer/index.js.map +0 -1
  39. package/dist/npm/cjs/datalayer/listener.js +0 -416
  40. package/dist/npm/cjs/datalayer/listener.js.map +0 -1
  41. package/dist/npm/cjs/datalayer/page.js +0 -343
  42. package/dist/npm/cjs/datalayer/page.js.map +0 -1
  43. package/dist/npm/cjs/datalayer/product.js +0 -517
  44. package/dist/npm/cjs/datalayer/product.js.map +0 -1
  45. package/dist/npm/cjs/datalayer/reverse-mappings.js +0 -139
  46. package/dist/npm/cjs/datalayer/reverse-mappings.js.map +0 -1
  47. package/dist/npm/cjs/datalayer/search.js +0 -363
  48. package/dist/npm/cjs/datalayer/search.js.map +0 -1
  49. package/dist/npm/cjs/datalayer/types.js +0 -134
  50. package/dist/npm/cjs/datalayer/types.js.map +0 -1
  51. package/dist/npm/cjs/datalayer/user.js +0 -372
  52. package/dist/npm/cjs/datalayer/user.js.map +0 -1
  53. package/dist/npm/cjs/debug/index.js +0 -679
  54. package/dist/npm/cjs/debug/index.js.map +0 -1
  55. package/dist/npm/cjs/entries/cdn.js +0 -72
  56. package/dist/npm/cjs/entries/cdn.js.map +0 -1
  57. package/dist/npm/cjs/index.js +0 -55
  58. package/dist/npm/cjs/index.js.map +0 -1
  59. package/dist/npm/cjs/modules/contract/recommendation-contract.js +0 -119
  60. package/dist/npm/cjs/modules/contract/recommendation-contract.js.map +0 -1
  61. package/dist/npm/cjs/modules/contract/search-contract.js +0 -18
  62. package/dist/npm/cjs/modules/contract/search-contract.js.map +0 -1
  63. package/dist/npm/cjs/modules/contract/tracking-contract.js +0 -16
  64. package/dist/npm/cjs/modules/contract/tracking-contract.js.map +0 -1
  65. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/configs.js +0 -164
  66. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/configs.js.map +0 -1
  67. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/index.js +0 -21
  68. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/index.js.map +0 -1
  69. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/types.js +0 -3
  70. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/types.js.map +0 -1
  71. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/validators.js +0 -107
  72. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/validators.js.map +0 -1
  73. package/dist/npm/cjs/modules/contract/vendor/search-contract/configs.js +0 -404
  74. package/dist/npm/cjs/modules/contract/vendor/search-contract/configs.js.map +0 -1
  75. package/dist/npm/cjs/modules/contract/vendor/search-contract/index.js +0 -21
  76. package/dist/npm/cjs/modules/contract/vendor/search-contract/index.js.map +0 -1
  77. package/dist/npm/cjs/modules/contract/vendor/search-contract/types.js +0 -8
  78. package/dist/npm/cjs/modules/contract/vendor/search-contract/types.js.map +0 -1
  79. package/dist/npm/cjs/modules/contract/vendor/search-contract/validators.js +0 -126
  80. package/dist/npm/cjs/modules/contract/vendor/search-contract/validators.js.map +0 -1
  81. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/configs.js +0 -133
  82. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/configs.js.map +0 -1
  83. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/index.js +0 -21
  84. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/index.js.map +0 -1
  85. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/types.js +0 -3
  86. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/types.js.map +0 -1
  87. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/validators.js +0 -154
  88. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/validators.js.map +0 -1
  89. package/dist/npm/cjs/modules/contract/vendor/widget-contract/configs.js +0 -1481
  90. package/dist/npm/cjs/modules/contract/vendor/widget-contract/configs.js.map +0 -1
  91. package/dist/npm/cjs/modules/contract/vendor/widget-contract/index.js +0 -22
  92. package/dist/npm/cjs/modules/contract/vendor/widget-contract/index.js.map +0 -1
  93. package/dist/npm/cjs/modules/contract/vendor/widget-contract/layout.js +0 -21
  94. package/dist/npm/cjs/modules/contract/vendor/widget-contract/layout.js.map +0 -1
  95. package/dist/npm/cjs/modules/contract/vendor/widget-contract/types.js +0 -8
  96. package/dist/npm/cjs/modules/contract/vendor/widget-contract/types.js.map +0 -1
  97. package/dist/npm/cjs/modules/contract/vendor/widget-contract/validators.js +0 -139
  98. package/dist/npm/cjs/modules/contract/vendor/widget-contract/validators.js.map +0 -1
  99. package/dist/npm/cjs/modules/contract/widget-contract.js +0 -10
  100. package/dist/npm/cjs/modules/contract/widget-contract.js.map +0 -1
  101. package/dist/npm/cjs/modules/products/tracking.js +0 -214
  102. package/dist/npm/cjs/modules/products/tracking.js.map +0 -1
  103. package/dist/npm/cjs/modules/recommendation/cart-handlers.js +0 -52
  104. package/dist/npm/cjs/modules/recommendation/cart-handlers.js.map +0 -1
  105. package/dist/npm/cjs/modules/recommendation/components/product-card-renderer.js +0 -287
  106. package/dist/npm/cjs/modules/recommendation/components/product-card-renderer.js.map +0 -1
  107. package/dist/npm/cjs/modules/recommendation/index.js +0 -678
  108. package/dist/npm/cjs/modules/recommendation/index.js.map +0 -1
  109. package/dist/npm/cjs/modules/recommendation/renderers/grid.js +0 -21
  110. package/dist/npm/cjs/modules/recommendation/renderers/grid.js.map +0 -1
  111. package/dist/npm/cjs/modules/recommendation/renderers/list.js +0 -22
  112. package/dist/npm/cjs/modules/recommendation/renderers/list.js.map +0 -1
  113. package/dist/npm/cjs/modules/recommendation/renderers/masonry.js +0 -22
  114. package/dist/npm/cjs/modules/recommendation/renderers/masonry.js.map +0 -1
  115. package/dist/npm/cjs/modules/recommendation/renderers/slider-renderer.js +0 -145
  116. package/dist/npm/cjs/modules/recommendation/renderers/slider-renderer.js.map +0 -1
  117. package/dist/npm/cjs/modules/recommendation/slider-controls.js +0 -201
  118. package/dist/npm/cjs/modules/recommendation/slider-controls.js.map +0 -1
  119. package/dist/npm/cjs/modules/recommendation/tracking.js +0 -247
  120. package/dist/npm/cjs/modules/recommendation/tracking.js.map +0 -1
  121. package/dist/npm/cjs/modules/recommendation/utils/dom.js +0 -70
  122. package/dist/npm/cjs/modules/recommendation/utils/dom.js.map +0 -1
  123. package/dist/npm/cjs/modules/recommendation/utils/format.js +0 -13
  124. package/dist/npm/cjs/modules/recommendation/utils/format.js.map +0 -1
  125. package/dist/npm/cjs/modules/recommendation/utils/index.js +0 -22
  126. package/dist/npm/cjs/modules/recommendation/utils/index.js.map +0 -1
  127. package/dist/npm/cjs/modules/renderer/helpers.js +0 -16
  128. package/dist/npm/cjs/modules/renderer/helpers.js.map +0 -1
  129. package/dist/npm/cjs/modules/renderer/index.js +0 -52
  130. package/dist/npm/cjs/modules/renderer/index.js.map +0 -1
  131. package/dist/npm/cjs/modules/renderer/style-resolver.js +0 -11
  132. package/dist/npm/cjs/modules/renderer/style-resolver.js.map +0 -1
  133. package/dist/npm/cjs/modules/renderer/styles/index.js +0 -254
  134. package/dist/npm/cjs/modules/renderer/styles/index.js.map +0 -1
  135. package/dist/npm/cjs/modules/renderer/styles.js +0 -7
  136. package/dist/npm/cjs/modules/renderer/styles.js.map +0 -1
  137. package/dist/npm/cjs/modules/renderer/utils/helpers.js +0 -243
  138. package/dist/npm/cjs/modules/renderer/utils/helpers.js.map +0 -1
  139. package/dist/npm/cjs/modules/renderer/utils/image-renderer.js +0 -65
  140. package/dist/npm/cjs/modules/renderer/utils/image-renderer.js.map +0 -1
  141. package/dist/npm/cjs/modules/renderer/utils/placement.js +0 -34
  142. package/dist/npm/cjs/modules/renderer/utils/placement.js.map +0 -1
  143. package/dist/npm/cjs/modules/renderer/utils.js +0 -61
  144. package/dist/npm/cjs/modules/renderer/utils.js.map +0 -1
  145. package/dist/npm/cjs/modules/renderer/widgets/announcement-bar.js +0 -84
  146. package/dist/npm/cjs/modules/renderer/widgets/announcement-bar.js.map +0 -1
  147. package/dist/npm/cjs/modules/renderer/widgets/cart-count.js +0 -211
  148. package/dist/npm/cjs/modules/renderer/widgets/cart-count.js.map +0 -1
  149. package/dist/npm/cjs/modules/renderer/widgets/cookie-consent.js +0 -459
  150. package/dist/npm/cjs/modules/renderer/widgets/cookie-consent.js.map +0 -1
  151. package/dist/npm/cjs/modules/renderer/widgets/countdown-timer.js +0 -132
  152. package/dist/npm/cjs/modules/renderer/widgets/countdown-timer.js.map +0 -1
  153. package/dist/npm/cjs/modules/renderer/widgets/custom.js +0 -58
  154. package/dist/npm/cjs/modules/renderer/widgets/custom.js.map +0 -1
  155. package/dist/npm/cjs/modules/renderer/widgets/embedded-card.js +0 -97
  156. package/dist/npm/cjs/modules/renderer/widgets/embedded-card.js.map +0 -1
  157. package/dist/npm/cjs/modules/renderer/widgets/exit-intent-popup.js +0 -151
  158. package/dist/npm/cjs/modules/renderer/widgets/exit-intent-popup.js.map +0 -1
  159. package/dist/npm/cjs/modules/renderer/widgets/floating-button.js +0 -70
  160. package/dist/npm/cjs/modules/renderer/widgets/floating-button.js.map +0 -1
  161. package/dist/npm/cjs/modules/renderer/widgets/helpers.js +0 -87
  162. package/dist/npm/cjs/modules/renderer/widgets/helpers.js.map +0 -1
  163. package/dist/npm/cjs/modules/renderer/widgets/index.js +0 -39
  164. package/dist/npm/cjs/modules/renderer/widgets/index.js.map +0 -1
  165. package/dist/npm/cjs/modules/renderer/widgets/inline-banner.js +0 -124
  166. package/dist/npm/cjs/modules/renderer/widgets/inline-banner.js.map +0 -1
  167. package/dist/npm/cjs/modules/renderer/widgets/newsletter.js +0 -280
  168. package/dist/npm/cjs/modules/renderer/widgets/newsletter.js.map +0 -1
  169. package/dist/npm/cjs/modules/renderer/widgets/product-view-count.js +0 -197
  170. package/dist/npm/cjs/modules/renderer/widgets/product-view-count.js.map +0 -1
  171. package/dist/npm/cjs/modules/renderer/widgets/slide-in.js +0 -105
  172. package/dist/npm/cjs/modules/renderer/widgets/slide-in.js.map +0 -1
  173. package/dist/npm/cjs/modules/renderer/widgets/sticky-footer.js +0 -47
  174. package/dist/npm/cjs/modules/renderer/widgets/sticky-footer.js.map +0 -1
  175. package/dist/npm/cjs/modules/search/cart/index.js +0 -42
  176. package/dist/npm/cjs/modules/search/cart/index.js.map +0 -1
  177. package/dist/npm/cjs/modules/search/components/index.js +0 -13
  178. package/dist/npm/cjs/modules/search/components/index.js.map +0 -1
  179. package/dist/npm/cjs/modules/search/components/search-box.js +0 -28
  180. package/dist/npm/cjs/modules/search/components/search-box.js.map +0 -1
  181. package/dist/npm/cjs/modules/search/components/search-item.js +0 -197
  182. package/dist/npm/cjs/modules/search/components/search-item.js.map +0 -1
  183. package/dist/npm/cjs/modules/search/components/suggestions.js +0 -132
  184. package/dist/npm/cjs/modules/search/components/suggestions.js.map +0 -1
  185. package/dist/npm/cjs/modules/search/index.js +0 -646
  186. package/dist/npm/cjs/modules/search/index.js.map +0 -1
  187. package/dist/npm/cjs/modules/search/renderers/position-renderers.js +0 -229
  188. package/dist/npm/cjs/modules/search/renderers/position-renderers.js.map +0 -1
  189. package/dist/npm/cjs/modules/search/renderers/results-renderer.js +0 -180
  190. package/dist/npm/cjs/modules/search/renderers/results-renderer.js.map +0 -1
  191. package/dist/npm/cjs/modules/search/services/api-service.js +0 -121
  192. package/dist/npm/cjs/modules/search/services/api-service.js.map +0 -1
  193. package/dist/npm/cjs/modules/search/services/tracking-service.js +0 -263
  194. package/dist/npm/cjs/modules/search/services/tracking-service.js.map +0 -1
  195. package/dist/npm/cjs/modules/search/styles.js +0 -864
  196. package/dist/npm/cjs/modules/search/styles.js.map +0 -1
  197. package/dist/npm/cjs/modules/search/utils/helpers.js +0 -100
  198. package/dist/npm/cjs/modules/search/utils/helpers.js.map +0 -1
  199. package/dist/npm/cjs/modules/search/utils/icons.js +0 -41
  200. package/dist/npm/cjs/modules/search/utils/icons.js.map +0 -1
  201. package/dist/npm/cjs/modules/search/utils/index.js +0 -22
  202. package/dist/npm/cjs/modules/search/utils/index.js.map +0 -1
  203. package/dist/npm/cjs/modules/search/utils/storage.js +0 -58
  204. package/dist/npm/cjs/modules/search/utils/storage.js.map +0 -1
  205. package/dist/npm/cjs/selwise.js +0 -1166
  206. package/dist/npm/cjs/selwise.js.map +0 -1
  207. package/dist/npm/cjs/sentry-test.js +0 -118
  208. package/dist/npm/cjs/sentry-test.js.map +0 -1
  209. package/dist/npm/cjs/sentry.js +0 -451
  210. package/dist/npm/cjs/sentry.js.map +0 -1
  211. package/dist/npm/cjs/shared/cart/handlers.js +0 -259
  212. package/dist/npm/cjs/shared/cart/handlers.js.map +0 -1
  213. package/dist/npm/cjs/shared/cart/index.js +0 -23
  214. package/dist/npm/cjs/shared/cart/index.js.map +0 -1
  215. package/dist/npm/cjs/shared/cart/types.js +0 -7
  216. package/dist/npm/cjs/shared/cart/types.js.map +0 -1
  217. package/dist/npm/cjs/shared/product-card/index.js +0 -24
  218. package/dist/npm/cjs/shared/product-card/index.js.map +0 -1
  219. package/dist/npm/cjs/shared/product-card/renderer.js +0 -341
  220. package/dist/npm/cjs/shared/product-card/renderer.js.map +0 -1
  221. package/dist/npm/cjs/shared/product-card/styles.js +0 -195
  222. package/dist/npm/cjs/shared/product-card/styles.js.map +0 -1
  223. package/dist/npm/cjs/shared/product-card/types.js +0 -67
  224. package/dist/npm/cjs/shared/product-card/types.js.map +0 -1
  225. package/dist/npm/cjs/types/config.js +0 -6
  226. package/dist/npm/cjs/types/config.js.map +0 -1
  227. package/dist/npm/cjs/types/experiments.js +0 -17
  228. package/dist/npm/cjs/types/experiments.js.map +0 -1
  229. package/dist/npm/cjs/types/global-api.js +0 -3
  230. package/dist/npm/cjs/types/global-api.js.map +0 -1
  231. package/dist/npm/cjs/types/index.js +0 -27
  232. package/dist/npm/cjs/types/index.js.map +0 -1
  233. package/dist/npm/cjs/types/recommendation.js +0 -6
  234. package/dist/npm/cjs/types/recommendation.js.map +0 -1
  235. package/dist/npm/cjs/types/renderer.js +0 -6
  236. package/dist/npm/cjs/types/renderer.js.map +0 -1
  237. package/dist/npm/cjs/types/search.js +0 -6
  238. package/dist/npm/cjs/types/search.js.map +0 -1
  239. package/dist/npm/cjs/utils/api-url.js +0 -35
  240. package/dist/npm/cjs/utils/api-url.js.map +0 -1
  241. package/dist/npm/cjs/utils/debounce.js +0 -74
  242. package/dist/npm/cjs/utils/debounce.js.map +0 -1
  243. package/dist/npm/cjs/utils/event-id.js +0 -23
  244. package/dist/npm/cjs/utils/event-id.js.map +0 -1
  245. package/dist/npm/cjs/utils/index.js +0 -28
  246. package/dist/npm/cjs/utils/index.js.map +0 -1
  247. package/dist/npm/cjs/utils/logger.js +0 -74
  248. package/dist/npm/cjs/utils/logger.js.map +0 -1
  249. package/dist/npm/cjs/utils/sanitize.js +0 -159
  250. package/dist/npm/cjs/utils/sanitize.js.map +0 -1
  251. package/dist/npm/cjs/utils/storage.js +0 -285
  252. package/dist/npm/cjs/utils/storage.js.map +0 -1
  253. package/dist/npm/cjs/utils/tracking-metadata.js +0 -18
  254. package/dist/npm/cjs/utils/tracking-metadata.js.map +0 -1
  255. package/dist/npm/cjs/utils/url-matcher.js +0 -11
  256. package/dist/npm/cjs/utils/url-matcher.js.map +0 -1
  257. package/dist/npm/esm/constants.d.ts +0 -130
  258. package/dist/npm/esm/constants.js +0 -164
  259. package/dist/npm/esm/constants.js.map +0 -1
  260. package/dist/npm/esm/core/conflict-resolver.d.ts +0 -96
  261. package/dist/npm/esm/core/conflict-resolver.js +0 -198
  262. package/dist/npm/esm/core/conflict-resolver.js.map +0 -1
  263. package/dist/npm/esm/core/event-batcher.d.ts +0 -253
  264. package/dist/npm/esm/core/event-batcher.js +0 -973
  265. package/dist/npm/esm/core/event-batcher.js.map +0 -1
  266. package/dist/npm/esm/core/experiment-overrides.d.ts +0 -7
  267. package/dist/npm/esm/core/experiment-overrides.js +0 -172
  268. package/dist/npm/esm/core/experiment-overrides.js.map +0 -1
  269. package/dist/npm/esm/core/experiments.d.ts +0 -90
  270. package/dist/npm/esm/core/experiments.js +0 -313
  271. package/dist/npm/esm/core/experiments.js.map +0 -1
  272. package/dist/npm/esm/core/frequency-caps.d.ts +0 -124
  273. package/dist/npm/esm/core/frequency-caps.js +0 -292
  274. package/dist/npm/esm/core/frequency-caps.js.map +0 -1
  275. package/dist/npm/esm/core/index.d.ts +0 -10
  276. package/dist/npm/esm/core/index.js +0 -11
  277. package/dist/npm/esm/core/index.js.map +0 -1
  278. package/dist/npm/esm/core/indexeddb-queue.d.ts +0 -83
  279. package/dist/npm/esm/core/indexeddb-queue.js +0 -328
  280. package/dist/npm/esm/core/indexeddb-queue.js.map +0 -1
  281. package/dist/npm/esm/core/journey-tracker.d.ts +0 -102
  282. package/dist/npm/esm/core/journey-tracker.js +0 -237
  283. package/dist/npm/esm/core/journey-tracker.js.map +0 -1
  284. package/dist/npm/esm/core/page-targeting/index.d.ts +0 -8
  285. package/dist/npm/esm/core/page-targeting/index.js +0 -67
  286. package/dist/npm/esm/core/page-targeting/index.js.map +0 -1
  287. package/dist/npm/esm/core/script-executor.d.ts +0 -31
  288. package/dist/npm/esm/core/script-executor.js +0 -76
  289. package/dist/npm/esm/core/script-executor.js.map +0 -1
  290. package/dist/npm/esm/core/segments.d.ts +0 -39
  291. package/dist/npm/esm/core/segments.js +0 -168
  292. package/dist/npm/esm/core/segments.js.map +0 -1
  293. package/dist/npm/esm/core/tracker.d.ts +0 -182
  294. package/dist/npm/esm/core/tracker.js +0 -794
  295. package/dist/npm/esm/core/tracker.js.map +0 -1
  296. package/dist/npm/esm/datalayer/basket.d.ts +0 -104
  297. package/dist/npm/esm/datalayer/basket.js +0 -381
  298. package/dist/npm/esm/datalayer/basket.js.map +0 -1
  299. package/dist/npm/esm/datalayer/cart-association.d.ts +0 -65
  300. package/dist/npm/esm/datalayer/cart-association.js +0 -222
  301. package/dist/npm/esm/datalayer/cart-association.js.map +0 -1
  302. package/dist/npm/esm/datalayer/checkout.d.ts +0 -96
  303. package/dist/npm/esm/datalayer/checkout.js +0 -378
  304. package/dist/npm/esm/datalayer/checkout.js.map +0 -1
  305. package/dist/npm/esm/datalayer/constants.d.ts +0 -77
  306. package/dist/npm/esm/datalayer/constants.js +0 -160
  307. package/dist/npm/esm/datalayer/constants.js.map +0 -1
  308. package/dist/npm/esm/datalayer/index.d.ts +0 -212
  309. package/dist/npm/esm/datalayer/index.js +0 -991
  310. package/dist/npm/esm/datalayer/index.js.map +0 -1
  311. package/dist/npm/esm/datalayer/listener.d.ts +0 -108
  312. package/dist/npm/esm/datalayer/listener.js +0 -411
  313. package/dist/npm/esm/datalayer/listener.js.map +0 -1
  314. package/dist/npm/esm/datalayer/page.d.ts +0 -94
  315. package/dist/npm/esm/datalayer/page.js +0 -339
  316. package/dist/npm/esm/datalayer/page.js.map +0 -1
  317. package/dist/npm/esm/datalayer/product.d.ts +0 -133
  318. package/dist/npm/esm/datalayer/product.js +0 -513
  319. package/dist/npm/esm/datalayer/product.js.map +0 -1
  320. package/dist/npm/esm/datalayer/reverse-mappings.d.ts +0 -62
  321. package/dist/npm/esm/datalayer/reverse-mappings.js +0 -135
  322. package/dist/npm/esm/datalayer/reverse-mappings.js.map +0 -1
  323. package/dist/npm/esm/datalayer/search.d.ts +0 -108
  324. package/dist/npm/esm/datalayer/search.js +0 -359
  325. package/dist/npm/esm/datalayer/search.js.map +0 -1
  326. package/dist/npm/esm/datalayer/types.d.ts +0 -292
  327. package/dist/npm/esm/datalayer/types.js +0 -131
  328. package/dist/npm/esm/datalayer/types.js.map +0 -1
  329. package/dist/npm/esm/datalayer/user.d.ts +0 -104
  330. package/dist/npm/esm/datalayer/user.js +0 -368
  331. package/dist/npm/esm/datalayer/user.js.map +0 -1
  332. package/dist/npm/esm/debug/index.d.ts +0 -173
  333. package/dist/npm/esm/debug/index.js +0 -673
  334. package/dist/npm/esm/debug/index.js.map +0 -1
  335. package/dist/npm/esm/entries/cdn.d.ts +0 -1
  336. package/dist/npm/esm/entries/cdn.js +0 -35
  337. package/dist/npm/esm/entries/cdn.js.map +0 -1
  338. package/dist/npm/esm/index.d.ts +0 -7
  339. package/dist/npm/esm/index.js +0 -17
  340. package/dist/npm/esm/index.js.map +0 -1
  341. package/dist/npm/esm/modules/contract/recommendation-contract.d.ts +0 -5
  342. package/dist/npm/esm/modules/contract/recommendation-contract.js +0 -107
  343. package/dist/npm/esm/modules/contract/recommendation-contract.js.map +0 -1
  344. package/dist/npm/esm/modules/contract/search-contract.d.ts +0 -1
  345. package/dist/npm/esm/modules/contract/search-contract.js +0 -2
  346. package/dist/npm/esm/modules/contract/search-contract.js.map +0 -1
  347. package/dist/npm/esm/modules/contract/tracking-contract.d.ts +0 -1
  348. package/dist/npm/esm/modules/contract/tracking-contract.js +0 -2
  349. package/dist/npm/esm/modules/contract/tracking-contract.js.map +0 -1
  350. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/configs.d.ts +0 -8
  351. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/configs.js +0 -160
  352. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/configs.js.map +0 -1
  353. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/index.d.ts +0 -3
  354. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/index.js +0 -5
  355. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/index.js.map +0 -1
  356. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/types.d.ts +0 -56
  357. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/types.js +0 -2
  358. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/types.js.map +0 -1
  359. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/validators.d.ts +0 -3
  360. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/validators.js +0 -103
  361. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/validators.js.map +0 -1
  362. package/dist/npm/esm/modules/contract/vendor/search-contract/configs.d.ts +0 -35
  363. package/dist/npm/esm/modules/contract/vendor/search-contract/configs.js +0 -396
  364. package/dist/npm/esm/modules/contract/vendor/search-contract/configs.js.map +0 -1
  365. package/dist/npm/esm/modules/contract/vendor/search-contract/index.d.ts +0 -3
  366. package/dist/npm/esm/modules/contract/vendor/search-contract/index.js +0 -5
  367. package/dist/npm/esm/modules/contract/vendor/search-contract/index.js.map +0 -1
  368. package/dist/npm/esm/modules/contract/vendor/search-contract/types.d.ts +0 -119
  369. package/dist/npm/esm/modules/contract/vendor/search-contract/types.js +0 -7
  370. package/dist/npm/esm/modules/contract/vendor/search-contract/types.js.map +0 -1
  371. package/dist/npm/esm/modules/contract/vendor/search-contract/validators.d.ts +0 -22
  372. package/dist/npm/esm/modules/contract/vendor/search-contract/validators.js +0 -118
  373. package/dist/npm/esm/modules/contract/vendor/search-contract/validators.js.map +0 -1
  374. package/dist/npm/esm/modules/contract/vendor/tracking-contract/configs.d.ts +0 -7
  375. package/dist/npm/esm/modules/contract/vendor/tracking-contract/configs.js +0 -130
  376. package/dist/npm/esm/modules/contract/vendor/tracking-contract/configs.js.map +0 -1
  377. package/dist/npm/esm/modules/contract/vendor/tracking-contract/index.d.ts +0 -3
  378. package/dist/npm/esm/modules/contract/vendor/tracking-contract/index.js +0 -5
  379. package/dist/npm/esm/modules/contract/vendor/tracking-contract/index.js.map +0 -1
  380. package/dist/npm/esm/modules/contract/vendor/tracking-contract/types.d.ts +0 -37
  381. package/dist/npm/esm/modules/contract/vendor/tracking-contract/types.js +0 -2
  382. package/dist/npm/esm/modules/contract/vendor/tracking-contract/types.js.map +0 -1
  383. package/dist/npm/esm/modules/contract/vendor/tracking-contract/validators.d.ts +0 -6
  384. package/dist/npm/esm/modules/contract/vendor/tracking-contract/validators.js +0 -147
  385. package/dist/npm/esm/modules/contract/vendor/tracking-contract/validators.js.map +0 -1
  386. package/dist/npm/esm/modules/contract/vendor/widget-contract/configs.d.ts +0 -22
  387. package/dist/npm/esm/modules/contract/vendor/widget-contract/configs.js +0 -1472
  388. package/dist/npm/esm/modules/contract/vendor/widget-contract/configs.js.map +0 -1
  389. package/dist/npm/esm/modules/contract/vendor/widget-contract/index.d.ts +0 -4
  390. package/dist/npm/esm/modules/contract/vendor/widget-contract/index.js +0 -6
  391. package/dist/npm/esm/modules/contract/vendor/widget-contract/index.js.map +0 -1
  392. package/dist/npm/esm/modules/contract/vendor/widget-contract/layout.d.ts +0 -14
  393. package/dist/npm/esm/modules/contract/vendor/widget-contract/layout.js +0 -18
  394. package/dist/npm/esm/modules/contract/vendor/widget-contract/layout.js.map +0 -1
  395. package/dist/npm/esm/modules/contract/vendor/widget-contract/types.d.ts +0 -128
  396. package/dist/npm/esm/modules/contract/vendor/widget-contract/types.js +0 -7
  397. package/dist/npm/esm/modules/contract/vendor/widget-contract/types.js.map +0 -1
  398. package/dist/npm/esm/modules/contract/vendor/widget-contract/validators.d.ts +0 -11
  399. package/dist/npm/esm/modules/contract/vendor/widget-contract/validators.js +0 -132
  400. package/dist/npm/esm/modules/contract/vendor/widget-contract/validators.js.map +0 -1
  401. package/dist/npm/esm/modules/contract/widget-contract.d.ts +0 -1
  402. package/dist/npm/esm/modules/contract/widget-contract.js +0 -2
  403. package/dist/npm/esm/modules/contract/widget-contract.js.map +0 -1
  404. package/dist/npm/esm/modules/products/tracking.d.ts +0 -122
  405. package/dist/npm/esm/modules/products/tracking.js +0 -203
  406. package/dist/npm/esm/modules/products/tracking.js.map +0 -1
  407. package/dist/npm/esm/modules/recommendation/cart-handlers.d.ts +0 -10
  408. package/dist/npm/esm/modules/recommendation/cart-handlers.js +0 -49
  409. package/dist/npm/esm/modules/recommendation/cart-handlers.js.map +0 -1
  410. package/dist/npm/esm/modules/recommendation/components/product-card-renderer.d.ts +0 -37
  411. package/dist/npm/esm/modules/recommendation/components/product-card-renderer.js +0 -281
  412. package/dist/npm/esm/modules/recommendation/components/product-card-renderer.js.map +0 -1
  413. package/dist/npm/esm/modules/recommendation/index.d.ts +0 -11
  414. package/dist/npm/esm/modules/recommendation/index.js +0 -674
  415. package/dist/npm/esm/modules/recommendation/index.js.map +0 -1
  416. package/dist/npm/esm/modules/recommendation/renderers/grid.d.ts +0 -5
  417. package/dist/npm/esm/modules/recommendation/renderers/grid.js +0 -18
  418. package/dist/npm/esm/modules/recommendation/renderers/grid.js.map +0 -1
  419. package/dist/npm/esm/modules/recommendation/renderers/list.d.ts +0 -5
  420. package/dist/npm/esm/modules/recommendation/renderers/list.js +0 -19
  421. package/dist/npm/esm/modules/recommendation/renderers/list.js.map +0 -1
  422. package/dist/npm/esm/modules/recommendation/renderers/masonry.d.ts +0 -5
  423. package/dist/npm/esm/modules/recommendation/renderers/masonry.js +0 -19
  424. package/dist/npm/esm/modules/recommendation/renderers/masonry.js.map +0 -1
  425. package/dist/npm/esm/modules/recommendation/renderers/slider-renderer.d.ts +0 -10
  426. package/dist/npm/esm/modules/recommendation/renderers/slider-renderer.js +0 -140
  427. package/dist/npm/esm/modules/recommendation/renderers/slider-renderer.js.map +0 -1
  428. package/dist/npm/esm/modules/recommendation/slider-controls.d.ts +0 -17
  429. package/dist/npm/esm/modules/recommendation/slider-controls.js +0 -187
  430. package/dist/npm/esm/modules/recommendation/slider-controls.js.map +0 -1
  431. package/dist/npm/esm/modules/recommendation/tracking.d.ts +0 -28
  432. package/dist/npm/esm/modules/recommendation/tracking.js +0 -237
  433. package/dist/npm/esm/modules/recommendation/tracking.js.map +0 -1
  434. package/dist/npm/esm/modules/recommendation/utils/dom.d.ts +0 -10
  435. package/dist/npm/esm/modules/recommendation/utils/dom.js +0 -63
  436. package/dist/npm/esm/modules/recommendation/utils/dom.js.map +0 -1
  437. package/dist/npm/esm/modules/recommendation/utils/format.d.ts +0 -4
  438. package/dist/npm/esm/modules/recommendation/utils/format.js +0 -10
  439. package/dist/npm/esm/modules/recommendation/utils/format.js.map +0 -1
  440. package/dist/npm/esm/modules/recommendation/utils/index.d.ts +0 -5
  441. package/dist/npm/esm/modules/recommendation/utils/index.js +0 -6
  442. package/dist/npm/esm/modules/recommendation/utils/index.js.map +0 -1
  443. package/dist/npm/esm/modules/renderer/helpers.d.ts +0 -5
  444. package/dist/npm/esm/modules/renderer/helpers.js +0 -6
  445. package/dist/npm/esm/modules/renderer/helpers.js.map +0 -1
  446. package/dist/npm/esm/modules/renderer/index.d.ts +0 -8
  447. package/dist/npm/esm/modules/renderer/index.js +0 -48
  448. package/dist/npm/esm/modules/renderer/index.js.map +0 -1
  449. package/dist/npm/esm/modules/renderer/style-resolver.d.ts +0 -1
  450. package/dist/npm/esm/modules/renderer/style-resolver.js +0 -8
  451. package/dist/npm/esm/modules/renderer/style-resolver.js.map +0 -1
  452. package/dist/npm/esm/modules/renderer/styles/index.d.ts +0 -12
  453. package/dist/npm/esm/modules/renderer/styles/index.js +0 -250
  454. package/dist/npm/esm/modules/renderer/styles/index.js.map +0 -1
  455. package/dist/npm/esm/modules/renderer/styles.d.ts +0 -1
  456. package/dist/npm/esm/modules/renderer/styles.js +0 -2
  457. package/dist/npm/esm/modules/renderer/styles.js.map +0 -1
  458. package/dist/npm/esm/modules/renderer/utils/helpers.d.ts +0 -58
  459. package/dist/npm/esm/modules/renderer/utils/helpers.js +0 -225
  460. package/dist/npm/esm/modules/renderer/utils/helpers.js.map +0 -1
  461. package/dist/npm/esm/modules/renderer/utils/image-renderer.d.ts +0 -17
  462. package/dist/npm/esm/modules/renderer/utils/image-renderer.js +0 -60
  463. package/dist/npm/esm/modules/renderer/utils/image-renderer.js.map +0 -1
  464. package/dist/npm/esm/modules/renderer/utils/placement.d.ts +0 -6
  465. package/dist/npm/esm/modules/renderer/utils/placement.js +0 -31
  466. package/dist/npm/esm/modules/renderer/utils/placement.js.map +0 -1
  467. package/dist/npm/esm/modules/renderer/utils.d.ts +0 -11
  468. package/dist/npm/esm/modules/renderer/utils.js +0 -44
  469. package/dist/npm/esm/modules/renderer/utils.js.map +0 -1
  470. package/dist/npm/esm/modules/renderer/widgets/announcement-bar.d.ts +0 -5
  471. package/dist/npm/esm/modules/renderer/widgets/announcement-bar.js +0 -81
  472. package/dist/npm/esm/modules/renderer/widgets/announcement-bar.js.map +0 -1
  473. package/dist/npm/esm/modules/renderer/widgets/cart-count.d.ts +0 -6
  474. package/dist/npm/esm/modules/renderer/widgets/cart-count.js +0 -208
  475. package/dist/npm/esm/modules/renderer/widgets/cart-count.js.map +0 -1
  476. package/dist/npm/esm/modules/renderer/widgets/cookie-consent.d.ts +0 -18
  477. package/dist/npm/esm/modules/renderer/widgets/cookie-consent.js +0 -454
  478. package/dist/npm/esm/modules/renderer/widgets/cookie-consent.js.map +0 -1
  479. package/dist/npm/esm/modules/renderer/widgets/countdown-timer.d.ts +0 -5
  480. package/dist/npm/esm/modules/renderer/widgets/countdown-timer.js +0 -129
  481. package/dist/npm/esm/modules/renderer/widgets/countdown-timer.js.map +0 -1
  482. package/dist/npm/esm/modules/renderer/widgets/custom.d.ts +0 -5
  483. package/dist/npm/esm/modules/renderer/widgets/custom.js +0 -55
  484. package/dist/npm/esm/modules/renderer/widgets/custom.js.map +0 -1
  485. package/dist/npm/esm/modules/renderer/widgets/embedded-card.d.ts +0 -5
  486. package/dist/npm/esm/modules/renderer/widgets/embedded-card.js +0 -94
  487. package/dist/npm/esm/modules/renderer/widgets/embedded-card.js.map +0 -1
  488. package/dist/npm/esm/modules/renderer/widgets/exit-intent-popup.d.ts +0 -6
  489. package/dist/npm/esm/modules/renderer/widgets/exit-intent-popup.js +0 -147
  490. package/dist/npm/esm/modules/renderer/widgets/exit-intent-popup.js.map +0 -1
  491. package/dist/npm/esm/modules/renderer/widgets/floating-button.d.ts +0 -5
  492. package/dist/npm/esm/modules/renderer/widgets/floating-button.js +0 -67
  493. package/dist/npm/esm/modules/renderer/widgets/floating-button.js.map +0 -1
  494. package/dist/npm/esm/modules/renderer/widgets/helpers.d.ts +0 -29
  495. package/dist/npm/esm/modules/renderer/widgets/helpers.js +0 -82
  496. package/dist/npm/esm/modules/renderer/widgets/helpers.js.map +0 -1
  497. package/dist/npm/esm/modules/renderer/widgets/index.d.ts +0 -17
  498. package/dist/npm/esm/modules/renderer/widgets/index.js +0 -19
  499. package/dist/npm/esm/modules/renderer/widgets/index.js.map +0 -1
  500. package/dist/npm/esm/modules/renderer/widgets/inline-banner.d.ts +0 -5
  501. package/dist/npm/esm/modules/renderer/widgets/inline-banner.js +0 -121
  502. package/dist/npm/esm/modules/renderer/widgets/inline-banner.js.map +0 -1
  503. package/dist/npm/esm/modules/renderer/widgets/newsletter.d.ts +0 -6
  504. package/dist/npm/esm/modules/renderer/widgets/newsletter.js +0 -277
  505. package/dist/npm/esm/modules/renderer/widgets/newsletter.js.map +0 -1
  506. package/dist/npm/esm/modules/renderer/widgets/product-view-count.d.ts +0 -6
  507. package/dist/npm/esm/modules/renderer/widgets/product-view-count.js +0 -194
  508. package/dist/npm/esm/modules/renderer/widgets/product-view-count.js.map +0 -1
  509. package/dist/npm/esm/modules/renderer/widgets/slide-in.d.ts +0 -5
  510. package/dist/npm/esm/modules/renderer/widgets/slide-in.js +0 -102
  511. package/dist/npm/esm/modules/renderer/widgets/slide-in.js.map +0 -1
  512. package/dist/npm/esm/modules/renderer/widgets/sticky-footer.d.ts +0 -5
  513. package/dist/npm/esm/modules/renderer/widgets/sticky-footer.js +0 -44
  514. package/dist/npm/esm/modules/renderer/widgets/sticky-footer.js.map +0 -1
  515. package/dist/npm/esm/modules/search/cart/index.d.ts +0 -26
  516. package/dist/npm/esm/modules/search/cart/index.js +0 -39
  517. package/dist/npm/esm/modules/search/cart/index.js.map +0 -1
  518. package/dist/npm/esm/modules/search/components/index.d.ts +0 -6
  519. package/dist/npm/esm/modules/search/components/index.js +0 -7
  520. package/dist/npm/esm/modules/search/components/index.js.map +0 -1
  521. package/dist/npm/esm/modules/search/components/search-box.d.ts +0 -11
  522. package/dist/npm/esm/modules/search/components/search-box.js +0 -25
  523. package/dist/npm/esm/modules/search/components/search-box.js.map +0 -1
  524. package/dist/npm/esm/modules/search/components/search-item.d.ts +0 -20
  525. package/dist/npm/esm/modules/search/components/search-item.js +0 -193
  526. package/dist/npm/esm/modules/search/components/search-item.js.map +0 -1
  527. package/dist/npm/esm/modules/search/components/suggestions.d.ts +0 -10
  528. package/dist/npm/esm/modules/search/components/suggestions.js +0 -129
  529. package/dist/npm/esm/modules/search/components/suggestions.js.map +0 -1
  530. package/dist/npm/esm/modules/search/index.d.ts +0 -67
  531. package/dist/npm/esm/modules/search/index.js +0 -642
  532. package/dist/npm/esm/modules/search/index.js.map +0 -1
  533. package/dist/npm/esm/modules/search/renderers/position-renderers.d.ts +0 -23
  534. package/dist/npm/esm/modules/search/renderers/position-renderers.js +0 -221
  535. package/dist/npm/esm/modules/search/renderers/position-renderers.js.map +0 -1
  536. package/dist/npm/esm/modules/search/renderers/results-renderer.d.ts +0 -20
  537. package/dist/npm/esm/modules/search/renderers/results-renderer.js +0 -176
  538. package/dist/npm/esm/modules/search/renderers/results-renderer.js.map +0 -1
  539. package/dist/npm/esm/modules/search/services/api-service.d.ts +0 -18
  540. package/dist/npm/esm/modules/search/services/api-service.js +0 -115
  541. package/dist/npm/esm/modules/search/services/api-service.js.map +0 -1
  542. package/dist/npm/esm/modules/search/services/tracking-service.d.ts +0 -16
  543. package/dist/npm/esm/modules/search/services/tracking-service.js +0 -250
  544. package/dist/npm/esm/modules/search/services/tracking-service.js.map +0 -1
  545. package/dist/npm/esm/modules/search/styles.d.ts +0 -13
  546. package/dist/npm/esm/modules/search/styles.js +0 -860
  547. package/dist/npm/esm/modules/search/styles.js.map +0 -1
  548. package/dist/npm/esm/modules/search/utils/helpers.d.ts +0 -24
  549. package/dist/npm/esm/modules/search/utils/helpers.js +0 -93
  550. package/dist/npm/esm/modules/search/utils/helpers.js.map +0 -1
  551. package/dist/npm/esm/modules/search/utils/icons.d.ts +0 -16
  552. package/dist/npm/esm/modules/search/utils/icons.js +0 -36
  553. package/dist/npm/esm/modules/search/utils/icons.js.map +0 -1
  554. package/dist/npm/esm/modules/search/utils/index.d.ts +0 -6
  555. package/dist/npm/esm/modules/search/utils/index.js +0 -7
  556. package/dist/npm/esm/modules/search/utils/index.js.map +0 -1
  557. package/dist/npm/esm/modules/search/utils/storage.d.ts +0 -7
  558. package/dist/npm/esm/modules/search/utils/storage.js +0 -52
  559. package/dist/npm/esm/modules/search/utils/storage.js.map +0 -1
  560. package/dist/npm/esm/package.json +0 -1
  561. package/dist/npm/esm/selwise.d.ts +0 -235
  562. package/dist/npm/esm/selwise.js +0 -1129
  563. package/dist/npm/esm/selwise.js.map +0 -1
  564. package/dist/npm/esm/sentry-test.d.ts +0 -45
  565. package/dist/npm/esm/sentry-test.js +0 -109
  566. package/dist/npm/esm/sentry-test.js.map +0 -1
  567. package/dist/npm/esm/sentry.d.ts +0 -86
  568. package/dist/npm/esm/sentry.js +0 -441
  569. package/dist/npm/esm/sentry.js.map +0 -1
  570. package/dist/npm/esm/shared/cart/handlers.d.ts +0 -46
  571. package/dist/npm/esm/shared/cart/handlers.js +0 -249
  572. package/dist/npm/esm/shared/cart/handlers.js.map +0 -1
  573. package/dist/npm/esm/shared/cart/index.d.ts +0 -6
  574. package/dist/npm/esm/shared/cart/index.js +0 -7
  575. package/dist/npm/esm/shared/cart/index.js.map +0 -1
  576. package/dist/npm/esm/shared/cart/types.d.ts +0 -30
  577. package/dist/npm/esm/shared/cart/types.js +0 -6
  578. package/dist/npm/esm/shared/cart/types.js.map +0 -1
  579. package/dist/npm/esm/shared/product-card/index.d.ts +0 -7
  580. package/dist/npm/esm/shared/product-card/index.js +0 -8
  581. package/dist/npm/esm/shared/product-card/index.js.map +0 -1
  582. package/dist/npm/esm/shared/product-card/renderer.d.ts +0 -35
  583. package/dist/npm/esm/shared/product-card/renderer.js +0 -334
  584. package/dist/npm/esm/shared/product-card/renderer.js.map +0 -1
  585. package/dist/npm/esm/shared/product-card/styles.d.ts +0 -17
  586. package/dist/npm/esm/shared/product-card/styles.js +0 -190
  587. package/dist/npm/esm/shared/product-card/styles.js.map +0 -1
  588. package/dist/npm/esm/shared/product-card/types.d.ts +0 -84
  589. package/dist/npm/esm/shared/product-card/types.js +0 -63
  590. package/dist/npm/esm/shared/product-card/types.js.map +0 -1
  591. package/dist/npm/esm/types/config.d.ts +0 -26
  592. package/dist/npm/esm/types/config.js +0 -5
  593. package/dist/npm/esm/types/config.js.map +0 -1
  594. package/dist/npm/esm/types/experiments.d.ts +0 -47
  595. package/dist/npm/esm/types/experiments.js +0 -14
  596. package/dist/npm/esm/types/experiments.js.map +0 -1
  597. package/dist/npm/esm/types/global-api.d.ts +0 -40
  598. package/dist/npm/esm/types/global-api.js +0 -2
  599. package/dist/npm/esm/types/global-api.js.map +0 -1
  600. package/dist/npm/esm/types/index.d.ts +0 -9
  601. package/dist/npm/esm/types/index.js +0 -11
  602. package/dist/npm/esm/types/index.js.map +0 -1
  603. package/dist/npm/esm/types/recommendation.d.ts +0 -186
  604. package/dist/npm/esm/types/recommendation.js +0 -5
  605. package/dist/npm/esm/types/recommendation.js.map +0 -1
  606. package/dist/npm/esm/types/renderer.d.ts +0 -99
  607. package/dist/npm/esm/types/renderer.js +0 -5
  608. package/dist/npm/esm/types/renderer.js.map +0 -1
  609. package/dist/npm/esm/types/search.d.ts +0 -186
  610. package/dist/npm/esm/types/search.js +0 -5
  611. package/dist/npm/esm/types/search.js.map +0 -1
  612. package/dist/npm/esm/utils/api-url.d.ts +0 -1
  613. package/dist/npm/esm/utils/api-url.js +0 -32
  614. package/dist/npm/esm/utils/api-url.js.map +0 -1
  615. package/dist/npm/esm/utils/debounce.d.ts +0 -27
  616. package/dist/npm/esm/utils/debounce.js +0 -70
  617. package/dist/npm/esm/utils/debounce.js.map +0 -1
  618. package/dist/npm/esm/utils/event-id.d.ts +0 -5
  619. package/dist/npm/esm/utils/event-id.js +0 -20
  620. package/dist/npm/esm/utils/event-id.js.map +0 -1
  621. package/dist/npm/esm/utils/index.d.ts +0 -11
  622. package/dist/npm/esm/utils/index.js +0 -12
  623. package/dist/npm/esm/utils/index.js.map +0 -1
  624. package/dist/npm/esm/utils/logger.d.ts +0 -31
  625. package/dist/npm/esm/utils/logger.js +0 -66
  626. package/dist/npm/esm/utils/logger.js.map +0 -1
  627. package/dist/npm/esm/utils/sanitize.d.ts +0 -38
  628. package/dist/npm/esm/utils/sanitize.js +0 -148
  629. package/dist/npm/esm/utils/sanitize.js.map +0 -1
  630. package/dist/npm/esm/utils/storage.d.ts +0 -72
  631. package/dist/npm/esm/utils/storage.js +0 -271
  632. package/dist/npm/esm/utils/storage.js.map +0 -1
  633. package/dist/npm/esm/utils/tracking-metadata.d.ts +0 -1
  634. package/dist/npm/esm/utils/tracking-metadata.js +0 -15
  635. package/dist/npm/esm/utils/tracking-metadata.js.map +0 -1
  636. package/dist/npm/esm/utils/url-matcher.d.ts +0 -4
  637. package/dist/npm/esm/utils/url-matcher.js +0 -8
  638. package/dist/npm/esm/utils/url-matcher.js.map +0 -1
@@ -1,203 +0,0 @@
1
- /**
2
- * Extract itemCode from product object
3
- * Uses canonical product identifier fields.
4
- *
5
- * @param product - Product object from API
6
- * @returns The merchant's product ID (itemCode)
7
- */
8
- export function getProductItemCode(product) {
9
- if (typeof product === 'string') {
10
- return product;
11
- }
12
- // id is the canonical product identifier; itemCode mirrors id when present.
13
- return product.itemCode || product.id;
14
- }
15
- /**
16
- * Extract product UUID (internal database ID)
17
- * Only for internal use - never send in tracking events
18
- *
19
- * @param product - Product object from API
20
- * @returns Internal UUID or undefined
21
- */
22
- export function getProductUuid(product) {
23
- return product._uuid;
24
- }
25
- /**
26
- * Track a product view/impression event
27
- *
28
- * @param product - Product object from API
29
- * @param context - Event context (source, position, etc.)
30
- * @returns Promise that resolves when event is tracked
31
- */
32
- export async function trackProductView(product, context) {
33
- const itemCode = getProductItemCode(product);
34
- // Use the global tracking function from core tracker
35
- if (typeof window !== 'undefined' && window.Selwise || window.Selwise) {
36
- const Selwise = window.Selwise || window.Selwise;
37
- // Check if batch tracking is enabled
38
- if (Selwise.trackEvent) {
39
- await Selwise.trackEvent('product_view', {
40
- entityType: context.source,
41
- entityId: context.widgetId || null,
42
- metadata: {
43
- productItemCode: itemCode,
44
- position: context.position,
45
- query: context.query,
46
- listType: context.listType,
47
- ...context.customData,
48
- },
49
- });
50
- }
51
- }
52
- }
53
- /**
54
- * Track a product click event
55
- *
56
- * @param product - Product object from API
57
- * @param context - Event context (source, position, etc.)
58
- * @returns Promise that resolves when event is tracked
59
- */
60
- export async function trackProductClick(product, context) {
61
- const itemCode = getProductItemCode(product);
62
- if (typeof window !== 'undefined' && window.Selwise || window.Selwise) {
63
- const Selwise = window.Selwise || window.Selwise;
64
- if (Selwise.trackEvent) {
65
- await Selwise.trackEvent('click', {
66
- entityType: context.source,
67
- entityId: context.widgetId || itemCode,
68
- metadata: {
69
- productItemCode: itemCode,
70
- position: context.position,
71
- query: context.query,
72
- listType: context.listType,
73
- ...context.customData,
74
- },
75
- });
76
- }
77
- }
78
- }
79
- /**
80
- * Track an add_to_cart event
81
- *
82
- * @param product - Product object from API
83
- * @param quantity - Quantity added (default: 1)
84
- * @param context - Event context (source, widgetId, etc.)
85
- * @returns Promise that resolves when event is tracked
86
- */
87
- export async function trackAddToCart(product, quantity = 1, context) {
88
- const itemCode = getProductItemCode(product);
89
- if (typeof window !== 'undefined' && window.Selwise || window.Selwise) {
90
- const Selwise = window.Selwise || window.Selwise;
91
- if (Selwise.trackEvent) {
92
- await Selwise.trackEvent('add_to_cart', {
93
- entityType: context.source,
94
- entityId: context.widgetId || itemCode,
95
- metadata: {
96
- productItemCode: itemCode,
97
- quantity,
98
- price: typeof product === 'object' ? product.price : undefined,
99
- ...context.customData,
100
- },
101
- });
102
- }
103
- }
104
- }
105
- /**
106
- * Track product impression (for analytics/funnel)
107
- *
108
- * @param products - Array of products being viewed
109
- * @param context - Event context (source, listType, etc.)
110
- * @returns Promise that resolves when events are tracked
111
- */
112
- export async function trackProductImpressions(products, context) {
113
- if (typeof window !== 'undefined' && window.Selwise || window.Selwise) {
114
- const Selwise = window.Selwise || window.Selwise;
115
- if (Selwise.trackEvent) {
116
- // Track as a batch of impressions
117
- const itemCodes = products.map(getProductItemCode);
118
- await Selwise.trackEvent('product_impression', {
119
- entityType: context.source,
120
- entityId: context.widgetId || null,
121
- metadata: {
122
- productItemCodes: itemCodes,
123
- count: itemCodes.length,
124
- listType: context.listType,
125
- query: context.query,
126
- ...context.customData,
127
- },
128
- });
129
- }
130
- }
131
- }
132
- /**
133
- * Prepare product event data with normalized product identification
134
- *
135
- * @param product - Product object or itemCode
136
- * @param eventName - Event type (view, click, add_to_cart, etc.)
137
- * @param context - Event context
138
- * @returns Normalized event data ready for tracking
139
- */
140
- export function prepareProductEventData(product, eventName, context) {
141
- const itemCode = getProductItemCode(product);
142
- return {
143
- name: eventName,
144
- entityType: context.source,
145
- entityId: context.widgetId || itemCode,
146
- metadata: {
147
- productItemCode: itemCode,
148
- ...(typeof product === 'object' && {
149
- _productUuid: product._uuid, // Only for internal use
150
- price: product.price,
151
- category: product.category,
152
- }),
153
- ...(context.position !== undefined && { position: context.position }),
154
- ...(context.query && { query: context.query }),
155
- ...(context.listType && { listType: context.listType }),
156
- ...context.customData,
157
- },
158
- };
159
- }
160
- /**
161
- * Product Tracker class for OOP-style tracking
162
- *
163
- * Example usage:
164
- * ```typescript
165
- * const tracker = new ProductTracker();
166
- * await tracker.trackView(product, { source: 'recommendation', widgetId: 'xxx' });
167
- * ```
168
- */
169
- export class ProductTracker {
170
- /**
171
- * Track a product view/impression
172
- */
173
- static async view(product, context) {
174
- return trackProductView(product, context);
175
- }
176
- /**
177
- * Track a product click
178
- */
179
- static async click(product, context) {
180
- return trackProductClick(product, context);
181
- }
182
- /**
183
- * Track add to cart
184
- */
185
- static async addToCart(product, quantity, context) {
186
- return trackAddToCart(product, quantity, context);
187
- }
188
- /**
189
- * Track product impressions (list view)
190
- */
191
- static async impressions(products, context) {
192
- return trackProductImpressions(products, context);
193
- }
194
- /**
195
- * Prepare event data (for custom tracking)
196
- */
197
- static prepareEvent(product, eventName, context) {
198
- return prepareProductEventData(product, eventName, context);
199
- }
200
- }
201
- // Export convenience functions
202
- export default ProductTracker;
203
- //# sourceMappingURL=tracking.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../../../src/modules/products/tracking.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Cart Handlers for Recommendation Module
3
- * Uses shared cart module for platform-specific implementations
4
- */
5
- import type { Product, RecommendationWidget, RecommendationConfig } from '../../types';
6
- export declare function handleAddToCart(product: Product, widget: RecommendationWidget, config: RecommendationConfig, trackEvent?: (type: 'add_to_cart', widgetId: string, productItemCode: string, config: RecommendationConfig) => void, trackBehavior?: (type: 'add_to_cart', product: {
7
- itemCode: string;
8
- category?: string;
9
- price?: number;
10
- }, config: RecommendationConfig) => void): void;
@@ -1,49 +0,0 @@
1
- /**
2
- * Cart Handlers for Recommendation Module
3
- * Uses shared cart module for platform-specific implementations
4
- */
5
- import { addToCart, createButtonState, } from '../../shared/cart/index.js';
6
- export function handleAddToCart(product, widget, config, trackEvent, trackBehavior) {
7
- const productItemCode = product.itemCode || product.id;
8
- // Track add to cart event
9
- trackEvent?.('add_to_cart', widget.id, productItemCode, config);
10
- // Track behavior for AI personalization
11
- trackBehavior?.('add_to_cart', {
12
- itemCode: productItemCode,
13
- category: product.categories,
14
- price: product.price,
15
- }, config);
16
- // Map to shared cart product type
17
- const cartProduct = {
18
- id: productItemCode,
19
- title: product.title,
20
- price: product.price,
21
- variantId: product.variantId,
22
- itemCode: productItemCode,
23
- wooProductId: product.wooProductId,
24
- magentoProductId: product.magentoProductId,
25
- prestaProductId: product.prestaProductId,
26
- attributeId: product.attributeId,
27
- };
28
- const platform = (widget.cartPlatform || 'custom');
29
- // For Akinon, we need button state
30
- if (platform === 'akinon') {
31
- const button = document.querySelector(`[data-selwise-action="add-to-cart"][data-product-id="${productItemCode}"]`);
32
- const buttonState = createButtonState(button, {
33
- loading: 'Adding...',
34
- success: 'Added!',
35
- error: 'Hata',
36
- default: widget.cartButtonText || 'Add to Cart',
37
- });
38
- addToCart(cartProduct, platform, { buttonState });
39
- }
40
- else {
41
- addToCart(cartProduct, platform, {
42
- customScript: widget.customCartScript ||
43
- (typeof widget.addToCartConfig?.customScript === 'string'
44
- ? widget.addToCartConfig.customScript
45
- : undefined),
46
- });
47
- }
48
- }
49
- //# sourceMappingURL=cart-handlers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cart-handlers.js","sourceRoot":"","sources":["../../../../../src/modules/recommendation/cart-handlers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,SAAS,EACT,iBAAiB,GAGlB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,UAAU,eAAe,CAC7B,OAAgB,EAChB,MAA4B,EAC5B,MAA4B,EAC5B,UAKS,EACT,aAIS;IAET,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE,CAAC;IAEvD,0BAA0B;IAC1B,UAAU,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;IAEhE,wCAAwC;IACxC,aAAa,EAAE,CAAC,aAAa,EAAE;QAC7B,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,OAAO,CAAC,UAAU;QAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,EAAE,MAAM,CAAC,CAAC;IAEX,kCAAkC;IAClC,MAAM,WAAW,GAAgB;QAC/B,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ,EAAE,eAAe;QACzB,YAAY,EAAG,OAAe,CAAC,YAAY;QAC3C,gBAAgB,EAAG,OAAe,CAAC,gBAAgB;QACnD,eAAe,EAAG,OAAe,CAAC,eAAe;QACjD,WAAW,EAAG,OAAe,CAAC,WAAW;KAC1C,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,QAAQ,CAAiB,CAAC;IAEnE,mCAAmC;IACnC,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CACnC,wDAAwD,eAAe,IAAI,CAChD,CAAC;QAE9B,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE;YAC5C,OAAO,EAAE,WAAW;YACpB,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,MAAM,CAAC,cAAc,IAAI,aAAa;SAChD,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IACpD,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE;YAC/B,YAAY,EACV,MAAM,CAAC,gBAAgB;gBACvB,CAAC,OAAO,MAAM,CAAC,eAAe,EAAE,YAAY,KAAK,QAAQ;oBACvD,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY;oBACrC,CAAC,CAAC,SAAS,CAAC;SACjB,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -1,37 +0,0 @@
1
- /**
2
- * Product Card Component and Renderers
3
- * Complete rendering logic for product cards with custom templates
4
- *
5
- * Uses shared product-card module for unified rendering
6
- */
7
- import type { Product, ProductCardDefinition, RecommendationWidget, RecommendationConfig } from '../../../types';
8
- /**
9
- * Render custom product card using shared renderer
10
- *
11
- * @param containerId - Optional ID for tracking cards to execute JS later
12
- */
13
- export declare function renderCustomProductCard(product: Product, productCard: ProductCardDefinition, containerId?: string): string;
14
- /**
15
- * Render default card when no product card template is defined
16
- */
17
- export declare function renderDefaultCard(product: Product, widget: RecommendationWidget): string;
18
- /**
19
- * Create product card DOM element with event handlers
20
- * This is the main entry point for creating product cards
21
- *
22
- * @param containerId - Optional ID for tracking cards to execute JS later
23
- */
24
- export declare function createProductCard(product: Product, widget: RecommendationWidget, config: RecommendationConfig, handleAddToCart: (product: Product, widget: RecommendationWidget, config: RecommendationConfig, trackEvent?: (type: 'add_to_cart', widgetId: string, productItemCode: string, config: RecommendationConfig) => void, trackBehavior?: (type: 'add_to_cart', product: {
25
- itemCode: string;
26
- category?: string;
27
- price?: number;
28
- }, config: RecommendationConfig) => void) => void, trackEvent: (type: 'click', widgetId: string, productItemCode: string, config: RecommendationConfig) => void, trackBehavior?: (type: 'view' | 'add_to_cart' | 'purchase' | 'wishlist', product: {
29
- itemCode: string;
30
- category?: string;
31
- price?: number;
32
- }, config: RecommendationConfig) => void, containerId?: string): HTMLElement;
33
- /**
34
- * Execute JavaScript for product cards after DOM insertion
35
- * Call this after inserting the HTML into the DOM
36
- */
37
- export declare function executeCardScriptsForRecommendations(containerId: string, container: HTMLElement): void;
@@ -1,281 +0,0 @@
1
- /**
2
- * Product Card Component and Renderers
3
- * Complete rendering logic for product cards with custom templates
4
- *
5
- * Uses shared product-card module for unified rendering
6
- */
7
- import { formatPrice } from '../utils/format.js';
8
- import { fromRecommendationProduct, renderProductCard as sharedRenderProductCard, executeCardScript, DATA_ATTRS, ACTIONS, } from '../../../shared/product-card/index.js';
9
- import { sanitizeProductHTML } from '../../../utils/sanitize.js';
10
- // Store rendered data for later JS execution
11
- const renderedCardsData = new Map();
12
- /**
13
- * Render custom product card using shared renderer
14
- *
15
- * @param containerId - Optional ID for tracking cards to execute JS later
16
- */
17
- export function renderCustomProductCard(product, productCard, containerId) {
18
- // Convert to unified product type
19
- const unifiedProduct = fromRecommendationProduct(product);
20
- // Create template from productCard definition - INCLUDE JS FIELDS
21
- const template = {
22
- id: productCard.id,
23
- template: productCard.template,
24
- fields: productCard.fields || [],
25
- layoutType: productCard.layoutType,
26
- imagePosition: productCard.imagePosition,
27
- imageSize: productCard.imageSize,
28
- showBadges: productCard.showBadges,
29
- showButton: productCard.showButton,
30
- buttonText: productCard.buttonText,
31
- buttonStyle: productCard.buttonStyle,
32
- hoverEffect: productCard.hoverEffect,
33
- customCSS: productCard.customCSS,
34
- customHTML: productCard.customHTML,
35
- customJs: productCard.customJs,
36
- jsTiming: productCard.jsTiming || 'immediate',
37
- jsEventName: productCard.jsEventName,
38
- };
39
- // Create context
40
- const context = {
41
- source: 'recommendation',
42
- formatPrice,
43
- };
44
- // Store data for later JS execution if we have a containerId
45
- if (containerId && template.customJs) {
46
- if (!renderedCardsData.has(containerId)) {
47
- renderedCardsData.set(containerId, []);
48
- }
49
- renderedCardsData.get(containerId).push({
50
- template,
51
- unifiedProduct,
52
- productItemCode: product.itemCode || product.id,
53
- });
54
- }
55
- // Use shared renderer
56
- return sharedRenderProductCard(unifiedProduct, template, context);
57
- }
58
- /**
59
- * Render default card when no product card template is defined
60
- */
61
- export function renderDefaultCard(product, widget) {
62
- const hasDiscount = product.originalPrice && product.originalPrice > product.price;
63
- const discountPercent = hasDiscount
64
- ? Math.round(((product.originalPrice - product.price) / product.originalPrice) * 100)
65
- : 0;
66
- let badgesHTML = '';
67
- if (product.isNew)
68
- badgesHTML += '<span class="recommendation-badge recommendation-badge-new">New</span>';
69
- if (hasDiscount)
70
- badgesHTML += `<span class="recommendation-badge recommendation-badge-sale">-${discountPercent}%</span>`;
71
- if (product.isBestseller)
72
- badgesHTML += '<span class="recommendation-badge recommendation-badge-bestseller">Bestseller</span>';
73
- let addToCartHTML = '';
74
- if (widget.addToCartEnabled) {
75
- const productItemCode = product.itemCode || product.id;
76
- addToCartHTML = `
77
- <button class="recommendation-add-to-cart"
78
- ${DATA_ATTRS.ACTION}="${ACTIONS.ADD_TO_CART}"
79
- ${DATA_ATTRS.PRODUCT_ID}="${productItemCode}">
80
- ${widget.cartButtonText || 'Add to Cart'}
81
- </button>
82
- `;
83
- }
84
- return `
85
- <div class="recommendation-card-inner">
86
- <div class="recommendation-card-image">
87
- ${badgesHTML ? `<div class="recommendation-badges">${badgesHTML}</div>` : ''}
88
- <img src="${product.imageUrl}" alt="${product.title}" loading="lazy" />
89
- </div>
90
- <div class="recommendation-card-content">
91
- <h3 class="recommendation-card-title">${product.title}</h3>
92
- <div class="recommendation-card-price">
93
- ${hasDiscount ? `<span class="recommendation-price-original">${formatPrice(product.originalPrice)}</span>` : ''}
94
- <span class="recommendation-price-current">${formatPrice(product.price)}</span>
95
- </div>
96
- ${addToCartHTML}
97
- </div>
98
- </div>
99
- <style>
100
- .recommendation-card-inner {
101
- background: white;
102
- border-radius: 8px;
103
- overflow: hidden;
104
- box-shadow: 0 2px 8px rgba(0,0,0,0.1);
105
- transition: transform 0.2s ease, box-shadow 0.2s ease;
106
- cursor: pointer;
107
- }
108
- .recommendation-card-inner:hover {
109
- transform: translateY(-4px);
110
- box-shadow: 0 8px 24px rgba(0,0,0,0.15);
111
- }
112
- .recommendation-card-image {
113
- position: relative;
114
- padding-top: 100%;
115
- }
116
- .recommendation-card-image img {
117
- position: absolute;
118
- top: 0;
119
- left: 0;
120
- width: 100%;
121
- height: 100%;
122
- object-fit: cover;
123
- }
124
- .recommendation-badges {
125
- position: absolute;
126
- top: 8px;
127
- left: 8px;
128
- z-index: 1;
129
- display: flex;
130
- flex-direction: column;
131
- gap: 4px;
132
- }
133
- .recommendation-badge {
134
- padding: 4px 8px;
135
- font-size: 12px;
136
- font-weight: 600;
137
- border-radius: 4px;
138
- text-transform: uppercase;
139
- }
140
- .recommendation-badge-new {
141
- background: #22c55e;
142
- color: white;
143
- }
144
- .recommendation-badge-sale {
145
- background: #ef4444;
146
- color: white;
147
- }
148
- .recommendation-badge-bestseller {
149
- background: #f59e0b;
150
- color: white;
151
- }
152
- .recommendation-card-content {
153
- padding: 12px;
154
- }
155
- .recommendation-card-title {
156
- font-size: 14px;
157
- font-weight: 500;
158
- color: #111;
159
- margin: 0 0 8px;
160
- line-height: 1.4;
161
- display: -webkit-box;
162
- -webkit-line-clamp: 2;
163
- -webkit-box-orient: vertical;
164
- overflow: hidden;
165
- }
166
- .recommendation-card-price {
167
- display: flex;
168
- align-items: center;
169
- gap: 8px;
170
- }
171
- .recommendation-price-original {
172
- text-decoration: line-through;
173
- color: #999;
174
- font-size: 13px;
175
- }
176
- .recommendation-price-current {
177
- font-weight: 600;
178
- color: #111;
179
- font-size: 16px;
180
- }
181
- .recommendation-add-to-cart {
182
- width: 100%;
183
- margin-top: 12px;
184
- padding: 10px;
185
- background: #111;
186
- color: white;
187
- border: none;
188
- border-radius: 6px;
189
- font-size: 14px;
190
- font-weight: 500;
191
- cursor: pointer;
192
- transition: background 0.2s ease;
193
- }
194
- .recommendation-add-to-cart:hover {
195
- background: #333;
196
- }
197
- </style>
198
- `;
199
- }
200
- /**
201
- * Create product card DOM element with event handlers
202
- * This is the main entry point for creating product cards
203
- *
204
- * @param containerId - Optional ID for tracking cards to execute JS later
205
- */
206
- export function createProductCard(product, widget, config, handleAddToCart, trackEvent, trackBehavior, containerId) {
207
- const card = document.createElement('div');
208
- card.className = 'recommendation-card';
209
- card.setAttribute('data-product-id', product.itemCode || product.id);
210
- // If custom product card template is defined
211
- if (widget.productCard) {
212
- // Custom templates are already sanitized in renderCustomProductCard -> sharedRenderProductCard
213
- card.innerHTML = renderCustomProductCard(product, widget.productCard, containerId);
214
- }
215
- else {
216
- // Default card template - sanitize the output
217
- card.innerHTML = sanitizeProductHTML(renderDefaultCard(product, widget));
218
- }
219
- // Check if custom template has its own links (has <a> tags)
220
- const hasCustomLinks = widget.productCard?.customHTML &&
221
- (widget.productCard.customHTML.includes('<a ') || widget.productCard.customHTML.includes('<a\''));
222
- // Add click handler for add-to-cart actions
223
- card.addEventListener('click', (e) => {
224
- const target = e.target;
225
- const isAddToCart = target.closest(`[${DATA_ATTRS.ACTION}="${ACTIONS.ADD_TO_CART}"]`);
226
- if (isAddToCart) {
227
- e.preventDefault();
228
- handleAddToCart(product, widget, config, trackEvent, trackBehavior);
229
- return;
230
- }
231
- // If using custom template with links, let anchor tags handle navigation
232
- // Only navigate automatically for non-custom templates
233
- if (!hasCustomLinks) {
234
- // Track click and navigate for default templates
235
- trackEvent('click', widget.id, product.itemCode || product.id, config);
236
- // Also track behavior for AI personalization (view = product page click)
237
- if (trackBehavior) {
238
- trackBehavior('view', {
239
- itemCode: product.itemCode || product.id,
240
- category: product.categories,
241
- price: product.price,
242
- }, config);
243
- }
244
- window.location.href = product.url;
245
- return;
246
- }
247
- // For custom templates with links:
248
- // Check if clicked on or inside an anchor tag - if yes, track event and let anchor handle it
249
- const closestAnchor = target.closest('a');
250
- if (closestAnchor) {
251
- trackEvent('click', widget.id, product.itemCode || product.id, config);
252
- // Let the anchor tag handle its own navigation
253
- return;
254
- }
255
- // Clicked outside any anchor in custom template - do nothing, don't navigate
256
- // User can add custom JS if they want other click behavior
257
- });
258
- return card;
259
- }
260
- /**
261
- * Execute JavaScript for product cards after DOM insertion
262
- * Call this after inserting the HTML into the DOM
263
- */
264
- export function executeCardScriptsForRecommendations(containerId, container) {
265
- const cardsData = renderedCardsData.get(containerId);
266
- if (!cardsData)
267
- return;
268
- cardsData.forEach((cardData) => {
269
- const cardElement = container.querySelector(`[data-product-id="${cardData.productItemCode}"] .selwise-card-inner`);
270
- if (cardElement && cardData.template.customJs) {
271
- const context = {
272
- source: 'recommendation',
273
- formatPrice,
274
- };
275
- executeCardScript(cardElement, cardData.template, cardData.unifiedProduct, context);
276
- }
277
- });
278
- // Clean up stored data
279
- renderedCardsData.delete(containerId);
280
- }
281
- //# sourceMappingURL=product-card-renderer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"product-card-renderer.js","sourceRoot":"","sources":["../../../../../../src/modules/recommendation/components/product-card-renderer.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- /**
2
- * Recommendation Widget Module - Refactored
3
- * Handles fetching and rendering of product recommendations
4
- */
5
- import type { RecommendationConfig } from '../../types';
6
- export declare function initRecommendations(config: RecommendationConfig): Promise<void>;
7
- /**
8
- * Cleanup all observers and rendered widgets
9
- * Call this when navigating away in SPA
10
- */
11
- export declare function cleanup(): void;