cursedbelt 5.30.0 → 5.32.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 (40) hide show
  1. package/dist/react/components/ConfirmDialog.d.ts +4 -1
  2. package/dist/react/components/ConfirmDialog.d.ts.map +1 -1
  3. package/dist/react/components/ConfirmDialog.js +2 -2
  4. package/dist/react/components/ConfirmDialog.js.map +1 -1
  5. package/dist/react/components/DataTable/DataTable.d.ts.map +1 -1
  6. package/dist/react/components/DataTable/DataTable.js +5 -1
  7. package/dist/react/components/DataTable/DataTable.js.map +1 -1
  8. package/dist/react/components/PromptDialog.d.ts +4 -1
  9. package/dist/react/components/PromptDialog.d.ts.map +1 -1
  10. package/dist/react/components/PromptDialog.js +2 -2
  11. package/dist/react/components/PromptDialog.js.map +1 -1
  12. package/dist/react/file-tree/FileTree.d.ts +26 -1
  13. package/dist/react/file-tree/FileTree.d.ts.map +1 -1
  14. package/dist/react/file-tree/FileTree.js +182 -40
  15. package/dist/react/file-tree/FileTree.js.map +1 -1
  16. package/dist/scripts/guardrailsEnforce.d.ts +11 -0
  17. package/dist/scripts/guardrailsEnforce.d.ts.map +1 -1
  18. package/dist/testing/index.d.ts +3 -0
  19. package/dist/testing/index.d.ts.map +1 -0
  20. package/dist/testing/index.js +4 -0
  21. package/dist/testing/index.js.map +1 -0
  22. package/dist/testing/objectLeak.d.ts +23 -0
  23. package/dist/testing/objectLeak.d.ts.map +1 -0
  24. package/dist/testing/objectLeak.js +37 -0
  25. package/dist/testing/objectLeak.js.map +1 -0
  26. package/package.json +5 -5
  27. package/scripts/guardrails-baseline.json +4 -1
  28. package/scripts/guardrailsEnforce.spec.ts +163 -6
  29. package/scripts/guardrailsEnforce.ts +365 -40
  30. package/scripts/paths.ts +1 -1
  31. package/src/react/components/ConfirmDialog.tsx +5 -0
  32. package/src/react/components/DataTable/DataTable.spec.tsx +16 -0
  33. package/src/react/components/DataTable/DataTable.tsx +5 -1
  34. package/src/react/components/PromptDialog.spec.tsx +29 -1
  35. package/src/react/components/PromptDialog.tsx +5 -0
  36. package/src/react/file-tree/FileTree.spec.tsx +205 -0
  37. package/src/react/file-tree/FileTree.tsx +220 -38
  38. package/src/testing/index.ts +3 -0
  39. package/src/testing/objectLeak.spec.ts +21 -0
  40. package/src/testing/objectLeak.ts +39 -0
@@ -24,6 +24,10 @@ const SPRING_OPEN_MS = 600;
24
24
  /** How long a typeahead word survives a pause. One second is what every file explorer uses. */
25
25
  const TYPEAHEAD_RESET_MS = 1000;
26
26
  const NO_OFFER = { target: null, refused: false, reason: null };
