@scalebun-release/web 2.2.2

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 (1062) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +57 -0
  3. package/dist/bootstrap/FeatureRegistry.d.ts +44 -0
  4. package/dist/bootstrap/FeatureRegistry.d.ts.map +1 -0
  5. package/dist/bootstrap/FeatureRegistry.js +85 -0
  6. package/dist/bootstrap/FeatureRegistry.js.map +1 -0
  7. package/dist/bootstrap/SDKBootstrapper.d.ts +37 -0
  8. package/dist/bootstrap/SDKBootstrapper.d.ts.map +1 -0
  9. package/dist/bootstrap/SDKBootstrapper.js +346 -0
  10. package/dist/bootstrap/SDKBootstrapper.js.map +1 -0
  11. package/dist/browser.d.ts +51 -0
  12. package/dist/browser.d.ts.map +1 -0
  13. package/dist/browser.js +86 -0
  14. package/dist/browser.js.map +1 -0
  15. package/dist/config/endpoints.d.ts +12 -0
  16. package/dist/config/endpoints.d.ts.map +1 -0
  17. package/dist/config/endpoints.js +12 -0
  18. package/dist/config/endpoints.js.map +1 -0
  19. package/dist/config/schema.d.ts +120 -0
  20. package/dist/config/schema.d.ts.map +1 -0
  21. package/dist/config/schema.js +117 -0
  22. package/dist/config/schema.js.map +1 -0
  23. package/dist/core/breadcrumbs.d.ts +56 -0
  24. package/dist/core/breadcrumbs.d.ts.map +1 -0
  25. package/dist/core/breadcrumbs.js +141 -0
  26. package/dist/core/breadcrumbs.js.map +1 -0
  27. package/dist/core/capabilities.d.ts +38 -0
  28. package/dist/core/capabilities.d.ts.map +1 -0
  29. package/dist/core/capabilities.js +78 -0
  30. package/dist/core/capabilities.js.map +1 -0
  31. package/dist/core/consent.d.ts +17 -0
  32. package/dist/core/consent.d.ts.map +1 -0
  33. package/dist/core/consent.js +38 -0
  34. package/dist/core/consent.js.map +1 -0
  35. package/dist/core/csp.d.ts +31 -0
  36. package/dist/core/csp.d.ts.map +1 -0
  37. package/dist/core/csp.js +74 -0
  38. package/dist/core/csp.js.map +1 -0
  39. package/dist/core/evalContext.d.ts +7 -0
  40. package/dist/core/evalContext.d.ts.map +1 -0
  41. package/dist/core/evalContext.js +22 -0
  42. package/dist/core/evalContext.js.map +1 -0
  43. package/dist/core/ids.d.ts +6 -0
  44. package/dist/core/ids.d.ts.map +1 -0
  45. package/dist/core/ids.js +35 -0
  46. package/dist/core/ids.js.map +1 -0
  47. package/dist/core/index.d.ts +16 -0
  48. package/dist/core/index.d.ts.map +1 -0
  49. package/dist/core/index.js +16 -0
  50. package/dist/core/index.js.map +1 -0
  51. package/dist/core/lifecycle.d.ts +4 -0
  52. package/dist/core/lifecycle.d.ts.map +1 -0
  53. package/dist/core/lifecycle.js +24 -0
  54. package/dist/core/lifecycle.js.map +1 -0
  55. package/dist/core/logger.d.ts +12 -0
  56. package/dist/core/logger.d.ts.map +1 -0
  57. package/dist/core/logger.js +14 -0
  58. package/dist/core/logger.js.map +1 -0
  59. package/dist/core/observe.d.ts +3 -0
  60. package/dist/core/observe.d.ts.map +1 -0
  61. package/dist/core/observe.js +22 -0
  62. package/dist/core/observe.js.map +1 -0
  63. package/dist/core/pageContext.d.ts +13 -0
  64. package/dist/core/pageContext.d.ts.map +1 -0
  65. package/dist/core/pageContext.js +90 -0
  66. package/dist/core/pageContext.js.map +1 -0
  67. package/dist/core/prune.d.ts +31 -0
  68. package/dist/core/prune.d.ts.map +1 -0
  69. package/dist/core/prune.js +112 -0
  70. package/dist/core/prune.js.map +1 -0
  71. package/dist/core/redact.d.ts +15 -0
  72. package/dist/core/redact.d.ts.map +1 -0
  73. package/dist/core/redact.js +72 -0
  74. package/dist/core/redact.js.map +1 -0
  75. package/dist/core/replayCoord.d.ts +22 -0
  76. package/dist/core/replayCoord.d.ts.map +1 -0
  77. package/dist/core/replayCoord.js +20 -0
  78. package/dist/core/replayCoord.js.map +1 -0
  79. package/dist/core/retry.d.ts +25 -0
  80. package/dist/core/retry.d.ts.map +1 -0
  81. package/dist/core/retry.js +44 -0
  82. package/dist/core/retry.js.map +1 -0
  83. package/dist/core/runtime.d.ts +28 -0
  84. package/dist/core/runtime.d.ts.map +1 -0
  85. package/dist/core/runtime.js +67 -0
  86. package/dist/core/runtime.js.map +1 -0
  87. package/dist/core/scrollDepth.d.ts +48 -0
  88. package/dist/core/scrollDepth.d.ts.map +1 -0
  89. package/dist/core/scrollDepth.js +63 -0
  90. package/dist/core/scrollDepth.js.map +1 -0
  91. package/dist/core/uiStateReader.d.ts +35 -0
  92. package/dist/core/uiStateReader.d.ts.map +1 -0
  93. package/dist/core/uiStateReader.js +47 -0
  94. package/dist/core/uiStateReader.js.map +1 -0
  95. package/dist/core/version.generated.d.ts +9 -0
  96. package/dist/core/version.generated.d.ts.map +1 -0
  97. package/dist/core/version.generated.js +9 -0
  98. package/dist/core/version.generated.js.map +1 -0
  99. package/dist/debug/index.d.ts +6 -0
  100. package/dist/debug/index.d.ts.map +1 -0
  101. package/dist/debug/index.js +2 -0
  102. package/dist/debug/index.js.map +1 -0
  103. package/dist/features/analytics/AnalyticsFeature.d.ts +123 -0
  104. package/dist/features/analytics/AnalyticsFeature.d.ts.map +1 -0
  105. package/dist/features/analytics/AnalyticsFeature.js +785 -0
  106. package/dist/features/analytics/AnalyticsFeature.js.map +1 -0
  107. package/dist/features/analytics/autocapture.d.ts +13 -0
  108. package/dist/features/analytics/autocapture.d.ts.map +1 -0
  109. package/dist/features/analytics/autocapture.js +436 -0
  110. package/dist/features/analytics/autocapture.js.map +1 -0
  111. package/dist/features/analytics/governance.d.ts +15 -0
  112. package/dist/features/analytics/governance.d.ts.map +1 -0
  113. package/dist/features/analytics/governance.js +30 -0
  114. package/dist/features/analytics/governance.js.map +1 -0
  115. package/dist/features/analytics/revenue.d.ts +77 -0
  116. package/dist/features/analytics/revenue.d.ts.map +1 -0
  117. package/dist/features/analytics/revenue.js +56 -0
  118. package/dist/features/analytics/revenue.js.map +1 -0
  119. package/dist/features/analytics/sampler.d.ts +2 -0
  120. package/dist/features/analytics/sampler.d.ts.map +1 -0
  121. package/dist/features/analytics/sampler.js +24 -0
  122. package/dist/features/analytics/sampler.js.map +1 -0
  123. package/dist/features/analytics/subscription.d.ts +35 -0
  124. package/dist/features/analytics/subscription.d.ts.map +1 -0
  125. package/dist/features/analytics/subscription.js +95 -0
  126. package/dist/features/analytics/subscription.js.map +1 -0
  127. package/dist/features/attention/index.d.ts +29 -0
  128. package/dist/features/attention/index.d.ts.map +1 -0
  129. package/dist/features/attention/index.js +128 -0
  130. package/dist/features/attention/index.js.map +1 -0
  131. package/dist/features/bugreport/BugReportFeature.d.ts +37 -0
  132. package/dist/features/bugreport/BugReportFeature.d.ts.map +1 -0
  133. package/dist/features/bugreport/BugReportFeature.js +56 -0
  134. package/dist/features/bugreport/BugReportFeature.js.map +1 -0
  135. package/dist/features/bugreport/collect.d.ts +33 -0
  136. package/dist/features/bugreport/collect.d.ts.map +1 -0
  137. package/dist/features/bugreport/collect.js +30 -0
  138. package/dist/features/bugreport/collect.js.map +1 -0
  139. package/dist/features/bugreport/widget.d.ts +40 -0
  140. package/dist/features/bugreport/widget.d.ts.map +1 -0
  141. package/dist/features/bugreport/widget.js +145 -0
  142. package/dist/features/bugreport/widget.js.map +1 -0
  143. package/dist/features/coach/CoachmarkFeature.d.ts +78 -0
  144. package/dist/features/coach/CoachmarkFeature.d.ts.map +1 -0
  145. package/dist/features/coach/CoachmarkFeature.js +161 -0
  146. package/dist/features/coach/CoachmarkFeature.js.map +1 -0
  147. package/dist/features/coach/anchor.d.ts +32 -0
  148. package/dist/features/coach/anchor.d.ts.map +1 -0
  149. package/dist/features/coach/anchor.js +128 -0
  150. package/dist/features/coach/anchor.js.map +1 -0
  151. package/dist/features/coach/observers.d.ts +17 -0
  152. package/dist/features/coach/observers.d.ts.map +1 -0
  153. package/dist/features/coach/observers.js +49 -0
  154. package/dist/features/coach/observers.js.map +1 -0
  155. package/dist/features/coach/overlay.d.ts +15 -0
  156. package/dist/features/coach/overlay.d.ts.map +1 -0
  157. package/dist/features/coach/overlay.js +205 -0
  158. package/dist/features/coach/overlay.js.map +1 -0
  159. package/dist/features/coach/position.d.ts +9 -0
  160. package/dist/features/coach/position.d.ts.map +1 -0
  161. package/dist/features/coach/position.js +83 -0
  162. package/dist/features/coach/position.js.map +1 -0
  163. package/dist/features/coach/predicate.d.ts +10 -0
  164. package/dist/features/coach/predicate.d.ts.map +1 -0
  165. package/dist/features/coach/predicate.js +36 -0
  166. package/dist/features/coach/predicate.js.map +1 -0
  167. package/dist/features/coach/tour.d.ts +55 -0
  168. package/dist/features/coach/tour.d.ts.map +1 -0
  169. package/dist/features/coach/tour.js +181 -0
  170. package/dist/features/coach/tour.js.map +1 -0
  171. package/dist/features/coach/types.d.ts +161 -0
  172. package/dist/features/coach/types.d.ts.map +1 -0
  173. package/dist/features/coach/types.js +2 -0
  174. package/dist/features/coach/types.js.map +1 -0
  175. package/dist/features/coach/wait.d.ts +34 -0
  176. package/dist/features/coach/wait.d.ts.map +1 -0
  177. package/dist/features/coach/wait.js +107 -0
  178. package/dist/features/coach/wait.js.map +1 -0
  179. package/dist/features/config/ConfigFeature.d.ts +117 -0
  180. package/dist/features/config/ConfigFeature.d.ts.map +1 -0
  181. package/dist/features/config/ConfigFeature.js +437 -0
  182. package/dist/features/config/ConfigFeature.js.map +1 -0
  183. package/dist/features/config/bucketing.d.ts +20 -0
  184. package/dist/features/config/bucketing.d.ts.map +1 -0
  185. package/dist/features/config/bucketing.js +37 -0
  186. package/dist/features/config/bucketing.js.map +1 -0
  187. package/dist/features/config/configStore.d.ts +11 -0
  188. package/dist/features/config/configStore.d.ts.map +1 -0
  189. package/dist/features/config/configStore.js +66 -0
  190. package/dist/features/config/configStore.js.map +1 -0
  191. package/dist/features/config/targeting.d.ts +11 -0
  192. package/dist/features/config/targeting.d.ts.map +1 -0
  193. package/dist/features/config/targeting.js +57 -0
  194. package/dist/features/config/targeting.js.map +1 -0
  195. package/dist/features/config/types.d.ts +100 -0
  196. package/dist/features/config/types.d.ts.map +1 -0
  197. package/dist/features/config/types.js +9 -0
  198. package/dist/features/config/types.js.map +1 -0
  199. package/dist/features/console/ConsoleFeature.d.ts +31 -0
  200. package/dist/features/console/ConsoleFeature.d.ts.map +1 -0
  201. package/dist/features/console/ConsoleFeature.js +98 -0
  202. package/dist/features/console/ConsoleFeature.js.map +1 -0
  203. package/dist/features/console/normalize.d.ts +18 -0
  204. package/dist/features/console/normalize.d.ts.map +1 -0
  205. package/dist/features/console/normalize.js +64 -0
  206. package/dist/features/console/normalize.js.map +1 -0
  207. package/dist/features/console/serialize.d.ts +24 -0
  208. package/dist/features/console/serialize.d.ts.map +1 -0
  209. package/dist/features/console/serialize.js +99 -0
  210. package/dist/features/console/serialize.js.map +1 -0
  211. package/dist/features/console/throttle.d.ts +27 -0
  212. package/dist/features/console/throttle.d.ts.map +1 -0
  213. package/dist/features/console/throttle.js +37 -0
  214. package/dist/features/console/throttle.js.map +1 -0
  215. package/dist/features/crash/CrashFeature.d.ts +46 -0
  216. package/dist/features/crash/CrashFeature.d.ts.map +1 -0
  217. package/dist/features/crash/CrashFeature.js +173 -0
  218. package/dist/features/crash/CrashFeature.js.map +1 -0
  219. package/dist/features/crash/liveness.d.ts +30 -0
  220. package/dist/features/crash/liveness.d.ts.map +1 -0
  221. package/dist/features/crash/liveness.js +131 -0
  222. package/dist/features/crash/liveness.js.map +1 -0
  223. package/dist/features/engage/EngageFeature.d.ts +67 -0
  224. package/dist/features/engage/EngageFeature.d.ts.map +1 -0
  225. package/dist/features/engage/EngageFeature.js +243 -0
  226. package/dist/features/engage/EngageFeature.js.map +1 -0
  227. package/dist/features/engage/attachments.d.ts +24 -0
  228. package/dist/features/engage/attachments.d.ts.map +1 -0
  229. package/dist/features/engage/attachments.js +209 -0
  230. package/dist/features/engage/attachments.js.map +1 -0
  231. package/dist/features/engage/gameLogic.d.ts +60 -0
  232. package/dist/features/engage/gameLogic.d.ts.map +1 -0
  233. package/dist/features/engage/gameLogic.js +213 -0
  234. package/dist/features/engage/gameLogic.js.map +1 -0
  235. package/dist/features/engage/gameResolver.d.ts +35 -0
  236. package/dist/features/engage/gameResolver.d.ts.map +1 -0
  237. package/dist/features/engage/gameResolver.js +81 -0
  238. package/dist/features/engage/gameResolver.js.map +1 -0
  239. package/dist/features/engage/gameTypes.d.ts +76 -0
  240. package/dist/features/engage/gameTypes.d.ts.map +1 -0
  241. package/dist/features/engage/gameTypes.js +17 -0
  242. package/dist/features/engage/gameTypes.js.map +1 -0
  243. package/dist/features/engage/inappSlots.d.ts +39 -0
  244. package/dist/features/engage/inappSlots.d.ts.map +1 -0
  245. package/dist/features/engage/inappSlots.js +50 -0
  246. package/dist/features/engage/inappSlots.js.map +1 -0
  247. package/dist/features/engage/normalize.d.ts +11 -0
  248. package/dist/features/engage/normalize.d.ts.map +1 -0
  249. package/dist/features/engage/normalize.js +210 -0
  250. package/dist/features/engage/normalize.js.map +1 -0
  251. package/dist/features/engage/richInApp.d.ts +64 -0
  252. package/dist/features/engage/richInApp.d.ts.map +1 -0
  253. package/dist/features/engage/richInApp.js +1082 -0
  254. package/dist/features/engage/richInApp.js.map +1 -0
  255. package/dist/features/engage/runtime.d.ts +89 -0
  256. package/dist/features/engage/runtime.d.ts.map +1 -0
  257. package/dist/features/engage/runtime.js +364 -0
  258. package/dist/features/engage/runtime.js.map +1 -0
  259. package/dist/features/engage/shakeDetector.d.ts +6 -0
  260. package/dist/features/engage/shakeDetector.d.ts.map +1 -0
  261. package/dist/features/engage/shakeDetector.js +105 -0
  262. package/dist/features/engage/shakeDetector.js.map +1 -0
  263. package/dist/features/engage/theme.d.ts +129 -0
  264. package/dist/features/engage/theme.d.ts.map +1 -0
  265. package/dist/features/engage/theme.js +270 -0
  266. package/dist/features/engage/theme.js.map +1 -0
  267. package/dist/features/engage/throttle.d.ts +41 -0
  268. package/dist/features/engage/throttle.d.ts.map +1 -0
  269. package/dist/features/engage/throttle.js +220 -0
  270. package/dist/features/engage/throttle.js.map +1 -0
  271. package/dist/features/engage/transport.d.ts +62 -0
  272. package/dist/features/engage/transport.d.ts.map +1 -0
  273. package/dist/features/engage/transport.js +185 -0
  274. package/dist/features/engage/transport.js.map +1 -0
  275. package/dist/features/engage/triggerEngine.d.ts +39 -0
  276. package/dist/features/engage/triggerEngine.d.ts.map +1 -0
  277. package/dist/features/engage/triggerEngine.js +105 -0
  278. package/dist/features/engage/triggerEngine.js.map +1 -0
  279. package/dist/features/engage/types.d.ts +271 -0
  280. package/dist/features/engage/types.d.ts.map +1 -0
  281. package/dist/features/engage/types.js +3 -0
  282. package/dist/features/engage/types.js.map +1 -0
  283. package/dist/features/engage/widget/InAppWidget.d.ts +10 -0
  284. package/dist/features/engage/widget/InAppWidget.d.ts.map +1 -0
  285. package/dist/features/engage/widget/InAppWidget.js +137 -0
  286. package/dist/features/engage/widget/InAppWidget.js.map +1 -0
  287. package/dist/features/engage/widget/SurveyWidget.d.ts +11 -0
  288. package/dist/features/engage/widget/SurveyWidget.d.ts.map +1 -0
  289. package/dist/features/engage/widget/SurveyWidget.js +547 -0
  290. package/dist/features/engage/widget/SurveyWidget.js.map +1 -0
  291. package/dist/features/errors/ErrorsFeature.d.ts +62 -0
  292. package/dist/features/errors/ErrorsFeature.d.ts.map +1 -0
  293. package/dist/features/errors/ErrorsFeature.js +209 -0
  294. package/dist/features/errors/ErrorsFeature.js.map +1 -0
  295. package/dist/features/errors/causes.d.ts +15 -0
  296. package/dist/features/errors/causes.d.ts.map +1 -0
  297. package/dist/features/errors/causes.js +29 -0
  298. package/dist/features/errors/causes.js.map +1 -0
  299. package/dist/features/errors/dedup.d.ts +28 -0
  300. package/dist/features/errors/dedup.d.ts.map +1 -0
  301. package/dist/features/errors/dedup.js +42 -0
  302. package/dist/features/errors/dedup.js.map +1 -0
  303. package/dist/features/errors/group/fingerprint.d.ts +13 -0
  304. package/dist/features/errors/group/fingerprint.d.ts.map +1 -0
  305. package/dist/features/errors/group/fingerprint.js +45 -0
  306. package/dist/features/errors/group/fingerprint.js.map +1 -0
  307. package/dist/features/errors/lazy.d.ts +8 -0
  308. package/dist/features/errors/lazy.d.ts.map +1 -0
  309. package/dist/features/errors/lazy.js +8 -0
  310. package/dist/features/errors/lazy.js.map +1 -0
  311. package/dist/features/errors/normalize.d.ts +26 -0
  312. package/dist/features/errors/normalize.d.ts.map +1 -0
  313. package/dist/features/errors/normalize.js +58 -0
  314. package/dist/features/errors/normalize.js.map +1 -0
  315. package/dist/features/errors/parse/stacktrace.d.ts +13 -0
  316. package/dist/features/errors/parse/stacktrace.d.ts.map +1 -0
  317. package/dist/features/errors/parse/stacktrace.js +85 -0
  318. package/dist/features/errors/parse/stacktrace.js.map +1 -0
  319. package/dist/features/errors/redact.d.ts +7 -0
  320. package/dist/features/errors/redact.d.ts.map +1 -0
  321. package/dist/features/errors/redact.js +39 -0
  322. package/dist/features/errors/redact.js.map +1 -0
  323. package/dist/features/errors/sampling.d.ts +2 -0
  324. package/dist/features/errors/sampling.d.ts.map +1 -0
  325. package/dist/features/errors/sampling.js +24 -0
  326. package/dist/features/errors/sampling.js.map +1 -0
  327. package/dist/features/errors/scope.d.ts +26 -0
  328. package/dist/features/errors/scope.d.ts.map +1 -0
  329. package/dist/features/errors/scope.js +30 -0
  330. package/dist/features/errors/scope.js.map +1 -0
  331. package/dist/features/exit-intent/ExitIntentFeature.d.ts +16 -0
  332. package/dist/features/exit-intent/ExitIntentFeature.d.ts.map +1 -0
  333. package/dist/features/exit-intent/ExitIntentFeature.js +25 -0
  334. package/dist/features/exit-intent/ExitIntentFeature.js.map +1 -0
  335. package/dist/features/exit-intent/engine.d.ts +127 -0
  336. package/dist/features/exit-intent/engine.d.ts.map +1 -0
  337. package/dist/features/exit-intent/engine.js +227 -0
  338. package/dist/features/exit-intent/engine.js.map +1 -0
  339. package/dist/features/forms/index.d.ts +83 -0
  340. package/dist/features/forms/index.d.ts.map +1 -0
  341. package/dist/features/forms/index.js +405 -0
  342. package/dist/features/forms/index.js.map +1 -0
  343. package/dist/features/inapp/InApp2Feature.d.ts +24 -0
  344. package/dist/features/inapp/InApp2Feature.d.ts.map +1 -0
  345. package/dist/features/inapp/InApp2Feature.js +44 -0
  346. package/dist/features/inapp/InApp2Feature.js.map +1 -0
  347. package/dist/features/inapp/a11y/focus.d.ts +24 -0
  348. package/dist/features/inapp/a11y/focus.d.ts.map +1 -0
  349. package/dist/features/inapp/a11y/focus.js +112 -0
  350. package/dist/features/inapp/a11y/focus.js.map +1 -0
  351. package/dist/features/inapp/anchor/controller.d.ts +64 -0
  352. package/dist/features/inapp/anchor/controller.d.ts.map +1 -0
  353. package/dist/features/inapp/anchor/controller.js +155 -0
  354. package/dist/features/inapp/anchor/controller.js.map +1 -0
  355. package/dist/features/inapp/api.d.ts +28 -0
  356. package/dist/features/inapp/api.d.ts.map +1 -0
  357. package/dist/features/inapp/api.js +41 -0
  358. package/dist/features/inapp/api.js.map +1 -0
  359. package/dist/features/inapp/blocks/blocks.d.ts +65 -0
  360. package/dist/features/inapp/blocks/blocks.d.ts.map +1 -0
  361. package/dist/features/inapp/blocks/blocks.js +196 -0
  362. package/dist/features/inapp/blocks/blocks.js.map +1 -0
  363. package/dist/features/inapp/blocks/feedback.d.ts +13 -0
  364. package/dist/features/inapp/blocks/feedback.d.ts.map +1 -0
  365. package/dist/features/inapp/blocks/feedback.js +154 -0
  366. package/dist/features/inapp/blocks/feedback.js.map +1 -0
  367. package/dist/features/inapp/blocks/heavy/carousel.d.ts +8 -0
  368. package/dist/features/inapp/blocks/heavy/carousel.d.ts.map +1 -0
  369. package/dist/features/inapp/blocks/heavy/carousel.js +67 -0
  370. package/dist/features/inapp/blocks/heavy/carousel.js.map +1 -0
  371. package/dist/features/inapp/blocks/heavy/chart.d.ts +9 -0
  372. package/dist/features/inapp/blocks/heavy/chart.d.ts.map +1 -0
  373. package/dist/features/inapp/blocks/heavy/chart.js +83 -0
  374. package/dist/features/inapp/blocks/heavy/chart.js.map +1 -0
  375. package/dist/features/inapp/blocks/heavy/code.d.ts +8 -0
  376. package/dist/features/inapp/blocks/heavy/code.d.ts.map +1 -0
  377. package/dist/features/inapp/blocks/heavy/code.js +47 -0
  378. package/dist/features/inapp/blocks/heavy/code.js.map +1 -0
  379. package/dist/features/inapp/blocks/heavy/confetti.d.ts +9 -0
  380. package/dist/features/inapp/blocks/heavy/confetti.d.ts.map +1 -0
  381. package/dist/features/inapp/blocks/heavy/confetti.js +76 -0
  382. package/dist/features/inapp/blocks/heavy/confetti.js.map +1 -0
  383. package/dist/features/inapp/blocks/heavy/countdown.d.ts +9 -0
  384. package/dist/features/inapp/blocks/heavy/countdown.d.ts.map +1 -0
  385. package/dist/features/inapp/blocks/heavy/countdown.js +59 -0
  386. package/dist/features/inapp/blocks/heavy/countdown.js.map +1 -0
  387. package/dist/features/inapp/blocks/heavy/index.d.ts +11 -0
  388. package/dist/features/inapp/blocks/heavy/index.d.ts.map +1 -0
  389. package/dist/features/inapp/blocks/heavy/index.js +45 -0
  390. package/dist/features/inapp/blocks/heavy/index.js.map +1 -0
  391. package/dist/features/inapp/blocks/heavy/markdown.d.ts +9 -0
  392. package/dist/features/inapp/blocks/heavy/markdown.d.ts.map +1 -0
  393. package/dist/features/inapp/blocks/heavy/markdown.js +76 -0
  394. package/dist/features/inapp/blocks/heavy/markdown.js.map +1 -0
  395. package/dist/features/inapp/blocks/heavy/productgrid.d.ts +8 -0
  396. package/dist/features/inapp/blocks/heavy/productgrid.d.ts.map +1 -0
  397. package/dist/features/inapp/blocks/heavy/productgrid.js +46 -0
  398. package/dist/features/inapp/blocks/heavy/productgrid.js.map +1 -0
  399. package/dist/features/inapp/blocks/heavy/qr.d.ts +10 -0
  400. package/dist/features/inapp/blocks/heavy/qr.d.ts.map +1 -0
  401. package/dist/features/inapp/blocks/heavy/qr.js +69 -0
  402. package/dist/features/inapp/blocks/heavy/qr.js.map +1 -0
  403. package/dist/features/inapp/blocks/heavy/scratch.d.ts +8 -0
  404. package/dist/features/inapp/blocks/heavy/scratch.d.ts.map +1 -0
  405. package/dist/features/inapp/blocks/heavy/scratch.js +141 -0
  406. package/dist/features/inapp/blocks/heavy/scratch.js.map +1 -0
  407. package/dist/features/inapp/blocks/heavy/slot.d.ts +8 -0
  408. package/dist/features/inapp/blocks/heavy/slot.d.ts.map +1 -0
  409. package/dist/features/inapp/blocks/heavy/slot.js +96 -0
  410. package/dist/features/inapp/blocks/heavy/slot.js.map +1 -0
  411. package/dist/features/inapp/blocks/heavy/spinwheel.d.ts +9 -0
  412. package/dist/features/inapp/blocks/heavy/spinwheel.d.ts.map +1 -0
  413. package/dist/features/inapp/blocks/heavy/spinwheel.js +127 -0
  414. package/dist/features/inapp/blocks/heavy/spinwheel.js.map +1 -0
  415. package/dist/features/inapp/blocks/heavy/steps.d.ts +27 -0
  416. package/dist/features/inapp/blocks/heavy/steps.d.ts.map +1 -0
  417. package/dist/features/inapp/blocks/heavy/steps.js +135 -0
  418. package/dist/features/inapp/blocks/heavy/steps.js.map +1 -0
  419. package/dist/features/inapp/blocks/heavy/streak.d.ts +18 -0
  420. package/dist/features/inapp/blocks/heavy/streak.d.ts.map +1 -0
  421. package/dist/features/inapp/blocks/heavy/streak.js +52 -0
  422. package/dist/features/inapp/blocks/heavy/streak.js.map +1 -0
  423. package/dist/features/inapp/blocks/heavy/table.d.ts +7 -0
  424. package/dist/features/inapp/blocks/heavy/table.d.ts.map +1 -0
  425. package/dist/features/inapp/blocks/heavy/table.js +30 -0
  426. package/dist/features/inapp/blocks/heavy/table.js.map +1 -0
  427. package/dist/features/inapp/blocks/heavy/unavailable.d.ts +28 -0
  428. package/dist/features/inapp/blocks/heavy/unavailable.d.ts.map +1 -0
  429. package/dist/features/inapp/blocks/heavy/unavailable.js +33 -0
  430. package/dist/features/inapp/blocks/heavy/unavailable.js.map +1 -0
  431. package/dist/features/inapp/blocks/heavy/video.d.ts +7 -0
  432. package/dist/features/inapp/blocks/heavy/video.d.ts.map +1 -0
  433. package/dist/features/inapp/blocks/heavy/video.js +38 -0
  434. package/dist/features/inapp/blocks/heavy/video.js.map +1 -0
  435. package/dist/features/inapp/blocks/styles.d.ts +7 -0
  436. package/dist/features/inapp/blocks/styles.d.ts.map +1 -0
  437. package/dist/features/inapp/blocks/styles.js +225 -0
  438. package/dist/features/inapp/blocks/styles.js.map +1 -0
  439. package/dist/features/inapp/center/bridge.d.ts +12 -0
  440. package/dist/features/inapp/center/bridge.d.ts.map +1 -0
  441. package/dist/features/inapp/center/bridge.js +59 -0
  442. package/dist/features/inapp/center/bridge.js.map +1 -0
  443. package/dist/features/inapp/center/panel.d.ts +20 -0
  444. package/dist/features/inapp/center/panel.d.ts.map +1 -0
  445. package/dist/features/inapp/center/panel.js +228 -0
  446. package/dist/features/inapp/center/panel.js.map +1 -0
  447. package/dist/features/inapp/center/store.d.ts +50 -0
  448. package/dist/features/inapp/center/store.d.ts.map +1 -0
  449. package/dist/features/inapp/center/store.js +188 -0
  450. package/dist/features/inapp/center/store.js.map +1 -0
  451. package/dist/features/inapp/center/sync.d.ts +32 -0
  452. package/dist/features/inapp/center/sync.d.ts.map +1 -0
  453. package/dist/features/inapp/center/sync.js +60 -0
  454. package/dist/features/inapp/center/sync.js.map +1 -0
  455. package/dist/features/inapp/center/types.d.ts +46 -0
  456. package/dist/features/inapp/center/types.d.ts.map +1 -0
  457. package/dist/features/inapp/center/types.js +5 -0
  458. package/dist/features/inapp/center/types.js.map +1 -0
  459. package/dist/features/inapp/core/analytics.d.ts +35 -0
  460. package/dist/features/inapp/core/analytics.d.ts.map +1 -0
  461. package/dist/features/inapp/core/analytics.js +70 -0
  462. package/dist/features/inapp/core/analytics.js.map +1 -0
  463. package/dist/features/inapp/core/compat.d.ts +28 -0
  464. package/dist/features/inapp/core/compat.d.ts.map +1 -0
  465. package/dist/features/inapp/core/compat.js +104 -0
  466. package/dist/features/inapp/core/compat.js.map +1 -0
  467. package/dist/features/inapp/core/debugOverlay.d.ts +5 -0
  468. package/dist/features/inapp/core/debugOverlay.d.ts.map +1 -0
  469. package/dist/features/inapp/core/debugOverlay.js +79 -0
  470. package/dist/features/inapp/core/debugOverlay.js.map +1 -0
  471. package/dist/features/inapp/core/engine.d.ts +72 -0
  472. package/dist/features/inapp/core/engine.d.ts.map +1 -0
  473. package/dist/features/inapp/core/engine.js +248 -0
  474. package/dist/features/inapp/core/engine.js.map +1 -0
  475. package/dist/features/inapp/core/environment.d.ts +21 -0
  476. package/dist/features/inapp/core/environment.d.ts.map +1 -0
  477. package/dist/features/inapp/core/environment.js +57 -0
  478. package/dist/features/inapp/core/environment.js.map +1 -0
  479. package/dist/features/inapp/core/host.d.ts +53 -0
  480. package/dist/features/inapp/core/host.d.ts.map +1 -0
  481. package/dist/features/inapp/core/host.js +243 -0
  482. package/dist/features/inapp/core/host.js.map +1 -0
  483. package/dist/features/inapp/core/keyboard.d.ts +27 -0
  484. package/dist/features/inapp/core/keyboard.d.ts.map +1 -0
  485. package/dist/features/inapp/core/keyboard.js +69 -0
  486. package/dist/features/inapp/core/keyboard.js.map +1 -0
  487. package/dist/features/inapp/core/metrics.d.ts +73 -0
  488. package/dist/features/inapp/core/metrics.d.ts.map +1 -0
  489. package/dist/features/inapp/core/metrics.js +125 -0
  490. package/dist/features/inapp/core/metrics.js.map +1 -0
  491. package/dist/features/inapp/core/migration.d.ts +32 -0
  492. package/dist/features/inapp/core/migration.d.ts.map +1 -0
  493. package/dist/features/inapp/core/migration.js +28 -0
  494. package/dist/features/inapp/core/migration.js.map +1 -0
  495. package/dist/features/inapp/core/orchestrator.d.ts +77 -0
  496. package/dist/features/inapp/core/orchestrator.d.ts.map +1 -0
  497. package/dist/features/inapp/core/orchestrator.js +144 -0
  498. package/dist/features/inapp/core/orchestrator.js.map +1 -0
  499. package/dist/features/inapp/core/respect.d.ts +51 -0
  500. package/dist/features/inapp/core/respect.d.ts.map +1 -0
  501. package/dist/features/inapp/core/respect.js +78 -0
  502. package/dist/features/inapp/core/respect.js.map +1 -0
  503. package/dist/features/inapp/core/slots.d.ts +19 -0
  504. package/dist/features/inapp/core/slots.d.ts.map +1 -0
  505. package/dist/features/inapp/core/slots.js +53 -0
  506. package/dist/features/inapp/core/slots.js.map +1 -0
  507. package/dist/features/inapp/core/targeting.d.ts +85 -0
  508. package/dist/features/inapp/core/targeting.d.ts.map +1 -0
  509. package/dist/features/inapp/core/targeting.js +255 -0
  510. package/dist/features/inapp/core/targeting.js.map +1 -0
  511. package/dist/features/inapp/core/transport.d.ts +66 -0
  512. package/dist/features/inapp/core/transport.d.ts.map +1 -0
  513. package/dist/features/inapp/core/transport.js +154 -0
  514. package/dist/features/inapp/core/transport.js.map +1 -0
  515. package/dist/features/inapp/core/triggers.d.ts +94 -0
  516. package/dist/features/inapp/core/triggers.d.ts.map +1 -0
  517. package/dist/features/inapp/core/triggers.js +368 -0
  518. package/dist/features/inapp/core/triggers.js.map +1 -0
  519. package/dist/features/inapp/inappContract.web.d.ts +47 -0
  520. package/dist/features/inapp/inappContract.web.d.ts.map +1 -0
  521. package/dist/features/inapp/inappContract.web.js +230 -0
  522. package/dist/features/inapp/inappContract.web.js.map +1 -0
  523. package/dist/features/inapp/index.d.ts +23 -0
  524. package/dist/features/inapp/index.d.ts.map +1 -0
  525. package/dist/features/inapp/index.js +23 -0
  526. package/dist/features/inapp/index.js.map +1 -0
  527. package/dist/features/inapp/registry.canonical.hash.d.ts +7 -0
  528. package/dist/features/inapp/registry.canonical.hash.d.ts.map +1 -0
  529. package/dist/features/inapp/registry.canonical.hash.js +7 -0
  530. package/dist/features/inapp/registry.canonical.hash.js.map +1 -0
  531. package/dist/features/inapp/registry.web.canonical.d.ts +21 -0
  532. package/dist/features/inapp/registry.web.canonical.d.ts.map +1 -0
  533. package/dist/features/inapp/registry.web.canonical.js +136 -0
  534. package/dist/features/inapp/registry.web.canonical.js.map +1 -0
  535. package/dist/features/inapp/registry.web.catalog.d.ts +12 -0
  536. package/dist/features/inapp/registry.web.catalog.d.ts.map +1 -0
  537. package/dist/features/inapp/registry.web.catalog.js +208 -0
  538. package/dist/features/inapp/registry.web.catalog.js.map +1 -0
  539. package/dist/features/inapp/surfaces/banner.d.ts +7 -0
  540. package/dist/features/inapp/surfaces/banner.d.ts.map +1 -0
  541. package/dist/features/inapp/surfaces/banner.js +30 -0
  542. package/dist/features/inapp/surfaces/banner.js.map +1 -0
  543. package/dist/features/inapp/surfaces/checklist.d.ts +13 -0
  544. package/dist/features/inapp/surfaces/checklist.d.ts.map +1 -0
  545. package/dist/features/inapp/surfaces/checklist.js +127 -0
  546. package/dist/features/inapp/surfaces/checklist.js.map +1 -0
  547. package/dist/features/inapp/surfaces/coachmark.d.ts +10 -0
  548. package/dist/features/inapp/surfaces/coachmark.d.ts.map +1 -0
  549. package/dist/features/inapp/surfaces/coachmark.js +95 -0
  550. package/dist/features/inapp/surfaces/coachmark.js.map +1 -0
  551. package/dist/features/inapp/surfaces/hotspot.d.ts +8 -0
  552. package/dist/features/inapp/surfaces/hotspot.d.ts.map +1 -0
  553. package/dist/features/inapp/surfaces/hotspot.js +91 -0
  554. package/dist/features/inapp/surfaces/hotspot.js.map +1 -0
  555. package/dist/features/inapp/surfaces/inline.d.ts +13 -0
  556. package/dist/features/inapp/surfaces/inline.d.ts.map +1 -0
  557. package/dist/features/inapp/surfaces/inline.js +78 -0
  558. package/dist/features/inapp/surfaces/inline.js.map +1 -0
  559. package/dist/features/inapp/surfaces/launcher.d.ts +9 -0
  560. package/dist/features/inapp/surfaces/launcher.d.ts.map +1 -0
  561. package/dist/features/inapp/surfaces/launcher.js +54 -0
  562. package/dist/features/inapp/surfaces/launcher.js.map +1 -0
  563. package/dist/features/inapp/surfaces/modal.d.ts +8 -0
  564. package/dist/features/inapp/surfaces/modal.d.ts.map +1 -0
  565. package/dist/features/inapp/surfaces/modal.js +70 -0
  566. package/dist/features/inapp/surfaces/modal.js.map +1 -0
  567. package/dist/features/inapp/surfaces/mount.d.ts +19 -0
  568. package/dist/features/inapp/surfaces/mount.d.ts.map +1 -0
  569. package/dist/features/inapp/surfaces/mount.js +29 -0
  570. package/dist/features/inapp/surfaces/mount.js.map +1 -0
  571. package/dist/features/inapp/surfaces/palette.d.ts +9 -0
  572. package/dist/features/inapp/surfaces/palette.d.ts.map +1 -0
  573. package/dist/features/inapp/surfaces/palette.js +127 -0
  574. package/dist/features/inapp/surfaces/palette.js.map +1 -0
  575. package/dist/features/inapp/surfaces/panel.d.ts +14 -0
  576. package/dist/features/inapp/surfaces/panel.d.ts.map +1 -0
  577. package/dist/features/inapp/surfaces/panel.js +91 -0
  578. package/dist/features/inapp/surfaces/panel.js.map +1 -0
  579. package/dist/features/inapp/surfaces/popover.d.ts +10 -0
  580. package/dist/features/inapp/surfaces/popover.d.ts.map +1 -0
  581. package/dist/features/inapp/surfaces/popover.js +69 -0
  582. package/dist/features/inapp/surfaces/popover.js.map +1 -0
  583. package/dist/features/inapp/surfaces/render.d.ts +34 -0
  584. package/dist/features/inapp/surfaces/render.d.ts.map +1 -0
  585. package/dist/features/inapp/surfaces/render.js +56 -0
  586. package/dist/features/inapp/surfaces/render.js.map +1 -0
  587. package/dist/features/inapp/surfaces/slideover.d.ts +9 -0
  588. package/dist/features/inapp/surfaces/slideover.d.ts.map +1 -0
  589. package/dist/features/inapp/surfaces/slideover.js +144 -0
  590. package/dist/features/inapp/surfaces/slideover.js.map +1 -0
  591. package/dist/features/inapp/surfaces/styles.d.ts +7 -0
  592. package/dist/features/inapp/surfaces/styles.d.ts.map +1 -0
  593. package/dist/features/inapp/surfaces/styles.js +235 -0
  594. package/dist/features/inapp/surfaces/styles.js.map +1 -0
  595. package/dist/features/inapp/surfaces/surface.d.ts +69 -0
  596. package/dist/features/inapp/surfaces/surface.d.ts.map +1 -0
  597. package/dist/features/inapp/surfaces/surface.js +80 -0
  598. package/dist/features/inapp/surfaces/surface.js.map +1 -0
  599. package/dist/features/inapp/surfaces/takeover.d.ts +9 -0
  600. package/dist/features/inapp/surfaces/takeover.d.ts.map +1 -0
  601. package/dist/features/inapp/surfaces/takeover.js +60 -0
  602. package/dist/features/inapp/surfaces/takeover.js.map +1 -0
  603. package/dist/features/inapp/surfaces/toast.d.ts +7 -0
  604. package/dist/features/inapp/surfaces/toast.d.ts.map +1 -0
  605. package/dist/features/inapp/surfaces/toast.js +48 -0
  606. package/dist/features/inapp/surfaces/toast.js.map +1 -0
  607. package/dist/features/inapp/surfaces/toolbar.d.ts +8 -0
  608. package/dist/features/inapp/surfaces/toolbar.d.ts.map +1 -0
  609. package/dist/features/inapp/surfaces/toolbar.js +65 -0
  610. package/dist/features/inapp/surfaces/toolbar.js.map +1 -0
  611. package/dist/features/inapp/surfaces/tour.d.ts +14 -0
  612. package/dist/features/inapp/surfaces/tour.d.ts.map +1 -0
  613. package/dist/features/inapp/surfaces/tour.js +202 -0
  614. package/dist/features/inapp/surfaces/tour.js.map +1 -0
  615. package/dist/features/inapp/types.d.ts +165 -0
  616. package/dist/features/inapp/types.d.ts.map +1 -0
  617. package/dist/features/inapp/types.js +12 -0
  618. package/dist/features/inapp/types.js.map +1 -0
  619. package/dist/features/inbox/InboxFeature.d.ts +57 -0
  620. package/dist/features/inbox/InboxFeature.d.ts.map +1 -0
  621. package/dist/features/inbox/InboxFeature.js +225 -0
  622. package/dist/features/inbox/InboxFeature.js.map +1 -0
  623. package/dist/features/inbox/runtime.d.ts +67 -0
  624. package/dist/features/inbox/runtime.d.ts.map +1 -0
  625. package/dist/features/inbox/runtime.js +376 -0
  626. package/dist/features/inbox/runtime.js.map +1 -0
  627. package/dist/features/inbox/store.d.ts +37 -0
  628. package/dist/features/inbox/store.d.ts.map +1 -0
  629. package/dist/features/inbox/store.js +149 -0
  630. package/dist/features/inbox/store.js.map +1 -0
  631. package/dist/features/inbox/sync.d.ts +49 -0
  632. package/dist/features/inbox/sync.d.ts.map +1 -0
  633. package/dist/features/inbox/sync.js +131 -0
  634. package/dist/features/inbox/sync.js.map +1 -0
  635. package/dist/features/inbox/types.d.ts +275 -0
  636. package/dist/features/inbox/types.d.ts.map +1 -0
  637. package/dist/features/inbox/types.js +42 -0
  638. package/dist/features/inbox/types.js.map +1 -0
  639. package/dist/features/inbox/widget/InboxWidget.d.ts +16 -0
  640. package/dist/features/inbox/widget/InboxWidget.d.ts.map +1 -0
  641. package/dist/features/inbox/widget/InboxWidget.js +609 -0
  642. package/dist/features/inbox/widget/InboxWidget.js.map +1 -0
  643. package/dist/features/index.d.ts +21 -0
  644. package/dist/features/index.d.ts.map +1 -0
  645. package/dist/features/index.js +2 -0
  646. package/dist/features/index.js.map +1 -0
  647. package/dist/features/journey/InteractionTracker.d.ts +87 -0
  648. package/dist/features/journey/InteractionTracker.d.ts.map +1 -0
  649. package/dist/features/journey/InteractionTracker.js +466 -0
  650. package/dist/features/journey/InteractionTracker.js.map +1 -0
  651. package/dist/features/journey/JourneyFeature.d.ts +18 -0
  652. package/dist/features/journey/JourneyFeature.d.ts.map +1 -0
  653. package/dist/features/journey/JourneyFeature.js +71 -0
  654. package/dist/features/journey/JourneyFeature.js.map +1 -0
  655. package/dist/features/journey/NavigationTracker.d.ts +16 -0
  656. package/dist/features/journey/NavigationTracker.d.ts.map +1 -0
  657. package/dist/features/journey/NavigationTracker.js +92 -0
  658. package/dist/features/journey/NavigationTracker.js.map +1 -0
  659. package/dist/features/journey/friction.d.ts +28 -0
  660. package/dist/features/journey/friction.d.ts.map +1 -0
  661. package/dist/features/journey/friction.js +64 -0
  662. package/dist/features/journey/friction.js.map +1 -0
  663. package/dist/features/journey/positionContext.d.ts +30 -0
  664. package/dist/features/journey/positionContext.d.ts.map +1 -0
  665. package/dist/features/journey/positionContext.js +116 -0
  666. package/dist/features/journey/positionContext.js.map +1 -0
  667. package/dist/features/journey/uiState.d.ts +44 -0
  668. package/dist/features/journey/uiState.d.ts.map +1 -0
  669. package/dist/features/journey/uiState.js +158 -0
  670. package/dist/features/journey/uiState.js.map +1 -0
  671. package/dist/features/manifest.d.ts +41 -0
  672. package/dist/features/manifest.d.ts.map +1 -0
  673. package/dist/features/manifest.js +93 -0
  674. package/dist/features/manifest.js.map +1 -0
  675. package/dist/features/network/NetworkFeature.d.ts +60 -0
  676. package/dist/features/network/NetworkFeature.d.ts.map +1 -0
  677. package/dist/features/network/NetworkFeature.js +260 -0
  678. package/dist/features/network/NetworkFeature.js.map +1 -0
  679. package/dist/features/network/capture/body.d.ts +31 -0
  680. package/dist/features/network/capture/body.d.ts.map +1 -0
  681. package/dist/features/network/capture/body.js +81 -0
  682. package/dist/features/network/capture/body.js.map +1 -0
  683. package/dist/features/network/classify.d.ts +21 -0
  684. package/dist/features/network/classify.d.ts.map +1 -0
  685. package/dist/features/network/classify.js +50 -0
  686. package/dist/features/network/classify.js.map +1 -0
  687. package/dist/features/network/dedup.d.ts +36 -0
  688. package/dist/features/network/dedup.d.ts.map +1 -0
  689. package/dist/features/network/dedup.js +68 -0
  690. package/dist/features/network/dedup.js.map +1 -0
  691. package/dist/features/network/fetchInterceptor.d.ts +20 -0
  692. package/dist/features/network/fetchInterceptor.d.ts.map +1 -0
  693. package/dist/features/network/fetchInterceptor.js +158 -0
  694. package/dist/features/network/fetchInterceptor.js.map +1 -0
  695. package/dist/features/network/intercept/beacon.d.ts +14 -0
  696. package/dist/features/network/intercept/beacon.d.ts.map +1 -0
  697. package/dist/features/network/intercept/beacon.js +56 -0
  698. package/dist/features/network/intercept/beacon.js.map +1 -0
  699. package/dist/features/network/intercept/sse.d.ts +16 -0
  700. package/dist/features/network/intercept/sse.d.ts.map +1 -0
  701. package/dist/features/network/intercept/sse.js +74 -0
  702. package/dist/features/network/intercept/sse.js.map +1 -0
  703. package/dist/features/network/intercept/streams.d.ts +23 -0
  704. package/dist/features/network/intercept/streams.d.ts.map +1 -0
  705. package/dist/features/network/intercept/streams.js +25 -0
  706. package/dist/features/network/intercept/streams.js.map +1 -0
  707. package/dist/features/network/intercept/websocket.d.ts +14 -0
  708. package/dist/features/network/intercept/websocket.d.ts.map +1 -0
  709. package/dist/features/network/intercept/websocket.js +97 -0
  710. package/dist/features/network/intercept/websocket.js.map +1 -0
  711. package/dist/features/network/lazy.d.ts +23 -0
  712. package/dist/features/network/lazy.d.ts.map +1 -0
  713. package/dist/features/network/lazy.js +65 -0
  714. package/dist/features/network/lazy.js.map +1 -0
  715. package/dist/features/network/normalize.d.ts +9 -0
  716. package/dist/features/network/normalize.d.ts.map +1 -0
  717. package/dist/features/network/normalize.js +49 -0
  718. package/dist/features/network/normalize.js.map +1 -0
  719. package/dist/features/network/parse/graphql.d.ts +17 -0
  720. package/dist/features/network/parse/graphql.d.ts.map +1 -0
  721. package/dist/features/network/parse/graphql.js +106 -0
  722. package/dist/features/network/parse/graphql.js.map +1 -0
  723. package/dist/features/network/parse/url.d.ts +12 -0
  724. package/dist/features/network/parse/url.d.ts.map +1 -0
  725. package/dist/features/network/parse/url.js +52 -0
  726. package/dist/features/network/parse/url.js.map +1 -0
  727. package/dist/features/network/sampler.d.ts +21 -0
  728. package/dist/features/network/sampler.d.ts.map +1 -0
  729. package/dist/features/network/sampler.js +25 -0
  730. package/dist/features/network/sampler.js.map +1 -0
  731. package/dist/features/network/size.d.ts +21 -0
  732. package/dist/features/network/size.d.ts.map +1 -0
  733. package/dist/features/network/size.js +63 -0
  734. package/dist/features/network/size.js.map +1 -0
  735. package/dist/features/network/thirdParty.d.ts +95 -0
  736. package/dist/features/network/thirdParty.d.ts.map +1 -0
  737. package/dist/features/network/thirdParty.js +126 -0
  738. package/dist/features/network/thirdParty.js.map +1 -0
  739. package/dist/features/network/timing.d.ts +41 -0
  740. package/dist/features/network/timing.d.ts.map +1 -0
  741. package/dist/features/network/timing.js +134 -0
  742. package/dist/features/network/timing.js.map +1 -0
  743. package/dist/features/network/tracing.d.ts +18 -0
  744. package/dist/features/network/tracing.d.ts.map +1 -0
  745. package/dist/features/network/tracing.js +46 -0
  746. package/dist/features/network/tracing.js.map +1 -0
  747. package/dist/features/network/types.d.ts +75 -0
  748. package/dist/features/network/types.d.ts.map +1 -0
  749. package/dist/features/network/types.js +2 -0
  750. package/dist/features/network/types.js.map +1 -0
  751. package/dist/features/network/xhrInterceptor.d.ts +12 -0
  752. package/dist/features/network/xhrInterceptor.d.ts.map +1 -0
  753. package/dist/features/network/xhrInterceptor.js +108 -0
  754. package/dist/features/network/xhrInterceptor.js.map +1 -0
  755. package/dist/features/performance/PerformanceFeature.d.ts +76 -0
  756. package/dist/features/performance/PerformanceFeature.d.ts.map +1 -0
  757. package/dist/features/performance/PerformanceFeature.js +265 -0
  758. package/dist/features/performance/PerformanceFeature.js.map +1 -0
  759. package/dist/features/performance/jankTap.d.ts +23 -0
  760. package/dist/features/performance/jankTap.d.ts.map +1 -0
  761. package/dist/features/performance/jankTap.js +20 -0
  762. package/dist/features/performance/jankTap.js.map +1 -0
  763. package/dist/features/performance/longTasks.d.ts +14 -0
  764. package/dist/features/performance/longTasks.d.ts.map +1 -0
  765. package/dist/features/performance/longTasks.js +55 -0
  766. package/dist/features/performance/longTasks.js.map +1 -0
  767. package/dist/features/performance/normalize.d.ts +15 -0
  768. package/dist/features/performance/normalize.d.ts.map +1 -0
  769. package/dist/features/performance/normalize.js +30 -0
  770. package/dist/features/performance/normalize.js.map +1 -0
  771. package/dist/features/performance/resources.d.ts +19 -0
  772. package/dist/features/performance/resources.d.ts.map +1 -0
  773. package/dist/features/performance/resources.js +78 -0
  774. package/dist/features/performance/resources.js.map +1 -0
  775. package/dist/features/performance/sampler.d.ts +10 -0
  776. package/dist/features/performance/sampler.d.ts.map +1 -0
  777. package/dist/features/performance/sampler.js +23 -0
  778. package/dist/features/performance/sampler.js.map +1 -0
  779. package/dist/features/performance/spa.d.ts +2 -0
  780. package/dist/features/performance/spa.d.ts.map +1 -0
  781. package/dist/features/performance/spa.js +40 -0
  782. package/dist/features/performance/spa.js.map +1 -0
  783. package/dist/features/performance/throttle.d.ts +21 -0
  784. package/dist/features/performance/throttle.d.ts.map +1 -0
  785. package/dist/features/performance/throttle.js +26 -0
  786. package/dist/features/performance/throttle.js.map +1 -0
  787. package/dist/features/performance/trace/context.d.ts +17 -0
  788. package/dist/features/performance/trace/context.d.ts.map +1 -0
  789. package/dist/features/performance/trace/context.js +33 -0
  790. package/dist/features/performance/trace/context.js.map +1 -0
  791. package/dist/features/performance/trace/index.d.ts +7 -0
  792. package/dist/features/performance/trace/index.d.ts.map +1 -0
  793. package/dist/features/performance/trace/index.js +6 -0
  794. package/dist/features/performance/trace/index.js.map +1 -0
  795. package/dist/features/performance/trace/pageload.d.ts +3 -0
  796. package/dist/features/performance/trace/pageload.d.ts.map +1 -0
  797. package/dist/features/performance/trace/pageload.js +34 -0
  798. package/dist/features/performance/trace/pageload.js.map +1 -0
  799. package/dist/features/performance/trace/transaction.d.ts +61 -0
  800. package/dist/features/performance/trace/transaction.d.ts.map +1 -0
  801. package/dist/features/performance/trace/transaction.js +90 -0
  802. package/dist/features/performance/trace/transaction.js.map +1 -0
  803. package/dist/features/performance/trace/types.d.ts +23 -0
  804. package/dist/features/performance/trace/types.d.ts.map +1 -0
  805. package/dist/features/performance/trace/types.js +10 -0
  806. package/dist/features/performance/trace/types.js.map +1 -0
  807. package/dist/features/performance/traces.d.ts +36 -0
  808. package/dist/features/performance/traces.d.ts.map +1 -0
  809. package/dist/features/performance/traces.js +50 -0
  810. package/dist/features/performance/traces.js.map +1 -0
  811. package/dist/features/profiler/ProfilerFeature.d.ts +28 -0
  812. package/dist/features/profiler/ProfilerFeature.d.ts.map +1 -0
  813. package/dist/features/profiler/ProfilerFeature.js +82 -0
  814. package/dist/features/profiler/ProfilerFeature.js.map +1 -0
  815. package/dist/features/profiler/capture.d.ts +8 -0
  816. package/dist/features/profiler/capture.d.ts.map +1 -0
  817. package/dist/features/profiler/capture.js +21 -0
  818. package/dist/features/profiler/capture.js.map +1 -0
  819. package/dist/features/push/PushFeature.d.ts +120 -0
  820. package/dist/features/push/PushFeature.d.ts.map +1 -0
  821. package/dist/features/push/PushFeature.js +319 -0
  822. package/dist/features/push/PushFeature.js.map +1 -0
  823. package/dist/features/push/diagnostics.d.ts +55 -0
  824. package/dist/features/push/diagnostics.d.ts.map +1 -0
  825. package/dist/features/push/diagnostics.js +383 -0
  826. package/dist/features/push/diagnostics.js.map +1 -0
  827. package/dist/features/push/pushState.d.ts +58 -0
  828. package/dist/features/push/pushState.d.ts.map +1 -0
  829. package/dist/features/push/pushState.js +75 -0
  830. package/dist/features/push/pushState.js.map +1 -0
  831. package/dist/features/push/softAsk.d.ts +68 -0
  832. package/dist/features/push/softAsk.d.ts.map +1 -0
  833. package/dist/features/push/softAsk.js +142 -0
  834. package/dist/features/push/softAsk.js.map +1 -0
  835. package/dist/features/replay/ReplayFeature.d.ts +52 -0
  836. package/dist/features/replay/ReplayFeature.d.ts.map +1 -0
  837. package/dist/features/replay/ReplayFeature.js +282 -0
  838. package/dist/features/replay/ReplayFeature.js.map +1 -0
  839. package/dist/features/replay/engine/canvas.d.ts +45 -0
  840. package/dist/features/replay/engine/canvas.d.ts.map +1 -0
  841. package/dist/features/replay/engine/canvas.js +122 -0
  842. package/dist/features/replay/engine/canvas.js.map +1 -0
  843. package/dist/features/replay/engine/crossOrigin.d.ts +23 -0
  844. package/dist/features/replay/engine/crossOrigin.d.ts.map +1 -0
  845. package/dist/features/replay/engine/crossOrigin.js +108 -0
  846. package/dist/features/replay/engine/crossOrigin.js.map +1 -0
  847. package/dist/features/replay/engine/cssom.d.ts +31 -0
  848. package/dist/features/replay/engine/cssom.d.ts.map +1 -0
  849. package/dist/features/replay/engine/cssom.js +128 -0
  850. package/dist/features/replay/engine/cssom.js.map +1 -0
  851. package/dist/features/replay/engine/iframe.d.ts +65 -0
  852. package/dist/features/replay/engine/iframe.d.ts.map +1 -0
  853. package/dist/features/replay/engine/iframe.js +186 -0
  854. package/dist/features/replay/engine/iframe.js.map +1 -0
  855. package/dist/features/replay/engine/interactions.d.ts +172 -0
  856. package/dist/features/replay/engine/interactions.d.ts.map +1 -0
  857. package/dist/features/replay/engine/interactions.js +437 -0
  858. package/dist/features/replay/engine/interactions.js.map +1 -0
  859. package/dist/features/replay/engine/mutations.d.ts +65 -0
  860. package/dist/features/replay/engine/mutations.d.ts.map +1 -0
  861. package/dist/features/replay/engine/mutations.js +304 -0
  862. package/dist/features/replay/engine/mutations.js.map +1 -0
  863. package/dist/features/replay/engine/nodeRegistry.d.ts +23 -0
  864. package/dist/features/replay/engine/nodeRegistry.d.ts.map +1 -0
  865. package/dist/features/replay/engine/nodeRegistry.js +51 -0
  866. package/dist/features/replay/engine/nodeRegistry.js.map +1 -0
  867. package/dist/features/replay/engine/player.d.ts +11 -0
  868. package/dist/features/replay/engine/player.d.ts.map +1 -0
  869. package/dist/features/replay/engine/player.js +284 -0
  870. package/dist/features/replay/engine/player.js.map +1 -0
  871. package/dist/features/replay/engine/rebuild.d.ts +8 -0
  872. package/dist/features/replay/engine/rebuild.d.ts.map +1 -0
  873. package/dist/features/replay/engine/rebuild.js +46 -0
  874. package/dist/features/replay/engine/rebuild.js.map +1 -0
  875. package/dist/features/replay/engine/replayWorker.d.ts +33 -0
  876. package/dist/features/replay/engine/replayWorker.d.ts.map +1 -0
  877. package/dist/features/replay/engine/replayWorker.js +175 -0
  878. package/dist/features/replay/engine/replayWorker.js.map +1 -0
  879. package/dist/features/replay/engine/resources.d.ts +52 -0
  880. package/dist/features/replay/engine/resources.d.ts.map +1 -0
  881. package/dist/features/replay/engine/resources.js +132 -0
  882. package/dist/features/replay/engine/resources.js.map +1 -0
  883. package/dist/features/replay/engine/snapshot.d.ts +103 -0
  884. package/dist/features/replay/engine/snapshot.d.ts.map +1 -0
  885. package/dist/features/replay/engine/snapshot.js +459 -0
  886. package/dist/features/replay/engine/snapshot.js.map +1 -0
  887. package/dist/features/replay/engine/traverse.d.ts +19 -0
  888. package/dist/features/replay/engine/traverse.d.ts.map +1 -0
  889. package/dist/features/replay/engine/traverse.js +39 -0
  890. package/dist/features/replay/engine/traverse.js.map +1 -0
  891. package/dist/features/replay/engine/types.d.ts +149 -0
  892. package/dist/features/replay/engine/types.d.ts.map +1 -0
  893. package/dist/features/replay/engine/types.js +6 -0
  894. package/dist/features/replay/engine/types.js.map +1 -0
  895. package/dist/features/replay/engine/webglPatch.d.ts +26 -0
  896. package/dist/features/replay/engine/webglPatch.d.ts.map +1 -0
  897. package/dist/features/replay/engine/webglPatch.js +83 -0
  898. package/dist/features/replay/engine/webglPatch.js.map +1 -0
  899. package/dist/features/replay/lifecycle/adaptive.d.ts +38 -0
  900. package/dist/features/replay/lifecycle/adaptive.d.ts.map +1 -0
  901. package/dist/features/replay/lifecycle/adaptive.js +90 -0
  902. package/dist/features/replay/lifecycle/adaptive.js.map +1 -0
  903. package/dist/features/replay/lifecycle/cadence.d.ts +35 -0
  904. package/dist/features/replay/lifecycle/cadence.d.ts.map +1 -0
  905. package/dist/features/replay/lifecycle/cadence.js +149 -0
  906. package/dist/features/replay/lifecycle/cadence.js.map +1 -0
  907. package/dist/features/replay/lifecycle/deltaBatcher.d.ts +31 -0
  908. package/dist/features/replay/lifecycle/deltaBatcher.d.ts.map +1 -0
  909. package/dist/features/replay/lifecycle/deltaBatcher.js +32 -0
  910. package/dist/features/replay/lifecycle/deltaBatcher.js.map +1 -0
  911. package/dist/features/replay/lifecycle/deviceSignals.d.ts +35 -0
  912. package/dist/features/replay/lifecycle/deviceSignals.d.ts.map +1 -0
  913. package/dist/features/replay/lifecycle/deviceSignals.js +61 -0
  914. package/dist/features/replay/lifecycle/deviceSignals.js.map +1 -0
  915. package/dist/features/replay/lifecycle/offloadDomFrames.d.ts +69 -0
  916. package/dist/features/replay/lifecycle/offloadDomFrames.d.ts.map +1 -0
  917. package/dist/features/replay/lifecycle/offloadDomFrames.js +107 -0
  918. package/dist/features/replay/lifecycle/offloadDomFrames.js.map +1 -0
  919. package/dist/features/replay/lifecycle/pii.d.ts +14 -0
  920. package/dist/features/replay/lifecycle/pii.d.ts.map +1 -0
  921. package/dist/features/replay/lifecycle/pii.js +52 -0
  922. package/dist/features/replay/lifecycle/pii.js.map +1 -0
  923. package/dist/features/replay/lifecycle/recorder.d.ts +178 -0
  924. package/dist/features/replay/lifecycle/recorder.d.ts.map +1 -0
  925. package/dist/features/replay/lifecycle/recorder.js +644 -0
  926. package/dist/features/replay/lifecycle/recorder.js.map +1 -0
  927. package/dist/features/replay/lifecycle/sampling.d.ts +28 -0
  928. package/dist/features/replay/lifecycle/sampling.d.ts.map +1 -0
  929. package/dist/features/replay/lifecycle/sampling.js +31 -0
  930. package/dist/features/replay/lifecycle/sampling.js.map +1 -0
  931. package/dist/features/replay/lifecycle/segmentBuffer.d.ts +75 -0
  932. package/dist/features/replay/lifecycle/segmentBuffer.d.ts.map +1 -0
  933. package/dist/features/replay/lifecycle/segmentBuffer.js +130 -0
  934. package/dist/features/replay/lifecycle/segmentBuffer.js.map +1 -0
  935. package/dist/features/replay/lifecycle/viewContext.d.ts +7 -0
  936. package/dist/features/replay/lifecycle/viewContext.d.ts.map +1 -0
  937. package/dist/features/replay/lifecycle/viewContext.js +51 -0
  938. package/dist/features/replay/lifecycle/viewContext.js.map +1 -0
  939. package/dist/features/scroll/index.d.ts +33 -0
  940. package/dist/features/scroll/index.d.ts.map +1 -0
  941. package/dist/features/scroll/index.js +106 -0
  942. package/dist/features/scroll/index.js.map +1 -0
  943. package/dist/features/session/sessionManager.d.ts +41 -0
  944. package/dist/features/session/sessionManager.d.ts.map +1 -0
  945. package/dist/features/session/sessionManager.js +67 -0
  946. package/dist/features/session/sessionManager.js.map +1 -0
  947. package/dist/features/session/sessionStore.d.ts +137 -0
  948. package/dist/features/session/sessionStore.d.ts.map +1 -0
  949. package/dist/features/session/sessionStore.js +323 -0
  950. package/dist/features/session/sessionStore.js.map +1 -0
  951. package/dist/features/watchdog/WatchdogFeature.d.ts +23 -0
  952. package/dist/features/watchdog/WatchdogFeature.d.ts.map +1 -0
  953. package/dist/features/watchdog/WatchdogFeature.js +29 -0
  954. package/dist/features/watchdog/WatchdogFeature.js.map +1 -0
  955. package/dist/features/watchdog/collectors.d.ts +18 -0
  956. package/dist/features/watchdog/collectors.d.ts.map +1 -0
  957. package/dist/features/watchdog/collectors.js +107 -0
  958. package/dist/features/watchdog/collectors.js.map +1 -0
  959. package/dist/features/watchdog/config.d.ts +51 -0
  960. package/dist/features/watchdog/config.d.ts.map +1 -0
  961. package/dist/features/watchdog/config.js +28 -0
  962. package/dist/features/watchdog/config.js.map +1 -0
  963. package/dist/features/watchdog/engine.d.ts +22 -0
  964. package/dist/features/watchdog/engine.d.ts.map +1 -0
  965. package/dist/features/watchdog/engine.js +123 -0
  966. package/dist/features/watchdog/engine.js.map +1 -0
  967. package/dist/features/watchdog/incidents.d.ts +79 -0
  968. package/dist/features/watchdog/incidents.d.ts.map +1 -0
  969. package/dist/features/watchdog/incidents.js +204 -0
  970. package/dist/features/watchdog/incidents.js.map +1 -0
  971. package/dist/features/watchdog/rollup.d.ts +41 -0
  972. package/dist/features/watchdog/rollup.d.ts.map +1 -0
  973. package/dist/features/watchdog/rollup.js +76 -0
  974. package/dist/features/watchdog/rollup.js.map +1 -0
  975. package/dist/features/webVitals/WebVitalsFeature.d.ts +46 -0
  976. package/dist/features/webVitals/WebVitalsFeature.d.ts.map +1 -0
  977. package/dist/features/webVitals/WebVitalsFeature.js +252 -0
  978. package/dist/features/webVitals/WebVitalsFeature.js.map +1 -0
  979. package/dist/features/webVitals/attribution.d.ts +50 -0
  980. package/dist/features/webVitals/attribution.d.ts.map +1 -0
  981. package/dist/features/webVitals/attribution.js +186 -0
  982. package/dist/features/webVitals/attribution.js.map +1 -0
  983. package/dist/features/webVitals/observe.d.ts +6 -0
  984. package/dist/features/webVitals/observe.d.ts.map +1 -0
  985. package/dist/features/webVitals/observe.js +6 -0
  986. package/dist/features/webVitals/observe.js.map +1 -0
  987. package/dist/features/webVitals/vitals.d.ts +99 -0
  988. package/dist/features/webVitals/vitals.d.ts.map +1 -0
  989. package/dist/features/webVitals/vitals.js +166 -0
  990. package/dist/features/webVitals/vitals.js.map +1 -0
  991. package/dist/features/webperf/WebPerfFeature.d.ts +19 -0
  992. package/dist/features/webperf/WebPerfFeature.d.ts.map +1 -0
  993. package/dist/features/webperf/WebPerfFeature.js +48 -0
  994. package/dist/features/webperf/WebPerfFeature.js.map +1 -0
  995. package/dist/features/webperf/collectors.d.ts +3 -0
  996. package/dist/features/webperf/collectors.d.ts.map +1 -0
  997. package/dist/features/webperf/collectors.js +118 -0
  998. package/dist/features/webperf/collectors.js.map +1 -0
  999. package/dist/features/webperf/math.d.ts +12 -0
  1000. package/dist/features/webperf/math.d.ts.map +1 -0
  1001. package/dist/features/webperf/math.js +26 -0
  1002. package/dist/features/webperf/math.js.map +1 -0
  1003. package/dist/inapp.d.ts +6 -0
  1004. package/dist/inapp.d.ts.map +1 -0
  1005. package/dist/inapp.js +6 -0
  1006. package/dist/inapp.js.map +1 -0
  1007. package/dist/index.d.ts +34 -0
  1008. package/dist/index.d.ts.map +1 -0
  1009. package/dist/index.js +12 -0
  1010. package/dist/index.js.map +1 -0
  1011. package/dist/integrations/index.d.ts +7 -0
  1012. package/dist/integrations/index.d.ts.map +1 -0
  1013. package/dist/integrations/index.js +2 -0
  1014. package/dist/integrations/index.js.map +1 -0
  1015. package/dist/pipeline/index.d.ts +3 -0
  1016. package/dist/pipeline/index.d.ts.map +1 -0
  1017. package/dist/pipeline/index.js +3 -0
  1018. package/dist/pipeline/index.js.map +1 -0
  1019. package/dist/pipeline/pipeline.d.ts +263 -0
  1020. package/dist/pipeline/pipeline.d.ts.map +1 -0
  1021. package/dist/pipeline/pipeline.js +783 -0
  1022. package/dist/pipeline/pipeline.js.map +1 -0
  1023. package/dist/public/ScaleBunFacade.d.ts +436 -0
  1024. package/dist/public/ScaleBunFacade.d.ts.map +1 -0
  1025. package/dist/public/ScaleBunFacade.js +857 -0
  1026. package/dist/public/ScaleBunFacade.js.map +1 -0
  1027. package/dist/public/index.d.ts +5 -0
  1028. package/dist/public/index.d.ts.map +1 -0
  1029. package/dist/public/index.js +4 -0
  1030. package/dist/public/index.js.map +1 -0
  1031. package/dist/public/typedTracker.d.ts +91 -0
  1032. package/dist/public/typedTracker.d.ts.map +1 -0
  1033. package/dist/public/typedTracker.js +60 -0
  1034. package/dist/public/typedTracker.js.map +1 -0
  1035. package/dist/scalebun-push-sw.js +236 -0
  1036. package/dist/scalebun.min.js +717 -0
  1037. package/dist/scalebun.min.js.map +7 -0
  1038. package/dist/storage/idb.d.ts +16 -0
  1039. package/dist/storage/idb.d.ts.map +1 -0
  1040. package/dist/storage/idb.js +76 -0
  1041. package/dist/storage/idb.js.map +1 -0
  1042. package/dist/storage/index.d.ts +3 -0
  1043. package/dist/storage/index.d.ts.map +1 -0
  1044. package/dist/storage/index.js +3 -0
  1045. package/dist/storage/index.js.map +1 -0
  1046. package/dist/transport/gzip.d.ts +2 -0
  1047. package/dist/transport/gzip.d.ts.map +1 -0
  1048. package/dist/transport/gzip.js +20 -0
  1049. package/dist/transport/gzip.js.map +1 -0
  1050. package/dist/transport/httpClient.d.ts +156 -0
  1051. package/dist/transport/httpClient.d.ts.map +1 -0
  1052. package/dist/transport/httpClient.js +277 -0
  1053. package/dist/transport/httpClient.js.map +1 -0
  1054. package/dist/transport/index.d.ts +3 -0
  1055. package/dist/transport/index.d.ts.map +1 -0
  1056. package/dist/transport/index.js +3 -0
  1057. package/dist/transport/index.js.map +1 -0
  1058. package/dist/transport/sign.d.ts +25 -0
  1059. package/dist/transport/sign.d.ts.map +1 -0
  1060. package/dist/transport/sign.js +58 -0
  1061. package/dist/transport/sign.js.map +1 -0
  1062. package/package.json +67 -0
