windmill-components 1.537.1 → 1.542.4
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/package/components/AIProviderPicker.svelte +181 -0
- package/package/components/AIProviderPicker.svelte.d.ts +15 -0
- package/package/components/ArgInfo.svelte +2 -2
- package/package/components/ArgInput.svelte +35 -9
- package/package/components/ArgInput.svelte.d.ts +3 -3
- package/package/components/AssignableTagsInner.svelte +89 -3
- package/package/components/ConcurrentJobsChart.svelte +36 -48
- package/package/components/ConcurrentJobsChart.svelte.d.ts +8 -20
- package/package/components/CustomPopover.svelte.d.ts +1 -1
- package/package/components/DropdownSelect.svelte +26 -0
- package/package/components/DropdownSelect.svelte.d.ts +11 -0
- package/package/components/DropdownV2Inner.svelte +1 -1
- package/package/components/{DynSelect.svelte → DynamicInput.svelte} +47 -15
- package/package/components/DynamicInput.svelte.d.ts +11 -0
- package/package/components/EditableSchemaForm.svelte +119 -95
- package/package/components/EditableSchemaForm.svelte.d.ts +4 -4
- package/package/components/Editor.svelte +86 -93
- package/package/components/Editor.svelte.d.ts +4 -3
- package/package/components/EditorBar.svelte +2 -5
- package/package/components/FlowBuilder.svelte +3 -3
- package/package/components/FlowLogRow.svelte +64 -0
- package/package/components/FlowLogRow.svelte.d.ts +15 -0
- package/package/components/FlowLogViewer.svelte +406 -373
- package/package/components/FlowLogViewer.svelte.d.ts +5 -1
- package/package/components/FlowLogViewerWrapper.svelte +44 -1
- package/package/components/FlowLoopIterationPreview.svelte.d.ts +1 -1
- package/package/components/FlowPreviewContent.svelte.d.ts +1 -1
- package/package/components/FlowStatusViewerInner.svelte +34 -3
- package/package/components/FolderPicker.svelte +1 -1
- package/package/components/InputTransformForm.svelte +20 -10
- package/package/components/JobArgs.svelte +1 -1
- package/package/components/JobLoader.svelte.d.ts +1 -1
- package/package/components/JobStatus.svelte +2 -0
- package/package/components/LogSnippetViewer.svelte +3 -3
- package/package/components/LogSnippetViewer.svelte.d.ts +1 -1
- package/package/components/LogViewer.svelte +87 -71
- package/package/components/LogViewer.svelte.d.ts +1 -0
- package/package/components/Path.svelte +7 -1
- package/package/components/Path.svelte.d.ts +1 -1
- package/package/components/PrefixedInput.svelte +120 -0
- package/package/components/PrefixedInput.svelte.d.ts +8 -0
- package/package/components/QueuePosition.svelte +81 -0
- package/package/components/QueuePosition.svelte.d.ts +8 -0
- package/package/components/ResourceNarrowing.svelte +13 -0
- package/package/components/ResourceNarrowing.svelte.d.ts +6 -0
- package/package/components/ResourceTypePicker.svelte +49 -74
- package/package/components/RunChart.svelte +74 -89
- package/package/components/RunChart.svelte.d.ts +10 -22
- package/package/components/S3FilePicker.svelte +1 -1
- package/package/components/SchemaForm.svelte.d.ts +2 -2
- package/package/components/ScriptBuilder.svelte +2 -1
- package/package/components/ScriptEditor.svelte +4 -3
- package/package/components/ScriptEditor.svelte.d.ts +2 -1
- package/package/components/ServiceLogsInner.svelte +1 -1
- package/package/components/ShareModal.svelte.d.ts +1 -1
- package/package/components/SimpleEditor.svelte +4 -67
- package/package/components/StringTypeNarrowing.svelte +5 -10
- package/package/components/TemplateEditor.svelte +2 -16
- package/package/components/TimeAgo.svelte +1 -1
- package/package/components/TimeAgo.svelte.d.ts +1 -0
- package/package/components/Toggle.svelte +2 -1
- package/package/components/Toggle.svelte.d.ts +2 -1
- package/package/components/WorkerRepl.svelte +1 -1
- package/package/components/apps/components/display/AppNavbarItem.svelte +2 -1
- package/package/components/apps/components/display/table/AppAggridTable.svelte +44 -48
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte +101 -19
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte.d.ts +5 -2
- package/package/components/apps/components/display/table/utils.js +36 -5
- package/package/components/apps/components/inputs/currency/CurrencyInput.svelte +10 -5
- package/package/components/apps/editor/AppEditor.svelte +4 -3
- package/package/components/apps/editor/AppEditorHeader.svelte +0 -1
- package/package/components/apps/editor/GridViewer.svelte.d.ts +11 -4
- package/package/components/apps/editor/SettingsPanel.svelte +2 -2
- package/package/components/apps/editor/componentsPanel/ListItem.svelte +2 -2
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte.d.ts +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +1 -1
- package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +26 -3
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +13 -5
- package/package/components/apps/svelte-grid/Grid.svelte.d.ts +30 -11
- package/package/components/assets/JobAssetsViewer.svelte +28 -24
- package/package/components/auditLogs/AuditLogsTable.svelte +2 -6
- package/package/components/chartjs-wrappers/Chart.svelte.d.ts +14 -7
- package/package/components/common/OnChange.svelte.d.ts +11 -4
- package/package/components/common/badge/Badge.svelte +9 -2
- package/package/components/common/badge/Badge.svelte.d.ts +2 -1
- package/package/components/common/calendarPicker/CalendarPicker.svelte +5 -1
- package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +5 -4
- package/package/components/common/drawer/Disposable.svelte +9 -11
- package/package/components/common/drawer/Drawer.svelte +3 -4
- package/package/components/common/drawer/Drawer.svelte.d.ts +1 -0
- package/package/components/common/menu/MenuItem.svelte.d.ts +2 -2
- package/package/components/common/modal/Modal.svelte.d.ts +1 -1
- package/package/components/common/tabs/TabContent.svelte +2 -7
- package/package/components/common/tabs/TabContent.svelte.d.ts +5 -27
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +9 -3
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -0
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte +8 -4
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte.d.ts +1 -0
- package/package/components/copilot/MetadataGen.svelte +1 -1
- package/package/components/copilot/chat/AIChatManager.svelte.js +24 -102
- package/package/components/copilot/chat/AssistantMessage.svelte +0 -4
- package/package/components/copilot/chat/anthropic.d.ts +15 -0
- package/package/components/copilot/chat/anthropic.js +208 -0
- package/package/components/copilot/chat/api/apiTools.d.ts +2 -2
- package/package/components/copilot/chat/api/apiTools.js +10 -7
- package/package/components/copilot/chat/api/core.d.ts +1 -1
- package/package/components/copilot/chat/api/core.js +7 -2
- package/package/components/copilot/chat/ask/core.d.ts +1 -1
- package/package/components/copilot/chat/ask/core.js +7 -2
- package/package/components/copilot/chat/flow/core.d.ts +1 -1
- package/package/components/copilot/chat/flow/core.js +14 -4
- package/package/components/copilot/chat/monaco-adapter.d.ts +6 -5
- package/package/components/copilot/chat/navigator/core.d.ts +1 -1
- package/package/components/copilot/chat/navigator/core.js +7 -2
- package/package/components/copilot/chat/script/CodeDisplay.svelte +10 -111
- package/package/components/copilot/chat/script/core.d.ts +5 -4
- package/package/components/copilot/chat/script/core.js +131 -19
- package/package/components/copilot/chat/shared.d.ts +7 -7
- package/package/components/copilot/lib.d.ts +29 -8
- package/package/components/copilot/lib.js +199 -24
- package/package/components/flows/content/FlowInput.svelte +5 -5
- package/package/components/flows/content/FlowModuleComponent.svelte +5 -2
- package/package/components/flows/content/FlowModuleEarlyStop.svelte +47 -17
- package/package/components/flows/content/FlowModuleSleep.svelte +4 -1
- package/package/components/flows/content/FlowModuleSuspend.svelte +0 -1
- package/package/components/flows/content/FlowModuleTimeout.svelte +50 -10
- package/package/components/flows/content/FlowModuleTimeout.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowRetries.svelte +108 -3
- package/package/components/flows/content/FlowRetries.svelte.d.ts +3 -2
- package/package/components/flows/flowInfers.js +8 -35
- package/package/components/flows/flowStore.d.ts +45 -1
- package/package/components/flows/flowStore.js +1 -1
- package/package/components/flows/map/FlowJobsMenu.svelte +3 -3
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +61 -54
- package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +1 -1
- package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +1 -1
- package/package/components/flows/map/InsertModuleButton.svelte +1 -0
- package/package/components/flows/map/InsertModuleInner.svelte +12 -15
- package/package/components/flows/map/InsertModuleInner.svelte.d.ts +10 -9
- package/package/components/flows/propPicker/OutputPickerInner.svelte.d.ts +1 -1
- package/package/components/git_sync/DetectionFlow.svelte +15 -17
- package/package/components/git_sync/GitSyncContext.svelte.js +1 -1
- package/package/components/git_sync/GitSyncRepositoryCard.svelte +0 -1
- package/package/components/graph/graphBuilder.svelte.d.ts +5 -1
- package/package/components/graph/renderers/edges/BaseEdge.svelte +9 -1
- package/package/components/graph/renderers/edges/BaseEdge.svelte.d.ts +4 -1
- package/package/components/graph/renderers/nodes/BranchAllStart.svelte +2 -3
- package/package/components/graph/renderers/nodes/BranchOneStart.svelte +2 -3
- package/package/components/graph/renderers/triggers/TriggerButton.svelte.d.ts +1 -1
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte +3 -1
- package/package/components/graph/renderers/triggers/TriggersWrapper.svelte +34 -24
- package/package/components/graph/renderers/triggers/TriggersWrapper.svelte.d.ts +1 -2
- package/package/components/home/ItemsList.svelte +17 -13
- package/package/components/home/TreeView.svelte +21 -27
- package/package/components/home/TreeView.svelte.d.ts +2 -29
- package/package/components/home/TreeViewRoot.svelte +11 -23
- package/package/components/home/TreeViewRoot.svelte.d.ts +15 -13
- package/package/components/icons/GitIcon.svelte +10 -2
- package/package/components/icons/GitIcon.svelte.d.ts +1 -0
- package/package/components/meltComponents/MeltButton.svelte.d.ts +1 -1
- package/package/components/meltComponents/Popover.svelte +23 -3
- package/package/components/meltComponents/Popover.svelte.d.ts +2 -1
- package/package/components/monacoLanguagesOptions.d.ts +3 -0
- package/package/components/monacoLanguagesOptions.js +109 -0
- package/package/components/propertyPicker/ObjectViewer.svelte +7 -2
- package/package/components/propertyPicker/PropPicker.svelte +1 -1
- package/package/components/propertyPicker/utils.js +14 -7
- package/package/components/runs/JobRunsPreview.svelte +212 -177
- package/package/components/runs/JobsLoader.svelte +2 -2
- package/package/components/runs/JobsLoader.svelte.d.ts +1 -1
- package/package/components/runs/NoWorkerWithTagWarning.svelte +18 -5
- package/package/components/runs/RunBadges.svelte +100 -0
- package/package/components/runs/RunBadges.svelte.d.ts +12 -0
- package/package/components/runs/RunLabels.svelte +86 -0
- package/package/components/runs/RunLabels.svelte.d.ts +10 -0
- package/package/components/runs/RunOption.svelte +20 -0
- package/package/components/runs/RunOption.svelte.d.ts +10 -0
- package/package/components/runs/RunRow.svelte +239 -151
- package/package/components/runs/RunRow.svelte.d.ts +12 -9
- package/package/components/runs/RunsBatchActionsDropdown.svelte +13 -17
- package/package/components/runs/RunsBatchActionsDropdown.svelte.d.ts +5 -18
- package/package/components/runs/RunsFilter.svelte +369 -243
- package/package/components/runs/RunsFilter.svelte.d.ts +2 -0
- package/package/components/runs/RunsQueue.svelte +96 -25
- package/package/components/runs/RunsQueue.svelte.d.ts +7 -21
- package/package/components/runs/RunsTable.svelte +62 -71
- package/package/components/runs/RunsTable.svelte.d.ts +2 -1
- package/package/components/runs/runs-grid.css +95 -0
- package/package/components/schema/EditableSchemaDrawer.svelte +12 -12
- package/package/components/schema/FlowPropertyEditor.svelte +197 -206
- package/package/components/schema/PropertyEditor.svelte +33 -35
- package/package/components/schema/SchemaFormDND.svelte.d.ts +2 -2
- package/package/components/search/GlobalSearchModal.svelte +8 -1
- package/package/components/select/DraggableTags.svelte.d.ts +17 -7
- package/package/components/select/MultiSelect.svelte.d.ts +21 -11
- package/package/components/select/Select.svelte +2 -1
- package/package/components/select/Select.svelte.d.ts +25 -13
- package/package/components/select/SelectDropdown.svelte.d.ts +14 -7
- package/package/components/settings/TokenDisplay.svelte +1 -1
- package/package/components/sidebar/OperatorMenu.svelte +5 -0
- package/package/components/sidebar/SidebarContent.svelte +48 -2
- package/package/components/sidebar/WorkspaceMenu.svelte +116 -17
- package/package/components/toast.js +6 -3
- package/package/components/triggers/AddTriggersButton.svelte +7 -6
- package/package/components/triggers/CaptureWrapper.svelte +19 -3
- package/package/components/triggers/TriggerLabel.svelte +8 -0
- package/package/components/triggers/TriggerTokens.svelte +1 -1
- package/package/components/triggers/TriggersEditor.svelte +9 -5
- package/package/components/triggers/TriggersTable.svelte +2 -2
- package/package/components/triggers/TriggersWrapper.svelte +16 -5
- package/package/components/triggers/TriggersWrapper.svelte.d.ts +3 -19
- package/package/components/{details/EmailTriggerCaptures.svelte → triggers/email/DefaultEmailCapture.svelte} +5 -5
- package/package/components/{details/EmailTriggerCaptures.svelte.d.ts → triggers/email/DefaultEmailCapture.svelte.d.ts} +4 -4
- package/package/components/{details/EmailTriggerConfigSection.svelte → triggers/email/DefaultEmailConfigSection.svelte} +24 -14
- package/package/components/triggers/email/DefaultEmailConfigSection.svelte.d.ts +13 -0
- package/package/components/triggers/email/DefaultEmailPanel.svelte +71 -0
- package/package/components/triggers/email/DefaultEmailPanel.svelte.d.ts +11 -0
- package/package/components/triggers/email/EmailCapture.svelte +39 -0
- package/package/components/triggers/email/EmailCapture.svelte.d.ts +43 -0
- package/package/components/triggers/email/EmailTriggerEditor.svelte +20 -0
- package/package/components/triggers/email/EmailTriggerEditor.svelte.d.ts +11 -0
- package/package/components/triggers/email/EmailTriggerEditorConfigSection.svelte +133 -0
- package/package/components/triggers/email/EmailTriggerEditorConfigSection.svelte.d.ts +14 -0
- package/package/components/triggers/email/EmailTriggerEditorInner.svelte +335 -0
- package/package/components/triggers/email/EmailTriggerEditorInner.svelte.d.ts +22 -0
- package/package/components/triggers/email/EmailTriggerPanel.svelte +61 -0
- package/package/components/triggers/email/EmailTriggerPanel.svelte.d.ts +14 -0
- package/package/components/triggers/email/utils.d.ts +4 -0
- package/package/components/triggers/email/utils.js +52 -0
- package/package/components/triggers/http/RouteEditorConfigSection.svelte +1 -1
- package/package/components/triggers/http/utils.js +1 -1
- package/package/components/triggers/triggers.svelte.d.ts +1 -0
- package/package/components/triggers/triggers.svelte.js +24 -2
- package/package/components/triggers/utils.js +19 -5
- package/package/components/triggers.d.ts +1 -1
- package/package/components/triggers.js +2 -0
- package/package/components/wizards/AgGridWizard.svelte +85 -80
- package/package/components/workspaceSettings/AISettings.svelte +74 -22
- package/package/components/workspaceSettings/AISettings.svelte.d.ts +2 -1
- package/package/components/workspaceSettings/CreateWorkspace.svelte +395 -0
- package/package/components/workspaceSettings/CreateWorkspace.svelte.d.ts +6 -0
- package/package/components/workspaceSettings/DucklakeSettings.svelte +3 -1
- package/package/components/workspaceSettings/GitSyncFilterSettings.svelte +1 -1
- package/package/components/workspaceSettings/StorageSettings.svelte +69 -48
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +142 -3
- package/package/gen/schemas.gen.js +144 -3
- package/package/gen/services.gen.d.ts +129 -1
- package/package/gen/services.gen.js +267 -1
- package/package/gen/types.gen.d.ts +434 -8
- package/package/hubPaths.json +4 -2
- package/package/infer.js +1 -1
- package/package/keyboardChain.d.ts +5 -0
- package/package/keyboardChain.js +40 -0
- package/package/services/JobManager.js +2 -2
- package/package/stores.d.ts +3 -1
- package/package/stores.js +8 -5
- package/package/utils/workspaceHierarchy.d.ts +27 -0
- package/package/utils/workspaceHierarchy.js +101 -0
- package/package/utils.d.ts +6 -3
- package/package/utils.js +30 -15
- package/package/workspace_settings.js +2 -3
- package/package.json +9 -11
- package/package/components/DynSelect.svelte.d.ts +0 -11
- package/package/components/ObjectTypeNarrowing.svelte +0 -18
- package/package/components/ObjectTypeNarrowing.svelte.d.ts +0 -22
- package/package/components/details/DetailPageTriggerPanel.svelte +0 -121
- package/package/components/details/DetailPageTriggerPanel.svelte.d.ts +0 -20
- package/package/components/details/EmailTriggerConfigSection.svelte.d.ts +0 -12
- package/package/components/details/EmailTriggerPanel.svelte +0 -76
- package/package/components/details/EmailTriggerPanel.svelte.d.ts +0 -26
|
@@ -5,37 +5,119 @@ import { RefreshCw } from 'lucide-svelte';
|
|
|
5
5
|
import Badge from '../../../../common/badge/Badge.svelte';
|
|
6
6
|
import Alert from '../../../../common/alert/Alert.svelte';
|
|
7
7
|
import { isObject } from '../../../../../utils';
|
|
8
|
-
let { id, columnDefs = [], result = [], allowColumnDefsActions = true, children } = $props();
|
|
8
|
+
let { id, columnDefs = [], result = [], allowColumnDefsActions = true, children, actionsPresent = false, customActionsHeader = undefined } = $props();
|
|
9
9
|
const { app, mode, selectedComponent } = getContext('AppViewerContext');
|
|
10
|
+
let syncInProgress = false;
|
|
11
|
+
function hasActionsPlaceholder(cols) {
|
|
12
|
+
if (!Array.isArray(cols))
|
|
13
|
+
return false;
|
|
14
|
+
return cols.findIndex((c) => c?._isActionsColumn === true) > -1;
|
|
15
|
+
}
|
|
16
|
+
function addActionsPlaceholder(cols) {
|
|
17
|
+
const hdr = customActionsHeader ?? 'Actions';
|
|
18
|
+
const placeholder = {
|
|
19
|
+
field: '__actions__',
|
|
20
|
+
_isActionsColumn: true,
|
|
21
|
+
headerName: hdr,
|
|
22
|
+
flex: 1
|
|
23
|
+
};
|
|
24
|
+
if (!Array.isArray(cols))
|
|
25
|
+
return [placeholder];
|
|
26
|
+
return [...cols, placeholder];
|
|
27
|
+
}
|
|
28
|
+
function removeActionsPlaceholder(cols) {
|
|
29
|
+
if (!Array.isArray(cols))
|
|
30
|
+
return [];
|
|
31
|
+
return cols.filter((c) => c?._isActionsColumn !== true);
|
|
32
|
+
}
|
|
33
|
+
async function ensureActionsColumn() {
|
|
34
|
+
// Only act in editor (DND) mode
|
|
35
|
+
if ($mode !== 'dnd')
|
|
36
|
+
return;
|
|
37
|
+
const gridItem = findGridItem($app, id);
|
|
38
|
+
if (!gridItem)
|
|
39
|
+
return;
|
|
40
|
+
// Type the configuration more safely
|
|
41
|
+
const rawConf = gridItem.data.configuration?.columnDefs;
|
|
42
|
+
if (!rawConf)
|
|
43
|
+
return;
|
|
44
|
+
// Type guard for configuration structure
|
|
45
|
+
const conf = rawConf;
|
|
46
|
+
if (!conf.type || (conf.type !== 'static' && conf.type !== 'evalv2'))
|
|
47
|
+
return;
|
|
48
|
+
let currentColumns;
|
|
49
|
+
if (conf.type === 'static') {
|
|
50
|
+
currentColumns = Array.isArray(conf.value) ? conf.value : [];
|
|
51
|
+
}
|
|
52
|
+
else if (conf.type === 'evalv2') {
|
|
53
|
+
try {
|
|
54
|
+
const parsed = JSON.parse(conf.expr ?? '[]');
|
|
55
|
+
currentColumns = Array.isArray(parsed) ? parsed : [];
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
console.warn('Failed to parse columnDefs expression:', e);
|
|
59
|
+
currentColumns = [];
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
const hasPlaceholder = hasActionsPlaceholder(currentColumns);
|
|
63
|
+
// Auto-sync logic: add missing actions column, remove when actions gone
|
|
64
|
+
const needsAdd = actionsPresent && !hasPlaceholder;
|
|
65
|
+
const needsRemove = !actionsPresent && hasPlaceholder;
|
|
66
|
+
if (!needsAdd && !needsRemove)
|
|
67
|
+
return;
|
|
68
|
+
let nextColumns = currentColumns || [];
|
|
69
|
+
if (needsAdd)
|
|
70
|
+
nextColumns = addActionsPlaceholder(nextColumns);
|
|
71
|
+
if (needsRemove)
|
|
72
|
+
nextColumns = removeActionsPlaceholder(nextColumns);
|
|
73
|
+
// Update configuration with proper typing
|
|
74
|
+
if (conf.type === 'static') {
|
|
75
|
+
conf.value = nextColumns;
|
|
76
|
+
}
|
|
77
|
+
else if (conf.type === 'evalv2') {
|
|
78
|
+
conf.expr = JSON.stringify(nextColumns);
|
|
79
|
+
}
|
|
80
|
+
await updateConfiguration();
|
|
81
|
+
}
|
|
82
|
+
$effect(() => {
|
|
83
|
+
const shouldSync = actionsPresent !== undefined || columnDefs?.length !== undefined;
|
|
84
|
+
if (shouldSync && !syncInProgress) {
|
|
85
|
+
syncInProgress = true;
|
|
86
|
+
ensureActionsColumn().finally(() => {
|
|
87
|
+
syncInProgress = false;
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
});
|
|
10
91
|
async function syncColumns() {
|
|
11
|
-
|
|
92
|
+
const gridItem = findGridItem($app, id);
|
|
12
93
|
if (gridItem && result) {
|
|
13
94
|
const keys = Object.keys(result[0] ?? {}) ?? [];
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
95
|
+
const conf = gridItem.data.configuration.columnDefs;
|
|
96
|
+
const newColumns = keys.map((key) => ({
|
|
97
|
+
field: key,
|
|
98
|
+
headerName: key,
|
|
99
|
+
flex: 1
|
|
100
|
+
}));
|
|
101
|
+
if (conf.type === 'static') {
|
|
102
|
+
conf.value = newColumns;
|
|
20
103
|
}
|
|
21
|
-
else if (
|
|
22
|
-
|
|
23
|
-
field: key,
|
|
24
|
-
headerName: key,
|
|
25
|
-
flex: 1
|
|
26
|
-
})));
|
|
104
|
+
else if (conf.type === 'evalv2') {
|
|
105
|
+
conf.expr = JSON.stringify(newColumns);
|
|
27
106
|
}
|
|
28
107
|
await updateConfiguration();
|
|
29
108
|
}
|
|
30
109
|
}
|
|
31
110
|
async function setEmptyColumns() {
|
|
32
|
-
|
|
33
|
-
if (gridItem
|
|
34
|
-
|
|
111
|
+
const gridItem = findGridItem($app, id);
|
|
112
|
+
if (!gridItem)
|
|
113
|
+
return;
|
|
114
|
+
const conf = gridItem.data.configuration.columnDefs;
|
|
115
|
+
if (conf.type === 'static') {
|
|
116
|
+
conf.value = [];
|
|
35
117
|
await updateConfiguration();
|
|
36
118
|
}
|
|
37
|
-
else if (
|
|
38
|
-
|
|
119
|
+
else if (conf.type === 'evalv2') {
|
|
120
|
+
conf.expr = '[]';
|
|
39
121
|
await updateConfiguration();
|
|
40
122
|
}
|
|
41
123
|
}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import type { WindmillColumnDef } from './utils';
|
|
1
2
|
interface Props {
|
|
2
3
|
id: string;
|
|
3
|
-
columnDefs?:
|
|
4
|
-
result?: Array<any
|
|
4
|
+
columnDefs?: WindmillColumnDef[];
|
|
5
|
+
result?: Array<Record<string, any>> | undefined;
|
|
5
6
|
allowColumnDefsActions?: boolean;
|
|
6
7
|
children?: import('svelte').Snippet;
|
|
8
|
+
actionsPresent?: boolean;
|
|
9
|
+
customActionsHeader?: string | undefined;
|
|
7
10
|
}
|
|
8
11
|
declare const SyncColumnDefs: import("svelte").Component<Props, {}, "">;
|
|
9
12
|
type SyncColumnDefs = ReturnType<typeof SyncColumnDefs>;
|
|
@@ -76,6 +76,12 @@ export function transformColumnDefs({ columnDefs, actions, customActionsHeader,
|
|
|
76
76
|
return [];
|
|
77
77
|
}
|
|
78
78
|
let r = columnDefs?.filter((x) => x && !x.ignored) ?? [];
|
|
79
|
+
// Allow an explicit "actions" placeholder in columnDefs so users can manage it like any column.
|
|
80
|
+
// When present, replace it with the computed actions colDef. When not present but actions exist,
|
|
81
|
+
// we will append the actions column after validation below.
|
|
82
|
+
const actionsIndex = r.findIndex((c) => {
|
|
83
|
+
return c?._isActionsColumn === true;
|
|
84
|
+
});
|
|
79
85
|
if (onDelete) {
|
|
80
86
|
r.push({
|
|
81
87
|
field: 'delete',
|
|
@@ -118,15 +124,40 @@ export function transformColumnDefs({ columnDefs, actions, customActionsHeader,
|
|
|
118
124
|
});
|
|
119
125
|
}
|
|
120
126
|
if (actions?.length) {
|
|
121
|
-
|
|
122
|
-
|
|
127
|
+
const computedActionsCol = {
|
|
128
|
+
field: '__actions__',
|
|
129
|
+
_isActionsColumn: true,
|
|
130
|
+
headerName: 'Actions',
|
|
123
131
|
cellRenderer: tableActionsFactory,
|
|
124
132
|
autoHeight: true,
|
|
125
133
|
cellStyle: { textAlign: 'center' },
|
|
126
134
|
cellClass: 'grid-cell-centered',
|
|
127
|
-
|
|
128
|
-
...(
|
|
129
|
-
|
|
135
|
+
// Only lock position to right if user hasn't explicitly positioned the actions column
|
|
136
|
+
...(actionsIndex === -1 ? { lockPosition: 'right' } : {}),
|
|
137
|
+
// Set default minWidth based on number of actions (if not wrapping)
|
|
138
|
+
...(!wrapActions ? { minWidth: 130 * actions?.length } : {}),
|
|
139
|
+
// Respect user-specified overrides when placeholder present (these should override defaults)
|
|
140
|
+
...(actionsIndex > -1
|
|
141
|
+
? {
|
|
142
|
+
// keep width/pin/flex/align/hide from placeholder when provided
|
|
143
|
+
...(['width', 'minWidth', 'maxWidth', 'flex', 'pinned', 'headerName', 'cellStyle', 'cellClass', 'autoHeight', 'hide']
|
|
144
|
+
.reduce((acc, key) => {
|
|
145
|
+
if (r[actionsIndex] && r[actionsIndex][key] !== undefined)
|
|
146
|
+
acc[key] = r[actionsIndex][key];
|
|
147
|
+
return acc;
|
|
148
|
+
}, {}))
|
|
149
|
+
}
|
|
150
|
+
: {}),
|
|
151
|
+
...(customActionsHeader?.trim() ? { headerName: customActionsHeader } : {})
|
|
152
|
+
};
|
|
153
|
+
if (actionsIndex > -1) {
|
|
154
|
+
// Replace the placeholder with computed column
|
|
155
|
+
r.splice(actionsIndex, 1, computedActionsCol);
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
// Backward compatible: append if not explicitly placed
|
|
159
|
+
r.push(computedActionsCol);
|
|
160
|
+
}
|
|
130
161
|
}
|
|
131
162
|
return r.map((fields) => {
|
|
132
163
|
let cr = defaultCellRenderer(fields.cellRendererType);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script lang="ts">import DarkModeObserver from '../../../../DarkModeObserver.svelte';
|
|
2
|
-
import { untrack } from 'svelte';
|
|
2
|
+
import { onMount, untrack } from 'svelte';
|
|
3
3
|
/* Forked from MIT LICENSE
|
|
4
4
|
https://raw.githubusercontent.com/Canutin/svelte-currency-input/main/src/lib/CurrencyInput.svelte
|
|
5
5
|
*/
|
|
@@ -14,7 +14,12 @@ const DEFAULT_CLASS_FORMATTED = 'currencyInput__formatted';
|
|
|
14
14
|
const DEFAULT_CLASS_FORMATTED_POSITIVE = 'currencyInput__formatted--positive';
|
|
15
15
|
const DEFAULT_CLASS_FORMATTED_NEGATIVE = 'currencyInput__formatted--negative';
|
|
16
16
|
const DEFAULT_CLASS_FORMATTED_ZERO = 'currencyInput__formatted--zero';
|
|
17
|
-
let { value = $bindable(
|
|
17
|
+
let { value = $bindable(), locale = DEFAULT_LOCALE, currency = DEFAULT_CURRENCY, name = DEFAULT_NAME, required = false, disabled = false, placeholder = DEFAULT_VALUE, isNegativeAllowed = true, fractionDigits = DEFAULT_FRACTION_DIGITS, inputClasses = null, noColor = false, style = '' } = $props();
|
|
18
|
+
onMount(() => {
|
|
19
|
+
if (value == undefined) {
|
|
20
|
+
value = DEFAULT_VALUE;
|
|
21
|
+
}
|
|
22
|
+
});
|
|
18
23
|
// Formats value as: e.g. $1,523.00 | -$1,523.00
|
|
19
24
|
const formatCurrency = (value, maximumFractionDigits, minimumFractionDigits) => {
|
|
20
25
|
try {
|
|
@@ -67,7 +72,7 @@ const setUnformattedValue = (event) => {
|
|
|
67
72
|
inputTarget = event.target;
|
|
68
73
|
// Reverse the value when minus is pressed
|
|
69
74
|
if (isNegativeAllowed && event.key === '-')
|
|
70
|
-
value = value * -1;
|
|
75
|
+
value = (value ?? DEFAULT_VALUE) * -1;
|
|
71
76
|
}
|
|
72
77
|
// Remove all characters that arent: numbers, commas, periods (or minus signs if `isNegativeAllowed`)
|
|
73
78
|
let unformattedValue = isNegativeAllowed
|
|
@@ -101,7 +106,7 @@ const setFormattedValue = () => {
|
|
|
101
106
|
const startCaretPosition = inputTarget?.selectionStart || 0;
|
|
102
107
|
const previousFormattedValueLength = formattedValue.length;
|
|
103
108
|
// Apply formatting to input
|
|
104
|
-
formattedValue = formatCurrency(value, fractionDigits, 0);
|
|
109
|
+
formattedValue = formatCurrency(value ?? DEFAULT_VALUE, fractionDigits, 0);
|
|
105
110
|
// Update `value` after formatting
|
|
106
111
|
setUnformattedValue();
|
|
107
112
|
// New caret position
|
|
@@ -115,7 +120,7 @@ const setFormattedValue = () => {
|
|
|
115
120
|
let formattedValue = $state('');
|
|
116
121
|
let formattedPlaceholder = placeholder !== null ? formatCurrency(placeholder, fractionDigits, fractionDigits) : '';
|
|
117
122
|
let isZero = $derived(value === 0);
|
|
118
|
-
let isNegative = $derived(value < 0);
|
|
123
|
+
let isNegative = $derived((value ?? DEFAULT_VALUE) < 0);
|
|
119
124
|
$effect(() => {
|
|
120
125
|
value;
|
|
121
126
|
untrack(() => {
|
|
@@ -12,7 +12,7 @@ import { Alert, Button, Tab } from '../../common';
|
|
|
12
12
|
import TabContent from '../../common/tabs/TabContent.svelte';
|
|
13
13
|
import Tabs from '../../common/tabs/TabsV2.svelte';
|
|
14
14
|
import { userStore, workspaceStore } from '../../../stores';
|
|
15
|
-
import { classNames, encodeState, getModifierKey, sendUserToast } from '../../../utils';
|
|
15
|
+
import { classNames, encodeState, getModifierKey, sendUserToast, urlParamsToObject } from '../../../utils';
|
|
16
16
|
import AppPreview from './AppPreview.svelte';
|
|
17
17
|
import ComponentList from './componentsPanel/ComponentList.svelte';
|
|
18
18
|
import ContextPanel from './contextPanel/ContextPanel.svelte';
|
|
@@ -60,7 +60,7 @@ let context = $state({
|
|
|
60
60
|
groups: $userStore?.groups,
|
|
61
61
|
username: $userStore?.username,
|
|
62
62
|
name: $userStore?.name,
|
|
63
|
-
query:
|
|
63
|
+
query: urlParamsToObject(new URL(window.location.href).searchParams),
|
|
64
64
|
hash: window.location.hash.substring(1),
|
|
65
65
|
workspace: $workspaceStore,
|
|
66
66
|
mode: 'editor',
|
|
@@ -643,7 +643,8 @@ $effect(() => {
|
|
|
643
643
|
untrack(() => setGridPanelSize($componentActive));
|
|
644
644
|
});
|
|
645
645
|
$effect(() => {
|
|
646
|
-
|
|
646
|
+
;
|
|
647
|
+
($connectingInput.opened, untrack(() => updatePannelInConnecting()));
|
|
647
648
|
});
|
|
648
649
|
$effect(() => {
|
|
649
650
|
forceDeactivatePanzoom = isModifierKeyPressed && handMode;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { EditorBreakpoint } from '../types';
|
|
2
2
|
import type { FilledItem } from '../svelte-grid/types';
|
|
3
|
-
declare
|
|
4
|
-
props
|
|
3
|
+
declare function $$render<T>(): {
|
|
4
|
+
props: {
|
|
5
5
|
items: FilledItem<T>[];
|
|
6
6
|
rowHeight?: number;
|
|
7
7
|
gap?: any;
|
|
@@ -13,11 +13,18 @@ declare class __sveltets_Render<T> {
|
|
|
13
13
|
parentWidth?: number | undefined;
|
|
14
14
|
children?: import("svelte").Snippet<[any]>;
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
exports: {};
|
|
17
|
+
bindings: "items" | "containerWidth";
|
|
18
|
+
slots: {};
|
|
19
|
+
events: {
|
|
17
20
|
resize: CustomEvent<any>;
|
|
18
21
|
mount: CustomEvent<any>;
|
|
19
22
|
};
|
|
20
|
-
|
|
23
|
+
};
|
|
24
|
+
declare class __sveltets_Render<T> {
|
|
25
|
+
props(): ReturnType<typeof $$render<T>>['props'];
|
|
26
|
+
events(): ReturnType<typeof $$render<T>>['events'];
|
|
27
|
+
slots(): ReturnType<typeof $$render<T>>['slots'];
|
|
21
28
|
bindings(): "items" | "containerWidth";
|
|
22
29
|
exports(): {};
|
|
23
30
|
}
|
|
@@ -92,7 +92,7 @@ let menuItemsSettings = $derived(findMenuItemsSettings($app, firstComponent));
|
|
|
92
92
|
|
|
93
93
|
{#if gridItemWithLocation}
|
|
94
94
|
{#if gridItemWithLocation.location.type === 'grid'}
|
|
95
|
-
{#each $app.grid as gridItem, gridItemIndex}
|
|
95
|
+
{#each $app.grid as gridItem, gridItemIndex (gridItem.data.id)}
|
|
96
96
|
{#if gridItem.data.id === gridItemWithLocation.item.id}
|
|
97
97
|
<ComponentPanel
|
|
98
98
|
bind:item={$app.grid[gridItemIndex]}
|
|
@@ -104,7 +104,7 @@ let menuItemsSettings = $derived(findMenuItemsSettings($app, firstComponent));
|
|
|
104
104
|
{/if}
|
|
105
105
|
{/each}
|
|
106
106
|
{:else if gridItemWithLocation.location.type === 'subgrid' && $app.subgrids}
|
|
107
|
-
{#each $app.subgrids[gridItemWithLocation.location.subgridKey] as subgridItem, subgridItemIndex}
|
|
107
|
+
{#each $app.subgrids[gridItemWithLocation.location.subgridKey] as subgridItem, subgridItemIndex (subgridItem.data.id)}
|
|
108
108
|
{#if subgridItem.data.id === gridItemWithLocation.item.id}
|
|
109
109
|
<ComponentPanel
|
|
110
110
|
bind:item={$app.subgrids[gridItemWithLocation.location.subgridKey][subgridItemIndex]}
|
|
@@ -4,14 +4,14 @@ import { ChevronDown } from 'lucide-svelte';
|
|
|
4
4
|
import { isOpenStore } from './store';
|
|
5
5
|
import { createEventDispatcher, onMount } from 'svelte';
|
|
6
6
|
import Tooltip from '../../../Tooltip.svelte';
|
|
7
|
-
let { title, prefix = undefined, openByDefault = false, wrapperClasses = '', toggleClasses = '', contentWrapperClasses = '', isOpen = $bindable(
|
|
7
|
+
let { title, prefix = undefined, openByDefault = false, wrapperClasses = '', toggleClasses = '', contentWrapperClasses = '', isOpen = $bindable(), tooltip = undefined, documentationLink = undefined, subtitle = undefined, titleSlot, children } = $props();
|
|
8
8
|
const dispatch = createEventDispatcher();
|
|
9
9
|
let storeTitle = $derived(prefix + title);
|
|
10
10
|
$effect(() => {
|
|
11
11
|
isOpen = prefix ? $isOpenStore[storeTitle] : true;
|
|
12
12
|
});
|
|
13
13
|
$effect(() => {
|
|
14
|
-
dispatch('open', isOpen);
|
|
14
|
+
dispatch('open', isOpen ?? false);
|
|
15
15
|
});
|
|
16
16
|
onMount(() => {
|
|
17
17
|
if (prefix !== undefined && !(prefix + title in $isOpenStore)) {
|
|
@@ -30,6 +30,6 @@ declare const InlineScriptEditor: $$__sveltets_2_IsomorphicComponent<Props, {
|
|
|
30
30
|
delete: CustomEvent<any>;
|
|
31
31
|
} & {
|
|
32
32
|
[evt: string]: CustomEvent<any>;
|
|
33
|
-
}, {}, {}, "name" | "fields" | "
|
|
33
|
+
}, {}, {}, "name" | "fields" | "editor" | "inlineScript">;
|
|
34
34
|
type InlineScriptEditor = InstanceType<typeof InlineScriptEditor>;
|
|
35
35
|
export default InlineScriptEditor;
|
package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte.d.ts
CHANGED
|
@@ -26,6 +26,6 @@ declare const InlineScriptEditorDrawer: $$__sveltets_2_IsomorphicComponent<Props
|
|
|
26
26
|
[evt: string]: CustomEvent<any>;
|
|
27
27
|
}, {}, {
|
|
28
28
|
openDrawer: () => void;
|
|
29
|
-
}, "
|
|
29
|
+
}, "isOpen" | "inlineScript">;
|
|
30
30
|
type InlineScriptEditorDrawer = InstanceType<typeof InlineScriptEditorDrawer>;
|
|
31
31
|
export default InlineScriptEditorDrawer;
|
package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts
CHANGED
|
@@ -26,6 +26,6 @@ declare const InlineScriptRunnableByPath: $$__sveltets_2_IsomorphicComponent<Pro
|
|
|
26
26
|
fork: CustomEvent<any>;
|
|
27
27
|
} & {
|
|
28
28
|
[evt: string]: CustomEvent<any>;
|
|
29
|
-
}, {}, {}, "
|
|
29
|
+
}, {}, {}, "fields" | "runnable">;
|
|
30
30
|
type InlineScriptRunnableByPath = InstanceType<typeof InlineScriptRunnableByPath>;
|
|
31
31
|
export default InlineScriptRunnableByPath;
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
<script lang="ts">import { preventDefault, stopPropagation } from 'svelte/legacy';
|
|
2
2
|
import { Button } from '../../../common';
|
|
3
3
|
import { GripVertical, Loader2, Plus, X } from 'lucide-svelte';
|
|
4
|
-
import { createEventDispatcher } from 'svelte';
|
|
4
|
+
import { createEventDispatcher, getContext, tick } from 'svelte';
|
|
5
5
|
import SubTypeEditor from './SubTypeEditor.svelte';
|
|
6
6
|
import { dragHandle, dragHandleZone } from '@windmill-labs/svelte-dnd-action';
|
|
7
7
|
import { generateRandomString, pluralize } from '../../../../utils';
|
|
8
8
|
import Toggle from '../../../Toggle.svelte';
|
|
9
9
|
import QuickAddColumn from './QuickAddColumn.svelte';
|
|
10
10
|
import RefreshDatabaseStudioTable from './RefreshDatabaseStudioTable.svelte';
|
|
11
|
+
import { findGridItem } from '../appUtils';
|
|
11
12
|
let { componentInput = $bindable(), subFieldType = undefined, selectOptions = undefined, id } = $props();
|
|
13
|
+
const appContext = getContext('AppViewerContext');
|
|
14
|
+
const { app, selectedComponent } = appContext || {};
|
|
12
15
|
let items = $state([]);
|
|
13
16
|
items = getItems(componentInput);
|
|
14
17
|
const dispatch = createEventDispatcher();
|
|
@@ -175,10 +178,30 @@ function addElementByType() {
|
|
|
175
178
|
componentInput = componentInput;
|
|
176
179
|
items = getItems(componentInput);
|
|
177
180
|
}
|
|
178
|
-
function
|
|
181
|
+
async function updateConfiguration() {
|
|
182
|
+
if (selectedComponent && id) {
|
|
183
|
+
$selectedComponent = undefined;
|
|
184
|
+
await tick();
|
|
185
|
+
$selectedComponent = [id];
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
async function deleteElementByType(index) {
|
|
179
189
|
if (componentInput.value) {
|
|
190
|
+
const item = componentInput.value[index];
|
|
191
|
+
// If deleting actions column, clear all table actions
|
|
192
|
+
if (subFieldType === 'ag-grid' && item && item._isActionsColumn === true) {
|
|
193
|
+
const gridItem = id ? findGridItem($app, id) : null;
|
|
194
|
+
if (gridItem && (gridItem.data.type === 'aggridcomponent' ||
|
|
195
|
+
gridItem.data.type === 'aggridcomponentee' ||
|
|
196
|
+
gridItem.data.type === 'aggridinfinitecomponent' ||
|
|
197
|
+
gridItem.data.type === 'aggridinfinitecomponentee') && Array.isArray(gridItem.data.actions)) {
|
|
198
|
+
gridItem.data.actions.length = 0;
|
|
199
|
+
}
|
|
200
|
+
await updateConfiguration();
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
180
203
|
componentInput.value.splice(index, 1);
|
|
181
|
-
items.splice(index, 1);
|
|
204
|
+
items.splice(index, 1);
|
|
182
205
|
items = items;
|
|
183
206
|
componentInput.value = componentInput.value;
|
|
184
207
|
dispatch('deleteArrayItem', { index });
|
|
@@ -117,7 +117,7 @@ function openConnection() {
|
|
|
117
117
|
componentInput['value'] != undefined &&
|
|
118
118
|
(componentInput['expr'] == '' || componentInput['expr'] == undefined)
|
|
119
119
|
) {
|
|
120
|
-
componentInput['expr'] = JSON.stringify(componentInput['value'])
|
|
120
|
+
componentInput['expr'] = JSON.stringify(componentInput['value'], null, 2)
|
|
121
121
|
} else if (fileUploadS3 && fieldType === 'text' && e.detail != 'uploadS3') {
|
|
122
122
|
componentInput['value'] = ''
|
|
123
123
|
} else if (e.detail == 'uploadS3') {
|
|
@@ -273,11 +273,19 @@ let s3FilePicker = $state(undefined);
|
|
|
273
273
|
{:else if fieldType === 'ag-grid'}
|
|
274
274
|
<div class="flex flex-row rounded-md bg-surface items-center h-full">
|
|
275
275
|
<div class="relative w-full">
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
276
|
+
{#if componentInput.value._isActionsColumn === true}
|
|
277
|
+
<div
|
|
278
|
+
class="text-xs px-2 border w-full flex flex-row items-center rounded-r-md h-8 text-primary"
|
|
279
|
+
>
|
|
280
|
+
Actions Column
|
|
281
|
+
</div>
|
|
282
|
+
{:else}
|
|
283
|
+
<input
|
|
284
|
+
class="text-xs px-2 border-y w-full flex flex-row items-center border-r rounded-r-md h-8"
|
|
285
|
+
bind:value={componentInput.value.field}
|
|
286
|
+
placeholder="Field"
|
|
287
|
+
/>
|
|
288
|
+
{/if}
|
|
281
289
|
<div class="absolute top-1 right-1">
|
|
282
290
|
<AgGridWizard bind:value={componentInput.value}>
|
|
283
291
|
{#snippet trigger()}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { FilledItem } from './types';
|
|
2
2
|
import { type GridShadow } from '../editor/appUtils';
|
|
3
|
-
declare
|
|
4
|
-
props
|
|
3
|
+
declare function $$render<T>(): {
|
|
4
|
+
props: {
|
|
5
5
|
items: FilledItem<T>[];
|
|
6
6
|
rowHeight?: number;
|
|
7
7
|
gap?: any;
|
|
@@ -16,28 +16,47 @@ declare class __sveltets_Render<T> {
|
|
|
16
16
|
parentWidth?: number | undefined;
|
|
17
17
|
disableMove?: boolean;
|
|
18
18
|
children?: import("svelte").Snippet<[any]>;
|
|
19
|
-
onDropped?: (
|
|
19
|
+
onDropped?: (e: {
|
|
20
20
|
id: string;
|
|
21
21
|
overlapped: string | undefined;
|
|
22
22
|
x: number;
|
|
23
23
|
y: number;
|
|
24
|
-
}) => void
|
|
25
|
-
onRedraw?: (
|
|
26
|
-
onResize?: (
|
|
24
|
+
}) => void;
|
|
25
|
+
onRedraw?: (grid: FilledItem<T>[]) => void;
|
|
26
|
+
onResize?: (e: {
|
|
27
27
|
cols: number;
|
|
28
28
|
xPerPx: number;
|
|
29
29
|
yPerPx: number;
|
|
30
30
|
width: number | undefined;
|
|
31
|
-
}) => void
|
|
32
|
-
onMounted?: (
|
|
31
|
+
}) => void;
|
|
32
|
+
onMounted?: (e: {
|
|
33
33
|
cols: number;
|
|
34
34
|
xPerPx: number;
|
|
35
35
|
yPerPx: number;
|
|
36
36
|
width: number | undefined;
|
|
37
|
-
}) => void
|
|
37
|
+
}) => void;
|
|
38
38
|
};
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
exports: {
|
|
40
|
+
handleMove: (detail: {
|
|
41
|
+
cordDiff: {
|
|
42
|
+
x: number;
|
|
43
|
+
y: number;
|
|
44
|
+
};
|
|
45
|
+
clientY: number;
|
|
46
|
+
intersectingElement?: string | undefined;
|
|
47
|
+
shadow?: GridShadow | undefined;
|
|
48
|
+
overlapped?: string | undefined;
|
|
49
|
+
}) => void;
|
|
50
|
+
handleInitMove: (id: string) => void;
|
|
51
|
+
};
|
|
52
|
+
bindings: "containerWidth";
|
|
53
|
+
slots: {};
|
|
54
|
+
events: {};
|
|
55
|
+
};
|
|
56
|
+
declare class __sveltets_Render<T> {
|
|
57
|
+
props(): ReturnType<typeof $$render<T>>['props'];
|
|
58
|
+
events(): ReturnType<typeof $$render<T>>['events'];
|
|
59
|
+
slots(): ReturnType<typeof $$render<T>>['slots'];
|
|
41
60
|
bindings(): "containerWidth";
|
|
42
61
|
exports(): {
|
|
43
62
|
handleMove: (detail: {
|
|
@@ -49,30 +49,34 @@ let dbManagerDrawer = $state();
|
|
|
49
49
|
let resourceEditorDrawer = $state();
|
|
50
50
|
</script>
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
<
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
52
|
+
{#if assets.value && assets.value.length > 0}
|
|
53
|
+
<ul class="flex flex-col divide-y mt-1">
|
|
54
|
+
{#each assets.value ?? [] as asset}
|
|
55
|
+
<li class="flex justify-between py-3 leading-4 text-sm pl-4">
|
|
56
|
+
<div class="flex flex-col flex-1 truncate">
|
|
57
|
+
{asset.path}
|
|
58
|
+
<span class="text-2xs text-tertiary">
|
|
59
|
+
{formatAssetKind({
|
|
60
|
+
...asset,
|
|
61
|
+
...(asset.kind === 'resource'
|
|
62
|
+
? { metadata: { resource_type: resourceDataCache[asset.path] } }
|
|
63
|
+
: {})
|
|
64
|
+
})}
|
|
65
|
+
</span>
|
|
66
|
+
</div>
|
|
67
|
+
<AssetButtons
|
|
68
|
+
{asset}
|
|
69
|
+
{resourceDataCache}
|
|
70
|
+
{dbManagerDrawer}
|
|
71
|
+
{resourceEditorDrawer}
|
|
72
|
+
{s3FilePicker}
|
|
73
|
+
/>
|
|
74
|
+
</li>
|
|
75
|
+
{/each}
|
|
76
|
+
</ul>
|
|
77
|
+
{:else}
|
|
78
|
+
<div class="text-sm text-tertiary">No assets found</div>
|
|
79
|
+
{/if}
|
|
76
80
|
|
|
77
81
|
<S3FilePicker bind:this={s3FilePicker} readOnlyMode />
|
|
78
82
|
<DbManagerDrawer bind:this={dbManagerDrawer} />
|
|
@@ -76,11 +76,7 @@ function kindToBadgeColor(kind) {
|
|
|
76
76
|
|
|
77
77
|
<svelte:window onresize={() => computeHeight()} />
|
|
78
78
|
|
|
79
|
-
<div
|
|
80
|
-
class="divide-y min-w-[640px] h-full"
|
|
81
|
-
id="audit-logs-table-wrapper"
|
|
82
|
-
>
|
|
83
|
-
|
|
79
|
+
<div class="divide-y min-w-[640px] h-full" id="audit-logs-table-wrapper">
|
|
84
80
|
<div bind:clientHeight={headerHeight}>
|
|
85
81
|
<div
|
|
86
82
|
class="flex flex-row bg-surface-secondary sticky top-0 w-full p-2 pr-4 text-xs font-semibold"
|
|
@@ -105,7 +101,7 @@ function kindToBadgeColor(kind) {
|
|
|
105
101
|
scrollToAlignment="center"
|
|
106
102
|
>
|
|
107
103
|
{#snippet header()}{/snippet}
|
|
108
|
-
{#snippet
|
|
104
|
+
{#snippet item({ index, style })}
|
|
109
105
|
<div {style} class="w-full">
|
|
110
106
|
{#if flatLogs}
|
|
111
107
|
{@const logOrDate = flatLogs[index]}
|