@schibsted/pulse-sdk 8.0.0-rc.13 → 8.0.0-rc.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/cjs/Tracker.js +22 -0
  2. package/dist/cjs/leaveTrackingTpaas/index.js +18 -6
  3. package/dist/cjs/tpaas-builders/builders/device.js +1 -1
  4. package/dist/cjs/tpaas-builders/builders/trackerBuilder.js +2 -1
  5. package/dist/cjs/tpaas-builders/builders.js +10 -6
  6. package/dist/cjs/tpaas-schemas/constants.js +59 -51
  7. package/dist/cjs/version.js +1 -1
  8. package/dist/ejs/Tracker.js +23 -1
  9. package/dist/ejs/leaveTrackingTpaas/index.js +18 -6
  10. package/dist/ejs/tpaas-builders/builders/device.js +1 -1
  11. package/dist/ejs/tpaas-builders/builders/trackerBuilder.js +2 -1
  12. package/dist/ejs/tpaas-builders/builders.js +10 -7
  13. package/dist/ejs/tpaas-schemas/constants.js +57 -49
  14. package/dist/ejs/version.js +1 -1
  15. package/dist/types/Tracker.d.ts +6 -1
  16. package/dist/types/builders/consents.d.ts +2 -2
  17. package/dist/types/builders/device-node.d.ts +2 -2
  18. package/dist/types/builders/events-anonymous-node.d.ts +4 -4
  19. package/dist/types/builders/events-node.d.ts +5 -5
  20. package/dist/types/builders/objects/objects-anonymous-node.d.ts +1 -1
  21. package/dist/types/builders/objects/objects-node.d.ts +1 -1
  22. package/dist/types/builders/origin-node.d.ts +1 -1
  23. package/dist/types/cis-sync/storage/pulseStorage.d.ts +8 -4
  24. package/dist/types/config.d.ts +1 -1
  25. package/dist/types/tpaas-builders/builders/device.d.ts +1 -1
  26. package/dist/types/tpaas-builders/builders/experiments.d.ts +1 -1
  27. package/dist/types/tpaas-builders/builders/navigationType.d.ts +2 -2
  28. package/dist/types/tpaas-builders/builders/pageviewId.d.ts +1 -1
  29. package/dist/types/tpaas-builders/builders/trackerBuilder.d.ts +1 -1
  30. package/dist/types/tpaas-builders/builders/user.d.ts +1 -1
  31. package/dist/types/tpaas-builders/builders.d.ts +41 -39
  32. package/dist/types/tpaas-builders/index.d.ts +1 -1
  33. package/dist/types/tpaas-builders/types.d.ts +2 -0
  34. package/dist/types/tpaas-schemas/constants.d.ts +182 -174
  35. package/dist/types/tpaas-schemas/types/ITpaasEvent.d.ts +2 -0
  36. package/dist/types/tpaas-schemas/types/schemas/IEngagementAudio.d.ts +0 -6
  37. package/dist/types/tpaas-schemas/types/schemas/IEngagementTeaser.d.ts +9 -0
  38. package/dist/types/tpaas-schemas/types/schemas/IEngagementTvModule.d.ts +130 -0
  39. package/dist/types/tpaas-schemas/types/schemas/IEngagementUIElement.d.ts +4 -0
  40. package/dist/types/tpaas-schemas/types/schemas/IEngagementVideo.d.ts +1 -7
  41. package/dist/types/tpaas-schemas/types/schemas/IImpressionForm.d.ts +2 -2
  42. package/dist/types/tpaas-schemas/types/schemas/IImpressionTeaser.d.ts +9 -0
  43. package/dist/types/tpaas-schemas/types/schemas/ILeaveArticle.d.ts +1 -1
  44. package/dist/types/tpaas-schemas/types/schemas/ILeaveAudioPage.d.ts +1 -1
  45. package/dist/types/tpaas-schemas/types/schemas/ILeaveFrontpage.d.ts +1 -1
  46. package/dist/types/tpaas-schemas/types/schemas/ILeaveLockedArticle.d.ts +1 -1
  47. package/dist/types/tpaas-schemas/types/schemas/ILeaveVideoPage.d.ts +1 -1
  48. package/dist/types/tpaas-schemas/types/schemas/IViewArticle.d.ts +1 -1
  49. package/dist/types/tpaas-schemas/types/schemas/IViewAudioPage.d.ts +1 -1
  50. package/dist/types/tpaas-schemas/types/schemas/IViewFrontpage.d.ts +1 -1
  51. package/dist/types/tpaas-schemas/types/schemas/IViewLockedArticle.d.ts +1 -1
  52. package/dist/types/tpaas-schemas/types/schemas/IViewVideoPage.d.ts +1 -1
  53. package/dist/types/tpaas-schemas/types/schemas/index.d.ts +1 -0
  54. package/dist/types/tpaas-schemas/types/templates/IDevice.d.ts +1 -1
  55. package/dist/types/tpaas-schemas/types/templates/IProvider.d.ts +1 -1
  56. package/dist/types/tpaas-schemas/types/templates/ITracker.d.ts +4 -0
  57. package/dist/types/tpaas-schemas/types.d.ts +3 -3
  58. package/dist/types/tracker-proxy/consts.d.ts +2 -2
  59. package/dist/types/version.d.ts +1 -1
  60. package/dist/types/wrapper/types/event.d.ts +1 -1
  61. package/package.json +8 -7
