cursedbelt 4.5.0 β†’ 4.7.0

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 (45) hide show
  1. package/dist/react/file-tree/FileTree.d.ts.map +1 -1
  2. package/dist/react/file-tree/FileTree.js +19 -1
  3. package/dist/react/file-tree/FileTree.js.map +1 -1
  4. package/dist/react/media/HoverScrubVideoThumb.d.ts +7 -1
  5. package/dist/react/media/HoverScrubVideoThumb.d.ts.map +1 -1
  6. package/dist/react/media/HoverScrubVideoThumb.js +18 -3
  7. package/dist/react/media/HoverScrubVideoThumb.js.map +1 -1
  8. package/dist/react/media/previewGate.d.ts +36 -0
  9. package/dist/react/media/previewGate.d.ts.map +1 -0
  10. package/dist/react/media/previewGate.js +161 -0
  11. package/dist/react/media/previewGate.js.map +1 -0
  12. package/dist/react/media-gallery/GalleryTable.d.ts.map +1 -1
  13. package/dist/react/media-gallery/GalleryTable.js +15 -3
  14. package/dist/react/media-gallery/GalleryTable.js.map +1 -1
  15. package/dist/react/media-gallery/MediaGallery.d.ts.map +1 -1
  16. package/dist/react/media-gallery/MediaGallery.js +3 -1
  17. package/dist/react/media-gallery/MediaGallery.js.map +1 -1
  18. package/dist/react/media-gallery/galleryItemMedia.d.ts +32 -1
  19. package/dist/react/media-gallery/galleryItemMedia.d.ts.map +1 -1
  20. package/dist/react/media-gallery/galleryItemMedia.js +64 -9
  21. package/dist/react/media-gallery/galleryItemMedia.js.map +1 -1
  22. package/dist/react/media-gallery/types.d.ts +8 -1
  23. package/dist/react/media-gallery/types.d.ts.map +1 -1
  24. package/dist/styles-areas/file-tree.css +1 -1
  25. package/dist/styles-areas/media-gallery.css +1 -1
  26. package/dist/styles-areas/media.css +1 -1
  27. package/package.json +3 -1
  28. package/src/declaredImports.spec.ts +66 -0
  29. package/src/publicSurface.spec.ts +12 -4
  30. package/src/react/file-tree/FileTree.tsx +19 -1
  31. package/src/react/file-tree/fileTreeThumbs.spec.tsx +90 -0
  32. package/src/react/media/HoverScrubVideoThumb.spec.tsx +4 -3
  33. package/src/react/media/HoverScrubVideoThumb.tsx +25 -3
  34. package/src/react/media/previewGate.spec.tsx +144 -0
  35. package/src/react/media/previewGate.ts +160 -0
  36. package/src/react/media-gallery/GalleryTable.tsx +14 -1
  37. package/src/react/media-gallery/MediaGallery.spec.tsx +52 -3
  38. package/src/react/media-gallery/MediaGallery.tsx +9 -1
  39. package/src/react/media-gallery/galleryItemMedia.spec.tsx +143 -0
  40. package/src/react/media-gallery/galleryItemMedia.tsx +80 -9
  41. package/src/react/media-gallery/types.ts +8 -1
  42. package/src/styles-areas/file-tree.css +1 -1
  43. package/src/styles-areas/media-gallery.css +1 -1
  44. package/src/styles-areas/media.css +1 -1
  45. package/scripts/publicSurface.ts +0 -458
