saltfish 0.2.31 → 0.2.33

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 (143) hide show
  1. package/dist/player.js +2 -2
  2. package/dist/player.min.js +2 -2
  3. package/dist/saltfish-playlist-player.es.js +22 -16
  4. package/dist/saltfish-playlist-player.umd.js +1 -1
  5. package/dist/src/components/ErrorDisplay.d.ts.map +1 -0
  6. package/dist/src/components/LoadingSpinner.d.ts.map +1 -0
  7. package/dist/src/components/buttons/ExitButton.d.ts.map +1 -0
  8. package/dist/src/components/buttons/MinimizeButton.d.ts.map +1 -0
  9. package/dist/src/components/buttons/PlayPauseButton.d.ts.map +1 -0
  10. package/dist/src/core/SaltfishPlayer.d.ts.map +1 -0
  11. package/dist/src/core/factories/ManagerFactory.d.ts.map +1 -0
  12. package/dist/src/core/services/ManagerOrchestrator.d.ts.map +1 -0
  13. package/dist/src/core/services/PlayerInitializationService.d.ts.map +1 -0
  14. package/dist/src/core/services/PlaylistOrchestrator.d.ts.map +1 -0
  15. package/dist/src/core/services/ServiceInterfaces.d.ts.map +1 -0
  16. package/dist/src/core/services/StateMachineActionHandler.d.ts.map +1 -0
  17. package/dist/src/core/services/UserManagementService.d.ts.map +1 -0
  18. package/dist/src/core/stateMachine.d.ts.map +1 -0
  19. package/dist/src/core/stateMachineConfig.d.ts.map +1 -0
  20. package/dist/src/core/store.d.ts.map +1 -0
  21. package/dist/{index.d.ts → src/index.d.ts} +5 -0
  22. package/dist/src/index.d.ts.map +1 -0
  23. package/dist/src/loaders/PlaylistLoader.d.ts.map +1 -0
  24. package/dist/src/managers/ABTestManager.d.ts.map +1 -0
  25. package/dist/src/managers/AnalyticsManager.d.ts.map +1 -0
  26. package/dist/src/managers/CursorManager.d.ts.map +1 -0
  27. package/dist/src/managers/DevicePlaybackHandler.d.ts.map +1 -0
  28. package/dist/src/managers/EventManager.d.ts.map +1 -0
  29. package/dist/src/managers/InteractionManager.d.ts.map +1 -0
  30. package/dist/src/managers/PlaylistManager.d.ts.map +1 -0
  31. package/dist/src/managers/SessionManager.d.ts.map +1 -0
  32. package/dist/src/managers/ShadowDOMManager.d.ts.map +1 -0
  33. package/dist/src/managers/StepTimeoutManager.d.ts.map +1 -0
  34. package/dist/src/managers/StorageManager.d.ts.map +1 -0
  35. package/dist/src/managers/TranscriptManager.d.ts.map +1 -0
  36. package/dist/src/managers/TransitionManager.d.ts.map +1 -0
  37. package/dist/src/managers/TriggerManager.d.ts.map +1 -0
  38. package/dist/src/managers/UIManager.d.ts.map +1 -0
  39. package/dist/src/managers/VideoControlsUI.d.ts.map +1 -0
  40. package/dist/src/managers/VideoManager.d.ts.map +1 -0
  41. package/dist/src/styles/index.d.ts.map +1 -0
  42. package/dist/src/types/index.d.ts.map +1 -0
  43. package/dist/src/types.d.ts.map +1 -0
  44. package/dist/src/updaters/EventUpdater.d.ts.map +1 -0
  45. package/dist/src/updaters/UIUpdater.d.ts.map +1 -0
  46. package/dist/src/utils/ErrorHandler.d.ts.map +1 -0
  47. package/dist/src/utils/deviceDetection.d.ts.map +1 -0
  48. package/dist/src/utils/dimensions.d.ts.map +1 -0
  49. package/dist/src/utils/languageDetector.d.ts.map +1 -0
  50. package/dist/src/utils/logger.d.ts.map +1 -0
  51. package/dist/src/validators/PlaylistValidator.d.ts.map +1 -0
  52. package/package.json +1 -1
  53. package/dist/components/ErrorDisplay.d.ts.map +0 -1
  54. package/dist/components/LoadingSpinner.d.ts.map +0 -1
  55. package/dist/components/buttons/ExitButton.d.ts.map +0 -1
  56. package/dist/components/buttons/MinimizeButton.d.ts.map +0 -1
  57. package/dist/components/buttons/PlayPauseButton.d.ts.map +0 -1
  58. package/dist/core/SaltfishPlayer.d.ts.map +0 -1
  59. package/dist/core/factories/ManagerFactory.d.ts.map +0 -1
  60. package/dist/core/services/ManagerOrchestrator.d.ts.map +0 -1
  61. package/dist/core/services/PlayerInitializationService.d.ts.map +0 -1
  62. package/dist/core/services/PlaylistOrchestrator.d.ts.map +0 -1
  63. package/dist/core/services/ServiceInterfaces.d.ts.map +0 -1
  64. package/dist/core/services/StateMachineActionHandler.d.ts.map +0 -1
  65. package/dist/core/services/UserManagementService.d.ts.map +0 -1
  66. package/dist/core/stateMachine.d.ts.map +0 -1
  67. package/dist/core/stateMachineConfig.d.ts.map +0 -1
  68. package/dist/core/store.d.ts.map +0 -1
  69. package/dist/index.d.ts.map +0 -1
  70. package/dist/loaders/PlaylistLoader.d.ts.map +0 -1
  71. package/dist/managers/ABTestManager.d.ts.map +0 -1
  72. package/dist/managers/AnalyticsManager.d.ts.map +0 -1
  73. package/dist/managers/CursorManager.d.ts.map +0 -1
  74. package/dist/managers/DevicePlaybackHandler.d.ts.map +0 -1
  75. package/dist/managers/EventManager.d.ts.map +0 -1
  76. package/dist/managers/InteractionManager.d.ts.map +0 -1
  77. package/dist/managers/PlaylistManager.d.ts.map +0 -1
  78. package/dist/managers/SessionManager.d.ts.map +0 -1
  79. package/dist/managers/ShadowDOMManager.d.ts.map +0 -1
  80. package/dist/managers/StepTimeoutManager.d.ts.map +0 -1
  81. package/dist/managers/StorageManager.d.ts.map +0 -1
  82. package/dist/managers/TranscriptManager.d.ts.map +0 -1
  83. package/dist/managers/TransitionManager.d.ts.map +0 -1
  84. package/dist/managers/TriggerManager.d.ts.map +0 -1
  85. package/dist/managers/UIManager.d.ts.map +0 -1
  86. package/dist/managers/VideoControlsUI.d.ts.map +0 -1
  87. package/dist/managers/VideoManager.d.ts.map +0 -1
  88. package/dist/styles/index.d.ts.map +0 -1
  89. package/dist/types/index.d.ts.map +0 -1
  90. package/dist/types.d.ts.map +0 -1
  91. package/dist/updaters/EventUpdater.d.ts.map +0 -1
  92. package/dist/updaters/UIUpdater.d.ts.map +0 -1
  93. package/dist/utils/ErrorHandler.d.ts.map +0 -1
  94. package/dist/utils/deviceDetection.d.ts.map +0 -1
  95. package/dist/utils/dimensions.d.ts.map +0 -1
  96. package/dist/utils/languageDetector.d.ts.map +0 -1
  97. package/dist/utils/logger.d.ts.map +0 -1
  98. package/dist/validators/PlaylistValidator.d.ts.map +0 -1
  99. /package/dist/{components → src/components}/ErrorDisplay.d.ts +0 -0
  100. /package/dist/{components → src/components}/LoadingSpinner.d.ts +0 -0
  101. /package/dist/{components → src/components}/buttons/ExitButton.d.ts +0 -0
  102. /package/dist/{components → src/components}/buttons/MinimizeButton.d.ts +0 -0
  103. /package/dist/{components → src/components}/buttons/PlayPauseButton.d.ts +0 -0
  104. /package/dist/{core → src/core}/SaltfishPlayer.d.ts +0 -0
  105. /package/dist/{core → src/core}/factories/ManagerFactory.d.ts +0 -0
  106. /package/dist/{core → src/core}/services/ManagerOrchestrator.d.ts +0 -0
  107. /package/dist/{core → src/core}/services/PlayerInitializationService.d.ts +0 -0
  108. /package/dist/{core → src/core}/services/PlaylistOrchestrator.d.ts +0 -0
  109. /package/dist/{core → src/core}/services/ServiceInterfaces.d.ts +0 -0
  110. /package/dist/{core → src/core}/services/StateMachineActionHandler.d.ts +0 -0
  111. /package/dist/{core → src/core}/services/UserManagementService.d.ts +0 -0
  112. /package/dist/{core → src/core}/stateMachine.d.ts +0 -0
  113. /package/dist/{core → src/core}/stateMachineConfig.d.ts +0 -0
  114. /package/dist/{core → src/core}/store.d.ts +0 -0
  115. /package/dist/{loaders → src/loaders}/PlaylistLoader.d.ts +0 -0
  116. /package/dist/{managers → src/managers}/ABTestManager.d.ts +0 -0
  117. /package/dist/{managers → src/managers}/AnalyticsManager.d.ts +0 -0
  118. /package/dist/{managers → src/managers}/CursorManager.d.ts +0 -0
  119. /package/dist/{managers → src/managers}/DevicePlaybackHandler.d.ts +0 -0
  120. /package/dist/{managers → src/managers}/EventManager.d.ts +0 -0
  121. /package/dist/{managers → src/managers}/InteractionManager.d.ts +0 -0
  122. /package/dist/{managers → src/managers}/PlaylistManager.d.ts +0 -0
  123. /package/dist/{managers → src/managers}/SessionManager.d.ts +0 -0
  124. /package/dist/{managers → src/managers}/ShadowDOMManager.d.ts +0 -0
  125. /package/dist/{managers → src/managers}/StepTimeoutManager.d.ts +0 -0
  126. /package/dist/{managers → src/managers}/StorageManager.d.ts +0 -0
  127. /package/dist/{managers → src/managers}/TranscriptManager.d.ts +0 -0
  128. /package/dist/{managers → src/managers}/TransitionManager.d.ts +0 -0
  129. /package/dist/{managers → src/managers}/TriggerManager.d.ts +0 -0
  130. /package/dist/{managers → src/managers}/UIManager.d.ts +0 -0
  131. /package/dist/{managers → src/managers}/VideoControlsUI.d.ts +0 -0
  132. /package/dist/{managers → src/managers}/VideoManager.d.ts +0 -0
  133. /package/dist/{styles → src/styles}/index.d.ts +0 -0
  134. /package/dist/{types → src/types}/index.d.ts +0 -0
  135. /package/dist/{types.d.ts → src/types.d.ts} +0 -0
  136. /package/dist/{updaters → src/updaters}/EventUpdater.d.ts +0 -0
  137. /package/dist/{updaters → src/updaters}/UIUpdater.d.ts +0 -0
  138. /package/dist/{utils → src/utils}/ErrorHandler.d.ts +0 -0
  139. /package/dist/{utils → src/utils}/deviceDetection.d.ts +0 -0
  140. /package/dist/{utils → src/utils}/dimensions.d.ts +0 -0
  141. /package/dist/{utils → src/utils}/languageDetector.d.ts +0 -0
  142. /package/dist/{utils → src/utils}/logger.d.ts +0 -0
  143. /package/dist/{validators → src/validators}/PlaylistValidator.d.ts +0 -0
