windmill-components 1.383.9 → 1.389.2
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/assets/app.css +25 -1
- package/package/components/ArgInput.svelte +2 -1
- package/package/components/ChangeInstanceUsername.svelte +9 -108
- package/package/components/ChangeInstanceUsernameInner.svelte +112 -0
- package/package/components/ChangeInstanceUsernameInner.svelte.d.ts +21 -0
- package/package/components/DiffDrawer.svelte +27 -20
- package/package/components/DiffEditor.svelte +5 -1
- package/package/components/DisplayResult.svelte +39 -9
- package/package/components/DropdownV2.svelte +4 -26
- package/package/components/DropdownV2.svelte.d.ts +9 -1
- package/package/components/DropdownV2Inner.svelte +42 -0
- package/package/components/DropdownV2Inner.svelte.d.ts +40 -0
- package/package/components/Editor.svelte +24 -4
- package/package/components/Editor.svelte.d.ts +5 -4
- package/package/components/EditorBar.svelte +9 -11
- package/package/components/EditorSettings.svelte +44 -0
- package/package/components/EditorSettings.svelte.d.ts +17 -0
- package/package/components/EditorTheme.svelte +1 -1
- package/package/components/ErrorOrRecoveryHandler.svelte +27 -20
- package/package/components/FlowBuilder.svelte +17 -3
- package/package/components/FlowBuilder.svelte.d.ts +3 -0
- package/package/components/FlowGraphViewerStep.svelte +1 -1
- package/package/components/FlowStatusViewer.svelte +3 -1
- package/package/components/FlowStatusViewer.svelte.d.ts +1 -0
- package/package/components/FlowStatusViewerInner.svelte +5 -2
- package/package/components/FlowViewerInner.svelte +3 -7
- package/package/components/FormatOnSave.svelte +12 -29
- package/package/components/GraphqlSchemaViewer.svelte +1 -1
- package/package/components/GraphqlSchemaViewer.svelte.d.ts +1 -1
- package/package/components/HighlightCode.svelte +3 -0
- package/package/components/InstanceNameEditor.svelte +64 -0
- package/package/components/InstanceNameEditor.svelte.d.ts +23 -0
- package/package/components/LightweightArgInput.svelte +6 -11
- package/package/components/LogViewer.svelte +37 -29
- package/package/components/LogViewer.svelte.d.ts +2 -0
- package/package/components/ObjectResourceInput.svelte +1 -1
- package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
- package/package/components/Path.svelte +3 -3
- package/package/components/QueueMetricsDrawer.svelte +6 -218
- package/package/components/QueueMetricsDrawer.svelte.d.ts +2 -3
- package/package/components/QueueMetricsDrawerInner.svelte +211 -0
- package/package/components/QueueMetricsDrawerInner.svelte.d.ts +15 -0
- package/package/components/ResourceEditorDrawer.svelte +14 -11
- package/package/components/ResourceEditorDrawer.svelte.d.ts +1 -1
- package/package/components/ResultJobLoader.svelte.d.ts +1 -1
- package/package/components/S3FilePicker.svelte +20 -8
- package/package/components/ScheduleEditorInner.svelte +497 -469
- package/package/components/ScriptBuilder.svelte +37 -24
- package/package/components/ScriptBuilder.svelte.d.ts +3 -0
- package/package/components/ScriptEditor.svelte +1 -0
- package/package/components/ScriptEditor.svelte.d.ts +2 -1
- package/package/components/ServiceLogsInner.svelte +511 -0
- package/package/components/ServiceLogsInner.svelte.d.ts +20 -0
- package/package/components/SimpleEditor.svelte +27 -2
- package/package/components/SimpleEditor.svelte.d.ts +5 -3
- package/package/components/Summary.svelte +33 -31
- package/package/components/Summary.svelte.d.ts +1 -0
- package/package/components/SuperadminSettings.svelte +28 -10
- package/package/components/TemplateEditor.svelte +1 -1
- package/package/components/TestJobLoader.svelte.d.ts +1 -1
- package/package/components/VimMode.svelte +16 -0
- package/package/components/VimMode.svelte.d.ts +14 -0
- package/package/components/WorkerTagPicker.svelte +4 -1
- package/package/components/WorkspaceGroup.svelte +139 -68
- package/package/components/WorkspaceGroup.svelte.d.ts +3 -0
- package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +19 -2
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +1 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte.d.ts +2 -1
- package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte +2 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte.d.ts +2 -1
- package/package/components/apps/components/display/table/AppAggridTable.svelte +45 -3
- package/package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +2 -1
- package/package/components/apps/components/display/table/AppAggridTableEe.svelte +2 -0
- package/package/components/apps/components/display/table/AppAggridTableEe.svelte.d.ts +2 -1
- package/package/components/apps/editor/AppEditor.svelte +239 -92
- package/package/components/apps/editor/AppEditorBottomPanel.svelte +22 -0
- package/package/components/apps/editor/AppEditorBottomPanel.svelte.d.ts +24 -0
- package/package/components/apps/editor/AppEditorHeader.svelte +44 -2
- package/package/components/apps/editor/AppEditorHeader.svelte.d.ts +9 -0
- package/package/components/apps/editor/AppExportButton.svelte +1 -1
- package/package/components/apps/editor/AppPreview.svelte +4 -0
- package/package/components/apps/editor/DeploymentHistory.svelte +7 -3
- package/package/components/apps/editor/GridEditor.svelte +4 -13
- package/package/components/apps/editor/RunnableJobPanel.svelte +25 -58
- package/package/components/apps/editor/RunnableJobPanel.svelte.d.ts +10 -1
- package/package/components/apps/editor/RunnalbeJobPanelInner.svelte +56 -0
- package/package/components/apps/editor/RunnalbeJobPanelInner.svelte.d.ts +18 -0
- package/package/components/apps/editor/SubGridEditor.svelte +3 -1
- package/package/components/apps/editor/component/Component.svelte +26 -4
- package/package/components/apps/editor/component/Component.svelte.d.ts +1 -0
- package/package/components/apps/editor/component/components.d.ts +5 -0
- package/package/components/apps/editor/componentsPanel/CssProperty.svelte +2 -0
- package/package/components/apps/editor/componentsPanel/tailwindUtils.js +267 -1
- package/package/components/apps/editor/contextPanel/ContextPanel.svelte +9 -1
- package/package/components/apps/editor/contextPanel/ContextPanel.svelte.d.ts +2 -0
- package/package/components/apps/editor/inlineScriptsPanel/CacheTtlPopup.svelte +1 -0
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +3 -0
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +7 -2
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte.d.ts +5 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +14 -2
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte.d.ts +1 -0
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +25 -5
- package/package/components/apps/editor/settingsPanel/HideButton.svelte +47 -0
- package/package/components/apps/editor/settingsPanel/HideButton.svelte.d.ts +22 -0
- package/package/components/apps/editor/settingsPanel/TableActions.svelte +43 -4
- package/package/components/apps/editor/settingsPanel/TableActions.svelte.d.ts +2 -1
- package/package/components/apps/svelte-grid/Grid.svelte +6 -2
- package/package/components/apps/svelte-grid/Grid.svelte.d.ts +1 -0
- package/package/components/apps/svelte-grid/MoveResize.svelte +11 -3
- package/package/components/apps/svelte-grid/MoveResize.svelte.d.ts +1 -0
- package/package/components/apps/svelte-grid/utils/item.d.ts +4 -1
- package/package/components/apps/svelte-grid/utils/item.js +11 -4
- package/package/components/common/button/Button.svelte.d.ts +2 -2
- package/package/components/common/calendarPicker/CalendarPicker.svelte +6 -2
- package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +2 -0
- package/package/components/common/drawer/ConditionalPortal.svelte +2 -1
- package/package/components/common/drawer/ConditionalPortal.svelte.d.ts +1 -0
- package/package/components/common/languageIcons/LanguageIcon.svelte +5 -2
- package/package/components/common/popup/Popup.svelte +2 -1
- package/package/components/common/popup/Popup.svelte.d.ts +1 -0
- package/package/components/common/table/AppRow.svelte +11 -8
- package/package/components/common/table/AppRow.svelte.d.ts +1 -2
- package/package/components/common/table/FlowRow.svelte +3 -3
- package/package/components/common/table/FlowRow.svelte.d.ts +1 -2
- package/package/components/common/table/RawAppRow.svelte +3 -3
- package/package/components/common/table/RawAppRow.svelte.d.ts +1 -2
- package/package/components/common/table/ScriptRow.svelte +3 -3
- package/package/components/common/table/ScriptRow.svelte.d.ts +1 -2
- package/package/components/copilot/CodeCompletionStatus.svelte +21 -46
- package/package/components/copilot/StepGen.svelte +2 -1
- package/package/components/custom_ui.d.ts +5 -1
- package/package/components/flows/CreateActionsApp.svelte +11 -8
- package/package/components/flows/CreateActionsFlow.svelte +11 -8
- package/package/components/flows/FlowEditor.svelte +1 -2
- package/package/components/flows/FlowEditor.svelte.d.ts +0 -1
- package/package/components/flows/FlowHistory.svelte +6 -3
- package/package/components/flows/content/FlowModuleScript.svelte +15 -11
- package/package/components/flows/content/FlowSettings.svelte +1 -4
- package/package/components/flows/content/ScriptEditorDrawer.svelte +3 -0
- package/package/components/flows/header/FlowYamlEditor.svelte +55 -0
- package/package/components/flows/header/FlowYamlEditor.svelte.d.ts +17 -0
- package/package/components/flows/map/InsertTriggerButton.svelte +1 -1
- package/package/components/flows/map/InsertTriggerButton.svelte.d.ts +1 -0
- package/package/components/flows/map/VirtualItem.svelte +1 -1
- package/package/components/flows/pickers/PickHubScript.svelte +1 -0
- package/package/components/flows/types.d.ts +7 -6
- package/package/components/flows/utils.d.ts +9 -0
- package/package/components/flows/utils.js +21 -0
- package/package/components/graph/graphBuilder.js +1 -0
- package/package/components/graph/model.d.ts +1 -0
- package/package/components/graph/renderers/edges/BaseEdge.svelte +16 -0
- package/package/components/graph/renderers/nodes/BranchOneStart.svelte +1 -1
- package/package/components/graph/renderers/nodes/NoBranchNode.svelte +5 -1
- package/package/components/graph/renderers/nodes/NoBranchNode.svelte.d.ts +1 -0
- package/package/components/home/Item.svelte +0 -17
- package/package/components/home/deploy_ui.d.ts +2 -0
- package/package/components/home/deploy_ui.js +21 -0
- package/package/components/icons/RustIcon.svelte +70 -0
- package/package/components/icons/RustIcon.svelte.d.ts +25 -0
- package/package/components/icons/rust-logo.svg +1 -0
- package/package/components/instanceSettings.js +2 -2
- package/package/components/monaco_keybindings.d.ts +3 -0
- package/package/components/monaco_keybindings.js +9 -0
- package/package/components/preview/FlowPreviewStatus.svelte +6 -2
- package/package/components/runs/JobLoader.svelte +12 -3
- package/package/components/runs/JobLoader.svelte.d.ts +1 -1
- package/package/components/runs/ManuelDatePicker.svelte +31 -44
- package/package/components/runs/ManuelDatePicker.svelte.d.ts +6 -2
- package/package/components/runs/RunsFilter.svelte +4 -1
- package/package/components/runs/RunsFilter.svelte.d.ts +1 -0
- package/package/components/search/GlobalSearchModal.svelte +36 -25
- package/package/components/wizards/TableActionsWizard.svelte +84 -0
- package/package/components/wizards/TableActionsWizard.svelte.d.ts +22 -0
- package/package/editorUtils.js +2 -0
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +8 -8
- package/package/gen/schemas.gen.js +8 -8
- package/package/gen/services.gen.d.ts +4 -0
- package/package/gen/services.gen.js +16 -0
- package/package/gen/types.gen.d.ts +20 -8
- package/package/infer.d.ts +1 -1
- package/package/infer.js +48 -7
- package/package/script_helpers.d.ts +1 -0
- package/package/script_helpers.js +39 -1
- package/package/scripts.d.ts +1 -1
- package/package/scripts.js +11 -3
- package/package/stores.d.ts +5 -1
- package/package/stores.js +7 -2
- package/package.json +13 -7
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
2
|
import type { AppInput } from '../../../inputType';
|
|
3
|
-
import type { ComponentCustomCSS, RichConfigurations } from '../../../types';
|
|
3
|
+
import type { ComponentCustomCSS, RichConfiguration, RichConfigurations } from '../../../types';
|
|
4
4
|
import { type TableAction } from '../../../editor/component';
|
|
5
5
|
import 'ag-grid-community/styles/ag-grid.css';
|
|
6
6
|
import './theme/windmill-theme.css';
|
|
@@ -13,6 +13,7 @@ declare const __propDef: {
|
|
|
13
13
|
render: boolean;
|
|
14
14
|
customCss?: ComponentCustomCSS<'aggridinfinitecomponent'> | undefined;
|
|
15
15
|
actions?: TableAction[] | undefined;
|
|
16
|
+
actionsOrder?: RichConfiguration | undefined;
|
|
16
17
|
};
|
|
17
18
|
events: {
|
|
18
19
|
[evt: string]: CustomEvent<any>;
|
|
@@ -13,6 +13,7 @@ export let initializing = undefined;
|
|
|
13
13
|
export let render;
|
|
14
14
|
export let customCss = undefined;
|
|
15
15
|
export let actions = [];
|
|
16
|
+
export let actionsOrder = undefined;
|
|
16
17
|
let loaded = false;
|
|
17
18
|
async function load() {
|
|
18
19
|
await import('ag-grid-enterprise');
|
|
@@ -32,6 +33,7 @@ load();
|
|
|
32
33
|
{render}
|
|
33
34
|
{customCss}
|
|
34
35
|
{actions}
|
|
36
|
+
{actionsOrder}
|
|
35
37
|
/>
|
|
36
38
|
{:else}
|
|
37
39
|
<Loader2 class="animate-spin" />
|
package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
2
|
import type { AppInput } from '../../../inputType';
|
|
3
|
-
import type { ComponentCustomCSS, RichConfigurations } from '../../../types';
|
|
3
|
+
import type { ComponentCustomCSS, RichConfiguration, RichConfigurations } from '../../../types';
|
|
4
4
|
import 'ag-grid-community/styles/ag-grid.css';
|
|
5
5
|
import 'ag-grid-community/styles/ag-theme-alpine.css';
|
|
6
6
|
import type { TableAction } from '../../../editor/component';
|
|
@@ -14,6 +14,7 @@ declare const __propDef: {
|
|
|
14
14
|
render: boolean;
|
|
15
15
|
customCss?: ComponentCustomCSS<'aggridinfinitecomponentee'> | undefined;
|
|
16
16
|
actions?: TableAction[] | undefined;
|
|
17
|
+
actionsOrder?: RichConfiguration | undefined;
|
|
17
18
|
};
|
|
18
19
|
events: {
|
|
19
20
|
[evt: string]: CustomEvent<any>;
|
|
@@ -18,6 +18,7 @@ import AppAggridTableActions from './AppAggridTableActions.svelte';
|
|
|
18
18
|
import { cellRendererFactory, defaultCellRenderer } from './utils';
|
|
19
19
|
import Popover from '../../../../Popover.svelte';
|
|
20
20
|
import { Button } from '../../../../common';
|
|
21
|
+
import InputValue from '../../helpers/InputValue.svelte';
|
|
21
22
|
// import 'ag-grid-community/dist/styles/ag-theme-alpine-dark.css'
|
|
22
23
|
export let id;
|
|
23
24
|
export let componentInput;
|
|
@@ -26,11 +27,12 @@ export let initializing = undefined;
|
|
|
26
27
|
export let render;
|
|
27
28
|
export let customCss = undefined;
|
|
28
29
|
export let actions = undefined;
|
|
30
|
+
export let actionsOrder = undefined;
|
|
29
31
|
const context = getContext('AppViewerContext');
|
|
30
32
|
const contextPanel = getContext('ContextPanel');
|
|
31
33
|
const iterContext = getContext('ListWrapperContext');
|
|
32
34
|
const listInputs = getContext('ListInputs');
|
|
33
|
-
const { app, worldStore, selectedComponent, componentControl, darkMode } = context;
|
|
35
|
+
const { app, worldStore, selectedComponent, componentControl, darkMode, mode } = context;
|
|
34
36
|
const rowHeights = {
|
|
35
37
|
normal: 40,
|
|
36
38
|
compact: 30,
|
|
@@ -139,6 +141,19 @@ function refreshActions(actions) {
|
|
|
139
141
|
}
|
|
140
142
|
let lastActions = undefined;
|
|
141
143
|
$: actions && refreshActions(actions);
|
|
144
|
+
let lastActionsOrder = undefined;
|
|
145
|
+
$: computedOrder && refreshActionsOrder(computedOrder);
|
|
146
|
+
function clearActionOrder() {
|
|
147
|
+
computedOrder = undefined;
|
|
148
|
+
updateOptions();
|
|
149
|
+
}
|
|
150
|
+
$: computedOrder && computedOrder.length > 0 && actionsOrder === undefined && clearActionOrder();
|
|
151
|
+
function refreshActionsOrder(actionsOrder) {
|
|
152
|
+
if (Array.isArray(actionsOrder) && !deepEqual(actionsOrder, lastActionsOrder)) {
|
|
153
|
+
lastActionsOrder = [...actionsOrder];
|
|
154
|
+
updateOptions();
|
|
155
|
+
}
|
|
156
|
+
}
|
|
142
157
|
let inputs = {};
|
|
143
158
|
const tableActionsFactory = cellRendererFactory((c, p) => {
|
|
144
159
|
const rowIndex = p.node.rowIndex ?? 0;
|
|
@@ -147,12 +162,17 @@ const tableActionsFactory = cellRendererFactory((c, p) => {
|
|
|
147
162
|
['AppViewerContext', context],
|
|
148
163
|
['ContextPanel', contextPanel]
|
|
149
164
|
]);
|
|
165
|
+
const sortedActions = computedOrder
|
|
166
|
+
? computedOrder
|
|
167
|
+
.map((key) => actions?.find((a) => a.id === key))
|
|
168
|
+
.filter(Boolean)
|
|
169
|
+
: actions;
|
|
150
170
|
let ta = new AppAggridTableActions({
|
|
151
171
|
target: c.eGui,
|
|
152
172
|
props: {
|
|
153
173
|
p,
|
|
154
174
|
id: id,
|
|
155
|
-
actions,
|
|
175
|
+
actions: sortedActions,
|
|
156
176
|
rowIndex,
|
|
157
177
|
row,
|
|
158
178
|
render,
|
|
@@ -381,8 +401,13 @@ function updateOptions() {
|
|
|
381
401
|
let loading = false;
|
|
382
402
|
let refreshCount = 0;
|
|
383
403
|
let footerRenderCount = 0;
|
|
404
|
+
let computedOrder = undefined;
|
|
384
405
|
</script>
|
|
385
406
|
|
|
407
|
+
{#if actionsOrder}
|
|
408
|
+
<InputValue key="actionsOrder" {id} input={actionsOrder} bind:value={computedOrder} />
|
|
409
|
+
{/if}
|
|
410
|
+
|
|
386
411
|
{#each Object.keys(components['aggridcomponent'].initialData.configuration) as key (key)}
|
|
387
412
|
<ResolveConfig
|
|
388
413
|
{id}
|
|
@@ -440,7 +465,24 @@ let footerRenderCount = 0;
|
|
|
440
465
|
>
|
|
441
466
|
{#key resolvedConfig?.pagination}
|
|
442
467
|
{#if loaded}
|
|
443
|
-
|
|
468
|
+
<!-- svelte-ignore a11y-no-static-element-interactions -->
|
|
469
|
+
<div
|
|
470
|
+
bind:this={eGui}
|
|
471
|
+
style:height="100%"
|
|
472
|
+
on:keydown={(e) => {
|
|
473
|
+
if ((e.ctrlKey || e.metaKey) && e.key === 'c' && $mode !== 'dnd') {
|
|
474
|
+
const selectedCell = api?.getFocusedCell()
|
|
475
|
+
if (selectedCell) {
|
|
476
|
+
const rowIndex = selectedCell.rowIndex
|
|
477
|
+
const colId = selectedCell.column?.getId()
|
|
478
|
+
const rowNode = api?.getDisplayedRowAtIndex(rowIndex)
|
|
479
|
+
const selectedValue = rowNode?.data?.[colId]
|
|
480
|
+
navigator.clipboard.writeText(selectedValue)
|
|
481
|
+
sendUserToast('Copied cell value to clipboard', false)
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
}}
|
|
485
|
+
/>
|
|
444
486
|
{:else}
|
|
445
487
|
<Loader2 class="animate-spin" />
|
|
446
488
|
{/if}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
2
|
import type { AppInput } from '../../../inputType';
|
|
3
|
-
import type { ComponentCustomCSS, RichConfigurations } from '../../../types';
|
|
3
|
+
import type { ComponentCustomCSS, RichConfiguration, RichConfigurations } from '../../../types';
|
|
4
4
|
import { type TableAction } from '../../../editor/component';
|
|
5
5
|
import 'ag-grid-community/styles/ag-grid.css';
|
|
6
6
|
import './theme/windmill-theme.css';
|
|
@@ -13,6 +13,7 @@ declare const __propDef: {
|
|
|
13
13
|
render: boolean;
|
|
14
14
|
customCss?: ComponentCustomCSS<'aggridcomponent'> | undefined;
|
|
15
15
|
actions?: TableAction[] | undefined;
|
|
16
|
+
actionsOrder?: RichConfiguration | undefined;
|
|
16
17
|
};
|
|
17
18
|
events: {
|
|
18
19
|
[evt: string]: CustomEvent<any>;
|
|
@@ -13,6 +13,7 @@ export let initializing = undefined;
|
|
|
13
13
|
export let render;
|
|
14
14
|
export let customCss = undefined;
|
|
15
15
|
export let actions = [];
|
|
16
|
+
export let actionsOrder = undefined;
|
|
16
17
|
let loaded = false;
|
|
17
18
|
async function load() {
|
|
18
19
|
await import('ag-grid-enterprise');
|
|
@@ -32,6 +33,7 @@ load();
|
|
|
32
33
|
{render}
|
|
33
34
|
{customCss}
|
|
34
35
|
{actions}
|
|
36
|
+
{actionsOrder}
|
|
35
37
|
/>
|
|
36
38
|
{:else}
|
|
37
39
|
<Loader2 class="animate-spin" />
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
2
|
import type { AppInput } from '../../../inputType';
|
|
3
|
-
import type { ComponentCustomCSS, RichConfigurations } from '../../../types';
|
|
3
|
+
import type { ComponentCustomCSS, RichConfiguration, RichConfigurations } from '../../../types';
|
|
4
4
|
import 'ag-grid-community/styles/ag-grid.css';
|
|
5
5
|
import 'ag-grid-community/styles/ag-theme-alpine.css';
|
|
6
6
|
import type { TableAction } from '../../../editor/component';
|
|
@@ -14,6 +14,7 @@ declare const __propDef: {
|
|
|
14
14
|
render: boolean;
|
|
15
15
|
customCss?: ComponentCustomCSS<'aggridcomponent'> | undefined;
|
|
16
16
|
actions?: TableAction[] | undefined;
|
|
17
|
+
actionsOrder?: RichConfiguration | undefined;
|
|
17
18
|
};
|
|
18
19
|
events: {
|
|
19
20
|
[evt: string]: CustomEvent<any>;
|
|
@@ -14,7 +14,6 @@ import { classNames, encodeState, sendUserToast } from '../../../utils';
|
|
|
14
14
|
import AppPreview from './AppPreview.svelte';
|
|
15
15
|
import ComponentList from './componentsPanel/ComponentList.svelte';
|
|
16
16
|
import ContextPanel from './contextPanel/ContextPanel.svelte';
|
|
17
|
-
import InlineScriptsPanel from './inlineScriptsPanel/InlineScriptsPanel.svelte';
|
|
18
17
|
import { page } from '$app/stores';
|
|
19
18
|
import ItemPicker from '../../ItemPicker.svelte';
|
|
20
19
|
import VariableEditor from '../../VariableEditor.svelte';
|
|
@@ -34,6 +33,8 @@ import { getTheme } from './componentsPanel/themeUtils';
|
|
|
34
33
|
import StylePanel from './settingsPanel/StylePanel.svelte';
|
|
35
34
|
import RunnableJobPanel from './RunnableJobPanel.svelte';
|
|
36
35
|
import { goto, replaceState } from '$app/navigation';
|
|
36
|
+
import HideButton from './settingsPanel/HideButton.svelte';
|
|
37
|
+
import AppEditorBottomPanel from './AppEditorBottomPanel.svelte';
|
|
37
38
|
export let app;
|
|
38
39
|
export let path;
|
|
39
40
|
export let policy;
|
|
@@ -238,7 +239,7 @@ function onThemeChange() {
|
|
|
238
239
|
let runnablePanelSize = 30;
|
|
239
240
|
let gridPanelSize = 70;
|
|
240
241
|
let leftPanelSize = 22;
|
|
241
|
-
let centerPanelSize =
|
|
242
|
+
let centerPanelSize = 56;
|
|
242
243
|
let rightPanelSize = 22;
|
|
243
244
|
let tmpRunnablePanelSize = -1;
|
|
244
245
|
let tmpGridPanelSize = -1;
|
|
@@ -407,11 +408,96 @@ function setGridPanelSize(x) {
|
|
|
407
408
|
}
|
|
408
409
|
let runnableJobEnterTimeout = undefined;
|
|
409
410
|
let stillInJobEnter = false;
|
|
411
|
+
let storedLeftPanelSize = 0;
|
|
412
|
+
let storedRightPanelSize = 0;
|
|
413
|
+
let storedBottomPanelSize = 0;
|
|
414
|
+
let centerPanelWidth = 0;
|
|
415
|
+
function hideLeftPanel() {
|
|
416
|
+
storedLeftPanelSize = leftPanelSize;
|
|
417
|
+
leftPanelSize = 0;
|
|
418
|
+
centerPanelSize = centerPanelSize + storedLeftPanelSize;
|
|
419
|
+
}
|
|
420
|
+
function hideRightPanel() {
|
|
421
|
+
storedRightPanelSize = rightPanelSize;
|
|
422
|
+
rightPanelSize = 0;
|
|
423
|
+
centerPanelSize = centerPanelSize + storedRightPanelSize;
|
|
424
|
+
}
|
|
425
|
+
function hideBottomPanel() {
|
|
426
|
+
storedBottomPanelSize = runnablePanelSize;
|
|
427
|
+
gridPanelSize = 99;
|
|
428
|
+
runnablePanelSize = 0;
|
|
429
|
+
}
|
|
430
|
+
function showLeftPanel() {
|
|
431
|
+
leftPanelSize = storedLeftPanelSize;
|
|
432
|
+
centerPanelSize = centerPanelSize - storedLeftPanelSize;
|
|
433
|
+
storedLeftPanelSize = 0;
|
|
434
|
+
}
|
|
435
|
+
function showRightPanel() {
|
|
436
|
+
rightPanelSize = storedRightPanelSize;
|
|
437
|
+
centerPanelSize = centerPanelSize - storedRightPanelSize;
|
|
438
|
+
storedRightPanelSize = 0;
|
|
439
|
+
}
|
|
440
|
+
function showBottomPanel() {
|
|
441
|
+
runnablePanelSize = storedBottomPanelSize;
|
|
442
|
+
gridPanelSize = gridPanelSize - storedBottomPanelSize;
|
|
443
|
+
storedBottomPanelSize = 0;
|
|
444
|
+
}
|
|
445
|
+
function keydown(event) {
|
|
446
|
+
let classes = event.target?.['className'];
|
|
447
|
+
if ((typeof classes === 'string' && classes.includes('inputarea')) ||
|
|
448
|
+
['INPUT', 'TEXTAREA'].includes(document.activeElement?.tagName)) {
|
|
449
|
+
return;
|
|
450
|
+
}
|
|
451
|
+
switch (event.key) {
|
|
452
|
+
case 'b': {
|
|
453
|
+
if (event.ctrlKey || event.metaKey) {
|
|
454
|
+
event.preventDefault();
|
|
455
|
+
if (leftPanelSize !== 0) {
|
|
456
|
+
hideLeftPanel();
|
|
457
|
+
}
|
|
458
|
+
else {
|
|
459
|
+
showLeftPanel();
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
break;
|
|
463
|
+
}
|
|
464
|
+
case 'u': {
|
|
465
|
+
if (event.ctrlKey || event.metaKey) {
|
|
466
|
+
event.preventDefault();
|
|
467
|
+
if (rightPanelSize !== 0) {
|
|
468
|
+
hideRightPanel();
|
|
469
|
+
}
|
|
470
|
+
else {
|
|
471
|
+
showRightPanel();
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
break;
|
|
475
|
+
}
|
|
476
|
+
case 'l': {
|
|
477
|
+
if (event.ctrlKey || event.metaKey) {
|
|
478
|
+
event.preventDefault();
|
|
479
|
+
if (runnablePanelSize !== 0) {
|
|
480
|
+
hideBottomPanel();
|
|
481
|
+
}
|
|
482
|
+
else {
|
|
483
|
+
showBottomPanel();
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
break;
|
|
487
|
+
}
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
let testJob = undefined;
|
|
491
|
+
let jobToWatch = undefined;
|
|
410
492
|
</script>
|
|
411
493
|
|
|
494
|
+
<svelte:head>
|
|
495
|
+
<link rel="stylesheet" href="/tailwind_full.css" />
|
|
496
|
+
</svelte:head>
|
|
497
|
+
|
|
412
498
|
<DarkModeObserver on:change={onThemeChange} />
|
|
413
499
|
|
|
414
|
-
<svelte:window on:hashchange={hashchange} />
|
|
500
|
+
<svelte:window on:hashchange={hashchange} on:keydown={keydown} />
|
|
415
501
|
|
|
416
502
|
{#if !$userStore?.operator}
|
|
417
503
|
{#if $appStore}
|
|
@@ -423,6 +509,15 @@ let stillInJobEnter = false;
|
|
|
423
509
|
{diffDrawer}
|
|
424
510
|
bind:savedApp
|
|
425
511
|
{version}
|
|
512
|
+
leftPanelHidden={leftPanelSize === 0}
|
|
513
|
+
rightPanelHidden={rightPanelSize === 0}
|
|
514
|
+
bottomPanelHidden={runnablePanelSize === 0}
|
|
515
|
+
on:showLeftPanel={() => showLeftPanel()}
|
|
516
|
+
on:showRightPanel={() => showRightPanel()}
|
|
517
|
+
on:hideLeftPanel={() => hideLeftPanel()}
|
|
518
|
+
on:hideRightPanel={() => hideRightPanel()}
|
|
519
|
+
on:hideBottomPanel={() => hideBottomPanel()}
|
|
520
|
+
on:showBottomPanel={() => showBottomPanel()}
|
|
426
521
|
/>
|
|
427
522
|
{#if $mode === 'preview'}
|
|
428
523
|
<SplitPanesWrapper>
|
|
@@ -468,7 +563,7 @@ let stillInJobEnter = false;
|
|
|
468
563
|
<!-- {yTop} -->
|
|
469
564
|
|
|
470
565
|
<SecondaryMenu right={false} />
|
|
471
|
-
<ContextPanel />
|
|
566
|
+
<ContextPanel on:hidePanel={() => hideLeftPanel()} />
|
|
472
567
|
</div>
|
|
473
568
|
</Pane>
|
|
474
569
|
<Pane bind:size={centerPanelSize}>
|
|
@@ -485,7 +580,39 @@ let stillInJobEnter = false;
|
|
|
485
580
|
'wm-app-viewer h-full overflow-visible'
|
|
486
581
|
)}
|
|
487
582
|
style={$appStore.css?.['app']?.['viewer']?.style}
|
|
583
|
+
bind:clientWidth={centerPanelWidth}
|
|
488
584
|
>
|
|
585
|
+
{#if leftPanelSize === 0}
|
|
586
|
+
<div class="absolute top-0.5 left-0.5 z-50">
|
|
587
|
+
<HideButton
|
|
588
|
+
on:click={() => showLeftPanel()}
|
|
589
|
+
direction="right"
|
|
590
|
+
hidden
|
|
591
|
+
btnClasses="border bg-surface"
|
|
592
|
+
/>
|
|
593
|
+
</div>
|
|
594
|
+
{/if}
|
|
595
|
+
{#if rightPanelSize === 0}
|
|
596
|
+
<div class="absolute top-0.5 right-0.5 z-50">
|
|
597
|
+
<HideButton
|
|
598
|
+
on:click={() => showRightPanel()}
|
|
599
|
+
direction="left"
|
|
600
|
+
hidden
|
|
601
|
+
btnClasses="border bg-surface"
|
|
602
|
+
/>
|
|
603
|
+
</div>
|
|
604
|
+
{/if}
|
|
605
|
+
{#if runnablePanelSize === 0}
|
|
606
|
+
<div class="absolute bottom-0.5 right-0.5 z-50">
|
|
607
|
+
<HideButton
|
|
608
|
+
on:click={() => showBottomPanel()}
|
|
609
|
+
direction="bottom"
|
|
610
|
+
hidden
|
|
611
|
+
btnClasses="border bg-surface"
|
|
612
|
+
/>
|
|
613
|
+
</div>
|
|
614
|
+
{/if}
|
|
615
|
+
|
|
489
616
|
<div class="absolute bottom-2 left-2 z-50 border bg-surface">
|
|
490
617
|
<div class="flex flex-row gap-2 text-xs items-center h-8 px-1">
|
|
491
618
|
<Button
|
|
@@ -573,9 +700,7 @@ let stillInJobEnter = false;
|
|
|
573
700
|
</Pane>
|
|
574
701
|
{#if $connectingInput?.opened == false && !$componentActive}
|
|
575
702
|
<Pane bind:size={runnablePanelSize}>
|
|
576
|
-
|
|
577
|
-
<div
|
|
578
|
-
class="relative h-full w-full overflow-x-visible"
|
|
703
|
+
<AppEditorBottomPanel
|
|
579
704
|
on:mouseenter={() => {
|
|
580
705
|
runnableJobEnterTimeout && clearTimeout(runnableJobEnterTimeout)
|
|
581
706
|
stillInJobEnter = true
|
|
@@ -585,6 +710,7 @@ let stillInJobEnter = false;
|
|
|
585
710
|
}
|
|
586
711
|
}, 200)
|
|
587
712
|
}}
|
|
713
|
+
on:hidePanel={() => hideBottomPanel()}
|
|
588
714
|
on:mouseleave={() => {
|
|
589
715
|
stillInJobEnter = false
|
|
590
716
|
runnableJobEnterTimeout = setTimeout(
|
|
@@ -592,98 +718,119 @@ let stillInJobEnter = false;
|
|
|
592
718
|
200
|
|
593
719
|
)
|
|
594
720
|
}}
|
|
721
|
+
{rightPanelSize}
|
|
722
|
+
{centerPanelWidth}
|
|
723
|
+
{runnablePanelSize}
|
|
595
724
|
>
|
|
596
|
-
<
|
|
597
|
-
|
|
598
|
-
|
|
725
|
+
<RunnableJobPanel
|
|
726
|
+
float={rightPanelSize !== 0}
|
|
727
|
+
hidden={runnablePanelSize === 0}
|
|
728
|
+
bind:testJob
|
|
729
|
+
bind:jobToWatch
|
|
730
|
+
/>
|
|
731
|
+
</AppEditorBottomPanel>
|
|
599
732
|
</Pane>
|
|
600
733
|
{/if}
|
|
601
734
|
</Splitpanes>
|
|
602
735
|
</Pane>
|
|
603
|
-
|
|
604
|
-
<div
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
id="app-editor-component-library-tab"
|
|
619
|
-
>
|
|
620
|
-
<div class="m-1 center-center">
|
|
621
|
-
<Plus size={18} />
|
|
622
|
-
</div>
|
|
623
|
-
</Tab>
|
|
624
|
-
</Popover>
|
|
625
|
-
<Popover disappearTimeout={0} notClickable placement="bottom">
|
|
626
|
-
<svelte:fragment slot="text">Component settings</svelte:fragment>
|
|
627
|
-
<Tab
|
|
628
|
-
value="settings"
|
|
629
|
-
size="xs"
|
|
630
|
-
class="h-full"
|
|
631
|
-
on:pointerdown={() => {
|
|
632
|
-
if ($cssEditorOpen) {
|
|
633
|
-
$cssEditorOpen = false
|
|
634
|
-
selectedTab = 'settings'
|
|
635
|
-
}
|
|
636
|
-
}}
|
|
637
|
-
>
|
|
638
|
-
<div class="m-1 center-center">
|
|
639
|
-
<Component size={18} />
|
|
640
|
-
</div>
|
|
641
|
-
</Tab>
|
|
642
|
-
</Popover>
|
|
643
|
-
<Popover disappearTimeout={0} notClickable placement="bottom">
|
|
644
|
-
<svelte:fragment slot="text">Global styling</svelte:fragment>
|
|
645
|
-
<Tab
|
|
646
|
-
value="css"
|
|
647
|
-
size="xs"
|
|
648
|
-
class="h-full"
|
|
649
|
-
on:pointerdown={() => {
|
|
650
|
-
if (!$cssEditorOpen) {
|
|
651
|
-
$cssEditorOpen = true
|
|
652
|
-
selectedTab = 'css'
|
|
653
|
-
}
|
|
654
|
-
}}
|
|
655
|
-
>
|
|
656
|
-
<div class="m-1 center-center">
|
|
657
|
-
<Paintbrush size={18} />
|
|
658
|
-
</div>
|
|
659
|
-
</Tab>
|
|
660
|
-
</Popover>
|
|
661
|
-
<div slot="content" class="h-full overflow-y-auto">
|
|
662
|
-
<TabContent class="overflow-auto h-full" value="settings">
|
|
663
|
-
{#if $selectedComponent !== undefined}
|
|
664
|
-
<SettingsPanel
|
|
665
|
-
on:delete={() => {
|
|
666
|
-
befSelected = undefined
|
|
736
|
+
{#if rightPanelSize === 0}
|
|
737
|
+
<div class="relative flex flex-col h-full" />
|
|
738
|
+
{:else}
|
|
739
|
+
<Pane bind:size={rightPanelSize} minSize={15} maxSize={33}>
|
|
740
|
+
<div bind:clientWidth={$runnableJob.width} class="relative flex flex-col h-full">
|
|
741
|
+
<Tabs bind:selected={selectedTab} wrapperClass="!min-h-[42px]" class="!h-full">
|
|
742
|
+
<Popover disappearTimeout={0} notClickable placement="bottom">
|
|
743
|
+
<svelte:fragment slot="text">Component library</svelte:fragment>
|
|
744
|
+
<Tab
|
|
745
|
+
value="insert"
|
|
746
|
+
size="xs"
|
|
747
|
+
class="h-full"
|
|
748
|
+
on:pointerdown={() => {
|
|
749
|
+
if ($cssEditorOpen) {
|
|
750
|
+
$cssEditorOpen = false
|
|
667
751
|
selectedTab = 'insert'
|
|
668
|
-
}
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
<div class="
|
|
673
|
-
|
|
752
|
+
}
|
|
753
|
+
}}
|
|
754
|
+
id="app-editor-component-library-tab"
|
|
755
|
+
>
|
|
756
|
+
<div class="m-1 center-center">
|
|
757
|
+
<Plus size={18} />
|
|
674
758
|
</div>
|
|
675
|
-
|
|
676
|
-
</
|
|
677
|
-
<
|
|
678
|
-
<
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
759
|
+
</Tab>
|
|
760
|
+
</Popover>
|
|
761
|
+
<Popover disappearTimeout={0} notClickable placement="bottom">
|
|
762
|
+
<svelte:fragment slot="text">Component settings</svelte:fragment>
|
|
763
|
+
<Tab
|
|
764
|
+
value="settings"
|
|
765
|
+
size="xs"
|
|
766
|
+
class="h-full"
|
|
767
|
+
on:pointerdown={() => {
|
|
768
|
+
if ($cssEditorOpen) {
|
|
769
|
+
$cssEditorOpen = false
|
|
770
|
+
selectedTab = 'settings'
|
|
771
|
+
}
|
|
772
|
+
}}
|
|
773
|
+
>
|
|
774
|
+
<div class="m-1 center-center">
|
|
775
|
+
<Component size={18} />
|
|
776
|
+
</div>
|
|
777
|
+
</Tab>
|
|
778
|
+
</Popover>
|
|
779
|
+
<Popover disappearTimeout={0} notClickable placement="bottom">
|
|
780
|
+
<svelte:fragment slot="text">Global styling</svelte:fragment>
|
|
781
|
+
<Tab
|
|
782
|
+
value="css"
|
|
783
|
+
size="xs"
|
|
784
|
+
class="h-full"
|
|
785
|
+
on:pointerdown={() => {
|
|
786
|
+
if (!$cssEditorOpen) {
|
|
787
|
+
$cssEditorOpen = true
|
|
788
|
+
selectedTab = 'css'
|
|
789
|
+
}
|
|
790
|
+
}}
|
|
791
|
+
>
|
|
792
|
+
<div class="m-1 center-center">
|
|
793
|
+
<Paintbrush size={18} />
|
|
794
|
+
</div>
|
|
795
|
+
</Tab>
|
|
796
|
+
</Popover>
|
|
797
|
+
<div class="h-full w-full flex justify-end px-1">
|
|
798
|
+
<HideButton
|
|
799
|
+
on:click={() => {
|
|
800
|
+
storedRightPanelSize = rightPanelSize
|
|
801
|
+
rightPanelSize = 0
|
|
802
|
+
centerPanelSize = centerPanelSize + storedRightPanelSize
|
|
803
|
+
}}
|
|
804
|
+
direction="right"
|
|
805
|
+
/>
|
|
806
|
+
</div>
|
|
807
|
+
<div slot="content" class="h-full overflow-y-auto">
|
|
808
|
+
<TabContent class="overflow-auto h-full" value="settings">
|
|
809
|
+
{#if $selectedComponent !== undefined}
|
|
810
|
+
<SettingsPanel
|
|
811
|
+
on:delete={() => {
|
|
812
|
+
befSelected = undefined
|
|
813
|
+
selectedTab = 'insert'
|
|
814
|
+
}}
|
|
815
|
+
/>
|
|
816
|
+
<SecondaryMenu right />
|
|
817
|
+
{:else}
|
|
818
|
+
<div class="min-w-[150px] text-sm !text-secondary text-center py-8 px-2">
|
|
819
|
+
Select a component to see the settings for it
|
|
820
|
+
</div>
|
|
821
|
+
{/if}
|
|
822
|
+
</TabContent>
|
|
823
|
+
<TabContent value="insert">
|
|
824
|
+
<ComponentList />
|
|
825
|
+
</TabContent>
|
|
826
|
+
<TabContent value="css" class="h-full">
|
|
827
|
+
<CssSettings />
|
|
828
|
+
</TabContent>
|
|
829
|
+
</div>
|
|
830
|
+
</Tabs>
|
|
831
|
+
</div>
|
|
832
|
+
</Pane>
|
|
833
|
+
{/if}
|
|
687
834
|
</Splitpanes>
|
|
688
835
|
</SplitPanesWrapper>
|
|
689
836
|
{/if}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<script>import { twMerge } from 'tailwind-merge';
|
|
2
|
+
import InlineScriptsPanel from './inlineScriptsPanel/InlineScriptsPanel.svelte';
|
|
3
|
+
import RunnableJobPanel from './RunnableJobPanel.svelte';
|
|
4
|
+
export let rightPanelSize = 0;
|
|
5
|
+
export let centerPanelWidth = 0;
|
|
6
|
+
export let runnablePanelSize = 0;
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
{#if rightPanelSize !== 0}
|
|
10
|
+
<!-- svelte-ignore a11y-no-static-element-interactions -->
|
|
11
|
+
<div class={twMerge('relative h-full w-full overflow-x-visible')} on:mouseenter on:mouseleave>
|
|
12
|
+
<InlineScriptsPanel on:hidePanel />
|
|
13
|
+
<RunnableJobPanel hidden={runnablePanelSize === 0} />
|
|
14
|
+
<slot />
|
|
15
|
+
</div>
|
|
16
|
+
{:else}
|
|
17
|
+
<div class="flex flex-row relative w-full h-full">
|
|
18
|
+
<InlineScriptsPanel width={centerPanelWidth - 400} on:hidePanel />
|
|
19
|
+
|
|
20
|
+
<slot />
|
|
21
|
+
</div>
|
|
22
|
+
{/if}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
rightPanelSize?: number | undefined;
|
|
5
|
+
centerPanelWidth?: number | undefined;
|
|
6
|
+
runnablePanelSize?: number | undefined;
|
|
7
|
+
};
|
|
8
|
+
events: {
|
|
9
|
+
mouseenter: MouseEvent;
|
|
10
|
+
mouseleave: MouseEvent;
|
|
11
|
+
hidePanel: CustomEvent<any>;
|
|
12
|
+
} & {
|
|
13
|
+
[evt: string]: CustomEvent<any>;
|
|
14
|
+
};
|
|
15
|
+
slots: {
|
|
16
|
+
default: {};
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
export type AppEditorBottomPanelProps = typeof __propDef.props;
|
|
20
|
+
export type AppEditorBottomPanelEvents = typeof __propDef.events;
|
|
21
|
+
export type AppEditorBottomPanelSlots = typeof __propDef.slots;
|
|
22
|
+
export default class AppEditorBottomPanel extends SvelteComponent<AppEditorBottomPanelProps, AppEditorBottomPanelEvents, AppEditorBottomPanelSlots> {
|
|
23
|
+
}
|
|
24
|
+
export {};
|