Commit f8c1b69
Second increment of #3304 (descriptor-side counterpart to objectui #2670 Phase 3).
The `map` node shipped no `configSchema`, so the flow designer had no server-driven
form for it. Its descriptor now carries one that mirrors objectui's hardcoded `map`
field group field-for-field:
• collection → xExpression: 'template' (an interpolate() `{items}` template,
same marker + rationale as loop.collection)
• flowName → xRef { kind: 'flow' } (typed reference picker)
• itemObject → xRef { kind: 'object' }
• iteratorVariable / outputVariable → plain text
`map` is the one previously-schemaless flow node whose fields are all scalars and
typed references — no `keyValue` map, no virtual columns — so it maps cleanly
through objectui's jsonSchemaToFlowFields with zero regression, making the online
and offline forms agree.
The other schemaless nodes (assignment, the CRUD quartet, script, subflow, screen,
wait, decision) rely on editor kinds the schema→fields adapter does not yet
reproduce — `keyValue` maps, the decision virtual `target` column, `wait`'s
top-level `waitEventConfig` block. Shipping their configSchemas before the adapter
learns those would make objectui prefer the server schema and DROP those editors (a
live regression), so they are deferred to #3304 pending an objectui adapter
extension.
Verified: new descriptor test (map configSchema carries the collection template
marker + flowName/itemObject references); tsc clean; full @objectstack/service-
automation suite green (331 tests) — the added `required` breaks nothing. Additive;
no runtime behavior change.
Claude-Session: https://claude.ai/code/session_01VuvxWgoadqryqBcjs7TpVi
Co-authored-by: Claude <noreply@anthropic.com>
1 parent 3e6622b commit f8c1b69
3 files changed
Lines changed: 65 additions & 0 deletions
File tree
- .changeset
- packages/services/service-automation/src/builtin
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
Lines changed: 24 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
164 | 164 | | |
165 | 165 | | |
166 | 166 | | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
Lines changed: 19 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
52 | 71 | | |
53 | 72 | | |
54 | 73 | | |
| |||
0 commit comments