27
+ /** The chip outside the tree when the consumer did not say what is there — see `onDropOutside`. */
28
+ const OUTSIDE_WORDS = 'Drop to add it here';
29
+ /** The chip over a place outside the tree that `describeDropOutside` said takes nothing. */
30
+ const OUTSIDE_REFUSED = 'Nothing here takes it';
27
31
  /**
28
32
  * What {@link FileTree}'s `externalOverId` holds while an EXTERNAL drag is over the blank
29
33
  * space below the rows — the root. `null` already means "over nothing", and the two must
@@ -92,8 +96,10 @@ function RowGlyph({ node, open, renderIcon, transform, }) {
92
96
  return icon;
93
97
  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), ...(transform ? { style: { transform } } : {}) }, src));
94
98
  }
95
- 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, takesDrop, unavailableReason, renamingId, onRenameStart, onRename, onRenameCancel, onDelete, onDeleteMany, onCopy, canCopy, draft, onDraftCommit, onDraftCancel, draftPlaceholder, onWrapStart, canWrap, onRowMenu, renderTools, renderIcon, thumbnailTransform, renderAccessory, onDropExternal, acceptsExternalDrag, accessCopy, nameTooltips = true, markPath = true, filter, empty = 'Nothing here yet.', ariaLabel = 'Files', className, scroll = 'own', }) {
99
+ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelectionChange, onOpen, collapsed: collapsedProp, onCollapsedChange, expandOnReveal = false, onRevealExpand, pinnedIds, onPinnedChange, pinnedLabel = 'Pinned', onMove, onMoveMany, onDropOutside, describeDropOutside, allowReorder = false, lockedReason, canDrop, takesDrop, unavailableReason, renamingId, onRenameStart, onRename, onRenameCancel, onDelete, onDeleteMany, onCopy, canCopy, draft, onDraftCommit, onDraftCancel, draftPlaceholder, onWrapStart, canWrap, onRowMenu, renderTools, renderIcon, thumbnailTransform, renderAccessory, onDropExternal, acceptsExternalDrag, accessCopy, nameTooltips = true, markPath = true, filter, empty = 'Nothing here yet.', ariaLabel = 'Files', className, scroll = 'own', }) {
96
100
  const scrollRef = useRef(null);
101
+ /** The whole tree, pinned section included — "outside" for `onDropOutside` is outside this. */
102
+ const rootRef = useRef(null);
97
103
  const rowRefs = useRef(new Map());
98
104
  /**
99
105
  * The PINNED copies' elements, in a map of their own.
@@ -217,6 +223,30 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
217
223
  * *"copying in another folder or the same folder"* needs.
218
224
  */
219
225
  const [clipboard, setClipboard] = useState(null);
226
+ /**
227
+ * The text ⌘X/⌘C also put on the SYSTEM clipboard (the rows' names, one per line), once the
228
+ * write has landed — `null` while nothing of the tree's is known to be there.
229
+ *
230
+ * 🔴 Finder has one clipboard, so the newest copy always wins; this tree's own clipboard is
231
+ * a second one, and without this a row copied an hour ago beat a screenshot copied a moment
232
+ * ago (task 2371: ⌘C a row, ⌘⇧4 + ⌘C a picture, ⌘V → the row was pasted and the picture
233
+ * never arrived). With the names mirrored, the `paste` event can tell which is newer: its
234
+ * text still equal to this means the rows are the last thing copied; anything else — files,
235
+ * other text — means the person copied something since, and the rows are put down.
236
+ *
237
+ * Where the mirror cannot be written (no `navigator.clipboard`, an insecure origin, a
238
+ * refused permission) there is nothing to compare against, and ⌘V pastes the rows on the
239
+ * keydown exactly as it did before.
240
+ */
241
+ const mirrored = useRef(null);
242
+ /** Bumped by every ⌘X/⌘C, so a slow write for an older copy cannot claim the mirror. */
243
+ const mirrorSeq = useRef(0);
244
+ /** The row a ⌘V keydown aimed at, waiting for the `paste` event to say whose it is. */
245
+ const pendingPaste = useRef(null);
246
+ useEffect(() => {
247
+ if (!clipboard)
248
+ mirrored.current = null;
249
+ }, [clipboard]);
220
250
  const shown = useMemo(() => (filter ? filterFileTree(nodes, filter) : nodes), [nodes, filter]);
