sigma-ui 0.1.0 → 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +45 -0
- package/__generated/registry-schemes/colors/amber.json +99 -0
- package/__generated/registry-schemes/colors/blue.json +99 -0
- package/__generated/registry-schemes/colors/cyan.json +99 -0
- package/__generated/registry-schemes/colors/emerald.json +99 -0
- package/__generated/registry-schemes/colors/fuchsia.json +99 -0
- package/__generated/registry-schemes/colors/gray.json +99 -0
- package/__generated/registry-schemes/colors/green.json +99 -0
- package/__generated/registry-schemes/colors/index.json +1999 -0
- package/__generated/registry-schemes/colors/indigo.json +99 -0
- package/__generated/registry-schemes/colors/lime.json +99 -0
- package/__generated/registry-schemes/colors/neutral.json +99 -0
- package/__generated/registry-schemes/colors/orange.json +99 -0
- package/__generated/registry-schemes/colors/pink.json +99 -0
- package/__generated/registry-schemes/colors/purple.json +99 -0
- package/__generated/registry-schemes/colors/red.json +99 -0
- package/__generated/registry-schemes/colors/rose.json +99 -0
- package/__generated/registry-schemes/colors/sky.json +99 -0
- package/__generated/registry-schemes/colors/slate.json +99 -0
- package/__generated/registry-schemes/colors/stone.json +99 -0
- package/__generated/registry-schemes/colors/teal.json +99 -0
- package/__generated/registry-schemes/colors/violet.json +99 -0
- package/__generated/registry-schemes/colors/yellow.json +99 -0
- package/__generated/registry-schemes/colors/zinc.json +99 -0
- package/__generated/registry-schemes/index.json +787 -0
- package/__generated/registry-schemes/style-system/css/accordion.json +28 -0
- package/__generated/registry-schemes/style-system/css/alert-dialog.json +48 -0
- package/__generated/registry-schemes/style-system/css/alert.json +24 -0
- package/__generated/registry-schemes/style-system/css/avatar.json +16 -0
- package/__generated/registry-schemes/style-system/css/badge.json +16 -0
- package/__generated/registry-schemes/style-system/css/breadcrumb.json +44 -0
- package/__generated/registry-schemes/style-system/css/button.json +16 -0
- package/__generated/registry-schemes/style-system/css/calendar.json +60 -0
- package/__generated/registry-schemes/style-system/css/card-lightbox.json +22 -0
- package/__generated/registry-schemes/style-system/css/card.json +36 -0
- package/__generated/registry-schemes/style-system/css/carousel.json +43 -0
- package/__generated/registry-schemes/style-system/css/chart-area.json +20 -0
- package/__generated/registry-schemes/style-system/css/chart-bar.json +20 -0
- package/__generated/registry-schemes/style-system/css/chart-donut.json +20 -0
- package/__generated/registry-schemes/style-system/css/chart-line.json +20 -0
- package/__generated/registry-schemes/style-system/css/chart.json +35 -0
- package/__generated/registry-schemes/style-system/css/checkbox.json +16 -0
- package/__generated/registry-schemes/style-system/css/collapsible.json +24 -0
- package/__generated/registry-schemes/style-system/css/combobox.json +50 -0
- package/__generated/registry-schemes/style-system/css/command.json +48 -0
- package/__generated/registry-schemes/style-system/css/context-menu.json +72 -0
- package/__generated/registry-schemes/style-system/css/dialog.json +48 -0
- package/__generated/registry-schemes/style-system/css/drawer.json +42 -0
- package/__generated/registry-schemes/style-system/css/dropdown-menu.json +68 -0
- package/__generated/registry-schemes/style-system/css/form.json +44 -0
- package/__generated/registry-schemes/style-system/css/hover-card.json +24 -0
- package/__generated/registry-schemes/style-system/css/image.json +16 -0
- package/__generated/registry-schemes/style-system/css/infusion.json +12 -0
- package/__generated/registry-schemes/style-system/css/input.json +16 -0
- package/__generated/registry-schemes/style-system/css/label.json +16 -0
- package/__generated/registry-schemes/style-system/css/menubar.json +72 -0
- package/__generated/registry-schemes/style-system/css/navigation-menu.json +44 -0
- package/__generated/registry-schemes/style-system/css/number-field.json +32 -0
- package/__generated/registry-schemes/style-system/css/pagination.json +32 -0
- package/__generated/registry-schemes/style-system/css/pin-input.json +28 -0
- package/__generated/registry-schemes/style-system/css/popover.json +24 -0
- package/__generated/registry-schemes/style-system/css/progress.json +16 -0
- package/__generated/registry-schemes/style-system/css/radio-group.json +20 -0
- package/__generated/registry-schemes/style-system/css/range-calendar.json +60 -0
- package/__generated/registry-schemes/style-system/css/resizable.json +20 -0
- package/__generated/registry-schemes/style-system/css/scroll-area.json +20 -0
- package/__generated/registry-schemes/style-system/css/select.json +56 -0
- package/__generated/registry-schemes/style-system/css/separator.json +16 -0
- package/__generated/registry-schemes/style-system/css/sheet.json +44 -0
- package/__generated/registry-schemes/style-system/css/skeleton.json +16 -0
- package/__generated/registry-schemes/style-system/css/slider.json +16 -0
- package/__generated/registry-schemes/style-system/css/switch.json +16 -0
- package/__generated/registry-schemes/style-system/css/table.json +48 -0
- package/__generated/registry-schemes/style-system/css/tabs.json +28 -0
- package/__generated/registry-schemes/style-system/css/tags-input.json +34 -0
- package/__generated/registry-schemes/style-system/css/textarea.json +16 -0
- package/__generated/registry-schemes/style-system/css/toaster.json +26 -0
- package/__generated/registry-schemes/style-system/css/toggle-group.json +20 -0
- package/__generated/registry-schemes/style-system/css/toggle.json +16 -0
- package/__generated/registry-schemes/style-system/css/tooltip.json +28 -0
- package/__generated/registry-schemes/style-system/index.json +10 -0
- package/__generated/registry-schemes/style-system/tailwind/accordion.json +28 -0
- package/__generated/registry-schemes/style-system/tailwind/alert-dialog.json +48 -0
- package/__generated/registry-schemes/style-system/tailwind/alert.json +24 -0
- package/__generated/registry-schemes/style-system/tailwind/avatar.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/badge.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/breadcrumb.json +44 -0
- package/__generated/registry-schemes/style-system/tailwind/button.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/calendar.json +60 -0
- package/__generated/registry-schemes/style-system/tailwind/card-lightbox.json +22 -0
- package/__generated/registry-schemes/style-system/tailwind/card.json +36 -0
- package/__generated/registry-schemes/style-system/tailwind/carousel.json +43 -0
- package/__generated/registry-schemes/style-system/tailwind/chart-area.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/chart-bar.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/chart-donut.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/chart-line.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/chart.json +35 -0
- package/__generated/registry-schemes/style-system/tailwind/checkbox.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/collapsible.json +24 -0
- package/__generated/registry-schemes/style-system/tailwind/combobox.json +50 -0
- package/__generated/registry-schemes/style-system/tailwind/command.json +48 -0
- package/__generated/registry-schemes/style-system/tailwind/context-menu.json +72 -0
- package/__generated/registry-schemes/style-system/tailwind/dialog.json +48 -0
- package/__generated/registry-schemes/style-system/tailwind/drawer.json +42 -0
- package/__generated/registry-schemes/style-system/tailwind/dropdown-menu.json +68 -0
- package/__generated/registry-schemes/style-system/tailwind/form.json +44 -0
- package/__generated/registry-schemes/style-system/tailwind/hover-card.json +24 -0
- package/__generated/registry-schemes/style-system/tailwind/image.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/infusion.json +12 -0
- package/__generated/registry-schemes/style-system/tailwind/input.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/label.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/menubar.json +72 -0
- package/__generated/registry-schemes/style-system/tailwind/navigation-menu.json +44 -0
- package/__generated/registry-schemes/style-system/tailwind/number-field.json +32 -0
- package/__generated/registry-schemes/style-system/tailwind/pagination.json +32 -0
- package/__generated/registry-schemes/style-system/tailwind/pin-input.json +28 -0
- package/__generated/registry-schemes/style-system/tailwind/popover.json +24 -0
- package/__generated/registry-schemes/style-system/tailwind/progress.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/radio-group.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/range-calendar.json +60 -0
- package/__generated/registry-schemes/style-system/tailwind/resizable.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/scroll-area.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/select.json +56 -0
- package/__generated/registry-schemes/style-system/tailwind/separator.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/sheet.json +44 -0
- package/__generated/registry-schemes/style-system/tailwind/skeleton.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/slider.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/switch.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/table.json +48 -0
- package/__generated/registry-schemes/style-system/tailwind/tabs.json +28 -0
- package/__generated/registry-schemes/style-system/tailwind/tags-input.json +34 -0
- package/__generated/registry-schemes/style-system/tailwind/textarea.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/toaster.json +26 -0
- package/__generated/registry-schemes/style-system/tailwind/toggle-group.json +20 -0
- package/__generated/registry-schemes/style-system/tailwind/toggle.json +16 -0
- package/__generated/registry-schemes/style-system/tailwind/tooltip.json +28 -0
- package/dist/acorn-M5N7XWA6.js +3048 -0
- package/dist/acorn-M5N7XWA6.js.map +1 -0
- package/dist/angular-O7UVYQUZ.js +2796 -0
- package/dist/angular-O7UVYQUZ.js.map +1 -0
- package/dist/babel-J6LTJDOS.js +6998 -0
- package/dist/babel-J6LTJDOS.js.map +1 -0
- package/dist/chunk-PZ5AY32C.js +10 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/estree-H4XUELNR.js +4407 -0
- package/dist/estree-H4XUELNR.js.map +1 -0
- package/dist/flow-AOY6BQUA.js +26937 -0
- package/dist/flow-AOY6BQUA.js.map +1 -0
- package/dist/glimmer-KKY2I6O7.js +2857 -0
- package/dist/glimmer-KKY2I6O7.js.map +1 -0
- package/dist/graphql-YOTP2JVS.js +1252 -0
- package/dist/graphql-YOTP2JVS.js.map +1 -0
- package/dist/html-X25PN5V5.js +2745 -0
- package/dist/html-X25PN5V5.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +24930 -0
- package/dist/index.js.map +1 -0
- package/dist/markdown-MYCFYALD.js +3486 -0
- package/dist/markdown-MYCFYALD.js.map +1 -0
- package/dist/meriyah-OURTSR6I.js +2478 -0
- package/dist/meriyah-OURTSR6I.js.map +1 -0
- package/dist/postcss-2MY3W5DN.js +5062 -0
- package/dist/postcss-2MY3W5DN.js.map +1 -0
- package/dist/typescript-QJCPE2ES.js +13105 -0
- package/dist/typescript-QJCPE2ES.js.map +1 -0
- package/dist/yaml-XG5IIC33.js +4225 -0
- package/dist/yaml-XG5IIC33.js.map +1 -0
- package/package.json +87 -9
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "image",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Image.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { nextTick, ref, watch } from 'vue';\nimport { useForwardProps } from 'reka-ui';\nimport { ImageIcon, LoaderCircleIcon } from 'lucide-vue-next';\nimport { type ImageVariants, imageVariants } from '.';\nimport { cn } from '@ui/utils';\n\ntype Emits = {\n load: [];\n error: [];\n};\n\nconst props = withDefaults(defineProps<{\n src?: string;\n alt?: string;\n glow?: boolean;\n\n shape?: ImageVariants['shape'];\n}>(), {\n alt: 'image',\n shape: 'rounded',\n});\n\nconst emit = defineEmits<Emits>();\n\ndefineSlots<{\n fallback: () => any;\n}>();\n\nconst forwardedProps = useForwardProps(props);\n\nconst isError = ref(false);\nconst isLoading = ref(true);\n\nwatch(() => props.src, (value) => {\n if (!value) {\n nextTick(() => {\n isError.value = true;\n isLoading.value = false;\n });\n } else {\n isError.value = false;\n isLoading.value = true;\n }\n}, { immediate: true });\n\nfunction onError() {\n emit('error');\n isError.value = true;\n}\n\nfunction onLoad() {\n emit('load');\n isError.value = false;\n isLoading.value = false;\n}\n</script>\n\n<template>\n <div\n :class=\"[\n cn(imageVariants({ shape }), $attrs.class ?? ''),\n {\n 'overflow-hidden': !glow,\n },\n ]\"\n class=\"relative\"\n >\n <div\n v-if=\"isError\"\n class=\"animate-fade-in flex items-center justify-center w-full h-full\"\n >\n <slot name=\"fallback\">\n <div\n class=\"flex flex-col gap-1 items-center justify-center text-foreground/50\"\n >\n <ImageIcon class=\"w-[50%] max-w-[50px] h-[50%] max-h-[50px]\" />\n no photo\n </div>\n </slot>\n </div>\n <div\n v-else\n class=\"flex items-center justify-center w-full h-full\"\n >\n <div class=\"animate-fade-in\">\n <LoaderCircleIcon\n v-if=\"isLoading\"\n class=\"animate-spin w-[20px] h-[20px]\"\n />\n </div>\n <img\n v-show=\"!isLoading\"\n v-if=\"glow && !isError && props.src\"\n class=\"z-1 animate-fade-in absolute left-0 top-[2%] w-full h-full scale-105 object-cover blur-lg brightness-200 saturate-200 dark:brightness-100 rounded-md\"\n v-bind=\"forwardedProps\"\n @error=\"onError\"\n @load=\"onLoad\"\n >\n <img\n v-show=\"!isLoading\"\n v-if=\"!isError && props.src\"\n class=\"z-2 relative animate-fade-in w-full h-full object-cover rounded-md\"\n v-bind=\"forwardedProps\"\n @error=\"onError\"\n @load=\"onLoad\"\n >\n </div>\n </div>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "index.ts",
|
|
12
|
+
"content": "import { type VariantProps, cva } from 'class-variance-authority';\n\nexport { default as Image } from './Image.vue';\n\nexport const imageVariants = cva(\n 'w-full h-full animate-fade-in flex items-center justify-center font-normal text-foreground select-none shrink-0 bg-secondary/30',\n {\n variants: {\n shape: {\n rounded: 'rounded-md [&_img]:rounded-md',\n circle: 'rounded-full [&_img]:rounded-full',\n },\n },\n defaultVariants: {\n shape: 'rounded',\n },\n },\n);\n\nexport type ImageVariants = VariantProps<typeof imageVariants>;\n"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"type": "components:ui"
|
|
16
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "infusion",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Infusion.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\ninterface Props {\n src: string;\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n src: '',\n});\n</script>\n\n<template>\n <img\n class=\"fixed z-[100] top-0 left-0 w-[100vw] h-[100vh] opacity-20 dark:opacity-30 pointer-events-none object-cover\"\n :src=\"props.src\"\n >\n</template>\n"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"type": "components:ui"
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "input",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Input.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { cn } from '@ui/utils';\n\nconst model = defineModel<string | number>();\n</script>\n\n<template>\n <input\n v-model=\"model\"\n :class=\"cn('flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50', $attrs.class ?? '')\"\n autocomplete=\"off\"\n >\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "index.ts",
|
|
12
|
+
"content": "export { default as Input } from './Input.vue';\n"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"type": "components:ui"
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "label",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Label.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { Label, type LabelProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<LabelProps>();\n</script>\n\n<template>\n <Label\n v-bind=\"props\"\n :class=\"\n\n cn(\n 'text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70',\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </Label>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "index.ts",
|
|
12
|
+
"content": "export { default as Label } from './Label.vue';\n"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"type": "components:ui"
|
|
16
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "menubar",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Menubar.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarRoot,\n type MenubarRootEmits,\n type MenubarRootProps,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarRootProps>();\nconst emits = defineEmits<MenubarRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarRoot\n v-bind=\"forwarded\"\n :class=\"\n cn(\n 'flex h-10 items-center gap-x-1 rounded-md border bg-background p-1',\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </MenubarRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "MenubarCheckboxItem.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarCheckboxItem,\n type MenubarCheckboxItemEmits,\n type MenubarCheckboxItemProps,\n MenubarItemIndicator,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { CheckIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarCheckboxItemProps>();\nconst emits = defineEmits<MenubarCheckboxItemEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarCheckboxItem\n v-bind=\"forwarded\"\n :class=\"cn(\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n $attrs.class ?? '',\n )\"\n >\n <span class=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <MenubarItemIndicator>\n <CheckIcon class=\"w-4 h-4\" />\n </MenubarItemIndicator>\n </span>\n <slot />\n </MenubarCheckboxItem>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "MenubarContent.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarContent,\n type MenubarContentProps,\n MenubarPortal,\n useForwardProps,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(\n defineProps<MenubarContentProps>(),\n {\n align: 'start',\n alignOffset: -4,\n sideOffset: 8,\n },\n);\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <MenubarPortal>\n <MenubarContent\n v-bind=\"forwardedProps\"\n :class=\"\n cn(\n 'z-50 min-w-48 overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </MenubarContent>\n </MenubarPortal>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "MenubarGroup.vue",
|
|
20
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarGroup, type MenubarGroupProps } from 'reka-ui';\n\nconst props = defineProps<MenubarGroupProps>();\n</script>\n\n<template>\n <MenubarGroup v-bind=\"props\">\n <slot />\n </MenubarGroup>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "MenubarItem.vue",
|
|
24
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarItem,\n type MenubarItemEmits,\n type MenubarItemProps,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarItemProps & { inset?: boolean }>();\nconst emits = defineEmits<MenubarItemEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarItem\n v-bind=\"forwarded\"\n :class=\"cn(\n 'relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n inset && 'pl-8',\n $attrs.class ?? '',\n )\"\n >\n <slot />\n </MenubarItem>\n</template>\n"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "MenubarLabel.vue",
|
|
28
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarLabel, type MenubarLabelProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarLabelProps & { inset?: boolean }>();\n</script>\n\n<template>\n <MenubarLabel :class=\"cn('px-2 py-1.5 text-sm font-semibold', inset && 'pl-8', $attrs.class ?? '')\">\n <slot />\n </MenubarLabel>\n</template>\n"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "MenubarMenu.vue",
|
|
32
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarMenu, type MenubarMenuProps } from 'reka-ui';\n\nconst props = defineProps<MenubarMenuProps>();\n</script>\n\n<template>\n <MenubarMenu v-bind=\"props\">\n <slot />\n </MenubarMenu>\n</template>\n"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "MenubarRadioGroup.vue",
|
|
36
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarRadioGroup,\n type MenubarRadioGroupEmits,\n type MenubarRadioGroupProps,\n useForwardPropsEmits,\n} from 'reka-ui';\n\nconst props = defineProps<MenubarRadioGroupProps>();\n\nconst emits = defineEmits<MenubarRadioGroupEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarRadioGroup v-bind=\"forwarded\">\n <slot />\n </MenubarRadioGroup>\n</template>\n"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "MenubarRadioItem.vue",
|
|
40
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarItemIndicator,\n MenubarRadioItem,\n type MenubarRadioItemEmits,\n type MenubarRadioItemProps,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { CircleIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarRadioItemProps>();\nconst emits = defineEmits<MenubarRadioItemEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarRadioItem\n v-bind=\"forwarded\"\n :class=\"cn(\n 'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n $attrs.class ?? '',\n )\"\n >\n <span class=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <MenubarItemIndicator>\n <CircleIcon class=\"h-2 w-2 fill-current\" />\n </MenubarItemIndicator>\n </span>\n <slot />\n </MenubarRadioItem>\n</template>\n"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "MenubarSeparator.vue",
|
|
44
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarSeparator, type MenubarSeparatorProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarSeparatorProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <MenubarSeparator\n :class=\" cn('-mx-1 my-1 h-px bg-muted', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n />\n</template>\n"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "MenubarShortcut.vue",
|
|
48
|
+
"content": "<script setup lang=\"ts\">\nimport { cn } from '@ui/utils';\n\n</script>\n\n<template>\n <span :class=\"cn('ml-auto text-xs tracking-widest text-muted-foreground', $attrs.class ?? '')\">\n <slot />\n </span>\n</template>\n"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "MenubarSub.vue",
|
|
52
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarSub, type MenubarSubEmits, useForwardPropsEmits } from 'reka-ui';\n\ninterface MenubarSubRootProps {\n defaultOpen?: boolean;\n open?: boolean;\n}\n\nconst props = defineProps<MenubarSubRootProps>();\nconst emits = defineEmits<MenubarSubEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarSub v-bind=\"forwarded\">\n <slot />\n </MenubarSub>\n</template>\n"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"name": "MenubarSubContent.vue",
|
|
56
|
+
"content": "<script setup lang=\"ts\">\nimport {\n MenubarPortal,\n MenubarSubContent,\n type MenubarSubContentEmits,\n type MenubarSubContentProps,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarSubContentProps>();\nconst emits = defineEmits<MenubarSubContentEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <MenubarPortal>\n <MenubarSubContent\n v-bind=\"forwarded\"\n :class=\"\n cn(\n 'z-50 min-w-32 overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </MenubarSubContent>\n </MenubarPortal>\n</template>\n"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"name": "MenubarSubTrigger.vue",
|
|
60
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarSubTrigger, type MenubarSubTriggerProps, useForwardProps } from 'reka-ui';\nimport { ChevronRightIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarSubTriggerProps & { inset?: boolean }>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <MenubarSubTrigger\n v-bind=\"forwardedProps\"\n :class=\"cn(\n 'flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n inset && 'pl-8',\n $attrs.class ?? '',\n )\"\n >\n <slot />\n <ChevronRightIcon class=\"ml-auto h-4 w-4\" />\n </MenubarSubTrigger>\n</template>\n"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name": "MenubarTrigger.vue",
|
|
64
|
+
"content": "<script setup lang=\"ts\">\nimport { MenubarTrigger, type MenubarTriggerProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<MenubarTriggerProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <MenubarTrigger\n v-bind=\"forwardedProps\"\n :class=\"\n cn(\n 'flex cursor-default select-none items-center rounded-sm px-3 py-1.5 text-sm font-medium outline-hidden focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground hover:bg-accent/50 hover:transition-bg duration-200',\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </MenubarTrigger>\n</template>\n"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"name": "index.ts",
|
|
68
|
+
"content": "export { default as Menubar } from './Menubar.vue';\nexport { default as MenubarItem } from './MenubarItem.vue';\nexport { default as MenubarContent } from './MenubarContent.vue';\nexport { default as MenubarGroup } from './MenubarGroup.vue';\nexport { default as MenubarMenu } from './MenubarMenu.vue';\nexport { default as MenubarRadioGroup } from './MenubarRadioGroup.vue';\nexport { default as MenubarRadioItem } from './MenubarRadioItem.vue';\nexport { default as MenubarCheckboxItem } from './MenubarCheckboxItem.vue';\nexport { default as MenubarSeparator } from './MenubarSeparator.vue';\nexport { default as MenubarSub } from './MenubarSub.vue';\nexport { default as MenubarSubContent } from './MenubarSubContent.vue';\nexport { default as MenubarSubTrigger } from './MenubarSubTrigger.vue';\nexport { default as MenubarTrigger } from './MenubarTrigger.vue';\nexport { default as MenubarShortcut } from './MenubarShortcut.vue';\nexport { default as MenubarLabel } from './MenubarLabel.vue';\n"
|
|
69
|
+
}
|
|
70
|
+
],
|
|
71
|
+
"type": "components:ui"
|
|
72
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "navigation-menu",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "NavigationMenu.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport {\n NavigationMenuRoot,\n type NavigationMenuRootEmits,\n type NavigationMenuRootProps,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport NavigationMenuViewport from './NavigationMenuViewport.vue';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NavigationMenuRootProps>();\nconst emits = defineEmits<NavigationMenuRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <NavigationMenuRoot\n v-bind=\"forwarded\"\n :class=\"cn('relative z-10 flex max-w-max flex-1 items-center justify-center', $attrs.class ?? '')\"\n >\n <slot />\n <NavigationMenuViewport />\n </NavigationMenuRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "NavigationMenuContent.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport {\n NavigationMenuContent,\n type NavigationMenuContentEmits,\n type NavigationMenuContentProps,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NavigationMenuContentProps>();\nconst emits = defineEmits<NavigationMenuContentEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <NavigationMenuContent\n v-bind=\"forwarded\"\n class=\"sigma-ui-navigation-menu-content\"\n >\n <slot />\n </NavigationMenuContent>\n</template>\n\n<style>\n.sigma-ui-navigation-menu-content {\n left: 0;\n top: 0;\n width: 100%;\n animation: fadeOut 200ms ease-in-out;\n}\n\n.sigma-ui-navigation-menu-content[data-state=\"open\"] {\n animation: fadeIn 200ms ease-in-out;\n}\n\n.sigma-ui-navigation-menu-content[data-motion=\"from-end\"][data-state=\"open\"] {\n animation: slideInFromRight 200ms ease-in-out;\n}\n\n.sigma-ui-navigation-menu-content[data-motion=\"from-start\"][data-state=\"open\"] {\n animation: slideInFromLeft 200ms ease-in-out;\n}\n\n.sigma-ui-navigation-menu-content[data-motion=\"to-end\"][data-state=\"closed\"] {\n animation: slideOutToRight 200ms ease-in-out;\n}\n\n.sigma-ui-navigation-menu-content[data-motion=\"to-start\"][data-state=\"closed\"] {\n animation: slideOutToLeft 200ms ease-in-out;\n}\n\n@media (min-width: 768px) {\n .sigma-ui-navigation-menu-content {\n position: absolute;\n width: auto;\n }\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n filter: blur(12px);\n }\n to {\n opacity: 1;\n filter: blur(0);\n }\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n\n@keyframes slideInFromRight {\n from {\n opacity: 0;\n transform: translateX(13rem);\n filter: blur(12px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n filter: blur(0);\n }\n}\n\n@keyframes slideInFromLeft {\n from {\n opacity: 0;\n transform: translateX(-13rem);\n filter: blur(12px);\n }\n to {\n opacity: 1;\n transform: translateX(0);\n filter: blur(0);\n }\n}\n\n@keyframes slideOutToRight {\n from {\n opacity: 1;\n transform: translateX(0);\n filter: blur(0);\n }\n to {\n transform: translateX(13rem);\n filter: blur(12px);\n opacity: 0;\n }\n}\n\n@keyframes slideOutToLeft {\n from {\n opacity: 1;\n transform: translateX(0);\n filter: blur(0);\n }\n to {\n opacity: 0;\n transform: translateX(-13rem);\n filter: blur(12px);\n }\n}\n</style>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "NavigationMenuIndicator.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport { NavigationMenuIndicator, type NavigationMenuIndicatorProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NavigationMenuIndicatorProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <NavigationMenuIndicator\n v-bind=\"forwardedProps\"\n :class=\"cn('top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in', $attrs.class ?? '')\"\n >\n <div class=\"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md\" />\n </NavigationMenuIndicator>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "NavigationMenuItem.vue",
|
|
20
|
+
"content": "<script setup lang=\"ts\">\nimport { NavigationMenuItem, type NavigationMenuItemProps } from 'reka-ui';\n\nconst props = defineProps<NavigationMenuItemProps>();\n</script>\n\n<template>\n <NavigationMenuItem v-bind=\"props\">\n <slot />\n </NavigationMenuItem>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "NavigationMenuLink.vue",
|
|
24
|
+
"content": "<script setup lang=\"ts\">\nimport {\n NavigationMenuLink,\n type NavigationMenuLinkEmits,\n type NavigationMenuLinkProps,\n useForwardPropsEmits,\n} from 'reka-ui';\n\nconst props = defineProps<NavigationMenuLinkProps>();\nconst emits = defineEmits<NavigationMenuLinkEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <NavigationMenuLink v-bind=\"forwarded\">\n <slot />\n </NavigationMenuLink>\n</template>\n"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "NavigationMenuList.vue",
|
|
28
|
+
"content": "<script setup lang=\"ts\">\nimport { NavigationMenuList, type NavigationMenuListProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NavigationMenuListProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <NavigationMenuList\n v-bind=\"forwardedProps\"\n :class=\"\n cn(\n 'group flex flex-1 list-none items-center justify-center gap-x-1',\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </NavigationMenuList>\n</template>\n"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "NavigationMenuTrigger.vue",
|
|
32
|
+
"content": "<script setup lang=\"ts\">\nimport {\n NavigationMenuTrigger,\n type NavigationMenuTriggerProps,\n useForwardProps,\n} from 'reka-ui';\nimport { ChevronDownIcon } from 'lucide-vue-next';\nimport { navigationMenuTriggerStyle } from '.';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NavigationMenuTriggerProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <NavigationMenuTrigger\n v-bind=\"forwardedProps\"\n :class=\"cn(navigationMenuTriggerStyle(), 'group', $attrs.class ?? '')\"\n >\n <slot />\n <ChevronDownIcon\n class=\"relative top-px ml-1 h-3 w-3 transition duration-200 group-data-[state=open]:rotate-180\"\n aria-hidden=\"true\"\n />\n </NavigationMenuTrigger>\n</template>\n"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "NavigationMenuViewport.vue",
|
|
36
|
+
"content": "<script setup lang=\"ts\">\nimport {\n NavigationMenuViewport,\n type NavigationMenuViewportProps,\n useForwardProps,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NavigationMenuViewportProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <div class=\"absolute left-0 top-full flex justify-center\">\n <NavigationMenuViewport\n v-bind=\"forwardedProps\"\n :class=\"\n cn(\n 'origin-top-center relative mt-1.5 h-(--reka-navigation-menu-viewport-height) w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 md:w-(--reka-navigation-menu-viewport-width)',\n $attrs.class ?? '',\n )\n \"\n />\n </div>\n</template>\n"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "index.ts",
|
|
40
|
+
"content": "import { cva } from 'class-variance-authority';\n\nexport { default as NavigationMenu } from './NavigationMenu.vue';\nexport { default as NavigationMenuList } from './NavigationMenuList.vue';\nexport { default as NavigationMenuItem } from './NavigationMenuItem.vue';\nexport { default as NavigationMenuTrigger } from './NavigationMenuTrigger.vue';\nexport { default as NavigationMenuContent } from './NavigationMenuContent.vue';\nexport { default as NavigationMenuLink } from './NavigationMenuLink.vue';\n\nexport const navigationMenuTriggerStyle = cva(\n 'group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-hidden disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50',\n);\n"
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"type": "components:ui"
|
|
44
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "number-field",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "NumberField.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport type { NumberFieldRootEmits, NumberFieldRootProps } from 'reka-ui';\nimport { NumberFieldRoot, useForwardPropsEmits } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NumberFieldRootProps>();\nconst emits = defineEmits<NumberFieldRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <NumberFieldRoot\n v-bind=\"forwarded\"\n :class=\"cn('grid gap-1.5', $attrs.class ?? '')\"\n >\n <slot />\n </NumberFieldRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "NumberFieldContent.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport { cn } from '@ui/utils';\n\n</script>\n\n<template>\n <div :class=\"cn('relative [&>[data-slot=input]]:has-[[data-slot=increment]]:pr-5 [&>[data-slot=input]]:has-[[data-slot=decrement]]:pl-5', $attrs.class ?? '')\">\n <slot />\n </div>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "NumberFieldDecrement.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport type { NumberFieldDecrementProps } from 'reka-ui';\nimport { NumberFieldDecrement, useForwardProps } from 'reka-ui';\nimport { MinusIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NumberFieldDecrementProps>();\n\nconst forwarded = useForwardProps(props);\n</script>\n\n<template>\n <NumberFieldDecrement\n data-slot=\"decrement\"\n v-bind=\"forwarded\"\n :class=\"cn('absolute top-1/2 -translate-y-1/2 left-0 p-3 disabled:cursor-not-allowed disabled:opacity-20', $attrs.class ?? '')\"\n >\n <slot>\n <MinusIcon class=\"h-4 w-4\" />\n </slot>\n </NumberFieldDecrement>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "NumberFieldIncrement.vue",
|
|
20
|
+
"content": "<script setup lang=\"ts\">\nimport type { NumberFieldIncrementProps } from 'reka-ui';\nimport { NumberFieldIncrement, useForwardProps } from 'reka-ui';\nimport { PlusIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<NumberFieldIncrementProps>();\n\nconst forwarded = useForwardProps(props);\n</script>\n\n<template>\n <NumberFieldIncrement\n data-slot=\"increment\"\n v-bind=\"forwarded\"\n :class=\"cn('absolute top-1/2 -translate-y-1/2 right-0 disabled:cursor-not-allowed disabled:opacity-20 p-3', $attrs.class ?? '')\"\n >\n <slot>\n <PlusIcon class=\"h-4 w-4\" />\n </slot>\n </NumberFieldIncrement>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "NumberFieldInput.vue",
|
|
24
|
+
"content": "<script setup lang=\"ts\">\nimport { NumberFieldInput } from 'reka-ui';\nimport { cn } from '@ui/utils';\n</script>\n\n<template>\n <NumberFieldInput\n data-slot=\"input\"\n :class=\"cn('flex h-10 w-full rounded-md border border-input bg-background py-2 text-sm text-center ring-offset-background placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50')\"\n />\n</template>\n"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "index.ts",
|
|
28
|
+
"content": "export { default as NumberField } from './NumberField.vue';\nexport { default as NumberFieldInput } from './NumberFieldInput.vue';\nexport { default as NumberFieldIncrement } from './NumberFieldIncrement.vue';\nexport { default as NumberFieldDecrement } from './NumberFieldDecrement.vue';\nexport { default as NumberFieldContent } from './NumberFieldContent.vue';\n"
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"type": "components:ui"
|
|
32
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "pagination",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "PaginationEllipsis.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { PaginationEllipsis, type PaginationEllipsisProps } from 'reka-ui';\nimport { MoreHorizontalIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<PaginationEllipsisProps>();\n</script>\n\n<template>\n <PaginationEllipsis\n v-bind=\"props\"\n :class=\"cn('w-9 h-9 flex items-center justify-center', $attrs.class ?? '')\"\n >\n <slot>\n <MoreHorizontalIcon class=\"w-4 h-4\" />\n </slot>\n </PaginationEllipsis>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "PaginationFirst.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport { PaginationFirst, type PaginationFirstProps } from 'reka-ui';\nimport { ChevronsLeftIcon } from 'lucide-vue-next';\nimport {\n Button,\n} from '@ui/registry/tailwind/ui/button';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(defineProps<PaginationFirstProps>(), {\n asChild: true,\n});\n</script>\n\n<template>\n <PaginationFirst v-bind=\"props\">\n <Button\n :class=\"cn('w-10 h-10 p-0', $attrs.class ?? '')\"\n variant=\"outline\"\n >\n <slot>\n <ChevronsLeftIcon class=\"h-4 w-4\" />\n </slot>\n </Button>\n </PaginationFirst>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "PaginationLast.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport { PaginationLast, type PaginationLastProps } from 'reka-ui';\nimport { ChevronsRightIcon } from 'lucide-vue-next';\nimport {\n Button,\n} from '@ui/registry/tailwind/ui/button';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(defineProps<PaginationLastProps>(), {\n asChild: true,\n});\n</script>\n\n<template>\n <PaginationLast v-bind=\"props\">\n <Button\n :class=\"cn('w-10 h-10 p-0', $attrs.class ?? '')\"\n variant=\"outline\"\n >\n <slot>\n <ChevronsRightIcon class=\"h-4 w-4\" />\n </slot>\n </Button>\n </PaginationLast>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "PaginationNext.vue",
|
|
20
|
+
"content": "<script setup lang=\"ts\">\nimport { PaginationNext, type PaginationNextProps } from 'reka-ui';\nimport { ChevronRightIcon } from 'lucide-vue-next';\nimport {\n Button,\n} from '@ui/registry/tailwind/ui/button';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(defineProps<PaginationNextProps>(), {\n asChild: true,\n});\n</script>\n\n<template>\n <PaginationNext v-bind=\"props\">\n <Button\n :class=\"cn('w-10 h-10 p-0', $attrs.class ?? '')\"\n variant=\"outline\"\n >\n <slot>\n <ChevronRightIcon class=\"h-4 w-4\" />\n </slot>\n </Button>\n </PaginationNext>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "PaginationPrev.vue",
|
|
24
|
+
"content": "<script setup lang=\"ts\">\nimport { PaginationPrev, type PaginationPrevProps } from 'reka-ui';\nimport { ChevronLeftIcon } from 'lucide-vue-next';\nimport {\n Button,\n} from '@ui/registry/tailwind/ui/button';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(defineProps<PaginationPrevProps>(), {\n asChild: true,\n});\n</script>\n\n<template>\n <PaginationPrev v-bind=\"props\">\n <Button\n :class=\"cn('w-10 h-10 p-0', $attrs.class ?? '')\"\n variant=\"outline\"\n >\n <slot>\n <ChevronLeftIcon class=\"h-4 w-4\" />\n </slot>\n </Button>\n </PaginationPrev>\n</template>\n"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "index.ts",
|
|
28
|
+
"content": "export {\n PaginationRoot as Pagination,\n PaginationList,\n PaginationListItem,\n} from 'reka-ui';\nexport { default as PaginationEllipsis } from './PaginationEllipsis.vue';\nexport { default as PaginationFirst } from './PaginationFirst.vue';\nexport { default as PaginationLast } from './PaginationLast.vue';\nexport { default as PaginationNext } from './PaginationNext.vue';\nexport { default as PaginationPrev } from './PaginationPrev.vue';\n"
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"type": "components:ui"
|
|
32
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "pin-input",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "PinInput.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { PinInputRoot, type PinInputRootEmits, type PinInputRootProps, useForwardPropsEmits } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(defineProps<PinInputRootProps>(), {\n modelValue: () => [],\n});\nconst emits = defineEmits<PinInputRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <PinInputRoot\n v-bind=\"forwarded\"\n :class=\"cn('flex gap-2 items-center', $attrs.class ?? '')\"\n >\n <slot />\n </PinInputRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "PinInputGroup.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport { Primitive, type PrimitiveProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<PrimitiveProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <Primitive\n v-bind=\"forwardedProps\"\n :class=\"cn('flex items-center', $attrs.class ?? '')\"\n >\n <slot />\n </primitive>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "PinInputInput.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport { PinInputInput, type PinInputInputProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<PinInputInputProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <PinInputInput\n v-bind=\"forwardedProps\"\n :class=\"cn('relative text-center focus:outline-hidden focus:ring-2 focus:ring-ring focus:relative focus:z-10 flex h-10 w-10 items-center justify-center border-y border-r border-input text-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md', $attrs.class ?? '')\"\n />\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "PinInputSeparator.vue",
|
|
20
|
+
"content": "<script setup lang=\"ts\">\nimport { Primitive, type PrimitiveProps, useForwardProps } from 'reka-ui';\nimport { DotIcon } from 'lucide-vue-next';\n\nconst props = defineProps<PrimitiveProps>();\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <Primitive v-bind=\"forwardedProps\">\n <slot>\n <DotIcon class=\"w-4 h-4 text-muted-foreground\" />\n </slot>\n </primitive>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "index.ts",
|
|
24
|
+
"content": "export { default as PinInput } from './PinInput.vue';\nexport { default as PinInputGroup } from './PinInputGroup.vue';\nexport { default as PinInputSeparator } from './PinInputSeparator.vue';\nexport { default as PinInputInput } from './PinInputInput.vue';\n"
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
"type": "components:ui"
|
|
28
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "popover",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Popover.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { PopoverRoot, useForwardPropsEmits } from 'reka-ui';\nimport type { PopoverRootEmits, PopoverRootProps } from 'reka-ui';\n\nconst props = defineProps<PopoverRootProps>();\nconst emits = defineEmits<PopoverRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <PopoverRoot v-bind=\"forwarded\">\n <slot />\n </PopoverRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "PopoverContent.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport {\n PopoverContent,\n type PopoverContentEmits,\n type PopoverContentProps,\n PopoverPortal,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<PopoverContentProps>(),\n {\n align: 'center',\n sideOffset: 4,\n },\n);\nconst emits = defineEmits<PopoverContentEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <PopoverPortal>\n <PopoverContent\n v-bind=\"{ ...forwarded, ...$attrs }\"\n :class=\"\n cn(\n [\n 'z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden',\n 'data-[state=closed]:animate-popover-fade-scale-blur-out',\n 'data-[side=bottom]:data-[state=open]:animate-popover-slide-blur-from-top',\n 'data-[side=left]:data-[state=open]:animate-popover-slide-blur-from-right',\n 'data-[side=right]:data-[state=open]:animate-popover-slide-blur-from-left',\n 'data-[side=top]:data-[state=open]:animate-popover-slide-blur-from-bottom',\n '[transform-origin:var(--reka-popover-content-transform-origin)]',\n ],\n $attrs.class ?? '',\n )\n \"\n >\n <slot />\n </PopoverContent>\n </PopoverPortal>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "PopoverTrigger.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport { PopoverTrigger, type PopoverTriggerProps } from 'reka-ui';\n\nconst props = defineProps<PopoverTriggerProps>();\n</script>\n\n<template>\n <PopoverTrigger v-bind=\"props\">\n <slot />\n </PopoverTrigger>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "index.ts",
|
|
20
|
+
"content": "export { default as Popover } from './Popover.vue';\nexport { default as PopoverTrigger } from './PopoverTrigger.vue';\nexport { default as PopoverContent } from './PopoverContent.vue';\n"
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"type": "components:ui"
|
|
24
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "progress",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Progress.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport {\n ProgressIndicator,\n ProgressRoot,\n type ProgressRootProps,\n} from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(\n defineProps<ProgressRootProps>(),\n {\n modelValue: 0,\n },\n);\n</script>\n\n<template>\n <ProgressRoot\n v-bind=\"props\"\n :class=\"\n cn(\n 'relative h-4 w-full min-w-[50px] overflow-hidden rounded-full bg-secondary',\n $attrs.class ?? '',\n )\n \"\n >\n <ProgressIndicator\n class=\"h-full w-full flex-1 bg-primary transition-all\"\n :style=\"`transform: translateX(-${100 - (props.modelValue ?? 0)}%);`\"\n />\n </ProgressRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "index.ts",
|
|
12
|
+
"content": "export { default as Progress } from './Progress.vue';\n"
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"type": "components:ui"
|
|
16
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "radio-group",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "RadioGroup.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { RadioGroupRoot, type RadioGroupRootEmits, type RadioGroupRootProps, useForwardPropsEmits } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RadioGroupRootProps>();\nconst emits = defineEmits<RadioGroupRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <RadioGroupRoot\n :class=\"cn('grid gap-2', $attrs.class ?? '')\"\n v-bind=\"forwarded\"\n >\n <slot />\n </RadioGroupRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "RadioGroupItem.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport {\n RadioGroupIndicator,\n RadioGroupItem,\n type RadioGroupItemProps,\n useForwardProps,\n} from 'reka-ui';\nimport { CircleIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RadioGroupItemProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RadioGroupItem\n v-bind=\"forwardedProps\"\n :class=\"\n cn(\n 'aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50',\n $attrs.class ?? '',\n )\n \"\n >\n <RadioGroupIndicator\n class=\"flex items-center justify-center\"\n >\n <CircleIcon class=\"h-2.5 w-2.5 fill-current text-current\" />\n </RadioGroupIndicator>\n </RadioGroupItem>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "index.ts",
|
|
16
|
+
"content": "export { default as RadioGroup } from './RadioGroup.vue';\nexport { default as RadioGroupItem } from './RadioGroupItem.vue';\n"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"type": "components:ui"
|
|
20
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "range-calendar",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "RangeCalendar.vue",
|
|
8
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarRoot, type RangeCalendarRootEmits, type RangeCalendarRootProps, useForwardPropsEmits } from 'reka-ui';\nimport { RangeCalendarCell, RangeCalendarCellTrigger, RangeCalendarGrid, RangeCalendarGridBody, RangeCalendarGridHead, RangeCalendarGridRow, RangeCalendarHeadCell, RangeCalendarHeader, RangeCalendarHeading, RangeCalendarNextButton, RangeCalendarPrevButton } from '.';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarRootProps>();\nconst emits = defineEmits<RangeCalendarRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <RangeCalendarRoot\n v-slot=\"{ grid, weekDays }\"\n :class=\"cn('p-3', $attrs.class ?? '')\"\n v-bind=\"forwarded\"\n >\n <RangeCalendarHeader>\n <RangeCalendarPrevButton />\n <RangeCalendarHeading />\n <RangeCalendarNextButton />\n </RangeCalendarHeader>\n\n <div class=\"flex flex-col gap-y-4 mt-4 sm:flex-row sm:gap-x-4 sm:gap-y-0\">\n <RangeCalendarGrid\n v-for=\"month in grid\"\n :key=\"month.value.toString()\"\n >\n <RangeCalendarGridHead>\n <RangeCalendarGridRow>\n <RangeCalendarHeadCell\n v-for=\"day in weekDays\"\n :key=\"day\"\n >\n {{ day }}\n </RangeCalendarHeadCell>\n </RangeCalendarGridRow>\n </RangeCalendarGridHead>\n <RangeCalendarGridBody>\n <RangeCalendarGridRow\n v-for=\"(weekDates, index) in month.rows\"\n :key=\"`weekDate-${index}`\"\n class=\"mt-2 w-full\"\n >\n <RangeCalendarCell\n v-for=\"weekDate in weekDates\"\n :key=\"weekDate.toString()\"\n :date=\"weekDate\"\n >\n <RangeCalendarCellTrigger\n :day=\"weekDate\"\n :month=\"month.value\"\n />\n </RangeCalendarCell>\n </RangeCalendarGridRow>\n </RangeCalendarGridBody>\n </RangeCalendarGrid>\n </div>\n </RangeCalendarRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "RangeCalendarCell.vue",
|
|
12
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarCell, type RangeCalendarCellProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarCellProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarCell\n :class=\"cn('relative h-9 w-9 p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([data-selected])]:bg-accent first:[&:has([data-selected])]:rounded-l-md last:[&:has([data-selected])]:rounded-r-md [&:has([data-selected][data-outside-month])]:bg-accent/50 [&:has([data-selected][data-selection-end])]:rounded-r-md [&:has([data-selected][data-selection-start])]:rounded-l-md', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n >\n <slot />\n </RangeCalendarCell>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "RangeCalendarCellTrigger.vue",
|
|
16
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarCellTrigger, type RangeCalendarCellTriggerProps, useForwardProps } from 'reka-ui';\nimport { buttonVariants } from '@ui/registry/tailwind/ui/button';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarCellTriggerProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarCellTrigger\n :class=\"cn(\n buttonVariants({ variant: 'ghost' }),\n 'h-9 w-9 p-0 font-normal data-[selected]:opacity-100',\n '[&[data-today]:not([data-selected])]:bg-accent [&[data-today]:not([data-selected])]:text-accent-foreground',\n // Selection Start\n 'data-[selection-start]:bg-primary data-[selection-start]:text-primary-foreground data-[selection-start]:hover:bg-primary data-[selection-start]:hover:text-primary-foreground data-[selection-start]:focus:bg-primary data-[selection-start]:focus:text-primary-foreground',\n // Selection End\n 'data-[selection-end]:bg-primary data-[selection-end]:text-primary-foreground data-[selection-end]:hover:bg-primary data-[selection-end]:hover:text-primary-foreground data-[selection-end]:focus:bg-primary data-[selection-end]:focus:text-primary-foreground',\n // Outside months\n 'data-[outside-month]:pointer-events-none data-[outside-month]:text-muted-foreground data-[outside-month]:opacity-50 [&[data-outside-month][data-selected]]:bg-accent/50 [&[data-outside-month][data-selected]]:text-muted-foreground [&[data-outside-month][data-selected]]:opacity-30',\n // Disabled\n 'data-[disabled]:text-muted-foreground data-[disabled]:opacity-50',\n // Unavailable\n 'data-[unavailable]:text-destructive-foreground data-[unavailable]:line-through',\n $attrs.class ?? '',\n )\"\n v-bind=\"forwardedProps\"\n >\n <slot />\n </RangeCalendarCellTrigger>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "RangeCalendarGrid.vue",
|
|
20
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarGrid, type RangeCalendarGridProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarGridProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarGrid\n :class=\"cn('w-full border-collapse space-y-1', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n >\n <slot />\n </RangeCalendarGrid>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "RangeCalendarGridBody.vue",
|
|
24
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarGridBody, type RangeCalendarGridBodyProps } from 'reka-ui';\n\nconst props = defineProps<RangeCalendarGridBodyProps>();\n</script>\n\n<template>\n <RangeCalendarGridBody v-bind=\"props\">\n <slot />\n </RangeCalendarGridBody>\n</template>\n"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "RangeCalendarGridHead.vue",
|
|
28
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarGridHead, type RangeCalendarGridHeadProps } from 'reka-ui';\n\nconst props = defineProps<RangeCalendarGridHeadProps>();\n</script>\n\n<template>\n <RangeCalendarGridHead v-bind=\"props\">\n <slot />\n </RangeCalendarGridHead>\n</template>\n"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "RangeCalendarGridRow.vue",
|
|
32
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarGridRow, type RangeCalendarGridRowProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarGridRowProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarGridRow\n :class=\"cn('flex mt-2 w-full', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n >\n <slot />\n </RangeCalendarGridRow>\n</template>\n"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "RangeCalendarHeadCell.vue",
|
|
36
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarHeadCell, type RangeCalendarHeadCellProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarHeadCellProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarHeadCell\n :class=\"cn('w-8 rounded-md text-[0.8rem] font-normal text-muted-foreground', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n >\n <slot />\n </RangeCalendarHeadCell>\n</template>\n"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "RangeCalendarHeader.vue",
|
|
40
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarHeader, type RangeCalendarHeaderProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarHeaderProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarHeader\n :class=\"cn('relative flex w-full items-center justify-between pt-1', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n >\n <slot />\n </RangeCalendarHeader>\n</template>\n"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "RangeCalendarHeading.vue",
|
|
44
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarHeading, type RangeCalendarHeadingProps, useForwardProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<RangeCalendarHeadingProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarHeading\n v-slot=\"{ headingValue }\"\n :class=\"cn('text-sm font-medium', $attrs.class ?? '')\"\n v-bind=\"forwardedProps\"\n >\n <slot :heading-value>\n {{ headingValue }}\n </slot>\n </RangeCalendarHeading>\n</template>\n"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "RangeCalendarNextButton.vue",
|
|
48
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarNext, type RangeCalendarNextProps, useForwardProps } from 'reka-ui';\nimport { ChevronRightIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\nimport { buttonVariants } from '@ui/registry/tailwind/ui/button';\n\nconst props = defineProps<RangeCalendarNextProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarNext\n :class=\"cn(\n buttonVariants({ variant: 'outline' }),\n 'h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100',\n $attrs.class ?? '',\n )\"\n v-bind=\"forwardedProps\"\n >\n <slot>\n <ChevronRightIcon class=\"h-4 w-4\" />\n </slot>\n </RangeCalendarNext>\n</template>\n"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "RangeCalendarPrevButton.vue",
|
|
52
|
+
"content": "<script lang=\"ts\" setup>\nimport { RangeCalendarPrev, type RangeCalendarPrevProps, useForwardProps } from 'reka-ui';\nimport { ChevronLeftIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\nimport { buttonVariants } from '@ui/registry/tailwind/ui/button';\n\nconst props = defineProps<RangeCalendarPrevProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <RangeCalendarPrev\n :class=\"cn(\n buttonVariants({ variant: 'outline' }),\n 'h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100',\n $attrs.class ?? '',\n )\"\n v-bind=\"forwardedProps\"\n >\n <slot>\n <ChevronLeftIcon class=\"h-4 w-4\" />\n </slot>\n </RangeCalendarPrev>\n</template>\n"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"name": "index.ts",
|
|
56
|
+
"content": "export { default as RangeCalendar } from './RangeCalendar.vue';\nexport { default as RangeCalendarCell } from './RangeCalendarCell.vue';\nexport { default as RangeCalendarCellTrigger } from './RangeCalendarCellTrigger.vue';\nexport { default as RangeCalendarGrid } from './RangeCalendarGrid.vue';\nexport { default as RangeCalendarGridBody } from './RangeCalendarGridBody.vue';\nexport { default as RangeCalendarGridHead } from './RangeCalendarGridHead.vue';\nexport { default as RangeCalendarGridRow } from './RangeCalendarGridRow.vue';\nexport { default as RangeCalendarHeadCell } from './RangeCalendarHeadCell.vue';\nexport { default as RangeCalendarHeader } from './RangeCalendarHeader.vue';\nexport { default as RangeCalendarHeading } from './RangeCalendarHeading.vue';\nexport { default as RangeCalendarNextButton } from './RangeCalendarNextButton.vue';\nexport { default as RangeCalendarPrevButton } from './RangeCalendarPrevButton.vue';\n"
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
"type": "components:ui"
|
|
60
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "resizable",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "ResizableHandle.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport { SplitterResizeHandle, type SplitterResizeHandleEmits, type SplitterResizeHandleProps, useForwardPropsEmits } from 'reka-ui';\nimport { GripVerticalIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SplitterResizeHandleProps & { withHandle?: boolean }>();\nconst emits = defineEmits<SplitterResizeHandleEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <SplitterResizeHandle\n v-bind=\"forwarded\"\n :class=\"cn('relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 [&[data-orientation=vertical]]:h-px [&[data-orientation=vertical]]:w-full [&[data-orientation=vertical]]:after:left-0 [&[data-orientation=vertical]]:after:h-1 [&[data-orientation=vertical]]:after:w-full [&[data-orientation=vertical]]:after:-translate-y-1/2 [&[data-orientation=vertical]]:after:translate-x-0 [&[data-orientation=vertical]>div]:rotate-90', $attrs.class ?? '')\"\n >\n <template v-if=\"props.withHandle\">\n <div class=\"z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border\">\n <GripVerticalIcon class=\"h-2.5 w-2.5\" />\n </div>\n </template>\n </SplitterResizeHandle>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "ResizablePanelGroup.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport { SplitterGroup, type SplitterGroupEmits, type SplitterGroupProps, useForwardPropsEmits } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SplitterGroupProps>();\nconst emits = defineEmits<SplitterGroupEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <SplitterGroup\n v-bind=\"forwarded\"\n :class=\"cn('flex h-full w-full data-[panel-group-direction=vertical]:flex-col', $attrs.class ?? '')\"\n >\n <slot />\n </SplitterGroup>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "index.ts",
|
|
16
|
+
"content": "export { default as ResizablePanelGroup } from './ResizablePanelGroup.vue';\nexport { default as ResizableHandle } from './ResizableHandle.vue';\nexport { SplitterPanel as ResizablePanel } from 'reka-ui';\n"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"type": "components:ui"
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "scroll-area",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "ScrollArea.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport {\n ScrollAreaCorner,\n ScrollAreaRoot,\n type ScrollAreaRootProps,\n ScrollAreaViewport,\n} from 'reka-ui';\nimport ScrollBar from './ScrollBar.vue';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<ScrollAreaRootProps>();\n</script>\n\n<template>\n <ScrollAreaRoot\n v-bind=\"props\"\n :class=\"cn('relative overflow-hidden', $attrs.class ?? '')\"\n >\n <ScrollAreaViewport class=\"h-full w-full rounded-[inherit]\">\n <slot />\n </ScrollAreaViewport>\n <ScrollBar />\n <ScrollAreaCorner />\n </ScrollAreaRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "ScrollBar.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport { ScrollAreaScrollbar, type ScrollAreaScrollbarProps, ScrollAreaThumb } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = withDefaults(defineProps<ScrollAreaScrollbarProps>(), {\n orientation: 'vertical',\n});\n</script>\n\n<template>\n <ScrollAreaScrollbar\n v-bind=\"props\"\n :class=\"\n cn('flex touch-none select-none transition-colors',\n orientation === 'vertical'\n && 'h-full w-2.5 border-l border-l-transparent p-px',\n orientation === 'horizontal'\n && 'h-2.5 flex-col border-t border-t-transparent p-px',\n $attrs.class ?? '')\"\n >\n <ScrollAreaThumb class=\"relative flex-1 rounded-full bg-border\" />\n </ScrollAreaScrollbar>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "index.ts",
|
|
16
|
+
"content": "export { default as ScrollArea } from './ScrollArea.vue';\nexport { default as ScrollBar } from './ScrollBar.vue';\n"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"type": "components:ui"
|
|
20
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "select",
|
|
3
|
+
"dependencies": [],
|
|
4
|
+
"registryDependencies": [],
|
|
5
|
+
"files": [
|
|
6
|
+
{
|
|
7
|
+
"name": "Select.vue",
|
|
8
|
+
"content": "<script setup lang=\"ts\">\nimport type { SelectRootEmits, SelectRootProps } from 'reka-ui';\nimport { SelectRoot, useForwardPropsEmits } from 'reka-ui';\n\nconst props = defineProps<SelectRootProps>();\nconst emits = defineEmits<SelectRootEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <SelectRoot v-bind=\"forwarded\">\n <slot />\n </SelectRoot>\n</template>\n"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"name": "SelectContent.vue",
|
|
12
|
+
"content": "<script setup lang=\"ts\">\nimport {\n SelectContent,\n type SelectContentEmits,\n type SelectContentProps,\n SelectPortal,\n SelectViewport,\n useForwardPropsEmits,\n} from 'reka-ui';\nimport { SelectScrollDownButton, SelectScrollUpButton } from '.';\nimport { cn } from '@ui/utils';\n\ndefineOptions({\n inheritAttrs: false,\n});\n\nconst props = withDefaults(\n defineProps<SelectContentProps>(),\n {\n position: 'popper',\n },\n);\nconst emits = defineEmits<SelectContentEmits>();\n\nconst forwarded = useForwardPropsEmits(props, emits);\n</script>\n\n<template>\n <SelectPortal>\n <SelectContent\n v-bind=\"{ ...forwarded, ...$attrs }\"\n :class=\"cn(\n 'relative z-50 max-h-96 min-w-32 overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\n position === 'popper'\n && 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',\n $attrs.class ?? '',\n )\n \"\n >\n <SelectScrollUpButton />\n <SelectViewport :class=\"cn('p-1', position === 'popper' && 'h-(--reka-select-trigger-height) w-full min-w-(--reka-select-trigger-width)')\">\n <slot />\n </SelectViewport>\n <SelectScrollDownButton />\n </SelectContent>\n </SelectPortal>\n</template>\n"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"name": "SelectGroup.vue",
|
|
16
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectGroup, type SelectGroupProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectGroupProps>();\n</script>\n\n<template>\n <SelectGroup\n :class=\"cn('p-1 w-full', $attrs.class ?? '')\"\n v-bind=\"props\"\n >\n <slot />\n </SelectGroup>\n</template>\n"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "SelectItem.vue",
|
|
20
|
+
"content": "<script setup lang=\"ts\">\nimport {\n SelectItem,\n SelectItemIndicator,\n type SelectItemProps,\n SelectItemText,\n useForwardProps,\n} from 'reka-ui';\nimport { CheckIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectItemProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <SelectItem\n v-bind=\"forwardedProps\"\n :class=\"\n cn(\n 'relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n $attrs.class ?? '',\n )\n \"\n >\n <span class=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectItemIndicator>\n <CheckIcon class=\"h-4 w-4\" />\n </SelectItemIndicator>\n </span>\n\n <SelectItemText>\n <slot />\n </SelectItemText>\n </SelectItem>\n</template>\n"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "SelectItemText.vue",
|
|
24
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectItemText, type SelectItemTextProps } from 'reka-ui';\n\nconst props = defineProps<SelectItemTextProps>();\n</script>\n\n<template>\n <SelectItemText v-bind=\"props\">\n <slot />\n </SelectItemText>\n</template>\n"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "SelectLabel.vue",
|
|
28
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectLabel, type SelectLabelProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectLabelProps>();\n</script>\n\n<template>\n <SelectLabel :class=\"cn('py-1.5 pl-8 pr-2 text-sm font-semibold', $attrs.class ?? '')\">\n <slot />\n </SelectLabel>\n</template>\n"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"name": "SelectScrollDownButton.vue",
|
|
32
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectScrollDownButton, type SelectScrollDownButtonProps, useForwardProps } from 'reka-ui';\nimport { ChevronDownIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectScrollDownButtonProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <SelectScrollDownButton\n v-bind=\"forwardedProps\"\n :class=\"cn('flex cursor-default items-center justify-center py-1', $attrs.class ?? '')\"\n >\n <slot>\n <ChevronDownIcon class=\"h-4 w-4\" />\n </slot>\n </SelectScrollDownButton>\n</template>\n"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "SelectScrollUpButton.vue",
|
|
36
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectScrollUpButton, type SelectScrollUpButtonProps, useForwardProps } from 'reka-ui';\nimport { ChevronUpIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectScrollUpButtonProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <SelectScrollUpButton\n v-bind=\"forwardedProps\"\n :class=\"cn('flex cursor-default items-center justify-center py-1', $attrs.class ?? '')\"\n >\n <slot>\n <ChevronUpIcon class=\"h-4 w-4\" />\n </slot>\n </SelectScrollUpButton>\n</template>\n"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "SelectSeparator.vue",
|
|
40
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectSeparator, type SelectSeparatorProps } from 'reka-ui';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectSeparatorProps>();\n</script>\n\n<template>\n <SelectSeparator\n v-bind=\"props\"\n :class=\"cn('-mx-1 my-1 h-px bg-muted', $attrs.class ?? '')\"\n />\n</template>\n"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "SelectTrigger.vue",
|
|
44
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectIcon, SelectTrigger, type SelectTriggerProps, useForwardProps } from 'reka-ui';\nimport { ChevronDownIcon } from 'lucide-vue-next';\nimport { cn } from '@ui/utils';\n\nconst props = defineProps<SelectTriggerProps>();\n\nconst forwardedProps = useForwardProps(props);\n</script>\n\n<template>\n <SelectTrigger\n v-bind=\"forwardedProps\"\n :class=\"cn(\n 'flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1',\n $attrs.class ?? '',\n )\"\n >\n <span class=\"break-all\">\n <slot />\n </span>\n <SelectIcon as-child>\n <ChevronDownIcon class=\"w-4 h-4 ml-2 opacity-50\" />\n </SelectIcon>\n </SelectTrigger>\n</template>\n"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "SelectValue.vue",
|
|
48
|
+
"content": "<script setup lang=\"ts\">\nimport { SelectValue, type SelectValueProps } from 'reka-ui';\n\nconst props = defineProps<SelectValueProps>();\n</script>\n\n<template>\n <SelectValue v-bind=\"props\">\n <slot />\n </SelectValue>\n</template>\n"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "index.ts",
|
|
52
|
+
"content": "export { default as Select } from './Select.vue';\nexport { default as SelectValue } from './SelectValue.vue';\nexport { default as SelectTrigger } from './SelectTrigger.vue';\nexport { default as SelectContent } from './SelectContent.vue';\nexport { default as SelectGroup } from './SelectGroup.vue';\nexport { default as SelectItem } from './SelectItem.vue';\nexport { default as SelectItemText } from './SelectItemText.vue';\nexport { default as SelectLabel } from './SelectLabel.vue';\nexport { default as SelectSeparator } from './SelectSeparator.vue';\nexport { default as SelectScrollUpButton } from './SelectScrollUpButton.vue';\nexport { default as SelectScrollDownButton } from './SelectScrollDownButton.vue';\n"
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
"type": "components:ui"
|
|
56
|
+
}
|