@gbmtech/aurora-ui 0.2.25 → 0.2.27

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.
@@ -1,2 +1,2 @@
1
- "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,a)=>{for(var t in a)__webpack_require__.o(a,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:a[t]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{AsyncSelect:()=>AsyncSelect});let jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_react_namespaceObject=require("react"),use_debounce_cjs_namespaceObject=require("../hooks/use-debounce.cjs"),utils_cjs_namespaceObject=require("../lib/utils.cjs"),react_namespaceObject=require("@phosphor-icons/react"),external_button_cjs_namespaceObject=require("./button.cjs"),external_command_cjs_namespaceObject=require("./command.cjs"),external_popover_cjs_namespaceObject=require("./popover.cjs"),external_spinner_cjs_namespaceObject=require("./spinner.cjs");function AsyncSelect({fetcher:e,preload:a,filterFn:t,renderOption:c,getOptionValue:n,getDisplayValue:s,notFound:_,loadingSkeleton:r,label:m,placeholder:l="Selecione",value:j,onChange:p,onSearchChange:i,disabled:o=!1,className:u,triggerClassName:b,noResultsMessage:x,clearable:d=!0,keyExtractor:O}){let[f,h]=(0,external_react_namespaceObject.useState)(!1),[w,y]=(0,external_react_namespaceObject.useState)(!1),[v,g]=(0,external_react_namespaceObject.useState)([]),[S,k]=(0,external_react_namespaceObject.useState)(!1),[q,C]=(0,external_react_namespaceObject.useState)(null),[N,P]=(0,external_react_namespaceObject.useState)(j),[E,A]=(0,external_react_namespaceObject.useState)(null),[L,D]=(0,external_react_namespaceObject.useState)(""),I=(0,use_debounce_cjs_namespaceObject.useDebounce)(L,300*!a),[F,M]=(0,external_react_namespaceObject.useState)([]);(0,external_react_namespaceObject.useEffect)(()=>{h(!0),P(j)},[j]),(0,external_react_namespaceObject.useEffect)(()=>{if(j&&v.length>0){let e=v.find(e=>n(e)===j);e&&A(e)}else A(null)},[j,v,n]),(0,external_react_namespaceObject.useEffect)(()=>{let a=async()=>{try{k(!0),C(null);let a=await e(j);M(a),g(a)}catch(e){C(e instanceof Error?e.message:"Failed to fetch options")}finally{k(!1)}};f||a()},[f,e,j]),(0,external_react_namespaceObject.useEffect)(()=>{let c=async()=>{try{k(!0),C(null);let a=await e(I);M(a),g(a)}catch(e){C(e instanceof Error?e.message:"Failed to fetch options")}finally{k(!1)}};f&&a?a&&(I?g(F.filter(e=>!t||t(e,I))):g(F)):c()},[e,I,f,a,t]);let R=(0,external_react_namespaceObject.useCallback)(e=>{let a=d&&e===N?"":e;P(a),A(v.find(e=>n(e)===a)||null),p(a),y(!1)},[N,p,d,v,n]);return(0,jsx_runtime_namespaceObject.jsxs)(external_popover_cjs_namespaceObject.Popover,{open:w,onOpenChange:y,children:[(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverTrigger,{asChild:!0,children:(0,jsx_runtime_namespaceObject.jsxs)(external_button_cjs_namespaceObject.Button,{variant:"secondary",role:"combobox","aria-expanded":w,className:(0,utils_cjs_namespaceObject.cn)("w-full justify-between px-3 font-normal",o&&"cursor-not-allowed opacity-50",b),disabled:o,children:[E?s(E):l,(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.CaretDown,{className:"size-4 shrink-0 text-gray-400 opacity-50"})]})}),(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverContent,{className:(0,utils_cjs_namespaceObject.cn)("w-[var(--radix-popover-trigger-width)] p-0",u),children:(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.Command,{shouldFilter:!1,children:[(0,jsx_runtime_namespaceObject.jsxs)("div",{className:"relative w-full border-b",children:[(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandInput,{placeholder:`Buscar ${m.toLowerCase()}...`,value:L,onValueChange:e=>{D(e),i?.(e)}}),S&&v.length>0&&(0,jsx_runtime_namespaceObject.jsx)("div",{className:"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center",children:(0,jsx_runtime_namespaceObject.jsx)(external_spinner_cjs_namespaceObject.Spinner,{})})]}),(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandList,{children:[q&&(0,jsx_runtime_namespaceObject.jsx)("div",{className:"p-4 text-center text-error",children:q}),S&&0===v.length&&(r||(0,jsx_runtime_namespaceObject.jsx)(DefaultLoadingSkeleton,{})),!S&&!q&&0===v.length&&(_||(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandEmpty,{children:x??"Nenhum registro encontrado."})),(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandGroup,{children:v.map(e=>(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandItem,{value:n(e),onSelect:R,children:[c(e),(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.Check,{className:(0,utils_cjs_namespaceObject.cn)("ml-auto h-3 w-3",N===n(e)?"opacity-100":"opacity-0")})]},O?O(e):n(e)))})]})]})})]})}function DefaultLoadingSkeleton(){return(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandGroup,{children:[1,2,3].map(e=>(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandItem,{disabled:!0,children:(0,jsx_runtime_namespaceObject.jsxs)("div",{className:"flex w-full items-center gap-2",children:[(0,jsx_runtime_namespaceObject.jsx)("div",{className:"h-6 w-6 animate-pulse rounded-full bg-muted"}),(0,jsx_runtime_namespaceObject.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,jsx_runtime_namespaceObject.jsx)("div",{className:"h-4 w-24 animate-pulse rounded bg-muted"}),(0,jsx_runtime_namespaceObject.jsx)("div",{className:"h-3 w-16 animate-pulse rounded bg-muted"})]})]})},e))})}for(var __webpack_i__ in exports.AsyncSelect=__webpack_exports__.AsyncSelect,__webpack_exports__)-1===["AsyncSelect"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
1
+ "use strict";let __rslib_import_meta_url__="undefined"==typeof document?new(require("url".replace("",""))).URL("file:"+__filename).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href;var __webpack_require__={};__webpack_require__.d=(e,a)=>{for(var t in a)__webpack_require__.o(a,t)&&!__webpack_require__.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:a[t]})},__webpack_require__.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__={};__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{AsyncSelect:()=>AsyncSelect});let jsx_runtime_namespaceObject=require("react/jsx-runtime"),external_react_namespaceObject=require("react"),use_debounce_cjs_namespaceObject=require("../hooks/use-debounce.cjs"),utils_cjs_namespaceObject=require("../lib/utils.cjs"),react_namespaceObject=require("@phosphor-icons/react"),external_button_cjs_namespaceObject=require("./button.cjs"),external_command_cjs_namespaceObject=require("./command.cjs"),external_popover_cjs_namespaceObject=require("./popover.cjs"),external_spinner_cjs_namespaceObject=require("./spinner.cjs");function AsyncSelect({fetcher:e,preload:a,filterFn:t,renderOption:c,getOptionValue:n,getDisplayValue:s,notFound:_,loadingSkeleton:r,label:m,placeholder:l="",value:j,onChange:p,onSearchChange:i,disabled:o=!1,className:u,triggerClassName:b,noResultsMessage:x,clearable:d=!0,keyExtractor:O}){let[f,h]=(0,external_react_namespaceObject.useState)(!1),[w,y]=(0,external_react_namespaceObject.useState)(!1),[v,g]=(0,external_react_namespaceObject.useState)([]),[S,k]=(0,external_react_namespaceObject.useState)(!1),[q,C]=(0,external_react_namespaceObject.useState)(null),[N,P]=(0,external_react_namespaceObject.useState)(j),[E,A]=(0,external_react_namespaceObject.useState)(null),[L,D]=(0,external_react_namespaceObject.useState)(""),I=(0,use_debounce_cjs_namespaceObject.useDebounce)(L,300*!a),[F,M]=(0,external_react_namespaceObject.useState)([]);(0,external_react_namespaceObject.useEffect)(()=>{h(!0),P(j)},[j]),(0,external_react_namespaceObject.useEffect)(()=>{if(j&&v.length>0){let e=v.find(e=>n(e)===j);e&&A(e)}else A(null)},[j,v,n]),(0,external_react_namespaceObject.useEffect)(()=>{let a=async()=>{try{k(!0),C(null);let a=await e(j);M(a),g(a)}catch(e){C(e instanceof Error?e.message:"Failed to fetch options")}finally{k(!1)}};f||a()},[f,e,j]),(0,external_react_namespaceObject.useEffect)(()=>{let c=async()=>{try{k(!0),C(null);let a=await e(I);M(a),g(a)}catch(e){C(e instanceof Error?e.message:"Failed to fetch options")}finally{k(!1)}};f&&a?a&&(I?g(F.filter(e=>!t||t(e,I))):g(F)):c()},[e,I,f,a,t]);let R=(0,external_react_namespaceObject.useCallback)(e=>{let a=d&&e===N?"":e;P(a),A(v.find(e=>n(e)===a)||null),p(a),y(!1)},[N,p,d,v,n]);return(0,jsx_runtime_namespaceObject.jsxs)(external_popover_cjs_namespaceObject.Popover,{open:w,onOpenChange:y,children:[(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverTrigger,{asChild:!0,children:(0,jsx_runtime_namespaceObject.jsxs)(external_button_cjs_namespaceObject.Button,{variant:"secondary",role:"combobox","aria-expanded":w,className:(0,utils_cjs_namespaceObject.cn)("w-full justify-between px-3 font-normal",o&&"cursor-not-allowed opacity-50",b),disabled:o,children:[E?s(E):(0,jsx_runtime_namespaceObject.jsx)("span",{children:l}),(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.CaretDown,{className:"size-4 shrink-0 text-gray-400 opacity-50"})]})}),(0,jsx_runtime_namespaceObject.jsx)(external_popover_cjs_namespaceObject.PopoverContent,{className:(0,utils_cjs_namespaceObject.cn)("w-[var(--radix-popover-trigger-width)] p-0",u),children:(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.Command,{shouldFilter:!1,children:[(0,jsx_runtime_namespaceObject.jsxs)("div",{className:"relative w-full border-b",children:[(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandInput,{placeholder:`Buscar ${m.toLowerCase()}...`,value:L,onValueChange:e=>{D(e),i?.(e)}}),S&&v.length>0&&(0,jsx_runtime_namespaceObject.jsx)("div",{className:"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center",children:(0,jsx_runtime_namespaceObject.jsx)(external_spinner_cjs_namespaceObject.Spinner,{})})]}),(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandList,{children:[q&&(0,jsx_runtime_namespaceObject.jsx)("div",{className:"p-4 text-center text-error",children:q}),S&&0===v.length&&(r||(0,jsx_runtime_namespaceObject.jsx)(DefaultLoadingSkeleton,{})),!S&&!q&&0===v.length&&(_||(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandEmpty,{children:x??"Nenhum registro encontrado."})),(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandGroup,{children:v.map(e=>(0,jsx_runtime_namespaceObject.jsxs)(external_command_cjs_namespaceObject.CommandItem,{value:n(e),onSelect:R,children:[c(e),(0,jsx_runtime_namespaceObject.jsx)(react_namespaceObject.Check,{className:(0,utils_cjs_namespaceObject.cn)("ml-auto h-3 w-3",N===n(e)?"opacity-100":"opacity-0")})]},O?O(e):n(e)))})]})]})})]})}function DefaultLoadingSkeleton(){return(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandGroup,{children:[1,2,3].map(e=>(0,jsx_runtime_namespaceObject.jsx)(external_command_cjs_namespaceObject.CommandItem,{disabled:!0,children:(0,jsx_runtime_namespaceObject.jsxs)("div",{className:"flex w-full items-center gap-2",children:[(0,jsx_runtime_namespaceObject.jsx)("div",{className:"h-6 w-6 animate-pulse rounded-full bg-muted"}),(0,jsx_runtime_namespaceObject.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,jsx_runtime_namespaceObject.jsx)("div",{className:"h-4 w-24 animate-pulse rounded bg-muted"}),(0,jsx_runtime_namespaceObject.jsx)("div",{className:"h-3 w-16 animate-pulse rounded bg-muted"})]})]})},e))})}for(var __webpack_i__ in exports.AsyncSelect=__webpack_exports__.AsyncSelect,__webpack_exports__)-1===["AsyncSelect"].indexOf(__webpack_i__)&&(exports[__webpack_i__]=__webpack_exports__[__webpack_i__]);Object.defineProperty(exports,"__esModule",{value:!0});
2
2
  //# sourceMappingURL=async-select.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"components\\async-select.cjs","sources":["webpack://@gbmtech/aurora-ui/./src/components/async-select.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nimport { useDebounce } from '@/hooks/use-debounce'\nimport { cn } from '@/lib/utils'\nimport { CaretDown, Check } from '@phosphor-icons/react'\nimport { Button } from './button'\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from './command'\nimport { Popover, PopoverContent, PopoverTrigger } from './popover'\nimport { Spinner } from './spinner'\n\nexport interface Option {\n value: string\n label: string\n disabled?: boolean\n description?: string\n icon?: React.ReactNode\n}\n\nexport interface AsyncSelectProps<T> {\n fetcher: (query?: string) => Promise<T[]>\n preload?: boolean\n filterFn?: (option: T, query: string) => boolean\n renderOption: (option: T) => React.ReactNode\n getOptionValue: (option: T) => string\n getDisplayValue: (option: T) => React.ReactNode\n notFound?: React.ReactNode\n loadingSkeleton?: React.ReactNode\n value: string\n onChange: (value: string) => void\n onSearchChange?: (value: string) => void\n label: string\n placeholder?: string\n disabled?: boolean\n className?: string\n triggerClassName?: string\n noResultsMessage?: string\n clearable?: boolean\n keyExtractor?: (option: T) => string\n}\n\nexport function AsyncSelect<T>({\n fetcher,\n preload,\n filterFn,\n renderOption,\n getOptionValue,\n getDisplayValue,\n notFound,\n loadingSkeleton,\n label,\n placeholder = 'Selecione',\n value,\n onChange,\n onSearchChange,\n disabled = false,\n className,\n triggerClassName,\n noResultsMessage,\n clearable = true,\n keyExtractor,\n}: AsyncSelectProps<T>) {\n const [mounted, setMounted] = useState(false)\n const [open, setOpen] = useState(false)\n const [options, setOptions] = useState<T[]>([])\n const [loading, setLoading] = useState(false)\n const [error, setError] = useState<string | null>(null)\n const [selectedValue, setSelectedValue] = useState(value)\n const [selectedOption, setSelectedOption] = useState<T | null>(null)\n const [searchTerm, setSearchTerm] = useState('')\n const debouncedSearchTerm = useDebounce(searchTerm, preload ? 0 : 300)\n const [originalOptions, setOriginalOptions] = useState<T[]>([])\n\n useEffect(() => {\n setMounted(true)\n setSelectedValue(value)\n }, [value])\n\n // Initialize selectedOption when options are loaded and value exists\n useEffect(() => {\n if (value && options.length > 0) {\n const option = options.find(opt => getOptionValue(opt) === value)\n if (option) {\n setSelectedOption(option)\n }\n } else {\n setSelectedOption(null)\n }\n }, [value, options, getOptionValue])\n\n // Effect for initial fetch\n useEffect(() => {\n const initializeOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n // If we have a value, use it for the initial search\n const data = await fetcher(value)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n initializeOptions()\n }\n }, [mounted, fetcher, value])\n\n useEffect(() => {\n const fetchOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n const data = await fetcher(debouncedSearchTerm)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n fetchOptions()\n } else if (!preload) {\n fetchOptions()\n } else if (preload) {\n if (debouncedSearchTerm) {\n setOptions(\n originalOptions.filter(option =>\n filterFn ? filterFn(option, debouncedSearchTerm) : true\n )\n )\n } else {\n setOptions(originalOptions)\n }\n }\n }, [fetcher, debouncedSearchTerm, mounted, preload, filterFn])\n\n const handleSelect = useCallback(\n (currentValue: string) => {\n const newValue =\n clearable && currentValue === selectedValue ? '' : currentValue\n setSelectedValue(newValue)\n setSelectedOption(\n options.find(option => getOptionValue(option) === newValue) || null\n )\n onChange(newValue)\n setOpen(false)\n },\n [selectedValue, onChange, clearable, options, getOptionValue]\n )\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n variant=\"secondary\"\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\n 'w-full justify-between px-3 font-normal',\n disabled && 'cursor-not-allowed opacity-50',\n triggerClassName\n )}\n disabled={disabled}\n >\n {selectedOption ? getDisplayValue(selectedOption) : placeholder}\n <CaretDown className=\"size-4 shrink-0 text-gray-400 opacity-50\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', className)}\n >\n <Command shouldFilter={false}>\n <div className=\"relative w-full border-b\">\n <CommandInput\n placeholder={`Buscar ${label.toLowerCase()}...`}\n value={searchTerm}\n onValueChange={value => {\n setSearchTerm(value)\n onSearchChange?.(value)\n }}\n />\n {loading && options.length > 0 && (\n <div className=\"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center\">\n <Spinner />\n </div>\n )}\n </div>\n <CommandList>\n {error && <div className=\"p-4 text-center text-error\">{error}</div>}\n {loading &&\n options.length === 0 &&\n (loadingSkeleton || <DefaultLoadingSkeleton />)}\n {!loading &&\n !error &&\n options.length === 0 &&\n (notFound || (\n <CommandEmpty>\n {noResultsMessage ?? 'Nenhum registro encontrado.'}\n </CommandEmpty>\n ))}\n <CommandGroup>\n {options.map(option => (\n <CommandItem\n key={\n keyExtractor ? keyExtractor(option) : getOptionValue(option)\n }\n value={getOptionValue(option)}\n onSelect={handleSelect}\n >\n {renderOption(option)}\n <Check\n className={cn(\n 'ml-auto h-3 w-3',\n selectedValue === getOptionValue(option)\n ? 'opacity-100'\n : 'opacity-0'\n )}\n />\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n}\n\nfunction DefaultLoadingSkeleton() {\n return (\n <CommandGroup>\n {[1, 2, 3].map(i => (\n <CommandItem key={i} disabled>\n <div className=\"flex w-full items-center gap-2\">\n <div className=\"h-6 w-6 animate-pulse rounded-full bg-muted\" />\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"h-4 w-24 animate-pulse rounded bg-muted\" />\n <div className=\"h-3 w-16 animate-pulse rounded bg-muted\" />\n </div>\n </div>\n </CommandItem>\n ))}\n </CommandGroup>\n )\n}\n"],"names":["AsyncSelect","fetcher","preload","filterFn","renderOption","getOptionValue","getDisplayValue","notFound","loadingSkeleton","label","placeholder","value","onChange","onSearchChange","disabled","className","triggerClassName","noResultsMessage","clearable","keyExtractor","mounted","setMounted","useState","open","setOpen","options","setOptions","loading","setLoading","error","setError","selectedValue","setSelectedValue","selectedOption","setSelectedOption","searchTerm","setSearchTerm","debouncedSearchTerm","useDebounce","originalOptions","setOriginalOptions","useEffect","option","opt","initializeOptions","data","err","Error","fetchOptions","handleSelect","useCallback","currentValue","newValue","Popover","PopoverTrigger","Button","cn","CaretDown","PopoverContent","Command","CommandInput","Spinner","CommandList","DefaultLoadingSkeleton","CommandEmpty","CommandGroup","CommandItem","Check","i"],"mappings":"g0CA+CO,SAASA,YAAe,CAC7BC,QAAAA,CAAO,CACPC,QAAAA,CAAO,CACPC,SAAAA,CAAQ,CACRC,aAAAA,CAAY,CACZC,eAAAA,CAAc,CACdC,gBAAAA,CAAe,CACfC,SAAAA,CAAQ,CACRC,gBAAAA,CAAe,CACfC,MAAAA,CAAK,CACLC,YAAAA,EAAc,WAAW,CACzBC,MAAAA,CAAK,CACLC,SAAAA,CAAQ,CACRC,eAAAA,CAAc,CACdC,SAAAA,EAAW,EAAK,CAChBC,UAAAA,CAAS,CACTC,iBAAAA,CAAgB,CAChBC,iBAAAA,CAAgB,CAChBC,UAAAA,EAAY,EAAI,CAChBC,aAAAA,CAAY,CACQ,EACpB,GAAM,CAACC,EAASC,EAAW,CAAGC,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IACjC,CAACC,EAAMC,EAAQ,CAAGF,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IAC3B,CAACG,EAASC,EAAW,CAAGJ,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAc,EAAE,EACxC,CAACK,EAASC,EAAW,CAAGN,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IACjC,CAACO,EAAOC,EAAS,CAAGR,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAwB,MAC5C,CAACS,EAAeC,EAAiB,CAAGV,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAASX,GAC7C,CAACsB,EAAgBC,EAAkB,CAAGZ,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAmB,MACzD,CAACa,EAAYC,EAAc,CAAGd,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IACvCe,EAAsBC,AAAAA,GAAAA,iCAAAA,WAAAA,AAAAA,EAAYH,EAAYjC,AAAc,KAAdA,GAC9C,CAACqC,EAAiBC,EAAmB,CAAGlB,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAc,EAAE,EAE9DmB,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACRpB,EAAW,IACXW,EAAiBrB,EACnB,EAAG,CAACA,EAAM,EAGV8B,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACR,GAAI9B,GAASc,EAAQ,MAAM,CAAG,EAAG,CAC/B,IAAMiB,EAASjB,EAAQ,IAAI,CAACkB,AAAAA,GAAOtC,EAAesC,KAAShC,EACvD+B,CAAAA,GACFR,EAAkBQ,EAEtB,MACER,EAAkB,KAEtB,EAAG,CAACvB,EAAOc,EAASpB,EAAe,EAGnCoC,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACR,IAAMG,EAAoB,UACxB,GAAI,CACFhB,EAAW,IACXE,EAAS,MAET,IAAMe,EAAO,MAAM5C,EAAQU,GAC3B6B,EAAmBK,GACnBnB,EAAWmB,EACb,CAAE,MAAOC,EAAK,CACZhB,EAASgB,aAAeC,MAAQD,EAAI,OAAO,CAAG,0BAChD,QAAU,CACRlB,EAAW,GACb,CACF,CAEI,CAACR,GACHwB,GAEJ,EAAG,CAACxB,EAASnB,EAASU,EAAM,EAE5B8B,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACR,IAAMO,EAAe,UACnB,GAAI,CACFpB,EAAW,IACXE,EAAS,MACT,IAAMe,EAAO,MAAM5C,EAAQoC,GAC3BG,EAAmBK,GACnBnB,EAAWmB,EACb,CAAE,MAAOC,EAAK,CACZhB,EAASgB,aAAeC,MAAQD,EAAI,OAAO,CAAG,0BAChD,QAAU,CACRlB,EAAW,GACb,CACF,EAEKR,GAEOlB,EAEDA,IACLmC,EACFX,EACEa,EAAgB,MAAM,CAACG,AAAAA,GACrBvC,CAAAA,GAAWA,EAASuC,EAAQL,KAIhCX,EAAWa,IATbS,GAYJ,EAAG,CAAC/C,EAASoC,EAAqBjB,EAASlB,EAASC,EAAS,EAE7D,IAAM8C,EAAeC,AAAAA,GAAAA,+BAAAA,WAAAA,AAAAA,EACnB,AAACC,IACC,IAAMC,EACJlC,GAAaiC,IAAiBpB,EAAgB,GAAKoB,EACrDnB,EAAiBoB,GACjBlB,EACET,EAAQ,IAAI,CAACiB,AAAAA,GAAUrC,EAAeqC,KAAYU,IAAa,MAEjExC,EAASwC,GACT5B,EAAQ,GACV,EACA,CAACO,EAAenB,EAAUM,EAAWO,EAASpB,EAAe,EAG/D,MACE,qCAACgD,qCAAAA,OAAOA,CAAAA,CAAC,KAAM9B,EAAM,aAAcC,E,UACjC,oCAAC8B,qCAAAA,cAAcA,CAAAA,CAAC,QAAO,G,SACrB,qCAACC,oCAAAA,MAAMA,CAAAA,CACL,QAAQ,YACR,KAAK,WACL,gBAAehC,EACf,UAAWiC,AAAAA,GAAAA,0BAAAA,EAAAA,AAAAA,EACT,0CACA1C,GAAY,gCACZE,GAEF,SAAUF,E,UAETmB,EAAiB3B,EAAgB2B,GAAkBvB,EACpD,oCAAC+C,sBAAAA,SAASA,CAAAA,CAAC,UAAU,0C,QAGzB,oCAACC,qCAAAA,cAAcA,CAAAA,CACb,UAAWF,AAAAA,GAAAA,0BAAAA,EAAAA,AAAAA,EAAG,6CAA8CzC,G,SAE5D,qCAAC4C,qCAAAA,OAAOA,CAAAA,CAAC,aAAc,G,UACrB,qCAAC,OAAI,UAAU,2B,UACb,oCAACC,qCAAAA,YAAYA,CAAAA,CACX,YAAa,CAAC,OAAO,EAAEnD,EAAM,WAAW,GAAG,GAAG,CAAC,CAC/C,MAAO0B,EACP,cAAexB,AAAAA,IACbyB,EAAczB,GACdE,IAAiBF,EACnB,C,GAEDgB,GAAWF,EAAQ,MAAM,CAAG,GAC3B,oCAAC,OAAI,UAAU,wE,SACb,oCAACoC,qCAAAA,OAAOA,CAAAA,CAAAA,E,MAId,qCAACC,qCAAAA,WAAWA,CAAAA,C,UACTjC,GAAS,oCAAC,OAAI,UAAU,6B,SAA8BA,C,GACtDF,GACCF,AAAmB,IAAnBA,EAAQ,MAAM,EACbjB,CAAAA,GAAmB,oCAACuD,uBAAAA,CAAAA,EAAAA,EACtB,CAACpC,GACA,CAACE,GACDJ,AAAmB,IAAnBA,EAAQ,MAAM,EACblB,CAAAA,GACC,oCAACyD,qCAAAA,YAAYA,CAAAA,C,SACV/C,GAAoB,6B,IAG3B,oCAACgD,qCAAAA,YAAYA,CAAAA,C,SACVxC,EAAQ,GAAG,CAACiB,AAAAA,GACX,qCAACwB,qCAAAA,WAAWA,CAAAA,CAIV,MAAO7D,EAAeqC,GACtB,SAAUO,E,UAET7C,EAAasC,GACd,oCAACyB,sBAAAA,KAAKA,CAAAA,CACJ,UAAWX,AAAAA,GAAAA,0BAAAA,EAAAA,AAAAA,EACT,kBACAzB,IAAkB1B,EAAeqC,GAC7B,cACA,Y,KAXNvB,EAAeA,EAAauB,GAAUrC,EAAeqC,I,aAsBzE,CAEA,SAASqB,yBACP,MACE,oCAACE,qCAAAA,YAAYA,CAAAA,C,SACV,CAAC,EAAG,EAAG,EAAE,CAAC,GAAG,CAACG,AAAAA,GACb,oCAACF,qCAAAA,WAAWA,CAAAA,CAAS,SAAQ,G,SAC3B,qCAAC,OAAI,UAAU,iC,UACb,oCAAC,OAAI,UAAU,6C,GACf,qCAAC,OAAI,UAAU,6B,UACb,oCAAC,OAAI,UAAU,yC,GACf,oCAAC,OAAI,UAAU,yC,UALHE,G,EAY1B,C"}
