Skip to content

Commit 7a103d4

Browse files
xuyushun441-sysos-zhuangclaude
authored
ui(page.form): icon field uses the searchable icon-picker widget (#1843)
The Basics → `icon` field now carries `widget: 'icon'`, so the metadata-admin form renders a searchable Lucide icon picker (preview + name) instead of a raw text input where the author had to type an exact Lucide name. Mirrors the existing `view-ref` / `filter-mode` widget hints. The picker ships in @object-ui/app-shell and the same hint is reusable for app/object icon fields. Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent ddeb934 commit 7a103d4

2 files changed

Lines changed: 12 additions & 1 deletion

File tree

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
"@objectstack/spec": patch
3+
---
4+
5+
ui(page.form): icon field uses the searchable icon-picker widget
6+
7+
The Basics → `icon` field now carries `widget: 'icon'`, so the metadata-admin
8+
form renders a searchable Lucide icon picker (preview + name) instead of a raw
9+
text input where authors had to type an exact icon name. Mirrors the existing
10+
`view-ref` / `filter-mode` widget hints; the picker ships in
11+
`@object-ui/app-shell` and is reusable for app/object icon fields.

packages/spec/src/ui/page.form.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const pageForm = defineForm({
1818
fields: [
1919
{ field: 'name', required: true, colSpan: 1, helpText: 'Unique identifier (snake_case)' },
2020
{ field: 'label', required: true, colSpan: 1, helpText: 'Page title shown to users' },
21-
{ field: 'icon', colSpan: 1, helpText: 'Icon for navigation menu' },
21+
{ field: 'icon', widget: 'icon', colSpan: 1, helpText: 'Icon for navigation menu' },
2222
{
2323
field: 'type',
2424
colSpan: 1,

0 commit comments

Comments
 (0)