saltfish 0.1.93 → 0.1.95
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/core/SaltfishPlayer.d.ts +40 -113
- package/dist/core/SaltfishPlayer.d.ts.map +1 -1
- package/dist/core/factories/ManagerFactory.d.ts +19 -0
- package/dist/core/factories/ManagerFactory.d.ts.map +1 -0
- package/dist/core/factories/ServiceContainer.d.ts +29 -0
- package/dist/core/factories/ServiceContainer.d.ts.map +1 -0
- package/dist/core/services/ManagerOrchestrator.d.ts +42 -0
- package/dist/core/services/ManagerOrchestrator.d.ts.map +1 -0
- package/dist/core/services/PlayerInitializationService.d.ts +46 -0
- package/dist/core/services/PlayerInitializationService.d.ts.map +1 -0
- package/dist/core/services/PlaylistOrchestrator.d.ts +47 -0
- package/dist/core/services/PlaylistOrchestrator.d.ts.map +1 -0
- package/dist/core/services/ServiceInterfaces.d.ts +151 -0
- package/dist/core/services/ServiceInterfaces.d.ts.map +1 -0
- package/dist/core/services/StateMachineActionHandler.d.ts +45 -0
- package/dist/core/services/StateMachineActionHandler.d.ts.map +1 -0
- package/dist/core/services/UserManagementService.d.ts +45 -0
- package/dist/core/services/UserManagementService.d.ts.map +1 -0
- package/dist/player.js +2 -2
- package/dist/player.min.js +2 -2
- package/dist/saltfish-playlist-player.es.js +7142 -6681
- package/dist/saltfish-playlist-player.umd.js +1 -1
- package/package.json +1 -1
|
@@ -1,164 +1,91 @@
|
|
|
1
|
-
import { VideoManager } from '../managers/VideoManager';
|
|
2
1
|
import type { SaltfishEventName, EventHandler } from '../managers/EventManager';
|
|
3
2
|
import type { SaltfishConfig, PlaylistOptions } from '../types';
|
|
3
|
+
import { PlayerInitializationService } from './services/PlayerInitializationService';
|
|
4
|
+
import { UserManagementService } from './services/UserManagementService';
|
|
5
|
+
import { PlaylistOrchestrator } from './services/PlaylistOrchestrator';
|
|
6
|
+
import { StateMachineActionHandler } from './services/StateMachineActionHandler';
|
|
7
|
+
import { ManagerOrchestrator } from './services/ManagerOrchestrator';
|
|
4
8
|
/**
|
|
5
9
|
* Main class for the Saltfish playlist Player
|
|
10
|
+
*
|
|
11
|
+
* Refactored to use service-oriented architecture with dependency injection
|
|
6
12
|
*/
|
|
7
13
|
export declare class SaltfishPlayer {
|
|
8
14
|
private static instance;
|
|
9
|
-
private
|
|
10
|
-
|
|
11
|
-
private
|
|
12
|
-
private
|
|
13
|
-
private
|
|
14
|
-
private
|
|
15
|
-
private
|
|
16
|
-
private triggerManager;
|
|
17
|
-
private abTestManager;
|
|
18
|
-
private eventManager;
|
|
19
|
-
private playlistManager;
|
|
20
|
-
private stepTimeoutManager;
|
|
21
|
-
private uiManager;
|
|
22
|
-
private storageManager;
|
|
23
|
-
private uiUpdaterUnsubscribe;
|
|
24
|
-
private eventUpdaterUnsubscribe;
|
|
15
|
+
private serviceContainer;
|
|
16
|
+
private playerInitializationService;
|
|
17
|
+
private userManagementService;
|
|
18
|
+
private playlistOrchestrator;
|
|
19
|
+
private stateMachineActionHandler;
|
|
20
|
+
private managerOrchestrator;
|
|
21
|
+
private managerFactory;
|
|
25
22
|
private isInitialized;
|
|
26
|
-
private
|
|
27
|
-
private lastConfig;
|
|
28
|
-
private lastUserIdentification;
|
|
29
|
-
private userDataLoadedPromise;
|
|
30
|
-
private userDataLoadedResolve;
|
|
23
|
+
private constructor();
|
|
31
24
|
/**
|
|
32
|
-
*
|
|
33
|
-
* @private Constructor is private to enforce singleton pattern
|
|
25
|
+
* Set up dependencies between services
|
|
34
26
|
*/
|
|
35
|
-
private
|
|
27
|
+
private setupServiceDependencies;
|
|
36
28
|
/**
|
|
37
29
|
* Gets the singleton instance of the Saltfish playlist Player
|
|
38
30
|
*/
|
|
39
31
|
static getInstance(): SaltfishPlayer;
|
|
40
32
|
/**
|
|
41
|
-
*
|
|
42
|
-
* @returns The current sessionId
|
|
33
|
+
* Get session ID from SessionManager
|
|
43
34
|
*/
|
|
44
35
|
getSessionId(): string;
|
|
45
36
|
/**
|
|
46
|
-
*
|
|
47
|
-
* @returns The current runId or null if no playlist is running
|
|
37
|
+
* Get run ID from SessionManager
|
|
48
38
|
*/
|
|
49
39
|
getRunId(): string | null;
|
|
50
40
|
/**
|
|
51
|
-
*
|
|
52
|
-
* @param config - Configuration options
|
|
41
|
+
* Initialize the player with configuration
|
|
53
42
|
*/
|
|
54
43
|
initialize(config: SaltfishConfig): Promise<void>;
|
|
55
44
|
/**
|
|
56
|
-
*
|
|
57
|
-
* @param userId - User ID
|
|
58
|
-
* @param userData - Additional user data
|
|
45
|
+
* Identify a user with ID and optional data
|
|
59
46
|
*/
|
|
60
47
|
identifyUser(userId: string, userData?: Record<string, unknown>): void;
|
|
61
48
|
/**
|
|
62
|
-
*
|
|
63
|
-
* Automatically generates a persistent anonymous user ID stored in localStorage
|
|
64
|
-
* @param userData - Optional additional user data
|
|
49
|
+
* Identify user anonymously with optional data
|
|
65
50
|
*/
|
|
66
51
|
identifyAnonymous(userData?: Record<string, unknown>): Promise<void>;
|
|
67
52
|
/**
|
|
68
|
-
*
|
|
69
|
-
* @param userId - User ID
|
|
70
|
-
* @param userData - Additional user data
|
|
71
|
-
*/
|
|
72
|
-
private fetchUserData;
|
|
73
|
-
/**
|
|
74
|
-
* Loads user data from localStorage for anonymous identification
|
|
75
|
-
* @param userId - User ID
|
|
76
|
-
* @param userData - Additional user data
|
|
77
|
-
*/
|
|
78
|
-
private loadAnonymousUserData;
|
|
79
|
-
/**
|
|
80
|
-
* Checks for in-progress playlists and resumes them before trigger evaluation
|
|
81
|
-
* Only resumes if the playlist was updated within the last 10 seconds
|
|
82
|
-
* @param watchedPlaylists - User's watched playlists data
|
|
83
|
-
* @returns Promise<boolean> - true if a playlist was resumed, false otherwise
|
|
84
|
-
*/
|
|
85
|
-
private checkAndResumeInProgressPlaylist;
|
|
86
|
-
/**
|
|
87
|
-
* Gets or creates a persistent anonymous user ID
|
|
88
|
-
* @returns A persistent anonymous user ID
|
|
89
|
-
*/
|
|
90
|
-
private getOrCreateAnonymousUserId;
|
|
91
|
-
/**
|
|
92
|
-
* Starts a new playlist
|
|
93
|
-
* @param playlistId - ID of the playlist to start
|
|
94
|
-
* @param options - Optional playback options including position, drag behavior, and starting step
|
|
95
|
-
* @param options.position - Position of the player on screen
|
|
96
|
-
* @param options.allowDrag - Whether the player can be dragged
|
|
97
|
-
* @param options.startNodeId - Optional step ID to start from instead of the manifest's default startStep
|
|
98
|
-
*
|
|
99
|
-
* If the player has been destroyed, it will automatically reinitialize using the last configuration
|
|
100
|
-
* before starting the playlist.
|
|
53
|
+
* Start a playlist with given options
|
|
101
54
|
*/
|
|
102
55
|
startPlaylist(playlistId: string, options?: PlaylistOptions): Promise<void>;
|
|
103
56
|
/**
|
|
104
|
-
*
|
|
105
|
-
*/
|
|
106
|
-
private registerStateMachineActions;
|
|
107
|
-
/**
|
|
108
|
-
* Finds the URL of the next video in the playlist
|
|
109
|
-
* @param currentStep - The current step being played
|
|
110
|
-
* @returns The URL of the next video or null if no next video exists
|
|
111
|
-
*/
|
|
112
|
-
private findNextVideoUrl;
|
|
113
|
-
/**
|
|
114
|
-
* Gets the appropriate video URL for a step, preferring compressedVideoUrl if available
|
|
115
|
-
* Also checks for translations if a language is configured
|
|
116
|
-
* @param step - The step to get the video URL for
|
|
117
|
-
* @returns The video URL to use (translated, compressed if available, otherwise regular)
|
|
57
|
+
* Reset current playlist to initial state
|
|
118
58
|
*/
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* Setup UI and Event updaters that subscribe to store changes
|
|
122
|
-
*/
|
|
123
|
-
private setupUpdaters;
|
|
124
|
-
/**
|
|
125
|
-
* Handles store state changes
|
|
126
|
-
*/
|
|
127
|
-
private handleStoreChanges;
|
|
128
|
-
/**
|
|
129
|
-
* Records an A/B test attempt when a user tries to access a playlist
|
|
130
|
-
* This stores the assignment in the backend regardless of whether they get the playlist
|
|
131
|
-
* @param playlistId - ID of the playlist being attempted
|
|
132
|
-
*/
|
|
133
|
-
private recordABTestAttempt;
|
|
59
|
+
resetPlaylist(): void;
|
|
134
60
|
/**
|
|
135
|
-
*
|
|
61
|
+
* Destroy the player and clean up all resources
|
|
136
62
|
*/
|
|
137
63
|
destroy(): void;
|
|
138
64
|
/**
|
|
139
|
-
*
|
|
140
|
-
* @param eventName - Name of event to listen for
|
|
141
|
-
* @param listener - Function to call when the event is triggered
|
|
65
|
+
* Add event listener
|
|
142
66
|
*/
|
|
143
67
|
on<T extends SaltfishEventName>(eventName: T, listener: EventHandler<T>): void;
|
|
144
68
|
/**
|
|
145
|
-
*
|
|
146
|
-
* @param eventName - Name of event to stop listening for
|
|
147
|
-
* @param listener - Function to remove
|
|
148
|
-
* @returns true if the listener was removed, false if it wasn't found
|
|
69
|
+
* Remove event listener
|
|
149
70
|
*/
|
|
150
71
|
off<T extends SaltfishEventName>(eventName: T, listener: EventHandler<T>): boolean;
|
|
151
72
|
/**
|
|
152
|
-
*
|
|
73
|
+
* Get VideoManager instance for backwards compatibility
|
|
153
74
|
*/
|
|
154
|
-
|
|
75
|
+
get videoManager(): any;
|
|
155
76
|
/**
|
|
156
|
-
*
|
|
77
|
+
* Get all managers for debugging/testing purposes
|
|
157
78
|
*/
|
|
158
|
-
|
|
79
|
+
getManagers(): import("./services/ServiceInterfaces").ManagedManagers;
|
|
159
80
|
/**
|
|
160
|
-
*
|
|
81
|
+
* Get services for debugging/testing purposes
|
|
161
82
|
*/
|
|
162
|
-
|
|
83
|
+
getServices(): {
|
|
84
|
+
playerInitializationService: PlayerInitializationService;
|
|
85
|
+
userManagementService: UserManagementService;
|
|
86
|
+
playlistOrchestrator: PlaylistOrchestrator;
|
|
87
|
+
stateMachineActionHandler: StateMachineActionHandler;
|
|
88
|
+
managerOrchestrator: ManagerOrchestrator;
|
|
89
|
+
};
|
|
163
90
|
}
|
|
164
91
|
//# sourceMappingURL=SaltfishPlayer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaltfishPlayer.d.ts","sourceRoot":"","sources":["../../src/core/SaltfishPlayer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SaltfishPlayer.d.ts","sourceRoot":"","sources":["../../src/core/SaltfishPlayer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAKhE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAMrE;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA+B;IAGtD,OAAO,CAAC,gBAAgB,CAAmB;IAG3C,OAAO,CAAC,2BAA2B,CAA8B;IACjE,OAAO,CAAC,qBAAqB,CAAwB;IACrD,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,yBAAyB,CAA4B;IAC7D,OAAO,CAAC,mBAAmB,CAAsB;IAGjD,OAAO,CAAC,cAAc,CAAiB;IAGvC,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO;IAkDP;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAkBhC;;OAEG;WACW,WAAW,IAAI,cAAc;IAO3C;;OAEG;IACI,YAAY,IAAI,MAAM;IAK7B;;OAEG;IACI,QAAQ,IAAI,MAAM,GAAG,IAAI;IAKhC;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB9D;;OAEG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAI7E;;OAEG;IACU,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjF;;OAEG;IACU,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxF;;OAEG;IACI,aAAa,IAAI,IAAI;IAI5B;;OAEG;IACI,OAAO,IAAI,IAAI;IAyBtB;;OAEG;IACI,EAAE,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAKrF;;OAEG;IACI,GAAG,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO;IAQzF;;OAEG;IACH,IAAW,YAAY,QAGtB;IAED;;OAEG;IACI,WAAW;IAIlB;;OAEG;IACI,WAAW;;;;;;;CASnB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IManagerFactory, ManagedManagers } from '../services/ServiceInterfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Factory for creating and managing manager instances
|
|
4
|
+
*/
|
|
5
|
+
export declare class ManagerFactory implements IManagerFactory {
|
|
6
|
+
/**
|
|
7
|
+
* Create all manager instances with proper dependencies
|
|
8
|
+
*/
|
|
9
|
+
createManagers(): ManagedManagers;
|
|
10
|
+
/**
|
|
11
|
+
* Reset all managers that support reset
|
|
12
|
+
*/
|
|
13
|
+
resetManagers(managers: ManagedManagers): void;
|
|
14
|
+
/**
|
|
15
|
+
* Destroy all managers
|
|
16
|
+
*/
|
|
17
|
+
destroyManagers(managers: ManagedManagers): void;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=ManagerFactory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManagerFactory.d.ts","sourceRoot":"","sources":["../../../src/core/factories/ManagerFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAiBtF;;GAEG;AACH,qBAAa,cAAe,YAAW,eAAe;IAEpD;;OAEG;IACI,cAAc,IAAI,eAAe;IA0DxC;;OAEG;IACI,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IA8BrD;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;CAqBxD"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { IServiceContainer } from '../services/ServiceInterfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Simple dependency injection container for services
|
|
4
|
+
*/
|
|
5
|
+
export declare class ServiceContainer implements IServiceContainer {
|
|
6
|
+
private services;
|
|
7
|
+
private instances;
|
|
8
|
+
/**
|
|
9
|
+
* Register a service factory
|
|
10
|
+
*/
|
|
11
|
+
register<T>(key: string, factory: () => T): void;
|
|
12
|
+
/**
|
|
13
|
+
* Resolve a service instance (singleton pattern)
|
|
14
|
+
*/
|
|
15
|
+
resolve<T>(key: string): T;
|
|
16
|
+
/**
|
|
17
|
+
* Check if a service is registered
|
|
18
|
+
*/
|
|
19
|
+
has(key: string): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Get all registered service keys
|
|
22
|
+
*/
|
|
23
|
+
getRegisteredServices(): string[];
|
|
24
|
+
/**
|
|
25
|
+
* Clean up all instances and registrations
|
|
26
|
+
*/
|
|
27
|
+
cleanup(): void;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=ServiceContainer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceContainer.d.ts","sourceRoot":"","sources":["../../../src/core/factories/ServiceContainer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGvE;;GAEG;AACH,qBAAa,gBAAiB,YAAW,iBAAiB;IACxD,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,SAAS,CAA0B;IAE3C;;OAEG;IACI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI;IAKvD;;OAEG;IACI,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC;IAmBjC;;OAEG;IACI,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIhC;;OAEG;IACI,qBAAqB,IAAI,MAAM,EAAE;IAIxC;;OAEG;IACI,OAAO,IAAI,IAAI;CAmBvB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { IManagerOrchestrator, ManagedManagers } from './ServiceInterfaces';
|
|
2
|
+
/**
|
|
3
|
+
* Service for handling manager coordination and lifecycle
|
|
4
|
+
*/
|
|
5
|
+
export declare class ManagerOrchestrator implements IManagerOrchestrator {
|
|
6
|
+
private managers;
|
|
7
|
+
private uiUpdaterUnsubscribe;
|
|
8
|
+
private eventUpdaterUnsubscribe;
|
|
9
|
+
private static prevState;
|
|
10
|
+
private isInitialized;
|
|
11
|
+
constructor(managers: ManagedManagers);
|
|
12
|
+
/**
|
|
13
|
+
* Set initialization state
|
|
14
|
+
*/
|
|
15
|
+
setInitialized(initialized: boolean): void;
|
|
16
|
+
/**
|
|
17
|
+
* Set up UI and event updaters
|
|
18
|
+
*/
|
|
19
|
+
setupUpdaters(): void;
|
|
20
|
+
/**
|
|
21
|
+
* Handle store state changes
|
|
22
|
+
*/
|
|
23
|
+
handleStoreChanges(): void;
|
|
24
|
+
/**
|
|
25
|
+
* Clean up current playlist state
|
|
26
|
+
*/
|
|
27
|
+
cleanupCurrentPlaylist(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Clean up playlist while preserving trigger monitoring
|
|
30
|
+
*/
|
|
31
|
+
cleanupPlaylist(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Destroy all managers and cleanup
|
|
34
|
+
*/
|
|
35
|
+
destroyAll(): void;
|
|
36
|
+
/**
|
|
37
|
+
* Get all managed managers for external access
|
|
38
|
+
*/
|
|
39
|
+
getManagers(): ManagedManagers;
|
|
40
|
+
destroy(): void;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=ManagerOrchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ManagerOrchestrator.d.ts","sourceRoot":"","sources":["../../../src/core/services/ManagerOrchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAQjF;;GAEG;AACH,qBAAa,mBAAoB,YAAW,oBAAoB;IAC9D,OAAO,CAAC,QAAQ,CAAkB;IAGlC,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,uBAAuB,CAA6B;IAG5D,OAAO,CAAC,MAAM,CAAC,SAAS,CAItB;IAGF,OAAO,CAAC,aAAa,CAAS;gBAElB,QAAQ,EAAE,eAAe;IAIrC;;OAEG;IACI,cAAc,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI;IAIjD;;OAEG;IACI,aAAa,IAAI,IAAI;IAuC5B;;OAEG;IACI,kBAAkB,IAAI,IAAI;IA6DjC;;OAEG;IACI,sBAAsB,IAAI,IAAI;IAwDrC;;OAEG;IACI,eAAe,IAAI,IAAI;IAqD9B;;OAEG;IACI,UAAU,IAAI,IAAI;IAyEzB;;OAEG;IACI,WAAW,IAAI,eAAe;IAI9B,OAAO,IAAI,IAAI;CAGvB"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { IPlayerInitializationService, ManagedManagers } from './ServiceInterfaces';
|
|
2
|
+
import type { SaltfishConfig, WatchedPlaylists } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Service for handling player initialization logic
|
|
5
|
+
*/
|
|
6
|
+
export declare class PlayerInitializationService implements IPlayerInitializationService {
|
|
7
|
+
private managers;
|
|
8
|
+
private userManagementService;
|
|
9
|
+
private playlistOrchestrator;
|
|
10
|
+
private lastConfig;
|
|
11
|
+
constructor(managers: ManagedManagers);
|
|
12
|
+
/**
|
|
13
|
+
* Set the user management service for dependency
|
|
14
|
+
*/
|
|
15
|
+
setUserManagementService(service: any): void;
|
|
16
|
+
/**
|
|
17
|
+
* Set the playlist orchestrator for dependency
|
|
18
|
+
*/
|
|
19
|
+
setPlaylistOrchestrator(orchestrator: any): void;
|
|
20
|
+
/**
|
|
21
|
+
* Get the last config for restoration
|
|
22
|
+
*/
|
|
23
|
+
getLastConfig(): SaltfishConfig | null;
|
|
24
|
+
/**
|
|
25
|
+
* Initialize the player with configuration
|
|
26
|
+
*/
|
|
27
|
+
initialize(config: SaltfishConfig): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Fetch user data from backend
|
|
30
|
+
*/
|
|
31
|
+
fetchUserData(userId: string, userData?: Record<string, unknown>): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Load anonymous user data from localStorage
|
|
34
|
+
*/
|
|
35
|
+
loadAnonymousUserData(userId: string, userData?: Record<string, unknown>): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Check for in-progress playlists and resume them
|
|
38
|
+
*/
|
|
39
|
+
checkAndResumeInProgressPlaylist(watchedPlaylists: WatchedPlaylists): Promise<boolean>;
|
|
40
|
+
/**
|
|
41
|
+
* Get or create persistent anonymous user ID
|
|
42
|
+
*/
|
|
43
|
+
getOrCreateAnonymousUserId(): string;
|
|
44
|
+
destroy(): void;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=PlayerInitializationService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlayerInitializationService.d.ts","sourceRoot":"","sources":["../../../src/core/services/PlayerInitializationService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOpE;;GAEG;AACH,qBAAa,2BAA4B,YAAW,4BAA4B;IAC9E,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,qBAAqB,CAAM;IACnC,OAAO,CAAC,oBAAoB,CAAM;IAGlC,OAAO,CAAC,UAAU,CAA+B;gBAErC,QAAQ,EAAE,eAAe;IAIrC;;OAEG;IACI,wBAAwB,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAInD;;OAEG;IACI,uBAAuB,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI;IAIvD;;OAEG;IACI,aAAa,IAAI,cAAc,GAAG,IAAI;IAI7C;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAuF9D;;OAEG;IACU,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAiG7F;;OAEG;IACU,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA+ErG;;OAEG;IACU,gCAAgC,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IA+EnG;;OAEG;IACI,0BAA0B,IAAI,MAAM;IAqBpC,OAAO,IAAI,IAAI;CAGvB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { IPlaylistOrchestrator, ManagedManagers } from './ServiceInterfaces';
|
|
2
|
+
import type { PlaylistOptions } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Service for handling playlist lifecycle and coordination
|
|
5
|
+
*/
|
|
6
|
+
export declare class PlaylistOrchestrator implements IPlaylistOrchestrator {
|
|
7
|
+
private managers;
|
|
8
|
+
private userManagementService;
|
|
9
|
+
private managerOrchestrator;
|
|
10
|
+
private playerInitializationService;
|
|
11
|
+
private stateMachineActionHandler;
|
|
12
|
+
constructor(managers: ManagedManagers);
|
|
13
|
+
/**
|
|
14
|
+
* Set the user management service for dependency
|
|
15
|
+
*/
|
|
16
|
+
setUserManagementService(service: any): void;
|
|
17
|
+
/**
|
|
18
|
+
* Set the manager orchestrator for dependency
|
|
19
|
+
*/
|
|
20
|
+
setManagerOrchestrator(orchestrator: any): void;
|
|
21
|
+
/**
|
|
22
|
+
* Set the player initialization service for dependency
|
|
23
|
+
*/
|
|
24
|
+
setPlayerInitializationService(service: any): void;
|
|
25
|
+
/**
|
|
26
|
+
* Set the state machine action handler for dependency
|
|
27
|
+
*/
|
|
28
|
+
setStateMachineActionHandler(handler: any): void;
|
|
29
|
+
/**
|
|
30
|
+
* Start a playlist with given options
|
|
31
|
+
*/
|
|
32
|
+
startPlaylist(playlistId: string, options?: PlaylistOptions): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Reset current playlist to initial state
|
|
35
|
+
*/
|
|
36
|
+
resetPlaylist(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Check if the player is initialized
|
|
39
|
+
*/
|
|
40
|
+
private isInitialized;
|
|
41
|
+
/**
|
|
42
|
+
* Reset managers that have reset capability
|
|
43
|
+
*/
|
|
44
|
+
private resetManagers;
|
|
45
|
+
destroy(): void;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=PlaylistOrchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlaylistOrchestrator.d.ts","sourceRoot":"","sources":["../../../src/core/services/PlaylistOrchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAMnD;;GAEG;AACH,qBAAa,oBAAqB,YAAW,qBAAqB;IAChE,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,qBAAqB,CAAM;IACnC,OAAO,CAAC,mBAAmB,CAAM;IACjC,OAAO,CAAC,2BAA2B,CAAM;IACzC,OAAO,CAAC,yBAAyB,CAAM;gBAE3B,QAAQ,EAAE,eAAe;IAIrC;;OAEG;IACI,wBAAwB,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAInD;;OAEG;IACI,sBAAsB,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI;IAItD;;OAEG;IACI,8BAA8B,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAIzD;;OAEG;IACI,4BAA4B,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAIvD;;OAEG;IACU,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAkRxF;;OAEG;IACI,aAAa,IAAI,IAAI;IAQ5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAUd,OAAO,IAAI,IAAI;CAGvB"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import type { SaltfishConfig, PlaylistOptions, WatchedPlaylists } from '../../types';
|
|
2
|
+
/**
|
|
3
|
+
* Base interface for all services
|
|
4
|
+
*/
|
|
5
|
+
export interface Service {
|
|
6
|
+
/**
|
|
7
|
+
* Initialize the service with configuration
|
|
8
|
+
*/
|
|
9
|
+
initialize?(config: SaltfishConfig): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Cleanup service resources
|
|
12
|
+
*/
|
|
13
|
+
destroy(): void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Service for handling player initialization logic
|
|
17
|
+
*/
|
|
18
|
+
export interface IPlayerInitializationService extends Service {
|
|
19
|
+
/**
|
|
20
|
+
* Initialize the player with configuration
|
|
21
|
+
*/
|
|
22
|
+
initialize(config: SaltfishConfig): Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Fetch user data from backend
|
|
25
|
+
*/
|
|
26
|
+
fetchUserData(userId: string, userData?: Record<string, unknown>): Promise<void>;
|
|
27
|
+
/**
|
|
28
|
+
* Load anonymous user data from localStorage
|
|
29
|
+
*/
|
|
30
|
+
loadAnonymousUserData(userId: string, userData?: Record<string, unknown>): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Check for in-progress playlists and resume them
|
|
33
|
+
*/
|
|
34
|
+
checkAndResumeInProgressPlaylist(watchedPlaylists: WatchedPlaylists): Promise<boolean>;
|
|
35
|
+
/**
|
|
36
|
+
* Get or create persistent anonymous user ID
|
|
37
|
+
*/
|
|
38
|
+
getOrCreateAnonymousUserId(): string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Service for handling user identification and A/B testing
|
|
42
|
+
*/
|
|
43
|
+
export interface IUserManagementService extends Service {
|
|
44
|
+
/**
|
|
45
|
+
* Identify a user with ID and optional data
|
|
46
|
+
*/
|
|
47
|
+
identifyUser(userId: string, userData?: Record<string, unknown>): void;
|
|
48
|
+
/**
|
|
49
|
+
* Identify user anonymously with optional data
|
|
50
|
+
*/
|
|
51
|
+
identifyAnonymous(userData?: Record<string, unknown>): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Record A/B test attempt for analytics
|
|
54
|
+
*/
|
|
55
|
+
recordABTestAttempt(playlistId: string): Promise<void>;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Service for handling playlist lifecycle and coordination
|
|
59
|
+
*/
|
|
60
|
+
export interface IPlaylistOrchestrator extends Service {
|
|
61
|
+
/**
|
|
62
|
+
* Start a playlist with given options
|
|
63
|
+
*/
|
|
64
|
+
startPlaylist(playlistId: string, options?: PlaylistOptions): Promise<void>;
|
|
65
|
+
/**
|
|
66
|
+
* Reset current playlist to initial state
|
|
67
|
+
*/
|
|
68
|
+
resetPlaylist(): void;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Service for handling state machine action registration
|
|
72
|
+
*/
|
|
73
|
+
export interface IStateMachineActionHandler extends Service {
|
|
74
|
+
/**
|
|
75
|
+
* Register all state machine actions with the store
|
|
76
|
+
*/
|
|
77
|
+
registerStateMachineActions(): void;
|
|
78
|
+
/**
|
|
79
|
+
* Get video URL for a step (with translation support)
|
|
80
|
+
*/
|
|
81
|
+
getVideoUrl(step: any): string;
|
|
82
|
+
/**
|
|
83
|
+
* Set the destroy callback for player destruction
|
|
84
|
+
*/
|
|
85
|
+
setDestroyCallback(callback: () => void): void;
|
|
86
|
+
/**
|
|
87
|
+
* Find next video URL for preloading
|
|
88
|
+
*/
|
|
89
|
+
findNextVideoUrl(currentStep: any): string | null;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Service for handling manager coordination and lifecycle
|
|
93
|
+
*/
|
|
94
|
+
export interface IManagerOrchestrator extends Service {
|
|
95
|
+
/**
|
|
96
|
+
* Set up UI and event updaters
|
|
97
|
+
*/
|
|
98
|
+
setupUpdaters(): void;
|
|
99
|
+
/**
|
|
100
|
+
* Handle store state changes
|
|
101
|
+
*/
|
|
102
|
+
handleStoreChanges(): void;
|
|
103
|
+
/**
|
|
104
|
+
* Clean up current playlist state
|
|
105
|
+
*/
|
|
106
|
+
cleanupCurrentPlaylist(): void;
|
|
107
|
+
/**
|
|
108
|
+
* Clean up playlist while preserving trigger monitoring
|
|
109
|
+
*/
|
|
110
|
+
cleanupPlaylist(): void;
|
|
111
|
+
/**
|
|
112
|
+
* Get all managed managers for external access
|
|
113
|
+
*/
|
|
114
|
+
getManagers(): ManagedManagers;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Collection of all manager instances
|
|
118
|
+
*/
|
|
119
|
+
export interface ManagedManagers {
|
|
120
|
+
shadowDOMManager: any;
|
|
121
|
+
videoManager: any;
|
|
122
|
+
cursorManager: any;
|
|
123
|
+
interactionManager: any;
|
|
124
|
+
analyticsManager: any;
|
|
125
|
+
sessionManager: any;
|
|
126
|
+
transitionManager: any;
|
|
127
|
+
triggerManager: any;
|
|
128
|
+
abTestManager: any;
|
|
129
|
+
eventManager: any;
|
|
130
|
+
playlistManager: any;
|
|
131
|
+
stepTimeoutManager: any;
|
|
132
|
+
uiManager: any;
|
|
133
|
+
storageManager: any;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Service container for dependency injection
|
|
137
|
+
*/
|
|
138
|
+
export interface IServiceContainer {
|
|
139
|
+
register<T>(key: string, factory: () => T): void;
|
|
140
|
+
resolve<T>(key: string): T;
|
|
141
|
+
cleanup(): void;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Factory for creating manager instances
|
|
145
|
+
*/
|
|
146
|
+
export interface IManagerFactory {
|
|
147
|
+
createManagers(): ManagedManagers;
|
|
148
|
+
resetManagers(managers: ManagedManagers): void;
|
|
149
|
+
destroyManagers(managers: ManagedManagers): void;
|
|
150
|
+
}
|
|
151
|
+
//# sourceMappingURL=ServiceInterfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServiceInterfaces.d.ts","sourceRoot":"","sources":["../../../src/core/services/ServiceInterfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { IStateMachineActionHandler, ManagedManagers } from './ServiceInterfaces';
|
|
2
|
+
import type { Step } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Service for handling state machine action registration and video-related utilities
|
|
5
|
+
*/
|
|
6
|
+
export declare class StateMachineActionHandler implements IStateMachineActionHandler {
|
|
7
|
+
private managers;
|
|
8
|
+
private destroyCallback;
|
|
9
|
+
constructor(managers: ManagedManagers);
|
|
10
|
+
/**
|
|
11
|
+
* Set the destroy callback for player destruction
|
|
12
|
+
*/
|
|
13
|
+
setDestroyCallback(callback: () => void): void;
|
|
14
|
+
/**
|
|
15
|
+
* Register all state machine actions with the store
|
|
16
|
+
*/
|
|
17
|
+
registerStateMachineActions(): void;
|
|
18
|
+
/**
|
|
19
|
+
* Gets the appropriate video URL for a step, preferring compressedVideoUrl if available
|
|
20
|
+
* Also checks for translations if a language is configured
|
|
21
|
+
*/
|
|
22
|
+
getVideoUrl(step: Step): string;
|
|
23
|
+
/**
|
|
24
|
+
* Finds the URL of the next video in the playlist for preloading
|
|
25
|
+
*/
|
|
26
|
+
findNextVideoUrl(currentStep: Step): string | null;
|
|
27
|
+
destroy(): void;
|
|
28
|
+
private handleStartVideoPlayback;
|
|
29
|
+
private handlePauseVideoPlayback;
|
|
30
|
+
private handleStartMutedLoopedVideo;
|
|
31
|
+
private handleStartIdleModeVideo;
|
|
32
|
+
private handleTrackPlaylistComplete;
|
|
33
|
+
private handleError;
|
|
34
|
+
private handleShowLoadingState;
|
|
35
|
+
private handleHideLoadingState;
|
|
36
|
+
private handleHideVideoControls;
|
|
37
|
+
private handleShowVideoControls;
|
|
38
|
+
private handleShowPlayButton;
|
|
39
|
+
private handleHidePlayButton;
|
|
40
|
+
private handleEnablePlayButtonProminent;
|
|
41
|
+
private handleDisablePlayButtonProminent;
|
|
42
|
+
private handleTriggerPlaylistDismissed;
|
|
43
|
+
private handleScheduleDestroy;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=StateMachineActionHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateMachineActionHandler.d.ts","sourceRoot":"","sources":["../../../src/core/services/StateMachineActionHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAKxC;;GAEG;AACH,qBAAa,yBAA0B,YAAW,0BAA0B;IAC1E,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,eAAe,CAA6B;gBAExC,QAAQ,EAAE,eAAe;IAIrC;;OAEG;IACI,kBAAkB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAIrD;;OAEG;IACI,2BAA2B,IAAI,IAAI;IAsE1C;;;OAGG;IACI,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAgBtC;;OAEG;IACI,gBAAgB,CAAC,WAAW,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI;IA+BlD,OAAO,IAAI,IAAI;IAKtB,OAAO,CAAC,wBAAwB;IAsJhC,OAAO,CAAC,wBAAwB;IAKhC,OAAO,CAAC,2BAA2B;IAYnC,OAAO,CAAC,wBAAwB;IA8GhC,OAAO,CAAC,2BAA2B;IAgBnC,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,+BAA+B;IAKvC,OAAO,CAAC,gCAAgC;IAKxC,OAAO,CAAC,8BAA8B;IActC,OAAO,CAAC,qBAAqB;CAW9B"}
|