@sth87/shadcn-design-system 0.0.22 → 0.0.23
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/dist/cjs/components/Select/Select.cjs +1 -1
- package/dist/cjs/components/Select/Select.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/esm/components/Select/Select.js +108 -96
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/types/components/Select/Select.d.ts +34 -2
- package/dist/types/components/Select/Select.d.ts.map +1 -1
- package/dist/types/components/TreeSelect/index.d.ts +1 -1
- package/dist/types/components/TreeSelect/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),a=require("react"),u=require("../../packages/ui/src/components/select.cjs"),K=require("../../packages/ui/src/components/combobox.cjs"),o=require("../../packages/ui/src/lib/utils.cjs"),O=require("../FloatLabel.cjs"),Q=require("lucide-react"),U=require("../Tooltip/Tooltip.cjs"),V=a.forwardRef(({className:M,label:x,helperText:b,state:m="default",size:s="normal",isFloatLabel:c,infoTooltip:f,clearable:v=!1,placeholder:y="",options:g=[],tagRender:i,multiple:p=!1,value:n,defaultValue:_,onValueChange:w,values:F,defaultValues:S,onValuesChange:N,search:j,clickToRemove:G=!0,overflowBehavior:H="wrap-when-open",disabled:q,onChange:h,onFocus:I,onBlur:C},P)=>{const d=a.useId(),[k,T]=a.useState(n??_??"");a.useEffect(()=>{!p&&n!==void 0&&T(n)},[p,n]);const R=a.useCallback(t=>{const r=t||"";n===void 0&&T(r),w?.(r),h?.(r)},[w,h,n]),A=a.useCallback(t=>{N?.(t),h?.(t)},[N,h]),D={default:"text-muted-foreground",success:"text-success",warning:"text-warning",error:"text-error"},E=c?s==="xl"||s==="lg"?s:"xl":s,J=a.useMemo(()=>{const t=new Map;return g.forEach(r=>{const l=r.group;t.has(l)||t.set(l,[]),t.get(l).push(r)}),t},[g]);return e.jsx("div",{className:M,children:e.jsxs("div",{ref:P,className:o.cn("flex flex-col gap-1.5 relative",{"floating-label relative":c}),children:[!c&&x&&e.jsxs("label",{htmlFor:d,className:"flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:[x,f&&e.jsx(U.Tooltip,{content:f,children:e.jsx(Q.Info,{className:"size-3.5 min-w-3.5"})})]}),e.jsx("div",{className:"relative",children:p?e.jsxs(u.MultiSelect,{values:F,defaultValues:typeof S=="string"?[S]:S,onValuesChange:A,children:[e.jsx(u.MultiSelectTrigger,{id:d,disabled:q,className:o.cn("peer w-full",{"pt-5 pb-1":c&&s!=="lg"},M),size:E,state:m,onFocus:I,onBlur:C,children:e.jsx(u.MultiSelectValue,{placeholder:y,clickToRemove:G&&v,overflowBehavior:H})}),c&&e.jsx(O.FloatingLabel,{htmlFor:d,size:s,infoTooltip:f,children:x}),e.jsx(u.MultiSelectContent,{search:j,children:[...J.entries()].map(([t,r])=>t?e.jsxs(a.Fragment,{children:[e.jsx(u.MultiSelectGroup,{heading:t,children:r.map(l=>e.jsx(u.MultiSelectItem,{value:l.value,disabled:l?.disabled,icon:l?.icon,tagRender:!!i,children:i?i(l):l.label},l.value))}),e.jsx(u.MultiSelectSeparator,{})]},t):r.map(l=>e.jsx(u.MultiSelectItem,{value:l.value,disabled:l?.disabled,icon:l?.icon,tagRender:!!i,children:i?i(l):l.label},l.value)))})]}):e.jsxs(e.Fragment,{children:[e.jsx(K.Combobox,{value:n??k,options:g,placeHolder:y,emptyText:typeof j=="object"?j.emptyMessage:"No results found",onChange:R,clearable:v,disabled:q,id:d,className:o.cn("peer w-full justify-start",{"pt-5 pb-1":c&&s!=="lg"}),size:E,state:m,dropdownClassName:o.cn("opacity-40",{"translate-y-[-8px]":c&&s!=="lg"}),searchable:!!j,tagRender:i,onFocus:I,onBlur:C}),c&&e.jsx(O.FloatingLabel,{htmlFor:d,size:s,infoTooltip:f,shouldFloat:!!(n??k),className:"pointer-events-none",children:x})]})}),b&&e.jsx("p",{className:o.cn("text-xs",m?D[m]:""),children:b})]})})});V.displayName="Select";exports.default=V;
|
|
2
2
|
//# sourceMappingURL=Select.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.cjs","sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n MultiSelect as BaseMultiSelect,\n MultiSelectTrigger as BaseMultiSelectTrigger,\n MultiSelectValue as BaseMultiSelectValue,\n MultiSelectContent as BaseMultiSelectContent,\n MultiSelectItem as BaseMultiSelectItem,\n MultiSelectGroup as BaseMultiSelectGroup,\n MultiSelectSeparator as BaseMultiSelectSeparator,\n} from \"@dsui/ui/components/select\";\nimport {\n Combobox,\n type ComboboxProps,\n type SelectOption as SSelectOption,\n} from \"@dsui/ui/components/combobox\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { FloatingLabel } from \"@/components/FloatLabel\";\nimport { Info } from \"lucide-react\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nexport type SelectOption = SSelectOption;\n\nexport type SelectProps = ComboboxProps & {\n label?: string;\n helperText?: React.ReactNode;\n state?: \"default\" | \"success\" | \"warning\" | \"error\";\n size?: \"xs\" | \"sm\" | \"normal\" | \"lg\" | \"xl\";\n isFloatLabel?: boolean;\n infoTooltip?: React.ReactNode;\n clearable?: boolean;\n placeholder?: string;\n options?: SelectOption[];\n tagRender?: (option: SelectOption) => React.ReactNode;\n multiple?: boolean;\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n values?: string[];\n defaultValues?: string | string[];\n onValuesChange?: (values: string[]) => void;\n search?: boolean | { placeholder?: string; emptyMessage?: string };\n clickToRemove?: boolean;\n overflowBehavior?: \"wrap\" | \"wrap-when-open\" | \"cutoff\";\n className?: string;\n disabled?: boolean;\n};\n\nconst Select = React.forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n className,\n label,\n helperText,\n state = \"default\",\n size = \"normal\",\n isFloatLabel,\n infoTooltip,\n clearable = false,\n placeholder = \"\",\n options = [],\n tagRender,\n multiple = false,\n value,\n defaultValue,\n onValueChange,\n values,\n defaultValues,\n onValuesChange,\n search,\n clickToRemove = true,\n overflowBehavior = \"wrap-when-open\",\n disabled,\n },\n ref\n ) => {\n const selectId = React.useId();\n\n // For single select, use controlled value or internal state\n const [internalValue, setInternalValue] = React.useState(\n value ?? defaultValue ?? \"\"\n );\n\n React.useEffect(() => {\n if (!multiple && value !== undefined) {\n setInternalValue(value);\n }\n }, [multiple, value]);\n\n // Handle single select value change\n const handleSingleValueChange = React.useCallback(\n (newValue?: string | null) => {\n const val = newValue || \"\";\n if (value === undefined) {\n setInternalValue(val);\n }\n onValueChange?.(val);\n },\n [onValueChange, value]\n );\n\n // Helper text styles\n const helperTextStyles = {\n default: \"text-muted-foreground\",\n success: \"text-success\",\n warning: \"text-warning\",\n error: \"text-error\",\n };\n\n // Calculate current size\n const currentSize = isFloatLabel\n ? size === \"xl\" || size === \"lg\"\n ? size\n : \"xl\"\n : size;\n\n // Group options by group property\n const groupedOptions = React.useMemo(() => {\n const groups = new Map<string | undefined, SelectOption[]>();\n options.forEach((option) => {\n const group = option.group;\n if (!groups.has(group)) {\n groups.set(group, []);\n }\n groups.get(group)!.push(option);\n });\n return groups;\n }, [options]);\n\n return (\n <div className={className}>\n <div\n ref={ref}\n className={cn(\"flex flex-col gap-1.5 relative\", {\n \"floating-label relative\": isFloatLabel,\n })}\n >\n {!isFloatLabel && label && (\n <label\n htmlFor={selectId}\n className=\"flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n {label}\n {infoTooltip && (\n <Tooltip content={infoTooltip}>\n <Info className=\"size-3.5 min-w-3.5\" />\n </Tooltip>\n )}\n </label>\n )}\n\n <div className=\"relative\">\n {!multiple ? (\n // Single Mode\n <>\n <Combobox\n value={value ?? internalValue}\n options={options}\n placeHolder={placeholder}\n emptyText={\n typeof search === \"object\"\n ? search.emptyMessage\n : \"No results found\"\n }\n onChange={handleSingleValueChange}\n clearable={clearable}\n disabled={disabled}\n id={selectId}\n className={cn(\n \"peer w-full justify-start\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n }\n // className,\n )}\n size={currentSize}\n state={state}\n dropdownClassName={cn(\"opacity-40\", {\n \"translate-y-[-8px]\": isFloatLabel && size !== \"lg\",\n })}\n searchable={!!search}\n tagRender={tagRender}\n />\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n shouldFloat={!!(value ?? internalValue)}\n className=\"pointer-events-none\"\n >\n {label}\n </FloatingLabel>\n )}\n </>\n ) : (\n // Multi Mode\n <BaseMultiSelect\n values={values}\n defaultValues={\n typeof defaultValues === \"string\"\n ? [defaultValues]\n : defaultValues\n }\n onValuesChange={onValuesChange}\n >\n <BaseMultiSelectTrigger\n id={selectId}\n disabled={disabled}\n className={cn(\n \"peer w-full\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n },\n className\n )}\n size={currentSize}\n state={state}\n >\n <BaseMultiSelectValue\n placeholder={placeholder}\n clickToRemove={clickToRemove && clearable}\n overflowBehavior={overflowBehavior}\n />\n </BaseMultiSelectTrigger>\n\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n >\n {label}\n </FloatingLabel>\n )}\n\n <BaseMultiSelectContent search={search}>\n {[...groupedOptions.entries()].map(([group, items]) => {\n if (group) {\n return (\n <React.Fragment key={group}>\n <BaseMultiSelectGroup heading={group}>\n {items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ))}\n </BaseMultiSelectGroup>\n <BaseMultiSelectSeparator />\n </React.Fragment>\n );\n }\n return items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ));\n })}\n </BaseMultiSelectContent>\n </BaseMultiSelect>\n )}\n </div>\n\n {helperText && (\n <p className={cn(\"text-xs\", state ? helperTextStyles[state] : \"\")}>\n {helperText}\n </p>\n )}\n </div>\n </div>\n );\n }\n);\n\nSelect.displayName = \"Select\";\nexport default Select;\n"],"names":["Select","React","className","label","helperText","state","size","isFloatLabel","infoTooltip","clearable","placeholder","options","tagRender","multiple","value","defaultValue","onValueChange","values","defaultValues","onValuesChange","search","clickToRemove","overflowBehavior","disabled","ref","selectId","internalValue","setInternalValue","handleSingleValueChange","newValue","val","helperTextStyles","currentSize","groupedOptions","groups","option","group","jsx","jsxs","cn","Tooltip","Info","BaseMultiSelect","BaseMultiSelectTrigger","BaseMultiSelectValue","FloatingLabel","BaseMultiSelectContent","items","BaseMultiSelectGroup","BaseMultiSelectItem","BaseMultiSelectSeparator","Fragment","Combobox"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Select.cjs","sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n MultiSelect as BaseMultiSelect,\n MultiSelectTrigger as BaseMultiSelectTrigger,\n MultiSelectValue as BaseMultiSelectValue,\n MultiSelectContent as BaseMultiSelectContent,\n MultiSelectItem as BaseMultiSelectItem,\n MultiSelectGroup as BaseMultiSelectGroup,\n MultiSelectSeparator as BaseMultiSelectSeparator,\n} from \"@dsui/ui/components/select\";\nimport {\n Combobox,\n type ComboboxProps,\n type SelectOption as SSelectOption,\n} from \"@dsui/ui/components/combobox\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { FloatingLabel } from \"@/components/FloatLabel\";\nimport { Info } from \"lucide-react\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nexport type SelectOption = SSelectOption;\n\nexport type SelectProps = Omit<ComboboxProps, \"ref\"> & {\n label?: string;\n helperText?: React.ReactNode;\n state?: \"default\" | \"success\" | \"warning\" | \"error\";\n size?: \"xs\" | \"sm\" | \"normal\" | \"lg\" | \"xl\";\n isFloatLabel?: boolean;\n infoTooltip?: React.ReactNode;\n clearable?: boolean;\n placeholder?: string;\n options?: SelectOption[];\n tagRender?: (option: SelectOption) => React.ReactNode;\n multiple?: boolean;\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n values?: string[];\n defaultValues?: string | string[];\n onValuesChange?: (values: string[]) => void;\n search?: boolean | { placeholder?: string; emptyMessage?: string };\n clickToRemove?: boolean;\n overflowBehavior?: \"wrap\" | \"wrap-when-open\" | \"cutoff\";\n className?: string;\n disabled?: boolean;\n onChange?: (value: string | string[]) => void;\n onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;\n onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;\n};\n\nconst Select = React.forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n className,\n label,\n helperText,\n state = \"default\",\n size = \"normal\",\n isFloatLabel,\n infoTooltip,\n clearable = false,\n placeholder = \"\",\n options = [],\n tagRender,\n multiple = false,\n value,\n defaultValue,\n onValueChange,\n values,\n defaultValues,\n onValuesChange,\n search,\n clickToRemove = true,\n overflowBehavior = \"wrap-when-open\",\n disabled,\n onChange,\n onFocus,\n onBlur,\n },\n ref\n ) => {\n const selectId = React.useId();\n\n // For single select, use controlled value or internal state\n const [internalValue, setInternalValue] = React.useState(\n value ?? defaultValue ?? \"\"\n );\n\n React.useEffect(() => {\n if (!multiple && value !== undefined) {\n setInternalValue(value);\n }\n }, [multiple, value]);\n\n // Handle single select value change\n const handleSingleValueChange = React.useCallback(\n (newValue?: string | null) => {\n const val = newValue || \"\";\n if (value === undefined) {\n setInternalValue(val);\n }\n onValueChange?.(val);\n onChange?.(val);\n },\n [onValueChange, onChange, value]\n );\n\n // Handle multi select values change\n const handleMultiValuesChange = React.useCallback(\n (newValues: string[]) => {\n onValuesChange?.(newValues);\n onChange?.(newValues);\n },\n [onValuesChange, onChange]\n );\n\n // Helper text styles\n const helperTextStyles = {\n default: \"text-muted-foreground\",\n success: \"text-success\",\n warning: \"text-warning\",\n error: \"text-error\",\n };\n\n // Calculate current size\n const currentSize = isFloatLabel\n ? size === \"xl\" || size === \"lg\"\n ? size\n : \"xl\"\n : size;\n\n // Group options by group property\n const groupedOptions = React.useMemo(() => {\n const groups = new Map<string | undefined, SelectOption[]>();\n options.forEach((option) => {\n const group = option.group;\n if (!groups.has(group)) {\n groups.set(group, []);\n }\n groups.get(group)!.push(option);\n });\n return groups;\n }, [options]);\n\n return (\n <div className={className}>\n <div\n ref={ref}\n className={cn(\"flex flex-col gap-1.5 relative\", {\n \"floating-label relative\": isFloatLabel,\n })}\n >\n {!isFloatLabel && label && (\n <label\n htmlFor={selectId}\n className=\"flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n {label}\n {infoTooltip && (\n <Tooltip content={infoTooltip}>\n <Info className=\"size-3.5 min-w-3.5\" />\n </Tooltip>\n )}\n </label>\n )}\n\n <div className=\"relative\">\n {!multiple ? (\n // Single Mode\n <>\n <Combobox\n value={value ?? internalValue}\n options={options}\n placeHolder={placeholder}\n emptyText={\n typeof search === \"object\"\n ? search.emptyMessage\n : \"No results found\"\n }\n onChange={handleSingleValueChange}\n clearable={clearable}\n disabled={disabled}\n id={selectId}\n className={cn(\n \"peer w-full justify-start\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n }\n // className,\n )}\n size={currentSize}\n state={state}\n dropdownClassName={cn(\"opacity-40\", {\n \"translate-y-[-8px]\": isFloatLabel && size !== \"lg\",\n })}\n searchable={!!search}\n tagRender={tagRender}\n onFocus={onFocus}\n onBlur={onBlur}\n />\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n shouldFloat={!!(value ?? internalValue)}\n className=\"pointer-events-none\"\n >\n {label}\n </FloatingLabel>\n )}\n </>\n ) : (\n // Multi Mode\n <BaseMultiSelect\n values={values}\n defaultValues={\n typeof defaultValues === \"string\"\n ? [defaultValues]\n : defaultValues\n }\n onValuesChange={handleMultiValuesChange}\n >\n <BaseMultiSelectTrigger\n id={selectId}\n disabled={disabled}\n className={cn(\n \"peer w-full\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n },\n className\n )}\n size={currentSize}\n state={state}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n <BaseMultiSelectValue\n placeholder={placeholder}\n clickToRemove={clickToRemove && clearable}\n overflowBehavior={overflowBehavior}\n />\n </BaseMultiSelectTrigger>\n\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n >\n {label}\n </FloatingLabel>\n )}\n\n <BaseMultiSelectContent search={search}>\n {[...groupedOptions.entries()].map(([group, items]) => {\n if (group) {\n return (\n <React.Fragment key={group}>\n <BaseMultiSelectGroup heading={group}>\n {items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ))}\n </BaseMultiSelectGroup>\n <BaseMultiSelectSeparator />\n </React.Fragment>\n );\n }\n return items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ));\n })}\n </BaseMultiSelectContent>\n </BaseMultiSelect>\n )}\n </div>\n\n {helperText && (\n <p className={cn(\"text-xs\", state ? helperTextStyles[state] : \"\")}>\n {helperText}\n </p>\n )}\n </div>\n </div>\n );\n }\n);\n\nSelect.displayName = \"Select\";\nexport default Select;\n"],"names":["Select","React","className","label","helperText","state","size","isFloatLabel","infoTooltip","clearable","placeholder","options","tagRender","multiple","value","defaultValue","onValueChange","values","defaultValues","onValuesChange","search","clickToRemove","overflowBehavior","disabled","onChange","onFocus","onBlur","ref","selectId","internalValue","setInternalValue","handleSingleValueChange","newValue","val","handleMultiValuesChange","newValues","helperTextStyles","currentSize","groupedOptions","groups","option","group","jsx","jsxs","cn","Tooltip","Info","BaseMultiSelect","BaseMultiSelectTrigger","BaseMultiSelectValue","FloatingLabel","BaseMultiSelectContent","items","BaseMultiSelectGroup","BaseMultiSelectItem","BaseMultiSelectSeparator","Fragment","Combobox"],"mappings":"saAkDMA,EAASC,EAAM,WACnB,CACE,CACE,UAAAC,EACA,MAAAC,EACA,WAAAC,EACA,MAAAC,EAAQ,UACR,KAAAC,EAAO,SACP,aAAAC,EACA,YAAAC,EACA,UAAAC,EAAY,GACZ,YAAAC,EAAc,GACd,QAAAC,EAAU,CAAA,EACV,UAAAC,EACA,SAAAC,EAAW,GACX,MAAAC,EACA,aAAAC,EACA,cAAAC,EACA,OAAAC,EACA,cAAAC,EACA,eAAAC,EACA,OAAAC,EACA,cAAAC,EAAgB,GAChB,iBAAAC,EAAmB,iBACnB,SAAAC,EACA,SAAAC,EACA,QAAAC,EACA,OAAAC,CAAA,EAEFC,IACG,CACH,MAAMC,EAAW3B,EAAM,MAAA,EAGjB,CAAC4B,EAAeC,CAAgB,EAAI7B,EAAM,SAC9Ca,GAASC,GAAgB,EAAA,EAG3Bd,EAAM,UAAU,IAAM,CAChB,CAACY,GAAYC,IAAU,QACzBgB,EAAiBhB,CAAK,CAE1B,EAAG,CAACD,EAAUC,CAAK,CAAC,EAGpB,MAAMiB,EAA0B9B,EAAM,YACnC+B,GAA6B,CAC5B,MAAMC,EAAMD,GAAY,GACpBlB,IAAU,QACZgB,EAAiBG,CAAG,EAEtBjB,IAAgBiB,CAAG,EACnBT,IAAWS,CAAG,CAChB,EACA,CAACjB,EAAeQ,EAAUV,CAAK,CAAA,EAI3BoB,EAA0BjC,EAAM,YACnCkC,GAAwB,CACvBhB,IAAiBgB,CAAS,EAC1BX,IAAWW,CAAS,CACtB,EACA,CAAChB,EAAgBK,CAAQ,CAAA,EAIrBY,EAAmB,CACvB,QAAS,wBACT,QAAS,eACT,QAAS,eACT,MAAO,YAAA,EAIHC,EAAc9B,EAChBD,IAAS,MAAQA,IAAS,KACxBA,EACA,KACFA,EAGEgC,EAAiBrC,EAAM,QAAQ,IAAM,CACzC,MAAMsC,MAAa,IACnB,OAAA5B,EAAQ,QAAS6B,GAAW,CAC1B,MAAMC,EAAQD,EAAO,MAChBD,EAAO,IAAIE,CAAK,GACnBF,EAAO,IAAIE,EAAO,EAAE,EAEtBF,EAAO,IAAIE,CAAK,EAAG,KAAKD,CAAM,CAChC,CAAC,EACMD,CACT,EAAG,CAAC5B,CAAO,CAAC,EAEZ,OACE+B,EAAAA,IAAC,OAAI,UAAAxC,EACH,SAAAyC,EAAAA,KAAC,MAAA,CACC,IAAAhB,EACA,UAAWiB,EAAAA,GAAG,iCAAkC,CAC9C,0BAA2BrC,CAAA,CAC5B,EAEA,SAAA,CAAA,CAACA,GAAgBJ,GAChBwC,EAAAA,KAAC,QAAA,CACC,QAASf,EACT,UAAU,wGAET,SAAA,CAAAzB,EACAK,SACEqC,UAAA,CAAQ,QAASrC,EAChB,SAAAkC,EAAAA,IAACI,EAAAA,KAAA,CAAK,UAAU,oBAAA,CAAqB,CAAA,CACvC,CAAA,CAAA,CAAA,EAKNJ,EAAAA,IAAC,MAAA,CAAI,UAAU,WACZ,SAAC7B,EA+CA8B,EAAAA,KAACI,EAAAA,YAAA,CACC,OAAA9B,EACA,cACE,OAAOC,GAAkB,SACrB,CAACA,CAAa,EACdA,EAEN,eAAgBgB,EAEhB,SAAA,CAAAQ,EAAAA,IAACM,EAAAA,mBAAA,CACC,GAAIpB,EACJ,SAAAL,EACA,UAAWqB,EAAAA,GACT,cACA,CACE,YAAarC,GAAgBD,IAAS,IAAA,EAExCJ,CAAA,EAEF,KAAMmC,EACN,MAAAhC,EACA,QAAAoB,EACA,OAAAC,EAEA,SAAAgB,EAAAA,IAACO,EAAAA,iBAAA,CACC,YAAAvC,EACA,cAAeW,GAAiBZ,EAChC,iBAAAa,CAAA,CAAA,CACF,CAAA,EAGDf,GACCmC,EAAAA,IAACQ,EAAAA,cAAA,CACC,QAAStB,EACT,KAAAtB,EACA,YAAAE,EAEC,SAAAL,CAAA,CAAA,EAILuC,EAAAA,IAACS,EAAAA,mBAAA,CAAuB,OAAA/B,EACrB,SAAA,CAAC,GAAGkB,EAAe,QAAA,CAAS,EAAE,IAAI,CAAC,CAACG,EAAOW,CAAK,IAC3CX,EAEAE,OAAC1C,EAAM,SAAN,CACC,SAAA,CAAAyC,MAACW,EAAAA,kBAAqB,QAASZ,EAC5B,SAAAW,EAAM,IAAKZ,GACVE,EAAAA,IAACY,EAAAA,gBAAA,CAEC,MAAOd,EAAO,MACd,SAAUA,GAAQ,SAClB,KAAMA,GAAQ,KACd,UAAW,CAAC,CAAC5B,EAEZ,SAAAA,EAAYA,EAAU4B,CAAM,EAAIA,EAAO,KAAA,EANnCA,EAAO,KAAA,CAQf,EACH,QACCe,EAAAA,qBAAA,CAAA,CAAyB,CAAA,CAAA,EAdPd,CAerB,EAGGW,EAAM,IAAKZ,GAChBE,EAAAA,IAACY,EAAAA,gBAAA,CAEC,MAAOd,EAAO,MACd,SAAUA,GAAQ,SAClB,KAAMA,GAAQ,KACd,UAAW,CAAC,CAAC5B,EAEZ,SAAAA,EAAYA,EAAU4B,CAAM,EAAIA,EAAO,KAAA,EANnCA,EAAO,KAAA,CAQf,CACF,CAAA,CACH,CAAA,CAAA,CAAA,EAxHFG,OAAAa,EAAAA,SAAA,CACE,SAAA,CAAAd,EAAAA,IAACe,EAAAA,SAAA,CACC,MAAO3C,GAASe,EAChB,QAAAlB,EACA,YAAaD,EACb,UACE,OAAOU,GAAW,SACdA,EAAO,aACP,mBAEN,SAAUW,EACV,UAAAtB,EACA,SAAAc,EACA,GAAIK,EACJ,UAAWgB,EAAAA,GACT,4BACA,CACE,YAAarC,GAAgBD,IAAS,IAAA,CACxC,EAGF,KAAM+B,EACN,MAAAhC,EACA,kBAAmBuC,EAAAA,GAAG,aAAc,CAClC,qBAAsBrC,GAAgBD,IAAS,IAAA,CAChD,EACD,WAAY,CAAC,CAACc,EACd,UAAAR,EACA,QAAAa,EACA,OAAAC,CAAA,CAAA,EAEDnB,GACCmC,EAAAA,IAACQ,EAAAA,cAAA,CACC,QAAStB,EACT,KAAAtB,EACA,YAAAE,EACA,YAAa,CAAC,EAAEM,GAASe,GACzB,UAAU,sBAET,SAAA1B,CAAA,CAAA,CACH,CAAA,CAEJ,EAiFJ,EAECC,GACCsC,EAAAA,IAAC,IAAA,CAAE,UAAWE,EAAAA,GAAG,UAAWvC,EAAQ+B,EAAiB/B,CAAK,EAAI,EAAE,EAC7D,SAAAD,CAAA,CACH,CAAA,CAAA,CAAA,EAGN,CAEJ,CACF,EAEAJ,EAAO,YAAc"}
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("./components/Command/index.cjs"),C=require("./components/Popover/index.cjs"),g=require("./components/Tour/index.cjs"),c=require("./components/QrCode/index.cjs"),m=require("./components/Stepper/index.cjs"),x=require("./components/Pagination/index.cjs"),f=require("./components/DropdownMenu/index.cjs"),R=require("./components/ContextMenu/index.cjs"),I=require("./components/FloatLabel.cjs"),M=require("./components/TimeGridView.cjs"),P=require("./components/WheelColumn.cjs"),G=require("./components/Marquee/index.cjs");require("@radix-ui/react-slot");require("./packages/ui/src/components/button.cjs");const d=require("./packages/ui/src/components/button-group.cjs");require("./packages/ui/src/components/input.cjs");require("./packages/ui/src/components/textarea.cjs");const k=require("./packages/ui/src/components/label.cjs");require("./packages/ui/src/components/select.cjs");require("./packages/ui/src/components/combobox.cjs");require("react/jsx-runtime");require("@radix-ui/react-tooltip");const w=require("./packages/ui/src/lib/utils.cjs");require("react");require("lucide-react");require("react-day-picker");require("./packages/ui/src/components/popover.cjs");require("@radix-ui/react-separator");require("./packages/ui/src/components/switch.cjs");require("vaul");require("@radix-ui/react-scroll-area");const B=require("./packages/ui/src/components/tree-view.cjs");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-avatar");require("./packages/ui/src/components/badge.cjs");require("./packages/ui/src/components/checkbox.cjs");require("@radix-ui/react-collapsible");require("cmdk");require("@radix-ui/react-dialog");require("@radix-ui/react-dropdown-menu");require("./packages/ui/src/components/input-otp.cjs");require("./packages/ui/src/components/radio-group.cjs");const A=require("./packages/ui/src/components/sidebar.cjs");require("@radix-ui/react-slider");require("./packages/ui/src/components/tabs.cjs");require("./packages/ui/src/components/toggle.cjs");const D=require("./hooks/use-callback-ref.cjs"),v=require("./hooks/use-debounced-callback.cjs"),y=require("./hooks/use-debounced-value.cjs"),V=require("./hooks/use-intersection-observer.cjs"),F=require("./hooks/use-script.cjs"),E=require("./hooks/use-scroll-lock.cjs"),O=require("./hooks/use-on-click-outside.cjs"),z=require("./hooks/use-event-listener.cjs"),L=require("./hooks/use-media-query.cjs"),h=require("./hooks/use-data-table.cjs"),W=require("./components/Badge/Badge.cjs"),Q=require("./components/Breadcrumb/Breadcrumb.cjs"),H=require("./components/Button/Button.cjs"),$=require("./components/Button/ButtonGroup.cjs"),N=require("./components/Checkbox/Checkbox.cjs"),U=require("./components/Collapsible/Collapsible.cjs"),_=require("./components/Dialog/Dialog.cjs"),j=require("./components/Glass/Glass.cjs"),J=require("./components/Input/Input.cjs"),K=require("./components/InputOTP/InputOTP.cjs"),X=require("./components/Radio/Radio.cjs"),Y=require("./components/ScrollArea/ScrollArea.cjs"),Z=require("./components/Select/Select.cjs"),ee=require("./components/Separator/Separator.cjs"),re=require("./components/Sheet/Sheet.cjs"),te=require("./components/Skeleton/Skeleton.cjs"),oe=require("./components/Slider/Slider.cjs"),ie=require("./components/Switch/Switch.cjs"),ue=require("./components/Tabs/Tabs.cjs"),ae=require("./components/Textarea/Textarea.cjs"),ne=require("./components/Toggle/Toggle.cjs"),se=require("./components/Rate/Rate.cjs"),i=require("./components/Resizable/Resizable.cjs"),le=require("./components/Accordion/Accordion.cjs"),ce=require("./lib/TextAnimation/BlurText.cjs"),de=require("./lib/TextAnimation/CircularText.cjs"),qe=require("./lib/TextAnimation/TextPressureEffect.cjs"),be=require("./lib/TextAnimation/TypingText.cjs"),Se=require("./components/Avatar/Avatar.cjs"),q=require("./components/Calendar/Calendar.cjs"),pe=require("./components/DatePicker/DatePicker.cjs"),Te=require("./components/DatePicker/RangePicker.cjs"),Ce=require("./components/DatePicker/TimePicker.cjs"),e=require("./components/Sidebar/Sidebar.cjs"),a=require("./components/Toast/Toast.cjs"),ge=require("./components/Tooltip/Tooltip.cjs"),me=require("./components/Upload/Upload.cjs"),xe=require("./components/QrCode/QrCode.cjs"),fe=require("./components/Stepper/Stepper.cjs"),Re=require("./components/Table/data-table.cjs"),Ie=require("./components/Table/data-table-pagination.cjs"),n=require("./packages/ui/src/components/resizable.cjs"),s=require("./packages/ui/src/components/accordion.cjs"),l=require("./components/ImageViewer/ImageViewer.cjs"),b=require("./components/Carousel/Carousel.cjs"),t=require("./components/Cropper/Cropper.cjs"),S=require("./components/Cropper/CropperTool.cjs"),o=require("./components/Cropper/utils.cjs"),r=require("./components/Interactive/CursorFollow.cjs"),u=require("./components/Masonry/Masonry.cjs"),p=require("./components/Masonry/MasonryWrapper.cjs"),Me=require("./lib/TextAnimation/RotatingText.cjs"),Pe=require("./lib/TextAnimation/FlipWords.cjs"),Ge=require("./lib/TextAnimation/GradientText.cjs"),ke=require("./lib/TextAnimation/RollingText.cjs"),we=require("./lib/TextAnimation/ShimmeringText.cjs"),Be=require("./lib/TextAnimation/SplittingText.cjs"),Ae=require("./lib/TextAnimation/TextGenerateEffect.cjs"),De=require("./lib/TextAnimation/TextHoverEffect.cjs"),ve=require("./lib/TextAnimation/WritingText.cjs");exports.Command=T.Command;exports.Popover=C.Popover;exports.Tour=g.Tour;exports.QRCode=c.QRCode;exports.QrCode=c.QRCode;exports.Stepper=m.Stepper;exports.Pagination=x.Pagination;exports.DropdownMenu=f.DropdownMenu;exports.ContextMenu=R.ContextMenu;exports.FloatingLabel=I.FloatingLabel;exports.TimeGridView=M.TimeGridView;exports.WheelColumn=P.TimeColumnwheel;exports.Marquee=G.Marquee;exports.ButtonGroupSeparator=d.ButtonGroupSeparator;exports.ButtonGroupText=d.ButtonGroupText;exports.Label=k.Label;exports.cn=w.cn;exports.TreeSelect=B.TreeView;exports.useSidebar=A.useSidebar;exports.useCallbackRef=D.useCallbackRef;exports.useDebouncedCallback=v.useDebouncedCallback;exports.useDebounceValue=y.useDebounceValue;exports.useIntersectionObserver=V.useIntersectionObserver;exports.useScript=F.useScript;exports.useScrollLock=E.useScrollLock;exports.useOnClickOutside=O.useOnClickOutside;exports.useEventListener=z.useEventListener;exports.useMediaQuery=L.useMediaQuery;exports.useDataTable=h.useDataTable;exports.Badge=W.default;exports.Breadcrumb=Q.default;exports.Button=H.default;exports.ButtonGroup=$.default;exports.Checkbox=N.default;exports.Collapsible=U.default;exports.Dialog=_.default;exports.Glass=j.default;exports.Input=J.default;exports.InputOTP=K.default;exports.Radio=X.default;exports.ScrollArea=Y.ScrollArea;exports.Select=Z.default;exports.Separator=ee.default;exports.Sheet=re.default;exports.Skeleton=te.default;exports.Slider=oe.default;exports.Switch=ie.default;exports.Tabs=ue.default;exports.Textarea=ae.default;exports.Toggle=ne.default;exports.Rate=se.default;exports.Handle=i.Handle;exports.Panel=i.Panel;exports.Resizable=i.default;exports.ResizableWrapper=i.ResizableWrapper;exports.Accordion=le.default;exports.BlurText=ce.default;exports.CircularText=de.default;exports.TextPressure=qe.default;exports.TypingText=be.default;exports.Avatar=Se.Avatar;exports.Calendar=q.Calendar;exports.CalendarDayButton=q.CalendarDayButton;exports.DatePicker=pe.DatePicker;exports.RangePicker=Te.RangePicker;exports.TimePicker=Ce.TimePicker;exports.Sidebar=e.Sidebar;exports.SidebarContent=e.SidebarContent;exports.SidebarFooter=e.SidebarFooter;exports.SidebarGroup=e.SidebarGroup;exports.SidebarGroupAction=e.SidebarGroupAction;exports.SidebarGroupContent=e.SidebarGroupContent;exports.SidebarGroupLabel=e.SidebarGroupLabel;exports.SidebarHeader=e.SidebarHeader;exports.SidebarInput=e.SidebarInput;exports.SidebarInset=e.SidebarInset;exports.SidebarMenu=e.SidebarMenu;exports.SidebarMenuAction=e.SidebarMenuAction;exports.SidebarMenuBadge=e.SidebarMenuBadge;exports.SidebarMenuButton=e.SidebarMenuButton;exports.SidebarMenuItem=e.SidebarMenuItem;exports.SidebarMenuSkeleton=e.SidebarMenuSkeleton;exports.SidebarMenuSub=e.SidebarMenuSub;exports.SidebarMenuSubButton=e.SidebarMenuSubButton;exports.SidebarMenuSubItem=e.SidebarMenuSubItem;exports.SidebarProvider=e.SidebarProvider;exports.SidebarRail=e.SidebarRail;exports.SidebarSeparator=e.SidebarSeparator;exports.SidebarTrigger=e.SidebarTrigger;exports.Toast=a.toast;exports.Toaster=a.Toaster;exports.toast=a.toast;exports.Tooltip=ge.Tooltip;exports.Upload=me.Upload;exports.useQRCode=xe.useQRCode;exports.useStepper=fe.useStepper;exports.DataTable=Re.DataTable;exports.DataTablePagination=Ie.DataTablePagination;exports.ResizableHandle=n.ResizableHandle;exports.ResizablePanel=n.ResizablePanel;exports.ResizablePanelGroup=n.ResizablePanelGroup;exports.AccordionContent=s.AccordionContent;exports.AccordionItem=s.AccordionItem;exports.AccordionTrigger=s.AccordionTrigger;exports.ImageViewer=l.ImageViewer;exports.ImageViewerGroup=l.ImageViewerGroup;exports.ImageViewerImage=l.ImageViewerImage;exports.Carousel=b.Carousel;exports.CarouselSlide=b.CarouselSlide;exports.Cropper=t.Root;exports.CropperArea=t.Area;exports.CropperImage=t.Image;exports.CropperVideo=t.Video;exports.useCropper=t.useCropper;exports.CropperTool=S.CropperTool;exports.useCropperTool=S.useCropperTool;exports.base64ToBlob=o.base64ToBlob;exports.base64ToFile=o.base64ToFile;exports.downloadImage=o.downloadImage;exports.getCroppedImg=o.getCroppedImg;exports.rotateSize=o.rotateSize;exports.Cursor=r.Cursor;exports.CursorFollow=r.CursorFollow;exports.CursorProvider=r.CursorProvider;exports.TRANSITION_PRESETS=r.TRANSITION_PRESETS;exports.useCursor=r.useCursor;exports.useCursorFollow=r.useCursorFollow;exports.Item=u.Item;exports.MasonryItem=u.MasonryItem;exports.MasonryRoot=u.MasonryRoot;exports.Root=u.Root;exports.Masonry=p.Masonry;exports.MasonryComponent=p.MasonryComponent;exports.RotatingText=Me.RotatingText;exports.FlipWords=Pe.FlipWords;exports.GradientText=Ge.GradientText;exports.RollingText=ke.RollingText;exports.ShimmeringText=we.ShimmeringText;exports.SplittingText=Be.SplittingText;exports.TextGenerateEffect=Ae.TextGenerateEffect;exports.TextHoverEffect=De.TextHoverEffect;exports.WritingText=ve.WritingText;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const T=require("./components/Command/index.cjs"),C=require("./components/Popover/index.cjs"),g=require("./components/Tour/index.cjs"),c=require("./components/QrCode/index.cjs"),m=require("./components/Stepper/index.cjs"),x=require("./components/Pagination/index.cjs"),f=require("./components/DropdownMenu/index.cjs"),R=require("./components/ContextMenu/index.cjs"),I=require("./components/FloatLabel.cjs"),M=require("./components/TimeGridView.cjs"),P=require("./components/WheelColumn.cjs"),G=require("./components/Marquee/index.cjs");require("@radix-ui/react-slot");require("./packages/ui/src/components/button.cjs");const d=require("./packages/ui/src/components/button-group.cjs");require("./packages/ui/src/components/input.cjs");require("./packages/ui/src/components/textarea.cjs");const k=require("./packages/ui/src/components/label.cjs");require("./packages/ui/src/components/select.cjs");require("./packages/ui/src/components/combobox.cjs");require("react/jsx-runtime");require("@radix-ui/react-tooltip");const w=require("./packages/ui/src/lib/utils.cjs");require("react");require("lucide-react");require("react-day-picker");require("./packages/ui/src/components/popover.cjs");require("@radix-ui/react-separator");require("./packages/ui/src/components/switch.cjs");require("vaul");require("@radix-ui/react-scroll-area");const B=require("./packages/ui/src/components/tree-view.cjs");require("@radix-ui/react-alert-dialog");require("@radix-ui/react-avatar");require("./packages/ui/src/components/badge.cjs");require("./packages/ui/src/components/checkbox.cjs");require("@radix-ui/react-collapsible");require("cmdk");require("@radix-ui/react-dialog");require("@radix-ui/react-dropdown-menu");require("./packages/ui/src/components/input-otp.cjs");require("./packages/ui/src/components/radio-group.cjs");const A=require("./packages/ui/src/components/sidebar.cjs");require("@radix-ui/react-slider");require("./packages/ui/src/components/tabs.cjs");require("./packages/ui/src/components/toggle.cjs");const D=require("./hooks/use-callback-ref.cjs"),v=require("./hooks/use-debounced-callback.cjs"),y=require("./hooks/use-debounced-value.cjs"),V=require("./hooks/use-intersection-observer.cjs"),F=require("./hooks/use-script.cjs"),E=require("./hooks/use-scroll-lock.cjs"),O=require("./hooks/use-on-click-outside.cjs"),z=require("./hooks/use-event-listener.cjs"),L=require("./hooks/use-media-query.cjs"),h=require("./hooks/use-data-table.cjs"),W=require("./components/Badge/Badge.cjs"),Q=require("./components/Breadcrumb/Breadcrumb.cjs"),H=require("./components/Button/Button.cjs"),$=require("./components/Button/ButtonGroup.cjs"),N=require("./components/Checkbox/Checkbox.cjs"),U=require("./components/Collapsible/Collapsible.cjs"),_=require("./components/Dialog/Dialog.cjs"),j=require("./components/Glass/Glass.cjs"),J=require("./components/Input/Input.cjs"),K=require("./components/InputOTP/InputOTP.cjs"),X=require("./components/Radio/Radio.cjs"),Y=require("./components/ScrollArea/ScrollArea.cjs"),Z=require("./components/Select/Select.cjs"),ee=require("./components/Separator/Separator.cjs"),re=require("./components/Sheet/Sheet.cjs"),oe=require("./components/Skeleton/Skeleton.cjs"),te=require("./components/Slider/Slider.cjs"),ie=require("./components/Switch/Switch.cjs"),ue=require("./components/Tabs/Tabs.cjs"),ae=require("./components/Textarea/Textarea.cjs"),ne=require("./components/Toggle/Toggle.cjs"),se=require("./components/Rate/Rate.cjs"),i=require("./components/Resizable/Resizable.cjs"),le=require("./components/Accordion/Accordion.cjs"),ce=require("./lib/TextAnimation/BlurText.cjs"),de=require("./lib/TextAnimation/CircularText.cjs"),qe=require("./lib/TextAnimation/TextPressureEffect.cjs"),be=require("./lib/TextAnimation/TypingText.cjs"),Se=require("./components/Avatar/Avatar.cjs"),q=require("./components/Calendar/Calendar.cjs"),pe=require("./components/DatePicker/DatePicker.cjs"),Te=require("./components/DatePicker/RangePicker.cjs"),Ce=require("./components/DatePicker/TimePicker.cjs"),e=require("./components/Sidebar/Sidebar.cjs"),a=require("./components/Toast/Toast.cjs"),ge=require("./components/Tooltip/Tooltip.cjs"),me=require("./components/Upload/Upload.cjs"),xe=require("./components/QrCode/QrCode.cjs"),fe=require("./components/Stepper/Stepper.cjs"),Re=require("./components/Table/data-table.cjs"),Ie=require("./components/Table/data-table-pagination.cjs"),n=require("./packages/ui/src/components/resizable.cjs"),s=require("./packages/ui/src/components/accordion.cjs"),l=require("./components/ImageViewer/ImageViewer.cjs"),b=require("./components/Carousel/Carousel.cjs"),o=require("./components/Cropper/Cropper.cjs"),S=require("./components/Cropper/CropperTool.cjs"),t=require("./components/Cropper/utils.cjs"),r=require("./components/Interactive/CursorFollow.cjs"),u=require("./components/Masonry/Masonry.cjs"),p=require("./components/Masonry/MasonryWrapper.cjs"),Me=require("./lib/TextAnimation/RotatingText.cjs"),Pe=require("./lib/TextAnimation/FlipWords.cjs"),Ge=require("./lib/TextAnimation/GradientText.cjs"),ke=require("./lib/TextAnimation/RollingText.cjs"),we=require("./lib/TextAnimation/ShimmeringText.cjs"),Be=require("./lib/TextAnimation/SplittingText.cjs"),Ae=require("./lib/TextAnimation/TextGenerateEffect.cjs"),De=require("./lib/TextAnimation/TextHoverEffect.cjs"),ve=require("./lib/TextAnimation/WritingText.cjs");exports.Command=T.Command;exports.Popover=C.Popover;exports.Tour=g.Tour;exports.QRCode=c.QRCode;exports.QrCode=c.QRCode;exports.Stepper=m.Stepper;exports.Pagination=x.Pagination;exports.DropdownMenu=f.DropdownMenu;exports.ContextMenu=R.ContextMenu;exports.FloatingLabel=I.FloatingLabel;exports.TimeGridView=M.TimeGridView;exports.WheelColumn=P.TimeColumnwheel;exports.Marquee=G.Marquee;exports.ButtonGroupSeparator=d.ButtonGroupSeparator;exports.ButtonGroupText=d.ButtonGroupText;exports.Label=k.Label;exports.cn=w.cn;exports.TreeView=B.TreeView;exports.useSidebar=A.useSidebar;exports.useCallbackRef=D.useCallbackRef;exports.useDebouncedCallback=v.useDebouncedCallback;exports.useDebounceValue=y.useDebounceValue;exports.useIntersectionObserver=V.useIntersectionObserver;exports.useScript=F.useScript;exports.useScrollLock=E.useScrollLock;exports.useOnClickOutside=O.useOnClickOutside;exports.useEventListener=z.useEventListener;exports.useMediaQuery=L.useMediaQuery;exports.useDataTable=h.useDataTable;exports.Badge=W.default;exports.Breadcrumb=Q.default;exports.Button=H.default;exports.ButtonGroup=$.default;exports.Checkbox=N.default;exports.Collapsible=U.default;exports.Dialog=_.default;exports.Glass=j.default;exports.Input=J.default;exports.InputOTP=K.default;exports.Radio=X.default;exports.ScrollArea=Y.ScrollArea;exports.Select=Z.default;exports.Separator=ee.default;exports.Sheet=re.default;exports.Skeleton=oe.default;exports.Slider=te.default;exports.Switch=ie.default;exports.Tabs=ue.default;exports.Textarea=ae.default;exports.Toggle=ne.default;exports.Rate=se.default;exports.Handle=i.Handle;exports.Panel=i.Panel;exports.Resizable=i.default;exports.ResizableWrapper=i.ResizableWrapper;exports.Accordion=le.default;exports.BlurText=ce.default;exports.CircularText=de.default;exports.TextPressure=qe.default;exports.TypingText=be.default;exports.Avatar=Se.Avatar;exports.Calendar=q.Calendar;exports.CalendarDayButton=q.CalendarDayButton;exports.DatePicker=pe.DatePicker;exports.RangePicker=Te.RangePicker;exports.TimePicker=Ce.TimePicker;exports.Sidebar=e.Sidebar;exports.SidebarContent=e.SidebarContent;exports.SidebarFooter=e.SidebarFooter;exports.SidebarGroup=e.SidebarGroup;exports.SidebarGroupAction=e.SidebarGroupAction;exports.SidebarGroupContent=e.SidebarGroupContent;exports.SidebarGroupLabel=e.SidebarGroupLabel;exports.SidebarHeader=e.SidebarHeader;exports.SidebarInput=e.SidebarInput;exports.SidebarInset=e.SidebarInset;exports.SidebarMenu=e.SidebarMenu;exports.SidebarMenuAction=e.SidebarMenuAction;exports.SidebarMenuBadge=e.SidebarMenuBadge;exports.SidebarMenuButton=e.SidebarMenuButton;exports.SidebarMenuItem=e.SidebarMenuItem;exports.SidebarMenuSkeleton=e.SidebarMenuSkeleton;exports.SidebarMenuSub=e.SidebarMenuSub;exports.SidebarMenuSubButton=e.SidebarMenuSubButton;exports.SidebarMenuSubItem=e.SidebarMenuSubItem;exports.SidebarProvider=e.SidebarProvider;exports.SidebarRail=e.SidebarRail;exports.SidebarSeparator=e.SidebarSeparator;exports.SidebarTrigger=e.SidebarTrigger;exports.Toast=a.toast;exports.Toaster=a.Toaster;exports.toast=a.toast;exports.Tooltip=ge.Tooltip;exports.Upload=me.Upload;exports.useQRCode=xe.useQRCode;exports.useStepper=fe.useStepper;exports.DataTable=Re.DataTable;exports.DataTablePagination=Ie.DataTablePagination;exports.ResizableHandle=n.ResizableHandle;exports.ResizablePanel=n.ResizablePanel;exports.ResizablePanelGroup=n.ResizablePanelGroup;exports.AccordionContent=s.AccordionContent;exports.AccordionItem=s.AccordionItem;exports.AccordionTrigger=s.AccordionTrigger;exports.ImageViewer=l.ImageViewer;exports.ImageViewerGroup=l.ImageViewerGroup;exports.ImageViewerImage=l.ImageViewerImage;exports.Carousel=b.Carousel;exports.CarouselSlide=b.CarouselSlide;exports.Cropper=o.Root;exports.CropperArea=o.Area;exports.CropperImage=o.Image;exports.CropperVideo=o.Video;exports.useCropper=o.useCropper;exports.CropperTool=S.CropperTool;exports.useCropperTool=S.useCropperTool;exports.base64ToBlob=t.base64ToBlob;exports.base64ToFile=t.base64ToFile;exports.downloadImage=t.downloadImage;exports.getCroppedImg=t.getCroppedImg;exports.rotateSize=t.rotateSize;exports.Cursor=r.Cursor;exports.CursorFollow=r.CursorFollow;exports.CursorProvider=r.CursorProvider;exports.TRANSITION_PRESETS=r.TRANSITION_PRESETS;exports.useCursor=r.useCursor;exports.useCursorFollow=r.useCursorFollow;exports.Item=u.Item;exports.MasonryItem=u.MasonryItem;exports.MasonryRoot=u.MasonryRoot;exports.Root=u.Root;exports.Masonry=p.Masonry;exports.MasonryComponent=p.MasonryComponent;exports.RotatingText=Me.RotatingText;exports.FlipWords=Pe.FlipWords;exports.GradientText=Ge.GradientText;exports.RollingText=ke.RollingText;exports.ShimmeringText=we.ShimmeringText;exports.SplittingText=Be.SplittingText;exports.TextGenerateEffect=Ae.TextGenerateEffect;exports.TextHoverEffect=De.TextHoverEffect;exports.WritingText=ve.WritingText;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,142 +1,152 @@
|
|
|
1
|
-
import { jsx as r, jsxs as m, Fragment as
|
|
2
|
-
import
|
|
3
|
-
import { MultiSelect as
|
|
4
|
-
import { Combobox as
|
|
5
|
-
import { cn as
|
|
6
|
-
import { FloatingLabel as
|
|
7
|
-
import { Info as
|
|
8
|
-
import { Tooltip as
|
|
9
|
-
const
|
|
1
|
+
import { jsx as r, jsxs as m, Fragment as U } from "react/jsx-runtime";
|
|
2
|
+
import s from "react";
|
|
3
|
+
import { MultiSelect as W, MultiSelectTrigger as X, MultiSelectValue as Y, MultiSelectContent as Z, MultiSelectGroup as $, MultiSelectItem as G, MultiSelectSeparator as B } from "../../packages/ui/src/components/select.js";
|
|
4
|
+
import { Combobox as F } from "../../packages/ui/src/components/combobox.js";
|
|
5
|
+
import { cn as u } from "../../packages/ui/src/lib/utils.js";
|
|
6
|
+
import { FloatingLabel as H } from "../FloatLabel.js";
|
|
7
|
+
import { Info as R } from "lucide-react";
|
|
8
|
+
import { Tooltip as z } from "../Tooltip/Tooltip.js";
|
|
9
|
+
const L = s.forwardRef(
|
|
10
10
|
({
|
|
11
|
-
className:
|
|
12
|
-
label:
|
|
11
|
+
className: M,
|
|
12
|
+
label: o,
|
|
13
13
|
helperText: w,
|
|
14
14
|
state: f = "default",
|
|
15
15
|
size: t = "normal",
|
|
16
|
-
isFloatLabel:
|
|
16
|
+
isFloatLabel: n,
|
|
17
17
|
infoTooltip: p,
|
|
18
18
|
clearable: y = !1,
|
|
19
|
-
placeholder:
|
|
20
|
-
options:
|
|
21
|
-
tagRender:
|
|
22
|
-
multiple:
|
|
23
|
-
value:
|
|
24
|
-
defaultValue:
|
|
25
|
-
onValueChange:
|
|
26
|
-
values:
|
|
27
|
-
defaultValues:
|
|
28
|
-
onValuesChange:
|
|
19
|
+
placeholder: N = "",
|
|
20
|
+
options: x = [],
|
|
21
|
+
tagRender: d,
|
|
22
|
+
multiple: S = !1,
|
|
23
|
+
value: a,
|
|
24
|
+
defaultValue: O,
|
|
25
|
+
onValueChange: b,
|
|
26
|
+
values: T,
|
|
27
|
+
defaultValues: v,
|
|
28
|
+
onValuesChange: I,
|
|
29
29
|
search: h,
|
|
30
|
-
clickToRemove:
|
|
31
|
-
overflowBehavior:
|
|
32
|
-
disabled:
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
30
|
+
clickToRemove: q = !0,
|
|
31
|
+
overflowBehavior: A = "wrap-when-open",
|
|
32
|
+
disabled: j,
|
|
33
|
+
onChange: g,
|
|
34
|
+
onFocus: C,
|
|
35
|
+
onBlur: k
|
|
36
|
+
}, D) => {
|
|
37
|
+
const i = s.useId(), [E, V] = s.useState(
|
|
38
|
+
a ?? O ?? ""
|
|
36
39
|
);
|
|
37
|
-
|
|
38
|
-
!
|
|
39
|
-
}, [
|
|
40
|
-
const
|
|
40
|
+
s.useEffect(() => {
|
|
41
|
+
!S && a !== void 0 && V(a);
|
|
42
|
+
}, [S, a]);
|
|
43
|
+
const J = s.useCallback(
|
|
41
44
|
(l) => {
|
|
42
|
-
const
|
|
43
|
-
|
|
45
|
+
const c = l || "";
|
|
46
|
+
a === void 0 && V(c), b?.(c), g?.(c);
|
|
44
47
|
},
|
|
45
|
-
[
|
|
46
|
-
),
|
|
48
|
+
[b, g, a]
|
|
49
|
+
), K = s.useCallback(
|
|
50
|
+
(l) => {
|
|
51
|
+
I?.(l), g?.(l);
|
|
52
|
+
},
|
|
53
|
+
[I, g]
|
|
54
|
+
), P = {
|
|
47
55
|
default: "text-muted-foreground",
|
|
48
56
|
success: "text-success",
|
|
49
57
|
warning: "text-warning",
|
|
50
58
|
error: "text-error"
|
|
51
|
-
},
|
|
59
|
+
}, _ = n ? t === "xl" || t === "lg" ? t : "xl" : t, Q = s.useMemo(() => {
|
|
52
60
|
const l = /* @__PURE__ */ new Map();
|
|
53
|
-
return
|
|
54
|
-
const e =
|
|
55
|
-
l.has(e) || l.set(e, []), l.get(e).push(
|
|
61
|
+
return x.forEach((c) => {
|
|
62
|
+
const e = c.group;
|
|
63
|
+
l.has(e) || l.set(e, []), l.get(e).push(c);
|
|
56
64
|
}), l;
|
|
57
|
-
}, [
|
|
58
|
-
return /* @__PURE__ */ r("div", { className:
|
|
65
|
+
}, [x]);
|
|
66
|
+
return /* @__PURE__ */ r("div", { className: M, children: /* @__PURE__ */ m(
|
|
59
67
|
"div",
|
|
60
68
|
{
|
|
61
|
-
ref:
|
|
62
|
-
className:
|
|
63
|
-
"floating-label relative":
|
|
69
|
+
ref: D,
|
|
70
|
+
className: u("flex flex-col gap-1.5 relative", {
|
|
71
|
+
"floating-label relative": n
|
|
64
72
|
}),
|
|
65
73
|
children: [
|
|
66
|
-
!
|
|
74
|
+
!n && o && /* @__PURE__ */ m(
|
|
67
75
|
"label",
|
|
68
76
|
{
|
|
69
77
|
htmlFor: i,
|
|
70
78
|
className: "flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
|
|
71
79
|
children: [
|
|
72
|
-
|
|
73
|
-
p && /* @__PURE__ */ r(
|
|
80
|
+
o,
|
|
81
|
+
p && /* @__PURE__ */ r(z, { content: p, children: /* @__PURE__ */ r(R, { className: "size-3.5 min-w-3.5" }) })
|
|
74
82
|
]
|
|
75
83
|
}
|
|
76
84
|
),
|
|
77
|
-
/* @__PURE__ */ r("div", { className: "relative", children:
|
|
85
|
+
/* @__PURE__ */ r("div", { className: "relative", children: S ? (
|
|
78
86
|
// Multi Mode
|
|
79
87
|
/* @__PURE__ */ m(
|
|
80
|
-
|
|
88
|
+
W,
|
|
81
89
|
{
|
|
82
|
-
values:
|
|
83
|
-
defaultValues: typeof
|
|
84
|
-
onValuesChange:
|
|
90
|
+
values: T,
|
|
91
|
+
defaultValues: typeof v == "string" ? [v] : v,
|
|
92
|
+
onValuesChange: K,
|
|
85
93
|
children: [
|
|
86
94
|
/* @__PURE__ */ r(
|
|
87
|
-
|
|
95
|
+
X,
|
|
88
96
|
{
|
|
89
97
|
id: i,
|
|
90
|
-
disabled:
|
|
91
|
-
className:
|
|
98
|
+
disabled: j,
|
|
99
|
+
className: u(
|
|
92
100
|
"peer w-full",
|
|
93
101
|
{
|
|
94
|
-
"pt-5 pb-1":
|
|
102
|
+
"pt-5 pb-1": n && t !== "lg"
|
|
95
103
|
},
|
|
96
|
-
|
|
104
|
+
M
|
|
97
105
|
),
|
|
98
|
-
size:
|
|
106
|
+
size: _,
|
|
99
107
|
state: f,
|
|
108
|
+
onFocus: C,
|
|
109
|
+
onBlur: k,
|
|
100
110
|
children: /* @__PURE__ */ r(
|
|
101
|
-
|
|
111
|
+
Y,
|
|
102
112
|
{
|
|
103
|
-
placeholder:
|
|
104
|
-
clickToRemove:
|
|
105
|
-
overflowBehavior:
|
|
113
|
+
placeholder: N,
|
|
114
|
+
clickToRemove: q && y,
|
|
115
|
+
overflowBehavior: A
|
|
106
116
|
}
|
|
107
117
|
)
|
|
108
118
|
}
|
|
109
119
|
),
|
|
110
|
-
|
|
111
|
-
|
|
120
|
+
n && /* @__PURE__ */ r(
|
|
121
|
+
H,
|
|
112
122
|
{
|
|
113
123
|
htmlFor: i,
|
|
114
124
|
size: t,
|
|
115
125
|
infoTooltip: p,
|
|
116
|
-
children:
|
|
126
|
+
children: o
|
|
117
127
|
}
|
|
118
128
|
),
|
|
119
|
-
/* @__PURE__ */ r(
|
|
120
|
-
/* @__PURE__ */ r(
|
|
121
|
-
|
|
129
|
+
/* @__PURE__ */ r(Z, { search: h, children: [...Q.entries()].map(([l, c]) => l ? /* @__PURE__ */ m(s.Fragment, { children: [
|
|
130
|
+
/* @__PURE__ */ r($, { heading: l, children: c.map((e) => /* @__PURE__ */ r(
|
|
131
|
+
G,
|
|
122
132
|
{
|
|
123
133
|
value: e.value,
|
|
124
134
|
disabled: e?.disabled,
|
|
125
135
|
icon: e?.icon,
|
|
126
|
-
tagRender: !!
|
|
127
|
-
children:
|
|
136
|
+
tagRender: !!d,
|
|
137
|
+
children: d ? d(e) : e.label
|
|
128
138
|
},
|
|
129
139
|
e.value
|
|
130
140
|
)) }),
|
|
131
|
-
/* @__PURE__ */ r(
|
|
132
|
-
] }, l) :
|
|
133
|
-
|
|
141
|
+
/* @__PURE__ */ r(B, {})
|
|
142
|
+
] }, l) : c.map((e) => /* @__PURE__ */ r(
|
|
143
|
+
G,
|
|
134
144
|
{
|
|
135
145
|
value: e.value,
|
|
136
146
|
disabled: e?.disabled,
|
|
137
147
|
icon: e?.icon,
|
|
138
|
-
tagRender: !!
|
|
139
|
-
children:
|
|
148
|
+
tagRender: !!d,
|
|
149
|
+
children: d ? d(e) : e.label
|
|
140
150
|
},
|
|
141
151
|
e.value
|
|
142
152
|
))) })
|
|
@@ -145,55 +155,57 @@ const Z = d.forwardRef(
|
|
|
145
155
|
)
|
|
146
156
|
) : (
|
|
147
157
|
// Single Mode
|
|
148
|
-
/* @__PURE__ */ m(
|
|
158
|
+
/* @__PURE__ */ m(U, { children: [
|
|
149
159
|
/* @__PURE__ */ r(
|
|
150
|
-
|
|
160
|
+
F,
|
|
151
161
|
{
|
|
152
|
-
value:
|
|
153
|
-
options:
|
|
154
|
-
placeHolder:
|
|
162
|
+
value: a ?? E,
|
|
163
|
+
options: x,
|
|
164
|
+
placeHolder: N,
|
|
155
165
|
emptyText: typeof h == "object" ? h.emptyMessage : "No results found",
|
|
156
|
-
onChange:
|
|
166
|
+
onChange: J,
|
|
157
167
|
clearable: y,
|
|
158
|
-
disabled:
|
|
168
|
+
disabled: j,
|
|
159
169
|
id: i,
|
|
160
|
-
className:
|
|
170
|
+
className: u(
|
|
161
171
|
"peer w-full justify-start",
|
|
162
172
|
{
|
|
163
|
-
"pt-5 pb-1":
|
|
173
|
+
"pt-5 pb-1": n && t !== "lg"
|
|
164
174
|
}
|
|
165
175
|
// className,
|
|
166
176
|
),
|
|
167
|
-
size:
|
|
177
|
+
size: _,
|
|
168
178
|
state: f,
|
|
169
|
-
dropdownClassName:
|
|
170
|
-
"translate-y-[-8px]":
|
|
179
|
+
dropdownClassName: u("opacity-40", {
|
|
180
|
+
"translate-y-[-8px]": n && t !== "lg"
|
|
171
181
|
}),
|
|
172
182
|
searchable: !!h,
|
|
173
|
-
tagRender:
|
|
183
|
+
tagRender: d,
|
|
184
|
+
onFocus: C,
|
|
185
|
+
onBlur: k
|
|
174
186
|
}
|
|
175
187
|
),
|
|
176
|
-
|
|
177
|
-
|
|
188
|
+
n && /* @__PURE__ */ r(
|
|
189
|
+
H,
|
|
178
190
|
{
|
|
179
191
|
htmlFor: i,
|
|
180
192
|
size: t,
|
|
181
193
|
infoTooltip: p,
|
|
182
|
-
shouldFloat: !!(
|
|
194
|
+
shouldFloat: !!(a ?? E),
|
|
183
195
|
className: "pointer-events-none",
|
|
184
|
-
children:
|
|
196
|
+
children: o
|
|
185
197
|
}
|
|
186
198
|
)
|
|
187
199
|
] })
|
|
188
200
|
) }),
|
|
189
|
-
w && /* @__PURE__ */ r("p", { className:
|
|
201
|
+
w && /* @__PURE__ */ r("p", { className: u("text-xs", f ? P[f] : ""), children: w })
|
|
190
202
|
]
|
|
191
203
|
}
|
|
192
204
|
) });
|
|
193
205
|
}
|
|
194
206
|
);
|
|
195
|
-
|
|
207
|
+
L.displayName = "Select";
|
|
196
208
|
export {
|
|
197
|
-
|
|
209
|
+
L as default
|
|
198
210
|
};
|
|
199
211
|
//# sourceMappingURL=Select.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n MultiSelect as BaseMultiSelect,\n MultiSelectTrigger as BaseMultiSelectTrigger,\n MultiSelectValue as BaseMultiSelectValue,\n MultiSelectContent as BaseMultiSelectContent,\n MultiSelectItem as BaseMultiSelectItem,\n MultiSelectGroup as BaseMultiSelectGroup,\n MultiSelectSeparator as BaseMultiSelectSeparator,\n} from \"@dsui/ui/components/select\";\nimport {\n Combobox,\n type ComboboxProps,\n type SelectOption as SSelectOption,\n} from \"@dsui/ui/components/combobox\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { FloatingLabel } from \"@/components/FloatLabel\";\nimport { Info } from \"lucide-react\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nexport type SelectOption = SSelectOption;\n\nexport type SelectProps = ComboboxProps & {\n label?: string;\n helperText?: React.ReactNode;\n state?: \"default\" | \"success\" | \"warning\" | \"error\";\n size?: \"xs\" | \"sm\" | \"normal\" | \"lg\" | \"xl\";\n isFloatLabel?: boolean;\n infoTooltip?: React.ReactNode;\n clearable?: boolean;\n placeholder?: string;\n options?: SelectOption[];\n tagRender?: (option: SelectOption) => React.ReactNode;\n multiple?: boolean;\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n values?: string[];\n defaultValues?: string | string[];\n onValuesChange?: (values: string[]) => void;\n search?: boolean | { placeholder?: string; emptyMessage?: string };\n clickToRemove?: boolean;\n overflowBehavior?: \"wrap\" | \"wrap-when-open\" | \"cutoff\";\n className?: string;\n disabled?: boolean;\n};\n\nconst Select = React.forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n className,\n label,\n helperText,\n state = \"default\",\n size = \"normal\",\n isFloatLabel,\n infoTooltip,\n clearable = false,\n placeholder = \"\",\n options = [],\n tagRender,\n multiple = false,\n value,\n defaultValue,\n onValueChange,\n values,\n defaultValues,\n onValuesChange,\n search,\n clickToRemove = true,\n overflowBehavior = \"wrap-when-open\",\n disabled,\n },\n ref\n ) => {\n const selectId = React.useId();\n\n // For single select, use controlled value or internal state\n const [internalValue, setInternalValue] = React.useState(\n value ?? defaultValue ?? \"\"\n );\n\n React.useEffect(() => {\n if (!multiple && value !== undefined) {\n setInternalValue(value);\n }\n }, [multiple, value]);\n\n // Handle single select value change\n const handleSingleValueChange = React.useCallback(\n (newValue?: string | null) => {\n const val = newValue || \"\";\n if (value === undefined) {\n setInternalValue(val);\n }\n onValueChange?.(val);\n },\n [onValueChange, value]\n );\n\n // Helper text styles\n const helperTextStyles = {\n default: \"text-muted-foreground\",\n success: \"text-success\",\n warning: \"text-warning\",\n error: \"text-error\",\n };\n\n // Calculate current size\n const currentSize = isFloatLabel\n ? size === \"xl\" || size === \"lg\"\n ? size\n : \"xl\"\n : size;\n\n // Group options by group property\n const groupedOptions = React.useMemo(() => {\n const groups = new Map<string | undefined, SelectOption[]>();\n options.forEach((option) => {\n const group = option.group;\n if (!groups.has(group)) {\n groups.set(group, []);\n }\n groups.get(group)!.push(option);\n });\n return groups;\n }, [options]);\n\n return (\n <div className={className}>\n <div\n ref={ref}\n className={cn(\"flex flex-col gap-1.5 relative\", {\n \"floating-label relative\": isFloatLabel,\n })}\n >\n {!isFloatLabel && label && (\n <label\n htmlFor={selectId}\n className=\"flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n {label}\n {infoTooltip && (\n <Tooltip content={infoTooltip}>\n <Info className=\"size-3.5 min-w-3.5\" />\n </Tooltip>\n )}\n </label>\n )}\n\n <div className=\"relative\">\n {!multiple ? (\n // Single Mode\n <>\n <Combobox\n value={value ?? internalValue}\n options={options}\n placeHolder={placeholder}\n emptyText={\n typeof search === \"object\"\n ? search.emptyMessage\n : \"No results found\"\n }\n onChange={handleSingleValueChange}\n clearable={clearable}\n disabled={disabled}\n id={selectId}\n className={cn(\n \"peer w-full justify-start\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n }\n // className,\n )}\n size={currentSize}\n state={state}\n dropdownClassName={cn(\"opacity-40\", {\n \"translate-y-[-8px]\": isFloatLabel && size !== \"lg\",\n })}\n searchable={!!search}\n tagRender={tagRender}\n />\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n shouldFloat={!!(value ?? internalValue)}\n className=\"pointer-events-none\"\n >\n {label}\n </FloatingLabel>\n )}\n </>\n ) : (\n // Multi Mode\n <BaseMultiSelect\n values={values}\n defaultValues={\n typeof defaultValues === \"string\"\n ? [defaultValues]\n : defaultValues\n }\n onValuesChange={onValuesChange}\n >\n <BaseMultiSelectTrigger\n id={selectId}\n disabled={disabled}\n className={cn(\n \"peer w-full\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n },\n className\n )}\n size={currentSize}\n state={state}\n >\n <BaseMultiSelectValue\n placeholder={placeholder}\n clickToRemove={clickToRemove && clearable}\n overflowBehavior={overflowBehavior}\n />\n </BaseMultiSelectTrigger>\n\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n >\n {label}\n </FloatingLabel>\n )}\n\n <BaseMultiSelectContent search={search}>\n {[...groupedOptions.entries()].map(([group, items]) => {\n if (group) {\n return (\n <React.Fragment key={group}>\n <BaseMultiSelectGroup heading={group}>\n {items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ))}\n </BaseMultiSelectGroup>\n <BaseMultiSelectSeparator />\n </React.Fragment>\n );\n }\n return items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ));\n })}\n </BaseMultiSelectContent>\n </BaseMultiSelect>\n )}\n </div>\n\n {helperText && (\n <p className={cn(\"text-xs\", state ? helperTextStyles[state] : \"\")}>\n {helperText}\n </p>\n )}\n </div>\n </div>\n );\n }\n);\n\nSelect.displayName = \"Select\";\nexport default Select;\n"],"names":["Select","React","className","label","helperText","state","size","isFloatLabel","infoTooltip","clearable","placeholder","options","tagRender","multiple","value","defaultValue","onValueChange","values","defaultValues","onValuesChange","search","clickToRemove","overflowBehavior","disabled","ref","selectId","internalValue","setInternalValue","handleSingleValueChange","newValue","val","helperTextStyles","currentSize","groupedOptions","groups","option","group","jsx","jsxs","cn","Tooltip","Info","BaseMultiSelect","BaseMultiSelectTrigger","BaseMultiSelectValue","FloatingLabel","BaseMultiSelectContent","items","BaseMultiSelectGroup","BaseMultiSelectItem","BaseMultiSelectSeparator","Fragment","Combobox"],"mappings":";;;;;;;;AA+CA,MAAMA,IAASC,EAAM;AAAA,EACnB,CACE;AAAA,IACE,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,OAAAC,IAAQ;AAAA,IACR,MAAAC,IAAO;AAAA,IACP,cAAAC;AAAA,IACA,aAAAC;AAAA,IACA,WAAAC,IAAY;AAAA,IACZ,aAAAC,IAAc;AAAA,IACd,SAAAC,IAAU,CAAA;AAAA,IACV,WAAAC;AAAA,IACA,UAAAC,IAAW;AAAA,IACX,OAAAC;AAAA,IACA,cAAAC;AAAA,IACA,eAAAC;AAAA,IACA,QAAAC;AAAA,IACA,eAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,eAAAC,IAAgB;AAAA,IAChB,kBAAAC,IAAmB;AAAA,IACnB,UAAAC;AAAA,EAAA,GAEFC,MACG;AACH,UAAMC,IAAWxB,EAAM,MAAA,GAGjB,CAACyB,GAAeC,CAAgB,IAAI1B,EAAM;AAAA,MAC9Ca,KAASC,KAAgB;AAAA,IAAA;AAG3Bd,IAAAA,EAAM,UAAU,MAAM;AACpB,MAAI,CAACY,KAAYC,MAAU,UACzBa,EAAiBb,CAAK;AAAA,IAE1B,GAAG,CAACD,GAAUC,CAAK,CAAC;AAGpB,UAAMc,IAA0B3B,EAAM;AAAA,MACpC,CAAC4B,MAA6B;AAC5B,cAAMC,IAAMD,KAAY;AACxB,QAAIf,MAAU,UACZa,EAAiBG,CAAG,GAEtBd,IAAgBc,CAAG;AAAA,MACrB;AAAA,MACA,CAACd,GAAeF,CAAK;AAAA,IAAA,GAIjBiB,IAAmB;AAAA,MACvB,SAAS;AAAA,MACT,SAAS;AAAA,MACT,SAAS;AAAA,MACT,OAAO;AAAA,IAAA,GAIHC,IAAczB,IAChBD,MAAS,QAAQA,MAAS,OACxBA,IACA,OACFA,GAGE2B,IAAiBhC,EAAM,QAAQ,MAAM;AACzC,YAAMiC,wBAAa,IAAA;AACnB,aAAAvB,EAAQ,QAAQ,CAACwB,MAAW;AAC1B,cAAMC,IAAQD,EAAO;AACrB,QAAKD,EAAO,IAAIE,CAAK,KACnBF,EAAO,IAAIE,GAAO,EAAE,GAEtBF,EAAO,IAAIE,CAAK,EAAG,KAAKD,CAAM;AAAA,MAChC,CAAC,GACMD;AAAA,IACT,GAAG,CAACvB,CAAO,CAAC;AAEZ,WACE,gBAAA0B,EAAC,SAAI,WAAAnC,GACH,UAAA,gBAAAoC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAd;AAAA,QACA,WAAWe,EAAG,kCAAkC;AAAA,UAC9C,2BAA2BhC;AAAA,QAAA,CAC5B;AAAA,QAEA,UAAA;AAAA,UAAA,CAACA,KAAgBJ,KAChB,gBAAAmC;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,SAASb;AAAA,cACT,WAAU;AAAA,cAET,UAAA;AAAA,gBAAAtB;AAAA,gBACAK,uBACEgC,GAAA,EAAQ,SAAShC,GAChB,UAAA,gBAAA6B,EAACI,GAAA,EAAK,WAAU,qBAAA,CAAqB,EAAA,CACvC;AAAA,cAAA;AAAA,YAAA;AAAA,UAAA;AAAA,UAKN,gBAAAJ,EAAC,OAAA,EAAI,WAAU,YACZ,UAACxB;AAAA;AAAA,YA6CA,gBAAAyB;AAAA,cAACI;AAAAA,cAAA;AAAA,gBACC,QAAAzB;AAAA,gBACA,eACE,OAAOC,KAAkB,WACrB,CAACA,CAAa,IACdA;AAAA,gBAEN,gBAAAC;AAAA,gBAEA,UAAA;AAAA,kBAAA,gBAAAkB;AAAA,oBAACM;AAAAA,oBAAA;AAAA,sBACC,IAAIlB;AAAA,sBACJ,UAAAF;AAAA,sBACA,WAAWgB;AAAA,wBACT;AAAA,wBACA;AAAA,0BACE,aAAahC,KAAgBD,MAAS;AAAA,wBAAA;AAAA,wBAExCJ;AAAA,sBAAA;AAAA,sBAEF,MAAM8B;AAAA,sBACN,OAAA3B;AAAA,sBAEA,UAAA,gBAAAgC;AAAA,wBAACO;AAAAA,wBAAA;AAAA,0BACC,aAAAlC;AAAA,0BACA,eAAeW,KAAiBZ;AAAA,0BAChC,kBAAAa;AAAA,wBAAA;AAAA,sBAAA;AAAA,oBACF;AAAA,kBAAA;AAAA,kBAGDf,KACC,gBAAA8B;AAAA,oBAACQ;AAAA,oBAAA;AAAA,sBACC,SAASpB;AAAA,sBACT,MAAAnB;AAAA,sBACA,aAAAE;AAAA,sBAEC,UAAAL;AAAA,oBAAA;AAAA,kBAAA;AAAA,kBAIL,gBAAAkC,EAACS,GAAA,EAAuB,QAAA1B,GACrB,UAAA,CAAC,GAAGa,EAAe,QAAA,CAAS,EAAE,IAAI,CAAC,CAACG,GAAOW,CAAK,MAC3CX,IAEA,gBAAAE,EAACrC,EAAM,UAAN,EACC,UAAA;AAAA,oBAAA,gBAAAoC,EAACW,KAAqB,SAASZ,GAC5B,UAAAW,EAAM,IAAI,CAACZ,MACV,gBAAAE;AAAA,sBAACY;AAAAA,sBAAA;AAAA,wBAEC,OAAOd,EAAO;AAAA,wBACd,UAAUA,GAAQ;AAAA,wBAClB,MAAMA,GAAQ;AAAA,wBACd,WAAW,CAAC,CAACvB;AAAA,wBAEZ,UAAAA,IAAYA,EAAUuB,CAAM,IAAIA,EAAO;AAAA,sBAAA;AAAA,sBANnCA,EAAO;AAAA,oBAAA,CAQf,GACH;AAAA,sCACCe,GAAA,CAAA,CAAyB;AAAA,kBAAA,EAAA,GAdPd,CAerB,IAGGW,EAAM,IAAI,CAACZ,MAChB,gBAAAE;AAAA,oBAACY;AAAAA,oBAAA;AAAA,sBAEC,OAAOd,EAAO;AAAA,sBACd,UAAUA,GAAQ;AAAA,sBAClB,MAAMA,GAAQ;AAAA,sBACd,WAAW,CAAC,CAACvB;AAAA,sBAEZ,UAAAA,IAAYA,EAAUuB,CAAM,IAAIA,EAAO;AAAA,oBAAA;AAAA,oBANnCA,EAAO;AAAA,kBAAA,CAQf,CACF,EAAA,CACH;AAAA,gBAAA;AAAA,cAAA;AAAA,YAAA;AAAA;AAAA;AAAA,YApHF,gBAAAG,EAAAa,GAAA,EACE,UAAA;AAAA,cAAA,gBAAAd;AAAA,gBAACe;AAAA,gBAAA;AAAA,kBACC,OAAOtC,KAASY;AAAA,kBAChB,SAAAf;AAAA,kBACA,aAAaD;AAAA,kBACb,WACE,OAAOU,KAAW,WACdA,EAAO,eACP;AAAA,kBAEN,UAAUQ;AAAA,kBACV,WAAAnB;AAAA,kBACA,UAAAc;AAAA,kBACA,IAAIE;AAAA,kBACJ,WAAWc;AAAA,oBACT;AAAA,oBACA;AAAA,sBACE,aAAahC,KAAgBD,MAAS;AAAA,oBAAA;AAAA;AAAA,kBACxC;AAAA,kBAGF,MAAM0B;AAAA,kBACN,OAAA3B;AAAA,kBACA,mBAAmBkC,EAAG,cAAc;AAAA,oBAClC,sBAAsBhC,KAAgBD,MAAS;AAAA,kBAAA,CAChD;AAAA,kBACD,YAAY,CAAC,CAACc;AAAA,kBACd,WAAAR;AAAA,gBAAA;AAAA,cAAA;AAAA,cAEDL,KACC,gBAAA8B;AAAA,gBAACQ;AAAA,gBAAA;AAAA,kBACC,SAASpB;AAAA,kBACT,MAAAnB;AAAA,kBACA,aAAAE;AAAA,kBACA,aAAa,CAAC,EAAEM,KAASY;AAAA,kBACzB,WAAU;AAAA,kBAET,UAAAvB;AAAA,gBAAA;AAAA,cAAA;AAAA,YACH,EAAA,CAEJ;AAAA,aA+EJ;AAAA,UAECC,KACC,gBAAAiC,EAAC,KAAA,EAAE,WAAWE,EAAG,WAAWlC,IAAQ0B,EAAiB1B,CAAK,IAAI,EAAE,GAC7D,UAAAD,EAAA,CACH;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAGN;AAAA,EAEJ;AACF;AAEAJ,EAAO,cAAc;"}
|
|
1
|
+
{"version":3,"file":"Select.js","sources":["../../../../src/components/Select/Select.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n MultiSelect as BaseMultiSelect,\n MultiSelectTrigger as BaseMultiSelectTrigger,\n MultiSelectValue as BaseMultiSelectValue,\n MultiSelectContent as BaseMultiSelectContent,\n MultiSelectItem as BaseMultiSelectItem,\n MultiSelectGroup as BaseMultiSelectGroup,\n MultiSelectSeparator as BaseMultiSelectSeparator,\n} from \"@dsui/ui/components/select\";\nimport {\n Combobox,\n type ComboboxProps,\n type SelectOption as SSelectOption,\n} from \"@dsui/ui/components/combobox\";\nimport { cn } from \"@dsui/ui/lib/utils\";\nimport { FloatingLabel } from \"@/components/FloatLabel\";\nimport { Info } from \"lucide-react\";\nimport { Tooltip } from \"../Tooltip/Tooltip\";\n\nexport type SelectOption = SSelectOption;\n\nexport type SelectProps = Omit<ComboboxProps, \"ref\"> & {\n label?: string;\n helperText?: React.ReactNode;\n state?: \"default\" | \"success\" | \"warning\" | \"error\";\n size?: \"xs\" | \"sm\" | \"normal\" | \"lg\" | \"xl\";\n isFloatLabel?: boolean;\n infoTooltip?: React.ReactNode;\n clearable?: boolean;\n placeholder?: string;\n options?: SelectOption[];\n tagRender?: (option: SelectOption) => React.ReactNode;\n multiple?: boolean;\n value?: string;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n values?: string[];\n defaultValues?: string | string[];\n onValuesChange?: (values: string[]) => void;\n search?: boolean | { placeholder?: string; emptyMessage?: string };\n clickToRemove?: boolean;\n overflowBehavior?: \"wrap\" | \"wrap-when-open\" | \"cutoff\";\n className?: string;\n disabled?: boolean;\n onChange?: (value: string | string[]) => void;\n onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;\n onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;\n};\n\nconst Select = React.forwardRef<HTMLDivElement, SelectProps>(\n (\n {\n className,\n label,\n helperText,\n state = \"default\",\n size = \"normal\",\n isFloatLabel,\n infoTooltip,\n clearable = false,\n placeholder = \"\",\n options = [],\n tagRender,\n multiple = false,\n value,\n defaultValue,\n onValueChange,\n values,\n defaultValues,\n onValuesChange,\n search,\n clickToRemove = true,\n overflowBehavior = \"wrap-when-open\",\n disabled,\n onChange,\n onFocus,\n onBlur,\n },\n ref\n ) => {\n const selectId = React.useId();\n\n // For single select, use controlled value or internal state\n const [internalValue, setInternalValue] = React.useState(\n value ?? defaultValue ?? \"\"\n );\n\n React.useEffect(() => {\n if (!multiple && value !== undefined) {\n setInternalValue(value);\n }\n }, [multiple, value]);\n\n // Handle single select value change\n const handleSingleValueChange = React.useCallback(\n (newValue?: string | null) => {\n const val = newValue || \"\";\n if (value === undefined) {\n setInternalValue(val);\n }\n onValueChange?.(val);\n onChange?.(val);\n },\n [onValueChange, onChange, value]\n );\n\n // Handle multi select values change\n const handleMultiValuesChange = React.useCallback(\n (newValues: string[]) => {\n onValuesChange?.(newValues);\n onChange?.(newValues);\n },\n [onValuesChange, onChange]\n );\n\n // Helper text styles\n const helperTextStyles = {\n default: \"text-muted-foreground\",\n success: \"text-success\",\n warning: \"text-warning\",\n error: \"text-error\",\n };\n\n // Calculate current size\n const currentSize = isFloatLabel\n ? size === \"xl\" || size === \"lg\"\n ? size\n : \"xl\"\n : size;\n\n // Group options by group property\n const groupedOptions = React.useMemo(() => {\n const groups = new Map<string | undefined, SelectOption[]>();\n options.forEach((option) => {\n const group = option.group;\n if (!groups.has(group)) {\n groups.set(group, []);\n }\n groups.get(group)!.push(option);\n });\n return groups;\n }, [options]);\n\n return (\n <div className={className}>\n <div\n ref={ref}\n className={cn(\"flex flex-col gap-1.5 relative\", {\n \"floating-label relative\": isFloatLabel,\n })}\n >\n {!isFloatLabel && label && (\n <label\n htmlFor={selectId}\n className=\"flex gap-2 text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\n >\n {label}\n {infoTooltip && (\n <Tooltip content={infoTooltip}>\n <Info className=\"size-3.5 min-w-3.5\" />\n </Tooltip>\n )}\n </label>\n )}\n\n <div className=\"relative\">\n {!multiple ? (\n // Single Mode\n <>\n <Combobox\n value={value ?? internalValue}\n options={options}\n placeHolder={placeholder}\n emptyText={\n typeof search === \"object\"\n ? search.emptyMessage\n : \"No results found\"\n }\n onChange={handleSingleValueChange}\n clearable={clearable}\n disabled={disabled}\n id={selectId}\n className={cn(\n \"peer w-full justify-start\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n }\n // className,\n )}\n size={currentSize}\n state={state}\n dropdownClassName={cn(\"opacity-40\", {\n \"translate-y-[-8px]\": isFloatLabel && size !== \"lg\",\n })}\n searchable={!!search}\n tagRender={tagRender}\n onFocus={onFocus}\n onBlur={onBlur}\n />\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n shouldFloat={!!(value ?? internalValue)}\n className=\"pointer-events-none\"\n >\n {label}\n </FloatingLabel>\n )}\n </>\n ) : (\n // Multi Mode\n <BaseMultiSelect\n values={values}\n defaultValues={\n typeof defaultValues === \"string\"\n ? [defaultValues]\n : defaultValues\n }\n onValuesChange={handleMultiValuesChange}\n >\n <BaseMultiSelectTrigger\n id={selectId}\n disabled={disabled}\n className={cn(\n \"peer w-full\",\n {\n \"pt-5 pb-1\": isFloatLabel && size !== \"lg\",\n },\n className\n )}\n size={currentSize}\n state={state}\n onFocus={onFocus}\n onBlur={onBlur}\n >\n <BaseMultiSelectValue\n placeholder={placeholder}\n clickToRemove={clickToRemove && clearable}\n overflowBehavior={overflowBehavior}\n />\n </BaseMultiSelectTrigger>\n\n {isFloatLabel && (\n <FloatingLabel\n htmlFor={selectId}\n size={size}\n infoTooltip={infoTooltip}\n >\n {label}\n </FloatingLabel>\n )}\n\n <BaseMultiSelectContent search={search}>\n {[...groupedOptions.entries()].map(([group, items]) => {\n if (group) {\n return (\n <React.Fragment key={group}>\n <BaseMultiSelectGroup heading={group}>\n {items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ))}\n </BaseMultiSelectGroup>\n <BaseMultiSelectSeparator />\n </React.Fragment>\n );\n }\n return items.map((option) => (\n <BaseMultiSelectItem\n key={option.value}\n value={option.value}\n disabled={option?.disabled}\n icon={option?.icon}\n tagRender={!!tagRender}\n >\n {tagRender ? tagRender(option) : option.label}\n </BaseMultiSelectItem>\n ));\n })}\n </BaseMultiSelectContent>\n </BaseMultiSelect>\n )}\n </div>\n\n {helperText && (\n <p className={cn(\"text-xs\", state ? helperTextStyles[state] : \"\")}>\n {helperText}\n </p>\n )}\n </div>\n </div>\n );\n }\n);\n\nSelect.displayName = \"Select\";\nexport default Select;\n"],"names":["Select","React","className","label","helperText","state","size","isFloatLabel","infoTooltip","clearable","placeholder","options","tagRender","multiple","value","defaultValue","onValueChange","values","defaultValues","onValuesChange","search","clickToRemove","overflowBehavior","disabled","onChange","onFocus","onBlur","ref","selectId","internalValue","setInternalValue","handleSingleValueChange","newValue","val","handleMultiValuesChange","newValues","helperTextStyles","currentSize","groupedOptions","groups","option","group","jsx","jsxs","cn","Tooltip","Info","BaseMultiSelect","BaseMultiSelectTrigger","BaseMultiSelectValue","FloatingLabel","BaseMultiSelectContent","items","BaseMultiSelectGroup","BaseMultiSelectItem","BaseMultiSelectSeparator","Fragment","Combobox"],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { type ComboboxProps, type SelectOption as SSelectOption } from "../../packages/ui/src/components/combobox";
|
|
3
3
|
export type SelectOption = SSelectOption;
|
|
4
|
-
export type SelectProps = ComboboxProps & {
|
|
4
|
+
export type SelectProps = Omit<ComboboxProps, "ref"> & {
|
|
5
5
|
label?: string;
|
|
6
6
|
helperText?: React.ReactNode;
|
|
7
7
|
state?: "default" | "success" | "warning" | "error";
|
|
@@ -27,7 +27,39 @@ export type SelectProps = ComboboxProps & {
|
|
|
27
27
|
overflowBehavior?: "wrap" | "wrap-when-open" | "cutoff";
|
|
28
28
|
className?: string;
|
|
29
29
|
disabled?: boolean;
|
|
30
|
+
onChange?: (value: string | string[]) => void;
|
|
31
|
+
onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
32
|
+
onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
30
33
|
};
|
|
31
|
-
declare const Select: React.ForwardRefExoticComponent<Omit<
|
|
34
|
+
declare const Select: React.ForwardRefExoticComponent<Omit<ComboboxProps, "ref"> & {
|
|
35
|
+
label?: string;
|
|
36
|
+
helperText?: React.ReactNode;
|
|
37
|
+
state?: "default" | "success" | "warning" | "error";
|
|
38
|
+
size?: "xs" | "sm" | "normal" | "lg" | "xl";
|
|
39
|
+
isFloatLabel?: boolean;
|
|
40
|
+
infoTooltip?: React.ReactNode;
|
|
41
|
+
clearable?: boolean;
|
|
42
|
+
placeholder?: string;
|
|
43
|
+
options?: SelectOption[];
|
|
44
|
+
tagRender?: (option: SelectOption) => React.ReactNode;
|
|
45
|
+
multiple?: boolean;
|
|
46
|
+
value?: string;
|
|
47
|
+
defaultValue?: string;
|
|
48
|
+
onValueChange?: (value: string) => void;
|
|
49
|
+
values?: string[];
|
|
50
|
+
defaultValues?: string | string[];
|
|
51
|
+
onValuesChange?: (values: string[]) => void;
|
|
52
|
+
search?: boolean | {
|
|
53
|
+
placeholder?: string;
|
|
54
|
+
emptyMessage?: string;
|
|
55
|
+
};
|
|
56
|
+
clickToRemove?: boolean;
|
|
57
|
+
overflowBehavior?: "wrap" | "wrap-when-open" | "cutoff";
|
|
58
|
+
className?: string;
|
|
59
|
+
disabled?: boolean;
|
|
60
|
+
onChange?: (value: string | string[]) => void;
|
|
61
|
+
onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
62
|
+
onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
63
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
32
64
|
export default Select;
|
|
33
65
|
//# sourceMappingURL=Select.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,YAAY,IAAI,aAAa,EACnC,MAAM,8BAA8B,CAAC;AAMtC,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC;AAEzC,MAAM,MAAM,WAAW,GAAG,aAAa,GAAG;
|
|
1
|
+
{"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/Select/Select.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { TreeView
|
|
1
|
+
export { TreeView, type TreeDataItem } from "./TreeSelect";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/TreeSelect/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/TreeSelect/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC"}
|