@selwise/widget 0.0.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (643) hide show
  1. package/README.md +2 -1
  2. package/dist/npm/cjs/index.cjs +2 -0
  3. package/dist/npm/cjs/index.cjs.LICENSE.txt +1 -0
  4. package/dist/npm/cjs/index.d.ts +59 -0
  5. package/dist/npm/esm/index.d.ts +59 -4
  6. package/dist/npm/esm/index.mjs +2 -0
  7. package/dist/npm/esm/index.mjs.LICENSE.txt +1 -0
  8. package/package.json +14 -16
  9. package/dist/npm/cjs/constants.js +0 -167
  10. package/dist/npm/cjs/constants.js.map +0 -1
  11. package/dist/npm/cjs/core/conflict-resolver.js +0 -203
  12. package/dist/npm/cjs/core/conflict-resolver.js.map +0 -1
  13. package/dist/npm/cjs/core/event-batcher.js +0 -977
  14. package/dist/npm/cjs/core/event-batcher.js.map +0 -1
  15. package/dist/npm/cjs/core/experiment-overrides.js +0 -178
  16. package/dist/npm/cjs/core/experiment-overrides.js.map +0 -1
  17. package/dist/npm/cjs/core/experiments.js +0 -317
  18. package/dist/npm/cjs/core/experiments.js.map +0 -1
  19. package/dist/npm/cjs/core/frequency-caps.js +0 -297
  20. package/dist/npm/cjs/core/frequency-caps.js.map +0 -1
  21. package/dist/npm/cjs/core/index.js +0 -27
  22. package/dist/npm/cjs/core/index.js.map +0 -1
  23. package/dist/npm/cjs/core/indexeddb-queue.js +0 -333
  24. package/dist/npm/cjs/core/indexeddb-queue.js.map +0 -1
  25. package/dist/npm/cjs/core/journey-tracker.js +0 -243
  26. package/dist/npm/cjs/core/journey-tracker.js.map +0 -1
  27. package/dist/npm/cjs/core/page-targeting/index.js +0 -72
  28. package/dist/npm/cjs/core/page-targeting/index.js.map +0 -1
  29. package/dist/npm/cjs/core/script-executor.js +0 -80
  30. package/dist/npm/cjs/core/script-executor.js.map +0 -1
  31. package/dist/npm/cjs/core/segments.js +0 -172
  32. package/dist/npm/cjs/core/segments.js.map +0 -1
  33. package/dist/npm/cjs/core/tracker.js +0 -798
  34. package/dist/npm/cjs/core/tracker.js.map +0 -1
  35. package/dist/npm/cjs/datalayer/basket.js +0 -385
  36. package/dist/npm/cjs/datalayer/basket.js.map +0 -1
  37. package/dist/npm/cjs/datalayer/cart-association.js +0 -226
  38. package/dist/npm/cjs/datalayer/cart-association.js.map +0 -1
  39. package/dist/npm/cjs/datalayer/checkout.js +0 -382
  40. package/dist/npm/cjs/datalayer/checkout.js.map +0 -1
  41. package/dist/npm/cjs/datalayer/constants.js +0 -163
  42. package/dist/npm/cjs/datalayer/constants.js.map +0 -1
  43. package/dist/npm/cjs/datalayer/index.js +0 -1010
  44. package/dist/npm/cjs/datalayer/index.js.map +0 -1
  45. package/dist/npm/cjs/datalayer/listener.js +0 -416
  46. package/dist/npm/cjs/datalayer/listener.js.map +0 -1
  47. package/dist/npm/cjs/datalayer/page.js +0 -343
  48. package/dist/npm/cjs/datalayer/page.js.map +0 -1
  49. package/dist/npm/cjs/datalayer/product.js +0 -517
  50. package/dist/npm/cjs/datalayer/product.js.map +0 -1
  51. package/dist/npm/cjs/datalayer/reverse-mappings.js +0 -139
  52. package/dist/npm/cjs/datalayer/reverse-mappings.js.map +0 -1
  53. package/dist/npm/cjs/datalayer/search.js +0 -363
  54. package/dist/npm/cjs/datalayer/search.js.map +0 -1
  55. package/dist/npm/cjs/datalayer/types.js +0 -134
  56. package/dist/npm/cjs/datalayer/types.js.map +0 -1
  57. package/dist/npm/cjs/datalayer/user.js +0 -372
  58. package/dist/npm/cjs/datalayer/user.js.map +0 -1
  59. package/dist/npm/cjs/debug/index.js +0 -679
  60. package/dist/npm/cjs/debug/index.js.map +0 -1
  61. package/dist/npm/cjs/entries/cdn.js +0 -72
  62. package/dist/npm/cjs/entries/cdn.js.map +0 -1
  63. package/dist/npm/cjs/index.js +0 -10
  64. package/dist/npm/cjs/index.js.map +0 -1
  65. package/dist/npm/cjs/modules/contract/recommendation-contract.js +0 -119
  66. package/dist/npm/cjs/modules/contract/recommendation-contract.js.map +0 -1
  67. package/dist/npm/cjs/modules/contract/search-contract.js +0 -18
  68. package/dist/npm/cjs/modules/contract/search-contract.js.map +0 -1
  69. package/dist/npm/cjs/modules/contract/tracking-contract.js +0 -16
  70. package/dist/npm/cjs/modules/contract/tracking-contract.js.map +0 -1
  71. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/configs.js +0 -164
  72. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/configs.js.map +0 -1
  73. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/index.js +0 -21
  74. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/index.js.map +0 -1
  75. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/types.js +0 -3
  76. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/types.js.map +0 -1
  77. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/validators.js +0 -107
  78. package/dist/npm/cjs/modules/contract/vendor/recommendation-contract/validators.js.map +0 -1
  79. package/dist/npm/cjs/modules/contract/vendor/search-contract/configs.js +0 -404
  80. package/dist/npm/cjs/modules/contract/vendor/search-contract/configs.js.map +0 -1
  81. package/dist/npm/cjs/modules/contract/vendor/search-contract/index.js +0 -21
  82. package/dist/npm/cjs/modules/contract/vendor/search-contract/index.js.map +0 -1
  83. package/dist/npm/cjs/modules/contract/vendor/search-contract/types.js +0 -8
  84. package/dist/npm/cjs/modules/contract/vendor/search-contract/types.js.map +0 -1
  85. package/dist/npm/cjs/modules/contract/vendor/search-contract/validators.js +0 -126
  86. package/dist/npm/cjs/modules/contract/vendor/search-contract/validators.js.map +0 -1
  87. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/configs.js +0 -133
  88. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/configs.js.map +0 -1
  89. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/index.js +0 -21
  90. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/index.js.map +0 -1
  91. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/types.js +0 -3
  92. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/types.js.map +0 -1
  93. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/validators.js +0 -154
  94. package/dist/npm/cjs/modules/contract/vendor/tracking-contract/validators.js.map +0 -1
  95. package/dist/npm/cjs/modules/contract/vendor/widget-contract/configs.js +0 -1481
  96. package/dist/npm/cjs/modules/contract/vendor/widget-contract/configs.js.map +0 -1
  97. package/dist/npm/cjs/modules/contract/vendor/widget-contract/index.js +0 -22
  98. package/dist/npm/cjs/modules/contract/vendor/widget-contract/index.js.map +0 -1
  99. package/dist/npm/cjs/modules/contract/vendor/widget-contract/layout.js +0 -21
  100. package/dist/npm/cjs/modules/contract/vendor/widget-contract/layout.js.map +0 -1
  101. package/dist/npm/cjs/modules/contract/vendor/widget-contract/types.js +0 -8
  102. package/dist/npm/cjs/modules/contract/vendor/widget-contract/types.js.map +0 -1
  103. package/dist/npm/cjs/modules/contract/vendor/widget-contract/validators.js +0 -139
  104. package/dist/npm/cjs/modules/contract/vendor/widget-contract/validators.js.map +0 -1
  105. package/dist/npm/cjs/modules/contract/widget-contract.js +0 -10
  106. package/dist/npm/cjs/modules/contract/widget-contract.js.map +0 -1
  107. package/dist/npm/cjs/modules/products/tracking.js +0 -214
  108. package/dist/npm/cjs/modules/products/tracking.js.map +0 -1
  109. package/dist/npm/cjs/modules/recommendation/cart-handlers.js +0 -52
  110. package/dist/npm/cjs/modules/recommendation/cart-handlers.js.map +0 -1
  111. package/dist/npm/cjs/modules/recommendation/components/product-card-renderer.js +0 -287
  112. package/dist/npm/cjs/modules/recommendation/components/product-card-renderer.js.map +0 -1
  113. package/dist/npm/cjs/modules/recommendation/index.js +0 -678
  114. package/dist/npm/cjs/modules/recommendation/index.js.map +0 -1
  115. package/dist/npm/cjs/modules/recommendation/renderers/grid.js +0 -21
  116. package/dist/npm/cjs/modules/recommendation/renderers/grid.js.map +0 -1
  117. package/dist/npm/cjs/modules/recommendation/renderers/list.js +0 -22
  118. package/dist/npm/cjs/modules/recommendation/renderers/list.js.map +0 -1
  119. package/dist/npm/cjs/modules/recommendation/renderers/masonry.js +0 -22
  120. package/dist/npm/cjs/modules/recommendation/renderers/masonry.js.map +0 -1
  121. package/dist/npm/cjs/modules/recommendation/renderers/slider-renderer.js +0 -145
  122. package/dist/npm/cjs/modules/recommendation/renderers/slider-renderer.js.map +0 -1
  123. package/dist/npm/cjs/modules/recommendation/slider-controls.js +0 -201
  124. package/dist/npm/cjs/modules/recommendation/slider-controls.js.map +0 -1
  125. package/dist/npm/cjs/modules/recommendation/tracking.js +0 -247
  126. package/dist/npm/cjs/modules/recommendation/tracking.js.map +0 -1
  127. package/dist/npm/cjs/modules/recommendation/utils/dom.js +0 -70
  128. package/dist/npm/cjs/modules/recommendation/utils/dom.js.map +0 -1
  129. package/dist/npm/cjs/modules/recommendation/utils/format.js +0 -13
  130. package/dist/npm/cjs/modules/recommendation/utils/format.js.map +0 -1
  131. package/dist/npm/cjs/modules/recommendation/utils/index.js +0 -22
  132. package/dist/npm/cjs/modules/recommendation/utils/index.js.map +0 -1
  133. package/dist/npm/cjs/modules/renderer/helpers.js +0 -16
  134. package/dist/npm/cjs/modules/renderer/helpers.js.map +0 -1
  135. package/dist/npm/cjs/modules/renderer/index.js +0 -52
  136. package/dist/npm/cjs/modules/renderer/index.js.map +0 -1
  137. package/dist/npm/cjs/modules/renderer/style-resolver.js +0 -11
  138. package/dist/npm/cjs/modules/renderer/style-resolver.js.map +0 -1
  139. package/dist/npm/cjs/modules/renderer/styles/index.js +0 -254
  140. package/dist/npm/cjs/modules/renderer/styles/index.js.map +0 -1
  141. package/dist/npm/cjs/modules/renderer/styles.js +0 -7
  142. package/dist/npm/cjs/modules/renderer/styles.js.map +0 -1
  143. package/dist/npm/cjs/modules/renderer/utils/helpers.js +0 -243
  144. package/dist/npm/cjs/modules/renderer/utils/helpers.js.map +0 -1
  145. package/dist/npm/cjs/modules/renderer/utils/image-renderer.js +0 -65
  146. package/dist/npm/cjs/modules/renderer/utils/image-renderer.js.map +0 -1
  147. package/dist/npm/cjs/modules/renderer/utils/placement.js +0 -34
  148. package/dist/npm/cjs/modules/renderer/utils/placement.js.map +0 -1
  149. package/dist/npm/cjs/modules/renderer/utils.js +0 -61
  150. package/dist/npm/cjs/modules/renderer/utils.js.map +0 -1
  151. package/dist/npm/cjs/modules/renderer/widgets/announcement-bar.js +0 -84
  152. package/dist/npm/cjs/modules/renderer/widgets/announcement-bar.js.map +0 -1
  153. package/dist/npm/cjs/modules/renderer/widgets/cart-count.js +0 -211
  154. package/dist/npm/cjs/modules/renderer/widgets/cart-count.js.map +0 -1
  155. package/dist/npm/cjs/modules/renderer/widgets/cookie-consent.js +0 -459
  156. package/dist/npm/cjs/modules/renderer/widgets/cookie-consent.js.map +0 -1
  157. package/dist/npm/cjs/modules/renderer/widgets/countdown-timer.js +0 -132
  158. package/dist/npm/cjs/modules/renderer/widgets/countdown-timer.js.map +0 -1
  159. package/dist/npm/cjs/modules/renderer/widgets/custom.js +0 -58
  160. package/dist/npm/cjs/modules/renderer/widgets/custom.js.map +0 -1
  161. package/dist/npm/cjs/modules/renderer/widgets/embedded-card.js +0 -97
  162. package/dist/npm/cjs/modules/renderer/widgets/embedded-card.js.map +0 -1
  163. package/dist/npm/cjs/modules/renderer/widgets/exit-intent-popup.js +0 -151
  164. package/dist/npm/cjs/modules/renderer/widgets/exit-intent-popup.js.map +0 -1
  165. package/dist/npm/cjs/modules/renderer/widgets/floating-button.js +0 -70
  166. package/dist/npm/cjs/modules/renderer/widgets/floating-button.js.map +0 -1
  167. package/dist/npm/cjs/modules/renderer/widgets/helpers.js +0 -87
  168. package/dist/npm/cjs/modules/renderer/widgets/helpers.js.map +0 -1
  169. package/dist/npm/cjs/modules/renderer/widgets/index.js +0 -39
  170. package/dist/npm/cjs/modules/renderer/widgets/index.js.map +0 -1
  171. package/dist/npm/cjs/modules/renderer/widgets/inline-banner.js +0 -124
  172. package/dist/npm/cjs/modules/renderer/widgets/inline-banner.js.map +0 -1
  173. package/dist/npm/cjs/modules/renderer/widgets/newsletter.js +0 -280
  174. package/dist/npm/cjs/modules/renderer/widgets/newsletter.js.map +0 -1
  175. package/dist/npm/cjs/modules/renderer/widgets/product-view-count.js +0 -197
  176. package/dist/npm/cjs/modules/renderer/widgets/product-view-count.js.map +0 -1
  177. package/dist/npm/cjs/modules/renderer/widgets/slide-in.js +0 -105
  178. package/dist/npm/cjs/modules/renderer/widgets/slide-in.js.map +0 -1
  179. package/dist/npm/cjs/modules/renderer/widgets/sticky-footer.js +0 -47
  180. package/dist/npm/cjs/modules/renderer/widgets/sticky-footer.js.map +0 -1
  181. package/dist/npm/cjs/modules/search/cart/index.js +0 -42
  182. package/dist/npm/cjs/modules/search/cart/index.js.map +0 -1
  183. package/dist/npm/cjs/modules/search/components/index.js +0 -13
  184. package/dist/npm/cjs/modules/search/components/index.js.map +0 -1
  185. package/dist/npm/cjs/modules/search/components/search-box.js +0 -28
  186. package/dist/npm/cjs/modules/search/components/search-box.js.map +0 -1
  187. package/dist/npm/cjs/modules/search/components/search-item.js +0 -197
  188. package/dist/npm/cjs/modules/search/components/search-item.js.map +0 -1
  189. package/dist/npm/cjs/modules/search/components/suggestions.js +0 -132
  190. package/dist/npm/cjs/modules/search/components/suggestions.js.map +0 -1
  191. package/dist/npm/cjs/modules/search/index.js +0 -646
  192. package/dist/npm/cjs/modules/search/index.js.map +0 -1
  193. package/dist/npm/cjs/modules/search/renderers/position-renderers.js +0 -229
  194. package/dist/npm/cjs/modules/search/renderers/position-renderers.js.map +0 -1
  195. package/dist/npm/cjs/modules/search/renderers/results-renderer.js +0 -180
  196. package/dist/npm/cjs/modules/search/renderers/results-renderer.js.map +0 -1
  197. package/dist/npm/cjs/modules/search/services/api-service.js +0 -121
  198. package/dist/npm/cjs/modules/search/services/api-service.js.map +0 -1
  199. package/dist/npm/cjs/modules/search/services/tracking-service.js +0 -263
  200. package/dist/npm/cjs/modules/search/services/tracking-service.js.map +0 -1
  201. package/dist/npm/cjs/modules/search/styles.js +0 -864
  202. package/dist/npm/cjs/modules/search/styles.js.map +0 -1
  203. package/dist/npm/cjs/modules/search/utils/helpers.js +0 -100
  204. package/dist/npm/cjs/modules/search/utils/helpers.js.map +0 -1
  205. package/dist/npm/cjs/modules/search/utils/icons.js +0 -41
  206. package/dist/npm/cjs/modules/search/utils/icons.js.map +0 -1
  207. package/dist/npm/cjs/modules/search/utils/index.js +0 -22
  208. package/dist/npm/cjs/modules/search/utils/index.js.map +0 -1
  209. package/dist/npm/cjs/modules/search/utils/storage.js +0 -58
  210. package/dist/npm/cjs/modules/search/utils/storage.js.map +0 -1
  211. package/dist/npm/cjs/selwise.js +0 -1160
  212. package/dist/npm/cjs/selwise.js.map +0 -1
  213. package/dist/npm/cjs/sentry-test.js +0 -118
  214. package/dist/npm/cjs/sentry-test.js.map +0 -1
  215. package/dist/npm/cjs/sentry.js +0 -451
  216. package/dist/npm/cjs/sentry.js.map +0 -1
  217. package/dist/npm/cjs/shared/cart/handlers.js +0 -259
  218. package/dist/npm/cjs/shared/cart/handlers.js.map +0 -1
  219. package/dist/npm/cjs/shared/cart/index.js +0 -23
  220. package/dist/npm/cjs/shared/cart/index.js.map +0 -1
  221. package/dist/npm/cjs/shared/cart/types.js +0 -7
  222. package/dist/npm/cjs/shared/cart/types.js.map +0 -1
  223. package/dist/npm/cjs/shared/product-card/index.js +0 -24
  224. package/dist/npm/cjs/shared/product-card/index.js.map +0 -1
  225. package/dist/npm/cjs/shared/product-card/renderer.js +0 -341
  226. package/dist/npm/cjs/shared/product-card/renderer.js.map +0 -1
  227. package/dist/npm/cjs/shared/product-card/styles.js +0 -195
  228. package/dist/npm/cjs/shared/product-card/styles.js.map +0 -1
  229. package/dist/npm/cjs/shared/product-card/types.js +0 -67
  230. package/dist/npm/cjs/shared/product-card/types.js.map +0 -1
  231. package/dist/npm/cjs/types/config.js +0 -6
  232. package/dist/npm/cjs/types/config.js.map +0 -1
  233. package/dist/npm/cjs/types/experiments.js +0 -17
  234. package/dist/npm/cjs/types/experiments.js.map +0 -1
  235. package/dist/npm/cjs/types/global-api.js +0 -3
  236. package/dist/npm/cjs/types/global-api.js.map +0 -1
  237. package/dist/npm/cjs/types/index.js +0 -27
  238. package/dist/npm/cjs/types/index.js.map +0 -1
  239. package/dist/npm/cjs/types/recommendation.js +0 -6
  240. package/dist/npm/cjs/types/recommendation.js.map +0 -1
  241. package/dist/npm/cjs/types/renderer.js +0 -6
  242. package/dist/npm/cjs/types/renderer.js.map +0 -1
  243. package/dist/npm/cjs/types/search.js +0 -6
  244. package/dist/npm/cjs/types/search.js.map +0 -1
  245. package/dist/npm/cjs/utils/api-url.js +0 -35
  246. package/dist/npm/cjs/utils/api-url.js.map +0 -1
  247. package/dist/npm/cjs/utils/debounce.js +0 -74
  248. package/dist/npm/cjs/utils/debounce.js.map +0 -1
  249. package/dist/npm/cjs/utils/event-id.js +0 -23
  250. package/dist/npm/cjs/utils/event-id.js.map +0 -1
  251. package/dist/npm/cjs/utils/index.js +0 -28
  252. package/dist/npm/cjs/utils/index.js.map +0 -1
  253. package/dist/npm/cjs/utils/logger.js +0 -74
  254. package/dist/npm/cjs/utils/logger.js.map +0 -1
  255. package/dist/npm/cjs/utils/sanitize.js +0 -159
  256. package/dist/npm/cjs/utils/sanitize.js.map +0 -1
  257. package/dist/npm/cjs/utils/storage.js +0 -285
  258. package/dist/npm/cjs/utils/storage.js.map +0 -1
  259. package/dist/npm/cjs/utils/tracking-metadata.js +0 -18
  260. package/dist/npm/cjs/utils/tracking-metadata.js.map +0 -1
  261. package/dist/npm/cjs/utils/url-matcher.js +0 -11
  262. package/dist/npm/cjs/utils/url-matcher.js.map +0 -1
  263. package/dist/npm/esm/constants.d.ts +0 -130
  264. package/dist/npm/esm/constants.js +0 -164
  265. package/dist/npm/esm/constants.js.map +0 -1
  266. package/dist/npm/esm/core/conflict-resolver.d.ts +0 -96
  267. package/dist/npm/esm/core/conflict-resolver.js +0 -198
  268. package/dist/npm/esm/core/conflict-resolver.js.map +0 -1
  269. package/dist/npm/esm/core/event-batcher.d.ts +0 -253
  270. package/dist/npm/esm/core/event-batcher.js +0 -973
  271. package/dist/npm/esm/core/event-batcher.js.map +0 -1
  272. package/dist/npm/esm/core/experiment-overrides.d.ts +0 -7
  273. package/dist/npm/esm/core/experiment-overrides.js +0 -172
  274. package/dist/npm/esm/core/experiment-overrides.js.map +0 -1
  275. package/dist/npm/esm/core/experiments.d.ts +0 -90
  276. package/dist/npm/esm/core/experiments.js +0 -313
  277. package/dist/npm/esm/core/experiments.js.map +0 -1
  278. package/dist/npm/esm/core/frequency-caps.d.ts +0 -124
  279. package/dist/npm/esm/core/frequency-caps.js +0 -292
  280. package/dist/npm/esm/core/frequency-caps.js.map +0 -1
  281. package/dist/npm/esm/core/index.d.ts +0 -10
  282. package/dist/npm/esm/core/index.js +0 -11
  283. package/dist/npm/esm/core/index.js.map +0 -1
  284. package/dist/npm/esm/core/indexeddb-queue.d.ts +0 -83
  285. package/dist/npm/esm/core/indexeddb-queue.js +0 -328
  286. package/dist/npm/esm/core/indexeddb-queue.js.map +0 -1
  287. package/dist/npm/esm/core/journey-tracker.d.ts +0 -102
  288. package/dist/npm/esm/core/journey-tracker.js +0 -237
  289. package/dist/npm/esm/core/journey-tracker.js.map +0 -1
  290. package/dist/npm/esm/core/page-targeting/index.d.ts +0 -8
  291. package/dist/npm/esm/core/page-targeting/index.js +0 -67
  292. package/dist/npm/esm/core/page-targeting/index.js.map +0 -1
  293. package/dist/npm/esm/core/script-executor.d.ts +0 -31
  294. package/dist/npm/esm/core/script-executor.js +0 -76
  295. package/dist/npm/esm/core/script-executor.js.map +0 -1
  296. package/dist/npm/esm/core/segments.d.ts +0 -39
  297. package/dist/npm/esm/core/segments.js +0 -168
  298. package/dist/npm/esm/core/segments.js.map +0 -1
  299. package/dist/npm/esm/core/tracker.d.ts +0 -182
  300. package/dist/npm/esm/core/tracker.js +0 -794
  301. package/dist/npm/esm/core/tracker.js.map +0 -1
  302. package/dist/npm/esm/datalayer/basket.d.ts +0 -104
  303. package/dist/npm/esm/datalayer/basket.js +0 -381
  304. package/dist/npm/esm/datalayer/basket.js.map +0 -1
  305. package/dist/npm/esm/datalayer/cart-association.d.ts +0 -65
  306. package/dist/npm/esm/datalayer/cart-association.js +0 -222
  307. package/dist/npm/esm/datalayer/cart-association.js.map +0 -1
  308. package/dist/npm/esm/datalayer/checkout.d.ts +0 -96
  309. package/dist/npm/esm/datalayer/checkout.js +0 -378
  310. package/dist/npm/esm/datalayer/checkout.js.map +0 -1
  311. package/dist/npm/esm/datalayer/constants.d.ts +0 -77
  312. package/dist/npm/esm/datalayer/constants.js +0 -160
  313. package/dist/npm/esm/datalayer/constants.js.map +0 -1
  314. package/dist/npm/esm/datalayer/index.d.ts +0 -212
  315. package/dist/npm/esm/datalayer/index.js +0 -991
  316. package/dist/npm/esm/datalayer/index.js.map +0 -1
  317. package/dist/npm/esm/datalayer/listener.d.ts +0 -108
  318. package/dist/npm/esm/datalayer/listener.js +0 -411
  319. package/dist/npm/esm/datalayer/listener.js.map +0 -1
  320. package/dist/npm/esm/datalayer/page.d.ts +0 -94
  321. package/dist/npm/esm/datalayer/page.js +0 -339
  322. package/dist/npm/esm/datalayer/page.js.map +0 -1
  323. package/dist/npm/esm/datalayer/product.d.ts +0 -133
  324. package/dist/npm/esm/datalayer/product.js +0 -513
  325. package/dist/npm/esm/datalayer/product.js.map +0 -1
  326. package/dist/npm/esm/datalayer/reverse-mappings.d.ts +0 -62
  327. package/dist/npm/esm/datalayer/reverse-mappings.js +0 -135
  328. package/dist/npm/esm/datalayer/reverse-mappings.js.map +0 -1
  329. package/dist/npm/esm/datalayer/search.d.ts +0 -108
  330. package/dist/npm/esm/datalayer/search.js +0 -359
  331. package/dist/npm/esm/datalayer/search.js.map +0 -1
  332. package/dist/npm/esm/datalayer/types.d.ts +0 -292
  333. package/dist/npm/esm/datalayer/types.js +0 -131
  334. package/dist/npm/esm/datalayer/types.js.map +0 -1
  335. package/dist/npm/esm/datalayer/user.d.ts +0 -104
  336. package/dist/npm/esm/datalayer/user.js +0 -368
  337. package/dist/npm/esm/datalayer/user.js.map +0 -1
  338. package/dist/npm/esm/debug/index.d.ts +0 -173
  339. package/dist/npm/esm/debug/index.js +0 -673
  340. package/dist/npm/esm/debug/index.js.map +0 -1
  341. package/dist/npm/esm/entries/cdn.d.ts +0 -1
  342. package/dist/npm/esm/entries/cdn.js +0 -35
  343. package/dist/npm/esm/entries/cdn.js.map +0 -1
  344. package/dist/npm/esm/index.js +0 -4
  345. package/dist/npm/esm/index.js.map +0 -1
  346. package/dist/npm/esm/modules/contract/recommendation-contract.d.ts +0 -5
  347. package/dist/npm/esm/modules/contract/recommendation-contract.js +0 -107
  348. package/dist/npm/esm/modules/contract/recommendation-contract.js.map +0 -1
  349. package/dist/npm/esm/modules/contract/search-contract.d.ts +0 -1
  350. package/dist/npm/esm/modules/contract/search-contract.js +0 -2
  351. package/dist/npm/esm/modules/contract/search-contract.js.map +0 -1
  352. package/dist/npm/esm/modules/contract/tracking-contract.d.ts +0 -1
  353. package/dist/npm/esm/modules/contract/tracking-contract.js +0 -2
  354. package/dist/npm/esm/modules/contract/tracking-contract.js.map +0 -1
  355. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/configs.d.ts +0 -8
  356. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/configs.js +0 -160
  357. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/configs.js.map +0 -1
  358. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/index.d.ts +0 -3
  359. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/index.js +0 -5
  360. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/index.js.map +0 -1
  361. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/types.d.ts +0 -56
  362. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/types.js +0 -2
  363. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/types.js.map +0 -1
  364. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/validators.d.ts +0 -3
  365. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/validators.js +0 -103
  366. package/dist/npm/esm/modules/contract/vendor/recommendation-contract/validators.js.map +0 -1
  367. package/dist/npm/esm/modules/contract/vendor/search-contract/configs.d.ts +0 -35
  368. package/dist/npm/esm/modules/contract/vendor/search-contract/configs.js +0 -396
  369. package/dist/npm/esm/modules/contract/vendor/search-contract/configs.js.map +0 -1
  370. package/dist/npm/esm/modules/contract/vendor/search-contract/index.d.ts +0 -3
  371. package/dist/npm/esm/modules/contract/vendor/search-contract/index.js +0 -5
  372. package/dist/npm/esm/modules/contract/vendor/search-contract/index.js.map +0 -1
  373. package/dist/npm/esm/modules/contract/vendor/search-contract/types.d.ts +0 -119
  374. package/dist/npm/esm/modules/contract/vendor/search-contract/types.js +0 -7
  375. package/dist/npm/esm/modules/contract/vendor/search-contract/types.js.map +0 -1
  376. package/dist/npm/esm/modules/contract/vendor/search-contract/validators.d.ts +0 -22
  377. package/dist/npm/esm/modules/contract/vendor/search-contract/validators.js +0 -118
  378. package/dist/npm/esm/modules/contract/vendor/search-contract/validators.js.map +0 -1
  379. package/dist/npm/esm/modules/contract/vendor/tracking-contract/configs.d.ts +0 -7
  380. package/dist/npm/esm/modules/contract/vendor/tracking-contract/configs.js +0 -130
  381. package/dist/npm/esm/modules/contract/vendor/tracking-contract/configs.js.map +0 -1
  382. package/dist/npm/esm/modules/contract/vendor/tracking-contract/index.d.ts +0 -3
  383. package/dist/npm/esm/modules/contract/vendor/tracking-contract/index.js +0 -5
  384. package/dist/npm/esm/modules/contract/vendor/tracking-contract/index.js.map +0 -1
  385. package/dist/npm/esm/modules/contract/vendor/tracking-contract/types.d.ts +0 -37
  386. package/dist/npm/esm/modules/contract/vendor/tracking-contract/types.js +0 -2
  387. package/dist/npm/esm/modules/contract/vendor/tracking-contract/types.js.map +0 -1
  388. package/dist/npm/esm/modules/contract/vendor/tracking-contract/validators.d.ts +0 -6
  389. package/dist/npm/esm/modules/contract/vendor/tracking-contract/validators.js +0 -147
  390. package/dist/npm/esm/modules/contract/vendor/tracking-contract/validators.js.map +0 -1
  391. package/dist/npm/esm/modules/contract/vendor/widget-contract/configs.d.ts +0 -22
  392. package/dist/npm/esm/modules/contract/vendor/widget-contract/configs.js +0 -1472
  393. package/dist/npm/esm/modules/contract/vendor/widget-contract/configs.js.map +0 -1
  394. package/dist/npm/esm/modules/contract/vendor/widget-contract/index.d.ts +0 -4
  395. package/dist/npm/esm/modules/contract/vendor/widget-contract/index.js +0 -6
  396. package/dist/npm/esm/modules/contract/vendor/widget-contract/index.js.map +0 -1
  397. package/dist/npm/esm/modules/contract/vendor/widget-contract/layout.d.ts +0 -14
  398. package/dist/npm/esm/modules/contract/vendor/widget-contract/layout.js +0 -18
  399. package/dist/npm/esm/modules/contract/vendor/widget-contract/layout.js.map +0 -1
  400. package/dist/npm/esm/modules/contract/vendor/widget-contract/types.d.ts +0 -128
  401. package/dist/npm/esm/modules/contract/vendor/widget-contract/types.js +0 -7
  402. package/dist/npm/esm/modules/contract/vendor/widget-contract/types.js.map +0 -1
  403. package/dist/npm/esm/modules/contract/vendor/widget-contract/validators.d.ts +0 -11
  404. package/dist/npm/esm/modules/contract/vendor/widget-contract/validators.js +0 -132
  405. package/dist/npm/esm/modules/contract/vendor/widget-contract/validators.js.map +0 -1
  406. package/dist/npm/esm/modules/contract/widget-contract.d.ts +0 -1
  407. package/dist/npm/esm/modules/contract/widget-contract.js +0 -2
  408. package/dist/npm/esm/modules/contract/widget-contract.js.map +0 -1
  409. package/dist/npm/esm/modules/products/tracking.d.ts +0 -122
  410. package/dist/npm/esm/modules/products/tracking.js +0 -203
  411. package/dist/npm/esm/modules/products/tracking.js.map +0 -1
  412. package/dist/npm/esm/modules/recommendation/cart-handlers.d.ts +0 -10
  413. package/dist/npm/esm/modules/recommendation/cart-handlers.js +0 -49
  414. package/dist/npm/esm/modules/recommendation/cart-handlers.js.map +0 -1
  415. package/dist/npm/esm/modules/recommendation/components/product-card-renderer.d.ts +0 -37
  416. package/dist/npm/esm/modules/recommendation/components/product-card-renderer.js +0 -281
  417. package/dist/npm/esm/modules/recommendation/components/product-card-renderer.js.map +0 -1
  418. package/dist/npm/esm/modules/recommendation/index.d.ts +0 -11
  419. package/dist/npm/esm/modules/recommendation/index.js +0 -674
  420. package/dist/npm/esm/modules/recommendation/index.js.map +0 -1
  421. package/dist/npm/esm/modules/recommendation/renderers/grid.d.ts +0 -5
  422. package/dist/npm/esm/modules/recommendation/renderers/grid.js +0 -18
  423. package/dist/npm/esm/modules/recommendation/renderers/grid.js.map +0 -1
  424. package/dist/npm/esm/modules/recommendation/renderers/list.d.ts +0 -5
  425. package/dist/npm/esm/modules/recommendation/renderers/list.js +0 -19
  426. package/dist/npm/esm/modules/recommendation/renderers/list.js.map +0 -1
  427. package/dist/npm/esm/modules/recommendation/renderers/masonry.d.ts +0 -5
  428. package/dist/npm/esm/modules/recommendation/renderers/masonry.js +0 -19
  429. package/dist/npm/esm/modules/recommendation/renderers/masonry.js.map +0 -1
  430. package/dist/npm/esm/modules/recommendation/renderers/slider-renderer.d.ts +0 -10
  431. package/dist/npm/esm/modules/recommendation/renderers/slider-renderer.js +0 -140
  432. package/dist/npm/esm/modules/recommendation/renderers/slider-renderer.js.map +0 -1
  433. package/dist/npm/esm/modules/recommendation/slider-controls.d.ts +0 -17
  434. package/dist/npm/esm/modules/recommendation/slider-controls.js +0 -187
  435. package/dist/npm/esm/modules/recommendation/slider-controls.js.map +0 -1
  436. package/dist/npm/esm/modules/recommendation/tracking.d.ts +0 -28
  437. package/dist/npm/esm/modules/recommendation/tracking.js +0 -237
  438. package/dist/npm/esm/modules/recommendation/tracking.js.map +0 -1
  439. package/dist/npm/esm/modules/recommendation/utils/dom.d.ts +0 -10
  440. package/dist/npm/esm/modules/recommendation/utils/dom.js +0 -63
  441. package/dist/npm/esm/modules/recommendation/utils/dom.js.map +0 -1
  442. package/dist/npm/esm/modules/recommendation/utils/format.d.ts +0 -4
  443. package/dist/npm/esm/modules/recommendation/utils/format.js +0 -10
  444. package/dist/npm/esm/modules/recommendation/utils/format.js.map +0 -1
  445. package/dist/npm/esm/modules/recommendation/utils/index.d.ts +0 -5
  446. package/dist/npm/esm/modules/recommendation/utils/index.js +0 -6
  447. package/dist/npm/esm/modules/recommendation/utils/index.js.map +0 -1
  448. package/dist/npm/esm/modules/renderer/helpers.d.ts +0 -5
  449. package/dist/npm/esm/modules/renderer/helpers.js +0 -6
  450. package/dist/npm/esm/modules/renderer/helpers.js.map +0 -1
  451. package/dist/npm/esm/modules/renderer/index.d.ts +0 -8
  452. package/dist/npm/esm/modules/renderer/index.js +0 -48
  453. package/dist/npm/esm/modules/renderer/index.js.map +0 -1
  454. package/dist/npm/esm/modules/renderer/style-resolver.d.ts +0 -1
  455. package/dist/npm/esm/modules/renderer/style-resolver.js +0 -8
  456. package/dist/npm/esm/modules/renderer/style-resolver.js.map +0 -1
  457. package/dist/npm/esm/modules/renderer/styles/index.d.ts +0 -12
  458. package/dist/npm/esm/modules/renderer/styles/index.js +0 -250
  459. package/dist/npm/esm/modules/renderer/styles/index.js.map +0 -1
  460. package/dist/npm/esm/modules/renderer/styles.d.ts +0 -1
  461. package/dist/npm/esm/modules/renderer/styles.js +0 -2
  462. package/dist/npm/esm/modules/renderer/styles.js.map +0 -1
  463. package/dist/npm/esm/modules/renderer/utils/helpers.d.ts +0 -58
  464. package/dist/npm/esm/modules/renderer/utils/helpers.js +0 -225
  465. package/dist/npm/esm/modules/renderer/utils/helpers.js.map +0 -1
  466. package/dist/npm/esm/modules/renderer/utils/image-renderer.d.ts +0 -17
  467. package/dist/npm/esm/modules/renderer/utils/image-renderer.js +0 -60
  468. package/dist/npm/esm/modules/renderer/utils/image-renderer.js.map +0 -1
  469. package/dist/npm/esm/modules/renderer/utils/placement.d.ts +0 -6
  470. package/dist/npm/esm/modules/renderer/utils/placement.js +0 -31
  471. package/dist/npm/esm/modules/renderer/utils/placement.js.map +0 -1
  472. package/dist/npm/esm/modules/renderer/utils.d.ts +0 -11
  473. package/dist/npm/esm/modules/renderer/utils.js +0 -44
  474. package/dist/npm/esm/modules/renderer/utils.js.map +0 -1
  475. package/dist/npm/esm/modules/renderer/widgets/announcement-bar.d.ts +0 -5
  476. package/dist/npm/esm/modules/renderer/widgets/announcement-bar.js +0 -81
  477. package/dist/npm/esm/modules/renderer/widgets/announcement-bar.js.map +0 -1
  478. package/dist/npm/esm/modules/renderer/widgets/cart-count.d.ts +0 -6
  479. package/dist/npm/esm/modules/renderer/widgets/cart-count.js +0 -208
  480. package/dist/npm/esm/modules/renderer/widgets/cart-count.js.map +0 -1
  481. package/dist/npm/esm/modules/renderer/widgets/cookie-consent.d.ts +0 -18
  482. package/dist/npm/esm/modules/renderer/widgets/cookie-consent.js +0 -454
  483. package/dist/npm/esm/modules/renderer/widgets/cookie-consent.js.map +0 -1
  484. package/dist/npm/esm/modules/renderer/widgets/countdown-timer.d.ts +0 -5
  485. package/dist/npm/esm/modules/renderer/widgets/countdown-timer.js +0 -129
  486. package/dist/npm/esm/modules/renderer/widgets/countdown-timer.js.map +0 -1
  487. package/dist/npm/esm/modules/renderer/widgets/custom.d.ts +0 -5
  488. package/dist/npm/esm/modules/renderer/widgets/custom.js +0 -55
  489. package/dist/npm/esm/modules/renderer/widgets/custom.js.map +0 -1
  490. package/dist/npm/esm/modules/renderer/widgets/embedded-card.d.ts +0 -5
  491. package/dist/npm/esm/modules/renderer/widgets/embedded-card.js +0 -94
  492. package/dist/npm/esm/modules/renderer/widgets/embedded-card.js.map +0 -1
  493. package/dist/npm/esm/modules/renderer/widgets/exit-intent-popup.d.ts +0 -6
  494. package/dist/npm/esm/modules/renderer/widgets/exit-intent-popup.js +0 -147
  495. package/dist/npm/esm/modules/renderer/widgets/exit-intent-popup.js.map +0 -1
  496. package/dist/npm/esm/modules/renderer/widgets/floating-button.d.ts +0 -5
  497. package/dist/npm/esm/modules/renderer/widgets/floating-button.js +0 -67
  498. package/dist/npm/esm/modules/renderer/widgets/floating-button.js.map +0 -1
  499. package/dist/npm/esm/modules/renderer/widgets/helpers.d.ts +0 -29
  500. package/dist/npm/esm/modules/renderer/widgets/helpers.js +0 -82
  501. package/dist/npm/esm/modules/renderer/widgets/helpers.js.map +0 -1
  502. package/dist/npm/esm/modules/renderer/widgets/index.d.ts +0 -17
  503. package/dist/npm/esm/modules/renderer/widgets/index.js +0 -19
  504. package/dist/npm/esm/modules/renderer/widgets/index.js.map +0 -1
  505. package/dist/npm/esm/modules/renderer/widgets/inline-banner.d.ts +0 -5
  506. package/dist/npm/esm/modules/renderer/widgets/inline-banner.js +0 -121
  507. package/dist/npm/esm/modules/renderer/widgets/inline-banner.js.map +0 -1
  508. package/dist/npm/esm/modules/renderer/widgets/newsletter.d.ts +0 -6
  509. package/dist/npm/esm/modules/renderer/widgets/newsletter.js +0 -277
  510. package/dist/npm/esm/modules/renderer/widgets/newsletter.js.map +0 -1
  511. package/dist/npm/esm/modules/renderer/widgets/product-view-count.d.ts +0 -6
  512. package/dist/npm/esm/modules/renderer/widgets/product-view-count.js +0 -194
  513. package/dist/npm/esm/modules/renderer/widgets/product-view-count.js.map +0 -1
  514. package/dist/npm/esm/modules/renderer/widgets/slide-in.d.ts +0 -5
  515. package/dist/npm/esm/modules/renderer/widgets/slide-in.js +0 -102
  516. package/dist/npm/esm/modules/renderer/widgets/slide-in.js.map +0 -1
  517. package/dist/npm/esm/modules/renderer/widgets/sticky-footer.d.ts +0 -5
  518. package/dist/npm/esm/modules/renderer/widgets/sticky-footer.js +0 -44
  519. package/dist/npm/esm/modules/renderer/widgets/sticky-footer.js.map +0 -1
  520. package/dist/npm/esm/modules/search/cart/index.d.ts +0 -26
  521. package/dist/npm/esm/modules/search/cart/index.js +0 -39
  522. package/dist/npm/esm/modules/search/cart/index.js.map +0 -1
  523. package/dist/npm/esm/modules/search/components/index.d.ts +0 -6
  524. package/dist/npm/esm/modules/search/components/index.js +0 -7
  525. package/dist/npm/esm/modules/search/components/index.js.map +0 -1
  526. package/dist/npm/esm/modules/search/components/search-box.d.ts +0 -11
  527. package/dist/npm/esm/modules/search/components/search-box.js +0 -25
  528. package/dist/npm/esm/modules/search/components/search-box.js.map +0 -1
  529. package/dist/npm/esm/modules/search/components/search-item.d.ts +0 -20
  530. package/dist/npm/esm/modules/search/components/search-item.js +0 -193
  531. package/dist/npm/esm/modules/search/components/search-item.js.map +0 -1
  532. package/dist/npm/esm/modules/search/components/suggestions.d.ts +0 -10
  533. package/dist/npm/esm/modules/search/components/suggestions.js +0 -129
  534. package/dist/npm/esm/modules/search/components/suggestions.js.map +0 -1
  535. package/dist/npm/esm/modules/search/index.d.ts +0 -67
  536. package/dist/npm/esm/modules/search/index.js +0 -642
  537. package/dist/npm/esm/modules/search/index.js.map +0 -1
  538. package/dist/npm/esm/modules/search/renderers/position-renderers.d.ts +0 -23
  539. package/dist/npm/esm/modules/search/renderers/position-renderers.js +0 -221
  540. package/dist/npm/esm/modules/search/renderers/position-renderers.js.map +0 -1
  541. package/dist/npm/esm/modules/search/renderers/results-renderer.d.ts +0 -20
  542. package/dist/npm/esm/modules/search/renderers/results-renderer.js +0 -176
  543. package/dist/npm/esm/modules/search/renderers/results-renderer.js.map +0 -1
  544. package/dist/npm/esm/modules/search/services/api-service.d.ts +0 -18
  545. package/dist/npm/esm/modules/search/services/api-service.js +0 -115
  546. package/dist/npm/esm/modules/search/services/api-service.js.map +0 -1
  547. package/dist/npm/esm/modules/search/services/tracking-service.d.ts +0 -16
  548. package/dist/npm/esm/modules/search/services/tracking-service.js +0 -250
  549. package/dist/npm/esm/modules/search/services/tracking-service.js.map +0 -1
  550. package/dist/npm/esm/modules/search/styles.d.ts +0 -13
  551. package/dist/npm/esm/modules/search/styles.js +0 -860
  552. package/dist/npm/esm/modules/search/styles.js.map +0 -1
  553. package/dist/npm/esm/modules/search/utils/helpers.d.ts +0 -24
  554. package/dist/npm/esm/modules/search/utils/helpers.js +0 -93
  555. package/dist/npm/esm/modules/search/utils/helpers.js.map +0 -1
  556. package/dist/npm/esm/modules/search/utils/icons.d.ts +0 -16
  557. package/dist/npm/esm/modules/search/utils/icons.js +0 -36
  558. package/dist/npm/esm/modules/search/utils/icons.js.map +0 -1
  559. package/dist/npm/esm/modules/search/utils/index.d.ts +0 -6
  560. package/dist/npm/esm/modules/search/utils/index.js +0 -7
  561. package/dist/npm/esm/modules/search/utils/index.js.map +0 -1
  562. package/dist/npm/esm/modules/search/utils/storage.d.ts +0 -7
  563. package/dist/npm/esm/modules/search/utils/storage.js +0 -52
  564. package/dist/npm/esm/modules/search/utils/storage.js.map +0 -1
  565. package/dist/npm/esm/package.json +0 -1
  566. package/dist/npm/esm/selwise.d.ts +0 -209
  567. package/dist/npm/esm/selwise.js +0 -1123
  568. package/dist/npm/esm/selwise.js.map +0 -1
  569. package/dist/npm/esm/sentry-test.d.ts +0 -45
  570. package/dist/npm/esm/sentry-test.js +0 -109
  571. package/dist/npm/esm/sentry-test.js.map +0 -1
  572. package/dist/npm/esm/sentry.d.ts +0 -86
  573. package/dist/npm/esm/sentry.js +0 -441
  574. package/dist/npm/esm/sentry.js.map +0 -1
  575. package/dist/npm/esm/shared/cart/handlers.d.ts +0 -46
  576. package/dist/npm/esm/shared/cart/handlers.js +0 -249
  577. package/dist/npm/esm/shared/cart/handlers.js.map +0 -1
  578. package/dist/npm/esm/shared/cart/index.d.ts +0 -6
  579. package/dist/npm/esm/shared/cart/index.js +0 -7
  580. package/dist/npm/esm/shared/cart/index.js.map +0 -1
  581. package/dist/npm/esm/shared/cart/types.d.ts +0 -30
  582. package/dist/npm/esm/shared/cart/types.js +0 -6
  583. package/dist/npm/esm/shared/cart/types.js.map +0 -1
  584. package/dist/npm/esm/shared/product-card/index.d.ts +0 -7
  585. package/dist/npm/esm/shared/product-card/index.js +0 -8
  586. package/dist/npm/esm/shared/product-card/index.js.map +0 -1
  587. package/dist/npm/esm/shared/product-card/renderer.d.ts +0 -35
  588. package/dist/npm/esm/shared/product-card/renderer.js +0 -334
  589. package/dist/npm/esm/shared/product-card/renderer.js.map +0 -1
  590. package/dist/npm/esm/shared/product-card/styles.d.ts +0 -17
  591. package/dist/npm/esm/shared/product-card/styles.js +0 -190
  592. package/dist/npm/esm/shared/product-card/styles.js.map +0 -1
  593. package/dist/npm/esm/shared/product-card/types.d.ts +0 -84
  594. package/dist/npm/esm/shared/product-card/types.js +0 -63
  595. package/dist/npm/esm/shared/product-card/types.js.map +0 -1
  596. package/dist/npm/esm/types/config.d.ts +0 -26
  597. package/dist/npm/esm/types/config.js +0 -5
  598. package/dist/npm/esm/types/config.js.map +0 -1
  599. package/dist/npm/esm/types/experiments.d.ts +0 -47
  600. package/dist/npm/esm/types/experiments.js +0 -14
  601. package/dist/npm/esm/types/experiments.js.map +0 -1
  602. package/dist/npm/esm/types/global-api.d.ts +0 -40
  603. package/dist/npm/esm/types/global-api.js +0 -2
  604. package/dist/npm/esm/types/global-api.js.map +0 -1
  605. package/dist/npm/esm/types/index.d.ts +0 -9
  606. package/dist/npm/esm/types/index.js +0 -11
  607. package/dist/npm/esm/types/index.js.map +0 -1
  608. package/dist/npm/esm/types/recommendation.d.ts +0 -186
  609. package/dist/npm/esm/types/recommendation.js +0 -5
  610. package/dist/npm/esm/types/recommendation.js.map +0 -1
  611. package/dist/npm/esm/types/renderer.d.ts +0 -99
  612. package/dist/npm/esm/types/renderer.js +0 -5
  613. package/dist/npm/esm/types/renderer.js.map +0 -1
  614. package/dist/npm/esm/types/search.d.ts +0 -186
  615. package/dist/npm/esm/types/search.js +0 -5
  616. package/dist/npm/esm/types/search.js.map +0 -1
  617. package/dist/npm/esm/utils/api-url.d.ts +0 -1
  618. package/dist/npm/esm/utils/api-url.js +0 -32
  619. package/dist/npm/esm/utils/api-url.js.map +0 -1
  620. package/dist/npm/esm/utils/debounce.d.ts +0 -27
  621. package/dist/npm/esm/utils/debounce.js +0 -70
  622. package/dist/npm/esm/utils/debounce.js.map +0 -1
  623. package/dist/npm/esm/utils/event-id.d.ts +0 -5
  624. package/dist/npm/esm/utils/event-id.js +0 -20
  625. package/dist/npm/esm/utils/event-id.js.map +0 -1
  626. package/dist/npm/esm/utils/index.d.ts +0 -11
  627. package/dist/npm/esm/utils/index.js +0 -12
  628. package/dist/npm/esm/utils/index.js.map +0 -1
  629. package/dist/npm/esm/utils/logger.d.ts +0 -31
  630. package/dist/npm/esm/utils/logger.js +0 -66
  631. package/dist/npm/esm/utils/logger.js.map +0 -1
  632. package/dist/npm/esm/utils/sanitize.d.ts +0 -38
  633. package/dist/npm/esm/utils/sanitize.js +0 -148
  634. package/dist/npm/esm/utils/sanitize.js.map +0 -1
  635. package/dist/npm/esm/utils/storage.d.ts +0 -72
  636. package/dist/npm/esm/utils/storage.js +0 -271
  637. package/dist/npm/esm/utils/storage.js.map +0 -1
  638. package/dist/npm/esm/utils/tracking-metadata.d.ts +0 -1
  639. package/dist/npm/esm/utils/tracking-metadata.js +0 -15
  640. package/dist/npm/esm/utils/tracking-metadata.js.map +0 -1
  641. package/dist/npm/esm/utils/url-matcher.d.ts +0 -4
  642. package/dist/npm/esm/utils/url-matcher.js +0 -8
  643. package/dist/npm/esm/utils/url-matcher.js.map +0 -1