221
251
  /*
222
252
  * A search shows everything it kept — a match hidden inside a collapsed folder is a match
@@ -260,6 +290,19 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
260
290
  const selection = useMemo(() => selectedIds ?? (selectedId === null ? [] : [selectedId]), [selectedIds, selectedId]);
261
291
  const selected = useMemo(() => new Set(selection), [selection]);
262
292
  const cut = useMemo(() => (clipboard?.mode === 'cut' ? new Set(clipboard.ids) : null), [clipboard]);
293
+ /** Put the held rows' names on the system clipboard too — see `mirrored`. */
294
+ const mirror = useCallback((ids) => {
295
+ const seq = ++mirrorSeq.current;
296
+ mirrored.current = null;
297
+ const text = ids.map((id) => nameOf(shown, id)).join('\n');
298
+ const write = globalThis.navigator?.clipboard?.writeText?.bind(globalThis.navigator.clipboard);
299
+ if (!write)
300
+ return;
301
+ write(text).then(() => {
302
+ if (mirrorSeq.current === seq)
303
+ mirrored.current = text;
304
+ }, () => { });
305
+ }, [shown]);
263
306
  /**
264
307
  * Which rows a gesture aimed at `node` should act on: the selection when `node` is part of
265
308
  * one and the consumer wired the plural verb, and `node` alone otherwise.
@@ -586,7 +629,16 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
586
629
  // way, and Escape landing you on a different row would be its own surprise.
587
630
  if (state?.active)
588
631
  draggedJustNow.current = true;
589
- if (commit && state?.active && state.offer.target && canRearrange) {
632
+ if (commit && state?.active && state.outside) {
633
+ if (!state.offer.refused)
634
+ onDropOutside?.(state.ids, { clientX: state.x, clientY: state.y });
635
+ // Folders sprung open on the way out stay open behind a drop that landed elsewhere —
636
+ // but one that went nowhere puts them back, like any drag that went nowhere.
637
+ if (state.offer.refused && sprung.current.length > 0)
638
+ shutFolders(sprung.current);
639
+ sprung.current = [];
640
+ }
641
+ else if (commit && state?.active && state.offer.target && canRearrange) {
590
642
  commitMove(state.ids, state.offer.target);
591
643
  sprung.current = [];
592
644
  }
@@ -598,11 +650,11 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
598
650
  shutFolders(back);
599
651
  }
600
652
  setDrag(null);
601
- }, [canRearrange, commitMove, shutFolders, stopAutoScroll, stopSpring]);
653
+ }, [canRearrange, commitMove, onDropOutside, shutFolders, stopAutoScroll, stopSpring]);
602
654
  const beginDrag = useCallback((event, node) => {
603
655
  // A row the consumer marked undraggable never starts a gesture — see
604
656
  // `FileTreeNode.draggable`. A drag that refuses everywhere reads as a broken tree.
605
- if (!canRearrange || event.button !== 0 || node.draggable === false)
657
+ if (!(canRearrange || onDropOutside) || event.button !== 0 || node.draggable === false)
606
658
  return;
607
659
  /*
608
660
  * Press a row that is part of a selection and the whole selection comes with you —
@@ -633,6 +685,7 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
633
685
  y: startY,
634
686
  active: false,
635
687
  offer: NO_OFFER,
688
+ outside: false,
636
689
  };
637
690
  const target = event.currentTarget;
638
691
  target.setPointerCapture?.(event.pointerId);
@@ -640,6 +693,26 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
640
693
  const travelled = Math.abs(moveEvent.clientX - startX) + Math.abs(moveEvent.clientY - startY);
641
694
  if (!state.active && travelled < DRAG_THRESHOLD)
642
695
  return;
696
+ const point = { clientX: moveEvent.clientX, clientY: moveEvent.clientY };
697
+ const bounds = rootRef.current?.getBoundingClientRect();
698
+ const outside = Boolean(onDropOutside &&
699
+ bounds &&
700
+ (point.clientX < bounds.left ||
701
+ point.clientX > bounds.right ||
702
+ point.clientY < bounds.top ||
703
+ point.clientY > bounds.bottom));
704
+ if (outside) {
705
+ // Nothing in the tree is under the pointer, so no spring, no autoscroll, no row lit.
706
+ stopSpring();
707
+ stopAutoScroll();
708
+ const words = describeDropOutside ? describeDropOutside(point) : OUTSIDE_WORDS;
709
+ const offer = words === null
710
+ ? { target: null, refused: true, reason: OUTSIDE_REFUSED }
711
+ : { target: null, refused: false, reason: words };
712
+ state = { ...state, x: point.clientX, y: point.clientY, active: true, offer, outside };
713
+ setDrag(state);
714
+ return;
715
+ }
643
716
  const hit = rowAt(moveEvent.clientX, moveEvent.clientY);
644
717
  // One row or twenty, the same call: `resolveMultiDrop` is `resolveDrop` asked once
645
718
  // per carried row, and the strictest answer wins. See its header for why a single
@@ -693,7 +766,16 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
693
766
  }, 16),
694
767
  };
695
768
  }
696
- state = { ...state, x: moveEvent.clientX, y: moveEvent.clientY, active: true, offer };
769
+ state = {
770
+ ...state,
771
+ x: moveEvent.clientX,
772
+ y: moveEvent.clientY,
773
+ active: true,
774
+ // A tree that cannot be rearranged still carries rows OUT — see `onDropOutside` —
775
+ // but nothing inside it is somewhere they can land.
776
+ offer: canRearrange ? offer : NO_OFFER,
777
+ outside: false,
778
+ };
697
779
  setDrag(state);
698
780
  };
699
781
  const finish = (commit) => () => {
@@ -735,8 +817,10 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
735
817
  takesDrop,
736
818
  canRearrange,
737
819
  collapsed,
820
+ describeDropOutside,
738
821
  endDrag,
739
822
  lockedReason,
823
+ onDropOutside,
740
824
  onMoveMany,
741
825
  openFolder,
742
826
  rowAt,
@@ -807,6 +891,47 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
807
891
  return;
808
892
  focusRow(previous);
809
893
  }, [renamingId, focusRow]);
894
+ /**
895
+ * ⌘V's half of the clipboard: the held rows land where `row` says, by the drop rules a
896
+ * drag obeys (`resolveMultiDrop`).
897
+ */
898
+ const pasteRows = useCallback((row) => {
899
+ if (!clipboard)
900
+ return;
901
+ const offer = resolveMultiDrop({
902
+ nodes: shown,
903
+ row,
904
+ // The middle of the row: "into this", never "between these two". Reordering is a
905
+ // pointer gesture — a paste has no edge to aim at.
906
+ offsetRatio: 0.5,
907
+ allowReorder: false,
908
+ /*
909
+ * 🔴 The carried ids are declared for a COPY too, so the descendant rule applies
910
+ * to it: a folder cannot be pasted inside itself any more than it can be dragged
911
+ * there. What that rule does NOT refuse is the case the owner named — *"copying
912
+ * in … the same folder"* — because a row's own parent is not a descendant of it.
913
+ */
914
+ dragIds: clipboard.ids,
915
+ ...(lockedReason ? { lockedReason } : {}),
916
+ ...(canDrop ? { canDrop } : {}),
917
+ ...(takesDrop ? { takesDrop } : {}),
918
+ });
919
+ if (!offer.target) {
920
+ setNotice(offer.reason ?? '');
921
+ return;
922
+ }
923
+ setNotice(describeDrop(shown, offer.target));
924
+ if (clipboard.mode === 'copy') {
925
+ onCopy?.(clipboard.ids, offer.target);
926
+ // Kept, not cleared: Finder pastes the same copy again, and *"copying in another
927
+ // folder or the same folder"* is two pastes of one ⌘C.
928
+ return;
929
+ }
930
+ commitMove(clipboard.ids, offer.target);
931
+ // The rows have moved. A second paste would move them again from wherever they
932
+ // now are, which is not what the person cut them for.
933
+ setClipboard(null);
934
+ }, [canDrop, clipboard, commitMove, lockedReason, onCopy, shown, takesDrop]);
810
935
  const onKeyDown = useCallback((event, row,
811
936
  /*
812
937
  * The rows the ARROWS walk, and which section drew this one. A pinned copy's neighbours
@@ -935,6 +1060,7 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
935
1060
  event.preventDefault();
936
1061
  const { ids } = actOn(row.node, Boolean(onMoveMany));
937
1062
  setClipboard({ mode: 'cut', ids });
1063
+ mirror(ids);
938
1064
  setNotice(ids.length > 1 ? `Cut ${ids.length} items` : `Cut ${row.node.name}`);
939
1065
  return;
940
1066
  }
@@ -949,44 +1075,29 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
949
1075
  return;
950
1076
  }
951
1077
  setClipboard({ mode: 'copy', ids });
1078
+ mirror(ids);
952
1079
  setNotice(ids.length > 1 ? `Copied ${ids.length} items` : `Copied ${row.node.name}`);
953
1080
  return;
954
1081
  }
955
1082
  if (event.key === 'v' && clipboard) {
956
- event.preventDefault();
957
- const offer = resolveMultiDrop({
958
- nodes: shown,
959
- row,
960
- // The middle of the row: "into this", never "between these two". Reordering is a
961
- // pointer gesture — a paste has no edge to aim at.
962
- offsetRatio: 0.5,
963
- allowReorder: false,
964
- /*
965
- * 🔴 The carried ids are declared for a COPY too, so the descendant rule applies
966
- * to it: a folder cannot be pasted inside itself any more than it can be dragged
967
- * there. What that rule does NOT refuse is the case the owner named — *"copying
968
- * in … the same folder"* — because a row's own parent is not a descendant of it.
969
- */
970
- dragIds: clipboard.ids,
971
- ...(lockedReason ? { lockedReason } : {}),
972
- ...(canDrop ? { canDrop } : {}),
973
- ...(takesDrop ? { takesDrop } : {}),
974
- });
975
- if (!offer.target) {
976
- setNotice(offer.reason ?? '');
977
- return;
978
- }
979
- setNotice(describeDrop(shown, offer.target));
980
- if (clipboard.mode === 'copy') {
981
- onCopy?.(clipboard.ids, offer.target);
982
- // Kept, not cleared: Finder pastes the same copy again, and *"copying in another
983
- // folder or the same folder"* is two pastes of one ⌘C.
1083
+ /*
1084
+ * With the mirror written, the `paste` event decides (see `onPaste` on the root):
1085
+ * the key is left to the browser so that event fires at all. The timer is the
1086
+ * fallback for an engine that sends no `paste` to a row that is not editable — the
1087
+ * event, where it comes, comes inside this same keypress, before any timer.
1088
+ */
1089
+ if (mirrored.current !== null) {
1090
+ pendingPaste.current = row;
1091
+ setTimeout(() => {
1092
+ if (pendingPaste.current !== row)
1093
+ return;
1094
+ pendingPaste.current = null;
1095
+ pasteRows(row);
1096
+ }, 0);
984
1097
  return;
985
1098
  }
986
- commitMove(clipboard.ids, offer.target);
987
- // The rows have moved. A second paste would move them again from wherever they
988
- // now are, which is not what the person cut them for.
989
- setClipboard(null);
1099
+ event.preventDefault();
1100
+ pasteRows(row);
990
1101
  return;
991
1102
  }
