@tracelog/lib 0.11.2 → 0.11.4

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 (539) hide show
  1. package/dist/browser/tracelog.esm.js +308 -251
  2. package/dist/browser/tracelog.esm.js.map +1 -1
  3. package/dist/browser/tracelog.js +2 -2
  4. package/dist/browser/tracelog.js.map +1 -1
  5. package/dist/public-api.cjs +4427 -0
  6. package/dist/public-api.cjs.map +1 -0
  7. package/dist/public-api.d.mts +913 -0
  8. package/dist/public-api.d.ts +913 -0
  9. package/dist/public-api.js +4388 -0
  10. package/dist/public-api.js.map +1 -0
  11. package/package.json +17 -18
  12. package/dist/cjs/api.d.ts +0 -19
  13. package/dist/cjs/api.d.ts.map +0 -1
  14. package/dist/cjs/api.js +0 -183
  15. package/dist/cjs/api.js.map +0 -1
  16. package/dist/cjs/app.constants.d.ts +0 -80
  17. package/dist/cjs/app.constants.d.ts.map +0 -1
  18. package/dist/cjs/app.constants.js +0 -94
  19. package/dist/cjs/app.constants.js.map +0 -1
  20. package/dist/cjs/app.d.ts +0 -43
  21. package/dist/cjs/app.d.ts.map +0 -1
  22. package/dist/cjs/app.js +0 -165
  23. package/dist/cjs/app.js.map +0 -1
  24. package/dist/cjs/constants/config.constants.d.ts +0 -109
  25. package/dist/cjs/constants/config.constants.d.ts.map +0 -1
  26. package/dist/cjs/constants/config.constants.js +0 -216
  27. package/dist/cjs/constants/config.constants.js.map +0 -1
  28. package/dist/cjs/constants/error.constants.d.ts +0 -56
  29. package/dist/cjs/constants/error.constants.d.ts.map +0 -1
  30. package/dist/cjs/constants/error.constants.js +0 -89
  31. package/dist/cjs/constants/error.constants.js.map +0 -1
  32. package/dist/cjs/constants/index.d.ts +0 -5
  33. package/dist/cjs/constants/index.d.ts.map +0 -1
  34. package/dist/cjs/constants/index.js +0 -21
  35. package/dist/cjs/constants/index.js.map +0 -1
  36. package/dist/cjs/constants/performance.constants.d.ts +0 -29
  37. package/dist/cjs/constants/performance.constants.d.ts.map +0 -1
  38. package/dist/cjs/constants/performance.constants.js +0 -44
  39. package/dist/cjs/constants/performance.constants.js.map +0 -1
  40. package/dist/cjs/constants/storage.constants.d.ts +0 -11
  41. package/dist/cjs/constants/storage.constants.d.ts.map +0 -1
  42. package/dist/cjs/constants/storage.constants.js +0 -23
  43. package/dist/cjs/constants/storage.constants.js.map +0 -1
  44. package/dist/cjs/handlers/click.handler.d.ts +0 -36
  45. package/dist/cjs/handlers/click.handler.d.ts.map +0 -1
  46. package/dist/cjs/handlers/click.handler.js +0 -263
  47. package/dist/cjs/handlers/click.handler.js.map +0 -1
  48. package/dist/cjs/handlers/error.handler.d.ts +0 -28
  49. package/dist/cjs/handlers/error.handler.d.ts.map +0 -1
  50. package/dist/cjs/handlers/error.handler.js +0 -168
  51. package/dist/cjs/handlers/error.handler.js.map +0 -1
  52. package/dist/cjs/handlers/page-view.handler.d.ts +0 -17
  53. package/dist/cjs/handlers/page-view.handler.d.ts.map +0 -1
  54. package/dist/cjs/handlers/page-view.handler.js +0 -100
  55. package/dist/cjs/handlers/page-view.handler.js.map +0 -1
  56. package/dist/cjs/handlers/performance.handler.d.ts +0 -23
  57. package/dist/cjs/handlers/performance.handler.d.ts.map +0 -1
  58. package/dist/cjs/handlers/performance.handler.js +0 -274
  59. package/dist/cjs/handlers/performance.handler.js.map +0 -1
  60. package/dist/cjs/handlers/scroll.handler.d.ts +0 -40
  61. package/dist/cjs/handlers/scroll.handler.d.ts.map +0 -1
  62. package/dist/cjs/handlers/scroll.handler.js +0 -327
  63. package/dist/cjs/handlers/scroll.handler.js.map +0 -1
  64. package/dist/cjs/handlers/session.handler.d.ts +0 -16
  65. package/dist/cjs/handlers/session.handler.d.ts.map +0 -1
  66. package/dist/cjs/handlers/session.handler.js +0 -74
  67. package/dist/cjs/handlers/session.handler.js.map +0 -1
  68. package/dist/cjs/handlers/viewport.handler.d.ts +0 -44
  69. package/dist/cjs/handlers/viewport.handler.d.ts.map +0 -1
  70. package/dist/cjs/handlers/viewport.handler.js +0 -286
  71. package/dist/cjs/handlers/viewport.handler.js.map +0 -1
  72. package/dist/cjs/integrations/google-analytics.integration.d.ts +0 -18
  73. package/dist/cjs/integrations/google-analytics.integration.d.ts.map +0 -1
  74. package/dist/cjs/integrations/google-analytics.integration.js +0 -90
  75. package/dist/cjs/integrations/google-analytics.integration.js.map +0 -1
  76. package/dist/cjs/listeners/activity-listener-manager.d.ts +0 -9
  77. package/dist/cjs/listeners/activity-listener-manager.d.ts.map +0 -1
  78. package/dist/cjs/listeners/activity-listener-manager.js +0 -33
  79. package/dist/cjs/listeners/activity-listener-manager.js.map +0 -1
  80. package/dist/cjs/listeners/index.d.ts +0 -7
  81. package/dist/cjs/listeners/index.d.ts.map +0 -1
  82. package/dist/cjs/listeners/index.js +0 -15
  83. package/dist/cjs/listeners/index.js.map +0 -1
  84. package/dist/cjs/listeners/input-listener-managers.d.ts +0 -25
  85. package/dist/cjs/listeners/input-listener-managers.d.ts.map +0 -1
  86. package/dist/cjs/listeners/input-listener-managers.js +0 -50
  87. package/dist/cjs/listeners/input-listener-managers.js.map +0 -1
  88. package/dist/cjs/listeners/listeners.types.d.ts +0 -5
  89. package/dist/cjs/listeners/listeners.types.d.ts.map +0 -1
  90. package/dist/cjs/listeners/listeners.types.js +0 -3
  91. package/dist/cjs/listeners/listeners.types.js.map +0 -1
  92. package/dist/cjs/listeners/touch-listener-manager.d.ts +0 -9
  93. package/dist/cjs/listeners/touch-listener-manager.d.ts.map +0 -1
  94. package/dist/cjs/listeners/touch-listener-manager.js +0 -35
  95. package/dist/cjs/listeners/touch-listener-manager.js.map +0 -1
  96. package/dist/cjs/listeners/unload-listener-manager.d.ts +0 -9
  97. package/dist/cjs/listeners/unload-listener-manager.d.ts.map +0 -1
  98. package/dist/cjs/listeners/unload-listener-manager.js +0 -31
  99. package/dist/cjs/listeners/unload-listener-manager.js.map +0 -1
  100. package/dist/cjs/listeners/visibility-listener-manager.d.ts +0 -10
  101. package/dist/cjs/listeners/visibility-listener-manager.d.ts.map +0 -1
  102. package/dist/cjs/listeners/visibility-listener-manager.js +0 -48
  103. package/dist/cjs/listeners/visibility-listener-manager.js.map +0 -1
  104. package/dist/cjs/managers/event.manager.d.ts +0 -62
  105. package/dist/cjs/managers/event.manager.d.ts.map +0 -1
  106. package/dist/cjs/managers/event.manager.js +0 -508
  107. package/dist/cjs/managers/event.manager.js.map +0 -1
  108. package/dist/cjs/managers/sender.manager.d.ts +0 -32
  109. package/dist/cjs/managers/sender.manager.d.ts.map +0 -1
  110. package/dist/cjs/managers/sender.manager.js +0 -271
  111. package/dist/cjs/managers/sender.manager.js.map +0 -1
  112. package/dist/cjs/managers/session.manager.d.ts +0 -40
  113. package/dist/cjs/managers/session.manager.d.ts.map +0 -1
  114. package/dist/cjs/managers/session.manager.js +0 -282
  115. package/dist/cjs/managers/session.manager.js.map +0 -1
  116. package/dist/cjs/managers/state.manager.d.ts +0 -9
  117. package/dist/cjs/managers/state.manager.d.ts.map +0 -1
  118. package/dist/cjs/managers/state.manager.js +0 -27
  119. package/dist/cjs/managers/state.manager.js.map +0 -1
  120. package/dist/cjs/managers/storage.manager.d.ts +0 -60
  121. package/dist/cjs/managers/storage.manager.d.ts.map +0 -1
  122. package/dist/cjs/managers/storage.manager.js +0 -277
  123. package/dist/cjs/managers/storage.manager.js.map +0 -1
  124. package/dist/cjs/managers/user.manager.d.ts +0 -17
  125. package/dist/cjs/managers/user.manager.d.ts.map +0 -1
  126. package/dist/cjs/managers/user.manager.js +0 -31
  127. package/dist/cjs/managers/user.manager.js.map +0 -1
  128. package/dist/cjs/public-api.d.ts +0 -11
  129. package/dist/cjs/public-api.d.ts.map +0 -1
  130. package/dist/cjs/public-api.js +0 -32
  131. package/dist/cjs/public-api.js.map +0 -1
  132. package/dist/cjs/test-bridge.d.ts +0 -47
  133. package/dist/cjs/test-bridge.d.ts.map +0 -1
  134. package/dist/cjs/test-bridge.js +0 -165
  135. package/dist/cjs/test-bridge.js.map +0 -1
  136. package/dist/cjs/types/common.types.d.ts +0 -6
  137. package/dist/cjs/types/common.types.d.ts.map +0 -1
  138. package/dist/cjs/types/common.types.js +0 -3
  139. package/dist/cjs/types/common.types.js.map +0 -1
  140. package/dist/cjs/types/config.types.d.ts +0 -49
  141. package/dist/cjs/types/config.types.d.ts.map +0 -1
  142. package/dist/cjs/types/config.types.js +0 -9
  143. package/dist/cjs/types/config.types.js.map +0 -1
  144. package/dist/cjs/types/device.types.d.ts +0 -7
  145. package/dist/cjs/types/device.types.d.ts.map +0 -1
  146. package/dist/cjs/types/device.types.js +0 -11
  147. package/dist/cjs/types/device.types.js.map +0 -1
  148. package/dist/cjs/types/emitter.types.d.ts +0 -12
  149. package/dist/cjs/types/emitter.types.d.ts.map +0 -1
  150. package/dist/cjs/types/emitter.types.js +0 -9
  151. package/dist/cjs/types/emitter.types.js.map +0 -1
  152. package/dist/cjs/types/error.types.d.ts +0 -12
  153. package/dist/cjs/types/error.types.d.ts.map +0 -1
  154. package/dist/cjs/types/error.types.js +0 -23
  155. package/dist/cjs/types/error.types.js.map +0 -1
  156. package/dist/cjs/types/event.types.d.ts +0 -235
  157. package/dist/cjs/types/event.types.d.ts.map +0 -1
  158. package/dist/cjs/types/event.types.js +0 -48
  159. package/dist/cjs/types/event.types.js.map +0 -1
  160. package/dist/cjs/types/index.d.ts +0 -17
  161. package/dist/cjs/types/index.d.ts.map +0 -1
  162. package/dist/cjs/types/index.js +0 -33
  163. package/dist/cjs/types/index.js.map +0 -1
  164. package/dist/cjs/types/log.types.d.ts +0 -5
  165. package/dist/cjs/types/log.types.d.ts.map +0 -1
  166. package/dist/cjs/types/log.types.js +0 -3
  167. package/dist/cjs/types/log.types.js.map +0 -1
  168. package/dist/cjs/types/mode.types.d.ts +0 -7
  169. package/dist/cjs/types/mode.types.d.ts.map +0 -1
  170. package/dist/cjs/types/mode.types.js +0 -11
  171. package/dist/cjs/types/mode.types.js.map +0 -1
  172. package/dist/cjs/types/queue.types.d.ts +0 -19
  173. package/dist/cjs/types/queue.types.d.ts.map +0 -1
  174. package/dist/cjs/types/queue.types.js +0 -3
  175. package/dist/cjs/types/queue.types.js.map +0 -1
  176. package/dist/cjs/types/scroll.types.d.ts +0 -16
  177. package/dist/cjs/types/scroll.types.d.ts.map +0 -1
  178. package/dist/cjs/types/scroll.types.js +0 -12
  179. package/dist/cjs/types/scroll.types.js.map +0 -1
  180. package/dist/cjs/types/session.types.d.ts +0 -2
  181. package/dist/cjs/types/session.types.d.ts.map +0 -1
  182. package/dist/cjs/types/session.types.js +0 -3
  183. package/dist/cjs/types/session.types.js.map +0 -1
  184. package/dist/cjs/types/state.types.d.ts +0 -16
  185. package/dist/cjs/types/state.types.d.ts.map +0 -1
  186. package/dist/cjs/types/state.types.js +0 -3
  187. package/dist/cjs/types/state.types.js.map +0 -1
  188. package/dist/cjs/types/test-bridge.types.d.ts +0 -40
  189. package/dist/cjs/types/test-bridge.types.d.ts.map +0 -1
  190. package/dist/cjs/types/test-bridge.types.js +0 -3
  191. package/dist/cjs/types/test-bridge.types.js.map +0 -1
  192. package/dist/cjs/types/validation-error.types.d.ts +0 -44
  193. package/dist/cjs/types/validation-error.types.d.ts.map +0 -1
  194. package/dist/cjs/types/validation-error.types.js +0 -70
  195. package/dist/cjs/types/validation-error.types.js.map +0 -1
  196. package/dist/cjs/types/viewport.types.d.ts +0 -55
  197. package/dist/cjs/types/viewport.types.d.ts.map +0 -1
  198. package/dist/cjs/types/viewport.types.js +0 -3
  199. package/dist/cjs/types/viewport.types.js.map +0 -1
  200. package/dist/cjs/types/window.types.d.ts +0 -16
  201. package/dist/cjs/types/window.types.d.ts.map +0 -1
  202. package/dist/cjs/types/window.types.js +0 -3
  203. package/dist/cjs/types/window.types.js.map +0 -1
  204. package/dist/cjs/utils/browser/device-detector.utils.d.ts +0 -7
  205. package/dist/cjs/utils/browser/device-detector.utils.d.ts.map +0 -1
  206. package/dist/cjs/utils/browser/device-detector.utils.js +0 -50
  207. package/dist/cjs/utils/browser/device-detector.utils.js.map +0 -1
  208. package/dist/cjs/utils/browser/index.d.ts +0 -4
  209. package/dist/cjs/utils/browser/index.d.ts.map +0 -1
  210. package/dist/cjs/utils/browser/index.js +0 -20
  211. package/dist/cjs/utils/browser/index.js.map +0 -1
  212. package/dist/cjs/utils/browser/qa-mode.utils.d.ts +0 -14
  213. package/dist/cjs/utils/browser/qa-mode.utils.d.ts.map +0 -1
  214. package/dist/cjs/utils/browser/qa-mode.utils.js +0 -44
  215. package/dist/cjs/utils/browser/qa-mode.utils.js.map +0 -1
  216. package/dist/cjs/utils/browser/utm-params.utils.d.ts +0 -7
  217. package/dist/cjs/utils/browser/utm-params.utils.d.ts.map +0 -1
  218. package/dist/cjs/utils/browser/utm-params.utils.js +0 -23
  219. package/dist/cjs/utils/browser/utm-params.utils.js.map +0 -1
  220. package/dist/cjs/utils/data/index.d.ts +0 -2
  221. package/dist/cjs/utils/data/index.d.ts.map +0 -1
  222. package/dist/cjs/utils/data/index.js +0 -18
  223. package/dist/cjs/utils/data/index.js.map +0 -1
  224. package/dist/cjs/utils/data/uuid.utils.d.ts +0 -19
  225. package/dist/cjs/utils/data/uuid.utils.d.ts.map +0 -1
  226. package/dist/cjs/utils/data/uuid.utils.js +0 -57
  227. package/dist/cjs/utils/data/uuid.utils.js.map +0 -1
  228. package/dist/cjs/utils/emitter.utils.d.ts +0 -9
  229. package/dist/cjs/utils/emitter.utils.d.ts.map +0 -1
  230. package/dist/cjs/utils/emitter.utils.js +0 -36
  231. package/dist/cjs/utils/emitter.utils.js.map +0 -1
  232. package/dist/cjs/utils/index.d.ts +0 -8
  233. package/dist/cjs/utils/index.d.ts.map +0 -1
  234. package/dist/cjs/utils/index.js +0 -24
  235. package/dist/cjs/utils/index.js.map +0 -1
  236. package/dist/cjs/utils/logging.utils.d.ts +0 -22
  237. package/dist/cjs/utils/logging.utils.d.ts.map +0 -1
  238. package/dist/cjs/utils/logging.utils.js +0 -87
  239. package/dist/cjs/utils/logging.utils.js.map +0 -1
  240. package/dist/cjs/utils/network/index.d.ts +0 -2
  241. package/dist/cjs/utils/network/index.d.ts.map +0 -1
  242. package/dist/cjs/utils/network/index.js +0 -18
  243. package/dist/cjs/utils/network/index.js.map +0 -1
  244. package/dist/cjs/utils/network/url.utils.d.ts +0 -16
  245. package/dist/cjs/utils/network/url.utils.d.ts.map +0 -1
  246. package/dist/cjs/utils/network/url.utils.js +0 -92
  247. package/dist/cjs/utils/network/url.utils.js.map +0 -1
  248. package/dist/cjs/utils/security/index.d.ts +0 -2
  249. package/dist/cjs/utils/security/index.d.ts.map +0 -1
  250. package/dist/cjs/utils/security/index.js +0 -18
  251. package/dist/cjs/utils/security/index.js.map +0 -1
  252. package/dist/cjs/utils/security/sanitize.utils.d.ts +0 -14
  253. package/dist/cjs/utils/security/sanitize.utils.d.ts.map +0 -1
  254. package/dist/cjs/utils/security/sanitize.utils.js +0 -123
  255. package/dist/cjs/utils/security/sanitize.utils.js.map +0 -1
  256. package/dist/cjs/utils/validations/config-validations.utils.d.ts +0 -19
  257. package/dist/cjs/utils/validations/config-validations.utils.d.ts.map +0 -1
  258. package/dist/cjs/utils/validations/config-validations.utils.js +0 -236
  259. package/dist/cjs/utils/validations/config-validations.utils.js.map +0 -1
  260. package/dist/cjs/utils/validations/event-validations.utils.d.ts +0 -13
  261. package/dist/cjs/utils/validations/event-validations.utils.d.ts.map +0 -1
  262. package/dist/cjs/utils/validations/event-validations.utils.js +0 -37
  263. package/dist/cjs/utils/validations/event-validations.utils.js.map +0 -1
  264. package/dist/cjs/utils/validations/index.d.ts +0 -5
  265. package/dist/cjs/utils/validations/index.d.ts.map +0 -1
  266. package/dist/cjs/utils/validations/index.js +0 -21
  267. package/dist/cjs/utils/validations/index.js.map +0 -1
  268. package/dist/cjs/utils/validations/metadata-validations.utils.d.ts +0 -23
  269. package/dist/cjs/utils/validations/metadata-validations.utils.d.ts.map +0 -1
  270. package/dist/cjs/utils/validations/metadata-validations.utils.js +0 -153
  271. package/dist/cjs/utils/validations/metadata-validations.utils.js.map +0 -1
  272. package/dist/cjs/utils/validations/type-guards.utils.d.ts +0 -9
  273. package/dist/cjs/utils/validations/type-guards.utils.d.ts.map +0 -1
  274. package/dist/cjs/utils/validations/type-guards.utils.js +0 -90
  275. package/dist/cjs/utils/validations/type-guards.utils.js.map +0 -1
  276. package/dist/esm/api.d.ts +0 -19
  277. package/dist/esm/api.d.ts.map +0 -1
  278. package/dist/esm/api.js +0 -173
  279. package/dist/esm/api.js.map +0 -1
  280. package/dist/esm/app.constants.d.ts +0 -80
  281. package/dist/esm/app.constants.d.ts.map +0 -1
  282. package/dist/esm/app.constants.js +0 -82
  283. package/dist/esm/app.constants.js.map +0 -1
  284. package/dist/esm/app.d.ts +0 -43
  285. package/dist/esm/app.d.ts.map +0 -1
  286. package/dist/esm/app.js +0 -161
  287. package/dist/esm/app.js.map +0 -1
  288. package/dist/esm/constants/config.constants.d.ts +0 -109
  289. package/dist/esm/constants/config.constants.d.ts.map +0 -1
  290. package/dist/esm/constants/config.constants.js +0 -212
  291. package/dist/esm/constants/config.constants.js.map +0 -1
  292. package/dist/esm/constants/error.constants.d.ts +0 -56
  293. package/dist/esm/constants/error.constants.d.ts.map +0 -1
  294. package/dist/esm/constants/error.constants.js +0 -86
  295. package/dist/esm/constants/error.constants.js.map +0 -1
  296. package/dist/esm/constants/index.d.ts +0 -5
  297. package/dist/esm/constants/index.d.ts.map +0 -1
  298. package/dist/esm/constants/index.js +0 -5
  299. package/dist/esm/constants/index.js.map +0 -1
  300. package/dist/esm/constants/performance.constants.d.ts +0 -29
  301. package/dist/esm/constants/performance.constants.d.ts.map +0 -1
  302. package/dist/esm/constants/performance.constants.js +0 -41
  303. package/dist/esm/constants/performance.constants.js.map +0 -1
  304. package/dist/esm/constants/storage.constants.d.ts +0 -11
  305. package/dist/esm/constants/storage.constants.d.ts.map +0 -1
  306. package/dist/esm/constants/storage.constants.js +0 -13
  307. package/dist/esm/constants/storage.constants.js.map +0 -1
  308. package/dist/esm/handlers/click.handler.d.ts +0 -36
  309. package/dist/esm/handlers/click.handler.d.ts.map +0 -1
  310. package/dist/esm/handlers/click.handler.js +0 -259
  311. package/dist/esm/handlers/click.handler.js.map +0 -1
  312. package/dist/esm/handlers/error.handler.d.ts +0 -28
  313. package/dist/esm/handlers/error.handler.d.ts.map +0 -1
  314. package/dist/esm/handlers/error.handler.js +0 -164
  315. package/dist/esm/handlers/error.handler.js.map +0 -1
  316. package/dist/esm/handlers/page-view.handler.d.ts +0 -17
  317. package/dist/esm/handlers/page-view.handler.d.ts.map +0 -1
  318. package/dist/esm/handlers/page-view.handler.js +0 -96
  319. package/dist/esm/handlers/page-view.handler.js.map +0 -1
  320. package/dist/esm/handlers/performance.handler.d.ts +0 -23
  321. package/dist/esm/handlers/performance.handler.d.ts.map +0 -1
  322. package/dist/esm/handlers/performance.handler.js +0 -237
  323. package/dist/esm/handlers/performance.handler.js.map +0 -1
  324. package/dist/esm/handlers/scroll.handler.d.ts +0 -40
  325. package/dist/esm/handlers/scroll.handler.d.ts.map +0 -1
  326. package/dist/esm/handlers/scroll.handler.js +0 -323
  327. package/dist/esm/handlers/scroll.handler.js.map +0 -1
  328. package/dist/esm/handlers/session.handler.d.ts +0 -16
  329. package/dist/esm/handlers/session.handler.d.ts.map +0 -1
  330. package/dist/esm/handlers/session.handler.js +0 -70
  331. package/dist/esm/handlers/session.handler.js.map +0 -1
  332. package/dist/esm/handlers/viewport.handler.d.ts +0 -44
  333. package/dist/esm/handlers/viewport.handler.d.ts.map +0 -1
  334. package/dist/esm/handlers/viewport.handler.js +0 -282
  335. package/dist/esm/handlers/viewport.handler.js.map +0 -1
  336. package/dist/esm/integrations/google-analytics.integration.d.ts +0 -18
  337. package/dist/esm/integrations/google-analytics.integration.d.ts.map +0 -1
  338. package/dist/esm/integrations/google-analytics.integration.js +0 -86
  339. package/dist/esm/integrations/google-analytics.integration.js.map +0 -1
  340. package/dist/esm/listeners/activity-listener-manager.d.ts +0 -9
  341. package/dist/esm/listeners/activity-listener-manager.d.ts.map +0 -1
  342. package/dist/esm/listeners/activity-listener-manager.js +0 -29
  343. package/dist/esm/listeners/activity-listener-manager.js.map +0 -1
  344. package/dist/esm/listeners/index.d.ts +0 -7
  345. package/dist/esm/listeners/index.d.ts.map +0 -1
  346. package/dist/esm/listeners/index.js +0 -6
  347. package/dist/esm/listeners/index.js.map +0 -1
  348. package/dist/esm/listeners/input-listener-managers.d.ts +0 -25
  349. package/dist/esm/listeners/input-listener-managers.d.ts.map +0 -1
  350. package/dist/esm/listeners/input-listener-managers.js +0 -45
  351. package/dist/esm/listeners/input-listener-managers.js.map +0 -1
  352. package/dist/esm/listeners/listeners.types.d.ts +0 -5
  353. package/dist/esm/listeners/listeners.types.d.ts.map +0 -1
  354. package/dist/esm/listeners/listeners.types.js +0 -2
  355. package/dist/esm/listeners/listeners.types.js.map +0 -1
  356. package/dist/esm/listeners/touch-listener-manager.d.ts +0 -9
  357. package/dist/esm/listeners/touch-listener-manager.d.ts.map +0 -1
  358. package/dist/esm/listeners/touch-listener-manager.js +0 -31
  359. package/dist/esm/listeners/touch-listener-manager.js.map +0 -1
  360. package/dist/esm/listeners/unload-listener-manager.d.ts +0 -9
  361. package/dist/esm/listeners/unload-listener-manager.d.ts.map +0 -1
  362. package/dist/esm/listeners/unload-listener-manager.js +0 -27
  363. package/dist/esm/listeners/unload-listener-manager.js.map +0 -1
  364. package/dist/esm/listeners/visibility-listener-manager.d.ts +0 -10
  365. package/dist/esm/listeners/visibility-listener-manager.d.ts.map +0 -1
  366. package/dist/esm/listeners/visibility-listener-manager.js +0 -44
  367. package/dist/esm/listeners/visibility-listener-manager.js.map +0 -1
  368. package/dist/esm/managers/event.manager.d.ts +0 -62
  369. package/dist/esm/managers/event.manager.d.ts.map +0 -1
  370. package/dist/esm/managers/event.manager.js +0 -504
  371. package/dist/esm/managers/event.manager.js.map +0 -1
  372. package/dist/esm/managers/sender.manager.d.ts +0 -32
  373. package/dist/esm/managers/sender.manager.d.ts.map +0 -1
  374. package/dist/esm/managers/sender.manager.js +0 -267
  375. package/dist/esm/managers/sender.manager.js.map +0 -1
  376. package/dist/esm/managers/session.manager.d.ts +0 -40
  377. package/dist/esm/managers/session.manager.d.ts.map +0 -1
  378. package/dist/esm/managers/session.manager.js +0 -278
  379. package/dist/esm/managers/session.manager.js.map +0 -1
  380. package/dist/esm/managers/state.manager.d.ts +0 -9
  381. package/dist/esm/managers/state.manager.d.ts.map +0 -1
  382. package/dist/esm/managers/state.manager.js +0 -21
  383. package/dist/esm/managers/state.manager.js.map +0 -1
  384. package/dist/esm/managers/storage.manager.d.ts +0 -60
  385. package/dist/esm/managers/storage.manager.d.ts.map +0 -1
  386. package/dist/esm/managers/storage.manager.js +0 -273
  387. package/dist/esm/managers/storage.manager.js.map +0 -1
  388. package/dist/esm/managers/user.manager.d.ts +0 -17
  389. package/dist/esm/managers/user.manager.d.ts.map +0 -1
  390. package/dist/esm/managers/user.manager.js +0 -27
  391. package/dist/esm/managers/user.manager.js.map +0 -1
  392. package/dist/esm/public-api.d.ts +0 -11
  393. package/dist/esm/public-api.d.ts.map +0 -1
  394. package/dist/esm/public-api.js +0 -15
  395. package/dist/esm/public-api.js.map +0 -1
  396. package/dist/esm/test-bridge.d.ts +0 -47
  397. package/dist/esm/test-bridge.d.ts.map +0 -1
  398. package/dist/esm/test-bridge.js +0 -161
  399. package/dist/esm/test-bridge.js.map +0 -1
  400. package/dist/esm/types/common.types.d.ts +0 -6
  401. package/dist/esm/types/common.types.d.ts.map +0 -1
  402. package/dist/esm/types/common.types.js +0 -2
  403. package/dist/esm/types/common.types.js.map +0 -1
  404. package/dist/esm/types/config.types.d.ts +0 -49
  405. package/dist/esm/types/config.types.d.ts.map +0 -1
  406. package/dist/esm/types/config.types.js +0 -6
  407. package/dist/esm/types/config.types.js.map +0 -1
  408. package/dist/esm/types/device.types.d.ts +0 -7
  409. package/dist/esm/types/device.types.d.ts.map +0 -1
  410. package/dist/esm/types/device.types.js +0 -8
  411. package/dist/esm/types/device.types.js.map +0 -1
  412. package/dist/esm/types/emitter.types.d.ts +0 -12
  413. package/dist/esm/types/emitter.types.d.ts.map +0 -1
  414. package/dist/esm/types/emitter.types.js +0 -6
  415. package/dist/esm/types/emitter.types.js.map +0 -1
  416. package/dist/esm/types/error.types.d.ts +0 -12
  417. package/dist/esm/types/error.types.d.ts.map +0 -1
  418. package/dist/esm/types/error.types.js +0 -19
  419. package/dist/esm/types/error.types.js.map +0 -1
  420. package/dist/esm/types/event.types.d.ts +0 -235
  421. package/dist/esm/types/event.types.d.ts.map +0 -1
  422. package/dist/esm/types/event.types.js +0 -45
  423. package/dist/esm/types/event.types.js.map +0 -1
  424. package/dist/esm/types/index.d.ts +0 -17
  425. package/dist/esm/types/index.d.ts.map +0 -1
  426. package/dist/esm/types/index.js +0 -17
  427. package/dist/esm/types/index.js.map +0 -1
  428. package/dist/esm/types/log.types.d.ts +0 -5
  429. package/dist/esm/types/log.types.d.ts.map +0 -1
  430. package/dist/esm/types/log.types.js +0 -2
  431. package/dist/esm/types/log.types.js.map +0 -1
  432. package/dist/esm/types/mode.types.d.ts +0 -7
  433. package/dist/esm/types/mode.types.d.ts.map +0 -1
  434. package/dist/esm/types/mode.types.js +0 -8
  435. package/dist/esm/types/mode.types.js.map +0 -1
  436. package/dist/esm/types/queue.types.d.ts +0 -19
  437. package/dist/esm/types/queue.types.d.ts.map +0 -1
  438. package/dist/esm/types/queue.types.js +0 -2
  439. package/dist/esm/types/queue.types.js.map +0 -1
  440. package/dist/esm/types/scroll.types.d.ts +0 -16
  441. package/dist/esm/types/scroll.types.d.ts.map +0 -1
  442. package/dist/esm/types/scroll.types.js +0 -8
  443. package/dist/esm/types/scroll.types.js.map +0 -1
  444. package/dist/esm/types/session.types.d.ts +0 -2
  445. package/dist/esm/types/session.types.d.ts.map +0 -1
  446. package/dist/esm/types/session.types.js +0 -2
  447. package/dist/esm/types/session.types.js.map +0 -1
  448. package/dist/esm/types/state.types.d.ts +0 -16
  449. package/dist/esm/types/state.types.d.ts.map +0 -1
  450. package/dist/esm/types/state.types.js +0 -2
  451. package/dist/esm/types/state.types.js.map +0 -1
  452. package/dist/esm/types/test-bridge.types.d.ts +0 -40
  453. package/dist/esm/types/test-bridge.types.d.ts.map +0 -1
  454. package/dist/esm/types/test-bridge.types.js +0 -2
  455. package/dist/esm/types/test-bridge.types.js.map +0 -1
  456. package/dist/esm/types/validation-error.types.d.ts +0 -44
  457. package/dist/esm/types/validation-error.types.d.ts.map +0 -1
  458. package/dist/esm/types/validation-error.types.js +0 -61
  459. package/dist/esm/types/validation-error.types.js.map +0 -1
  460. package/dist/esm/types/viewport.types.d.ts +0 -55
  461. package/dist/esm/types/viewport.types.d.ts.map +0 -1
  462. package/dist/esm/types/viewport.types.js +0 -2
  463. package/dist/esm/types/viewport.types.js.map +0 -1
  464. package/dist/esm/types/window.types.d.ts +0 -16
  465. package/dist/esm/types/window.types.d.ts.map +0 -1
  466. package/dist/esm/types/window.types.js +0 -2
  467. package/dist/esm/types/window.types.js.map +0 -1
  468. package/dist/esm/utils/browser/device-detector.utils.d.ts +0 -7
  469. package/dist/esm/utils/browser/device-detector.utils.d.ts.map +0 -1
  470. package/dist/esm/utils/browser/device-detector.utils.js +0 -46
  471. package/dist/esm/utils/browser/device-detector.utils.js.map +0 -1
  472. package/dist/esm/utils/browser/index.d.ts +0 -4
  473. package/dist/esm/utils/browser/index.d.ts.map +0 -1
  474. package/dist/esm/utils/browser/index.js +0 -4
  475. package/dist/esm/utils/browser/index.js.map +0 -1
  476. package/dist/esm/utils/browser/qa-mode.utils.d.ts +0 -14
  477. package/dist/esm/utils/browser/qa-mode.utils.d.ts.map +0 -1
  478. package/dist/esm/utils/browser/qa-mode.utils.js +0 -40
  479. package/dist/esm/utils/browser/qa-mode.utils.js.map +0 -1
  480. package/dist/esm/utils/browser/utm-params.utils.d.ts +0 -7
  481. package/dist/esm/utils/browser/utm-params.utils.d.ts.map +0 -1
  482. package/dist/esm/utils/browser/utm-params.utils.js +0 -19
  483. package/dist/esm/utils/browser/utm-params.utils.js.map +0 -1
  484. package/dist/esm/utils/data/index.d.ts +0 -2
  485. package/dist/esm/utils/data/index.d.ts.map +0 -1
  486. package/dist/esm/utils/data/index.js +0 -2
  487. package/dist/esm/utils/data/index.js.map +0 -1
  488. package/dist/esm/utils/data/uuid.utils.d.ts +0 -19
  489. package/dist/esm/utils/data/uuid.utils.d.ts.map +0 -1
  490. package/dist/esm/utils/data/uuid.utils.js +0 -52
  491. package/dist/esm/utils/data/uuid.utils.js.map +0 -1
  492. package/dist/esm/utils/emitter.utils.d.ts +0 -9
  493. package/dist/esm/utils/emitter.utils.d.ts.map +0 -1
  494. package/dist/esm/utils/emitter.utils.js +0 -32
  495. package/dist/esm/utils/emitter.utils.js.map +0 -1
  496. package/dist/esm/utils/index.d.ts +0 -8
  497. package/dist/esm/utils/index.d.ts.map +0 -1
  498. package/dist/esm/utils/index.js +0 -8
  499. package/dist/esm/utils/index.js.map +0 -1
  500. package/dist/esm/utils/logging.utils.d.ts +0 -22
  501. package/dist/esm/utils/logging.utils.d.ts.map +0 -1
  502. package/dist/esm/utils/logging.utils.js +0 -82
  503. package/dist/esm/utils/logging.utils.js.map +0 -1
  504. package/dist/esm/utils/network/index.d.ts +0 -2
  505. package/dist/esm/utils/network/index.d.ts.map +0 -1
  506. package/dist/esm/utils/network/index.js +0 -2
  507. package/dist/esm/utils/network/index.js.map +0 -1
  508. package/dist/esm/utils/network/url.utils.d.ts +0 -16
  509. package/dist/esm/utils/network/url.utils.d.ts.map +0 -1
  510. package/dist/esm/utils/network/url.utils.js +0 -87
  511. package/dist/esm/utils/network/url.utils.js.map +0 -1
  512. package/dist/esm/utils/security/index.d.ts +0 -2
  513. package/dist/esm/utils/security/index.d.ts.map +0 -1
  514. package/dist/esm/utils/security/index.js +0 -2
  515. package/dist/esm/utils/security/index.js.map +0 -1
  516. package/dist/esm/utils/security/sanitize.utils.d.ts +0 -14
  517. package/dist/esm/utils/security/sanitize.utils.d.ts.map +0 -1
  518. package/dist/esm/utils/security/sanitize.utils.js +0 -118
  519. package/dist/esm/utils/security/sanitize.utils.js.map +0 -1
  520. package/dist/esm/utils/validations/config-validations.utils.d.ts +0 -19
  521. package/dist/esm/utils/validations/config-validations.utils.d.ts.map +0 -1
  522. package/dist/esm/utils/validations/config-validations.utils.js +0 -231
  523. package/dist/esm/utils/validations/config-validations.utils.js.map +0 -1
  524. package/dist/esm/utils/validations/event-validations.utils.d.ts +0 -13
  525. package/dist/esm/utils/validations/event-validations.utils.d.ts.map +0 -1
  526. package/dist/esm/utils/validations/event-validations.utils.js +0 -33
  527. package/dist/esm/utils/validations/event-validations.utils.js.map +0 -1
  528. package/dist/esm/utils/validations/index.d.ts +0 -5
  529. package/dist/esm/utils/validations/index.d.ts.map +0 -1
  530. package/dist/esm/utils/validations/index.js +0 -5
  531. package/dist/esm/utils/validations/index.js.map +0 -1
  532. package/dist/esm/utils/validations/metadata-validations.utils.d.ts +0 -23
  533. package/dist/esm/utils/validations/metadata-validations.utils.d.ts.map +0 -1
  534. package/dist/esm/utils/validations/metadata-validations.utils.js +0 -148
  535. package/dist/esm/utils/validations/metadata-validations.utils.js.map +0 -1
  536. package/dist/esm/utils/validations/type-guards.utils.d.ts +0 -9
  537. package/dist/esm/utils/validations/type-guards.utils.d.ts.map +0 -1
  538. package/dist/esm/utils/validations/type-guards.utils.js +0 -86
  539. package/dist/esm/utils/validations/type-guards.utils.js.map +0 -1