@@ -1,94 +0,0 @@
1
- /**
2
- * Page Tracking Module
3
- * Handles page view tracking and automatic page type detection
4
- */
5
- import type { SelwiseDataLayer, DataLayerConfig, PageType } from './types';
6
- interface PageTrackerConfig {
7
- siteKey: string;
8
- tracker: {
9
- track(name: string, args?: {
10
- entityType?: string;
11
- entityId?: string;
12
- metadata?: Record<string, any>;
13
- }): void;
14
- getSessionId(): string;
15
- getVisitorId(): string;
16
- };
17
- config: DataLayerConfig;
18
- scheduleProcess: () => void;
19
- }
20
- export declare class PageTracker {
21
- private config;
22
- private lastTrackedUrl;
23
- private titleObserver;
24
- constructor(config: PageTrackerConfig);
25
- /**
26
- * Setup observer for title changes (SPA navigation indicator)
27
- */
28
- private setupTitleObserver;
29
- /**
30
- * Maybe track page view if URL has changed
31
- */
32
- private maybeTrackPageView;
33
- /**
34
- * Detect page type from URL patterns
35
- */
36
- detectPageType(): PageType;
37
- /**
38
- * Detect page type from DOM elements
39
- */
40
- private detectPageTypeFromDom;
41
- /**
42
- * Extract page metadata
43
- */
44
- private getPageMetadata;
45
- /**
46
- * Extract product information from DOM (product pages)
47
- */
48
- private extractProductInfoFromDom;
49
- /**
50
- * Extract category information from DOM (category pages)
51
- */
52
- private extractCategoryInfoFromDom;
53
- /**
54
- * Get meta tag content by name or property
55
- */
56
- private getMetaContent;
57
- /**
58
- * Track a page view event
59
- */
60
- trackPageView(customData?: SelwiseDataLayer): void;
61
- /**
62
- * Store last page type in sessionStorage
63
- */
64
- private storeLastPageType;
65
- /**
66
- * Get last page type from sessionStorage
67
- */
68
- getLastPageType(): PageType | null;
69
- /**
70
- * Process a data layer event for page tracking
71
- */
72
- processDataLayer(data: SelwiseDataLayer): void;
73
- /**
74
- * Track a virtual page view (for SPAs without URL changes)
75
- */
76
- private trackVirtualPageView;
77
- /**
78
- * Increment page view count for session
79
- */
80
- incrementPageViewCount(): number;
81
- /**
82
- * Get current page view count
83
- */
84
- getPageViewCount(): number;
85
- /**
86
- * Log in debug mode
87
- */
88
- private log;
89
- /**
90
- * Cleanup
91
- */
92
- destroy(): void;
93
- }
94
- export {};
@@ -1,339 +0,0 @@
1
- /**
2
- * Page Tracking Module
3
- * Handles page view tracking and automatic page type detection
4
- */
5
- import { PAGE_TYPES, DEFAULT_PAGE_PATTERNS, DATA_SOURCE, STORAGE_KEYS } from './constants.js';
6
- import { testModeLog } from '../utils/logger.js';
7
- export class PageTracker {
8
- constructor(config) {
9
- this.lastTrackedUrl = '';
10
- this.titleObserver = null;
11
- this.config = config;
12
- this.setupTitleObserver();
13
- }
14
- /**
15
- * Setup observer for title changes (SPA navigation indicator)
16
- */
17
- setupTitleObserver() {
18
- const titleElement = document.querySelector('title');
19
- if (!titleElement)
20
- return;
21
- this.titleObserver = new MutationObserver(() => {
22
- // Title changed, likely a page navigation
23
- this.maybeTrackPageView();
24
- });
25
- this.titleObserver.observe(titleElement, { subtree: true, characterData: true, childList: true });
26
- }
27
- /**
28
- * Maybe track page view if URL has changed
29
- */
30
- maybeTrackPageView() {
31
- const currentUrl = window.location.href;
32
- if (currentUrl !== this.lastTrackedUrl) {
33
- this.trackPageView();
34
- }
35
- }
36
- /**
37
- * Detect page type from URL patterns
38
- */
39
- detectPageType() {
40
- const path = window.location.pathname;
41
- const searchParams = window.location.search;
42
- const fullUrl = path + searchParams;
43
- // Check against configured patterns (server config overrides defaults)
44
- const patterns = this.config.config.pageTypePatterns || DEFAULT_PAGE_PATTERNS;
45
- // Check each pattern in priority order
46
- for (const [type, pattern] of Object.entries(patterns)) {
47
- // Convert string patterns to RegExp if needed
48
- const regex = typeof pattern === 'string' ? new RegExp(pattern) : pattern;
49
- if (regex.test(fullUrl)) {
50
- return type;
51
- }
52
- }
53
- // Check DOM-based detection as fallback
54
- const domType = this.detectPageTypeFromDom();
55
- if (domType) {
56
- return domType;
57
- }
58
- return PAGE_TYPES.OTHER;
59
- }
60
- /**
61
- * Detect page type from DOM elements
62
- */
63
- detectPageTypeFromDom() {
64
- // Check body classes
65
- const bodyClass = document.body.className.toLowerCase();
66
- if (bodyClass.includes('product') || bodyClass.includes('item')) {
67
- return PAGE_TYPES.PRODUCT;
68
- }
69
- if (bodyClass.includes('category') || bodyClass.includes('collection') || bodyClass.includes('catalog')) {
70
- return PAGE_TYPES.CATEGORY;
71
- }
72
- if (bodyClass.includes('checkout')) {
73
- return PAGE_TYPES.CHECKOUT;
74
- }
75
- if (bodyClass.includes('cart') || bodyClass.includes('basket')) {
76
- return PAGE_TYPES.CART;
77
- }
78
- if (bodyClass.includes('account') || bodyClass.includes('profile') || bodyClass.includes('my-account')) {
79
- return PAGE_TYPES.ACCOUNT;
80
- }
81
- // Check for structured data (Schema.org)
82
- const productSchema = document.querySelector('[itemtype*="Product"]');
83
- if (productSchema) {
84
- return PAGE_TYPES.PRODUCT;
85
- }
86
- return null;
87
- }
88
- /**
89
- * Extract page metadata
90
- */
91
- getPageMetadata(pageType) {
92
- const metadata = {
93
- dataSource: DATA_SOURCE,
94
- pageUrl: window.location.href,
95
- referrer: document.referrer,
96
- timestamp: Date.now(),
97
- };
98
- // Page type info
99
- metadata.pageType = pageType;
100
- metadata.pageTitle = document.title;
101
- metadata.pagePath = window.location.pathname;
102
- metadata.pageSearch = window.location.search;
103
- metadata.pageHash = window.location.hash;
104
- // Language
105
- metadata.language = document.documentElement.lang || navigator.language || 'en';
106
- // Extract product info if on product page
107
- if (pageType === PAGE_TYPES.PRODUCT) {
108
- const productInfo = this.extractProductInfoFromDom();
109
- if (productInfo) {
110
- metadata.productInfo = productInfo;
111
- }
112
- }
113
- // Extract category info if on category page
114
- if (pageType === PAGE_TYPES.CATEGORY) {
115
- const categoryInfo = this.extractCategoryInfoFromDom();
116
- if (categoryInfo) {
117
- metadata.categoryInfo = categoryInfo;
118
- }
119
- }
120
- return metadata;
121
- }
122
- /**
123
- * Extract product information from DOM (product pages)
124
- */
125
- extractProductInfoFromDom() {
126
- // Try Schema.org structured data
127
- const schemaScript = document.querySelector('script[type="application/ld+json"]');
128
- if (schemaScript) {
129
- try {
130
- const schema = JSON.parse(schemaScript.textContent || '{}');
131
- if (schema['@type'] === 'Product') {
132
- return {
133
- productItemCode: schema.productID || schema.sku || undefined,
134
- name: schema.name,
135
- price: schema.offers?.price || undefined,
136
- currency: schema.offers?.priceCurrency || undefined,
137
- availability: schema.offers?.availability || undefined,
138
- };
139
- }
140
- }
141
- catch {
142
- // Invalid JSON, continue
143
- }
144
- }
145
- // Try meta tags (Open Graph, Product meta)
146
- const productItemCode = this.getMetaContent('product:product_id') ||
147
- this.getMetaContent('product:id') ||
148
- this.getMetaContent('product:upc');
149
- const name = this.getMetaContent('og:title') ||
150
- this.getMetaContent('product:name') ||
151
- this.getMetaContent('twitter:title');
152
- const price = this.getMetaContent('product:price:amount') ||
153
- this.getMetaContent('product:price') ||
154
- this.getMetaContent('og:price:amount');
155
- const currency = this.getMetaContent('product:price:currency') ||
156
- this.getMetaContent('og:price:currency');
157
- if (name || productItemCode) {
158
- return { productItemCode, name, price, currency };
159
- }
160
- return null;
161
- }
162
- /**
163
- * Extract category information from DOM (category pages)
164
- */
165
- extractCategoryInfoFromDom() {
166
- // Try meta tags
167
- const category = this.getMetaContent('category') ||
168
- this.getMetaContent('product:category') ||
169
- this.getMetaContent('og:type');
170
- // Try breadcrumb
171
- const breadcrumb = document.querySelector('[itemtype*="BreadcrumbList"]');
172
- if (breadcrumb) {
173
- const items = breadcrumb.querySelectorAll('[itemprop="itemListElement"]');
174
- const categories = [];
175
- items.forEach((item) => {
176
- const name = item.querySelector('[itemprop="name"]')?.textContent;
177
- if (name) {
178
- categories.push(name);
179
- }
180
- });
181
- if (categories.length > 0) {
182
- return { category, categories };
183
- }
184
- }
185
- if (category) {
186
- return { category, categories: [category] };
187
- }
188
- return null;
189
- }
190
- /**
191
- * Get meta tag content by name or property
192
- */
193
- getMetaContent(attr) {
194
- // Try by name
195
- let meta = document.querySelector(`meta[name="${attr}"]`);
196
- if (meta)
197
- return meta.getAttribute('content') || undefined;
198
- // Try by property
199
- meta = document.querySelector(`meta[property="${attr}"]`);
200
- if (meta)
201
- return meta.getAttribute('content') || undefined;
202
- return undefined;
203
- }
204
- /**
205
- * Track a page view event
206
- */
207
- trackPageView(customData) {
208
- const currentUrl = window.location.href;
209
- // Prevent duplicate tracking of same URL
210
- if (currentUrl === this.lastTrackedUrl && !customData) {
211
- return;
212
- }
213
- this.lastTrackedUrl = currentUrl;
214
- const detectedPageType = this.detectPageType();
215
- const pageType = (customData?.page?.type || detectedPageType);
216
- const metadata = this.getPageMetadata(pageType);
217
- // Merge with custom data if provided
218
- if (customData?.page) {
219
- Object.assign(metadata, {
220
- pageTitle: customData.page.title || metadata.pageTitle,
221
- pageType: customData.page.type || metadata.pageType,
222
- categories: customData.page.categories,
223
- tags: customData.page.tags,
224
- params: customData.page.params,
225
- });
226
- }
227
- // Track the event
228
- this.config.tracker.track('page_view', {
229
- entityType: 'page',
230
- entityId: pageType,
231
- metadata,
232
- });
233
- this.log('Tracked page_view:', pageType, metadata);
234
- // Store last page type for session tracking
235
- this.storeLastPageType(pageType);
236
- }
237
- /**
238
- * Store last page type in sessionStorage
239
- */
240
- storeLastPageType(pageType) {
241
- try {
242
- sessionStorage.setItem(STORAGE_KEYS.LAST_PAGE_TYPE, pageType);
243
- }
244
- catch {
245
- // Ignore storage errors
246
- }
247
- }
248
- /**
249
- * Get last page type from sessionStorage
250
- */
251
- getLastPageType() {
252
- try {
253
- const stored = sessionStorage.getItem(STORAGE_KEYS.LAST_PAGE_TYPE);
254
- return stored || null;
255
- }
256
- catch {
257
- return null;
258
- }
259
- }
260
- /**
261
- * Process a data layer event for page tracking
262
- */
263
- processDataLayer(data) {
264
- if (data.event === 'virtual_page_view') {
265
- // Virtual page view - use custom URL from data
266
- this.trackVirtualPageView(data);
267
- }
268
- else {
269
- this.trackPageView(data);
270
- }
271
- }
272
- /**
273
- * Track a virtual page view (for SPAs without URL changes)
274
- */
275
- trackVirtualPageView(data) {
276
- const pageType = data.page?.type || this.detectPageType();
277
- const metadata = {
278
- dataSource: DATA_SOURCE,
279
- pageUrl: data.page?.url || window.location.href,
280
- referrer: data.page?.referrer || document.referrer,
281
- timestamp: Date.now(),
282
- pageTitle: data.page?.title || document.title,
283
- pagePath: data.page?.path || window.location.pathname,
284
- pageType,
285
- virtual: true,
286
- categories: data.page?.categories,
287
- tags: data.page?.tags,
288
- params: data.page?.params,
289
- };
290
- this.config.tracker.track('virtual_page_view', {
291
- entityType: 'page',
292
- entityId: pageType,
293
- metadata,
294
- });
295
- this.log('Tracked virtual_page_view:', pageType, metadata);
296
- // Don't update lastTrackedUrl for virtual views since URL didn't change
297
- }
298
- /**
299
- * Increment page view count for session
300
- */
301
- incrementPageViewCount() {
302
- try {
303
- const current = parseInt(sessionStorage.getItem(STORAGE_KEYS.PAGE_VIEW_COUNT) || '0', 10);
304
- const next = current + 1;
305
- sessionStorage.setItem(STORAGE_KEYS.PAGE_VIEW_COUNT, next.toString());
306
- return next;
307
- }
308
- catch {
309
- return 1;
310
- }
311
- }
312
- /**
313
- * Get current page view count
314
- */
315
- getPageViewCount() {
316
- try {
317
- return parseInt(sessionStorage.getItem(STORAGE_KEYS.PAGE_VIEW_COUNT) || '0', 10);
318
- }
319
- catch {
320
- return 0;
321
- }
322
- }
323
- /**
324
- * Log in debug mode
325
- */
326
- log(...args) {
327
- testModeLog('PageTracker', ...args);
328
- }
329
- /**
330
- * Cleanup
331
- */
332
- destroy() {
333
- if (this.titleObserver) {
334
- this.titleObserver.disconnect();
335
- this.titleObserver = null;
336
- }
337
- }
338
- }
339
- //# sourceMappingURL=page.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../src/datalayer/page.ts"],"names":[],"mappings":"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"}
@@ -1,133 +0,0 @@
1
- /**
2
- * Product Tracking Module
3
- * Handles product view, click, and impression tracking
4
- */
5
- import type { SelwiseDataLayer, DataLayerConfig } from './types';
6
- interface ProductTrackerConfig {
7
- siteKey: string;
8
- apiUrl: string;
9
- tracker: {
10
- track(name: string, args?: {
11
- entityType?: string;
12
- entityId?: string;
13
- metadata?: Record<string, any>;
14
- }): void;
15
- getSessionId(): string;
16
- getVisitorId(): string;
17
- };
18
- config: DataLayerConfig;
19
- scheduleProcess: () => void;
20
- }
21
- export declare class ProductTracker {
22
- private config;
23
- private lastTrackedProduct;
24
- private impressionObserver;
25
- private trackedProducts;
26
- private dwellTimeStartTime;
27
- private dwellTimeAccumulated;
28
- private visibilityHandler;
29
- private beforeUnloadHandler;
30
- private pageHideHandler;
31
- constructor(config: ProductTrackerConfig);
32
- /**
33
- * Check if current page is a product page
34
- */
35
- isProductPage(): boolean;
36
- /**
37
- * Extract product data from DOM
38
- */
39
- extractProductFromDom(): {
40
- productItemCode: string;
41
- title?: string;
42
- price?: number;
43
- category?: string;
44
- } | null;
45
- /**
46
- * Extract from Schema.org structured data
47
- */
48
- private extractFromSchema;
49
- /**
50
- * Parse product from Schema.org data
51
- * Prioritizes SKU as the primary product identifier
52
- */
53
- private parseSchemaProduct;
54
- /**
55
- * Extract from Open Graph / meta tags
56
- * Prioritizes SKU as the primary product identifier
57
- */
58
- private extractFromMetaTags;
59
- /**
60
- * Extract from data attributes
61
- * Prioritizes SKU as the primary product identifier
62
- */
63
- private extractFromDataAttributes;
64
- /**
65
- * Track a product view event
66
- * Uses SKU (productItemCode) as the primary product identifier
67
- */
68
- trackProductView(productData?: SelwiseDataLayer['product']): void;
69
- /**
70
- * Track a product click event
71
- * Uses SKU (productItemCode) as the primary product identifier
72
- */
73
- trackProductClick(productData: SelwiseDataLayer['product']): void;
74
- /**
75
- * Track product impressions for a list of products
76
- * Uses SKU (productItemCode) as the primary product identifier
77
- */
78
- trackProductImpressions(products: Array<{
79
- sku?: string;
80
- title?: string;
81
- price?: number;
82
- position?: number;
83
- }>): void;
84
- /**
85
- * Setup intersection observer for automatic impression tracking
86
- * Uses SKU (productItemCode) as the primary product identifier
87
- */
88
- setupImpressionTracking(selector?: string): void;
89
- /**
90
- * Start tracking dwell time for product view using Page Visibility API
91
- */
92
- startDwellTimeTracking(): void;
93
- /**
94
- * Handle visibility change (Page Visibility API)
95
- * Pauses tracking when page is hidden, resumes when visible
96
- */
97
- private handleVisibilityChange;
98
- /**
99
- * Handle before unload - send final dwell time event
100
- */
101
- private handleBeforeUnload;
102
- /**
103
- * Handle page hide event (more reliable than beforeunload in modern browsers)
104
- */
105
- private handlePageHide;
106
- /**
107
- * Get total dwell time in milliseconds
108
- */
109
- private getTotalDwellTime;
110
- /**
111
- * Stop dwell time tracking and send the dwell time event
112
- * Called when navigating away from product page (SPA navigation)
113
- */
114
- stopDwellTimeTracking(): void;
115
- /**
116
- * Process a data layer event for product tracking
117
- * Uses SKU (productItemCode) as the primary product identifier
118
- */
119
- processDataLayer(data: SelwiseDataLayer): void;
120
- /**
121
- * Clear tracked products cache
122
- */
123
- clearTrackedProducts(): void;
124
- /**
125
- * Log in debug mode
126
- */
127
- private log;
128
- /**
129
- * Cleanup
130
- */
131
- destroy(): void;
132
- }
133
- export {};