saltfish 0.1.87 → 0.1.88

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.
@@ -19,6 +19,7 @@ export declare class SaltfishPlayer {
19
19
  private playlistManager;
20
20
  private stepTimeoutManager;
21
21
  private uiManager;
22
+ private storageManager;
22
23
  private uiUpdaterUnsubscribe;
23
24
  private eventUpdaterUnsubscribe;
24
25
  private isInitialized;
@@ -1 +1 @@
1
- {"version":3,"file":"SaltfishPlayer.d.ts","sourceRoot":"","sources":["../../src/core/SaltfishPlayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAQxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKhF,OAAO,KAAK,EAAE,cAAc,EAAe,eAAe,EAA0B,MAAM,UAAU,CAAC;AAWrG;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA+B;IAEtD,OAAO,CAAC,gBAAgB,CAAmB;IACpC,YAAY,EAAE,YAAY,CAAC;IAClC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,SAAS,CAAY;IAG7B,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,uBAAuB,CAA6B;IAE5D,OAAO,CAAC,aAAa,CAAkB;IAEvC,OAAO,CAAC,MAAM,CAAC,SAAS,CAItB;IAIF,OAAO,CAAC,UAAU,CAA+B;IAGjD,OAAO,CAAC,sBAAsB,CAAuE;IAErG;;;OAGG;IACH,OAAO;IAuCP;;OAEG;WACW,WAAW,IAAI,cAAc;IAQ3C;;;OAGG;IACI,YAAY,IAAI,MAAM;IAI7B;;;OAGG;IACI,QAAQ,IAAI,MAAM,GAAG,IAAI;IAIhC;;;OAGG;IACU,UAAU,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAkG9D;;;;OAIG;IACI,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAkB7E;;;;OAIG;IACU,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBjF;;;;OAIG;YACW,aAAa;IAkF3B;;;;OAIG;YACW,qBAAqB;IAoFnC;;;;;OAKG;YACW,gCAAgC;IA+E9C;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;;;;;;;;OAUG;IACU,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAqRxF;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAkWnC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IA+BxB;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAuCrB;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAqExB;IAEF;;;;OAIG;YACW,mBAAmB;IAuDjC;;OAEG;IACI,OAAO,IAAI,IAAI;IA8EtB;;;;OAIG;IACI,EAAE,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAIrF;;;;;OAKG;IACI,GAAG,CAAC,CAAC,SAAS,iBAAiB,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO;IAIzF;;OAEG;IACI,aAAa,IAAI,IAAI;IAQ5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAwD9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAsDvB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;CAIjC"}
1
+ {"version":3,"file":"SaltfishPlayer.d.ts","sourceRoot":"","sources":["../../src/core/SaltfishPlayer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/core/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAEb,gBAAgB,EAEhB,IAAI,EASL,MAAM,UAAU,CAAC;AAelB;;;GAGG;AACH,eAAO,MAAM,aAAa;;CAuazB,CAAC;AAIF,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,MAAM,aAAa,CAAC;IAC9B,QAAQ,EAAE,OAAO,aAAa,CAAC,QAAQ,CAAC;IACxC,SAAS,EAAE,OAAO,aAAa,CAAC,SAAS,CAAC;IAC1C,OAAO,EAAE,OAAO,aAAa,CAAC,OAAO,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,YAK9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,IAAI,GAAG,IAKxC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GAAI,MAAM,IAAI,EAAE,UAAU,gBAAgB,KAAG,OAoB/E,CAAC"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/core/store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAEb,gBAAgB,EAEhB,IAAI,EASL,MAAM,UAAU,CAAC;AAgBlB;;;GAGG;AACH,eAAO,MAAM,aAAa;;CAmazB,CAAC;AAIF,KAAK,YAAY,GAAG;IAClB,QAAQ,EAAE,MAAM,aAAa,CAAC;IAC9B,QAAQ,EAAE,OAAO,aAAa,CAAC,QAAQ,CAAC;IACxC,SAAS,EAAE,OAAO,aAAa,CAAC,SAAS,CAAC;IAC1C,OAAO,EAAE,OAAO,aAAa,CAAC,OAAO,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,YAK9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,IAAI,GAAG,IAKxC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,GAAI,MAAM,IAAI,EAAE,UAAU,gBAAgB,KAAG,OAoB/E,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { EventManager } from './EventManager';
2
2
  import type { PlaylistOptions } from '../types';
3
+ import { StorageManager } from './StorageManager';
3
4
  /**
4
5
  * Manager class for handling playlist-related functionality
5
6
  *
@@ -12,11 +13,13 @@ export declare class PlaylistManager {
12
13
  private eventManager;
13
14
  private isUpdatingWatchedPlaylists;
14
15
  private playlistLoader;
16
+ private storageManager;
15
17
  /**
16
18
  * Creates a new PlaylistManager
17
19
  * @param eventManager - Optional event manager to subscribe to events
20
+ * @param storageManager - Optional storage manager for localStorage operations
18
21
  */
19
- constructor(eventManager?: EventManager);
22
+ constructor(eventManager?: EventManager, storageManager?: StorageManager);
20
23
  /**
21
24
  * Sets the event manager and subscribes to relevant events
22
25
  * @param eventManager - Event manager instance
@@ -1 +1 @@
1
- {"version":3,"file":"PlaylistManager.d.ts","sourceRoot":"","sources":["../../src/managers/PlaylistManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAInD,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,UAAU,CAAC;AAGnE;;;;;;;GAOG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,0BAA0B,CAAkB;IACpD,OAAO,CAAC,cAAc,CAAiB;IAEvC;;;OAGG;gBACS,YAAY,CAAC,EAAE,YAAY;IAQvC;;;OAGG;IACI,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAKxD;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA+BzB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAShB;;;;;OAKG;YACW,2BAA2B;IAkFzC;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;IAqD3C;;;;OAIG;IACU,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC9E;;OAEG;IACI,OAAO,IAAI,IAAI;CAQvB"}
1
+ {"version":3,"file":"PlaylistManager.d.ts","sourceRoot":"","sources":["../../src/managers/PlaylistManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAInD,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;;;;;;GAOG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,0BAA0B,CAAkB;IACpD,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,cAAc,CAAiB;IAEvC;;;;OAIG;gBACS,YAAY,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,EAAE,cAAc;IASxE;;;OAGG;IACI,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAKxD;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA+BzB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAShB;;;;;OAKG;YACW,2BAA2B;IAkFzC;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;IA2C3C;;;;OAIG;IACU,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC9E;;OAEG;IACI,OAAO,IAAI,IAAI;CAQvB"}
@@ -1,3 +1,4 @@
1
+ import { StorageManager } from './StorageManager';
1
2
  /**
2
3
  * Manager class for handling session and run identification
3
4
  *
@@ -9,7 +10,8 @@
9
10
  export declare class SessionManager {
10
11
  private sessionId;
11
12
  private currentRunId;
12
- constructor();
13
+ private storageManager;
14
+ constructor(storageManager?: StorageManager);
13
15
  /**
14
16
  * Gets or creates a persistent session ID
15
17
  * @returns The current session ID
@@ -1 +1 @@
1
- {"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../src/managers/SessionManager.ts"],"names":[],"mappings":"AAWA;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAuB;;IAO3C;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAkC1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;;OAGG;IACI,YAAY,IAAI,MAAM;IAM7B;;;OAGG;IACI,WAAW,IAAI,MAAM;IAU5B;;;OAGG;IACI,eAAe,IAAI,MAAM,GAAG,IAAI;IAIvC;;OAEG;IACI,aAAa,IAAI,IAAI;IAO5B;;OAEG;IACI,aAAa,IAAI,IAAI;IAc5B;;OAEG;IACI,OAAO,IAAI,IAAI;CAMvB"}
1
+ {"version":3,"file":"SessionManager.d.ts","sourceRoot":"","sources":["../../src/managers/SessionManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAsB,MAAM,kBAAkB,CAAC;AAEtE;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,cAAc,CAAiB;gBAE3B,cAAc,CAAC,EAAE,cAAc;IAM3C;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IA6B1B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;;OAGG;IACI,YAAY,IAAI,MAAM;IAM7B;;;OAGG;IACI,WAAW,IAAI,MAAM;IAU5B;;;OAGG;IACI,eAAe,IAAI,MAAM,GAAG,IAAI;IAIvC;;OAEG;IACI,aAAa,IAAI,IAAI;IAO5B;;OAEG;IACI,aAAa,IAAI,IAAI;IAc5B;;OAEG;IACI,OAAO,IAAI,IAAI;CAMvB"}
@@ -0,0 +1,118 @@
1
+ import type { AnonymousUserData } from '../types';
2
+ /**
3
+ * Interface for stored session data
4
+ */
5
+ export interface StoredSession {
6
+ sessionId: string;
7
+ lastActivity: number;
8
+ }
9
+ /**
10
+ * Interface for playlist progress data
11
+ */
12
+ export interface PlaylistProgressData {
13
+ lastStepId: string;
14
+ lastVisited: string;
15
+ completedWaitingForInteraction?: boolean;
16
+ }
17
+ /**
18
+ * Progress data type - mapping of playlist IDs to progress data
19
+ */
20
+ export type ProgressData = Record<string, PlaylistProgressData>;
21
+ /**
22
+ * Centralized manager for all localStorage operations.
23
+ *
24
+ * This class provides:
25
+ * - Type-safe methods for each storage key
26
+ * - Consistent error handling across all storage operations
27
+ * - JSON serialization/deserialization handled internally
28
+ * - Graceful degradation when localStorage is unavailable
29
+ * - Easy mocking for testing
30
+ */
31
+ export declare class StorageManager {
32
+ private isLocalStorageAvailable;
33
+ constructor();
34
+ /**
35
+ * Check if localStorage is available and working
36
+ */
37
+ private checkLocalStorageAvailability;
38
+ /**
39
+ * Safely get an item from localStorage with JSON parsing
40
+ */
41
+ private safeGetItem;
42
+ /**
43
+ * Safely set an item in localStorage with JSON stringification
44
+ */
45
+ private safeSetItem;
46
+ /**
47
+ * Safely clear an item from localStorage
48
+ */
49
+ private safeClearItem;
50
+ /**
51
+ * Clear old data to free up storage space
52
+ */
53
+ private clearOldData;
54
+ /**
55
+ * Get playlist progress data
56
+ */
57
+ getProgress(): ProgressData | null;
58
+ /**
59
+ * Set playlist progress data
60
+ */
61
+ setProgress(progress: ProgressData): boolean;
62
+ /**
63
+ * Clear all progress data
64
+ */
65
+ clearProgress(): void;
66
+ /**
67
+ * Get session data
68
+ */
69
+ getSession(): StoredSession | null;
70
+ /**
71
+ * Set session data
72
+ */
73
+ setSession(session: StoredSession): boolean;
74
+ /**
75
+ * Clear session data
76
+ */
77
+ clearSession(): void;
78
+ /**
79
+ * Get anonymous user data
80
+ */
81
+ getAnonymousUserData(): AnonymousUserData | null;
82
+ /**
83
+ * Set anonymous user data
84
+ */
85
+ setAnonymousUserData(data: AnonymousUserData): boolean;
86
+ /**
87
+ * Clear anonymous user data
88
+ */
89
+ clearAnonymousUserData(): void;
90
+ /**
91
+ * Get anonymous user ID
92
+ */
93
+ getAnonymousUserId(): string | null;
94
+ /**
95
+ * Set anonymous user ID
96
+ */
97
+ setAnonymousUserId(userId: string): boolean;
98
+ /**
99
+ * Clear anonymous user ID
100
+ */
101
+ clearAnonymousUserId(): void;
102
+ /**
103
+ * Clear all storage data
104
+ */
105
+ clearAll(): void;
106
+ /**
107
+ * Get storage availability status
108
+ */
109
+ isStorageAvailable(): boolean;
110
+ /**
111
+ * Get storage usage information (if available)
112
+ */
113
+ getStorageInfo(): {
114
+ available: boolean;
115
+ keys: string[];
116
+ };
117
+ }
118
+ //# sourceMappingURL=StorageManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StorageManager.d.ts","sourceRoot":"","sources":["../../src/managers/StorageManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,uBAAuB,CAAU;;IAUzC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAgBrC;;OAEG;IACH,OAAO,CAAC,WAAW;IAmBnB;;OAEG;IACH,OAAO,CAAC,WAAW;IA6BnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAYrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,WAAW,IAAI,YAAY,GAAG,IAAI;IAIlC;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO;IAI5C;;OAEG;IACH,aAAa,IAAI,IAAI;IAQrB;;OAEG;IACH,UAAU,IAAI,aAAa,GAAG,IAAI;IAIlC;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO;IAI3C;;OAEG;IACH,YAAY,IAAI,IAAI;IAQpB;;OAEG;IACH,oBAAoB,IAAI,iBAAiB,GAAG,IAAI;IAIhD;;OAEG;IACH,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO;IAItD;;OAEG;IACH,sBAAsB,IAAI,IAAI;IAQ9B;;OAEG;IACH,kBAAkB,IAAI,MAAM,GAAG,IAAI;IAanC;;OAEG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAc3C;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAgB5B;;OAEG;IACH,QAAQ,IAAI,IAAI;IAQhB;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,cAAc,IAAI;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;CAqBzD"}