windmill-components 1.83.1 → 1.83.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 (61) hide show
  1. package/components/ArgInput.svelte +35 -27
  2. package/components/DisplayResult.svelte +10 -1
  3. package/components/DisplayResult.svelte.d.ts +1 -0
  4. package/components/FlowGraphViewer.svelte +4 -20
  5. package/components/FlowJobResult.svelte +2 -1
  6. package/components/FlowJobResult.svelte.d.ts +1 -0
  7. package/components/FlowStatusViewer.svelte +1 -0
  8. package/components/RunForm.svelte +6 -2
  9. package/components/ScriptBuilder.svelte +6 -4
  10. package/components/ScriptBuilder.svelte.d.ts +1 -0
  11. package/components/apps/components/display/PlotlyHtml.svelte +26 -13
  12. package/components/apps/components/display/table/AppAggridTable.svelte +29 -17
  13. package/components/apps/components/display/table/AppTable.svelte +17 -4
  14. package/components/apps/components/display/table/AppTableFooter.svelte +2 -2
  15. package/components/apps/components/display/table/AppTableFooter.svelte.d.ts +1 -1
  16. package/components/apps/components/layout/AppDrawer.svelte +32 -14
  17. package/components/apps/editor/AppEditor.svelte +8 -4
  18. package/components/apps/editor/component/components.d.ts +27 -14
  19. package/components/apps/editor/component/components.js +28 -14
  20. package/components/apps/editor/componentsPanel/CssProperty.svelte +11 -6
  21. package/components/apps/editor/componentsPanel/CssProperty.svelte.d.ts +4 -2
  22. package/components/apps/editor/componentsPanel/ListItem.svelte +14 -4
  23. package/components/apps/editor/componentsPanel/ListItem.svelte.d.ts +5 -0
  24. package/components/apps/editor/componentsPanel/QuickStyleMenu.svelte +62 -21
  25. package/components/apps/editor/componentsPanel/QuickStyleMenu.svelte.d.ts +5 -2
  26. package/components/apps/editor/componentsPanel/QuickStyleProperty.svelte +1 -0
  27. package/components/apps/editor/componentsPanel/quickStyleProperties.d.ts +29 -503
  28. package/components/apps/editor/componentsPanel/quickStyleProperties.js +97 -98
  29. package/components/apps/editor/componentsPanel/store.d.ts +1 -0
  30. package/components/apps/editor/componentsPanel/store.js +1 -0
  31. package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +2 -3
  32. package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -1
  33. package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte +17 -3
  34. package/components/apps/editor/settingsPanel/StylePanel.svelte +2 -0
  35. package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte +1 -1
  36. package/components/apps/editor/settingsPanel/secondaryMenu/SecondaryMenu.svelte +2 -2
  37. package/components/flows/content/FlowLoop.svelte +26 -14
  38. package/components/flows/flowStore.js +4 -40
  39. package/components/flows/utils.js +16 -22
  40. package/components/propertyPicker/ObjectViewer.svelte +7 -1
  41. package/gen/core/OpenAPI.js +1 -1
  42. package/gen/models/FlowModule.d.ts +0 -1
  43. package/gen/services/JobService.d.ts +15 -0
  44. package/gen/services/JobService.js +18 -1
  45. package/infer.js +2 -0
  46. package/init_scripts/python_failure_module.d.ts +2 -0
  47. package/init_scripts/{python_failure_module.py → python_failure_module.js} +2 -2
  48. package/init_scripts/python_init_code.d.ts +2 -0
  49. package/init_scripts/{python_init_code.py → python_init_code.js} +3 -3
  50. package/init_scripts/python_init_code_clear.d.ts +2 -0
  51. package/init_scripts/python_init_code_clear.js +5 -0
  52. package/init_scripts/python_init_code_trigger.d.ts +2 -0
  53. package/init_scripts/{python_init_code_trigger.py → python_init_code_trigger.js} +2 -2
  54. package/package.json +673 -673
  55. package/script_helpers.d.ts +5 -5
  56. package/script_helpers.js +15 -5
  57. package/stores.d.ts +4 -3
  58. package/stores.js +23 -19
  59. package/utils.d.ts +1 -0
  60. package/utils.js +8 -0
  61. package/init_scripts/python_init_code_clear.py +0 -5
@@ -482,6 +482,21 @@ export declare class JobService {
482
482
  reason?: string;
483
483
  };
484
484
  }): CancelablePromise<string>;