992
1103
  return;
@@ -1164,7 +1275,6 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
1164
1275
  actOn,
1165
1276
  canCopy,
1166
1277
  canDrop,
1167
- takesDrop,
1168
1278
  canRearrange,
1169
1279
  canWrap,
1170
1280
  clipboard,
@@ -1181,6 +1291,8 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
1181
1291
  onRowMenu,
1182
1292
  onSelect,
1183
1293
  onWrapStart,
1294
+ mirror,
1295
+ pasteRows,
1184
1296
  renamingId,
1185
1297
  rowEl,
1186
1298
  rows,
@@ -1188,6 +1300,36 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
1188
1300
  toggle,
1189
1301
  togglePin,
1190
1302
  ]);
1303
+ /**
1304
+ * The `paste` a ⌘V on a row leaves to the browser once the mirror is written (see
1305
+ * `mirrored`) — here it is decided whose paste it is.
1306
+ *
1307
+ * Files on the clipboard, or text that is not the rows' names, mean something was copied
1308
+ * after the rows: the rows are put down and the event goes on untouched, to whatever the
1309
+ * consumer does with a paste (desk files a screenshot into the folder). The names still
1310
+ * there mean the rows ARE the newest copy, and they are pasted — the event cancelled and
1311
+ * stopped, so nothing above pastes the same keypress a second time.
1312
+ */
1313
+ const onPaste = useCallback((event) => {
1314
+ const row = pendingPaste.current;
1315
+ pendingPaste.current = null;
1316
+ const held = mirrored.current;
1317
+ if (!clipboard || held === null)
1318
+ return;
1319
+ const data = event.clipboardData;
1320
+ const files = (data?.files?.length ?? 0) > 0 ||
1321
+ Array.from(data?.items ?? []).some((item) => item.kind === 'file');
1322
+ if (files || (data?.getData('text/plain') ?? '') !== held) {
1323
+ setClipboard(null);
1324
+ setNotice('');
1325
+ return;
1326
+ }
1327
+ if (!row)
1328
+ return;
1329
+ event.preventDefault();
1330
+ event.stopPropagation();
1331
+ pasteRows(row);
1332
+ }, [clipboard, pasteRows]);
1191
1333
  // ── External drags (Finder files, gallery tiles) ──────────────────────────────────────