1
+ {"version":3,"file":"components\\async-select.cjs","sources":["webpack://@gbmtech/aurora-ui/./src/components/async-select.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nimport { useDebounce } from '@/hooks/use-debounce'\nimport { cn } from '@/lib/utils'\nimport { CaretDown, Check } from '@phosphor-icons/react'\nimport { Button } from './button'\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from './command'\nimport { Popover, PopoverContent, PopoverTrigger } from './popover'\nimport { Spinner } from './spinner'\n\nexport interface Option {\n value: string\n label: string\n disabled?: boolean\n description?: string\n icon?: React.ReactNode\n}\n\nexport interface AsyncSelectProps<T> {\n fetcher: (query?: string) => Promise<T[]>\n preload?: boolean\n filterFn?: (option: T, query: string) => boolean\n renderOption: (option: T) => React.ReactNode\n getOptionValue: (option: T) => string\n getDisplayValue: (option: T) => React.ReactNode\n notFound?: React.ReactNode\n loadingSkeleton?: React.ReactNode\n value: string\n onChange: (value: string) => void\n onSearchChange?: (value: string) => void\n label: string\n placeholder?: string\n disabled?: boolean\n className?: string\n triggerClassName?: string\n noResultsMessage?: string\n clearable?: boolean\n keyExtractor?: (option: T) => string\n}\n\nexport function AsyncSelect<T>({\n fetcher,\n preload,\n filterFn,\n renderOption,\n getOptionValue,\n getDisplayValue,\n notFound,\n loadingSkeleton,\n label,\n placeholder = '',\n value,\n onChange,\n onSearchChange,\n disabled = false,\n className,\n triggerClassName,\n noResultsMessage,\n clearable = true,\n keyExtractor,\n}: AsyncSelectProps<T>) {\n const [mounted, setMounted] = useState(false)\n const [open, setOpen] = useState(false)\n const [options, setOptions] = useState<T[]>([])\n const [loading, setLoading] = useState(false)\n const [error, setError] = useState<string | null>(null)\n const [selectedValue, setSelectedValue] = useState(value)\n const [selectedOption, setSelectedOption] = useState<T | null>(null)\n const [searchTerm, setSearchTerm] = useState('')\n const debouncedSearchTerm = useDebounce(searchTerm, preload ? 0 : 300)\n const [originalOptions, setOriginalOptions] = useState<T[]>([])\n\n useEffect(() => {\n setMounted(true)\n setSelectedValue(value)\n }, [value])\n\n // Initialize selectedOption when options are loaded and value exists\n useEffect(() => {\n if (value && options.length > 0) {\n const option = options.find(opt => getOptionValue(opt) === value)\n if (option) {\n setSelectedOption(option)\n }\n } else {\n setSelectedOption(null)\n }\n }, [value, options, getOptionValue])\n\n // Effect for initial fetch\n useEffect(() => {\n const initializeOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n // If we have a value, use it for the initial search\n const data = await fetcher(value)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n initializeOptions()\n }\n }, [mounted, fetcher, value])\n\n useEffect(() => {\n const fetchOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n const data = await fetcher(debouncedSearchTerm)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n fetchOptions()\n } else if (!preload) {\n fetchOptions()\n } else if (preload) {\n if (debouncedSearchTerm) {\n setOptions(\n originalOptions.filter(option =>\n filterFn ? filterFn(option, debouncedSearchTerm) : true\n )\n )\n } else {\n setOptions(originalOptions)\n }\n }\n }, [fetcher, debouncedSearchTerm, mounted, preload, filterFn])\n\n const handleSelect = useCallback(\n (currentValue: string) => {\n const newValue =\n clearable && currentValue === selectedValue ? '' : currentValue\n setSelectedValue(newValue)\n setSelectedOption(\n options.find(option => getOptionValue(option) === newValue) || null\n )\n onChange(newValue)\n setOpen(false)\n },\n [selectedValue, onChange, clearable, options, getOptionValue]\n )\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n variant=\"secondary\"\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\n 'w-full justify-between px-3 font-normal',\n disabled && 'cursor-not-allowed opacity-50',\n triggerClassName\n )}\n disabled={disabled}\n >\n {selectedOption ? (\n getDisplayValue(selectedOption)\n ) : (\n <span>{placeholder}</span>\n )}\n <CaretDown className=\"size-4 shrink-0 text-gray-400 opacity-50\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', className)}\n >\n <Command shouldFilter={false}>\n <div className=\"relative w-full border-b\">\n <CommandInput\n placeholder={`Buscar ${label.toLowerCase()}...`}\n value={searchTerm}\n onValueChange={value => {\n setSearchTerm(value)\n onSearchChange?.(value)\n }}\n />\n {loading && options.length > 0 && (\n <div className=\"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center\">\n <Spinner />\n </div>\n )}\n </div>\n <CommandList>\n {error && <div className=\"p-4 text-center text-error\">{error}</div>}\n {loading &&\n options.length === 0 &&\n (loadingSkeleton || <DefaultLoadingSkeleton />)}\n {!loading &&\n !error &&\n options.length === 0 &&\n (notFound || (\n <CommandEmpty>\n {noResultsMessage ?? 'Nenhum registro encontrado.'}\n </CommandEmpty>\n ))}\n <CommandGroup>\n {options.map(option => (\n <CommandItem\n key={\n keyExtractor ? keyExtractor(option) : getOptionValue(option)\n }\n value={getOptionValue(option)}\n onSelect={handleSelect}\n >\n {renderOption(option)}\n <Check\n className={cn(\n 'ml-auto h-3 w-3',\n selectedValue === getOptionValue(option)\n ? 'opacity-100'\n : 'opacity-0'\n )}\n />\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n}\n\nfunction DefaultLoadingSkeleton() {\n return (\n <CommandGroup>\n {[1, 2, 3].map(i => (\n <CommandItem key={i} disabled>\n <div className=\"flex w-full items-center gap-2\">\n <div className=\"h-6 w-6 animate-pulse rounded-full bg-muted\" />\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"h-4 w-24 animate-pulse rounded bg-muted\" />\n <div className=\"h-3 w-16 animate-pulse rounded bg-muted\" />\n </div>\n </div>\n </CommandItem>\n ))}\n </CommandGroup>\n )\n}\n"],"names":["AsyncSelect","fetcher","preload","filterFn","renderOption","getOptionValue","getDisplayValue","notFound","loadingSkeleton","label","placeholder","value","onChange","onSearchChange","disabled","className","triggerClassName","noResultsMessage","clearable","keyExtractor","mounted","setMounted","useState","open","setOpen","options","setOptions","loading","setLoading","error","setError","selectedValue","setSelectedValue","selectedOption","setSelectedOption","searchTerm","setSearchTerm","debouncedSearchTerm","useDebounce","originalOptions","setOriginalOptions","useEffect","option","opt","initializeOptions","data","err","Error","fetchOptions","handleSelect","useCallback","currentValue","newValue","Popover","PopoverTrigger","Button","cn","CaretDown","PopoverContent","Command","CommandInput","Spinner","CommandList","DefaultLoadingSkeleton","CommandEmpty","CommandGroup","CommandItem","Check","i"],"mappings":"g0CA+CO,SAASA,YAAe,CAC7BC,QAAAA,CAAO,CACPC,QAAAA,CAAO,CACPC,SAAAA,CAAQ,CACRC,aAAAA,CAAY,CACZC,eAAAA,CAAc,CACdC,gBAAAA,CAAe,CACfC,SAAAA,CAAQ,CACRC,gBAAAA,CAAe,CACfC,MAAAA,CAAK,CACLC,YAAAA,EAAc,EAAE,CAChBC,MAAAA,CAAK,CACLC,SAAAA,CAAQ,CACRC,eAAAA,CAAc,CACdC,SAAAA,EAAW,EAAK,CAChBC,UAAAA,CAAS,CACTC,iBAAAA,CAAgB,CAChBC,iBAAAA,CAAgB,CAChBC,UAAAA,EAAY,EAAI,CAChBC,aAAAA,CAAY,CACQ,EACpB,GAAM,CAACC,EAASC,EAAW,CAAGC,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IACjC,CAACC,EAAMC,EAAQ,CAAGF,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IAC3B,CAACG,EAASC,EAAW,CAAGJ,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAc,EAAE,EACxC,CAACK,EAASC,EAAW,CAAGN,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IACjC,CAACO,EAAOC,EAAS,CAAGR,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAwB,MAC5C,CAACS,EAAeC,EAAiB,CAAGV,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAASX,GAC7C,CAACsB,EAAgBC,EAAkB,CAAGZ,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAmB,MACzD,CAACa,EAAYC,EAAc,CAAGd,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAS,IACvCe,EAAsBC,AAAAA,GAAAA,iCAAAA,WAAAA,AAAAA,EAAYH,EAAYjC,AAAc,KAAdA,GAC9C,CAACqC,EAAiBC,EAAmB,CAAGlB,AAAAA,GAAAA,+BAAAA,QAAAA,AAAAA,EAAc,EAAE,EAE9DmB,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACRpB,EAAW,IACXW,EAAiBrB,EACnB,EAAG,CAACA,EAAM,EAGV8B,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACR,GAAI9B,GAASc,EAAQ,MAAM,CAAG,EAAG,CAC/B,IAAMiB,EAASjB,EAAQ,IAAI,CAACkB,AAAAA,GAAOtC,EAAesC,KAAShC,EACvD+B,CAAAA,GACFR,EAAkBQ,EAEtB,MACER,EAAkB,KAEtB,EAAG,CAACvB,EAAOc,EAASpB,EAAe,EAGnCoC,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACR,IAAMG,EAAoB,UACxB,GAAI,CACFhB,EAAW,IACXE,EAAS,MAET,IAAMe,EAAO,MAAM5C,EAAQU,GAC3B6B,EAAmBK,GACnBnB,EAAWmB,EACb,CAAE,MAAOC,EAAK,CACZhB,EAASgB,aAAeC,MAAQD,EAAI,OAAO,CAAG,0BAChD,QAAU,CACRlB,EAAW,GACb,CACF,CAEI,CAACR,GACHwB,GAEJ,EAAG,CAACxB,EAASnB,EAASU,EAAM,EAE5B8B,AAAAA,GAAAA,+BAAAA,SAAAA,AAAAA,EAAU,KACR,IAAMO,EAAe,UACnB,GAAI,CACFpB,EAAW,IACXE,EAAS,MACT,IAAMe,EAAO,MAAM5C,EAAQoC,GAC3BG,EAAmBK,GACnBnB,EAAWmB,EACb,CAAE,MAAOC,EAAK,CACZhB,EAASgB,aAAeC,MAAQD,EAAI,OAAO,CAAG,0BAChD,QAAU,CACRlB,EAAW,GACb,CACF,EAEKR,GAEOlB,EAEDA,IACLmC,EACFX,EACEa,EAAgB,MAAM,CAACG,AAAAA,GACrBvC,CAAAA,GAAWA,EAASuC,EAAQL,KAIhCX,EAAWa,IATbS,GAYJ,EAAG,CAAC/C,EAASoC,EAAqBjB,EAASlB,EAASC,EAAS,EAE7D,IAAM8C,EAAeC,AAAAA,GAAAA,+BAAAA,WAAAA,AAAAA,EACnB,AAACC,IACC,IAAMC,EACJlC,GAAaiC,IAAiBpB,EAAgB,GAAKoB,EACrDnB,EAAiBoB,GACjBlB,EACET,EAAQ,IAAI,CAACiB,AAAAA,GAAUrC,EAAeqC,KAAYU,IAAa,MAEjExC,EAASwC,GACT5B,EAAQ,GACV,EACA,CAACO,EAAenB,EAAUM,EAAWO,EAASpB,EAAe,EAG/D,MACE,qCAACgD,qCAAAA,OAAOA,CAAAA,CAAC,KAAM9B,EAAM,aAAcC,E,UACjC,oCAAC8B,qCAAAA,cAAcA,CAAAA,CAAC,QAAO,G,SACrB,qCAACC,oCAAAA,MAAMA,CAAAA,CACL,QAAQ,YACR,KAAK,WACL,gBAAehC,EACf,UAAWiC,AAAAA,GAAAA,0BAAAA,EAAAA,AAAAA,EACT,0CACA1C,GAAY,gCACZE,GAEF,SAAUF,E,UAETmB,EACC3B,EAAgB2B,GAEhB,oCAAC,Q,SAAMvB,C,GAET,oCAAC+C,sBAAAA,SAASA,CAAAA,CAAC,UAAU,0C,QAGzB,oCAACC,qCAAAA,cAAcA,CAAAA,CACb,UAAWF,AAAAA,GAAAA,0BAAAA,EAAAA,AAAAA,EAAG,6CAA8CzC,G,SAE5D,qCAAC4C,qCAAAA,OAAOA,CAAAA,CAAC,aAAc,G,UACrB,qCAAC,OAAI,UAAU,2B,UACb,oCAACC,qCAAAA,YAAYA,CAAAA,CACX,YAAa,CAAC,OAAO,EAAEnD,EAAM,WAAW,GAAG,GAAG,CAAC,CAC/C,MAAO0B,EACP,cAAexB,AAAAA,IACbyB,EAAczB,GACdE,IAAiBF,EACnB,C,GAEDgB,GAAWF,EAAQ,MAAM,CAAG,GAC3B,oCAAC,OAAI,UAAU,wE,SACb,oCAACoC,qCAAAA,OAAOA,CAAAA,CAAAA,E,MAId,qCAACC,qCAAAA,WAAWA,CAAAA,C,UACTjC,GAAS,oCAAC,OAAI,UAAU,6B,SAA8BA,C,GACtDF,GACCF,AAAmB,IAAnBA,EAAQ,MAAM,EACbjB,CAAAA,GAAmB,oCAACuD,uBAAAA,CAAAA,EAAAA,EACtB,CAACpC,GACA,CAACE,GACDJ,AAAmB,IAAnBA,EAAQ,MAAM,EACblB,CAAAA,GACC,oCAACyD,qCAAAA,YAAYA,CAAAA,C,SACV/C,GAAoB,6B,IAG3B,oCAACgD,qCAAAA,YAAYA,CAAAA,C,SACVxC,EAAQ,GAAG,CAACiB,AAAAA,GACX,qCAACwB,qCAAAA,WAAWA,CAAAA,CAIV,MAAO7D,EAAeqC,GACtB,SAAUO,E,UAET7C,EAAasC,GACd,oCAACyB,sBAAAA,KAAKA,CAAAA,CACJ,UAAWX,AAAAA,GAAAA,0BAAAA,EAAAA,AAAAA,EACT,kBACAzB,IAAkB1B,EAAeqC,GAC7B,cACA,Y,KAXNvB,EAAeA,EAAauB,GAAUrC,EAAeqC,I,aAsBzE,CAEA,SAASqB,yBACP,MACE,oCAACE,qCAAAA,YAAYA,CAAAA,C,SACV,CAAC,EAAG,EAAG,EAAE,CAAC,GAAG,CAACG,AAAAA,GACb,oCAACF,qCAAAA,WAAWA,CAAAA,CAAS,SAAQ,G,SAC3B,qCAAC,OAAI,UAAU,iC,UACb,oCAAC,OAAI,UAAU,6C,GACf,qCAAC,OAAI,UAAU,6B,UACb,oCAAC,OAAI,UAAU,yC,GACf,oCAAC,OAAI,UAAU,yC,UALHE,G,EAY1B,C"}
@@ -1 +1 @@
1
- {"version":3,"file":"async-select.d.ts","sourceRoot":"","sources":["../../../src/components/async-select.tsx"],"names":[],"mappings":"AAiBA,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAA;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;IAChD,YAAY,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC5C,cAAc,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,CAAA;IACrC,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,CAAA;CACrC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAC7B,OAAO,EACP,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,QAAQ,EACR,eAAe,EACf,KAAK,EACL,WAAyB,EACzB,KAAK,EACL,QAAQ,EACR,cAAc,EACd,QAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,SAAgB,EAChB,YAAY,GACb,EAAE,gBAAgB,CAAC,CAAC,CAAC,2CA6KrB"}
1
+ {"version":3,"file":"async-select.d.ts","sourceRoot":"","sources":["../../../src/components/async-select.tsx"],"names":[],"mappings":"AAiBA,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAA;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAA;IAChD,YAAY,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC5C,cAAc,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,CAAA;IACrC,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAA;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,CAAA;CACrC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,EAC7B,OAAO,EACP,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,eAAe,EACf,QAAQ,EACR,eAAe,EACf,KAAK,EACL,WAAgB,EAChB,KAAK,EACL,QAAQ,EACR,cAAc,EACd,QAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,SAAgB,EAChB,YAAY,GACb,EAAE,gBAAgB,CAAC,CAAC,CAAC,2CAiLrB"}
@@ -1,2 +1,2 @@
1
- import*as e from"react/jsx-runtime";import*as s from"react";import*as t from"../hooks/use-debounce.js";import*as a from"../lib/utils.js";import*as l from"@phosphor-icons/react";import*as n from"./button.js";import*as r from"./command.js";import*as o from"./popover.js";import*as i from"./spinner.js";function c({fetcher:c,preload:d,filterFn:u,renderOption:p,getOptionValue:f,getDisplayValue:h,notFound:x,loadingSkeleton:j,label:g,placeholder:v="Selecione",value:b,onChange:y,onSearchChange:C,disabled:w=!1,className:N,triggerClassName:S,noResultsMessage:E,clearable:k=!0,keyExtractor:F}){let[I,P]=(0,s.useState)(!1),[B,D]=(0,s.useState)(!1),[G,L]=(0,s.useState)([]),[z,A]=(0,s.useState)(!1),[O,T]=(0,s.useState)(null),[V,$]=(0,s.useState)(b),[q,H]=(0,s.useState)(null),[J,K]=(0,s.useState)(""),M=(0,t.useDebounce)(J,300*!d),[Q,R]=(0,s.useState)([]);(0,s.useEffect)(()=>{P(!0),$(b)},[b]),(0,s.useEffect)(()=>{if(b&&G.length>0){let e=G.find(e=>f(e)===b);e&&H(e)}else H(null)},[b,G,f]),(0,s.useEffect)(()=>{let e=async()=>{try{A(!0),T(null);let e=await c(b);R(e),L(e)}catch(e){T(e instanceof Error?e.message:"Failed to fetch options")}finally{A(!1)}};I||e()},[I,c,b]),(0,s.useEffect)(()=>{let e=async()=>{try{A(!0),T(null);let e=await c(M);R(e),L(e)}catch(e){T(e instanceof Error?e.message:"Failed to fetch options")}finally{A(!1)}};I&&d?d&&(M?L(Q.filter(e=>!u||u(e,M))):L(Q)):e()},[c,M,I,d,u]);let U=(0,s.useCallback)(e=>{let s=k&&e===V?"":e;$(s),H(G.find(e=>f(e)===s)||null),y(s),D(!1)},[V,y,k,G,f]);return(0,e.jsxs)(o.Popover,{open:B,onOpenChange:D,children:[(0,e.jsx)(o.PopoverTrigger,{asChild:!0,children:(0,e.jsxs)(n.Button,{variant:"secondary",role:"combobox","aria-expanded":B,className:(0,a.cn)("w-full justify-between px-3 font-normal",w&&"cursor-not-allowed opacity-50",S),disabled:w,children:[q?h(q):v,(0,e.jsx)(l.CaretDown,{className:"size-4 shrink-0 text-gray-400 opacity-50"})]})}),(0,e.jsx)(o.PopoverContent,{className:(0,a.cn)("w-[var(--radix-popover-trigger-width)] p-0",N),children:(0,e.jsxs)(r.Command,{shouldFilter:!1,children:[(0,e.jsxs)("div",{className:"relative w-full border-b",children:[(0,e.jsx)(r.CommandInput,{placeholder:`Buscar ${g.toLowerCase()}...`,value:J,onValueChange:e=>{K(e),C?.(e)}}),z&&G.length>0&&(0,e.jsx)("div",{className:"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center",children:(0,e.jsx)(i.Spinner,{})})]}),(0,e.jsxs)(r.CommandList,{children:[O&&(0,e.jsx)("div",{className:"p-4 text-center text-error",children:O}),z&&0===G.length&&(j||(0,e.jsx)(m,{})),!z&&!O&&0===G.length&&(x||(0,e.jsx)(r.CommandEmpty,{children:E??"Nenhum registro encontrado."})),(0,e.jsx)(r.CommandGroup,{children:G.map(s=>(0,e.jsxs)(r.CommandItem,{value:f(s),onSelect:U,children:[p(s),(0,e.jsx)(l.Check,{className:(0,a.cn)("ml-auto h-3 w-3",V===f(s)?"opacity-100":"opacity-0")})]},F?F(s):f(s)))})]})]})})]})}function m(){return(0,e.jsx)(r.CommandGroup,{children:[1,2,3].map(s=>(0,e.jsx)(r.CommandItem,{disabled:!0,children:(0,e.jsxs)("div",{className:"flex w-full items-center gap-2",children:[(0,e.jsx)("div",{className:"h-6 w-6 animate-pulse rounded-full bg-muted"}),(0,e.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,e.jsx)("div",{className:"h-4 w-24 animate-pulse rounded bg-muted"}),(0,e.jsx)("div",{className:"h-3 w-16 animate-pulse rounded bg-muted"})]})]})},s))})}export{c as AsyncSelect};
1
+ import*as e from"react/jsx-runtime";import*as s from"react";import*as t from"../hooks/use-debounce.js";import*as a from"../lib/utils.js";import*as l from"@phosphor-icons/react";import*as n from"./button.js";import*as r from"./command.js";import*as o from"./popover.js";import*as i from"./spinner.js";function c({fetcher:c,preload:d,filterFn:u,renderOption:p,getOptionValue:h,getDisplayValue:f,notFound:x,loadingSkeleton:j,label:g,placeholder:v="",value:b,onChange:y,onSearchChange:C,disabled:w=!1,className:N,triggerClassName:S,noResultsMessage:E,clearable:k=!0,keyExtractor:F}){let[I,P]=(0,s.useState)(!1),[B,D]=(0,s.useState)(!1),[G,L]=(0,s.useState)([]),[z,A]=(0,s.useState)(!1),[O,T]=(0,s.useState)(null),[V,$]=(0,s.useState)(b),[q,H]=(0,s.useState)(null),[J,K]=(0,s.useState)(""),M=(0,t.useDebounce)(J,300*!d),[Q,R]=(0,s.useState)([]);(0,s.useEffect)(()=>{P(!0),$(b)},[b]),(0,s.useEffect)(()=>{if(b&&G.length>0){let e=G.find(e=>h(e)===b);e&&H(e)}else H(null)},[b,G,h]),(0,s.useEffect)(()=>{let e=async()=>{try{A(!0),T(null);let e=await c(b);R(e),L(e)}catch(e){T(e instanceof Error?e.message:"Failed to fetch options")}finally{A(!1)}};I||e()},[I,c,b]),(0,s.useEffect)(()=>{let e=async()=>{try{A(!0),T(null);let e=await c(M);R(e),L(e)}catch(e){T(e instanceof Error?e.message:"Failed to fetch options")}finally{A(!1)}};I&&d?d&&(M?L(Q.filter(e=>!u||u(e,M))):L(Q)):e()},[c,M,I,d,u]);let U=(0,s.useCallback)(e=>{let s=k&&e===V?"":e;$(s),H(G.find(e=>h(e)===s)||null),y(s),D(!1)},[V,y,k,G,h]);return(0,e.jsxs)(o.Popover,{open:B,onOpenChange:D,children:[(0,e.jsx)(o.PopoverTrigger,{asChild:!0,children:(0,e.jsxs)(n.Button,{variant:"secondary",role:"combobox","aria-expanded":B,className:(0,a.cn)("w-full justify-between px-3 font-normal",w&&"cursor-not-allowed opacity-50",S),disabled:w,children:[q?f(q):(0,e.jsx)("span",{children:v}),(0,e.jsx)(l.CaretDown,{className:"size-4 shrink-0 text-gray-400 opacity-50"})]})}),(0,e.jsx)(o.PopoverContent,{className:(0,a.cn)("w-[var(--radix-popover-trigger-width)] p-0",N),children:(0,e.jsxs)(r.Command,{shouldFilter:!1,children:[(0,e.jsxs)("div",{className:"relative w-full border-b",children:[(0,e.jsx)(r.CommandInput,{placeholder:`Buscar ${g.toLowerCase()}...`,value:J,onValueChange:e=>{K(e),C?.(e)}}),z&&G.length>0&&(0,e.jsx)("div",{className:"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center",children:(0,e.jsx)(i.Spinner,{})})]}),(0,e.jsxs)(r.CommandList,{children:[O&&(0,e.jsx)("div",{className:"p-4 text-center text-error",children:O}),z&&0===G.length&&(j||(0,e.jsx)(m,{})),!z&&!O&&0===G.length&&(x||(0,e.jsx)(r.CommandEmpty,{children:E??"Nenhum registro encontrado."})),(0,e.jsx)(r.CommandGroup,{children:G.map(s=>(0,e.jsxs)(r.CommandItem,{value:h(s),onSelect:U,children:[p(s),(0,e.jsx)(l.Check,{className:(0,a.cn)("ml-auto h-3 w-3",V===h(s)?"opacity-100":"opacity-0")})]},F?F(s):h(s)))})]})]})})]})}function m(){return(0,e.jsx)(r.CommandGroup,{children:[1,2,3].map(s=>(0,e.jsx)(r.CommandItem,{disabled:!0,children:(0,e.jsxs)("div",{className:"flex w-full items-center gap-2",children:[(0,e.jsx)("div",{className:"h-6 w-6 animate-pulse rounded-full bg-muted"}),(0,e.jsxs)("div",{className:"flex flex-1 flex-col gap-1",children:[(0,e.jsx)("div",{className:"h-4 w-24 animate-pulse rounded bg-muted"}),(0,e.jsx)("div",{className:"h-3 w-16 animate-pulse rounded bg-muted"})]})]})},s))})}export{c as AsyncSelect};
2
2
  //# sourceMappingURL=async-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components\\async-select.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/async-select.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nimport { useDebounce } from '@/hooks/use-debounce'\nimport { cn } from '@/lib/utils'\nimport { CaretDown, Check } from '@phosphor-icons/react'\nimport { Button } from './button'\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from './command'\nimport { Popover, PopoverContent, PopoverTrigger } from './popover'\nimport { Spinner } from './spinner'\n\nexport interface Option {\n value: string\n label: string\n disabled?: boolean\n description?: string\n icon?: React.ReactNode\n}\n\nexport interface AsyncSelectProps<T> {\n fetcher: (query?: string) => Promise<T[]>\n preload?: boolean\n filterFn?: (option: T, query: string) => boolean\n renderOption: (option: T) => React.ReactNode\n getOptionValue: (option: T) => string\n getDisplayValue: (option: T) => React.ReactNode\n notFound?: React.ReactNode\n loadingSkeleton?: React.ReactNode\n value: string\n onChange: (value: string) => void\n onSearchChange?: (value: string) => void\n label: string\n placeholder?: string\n disabled?: boolean\n className?: string\n triggerClassName?: string\n noResultsMessage?: string\n clearable?: boolean\n keyExtractor?: (option: T) => string\n}\n\nexport function AsyncSelect<T>({\n fetcher,\n preload,\n filterFn,\n renderOption,\n getOptionValue,\n getDisplayValue,\n notFound,\n loadingSkeleton,\n label,\n placeholder = 'Selecione',\n value,\n onChange,\n onSearchChange,\n disabled = false,\n className,\n triggerClassName,\n noResultsMessage,\n clearable = true,\n keyExtractor,\n}: AsyncSelectProps<T>) {\n const [mounted, setMounted] = useState(false)\n const [open, setOpen] = useState(false)\n const [options, setOptions] = useState<T[]>([])\n const [loading, setLoading] = useState(false)\n const [error, setError] = useState<string | null>(null)\n const [selectedValue, setSelectedValue] = useState(value)\n const [selectedOption, setSelectedOption] = useState<T | null>(null)\n const [searchTerm, setSearchTerm] = useState('')\n const debouncedSearchTerm = useDebounce(searchTerm, preload ? 0 : 300)\n const [originalOptions, setOriginalOptions] = useState<T[]>([])\n\n useEffect(() => {\n setMounted(true)\n setSelectedValue(value)\n }, [value])\n\n // Initialize selectedOption when options are loaded and value exists\n useEffect(() => {\n if (value && options.length > 0) {\n const option = options.find(opt => getOptionValue(opt) === value)\n if (option) {\n setSelectedOption(option)\n }\n } else {\n setSelectedOption(null)\n }\n }, [value, options, getOptionValue])\n\n // Effect for initial fetch\n useEffect(() => {\n const initializeOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n // If we have a value, use it for the initial search\n const data = await fetcher(value)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n initializeOptions()\n }\n }, [mounted, fetcher, value])\n\n useEffect(() => {\n const fetchOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n const data = await fetcher(debouncedSearchTerm)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n fetchOptions()\n } else if (!preload) {\n fetchOptions()\n } else if (preload) {\n if (debouncedSearchTerm) {\n setOptions(\n originalOptions.filter(option =>\n filterFn ? filterFn(option, debouncedSearchTerm) : true\n )\n )\n } else {\n setOptions(originalOptions)\n }\n }\n }, [fetcher, debouncedSearchTerm, mounted, preload, filterFn])\n\n const handleSelect = useCallback(\n (currentValue: string) => {\n const newValue =\n clearable && currentValue === selectedValue ? '' : currentValue\n setSelectedValue(newValue)\n setSelectedOption(\n options.find(option => getOptionValue(option) === newValue) || null\n )\n onChange(newValue)\n setOpen(false)\n },\n [selectedValue, onChange, clearable, options, getOptionValue]\n )\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n variant=\"secondary\"\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\n 'w-full justify-between px-3 font-normal',\n disabled && 'cursor-not-allowed opacity-50',\n triggerClassName\n )}\n disabled={disabled}\n >\n {selectedOption ? getDisplayValue(selectedOption) : placeholder}\n <CaretDown className=\"size-4 shrink-0 text-gray-400 opacity-50\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', className)}\n >\n <Command shouldFilter={false}>\n <div className=\"relative w-full border-b\">\n <CommandInput\n placeholder={`Buscar ${label.toLowerCase()}...`}\n value={searchTerm}\n onValueChange={value => {\n setSearchTerm(value)\n onSearchChange?.(value)\n }}\n />\n {loading && options.length > 0 && (\n <div className=\"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center\">\n <Spinner />\n </div>\n )}\n </div>\n <CommandList>\n {error && <div className=\"p-4 text-center text-error\">{error}</div>}\n {loading &&\n options.length === 0 &&\n (loadingSkeleton || <DefaultLoadingSkeleton />)}\n {!loading &&\n !error &&\n options.length === 0 &&\n (notFound || (\n <CommandEmpty>\n {noResultsMessage ?? 'Nenhum registro encontrado.'}\n </CommandEmpty>\n ))}\n <CommandGroup>\n {options.map(option => (\n <CommandItem\n key={\n keyExtractor ? keyExtractor(option) : getOptionValue(option)\n }\n value={getOptionValue(option)}\n onSelect={handleSelect}\n >\n {renderOption(option)}\n <Check\n className={cn(\n 'ml-auto h-3 w-3',\n selectedValue === getOptionValue(option)\n ? 'opacity-100'\n : 'opacity-0'\n )}\n />\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n}\n\nfunction DefaultLoadingSkeleton() {\n return (\n <CommandGroup>\n {[1, 2, 3].map(i => (\n <CommandItem key={i} disabled>\n <div className=\"flex w-full items-center gap-2\">\n <div className=\"h-6 w-6 animate-pulse rounded-full bg-muted\" />\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"h-4 w-24 animate-pulse rounded bg-muted\" />\n <div className=\"h-3 w-16 animate-pulse rounded bg-muted\" />\n </div>\n </div>\n </CommandItem>\n ))}\n </CommandGroup>\n )\n}\n"],"names":["AsyncSelect","fetcher","preload","filterFn","renderOption","getOptionValue","getDisplayValue","notFound","loadingSkeleton","label","placeholder","value","onChange","onSearchChange","disabled","className","triggerClassName","noResultsMessage","clearable","keyExtractor","mounted","setMounted","useState","open","setOpen","options","setOptions","loading","setLoading","error","setError","selectedValue","setSelectedValue","selectedOption","setSelectedOption","searchTerm","setSearchTerm","debouncedSearchTerm","useDebounce","originalOptions","setOriginalOptions","useEffect","option","opt","initializeOptions","data","err","Error","fetchOptions","handleSelect","useCallback","currentValue","newValue","Popover","PopoverTrigger","Button","cn","CaretDown","PopoverContent","Command","CommandInput","Spinner","CommandList","DefaultLoadingSkeleton","CommandEmpty","CommandGroup","CommandItem","Check","i"],"mappings":"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"}
