@loke/design-system
Version:
A design system with individually importable components
3 lines (2 loc) • 7.33 kB
JavaScript
"use client";
var __create=Object.create;var{getPrototypeOf:__getProtoOf,defineProperty:__defProp,getOwnPropertyNames:__getOwnPropNames,getOwnPropertyDescriptor:__getOwnPropDesc}=Object,__hasOwnProp=Object.prototype.hasOwnProperty;function __accessProp(key){return this[key]}var __toESMCache_node,__toESMCache_esm,__toESM=(mod,isNodeMode,target)=>{var canCache=mod!=null&&typeof mod==="object";if(canCache){var cache=isNodeMode?__toESMCache_node??=new WeakMap:__toESMCache_esm??=new WeakMap,cached=cache.get(mod);if(cached)return cached}target=mod!=null?__create(__getProtoOf(mod)):{};let to=isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target;for(let key of __getOwnPropNames(mod))if(!__hasOwnProp.call(to,key))__defProp(to,key,{get:__accessProp.bind(mod,key),enumerable:!0});if(canCache)cache.set(mod,to);return to},__toCommonJS=(from)=>{var entry=(__moduleCache??=new WeakMap).get(from),desc;if(entry)return entry;if(entry=__defProp({},"__esModule",{value:!0}),from&&typeof from==="object"||typeof from==="function"){for(var key of __getOwnPropNames(from))if(!__hasOwnProp.call(entry,key))__defProp(entry,key,{get:__accessProp.bind(from,key),enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable})}return __moduleCache.set(from,entry),entry},__moduleCache;var __returnValue=(v)=>v;function __exportSetter(name,newValue){this[name]=__returnValue.bind(null,newValue)}var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0,configurable:!0,set:__exportSetter.bind(all,name)})};var exports_select={};__export(exports_select,{SelectValue:()=>SelectValue,SelectTrigger:()=>SelectTrigger,SelectSeparator:()=>SelectSeparator,SelectScrollUpButton:()=>SelectScrollUpButton,SelectScrollDownButton:()=>SelectScrollDownButton,SelectLabel:()=>SelectLabel,SelectItem:()=>SelectItem,SelectGroup:()=>SelectGroup,SelectContent:()=>SelectContent,Select:()=>Select});module.exports=__toCommonJS(exports_select);var import_cn=require("@loke/design-system/cn"),import_icons=require("@loke/icons"),SelectPrimitive=__toESM(require("@loke/ui/select")),jsx_runtime=require("react/jsx-runtime");function Select({...props}){return jsx_runtime.jsx(SelectPrimitive.Root,{"data-slot":"select",...props})}function SelectGroup({className,...props}){return jsx_runtime.jsx(SelectPrimitive.Group,{className:import_cn.cn("scroll-my-1 p-1",className),"data-slot":"select-group",...props})}function SelectValue({...props}){return jsx_runtime.jsx(SelectPrimitive.Value,{"data-slot":"select-value",...props})}function SelectTrigger({className,size="default",children,...props}){return jsx_runtime.jsxs(SelectPrimitive.Trigger,{className:import_cn.cn("flex w-fit select-none items-center justify-between gap-1.5 whitespace-nowrap rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm outline-none transition-colors focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-placeholder:text-muted-foreground *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 dark:hover:bg-input/50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",className),"data-size":size,"data-slot":"select-trigger",...props,children:[children,jsx_runtime.jsx(SelectPrimitive.Icon,{asChild:!0,children:jsx_runtime.jsx(import_icons.ChevronDownIcon,{className:"pointer-events-none size-4 text-muted-foreground"})})]})}function SelectContent({className,children,position="item-aligned",align="center",...props}){return jsx_runtime.jsx(SelectPrimitive.Portal,{children:jsx_runtime.jsxs(SelectPrimitive.Content,{align,className:import_cn.cn("data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-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 relative z-50 max-h-(--loke-select-content-available-height) min-w-36 origin-(--loke-select-content-transform-origin) overflow-y-auto overflow-x-hidden rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[align-trigger=true]:animate-none data-closed:animate-out data-open:animate-in",position==="popper"&&"data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=bottom]:translate-y-1 data-[side=top]:-translate-y-1",className),"data-align-trigger":position==="item-aligned","data-slot":"select-content",position,...props,children:[jsx_runtime.jsx(SelectScrollUpButton,{}),jsx_runtime.jsx(SelectPrimitive.Viewport,{className:import_cn.cn("data-[position=popper]:h-(--loke-select-trigger-height) data-[position=popper]:w-full data-[position=popper]:min-w-(--loke-select-trigger-width)",position==="popper"&&""),"data-position":position,children}),jsx_runtime.jsx(SelectScrollDownButton,{})]})})}function SelectLabel({className,...props}){return jsx_runtime.jsx(SelectPrimitive.Label,{className:import_cn.cn("px-1.5 py-1 text-muted-foreground text-xs",className),"data-slot":"select-label",...props})}function SelectItem({className,children,...props}){return jsx_runtime.jsxs(SelectPrimitive.Item,{className:import_cn.cn("relative flex w-full cursor-default select-none items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",className),"data-slot":"select-item",...props,children:[jsx_runtime.jsx("span",{className:"pointer-events-none absolute right-2 flex size-4 items-center justify-center",children:jsx_runtime.jsx(SelectPrimitive.ItemIndicator,{children:jsx_runtime.jsx(import_icons.CheckIcon,{className:"pointer-events-none"})})}),jsx_runtime.jsx(SelectPrimitive.ItemText,{children})]})}function SelectSeparator({className,...props}){return jsx_runtime.jsx(SelectPrimitive.Separator,{className:import_cn.cn("pointer-events-none -mx-1 my-1 h-px bg-border",className),"data-slot":"select-separator",...props})}function SelectScrollUpButton({className,...props}){return jsx_runtime.jsx(SelectPrimitive.ScrollUpButton,{className:import_cn.cn("z-10 flex cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",className),"data-slot":"select-scroll-up-button",...props,children:jsx_runtime.jsx(import_icons.ChevronUpIcon,{})})}function SelectScrollDownButton({className,...props}){return jsx_runtime.jsx(SelectPrimitive.ScrollDownButton,{className:import_cn.cn("z-10 flex cursor-default items-center justify-center bg-popover py-1 [&_svg:not([class*='size-'])]:size-4",className),"data-slot":"select-scroll-down-button",...props,children:jsx_runtime.jsx(import_icons.ChevronDownIcon,{})})}