windmill-components 1.504.0 → 1.504.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.
Files changed (87) hide show
  1. package/package/components/AppWrapper.svelte +0 -3
  2. package/package/components/{DBManagerDrawerButton.svelte → DBManagerDrawer.svelte} +38 -38
  3. package/package/components/DBManagerDrawer.svelte.d.ts +7 -0
  4. package/package/components/DarkModeObserver.svelte +30 -16
  5. package/package/components/DarkModeObserver.svelte.d.ts +9 -4
  6. package/package/components/Dev.svelte +1 -1
  7. package/package/components/EditorBar.svelte +108 -67
  8. package/package/components/FlowBuilder.svelte +2 -3
  9. package/package/components/FlowStatusViewerInner.svelte +19 -0
  10. package/package/components/FlowWrapper.svelte +0 -3
  11. package/package/components/ItemPicker.svelte +1 -1
  12. package/package/components/ItemPicker.svelte.d.ts +1 -1
  13. package/package/components/MoveDrawer.svelte.d.ts +2 -2
  14. package/package/components/ResourcePicker.svelte +11 -4
  15. package/package/components/S3FilePicker.svelte +10 -3
  16. package/package/components/S3FilePicker.svelte.d.ts +6 -4
  17. package/package/components/ScriptBuilder.svelte +3 -1
  18. package/package/components/ScriptEditor.svelte +31 -3
  19. package/package/components/ScriptEditor.svelte.d.ts +3 -1
  20. package/package/components/ScriptWrapper.svelte +0 -3
  21. package/package/components/ShareModal.svelte.d.ts +1 -1
  22. package/package/components/apps/editor/AppEditor.svelte +1 -1
  23. package/package/components/apps/editor/AppEditorHeader.svelte +1 -1
  24. package/package/components/apps/editor/GridEditor.svelte +1 -1
  25. package/package/components/apps/editor/SubGridEditor.svelte +1 -1
  26. package/package/components/apps/editor/component/componentCallbacks.svelte.js +1 -1
  27. package/package/components/apps/editor/componentsPanel/ComponentList.svelte +1 -1
  28. package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +1 -1
  29. package/package/components/apps/editor/settingsPanel/DeleteComponent.svelte +1 -1
  30. package/package/components/apps/types.d.ts +2 -2
  31. package/package/components/assets/AssetsDropdownButton.svelte +178 -0
  32. package/package/components/assets/AssetsDropdownButton.svelte.d.ts +16 -0
  33. package/package/components/assets/AssetsUsageDrawer.svelte +43 -0
  34. package/package/components/assets/AssetsUsageDrawer.svelte.d.ts +12 -0
  35. package/package/components/assets/lib.d.ts +16 -0
  36. package/package/components/assets/lib.js +60 -0
  37. package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +1 -1
  38. package/package/components/common/OnChange.svelte +18 -0
  39. package/package/components/common/OnChange.svelte.d.ts +21 -0
  40. package/package/components/common/button/UndoRedo.svelte +2 -2
  41. package/package/components/common/button/UndoRedo.svelte.d.ts +5 -6
  42. package/package/components/copilot/chat/script/core.js +4 -4
  43. package/package/components/custom_ui.d.ts +1 -0
  44. package/package/components/flows/content/FlowModuleComponent.svelte +20 -1
  45. package/package/components/flows/types.d.ts +15 -1
  46. package/package/components/graph/FlowGraphV2.svelte +111 -8
  47. package/package/components/graph/FlowGraphV2.svelte.d.ts +2 -0
  48. package/package/components/graph/graphBuilder.svelte.d.ts +14 -1
  49. package/package/components/graph/renderers/edges/BaseEdge.svelte +10 -1
  50. package/package/components/graph/renderers/edges/EmptyEdge.svelte +7 -1
  51. package/package/components/graph/renderers/edges/EmptyEdge.svelte.d.ts +3 -0
  52. package/package/components/graph/renderers/nodes/AssetNode.svelte +257 -0
  53. package/package/components/graph/renderers/nodes/AssetNode.svelte.d.ts +21 -0
  54. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte +55 -0
  55. package/package/components/graph/renderers/nodes/AssetsOverflowedNode.svelte.d.ts +7 -0
  56. package/package/components/icons/AssetGenericIcon.svelte +16 -0
  57. package/package/components/icons/AssetGenericIcon.svelte.d.ts +10 -0
  58. package/package/components/icons/AssetResIcon.svelte +32 -0
  59. package/package/components/icons/AssetResIcon.svelte.d.ts +9 -0
  60. package/package/components/icons/AssetS3Icon.svelte +30 -0
  61. package/package/components/icons/AssetS3Icon.svelte.d.ts +9 -0
  62. package/package/components/icons/AssetVarIcon.svelte +31 -0
  63. package/package/components/icons/AssetVarIcon.svelte.d.ts +9 -0
  64. package/package/components/meltComponents/Popover.svelte +2 -0
  65. package/package/components/meltComponents/Popover.svelte.d.ts +2 -0
  66. package/package/components/schema/EditableSchemaSdkWrapper.svelte +1 -4
  67. package/package/components/script_builder.d.ts +2 -0
  68. package/package/components/settings/WorkspaceOperatorSettings.svelte +20 -17
  69. package/package/components/sidebar/OperatorMenu.svelte +5 -0
  70. package/package/components/sidebar/SidebarContent.svelte +9 -1
  71. package/package/components/tutorials/app/AppTutorial.svelte +1 -1
  72. package/package/components/tutorials/app/ConnectionTutorial.svelte +1 -1
  73. package/package/gen/schemas.gen.d.ts +69 -1
  74. package/package/gen/schemas.gen.js +69 -1
  75. package/package/gen/services.gen.d.ts +20 -1
  76. package/package/gen/services.gen.js +37 -0
  77. package/package/gen/types.gen.d.ts +103 -0
  78. package/package/history.svelte.d.ts +2 -2
  79. package/package/history.svelte.js +6 -6
  80. package/package/infer.d.ts +2 -0
  81. package/package/infer.js +31 -5
  82. package/package/svelte5Utils.svelte.d.ts +2 -1
  83. package/package/svelte5Utils.svelte.js +3 -2
  84. package/package/utils.d.ts +12 -0
  85. package/package/utils.js +22 -0
  86. package/package.json +5 -5
  87. package/package/components/DBManagerDrawerButton.svelte.d.ts +0 -9
