windmill-components 1.444.2 → 1.447.5
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/autosize.js +1 -1
- package/package/components/AppConnectInner.svelte +2 -1
- package/package/components/ArgInput.svelte +37 -24
- package/package/components/CapturesInputs.svelte +16 -0
- package/package/components/CapturesInputs.svelte.d.ts +21 -0
- package/package/components/Dev.svelte +7 -1
- package/package/components/EditableSchemaForm.svelte +369 -290
- package/package/components/EditableSchemaForm.svelte.d.ts +12 -2
- package/package/components/Editor.svelte +5 -7
- package/package/components/FirstStepInputs.svelte +111 -0
- package/package/components/FirstStepInputs.svelte.d.ts +17 -0
- package/package/components/FlowBuilder.svelte +28 -7
- package/package/components/FlowPreviewContent.svelte +72 -1
- package/package/components/FlowPreviewContent.svelte.d.ts +1 -0
- package/package/components/GfmMarkdown.svelte +93 -2
- package/package/components/HighlightCode.svelte +2 -0
- package/package/components/HistoricInputs.svelte +193 -0
- package/package/components/HistoricInputs.svelte.d.ts +20 -0
- package/package/components/InfiniteList.svelte +161 -0
- package/package/components/InfiniteList.svelte.d.ts +40 -0
- package/package/components/LightweightArgInput.svelte +19 -15
- package/package/components/MoveDrawer.svelte +2 -1
- package/package/components/Path.svelte +7 -1
- package/package/components/Path.svelte.d.ts +1 -1
- package/package/components/ResourcePicker.svelte +2 -1
- package/package/components/ResourcePicker.svelte.d.ts +1 -0
- package/package/components/ResultJobLoader.svelte.d.ts +1 -1
- package/package/components/SaveInputsButton.svelte +53 -0
- package/package/components/SaveInputsButton.svelte.d.ts +24 -0
- package/package/components/SavedInputs.svelte +33 -61
- package/package/components/SavedInputsPicker.svelte +264 -0
- package/package/components/SavedInputsPicker.svelte.d.ts +20 -0
- package/package/components/ScheduleEditorInner.svelte +0 -1
- package/package/components/SchemaForm.svelte +22 -3
- package/package/components/ScriptBuilder.svelte +595 -562
- package/package/components/ScriptEditor.svelte +10 -3
- package/package/components/ScriptEditor.svelte.d.ts +5 -2
- package/package/components/ScriptSchema.svelte +1 -2
- package/package/components/Section.svelte +6 -4
- package/package/components/ShareModal.svelte.d.ts +2 -2
- package/package/components/SimpleEditor.svelte +39 -7
- package/package/components/SimpleEditor.svelte.d.ts +1 -4
- package/package/components/StringTypeNarrowing.svelte +3 -1
- package/package/components/TestConnection.svelte +5 -0
- package/package/components/TestJobLoader.svelte.d.ts +1 -1
- package/package/components/WorkerGroup.svelte +2 -1
- package/package/components/apps/components/inputs/AppS3FileInput.svelte +1 -0
- package/package/components/apps/editor/component/components.d.ts +79 -79
- package/package/components/apps/editor/component/default-codes.d.ts +1 -1
- package/package/components/apps/editor/component/default-codes.js +10 -10
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +2 -1
- package/package/components/apps/inputType.d.ts +2 -2
- package/package/components/common/button/Button.svelte +10 -52
- package/package/components/common/button/PulseButton.svelte +81 -0
- package/package/components/common/button/PulseButton.svelte.d.ts +34 -0
- package/package/components/common/button/RoundIconButton.svelte +11 -0
- package/package/components/common/button/RoundIconButton.svelte.d.ts +19 -0
- package/package/components/common/button/model.d.ts +1 -0
- package/package/components/common/button/model.js +47 -0
- package/package/components/common/fileUpload/FileUpload.svelte +3 -1
- package/package/components/common/fileUpload/FileUpload.svelte.d.ts +1 -0
- package/package/components/common/languageIcons/LanguageIcon.svelte +3 -0
- package/package/components/common/layout/List.svelte +10 -4
- package/package/components/common/layout/List.svelte.d.ts +1 -0
- package/package/components/common/tabs/Tab.svelte +14 -1
- package/package/components/common/tabs/Tab.svelte.d.ts +1 -0
- package/package/components/copilot/ScriptGen.svelte +1 -1
- package/package/components/copilot/lib.js +1 -1
- package/package/components/copilot/prompts/edit.yaml +1 -1
- package/package/components/copilot/prompts/editPrompt.js +1 -1
- package/package/components/copilot/prompts/fix.yaml +1 -1
- package/package/components/copilot/prompts/fixPrompt.js +1 -1
- package/package/components/copilot/prompts/gen.yaml +1 -1
- package/package/components/copilot/prompts/genPrompt.js +1 -1
- package/package/components/custom_ui.d.ts +1 -0
- package/package/components/details/DetailPageDetailPanel.svelte +20 -19
- package/package/components/details/DetailPageDetailPanel.svelte.d.ts +4 -1
- package/package/components/details/DetailPageLayout.svelte +4 -1
- package/package/components/details/DetailPageLayout.svelte.d.ts +3 -0
- package/package/components/details/DetailPageTriggerPanel.svelte +84 -63
- package/package/components/details/DetailPageTriggerPanel.svelte.d.ts +3 -1
- package/package/components/details/EmailTriggerConfigSection.svelte +1 -1
- package/package/components/details/EmailTriggerConfigSection.svelte.d.ts +2 -1
- package/package/components/details/EmailTriggerPanel.svelte +2 -0
- package/package/components/details/EmailTriggerPanel.svelte.d.ts +2 -0
- package/package/components/flows/FlowEditor.svelte +8 -2
- package/package/components/flows/FlowEditor.svelte.d.ts +1 -0
- package/package/components/flows/common/FlowCard.svelte +12 -6
- package/package/components/flows/content/DynamicInputHelpBox.svelte +1 -0
- package/package/components/flows/content/FlowEditorPanel.svelte +15 -9
- package/package/components/flows/content/FlowEditorPanel.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowInput.svelte +449 -98
- package/package/components/flows/content/FlowInput.svelte.d.ts +2 -0
- package/package/components/flows/content/FlowInputEditor.svelte +46 -0
- package/package/components/flows/content/FlowInputEditor.svelte.d.ts +25 -0
- package/package/components/flows/content/FlowInputsQuick.svelte +1 -1
- package/package/components/flows/content/FlowLoop.svelte +192 -194
- package/package/components/flows/content/FlowModuleComponent.svelte +372 -382
- package/package/components/flows/content/FlowModuleMock.svelte +6 -7
- package/package/components/flows/content/FlowPathViewer.svelte +2 -1
- package/package/components/flows/content/FlowSettings.svelte +25 -3
- package/package/components/flows/content/FlowWhileLoop.svelte +97 -99
- package/package/components/flows/flowStore.d.ts +13 -0
- package/package/components/flows/flowStore.js +41 -0
- package/package/components/flows/header/FlowPreviewButtons.svelte +10 -4
- package/package/components/flows/header/FlowPreviewButtons.svelte.d.ts +4 -2
- package/package/components/flows/header/FlowYamlEditor.svelte +3 -0
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +8 -58
- package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte +67 -0
- package/package/components/flows/map/FlowModuleSchemaItemViewer.svelte.d.ts +24 -0
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +2 -2
- package/package/components/flows/pickers/FlowScriptPicker.svelte +1 -1
- package/package/components/flows/previousResults.d.ts +1 -1
- package/package/components/flows/previousResults.js +7 -2
- package/package/components/flows/types.d.ts +7 -0
- package/package/components/flows/utils.d.ts +1 -0
- package/package/components/flows/utils.js +3 -0
- package/package/components/graph/graphBuilder.js +1 -1
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte +22 -8
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte.d.ts +1 -1
- package/package/components/icons/NatsIcon.svelte +19 -0
- package/package/components/icons/NatsIcon.svelte.d.ts +18 -0
- package/package/components/icons/OracleDBIcon.svelte +15 -0
- package/package/components/icons/OracleDBIcon.svelte.d.ts +25 -0
- package/package/components/icons/index.d.ts +7 -1
- package/package/components/icons/index.js +8 -2
- package/package/components/meltComponents/ButtonDropDown.svelte +32 -0
- package/package/components/meltComponents/ButtonDropDown.svelte.d.ts +27 -0
- package/package/components/meltComponents/Popover.svelte +7 -4
- package/package/components/meltComponents/Popover.svelte.d.ts +1 -0
- package/package/components/runs/RunsFilter.svelte +2 -2
- package/package/components/schema/AddPropertyFormV2.svelte +46 -0
- package/package/components/schema/AddPropertyFormV2.svelte.d.ts +18 -0
- package/package/components/schema/AddPropertyV2.svelte +151 -0
- package/package/components/schema/AddPropertyV2.svelte.d.ts +25 -0
- package/package/components/schema/EditableSchemaDrawer.svelte +17 -8
- package/package/components/schema/EditableSchemaWrapper.svelte +58 -14
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +0 -1
- package/package/components/schema/FlowPropertyEditor.svelte +8 -3
- package/package/components/schema/JobSchemaPicker.svelte +32 -0
- package/package/components/schema/JobSchemaPicker.svelte.d.ts +19 -0
- package/package/components/schema/PropertyEditor.svelte +9 -1
- package/package/components/schema/RunningJobSchemaPicker.svelte +67 -0
- package/package/components/schema/RunningJobSchemaPicker.svelte.d.ts +21 -0
- package/package/components/schema/SchemaFormDND.svelte +1 -1
- package/package/components/schema/SchemaPicker.svelte +92 -0
- package/package/components/schema/SchemaPicker.svelte.d.ts +23 -0
- package/package/components/schema/SchemaPickerRow.svelte +95 -0
- package/package/components/schema/SchemaPickerRow.svelte.d.ts +22 -0
- package/package/components/scriptEditor/LogPanel.svelte +1 -1
- package/package/components/settings/ChangeWorkspaceColor.svelte +103 -0
- package/package/components/settings/ChangeWorkspaceColor.svelte.d.ts +16 -0
- package/package/components/settings/ChangeWorkspaceId.svelte +1 -0
- package/package/components/settings/ChangeWorkspaceName.svelte +4 -0
- package/package/components/sidebar/MenuButton.svelte +5 -2
- package/package/components/sidebar/MenuButton.svelte.d.ts +1 -0
- package/package/components/sidebar/SidebarContent.svelte +8 -0
- package/package/components/sidebar/WorkspaceMenu.svelte +40 -21
- package/package/components/table/DataTable.svelte +43 -3
- package/package/components/table/DataTable.svelte.d.ts +2 -0
- package/package/components/table/Head.svelte +1 -1
- package/package/components/table/Row.svelte +11 -1
- package/package/components/table/Row.svelte.d.ts +3 -0
- package/package/components/table/index.d.ts +3 -0
- package/package/components/table/index.js +3 -0
- package/package/components/triggers/CaptureButton.svelte +38 -4
- package/package/components/triggers/CaptureButton.svelte.d.ts +3 -1
- package/package/components/triggers/CaptureIcon.svelte +7 -4
- package/package/components/triggers/CaptureIcon.svelte.d.ts +7 -13
- package/package/components/triggers/CaptureSection.svelte +50 -17
- package/package/components/triggers/CaptureSection.svelte.d.ts +5 -3
- package/package/components/triggers/CaptureTable.svelte +239 -186
- package/package/components/triggers/CaptureTable.svelte.d.ts +9 -11
- package/package/components/triggers/CaptureWrapper.svelte +126 -109
- package/package/components/triggers/CaptureWrapper.svelte.d.ts +3 -1
- package/package/components/triggers/KafkaTriggerEditorInner.svelte +1 -0
- package/package/components/triggers/KafkaTriggersConfigSection.svelte +16 -4
- package/package/components/triggers/KafkaTriggersConfigSection.svelte.d.ts +3 -1
- package/package/components/triggers/KafkaTriggersPanel.svelte +2 -0
- package/package/components/triggers/KafkaTriggersPanel.svelte.d.ts +2 -0
- package/package/components/triggers/NatsTriggerEditor.svelte +19 -0
- package/package/components/triggers/NatsTriggerEditor.svelte.d.ts +21 -0
- package/package/components/triggers/NatsTriggerEditorInner.svelte +239 -0
- package/package/components/triggers/NatsTriggerEditorInner.svelte.d.ts +21 -0
- package/package/components/triggers/NatsTriggersConfigSection.svelte +276 -0
- package/package/components/triggers/NatsTriggersConfigSection.svelte.d.ts +37 -0
- package/package/components/triggers/NatsTriggersPanel.svelte +126 -0
- package/package/components/triggers/NatsTriggersPanel.svelte.d.ts +26 -0
- package/package/components/triggers/RouteEditorConfigSection.svelte +12 -2
- package/package/components/triggers/RouteEditorConfigSection.svelte.d.ts +5 -1
- package/package/components/triggers/RouteEditorInner.svelte +5 -0
- package/package/components/triggers/RoutesPanel.svelte +4 -0
- package/package/components/triggers/RoutesPanel.svelte.d.ts +3 -0
- package/package/components/triggers/TriggersEditor.svelte +146 -97
- package/package/components/triggers/TriggersEditor.svelte.d.ts +2 -0
- package/package/components/triggers/TriggersEditorSection.svelte +19 -13
- package/package/components/triggers/TriggersEditorSection.svelte.d.ts +3 -0
- package/package/components/triggers/TriggersWrapper.svelte +7 -3
- package/package/components/triggers/TriggersWrapper.svelte.d.ts +2 -1
- package/package/components/triggers/WebhooksConfigSection.svelte +1 -0
- package/package/components/triggers/WebhooksConfigSection.svelte.d.ts +2 -1
- package/package/components/triggers/WebhooksPanel.svelte +2 -0
- package/package/components/triggers/WebhooksPanel.svelte.d.ts +2 -0
- package/package/components/triggers/WebsocketEditorConfigSection.svelte +3 -1
- package/package/components/triggers/WebsocketEditorConfigSection.svelte.d.ts +2 -1
- package/package/components/triggers/WebsocketTriggersPanel.svelte +2 -0
- package/package/components/triggers/WebsocketTriggersPanel.svelte.d.ts +2 -0
- package/package/components/triggers.d.ts +2 -1
- package/package/components/triggers.js +2 -0
- package/package/components/vscode.js +12 -8
- package/package/consts.d.ts +1 -0
- package/package/consts.js +18 -0
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +207 -13
- package/package/gen/schemas.gen.js +207 -13
- package/package/gen/services.gen.d.ts +118 -10
- package/package/gen/services.gen.js +237 -17
- package/package/gen/types.gen.d.ts +400 -40
- package/package/hubPaths.json +2 -1
- package/package/infer.js +11 -2
- package/package/monaco_workers/build_workers.js +39 -37
- package/package/monaco_workers/graphql.worker.bundle.js +18371 -36513
- package/package/script_helpers.d.ts +5 -2
- package/package/script_helpers.js +46 -8
- package/package/scripts.js +4 -0
- package/package/stores.d.ts +2 -1
- package/package/stores.js +2 -1
- package/package.json +14 -16
- package/package/monaco_workers/graphql.worker.bundle.d.ts +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { AppComponent } from '.';
|
|
2
2
|
export declare function defaultCode(component: string, language: string): string | undefined;
|
|
3
|
-
export declare const DEFAULT_CODES: Partial<Record<AppComponent['type'], Partial<Record<'deno' | 'python3' | 'go' | 'bash' | 'pgsql' | 'mysql' | 'postgresql' | 'snowflake' | 'mssql' | 'bigquery', string>>>>;
|
|
3
|
+
export declare const DEFAULT_CODES: Partial<Record<AppComponent['type'], Partial<Record<'deno' | 'python3' | 'go' | 'bash' | 'pgsql' | 'mysql' | 'postgresql' | 'snowflake' | 'mssql' | 'bigquery' | 'oracledb', string>>>>;
|
|
@@ -198,12 +198,12 @@ LIMIT @limit OFFSET @offset;`,
|
|
|
198
198
|
SELECT * FROM demo
|
|
199
199
|
WHERE LENGTH(?) = 0 OR CONCAT("ID") ILIKE CONCAT('%', ?, '%') OR CONCAT("NAME") ILIKE CONCAT('%', ?, '%')
|
|
200
200
|
LIMIT 100 OFFSET 0`,
|
|
201
|
-
mssql: `-- @
|
|
202
|
-
-- @
|
|
203
|
-
-- @
|
|
204
|
-
SELECT * FROM Demo WHERE (@
|
|
201
|
+
mssql: `-- @P1 limit (int)
|
|
202
|
+
-- @P2 offset (int)
|
|
203
|
+
-- @P3 search (text)
|
|
204
|
+
SELECT * FROM Demo WHERE (@P3 = '' OR CONCAT([col1], [col2], [col3]) LIKE '%' + @P3 + '%')
|
|
205
205
|
ORDER BY col1
|
|
206
|
-
OFFSET @
|
|
206
|
+
OFFSET @P2 ROWS FETCH NEXT @P1 ROWS ONLY`
|
|
207
207
|
},
|
|
208
208
|
aggridinfinitecomponentee: {
|
|
209
209
|
deno: `type User = {
|
|
@@ -318,12 +318,12 @@ LIMIT @limit OFFSET @offset;`,
|
|
|
318
318
|
SELECT * FROM demo
|
|
319
319
|
WHERE LENGTH(?) = 0 OR CONCAT("ID") ILIKE CONCAT('%', ?, '%') OR CONCAT("NAME") ILIKE CONCAT('%', ?, '%')
|
|
320
320
|
LIMIT 100 OFFSET 0`,
|
|
321
|
-
mssql: `-- @
|
|
322
|
-
-- @
|
|
323
|
-
-- @
|
|
324
|
-
SELECT * FROM Demo WHERE (@
|
|
321
|
+
mssql: `-- @P1 limit (int)
|
|
322
|
+
-- @P2 offset (int)
|
|
323
|
+
-- @P3 search (text)
|
|
324
|
+
SELECT * FROM Demo WHERE (@P3 = '' OR CONCAT([col1], [col2], [col3]) LIKE '%' + @P3 + '%')
|
|
325
325
|
ORDER BY col1
|
|
326
|
-
OFFSET @
|
|
326
|
+
OFFSET @P2 ROWS FETCH NEXT @P1 ROWS ONLY`
|
|
327
327
|
},
|
|
328
328
|
textcomponent: {
|
|
329
329
|
deno: `export async function main() {
|
|
@@ -67,7 +67,7 @@ $: componentInput && onchange?.();
|
|
|
67
67
|
<IconSelectInput bind:value={componentInput.value} />
|
|
68
68
|
{:else if fieldType === 'tab-select'}
|
|
69
69
|
<TabSelectInput bind:componentInput />
|
|
70
|
-
{:else if fieldType === 'resource' && subFieldType && ['mysql', 'postgres', 'ms_sql_server', 'snowflake', 'snowflake_oauth', 'bigquery'].includes(subFieldType)}
|
|
70
|
+
{:else if fieldType === 'resource' && subFieldType && ['mysql', 'postgres', 'ms_sql_server', 'snowflake', 'snowflake_oauth', 'bigquery', 'oracledb'].includes(subFieldType)}
|
|
71
71
|
<ResourcePicker
|
|
72
72
|
initialValue={componentInput.value?.split('$res:')?.[1] || ''}
|
|
73
73
|
on:change={(e) => {
|
|
@@ -85,6 +85,7 @@ $: componentInput && onchange?.();
|
|
|
85
85
|
/>
|
|
86
86
|
{:else if fieldType === 'resource' && subFieldType === 's3'}
|
|
87
87
|
<ResourcePicker
|
|
88
|
+
placeholder="S3 resource (workspace s3 if empty)"
|
|
88
89
|
initialValue={componentInput.value?.split('$res:')?.[1] || ''}
|
|
89
90
|
on:change={(e) => {
|
|
90
91
|
let path = e.detail
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ReadFileAs } from '../common/fileInput/model';
|
|
2
2
|
import type { DecisionTreeNode, TypedComponent } from './editor/component';
|
|
3
3
|
import type { InlineScript } from './types';
|
|
4
|
-
export type InputType = 'integer' | 'text' | 'textarea' | 'template' | 'number' | 'boolean' | 'select' | 'icon-select' | 'color' | 'date' | 'time' | 'datetime' | 'object' | 'array' | 'any' | 'labeledresource' | 'labeledselect' | 'tab-select' | 'schema' | 'ag-grid' | 'table-column' | 'plotly' | 'chartjs' | 'DecisionTreeNode' | 'ag-chart' | 'resource' | 'db-explorer' | 'db-table' | 's3' | 'number-tuple' | 'postgres' | 'mysql' | 'ms_sql_server' | 'snowflake' | 'snowflake_oauth' | 'bigquery' | 'app-path';
|
|
4
|
+
export type InputType = 'integer' | 'text' | 'textarea' | 'template' | 'number' | 'boolean' | 'select' | 'icon-select' | 'color' | 'date' | 'time' | 'datetime' | 'object' | 'array' | 'any' | 'labeledresource' | 'labeledselect' | 'tab-select' | 'schema' | 'ag-grid' | 'table-column' | 'plotly' | 'chartjs' | 'DecisionTreeNode' | 'ag-chart' | 'resource' | 'db-explorer' | 'db-table' | 's3' | 'number-tuple' | 'postgres' | 'mysql' | 'ms_sql_server' | 'snowflake' | 'snowflake_oauth' | 'bigquery' | 'oracledb' | 'app-path';
|
|
5
5
|
export type InputConnection = {
|
|
6
6
|
componentType?: TypedComponent['type'];
|
|
7
7
|
componentId: string;
|
|
@@ -109,7 +109,7 @@ export type StaticOptions = {
|
|
|
109
109
|
label: string;
|
|
110
110
|
}[];
|
|
111
111
|
};
|
|
112
|
-
export type AppInput = AppInputSpec<'text', string> | AppInputSpec<'textarea', string> | AppInputSpec<'template', string> | AppInputSpec<'number', number> | AppInputSpec<'boolean', boolean> | AppInputSpec<'date', string> | AppInputSpec<'time', string> | AppInputSpec<'datetime', string> | AppInputSpec<'any', any> | AppInputSpec<'object', Record<string | number, any>> | AppInputSpec<'object', string> | (AppInputSpec<'select', string, 'db-table'> & StaticOptions) | AppInputSpec<'icon-select', string> | AppInputSpec<'color', string> | AppInputSpec<'array', string[], 'text'> | AppInputSpec<'array', string[], 'textarea'> | AppInputSpec<'array', number[], 'number'> | AppInputSpec<'array', boolean[], 'boolean'> | AppInputSpec<'array', string[], 'date'> | AppInputSpec<'array', string[], 'time'> | AppInputSpec<'array', string[], 'datetime'> | AppInputSpec<'array', object[], 'object'> | (AppInputSpec<'array', string[], 'select'> & StaticOptions) | AppInputSpec<'array', object[], 'labeledresource'> | AppInputSpec<'array', (object | string)[], 'labeledselect'> | AppInputSpec<'labeledselect', object> | AppInputSpec<'labeledresource', object> | AppInputSpec<'array', object[], 'tab-select'> | AppInputSpec<'schema', object> | AppInputSpec<'array', object[], 'ag-grid'> | AppInputSpec<'array', object[], 'db-explorer'> | AppInputSpec<'array', object[], 'table-column'> | AppInputSpec<'array', object[], 'plotly'> | AppInputSpec<'array', object[], 'chartjs'> | AppInputSpec<'array', DecisionTreeNode, 'DecisionTreeNode'> | AppInputSpec<'array', object[], 'ag-chart'> | AppInputSpec<'resource', string> | AppInputSpec<'resource', string, 's3'> | AppInputSpec<'resource', string, 'postgres'> | AppInputSpec<'resource', string, 'mysql'> | AppInputSpec<'resource', string, 'ms_sql_server'> | AppInputSpec<'resource', string, 'snowflake'> | AppInputSpec<'resource', string, 'snowflake_oauth'> | AppInputSpec<'resource', string, 'bigquery'> | AppInputSpec<'array', object[], 'number-tuple'> | AppInputSpec<'app-path', string>;
|
|
112
|
+
export type AppInput = AppInputSpec<'text', string> | AppInputSpec<'textarea', string> | AppInputSpec<'template', string> | AppInputSpec<'number', number> | AppInputSpec<'boolean', boolean> | AppInputSpec<'date', string> | AppInputSpec<'time', string> | AppInputSpec<'datetime', string> | AppInputSpec<'any', any> | AppInputSpec<'object', Record<string | number, any>> | AppInputSpec<'object', string> | (AppInputSpec<'select', string, 'db-table'> & StaticOptions) | AppInputSpec<'icon-select', string> | AppInputSpec<'color', string> | AppInputSpec<'array', string[], 'text'> | AppInputSpec<'array', string[], 'textarea'> | AppInputSpec<'array', number[], 'number'> | AppInputSpec<'array', boolean[], 'boolean'> | AppInputSpec<'array', string[], 'date'> | AppInputSpec<'array', string[], 'time'> | AppInputSpec<'array', string[], 'datetime'> | AppInputSpec<'array', object[], 'object'> | (AppInputSpec<'array', string[], 'select'> & StaticOptions) | AppInputSpec<'array', object[], 'labeledresource'> | AppInputSpec<'array', (object | string)[], 'labeledselect'> | AppInputSpec<'labeledselect', object> | AppInputSpec<'labeledresource', object> | AppInputSpec<'array', object[], 'tab-select'> | AppInputSpec<'schema', object> | AppInputSpec<'array', object[], 'ag-grid'> | AppInputSpec<'array', object[], 'db-explorer'> | AppInputSpec<'array', object[], 'table-column'> | AppInputSpec<'array', object[], 'plotly'> | AppInputSpec<'array', object[], 'chartjs'> | AppInputSpec<'array', DecisionTreeNode, 'DecisionTreeNode'> | AppInputSpec<'array', object[], 'ag-chart'> | AppInputSpec<'resource', string> | AppInputSpec<'resource', string, 's3'> | AppInputSpec<'resource', string, 'postgres'> | AppInputSpec<'resource', string, 'mysql'> | AppInputSpec<'resource', string, 'ms_sql_server'> | AppInputSpec<'resource', string, 'snowflake'> | AppInputSpec<'resource', string, 'snowflake_oauth'> | AppInputSpec<'resource', string, 'bigquery'> | AppInputSpec<'resource', string, 'oracledb'> | AppInputSpec<'array', object[], 'number-tuple'> | AppInputSpec<'app-path', string>;
|
|
113
113
|
export type RowAppInput = Extract<AppInput, {
|
|
114
114
|
type: 'row';
|
|
115
115
|
}>;
|
|
@@ -44,53 +44,6 @@ export function focus() {
|
|
|
44
44
|
}
|
|
45
45
|
const dispatch = createEventDispatcher();
|
|
46
46
|
// Order of classes: border, border modifier, bg, bg modifier, text, text modifier, everything else
|
|
47
|
-
const colorVariants = {
|
|
48
|
-
none: {
|
|
49
|
-
border: '',
|
|
50
|
-
contained: '',
|
|
51
|
-
divider: ''
|
|
52
|
-
},
|
|
53
|
-
blue: {
|
|
54
|
-
border: 'border-frost-500 dark:border-frost-300 hover:border-frost-700 dark:hover:border-frost-400 focus-visible:border-frost-700 bg-surface hover:bg-frost-100 dark:hover:bg-frost-900 focus-visible:bg-frost-100 focus-visible:dark:text-frost-100 dark:focus-visible:bg-frost-900 text-frost-500 dark:text-frost-300 dark:hover:text-frost-400 hover:text-frost-700 focus-visible:text-frost-700 focus-visible:ring-frost-300',
|
|
55
|
-
contained: 'bg-frost-500 hover:bg-frost-700 focus-visible:bg-frost-700 text-white focus-visible:ring-frost-300 dark:bg-frost-500/90 dark:hover:bg-frost-600/90',
|
|
56
|
-
divider: 'divide-x divide-frost-600'
|
|
57
|
-
},
|
|
58
|
-
marine: {
|
|
59
|
-
border: 'border-marine-300 dark:border-marine-200 hover:border-marine-500 dark:hover:border-marine-400 focus-visible:border-marine-500 bg-surface hover:bg-marine-500 dark:hover:bg-marine-400 focus-visible:bg-marine-100 focus-visible:dark:text-marine-50 dark:focus-visible:bg-marine-500 text-marine-50 dark:text-marine-50 dark:hover:text-marine-50 hover:text-marine-50 focus-visible:text-marine-300 focus-visible:ring-marine-200',
|
|
60
|
-
contained: 'bg-marine-300 hover:bg-marine-500 focus-visible:bg-marine-500 text-gray-50 focus-visible:ring-marine-200 dark:bg-marine-200 dark:hover:bg-marine-400',
|
|
61
|
-
divider: 'divide-x divide-marine-500'
|
|
62
|
-
},
|
|
63
|
-
red: {
|
|
64
|
-
border: 'border-red-600/60 hover:border-red-600 bg-surface hover:bg-red-100 text-red-600 hover:text-red-700 focus-visible:ring-red-300 dark:border-red-400/90 dark:text-red-400 dark:hover:border-red-400 dark:hover:bg-red-500/60 dark:hover:text-red-100',
|
|
65
|
-
contained: 'bg-red-600 hover:bg-red-600 text-white focus-visible:ring-red-300 dark:border-red-400/70 dark:bg-red-700/90 dark:hover:bg-red-900 dark:hover:border-red-300 dark:text-primary',
|
|
66
|
-
divider: 'divide-x divide-red-700'
|
|
67
|
-
},
|
|
68
|
-
green: {
|
|
69
|
-
border: 'border-green-600 hover:border-green-700 bg-surface hover:bg-green-100 text-green-600 hover:text-green-700 focus-visible:ring-green-300 dark:hover:bg-green-800 dark:border-green-400/90',
|
|
70
|
-
contained: 'bg-green-600 hover:bg-green-700 text-white focus-visible:ring-green-300 dark:bg-green-700/90 dark:hover:bg-green-800',
|
|
71
|
-
divider: 'divide-x divide-green-700'
|
|
72
|
-
},
|
|
73
|
-
dark: {
|
|
74
|
-
border: 'border-marine-300 bg-surface hover:bg-surface-hover focus-visible:bg-surface-hover text-primary hover:text-secondary focus-visible:text-secondary focus-visible:ring-surface-selected-inverse dark:border-marine-200',
|
|
75
|
-
contained: 'bg-marine-400 hover:bg-marine-200 focus-visible:bg-surface-hover-inverse text-primary-inverse focus-visible:ring-surface-selected-inverse dark:bg-marine-50 dark:hover:bg-marine-50/70 dark:text-primary-inverse',
|
|
76
|
-
divider: 'divide-x divide-gray-800 dark:divide-gray-200'
|
|
77
|
-
},
|
|
78
|
-
gray: {
|
|
79
|
-
border: 'border-gray-500 dark:border-gray-300 hover:border-gray-700 dark:hover:border-gray-400 focus-visible:border-gray-700 bg-surface hover:bg-gray-100 dark:hover:bg-gray-900 focus-visible:bg-gray-100 focus-visible:dark:text-gray-100 dark:focus-visible:bg-gray-900 text-gray-500 dark:text-gray-300 dark:hover:text-gray-400 hover:text-gray-700 focus-visible:text-gray-700 focus-visible:ring-gray-300',
|
|
80
|
-
contained: 'bg-gray-500 hover:bg-gray-700 focus-visible:bg-gray-700 text-white focus-visible:ring-gray-300',
|
|
81
|
-
divider: 'divide-x divide-gray-600'
|
|
82
|
-
},
|
|
83
|
-
light: {
|
|
84
|
-
border: 'border bg-surface hover:bg-surface-hover focus-visible:bg-surface-hover text-primary hover:text-secondary focus-visible:text-secondary focus-visible:ring-surface-selected',
|
|
85
|
-
contained: 'bg-surface border-transparent hover:bg-surface-hover focus-visible:bg-surface-hover text-primary focus-visible:ring-surface-selected',
|
|
86
|
-
divider: 'divide-x divide-gray-200 dark:divide-gray-700'
|
|
87
|
-
},
|
|
88
|
-
nord: {
|
|
89
|
-
border: 'border-nord-200 bg-surface hover:bg-surface-hover focus-visible:bg-surface-hover text-primary hover:text-secondary focus-visible:text-secondary focus-visible:ring-surface-selected-inverse dark:border-nord-200',
|
|
90
|
-
contained: 'bg-nord-300 hover:bg-nord-0 focus-visible:bg-surface-hover-inverse text-primary-inverse focus-visible:ring-surface-selected-inverse dark:bg-nord-400 dark:hover:bg-nord-600 dark:text-primary-inverse',
|
|
91
|
-
divider: 'divide-x divide-gray-800 dark:divide-gray-200'
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
47
|
async function onClick(event) {
|
|
95
48
|
if (!nonCaptureEvent) {
|
|
96
49
|
event.preventDefault();
|
|
@@ -102,8 +55,8 @@ async function onClick(event) {
|
|
|
102
55
|
}
|
|
103
56
|
}
|
|
104
57
|
function getColorClass(color, variant) {
|
|
105
|
-
if (color in
|
|
106
|
-
return
|
|
58
|
+
if (color in ButtonType.ColorVariants) {
|
|
59
|
+
return ButtonType.ColorVariants[color][variant];
|
|
107
60
|
}
|
|
108
61
|
else {
|
|
109
62
|
return color;
|
|
@@ -132,9 +85,14 @@ $: lucideIconSize = (iconMap[size] ?? 12) * 1;
|
|
|
132
85
|
</script>
|
|
133
86
|
|
|
134
87
|
<div
|
|
135
|
-
class=
|
|
136
|
-
|
|
137
|
-
|
|
88
|
+
class={twMerge(
|
|
89
|
+
dropdownItems && dropdownItems.length > 0 && variant === 'contained'
|
|
90
|
+
? ButtonType.ColorVariants[color].divider
|
|
91
|
+
: '',
|
|
92
|
+
wrapperClasses,
|
|
93
|
+
'flex flex-row',
|
|
94
|
+
disabled ? 'divide-text-disabled' : ''
|
|
95
|
+
)}
|
|
138
96
|
style={wrapperStyle}
|
|
139
97
|
>
|
|
140
98
|
{#if href}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
<script>
|
|
2
|
+
export let pulseDuration = 2
|
|
3
|
+
export let numberOfPulses = 3
|
|
4
|
+
export let scale = 1.2
|
|
5
|
+
|
|
6
|
+
let isPulsing = false
|
|
7
|
+
let pulseCount = 1
|
|
8
|
+
|
|
9
|
+
export function triggerPulse(count) {
|
|
10
|
+
if (pulseCount < 1) return
|
|
11
|
+
if (!isPulsing) {
|
|
12
|
+
pulseCount = count
|
|
13
|
+
isPulsing = true
|
|
14
|
+
setTimeout(() => {
|
|
15
|
+
isPulsing = false
|
|
16
|
+
}, pulseDuration * count * 1000)
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
</script>
|
|
20
|
+
|
|
21
|
+
<div class="relative">
|
|
22
|
+
<div>
|
|
23
|
+
<slot />
|
|
24
|
+
</div>
|
|
25
|
+
{#each Array(numberOfPulses) as _, i}
|
|
26
|
+
<div
|
|
27
|
+
class:deactivate={isPulsing}
|
|
28
|
+
style={`--pulse-duration: ${pulseDuration}s; --i:${i}; --scale:${scale}; --number-of-pulses:${numberOfPulses}; --pulse-count:${pulseCount};`}
|
|
29
|
+
>
|
|
30
|
+
<div class="pulse" class:active={isPulsing} />
|
|
31
|
+
</div>
|
|
32
|
+
{/each}
|
|
33
|
+
</div>
|
|
34
|
+
|
|
35
|
+
<style>
|
|
36
|
+
.relative {
|
|
37
|
+
position: relative;
|
|
38
|
+
display: inline-block;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.pulse {
|
|
42
|
+
position: absolute;
|
|
43
|
+
top: 50%;
|
|
44
|
+
left: 50%;
|
|
45
|
+
width: 100%;
|
|
46
|
+
height: 100%;
|
|
47
|
+
background: rgb(81, 151, 255);
|
|
48
|
+
border-radius: 8px;
|
|
49
|
+
transform: translate(-50%, -50%) scale(1);
|
|
50
|
+
z-index: 0;
|
|
51
|
+
pointer-events: none;
|
|
52
|
+
opacity: 0;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.pulse.active {
|
|
56
|
+
animation: pulse var(--pulse-duration) ease-out infinite;
|
|
57
|
+
animation-delay: calc(var(--i) * var(--pulse-duration) / var(--number-of-pulses));
|
|
58
|
+
opacity: 1;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.deactivate {
|
|
62
|
+
animation: fade calc(var(--pulse-duration) * 0.3) ease-out;
|
|
63
|
+
animation-delay: calc(var(--pulse-duration) * var(--pulse-count) - var(--pulse-duration) * 0.2);
|
|
64
|
+
opacity: 1;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
@keyframes fade {
|
|
68
|
+
0% {
|
|
69
|
+
opacity: 0.8;
|
|
70
|
+
}
|
|
71
|
+
100% {
|
|
72
|
+
opacity: 0;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
@keyframes pulse {
|
|
77
|
+
100% {
|
|
78
|
+
transform: translate(-50%, -50%) scale(var(--scale));
|
|
79
|
+
opacity: 0;
|
|
80
|
+
}
|
|
81
|
+
}</style>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** @typedef {typeof __propDef.props} PulseButtonProps */
|
|
2
|
+
/** @typedef {typeof __propDef.events} PulseButtonEvents */
|
|
3
|
+
/** @typedef {typeof __propDef.slots} PulseButtonSlots */
|
|
4
|
+
export default class PulseButton extends SvelteComponent<{
|
|
5
|
+
scale?: number | undefined;
|
|
6
|
+
pulseDuration?: number | undefined;
|
|
7
|
+
numberOfPulses?: number | undefined;
|
|
8
|
+
triggerPulse?: ((count: any) => void) | undefined;
|
|
9
|
+
}, {
|
|
10
|
+
[evt: string]: CustomEvent<any>;
|
|
11
|
+
}, {
|
|
12
|
+
default: {};
|
|
13
|
+
}> {
|
|
14
|
+
get triggerPulse(): (count: any) => void;
|
|
15
|
+
}
|
|
16
|
+
export type PulseButtonProps = typeof __propDef.props;
|
|
17
|
+
export type PulseButtonEvents = typeof __propDef.events;
|
|
18
|
+
export type PulseButtonSlots = typeof __propDef.slots;
|
|
19
|
+
import { SvelteComponent } from "svelte";
|
|
20
|
+
declare const __propDef: {
|
|
21
|
+
props: {
|
|
22
|
+
scale?: number | undefined;
|
|
23
|
+
pulseDuration?: number | undefined;
|
|
24
|
+
numberOfPulses?: number | undefined;
|
|
25
|
+
triggerPulse?: ((count: any) => void) | undefined;
|
|
26
|
+
};
|
|
27
|
+
events: {
|
|
28
|
+
[evt: string]: CustomEvent<any>;
|
|
29
|
+
};
|
|
30
|
+
slots: {
|
|
31
|
+
default: {};
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<script>export let color = 'light';
|
|
2
|
+
export let border = false;
|
|
3
|
+
$: colorClasses = {
|
|
4
|
+
light: 'text-tertiary bg-surface hover:bg-surface-hover text-tertiary',
|
|
5
|
+
dark: 'text-tertiary hover:bg-surface-hover-dark text-tertiary'
|
|
6
|
+
}[color ?? 'light'];
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
<div class="rounded-full p-1 {colorClasses} {border ? 'border border-tertiary' : ''}">
|
|
10
|
+
<slot />
|
|
11
|
+
</div>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
color?: 'light' | 'dark' | undefined;
|
|
5
|
+
border?: boolean | undefined;
|
|
6
|
+
};
|
|
7
|
+
events: {
|
|
8
|
+
[evt: string]: CustomEvent<any>;
|
|
9
|
+
};
|
|
10
|
+
slots: {
|
|
11
|
+
default: {};
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type RoundIconButtonProps = typeof __propDef.props;
|
|
15
|
+
export type RoundIconButtonEvents = typeof __propDef.events;
|
|
16
|
+
export type RoundIconButtonSlots = typeof __propDef.slots;
|
|
17
|
+
export default class RoundIconButton extends SvelteComponent<RoundIconButtonProps, RoundIconButtonEvents, RoundIconButtonSlots> {
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -47,4 +47,51 @@ export var ButtonType;
|
|
|
47
47
|
divider: ''
|
|
48
48
|
}
|
|
49
49
|
};
|
|
50
|
+
ButtonType.ColorVariants = {
|
|
51
|
+
none: {
|
|
52
|
+
border: '',
|
|
53
|
+
contained: '',
|
|
54
|
+
divider: ''
|
|
55
|
+
},
|
|
56
|
+
blue: {
|
|
57
|
+
border: 'border-frost-500 dark:border-frost-300 hover:border-frost-700 dark:hover:border-frost-400 focus-visible:border-frost-700 bg-surface hover:bg-frost-100 dark:hover:bg-frost-900 focus-visible:bg-frost-100 focus-visible:dark:text-frost-100 dark:focus-visible:bg-frost-900 text-frost-500 dark:text-frost-300 dark:hover:text-frost-400 hover:text-frost-700 focus-visible:text-frost-700 focus-visible:ring-frost-300',
|
|
58
|
+
contained: 'bg-frost-500 hover:bg-frost-700 focus-visible:bg-frost-700 text-white focus-visible:ring-frost-300 dark:bg-frost-500/90 dark:hover:bg-frost-600/90',
|
|
59
|
+
divider: 'divide-x divide-frost-600'
|
|
60
|
+
},
|
|
61
|
+
marine: {
|
|
62
|
+
border: 'border-marine-300 dark:border-marine-200 hover:border-marine-500 dark:hover:border-marine-400 focus-visible:border-marine-500 bg-surface hover:bg-marine-500 dark:hover:bg-marine-400 focus-visible:bg-marine-100 focus-visible:dark:text-marine-50 dark:focus-visible:bg-marine-500 text-marine-50 dark:text-marine-50 dark:hover:text-marine-50 hover:text-marine-50 focus-visible:text-marine-300 focus-visible:ring-marine-200',
|
|
63
|
+
contained: 'bg-marine-300 hover:bg-marine-500 focus-visible:bg-marine-500 text-gray-50 focus-visible:ring-marine-200 dark:bg-marine-200 dark:hover:bg-marine-400',
|
|
64
|
+
divider: 'divide-x divide-marine-500'
|
|
65
|
+
},
|
|
66
|
+
red: {
|
|
67
|
+
border: 'border-red-600/60 hover:border-red-600 bg-surface hover:bg-red-100 text-red-600 hover:text-red-700 focus-visible:ring-red-300 dark:border-red-400/90 dark:text-red-400 dark:hover:border-red-400 dark:hover:bg-red-500/60 dark:hover:text-red-100',
|
|
68
|
+
contained: 'bg-red-600 hover:bg-red-600 text-white focus-visible:ring-red-300 dark:border-red-400/70 dark:bg-red-700/90 dark:hover:bg-red-900 dark:hover:border-red-300 dark:text-primary',
|
|
69
|
+
divider: 'divide-x divide-red-700'
|
|
70
|
+
},
|
|
71
|
+
green: {
|
|
72
|
+
border: 'border-green-600 hover:border-green-700 bg-surface hover:bg-green-100 text-green-600 hover:text-green-700 focus-visible:ring-green-300 dark:hover:bg-green-800 dark:border-green-400/90',
|
|
73
|
+
contained: 'bg-green-600 hover:bg-green-700 text-white focus-visible:ring-green-300 dark:bg-green-700/90 dark:hover:bg-green-800',
|
|
74
|
+
divider: 'divide-x divide-green-700'
|
|
75
|
+
},
|
|
76
|
+
dark: {
|
|
77
|
+
border: 'border-marine-300 bg-surface hover:bg-surface-hover focus-visible:bg-surface-hover text-primary hover:text-secondary focus-visible:text-secondary focus-visible:ring-surface-selected-inverse dark:border-marine-200',
|
|
78
|
+
contained: 'bg-marine-400 hover:bg-marine-200 focus-visible:bg-surface-hover-inverse text-primary-inverse focus-visible:ring-surface-selected-inverse dark:bg-marine-50 dark:hover:bg-marine-50/70 dark:text-primary-inverse',
|
|
79
|
+
divider: 'divide-x divide-gray-800 dark:divide-gray-200'
|
|
80
|
+
},
|
|
81
|
+
gray: {
|
|
82
|
+
border: 'border-gray-500 dark:border-gray-300 hover:border-gray-700 dark:hover:border-gray-400 focus-visible:border-gray-700 bg-surface hover:bg-gray-100 dark:hover:bg-gray-900 focus-visible:bg-gray-100 focus-visible:dark:text-gray-100 dark:focus-visible:bg-gray-900 text-gray-500 dark:text-gray-300 dark:hover:text-gray-400 hover:text-gray-700 focus-visible:text-gray-700 focus-visible:ring-gray-300',
|
|
83
|
+
contained: 'bg-gray-500 hover:bg-gray-700 focus-visible:bg-gray-700 text-white focus-visible:ring-gray-300',
|
|
84
|
+
divider: 'divide-x divide-gray-600'
|
|
85
|
+
},
|
|
86
|
+
light: {
|
|
87
|
+
border: 'border bg-surface hover:bg-surface-hover focus-visible:bg-surface-hover text-primary hover:text-secondary focus-visible:text-secondary focus-visible:ring-surface-selected',
|
|
88
|
+
contained: 'bg-surface border-transparent hover:bg-surface-hover focus-visible:bg-surface-hover text-primary focus-visible:ring-surface-selected',
|
|
89
|
+
divider: 'divide-x divide-gray-200 dark:divide-gray-700'
|
|
90
|
+
},
|
|
91
|
+
nord: {
|
|
92
|
+
border: 'border-nord-200 bg-surface hover:bg-surface-hover focus-visible:bg-surface-hover text-primary hover:text-secondary focus-visible:text-secondary focus-visible:ring-surface-selected-inverse dark:border-nord-200',
|
|
93
|
+
contained: 'bg-nord-300 hover:bg-nord-0 focus-visible:bg-surface-hover-inverse text-primary-inverse focus-visible:ring-surface-selected-inverse dark:bg-nord-400 dark:hover:bg-nord-600 dark:text-primary-inverse',
|
|
94
|
+
divider: 'divide-x divide-gray-800 dark:divide-gray-200'
|
|
95
|
+
}
|
|
96
|
+
};
|
|
50
97
|
})(ButtonType || (ButtonType = {}));
|
|
@@ -25,6 +25,7 @@ export let defaultValue = undefined;
|
|
|
25
25
|
export let workspace = undefined;
|
|
26
26
|
export let fileUploads = writable([]);
|
|
27
27
|
export let appPath = undefined;
|
|
28
|
+
export let disabled = false;
|
|
28
29
|
export let computeForceViewerPolicies = undefined;
|
|
29
30
|
const dispatch = createEventDispatcher();
|
|
30
31
|
async function handleChange(files) {
|
|
@@ -385,6 +386,7 @@ onDestroy(() => {
|
|
|
385
386
|
</div>
|
|
386
387
|
{:else}
|
|
387
388
|
<FileInput
|
|
389
|
+
{disabled}
|
|
388
390
|
accept={acceptedFileTypes?.join(',')}
|
|
389
391
|
multiple={allowMultiple}
|
|
390
392
|
returnFileNames
|
|
@@ -396,7 +398,7 @@ onDestroy(() => {
|
|
|
396
398
|
style={customStyle}
|
|
397
399
|
defaultFile={defaultValue}
|
|
398
400
|
>
|
|
399
|
-
{containerText}
|
|
401
|
+
{containerText}{#if disabled}<br />(Disabled){/if}
|
|
400
402
|
</FileInput>
|
|
401
403
|
{/if}
|
|
402
404
|
</div>
|
|
@@ -7,6 +7,7 @@ import DockerIcon from '../../icons/DockerIcon.svelte';
|
|
|
7
7
|
import RestIcon from '../../icons/RestIcon.svelte';
|
|
8
8
|
import PowershellIcon from '../../icons/PowershellIcon.svelte';
|
|
9
9
|
import BigQueryIcon from '../../icons/BigQueryIcon.svelte';
|
|
10
|
+
import OracleDBIcon from '../../icons/OracleDBIcon.svelte';
|
|
10
11
|
import SnowflakeIcon from '../../icons/SnowflakeIcon.svelte';
|
|
11
12
|
import GraphqlIcon from '../../icons/GraphqlIcon.svelte';
|
|
12
13
|
import MSSqlServerIcon from '../../icons/MSSqlServerIcon.svelte';
|
|
@@ -31,6 +32,7 @@ const languageLabel = {
|
|
|
31
32
|
graphql: 'GraphQL',
|
|
32
33
|
postgresql: 'Postgresql',
|
|
33
34
|
bigquery: 'BigQuery',
|
|
35
|
+
oracledb: 'Oracle Database',
|
|
34
36
|
snowflake: 'Snowflake',
|
|
35
37
|
mysql: 'MySQL',
|
|
36
38
|
mssql: 'MS SQL Server',
|
|
@@ -51,6 +53,7 @@ const langToComponent = {
|
|
|
51
53
|
pgsql: PostgresIcon,
|
|
52
54
|
mysql: MySQLIcon,
|
|
53
55
|
bigquery: BigQueryIcon,
|
|
56
|
+
oracledb: OracleDBIcon,
|
|
54
57
|
snowflake: SnowflakeIcon,
|
|
55
58
|
mssql: MSSqlServerIcon,
|
|
56
59
|
javascript: JavaScript,
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
<script>
|
|
1
|
+
<script>import { twMerge } from 'tailwind-merge';
|
|
2
|
+
export let horizontal = false;
|
|
2
3
|
export let gap = 'sm';
|
|
3
4
|
export let justify = 'start';
|
|
4
5
|
export let wFull = true;
|
|
6
|
+
export let hFull = true;
|
|
5
7
|
const gapMap = {
|
|
6
8
|
none: '',
|
|
7
9
|
sm: 'gap-2',
|
|
@@ -26,9 +28,13 @@ const justifyMap = {
|
|
|
26
28
|
</div>
|
|
27
29
|
{:else}
|
|
28
30
|
<div
|
|
29
|
-
class=
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
class={twMerge(
|
|
32
|
+
'flex flex-col w-full',
|
|
33
|
+
hFull ? 'h-full' : '',
|
|
34
|
+
gapMap[gap],
|
|
35
|
+
'items-center',
|
|
36
|
+
justifyMap[justify]
|
|
37
|
+
)}
|
|
32
38
|
>
|
|
33
39
|
<slot />
|
|
34
40
|
</div>
|
|
@@ -10,9 +10,22 @@ export let selectedStyle = '';
|
|
|
10
10
|
export let id = undefined;
|
|
11
11
|
export let active = false;
|
|
12
12
|
export let exact = false;
|
|
13
|
+
export let otherValues = [];
|
|
13
14
|
export let disabled = false;
|
|
14
15
|
const { selected, update, hashNavigation } = getContext('Tabs');
|
|
15
|
-
|
|
16
|
+
function getIsSelectedFn(exact, otherValues) {
|
|
17
|
+
if (otherValues.length > 0) {
|
|
18
|
+
return (selected) => selected == value || otherValues.includes(selected);
|
|
19
|
+
}
|
|
20
|
+
else if (exact) {
|
|
21
|
+
return (selected) => selected == value;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
return (selected) => selected?.startsWith(value);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
$: isSelectedFn = getIsSelectedFn(exact, otherValues);
|
|
28
|
+
$: isSelected = isSelectedFn($selected);
|
|
16
29
|
const fontSizeClasses = {
|
|
17
30
|
xs: 'text-xs',
|
|
18
31
|
sm: 'text-sm',
|
|
@@ -425,7 +425,7 @@ onDestroy(() => {
|
|
|
425
425
|
</div>
|
|
426
426
|
{/if}
|
|
427
427
|
|
|
428
|
-
{#if ['postgresql', 'mysql', 'snowflake', 'bigquery', 'mssql', 'graphql'].includes(lang ?? '') && dbSchema?.lang === lang}
|
|
428
|
+
{#if ['postgresql', 'mysql', 'snowflake', 'bigquery', 'mssql', 'graphql, oracledb'].includes(lang ?? '') && dbSchema?.lang === lang}
|
|
429
429
|
<div class="flex flex-row items-center justify-between gap-2 w-96">
|
|
430
430
|
<div class="flex flex-row items-center gap-1">
|
|
431
431
|
<p class="text-xs text-secondary">
|
|
@@ -293,7 +293,7 @@ export function stringifySchema(dbSchema) {
|
|
|
293
293
|
function addDBSChema(scriptOptions, prompt) {
|
|
294
294
|
const { dbSchema, language } = scriptOptions;
|
|
295
295
|
if (dbSchema &&
|
|
296
|
-
['postgresql', 'mysql', 'snowflake', 'bigquery', 'mssql', 'graphql'].includes(language) && // make sure we are using a SQL/query language
|
|
296
|
+
['postgresql', 'mysql', 'snowflake', 'bigquery', 'mssql', 'graphql', 'oracledb'].includes(language) && // make sure we are using a SQL/query language
|
|
297
297
|
language === dbSchema.lang // make sure we are using the same language as the schema
|
|
298
298
|
) {
|
|
299
299
|
let { stringified } = dbSchema;
|
|
@@ -112,7 +112,7 @@ prompts:
|
|
|
112
112
|
{code}
|
|
113
113
|
```
|
|
114
114
|
<contextual_information>
|
|
115
|
-
Arguments can be obtained directly in the statement with @
|
|
115
|
+
Arguments can be obtained directly in the statement with @P1, @P2, etc.. Name the parameters by adding comments before the statement like that: `-- @P1 name1 ({type})` or `-- @P2 name2 ({type}) = default` (one per row)
|
|
116
116
|
</contextual_information>
|
|
117
117
|
My instructions: {description}
|
|
118
118
|
graphql:
|
|
@@ -26,7 +26,7 @@ export const EDIT_PROMPT = {
|
|
|
26
26
|
"prompt": "Here's my snowflake code: \n```sql\n{code}\n```\n<contextual_information>\nArguments can be obtained directly in the statement with ?. Name the parameters by adding comments before the statement like that: `-- ? name1 ({type})` or `-- ? name2 ({type}) = default` (one per row)\n</contextual_information>\nMy instructions: {description}"
|
|
27
27
|
},
|
|
28
28
|
"mssql": {
|
|
29
|
-
"prompt": "Here's my Microsoft SQL Server code: \n```sql\n{code}\n```\n<contextual_information>\nArguments can be obtained directly in the statement with @
|
|
29
|
+
"prompt": "Here's my Microsoft SQL Server code: \n```sql\n{code}\n```\n<contextual_information>\nArguments can be obtained directly in the statement with @P1, @P2, etc.. Name the parameters by adding comments before the statement like that: `-- @P1 name1 ({type})` or `-- @P2 name2 ({type}) = default` (one per row)\n</contextual_information>\nMy instructions: {description}"
|
|
30
30
|
},
|
|
31
31
|
"graphql": {
|
|
32
32
|
"prompt": "Here's my graphql code: \n```graphql\n{code}\n```\n<contextual_information>\nAdd the needed arguments as query parameters.\n</contextual_information>\nMy instructions: {description}"
|
|
@@ -122,7 +122,7 @@ prompts:
|
|
|
122
122
|
{code}
|
|
123
123
|
```
|
|
124
124
|
<contextual_information>
|
|
125
|
-
Arguments can be obtained directly in the statement with @
|
|
125
|
+
Arguments can be obtained directly in the statement with @P1, @P2, etc.. Name the parameters by adding comments before the statement like that: `-- @P1 name1 ({type})` or `-- @P2 name2 ({type}) = default` (one per row)
|
|
126
126
|
</contextual_information>
|
|
127
127
|
I get the following error: {error}
|
|
128
128
|
Fix my code.
|
|
@@ -26,7 +26,7 @@ export const FIX_PROMPT = {
|
|
|
26
26
|
"prompt": "Here's my snowflake code: \n```sql\n{code}\n```\n<contextual_information>\nArguments can be obtained directly in the statement with ?. Name the parameters by adding comments before the statement like that: `-- ? name1 ({type})` or `-- ? name2 ({type}) = default` (one per row)\n</contextual_information>\nI get the following error: {error}\nFix my code."
|
|
27
27
|
},
|
|
28
28
|
"mssql": {
|
|
29
|
-
"prompt": "Here's my Microsoft SQL Server code: \n```sql\n{code}\n```\n<contextual_information>\nArguments can be obtained directly in the statement with @
|
|
29
|
+
"prompt": "Here's my Microsoft SQL Server code: \n```sql\n{code}\n```\n<contextual_information>\nArguments can be obtained directly in the statement with @P1, @P2, etc.. Name the parameters by adding comments before the statement like that: `-- @P1 name1 ({type})` or `-- @P2 name2 ({type}) = default` (one per row)\n</contextual_information>\nI get the following error: {error}\nFix my code."
|
|
30
30
|
},
|
|
31
31
|
"graphql": {
|
|
32
32
|
"prompt": "Here's my graphql code: \n```graphql\n{code}\n```\n<contextual_information>\nAdd the needed arguments as query parameters.\n</contextual_information>\nI get the following error: {error}\nFix my code."
|
|
@@ -78,7 +78,7 @@ prompts:
|
|
|
78
78
|
mssql:
|
|
79
79
|
prompt: |-
|
|
80
80
|
<contextual_information>
|
|
81
|
-
You have to write a statement for Microsoft SQL Server. Arguments can be obtained directly in the statement with @
|
|
81
|
+
You have to write a statement for Microsoft SQL Server. Arguments can be obtained directly in the statement with @P1, @P2, etc.. Name the parameters by adding comments before the statement like that: `-- @P1 name1 ({type})` or `-- @P2 name2 ({type}) = default` (one per row)
|
|
82
82
|
</contextual_information>
|
|
83
83
|
My instructions: {description}
|
|
84
84
|
graphql:
|
|
@@ -26,7 +26,7 @@ export const GEN_PROMPT = {
|
|
|
26
26
|
"prompt": "<contextual_information>\nYou have to write a statement for Snowflake. Arguments can be obtained directly in the statement with ?. Name the parameters by adding comments before the statement like that: `-- ? name1 ({type})` or `-- ? name2 ({type}) = default` (one per row)\n</contextual_information>\nMy instructions: {description}"
|
|
27
27
|
},
|
|
28
28
|
"mssql": {
|
|
29
|
-
"prompt": "<contextual_information>\nYou have to write a statement for Microsoft SQL Server. Arguments can be obtained directly in the statement with @
|
|
29
|
+
"prompt": "<contextual_information>\nYou have to write a statement for Microsoft SQL Server. Arguments can be obtained directly in the statement with @P1, @P2, etc.. Name the parameters by adding comments before the statement like that: `-- @P1 name1 ({type})` or `-- @P2 name2 ({type}) = default` (one per row)\n</contextual_information>\nMy instructions: {description}"
|
|
30
30
|
},
|
|
31
31
|
"graphql": {
|
|
32
32
|
"prompt": "<contextual_information>\nYou have to write a query for GraphQL. Add the needed arguments as query parameters.\n</contextual_information>\nMy instructions: {description}"
|