@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,118 @@
1
+ // Web-perf collectors (page-load / FPS / LoAF) — the LAZY chunk. Loaded by WebPerfFeature.setup so the
2
+ // observer/rAF wiring stays out of the core bundle. Returns a stop() that tears everything down.
3
+ import { fpsFromFrames, loafSeverity, navMetric } from './math.js';
4
+ const FPS_WINDOW_MS = 5000;
5
+ const FPS_GAP_MS = 25000;
6
+ const LOAF_MIN_MS = 50;
7
+ const MEM_GAP_MS = 30000; // JS-heap sample cadence (Chromium `performance.memory`)
8
+ export function startCollectors(emit, isActive) {
9
+ let observer;
10
+ let raf;
11
+ let fpsTimer;
12
+ let memTimer;
13
+ let onLoad;
14
+ // Sample used JS-heap on a slow cadence → the 'memory' PerformanceMetric the High-Memory KPI counts.
15
+ // `performance.memory` is Chromium-only + non-standard; degrades to a no-op elsewhere (never throws).
16
+ const sampleMemory = () => {
17
+ if (!isActive())
18
+ return;
19
+ try {
20
+ const mem = performance.memory;
21
+ const used = mem?.usedJSHeapSize;
22
+ if (typeof used === 'number' && used > 0) {
23
+ emit('memory', used, { kind: 'js_heap', totalHeap: mem?.totalJSHeapSize, heapLimit: mem?.jsHeapSizeLimit });
24
+ }
25
+ }
26
+ catch {
27
+ /* performance.memory unavailable */
28
+ }
29
+ memTimer = setTimeout(sampleMemory, MEM_GAP_MS);
30
+ };
31
+ const capturePageLoad = () => {
32
+ try {
33
+ const navs = performance.getEntriesByType?.('navigation');
34
+ const nav = navs?.[0];
35
+ if (!nav || nav.loadEventEnd <= 0)
36
+ return;
37
+ const m = navMetric(nav);
38
+ emit('screen_load', m.value, m.metadata, m.value);
39
+ }
40
+ catch {
41
+ /* Navigation Timing unavailable */
42
+ }
43
+ };
44
+ const startLoaf = () => {
45
+ const PO = window.PerformanceObserver;
46
+ if (!PO)
47
+ return;
48
+ const types = PO.supportedEntryTypes ?? [];
49
+ const useLoaf = types.includes('long-animation-frame');
50
+ const useLongtask = !useLoaf && types.includes('longtask');
51
+ if (!useLoaf && !useLongtask)
52
+ return;
53
+ try {
54
+ const obs = new PO((list) => {
55
+ for (const e of list.getEntries()) {
56
+ const blocking = useLoaf ? (e.blockingDuration ?? 0) : e.duration;
57
+ if (blocking < LOAF_MIN_MS)
58
+ continue;
59
+ emit('js_stall', Math.round(blocking), { kind: useLoaf ? 'loaf' : 'longtask', severity: loafSeverity(blocking) }, Math.round(e.duration));
60
+ }
61
+ });
62
+ obs.observe({ type: useLoaf ? 'long-animation-frame' : 'longtask', buffered: true });
63
+ observer = obs;
64
+ }
65
+ catch {
66
+ /* observer type unsupported */
67
+ }
68
+ };
69
+ const sampleFps = () => {
70
+ if (!isActive())
71
+ return;
72
+ if ((typeof document !== 'undefined' && document.visibilityState !== 'visible') || typeof requestAnimationFrame === 'undefined') {
73
+ fpsTimer = setTimeout(sampleFps, FPS_GAP_MS);
74
+ return;
75
+ }
76
+ let frames = 0;
77
+ const start = performance.now();
78
+ const tick = () => {
79
+ if (!isActive())
80
+ return;
81
+ frames++;
82
+ const elapsed = performance.now() - start;
83
+ if (elapsed < FPS_WINDOW_MS) {
84
+ raf = requestAnimationFrame(tick);
85
+ }
86
+ else {
87
+ const { fps, dropped } = fpsFromFrames(frames, elapsed);
88
+ emit('frame_metrics', fps, { totalFrames: frames, dropped, windowMs: Math.round(elapsed) });
89
+ fpsTimer = setTimeout(sampleFps, FPS_GAP_MS);
90
+ }
91
+ };
92
+ raf = requestAnimationFrame(tick);
93
+ };
94
+ if (document.readyState === 'complete') {
95
+ setTimeout(capturePageLoad, 0);
96
+ }
97
+ else {
98
+ onLoad = () => setTimeout(capturePageLoad, 0);
99
+ window.addEventListener('load', onLoad, { once: true });
100
+ }
101
+ startLoaf();
102
+ fpsTimer = setTimeout(sampleFps, FPS_GAP_MS);
103
+ // Only arm the memory sampler when the API exists, so unsupported browsers don't spin an idle timer.
104
+ if (performance.memory)
105
+ memTimer = setTimeout(sampleMemory, MEM_GAP_MS);
106
+ return () => {
107
+ observer?.disconnect();
108
+ if (raf != null && typeof cancelAnimationFrame !== 'undefined')
109
+ cancelAnimationFrame(raf);
110
+ if (fpsTimer)
111
+ clearTimeout(fpsTimer);
112
+ if (memTimer)
113
+ clearTimeout(memTimer);
114
+ if (onLoad && typeof window !== 'undefined')
115
+ window.removeEventListener('load', onLoad);
116
+ };
117
+ }
118
+ //# sourceMappingURL=collectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collectors.js","sourceRoot":"","sources":["../../../src/features/webperf/collectors.ts"],"names":[],"mappings":"AAAA,uGAAuG;AACvG,iGAAiG;AACjG,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEhE,MAAM,aAAa,GAAG,IAAI,CAAC;AAC3B,MAAM,UAAU,GAAG,KAAM,CAAC;AAC1B,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,UAAU,GAAG,KAAM,CAAC,CAAC,yDAAyD;AAkBpF,MAAM,UAAU,eAAe,CAAC,IAAc,EAAE,QAAuB;IACrE,IAAI,QAA4C,CAAC;IACjD,IAAI,GAAuB,CAAC;IAC5B,IAAI,QAAmD,CAAC;IACxD,IAAI,QAAmD,CAAC;IACxD,IAAI,MAAgC,CAAC;IAErC,qGAAqG;IACrG,sGAAsG;IACtG,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,IAAI,CAAC,QAAQ,EAAE;YAAE,OAAO;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAI,WAAoD,CAAC,MAAM,CAAC;YACzE,MAAM,IAAI,GAAG,GAAG,EAAE,cAAc,CAAC;YACjC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC;YAC9G,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;QACtC,CAAC;QACD,QAAQ,GAAG,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,GAAS,EAAE;QACjC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,WAAW,CAAC,gBAAgB,EAAE,CAAC,YAAY,CAA8C,CAAC;YACvG,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,IAAI,CAAC;gBAAE,OAAO;YAC1C,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,MAAM,EAAE,GAAI,MAAgE,CAAC,mBAAmB,CAAC;QACjG,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,KAAK,GAAG,EAAE,CAAC,mBAAmB,IAAI,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW;YAAE,OAAO;QACrC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1B,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;oBAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAE,CAAmC,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oBACrG,IAAI,QAAQ,GAAG,WAAW;wBAAE,SAAS;oBACrC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC5I,CAAC;YACH,CAAC,CAAC,CAAC;YACH,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YACrF,QAAQ,GAAG,GAAG,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,+BAA+B;QACjC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,IAAI,CAAC,QAAQ,EAAE;YAAE,OAAO;QACxB,IAAI,CAAC,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,CAAC,IAAI,OAAO,qBAAqB,KAAK,WAAW,EAAE,CAAC;YAChI,QAAQ,GAAG,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,GAAS,EAAE;YACtB,IAAI,CAAC,QAAQ,EAAE;gBAAE,OAAO;YACxB,MAAM,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YAC1C,IAAI,OAAO,GAAG,aAAa,EAAE,CAAC;gBAC5B,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBACxD,IAAI,CAAC,eAAe,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC5F,QAAQ,GAAG,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC,CAAC;QACF,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QACvC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,SAAS,EAAE,CAAC;IACZ,QAAQ,GAAG,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC7C,qGAAqG;IACrG,IAAK,WAAoD,CAAC,MAAM;QAAE,QAAQ,GAAG,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAElH,OAAO,GAAG,EAAE;QACV,QAAQ,EAAE,UAAU,EAAE,CAAC;QACvB,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,oBAAoB,KAAK,WAAW;YAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC1F,IAAI,QAAQ;YAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,QAAQ;YAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1F,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare function loafSeverity(blockingMs: number): 'info' | 'warning' | 'critical';
2
+ /** Frames counted over a window → estimated fps (cap 60) + dropped count. */
3
+ export declare function fpsFromFrames(frames: number, windowMs: number): {
4
+ fps: number;
5
+ dropped: number;
6
+ };
7
+ /** Page-load metric from a Navigation Timing entry. */
8
+ export declare function navMetric(nav: PerformanceNavigationTiming): {
9
+ value: number;
10
+ metadata: Record<string, unknown>;
11
+ };
12
+ //# sourceMappingURL=math.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/features/webperf/math.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAEhF;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAKhG;AAED,uDAAuD;AACvD,wBAAgB,SAAS,CAAC,GAAG,EAAE,2BAA2B,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAWhH"}
@@ -0,0 +1,26 @@
1
+ // Pure web-perf math — shared by the (lazy) collectors and the unit tests.
2
+ export function loafSeverity(blockingMs) {
3
+ return blockingMs >= 200 ? 'critical' : blockingMs >= 100 ? 'warning' : 'info';
4
+ }
5
+ /** Frames counted over a window → estimated fps (cap 60) + dropped count. */
6
+ export function fpsFromFrames(frames, windowMs) {
7
+ if (windowMs <= 0)
8
+ return { fps: 0, dropped: 0 };
9
+ const fps = Math.min(60, Math.round((frames / windowMs) * 1000));
10
+ const expected = Math.round((windowMs / 1000) * 60);
11
+ return { fps, dropped: Math.max(0, expected - frames) };
12
+ }
13
+ /** Page-load metric from a Navigation Timing entry. */
14
+ export function navMetric(nav) {
15
+ const load = Math.round(nav.loadEventEnd || nav.duration);
16
+ return {
17
+ value: load,
18
+ metadata: {
19
+ kind: 'page_load',
20
+ ttfb: Math.round(nav.responseStart),
21
+ dcl: Math.round(nav.domContentLoadedEventEnd),
22
+ navType: nav.type,
23
+ },
24
+ };
25
+ }
26
+ //# sourceMappingURL=math.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.js","sourceRoot":"","sources":["../../../src/features/webperf/math.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC7C,OAAO,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AACjF,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,QAAgB;IAC5D,IAAI,QAAQ,IAAI,CAAC;QAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACpD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,SAAS,CAAC,GAAgC;IACxD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1D,OAAO;QACL,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;YACnC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC;YAC7C,OAAO,EAAE,GAAG,CAAC,IAAI;SAClB;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Subpath entry for `@scalebun/web/inapp` — the In-App Messaging 2.0 public API. Kept separate from
3
+ * the size-gated `index.ts` so none of the IAM engine loads into the eager core bundle.
4
+ */
5
+ export * from './features/inapp/index.js';
6
+ //# sourceMappingURL=inapp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inapp.d.ts","sourceRoot":"","sources":["../src/inapp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,kBAAkB,CAAC"}
package/dist/inapp.js ADDED
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Subpath entry for `@scalebun/web/inapp` — the In-App Messaging 2.0 public API. Kept separate from
3
+ * the size-gated `index.ts` so none of the IAM engine loads into the eager core bundle.
4
+ */
5
+ export * from './features/inapp/index.js';
6
+ //# sourceMappingURL=inapp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inapp.js","sourceRoot":"","sources":["../src/inapp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @scalebun/web — Public entry point.
3
+ *
4
+ * The ONLY module consumers import from. Mirrors the RN SDK's single public surface.
5
+ *
6
+ * import ScaleBun from '@scalebun/web';
7
+ * await ScaleBun.init({ clientKey: 'pk_xxx', apiBaseUrl: 'https://api.scalebun.com/api/v1' });
8
+ *
9
+ * 🚧 Scaffold: the facade is stubbed; capture features are not implemented yet.
10
+ */
11
+ export { ScaleBun as default, ScaleBun } from './public/ScaleBunFacade.js';
12
+ export type { ScaleBunInitConfig, ScaleBunFeatures, ScaleBunUser, PrivacyConfig, } from '@scalebun/sdk-contracts';
13
+ /** Business telemetry contracts shared with the React Native SDK. */
14
+ export type { RevenueInput, RevenueType, NormalizedRevenue } from './features/analytics/revenue.js';
15
+ export type { SubscriptionInput, SubscriptionPlan, SubscriptionStatus } from './features/analytics/subscription.js';
16
+ /**
17
+ * The gamified in-app contract, so a host can type its `onInAppGameRequest` handler — and share one
18
+ * implementation with the React Native SDK, where these types are identical.
19
+ *
20
+ * TYPES ONLY: `export type` erases at build time, so this adds nothing to the bundle.
21
+ */
22
+ export type { InAppGameRequest, InAppGameResult, InAppGameOutcome, InAppGameAction, InAppGameVariantKey, InAppGameRequestHandler, } from './features/engage/gameTypes.js';
23
+ /**
24
+ * Inbox contracts, so a host can render the message list in its OWN design system.
25
+ *
26
+ * ⚠️ These were unreachable from the package root, which quietly forced every headless integration
27
+ * to be untyped — the one path the inbox is explicitly built for ("UI is opt-in; hosts that render
28
+ * their own never pay for the widget"). A headless-first feature whose types are private is
29
+ * headless-first in name only.
30
+ *
31
+ * TYPES ONLY — `export type` erases at build time, so this costs zero bytes.
32
+ */
33
+ export type { InboxMessage, InboxController, InboxState, InboxCta, InboxQueryOptions, InboxPage, InboxMessageState, InboxSyncStatus, InboxMountOptions, InboxLabels, InboxLayout, } from './features/inbox/types.js';
34
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxE,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,aAAa,GACd,MAAM,yBAAyB,CAAC;AAEjC,qEAAqE;AACrE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjG,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEjH;;;;;GAKG;AACH,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;GASG;AACH,YAAY,EACV,YAAY,EACZ,eAAe,EACf,UAAU,EACV,QAAQ,EACR,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,WAAW,GACZ,MAAM,wBAAwB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @scalebun/web — Public entry point.
3
+ *
4
+ * The ONLY module consumers import from. Mirrors the RN SDK's single public surface.
5
+ *
6
+ * import ScaleBun from '@scalebun/web';
7
+ * await ScaleBun.init({ clientKey: 'pk_xxx', apiBaseUrl: 'https://api.scalebun.com/api/v1' });
8
+ *
9
+ * 🚧 Scaffold: the facade is stubbed; capture features are not implemented yet.
10
+ */
11
+ export { ScaleBun as default, ScaleBun } from './public/ScaleBunFacade.js';
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,IAAI,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * integrations/ — framework router hooks + glue consumed by the adapter packages
3
+ * (@scalebun/web-react, /vue, /next, …). Auto route/page-name detection lives here.
4
+ * 🚧 SCAFFOLD: not implemented yet.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/integrations/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/integrations/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ /** pipeline/ — the single unified egress (envelope → queue → batch → flush). */
2
+ export * from './pipeline.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pipeline/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,cAAc,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** pipeline/ — the single unified egress (envelope → queue → batch → flush). */
2
+ export * from './pipeline.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pipeline/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,cAAc,YAAY,CAAC"}
@@ -0,0 +1,263 @@
1
+ /**
2
+ * THE pipeline — the SDK's single egress. Every feature emits Items here; this batches them into
3
+ * SessionEnvelopes and flushes on a timer / on page-hide. At-least-once: a failed batch is
4
+ * re-queued and mirrored to IndexedDB so it survives a reload.
5
+ */
6
+ import type { Item } from '@scalebun/protocol';
7
+ import type { ResolvedConfig } from '../config/schema.js';
8
+ import type { SessionManager } from '../features/session/sessionManager.js';
9
+ import type { HttpClient } from '../transport/httpClient.js';
10
+ export declare class Pipeline {
11
+ private readonly config;
12
+ private readonly session;
13
+ private readonly transport;
14
+ private queue;
15
+ private timer;
16
+ private droppedCount;
17
+ /**
18
+ * P6 — the egress ledger. `pending` and `dropped` alone could not answer the question the
19
+ * reliability work kept running into: recovery demonstrably WORKS (frames arrive with a capture-to-
20
+ * storage gap of up to 12.8 hours, which only a durable queue draining on a later visit produces)
21
+ * and its contribution was completely uncountable, so it could never be separated from ordinary
22
+ * delivery or defended when someone asked whether it was worth its bytes.
23
+ *
24
+ * `expired` is split out of `dropped` deliberately. Age-pruning a queue the app sat on for days is
25
+ * correct behaviour; evicting a live item because the queue overflowed is data loss. Counting both
26
+ * as "dropped" made a healthy reload look like a leak, which is how a real signal gets ignored.
27
+ */
28
+ private queuedCount;
29
+ private attemptedCount;
30
+ private retriedCount;
31
+ private recoveredCount;
32
+ private expiredCount;
33
+ private ackedCount;
34
+ private started;
35
+ private consentGranted;
36
+ private dead;
37
+ private lifecycle;
38
+ private readonly buffer;
39
+ private readonly backoff;
40
+ /** True while a flush is awaiting the network. Prevents two flushes (timer + pagehide/keepalive)
41
+ * from each splicing a different batch out of the queue. Parity with the in-app transport and the
42
+ * RN EventTracker, which both guard; the session lane was the gap. */
43
+ private flushing;
44
+ /** Resolves once the server has a session row for these items to attach to. Every flush awaits it
45
+ * — see start(). Pre-resolved so a flush before start() (or after stop()) is not deadlocked. */
46
+ private sessionStarted;
47
+ /** True once session-create has actually succeeded. See `armSession()`. */
48
+ private sessionOk;
49
+ /** Re-arm attempts spent. Bounded so a permanently-refusing server costs a few extra requests
50
+ * rather than one per flush for the life of the page. */
51
+ private sessionRetries;
52
+ /** A keyframe wanted the fast path while a batch was in flight — drain again on completion. */
53
+ private keyframePending;
54
+ /**
55
+ * Kinds already reported via `sdk_replay_capture_failed`, so the report is emitted ONCE per kind.
56
+ *
57
+ * Load-bearing, not tidiness. The report is itself an `event` item on this same queue: if the
58
+ * `event` kind is what the server is refusing, an unlatched report would emit an event, watch it be
59
+ * dropped, and emit another — a queue that grows on its own failure. The latch bounds the whole
60
+ * mechanism to one item per kind per session.
61
+ */
62
+ private reported?;
63
+ /** The batch currently being sent. It is NOT in `queue`, so persistence must still see it — if the
64
+ * page dies mid-send, that fetch is cancelled and the re-queue never runs. */
65
+ private inFlight;
66
+ constructor(config: ResolvedConfig, session: SessionManager, transport: HttpClient);
67
+ /** Open/close the consent egress gate. Opening alone does not start the flush loop (see start()). */
68
+ setConsentGranted(granted: boolean): void;
69
+ /** Whether egress is currently allowed (consent open + not discarded). Direct-send paths that
70
+ * bypass emit() (e.g. reportBug) MUST honor this so they don't leak under consent denial. */
71
+ canEgress(): boolean;
72
+ start(): Promise<void>;
73
+ /**
74
+ * Issue session-create and hold the gate on it.
75
+ *
76
+ * Separate from `start()` because it must be RE-ISSUABLE. It ran exactly once, with its rejection
77
+ * swallowed by a bare `.catch(() => {})`, so a session-create that failed — offline at boot, a 5xx,
78
+ * a CORS misconfiguration — left a gate that resolved happily onto a session row the server did not
79
+ * have. Every subsequent batch was then rejected as `unknown_session`, which is retryable, so the
80
+ * pipeline retried the same items against a row that nothing was ever going to create. The one
81
+ * request that could have fixed it was the one request never sent again.
82
+ *
83
+ * `sessionOk` is what flush() reads to decide whether re-arming is worth a try; it is false both
84
+ * before the first attempt resolves and after a failed one.
85
+ */
86
+ private armSession;
87
+ /**
88
+ * Open the session lane again under the SessionManager's CURRENT id, after a rotation.
89
+ *
90
+ * `start()` cannot serve here: it latches on `started` and also drains the persisted buffer, which
91
+ * belongs to a previous page load and not to a session that began a moment ago in this one. All a
92
+ * rotation needs is the row — and it genuinely needs it, because the batch endpoint answers 200
93
+ * while dropping every item of a session it has no row for. `unknown_session` is already the
94
+ * largest rejection reason in production; rotating without this would make every post-rotation
95
+ * item join it.
96
+ *
97
+ * The retry budget resets with the session: a create that failed for the previous id says nothing
98
+ * about this one.
99
+ */
100
+ restart(): Promise<void>;
101
+ /**
102
+ * Make room by dropping the OLDEST REPLAY CHAIN whole, instead of one interior delta.
103
+ *
104
+ * THE BUG THIS FIXES. This used to evict the oldest DELTA frame, reasoning that a keyframe costs
105
+ * more to lose and that "the player interpolates across a gap". The player does not interpolate:
106
+ * `applyMutations` looks the node up, finds nothing, increments `NodeRegistry.misses` and skips the
107
+ * operation — so the element that mutation would have created never exists, and every later
108
+ * reference to it misses too. One evicted delta therefore corrupts the rest of the chain, which is
109
+ * why 1.16% frame loss measured on production put a `Partial reconstruction` badge on 13.5% of
110
+ * sessions. Loss was rare; it just was not survivable.
111
+ *
112
+ * So the unit of eviction is the CHAIN, exactly as `SegmentBuffer` already does for the pre-roll:
113
+ * drop every frame from the head up to (not including) the next keyframe, and nothing else. What
114
+ * remains is either intact or is about to be — see the `shed` checkpoint in the recorder, which
115
+ * opens a fresh chain the moment this fires. Non-frame items are stepped over, never dropped: an
116
+ * event or a network record has no chain to belong to and its loss buys no room worth having.
117
+ *
118
+ * Dropping many items at once is deliberate. A single-item eviction ran again on the very next
119
+ * emit, so a full queue shed continuously; freeing a whole chain (bounded by the recorder's
120
+ * 120-frame checkpoint) means this runs once per chain rather than once per frame.
121
+ */
122
+ private evictChain;
123
+ emit(item: Item): void;
124
+ /**
125
+ * Say that data was thrown away, on the one lane proven to work.
126
+ *
127
+ * A permanent rejection is real, unrecoverable data loss — an 8 MB keyframe or a closed entitlement
128
+ * will be refused identically forever, so the only correct action is to drop it. Dropping it
129
+ * SILENTLY is what made the `missing` replay bucket undiagnosable: replay produced nothing, and
130
+ * neither the client nor the server had anything to say about why. `dropped` alone cannot carry it
131
+ * either, since it already means "queue overflow".
132
+ *
133
+ * Same event name as the React Native SDK (`sdk_replay_capture_failed`), with platform-specific
134
+ * `reason` values, so one dashboard breakdown reads both platforms without a concept-map alias.
135
+ *
136
+ * Emitted through `emit()` on purpose: it inherits the durable queue, the consent gate and the
137
+ * batching that every other item gets. Latched to once per kind — see `reported`.
138
+ */
139
+ private reportDrop;
140
+ /** Persist the pending queue to IDB, trimmed to the byte budget (replay frames shed first so a
141
+ * few large keyframes can't blow the IndexedDB quota). */
142
+ private persistQueue;
143
+ /** Auto (timer/reconnect-driven) flush: skip while offline or inside the backoff window so a
144
+ * struggling/offline server isn't hit every tick. Explicit/keepalive flushes bypass this. */
145
+ private autoFlush;
146
+ /**
147
+ * Empty the queue, instead of taking one batch and waiting out the next tick.
148
+ *
149
+ * THE CEILING THIS REMOVES. `flush()` takes `maxBatchSize` items (50) and the timer fires every
150
+ * `flushIntervalMs` (5,000 ms), so sustained egress was pinned at TEN ITEMS PER SECOND. Capture
151
+ * runs above that on any active page — the DOM lane packages a frame every 100 ms, scroll and
152
+ * input flush every 100 ms, cursor moves every 300 ms, and clicks flush immediately. Production
153
+ * bears out the pressure: the current SDK records 40 frames per session at the median against the
154
+ * previous version's 13. A queue that fills faster than it drains reaches `maxQueueSize` and starts
155
+ * shedding, which is the upstream cause of most of the frame loss this lane exists to fix.
156
+ *
157
+ * Draining stops the moment the queue stops SHRINKING, so a failing or backing-off transport costs
158
+ * one attempt rather than a spin: `flush()` puts a failed batch back, the length does not fall, and
159
+ * the loop exits. `MAX_DRAIN_BATCHES` bounds the pathological case where items are emitted as fast
160
+ * as they are sent — the queue is capped at 1,000, so 20 batches empties a full one.
161
+ *
162
+ * NOT used for the unload path. Keepalive bodies share a single 64 KiB in-flight budget across the
163
+ * whole agent, so issuing several at once would fail them all; `persistAndFlush` still sends one.
164
+ */
165
+ drain(): Promise<void>;
166
+ /**
167
+ * Take as much of the queue as a KEEPALIVE request can actually carry.
168
+ *
169
+ * THE BUG THIS FIXES. The unload flush took `maxBatchSize` items like any other, and `httpClient`
170
+ * skips gzip on the keepalive path — on the stated grounds that "keepalive bodies are small". They
171
+ * are not: this is the same 50-item batch as a normal tick, replay keyframes included, sent as raw
172
+ * JSON. Fetch caps the total in-flight keepalive body at 64 KiB and returns a NETWORK ERROR past
173
+ * it, so an oversized unload flush did not truncate — it failed whole, and the tail of the session
174
+ * only ever arrived if the visitor came back in the same browser. That is the "the replay ends
175
+ * before the session does" report.
176
+ *
177
+ * Sizing by serialized bytes and stopping at the budget delivers what fits and leaves the rest in
178
+ * the queue, where `persistQueue()` — which pagehide already ran before calling us — has it safe
179
+ * for the next load. Partial delivery beats none.
180
+ *
181
+ * ALWAYS AT LEAST ONE ITEM, even one over budget on its own: a head item too large to fit would
182
+ * otherwise block the queue permanently, and sending it costs no more than the failure it replaces.
183
+ *
184
+ * Gzip is deliberately still not the answer here. `CompressionStream` is async, and awaiting it
185
+ * inside a pagehide handler races the document's teardown — the request would be built after the
186
+ * page is gone. A deterministic byte budget needs no such bet.
187
+ */
188
+ private takeKeepalive;
189
+ /** Drain a batch. On failure, re-queue (front) + persist so nothing is lost, and widen the
190
+ * backoff window; on success, collapse the window back to the base interval. */
191
+ flush(opts?: {
192
+ keepalive?: boolean;
193
+ }): Promise<void>;
194
+ /**
195
+ * Ship a queue recovered from a PREVIOUS session under that session's own id.
196
+ *
197
+ * The transport derives the URL from `envelope.sessionId`, so overriding it is all that is needed
198
+ * to file the frames where they belong. Sent in its own envelope rather than merged into the
199
+ * current queue, because a batch may only describe one session.
200
+ *
201
+ * On failure the items are written back for one more attempt. That retry window lasts until this
202
+ * page's own `persistQueue()` overwrites the slot (its first page-hide or failed flush) — a single
203
+ * buffer entry cannot hold two sessions, and giving orphans their own key is not worth the eager
204
+ * bytes. Re-persisting under the ORIGINAL id, rather than folding them into the live queue, is the
205
+ * deliberate call: losing a few frames from a session the user already left beats interleaving
206
+ * foreign seq numbers into the replay of the session they are in right now.
207
+ */
208
+ /**
209
+ * File a single item against another session — the same orphan lane, for a signal rather than a
210
+ * recovered queue. Used by crash recovery to report a dead session's death ON that session
211
+ * instead of on the live one. Fire-and-forget: it must never block the current session's setup.
212
+ */
213
+ emitFor(sid: string, item: Item): void;
214
+ /**
215
+ * Ship a recovered queue under the session it belongs to — IN BATCHES, not as one envelope.
216
+ *
217
+ * THE BUG THIS FIXES. This sent `items` whole, and `items` here is a queue recovered from a
218
+ * previous page load: up to `maxQueueSize`, a thousand items. The frame endpoint accepts 100 per
219
+ * request and answers `batch_too_large` past that, which the backend deliberately classifies as
220
+ * RETRYABLE — "the right data in a request that was too big", to be split and resent. Nothing
221
+ * implemented the split, so the identical oversized envelope went back to the buffer and returned
222
+ * on the next load to fail the same way. Measured in production over one week: 232 frame items
223
+ * across 2 sessions, rejected exactly this way.
224
+ *
225
+ * Chunking at `maxBatchSize` makes the split unnecessary rather than merely handled — the request
226
+ * is never oversized in the first place. Sequential, because these are a dead session's tail and
227
+ * have no claim on the live session's bandwidth.
228
+ *
229
+ * Everything not taken accumulates and is saved ONCE at the end: the orphan buffer is a single
230
+ * slot, so a save per chunk would leave only the last chunk's leftovers in it.
231
+ */
232
+ private drainOrphans;
233
+ private buildEnvelope;
234
+ private installLifecycleFlush;
235
+ private addLifecycle;
236
+ private removeLifecycle;
237
+ stop(): Promise<void>;
238
+ /**
239
+ * Drop everything without sending — for consent denial. Stops the flush loop, discards the
240
+ * in-memory queue, and purges the persisted buffer (including any data from a prior load). Unlike
241
+ * stop(), it never flushes or finalizes (no network), so nothing leaves the browser.
242
+ */
243
+ discard(): Promise<void>;
244
+ get pendingCount(): number;
245
+ get dropped(): number;
246
+ /**
247
+ * P6 — the full egress ledger, for `ScaleBun.egressStats()`.
248
+ *
249
+ * Exposed as one object rather than seven getters so a caller reads a CONSISTENT snapshot: the
250
+ * counters move on network callbacks, and seven separate reads could straddle a flush and produce a
251
+ * set that never actually existed.
252
+ */
253
+ get ledger(): {
254
+ queued: number;
255
+ attempted: number;
256
+ retried: number;
257
+ recovered: number;
258
+ dropped: number;
259
+ expired: number;
260
+ acked: number;
261
+ };
262
+ }
263
+ //# sourceMappingURL=pipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../src/pipeline/pipeline.ts"],"names":[],"mappings":"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"}