1192
1334
  const externalWanted = useCallback((event) => Boolean(onDropExternal) && (acceptsExternalDrag?.(event) ?? true), [acceptsExternalDrag, onDropExternal]);
1193
1335
  /**
@@ -1453,7 +1595,7 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
1453
1595
  togglePin(node);
1454
1596
  }, children: _jsxs("svg", { viewBox: '0 0 24 24', width: '12', height: '12', fill: 'none', stroke: 'currentColor', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', focusable: 'false', "aria-hidden": 'true', children: [_jsx("path", { d: 'M12 17v5' }), _jsx("path", { d: 'M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z' })] }) }) }) })) : null,
1455
1597
  renderTools ? _jsx("span", { className: 'cbft-tools', children: renderTools(node) }) : null,
1456
- canRearrange && node.draggable !== false ? (_jsx("span", { className: 'cbft-grip', "aria-hidden": 'true', "data-cbft-grip": '', children: _jsxs("svg", { viewBox: '0 0 24 24', width: '14', height: '14', fill: 'currentColor', stroke: 'none', focusable: 'false', "aria-hidden": 'true', children: [_jsx("circle", { cx: '9', cy: '5', r: '1.6' }), _jsx("circle", { cx: '9', cy: '12', r: '1.6' }), _jsx("circle", { cx: '9', cy: '19', r: '1.6' }), _jsx("circle", { cx: '15', cy: '5', r: '1.6' }), _jsx("circle", { cx: '15', cy: '12', r: '1.6' }), _jsx("circle", { cx: '15', cy: '19', r: '1.6' })] }) })) : null));
1598
+ (canRearrange || onDropOutside) && node.draggable !== false ? (_jsx("span", { className: 'cbft-grip', "aria-hidden": 'true', "data-cbft-grip": '', children: _jsxs("svg", { viewBox: '0 0 24 24', width: '14', height: '14', fill: 'currentColor', stroke: 'none', focusable: 'false', "aria-hidden": 'true', children: [_jsx("circle", { cx: '9', cy: '5', r: '1.6' }), _jsx("circle", { cx: '9', cy: '12', r: '1.6' }), _jsx("circle", { cx: '9', cy: '19', r: '1.6' }), _jsx("circle", { cx: '15', cy: '5', r: '1.6' }), _jsx("circle", { cx: '15', cy: '12', r: '1.6' }), _jsx("circle", { cx: '15', cy: '19', r: '1.6' })] }) })) : null));
1457
1599
  // The "why not" only exists while the tree genuinely cannot be rearranged;
1458
1600
  // wrapping every row in a tooltip otherwise would put a hint on a working
1459
1601
  // control saying nothing.
@@ -1463,7 +1605,7 @@ export function FileTree({ nodes, selectedId, onSelect, selectedIds, onSelection
1463
1605
  // being made in a place, and the place is where the folder actually lives.
1464
1606
  return !pinnedCopy && draft && draft.parentId === node.id ? (_jsxs(Fragment, { children: [body, draftRow(row.depth + 1)] }, node.id)) : (body);
1465
1607
  };
1466
- return (_jsxs("div", { className: `cbft${scroll === 'host' ? ' cbft--host-scroll' : ''}${className ? ` ${className}` : ''}`, "data-quiet-path": markPath ? undefined : true, children: [pinnedRows.length > 0 ? (_jsxs("div", { className: 'cbft-pinned', children: [_jsx("div", { className: 'cbft-pinned-head', children: pinnedLabel }), _jsx("div", { role: 'tree', "aria-label": pinnedLabel, ...(onSelectionChange ? { 'aria-multiselectable': true } : {}), className: `cbft-pinned-list${drag?.active ? ' cbft-list-dragging' : ''}`, children: pinnedRows.map((row) => renderRow(row, true)) })] })) : null, _jsx("div", { className: 'cbft-scroll', ref: scrollRef, "data-into-root": (drag?.active && drag.offer.target?.kind === 'root') ||
1608
+ return (_jsxs("div", { ref: rootRef, onPaste: onPaste, className: `cbft${scroll === 'host' ? ' cbft--host-scroll' : ''}${className ? ` ${className}` : ''}`, "data-quiet-path": markPath ? undefined : true, children: [pinnedRows.length > 0 ? (_jsxs("div", { className: 'cbft-pinned', children: [_jsx("div", { className: 'cbft-pinned-head', children: pinnedLabel }), _jsx("div", { role: 'tree', "aria-label": pinnedLabel, ...(onSelectionChange ? { 'aria-multiselectable': true } : {}), className: `cbft-pinned-list${drag?.active ? ' cbft-list-dragging' : ''}`, children: pinnedRows.map((row) => renderRow(row, true)) })] })) : null, _jsx("div", { className: 'cbft-scroll', ref: scrollRef, "data-into-root": (drag?.active && drag.offer.target?.kind === 'root') ||
1467
1609
  externalOverId === EXTERNAL_OVER_ROOT ||
1468
1610
  undefined, ...externalHandlers(null), onPointerUp: () => {
1469
1611
  // Releasing over the blank space means the top level; the pointer capture keeps
@@ -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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"}
@@ -20,6 +20,17 @@ export declare function setThemeCss(appCss: readonly string[]): void;
20
20
  export declare function setReimplementedNames(names: readonly string[]): void;
21
21
  export declare function setPositionedClasses(compounds: readonly (readonly string[])[]): void;
22
22
  export declare function positionedClassesFromCss(css: string): string[][];
23
+ /** The keys of one `style={{ … }}` object that are not a custom property or computed geometry. */
24
+ export declare function disallowedInlineStyleKeys(objectBody: string): string[];
25
+ interface OptOut {
26
+ rule: string;
27
+ reason: string;
28
+ line: number;
29
+ }
30
+ /** Every `guardrails-ignore` directive written in a COMMENT (prose in a string is not one). */
31
+ export declare function findOptOuts(source: string): OptOut[];
32
+ /** Why an opt-out's reason does not qualify, or `null` when it does. */
33
+ export declare function weakOptOutReason(rule: string, reason: string): string | null;
23
34
  export declare const RULES: Record<string, Rule>;
