diff --git a/f/user/happy_script.script.lock b/f/user/happy_script.script.lock new file mode 100644 index 0000000..c24eb1c --- /dev/null +++ b/f/user/happy_script.script.lock @@ -0,0 +1,5 @@ +{ + "dependencies": {} +} +//bun.lock + \ No newline at end of file diff --git a/f/user/happy_script.script.yaml b/f/user/happy_script.script.yaml new file mode 100644 index 0000000..0b23f20 --- /dev/null +++ b/f/user/happy_script.script.yaml @@ -0,0 +1,69 @@ +summary: '' +description: '' +lock: '!inline f/user/happy_script.script.lock' +kind: script +schema: + $schema: 'https://json-schema.org/draft/2020-12/schema' + type: object + properties: + a: + type: number + description: '' + default: null + b: + type: string + description: '' + default: null + enum: + - my + - enum + originalType: enum + e: + type: string + description: '' + default: inferred type string from default arg + originalType: string + f: + type: object + description: '' + default: + nested: object + properties: + nested: + type: string + description: '' + originalType: string + g: + type: object + description: '' + default: null + oneOf: + - type: object + properties: + foo: + type: string + description: '' + originalType: string + label: + type: string + description: '' + enum: + - Variant 1 + originalType: enum + title: Variant 1 + - type: object + properties: + bar: + type: number + description: '' + label: + type: string + description: '' + enum: + - Variant 2 + originalType: enum + title: Variant 2 + required: + - a + - b + - g diff --git a/f/user/happy_script.ts b/f/user/happy_script.ts new file mode 100644 index 0000000..444c9fc --- /dev/null +++ b/f/user/happy_script.ts @@ -0,0 +1,29 @@ +// there are multiple modes to add as header: //nobundling //native //npm //nodejs +// https://www.windmill.dev/docs/getting_started/scripts_quickstart/typescript#modes + +// import { toWords } from "number-to-words@1" +import * as wmill from "windmill-client" + +// fill the type, or use the +Resource type to get a type-safe reference to a resource +// type Postgresql = object +//foo + +export async function main( + a: number, + b: "my" | "enum", + //c: Postgresql, + //d: wmill.S3Object, // https://www.windmill.dev/docs/core_concepts/persistent_storage/large_data_files + //d: DynSelect_foo, // https://www.windmill.dev/docs/core_concepts/json_schema_and_parsing#dynamic-select + e = "inferred type string from default arg", + f = { nested: "object" }, + g: { + label: "Variant 1", + foo: string + } | { + label: "Variant 2", + bar: number + } +) { + // let x = await wmill.getVariable('u/user/foo') + return { foo: a }; +} diff --git a/wmill-lock.yaml b/wmill-lock.yaml index 63354b5..d73116a 100644 --- a/wmill-lock.yaml +++ b/wmill-lock.yaml @@ -24,4 +24,5 @@ locks: f/o/fortunate_script: d95a08b011d3dd9e280f9955895bd48ff88c9d90273f30e051f1034f86409518 f/user/ambitious_script: f2d061ef379d829407222c8e74c61e0935f96d661edb1649dc021df25befddda f/user/foo: 21e74f8089e3f036b30a9b0dbc5d8094e301c5e99cc5bba126a4cbf92221614b + f/user/happy_script: f574b114d4f43f15ed341302c6334ac699d942b416e15e4980d933ce74c9f339 f/user/innocuous_script: 184116bf717a969b227fdd5871ed1b1806e4623681f5f5cd5137ac50975487ae