Commit c616a3b
authored
fix: Inherit form layout from parent and preview layout changes in storybook (#160)
* Inherit form layout from parent and preview layout changes in storybook
* Revert formatting change
* fix: prettier formatting in VerticalLayout
Made-with: Cursor
* fix: inherit parent form layout via FormContext
Keep the <Form> wrapper (required for Form.List in array controls)
but read the parent form's layout from antd's FormContext and
forward it, so consumers' <Form layout="vertical"> propagates
through layout renderers.
Made-with: Cursor
* fix: inherit parent form layout in HorizontalLayout
Apply the same FormContext layout inheritance pattern used in
VerticalLayout, so both layout renderers consistently forward
the parent form's layout.
Made-with: Cursor
* fix: detect parent form layout via DOM instead of FormContext import
The previous approach imported FormContext from antd/es/form/context to
read the parent form's layout. This broke across CJS/ESM module boundaries
in consuming apps due to context identity mismatch.
Replace with a DOM-based approach: a hidden probe element detects the
parent <form> element's CSS class (ant-form-vertical, ant-form-inline)
and passes the detected layout to the intermediate Form wrapper.
Made-with: Cursor
* refactor: simplify useParentFormLayout hook and improve docs
Rename probeRef → ref, flatten guard clauses, and expand the JSDoc to
explain *why* we use DOM-based detection (CJS/ESM module identity
mismatch with antd's internal FormContext).
Made-with: Cursor
* fix: make Storybook layout arg reactive and reorder it below uiSchema
- Remove empty dependency array from useParentFormLayout so it re-reads
the parent form's CSS class after every render, picking up layout
changes from Storybook args.
- Add else branch to reset layout to undefined when switching back to
the default "horizontal".
- Move layout prop above uiSchemaRegistryEntries in the Props type so
it appears just below uiSchema in Storybook controls.
Made-with: Cursor
* docs: note Form.List coupling in useParentFormLayout JSDoc
Made-with: Cursor
* docs: enumerate reasons in useParentFormLayout JSDoc
Made-with: Cursor
* docs: note FormContext is not public API
Made-with: Cursor
* fix: position layout arg after uiSchema in Storybook controls
Add layout: {} to each story meta's argTypes to control ordering,
placing it right after uiSchema (or jsonSchema when uiSchema is absent).
Made-with: Cursor
* fix: ensure layout arg appears after uiSchema in all Storybook stories
Add uiSchema to meta argTypes in stories that were missing it so
layout consistently appears directly below uiSchema in the controls.
Made-with: Cursor
* fix: hide noise props in minimal story argTypes so layout appears after uiSchema
Add rendererRegistryEntries, uiSchemaRegistryEntries, data, and
onChange disable entries to stories that were missing them. Without
these, Storybook renders the component props in their type order,
pushing layout below data and rendererRegistryEntries.
Made-with: Cursor
* fix: align horizontal layout items to bottom so checkboxes line up with inputs
Change Row align from "middle" to "bottom" so controls without a top
label (e.g. checkboxes) align with the input portion of adjacent
controls when vertical labels are used.
Made-with: Cursor1 parent 2d4d17c commit c616a3b
21 files changed
Lines changed: 146 additions & 25 deletions
File tree
- .storybook
- src
- common
- hooks
- layouts
- stories
- controls
- layouts
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
28 | 31 | | |
29 | 32 | | |
30 | 33 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
12 | 18 | | |
13 | 19 | | |
14 | 20 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
20 | | - | |
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| |||
| 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 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | 9 | | |
9 | 10 | | |
| |||
26 | 27 | | |
27 | 28 | | |
28 | 29 | | |
| 30 | + | |
| 31 | + | |
29 | 32 | | |
30 | 33 | | |
31 | 34 | | |
| |||
36 | 39 | | |
37 | 40 | | |
38 | 41 | | |
39 | | - | |
| 42 | + | |
40 | 43 | | |
41 | 44 | | |
42 | 45 | | |
| |||
49 | 52 | | |
50 | 53 | | |
51 | 54 | | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
57 | 68 | | |
58 | 69 | | |
59 | 70 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| 6 | + | |
6 | 7 | | |
7 | 8 | | |
8 | 9 | | |
| |||
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| 28 | + | |
27 | 29 | | |
28 | 30 | | |
29 | 31 | | |
30 | 32 | | |
31 | 33 | | |
32 | 34 | | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
41 | 47 | | |
42 | 48 | | |
43 | 49 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
| 45 | + | |
44 | 46 | | |
45 | 47 | | |
46 | 48 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
| 45 | + | |
44 | 46 | | |
45 | 47 | | |
46 | 48 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
21 | 29 | | |
22 | 30 | | |
23 | 31 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
23 | | - | |
24 | | - | |
25 | | - | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
26 | 30 | | |
27 | 31 | | |
28 | 32 | | |
| |||
0 commit comments