@schibsted/pulse-sdk 8.0.0-alpha.16 → 8.0.0-alpha.18

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 (398) hide show
  1. package/dist/cjs/EventBus/EventBus.js +146 -0
  2. package/dist/cjs/Tracker.js +2499 -0
  3. package/dist/cjs/Tracker.test-d.js +76 -0
  4. package/dist/cjs/app-integration.js +40 -0
  5. package/dist/cjs/builders/actor.js +60 -0
  6. package/dist/cjs/builders/consent-manager.js +134 -0
  7. package/dist/cjs/builders/consents.js +149 -0
  8. package/dist/cjs/builders/device-browser.js +89 -0
  9. package/dist/cjs/builders/device-node.js +63 -0
  10. package/dist/cjs/builders/device.js +23 -0
  11. package/dist/cjs/builders/events-anonymous-browser.js +6 -0
  12. package/dist/cjs/builders/events-anonymous-node.js +88 -0
  13. package/dist/cjs/builders/events-anonymous.js +17 -0
  14. package/dist/cjs/builders/events-browser.js +8 -0
  15. package/dist/cjs/builders/events-node.js +127 -0
  16. package/dist/cjs/builders/events.js +17 -0
  17. package/dist/cjs/builders/experimentMetadata.js +25 -0
  18. package/dist/cjs/builders/experiments.js +32 -0
  19. package/dist/cjs/builders/index.js +52 -0
  20. package/dist/cjs/builders/location.js +38 -0
  21. package/dist/cjs/builders/objects/objects-anonymous-browser.js +36 -0
  22. package/dist/cjs/builders/objects/objects-anonymous-node.js +95 -0
  23. package/dist/cjs/builders/objects/objects-anonymous.js +23 -0
  24. package/dist/cjs/builders/objects/objects-browser.js +36 -0
  25. package/dist/cjs/builders/objects/objects-node.js +126 -0
  26. package/dist/cjs/builders/objects/objects.js +23 -0
  27. package/dist/cjs/builders/objects/utils.js +23 -0
  28. package/dist/cjs/builders/origin-browser.js +28 -0
  29. package/dist/cjs/builders/origin-node.js +29 -0
  30. package/dist/cjs/builders/origin.js +23 -0
  31. package/dist/cjs/builders/provider.js +24 -0
  32. package/dist/cjs/builders/session-browser.js +97 -0
  33. package/dist/cjs/builders/session-node.js +9 -0
  34. package/dist/cjs/builders/session.js +23 -0
  35. package/dist/cjs/builders/tracker-browser.js +34 -0
  36. package/dist/cjs/builders/tracker-node.js +22 -0
  37. package/dist/cjs/builders/trackerBuilder.js +23 -0
  38. package/dist/cjs/config-browser.js +26 -0
  39. package/dist/cjs/config.js +9 -0
  40. package/dist/cjs/createPulseTracker.js +50 -0
  41. package/dist/cjs/defer.js +20 -0
  42. package/dist/cjs/getPulseTracker.js +74 -0
  43. package/dist/cjs/identity/actor.js +60 -0
  44. package/dist/cjs/identity/advertising.js +62 -0
  45. package/dist/cjs/identity/cis.js +66 -0
  46. package/dist/cjs/identity/device.js +20 -0
  47. package/dist/cjs/identity/index.js +20 -0
  48. package/dist/cjs/index.js +57 -0
  49. package/dist/cjs/leaveTracking/constants.js +26 -0
  50. package/dist/cjs/leaveTracking/index.js +368 -0
  51. package/dist/cjs/leaveTracking/types.js +19 -0
  52. package/dist/cjs/leaveTrackingTpaas/constants.js +18 -0
  53. package/dist/cjs/leaveTrackingTpaas/index.js +341 -0
  54. package/dist/cjs/leaveTrackingTpaas/types.js +19 -0
  55. package/dist/cjs/network-browser.js +35 -0
  56. package/dist/cjs/network.js +15 -0
  57. package/dist/cjs/remoteConfig/index.js +124 -0
  58. package/dist/cjs/tracker-proxy/consts.js +72 -0
  59. package/dist/cjs/tracker-proxy/proxy-provider.js +68 -0
  60. package/dist/cjs/types.js +2 -0
  61. package/dist/cjs/version.json +1 -0
  62. package/dist/cjs/visibility-observer/index.js +101 -0
  63. package/dist/cjs/warnOnce.js +11 -0
  64. package/dist/cjs/wrapper/engagement/ui-element/event-builder.js +21 -0
  65. package/dist/cjs/wrapper/engagement/ui-element/types.js +2 -0
  66. package/dist/cjs/wrapper/types/base-event.js +2 -0
  67. package/dist/cjs/wrapper/types/engagement-event.js +2 -0
  68. package/dist/cjs/wrapper/types/event.js +2 -0
  69. package/dist/cjs/wrapper/types/index.js +19 -0
  70. package/dist/cjs/wrapper/types/utils.js +2 -0
  71. package/dist/cjs/wrapper/utils/get-navigation-type.js +32 -0
  72. package/dist/cjs/wrapper/utils/page-from-page-view.js +9 -0
  73. package/dist/cjs/wrapper/view/article/event-builder.js +19 -0
  74. package/dist/cjs/wrapper/view/article/types.js +2 -0
  75. package/dist/cjs/wrapper/view/frontpage/event-builder.js +16 -0
  76. package/dist/cjs/wrapper/view/frontpage/types.js +2 -0
  77. package/dist/cjs/wrapper/view/listing/event-builder.js +14 -0
  78. package/dist/cjs/wrapper/view/listing/types.js +2 -0
  79. package/dist/cjs/wrapper/view/loginposter/event-builder.js +11 -0
  80. package/dist/cjs/wrapper/view/loginposter/types.js +2 -0
  81. package/dist/cjs/wrapper/view/page/event-builder.js +18 -0
  82. package/dist/cjs/wrapper/view/page/types.js +2 -0
  83. package/dist/cjs/wrapper/view/salesposter/event-builder.js +18 -0
  84. package/dist/cjs/wrapper/view/salesposter/types.js +2 -0
  85. package/dist/cjs/wrapper/view/ui-element/event-builder.js +15 -0
  86. package/dist/cjs/wrapper/view/ui-element/types.js +2 -0
  87. package/dist/ejs/EventBus/EventBus.js +140 -0
  88. package/dist/ejs/Tracker.js +2455 -0
  89. package/dist/ejs/Tracker.test-d.js +71 -0
  90. package/dist/ejs/app-integration.js +33 -0
  91. package/dist/ejs/builders/actor.js +53 -0
  92. package/dist/ejs/builders/consent-manager.js +125 -0
  93. package/dist/ejs/builders/consents.js +138 -0
  94. package/dist/ejs/builders/device-browser.js +69 -0
  95. package/dist/ejs/builders/device-node.js +57 -0
  96. package/dist/ejs/builders/device.js +2 -0
  97. package/dist/ejs/builders/events-anonymous-browser.js +1 -0
  98. package/dist/ejs/builders/events-anonymous-node.js +48 -0
  99. package/dist/ejs/builders/events-anonymous.js +1 -0
  100. package/dist/ejs/builders/events-browser.js +1 -0
  101. package/dist/ejs/builders/events-node.js +84 -0
  102. package/dist/ejs/builders/events.js +1 -0
  103. package/dist/ejs/builders/experimentMetadata.js +21 -0
  104. package/dist/ejs/builders/experiments.js +27 -0
  105. package/dist/ejs/builders/index.js +12 -0
  106. package/dist/ejs/builders/location.js +34 -0
  107. package/dist/ejs/builders/objects/objects-anonymous-browser.js +14 -0
  108. package/dist/ejs/builders/objects/objects-anonymous-node.js +90 -0
  109. package/dist/ejs/builders/objects/objects-anonymous.js +2 -0
  110. package/dist/ejs/builders/objects/objects-browser.js +14 -0
  111. package/dist/ejs/builders/objects/objects-node.js +121 -0
  112. package/dist/ejs/builders/objects/objects.js +2 -0
  113. package/dist/ejs/builders/objects/utils.js +20 -0
  114. package/dist/ejs/builders/origin-browser.js +6 -0
  115. package/dist/ejs/builders/origin-node.js +24 -0
  116. package/dist/ejs/builders/origin.js +2 -0
  117. package/dist/ejs/builders/provider.js +18 -0
  118. package/dist/ejs/builders/session-browser.js +90 -0
  119. package/dist/ejs/builders/session-node.js +4 -0
  120. package/dist/ejs/builders/session.js +2 -0
  121. package/dist/ejs/builders/tracker-browser.js +13 -0
  122. package/dist/ejs/builders/tracker-node.js +14 -0
  123. package/dist/ejs/builders/trackerBuilder.js +2 -0
  124. package/dist/ejs/config-browser.js +23 -0
  125. package/dist/ejs/config.js +6 -0
  126. package/dist/ejs/createPulseTracker.js +44 -0
  127. package/dist/ejs/defer.js +17 -0
  128. package/dist/ejs/getPulseTracker.js +71 -0
  129. package/dist/ejs/identity/actor.js +51 -0
  130. package/dist/ejs/identity/advertising.js +57 -0
  131. package/dist/ejs/identity/cis.js +58 -0
  132. package/dist/ejs/identity/device.js +17 -0
  133. package/dist/ejs/identity/index.js +4 -0
  134. package/dist/ejs/index.js +9 -0
  135. package/dist/ejs/leaveTracking/constants.js +19 -0
  136. package/dist/ejs/leaveTracking/index.js +319 -0
  137. package/dist/ejs/leaveTracking/types.js +16 -0
  138. package/dist/ejs/leaveTrackingTpaas/constants.js +13 -0
  139. package/dist/ejs/leaveTrackingTpaas/index.js +291 -0
  140. package/dist/ejs/leaveTrackingTpaas/types.js +16 -0
  141. package/dist/ejs/network-browser.js +32 -0
  142. package/dist/ejs/network.js +12 -0
  143. package/dist/ejs/remoteConfig/index.js +111 -0
  144. package/dist/ejs/tracker-proxy/consts.js +68 -0
  145. package/dist/ejs/tracker-proxy/proxy-provider.js +62 -0
  146. package/dist/ejs/types.js +1 -0
  147. package/dist/ejs/version.json +1 -0
  148. package/dist/ejs/visibility-observer/index.js +97 -0
  149. package/dist/ejs/warnOnce.js +9 -0
  150. package/dist/ejs/wrapper/engagement/ui-element/event-builder.js +17 -0
  151. package/dist/ejs/wrapper/engagement/ui-element/types.js +1 -0
  152. package/dist/ejs/wrapper/types/base-event.js +1 -0
  153. package/dist/ejs/wrapper/types/engagement-event.js +1 -0
  154. package/dist/ejs/wrapper/types/event.js +1 -0
  155. package/dist/ejs/wrapper/types/index.js +3 -0
  156. package/dist/ejs/wrapper/types/utils.js +1 -0
  157. package/dist/ejs/wrapper/utils/get-navigation-type.js +29 -0
  158. package/dist/ejs/wrapper/utils/page-from-page-view.js +6 -0
  159. package/dist/ejs/wrapper/view/article/event-builder.js +15 -0
  160. package/dist/ejs/wrapper/view/article/types.js +1 -0
  161. package/dist/ejs/wrapper/view/frontpage/event-builder.js +12 -0
  162. package/dist/ejs/wrapper/view/frontpage/types.js +1 -0
  163. package/dist/ejs/wrapper/view/listing/event-builder.js +10 -0
  164. package/dist/ejs/wrapper/view/listing/types.js +1 -0
  165. package/dist/ejs/wrapper/view/loginposter/event-builder.js +7 -0
  166. package/dist/ejs/wrapper/view/loginposter/types.js +1 -0
  167. package/dist/ejs/wrapper/view/page/event-builder.js +14 -0
  168. package/dist/ejs/wrapper/view/page/types.js +1 -0
  169. package/dist/ejs/wrapper/view/salesposter/event-builder.js +14 -0
  170. package/dist/ejs/wrapper/view/salesposter/types.js +1 -0
  171. package/dist/ejs/wrapper/view/ui-element/event-builder.js +11 -0
  172. package/dist/ejs/wrapper/view/ui-element/types.js +1 -0
  173. package/dist/types/EventBus/EventBus.d.ts +106 -0
  174. package/dist/types/Tracker.d.ts +1418 -0
  175. package/dist/types/Tracker.test-d.d.ts +1 -0
  176. package/dist/types/app-integration.d.ts +10 -0
  177. package/dist/types/builders/actor.d.ts +39 -0
  178. package/dist/types/builders/consent-manager.d.ts +49 -0
  179. package/dist/types/builders/consents.d.ts +107 -0
  180. package/dist/types/builders/device-browser.d.ts +6 -0
  181. package/dist/types/builders/device-node.d.ts +65 -0
  182. package/dist/types/builders/device.d.ts +2 -0
  183. package/dist/types/builders/events-anonymous-browser.d.ts +1 -0
  184. package/dist/types/builders/events-anonymous-node.d.ts +82 -0
  185. package/dist/types/builders/events-anonymous.d.ts +1 -0
  186. package/dist/types/builders/events-browser.d.ts +1 -0
  187. package/dist/types/builders/events-node.d.ts +130 -0
  188. package/dist/types/builders/events.d.ts +1 -0
  189. package/dist/types/builders/experimentMetadata.d.ts +25 -0
  190. package/dist/types/builders/experiments.d.ts +24 -0
  191. package/dist/types/builders/index.d.ts +23 -0
  192. package/dist/types/builders/location.d.ts +34 -0
  193. package/dist/types/builders/objects/objects-anonymous-browser.d.ts +11 -0
  194. package/dist/types/builders/objects/objects-anonymous-node.d.ts +52 -0
  195. package/dist/types/builders/objects/objects-anonymous.d.ts +2 -0
  196. package/dist/types/builders/objects/objects-browser.d.ts +11 -0
  197. package/dist/types/builders/objects/objects-node.d.ts +60 -0
  198. package/dist/types/builders/objects/objects.d.ts +2 -0
  199. package/dist/types/builders/objects/utils.d.ts +1 -0
  200. package/dist/types/builders/origin-browser.d.ts +5 -0
  201. package/dist/types/builders/origin-node.d.ts +18 -0
  202. package/dist/types/builders/origin.d.ts +2 -0
  203. package/dist/types/builders/provider.d.ts +14 -0
  204. package/dist/types/builders/session-browser.d.ts +20 -0
  205. package/dist/types/builders/session-node.d.ts +3 -0
  206. package/dist/types/builders/session.d.ts +2 -0
  207. package/dist/types/builders/tracker-browser.d.ts +2 -0
  208. package/dist/types/builders/tracker-node.d.ts +14 -0
  209. package/dist/types/builders/trackerBuilder.d.ts +2 -0
  210. package/dist/types/config-browser.d.ts +23 -0
  211. package/dist/types/config.d.ts +6 -0
  212. package/dist/types/createPulseTracker.d.ts +21 -0
  213. package/dist/types/defer.d.ts +28 -0
  214. package/dist/types/getPulseTracker.d.ts +59 -0
  215. package/dist/types/identity/actor.d.ts +28 -0
  216. package/dist/types/identity/advertising.d.ts +30 -0
  217. package/dist/types/identity/cis.d.ts +21 -0
  218. package/dist/types/identity/device.d.ts +12 -0
  219. package/dist/types/identity/index.d.ts +4 -0
  220. package/dist/types/index.d.ts +31 -0
  221. package/dist/types/leaveTracking/constants.d.ts +26 -0
  222. package/dist/types/leaveTracking/index.d.ts +23 -0
  223. package/dist/types/leaveTracking/types.d.ts +78 -0
  224. package/dist/types/leaveTrackingTpaas/constants.d.ts +13 -0
  225. package/dist/types/leaveTrackingTpaas/index.d.ts +28 -0
  226. package/dist/types/leaveTrackingTpaas/types.d.ts +45 -0
  227. package/dist/types/network-browser.d.ts +5 -0
  228. package/dist/types/network.d.ts +4 -0
  229. package/dist/types/remoteConfig/index.d.ts +32 -0
  230. package/dist/types/tracker-proxy/consts.d.ts +45 -0
  231. package/dist/types/tracker-proxy/proxy-provider.d.ts +2 -0
  232. package/dist/types/types.d.ts +93 -0
  233. package/dist/types/visibility-observer/index.d.ts +38 -0
  234. package/dist/types/warnOnce.d.ts +2 -0
  235. package/dist/types/wrapper/engagement/ui-element/event-builder.d.ts +3 -0
  236. package/dist/types/wrapper/engagement/ui-element/types.d.ts +29 -0
  237. package/dist/types/wrapper/types/base-event.d.ts +74 -0
  238. package/dist/types/wrapper/types/engagement-event.d.ts +5 -0
  239. package/dist/types/wrapper/types/event.d.ts +41 -0
  240. package/dist/types/wrapper/types/index.d.ts +3 -0
  241. package/dist/types/wrapper/types/utils.d.ts +5 -0
  242. package/dist/types/wrapper/utils/get-navigation-type.d.ts +3 -0
  243. package/dist/types/wrapper/utils/page-from-page-view.d.ts +3 -0
  244. package/dist/types/wrapper/view/article/event-builder.d.ts +2 -0
  245. package/dist/types/wrapper/view/article/types.d.ts +27 -0
  246. package/dist/types/wrapper/view/frontpage/event-builder.d.ts +2 -0
  247. package/dist/types/wrapper/view/frontpage/types.d.ts +18 -0
  248. package/dist/types/wrapper/view/listing/event-builder.d.ts +2 -0
  249. package/dist/types/wrapper/view/listing/types.d.ts +27 -0
  250. package/dist/types/wrapper/view/loginposter/event-builder.d.ts +2 -0
  251. package/dist/types/wrapper/view/loginposter/types.d.ts +14 -0
  252. package/dist/types/wrapper/view/page/event-builder.d.ts +2 -0
  253. package/dist/types/wrapper/view/page/types.d.ts +16 -0
  254. package/dist/types/wrapper/view/salesposter/event-builder.d.ts +2 -0
  255. package/dist/types/wrapper/view/salesposter/types.d.ts +15 -0
  256. package/dist/types/wrapper/view/ui-element/event-builder.d.ts +3 -0
  257. package/dist/types/wrapper/view/ui-element/types.d.ts +28 -0
  258. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.d.ts +26 -0
  259. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js +273 -0
  260. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js.map +1 -0
  261. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.d.ts +10 -0
  262. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.js +7 -0
  263. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.js.map +1 -0
  264. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.d.ts +14 -0
  265. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js +39 -0
  266. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js.map +1 -0
  267. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.d.ts +4 -0
  268. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.js +12 -0
  269. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.js.map +1 -0
  270. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.d.ts +55 -0
  271. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.js +276 -0
  272. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.js.map +1 -0
  273. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.d.ts +36 -0
  274. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.js +87 -0
  275. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.js.map +1 -0
  276. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.d.ts +6 -0
  277. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js +21 -0
  278. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js.map +1 -0
  279. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.d.ts +24 -0
  280. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.js +3 -0
  281. package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.js.map +1 -0
  282. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.d.ts +26 -0
  283. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.js +203 -0
  284. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.js.map +1 -0
  285. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.d.ts +10 -0
  286. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.js +4 -0
  287. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.js.map +1 -0
  288. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.d.ts +14 -0
  289. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.js +35 -0
  290. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.js.map +1 -0
  291. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.d.ts +4 -0
  292. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.js +3 -0
  293. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.js.map +1 -0
  294. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.d.ts +55 -0
  295. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.js +254 -0
  296. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.js.map +1 -0
  297. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.d.ts +36 -0
  298. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.js +50 -0
  299. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.js.map +1 -0
  300. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.d.ts +6 -0
  301. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.js +17 -0
  302. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.js.map +1 -0
  303. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.d.ts +24 -0
  304. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js +2 -0
  305. package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js.map +1 -0
  306. package/node_modules/@schibsted/pulse-cis-sync/dist/types/cis-browser.d.ts +26 -0
  307. package/node_modules/@schibsted/pulse-cis-sync/dist/types/cis.d.ts +10 -0
  308. package/node_modules/@schibsted/pulse-cis-sync/dist/types/eventEmitter.d.ts +14 -0
  309. package/node_modules/@schibsted/pulse-cis-sync/dist/types/index.d.ts +4 -0
  310. package/node_modules/@schibsted/pulse-cis-sync/dist/types/pulse-cookie.d.ts +55 -0
  311. package/node_modules/@schibsted/pulse-cis-sync/dist/types/storage/pulseStorage.d.ts +36 -0
  312. package/node_modules/@schibsted/pulse-cis-sync/dist/types/storage/storage.d.ts +6 -0
  313. package/node_modules/@schibsted/pulse-cis-sync/dist/types/types.d.ts +24 -0
  314. package/node_modules/@schibsted/pulse-cis-sync/package.json +44 -0
  315. package/node_modules/@schibsted/pulse-utils/dist/cjs/cookie-config.js +10 -0
  316. package/node_modules/@schibsted/pulse-utils/dist/cjs/cookie.js +86 -0
  317. package/node_modules/@schibsted/pulse-utils/dist/cjs/events.js +109 -0
  318. package/node_modules/@schibsted/pulse-utils/dist/cjs/get.js +18 -0
  319. package/node_modules/@schibsted/pulse-utils/dist/cjs/getRootDomain.js +54 -0
  320. package/node_modules/@schibsted/pulse-utils/dist/cjs/index.js +38 -0
  321. package/node_modules/@schibsted/pulse-utils/dist/cjs/merge.js +38 -0
  322. package/node_modules/@schibsted/pulse-utils/dist/cjs/objects.js +34 -0
  323. package/node_modules/@schibsted/pulse-utils/dist/cjs/omit.js +9 -0
  324. package/node_modules/@schibsted/pulse-utils/dist/cjs/randomString.js +18 -0
  325. package/node_modules/@schibsted/pulse-utils/dist/cjs/throttle.js +34 -0
  326. package/node_modules/@schibsted/pulse-utils/dist/cjs/webApi.js +21 -0
  327. package/node_modules/@schibsted/pulse-utils/dist/ejs/cookie-config.js +7 -0
  328. package/node_modules/@schibsted/pulse-utils/dist/ejs/cookie.js +81 -0
  329. package/node_modules/@schibsted/pulse-utils/dist/ejs/events.js +103 -0
  330. package/node_modules/@schibsted/pulse-utils/dist/ejs/get.js +15 -0
  331. package/node_modules/@schibsted/pulse-utils/dist/ejs/getRootDomain.js +49 -0
  332. package/node_modules/@schibsted/pulse-utils/dist/ejs/index.js +11 -0
  333. package/node_modules/@schibsted/pulse-utils/dist/ejs/merge.js +35 -0
  334. package/node_modules/@schibsted/pulse-utils/dist/ejs/objects.js +26 -0
  335. package/node_modules/@schibsted/pulse-utils/dist/ejs/omit.js +6 -0
  336. package/node_modules/@schibsted/pulse-utils/dist/ejs/randomString.js +15 -0
  337. package/node_modules/@schibsted/pulse-utils/dist/ejs/throttle.js +31 -0
  338. package/node_modules/@schibsted/pulse-utils/dist/ejs/webApi.js +17 -0
  339. package/node_modules/@schibsted/pulse-utils/dist/types/cookie-config.d.ts +7 -0
  340. package/node_modules/@schibsted/pulse-utils/dist/types/cookie.d.ts +23 -0
  341. package/node_modules/@schibsted/pulse-utils/dist/types/events.d.ts +17 -0
  342. package/node_modules/@schibsted/pulse-utils/dist/types/get.d.ts +1 -0
  343. package/node_modules/@schibsted/pulse-utils/dist/types/getRootDomain.d.ts +13 -0
  344. package/node_modules/@schibsted/pulse-utils/dist/types/index.d.ts +11 -0
  345. package/node_modules/@schibsted/pulse-utils/dist/types/merge.d.ts +4 -0
  346. package/node_modules/@schibsted/pulse-utils/dist/types/objects.d.ts +6 -0
  347. package/node_modules/@schibsted/pulse-utils/dist/types/omit.d.ts +3 -0
  348. package/node_modules/@schibsted/pulse-utils/dist/types/randomString.d.ts +1 -0
  349. package/node_modules/@schibsted/pulse-utils/dist/types/throttle.d.ts +3 -0
  350. package/node_modules/@schibsted/pulse-utils/dist/types/webApi.d.ts +10 -0
  351. package/node_modules/@schibsted/pulse-utils/package.json +36 -0
  352. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/anonymous.js +8 -0
  353. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/baseEvent.js +9 -0
  354. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/consents.js +15 -0
  355. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/device.js +211 -0
  356. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/experiments.js +11 -0
  357. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/navigationType.js +52 -0
  358. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/pageInfo.js +24 -0
  359. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/pageviewId.js +11 -0
  360. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/provider.js +12 -0
  361. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/referrer.js +19 -0
  362. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/session.js +114 -0
  363. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/time.js +15 -0
  364. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/trackerBuilder.js +15 -0
  365. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/user.js +26 -0
  366. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/utm.js +35 -0
  367. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders.js +264 -0
  368. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/index.js +17 -0
  369. package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/types.js +2 -0
  370. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/anonymous.js +5 -0
  371. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/baseEvent.js +6 -0
  372. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/consents.js +12 -0
  373. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/device.js +174 -0
  374. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/experiments.js +7 -0
  375. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/navigationType.js +48 -0
  376. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/pageInfo.js +20 -0
  377. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/pageviewId.js +7 -0
  378. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/provider.js +9 -0
  379. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/referrer.js +15 -0
  380. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/session.js +108 -0
  381. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/time.js +11 -0
  382. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/trackerBuilder.js +11 -0
  383. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/user.js +22 -0
  384. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/utm.js +31 -0
  385. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders.js +209 -0
  386. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/index.js +1 -0
  387. package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/types.js +1 -0
  388. package/node_modules/@schibsted/tpaas-event-builder/dist/index.d.ts +5171 -0
  389. package/node_modules/@schibsted/tpaas-event-builder/package.json +40 -0
  390. package/node_modules/@schibsted/tpaas-schemas/dist/cjs/constants.js +62 -1
  391. package/node_modules/@schibsted/tpaas-schemas/dist/ejs/constants.js +61 -0
  392. package/node_modules/@schibsted/tpaas-schemas/dist/index.d.ts +128 -0
  393. package/package.json +58 -13
  394. package/CHANGELOG.md +0 -1035
  395. package/dist/index.d.ts +0 -13
  396. package/dist/index.d.ts.map +0 -1
  397. package/dist/index.js +0 -47
  398. package/dist/index.js.map +0 -1
