mirror of
https://github.com/cosscom/coss.git
synced 2026-09-14 20:06:50 +08:00
21 lines
2.4 KiB
JSON
21 lines
2.4 KiB
JSON
{
|
|
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
|
|
"name": "group-select",
|
|
"type": "registry:example",
|
|
"description": "Group with select and number field",
|
|
"registryDependencies": [
|
|
"@coss/group",
|
|
"@coss/select",
|
|
"@coss/number-field",
|
|
"@coss/button"
|
|
],
|
|
"files": [
|
|
{
|
|
"path": "registry/default/examples/group-select.tsx",
|
|
"content": "\"use client\"\n\nimport { ArrowRightIcon } from \"lucide-react\"\n\nimport { Button } from \"@/registry/default/ui/button\"\nimport { Group, GroupSeparator } from \"@/registry/default/ui/group\"\nimport {\n NumberField,\n NumberFieldGroup,\n NumberFieldInput,\n} from \"@/registry/default/ui/number-field\"\nimport {\n Select,\n SelectItem,\n SelectPopup,\n SelectTrigger,\n SelectValue,\n} from \"@/registry/default/ui/select\"\n\ninterface Currency {\n value: string\n label: string\n}\n\nconst currencies: Currency[] = [\n {\n value: \"$\",\n label: \"US Dollar\",\n },\n {\n value: \"€\",\n label: \"Euro\",\n },\n {\n value: \"£\",\n label: \"British Pound\",\n },\n]\n\nexport default function GroupSelect() {\n return (\n <Group aria-label=\"Payment amount\">\n <Group aria-label=\"Amount input\">\n <Select\n defaultValue={currencies[0]}\n itemToStringValue={(currency) => currency.value}\n >\n <SelectTrigger className=\"min-w-none w-fit\">\n <SelectValue>{(currency: Currency) => currency.value}</SelectValue>\n </SelectTrigger>\n <SelectPopup className=\"min-w-48\">\n {currencies.map((curr) => (\n <SelectItem key={curr.value} value={curr}>\n {curr.value}{\" \"}\n <span className=\"text-muted-foreground\">{curr.label}</span>\n </SelectItem>\n ))}\n </SelectPopup>\n </Select>\n <GroupSeparator />\n <NumberField\n defaultValue={10}\n aria-label=\"Enter the amount\"\n render={<NumberFieldGroup />}\n >\n <NumberFieldInput className=\"text-left\" />\n </NumberField>\n </Group>\n <Group aria-label=\"Submit\">\n <Button aria-label=\"Send\" size=\"icon\" variant=\"outline\">\n <ArrowRightIcon />\n </Button>\n </Group>\n </Group>\n )\n}\n",
|
|
"type": "registry:example"
|
|
}
|
|
],
|
|
"categories": ["group", "select", "number field", "button"]
|
|
}
|