@@ -30,27 +30,82 @@ npm install @object-ui/plugin-grid
3030 type: " flex" ,
3131 className: " gap-2" ,
3232 children: [
33- { type: " button" , label: " Filter" , variant: " outline" , size: " sm" , icon: " Filter " },
34- { type: " button" , label: " Export" , variant: " outline" , size: " sm" , icon: " Download " }
33+ { type: " button" , label: " Filter" , variant: " outline" , size: " sm" , icon: " filter " },
34+ { type: " button" , label: " Export" , variant: " outline" , size: " sm" , icon: " download " }
3535 ]
3636 }
3737 ]
3838 },
3939 {
40- type: " table" ,
41- columns: [
42- { header: " Product" , accessorKey: " product" },
43- { header: " SKU" , accessorKey: " sku" },
44- { header: " Price" , accessorKey: " price" },
45- { header: " Stock" , accessorKey: " stock" },
46- { header: " Status" , accessorKey: " status" }
47- ],
48- data: [
49- { product: " Wireless Mouse" , sku: " WM-001" , price: " $29.99" , stock: " 150" , status: " In Stock" },
50- { product: " Mechanical Keyboard" , sku: " MK-002" , price: " $89.99" , stock: " 42" , status: " Low Stock" },
51- { product: " USB-C Hub" , sku: " UH-003" , price: " $45.00" , stock: " 200" , status: " In Stock" },
52- { product: " Monitor Stand" , sku: " MS-004" , price: " $35.00" , stock: " 0" , status: " Out of Stock" },
53- { product: " Webcam HD" , sku: " WC-005" , price: " $65.00" , stock: " 88" , status: " In Stock" }
40+ type: " stack" ,
41+ spacing: 0 ,
42+ children: [
43+ {
44+ type: " flex" ,
45+ className: " items-center gap-4 px-4 py-2 bg-muted text-xs font-medium text-muted-foreground border-b" ,
46+ children: [
47+ { type: " text" , content: " Product" , className: " w-40" },
48+ { type: " text" , content: " SKU" , className: " w-24" },
49+ { type: " text" , content: " Price" , className: " w-20" },
50+ { type: " text" , content: " Stock" , className: " w-16" },
51+ { type: " text" , content: " Status" , className: " w-24" }
52+ ]
53+ },
54+ {
55+ type: " flex" ,
56+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
57+ children: [
58+ { type: " text" , content: " Wireless Mouse" , className: " w-40 font-medium" },
59+ { type: " text" , content: " WM-001" , className: " w-24 text-muted-foreground" },
60+ { type: " text" , content: " $29.99" , className: " w-20" },
61+ { type: " text" , content: " 150" , className: " w-16" },
62+ { type: " badge" , label: " In Stock" , variant: " default" }
63+ ]
64+ },
65+ {
66+ type: " flex" ,
67+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
68+ children: [
69+ { type: " text" , content: " Mechanical Keyboard" , className: " w-40 font-medium" },
70+ { type: " text" , content: " MK-002" , className: " w-24 text-muted-foreground" },
71+ { type: " text" , content: " $89.99" , className: " w-20" },
72+ { type: " text" , content: " 42" , className: " w-16" },
73+ { type: " badge" , label: " Low Stock" , variant: " outline" }
74+ ]
75+ },
76+ {
77+ type: " flex" ,
78+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
79+ children: [
80+ { type: " text" , content: " USB-C Hub" , className: " w-40 font-medium" },
81+ { type: " text" , content: " UH-003" , className: " w-24 text-muted-foreground" },
82+ { type: " text" , content: " $45.00" , className: " w-20" },
83+ { type: " text" , content: " 200" , className: " w-16" },
84+ { type: " badge" , label: " In Stock" , variant: " default" }
85+ ]
86+ },
87+ {
88+ type: " flex" ,
89+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
90+ children: [
91+ { type: " text" , content: " Monitor Stand" , className: " w-40 font-medium" },
92+ { type: " text" , content: " MS-004" , className: " w-24 text-muted-foreground" },
93+ { type: " text" , content: " $35.00" , className: " w-20" },
94+ { type: " text" , content: " 0" , className: " w-16" },
95+ { type: " badge" , label: " Out of Stock" , variant: " destructive" }
96+ ]
97+ },
98+ {
99+ type: " flex" ,
100+ className: " items-center gap-4 px-4 py-3 text-sm" ,
101+ children: [
102+ { type: " text" , content: " Webcam HD" , className: " w-40 font-medium" },
103+ { type: " text" , content: " WC-005" , className: " w-24 text-muted-foreground" },
104+ { type: " text" , content: " $65.00" , className: " w-20" },
105+ { type: " text" , content: " 88" , className: " w-16" },
106+ { type: " badge" , label: " In Stock" , variant: " default" }
107+ ]
108+ }
54109 ]
55110 }
56111 ]
@@ -68,23 +123,68 @@ npm install @object-ui/plugin-grid
68123 className: " items-center justify-between mb-4" ,
69124 children: [
70125 { type: " text" , content: " Team Members" , className: " text-lg font-semibold" },
71- { type: " button" , label: " Invite Member" , variant: " default" , size: " sm" , icon: " UserPlus " }
126+ { type: " button" , label: " Invite Member" , variant: " default" , size: " sm" , icon: " user-plus " }
72127 ]
73128 },
74129 {
75- type: " table" ,
76- columns: [
77- { header: " Name" , accessorKey: " name" },
78- { header: " Role" , accessorKey: " role" },
79- { header: " Department" , accessorKey: " department" },
80- { header: " Status" , accessorKey: " status" },
81- { header: " Last Active" , accessorKey: " lastActive" }
82- ],
83- data: [
84- { name: " Sarah Chen" , role: " Lead Engineer" , department: " Engineering" , status: " Online" , lastActive: " Just now" },
85- { name: " Marcus Rodriguez" , role: " Designer" , department: " Design" , status: " Online" , lastActive: " 2m ago" },
86- { name: " Emily Watson" , role: " PM" , department: " Product" , status: " Away" , lastActive: " 1h ago" },
87- { name: " James Kim" , role: " DevOps" , department: " Engineering" , status: " Offline" , lastActive: " 3h ago" }
130+ type: " stack" ,
131+ spacing: 0 ,
132+ children: [
133+ {
134+ type: " flex" ,
135+ className: " items-center gap-4 px-4 py-2 bg-muted text-xs font-medium text-muted-foreground border-b" ,
136+ children: [
137+ { type: " text" , content: " Name" , className: " w-40" },
138+ { type: " text" , content: " Role" , className: " w-32" },
139+ { type: " text" , content: " Department" , className: " w-28" },
140+ { type: " text" , content: " Status" , className: " w-20" },
141+ { type: " text" , content: " Last Active" , className: " w-24" }
142+ ]
143+ },
144+ {
145+ type: " flex" ,
146+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
147+ children: [
148+ { type: " text" , content: " Sarah Chen" , className: " w-40 font-medium" },
149+ { type: " text" , content: " Lead Engineer" , className: " w-32" },
150+ { type: " text" , content: " Engineering" , className: " w-28 text-muted-foreground" },
151+ { type: " badge" , label: " Online" , variant: " default" , className: " w-20" },
152+ { type: " text" , content: " Just now" , className: " w-24 text-xs text-muted-foreground" }
153+ ]
154+ },
155+ {
156+ type: " flex" ,
157+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
158+ children: [
159+ { type: " text" , content: " Marcus Rodriguez" , className: " w-40 font-medium" },
160+ { type: " text" , content: " Designer" , className: " w-32" },
161+ { type: " text" , content: " Design" , className: " w-28 text-muted-foreground" },
162+ { type: " badge" , label: " Online" , variant: " default" , className: " w-20" },
163+ { type: " text" , content: " 2m ago" , className: " w-24 text-xs text-muted-foreground" }
164+ ]
165+ },
166+ {
167+ type: " flex" ,
168+ className: " items-center gap-4 px-4 py-3 border-b text-sm" ,
169+ children: [
170+ { type: " text" , content: " Emily Watson" , className: " w-40 font-medium" },
171+ { type: " text" , content: " PM" , className: " w-32" },
172+ { type: " text" , content: " Product" , className: " w-28 text-muted-foreground" },
173+ { type: " badge" , label: " Away" , variant: " secondary" , className: " w-20" },
174+ { type: " text" , content: " 1h ago" , className: " w-24 text-xs text-muted-foreground" }
175+ ]
176+ },
177+ {
178+ type: " flex" ,
179+ className: " items-center gap-4 px-4 py-3 text-sm" ,
180+ children: [
181+ { type: " text" , content: " James Kim" , className: " w-40 font-medium" },
182+ { type: " text" , content: " DevOps" , className: " w-32" },
183+ { type: " text" , content: " Engineering" , className: " w-28 text-muted-foreground" },
184+ { type: " badge" , label: " Offline" , variant: " outline" , className: " w-20" },
185+ { type: " text" , content: " 3h ago" , className: " w-24 text-xs text-muted-foreground" }
186+ ]
187+ }
88188 ]
89189 }
90190 ]
0 commit comments