@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,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":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAiB9C,MAAM,OAAO,WAAW;IAKtB,YAAY,MAAyB;QAH7B,mBAAc,GAAG,EAAE,CAAC;QACpB,kBAAa,GAA4B,IAAI,CAAC;QAGpD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,IAAI,CAAC,aAAa,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;YAC7C,0CAA0C;YAC1C,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpG,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QACxC,IAAI,UAAU,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACvC,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,YAAY,CAAC;QAEpC,uEAAuE;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,qBAAqB,CAAC;QAC9E,uCAAuC;QACvC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvD,8CAA8C;YAC9C,MAAM,KAAK,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1E,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxB,OAAO,IAAgB,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7C,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,OAAO,UAAU,CAAC,KAAK,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,qBAAqB;QAC3B,qBAAqB;QACrB,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAExD,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAChE,OAAO,UAAU,CAAC,OAAO,CAAC;QAC5B,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxG,OAAO,UAAU,CAAC,QAAQ,CAAC;QAC7B,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,OAAO,UAAU,CAAC,QAAQ,CAAC;QAC7B,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/D,OAAO,UAAU,CAAC,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACvG,OAAO,UAAU,CAAC,OAAO,CAAC;QAC5B,CAAC;QAED,yCAAyC;QACzC,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;QACtE,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,UAAU,CAAC,OAAO,CAAC;QAC5B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,QAAkB;QACxC,MAAM,QAAQ,GAAwB;YACpC,UAAU,EAAE,WAAW;YACvB,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;YAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QAEF,iBAAiB;QACjB,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC;QACpC,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7C,QAAQ,CAAC,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC7C,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEzC,WAAW;QACX,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,SAAS,CAAC,QAAQ,IAAI,IAAI,CAAC;QAEhF,0CAA0C;QAC1C,IAAI,QAAQ,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,WAAW,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACrD,IAAI,WAAW,EAAE,CAAC;gBAChB,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;YACrC,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,QAAQ,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC;YACvD,IAAI,YAAY,EAAE,CAAC;gBACjB,QAAQ,CAAC,YAAY,GAAG,YAAY,CAAC;YACvC,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,yBAAyB;QAC/B,iCAAiC;QACjC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,oCAAoC,CAAC,CAAC;QAClF,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC;gBAC5D,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;oBAClC,OAAO;wBACL,eAAe,EAAE,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,IAAI,SAAS;wBAC5D,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,SAAS;wBACxC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,IAAI,SAAS;wBACnD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,IAAI,SAAS;qBACvD,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,yBAAyB;YAC3B,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC;YACzC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC;YACjC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QAE3D,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;YAC/B,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAElD,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC;YAC3C,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC;YACpC,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAErD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC;YAC7C,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QAE1D,IAAI,IAAI,IAAI,eAAe,EAAE,CAAC;YAC5B,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,0BAA0B;QAChC,gBAAgB;QAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;YAC/B,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC;YACvC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAEhD,iBAAiB;QACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,8BAA8B,CAAC,CAAC;QAC1E,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,8BAA8B,CAAC,CAAC;YAC1E,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,EAAE,WAAW,CAAC;gBAClE,IAAI,IAAI,EAAE,CAAC;oBACT,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,IAAY;QACjC,cAAc;QACd,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC;QAC1D,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;QAE3D,kBAAkB;QAClB,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,kBAAkB,IAAI,IAAI,CAAC,CAAC;QAC1D,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC;QAE3D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,UAA6B;QACzC,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAExC,yCAAyC;QACzC,IAAI,UAAU,KAAK,IAAI,CAAC,cAAc,IAAI,CAAC,UAAU,EAAE,CAAC;YACtD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;QAEjC,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,IAAI,gBAAgB,CAAa,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEhD,qCAAqC;QACrC,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACtB,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,SAAS;gBACtD,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ;gBACnD,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU;gBACtC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI;gBAC1B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM;aAC/B,CAAC,CAAC;QACL,CAAC;QAED,kBAAkB;QAClB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE;YACrC,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,QAAQ;YAClB,QAAQ;SACT,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEnD,4CAA4C;QAC5C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,QAAkB;QAC1C,IAAI,CAAC;YACH,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YACnE,OAAO,MAAkB,IAAI,IAAI,CAAC;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,IAAsB;QACrC,IAAI,IAAI,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;YACvC,+CAA+C;YAC/C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,IAAsB;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG;YACf,UAAU,EAAE,WAAW;YACvB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI;YAC/C,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ;YAClD,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;YAC7C,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ;YACrD,QAAQ;YACR,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU;YACjC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI;YACrB,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM;SAC1B,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE;YAC7C,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,QAAQ;YAClB,QAAQ;SACT,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,4BAA4B,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE3D,wEAAwE;IAC1E,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;YAC1F,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,CAAC;YACzB,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,IAAI,CAAC;YACH,OAAO,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;QACnF,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED;;OAEG;IACK,GAAG,CAAC,GAAG,IAAe;QAC5B,WAAW,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
@@ -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 {};