@schibsted/advertory 3.4.15 → 3.6.0

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 (382) hide show
  1. package/ad-native/cjs/index.d.ts +11 -27
  2. package/ad-native/cjs/index.js +1 -1
  3. package/ad-native/es/index.d.ts +11 -27
  4. package/ad-native/es/index.js +1 -1
  5. package/aftenposten/cjs/index.d.ts +11 -27
  6. package/aftenposten/cjs/index.js +1 -1
  7. package/aftenposten/es/_auto-entry_aftenposten-DRy582No.js +1 -0
  8. package/aftenposten/es/{events-Cb8ZEr-r.js → events-C9C7urqL.js} +1 -1
  9. package/aftenposten/es/{index-CvduAHOF.js → index-BkS_SJlJ.js} +1 -1
  10. package/aftenposten/es/{index-DrbIFHAs.js → index-BnqSaT1c.js} +1 -1
  11. package/aftenposten/es/{index-B4bz8CCj.js → index-C3FOilzo.js} +1 -1
  12. package/aftenposten/es/{index-CRKDx4IU.js → index-CydB8YIr.js} +1 -1
  13. package/aftenposten/es/{index-nljkI4XT.js → index-DORsiGYv.js} +1 -1
  14. package/aftenposten/es/{index-COgtK-0i.js → index-DeI8d-uV.js} +1 -1
  15. package/aftenposten/es/{index-BZKa2phF.js → index-DwPGsi8k.js} +1 -1
  16. package/aftenposten/es/{index-C8IZW4aQ.js → index-cQE0VJo1.js} +1 -1
  17. package/aftenposten/es/index.d.ts +11 -27
  18. package/aftenposten/es/index.js +1 -1
  19. package/aftenposten/es/{styles-C3XDawuq.js → styles-80njiXh8.js} +1 -1
  20. package/aftenposten/es/{styles-CsRldTGJ.js → styles-9muMJKJn.js} +1 -1
  21. package/aftenposten/es/{styles-DNTucOMf.js → styles-B0TjAFsC.js} +1 -1
  22. package/aftenposten/es/{styles-CXi0dDQe.js → styles-BqDARxy2.js} +1 -1
  23. package/aftenposten/es/{styles-C6LOx4jX.js → styles-C-mBJ4KF.js} +1 -1
  24. package/aftenposten/es/{styles-CsPtl2d3.js → styles-CH01dhZI.js} +1 -1
  25. package/aftenposten/es/{styles-BjjOtU6H.js → styles-CQkWKgtJ.js} +1 -1
  26. package/aftenposten/es/{styles-DZPQAqmk.js → styles-CkwzAwsB.js} +1 -1
  27. package/aftenposten/es/{styles-B3fOXOgO.js → styles-DwsygbnU.js} +1 -1
  28. package/aftenposten/es/{styles-BvTK24RF.js → styles-s1wxb2F_.js} +1 -1
  29. package/aftenpostenv2/es/_auto-entry_aftenpostenv2-CXrYo3kj.js +1 -0
  30. package/aftenpostenv2/es/{events-Nx0Felml.js → events-ByEM8ZeV.js} +1 -1
  31. package/aftenpostenv2/es/{index-LSZ2lDLm.js → index-B0U7ps9y.js} +1 -1
  32. package/aftenpostenv2/es/{index-blht3J8U.js → index-BZciKqap.js} +1 -1
  33. package/aftenpostenv2/es/{index-DtvvyzxJ.js → index-CxmBWC8z.js} +1 -1
  34. package/aftenpostenv2/es/{index-D-q-z_MZ.js → index-Dp17754Z.js} +1 -1
  35. package/aftenpostenv2/es/{index-C9uuMmrN.js → index-DzW5W5w1.js} +1 -1
  36. package/aftenpostenv2/es/{index-CEIx7bMj.js → index-T22foY0A.js} +1 -1
  37. package/aftenpostenv2/es/{index-D7XG-zSH.js → index-TeY0tmGM.js} +1 -1
  38. package/aftenpostenv2/es/{index-Bs1Fnz_w.js → index-Vv6YGuEQ.js} +1 -1
  39. package/aftenpostenv2/es/index.d.ts +11 -27
  40. package/aftenpostenv2/es/index.js +1 -1
  41. package/aftenpostenv2/es/{styles-Da-RIIFj.js → styles-2437hpxv.js} +1 -1
  42. package/aftenpostenv2/es/{styles-30tU5XOe.js → styles-B9yGGUxs.js} +1 -1
  43. package/aftenpostenv2/es/{styles-CAROVdM5.js → styles-CE4ljrOq.js} +1 -1
  44. package/aftenpostenv2/es/{styles-BOzkX4Na.js → styles-CFIY_fYs.js} +1 -1
  45. package/aftenpostenv2/es/{styles-DtIWlT8d.js → styles-C_hqfq3h.js} +1 -1
  46. package/aftenpostenv2/es/{styles-B5Xuy_0z.js → styles-CwOFrT-m.js} +1 -1
  47. package/aftenpostenv2/es/{styles-1HrTh55e.js → styles-DVb70HkY.js} +1 -1
  48. package/aftenpostenv2/es/{styles-BcgROOBb.js → styles-Dv3iE5E9.js} +1 -1
  49. package/aftenpostenv2/es/{styles-CbIK_wdC.js → styles-U1MbgnO8.js} +1 -1
  50. package/aftenpostenv2/es/{styles-376delwW.js → styles-gvMqFZ6Z.js} +1 -1
  51. package/aftonbladet/cjs/index.d.ts +11 -27
  52. package/aftonbladet/cjs/index.js +1 -1
  53. package/aftonbladet/es/_auto-entry_aftonbladet-B5rZbU4l.js +1 -0
  54. package/aftonbladet/es/{events-CSMatn8N.js → events-BbyNwvht.js} +1 -1
  55. package/aftonbladet/es/{index-hsYM9qwu.js → index-B2yfV01q.js} +1 -1
  56. package/aftonbladet/es/{index-F87c-u1X.js → index-BG8DyJ9Q.js} +1 -1
  57. package/aftonbladet/es/{index-DSsB4HO-.js → index-BdoEltYH.js} +1 -1
  58. package/aftonbladet/es/{index-CkiFY6yp.js → index-BjfZKgVs.js} +1 -1
  59. package/aftonbladet/es/{index-CPXCkATY.js → index-CYq72Epp.js} +1 -1
  60. package/aftonbladet/es/{index-BuTjFYp3.js → index-D-SooPyf.js} +1 -1
  61. package/aftonbladet/es/{index-A-l_WthM.js → index-D7OZ0aH_.js} +1 -1
  62. package/aftonbladet/es/{index-AMWEkhDq.js → index-DJjSX67L.js} +1 -1
  63. package/aftonbladet/es/index.d.ts +11 -27
  64. package/aftonbladet/es/index.js +1 -1
  65. package/aftonbladet/es/{styles-5yeT3zws.js → styles-BGJhp99G.js} +1 -1
  66. package/aftonbladet/es/{styles-B3s9Zc7l.js → styles-BivTRwAi.js} +1 -1
  67. package/aftonbladet/es/{styles-25ykGn-l.js → styles-CGvjrVhR.js} +1 -1
  68. package/aftonbladet/es/{styles-33KHYuDm.js → styles-COq02SIe.js} +1 -1
  69. package/aftonbladet/es/{styles-CxwRgQr2.js → styles-D4zAPI1T.js} +1 -1
  70. package/aftonbladet/es/{styles-B_-dEE3N.js → styles-_AmB2_Ug.js} +1 -1
  71. package/aftonbladetv2/es/_auto-entry_aftonbladetv2-yMuDMPYm.js +1 -0
  72. package/aftonbladetv2/es/{events-D8N8wanf.js → events-Be3bdEHm.js} +1 -1
  73. package/aftonbladetv2/es/{index-D4vzesOB.js → index-8t-IGjUw.js} +1 -1
  74. package/aftonbladetv2/es/{index-CJL1SnyM.js → index-BjpGqbjh.js} +1 -1
  75. package/aftonbladetv2/es/{index-CpYgt8SY.js → index-C82MmKIC.js} +1 -1
  76. package/aftonbladetv2/es/{index-DJjUUyTH.js → index-CO_dweCr.js} +1 -1
  77. package/aftonbladetv2/es/{index-CGrutJih.js → index-CWUPQnPC.js} +1 -1
  78. package/aftonbladetv2/es/{index-CZvOSY6g.js → index-DE5y5asp.js} +1 -1
  79. package/aftonbladetv2/es/{index-CVuk6N37.js → index-DgEEfQ4V.js} +1 -1
  80. package/aftonbladetv2/es/{index-hEVvwFKi.js → index-vUqiPpRV.js} +1 -1
  81. package/aftonbladetv2/es/index.d.ts +11 -27
  82. package/aftonbladetv2/es/index.js +1 -1
  83. package/aftonbladetv2/es/{styles-BZjOLkro.js → styles-8negJCpa.js} +1 -1
  84. package/aftonbladetv2/es/{styles-rQW9-AkI.js → styles-BEJZ55UE.js} +1 -1
  85. package/aftonbladetv2/es/{styles-DV7UG7D1.js → styles-BRoq235i.js} +1 -1
  86. package/aftonbladetv2/es/{styles-Yl7sQVw7.js → styles-CDUOKDqP.js} +1 -1
  87. package/aftonbladetv2/es/{styles-C084GFEu.js → styles-CdOpQ1lK.js} +1 -1
  88. package/aftonbladetv2/es/{styles-DUWeaoWF.js → styles-DZXuPYK-.js} +1 -1
  89. package/bt/cjs/index.d.ts +11 -27
  90. package/bt/cjs/index.js +1 -1
  91. package/bt/es/_auto-entry_bt-CnDc-5tA.js +1 -0
  92. package/bt/es/{events-pNRlieZB.js → events-pbsfBMud.js} +1 -1
  93. package/bt/es/{index-3P6KopoQ.js → index-10o0F1pU.js} +1 -1
  94. package/bt/es/{index-Do79MYUf.js → index-CB1ozKI0.js} +1 -1
  95. package/bt/es/{index-8ZASuYl7.js → index-CBRfC8oj.js} +1 -1
  96. package/bt/es/{index-CqL8IwE7.js → index-CGQ4Pl9E.js} +1 -1
  97. package/bt/es/{index-hUbhWYVZ.js → index-LRR9-Efh.js} +1 -1
  98. package/bt/es/{index-D9fHCFn6.js → index-YRhOwnMQ.js} +1 -1
  99. package/bt/es/{index-CjOH-Fag.js → index-unOIp1lu.js} +1 -1
  100. package/{sa/es/index-CD2dA315.js → bt/es/index-xozUOz97.js} +1 -1
  101. package/bt/es/index.d.ts +11 -27
  102. package/bt/es/index.js +1 -1
  103. package/bt/es/{styles-THCUt9GJ.js → styles-B5Q64krs.js} +1 -1
  104. package/bt/es/{styles-Bp04ZYef.js → styles-BZO-cpQq.js} +1 -1
  105. package/bt/es/{styles-BAApH-4G.js → styles-BpCvYBjb.js} +1 -1
  106. package/bt/es/{styles-CtopsI7d.js → styles-Cpv7xnJr.js} +1 -1
  107. package/{sa/es/styles-C_8A_8qS.js → bt/es/styles-DEhknitf.js} +1 -1
  108. package/bt/es/{styles-Duyb58mM.js → styles-DMVxTKWi.js} +1 -1
  109. package/bt/es/{styles-CIHdTUMj.js → styles-DdjMnoRQ.js} +1 -1
  110. package/{sa/es/styles-CJlvVr8b.js → bt/es/styles-Dzo0F2pC.js} +1 -1
  111. package/bt/es/{styles-Ds_ICkTi.js → styles-a9BNs9Hq.js} +1 -1
  112. package/btv2/es/_auto-entry_btv2-Br28Rkuw.js +1 -0
  113. package/btv2/es/{events-sEPcgGoJ.js → events-BkiRy_Ug.js} +1 -1
  114. package/btv2/es/{index-COh-nUAq.js → index-6ynUsW2j.js} +1 -1
  115. package/btv2/es/{index-DeDSC3jU.js → index-96JPKWtS.js} +1 -1
  116. package/btv2/es/{index-CmJJvqI4.js → index-BdTWdaSz.js} +1 -1
  117. package/btv2/es/{index-jQDk2W0y.js → index-CSvnRSDB.js} +1 -1
  118. package/btv2/es/{index--hn6Nu7B.js → index-CiEuFLju.js} +1 -1
  119. package/btv2/es/{index-BWyq_lGT.js → index-CxqQHs2I.js} +1 -1
  120. package/btv2/es/{index-DoTbw5FP.js → index-Dbtbms4R.js} +1 -1
  121. package/btv2/es/{index-BG5JEEzq.js → index-tpv3zSXV.js} +1 -1
  122. package/btv2/es/index.d.ts +11 -27
  123. package/btv2/es/index.js +1 -1
  124. package/{vgv2/es/styles-DTLm6-vL.js → btv2/es/styles-4acKP-vS.js} +1 -1
  125. package/{sav2/es/styles-DLkXGL6n.js → btv2/es/styles-5MLqt1cS.js} +1 -1
  126. package/{sav2/es/styles-BIkuh1x0.js → btv2/es/styles-BiFfLo8O.js} +1 -1
  127. package/{sav2/es/styles-D3r2E6yp.js → btv2/es/styles-CLAANEHj.js} +1 -1
  128. package/{sav2/es/styles-C4zlh-od.js → btv2/es/styles-Cn0AvhaU.js} +1 -1
  129. package/{vgv2/es/styles-DtTVEEFc.js → btv2/es/styles-DoxT4Rpe.js} +1 -1
  130. package/btv2/es/{styles-C6u86Kr4.js → styles-FCKiIT56.js} +1 -1
  131. package/btv2/es/{styles-DDbc9JQY.js → styles-M3do-e6G.js} +1 -1
  132. package/dr-edition/cjs/index.d.ts +10 -13
  133. package/dr-edition/cjs/index.js +1 -1
  134. package/dr-edition/es/index.d.ts +10 -13
  135. package/dr-edition/es/index.js +1 -1
  136. package/e24/es/_auto-entry_e24-BXEl1rLt.js +1 -0
  137. package/e24/es/{events-jHdJhpam.js → events-Df12jcjq.js} +1 -1
  138. package/e24/es/{index-BTwMCkaI.js → index-4DwbOKHX.js} +1 -1
  139. package/e24/es/{index-w0Mp_oJx.js → index-5AxjPEeO.js} +1 -1
  140. package/e24/es/{index-_hVHIvAi.js → index-BeRC9YaL.js} +1 -1
  141. package/e24/es/{index-bEJoDnkg.js → index-CbclshF7.js} +1 -1
  142. package/{tv4/es/index-_Ob7M7B6.js → e24/es/index-CyTyxMlY.js} +1 -1
  143. package/e24/es/{index-Jxq0bEAs.js → index-DVso5CpT.js} +1 -1
  144. package/e24/es/{index-BS2rDTyf.js → index-DY79nObF.js} +1 -1
  145. package/e24/es/{index-B7cPAuKP.js → index-boY00MWk.js} +1 -1
  146. package/e24/es/index.d.ts +11 -27
  147. package/e24/es/index.js +1 -1
  148. package/e24/es/{styles-HSzBjhzV.js → styles-BnU3rand.js} +1 -1
  149. package/e24/es/{styles-BKnnsJ0d.js → styles-BvaDTUig.js} +1 -1
  150. package/e24/es/{styles-BLpOfBdE.js → styles-CEJZ6EtK.js} +1 -1
  151. package/e24/es/{styles-BGi2FOix.js → styles-Cf5yeLFb.js} +1 -1
  152. package/e24/es/{styles-CBnPZwMW.js → styles-D3tm4qWR.js} +1 -1
  153. package/e24/es/{styles-z0jq39XP.js → styles-DFTviKUt.js} +1 -1
  154. package/e24/es/{styles-CBDjGGgG.js → styles-DxT7w3qt.js} +1 -1
  155. package/e24/es/{styles-cuZcdXL2.js → styles-Dzv8j5Mc.js} +1 -1
  156. package/e24/es/{styles-DV4gLjar.js → styles-VzILOixk.js} +1 -1
  157. package/{tv4/es/styles-DOVwRfHf.js → e24/es/styles-WK8ASD47.js} +1 -1
  158. package/e24/es/{styles-C_QuetVd.js → styles-ZNG2Qej-.js} +1 -1
  159. package/editory/cjs/index.d.ts +623 -0
  160. package/editory/cjs/index.js +1 -0
  161. package/editory/es/index.d.ts +623 -0
  162. package/editory/es/index.js +1 -0
  163. package/fotbollskanalen/cjs/index.d.ts +11 -27
  164. package/fotbollskanalen/cjs/index.js +1 -1
  165. package/fotbollskanalen/es/_auto-entry_fotbollskanalen-DmWPi7Jf.js +1 -0
  166. package/fotbollskanalen/es/{events-CKXELYSG.js → events-B3ZU1LUw.js} +1 -1
  167. package/fotbollskanalen/es/{index-BXmQg3qc.js → index-B2k25BEc.js} +1 -1
  168. package/fotbollskanalen/es/{index-DvaUzqka.js → index-B9qRzvev.js} +1 -1
  169. package/fotbollskanalen/es/{index-iCr_0Ugk.js → index-BnfmazmK.js} +1 -1
  170. package/fotbollskanalen/es/{index-Zlqaswh7.js → index-CBwVsPYL.js} +1 -1
  171. package/fotbollskanalen/es/{index-BQhTfZwb.js → index-CRGyYdc3.js} +1 -1
  172. package/fotbollskanalen/es/{index-C4QcVvqK.js → index-CkTyreXG.js} +1 -1
  173. package/fotbollskanalen/es/{index-DtwYvF-O.js → index-Dul3Mfgg.js} +1 -1
  174. package/fotbollskanalen/es/{index-CsUayvzb.js → index-IPyvHxTb.js} +1 -1
  175. package/fotbollskanalen/es/index.d.ts +11 -27
  176. package/fotbollskanalen/es/index.js +1 -1
  177. package/fotbollskanalen/es/{styles-CDKcZuce.js → styles-DrADmvb2.js} +1 -1
  178. package/godt/cjs/index.d.ts +11 -27
  179. package/godt/cjs/index.js +1 -1
  180. package/kilkaya/cjs/index.d.ts +9 -27
  181. package/kilkaya/es/index.d.ts +9 -27
  182. package/klart/cjs/index.d.ts +11 -27
  183. package/klart/cjs/index.js +1 -1
  184. package/koket/cjs/index.d.ts +11 -27
  185. package/koket/cjs/index.js +1 -1
  186. package/koket/es/_auto-entry_koket-DeF09zwU.js +1 -0
  187. package/koket/es/{events-iLlUffjn.js → events-CA87816N.js} +1 -1
  188. package/{svdv2/es/index-Bs3TTyu2.js → koket/es/index-B73Rktog.js} +1 -1
  189. package/koket/es/{index-DfEoqU7k.js → index-BKARuv6H.js} +1 -1
  190. package/koket/es/{index-zVnodrD5.js → index-BeVRG0em.js} +1 -1
  191. package/koket/es/{index-BXMmVzE6.js → index-BwFjCDEc.js} +1 -1
  192. package/koket/es/{index-JvmkraFG.js → index-CjAvTmMP.js} +1 -1
  193. package/koket/es/{index-BlT4F-ad.js → index-D4uWONVv.js} +1 -1
  194. package/koket/es/{index-B-3lVh8d.js → index-D55dsLBV.js} +1 -1
  195. package/koket/es/{index-DfrS6Xvi.js → index-DJNFb_Jk.js} +1 -1
  196. package/koket/es/index.d.ts +11 -27
  197. package/koket/es/index.js +1 -1
  198. package/{svdv2/es/styles-39MAU46D.js → koket/es/styles-B8SdZ5io.js} +1 -1
  199. package/minmote/cjs/index.d.ts +11 -27
  200. package/minmote/cjs/index.js +1 -1
  201. package/package.json +10 -1
  202. package/pent/cjs/index.d.ts +11 -27
  203. package/pent/cjs/index.js +1 -1
  204. package/sa/cjs/index.d.ts +11 -27
  205. package/sa/cjs/index.js +1 -1
  206. package/sa/es/_auto-entry_sa-BAbSOW6y.js +1 -0
  207. package/sa/es/{events-DXCH9IT6.js → events-CQr7o7mK.js} +1 -1
  208. package/sa/es/{index-CRc7kuw_.js → index-Bp0FlYj4.js} +1 -1
  209. package/sa/es/{index-CDmzn8ue.js → index-BpsmpJX6.js} +1 -1
  210. package/sa/es/{index-CucP-AZ3.js → index-CNOm0Zvv.js} +1 -1
  211. package/sa/es/{index-CNA0doSp.js → index-DX8zLkcC.js} +1 -1
  212. package/sa/es/{index-Crkc-Wch.js → index-DbxvaQTc.js} +1 -1
  213. package/{bt/es/index-7A-U2Fdr.js → sa/es/index-DiAcKl0S.js} +1 -1
  214. package/sa/es/{index-BhPku4mz.js → index-FxBHhBpN.js} +1 -1
  215. package/sa/es/{index-Dojk9Kpy.js → index-bdVJz39p.js} +1 -1
  216. package/sa/es/index.d.ts +11 -27
  217. package/sa/es/index.js +1 -1
  218. package/sa/es/{styles-BJp2aUeC.js → styles-Bdm5gig8.js} +1 -1
  219. package/sa/es/{styles-BSo_1heK.js → styles-BwOfPT8j.js} +1 -1
  220. package/{vg/es/styles-lYMz9vdS.js → sa/es/styles-Ck-s8aFw.js} +1 -1
  221. package/sa/es/{styles-s8kbCz0m.js → styles-CqUSV7ll.js} +1 -1
  222. package/sa/es/{styles-Bav2fqyT.js → styles-CvadVFAo.js} +1 -1
  223. package/sa/es/{styles-EseFQEKF.js → styles-D65Pg6EJ.js} +1 -1
  224. package/sa/es/{styles-CRM8CkuK.js → styles-DDcLvb2o.js} +1 -1
  225. package/{vg/es/styles-qXdojPMB.js → sa/es/styles-DEjree18.js} +1 -1
  226. package/{bt/es/styles-Pqgay_As.js → sa/es/styles-DZXqLTj3.js} +1 -1
  227. package/sav2/es/_auto-entry_sav2-CRnV3rZ2.js +1 -0
  228. package/sav2/es/{events-CebMb37c.js → events-DzwqUdEh.js} +1 -1
  229. package/sav2/es/{index-EpsO3aYu.js → index-14YfQ5Vr.js} +1 -1
  230. package/sav2/es/{index-DNftwYYs.js → index-38SjBDT2.js} +1 -1
  231. package/sav2/es/{index-CASZUYQj.js → index-4sqWaTaf.js} +1 -1
  232. package/sav2/es/{index-Cn5fnAL8.js → index-B9ab_exe.js} +1 -1
  233. package/sav2/es/{index-B9sGoM3W.js → index-C1PhEl88.js} +1 -1
  234. package/sav2/es/{index-DsdNjVu0.js → index-CbfYCeKr.js} +1 -1
  235. package/sav2/es/{index-C-Pkf3LK.js → index-DUEqQmBJ.js} +1 -1
  236. package/sav2/es/{index-CDNFRvRO.js → index-_tdwh7iG.js} +1 -1
  237. package/sav2/es/index.d.ts +11 -27
  238. package/sav2/es/index.js +1 -1
  239. package/sav2/es/{styles-CE2xUYax.js → styles-BP4c8b71.js} +1 -1
  240. package/{btv2/es/styles-Cbbr9j8R.js → sav2/es/styles-BquGVxXw.js} +1 -1
  241. package/sav2/es/{styles-C-gVvlp6.js → styles-BuEo0j8F.js} +1 -1
  242. package/{vgv2/es/styles-5mwk4APg.js → sav2/es/styles-CSib2wFT.js} +1 -1
  243. package/sav2/es/{styles-CUZmLrPt.js → styles-CVOyC0Hy.js} +1 -1
  244. package/{btv2/es/styles-BUqMmD7R.js → sav2/es/styles-D84Umkht.js} +1 -1
  245. package/sav2/es/{styles-lLpRe28W.js → styles-DQgdRzKf.js} +1 -1
  246. package/{btv2/es/styles-C1YZlDYn.js → sav2/es/styles-wpXGtNVU.js} +1 -1
  247. package/svd/cjs/index.d.ts +11 -27
  248. package/svd/cjs/index.js +1 -1
  249. package/svd/es/_auto-entry_svd-C6TfzEqZ.js +1 -0
  250. package/svd/es/{events-DfdQVh7r.js → events-D7UqxiPo.js} +1 -1
  251. package/{e24/es/index-D_QCM9VZ.js → svd/es/index-B114sh1q.js} +1 -1
  252. package/svd/es/{index-kkae4Pha.js → index-CFnnxX9d.js} +1 -1
  253. package/svd/es/{index-BOZikoXz.js → index-CQCYYjIO.js} +1 -1
  254. package/svd/es/{index-D9l0EXqG.js → index-CXVjdJfX.js} +1 -1
  255. package/svd/es/{index-DLQtcMw3.js → index-DAojgc2F.js} +1 -1
  256. package/svd/es/{index-g5FDKdDN.js → index-DWNMB-6h.js} +1 -1
  257. package/svd/es/{index-sal2sYhU.js → index-Din3zIPs.js} +1 -1
  258. package/svd/es/{index-DL-SEkb6.js → index-DlW-FUIo.js} +1 -1
  259. package/svd/es/index.d.ts +11 -27
  260. package/svd/es/index.js +1 -1
  261. package/svd/es/{styles-jf5hwfW9.js → styles-BV30fi5B.js} +1 -1
  262. package/svd/es/{styles-kjd6m6Ny.js → styles-Bt0L4xU3.js} +1 -1
  263. package/svd/es/{styles-D9zrGbEX.js → styles-DSLLwXoo.js} +1 -1
  264. package/svd/es/{styles-Dy7_muVf.js → styles-Dp2-I0FM.js} +1 -1
  265. package/svd/es/{styles-CmzpAUX7.js → styles-a0evvwP0.js} +1 -1
  266. package/svd/es/{styles-P0zK42M6.js → styles-ocLsivmt.js} +1 -1
  267. package/svdv2/es/_auto-entry_svdv2-BcxtA5H5.js +1 -0
  268. package/svdv2/es/{events-DLfunP-2.js → events-DkpF1OVt.js} +1 -1
  269. package/svdv2/es/{index-DCNBZQnH.js → index-BNSx3ZEA.js} +1 -1
  270. package/svdv2/es/{index-LoFhRulQ.js → index-C7YoinwT.js} +1 -1
  271. package/svdv2/es/{index-CG2-X2RB.js → index-Dbmwj6UJ.js} +1 -1
  272. package/{koket/es/index-CxkM2Hft.js → svdv2/es/index-Dr9YS9Kp.js} +1 -1
  273. package/svdv2/es/{index-DRvlF3l6.js → index-JL0kyJm9.js} +1 -1
  274. package/svdv2/es/{index-Ut7DYlWr.js → index-JQzzmtfN.js} +1 -1
  275. package/svdv2/es/{index-D5ltXYE2.js → index-blcrdGFA.js} +1 -1
  276. package/svdv2/es/{index-B0d2QePy.js → index-yWxbTBYY.js} +1 -1
  277. package/svdv2/es/index.d.ts +11 -27
  278. package/svdv2/es/index.js +1 -1
  279. package/{koket/es/styles-XvvvXc32.js → svdv2/es/styles-B1n7-3GW.js} +1 -1
  280. package/svdv2/es/{styles-5oCnokrW.js → styles-BlXdm2-y.js} +1 -1
  281. package/svdv2/es/{styles-C9hYqTJL.js → styles-BukOlMgV.js} +1 -1
  282. package/svdv2/es/{styles-AXu-mOHF.js → styles-ByR8L2Dq.js} +1 -1
  283. package/svdv2/es/{styles-BQ8Nfn5i.js → styles-CEvkNQZ3.js} +1 -1
  284. package/svdv2/es/{styles-CnHnRNN4.js → styles-UmufiLeH.js} +1 -1
  285. package/tek/cjs/index.d.ts +11 -27
  286. package/tek/cjs/index.js +1 -1
  287. package/tracker/cjs/index.d.ts +10 -27
  288. package/tracker/cjs/index.js +1 -1
  289. package/tracker/es/index.d.ts +10 -27
  290. package/tracker/es/index.js +1 -1
  291. package/tv4/cjs/index.d.ts +11 -27
  292. package/tv4/cjs/index.js +1 -1
  293. package/tv4/es/_auto-entry_tv4-DsO-wqRO.js +1 -0
  294. package/tv4/es/{events-CO-z-oqJ.js → events-4DkzCgrU.js} +1 -1
  295. package/tv4/es/{index-Df-jUz6l.js → index-B6ag97Bw.js} +1 -1
  296. package/tv4/es/{index-B3QdnL3u.js → index-BQo7w0nT.js} +1 -1
  297. package/tv4/es/{index-96LL55dE.js → index-BksRxrvK.js} +1 -1
  298. package/tv4/es/{index-BOs_O-y0.js → index-CPNVZLfK.js} +1 -1
  299. package/tv4/es/{index-BFPvu_oG.js → index-C_duha9o.js} +1 -1
  300. package/tv4/es/{index-DvtVdq-V.js → index-DCgJvntT.js} +1 -1
  301. package/tv4/es/{index-DSEwuPNI.js → index-GDlvM-pA.js} +1 -1
  302. package/{svd/es/index-BpxlouDb.js → tv4/es/index-R0DJReD8.js} +1 -1
  303. package/tv4/es/index.d.ts +11 -27
  304. package/tv4/es/index.js +1 -1
  305. package/{e24/es/styles-DGXdNcfY.js → tv4/es/styles-CpFHpgiA.js} +1 -1
  306. package/tvnu/cjs/index.d.ts +11 -27
  307. package/tvnu/cjs/index.js +1 -1
  308. package/types/index.d.ts +49 -28
  309. package/vg/cjs/index.d.ts +11 -27
  310. package/vg/cjs/index.js +1 -1
  311. package/vg/es/_auto-entry_vg-5Fd4iVl3.js +1 -0
  312. package/vg/es/{events-DRnj98Vh.js → events-GNcxmmFo.js} +1 -1
  313. package/vg/es/{index-DY8CHj2z.js → index-7HsThj3q.js} +1 -1
  314. package/vg/es/{index-DU1E_fiD.js → index-B20ShDSB.js} +1 -1
  315. package/vg/es/{index-SrjQRIbO.js → index-BdKcLkzi.js} +1 -1
  316. package/vg/es/{index-D25ZkbPw.js → index-BvlbZzc8.js} +1 -1
  317. package/vg/es/{index-BOY4zgOl.js → index-CHYiiXpY.js} +1 -1
  318. package/vg/es/{index-BBe6JmRP.js → index-D7eOCUrJ.js} +1 -1
  319. package/vg/es/{index-UQnhqpNN.js → index-DAIjI6Xf.js} +1 -1
  320. package/vg/es/{index-CkjfgWd0.js → index-Dx0-EJRL.js} +1 -1
  321. package/vg/es/index.d.ts +11 -27
  322. package/vg/es/index.js +1 -1
  323. package/vg/es/{styles-C5ANW62-.js → styles-9iOhmpQG.js} +1 -1
  324. package/vg/es/{styles-COVZuHgl.js → styles-B5RVrjQu.js} +1 -1
  325. package/vg/es/{styles-D2rvw5ld.js → styles-BErBnM5w.js} +1 -1
  326. package/vg/es/{styles-tKXPuQJb.js → styles-BJjHhcVd.js} +1 -1
  327. package/vg/es/{styles-BDw2NcU6.js → styles-BV2uz0rS.js} +1 -1
  328. package/vg/es/{styles-DrHieWTh.js → styles-BVJJ_nnN.js} +1 -1
  329. package/vg/es/{styles-D-eFRSqv.js → styles-BYlo20Oa.js} +1 -1
  330. package/vg/es/{styles-PECF3OUK.js → styles-BvIBq9wk.js} +1 -1
  331. package/vg/es/{styles-DumSlbWy.js → styles-C5Ty1y5b.js} +1 -1
  332. package/{sa/es/styles-CIXmO278.js → vg/es/styles-C7uK6z6P.js} +1 -1
  333. package/{bt/es/styles-CelFmDkp.js → vg/es/styles-DhxL-Kdf.js} +1 -1
  334. package/vg/es/{styles-19QGzP-F.js → styles-F51u_KzR.js} +1 -1
  335. package/vg/es/{styles-Cib2H-1A.js → styles-F_EI0-R4.js} +1 -1
  336. package/vg/es/{styles-DEGkgHqp.js → styles-k2ioKG8W.js} +1 -1
  337. package/vg/es/{styles-BShsffw3.js → styles-mRZXwsl_.js} +1 -1
  338. package/vgv2/es/_auto-entry_vgv2-VQkwNK6O.js +1 -0
  339. package/vgv2/es/{events-BJdXlPgk.js → events-umppYZ48.js} +1 -1
  340. package/vgv2/es/{index-Dou0VZ_A.js → index-B80fFKEp.js} +1 -1
  341. package/vgv2/es/{index-BX7jSk9S.js → index-ByTqOSor.js} +1 -1
  342. package/vgv2/es/{index-CdavAnWF.js → index-C755Omrb.js} +1 -1
  343. package/vgv2/es/{index-ketevqgq.js → index-D9DCQDzE.js} +1 -1
  344. package/vgv2/es/{index-BYg78M-1.js → index-DRyZUuLI.js} +1 -1
  345. package/vgv2/es/{index-BRiC3ne1.js → index-Dh6g8FK2.js} +1 -1
  346. package/vgv2/es/{index-DJma0tca.js → index-JRUgEAmx.js} +1 -1
  347. package/vgv2/es/{index-C6ACBBRY.js → index-gZmFckTC.js} +1 -1
  348. package/vgv2/es/index.d.ts +11 -27
  349. package/vgv2/es/index.js +1 -1
  350. package/{btv2/es/styles-B8cAAKfe.js → vgv2/es/styles-64VQBzw7.js} +1 -1
  351. package/vgv2/es/{styles-DWHcqhC2.js → styles-B-nkSOeh.js} +1 -1
  352. package/vgv2/es/{styles-CS7NqZyh.js → styles-BAYB1_6J.js} +1 -1
  353. package/{btv2/es/styles-Df3JLLcP.js → vgv2/es/styles-BGK9zDgq.js} +1 -1
  354. package/vgv2/es/{styles-DS39FmvF.js → styles-BNZNX1uK.js} +1 -1
  355. package/vgv2/es/{styles-Cslwov8v.js → styles-C5mWX7Pu.js} +1 -1
  356. package/vgv2/es/{styles-DfgFAuNY.js → styles-CYOT98OO.js} +1 -1
  357. package/vgv2/es/{styles-Q2nCTnQH.js → styles-D-8BgKu3.js} +1 -1
  358. package/vgv2/es/{styles-BnYSiqWX.js → styles-DIkzDo-C.js} +1 -1
  359. package/vgv2/es/{styles-1mPG9Ku-.js → styles-DKDSQL-H.js} +1 -1
  360. package/{btv2/es/styles-C704SVBP.js → vgv2/es/styles-DdwWbFr7.js} +1 -1
  361. package/vgv2/es/{styles-DDdxYeTk.js → styles-DnnW6Uhr.js} +1 -1
  362. package/vgv2/es/{styles-qUNKA1kA.js → styles-c8ku3cpV.js} +1 -1
  363. package/vgv2/es/{styles-DxTwZPto.js → styles-noKspg7k.js} +1 -1
  364. package/vgv2/es/{styles-BhLWRgHf.js → styles-zHrW6Rjb.js} +1 -1
  365. package/video/cjs/index.js +1 -1
  366. package/video/es/index.js +1 -1
  367. package/aftenposten/es/_auto-entry_aftenposten-DpJlAeMx.js +0 -1
  368. package/aftenpostenv2/es/_auto-entry_aftenpostenv2-CHH1f5E5.js +0 -1
  369. package/aftonbladet/es/_auto-entry_aftonbladet-w-azBX-3.js +0 -1
  370. package/aftonbladetv2/es/_auto-entry_aftonbladetv2-Dr18nnFb.js +0 -1
  371. package/bt/es/_auto-entry_bt-Dm44J7cs.js +0 -1
  372. package/btv2/es/_auto-entry_btv2-DQscOGjl.js +0 -1
  373. package/e24/es/_auto-entry_e24-DD-poIIu.js +0 -1
  374. package/fotbollskanalen/es/_auto-entry_fotbollskanalen-1ttuy9t7.js +0 -1
  375. package/koket/es/_auto-entry_koket-BBqFLSTE.js +0 -1
  376. package/sa/es/_auto-entry_sa-CA3V4hcE.js +0 -1
  377. package/sav2/es/_auto-entry_sav2-Bn-FKkGE.js +0 -1
  378. package/svd/es/_auto-entry_svd-Uzp5VUZy.js +0 -1
  379. package/svdv2/es/_auto-entry_svdv2-C7RO6lSi.js +0 -1
  380. package/tv4/es/_auto-entry_tv4-BU5LefDK.js +0 -1
  381. package/vg/es/_auto-entry_vg-DbrNgugt.js +0 -1
  382. package/vgv2/es/_auto-entry_vgv2-D17j9zhA.js +0 -1