package/package/infer.js CHANGED
@@ -2,9 +2,9 @@ import { ScriptService, FlowService } from './gen';
2
2
  import { get, writable } from 'svelte/store';
3
3
  import { emptySchema, sortObject } from './utils.js';
4
4
  import { tick } from 'svelte';
5
- import initTsParser, { parse_deno, parse_outputs } from 'windmill-parser-wasm-ts';
6
- import initRegexParsers, { parse_sql, parse_mysql, parse_oracledb, parse_duckdb, parse_bigquery, parse_snowflake, parse_graphql, parse_mssql, parse_db_resource, parse_bash, parse_powershell } from 'windmill-parser-wasm-regex';
7
- import initPythonParser, { parse_python } from 'windmill-parser-wasm-py';
5
+ import initTsParser, { parse_assets_ts, parse_deno, parse_outputs } from 'windmill-parser-wasm-ts';
6
+ import initRegexParsers, { parse_sql, parse_mysql, parse_oracledb, parse_duckdb, parse_bigquery, parse_snowflake, parse_graphql, parse_mssql, parse_db_resource, parse_bash, parse_powershell, parse_assets_sql } from 'windmill-parser-wasm-regex';
7
+ import initPythonParser, { parse_assets_py, parse_python } from 'windmill-parser-wasm-py';
8
8
  import initGoParser, { parse_go } from 'windmill-parser-wasm-go';
9
9
  import initPhpParser, { parse_php } from 'windmill-parser-wasm-php';
10
10
  import initRustParser, { parse_rust } from 'windmill-parser-wasm-rust';
@@ -24,6 +24,7 @@ import wasmUrlNu from 'windmill-parser-wasm-nu/windmill_parser_wasm_bg.wasm?url'
24
24
  import wasmUrlJava from 'windmill-parser-wasm-java/windmill_parser_wasm_bg.wasm?url';
25
25
  import { workspaceStore } from './stores.js';
