saltfish 0.1.22 → 0.1.24

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/index.d.ts CHANGED
@@ -39,7 +39,7 @@ export interface SaltfishAPI {
39
39
  * Identifies the current user anonymously (localStorage only, no backend communication)
40
40
  * This method provides the same functionality as identify() but stores user data in localStorage
41
41
  * instead of communicating with the backend. It automatically generates and persists an anonymous
42
- * user ID. It still supports autoStart functionality by using localStorage-based user data for
42
+ * user ID. It still supports triggered playlists functionality by using localStorage-based user data for
43
43
  * playlist triggers and watched playlist tracking.
44
44
  * @param userData - Optional additional user data
45
45
  * @example
@@ -49,8 +49,8 @@ export interface SaltfishAPI {
49
49
  * // Or with no additional data
50
50
  * saltfish.identifyAnonymous();
51
51
  *
52
- * // Still supports autoStart with once conditions
53
- * // AutoStart playlists will work using localStorage watched playlist data
52
+ * // Still supports triggered playlists with once conditions
53
+ * // Triggered playlists will work using localStorage watched playlist data
54
54
  */
55
55
  identifyAnonymous: (userData?: Record<string, any>) => void;
56
56
  /**
@@ -19,6 +19,15 @@ export declare class InteractionManager {
19
19
  * @param buttons - Button configurations
20
20
  */
21
21
  createButtons(buttons: ButtonOverlay[]): void;
22
+ /**
23
+ * Handles the video90PercentReached event
24
+ * @param _event - The custom event dispatched when video reaches 90%
25
+ */
26
+ private handleVideo90PercentReached;
27
+ /**
28
+ * Shows buttons with staggered animation (called when video reaches 90%)
29
+ */
30
+ showButtonsAt90Percent(): void;
22
31
  /**
23
32
  * Clears all interactive buttons
24
33
  */
@@ -1 +1 @@
1
- {"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../src/managers/InteractionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI9D;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,iBAAiB,CAA2F;IACpH,OAAO,CAAC,gBAAgB,CAA6B;IAErD;;;OAGG;IACI,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAc3C;;;OAGG;IACI,aAAa,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI;IAwDpD;;OAEG;IACI,YAAY,IAAI,IAAI;IAoB3B;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAqBpC;;;OAGG;IACI,oBAAoB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,IAAI;IA6CjE;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAgBnC;;;;OAIG;YACW,iBAAiB;IAgH/B;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAqC5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;YACW,cAAc;IAmB5B;;OAEG;IACI,OAAO,IAAI,IAAI;CAkBvB"}
1
+ {"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../src/managers/InteractionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI9D;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,iBAAiB,CAA2F;IACpH,OAAO,CAAC,gBAAgB,CAA6B;IAErD;;;OAGG;IACI,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAiB3C;;;OAGG;IACI,aAAa,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI;IAwDpD;;;OAGG;IACH,OAAO,CAAC,2BAA2B,CAGjC;IAEF;;OAEG;IACI,sBAAsB,IAAI,IAAI;IAYrC;;OAEG;IACI,YAAY,IAAI,IAAI;IAoB3B;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAqBpC;;;OAGG;IACI,oBAAoB,CAAC,YAAY,EAAE,cAAc,EAAE,GAAG,IAAI;IA6CjE;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAgBnC;;;;OAIG;YACW,iBAAiB;IAgH/B;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAqC5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;OAEG;YACW,cAAc;IAmB5B;;OAEG;IACI,OAAO,IAAI,IAAI;CAuBvB"}
@@ -10,7 +10,7 @@ export declare class TransitionManager {
10
10
  private triggerManager;
11
11
  constructor();
12
12
  /**
13
- * Sets the TriggerManager reference for coordinating autoStart triggers
13
+ * Sets the TriggerManager reference for coordinating playlist triggers
14
14
  * @param triggerManager - The TriggerManager instance
15
15
  */
16
16
  setTriggerManager(triggerManager: TriggerManager): void;
@@ -19,7 +19,7 @@ export declare class TransitionManager {
19
19
  */
20
20
  private monitorHistoryChanges;
21
21
  /**
22
- * Handles URL changes by checking active URL path transitions and autoStart triggers
22
+ * Handles URL changes by checking active URL path transitions and playlist triggers
23
23
  */
24
24
  private handleURLChange;
25
25
  /**
@@ -1,15 +1,15 @@
1
1
  import type { PlaylistPathInfo } from '../types';
2
2
  /**
3
- * Manages autoStart playlist triggers
3
+ * Manages playlist triggers for playlists with hasTriggers enabled
4
4
  * Evaluates trigger conditions and launches playlists automatically
5
5
  */
6
6
  export declare class TriggerManager {
7
- private autoStartPlaylists;
8
7
  private triggeredPlaylists;
8
+ private triggeredPlaylistsSet;
9
9
  private isMonitoring;
10
10
  constructor();
11
11
  /**
12
- * Registers autoStart playlists and their trigger configurations
12
+ * Registers playlists with triggers and their trigger configurations
13
13
  * @param playlists - List of all playlists from backend
14
14
  */
15
15
  registerTriggers(playlists: PlaylistPathInfo[]): void;
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerManager.d.ts","sourceRoot":"","sources":["../../src/managers/TriggerManager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,kBAAkB,CAA0B;IACpD,OAAO,CAAC,kBAAkB,CAA0B;IACpD,OAAO,CAAC,YAAY,CAAkB;;IAMtC;;;OAGG;IACI,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAc5D;;OAEG;IACI,eAAe,IAAI,IAAI;IAa9B;;OAEG;IACI,cAAc,IAAI,IAAI;IAK7B;;;OAGG;IACI,mBAAmB,IAAI,IAAI;IAYlC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAwD/B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAwBrC;;;;;OAKG;IACH,OAAO,CAAC,gCAAgC;IAwBxC;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAuBtB;;;OAGG;YACW,eAAe;IAsB7B;;;OAGG;IACI,uBAAuB,IAAI,IAAI;IAKtC;;OAEG;IACI,qBAAqB,IAAI,MAAM,EAAE;IAIxC;;OAEG;IACI,OAAO,IAAI,IAAI;CAMvB"}
1
+ {"version":3,"file":"TriggerManager.d.ts","sourceRoot":"","sources":["../../src/managers/TriggerManager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,kBAAkB,CAA0B;IACpD,OAAO,CAAC,qBAAqB,CAA0B;IACvD,OAAO,CAAC,YAAY,CAAkB;;IAMtC;;;OAGG;IACI,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAe5D;;OAEG;IACI,eAAe,IAAI,IAAI;IAa9B;;OAEG;IACI,cAAc,IAAI,IAAI;IAK7B;;;OAGG;IACI,mBAAmB,IAAI,IAAI;IAYlC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAwD/B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAwBrC;;;;;OAKG;IACH,OAAO,CAAC,gCAAgC;IAwBxC;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAuBtB;;;OAGG;YACW,eAAe;IAsB7B;;;OAGG;IACI,uBAAuB,IAAI,IAAI;IAKtC;;OAEG;IACI,qBAAqB,IAAI,MAAM,EAAE;IAIxC;;OAEG;IACI,OAAO,IAAI,IAAI;CAMvB"}
@@ -30,6 +30,7 @@ export declare class VideoManager implements ManagerLifecycle {
30
30
  private deviceChangeCleanup;
31
31
  private hasUserInteracted;
32
32
  private autoplayFallbackTimeout;
33
+ private buttonsShownAt90Percent;
33
34
  constructor();
34
35
  /**
35
36
  * Gets current device information
@@ -143,9 +144,13 @@ export declare class VideoManager implements ManagerLifecycle {
143
144
  */
144
145
  private updateProgress;
145
146
  /**
146
- * Handles detailed time updates for smooth progress bar
147
+ * Handles detailed time updates for smooth progress bar and button visibility
147
148
  */
148
149
  private handleDetailedTimeUpdate;
150
+ /**
151
+ * Shows buttons with staggered animation when video reaches 90% progress
152
+ */
153
+ private showButtonsAt90Percent;
149
154
  /**
150
155
  * Sets the muted state of both video elements
151
156
  * @param muted - Whether to mute the video
@@ -1 +1 @@
1
- {"version":3,"file":"VideoManager.d.ts","sourceRoot":"","sources":["../../src/managers/VideoManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEjD;;GAEG;AACH,qBAAa,YAAa,YAAW,gBAAgB;IAEnD,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,gBAAgB,CAAY;IAEpC,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,mBAAmB,CAAa;IAGxC,OAAO,CAAC,eAAe,CAAc;IACrC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,iBAAiB,CAAkC;IAG3D,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,kBAAkB,CAA6B;IAGvD,OAAO,CAAC,aAAa,CAAwB;IAC7C,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,iBAAiB,CAAkB;IAG3C,OAAO,CAAC,uBAAuB,CAAuB;;IAmBtD;;;OAGG;IACI,aAAa,IAAI,UAAU;IAIlC;;;OAGG;IACI,cAAc,IAAI,OAAO;IAIhC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;;OAGG;IACI,MAAM,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI;IAgH3C;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;OAEG;IACH,OAAO,CAAC,UAAU;IA4BlB;;;OAGG;IACU,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6JlD;;;OAGG;IACI,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAwD1C;;OAEG;IACI,IAAI,IAAI,IAAI;IA+GnB;;OAEG;IACI,KAAK,IAAI,IAAI;IAyBpB;;;OAGG;IACI,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAmB/B;;;OAGG;IACI,cAAc,IAAI,MAAM;IAK/B;;;OAGG;IACI,WAAW,IAAI,MAAM;IAK5B;;;OAGG;IACI,eAAe,IAAI,gBAAgB,GAAG,IAAI;IAIjD;;OAEG;IACH;;;OAGG;IACI,KAAK,IAAI,IAAI;IA4CP,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCrC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAuCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuC5B;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAuCtB;IAEF;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAQtB;IAEF;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAGtB;IAEF;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA+B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAoCtB;;OAEG;IACH,OAAO,CAAC,wBAAwB,CAO9B;IAEF;;;OAGG;IACI,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAgBrC;;;OAGG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAyB5B;;;OAGG;IACI,OAAO,IAAI,OAAO;IAKzB;;;;OAIG;IACI,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;IAOjF;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;OAEG;IACH,OAAO,CAAC,oBAAoB,CA6F1B;IAEF;;OAEG;IACH,OAAO,CAAC,sBAAsB,CA4D5B;IAEF;;OAEG;IACH,OAAO,CAAC,sBAAsB,CA0B5B;IAEF;;OAEG;IACH,OAAO,CAAC,aAAa,CAMnB;IAEF;;OAEG;IACH,OAAO,CAAC,YAAY,CAWlB;IAEF;;OAEG;IACI,eAAe,IAAI,IAAI;IAS9B;;OAEG;IACI,eAAe,IAAI,IAAI;IAqC9B;;OAEG;IACI,cAAc,IAAI,IAAI;IAM7B;;OAEG;IACI,cAAc,IAAI,IAAI;IAM7B;;;OAGG;IACI,mBAAmB,IAAI,IAAI;IAclC;;;OAGG;IACI,qBAAqB,IAAI,OAAO;IAIvC;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAanC;;;OAGG;IACI,2BAA2B,CAAC,YAAY,EAAE,gBAAgB,GAAG,IAAI;IAYxE;;;OAGG;IACI,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,GAAG,IAAI;CAG3D"}
1
+ {"version":3,"file":"VideoManager.d.ts","sourceRoot":"","sources":["../../src/managers/VideoManager.ts"],"names":[],"mappings":"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"}