@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
@@ -34,19 +34,17 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.builder = void 0;
37
- const pulse_utils_1 = require("@schibsted/pulse-utils");
38
37
  const logger = __importStar(require("loglevel"));
39
38
  const ua_parser_js_1 = require("ua-parser-js");
40
- // Cache the UAParser result to avoid re-parsing on subsequent calls
41
- let cachedUAParser;
42
- function getUAParser() {
43
- if (!cachedUAParser) {
44
- cachedUAParser = (0, ua_parser_js_1.UAParser)();
39
+ let cachedUserAgentResult;
40
+ function getUserAgentResult(userAgent) {
41
+ if (cachedUserAgentResult?.ua !== userAgent) {
42
+ cachedUserAgentResult = (0, ua_parser_js_1.UAParser)(userAgent);
45
43
  }
46
- return cachedUAParser;
44
+ return cachedUserAgentResult;
47
45
  }
48
- const builder = (environmentId, jwe) => {
49
- if (!pulse_utils_1.isBrowser) {
46
+ const builder = (environmentId, jwe, browser) => {
47
+ if (browser.userAgent === undefined) {
50
48
  return {
51
49
  device: {
52
50
  // TODO: server side rendering (or nodejs). do we need to set all the following fields?
@@ -61,7 +59,7 @@ const builder = (environmentId, jwe) => {
61
59
  },
62
60
  };
63
61
  }
64
- const uaParser = getUAParser();
62
+ const uaParser = getUserAgentResult(browser.userAgent);
65
63
  return {
66
64
  device: {
67
65
  clientType: getClientType(uaParser),
@@ -72,13 +70,43 @@ const builder = (environmentId, jwe) => {
72
70
  mobileBrand: uaParser.device.vendor,
73
71
  mobileModel: uaParser.device.model,
74
72
  operatingSystem: getOperatingSystem(uaParser),
75
- screenOrientation: getScreenOrientation(),
76
- userAgent: window.navigator.userAgent,
77
- viewportSize: getViewportSize(),
73
+ screenOrientation: getScreenOrientation(browser.screenOrientationType),
74
+ userAgent: browser.userAgent,
75
+ viewportSize: getViewportSize(browser.viewportWidth, browser.viewportHeight),
78
76
  },
79
77
  };
80
78
  };
81
79
  exports.builder = builder;
80
+ function getScreenOrientation(orientationType) {
81
+ if (orientationType === 'landscape-primary' || orientationType === 'landscape-secondary') {
82
+ return 'Landscape';
83
+ }
84
+ return 'Portrait';
85
+ }
86
+ function getSizeFromPixels(pixels) {
87
+ if (pixels < 360) {
88
+ return 'XS';
89
+ }
90
+ if (pixels < 480) {
91
+ return 'S';
92
+ }
93
+ if (pixels < 768) {
94
+ return 'M';
95
+ }
96
+ if (pixels < 1024) {
97
+ return 'L';
98
+ }
99
+ if (pixels >= 1024) {
100
+ return 'XL';
101
+ }
102
+ logger.error('Could not determine viewport size, defaulting to M');
103
+ return 'M';
104
+ }
105
+ function getViewportSize(viewportWidth, viewportHeight) {
106
+ const size = getSizeFromPixels(Math.min(viewportWidth, viewportHeight));
107
+ logger.debug(`Viewport size: ${viewportWidth}x${viewportHeight}, mapped to ${size}`);
108
+ return size;
109
+ }
82
110
  function getClientType(uaParser) {
83
111
  const { browser } = uaParser;
84
112
  const browserName = browser.name?.toLocaleLowerCase() || '';
@@ -139,73 +167,23 @@ function getOperatingSystem(uaParser) {
139
167
  if (osName.includes('windows')) {
140
168
  return 'Windows';
141
169
  }
142
- if (osName.includes('macos')) {
170
+ if (osName.includes('macos') || osName.includes('mac os')) {
143
171
  return 'Mac';
144
172
  }
145
- // some flavors of Linux might not be captured by this
173
+ if (osName.includes('android')) {
174
+ return 'Android';
175
+ }
176
+ if (osName.includes('ios')) {
177
+ return 'iOS';
178
+ }
179
+ // some flavours of Linux might not be captured by this
146
180
  // do we need a better detection, based on a list?
147
181
  // for example (Gentoo - https://docs.uaparser.dev/info/os/name.html)
148
182
  if (osName.includes('linux')) {
149
183
  return 'Linux';
150
184
  }
151
- // the TPaaS `device` template is missing Android, iOS, iPadOS and maybe others?
185
+ // the TPaaS `device` template is missing iPadOS and maybe others?
152
186
  logger.log(`Unknown operating system: ${osName}. Defaulting to 'other'.`);
153
187
  // default value
154
188
  return 'Other';
155
189
  }
156
- function getScreenOrientation() {
157
- const orientationType = window.screen.orientation?.type;
158
- const portraitOrientations = ['portrait-primary', 'portrait-secondary'];
159
- const landscapeOrientations = ['landscape-primary', 'landscape-secondary'];
160
- // the ifs might be a bit overkill, but it helps with separating the default value from the logic
161
- if (portraitOrientations.includes(orientationType)) {
162
- return 'Portrait';
163
- }
164
- if (landscapeOrientations.includes(orientationType)) {
165
- return 'Landscape';
166
- }
167
- // default value
168
- return 'Portrait';
169
- }
170
- function getSizeFromPixels(pixels) {
171
- if (pixels < 360) {
172
- return 'XS';
173
- }
174
- if (pixels < 480) {
175
- return 'S';
176
- }
177
- if (pixels < 768) {
178
- return 'M';
179
- }
180
- if (pixels < 1024) {
181
- return 'L';
182
- }
183
- if (pixels >= 1024) {
184
- return 'XL';
185
- }
186
- // default value
187
- logger.error('Could not determine viewport size, defaulting to M');
188
- return 'M';
189
- }
190
- function getViewportSize() {
191
- let viewportWidth;
192
- let viewportHeight;
193
- const { document } = window;
194
- if (typeof window.innerWidth !== 'undefined') {
195
- viewportWidth = window.innerWidth;
196
- viewportHeight = window.innerHeight;
197
- }
198
- else if (typeof document.documentElement.clientWidth !== 'undefined' &&
199
- document.documentElement.clientWidth !== 0) {
200
- viewportWidth = document.documentElement.clientWidth;
201
- viewportHeight = document.documentElement.clientHeight;
202
- }
203
- else {
204
- viewportWidth = document.getElementsByTagName('body')[0].clientWidth;
205
- viewportHeight = document.getElementsByTagName('body')[0].clientHeight;
206
- }
207
- const shortestDimension = Math.min(viewportWidth, viewportHeight);
208
- const size = getSizeFromPixels(shortestDimension);
209
- logger.debug(`Viewport size: ${viewportWidth}x${viewportHeight}, mapped to ${size}`);
210
- return size;
211
- }
@@ -16,12 +16,11 @@ const builder = (eventNavigationType) => {
16
16
  };
17
17
  };
18
18
  exports.builder = builder;
19
- // In practice they use the same values, but for future proofing we keep them separate and mapped
19
+ // In practice, they use the same values, but for future proofing we keep them separate and mapped
20
20
  const modernNavigationMap = {
21
21
  navigate: 'Navigate',
22
22
  reload: 'Reload',
23
23
  back_forward: 'BackForward',
24
- prerender: 'Prerender',
25
24
  };
26
25
  const legacyNavigationMap = {
27
26
  0: 'Navigate',
@@ -29,7 +28,7 @@ const legacyNavigationMap = {
29
28
  2: 'BackForward',
30
29
  };
31
30
  const getModernNavigationType = (entryType) => {
32
- return modernNavigationMap[entryType];
31
+ return modernNavigationMap[entryType] || 'Navigate';
33
32
  };
34
33
  const getLegacyNavigationType = (entryType) => {
35
34
  return legacyNavigationMap[entryType] || 'Navigate';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.builder = void 0;
4
+ const builder = (content) => ({
5
+ page: content ? { content } : {},
6
+ });
7
+ exports.builder = builder;
@@ -1,8 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.builder = void 0;
4
- const pulse_utils_1 = require("@schibsted/pulse-utils");
5
- const builder = (currentPage) => {
4
+ const builder = (currentPage, url) => {
6
5
  // if something happens and there was no View Page type of event sent before, we need a fallback
7
6
  if (!currentPage) {
8
7
  return {
@@ -10,7 +9,7 @@ const builder = (currentPage) => {
10
9
  info: {
11
10
  pageId: 'unknown',
12
11
  pageType: 'Page',
13
- url: pulse_utils_1.isBrowser ? window.location.href : undefined,
12
+ url,
14
13
  },
15
14
  },
16
15
  };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.builder = void 0;
4
+ const builder = (sports) => ({
5
+ page: sports ?? {},
6
+ });
7
+ exports.builder = builder;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.builder = builder;
4
+ const generateProviderSDRN = (providerId) => `sdrn:schibsted:client:${providerId}`;
5
+ function builder(providerId, providerStage, providerProduct, providerVersion, component, componentVersion, providerName, providerGroup) {
6
+ return {
7
+ provider: {
8
+ providerId,
9
+ providerSdrn: generateProviderSDRN(providerId),
10
+ ...(component !== undefined && { component }),
11
+ ...(componentVersion !== undefined && { componentVersion }),
12
+ ...(providerGroup !== undefined && { group: providerGroup }),
13
+ ...(providerName !== undefined && { name: providerName }),
14
+ stage: providerStage,
15
+ product: providerProduct,
16
+ version: providerVersion,
17
+ },
18
+ };
19
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.builder = void 0;
4
+ const hasReferrerData = (referrer) => Boolean(referrer.pageId || referrer.url || referrer.pageType);
5
+ const builder = (referrer) => {
6
+ if (!hasReferrerData(referrer)) {
7
+ return {
8
+ page: {},
9
+ };
10
+ }
11
+ return {
12
+ page: {
13
+ referrer,
14
+ },
15
+ };
16
+ };
17
+ exports.builder = builder;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.builder = void 0;
4
+ const builder = (session) => ({ session });
5
+ exports.builder = builder;
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.builder = void 0;
4
- const builder = (autoTrackerVersion, isHybrid, version) => {
4
+ const builder = ({ isHybrid, routingStage, version, }) => {
5
5
  return {
6
6
  tracker: {
7
- autoTrackerVersion,
8
- isAutoTracker: !!autoTrackerVersion,
9
7
  isHybrid,
8
+ routingStage,
10
9
  trackerType: 'JS',
11
10
  version,
12
11
  },
@@ -7,7 +7,7 @@ const builder = (user) => {
7
7
  return {};
8
8
  }
9
9
  const { hasAnySubscription, region, id, realm } = user;
10
- if (!id || !id.toString().trim()) {
10
+ if (!id?.toString().trim()) {
11
11
  // the user is anonymous (logged out)
12
12
  return {};
13
13
  }
@@ -1,15 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.builder = void 0;
4
- const pulse_utils_1 = require("@schibsted/pulse-utils");
5
- const tpaas_schemas_1 = require("@schibsted/tpaas-schemas");
6
- const builder = () => {
7
- if (!pulse_utils_1.isBrowser) {
8
- return {
9
- page: {},
10
- };
11
- }
12
- const urlParams = new URLSearchParams(window?.location?.search ?? '');
4
+ const tpaas_schemas_1 = require("../../tpaas-schemas");
5
+ const builder = (search) => {
6
+ const urlParams = new URLSearchParams(search);
13
7
  const utmCampaign = urlParams.get('utm_campaign');
14
8
  const utmContent = urlParams.get('utm_content');
15
9
  const utmMediumRaw = urlParams.get('utm_medium');
@@ -0,0 +1,326 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCommonBuildersOutput = void 0;
4
+ exports.buildAnonymousImpressionUIElementEvent = buildAnonymousImpressionUIElementEvent;
5
+ exports.buildViewArticleEvent = buildViewArticleEvent;
6
+ exports.buildViewAudioPageEvent = buildViewAudioPageEvent;
7
+ exports.buildViewErrorEvent = buildViewErrorEvent;
8
+ exports.buildViewFrontpageEvent = buildViewFrontpageEvent;
9
+ exports.buildViewLandingpageEvent = buildViewLandingpageEvent;
10
+ exports.buildViewListingEvent = buildViewListingEvent;
11
+ exports.buildViewLockedArticleEvent = buildViewLockedArticleEvent;
12
+ exports.buildViewLockedAudioPageEvent = buildViewLockedAudioPageEvent;
13
+ exports.buildViewLockedPageEvent = buildViewLockedPageEvent;
14
+ exports.buildViewLockedVideoPageEvent = buildViewLockedVideoPageEvent;
15
+ exports.buildLeaveLockedVideoPageEvent = buildLeaveLockedVideoPageEvent;
16
+ exports.buildViewPageEvent = buildViewPageEvent;
17
+ exports.buildViewSportsPageEvent = buildViewSportsPageEvent;
18
+ exports.buildViewSchoolPageEvent = buildViewSchoolPageEvent;
19
+ exports.buildViewTitleEvent = buildViewTitleEvent;
20
+ exports.buildViewVideoPageEvent = buildViewVideoPageEvent;
21
+ exports.buildViewWeatherEvent = buildViewWeatherEvent;
22
+ exports.buildLeaveArticleEvent = buildLeaveArticleEvent;
23
+ exports.buildLeaveAudioPageEvent = buildLeaveAudioPageEvent;
24
+ exports.buildLeaveErrorEvent = buildLeaveErrorEvent;
25
+ exports.buildLeaveFrontpageEvent = buildLeaveFrontpageEvent;
26
+ exports.buildLeaveLandingpageEvent = buildLeaveLandingpageEvent;
27
+ exports.buildLeaveListingEvent = buildLeaveListingEvent;
28
+ exports.buildLeaveLockedArticleEvent = buildLeaveLockedArticleEvent;
29
+ exports.buildLeaveLockedAudioPageEvent = buildLeaveLockedAudioPageEvent;
30
+ exports.buildLeaveLockedPageEvent = buildLeaveLockedPageEvent;
31
+ exports.buildLeavePageEvent = buildLeavePageEvent;
32
+ exports.buildLeaveSportsPageEvent = buildLeaveSportsPageEvent;
33
+ exports.buildLeaveSchoolPageEvent = buildLeaveSchoolPageEvent;
34
+ exports.buildLeaveVideoPageEvent = buildLeaveVideoPageEvent;
35
+ exports.buildLeaveWeatherEvent = buildLeaveWeatherEvent;
36
+ exports.buildEngagementAdEvent = buildEngagementAdEvent;
37
+ exports.buildEngagementAffiliateEvent = buildEngagementAffiliateEvent;
38
+ exports.buildEngagementAudioEvent = buildEngagementAudioEvent;
39
+ exports.buildEngagementFormEvent = buildEngagementFormEvent;
40
+ exports.buildEngagementOfferEvent = buildEngagementOfferEvent;
41
+ exports.buildEngagementSportsUIElementEvent = buildEngagementSportsUIElementEvent;
42
+ exports.buildEngagementSchoolUIElementEvent = buildEngagementSchoolUIElementEvent;
43
+ exports.buildEngagementTeaserEvent = buildEngagementTeaserEvent;
44
+ exports.buildEngagementTvModuleEvent = buildEngagementTvModuleEvent;
45
+ exports.buildEngagementTvSearchEvent = buildEngagementTvSearchEvent;
46
+ exports.buildEngagementUIElementEvent = buildEngagementUIElementEvent;
47
+ exports.buildEngagementVideoEvent = buildEngagementVideoEvent;
48
+ exports.buildEngagementVideoAdEvent = buildEngagementVideoAdEvent;
49
+ exports.buildEngagementWidgetEvent = buildEngagementWidgetEvent;
50
+ exports.buildHeartbeatCommercialArticleEvent = buildHeartbeatCommercialArticleEvent;
51
+ exports.buildCompletedHealthActionEvent = buildCompletedHealthActionEvent;
52
+ exports.buildEngagementHealthUIElementEvent = buildEngagementHealthUIElementEvent;
53
+ exports.buildViewHealthPageEvent = buildViewHealthPageEvent;
54
+ exports.buildImpressionHealthUIElementEvent = buildImpressionHealthUIElementEvent;
55
+ exports.buildImpressionAdEvent = buildImpressionAdEvent;
56
+ exports.buildImpressionAdSlotEvent = buildImpressionAdSlotEvent;
57
+ exports.buildImpressionAffiliateEvent = buildImpressionAffiliateEvent;
58
+ exports.buildImpressionFormEvent = buildImpressionFormEvent;
59
+ exports.buildImpressionOfferEvent = buildImpressionOfferEvent;
60
+ exports.buildImpressionPlayerEvent = buildImpressionPlayerEvent;
61
+ exports.buildImpressionSportsUIElementEvent = buildImpressionSportsUIElementEvent;
62
+ exports.buildImpressionSchoolUIElementEvent = buildImpressionSchoolUIElementEvent;
63
+ exports.buildImpressionTeaserEvent = buildImpressionTeaserEvent;
64
+ exports.buildImpressionUIElementEvent = buildImpressionUIElementEvent;
65
+ exports.buildImpressionWidgetEvent = buildImpressionWidgetEvent;
66
+ exports.buildLoadAdEvent = buildLoadAdEvent;
67
+ const ts_deepmerge_1 = require("ts-deepmerge");
68
+ const tpaas_schemas_1 = require("../tpaas-schemas");
69
+ const anonymous_1 = require("./builders/anonymous");
70
+ const baseEvent_1 = require("./builders/baseEvent");
71
+ const catalogVersion_1 = require("./builders/catalogVersion");
72
+ const consents_1 = require("./builders/consents");
73
+ const device_1 = require("./builders/device");
74
+ const experiments_1 = require("./builders/experiments");
75
+ const navigationType_1 = require("./builders/navigationType");
76
+ const pageContent_1 = require("./builders/pageContent");
77
+ const pageInfo_1 = require("./builders/pageInfo");
78
+ const pageSports_1 = require("./builders/pageSports");
79
+ const pageviewId_1 = require("./builders/pageviewId");
80
+ const provider_1 = require("./builders/provider");
81
+ const referrer_1 = require("./builders/referrer");
82
+ const session_1 = require("./builders/session");
83
+ const time_1 = require("./builders/time");
84
+ const trackerBuilder_1 = require("./builders/trackerBuilder");
85
+ const user_1 = require("./builders/user");
86
+ const utm_1 = require("./builders/utm");
87
+ const getCommonBuildersOutput = (context) => {
88
+ const { createdAt, session, isHybrid, version, environmentId, jwe, user, consents, providerId, providerName, providerGroup, providerStage, providerProduct, providerVersion, component, componentVersion, pageviewId, currentPage, currentPageReferrer, routingStage, browser, } = context;
89
+ const { experiments } = context.input;
90
+ return (0, ts_deepmerge_1.merge)((0, trackerBuilder_1.builder)({ isHybrid, version, routingStage }), (0, time_1.builder)(createdAt), (0, session_1.builder)(session), (0, device_1.builder)(environmentId, jwe, browser), (0, user_1.builder)(user), (0, baseEvent_1.builder)(), (0, consents_1.builder)(consents), (0, provider_1.builder)(providerId, providerStage, providerProduct, providerVersion, component, componentVersion, providerName, providerGroup), (0, pageInfo_1.builder)(currentPage, browser.url), (0, pageviewId_1.builder)(pageviewId), (0, utm_1.builder)(browser.search), (0, referrer_1.builder)(currentPageReferrer), (0, catalogVersion_1.builder)(), (0, experiments_1.builder)(context.experiments, experiments));
91
+ };
92
+ exports.getCommonBuildersOutput = getCommonBuildersOutput;
93
+ const getElementEventBuildersOutput = (context) => (0, ts_deepmerge_1.merge)((0, exports.getCommonBuildersOutput)(context), (0, pageContent_1.builder)(context.currentPageContent));
94
+ const getSportsElementEventBuildersOutput = (context) => (0, ts_deepmerge_1.merge)(getElementEventBuildersOutput(context), (0, pageSports_1.builder)(context.currentPageSports));
95
+ // there's a bug in the ts-deepmerge library that doesn't properly resolve merging optionals with required properties
96
+ // due to this, we need to do 2 things:
97
+ // (1) manually omit navigationType from the input before merging.
98
+ // it has no effect on the final value since navigationType will always be set by the navigationTypeBuilder.
99
+ // (2) ensure page is always defined in the input, even when it's not passed to the SDK
100
+ // again, it has no effect on the final value because several builders are passing a page object
101
+ // But this makes TS happy in an elegant way, without type assertions at the merge level
102
+ const normalizePageInput = (input) => {
103
+ const { page, ...rest } = input;
104
+ if (!page) {
105
+ return {
106
+ ...rest,
107
+ page: {},
108
+ };
109
+ }
110
+ if (!('navigationType' in page)) {
111
+ return input;
112
+ }
113
+ const { navigationType: _, ...pageRest } = page;
114
+ return {
115
+ ...rest,
116
+ page: {
117
+ ...pageRest,
118
+ },
119
+ };
120
+ };
121
+ // #region AnonymousImpression Event Builders
122
+ function buildAnonymousImpressionUIElementEvent(context) {
123
+ const { createdAt, isHybrid, version, pageviewId, providerId, providerName, providerGroup, providerStage, providerProduct, providerVersion, component, componentVersion, currentPageReferrer, routingStage, } = context;
124
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.AnonymousImpressionUIElement, (0, baseEvent_1.builder)(), (0, trackerBuilder_1.builder)({ isHybrid, version, routingStage }), (0, time_1.builder)(createdAt), (0, pageviewId_1.builder)(pageviewId), (0, utm_1.builder)(context.browser.search), (0, anonymous_1.builder)(), (0, provider_1.builder)(providerId, providerStage, providerProduct, providerVersion, component, componentVersion, providerName, providerGroup), (0, referrer_1.builder)(currentPageReferrer), (0, experiments_1.builder)(context.experiments, context.input.experiments), (0, catalogVersion_1.builder)(), normalizePageInput(context.input));
125
+ }
126
+ // #endregion
127
+ // #region View Event Builders
128
+ function buildViewArticleEvent(context) {
129
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewArticle, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
130
+ }
131
+ function buildViewAudioPageEvent(context) {
132
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewAudioPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
133
+ }
134
+ function buildViewErrorEvent(context) {
135
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewError, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
136
+ }
137
+ function buildViewFrontpageEvent(context) {
138
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewFrontpage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
139
+ }
140
+ function buildViewLandingpageEvent(context) {
141
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewLandingpage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
142
+ }
143
+ function buildViewListingEvent(context) {
144
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewListing, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
145
+ }
146
+ function buildViewLockedArticleEvent(context) {
147
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewLockedArticle, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
148
+ }
149
+ function buildViewLockedAudioPageEvent(context) {
150
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewLockedAudioPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
151
+ }
152
+ function buildViewLockedPageEvent(context) {
153
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewLockedPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
154
+ }
155
+ function buildViewLockedVideoPageEvent(context) {
156
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewLockedVideoPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
157
+ }
158
+ function buildLeaveLockedVideoPageEvent(context) {
159
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveLockedVideoPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
160
+ }
161
+ function buildViewPageEvent(context) {
162
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
163
+ }
164
+ function buildViewSportsPageEvent(context) {
165
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewSportsPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
166
+ }
167
+ function buildViewSchoolPageEvent(context) {
168
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewSchoolPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
169
+ }
170
+ function buildViewTitleEvent(context) {
171
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewTitle, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
172
+ }
173
+ function buildViewVideoPageEvent(context) {
174
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewVideoPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
175
+ }
176
+ function buildViewWeatherEvent(context) {
177
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewWeather, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
178
+ }
179
+ // #endregion
180
+ // #region Leave Event Builders
181
+ function buildLeaveArticleEvent(context) {
182
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveArticle, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
183
+ }
184
+ function buildLeaveAudioPageEvent(context) {
185
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveAudioPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
186
+ }
187
+ function buildLeaveErrorEvent(context) {
188
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveError, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
189
+ }
190
+ function buildLeaveFrontpageEvent(context) {
191
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveFrontpage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
192
+ }
193
+ function buildLeaveLandingpageEvent(context) {
194
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveLandingpage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
195
+ }
196
+ function buildLeaveListingEvent(context) {
197
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveListing, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
198
+ }
199
+ function buildLeaveLockedArticleEvent(context) {
200
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveLockedArticle, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
201
+ }
202
+ function buildLeaveLockedAudioPageEvent(context) {
203
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveLockedAudioPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
204
+ }
205
+ function buildLeaveLockedPageEvent(context) {
206
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveLockedPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
207
+ }
208
+ function buildLeavePageEvent(context) {
209
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeavePage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
210
+ }
211
+ function buildLeaveSportsPageEvent(context) {
212
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveSportsPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
213
+ }
214
+ function buildLeaveSchoolPageEvent(context) {
215
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveSchoolPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
216
+ }
217
+ function buildLeaveVideoPageEvent(context) {
218
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveVideoPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
219
+ }
220
+ function buildLeaveWeatherEvent(context) {
221
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LeaveWeather, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
222
+ }
223
+ // #endregion
224
+ // #region Engagement Event Builders
225
+ function buildEngagementAdEvent(context) {
226
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementAd, getElementEventBuildersOutput(context), normalizePageInput(context.input));
227
+ }
228
+ function buildEngagementAffiliateEvent(context) {
229
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementAffiliate, getElementEventBuildersOutput(context), normalizePageInput(context.input));
230
+ }
231
+ function buildEngagementAudioEvent(context) {
232
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementAudio, getElementEventBuildersOutput(context), normalizePageInput(context.input));
233
+ }
234
+ function buildEngagementFormEvent(context) {
235
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementForm, getElementEventBuildersOutput(context), normalizePageInput(context.input));
236
+ }
237
+ function buildEngagementOfferEvent(context) {
238
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementOffer, getElementEventBuildersOutput(context), normalizePageInput(context.input));
239
+ }
240
+ function buildEngagementSportsUIElementEvent(context) {
241
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementSportsUIElement, getSportsElementEventBuildersOutput(context), normalizePageInput(context.input));
242
+ }
243
+ function buildEngagementSchoolUIElementEvent(context) {
244
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementSchoolUIElement, getElementEventBuildersOutput(context), normalizePageInput(context.input));
245
+ }
246
+ function buildEngagementTeaserEvent(context) {
247
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementTeaser, getElementEventBuildersOutput(context), normalizePageInput(context.input));
248
+ }
249
+ function buildEngagementTvModuleEvent(context) {
250
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementTvModule, getElementEventBuildersOutput(context), normalizePageInput(context.input));
251
+ }
252
+ function buildEngagementTvSearchEvent(context) {
253
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementTvSearch, getElementEventBuildersOutput(context), normalizePageInput(context.input));
254
+ }
255
+ function buildEngagementUIElementEvent(context) {
256
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementUIElement, getElementEventBuildersOutput(context), normalizePageInput(context.input));
257
+ }
258
+ function buildEngagementVideoEvent(context) {
259
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementVideo, getElementEventBuildersOutput(context), normalizePageInput(context.input));
260
+ }
261
+ function buildEngagementVideoAdEvent(context) {
262
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementVideoAd, getElementEventBuildersOutput(context), normalizePageInput(context.input));
263
+ }
264
+ function buildEngagementWidgetEvent(context) {
265
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementWidget, getElementEventBuildersOutput(context), normalizePageInput(context.input));
266
+ }
267
+ // #endregion
268
+ // #region Heartbeat Event Builders
269
+ function buildHeartbeatCommercialArticleEvent(context) {
270
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.HeartbeatCommercialArticle, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
271
+ }
272
+ // #endregion
273
+ // #region Health Event Builders
274
+ function buildCompletedHealthActionEvent(context) {
275
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.CompletedHealthAction, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input));
276
+ }
277
+ function buildEngagementHealthUIElementEvent(context) {
278
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.EngagementHealthUIElement, getElementEventBuildersOutput(context), normalizePageInput(context.input));
279
+ }
280
+ function buildViewHealthPageEvent(context) {
281
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ViewHealthPage, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input), (0, navigationType_1.builder)(context.input.page?.navigationType));
282
+ }
283
+ function buildImpressionHealthUIElementEvent(context) {
284
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionHealthUIElement, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input));
285
+ }
286
+ // #endregion
287
+ // #region Impression Event Builders
288
+ function buildImpressionAdEvent(context) {
289
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionAd, getElementEventBuildersOutput(context), normalizePageInput(context.input));
290
+ }
291
+ function buildImpressionAdSlotEvent(context) {
292
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionAdSlot, getElementEventBuildersOutput(context), normalizePageInput(context.input));
293
+ }
294
+ function buildImpressionAffiliateEvent(context) {
295
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionAffiliate, getElementEventBuildersOutput(context), normalizePageInput(context.input));
296
+ }
297
+ function buildImpressionFormEvent(context) {
298
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionForm, getElementEventBuildersOutput(context), normalizePageInput(context.input));
299
+ }
300
+ function buildImpressionOfferEvent(context) {
301
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionOffer, getElementEventBuildersOutput(context), normalizePageInput(context.input));
302
+ }
303
+ function buildImpressionPlayerEvent(context) {
304
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionPlayer, getElementEventBuildersOutput(context), normalizePageInput(context.input));
305
+ }
306
+ function buildImpressionSportsUIElementEvent(context) {
307
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionSportsUIElement, getSportsElementEventBuildersOutput(context), normalizePageInput(context.input));
308
+ }
309
+ function buildImpressionSchoolUIElementEvent(context) {
310
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionSchoolUIElement, getElementEventBuildersOutput(context), normalizePageInput(context.input));
311
+ }
312
+ function buildImpressionTeaserEvent(context) {
313
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionTeaser, getElementEventBuildersOutput(context), normalizePageInput(context.input));
314
+ }
315
+ function buildImpressionUIElementEvent(context) {
316
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionUIElement, getElementEventBuildersOutput(context), normalizePageInput(context.input));
317
+ }
318
+ function buildImpressionWidgetEvent(context) {
319
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.ImpressionWidget, getElementEventBuildersOutput(context), normalizePageInput(context.input));
320
+ }
321
+ // #endregion
322
+ // #region Ad Lifecycle Event Builders
323
+ function buildLoadAdEvent(context) {
324
+ return (0, ts_deepmerge_1.merge)(tpaas_schemas_1.LoadAd, (0, exports.getCommonBuildersOutput)(context), normalizePageInput(context.input));
325
+ }
326
+ // #endregion
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPageType = isPageType;
4
+ const tpaas_schemas_1 = require("../tpaas-schemas");
5
+ function isPageType(pageType) {
6
+ return tpaas_schemas_1.PAGE_TYPE_VALUES.some((val) => val === pageType);
7
+ }