@schibsted/pulse-sdk 8.0.0-rc.2 → 8.0.0-rc.21

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 (409) hide show
  1. package/dist/cjs/Tracker.js +582 -471
  2. package/dist/cjs/app-integration.js +3 -3
  3. package/dist/cjs/builders/actor.js +6 -6
  4. package/dist/cjs/builders/consents.js +8 -8
  5. package/dist/cjs/builders/device-browser.js +8 -8
  6. package/dist/cjs/builders/device-node.js +3 -3
  7. package/dist/cjs/builders/events-anonymous-node.js +3 -3
  8. package/dist/cjs/builders/events-node.js +7 -7
  9. package/dist/cjs/builders/experimentMetadata.js +2 -2
  10. package/dist/cjs/builders/experiments.js +1 -0
  11. package/dist/cjs/builders/objects/objects-anonymous-browser.js +2 -2
  12. package/dist/cjs/builders/objects/objects-anonymous-node.js +9 -9
  13. package/dist/cjs/builders/objects/objects-browser.js +2 -2
  14. package/dist/cjs/builders/objects/objects-node.js +10 -10
  15. package/dist/cjs/builders/objects/utils.js +3 -3
  16. package/dist/cjs/builders/origin-browser.js +2 -2
  17. package/dist/cjs/builders/origin-node.js +4 -4
  18. package/dist/cjs/builders/session-browser.js +6 -80
  19. package/dist/cjs/cis-sync/cis-browser.js +219 -0
  20. package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/cis.js +0 -1
  21. package/dist/cjs/cis-sync/eventEmitter.js +37 -0
  22. package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/index.js +0 -1
  23. package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/pulse-cookie.js +53 -63
  24. package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/storage/pulseStorage.js +28 -21
  25. package/dist/cjs/cis-sync/storage/storage.js +24 -0
  26. package/dist/cjs/createPulseTracker.js +4 -4
  27. package/dist/cjs/identity/actor.js +20 -8
  28. package/dist/cjs/identity/advertising.js +1 -1
  29. package/dist/cjs/identity/cis.js +7 -6
  30. package/dist/cjs/index.js +3 -3
  31. package/dist/cjs/leaveTracking/index.js +10 -10
  32. package/dist/cjs/leaveTrackingTpaas/constants.js +2 -7
  33. package/dist/cjs/leaveTrackingTpaas/index.js +70 -46
  34. package/dist/cjs/network-browser.js +3 -3
  35. package/dist/cjs/remoteConfig/index.js +5 -5
  36. package/dist/cjs/session/store.js +96 -0
  37. package/dist/cjs/tpaas-builders/builders/catalogVersion.js +9 -0
  38. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/device.js +50 -72
  39. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/navigationType.js +2 -3
  40. package/dist/cjs/tpaas-builders/builders/pageContent.js +7 -0
  41. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/pageInfo.js +2 -3
  42. package/dist/cjs/tpaas-builders/builders/pageSports.js +7 -0
  43. package/dist/cjs/tpaas-builders/builders/provider.js +19 -0
  44. package/dist/cjs/tpaas-builders/builders/referrer.js +17 -0
  45. package/dist/cjs/tpaas-builders/builders/session.js +5 -0
  46. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/trackerBuilder.js +2 -3
  47. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/user.js +1 -1
  48. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/utm.js +3 -9
  49. package/dist/cjs/tpaas-builders/builders.js +326 -0
  50. package/dist/cjs/tpaas-builders/guards.js +7 -0
  51. package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/index.js +3 -0
  52. package/dist/cjs/tpaas-context/adapters.js +85 -0
  53. package/dist/cjs/tpaas-context/browser.js +51 -0
  54. package/dist/cjs/tpaas-context/index.js +6 -0
  55. package/dist/cjs/tpaas-context/prepare.js +177 -0
  56. package/dist/cjs/tpaas-context/session.js +23 -0
  57. package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/tpaas-context}/types.js +0 -1
  58. package/{node_modules/@schibsted/tpaas-schemas/dist/cjs → dist/cjs/tpaas-schemas}/constants.js +189 -158
  59. package/{node_modules/@schibsted/tpaas-schemas/dist/cjs → dist/cjs/tpaas-schemas}/index.js +1 -0
  60. package/dist/cjs/tpaas-schemas/types.js +2 -0
  61. package/dist/cjs/tracker-proxy/consts.js +29 -7
  62. package/dist/cjs/tracker-proxy/proxy-provider.js +2 -2
  63. package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/index.js +4 -1
  64. package/dist/cjs/utils/xDomainId.js +15 -0
  65. package/dist/cjs/version.js +1 -1
  66. package/dist/cjs/visibility-observer/index.js +9 -7
  67. package/dist/cjs/wrapper/types/event.js +5 -0
  68. package/dist/cjs/wrapper/utils/map-page-to-page-ref.js +13 -0
  69. package/dist/ejs/Tracker.js +558 -447
  70. package/dist/ejs/app-integration.js +1 -1
  71. package/dist/ejs/builders/actor.js +3 -3
  72. package/dist/ejs/builders/consents.js +4 -4
  73. package/dist/ejs/builders/device-browser.js +2 -2
  74. package/dist/ejs/builders/device-node.js +1 -1
  75. package/dist/ejs/builders/events-anonymous-node.js +1 -1
  76. package/dist/ejs/builders/events-node.js +4 -4
  77. package/dist/ejs/builders/experimentMetadata.js +1 -1
  78. package/dist/ejs/builders/experiments.js +1 -1
  79. package/dist/ejs/builders/objects/objects-anonymous-browser.js +1 -1
  80. package/dist/ejs/builders/objects/objects-anonymous-node.js +1 -1
  81. package/dist/ejs/builders/objects/objects-browser.js +1 -1
  82. package/dist/ejs/builders/objects/objects-node.js +1 -1
  83. package/dist/ejs/builders/objects/utils.js +1 -1
  84. package/dist/ejs/builders/origin-browser.js +1 -1
  85. package/dist/ejs/builders/origin-node.js +1 -1
  86. package/dist/ejs/builders/session-browser.js +5 -77
  87. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/cis-browser.js +17 -4
  88. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/cis.js +0 -1
  89. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/eventEmitter.js +0 -1
  90. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/index.js +0 -1
  91. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/pulse-cookie.js +1 -2
  92. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/storage/pulseStorage.js +12 -4
  93. package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/storage/storage.js +6 -2
  94. package/dist/ejs/createPulseTracker.js +1 -1
  95. package/dist/ejs/identity/actor.js +21 -9
  96. package/dist/ejs/identity/advertising.js +1 -1
  97. package/dist/ejs/identity/cis.js +4 -3
  98. package/dist/ejs/index.js +4 -3
  99. package/dist/ejs/leaveTracking/index.js +1 -1
  100. package/dist/ejs/leaveTrackingTpaas/constants.js +1 -5
  101. package/dist/ejs/leaveTrackingTpaas/index.js +65 -41
  102. package/dist/ejs/network-browser.js +1 -1
  103. package/dist/ejs/remoteConfig/index.js +1 -1
  104. package/dist/ejs/session/store.js +90 -0
  105. package/dist/ejs/tpaas-builders/builders/catalogVersion.js +6 -0
  106. package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/device.js +50 -72
  107. package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/navigationType.js +2 -3
  108. package/dist/ejs/tpaas-builders/builders/pageContent.js +3 -0
  109. package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/pageInfo.js +2 -3
  110. package/dist/ejs/tpaas-builders/builders/pageSports.js +3 -0
  111. package/dist/ejs/tpaas-builders/builders/provider.js +16 -0
  112. package/dist/ejs/tpaas-builders/builders/referrer.js +13 -0
  113. package/dist/ejs/tpaas-builders/builders/session.js +1 -0
  114. package/dist/ejs/tpaas-builders/builders/trackerBuilder.js +10 -0
  115. package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/user.js +1 -1
  116. package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/utm.js +3 -9
  117. package/dist/ejs/tpaas-builders/builders.js +259 -0
  118. package/dist/ejs/tpaas-builders/guards.js +4 -0
  119. package/dist/ejs/tpaas-builders/index.js +2 -0
  120. package/dist/ejs/tpaas-context/adapters.js +80 -0
  121. package/dist/ejs/tpaas-context/browser.js +47 -0
  122. package/dist/ejs/tpaas-context/index.js +1 -0
  123. package/dist/ejs/tpaas-context/prepare.js +137 -0
  124. package/dist/ejs/tpaas-context/session.js +19 -0
  125. package/{node_modules/@schibsted/tpaas-schemas/dist/ejs → dist/ejs/tpaas-schemas}/constants.js +187 -156
  126. package/{node_modules/@schibsted/tpaas-schemas/dist/ejs → dist/ejs/tpaas-schemas}/index.js +1 -0
  127. package/dist/ejs/tpaas-schemas/types.js +1 -0
  128. package/dist/ejs/tracker-proxy/consts.js +29 -7
  129. package/dist/ejs/tracker-proxy/proxy-provider.js +1 -1
  130. package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/index.js +1 -0
  131. package/dist/ejs/utils/xDomainId.js +11 -0
  132. package/dist/ejs/version.js +1 -1
  133. package/dist/ejs/visibility-observer/index.js +9 -7
  134. package/dist/ejs/wrapper/types/event.js +4 -1
  135. package/dist/ejs/wrapper/utils/map-page-to-page-ref.js +10 -0
  136. package/dist/types/Tracker.d.ts +198 -93
  137. package/dist/types/builders/actor.d.ts +3 -2
  138. package/dist/types/builders/consents.d.ts +3 -3
  139. package/dist/types/builders/device-node.d.ts +2 -2
  140. package/dist/types/builders/events-anonymous-node.d.ts +4 -4
  141. package/dist/types/builders/events-node.d.ts +5 -5
  142. package/dist/types/builders/experiments.d.ts +1 -0
  143. package/dist/types/builders/index.d.ts +1 -1
  144. package/dist/types/builders/objects/objects-anonymous-node.d.ts +1 -1
  145. package/dist/types/builders/objects/objects-node.d.ts +1 -1
  146. package/dist/types/builders/origin-node.d.ts +1 -1
  147. package/dist/types/builders/session-browser.d.ts +1 -13
  148. package/{node_modules/@schibsted/pulse-cis-sync/dist/types → dist/types/cis-sync}/cis-browser.d.ts +1 -0
  149. package/{node_modules/@schibsted/pulse-cis-sync/dist/types → dist/types/cis-sync}/storage/pulseStorage.d.ts +12 -4
  150. package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/storage/storage.d.ts +2 -1
  151. package/dist/types/config.d.ts +1 -1
  152. package/dist/types/createPulseTracker.d.ts +1 -1
  153. package/dist/types/identity/actor.d.ts +3 -3
  154. package/dist/types/identity/advertising.d.ts +2 -2
  155. package/dist/types/identity/cis.d.ts +4 -4
  156. package/dist/types/index.d.ts +7 -8
  157. package/dist/types/leaveTrackingTpaas/constants.d.ts +1 -5
  158. package/dist/types/leaveTrackingTpaas/index.d.ts +6 -6
  159. package/dist/types/leaveTrackingTpaas/types.d.ts +2 -10
  160. package/dist/types/session/store.d.ts +34 -0
  161. package/dist/types/tpaas-builders/builders/anonymous.d.ts +3 -0
  162. package/dist/types/tpaas-builders/builders/baseEvent.d.ts +3 -0
  163. package/dist/types/tpaas-builders/builders/catalogVersion.d.ts +3 -0
  164. package/dist/types/tpaas-builders/builders/consents.d.ts +5 -0
  165. package/dist/types/tpaas-builders/builders/device.d.ts +5 -0
  166. package/dist/types/tpaas-builders/builders/experiments.d.ts +9 -0
  167. package/dist/types/tpaas-builders/builders/navigationType.d.ts +6 -0
  168. package/dist/types/tpaas-builders/builders/pageContent.d.ts +6 -0
  169. package/dist/types/tpaas-builders/builders/pageInfo.d.ts +7 -0
  170. package/dist/types/tpaas-builders/builders/pageSports.d.ts +6 -0
  171. package/dist/types/tpaas-builders/builders/pageviewId.d.ts +6 -0
  172. package/dist/types/tpaas-builders/builders/provider.d.ts +5 -0
  173. package/dist/types/tpaas-builders/builders/referrer.d.ts +6 -0
  174. package/dist/types/tpaas-builders/builders/session.d.ts +4 -0
  175. package/dist/types/tpaas-builders/builders/time.d.ts +4 -0
  176. package/dist/types/tpaas-builders/builders/trackerBuilder.d.ts +5 -0
  177. package/dist/types/tpaas-builders/builders/user.d.ts +5 -0
  178. package/dist/types/tpaas-builders/builders/utm.d.ts +7 -0
  179. package/dist/types/tpaas-builders/builders.d.ts +141 -0
  180. package/dist/types/tpaas-builders/guards.d.ts +2 -0
  181. package/dist/types/tpaas-builders/index.d.ts +2 -0
  182. package/dist/types/tpaas-context/adapters.d.ts +26 -0
  183. package/dist/types/tpaas-context/browser.d.ts +8 -0
  184. package/dist/types/tpaas-context/index.d.ts +2 -0
  185. package/dist/types/tpaas-context/prepare.d.ts +38 -0
  186. package/dist/types/tpaas-context/session.d.ts +10 -0
  187. package/dist/types/tpaas-context/types.d.ts +66 -0
  188. package/dist/types/tpaas-schemas/constants.d.ts +471 -0
  189. package/dist/types/tpaas-schemas/index.d.ts +5 -0
  190. package/dist/types/tpaas-schemas/types/ITpaasEvent.d.ts +130 -0
  191. package/dist/types/tpaas-schemas/types/schemas/IAnonymousImpressionUIElement.d.ts +58 -0
  192. package/dist/types/tpaas-schemas/types/schemas/ICompletedHealthAction.d.ts +139 -0
  193. package/dist/types/tpaas-schemas/types/schemas/IEngagementAd.d.ts +117 -0
  194. package/dist/types/tpaas-schemas/types/schemas/IEngagementAffiliate.d.ts +144 -0
  195. package/dist/types/tpaas-schemas/types/schemas/IEngagementAudio.d.ts +213 -0
  196. package/dist/types/tpaas-schemas/types/schemas/IEngagementForm.d.ts +111 -0
  197. package/dist/types/tpaas-schemas/types/schemas/IEngagementHealthUIElement.d.ts +133 -0
  198. package/dist/types/tpaas-schemas/types/schemas/IEngagementOffer.d.ts +107 -0
  199. package/dist/types/tpaas-schemas/types/schemas/IEngagementSchoolUIElement.d.ts +107 -0
  200. package/dist/types/tpaas-schemas/types/schemas/IEngagementSportsUIElement.d.ts +157 -0
  201. package/dist/types/tpaas-schemas/types/schemas/IEngagementTeaser.d.ts +114 -0
  202. package/dist/types/tpaas-schemas/types/schemas/IEngagementTvModule.d.ts +133 -0
  203. package/dist/types/tpaas-schemas/types/schemas/IEngagementTvSearch.d.ts +142 -0
  204. package/dist/types/tpaas-schemas/types/schemas/IEngagementUIElement.d.ts +105 -0
  205. package/dist/types/tpaas-schemas/types/schemas/IEngagementVideo.d.ts +238 -0
  206. package/dist/types/tpaas-schemas/types/schemas/IEngagementVideoAd.d.ts +147 -0
  207. package/dist/types/tpaas-schemas/types/schemas/IEngagementWidget.d.ts +91 -0
  208. package/dist/types/tpaas-schemas/types/schemas/IHeartbeatCommercialArticle.d.ts +96 -0
  209. package/dist/types/tpaas-schemas/types/schemas/IImpressionAd.d.ts +115 -0
  210. package/dist/types/tpaas-schemas/types/schemas/IImpressionAdSlot.d.ts +89 -0
  211. package/dist/types/tpaas-schemas/types/schemas/IImpressionAffiliate.d.ts +142 -0
  212. package/dist/types/tpaas-schemas/types/schemas/IImpressionForm.d.ts +113 -0
  213. package/dist/types/tpaas-schemas/types/schemas/IImpressionHealthUIElement.d.ts +138 -0
  214. package/dist/types/tpaas-schemas/types/schemas/IImpressionOffer.d.ts +109 -0
  215. package/dist/types/tpaas-schemas/types/schemas/IImpressionPlayer.d.ts +108 -0
  216. package/dist/types/tpaas-schemas/types/schemas/IImpressionSchoolUIElement.d.ts +109 -0
  217. package/dist/types/tpaas-schemas/types/schemas/IImpressionSportsUIElement.d.ts +159 -0
  218. package/dist/types/tpaas-schemas/types/schemas/IImpressionTeaser.d.ts +112 -0
  219. package/dist/types/tpaas-schemas/types/schemas/IImpressionUIElement.d.ts +107 -0
  220. package/dist/types/tpaas-schemas/types/schemas/IImpressionWidget.d.ts +89 -0
  221. package/dist/types/tpaas-schemas/types/schemas/ILeaveArticle.d.ts +133 -0
  222. package/dist/types/tpaas-schemas/types/schemas/ILeaveAudioPage.d.ts +88 -0
  223. package/dist/types/tpaas-schemas/types/schemas/ILeaveError.d.ts +95 -0
  224. package/dist/types/tpaas-schemas/types/schemas/ILeaveFrontpage.d.ts +83 -0
  225. package/dist/types/tpaas-schemas/types/schemas/ILeaveLandingpage.d.ts +90 -0
  226. package/dist/types/tpaas-schemas/types/schemas/ILeaveListing.d.ts +123 -0
  227. package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedArticle.d.ts +139 -0
  228. package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedAudioPage.d.ts +97 -0
  229. package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedPage.d.ts +90 -0
  230. package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedVideoPage.d.ts +97 -0
  231. package/dist/types/tpaas-schemas/types/schemas/ILeavePage.d.ts +82 -0
  232. package/dist/types/tpaas-schemas/types/schemas/ILeaveSchoolPage.d.ts +84 -0
  233. package/dist/types/tpaas-schemas/types/schemas/ILeaveSportsPage.d.ts +137 -0
  234. package/dist/types/tpaas-schemas/types/schemas/ILeaveVideoPage.d.ts +91 -0
  235. package/dist/types/tpaas-schemas/types/schemas/ILeaveWeather.d.ts +96 -0
  236. package/dist/types/tpaas-schemas/types/schemas/ILoadAd.d.ts +119 -0
  237. package/dist/types/tpaas-schemas/types/schemas/IViewArticle.d.ts +133 -0
  238. package/dist/types/tpaas-schemas/types/schemas/IViewAudioPage.d.ts +87 -0
  239. package/dist/types/tpaas-schemas/types/schemas/IViewError.d.ts +90 -0
  240. package/dist/types/tpaas-schemas/types/schemas/IViewFrontpage.d.ts +80 -0
  241. package/dist/types/tpaas-schemas/types/schemas/IViewHealthPage.d.ts +119 -0
  242. package/dist/types/tpaas-schemas/types/schemas/IViewLandingpage.d.ts +76 -0
  243. package/dist/types/tpaas-schemas/types/schemas/IViewListing.d.ts +118 -0
  244. package/dist/types/tpaas-schemas/types/schemas/IViewLockedArticle.d.ts +139 -0
  245. package/dist/types/tpaas-schemas/types/schemas/IViewLockedAudioPage.d.ts +95 -0
  246. package/dist/types/tpaas-schemas/types/schemas/IViewLockedPage.d.ts +94 -0
  247. package/dist/types/tpaas-schemas/types/schemas/IViewLockedVideoPage.d.ts +95 -0
  248. package/dist/types/tpaas-schemas/types/schemas/IViewPage.d.ts +86 -0
  249. package/dist/types/tpaas-schemas/types/schemas/IViewSchoolPage.d.ts +88 -0
  250. package/dist/types/tpaas-schemas/types/schemas/IViewSportsPage.d.ts +135 -0
  251. package/dist/types/tpaas-schemas/types/schemas/IViewTitle.d.ts +92 -0
  252. package/dist/types/tpaas-schemas/types/schemas/IViewVideoPage.d.ts +87 -0
  253. package/dist/types/tpaas-schemas/types/schemas/IViewWeather.d.ts +94 -0
  254. package/dist/types/tpaas-schemas/types/schemas/index.d.ts +63 -0
  255. package/dist/types/tpaas-schemas/types/templates/IBranded.d.ts +42 -0
  256. package/dist/types/tpaas-schemas/types/templates/IConsents.d.ts +34 -0
  257. package/dist/types/tpaas-schemas/types/templates/IContent.d.ts +56 -0
  258. package/dist/types/tpaas-schemas/types/templates/IDevice.d.ts +62 -0
  259. package/dist/types/tpaas-schemas/types/templates/IEngagement.d.ts +21 -0
  260. package/dist/types/tpaas-schemas/types/templates/IExperiments.d.ts +35 -0
  261. package/dist/types/tpaas-schemas/types/templates/IHealthFood.d.ts +55 -0
  262. package/dist/types/tpaas-schemas/types/templates/IHealthOrigin.d.ts +27 -0
  263. package/dist/types/tpaas-schemas/types/templates/IHealthPhysicalActivity.d.ts +36 -0
  264. package/dist/types/tpaas-schemas/types/templates/IHealthTraining.d.ts +74 -0
  265. package/dist/types/tpaas-schemas/types/templates/IHealthUserData.d.ts +25 -0
  266. package/dist/types/tpaas-schemas/types/templates/ILeave.d.ts +54 -0
  267. package/dist/types/tpaas-schemas/types/templates/ILeaveAudio.d.ts +37 -0
  268. package/dist/types/tpaas-schemas/types/templates/ILeaveStories.d.ts +34 -0
  269. package/dist/types/tpaas-schemas/types/templates/ILocation.d.ts +21 -0
  270. package/dist/types/tpaas-schemas/types/templates/IMetrics.d.ts +32 -0
  271. package/dist/types/tpaas-schemas/types/templates/IPageRef.d.ts +46 -0
  272. package/dist/types/tpaas-schemas/types/templates/IPlacement.d.ts +45 -0
  273. package/dist/types/tpaas-schemas/types/templates/IProvider.d.ts +73 -0
  274. package/dist/types/tpaas-schemas/types/templates/ISchool.d.ts +74 -0
  275. package/dist/types/tpaas-schemas/types/templates/ISession.d.ts +33 -0
  276. package/dist/types/tpaas-schemas/types/templates/ISports.d.ts +98 -0
  277. package/dist/types/tpaas-schemas/types/templates/ISportsUserFeatures.d.ts +28 -0
  278. package/dist/types/tpaas-schemas/types/templates/ITime.d.ts +32 -0
  279. package/dist/types/tpaas-schemas/types/templates/ITracker.d.ts +37 -0
  280. package/dist/types/tpaas-schemas/types/templates/IUser.d.ts +34 -0
  281. package/dist/types/tpaas-schemas/types/templates/IUtmTags.d.ts +38 -0
  282. package/dist/types/tpaas-schemas/types/templates/index.d.ts +27 -0
  283. package/dist/types/tpaas-schemas/types.d.ts +42 -0
  284. package/dist/types/tracker-proxy/consts.d.ts +2 -2
  285. package/dist/types/types.d.ts +21 -17
  286. package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/index.d.ts +1 -0
  287. package/dist/types/utils/xDomainId.d.ts +2 -0
  288. package/dist/types/version.d.ts +1 -1
  289. package/dist/types/visibility-observer/index.d.ts +6 -1
  290. package/dist/types/wrapper/engagement/ui-element/types.d.ts +1 -1
  291. package/dist/types/wrapper/types/base-event.d.ts +1 -1
  292. package/dist/types/wrapper/types/event.d.ts +4 -2
  293. package/dist/types/wrapper/types/utils.d.ts +1 -1
  294. package/dist/types/wrapper/utils/map-page-to-page-ref.d.ts +3 -0
  295. package/dist/types/wrapper/view/article/types.d.ts +1 -1
  296. package/dist/types/wrapper/view/frontpage/types.d.ts +1 -1
  297. package/dist/types/wrapper/view/listing/types.d.ts +1 -1
  298. package/dist/types/wrapper/view/loginposter/types.d.ts +1 -1
  299. package/dist/types/wrapper/view/page/types.d.ts +1 -1
  300. package/dist/types/wrapper/view/salesposter/types.d.ts +1 -1
  301. package/dist/types/wrapper/view/ui-element/types.d.ts +1 -1
  302. package/package.json +21 -20
  303. package/dist/cjs/Tracker.test-d.js +0 -76
  304. package/dist/ejs/Tracker.test-d.js +0 -71
  305. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.d.ts +0 -26
  306. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js +0 -273
  307. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js.map +0 -1
  308. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.js.map +0 -1
  309. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js +0 -39
  310. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js.map +0 -1
  311. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.js.map +0 -1
  312. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.js.map +0 -1
  313. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.d.ts +0 -36
  314. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.js.map +0 -1
  315. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js +0 -21
  316. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js.map +0 -1
  317. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.js.map +0 -1
  318. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.d.ts +0 -26
  319. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.js.map +0 -1
  320. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.d.ts +0 -10
  321. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.js.map +0 -1
  322. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.d.ts +0 -14
  323. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.js.map +0 -1
  324. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.d.ts +0 -4
  325. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.js.map +0 -1
  326. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.d.ts +0 -55
  327. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.js.map +0 -1
  328. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.d.ts +0 -36
  329. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.js.map +0 -1
  330. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.d.ts +0 -6
  331. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.js.map +0 -1
  332. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.d.ts +0 -24
  333. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js +0 -2
  334. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js.map +0 -1
  335. package/node_modules/@schibsted/pulse-cis-sync/dist/types/cis.d.ts +0 -10
  336. package/node_modules/@schibsted/pulse-cis-sync/dist/types/eventEmitter.d.ts +0 -14
  337. package/node_modules/@schibsted/pulse-cis-sync/dist/types/index.d.ts +0 -4
  338. package/node_modules/@schibsted/pulse-cis-sync/dist/types/pulse-cookie.d.ts +0 -55
  339. package/node_modules/@schibsted/pulse-cis-sync/dist/types/storage/storage.d.ts +0 -6
  340. package/node_modules/@schibsted/pulse-cis-sync/dist/types/types.d.ts +0 -24
  341. package/node_modules/@schibsted/pulse-cis-sync/package.json +0 -44
  342. package/node_modules/@schibsted/pulse-utils/package.json +0 -36
  343. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/provider.js +0 -12
  344. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/referrer.js +0 -19
  345. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/session.js +0 -114
  346. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders.js +0 -272
  347. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/provider.js +0 -9
  348. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/referrer.js +0 -15
  349. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/session.js +0 -108
  350. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/trackerBuilder.js +0 -11
  351. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders.js +0 -215
  352. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/index.js +0 -1
  353. package/node_modules/@schibsted/tpaas-event-builder/dist/index.d.ts +0 -5403
  354. package/node_modules/@schibsted/tpaas-event-builder/package.json +0 -40
  355. package/node_modules/@schibsted/tpaas-schemas/dist/index.d.ts +0 -6176
  356. package/node_modules/@schibsted/tpaas-schemas/package.json +0 -35
  357. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/cis-sync}/types.js +0 -0
  358. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/anonymous.js +0 -0
  359. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/baseEvent.js +0 -0
  360. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/consents.js +0 -0
  361. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/experiments.js +0 -0
  362. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/pageviewId.js +0 -0
  363. /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/time.js +0 -0
  364. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/cookie-config.js +0 -0
  365. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/cookie.js +0 -0
  366. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/events.js +0 -0
  367. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/get.js +0 -0
  368. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/getRootDomain.js +0 -0
  369. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/merge.js +0 -0
  370. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/objects.js +0 -0
  371. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/omit.js +0 -0
  372. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/randomString.js +0 -0
  373. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/throttle.js +0 -0
  374. /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/webApi.js +0 -0
  375. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/cis-sync}/types.js +0 -0
  376. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/anonymous.js +0 -0
  377. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/baseEvent.js +0 -0
  378. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/consents.js +0 -0
  379. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/experiments.js +0 -0
  380. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/pageviewId.js +0 -0
  381. /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/time.js +0 -0
  382. /package/dist/{types/Tracker.test-d.d.ts → ejs/tpaas-context/types.js} +0 -0
  383. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/cookie-config.js +0 -0
  384. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/cookie.js +0 -0
  385. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/events.js +0 -0
  386. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/get.js +0 -0
  387. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/getRootDomain.js +0 -0
  388. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/merge.js +0 -0
  389. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/objects.js +0 -0
  390. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/omit.js +0 -0
  391. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/randomString.js +0 -0
  392. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/throttle.js +0 -0
  393. /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/webApi.js +0 -0
  394. /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/cis.d.ts +0 -0
  395. /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/eventEmitter.d.ts +0 -0
  396. /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/index.d.ts +0 -0
  397. /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/pulse-cookie.d.ts +0 -0
  398. /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/types.d.ts +0 -0
  399. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/cookie-config.d.ts +0 -0
  400. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/cookie.d.ts +0 -0
  401. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/events.d.ts +0 -0
  402. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/get.d.ts +0 -0
  403. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/getRootDomain.d.ts +0 -0
  404. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/merge.d.ts +0 -0
  405. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/objects.d.ts +0 -0
  406. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/omit.d.ts +0 -0
  407. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/randomString.d.ts +0 -0
  408. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/throttle.d.ts +0 -0
  409. /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/webApi.d.ts +0 -0
