@bendyline/squisq-react 1.3.1 → 1.3.2

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 (187) hide show
  1. package/dist/index.d.ts +710 -35
  2. package/dist/index.js +4288 -33
  3. package/dist/index.js.map +1 -1
  4. package/dist/squisq-player.global.js +1 -1
  5. package/dist/standalone-source.js +1 -1
  6. package/package.json +2 -2
  7. package/dist/BlockRenderer.d.ts +0 -37
  8. package/dist/BlockRenderer.d.ts.map +0 -1
  9. package/dist/BlockRenderer.js +0 -54
  10. package/dist/BlockRenderer.js.map +0 -1
  11. package/dist/CaptionOverlay.d.ts +0 -33
  12. package/dist/CaptionOverlay.d.ts.map +0 -1
  13. package/dist/CaptionOverlay.js +0 -44
  14. package/dist/CaptionOverlay.js.map +0 -1
  15. package/dist/DocControlsBottom.d.ts +0 -28
  16. package/dist/DocControlsBottom.d.ts.map +0 -1
  17. package/dist/DocControlsBottom.js +0 -27
  18. package/dist/DocControlsBottom.js.map +0 -1
  19. package/dist/DocControlsOverlay.d.ts +0 -28
  20. package/dist/DocControlsOverlay.d.ts.map +0 -1
  21. package/dist/DocControlsOverlay.js +0 -80
  22. package/dist/DocControlsOverlay.js.map +0 -1
  23. package/dist/DocControlsSidebar.d.ts +0 -27
  24. package/dist/DocControlsSidebar.d.ts.map +0 -1
  25. package/dist/DocControlsSidebar.js +0 -10
  26. package/dist/DocControlsSidebar.js.map +0 -1
  27. package/dist/DocControlsSlideshow.d.ts +0 -20
  28. package/dist/DocControlsSlideshow.d.ts.map +0 -1
  29. package/dist/DocControlsSlideshow.js +0 -69
  30. package/dist/DocControlsSlideshow.js.map +0 -1
  31. package/dist/DocPlayer.d.ts +0 -97
  32. package/dist/DocPlayer.d.ts.map +0 -1
  33. package/dist/DocPlayer.js +0 -657
  34. package/dist/DocPlayer.js.map +0 -1
  35. package/dist/DocPlayerWithSidebar.d.ts +0 -41
  36. package/dist/DocPlayerWithSidebar.d.ts.map +0 -1
  37. package/dist/DocPlayerWithSidebar.js +0 -69
  38. package/dist/DocPlayerWithSidebar.js.map +0 -1
  39. package/dist/DocProgressBar.d.ts +0 -31
  40. package/dist/DocProgressBar.d.ts.map +0 -1
  41. package/dist/DocProgressBar.js +0 -122
  42. package/dist/DocProgressBar.js.map +0 -1
  43. package/dist/InlineAudioPlayer.d.ts +0 -15
  44. package/dist/InlineAudioPlayer.d.ts.map +0 -1
  45. package/dist/InlineAudioPlayer.js +0 -22
  46. package/dist/InlineAudioPlayer.js.map +0 -1
  47. package/dist/InlineVideoPlayer.d.ts +0 -21
  48. package/dist/InlineVideoPlayer.d.ts.map +0 -1
  49. package/dist/InlineVideoPlayer.js +0 -29
  50. package/dist/InlineVideoPlayer.js.map +0 -1
  51. package/dist/LinearDocView.d.ts +0 -73
  52. package/dist/LinearDocView.d.ts.map +0 -1
  53. package/dist/LinearDocView.js +0 -451
  54. package/dist/LinearDocView.js.map +0 -1
  55. package/dist/MarkdownRenderer.d.ts +0 -32
  56. package/dist/MarkdownRenderer.d.ts.map +0 -1
  57. package/dist/MarkdownRenderer.js +0 -259
  58. package/dist/MarkdownRenderer.js.map +0 -1
  59. package/dist/SocialCaptionOverlay.d.ts +0 -27
  60. package/dist/SocialCaptionOverlay.d.ts.map +0 -1
  61. package/dist/SocialCaptionOverlay.js +0 -185
  62. package/dist/SocialCaptionOverlay.js.map +0 -1
  63. package/dist/__tests__/BlockRenderer.test.d.ts +0 -2
  64. package/dist/__tests__/BlockRenderer.test.d.ts.map +0 -1
  65. package/dist/__tests__/BlockRenderer.test.js +0 -82
  66. package/dist/__tests__/BlockRenderer.test.js.map +0 -1
  67. package/dist/__tests__/DocControlsSlideshow.test.d.ts +0 -2
  68. package/dist/__tests__/DocControlsSlideshow.test.d.ts.map +0 -1
  69. package/dist/__tests__/DocControlsSlideshow.test.js +0 -89
  70. package/dist/__tests__/DocControlsSlideshow.test.js.map +0 -1
  71. package/dist/__tests__/JsonView.test.d.ts +0 -2
  72. package/dist/__tests__/JsonView.test.d.ts.map +0 -1
  73. package/dist/__tests__/JsonView.test.js +0 -93
  74. package/dist/__tests__/JsonView.test.js.map +0 -1
  75. package/dist/__tests__/LinearDocView.test.d.ts +0 -2
  76. package/dist/__tests__/LinearDocView.test.d.ts.map +0 -1
  77. package/dist/__tests__/LinearDocView.test.js +0 -250
  78. package/dist/__tests__/LinearDocView.test.js.map +0 -1
  79. package/dist/__tests__/MarkdownRenderer.test.d.ts +0 -2
  80. package/dist/__tests__/MarkdownRenderer.test.d.ts.map +0 -1
  81. package/dist/__tests__/MarkdownRenderer.test.js +0 -208
  82. package/dist/__tests__/MarkdownRenderer.test.js.map +0 -1
  83. package/dist/__tests__/TableLayer.test.d.ts +0 -2
  84. package/dist/__tests__/TableLayer.test.d.ts.map +0 -1
  85. package/dist/__tests__/TableLayer.test.js +0 -121
  86. package/dist/__tests__/TableLayer.test.js.map +0 -1
  87. package/dist/__tests__/exports.test.d.ts +0 -2
  88. package/dist/__tests__/exports.test.d.ts.map +0 -1
  89. package/dist/__tests__/exports.test.js +0 -48
  90. package/dist/__tests__/exports.test.js.map +0 -1
  91. package/dist/hooks/AudioProvider.d.ts +0 -71
  92. package/dist/hooks/AudioProvider.d.ts.map +0 -1
  93. package/dist/hooks/AudioProvider.js +0 -52
  94. package/dist/hooks/AudioProvider.js.map +0 -1
  95. package/dist/hooks/MediaContext.d.ts +0 -35
  96. package/dist/hooks/MediaContext.d.ts.map +0 -1
  97. package/dist/hooks/MediaContext.js +0 -72
  98. package/dist/hooks/MediaContext.js.map +0 -1
  99. package/dist/hooks/index.d.ts +0 -6
  100. package/dist/hooks/index.d.ts.map +0 -1
  101. package/dist/hooks/index.js +0 -5
  102. package/dist/hooks/index.js.map +0 -1
  103. package/dist/hooks/useAudioSync.d.ts +0 -18
  104. package/dist/hooks/useAudioSync.d.ts.map +0 -1
  105. package/dist/hooks/useAudioSync.js +0 -340
  106. package/dist/hooks/useAudioSync.js.map +0 -1
  107. package/dist/hooks/useAutoSurface.d.ts +0 -11
  108. package/dist/hooks/useAutoSurface.d.ts.map +0 -1
  109. package/dist/hooks/useAutoSurface.js +0 -24
  110. package/dist/hooks/useAutoSurface.js.map +0 -1
  111. package/dist/hooks/useDocPlayback.d.ts +0 -47
  112. package/dist/hooks/useDocPlayback.d.ts.map +0 -1
  113. package/dist/hooks/useDocPlayback.js +0 -179
  114. package/dist/hooks/useDocPlayback.js.map +0 -1
  115. package/dist/hooks/useViewportOrientation.d.ts +0 -31
  116. package/dist/hooks/useViewportOrientation.d.ts.map +0 -1
  117. package/dist/hooks/useViewportOrientation.js +0 -92
  118. package/dist/hooks/useViewportOrientation.js.map +0 -1
  119. package/dist/index.d.ts.map +0 -1
  120. package/dist/jsonView/JsonView.d.ts +0 -26
  121. package/dist/jsonView/JsonView.d.ts.map +0 -1
  122. package/dist/jsonView/JsonView.js +0 -12
  123. package/dist/jsonView/JsonView.js.map +0 -1
  124. package/dist/jsonView/RenderNode.d.ts +0 -22
  125. package/dist/jsonView/RenderNode.d.ts.map +0 -1
  126. package/dist/jsonView/RenderNode.js +0 -30
  127. package/dist/jsonView/RenderNode.js.map +0 -1
  128. package/dist/jsonView/index.d.ts +0 -3
  129. package/dist/jsonView/index.d.ts.map +0 -1
  130. package/dist/jsonView/index.js +0 -2
  131. package/dist/jsonView/index.js.map +0 -1
  132. package/dist/jsonView/useJsonViewTokens.d.ts +0 -14
  133. package/dist/jsonView/useJsonViewTokens.d.ts.map +0 -1
  134. package/dist/jsonView/useJsonViewTokens.js +0 -34
  135. package/dist/jsonView/useJsonViewTokens.js.map +0 -1
  136. package/dist/jsonView/viewers.d.ts +0 -30
  137. package/dist/jsonView/viewers.d.ts.map +0 -1
  138. package/dist/jsonView/viewers.js +0 -226
  139. package/dist/jsonView/viewers.js.map +0 -1
  140. package/dist/layers/ImageLayer.d.ts +0 -23
  141. package/dist/layers/ImageLayer.d.ts.map +0 -1
  142. package/dist/layers/ImageLayer.js +0 -104
  143. package/dist/layers/ImageLayer.js.map +0 -1
  144. package/dist/layers/MapLayer.d.ts +0 -29
  145. package/dist/layers/MapLayer.d.ts.map +0 -1
  146. package/dist/layers/MapLayer.js +0 -97
  147. package/dist/layers/MapLayer.js.map +0 -1
  148. package/dist/layers/ShapeLayer.d.ts +0 -20
  149. package/dist/layers/ShapeLayer.d.ts.map +0 -1
  150. package/dist/layers/ShapeLayer.js +0 -39
  151. package/dist/layers/ShapeLayer.js.map +0 -1
  152. package/dist/layers/TableLayer.d.ts +0 -23
  153. package/dist/layers/TableLayer.d.ts.map +0 -1
  154. package/dist/layers/TableLayer.js +0 -58
  155. package/dist/layers/TableLayer.js.map +0 -1
  156. package/dist/layers/TextLayer.d.ts +0 -23
  157. package/dist/layers/TextLayer.d.ts.map +0 -1
  158. package/dist/layers/TextLayer.js +0 -126
  159. package/dist/layers/TextLayer.js.map +0 -1
  160. package/dist/layers/VideoLayer.d.ts +0 -40
  161. package/dist/layers/VideoLayer.d.ts.map +0 -1
  162. package/dist/layers/VideoLayer.js +0 -105
  163. package/dist/layers/VideoLayer.js.map +0 -1
  164. package/dist/layers/index.d.ts +0 -6
  165. package/dist/layers/index.d.ts.map +0 -1
  166. package/dist/layers/index.js +0 -6
  167. package/dist/layers/index.js.map +0 -1
  168. package/dist/standalone-entry.d.ts +0 -69
  169. package/dist/standalone-entry.d.ts.map +0 -1
  170. package/dist/standalone-entry.js +0 -185
  171. package/dist/standalone-entry.js.map +0 -1
  172. package/dist/types.d.ts +0 -154
  173. package/dist/types.d.ts.map +0 -1
  174. package/dist/types.js +0 -21
  175. package/dist/types.js.map +0 -1
  176. package/dist/utils/animationUtils.d.ts +0 -8
  177. package/dist/utils/animationUtils.d.ts.map +0 -1
  178. package/dist/utils/animationUtils.js +0 -8
  179. package/dist/utils/animationUtils.js.map +0 -1
  180. package/dist/utils/layerUtils.d.ts +0 -17
  181. package/dist/utils/layerUtils.d.ts.map +0 -1
  182. package/dist/utils/layerUtils.js +0 -37
  183. package/dist/utils/layerUtils.js.map +0 -1
  184. package/dist/utils/mapTileUtils.d.ts +0 -105
  185. package/dist/utils/mapTileUtils.d.ts.map +0 -1
  186. package/dist/utils/mapTileUtils.js +0 -268
  187. package/dist/utils/mapTileUtils.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocPlayer.js","sourceRoot":"","sources":["../src/DocPlayer.tsx"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- /**
