Added support for conditional components and associated unit tests#929
Added support for conditional components and associated unit tests#929stevespringett wants to merge 1 commit into
Conversation
Signed-off-by: Steve Springett <steve@springett.us>
|
RFC notice sent on May 12, 2026
Public RFC period ends June 09, 2026 |
| "description": "A wrapper that expresses a conditional or alternate relationship between two or more components. Use to model approved alternates, multi-sourced parts, build variants, and required component groups in physical device bills of materials.", | ||
| "required": [ | ||
| "type", | ||
| "name", |
There was a problem hiding this comment.
is it really needed to havename a required field?
we could make it an optional one in a non-breaking change in the future.
| "type": "component-choice", | ||
| "name": "Transistor Choice", | ||
| "operator": "XOR", | ||
| "supplier": { "name": "Should not be allowed on a choice wrapper" }, |
There was a problem hiding this comment.
| "supplier": { "name": "Should not be allowed on a choice wrapper" }, | |
| "supplier": { "name": "`supplier` is not allowed on a choice wrapper" }, |
| "components": [ | ||
| { | ||
| "type": "component-choice", | ||
| "name": "Transistor Choice", |
There was a problem hiding this comment.
please add a description, so dont need to guess why this data is invalid.
| "name": "Transistor Choice", | |
| "name": "Transistor Choice", | |
| "description": "unexpected property `supplier`", |
| "components": [ | ||
| { | ||
| "type": "component-choice", | ||
| "name": "Transistor Choice", |
There was a problem hiding this comment.
please add a description, so dont need to guess why this data is invalid.
| "name": "Transistor Choice", | |
| "name": "Transistor Choice", | |
| "description": "unexpected value for `operator`", |
| }, | ||
| "components": [ | ||
| { | ||
| "type": "component-choice", |
There was a problem hiding this comment.
please add a description, so dont need to guess why this data is invalid.
| "type": "component-choice", | |
| "type": "component-choice", | |
| "description": "missing property `name`", |
| "components": [ | ||
| { | ||
| "type": "component-choice", | ||
| "name": "Transistor Choice", |
There was a problem hiding this comment.
please add a description, so dont need to guess why this data is invalid.
| "name": "Transistor Choice", | |
| "name": "Transistor Choice", | |
| "description": "missing property `operator`", |
| "components": [ | ||
| { | ||
| "type": "component-choice", | ||
| "name": "JP2 Debug Header", |
There was a problem hiding this comment.
please add a description, so dont need to guess why this data is invalid.
| "name": "JP2 Debug Header", | |
| "name": "JP2 Debug Header", | |
| "description": "invalidvalue for `operator`", |
| "components": [ | ||
| { | ||
| "type": "component-choice", | ||
| "name": "Transistor Choice", |
There was a problem hiding this comment.
please add a description, so dont need to guess why this data is invalid.
| "name": "Transistor Choice", | |
| "name": "Transistor Choice", | |
| "description": "list `components` but have atleast two items", |
Uh oh!
There was an error while loading. Please reload this page.