@schibsted/pulse-sdk 8.0.0-rc.2 → 8.0.0-rc.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Tracker.js +582 -471
- package/dist/cjs/app-integration.js +3 -3
- package/dist/cjs/builders/actor.js +6 -6
- package/dist/cjs/builders/consents.js +8 -8
- package/dist/cjs/builders/device-browser.js +8 -8
- package/dist/cjs/builders/device-node.js +3 -3
- package/dist/cjs/builders/events-anonymous-node.js +3 -3
- package/dist/cjs/builders/events-node.js +7 -7
- package/dist/cjs/builders/experimentMetadata.js +2 -2
- package/dist/cjs/builders/experiments.js +1 -0
- package/dist/cjs/builders/objects/objects-anonymous-browser.js +2 -2
- package/dist/cjs/builders/objects/objects-anonymous-node.js +9 -9
- package/dist/cjs/builders/objects/objects-browser.js +2 -2
- package/dist/cjs/builders/objects/objects-node.js +10 -10
- package/dist/cjs/builders/objects/utils.js +3 -3
- package/dist/cjs/builders/origin-browser.js +2 -2
- package/dist/cjs/builders/origin-node.js +4 -4
- package/dist/cjs/builders/session-browser.js +6 -80
- package/dist/cjs/cis-sync/cis-browser.js +219 -0
- package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/cis.js +0 -1
- package/dist/cjs/cis-sync/eventEmitter.js +37 -0
- package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/index.js +0 -1
- package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/pulse-cookie.js +53 -63
- package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/cis-sync}/storage/pulseStorage.js +28 -21
- package/dist/cjs/cis-sync/storage/storage.js +24 -0
- package/dist/cjs/createPulseTracker.js +4 -4
- package/dist/cjs/identity/actor.js +20 -8
- package/dist/cjs/identity/advertising.js +1 -1
- package/dist/cjs/identity/cis.js +7 -6
- package/dist/cjs/index.js +3 -3
- package/dist/cjs/leaveTracking/index.js +10 -10
- package/dist/cjs/leaveTrackingTpaas/constants.js +2 -7
- package/dist/cjs/leaveTrackingTpaas/index.js +70 -46
- package/dist/cjs/network-browser.js +3 -3
- package/dist/cjs/remoteConfig/index.js +5 -5
- package/dist/cjs/session/store.js +96 -0
- package/dist/cjs/tpaas-builders/builders/catalogVersion.js +9 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/device.js +50 -72
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/navigationType.js +2 -3
- package/dist/cjs/tpaas-builders/builders/pageContent.js +7 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/pageInfo.js +2 -3
- package/dist/cjs/tpaas-builders/builders/pageSports.js +7 -0
- package/dist/cjs/tpaas-builders/builders/provider.js +19 -0
- package/dist/cjs/tpaas-builders/builders/referrer.js +17 -0
- package/dist/cjs/tpaas-builders/builders/session.js +5 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/trackerBuilder.js +2 -3
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/user.js +1 -1
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/utm.js +3 -9
- package/dist/cjs/tpaas-builders/builders.js +326 -0
- package/dist/cjs/tpaas-builders/guards.js +7 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/index.js +3 -0
- package/dist/cjs/tpaas-context/adapters.js +85 -0
- package/dist/cjs/tpaas-context/browser.js +51 -0
- package/dist/cjs/tpaas-context/index.js +6 -0
- package/dist/cjs/tpaas-context/prepare.js +177 -0
- package/dist/cjs/tpaas-context/session.js +23 -0
- package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/cjs/tpaas-context}/types.js +0 -1
- package/{node_modules/@schibsted/tpaas-schemas/dist/cjs → dist/cjs/tpaas-schemas}/constants.js +189 -158
- package/{node_modules/@schibsted/tpaas-schemas/dist/cjs → dist/cjs/tpaas-schemas}/index.js +1 -0
- package/dist/cjs/tpaas-schemas/types.js +2 -0
- package/dist/cjs/tracker-proxy/consts.js +29 -7
- package/dist/cjs/tracker-proxy/proxy-provider.js +2 -2
- package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/index.js +4 -1
- package/dist/cjs/utils/xDomainId.js +15 -0
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/visibility-observer/index.js +9 -7
- package/dist/cjs/wrapper/types/event.js +5 -0
- package/dist/cjs/wrapper/utils/map-page-to-page-ref.js +13 -0
- package/dist/ejs/Tracker.js +558 -447
- package/dist/ejs/app-integration.js +1 -1
- package/dist/ejs/builders/actor.js +3 -3
- package/dist/ejs/builders/consents.js +4 -4
- package/dist/ejs/builders/device-browser.js +2 -2
- package/dist/ejs/builders/device-node.js +1 -1
- package/dist/ejs/builders/events-anonymous-node.js +1 -1
- package/dist/ejs/builders/events-node.js +4 -4
- package/dist/ejs/builders/experimentMetadata.js +1 -1
- package/dist/ejs/builders/experiments.js +1 -1
- package/dist/ejs/builders/objects/objects-anonymous-browser.js +1 -1
- package/dist/ejs/builders/objects/objects-anonymous-node.js +1 -1
- package/dist/ejs/builders/objects/objects-browser.js +1 -1
- package/dist/ejs/builders/objects/objects-node.js +1 -1
- package/dist/ejs/builders/objects/utils.js +1 -1
- package/dist/ejs/builders/origin-browser.js +1 -1
- package/dist/ejs/builders/origin-node.js +1 -1
- package/dist/ejs/builders/session-browser.js +5 -77
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/cis-browser.js +17 -4
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/cis.js +0 -1
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/eventEmitter.js +0 -1
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/index.js +0 -1
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/pulse-cookie.js +1 -2
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/storage/pulseStorage.js +12 -4
- package/{node_modules/@schibsted/pulse-cis-sync/dist/ejs → dist/ejs/cis-sync}/storage/storage.js +6 -2
- package/dist/ejs/createPulseTracker.js +1 -1
- package/dist/ejs/identity/actor.js +21 -9
- package/dist/ejs/identity/advertising.js +1 -1
- package/dist/ejs/identity/cis.js +4 -3
- package/dist/ejs/index.js +4 -3
- package/dist/ejs/leaveTracking/index.js +1 -1
- package/dist/ejs/leaveTrackingTpaas/constants.js +1 -5
- package/dist/ejs/leaveTrackingTpaas/index.js +65 -41
- package/dist/ejs/network-browser.js +1 -1
- package/dist/ejs/remoteConfig/index.js +1 -1
- package/dist/ejs/session/store.js +90 -0
- package/dist/ejs/tpaas-builders/builders/catalogVersion.js +6 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/device.js +50 -72
- package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/navigationType.js +2 -3
- package/dist/ejs/tpaas-builders/builders/pageContent.js +3 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/pageInfo.js +2 -3
- package/dist/ejs/tpaas-builders/builders/pageSports.js +3 -0
- package/dist/ejs/tpaas-builders/builders/provider.js +16 -0
- package/dist/ejs/tpaas-builders/builders/referrer.js +13 -0
- package/dist/ejs/tpaas-builders/builders/session.js +1 -0
- package/dist/ejs/tpaas-builders/builders/trackerBuilder.js +10 -0
- package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/user.js +1 -1
- package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/utm.js +3 -9
- package/dist/ejs/tpaas-builders/builders.js +259 -0
- package/dist/ejs/tpaas-builders/guards.js +4 -0
- package/dist/ejs/tpaas-builders/index.js +2 -0
- package/dist/ejs/tpaas-context/adapters.js +80 -0
- package/dist/ejs/tpaas-context/browser.js +47 -0
- package/dist/ejs/tpaas-context/index.js +1 -0
- package/dist/ejs/tpaas-context/prepare.js +137 -0
- package/dist/ejs/tpaas-context/session.js +19 -0
- package/{node_modules/@schibsted/tpaas-schemas/dist/ejs → dist/ejs/tpaas-schemas}/constants.js +187 -156
- package/{node_modules/@schibsted/tpaas-schemas/dist/ejs → dist/ejs/tpaas-schemas}/index.js +1 -0
- package/dist/ejs/tpaas-schemas/types.js +1 -0
- package/dist/ejs/tracker-proxy/consts.js +29 -7
- package/dist/ejs/tracker-proxy/proxy-provider.js +1 -1
- package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/index.js +1 -0
- package/dist/ejs/utils/xDomainId.js +11 -0
- package/dist/ejs/version.js +1 -1
- package/dist/ejs/visibility-observer/index.js +9 -7
- package/dist/ejs/wrapper/types/event.js +4 -1
- package/dist/ejs/wrapper/utils/map-page-to-page-ref.js +10 -0
- package/dist/types/Tracker.d.ts +198 -93
- package/dist/types/builders/actor.d.ts +3 -2
- package/dist/types/builders/consents.d.ts +3 -3
- package/dist/types/builders/device-node.d.ts +2 -2
- package/dist/types/builders/events-anonymous-node.d.ts +4 -4
- package/dist/types/builders/events-node.d.ts +5 -5
- package/dist/types/builders/experiments.d.ts +1 -0
- package/dist/types/builders/index.d.ts +1 -1
- package/dist/types/builders/objects/objects-anonymous-node.d.ts +1 -1
- package/dist/types/builders/objects/objects-node.d.ts +1 -1
- package/dist/types/builders/origin-node.d.ts +1 -1
- package/dist/types/builders/session-browser.d.ts +1 -13
- package/{node_modules/@schibsted/pulse-cis-sync/dist/types → dist/types/cis-sync}/cis-browser.d.ts +1 -0
- package/{node_modules/@schibsted/pulse-cis-sync/dist/types → dist/types/cis-sync}/storage/pulseStorage.d.ts +12 -4
- package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/storage/storage.d.ts +2 -1
- package/dist/types/config.d.ts +1 -1
- package/dist/types/createPulseTracker.d.ts +1 -1
- package/dist/types/identity/actor.d.ts +3 -3
- package/dist/types/identity/advertising.d.ts +2 -2
- package/dist/types/identity/cis.d.ts +4 -4
- package/dist/types/index.d.ts +7 -8
- package/dist/types/leaveTrackingTpaas/constants.d.ts +1 -5
- package/dist/types/leaveTrackingTpaas/index.d.ts +6 -6
- package/dist/types/leaveTrackingTpaas/types.d.ts +2 -10
- package/dist/types/session/store.d.ts +34 -0
- package/dist/types/tpaas-builders/builders/anonymous.d.ts +3 -0
- package/dist/types/tpaas-builders/builders/baseEvent.d.ts +3 -0
- package/dist/types/tpaas-builders/builders/catalogVersion.d.ts +3 -0
- package/dist/types/tpaas-builders/builders/consents.d.ts +5 -0
- package/dist/types/tpaas-builders/builders/device.d.ts +5 -0
- package/dist/types/tpaas-builders/builders/experiments.d.ts +9 -0
- package/dist/types/tpaas-builders/builders/navigationType.d.ts +6 -0
- package/dist/types/tpaas-builders/builders/pageContent.d.ts +6 -0
- package/dist/types/tpaas-builders/builders/pageInfo.d.ts +7 -0
- package/dist/types/tpaas-builders/builders/pageSports.d.ts +6 -0
- package/dist/types/tpaas-builders/builders/pageviewId.d.ts +6 -0
- package/dist/types/tpaas-builders/builders/provider.d.ts +5 -0
- package/dist/types/tpaas-builders/builders/referrer.d.ts +6 -0
- package/dist/types/tpaas-builders/builders/session.d.ts +4 -0
- package/dist/types/tpaas-builders/builders/time.d.ts +4 -0
- package/dist/types/tpaas-builders/builders/trackerBuilder.d.ts +5 -0
- package/dist/types/tpaas-builders/builders/user.d.ts +5 -0
- package/dist/types/tpaas-builders/builders/utm.d.ts +7 -0
- package/dist/types/tpaas-builders/builders.d.ts +141 -0
- package/dist/types/tpaas-builders/guards.d.ts +2 -0
- package/dist/types/tpaas-builders/index.d.ts +2 -0
- package/dist/types/tpaas-context/adapters.d.ts +26 -0
- package/dist/types/tpaas-context/browser.d.ts +8 -0
- package/dist/types/tpaas-context/index.d.ts +2 -0
- package/dist/types/tpaas-context/prepare.d.ts +38 -0
- package/dist/types/tpaas-context/session.d.ts +10 -0
- package/dist/types/tpaas-context/types.d.ts +66 -0
- package/dist/types/tpaas-schemas/constants.d.ts +471 -0
- package/dist/types/tpaas-schemas/index.d.ts +5 -0
- package/dist/types/tpaas-schemas/types/ITpaasEvent.d.ts +130 -0
- package/dist/types/tpaas-schemas/types/schemas/IAnonymousImpressionUIElement.d.ts +58 -0
- package/dist/types/tpaas-schemas/types/schemas/ICompletedHealthAction.d.ts +139 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementAd.d.ts +117 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementAffiliate.d.ts +144 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementAudio.d.ts +213 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementForm.d.ts +111 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementHealthUIElement.d.ts +133 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementOffer.d.ts +107 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementSchoolUIElement.d.ts +107 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementSportsUIElement.d.ts +157 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementTeaser.d.ts +114 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementTvModule.d.ts +133 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementTvSearch.d.ts +142 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementUIElement.d.ts +105 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementVideo.d.ts +238 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementVideoAd.d.ts +147 -0
- package/dist/types/tpaas-schemas/types/schemas/IEngagementWidget.d.ts +91 -0
- package/dist/types/tpaas-schemas/types/schemas/IHeartbeatCommercialArticle.d.ts +96 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionAd.d.ts +115 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionAdSlot.d.ts +89 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionAffiliate.d.ts +142 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionForm.d.ts +113 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionHealthUIElement.d.ts +138 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionOffer.d.ts +109 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionPlayer.d.ts +108 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionSchoolUIElement.d.ts +109 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionSportsUIElement.d.ts +159 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionTeaser.d.ts +112 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionUIElement.d.ts +107 -0
- package/dist/types/tpaas-schemas/types/schemas/IImpressionWidget.d.ts +89 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveArticle.d.ts +133 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveAudioPage.d.ts +88 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveError.d.ts +95 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveFrontpage.d.ts +83 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveLandingpage.d.ts +90 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveListing.d.ts +123 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedArticle.d.ts +139 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedAudioPage.d.ts +97 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedPage.d.ts +90 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedVideoPage.d.ts +97 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeavePage.d.ts +82 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveSchoolPage.d.ts +84 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveSportsPage.d.ts +137 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveVideoPage.d.ts +91 -0
- package/dist/types/tpaas-schemas/types/schemas/ILeaveWeather.d.ts +96 -0
- package/dist/types/tpaas-schemas/types/schemas/ILoadAd.d.ts +119 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewArticle.d.ts +133 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewAudioPage.d.ts +87 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewError.d.ts +90 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewFrontpage.d.ts +80 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewHealthPage.d.ts +119 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewLandingpage.d.ts +76 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewListing.d.ts +118 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewLockedArticle.d.ts +139 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewLockedAudioPage.d.ts +95 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewLockedPage.d.ts +94 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewLockedVideoPage.d.ts +95 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewPage.d.ts +86 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewSchoolPage.d.ts +88 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewSportsPage.d.ts +135 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewTitle.d.ts +92 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewVideoPage.d.ts +87 -0
- package/dist/types/tpaas-schemas/types/schemas/IViewWeather.d.ts +94 -0
- package/dist/types/tpaas-schemas/types/schemas/index.d.ts +63 -0
- package/dist/types/tpaas-schemas/types/templates/IBranded.d.ts +42 -0
- package/dist/types/tpaas-schemas/types/templates/IConsents.d.ts +34 -0
- package/dist/types/tpaas-schemas/types/templates/IContent.d.ts +56 -0
- package/dist/types/tpaas-schemas/types/templates/IDevice.d.ts +62 -0
- package/dist/types/tpaas-schemas/types/templates/IEngagement.d.ts +21 -0
- package/dist/types/tpaas-schemas/types/templates/IExperiments.d.ts +35 -0
- package/dist/types/tpaas-schemas/types/templates/IHealthFood.d.ts +55 -0
- package/dist/types/tpaas-schemas/types/templates/IHealthOrigin.d.ts +27 -0
- package/dist/types/tpaas-schemas/types/templates/IHealthPhysicalActivity.d.ts +36 -0
- package/dist/types/tpaas-schemas/types/templates/IHealthTraining.d.ts +74 -0
- package/dist/types/tpaas-schemas/types/templates/IHealthUserData.d.ts +25 -0
- package/dist/types/tpaas-schemas/types/templates/ILeave.d.ts +54 -0
- package/dist/types/tpaas-schemas/types/templates/ILeaveAudio.d.ts +37 -0
- package/dist/types/tpaas-schemas/types/templates/ILeaveStories.d.ts +34 -0
- package/dist/types/tpaas-schemas/types/templates/ILocation.d.ts +21 -0
- package/dist/types/tpaas-schemas/types/templates/IMetrics.d.ts +32 -0
- package/dist/types/tpaas-schemas/types/templates/IPageRef.d.ts +46 -0
- package/dist/types/tpaas-schemas/types/templates/IPlacement.d.ts +45 -0
- package/dist/types/tpaas-schemas/types/templates/IProvider.d.ts +73 -0
- package/dist/types/tpaas-schemas/types/templates/ISchool.d.ts +74 -0
- package/dist/types/tpaas-schemas/types/templates/ISession.d.ts +33 -0
- package/dist/types/tpaas-schemas/types/templates/ISports.d.ts +98 -0
- package/dist/types/tpaas-schemas/types/templates/ISportsUserFeatures.d.ts +28 -0
- package/dist/types/tpaas-schemas/types/templates/ITime.d.ts +32 -0
- package/dist/types/tpaas-schemas/types/templates/ITracker.d.ts +37 -0
- package/dist/types/tpaas-schemas/types/templates/IUser.d.ts +34 -0
- package/dist/types/tpaas-schemas/types/templates/IUtmTags.d.ts +38 -0
- package/dist/types/tpaas-schemas/types/templates/index.d.ts +27 -0
- package/dist/types/tpaas-schemas/types.d.ts +42 -0
- package/dist/types/tracker-proxy/consts.d.ts +2 -2
- package/dist/types/types.d.ts +21 -17
- package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/index.d.ts +1 -0
- package/dist/types/utils/xDomainId.d.ts +2 -0
- package/dist/types/version.d.ts +1 -1
- package/dist/types/visibility-observer/index.d.ts +6 -1
- package/dist/types/wrapper/engagement/ui-element/types.d.ts +1 -1
- package/dist/types/wrapper/types/base-event.d.ts +1 -1
- package/dist/types/wrapper/types/event.d.ts +4 -2
- package/dist/types/wrapper/types/utils.d.ts +1 -1
- package/dist/types/wrapper/utils/map-page-to-page-ref.d.ts +3 -0
- package/dist/types/wrapper/view/article/types.d.ts +1 -1
- package/dist/types/wrapper/view/frontpage/types.d.ts +1 -1
- package/dist/types/wrapper/view/listing/types.d.ts +1 -1
- package/dist/types/wrapper/view/loginposter/types.d.ts +1 -1
- package/dist/types/wrapper/view/page/types.d.ts +1 -1
- package/dist/types/wrapper/view/salesposter/types.d.ts +1 -1
- package/dist/types/wrapper/view/ui-element/types.d.ts +1 -1
- package/package.json +21 -20
- package/dist/cjs/Tracker.test-d.js +0 -76
- package/dist/ejs/Tracker.test-d.js +0 -71
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.d.ts +0 -26
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js +0 -273
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis-browser.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/cis.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js +0 -39
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/eventEmitter.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/index.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/pulse-cookie.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.d.ts +0 -36
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/pulseStorage.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js +0 -21
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/storage/storage.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/cjs/types.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.d.ts +0 -26
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis-browser.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.d.ts +0 -10
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/cis.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.d.ts +0 -14
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/eventEmitter.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.d.ts +0 -4
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/index.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.d.ts +0 -55
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/pulse-cookie.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.d.ts +0 -36
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/pulseStorage.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.d.ts +0 -6
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/storage/storage.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.d.ts +0 -24
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js +0 -2
- package/node_modules/@schibsted/pulse-cis-sync/dist/ejs/types.js.map +0 -1
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/cis.d.ts +0 -10
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/eventEmitter.d.ts +0 -14
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/index.d.ts +0 -4
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/pulse-cookie.d.ts +0 -55
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/storage/storage.d.ts +0 -6
- package/node_modules/@schibsted/pulse-cis-sync/dist/types/types.d.ts +0 -24
- package/node_modules/@schibsted/pulse-cis-sync/package.json +0 -44
- package/node_modules/@schibsted/pulse-utils/package.json +0 -36
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/provider.js +0 -12
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/referrer.js +0 -19
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders/session.js +0 -114
- package/node_modules/@schibsted/tpaas-event-builder/dist/cjs/builders.js +0 -272
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/provider.js +0 -9
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/referrer.js +0 -15
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/session.js +0 -108
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders/trackerBuilder.js +0 -11
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/builders.js +0 -215
- package/node_modules/@schibsted/tpaas-event-builder/dist/ejs/index.js +0 -1
- package/node_modules/@schibsted/tpaas-event-builder/dist/index.d.ts +0 -5403
- package/node_modules/@schibsted/tpaas-event-builder/package.json +0 -40
- package/node_modules/@schibsted/tpaas-schemas/dist/index.d.ts +0 -6176
- package/node_modules/@schibsted/tpaas-schemas/package.json +0 -35
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/cis-sync}/types.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/anonymous.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/baseEvent.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/consents.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/experiments.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/pageviewId.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/cjs → dist/cjs/tpaas-builders}/builders/time.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/cookie-config.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/cookie.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/events.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/get.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/getRootDomain.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/merge.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/objects.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/omit.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/randomString.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/throttle.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/cjs → dist/cjs/utils}/webApi.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/cis-sync}/types.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/anonymous.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/baseEvent.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/consents.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/experiments.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/pageviewId.js +0 -0
- /package/{node_modules/@schibsted/tpaas-event-builder/dist/ejs → dist/ejs/tpaas-builders}/builders/time.js +0 -0
- /package/dist/{types/Tracker.test-d.d.ts → ejs/tpaas-context/types.js} +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/cookie-config.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/cookie.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/events.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/get.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/getRootDomain.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/merge.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/objects.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/omit.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/randomString.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/throttle.js +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/ejs → dist/ejs/utils}/webApi.js +0 -0
- /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/cis.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/eventEmitter.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/index.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/pulse-cookie.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-cis-sync/dist/cjs → dist/types/cis-sync}/types.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/cookie-config.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/cookie.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/events.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/get.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/getRootDomain.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/merge.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/objects.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/omit.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/randomString.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/throttle.d.ts +0 -0
- /package/{node_modules/@schibsted/pulse-utils/dist/types → dist/types/utils}/webApi.d.ts +0 -0
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getCommonBuildersOutput = void 0;
|
|
4
|
-
exports.buildAnonymousViewUIElementEvent = buildAnonymousViewUIElementEvent;
|
|
5
|
-
exports.buildViewArticleEvent = buildViewArticleEvent;
|
|
6
|
-
exports.buildViewAudioEvent = buildViewAudioEvent;
|
|
7
|
-
exports.buildViewAudioPageEvent = buildViewAudioPageEvent;
|
|
8
|
-
exports.buildViewErrorEvent = buildViewErrorEvent;
|
|
9
|
-
exports.buildViewFrontpageEvent = buildViewFrontpageEvent;
|
|
10
|
-
exports.buildViewLandingpageEvent = buildViewLandingpageEvent;
|
|
11
|
-
exports.buildViewListingEvent = buildViewListingEvent;
|
|
12
|
-
exports.buildViewLockedArticleEvent = buildViewLockedArticleEvent;
|
|
13
|
-
exports.buildViewLockedAudioEvent = buildViewLockedAudioEvent;
|
|
14
|
-
exports.buildViewLockedAudioPageEvent = buildViewLockedAudioPageEvent;
|
|
15
|
-
exports.buildViewLockedVideoEvent = buildViewLockedVideoEvent;
|
|
16
|
-
exports.buildViewLockedVideoPageEvent = buildViewLockedVideoPageEvent;
|
|
17
|
-
exports.buildLeaveLockedVideoPageEvent = buildLeaveLockedVideoPageEvent;
|
|
18
|
-
exports.buildViewPageEvent = buildViewPageEvent;
|
|
19
|
-
exports.buildViewSportsPageEvent = buildViewSportsPageEvent;
|
|
20
|
-
exports.buildViewTitleEvent = buildViewTitleEvent;
|
|
21
|
-
exports.buildViewVideoEvent = buildViewVideoEvent;
|
|
22
|
-
exports.buildViewVideoPageEvent = buildViewVideoPageEvent;
|
|
23
|
-
exports.buildViewWeatherEvent = buildViewWeatherEvent;
|
|
24
|
-
exports.buildLeaveArticleEvent = buildLeaveArticleEvent;
|
|
25
|
-
exports.buildLeaveAudioPageEvent = buildLeaveAudioPageEvent;
|
|
26
|
-
exports.buildLeaveErrorEvent = buildLeaveErrorEvent;
|
|
27
|
-
exports.buildLeaveFrontpageEvent = buildLeaveFrontpageEvent;
|
|
28
|
-
exports.buildLeaveLandingpageEvent = buildLeaveLandingpageEvent;
|
|
29
|
-
exports.buildLeaveListingEvent = buildLeaveListingEvent;
|
|
30
|
-
exports.buildLeaveLockedArticleEvent = buildLeaveLockedArticleEvent;
|
|
31
|
-
exports.buildLeaveLockedAudioEvent = buildLeaveLockedAudioEvent;
|
|
32
|
-
exports.buildLeaveLockedAudioPageEvent = buildLeaveLockedAudioPageEvent;
|
|
33
|
-
exports.buildLeaveLockedVideoEvent = buildLeaveLockedVideoEvent;
|
|
34
|
-
exports.buildLeavePageEvent = buildLeavePageEvent;
|
|
35
|
-
exports.buildLeaveSportsPageEvent = buildLeaveSportsPageEvent;
|
|
36
|
-
exports.buildLeaveVideoPageEvent = buildLeaveVideoPageEvent;
|
|
37
|
-
exports.buildLeaveWeatherEvent = buildLeaveWeatherEvent;
|
|
38
|
-
exports.buildEngagementAudioEvent = buildEngagementAudioEvent;
|
|
39
|
-
exports.buildEngagementFormEvent = buildEngagementFormEvent;
|
|
40
|
-
exports.buildEngagementOfferEvent = buildEngagementOfferEvent;
|
|
41
|
-
exports.buildEngagementTeaserEvent = buildEngagementTeaserEvent;
|
|
42
|
-
exports.buildEngagementUIElementEvent = buildEngagementUIElementEvent;
|
|
43
|
-
exports.buildEngagementVideoEvent = buildEngagementVideoEvent;
|
|
44
|
-
exports.buildEngagementVideoAdEvent = buildEngagementVideoAdEvent;
|
|
45
|
-
exports.buildEngagementWidgetEvent = buildEngagementWidgetEvent;
|
|
46
|
-
exports.buildCompletedHealthActionEvent = buildCompletedHealthActionEvent;
|
|
47
|
-
exports.buildEngagementHealthUIElementEvent = buildEngagementHealthUIElementEvent;
|
|
48
|
-
exports.buildViewHealthPageEvent = buildViewHealthPageEvent;
|
|
49
|
-
exports.buildImpressionHealthUIElementEvent = buildImpressionHealthUIElementEvent;
|
|
50
|
-
exports.buildImpressionAdSlotEvent = buildImpressionAdSlotEvent;
|
|
51
|
-
exports.buildImpressionFormEvent = buildImpressionFormEvent;
|
|
52
|
-
exports.buildImpressionOfferEvent = buildImpressionOfferEvent;
|
|
53
|
-
exports.buildImpressionPlayerEvent = buildImpressionPlayerEvent;
|
|
54
|
-
exports.buildImpressionTeaserEvent = buildImpressionTeaserEvent;
|
|
55
|
-
exports.buildImpressionUIElementEvent = buildImpressionUIElementEvent;
|
|
56
|
-
exports.buildImpressionWidgetEvent = buildImpressionWidgetEvent;
|
|
57
|
-
const tpaas_schemas_1 = require("@schibsted/tpaas-schemas");
|
|
58
|
-
const ts_deepmerge_1 = require("ts-deepmerge");
|
|
59
|
-
const anonymous_1 = require("./builders/anonymous");
|
|
60
|
-
const baseEvent_1 = require("./builders/baseEvent");
|
|
61
|
-
const consents_1 = require("./builders/consents");
|
|
62
|
-
const device_1 = require("./builders/device");
|
|
63
|
-
const experiments_1 = require("./builders/experiments");
|
|
64
|
-
const navigationType_1 = require("./builders/navigationType");
|
|
65
|
-
const pageInfo_1 = require("./builders/pageInfo");
|
|
66
|
-
const pageviewId_1 = require("./builders/pageviewId");
|
|
67
|
-
const provider_1 = require("./builders/provider");
|
|
68
|
-
const referrer_1 = require("./builders/referrer");
|
|
69
|
-
const session_1 = require("./builders/session");
|
|
70
|
-
const time_1 = require("./builders/time");
|
|
71
|
-
const trackerBuilder_1 = require("./builders/trackerBuilder");
|
|
72
|
-
const user_1 = require("./builders/user");
|
|
73
|
-
const utm_1 = require("./builders/utm");
|
|
74
|
-
/**
|
|
75
|
-
* Common builders output to be merged into all events
|
|
76
|
-
* @param createdAt
|
|
77
|
-
* @param dependencies {TpaasEventBuilderDependencies}
|
|
78
|
-
* @private
|
|
79
|
-
*/
|
|
80
|
-
const getCommonBuildersOutput = (createdAt, { autoTrackerVersion, isHybrid, version, environmentId, jwe, user, consents, providerId, pageviewId, currentPage, }) => {
|
|
81
|
-
return (0, ts_deepmerge_1.merge)((0, trackerBuilder_1.builder)(autoTrackerVersion, isHybrid, version), (0, time_1.builder)(createdAt), (0, session_1.builder)(createdAt), (0, device_1.builder)(environmentId, jwe), (0, user_1.builder)(user), (0, baseEvent_1.builder)(), (0, consents_1.builder)(consents), (0, provider_1.builder)(providerId), (0, pageInfo_1.builder)(currentPage), (0, pageviewId_1.builder)(pageviewId), (0, utm_1.builder)(), (0, referrer_1.builder)());
|
|
82
|
-
};
|
|
83
|
-
exports.getCommonBuildersOutput = getCommonBuildersOutput;
|
|
84
|
-
// there's a bug in the ts-deepmerge library that doesn't properly resolve merging optionals with required properties
|
|
85
|
-
// due to this, we need to manually omit navigationType from the input before merging
|
|
86
|
-
// it has no effect on the final value since navigationType will always be set by the navigationTypeBuilder.
|
|
87
|
-
// But it makes TS happy in an elegant way, without type assertions
|
|
88
|
-
const omitNavigationType = (input) => {
|
|
89
|
-
const { page, ...rest } = input;
|
|
90
|
-
const { navigationType: _, ...pageRest } = page;
|
|
91
|
-
return {
|
|
92
|
-
...rest,
|
|
93
|
-
page: {
|
|
94
|
-
...pageRest,
|
|
95
|
-
},
|
|
96
|
-
};
|
|
97
|
-
};
|
|
98
|
-
// #region AnonymousView Event Builders
|
|
99
|
-
function buildAnonymousViewUIElementEvent(input, dependencies) {
|
|
100
|
-
const createdAt = new Date();
|
|
101
|
-
const { autoTrackerVersion, isHybrid, version, pageviewId, providerId } = dependencies;
|
|
102
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.AnonymousViewUIElement, (0, baseEvent_1.builder)(), (0, trackerBuilder_1.builder)(autoTrackerVersion, isHybrid, version), (0, time_1.builder)(createdAt), (0, pageviewId_1.builder)(pageviewId), (0, utm_1.builder)(), (0, anonymous_1.builder)(), (0, provider_1.builder)(providerId), (0, referrer_1.builder)(), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
103
|
-
}
|
|
104
|
-
// #endregion
|
|
105
|
-
// #region View Event Builders
|
|
106
|
-
function buildViewArticleEvent(input, dependencies) {
|
|
107
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewArticle, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
108
|
-
}
|
|
109
|
-
function buildViewAudioEvent(input, dependencies) {
|
|
110
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewAudio, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
111
|
-
}
|
|
112
|
-
function buildViewAudioPageEvent(input, dependencies) {
|
|
113
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewAudioPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
114
|
-
}
|
|
115
|
-
function buildViewErrorEvent(input, dependencies) {
|
|
116
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewError, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
117
|
-
}
|
|
118
|
-
function buildViewFrontpageEvent(input, dependencies) {
|
|
119
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewFrontpage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
120
|
-
}
|
|
121
|
-
function buildViewLandingpageEvent(input, dependencies) {
|
|
122
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewLandingpage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
123
|
-
}
|
|
124
|
-
function buildViewListingEvent(input, dependencies) {
|
|
125
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewListing, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
126
|
-
}
|
|
127
|
-
function buildViewLockedArticleEvent(input, dependencies) {
|
|
128
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewLockedArticle, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
129
|
-
}
|
|
130
|
-
function buildViewLockedAudioEvent(input, dependencies) {
|
|
131
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewLockedAudio, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
132
|
-
}
|
|
133
|
-
function buildViewLockedAudioPageEvent(input, dependencies) {
|
|
134
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewLockedAudioPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
135
|
-
}
|
|
136
|
-
function buildViewLockedVideoEvent(input, dependencies) {
|
|
137
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewLockedVideo, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
138
|
-
}
|
|
139
|
-
function buildViewLockedVideoPageEvent(input, dependencies) {
|
|
140
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewLockedVideoPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
141
|
-
}
|
|
142
|
-
function buildLeaveLockedVideoPageEvent(input, dependencies) {
|
|
143
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveLockedVideoPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType));
|
|
144
|
-
}
|
|
145
|
-
function buildViewPageEvent(input, dependencies) {
|
|
146
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
147
|
-
}
|
|
148
|
-
function buildViewSportsPageEvent(input, dependencies) {
|
|
149
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewSportsPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
150
|
-
}
|
|
151
|
-
function buildViewTitleEvent(input, dependencies) {
|
|
152
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewTitle, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
153
|
-
}
|
|
154
|
-
function buildViewVideoEvent(input, dependencies) {
|
|
155
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewVideo, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
156
|
-
}
|
|
157
|
-
function buildViewVideoPageEvent(input, dependencies) {
|
|
158
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewVideoPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
159
|
-
}
|
|
160
|
-
function buildViewWeatherEvent(input, dependencies) {
|
|
161
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewWeather, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments), (0, navigationType_1.builder)(input.page.navigationType));
|
|
162
|
-
}
|
|
163
|
-
// #endregion
|
|
164
|
-
// #region Leave Event Builders
|
|
165
|
-
function buildLeaveArticleEvent(input, dependencies) {
|
|
166
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveArticle, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
167
|
-
}
|
|
168
|
-
function buildLeaveAudioPageEvent(input, dependencies) {
|
|
169
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveAudioPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType));
|
|
170
|
-
}
|
|
171
|
-
function buildLeaveErrorEvent(input, dependencies) {
|
|
172
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveError, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
173
|
-
}
|
|
174
|
-
function buildLeaveFrontpageEvent(input, dependencies) {
|
|
175
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveFrontpage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
176
|
-
}
|
|
177
|
-
function buildLeaveLandingpageEvent(input, dependencies) {
|
|
178
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveLandingpage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
179
|
-
}
|
|
180
|
-
function buildLeaveListingEvent(input, dependencies) {
|
|
181
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveListing, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
182
|
-
}
|
|
183
|
-
function buildLeaveLockedArticleEvent(input, dependencies) {
|
|
184
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveLockedArticle, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
185
|
-
}
|
|
186
|
-
function buildLeaveLockedAudioEvent(input, dependencies) {
|
|
187
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveLockedAudio, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
188
|
-
}
|
|
189
|
-
function buildLeaveLockedAudioPageEvent(input, dependencies) {
|
|
190
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveLockedAudioPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType));
|
|
191
|
-
}
|
|
192
|
-
function buildLeaveLockedVideoEvent(input, dependencies) {
|
|
193
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveLockedVideo, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
194
|
-
}
|
|
195
|
-
function buildLeavePageEvent(input, dependencies) {
|
|
196
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeavePage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
197
|
-
}
|
|
198
|
-
function buildLeaveSportsPageEvent(input, dependencies) {
|
|
199
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveSportsPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
200
|
-
}
|
|
201
|
-
function buildLeaveVideoPageEvent(input, dependencies) {
|
|
202
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.LeaveVideoPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType));
|
|
203
|
-
}
|
|
204
|
-
function buildLeaveWeatherEvent(input, dependencies) {
|
|
205
|
-
const createdAt = new Date();
|
|
206
|
-
const { autoTrackerVersion, isHybrid, version, providerId, user, experiments } = dependencies;
|
|
207
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.LeaveWeather, (0, time_1.builder)(createdAt), (0, trackerBuilder_1.builder)(autoTrackerVersion, isHybrid, version), (0, baseEvent_1.builder)(), (0, provider_1.builder)(providerId), (0, user_1.builder)(user), (0, experiments_1.builder)(experiments, input.experiments), (0, consents_1.builder)(dependencies.consents), (0, device_1.builder)(dependencies.environmentId, dependencies.jwe));
|
|
208
|
-
}
|
|
209
|
-
// #endregion
|
|
210
|
-
// #region Engagement Event Builders
|
|
211
|
-
function buildEngagementAudioEvent(input, dependencies) {
|
|
212
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementAudio, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
213
|
-
}
|
|
214
|
-
function buildEngagementFormEvent(input, dependencies) {
|
|
215
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementForm, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
216
|
-
}
|
|
217
|
-
function buildEngagementOfferEvent(input, dependencies) {
|
|
218
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementOffer, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
219
|
-
}
|
|
220
|
-
function buildEngagementTeaserEvent(input, dependencies) {
|
|
221
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementTeaser, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
222
|
-
}
|
|
223
|
-
function buildEngagementUIElementEvent(input, dependencies) {
|
|
224
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementUIElement, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
225
|
-
}
|
|
226
|
-
function buildEngagementVideoEvent(input, dependencies) {
|
|
227
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementVideo, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
228
|
-
}
|
|
229
|
-
function buildEngagementVideoAdEvent(input, dependencies) {
|
|
230
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementVideoAd, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
231
|
-
}
|
|
232
|
-
function buildEngagementWidgetEvent(input, dependencies) {
|
|
233
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementWidget, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
234
|
-
}
|
|
235
|
-
// #endregion
|
|
236
|
-
// #region Health Event Builders
|
|
237
|
-
function buildCompletedHealthActionEvent(input, dependencies) {
|
|
238
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.CompletedHealthAction, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
239
|
-
}
|
|
240
|
-
function buildEngagementHealthUIElementEvent(input, dependencies) {
|
|
241
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.EngagementHealthUIElement, (0, exports.getCommonBuildersOutput)(new Date(), dependencies));
|
|
242
|
-
}
|
|
243
|
-
function buildViewHealthPageEvent(input, dependencies) {
|
|
244
|
-
return (0, ts_deepmerge_1.merge)(omitNavigationType(input), tpaas_schemas_1.ViewHealthPage, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, navigationType_1.builder)(input.page.navigationType));
|
|
245
|
-
}
|
|
246
|
-
function buildImpressionHealthUIElementEvent(input, dependencies) {
|
|
247
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionHealthUIElement, (0, exports.getCommonBuildersOutput)(new Date(), dependencies));
|
|
248
|
-
}
|
|
249
|
-
// #endregion
|
|
250
|
-
// #region Impression Event Builders
|
|
251
|
-
function buildImpressionAdSlotEvent(input, dependencies) {
|
|
252
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionAdSlot, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
253
|
-
}
|
|
254
|
-
function buildImpressionFormEvent(input, dependencies) {
|
|
255
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionForm, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
256
|
-
}
|
|
257
|
-
function buildImpressionOfferEvent(input, dependencies) {
|
|
258
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionOffer, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
259
|
-
}
|
|
260
|
-
function buildImpressionPlayerEvent(input, dependencies) {
|
|
261
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionPlayer, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
262
|
-
}
|
|
263
|
-
function buildImpressionTeaserEvent(input, dependencies) {
|
|
264
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionTeaser, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
265
|
-
}
|
|
266
|
-
function buildImpressionUIElementEvent(input, dependencies) {
|
|
267
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionUIElement, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
268
|
-
}
|
|
269
|
-
function buildImpressionWidgetEvent(input, dependencies) {
|
|
270
|
-
return (0, ts_deepmerge_1.merge)(input, tpaas_schemas_1.ImpressionWidget, (0, exports.getCommonBuildersOutput)(new Date(), dependencies), (0, experiments_1.builder)(dependencies.experiments, input.experiments));
|
|
271
|
-
}
|
|
272
|
-
// #endregion
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { cookieConfig, getRootDomain, isBrowser, readCookie, webApi, writeCookie } from '@schibsted/pulse-utils';
|
|
2
|
-
import { v4 as uuid } from 'uuid';
|
|
3
|
-
const { USE_LOCALSTORAGE } = cookieConfig;
|
|
4
|
-
const SESSION_STORAGE_KEY = '_pulsesession';
|
|
5
|
-
// 1. there are pros and cons to outputting { session: ISession } instead of just ISession
|
|
6
|
-
// this allows us to always have the session builde populate the same property (in this case '.session')
|
|
7
|
-
// if in the future we want the session builder to populate other properties, we should just output ISession and move the mapping logic in index.ts, as part of buildersByEventType
|
|
8
|
-
// 2. we don't need builder-level "isBrowser" checks. If an event is not supposed to be fired from the browser, then the builder shouldn't be assigned to it in buildersByEventType in index.ts
|
|
9
|
-
// however, we should keep minimal "isBrowser" checks before webApi calls because the code might run in SSR environments
|
|
10
|
-
export const builder = (createdAt) => {
|
|
11
|
-
const oldSession = readSession();
|
|
12
|
-
const newSession = updateSession(createdAt, oldSession);
|
|
13
|
-
writeSession(newSession);
|
|
14
|
-
const { sessionId, startTime, isFirstEvent } = newSession;
|
|
15
|
-
return {
|
|
16
|
-
session: {
|
|
17
|
-
isFirstEvent,
|
|
18
|
-
sessionId,
|
|
19
|
-
startTime,
|
|
20
|
-
xDomainId: getXDomainId(),
|
|
21
|
-
},
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
// TODO: do we need to save this in the session, as part of the localStorage?
|
|
25
|
-
// or should we just read it from the URL params every time?
|
|
26
|
-
const getXDomainId = () => {
|
|
27
|
-
if (!isBrowser) {
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
const urlParams = new URLSearchParams(window?.location?.search ?? '');
|
|
31
|
-
return urlParams.get('x_domain_id') || undefined;
|
|
32
|
-
};
|
|
33
|
-
// Return parsed json from cookie (or localStorage if enabled), or undefined.
|
|
34
|
-
// exported for testing purposes.
|
|
35
|
-
export const readAndParse = (storageKey) => {
|
|
36
|
-
try {
|
|
37
|
-
const storedSession = readCookie(storageKey);
|
|
38
|
-
if (storedSession) {
|
|
39
|
-
return JSON.parse(storedSession);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
catch (_e) {
|
|
43
|
-
// If localStorage/cookie is not available, we treat it as if
|
|
44
|
-
// the value is undefined.
|
|
45
|
-
// If data is unparseable, we also ignore it.
|
|
46
|
-
return undefined;
|
|
47
|
-
}
|
|
48
|
-
return undefined;
|
|
49
|
-
};
|
|
50
|
-
// Read and parse session data from localStorage.
|
|
51
|
-
// Any invalid or unreadable data is ignored.
|
|
52
|
-
export const readSession = () => {
|
|
53
|
-
const storedSession = readAndParse(SESSION_STORAGE_KEY);
|
|
54
|
-
if (storedSession) {
|
|
55
|
-
const [sessionId, startTimeMs, lastEventTimeMs] = storedSession;
|
|
56
|
-
const startTime = new Date(startTimeMs);
|
|
57
|
-
const lastEventTime = new Date(lastEventTimeMs);
|
|
58
|
-
if (sessionId &&
|
|
59
|
-
startTime &&
|
|
60
|
-
lastEventTime &&
|
|
61
|
-
!Number.isNaN(startTime.getTime()) &&
|
|
62
|
-
!Number.isNaN(lastEventTime.getTime())) {
|
|
63
|
-
return { sessionId, startTime: startTime.toISOString(), lastEventTime, isFirstEvent: false };
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return undefined;
|
|
67
|
-
};
|
|
68
|
-
// Write session data to localStorage
|
|
69
|
-
const writeSession = (session) => {
|
|
70
|
-
const { sessionId, startTime, lastEventTime } = session;
|
|
71
|
-
try {
|
|
72
|
-
const sessionToStore = [sessionId, new Date(startTime).getTime(), lastEventTime.getTime()];
|
|
73
|
-
const halfHourInDays = 1.0 / (24 * 2);
|
|
74
|
-
writeCookie(SESSION_STORAGE_KEY, JSON.stringify(sessionToStore), getRootDomain(), halfHourInDays);
|
|
75
|
-
// Delete old localStorage-based session if needed
|
|
76
|
-
if (!USE_LOCALSTORAGE) {
|
|
77
|
-
// removeItem will do nothing to a non-existing item.
|
|
78
|
-
// use webApi.localStorage instead of window.localStorage
|
|
79
|
-
webApi.localStorage?.removeItem(SESSION_STORAGE_KEY);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
catch (_e) {
|
|
83
|
-
// If we can't write the session, we just move on in life
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
const createSession = (eventCreationDate) => {
|
|
87
|
-
const now = eventCreationDate ?? new Date();
|
|
88
|
-
return {
|
|
89
|
-
sessionId: uuid(),
|
|
90
|
-
startTime: now.toISOString(),
|
|
91
|
-
lastEventTime: now,
|
|
92
|
-
isFirstEvent: true,
|
|
93
|
-
};
|
|
94
|
-
};
|
|
95
|
-
const updateSession = (eventCreationDate, session) => {
|
|
96
|
-
const sessionMaxInterval = 30 * 60 * 1000; // 30 minutes in milliseconds
|
|
97
|
-
if (!session || session.lastEventTime.getTime() < eventCreationDate.getTime() - sessionMaxInterval) {
|
|
98
|
-
return createSession(eventCreationDate);
|
|
99
|
-
}
|
|
100
|
-
return {
|
|
101
|
-
...session,
|
|
102
|
-
// to ensure backwards compatibility between the new sessionId format and old sessions
|
|
103
|
-
// we need to remove the SDRN prefix from old sessionIds
|
|
104
|
-
sessionId: session.sessionId.replace('sdrn:schibsted:session:', ''),
|
|
105
|
-
isFirstEvent: false,
|
|
106
|
-
lastEventTime: eventCreationDate,
|
|
107
|
-
};
|
|
108
|
-
};
|
|
@@ -1,215 +0,0 @@
|
|
|
1
|
-
import { AnonymousViewUIElement, CompletedHealthAction, EngagementAudio, EngagementForm, EngagementHealthUIElement, EngagementOffer, EngagementTeaser, EngagementUIElement, EngagementVideo, EngagementVideoAd, EngagementWidget, ImpressionAdSlot, ImpressionForm, ImpressionHealthUIElement, ImpressionOffer, ImpressionPlayer, ImpressionTeaser, ImpressionUIElement, ImpressionWidget, LeaveArticle, LeaveAudioPage, LeaveError, LeaveFrontpage, LeaveLandingpage, LeaveListing, LeaveLockedArticle, LeaveLockedAudio, LeaveLockedAudioPage, LeaveLockedVideo, LeaveLockedVideoPage, LeavePage, LeaveSportsPage, LeaveVideoPage, LeaveWeather, ViewArticle, ViewAudio, ViewAudioPage, ViewError, ViewFrontpage, ViewHealthPage, ViewLandingpage, ViewListing, ViewLockedArticle, ViewLockedAudio, ViewLockedAudioPage, ViewLockedVideo, ViewLockedVideoPage, ViewPage, ViewSportsPage, ViewTitle, ViewVideo, ViewVideoPage, ViewWeather, } from '@schibsted/tpaas-schemas';
|
|
2
|
-
import { merge } from 'ts-deepmerge';
|
|
3
|
-
import { builder as anonymousBuilder } from './builders/anonymous';
|
|
4
|
-
import { builder as baseEventBuilder } from './builders/baseEvent';
|
|
5
|
-
import { builder as consentsBuilder } from './builders/consents';
|
|
6
|
-
import { builder as deviceBuilder } from './builders/device';
|
|
7
|
-
import { builder as experimentsBuilder } from './builders/experiments';
|
|
8
|
-
import { builder as navigationTypeBuilder } from './builders/navigationType';
|
|
9
|
-
import { builder as pageInfoBuilder } from './builders/pageInfo';
|
|
10
|
-
import { builder as pageviewIdBuilder } from './builders/pageviewId';
|
|
11
|
-
import { builder as providerBuilder } from './builders/provider';
|
|
12
|
-
import { builder as referrerBuilder } from './builders/referrer';
|
|
13
|
-
import { builder as sessionBuilder } from './builders/session';
|
|
14
|
-
import { builder as timeBuilder } from './builders/time';
|
|
15
|
-
import { builder as trackerBuilder } from './builders/trackerBuilder';
|
|
16
|
-
import { builder as userBuilder } from './builders/user';
|
|
17
|
-
import { builder as utmBuilder } from './builders/utm';
|
|
18
|
-
/**
|
|
19
|
-
* Common builders output to be merged into all events
|
|
20
|
-
* @param createdAt
|
|
21
|
-
* @param dependencies {TpaasEventBuilderDependencies}
|
|
22
|
-
* @private
|
|
23
|
-
*/
|
|
24
|
-
export const getCommonBuildersOutput = (createdAt, { autoTrackerVersion, isHybrid, version, environmentId, jwe, user, consents, providerId, pageviewId, currentPage, }) => {
|
|
25
|
-
return merge(trackerBuilder(autoTrackerVersion, isHybrid, version), timeBuilder(createdAt), sessionBuilder(createdAt), deviceBuilder(environmentId, jwe), userBuilder(user), baseEventBuilder(), consentsBuilder(consents), providerBuilder(providerId), pageInfoBuilder(currentPage), pageviewIdBuilder(pageviewId), utmBuilder(), referrerBuilder());
|
|
26
|
-
};
|
|
27
|
-
// there's a bug in the ts-deepmerge library that doesn't properly resolve merging optionals with required properties
|
|
28
|
-
// due to this, we need to manually omit navigationType from the input before merging
|
|
29
|
-
// it has no effect on the final value since navigationType will always be set by the navigationTypeBuilder.
|
|
30
|
-
// But it makes TS happy in an elegant way, without type assertions
|
|
31
|
-
const omitNavigationType = (input) => {
|
|
32
|
-
const { page, ...rest } = input;
|
|
33
|
-
const { navigationType: _, ...pageRest } = page;
|
|
34
|
-
return {
|
|
35
|
-
...rest,
|
|
36
|
-
page: {
|
|
37
|
-
...pageRest,
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
// #region AnonymousView Event Builders
|
|
42
|
-
export function buildAnonymousViewUIElementEvent(input, dependencies) {
|
|
43
|
-
const createdAt = new Date();
|
|
44
|
-
const { autoTrackerVersion, isHybrid, version, pageviewId, providerId } = dependencies;
|
|
45
|
-
return merge(input, AnonymousViewUIElement, baseEventBuilder(), trackerBuilder(autoTrackerVersion, isHybrid, version), timeBuilder(createdAt), pageviewIdBuilder(pageviewId), utmBuilder(), anonymousBuilder(), providerBuilder(providerId), referrerBuilder(), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
46
|
-
}
|
|
47
|
-
// #endregion
|
|
48
|
-
// #region View Event Builders
|
|
49
|
-
export function buildViewArticleEvent(input, dependencies) {
|
|
50
|
-
return merge(omitNavigationType(input), ViewArticle, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
51
|
-
}
|
|
52
|
-
export function buildViewAudioEvent(input, dependencies) {
|
|
53
|
-
return merge(omitNavigationType(input), ViewAudio, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
54
|
-
}
|
|
55
|
-
export function buildViewAudioPageEvent(input, dependencies) {
|
|
56
|
-
return merge(omitNavigationType(input), ViewAudioPage, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
57
|
-
}
|
|
58
|
-
export function buildViewErrorEvent(input, dependencies) {
|
|
59
|
-
return merge(omitNavigationType(input), ViewError, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
60
|
-
}
|
|
61
|
-
export function buildViewFrontpageEvent(input, dependencies) {
|
|
62
|
-
return merge(omitNavigationType(input), ViewFrontpage, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
63
|
-
}
|
|
64
|
-
export function buildViewLandingpageEvent(input, dependencies) {
|
|
65
|
-
return merge(omitNavigationType(input), ViewLandingpage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
66
|
-
}
|
|
67
|
-
export function buildViewListingEvent(input, dependencies) {
|
|
68
|
-
return merge(omitNavigationType(input), ViewListing, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
69
|
-
}
|
|
70
|
-
export function buildViewLockedArticleEvent(input, dependencies) {
|
|
71
|
-
return merge(omitNavigationType(input), ViewLockedArticle, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
72
|
-
}
|
|
73
|
-
export function buildViewLockedAudioEvent(input, dependencies) {
|
|
74
|
-
return merge(omitNavigationType(input), ViewLockedAudio, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
75
|
-
}
|
|
76
|
-
export function buildViewLockedAudioPageEvent(input, dependencies) {
|
|
77
|
-
return merge(omitNavigationType(input), ViewLockedAudioPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
78
|
-
}
|
|
79
|
-
export function buildViewLockedVideoEvent(input, dependencies) {
|
|
80
|
-
return merge(omitNavigationType(input), ViewLockedVideo, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
81
|
-
}
|
|
82
|
-
export function buildViewLockedVideoPageEvent(input, dependencies) {
|
|
83
|
-
return merge(omitNavigationType(input), ViewLockedVideoPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
84
|
-
}
|
|
85
|
-
export function buildLeaveLockedVideoPageEvent(input, dependencies) {
|
|
86
|
-
return merge(omitNavigationType(input), LeaveLockedVideoPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType));
|
|
87
|
-
}
|
|
88
|
-
export function buildViewPageEvent(input, dependencies) {
|
|
89
|
-
return merge(omitNavigationType(input), ViewPage, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
90
|
-
}
|
|
91
|
-
export function buildViewSportsPageEvent(input, dependencies) {
|
|
92
|
-
return merge(omitNavigationType(input), ViewSportsPage, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
93
|
-
}
|
|
94
|
-
export function buildViewTitleEvent(input, dependencies) {
|
|
95
|
-
return merge(omitNavigationType(input), ViewTitle, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
96
|
-
}
|
|
97
|
-
export function buildViewVideoEvent(input, dependencies) {
|
|
98
|
-
return merge(omitNavigationType(input), ViewVideo, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
99
|
-
}
|
|
100
|
-
export function buildViewVideoPageEvent(input, dependencies) {
|
|
101
|
-
return merge(omitNavigationType(input), ViewVideoPage, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
102
|
-
}
|
|
103
|
-
export function buildViewWeatherEvent(input, dependencies) {
|
|
104
|
-
return merge(omitNavigationType(input), ViewWeather, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments), navigationTypeBuilder(input.page.navigationType));
|
|
105
|
-
}
|
|
106
|
-
// #endregion
|
|
107
|
-
// #region Leave Event Builders
|
|
108
|
-
export function buildLeaveArticleEvent(input, dependencies) {
|
|
109
|
-
return merge(omitNavigationType(input), LeaveArticle, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
110
|
-
}
|
|
111
|
-
export function buildLeaveAudioPageEvent(input, dependencies) {
|
|
112
|
-
return merge(omitNavigationType(input), LeaveAudioPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType));
|
|
113
|
-
}
|
|
114
|
-
export function buildLeaveErrorEvent(input, dependencies) {
|
|
115
|
-
return merge(omitNavigationType(input), LeaveError, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
116
|
-
}
|
|
117
|
-
export function buildLeaveFrontpageEvent(input, dependencies) {
|
|
118
|
-
return merge(omitNavigationType(input), LeaveFrontpage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
119
|
-
}
|
|
120
|
-
export function buildLeaveLandingpageEvent(input, dependencies) {
|
|
121
|
-
return merge(omitNavigationType(input), LeaveLandingpage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
122
|
-
}
|
|
123
|
-
export function buildLeaveListingEvent(input, dependencies) {
|
|
124
|
-
return merge(omitNavigationType(input), LeaveListing, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
125
|
-
}
|
|
126
|
-
export function buildLeaveLockedArticleEvent(input, dependencies) {
|
|
127
|
-
return merge(omitNavigationType(input), LeaveLockedArticle, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
128
|
-
}
|
|
129
|
-
export function buildLeaveLockedAudioEvent(input, dependencies) {
|
|
130
|
-
return merge(omitNavigationType(input), LeaveLockedAudio, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
131
|
-
}
|
|
132
|
-
export function buildLeaveLockedAudioPageEvent(input, dependencies) {
|
|
133
|
-
return merge(omitNavigationType(input), LeaveLockedAudioPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType));
|
|
134
|
-
}
|
|
135
|
-
export function buildLeaveLockedVideoEvent(input, dependencies) {
|
|
136
|
-
return merge(omitNavigationType(input), LeaveLockedVideo, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
137
|
-
}
|
|
138
|
-
export function buildLeavePageEvent(input, dependencies) {
|
|
139
|
-
return merge(omitNavigationType(input), LeavePage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
140
|
-
}
|
|
141
|
-
export function buildLeaveSportsPageEvent(input, dependencies) {
|
|
142
|
-
return merge(omitNavigationType(input), LeaveSportsPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
143
|
-
}
|
|
144
|
-
export function buildLeaveVideoPageEvent(input, dependencies) {
|
|
145
|
-
return merge(omitNavigationType(input), LeaveVideoPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType));
|
|
146
|
-
}
|
|
147
|
-
export function buildLeaveWeatherEvent(input, dependencies) {
|
|
148
|
-
const createdAt = new Date();
|
|
149
|
-
const { autoTrackerVersion, isHybrid, version, providerId, user, experiments } = dependencies;
|
|
150
|
-
return merge(input, LeaveWeather, timeBuilder(createdAt), trackerBuilder(autoTrackerVersion, isHybrid, version), baseEventBuilder(), providerBuilder(providerId), userBuilder(user), experimentsBuilder(experiments, input.experiments), consentsBuilder(dependencies.consents), deviceBuilder(dependencies.environmentId, dependencies.jwe));
|
|
151
|
-
}
|
|
152
|
-
// #endregion
|
|
153
|
-
// #region Engagement Event Builders
|
|
154
|
-
export function buildEngagementAudioEvent(input, dependencies) {
|
|
155
|
-
return merge(input, EngagementAudio, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
156
|
-
}
|
|
157
|
-
export function buildEngagementFormEvent(input, dependencies) {
|
|
158
|
-
return merge(input, EngagementForm, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
159
|
-
}
|
|
160
|
-
export function buildEngagementOfferEvent(input, dependencies) {
|
|
161
|
-
return merge(input, EngagementOffer, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
162
|
-
}
|
|
163
|
-
export function buildEngagementTeaserEvent(input, dependencies) {
|
|
164
|
-
return merge(input, EngagementTeaser, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
165
|
-
}
|
|
166
|
-
export function buildEngagementUIElementEvent(input, dependencies) {
|
|
167
|
-
return merge(input, EngagementUIElement, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
168
|
-
}
|
|
169
|
-
export function buildEngagementVideoEvent(input, dependencies) {
|
|
170
|
-
return merge(input, EngagementVideo, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
171
|
-
}
|
|
172
|
-
export function buildEngagementVideoAdEvent(input, dependencies) {
|
|
173
|
-
return merge(input, EngagementVideoAd, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
174
|
-
}
|
|
175
|
-
export function buildEngagementWidgetEvent(input, dependencies) {
|
|
176
|
-
return merge(input, EngagementWidget, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
177
|
-
}
|
|
178
|
-
// #endregion
|
|
179
|
-
// #region Health Event Builders
|
|
180
|
-
export function buildCompletedHealthActionEvent(input, dependencies) {
|
|
181
|
-
return merge(input, CompletedHealthAction, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
182
|
-
}
|
|
183
|
-
export function buildEngagementHealthUIElementEvent(input, dependencies) {
|
|
184
|
-
return merge(input, EngagementHealthUIElement, getCommonBuildersOutput(new Date(), dependencies));
|
|
185
|
-
}
|
|
186
|
-
export function buildViewHealthPageEvent(input, dependencies) {
|
|
187
|
-
return merge(omitNavigationType(input), ViewHealthPage, getCommonBuildersOutput(new Date(), dependencies), navigationTypeBuilder(input.page.navigationType));
|
|
188
|
-
}
|
|
189
|
-
export function buildImpressionHealthUIElementEvent(input, dependencies) {
|
|
190
|
-
return merge(input, ImpressionHealthUIElement, getCommonBuildersOutput(new Date(), dependencies));
|
|
191
|
-
}
|
|
192
|
-
// #endregion
|
|
193
|
-
// #region Impression Event Builders
|
|
194
|
-
export function buildImpressionAdSlotEvent(input, dependencies) {
|
|
195
|
-
return merge(input, ImpressionAdSlot, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
196
|
-
}
|
|
197
|
-
export function buildImpressionFormEvent(input, dependencies) {
|
|
198
|
-
return merge(input, ImpressionForm, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
199
|
-
}
|
|
200
|
-
export function buildImpressionOfferEvent(input, dependencies) {
|
|
201
|
-
return merge(input, ImpressionOffer, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
202
|
-
}
|
|
203
|
-
export function buildImpressionPlayerEvent(input, dependencies) {
|
|
204
|
-
return merge(input, ImpressionPlayer, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
205
|
-
}
|
|
206
|
-
export function buildImpressionTeaserEvent(input, dependencies) {
|
|
207
|
-
return merge(input, ImpressionTeaser, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
208
|
-
}
|
|
209
|
-
export function buildImpressionUIElementEvent(input, dependencies) {
|
|
210
|
-
return merge(input, ImpressionUIElement, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
211
|
-
}
|
|
212
|
-
export function buildImpressionWidgetEvent(input, dependencies) {
|
|
213
|
-
return merge(input, ImpressionWidget, getCommonBuildersOutput(new Date(), dependencies), experimentsBuilder(dependencies.experiments, input.experiments));
|
|
214
|
-
}
|
|
215
|
-
// #endregion
|