@@ -0,0 +1,459 @@
1
+ /**
2
+ * takeSnapshot — serialize a DOM subtree (or whole document) into our compact SNode tree.
3
+ * Privacy-by-default: all text + input values masked at serialize time, so raw PII never leaves
4
+ * this function. CSSOM-first: <style> captures live cssRules (CSS-in-JS) and the document captures
5
+ * adoptedStyleSheets — the things rrweb drops from the initial snapshot.
6
+ */
7
+ import { adoptedSheetId } from './cssom.js';
8
+ export const NO_MASK_TEXT_PARENTS = new Set(['STYLE', 'SCRIPT']);
9
+ // Attributes whose values can carry PII → masked when maskAllInputs is on. `srcdoc` is inline iframe
10
+ // HTML (same-origin srcdoc is also captured via contentDocument, so masking it loses nothing).
11
+ export const SENSITIVE_ATTRS = new Set(['value', 'placeholder', 'alt', 'title', 'aria-label', 'srcdoc']);
12
+ const SVG_NS = 'http://www.w3.org/2000/svg';
13
+ const MATHML_NS = 'http://www.w3.org/1998/Math/MathML';
14
+ // Always masked, regardless of maskAllText: developer-tagged regions and user-editable rich text
15
+ // (contenteditable is the DOM analog of an input — treat its text like a typed value).
16
+ const ALWAYS_MASK_SEL = '[data-scalebun-mask],[contenteditable=""],[contenteditable="true"]';
17
+ /** Build + validate the combined mask selector. An invalid host selector must never throw during
18
+ * capture — fall back to the always-mask defaults. */
19
+ function buildMaskSel(userSelectors) {
20
+ const extra = (userSelectors ?? []).filter((s) => typeof s === 'string' && s.trim());
21
+ const sel = extra.length ? `${ALWAYS_MASK_SEL},${extra.join(',')}` : ALWAYS_MASK_SEL;
22
+ try {
23
+ if (typeof document !== 'undefined')
24
+ document.documentElement.matches(sel); // throws on invalid syntax
25
+ return sel;
26
+ }
27
+ catch {
28
+ return ALWAYS_MASK_SEL;
29
+ }
30
+ }
31
+ /** True when `el` (or an ancestor) matches the mask selector — used to mask a subtree even when
32
+ * maskAllText is off. Guarded: a malformed selector or detached node never throws. */
33
+ export function isMaskedSubtree(el, sel) {
34
+ if (!el || !sel)
35
+ return false;
36
+ try {
37
+ return !!el.closest(sel);
38
+ }
39
+ catch {
40
+ return false;
41
+ }
42
+ }
43
+ export function resolveSnapshotOpts(opts = {}) {
44
+ return {
45
+ maskAllText: opts.maskAllText ?? true,
46
+ maskAllInputs: opts.maskAllInputs ?? true,
47
+ maskSel: buildMaskSel(opts.maskSelectors),
48
+ cssBudget: { used: 0 },
49
+ };
50
+ }
51
+ export function takeSnapshot(root, reg, opts = {}) {
52
+ return serializeNode(root, reg, resolveSnapshotOpts(opts)) ?? { t: 'doc', id: reg.add(root), children: [] };
53
+ }
54
+ export function serializeNode(node, reg, o) {
55
+ switch (node.nodeType) {
56
+ case 9: {
57
+ // document
58
+ const id = reg.add(node);
59
+ const out = { t: 'doc', id, children: serializeChildren(node, reg, o) };
60
+ const adopted = serializeAdopted(node, node.baseURI);
61
+ if (adopted.length)
62
+ out.adoptedStyles = adopted;
63
+ return out;
64
+ }
65
+ case 10: {
66
+ const dt = node;
67
+ return { t: 'dt', id: reg.add(node), name: dt.name, publicId: dt.publicId, systemId: dt.systemId };
68
+ }
69
+ case 1: {
70
+ const el = node;
71
+ // A stylesheet <link> becomes an inline <style> holding its rules, in the
72
+ // same position so the cascade order is preserved. Without this the
73
+ // reconstruction has to re-fetch a URL that is often already gone.
74
+ if (isStylesheetLink(el))
75
+ return serializeStylesheetLink(el, reg, o, o.cssBudget);
76
+ const id = reg.add(node);
77
+ const tag = el.tagName.toLowerCase();
78
+ const ns = el.namespaceURI === SVG_NS ? 'svg' : el.namespaceURI === MATHML_NS ? 'math' : undefined;
79
+ const children = tag === 'style'
80
+ ? serializeStyleChildren(el, reg)
81
+ : // <template> content lives in `.content` (a DocumentFragment), not childNodes — capture it
82
+ // so templated/declarative-shadow markup isn't lost.
83
+ tag === 'template'
84
+ ? serializeChildren(el.content, reg, o)
85
+ : serializeChildren(el, reg, o);
86
+ const out = { t: 'el', id, tag, attrs: serializeAttrs(el, o), children };
87
+ if (ns)
88
+ out.ns = ns;
89
+ /**
90
+ * SCROLL POSITION IS PART OF THE PAGE'S STATE, and the snapshot had nowhere to put it.
91
+ *
92
+ * Scroll existed only as an interaction event, so the player could restore it only when a
93
+ * scroll event happened to sit inside the frames it currently held. Three things combined
94
+ * badly: production keyframes land every 30 s at the median, a rebuild replaces
95
+ * `documentElement` wholesale and therefore resets to the top, and the player builds its model
96
+ * from a six-segment resident window. A visitor who scrolled to a form and then read it for
97
+ * twenty seconds replayed as the TOP of the page — while their clicks, which carry their own
98
+ * scroll offset, were drawn hundreds of pixels away from anything. This is the single largest
99
+ * cause of "the replay does not look like what happened".
100
+ *
101
+ * Only non-zero offsets are emitted, so the overwhelming majority of elements cost nothing.
102
+ * Reads are cheap here despite forcing layout: serialization is pure reads with no interleaved
103
+ * writes, so the browser computes layout once for the whole snapshot rather than per element.
104
+ * rrweb writes the same two values as `rr_scrollLeft`/`rr_scrollTop`.
105
+ */
106
+ const sx = el.scrollLeft | 0;
107
+ const sy = el.scrollTop | 0;
108
+ if (sx)
109
+ out.sx = sx;
110
+ if (sy)
111
+ out.sy = sy;
112
+ // Web components: descend into the OPEN shadow root (closed → shadowRoot is null → skipped).
113
+ const sr = el.shadowRoot;
114
+ if (sr)
115
+ out.shadow = serializeShadow(sr, reg, o);
116
+ return out;
117
+ }
118
+ case 3: {
119
+ const parentTag = node.parentNode?.nodeName ?? '';
120
+ const raw = node.data;
121
+ // Mask when maskAllText is on, OR (text shown) the parent is inside a masked subtree
122
+ // (contenteditable / [data-scalebun-mask] / host maskSelectors).
123
+ const mask = o.maskAllText || isMaskedSubtree(node.parentElement, o.maskSel);
124
+ const value = mask && !NO_MASK_TEXT_PARENTS.has(parentTag) ? maskText(raw) : raw;
125
+ return { t: 'tx', id: reg.add(node), value };
126
+ }
127
+ case 8:
128
+ return { t: 'cm', id: reg.add(node), value: node.data };
129
+ case 4: // CDATA → text
130
+ return { t: 'tx', id: reg.add(node), value: node.data };
131
+ default:
132
+ return null; // processing instructions etc.
133
+ }
134
+ }
135
+ function serializeChildren(node, reg, o) {
136
+ const out = [];
137
+ node.childNodes.forEach((child) => {
138
+ const s = serializeNode(child, reg, o);
139
+ if (s)
140
+ out.push(s);
141
+ });
142
+ return out;
143
+ }
144
+ /**
145
+ * Total inlined <link> CSS allowed per snapshot.
146
+ *
147
+ * Replay payloads are gzipped, but stylesheet text is the single biggest lever
148
+ * on snapshot size — a Tailwind/Bootstrap build can be hundreds of KB before
149
+ * compression. Past the cap we stop inlining and mark the remaining sheets
150
+ * unresolved rather than silently bloating every session.
151
+ */
152
+ export const MAX_INLINED_CSS_BYTES = 2 * 1024 * 1024;
153
+ /**
154
+ * Marks a <link rel=stylesheet> whose rules we could not read (cross-origin
155
+ * without CORS, or over the size cap). The dashboard reads this to tell the
156
+ * operator WHY a reconstruction looks unstyled instead of presenting a broken
157
+ * page as if it were the real one.
158
+ */
159
+ export const UNRESOLVED_SHEET_ATTR = 'data-scalebun-sheet-unresolved';
160
+ /** True for the <link> elements that actually contribute CSS to the page. */
161
+ function isStylesheetLink(el) {
162
+ if (el.tagName.toLowerCase() !== 'link')
163
+ return false;
164
+ const rel = (el.getAttribute('rel') ?? '').toLowerCase();
165
+ // `alternate stylesheet` is opt-in and not applied by default — leave it alone.
166
+ return rel.split(/\s+/).includes('stylesheet') && !rel.includes('alternate');
167
+ }
168
+ /**
169
+ * Read the CSS text of a same-origin (or CORS-enabled) linked stylesheet.
170
+ *
171
+ * Deliberately SYNCHRONOUS via the CSSOM rather than `fetch()`: takeSnapshot is
172
+ * sync, the rules are already parsed and in memory, and going over the network
173
+ * would add CSP surprises, latency, and a second copy of every asset. This is
174
+ * the same mechanism rrweb's `inlineStylesheet` uses.
175
+ *
176
+ * Returns null when the sheet is unreadable — cross-origin sheets throw on
177
+ * `.cssRules` access by design, and that is not an error worth reporting.
178
+ */
179
+ function readLinkedCss(link) {
180
+ try {
181
+ const rules = link.sheet?.cssRules;
182
+ if (!rules || rules.length === 0)
183
+ return null;
184
+ return Array.from(rules)
185
+ .map((r) => r.cssText)
186
+ .join('');
187
+ }
188
+ catch {
189
+ return null; // cross-origin without CORS — expected, not exceptional
190
+ }
191
+ }
192
+ /**
193
+ * Serialize a stylesheet <link> as an inline <style> holding its rules.
194
+ *
195
+ * WHY THIS EXISTS
196
+ * The serializer used to only ABSOLUTIZE a link's href and move on, so a
197
+ * reconstruction had to re-fetch that URL later, from a different page, to look
198
+ * like anything. Measured against a real capture, that meant: perfect DOM (309
199
+ * class attributes) and zero styling, because the hrefs pointed at Next.js
200
+ * content-hashed dev chunks (`_next/static/chunks/[root-of-the-server]__a968157c.css`)
201
+ * that stop existing on the next rebuild. Heatmap backdrops and replays both
202
+ * rendered as raw unstyled HTML.
203
+ *
204
+ * Emitting a <style> IN THE LINK'S POSITION preserves cascade order and needs no
205
+ * replayer change — <style> with a text child is already handled. `media` is
206
+ * carried across so a print-only sheet does not start applying to screen.
207
+ */
208
+ function serializeStylesheetLink(link, reg, o, budget) {
209
+ const id = reg.add(link);
210
+ const css = readLinkedCss(link);
211
+ if (css && budget.used + css.length <= MAX_INLINED_CSS_BYTES) {
212
+ budget.used += css.length;
213
+ const absolute = absolutizeCssUrls(css, link.ownerDocument.baseURI);
214
+ const textNode = link.ownerDocument.createTextNode('');
215
+ const attrs = {};
216
+ const media = link.getAttribute('media');
217
+ if (media)
218
+ attrs.media = media;
219
+ // Keep the origin href for debugging; it is inert on a <style>.
220
+ const href = link.getAttribute('href');
221
+ if (href)
222
+ attrs['data-scalebun-href'] = absUrl(href, link.ownerDocument.baseURI);
223
+ return { t: 'el', id, tag: 'style', attrs, children: [{ t: 'tx', id: reg.add(textNode), value: absolute }] };
224
+ }
225
+ // Unreadable or over budget: keep the <link> so a same-origin replay can still
226
+ // resolve it, and flag it so the dashboard can say so out loud.
227
+ const attrs = serializeAttrs(link, o);
228
+ attrs[UNRESOLVED_SHEET_ATTR] = css ? 'budget' : 'cors';
229
+ return { t: 'el', id, tag: 'link', attrs, children: [] };
230
+ }
231
+ /** <style>: prefer live cssRules (captures insertRule/CSS-in-JS); fall back to textContent. */
232
+ function serializeStyleChildren(style, reg) {
233
+ let css = '';
234
+ try {
235
+ const rules = style.sheet?.cssRules;
236
+ if (rules && rules.length)
237
+ css = Array.from(rules).map((r) => r.cssText).join('');
238
+ }
239
+ catch {
240
+ /* cross-origin sheet — not readable */
241
+ }
242
+ if (!css)
243
+ css = style.textContent ?? '';
244
+ if (!css)
245
+ return [];
246
+ css = absolutizeCssUrls(css, style.ownerDocument.baseURI); // relative url()/@import → absolute
247
+ const textNode = style.firstChild ?? style.ownerDocument.createTextNode('');
248
+ return [{ t: 'tx', id: reg.add(textNode), value: css }];
249
+ }
250
+ /**
251
+ * A password field. Its CHARACTERS are never captured on any lane (keyframe, mutation, input event),
252
+ * whatever `maskAllInputs` says — the value is replaced with same-length asterisks via `maskSecret`.
253
+ *
254
+ * It used to be blanked to '' outright. That read as an untouched field on replay: an empty value lets
255
+ * the page's own placeholder show through, so a login where the user typed (or the browser autofilled)
256
+ * a password was indistinguishable from one where they never reached the field. Length-only masking
257
+ * keeps that distinction while still shipping nothing about the content.
258
+ *
259
+ * Shared rather than re-tested inline per lane, because the lanes had drifted. The keyframe and
260
+ * input-event lanes handled passwords unconditionally, but the mutation lane only masked `value` when
261
+ * `maskAllInputs` was on — so with masking off, `el.setAttribute('value', …)` on a password input
262
+ * shipped the credential in plaintext. That is reachable from ordinary code: a React `defaultValue`
263
+ * re-render, a server-rendered form re-hydrating, or an extension/password-manager shim that writes
264
+ * the attribute rather than the property.
265
+ *
266
+ * Note the property/attribute split is why that was invisible: typing and browser autofill mutate the
267
+ * `value` PROPERTY, which MutationObserver cannot see, so the common paths never reached the buggy
268
+ * branch and the leak only opened for code that writes the attribute explicitly.
269
+ */
270
+ export function isPasswordField(el) {
271
+ const tag = el.tagName?.toLowerCase();
272
+ if (tag !== 'input' && tag !== 'textarea')
273
+ return false;
274
+ return (el.getAttribute?.('type') || '').toLowerCase() === 'password';
275
+ }
276
+ function serializeAttrs(el, o) {
277
+ const attrs = {};
278
+ for (const a of Array.from(el.attributes)) {
279
+ attrs[a.name] = o.maskAllInputs && SENSITIVE_ATTRS.has(a.name) ? maskText(a.value) : a.value;
280
+ }
281
+ const tag = el.tagName.toLowerCase();
282
+ // Input values. A password's CHARACTERS are never captured regardless of maskAllInputs — only its
283
+ // length, as asterisks. Other inputs are masked when maskAllInputs is on, else the real typed value
284
+ // (el.value) is captured. `el.value` is the live PROPERTY, which is what typing and browser autofill
285
+ // actually mutate; the `value` attribute usually still holds whatever the markup shipped with.
286
+ if (tag === 'input' || tag === 'textarea') {
287
+ const live = el.value ?? attrs.value ?? '';
288
+ if (isPasswordField(el))
289
+ attrs.value = maskSecret(live);
290
+ else
291
+ attrs.value = o.maskAllInputs ? maskText(live) : live;
292
+ }
293
+ /**
294
+ * CHECKEDNESS AND SELECTEDNESS ARE PROPERTIES, exactly like `value` above — and nothing captured
295
+ * them, so every checkbox, radio and select replayed as the markup shipped rather than as the
296
+ * visitor left it. On a booking or checkout flow that means every choice the user made was
297
+ * invisible in the replay, which reads as the product being wrong rather than the recording being
298
+ * incomplete.
299
+ *
300
+ * The argument is identical to the one already written for `value`: the ATTRIBUTE holds what the
301
+ * page was authored with, and the PROPERTY holds what the user did. Writing the property back as an
302
+ * attribute is what the player needs, because it rebuilds elements from scratch — a fresh element's
303
+ * checkedness follows its `checked` attribute, since nothing has dirtied it yet.
304
+ *
305
+ * Not masked by `maskAllInputs`: a checkbox carries no free text, and "which option was chosen" is
306
+ * the whole reason to watch a form replay. rrweb makes the same call.
307
+ */
308
+ if (tag === 'input') {
309
+ if (el.checked)
310
+ attrs.checked = '';
311
+ else
312
+ delete attrs.checked;
313
+ }
314
+ else if (tag === 'option') {
315
+ if (el.selected)
316
+ attrs.selected = '';
317
+ else
318
+ delete attrs.selected;
319
+ }
320
+ // De-lazy: a `loading="lazy"` img/iframe may never enter the player's viewport, so it would never
321
+ // paint on replay. Capturing it eager (the URL is already in `src`/`srcset`) makes any player load it.
322
+ if (attrs.loading === 'lazy' && (tag === 'img' || tag === 'iframe'))
323
+ attrs.loading = 'eager';
324
+ // Absolutize resource URLs against the captured doc's base so a replay rendered from a DIFFERENT
325
+ // origin (e.g. the dashboard) still loads images, backgrounds, media, web fonts and SVG refs.
326
+ // Covers src / srcset / poster / inline style url(...) / <link> & SVG <use>/<image> href.
327
+ // Navigation hrefs (<a>, <base>) are deliberately left relative — they aren't fetched on replay.
328
+ const base = el.ownerDocument?.baseURI ?? '';
329
+ for (const name of RESOURCE_URL_ATTRS) {
330
+ const v = attrs[name];
331
+ if (v != null)
332
+ attrs[name] = absolutizeAttrValue(name, v, tag, base);
333
+ }
334
+ return attrs;
335
+ }
336
+ /** Serialize an OPEN shadow root — its subtree (masked via the same opts) + its own adopted sheets. */
337
+ export function serializeShadow(root, reg, o) {
338
+ const id = reg.add(root); // register the root so in-shadow deltas can target it as a parent
339
+ const shadow = { mode: 'open', id, children: serializeChildren(root, reg, o) };
340
+ const base = root.host?.ownerDocument?.baseURI ?? '';
341
+ const adopted = serializeAdopted(root, base);
342
+ if (adopted.length)
343
+ shadow.adoptedStyles = adopted;
344
+ return shadow;
345
+ }
346
+ function serializeAdopted(doc, base) {
347
+ try {
348
+ const sheets = doc.adoptedStyleSheets;
349
+ if (!sheets || !sheets.length)
350
+ return [];
351
+ const out = [];
352
+ for (const s of sheets) {
353
+ try {
354
+ const css = Array.from(s.cssRules)
355
+ .map((r) => r.cssText)
356
+ .join('');
357
+ if (css)
358
+ out.push({ id: adoptedSheetId(s), css: absolutizeCssUrls(css, base) });
359
+ }
360
+ catch {
361
+ /* cross-origin — skip */
362
+ }
363
+ }
364
+ return out;
365
+ }
366
+ catch {
367
+ return [];
368
+ }
369
+ }
370
+ /** Mask visible chars, preserve length + whitespace. Non-reversible. */
371
+ export function maskText(s) {
372
+ return s.replace(/\S/g, '*');
373
+ }
374
+ /**
375
+ * Mask a credential: EVERY character becomes '*', length preserved, nothing else.
376
+ *
377
+ * Deliberately stricter than `maskText`, which preserves whitespace so masked prose still reads as
378
+ * prose. On a password that would leak real structure — a passphrase would show its word boundaries
379
+ * and word lengths. Here only the total length survives.
380
+ *
381
+ * Length is survivable-by-design: it is what makes the replayed field render as dots instead of
382
+ * falling back to the page's placeholder, which is the difference between "the user typed a password"
383
+ * and "the field looks untouched". The characters never leave the page.
384
+ */
385
+ export function maskSecret(s) {
386
+ return '*'.repeat(s.length);
387
+ }
388
+ // Already-absolute / non-resolvable refs to leave alone: absolute or protocol-relative URLs, data:,
389
+ // blob:, about:, and intra-document fragments (e.g. SVG `url(#clip)`).
390
+ const SKIP_URL_RE = /^(?:[a-z][a-z0-9+.-]*:|\/\/|#)/i;
391
+ /** Resolve a possibly-relative resource ref against `base`; leave absolute/data/blob/fragment refs. */
392
+ export function absUrl(ref, base) {
393
+ const r = ref.trim();
394
+ if (!r || !base || SKIP_URL_RE.test(r))
395
+ return ref;
396
+ try {
397
+ return new URL(r, base).href;
398
+ }
399
+ catch {
400
+ return ref;
401
+ }
402
+ }
403
+ /** Rewrite relative `url(...)` + `@import "…"` refs in CSS to absolute, so a replay rendered from a
404
+ * DIFFERENT origin still resolves background images, web fonts, and imported sheets. */
405
+ export function absolutizeCssUrls(css, base) {
406
+ if (!css || !base)
407
+ return css;
408
+ let out = css.replace(/url\(\s*(['"]?)([^'")]*)\1\s*\)/gi, (_m, q, ref) => `url(${q}${absUrl(ref, base)}${q})`);
409
+ out = out.replace(/@import\s+(['"])([^'"]+)\1/gi, (_m, q, ref) => `@import ${q}${absUrl(ref, base)}${q}`);
410
+ return out;
411
+ }
412
+ /** URL-bearing attributes we absolutize so a cross-origin replay can still fetch the referenced asset. */
413
+ const RESOURCE_URL_ATTRS = ['src', 'srcset', 'poster', 'style', 'href', 'xlink:href', 'data'];
414
+ /**
415
+ * Absolutize one URL-bearing attribute value against `base`. Resource refs (images, media, posters,
416
+ * inline background-image url(...), web fonts, SVG <use>/<image>) → absolute; navigation refs
417
+ * (<a>/<base> href) are left untouched. Shared by the initial snapshot and the mutation delta path so
418
+ * assets added AFTER load resolve identically. `absUrl`/`absolutizeCssUrls` already skip
419
+ * absolute/data/blob/fragment refs, so this is safe to call unconditionally.
420
+ */
421
+ export function absolutizeAttrValue(name, value, tag, base) {
422
+ if (!value || !base)
423
+ return value;
424
+ switch (name) {
425
+ case 'src':
426
+ case 'poster':
427
+ return absUrl(value, base);
428
+ case 'srcset':
429
+ return absolutizeSrcset(value, base);
430
+ case 'style':
431
+ return absolutizeCssUrls(value, base); // inline style="background-image:url(...)" etc.
432
+ case 'href':
433
+ return tag === 'link' || tag === 'use' || tag === 'image' ? absUrl(value, base) : value;
434
+ case 'xlink:href':
435
+ return tag === 'use' || tag === 'image' ? absUrl(value, base) : value;
436
+ case 'data':
437
+ return tag === 'object' ? absUrl(value, base) : value; // <object data="…"> resource ref
438
+ default:
439
+ return value;
440
+ }
441
+ }
442
+ /** Absolutize every candidate URL in a srcset ("url 1x, url 2x" / "url 100w, …"). Left untouched when
443
+ * it contains a data: URI — embedded commas would break naive splitting, and data URIs are already
444
+ * self-contained. */
445
+ export function absolutizeSrcset(srcset, base) {
446
+ if (!srcset || !base || /data:/i.test(srcset))
447
+ return srcset;
448
+ return srcset
449
+ .split(',')
450
+ .map((part) => {
451
+ const seg = part.trim();
452
+ if (!seg)
453
+ return seg;
454
+ const sp = seg.search(/\s/); // URL is up to the first whitespace; the rest is the descriptor
455
+ return sp === -1 ? absUrl(seg, base) : absUrl(seg.slice(0, sp), base) + seg.slice(sp);
456
+ })
457
+ .join(', ');
458
+ }
459
+ //# sourceMappingURL=snapshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../src/features/replay/engine/snapshot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { NodeRegistry } from './nodeRegistry.js';
2
+ /**
3
+ * Unregister a node and its whole subtree (on removal — descendants' ids go stale).
4
+ *
5
+ * Recurses OPEN shadow roots: a host's shadow tree holds registered ids too, and `childNodes` does not
6
+ * cross the shadow boundary. Without this, removing a shadow host left every id inside its shadow tree
7
+ * in the registry — pinning the detached nodes for the life of the session (a real leak in long SPA
8
+ * sessions that mount/unmount web components).
9
+ */
10
+ export declare function unregisterSubtree(node: Node, reg: NodeRegistry): void;
11
+ /**
12
+ * Every OPEN shadow root inside `node`'s subtree (its own + nested). Used to release the per-root
13
+ * MutationObservers when a host is removed — otherwise the observer keeps running against a detached
14
+ * tree and the strong ShadowRoot key retains it.
15
+ */
16
+ export declare function collectShadowRoots(node: Node, out?: ShadowRoot[]): ShadowRoot[];
17
+ /** Mark a node + its subtree as already-handled (so nested adds aren't double-serialized). */
18
+ export declare function markSubtree(node: Node, set: Set<Node>): void;
19
+ //# sourceMappingURL=traverse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traverse.d.ts","sourceRoot":"","sources":["../../../../src/features/replay/engine/traverse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAO9C;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CAKrE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,GAAE,UAAU,EAAO,GAAG,UAAU,EAAE,CAQnF;AAED,8FAA8F;AAC9F,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAG5D"}
@@ -0,0 +1,39 @@
1
+ /** The open shadow root of a node, if any. Closed roots are invisible to us by design. */
2
+ function shadowOf(node) {
3
+ return node.shadowRoot ?? null;
4
+ }
5
+ /**
6
+ * Unregister a node and its whole subtree (on removal — descendants' ids go stale).
7
+ *
8
+ * Recurses OPEN shadow roots: a host's shadow tree holds registered ids too, and `childNodes` does not
9
+ * cross the shadow boundary. Without this, removing a shadow host left every id inside its shadow tree
10
+ * in the registry — pinning the detached nodes for the life of the session (a real leak in long SPA
11
+ * sessions that mount/unmount web components).
12
+ */
13
+ export function unregisterSubtree(node, reg) {
14
+ reg.remove(node);
15
+ const sr = shadowOf(node);
16
+ if (sr)
17
+ sr.childNodes.forEach((c) => unregisterSubtree(c, reg));
18
+ node.childNodes.forEach((c) => unregisterSubtree(c, reg));
19
+ }
20
+ /**
21
+ * Every OPEN shadow root inside `node`'s subtree (its own + nested). Used to release the per-root
22
+ * MutationObservers when a host is removed — otherwise the observer keeps running against a detached
23
+ * tree and the strong ShadowRoot key retains it.
24
+ */
25
+ export function collectShadowRoots(node, out = []) {
26
+ const sr = shadowOf(node);
27
+ if (sr) {
28
+ out.push(sr);
29
+ sr.childNodes.forEach((c) => collectShadowRoots(c, out));
30
+ }
31
+ node.childNodes.forEach((c) => collectShadowRoots(c, out));
32
+ return out;
33
+ }
34
+ /** Mark a node + its subtree as already-handled (so nested adds aren't double-serialized). */
35
+ export function markSubtree(node, set) {
36
+ set.add(node);
37
+ node.childNodes.forEach((c) => markSubtree(c, set));
38
+ }
39
+ //# sourceMappingURL=traverse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traverse.js","sourceRoot":"","sources":["../../../../src/features/replay/engine/traverse.ts"],"names":[],"mappings":"AAEA,0FAA0F;AAC1F,SAAS,QAAQ,CAAC,IAAU;IAC1B,OAAQ,IAAgB,CAAC,UAAU,IAAI,IAAI,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAU,EAAE,GAAiB;IAC7D,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,EAAE;QAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAU,EAAE,MAAoB,EAAE;IACnE,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,EAAE,EAAE,CAAC;QACP,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3D,OAAO,GAAG,CAAC;AACb,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,WAAW,CAAC,IAAU,EAAE,GAAc;IACpD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACd,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AACtD,CAAC"}