485
+ /**
486
+ * force cancel queued job
487
+ * @returns string job canceled
488
+ * @throws ApiError
489
+ */
490
+ static forceCancelQueuedJob({ workspace, id, requestBody, }: {
491
+ workspace: string;
492
+ id: string;
493
+ /**
494
+ * reason
495
+ */
496
+ requestBody: {
497
+ reason?: string;
498
+ };
499
+ }): CancelablePromise<string>;
485
500
  /**
486
501
  * create an HMac signature given a job id and a resume id
487
502
  * @returns string job signature
@@ -351,7 +351,24 @@ export class JobService {
351
351
  static cancelQueuedJob({ workspace, id, requestBody, }) {
352
352
  return __request(OpenAPI, {
353
353
  method: 'POST',
354
- url: '/w/{workspace}/jobs/queue/cancel/{id}',
354
+ url: '/w/{workspace}/jobs_u/queue/cancel/{id}',
355
+ path: {
356
+ 'workspace': workspace,
357
+ 'id': id,
358
+ },
359
+ body: requestBody,
360
+ mediaType: 'application/json',
361
+ });
362
+ }
363
+ /**
364
+ * force cancel queued job
365
+ * @returns string job canceled
366
+ * @throws ApiError
367
+ */
368
+ static forceCancelQueuedJob({ workspace, id, requestBody, }) {
369
+ return __request(OpenAPI, {
370
+ method: 'POST',
371
+ url: '/w/{workspace}/jobs_u/queue/force_cancel/{id}',
355
372
  path: {
356
373
  'workspace': workspace,
357
374
  'id': id,
package/infer.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { ScriptService } from './gen';
2
2
  import { get, writable } from 'svelte/store';
3
+ import { sortObject } from './utils.js';
3
4
  const loadSchemaLastRun = writable(undefined);
4
5
  export async function inferArgs(language, code, schema) {
5
6
  let lastRun = get(loadSchemaLastRun);
@@ -46,6 +47,7 @@ export async function inferArgs(language, code, schema) {
46
47
  else {
47
48
  schema.properties[arg.name] = oldProperties[arg.name];
48
49
  }
50
+ schema.properties[arg.name] = sortObject(schema.properties[arg.name]);
49
51
  argSigToJsonSchemaType(arg.typ, schema.properties[arg.name]);
50
52
  schema.properties[arg.name].default = arg.default;
51
53
  if (!arg.has_default && !schema.required.includes(arg.name)) {
@@ -0,0 +1,2 @@
1
+ declare const _default: "import os\n\n# flow is considered recovered and a success unless an exception is raised\n\n\ndef main(message: str, name: str):\n flow_id = os.environ.get(\"WM_FLOW_JOB_ID\")\n print(\"message\", message)\n print(\"name\", name)\n return message, flow_id";
2
+ export default _default;
@@ -1,4 +1,4 @@
1
- import os
1
+ export default `import os
2
2
 
3
3
  # flow is considered recovered and a success unless an exception is raised
4
4
 
@@ -7,4 +7,4 @@ def main(message: str, name: str):
7
7
  flow_id = os.environ.get("WM_FLOW_JOB_ID")
8
8
  print("message", message)
9
9
  print("name", name)
10
- return message, flow_id
10
+ return message, flow_id`;
@@ -0,0 +1,2 @@
1
+ declare const _default: "import os\nimport wmill\n\n# You can import any package from PyPI, even if the assistant complains\n# Ctrl+S to format the code. Autocompletion available.\n\n\ndef main(\n no_default: str,\n name=\"Nicolas Bourbaki\",\n age=42,\n obj: dict = {\"even\": \"dicts\"},\n l: list = [\"or\", \"lists!\"],\n file_: bytes = bytes(0),\n):\n\n print(f\"Hello World and a warm welcome especially to {name}\")\n print(\"and its acolytes..\", age, obj, l, len(file_))\n\n # retrieve variables, resources, states using the wmill client\n try:\n secret = wmill.get_variable(\"f/examples/secret\")\n except:\n secret = \"No secret yet at f/examples/secret !\"\n print(f\"The variable at `f/examples/secret`: {secret}\")\n\n # Get last state of this script execution by the same trigger/user\n last_state = wmill.get_state()\n new_state = {\"foo\": 42} if last_state is None else last_state\n new_state[\"foo\"] += 1\n wmill.set_state(new_state)\n\n # fetch context variables\n user = os.environ.get(\"WM_USERNAME\")\n\n # return value is converted to JSON\n return {\"splitted\": name.split(), \"user\": user, \"state\": new_state}";
2
+ export default _default;
@@ -1,4 +1,4 @@
1
- import os
1
+ export default `import os
2
2
  import wmill
3
3
 
4
4
  # You can import any package from PyPI, even if the assistant complains
@@ -22,7 +22,7 @@ def main(
22
22
  secret = wmill.get_variable("f/examples/secret")
23
23
  except:
24
24
  secret = "No secret yet at f/examples/secret !"
25
- print(f"The variable at `f/examples/secret`: {secret}")
25
+ print(f"The variable at \`f/examples/secret\`: {secret}")
26
26
 
27
27
  # Get last state of this script execution by the same trigger/user
28
28
  last_state = wmill.get_state()
@@ -34,4 +34,4 @@ def main(
34
34
  user = os.environ.get("WM_USERNAME")
35
35
 
36
36
  # return value is converted to JSON
37
- return {"splitted": name.split(), "user": user, "state": new_state}
37
+ return {"splitted": name.split(), "user": user, "state": new_state}`;
@@ -0,0 +1,2 @@
1
+ declare const _default: "# import wmill\n\n\ndef main(x: str):\n return x";
2
+ export default _default;
@@ -0,0 +1,5 @@
1
+ export default `# import wmill
2
+
3
+
4
+ def main(x: str):
5
+ return x`;
@@ -0,0 +1,2 @@
1
+ declare const _default: "import wmill\n\n\ndef main():\n # A common trigger script would follow this pattern:\n # 1. Get the last saved state\n # const state = wnmill.get_state()\n # 2. Get the actual state from the external service\n # const newState = ...\n # 3. Compare the two states and update the internal state\n # wmill.setState(newState)\n # 4. Return the new rows\n # return range from (state to newState)\n return [1, 2, 3]";
2
+ export default _default;
@@ -1,4 +1,4 @@
1
- import wmill
1
+ export default `import wmill
2
2
 
3
3
 
4
4
  def main():
@@ -11,4 +11,4 @@ def main():
11
11
  # wmill.setState(newState)
12
12
  # 4. Return the new rows
13
13
  # return range from (state to newState)
14
- return [1, 2, 3]
14
+ return [1, 2, 3]`;