@@ -1,3 +1,5 @@
1
+ import Tracker from '@schibsted/pulse-sdk';
2
+
1
3
  type AstAdType = 'banner' | 'video' | 'native' | 'outstream';
2
4
  interface AstBanner {
3
5
  content: string;
@@ -133,39 +135,17 @@ declare const Countries: {
133
135
  };
134
136
  type Country = (typeof Countries)[keyof typeof Countries];
135
137
 
136
- interface AdvertisingIdentifiers {
137
- xandr?: {
138
- ppId1?: string;
139
- ppId2?: string;
140
- };
141
- }
142
- interface TrackerInstance {
143
- getAdvertisingIdentifiers: () => Promise<AdvertisingIdentifiers>;
144
- getUserId: () => Promise<undefined | string | number>;
145
- getEnvironmentId: () => Promise<undefined | string>;
146
- getActor: () => Promise<undefined | unknown>;
147
- state?: {
148
- pageViewId?: string;
149
- };
150
- }
151
- interface PulseInstance extends TrackerInstance {
152
- pulseTracker?: TrackerInstance;
138
+ interface PulseLegacyExtras {
153
139
  trackElementView?: (eventInput: unknown) => Promise<void>;
154
140
  trackElementClick?: (eventInput: unknown) => Promise<void>;
155
141
  trackClickUIElement?: (eventInput: unknown) => Promise<void>;
156
142
  trackViewUIElement?: (eventInput: unknown) => Promise<void>;
157
- trackLegacyClickUIElement?: (eventInput: unknown) => Promise<void>;
158
- trackLegacyViewUIElement?: (eventInput: unknown) => Promise<void>;
159
143
  }
160
- interface Tracker {
144
+ interface PulseConfig {
161
145
  clientId: string;
162
- instance: TrackerInstance;
146
+ instance: Tracker & PulseLegacyExtras;
163
147
  hasherUrl?: string;
164
148
  }
165
- interface Pulse {
166
- clientId: string;
167
- instance: PulseInstance;
168
- }
169
149
  interface UserIdsObject {
170
150
  userIds: Array<AstUserIds>;
171
151
  }
@@ -254,8 +234,7 @@ interface SiteConfig {
254
234
  glimr?: GlimrConfig;
255
235
  tcf?: TCFConfig;
256
236
  prebid?: PrebidConfig;
257
- tracker?: Tracker;
258
- pulse?: Pulse;
237
+ pulse?: PulseConfig;
259
238
  finnBlink?: FinnBlinkConfig;
260
239
  wallpaper?: WallpaperConfig;
261
240
  fullscreenScroll?: FullscreenScrollConfig;
@@ -556,9 +535,13 @@ interface EditableConfigurationConfig {
556
535
  enabled?: boolean;
557
536
  pageTypeToFetch?: string;
558
537
  }
538
+ interface AdNativeBuilderConfig {
539
+ enabled?: boolean;
540
+ }
559
541
  interface EditoryConfig {
560
542
  editoryUrl?: string;
561
543
  editableConfiguration?: EditableConfigurationConfig;
544
+ adNativeBuilder?: AdNativeBuilderConfig;
562
545
  }
563
546
  interface AdScaleConfig {
564
547
  enabled: boolean;
@@ -1 +1 @@
1
- "use strict";function e(e,i,n,t){return new(n||(n=Promise))(function(d,s){function r(e){try{a(t.next(e))}catch(e){s(e)}}function o(e){try{a(t.throw(e))}catch(e){s(e)}}function a(e){var i;e.done?d(e.value):(i=e.value,i instanceof n?i:new n(function(e){e(i)})).then(r,o)}a((t=t.apply(e,i||[])).next())})}"function"==typeof SuppressedError&&SuppressedError;const i={get:(i,n)=>e(void 0,void 0,void 0,function*(){const e=yield fetch(i,n);if(!e.ok)throw new Error(e.statusText);return yield e.json()}),post:(i,n,t)=>e(void 0,void 0,void 0,function*(){const e=JSON.stringify(t),d=yield fetch(i,{method:"POST",headers:n,body:e});if(!d.ok)throw new Error(d.statusText);return yield d.json()})},n=(e,i)=>{const n="[Advertory LOG]: ";location.search.includes("ast_debug=true")&&(i?console.log(n,e,i):console.log(n,e))},t=864e5,d=(()=>{const e=e=>{const i=window.localStorage.getItem(e);if(!i)return null;try{return JSON.parse(i)}catch(e){return n("Error with parsing localStorage data"),null}},i=(e,i)=>{window.localStorage.setItem(e,JSON.stringify(i))};return{get:e,set:i,setWithTimestamp:(e,n,d=t)=>{const s={data:n,expirationTime:(new Date).getTime()+d};i(e,JSON.stringify(s))},getByTimestamp:(i,d=t)=>{const s=e(i);if(!s)return null;if(!d)return s;try{const{expirationTime:e,data:i}=JSON.parse(s);return(new Date).getTime()<=e?i:null}catch(e){return n("Error with parsing localStorage data"),null}}}})(),s={NO:"no",SE:"se"},r="advertory:ppids-cache",o={[s.SE]:`SCH${s.SE.toUpperCase()}-EnvHash`,[s.NO]:`SCH${s.NO.toUpperCase()}-EnvHash`},a={[s.SE]:`SCH${s.SE.toUpperCase()}-UserHash`,[s.NO]:`SCH${s.NO.toUpperCase()}-UserHash`},l={[s.SE]:`sch${s.SE}-envhash-v3`,[s.NO]:`sch${s.NO}-envhash-v3`},c={[s.SE]:`sch${s.SE}-userhash-v3`,[s.NO]:`sch${s.NO}-userhash-v3`},u={[s.SE]:`'sch${s.SE}-iosid-v3'`,[s.NO]:`'sch${s.NO}-iosid-v3'`},p={[s.SE]:`sch${s.SE}-androidid-v3`,[s.NO]:`sch${s.NO}-androidid-v3`},v={[s.SE]:"sdrn:schibsted.com:user",[s.NO]:"sdrn:spid.no:user"};class h{constructor(){this.eids=[]}add(e,i){return e&&this.eids.push({id:e,source:i}),this}buildRyEids(){return this.eids.map(({id:e,source:i})=>({source:i,uids:[{id:e,atype:1,ext:{stype:"ppuid"}}]}))}buildEids(){return[...this.eids]}buildVideoEids(){return this.eids.map(({id:e,source:i})=>`${i},${e}`).join("|")}buildNorstatPath(){const e=this.eids[0];return e?`${e.source}-${e.id}`:""}buildNorstatQuery(e){const i=new URLSearchParams;return this.eids.slice(1).forEach(({id:n,source:t})=>{i.append(e,`${t}-${n}`)}),i}}const P=e=>new Promise(i=>{if(!window._tcf_||!(null==e?void 0:e.enabled))return void i(!1);const t=(()=>{if(!window._tcf_)return null;const e=window._tcf_.getPermissionSync("CMP:advertising");if(null===e)return null;const i=Number(e);return n("Advertising permission value obtained synchronously: ",e),Boolean(i)})();if(null!==t)return void i(t);let d=!1;const s=e=>{d||(n("Resolving advertising permission value obtained"),d=!0,i(e))},r=setTimeout(()=>{n("Advertising permission timed out, resolving with false"),s(!1)},3e3);window._tcf_.onTcfReady(()=>{n("On Tcf Ready called, waiting for permission"),clearTimeout(r)}),window._tcf_.getPermission("CMP:advertising",e=>{clearTimeout(r);const i=Number(e);n("Advertising permission value obtained asynchronously: ",e),s(Boolean(i))})}),f="cmp:loaded";let g="undefined"!=typeof window?window._tcf_:void 0,I=!1;const y=(i,t,d)=>{const r=!!(null==i?void 0:i.enabled),o=(null==i?void 0:i.timeout)||3e3,a=(l="bypass_tcf",new URLSearchParams(window.location.search).get(l));var l;const c=()=>{if(!(null==i?void 0:i.enabled))return!0;if(((e,i)=>e?!!i&&(n("TCF bypass param detected, returning consent: true"),!0):(n("TCF is not enabled, returning consent: true"),!0))(r,a))return!0;if(I)return null;if(!g)throw new Error("[Advertory]: getConsentSync method was called before the tcfManager was available.");const e=g.getConsentedToAllSync();return n(`TCF consented to all is: ${e}`),g.getConsentedToAllSync()};return{initConsentManager:()=>(null==i?void 0:i.enabled)?new Promise((e,i)=>{if(n("Getting TCF consent manager..."),window._tcf_)return n("TCF consent manager is already available"),g=window._tcf_,void e(g);n("TCF consent manager is not available");const t=()=>{n("CMP loaded, resolving consent manager..."),d&&clearTimeout(d),window._tcf_?(g=window._tcf_,e(g)):i(new Error("CMP loaded but window._tcf_ is not defined"))},d=setTimeout(()=>{document.removeEventListener(f,t),I=!0,i(new Error("Timeout waiting for CMP to load"))},o);n("Listening for CMP loaded event..."),document.addEventListener(f,t,{once:!0})}):Promise.resolve(null),getConsentSync:c,getConsentAsync:()=>e(void 0,void 0,void 0,function*(){if(null==i?void 0:i.schibstedAdChoicesOverrideValue)return n(`Schibsted Ad Choices override value is set, returning override value: ${i.schibstedAdChoicesOverrideValue}`),Boolean(Number(i.schibstedAdChoicesOverrideValue));const e=(null==i?void 0:i.advertisingCMPSignalEnabled)&&d===s.SE,t=(null==i?void 0:i.advertisingCMPSignalEnabled)&&d===s.NO;if(e||t)return n("Schibsted Ad Choices is enabled, getting advertising permissions..."),yield P(i);if(!(null==i?void 0:i.enabled))return!0;const r=c();return null!==r?r:yield new Promise((e,i)=>{try{if(!g)throw new Error("[Advertory]: getConsentAsync method was called before the tcfManager was available.");let i=!1;const t=n=>{i||(i=!0,e(n))},d=setTimeout(()=>{n("TCF isConsentedToAll timed out, resolving with false"),t(!1)},o);g.onTcfReady(()=>{n("On Tcf Ready called, waiting for consent"),clearTimeout(d)}),g.isConsentedToAll(i=>{clearTimeout(d),e(i)})}catch(e){i(e)}})})}},w=new class{constructor(){this.ppid1=null,this.ppid2=null}processPPIDs(i){return e(this,arguments,void 0,function*(e,i=1e4){var n,t;const d=yield Promise.race([new Promise(e=>{setTimeout(()=>e({xandr:{ppId1:"",ppId2:""}}),i)}),e.instance.getAdvertisingIdentifiers()]);this.setPPIDs(null===(n=d.xandr)||void 0===n?void 0:n.ppId1,null===(t=d.xandr)||void 0===t?void 0:t.ppId2)})}getPPIDs(){var e,i;return null!==this.ppid1&&null!==this.ppid2||n("PPIDv2s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(i=this.ppid2)&&void 0!==i?i:""}}setPPIDs(e,i){this.ppid1=null!=e?e:"",this.ppid2=null!=i?i:""}},m=new class{constructor(){this.ppid1=null,this.ppid2=null,this.idfv=null,this.anId=null}processPPIDs(i,n){return e(this,void 0,void 0,function*(){var e,t,s,o,a,l,c,u,p,v,h;const P=d.get(r),f=yield this.getNewPPIDs(i,n);if(this.shouldHash(P,f)){const n=null!==(e=i.hasherUrl)&&void 0!==e?e:"https://hasher.schibsted.com/api/v1/hash",d=this.createHasherPayload(f),r=yield this.hashPPIDs(d,n);return r?(this.cachePPIDs(d,r,null===(t=f.idfv)||void 0===t?void 0:t.plain,null===(s=f.anId)||void 0===s?void 0:s.plain),void this.setPPIDs(null!==(o=r.userId)&&void 0!==o?o:"",null!==(a=r.environmentId)&&void 0!==a?a:"",null===(l=f.idfv)||void 0===l?void 0:l.plain,null===(c=f.anId)||void 0===c?void 0:c.plain)):void this.setPPIDs("","")}this.setPPIDs(null!==(u=null==P?void 0:P.userId.hashed)&&void 0!==u?u:"",null!==(p=null==P?void 0:P.environmentId.hashed)&&void 0!==p?p:"",null===(v=null==f?void 0:f.idfv)||void 0===v?void 0:v.plain,null===(h=null==f?void 0:f.anId)||void 0===h?void 0:h.plain)})}getPPIDs(){var e,i;return null!==this.ppid1&&null!==this.ppid2||n("PPIDv3s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(i=this.ppid2)&&void 0!==i?i:"",idfv:this.idfv,anId:this.anId}}setPPIDs(e,i,n,t){this.ppid1=null!=e?e:"",this.ppid2=null!=i?i:"",this.idfv=null!=n?n:null,this.anId=null!=t?t:null}shouldHash(e,i){var n,t;if(!e)return!0;for(const d in e){if((null===(n=e[d])||void 0===n?void 0:n.plain)!==(null===(t=i[d])||void 0===t?void 0:t.plain))return!0}return!1}cachePPIDs(e,i,n,t){const s=Object.assign(Object.assign({clientId:{plain:e.clientId},userId:{plain:e.userId,hashed:i.userId},environmentId:{plain:e.environmentId,hashed:i.environmentId},trackerType:{plain:e.trackerType},trackerVersion:{plain:e.trackerVersion}},n?{idfv:{plain:n}}:{}),t?{anId:{plain:t}}:{});d.set(r,s)}hashPPIDs(t,d){return e(this,void 0,void 0,function*(){try{const e=new Headers({"Content-Type":"application/json"});return yield i.post(d,e,t)}catch(e){return n("Error with hashing PPIDs",e),null}})}getNewPPIDs(i,n){return e(this,arguments,void 0,function*({clientId:i,instance:n},t){const d=yield((i,n)=>e(void 0,void 0,void 0,function*(){const e=yield i.getUserId();return e?`${v[n]}:${e}`:null}))(n,t),s=yield(i=>e(void 0,void 0,void 0,function*(){const e=yield i.getEnvironmentId();return e?`sdrn:schibsted:environment:${e}`:null}))(n),r=window.advertory_idfv,o=window.advertory_anId;return Object.assign(Object.assign({clientId:{plain:i},userId:{plain:d},environmentId:{plain:s},trackerType:{plain:"Advertory"},trackerVersion:{plain:"1.0.0"}},r?{idfv:{plain:r}}:{}),o?{anId:{plain:o}}:{})})}createHasherPayload({clientId:e,trackerType:i,trackerVersion:n,userId:t,environmentId:d}){return{clientId:e.plain,trackerType:i.plain,trackerVersion:n.plain,userId:t.plain,environmentId:d.plain}}};exports.getFinnBlinkUserId=()=>e(void 0,void 0,void 0,function*(){const{ppid1:e}=m.getPPIDs();return e}),exports.getOpenRtbEids=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d}=m.getPPIDs();return(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]).buildRyEids()},exports.getPPIDLoggedInStatus=()=>{const{ppid1:e,ppid2:i}=w.getPPIDs();return{"aa-sch-schuserhash":e?"1":"0","aa-sch-schenvhash":i?"1":"0"}},exports.getPPIDNorstatString=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d}=m.getPPIDs(),s=(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]);return`${s.buildNorstatPath()}?${s.buildNorstatQuery("alias").toString()}`},exports.getPPIDRelevantYieldConfig=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d,idfv:s,anId:r}=m.getPPIDs();if(!n)return{};return{userSync:{userIds:[{name:"pubProvidedId",params:{eids:(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]).add(s,u[e]).add(r,p[e]).buildRyEids()}}]}}},exports.getUserIdsObject=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d,idfv:s,anId:r}=m.getPPIDs();return{userIds:[{type:"extendedIDs",eids:(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]).add(s,u[e]).add(r,p[e]).buildEids()}]}},exports.getVideoPPIDs=i=>e(void 0,void 0,void 0,function*(){const{ppid1:e,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d}=m.getPPIDs(),s=(new h).add(n,o[i]).add(e,a[i]).add(d,l[i]).add(t,c[i]);return yield new Promise(e=>{e(s.buildVideoEids())})}),exports.setXandrPPIDs=i=>e(void 0,void 0,void 0,function*(){const{tracker:t,tcf:d,pageContext:{countryCode:s,isMobileApp:r}}=i,o=yield((i,t,d,...s)=>e(void 0,[i,t,d,...s],void 0,function*(e,i,t,d="NOT SPECIFIED FEATURE"){if(!(null==e?void 0:e.schibstedConsentToPayEnabled))return n(`Schibsted Consent to Pay is not enabled, returning true for ${d}`),!0;if(null==e?void 0:e.schibstedAdChoicesOverrideValue)return n(`Schibsted Ad Choices override value is set, returning override value: ${null==e?void 0:e.schibstedAdChoicesOverrideValue} for ${d}`),Boolean(Number(null==e?void 0:e.schibstedAdChoicesOverrideValue));const{getConsentAsync:s}=y(e,0,t);return(yield s())?(n(`Schibsted Ad Choices consent given according to TCF consent manager for ${d}`),!0):(n(`Schibsted Ad Choices consent not given according to TCF consent manager for ${d}`),!1)}))(d,r,s,"setXandrPPIDs");if(!o)return;if(!t)return;(yield Promise.allSettled([w.processPPIDs(t,null==d?void 0:d.timeout),m.processPPIDs(t,s)])).forEach((e,i)=>{if("rejected"===e.status){n(`Cannot fetch PPIDs v${i+2}`,e.reason)}})});
1
+ "use strict";function e(e,n,i,t){return new(i||(i=Promise))(function(s,d){function r(e){try{a(t.next(e))}catch(e){d(e)}}function o(e){try{a(t.throw(e))}catch(e){d(e)}}function a(e){var n;e.done?s(e.value):(n=e.value,n instanceof i?n:new i(function(e){e(n)})).then(r,o)}a((t=t.apply(e,n||[])).next())})}"function"==typeof SuppressedError&&SuppressedError;const n="opaque",i=i=>e(void 0,void 0,void 0,function*(){if(i.type!==n){if(!i.ok)throw new Error(i.statusText);return yield i.json()}}),t={get:(n,...t)=>e(void 0,[n,...t],void 0,function*(n,t={}){var{timeout:s}=t,d=function(e,n){var i={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&n.indexOf(t)<0&&(i[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var s=0;for(t=Object.getOwnPropertySymbols(e);s<t.length;s++)n.indexOf(t[s])<0&&Object.prototype.propertyIsEnumerable.call(e,t[s])&&(i[t[s]]=e[t[s]])}return i}(t,["timeout"]);if(s)return((n,t,s)=>e(void 0,void 0,void 0,function*(){const e=new AbortController,d=setTimeout(()=>e.abort(),s);try{const s=yield fetch(n,Object.assign(Object.assign({},t),{signal:e.signal}));return i(s)}finally{clearTimeout(d)}}))(n,d,s);const r=yield fetch(n,d);return i(r)}),post:(n,i,t)=>e(void 0,void 0,void 0,function*(){const e=JSON.stringify(t),s=yield fetch(n,{method:"POST",headers:i,body:e});if(!s.ok)throw new Error(s.statusText);return yield s.json()})},s=(e,n)=>{const i="[Advertory LOG]: ";location.search.includes("ast_debug=true")&&(n?console.log(i,e,n):console.log(i,e))},d=864e5,r=(()=>{const e=e=>{const n=window.localStorage.getItem(e);if(!n)return null;try{return JSON.parse(n)}catch(e){return s("Error with parsing localStorage data"),null}},n=(e,n)=>{window.localStorage.setItem(e,JSON.stringify(n))};return{get:e,set:n,setWithTimestamp:(e,i,t=d)=>{const s={data:i,expirationTime:(new Date).getTime()+t};n(e,JSON.stringify(s))},getByTimestamp:(n,i=d)=>{const t=e(n);if(!t)return null;if(!i)return t;try{const{expirationTime:e,data:n}=JSON.parse(t);return(new Date).getTime()<=e?n:null}catch(e){return s("Error with parsing localStorage data"),null}}}})(),o={NO:"no",SE:"se"},a="advertory:ppids-cache",l={[o.SE]:`SCH${o.SE.toUpperCase()}-EnvHash`,[o.NO]:`SCH${o.NO.toUpperCase()}-EnvHash`},c={[o.SE]:`SCH${o.SE.toUpperCase()}-UserHash`,[o.NO]:`SCH${o.NO.toUpperCase()}-UserHash`},u={[o.SE]:`sch${o.SE}-envhash-v3`,[o.NO]:`sch${o.NO}-envhash-v3`},p={[o.SE]:`sch${o.SE}-userhash-v3`,[o.NO]:`sch${o.NO}-userhash-v3`},v={[o.SE]:`'sch${o.SE}-iosid-v3'`,[o.NO]:`'sch${o.NO}-iosid-v3'`},h={[o.SE]:`sch${o.SE}-androidid-v3`,[o.NO]:`sch${o.NO}-androidid-v3`},f={[o.SE]:"sdrn:schibsted.com:user",[o.NO]:"sdrn:spid.no:user"};class g{constructor(){this.eids=[]}add(e,n){return e&&this.eids.push({id:e,source:n}),this}buildRyEids(){return this.eids.map(({id:e,source:n})=>({source:n,uids:[{id:e,atype:1,ext:{stype:"ppuid"}}]}))}buildEids(){return[...this.eids]}buildVideoEids(){return this.eids.map(({id:e,source:n})=>`${n},${e}`).join("|")}buildNorstatPath(){const e=this.eids[0];return e?`${e.source}-${e.id}`:""}buildNorstatQuery(e){const n=new URLSearchParams;return this.eids.slice(1).forEach(({id:i,source:t})=>{n.append(e,`${t}-${i}`)}),n}}const P=e=>new Promise(n=>{if(!window._tcf_||!(null==e?void 0:e.enabled))return void n(!1);const i=(()=>{if(!window._tcf_)return null;const e=window._tcf_.getPermissionSync("CMP:advertising");if(null===e)return null;const n=Number(e);return s("Advertising permission value obtained synchronously: ",e),Boolean(n)})();if(null!==i)return void n(i);let t=!1;const d=e=>{t||(s("Resolving advertising permission value obtained"),t=!0,n(e))},r=setTimeout(()=>{s("Advertising permission timed out, resolving with false"),d(!1)},3e3);window._tcf_.onTcfReady(()=>{s("On Tcf Ready called, waiting for permission"),clearTimeout(r)}),window._tcf_.getPermission("CMP:advertising",e=>{clearTimeout(r);const n=Number(e);s("Advertising permission value obtained asynchronously: ",e),d(Boolean(n))})}),y="cmp:loaded";let I="undefined"!=typeof window?window._tcf_:void 0,m=!1;const w=(n,i,t)=>{const d=!!(null==n?void 0:n.enabled),r=(null==n?void 0:n.timeout)||3e3,a=(l="bypass_tcf",new URLSearchParams(window.location.search).get(l));var l;const c=()=>{if(!(null==n?void 0:n.enabled))return!0;if(((e,n)=>e?!!n&&(s("TCF bypass param detected, returning consent: true"),!0):(s("TCF is not enabled, returning consent: true"),!0))(d,a))return!0;if(m)return null;if(!I)throw new Error("[Advertory]: getConsentSync method was called before the tcfManager was available.");const e=I.getConsentedToAllSync();return s(`TCF consented to all is: ${e}`),I.getConsentedToAllSync()};return{initConsentManager:()=>(null==n?void 0:n.enabled)?new Promise((e,n)=>{if(s("Getting TCF consent manager..."),window._tcf_)return s("TCF consent manager is already available"),I=window._tcf_,void e(I);s("TCF consent manager is not available");const i=()=>{s("CMP loaded, resolving consent manager..."),t&&clearTimeout(t),window._tcf_?(I=window._tcf_,e(I)):n(new Error("CMP loaded but window._tcf_ is not defined"))},t=setTimeout(()=>{document.removeEventListener(y,i),m=!0,n(new Error("Timeout waiting for CMP to load"))},r);s("Listening for CMP loaded event..."),document.addEventListener(y,i,{once:!0})}):Promise.resolve(null),getConsentSync:c,getConsentAsync:()=>e(void 0,void 0,void 0,function*(){if(null==n?void 0:n.schibstedAdChoicesOverrideValue)return s(`Schibsted Ad Choices override value is set, returning override value: ${n.schibstedAdChoicesOverrideValue}`),Boolean(Number(n.schibstedAdChoicesOverrideValue));const e=(null==n?void 0:n.advertisingCMPSignalEnabled)&&t===o.SE,i=(null==n?void 0:n.advertisingCMPSignalEnabled)&&t===o.NO;if(e||i)return s("Schibsted Ad Choices is enabled, getting advertising permissions..."),yield P(n);if(!(null==n?void 0:n.enabled))return!0;const d=c();return null!==d?d:yield new Promise((e,n)=>{try{if(!I)throw new Error("[Advertory]: getConsentAsync method was called before the tcfManager was available.");let n=!1;const i=i=>{n||(n=!0,e(i))},t=setTimeout(()=>{s("TCF isConsentedToAll timed out, resolving with false"),i(!1)},r);I.onTcfReady(()=>{s("On Tcf Ready called, waiting for consent"),clearTimeout(t)}),I.isConsentedToAll(n=>{clearTimeout(t),e(n)})}catch(e){n(e)}})})}},b=new class{constructor(){this.ppid1=null,this.ppid2=null}processPPIDs(n){return e(this,arguments,void 0,function*(e,n=1e4){var i,t;const s=yield Promise.race([new Promise(e=>{setTimeout(()=>e({xandr:{ppId1:"",ppId2:""}}),n)}),e.instance.getAdvertisingIdentifiers()]);this.setPPIDs(null===(i=s.xandr)||void 0===i?void 0:i.ppId1,null===(t=s.xandr)||void 0===t?void 0:t.ppId2)})}getPPIDs(){var e,n;return null!==this.ppid1&&null!==this.ppid2||s("PPIDv2s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(n=this.ppid2)&&void 0!==n?n:""}}setPPIDs(e,n){this.ppid1=null!=e?e:"",this.ppid2=null!=n?n:""}},C=new class{constructor(){this.ppid1=null,this.ppid2=null,this.idfv=null,this.anId=null}processPPIDs(n,i){return e(this,void 0,void 0,function*(){var e,t,s,d,o,l,c,u,p,v,h;const f=r.get(a),g=yield this.getNewPPIDs(n,i);if(this.shouldHash(f,g)){const i=null!==(e=n.hasherUrl)&&void 0!==e?e:"https://hasher.schibsted.com/api/v1/hash",r=this.createHasherPayload(g),a=yield this.hashPPIDs(r,i);return a?(this.cachePPIDs(r,a,null===(t=g.idfv)||void 0===t?void 0:t.plain,null===(s=g.anId)||void 0===s?void 0:s.plain),void this.setPPIDs(null!==(d=a.userId)&&void 0!==d?d:"",null!==(o=a.environmentId)&&void 0!==o?o:"",null===(l=g.idfv)||void 0===l?void 0:l.plain,null===(c=g.anId)||void 0===c?void 0:c.plain)):void this.setPPIDs("","")}this.setPPIDs(null!==(u=null==f?void 0:f.userId.hashed)&&void 0!==u?u:"",null!==(p=null==f?void 0:f.environmentId.hashed)&&void 0!==p?p:"",null===(v=null==g?void 0:g.idfv)||void 0===v?void 0:v.plain,null===(h=null==g?void 0:g.anId)||void 0===h?void 0:h.plain)})}getPPIDs(){var e,n;return null!==this.ppid1&&null!==this.ppid2||s("PPIDv3s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(n=this.ppid2)&&void 0!==n?n:"",idfv:this.idfv,anId:this.anId}}setPPIDs(e,n,i,t){this.ppid1=null!=e?e:"",this.ppid2=null!=n?n:"",this.idfv=null!=i?i:null,this.anId=null!=t?t:null}shouldHash(e,n){var i,t;if(!e)return!0;for(const s in e){if((null===(i=e[s])||void 0===i?void 0:i.plain)!==(null===(t=n[s])||void 0===t?void 0:t.plain))return!0}return!1}cachePPIDs(e,n,i,t){const s=Object.assign(Object.assign({clientId:{plain:e.clientId},userId:{plain:e.userId,hashed:n.userId},environmentId:{plain:e.environmentId,hashed:n.environmentId},trackerType:{plain:e.trackerType},trackerVersion:{plain:e.trackerVersion}},i?{idfv:{plain:i}}:{}),t?{anId:{plain:t}}:{});r.set(a,s)}hashPPIDs(n,i){return e(this,void 0,void 0,function*(){try{const e=new Headers({"Content-Type":"application/json"});return yield t.post(i,e,n)}catch(e){return s("Error with hashing PPIDs",e),null}})}getNewPPIDs(n,i){return e(this,arguments,void 0,function*({clientId:n,instance:i},t){const s=yield((n,i)=>e(void 0,void 0,void 0,function*(){const e=yield n.getUserId();return e?`${f[i]}:${e}`:null}))(i,t),d=yield(r=i,e(void 0,void 0,void 0,function*(){const e=yield r.getEnvironmentId();return e?`sdrn:schibsted:environment:${e}`:null}));var r;const o=window.advertory_idfv,a=window.advertory_anId;return Object.assign(Object.assign({clientId:{plain:n},userId:{plain:s},environmentId:{plain:d},trackerType:{plain:"Advertory"},trackerVersion:{plain:"1.0.0"}},o?{idfv:{plain:o}}:{}),a?{anId:{plain:a}}:{})})}createHasherPayload({clientId:e,trackerType:n,trackerVersion:i,userId:t,environmentId:s}){return{clientId:e.plain,trackerType:n.plain,trackerVersion:i.plain,userId:t.plain,environmentId:s.plain}}};exports.getFinnBlinkUserId=()=>e(void 0,void 0,void 0,function*(){const{ppid1:e}=C.getPPIDs();return e}),exports.getOpenRtbEids=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:s}=C.getPPIDs();return(new g).add(i,l[e]).add(n,c[e]).add(s,u[e]).add(t,p[e]).buildRyEids()},exports.getPPIDLoggedInStatus=()=>{const{ppid1:e,ppid2:n}=b.getPPIDs();return{"aa-sch-schuserhash":e?"1":"0","aa-sch-schenvhash":n?"1":"0"}},exports.getPPIDNorstatString=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:s}=C.getPPIDs(),d=(new g).add(i,l[e]).add(n,c[e]).add(s,u[e]).add(t,p[e]);return`${d.buildNorstatPath()}?${d.buildNorstatQuery("alias").toString()}`},exports.getPPIDRelevantYieldConfig=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:s,idfv:d,anId:r}=C.getPPIDs();if(!i)return{};return{userSync:{userIds:[{name:"pubProvidedId",params:{eids:(new g).add(i,l[e]).add(n,c[e]).add(s,u[e]).add(t,p[e]).add(d,v[e]).add(r,h[e]).buildRyEids()}}]}}},exports.getUserIdsObject=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:s,idfv:d,anId:r}=C.getPPIDs();return{userIds:[{type:"extendedIDs",eids:(new g).add(i,l[e]).add(n,c[e]).add(s,u[e]).add(t,p[e]).add(d,v[e]).add(r,h[e]).buildEids()}]}},exports.getVideoPPIDs=n=>e(void 0,void 0,void 0,function*(){const{ppid1:e,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:s}=C.getPPIDs(),d=(new g).add(i,l[n]).add(e,c[n]).add(s,u[n]).add(t,p[n]);return yield new Promise(e=>{e(d.buildVideoEids())})}),exports.setXandrPPIDs=n=>e(void 0,void 0,void 0,function*(){const{pulse:i,tcf:t,pageContext:{countryCode:d,isMobileApp:r}}=n,o=yield((n,i,t,...d)=>e(void 0,[n,i,t,...d],void 0,function*(e,n,i,t="NOT SPECIFIED FEATURE"){if(!(null==e?void 0:e.schibstedConsentToPayEnabled))return s(`Schibsted Consent to Pay is not enabled, returning true for ${t}`),!0;if(null==e?void 0:e.schibstedAdChoicesOverrideValue)return s(`Schibsted Ad Choices override value is set, returning override value: ${null==e?void 0:e.schibstedAdChoicesOverrideValue} for ${t}`),Boolean(Number(null==e?void 0:e.schibstedAdChoicesOverrideValue));const{getConsentAsync:d}=w(e,0,i);return(yield d())?(s(`Schibsted Ad Choices consent given according to TCF consent manager for ${t}`),!0):(s(`Schibsted Ad Choices consent not given according to TCF consent manager for ${t}`),!1)}))(t,r,d,"setXandrPPIDs");if(!o)return;if(!i)return;(yield Promise.allSettled([b.processPPIDs(i,null==t?void 0:t.timeout),C.processPPIDs(i,d)])).forEach((e,n)=>{if("rejected"===e.status){s(`Cannot fetch PPIDs v${n+2}`,e.reason)}})});
@@ -1,3 +1,5 @@
1
+ import Tracker from '@schibsted/pulse-sdk';
2
+
1
3
  type AstAdType = 'banner' | 'video' | 'native' | 'outstream';
2
4
  interface AstBanner {
3
5
  content: string;
@@ -133,39 +135,17 @@ declare const Countries: {
133
135
  };
134
136
  type Country = (typeof Countries)[keyof typeof Countries];
135
137
 
136
- interface AdvertisingIdentifiers {
137
- xandr?: {
138
- ppId1?: string;
139
- ppId2?: string;
140
- };
141
- }
142
- interface TrackerInstance {
143
- getAdvertisingIdentifiers: () => Promise<AdvertisingIdentifiers>;
144
- getUserId: () => Promise<undefined | string | number>;
145
- getEnvironmentId: () => Promise<undefined | string>;
146
- getActor: () => Promise<undefined | unknown>;
147
- state?: {
148
- pageViewId?: string;
149
- };
150
- }
151
- interface PulseInstance extends TrackerInstance {
152
- pulseTracker?: TrackerInstance;
138
+ interface PulseLegacyExtras {
153
139
  trackElementView?: (eventInput: unknown) => Promise<void>;
154
140
  trackElementClick?: (eventInput: unknown) => Promise<void>;
155
141
  trackClickUIElement?: (eventInput: unknown) => Promise<void>;
156
142
  trackViewUIElement?: (eventInput: unknown) => Promise<void>;
157
- trackLegacyClickUIElement?: (eventInput: unknown) => Promise<void>;
158
- trackLegacyViewUIElement?: (eventInput: unknown) => Promise<void>;
159
143
  }
160
- interface Tracker {
144
+ interface PulseConfig {
161
145
  clientId: string;
162
- instance: TrackerInstance;
146
+ instance: Tracker & PulseLegacyExtras;
163
147
  hasherUrl?: string;
164
148
  }
165
- interface Pulse {
166
- clientId: string;
167
- instance: PulseInstance;
168
- }
169
149
  interface UserIdsObject {
170
150
  userIds: Array<AstUserIds>;
171
151
  }
@@ -254,8 +234,7 @@ interface SiteConfig {
254
234
  glimr?: GlimrConfig;
255
235
  tcf?: TCFConfig;
256
236
  prebid?: PrebidConfig;
257
- tracker?: Tracker;
258
- pulse?: Pulse;
237
+ pulse?: PulseConfig;
259
238
  finnBlink?: FinnBlinkConfig;
260
239
  wallpaper?: WallpaperConfig;
261
240
  fullscreenScroll?: FullscreenScrollConfig;
@@ -556,9 +535,13 @@ interface EditableConfigurationConfig {
556
535
  enabled?: boolean;
557
536
  pageTypeToFetch?: string;
558
537
  }
538
+ interface AdNativeBuilderConfig {
539
+ enabled?: boolean;
540
+ }
559
541
  interface EditoryConfig {
560
542
  editoryUrl?: string;
561
543
  editableConfiguration?: EditableConfigurationConfig;
544
+ adNativeBuilder?: AdNativeBuilderConfig;
562
545
  }
563
546
  interface AdScaleConfig {
564
547
  enabled: boolean;
@@ -1 +1 @@
1
- function e(e,i,n,t){return new(n||(n=Promise))(function(d,s){function r(e){try{a(t.next(e))}catch(e){s(e)}}function o(e){try{a(t.throw(e))}catch(e){s(e)}}function a(e){var i;e.done?d(e.value):(i=e.value,i instanceof n?i:new n(function(e){e(i)})).then(r,o)}a((t=t.apply(e,i||[])).next())})}"function"==typeof SuppressedError&&SuppressedError;const i={get:(i,n)=>e(void 0,void 0,void 0,function*(){const e=yield fetch(i,n);if(!e.ok)throw new Error(e.statusText);return yield e.json()}),post:(i,n,t)=>e(void 0,void 0,void 0,function*(){const e=JSON.stringify(t),d=yield fetch(i,{method:"POST",headers:n,body:e});if(!d.ok)throw new Error(d.statusText);return yield d.json()})},n=(e,i)=>{const n="[Advertory LOG]: ";location.search.includes("ast_debug=true")&&(i?console.log(n,e,i):console.log(n,e))},t=864e5,d=(()=>{const e=e=>{const i=window.localStorage.getItem(e);if(!i)return null;try{return JSON.parse(i)}catch(e){return n("Error with parsing localStorage data"),null}},i=(e,i)=>{window.localStorage.setItem(e,JSON.stringify(i))};return{get:e,set:i,setWithTimestamp:(e,n,d=t)=>{const s={data:n,expirationTime:(new Date).getTime()+d};i(e,JSON.stringify(s))},getByTimestamp:(i,d=t)=>{const s=e(i);if(!s)return null;if(!d)return s;try{const{expirationTime:e,data:i}=JSON.parse(s);return(new Date).getTime()<=e?i:null}catch(e){return n("Error with parsing localStorage data"),null}}}})(),s={NO:"no",SE:"se"},r="advertory:ppids-cache",o={[s.SE]:`SCH${s.SE.toUpperCase()}-EnvHash`,[s.NO]:`SCH${s.NO.toUpperCase()}-EnvHash`},a={[s.SE]:`SCH${s.SE.toUpperCase()}-UserHash`,[s.NO]:`SCH${s.NO.toUpperCase()}-UserHash`},l={[s.SE]:`sch${s.SE}-envhash-v3`,[s.NO]:`sch${s.NO}-envhash-v3`},c={[s.SE]:`sch${s.SE}-userhash-v3`,[s.NO]:`sch${s.NO}-userhash-v3`},u={[s.SE]:`'sch${s.SE}-iosid-v3'`,[s.NO]:`'sch${s.NO}-iosid-v3'`},p={[s.SE]:`sch${s.SE}-androidid-v3`,[s.NO]:`sch${s.NO}-androidid-v3`},v={[s.SE]:"sdrn:schibsted.com:user",[s.NO]:"sdrn:spid.no:user"};class h{constructor(){this.eids=[]}add(e,i){return e&&this.eids.push({id:e,source:i}),this}buildRyEids(){return this.eids.map(({id:e,source:i})=>({source:i,uids:[{id:e,atype:1,ext:{stype:"ppuid"}}]}))}buildEids(){return[...this.eids]}buildVideoEids(){return this.eids.map(({id:e,source:i})=>`${i},${e}`).join("|")}buildNorstatPath(){const e=this.eids[0];return e?`${e.source}-${e.id}`:""}buildNorstatQuery(e){const i=new URLSearchParams;return this.eids.slice(1).forEach(({id:n,source:t})=>{i.append(e,`${t}-${n}`)}),i}}const f=e=>new Promise(i=>{if(!window._tcf_||!(null==e?void 0:e.enabled))return void i(!1);const t=(()=>{if(!window._tcf_)return null;const e=window._tcf_.getPermissionSync("CMP:advertising");if(null===e)return null;const i=Number(e);return n("Advertising permission value obtained synchronously: ",e),Boolean(i)})();if(null!==t)return void i(t);let d=!1;const s=e=>{d||(n("Resolving advertising permission value obtained"),d=!0,i(e))},r=setTimeout(()=>{n("Advertising permission timed out, resolving with false"),s(!1)},3e3);window._tcf_.onTcfReady(()=>{n("On Tcf Ready called, waiting for permission"),clearTimeout(r)}),window._tcf_.getPermission("CMP:advertising",e=>{clearTimeout(r);const i=Number(e);n("Advertising permission value obtained asynchronously: ",e),s(Boolean(i))})}),P="cmp:loaded";let g="undefined"!=typeof window?window._tcf_:void 0,I=!1;const y=(i,t,d)=>{const r=!!(null==i?void 0:i.enabled),o=(null==i?void 0:i.timeout)||3e3,a=(l="bypass_tcf",new URLSearchParams(window.location.search).get(l));var l;const c=()=>{if(!(null==i?void 0:i.enabled))return!0;if(((e,i)=>e?!!i&&(n("TCF bypass param detected, returning consent: true"),!0):(n("TCF is not enabled, returning consent: true"),!0))(r,a))return!0;if(I)return null;if(!g)throw new Error("[Advertory]: getConsentSync method was called before the tcfManager was available.");const e=g.getConsentedToAllSync();return n(`TCF consented to all is: ${e}`),g.getConsentedToAllSync()};return{initConsentManager:()=>(null==i?void 0:i.enabled)?new Promise((e,i)=>{if(n("Getting TCF consent manager..."),window._tcf_)return n("TCF consent manager is already available"),g=window._tcf_,void e(g);n("TCF consent manager is not available");const t=()=>{n("CMP loaded, resolving consent manager..."),d&&clearTimeout(d),window._tcf_?(g=window._tcf_,e(g)):i(new Error("CMP loaded but window._tcf_ is not defined"))},d=setTimeout(()=>{document.removeEventListener(P,t),I=!0,i(new Error("Timeout waiting for CMP to load"))},o);n("Listening for CMP loaded event..."),document.addEventListener(P,t,{once:!0})}):Promise.resolve(null),getConsentSync:c,getConsentAsync:()=>e(void 0,void 0,void 0,function*(){if(null==i?void 0:i.schibstedAdChoicesOverrideValue)return n(`Schibsted Ad Choices override value is set, returning override value: ${i.schibstedAdChoicesOverrideValue}`),Boolean(Number(i.schibstedAdChoicesOverrideValue));const e=(null==i?void 0:i.advertisingCMPSignalEnabled)&&d===s.SE,t=(null==i?void 0:i.advertisingCMPSignalEnabled)&&d===s.NO;if(e||t)return n("Schibsted Ad Choices is enabled, getting advertising permissions..."),yield f(i);if(!(null==i?void 0:i.enabled))return!0;const r=c();return null!==r?r:yield new Promise((e,i)=>{try{if(!g)throw new Error("[Advertory]: getConsentAsync method was called before the tcfManager was available.");let i=!1;const t=n=>{i||(i=!0,e(n))},d=setTimeout(()=>{n("TCF isConsentedToAll timed out, resolving with false"),t(!1)},o);g.onTcfReady(()=>{n("On Tcf Ready called, waiting for consent"),clearTimeout(d)}),g.isConsentedToAll(i=>{clearTimeout(d),e(i)})}catch(e){i(e)}})})}},w=new class{constructor(){this.ppid1=null,this.ppid2=null}processPPIDs(i){return e(this,arguments,void 0,function*(e,i=1e4){var n,t;const d=yield Promise.race([new Promise(e=>{setTimeout(()=>e({xandr:{ppId1:"",ppId2:""}}),i)}),e.instance.getAdvertisingIdentifiers()]);this.setPPIDs(null===(n=d.xandr)||void 0===n?void 0:n.ppId1,null===(t=d.xandr)||void 0===t?void 0:t.ppId2)})}getPPIDs(){var e,i;return null!==this.ppid1&&null!==this.ppid2||n("PPIDv2s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(i=this.ppid2)&&void 0!==i?i:""}}setPPIDs(e,i){this.ppid1=null!=e?e:"",this.ppid2=null!=i?i:""}},m=new class{constructor(){this.ppid1=null,this.ppid2=null,this.idfv=null,this.anId=null}processPPIDs(i,n){return e(this,void 0,void 0,function*(){var e,t,s,o,a,l,c,u,p,v,h;const f=d.get(r),P=yield this.getNewPPIDs(i,n);if(this.shouldHash(f,P)){const n=null!==(e=i.hasherUrl)&&void 0!==e?e:"https://hasher.schibsted.com/api/v1/hash",d=this.createHasherPayload(P),r=yield this.hashPPIDs(d,n);return r?(this.cachePPIDs(d,r,null===(t=P.idfv)||void 0===t?void 0:t.plain,null===(s=P.anId)||void 0===s?void 0:s.plain),void this.setPPIDs(null!==(o=r.userId)&&void 0!==o?o:"",null!==(a=r.environmentId)&&void 0!==a?a:"",null===(l=P.idfv)||void 0===l?void 0:l.plain,null===(c=P.anId)||void 0===c?void 0:c.plain)):void this.setPPIDs("","")}this.setPPIDs(null!==(u=null==f?void 0:f.userId.hashed)&&void 0!==u?u:"",null!==(p=null==f?void 0:f.environmentId.hashed)&&void 0!==p?p:"",null===(v=null==P?void 0:P.idfv)||void 0===v?void 0:v.plain,null===(h=null==P?void 0:P.anId)||void 0===h?void 0:h.plain)})}getPPIDs(){var e,i;return null!==this.ppid1&&null!==this.ppid2||n("PPIDv3s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(i=this.ppid2)&&void 0!==i?i:"",idfv:this.idfv,anId:this.anId}}setPPIDs(e,i,n,t){this.ppid1=null!=e?e:"",this.ppid2=null!=i?i:"",this.idfv=null!=n?n:null,this.anId=null!=t?t:null}shouldHash(e,i){var n,t;if(!e)return!0;for(const d in e){if((null===(n=e[d])||void 0===n?void 0:n.plain)!==(null===(t=i[d])||void 0===t?void 0:t.plain))return!0}return!1}cachePPIDs(e,i,n,t){const s=Object.assign(Object.assign({clientId:{plain:e.clientId},userId:{plain:e.userId,hashed:i.userId},environmentId:{plain:e.environmentId,hashed:i.environmentId},trackerType:{plain:e.trackerType},trackerVersion:{plain:e.trackerVersion}},n?{idfv:{plain:n}}:{}),t?{anId:{plain:t}}:{});d.set(r,s)}hashPPIDs(t,d){return e(this,void 0,void 0,function*(){try{const e=new Headers({"Content-Type":"application/json"});return yield i.post(d,e,t)}catch(e){return n("Error with hashing PPIDs",e),null}})}getNewPPIDs(i,n){return e(this,arguments,void 0,function*({clientId:i,instance:n},t){const d=yield((i,n)=>e(void 0,void 0,void 0,function*(){const e=yield i.getUserId();return e?`${v[n]}:${e}`:null}))(n,t),s=yield(i=>e(void 0,void 0,void 0,function*(){const e=yield i.getEnvironmentId();return e?`sdrn:schibsted:environment:${e}`:null}))(n),r=window.advertory_idfv,o=window.advertory_anId;return Object.assign(Object.assign({clientId:{plain:i},userId:{plain:d},environmentId:{plain:s},trackerType:{plain:"Advertory"},trackerVersion:{plain:"1.0.0"}},r?{idfv:{plain:r}}:{}),o?{anId:{plain:o}}:{})})}createHasherPayload({clientId:e,trackerType:i,trackerVersion:n,userId:t,environmentId:d}){return{clientId:e.plain,trackerType:i.plain,trackerVersion:n.plain,userId:t.plain,environmentId:d.plain}}},b=i=>e(void 0,void 0,void 0,function*(){const{tracker:t,tcf:d,pageContext:{countryCode:s,isMobileApp:r}}=i,o=yield((i,t,d,...s)=>e(void 0,[i,t,d,...s],void 0,function*(e,i,t,d="NOT SPECIFIED FEATURE"){if(!(null==e?void 0:e.schibstedConsentToPayEnabled))return n(`Schibsted Consent to Pay is not enabled, returning true for ${d}`),!0;if(null==e?void 0:e.schibstedAdChoicesOverrideValue)return n(`Schibsted Ad Choices override value is set, returning override value: ${null==e?void 0:e.schibstedAdChoicesOverrideValue} for ${d}`),Boolean(Number(null==e?void 0:e.schibstedAdChoicesOverrideValue));const{getConsentAsync:s}=y(e,0,t);return(yield s())?(n(`Schibsted Ad Choices consent given according to TCF consent manager for ${d}`),!0):(n(`Schibsted Ad Choices consent not given according to TCF consent manager for ${d}`),!1)}))(d,r,s,"setXandrPPIDs");if(!o)return;if(!t)return;(yield Promise.allSettled([w.processPPIDs(t,null==d?void 0:d.timeout),m.processPPIDs(t,s)])).forEach((e,i)=>{if("rejected"===e.status){n(`Cannot fetch PPIDs v${i+2}`,e.reason)}})}),C=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d,idfv:s,anId:r}=m.getPPIDs();return{userIds:[{type:"extendedIDs",eids:(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]).add(s,u[e]).add(r,p[e]).buildEids()}]}},S=()=>{const{ppid1:e,ppid2:i}=w.getPPIDs();return{"aa-sch-schuserhash":e?"1":"0","aa-sch-schenvhash":i?"1":"0"}},E=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d,idfv:s,anId:r}=m.getPPIDs();if(!n)return{};return{userSync:{userIds:[{name:"pubProvidedId",params:{eids:(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]).add(s,u[e]).add(r,p[e]).buildRyEids()}}]}}},T=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d}=m.getPPIDs(),s=(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]);return`${s.buildNorstatPath()}?${s.buildNorstatQuery("alias").toString()}`},D=e=>{const{ppid1:i,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d}=m.getPPIDs();return(new h).add(n,o[e]).add(i,a[e]).add(d,l[e]).add(t,c[e]).buildRyEids()},O=i=>e(void 0,void 0,void 0,function*(){const{ppid1:e,ppid2:n}=w.getPPIDs(),{ppid1:t,ppid2:d}=m.getPPIDs(),s=(new h).add(n,o[i]).add(e,a[i]).add(d,l[i]).add(t,c[i]);return yield new Promise(e=>{e(s.buildVideoEids())})}),N=()=>e(void 0,void 0,void 0,function*(){const{ppid1:e}=m.getPPIDs();return e});export{N as getFinnBlinkUserId,D as getOpenRtbEids,S as getPPIDLoggedInStatus,T as getPPIDNorstatString,E as getPPIDRelevantYieldConfig,C as getUserIdsObject,O as getVideoPPIDs,b as setXandrPPIDs};
1
+ function e(e,n,i,t){return new(i||(i=Promise))(function(d,s){function o(e){try{a(t.next(e))}catch(e){s(e)}}function r(e){try{a(t.throw(e))}catch(e){s(e)}}function a(e){var n;e.done?d(e.value):(n=e.value,n instanceof i?n:new i(function(e){e(n)})).then(o,r)}a((t=t.apply(e,n||[])).next())})}"function"==typeof SuppressedError&&SuppressedError;const n="opaque",i=i=>e(void 0,void 0,void 0,function*(){if(i.type!==n){if(!i.ok)throw new Error(i.statusText);return yield i.json()}}),t={get:(n,...t)=>e(void 0,[n,...t],void 0,function*(n,t={}){var{timeout:d}=t,s=function(e,n){var i={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&n.indexOf(t)<0&&(i[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var d=0;for(t=Object.getOwnPropertySymbols(e);d<t.length;d++)n.indexOf(t[d])<0&&Object.prototype.propertyIsEnumerable.call(e,t[d])&&(i[t[d]]=e[t[d]])}return i}(t,["timeout"]);if(d)return((n,t,d)=>e(void 0,void 0,void 0,function*(){const e=new AbortController,s=setTimeout(()=>e.abort(),d);try{const d=yield fetch(n,Object.assign(Object.assign({},t),{signal:e.signal}));return i(d)}finally{clearTimeout(s)}}))(n,s,d);const o=yield fetch(n,s);return i(o)}),post:(n,i,t)=>e(void 0,void 0,void 0,function*(){const e=JSON.stringify(t),d=yield fetch(n,{method:"POST",headers:i,body:e});if(!d.ok)throw new Error(d.statusText);return yield d.json()})},d=(e,n)=>{const i="[Advertory LOG]: ";location.search.includes("ast_debug=true")&&(n?console.log(i,e,n):console.log(i,e))},s=864e5,o=(()=>{const e=e=>{const n=window.localStorage.getItem(e);if(!n)return null;try{return JSON.parse(n)}catch(e){return d("Error with parsing localStorage data"),null}},n=(e,n)=>{window.localStorage.setItem(e,JSON.stringify(n))};return{get:e,set:n,setWithTimestamp:(e,i,t=s)=>{const d={data:i,expirationTime:(new Date).getTime()+t};n(e,JSON.stringify(d))},getByTimestamp:(n,i=s)=>{const t=e(n);if(!t)return null;if(!i)return t;try{const{expirationTime:e,data:n}=JSON.parse(t);return(new Date).getTime()<=e?n:null}catch(e){return d("Error with parsing localStorage data"),null}}}})(),r={NO:"no",SE:"se"},a="advertory:ppids-cache",l={[r.SE]:`SCH${r.SE.toUpperCase()}-EnvHash`,[r.NO]:`SCH${r.NO.toUpperCase()}-EnvHash`},c={[r.SE]:`SCH${r.SE.toUpperCase()}-UserHash`,[r.NO]:`SCH${r.NO.toUpperCase()}-UserHash`},u={[r.SE]:`sch${r.SE}-envhash-v3`,[r.NO]:`sch${r.NO}-envhash-v3`},p={[r.SE]:`sch${r.SE}-userhash-v3`,[r.NO]:`sch${r.NO}-userhash-v3`},v={[r.SE]:`'sch${r.SE}-iosid-v3'`,[r.NO]:`'sch${r.NO}-iosid-v3'`},h={[r.SE]:`sch${r.SE}-androidid-v3`,[r.NO]:`sch${r.NO}-androidid-v3`},f={[r.SE]:"sdrn:schibsted.com:user",[r.NO]:"sdrn:spid.no:user"};class g{constructor(){this.eids=[]}add(e,n){return e&&this.eids.push({id:e,source:n}),this}buildRyEids(){return this.eids.map(({id:e,source:n})=>({source:n,uids:[{id:e,atype:1,ext:{stype:"ppuid"}}]}))}buildEids(){return[...this.eids]}buildVideoEids(){return this.eids.map(({id:e,source:n})=>`${n},${e}`).join("|")}buildNorstatPath(){const e=this.eids[0];return e?`${e.source}-${e.id}`:""}buildNorstatQuery(e){const n=new URLSearchParams;return this.eids.slice(1).forEach(({id:i,source:t})=>{n.append(e,`${t}-${i}`)}),n}}const P=e=>new Promise(n=>{if(!window._tcf_||!(null==e?void 0:e.enabled))return void n(!1);const i=(()=>{if(!window._tcf_)return null;const e=window._tcf_.getPermissionSync("CMP:advertising");if(null===e)return null;const n=Number(e);return d("Advertising permission value obtained synchronously: ",e),Boolean(n)})();if(null!==i)return void n(i);let t=!1;const s=e=>{t||(d("Resolving advertising permission value obtained"),t=!0,n(e))},o=setTimeout(()=>{d("Advertising permission timed out, resolving with false"),s(!1)},3e3);window._tcf_.onTcfReady(()=>{d("On Tcf Ready called, waiting for permission"),clearTimeout(o)}),window._tcf_.getPermission("CMP:advertising",e=>{clearTimeout(o);const n=Number(e);d("Advertising permission value obtained asynchronously: ",e),s(Boolean(n))})}),y="cmp:loaded";let I="undefined"!=typeof window?window._tcf_:void 0,m=!1;const w=(n,i,t)=>{const s=!!(null==n?void 0:n.enabled),o=(null==n?void 0:n.timeout)||3e3,a=(l="bypass_tcf",new URLSearchParams(window.location.search).get(l));var l;const c=()=>{if(!(null==n?void 0:n.enabled))return!0;if(((e,n)=>e?!!n&&(d("TCF bypass param detected, returning consent: true"),!0):(d("TCF is not enabled, returning consent: true"),!0))(s,a))return!0;if(m)return null;if(!I)throw new Error("[Advertory]: getConsentSync method was called before the tcfManager was available.");const e=I.getConsentedToAllSync();return d(`TCF consented to all is: ${e}`),I.getConsentedToAllSync()};return{initConsentManager:()=>(null==n?void 0:n.enabled)?new Promise((e,n)=>{if(d("Getting TCF consent manager..."),window._tcf_)return d("TCF consent manager is already available"),I=window._tcf_,void e(I);d("TCF consent manager is not available");const i=()=>{d("CMP loaded, resolving consent manager..."),t&&clearTimeout(t),window._tcf_?(I=window._tcf_,e(I)):n(new Error("CMP loaded but window._tcf_ is not defined"))},t=setTimeout(()=>{document.removeEventListener(y,i),m=!0,n(new Error("Timeout waiting for CMP to load"))},o);d("Listening for CMP loaded event..."),document.addEventListener(y,i,{once:!0})}):Promise.resolve(null),getConsentSync:c,getConsentAsync:()=>e(void 0,void 0,void 0,function*(){if(null==n?void 0:n.schibstedAdChoicesOverrideValue)return d(`Schibsted Ad Choices override value is set, returning override value: ${n.schibstedAdChoicesOverrideValue}`),Boolean(Number(n.schibstedAdChoicesOverrideValue));const e=(null==n?void 0:n.advertisingCMPSignalEnabled)&&t===r.SE,i=(null==n?void 0:n.advertisingCMPSignalEnabled)&&t===r.NO;if(e||i)return d("Schibsted Ad Choices is enabled, getting advertising permissions..."),yield P(n);if(!(null==n?void 0:n.enabled))return!0;const s=c();return null!==s?s:yield new Promise((e,n)=>{try{if(!I)throw new Error("[Advertory]: getConsentAsync method was called before the tcfManager was available.");let n=!1;const i=i=>{n||(n=!0,e(i))},t=setTimeout(()=>{d("TCF isConsentedToAll timed out, resolving with false"),i(!1)},o);I.onTcfReady(()=>{d("On Tcf Ready called, waiting for consent"),clearTimeout(t)}),I.isConsentedToAll(n=>{clearTimeout(t),e(n)})}catch(e){n(e)}})})}},b=new class{constructor(){this.ppid1=null,this.ppid2=null}processPPIDs(n){return e(this,arguments,void 0,function*(e,n=1e4){var i,t;const d=yield Promise.race([new Promise(e=>{setTimeout(()=>e({xandr:{ppId1:"",ppId2:""}}),n)}),e.instance.getAdvertisingIdentifiers()]);this.setPPIDs(null===(i=d.xandr)||void 0===i?void 0:i.ppId1,null===(t=d.xandr)||void 0===t?void 0:t.ppId2)})}getPPIDs(){var e,n;return null!==this.ppid1&&null!==this.ppid2||d("PPIDv2s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(n=this.ppid2)&&void 0!==n?n:""}}setPPIDs(e,n){this.ppid1=null!=e?e:"",this.ppid2=null!=n?n:""}},C=new class{constructor(){this.ppid1=null,this.ppid2=null,this.idfv=null,this.anId=null}processPPIDs(n,i){return e(this,void 0,void 0,function*(){var e,t,d,s,r,l,c,u,p,v,h;const f=o.get(a),g=yield this.getNewPPIDs(n,i);if(this.shouldHash(f,g)){const i=null!==(e=n.hasherUrl)&&void 0!==e?e:"https://hasher.schibsted.com/api/v1/hash",o=this.createHasherPayload(g),a=yield this.hashPPIDs(o,i);return a?(this.cachePPIDs(o,a,null===(t=g.idfv)||void 0===t?void 0:t.plain,null===(d=g.anId)||void 0===d?void 0:d.plain),void this.setPPIDs(null!==(s=a.userId)&&void 0!==s?s:"",null!==(r=a.environmentId)&&void 0!==r?r:"",null===(l=g.idfv)||void 0===l?void 0:l.plain,null===(c=g.anId)||void 0===c?void 0:c.plain)):void this.setPPIDs("","")}this.setPPIDs(null!==(u=null==f?void 0:f.userId.hashed)&&void 0!==u?u:"",null!==(p=null==f?void 0:f.environmentId.hashed)&&void 0!==p?p:"",null===(v=null==g?void 0:g.idfv)||void 0===v?void 0:v.plain,null===(h=null==g?void 0:g.anId)||void 0===h?void 0:h.plain)})}getPPIDs(){var e,n;return null!==this.ppid1&&null!==this.ppid2||d("PPIDv3s accessed before they have been initialized"),{ppid1:null!==(e=this.ppid1)&&void 0!==e?e:"",ppid2:null!==(n=this.ppid2)&&void 0!==n?n:"",idfv:this.idfv,anId:this.anId}}setPPIDs(e,n,i,t){this.ppid1=null!=e?e:"",this.ppid2=null!=n?n:"",this.idfv=null!=i?i:null,this.anId=null!=t?t:null}shouldHash(e,n){var i,t;if(!e)return!0;for(const d in e){if((null===(i=e[d])||void 0===i?void 0:i.plain)!==(null===(t=n[d])||void 0===t?void 0:t.plain))return!0}return!1}cachePPIDs(e,n,i,t){const d=Object.assign(Object.assign({clientId:{plain:e.clientId},userId:{plain:e.userId,hashed:n.userId},environmentId:{plain:e.environmentId,hashed:n.environmentId},trackerType:{plain:e.trackerType},trackerVersion:{plain:e.trackerVersion}},i?{idfv:{plain:i}}:{}),t?{anId:{plain:t}}:{});o.set(a,d)}hashPPIDs(n,i){return e(this,void 0,void 0,function*(){try{const e=new Headers({"Content-Type":"application/json"});return yield t.post(i,e,n)}catch(e){return d("Error with hashing PPIDs",e),null}})}getNewPPIDs(n,i){return e(this,arguments,void 0,function*({clientId:n,instance:i},t){const d=yield((n,i)=>e(void 0,void 0,void 0,function*(){const e=yield n.getUserId();return e?`${f[i]}:${e}`:null}))(i,t),s=yield(o=i,e(void 0,void 0,void 0,function*(){const e=yield o.getEnvironmentId();return e?`sdrn:schibsted:environment:${e}`:null}));var o;const r=window.advertory_idfv,a=window.advertory_anId;return Object.assign(Object.assign({clientId:{plain:n},userId:{plain:d},environmentId:{plain:s},trackerType:{plain:"Advertory"},trackerVersion:{plain:"1.0.0"}},r?{idfv:{plain:r}}:{}),a?{anId:{plain:a}}:{})})}createHasherPayload({clientId:e,trackerType:n,trackerVersion:i,userId:t,environmentId:d}){return{clientId:e.plain,trackerType:n.plain,trackerVersion:i.plain,userId:t.plain,environmentId:d.plain}}},S=n=>e(void 0,void 0,void 0,function*(){const{pulse:i,tcf:t,pageContext:{countryCode:s,isMobileApp:o}}=n,r=yield((n,i,t,...s)=>e(void 0,[n,i,t,...s],void 0,function*(e,n,i,t="NOT SPECIFIED FEATURE"){if(!(null==e?void 0:e.schibstedConsentToPayEnabled))return d(`Schibsted Consent to Pay is not enabled, returning true for ${t}`),!0;if(null==e?void 0:e.schibstedAdChoicesOverrideValue)return d(`Schibsted Ad Choices override value is set, returning override value: ${null==e?void 0:e.schibstedAdChoicesOverrideValue} for ${t}`),Boolean(Number(null==e?void 0:e.schibstedAdChoicesOverrideValue));const{getConsentAsync:s}=w(e,0,i);return(yield s())?(d(`Schibsted Ad Choices consent given according to TCF consent manager for ${t}`),!0):(d(`Schibsted Ad Choices consent not given according to TCF consent manager for ${t}`),!1)}))(t,o,s,"setXandrPPIDs");if(!r)return;if(!i)return;(yield Promise.allSettled([b.processPPIDs(i,null==t?void 0:t.timeout),C.processPPIDs(i,s)])).forEach((e,n)=>{if("rejected"===e.status){d(`Cannot fetch PPIDs v${n+2}`,e.reason)}})}),E=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:d,idfv:s,anId:o}=C.getPPIDs();return{userIds:[{type:"extendedIDs",eids:(new g).add(i,l[e]).add(n,c[e]).add(d,u[e]).add(t,p[e]).add(s,v[e]).add(o,h[e]).buildEids()}]}},T=()=>{const{ppid1:e,ppid2:n}=b.getPPIDs();return{"aa-sch-schuserhash":e?"1":"0","aa-sch-schenvhash":n?"1":"0"}},O=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:d,idfv:s,anId:o}=C.getPPIDs();if(!i)return{};return{userSync:{userIds:[{name:"pubProvidedId",params:{eids:(new g).add(i,l[e]).add(n,c[e]).add(d,u[e]).add(t,p[e]).add(s,v[e]).add(o,h[e]).buildRyEids()}}]}}},D=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:d}=C.getPPIDs(),s=(new g).add(i,l[e]).add(n,c[e]).add(d,u[e]).add(t,p[e]);return`${s.buildNorstatPath()}?${s.buildNorstatQuery("alias").toString()}`},N=e=>{const{ppid1:n,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:d}=C.getPPIDs();return(new g).add(i,l[e]).add(n,c[e]).add(d,u[e]).add(t,p[e]).buildRyEids()},$=n=>e(void 0,void 0,void 0,function*(){const{ppid1:e,ppid2:i}=b.getPPIDs(),{ppid1:t,ppid2:d}=C.getPPIDs(),s=(new g).add(i,l[n]).add(e,c[n]).add(d,u[n]).add(t,p[n]);return yield new Promise(e=>{e(s.buildVideoEids())})}),A=()=>e(void 0,void 0,void 0,function*(){const{ppid1:e}=C.getPPIDs();return e});export{A as getFinnBlinkUserId,N as getOpenRtbEids,T as getPPIDLoggedInStatus,D as getPPIDNorstatString,O as getPPIDRelevantYieldConfig,E as getUserIdsObject,$ as getVideoPPIDs,S as setXandrPPIDs};
@@ -1,3 +1,5 @@
1
+ import Tracker from '@schibsted/pulse-sdk';
2
+
1
3
  type AstAdType = 'banner' | 'video' | 'native' | 'outstream';
2
4
  interface AstBanner {
3
5
  content: string;
@@ -296,39 +298,17 @@ declare const PageTypes: {
296
298
  };
297
299
  type PageType = (typeof PageTypes)[keyof typeof PageTypes];
298
300
 
299
- interface AdvertisingIdentifiers {
300
- xandr?: {
301
- ppId1?: string;
302
- ppId2?: string;
303
- };
304
- }
305
- interface TrackerInstance {
306
- getAdvertisingIdentifiers: () => Promise<AdvertisingIdentifiers>;
307
- getUserId: () => Promise<undefined | string | number>;
308
- getEnvironmentId: () => Promise<undefined | string>;
309
- getActor: () => Promise<undefined | unknown>;
310
- state?: {
311
- pageViewId?: string;
312
- };
313
- }
314
- interface PulseInstance extends TrackerInstance {
315
- pulseTracker?: TrackerInstance;
301
+ interface PulseLegacyExtras {
316
302
  trackElementView?: (eventInput: unknown) => Promise<void>;
317
303
  trackElementClick?: (eventInput: unknown) => Promise<void>;
318
304
  trackClickUIElement?: (eventInput: unknown) => Promise<void>;
319
305
  trackViewUIElement?: (eventInput: unknown) => Promise<void>;
320
- trackLegacyClickUIElement?: (eventInput: unknown) => Promise<void>;
321
- trackLegacyViewUIElement?: (eventInput: unknown) => Promise<void>;
322
306
  }
323
- interface Tracker {
307
+ interface PulseConfig {
324
308
  clientId: string;
325
- instance: TrackerInstance;
309
+ instance: Tracker & PulseLegacyExtras;
326
310
  hasherUrl?: string;
327
311
  }
328
- interface Pulse {
329
- clientId: string;
330
- instance: PulseInstance;
331
- }
332
312
 
333
313
  declare const Newsrooms: {
334
314
  readonly SVD: "svd";
@@ -395,6 +375,7 @@ interface Options {
395
375
  productTag?: string;
396
376
  pageSectionsSelectors?: PageSectionsSelectors;
397
377
  clickLinkSelector?: string;
378
+ containerId?: string;
398
379
  }
399
380
  interface AdNativeTemplates {
400
381
  [templatesName: string]: (nativeData: AdNativeData, options: Options) => string | null;
@@ -432,8 +413,7 @@ interface SiteConfig {
432
413
  glimr?: GlimrConfig;
433
414
  tcf?: TCFConfig;
434
415
  prebid?: PrebidConfig;
435
- tracker?: Tracker;
436
- pulse?: Pulse;
416
+ pulse?: PulseConfig;
437
417
  finnBlink?: FinnBlinkConfig;
438
418
  wallpaper?: WallpaperConfig;
439
419
  fullscreenScroll?: FullscreenScrollConfig;
@@ -734,9 +714,13 @@ interface EditableConfigurationConfig {
734
714
  enabled?: boolean;
735
715
  pageTypeToFetch?: string;
736
716
  }
717
+ interface AdNativeBuilderConfig {
718
+ enabled?: boolean;
719
+ }
737
720
  interface EditoryConfig {
738
721
  editoryUrl?: string;
739
722
  editableConfiguration?: EditableConfigurationConfig;
723
+ adNativeBuilder?: AdNativeBuilderConfig;
740
724
  }
741
725
  interface AdScaleConfig {
742
726
  enabled: boolean;