M2M relationship form widgets
Auto-generated from the source archive. Do not edit by hand — rerun
catalyst-changelog-syncinstead.
What changed
Section titled “What changed”- A many-to-many relationship declared with a form widget (e.g.
multiple-select) now generates a workingFormControlnamed<singular>Ids: string[]. Previously the control was omitted and Angular threwCannot find control with name: <singular>Idsat runtime. - Edit-mode forms project the denormalized read shape (
<plural>: T[]) into the<singular>Idscontrol on reset, and the detail/list configs emit the matchingincludeso the related data loads.
Why it matters
Section titled “Why it matters”The many-to-many-via-form pathway is usable end to end: declare a widget on an m2m property in YAML and the generated form just works — no post-generation hand-editing, and no need to disable the widget. The applicationIds: [ID] write contract over the GraphQL boundary is preserved; the read/write shape translation lives in the form, not in the aggregate or repository.