1
+ {"version":3,"file":"components\\async-select.js","sources":["webpack://@gbmtech/aurora-ui/./src/components/async-select.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nimport { useDebounce } from '@/hooks/use-debounce'\nimport { cn } from '@/lib/utils'\nimport { CaretDown, Check } from '@phosphor-icons/react'\nimport { Button } from './button'\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from './command'\nimport { Popover, PopoverContent, PopoverTrigger } from './popover'\nimport { Spinner } from './spinner'\n\nexport interface Option {\n value: string\n label: string\n disabled?: boolean\n description?: string\n icon?: React.ReactNode\n}\n\nexport interface AsyncSelectProps<T> {\n fetcher: (query?: string) => Promise<T[]>\n preload?: boolean\n filterFn?: (option: T, query: string) => boolean\n renderOption: (option: T) => React.ReactNode\n getOptionValue: (option: T) => string\n getDisplayValue: (option: T) => React.ReactNode\n notFound?: React.ReactNode\n loadingSkeleton?: React.ReactNode\n value: string\n onChange: (value: string) => void\n onSearchChange?: (value: string) => void\n label: string\n placeholder?: string\n disabled?: boolean\n className?: string\n triggerClassName?: string\n noResultsMessage?: string\n clearable?: boolean\n keyExtractor?: (option: T) => string\n}\n\nexport function AsyncSelect<T>({\n fetcher,\n preload,\n filterFn,\n renderOption,\n getOptionValue,\n getDisplayValue,\n notFound,\n loadingSkeleton,\n label,\n placeholder = '',\n value,\n onChange,\n onSearchChange,\n disabled = false,\n className,\n triggerClassName,\n noResultsMessage,\n clearable = true,\n keyExtractor,\n}: AsyncSelectProps<T>) {\n const [mounted, setMounted] = useState(false)\n const [open, setOpen] = useState(false)\n const [options, setOptions] = useState<T[]>([])\n const [loading, setLoading] = useState(false)\n const [error, setError] = useState<string | null>(null)\n const [selectedValue, setSelectedValue] = useState(value)\n const [selectedOption, setSelectedOption] = useState<T | null>(null)\n const [searchTerm, setSearchTerm] = useState('')\n const debouncedSearchTerm = useDebounce(searchTerm, preload ? 0 : 300)\n const [originalOptions, setOriginalOptions] = useState<T[]>([])\n\n useEffect(() => {\n setMounted(true)\n setSelectedValue(value)\n }, [value])\n\n // Initialize selectedOption when options are loaded and value exists\n useEffect(() => {\n if (value && options.length > 0) {\n const option = options.find(opt => getOptionValue(opt) === value)\n if (option) {\n setSelectedOption(option)\n }\n } else {\n setSelectedOption(null)\n }\n }, [value, options, getOptionValue])\n\n // Effect for initial fetch\n useEffect(() => {\n const initializeOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n // If we have a value, use it for the initial search\n const data = await fetcher(value)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n initializeOptions()\n }\n }, [mounted, fetcher, value])\n\n useEffect(() => {\n const fetchOptions = async () => {\n try {\n setLoading(true)\n setError(null)\n const data = await fetcher(debouncedSearchTerm)\n setOriginalOptions(data)\n setOptions(data)\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to fetch options')\n } finally {\n setLoading(false)\n }\n }\n\n if (!mounted) {\n fetchOptions()\n } else if (!preload) {\n fetchOptions()\n } else if (preload) {\n if (debouncedSearchTerm) {\n setOptions(\n originalOptions.filter(option =>\n filterFn ? filterFn(option, debouncedSearchTerm) : true\n )\n )\n } else {\n setOptions(originalOptions)\n }\n }\n }, [fetcher, debouncedSearchTerm, mounted, preload, filterFn])\n\n const handleSelect = useCallback(\n (currentValue: string) => {\n const newValue =\n clearable && currentValue === selectedValue ? '' : currentValue\n setSelectedValue(newValue)\n setSelectedOption(\n options.find(option => getOptionValue(option) === newValue) || null\n )\n onChange(newValue)\n setOpen(false)\n },\n [selectedValue, onChange, clearable, options, getOptionValue]\n )\n\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button\n variant=\"secondary\"\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\n 'w-full justify-between px-3 font-normal',\n disabled && 'cursor-not-allowed opacity-50',\n triggerClassName\n )}\n disabled={disabled}\n >\n {selectedOption ? (\n getDisplayValue(selectedOption)\n ) : (\n <span>{placeholder}</span>\n )}\n <CaretDown className=\"size-4 shrink-0 text-gray-400 opacity-50\" />\n </Button>\n </PopoverTrigger>\n <PopoverContent\n className={cn('w-[var(--radix-popover-trigger-width)] p-0', className)}\n >\n <Command shouldFilter={false}>\n <div className=\"relative w-full border-b\">\n <CommandInput\n placeholder={`Buscar ${label.toLowerCase()}...`}\n value={searchTerm}\n onValueChange={value => {\n setSearchTerm(value)\n onSearchChange?.(value)\n }}\n />\n {loading && options.length > 0 && (\n <div className=\"-translate-y-1/2 absolute top-1/2 right-2 flex transform items-center\">\n <Spinner />\n </div>\n )}\n </div>\n <CommandList>\n {error && <div className=\"p-4 text-center text-error\">{error}</div>}\n {loading &&\n options.length === 0 &&\n (loadingSkeleton || <DefaultLoadingSkeleton />)}\n {!loading &&\n !error &&\n options.length === 0 &&\n (notFound || (\n <CommandEmpty>\n {noResultsMessage ?? 'Nenhum registro encontrado.'}\n </CommandEmpty>\n ))}\n <CommandGroup>\n {options.map(option => (\n <CommandItem\n key={\n keyExtractor ? keyExtractor(option) : getOptionValue(option)\n }\n value={getOptionValue(option)}\n onSelect={handleSelect}\n >\n {renderOption(option)}\n <Check\n className={cn(\n 'ml-auto h-3 w-3',\n selectedValue === getOptionValue(option)\n ? 'opacity-100'\n : 'opacity-0'\n )}\n />\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n </PopoverContent>\n </Popover>\n )\n}\n\nfunction DefaultLoadingSkeleton() {\n return (\n <CommandGroup>\n {[1, 2, 3].map(i => (\n <CommandItem key={i} disabled>\n <div className=\"flex w-full items-center gap-2\">\n <div className=\"h-6 w-6 animate-pulse rounded-full bg-muted\" />\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"h-4 w-24 animate-pulse rounded bg-muted\" />\n <div className=\"h-3 w-16 animate-pulse rounded bg-muted\" />\n </div>\n </div>\n </CommandItem>\n ))}\n </CommandGroup>\n )\n}\n"],"names":["AsyncSelect","fetcher","preload","filterFn","renderOption","getOptionValue","getDisplayValue","notFound","loadingSkeleton","label","placeholder","value","onChange","onSearchChange","disabled","className","triggerClassName","noResultsMessage","clearable","keyExtractor","mounted","setMounted","useState","open","setOpen","options","setOptions","loading","setLoading","error","setError","selectedValue","setSelectedValue","selectedOption","setSelectedOption","searchTerm","setSearchTerm","debouncedSearchTerm","useDebounce","originalOptions","setOriginalOptions","useEffect","option","opt","initializeOptions","data","err","Error","fetchOptions","handleSelect","useCallback","currentValue","newValue","Popover","PopoverTrigger","Button","cn","CaretDown","PopoverContent","Command","CommandInput","Spinner","CommandList","DefaultLoadingSkeleton","CommandEmpty","CommandGroup","CommandItem","Check","i"],"mappings":"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"}
@@ -1 +1 @@
1
- import*as t from"./data-table-date-filter.js";import*as a from"./data-table-faceted-filter.js";import*as e from"./data-table-pagination.js";import*as o from"./data-table-slider-filter.js";import*as r from"./data-table-view-options.js";export*from"./data-table-action-bar.js";export*from"./data-table-advanced-toolbar.js";export*from"./data-table-column-header.js";export*from"./data-table-filter-list.js";export*from"./data-table-filter-menu.js";export*from"./data-table-range-filter.js";export*from"./data-table-skeleton.js";export*from"./data-table-sort-list.js";export*from"./data-table-toolbar.js";export*from"./data-table.js";var n={"@/components/data-table/data-table-date-filter":function(a){a.exports=t},"@/components/data-table/data-table-faceted-filter":function(t){t.exports=a},"@/components/data-table/data-table-pagination":function(t){t.exports=e},"@/components/data-table/data-table-slider-filter":function(t){t.exports=o},"@/components/data-table/data-table-view-options":function(t){t.exports=r}},d={};function l(t){var a=d[t];if(void 0!==a)return a.exports;var e=d[t]={exports:{}};return n[t](e,e.exports,l),e.exports}l.d=(t,a)=>{for(var e in a)l.o(a,e)&&!l.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:a[e]})},l.o=(t,a)=>Object.prototype.hasOwnProperty.call(t,a),l.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var i={};l.r(i);var f=l("@/components/data-table/data-table-date-filter"),b={};for(var s in f)"default"!==s&&(b[s]=(function(t){return f[t]}).bind(0,s));l.d(i,b);var p=l("@/components/data-table/data-table-faceted-filter"),b={};for(var s in p)"default"!==s&&(b[s]=(function(t){return p[t]}).bind(0,s));l.d(i,b);var m=l("@/components/data-table/data-table-pagination"),b={};for(var s in m)"default"!==s&&(b[s]=(function(t){return m[t]}).bind(0,s));l.d(i,b);var c=l("@/components/data-table/data-table-slider-filter"),b={};for(var s in c)"default"!==s&&(b[s]=(function(t){return c[t]}).bind(0,s));l.d(i,b);var u=l("@/components/data-table/data-table-view-options"),b={};for(var s in u)"default"!==s&&(b[s]=(function(t){return u[t]}).bind(0,s));l.d(i,b);
1
+ import*as t from"./data-table-date-filter.js";import*as a from"./data-table-faceted-filter.js";import*as e from"./data-table-pagination.js";import*as o from"./data-table-range-filter.js";import*as r from"./data-table-slider-filter.js";import*as n from"./data-table-view-options.js";export*from"./data-table-action-bar.js";export*from"./data-table-advanced-toolbar.js";export*from"./data-table-column-header.js";export*from"./data-table-filter-list.js";export*from"./data-table-filter-menu.js";export*from"./data-table-skeleton.js";export*from"./data-table-sort-list.js";export*from"./data-table-toolbar.js";export*from"./data-table.js";var d={"@/components/data-table/data-table-date-filter":function(a){a.exports=t},"@/components/data-table/data-table-faceted-filter":function(t){t.exports=a},"@/components/data-table/data-table-pagination":function(t){t.exports=e},"@/components/data-table/data-table-range-filter":function(t){t.exports=o},"@/components/data-table/data-table-slider-filter":function(t){t.exports=r},"@/components/data-table/data-table-view-options":function(t){t.exports=n}},l={};function i(t){var a=l[t];if(void 0!==a)return a.exports;var e=l[t]={exports:{}};return d[t](e,e.exports,i),e.exports}i.d=(t,a)=>{for(var e in a)i.o(a,e)&&!i.o(t,e)&&Object.defineProperty(t,e,{enumerable:!0,get:a[e]})},i.o=(t,a)=>Object.prototype.hasOwnProperty.call(t,a),i.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var f={};i.r(f);var b=i("@/components/data-table/data-table-date-filter"),s={};for(var p in b)"default"!==p&&(s[p]=(function(t){return b[t]}).bind(0,p));i.d(f,s);var m=i("@/components/data-table/data-table-faceted-filter"),s={};for(var p in m)"default"!==p&&(s[p]=(function(t){return m[t]}).bind(0,p));i.d(f,s);var c=i("@/components/data-table/data-table-pagination"),s={};for(var p in c)"default"!==p&&(s[p]=(function(t){return c[t]}).bind(0,p));i.d(f,s);var u=i("@/components/data-table/data-table-range-filter"),s={};for(var p in u)"default"!==p&&(s[p]=(function(t){return u[t]}).bind(0,p));i.d(f,s);var v=i("@/components/data-table/data-table-slider-filter"),s={};for(var p in v)"default"!==p&&(s[p]=(function(t){return v[t]}).bind(0,p));i.d(f,s);var j=i("@/components/data-table/data-table-view-options"),s={};for(var p in j)"default"!==p&&(s[p]=(function(t){return j[t]}).bind(0,p));i.d(f,s);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gbmtech/aurora-ui",
3
- "version": "0.2.25",
3
+ "version": "0.2.27",
4
4
  "main": "./dist/cjs/index.cjs",
5
5
  "module": "./dist/esm/index.js",
6
6
  "types": "./dist/types/index.d.ts",