2
- * DocPlayerWithSidebar Component
3
- *
4
- * Wrapper that composes DocPlayer + DocControlsSidebar in a horizontal
5
- * flex layout. The video renders on the left with only a scrubber at the
6
- * bottom, and playback controls render in a vertical sidebar on the right.
7
- *
8
- * This layout eliminates black bars for portrait (9:16) video in portrait
9
- * viewports by placing controls in the space that would otherwise be unused.
10
- *
11
- * Uses refs + forceUpdate pattern to avoid infinite render loops between
12
- * the DocPlayer's callbacks and this component's state. The DocPlayer
13
- * fires onPlaybackStateChange frequently (every currentTime tick), so we
14
- * store state in a ref and only trigger re-renders at controlled intervals.
15
- *
16
- * Related Files:
17
- * - DocPlayer.tsx -- Core player (renders with showControls=false, showScrubber=true)
18
- * - DocControlsSidebar.tsx -- Vertical sidebar controls
19
- */
20
- import type { Doc } from '@bendyline/squisq/schemas';
21
- import type { ViewportConfig } from '@bendyline/squisq/schemas';
22
- import type { AudioProvider } from './hooks/AudioProvider';
23
- interface DocPlayerWithSidebarProps {
24
- script: Doc;
25
- basePath: string;
26
- autoPlay?: boolean;
27
- onEnded?: () => void;
28
- onTimeUpdate?: (time: number) => void;
29
- audioProvider?: AudioProvider;
30
- muted?: boolean;
31
- captionsEnabled?: boolean;
32
- isFullscreen?: boolean;
33
- onFullscreenToggle?: () => void;
34
- /** Force a specific viewport preset, bypassing window-based orientation detection. */
35
- forceViewport?: ViewportConfig;
36
- /** Called when playing state changes */
37
- onPlayingChange?: (isPlaying: boolean) => void;
38
- }
39
- export declare function DocPlayerWithSidebar({ script, basePath, autoPlay, onEnded, onTimeUpdate, audioProvider, muted, captionsEnabled, isFullscreen, onFullscreenToggle, forceViewport, onPlayingChange, }: DocPlayerWithSidebarProps): import("react/jsx-runtime").JSX.Element;
40
- export {};
41
- //# sourceMappingURL=DocPlayerWithSidebar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocPlayerWithSidebar.d.ts","sourceRoot":"","sources":["../src/DocPlayerWithSidebar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAK3D,UAAU,yBAAyB;IACjC,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,sFAAsF;IACtF,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,wCAAwC;IACxC,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD;AAiBD,wBAAgB,oBAAoB,CAAC,EACnC,MAAM,EACN,QAAQ,EACR,QAAgB,EAChB,OAAO,EACP,YAAY,EACZ,aAAa,EACb,KAAK,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,eAAe,GAChB,EAAE,yBAAyB,2CAiE3B"}
@@ -1,69 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * DocPlayerWithSidebar Component
4
- *
5
- * Wrapper that composes DocPlayer + DocControlsSidebar in a horizontal
6
- * flex layout. The video renders on the left with only a scrubber at the
7
- * bottom, and playback controls render in a vertical sidebar on the right.
8
- *
9
- * This layout eliminates black bars for portrait (9:16) video in portrait
10
- * viewports by placing controls in the space that would otherwise be unused.
11
- *
12
- * Uses refs + forceUpdate pattern to avoid infinite render loops between
13
- * the DocPlayer's callbacks and this component's state. The DocPlayer
14
- * fires onPlaybackStateChange frequently (every currentTime tick), so we
15
- * store state in a ref and only trigger re-renders at controlled intervals.
16
- *
17
- * Related Files:
18
- * - DocPlayer.tsx -- Core player (renders with showControls=false, showScrubber=true)
19
- * - DocControlsSidebar.tsx -- Vertical sidebar controls
20
- */
21
- import { useRef, useState, useCallback, useEffect } from 'react';
22
- import { DocPlayer } from './DocPlayer';
23
- import { DocControlsSidebar } from './DocControlsSidebar';
24
- const DEFAULT_STATE = {
25
- isPlaying: false,
26
- currentTime: 0,
27
- totalDuration: 0,
28
- currentBlockIndex: 0,
29
- totalBlocks: 0,
30
- docProgress: 0,
31
- hasCaptions: false,
32
- captionsEnabled: false,
33
- captionMode: 'off',
34
- currentSegmentIndex: 0,
35
- currentSegmentName: null,
36
- currentBlock: null,
37
- };
38
- export function DocPlayerWithSidebar({ script, basePath, autoPlay = false, onEnded, onTimeUpdate, audioProvider, muted, captionsEnabled, isFullscreen, onFullscreenToggle, forceViewport, onPlayingChange, }) {
39
- // Store playback state in a ref to avoid triggering re-renders from DocPlayer callbacks
40
- const stateRef = useRef(DEFAULT_STATE);
41
- const actionsRef = useRef(null);
42
- const wasPlayingRef = useRef(false);
43
- // Use a counter to force sidebar re-renders at controlled intervals
44
- const [, setTick] = useState(0);
45
- // Update ref without triggering re-render
46
- const handleStateChange = useCallback((state) => {
47
- stateRef.current = state;
48
- if (onPlayingChange && state.isPlaying !== wasPlayingRef.current) {
49
- wasPlayingRef.current = state.isPlaying;
50
- onPlayingChange(state.isPlaying);
51
- }
52
- }, [onPlayingChange]);
53
- const handleControlsReady = useCallback((controls) => {
54
- const isFirst = !actionsRef.current;
55
- actionsRef.current = controls;
56
- // Force one re-render on first call to show the sidebar
57
- if (isFirst)
58
- setTick((t) => t + 1);
59
- }, []);
60
- // Periodically sync the ref to trigger sidebar UI updates
61
- useEffect(() => {
62
- const interval = setInterval(() => {
63
- setTick((t) => t + 1);
64
- }, 250); // 4 updates per second is smooth enough for time/progress display
65
- return () => clearInterval(interval);
66
- }, []);
67
- return (_jsxs("div", { className: "doc-player-sidebar-layout", children: [_jsx("div", { className: "doc-player-sidebar-layout__video", children: _jsx(DocPlayer, { script: script, basePath: basePath, autoPlay: autoPlay, onEnded: onEnded, onTimeUpdate: onTimeUpdate, audioProvider: audioProvider, muted: muted, captionsEnabled: captionsEnabled, showControls: isFullscreen, showScrubber: !isFullscreen, onPlaybackStateChange: handleStateChange, onControlsReady: handleControlsReady, isFullscreen: isFullscreen, onFullscreenToggle: onFullscreenToggle, forceViewport: forceViewport }) }), actionsRef.current && (_jsx(DocControlsSidebar, { state: stateRef.current, actions: actionsRef.current }))] }));
68
- }
69
- //# sourceMappingURL=DocPlayerWithSidebar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocPlayerWithSidebar.js","sourceRoot":"","sources":["../src/DocPlayerWithSidebar.tsx"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- /**
2
- * DocProgressBar Component
3
- *
4
- * Interactive progress/scrubber bar for doc playback. Shows a track with
5
- * progress fill, block markers as clickable dots, hover tooltip with time
6
- * and block title, and a hover line indicator.
7
- *
8
- * Extracted from DocPlayer to enable reuse across different control layouts
9
- * (overlay, sidebar, bottom). When used in sidebar/bottom layouts, this
10
- * component renders at the bottom of the video while other controls are
11
- * externalized.
12
- *
13
- * Related Files:
14
- * - DocPlayer.tsx -- Parent component
15
- * - DocControlsOverlay.tsx -- Uses this within the overlay
16
- * - types.ts -- Shared type definitions
17
- */
18
- import type { PlaybackState, PlaybackActions, BlockMarker } from './types';
19
- import type { Block } from '@bendyline/squisq/schemas';
20
- interface DocProgressBarProps {
21
- state: PlaybackState;
22
- actions: PlaybackActions;
23
- blockMarkers: BlockMarker[];
24
- /** All expanded blocks for hover lookup */
25
- expandedBlocks: Block[];
26
- /** Optional: get block title for hover tooltip */
27
- getBlockTitle?: (block: Block) => string;
28
- }
29
- export declare function DocProgressBar({ state, actions, blockMarkers, expandedBlocks, getBlockTitle, }: DocProgressBarProps): import("react/jsx-runtime").JSX.Element;
30
- export {};
31
- //# sourceMappingURL=DocProgressBar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocProgressBar.d.ts","sourceRoot":"","sources":["../src/DocProgressBar.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,UAAU,mBAAmB;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,2CAA2C;IAC3C,cAAc,EAAE,KAAK,EAAE,CAAC;IACxB,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC;CAC1C;AAED,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,OAAO,EACP,YAAY,EACZ,cAAc,EACd,aAAa,GACd,EAAE,mBAAmB,2CAgKrB"}
@@ -1,122 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * DocProgressBar Component
4
- *
5
- * Interactive progress/scrubber bar for doc playback. Shows a track with
6
- * progress fill, block markers as clickable dots, hover tooltip with time
7
- * and block title, and a hover line indicator.
8
- *
9
- * Extracted from DocPlayer to enable reuse across different control layouts
10
- * (overlay, sidebar, bottom). When used in sidebar/bottom layouts, this
11
- * component renders at the bottom of the video while other controls are
12
- * externalized.
13
- *
14
- * Related Files:
15
- * - DocPlayer.tsx -- Parent component
16
- * - DocControlsOverlay.tsx -- Uses this within the overlay
17
- * - types.ts -- Shared type definitions
18
- */
19
- import { useRef, useState, useCallback } from 'react';
20
- import { formatTime } from './types';
21
- export function DocProgressBar({ state, actions, blockMarkers, expandedBlocks, getBlockTitle, }) {
22
- const progressBarRef = useRef(null);
23
- const [hoverPosition, setHoverPosition] = useState(null);
24
- const handleProgressHover = useCallback((e) => {
25
- const bar = progressBarRef.current;
26
- if (!bar)
27
- return;
28
- const rect = bar.getBoundingClientRect();
29
- const x = e.clientX - rect.left;
30
- const progress = Math.max(0, Math.min(1, x / rect.width));
31
- setHoverPosition(progress);
32
- }, []);
33
- const handleProgressLeave = useCallback(() => {
34
- setHoverPosition(null);
35
- }, []);
36
- const getBlockAtTimeLocal = useCallback((time) => {
37
- for (let i = expandedBlocks.length - 1; i >= 0; i--) {
38
- const blk = expandedBlocks[i];
39
- if (time >= blk.startTime) {
40
- return { block: blk, index: i };
41
- }
42
- }
43
- return expandedBlocks.length > 0 ? { block: expandedBlocks[0], index: 0 } : null;
44
- }, [expandedBlocks]);
45
- return (_jsxs("div", { ref: progressBarRef, style: {
46
- flex: 1,
47
- height: '24px',
48
- cursor: 'pointer',
49
- position: 'relative',
50
- display: 'flex',
51
- alignItems: 'center',
52
- }, onClick: (e) => {
53
- const rect = e.currentTarget.getBoundingClientRect();
54
- const x = e.clientX - rect.left;
55
- const progress = x / rect.width;
56
- actions.seekTo(progress * state.totalDuration);
57
- }, onMouseMove: handleProgressHover, onMouseLeave: handleProgressLeave, children: [_jsx("div", { style: {
58
- position: 'absolute',
59
- left: 0,
60
- right: 0,
61
- height: '6px',
62
- background: 'rgba(255,255,255,0.2)',
63
- borderRadius: '3px',
64
- } }), _jsx("div", { style: {
65
- position: 'absolute',
66
- left: 0,
67
- width: `${state.docProgress * 100}%`,
68
- height: '6px',
69
- background: '#5b9bd5',
70
- borderRadius: '3px',
71
- transition: 'width 0.1s',
72
- } }), blockMarkers.map((marker, i) => (_jsx("div", { style: {
73
- position: 'absolute',
74
- left: `${marker.position}%`,
75
- transform: 'translateX(-50%)',
76
- width: '10px',
77
- height: '10px',
78
- borderRadius: '50%',
79
- background: marker.index === state.currentBlockIndex ? '#ffffff' : 'rgba(255,255,255,0.5)',
80
- border: '2px solid #5b9bd5',
81
- cursor: 'pointer',
82
- zIndex: 2,
83
- transition: 'transform 0.15s, background 0.15s',
84
- }, title: marker.title, onClick: (e) => {
85
- e.stopPropagation();
86
- actions.seekTo(marker.block.startTime);
87
- }, onMouseEnter: (e) => {
88
- e.currentTarget.style.transform = 'translateX(-50%) scale(1.3)';
89
- }, onMouseLeave: (e) => {
90
- e.currentTarget.style.transform = 'translateX(-50%)';
91
- } }, `${marker.block.id}-${i}`))), hoverPosition !== null && (_jsxs("div", { style: {
92
- position: 'absolute',
93
- left: `${hoverPosition * 100}%`,
94
- bottom: '100%',
95
- transform: 'translateX(-50%)',
96
- marginBottom: '8px',
97
- padding: '6px 10px',
98
- background: 'rgba(0,0,0,0.9)',
99
- borderRadius: '4px',
100
- whiteSpace: 'nowrap',
101
- pointerEvents: 'none',
102
- zIndex: 10,
103
- }, children: [_jsx("div", { style: { color: 'white', fontSize: '12px', fontFamily: 'monospace' }, children: formatTime(hoverPosition * state.totalDuration) }), (() => {
104
- const hoverTime = hoverPosition * state.totalDuration;
105
- const slideInfo = getBlockAtTimeLocal(hoverTime);
106
- if (slideInfo && getBlockTitle) {
107
- return (_jsx("div", { style: { color: 'rgba(255,255,255,0.7)', fontSize: '11px', marginTop: '2px' }, children: getBlockTitle(slideInfo.block) }));
108
- }
109
- return null;
110
- })()] })), hoverPosition !== null && (_jsx("div", { style: {
111
- position: 'absolute',
112
- left: `${hoverPosition * 100}%`,
113
- top: '50%',
114
- transform: 'translate(-50%, -50%)',
115
- width: '2px',
116
- height: '16px',
117
- background: 'rgba(255,255,255,0.6)',
118
- pointerEvents: 'none',
119
- zIndex: 1,
120
- } }))] }));
121
- }
122
- //# sourceMappingURL=DocProgressBar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocProgressBar.js","sourceRoot":"","sources":["../src/DocProgressBar.tsx"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- export interface InlineAudioPlayerProps {
2
- /** Source path — resolved through MediaContext when relative. */
3
- src: string;
4
- /** Base path used when no MediaProvider is in context. */
5
- basePath?: string;
6
- /** Whether to show native controls. Defaults to true. */
7
- controls?: boolean;
8
- /** `preload` attribute passthrough. Defaults to `'metadata'`. */
9
- preload?: 'none' | 'metadata' | 'auto';
10
- /** Extra className on the wrapper. */
11
- className?: string;
12
- }
13
- export declare function InlineAudioPlayer({ src, basePath, controls, preload, className, }: InlineAudioPlayerProps): import("react/jsx-runtime").JSX.Element | null;
14
- export default InlineAudioPlayer;
15
- //# sourceMappingURL=InlineAudioPlayer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InlineAudioPlayer.d.ts","sourceRoot":"","sources":["../src/InlineAudioPlayer.tsx"],"names":[],"mappings":"AAcA,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACvC,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,GAAG,EACH,QAAa,EACb,QAAe,EACf,OAAoB,EACpB,SAAS,GACV,EAAE,sBAAsB,kDAUxB;AAED,eAAe,iBAAiB,CAAC"}
@@ -1,22 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * InlineAudioPlayer
4
- *
5
- * Small inline HTML5 audio player for `<audio>` tags embedded directly in
6
- * a markdown document — e.g. a narration recording the user wants to
7
- * audition in the editor. Resolves the `src` through `MediaContext` so a
8
- * container-backed `audio/foo.webm` path returns a playable blob URL.
9
- *
10
- * Deliberately thin: native browser controls, no autoplay. The
11
- * MarkdownRenderer swaps this in for raw `<audio>` htmlElements; the
12
- * editor-react Tiptap audio node reuses it for its NodeView.
13
- */
14
- import { useMediaUrl } from './hooks/MediaContext.js';
15
- export function InlineAudioPlayer({ src, basePath = '', controls = true, preload = 'metadata', className, }) {
16
- const resolvedSrc = useMediaUrl(src, basePath);
17
- if (!resolvedSrc)
18
- return null;
19
- return (_jsx("span", { className: `squisq-inline-audio-player ${className ?? ''}`.trim(), children: _jsx("audio", { src: resolvedSrc, controls: controls, preload: preload }) }));
20
- }
21
- export default InlineAudioPlayer;
22
- //# sourceMappingURL=InlineAudioPlayer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InlineAudioPlayer.js","sourceRoot":"","sources":["../src/InlineAudioPlayer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAetD,MAAM,UAAU,iBAAiB,CAAC,EAChC,GAAG,EACH,QAAQ,GAAG,EAAE,EACb,QAAQ,GAAG,IAAI,EACf,OAAO,GAAG,UAAU,EACpB,SAAS,GACc;IACvB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,CACL,eAAM,SAAS,EAAE,8BAA8B,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,YACrE,gBAAO,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAI,GAC5D,CACR,CAAC;AACJ,CAAC;AAED,eAAe,iBAAiB,CAAC"}
@@ -1,21 +0,0 @@
1
- export interface InlineVideoPlayerProps {
2
- /** Source path — resolved through MediaContext when relative. */
3
- src: string;
4
- /** Base path used when no MediaProvider is in context. */
5
- basePath?: string;
6
- /** Optional explicit width (pixels or CSS length). */
7
- width?: number | string;
8
- /** Optional explicit height (pixels or CSS length). */
9
- height?: number | string;
10
- /** Optional poster image src — also resolved through MediaContext. */
11
- poster?: string;
12
- /** Whether to show native controls. Defaults to true. */
13
- controls?: boolean;
14
- /** `preload` attribute passthrough. Defaults to `'metadata'`. */
15
- preload?: 'none' | 'metadata' | 'auto';
16
- /** Extra className on the wrapper. */
17
- className?: string;
18
- }
19
- export declare function InlineVideoPlayer({ src, basePath, width, height, poster, controls, preload, className, }: InlineVideoPlayerProps): import("react/jsx-runtime").JSX.Element | null;
20
- export default InlineVideoPlayer;
21
- //# sourceMappingURL=InlineVideoPlayer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InlineVideoPlayer.d.ts","sourceRoot":"","sources":["../src/InlineVideoPlayer.tsx"],"names":[],"mappings":"AAiBA,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACvC,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,GAAG,EACH,QAAa,EACb,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAe,EACf,OAAoB,EACpB,SAAS,GACV,EAAE,sBAAsB,kDAsBxB;AAED,eAAe,iBAAiB,CAAC"}
@@ -1,29 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /**
3
- * InlineVideoPlayer
4
- *
5
- * Small inline HTML5 video player for `<video>` tags embedded directly in
6
- * a markdown document — e.g. a recording dropped into the doc by the
7
- * recorder. Resolves the `src` through `MediaContext` (same path
8
- * `VideoLayer` uses) so a container-backed `audio/foo.webm` or
9
- * `video/foo.mp4` resolves to a blob URL instead of 404-ing on the
10
- * filesystem path.
11
- *
12
- * Deliberately thin: native browser controls, intrinsic aspect ratio,
13
- * no autoplay. The MarkdownRenderer swaps this in for a raw `<video>`
14
- * htmlElement; the editor-react Tiptap video node uses the same
15
- * component for its NodeView.
16
- */
17
- import { useMediaUrl } from './hooks/MediaContext.js';
18
- export function InlineVideoPlayer({ src, basePath = '', width, height, poster, controls = true, preload = 'metadata', className, }) {
19
- const resolvedSrc = useMediaUrl(src, basePath);
20
- // Always call the hook (Rules of Hooks); only use the result if a poster
21
- // was actually requested. Empty input → fallback path which we discard.
22
- const resolvedPoster = useMediaUrl(poster ?? '', basePath);
23
- const posterUrl = poster ? resolvedPoster : undefined;
24
- if (!resolvedSrc)
25
- return null;
26
- return (_jsx("span", { className: `squisq-inline-video-player ${className ?? ''}`.trim(), children: _jsx("video", { src: resolvedSrc, poster: posterUrl, controls: controls, preload: preload, width: width, height: height, playsInline: true }) }));
27
- }
28
- export default InlineVideoPlayer;
29
- //# sourceMappingURL=InlineVideoPlayer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InlineVideoPlayer.js","sourceRoot":"","sources":["../src/InlineVideoPlayer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAqBtD,MAAM,UAAU,iBAAiB,CAAC,EAChC,GAAG,EACH,QAAQ,GAAG,EAAE,EACb,KAAK,EACL,MAAM,EACN,MAAM,EACN,QAAQ,GAAG,IAAI,EACf,OAAO,GAAG,UAAU,EACpB,SAAS,GACc;IACvB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC/C,yEAAyE;IACzE,wEAAwE;IACxE,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtD,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,CACL,eAAM,SAAS,EAAE,8BAA8B,SAAS,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,YACrE,gBACE,GAAG,EAAE,WAAW,EAChB,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,WAAW,SACX,GACG,CACR,CAAC;AACJ,CAAC;AAED,eAAe,iBAAiB,CAAC"}
@@ -1,73 +0,0 @@
1
- /**
2
- * LinearDocView Component
3
- *
4
- * Renders a Doc as a long-scrolling document view. Each block is displayed
5
- * as a readable section: non-annotated blocks render their markdown content
6
- * as HTML, while template-annotated blocks render as inline SVG visual cards
7
- * via BlockRenderer.
8
- *
9
- * This is the view used when `displayMode === 'linear'` in DocPlayer.
10
- *
11
- * Layout:
12
- * - Scrollable container with max-width for readability
13
- * - Headings from the block hierarchy rendered as HTML headings
14
- * - Body content rendered via MarkdownRenderer
15
- * - Template-annotated sections show an SVG card (BlockRenderer)
16
- * using `getLayers()` for on-demand layer computation
17
- * - Blocks are rendered recursively to preserve the heading hierarchy
18
- */
19
- import type { Doc } from '@bendyline/squisq/schemas';
20
- import type { ViewportConfig } from '@bendyline/squisq/schemas';
21
- import { type SurfaceScheme, type Theme } from '@bendyline/squisq/schemas';
22
- export interface LinearDocViewProps {
23
- /** The Doc to render */
24
- doc: Doc;
25
- /** Base path for resolving media URLs (images, etc.) */
26
- basePath?: string;
27
- /** Viewport config for SVG card rendering (default: landscape) */
28
- viewport?: ViewportConfig;
29
- /** Optional CSS class for the outer container */
30
- className?: string;
31
- /** Theme to use for rendering (default: DEFAULT_THEME from the theme library) */
32
- theme?: Theme;
33
- /**
34
- * Optional surface scheme (light / dark paper) overlaid on top of the
35
- * theme's colors. Orthogonal to `theme` — a theme picks editorial
36
- * identity, a surface picks the paper. Pass `'auto'` to follow the
37
- * user's OS `prefers-color-scheme`, a `SurfaceScheme` object to force a
38
- * specific surface, or omit to use the theme's built-in colors.
39
- */
40
- surface?: SurfaceScheme | 'auto';
41
- /**
42
- * Use tight padding + a wider content column. The default layout is
43
- * designed for a reading surface with breathing room (720px column,
44
- * 24×16px padding). Short conversational snippets like chat replies
45
- * benefit from a much tighter layout. Set to `true` to render with
46
- * minimal padding and no max-width cap so the content hugs its
47
- * container.
48
- */
49
- thinMargins?: boolean;
50
- /**
51
- * How images inside the doc should be sized. `'inline'` (default)
52
- * flows them at natural size up to the column width; `'thumbnail'`
53
- * constrains each image to a 100×100 box with aspect-preserving
54
- * containment — use for chat history and other dense surfaces where
55
- * full-size images would dominate the layout.
56
- */
57
- imageDisplayMode?: ImageDisplayMode;
58
- }
59
- export type ImageDisplayMode = 'inline' | 'thumbnail';
60
- /**
61
- * Renders a Doc as a long-scrolling, readable document.
62
- *
63
- * Non-annotated blocks are rendered as HTML text (headings, paragraphs,
64
- * lists, etc.) via MarkdownRenderer. Template-annotated blocks are
65
- * rendered as inline SVG visual cards via BlockRenderer.
66
- *
67
- * @example
68
- * ```tsx
69
- * <LinearDocView doc={doc} basePath="/media/" />
70
- * ```
71
- */
72
- export declare function LinearDocView({ doc, basePath, viewport, className, theme, surface, thinMargins, imageDisplayMode, }: LinearDocViewProps): import("react/jsx-runtime").JSX.Element;
73
- //# sourceMappingURL=LinearDocView.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LinearDocView.d.ts","sourceRoot":"","sources":["../src/LinearDocView.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,KAAK,EAAE,GAAG,EAAmB,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,KAAK,EACX,MAAM,2BAA2B,CAAC;AAWnC,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,GAAG,EAAE,GAAG,CAAC;IACT,wDAAwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iFAAiF;IACjF,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IACjC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,CAAC;AAoVtD;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAC5B,GAAG,EACH,QAAc,EACd,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO,EACP,WAAmB,EACnB,gBAA2B,GAC5B,EAAE,kBAAkB,2CA+LpB"}