@@ -0,0 +1,130 @@
1
+ /* eslint-disable */
2
+
3
+ import type { IConsents } from '../templates/IConsents.d.ts';
4
+ import type { IContent } from '../templates/IContent.d.ts';
5
+ import type { IDevice } from '../templates/IDevice.d.ts';
6
+ import type { IEngagement } from '../templates/IEngagement.d.ts';
7
+ import type { IExperiments } from '../templates/IExperiments.d.ts';
8
+ import type { IPageRef } from '../templates/IPageRef.d.ts';
9
+ import type { IProvider } from '../templates/IProvider.d.ts';
10
+ import type { ISession } from '../templates/ISession.d.ts';
11
+ import type { ITime } from '../templates/ITime.d.ts';
12
+ import type { ITracker } from '../templates/ITracker.d.ts';
13
+ import type { IUser } from '../templates/IUser.d.ts';
14
+ import type { IUtmTags } from '../templates/IUtmTags.d.ts';
15
+
16
+ /**
17
+ * Interaction with a TvModule element. (Note: currently only used by TVnu.)
18
+ */
19
+ export interface IEngagementTvModule {
20
+ /**
21
+ * The version of the TPaaS schemas catalog that this particular schema belongs to. Semver format.
22
+ * @pattern ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$
23
+ * @example "1.2.3"
24
+ */
25
+ catalogVersion: string;
26
+ consents: IConsents;
27
+ device: IDevice;
28
+ engagement: IEngagement;
29
+ /**
30
+ * The unique identifier for the event.
31
+ * @format uuid
32
+ */
33
+ eventId: string;
34
+ /**
35
+ * The type of the event.
36
+ */
37
+ eventType: 'Engagement';
38
+ experiments?: IExperiments;
39
+ object: {
40
+ /**
41
+ * The size of the component.
42
+ */
43
+ elementSize?: 'XS' | 'S' | 'M' | 'L' | 'XL';
44
+ /**
45
+ * The text of the element.
46
+ */
47
+ elementText?: string;
48
+ /**
49
+ * The type of UIElement (div, span, a, …).
50
+ */
51
+ elementType: string;
52
+ /**
53
+ * Action taken on the module: Add module, remove module, change placement of module, etc.
54
+ * @example "moveTop"
55
+ */
56
+ moduleAction?: string;
57
+ /**
58
+ * Content interacted with in the module: Article teaser text, Title, List Name.
59
+ * @example "Ted Lasso"
60
+ */
61
+ moduleContent?: string;
62
+ /**
63
+ * Text set as header (or title) for the module.
64
+ * @example "Fotbolls-VM"
65
+ */
66
+ moduleHeader: string;
67
+ /**
68
+ * Type of TV module users interact with.
69
+ * @example "Editorial"
70
+ */
71
+ moduleType:
72
+ | 'Channel'
73
+ | 'Sport'
74
+ | 'PlayProvider'
75
+ | 'Editorial'
76
+ | 'ProgramList'
77
+ | 'SportListing'
78
+ | 'PremiereCalendar'
79
+ | 'UserCalendar'
80
+ | 'TrailerList';
81
+ /**
82
+ * The name of the component.
83
+ */
84
+ name: string;
85
+ /**
86
+ * The unique ID for this component.
87
+ */
88
+ objectId: string;
89
+ /**
90
+ * The unique SDRN for this component.
91
+ */
92
+ objectSdrn: string;
93
+ /**
94
+ * The type of the object.
95
+ */
96
+ objectType: 'TvModule';
97
+ };
98
+ page: {
99
+ content?: IContent;
100
+ info: IPageRef;
101
+ /**
102
+ * The pageviewID.
103
+ * @format uuid
104
+ */
105
+ pageviewId: string;
106
+ referrer?: IPageRef;
107
+ utm?: IUtmTags;
108
+ };
109
+ placement: {
110
+ /**
111
+ * The closest parent container used for traffic attribution. When in doubt use “page”.
112
+ */
113
+ containerName: string;
114
+ };
115
+ provider: IProvider;
116
+ /**
117
+ * URL to the JSON schema for this event.
118
+ * @format uri
119
+ * @pattern ^https://tpaas-schemas.schibsted.media/.+\.json$
120
+ */
121
+ schema: string;
122
+ session: ISession;
123
+ target?: {
124
+ content?: IContent;
125
+ info?: IPageRef;
126
+ };
127
+ time: ITime;
128
+ tracker: ITracker;
129
+ user?: IUser;
130
+ }
@@ -65,6 +65,10 @@ export interface IEngagementUIElement {
65
65
  * The type of the component.
66
66
  */
67
67
  objectType: 'UIElement';
68
+ /**
69
+ * The name of the company that sponsored the UIElement. Omitted if it was not sponsored.
70
+ */
71
+ sponsor?: string;
68
72
  };
