cursedbelt 5.78.0 → 5.79.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.
- package/dist/react/canvas-hud/HudControls.d.ts +8 -2
- package/dist/react/canvas-hud/HudControls.d.ts.map +1 -1
- package/dist/react/canvas-hud/HudControls.js +6 -3
- package/dist/react/canvas-hud/HudControls.js.map +1 -1
- package/dist/react/components/AppShell.d.ts +14 -0
- package/dist/react/components/AppShell.d.ts.map +1 -1
- package/dist/react/components/AppShell.js +7 -31
- package/dist/react/components/AppShell.js.map +1 -1
- package/dist/react/components/ChipFilterStrip.d.ts.map +1 -1
- package/dist/react/components/ChipFilterStrip.js +2 -18
- package/dist/react/components/ChipFilterStrip.js.map +1 -1
- package/dist/react/components/FileDropZone.d.ts.map +1 -1
- package/dist/react/components/FileDropZone.js +4 -1
- package/dist/react/components/FileDropZone.js.map +1 -1
- package/dist/react/components/KanbanBoard.d.ts +55 -0
- package/dist/react/components/KanbanBoard.d.ts.map +1 -0
- package/dist/react/components/KanbanBoard.js +89 -0
- package/dist/react/components/KanbanBoard.js.map +1 -0
- package/dist/react/components/ResponsiveWorkbench.d.ts +14 -1
- package/dist/react/components/ResponsiveWorkbench.d.ts.map +1 -1
- package/dist/react/components/ResponsiveWorkbench.js +33 -4
- package/dist/react/components/ResponsiveWorkbench.js.map +1 -1
- package/dist/react/components/SelectField.d.ts +18 -48
- package/dist/react/components/SelectField.d.ts.map +1 -1
- package/dist/react/components/SelectField.js +88 -11
- package/dist/react/components/SelectField.js.map +1 -1
- package/dist/react/components/SelectFieldImpl.d.ts +7 -0
- package/dist/react/components/SelectFieldImpl.d.ts.map +1 -0
- package/dist/react/components/SelectFieldImpl.js +26 -0
- package/dist/react/components/SelectFieldImpl.js.map +1 -0
- package/dist/react/components/filterChip.d.ts +8 -0
- package/dist/react/components/filterChip.d.ts.map +1 -0
- package/dist/react/components/filterChip.js +20 -0
- package/dist/react/components/filterChip.js.map +1 -0
- package/dist/react/hooks/pointerDnd.d.ts +37 -3
- package/dist/react/hooks/pointerDnd.d.ts.map +1 -1
- package/dist/react/hooks/pointerDnd.js +101 -9
- package/dist/react/hooks/pointerDnd.js.map +1 -1
- package/dist/react/hooks/pragmaticDnd.d.ts +4 -1
- package/dist/react/hooks/pragmaticDnd.d.ts.map +1 -1
- package/dist/react/hooks/pragmaticDnd.js +9 -3
- package/dist/react/hooks/pragmaticDnd.js.map +1 -1
- package/dist/react/hooks/usePublishedBottomChrome.d.ts +12 -0
- package/dist/react/hooks/usePublishedBottomChrome.d.ts.map +1 -0
- package/dist/react/hooks/usePublishedBottomChrome.js +31 -0
- package/dist/react/hooks/usePublishedBottomChrome.js.map +1 -0
- package/dist/react/index.d.ts +3 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +3 -0
- package/dist/react/index.js.map +1 -1
- package/dist/react/lib/selectField.d.ts +72 -0
- package/dist/react/lib/selectField.d.ts.map +1 -0
- package/dist/react/lib/selectField.js +23 -0
- package/dist/react/lib/selectField.js.map +1 -0
- package/dist/react/media/VideoChapterEditor.d.ts.map +1 -1
- package/dist/react/media/VideoChapterEditor.js +2 -1
- package/dist/react/media/VideoChapterEditor.js.map +1 -1
- package/dist/react/media/VideoCutEditor.d.ts.map +1 -1
- package/dist/react/media/VideoCutEditor.js +2 -1
- package/dist/react/media/VideoCutEditor.js.map +1 -1
- package/dist/react/media/denseGallery.css +2 -0
- package/dist/react/media-gallery/MediaGallery.d.ts.map +1 -1
- package/dist/react/media-gallery/MediaGallery.js +6 -7
- package/dist/react/media-gallery/MediaGallery.js.map +1 -1
- package/dist/react/media-gallery/MediaMetaEditor.d.ts.map +1 -1
- package/dist/react/media-gallery/MediaMetaEditor.js +2 -1
- package/dist/react/media-gallery/MediaMetaEditor.js.map +1 -1
- package/dist/react/nav/CommandBar.d.ts.map +1 -1
- package/dist/react/nav/CommandBar.js +2 -1
- package/dist/react/nav/CommandBar.js.map +1 -1
- package/dist/react/palette/CommandPalette.d.ts +15 -1
- package/dist/react/palette/CommandPalette.d.ts.map +1 -1
- package/dist/react/palette/CommandPalette.js +58 -8
- package/dist/react/palette/CommandPalette.js.map +1 -1
- package/dist/react/palette/Kbd.d.ts +15 -0
- package/dist/react/palette/Kbd.d.ts.map +1 -0
- package/dist/react/palette/Kbd.js +17 -0
- package/dist/react/palette/Kbd.js.map +1 -0
- package/dist/react/palette/ShortcutSheet.d.ts +30 -0
- package/dist/react/palette/ShortcutSheet.d.ts.map +1 -0
- package/dist/react/palette/ShortcutSheet.js +15 -0
- package/dist/react/palette/ShortcutSheet.js.map +1 -0
- package/dist/react/palette/commandSources.d.ts +14 -0
- package/dist/react/palette/commandSources.d.ts.map +1 -1
- package/dist/react/palette/commandSources.js +11 -1
- package/dist/react/palette/commandSources.js.map +1 -1
- package/dist/react/palette/index.d.ts +4 -2
- package/dist/react/palette/index.d.ts.map +1 -1
- package/dist/react/palette/index.js +2 -0
- package/dist/react/palette/index.js.map +1 -1
- package/dist/scripts/guardrailsEnforce.d.ts.map +1 -1
- package/dist/styles-areas/canvas-hud.css +2 -2
- package/dist/styles-areas/kanban.css +31 -0
- package/dist/styles-areas/palette.css +3 -3
- package/dist/styles-areas/workbench.css +15 -13
- package/dist/styles-utilities.css +42 -0
- package/package.json +4 -3
- package/scripts/guardrails-baseline.json +2 -1
- package/scripts/guardrailsEnforce.spec.ts +62 -0
- package/scripts/guardrailsEnforce.ts +77 -6
- package/scripts/styleAreas.ts +2 -0
- package/src/react/canvas-hud/HudControls.spec.tsx +11 -0
- package/src/react/canvas-hud/HudControls.tsx +33 -9
- package/src/react/components/AppShell.spec.tsx +40 -0
- package/src/react/components/AppShell.tsx +25 -27
- package/src/react/components/ChipFilterStrip.tsx +2 -38
- package/src/react/components/FileDropZone.spec.tsx +16 -0
- package/src/react/components/FileDropZone.tsx +3 -1
- package/src/react/components/KanbanBoard.spec.tsx +89 -0
- package/src/react/components/KanbanBoard.tsx +270 -0
- package/src/react/components/ResponsiveWorkbench.spec.tsx +57 -0
- package/src/react/components/ResponsiveWorkbench.tsx +69 -4
- package/src/react/components/SelectField.spec.tsx +117 -0
- package/src/react/components/SelectField.tsx +131 -166
- package/src/react/components/SelectFieldImpl.tsx +140 -0
- package/src/react/components/filterChip.tsx +43 -0
- package/src/react/hooks/pointerDnd.spec.ts +89 -3
- package/src/react/hooks/pointerDnd.ts +103 -8
- package/src/react/hooks/pragmaticDnd.ts +13 -2
- package/src/react/hooks/usePublishedBottomChrome.ts +30 -0
- package/src/react/hooks/useScrollMemory.spec.tsx +7 -5
- package/src/react/index.ts +3 -0
- package/src/react/lib/floatingStyles.spec.ts +1 -1
- package/src/react/lib/selectField.ts +96 -0
- package/src/react/media/VideoChapterEditor.tsx +3 -2
- package/src/react/media/VideoCutEditor.tsx +3 -2
- package/src/react/media/denseGallery.css +2 -0
- package/src/react/media-gallery/MediaGallery.spec.tsx +15 -11
- package/src/react/media-gallery/MediaGallery.tsx +16 -18
- package/src/react/media-gallery/MediaMetaEditor.tsx +2 -1
- package/src/react/nav/CommandBar.tsx +2 -3
- package/src/react/palette/CommandPalette.spec.tsx +73 -0
- package/src/react/palette/CommandPalette.tsx +153 -13
- package/src/react/palette/Kbd.tsx +46 -0
- package/src/react/palette/ShortcutSheet.spec.tsx +58 -0
- package/src/react/palette/ShortcutSheet.tsx +110 -0
- package/src/react/palette/commandSources.tsx +30 -1
- package/src/react/palette/index.ts +9 -0
- package/src/styles-areas/canvas-hud.css +2 -2
- package/src/styles-areas/kanban.css +31 -0
- package/src/styles-areas/palette.css +3 -3
- package/src/styles-areas/workbench.css +15 -13
- package/src/styles-utilities.css +42 -0
|
@@ -7,6 +7,7 @@ import { FieldLabel } from '../components/FieldLabel.js';
|
|
|
7
7
|
import { InfoHint } from '../components/InfoHint.js';
|
|
8
8
|
import { Modal } from '../components/Modal.js';
|
|
9
9
|
import { TagsInput } from '../components/TagsInput.js';
|
|
10
|
+
import { Kbd } from '../palette/Kbd.js';
|
|
10
11
|
import { cleanTags, isEmptyMetaChange, tagDiff, tagsOn, } from './mediaMeta.js';
|
|
11
12
|
export function MediaMetaEditor({ items, suggestions, open = true, onClose, onSubmit, }) {
|
|
12
13
|
const single = items.length === 1 ? items[0] : undefined;
|
|
@@ -55,7 +56,7 @@ export function MediaMetaEditor({ items, suggestions, open = true, onClose, onSu
|
|
|
55
56
|
? 'Nothing has changed yet'
|
|
56
57
|
: single
|
|
57
58
|
? 'Save these tags and this description'
|
|
58
|
-
: `Apply this to all ${items.length} items in one go`, children: saving ? 'Saving…' : 'Save' })] }) }), children: _jsx("div", { className: 'cbmm', children: single ? (_jsxs(_Fragment, { children: [_jsxs("div", { className: 'cbmm-field', children: [_jsx(FieldLabel, { hint: _jsxs(_Fragment, { children: ["Tags are how this file is found again: each one becomes a chip above the grid that filters the album down to the things wearing it. Type and press", ' ', _jsx(
|
|
59
|
+
: `Apply this to all ${items.length} items in one go`, children: saving ? 'Saving…' : 'Save' })] }) }), children: _jsx("div", { className: 'cbmm', children: single ? (_jsxs(_Fragment, { children: [_jsxs("div", { className: 'cbmm-field', children: [_jsx(FieldLabel, { hint: _jsxs(_Fragment, { children: ["Tags are how this file is found again: each one becomes a chip above the grid that filters the album down to the things wearing it. Type and press", ' ', _jsx(Kbd, { children: "Enter" }), ", or pick one already in use."] }), children: "Tags" }), _jsx(TagsInput, { value: tags, onChange: setTags, "aria-label": `Tags for ${single.name}`, placeholder: 'Add a tag\u2026', ...(suggestions ? { suggestions } : {}) })] }), _jsxs("div", { className: 'cbmm-field', children: [_jsx(FieldLabel, { children: "Description" }), _jsx(AutoGrowTextarea, { value: description, onChange: (event) => setDescription(event.currentTarget.value), "aria-label": `Description of ${single.name}`, placeholder: 'What is this, and why did you keep it?', maxLength: 2_000 })] })] })) : (_jsxs(_Fragment, { children: [_jsxs("p", { className: 'cbmm-count', children: [items.length, " items ticked.", _jsxs(InfoHint, { title: 'Tagging a selection', align: 'right', children: [_jsxs("p", { children: ["Whatever you add here is added to ", _jsx("strong", { children: "every" }), " item you ticked, and whatever you remove is removed from all of them \u2014 one request, not one per file."] }), _jsx("p", { children: "Tags each item already has are left alone, and a tag that differs only in capitalisation from one it already has is not added twice." }), _jsx("p", { children: "There is no description field here on purpose: one sentence cannot describe several files. Open one on its own to describe it." })] })] }), _jsxs("div", { className: 'cbmm-field', children: [_jsx(FieldLabel, { children: "Add tags" }), _jsx(TagsInput, { value: addTags, onChange: setAddTags, "aria-label": `Tags to add to all ${items.length} selected items`, placeholder: 'Add a tag to all of them\u2026', ...(suggestions ? { suggestions } : {}) })] }), _jsxs("div", { className: 'cbmm-field', children: [_jsx(FieldLabel, { children: "Remove tags" }), _jsx(TagsInput, { value: removeTags, onChange: setRemoveTags, "aria-label": `Tags to remove from all ${items.length} selected items`, placeholder: onSelection.length > 0
|
|
59
60
|
? 'Take a tag off all of them…'
|
|
60
61
|
: 'None of these have a tag yet', disabled: onSelection.length === 0,
|
|
61
62
|
// Only what is actually ON the selection: offering the whole album's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MediaMetaEditor.js","sourceRoot":"","sources":["../../../src/react/media-gallery/MediaMetaEditor.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MediaMetaEditor.js","sourceRoot":"","sources":["../../../src/react/media-gallery/MediaMetaEditor.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandBar.d.ts","sourceRoot":"","sources":["../../../src/react/nav/CommandBar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"CommandBar.d.ts","sourceRoot":"","sources":["../../../src/react/nav/CommandBar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,6FAA6F;IAC7F,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oFAAoF;IACpF,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,YAAwB,EACxB,aAAa,EACb,kBAA+C,EAC/C,WAAkB,EAClB,KAAK,EACL,kBAA0B,EAC1B,OAAe,EACf,SAAS,GACV,EAAE,eAAe,+BA0DjB"}
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Plus, Search } from 'lucide-react';
|
|
3
3
|
import { Button } from '../components/Button.js';
|
|
4
4
|
import { cn } from '../lib/cn.js';
|
|
5
|
+
import { Kbd } from '../palette/Kbd.js';
|
|
5
6
|
/**
|
|
6
7
|
* The command + capture **spine** — the co-equal, *visible* second way to move
|
|
7
8
|
* (UX north-star §7) and the home of universal capture (§8.2). Unlike the old shell
|
|
@@ -23,7 +24,7 @@ export function CommandBar({ onCapture, captureLabel = 'Capture', onOpenCommand,
|
|
|
23
24
|
// (owner orch-host 390px teardown — measured 40×44).
|
|
24
25
|
compact
|
|
25
26
|
? 'w-10 flex-none justify-center px-0 pointer-coarse:min-w-11'
|
|
26
|
-
: 'max-sm:w-10 max-sm:flex-none max-sm:justify-center max-sm:px-0 pointer-coarse:min-w-11'), children: [_jsx("span", { className: cn('hidden min-w-0 flex-1 truncate text-left text-sm', !compact && 'sm:inline'), children: commandPlaceholder }), commandHint != null && !compact && (_jsx(
|
|
27
|
+
: 'max-sm:w-10 max-sm:flex-none max-sm:justify-center max-sm:px-0 pointer-coarse:min-w-11'), children: [_jsx("span", { className: cn('hidden min-w-0 flex-1 truncate text-left text-sm', !compact && 'sm:inline'), children: commandPlaceholder }), commandHint != null && !compact && (_jsx(Kbd, { className: 'hidden shrink-0 items-center sm:inline-flex', children: commandHint }))] })), onCapture && (_jsx(Button, { type: 'button', "data-cb-capture": '', variant: 'primary',
|
|
27
28
|
// `lg` (40px) to match the command field's `h-10` beside it: one row, one control
|
|
28
29
|
// height (design law FND-4) — at `md` the hero sat 4px short of the field it leads.
|
|
29
30
|
size: 'lg', leftIcon: _jsx(Plus, {}), onClick: onCapture, className: cn('shrink-0', captureDesktopOnly && 'hidden sm:inline-flex'), tooltip: captureLabel, children: captureLabel })), extra && _jsx("div", { className: 'shrink-0', children: extra })] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandBar.js","sourceRoot":"","sources":["../../../src/react/nav/CommandBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"CommandBar.js","sourceRoot":"","sources":["../../../src/react/nav/CommandBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAsCxC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,UAAU,CAAC,EACzB,SAAS,EACT,YAAY,GAAG,SAAS,EACxB,aAAa,EACb,kBAAkB,GAAG,0BAA0B,EAC/C,WAAW,GAAG,IAAI,EAClB,KAAK,EACL,kBAAkB,GAAG,KAAK,EAC1B,OAAO,GAAG,KAAK,EACf,SAAS,GACO;IAChB,OAAO,CACL,qCAAwB,EAAE,EAAC,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,SAAS,CAAC,aAC3E,aAAa,IAAI,CAChB,MAAC,MAAM,IACL,OAAO,EAAC,OAAO,EACf,OAAO,EAAC,sBAAsB,6BACN,EAAE,EAC1B,OAAO,EAAE,aAAa,uBACJ,kBAAkB,gBAExB,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,EACpD,QAAQ,EAAE,KAAC,MAAM,IAAC,SAAS,EAAC,iBAAiB,iBAAa,MAAM,GAAG,EACnE,SAAS,EAAE,EAAE,CACX,4JAA4J;gBAC5J,yEAAyE;gBACzE,oEAAoE;gBACpE,sEAAsE;gBACtE,yEAAyE;gBACzE,uEAAuE;gBACvE,qDAAqD;gBACrD,OAAO;oBACL,CAAC,CAAC,4DAA4D;oBAC9D,CAAC,CAAC,wFAAwF,CAC7F,aAKD,eAAM,SAAS,EAAE,EAAE,CAAC,kDAAkD,EAAE,CAAC,OAAO,IAAI,WAAW,CAAC,YAC7F,kBAAkB,GACd,EACN,WAAW,IAAI,IAAI,IAAI,CAAC,OAAO,IAAI,CAClC,KAAC,GAAG,IAAC,SAAS,EAAC,6CAA6C,YAAE,WAAW,GAAO,CACjF,IACM,CACV,EAEA,SAAS,IAAI,CACZ,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,qBACG,EAAE,EAClB,OAAO,EAAC,SAAS;gBACjB,kFAAkF;gBAClF,oFAAoF;gBACpF,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,KAAC,IAAI,KAAG,EAClB,OAAO,EAAE,SAAS,EAClB,SAAS,EAAE,EAAE,CAAC,UAAU,EAAE,kBAAkB,IAAI,uBAAuB,CAAC,EACxE,OAAO,EAAE,YAAY,YAEpB,YAAY,GACN,CACV,EAEA,KAAK,IAAI,cAAK,SAAS,EAAC,UAAU,YAAE,KAAK,GAAO,IAC7C,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -56,6 +56,12 @@ export interface CommandPaletteProps {
|
|
|
56
56
|
* actions also show in the cold state.
|
|
57
57
|
*/
|
|
58
58
|
sources?: readonly CommandSource[];
|
|
59
|
+
/**
|
|
60
|
+
* A key-hint row along the palette's foot: ↑↓ Navigate · ↵ Open, the highlighted row's own
|
|
61
|
+
* chords (its `actions` — "⌘C Copy secret"), then these. A hint with `onSelect` is a button
|
|
62
|
+
* (the vault's "? Shortcuts" opens its sheet). Omit for no footer, the default.
|
|
63
|
+
*/
|
|
64
|
+
hints?: readonly CommandPaletteHint[];
|
|
59
65
|
/** Resolve model icon *names* to nodes (the app wires its icon set, e.g. lucide). */
|
|
60
66
|
resolveIcon?: IconResolver;
|
|
61
67
|
/** Max fuzzy page results. Default 30. */
|
|
@@ -65,6 +71,14 @@ export interface CommandPaletteProps {
|
|
|
65
71
|
emptyContent?: ReactNode;
|
|
66
72
|
className?: string;
|
|
67
73
|
}
|
|
74
|
+
/** One entry in the palette's foot (see {@link CommandPaletteProps.hints}). */
|
|
75
|
+
export interface CommandPaletteHint {
|
|
76
|
+
/** A binding (`'?'`, `'$mod+/'`), drawn as a key cap. */
|
|
77
|
+
keys: string;
|
|
78
|
+
label: string;
|
|
79
|
+
/** Makes the hint a button. The palette closes first. */
|
|
80
|
+
onSelect?: () => void;
|
|
81
|
+
}
|
|
68
82
|
/**
|
|
69
83
|
* The Cmd/Ctrl-K command palette overlay. Cold state (empty input): pins quick-bar +
|
|
70
84
|
* recent pages + registered shortcuts. Active state: uFuzzy-ranked pages grouped by
|
|
@@ -72,5 +86,5 @@ export interface CommandPaletteProps {
|
|
|
72
86
|
* `aria-activedescendant` selection, and active-item scrolling come from cmdk; the
|
|
73
87
|
* Radix `Dialog` traps focus and renders the backdrop.
|
|
74
88
|
*/
|
|
75
|
-
export declare function CommandPalette({ model, gate, onNavigate, open, onOpenChange, pins, onPinToggle, currentPath, pinsLimit, recentPaths, recentLimit, shortcuts, onShortcut, serverGroups, onQueryChange, searching, searchDebounceMs, places, sources, resolveIcon, pagesLimit, placeholder, emptyContent, className, }: CommandPaletteProps): import("react").JSX.Element;
|
|
89
|
+
export declare function CommandPalette({ model, gate, onNavigate, open, onOpenChange, pins, onPinToggle, currentPath, pinsLimit, recentPaths, recentLimit, shortcuts, onShortcut, serverGroups, onQueryChange, searching, searchDebounceMs, places, sources, hints, resolveIcon, pagesLimit, placeholder, emptyContent, className, }: CommandPaletteProps): import("react").JSX.Element;
|
|
76
90
|
//# sourceMappingURL=CommandPalette.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../../src/react/palette/CommandPalette.tsx"],"names":[],"mappings":"AAeA,OAAO,
|
|
1
|
+
{"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../../src/react/palette/CommandPalette.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ import { Pin, Plus } from 'lucide-react';
|
|
|
16
16
|
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
17
17
|
import { allowAllGate, deriveSearchCatalogue, deriveSideNavDomains, normalizeNavPath, } from 'cursedbelt-core/navigation';
|
|
18
18
|
import { fuzzyRankItems } from 'cursedbelt-core/palette/fuzzy-rank';
|
|
19
|
-
import {
|
|
19
|
+
import { matchHotkey } from 'cursedbelt-core/palette/hotkeys';
|
|
20
20
|
import { Button } from '../components/Button.js';
|
|
21
21
|
import { ScrollArea } from '../components/ScrollArea.js';
|
|
22
22
|
import { Spinner } from '../components/Spinner.js';
|
|
@@ -25,9 +25,11 @@ import { cn } from '../lib/cn.js';
|
|
|
25
25
|
import { DIALOG_MOTION, SCRIM_MOTION } from '../lib/overlayMotion.js';
|
|
26
26
|
import { renderIcon } from '../nav/navShared.js';
|
|
27
27
|
import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, } from './Command.js';
|
|
28
|
-
import { recentFirst, rememberCommandItem } from './commandSources.js';
|
|
28
|
+
import { recentFirst, rememberCommandItem, } from './commandSources.js';
|
|
29
|
+
import { Kbd } from './Kbd.js';
|
|
29
30
|
import { useShortcutRegistry } from './useShortcutRegistry.js';
|
|
30
31
|
import { TAP_TARGET_HEIGHT } from '../lib/tapTarget.js';
|
|
32
|
+
const NO_ROW = undefined;
|
|
31
33
|
const TOGGLE_BINDING = '$mod+k';
|
|
32
34
|
/**
|
|
33
35
|
* The Cmd/Ctrl-K command palette overlay. Cold state (empty input): pins quick-bar +
|
|
@@ -36,7 +38,7 @@ const TOGGLE_BINDING = '$mod+k';
|
|
|
36
38
|
* `aria-activedescendant` selection, and active-item scrolling come from cmdk; the
|
|
37
39
|
* Radix `Dialog` traps focus and renders the backdrop.
|
|
38
40
|
*/
|
|
39
|
-
export function CommandPalette({ model, gate = allowAllGate, onNavigate, open, onOpenChange, pins, onPinToggle, currentPath, pinsLimit = 8, recentPaths, recentLimit = 6, shortcuts, onShortcut, serverGroups, onQueryChange, searching = false, searchDebounceMs = 300, places = false, sources, resolveIcon, pagesLimit = 30, placeholder = 'Search pages, run a command…', emptyContent = 'No matches.', className, }) {
|
|
41
|
+
export function CommandPalette({ model, gate = allowAllGate, onNavigate, open, onOpenChange, pins, onPinToggle, currentPath, pinsLimit = 8, recentPaths, recentLimit = 6, shortcuts, onShortcut, serverGroups, onQueryChange, searching = false, searchDebounceMs = 300, places = false, sources, hints, resolveIcon, pagesLimit = 30, placeholder = 'Search pages, run a command…', emptyContent = 'No matches.', className, }) {
|
|
40
42
|
const [query, setQuery] = useState('');
|
|
41
43
|
const trimmed = query.trim();
|
|
42
44
|
const isCold = trimmed === '';
|
|
@@ -55,11 +57,16 @@ export function CommandPalette({ model, gate = allowAllGate, onNavigate, open, o
|
|
|
55
57
|
}
|
|
56
58
|
onQueryChangeRef.current?.(debouncedQuery);
|
|
57
59
|
}, [debouncedQuery]);
|
|
60
|
+
// The highlighted row's cmdk value — controlled, so a row's chords (`actions`) and the footer's
|
|
61
|
+
// hints can follow the highlight.
|
|
62
|
+
const [selected, setSelected] = useState('');
|
|
58
63
|
// Reset the query each time the palette closes so it reopens cold (the Radix Dialog
|
|
59
64
|
// unmounts its content, but this component stays mounted and holds the state).
|
|
60
65
|
useEffect(() => {
|
|
61
|
-
if (!open)
|
|
66
|
+
if (!open) {
|
|
62
67
|
setQuery('');
|
|
68
|
+
setSelected('');
|
|
69
|
+
}
|
|
63
70
|
}, [open]);
|
|
64
71
|
// ── Derivations off the registry ──────────────────────────────────────────
|
|
65
72
|
const catalogue = useMemo(() => deriveSearchCatalogue(model, gate), [model, gate]);
|
|
@@ -137,6 +144,37 @@ export function CommandPalette({ model, gate = allowAllGate, onNavigate, open, o
|
|
|
137
144
|
})
|
|
138
145
|
.filter((group) => group.items.length > 0);
|
|
139
146
|
}, [sources, isCold, trimmed, open]);
|
|
147
|
+
/** Every contributed row with chords, by its cmdk value (see `SourceGroups`). */
|
|
148
|
+
const rowActions = useMemo(() => {
|
|
149
|
+
const map = new Map();
|
|
150
|
+
for (const group of sourceGroups) {
|
|
151
|
+
for (const item of group.items) {
|
|
152
|
+
if (item.actions?.length) {
|
|
153
|
+
map.set(sourceValue(group.key, item.id), { group: group.label, id: item.id, actions: item.actions });
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return map;
|
|
158
|
+
}, [sourceGroups]);
|
|
159
|
+
const selectedRow = rowActions.get(selected) ?? NO_ROW;
|
|
160
|
+
/**
|
|
161
|
+
* A highlighted row's chord runs its action and closes the palette. 🔴 A chord the input itself
|
|
162
|
+
* answers stays the input's: ⌘C over SELECTED query text copies that text, never the row.
|
|
163
|
+
*/
|
|
164
|
+
const onPaletteKeyDown = (event) => {
|
|
165
|
+
if (!selectedRow || event.defaultPrevented)
|
|
166
|
+
return;
|
|
167
|
+
const action = selectedRow.actions.find((a) => matchHotkey(event.nativeEvent, a.keys));
|
|
168
|
+
if (!action)
|
|
169
|
+
return;
|
|
170
|
+
const field = event.target;
|
|
171
|
+
if (typeof field.selectionStart === 'number' && field.selectionStart !== field.selectionEnd)
|
|
172
|
+
return;
|
|
173
|
+
event.preventDefault();
|
|
174
|
+
rememberCommandItem(selectedRow.group, selectedRow.id);
|
|
175
|
+
action.run();
|
|
176
|
+
onOpenChange(false);
|
|
177
|
+
};
|
|
140
178
|
// ── Actions ───────────────────────────────────────────────────────────────
|
|
141
179
|
const runSource = (group, item) => {
|
|
142
180
|
rememberCommandItem(group, item.id);
|
|
@@ -165,12 +203,15 @@ export function CommandPalette({ model, gate = allowAllGate, onNavigate, open, o
|
|
|
165
203
|
// Let cmdk's input keep the autofocus (Radix would otherwise focus the
|
|
166
204
|
// content wrapper); the input has `autoFocus`, so just don't fight it.
|
|
167
205
|
e.preventDefault();
|
|
168
|
-
}, className: cn('fixed left-1/2 top-[var(--palette-top)] z-50 w-[calc(100%-2rem)] max-w-2xl -translate-x-1/2', DIALOG_MOTION, className), children: [_jsx(Dialog.Title, { className: 'sr-only', children: "Command palette" }), _jsx(Dialog.Description, { className: 'sr-only', children: "Search pages, jump to recents and pins, or run a keyboard shortcut." }), _jsxs(Command, { shouldFilter: false, loop: true, label: 'Command palette', className: 'rounded-xl border border-border shadow-[var(--shadow-overlay)]', children: [_jsx(CommandInput, { value: query, onValueChange: setQuery, autoFocus: true, placeholder: placeholder, "aria-label": 'Search pages and commands', trailing: _jsxs(_Fragment, { children: [showSpinner && _jsx(Spinner, { size: 'sm' }), _jsx(
|
|
206
|
+
}, className: cn('fixed left-1/2 top-[var(--palette-top)] z-50 w-[calc(100%-2rem)] max-w-2xl -translate-x-1/2', DIALOG_MOTION, className), children: [_jsx(Dialog.Title, { className: 'sr-only', children: "Command palette" }), _jsx(Dialog.Description, { className: 'sr-only', children: "Search pages, jump to recents and pins, or run a keyboard shortcut." }), _jsxs(Command, { shouldFilter: false, loop: true, value: selected, onValueChange: setSelected, onKeyDown: onPaletteKeyDown, label: 'Command palette', className: 'rounded-xl border border-border shadow-[var(--shadow-overlay)]', children: [_jsx(CommandInput, { value: query, onValueChange: setQuery, autoFocus: true, placeholder: placeholder, "aria-label": 'Search pages and commands', trailing: _jsxs(_Fragment, { children: [showSpinner && _jsx(Spinner, { size: 'sm' }), _jsx(Kbd, { keys: TOGGLE_BINDING, className: 'hidden sm:inline-block' })] }) }), showPinsBar && (_jsx(PinsQuickBar, { items: pinnedItems, resolveIcon: resolveIcon, onNavigate: go, onUnpin: onPinToggle ? (path) => onPinToggle(path, false) : undefined, onPinCurrent: canPinCurrent && currentPath && onPinToggle
|
|
169
207
|
? () => onPinToggle(currentPath, true)
|
|
170
208
|
: undefined })), _jsx(CommandList, { children: isCold ? (_jsxs(_Fragment, { children: [_jsx(ColdState, { recent: recentItems, places: placeEntries, shortcuts: matchedShortcuts, resolveIcon: resolveIcon, onNavigate: go, onRunShortcut: runShortcut, hasPins: pinnedItems.length > 0, hasSources: sourceGroups.length > 0 }), _jsx(SourceGroups, { groups: sourceGroups, onRun: runSource })] })) : (_jsxs(_Fragment, { children: [_jsx(CommandEmpty, { children: emptyContent }), pageGroups.map((group) => (_jsx(CommandGroup, { heading: group.label, children: group.items.map((item) => (_jsx(CommandItem, { value: `page:${item.id}`, onSelect: () => go(item.path), children: _jsx(ItemBody, { icon: renderIcon(resolveIcon, item.icon), label: item.label,
|
|
171
209
|
// What the page HOLDS, first: the group heading above already names
|
|
172
210
|
// its place, and a hit found by a word in its description should show it.
|
|
173
|
-
sub: item.description ?? item.groupLabel ?? item.domainLabel }) }, item.id))) }, `pages-${group.id || 'misc'}`))), serverGroups?.map((group) => group.items.length === 0 ? null : (_jsx(CommandGroup, { heading: group.label, children: group.items.map((row) => (_jsx(CommandItem, { value: `server:${group.key}:${row.id}`, onSelect: () => go(row.path), children: _jsx(ItemBody, { icon: row.iconNode ?? renderIcon(resolveIcon, row.icon), label: row.label, sub: row.sub, trailing: row.badge }) }, `${group.key}:${row.id}`))) }, `server-${group.key}`))), _jsx(SourceGroups, { groups: sourceGroups, onRun: runSource }), matchedShortcuts.length > 0 && (_jsx(CommandGroup, { heading: 'Shortcuts', children: matchedShortcuts.map((shortcut) => (_jsx(CommandItem, { value: `shortcut:${shortcut.keys}`, onSelect: () => runShortcut(shortcut), children: _jsx(ItemBody, { label: shortcut.label, sub: shortcut.action, trailing: _jsx(KeyHint, { keys: shortcut.keys }) }) }, `shortcut:${shortcut.keys}`))) }))] })) })
|
|
211
|
+
sub: item.description ?? item.groupLabel ?? item.domainLabel }) }, item.id))) }, `pages-${group.id || 'misc'}`))), serverGroups?.map((group) => group.items.length === 0 ? null : (_jsx(CommandGroup, { heading: group.label, children: group.items.map((row) => (_jsx(CommandItem, { value: `server:${group.key}:${row.id}`, onSelect: () => go(row.path), children: _jsx(ItemBody, { icon: row.iconNode ?? renderIcon(resolveIcon, row.icon), label: row.label, sub: row.sub, trailing: row.badge }) }, `${group.key}:${row.id}`))) }, `server-${group.key}`))), _jsx(SourceGroups, { groups: sourceGroups, onRun: runSource }), matchedShortcuts.length > 0 && (_jsx(CommandGroup, { heading: 'Shortcuts', children: matchedShortcuts.map((shortcut) => (_jsx(CommandItem, { value: `shortcut:${shortcut.keys}`, onSelect: () => runShortcut(shortcut), children: _jsx(ItemBody, { label: shortcut.label, sub: shortcut.action, trailing: _jsx(KeyHint, { keys: shortcut.keys }) }) }, `shortcut:${shortcut.keys}`))) }))] })) }), hints && (_jsx(PaletteHints, { actions: selectedRow?.actions, hints: hints, onHint: (hint) => {
|
|
212
|
+
onOpenChange(false);
|
|
213
|
+
hint.onSelect?.();
|
|
214
|
+
} }))] })] })] }) }));
|
|
174
215
|
}
|
|
175
216
|
/** The cold (empty-query) body: recent pages then registered shortcuts, or a hint. */
|
|
176
217
|
function ColdState({ recent, places, shortcuts, resolveIcon, onNavigate, onRunShortcut, hasPins, hasSources, }) {
|
|
@@ -186,7 +227,16 @@ function ColdState({ recent, places, shortcuts, resolveIcon, onNavigate, onRunSh
|
|
|
186
227
|
const COLD_SOURCE_LIMIT = 5;
|
|
187
228
|
/** The groups pages contributed through `useCommandSource`. */
|
|
188
229
|
function SourceGroups({ groups, onRun, }) {
|
|
189
|
-
return (_jsx(_Fragment, { children: groups.map((group) => (_jsx(CommandGroup, { heading: group.label, children: group.items.map((item) => (_jsx(CommandItem, { value:
|
|
230
|
+
return (_jsx(_Fragment, { children: groups.map((group) => (_jsx(CommandGroup, { heading: group.label, children: group.items.map((item) => (_jsx(CommandItem, { value: sourceValue(group.key, item.id), onSelect: () => onRun(group.label, item), children: _jsx(ItemBody, { icon: item.icon, label: item.label, sub: item.sub, trailing: item.shortcut ? _jsx(KeyHint, { keys: item.shortcut }) : undefined }) }, `${group.key}:${item.id}`))) }, `source-${group.key}`))) }));
|
|
231
|
+
}
|
|
232
|
+
/** A contributed row's cmdk value — the key its chords are found by. */
|
|
233
|
+
const sourceValue = (groupKey, id) => `source:${groupKey}:${id}`;
|
|
234
|
+
/**
|
|
235
|
+
* The foot: how to move and open, the highlighted row's chords, then the app's hints. Keys are a
|
|
236
|
+
* pointer's business, so a phone does not get the row (the ⌘K badge above hides the same way).
|
|
237
|
+
*/
|
|
238
|
+
function PaletteHints({ actions, hints, onHint, }) {
|
|
239
|
+
return (_jsxs("div", { "data-cb-palette-hints": '', className: 'hidden w-full shrink-0 items-center gap-4 border-t border-border px-3 py-2 text-caption text-muted-foreground sm:inline-flex', children: [_jsxs("span", { className: 'flex items-center gap-1.5', children: [_jsx(Kbd, { children: "\u2191\u2193" }), "Navigate"] }), _jsxs("span", { className: 'flex items-center gap-1.5', children: [_jsx(Kbd, { children: "\u21B5" }), "Open"] }), actions?.map((action) => (_jsxs("span", { "data-cb-palette-action": '', className: 'flex items-center gap-1.5', children: [_jsx(Kbd, { keys: action.keys }), action.label] }, action.keys))), hints.length > 0 && (_jsx("span", { className: 'ml-auto flex items-center gap-2', children: hints.map((hint) => hint.onSelect ? (_jsxs(Button, { variant: 'ghost', size: 'sm', tooltip: hint.label, onClick: () => onHint(hint), className: 'h-7 gap-1.5 px-1.5 text-caption font-normal text-muted-foreground', children: [_jsx(Kbd, { keys: hint.keys }), hint.label] }, hint.keys)) : (_jsxs("span", { className: 'flex items-center gap-1.5', children: [_jsx(Kbd, { keys: hint.keys }), hint.label] }, hint.keys))) }))] }));
|
|
190
240
|
}
|
|
191
241
|
/** Shared row layout: optional leading icon, a label + sub stack, optional trailing node. */
|
|
192
242
|
function ItemBody({ icon, label, sub, trailing, }) {
|
|
@@ -194,7 +244,7 @@ function ItemBody({ icon, label, sub, trailing, }) {
|
|
|
194
244
|
}
|
|
195
245
|
/** A keyboard-shortcut hint, formatted for the current platform (⌘K / Ctrl K). */
|
|
196
246
|
function KeyHint({ keys }) {
|
|
197
|
-
return
|
|
247
|
+
return _jsx(Kbd, { keys: keys });
|
|
198
248
|
}
|
|
199
249
|
/**
|
|
200
250
|
* The cold-state pins quick-bar: horizontally-scrollable chips. Click → navigate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandPalette.js","sourceRoot":"","sources":["../../../src/react/palette/CommandPalette.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,oFAAoF;AACpF,sFAAsF;AACtF,uFAAuF;AACvF,sFAAsF;AACtF,kFAAkF;AAClF,iCAAiC;AACjC,EAAE;AACF,sFAAsF;AACtF,uFAAuF;AACvF,qFAAqF;AACrF,uFAAuF;AAEvF,OAAO,KAAK,MAAM,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAkB,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC1F,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EAGpB,gBAAgB,GAEjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAA8C,WAAW,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACnH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AA8ExD,MAAM,cAAc,GAAG,QAAQ,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,KAAK,EACL,IAAI,GAAG,YAAY,EACnB,UAAU,EACV,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,WAAW,EACX,SAAS,GAAG,CAAC,EACb,WAAW,EACX,WAAW,GAAG,CAAC,EACf,SAAS,EACT,UAAU,EACV,YAAY,EACZ,aAAa,EACb,SAAS,GAAG,KAAK,EACjB,gBAAgB,GAAG,GAAG,EACtB,MAAM,GAAG,KAAK,EACd,OAAO,EACP,WAAW,EACX,UAAU,GAAG,EAAE,EACf,WAAW,GAAG,8BAA8B,EAC5C,YAAY,GAAG,aAAa,EAC5B,SAAS,GACW;IACpB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,OAAO,KAAK,EAAE,CAAC;IAE9B,6EAA6E;IAC7E,kFAAkF;IAClF,oFAAoF;IACpF,8DAA8D;IAC9D,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;IAC/C,gBAAgB,CAAC,OAAO,GAAG,aAAa,CAAC;IACzC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,gBAAgB,CAAC,OAAO,EAAE,CAAC,cAAc,CAAC,CAAC;IAC7C,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,oFAAoF;IACpF,+EAA+E;IAC/E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,6EAA6E;IAC7E,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACnF,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAgC,CAAC;QACpD,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,UAAU,GAAgB,OAAO,CAAC,GAAG,EAAE;QAC3C,IAAI,MAAM;YAAE,OAAO,EAAE,CAAC;QACtB,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QACrE,MAAM,MAAM,GAAgB,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;YAC/B,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACtB,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,WAAW,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAE7C,qFAAqF;IACrF,6EAA6E;IAC7E,kEAAkE;IAClE,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,IAAY,EAAwB,EAAE,CACrC,eAAe,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAChF,CAAC,eAAe,CAAC,CAClB,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,EACvD,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAC/B,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,GAAG,GAA2B,EAAE,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5B,IAAI,GAAG,CAAC,MAAM,IAAI,WAAW;gBAAE,MAAM;QACvC,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IAE5C,MAAM,iBAAiB,GAAG,mBAAmB,EAAE,CAAC;IAChD,MAAM,YAAY,GAAG,SAAS,IAAI,iBAAiB,CAAC;IACpD,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,IAAI,MAAM;YAAE,OAAO,YAAY,CAAC;QAChC,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO,YAAY,CAAC,MAAM,CACxB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CACnC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;IAEpC,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CACH,MAAM;QACJ,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1G,CAAC,CAAC,EAAE,EACR,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CACtB,CAAC;IAEF,8FAA8F;IAC9F,gIAAgI;IAChI,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,CAAC,OAAO,EAAE,MAAM;YAAE,OAAO,EAAE,CAAC;QAChC,OAAO,OAAO;aACX,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACrB,0EAA0E;YAC1E,IAAI,MAAM;gBAAE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACxJ,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAC1H,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9H,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAErC,6EAA6E;IAC7E,MAAM,SAAS,GAAG,CAAC,KAAa,EAAE,IAAuB,EAAE,EAAE;QAC3D,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;aAC9B,IAAI,IAAI,CAAC,IAAI;YAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,EAAE,GAAG,CAAC,IAAY,EAAE,EAAE;QAC1B,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,QAAuB,EAAE,EAAE;QAC9C,UAAU,EAAE,CAAC,QAAQ,CAAC,CAAC;QACvB,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,aAAa,GACjB,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;IACnF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC;IAE5D,+EAA+E;IAC/E,MAAM,aAAa,GAAG,aAAa,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,KAAK,cAAc,CAAC;IACnF,MAAM,WAAW,GAAG,SAAS,IAAI,aAAa,CAAC;IAE/C,OAAO,CACL,KAAC,MAAM,CAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,YACjD,MAAC,MAAM,CAAC,MAAM,eACZ,KAAC,MAAM,CAAC,OAAO,IAAC,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,YAAY,CAAC,GAAI,EAClG,MAAC,MAAM,CAAC,OAAO,+BACW,EAAE,EAC1B,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE;wBACrB,uEAAuE;wBACvE,uEAAuE;wBACvE,CAAC,CAAC,cAAc,EAAE,CAAC;oBACrB,CAAC,EACD,SAAS,EAAE,EAAE,CACX,6FAA6F,EAC7F,aAAa,EACb,SAAS,CACV,aAED,KAAC,MAAM,CAAC,KAAK,IAAC,SAAS,EAAC,SAAS,gCAA+B,EAChE,KAAC,MAAM,CAAC,WAAW,IAAC,SAAS,EAAC,SAAS,oFAElB,EAErB,MAAC,OAAO,IACN,YAAY,EAAE,KAAK,EACnB,IAAI,QACJ,KAAK,EAAC,iBAAiB,EACvB,SAAS,EAAC,gEAAgE,aAE1E,KAAC,YAAY,IACX,KAAK,EAAE,KAAK,EACZ,aAAa,EAAE,QAAQ,EACvB,SAAS,QACT,WAAW,EAAE,WAAW,gBACb,2BAA2B,EACtC,QAAQ,EACN,8BACG,WAAW,IAAI,KAAC,OAAO,IAAC,IAAI,EAAC,IAAI,GAAG,EACrC,cAAK,SAAS,EAAC,qIAAqI,YACjJ,YAAY,CAAC,cAAc,CAAC,GACzB,IACL,GAEL,EAED,WAAW,IAAI,CACd,KAAC,YAAY,IACX,KAAK,EAAE,WAAW,EAClB,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,EAAE,EACd,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EACrE,YAAY,EACV,aAAa,IAAI,WAAW,IAAI,WAAW;wCACzC,CAAC,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC;wCACtC,CAAC,CAAC,SAAS,GAEf,CACH,EAED,KAAC,WAAW,cACT,MAAM,CAAC,CAAC,CAAC,CACR,8BACE,KAAC,SAAS,IACR,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,gBAAgB,EAC3B,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,EAAE,EACd,aAAa,EAAE,WAAW,EAC1B,OAAO,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,EAC/B,UAAU,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,GACnC,EACF,KAAC,YAAY,IAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,GAAI,IACvD,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,YAAY,cAAE,YAAY,GAAgB,EAE1C,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACzB,KAAC,YAAY,IAAqC,OAAO,EAAE,KAAK,CAAC,KAAK,YACnE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACzB,KAAC,WAAW,IAEV,KAAK,EAAE,QAAQ,IAAI,CAAC,EAAE,EAAE,EACxB,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,YAE7B,KAAC,QAAQ,IACP,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,EACxC,KAAK,EAAE,IAAI,CAAC,KAAK;wDACjB,oEAAoE;wDACpE,0EAA0E;wDAC1E,GAAG,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,GAC5D,IAVG,IAAI,CAAC,EAAE,CAWA,CACf,CAAC,IAfe,SAAS,KAAK,CAAC,EAAE,IAAI,MAAM,EAAE,CAgBjC,CAChB,CAAC,EAED,YAAY,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAChC,KAAC,YAAY,IAA6B,OAAO,EAAE,KAAK,CAAC,KAAK,YAC3D,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACxB,KAAC,WAAW,IAEV,KAAK,EAAE,UAAU,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,EAAE,EACtC,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,YAE5B,KAAC,QAAQ,IACP,IAAI,EAAE,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,EACvD,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,GAAG,EAAE,GAAG,CAAC,GAAG,EACZ,QAAQ,EAAE,GAAG,CAAC,KAAK,GACnB,IATG,GAAG,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,EAAE,CAUjB,CACf,CAAC,IAde,UAAU,KAAK,CAAC,GAAG,EAAE,CAezB,CAChB,CACF,EAED,KAAC,YAAY,IAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,GAAI,EAEvD,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,CAC9B,KAAC,YAAY,IAAC,OAAO,EAAC,WAAW,YAC9B,gBAAgB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAClC,KAAC,WAAW,IAEV,KAAK,EAAE,YAAY,QAAQ,CAAC,IAAI,EAAE,EAClC,QAAQ,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,YAErC,KAAC,QAAQ,IACP,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,GAAG,EAAE,QAAQ,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAC,OAAO,IAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAI,GAC1C,IARG,YAAY,QAAQ,CAAC,IAAI,EAAE,CASpB,CACf,CAAC,GACW,CAChB,IACA,CACJ,GACW,IACN,IACK,IACH,GACJ,CACf,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,SAAS,SAAS,CAAC,EACjB,MAAM,EACN,MAAM,EACN,SAAS,EACT,WAAW,EACX,UAAU,EACV,aAAa,EACb,OAAO,EACP,UAAU,GAUX;IACC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzE,8EAA8E;QAC9E,IAAI,UAAU;YAAE,OAAO,IAAI,CAAC;QAC5B,OAAO,CACL,YAAG,SAAS,EAAC,qDAAqD,YAC/D,OAAO,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,gCAAgC,GAChF,CACL,CAAC;IACJ,CAAC;IACD,OAAO,CACL,8BACG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACpB,KAAC,YAAY,IAAC,OAAO,EAAC,QAAQ,YAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACpB,KAAC,WAAW,IAEV,KAAK,EAAE,UAAU,IAAI,CAAC,IAAI,EAAE,EAC5B,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAErC,KAAC,QAAQ,IACP,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,EACxC,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,GACxC,IARG,UAAU,IAAI,CAAC,IAAI,EAAE,CASd,CACf,CAAC,GACW,CAChB,EACA,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACpB,KAAC,YAAY,IAAC,OAAO,EAAC,QAAQ,YAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACpB,KAAC,WAAW,IAA0B,KAAK,EAAE,SAAS,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YACpG,KAAC,QAAQ,IAAC,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,GAAI,IADzD,SAAS,IAAI,CAAC,EAAE,EAAE,CAEtB,CACf,CAAC,GACW,CAChB,EACA,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,KAAC,YAAY,IAAC,OAAO,EAAC,WAAW,YAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAC3B,KAAC,WAAW,IAEV,KAAK,EAAE,YAAY,QAAQ,CAAC,IAAI,EAAE,EAClC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,YAEvC,KAAC,QAAQ,IACP,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,GAAG,EAAE,QAAQ,CAAC,MAAM,EACpB,QAAQ,EAAE,KAAC,OAAO,IAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,GAAI,GAC1C,IARG,YAAY,QAAQ,CAAC,IAAI,EAAE,CASpB,CACf,CAAC,GACW,CAChB,IACA,CACJ,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B,+DAA+D;AAC/D,SAAS,YAAY,CAAC,EACpB,MAAM,EACN,KAAK,GAIN;IACC,OAAO,CACL,4BACG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,KAAC,YAAY,IAA6B,OAAO,EAAE,KAAK,CAAC,KAAK,YAC3D,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACzB,KAAC,WAAW,IAAiC,KAAK,EAAE,UAAU,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,YAC5H,KAAC,QAAQ,IACP,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,GAAI,CAAC,CAAC,CAAC,SAAS,GACtE,IANc,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,EAAE,CAO7B,CACf,CAAC,IAVe,UAAU,KAAK,CAAC,GAAG,EAAE,CAWzB,CAChB,CAAC,GACD,CACJ,CAAC;AACJ,CAAC;AAED,6FAA6F;AAC7F,SAAS,QAAQ,CAAC,EAChB,IAAI,EACJ,KAAK,EACL,GAAG,EACH,QAAQ,GAMT;IACC,OAAO,CACL,8BACG,IAAI,IAAI,IAAI,IAAI,CACf,eACE,SAAS,EAAC,8EAA8E,iBAC5E,MAAM,YAEjB,IAAI,GACA,CACR,EACD,gBAAM,SAAS,EAAC,gBAAgB,aAC9B,eAAM,SAAS,EAAC,4BAA4B,YAAE,KAAK,GAAQ,EAC1D,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,IAAI,CAC5B,eAAM,SAAS,EAAC,8CAA8C,YAAE,GAAG,GAAQ,CAC5E,IACI,EACN,QAAQ,IAAI,IAAI,IAAI,eAAM,SAAS,EAAC,UAAU,YAAE,QAAQ,GAAQ,IAChE,CACJ,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,SAAS,OAAO,CAAC,EAAE,IAAI,EAAoB;IACzC,OAAO,CACL,cAAK,SAAS,EAAC,8GAA8G,YAC1H,YAAY,CAAC,IAAI,CAAC,GACf,CACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,EACpB,KAAK,EACL,WAAW,EACX,UAAU,EACV,OAAO,EACP,YAAY,GAOb;IACC,OAAO,CACL,8BAAkB,EAAE,gBAAY,cAAc,EAAC,SAAS,EAAC,iCAAiC,YACxF,MAAC,UAAU,IACT,IAAI,EAAC,GAAG,EACR,KAAK,EAAC,MAAM,EACZ,QAAQ,EAAE,KAAK,EACf,SAAS,EAAC,qCAAqC,aAE9C,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,KAAC,OAAO,IAEN,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,EACxC,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EACvC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,IAJlD,IAAI,CAAC,IAAI,CAKd,CACH,CAAC,EACD,YAAY,IAAI,CACf,KAAC,MAAM,IACL,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,YAAY,qBACL,EAAE,EAClB,OAAO,EAAC,eAAe,EACvB,QAAQ,EAAE,KAAC,IAAI,IAAC,SAAS,EAAC,UAAU,iBAAa,MAAM,GAAG,EAC1D,SAAS,EAAE,8JAA8J,iBAAiB,EAAE,8BAGrL,CACV,IACU,GACT,CACP,CAAC;AACJ,CAAC;AAED,0FAA0F;AAC1F,SAAS,OAAO,CAAC,EACf,IAAI,EACJ,IAAI,EACJ,UAAU,EACV,OAAO,GAMR;IACC,MAAM,SAAS,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAElC,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;YACtB,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAChC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,MAAM,IACL,OAAO,EAAC,WAAW,sBACF,EAAE,EACnB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,uCAAuC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EACpF,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACxB,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC5B,OAAO,CAAC,yDAAyD;YACnE,CAAC;YACD,UAAU,EAAE,CAAC;QACf,CAAC,EACD,aAAa,EACX,OAAO;YACL,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;gBACJ,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,OAAO,EAAE,CAAC;YACZ,CAAC;YACH,CAAC,CAAC,SAAS,EAEf,aAAa,EACX,OAAO;YACL,CAAC,CAAC,GAAG,EAAE;gBACH,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC5B,UAAU,EAAE,CAAC;gBACb,SAAS,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;oBAClC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;oBAC3B,OAAO,EAAE,CAAC;gBACZ,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC;YACH,CAAC,CAAC,SAAS,EAEf,WAAW,EAAE,UAAU,EACvB,cAAc,EAAE,UAAU,EAC1B,SAAS,EACP,OAAO;YACL,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;gBACJ,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;oBAChD,CAAC,CAAC,cAAc,EAAE,CAAC;oBACnB,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC;YACH,CAAC,CAAC,SAAS,EAEf,SAAS,EAAE,wHAAwH,iBAAiB,EAAE,aAErJ,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CACd,eACE,SAAS,EAAC,yEAAyE,iBACvE,MAAM,YAEjB,IAAI,GACA,CACR,CAAC,CAAC,CAAC,CACF,KAAC,GAAG,IAAC,SAAS,EAAC,8BAA8B,iBAAa,MAAM,GAAG,CACpE,EACD,eAAM,SAAS,EAAC,mBAAmB,YAAE,IAAI,CAAC,KAAK,GAAQ,IAChD,CACV,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"CommandPalette.js","sourceRoot":"","sources":["../../../src/react/palette/CommandPalette.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
/** Whose notation a binding is drawn in: ⌘⌥⇧ glyphs, or Ctrl / Alt / Shift words. */
|
|
3
|
+
export type KbdPlatform = 'mac' | 'windows';
|
|
4
|
+
export interface KbdProps {
|
|
5
|
+
/** A binding in the `useHotkeys` format, formatted for this platform. */
|
|
6
|
+
keys?: string;
|
|
7
|
+
/** Draw `keys` in this platform's notation; omitted, the browser's own. */
|
|
8
|
+
platform?: KbdPlatform | 'both';
|
|
9
|
+
/** A literal cap, when there is no binding to format. */
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
className?: string;
|
|
12
|
+
}
|
|
13
|
+
/** One key cap, in the platform's notation. */
|
|
14
|
+
export declare function Kbd({ keys, platform, children, className }: KbdProps): import("react").JSX.Element;
|
|
15
|
+
//# sourceMappingURL=Kbd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Kbd.d.ts","sourceRoot":"","sources":["../../../src/react/palette/Kbd.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,qFAAqF;AACrF,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,SAAS,CAAC;AAE5C,MAAM,WAAW,QAAQ;IACvB,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAKD,+CAA+C;AAC/C,wBAAgB,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,QAAQ,+BAiBpE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { formatHotkey } from 'cursedbelt-core/palette/hotkeys';
|
|
3
|
+
import { cn } from '../lib/cn.js';
|
|
4
|
+
const CAP = 'rounded border border-border bg-muted px-1.5 py-0.5 font-sans text-caption font-medium text-muted-foreground';
|
|
5
|
+
/** One key cap, in the platform's notation. */
|
|
6
|
+
export function Kbd({ keys, platform, children, className }) {
|
|
7
|
+
if (keys !== undefined && platform === 'both') {
|
|
8
|
+
const mac = formatHotkey(keys, true);
|
|
9
|
+
const windows = formatHotkey(keys, false);
|
|
10
|
+
if (mac !== windows) {
|
|
11
|
+
return (_jsxs("span", { className: cn('inline-flex items-center gap-1', className), children: [_jsx("kbd", { className: CAP, children: mac }), _jsxs("span", { className: 'text-caption text-muted-foreground', children: ["(", _jsx("kbd", { className: CAP, children: windows }), ")"] })] }));
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
const apple = platform === 'mac' ? true : platform === 'windows' ? false : undefined;
|
|
15
|
+
return _jsx("kbd", { className: cn(CAP, className), children: keys !== undefined ? formatHotkey(keys, apple) : children });
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=Kbd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Kbd.js","sourceRoot":"","sources":["../../../src/react/palette/Kbd.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAelC,MAAM,GAAG,GACP,8GAA8G,CAAC;AAEjH,+CAA+C;AAC/C,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAY;IACnE,IAAI,IAAI,KAAK,SAAS,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC9C,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1C,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,OAAO,CACL,gBAAM,SAAS,EAAE,EAAE,CAAC,gCAAgC,EAAE,SAAS,CAAC,aAC9D,cAAK,SAAS,EAAE,GAAG,YAAG,GAAG,GAAO,EAChC,gBAAM,SAAS,EAAC,oCAAoC,kBACjD,cAAK,SAAS,EAAE,GAAG,YAAG,OAAO,GAAO,SAChC,IACF,CACR,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IACrF,OAAO,cAAK,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,YAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAO,CAAC;AAC/G,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import { type KbdProps } from './Kbd.js';
|
|
3
|
+
export interface ShortcutSheetItem {
|
|
4
|
+
/** What the key does ("Copy the secret"). */
|
|
5
|
+
label: string;
|
|
6
|
+
/** One binding (`'$mod+c'`), or several that do the same thing (`['/', '$mod+k']`). */
|
|
7
|
+
keys?: string | readonly string[];
|
|
8
|
+
/** Literal caps, drawn as written, for a key the binding grammar cannot spell (`['↑', '↓']`).
|
|
9
|
+
* Wins over `keys`. */
|
|
10
|
+
caps?: readonly string[];
|
|
11
|
+
/** Where it works, when that is narrower than its group ("in an open entry"). */
|
|
12
|
+
where?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ShortcutSheetGroup {
|
|
15
|
+
heading: string;
|
|
16
|
+
items: readonly ShortcutSheetItem[];
|
|
17
|
+
}
|
|
18
|
+
export interface ShortcutSheetProps {
|
|
19
|
+
open: boolean;
|
|
20
|
+
onClose: () => void;
|
|
21
|
+
groups: readonly ShortcutSheetGroup[];
|
|
22
|
+
title?: ReactNode;
|
|
23
|
+
subtitle?: ReactNode;
|
|
24
|
+
/** The notation every binding is drawn in; omitted, the browser's own. 'both' adds the
|
|
25
|
+
* Windows chord in parentheses wherever it differs from the Mac's. */
|
|
26
|
+
platform?: KbdProps['platform'];
|
|
27
|
+
}
|
|
28
|
+
/** The keyboard map as a dialog. */
|
|
29
|
+
export declare function ShortcutSheet({ open, onClose, groups, title, subtitle, platform, }: ShortcutSheetProps): import("react").JSX.Element;
|
|
30
|
+
//# sourceMappingURL=ShortcutSheet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShortcutSheet.d.ts","sourceRoot":"","sources":["../../../src/react/palette/ShortcutSheet.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAClC;4BACwB;IACxB,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;2EACuE;IACvE,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;CACjC;AAED,oCAAoC;AACpC,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,MAAM,EACN,KAA4B,EAC5B,QAAqD,EACrD,QAAQ,GACT,EAAE,kBAAkB,+BAwDpB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ActionBar } from '../components/ActionBar.js';
|
|
3
|
+
import { Button } from '../components/Button.js';
|
|
4
|
+
import { Modal } from '../components/Modal.js';
|
|
5
|
+
import { Kbd } from './Kbd.js';
|
|
6
|
+
/** The keyboard map as a dialog. */
|
|
7
|
+
export function ShortcutSheet({ open, onClose, groups, title = 'Keyboard shortcuts', subtitle = 'Keys work anywhere outside a text field.', platform, }) {
|
|
8
|
+
return (_jsx(Modal, { open: open, onClose: onClose, size: 'md', title: title, subtitle: subtitle, footer: _jsx(ActionBar, { primary: _jsx(Button, { variant: 'primary', tooltip: 'Close the shortcut list (Esc)', onClick: onClose, children: "Done" }) }), children: _jsx("div", { "data-cb-shortcut-sheet": '', className: 'flex flex-col gap-6', children: groups.map((group) => (_jsxs("section", { "aria-label": group.heading, className: 'flex flex-col gap-1', children: [_jsx("h3", { className: 'm-0 text-xs font-semibold uppercase tracking-wide text-muted-foreground', children: group.heading }), _jsx("ul", { className: 'm-0 flex flex-col p-0', children: group.items.map((item) => {
|
|
9
|
+
const bindings = item.keys === undefined ? [] : typeof item.keys === 'string' ? [item.keys] : item.keys;
|
|
10
|
+
return (_jsxs("li", { "data-cb-shortcut": '', className: 'flex items-center justify-between gap-4 border-b border-border py-2 last:border-b-0', children: [_jsxs("span", { className: 'min-w-0 text-sm', children: [item.label, item.where && _jsxs("span", { className: 'text-muted-foreground', children: [" \u00B7 ", item.where] })] }), _jsx("span", { className: 'flex shrink-0 items-center gap-1.5 text-caption text-muted-foreground', children: item.caps
|
|
11
|
+
? item.caps.map((cap) => _jsx(Kbd, { children: cap }, cap))
|
|
12
|
+
: bindings.map((binding, index) => (_jsxs("span", { className: 'flex items-center gap-1.5', children: [index > 0 && _jsx("span", { children: "or" }), _jsx(Kbd, { keys: binding, platform: platform })] }, binding))) })] }, item.label));
|
|
13
|
+
}) })] }, group.heading))) }) }));
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=ShortcutSheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShortcutSheet.js","sourceRoot":"","sources":["../../../src/react/palette/ShortcutSheet.tsx"],"names":[],"mappings":";AAYA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAiB,MAAM,UAAU,CAAC;AA8B9C,oCAAoC;AACpC,MAAM,UAAU,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,MAAM,EACN,KAAK,GAAG,oBAAoB,EAC5B,QAAQ,GAAG,0CAA0C,EACrD,QAAQ,GACW;IACnB,OAAO,CACL,KAAC,KAAK,IACJ,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,IAAI,EAAC,IAAI,EACT,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,MAAM,EACJ,KAAC,SAAS,IACR,OAAO,EACL,KAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,+BAA+B,EAAC,OAAO,EAAE,OAAO,qBAEzE,GAEX,YAGJ,wCAA4B,EAAE,EAAC,SAAS,EAAC,qBAAqB,YAC3D,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACrB,iCAAyC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAC,qBAAqB,aACrF,aAAI,SAAS,EAAC,yEAAyE,YACpF,KAAK,CAAC,OAAO,GACX,EACL,aAAI,SAAS,EAAC,uBAAuB,YAClC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;4BACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;4BACxG,OAAO,CACL,kCAEmB,EAAE,EACnB,SAAS,EAAC,qFAAqF,aAE/F,gBAAM,SAAS,EAAC,iBAAiB,aAC9B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,KAAK,IAAI,gBAAM,SAAS,EAAC,uBAAuB,yBAAK,IAAI,CAAC,KAAK,IAAQ,IACxE,EACP,eAAM,SAAS,EAAC,uEAAuE,YACpF,IAAI,CAAC,IAAI;4CACR,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAC,GAAG,cAAY,GAAG,IAAT,GAAG,CAAa,CAAC;4CACpD,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAC/B,gBAAoB,SAAS,EAAC,2BAA2B,aACtD,KAAK,GAAG,CAAC,IAAI,gCAAe,EAC7B,KAAC,GAAG,IAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,GAAI,KAFjC,OAAO,CAGX,CACR,CAAC,GACD,KAjBF,IAAI,CAAC,KAAK,CAkBZ,CACN,CAAC;wBACJ,CAAC,CAAC,GACC,KA9BO,KAAK,CAAC,OAAO,CA+BjB,CACX,CAAC,GACE,GACA,CACT,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* A second verb on a row, run by a chord while the row is highlighted — the vault's ⌘C copies an
|
|
4
|
+
* entry's secret without opening it. The palette closes after it runs, and its footer names the
|
|
5
|
+
* highlighted row's actions so the chord is discoverable where it works.
|
|
6
|
+
*/
|
|
7
|
+
export interface CommandItemAction {
|
|
8
|
+
/** The chord, in the `useHotkeys` format (`'$mod+c'`). */
|
|
9
|
+
keys: string;
|
|
10
|
+
/** What it does, in the footer ("Copy secret"). */
|
|
11
|
+
label: string;
|
|
12
|
+
run: () => void;
|
|
13
|
+
}
|
|
2
14
|
export interface CommandSourceItem {
|
|
3
15
|
/** Stable within its source. */
|
|
4
16
|
id: string;
|
|
@@ -14,6 +26,8 @@ export interface CommandSourceItem {
|
|
|
14
26
|
onSelect?: () => void;
|
|
15
27
|
/** Or go somewhere — handed to the palette's `onNavigate`. */
|
|
16
28
|
path?: string;
|
|
29
|
+
/** Chords that act on this row without selecting it (see {@link CommandItemAction}). */
|
|
30
|
+
actions?: readonly CommandItemAction[];
|
|
17
31
|
}
|
|
18
32
|
export interface CommandSource {
|
|
19
33
|
/** The group heading in the palette ("Requests", "Actions"). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commandSources.d.ts","sourceRoot":"","sources":["../../../src/react/palette/commandSources.tsx"],"names":[],"mappings":"AAWA,OAAO,EAEL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAGf,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"commandSources.d.ts","sourceRoot":"","sources":["../../../src/react/palette/commandSources.tsx"],"names":[],"mappings":"AAWA,OAAO,EAEL,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAGf;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wFAAwF;IACxF,OAAO,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CACrC;AAED,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC;AAE3B,4EAA4E;AAC5E,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,QAAQ,CAAuB;IAEvC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IAK7C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,SAAS,GAAI,UAAU,QAAQ,KAAG,CAAC,MAAM,IAAI,CAAC,CAG5C;IAEF,WAAW,QAAO,aAAa,EAAE,CAAkB;IAEnD,OAAO,CAAC,IAAI;CAIb;AAID,4FAA4F;AAC5F,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAG1E;AAKD,2EAA2E;AAC3E,wBAAgB,iBAAiB,IAAI,aAAa,EAAE,CAOnD;AAcD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CA0C5D;AAMD,gDAAgD;AAChD,eAAO,MAAM,0BAA0B,sBAAsB,CAAC;AAe9D,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAQnE;AAED,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,iBAAiB,EAAE,GAAG,iBAAiB,EAAE,CAMnG"}
|
|
@@ -49,7 +49,10 @@ export function useCommandSources() {
|
|
|
49
49
|
return useSyncExternalStore(store?.subscribe ?? NOOP_SUBSCRIBE, store?.getSnapshot ?? (() => EMPTY), store?.getSnapshot ?? (() => EMPTY));
|
|
50
50
|
}
|
|
51
51
|
/** What a row SHOWS — an entry is replaced only when this changes. */
|
|
52
|
-
const signature = (source) => [
|
|
52
|
+
const signature = (source) => [
|
|
53
|
+
source.group,
|
|
54
|
+
...source.items.map((i) => `${i.id}\u0001${i.label}\u0001${i.sub ?? ''}\u0001${i.path ?? ''}\u0001${(i.actions ?? []).map((a) => `${a.keys}:${a.label}`).join(',')}`),
|
|
55
|
+
].join('\u0002');
|
|
53
56
|
/**
|
|
54
57
|
* Contribute records and actions to the shell's ⌘K palette while this component is mounted.
|
|
55
58
|
*
|
|
@@ -80,6 +83,13 @@ export function useCommandSource(source) {
|
|
|
80
83
|
onSelect: item.onSelect
|
|
81
84
|
? () => latest.current.items.find((i) => i.id === item.id)?.onSelect?.()
|
|
82
85
|
: undefined,
|
|
86
|
+
actions: item.actions?.map((action) => ({
|
|
87
|
+
...action,
|
|
88
|
+
run: () => latest.current.items
|
|
89
|
+
.find((i) => i.id === item.id)
|
|
90
|
+
?.actions?.find((a) => a.keys === action.keys)
|
|
91
|
+
?.run(),
|
|
92
|
+
})),
|
|
83
93
|
})),
|
|
84
94
|
});
|
|
85
95
|
}, [store, key, sig]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commandSources.js","sourceRoot":"","sources":["../../../src/react/palette/commandSources.tsx"],"names":[],"mappings":";AAAA,0FAA0F;AAC1F,6FAA6F;AAC7F,0FAA0F;AAC1F,wFAAwF;AACxF,mDAAmD;AACnD,EAAE;AACF,sFAAsF;AACtF,2FAA2F;AAC3F,uFAAuF;AACvF,8FAA8F;AAE9F,OAAO,EACL,aAAa,EAEb,UAAU,EACV,SAAS,EACT,KAAK,EACL,MAAM,EACN,QAAQ,EACR,oBAAoB,GACrB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"commandSources.js","sourceRoot":"","sources":["../../../src/react/palette/commandSources.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export * from 'cursedbelt-core/palette';
|
|
2
2
|
export { Command, CommandEmpty, CommandGroup, CommandInput, type CommandInputProps, CommandItem, CommandList, CommandSeparator, } from './Command.js';
|
|
3
|
-
export { type CommandSource, type CommandSourceItem, CommandSourceProvider, useCommandSource, useCommandSources, } from './commandSources.js';
|
|
4
|
-
export { CommandPalette, type CommandPaletteProps, } from './CommandPalette.js';
|
|
3
|
+
export { type CommandItemAction, type CommandSource, type CommandSourceItem, CommandSourceProvider, useCommandSource, useCommandSources, } from './commandSources.js';
|
|
4
|
+
export { CommandPalette, type CommandPaletteHint, type CommandPaletteProps, } from './CommandPalette.js';
|
|
5
|
+
export { Kbd, type KbdProps } from './Kbd.js';
|
|
6
|
+
export { ShortcutSheet, type ShortcutSheetGroup, type ShortcutSheetItem, type ShortcutSheetProps, } from './ShortcutSheet.js';
|
|
5
7
|
export { type CommandPaletteControls, type UseCommandPaletteOptions, useCommandPalette, } from './useCommandPalette.js';
|
|
6
8
|
export { type UseHotkeysOptions, useHotkeys } from './useHotkeys.js';
|
|
7
9
|
export { useShortcutRegistry } from './useShortcutRegistry.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/palette/index.ts"],"names":[],"mappings":"AAKA,cAAc,yBAAyB,CAAC;AACxC,OAAO,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,KAAK,iBAAiB,EACtB,WAAW,EACX,WAAW,EACX,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,iBAAiB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/palette/index.ts"],"names":[],"mappings":"AAKA,cAAc,yBAAyB,CAAC;AACxC,OAAO,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,KAAK,iBAAiB,EACtB,WAAW,EACX,WAAW,EACX,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,iBAAiB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC"}
|