@@ -943,11 +943,11 @@ const playerStateMachineConfig = {
943
943
  on: {
944
944
  "INITIALIZE": { target: "idle" }
945
945
  },
946
- entry: ["logStateEntry", "trackPlaylistComplete", "hidePlayButton"]
946
+ entry: ["logStateEntry", "trackPlaylistComplete"]
947
947
  },
948
948
  "closing": {
949
949
  on: {},
950
- entry: ["logStateEntry", "triggerPlaylistDismissed", "scheduleDestroy"]
950
+ entry: ["logStateEntry", "triggerPlaylistDismissed"]
951
951
  }
952
952
  }
953
953
  };
@@ -1338,15 +1338,7 @@ const saltfishStore = createStore()(
1338
1338
  const { manifest } = get();
1339
1339
  if (stepId === "completed") {
1340
1340
  set2((state) => {
1341
- var _a, _b;
1342
1341
  state.currentState = transitionState({ type: "COMPLETE_PLAYLIST" });
1343
- const playlistPersistence = ((_a = state.playlistOptions) == null ? void 0 : _a.persistence) ?? true;
1344
- if (manifest && playlistPersistence) {
1345
- delete state.progress[manifest.id];
1346
- const userId = (_b = state.user) == null ? void 0 : _b.id;
1347
- storageManager.setProgress(state.progress, userId);
1348
- log(`Store: Removed completed playlist ${manifest.id} from localStorage`);
1349
- }
1350
1342
  });
1351
1343
  return;
1352
1344
  }
@@ -2575,8 +2567,8 @@ class PlaylistOrchestrator {
2575
2567
  this.stateMachineActionHandler.registerStateMachineActions();
2576
2568
  }
2577
2569
  }