69
73
  page: {
70
74
  content?: IContent;
@@ -98,7 +98,7 @@ export interface IEngagementVideo {
98
98
  */
99
99
  prevPositionMs: number;
100
100
  /**
101
- * The current playback quality.
101
+ * The current playback quality. High quality equals 1080p or more, medium equals between 480p and up to 1080p and low quality equals below 480p. This definition applies for both vertical and horizontal content.
102
102
  */
103
103
  quality?: string;
104
104
  /**
@@ -230,12 +230,6 @@ export interface IEngagementVideo {
230
230
  referrer?: IPageRef;
231
231
  utm?: IUtmTags;
232
232
  };
233
- placement: {
234
- /**
235
- * ContainerName is the name of the UI container/module in which the player renders (not the player type or content type).
236
- */
237
- containerName: string;
238
- };
239
233
  provider: IProvider;
240
234
  /**
241
235
  * URL to the JSON schema for this event.
@@ -103,8 +103,8 @@ export interface IImpressionForm {
103
103
  */
104
104
  schema: string;
105
105
  session: ISession;
106
- target: {
107
- content: IContent;
106
+ target?: {
107
+ content?: IContent;
108
108
  info?: IPageRef;
109
109
  };
110
110
  time: ITime;
@@ -50,6 +50,11 @@ export interface IImpressionTeaser {
50
50
  * The size of the component.
51
51
  */
52
52
  elementSize?: 'XS' | 'S' | 'M' | 'L' | 'XL';
53
+ /**
54
+ * The URL to the teaser image.
55
+ * @example "https://akamai.vgc.no/v2/images/bf0b043a-beb4-382a-be20-89bba60bdc44?fit=crop&format=auto&w=1440&s=183a09a7662535f456fa261fb7cc4f8af6a55aa1"
56
+ */
57
+ imageUrl?: string;
53
58
  /**
54
59
  * The name of the component.
55
60
  */
@@ -66,6 +71,10 @@ export interface IImpressionTeaser {
66
71
  * The type of the object.
67
72
  */
68
73
  objectType: 'Teaser';
74
+ /**
75
+ * The name of the company that sponsored the UIElement. Omitted if it was not sponsored.
76
+ */
77
+ sponsor?: string;
69
78
  /**
70
79
  * The title of the teaser.
71
80
  */
@@ -108,7 +108,7 @@ export interface ILeaveArticle {
108
108
  /**
109
109
  * The browser navigation that got the user to the current page.
110
110
  */
111
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll';
111
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll' | 'Swipe' | 'DeepLink' | 'Push';
112
112
  /**
113
113
  * The pageviewID.
114
114
  * @format uuid
@@ -65,7 +65,7 @@ export interface ILeaveAudioPage {
65
65
  /**
66
66
  * The browser navigation that got the user to the current page.
67
67
  */
68
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender';
68
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'DeepLink' | 'Push';
69
69
  /**
70
70
  * The pageviewID.
71
71
  * @format uuid
@@ -60,7 +60,7 @@ export interface ILeaveFrontpage {
60
60
  /**
61
61
  * The browser navigation that got the user to the current page.
62
62
  */
63
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender';
63
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'DeepLink' | 'Push';
64
64
  /**
65
65
  * The pageviewID.
66
66
  * @format uuid
@@ -116,7 +116,7 @@ export interface ILeaveLockedArticle {
116
116
  /**
117
117
  * The browser navigation that got the user to the current page.
118
118
  */
119
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll';
119
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll' | 'Swipe';
120
120
  /**
121
121
  * The pageviewID.
122
122
  * @format uuid
@@ -68,7 +68,7 @@ export interface ILeaveVideoPage {
68
68
  /**
69
69
  * The browser navigation that got the user to the current page.
70
70
  */
71
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender';
71
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'DeepLink' | 'Push';
72
72
  /**
73
73
  * The pageviewID.
74
74
  * @format uuid
@@ -108,7 +108,7 @@ export interface IViewArticle {
108
108
  /**
109
109
  * The browser navigation that got the user to the current page.
110
110
  */
111
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll';
111
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll' | 'Swipe' | 'DeepLink' | 'Push';
112
112
  /**
113
113
  * The pageviewID.
114
114
  * @format uuid
@@ -64,7 +64,7 @@ export interface IViewAudioPage {
64
64
  /**
65
65
  * The browser navigation that got the user to the current page.
66
66
  */
67
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender';
67
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'DeepLink' | 'Push';
68
68
  /**
69
69
  * The pageviewID.
70
70
  * @format uuid
@@ -57,7 +57,7 @@ export interface IViewFrontpage {
57
57
  /**
58
58
  * The browser navigation that got the user to the current page.
59
59
  */
60
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender';
60
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'DeepLink' | 'Push';
61
61
  /**
62
62
  * The pageviewID.
63
63
  * @format uuid
@@ -116,7 +116,7 @@ export interface IViewLockedArticle {
116
116
  /**
117
117
  * The browser navigation that got the user to the current page.
118
118
  */
119
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll';
119
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'Scroll' | 'Swipe';
120
120
  /**
121
121
  * The pageviewID.
122
122
  * @format uuid
@@ -64,7 +64,7 @@ export interface IViewVideoPage {
64
64
  /**
65
65
  * The browser navigation that got the user to the current page.
66
66
  */
67
- navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender';
67
+ navigationType: 'Navigate' | 'Reload' | 'BackForward' | 'Prerender' | 'DeepLink' | 'Push';
68
68
  /**
69
69
  * The pageviewID.
70
70
  * @format uuid
@@ -5,6 +5,7 @@ export type { IEngagementForm } from './IEngagementForm.d.ts';
5
5
  export type { IEngagementHealthUIElement } from './IEngagementHealthUIElement.d.ts';
6
6
  export type { IEngagementOffer } from './IEngagementOffer.d.ts';
7
7
  export type { IEngagementTeaser } from './IEngagementTeaser.d.ts';
8
+ export type { IEngagementTvModule } from './IEngagementTvModule.d.ts';
8
9
  export type { IEngagementUIElement } from './IEngagementUIElement.d.ts';
9
10
  export type { IEngagementVideo } from './IEngagementVideo.d.ts';
10
11
  export type { IEngagementVideoAd } from './IEngagementVideoAd.d.ts';
@@ -23,7 +23,7 @@ export interface IDevice {
23
23
  deviceType: 'Desktop' | 'Mobile' | 'Tablet' | 'SmartTv' | 'Other';
24
24
  /**
25
25
  * The environmentId.
26
- * @pattern ^[0-9a-fA-F-]+$
26
+ * @pattern ^[0-9a-f]{8}-[0-9a-f]{4}-[47][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
27
27
  * @example "42401e1f-7e04-4b73-8bed-1ceffc0ed8cc"
28
28
  */
29
29
  environmentId: string;
@@ -63,7 +63,7 @@ export interface IProvider {
63
63
  /**
64
64
  * The deployment stage of the event.
65
65
  */
66
- stage: 'Dev' | 'Test' | 'Pro';
66
+ stage: 'Dev' | 'Pre' | 'Pro';
67
67
  /**
68
68
  * Version of the product.
69
69
  * @pattern ^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$
@@ -29,6 +29,10 @@ export interface ITracker {
29
29
  * @example "2.3.4"
30
30
  */
31
31
  proxyVersion?: string;
32
+ /**
33
+ * Allows apps to pick up collector destination correctly.
34
+ */
35
+ routingStage: 'Dev' | 'Pre' | 'Pro';
32
36
  /**
33
37
  * The SDK being used. If no SDK was used, use “backend”.
34
38
  * @example "JS"
@@ -1,12 +1,12 @@
1
1
  import type { ITpaasEvent } from './types/ITpaasEvent.d.ts';
2
- import type { IAnonymousViewUIElement, ICompletedHealthAction, IEngagementAudio, IEngagementForm, IEngagementHealthUIElement, IEngagementOffer, IEngagementTeaser, IEngagementUIElement, IEngagementVideo, IEngagementVideoAd, IEngagementWidget, IImpressionAdSlot, IImpressionForm, IImpressionHealthUIElement, IImpressionOffer, IImpressionPlayer, IImpressionTeaser, IImpressionUIElement, IImpressionWidget, ILeaveAudioPage, ILeaveError, ILeaveFrontpage, ILeaveLandingpage, ILeaveListing, ILeaveLockedAudioPage, ILeaveLockedVideoPage, ILeavePage, ILeaveSportsPage, ILeaveVideoPage, ILeaveWeather, IViewAudioPage, IViewError, IViewFrontpage, IViewHealthPage, IViewLandingpage, IViewListing, IViewLockedAudioPage, IViewLockedVideoPage, IViewPage, IViewSportsPage, IViewTitle, IViewVideoPage, IViewWeather } from './types/schemas/index.d.ts';
2
+ import type { IAnonymousViewUIElement, ICompletedHealthAction, IEngagementAudio, IEngagementForm, IEngagementHealthUIElement, IEngagementOffer, IEngagementTeaser, IEngagementTvModule, IEngagementUIElement, IEngagementVideo, IEngagementVideoAd, IEngagementWidget, IImpressionAdSlot, IImpressionForm, IImpressionHealthUIElement, IImpressionOffer, IImpressionPlayer, IImpressionTeaser, IImpressionUIElement, IImpressionWidget, ILeaveAudioPage, ILeaveError, ILeaveFrontpage, ILeaveLandingpage, ILeaveListing, ILeaveLockedAudioPage, ILeaveLockedVideoPage, ILeavePage, ILeaveSportsPage, ILeaveVideoPage, ILeaveWeather, IViewAudioPage, IViewError, IViewFrontpage, IViewHealthPage, IViewLandingpage, IViewListing, IViewLockedAudioPage, IViewLockedVideoPage, IViewPage, IViewSportsPage, IViewTitle, IViewVideoPage, IViewWeather } from './types/schemas/index.d.ts';
3
3
  export type OmittedProperties = 'user' | 'eventId' | 'consents' | 'device' | 'time' | 'tracker' | 'session' | 'eventType' | 'schema' | 'object.objectType' | 'isAnonymous' | 'provider.providerId' | 'provider.providerSdrn' | 'provider.component' | 'provider.componentVersion' | 'provider.name' | 'provider.group' | 'page.pageviewId' | 'page.utm' | 'page.info' | 'catalogVersion';
4
4
  export type TpaasSchemasWithNavigationType = Extract<ITpaasEvent, {
5
5
  page: {
6
6
  navigationType?: string;
7
7
  };
8
8
  }>;
9
- export type NavigationType = TpaasSchemasWithNavigationType['page']['navigationType'];
9
+ export type NavigationType = Exclude<TpaasSchemasWithNavigationType['page']['navigationType'], 'DeepLink' | 'Push' | 'Swipe'>;
10
10
  export type DeepOmit<T, K extends string> = T extends readonly unknown[] ? T : T extends object ? {
11
11
  [P in keyof T as P extends K ? never : P]: DeepOmit<T[P], K extends `${Exclude<P, symbol>}.${infer R}` ? R : never>;
12
12
  } extends infer Result ? {
@@ -37,6 +37,6 @@ type WithOmittedReferrer<T> = T extends Exclude<ITpaasEvent, {
37
37
  }> ? Omit<T, 'page'> & {
38
38
  page: Omit<T['page'], 'referrer'>;
39
39
  } : T;
40
- export type TpaasOptionalPageSchemas = IAnonymousViewUIElement | ICompletedHealthAction | IEngagementAudio | IEngagementForm | IEngagementHealthUIElement | IEngagementOffer | IEngagementTeaser | IEngagementUIElement | IEngagementVideo | IEngagementVideoAd | IEngagementWidget | IImpressionAdSlot | IImpressionForm | IImpressionHealthUIElement | IImpressionOffer | IImpressionPlayer | IImpressionTeaser | IImpressionUIElement | IImpressionWidget | ILeaveAudioPage | ILeaveError | ILeaveFrontpage | ILeaveLandingpage | ILeaveListing | ILeaveLockedAudioPage | ILeaveLockedVideoPage | ILeavePage | ILeaveSportsPage | ILeaveVideoPage | ILeaveWeather | IViewAudioPage | IViewError | IViewFrontpage | IViewHealthPage | IViewLandingpage | IViewListing | IViewLockedAudioPage | IViewLockedVideoPage | IViewPage | IViewSportsPage | IViewTitle | IViewVideoPage | IViewWeather;
40
+ export type TpaasOptionalPageSchemas = IAnonymousViewUIElement | ICompletedHealthAction | IEngagementAudio | IEngagementForm | IEngagementHealthUIElement | IEngagementOffer | IEngagementTeaser | IEngagementTvModule | IEngagementUIElement | IEngagementVideo | IEngagementVideoAd | IEngagementWidget | IImpressionAdSlot | IImpressionForm | IImpressionHealthUIElement | IImpressionOffer | IImpressionPlayer | IImpressionTeaser | IImpressionUIElement | IImpressionWidget | ILeaveAudioPage | ILeaveError | ILeaveFrontpage | ILeaveLandingpage | ILeaveListing | ILeaveLockedAudioPage | ILeaveLockedVideoPage | ILeavePage | ILeaveSportsPage | ILeaveVideoPage | ILeaveWeather | IViewAudioPage | IViewError | IViewFrontpage | IViewHealthPage | IViewLandingpage | IViewListing | IViewLockedAudioPage | IViewLockedVideoPage | IViewPage | IViewSportsPage | IViewTitle | IViewVideoPage | IViewWeather;
41
41
  export type InputParams<T extends ITpaasEvent> = DeepOmit<OptionalNavigationType<WithOptionalPage<WithOmittedReferrer<T>>>, OmittedProperties>;
42
42
  export {};
@@ -16,8 +16,8 @@ export declare const MESSAGE_TYPE_ACK = "pulse-tracker-proxy:ack";
16
16
  export declare const MESSAGE_TYPE_INVOKE = "pulse-tracker-proxy:invoke";
17
17
  export declare const MESSAGE_TYPE_RETURN = "pulse-tracker-proxy:return";
18
18
  export declare const MESSAGE_TYPE_RETURN_ERROR = "pulse-tracker-proxy:return-error";
19
- export declare const ALLOWED_METHODS: readonly ["track"];
20
- export declare const TPAAS_ALLOWED_METHODS: readonly ["trackAnonymousViewUIElement", "trackEngagementAudio", "trackEngagementForm", "trackEngagementHealthUIElement", "trackEngagementOffer", "trackEngagementTeaser", "trackEngagementUIElement", "trackEngagementVideo", "trackEngagementVideoAd", "trackEngagementWidget", "trackCompletedHealthAction", "trackImpressionAdSlot", "trackImpressionForm", "trackImpressionHealthUIElement", "trackImpressionOffer", "trackImpressionPlayer", "trackImpressionTeaser", "trackImpressionUIElement", "trackImpressionWidget", "trackLeaveArticle", "trackLeaveAudioPage", "trackLeaveError", "trackLeaveFrontpage", "trackLeaveLandingpage", "trackLeaveListing", "trackLeaveLockedArticle", "trackLeaveLockedAudioPage", "trackLeaveLockedVideoPage", "trackLeavePage", "trackLeaveSportsPage", "trackLeaveVideoPage", "trackLeaveWeather", "trackViewArticle", "trackViewAudioPage", "trackViewError", "trackViewFrontpage", "trackViewHealthPage", "trackViewLandingpage", "trackViewListing", "trackViewLockedArticle", "trackViewLockedAudioPage", "trackViewLockedVideoPage", "trackViewPage", "trackViewSportsPage", "trackViewTitle", "trackViewVideoPage", "trackViewWeather", "trackLegacyViewArticle", "trackLegacyViewLoginPoster", "trackLegacyViewSalesPoster", "trackLegacyViewListing", "trackLegacyViewFrontpage", "trackLegacyViewPage", "trackLegacyViewUIElement", "trackLegacyClickUIElement"];
19
+ export declare const ALLOWED_METHODS: readonly ['track'];
20
+ export declare const TPAAS_ALLOWED_METHODS: readonly ['trackAnonymousViewUIElement', 'trackEngagementAudio', 'trackEngagementForm', 'trackEngagementHealthUIElement', 'trackEngagementOffer', 'trackEngagementTeaser', 'trackEngagementUIElement', 'trackEngagementVideo', 'trackEngagementVideoAd', 'trackEngagementWidget', 'trackCompletedHealthAction', 'trackImpressionAdSlot', 'trackImpressionForm', 'trackImpressionHealthUIElement', 'trackImpressionOffer', 'trackImpressionPlayer', 'trackImpressionTeaser', 'trackImpressionUIElement', 'trackImpressionWidget', 'trackLeaveArticle', 'trackLeaveAudioPage', 'trackLeaveError', 'trackLeaveFrontpage', 'trackLeaveLandingpage', 'trackLeaveListing', 'trackLeaveLockedArticle', 'trackLeaveLockedAudioPage', 'trackLeaveLockedVideoPage', 'trackLeavePage', 'trackLeaveSportsPage', 'trackLeaveVideoPage', 'trackLeaveWeather', 'trackViewArticle', 'trackViewAudioPage', 'trackViewError', 'trackViewFrontpage', 'trackViewHealthPage', 'trackViewLandingpage', 'trackViewListing', 'trackViewLockedArticle', 'trackViewLockedAudioPage', 'trackViewLockedVideoPage', 'trackViewPage', 'trackViewSportsPage', 'trackViewTitle', 'trackViewVideoPage', 'trackViewWeather', 'trackLegacyViewArticle', 'trackLegacyViewLoginPoster', 'trackLegacyViewSalesPoster', 'trackLegacyViewListing', 'trackLegacyViewFrontpage', 'trackLegacyViewPage', 'trackLegacyViewUIElement', 'trackLegacyClickUIElement'];
21
21
  export declare function isPulseProxyMessage(message: unknown): message is Message;
22
22
  export type TrackInvocation = {
23
23
  method: 'track';
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "8.0.0-rc.13";
1
+ export declare const SDK_VERSION = "8.0.0-rc.14";
@@ -1,5 +1,5 @@
1
1
  type NavigationType = 'navigation' | 'alternative' | 'refresh' | 'unknown';
2
- declare const LEGACY_PAGE_TYPE_VALUES: readonly ["Article", "Listing", "Frontpage", "SalesPoster", "Page", "LoginPoster"];
2
+ declare const LEGACY_PAGE_TYPE_VALUES: readonly ['Article', 'Listing', 'Frontpage', 'SalesPoster', 'Page', 'LoginPoster'];
3
3
  export declare function isLegacyPageType(value: string): value is PageType;
4
4
  type PageType = (typeof LEGACY_PAGE_TYPE_VALUES)[number];
5
5
  type TargetCategory = 'Article' | 'Audio' | 'Video' | 'Weather' | 'Title' | 'other';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schibsted/pulse-sdk",
3
- "version": "8.0.0-rc.13",
3
+ "version": "8.0.0-rc.14",
4
4
  "description": "Node.js / Browser Pulse SDK",
5
5
  "author": "Schibsted Data&Tech",
6
6
  "license": "UNLICENSED",
@@ -42,7 +42,7 @@
42
42
  "dependencies": {
43
43
  "loglevel": "1.9.2",
44
44
  "ts-deepmerge": "8.0.0",
45
- "ua-parser-js": "2.0.10",
45
+ "ua-parser-js": "1.0.41",
46
46
  "uuid": "14.0.1"
47
47
  },
48
48
  "devDependencies": {
@@ -50,14 +50,15 @@
50
50
  "@types/debounce": "1.2.4",
51
51
  "@types/lodash": "4.17.24",
52
52
  "@types/node": "24.13.2",
53
- "@vitest/browser-playwright": "4.1.9",
53
+ "@types/ua-parser-js": "0.7.39",
54
+ "@vitest/browser-playwright": "4.1.10",
54
55
  "json-schema-to-typescript": "15.0.4",
55
56
  "lodash": "4.18.1",
56
- "msw": "2.14.6",
57
+ "msw": "2.15.0",
57
58
  "ts-morph": "28.0.0",
58
- "tsx": "4.22.4",
59
- "typescript": "6.0.3",
60
- "yoctocolors": "2.1.2",
59
+ "tsx": "4.23.1",
60
+ "typescript": "7.0.2",
61
+ "yoctocolors": "2.2.0",
61
62
  "@schibsted/tpaas-test-fixtures": "1.0.0"
62
63
  },
63
64
  "scripts": {