@galaxy-tool-util/schema 1.5.0 → 1.7.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 (35) hide show
  1. package/dist/index.d.ts +10 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +8 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/test-format/tests.schema.generated.d.ts +82 -26
  6. package/dist/test-format/tests.schema.generated.d.ts.map +1 -1
  7. package/dist/test-format/tests.schema.generated.js +77 -37
  8. package/dist/test-format/tests.schema.generated.js.map +1 -1
  9. package/dist/workflow/draft-checks.d.ts +1 -1
  10. package/dist/workflow/draft-checks.js +1 -1
  11. package/dist/workflow/index.d.ts +4 -3
  12. package/dist/workflow/index.d.ts.map +1 -1
  13. package/dist/workflow/index.js +4 -2
  14. package/dist/workflow/index.js.map +1 -1
  15. package/dist/workflow/json-schemas.d.ts +10 -0
  16. package/dist/workflow/json-schemas.d.ts.map +1 -0
  17. package/dist/workflow/json-schemas.js +39 -0
  18. package/dist/workflow/json-schemas.js.map +1 -0
  19. package/dist/workflow/normalized/toFormat2.js +10 -4
  20. package/dist/workflow/normalized/toFormat2.js.map +1 -1
  21. package/dist/workflow/report-models.d.ts +45 -1
  22. package/dist/workflow/report-models.d.ts.map +1 -1
  23. package/dist/workflow/report-models.js +21 -4
  24. package/dist/workflow/report-models.js.map +1 -1
  25. package/dist/workflow/semantic-validators.d.ts.map +1 -1
  26. package/dist/workflow/semantic-validators.js +32 -0
  27. package/dist/workflow/semantic-validators.js.map +1 -1
  28. package/dist/workflow/state-merge.d.ts +22 -1
  29. package/dist/workflow/state-merge.d.ts.map +1 -1
  30. package/dist/workflow/state-merge.js +28 -4
  31. package/dist/workflow/state-merge.js.map +1 -1
  32. package/dist/workflow/stateful-convert.d.ts.map +1 -1
  33. package/dist/workflow/stateful-convert.js +18 -8
  34. package/dist/workflow/stateful-convert.js.map +1 -1
  35. package/package.json +1 -1
@@ -69,6 +69,10 @@ export function reverseScalarValue(toolInput, value) {
69
69
  }
70
70
  /** Data parameter types — always go to `in` block, never to state. */
71
71
  const DATA_PARAM_TYPES = new Set(["gx_data", "gx_data_collection"]);
72
+ /** Read `optional` defensively — CWL parameter models lack the field. */
73
+ function isOptionalParam(toolInput) {
74
+ return toolInput.optional === true;
75
+ }
72
76
  /**
73
77
  * Convert a native step's tool_state to format2 state + in block.
74
78
  *
@@ -87,13 +91,18 @@ export function convertStateToFormat2(nativeStep, toolInputs) {
87
91
  const inBlock = {};
88
92
  const leafCallback = (toolInput, value, statePath) => {
89
93
  const paramType = toolInput.parameter_type;
90
- // Data parameters: always to `in` block
94
+ // Data parameters: never to state. Connection wins over any marker.
91
95
  if (DATA_PARAM_TYPES.has(paramType)) {
92
- if (isConnectedValue(value) || connectedPaths.has(statePath)) {
96
+ if (connectedPaths.has(statePath) || isConnectedValue(value)) {
93
97
  // Connected data param — recorded via input_connections, handled by structural conversion
98
+ return SKIP_VALUE;
94
99
  }
95
100
  if (isRuntimeValue(value)) {
96
- inBlock[statePath] = "runtime_value";
101
+ // Disconnected runtime: keep placeholder only when required; omit when optional.
102
+ if (!isOptionalParam(toolInput)) {
103
+ inBlock[statePath] = "runtime_value";
104
+ }
105
+ return SKIP_VALUE;
97
106
  }
98
107
  return SKIP_VALUE;
99
108
  }
@@ -115,14 +124,15 @@ export function convertStateToFormat2(nativeStep, toolInputs) {
115
124
  }
116
125
  return value;
117
126
  }
118
- // ConnectedValue → record in `in` block, skip from state
119
- if (isConnectedValue(value)) {
120
- // Connection source handled by structural conversion's input_connections
127
+ // Connection wins over any marker — source handled by structural conversion.
128
+ if (connectedPaths.has(statePath) || isConnectedValue(value)) {
121
129
  return SKIP_VALUE;
122
130
  }
123
- // RuntimeValue → record in `in` block, skip from state
131
+ // Disconnected runtime: keep placeholder only when required; omit when optional.
124
132
  if (isRuntimeValue(value)) {
125
- inBlock[statePath] = "runtime_value";
133
+ if (!isOptionalParam(toolInput)) {
134
+ inBlock[statePath] = "runtime_value";
135
+ }
126
136
  return SKIP_VALUE;
127
137
  }
128
138
  // Null / "null" values → skip
@@ -1 +1 @@
1
- {"version":3,"file":"stateful-convert.js","sourceRoot":"","sources":["../../src/workflow/stateful-convert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateful-convert.js","sourceRoot":"","sources":["../../src/workflow/stateful-convert.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.5.0",
3
+ "version": "1.7.0",
4
4
  "description": "Effect Schema parameter types and validators for Galaxy tools",
5
5
  "type": "module",
6
6
  "exports": {