cursedbelt 5.96.0 → 5.96.1

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 (99) hide show
  1. package/dist/react/components/AppShell.js +6 -1
  2. package/dist/react/components/AppShell.js.map +1 -1
  3. package/dist/react/components/ConfirmDialog.d.ts.map +1 -1
  4. package/dist/react/components/ConfirmDialog.js +1 -1
  5. package/dist/react/components/ConfirmDialog.js.map +1 -1
  6. package/dist/react/components/TagsEditor.d.ts +15 -0
  7. package/dist/react/components/TagsEditor.d.ts.map +1 -0
  8. package/dist/react/components/TagsEditor.js +93 -0
  9. package/dist/react/components/TagsEditor.js.map +1 -0
  10. package/dist/react/components/TagsPromptDialog.d.ts +25 -0
  11. package/dist/react/components/TagsPromptDialog.d.ts.map +1 -0
  12. package/dist/react/components/TagsPromptDialog.js +38 -0
  13. package/dist/react/components/TagsPromptDialog.js.map +1 -0
  14. package/dist/react/file-tree/FolderViewMenus.d.ts.map +1 -1
  15. package/dist/react/file-tree/FolderViewMenus.js +2 -0
  16. package/dist/react/file-tree/FolderViewMenus.js.map +1 -1
  17. package/dist/react/file-tree/useFolderView.d.ts +11 -1
  18. package/dist/react/file-tree/useFolderView.d.ts.map +1 -1
  19. package/dist/react/file-tree/useFolderView.js +3 -2
  20. package/dist/react/file-tree/useFolderView.js.map +1 -1
  21. package/dist/react/hooks/longPressContextMenu.d.ts +10 -1
  22. package/dist/react/hooks/longPressContextMenu.d.ts.map +1 -1
  23. package/dist/react/hooks/longPressContextMenu.js +37 -3
  24. package/dist/react/hooks/longPressContextMenu.js.map +1 -1
  25. package/dist/react/index.d.ts +3 -0
  26. package/dist/react/index.d.ts.map +1 -1
  27. package/dist/react/index.js +3 -0
  28. package/dist/react/index.js.map +1 -1
  29. package/dist/react/lib/tagList.d.ts +16 -0
  30. package/dist/react/lib/tagList.d.ts.map +1 -0
  31. package/dist/react/lib/tagList.js +30 -0
  32. package/dist/react/lib/tagList.js.map +1 -0
  33. package/dist/react/media/FocusViewer.d.ts +8 -1
  34. package/dist/react/media/FocusViewer.d.ts.map +1 -1
  35. package/dist/react/media/FocusViewer.js +10 -1
  36. package/dist/react/media/FocusViewer.js.map +1 -1
  37. package/dist/react/media/FrameGrabber.d.ts +3 -1
  38. package/dist/react/media/FrameGrabber.d.ts.map +1 -1
  39. package/dist/react/media/FrameGrabber.js +10 -5
  40. package/dist/react/media/FrameGrabber.js.map +1 -1
  41. package/dist/react/media/VideoChapterEditor.d.ts +3 -1
  42. package/dist/react/media/VideoChapterEditor.d.ts.map +1 -1
  43. package/dist/react/media/VideoChapterEditor.js +14 -6
  44. package/dist/react/media/VideoChapterEditor.js.map +1 -1
  45. package/dist/react/media/VideoCutEditor.d.ts +3 -1
  46. package/dist/react/media/VideoCutEditor.d.ts.map +1 -1
  47. package/dist/react/media/VideoCutEditor.js +14 -6
  48. package/dist/react/media/VideoCutEditor.js.map +1 -1
  49. package/dist/react/media/VideoTurner.d.ts +3 -1
  50. package/dist/react/media/VideoTurner.d.ts.map +1 -1
  51. package/dist/react/media/VideoTurner.js +13 -5
  52. package/dist/react/media/VideoTurner.js.map +1 -1
  53. package/dist/react/media/hlsSource.d.ts +27 -0
  54. package/dist/react/media/hlsSource.d.ts.map +1 -1
  55. package/dist/react/media/hlsSource.js +39 -0
  56. package/dist/react/media/hlsSource.js.map +1 -1
  57. package/dist/react/media-gallery/MediaGallery.d.ts.map +1 -1
  58. package/dist/react/media-gallery/MediaGallery.js +4 -4
  59. package/dist/react/media-gallery/MediaGallery.js.map +1 -1
  60. package/dist/react/tagsPrompt.d.ts +15 -0
  61. package/dist/react/tagsPrompt.d.ts.map +1 -0
  62. package/dist/react/tagsPrompt.js +30 -0
  63. package/dist/react/tagsPrompt.js.map +1 -0
  64. package/dist/styles-areas/fields.css +4 -4
  65. package/dist/styles-areas/overlays.css +3 -2
  66. package/dist/styles-utilities.css +7 -0
  67. package/dist/theme.css +13 -0
  68. package/package.json +7 -1
  69. package/scripts/styleAreas.ts +5 -0
  70. package/src/looks.spec.ts +34 -0
  71. package/src/react/components/AppShell.spec.tsx +23 -0
  72. package/src/react/components/AppShell.tsx +6 -1
  73. package/src/react/components/ConfirmDialog.spec.tsx +41 -0
  74. package/src/react/components/ConfirmDialog.tsx +12 -2
  75. package/src/react/components/TagsEditor.tsx +140 -0
  76. package/src/react/components/TagsPromptDialog.spec.tsx +74 -0
  77. package/src/react/components/TagsPromptDialog.tsx +108 -0
  78. package/src/react/file-tree/FolderViewMenus.tsx +1 -0
  79. package/src/react/file-tree/folderViewTree.spec.tsx +15 -0
  80. package/src/react/file-tree/useFolderView.ts +13 -2
  81. package/src/react/hooks/longPressContextMenu.spec.ts +50 -0
  82. package/src/react/hooks/longPressContextMenu.ts +39 -3
  83. package/src/react/index.ts +3 -0
  84. package/src/react/lib/tagList.spec.ts +19 -0
  85. package/src/react/lib/tagList.ts +29 -0
  86. package/src/react/media/FocusViewer.spec.tsx +19 -0
  87. package/src/react/media/FocusViewer.tsx +17 -0
  88. package/src/react/media/FrameGrabber.tsx +12 -5
  89. package/src/react/media/VideoChapterEditor.tsx +16 -6
  90. package/src/react/media/VideoCutEditor.tsx +17 -6
  91. package/src/react/media/VideoTurner.tsx +14 -5
  92. package/src/react/media/editorVideoSource.spec.tsx +71 -0
  93. package/src/react/media/hlsSource.ts +43 -0
  94. package/src/react/media-gallery/MediaGallery.tsx +4 -0
  95. package/src/react/tagsPrompt.tsx +33 -0
  96. package/src/styles-areas/fields.css +4 -4
  97. package/src/styles-areas/overlays.css +3 -2
  98. package/src/styles-utilities.css +7 -0
  99. package/src/theme.css +13 -0