@@ -0,0 +1,141 @@
1
+ import type { TpaasAnonymousEventContext, TpaasEventContext } from '../tpaas-context/types';
2
+ import { type IAnonymousImpressionUIElement, type ICompletedHealthAction, type IEngagementAd, type IEngagementAffiliate, type IEngagementAudio, type IEngagementForm, type IEngagementHealthUIElement, type IEngagementOffer, type IEngagementSchoolUIElement, type IEngagementSportsUIElement, type IEngagementTeaser, type IEngagementTvModule, type IEngagementTvSearch, type IEngagementUIElement, type IEngagementVideo, type IEngagementVideoAd, type IEngagementWidget, type IExperiments, type IHeartbeatCommercialArticle, type IImpressionAd, type IImpressionAdSlot, type IImpressionAffiliate, type IImpressionForm, type IImpressionHealthUIElement, type IImpressionOffer, type IImpressionPlayer, type IImpressionSchoolUIElement, type IImpressionSportsUIElement, type IImpressionTeaser, type IImpressionUIElement, type IImpressionWidget, type ILeaveArticle, type ILeaveAudioPage, type ILeaveError, type ILeaveFrontpage, type ILeaveLandingpage, type ILeaveListing, type ILeaveLockedArticle, type ILeaveLockedAudioPage, type ILeaveLockedPage, type ILeaveLockedVideoPage, type ILeavePage, type ILeaveSchoolPage, type ILeaveSportsPage, type ILeaveVideoPage, type ILeaveWeather, type ILoadAd, type ITpaasEvent, type IViewArticle, type IViewAudioPage, type IViewError, type IViewFrontpage, type IViewHealthPage, type IViewLandingpage, type IViewListing, type IViewLockedArticle, type IViewLockedAudioPage, type IViewLockedPage, type IViewLockedVideoPage, type IViewPage, type IViewSchoolPage, type IViewSportsPage, type IViewTitle, type IViewVideoPage, type IViewWeather } from '../tpaas-schemas';
3
+ /**
4
+ * Common builders output to be merged into all events
5
+ * @param context {TpaasEventContext} the event context, including the tracking input
6
+ * @private
7
+ */
8
+ type EventContextWithExperiments = TpaasEventContext<Extract<ITpaasEvent, {
9
+ experiments?: IExperiments;
10
+ }>>;
11
+ export declare const getCommonBuildersOutput: (context: EventContextWithExperiments) => {
12
+ catalogVersion: string;
13
+ consents: {
14
+ advertising: "Accepted" | "Rejected" | "Unknown";
15
+ analytics: "Accepted" | "Rejected" | "Unknown";
16
+ marketing: "Accepted" | "Rejected" | "Unknown";
17
+ personalization: "Accepted" | "Rejected" | "Unknown";
18
+ source: string;
19
+ };
20
+ device: {
21
+ browserVersion: string | undefined;
22
+ clientType: "Chrome" | "Edge" | "Firefox" | "NativeScreen" | "Other" | "Safari" | "Samsung" | "Webview";
23
+ deviceType: "Desktop" | "Mobile" | "Other" | "SmartTv" | "Tablet";
24
+ environmentId: string;
25
+ ipAddress: string | undefined;
26
+ jweIds: string | undefined;
27
+ mobileBrand: string | undefined;
28
+ mobileModel: string | undefined;
29
+ operatingSystem: "Android" | "Linux" | "Mac" | "Other" | "Windows" | "iOS";
30
+ screenOrientation: "Landscape" | "Portrait";
31
+ userAgent: string | undefined;
32
+ viewportSize: "L" | "M" | "S" | "Unknown" | "XL" | "XS";
33
+ };
34
+ eventId: string;
35
+ experiments: IExperiments | undefined;
36
+ page: {
37
+ info: {
38
+ pageId: string | undefined;
39
+ pageType: "AppWidget" | "Article" | "AudioPage" | "Error" | "Frontpage" | "HealthPage" | "Landingpage" | "Listing" | "LockedArticle" | "LockedAudioPage" | "LockedPage" | "LockedVideoPage" | "Login" | "Notification" | "Page" | "Purchase" | "SchoolPage" | "SportsPage" | "Title" | "VideoPage" | "Weather" | undefined;
40
+ url: string | undefined;
41
+ };
42
+ pageviewId: string;
43
+ referrer: import("..").IPageRef | undefined;
44
+ utm: import("..").IUtmTags | undefined;
45
+ };
46
+ provider: {
47
+ component: string | undefined;
48
+ componentVersion: string | undefined;
49
+ group: string | undefined;
50
+ name: string | undefined;
51
+ product: string;
52
+ providerId: string;
53
+ providerSdrn: string;
54
+ stage: "Dev" | "Pre" | "Pro";
55
+ version: string;
56
+ };
57
+ session: {
58
+ isFirstEvent: boolean;
59
+ sessionId: string;
60
+ startTime: string;
61
+ xDomainId: string | undefined;
62
+ };
63
+ time: {
64
+ createdAt: string;
65
+ publishedAt: string | undefined;
66
+ republishedAt: string | undefined;
67
+ sentAt: string;
68
+ };
69
+ tracker: {
70
+ isHybrid: boolean;
71
+ proxyVersion: string | undefined;
72
+ routingStage: "Dev" | "Pre" | "Pro";
73
+ trackerType: "Android" | "Backend" | "IOS" | "JS";
74
+ version: string;
75
+ };
76
+ user: import("..").IUser | undefined;
77
+ };
78
+ export declare function buildAnonymousImpressionUIElementEvent(context: TpaasAnonymousEventContext<IAnonymousImpressionUIElement>): IAnonymousImpressionUIElement;
79
+ export declare function buildViewArticleEvent(context: TpaasEventContext<IViewArticle>): IViewArticle;
80
+ export declare function buildViewAudioPageEvent(context: TpaasEventContext<IViewAudioPage>): IViewAudioPage;
81
+ export declare function buildViewErrorEvent(context: TpaasEventContext<IViewError>): IViewError;
82
+ export declare function buildViewFrontpageEvent(context: TpaasEventContext<IViewFrontpage>): IViewFrontpage;
83
+ export declare function buildViewLandingpageEvent(context: TpaasEventContext<IViewLandingpage>): IViewLandingpage;
84
+ export declare function buildViewListingEvent(context: TpaasEventContext<IViewListing>): IViewListing;
85
+ export declare function buildViewLockedArticleEvent(context: TpaasEventContext<IViewLockedArticle>): IViewLockedArticle;
86
+ export declare function buildViewLockedAudioPageEvent(context: TpaasEventContext<IViewLockedAudioPage>): IViewLockedAudioPage;
87
+ export declare function buildViewLockedPageEvent(context: TpaasEventContext<IViewLockedPage>): IViewLockedPage;
88
+ export declare function buildViewLockedVideoPageEvent(context: TpaasEventContext<IViewLockedVideoPage>): IViewLockedVideoPage;
89
+ export declare function buildLeaveLockedVideoPageEvent(context: TpaasEventContext<ILeaveLockedVideoPage>): ILeaveLockedVideoPage;
90
+ export declare function buildViewPageEvent(context: TpaasEventContext<IViewPage>): IViewPage;
91
+ export declare function buildViewSportsPageEvent(context: TpaasEventContext<IViewSportsPage>): IViewSportsPage;
92
+ export declare function buildViewSchoolPageEvent(context: TpaasEventContext<IViewSchoolPage>): IViewSchoolPage;
93
+ export declare function buildViewTitleEvent(context: TpaasEventContext<IViewTitle>): IViewTitle;
94
+ export declare function buildViewVideoPageEvent(context: TpaasEventContext<IViewVideoPage>): IViewVideoPage;
95
+ export declare function buildViewWeatherEvent(context: TpaasEventContext<IViewWeather>): IViewWeather;
96
+ export declare function buildLeaveArticleEvent(context: TpaasEventContext<ILeaveArticle>): ILeaveArticle;
97
+ export declare function buildLeaveAudioPageEvent(context: TpaasEventContext<ILeaveAudioPage>): ILeaveAudioPage;
98
+ export declare function buildLeaveErrorEvent(context: TpaasEventContext<ILeaveError>): ILeaveError;
99
+ export declare function buildLeaveFrontpageEvent(context: TpaasEventContext<ILeaveFrontpage>): ILeaveFrontpage;
100
+ export declare function buildLeaveLandingpageEvent(context: TpaasEventContext<ILeaveLandingpage>): ILeaveLandingpage;
101
+ export declare function buildLeaveListingEvent(context: TpaasEventContext<ILeaveListing>): ILeaveListing;
102
+ export declare function buildLeaveLockedArticleEvent(context: TpaasEventContext<ILeaveLockedArticle>): ILeaveLockedArticle;
103
+ export declare function buildLeaveLockedAudioPageEvent(context: TpaasEventContext<ILeaveLockedAudioPage>): ILeaveLockedAudioPage;
104
+ export declare function buildLeaveLockedPageEvent(context: TpaasEventContext<ILeaveLockedPage>): ILeaveLockedPage;
105
+ export declare function buildLeavePageEvent(context: TpaasEventContext<ILeavePage>): ILeavePage;
106
+ export declare function buildLeaveSportsPageEvent(context: TpaasEventContext<ILeaveSportsPage>): ILeaveSportsPage;
107
+ export declare function buildLeaveSchoolPageEvent(context: TpaasEventContext<ILeaveSchoolPage>): ILeaveSchoolPage;
108
+ export declare function buildLeaveVideoPageEvent(context: TpaasEventContext<ILeaveVideoPage>): ILeaveVideoPage;
109
+ export declare function buildLeaveWeatherEvent(context: TpaasEventContext<ILeaveWeather>): ILeaveWeather;
110
+ export declare function buildEngagementAdEvent(context: TpaasEventContext<IEngagementAd>): IEngagementAd;
111
+ export declare function buildEngagementAffiliateEvent(context: TpaasEventContext<IEngagementAffiliate>): IEngagementAffiliate;
112
+ export declare function buildEngagementAudioEvent(context: TpaasEventContext<IEngagementAudio>): IEngagementAudio;
113
+ export declare function buildEngagementFormEvent(context: TpaasEventContext<IEngagementForm>): IEngagementForm;
114
+ export declare function buildEngagementOfferEvent(context: TpaasEventContext<IEngagementOffer>): IEngagementOffer;
115
+ export declare function buildEngagementSportsUIElementEvent(context: TpaasEventContext<IEngagementSportsUIElement>): IEngagementSportsUIElement;
116
+ export declare function buildEngagementSchoolUIElementEvent(context: TpaasEventContext<IEngagementSchoolUIElement>): IEngagementSchoolUIElement;
117
+ export declare function buildEngagementTeaserEvent(context: TpaasEventContext<IEngagementTeaser>): IEngagementTeaser;
118
+ export declare function buildEngagementTvModuleEvent(context: TpaasEventContext<IEngagementTvModule>): IEngagementTvModule;
119
+ export declare function buildEngagementTvSearchEvent(context: TpaasEventContext<IEngagementTvSearch>): IEngagementTvSearch;
120
+ export declare function buildEngagementUIElementEvent(context: TpaasEventContext<IEngagementUIElement>): IEngagementUIElement;
121
+ export declare function buildEngagementVideoEvent(context: TpaasEventContext<IEngagementVideo>): IEngagementVideo;
122
+ export declare function buildEngagementVideoAdEvent(context: TpaasEventContext<IEngagementVideoAd>): IEngagementVideoAd;
123
+ export declare function buildEngagementWidgetEvent(context: TpaasEventContext<IEngagementWidget>): IEngagementWidget;
124
+ export declare function buildHeartbeatCommercialArticleEvent(context: TpaasEventContext<IHeartbeatCommercialArticle>): IHeartbeatCommercialArticle;
125
+ export declare function buildCompletedHealthActionEvent(context: TpaasEventContext<ICompletedHealthAction>): ICompletedHealthAction;
126
+ export declare function buildEngagementHealthUIElementEvent(context: TpaasEventContext<IEngagementHealthUIElement>): IEngagementHealthUIElement;
127
+ export declare function buildViewHealthPageEvent(context: TpaasEventContext<IViewHealthPage>): IViewHealthPage;
128
+ export declare function buildImpressionHealthUIElementEvent(context: TpaasEventContext<IImpressionHealthUIElement>): IImpressionHealthUIElement;
129
+ export declare function buildImpressionAdEvent(context: TpaasEventContext<IImpressionAd>): IImpressionAd;
130
+ export declare function buildImpressionAdSlotEvent(context: TpaasEventContext<IImpressionAdSlot>): IImpressionAdSlot;
131
+ export declare function buildImpressionAffiliateEvent(context: TpaasEventContext<IImpressionAffiliate>): IImpressionAffiliate;
132
+ export declare function buildImpressionFormEvent(context: TpaasEventContext<IImpressionForm>): IImpressionForm;
133
+ export declare function buildImpressionOfferEvent(context: TpaasEventContext<IImpressionOffer>): IImpressionOffer;
134
+ export declare function buildImpressionPlayerEvent(context: TpaasEventContext<IImpressionPlayer>): IImpressionPlayer;
135
+ export declare function buildImpressionSportsUIElementEvent(context: TpaasEventContext<IImpressionSportsUIElement>): IImpressionSportsUIElement;
136
+ export declare function buildImpressionSchoolUIElementEvent(context: TpaasEventContext<IImpressionSchoolUIElement>): IImpressionSchoolUIElement;
137
+ export declare function buildImpressionTeaserEvent(context: TpaasEventContext<IImpressionTeaser>): IImpressionTeaser;
138
+ export declare function buildImpressionUIElementEvent(context: TpaasEventContext<IImpressionUIElement>): IImpressionUIElement;
139
+ export declare function buildImpressionWidgetEvent(context: TpaasEventContext<IImpressionWidget>): IImpressionWidget;
140
+ export declare function buildLoadAdEvent(context: TpaasEventContext<ILoadAd>): ILoadAd;
141
+ export {};
@@ -0,0 +1,2 @@
1
+ import { PAGE_TYPE_VALUES } from '../tpaas-schemas';
2
+ export declare function isPageType(pageType?: string): pageType is (typeof PAGE_TYPE_VALUES)[number];
@@ -0,0 +1,2 @@
1
+ export * from './builders';
2
+ export { isPageType } from './guards';
@@ -0,0 +1,26 @@
1
+ import type { ActorInput, Consents } from '../builders';
2
+ import type { IExperiments } from '../tpaas-schemas';
3
+ import type { BaseEventExperiment } from '../wrapper/types';
4
+ import type { TpaasEventContext, UserParams } from './types';
5
+ /**
6
+ * Adapts the legacy actor input to the TPaaS user format.
7
+ *
8
+ * @privateRemarks
9
+ * This is a temporary solution to adapt the actor to the new format.
10
+ * It should be removed once we have new methods in place to get the actor.
11
+ *
12
+ * @private
13
+ */
14
+ export declare function adaptActorToNewFormat(actor?: ActorInput): UserParams | undefined;
15
+ /**
16
+ * Adapts the legacy consents to the TPaaS consents format.
17
+ *
18
+ * @private
19
+ */
20
+ export declare function adaptConsentsToNewFormat(consents?: Consents): TpaasEventContext['consents'];
21
+ /**
22
+ * Adapts the base experiments stored in the tracker to the TPaaS experiments format.
23
+ *
24
+ * @private
25
+ */
26
+ export declare function adaptExperiments(baseExperiments?: BaseEventExperiment[]): IExperiments;
@@ -0,0 +1,8 @@
1
+ import type { TpaasBrowserContext } from './types';
2
+ /**
3
+ * Reads the browser state that can change between events, such as the URL after an SPA navigation
4
+ * or the viewport after a resize. Call it synchronously, when the event is tracked.
5
+ *
6
+ * @private
7
+ */
8
+ export declare const captureBrowserContext: () => TpaasBrowserContext;
@@ -0,0 +1,2 @@
1
+ export { prepareAnonymousTpaasEventContext, prepareTpaasEventContext, type TpaasContextSource } from './prepare';
2
+ export type { TpaasAnonymousEventContext, TpaasEventContext } from './types';
@@ -0,0 +1,38 @@
1
+ import type { Consents } from '../builders';
2
+ import type { Builders, CurrentPageContext, SDKState } from '../Tracker';
3
+ import type { InputParams, ITpaasEvent } from '../tpaas-schemas';
4
+ import type { TpaasAnonymousEventContext, TpaasEventContext } from './types';
5
+ /**
6
+ * What the Tracker provides to resolve the context of a TPaaS event.
7
+ *
8
+ * `state`, `builders` and `currentPage` are read synchronously when an event is tracked, so a later
9
+ * update or View event cannot change the context of an event that is still being prepared.
10
+ *
11
+ * @private
12
+ */
13
+ export interface TpaasContextSource {
14
+ state: Pick<SDKState, 'isHybrid' | 'pageViewId' | 'providerId' | 'provider' | 'component' | 'componentVersion' | 'stage' | 'product' | 'version' | 'deployStageTpaas'>;
15
+ builders: Builders;
16
+ currentPage: CurrentPageContext;
17
+ /** Applies the remote configuration. A failure does not prevent the event from being tracked. */
18
+ applyRemoteConfig(): Promise<void>;
19
+ /** Applies the remote configuration and syncs with CIS. A failure does not prevent the event from being tracked. */
20
+ syncRemoteResources(builders: Builders): Promise<unknown>;
21
+ getConsents(): Promise<Consents>;
22
+ /** Called when the event's session has been resolved and stored. */
23
+ onSessionResolved(): void;
24
+ }
25
+ /**
26
+ * Resolves the context of an anonymous TPaaS event.
27
+ * Callers specify the event schema because it cannot be inferred from `InputParams<I>`.
28
+ *
29
+ * @private
30
+ */
31
+ export declare function prepareAnonymousTpaasEventContext<I extends ITpaasEvent>(source: TpaasContextSource, input: InputParams<I>): Promise<TpaasAnonymousEventContext<I>>;
32
+ /**
33
+ * Resolves the context of a TPaaS event.
34
+ * Callers specify the event schema because it cannot be inferred from `InputParams<I>`.
35
+ *
36
+ * @private
37
+ */
38
+ export declare function prepareTpaasEventContext<I extends ITpaasEvent>(source: TpaasContextSource, input: InputParams<I>): Promise<TpaasEventContext<I>>;
@@ -0,0 +1,10 @@
1
+ import type { ISession } from '../tpaas-schemas';
2
+ /**
3
+ * Registers an event created at `createdAt` in the stored session and returns it in the TPaaS format.
4
+ *
5
+ * Call it synchronously, together with capturing `createdAt`, before any asynchronous work.
6
+ * Sessions are then updated in the order events are tracked, which is also their creation order.
7
+ *
8
+ * @private
9
+ */
10
+ export declare const resolveSession: (createdAt: Date) => ISession;
@@ -0,0 +1,66 @@
1
+ import type { IConsents, IContent, IDevice, IExperiments, InputParams, IPageRef, IProvider, ISession, ITpaasEvent, ITracker, IUser, IViewSportsPage } from '../tpaas-schemas';
2
+ /**
3
+ * Browser state read when the event is tracked.
4
+ * @private
5
+ */
6
+ export interface TpaasBrowserContext {
7
+ url?: string;
8
+ search: string;
9
+ screenOrientationType?: OrientationType;
10
+ viewportWidth: number;
11
+ viewportHeight: number;
12
+ userAgent: string | undefined;
13
+ }
14
+ export type UserParams = Pick<IUser, 'hasAnySubscription' | 'region'> & {
15
+ id: string;
16
+ realm: string;
17
+ };
18
+ /**
19
+ * Everything the TPaaS event builders need besides the tracking input, resolved by `prepareTpaasEventContext`.
20
+ *
21
+ * @private
22
+ *
23
+ * @privateRemarks
24
+ * These can be different from one event type to another, depending on the builders used by that event type.
25
+ * However, for now, we use the same context for all event types. let's make it more complex only if needed.
26
+ */
27
+ export interface TpaasEventContext<I extends ITpaasEvent = ITpaasEvent> {
28
+ /**
29
+ * The tracking input, copied when the track method is called.
30
+ */
31
+ input: InputParams<I>;
32
+ /**
33
+ * Event creation time, captured when the track method is called, before any asynchronous work.
34
+ */
35
+ createdAt: Date;
36
+ /**
37
+ * Session resolved together with `createdAt`, so sessions are updated in the order events are tracked.
38
+ */
39
+ session: ISession;
40
+ /**
41
+ * Browser state read together with `createdAt`, so it describes the moment the event was tracked.
42
+ */
43
+ browser: TpaasBrowserContext;
44
+ user?: UserParams;
45
+ version: ITracker['version'];
46
+ isHybrid: ITracker['isHybrid'];
47
+ routingStage: ITracker['routingStage'];
48
+ consents?: IConsents;
49
+ providerId: IProvider['providerId'];
50
+ providerName?: IProvider['name'];
51
+ providerGroup?: IProvider['group'];
52
+ providerStage: IProvider['stage'];
53
+ providerProduct: NonNullable<IProvider['product']>;
54
+ providerVersion: NonNullable<IProvider['version']>;
55
+ component?: IProvider['component'];
56
+ componentVersion?: IProvider['componentVersion'];
57
+ environmentId: IDevice['environmentId'];
58
+ jwe: IDevice['jweIds'];
59
+ pageviewId: string;
60
+ experiments?: IExperiments;
61
+ currentPage?: IPageRef;
62
+ currentPageContent?: IContent;
63
+ currentPageSports?: Pick<IViewSportsPage['object'], 'sportName' | 'sportSubview' | 'sportView' | 'sports'>;
64
+ currentPageReferrer: IPageRef;
65
+ }
66
+ export type TpaasAnonymousEventContext<I extends ITpaasEvent> = Pick<TpaasEventContext<I>, 'input' | 'createdAt' | 'browser' | 'isHybrid' | 'version' | 'pageviewId' | 'providerId' | 'providerName' | 'providerGroup' | 'providerStage' | 'providerProduct' | 'providerVersion' | 'experiments' | 'component' | 'componentVersion' | 'currentPageReferrer' | 'routingStage'>;