24
35
  /**
25
36
  * Rules that are about cursedbelt's OWN source and mean nothing in an app's.
@@ -1 +1 @@
1
- {"version":3,"file":"guardrailsEnforce.d.ts","sourceRoot":"","sources":["../../scripts/guardrailsEnforce.ts"],"names":[],"mappings":";AA2NA,UAAU,SAAS;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;sEAGkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,IAAI;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;CACzD;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE,CA6B9D;AAu5BD,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAE3D;AAmHD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAEpE;AA+vBD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAEpF;AAID,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CAoBhE;AA+GD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAyBtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAuC,CAAC;AAE5F,0EAA0E;AAC1E,eAAO,MAAM,SAAS,EAAE,SAAS,MAAM,EAAwE,CAAC;AAShH,eAAO,MAAM,uBAAuB,aAAkD,CAAC;AAGvF,MAAM,WAAW,SAAS;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAED;2FAC2F;AAC3F,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CA0C3F;AAED,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAmGhC,wBAAgB,0BAA0B,CAAC,SAAS,GAAE,MAAwB,GAAG,MAAM,EAAE,CAyBxF"}
1
+ {"version":3,"file":"guardrailsEnforce.d.ts","sourceRoot":"","sources":["../../scripts/guardrailsEnforce.ts"],"names":[],"mappings":";AAuOA,UAAU,SAAS;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB;;;sEAGkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,IAAI;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;CACzD;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE,CA6B9D;AAs7BD,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAE3D;AAoHD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAIpE;AAmyBD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,IAAI,CAEpF;AAID,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CAoBhE;AAyKD,kGAAkG;AAClG,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAatE;AAqDD,UAAU,MAAM;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AA0BD,+FAA+F;AAC/F,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAgBpD;AAID,wEAAwE;AACxE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO5E;AA0CD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CA4BtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAuC,CAAC;AAE5F,0EAA0E;AAC1E,eAAO,MAAM,SAAS,EAAE,SAAS,MAAM,EAAwE,CAAC;AAShH,eAAO,MAAM,uBAAuB,aAAkD,CAAC;AAGvF,MAAM,WAAW,SAAS;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACb;AAED;2FAC2F;AAC3F,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CA+C3F;AAED,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;AAmGhC,wBAAgB,0BAA0B,CAAC,SAAS,GAAE,MAAwB,GAAG,MAAM,EAAE,CAyBxF"}
@@ -0,0 +1,3 @@
1
+ export { expectNoObjectLeak, findObjectLeak, type TextSource } from "./objectLeak";
2
+ export { hoverHint, tooltipReady } from "./tooltip";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,4 @@
1
+ // `cursedbelt/testing` — helpers a consuming app's specs import. Each file says what it reads.
2
+ export { expectNoObjectLeak, findObjectLeak } from "./objectLeak";
3
+ export { hoverHint, tooltipReady } from "./tooltip";
4
+ //# sourceMappingURL=index.js.map