@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.
- package/dist/cjs/EventBus/EventBus.js +146 -0
- package/dist/cjs/Tracker.js +2499 -0
- package/dist/cjs/Tracker.test-d.js +76 -0
- package/dist/cjs/app-integration.js +40 -0
- package/dist/cjs/builders/actor.js +60 -0
- package/dist/cjs/builders/consent-manager.js +134 -0
- package/dist/cjs/builders/consents.js +149 -0
- package/dist/cjs/builders/device-browser.js +89 -0
- package/dist/cjs/builders/device-node.js +63 -0
- package/dist/cjs/builders/device.js +23 -0
- package/dist/cjs/builders/events-anonymous-browser.js +6 -0
- package/dist/cjs/builders/events-anonymous-node.js +88 -0
- package/dist/cjs/builders/events-anonymous.js +17 -0
- package/dist/cjs/builders/events-browser.js +8 -0
- package/dist/cjs/builders/events-node.js +127 -0
- package/dist/cjs/builders/events.js +17 -0
- package/dist/cjs/builders/experimentMetadata.js +25 -0
- package/dist/cjs/builders/experiments.js +32 -0
- package/dist/cjs/builders/index.js +52 -0
- package/dist/cjs/builders/location.js +38 -0
- package/dist/cjs/builders/objects/objects-anonymous-browser.js +36 -0
- package/dist/cjs/builders/objects/objects-anonymous-node.js +95 -0
- package/dist/cjs/builders/objects/objects-anonymous.js +23 -0
- package/dist/cjs/builders/objects/objects-browser.js +36 -0
- package/dist/cjs/builders/objects/objects-node.js +126 -0
- package/dist/cjs/builders/objects/objects.js +23 -0
- package/dist/cjs/builders/objects/utils.js +23 -0
- package/dist/cjs/builders/origin-browser.js +28 -0
- package/dist/cjs/builders/origin-node.js +29 -0
- package/dist/cjs/builders/origin.js +23 -0
- package/dist/cjs/builders/provider.js +24 -0
- package/dist/cjs/builders/session-browser.js +97 -0
- package/dist/cjs/builders/session-node.js +9 -0
- package/dist/cjs/builders/session.js +23 -0
- package/dist/cjs/builders/tracker-browser.js +34 -0
- package/dist/cjs/builders/tracker-node.js +22 -0
- package/dist/cjs/builders/trackerBuilder.js +23 -0
- package/dist/cjs/config-browser.js +26 -0
- package/dist/cjs/config.js +9 -0
- package/dist/cjs/createPulseTracker.js +50 -0
- package/dist/cjs/defer.js +20 -0
- package/dist/cjs/getPulseTracker.js +74 -0
- package/dist/cjs/identity/actor.js +60 -0
- package/dist/cjs/identity/advertising.js +62 -0
- package/dist/cjs/identity/cis.js +66 -0
- package/dist/cjs/identity/device.js +20 -0
- package/dist/cjs/identity/index.js +20 -0
- package/dist/cjs/index.js +57 -0
- package/dist/cjs/leaveTracking/constants.js +26 -0
- package/dist/cjs/leaveTracking/index.js +368 -0
- package/dist/cjs/leaveTracking/types.js +19 -0
- package/dist/cjs/leaveTrackingTpaas/constants.js +18 -0
- package/dist/cjs/leaveTrackingTpaas/index.js +341 -0
- package/dist/cjs/leaveTrackingTpaas/types.js +19 -0
- package/dist/cjs/network-browser.js +35 -0
- package/dist/cjs/network.js +15 -0
- package/dist/cjs/remoteConfig/index.js +124 -0
- package/dist/cjs/tracker-proxy/consts.js +72 -0
- package/dist/cjs/tracker-proxy/proxy-provider.js +68 -0
- package/dist/cjs/types.js +2 -0
- package/dist/cjs/version.json +1 -0
- package/dist/cjs/visibility-observer/index.js +101 -0
- package/dist/cjs/warnOnce.js +11 -0
- package/dist/cjs/wrapper/engagement/ui-element/event-builder.js +21 -0
- package/dist/cjs/wrapper/engagement/ui-element/types.js +2 -0
- package/dist/cjs/wrapper/types/base-event.js +2 -0
- package/dist/cjs/wrapper/types/engagement-event.js +2 -0
- package/dist/cjs/wrapper/types/event.js +2 -0
- package/dist/cjs/wrapper/types/index.js +19 -0
- package/dist/cjs/wrapper/types/utils.js +2 -0
- package/dist/cjs/wrapper/utils/get-navigation-type.js +32 -0
- package/dist/cjs/wrapper/utils/page-from-page-view.js +9 -0
- package/dist/cjs/wrapper/view/article/event-builder.js +19 -0
- package/dist/cjs/wrapper/view/article/types.js +2 -0
- package/dist/cjs/wrapper/view/frontpage/event-builder.js +16 -0
- package/dist/cjs/wrapper/view/frontpage/types.js +2 -0
- package/dist/cjs/wrapper/view/listing/event-builder.js +14 -0
- package/dist/cjs/wrapper/view/listing/types.js +2 -0
- package/dist/cjs/wrapper/view/loginposter/event-builder.js +11 -0
- package/dist/cjs/wrapper/view/loginposter/types.js +2 -0
- package/dist/cjs/wrapper/view/page/event-builder.js +18 -0
- package/dist/cjs/wrapper/view/page/types.js +2 -0
- package/dist/cjs/wrapper/view/salesposter/event-builder.js +18 -0
- package/dist/cjs/wrapper/view/salesposter/types.js +2 -0
- package/dist/cjs/wrapper/view/ui-element/event-builder.js +15 -0
- package/dist/cjs/wrapper/view/ui-element/types.js +2 -0
- package/dist/ejs/EventBus/EventBus.js +140 -0
- package/dist/ejs/Tracker.js +2455 -0
- package/dist/ejs/Tracker.test-d.js +71 -0
- package/dist/ejs/app-integration.js +33 -0
- package/dist/ejs/builders/actor.js +53 -0
- package/dist/ejs/builders/consent-manager.js +125 -0
- package/dist/ejs/builders/consents.js +138 -0
- package/dist/ejs/builders/device-browser.js +69 -0
- package/dist/ejs/builders/device-node.js +57 -0
- package/dist/ejs/builders/device.js +2 -0
- package/dist/ejs/builders/events-anonymous-browser.js +1 -0
- package/dist/ejs/builders/events-anonymous-node.js +48 -0
- package/dist/ejs/builders/events-anonymous.js +1 -0
- package/dist/ejs/builders/events-browser.js +1 -0
- package/dist/ejs/builders/events-node.js +84 -0
- package/dist/ejs/builders/events.js +1 -0
- package/dist/ejs/builders/experimentMetadata.js +21 -0
- package/dist/ejs/builders/experiments.js +27 -0
- package/dist/ejs/builders/index.js +12 -0
- package/dist/ejs/builders/location.js +34 -0
- package/dist/ejs/builders/objects/objects-anonymous-browser.js +14 -0
- package/dist/ejs/builders/objects/objects-anonymous-node.js +90 -0
- package/dist/ejs/builders/objects/objects-anonymous.js +2 -0
- package/dist/ejs/builders/objects/objects-browser.js +14 -0
- package/dist/ejs/builders/objects/objects-node.js +121 -0
- package/dist/ejs/builders/objects/objects.js +2 -0
- package/dist/ejs/builders/objects/utils.js +20 -0
- package/dist/ejs/builders/origin-browser.js +6 -0
- package/dist/ejs/builders/origin-node.js +24 -0
- package/dist/ejs/builders/origin.js +2 -0
- package/dist/ejs/builders/provider.js +18 -0
- package/dist/ejs/builders/session-browser.js +90 -0
- package/dist/ejs/builders/session-node.js +4 -0
- package/dist/ejs/builders/session.js +2 -0
- package/dist/ejs/builders/tracker-browser.js +13 -0
- package/dist/ejs/builders/tracker-node.js +14 -0
- package/dist/ejs/builders/trackerBuilder.js +2 -0
- package/dist/ejs/config-browser.js +23 -0
- package/dist/ejs/config.js +6 -0
- package/dist/ejs/createPulseTracker.js +44 -0
- package/dist/ejs/defer.js +17 -0
- package/dist/ejs/getPulseTracker.js +71 -0
- package/dist/ejs/identity/actor.js +51 -0
- package/dist/ejs/identity/advertising.js +57 -0
- package/dist/ejs/identity/cis.js +58 -0
- package/dist/ejs/identity/device.js +17 -0
- package/dist/ejs/identity/index.js +4 -0
- package/dist/ejs/index.js +9 -0
- package/dist/ejs/leaveTracking/constants.js +19 -0
- package/dist/ejs/leaveTracking/index.js +319 -0
- package/dist/ejs/leaveTracking/types.js +16 -0
- package/dist/ejs/leaveTrackingTpaas/constants.js +13 -0
- package/dist/ejs/leaveTrackingTpaas/index.js +291 -0
- package/dist/ejs/leaveTrackingTpaas/types.js +16 -0
- package/dist/ejs/network-browser.js +32 -0
- package/dist/ejs/network.js +12 -0
- package/dist/ejs/remoteConfig/index.js +111 -0
- package/dist/ejs/tracker-proxy/consts.js +68 -0
- package/dist/ejs/tracker-proxy/proxy-provider.js +62 -0
- package/dist/ejs/types.js +1 -0
- package/dist/ejs/version.json +1 -0
- package/dist/ejs/visibility-observer/index.js +97 -0
- package/dist/ejs/warnOnce.js +9 -0
- package/dist/ejs/wrapper/engagement/ui-element/event-builder.js +17 -0
- package/dist/ejs/wrapper/engagement/ui-element/types.js +1 -0
- package/dist/ejs/wrapper/types/base-event.js +1 -0
- package/dist/ejs/wrapper/types/engagement-event.js +1 -0
- package/dist/ejs/wrapper/types/event.js +1 -0
- package/dist/ejs/wrapper/types/index.js +3 -0
- package/dist/ejs/wrapper/types/utils.js +1 -0
- package/dist/ejs/wrapper/utils/get-navigation-type.js +29 -0
- package/dist/ejs/wrapper/utils/page-from-page-view.js +6 -0
- package/dist/ejs/wrapper/view/article/event-builder.js +15 -0
- package/dist/ejs/wrapper/view/article/types.js +1 -0
- package/dist/ejs/wrapper/view/frontpage/event-builder.js +12 -0
- package/dist/ejs/wrapper/view/frontpage/types.js +1 -0
- package/dist/ejs/wrapper/view/listing/event-builder.js +10 -0
- package/dist/ejs/wrapper/view/listing/types.js +1 -0
- package/dist/ejs/wrapper/view/loginposter/event-builder.js +7 -0
- package/dist/ejs/wrapper/view/loginposter/types.js +1 -0
- package/dist/ejs/wrapper/view/page/event-builder.js +14 -0
- package/dist/ejs/wrapper/view/page/types.js +1 -0
- package/dist/ejs/wrapper/view/salesposter/event-builder.js +14 -0
- package/dist/ejs/wrapper/view/salesposter/types.js +1 -0
- package/dist/ejs/wrapper/view/ui-element/event-builder.js +11 -0
- package/dist/ejs/wrapper/view/ui-element/types.js +1 -0
- package/dist/types/EventBus/EventBus.d.ts +106 -0
- package/dist/types/Tracker.d.ts +1418 -0
- package/dist/types/Tracker.test-d.d.ts +1 -0
- package/dist/types/app-integration.d.ts +10 -0
- package/dist/types/builders/actor.d.ts +39 -0
- package/dist/types/builders/consent-manager.d.ts +49 -0
- package/dist/types/builders/consents.d.ts +107 -0
- package/dist/types/builders/device-browser.d.ts +6 -0
- package/dist/types/builders/device-node.d.ts +65 -0
- package/dist/types/builders/device.d.ts +2 -0
- package/dist/types/builders/events-anonymous-browser.d.ts +1 -0
- package/dist/types/builders/events-anonymous-node.d.ts +82 -0
- package/dist/types/builders/events-anonymous.d.ts +1 -0
- package/dist/types/builders/events-browser.d.ts +1 -0
- package/dist/types/builders/events-node.d.ts +130 -0
- package/dist/types/builders/events.d.ts +1 -0
- package/dist/types/builders/experimentMetadata.d.ts +25 -0
- package/dist/types/builders/experiments.d.ts +24 -0
- package/dist/types/builders/index.d.ts +23 -0
- package/dist/types/builders/location.d.ts +34 -0
- package/dist/types/builders/objects/objects-anonymous-browser.d.ts +11 -0
- package/dist/types/builders/objects/objects-anonymous-node.d.ts +52 -0
- package/dist/types/builders/objects/objects-anonymous.d.ts +2 -0
- package/dist/types/builders/objects/objects-browser.d.ts +11 -0
- package/dist/types/builders/objects/objects-node.d.ts +60 -0
- package/dist/types/builders/objects/objects.d.ts +2 -0
- package/dist/types/builders/objects/utils.d.ts +1 -0
- package/dist/types/builders/origin-browser.d.ts +5 -0
- package/dist/types/builders/origin-node.d.ts +18 -0
- package/dist/types/builders/origin.d.ts +2 -0
- package/dist/types/builders/provider.d.ts +14 -0
- package/dist/types/builders/session-browser.d.ts +20 -0
- package/dist/types/builders/session-node.d.ts +3 -0
- package/dist/types/builders/session.d.ts +2 -0
- package/dist/types/builders/tracker-browser.d.ts +2 -0
- package/dist/types/builders/tracker-node.d.ts +14 -0
- package/dist/types/builders/trackerBuilder.d.ts +2 -0
- package/dist/types/config-browser.d.ts +23 -0
- package/dist/types/config.d.ts +6 -0
- package/dist/types/createPulseTracker.d.ts +21 -0
- package/dist/types/defer.d.ts +28 -0
- package/dist/types/getPulseTracker.d.ts +59 -0
- package/dist/types/identity/actor.d.ts +28 -0
- package/dist/types/identity/advertising.d.ts +30 -0
- package/dist/types/identity/cis.d.ts +21 -0
- package/dist/types/identity/device.d.ts +12 -0
- package/dist/types/identity/index.d.ts +4 -0
- package/dist/types/index.d.ts +31 -0
- package/dist/types/leaveTracking/constants.d.ts +26 -0
- package/dist/types/leaveTracking/index.d.ts +23 -0
- package/dist/types/leaveTracking/types.d.ts +78 -0
- package/dist/types/leaveTrackingTpaas/constants.d.ts +13 -0
- package/dist/types/leaveTrackingTpaas/index.d.ts +28 -0
- package/dist/types/leaveTrackingTpaas/types.d.ts +45 -0
- package/dist/types/network-browser.d.ts +5 -0
- package/dist/types/network.d.ts +4 -0
- package/dist/types/remoteConfig/index.d.ts +32 -0
- package/dist/types/tracker-proxy/consts.d.ts +45 -0
- package/dist/types/tracker-proxy/proxy-provider.d.ts +2 -0
- package/dist/types/types.d.ts +93 -0
- package/dist/types/visibility-observer/index.d.ts +38 -0
- package/dist/types/warnOnce.d.ts +2 -0
- package/dist/types/wrapper/engagement/ui-element/event-builder.d.ts +3 -0
- package/dist/types/wrapper/engagement/ui-element/types.d.ts +29 -0
- package/dist/types/wrapper/types/base-event.d.ts +74 -0
- package/dist/types/wrapper/types/engagement-event.d.ts +5 -0
- package/dist/types/wrapper/types/event.d.ts +41 -0
- package/dist/types/wrapper/types/index.d.ts +3 -0
- package/dist/types/wrapper/types/utils.d.ts +5 -0
- package/dist/types/wrapper/utils/get-navigation-type.d.ts +3 -0
- package/dist/types/wrapper/utils/page-from-page-view.d.ts +3 -0
- package/dist/types/wrapper/view/article/event-builder.d.ts +2 -0
- package/dist/types/wrapper/view/article/types.d.ts +27 -0
- package/dist/types/wrapper/view/frontpage/event-builder.d.ts +2 -0
- package/dist/types/wrapper/view/frontpage/types.d.ts +18 -0
- package/dist/types/wrapper/view/listing/event-builder.d.ts +2 -0
- package/dist/types/wrapper/view/listing/types.d.ts +27 -0
- package/dist/types/wrapper/view/loginposter/event-builder.d.ts +2 -0
- package/dist/types/wrapper/view/loginposter/types.d.ts +14 -0
- package/dist/types/wrapper/view/page/event-builder.d.ts +2 -0
- package/dist/types/wrapper/view/page/types.d.ts +16 -0
- package/dist/types/wrapper/view/salesposter/event-builder.d.ts +2 -0
- package/dist/types/wrapper/view/salesposter/types.d.ts +15 -0
- package/dist/types/wrapper/view/ui-element/event-builder.d.ts +3 -0
- package/dist/types/wrapper/view/ui-element/types.d.ts +28 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.d.ts +26 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js +273 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.d.ts +10 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.js +7 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.d.ts +14 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js +39 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.d.ts +4 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.js +12 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.d.ts +55 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.js +276 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.d.ts +36 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.js +87 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.d.ts +6 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js +21 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.d.ts +24 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.js +3 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.d.ts +26 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.js +203 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.d.ts +10 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.js +4 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.d.ts +14 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.js +35 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.d.ts +4 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.js +3 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.d.ts +55 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.js +254 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.d.ts +36 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.js +50 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.d.ts +6 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.js +17 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.d.ts +24 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js +2 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js.map +1 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/cis-browser.d.ts +26 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/cis.d.ts +10 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/eventEmitter.d.ts +14 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/index.d.ts +4 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/pulse-cookie.d.ts +55 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/storage/pulseStorage.d.ts +36 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/storage/storage.d.ts +6 -0
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/types.d.ts +24 -0
- package/node_modules/@schibsted/pulse-cis-sync/package.json +44 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/cookie-config.js +10 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/cookie.js +86 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/events.js +109 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/get.js +18 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/getRootDomain.js +54 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/index.js +38 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/merge.js +38 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/objects.js +34 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/omit.js +9 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/randomString.js +18 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/throttle.js +34 -0
- package/node_modules/@schibsted/pulse-utils/dist/cjs/webApi.js +21 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/cookie-config.js +7 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/cookie.js +81 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/events.js +103 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/get.js +15 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/getRootDomain.js +49 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/index.js +11 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/merge.js +35 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/objects.js +26 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/omit.js +6 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/randomString.js +15 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/throttle.js +31 -0
- package/node_modules/@schibsted/pulse-utils/dist/ejs/webApi.js +17 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/cookie-config.d.ts +7 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/cookie.d.ts +23 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/events.d.ts +17 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/get.d.ts +1 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/getRootDomain.d.ts +13 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/index.d.ts +11 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/merge.d.ts +4 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/objects.d.ts +6 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/omit.d.ts +3 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/randomString.d.ts +1 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/throttle.d.ts +3 -0
- package/node_modules/@schibsted/pulse-utils/dist/types/webApi.d.ts +10 -0
- package/node_modules/@schibsted/pulse-utils/package.json +36 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/anonymous.js +8 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/baseEvent.js +9 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/consents.js +15 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/device.js +211 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/experiments.js +11 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/navigationType.js +52 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/pageInfo.js +24 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/pageviewId.js +11 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/provider.js +12 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/referrer.js +19 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/session.js +114 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/time.js +15 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/trackerBuilder.js +15 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/user.js +26 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/utm.js +35 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders.js +264 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/index.js +17 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/types.js +2 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/anonymous.js +5 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/baseEvent.js +6 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/consents.js +12 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/device.js +174 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/experiments.js +7 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/navigationType.js +48 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/pageInfo.js +20 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/pageviewId.js +7 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/provider.js +9 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/referrer.js +15 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/session.js +108 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/time.js +11 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/trackerBuilder.js +11 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/user.js +22 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/utm.js +31 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders.js +209 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/index.js +1 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/types.js +1 -0
- package/node_modules/@schibsted/tpaas-event-builder/dist/index.d.ts +5171 -0
- package/node_modules/@schibsted/tpaas-event-builder/package.json +40 -0
- package/node_modules/@schibsted/tpaas-schemas/dist/cjs/constants.js +62 -1
- package/node_modules/@schibsted/tpaas-schemas/dist/ejs/constants.js +61 -0
- package/node_modules/@schibsted/tpaas-schemas/dist/index.d.ts +128 -0
- package/package.json +58 -13
- package/CHANGELOG.md +0 -1035
- package/dist/index.d.ts +0 -13
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -47
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { AnonymousTrackerEventInput } from '../events-anonymous-node';
|
|
2
|
+
type PageInput = {
|
|
3
|
+
id?: string;
|
|
4
|
+
type?: string;
|
|
5
|
+
[k: string]: unknown | undefined;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* @typedef AnonymousObjectInput
|
|
9
|
+
* Object input
|
|
10
|
+
*
|
|
11
|
+
* The root object should at least an `id` and `type`. The object will be passed
|
|
12
|
+
* as-if if those two fields are missing.
|
|
13
|
+
*
|
|
14
|
+
* Any field containing an object or array will be formatted recursively.
|
|
15
|
+
*
|
|
16
|
+
* Example object:
|
|
17
|
+
|
|
18
|
+
* ```
|
|
19
|
+
* {
|
|
20
|
+
* type: 'Listing',
|
|
21
|
+
* id: 'search-query',
|
|
22
|
+
* items: [{
|
|
23
|
+
* type: 'ClassifiedAd',
|
|
24
|
+
* id: 'ad-123'
|
|
25
|
+
* }]
|
|
26
|
+
*}
|
|
27
|
+
*```
|
|
28
|
+
*/
|
|
29
|
+
export type AnonymousObjectInput = {
|
|
30
|
+
id?: string;
|
|
31
|
+
type?: string;
|
|
32
|
+
item?: AnonymousObjectInput;
|
|
33
|
+
items?: Array<AnonymousObjectInput>;
|
|
34
|
+
page?: PageInput;
|
|
35
|
+
custom: never;
|
|
36
|
+
'spt:custom': never;
|
|
37
|
+
[k: string]: unknown | undefined;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Format object.
|
|
41
|
+
*
|
|
42
|
+
* This function will recursively format itself and all nested object.
|
|
43
|
+
* The initialPage parameter is optional and will be used in the recursive
|
|
44
|
+
* nature to always pass in the root object page to each formatting.
|
|
45
|
+
*
|
|
46
|
+
* @private
|
|
47
|
+
* @param {object} input
|
|
48
|
+
* @param {object|undefined} pageInput Optional
|
|
49
|
+
*/
|
|
50
|
+
export declare const formatObject: (input: Pick<AnonymousTrackerEventInput, "object">, pageInput?: PageInput) => Record<string, unknown> | undefined;
|
|
51
|
+
export default formatObject;
|
|
52
|
+
export declare const defaultValue: () => undefined;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export * from './objects-node';
|
|
2
|
+
export { default } from './objects-node';
|
|
3
|
+
export declare const defaultValue: () => {
|
|
4
|
+
name?: undefined;
|
|
5
|
+
url?: undefined;
|
|
6
|
+
id?: undefined;
|
|
7
|
+
} | {
|
|
8
|
+
name: string;
|
|
9
|
+
url: string | undefined;
|
|
10
|
+
id: string | undefined;
|
|
11
|
+
};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { TrackerEventInput } from '../events';
|
|
2
|
+
/**
|
|
3
|
+
* Minimal set of page properties to derive other values, like @id.
|
|
4
|
+
*/
|
|
5
|
+
export type PageInput = {
|
|
6
|
+
id?: string;
|
|
7
|
+
type?: string;
|
|
8
|
+
[k: string]: unknown | undefined;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Object input
|
|
12
|
+
*
|
|
13
|
+
* The root object should at least an `id` and `type`. The object will be passed
|
|
14
|
+
* as-if if those two fields are missing.
|
|
15
|
+
*
|
|
16
|
+
* Any field containing an object or array will be formatted recursively.
|
|
17
|
+
*
|
|
18
|
+
* Example object:
|
|
19
|
+
*
|
|
20
|
+
* ```js
|
|
21
|
+
* {
|
|
22
|
+
* type: 'Listing',
|
|
23
|
+
* id: 'search-query',
|
|
24
|
+
* items: [{
|
|
25
|
+
* type: 'ClassifiedAd',
|
|
26
|
+
* id: 'ad-123'
|
|
27
|
+
* }]
|
|
28
|
+
* }
|
|
29
|
+
*```
|
|
30
|
+
*/
|
|
31
|
+
export type ObjectInput = {
|
|
32
|
+
id?: string;
|
|
33
|
+
type?: string;
|
|
34
|
+
realm?: string;
|
|
35
|
+
custom?: Record<string, unknown>;
|
|
36
|
+
item?: ObjectInput;
|
|
37
|
+
items?: Array<ObjectInput>;
|
|
38
|
+
page?: PageInput;
|
|
39
|
+
[k: string]: unknown | undefined;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Format object.
|
|
43
|
+
*
|
|
44
|
+
* This function will recursively format itself and all nested object.
|
|
45
|
+
* The initialPage parameter is optional and will be used in the recursive
|
|
46
|
+
* nature to always pass in the root object page to each formatting.
|
|
47
|
+
*
|
|
48
|
+
* @param input
|
|
49
|
+
* @param pageInput
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
export declare const formatObject: (input: Pick<TrackerEventInput, "object">, pageInput?: PageInput) => Record<string, unknown> | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* @internal
|
|
55
|
+
*/
|
|
56
|
+
export default formatObject;
|
|
57
|
+
/**
|
|
58
|
+
* @internal
|
|
59
|
+
*/
|
|
60
|
+
export declare const defaultValue: () => undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function generateObjectSDRN(id?: string | number, providerId?: string, type?: string): string | number | undefined;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { TrackerEventInput } from './events';
|
|
2
|
+
/**
|
|
3
|
+
* @typedef OriginInput
|
|
4
|
+
*/
|
|
5
|
+
export type OriginInput = {
|
|
6
|
+
id?: string;
|
|
7
|
+
url?: string;
|
|
8
|
+
type?: string;
|
|
9
|
+
[k: string]: unknown | undefined;
|
|
10
|
+
};
|
|
11
|
+
export default function origin(input: Pick<TrackerEventInput, 'origin' | 'provider'>): {
|
|
12
|
+
'@type'?: string | undefined;
|
|
13
|
+
'@id'?: string | number | undefined;
|
|
14
|
+
} & {
|
|
15
|
+
[k: string]: unknown;
|
|
16
|
+
url?: string;
|
|
17
|
+
};
|
|
18
|
+
export declare const defaultValue: () => undefined;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { TrackerEventInput } from './events';
|
|
2
|
+
export type ProviderInput = {
|
|
3
|
+
id: string;
|
|
4
|
+
type?: string;
|
|
5
|
+
[k: string]: unknown | undefined;
|
|
6
|
+
};
|
|
7
|
+
export type Provider = {
|
|
8
|
+
'@id': string;
|
|
9
|
+
'@type': string;
|
|
10
|
+
[k: string]: unknown | undefined;
|
|
11
|
+
};
|
|
12
|
+
export declare function generateProviderSDRN(providerId?: string): string;
|
|
13
|
+
export default function provider(input?: Pick<TrackerEventInput, 'provider'>): Provider;
|
|
14
|
+
export declare const defaultValue: () => undefined;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { TrackerEventInput } from './events-node';
|
|
2
|
+
export type Session = {
|
|
3
|
+
'@id': string;
|
|
4
|
+
startTime: string;
|
|
5
|
+
};
|
|
6
|
+
type StoredSession = {
|
|
7
|
+
id: string;
|
|
8
|
+
startTime: Date;
|
|
9
|
+
lastEventTime: Date;
|
|
10
|
+
};
|
|
11
|
+
type StoredSessionSerialized = [
|
|
12
|
+
id: string,
|
|
13
|
+
startTime: number,
|
|
14
|
+
lastEventTime: number
|
|
15
|
+
];
|
|
16
|
+
export declare const readAndParse: (storageKey: string) => StoredSessionSerialized | undefined;
|
|
17
|
+
export declare const readSession: () => StoredSession | undefined;
|
|
18
|
+
export declare const defaultValue: () => undefined;
|
|
19
|
+
export default function session(_input?: TrackerEventInput, eventCreationDate?: Date): Session;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { TrackerEventInput } from './events';
|
|
2
|
+
/** */
|
|
3
|
+
export type TrackerInput = Record<string, unknown>;
|
|
4
|
+
export type Tracker = {
|
|
5
|
+
name: string;
|
|
6
|
+
type: string;
|
|
7
|
+
version: string;
|
|
8
|
+
[k: string]: unknown | undefined;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Format tracker objects
|
|
12
|
+
*/
|
|
13
|
+
export default function tracker(input?: Pick<TrackerEventInput, 'tracker'>): Tracker;
|
|
14
|
+
export declare const defaultValue: () => undefined;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const collectorEndpoints: {
|
|
2
|
+
dev: string;
|
|
3
|
+
pre: string;
|
|
4
|
+
pro: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const CISEndpoints: {
|
|
7
|
+
dev: string;
|
|
8
|
+
pre: string;
|
|
9
|
+
pro: string;
|
|
10
|
+
};
|
|
11
|
+
export declare const remoteConfig: {
|
|
12
|
+
dev: string;
|
|
13
|
+
pre: string;
|
|
14
|
+
pro: string;
|
|
15
|
+
};
|
|
16
|
+
export declare const baseConfig: {
|
|
17
|
+
cisEnabled: boolean;
|
|
18
|
+
deployStage: string;
|
|
19
|
+
eventDebounce: number;
|
|
20
|
+
environment: string;
|
|
21
|
+
collectorPath: string;
|
|
22
|
+
useBeaconWhenAvailable: boolean;
|
|
23
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module createPulseTracker
|
|
3
|
+
* This module is part of the Pulse SDK implementation of Schibsted's Mandatory Building Blocks (MBB) specification.
|
|
4
|
+
* It is intended to simplify the creation and management of a singleton Pulse Tracker instance in browser environments.
|
|
5
|
+
* Note that this module should only be used in browser environments, as it relies on the global `window` object.
|
|
6
|
+
*/
|
|
7
|
+
import Tracker, { type Builders, type SDKConfigInput } from './Tracker';
|
|
8
|
+
export interface IPulseTrackerCreateParams {
|
|
9
|
+
clientId: string;
|
|
10
|
+
config?: SDKConfigInput;
|
|
11
|
+
builders?: Builders;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Creates and returns the singleton Pulse Tracker instance.
|
|
15
|
+
* @param clientId
|
|
16
|
+
* @param config
|
|
17
|
+
* @param builders
|
|
18
|
+
* @throws - If called outside a browser environment.
|
|
19
|
+
* @throws - If the Pulse Tracker has already been created (or creation is already in progress).
|
|
20
|
+
*/
|
|
21
|
+
export declare function createPulseTracker({ clientId, config, builders }: IPulseTrackerCreateParams): Promise<Tracker>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { EventInput } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* @public
|
|
4
|
+
* @typedef ResolvedInput
|
|
5
|
+
* A deferred EventInput can be resolved in a concrete PulseEvent object, a promise of one or the
|
|
6
|
+
* response of the network call to the Collector's endpoint.
|
|
7
|
+
*/
|
|
8
|
+
export type ResolvedInput = EventInput | PromiseLike<EventInput> | Response;
|
|
9
|
+
/**
|
|
10
|
+
* @private
|
|
11
|
+
* @typedef PromiseResolver
|
|
12
|
+
* Defines possible inputs for resolving or rejecting a deferred EventInput.
|
|
13
|
+
*/
|
|
14
|
+
type PromiseResolver = (param: ResolvedInput) => void;
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
* @typedef Deferred
|
|
18
|
+
* Wraps the EventInput into a Promise, which has its resolve and reject callbacks externalized, so an
|
|
19
|
+
* outside scope can access them and postpone its resolution.
|
|
20
|
+
*/
|
|
21
|
+
export type Deferred = {
|
|
22
|
+
promise: Promise<ResolvedInput>;
|
|
23
|
+
resolve: PromiseResolver;
|
|
24
|
+
reject: PromiseResolver;
|
|
25
|
+
inputValue: EventInput | PromiseLike<EventInput>;
|
|
26
|
+
};
|
|
27
|
+
export default function (value: EventInput | PromiseLike<EventInput>): Deferred;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module getPulseTracker
|
|
3
|
+
* This module is part of the Pulse SDK implementation of Schibsted's Mandatory Building Blocks (MBB) specification.
|
|
4
|
+
* It provides a function to retrieve the singleton Pulse Tracker instance in browser environments.
|
|
5
|
+
* Note that this module should only be used in browser environments, as it relies on the global `window` object.
|
|
6
|
+
*
|
|
7
|
+
* @privateRemarks
|
|
8
|
+
* For future contributors: This module is designed to work as lean as possible, avoiding dependencies on other
|
|
9
|
+
* parts of the SDK.
|
|
10
|
+
* This is to ensure that it can be safely imported and used in various contexts without introducing unnecessary
|
|
11
|
+
* submodules and package dependencies. Only types are imported from other parts of the SDK.
|
|
12
|
+
*/
|
|
13
|
+
import type { Tracker } from './index';
|
|
14
|
+
type PulseTrackerReadyEventDetail = {
|
|
15
|
+
payload: {
|
|
16
|
+
tracker: Tracker;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
type PulseTrackerReadyEvent = CustomEvent<PulseTrackerReadyEventDetail>;
|
|
20
|
+
/**
|
|
21
|
+
* Event name dispatched when the Pulse Tracker instance is ready.
|
|
22
|
+
* It includes the "pulse:" namespace to avoid potential conflicts with other libraries.
|
|
23
|
+
*/
|
|
24
|
+
declare const PULSE_TRACKER_READY_EVENT = "pulse:tracker:ready";
|
|
25
|
+
declare global {
|
|
26
|
+
interface Window {
|
|
27
|
+
__pulseTracker?: Promise<Tracker>;
|
|
28
|
+
}
|
|
29
|
+
interface WindowEventMap {
|
|
30
|
+
[PULSE_TRACKER_READY_EVENT]: PulseTrackerReadyEvent;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Returns the singleton Pulse Tracker instance.
|
|
35
|
+
* @throws - If the Pulse Tracker creation did not resolve within the timeout limit.
|
|
36
|
+
* @throws - If called outside a browser environment.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
*
|
|
40
|
+
* ```ts
|
|
41
|
+
* import { getPulseTracker, type Tracker } from '@schibsted/pulse-sdk-js';
|
|
42
|
+
*
|
|
43
|
+
* let pulseTracker: Promise<Tracker>;
|
|
44
|
+
*
|
|
45
|
+
* try {
|
|
46
|
+
* pulseTracker = await getPulseTracker();
|
|
47
|
+
* } catch(error) {
|
|
48
|
+
* // not in browser environment
|
|
49
|
+
* // or
|
|
50
|
+
* // tracker not resolved within time limit
|
|
51
|
+
* }
|
|
52
|
+
*
|
|
53
|
+
* if (pulseTracker) {
|
|
54
|
+
* pulseTracker.trackViewPage({ ... });
|
|
55
|
+
* }
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export declare function getPulseTracker(): Promise<Tracker>;
|
|
59
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ActorInput } from '../builders';
|
|
2
|
+
import type { Builders } from '../Tracker';
|
|
3
|
+
/**
|
|
4
|
+
* @internal exported for testing
|
|
5
|
+
*/
|
|
6
|
+
export declare const WARN_CIS_SYNC_LOGIN_UNDEFINED: string;
|
|
7
|
+
/**
|
|
8
|
+
* Get the actor id (userId) from the current browser. A promise is returned
|
|
9
|
+
* because a call may be made to complete the login process.
|
|
10
|
+
*
|
|
11
|
+
* *Note*: This method will return a Promise that is always rejected on node
|
|
12
|
+
environments.
|
|
13
|
+
@category Identifiers
|
|
14
|
+
*/
|
|
15
|
+
declare const getUserId: (builders: Builders) => Promise<string | number | undefined>;
|
|
16
|
+
/**
|
|
17
|
+
* @category Identifiers
|
|
18
|
+
*/
|
|
19
|
+
declare const getActor: (builders: Builders) => Promise<ActorInput>;
|
|
20
|
+
declare const userIsLoggedIn: (builders: Builders) => Promise<boolean>;
|
|
21
|
+
/**
|
|
22
|
+
* Evaluate actor input given to the sdk/this method and pass it through the
|
|
23
|
+
* Actor event formatter.
|
|
24
|
+
* @category Tracker
|
|
25
|
+
* @private
|
|
26
|
+
*/
|
|
27
|
+
declare const evaluateActor: (eventInput?: unknown, builders?: Builders) => Promise<ActorInput>;
|
|
28
|
+
export { getUserId, getActor, userIsLoggedIn, evaluateActor };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { AdvertisingIdentifiers } from '@schibsted/pulse-cis-sync';
|
|
2
|
+
import type { Builders, SDKState } from '../Tracker';
|
|
3
|
+
/**
|
|
4
|
+
* Get the includeAdvertising flag, set on initialisation.
|
|
5
|
+
* @private
|
|
6
|
+
* @see constructor
|
|
7
|
+
* @category Identifiers
|
|
8
|
+
* @deprecated Advertising Identifiers methods will be removed in the next major version.
|
|
9
|
+
*/
|
|
10
|
+
declare const getIncludeAdvertising: (sdkState: SDKState) => boolean | Promise<boolean>;
|
|
11
|
+
/**
|
|
12
|
+
* Get the advertisement id (adId) from the current browser. A promise is returned
|
|
13
|
+
* because a CIS call is done to generate a new adId if no cookie is
|
|
14
|
+
* found.
|
|
15
|
+
*
|
|
16
|
+
* *Note*: This method will return a Promise that is always rejected on node
|
|
17
|
+
* environments.
|
|
18
|
+
* @category Identifiers
|
|
19
|
+
* @deprecated Advertising Identifiers methods will be removed in the next major version.
|
|
20
|
+
*/
|
|
21
|
+
declare const getAdId: (builders: Builders, sdkState: SDKState) => Promise<string | undefined>;
|
|
22
|
+
/**
|
|
23
|
+
* Get the Advertisement Identifiers for a Vendor or all Vendors.
|
|
24
|
+
* @param builders
|
|
25
|
+
* @param sdkState
|
|
26
|
+
* @category Identifiers
|
|
27
|
+
* @deprecated Advertising Identifiers methods will be removed in the next major version.
|
|
28
|
+
*/
|
|
29
|
+
declare const getAdvertisingIdentifiers: (builders: Builders, sdkState: SDKState) => Promise<AdvertisingIdentifiers>;
|
|
30
|
+
export { getAdId, getIncludeAdvertising, getAdvertisingIdentifiers };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { PPIDsByVendor } from '@schibsted/pulse-cis-sync';
|
|
2
|
+
import { clearCookieJweIfStale } from '@schibsted/pulse-cis-sync';
|
|
3
|
+
import type { Builders, SDKState } from '../Tracker';
|
|
4
|
+
declare const requireCisSyncCallForAdvertisingIds: () => void;
|
|
5
|
+
/**
|
|
6
|
+
* Sync our ids with cis given the userId from the event or builders.
|
|
7
|
+
* @param data the event parameters (the data passed to `.track()`),
|
|
8
|
+
* if called in a context where an event is being sent.
|
|
9
|
+
*
|
|
10
|
+
* @param builders
|
|
11
|
+
* @param config
|
|
12
|
+
* @returns the parsed pulse cookie after syncing with cis.
|
|
13
|
+
* @category Identifiers
|
|
14
|
+
*/
|
|
15
|
+
declare const cisSync: (data?: unknown, builders?: Builders, config?: SDKState) => Promise<{
|
|
16
|
+
adId?: string;
|
|
17
|
+
doTracking: boolean;
|
|
18
|
+
environmentId?: string;
|
|
19
|
+
ppId?: PPIDsByVendor;
|
|
20
|
+
}>;
|
|
21
|
+
export { clearCookieJweIfStale, cisSync, requireCisSyncCallForAdvertisingIds };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Builders, SDKState } from '../Tracker';
|
|
2
|
+
/**
|
|
3
|
+
* Get the environment id from the current browser. A promise is returned
|
|
4
|
+
* because a CIS call is done to generate a new environmentId if no cookie is
|
|
5
|
+
* found.
|
|
6
|
+
*
|
|
7
|
+
* *Note*: This method will return a Promise that is always rejected on node
|
|
8
|
+
* environments.
|
|
9
|
+
* @category Identifiers
|
|
10
|
+
*/
|
|
11
|
+
declare const getEnvironmentId: (builders: Builders, sdkState: SDKState) => Promise<string | undefined>;
|
|
12
|
+
export { getEnvironmentId };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import T from './Tracker';
|
|
2
|
+
export default T;
|
|
3
|
+
export * as EventBuilders from './builders';
|
|
4
|
+
export { TrackerEventInput } from './builders/events-node';
|
|
5
|
+
export * from './Tracker';
|
|
6
|
+
export { EventInput } from './types';
|
|
7
|
+
export { T as Tracker };
|
|
8
|
+
export type { InputParams } from '@schibsted/tpaas-event-builder';
|
|
9
|
+
export * from '@schibsted/tpaas-schemas';
|
|
10
|
+
export type { IPulseTrackerCreateParams } from './createPulseTracker';
|
|
11
|
+
export { createPulseTracker } from './createPulseTracker';
|
|
12
|
+
export { getPulseTracker } from './getPulseTracker';
|
|
13
|
+
export { AdditionalHeightInfo, LeaveEngagement, LeaveEvent, LeaveEventBuilder, LeaveEventOptions, } from './leaveTracking/types';
|
|
14
|
+
export { subscribe, subscribeOnce, subscribeWithState, unsubscribe } from './Tracker';
|
|
15
|
+
/**
|
|
16
|
+
* TPaaS specific type exports
|
|
17
|
+
*/
|
|
18
|
+
export type { AudioPageLeaveTrackingOptions, LeaveAudioInput, LeaveStoriesInput, LeaveTrackingDisabled, LeaveTrackingOptions, TrackViewAudioPageOptions, TrackViewEventOptions, TrackViewVideoPageOptions, VideoPageLeaveTrackingOptions, } from './types';
|
|
19
|
+
/**
|
|
20
|
+
* Media Wrapper Types exports below
|
|
21
|
+
*/
|
|
22
|
+
export type { ClickUIElementEvent, ClickUIElementInputObject, ClickUIElementInputProperties, ClickUIElementOutputObject, } from './wrapper/engagement/ui-element/types.js';
|
|
23
|
+
export type { Actor, BaseEvent, BaseEventCustom, BaseEventObject, BaseEventOrigin, BaseEventProvider, EventProperties, } from './wrapper/types/base-event.js';
|
|
24
|
+
export type { AccessLevel, Layout, NavigationType, Page, PageType, Placement, Target, TargetCategory, TargetType, } from './wrapper/types/event.js';
|
|
25
|
+
export type { ViewArticleEvent, ViewArticleInputObject, ViewArticleInputProperties, ViewArticleOutputObject, } from './wrapper/view/article/types.js';
|
|
26
|
+
export type { ViewFrontpageEvent, ViewFrontpageInputObject, ViewFrontpageInputProperties, ViewFrontpageOutputObject, } from './wrapper/view/frontpage/types.js';
|
|
27
|
+
export type { ViewListingEvent, ViewListingInputObject, ViewListingInputProperties, ViewListingOutputObject, } from './wrapper/view/listing/types.js';
|
|
28
|
+
export type { ViewLoginPosterEvent, ViewLoginPosterInputObject, ViewLoginPosterInputProperties, ViewLoginPosterOutputObject, } from './wrapper/view/loginposter/types.js';
|
|
29
|
+
export type { ViewPageEvent, ViewPageInputObject, ViewPageInputProperties, ViewPageOutputObject, } from './wrapper/view/page/types.js';
|
|
30
|
+
export type { ViewSalesPosterEvent, ViewSalesPosterInputObject, ViewSalesPosterInputProperties, ViewSalesPosterOutputObject, } from './wrapper/view/salesposter/types.js';
|
|
31
|
+
export type { ViewUIElementEvent, ViewUIElementInputObject, ViewUIElementInputProperties, ViewUIElementOutputObject, } from './wrapper/view/ui-element/types.js';
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { LeaveEvent } from './types';
|
|
2
|
+
export declare const DEFAULT_ACTIVITY_DURATION: () => {
|
|
3
|
+
value: number;
|
|
4
|
+
interval: undefined;
|
|
5
|
+
timeSinceLastActivity: number;
|
|
6
|
+
};
|
|
7
|
+
export declare const DEFAULT_VIEWED_CONTENT: () => {
|
|
8
|
+
objectViewPercentage: number;
|
|
9
|
+
maxObjectViewPercentage: number;
|
|
10
|
+
pageViewPercentage: number;
|
|
11
|
+
maxPageViewPercentage: number;
|
|
12
|
+
pageScrollPosition: number;
|
|
13
|
+
maxPageScrollPosition: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const DEFAULT_PAGE_LEAVE_EVENT: () => {
|
|
16
|
+
type: string;
|
|
17
|
+
engagement: {
|
|
18
|
+
objectViewPercentage: number;
|
|
19
|
+
maxObjectViewPercentage: number;
|
|
20
|
+
pageViewPercentage: number;
|
|
21
|
+
maxPageViewPercentage: number;
|
|
22
|
+
pageScrollPosition: number;
|
|
23
|
+
maxPageScrollPosition: number;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
export declare const DEFAULT_LEAVE_EVENT_BUILDER: () => () => LeaveEvent;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type Tracker from '../Tracker';
|
|
2
|
+
import type { LeaveEvent, LeaveEventBuilder, LeaveEventOptions, Listener } from './types';
|
|
3
|
+
export declare function addPageLeaveTracking(tracker: Tracker, objectElement: Element, pageElement: Element, eventBuilder?: LeaveEventBuilder, options?: LeaveEventOptions): void;
|
|
4
|
+
export declare function leaveTrackingIsActive(): boolean;
|
|
5
|
+
export declare function removePageLeaveTracking(tracker: Tracker): void;
|
|
6
|
+
/**
|
|
7
|
+
* Update page leave tracking
|
|
8
|
+
* @param objectElement new object element to track
|
|
9
|
+
* @param pageElement new page element to track
|
|
10
|
+
* @param resetProperties if ALL engagement properties should be reset (duration, scroll etc.)
|
|
11
|
+
*/
|
|
12
|
+
export declare function updatePageLeaveTracking(objectElement: Element, pageElement: Element, resetProperties: boolean): void;
|
|
13
|
+
export declare const resetViewedContent: () => void;
|
|
14
|
+
export declare function updatePageLeaveEvent(leaveEvent: LeaveEvent): void;
|
|
15
|
+
export declare function trackActivePageLeave(tracker: Tracker, providedEvent?: LeaveEvent, eventName?: string): void;
|
|
16
|
+
export declare function trackPageLeave(tracker: Tracker, providedEvent?: LeaveEvent, eventName?: string): Promise<void>;
|
|
17
|
+
export declare function updateViewedContent(objectElement: Element, pageElement: Element): void;
|
|
18
|
+
export declare const calculateScrolledPixels: (element: Element) => number;
|
|
19
|
+
export declare const calculateScrollPosition: (element: Element) => number;
|
|
20
|
+
export declare function addEventListeners(events: string[], handler: () => void, options?: boolean | AddEventListenerOptions): Listener[];
|
|
21
|
+
export declare function removeEventListeners(eventListeners: Listener[], options?: {
|
|
22
|
+
capture?: boolean;
|
|
23
|
+
}): Listener[];
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Function that builds a LeaveEvent
|
|
3
|
+
* @internal
|
|
4
|
+
*/
|
|
5
|
+
export type LeaveEventBuilder = () => LeaveEvent;
|
|
6
|
+
/**
|
|
7
|
+
* Options for Leave event tracking
|
|
8
|
+
*/
|
|
9
|
+
export interface LeaveEventOptions {
|
|
10
|
+
objectResizable?: boolean;
|
|
11
|
+
additionalHeightBuilder?: () => AdditionalHeightInfo;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Leave event type
|
|
15
|
+
*/
|
|
16
|
+
export type LeaveEvent = {
|
|
17
|
+
type?: string;
|
|
18
|
+
engagement?: LeaveEngagement;
|
|
19
|
+
object?: {
|
|
20
|
+
'spt:custom'?: {
|
|
21
|
+
'spt:eventName'?: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
[k: string]: unknown | undefined;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Engagement data included in leave events
|
|
28
|
+
*/
|
|
29
|
+
export type LeaveEngagement = {
|
|
30
|
+
activityDuration: number;
|
|
31
|
+
duration: number;
|
|
32
|
+
maxObjectViewPercentage: number;
|
|
33
|
+
maxPageScrollPosition: number;
|
|
34
|
+
maxPageViewPercentage: number;
|
|
35
|
+
objectViewPercentage: number;
|
|
36
|
+
pageScrollPosition: number;
|
|
37
|
+
pageViewPercentage: number;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Currently supported browser events
|
|
41
|
+
*/
|
|
42
|
+
export declare enum BrowserEvents {
|
|
43
|
+
BEFORE_UNLOAD = "beforeunload",
|
|
44
|
+
PAGE_HIDE = "pagehide",
|
|
45
|
+
POP_STATE = "popstate",
|
|
46
|
+
VISIBILITY_CHANGE = "visibilitychange",
|
|
47
|
+
SCROLL = "scroll",
|
|
48
|
+
RESIZE = "resize",
|
|
49
|
+
MOUSEDOWN = "mousedown",
|
|
50
|
+
MOUSEMOVE = "mousemove",
|
|
51
|
+
KEYDOWN = "keydown",
|
|
52
|
+
TOUCHSTART = "touchstart"
|
|
53
|
+
}
|
|
54
|
+
export type Listener = [name: string, listener: () => void];
|
|
55
|
+
/**
|
|
56
|
+
* Data about user activity duration
|
|
57
|
+
*/
|
|
58
|
+
export type ActivityDuration = {
|
|
59
|
+
value: number;
|
|
60
|
+
interval: number | undefined;
|
|
61
|
+
timeSinceLastActivity: number;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Used to provide extra height to view %-calculations for objects that have fake-scrolls or similar
|
|
65
|
+
* For instance if you have an element that captures scroll for about 1000px
|
|
66
|
+
* you would report totalHeight 1000px and then viewedHeight 0px if the user had not yet started scrolling, 500px if
|
|
67
|
+
* scrolled halfway through or 1000px if the user had scrolled to the end or past that element
|
|
68
|
+
*/
|
|
69
|
+
export interface AdditionalHeightInfo {
|
|
70
|
+
/**
|
|
71
|
+
* The number of px to add to the object & page height
|
|
72
|
+
*/
|
|
73
|
+
totalHeight: number;
|
|
74
|
+
/**
|
|
75
|
+
* The number of px to add to the user's current scroll depth
|
|
76
|
+
*/
|
|
77
|
+
viewedHeight: number;
|
|
78
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const DEFAULT_ACTIVITY_DURATION: () => {
|
|
2
|
+
value: number;
|
|
3
|
+
interval: undefined;
|
|
4
|
+
timeSinceLastActivity: number;
|
|
5
|
+
};
|
|
6
|
+
export declare const DEFAULT_PAGE_LEAVE_EVENT: () => {
|
|
7
|
+
objectViewPercentage: number;
|
|
8
|
+
maxObjectViewPercentage: number;
|
|
9
|
+
pageViewPercentage: number;
|
|
10
|
+
maxPageViewPercentage: number;
|
|
11
|
+
pageScrollPosition: number;
|
|
12
|
+
maxPageScrollPosition: number;
|
|
13
|
+
};
|