26
26
  import { argSigToJsonSchemaType } from './inferArgSig.js';
27
+ import {} from './components/assets/lib.js';
27
28
  const loadSchemaLastRun = writable(undefined);
28
29
  let initializeTsPromise = undefined;
29
30
  export async function initWasmTs() {
@@ -59,6 +60,30 @@ async function initWasmNu() {
59
60
  async function initWasmJava() {
60
61
  await initJavaParser(wasmUrlJava);
61
62
  }
63
+ export async function inferAssets(language, code) {
64
+ if (language === 'duckdb') {
65
+ await initWasmRegex();
66
+ return JSON.parse(parse_assets_sql(code));
67
+ }
68
+ if (language === 'deno' || language === 'nativets' || language === 'bun') {
69
+ await initWasmTs();
70
+ return JSON.parse(parse_assets_ts(code));
71
+ }
72
+ if (language === 'python3') {
73
+ await initWasmPython();
74
+ return JSON.parse(parse_assets_py(code));
75
+ }
76
+ return [];
77
+ }
78
+ const SQL_LANGUAGES = [
79
+ 'postgresql',
80
+ 'mysql',
81
+ 'bigquery',
82
+ 'snowflake',
83
+ 'mssql',
84
+ 'oracledb',
85
+ 'duckdb'
86
+ ];
62
87
  export async function inferArgs(language, code, schema, mainOverride) {
63
88
  const lastRun = get(loadSchemaLastRun);
64
89
  let inferedSchema;
@@ -70,8 +95,10 @@ export async function inferArgs(language, code, schema, mainOverride) {
70
95
  code = ' ';
71
96
  }
72
97
  let inlineDBResource = undefined;
73
- if (['postgresql', 'mysql', 'bigquery', 'snowflake', 'mssql', 'oracledb'].includes(language ?? '')) {
98
+ if (language && SQL_LANGUAGES.includes(language)) {
74
99
  await initWasmRegex();
100
+ }
101
+ if (['postgresql', 'mysql', 'bigquery', 'snowflake', 'mssql', 'oracledb'].includes(language ?? '')) {
75
102
  inlineDBResource = parse_db_resource(code);
76
103
  }
77
104
  if (language == 'python3') {
@@ -130,7 +157,6 @@ export async function inferArgs(language, code, schema, mainOverride) {
130
157
  }
131
158
  }
132
159
  else if (language == 'duckdb') {
133
- await initWasmRegex();
134
160
  inferedSchema = JSON.parse(parse_duckdb(code));
135
161
  }
136
162
  else if (language == 'snowflake') {
@@ -22,5 +22,6 @@ export type UsePromiseResult<T> = ({
22
22
  };
23
23
  export type UsePromiseOptions = {
24
24
  loadInit?: boolean;
25
+ clearValueOnRefresh?: boolean;
25
26
  };
26
- export declare function usePromise<T>(createPromise: () => Promise<T>, { loadInit }?: UsePromiseOptions): UsePromiseResult<T>;
27
+ export declare function usePromise<T>(createPromise: () => Promise<T>, { loadInit, clearValueOnRefresh }?: UsePromiseOptions): UsePromiseResult<T>;
@@ -12,7 +12,7 @@ export function stateSnapshot(state) {
12
12
  export function refreshStateStore(store) {
13
13
  store.val = $state.snapshot(store.val);
14
14
  }
15
- export function usePromise(createPromise, { loadInit = true } = {}) {
15
+ export function usePromise(createPromise, { loadInit = true, clearValueOnRefresh = true } = {}) {
16
16
  const ret = $state({
17
17
  status: 'loading',
18
18
  __promise: undefined,
@@ -20,7 +20,8 @@ export function usePromise(createPromise, { loadInit = true } = {}) {
20
20
  let promise = createPromise();
21
21
  ret.__promise = promise;
22
22
  ret.status = 'loading';
23
- ret.value = undefined;
23
+ if (clearValueOnRefresh)
24
+ ret.value = undefined;
24
25
  ret.error = undefined;
25
26
  promise
26
27
  .then((value) => {
@@ -196,4 +196,16 @@ export type ReadFieldsRecursivelyOptions = {
196
196
  export declare function readFieldsRecursively(obj: any, options?: ReadFieldsRecursivelyOptions): void;
197
197
  export declare function reorder<T>(items: T[], oldIndex: number, newIndex: number): T[];
198
198
  export declare function scroll_into_view_if_needed_polyfill(elem: Element, centerIfNeeded?: boolean): IntersectionObserver;
199
+ export declare function clone<T>(t: T): T;
199
200
  export declare const editorPositionMap: Record<string, IPosition>;
201
+ export type S3Uri = `s3://${string}/${string}`;
202
+ export type S3Object = S3Uri | {
203
+ s3: string;
204
+ storage?: string;
205
+ };
206
+ export declare function parseS3Object(s3Object: S3Object): {
207
+ s3: string;
208
+ storage?: string;
209
+ };
210
+ export declare function formatS3Object(s3Object: S3Object): S3Uri;
211
+ export declare function isS3Uri(uri: string): uri is S3Uri;
package/package/utils.js CHANGED
@@ -1202,4 +1202,26 @@ export function scroll_into_view_if_needed_polyfill(elem, centerIfNeeded = true)
1202
1202
  observer.observe(elem);
1203
1203
  return observer; // return for testing
1204
1204
  }
1205
+ export function clone(t) {
1206
+ if (typeof t === 'function')
1207
+ throw new Error('Cannot clone a function');
1208
+ if (typeof t === 'object')
1209
+ return stateSnapshot(t);
1210
+ return t;
1211
+ }
1205
1212
  export const editorPositionMap = {};
1213
+ export function parseS3Object(s3Object) {
1214
+ if (typeof s3Object === 'object')
1215
+ return s3Object;
1216
+ const match = s3Object.match(/^s3:\/\/([^/]*)\/(.*)$/);
1217
+ return { storage: match?.[1] || undefined, s3: match?.[2] ?? '' };
1218
+ }
1219
+ export function formatS3Object(s3Object) {
1220
+ if (typeof s3Object === 'object')
1221
+ return `s3://${s3Object.storage ?? ''}/${s3Object.s3}`;
1222
+ return s3Object;
1223
+ }
1224
+ export function isS3Uri(uri) {
1225
+ const match = uri.match(/^s3:\/\/([^/]*)\/(.*)$/);
1226
+ return !!match && match.length === 3;
1227
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "windmill-components",
3
- "version": "1.504.0",
3
+ "version": "1.504.2",
4
4
  "scripts": {
5
5
  "dev": "vite dev",
6
6
  "build": "vite build",
@@ -145,10 +145,10 @@
145
145
  "windmill-parser-wasm-java": "^1.478.1",
146
146
  "windmill-parser-wasm-nu": "^1.474.1",
147
147
  "windmill-parser-wasm-php": "^1.429.0",
148
- "windmill-parser-wasm-py": "^1.499.0",
149
- "windmill-parser-wasm-regex": "^1.492.1",
148
+ "windmill-parser-wasm-py": "^1.504.0",
149
+ "windmill-parser-wasm-regex": "^1.504.0",
150
150
  "windmill-parser-wasm-rust": "^1.429.0",
151
- "windmill-parser-wasm-ts": "^1.486.1",
151
+ "windmill-parser-wasm-ts": "^1.504.0",
152
152
  "windmill-parser-wasm-yaml": "^1.429.0",
153
153
  "windmill-sql-datatype-parser-wasm": "^1.318.0",
154
154
  "xterm": "^5.3.0",
@@ -541,4 +541,4 @@
541
541
  "@rollup/rollup-linux-x64-gnu": "^4.35.0",
542
542
  "fsevents": "^2.3.3"
543
543
  }
544
- }
544
+ }
@@ -1,9 +0,0 @@
1
- import { type DbType } from './apps/components/display/dbtable/utils';
2
- type Props = {
3
- resourceType: DbType;
4
- resourcePath: string;
5
- class?: string;
6
- };
7
- declare const DbManagerDrawerButton: import("svelte").Component<Props, {}, "">;
8
- type DbManagerDrawerButton = ReturnType<typeof DbManagerDrawerButton>;
9
- export default DbManagerDrawerButton;