@xyne/workflow-ui 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/automations/CreateWorkflowDialog.d.ts +1 -1
- package/dist/components/automations/CreateWorkflowDialog.d.ts.map +1 -1
- package/dist/components/automations/CreateWorkflowDialog.js +14 -27
- package/dist/components/automations/CreateWorkflowDialog.js.map +1 -1
- package/dist/components/browser/EntryGrid.d.ts +3 -1
- package/dist/components/browser/EntryGrid.d.ts.map +1 -1
- package/dist/components/browser/EntryGrid.js +43 -38
- package/dist/components/browser/EntryGrid.js.map +1 -1
- package/dist/components/browser/EntryList.d.ts +3 -1
- package/dist/components/browser/EntryList.d.ts.map +1 -1
- package/dist/components/browser/EntryList.js +39 -35
- package/dist/components/browser/EntryList.js.map +1 -1
- package/dist/components/browser/MoveDialog.d.ts.map +1 -1
- package/dist/components/browser/MoveDialog.js +3 -1
- package/dist/components/browser/MoveDialog.js.map +1 -1
- package/dist/components/browser/NameDialog.d.ts.map +1 -1
- package/dist/components/browser/NameDialog.js +5 -2
- package/dist/components/browser/NameDialog.js.map +1 -1
- package/dist/components/browser/SearchField.js +1 -1
- package/dist/components/browser/SearchField.js.map +1 -1
- package/dist/components/browser/ViewToggle.js +5 -5
- package/dist/components/browser/ViewToggle.js.map +1 -1
- package/dist/components/builder/v3/ConditionEditorPanel.js +2 -2
- package/dist/components/builder/v3/ConditionEditorPanel.js.map +1 -1
- package/dist/components/builder/v3/DeleteStepDialog.js +1 -1
- package/dist/components/builder/v3/DeleteStepDialog.js.map +1 -1
- package/dist/components/builder/v3/DiscriminatedUnionEditor.js +1 -1
- package/dist/components/builder/v3/DiscriminatedUnionEditor.js.map +1 -1
- package/dist/components/builder/v3/EnhancedSchemaFormRenderer.js +2 -1
- package/dist/components/builder/v3/EnhancedSchemaFormRenderer.js.map +1 -1
- package/dist/components/builder/v3/InputSchemaBuilder.js +1 -1
- package/dist/components/builder/v3/InputSchemaBuilder.js.map +1 -1
- package/dist/components/builder/v3/SaveValidationDialog.js +1 -1
- package/dist/components/builder/v3/SaveValidationDialog.js.map +1 -1
- package/dist/components/builder/v3/StringArrayInput.js +1 -1
- package/dist/components/builder/v3/StringArrayInput.js.map +1 -1
- package/dist/components/builder/v3/SummaryDialog.js +1 -1
- package/dist/components/builder/v3/SummaryDialog.js.map +1 -1
- package/dist/components/builder/v3/SwitchCaseEditor.js +1 -1
- package/dist/components/builder/v3/SwitchCaseEditor.js.map +1 -1
- package/dist/components/builder/v3/VariableRefInput.js +1 -1
- package/dist/components/builder/v3/VariableRefInput.js.map +1 -1
- package/dist/components/dashboard/TriggerFormModal.js +1 -1
- package/dist/components/dashboard/TriggerFormModal.js.map +1 -1
- package/dist/components/execution/ApprovalReviewDisplay.d.ts.map +1 -1
- package/dist/components/execution/ApprovalReviewDisplay.js +5 -3
- package/dist/components/execution/ApprovalReviewDisplay.js.map +1 -1
- package/dist/components/execution/ApprovalsView.d.ts.map +1 -1
- package/dist/components/execution/ApprovalsView.js +91 -17
- package/dist/components/execution/ApprovalsView.js.map +1 -1
- package/dist/components/execution/PauseFormRenderer.d.ts.map +1 -1
- package/dist/components/execution/PauseFormRenderer.js +37 -2
- package/dist/components/execution/PauseFormRenderer.js.map +1 -1
- package/dist/components/execution/PauseInteractionPanel.js +1 -1
- package/dist/components/execution/PauseInteractionPanel.js.map +1 -1
- package/dist/components/execution/RerunDialog.js +1 -1
- package/dist/components/execution/RerunDialog.js.map +1 -1
- package/dist/components/execution/SidePanelShell.d.ts.map +1 -1
- package/dist/components/execution/SidePanelShell.js +2 -2
- package/dist/components/execution/SidePanelShell.js.map +1 -1
- package/dist/components/execution/ValueEditor.js +21 -21
- package/dist/components/execution/ValueEditor.js.map +1 -1
- package/dist/components/execution/origin/OriginTrace.d.ts +4 -2
- package/dist/components/execution/origin/OriginTrace.d.ts.map +1 -1
- package/dist/components/execution/origin/OriginTrace.js +9 -6
- package/dist/components/execution/origin/OriginTrace.js.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/runs/RunsFilters.js +1 -1
- package/dist/components/runs/RunsFilters.js.map +1 -1
- package/dist/components/runs/RunsTable.d.ts +3 -1
- package/dist/components/runs/RunsTable.d.ts.map +1 -1
- package/dist/components/runs/RunsTable.js +18 -28
- package/dist/components/runs/RunsTable.js.map +1 -1
- package/dist/components/runs/RunsView.d.ts.map +1 -1
- package/dist/components/runs/RunsView.js +51 -3
- package/dist/components/runs/RunsView.js.map +1 -1
- package/dist/components/schema-form/AttachmentFieldInput.js +8 -8
- package/dist/components/schema-form/AttachmentFieldInput.js.map +1 -1
- package/dist/components/schema-form/SchemaFormRenderer.js +4 -4
- package/dist/components/schema-form/SchemaFormRenderer.js.map +1 -1
- package/dist/components/shared/JsonView.d.ts +13 -0
- package/dist/components/shared/JsonView.d.ts.map +1 -0
- package/dist/components/shared/JsonView.js +59 -0
- package/dist/components/shared/JsonView.js.map +1 -0
- package/dist/components/shared/MarkdownEditor.d.ts.map +1 -1
- package/dist/components/shared/MarkdownEditor.js +10 -5
- package/dist/components/shared/MarkdownEditor.js.map +1 -1
- package/dist/components/shared/MarkdownView.d.ts +1 -1
- package/dist/components/shared/MarkdownView.d.ts.map +1 -1
- package/dist/components/shared/MarkdownView.js +33 -20
- package/dist/components/shared/MarkdownView.js.map +1 -1
- package/dist/components/shared/Select.d.ts +20 -0
- package/dist/components/shared/Select.d.ts.map +1 -0
- package/dist/components/shared/Select.js +50 -0
- package/dist/components/shared/Select.js.map +1 -0
- package/dist/components/shared/Toolbar.d.ts +17 -0
- package/dist/components/shared/Toolbar.d.ts.map +1 -0
- package/dist/components/shared/Toolbar.js +26 -0
- package/dist/components/shared/Toolbar.js.map +1 -0
- package/dist/components/workflows/WorkflowBrowser.d.ts +4 -1
- package/dist/components/workflows/WorkflowBrowser.d.ts.map +1 -1
- package/dist/components/workflows/WorkflowBrowser.js +123 -30
- package/dist/components/workflows/WorkflowBrowser.js.map +1 -1
- package/dist/components/workflows/WorkflowHome.d.ts +22 -0
- package/dist/components/workflows/WorkflowHome.d.ts.map +1 -0
- package/dist/components/workflows/WorkflowHome.js +33 -0
- package/dist/components/workflows/WorkflowHome.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +2 -2
|
@@ -9,5 +9,5 @@ export interface CreateWorkflowDialogProps {
|
|
|
9
9
|
/** Create a folder inline (used when none exist yet). Returns the new folder. */
|
|
10
10
|
onCreateFolder: (name: string) => Promise<FolderRecord>;
|
|
11
11
|
}
|
|
12
|
-
export declare function CreateWorkflowDialog({ onCreated, onClose, folders, defaultFolderId,
|
|
12
|
+
export declare function CreateWorkflowDialog({ onCreated, onClose, folders, defaultFolderId, }: CreateWorkflowDialogProps): import("react").JSX.Element;
|
|
13
13
|
//# sourceMappingURL=CreateWorkflowDialog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateWorkflowDialog.d.ts","sourceRoot":"","sources":["../../../src/components/automations/CreateWorkflowDialog.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CreateWorkflowDialog.d.ts","sourceRoot":"","sources":["../../../src/components/automations/CreateWorkflowDialog.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9E,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;IAC9C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,4DAA4D;IAC5D,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,iFAAiF;IACjF,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;CACzD;AAyDD,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,OAAO,EACP,OAAO,EACP,eAAe,GAChB,EAAE,yBAAyB,+BAoL3B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useState } from 'react';
|
|
3
|
+
import { FolderPlus } from 'lucide-react';
|
|
3
4
|
import { useWorkflowClient } from '../../hooks/use-workflow-client.js';
|
|
4
5
|
import { cn } from '../shared/cn.js';
|
|
5
6
|
import { TagInput } from '../shared/TagInput.js';
|
|
@@ -35,33 +36,17 @@ function buildDefaultConfig(triggerType) {
|
|
|
35
36
|
steps: [],
|
|
36
37
|
};
|
|
37
38
|
}
|
|
38
|
-
export function CreateWorkflowDialog({ onCreated, onClose, folders, defaultFolderId,
|
|
39
|
+
export function CreateWorkflowDialog({ onCreated, onClose, folders, defaultFolderId, }) {
|
|
39
40
|
const client = useWorkflowClient();
|
|
40
41
|
const [name, setName] = useState('');
|
|
41
42
|
const [tags, setTags] = useState([]);
|
|
42
43
|
const [selectedTrigger, setSelectedTrigger] = useState('MANUAL');
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
const [newFolderName, setNewFolderName] = useState('');
|
|
44
|
+
// Workflows are always created in the folder the user currently has open —
|
|
45
|
+
// no picker. (The "Create workflow" action only surfaces inside a folder.)
|
|
46
|
+
const folderId = defaultFolderId ?? folders[0]?.id ?? '';
|
|
47
47
|
const [isCreating, setIsCreating] = useState(false);
|
|
48
48
|
const [error, setError] = useState(null);
|
|
49
|
-
const hasFolders = folders.length > 0;
|
|
50
49
|
const canCreate = name.trim().length > 0 && folderId.length > 0;
|
|
51
|
-
const handleCreateFolder = async () => {
|
|
52
|
-
const folderName = newFolderName.trim();
|
|
53
|
-
if (!folderName)
|
|
54
|
-
return;
|
|
55
|
-
setError(null);
|
|
56
|
-
try {
|
|
57
|
-
const folder = await onCreateFolder(folderName);
|
|
58
|
-
setFolderId(folder.id);
|
|
59
|
-
setNewFolderName('');
|
|
60
|
-
}
|
|
61
|
-
catch (err) {
|
|
62
|
-
setError(err instanceof Error ? err.message : String(err));
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
50
|
const handleCreate = async () => {
|
|
66
51
|
if (!canCreate)
|
|
67
52
|
return;
|
|
@@ -83,14 +68,16 @@ export function CreateWorkflowDialog({ onCreated, onClose, folders, defaultFolde
|
|
|
83
68
|
setIsCreating(false);
|
|
84
69
|
}
|
|
85
70
|
};
|
|
86
|
-
return (_jsxs("div", { className: "fixed inset-0 z-50 flex items-center justify-center", children: [_jsx("div", { className: "absolute inset-0 bg-black/
|
|
71
|
+
return (_jsxs("div", { className: "fixed inset-0 z-50 flex items-center justify-center", children: [_jsx("div", { className: "absolute inset-0 bg-black/50 backdrop-blur-sm", onClick: onClose }), _jsxs("div", { className: cn('relative z-10 w-full max-w-lg rounded-xl border border-[var(--wui-border)] bg-[var(--wui-surface)] shadow-xl', 'animate-[wui-fade-in_150ms_ease-out]'), children: [_jsxs("div", { className: "flex items-center justify-between border-b border-[var(--wui-border)] px-5 py-4", children: [_jsx("h3", { className: "text-[15px] font-semibold text-[var(--wui-fg)]", children: "Create Workflow" }), _jsx("button", { onClick: onClose, className: "flex h-6 w-6 items-center justify-center rounded-md text-[var(--wui-fg-muted)] hover:bg-[var(--wui-bg-muted)] hover:text-[var(--wui-fg)] transition-colors", children: _jsxs("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", children: [_jsx("path", { d: "M18 6 6 18" }), _jsx("path", { d: "m6 6 12 12" })] }) })] }), _jsxs("div", { className: "px-5 py-5 space-y-5", children: [_jsxs("div", { children: [_jsx("label", { className: "block text-[12px] font-medium text-[var(--wui-fg-muted)] mb-1.5", children: "Workflow Name" }), _jsx("input", { type: "text", value: name, onChange: (e) => setName(e.target.value), placeholder: "e.g. Customer Onboarding Pipeline", autoFocus: true, className: cn('w-full rounded-lg border border-[var(--wui-border)] bg-[var(--wui-surface)] px-3 py-2', 'text-[13px] text-[var(--wui-fg)] placeholder:text-[var(--wui-fg-muted)]', 'outline-none focus:border-[var(--wui-primary)] focus:ring-2 focus:ring-[var(--wui-primary-light)]', 'transition-colors'), onKeyDown: (e) => {
|
|
87
72
|
if (e.key === 'Enter' && canCreate)
|
|
88
73
|
void handleCreate();
|
|
89
|
-
} })] }), _jsxs("div", { children: [_jsxs("label", { className: "block text-[12px] font-medium text-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
74
|
+
} })] }), _jsxs("div", { children: [_jsxs("label", { className: "block text-[12px] font-medium text-[var(--wui-fg-muted)] mb-1.5", children: ["Teams ", _jsx("span", { className: "font-normal text-[var(--wui-fg-muted)]", children: "(optional)" })] }), _jsx(TagInput, { value: tags, onChange: setTags, placeholder: "e.g. finance, legal \u2014 Enter to add" })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-[12px] font-medium text-[var(--wui-fg-muted)] mb-1.5", children: "Folder" }), _jsxs("div", { className: "flex items-center gap-2 rounded-lg border border-[var(--wui-border)] bg-[var(--wui-bg-muted)] px-3 py-2 text-[13px] text-[var(--wui-fg)]", children: [_jsx(FolderPlus, { className: "h-4 w-4 shrink-0 text-[var(--wui-fg-muted)]", strokeWidth: 1.75 }), _jsx("span", { className: "truncate", children: folders.find((f) => f.id === folderId)?.name ?? 'Current folder' })] })] }), _jsxs("div", { children: [_jsx("label", { className: "block text-[12px] font-medium text-[var(--wui-fg-muted)] mb-2", children: "Trigger Type" }), _jsx("div", { className: "grid grid-cols-2 gap-2", children: TRIGGER_OPTIONS.map((opt) => {
|
|
75
|
+
const isSel = selectedTrigger === opt.type;
|
|
76
|
+
return (_jsxs("button", { type: "button", onClick: () => setSelectedTrigger(opt.type), className: cn('relative flex items-start gap-2.5 rounded-lg border bg-[var(--wui-surface)] p-3 pr-8 text-left transition-colors', isSel
|
|
77
|
+
? 'border-[var(--wui-primary)]'
|
|
78
|
+
: 'border-[var(--wui-border)] hover:border-[var(--wui-border-strong)] hover:bg-[var(--wui-bg-muted)]'), children: [_jsx("span", { className: cn('mt-0.5 shrink-0', isSel ? 'text-[var(--wui-primary)]' : 'text-[var(--wui-fg-muted)]'), children: opt.icon }), _jsxs("div", { children: [_jsx("div", { className: "text-[13px] font-medium text-[var(--wui-fg)]", children: opt.label }), _jsx("div", { className: "text-[11px] text-[var(--wui-fg-muted)] mt-0.5", children: opt.description })] }), _jsx("span", { "aria-hidden": true, className: cn('absolute right-3 top-3 h-3.5 w-3.5 rounded-full border-2 transition-colors', isSel
|
|
79
|
+
? 'border-[var(--wui-primary)] bg-[var(--wui-primary)]'
|
|
80
|
+
: 'border-[var(--wui-border-strong)]') })] }, opt.type));
|
|
81
|
+
}) })] })] }), _jsxs("div", { className: "flex items-center justify-end gap-2 border-t border-[var(--wui-border)] px-5 py-3.5", children: [error && (_jsx("span", { className: "mr-auto text-xs text-[var(--wui-status-failed)]", children: error })), _jsx("button", { onClick: onClose, disabled: isCreating, className: "rounded-md border border-[var(--wui-border)] px-3.5 py-1.5 text-[13px] font-medium text-[var(--wui-fg-muted)] hover:bg-[var(--wui-bg-muted)] transition-colors", children: "Cancel" }), _jsx("button", { onClick: () => void handleCreate(), disabled: !canCreate || isCreating, className: cn('rounded-md px-4 py-1.5 text-[13px] font-semibold text-[var(--wui-primary-fg)] transition-colors', 'bg-[var(--wui-primary)] hover:bg-[var(--wui-primary-hover)]', (!canCreate || isCreating) && 'opacity-50 cursor-not-allowed'), children: isCreating ? 'Creating...' : 'Create' })] })] })] }));
|
|
95
82
|
}
|
|
96
83
|
//# sourceMappingURL=CreateWorkflowDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateWorkflowDialog.js","sourceRoot":"","sources":["../../../src/components/automations/CreateWorkflowDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAejD,MAAM,eAAe,GAAG;IACtB;QACE,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,4BAA4B;QACzC,IAAI,EAAE,CACJ,eAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAC5I,eAAM,CAAC,EAAC,SAAS,GAAG,EAAA,eAAM,CAAC,EAAC,WAAW,GAAG,EAAA,eAAM,CAAC,EAAC,QAAQ,GAAG,EAAA,eAAM,CAAC,EAAC,SAAS,GAAG,EACjF,eAAM,CAAC,EAAC,kBAAkB,GAAG,EAAA,eAAM,CAAC,EAAC,WAAW,GAAG,EACnD,eAAM,CAAC,EAAC,gBAAgB,GAAG,EAAA,eAAM,CAAC,EAAC,WAAW,GAAG,EAAA,eAAM,CAAC,EAAC,gBAAgB,GAAG,IACxE,CACP;KACF;IACD;QACE,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,WAAW,EAAE,2BAA2B;QACxC,IAAI,EAAE,CACJ,eAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAC5I,eAAM,CAAC,EAAC,8BAA8B,GAAG,EACzC,eAAM,CAAC,EAAC,aAAa,GAAG,EAAA,eAAM,CAAC,EAAC,uCAAuC,GAAG,EAC1E,eAAM,CAAC,EAAC,uCAAuC,GAAG,EAClD,eAAM,CAAC,EAAC,gBAAgB,GAAG,IACvB,CACP;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,UAAU;QACjB,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,CACJ,eAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAC5I,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,GAAG,EAAA,mBAAU,MAAM,EAAC,kBAAkB,GAAG,IACnE,CACP;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,OAAO;QACd,WAAW,EAAE,2BAA2B;QACxC,IAAI,EAAE,CACJ,cAAK,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,YAC5I,eAAM,CAAC,EAAC,6JAA6J,GAAG,GACpK,CACP;KACF;CACO,CAAC;AAEX,SAAS,kBAAkB,CAAC,WAAmB;IAC7C,OAAO;QACL,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE;QAC1C,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EACnC,SAAS,EACT,OAAO,EACP,OAAO,EACP,eAAe,
|
|
1
|
+
{"version":3,"file":"CreateWorkflowDialog.js","sourceRoot":"","sources":["../../../src/components/automations/CreateWorkflowDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,9 @@ type Props = {
|
|
|
14
14
|
selectedIds?: ReadonlySet<string>;
|
|
15
15
|
onToggleSelect?: (entry: BrowserEntry, index: number, shiftKey: boolean) => void;
|
|
16
16
|
scrollParentRef: React.RefObject<HTMLElement | null>;
|
|
17
|
+
/** Called when the last row scrolls into view — for infinite scroll / load-more. */
|
|
18
|
+
onReachEnd?: () => void;
|
|
17
19
|
};
|
|
18
|
-
export declare function EntryGrid({ entries, onOpen, renderLeading, disableFiles, disableFolders, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, }: Props): import("react").JSX.Element;
|
|
20
|
+
export declare function EntryGrid({ entries, onOpen, renderLeading, disableFiles, disableFolders, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, onReachEnd, }: Props): import("react").JSX.Element;
|
|
19
21
|
export {};
|
|
20
22
|
//# sourceMappingURL=EntryGrid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryGrid.d.ts","sourceRoot":"","sources":["../../../src/components/browser/EntryGrid.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIhE,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC7C,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACjF,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"EntryGrid.d.ts","sourceRoot":"","sources":["../../../src/components/browser/EntryGrid.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIhE,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC7C,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACjF,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACrD,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAsBF,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,MAAM,EACN,aAA8B,EAC9B,YAAoB,EACpB,cAAsB,EACtB,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,UAAU,GACX,EAAE,KAAK,+BA6NP"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { FolderSymlink, Pencil, SquarePen, Tag, Trash2 } from 'lucide-react';
|
|
3
|
-
import { useEffect, useState } from 'react';
|
|
3
|
+
import { useEffect, useRef, useState } from 'react';
|
|
4
4
|
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
5
5
|
import { cn } from '../shared/cn.js';
|
|
6
6
|
import { ROW_ESTIMATE_GRID_PX } from './constants.js';
|
|
7
|
-
import { defaultLeading, isEntryDisabled
|
|
7
|
+
import { defaultLeading, isEntryDisabled } from './utils.js';
|
|
8
8
|
function colsFor(width) {
|
|
9
9
|
if (width >= 1280)
|
|
10
10
|
return 5;
|
|
@@ -24,8 +24,7 @@ function useResponsiveCols() {
|
|
|
24
24
|
}, []);
|
|
25
25
|
return cols;
|
|
26
26
|
}
|
|
27
|
-
export function EntryGrid({ entries, onOpen, renderLeading = defaultLeading, disableFiles = false, disableFolders = false, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, }) {
|
|
28
|
-
const isSelecting = (selectedIds?.size ?? 0) > 0;
|
|
27
|
+
export function EntryGrid({ entries, onOpen, renderLeading = defaultLeading, disableFiles = false, disableFolders = false, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, onReachEnd, }) {
|
|
29
28
|
const cols = useResponsiveCols();
|
|
30
29
|
const rowCount = Math.ceil(entries.length / cols);
|
|
31
30
|
const [editingId, setEditingId] = useState(null);
|
|
@@ -46,45 +45,51 @@ export function EntryGrid({ entries, onOpen, renderLeading = defaultLeading, dis
|
|
|
46
45
|
onRename?.(e, next);
|
|
47
46
|
}
|
|
48
47
|
};
|
|
49
|
-
const
|
|
48
|
+
const internalScrollRef = useRef(null);
|
|
50
49
|
const virtualizer = useVirtualizer({
|
|
51
50
|
count: rowCount,
|
|
52
|
-
getScrollElement: () => scrollParentRef.current,
|
|
51
|
+
getScrollElement: () => internalScrollRef.current ?? scrollParentRef.current,
|
|
53
52
|
estimateSize: () => ROW_ESTIMATE_GRID_PX,
|
|
54
53
|
overscan: 3,
|
|
55
|
-
scrollMargin,
|
|
56
54
|
getItemKey: (i) => `row-${String(i)}-c${String(cols)}`,
|
|
57
55
|
});
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
ev.
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
56
|
+
const virtualItems = virtualizer.getVirtualItems();
|
|
57
|
+
const lastRowIndex = virtualItems.length > 0 ? (virtualItems[virtualItems.length - 1]?.index ?? -1) : -1;
|
|
58
|
+
useEffect(() => {
|
|
59
|
+
if (onReachEnd && rowCount > 0 && lastRowIndex >= rowCount - 1) {
|
|
60
|
+
onReachEnd();
|
|
61
|
+
}
|
|
62
|
+
}, [lastRowIndex, rowCount, onReachEnd]);
|
|
63
|
+
return (_jsx("div", { ref: internalScrollRef, className: "wui-scroll h-full min-h-0 overflow-y-auto", children: _jsx("div", { role: "list", className: "animate-fade-up", style: { height: `${String(virtualizer.getTotalSize())}px`, position: 'relative' }, children: virtualItems.map((virtualRow) => {
|
|
64
|
+
const start = virtualRow.index * cols;
|
|
65
|
+
const rowEntries = entries.slice(start, start + cols);
|
|
66
|
+
return (_jsx("div", { "data-index": virtualRow.index, ref: virtualizer.measureElement, className: "absolute left-0 right-0 grid gap-3 pb-3", style: {
|
|
67
|
+
transform: `translateY(${String(virtualRow.start - virtualizer.options.scrollMargin)}px)`,
|
|
68
|
+
gridTemplateColumns: `repeat(${String(cols)}, minmax(0, 1fr))`,
|
|
69
|
+
}, children: rowEntries.map((e, rowIdx) => {
|
|
70
|
+
const entryIndex = start + rowIdx;
|
|
71
|
+
const intrinsicallyDisabled = isEntryDisabled(e, disableFiles, disableFolders);
|
|
72
|
+
const isEditing = editingId === e.id;
|
|
73
|
+
const disabled = intrinsicallyDisabled || isEditing;
|
|
74
|
+
return (_jsxs("div", { role: "listitem", className: "group relative", children: [_jsxs("button", { type: "button", disabled: disabled, onClick: () => { onOpen?.(e); }, className: cn('flex w-full flex-col items-start gap-3 rounded-2xl border bg-surface-elevated p-4 text-left transition', e.status === 'pending' || e.status === 'processing'
|
|
75
|
+
? 'animate-pulse border-ring/60 ring-1 ring-ring/25'
|
|
76
|
+
: 'border-border', disabled
|
|
77
|
+
? 'cursor-default'
|
|
78
|
+
: 'hover:border-ring/40 hover:bg-secondary/60 active:scale-[0.99]', isEditing && 'border-ring/60 ring-1 ring-ring/30'), title: e.name, children: [_jsx("div", { className: "pl-1 pt-1", children: renderLeading(e, 'md') }), _jsxs("span", { className: "flex w-full min-w-0 flex-col gap-0.5", children: [_jsx("span", { className: "flex min-w-0 items-center gap-1.5", children: isEditing ? (_jsx("input", { type: "text", autoFocus: true, value: editingValue, onChange: (ev) => { setEditingValue(ev.target.value); }, onFocus: (ev) => { ev.target.select(); }, onClick: (ev) => { ev.stopPropagation(); }, onMouseDown: (ev) => { ev.stopPropagation(); }, onKeyDown: (ev) => {
|
|
79
|
+
if (ev.key === 'Enter') {
|
|
80
|
+
ev.preventDefault();
|
|
81
|
+
ev.stopPropagation();
|
|
82
|
+
commitEdit(e);
|
|
83
|
+
}
|
|
84
|
+
else if (ev.key === 'Escape') {
|
|
85
|
+
ev.preventDefault();
|
|
86
|
+
ev.stopPropagation();
|
|
87
|
+
cancelEdit();
|
|
88
|
+
}
|
|
89
|
+
}, onBlur: () => { commitEdit(e); }, maxLength: 255, className: "min-w-0 flex-1 truncate rounded-sm border border-ring/50 bg-background px-1.5 py-0.5 text-[13.5px] font-medium text-foreground outline-none focus:border-ring" })) : (_jsx("span", { className: "truncate text-[13.5px] font-medium text-foreground", children: e.name })) }), e.caption ? (_jsx("span", { className: "truncate text-[11.5px] text-muted-foreground", children: e.caption })) : null, e.kind === 'file' && e.tags && e.tags.length > 0 ? (_jsx("span", { className: "mt-1 flex flex-wrap items-center gap-1", children: e.tags.slice(0, 4).map((t) => (_jsx("span", { className: "rounded-full bg-secondary px-1.5 py-px text-[10px] font-medium text-muted-foreground", children: t }, t))) })) : null] })] }), onToggleSelect && (_jsx("button", { type: "button", "aria-label": selectedIds?.has(e.id) ? `Deselect ${e.name}` : `Select ${e.name}`, onClick: (ev) => { ev.stopPropagation(); onToggleSelect(e, entryIndex, ev.shiftKey); }, className: cn('absolute left-2 top-2 flex h-[18px] w-[18px] items-center justify-center rounded-[5px] border transition-colors', selectedIds?.has(e.id)
|
|
90
|
+
? 'border-[var(--wui-primary)] bg-[var(--wui-primary)] text-[var(--wui-primary-fg)]'
|
|
91
|
+
: 'border-[var(--wui-border-strong)] bg-[var(--wui-surface)]/90 backdrop-blur-sm group-hover:border-[var(--wui-fg-muted)]'), children: selectedIds?.has(e.id) && (_jsx("svg", { viewBox: "0 0 24 24", className: "h-3 w-3", fill: "none", stroke: "currentColor", strokeWidth: 2.5, strokeLinecap: "round", strokeLinejoin: "round", children: _jsx("polyline", { points: "20 6 9 17 4 12" }) })) })), !isEditing && (onOpenEditor ?? onEditTags ?? onRename ?? onDelete ?? onMove) ? (_jsxs("div", { className: "absolute right-2 top-2 flex gap-1 opacity-0 transition group-hover:opacity-100 focus-within:opacity-100", children: [onOpenEditor && e.kind === 'file' ? (_jsx("button", { type: "button", "aria-label": `Open ${e.name} in editor`, title: "Open editor", onClick: (ev) => { ev.stopPropagation(); onOpenEditor(e); }, className: "grid h-7 w-7 place-items-center rounded-md bg-background/80 text-muted-foreground shadow-sm ring-1 ring-border backdrop-blur-sm transition hover:bg-secondary hover:text-foreground", children: _jsx(SquarePen, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onEditTags && e.kind === 'file' ? (_jsx("button", { type: "button", "aria-label": `Edit teams for ${e.name}`, title: "Teams", onClick: (ev) => { ev.stopPropagation(); onEditTags(e); }, className: "grid h-7 w-7 place-items-center rounded-md bg-background/80 text-muted-foreground shadow-sm ring-1 ring-border backdrop-blur-sm transition hover:bg-secondary hover:text-foreground", children: _jsx(Tag, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onMove ? (_jsx("button", { type: "button", "aria-label": `Move ${e.name}`, title: "Move", onClick: (ev) => { ev.stopPropagation(); onMove(e); }, className: "grid h-7 w-7 place-items-center rounded-md bg-background/80 text-muted-foreground shadow-sm ring-1 ring-border backdrop-blur-sm transition hover:bg-secondary hover:text-foreground", children: _jsx(FolderSymlink, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onRename ? (_jsx("button", { type: "button", "aria-label": `Rename ${e.name}`, title: "Rename", onClick: (ev) => { ev.stopPropagation(); startEdit(e); }, className: "grid h-7 w-7 place-items-center rounded-md bg-background/80 text-muted-foreground shadow-sm ring-1 ring-border backdrop-blur-sm transition hover:bg-secondary hover:text-foreground", children: _jsx(Pencil, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onDelete ? (_jsx("button", { type: "button", "aria-label": `Delete ${e.name}`, title: "Delete", onClick: (ev) => { ev.stopPropagation(); onDelete(e); }, className: "grid h-7 w-7 place-items-center rounded-md bg-background/80 text-muted-foreground shadow-sm ring-1 ring-border backdrop-blur-sm transition hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-950/40", children: _jsx(Trash2, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null] })) : null] }, `${e.kind}-${e.id}`));
|
|
92
|
+
}) }, virtualRow.key));
|
|
93
|
+
}) }) }));
|
|
89
94
|
}
|
|
90
95
|
//# sourceMappingURL=EntryGrid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryGrid.js","sourceRoot":"","sources":["../../../src/components/browser/EntryGrid.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EntryGrid.js","sourceRoot":"","sources":["../../../src/components/browser/EntryGrid.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,9 @@ type Props = {
|
|
|
16
16
|
selectedIds?: ReadonlySet<string>;
|
|
17
17
|
onToggleSelect?: (entry: BrowserEntry, index: number, shiftKey: boolean) => void;
|
|
18
18
|
scrollParentRef: React.RefObject<HTMLElement | null>;
|
|
19
|
+
/** Called when the last row scrolls into view — for infinite scroll / load-more. */
|
|
20
|
+
onReachEnd?: () => void;
|
|
19
21
|
};
|
|
20
|
-
export declare function EntryList({ entries, columns, onOpen, nameHeader, renderLeading, disableFiles, disableFolders, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, }: Props): import("react").JSX.Element;
|
|
22
|
+
export declare function EntryList({ entries, columns, onOpen, nameHeader, renderLeading, disableFiles, disableFolders, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, onReachEnd, }: Props): import("react").JSX.Element;
|
|
21
23
|
export {};
|
|
22
24
|
//# sourceMappingURL=EntryList.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryList.d.ts","sourceRoot":"","sources":["../../../src/components/browser/EntryList.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAI3E,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC7C,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACjF,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"EntryList.d.ts","sourceRoot":"","sources":["../../../src/components/browser/EntryList.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAI3E,KAAK,KAAK,GAAG;IACX,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,eAAe,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC7C,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,WAAW,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACjF,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACrD,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,wBAAgB,SAAS,CAAC,EACxB,OAAO,EACP,OAAY,EACZ,MAAM,EACN,UAAmB,EACnB,aAA8B,EAC9B,YAAoB,EACpB,cAAsB,EACtB,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,UAAU,GACX,EAAE,KAAK,+BA6PP"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { FolderSymlink, Pencil, SquarePen, Tag, Trash2 } from 'lucide-react';
|
|
3
|
-
import { useState } from 'react';
|
|
3
|
+
import { useEffect, useRef, useState } from 'react';
|
|
4
4
|
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
5
5
|
import { cn } from '../shared/cn.js';
|
|
6
6
|
import { DEFAULT_COL_WIDTH, ROW_ESTIMATE_LIST_PX } from './constants.js';
|
|
7
|
-
import { defaultLeading, isEntryDisabled
|
|
8
|
-
export function EntryList({ entries, columns = [], onOpen, nameHeader = 'Name', renderLeading = defaultLeading, disableFiles = false, disableFolders = false, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, }) {
|
|
9
|
-
const isSelecting = (selectedIds?.size ?? 0) > 0;
|
|
7
|
+
import { defaultLeading, isEntryDisabled } from './utils.js';
|
|
8
|
+
export function EntryList({ entries, columns = [], onOpen, nameHeader = 'Name', renderLeading = defaultLeading, disableFiles = false, disableFolders = false, onDelete, onRename, onMove, onOpenEditor, onEditTags, selectedIds, onToggleSelect, scrollParentRef, onReachEnd, }) {
|
|
10
9
|
const [editingId, setEditingId] = useState(null);
|
|
11
10
|
const [editingValue, setEditingValue] = useState('');
|
|
12
11
|
const startEdit = (e) => {
|
|
@@ -31,46 +30,51 @@ export function EntryList({ entries, columns = [], onOpen, nameHeader = 'Name',
|
|
|
31
30
|
...columns.map((c) => c.width ?? DEFAULT_COL_WIDTH),
|
|
32
31
|
...(trailingActions > 0 ? [`${String(trailingActions * 36)}px`] : []),
|
|
33
32
|
].join(' ');
|
|
34
|
-
const
|
|
33
|
+
const internalScrollRef = useRef(null);
|
|
35
34
|
const virtualizer = useVirtualizer({
|
|
36
35
|
count: entries.length,
|
|
37
|
-
getScrollElement: () => scrollParentRef.current,
|
|
36
|
+
getScrollElement: () => internalScrollRef.current ?? scrollParentRef.current,
|
|
38
37
|
estimateSize: () => ROW_ESTIMATE_LIST_PX,
|
|
39
38
|
overscan: 6,
|
|
40
|
-
scrollMargin,
|
|
41
39
|
getItemKey: (i) => {
|
|
42
40
|
const entry = entries[i];
|
|
43
41
|
return entry ? `${entry.kind}-${entry.id}` : `i-${String(i)}`;
|
|
44
42
|
},
|
|
45
43
|
});
|
|
46
44
|
const virtualRows = virtualizer.getVirtualItems();
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
ev.
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
45
|
+
const lastIndex = virtualRows.length > 0 ? (virtualRows[virtualRows.length - 1]?.index ?? -1) : -1;
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
if (onReachEnd && entries.length > 0 && lastIndex >= entries.length - 1) {
|
|
48
|
+
onReachEnd();
|
|
49
|
+
}
|
|
50
|
+
}, [lastIndex, entries.length, onReachEnd]);
|
|
51
|
+
return (_jsxs("div", { className: "animate-fade-up flex h-full min-h-0 flex-col overflow-hidden rounded-2xl border border-[var(--wui-border)] bg-surface-elevated", children: [_jsxs("div", { className: "grid shrink-0 items-center gap-3 border-b border-border bg-surface-muted/60 px-4 py-2 text-[11.5px] font-medium uppercase tracking-wide text-muted-foreground", style: { gridTemplateColumns: template }, children: [_jsx("span", { children: nameHeader }), columns.map((c) => (_jsx("span", { className: c.mdOnly === false ? undefined : 'hidden md:block', children: c.header }, `h-${c.key}`))), trailingActions > 0 ? _jsx("span", { "aria-hidden": true }) : null] }), _jsx("div", { ref: internalScrollRef, className: "wui-scroll min-h-0 flex-1 overflow-y-auto", children: _jsx("div", { role: "list", style: { height: `${String(virtualizer.getTotalSize())}px`, position: 'relative' }, children: virtualRows.map((virtualRow) => {
|
|
52
|
+
const e = entries[virtualRow.index];
|
|
53
|
+
if (!e)
|
|
54
|
+
return null;
|
|
55
|
+
const intrinsicallyDisabled = isEntryDisabled(e, disableFiles, disableFolders);
|
|
56
|
+
const isEditing = editingId === e.id;
|
|
57
|
+
const disabled = intrinsicallyDisabled || isEditing;
|
|
58
|
+
return (_jsx("div", { role: "listitem", "data-index": virtualRow.index, ref: virtualizer.measureElement, className: cn('group absolute left-0 right-0', virtualRow.index > 0 && 'border-t border-border'), style: {
|
|
59
|
+
transform: `translateY(${String(virtualRow.start - virtualizer.options.scrollMargin)}px)`,
|
|
60
|
+
}, children: _jsxs("div", { className: cn('grid w-full items-center gap-3 px-4 py-2 transition', (e.status === 'pending' || e.status === 'processing') &&
|
|
61
|
+
'animate-pulse ring-1 ring-inset ring-ring/30', disabled ? 'cursor-default' : 'cursor-pointer hover:bg-secondary/60', isEditing && 'bg-secondary/50'), style: { gridTemplateColumns: template }, title: e.name, onClick: () => { if (!disabled && !isEditing)
|
|
62
|
+
onOpen?.(e); }, children: [_jsxs("div", { className: "flex min-w-0 items-center gap-3", children: [onToggleSelect && (_jsx("button", { type: "button", "aria-label": selectedIds?.has(e.id) ? `Deselect ${e.name}` : `Select ${e.name}`, onClick: (ev) => { ev.stopPropagation(); onToggleSelect(e, virtualRow.index, ev.shiftKey); }, className: cn('flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-[5px] border transition-colors', selectedIds?.has(e.id)
|
|
63
|
+
? 'border-[var(--wui-primary)] bg-[var(--wui-primary)] text-[var(--wui-primary-fg)]'
|
|
64
|
+
: 'border-[var(--wui-border-strong)] bg-[var(--wui-surface)] group-hover:border-[var(--wui-fg-muted)]'), children: selectedIds?.has(e.id) && (_jsx("svg", { viewBox: "0 0 24 24", className: "h-3 w-3", fill: "none", stroke: "currentColor", strokeWidth: 2.5, strokeLinecap: "round", strokeLinejoin: "round", children: _jsx("polyline", { points: "20 6 9 17 4 12" }) })) })), _jsx("span", { className: "flex-shrink-0 pr-1", children: renderLeading(e, 'sm') }), isEditing ? (_jsx("input", { type: "text", autoFocus: true, value: editingValue, onChange: (ev) => { setEditingValue(ev.target.value); }, onFocus: (ev) => { ev.target.select(); }, onClick: (ev) => { ev.stopPropagation(); }, onMouseDown: (ev) => { ev.stopPropagation(); }, onKeyDown: (ev) => {
|
|
65
|
+
if (ev.key === 'Enter') {
|
|
66
|
+
ev.preventDefault();
|
|
67
|
+
ev.stopPropagation();
|
|
68
|
+
commitEdit(e);
|
|
69
|
+
}
|
|
70
|
+
else if (ev.key === 'Escape') {
|
|
71
|
+
ev.preventDefault();
|
|
72
|
+
ev.stopPropagation();
|
|
73
|
+
cancelEdit();
|
|
74
|
+
}
|
|
75
|
+
}, onBlur: () => { commitEdit(e); }, maxLength: 255, className: "min-w-0 flex-1 truncate rounded-sm border border-ring/50 bg-background px-1.5 py-0.5 text-[13.5px] font-medium text-foreground outline-none focus:border-ring" })) : (_jsxs("span", { className: "flex min-w-0 flex-col text-left", children: [_jsx("span", { className: "truncate text-[13.5px] font-medium text-foreground", children: e.name }), e.kind === 'folder' && e.caption && (_jsx("span", { className: "truncate text-[11px] text-muted-foreground", children: e.caption })), e.kind === 'file' && e.tags && e.tags.length > 0 && (_jsx("span", { className: "mt-0.5 flex flex-wrap items-center gap-1", children: e.tags.map((t) => (_jsx("span", { className: "rounded-full bg-secondary px-1.5 py-px text-[10px] font-medium text-muted-foreground", children: t }, t))) }))] }))] }), e.kind !== 'folder' && columns.map((c) => (_jsx("span", { className: cn(c.mdOnly === false ? undefined : 'hidden md:block', 'truncate text-left tabular-nums text-[12px] text-muted-foreground'), children: c.render ? c.render(e) : (e.columns?.[c.key] ?? '—') }, `c-${c.key}`))), trailingActions > 0 ? (_jsxs("div", { style: { gridColumnStart: columns.length + 2 }, className: cn('flex items-center justify-end gap-0.5 transition', isEditing
|
|
76
|
+
? 'pointer-events-none opacity-0'
|
|
77
|
+
: 'opacity-0 group-hover:opacity-100 focus-within:opacity-100'), children: [onOpenEditor && e.kind === 'file' ? (_jsx("button", { type: "button", "aria-label": `Open ${e.name} in editor`, title: "Open editor", onClick: (ev) => { ev.stopPropagation(); onOpenEditor(e); }, className: "grid h-7 w-7 place-items-center rounded-md text-muted-foreground transition hover:bg-secondary hover:text-foreground", children: _jsx(SquarePen, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onEditTags && e.kind === 'file' ? (_jsx("button", { type: "button", "aria-label": `Edit teams for ${e.name}`, title: "Teams", onClick: (ev) => { ev.stopPropagation(); onEditTags(e); }, className: "grid h-7 w-7 place-items-center rounded-md text-muted-foreground transition hover:bg-secondary hover:text-foreground", children: _jsx(Tag, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onMove ? (_jsx("button", { type: "button", "aria-label": `Move ${e.name}`, title: "Move", onClick: (ev) => { ev.stopPropagation(); onMove(e); }, className: "grid h-7 w-7 place-items-center rounded-md text-muted-foreground transition hover:bg-secondary hover:text-foreground", children: _jsx(FolderSymlink, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onRename ? (_jsx("button", { type: "button", "aria-label": `Rename ${e.name}`, title: "Rename", onClick: (ev) => { ev.stopPropagation(); startEdit(e); }, className: "grid h-7 w-7 place-items-center rounded-md text-muted-foreground transition hover:bg-secondary hover:text-foreground", children: _jsx(Pencil, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null, onDelete ? (_jsx("button", { type: "button", "aria-label": `Delete ${e.name}`, title: "Delete", onClick: (ev) => { ev.stopPropagation(); onDelete(e); }, className: "grid h-7 w-7 place-items-center rounded-md text-muted-foreground transition hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-950/40", children: _jsx(Trash2, { className: "h-3.5 w-3.5", strokeWidth: 1.75 }) })) : null] })) : null] }) }, virtualRow.key));
|
|
78
|
+
}) }) })] }));
|
|
75
79
|
}
|
|
76
80
|
//# sourceMappingURL=EntryList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntryList.js","sourceRoot":"","sources":["../../../src/components/browser/EntryList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EntryList.js","sourceRoot":"","sources":["../../../src/components/browser/EntryList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAuB7D,MAAM,UAAU,SAAS,CAAC,EACxB,OAAO,EACP,OAAO,GAAG,EAAE,EACZ,MAAM,EACN,UAAU,GAAG,MAAM,EACnB,aAAa,GAAG,cAAc,EAC9B,YAAY,GAAG,KAAK,EACpB,cAAc,GAAG,KAAK,EACtB,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EACf,UAAU,GACJ;IACN,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAE7D,MAAM,SAAS,GAAG,CAAC,CAAe,EAAQ,EAAE;QAC1C,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnB,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,eAAe,CAAC,EAAE,CAAC,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,CAAe,EAAQ,EAAE;QAC3C,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;QACjC,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5B,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnI,MAAM,QAAQ,GAAG;QACf,KAAK;QACL,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,iBAAiB,CAAC;QACnD,GAAG,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,eAAe,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACtE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEZ,MAAM,iBAAiB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAEvD,MAAM,WAAW,GAAG,cAAc,CAAC;QACjC,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,gBAAgB,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO;QAC5E,YAAY,EAAE,GAAG,EAAE,CAAC,oBAAoB;QACxC,QAAQ,EAAE,CAAC;QACX,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC;IAElD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnG,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxE,UAAU,EAAE,CAAC;QACf,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;IAE5C,OAAO,CACL,eAAK,SAAS,EAAC,gIAAgI,aAC7I,eACE,SAAS,EAAC,+JAA+J,EACzK,KAAK,EAAE,EAAE,mBAAmB,EAAE,QAAQ,EAAE,aAExC,yBAAO,UAAU,GAAQ,EACxB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,eAEE,SAAS,EAAE,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,YAE5D,CAAC,CAAC,MAAM,IAHJ,KAAK,CAAC,CAAC,GAAG,EAAE,CAIZ,CACR,CAAC,EACD,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,qCAAoB,CAAC,CAAC,CAAC,IAAI,IAC9C,EACN,cAAK,GAAG,EAAE,iBAAiB,EAAE,SAAS,EAAC,2CAA2C,YAChF,cACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,YAEjF,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;wBAChC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;wBACpC,IAAI,CAAC,CAAC;4BAAE,OAAO,IAAI,CAAC;wBACpB,MAAM,qBAAqB,GAAG,eAAe,CAAC,CAAC,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;wBAC/E,MAAM,SAAS,GAAG,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;wBACrC,MAAM,QAAQ,GAAG,qBAAqB,IAAI,SAAS,CAAC;wBACpD,OAAO,CACL,cAEE,IAAI,EAAC,UAAU,gBACH,UAAU,CAAC,KAAK,EAC5B,GAAG,EAAE,WAAW,CAAC,cAAc,EAC/B,SAAS,EAAE,EAAE,CACX,+BAA+B,EAC/B,UAAU,CAAC,KAAK,GAAG,CAAC,IAAI,wBAAwB,CACjD,EACD,KAAK,EAAE;gCACL,SAAS,EAAE,cAAc,MAAM,CAAC,UAAU,CAAC,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK;6BAC1F,YAED,eACE,SAAS,EAAE,EAAE,CACX,qDAAqD,EACrD,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC;oCACnD,8CAA8C,EAChD,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,sCAAsC,EACpE,SAAS,IAAI,iBAAiB,CAC/B,EACD,KAAK,EAAE,EAAE,mBAAmB,EAAE,QAAQ,EAAE,EACxC,KAAK,EAAE,CAAC,CAAC,IAAI,EACb,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS;oCAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAE5D,eAAK,SAAS,EAAC,iCAAiC,aAC7C,cAAc,IAAI,CACjB,iBACE,IAAI,EAAC,QAAQ,gBACD,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAC9E,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC5F,SAAS,EAAE,EAAE,CACX,oGAAoG,EACpG,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oDACpB,CAAC,CAAC,kFAAkF;oDACpF,CAAC,CAAC,oGAAoG,CACzG,YAEA,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CACzB,cAAK,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,SAAS,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAE,GAAG,EAAE,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,YAC3I,mBAAU,MAAM,EAAC,gBAAgB,GAAG,GAChC,CACP,GACM,CACV,EACD,eAAM,SAAS,EAAC,oBAAoB,YAAE,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,GAAQ,EACnE,SAAS,CAAC,CAAC,CAAC,CACX,gBACE,IAAI,EAAC,MAAM,EACX,SAAS,QACT,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACvD,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EACxC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAC1C,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAC9C,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;oDAChB,IAAI,EAAE,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;wDACvB,EAAE,CAAC,cAAc,EAAE,CAAC;wDACpB,EAAE,CAAC,eAAe,EAAE,CAAC;wDACrB,UAAU,CAAC,CAAC,CAAC,CAAC;oDAChB,CAAC;yDAAM,IAAI,EAAE,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;wDAC/B,EAAE,CAAC,cAAc,EAAE,CAAC;wDACpB,EAAE,CAAC,eAAe,EAAE,CAAC;wDACrB,UAAU,EAAE,CAAC;oDACf,CAAC;gDACH,CAAC,EACD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAChC,SAAS,EAAE,GAAG,EACd,SAAS,EAAC,+JAA+J,GACzK,CACH,CAAC,CAAC,CAAC,CACF,gBAAM,SAAS,EAAC,iCAAiC,aAC/C,eAAM,SAAS,EAAC,oDAAoD,YACjE,CAAC,CAAC,IAAI,GACF,EACN,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,IAAI,CACnC,eAAM,SAAS,EAAC,4CAA4C,YAAE,CAAC,CAAC,OAAO,GAAQ,CAChF,EACA,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CACnD,eAAM,SAAS,EAAC,0CAA0C,YACvD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjB,eAAc,SAAS,EAAC,sFAAsF,YAAE,CAAC,IAAtG,CAAC,CAA6G,CAC1H,CAAC,GACG,CACR,IACI,CACR,IACG,EACL,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACzC,eAEE,SAAS,EAAE,EAAE,CACX,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAClD,mEAAmE,CACpE,YAEA,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IANhD,KAAK,CAAC,CAAC,GAAG,EAAE,CAOZ,CACR,CAAC,EACD,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,CACrB,eACE,KAAK,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,EAC9C,SAAS,EAAE,EAAE,CACX,kDAAkD,EAClD,SAAS;4CACP,CAAC,CAAC,+BAA+B;4CACjC,CAAC,CAAC,4DAA4D,CACjE,aAEA,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CACnC,iBACE,IAAI,EAAC,QAAQ,gBACD,QAAQ,CAAC,CAAC,IAAI,YAAY,EACtC,KAAK,EAAC,aAAa,EACnB,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3D,SAAS,EAAC,sHAAsH,YAEhI,KAAC,SAAS,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,IAAI,GAAI,GACjD,CACV,CAAC,CAAC,CAAC,IAAI,EACP,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CACjC,iBACE,IAAI,EAAC,QAAQ,gBACD,kBAAkB,CAAC,CAAC,IAAI,EAAE,EACtC,KAAK,EAAC,OAAO,EACb,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACzD,SAAS,EAAC,sHAAsH,YAEhI,KAAC,GAAG,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,IAAI,GAAI,GAC3C,CACV,CAAC,CAAC,CAAC,IAAI,EACP,MAAM,CAAC,CAAC,CAAC,CACR,iBACE,IAAI,EAAC,QAAQ,gBACD,QAAQ,CAAC,CAAC,IAAI,EAAE,EAC5B,KAAK,EAAC,MAAM,EACZ,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrD,SAAS,EAAC,sHAAsH,YAEhI,KAAC,aAAa,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,IAAI,GAAI,GACrD,CACV,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,CAAC,CAAC,CAAC,CACV,iBACE,IAAI,EAAC,QAAQ,gBACD,UAAU,CAAC,CAAC,IAAI,EAAE,EAC9B,KAAK,EAAC,QAAQ,EACd,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACxD,SAAS,EAAC,sHAAsH,YAEhI,KAAC,MAAM,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,IAAI,GAAI,GAC9C,CACV,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,CAAC,CAAC,CAAC,CACV,iBACE,IAAI,EAAC,QAAQ,gBACD,UAAU,CAAC,CAAC,IAAI,EAAE,EAC9B,KAAK,EAAC,QAAQ,EACd,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACvD,SAAS,EAAC,yIAAyI,YAEnJ,KAAC,MAAM,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,IAAI,GAAI,GAC9C,CACV,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,IArKD,UAAU,CAAC,GAAG,CAsKf,CACP,CAAC;oBACJ,CAAC,CAAC,GACI,GACF,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MoveDialog.d.ts","sourceRoot":"","sources":["../../../src/components/browser/MoveDialog.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAiBD,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"MoveDialog.d.ts","sourceRoot":"","sources":["../../../src/components/browser/MoveDialog.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,UAAU,YAAY;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAiBD,wBAAgB,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,eAAe,sCAgSjG"}
|
|
@@ -97,6 +97,8 @@ export function MoveDialog({ entries, folders, currentParentId, onMove, onClose
|
|
|
97
97
|
})] })) }), _jsx("div", { className: "border-t border-border" }), _jsxs("div", { className: "flex items-center justify-between gap-4 px-6 py-4", children: [_jsx("p", { className: "min-w-0 truncate text-[13px] text-muted-foreground", children: selectedLabel
|
|
98
98
|
? (_jsxs(_Fragment, { children: ["Moving to:", ' ', _jsx("span", { className: "font-medium text-foreground", children: selectedLabel })] }))
|
|
99
99
|
: (_jsx("span", { className: "italic", children: "Select a destination folder" })) }), _jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [_jsx("button", { type: "button", onClick: onClose, className: "inline-flex h-9 items-center rounded-full border border-border px-4 text-[13px] text-foreground transition hover:bg-secondary", children: "Cancel" }), _jsx("button", { type: "button", disabled: !canMove, onClick: () => { if (selected !== undefined)
|
|
100
|
-
onMove(selected); }, className: "inline-flex h-9 items-center rounded-full bg-
|
|
100
|
+
onMove(selected); }, className: "inline-flex h-9 items-center rounded-full bg-[var(--wui-primary)] px-5 text-[13px] font-medium text-[var(--wui-primary-fg)] transition-colors hover:bg-[var(--wui-primary-hover)] disabled:cursor-not-allowed disabled:opacity-40", children: "Move here" })] })] })] })] }),
|
|
101
|
+
// Portal into the workflow-ui scope so the dialog inherits the host's --wui-* tokens.
|
|
102
|
+
document.querySelector('[data-workflow-ui]') ?? document.body);
|
|
101
103
|
}
|
|
102
104
|
//# sourceMappingURL=MoveDialog.js.map
|