@galaxy-tool-util/schema 1.13.1 → 1.15.0

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 (101) hide show
  1. package/dist/index.d.ts +5 -3
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +5 -3
  4. package/dist/index.js.map +1 -1
  5. package/dist/test-format/tests.schema.generated.d.ts +47 -0
  6. package/dist/test-format/tests.schema.generated.d.ts.map +1 -1
  7. package/dist/test-format/tests.schema.generated.js +62 -0
  8. package/dist/test-format/tests.schema.generated.js.map +1 -1
  9. package/dist/user-tool-source/schema.generated.d.ts +1203 -266
  10. package/dist/user-tool-source/schema.generated.d.ts.map +1 -1
  11. package/dist/user-tool-source/schema.generated.js +1522 -367
  12. package/dist/user-tool-source/schema.generated.js.map +1 -1
  13. package/dist/workflow/draft-checks.d.ts.map +1 -1
  14. package/dist/workflow/draft-checks.js +105 -59
  15. package/dist/workflow/draft-checks.js.map +1 -1
  16. package/dist/workflow/index.d.ts +5 -3
  17. package/dist/workflow/index.d.ts.map +1 -1
  18. package/dist/workflow/index.js +5 -3
  19. package/dist/workflow/index.js.map +1 -1
  20. package/dist/workflow/input-parameter.d.ts +280 -0
  21. package/dist/workflow/input-parameter.d.ts.map +1 -0
  22. package/dist/workflow/input-parameter.js +38 -0
  23. package/dist/workflow/input-parameter.js.map +1 -0
  24. package/dist/workflow/layout-properties.d.ts +10 -0
  25. package/dist/workflow/layout-properties.d.ts.map +1 -0
  26. package/dist/workflow/layout-properties.js +112 -0
  27. package/dist/workflow/layout-properties.js.map +1 -0
  28. package/dist/workflow/layout.d.ts +84 -0
  29. package/dist/workflow/layout.d.ts.map +1 -0
  30. package/dist/workflow/layout.js +356 -0
  31. package/dist/workflow/layout.js.map +1 -0
  32. package/dist/workflow/lint-rules.d.ts +6 -0
  33. package/dist/workflow/lint-rules.d.ts.map +1 -1
  34. package/dist/workflow/lint-rules.js +6 -0
  35. package/dist/workflow/lint-rules.js.map +1 -1
  36. package/dist/workflow/lint.d.ts +1 -1
  37. package/dist/workflow/lint.d.ts.map +1 -1
  38. package/dist/workflow/lint.js +232 -58
  39. package/dist/workflow/lint.js.map +1 -1
  40. package/dist/workflow/lint_profiles.yml +1 -0
  41. package/dist/workflow/mermaid.d.ts.map +1 -1
  42. package/dist/workflow/mermaid.js +1 -0
  43. package/dist/workflow/mermaid.js.map +1 -1
  44. package/dist/workflow/normalized/expanded.d.ts +12 -0
  45. package/dist/workflow/normalized/expanded.d.ts.map +1 -1
  46. package/dist/workflow/normalized/expanded.js +42 -1
  47. package/dist/workflow/normalized/expanded.js.map +1 -1
  48. package/dist/workflow/normalized/index.d.ts +2 -2
  49. package/dist/workflow/normalized/index.d.ts.map +1 -1
  50. package/dist/workflow/normalized/index.js +2 -2
  51. package/dist/workflow/normalized/index.js.map +1 -1
  52. package/dist/workflow/normalized/labels.d.ts +7 -0
  53. package/dist/workflow/normalized/labels.d.ts.map +1 -1
  54. package/dist/workflow/normalized/labels.js +11 -0
  55. package/dist/workflow/normalized/labels.js.map +1 -1
  56. package/dist/workflow/normalized/native.js +5 -4
  57. package/dist/workflow/normalized/native.js.map +1 -1
  58. package/dist/workflow/normalized/toFormat2.d.ts +2 -0
  59. package/dist/workflow/normalized/toFormat2.d.ts.map +1 -1
  60. package/dist/workflow/normalized/toFormat2.js +28 -14
  61. package/dist/workflow/normalized/toFormat2.js.map +1 -1
  62. package/dist/workflow/normalized/toNative.d.ts +19 -2
  63. package/dist/workflow/normalized/toNative.d.ts.map +1 -1
  64. package/dist/workflow/normalized/toNative.js +55 -17
  65. package/dist/workflow/normalized/toNative.js.map +1 -1
  66. package/dist/workflow/raw/gxformat2-draft.d.ts +67 -9
  67. package/dist/workflow/raw/gxformat2-draft.d.ts.map +1 -1
  68. package/dist/workflow/raw/gxformat2-draft.effect.d.ts +1073 -161
  69. package/dist/workflow/raw/gxformat2-draft.effect.d.ts.map +1 -1
  70. package/dist/workflow/raw/gxformat2-draft.effect.js +184 -120
  71. package/dist/workflow/raw/gxformat2-draft.effect.js.map +1 -1
  72. package/dist/workflow/raw/gxformat2-draft.js +6 -0
  73. package/dist/workflow/raw/gxformat2-draft.js.map +1 -1
  74. package/dist/workflow/raw/gxformat2.d.ts +67 -9
  75. package/dist/workflow/raw/gxformat2.d.ts.map +1 -1
  76. package/dist/workflow/raw/gxformat2.effect.d.ts +591 -143
  77. package/dist/workflow/raw/gxformat2.effect.d.ts.map +1 -1
  78. package/dist/workflow/raw/gxformat2.effect.js +169 -105
  79. package/dist/workflow/raw/gxformat2.effect.js.map +1 -1
  80. package/dist/workflow/raw/gxformat2.js +6 -0
  81. package/dist/workflow/raw/gxformat2.js.map +1 -1
  82. package/dist/workflow/raw/native.d.ts +14 -0
  83. package/dist/workflow/raw/native.d.ts.map +1 -1
  84. package/dist/workflow/raw/native.effect.d.ts +45 -30
  85. package/dist/workflow/raw/native.effect.d.ts.map +1 -1
  86. package/dist/workflow/raw/native.effect.js +40 -26
  87. package/dist/workflow/raw/native.effect.js.map +1 -1
  88. package/dist/workflow/raw/native.js.map +1 -1
  89. package/dist/workflow/schema_rules.yml +9 -0
  90. package/dist/workflow/semantic-validators.d.ts +9 -0
  91. package/dist/workflow/semantic-validators.d.ts.map +1 -1
  92. package/dist/workflow/semantic-validators.js +42 -20
  93. package/dist/workflow/semantic-validators.js.map +1 -1
  94. package/dist/workflow/strict-checks.d.ts.map +1 -1
  95. package/dist/workflow/strict-checks.js +2 -3
  96. package/dist/workflow/strict-checks.js.map +1 -1
  97. package/dist/workflow/validators.d.ts +7 -4
  98. package/dist/workflow/validators.d.ts.map +1 -1
  99. package/dist/workflow/validators.js +20 -9
  100. package/dist/workflow/validators.js.map +1 -1
  101. package/package.json +1 -1