@@ -0,0 +1,276 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.CisSyncReason = exports.eventEmitter = void 0;
18
+ exports.cacheOldEnvironmentId = cacheOldEnvironmentId;
19
+ exports.parsePulseCookies = parsePulseCookies;
20
+ exports.serializePulseCookie = serializePulseCookie;
21
+ exports.clearCookieAdvertisingIds = clearCookieAdvertisingIds;
22
+ exports.clearCookieJweIfStale = clearCookieJweIfStale;
23
+ exports.resetRefreshAfter = resetRefreshAfter;
24
+ exports.getSyncState = getSyncState;
25
+ var pulse_utils_1 = require("@schibsted/pulse-utils");
26
+ var eventEmitter_1 = __importDefault(require("./eventEmitter"));
27
+ var pulseStorage_1 = __importDefault(require("./storage/pulseStorage"));
28
+ var PULSE_COOKIE_KEY = pulse_utils_1.cookieConfig.PULSE_COOKIE_KEY, ENV_COOKIE_KEY = pulse_utils_1.cookieConfig.ENV_COOKIE_KEY;
29
+ var CIS_POLL_INTERVAL = 900000; // 15 minutes
30
+ /**
31
+ * Responsible for subscribing to, and emitting events.
32
+ */
33
+ exports.eventEmitter = new eventEmitter_1.default();
34
+ function cacheOldEnvironmentId(id) {
35
+ try {
36
+ var envCookie = '';
37
+ var oldIds_1 = {};
38
+ try {
39
+ envCookie = (0, pulse_utils_1.readCookie)(ENV_COOKIE_KEY);
40
+ }
41
+ catch (_e) { }
42
+ try {
43
+ oldIds_1 = envCookie ? JSON.parse(envCookie) : [];
44
+ }
45
+ catch (_e) { }
46
+ oldIds_1[id] = Date.now();
47
+ var idsToCache = Object.keys(oldIds_1)
48
+ .map(function (envId) { return ({ id: envId, date: oldIds_1[envId] }); })
49
+ .sort(function (o) { return o.date; })
50
+ .slice(0, 5)
51
+ // biome-ignore lint/performance/noAccumulatingSpread: -
52
+ .reduce(function (accl, o) {
53
+ var _a;
54
+ return (__assign(__assign({}, accl), (_a = {}, _a[o.id] = o.date, _a)));
55
+ }, {});
56
+ (0, pulse_utils_1.writeCookie)(ENV_COOKIE_KEY, JSON.stringify(idsToCache), (0, pulse_utils_1.getRootDomain)(), 365);
57
+ }
58
+ catch (_e) { }
59
+ }
60
+ function parsePulseCookies(cookie) {
61
+ if (cookie === void 0) { cookie = (0, pulse_utils_1.readCookie)(PULSE_COOKIE_KEY); }
62
+ var values = decodeURIComponent(cookie).split(',');
63
+ // Cookie is in an unknown, possibly old format. Will be ignored.
64
+ if (values.length !== 10) {
65
+ values = [];
66
+ }
67
+ var altEnvCookie = (0, pulse_utils_1.readCookie)(ENV_COOKIE_KEY);
68
+ var altEnvIds;
69
+ if (altEnvIds) {
70
+ try {
71
+ altEnvIds = JSON.parse(altEnvCookie);
72
+ }
73
+ catch (_e) {
74
+ altEnvIds = undefined;
75
+ }
76
+ }
77
+ var ppId = pulseStorage_1.default.getPPIDsFromStorage();
78
+ var cisCache = pulseStorage_1.default.getCisCacheFromStorage();
79
+ return {
80
+ environmentId: values[0],
81
+ prevUserId: values[2] ? values[2] : undefined,
82
+ refreshAfterTimestamp: values[3] ? Number.parseInt(values[3], 10) : undefined,
83
+ jwe: values[4],
84
+ anId: undefined,
85
+ syncWithAppNexus: 0,
86
+ doTracking: true,
87
+ pixelInjected: values[8] ? values[8] === 'true' : undefined,
88
+ adId: values[9],
89
+ altEnvIds: altEnvIds,
90
+ visitorIdPlaceholder: values[1],
91
+ ppId: ppId,
92
+ includeAdvertising: cisCache === null || cisCache === void 0 ? void 0 : cisCache.includeAdvertising,
93
+ };
94
+ }
95
+ function serializePulseCookie(input) {
96
+ var _a = input || {}, _b = _a.environmentId, environmentId = _b === void 0 ? '' : _b, _c = _a.prevUserId, prevUserId = _c === void 0 ? '' : _c, _d = _a.jwe, jwe = _d === void 0 ? '' : _d, _f = _a.pixelInjected, pixelInjected = _f === void 0 ? '' : _f, _g = _a.adId, adId = _g === void 0 ? '' : _g, _h = _a.visitorIdPlaceholder, visitorIdPlaceholder = _h === void 0 ? 'v' : _h, _j = _a.ppId, ppId = _j === void 0 ? {} : _j, refreshAfterTimestamp = _a.refreshAfterTimestamp, includeAdvertising = _a.includeAdvertising;
97
+ var now = Date.now();
98
+ var refreshCisAfterTimestamp = refreshAfterTimestamp || new Date(now + CIS_POLL_INTERVAL).getTime();
99
+ var cookieString = [
100
+ environmentId,
101
+ visitorIdPlaceholder,
102
+ prevUserId,
103
+ refreshCisAfterTimestamp,
104
+ jwe,
105
+ '', // anId: not used anymore, but required for cookie payload validity
106
+ 0, // syncWithAppNexus: not used anymore, but required for cookie payload validity
107
+ true, // doTracking: not used anymore, but required for cookie payload validity
108
+ pixelInjected,
109
+ adId,
110
+ ].join(',');
111
+ pulseStorage_1.default.setPPIDsToStorage(ppId);
112
+ pulseStorage_1.default.setCisCacheToStorage({ includeAdvertising: includeAdvertising });
113
+ (0, pulse_utils_1.writeCookie)(PULSE_COOKIE_KEY, cookieString, (0, pulse_utils_1.getRootDomain)(), 2 * 365);
114
+ exports.eventEmitter.emit('environmentIdSet', environmentId);
115
+ exports.eventEmitter.emit('jweSet', jwe);
116
+ }
117
+ var CisSyncReason;
118
+ (function (CisSyncReason) {
119
+ CisSyncReason["Initialise"] = "initialise";
120
+ CisSyncReason["Login"] = "login";
121
+ CisSyncReason["Logout"] = "logout";
122
+ CisSyncReason["Refresh"] = "refresh";
123
+ CisSyncReason["includeAdvertisingChange"] = "includeAdvertisingChange";
124
+ })(CisSyncReason || (exports.CisSyncReason = CisSyncReason = {}));
125
+ /**
126
+ * Clears all relevant advertisement identifiers from cookie storage, returning the new storage state
127
+ * @returns {PulseCookie}
128
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
129
+ */
130
+ function clearCookieAdvertisingIds() {
131
+ var cookieValues = __assign(__assign({}, parsePulseCookies()), { adId: '', anId: '', includeAdvertising: false, jwe: '', syncWithAppNexus: 0 });
132
+ serializePulseCookie(cookieValues);
133
+ return cookieValues;
134
+ }
135
+ /**
136
+ * Runs actions related to a new JWE, divergent from the one persisted in the browser storage
137
+ * @param jwe
138
+ *
139
+ * @privateRemarks
140
+ * if there is no jwe, or in other words, no nativeJwe was provided in config, no action will be taken. That's the
141
+ * behaviour with plain Web applications. The scenario not covered here is when we do have a hybrid app, and they don't
142
+ * send any nativeJwe in config.
143
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
144
+ */
145
+ function clearCookieJweIfStale(jwe) {
146
+ if (jwe === void 0) { jwe = ''; }
147
+ var currentJwe = parsePulseCookies().jwe;
148
+ if (jwe && currentJwe !== jwe) {
149
+ clearCookieAdvertisingIds();
150
+ }
151
+ }
152
+ /**
153
+ * Runs actions related to a new JWE, divergent from the one persisted in the browser storage
154
+ * @param refreshAfterDateTime
155
+ */
156
+ function resetRefreshAfter(refreshAfterDateTime) {
157
+ var cookieValues = __assign(__assign({}, parsePulseCookies()), { refreshAfterTimestamp: refreshAfterDateTime ? refreshAfterDateTime.getTime() : Date.now() });
158
+ serializePulseCookie(cookieValues);
159
+ return cookieValues;
160
+ }
161
+ /**
162
+ * Checks whether the login conditions are met.
163
+ * @param userId current user's id
164
+ * @param prevUserId previous user's id stored in the application
165
+ * @returns
166
+ */
167
+ var shouldLogin = function (userId, prevUserId) {
168
+ return Boolean(userId) && String(userId) !== String(prevUserId);
169
+ };
170
+ /**
171
+ * Checks whether the logout conditions are met.
172
+ * @param userId current user's id
173
+ * @param prevUserId previous user's id stored in the application
174
+ * @returns
175
+ */
176
+ var shouldLogout = function (userId, prevUserId) {
177
+ return !userId && String(userId) !== String(prevUserId);
178
+ };
179
+ /**
180
+ * Checks whether the refresh conditions are met.
181
+ * @param currentTimestamp now, expressed as timestamp in ms
182
+ * @param refreshAfterTimestamp threshold, expressed as timestamp in ms
183
+ */
184
+ var shouldRefresh = function (currentTimestamp, refreshAfterTimestamp) {
185
+ return refreshAfterTimestamp && currentTimestamp > refreshAfterTimestamp;
186
+ };
187
+ /**
188
+ * Checks whether privacy context for emitting Advertising Identifiers has changed.
189
+ * @param currentIncludeAdvertising cached value for includeAdvertising
190
+ * @param updatedIncludeAdvertising newly processed value for includeAdvertising
191
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
192
+ */
193
+ var shouldRefetchAdvertisingIdentifiers = function (currentIncludeAdvertising, updatedIncludeAdvertising) {
194
+ return currentIncludeAdvertising !== updatedIncludeAdvertising;
195
+ };
196
+ /**
197
+ * Checks whether the initialisation conditions are met.
198
+ * @param cookieInput a raw cookie input, expressing the stored state of the application
199
+ * @param currentCookie a parsed cookie
200
+ * @param includeAdvertising expresses whether advertising ids are expected in the stored state of the application
201
+ * @param vendors for which vendors the application is expecting advertising ids
202
+ */
203
+ var shouldInitialise = function (cookieInput, currentCookie, includeAdvertising, vendors) {
204
+ if (includeAdvertising === void 0) { includeAdvertising = false; }
205
+ if (vendors === void 0) { vendors = []; }
206
+ return (!cookieInput ||
207
+ cookieInput.indexOf('undefined') !== -1 || // 'undefined' should not be a value in the raw cookie. Treat as invalid.
208
+ !currentCookie.environmentId ||
209
+ !currentCookie.jwe ||
210
+ (includeAdvertising && vendors.length > 0 && Object.keys(currentCookie.ppId).length === 0));
211
+ };
212
+ /**
213
+ * Determines whether CIS should be called to update identity values.
214
+ * @param userId
215
+ * @param options
216
+ * @returns {SyncState}
217
+ */
218
+ function getSyncState(userId, options) {
219
+ if (options === void 0) { options = {}; }
220
+ var _a = options.cookie, cookieInput = _a === void 0 ? (0, pulse_utils_1.readCookie)(PULSE_COOKIE_KEY) : _a, includeAdvertising = options.includeAdvertising, vendors = options.vendors;
221
+ var currentCookie = parsePulseCookies(cookieInput);
222
+ var currentTimestamp = Date.now();
223
+ /*
224
+ * This case only handles login. For example when we don't necessarily have an event (tracker.update({actor: ...})
225
+ * might or might not have been called), then we only want to sync if we DO have a userId, and if that userId is not
226
+ * in our cookie.
227
+ * Blocking call on login/new user to get opt out status and on logout, as SPAs rely on that state to be accurate
228
+ * on all PPID methods after updates.
229
+ */
230
+ if (shouldLogin(userId, currentCookie.prevUserId)) {
231
+ return {
232
+ syncWithCis: true,
233
+ waitForCis: true,
234
+ syncWithCisReason: CisSyncReason.Login,
235
+ };
236
+ }
237
+ /*
238
+ * Blocking call on login/new user to get opt out status and on logout, as SPAs rely on that state to be accurate
239
+ * on all PPID methods after updates.
240
+ */
241
+ if (shouldLogout(userId, currentCookie.prevUserId)) {
242
+ return {
243
+ syncWithCis: true,
244
+ waitForCis: true,
245
+ syncWithCisReason: CisSyncReason.Logout,
246
+ };
247
+ }
248
+ /*
249
+ * Blocking call on login/new user to get opt out status, non-blocking call on logout to get a new JWE.
250
+ */
251
+ if (shouldRefresh(currentTimestamp, currentCookie.refreshAfterTimestamp)) {
252
+ return {
253
+ syncWithCis: true,
254
+ waitForCis: true,
255
+ syncWithCisReason: CisSyncReason.Refresh,
256
+ };
257
+ }
258
+ if (shouldInitialise(cookieInput, currentCookie, includeAdvertising, vendors)) {
259
+ return {
260
+ syncWithCis: true,
261
+ waitForCis: true,
262
+ syncWithCisReason: CisSyncReason.Initialise,
263
+ };
264
+ }
265
+ if (shouldRefetchAdvertisingIdentifiers(currentCookie.includeAdvertising, includeAdvertising)) {
266
+ return {
267
+ syncWithCis: true,
268
+ waitForCis: true,
269
+ syncWithCisReason: CisSyncReason.includeAdvertisingChange,
270
+ };
271
+ }
272
+ return {
273
+ syncWithCis: false,
274
+ };
275
+ }
276
+ //# sourceMappingURL=pulse-cookie.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pulse-cookie.js","sourceRoot":"","sources":["../../src/pulse-cookie.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { AdvertisingIdentifiers, PPIDsByVendor } from '../types';
2
+ export type PulseCookie = {
3
+ environmentId: string;
4
+ prevUserId?: string;
5
+ refreshAfterTimestamp?: number;
6
+ jwe: string;
7
+ anId?: string;
8
+ syncWithAppNexus?: number;
9
+ doTracking?: boolean;
10
+ pixelInjected?: boolean;
11
+ adId: string;
12
+ altEnvIds?: string[];
13
+ visitorIdPlaceholder?: string;
14
+ };
15
+ type PPID = {
16
+ ppId: PPIDsByVendor;
17
+ };
18
+ /**
19
+ * Defines properties from the CIS response that are persisted as state/cache in the browser.
20
+ *
21
+ * @privateRemarks
22
+ * Only "includeAdvertising" is considered now for this increment. Some work needs to be done to redefine the role of
23
+ * "_pulse2data" cookie, and the impact of caching more things to "avoid state mismatch between components" (namely CIS,
24
+ * PulseSDK, SchibstedAccount and CMP).
25
+ */
26
+ export type CisCache = {
27
+ includeAdvertising?: boolean;
28
+ };
29
+ export type PulseStorage = PulseCookie & PPID & CisCache;
30
+ declare const _default: {
31
+ getCisCacheFromStorage: () => CisCache;
32
+ setCisCacheToStorage: (cisPayload: CisCache) => boolean;
33
+ getPPIDsFromStorage: () => AdvertisingIdentifiers;
34
+ setPPIDsToStorage: (ppid: AdvertisingIdentifiers) => boolean;
35
+ };
36
+ export default _default;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ var storage = __importStar(require("./storage"));
37
+ var pulseStorageKeys = {
38
+ PULSE_PPID_STORAGE_KEY: '_pulse.internal.identity.ppid',
39
+ PULSE_CIS_CACHE_STORAGE_KEY: '_pulse.internal.identity.cis',
40
+ };
41
+ var getPPIDsFromStorage = function () {
42
+ var _a;
43
+ try {
44
+ var webStorage = storage.getStorage();
45
+ return JSON.parse((_a = webStorage.getItem(pulseStorageKeys.PULSE_PPID_STORAGE_KEY)) !== null && _a !== void 0 ? _a : '');
46
+ }
47
+ catch (_err) {
48
+ return {};
49
+ }
50
+ };
51
+ var setPPIDsToStorage = function (ppid) {
52
+ try {
53
+ var webStorage = storage.getStorage();
54
+ webStorage.setItem(pulseStorageKeys.PULSE_PPID_STORAGE_KEY, JSON.stringify(ppid));
55
+ return true;
56
+ }
57
+ catch (_err) {
58
+ return false;
59
+ }
60
+ };
61
+ var getCisCacheFromStorage = function () {
62
+ var _a;
63
+ try {
64
+ var webStorage = storage.getStorage();
65
+ return JSON.parse((_a = webStorage.getItem(pulseStorageKeys.PULSE_CIS_CACHE_STORAGE_KEY)) !== null && _a !== void 0 ? _a : '');
66
+ }
67
+ catch (_err) {
68
+ return {};
69
+ }
70
+ };
71
+ var setCisCacheToStorage = function (cisPayload) {
72
+ try {
73
+ var webStorage = storage.getStorage();
74
+ webStorage.setItem(pulseStorageKeys.PULSE_CIS_CACHE_STORAGE_KEY, JSON.stringify(cisPayload));
75
+ return true;
76
+ }
77
+ catch (_err) {
78
+ return false;
79
+ }
80
+ };
81
+ exports.default = {
82
+ getCisCacheFromStorage: getCisCacheFromStorage,
83
+ setCisCacheToStorage: setCisCacheToStorage,
84
+ getPPIDsFromStorage: getPPIDsFromStorage,
85
+ setPPIDsToStorage: setPPIDsToStorage,
86
+ };
87
+ //# sourceMappingURL=pulseStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pulseStorage.js","sourceRoot":"","sources":["../../../src/storage/pulseStorage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAAqC;AAkCrC,IAAM,gBAAgB,GAAG;IACvB,sBAAsB,EAAE,+BAA+B;IACvD,2BAA2B,EAAE,8BAA8B;CAC5D,CAAC;AAEF,IAAM,mBAAmB,GAAG;;IAC1B,IAAI,CAAC;QACH,IAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAA,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,mCAAI,EAAE,CAAC,CAAC;IACvF,CAAC;IAAC,OAAO,IAAI,EAAE,CAAC;QACd,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC,CAAC;AAEF,IAAM,iBAAiB,GAAG,UAAC,IAA4B;IACrD,IAAI,CAAC;QACH,IAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACxC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,IAAI,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,IAAM,sBAAsB,GAAG;;IAC7B,IAAI,CAAC;QACH,IAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAA,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,mCAAI,EAAE,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,IAAI,EAAE,CAAC;QACd,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC,CAAC;AAEF,IAAM,oBAAoB,GAAG,UAAC,UAAoB;IAChD,IAAI,CAAC;QACH,IAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACxC,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAC7F,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,IAAI,EAAE,CAAC;QACd,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,kBAAe;IACb,sBAAsB,wBAAA;IACtB,oBAAoB,sBAAA;IACpB,mBAAmB,qBAAA;IACnB,iBAAiB,mBAAA;CAClB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type StorageType } from '@schibsted/pulse-utils';
2
+ declare const getStorage: (storageType?: StorageType) => {
3
+ getItem: (key: string) => string | null | undefined;
4
+ setItem: (key: string, value: string) => void;
5
+ };
6
+ export { getStorage };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getStorage = void 0;
4
+ var pulse_utils_1 = require("@schibsted/pulse-utils");
5
+ var getStorage = function (storageType) {
6
+ if (storageType === void 0) { storageType = 'localStorage'; }
7
+ var storage = pulse_utils_1.webApi[storageType];
8
+ var getItem = function (key) {
9
+ return pulse_utils_1.isBrowser && storage ? storage.getItem(key) : undefined;
10
+ };
11
+ var setItem = function (key, value) {
12
+ if (pulse_utils_1.isBrowser && storage)
13
+ storage.setItem(key, value);
14
+ };
15
+ return {
16
+ getItem: getItem,
17
+ setItem: setItem,
18
+ };
19
+ };
20
+ exports.getStorage = getStorage;
21
+ //# sourceMappingURL=storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/storage/storage.ts"],"names":[],"mappings":";;;AAAA,sDAA6E;AAE7E,IAAM,UAAU,GAAG,UAAC,WAAyC;IAAzC,4BAAA,EAAA,4BAAyC;IAC3D,IAAM,OAAO,GAAG,oBAAM,CAAC,WAAW,CAAC,CAAC;IAEpC,IAAM,OAAO,GAAG,UAAC,GAAW;QAC1B,OAAO,uBAAS,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,CAAC,CAAC;IAEF,IAAM,OAAO,GAAG,UAAC,GAAW,EAAE,KAAa;QACzC,IAAI,uBAAS,IAAI,OAAO;YAAE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC;IAEF,OAAO;QACL,OAAO,SAAA;QACP,OAAO,SAAA;KACR,CAAC;AACJ,CAAC,CAAC;AAEO,gCAAU"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
3
+ */
4
+ export type AdvertisingVendor = 'xandr' | 'delta' | 'adform' | (string & {});
5
+ /**
6
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
7
+ */
8
+ type PPIDs = {
9
+ ppId1?: string;
10
+ ppId2: string;
11
+ };
12
+ /**
13
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
14
+ */
15
+ export type PPIDsByVendor = Partial<Record<AdvertisingVendor, PPIDs>>;
16
+ /**
17
+ * @deprecated Advertising Identifiers methods will be removed in the next major version.
18
+ */
19
+ export type AdvertisingIdentifiers = PPIDsByVendor & {
20
+ xandr?: PPIDs & {
21
+ adId?: string;
22
+ };
23
+ };
24
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ import type { PulseStorage } from './storage/pulseStorage';
2
+ import type { AdvertisingVendor } from './types';
3
+ /**
4
+ * Sync with CIS
5
+ *
6
+ * This method deals with all communication and communication with dependent systems (currently AppNexus and Norstat).
7
+ *
8
+ * An optional user id should be provided if a tracker have received a logged in state. Providing a new user id
9
+ * (different from a previous user id, serialized to the pulse cookie) will cause a "blocking call" to CIS (the
10
+ * returned promise will not resolve before the communication is done). This is done because CIS could provide new data
11
+ * regarding opt-out.
12
+ *
13
+ * The returned promise will also be blocking if no pulse cookie is found. Pulse requires environmentIds generated
14
+ * server side so one have to wait to be allocated to one.
15
+ *
16
+ * In other context CIS could or could not be called but the returned promise will resolve immediately. If CIS have
17
+ * been called recently there is no point in calling it again. In a different case, if a refresh call to CIS is required
18
+ * it doesn't mean that other systems have to wait of it. Both cases will return a promise that resolves more or less
19
+ * immediately.
20
+ */
21
+ export declare function syncWithCis(shortUserId?: string, nativeJwe?: string, userServiceLocation?: string, realm?: string, clientId?: string, trackerType?: string, trackerVersion?: string, options?: {
22
+ forceSync: boolean;
23
+ includeAdvertising: boolean;
24
+ trackerId: string;
25
+ vendors?: AdvertisingVendor[];
26
+ }): Promise<PulseStorage>;