@@ -131,10 +131,15 @@ function Shell({ children, nav, navGate = allowAllGate, activeHref, onNavigate,
131
131
  // keeps it on the brand line, where there is room.
132
132
  const foldButton = (collapsed) => onNavCollapsedChange ? (_jsx(IconButton, { "data-cb-rail-fold": '', "aria-pressed": collapsed, label: collapsed ? 'Show the sidebar' : 'Hide the sidebar', tooltip: collapsed ? 'Show the sidebar with its names' : 'Fold the sidebar to icons, for a wider page', size: 'sm', variant: 'ghost', className: 'mt-0.5', onClick: () => onNavCollapsedChange(!collapsed), children: _jsx(IconSidebar, {}) })) : null;
133
133
  const hasCommandRow = (collapsed) => Boolean(openCommand || (!collapsed && (onCapture || commandBarExtra)));
134
+ // A worded capture on the ⌘K row takes the field's room: in a 240px sidebar the fold, the field
135
+ // and "+ Upload" left the field ~50px, its placeholder cut to a sliver under the button (photos,
136
+ // 1440, 2026-10-27). With capture there the trigger is the square search button, Linear's sidebar
137
+ // head (a search icon beside the worded compose); the palette and ⌘K are unchanged.
138
+ const squareCommand = (collapsed) => collapsed || Boolean(onCapture);
134
139
  const railCommand = (collapsed) => {
135
140
  if (!hasCommandRow(collapsed))
136
141
  return null;
137
- const bar = (_jsx(CommandBar, { className: collapsed ? 'flex-col' : 'w-full min-w-0 flex-wrap', compact: collapsed, onCapture: collapsed ? undefined : onCapture, captureLabel: captureLabel, onOpenCommand: openCommand, commandPlaceholder: commandLabel, commandHint: commandHint, extra: collapsed ? undefined : commandBarExtra }));
142
+ const bar = (_jsx(CommandBar, { className: collapsed ? 'flex-col' : 'w-full min-w-0 flex-wrap', compact: squareCommand(collapsed), onCapture: collapsed ? undefined : onCapture, captureLabel: captureLabel, onOpenCommand: openCommand, commandPlaceholder: commandLabel, commandHint: commandHint, extra: collapsed ? undefined : commandBarExtra }));
138
143
  const fold = collapsed ? null : foldButton(false);
139
144
  return fold ? (_jsxs("div", { "data-cb-rail-command-row": '', className: 'flex w-full min-w-0 items-start gap-1', children: [fold, _jsx("div", { className: 'min-w-0 flex-1', children: bar })] })) : (bar);
140
145
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../src/react/components/AppShell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../src/react/components/AppShell.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../src/react/components/ConfirmDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAM/C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;yEACqE;IACrE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;oGACgG;IAChG,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,KAAK,EACL,OAAO,EACP,YAAwB,EACxB,WAAsB,EACtB,WAAmB,EACnB,OAAe,EACf,SAAS,EACT,GAAG,IAAI,EACR,EAAE,kBAAkB,+BAkEpB"}
1
+ {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../src/react/components/ConfirmDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAM/C,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;yEACqE;IACrE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yFAAyF;IACzF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;oGACgG;IAChG,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,KAAK,EACL,OAAO,EACP,YAAwB,EACxB,WAAsB,EACtB,WAAmB,EACnB,OAAe,EACf,SAAS,EACT,GAAG,IAAI,EACR,EAAE,kBAAkB,+BA4EpB"}
@@ -25,7 +25,7 @@ export function ConfirmDialog({ open, onConfirm, onCancel, title, message, confi
25
25
  contentRef.current
26
26
  ?.querySelector(destructive ? '[data-cb-cancel]' : '[data-cb-confirm]')
27
27
  ?.focus();
28
- }, children: [_jsxs("div", { className: 'flex min-w-0 flex-col gap-1.5', children: [_jsx(DialogTitle, { className: 'min-w-0 wrap-break-word text-base font-semibold', children: title }), message ? (_jsx(DialogDescription, { className: 'text-sm text-muted-foreground', children: message })) : null] }), _jsxs("div", { className: 'flex justify-end gap-2', children: [_jsx(Button, { "data-cb-cancel": true, variant: 'secondary', onClick: onCancel, disabled: loading, tooltip: cancelLabel, children: cancelLabel }), _jsx(Button, { "data-cb-confirm": true,
28
+ }, children: [_jsxs("div", { className: 'flex min-w-0 flex-col gap-1.5', children: [_jsx(DialogTitle, { className: 'min-w-0 wrap-break-word text-base font-semibold', children: title }), message ? (_jsx(DialogDescription, { asChild: typeof message !== 'string' && typeof message !== 'number', className: 'text-sm text-muted-foreground', children: typeof message === 'string' || typeof message === 'number' ? (message) : (_jsx("div", { children: message })) })) : null] }), _jsxs("div", { className: 'flex justify-end gap-2', children: [_jsx(Button, { "data-cb-cancel": true, variant: 'secondary', onClick: onCancel, disabled: loading, tooltip: cancelLabel, children: cancelLabel }), _jsx(Button, { "data-cb-confirm": true,
29
29
  // `destructive-solid`, not the quiet `destructive`: this dialog IS the
30
30
  // confirmation step, so its confirm button is the surface's hero action —
31
31
  // the one place the taxonomy wants an always-loud solid red (cbux-42).
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.js","sourceRoot":"","sources":["../../../src/react/components/ConfirmDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAoBpF;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,KAAK,EACL,OAAO,EACP,YAAY,GAAG,SAAS,EACxB,WAAW,GAAG,QAAQ,EACtB,WAAW,GAAG,KAAK,EACnB,OAAO,GAAG,KAAK,EACf,SAAS,EACT,GAAG,IAAI,EACY;IACnB,MAAM,UAAU,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEhD,OAAO,CACL,KAAC,MAAM,OACD,IAAI,EACR,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;YAClB,IAAI,CAAC,CAAC;gBAAE,QAAQ,EAAE,CAAC;QACrB,CAAC,YAED,MAAC,aAAa,IACZ,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,EAAE,CACX,6HAA6H,EAC7H,uFAAuF,EACvF,aAAa,EACb,SAAS,CACV;YACD,+EAA+E;YAC/E,uEAAuE;YACvE,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE;gBACrB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,UAAU,CAAC,OAAO;oBAChB,EAAE,aAAa,CACb,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,CACvD;oBACD,EAAE,KAAK,EAAE,CAAC;YACd,CAAC,aAED,eAAK,SAAS,EAAC,+BAA+B,aAC5C,KAAC,WAAW,IAAC,SAAS,EAAC,iDAAiD,YACrE,KAAK,GACM,EACb,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,iBAAiB,IAAC,SAAS,EAAC,+BAA+B,YACzD,OAAO,GACU,CACrB,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,eAAK,SAAS,EAAC,wBAAwB,aACrC,KAAC,MAAM,4BAEL,OAAO,EAAC,WAAW,EACnB,OAAO,EAAE,QAAQ,EACjB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,WAAW,YAEnB,WAAW,GACL,EACT,KAAC,MAAM;4BAEL,uEAAuE;4BACvE,0EAA0E;4BAC1E,uEAAuE;4BACvE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,EACtD,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,EAAE,EAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,YAAY,YAEpB,YAAY,GACN,IACL,IACQ,GACT,CACV,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ConfirmDialog.js","sourceRoot":"","sources":["../../../src/react/components/ConfirmDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAoBpF;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,KAAK,EACL,OAAO,EACP,YAAY,GAAG,SAAS,EACxB,WAAW,GAAG,QAAQ,EACtB,WAAW,GAAG,KAAK,EACnB,OAAO,GAAG,KAAK,EACf,SAAS,EACT,GAAG,IAAI,EACY;IACnB,MAAM,UAAU,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEhD,OAAO,CACL,KAAC,MAAM,OACD,IAAI,EACR,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;YAClB,IAAI,CAAC,CAAC;gBAAE,QAAQ,EAAE,CAAC;QACrB,CAAC,YAED,MAAC,aAAa,IACZ,GAAG,EAAE,UAAU,EACf,SAAS,EAAE,EAAE,CACX,6HAA6H,EAC7H,uFAAuF,EACvF,aAAa,EACb,SAAS,CACV;YACD,+EAA+E;YAC/E,uEAAuE;YACvE,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE;gBACrB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,UAAU,CAAC,OAAO;oBAChB,EAAE,aAAa,CACb,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,mBAAmB,CACvD;oBACD,EAAE,KAAK,EAAE,CAAC;YACd,CAAC,aAED,eAAK,SAAS,EAAC,+BAA+B,aAC5C,KAAC,WAAW,IAAC,SAAS,EAAC,iDAAiD,YACrE,KAAK,GACM,EACb,OAAO,CAAC,CAAC,CAAC,CAIT,KAAC,iBAAiB,IAChB,OAAO,EAAE,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,EACnE,SAAS,EAAC,+BAA+B,YAExC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC5D,OAAO,CACR,CAAC,CAAC,CAAC,CACF,wBAAM,OAAO,GAAO,CACrB,GACiB,CACrB,CAAC,CAAC,CAAC,IAAI,IACJ,EACN,eAAK,SAAS,EAAC,wBAAwB,aACrC,KAAC,MAAM,4BAEL,OAAO,EAAC,WAAW,EACnB,OAAO,EAAE,QAAQ,EACjB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,WAAW,YAEnB,WAAW,GACL,EACT,KAAC,MAAM;4BAEL,uEAAuE;4BACvE,0EAA0E;4BAC1E,uEAAuE;4BACvE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,EACtD,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,EAAE,EAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,YAAY,YAEpB,YAAY,GACN,IACL,IACQ,GACT,CACV,CAAC;AACJ,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type ComponentPropsWithoutRef } from 'react';
2
+ export interface TagsEditorProps extends Omit<ComponentPropsWithoutRef<'div'>, 'onChange' | 'defaultValue' | 'aria-label' | 'className' | 'onCopy' | 'onPaste' | 'onKeyDown' | 'onPointerDown'> {
3
+ value: string[];
4
+ onChange: (next: string[]) => void;
5
+ suggestions?: readonly string[];
6
+ placeholder?: string;
7
+ 'aria-label'?: string;
8
+ className?: string;
9
+ /** The app's one spelling rule for a pasted tag (photos lower-cases and folds synonyms). Default: trim. */
10
+ normalize?: (raw: string) => string;
11
+ /** What the tags are on, for the copy toast and tooltip: "paste them onto another {item}". Default `item`. */
12
+ item?: string;
13
+ }
14
+ export declare function TagsEditor({ value, onChange, suggestions, placeholder, 'aria-label': ariaLabel, className, normalize, item, ...rest }: TagsEditorProps): import("react").JSX.Element;
15
+ //# sourceMappingURL=TagsEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsEditor.d.ts","sourceRoot":"","sources":["../../../src/react/components/TagsEditor.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAuB,KAAK,wBAAwB,EAA2C,MAAM,OAAO,CAAC;AAOpH,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,UAAU,GAAG,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,eAAe,CAAC;IAC9J,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2GAA2G;IAC3G,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACpC,8GAA8G;IAC9G,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAkBD,wBAAgB,UAAU,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,WAAW,EACX,WAAyB,EACzB,YAAY,EAAE,SAAkB,EAChC,SAAS,EACT,SAAS,EACT,IAAa,EACb,GAAG,IAAI,EACR,EAAE,eAAe,+BA+EjB"}
@@ -0,0 +1,93 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * One item's tags, edited in place — and carried whole to another. Lifted from photos (forge task
4
+ * 3773; the owner: "copy some or all tags from one photo to apply to more photos … a copy icon that
5
+ * copies all of them … highlight the existing tags with my mouse or ⌘A, then ⌘C … ⌘V to paste") so
6
+ * music tags a track the same way (forge task 3812: "copying tags like photos app does").
7
+ *
8
+ * Three ways out, one way in, all through the system clipboard as `a, b, c` (`../lib/tagList.ts`):
9
+ * - the copy button copies every tag;
10
+ * - ⌘A in the empty field selects every tag (the field lights up and says so), and ⌘C copies them;
11
+ * - a mouse selection across some chips, then ⌘C, copies just those — the chips are plain text;
12
+ * - a paste into the field adds every tag in the text, however the list was separated, at once.
13
+ */
14
+ import { Copy } from 'lucide-react';
15
+ import { useEffect, useState } from 'react';
16
+ import { toast } from '../Toast.js';
17
+ import { cn } from '../lib/cn.js';
18
+ import { mergeTagLists, parseTagList, tagListText } from '../lib/tagList.js';
19
+ import { IconButton } from './IconButton.js';
20
+ import { TagsInput } from './TagsInput.js';
21
+ const MOD = typeof navigator !== 'undefined' && /Mac|iPhone|iPad/.test(navigator.platform) ? '⌘' : 'Ctrl+';
22
+ const tagCount = (n) => `${n.toLocaleString()} ${n === 1 ? 'tag' : 'tags'}`;
23
+ /** The chips a text selection touches — a chip is the span whose first child is the tag's text and whose last is its ✕. */
24
+ function selectedChips(container, selection) {
25
+ if (!selection || selection.isCollapsed)
26
+ return [];
27
+ const picked = [];
28
+ for (const span of container.querySelectorAll('span')) {
29
+ const text = span.firstChild;
30
+ if (!text || text.nodeType !== Node.TEXT_NODE || !span.querySelector('button'))
31
+ continue;
32
+ if (selection.containsNode(span, true))
33
+ picked.push(text.textContent ?? '');
34
+ }
35
+ return picked.filter(Boolean);
36
+ }
37
+ export function TagsEditor({ value, onChange, suggestions, placeholder = 'Add a tag', 'aria-label': ariaLabel = 'Tags', className, normalize, item = 'item', ...rest }) {
38
+ // Every chip selected at once (⌘A on the empty field) — drawn as a ring and a line, since the chips are not selectable text then.
39
+ const [all, setAll] = useState(false);
40
+ useEffect(() => {
41
+ if (all && !value.length)
42
+ setAll(false);
43
+ }, [all, value.length]);
44
+ const copied = (count) => {
45
+ toast.success(`Copied ${tagCount(count)} — paste them onto another ${item}`);
46
+ };
47
+ const copyAll = async () => {
48
+ try {
49
+ await navigator.clipboard.writeText(tagListText(value));
50
+ copied(value.length);
51
+ }
52
+ catch {
53
+ toast.error(`Couldn't reach the clipboard — select the tags and press ${MOD}C instead`);
54
+ }
55
+ };
56
+ const onKeyDown = (event) => {
57
+ const target = event.target;
58
+ const field = target.tagName === 'INPUT' ? target : null;
59
+ const mod = event.metaKey || event.ctrlKey;
60
+ if (mod && event.key.toLowerCase() === 'a' && field && !field.value && value.length) {
61
+ event.preventDefault();
62
+ setAll(true);
63
+ return;
64
+ }
65
+ if (mod && event.key.toLowerCase() === 'c')
66
+ return;
67
+ if (all && event.key !== 'Shift' && event.key !== 'Meta' && event.key !== 'Control')
68
+ setAll(false);
69
+ };
70
+ const onCopy = (event) => {
71
+ const picked = all ? value : selectedChips(event.currentTarget, window.getSelection());
72
+ if (!picked.length)
73
+ return;
74
+ event.clipboardData.setData('text/plain', tagListText(picked));
75
+ event.preventDefault();
76
+ copied(picked.length);
77
+ };
78
+ const onPaste = (event) => {
79
+ if (event.target.tagName !== 'INPUT')
80
+ return;
81
+ const pasted = parseTagList(event.clipboardData.getData('text/plain'), normalize);
82
+ if (!pasted.length)
83
+ return;
84
+ event.preventDefault();
85
+ const next = mergeTagLists(value, pasted);
86
+ if (next.length !== value.length)
87
+ onChange(next);
88
+ else
89
+ toast.success(`Every pasted tag is on it already`);
90
+ };
91
+ return (_jsxs("div", { ...rest, className: cn('flex flex-col gap-1', className), "data-tags-editor": '', onKeyDown: onKeyDown, onCopy: onCopy, onPaste: onPaste, onPointerDown: () => all && setAll(false), children: [_jsxs("div", { className: 'flex items-start gap-1', children: [_jsx("div", { className: cn('min-w-0 flex-1 rounded-field', all && 'ring-2 ring-accent ring-offset-2 ring-offset-background'), children: _jsx(TagsInput, { value: value, onChange: onChange, placeholder: placeholder, "aria-label": ariaLabel, suggestions: suggestions }) }), _jsx(IconButton, { label: 'Copy all tags', tooltip: value.length ? `Copy ${tagCount(value.length)} to paste onto another ${item}` : 'No tags to copy yet', variant: 'ghost', disabled: !value.length, onClick: () => void copyAll(), children: _jsx(Copy, {}) })] }), all ? (_jsxs("p", { className: 'text-xs text-accent', "aria-live": 'polite', children: ["All ", tagCount(value.length), " selected \u2014 ", MOD, "C copies them"] })) : null] }));
92
+ }
93
+ //# sourceMappingURL=TagsEditor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsEditor.js","sourceRoot":"","sources":["../../../src/react/components/TagsEditor.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { type ReactNode } from 'react';
2
+ import { type TagsEditorProps } from './TagsEditor.js';
3
+ export interface TagsPromptDialogProps extends Pick<TagsEditorProps, 'suggestions' | 'placeholder' | 'normalize' | 'item'> {
4
+ open: boolean;
5
+ /** The tags the dialog closed on — the whole list, so a removal is the difference from `defaultValue`. */
6
+ onSubmit: (tags: string[]) => void | Promise<void>;
7
+ onCancel: () => void;
8
+ title: string;
9
+ message?: ReactNode;
10
+ /** The tags the item already carries — drawn as chips the moment it opens (forge task 3812:
11
+ * *"clicking 'Tag this track' doesn't show existing tags but it should"*). */
12
+ defaultValue?: readonly string[];
13
+ confirmLabel?: string;
14
+ cancelLabel?: string;
15
+ loading?: boolean;
16
+ className?: string;
17
+ }
18
+ /**
19
+ * {@link PromptDialog}'s shape with a {@link TagsEditor} for its field: the item's tags as chips,
20
+ * several added at once (comma/Enter, or a pasted list), × to take one off, the copy button and
21
+ * ⌘A/⌘C to carry them to another item. For the no-JSX case use `promptTags`
22
+ * (`cursedbelt/react/tags-prompt`), which mounts it once and resolves to the list or `null`.
23
+ */
24
+ export declare function TagsPromptDialog({ open, onSubmit, onCancel, title, message, defaultValue, confirmLabel, cancelLabel, loading, className, suggestions, placeholder, normalize, item, ...rest }: TagsPromptDialogProps): import("react").JSX.Element;
25
+ //# sourceMappingURL=TagsPromptDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsPromptDialog.d.ts","sourceRoot":"","sources":["../../../src/react/components/TagsPromptDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAKjD,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEnE,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,aAAa,GAAG,WAAW,GAAG,MAAM,CAAC;IACxH,IAAI,EAAE,OAAO,CAAC;IACd,0GAA0G;IAC1G,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;mFAC+E;IAC/E,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,OAAO,EACP,YAAiB,EACjB,YAA0B,EAC1B,WAAsB,EACtB,OAAe,EACf,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,IAAI,EACJ,GAAG,IAAI,EACR,EAAE,qBAAqB,+BA8DvB"}
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { cn } from '../lib/cn.js';
4
+ import { DIALOG_MOTION } from '../lib/overlayMotion.js';
5
+ import { Button } from './Button.js';
6
+ import { Dialog, DialogContent, DialogDescription, DialogTitle } from './dialog.js';
7
+ import { TagsEditor } from './TagsEditor.js';
8
+ /**
9
+ * {@link PromptDialog}'s shape with a {@link TagsEditor} for its field: the item's tags as chips,
10
+ * several added at once (comma/Enter, or a pasted list), × to take one off, the copy button and
11
+ * ⌘A/⌘C to carry them to another item. For the no-JSX case use `promptTags`
12
+ * (`cursedbelt/react/tags-prompt`), which mounts it once and resolves to the list or `null`.
13
+ */
14
+ export function TagsPromptDialog({ open, onSubmit, onCancel, title, message, defaultValue = [], confirmLabel = 'Save tags', cancelLabel = 'Cancel', loading = false, className, suggestions, placeholder, normalize, item, ...rest }) {
15
+ const [tags, setTags] = useState(() => [...defaultValue]);
16
+ /** A click on Save blurs the field first, which commits its draft; ⌘Enter does not, so it reads the draft from `content`. */
17
+ const handleSubmit = (content) => {
18
+ if (loading)
19
+ return;
20
+ const raw = content?.querySelector('[data-tags-editor] input')?.value ?? '';
21
+ const pending = normalize ? normalize(raw) : raw.trim();
22
+ void onSubmit(pending && !tags.includes(pending) ? [...tags, pending] : tags);
23
+ };
24
+ return (_jsx(Dialog, { ...rest, open: open, onOpenChange: (v) => {
25
+ if (!v)
26
+ onCancel();
27
+ }, children: _jsxs(DialogContent, { "data-cb-tags-prompt": '', className: cn('fixed top-1/2 left-1/2 flex w-[calc(100vw-2rem)] max-w-[var(--modal-w-sm)] -translate-x-1/2 -translate-y-1/2 flex-col gap-4', 'rounded-xl border border-border bg-popover p-6 text-popover-foreground shadow-overlay', DIALOG_MOTION, className), onOpenAutoFocus: (e) => {
28
+ e.preventDefault();
29
+ e.currentTarget?.querySelector('[data-tags-editor] input')?.focus();
30
+ }, onKeyDown: (e) => {
31
+ // ⌘/Ctrl+Enter saves from the field, where a bare Enter commits the tag being typed.
32
+ if (e.key === 'Enter' && (e.metaKey || e.ctrlKey)) {
33
+ e.preventDefault();
34
+ handleSubmit(e.currentTarget);
35
+ }
36
+ }, children: [_jsxs("div", { className: 'flex flex-col gap-1.5', children: [_jsx(DialogTitle, { className: 'text-base font-semibold', children: title }), message ? _jsx(DialogDescription, { className: 'text-sm text-muted-foreground', children: message }) : null] }), _jsx(TagsEditor, { value: tags, onChange: setTags, ...(suggestions ? { suggestions } : {}), ...(placeholder ? { placeholder } : {}), ...(normalize ? { normalize } : {}), ...(item ? { item } : {}) }), _jsxs("div", { className: 'flex justify-end gap-2', children: [_jsx(Button, { "data-cb-cancel": true, variant: 'secondary', onClick: onCancel, disabled: loading, tooltip: cancelLabel, children: cancelLabel }), _jsx(Button, { "data-cb-confirm": true, variant: 'primary', onClick: () => handleSubmit(), loading: loading, tooltip: confirmLabel, children: confirmLabel })] })] }) }));
37
+ }
38
+ //# sourceMappingURL=TagsPromptDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TagsPromptDialog.js","sourceRoot":"","sources":["../../../src/react/components/TagsPromptDialog.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FolderViewMenus.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/FolderViewMenus.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAK9E,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEtE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACxB;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,SAAS,CAAC;IACjB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB,GACD;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAEtD,2FAA2F;AAC3F,wBAAgB,aAAa,CAC3B,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,GAChC,MAAM,EAAE,CAMV;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,YAAY,EAClB,GAAG,GAAE,SAAS,MAAM,EAAc,EAClC,WAAW,GAAE,MAAM,GAAG,WAAW,GAAG,IAA6C,GAChF,gBAAgB,EAAE,CAkFpB;AAgBD;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,SAAS,gBAAgB,EAAE,EAChC,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,gBAAgB,EAAE,CAYpB;AAED,kCAAkC;AAClC,wBAAgB,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAEnE;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAYpF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,UAAU,EACV,GAAG,IAAI,EACR,EAAE;IACD,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,CAAC,EAAE,EAAE,eAAe,KAAK,IAAI,CAAC;CAC3C,GAAG,SAAS,CAqEZ"}
1
+ {"version":3,"file":"FolderViewMenus.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/FolderViewMenus.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAK9E,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEtE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACxB;IACE,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,SAAS,CAAC;IACjB,8DAA8D;IAC9D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,KAAK,CAAC;CACjB,GACD;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAEtD,2FAA2F;AAC3F,wBAAgB,aAAa,CAC3B,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,GAChC,MAAM,EAAE,CAMV;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,YAAY,EAClB,GAAG,GAAE,SAAS,MAAM,EAAc,EAClC,WAAW,GAAE,MAAM,GAAG,WAAW,GAAG,IAA6C,GAChF,gBAAgB,EAAE,CAmFpB;AAgBD;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,SAAS,gBAAgB,EAAE,EAChC,MAAM,EAAE,SAAS,gBAAgB,EAAE,GAClC,gBAAgB,EAAE,CAYpB;AAED,kCAAkC;AAClC,wBAAgB,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAEnE;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAAG,SAAS,CAYpF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,UAAU,EACV,GAAG,IAAI,EACR,EAAE;IACD,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,CAAC,EAAE,EAAE,eAAe,KAAK,IAAI,CAAC;CAC3C,GAAG,SAAS,CAqEZ"}
@@ -91,6 +91,8 @@ export function folderViewMenuItems(view, node, ids = [node.id], hiddenState = v
91
91
  onClick: everywhere,
92
92
  });
93
93
  }
94
+ if (!view.tagging)
95
+ return items;
94
96
  const current = view.marks.tags[node.id] ?? [];
95
97
  items.push({
96
98
  key: 'fv-tags',
@@ -1 +1 @@
1
- {"version":3,"file":"FolderViewMenus.js","sourceRoot":"","sources":["../../../src/react/file-tree/FolderViewMenus.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FolderViewMenus.js","sourceRoot":"","sources":["../../../src/react/file-tree/FolderViewMenus.tsx"],"names":[],"mappings":"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"}
@@ -22,6 +22,8 @@ export interface FolderView {
22
22
  tags: readonly TagCount[];
23
23
  /** Whether "Hide on this device" is offered — false when the device half is not kept. */
24
24
  deviceHiding: boolean;
25
+ /** Whether a folder's menu offers "Tags…" — false when the app tags what is IN a folder instead. */
26
+ tagging: boolean;
25
27
  /** Which of the two lists hide this folder, if any. */
26
28
  hiddenIn: (id: string) => HiddenScope | null;
27
29
  /** Hide these folders — everywhere unless `scope: 'device'`. */
@@ -75,6 +77,14 @@ export interface UseFolderViewOptions {
75
77
  * `'memory'` is this page only, for an app whose folder ids may not be written to disk.
76
78
  */
77
79
  device?: 'local' | 'memory';
80
+ /**
81
+ * `false` takes "Tags…" off a folder's menu, for an app whose folder tags belong on what the
82
+ * folder holds — music, where the owner wanted *"the tags to add on a folder [to] apply to all
83
+ * the tracks in the folder instead of applying to the folder"* (forge task 3813). The app puts
84
+ * its own item on the folder's `rowMenu`; the dots of marks already kept still draw, so it can
85
+ * carry them across. Default `true`.
86
+ */
87
+ tagging?: boolean;
78
88
  }
79
89
  /** The marks, kept by the app — see {@link UseFolderViewOptions.store}. */
80
90
  export interface FolderMarksStore {
@@ -82,5 +92,5 @@ export interface FolderMarksStore {
82
92
  marks: string | null;
83
93
  write: (next: string | null) => void;
84
94
  }
85
- export declare function useFolderView({ key, store, device }: UseFolderViewOptions): FolderView;
95
+ export declare function useFolderView({ key, store, device, tagging }: UseFolderViewOptions): FolderView;
86
96
  //# sourceMappingURL=useFolderView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFolderView.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/useFolderView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useFolderView.d.ts","sourceRoot":"","sources":["../../../src/react/file-tree/useFolderView.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@
32
32
  import { useCallback, useMemo, useRef, useState } from 'react';
33
33
  import { useRememberedPreference } from '../media-gallery/rememberedPreference.js';
34
34
  import { hiddenScope, normalizeTag, parseFolderMarks, parseFolderViewLocal, serializeFolderMarks, setFolderTags, setHidden, setTagFilter, tagCounts, toggleFolderTag, } from './folderView.js';
35
- export function useFolderView({ key, store, device = 'local' }) {
35
+ export function useFolderView({ key, store, device = 'local', tagging = true }) {
36
36
  // Hooks run unconditionally; an undefined key is the remembered preference that keeps nothing.
37
37
  const [rememberedMarks, rememberMarks] = useRememberedPreference(store ? undefined : key);
38
38
  const [rememberedLocal, rememberLocal] = useRememberedPreference(device === 'local' ? `${key}:device` : undefined, { announce: false });
@@ -78,6 +78,7 @@ export function useFolderView({ key, store, device = 'local' }) {
78
78
  local,
79
79
  tags,
80
80
  deviceHiding,
81
+ tagging,
81
82
  hiddenIn: (id) => hiddenScope(marks, local, id),
82
83
  hide: (ids, options) => {
83
84
  if (options?.scope === 'device' && deviceHiding)
@@ -115,6 +116,6 @@ export function useFolderView({ key, store, device = 'local' }) {
115
116
  openTagEditor: (ids, at) => setPanel({ kind: 'tags', at: at ?? null, ids }),
116
117
  closePanel: () => setPanel(null),
117
118
  onContextMenu,
118
- }), [marks, local, tags, deviceHiding, panel, saveMarks, saveLocal, onContextMenu]);
119
+ }), [marks, local, tags, deviceHiding, tagging, panel, saveMarks, saveLocal, onContextMenu]);
119
120
  }
120
121
  //# sourceMappingURL=useFolderView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useFolderView.js","sourceRoot":"","sources":["../../../src/react/file-tree/useFolderView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useFolderView.js","sourceRoot":"","sources":["../../../src/react/file-tree/useFolderView.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,16 @@
21
21
  * document listener can read it as a press outside the menu that just opened and shut it;
22
22
  * · `-webkit-touch-callout: none` while bound, so iOS does not put its own callout on top;
23
23
  * · a press inside `ignore` (a selector) is not a hold — the file tree's grip, where a finger
24
- * that stays down is about to drag.
24
+ * that stays down is about to drag;
25
+ * · 🔴 a press that ENDED is never a hold, wherever its end was heard. The owner, 2026-10-27, on
26
+ * music: *"clicking open folder is blocking the view with a popup that says 'Show hidden
27
+ * folders' and 'Collapse all folders' … clicking a folder to open or close it should not
28
+ * popup a menu."* A tap that opens a folder re-renders what was under the finger, and a lift
29
+ * can then reach a node that is gone, or an element that captured the pointer, without ever
30
+ * bubbling through the bound one — so the timer outlived the tap and fired the heading's view
31
+ * menu half a second later. So while a hold is pending the lift, the cancel, a scroll and the
32
+ * tap's own `click` are heard at the WINDOW, and the hold fires only if what was pressed is
33
+ * still under the finger (a layout that moved under a resting finger is not a hold on it).
25
34
  */
26
35
  /** How long a finger must stay down — iOS's own long-press duration. */
27
36
  export declare const LONG_PRESS_MS = 500;
@@ -1 +1 @@
1
- {"version":3,"file":"longPressContextMenu.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/longPressContextMenu.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAOH,wEAAwE;AACxE,eAAO,MAAM,aAAa,MAAM,CAAC;AACjC,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAIpC,8DAA8D;AAC9D,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,EACpB,EAAE,OAAuB,EAAE,MAAM,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9E,MAAM,IAAI,CA4FZ"}
1
+ {"version":3,"file":"longPressContextMenu.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/longPressContextMenu.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAOH,wEAAwE;AACxE,eAAO,MAAM,aAAa,MAAM,CAAC;AACjC,6DAA6D;AAC7D,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAIpC,8DAA8D;AAC9D,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,WAAW,EACpB,EAAE,OAAuB,EAAE,MAAM,EAAE,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9E,MAAM,IAAI,CAuHZ"}
@@ -21,7 +21,16 @@
21
21
  * document listener can read it as a press outside the menu that just opened and shut it;
22
22
  * · `-webkit-touch-callout: none` while bound, so iOS does not put its own callout on top;
23
23
  * · a press inside `ignore` (a selector) is not a hold — the file tree's grip, where a finger
24
- * that stays down is about to drag.
24
+ * that stays down is about to drag;
25
+ * · 🔴 a press that ENDED is never a hold, wherever its end was heard. The owner, 2026-10-27, on
26
+ * music: *"clicking open folder is blocking the view with a popup that says 'Show hidden
27
+ * folders' and 'Collapse all folders' … clicking a folder to open or close it should not
28
+ * popup a menu."* A tap that opens a folder re-renders what was under the finger, and a lift
29
+ * can then reach a node that is gone, or an element that captured the pointer, without ever
30
+ * bubbling through the bound one — so the timer outlived the tap and fired the heading's view
31
+ * menu half a second later. So while a hold is pending the lift, the cancel, a scroll and the
32
+ * tap's own `click` are heard at the WINDOW, and the hold fires only if what was pressed is
33
+ * still under the finger (a layout that moved under a resting finger is not a hold on it).
25
34
  */
26
35
  /*
27
36
  * 🔴 No runtime import, React's included: a rail heading loads this module LAZILY (forge task
@@ -44,11 +53,34 @@ export function bindLongPressContextMenu(element, { delayMs = LONG_PRESS_MS, ign
44
53
  /** Until when a native `contextmenu` and a `click` are the aftermath of OUR menu. */
45
54
  let firedUntil = 0;
46
55
  let dispatching = false;
56
+ /** The window-wide ears of a pending hold — bound at the press, dropped with the timer. */
57
+ const onWindowEnd = (event) => {
58
+ // Another finger lifting is not this press ending.
59
+ const id = event.pointerId;
60
+ if (id !== undefined && id !== pointerId)
61
+ return;
62
+ cancel();
63
+ };
64
+ const onWindowTap = () => cancel();
65
+ const listen = (on) => {
66
+ const method = on ? 'addEventListener' : 'removeEventListener';
67
+ window[method]('pointerup', onWindowEnd, true);
68
+ window[method]('pointercancel', onWindowEnd, true);
69
+ window[method]('click', onWindowTap, true);
70
+ window[method]('scroll', onWindowTap, true);
71
+ };
47
72
  const cancel = () => {
48
- if (timer !== undefined)
73
+ if (timer !== undefined) {
49
74
  clearTimeout(timer);
75
+ listen(false);
76
+ }
50
77
  timer = undefined;
51
78
  };
79
+ /** Is what was pressed still what the finger rests on? `null` (no layout to ask) is a yes. */
80
+ const stillUnderFinger = (pressed) => {
81
+ const at = globalThis.document?.elementFromPoint?.(startX, startY);
82
+ return !at || pressed.contains(at) || at.contains(pressed);
83
+ };
52
84
  const swallowClick = (event) => {
53
85
  window.removeEventListener('click', swallowClick, true);
54
86
  if (Date.now() > firedUntil)
@@ -58,7 +90,8 @@ export function bindLongPressContextMenu(element, { delayMs = LONG_PRESS_MS, ign
58
90
  };
59
91
  const fire = () => {
60
92
  timer = undefined;
61
- if (!(target instanceof Element) || !target.isConnected)
93
+ listen(false);
94
+ if (!(target instanceof Element) || !target.isConnected || !stillUnderFinger(target))
62
95
  return;
63
96
  firedUntil = Date.now() + AFTERMATH_MS;
64
97
  window.addEventListener('click', swallowClick, true);
@@ -89,6 +122,7 @@ export function bindLongPressContextMenu(element, { delayMs = LONG_PRESS_MS, ign
89
122
  startY = event.clientY;
90
123
  target = event.target;
91
124
  timer = setTimeout(fire, delayMs);
125
+ listen(true);
92
126
  };
93
127
  const onMove = (event) => {
94
128
  if (timer === undefined || event.pointerId !== pointerId)
@@ -1 +1 @@
1
- {"version":3,"file":"longPressContextMenu.js","sourceRoot":"","sources":["../../../src/react/hooks/longPressContextMenu.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"longPressContextMenu.js","sourceRoot":"","sources":["../../../src/react/hooks/longPressContextMenu.ts"],"names":[],"mappings":"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"}
@@ -202,6 +202,9 @@ export { ShareEditor, type ShareEditorProps } from './components/sharing/ShareEd
202
202
  export { DEFAULT_SHARE_LEVELS, type ShareGrantRow, type SharePermissionLevel, type ShareRecipient, type ShareRecipientKind, type ShareTargetRef, } from './components/sharing/types.js';
203
203
  export { type TabItem, Tabs, type TabsProps } from './components/Tabs.js';
204
204
  export { TagsInput, type TagsInputProps } from './components/TagsInput.js';
205
+ export { TagsEditor, type TagsEditorProps } from './components/TagsEditor.js';
206
+ export { TagsPromptDialog, type TagsPromptDialogProps } from './components/TagsPromptDialog.js';
207
+ export { mergeTagLists, parseTagList, tagListText } from './lib/tagList.js';
205
208
  export { TagStrip, type TagStripProps, type TagStripTag } from './components/TagStrip.js';
206
209
  export { Tooltip, TooltipDelay, type TooltipMobile, type TooltipPlacement, type TooltipProps, } from './components/Tooltip.js';
207
210
  export { type TreeNode, type TreeSection, type TreeSelectionMode, TreeView, type TreeViewProps, } from './components/TreeView.js';