@@ -10,8 +10,15 @@
10
10
  * (runtime tool-state validation): these are structural-but-cross-field
11
11
  * Format2 rules.
12
12
  */
13
+ import { inputTypesDeclaring } from "./input-parameter.js";
13
14
  const COLUMN_NAME_RE = /^[\w\-_ ?]*$/;
14
- const TEXT_TYPE_VALUES = new Set(["text", "string"]);
15
+ // Galaxy offers `multiple` on neither.
16
+ const SCALAR_ONLY_TYPE_VALUES = new Set(["color", "directory_uri"]);
17
+ // Parameter fields valid only on the input types whose schema declares them.
18
+ const PARAMETER_FIELD_TYPE_VALUES = new Map(["restrictions", "suggestions", "restrictOnConnections", "validators"].map((field) => [
19
+ field,
20
+ inputTypesDeclaring(field),
21
+ ]));
15
22
  const COLLECTION_TYPE_VALUES = new Set(["collection", "data_collection", "data_collection_input"]);
16
23
  function _columnDefaultMatchesType(columnType, value) {
17
24
  if (value == null)
@@ -27,8 +34,9 @@ function _columnDefaultMatchesType(columnType, value) {
27
34
  return true;
28
35
  }
29
36
  function validateColumnDefinition(column) {
30
- if (!column || typeof column !== "object")
31
- return;
37
+ if (!column || typeof column !== "object" || Array.isArray(column)) {
38
+ throw new Error("Expected a mapping for semantic validation");
39
+ }
32
40
  const col = column;
33
41
  const name = col.name;
34
42
  if (typeof name === "string" && !COLUMN_NAME_RE.test(name)) {
@@ -41,8 +49,11 @@ function validateColumnDefinition(column) {
41
49
  }
42
50
  for (const field of ["restrictions", "suggestions"]) {
43
51
  const values = col[field];
44
- if (!Array.isArray(values))
52
+ if (values == null || (Array.isArray(values) && values.length === 0))
45
53
  continue;
54
+ if (!Array.isArray(values)) {
55
+ throw new Error(`Sample sheet column '${String(name)}' ${field} must be a list`);
56
+ }
46
57
  for (const v of values) {
47
58
  if (!_columnDefaultMatchesType(columnType, v)) {
48
59
  throw new Error(`Sample sheet column '${String(name)}' ${field} entry ${JSON.stringify(v)} does not match column type ${JSON.stringify(columnType)}`);
@@ -57,14 +68,22 @@ function _typeList(typeValue) {
57
68
  return [];
58
69
  return [String(typeValue)];
59
70
  }
60
- function validateInputParameter(inputParam) {
71
+ export function validateInputParameter(inputParam) {
61
72
  if (!inputParam || typeof inputParam !== "object")
62
73
  return;
63
74
  const data = inputParam;
64
75
  const typeValues = _typeList(data.type);
65
- const isTextOnly = typeValues.length > 0 && typeValues.every((t) => TEXT_TYPE_VALUES.has(t));
66
76
  const isCollectionOnly = typeValues.length > 0 && typeValues.every((t) => COLLECTION_TYPE_VALUES.has(t));
77
+ if (Array.isArray(data.type) && typeValues.some((t) => SCALAR_ONLY_TYPE_VALUES.has(t))) {
78
+ throw new Error(`multiple values are not supported for type=${JSON.stringify(data.type)}`);
79
+ }
80
+ if (data.collection_type != null && typeof data.collection_type !== "string") {
81
+ throw new Error("collection_type must be a string");
82
+ }
67
83
  const columnDefinitions = data.column_definitions;
84
+ if (columnDefinitions != null && !Array.isArray(columnDefinitions)) {
85
+ throw new Error("column_definitions must be a list");
86
+ }
68
87
  if (Array.isArray(columnDefinitions) && columnDefinitions.length > 0) {
69
88
  if (!isCollectionOnly && typeValues.length > 0) {
70
89
  throw new Error(`column_definitions is only valid on collection inputs, got type=${JSON.stringify(data.type)}`);
@@ -77,26 +96,29 @@ function validateInputParameter(inputParam) {
77
96
  validateColumnDefinition(column);
78
97
  }
79
98
  }
80
- for (const field of ["restrictions", "suggestions", "restrictOnConnections"]) {
81
- const value = data[field];
82
- if (value == null)
83
- continue;
84
- if (Array.isArray(value) && value.length === 0)
85
- continue;
86
- if (value === false)
87
- continue;
88
- if (typeValues.length > 0 && !isTextOnly) {
89
- throw new Error(`${field} is only valid on text/string inputs, got type=${JSON.stringify(data.type)}`);
90
- }
91
- }
92
99
  // Record-input fields validation (mirrors gxformat2 #216).
93
100
  const fields = data.fields;
94
101
  if (Array.isArray(fields) && fields.length > 0) {
102
+ if (!isCollectionOnly && typeValues.length > 0) {
103
+ throw new Error(`fields is only valid on collection inputs, got type=${JSON.stringify(data.type)}`);
104
+ }
95
105
  const collectionType = typeof data.collection_type === "string" ? data.collection_type : "";
96
106
  if (!collectionType.split(":").some((part) => part === "record")) {
97
107
  throw new Error(`fields is only valid on record-typed collection inputs, got collection_type=${JSON.stringify(data.collection_type)}`);
98
108
  }
99
109
  }
110
+ for (const [field, allowedTypes] of PARAMETER_FIELD_TYPE_VALUES) {
111
+ const value = data[field];
112
+ // restrictOnConnections=false is the schema default and harmless.
113
+ if (value == null || value === false)
114
+ continue;
115
+ if (Array.isArray(value) && value.length === 0)
116
+ continue;
117
+ if (typeValues.length > 0 && !typeValues.every((t) => allowedTypes.has(t))) {
118
+ const allowed = [...allowedTypes].sort().join("/");
119
+ throw new Error(`${field} is only valid on ${allowed} inputs, got type=${JSON.stringify(data.type)}`);
120
+ }
121
+ }
100
122
  }
101
123
  /**
102
124
  * True when a step's `state`/`tool_state` field actually carries content.
@@ -124,7 +146,7 @@ function _stateIsSpecified(value) {
124
146
  * says "Only one or the other should be specified") — they are two encodings of
125
147
  * the same tool state, so carrying both is ambiguous.
126
148
  */
127
- function validateStep(step) {
149
+ export function validateStep(step) {
128
150
  if (_stateIsSpecified(step.state) && _stateIsSpecified(step.tool_state)) {
129
151
  throw new Error("Workflow step specifies both 'state' and 'tool_state'; only one may be set");
130
152
  }
@@ -161,7 +183,7 @@ export function validateWorkflowSemantics(workflow) {
161
183
  const run = step.run;
162
184
  if (run &&
163
185
  typeof run === "object" &&
164
- run.class === "GalaxyWorkflow") {
186
+ ["GalaxyWorkflow", "GalaxyWorkflowDraft"].includes(String(run.class))) {
165
187
  validateWorkflowSemantics(run);
166
188
  }
167
189
  }
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-validators.js","sourceRoot":"","sources":["../../src/workflow/semantic-validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-validators.js","sourceRoot":"","sources":["../../src/workflow/semantic-validators.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"strict-checks.d.ts","sourceRoot":"","sources":["../../src/workflow/strict-checks.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQzD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAqBtF;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAiBvF;AAED,8DAA8D;AAC9D,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,MAAM,CAAC,EAAE,cAAc,GACtB,MAAM,EAAE,CAKV;AASD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,MAAM,CAAC,EAAE,cAAc,GACtB,MAAM,EAAE,CAcV"}
1
+ {"version":3,"file":"strict-checks.d.ts","sourceRoot":"","sources":["../../src/workflow/strict-checks.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQzD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAqBtF;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAiBvF;AAED,8DAA8D;AAC9D,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,MAAM,CAAC,EAAE,cAAc,GACtB,MAAM,EAAE,CAKV;AASD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrC,MAAM,CAAC,EAAE,cAAc,GACtB,MAAM,EAAE,CAaV"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { NativeGalaxyWorkflowSchema, GalaxyWorkflowSchema } from "./raw/index.js";
8
8
  import { detectFormat } from "./detect-format.js";
9
- import { withClass } from "./validators.js";
9
+ import { withDecodeClass } from "./validators.js";
10
10
  import * as ParseResult from "effect/ParseResult";
11
11
  import * as S from "effect/Schema";
12
12
  // ── Encoding checks ──────────────────────────────────────────────────
@@ -82,8 +82,7 @@ function formatIssues(error) {
82
82
  */
83
83
  export function checkStrictStructure(workflowDict, format) {
84
84
  const fmt = format ?? detectFormat(workflowDict);
85
- const cls = fmt === "native" ? "NativeGalaxyWorkflow" : "GalaxyWorkflow";
86
- const data = withClass(workflowDict, cls);
85
+ const data = withDecodeClass(workflowDict, fmt);
87
86
  const schema = fmt === "native" ? NativeGalaxyWorkflowSchema : GalaxyWorkflowSchema;
88
87
  const decode = S.decodeUnknownEither(schema, { onExcessProperty: "error" });
89
88
  const result = decode(data);
@@ -1 +1 @@
1
- {"version":3,"file":"strict-checks.js","sourceRoot":"","sources":["../../src/workflow/strict-checks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strict-checks.js","sourceRoot":"","sources":["../../src/workflow/strict-checks.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,12 @@
5
5
  * back the decoded value or throw on validation failure. Used by the schema-rule
6
6
  * catalog runner and declarative-operation tests.
7
7
  *
8
- * The generated Effect schemas make `class` a required literal; Python's
9
- * pydantic models default it. `withClass` injects the discriminator when
10
- * missing so pass/fail semantics match Python byte-for-byte — see the plan
11
- * note about `Format2MissingClass` being unenforceable today.
8
+ * The generated Effect schemas make `class` a required literal. Native `.ga`
9
+ * files never carry it and Format2 inline `run:` subworkflows may omit it, so
10
+ * `withDecodeClass` injects it there; a Format2 root must declare it
11
+ * (`Format2MissingClass`, gxformat2 #278).
12
12
  */
13
+ import type { WorkflowFormat } from "./detect-format.js";
13
14
  /**
14
15
  * Return `raw` with `class: cls` injected if missing, and the same injection
15
16
  * applied recursively to step subworkflows. Native steps embed subworkflows
@@ -20,6 +21,8 @@
20
21
  * subworkflows inherit `"GalaxyWorkflow"`, native inherit `"NativeGalaxyWorkflow"`.
21
22
  */
22
23
  export declare function withClass(raw: unknown, cls: string): unknown;
24
+ /** Inject `class` where decoding needs it: everywhere for native, inline runs only for Format2. */
25
+ export declare function withDecodeClass(raw: unknown, format: WorkflowFormat): unknown;
23
26
  export declare function validateFormat2(wf: unknown): unknown;
24
27
  export declare function validateFormat2Strict(wf: unknown): unknown;
25
28
  export declare function validateNative(wf: unknown): unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/workflow/validators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAkB5D;AAgBD,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAMpD;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAM1D;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAInD;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAIzD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,GACd,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAK1B"}
1
+ {"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../../src/workflow/validators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKzD;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAI5D;AAED,mGAAmG;AACnG,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAI7E;AAoCD,wBAAgB,eAAe,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAMpD;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAM1D;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAInD;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAIzD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,GACd,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAK1B"}
@@ -5,10 +5,10 @@
5
5
  * back the decoded value or throw on validation failure. Used by the schema-rule
6
6
  * catalog runner and declarative-operation tests.
7
7
  *
8
- * The generated Effect schemas make `class` a required literal; Python's
9
- * pydantic models default it. `withClass` injects the discriminator when
10
- * missing so pass/fail semantics match Python byte-for-byte — see the plan
11
- * note about `Format2MissingClass` being unenforceable today.
8
+ * The generated Effect schemas make `class` a required literal. Native `.ga`
9
+ * files never carry it and Format2 inline `run:` subworkflows may omit it, so
10
+ * `withDecodeClass` injects it there; a Format2 root must declare it
11
+ * (`Format2MissingClass`, gxformat2 #278).
12
12
  */
13
13
  import { Schema } from "effect";
14
14
  import { GalaxyWorkflowSchema } from "./raw/gxformat2.effect.js";
@@ -27,7 +27,18 @@ export function withClass(raw, cls) {
27
27
  if (!raw || typeof raw !== "object" || Array.isArray(raw))
28
28
  return raw;
29
29
  const obj = raw;
30
- const result = "class" in obj ? { ...obj } : { ...obj, class: cls };
30
+ return withStepSubworkflowClass("class" in obj ? obj : { ...obj, class: cls }, cls);
31
+ }
32
+ /** Inject `class` where decoding needs it: everywhere for native, inline runs only for Format2. */
33
+ export function withDecodeClass(raw, format) {
34
+ if (format === "native")
35
+ return withClass(raw, "NativeGalaxyWorkflow");
36
+ if (!raw || typeof raw !== "object" || Array.isArray(raw))
37
+ return raw;
38
+ return withStepSubworkflowClass(raw, "GalaxyWorkflow");
39
+ }
40
+ function withStepSubworkflowClass(obj, cls) {
41
+ const result = { ...obj };
31
42
  const steps = result.steps;
32
43
  if (!steps || typeof steps !== "object")
33
44
  return result;
@@ -58,20 +69,20 @@ function injectStepSubworkflow(step, cls) {
58
69
  return s;
59
70
  }
60
71
  export function validateFormat2(wf) {
61
- const decoded = Schema.decodeUnknownSync(GalaxyWorkflowSchema, { onExcessProperty: "ignore" })(withClass(wf, "GalaxyWorkflow"));
72
+ const decoded = Schema.decodeUnknownSync(GalaxyWorkflowSchema, { onExcessProperty: "ignore" })(withDecodeClass(wf, "format2"));
62
73
  validateWorkflowSemantics(wf);
63
74
  return decoded;
64
75
  }
65
76
  export function validateFormat2Strict(wf) {
66
- const decoded = Schema.decodeUnknownSync(GalaxyWorkflowSchema, { onExcessProperty: "error" })(withClass(wf, "GalaxyWorkflow"));
77
+ const decoded = Schema.decodeUnknownSync(GalaxyWorkflowSchema, { onExcessProperty: "error" })(withDecodeClass(wf, "format2"));
67
78
  validateWorkflowSemantics(wf);
68
79
  return decoded;
69
80
  }
70
81
  export function validateNative(wf) {
71
- return Schema.decodeUnknownSync(NativeGalaxyWorkflowSchema, { onExcessProperty: "ignore" })(withClass(wf, "NativeGalaxyWorkflow"));
82
+ return Schema.decodeUnknownSync(NativeGalaxyWorkflowSchema, { onExcessProperty: "ignore" })(withDecodeClass(wf, "native"));
72
83
  }
73
84
  export function validateNativeStrict(wf) {
74
- return Schema.decodeUnknownSync(NativeGalaxyWorkflowSchema, { onExcessProperty: "error" })(withClass(wf, "NativeGalaxyWorkflow"));
85
+ return Schema.decodeUnknownSync(NativeGalaxyWorkflowSchema, { onExcessProperty: "error" })(withDecodeClass(wf, "native"));
75
86
  }
76
87
  /**
77
88
  * Pick the validator matching a fixture filename's format.
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/workflow/validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../src/workflow/validators.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galaxy-tool-util/schema",
3
- "version": "1.13.1",
3
+ "version": "1.15.0",
4
4
  "description": "Effect Schema parameter types and validators for Galaxy tools",
5
5
  "type": "module",
6
6
  "exports": {