sigma-ui
Version:
CLI for SIGMA-UI components.
24 lines • 2.69 kB
JSON
{
"name": "popover",
"dependencies": [],
"registryDependencies": [],
"files": [
{
"name": "Popover.vue",
"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"
},
{
"name": "PopoverContent.vue",
"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 backdrop-blur-(--backdrop-filter-blur) 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"
},
{
"name": "PopoverTrigger.vue",
"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"
},
{
"name": "index.ts",
"content": "export { default as Popover } from './Popover.vue';\nexport { default as PopoverTrigger } from './PopoverTrigger.vue';\nexport { default as PopoverContent } from './PopoverContent.vue';\n"
}
],
"type": "components:ui"
}