Commit 2ead723
feat(studio): use the searchable icon picker for every icon field (#1832)
Icon fields previously rendered as a free-text 'type a Lucide name' input
unless a spec form pinned widget:'icon' — admins had to know exact icon names.
- SchemaForm: auto-detect icon fields by name convention (a string prop named
`icon` or `*Icon`, no enum) -> the existing 'icon' picker, mirroring the
field-ref convention. Every metadata type's icon field now gets the searchable
Lucide picker in the generic form without per-form wiring.
- widgets: export IconPickerWidget so curated inspectors can reuse it.
- ActionDefaultInspector: render the Action icon with the picker instead of a
text input.
Verified live: App icon (generic form) and Action icon (curated inspector) both
render the picker; the searchable grid opens correctly (not clipped) inside the
inspector panel.
Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>1 parent e914e8c commit 2ead723
3 files changed
Lines changed: 26 additions & 2 deletions
File tree
- packages/app-shell/src/views/metadata-admin
- inspectors
Lines changed: 20 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
279 | 279 | | |
280 | 280 | | |
281 | 281 | | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
282 | 298 | | |
283 | 299 | | |
284 | 300 | | |
| |||
739 | 755 | | |
740 | 756 | | |
741 | 757 | | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
| 761 | + | |
742 | 762 | | |
743 | 763 | | |
744 | 764 | | |
| |||
Lines changed: 5 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| 51 | + | |
51 | 52 | | |
52 | 53 | | |
53 | 54 | | |
| |||
253 | 254 | | |
254 | 255 | | |
255 | 256 | | |
256 | | - | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
257 | 261 | | |
258 | 262 | | |
259 | 263 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1036 | 1036 | | |
1037 | 1037 | | |
1038 | 1038 | | |
1039 | | - | |
| 1039 | + | |
1040 | 1040 | | |
1041 | 1041 | | |
1042 | 1042 | | |
| |||
0 commit comments