2578
- if (store.currentState === "completed") {
2579
- log("PlaylistOrchestrator: Resetting from completed state to start new playlist");
2570
+ if (store.currentState === "completed" || store.currentState === "closing") {
2571
+ log(`PlaylistOrchestrator: Resetting from ${store.currentState} state to start new playlist`);
2580
2572
  store.resetForNewPlaylist();
2581
2573
  if (this.stateMachineActionHandler) {
2582
2574
  this.stateMachineActionHandler.registerStateMachineActions();
@@ -2636,9 +2628,16 @@ class PlaylistOrchestrator {
2636
2628
  const playlistPersistence = options == null ? void 0 : options.persistence;
2637
2629
  if (typeof window !== "undefined") {
2638
2630
  const userId = (_d = store.user) == null ? void 0 : _d.id;
2639
- const progress = this.managers.storageManager.getProgress(userId);
2640
- if (progress && progress[playlistId]) {
2641
- store.loadPlaylistProgress(playlistId, progress[playlistId]);
2631
+ const progressFromStorage = this.managers.storageManager.getProgress(userId);
2632
+ if (progressFromStorage && progressFromStorage[playlistId]) {
2633
+ store.loadPlaylistProgress(playlistId, progressFromStorage[playlistId]);
2634
+ } else if (store.progress[playlistId]) {
2635
+ log(`PlaylistOrchestrator: Clearing stale progress for ${playlistId} from store.progress`);
2636
+ const cleanedProgress = { ...store.progress };
2637
+ delete cleanedProgress[playlistId];
2638
+ useSaltfishStore.setState((state) => {
2639
+ state.progress = cleanedProgress;
2640
+ });
2642
2641
  }
2643
2642
  }
2644
2643
  this.managers.analyticsManager.trackPlaylistStart(playlistId);
@@ -3494,7 +3493,7 @@ const _ManagerOrchestrator = class _ManagerOrchestrator {
3494
3493
  this.managers.cursorManager.setShouldShowCursor(true);
3495
3494
  this.managers.cursorManager.animate(currentStep.cursorAnimations[0]);
3496
3495
  }
3497
- } else if (store.currentState === "completed") {
3496
+ } else if (store.currentState === "completed" || store.currentState === "closing") {
3498
3497
  this.cleanupPlaylist();
3499
3498
  }
3500
3499
  if (store.isMinimized !== _ManagerOrchestrator.prevState.isMinimized) {
@@ -10284,6 +10283,10 @@ const SaltfishPlayer$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.de
10284
10283
  __proto__: null,
10285
10284
  SaltfishPlayer
10286
10285
  }, Symbol.toStringTag, { value: "Module" }));
10286
+ const version = "0.2.33";
10287
+ const packageJson = {
10288
+ version
10289
+ };
10287
10290
  function createAPI() {
10288
10291
  const player = SaltfishPlayer.getInstance();
10289
10292
  let isInitializing = false;
@@ -10409,6 +10412,9 @@ function createAPI() {
10409
10412
  },
10410
10413
  getRunId: () => {
10411
10414
  return player.getRunId();
10415
+ },
10416
+ version: () => {
10417
+ return packageJson.version;
10412
10418
  }
10413
10419
  };
10414
10420
  api.__dev__ = {