@@ -1 +1 @@
1
- {"version":3,"file":"FileTree.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileTree.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { accessMarkCopy, describeDrop, filterFileTree, findFileTreeNode, flatten
5
5
  import { Input } from '../components/Input.js';
6
6
  import { Tooltip } from '../components/Tooltip.js';
7
7
  import { draggedIdsOf, nodesByIds, planWrap, refuseCopy, refuseWrap, resolveMultiDrop, selectionRange, toggleSelected, topmostSelected, } from './fileTreeSelection.js';
8
+ import { useInView } from '../media/previewGate.js';
8
9
  import './fileTree.css';
9
10
  /** How far a press travels before it stops being a click and becomes a drag. */
10
11
  const DRAG_THRESHOLD = 4;
@@ -59,14 +60,31 @@ function DefaultIcon({ node, open }) {
59
60
  *
60
61
  * `loading='lazy'` and `decoding='async'` because the consumer hands over a URL per row and a
61
62
  * 2,000-row tree must not open 2,000 connections to draw the twelve rows on screen.
63
+ *
64
+ * πŸ”΄ …and `src` is withheld until the row has actually been ON SCREEN, because `lazy` alone
65
+ * does not bound it. A browser's lazy threshold is thousands of pixels past the viewport, and
66
+ * rows are ~24 px: measured 2026-09-22 in `apps/collections`' browser check, a 240-row folder
67
+ * in the rail had **174** thumbnail loads open at once under `loading='lazy'` β€” the whole of
68
+ * the owner's "I could not close the dev tools" peak, from sixteen-pixel pictures. `useInView`
69
+ * reports true only while the row is visible inside its scrolling ancestors; the first time it
70
+ * does, the picture is latched and the row stops being observed. The `<img>` itself stays in
71
+ * place meanwhile, so the row keeps its one glyph box β€” an off-screen row is blank, which
72
+ * nobody is looking at. No reporting observer (jsdom, happy-dom) means visible at once.
62
73
  */
63
74
  function RowGlyph({ node, open, renderIcon, }) {
64
75
  const [failed, setFailed] = useState(null);
65
76
  const icon = renderIcon ? renderIcon(node) : _jsx(DefaultIcon, { node: node, open: open });
66
77
  const src = node.thumbnailUrl;
78
+ const ref = useRef(null);
79
+ const [seen, setSeen] = useState(false);
80
+ const inView = useInView(ref, Boolean(src) && failed !== src && !seen);
81
+ useEffect(() => {
82
+ if (inView)
83
+ setSeen(true);
84
+ }, [inView]);
67
85
  if (!src || failed === src)
68
86
  return icon;
69
- return (_jsx("img", { className: 'cbft-thumb', src: src, alt: '', "aria-hidden": 'true', loading: 'lazy', decoding: 'async', draggable: false, onError: () => setFailed(src) }, src));
87
+ return (_jsx("img", { ref: ref, className: 'cbft-thumb', src: seen || inView ? src : undefined, alt: '', "aria-hidden": 'true', loading: 'lazy', decoding: 'async', draggable: false, onError: () => setFailed(src) }, src));
70
88
  }
71
89
  export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelectionChange, onOpen, collapsed: collapsedProp, onCollapsedChange, expandOnReveal = false, onRevealExpand, pinnedIds, onPinnedChange, pinnedLabel = 'Pinned', onMove, onMoveMany, allowReorder = false, lockedReason, canDrop, unavailableReason, renamingId, onRenameStart, onRename, onRenameCancel, onDelete, onDeleteMany, onCopy, canCopy, draft, onDraftCommit, onDraftCancel, onWrapStart, canWrap, onRowMenu, renderTools, renderIcon, renderAccessory, onDropExternal, acceptsExternalDrag, accessCopy, filter, empty = 'Nothing here yet.', ariaLabel = 'Files', className, }) {
72
90
  const scrollRef = useRef(null);
@@ -1 +1 @@
1
- {"version":3,"file":"FileTree.js","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileTree.js","sourceRoot":"","sources":["../../../src/react/file-tree/FileTree.tsx"],"names":[],"mappings":"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"}
@@ -44,7 +44,13 @@ export interface HoverScrubVideoThumbProps {
44
44
  * - `loop`: plays from the start, muted, looping.
45
45
  */
46
46
  previewMode?: 'scrub' | 'loop';
47
- /** Preview continuously without hover β€” the watch page's silent side tiles. */
47
+ /**
48
+ * Preview continuously without hover β€” the watch page's silent side tiles.
49
+ *
50
+ * πŸ”΄ Gated: the preview starts only once the tile is ON SCREEN and has stayed there for
51
+ * `PREVIEW_SETTLE_MS` (`previewGate.ts`), so a grid scrolled past fast never opens a stream
52
+ * per row. Without an `IntersectionObserver` the tile counts as visible.
53
+ */
48
54
  autoPlay?: boolean;
49
55
  /** Small overlay chips (top-left slot) β€” e.g. a quality badge. */
50
56
  badge?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"HoverScrubVideoThumb.d.ts","sourceRoot":"","sources":["../../../src/react/media/HoverScrubVideoThumb.tsx"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,SAAS,EAA+B,MAAM,OAAO,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAI3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AA2BzD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAC9B,GAAG,EAAE;IAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAAE,EACzC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GACpF,IAAI,CAmBN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAWrC;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC/B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kEAAkE;IAClE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AAEH,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,MAAM,EACN,WAAqB,EACrB,QAAgB,EAChB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,yBAAyB,+BA0L3B"}
1
+ {"version":3,"file":"HoverScrubVideoThumb.d.ts","sourceRoot":"","sources":["../../../src/react/media/HoverScrubVideoThumb.tsx"],"names":[],"mappings":"AACA,OAAO,EAAsB,KAAK,SAAS,EAA+B,MAAM,OAAO,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAK3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AA2BzD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAC9B,GAAG,EAAE;IAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAAE,EACzC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GACpF,IAAI,CAmBN;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAWrC;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kEAAkE;IAClE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AAEH,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,MAAM,EACN,WAAqB,EACrB,QAAgB,EAChB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAS,GACV,EAAE,yBAAyB,+BAyM3B"}
@@ -4,6 +4,7 @@ import { useEffect, useRef, useState } from 'react';
4
4
  import { formatTimecode } from 'cursedbelt-core/media';
5
5
  import { cn } from '../lib/cn.js';
6
6
  import { NO_EDIT, previewTransform, swapsAxes } from './pictureEdit.js';
7
+ import { releaseVideo, useInView, useSettled } from './previewGate.js';
7
8
  /**
8
9
  * The stored turn, as an inline transform for the tile's poster and preview.
9
10
  *
@@ -107,7 +108,11 @@ export function HoverScrubVideoThumb({ video, onOpen, previewMode = 'scrub', aut
107
108
  // On touch devices ignore `autoPlay` β€” an unrequested video playing under the
108
109
  // finger reads as a bug (and iOS shows a stack of them below the watch player).
109
110
  // Touch-and-hold still triggers `hovering` β†’ a preview on demand.
110
- const previewing = (autoPlay && canHover) || hovering;
111
+ const boxRef = useRef(null);
112
+ const wantsAuto = autoPlay && canHover;
113
+ // A hover is not gated: the pointer on the tile IS the intent the settle exists to infer.
114
+ const autoReady = useSettled(useInView(boxRef, wantsAuto));
115
+ const previewing = autoReady || hovering;
111
116
  const holdTimer = useRef(null);
112
117
  const videoRef = useRef(null);
113
118
  const startHold = () => {
@@ -123,8 +128,15 @@ export function HoverScrubVideoThumb({ video, onOpen, previewMode = 'scrub', aut
123
128
  active: previewing && previewMode === 'scrub',
124
129
  durationSeconds: video.durationSeconds,
125
130
  });
131
+ // A preview that stops closes its connection β€” an unmounted `<video>` keeps buffering.
132
+ useEffect(() => {
133
+ if (!previewing)
134
+ return;
135
+ const el = videoRef.current;
136
+ return () => releaseVideo(el);
137
+ }, [previewing]);
126
138
  const turned = turnStyle(orientation);
127
- const media = (_jsxs("div", { className: 'relative aspect-video w-full overflow-hidden bg-muted', children: [video.posterUrl && !posterFailed ? (_jsx("img", { src: video.posterUrl, alt: video.name, loading: 'lazy',
139
+ const media = (_jsxs("div", { ref: boxRef, className: 'relative aspect-video w-full overflow-hidden bg-muted', children: [video.posterUrl && !posterFailed ? (_jsx("img", { src: video.posterUrl, alt: video.name, loading: 'lazy', decoding: 'async',
128
140
  /*
129
141
  * πŸ”΄ A poster URL that 404s falls back to the Play mark, and this is
130
142
  * REQUIRED rather than defensive.
@@ -153,7 +165,10 @@ export function HoverScrubVideoThumb({ video, onOpen, previewMode = 'scrub', aut
153
165
  // same gesture, and on a video tile β€” where the hover preview puts a PLAYING
154
166
  // <video> on top of the poster β€” the element under the pointer is the one least
155
167
  // likely to yield. Same reason MediaCell sets this.
156
- draggable: false, className: 'absolute inset-0 h-full w-full object-cover', ...(turned ? { style: turned } : {}) })) : (_jsx("div", { className: 'absolute inset-0 flex items-center justify-center text-muted-foreground', children: _jsx(Play, { "aria-hidden": true, className: 'size-6' }) })), !previewing && !posterFailed && video.posterUrl ? (_jsx("span", { className: 'pointer-events-none absolute inset-0 flex items-center justify-center', children: _jsx("span", { className: 'flex size-9 items-center justify-center rounded-full bg-black/55 text-white shadow-sm backdrop-blur-[2px]', children: _jsx(Play, { "aria-hidden": true, className: 'size-4 translate-x-[1px]' }) }) })) : null, previewing ? (_jsx("video", { ref: videoRef, src: video.streamUrl, muted: true, loop: true, autoPlay: true, playsInline: true,
168
+ draggable: false, className: 'absolute inset-0 h-full w-full object-cover', ...(turned ? { style: turned } : {}) })) : (_jsx("div", { className: 'absolute inset-0 flex items-center justify-center text-muted-foreground', children: _jsx(Play, { "aria-hidden": true, className: 'size-6' }) })), !previewing && !posterFailed && video.posterUrl ? (_jsx("span", { className: 'pointer-events-none absolute inset-0 flex items-center justify-center', children: _jsx("span", { className: 'flex size-9 items-center justify-center rounded-full bg-black/55 text-white shadow-sm backdrop-blur-[2px]', children: _jsx(Play, { "aria-hidden": true, className: 'size-4 translate-x-[1px]' }) }) })) : null, previewing ? (_jsx("video", { ref: videoRef, src: video.streamUrl,
169
+ // Only mounted once previewing (settled or hovered), so metadata is the most it may
170
+ // fetch before it plays β€” never the whole-file `auto` a browser may default to.
171
+ preload: 'metadata', muted: true, loop: true, autoPlay: true, playsInline: true,
157
172
  // See the poster's note β€” and it matters more here, because this element only
158
173
  // exists while the pointer is over the tile, which is exactly when a drag starts.
159
174
  draggable: false, className: 'absolute inset-0 h-full w-full object-cover', ...(turned ? { style: turned } : {}) })) : null, badge ? _jsx("span", { className: 'absolute top-1 left-1', children: badge }) : null, video.durationSeconds ? (_jsx("span", { className: 'absolute top-1 right-1 rounded bg-black/85 px-1.5 py-0.5 text-caption tabular-nums text-white backdrop-blur-sm', children: formatTimecode(video.durationSeconds) })) : null, video.processingStatus === 'pending' || video.processingStatus === 'processing' ? (_jsx("span", { className: 'absolute bottom-1 left-1 rounded bg-background/80 px-1 text-caption text-muted-foreground', children: "optimizing\u2026" })) : null] }));
@@ -1 +1 @@
1
- {"version":3,"file":"HoverScrubVideoThumb.js","sourceRoot":"","sources":["../../../src/react/media/HoverScrubVideoThumb.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HoverScrubVideoThumb.js","sourceRoot":"","sources":["../../../src/react/media/HoverScrubVideoThumb.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * How long a tile must stay on screen before an automatic preview starts. Long enough that a
3
+ * wheel flick past a row is well under it (a row crosses the viewport in tens of ms at scroll
4
+ * speed), short enough that a grid the viewer stopped on starts moving without a visible wait.
5
+ */
6
+ export declare const PREVIEW_SETTLE_MS = 200;
7
+ /**
8
+ * True while the element intersects the viewport (clipped by its scrolling ancestors, which
9
+ * is what an `IntersectionObserver` with no root measures).
10
+ *
11
+ * πŸ”΄ **No `IntersectionObserver` means VISIBLE**, not hidden. jsdom and old browsers have none,
12
+ * happy-dom has one that never reports (see {@link reportingObserver}), and a gallery whose previews silently never start there is a worse failure than
13
+ * one that loads eagerly β€” the eager load is the behavior every one of them had before this.
14
+ *
15
+ * `enabled: false` observes nothing and reports false, so a gallery that never asked for
16
+ * automatic previews registers no element at all.
17
+ */
18
+ export declare function useInView(ref: {
19
+ current: Element | null;
20
+ }, enabled: boolean): boolean;
21
+ /**
22
+ * `value`, but it only turns TRUE after holding true for `ms` β€” and turns false at once.
23
+ *
24
+ * The asymmetry is the point: starting a load is what costs, stopping one is what saves, so a
25
+ * flicker of `true` (a tile crossing the viewport during a scroll) never reaches the load and
26
+ * a `false` is never delayed.
27
+ */
28
+ export declare function useSettled(value: boolean, ms?: number): boolean;
29
+ /**
30
+ * Close a `<video>`'s connection. Removing the element from the DOM does not β€” it keeps
31
+ * buffering until it is collected β€” so emptying `src` and calling `load()` is the documented
32
+ * way to make the browser drop the request (WHATWG media "emptied" / load algorithm).
33
+ * Tolerates a missing element and a `load` the environment does not implement.
34
+ */
35
+ export declare function releaseVideo(el: HTMLVideoElement | null): void;
36
+ //# sourceMappingURL=previewGate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"previewGate.d.ts","sourceRoot":"","sources":["../../../src/react/media/previewGate.ts"],"names":[],"mappings":"AAwBA;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAiDrC;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE;IAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;CAAE,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAiCrF;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,GAAE,MAA0B,GAAG,OAAO,CAWlF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAS9D"}
@@ -0,0 +1,161 @@
1
+ /**
2
+ * When a tile is allowed to start a VIDEO load β€” the gallery's ceiling on byte loads.
3
+ *
4
+ * ── πŸ”΄ Why this exists, from `collections`' 2026-09-22 measurement ──────────────────────
5
+ * One wheel-scroll top to bottom of a 240-row gallery had **176 same-origin requests open at
6
+ * once** (`apps/collections/e2e/mintCeiling.browser.test.ts`), and none of them were `fetch`
7
+ * calls an app-side gate could see: they were the tiles' own `<img>` and `<video>` loads. The
8
+ * `<img>` half is `loading='lazy'` + `decoding='async'` on every tile picture; this file is the
9
+ * `<video>` half. With "Preview all" on, every tile the virtualizer mounted β€” the visible rows
10
+ * AND its overscan β€” attached an autoplaying `<video>` the moment it rendered, so a fast
11
+ * scroll opened a stream per row it passed and then abandoned it.
12
+ *
13
+ * So an automatic preview now waits for two things: the tile is actually on screen
14
+ * ({@link useInView}), and it has STAYED there for {@link PREVIEW_SETTLE_MS}
15
+ * ({@link useSettled}). A tile scrolled past faster than that never starts its load at all,
16
+ * and one that leaves before settling cancels the pending start. A deliberate hover is not
17
+ * gated β€” the pointer being on the tile is the intent the settle exists to infer.
18
+ *
19
+ * {@link releaseVideo} is the other end: a `<video>` React removes keeps downloading until it
20
+ * is garbage-collected, so a tile that stops previewing empties the element's source, which is
21
+ * what actually closes the connection.
22
+ */
23
+ import { useEffect, useState } from 'react';
24
+ /**
25
+ * How long a tile must stay on screen before an automatic preview starts. Long enough that a
26
+ * wheel flick past a row is well under it (a row crosses the viewport in tens of ms at scroll
27
+ * speed), short enough that a grid the viewer stopped on starts moving without a visible wait.
28
+ */
29
+ export const PREVIEW_SETTLE_MS = 200;
30
+ /**
31
+ * ONE observer for every tile, not one per tile β€” a 400-row gallery is 400 elements and a
32
+ * single `IntersectionObserver` handles that in one callback per frame.
33
+ *
34
+ * Keyed by the constructor it was built with so a replaced global (a spec installing its own
35
+ * fake, a polyfill arriving late) is picked up instead of observing through a stale one.
36
+ */
37
+ let shared = null;
38
+ const listeners = new Map();
39
+ /**
40
+ * The environment's `IntersectionObserver`, but only one that can actually REPORT.
41
+ *
42
+ * πŸ”΄ happy-dom 20 ships an inert stub β€” `observe()` is an empty method and the callback is
43
+ * never called β€” so "is it defined" is the wrong test: every tile would wait for a
44
+ * notification that cannot arrive and no preview would ever start, in this repo's specs and in
45
+ * every consumer's. The real interface carries `thresholds` as a readonly attribute on its
46
+ * PROTOTYPE (every engine since 2019); the stub does not. An observer without it is treated as
47
+ * absent, which degrades to the eager behavior every gallery had before this gate.
48
+ */
49
+ function reportingObserver() {
50
+ const ctor = globalThis
51
+ .IntersectionObserver;
52
+ if (typeof ctor !== 'function')
53
+ return null;
54
+ return 'thresholds' in ctor.prototype ? ctor : null;
55
+ }
56
+ function sharedObserver() {
57
+ const ctor = reportingObserver();
58
+ if (!ctor)
59
+ return null;
60
+ if (shared?.ctor === ctor)
61
+ return shared.observer;
62
+ shared?.observer.disconnect();
63
+ const observer = new ctor((entries) => {
64
+ for (const entry of entries) {
65
+ const set = listeners.get(entry.target);
66
+ if (!set)
67
+ continue;
68
+ for (const listener of set)
69
+ listener(entry.isIntersecting);
70
+ }
71
+ });
72
+ shared = { ctor, observer };
73
+ // Anything already registered moves to the new observer rather than going deaf.
74
+ for (const el of listeners.keys())
75
+ observer.observe(el);
76
+ return observer;
77
+ }
78
+ /**
79
+ * True while the element intersects the viewport (clipped by its scrolling ancestors, which
80
+ * is what an `IntersectionObserver` with no root measures).
81
+ *
82
+ * πŸ”΄ **No `IntersectionObserver` means VISIBLE**, not hidden. jsdom and old browsers have none,
83
+ * happy-dom has one that never reports (see {@link reportingObserver}), and a gallery whose previews silently never start there is a worse failure than
84
+ * one that loads eagerly β€” the eager load is the behavior every one of them had before this.
85
+ *
86
+ * `enabled: false` observes nothing and reports false, so a gallery that never asked for
87
+ * automatic previews registers no element at all.
88
+ */
89
+ export function useInView(ref, enabled) {
90
+ const [inView, setInView] = useState(false);
91
+ useEffect(() => {
92
+ if (!enabled) {
93
+ setInView(false);
94
+ return;
95
+ }
96
+ const el = ref.current;
97
+ const observer = sharedObserver();
98
+ if (!el || !observer) {
99
+ setInView(true);
100
+ return;
101
+ }
102
+ const listener = (next) => setInView(next);
103
+ let set = listeners.get(el);
104
+ if (!set) {
105
+ set = new Set();
106
+ listeners.set(el, set);
107
+ observer.observe(el);
108
+ }
109
+ set.add(listener);
110
+ return () => {
111
+ const current = listeners.get(el);
112
+ if (!current)
113
+ return;
114
+ current.delete(listener);
115
+ if (current.size === 0) {
116
+ listeners.delete(el);
117
+ shared?.observer.unobserve(el);
118
+ }
119
+ };
120
+ // `ref` is a ref object and is stable by construction.
121
+ }, [enabled, ref]);
122
+ return enabled && inView;
123
+ }
124
+ /**
125
+ * `value`, but it only turns TRUE after holding true for `ms` β€” and turns false at once.
126
+ *
127
+ * The asymmetry is the point: starting a load is what costs, stopping one is what saves, so a
128
+ * flicker of `true` (a tile crossing the viewport during a scroll) never reaches the load and
129
+ * a `false` is never delayed.
130
+ */
131
+ export function useSettled(value, ms = PREVIEW_SETTLE_MS) {
132
+ const [settled, setSettled] = useState(false);
133
+ useEffect(() => {
134
+ if (!value) {
135
+ setSettled(false);
136
+ return;
137
+ }
138
+ const timer = setTimeout(() => setSettled(true), ms);
139
+ return () => clearTimeout(timer);
140
+ }, [value, ms]);
141
+ return value && settled;
142
+ }
143
+ /**
144
+ * Close a `<video>`'s connection. Removing the element from the DOM does not β€” it keeps
145
+ * buffering until it is collected β€” so emptying `src` and calling `load()` is the documented
146
+ * way to make the browser drop the request (WHATWG media "emptied" / load algorithm).
147
+ * Tolerates a missing element and a `load` the environment does not implement.
148
+ */
149
+ export function releaseVideo(el) {
150
+ if (!el)
151
+ return;
152
+ try {
153
+ el.pause?.();
154
+ el.removeAttribute('src');
155
+ el.load?.();
156
+ }
157
+ catch {
158
+ // A DOM without media support has no connection to close.
159
+ }
160
+ }
161
+ //# sourceMappingURL=previewGate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"previewGate.js","sourceRoot":"","sources":["../../../src/react/media/previewGate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GalleryTable.d.ts","sourceRoot":"","sources":["../../../src/react/media-gallery/GalleryTable.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,KAAK,SAAS,EAA4C,MAAM,OAAO,CAAC;AAIjF,OAAO,EAAgB,KAAK,UAAU,EAA0B,MAAM,uBAAuB,CAAC;AAE9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,KAAK,CAAC;AA4C3C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGxE;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAQxE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,SAAS,SAA2B,GACnC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAQhC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,iBAAiB,CAAC;IACzB,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,MAAM,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAC;IAClG,yFAAyF;IACzF,IAAI,CAAC,EAAE,CACL,IAAI,EAAE,gBAAgB,KACnB;QAAE,WAAW,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;IAClG;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,KAAK,EACL,KAAK,EACL,aAAa,EACb,MAAM,EACN,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAS,EACT,IAAI,EACJ,WAAW,EACX,OAAO,EACP,UAAkB,GACnB,EAAE,iBAAiB,+BA+HnB"}
1
+ {"version":3,"file":"GalleryTable.d.ts","sourceRoot":"","sources":["../../../src/react/media-gallery/GalleryTable.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,KAAK,SAAS,EAA4C,MAAM,OAAO,CAAC;AAKjF,OAAO,EAAgB,KAAK,UAAU,EAA0B,MAAM,uBAAuB,CAAC;AAE9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEtE;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,KAAK,CAAC;AA4C3C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGxE;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAQxE;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,SAAS,SAA2B,GACnC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAQhC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,iBAAiB,CAAC;IACzB,aAAa,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAClD,MAAM,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAC;IAClG,yFAAyF;IACzF,IAAI,CAAC,EAAE,CACL,IAAI,EAAE,gBAAgB,KACnB;QAAE,WAAW,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,SAAS,CAAC;IAClG;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,KAAK,EACL,KAAK,EACL,aAAa,EACb,MAAM,EACN,SAAS,EACT,OAAO,EACP,KAAK,EACL,SAAS,EACT,IAAI,EACJ,WAAW,EACX,OAAO,EACP,UAAkB,GACnB,EAAE,iBAAiB,+BA+HnB"}