@@ -1,282 +0,0 @@
1
- import { HTML_DATA_ATTR_PREFIX, DEFAULT_VIEWPORT_COOLDOWN_PERIOD, DEFAULT_VIEWPORT_MAX_TRACKED_ELEMENTS, VIEWPORT_MUTATION_DEBOUNCE_MS, } from '../constants';
2
- import { StateManager } from '../managers/state.manager';
3
- import { EventType } from '../types';
4
- import { log } from '../utils';
5
- /**
6
- * Handles viewport visibility tracking using IntersectionObserver API.
7
- * Fires events when elements become visible for a minimum dwell time.
8
- */
9
- export class ViewportHandler extends StateManager {
10
- constructor(eventManager) {
11
- super();
12
- this.trackedElements = new Map();
13
- this.observer = null;
14
- this.mutationObserver = null;
15
- this.mutationDebounceTimer = null;
16
- this.config = null;
17
- /**
18
- * Handles intersection events from IntersectionObserver
19
- */
20
- this.handleIntersection = (entries) => {
21
- if (!this.config)
22
- return;
23
- const minDwellTime = this.config.minDwellTime ?? 1000;
24
- for (const entry of entries) {
25
- const tracked = this.trackedElements.get(entry.target);
26
- if (!tracked)
27
- continue;
28
- if (entry.isIntersecting) {
29
- // Element became visible
30
- if (tracked.startTime === null) {
31
- tracked.startTime = performance.now();
32
- // Set timer to fire event after minDwellTime
33
- tracked.timeoutId = window.setTimeout(() => {
34
- this.fireViewportEvent(tracked, entry.intersectionRatio);
35
- }, minDwellTime);
36
- }
37
- }
38
- else {
39
- // Element became hidden
40
- if (tracked.startTime !== null) {
41
- // Clear timer if element hidden before minDwellTime elapsed
42
- if (tracked.timeoutId !== null) {
43
- window.clearTimeout(tracked.timeoutId);
44
- tracked.timeoutId = null;
45
- }
46
- tracked.startTime = null;
47
- }
48
- }
49
- }
50
- };
51
- this.eventManager = eventManager;
52
- }
53
- /**
54
- * Starts tracking viewport visibility for configured elements
55
- */
56
- startTracking() {
57
- // Get viewport config from state
58
- const config = this.get('config');
59
- this.config = config.viewport ?? null;
60
- if (!this.config?.elements || this.config.elements.length === 0) {
61
- return;
62
- }
63
- // Set defaults
64
- const threshold = this.config.threshold ?? 0.5;
65
- const minDwellTime = this.config.minDwellTime ?? 1000;
66
- if (threshold < 0 || threshold > 1) {
67
- log('warn', 'ViewportHandler: Invalid threshold, must be between 0 and 1');
68
- return;
69
- }
70
- if (minDwellTime < 0) {
71
- log('warn', 'ViewportHandler: Invalid minDwellTime, must be non-negative');
72
- return;
73
- }
74
- // Check IntersectionObserver support
75
- if (typeof IntersectionObserver === 'undefined') {
76
- log('warn', 'ViewportHandler: IntersectionObserver not supported in this browser');
77
- return;
78
- }
79
- // Create observer
80
- this.observer = new IntersectionObserver(this.handleIntersection, {
81
- threshold,
82
- });
83
- // Find and observe all matching elements
84
- this.observeElements();
85
- // Set up MutationObserver to detect dynamically added elements
86
- this.setupMutationObserver();
87
- }
88
- /**
89
- * Stops tracking and cleans up resources
90
- */
91
- stopTracking() {
92
- // Disconnect observers
93
- if (this.observer) {
94
- this.observer.disconnect();
95
- this.observer = null;
96
- }
97
- if (this.mutationObserver) {
98
- this.mutationObserver.disconnect();
99
- this.mutationObserver = null;
100
- }
101
- // Clear debounce timer
102
- if (this.mutationDebounceTimer !== null) {
103
- window.clearTimeout(this.mutationDebounceTimer);
104
- this.mutationDebounceTimer = null;
105
- }
106
- // Clear all timers and tracked elements
107
- for (const tracked of this.trackedElements.values()) {
108
- if (tracked.timeoutId !== null) {
109
- window.clearTimeout(tracked.timeoutId);
110
- }
111
- }
112
- this.trackedElements.clear();
113
- }
114
- /**
115
- * Query and observe all elements matching configured elements
116
- */
117
- observeElements() {
118
- if (!this.config || !this.observer)
119
- return;
120
- const maxTrackedElements = this.config.maxTrackedElements ?? DEFAULT_VIEWPORT_MAX_TRACKED_ELEMENTS;
121
- let totalTracked = this.trackedElements.size;
122
- for (const elementConfig of this.config.elements) {
123
- try {
124
- const elements = document.querySelectorAll(elementConfig.selector);
125
- for (const element of Array.from(elements)) {
126
- // Check max limit (Phase 3)
127
- if (totalTracked >= maxTrackedElements) {
128
- log('warn', 'ViewportHandler: Maximum tracked elements reached', {
129
- data: {
130
- limit: maxTrackedElements,
131
- selector: elementConfig.selector,
132
- message: 'Some elements will not be tracked. Consider more specific selectors.',
133
- },
134
- });
135
- return; // Stop tracking more elements
136
- }
137
- // Skip if element has data-tlog-ignore attribute
138
- if (element.hasAttribute(`${HTML_DATA_ATTR_PREFIX}-ignore`)) {
139
- continue;
140
- }
141
- // Skip if already tracked
142
- if (this.trackedElements.has(element)) {
143
- continue;
144
- }
145
- // Track and observe element with identifiers
146
- this.trackedElements.set(element, {
147
- element,
148
- selector: elementConfig.selector,
149
- id: elementConfig.id,
150
- name: elementConfig.name,
151
- startTime: null,
152
- timeoutId: null,
153
- lastFiredTime: null,
154
- });
155
- this.observer?.observe(element);
156
- totalTracked++;
157
- }
158
- }
159
- catch (error) {
160
- log('warn', `ViewportHandler: Invalid selector "${elementConfig.selector}"`, { error });
161
- }
162
- }
163
- log('debug', 'ViewportHandler: Elements tracked', {
164
- data: { count: totalTracked, limit: maxTrackedElements },
165
- });
166
- }
167
- /**
168
- * Fires a viewport visible event
169
- */
170
- fireViewportEvent(tracked, visibilityRatio) {
171
- if (tracked.startTime === null)
172
- return;
173
- const dwellTime = Math.round(performance.now() - tracked.startTime);
174
- // Check data-tlog-ignore again (element might have changed)
175
- if (tracked.element.hasAttribute('data-tlog-ignore')) {
176
- return;
177
- }
178
- // Check cooldown period to prevent repeated events from carousels/sticky elements
179
- const cooldownPeriod = this.config?.cooldownPeriod ?? DEFAULT_VIEWPORT_COOLDOWN_PERIOD;
180
- const now = Date.now();
181
- if (tracked.lastFiredTime !== null && now - tracked.lastFiredTime < cooldownPeriod) {
182
- log('debug', 'ViewportHandler: Event suppressed by cooldown period', {
183
- data: {
184
- selector: tracked.selector,
185
- cooldownRemaining: cooldownPeriod - (now - tracked.lastFiredTime),
186
- },
187
- });
188
- tracked.startTime = null;
189
- tracked.timeoutId = null;
190
- return;
191
- }
192
- const eventData = {
193
- selector: tracked.selector,
194
- dwellTime,
195
- visibilityRatio,
196
- ...(tracked.id !== undefined && { id: tracked.id }),
197
- ...(tracked.name !== undefined && { name: tracked.name }),
198
- };
199
- this.eventManager.track({
200
- type: EventType.VIEWPORT_VISIBLE,
201
- viewport_data: eventData,
202
- });
203
- // Reset tracking state after firing event and record timestamp
204
- tracked.startTime = null;
205
- tracked.timeoutId = null;
206
- tracked.lastFiredTime = now;
207
- }
208
- /**
209
- * Sets up MutationObserver to detect dynamically added elements
210
- */
211
- setupMutationObserver() {
212
- if (!this.config || typeof MutationObserver === 'undefined') {
213
- return;
214
- }
215
- // Check if document.body exists
216
- if (!document.body) {
217
- log('warn', 'ViewportHandler: document.body not available, skipping MutationObserver setup');
218
- return;
219
- }
220
- this.mutationObserver = new MutationObserver((mutations) => {
221
- let hasAddedNodes = false;
222
- // Check what changed
223
- for (const mutation of mutations) {
224
- if (mutation.type === 'childList') {
225
- if (mutation.addedNodes.length > 0) {
226
- hasAddedNodes = true;
227
- }
228
- if (mutation.removedNodes.length > 0) {
229
- // Clean up removed nodes immediately
230
- this.cleanupRemovedNodes(mutation.removedNodes);
231
- }
232
- }
233
- }
234
- // Debounce re-observing for added nodes (batch multiple mutations)
235
- if (hasAddedNodes) {
236
- if (this.mutationDebounceTimer !== null) {
237
- window.clearTimeout(this.mutationDebounceTimer);
238
- }
239
- this.mutationDebounceTimer = window.setTimeout(() => {
240
- this.observeElements();
241
- this.mutationDebounceTimer = null;
242
- }, VIEWPORT_MUTATION_DEBOUNCE_MS);
243
- }
244
- });
245
- // Observe the entire document for added/removed nodes
246
- this.mutationObserver.observe(document.body, {
247
- childList: true,
248
- subtree: true,
249
- });
250
- }
251
- /**
252
- * Cleans up tracking for removed DOM nodes
253
- */
254
- cleanupRemovedNodes(removedNodes) {
255
- removedNodes.forEach((node) => {
256
- if (node.nodeType !== 1)
257
- return; // 1 = ELEMENT_NODE
258
- const element = node;
259
- const tracked = this.trackedElements.get(element);
260
- if (tracked) {
261
- // Clear pending timer
262
- if (tracked.timeoutId !== null) {
263
- window.clearTimeout(tracked.timeoutId);
264
- }
265
- // Unobserve and remove from tracking
266
- this.observer?.unobserve(element);
267
- this.trackedElements.delete(element);
268
- }
269
- // Also check descendants
270
- const descendants = Array.from(this.trackedElements.keys()).filter((el) => element.contains(el));
271
- descendants.forEach((el) => {
272
- const descendantTracked = this.trackedElements.get(el);
273
- if (descendantTracked && descendantTracked.timeoutId !== null) {
274
- window.clearTimeout(descendantTracked.timeoutId);
275
- }
276
- this.observer?.unobserve(el);
277
- this.trackedElements.delete(el);
278
- });
279
- });
280
- }
281
- }
282
- //# sourceMappingURL=viewport.handler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"viewport.handler.js","sourceRoot":"","sources":["../../../src/handlers/viewport.handler.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { MetadataType } from '../types';
2
- import { StateManager } from '../managers/state.manager';
3
- declare global {
4
- interface Window {
5
- gtag?: (...args: unknown[]) => void;
6
- dataLayer?: unknown[];
7
- }
8
- }
9
- export declare class GoogleAnalyticsIntegration extends StateManager {
10
- private isInitialized;
11
- initialize(): Promise<void>;
12
- trackEvent(eventName: string, metadata: Record<string, MetadataType> | Record<string, MetadataType>[]): void;
13
- cleanup(): void;
14
- private isScriptAlreadyLoaded;
15
- private loadScript;
16
- private configureGtag;
17
- }
18
- //# sourceMappingURL=google-analytics.integration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"google-analytics.integration.d.ts","sourceRoot":"","sources":["../../../src/integrations/google-analytics.integration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;QACpC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;KACvB;CACF;AAED,qBAAa,0BAA2B,SAAQ,YAAY;IAC1D,OAAO,CAAC,aAAa,CAAS;IAExB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0BjC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,GAAG,IAAI;IAa5G,OAAO,IAAI,IAAI;IAQf,OAAO,CAAC,qBAAqB;YAWf,UAAU;IAkBxB,OAAO,CAAC,aAAa;CAYtB"}
@@ -1,86 +0,0 @@
1
- import { log } from '../utils';
2
- import { StateManager } from '../managers/state.manager';
3
- export class GoogleAnalyticsIntegration extends StateManager {
4
- constructor() {
5
- super(...arguments);
6
- this.isInitialized = false;
7
- }
8
- async initialize() {
9
- if (this.isInitialized) {
10
- return;
11
- }
12
- const measurementId = this.get('config').integrations?.googleAnalytics?.measurementId;
13
- const userId = this.get('userId');
14
- if (!measurementId?.trim() || !userId?.trim()) {
15
- return;
16
- }
17
- try {
18
- if (this.isScriptAlreadyLoaded()) {
19
- this.isInitialized = true;
20
- return;
21
- }
22
- await this.loadScript(measurementId);
23
- this.configureGtag(measurementId, userId);
24
- this.isInitialized = true;
25
- }
26
- catch (error) {
27
- log('error', 'Google Analytics initialization failed', { error });
28
- }
29
- }
30
- trackEvent(eventName, metadata) {
31
- if (!eventName?.trim() || !this.isInitialized || typeof window.gtag !== 'function') {
32
- return;
33
- }
34
- try {
35
- const normalizedMetadata = Array.isArray(metadata) ? { items: metadata } : metadata;
36
- window.gtag('event', eventName, normalizedMetadata);
37
- }
38
- catch (error) {
39
- log('error', 'Google Analytics event tracking failed', { error });
40
- }
41
- }
42
- cleanup() {
43
- this.isInitialized = false;
44
- const script = document.getElementById('tracelog-ga-script');
45
- if (script) {
46
- script.remove();
47
- }
48
- }
49
- isScriptAlreadyLoaded() {
50
- // Check if we already loaded the script
51
- if (document.getElementById('tracelog-ga-script')) {
52
- return true;
53
- }
54
- // Check if GA is already loaded by another source
55
- const existingGAScript = document.querySelector('script[src*="googletagmanager.com/gtag/js"]');
56
- return !!existingGAScript;
57
- }
58
- async loadScript(measurementId) {
59
- return new Promise((resolve, reject) => {
60
- const script = document.createElement('script');
61
- script.id = 'tracelog-ga-script';
62
- script.async = true;
63
- script.src = `https://www.googletagmanager.com/gtag/js?id=${measurementId}`;
64
- script.onload = () => {
65
- resolve();
66
- };
67
- script.onerror = () => {
68
- reject(new Error('Failed to load Google Analytics script'));
69
- };
70
- document.head.appendChild(script);
71
- });
72
- }
73
- configureGtag(measurementId, userId) {
74
- const gaScriptConfig = document.createElement('script');
75
- gaScriptConfig.innerHTML = `
76
- window.dataLayer = window.dataLayer || [];
77
- function gtag(){dataLayer.push(arguments);}
78
- gtag('js', new Date());
79
- gtag('config', '${measurementId}', {
80
- 'user_id': '${userId}'
81
- });
82
- `;
83
- document.head.appendChild(gaScriptConfig);
84
- }
85
- }
86
- //# sourceMappingURL=google-analytics.integration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"google-analytics.integration.js","sourceRoot":"","sources":["../../../src/integrations/google-analytics.integration.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { EventListenerManager } from './listeners.types';
2
- export declare class ActivityListenerManager implements EventListenerManager {
3
- private readonly onActivity;
4
- private readonly options;
5
- constructor(onActivity: () => void);
6
- setup(): void;
7
- cleanup(): void;
8
- }
9
- //# sourceMappingURL=activity-listener-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"activity-listener-manager.d.ts","sourceRoot":"","sources":["../../../src/listeners/activity-listener-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,qBAAa,uBAAwB,YAAW,oBAAoB;IAClE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEjC,UAAU,EAAE,MAAM,IAAI;IAIlC,KAAK,IAAI,IAAI;IAWb,OAAO,IAAI,IAAI;CAShB"}
@@ -1,29 +0,0 @@
1
- import { log } from '../utils';
2
- export class ActivityListenerManager {
3
- constructor(onActivity) {
4
- this.options = { passive: true };
5
- this.onActivity = onActivity;
6
- }
7
- setup() {
8
- try {
9
- window.addEventListener('scroll', this.onActivity, this.options);
10
- window.addEventListener('resize', this.onActivity, this.options);
11
- window.addEventListener('focus', this.onActivity, this.options);
12
- }
13
- catch (error) {
14
- log('error', 'Failed to setup activity listeners', { error });
15
- throw error;
16
- }
17
- }
18
- cleanup() {
19
- try {
20
- window.removeEventListener('scroll', this.onActivity);
21
- window.removeEventListener('resize', this.onActivity);
22
- window.removeEventListener('focus', this.onActivity);
23
- }
24
- catch (error) {
25
- log('warn', 'Error during activity listeners cleanup', { error });
26
- }
27
- }
28
- }
29
- //# sourceMappingURL=activity-listener-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"activity-listener-manager.js","sourceRoot":"","sources":["../../../src/listeners/activity-listener-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,MAAM,OAAO,uBAAuB;IAIlC,YAAY,UAAsB;QAFjB,YAAO,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAG3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,IAAI,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACjE,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACjE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,OAAO,EAAE,oCAAoC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC;YACH,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACtD,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACtD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,EAAE,yCAAyC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;CACF"}
@@ -1,7 +0,0 @@
1
- export { ActivityListenerManager } from './activity-listener-manager';
2
- export { TouchListenerManager } from './touch-listener-manager';
3
- export { MouseListenerManager, KeyboardListenerManager } from './input-listener-managers';
4
- export { VisibilityListenerManager } from './visibility-listener-manager';
5
- export { UnloadListenerManager } from './unload-listener-manager';
6
- export type { EventListenerManager } from './listeners.types';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/listeners/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,6 +0,0 @@
1
- export { ActivityListenerManager } from './activity-listener-manager';
2
- export { TouchListenerManager } from './touch-listener-manager';
3
- export { MouseListenerManager, KeyboardListenerManager } from './input-listener-managers';
4
- export { VisibilityListenerManager } from './visibility-listener-manager';
5
- export { UnloadListenerManager } from './unload-listener-manager';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/listeners/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -1,25 +0,0 @@
1
- import { EventListenerManager } from './listeners.types';
2
- /**
3
- * Base class for input listener managers to reduce code duplication
4
- */
5
- declare abstract class BaseInputListenerManager implements EventListenerManager {
6
- protected readonly onActivity: () => void;
7
- protected readonly options: {
8
- passive: boolean;
9
- };
10
- protected abstract readonly events: string[];
11
- protected abstract readonly logPrefix: string;
12
- constructor(onActivity: () => void);
13
- setup(): void;
14
- cleanup(): void;
15
- }
16
- export declare class MouseListenerManager extends BaseInputListenerManager {
17
- protected readonly events: string[];
18
- protected readonly logPrefix = "MouseListenerManager";
19
- }
20
- export declare class KeyboardListenerManager extends BaseInputListenerManager {
21
- protected readonly events: string[];
22
- protected readonly logPrefix = "KeyboardListenerManager";
23
- }
24
- export {};
25
- //# sourceMappingURL=input-listener-managers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-listener-managers.d.ts","sourceRoot":"","sources":["../../../src/listeners/input-listener-managers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD;;GAEG;AACH,uBAAe,wBAAyB,YAAW,oBAAoB;IACrE,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;IAC1C,SAAS,CAAC,QAAQ,CAAC,OAAO;;MAAqB;IAC/C,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;gBAElC,UAAU,EAAE,MAAM,IAAI;IAIlC,KAAK,IAAI,IAAI;IAUb,OAAO,IAAI,IAAI;CAShB;AAED,qBAAa,oBAAqB,SAAQ,wBAAwB;IAChE,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAuC;IAChE,SAAS,CAAC,QAAQ,CAAC,SAAS,0BAA0B;CACvD;AAED,qBAAa,uBAAwB,SAAQ,wBAAwB;IACnE,SAAS,CAAC,QAAQ,CAAC,MAAM,WAAe;IACxC,SAAS,CAAC,QAAQ,CAAC,SAAS,6BAA6B;CAC1D"}
@@ -1,45 +0,0 @@
1
- import { log } from '../utils';
2
- /**
3
- * Base class for input listener managers to reduce code duplication
4
- */
5
- class BaseInputListenerManager {
6
- constructor(onActivity) {
7
- this.options = { passive: true };
8
- this.onActivity = onActivity;
9
- }
10
- setup() {
11
- try {
12
- this.events.forEach((event) => {
13
- window.addEventListener(event, this.onActivity, this.options);
14
- });
15
- }
16
- catch (error) {
17
- log('error', `Failed to setup ${this.logPrefix.toLowerCase()} listeners`, { error });
18
- }
19
- }
20
- cleanup() {
21
- try {
22
- this.events.forEach((event) => {
23
- window.removeEventListener(event, this.onActivity);
24
- });
25
- }
26
- catch (error) {
27
- log('warn', `Error during ${this.logPrefix.toLowerCase()} listeners cleanup`, { error });
28
- }
29
- }
30
- }
31
- export class MouseListenerManager extends BaseInputListenerManager {
32
- constructor() {
33
- super(...arguments);
34
- this.events = ['mousemove', 'mousedown', 'wheel'];
35
- this.logPrefix = 'MouseListenerManager';
36
- }
37
- }
38
- export class KeyboardListenerManager extends BaseInputListenerManager {
39
- constructor() {
40
- super(...arguments);
41
- this.events = ['keydown'];
42
- this.logPrefix = 'KeyboardListenerManager';
43
- }
44
- }
45
- //# sourceMappingURL=input-listener-managers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"input-listener-managers.js","sourceRoot":"","sources":["../../../src/listeners/input-listener-managers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B;;GAEG;AACH,MAAe,wBAAwB;IAMrC,YAAY,UAAsB;QAJf,YAAO,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAK7C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5B,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,OAAO,EAAE,mBAAmB,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5B,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,EAAE,gBAAgB,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,oBAAoB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,wBAAwB;IAAlE;;QACqB,WAAM,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAC7C,cAAS,GAAG,sBAAsB,CAAC;IACxD,CAAC;CAAA;AAED,MAAM,OAAO,uBAAwB,SAAQ,wBAAwB;IAArE;;QACqB,WAAM,GAAG,CAAC,SAAS,CAAC,CAAC;QACrB,cAAS,GAAG,yBAAyB,CAAC;IAC3D,CAAC;CAAA"}
@@ -1,5 +0,0 @@
1
- export interface EventListenerManager {
2
- setup(): void;
3
- cleanup(): void;
4
- }
5
- //# sourceMappingURL=listeners.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"listeners.types.d.ts","sourceRoot":"","sources":["../../../src/listeners/listeners.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,KAAK,IAAI,IAAI,CAAC;IACd,OAAO,IAAI,IAAI,CAAC;CACjB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=listeners.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"listeners.types.js","sourceRoot":"","sources":["../../../src/listeners/listeners.types.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- import { EventListenerManager } from './listeners.types';
2
- export declare class TouchListenerManager implements EventListenerManager {
3
- private readonly onActivity;
4
- private readonly options;
5
- constructor(onActivity: () => void);
6
- setup(): void;
7
- cleanup(): void;
8
- }
9
- //# sourceMappingURL=touch-listener-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"touch-listener-manager.d.ts","sourceRoot":"","sources":["../../../src/listeners/touch-listener-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGzD,qBAAa,oBAAqB,YAAW,oBAAoB;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEjC,UAAU,EAAE,MAAM,IAAI;IAIlC,KAAK,IAAI,IAAI;IAYb,OAAO,IAAI,IAAI;CAUhB"}
@@ -1,31 +0,0 @@
1
- import { log } from '../utils';
2
- export class TouchListenerManager {
3
- constructor(onActivity) {
4
- this.options = { passive: true };
5
- this.onActivity = onActivity;
6
- }
7
- setup() {
8
- try {
9
- window.addEventListener('touchstart', this.onActivity, this.options);
10
- window.addEventListener('touchmove', this.onActivity, this.options);
11
- window.addEventListener('touchend', this.onActivity, this.options);
12
- window.addEventListener('orientationchange', this.onActivity, this.options);
13
- }
14
- catch (error) {
15
- log('error', 'Failed to setup touch listeners', { error });
16
- throw error;
17
- }
18
- }
19
- cleanup() {
20
- try {
21
- window.removeEventListener('touchstart', this.onActivity);
22
- window.removeEventListener('touchmove', this.onActivity);
23
- window.removeEventListener('touchend', this.onActivity);
24
- window.removeEventListener('orientationchange', this.onActivity);
25
- }
26
- catch (error) {
27
- log('warn', 'Error during touch listeners cleanup', { error });
28
- }
29
- }
30
- }
31
- //# sourceMappingURL=touch-listener-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"touch-listener-manager.js","sourceRoot":"","sources":["../../../src/listeners/touch-listener-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,MAAM,OAAO,oBAAoB;IAI/B,YAAY,UAAsB;QAFjB,YAAO,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAG3C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,IAAI,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACpE,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACnE,MAAM,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,OAAO,EAAE,iCAAiC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC;YACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1D,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACzD,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACxD,MAAM,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,MAAM,EAAE,sCAAsC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;CACF"}