forlogic-core 1.9.3 → 1.10.1

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/index.js CHANGED
@@ -1 +1,10 @@
1
- "use strict";var e=require("react/jsx-runtime"),a=require("react"),t=require("@radix-ui/react-slot"),s=require("class-variance-authority"),r=require("clsx"),n=require("tailwind-merge"),i=require("date-fns"),o=require("sonner"),l=require("lucide-react"),d=require("@radix-ui/react-label"),c=require("@radix-ui/react-dialog"),u=require("react-hook-form"),m=require("@radix-ui/react-select"),p=require("@radix-ui/react-checkbox"),h=require("@radix-ui/react-toast"),x=require("@radix-ui/react-popover"),f=require("@supabase/supabase-js"),g=require("@tanstack/react-query"),b=require("react-router-dom"),v=require("@radix-ui/react-alert-dialog"),N=require("@radix-ui/react-dropdown-menu"),j=require("@radix-ui/react-scroll-area"),y=require("@radix-ui/react-accordion"),w=require("@radix-ui/react-aspect-ratio"),C=require("@radix-ui/react-avatar"),k=require("react-day-picker"),S=require("@radix-ui/react-collapsible"),E=require("@radix-ui/react-progress"),A=require("@radix-ui/react-radio-group"),T=require("@radix-ui/react-separator"),I=require("@radix-ui/react-tooltip"),P=require("@radix-ui/react-slider"),_=require("next-themes"),R=require("@radix-ui/react-switch"),D=require("@radix-ui/react-tabs"),F=require("@radix-ui/react-toggle"),M=require("@radix-ui/react-toggle-group"),L=require("react-markdown"),z=require("remark-gfm"),O=require("zod"),U=require("@hookform/resolvers");function $(e){var a=Object.create(null);return e&&Object.keys(e).forEach(function(t){if("default"!==t){var s=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(a,t,s.get?s:{enumerable:!0,get:function(){return e[t]}})}}),a.default=e,Object.freeze(a)}var q=$(a),V=$(d),B=$(c),W=$(m),H=$(p),Q=$(h),G=$(x),K=$(v),X=$(N),J=$(j),Y=$(y),Z=$(w),ee=$(C),ae=$(S),te=$(E),se=$(A),re=$(T),ne=$(I),ie=$(P),oe=$(R),le=$(D),de=$(F),ce=$(M);function ue(e,a){a?.stopPropagation();window.open(e,"_blank","noopener,noreferrer")||navigator.clipboard.writeText(e).then(()=>{o.toast.info("Link copiado para a área de transferência")})}function me(...e){return n.twMerge(r.clsx(e))}const pe=e=>{if(null==e)return e;if("string"==typeof e)return e.trim();if(Array.isArray(e))return e.map(pe);if("object"==typeof e&&e.constructor===Object){const a={};for(const[t,s]of Object.entries(e))a[t]=pe(s);return a}return e},he=s.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline",action:"bg-primary/10 text-primary hover:bg-primary/20 border border-primary/30","icon-only":"bg-transparent border border-input hover:bg-accent hover:text-accent-foreground p-2","external-link":"bg-transparent text-muted-foreground hover:text-foreground hover:bg-accent/50 transition-colors","action-primary":"bg-primary text-primary-foreground hover:bg-primary/90 shadow-sm","action-secondary":"bg-secondary text-secondary-foreground hover:bg-secondary/80 border border-input"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10","icon-sm":"h-8 w-8","icon-xs":"h-6 w-6"}},defaultVariants:{variant:"default",size:"default"}}),xe=q.forwardRef(({className:a,variant:s,size:r,asChild:n=!1,...i},o)=>{const l=n?t.Slot:"button";return e.jsx(l,{className:me(he({variant:s,size:r,className:a})),ref:o,...i})});xe.displayName="Button";const fe=a.forwardRef(({variant:a="default",className:t,children:s,...r},n)=>e.jsx(xe,{ref:n,variant:"action",size:"sm",className:me("h-7 px-2 text-xs",t),...r,children:s||e.jsx(l.EllipsisVertical,{size:12})}));fe.displayName="ActionButton";const ge=q.forwardRef(({className:a,type:t,...s},r)=>e.jsx("input",{type:t,className:me("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a),ref:r,...s}));ge.displayName="Input";const be=s.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),ve=q.forwardRef(({className:a,...t},s)=>e.jsx(V.Root,{ref:s,className:me(be(),a),...t}));ve.displayName=V.Root.displayName;const Ne=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("rounded-lg border bg-card text-card-foreground shadow-sm",a),...t}));Ne.displayName="Card";const je=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("flex flex-col space-y-1.5 p-6",a),...t}));je.displayName="CardHeader";const ye=q.forwardRef(({className:a,...t},s)=>e.jsx("h3",{ref:s,className:me("text-2xl font-semibold leading-none tracking-tight",a),...t}));ye.displayName="CardTitle";const we=q.forwardRef(({className:a,...t},s)=>e.jsx("p",{ref:s,className:me("text-sm text-muted-foreground",a),...t}));we.displayName="CardDescription";const Ce=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("p-6 pt-0",a),...t}));Ce.displayName="CardContent";const ke=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("flex items-center p-6 pt-0",a),...t}));ke.displayName="CardFooter";const Se=B.Root,Ee=B.Trigger,Ae=B.Portal,Te=B.Close,Ie=q.forwardRef(({className:a,...t},s)=>e.jsx(B.Overlay,{ref:s,className:me("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a),...t}));Ie.displayName=B.Overlay.displayName;const Pe=q.forwardRef(({className:a,children:t,...s},r)=>e.jsxs(Ae,{children:[e.jsx(Ie,{}),e.jsxs(B.Content,{ref:r,className:me("fixed left-[50%] top-[50%] z-50 grid w-full max-w-[420px] translate-x-[-50%] translate-y-[-50%] gap-3 bg-white p-6 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg max-h-[90vh] overflow-auto",a),...s,children:[t,e.jsxs(B.Close,{className:"absolute right-4 top-4 z-10 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(l.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Pe.displayName=B.Content.displayName;const _e=({className:a,...t})=>e.jsx("div",{className:me("flex flex-col space-y-1.5 text-center",a),...t});_e.displayName="DialogHeader";const Re=({className:a,...t})=>e.jsx("div",{className:me("flex flex-row gap-2 items-center justify-end mt-6",a),...t});Re.displayName="DialogFooter";const De=q.forwardRef(({className:a,...t},s)=>e.jsx(B.Title,{ref:s,className:me("text-xl font-semibold leading-none tracking-tight",a),...t}));De.displayName=B.Title.displayName;const Fe=q.forwardRef(({className:a,...t},s)=>e.jsx(B.Description,{ref:s,className:me("text-sm text-muted-foreground",a),...t}));Fe.displayName=B.Description.displayName;const Me=u.FormProvider,Le=q.createContext({}),ze=()=>{const e=q.useContext(Le),a=q.useContext(Oe),{getFieldState:t,formState:s}=u.useFormContext(),r=t(e.name,s);if(!e)throw new Error("useFormField should be used within <FormField>");const{id:n}=a;return{id:n,name:e.name,formItemId:`${n}-form-item`,formDescriptionId:`${n}-form-item-description`,formMessageId:`${n}-form-item-message`,...r}},Oe=q.createContext({}),Ue=q.forwardRef(({className:a,...t},s)=>{const r=q.useId();return e.jsx(Oe.Provider,{value:{id:r},children:e.jsx("div",{ref:s,className:me("space-y-2",a),...t})})});Ue.displayName="FormItem";const $e=q.forwardRef(({className:a,...t},s)=>{const{error:r,formItemId:n}=ze();return e.jsx(ve,{ref:s,className:me(r&&"text-destructive",a),htmlFor:n,...t})});$e.displayName="FormLabel";const qe=q.forwardRef(({...a},s)=>{const{error:r,formItemId:n,formDescriptionId:i,formMessageId:o}=ze();return e.jsx(t.Slot,{ref:s,id:n,"aria-describedby":r?`${i} ${o}`:`${i}`,"aria-invalid":!!r,...a})});qe.displayName="FormControl";const Ve=q.forwardRef(({className:a,...t},s)=>{const{formDescriptionId:r}=ze();return e.jsx("p",{ref:s,id:r,className:me("text-sm text-muted-foreground",a),...t})});Ve.displayName="FormDescription";const Be=q.forwardRef(({className:a,children:t,...s},r)=>{const{error:n,formMessageId:i}=ze(),o=n?String(n?.message):t;return o?e.jsx("p",{ref:r,id:i,className:me("text-sm font-medium text-destructive",a),...s,children:o}):null});Be.displayName="FormMessage";const We=W.Root,He=W.Group,Qe=W.Value,Ge=q.forwardRef(({className:a,children:t,...s},r)=>e.jsxs(W.Trigger,{ref:r,className:me("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",a),...s,children:[t,e.jsx(W.Icon,{asChild:!0,children:e.jsx(l.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));Ge.displayName=W.Trigger.displayName;const Ke=q.forwardRef(({className:a,...t},s)=>e.jsx(W.ScrollUpButton,{ref:s,className:me("flex cursor-default items-center justify-center py-1",a),...t,children:e.jsx(l.ChevronUp,{className:"h-4 w-4"})}));Ke.displayName=W.ScrollUpButton.displayName;const Xe=q.forwardRef(({className:a,...t},s)=>e.jsx(W.ScrollDownButton,{ref:s,className:me("flex cursor-default items-center justify-center py-1",a),...t,children:e.jsx(l.ChevronDown,{className:"h-4 w-4"})}));Xe.displayName=W.ScrollDownButton.displayName;const Je=q.forwardRef(({className:a,children:t,position:s="popper",container:r,collisionBoundary:n,...i},o)=>e.jsx(W.Portal,{container:r,children:e.jsxs(W.Content,{ref:o,className:me("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===s&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:s,collisionBoundary:n,...i,children:[e.jsx(Ke,{}),e.jsx(W.Viewport,{className:me("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t}),e.jsx(Xe,{})]})}));Je.displayName=W.Content.displayName;const Ye=q.forwardRef(({className:a,...t},s)=>e.jsx(W.Label,{ref:s,className:me("py-1.5 pl-8 pr-2 text-sm font-semibold",a),...t}));Ye.displayName=W.Label.displayName;const Ze=q.forwardRef(({className:a,children:t,...s},r)=>e.jsxs(W.Item,{ref:r,className:me("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a),...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(W.ItemIndicator,{children:e.jsx(l.Check,{className:"h-4 w-4"})})}),e.jsx(W.ItemText,{children:t})]}));Ze.displayName=W.Item.displayName;const ea=q.forwardRef(({className:a,...t},s)=>e.jsx(W.Separator,{ref:s,className:me("-mx-1 my-1 h-px bg-muted",a),...t}));ea.displayName=W.Separator.displayName;const aa=q.forwardRef(({className:a,...t},s)=>e.jsx(H.Root,{ref:s,className:me("peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",a),...t,children:e.jsx(H.Indicator,{className:me("flex items-center justify-center text-current"),children:e.jsx(l.Check,{className:"h-4 w-4"})})}));aa.displayName=H.Root.displayName;const ta=q.forwardRef(({className:a,...t},s)=>e.jsx("textarea",{className:me("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",a),ref:s,...t}));ta.displayName="Textarea";const sa=s.cva("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground",success:"border-transparent bg-green-500 text-white hover:bg-green-600",warning:"border-transparent bg-yellow-500 text-white hover:bg-yellow-600",info:"border-transparent bg-blue-500 text-white hover:bg-blue-600"}},defaultVariants:{variant:"default"}}),ra=q.forwardRef(({className:a,variant:t,...s},r)=>e.jsx("div",{ref:r,className:me(sa({variant:t}),a),...s}));ra.displayName="Badge";const na={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"};function ia({size:a="md",className:t}){return e.jsx(l.Loader2,{className:me("animate-spin text-muted-foreground",na[a],t)})}let oa=0;const la=new Map,da=e=>{if(la.has(e))return;const a=setTimeout(()=>{la.delete(e),pa({type:"REMOVE_TOAST",toastId:e})},1e6);la.set(e,a)},ca=(e,a)=>{switch(a.type){case"ADD_TOAST":return{...e,toasts:[a.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===a.toast.id?{...e,...a.toast}:e)};case"DISMISS_TOAST":{const{toastId:t}=a;return t?da(t):e.toasts.forEach(e=>{da(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===t||void 0===t?{...e,open:!1}:e)}}case"REMOVE_TOAST":return void 0===a.toastId?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==a.toastId)}}},ua=[];let ma={toasts:[]};function pa(e){ma=ca(ma,e),ua.forEach(e=>{e(ma)})}function ha({...e}){const a=(oa=(oa+1)%Number.MAX_SAFE_INTEGER,oa.toString()),t=()=>pa({type:"DISMISS_TOAST",toastId:a});return pa({type:"ADD_TOAST",toast:{...e,id:a,open:!0,onOpenChange:e=>{e||t()}}}),{id:a,dismiss:t,update:e=>pa({type:"UPDATE_TOAST",toast:{...e,id:a}})}}function xa(){const[e,a]=q.useState(ma);return q.useEffect(()=>(ua.push(a),()=>{const e=ua.indexOf(a);e>-1&&ua.splice(e,1)}),[e]),{...e,toast:ha,dismiss:e=>pa({type:"DISMISS_TOAST",toastId:e})}}const fa=Q.Provider,ga=q.forwardRef(({className:a,...t},s)=>e.jsx(Q.Viewport,{ref:s,className:me("fixed top-4 left-1/2 transform -translate-x-1/2 z-[100] flex max-h-screen w-full max-w-[420px] flex-col p-4",a),...t}));ga.displayName=Q.Viewport.displayName;const ba=s.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),va=q.forwardRef(({className:a,variant:t,...s},r)=>e.jsx(Q.Root,{ref:r,className:me(ba({variant:t}),a),...s}));va.displayName=Q.Root.displayName;const Na=q.forwardRef(({className:a,...t},s)=>e.jsx(Q.Action,{ref:s,className:me("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",a),...t}));Na.displayName=Q.Action.displayName;const ja=q.forwardRef(({className:a,...t},s)=>e.jsx(Q.Close,{ref:s,className:me("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",a),"toast-close":"",...t,children:e.jsx(l.X,{className:"h-4 w-4"})}));ja.displayName=Q.Close.displayName;const ya=q.forwardRef(({className:a,...t},s)=>e.jsx(Q.Title,{ref:s,className:me("text-sm font-semibold",a),...t}));ya.displayName=Q.Title.displayName;const wa=q.forwardRef(({className:a,...t},s)=>e.jsx(Q.Description,{ref:s,className:me("text-sm opacity-90",a),...t}));wa.displayName=Q.Description.displayName;const Ca=G.Root,ka=G.Trigger,Sa=q.forwardRef(({className:a,align:t="center",sideOffset:s=4,container:r,...n},i)=>e.jsx(G.Portal,{container:r,children:e.jsx(G.Content,{ref:i,align:t,sideOffset:s,className:me("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),...n})}));Sa.displayName=G.Content.displayName;const Ea=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...t}));Ea.displayName="Command";const Aa=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:e.jsx("input",{ref:s,className:me("flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",a),...t})}));Aa.displayName="CommandInput";const Ta=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("max-h-[300px] overflow-y-auto overflow-x-hidden",a),...t}));Ta.displayName="CommandList";const Ia=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("py-6 text-center text-sm text-muted-foreground",a),...t}));Ia.displayName="CommandEmpty";const Pa=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...t}));Pa.displayName="CommandGroup";const _a=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("-mx-1 h-px bg-border",a),...t}));_a.displayName="CommandSeparator";const Ra=q.forwardRef(({className:a,disabled:t,onSelect:s,value:r,...n},i)=>e.jsx("div",{ref:i,className:me("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50",a),"data-disabled":t,onClick:()=>!t&&s?.(r||""),...n}));Ra.displayName="CommandItem";const Da=({className:a,...t})=>e.jsx("span",{className:me("ml-auto text-xs tracking-widest text-muted-foreground",a),...t});function Fa({className:a,...t}){return e.jsx("div",{className:me("animate-pulse rounded-md bg-muted",a),...t})}Da.displayName="CommandShortcut";const Ma=e=>e.normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase();function La({multiple:t,options:s,value:r,onChange:n,getOptionValue:i,getOptionLabel:o,placeholder:d,label:c,icon:u,emptyMessage:m,searchPlaceholder:p,disabled:h,required:x,className:f,sortOptions:g,maxDisplayedBadges:b,popoverContainer:v,onOpen:N,onClose:j}){const[y,w]=a.useState(!1),[C,k]=a.useState(""),S=a.useMemo(()=>r?Array.isArray(r)?r:[r]:[],[r]),E=a.useMemo(()=>{if(!v)return;let e=v,a=0;try{for(;e&&a<3;){const t=window.getComputedStyle(e),s=t.overflowY||t.overflow;if(!s||"visible"===s||"unset"===s)break;e=e.parentElement,a++}}catch{}return e??void 0},[v]),A=a.useMemo(()=>{const e=s.map(e=>({original:e,value:i(e),label:o(e)}));return g?e.sort((e,a)=>e.label.localeCompare(a.label,"pt-BR",{sensitivity:"base"})):e},[s,i,o,g]),T=a.useMemo(()=>{if(!C)return A;const e=Ma(C);return A.filter(a=>Ma(a.label).includes(e))},[A,C]),I=a.useMemo(()=>A.filter(e=>S.includes(e.value)),[A,S]),P=(e,a)=>{a.preventDefault(),a.stopPropagation(),n&&n(t?S.filter(a=>a!==e):"")},_=b?I.slice(0,b):I,R=b&&I.length>b?I.length-b:0;return e.jsxs("div",{className:me("space-y-2",f),children:[c&&e.jsxs(ve,{children:[c,x&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs(Ca,{open:y,onOpenChange:e=>{w(e),e?N?.():(k(""),j?.())},modal:!1,children:[e.jsx(ka,{asChild:!0,children:e.jsxs(xe,{variant:"outline",role:"combobox","aria-expanded":y,disabled:h,className:me("w-full justify-between min-h-10 h-auto",0===I.length&&"text-muted-foreground"),children:[0===I.length?e.jsxs("span",{className:"flex items-center gap-2",children:[u&&e.jsx(u,{className:"h-4 w-4"}),d]}):t?e.jsxs("div",{className:"flex flex-wrap gap-1.5 flex-1 mr-2",children:[_.map(a=>e.jsxs(ra,{variant:"secondary",className:"gap-1 pr-1",children:[a.label,e.jsx("button",{type:"button",className:"rounded-full outline-none ring-offset-background focus:ring-2 focus:ring-ring focus:ring-offset-2",onKeyDown:e=>{"Enter"===e.key&&P(a.value,e)},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>P(a.value,e),children:e.jsx(l.X,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})]},a.value)),R>0&&e.jsxs(ra,{variant:"outline",className:"gap-1",children:["+",R]})]}):e.jsxs("span",{className:"flex items-center gap-2",children:[u&&e.jsx(u,{className:"h-4 w-4"}),I[0]?.label]}),e.jsx(l.ChevronDown,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(Sa,{className:"w-full p-0 bg-popover z-[60]",align:"start",container:E,collisionBoundary:E,children:e.jsxs(Ea,{children:[e.jsx(Aa,{placeholder:p,value:C,onChange:e=>k(e.target.value)}),e.jsx(Ta,{children:0===s.length?e.jsx(Ia,{children:m}):0===T.length?e.jsx(Ia,{children:"Nenhum item encontrado."}):e.jsx(Pa,{children:T.map(a=>e.jsxs(Ra,{value:a.value,onSelect:()=>(e=>{if(n)if(t){const a=S.includes(e)?S.filter(a=>a!==e):[...S,e];n(a)}else n(e),w(!1)})(a.value),className:"cursor-pointer",children:[e.jsx(l.Check,{className:me("mr-2 h-4 w-4",S.includes(a.value)?"opacity-100":"opacity-0")}),a.label]},a.value))})})]})})]})]})}function za({multiple:a=!0,options:t=[],value:s,onChange:r,getOptionValue:n=e=>e.value,getOptionLabel:i=e=>e.label,placeholder:o="Selecione itens...",label:d,icon:c,emptyMessage:u="Nenhum item disponível.",searchPlaceholder:m="Buscar...",disabled:p=!1,required:h=!1,isLoading:x=!1,error:f,className:g,sortOptions:b=!0,maxDisplayedBadges:v,popoverContainer:N,onOpen:j,onClose:y}){if(x)return e.jsxs("div",{className:me("space-y-2",g),children:[d&&e.jsxs(ve,{children:[d,h&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(Fa,{className:"h-10 w-full"})]});const w="string"==typeof f?f:f?"Erro ao carregar dados":void 0;return w?e.jsxs("div",{className:me("space-y-2",g),children:[d&&e.jsxs(ve,{children:[d,h&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs("div",{className:"flex items-center gap-2 p-3 border border-destructive rounded-md bg-destructive/10 text-destructive",children:[e.jsx(l.AlertCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:w})]})]}):e.jsx(La,{multiple:a,options:t,value:s||(a?[]:""),onChange:r,getOptionValue:n,getOptionLabel:i,placeholder:o,label:d,icon:c,emptyMessage:u,searchPlaceholder:m,disabled:p,required:h,className:g,sortOptions:b,maxDisplayedBadges:v,popoverContainer:N,onOpen:j,onClose:y})}var Oa=Object.defineProperty;class Ua{static normalizeBase64Url(e){let a=e.replace(/-/g,"+").replace(/_/g,"/");const t=(4-a.length%4)%4;return a+="=".repeat(t),a}static parseJwtPayload(e){try{const r=e.split(".");if(3!==r.length)return null;const n=r[1];n.length,this.LARGE_PAYLOAD_THRESHOLD;try{const e=this.normalizeBase64Url(n),a=atob(e),t=new Uint8Array(a.length);for(let r=0;r<a.length;r++)t[r]=a.charCodeAt(r);const s=new TextDecoder("utf-8").decode(t);return JSON.parse(s)}catch(a){try{const e=this.normalizeBase64Url(n),a=decodeURIComponent(atob(e).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""));return JSON.parse(a)}catch(t){try{const e=this.normalizeBase64Url(n),a=atob(e);return JSON.parse(a)}catch(s){throw s}}}}catch(r){return null}}static validateTokens(e,a){const t=[],s=[];try{a.split(".")[1],e.split(".")[1];const r=this.parseJwtPayload(a),n=this.parseJwtPayload(e);if(!r){const e="ID token decode falhou - possível problema com base64url encoding";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:s}}let i=!0;if(!n){const e="Access token decode falhou - será tentado novamente nas chamadas de API";t.push(e),i=!1}const o=Math.floor(Date.now()/1e3);if(n?.exp&&n.exp<o){const e="Access token expirado - pode precisar de refresh";t.push(e),i=!1}if(r.exp&&r.exp<o){const e="ID token expirado - autenticação inválida";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:i,warnings:t,errors:s}}return{isValid:!0,idTokenValid:!0,accessTokenValid:i,warnings:t,errors:s}}catch(r){const e=`Erro na validação de tokens: ${r}`;return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:s}}}static isTokenExpired(e){const a=this.parseJwtPayload(e);return!a||!a.exp||1e3*a.exp<Date.now()}static extractTokenData(e){return this.parseJwtPayload(e)}}((e,a,t)=>{a in e?Oa(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t})(Ua,"LARGE_PAYLOAD_THRESHOLD"+"",1e3);const $a="qualiex_access_token",qa="qualiex_id_token",Va="supabase_token",Ba="oauth_state",Wa="oauth_nonce",Ha="selected_alias",Qa="manual_logout",Ga={setAccessToken:e=>localStorage.setItem($a,e),getAccessToken:()=>localStorage.getItem($a),setIdToken:e=>localStorage.setItem(qa,e),getIdToken:()=>localStorage.getItem(qa),getSupabaseToken:()=>localStorage.getItem(Va),setOAuthState:e=>sessionStorage.setItem(Ba,e),getOAuthState:()=>sessionStorage.getItem(Ba),clearOAuthState:()=>sessionStorage.removeItem(Ba),setOAuthNonce:e=>sessionStorage.setItem(Wa,e),getOAuthNonce:()=>sessionStorage.getItem(Wa),clearOAuthNonce:()=>sessionStorage.removeItem(Wa),setSelectedAlias:e=>localStorage.setItem(Ha,e),getSelectedAlias:()=>localStorage.getItem(Ha),clearSelectedAlias:()=>localStorage.removeItem(Ha),generateOAuthState:()=>"Lw==",generateOAuthNonce:()=>{const e=new Uint8Array(32);return crypto.getRandomValues(e),btoa(String.fromCharCode(...e)).replace(/[+/=]/g,"")},hasAllTokens:()=>!(!Ga.getAccessToken()||!Ga.getIdToken()),setSupabaseToken:e=>{localStorage.setItem(Va,e),Ga._clearValidationCache()},areAllTokensValid:()=>{const e=Ga.getAccessToken(),a=Ga.getIdToken();if(!e||!a)return!1;try{const t=Ua.validateTokens(e,a);return!!t.idTokenValid&&t.idTokenValid}catch(t){return!1}},clearExpiredTokens:()=>{let e=!1;const a=Ga.getAccessToken(),t=Ga.getIdToken(),s=Ga.getSupabaseToken();return a&&Ga.isTokenExpired(a)&&(localStorage.removeItem($a),e=!0),t&&Ga.isTokenExpired(t)&&(localStorage.removeItem(qa),e=!0),s&&Ga.isTokenExpired(s)&&(localStorage.removeItem(Va),e=!0),e},clearAll:()=>{localStorage.removeItem($a),localStorage.removeItem(qa),localStorage.removeItem(Va),localStorage.removeItem(Ha),localStorage.removeItem(Qa),sessionStorage.removeItem(Ba),sessionStorage.removeItem(Wa)},setManualLogout:()=>localStorage.setItem(Qa,"true"),isManualLogout:()=>"true"===localStorage.getItem(Qa),clearManualLogout:()=>localStorage.removeItem(Qa),isTokenExpired:e=>{try{return Ua.isTokenExpired(e)}catch{return!0}},_validationCache:{isValid:!1,timestamp:0,cacheValidityMs:3e5},_clearValidationCache:()=>{Ga._validationCache.isValid=!1,Ga._validationCache.timestamp=0},isSupabaseTokenValid:()=>{const e=Ga.getSupabaseToken();if(!e)return!1;if(Ga.isTokenExpired(e))return Ga._clearValidationCache(),Ga._handleExpiredToken(),!1;const a=Date.now();return a-Ga._validationCache.timestamp<Ga._validationCache.cacheValidityMs?Ga._validationCache.isValid:(Ga._validationCache.isValid=!0,Ga._validationCache.timestamp=a,!0)},getValidSupabaseToken:()=>Ga.isSupabaseTokenValid()?Ga.getSupabaseToken():null,_handleExpiredToken:()=>{Ga.clearAll(),"undefined"!=typeof window&&(window.location.href="/")},extractTokenData:()=>{if(!Ga.isSupabaseTokenValid())return null;const e=Ga.getSupabaseToken();if(!e)return null;try{const a=Ua.parseJwtPayload(e);if(!a)return null;const t=a.alias||a.default||a.user_alias,s=a.place_id||null,r=a.place_name||null;let n=a.company_id;if(!n&&t)for(const e in a)if(e.startsWith("co")&&/^co\d+$/.test(e)){const s=a[e];if(s&&"string"==typeof s){const e=s.split(";");if(e.length>7&&e[0]===t){n=e[7];break}}}return{alias:t,companyId:n,placeId:s,placeName:r,payload:a}}catch(a){return Ga._handleExpiredToken(),null}},getCompanyId:e=>{const a=Ga.getAccessToken();if(a)try{const t=Ua.parseJwtPayload(a);if(t)for(const a in t)if(a.startsWith("co")&&/^co\d+$/.test(a)){const s=t[a];if(s&&"string"==typeof s){const a=s.split(";");if(e&&a.length>7&&a[0]===e)return a[7];if(!e&&a.length>7)return a[7]}}}catch(r){}const t=Ga.extractTokenData();if(t?.companyId)return t.companyId;const s=Ga.getIdToken();if(s)try{const a=Ua.parseJwtPayload(s);if(a)for(const t in a)if(t.startsWith("co")&&/^co\d+$/.test(t)){const s=a[t];if(s&&"string"==typeof s){const a=s.split(";");if(e&&a.length>7&&a[0]===e)return a[7];if(!e&&a.length>7)return a[7]}}}catch(r){}return null},getCurrentCompanyId:()=>{const e=Ga.extractTokenData();return e?.companyId||null},getAllCompaniesData:()=>{const e=Ga.getIdToken();if(!e)return[];try{const a=Ua.parseJwtPayload(e);if(!a)return[];const t=[];for(const e in a)if(e.startsWith("co")&&/^co\d+$/.test(e)){const s=a[e];if(s&&"string"==typeof s){const e=s.split(";");e.length>=4&&t.push({id:e.length>7?e[7]:"",alias:e[0].trim(),name:e[3].trim(),payload:a})}}return t}catch{return[]}}};var Ka=Object.defineProperty,Xa=(e,a,t)=>((e,a,t)=>a in e?Ka(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const Ja=new class{constructor(){Xa(this,"errors",[]),Xa(this,"toastCount",0),Xa(this,"lastToastTime",0)}handleError(e,a=!0){const t="string"==typeof e?e:e.message;if(this.errors.push({id:Date.now().toString(),message:t,timestamp:Date.now(),count:1}),a&&this.shouldShowToast()){ha({title:this.getErrorTitle(t),description:t,variant:"destructive"})}}getErrorTitle(e){const a=e.toLowerCase();return a.includes("401")||a.includes("unauthorized")||a.includes("expirou")?"Sessão Expirada":a.includes("token")||a.includes("autenticação")?"Erro de Autenticação":a.includes("api")||a.includes("network")?"Erro de Conexão":"Erro"}success(e,a){ha({title:e,description:a,variant:"default"})}shouldShowToast(){const e=Date.now();return e-this.lastToastTime>6e4&&(this.toastCount=0),this.toastCount<3&&(this.toastCount++,this.lastToastTime=e,!0)}getErrors(){return this.errors.slice(-50)}clearErrors(){this.errors=[]}};var Ya=Object.defineProperty,Za=(e,a,t)=>((e,a,t)=>a in e?Ya(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const et=(void 0).VITE_SUPABASE_URL,at=(void 0).VITE_SUPABASE_PUBLISHABLE_KEY,tt=class e{constructor(){Za(this,"client"),Za(this,"currentToken",null),Za(this,"instanceCount",0),this.instanceCount++,this.client=this.createClientWithToken(null)}createClientWithToken(e){const a={apikey:at};e&&this.isTokenValid(e)&&(a.Authorization=`Bearer ${e}`);return f.createClient(et,at,{auth:{persistSession:!1,autoRefreshToken:!1,detectSessionInUrl:!1,storage:void 0},global:{headers:a,fetch:async(e,a)=>("string"==typeof e?e:e.url).includes("/auth/v1/user")?new Response(JSON.stringify({error:"blocked"}),{status:401,headers:{"Content-Type":"application/json"}}):fetch(e,a)}})}static getInstance(){return e.instance||(e.instance=new e),e.instance}getClient(){const e=Ga.getValidSupabaseToken();return e!==this.currentToken&&(this.client=this.createClientWithToken(e),this.currentToken=e),this.client}isTokenValid(e){try{const a=JSON.parse(atob(e.split(".")[1])),t=Math.floor(Date.now()/1e3);return a.exp>t}catch(a){return Ja.handleError(a instanceof Error?a:"❌ Supabase - Error validating token",!1),!1}}};Za(tt,"instance");let st=tt;function rt(){return st.getInstance().getClient()}class nt{static async generateToken(e,a,t,s=!1){try{if(!s){const e=Ga.getSupabaseToken();if(e&&Ga.isSupabaseTokenValid())return e}const r=rt(),{data:n,error:i}=await r.functions.invoke("validate-token",{body:{access_token:e,alias:a}});return i&&(i.message?.includes("401")||i.message?.includes("Unauthorized"))?(t?.(),null):n?.access_token&&n.access_token?(Ga.setSupabaseToken(n.access_token),n.access_token):null}catch(r){return r instanceof Error&&(r.message.includes("401")||r.message.includes("Unauthorized"))&&t?.(),null}}}var it=Object.defineProperty,ot=(e,a,t)=>((e,a,t)=>a in e?it(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);class lt{static setLogoutCallback(e){this.onLogoutCallback=e}static async attemptRegeneration(){if(this.isRegenerating)return null;this.isRegenerating=!0;try{const e=Ga.getAccessToken(),a=Ga.getSelectedAlias();if(!e||!a)return null;const t=await nt.generateToken(e,a,this.onLogoutCallback||void 0,!1);return t?(Ga.setSupabaseToken(t),t):null}catch(e){return null}finally{this.isRegenerating=!1}}}ot(lt,"isRegenerating",!1),ot(lt,"onLogoutCallback",null);class dt{static handleError(e){if(!e)return!1;const a=e.message||e.toString();return!!this.isAuthenticationError(e,a)&&(Ga.clearAll(),window.location.href="/",!0)}static isAuthenticationError(e,a){if(401===e.status||401===e.statusCode)return!0;const t=a.toLowerCase();return["401","unauthorized","token","expired","invalid","authentication","login","session"].some(e=>t.includes(e))}static async wrapAsync(e){try{return await e}catch(a){if(!this.handleError(a))throw a;throw new Error("Sua sessão expirou. Você será redirecionado para fazer login novamente.")}}}var ct=Object.defineProperty;class ut{static async handleApiError(e){if(!e||this.isRetrying)return!1;const a=e.status||e.statusCode,t=e.message||e.toString();if(401===a||t.includes("401")||t.includes("Unauthorized")){this.isRetrying=!0;try{return await lt.attemptRegeneration()?(this.isRetrying=!1,!0):(dt.handleError(e),this.isRetrying=!1,!1)}catch(s){return dt.handleError(e),this.isRetrying=!1,!1}}return!1}static validateToken(){const e=Ga.getAccessToken();return e?Ga.isTokenExpired(e)?{valid:!1,message:"Sua sessão expirou. Você será redirecionado para fazer login."}:{valid:!0}:{valid:!1,message:"Token OAuth não encontrado. Faça login novamente."}}}((e,a,t)=>{((e,a,t)=>{a in e?ct(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t})(e,a+"",t)})(ut,"isRetrying",!1);var mt=Object.defineProperty,pt=(e,a,t)=>((e,a,t)=>a in e?mt(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);const ht=new class{constructor(){pt(this,"baseUrl",(void 0).VITE_QUALIEX_API_URL)}async makeApiCall(e,a,t){const s=ut.validateToken();if(!s.valid)throw new Error(s.message||"Token inválido");const r=Ga.getAccessToken();if(!r)throw new Error("Token Qualiex não encontrado");if(!t||""===t.trim())throw new Error("Alias da unidade é obrigatório para chamadas à API do Qualiex");const n=new URL(e,this.baseUrl);Object.entries(a).forEach(([e,a])=>{n.searchParams.append(e,a)});const i=await fetch(n.toString(),{method:"GET",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json",Accept:"application/json","un-alias":t}});if(!i.ok){const e=new Error(`API call failed: ${i.status} ${i.statusText}`);throw e.status=i.status,e.statusCode=i.status,e}return await i.json()}mapToQualiexUser(e){return{id:e.id||e.ID||"",userId:e.userId||String(e.ID),userName:e.userName||"Nome não disponível",userEmail:e.userEmail||"Email não disponível",placeId:null,placeName:e.placeName||null,roleId:e.roleId||void 0,roleName:e.roleName||void 0,companyId:e.companyId||void 0,companyName:e.companyName||void 0}}async fetchUsers(e,a){try{const t=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:a,search:"",filterStatus:"active"},e);let s=t;if(t.data)s=t.data;else{if(!Array.isArray(t))return Ja.handleError("[QualiexApi] Formato de resposta inesperado",!1),[];s=t}if(!Array.isArray(s))return Ja.handleError("[QualiexApi] Resposta não é um array",!1),[];return s.map(this.mapToQualiexUser)}catch(t){if(await ut.handleApiError(t))try{const t=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:a,search:"",filterStatus:"active"},e);let s=t;if(t.data)s=t.data;else{if(!Array.isArray(t))return Ja.handleError("[QualiexApi] Formato de resposta inesperado após retry",!1),[];s=t}return Array.isArray(s)?s.map(this.mapToQualiexUser):(Ja.handleError("[QualiexApi] Resposta não é um array após retry",!1),[])}catch(s){return Ja.handleError(s instanceof Error?s:"Erro ao buscar usuários após renovação de token",!0),[]}const r=t instanceof Error?t.message:"Erro ao buscar usuários da API Qualiex";return Ja.handleError(r,!0),[]}}async fetchUserById(e,a,t){try{return(await this.fetchUsers(a,t)).find(a=>a.userId===e)||null}catch(s){return Ja.handleError(s instanceof Error?s:"[QualiexApi] Error fetching user by ID"),null}}async fetchActiveUsersMap(e,a){const t=await this.fetchUsers(e,a),s=new Map;return t.forEach(e=>{s.set(e.userId,e)}),s}async getUsers(e){const a=Ga.extractTokenData();return a&&a.companyId?this.fetchUsers(e,a.companyId):[]}},xt={oauth:{authUrl:(void 0).VITE_OAUTH_AUTH_URL,clientId:(void 0).VITE_OAUTH_CLIENT_ID,responseType:"id_token token",scope:"openid profile email"}},ft={pagination:{defaultPageSize:25,pageSizeOptions:[10,25,50,100]},sorting:{defaultField:"updated_at",defaultDirection:"desc"}},gt={debounceDelay:500},bt=()=>{const e=window.location.origin;return e.includes("localhost")||e.includes("127.0.0.1")||e.includes("id-preview")||e.includes("lovable.dev")||(void 0).DEV},vt={userNameFieldSuffix:"_name",userEmailFieldSuffix:"_email",userUsernameFieldSuffix:"_username"},Nt=()=>vt,jt={isQualiex:"true"===(void 0).VITE_IS_QUALIEX},yt={success:{created:e=>`${e} criado com sucesso`,updated:e=>`${e} atualizado com sucesso`,deleted:e=>`${e} removido com sucesso`},error:{create:e=>`Erro ao criar ${e}`,update:e=>`Erro ao atualizar ${e}`,delete:e=>`Erro ao remover ${e}`,load:e=>`Erro ao carregar ${e}`}};function wt(e,a){const t=Nt(),s=a||t.userNameFieldSuffix||"_name";return e.endsWith("_id")?e.replace(/_id$/,s):`${e}${s}`}function Ct(e,a){const t=Nt(),s=a||t.userEmailFieldSuffix||"_email";return e.endsWith("_id")?e.replace(/_id$/,s):`${e}${s}`}function kt(e,a){const t=Nt(),s=a||t.userUsernameFieldSuffix||"_username";return e.endsWith("_id")?e.replace(/_id$/,s):`${e}${s}`}function St(e,a){return a&&a.length>0?a.map(e=>({idField:e.idField,nameField:e.nameField||wt(e.idField),emailField:e.emailField||Ct(e.idField),usernameField:e.usernameField||kt(e.idField)})):e&&e.length>0?e.map(e=>({idField:e,nameField:wt(e),emailField:Ct(e),usernameField:kt(e)})):[{idField:"id_user",nameField:"responsible_name"}]}const Et=new Map;class At{static async fetchQualiexUsers(e,a){const t=`${a}_${e}`,s=Et.get(t);if(s&&Date.now()-s.timestamp<3e5)return s.users;const r=await ht.fetchUsers(e,a);return Et.set(t,{users:r,timestamp:Date.now()}),r}static extractUserIds(e,a){const t=new Set;for(const s of e)for(const e of a){const a=s[e.idField];a&&"string"==typeof a&&""!==a.trim()&&t.add(a)}return t}static indexUsers(e){const a=new Map;for(const t of e)t.id&&a.set(t.id,t),t.userId&&a.set(t.userId,t);return a}static enrichEntity(e,a,t){const s={...e};for(const r of a){const a=e[r.idField];if(!a)continue;const n=t.get(a);if(n){if(r.nameField){s[r.nameField]||(s[r.nameField]=n.userName||n.displayName||null)}if(r.emailField){s[r.emailField]||(s[r.emailField]=n.userEmail||null)}if(r.usernameField){s[r.usernameField]||(s[r.usernameField]=n.userName||null)}}}return s}static async enrichWithUserData(e,a){if(!Array.isArray(e)||0===e.length)return e;try{const t=Ga.extractTokenData();if(!t)return e;const{alias:s,companyId:r}=t;if(!s||!r)return e;const n=St(a.userIdFields,a.userFieldsMapping);if(0===this.extractUserIds(e,n).size)return e;const i=await this.fetchQualiexUsers(s,r),o=this.indexUsers(i);return e.map(e=>this.enrichEntity(e,n,o))}catch(t){return Ja.handleError(t instanceof Error?t:new Error(`[QualiexEnrichment.${a.entityName}] Erro crítico`),!1),e}}static async enrichWithResponsibleNames(e,a){return this.enrichWithUserData(e,{entityName:a.entityName,userIdFields:["id_user"],userFieldsMapping:[{idField:"id_user",nameField:"responsible_name"}]})}}const Tt=["responsible_name"],It=e=>Tt.includes(e);function Pt(e,a,t){const s="string"==typeof e?{tableName:e,searchFields:a||[],schemaName:t||"common"}:{searchFields:e.searchFields||[],schemaName:e.schemaName||"common",...e},{tableName:r,searchFields:n,selectFields:i,schemaName:o,entityName:l,enableQualiexEnrichment:d=!1}=s,c=()=>{if(!Ga.getValidSupabaseToken())throw new Error("Token de autenticação expirado. Faça login novamente.");return rt().schema(o).from(r)},u=(e,a,t,s)=>{let r=c().select(i||"*",{count:"exact"});r=r.eq("is_removed",!1),Object.entries(s).forEach(([e,a])=>{void 0!==a&&""!==a&&(Array.isArray(a)?r=r.in(e,a):"object"==typeof a&&a&&"operator"in a?"not_null"===a.operator?r=r.not(e,"is",null):"is_null"===a.operator&&(r=r.is(e,null)):null!==a&&(r=r.eq(e,a)))}),r=((e,a)=>{if(a&&n.length>0){const t=n.map(e=>`${e}.ilike.%${a}%`).join(",");return e.or(t)}return e})(r,e);const o=a.includes(".");return o||It(a)||(r=r.order(a,{ascending:"asc"===t})),{query:r,isForeignKey:o}},m=async(e,a,t,r,n)=>{const i=St(s.userIdFields,s.userFieldsMapping).some(e=>e.nameField===a||e.emailField===a||e.usernameField===a),o=a.includes(".");if(It(a)||o||i){const e={search:"",sortField:void 0,sortDirection:void 0,page:1,limit:500},i=await this.getAll(e);if(!i?.data?.length)return i;const d=await At.enrichWithUserData(i.data,{entityName:l,userIdFields:s.userIdFields,userFieldsMapping:s.userFieldsMapping});let c;c=o?d.sort((e,s)=>{const r=a.split(".").reduce((e,a)=>e?.[a],e)||"",n=a.split(".").reduce((e,a)=>e?.[a],s)||"",i=String(r).localeCompare(String(n),"pt-BR");return"asc"===t?i:-i}):((e,a,t)=>[...e].sort((e,s)=>{const r=e[a]||"",n=s[a]||"",i=r.localeCompare(n,"pt-BR",{sensitivity:"base"});return"asc"===t?i:-i}))(d,a,t);const u=((e,a=1,t=25)=>{const s=(a-1)*t,r=s+t,n=e.slice(s,r);return{data:n,pagination:{currentPage:a,totalPages:Math.ceil(e.length/t),totalItems:n.length,totalCount:e.length,itemsPerPage:t,hasNextPage:r<e.length,hasPreviousPage:a>1}}})(c,r,n);return{data:u.data,currentPage:u.pagination.currentPage,totalPages:u.pagination.totalPages,totalItems:u.pagination.totalCount,itemsPerPage:u.pagination.itemsPerPage,hasNextPage:u.pagination.hasNextPage,hasPreviousPage:u.pagination.hasPreviousPage}}return await At.enrichWithUserData(e,{entityName:l,userIdFields:s.userIdFields,userFieldsMapping:s.userFieldsMapping})};return{async getAll(e={}){const{search:a,sortField:t,sortDirection:n,page:i,limit:o,additionalFilters:c}=(e=>{const{search:a="",sortField:t="updated_at",sortDirection:s="desc",page:r=1,limit:n=25,...i}=e;return{search:a,sortField:t,sortDirection:s,page:r,limit:n,additionalFilters:i}})(e),{query:p}=u(a,t,n,c),h=((e,a,t)=>{const s=(a-1)*t,r=s+t-1;return e.range(s,r)})(p,i,o),{data:x,error:f,count:g}=await h;if(f)throw new Error(`Error fetching ${r}: ${f.message}`);let b=((e,a,t,s)=>{const r=Math.ceil((a||0)/s);return{data:e,currentPage:t,totalPages:r,totalItems:a||0,itemsPerPage:s,hasNextPage:t<r,hasPreviousPage:t>1}})(x||[],g,i,o);if((e=>{if(!d||!l||0===e.length)return!1;const a=St(s.userIdFields,s.userFieldsMapping);return e.some(e=>a.some(a=>e[a.idField]))})(b.data)){const e=await m(b.data,t,n,i,o);if(!Array.isArray(e))return e;b={...b,data:e}}return b},async getById(e){const{data:a,error:t}=await c().select(i||"*").eq("id",e).maybeSingle();if(t)throw new Error(`Error fetching ${r}: ${t.message}`);return a},async create(e){const a=pe(e),t=Object.entries(a).reduce((e,[a,t])=>(void 0!==t&&(e[a]=t),e),{}),{data:s,error:n}=await c().insert(t).select().single();if(n)throw new Error(`Error creating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from create ${r} operation`);return s},async update(e,a){const t={...pe(a),updated_at:(new Date).toISOString()},{data:s,error:n}=await c().update(t).eq("id",e).select().single();if(n)throw new Error(`Error updating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from update ${r} operation`);return s},async delete(e){const a={is_removed:!0,updated_at:(new Date).toISOString()},{error:t}=await c().update(a).eq("id",e);if(t)throw new Error(`Error soft deleting ${r}: ${t.message}`)}}}const _t=()=>{Ga.clearManualLogout()},Rt=e=>e?.placeId||null,Dt=e=>e?.placeName||null,Ft=e=>({placeId:Rt(e),placeName:Dt(e)}),Mt=class{static async initialize(){try{if(!Ga.hasAllTokens()||!Ga.areAllTokensValid())return Ga.clearExpiredTokens(),{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null};const a=Ga.getAccessToken(),t=Ga.getIdToken();_t();const s=this.extractUserFromIdToken(t),r=this.extractCompaniesFromIdToken(t),n=this.extractAliasFromAccessToken(a),i=Ga.extractTokenData(),o=i?.alias;let l=null;if(o&&r.some(e=>e.alias===o))l=o;else{const e=Ga.getSelectedAlias(),a=e&&r.some(a=>a.alias===e);l=a?e:n||r[0]?.alias||null}!Ga.isSupabaseTokenValid()&&l&&await lt.attemptRegeneration();let d=null;if(l){const e=Ga.getCompanyId(l),a=r.find(e=>e.alias===l);a&&(d={id:e||a.id,name:a.name,alias:a.alias})}let c=null,u=null;if(s?.id&&l){const a=Ga.getCompanyId(l);if(a)try{const e=(await ht.fetchActiveUsersMap(l,a)).get(s.id);if(e){const a=Ft(e);c=a.placeId,u=a.placeName}}catch(e){}}return{isAuthenticated:!0,isLoading:!1,user:s,alias:l,companies:r,selectedUnit:d,userId:s?.id||null,userAlias:s?.id||null,placeId:c,placeName:u,activePlaceId:c,activePlaceName:u}}catch(e){return{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null}}}static async loginDev(){try{const e=rt(),{data:a,error:t}=await e.functions.invoke("dev-tokens",{body:{environment:"development"}});if(t)return!1;if(!a?.access_token||!a?.id_token)return!1;const s=new URL("/callback",window.location.origin);return s.hash=`access_token=${a.access_token}&id_token=${a.id_token}&token_type=bearer`,window.location.href=s.toString(),!0}catch(e){return!1}}static loginProd(){const e=Ga.generateOAuthState();Ga.setOAuthState(e);const a=Ga.generateOAuthNonce();Ga.setOAuthNonce(a);const t=`${window.location.origin}/callback`,s=new URL(xt.oauth.authUrl);s.searchParams.set("client_id",xt.oauth.clientId),s.searchParams.set("response_type",xt.oauth.responseType),s.searchParams.set("scope",xt.oauth.scope),s.searchParams.set("redirect_uri",t),s.searchParams.set("state",e),s.searchParams.set("nonce",a),s.searchParams.set("response_mode","fragment"),bt(),window.location.href=s.toString()}static async processCallback(){try{if(Ga.hasAllTokens()){if(!Ga.getValidSupabaseToken()){Ga.getAccessToken();await lt.attemptRegeneration()}return!0}const e=new URLSearchParams(window.location.hash.startsWith("#")?window.location.hash.substring(1):window.location.hash),a=new URLSearchParams(window.location.search),t=t=>e.get(t)||a.get(t),s=t("access_token"),r=t("id_token"),n=t("error");if(n)throw new Error(`Erro OAuth: ${n}`);if(!s||!r)throw new Error("Tokens não encontrados na URL de callback");Ga.setAccessToken(s),Ga.setIdToken(r),_t();const i=this.extractAliasFromAccessToken(s);if(i)Ga.setSelectedAlias(i);else{const e=this.extractCompaniesFromIdToken(r);if(0===e.length)throw new Error("Nenhuma empresa encontrada nos tokens");Ga.setSelectedAlias(e[0].alias)}if(!await lt.attemptRegeneration())throw new Error("Falha ao gerar token Supabase");return Ga.clearOAuthState(),Ga.clearOAuthNonce(),!0}catch(e){throw e}}static logout(){Ga.setManualLogout(),Ga.clearAll(),window.location.href="/login"}static decodeToken(e){return Ua.parseJwtPayload(e)}static extractUserFromIdToken(e){const a=this.decodeToken(e);return a?{id:a.subNewId,email:a.email,name:a.name,identifier:a.identifier}:null}static extractCompaniesFromIdToken(e){const a=this.decodeToken(e);if(!a)return[];const t=[];return Object.keys(a).forEach(e=>{if(e.match(/^co(\d+)$/)&&"string"==typeof a[e]){const s=a[e].split(";");if(s.length>=4)t.push({id:s.length>7?s[7].trim():"",alias:s[0].trim(),name:s[3].trim()});else{const[s,r]=a[e].split("|");s&&r&&t.push({id:"",alias:s.trim(),name:r.trim()})}}}),t}static extractAliasFromAccessToken(e){const a=this.decodeToken(e);return a?.default||null}};lt.setLogoutCallback(()=>{Mt.logout()});let Lt=Mt;const zt=a.createContext(void 0),Ot=()=>{const e=a.useContext(zt);if(void 0===e)throw new Error("useAuth deve ser usado dentro de um AuthProvider");return e};function Ut({queryKey:e,service:t,entityName:s,searchFields:r,additionalFilters:n={},onSuccess:i}){const[l,d]=b.useSearchParams(),c=g.useQueryClient(),{alias:u,userId:m}=Ot(),p=a.useCallback(a=>{const t=`${e}_${a}`,s=l.get(t);return s||(l.get(a)||"")},[l,e]),h=p("search"),x=p("sortField")||ft.sorting.defaultField,f=p("sortDirection")||ft.sorting.defaultDirection,v=parseInt(p("page")||"1"),N=parseInt(p("limit")||String(ft.pagination.defaultPageSize)),j=h,y=a.useMemo(()=>({search:j,sortField:x,sortDirection:f,page:v,limit:N,...n}),[j,x,f,v,N,n]),w=a.useCallback(()=>t.getAll(y),[t,y]),C=g.useQuery({queryKey:[e,u,m,y],queryFn:w});if(!C)throw new Error(`useCrud: Query initialization failed for "${s}". Ensure QueryClientProvider is configured in your app root.`);const k=g.useMutation({mutationFn:t.create,onSuccess:()=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(yt.success.created(s)),i?.()},onError:e=>{o.toast.error(`${yt.error.create(s)}: ${e.message}`)}}),S=g.useMutation({mutationFn:({id:e,data:a})=>t.update(e,a),onSuccess:()=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(yt.success.updated(s)),i?.()},onError:e=>{o.toast.error(`${yt.error.update(s)}: ${e.message}`)}}),E=g.useMutation({mutationFn:t.delete,onSuccess:()=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(yt.success.deleted(s))},onError:e=>{o.toast.error(`${yt.error.delete(s)}: ${e.message}`)}}),A=a.useCallback(a=>{const t={...Object.fromEntries(l)};Object.entries(a).forEach(([a,s])=>{const r=`${e}_${a}`;""===s||0===s?delete t[r]:t[r]=String(s)}),delete t.sortField,delete t.sortDirection,d(t)},[l,d,e]),T=a.useCallback(e=>{A({search:e,page:1})},[A]),I=a.useCallback(e=>{A({sortField:e,sortDirection:x===e&&"asc"===f?"desc":"asc",page:1})},[x,f,A]),P=a.useCallback(e=>{A({page:e})},[A]),_=a.useCallback(e=>{A({limit:e,page:1})},[A]),R=a.useCallback(()=>{const a=Object.fromEntries(l),t=`${e}_`,s=Object.fromEntries(Object.entries(a).filter(([e])=>!e.startsWith(t)));d(s)},[d,l,e]),[D,F]=a.useState([]),M=a.useCallback(e=>{F(a=>a.includes(e)?a.filter(a=>a!==e):[...a,e])},[]),L=a.useCallback(()=>{const e=C?.data?.data.map(e=>e.id)||[];F(a=>a.length===e.length?[]:e)},[C?.data?.data]),z=a.useCallback(()=>{F([])},[]),O=a.useMemo(()=>{const e=C?.data?.data.map(e=>e.id)||[];return e.length>0&&D.length===e.length},[D,C?.data?.data]),U=g.useMutation({mutationFn:async e=>{await Promise.all(e.map(e=>t.delete(e)))},onSuccess:(a,t)=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(`${t.length} ${s}(s) deletado(s) com sucesso`),z()},onError:e=>{o.toast.error(`Erro ao deletar itens: ${e.message}`)}}),$=a.useCallback((e,a)=>{const t=a?a(e):e;e.id?S.mutate({id:e.id,data:t}):k.mutate({...t,alias:u})},[u,k,S]);return{entities:C?.data?.data||[],pagination:{data:C?.data?.data||[],currentPage:C?.data?.currentPage||1,totalPages:C?.data?.totalPages||1,totalItems:C?.data?.totalItems||0,itemsPerPage:C?.data?.itemsPerPage||ft.pagination.defaultPageSize,hasNextPage:C?.data?.hasNextPage||!1,hasPreviousPage:C?.data?.hasPreviousPage||!1},isLoading:C?.isLoading??!0,isCreating:k?.isPending??!1,isUpdating:S?.isPending??!1,isDeleting:E?.isPending??!1,error:C?.error||null,searchTerm:h,sortField:x,sortDirection:f,currentPage:v,itemsPerPage:N,queryKey:e,createEntity:k.mutate,updateEntity:(e,a)=>S.mutate({id:e,data:a}),deleteEntity:E.mutate,save:$,handleSearch:T,handleSort:I,handlePageChange:P,handleItemsPerPageChange:_,clearFilters:R,refetch:C.refetch,selectedIds:D,selectItem:M,selectAll:L,clearSelection:z,isAllSelected:O,bulkDelete:e=>U.mutateAsync(e),isBulkDeleting:U.isPending}}const $t=K.Root,qt=K.Trigger,Vt=K.Portal,Bt=q.forwardRef(({className:a,...t},s)=>e.jsx(K.Overlay,{className:me("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a),...t,ref:s}));Bt.displayName=K.Overlay.displayName;const Wt=q.forwardRef(({className:a,...t},s)=>e.jsxs(Vt,{children:[e.jsx(Bt,{}),e.jsx(K.Content,{ref:s,className:me("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",a),...t})]}));Wt.displayName=K.Content.displayName;const Ht=({className:a,...t})=>e.jsx("div",{className:me("flex flex-col space-y-2 text-center sm:text-left bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-6 rounded-t-lg",a),...t});Ht.displayName="AlertDialogHeader";const Qt=({className:a,...t})=>e.jsx("div",{className:me("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",a),...t});Qt.displayName="AlertDialogFooter";const Gt=q.forwardRef(({className:a,...t},s)=>e.jsx(K.Title,{ref:s,className:me("text-lg font-semibold",a),...t}));Gt.displayName=K.Title.displayName;const Kt=q.forwardRef(({className:a,...t},s)=>e.jsx(K.Description,{ref:s,className:me("text-sm text-muted-foreground",a),...t}));Kt.displayName=K.Description.displayName;const Xt=q.forwardRef(({className:a,...t},s)=>e.jsx(K.Action,{ref:s,className:me(he(),a),...t}));Xt.displayName=K.Action.displayName;const Jt=q.forwardRef(({className:a,...t},s)=>e.jsx(K.Cancel,{ref:s,className:me(he({variant:"outline"}),"mt-2 sm:mt-0",a),...t}));Jt.displayName=K.Cancel.displayName;const Yt=({open:a,onOpenChange:t,item:s,onConfirm:r,entityName:n="item",isDeleting:i=!1})=>{const o=()=>{t(!1)};return s?e.jsx($t,{open:a,onOpenChange:o,children:e.jsxs(Wt,{className:"sm:max-w-[420px] bg-white",children:[e.jsxs("button",{onClick:o,className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(l.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Fechar"})]}),e.jsxs("div",{className:"flex flex-col items-center text-center space-y-3 py-2",children:[e.jsx("div",{className:"w-16 h-16 rounded-full bg-destructive/10 flex items-center justify-center",children:e.jsx(l.AlertTriangle,{className:"w-8 h-8 text-destructive"})}),e.jsx(Gt,{className:"text-xl font-semibold",children:"Tem certeza?"}),e.jsx(Kt,{asChild:!0,children:e.jsxs("div",{className:"text-sm text-muted-foreground",children:[e.jsx("p",{children:"Você está prestes a excluir este registro."}),e.jsx("p",{children:"Esta ação não pode ser desfeita."})]})})]}),e.jsxs("div",{className:"flex flex-row gap-2 justify-center mt-6",children:[e.jsx(Xt,{onClick:()=>{s&&(r(s),t(!1))},disabled:i,className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",children:i?"Removendo...":"Sim, excluir registro"}),e.jsx(Jt,{onClick:o,className:"mt-0 border-none bg-transparent hover:bg-muted text-foreground shadow-none",children:"Cancelar"})]})]})}):null},Zt=q.forwardRef(({className:a,...t},s)=>e.jsx("table",{ref:s,className:me("w-full caption-bottom text-sm",a),...t}));Zt.displayName="Table";const es=q.forwardRef(({className:a,...t},s)=>e.jsx("thead",{ref:s,className:me("[&_tr]:border-b sticky top-0 z-[1] bg-background",a),...t}));es.displayName="TableHeader";const as=q.forwardRef(({className:a,...t},s)=>e.jsx("tbody",{ref:s,className:me("[&_tr:last-child]:border-0",a),...t}));as.displayName="TableBody";const ts=q.forwardRef(({className:a,...t},s)=>e.jsx("tfoot",{ref:s,className:me("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...t}));ts.displayName="TableFooter";const ss=q.forwardRef(({className:a,...t},s)=>e.jsx("tr",{ref:s,className:me("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted odd:bg-muted/50",a),...t}));ss.displayName="TableRow";const rs=q.forwardRef(({className:a,...t},s)=>e.jsx("th",{ref:s,className:me("h-12 px-4 py-3 text-left align-middle font-medium text-muted-foreground bg-background border-b [&:has([role=checkbox])]:pr-0",a),...t}));rs.displayName="TableHead";const ns=q.forwardRef(({className:a,...t},s)=>e.jsx("td",{ref:s,className:me("px-4 py-3 align-middle [&:has([role=checkbox])]:pr-0",a),...t}));ns.displayName="TableCell";const is=q.forwardRef(({className:a,...t},s)=>e.jsx("caption",{ref:s,className:me("mt-4 text-sm text-muted-foreground",a),...t}));function os({rows:a=5,columns:t=4}){return e.jsx("div",{className:"w-full",children:e.jsxs("div",{className:"rounded-md border",children:[e.jsx("div",{className:"border-b bg-muted/50 px-4 py-3",children:e.jsx("div",{className:"flex space-x-4",children:Array.from({length:t}).map((a,t)=>e.jsx(Fa,{className:"h-4 w-24"},t))})}),e.jsx("div",{children:Array.from({length:a}).map((a,s)=>e.jsx("div",{className:"border-b px-4 py-3 last:border-0",children:e.jsx("div",{className:"flex space-x-4",children:Array.from({length:t}).map((a,t)=>e.jsx(Fa,{className:"h-4 w-20"},t))})},s))})]})})}function ls({count:a=3}){return e.jsx("div",{className:"space-y-4",children:Array.from({length:a}).map((a,t)=>e.jsxs(Ne,{children:[e.jsxs(je,{children:[e.jsx(Fa,{className:"h-4 w-3/4"}),e.jsx(Fa,{className:"h-3 w-1/2"})]}),e.jsx(Ce,{children:e.jsxs("div",{className:"space-y-2",children:[e.jsx(Fa,{className:"h-3 w-full"}),e.jsx(Fa,{className:"h-3 w-2/3"})]})})]},t))})}is.displayName="TableCaption";const ds={default:l.FileX,search:l.Search,error:l.AlertCircle};function cs({icon:a,title:t,description:s,action:r,className:n,variant:i="default"}){const o=a?()=>a:ds[i];return e.jsxs("div",{className:me("flex flex-col items-center justify-center py-12 px-4 text-center",n),children:[e.jsx("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted mb-4",children:e.jsx(o,{className:"h-8 w-8 text-muted-foreground"})}),e.jsx("h3",{className:"text-lg font-semibold mb-2",children:t}),s&&e.jsx("p",{className:"text-muted-foreground mb-6 max-w-sm",children:s}),r&&e.jsx(xe,{onClick:r.onClick,variant:"outline",children:r.label})]})}const us=X.Root,ms=X.Trigger,ps=X.Group,hs=X.Portal,xs=X.Sub,fs=X.RadioGroup,gs=q.forwardRef(({className:a,inset:t,children:s,...r},n)=>e.jsxs(X.SubTrigger,{ref:n,className:me("flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",t&&"pl-8",a),...r,children:[s,e.jsx(l.ChevronRight,{className:"ml-auto h-4 w-4"})]}));gs.displayName=X.SubTrigger.displayName;const bs=q.forwardRef(({className:a,...t},s)=>e.jsx(X.SubContent,{ref:s,className:me("z-50 min-w-[8rem] overflow-hidden border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),...t}));bs.displayName=X.SubContent.displayName;const vs=q.forwardRef(({className:a,sideOffset:t=4,...s},r)=>e.jsx(X.Portal,{children:e.jsx(X.Content,{ref:r,sideOffset:t,className:me("z-[100] min-w-[8rem] overflow-hidden rounded-md border bg-white shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:bg-gray-800 dark:border-gray-700",a),...s})}));vs.displayName=X.Content.displayName;const Ns=q.forwardRef(({className:a,inset:t,...s},r)=>e.jsx(X.Item,{ref:r,className:me("relative flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t&&"pl-8",a),...s}));Ns.displayName=X.Item.displayName;const js=q.forwardRef(({className:a,children:t,checked:s,...r},n)=>e.jsxs(X.CheckboxItem,{ref:n,className:me("relative flex cursor-default select-none items-center py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a),checked:s,...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(X.ItemIndicator,{children:e.jsx(l.Check,{className:"h-4 w-4"})})}),t]}));js.displayName=X.CheckboxItem.displayName;const ys=q.forwardRef(({className:a,children:t,...s},r)=>e.jsxs(X.RadioItem,{ref:r,className:me("relative flex cursor-default select-none items-center py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a),...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(X.ItemIndicator,{children:e.jsx(l.Circle,{className:"h-2 w-2 fill-current"})})}),t]}));ys.displayName=X.RadioItem.displayName;const ws=q.forwardRef(({className:a,inset:t,...s},r)=>e.jsx(X.Label,{ref:r,className:me("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",a),...s}));ws.displayName=X.Label.displayName;const Cs=q.forwardRef(({className:a,...t},s)=>e.jsx(X.Separator,{ref:s,className:me("-mx-1 my-1 h-px bg-muted",a),...t}));Cs.displayName=X.Separator.displayName;const ks=({className:a,...t})=>e.jsx("span",{className:me("ml-auto text-xs tracking-widest opacity-60",a),...t});ks.displayName="DropdownMenuShortcut";const Ss=({onEdit:a,onDelete:t,onToggleStatus:s,isActive:r=!0,canDelete:n=!0,customActions:i=[],renderAs:o})=>{const d=[];if(a){const e={icon:l.Edit,label:"Editar",onClick:a};d.push(e)}if(i.forEach(e=>{d.push(e)}),s){const e={icon:r?l.PowerOff:l.Power,label:r?"Inativar":"Ativar",onClick:s};d.push(e)}if(n&&t){const e={icon:l.Trash2,label:"Remover",onClick:t,destructive:!0};d.push(e)}return"dropdown"===o?e.jsx(e.Fragment,{children:d.map((a,t)=>e.jsxs(Ns,{onClick:a.onClick,className:a.destructive?"text-destructive":"",children:[e.jsx(a.icon,{className:"mr-2 h-4 w-4"}),a.label]},t))}):e.jsx(e.Fragment,{children:d.map((a,t)=>e.jsxs(xe,{variant:"ghost",size:"sm",onClick:a.onClick,className:"w-full justify-start px-2 py-1.5 text-sm font-normal h-7 "+(a.destructive?"text-destructive hover:text-destructive":""),children:[e.jsx(a.icon,{className:"h-4 w-4 mr-2"}),a.label]},t))})},Es=({onEdit:a,onDelete:t,canDelete:s=!0,onToggleStatus:r,isActive:n=!0,customActions:i=[]})=>e.jsxs(us,{children:[e.jsx(ms,{asChild:!0,children:e.jsx(xe,{variant:"action",size:"sm",className:"h-7 px-2 text-xs",children:e.jsx(l.EllipsisVertical,{size:12})})}),e.jsx(vs,{align:"end",className:"bg-background border border-border shadow-lg min-w-[120px]",children:e.jsx(Ss,{onEdit:a?e=>{e?.stopPropagation(),a?.()}:void 0,onDelete:t?e=>{e?.stopPropagation(),t?.()}:void 0,onToggleStatus:r?e=>{e?.stopPropagation(),r?.()}:void 0,isActive:n,canDelete:s&&!!t,customActions:i,renderAs:"dropdown"})})]}),As=({contextMenu:t,onClose:s,onEdit:r,onDelete:n,onToggleStatus:i,customActions:o})=>(a.useEffect(()=>{const e=()=>s();if(t)return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[t,s]),t?e.jsx("div",{className:"fixed bg-background border border-border rounded-md shadow-lg py-1 z-50 min-w-[120px]",style:{left:t.x,top:t.y},onClick:e=>e.stopPropagation(),children:e.jsx(Ss,{onEdit:r?()=>{r(t.item),s()}:void 0,onDelete:n?()=>{n(t.item),s()}:void 0,onToggleStatus:i?()=>{i(t.item),s()}:void 0,isActive:t.item.is_actived,canDelete:!!n,customActions:o?o(t.item):[],renderAs:"context"})}):null),Ts=a.memo(({checked:a,onCheckedChange:t})=>e.jsx(aa,{checked:a,onCheckedChange:t}),(e,a)=>e.checked===a.checked),Is=({manager:t,columns:s,onEdit:r,onView:n,onToggleStatus:i,onDelete:o,renderActions:d,customRowActions:c,enableBulkActions:u=!1,onNew:m,newButtonLabel:p="Novo",showNewButton:h=!0,customActions:x=[],hideActionBar:f=!1})=>{const{setSearchVisible:g}=Ot(),[b,v]=a.useState(!1),[N,j]=a.useState(null);a.useEffect(()=>(g(!0),()=>g(!1)),[g]),a.useEffect(()=>{const e=()=>v(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),a.useEffect(()=>{const e=()=>j(null);if(N)return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[N]);const y=a.useMemo(()=>(()=>{s.length;let e=0;const a=s.map(a=>{if(a.width)return e+=a.width,{...a,calculatedWidth:a.width,isFixed:!0};{const t=a.minWidth||120,s=a.weight||1;return e+=t,{...a,calculatedWidth:t,weight:s,isFixed:!1}}});return e+=50,a.map(e=>e.isFixed?{...e,style:{width:`${e.calculatedWidth}px`}}:{...e,style:{minWidth:`${e.calculatedWidth}px`,width:`${e.calculatedWidth}px`}})})(),[s]),w=!f&&(m||x.length>0);return b?t.isLoading?e.jsx(ls,{count:3}):0===t.entities.length?e.jsx(cs,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"}):e.jsxs("div",{className:"flex flex-col h-full",children:[w&&e.jsx("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:e.jsxs("div",{className:"flex items-center gap-2",children:[m&&h&&e.jsxs(xe,{onClick:m,children:[e.jsx(l.Plus,{size:16,className:"mr-2"}),p]}),x.map((a,t)=>{const s=a.icon;return e.jsxs(xe,{onClick:a.action,variant:a.variant||"outline",children:[s&&e.jsx(s,{size:16,className:"mr-2"}),a.label]},t)})]})}),e.jsxs("div",{className:"flex-1 overflow-auto space-y-4 p-4",children:[t.entities.map(a=>e.jsx(Ne,{className:me("overflow-hidden cursor-pointer hover:bg-muted/50",u&&t.selectedIds.includes(a.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),u?t.selectItem(a.id):r?.(a)},onContextMenu:e=>{e.preventDefault(),e.stopPropagation(),j({x:e.clientX,y:e.clientY,item:a})},children:e.jsx(Ce,{className:"p-4",children:e.jsxs("div",{className:"flex items-start gap-3",children:[u&&e.jsx("div",{className:"pt-0.5",onClick:e=>e.stopPropagation(),children:e.jsx(Ts,{checked:t.selectedIds.includes(a.id),onCheckedChange:()=>t.selectItem(a.id)})}),e.jsxs("div",{className:"flex-1",children:[s.map(t=>e.jsxs("div",{className:"flex justify-between items-start mb-2 last:mb-0",children:[e.jsxs("span",{className:"text-sm font-medium text-muted-foreground min-w-0 mr-2",children:[t.header,":"]}),e.jsx("div",{className:"text-sm text-foreground text-right min-w-0 flex-1",children:t.render?t.render(a):String(a[t.key]??"")})]},String(t.key))),(r||n||d)&&e.jsx("div",{className:"mt-3 pt-3 border-t flex justify-end",onClick:e=>e.stopPropagation(),children:d?d(a):e.jsx(Es,{onEdit:r?()=>{r(a)}:void 0,onDelete:o?()=>o(a):void 0,onToggleStatus:i?()=>i(a):void 0,isActive:a.is_actived,customActions:c?c(a):[]})})]})]})})},a.id)),e.jsx(As,{contextMenu:N,onClose:()=>j(null),onEdit:r,onDelete:o,onToggleStatus:i,customActions:c})]})]}):e.jsxs("div",{className:"flex flex-col h-full",children:[w&&e.jsx("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:e.jsxs("div",{className:"flex items-center gap-2",children:[m&&h&&e.jsxs(xe,{onClick:m,children:[e.jsx(l.Plus,{size:16,className:"mr-2"}),p]}),x.map((a,t)=>{const s=a.icon;return e.jsxs(xe,{onClick:a.action,variant:a.variant||"outline",children:[s&&e.jsx(s,{size:16,className:"mr-2"}),a.label]},t)})]})}),t.isLoading?e.jsx(os,{rows:5,columns:s.length}):e.jsx("div",{className:"flex flex-col h-full overflow-hidden",children:e.jsx("div",{className:"flex-1 overflow-auto",children:e.jsxs(Zt,{className:"table-auto",children:[e.jsxs("colgroup",{children:[u&&e.jsx("col",{style:{width:"50px"}}),y.map((a,t)=>e.jsx("col",{style:a.style},t)),e.jsx("col",{style:{width:"50px"}})]}),e.jsx(es,{children:e.jsxs(ss,{children:[u&&e.jsx(rs,{className:"w-[50px]",children:e.jsx(Ts,{checked:t.isAllSelected,onCheckedChange:t.selectAll})}),s.map(a=>{return e.jsx(rs,{className:`${a.className||""} ${a.sortable?"cursor-pointer hover:bg-muted/50":""}`,onClick:a.sortable?()=>t.handleSort(String(a.key)):void 0,children:e.jsxs("div",{className:"flex items-center "+(a.className?.includes("text-center")?"justify-center":""),children:[a.header,a.sortable&&(s=String(a.key),t.sortField!==s?e.jsx(l.ArrowUpDown,{size:14,className:"ml-1 opacity-50"}):"asc"===t.sortDirection?e.jsx(l.ArrowUp,{size:14,className:"ml-1"}):e.jsx(l.ArrowDown,{size:14,className:"ml-1"}))]})},String(a.key));var s}),e.jsx(rs,{className:"w-[50px] text-center",children:"Ações"})]})}),e.jsx(as,{children:0===t.entities.length?e.jsx(ss,{children:e.jsx(ns,{colSpan:u?s.length+2:s.length+1,className:"h-32",children:e.jsx(cs,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"})})}):t.entities.map(a=>e.jsxs(ss,{className:me("cursor-pointer hover:bg-muted/50",u&&t.selectedIds.includes(a.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),u?t.selectItem(a.id):r?.(a)},onContextMenu:e=>{e.preventDefault(),e.stopPropagation(),j({x:e.clientX,y:e.clientY,item:a})},children:[u&&e.jsx(ns,{onClick:e=>e.stopPropagation(),children:e.jsx(Ts,{checked:t.selectedIds.includes(a.id),onCheckedChange:()=>t.selectItem(a.id)})}),s.map(t=>e.jsx(ns,{className:t.className,children:t.render?t.render(a):String(a[t.key]??"")},String(t.key))),e.jsx(ns,{className:"text-center",children:d?d(a):e.jsx(Es,{onEdit:r?()=>r(a):void 0,onDelete:o?()=>o(a):void 0,onToggleStatus:i?()=>i(a):void 0,isActive:a.is_actived,customActions:c?c(a):[]})})]},a.id))})]})})}),e.jsx(As,{contextMenu:N,onClose:()=>j(null),onEdit:r,onDelete:o,onToggleStatus:i,customActions:c})]})};function Ps(e,t,s,r){const[n,i]=a.useState({}),[o,l]=a.useState({}),d=a.useMemo(()=>e,[e]),c=e=>e instanceof Date&&!isNaN(e.getTime()),u=e=>{if(void 0!==e.defaultValue)return e.defaultValue;switch(e.type){case"multiselect":return[];case"checkbox":return!1;case"number":return 0;case"date":default:return"";case"group":return{}}},m=(e,a)=>{if(e.computedValue&&"function"==typeof e.computedValue)try{return e.computedValue(a)}catch(t){return u(e)}},p=(e,a,t)=>{if(e.required&&(""===a||null==a||Array.isArray(a)&&0===a.length))return`${e.label} é obrigatório`;if(e.validation){let r;if("function"==typeof e.validation?r=e.validation:e.validation.custom&&"function"==typeof e.validation.custom&&(r=e.validation.custom),r)try{const e=r(a,t);if(e)return e}catch(s){}}};a.useEffect(()=>{if(!r)return;const e=a=>{const t=[];return a.forEach(a=>{t.push(a),a.fields&&t.push(...e(a.fields))}),t},a=e(d),n={};a.forEach(e=>{let a;if(t&&void 0!==t[e.name]){if(a=t[e.name],null==a&&(a=""),"date"===e.type&&a)if("string"==typeof a){const e=new Date(a);c(e)&&(a=e.toISOString().split("T")[0])}else c(a)&&(a=a.toISOString().split("T")[0])}else a=u(e);n[e.name]=a}),a.forEach(e=>{const a=m(e,n);void 0!==a&&(n[e.name]=a)}),t&&Object.keys(t).forEach(e=>{a.find(a=>a.name===e)||void 0===t[e]||(n[e]=t[e])}),i(n),l({}),s&&s(n)},[d,t,s,r]);const h=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...h(e.fields))}),a},x=()=>{const e=h(d),a={};return e.forEach(e=>{const t=p(e,n[e.name],n);t&&(a[e.name]=t)}),l(a),0===Object.keys(a).length};return{formData:n,errors:o,updateField:(e,a)=>{i(t=>{const r={...t,[e]:a},n=((e,a)=>{let t={...a};const s=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...s(e.fields))}),a};return s(d).filter(a=>a.dependsOn===e).forEach(e=>{const a=m(e,t);void 0!==a&&(t={...t,[e.name]:a})}),t})(e,r);return s&&s(n),n}),o[e]&&l(a=>{const t={...a};return delete t[e],t});const t=h(d).find(a=>a.name===e);if(t){const s=p(t,a,n);s&&l(a=>({...a,[e]:s}))}},validateForm:x,handleSubmit:e=>a=>{a&&(a.preventDefault(),a.stopPropagation()),x()&&e(n)}}}const _s=["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#06b6d4","#84cc16","#f97316","#ec4899","#6b7280"],Rs=({value:a="#3b82f6",onChange:t,label:s})=>e.jsxs("div",{className:"space-y-2",children:[s&&e.jsx(ve,{children:s}),e.jsxs(Ca,{children:[e.jsx(ka,{asChild:!0,children:e.jsxs(xe,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e.jsx("div",{className:"h-4 w-4 rounded border mr-2",style:{backgroundColor:a}}),a]})}),e.jsx(Sa,{className:"w-64",children:e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx(ve,{htmlFor:"color-input",children:"Cor personalizada"}),e.jsx(ge,{id:"color-input",type:"color",value:a,onChange:e=>t?.(e.target.value),className:"h-10 w-full"})]}),e.jsxs("div",{children:[e.jsx(ve,{children:"Cores predefinidas"}),e.jsx("div",{className:"grid grid-cols-5 gap-2 mt-2",children:_s.map(a=>e.jsx("button",{className:"h-8 w-8 rounded border-2 border-border hover:border-primary",style:{backgroundColor:a},onClick:()=>t?.(a),"aria-label":`Selecionar cor ${a}`},a))})]})]})})]})]}),Ds=q.forwardRef(({className:a,children:t,...s},r)=>e.jsxs(J.Root,{ref:r,className:me("relative overflow-hidden",a),...s,children:[e.jsx(J.Viewport,{className:"h-full w-full rounded-[inherit]",children:t}),e.jsx(Fs,{}),e.jsx(J.Corner,{})]}));Ds.displayName=J.Root.displayName;const Fs=q.forwardRef(({className:a,orientation:t="vertical",...s},r)=>e.jsx(J.ScrollAreaScrollbar,{ref:r,orientation:t,className:me("flex touch-none select-none transition-colors","vertical"===t&&"h-full w-2.5 border-l border-l-transparent p-[1px]","horizontal"===t&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",a),...s,children:e.jsx(J.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));Fs.displayName=J.ScrollAreaScrollbar.displayName;const Ms={Star:l.Star,Heart:l.Heart,Home:l.Home,User:l.User,Settings:l.Settings,Mail:l.Mail,Phone:l.Phone,Calendar:l.Calendar,MapPin:l.MapPin,Camera:l.Camera,Image:l.Image,Music:l.Music,Video:l.Video,Book:l.Book,Bookmark:l.Bookmark,Search:l.Search,Filter:l.Filter,Edit:l.Edit,Trash2:l.Trash2,Plus:l.Plus,Minus:l.Minus,Check:l.Check,X:l.X,ChevronDown:l.ChevronDown,ChevronUp:l.ChevronUp,ChevronLeft:l.ChevronLeft,ChevronRight:l.ChevronRight,ArrowUp:l.ArrowUp,ArrowDown:l.ArrowDown,ArrowLeft:l.ArrowLeft,ArrowRight:l.ArrowRight,Clock:l.Clock,Bell:l.Bell,AlertCircle:l.AlertCircle,Info:l.Info,HelpCircle:l.HelpCircle,Download:l.Download,Upload:l.Upload,Share:l.Share,Copy:l.Copy,Save:l.Save,FileText:l.FileText,Folder:l.Folder,FolderOpen:l.FolderOpen,Archive:l.Archive,Lock:l.Lock,Unlock:l.Unlock,Eye:l.Eye,EyeOff:l.EyeOff,Shield:l.Shield,Key:l.Key,Zap:l.Zap,Flame:l.Flame,Sparkles:l.Sparkles,Award:l.Award,Trophy:l.Trophy,Target:l.Target},Ls=({value:t="Star",onChange:s,label:r})=>{const[n,i]=a.useState(""),o=Object.entries(Ms).filter(([e])=>e.toLowerCase().includes(n.toLowerCase())),d=Ms[t]||l.Star;return e.jsxs("div",{className:"space-y-2",children:[r&&e.jsx(ve,{children:r}),e.jsxs(Ca,{children:[e.jsx(ka,{asChild:!0,children:e.jsxs(xe,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e.jsx(d,{className:"h-4 w-4 mr-2"}),t]})}),e.jsx(Sa,{className:"w-80",children:e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx(ve,{htmlFor:"icon-search",children:"Buscar ícone"}),e.jsx(ge,{id:"icon-search",placeholder:"Digite o nome do ícone...",value:n,onChange:e=>i(e.target.value)})]}),e.jsx(Ds,{className:"h-48",children:e.jsx("div",{className:"grid grid-cols-6 gap-2",children:o.map(([a,r])=>e.jsx("button",{className:"p-2 rounded border-2 hover:border-primary "+(t===a?"border-primary bg-primary/10":"border-border"),onClick:()=>s?.(a),title:a,children:e.jsx(r,{className:"h-4 w-4"})},a))})})]})})]})]})};function zs({items:a,getItemValue:t,getItemLabel:s,...r}){const n=r.error?"string"==typeof r.error?r.error:!(r.error instanceof Error)||r.error.message:void 0,i={...r,multiple:!1,options:a,getOptionValue:t,getOptionLabel:s,error:n};return e.jsx(za,{...i})}const Os=(e={})=>{const{user:a,alias:t}=Ot(),{enabled:s=!0}=e;return g.useQuery({queryKey:["qualiex-users",t],queryFn:()=>ht.getUsers(t),enabled:s&&!!t&&!!a,retry:2,retryDelay:1e3})},Us=({value:a="",onChange:t,placeholder:s="Selecionar usuário",disabled:r,className:n,enabled:i})=>{const{data:o=[],isLoading:l,error:d}=Os({enabled:i});return e.jsx(zs,{value:a,onChange:t,items:o,isLoading:l,error:d,getItemValue:e=>e.userId,getItemLabel:e=>e.userName,placeholder:s,searchPlaceholder:"Buscar usuário...",emptyMessage:"Nenhum usuário disponível",disabled:r,className:n})};function $s({title:t,sections:s,initialData:r,onSubmit:n,onCancel:i,open:o,submitButtonText:l="Salvar",isLoading:d=!1,usersData:c}){const[u,m]=a.useState(s?.[0]?.id||""),p=a.useRef(null),[h,x]=a.useState(null),f=a.useCallback(e=>{p.current=e,x(e)},[]),g=a.useMemo(()=>s&&Array.isArray(s)?s.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[s]),{formData:b,errors:v,updateField:N,handleSubmit:j}=Ps(g,r,void 0,o),y=a.useMemo(()=>s&&Array.isArray(s)?s.map(e=>({...e,disabled:e.condition?!e.condition(b):e.disabled||!1})):[],[s,b]),w=a.useMemo(()=>{const e=y.find(e=>e.id===u);if(e&&!e.disabled)return u;const a=y.find(e=>!e.disabled);return a?.id||u},[y,u]);a.useEffect(()=>{w!==u&&m(w)},[w,u]);const C=y.find(e=>e.id===w),k=a=>{const t=(a.computedValue,b[a.name]),s=void 0!==t?t:"",r=v[a.name];switch(a.type){case"group":return e.jsxs("div",{className:"space-y-2",children:[a.label,e.jsx("div",{className:a.className||("horizontal"===a.layout?"flex gap-3":"space-y-3"),children:a.fields?.map(e=>k(e))})]},a.name);case"user-select":return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsx(Us,{value:s||"",onChange:e=>N(a.name,e),placeholder:a.placeholder,disabled:a.disabled,className:r?"border-red-500":""}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);case"textarea":return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsx(ta,{id:a.name,value:s||"",onChange:e=>{N(a.name,e.target.value)},placeholder:a.placeholder,disabled:a.disabled,className:`${r?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);case"select":return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsxs(We,{value:String(s),onValueChange:e=>{N(a.name,e),a.onValueChange&&a.onValueChange(e)},disabled:a.disabled,children:[e.jsx(Ge,{className:`${r?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`,children:e.jsx(Qe,{placeholder:a.placeholder})}),e.jsx(Je,{children:a.options?.map(a=>e.jsx(Ze,{value:a.value,children:a.label},a.value))})]}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);case"multiselect":return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsxs(ve,{htmlFor:a.name,children:[a.label,a.required&&e.jsx("span",{className:"text-red-500 ml-1",children:"*"})]}),e.jsx(za,{options:a.options||[],value:Array.isArray(s)?s:[],onChange:e=>N(a.name,e),placeholder:a.placeholder,disabled:a.disabled,error:r,popoverContainer:h,getOptionValue:e=>String(e.value),getOptionLabel:e=>e.label}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);case"date":return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsx(ge,{id:a.name,type:"date",value:String(s),onChange:e=>N(a.name,e.target.value),placeholder:a.placeholder,disabled:a.disabled,className:me("w-full",r?"border-red-500":"",a.disabled?"bg-gray-100 cursor-not-allowed":"")}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);case"color":return e.jsxs("div",{children:[e.jsxs(ve,{htmlFor:a.name,children:[a.label," ",a.required&&e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsx(ge,{id:a.name,type:"color",value:s||a.defaultValue||"#000000",onChange:e=>N(a.name,e.target.value),className:"h-10"}),r&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:r})]},a.name);case"color-picker":return e.jsxs("div",{children:[e.jsx(Rs,{label:`${a.label} ${a.required?"*":""}`,value:s||a.defaultValue||"#3b82f6",onChange:e=>N(a.name,e)}),r&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:r})]},a.name);case"icon-picker":return e.jsxs("div",{children:[e.jsx(Ls,{label:`${a.label} ${a.required?"*":""}`,value:s||a.defaultValue||"Star",onChange:e=>N(a.name,e)}),r&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:r})]},a.name);case"custom":if(!a.component)return null;const t=a.component;return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[a.label&&e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsx(t,{value:s,onChange:e=>{N(a.name,e),a.onValueChange&&a.onValueChange(e)},disabled:a.disabled,error:r,popoverContainer:h,...a.componentProps||{}}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);case"number":return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsx(ge,{id:a.name,type:"number",value:null!=s?String(s):"",onChange:e=>{const t=e.target.value,s=""===t?null:Number(t);N(a.name,s)},placeholder:a.placeholder,disabled:a.disabled,className:`${r?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`,min:a.min,step:a.step||"1"}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name);default:return e.jsxs("div",{className:`space-y-2 ${a.className||""}`,children:[e.jsx(ve,{htmlFor:a.name,children:a.label}),e.jsx(ge,{id:a.name,type:"text",value:s||"",onChange:e=>{N(a.name,e.target.value)},placeholder:a.placeholder,disabled:a.disabled,className:`${r?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`,readOnly:a.disabled}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},a.name)}},S=a.useCallback(()=>{if(!C)return null;if(C.disabled)return e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e.jsx("div",{className:"rounded-full bg-muted p-3 mb-4",children:e.jsx("svg",{className:"h-6 w-6 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m0 0v2m0-2h2m-2 0H9m3-8V9m0-4V3"})})}),e.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Seção não disponível"}),e.jsx("p",{className:"text-muted-foreground max-w-sm",children:'Complete as informações obrigatórias na seção "Informações Gerais" para acessar esta seção.'})]});if(C.component){const a=C.component;return e.jsx(a,{formData:b,updateField:N,errors:v,users:c,disabled:C.disabled})}return e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:C.fields.map(k)})},[C,b,N,v,c,k]),E=e.jsxs("div",{className:"flex flex-col max-h-[80vh]",children:[y.length>1&&e.jsx("div",{className:"flex-shrink-0 p-4 border-b",children:e.jsx("div",{className:"flex space-x-2",children:y.map(a=>e.jsx(xe,{variant:w===a.id?"action-primary":"action-secondary",size:"sm",onClick:()=>(e=>{const a=y.find(a=>a.id===e);a&&!a.disabled&&m(e)})(a.id),disabled:a.disabled,className:a.disabled?"opacity-50 cursor-not-allowed":"",children:a.title},a.id))})}),e.jsx("div",{className:"flex-1 overflow-y-auto px-2 md:px-4 pt-0 pb-2 md:pb-4",children:d?e.jsx("div",{className:"flex items-center justify-center py-12",children:e.jsx("div",{className:"text-muted-foreground",children:"Carregando dados..."})}):e.jsxs("form",{onSubmit:j(n),className:"space-y-3 md:space-y-4",children:[S(),e.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[e.jsx(xe,{type:"button",variant:"outline",onClick:i,children:"Cancelar"}),e.jsx(xe,{type:"submit",disabled:d,children:l})]})]})})]});return e.jsx(Se,{open:o,onOpenChange:e=>{!1===e&&!0===o&&i()},children:e.jsxs(Pe,{ref:f,className:"max-w-4xl max-h-[90vh] overflow-visible",children:[e.jsxs(_e,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:[e.jsx(De,{className:"text-white",children:t}),e.jsx(Fe,{className:"sr-only",children:"Formulário para preenchimento de dados"})]}),E]})})}function qs({currentPage:a,totalPages:t,totalItems:s,itemsPerPage:r,onPageChange:n,onItemsPerPageChange:i,variant:o="full"}){const d=(a-1)*r+1,c=Math.min(a*r,s);return e.jsxs("div",{className:"flex items-center justify-between px-4 py-3 gap-4",children:[e.jsx("div",{className:"flex items-center gap-2",children:"full"===o&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:"Itens por página"}),e.jsxs(We,{value:String(r),onValueChange:e=>i(Number(e)),children:[e.jsx(Ge,{className:"h-8 w-[70px]",children:e.jsx(Qe,{})}),e.jsxs(Je,{children:[e.jsx(Ze,{value:"10",children:"10"}),e.jsx(Ze,{value:"25",children:"25"}),e.jsx(Ze,{value:"50",children:"50"}),e.jsx(Ze,{value:"100",children:"100"})]})]})]})}),e.jsxs("div",{className:"text-sm text-muted-foreground text-center hidden sm:block",children:[d,"-",c," de ",s," itens"]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(xe,{variant:"outline",size:"sm",onClick:()=>n(1),disabled:1===a,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronsLeft,{size:16})}),e.jsx(xe,{variant:"outline",size:"sm",onClick:()=>n(a-1),disabled:1===a,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronLeft,{size:16})}),e.jsxs("div",{className:"flex items-center gap-1 px-2",children:[e.jsx("span",{className:"text-sm font-medium",children:a}),e.jsx("span",{className:"text-sm text-muted-foreground",children:"de"}),e.jsx("span",{className:"text-sm font-medium",children:t})]}),e.jsx(xe,{variant:"outline",size:"sm",onClick:()=>n(a+1),disabled:a===t,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronRight,{size:16})}),e.jsx(xe,{variant:"outline",size:"sm",onClick:()=>n(t),disabled:a===t,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronsRight,{size:16})})]})]})}function Vs({manager:a}){return e.jsx(qs,{currentPage:a.pagination.currentPage,totalPages:a.pagination.totalPages,totalItems:a.pagination.totalItems,itemsPerPage:a.pagination.itemsPerPage,onPageChange:a.handlePageChange,onItemsPerPageChange:a.handleItemsPerPageChange,variant:"full"})}const Bs=({selectedCount:a,onClearSelection:t,onBulkDelete:s,customActions:r=[],isLoading:n=!1})=>e.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between px-4 py-2 bg-primary/10 border-b border-primary/20",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsxs("span",{className:"text-sm font-medium",children:[a," ",1===a?"item selecionado":"itens selecionados"]}),e.jsxs(xe,{variant:"ghost",size:"sm",onClick:t,className:"h-7 px-2",children:[e.jsx(l.X,{size:14,className:"mr-1"}),"Limpar"]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[r.map((a,t)=>{const s=a.icon;return e.jsxs(xe,{variant:a.variant||"outline",size:"sm",onClick:()=>a.action([]),disabled:n,className:"h-7",children:[s&&e.jsx(s,{size:14,className:"mr-1"}),a.label]},t)}),s&&e.jsxs(xe,{variant:"destructive",size:"sm",onClick:s,disabled:n,className:"h-7",children:[e.jsx(l.Trash2,{size:14,className:"mr-1"}),"Remover"]})]})]}),Ws={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},Hs={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},Qs={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"};function Gs({children:a,direction:t="column",gap:s="md",align:r="stretch",justify:n="start",wrap:i=!1,className:o}){return e.jsx("div",{className:me("flex","column"===t?"flex-col":"flex-row",Ws[s],Hs[r],Qs[n],i&&"flex-wrap",o),children:a})}function Ks({manager:a,filters:t,inline:s=!1}){const{isSearchVisible:r}=Ot(),n=a.searchTerm,i=e.jsxs(e.Fragment,{children:[t.some(e=>"search"===e.type)&&!r&&e.jsxs("div",{className:"relative flex-1",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e.jsx(ge,{placeholder:"Buscar...",value:a.searchTerm,onChange:e=>a.handleSearch(e.target.value),className:"pl-10"})]}),t.filter(e=>"select"===e.type&&e.options).map((a,t)=>e.jsxs("select",{value:a.value||"",onChange:e=>a.onChange?.(e.target.value),className:"h-10 px-3 rounded-md border border-input bg-background text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",children:[a.placeholder&&e.jsx("option",{value:"",children:a.placeholder}),a.options.map(a=>e.jsx("option",{value:a.value,children:a.label},a.value))]},`select-${t}`)),t.filter(e=>"custom"===e.type&&e.component).map((a,t)=>{const r=a.component;return e.jsx("div",{className:s?"":"w-full sm:w-auto",children:e.jsx(r,{...a.props})},`custom-${t}`)}),n&&e.jsxs(xe,{variant:"outline",onClick:a.clearFilters,className:"whitespace-nowrap",children:[e.jsx(l.X,{className:"h-4 w-4 mr-2"}),"Limpar Filtros"]})]});return s?e.jsx("div",{className:"flex items-center gap-2",children:i}):e.jsx(Gs,{direction:"column",gap:"md",className:"mb-6",children:e.jsx(Gs,{direction:"row",gap:"md",wrap:!0,className:"flex-col sm:flex-row",children:i})})}function Xs({manager:t,config:s,formSections:r,onSave:n,onToggleStatus:i,defaultSort:o}){t&&t.queryKey;const{setSearchVisible:d}=Ot(),[c,u]=b.useSearchParams(),[m,p]=a.useState(!1),[h,x]=a.useState(null),[f,g]=a.useState({isOpen:!1,entityId:null,entityName:""}),[v,N]=a.useState({isOpen:!1,count:0});a.useEffect(()=>(d(!0),()=>{d(!1)}),[d]),a.useEffect(()=>{if(o&&t){const e=`${t.queryKey}_sortField`,a=`${t.queryKey}_sortDirection`;if(!c.has(e)&&!c.has(a)){const t=Object.fromEntries(c);t[e]=o.column,t[a]=o.direction,u(t)}}},[]);return e.jsxs("div",{className:"flex-1 flex flex-col h-full",children:[s.enableBulkActions&&t.selectedIds.length>0&&e.jsx(Bs,{selectedCount:t.selectedIds.length,onClearSelection:t.clearSelection,onBulkDelete:s.bulkActions&&s.bulkActions.length>0?void 0:()=>{N({isOpen:!0,count:t.selectedIds.length})},customActions:s.bulkActions,isLoading:t.isBulkDeleting}),e.jsxs("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(xe,{onClick:()=>{s.onNew?s.onNew():(x(null),p(!0))},children:[e.jsx(l.Plus,{size:16,className:"mr-2"}),"Novo"]}),s.customActions?.map((a,t)=>e.jsxs(xe,{onClick:a.action,variant:a.variant||"outline",children:[a.icon&&e.jsx(a.icon,{size:16,className:"mr-2"}),a.label]},t))]}),s.filters&&s.filters.length>0&&e.jsx("div",{className:"flex items-center gap-2 flex-1 justify-end",children:e.jsx(Ks,{manager:t,filters:s.filters,inline:!0})})]}),e.jsx("div",{className:"flex-1 flex flex-col overflow-hidden",children:s.customListView?e.jsx("div",{className:"flex-1 overflow-auto p-4",children:s.customListView(t.entities,t)}):e.jsx(Is,{manager:t,columns:s.columns,onEdit:e=>{s.onEdit?s.onEdit(e):(x(e),p(!0))},onDelete:e=>{g({isOpen:!0,entityId:e.id,entityName:e.title||e.name||"Item"})},onToggleStatus:i,enableBulkActions:s.enableBulkActions,customRowActions:s.customRowActions})}),e.jsx("div",{className:"flex-shrink-0 border-t bg-background",children:e.jsx(Vs,{manager:t})}),!s.useCustomRouting&&e.jsx($s,{open:m,title:h?`Editar ${s.entityName}`:`Novo ${s.entityName}`,sections:r,initialData:h||void 0,onSubmit:e=>{n(e),p(!1),x(null)},onCancel:()=>{p(!1),x(null)},isLoading:t.isLoading,submitButtonText:h?"Atualizar":"Criar"}),e.jsx(Yt,{open:f.isOpen,onOpenChange:()=>{g({isOpen:!1,entityId:null,entityName:""})},onConfirm:e=>{f.entityId&&(t.deleteEntity(f.entityId),g({isOpen:!1,entityId:null,entityName:""}))},item:f.entityId?{id:f.entityId,title:f.entityName}:void 0,entityName:s.entityName,isDeleting:t.isDeleting}),e.jsx(Yt,{open:v.isOpen,onOpenChange:()=>N({isOpen:!1,count:0}),onConfirm:()=>(t.bulkDelete?.(t.selectedIds),void N({isOpen:!1,count:0})),item:{id:"bulk",title:`${v.count} ${1===v.count?s.entityName:s.entityNamePlural}`},entityName:s.entityNamePlural,isDeleting:t.isBulkDeleting,isBulk:!0,bulkCount:v.count})]})}function Js(e,a,t={}){const s=[];return Object.keys(a).forEach(e=>{if("id"!==e&&!e.endsWith("_at")){const t=a[e],r={key:e,header:Zs(e),label:Zs(e),...Ys(e,t),sortable:!0,searchable:"string"==typeof t};s.push(r)}}),{title:e,columns:s,searchPlaceholder:`Buscar ${e.toLowerCase()}...`,itemsPerPage:10,enableCreate:!0,enableEdit:!0,enableDelete:!0,enableSearch:!0,enableFilters:!1,...t}}function Ys(e,a){const t=e.toLowerCase();return t.includes("email")?{type:"email",required:!0}:t.includes("phone")||t.includes("tel")?{type:"tel"}:t.includes("description")||t.includes("content")||t.includes("notes")?{type:"textarea"}:t.includes("status")||t.includes("type")||t.includes("category")?{type:"select",options:[]}:"boolean"==typeof a?{type:"boolean"}:"number"==typeof a?{type:"number"}:a instanceof Date?{type:"date"}:{type:"text"}}function Zs(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase()).trim()}const er={user:{title:"Usuários",searchPlaceholder:"Buscar usuários...",enableDelete:!1},product:{title:"Produtos",searchPlaceholder:"Buscar produtos...",enableFilters:!0},order:{title:"Pedidos",searchPlaceholder:"Buscar pedidos...",enableCreate:!1},category:{title:"Categorias",searchPlaceholder:"Buscar categorias...",itemsPerPage:20}};const ar=s.cva("relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),tr=q.forwardRef(({className:a,variant:t,...s},r)=>e.jsx("div",{ref:r,role:"alert",className:me(ar({variant:t}),a),...s}));tr.displayName="Alert";const sr=q.forwardRef(({className:a,...t},s)=>e.jsx("h5",{ref:s,className:me("mb-1 font-medium leading-none tracking-tight",a),...t}));sr.displayName="AlertTitle";const rr=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,className:me("text-sm [&_p]:leading-relaxed",a),...t}));rr.displayName="AlertDescription";const nr=a.createContext(void 0);function ir({children:t,actions:s}){const[r,n]=a.useState({}),[i,o]=a.useState(s);return a.useEffect(()=>{o(s)},[s]),e.jsx(nr.Provider,{value:{metadata:r,setMetadata:n,clearMetadata:()=>n({}),headerActions:i,setHeaderActions:o},children:t})}function or(){const e=a.useContext(nr);if(!e)throw new Error("usePageMetadataContext must be used within PageMetadataProvider");return e}const lr=Y.Root,dr=q.forwardRef(({className:a,...t},s)=>e.jsx(Y.Item,{ref:s,className:me("border-b",a),...t}));dr.displayName="AccordionItem";const cr=q.forwardRef(({className:a,children:t,...s},r)=>e.jsx(Y.Header,{className:"flex",children:e.jsxs(Y.Trigger,{ref:r,className:me("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",a),...s,children:[t,e.jsx(l.ChevronDown,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));cr.displayName=Y.Trigger.displayName;const ur=q.forwardRef(({className:a,children:t,...s},r)=>e.jsx(Y.Content,{ref:r,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...s,children:e.jsx("div",{className:me("pb-4 pt-0",a),children:t})}));ur.displayName=Y.Content.displayName;const mr=Z.Root,pr=q.forwardRef(({className:a,...t},s)=>e.jsx(ee.Root,{ref:s,className:me("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",a),...t}));pr.displayName=ee.Root.displayName;const hr=q.forwardRef(({className:a,...t},s)=>e.jsx(ee.Image,{ref:s,className:me("aspect-square h-full w-full",a),...t}));hr.displayName=ee.Image.displayName;const xr=q.forwardRef(({className:a,...t},s)=>e.jsx(ee.Fallback,{ref:s,className:me("flex h-full w-full items-center justify-center rounded-full bg-muted",a),...t}));xr.displayName=ee.Fallback.displayName;const fr=q.forwardRef(({...a},t)=>e.jsx("nav",{ref:t,"aria-label":"breadcrumb",...a}));fr.displayName="Breadcrumb";const gr=q.forwardRef(({className:a,...t},s)=>e.jsx("ol",{ref:s,className:me("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",a),...t}));gr.displayName="BreadcrumbList";const br=q.forwardRef(({className:a,...t},s)=>e.jsx("li",{ref:s,className:me("inline-flex items-center gap-1.5",a),...t}));br.displayName="BreadcrumbItem";const vr=q.forwardRef(({asChild:a,className:t,...s},r)=>{const n=a?q.Fragment:"a";return e.jsx(n,{ref:r,className:me("transition-colors hover:text-foreground",t),...s})});vr.displayName="BreadcrumbLink";const Nr=q.forwardRef(({className:a,...t},s)=>e.jsx("span",{ref:s,role:"link","aria-disabled":"true","aria-current":"page",className:me("font-normal text-foreground",a),...t}));Nr.displayName="BreadcrumbPage";const jr=({children:a,className:t,...s})=>e.jsx("li",{role:"presentation","aria-hidden":"true",className:me("[&>svg]:size-3.5",t),...s,children:a??e.jsx(l.ChevronRight,{})});jr.displayName="BreadcrumbSeparator";const yr=({className:a,...t})=>e.jsxs("span",{role:"presentation","aria-hidden":"true",className:me("flex h-9 w-9 items-center justify-center",a),...t,children:[e.jsx(l.MoreHorizontal,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"More"})]});function wr(e){return(a={})=>{const t=a.width?String(a.width):e.defaultWidth;return e.formats[t]||e.formats[e.defaultWidth]}}function Cr(e){return(a,t)=>{let s;if("formatting"===(t?.context?String(t.context):"standalone")&&e.formattingValues){const a=e.defaultFormattingWidth||e.defaultWidth,r=t?.width?String(t.width):a;s=e.formattingValues[r]||e.formattingValues[a]}else{const a=e.defaultWidth,r=t?.width?String(t.width):e.defaultWidth;s=e.values[r]||e.values[a]}return s[e.argumentCallback?e.argumentCallback(a):a]}}function kr(e){return(a,t={})=>{const s=t.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],n=a.match(r);if(!n)return null;const i=n[0],o=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(o)?function(e,a){for(let t=0;t<e.length;t++)if(a(e[t]))return t;return}(o,e=>e.test(i)):function(e,a){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&a(e[t]))return t;return}(o,e=>e.test(i));let d;d=e.valueCallback?e.valueCallback(l):l,d=t.valueCallback?t.valueCallback(d):d;return{value:d,rest:a.slice(i.length)}}}yr.displayName="BreadcrumbEllipsis";const Sr={lessThanXSeconds:{one:"menos de um segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"meio minuto",lessThanXMinutes:{one:"menos de um minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"cerca de 1 hora",other:"cerca de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dia",other:"{{count}} dias"},aboutXWeeks:{one:"cerca de 1 semana",other:"cerca de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"cerca de 1 mês",other:"cerca de {{count}} meses"},xMonths:{one:"1 mês",other:"{{count}} meses"},aboutXYears:{one:"cerca de 1 ano",other:"cerca de {{count}} anos"},xYears:{one:"1 ano",other:"{{count}} anos"},overXYears:{one:"mais de 1 ano",other:"mais de {{count}} anos"},almostXYears:{one:"quase 1 ano",other:"quase {{count}} anos"}},Er={date:wr({formats:{full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/yyyy"},defaultWidth:"full"}),time:wr({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:wr({formats:{full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},Ar={lastWeek:e=>{const a=e.getDay();return"'"+(0===a||6===a?"último":"última")+"' eeee 'às' p"},yesterday:"'ontem às' p",today:"'hoje às' p",tomorrow:"'amanhã às' p",nextWeek:"eeee 'às' p",other:"P"},Tr={ordinalNumber:(e,a)=>{const t=Number(e);return"week"===a?.unit?t+"ª":t+"º"},era:Cr({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},defaultWidth:"wide"}),quarter:Cr({values:{narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Cr({values:{narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},defaultWidth:"wide"}),day:Cr({values:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sab"],abbreviated:["domingo","segunda","terça","quarta","quinta","sexta","sábado"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},defaultWidth:"wide"}),dayPeriod:Cr({values:{narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"}},defaultFormattingWidth:"wide"})},Ir={ordinalNumber:(Pr={matchPattern:/^(\d+)[ºªo]?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{const t=e.match(Pr.matchPattern);if(!t)return null;const s=t[0],r=e.match(Pr.parsePattern);if(!r)return null;let n=Pr.valueCallback?Pr.valueCallback(r[0]):r[0];return n=a.valueCallback?a.valueCallback(n):n,{value:n,rest:e.slice(s.length)}}),era:kr({matchPatterns:{narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|d\.?\s?c\.?)/i,wide:/^(antes de cristo|depois de cristo)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^ac/i,/^dc/i],wide:[/^antes de cristo/i,/^depois de cristo/i]},defaultParseWidth:"any"}),quarter:kr({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:kr({matchPatterns:{narrow:/^[jfmajsond]/i,abbreviated:/^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,wide:/^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^fev/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dez/i]},defaultParseWidth:"any"}),day:kr({matchPatterns:{narrow:/^(dom|[23456]ª?|s[aá]b)/i,short:/^(dom|[23456]ª?|s[aá]b)/i,abbreviated:/^(dom|seg|ter|qua|qui|sex|s[aá]b)/i,wide:/^(domingo|(segunda|ter[cç]a|quarta|quinta|sexta)([- ]feira)?|s[aá]bado)/i},defaultMatchWidth:"wide",parsePatterns:{short:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],narrow:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],any:[/^d/i,/^seg/i,/^t/i,/^qua/i,/^qui/i,/^sex/i,/^s[aá]b/i]},defaultParseWidth:"any"}),dayPeriod:kr({matchPatterns:{narrow:/^(a|p|mn|md|(da) (manhã|tarde|noite))/i,any:/^([ap]\.?\s?m\.?|meia[-\s]noite|meio[-\s]dia|(da) (manhã|tarde|noite))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mn|^meia[-\s]noite/i,noon:/^md|^meio[-\s]dia/i,morning:/manhã/i,afternoon:/tarde/i,evening:/tarde/i,night:/noite/i}},defaultParseWidth:"any"})};var Pr;const _r={code:"pt-BR",formatDistance:(e,a,t)=>{let s;const r=Sr[e];return s="string"==typeof r?r:1===a?r.one:r.other.replace("{{count}}",String(a)),t?.addSuffix?t.comparison&&t.comparison>0?"em "+s:"há "+s:s},formatLong:Er,formatRelative:(e,a,t,s)=>{const r=Ar[e];return"function"==typeof r?r(a):r},localize:Tr,match:Ir,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Rr({className:a,classNames:t,showOutsideDays:s=!0,...r}){return e.jsx(k.DayPicker,{showOutsideDays:s,className:me("p-3",a),locale:_r,classNames:{months:"flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0",month:"space-y-4",caption:"flex justify-center pt-1 relative items-center",caption_label:"text-sm font-medium",nav:"space-x-1 flex items-center",nav_button:me(he({variant:"outline"}),"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-y-1",head_row:"flex",head_cell:"text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]",row:"flex w-full mt-2",cell:"h-9 w-9 text-center text-sm p-0 relative [&:has([aria-selected].day-range-end)]:rounded-r-md [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected])]:bg-accent first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md focus-within:relative focus-within:z-20",day:me(he({variant:"ghost"}),"h-9 w-9 p-0 font-normal aria-selected:opacity-100"),day_range_end:"day-range-end",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...t},components:{IconLeft:({...a})=>e.jsx(l.ChevronLeft,{className:"h-4 w-4"}),IconRight:({...a})=>e.jsx(l.ChevronRight,{className:"h-4 w-4"})},...r})}Rr.displayName="Calendar";const Dr=ae.Root,Fr=ae.CollapsibleTrigger,Mr=ae.CollapsibleContent;const Lr={Root:function({children:a,className:t}){return e.jsx("div",{className:me("space-y-4",t),children:a})},Item:function({children:a,onClick:t,className:s}){return e.jsx(Ne,{className:me("transition-colors",t&&"cursor-pointer hover:bg-muted/50",s),onClick:t,children:e.jsx(Ce,{className:"p-4",children:a})})},Field:function({label:a,value:t,className:s}){return e.jsxs("div",{className:me("flex justify-between items-center text-sm",s),children:[e.jsxs("span",{className:"text-muted-foreground font-medium",children:[a,":"]}),e.jsx("span",{className:"text-foreground",children:t})]})}};const zr={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6","auto-fit":"grid-cols-[repeat(auto-fit,minmax(250px,1fr))]","auto-fill":"grid-cols-[repeat(auto-fill,minmax(250px,1fr))]"},Or={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"};function Ur({children:a,cols:t="auto-fit",gap:s="md",className:r}){return e.jsx("div",{className:me("grid",zr[t],Or[s],r),children:a})}const $r=e=>e.normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase();function qr({multiple:t,options:s,value:r,onChange:n,getOptionValue:i,getOptionLabel:o,placeholder:d,label:c,icon:u,emptyMessage:m,searchPlaceholder:p,disabled:h,required:x,className:f,sortOptions:g,maxDisplayedBadges:b,popoverContainer:v,onOpen:N,onClose:j}){const[y,w]=a.useState(!1),[C,k]=a.useState(""),S=a.useMemo(()=>r?Array.isArray(r)?r:[r]:[],[r]),E=a.useMemo(()=>{if(!v)return;let e=v,a=0;try{for(;e&&a<3;){const t=window.getComputedStyle(e),s=t.overflowY||t.overflow;if(!s||"visible"===s||"unset"===s)break;e=e.parentElement,a++}}catch{}return e??void 0},[v]),A=a.useMemo(()=>{const e=s.map(e=>({original:e,value:i(e),label:o(e)}));return g?e.sort((e,a)=>e.label.localeCompare(a.label,"pt-BR",{sensitivity:"base"})):e},[s,i,o,g]),T=a.useMemo(()=>{if(!C)return A;const e=$r(C);return A.filter(a=>$r(a.label).includes(e))},[A,C]),I=a.useMemo(()=>A.filter(e=>S.includes(e.value)),[A,S]),P=(e,a)=>{a.preventDefault(),a.stopPropagation(),n&&n(t?S.filter(a=>a!==e):"")},_=b?I.slice(0,b):I,R=b&&I.length>b?I.length-b:0;return e.jsxs("div",{className:me("space-y-2",f),children:[c&&e.jsxs(ve,{children:[c,x&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs(Ca,{open:y,onOpenChange:e=>{w(e),e?N?.():(k(""),j?.())},modal:!1,children:[e.jsx(ka,{asChild:!0,children:e.jsxs(xe,{variant:"outline",role:"combobox","aria-expanded":y,disabled:h,className:me("w-full justify-between min-h-10 h-auto",0===I.length&&"text-muted-foreground"),children:[0===I.length?e.jsxs("span",{className:"flex items-center gap-2",children:[u&&e.jsx(u,{className:"h-4 w-4"}),d]}):t?e.jsxs("div",{className:"flex flex-wrap gap-1.5 flex-1 mr-2",children:[_.map(a=>e.jsxs(ra,{variant:"secondary",className:"gap-1 pr-1",children:[a.label,e.jsx("button",{type:"button",className:"rounded-full outline-none ring-offset-background focus:ring-2 focus:ring-ring focus:ring-offset-2",onKeyDown:e=>{"Enter"===e.key&&P(a.value,e)},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>P(a.value,e),children:e.jsx(l.X,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})]},a.value)),R>0&&e.jsxs(ra,{variant:"outline",className:"gap-1",children:["+",R]})]}):e.jsxs("span",{className:"flex items-center gap-2",children:[u&&e.jsx(u,{className:"h-4 w-4"}),I[0]?.label]}),e.jsx(l.ChevronDown,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(Sa,{className:"w-full p-0 bg-popover z-[60]",align:"start",container:E,collisionBoundary:E,children:e.jsxs(Ea,{children:[e.jsx(Aa,{placeholder:p,value:C,onChange:e=>k(e.target.value)}),e.jsx(Ta,{children:0===s.length?e.jsx(Ia,{children:m}):0===T.length?e.jsx(Ia,{children:"Nenhum item encontrado."}):e.jsx(Pa,{children:T.map(a=>e.jsxs(Ra,{value:a.value,onSelect:()=>(e=>{if(n)if(t){const a=S.includes(e)?S.filter(a=>a!==e):[...S,e];n(a)}else n(e),w(!1)})(a.value),className:"cursor-pointer",children:[e.jsx(l.Check,{className:me("mr-2 h-4 w-4",S.includes(a.value)?"opacity-100":"opacity-0")}),a.label]},a.value))})})]})})]})]})}const Vr=({className:a,...t})=>e.jsx("nav",{role:"navigation","aria-label":"pagination",className:me("mx-auto flex w-full justify-center",a),...t});Vr.displayName="Pagination";const Br=q.forwardRef(({className:a,...t},s)=>e.jsx("ul",{ref:s,className:me("flex flex-row items-center gap-1",a),...t}));Br.displayName="PaginationContent";const Wr=q.forwardRef(({className:a,...t},s)=>e.jsx("li",{ref:s,className:me("",a),...t}));Wr.displayName="PaginationItem";const Hr=({className:a,isActive:t,size:s="icon",...r})=>e.jsx("a",{"aria-current":t?"page":void 0,className:me(he({variant:t?"outline":"ghost",size:s}),a),...r});Hr.displayName="PaginationLink";const Qr=({className:a,...t})=>e.jsxs(Hr,{"aria-label":"Go to previous page",size:"default",className:me("gap-1 pl-2.5",a),...t,children:[e.jsx(l.ChevronLeft,{className:"h-4 w-4"}),e.jsx("span",{children:"Previous"})]});Qr.displayName="PaginationPrevious";const Gr=({className:a,...t})=>e.jsxs(Hr,{"aria-label":"Go to next page",size:"default",className:me("gap-1 pr-2.5",a),...t,children:[e.jsx("span",{children:"Next"}),e.jsx(l.ChevronRight,{className:"h-4 w-4"})]});Gr.displayName="PaginationNext";const Kr=({className:a,...t})=>e.jsxs("span",{"aria-hidden":!0,className:me("flex h-9 w-9 items-center justify-center",a),...t,children:[e.jsx(l.MoreHorizontal,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"More pages"})]});Kr.displayName="PaginationEllipsis";const Xr=q.forwardRef(({className:a,value:t,...s},r)=>e.jsx(te.Root,{ref:r,className:me("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",a),...s,children:e.jsx(te.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(t||0)}%)`}})}));Xr.displayName=te.Root.displayName;const Jr=q.forwardRef(({className:a,...t},s)=>e.jsx(se.Root,{className:me("grid gap-2",a),...t,ref:s}));Jr.displayName=se.Root.displayName;const Yr=q.forwardRef(({className:a,...t},s)=>e.jsx(se.Item,{ref:s,className:me("aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",a),...t,children:e.jsx(se.Indicator,{className:"flex items-center justify-center",children:e.jsx(l.Circle,{className:"h-2.5 w-2.5 fill-current text-current"})})}));Yr.displayName=se.Item.displayName;const Zr=q.forwardRef(({className:a,orientation:t="horizontal",decorative:s=!0,...r},n)=>e.jsx(re.Root,{ref:n,decorative:s,orientation:t,className:me("shrink-0 bg-border","horizontal"===t?"h-[1px] w-full":"h-full w-[1px]",a),...r}));Zr.displayName=re.Root.displayName;const en=B.Root,an=B.Trigger,tn=B.Close,sn=B.Portal,rn=q.forwardRef(({className:a,...t},s)=>e.jsx(B.Overlay,{className:me("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a),...t,ref:s}));rn.displayName=B.Overlay.displayName;const nn=s.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),on=q.forwardRef(({side:a="right",className:t,children:s,...r},n)=>e.jsxs(sn,{children:[e.jsx(rn,{}),e.jsxs(B.Content,{ref:n,className:me(nn({side:a}),t),...r,children:[s,e.jsxs(B.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[e.jsx(l.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));on.displayName=B.Content.displayName;const ln=({className:a,...t})=>e.jsx("div",{className:me("flex flex-col space-y-2 text-center sm:text-left",a),...t});ln.displayName="SheetHeader";const dn=({className:a,...t})=>e.jsx("div",{className:me("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",a),...t});dn.displayName="SheetFooter";const cn=q.forwardRef(({className:a,...t},s)=>e.jsx(B.Title,{ref:s,className:me("text-lg font-semibold text-foreground",a),...t}));cn.displayName=B.Title.displayName;const un=q.forwardRef(({className:a,...t},s)=>e.jsx(B.Description,{ref:s,className:me("text-sm text-muted-foreground",a),...t}));un.displayName=B.Description.displayName;const mn=ne.Provider,pn=ne.Root,hn=ne.Trigger,xn=q.forwardRef(({className:a,sideOffset:t=4,...s},r)=>e.jsx(ne.Content,{ref:r,sideOffset:t,className:me("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),...s}));xn.displayName=ne.Content.displayName;const fn="sidebar:state",gn=q.createContext(null);function bn(){const e=q.useContext(gn);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}const vn=q.forwardRef(({defaultOpen:a=!0,open:t,onOpenChange:s,className:r,style:n,children:i,...o},l)=>{const[d,c]=q.useState(!1);q.useEffect(()=>{const e=()=>c(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const[u,m]=q.useState(!1),[p,h]=q.useState(()=>{if("undefined"!=typeof window){const e=localStorage.getItem(fn);return null!==e?"true"===e:a}return a}),x=t??p,f=q.useCallback(e=>{const a="function"==typeof e?e(x):e;s?s(a):h(a),"undefined"!=typeof window&&localStorage.setItem(fn,String(a))},[s,x]),g=q.useCallback(()=>d?m(e=>!e):f(e=>!e),[d,f,m]);q.useEffect(()=>{const e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),g())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[g]);const b=x?"expanded":"collapsed",v=q.useMemo(()=>({state:b,open:x,setOpen:f,isMobile:d,openMobile:u,setOpenMobile:m,toggleSidebar:g}),[b,x,f,d,u,m,g]);return e.jsx(gn.Provider,{value:v,children:e.jsx(mn,{delayDuration:0,children:e.jsx("div",{className:me("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar sidebar-container",r),style:{"--sidebar-width":"16rem","--sidebar-width-icon":"4.5rem",...n},ref:l,...o,children:i})})})});vn.displayName="SidebarProvider";const Nn=q.forwardRef(({side:a="left",variant:t="sidebar",collapsible:s="offcanvas",className:r,children:n,...i},o)=>{const{isMobile:l,state:d,openMobile:c,setOpenMobile:u}=bn();return"none"===s?e.jsx("div",{className:me("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",r),ref:o,...i,children:n}):l?e.jsx(en,{open:c,onOpenChange:u,...i,children:e.jsxs(on,{"data-sidebar":"sidebar","data-mobile":"true",className:"w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden sidebar-mobile",style:{"--sidebar-width":"18rem"},side:a,children:[e.jsx(cn,{className:"sr-only",children:"Menu de Navegação"}),e.jsx("div",{className:"flex h-full w-full flex-col",children:n})]})}):e.jsxs("div",{ref:o,className:"group peer hidden md:block text-sidebar-foreground","data-state":d,"data-collapsible":"collapsed"===d?s:"","data-variant":t,"data-side":a,children:[e.jsx("div",{className:me("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===t||"inset"===t?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),e.jsx("div",{className:me("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex","left"===a?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]","floating"===t||"inset"===t?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",r),...i,children:e.jsx("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow bg-white",children:n})})]})});Nn.displayName="Sidebar";const jn=q.forwardRef(({className:a,onClick:t,...s},r)=>{const{toggleSidebar:n}=bn();return e.jsxs(xe,{ref:r,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:me("h-7 w-7",a),onClick:e=>{t?.(e),n()},...s,children:[e.jsx(l.PanelLeft,{}),e.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});jn.displayName="SidebarTrigger";const yn=q.forwardRef(({className:a,...t},s)=>{const{toggleSidebar:r}=bn();return e.jsx("button",{ref:s,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:r,title:"Toggle Sidebar",className:me("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",a),...t})});yn.displayName="SidebarRail";const wn=q.forwardRef(({className:a,...t},s)=>e.jsx("main",{ref:s,className:me("relative flex min-h-svh flex-1 flex-col bg-background","peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",a),...t}));wn.displayName="SidebarInset";const Cn=q.forwardRef(({className:a,...t},s)=>e.jsx(ge,{ref:s,"data-sidebar":"input",className:me("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",a),...t}));Cn.displayName="SidebarInput";const kn=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,"data-sidebar":"header",className:me("flex flex-col gap-2 p-2",a),...t}));kn.displayName="SidebarHeader";const Sn=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,"data-sidebar":"footer",className:me("flex flex-col gap-2 p-2",a),...t}));Sn.displayName="SidebarFooter";const En=q.forwardRef(({className:a,...t},s)=>e.jsx(Zr,{ref:s,"data-sidebar":"separator",className:me("mx-2 w-auto bg-sidebar-border",a),...t}));En.displayName="SidebarSeparator";const An=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,"data-sidebar":"content",className:me("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",a),...t}));An.displayName="SidebarContent";const Tn=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,"data-sidebar":"group",className:me("relative flex w-full min-w-0 flex-col p-2",a),...t}));Tn.displayName="SidebarGroup";const In=q.forwardRef(({className:a,asChild:s=!1,...r},n)=>{const i=s?t.Slot:"div";return e.jsx(i,{ref:n,"data-sidebar":"group-label",className:me("duration-200 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opa] ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",a),...r})});In.displayName="SidebarGroupLabel";const Pn=q.forwardRef(({className:a,asChild:s=!1,...r},n)=>{const i=s?t.Slot:"button";return e.jsx(i,{ref:n,"data-sidebar":"group-action",className:me("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",a),...r})});Pn.displayName="SidebarGroupAction";const _n=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,"data-sidebar":"group-content",className:me("w-full text-sm",a),...t}));_n.displayName="SidebarGroupContent";const Rn=q.forwardRef(({className:a,...t},s)=>e.jsx("ul",{ref:s,"data-sidebar":"menu",className:me("flex w-full min-w-0 flex-col gap-1",a),...t}));Rn.displayName="SidebarMenu";const Dn=q.forwardRef(({className:a,...t},s)=>e.jsx("li",{ref:s,"data-sidebar":"menu-item",className:me("group/menu-item relative",a),...t}));Dn.displayName="SidebarMenuItem";const Fn=s.cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-primary data-[active=true]:font-medium data-[active=true]:text-sidebar-primary-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:gap-0 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 group-data-[collapsible=icon]:[&>*]:!mr-0 group-data-[collapsible=icon]:[&>*]:!ml-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-10 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0"}},defaultVariants:{variant:"default",size:"default"}}),Mn=q.forwardRef(({asChild:a=!1,isActive:s=!1,variant:r="default",size:n="default",tooltip:i,className:o,...l},d)=>{const c=a?t.Slot:"button",{isMobile:u,state:m}=bn(),p=e.jsx(c,{ref:d,"data-sidebar":"menu-button","data-size":n,"data-active":s,className:me(Fn({variant:r,size:n}),o),...l});return i?("string"==typeof i&&(i={children:i}),e.jsxs(pn,{children:[e.jsx(hn,{asChild:!0,children:p}),e.jsx(xn,{side:"right",align:"center",hidden:"collapsed"!==m||u,...i})]})):p});Mn.displayName="SidebarMenuButton";const Ln=q.forwardRef(({className:a,asChild:s=!1,showOnHover:r=!1,...n},i)=>{const o=s?t.Slot:"button";return e.jsx(o,{ref:i,"data-sidebar":"menu-action",className:me("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",r&&"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",a),...n})});Ln.displayName="SidebarMenuAction";const zn=q.forwardRef(({className:a,...t},s)=>e.jsx("div",{ref:s,"data-sidebar":"menu-badge",className:me("absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground select-none pointer-events-none","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",a),...t}));zn.displayName="SidebarMenuBadge";const On=q.forwardRef(({className:a,showIcon:t=!1,...s},r)=>{const n=q.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return e.jsxs("div",{ref:r,"data-sidebar":"menu-skeleton",className:me("rounded-md h-8 flex gap-2 px-2 items-center",a),...s,children:[t&&e.jsx("div",{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),e.jsx("div",{className:"h-4 flex-1 max-w-[--skeleton-width] skeleton-width","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":n}})]})});On.displayName="SidebarMenuSkeleton";const Un=q.forwardRef(({className:a,...t},s)=>e.jsx("ul",{ref:s,"data-sidebar":"menu-sub",className:me("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",a),...t}));Un.displayName="SidebarMenuSub";const $n=q.forwardRef(({...a},t)=>e.jsx("li",{ref:t,...a}));$n.displayName="SidebarMenuSubItem";const qn=q.forwardRef(({asChild:a=!1,size:s="md",isActive:r,className:n,...i},o)=>{const l=a?t.Slot:"a";return e.jsx(l,{ref:o,"data-sidebar":"menu-sub-button","data-size":s,"data-active":r,className:me("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground","sm"===s&&"text-xs","md"===s&&"text-sm","group-data-[collapsible=icon]:hidden",n),...i})});qn.displayName="SidebarMenuSubButton";const Vn=q.forwardRef(({className:a,...t},s)=>e.jsxs(ie.Root,{ref:s,className:me("relative flex w-full touch-none select-none items-center",a),...t,children:[e.jsx(ie.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:e.jsx(ie.Range,{className:"absolute h-full bg-primary"})}),e.jsx(ie.Thumb,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));Vn.displayName=ie.Root.displayName;const Bn=q.forwardRef(({className:a,...t},s)=>e.jsx(oe.Root,{className:me("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",a),...t,ref:s,children:e.jsx(oe.Thumb,{className:me("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));Bn.displayName=oe.Root.displayName;const Wn=le.Root,Hn=q.forwardRef(({className:a,...t},s)=>e.jsx(le.List,{ref:s,className:me("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",a),...t}));Hn.displayName=le.List.displayName;const Qn=q.forwardRef(({className:a,...t},s)=>e.jsx(le.Trigger,{ref:s,className:me("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",a),...t}));Qn.displayName=le.Trigger.displayName;const Gn=q.forwardRef(({className:a,...t},s)=>e.jsx(le.Content,{ref:s,className:me("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",a),...t}));Gn.displayName=le.Content.displayName;const Kn=s.cva("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent hover:bg-accent hover:text-accent-foreground"},size:{default:"h-10 px-3",sm:"h-9 px-2.5",lg:"h-11 px-5"}},defaultVariants:{variant:"default",size:"default"}}),Xn=q.forwardRef(({className:a,variant:t,size:s,...r},n)=>e.jsx(de.Root,{ref:n,className:me(Kn({variant:t,size:s,className:a})),...r}));Xn.displayName=de.Root.displayName;const Jn=q.createContext({size:"default",variant:"default"}),Yn=q.forwardRef(({className:a,variant:t,size:s,children:r,...n},i)=>e.jsx(ce.Root,{ref:i,className:me("flex items-center justify-center gap-1",a),...n,children:e.jsx(Jn.Provider,{value:{variant:t,size:s},children:r})}));Yn.displayName=ce.Root.displayName;const Zn=q.forwardRef(({className:a,children:t,variant:s,size:r,...n},i)=>{const o=q.useContext(Jn);return e.jsx(ce.Item,{ref:i,className:me(Kn({variant:o.variant||s,size:o.size||r}),a),...n,children:t})});function ei({onEdit:a,onDelete:t,onToggleStatus:s,isActive:r=!0,canEdit:n=!0,canDelete:i=!0,customActions:o=[],renderAs:d="dropdown",variant:c="default"}){const u=[];return a&&n&&u.push({icon:l.Edit,label:"Editar",onClick:a,variant:"default"}),s&&u.push({icon:r?l.PowerOff:l.Power,label:r?"Inativar":"Ativar",onClick:s,variant:"default"}),o.forEach(e=>{!1!==e.show&&u.push({icon:e.icon,label:e.label,onClick:e.onClick,variant:e.variant||"default"})}),t&&i&&u.push({icon:l.Trash2,label:"Remover",onClick:t,variant:"destructive"}),0===u.length?null:"dropdown"===d?e.jsxs(us,{children:[e.jsx(ms,{asChild:!0,children:e.jsx(xe,{variant:"ghost",size:"compact"===c?"sm":"default",className:"compact"===c?"h-7 px-2":"",children:e.jsx(l.EllipsisVertical,{size:"compact"===c?14:16})})}),e.jsx(vs,{align:"end",className:"bg-background border border-border shadow-lg min-w-[120px]",children:u.map((a,t)=>e.jsxs(Ns,{onClick:a.onClick,className:"destructive"===a.variant?"text-destructive":"",children:[a.icon&&e.jsx(a.icon,{className:"mr-2 h-4 w-4"}),a.label]},t))})]}):e.jsx("div",{className:"flex items-center gap-1",children:u.map((a,t)=>e.jsxs(xe,{variant:"destructive"===a.variant?"destructive":"ghost",size:"compact"===c?"sm":"default",onClick:a.onClick,className:"compact"===c?"h-7 px-2":"",children:[a.icon&&e.jsx(a.icon,{size:"compact"===c?14:16}),"compact"!==c&&e.jsx("span",{className:"ml-1",children:a.label})]},t))})}function ai(e){const a=b.useNavigate();return{onNew:()=>{const t=e.newPath||`${e.basePath}/new`;a(t)},onEdit:t=>{const s=e.editPath?e.editPath.replace(":id",t.id):`${e.basePath}/${t.id}/edit`;a(s)}}}Zn.displayName=ce.Item.displayName;const ti=a.memo(({variant:t="card",className:s="",selectedUnit:r,onUnitChange:n})=>{const{user:i,companies:o,alias:d,isAuthenticated:c,logout:u,switchUnit:m}=Ot(),p=o?.[0]||null,h=d?o?.find(e=>e.alias===d):p,x=o||[],f=r||h||p||p,g=a.useCallback(e=>{n?n(e):m(e)},[n,m]),b=a.useMemo(()=>{if(!x?.length)return[];const e=new Map;x.forEach(a=>{e.set(a.alias,a)});const a=Array.from(e.values()),t=a.find(e=>e.alias===f?.alias),s=a.filter(e=>e.alias!==f?.alias);return s.sort((e,a)=>(e.name||"").localeCompare(a.name||"","pt-BR",{sensitivity:"base"})),t?[t,...s]:s},[x,f?.alias]);if(!c||!i)return null;const v=()=>e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("div",{className:"flex-shrink-0",children:e.jsx("div",{className:"w-10 h-10 bg-primary rounded-full flex items-center justify-center",children:e.jsx(l.User,{className:"h-5 w-5 text-primary-foreground"})})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-sm font-medium truncate",children:i.name}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Unidade: ",f?.name||"N/A"]})]})]}),f&&e.jsx("div",{className:"mt-3",children:e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(l.Building2,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm font-medium",children:f.name})]})}),b.length>1&&e.jsxs("div",{className:"mt-2",children:[e.jsxs("p",{className:"text-xs text-muted-foreground mb-1",children:["Unidades disponíveis: ",b.length]}),e.jsxs("div",{className:"flex flex-wrap gap-1",children:[b.slice(0,3).map(a=>e.jsx(ra,{variant:a.alias===f?.alias?"default":"secondary",className:"text-xs cursor-pointer",onClick:()=>g(a),children:a.name},a.alias)),b.length>3&&e.jsxs(ra,{variant:"outline",className:"text-xs",children:["+",b.length-3]})]})]})]});return"dropdown"===t?e.jsxs(us,{children:[e.jsx(ms,{asChild:!0,children:e.jsx(xe,{variant:"ghost",className:`h-auto p-2 ${s}`,children:e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsxs("div",{className:"hidden md:block text-left",children:[e.jsx("p",{className:"text-sm font-medium",children:i.name}),e.jsx("p",{className:"text-xs text-muted-foreground",children:f?.name||"N/A"})]}),e.jsx("div",{className:"w-8 h-8 bg-primary rounded-full flex items-center justify-center",children:e.jsx(l.User,{className:"h-4 w-4 text-primary-foreground"})}),e.jsx(l.ChevronDown,{className:"h-4 w-4"})]})})}),e.jsxs(vs,{className:"w-56 bg-background border border-border shadow-lg z-50",align:"end",children:[e.jsxs(xs,{children:[e.jsxs(gs,{children:[e.jsx(l.RefreshCw,{className:"mr-2 h-4 w-4"}),"Alterar Unidade"]}),e.jsx(bs,{children:b.map(a=>e.jsxs(Ns,{onClick:()=>g(a),className:a.alias===f?.alias?"bg-muted":"",children:[e.jsx(l.Building2,{className:"mr-2 h-4 w-4"}),a.name,a.alias===f?.alias&&e.jsx(ra,{variant:"outline",className:"ml-2 text-xs",children:"Atual"})]},a.alias))})]}),e.jsx(Cs,{}),e.jsxs(Ns,{onClick:u,children:[e.jsx(l.LogOut,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]}):e.jsxs(Ne,{className:s,children:[e.jsx(je,{children:e.jsx(ye,{className:"text-lg",children:"Informações do Usuário"})}),e.jsxs(Ce,{className:"space-y-4",children:[e.jsx(v,{}),e.jsx(Zr,{}),e.jsxs(xe,{variant:"outline",onClick:u,size:"sm",className:"w-full",children:[e.jsx(l.LogOut,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]})}),si=a.createContext({});function ri({children:t,config:s}){const r=a.useMemo(()=>({navigation:s?.navigation,appName:s?.appName}),[s?.navigation,s?.appName]);return e.jsx(si.Provider,{value:r,children:t})}function ni(){return a.useContext(si)}function ii(){const e=b.useLocation(),{navigation:a}=ni();if(!a)return"Página";const t=a.find(a=>a.path===e.pathname);if(t)return t.label;const s=a.find(a=>e.pathname.startsWith(a.path+"/"));return s?.label||"Página"}function oi(e,t){const[s,r]=a.useState(e),n=a.useRef(),i=a.useCallback(()=>{n.current&&(clearTimeout(n.current),n.current=void 0)},[]);return a.useEffect(()=>(i(),n.current=setTimeout(()=>{r(e)},t),i),[e,t,i]),[s,i]}const li=a.memo(function({actions:t}){const s=b.useLocation(),r=ii(),{navigation:n,appName:i}=ni(),{metadata:o,headerActions:d}=or(),{companies:c,alias:u,isSearchVisible:m,clearSearch:p,refreshData:h,switchUnit:x}=Ot(),f=u?c?.find(e=>e.alias===u)||c?.[0]||null:c?.[0]||null,[g,v]=b.useSearchParams(),[N,j]=a.useState(()=>g.get("search")||""),[y,w]=oi(N,gt.debounceDelay);a.useEffect(()=>{if(!m)return;const e=new URLSearchParams(g);y?(e.set("search",y),e.set("page","1")):e.delete("search"),v(e)},[y,v,m]);const C=n?.find(e=>e.path===s.pathname)||n?.find(e=>s.pathname.startsWith(e.path+"/")),k=o.title||r,S=o.subtitle||C?.complementaryText||"Detalhes do item";return e.jsx("header",{className:"bg-white border-b border-gray-200 px-2 md:px-4 py-2",children:e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs("div",{className:"flex-shrink-0",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx("h1",{className:"text-lg font-semibold text-foreground truncate",children:k}),e.jsx(ra,{variant:"default",className:"bg-primary hover:bg-primary/90 text-primary-foreground text-xs px-2 py-1",children:i||"Módulo"})]}),e.jsx("p",{className:"text-sm text-muted-foreground truncate",children:S})]}),m&&e.jsxs("div",{className:"flex items-center gap-2 flex-1 max-w-2xl",children:[e.jsxs("div",{className:"relative flex-1",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e.jsx(ge,{placeholder:"/wiki"===s.pathname?"Buscar artigos...":"Buscar...",value:N,onChange:e=>(e=>{j(e)})(e.target.value),className:"w-full pl-10 pr-8"}),N&&e.jsx(xe,{variant:"ghost",size:"sm",className:"absolute right-1 top-1/2 transform -translate-y-1/2 h-6 w-6 p-0 hover:bg-gray-100",onClick:()=>{w(),j("");const e=new URLSearchParams(g);e.delete("search"),e.delete("page"),v(e)},title:"Limpar busca",children:e.jsx(l.X,{size:14})})]}),e.jsx(xe,{variant:"outline",size:"sm",onClick:h,className:"flex-shrink-0 h-10 w-10 p-0",title:"Atualizar dados",children:e.jsx(l.RefreshCw,{size:14})})]}),e.jsxs("div",{className:"flex-shrink-0 ml-auto flex items-center gap-3",children:[(d||t)&&e.jsx("div",{className:"flex items-center gap-2",children:d||t}),(void 0).VITE_WIKI_URL&&e.jsx(xe,{variant:"secondary",size:"sm",className:"h-8 px-3",onClick:e=>ue((void 0).VITE_WIKI_URL,e),title:"Abrir Wiki",children:"Wiki"}),e.jsx("div",{className:"text-sm",children:e.jsx(ti,{variant:"dropdown",selectedUnit:f,onUnitChange:x})})]})]})})}),di=({key:e,enabled:a,checkFn:t,staleTime:s=3e5,gcTime:r=6e5})=>g.useQuery({queryKey:["permission",e],queryFn:t,enabled:a,staleTime:s,gcTime:r,retry:0,refetchOnWindowFocus:!1}),ci=(e={})=>{const{enabled:a=!0}=e,{alias:t}=Ot();return g.useQuery({queryKey:["active-modules",t],queryFn:async()=>{if(!t)return[];const e=rt(),{data:a,error:s}=await e.schema("central").from("modules").select("\n id, name, url,\n modules_alias!inner(alias)\n ").eq("modules_alias.alias",t).eq("status","active").order("name");if(s){if(!dt.handleError(s))throw s;return[]}return a||[]},enabled:a&&!!t})},ui="forlogic-sidebar-pinned",mi=()=>{try{const e=localStorage.getItem(ui);return!!e&&JSON.parse(e)}catch{return!1}},pi=e=>{const a=["border-l-yellow-400","border-l-green-400","border-l-blue-400","border-l-red-400","border-l-purple-400","border-l-pink-400"];return a[e%a.length]},hi=`https://${(void 0).VITE_SUPABASE_PROJECT_ID}.supabase.co/storage/v1/object/public/library-assets`,xi={logo:`${hi}/${jt.isQualiex?"logo-qualiex.svg":"logo.svg"}`,smallLogo:`${hi}/${jt.isQualiex?"small-forlogic.svg":"small.svg"}`},fi=xi.logo,gi=xi.smallLogo;function bi({appName:a,isPinned:t,onPinToggle:s,open:r,dropdownOpen:n,onDropdownChange:i}){const{data:o,isLoading:d,error:c}=ci({enabled:n}),u=e=>{((e,a)=>{const t=e?.find(e=>e.url===a);t?.url&&window.open(t.url,"_blank")})(o,e)};return e.jsxs(kn,{className:"p-0 gap-0",children:[e.jsx("div",{className:"flex items-center justify-between h-[34px]",children:r?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex items-center pl-[12px]",children:e.jsx("img",{src:xi.logo,alt:"Logo",className:"h-6 max-w-full object-contain"})}),e.jsx("button",{onClick:s,className:"h-8 w-8 flex items-center justify-center rounded-md transition-colors duration-200 "+(t?"bg-primary/20 text-primary":"hover:bg-muted text-muted-foreground"),children:e.jsx(l.PanelLeft,{className:"h-4 w-4"})})]}):e.jsx("div",{className:"flex items-center justify-center w-full h-[34px]",children:e.jsx("img",{src:xi.smallLogo,alt:"Logo",className:"h-[34px] w-[34px] object-contain"})})}),e.jsx("div",{className:"mt-2 pt-0",children:e.jsxs(us,{onOpenChange:i,children:[e.jsx(ms,{asChild:!0,children:r?e.jsxs("div",{className:"bg-muted hover:bg-muted/80 text-foreground font-medium text-sm flex items-center justify-between cursor-pointer transition-all duration-200 h-8 px-3 gap-3 rounded-md w-full",children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx("img",{src:"https://ccjfvpnndclajkleyqkc.supabase.co/storage/v1/object/public/library-assets/composit.svg",alt:"Menu",className:"h-6 w-6 text-muted-foreground flex-shrink-0"}),e.jsx("span",{className:"truncate group-data-[collapsible=icon]:hidden",children:a})]}),e.jsx(l.ChevronDown,{className:"h-6 w-6 flex-shrink-0 text-muted-foreground"})]}):e.jsx("div",{className:"flex items-center justify-center w-full h-8 bg-muted hover:bg-muted/80 rounded-md cursor-pointer transition-all duration-200 p-[5px]",children:e.jsx(l.ChevronDown,{className:"h-6 w-6 text-muted-foreground"})})}),e.jsx(vs,{className:r?"w-80 bg-white rounded-lg shadow-lg border border-gray-200 p-4 z-50":"w-[58px] bg-white rounded-lg shadow-lg border border-gray-200 p-2 z-50",align:r?"start":"center",children:d?e.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-muted-foreground",children:[e.jsx(l.Loader2,{className:"h-4 w-4 animate-spin"}),e.jsx("span",{className:"text-sm",children:"Carregando módulos..."})]}):c?e.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-destructive",children:[e.jsx(l.AlertCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:"Erro ao carregar módulos"})]}):o&&0!==o.length?e.jsx("div",{className:"space-y-2",children:o.map((a,t)=>e.jsx("div",{onClick:()=>u(a.url||""),className:`\n bg-muted/50 hover:bg-muted rounded-md p-3 cursor-pointer \n border-l-4 ${pi(t)} transition-colors duration-200\n `,children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"font-medium text-foreground text-sm",children:a.name}),a.url&&e.jsx(l.ExternalLink,{className:"h-4 w-4 text-muted-foreground"})]})},a.id))}):e.jsx("div",{className:"py-3 px-3 text-muted-foreground text-sm",children:"Nenhum módulo disponível"})})]})})]})}function vi({direction:e="right",minWidth:t=224,maxWidth:s=384,defaultWidth:r=240,storageKey:n="sidebar-width",onResize:i,isOpen:o=!0}={}){const[l,d]=a.useState(()=>{if("undefined"==typeof window)return r;const e=localStorage.getItem(n);return e?parseInt(e):r}),[c,u]=a.useState(!1),m=a.useRef(null);a.useEffect(()=>{const e=document.querySelector(".sidebar-container");e&&e instanceof HTMLElement&&(o?e.style.setProperty("--sidebar-width",`${l}px`):e.style.setProperty("--sidebar-width","240px"))},[l,o]);const p=a.useCallback(e=>{e.preventDefault(),u(!0)},[]);return a.useEffect(()=>{if(!c)return;const a=a=>{let r;r="left"===e?window.innerWidth-a.clientX:a.clientX,r=Math.max(t,Math.min(s,r)),d(r),i?.(r)},r=()=>{u(!1),localStorage.setItem(n,l.toString())};return document.addEventListener("mousemove",a),document.addEventListener("mouseup",r),()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",r)}},[c,e,t,s,l,n,i]),a.useEffect(()=>{c?(document.body.style.cursor="ew-resize",document.body.style.userSelect="none"):(document.body.style.cursor="",document.body.style.userSelect="")},[c,e]),{width:l,isDragging:c,dragRef:m,handleMouseDown:p}}const Ni=a.forwardRef(({className:a,onMouseDown:t,isDragging:s,...r},n)=>e.jsx("div",{ref:n,onMouseDown:t,className:me("absolute inset-y-0 right-0 w-1 cursor-ew-resize","hover:bg-primary/20 transition-colors","after:absolute after:inset-y-0 after:-left-1 after:-right-1 after:content-['']",s&&"bg-primary/40",a),...r}));function ji({config:t,customContent:s,resizable:r=!1,minWidth:n=224,maxWidth:i=384}={}){const{open:o,setOpen:d}=bn(),c=b.useLocation(),{alias:u,user:m}=Ot(),[p,h]=a.useState(!1),[x,f]=a.useState(mi),[g,v]=a.useState(!1),N=a.useRef(!1),j=r?vi({minWidth:n,maxWidth:i,storageKey:"app-sidebar-width",isOpen:o}):null;a.useEffect(()=>{d(!!x||!(!g&&!p))},[x,g,p,d]);return e.jsxs(Nn,{collapsible:"icon",onMouseEnter:()=>{x||N.current||v(!0)},onMouseLeave:()=>{x||v(!1)},className:"app-sidebar bg-white border-r border-gray-200 py-6 px-3",style:j&&o?{width:`${j.width}px`,transition:"none"}:{transition:"all 300ms ease-in-out"},children:[e.jsx(bi,{appName:t?.appName||"Título do módulo",isPinned:x,onPinToggle:()=>{const e=!x;f(e),(e=>{try{localStorage.setItem(ui,JSON.stringify(e))}catch{}})(e),e||(N.current=!0,v(!1),d(!1),setTimeout(()=>{N.current=!1},300))},open:o,dropdownOpen:p,onDropdownChange:h}),e.jsx(An,{children:s||e.jsx(Tn,{className:"p-0 mt-6",children:e.jsx(_n,{children:e.jsx(Rn,{className:"space-y-2",children:e.jsx(mn,{children:t?.navigation?.map((a,t)=>{const s=({item:a,index:t})=>{const r=`${a.path}-${t}-${u??"noalias"}-${m?.id??"nouser"}`,{data:n=!0,isLoading:i}=di({key:r,enabled:Boolean(a.permissionCheck&&u&&m?.id),checkFn:a.permissionCheck||(()=>Promise.resolve(!0))}),o=a.permissionCheck&&!n,d=i?l.Loader2:o?l.Lock:a.icon;o||a.complementaryText;return a.children&&a.children.length>0?e.jsx(Dr,{defaultOpen:!0,className:"group/collapsible",children:e.jsxs(Dn,{children:[e.jsx(Fr,{asChild:!0,children:e.jsx(Mn,{size:"lg",className:"h-10",children:e.jsxs("div",{className:"flex w-full items-center gap-3",children:[e.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e.jsx(d,{className:"h-5 w-4"})}),e.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:a.label}),e.jsx(l.ChevronRight,{className:"ml-auto h-4 w-4 transition-transform group-data-[state=open]/collapsible:rotate-90 group-data-[collapsible=icon]:hidden"})]})})}),e.jsx(Mr,{children:e.jsx(Un,{children:a.children.map((a,t)=>e.jsx(s,{item:a,index:t},a.path))})})]})},a.path):e.jsx(Dn,{children:o||i?e.jsxs(pn,{children:[e.jsx(hn,{asChild:!0,children:e.jsx(Mn,{size:"lg",className:"h-10 opacity-50 cursor-not-allowed",onClick:e=>e.preventDefault(),children:e.jsxs("div",{className:"flex w-full items-center gap-3",children:[e.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e.jsx(d,{className:"h-4 w-4 "+(i?"animate-spin":"")})}),e.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:a.label})]})})}),e.jsx(xn,{children:e.jsx("p",{children:i?"Verificando acesso...":"Acesso restrito"})})]}):e.jsx(Mn,{asChild:!0,isActive:(p=a.path,c.pathname===p||c.pathname.startsWith(p+"/")),size:"lg",className:"h-10",children:e.jsxs(b.Link,{to:a.path,className:"flex w-full items-center gap-3",children:[e.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e.jsx(d,{className:"h-5 w-4"})}),e.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:a.label})]})})},a.path);var p};return e.jsx(s,{item:a,index:t},a.path)})})})})})}),r&&j&&o&&e.jsx(Ni,{ref:j.dragRef,onMouseDown:j.handleMouseDown,isDragging:j.isDragging})]})}Ni.displayName="ResizableRail";const yi=a.memo(function({children:t,sidebar:s,sidebarConfig:r,showHeader:n=!0}){const i=a.useMemo(()=>s||e.jsx(ji,{config:r}),[s,r]),o=a.useMemo(()=>({"--sidebar-width":"240px","--sidebar-width-icon":"58px"}),[]);return e.jsx(ri,{config:r,children:e.jsx(ir,{children:e.jsx(vn,{defaultOpen:!1,style:o,children:e.jsxs("div",{className:"sidebar-container min-h-screen flex w-full",children:[i,e.jsxs("main",{className:"flex-1 flex flex-col h-screen overflow-hidden",children:[n&&e.jsx("div",{className:"flex-shrink-0 sticky top-0 z-10 bg-background",children:e.jsx(li,{})}),e.jsx("div",{className:"flex-1 overflow-y-auto bg-gray-50",children:t})]})]})})})})});var wi=Object.defineProperty,Ci=(e,a,t)=>((e,a,t)=>a in e?wi(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);class ki extends a.Component{constructor(e){super(e),Ci(this,"copyErrorDetails",()=>{const e=Ja.getErrors().slice(0,2),a=`\n=== ERRO ATUAL ===\n${this.state.error?.message||"Erro desconhecido"}\n\nStack Trace:\n${this.state.error?.stack||"Não disponível"}\n\n=== ÚLTIMOS ERROS ===\n${e.map((e,a)=>`${a+1}. [${new Date(e.timestamp).toLocaleTimeString()}] ${e.message}`).join("\n")||"Nenhum erro registrado"}\n `.trim();navigator.clipboard.writeText(a),ha({title:"Detalhes copiados!",description:"Os detalhes do erro foram copiados para a área de transferência."})}),this.state={hasError:!1,showDetails:!1}}static getDerivedStateFromError(e){if((void 0).DEV)throw e;return{hasError:!0,error:e}}componentDidCatch(e,a){if((void 0).DEV)throw e;Ja.handleError(e,!1),this.setState({errorInfo:a})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const a=Ja.getErrors().slice(0,2);return e.jsx("div",{className:"flex items-center justify-center min-h-screen p-4",children:e.jsxs(Ne,{className:"w-full max-w-2xl",children:[e.jsxs(je,{className:"text-center",children:[e.jsx("div",{className:"flex justify-center mb-4",children:e.jsx(l.AlertTriangle,{className:"h-12 w-12 text-destructive"})}),e.jsx(ye,{children:"Algo deu errado"})]}),e.jsxs(Ce,{className:"space-y-4",children:[e.jsx("p",{className:"text-center text-muted-foreground",children:"Ocorreu um erro inesperado. Tente recarregar a página."}),e.jsxs(Dr,{open:this.state.showDetails,onOpenChange:e=>this.setState({showDetails:e}),children:[e.jsx(Fr,{asChild:!0,children:e.jsxs(xe,{variant:"outline",className:"w-full flex items-center justify-center gap-2",children:[e.jsx(l.ChevronDown,{className:"h-4 w-4 transition-transform "+(this.state.showDetails?"rotate-180":"")}),"Ver Detalhes Técnicos"]})}),e.jsxs(Mr,{className:"mt-4 space-y-4",children:[e.jsxs("div",{className:"rounded-lg border bg-card p-4 space-y-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📋 Erro Atual"}),e.jsxs("div",{className:"text-sm space-y-2",children:[e.jsx("p",{className:"font-medium text-destructive",children:this.state.error?.message||"Erro desconhecido"}),this.state.error?.stack&&e.jsx(Ds,{className:"h-32 w-full rounded border bg-muted p-2",children:e.jsx("pre",{className:"text-xs text-muted-foreground whitespace-pre-wrap",children:this.state.error.stack})})]})]}),a.length>0&&e.jsxs("div",{className:"pt-3 border-t",children:[e.jsx("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📜 Últimos Erros"}),e.jsx("div",{className:"space-y-2",children:a.map((a,t)=>e.jsx("div",{className:"text-sm p-2 rounded bg-muted/50",children:e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsxs("span",{className:"font-medium text-muted-foreground shrink-0",children:[t+1,"."]}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:e.jsxs("span",{className:"text-xs text-muted-foreground",children:["[",new Date(a.timestamp).toLocaleTimeString(),"]"]})}),e.jsx("p",{className:"text-sm break-words",children:a.message})]})]})},a.id))})]})]}),e.jsxs(xe,{variant:"outline",onClick:this.copyErrorDetails,className:"w-full flex items-center justify-center gap-2",children:[e.jsx(l.Copy,{className:"h-4 w-4"}),"Copiar Detalhes"]})]})]}),e.jsx(xe,{onClick:()=>window.location.reload(),className:"w-full",children:"Recarregar Página"})]})]})})}return this.props.children}}class Si{static async sendEmail(e){const a=rt(),{data:t,error:s}=await a.functions.invoke("send-email",{body:{template_code:e.templateCode,to:e.to,variables:e.variables,cc:e.cc,bcc:e.bcc,replyTo:e.replyTo}});if(s)throw s;return t}}const Ei=Si;function Ai(){const[e,t]=a.useState([]),[s,r]=a.useState(!1),[n,i]=a.useState(null),[l,d]=a.useState(null);a.useEffect(()=>{c()},[]);const c=async()=>{try{const e=rt(),{data:a,error:s}=await e.functions.invoke("openai-chat",{body:{action:"createThread"}});if(s)throw s;i(a.threadId),t([{id:"initial",role:"assistant",content:"Olá! Como posso ajudá-lo hoje?",timestamp:new Date}])}catch(e){d("Erro ao inicializar conversa"),o.toast.error("Erro ao inicializar conversa")}};return{messages:e,isLoading:s,error:l,sendMessage:a.useCallback(async e=>{if(!n||!e.trim())return;const a={id:`user-${Date.now()}`,role:"user",content:e,timestamp:new Date};t(e=>[...e,a]),r(!0),d(null);try{const a=rt(),{data:s,error:r}=await a.functions.invoke("openai-chat",{body:{action:"sendMessage",threadId:n,message:e}});if(r)throw r;const{runId:i}=s,o=await(async e=>{if(!n)return!1;for(let t=0;t<60;t++)try{const a=rt(),{data:t,error:s}=await a.functions.invoke("openai-chat",{body:{action:"checkRunStatus",threadId:n,runId:e}});if(s)throw s;const{status:r}=t;if("completed"===r)return!0;if("failed"===r||"cancelled"===r)throw new Error("O assistente encontrou um erro");await new Promise(e=>setTimeout(e,1e3))}catch(a){throw a}throw new Error("Tempo limite excedido")})(i);o&&await(async()=>{if(n)try{const e=rt(),{data:a,error:s}=await e.functions.invoke("openai-chat",{body:{action:"getMessages",threadId:n}});if(s)throw s;const r=a.messages.map(e=>({id:e.id,role:e.role,content:e.content,timestamp:new Date(1e3*e.created_at)}));t(r)}catch(e){throw e}})()}catch(s){const e=s instanceof Error?s.message:"Erro ao enviar mensagem";d(e),o.toast.error(e),t(e=>e.filter(e=>e.id!==a.id))}finally{r(!1)}},[n]),threadId:n}}function Ti({content:a,className:t}){return e.jsx("div",{className:me("prose prose-sm max-w-none",t),children:e.jsx(L,{remarkPlugins:[z],components:{h1:({children:a})=>e.jsx("h1",{className:"text-lg font-bold mt-4 mb-2 text-foreground",children:a}),h2:({children:a})=>e.jsx("h2",{className:"text-base font-bold mt-3 mb-2 text-foreground",children:a}),h3:({children:a})=>e.jsx("h3",{className:"text-sm font-semibold mt-2 mb-1 text-foreground",children:a}),p:({children:a})=>e.jsx("p",{className:"text-sm mb-2 last:mb-0 text-foreground",children:a}),ul:({children:a})=>e.jsx("ul",{className:"list-disc list-inside mb-2 space-y-1",children:a}),ol:({children:a})=>e.jsx("ol",{className:"list-decimal list-inside mb-2 space-y-1",children:a}),li:({children:a})=>e.jsx("li",{className:"text-sm text-foreground",children:a}),code:({inline:a,children:t,...s})=>a?e.jsx("code",{className:"bg-muted px-1.5 py-0.5 rounded text-xs font-mono text-foreground",...s,children:t}):e.jsx("code",{className:"block bg-muted p-2 rounded text-xs font-mono overflow-x-auto mb-2 text-foreground",...s,children:t}),pre:({children:a})=>e.jsx("pre",{className:"bg-muted p-2 rounded overflow-x-auto mb-2",children:a}),a:({children:a,href:t})=>e.jsx("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"text-primary underline hover:text-primary/80",children:a}),blockquote:({children:a})=>e.jsx("blockquote",{className:"border-l-4 border-primary pl-3 italic my-2 text-muted-foreground",children:a}),strong:({children:a})=>e.jsx("strong",{className:"font-bold text-foreground",children:a}),em:({children:a})=>e.jsx("em",{className:"italic text-foreground",children:a})},children:a})})}function Ii({open:t,onOpenChange:s,placeId:r,placeName:n,onMakeManager:i,onMakeMembers:o,currentManagerId:d,currentMemberIds:c=[]}){const[u,m]=a.useState([]),[p,h]=a.useState(!1),[x,f]=a.useState(""),{data:g=[],isLoading:b}=Os({enabled:t}),v=a.useMemo(()=>{let e=[...g];if(e.sort((e,a)=>{const t=e.userName?.toLowerCase()||"",s=a.userName?.toLowerCase()||"";return t.localeCompare(s)}),x){const a=x.toLowerCase();e=e.filter(e=>e.userName?.toLowerCase().includes(a)||e.userEmail?.toLowerCase().includes(a))}return e},[g,x]),N=e=>{m(a=>a.includes(e)?a.filter(a=>a!==e):[...a,e])},j=1===u.length,y=u.length>0;return e.jsx(Se,{open:t,onOpenChange:s,children:e.jsxs(Pe,{className:"max-w-2xl",children:[e.jsx(_e,{children:e.jsxs(De,{className:"flex items-center gap-2",children:[e.jsx(l.Users,{className:"h-5 w-5"}),"Gerenciar Acessos - ",n]})}),e.jsxs("div",{className:"relative",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(ge,{placeholder:"Buscar por nome ou email...",value:x,onChange:e=>f(e.target.value),className:"pl-9"})]}),e.jsx(Ds,{className:"h-[400px] pr-4",children:b?e.jsx("div",{className:"space-y-2",children:[...Array(5)].map((a,t)=>e.jsx(Fa,{className:"h-16 w-full"},t))}):0===v.length?e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e.jsx(l.Users,{className:"h-12 w-12 text-muted-foreground/50 mb-3"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:x?"Nenhum usuário encontrado":"Nenhum usuário disponível"})]}):e.jsx("div",{className:"space-y-2",children:v.map(a=>{const t=a.userId===d,s=c.includes(a.userId||""),r=u.includes(a.userId||"");return e.jsxs("div",{className:me("flex items-center gap-3 p-3 rounded-lg border transition-colors",r&&"bg-accent border-primary","hover:bg-accent/50 cursor-pointer"),onClick:()=>N(a.userId||""),children:[e.jsx(aa,{checked:r,onCheckedChange:()=>N(a.userId||""),onClick:e=>e.stopPropagation()}),e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("p",{className:"font-medium",children:a.userName}),t&&e.jsx(l.Crown,{className:"h-4 w-4 text-yellow-500"})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:a.userEmail})]}),(t||s)&&e.jsx("div",{className:"text-xs text-muted-foreground",children:t?"Gestor":"Membro"})]},a.userId)})})}),e.jsxs(Re,{className:"flex gap-2 sm:gap-2",children:[e.jsx("div",{className:"flex-1 text-sm text-muted-foreground",children:u.length>0&&e.jsxs("span",{children:[u.length," selecionado(s)"]})}),j&&i&&e.jsxs(xe,{onClick:async()=>{if(i&&1===u.length){h(!0);try{await i(u[0],r),m([])}finally{h(!1)}}},disabled:p,variant:"outline",children:[e.jsx(l.Crown,{className:"h-4 w-4 mr-2"}),"Tornar Gestor"]}),y&&o&&e.jsxs(xe,{onClick:async()=>{if(o&&0!==u.length){h(!0);try{await o(u,r),m([])}finally{h(!1)}}},disabled:p,children:[e.jsx(l.UserPlus,{className:"h-4 w-4 mr-2"}),"Tornar ",u.length>1?"Membros":"Membro"]})]})]})})}function Pi({place:t,level:s=0,manageAccessConfig:r}){const[n,i]=a.useState(!1),[o,d]=a.useState(!1),c=t.subPlaces&&t.subPlaces.length>0,u=t.isActive??!0,m=t.usersCount??0;return e.jsxs("div",{children:[e.jsxs(Dr,{open:n,onOpenChange:i,children:[e.jsxs("div",{className:"flex items-center gap-2 py-3 px-4 hover:bg-accent/50 transition-colors",style:{paddingLeft:2*s+1+"rem"},children:[c?e.jsxs(Fr,{className:"flex items-center gap-2 flex-1",children:[e.jsx(l.ChevronRight,{className:me("h-4 w-4 transition-transform shrink-0",n&&"rotate-90")}),e.jsx(l.Building2,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.jsx("span",{className:"font-medium",children:t.name}),e.jsxs("span",{className:"text-sm text-muted-foreground",children:["(",t.subPlaces.length,")"]})]}):e.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[e.jsx("div",{className:"w-4 shrink-0"}),e.jsx(l.Building2,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.jsx("span",{className:"font-medium",children:t.name})]}),e.jsxs("div",{className:"flex items-center gap-3 ml-auto",children:[e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(l.Users,{className:"h-3.5 w-3.5 text-muted-foreground"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:m})]}),e.jsx(ra,{variant:u?"default":"secondary",className:"text-xs",children:u?"Ativo":"Inativo"}),r&&e.jsx(ei,{customActions:[{label:"Gerenciar Acessos",icon:l.Settings,onClick:()=>d(!0),variant:"default"}],renderAs:"dropdown",variant:"compact"})]})]}),c&&e.jsx(Mr,{children:t.subPlaces.map(a=>e.jsx(Pi,{place:a,level:s+1,manageAccessConfig:r},a.id))})]}),0===s&&e.jsx(Zr,{}),r&&e.jsx(Ii,{open:o,onOpenChange:d,placeId:t.id,placeName:t.name,onMakeManager:r.onMakeManager,onMakeMembers:r.onMakeMembers,currentManagerId:r.getCurrentManagerId?.(t.id),currentMemberIds:r.getCurrentMemberIds?.(t.id)})]})}var _i=Object.defineProperty,Ri=(e,a,t)=>((e,a,t)=>a in e?_i(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);const Di=new class{constructor(){Ri(this,"baseUrl",(void 0).VITE_QUALIEX_API_URL)}async makeApiCall(e,a,t){const s=ut.validateToken();if(!s.valid)throw new Error(s.message||"Token inválido");const r=Ga.getAccessToken();if(!r)throw new Error("Token Qualiex não encontrado");if(!t||""===t.trim())throw new Error("Alias da unidade é obrigatório");const n=new URL(e,this.baseUrl);Object.entries(a).forEach(([e,a])=>{n.searchParams.append(e,a)});const i=await fetch(n.toString(),{method:"GET",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json",Accept:"application/json","un-alias":t}});if(!i.ok){const e=new Error(`API call failed: ${i.status}`);throw e.status=i.status,e}return i.json()}buildHierarchy(e){const a=new Map,t=[];return e.forEach(e=>{a.set(e.id,{...e,subPlaces:[]})}),e.forEach(e=>{const s=a.get(e.id);if(e.parentId){const r=a.get(e.parentId);r?(r.subPlaces=r.subPlaces||[],r.subPlaces.push(s)):t.push(s)}else t.push(s)}),t}async getPlaces(e,a){try{const t=await this.makeApiCall("/api/common/v1/places",{companyId:a},e),s=t.data||t||[];return this.buildHierarchy(s)}catch(t){if(await ut.handleApiError(t))try{const t=await this.makeApiCall("/api/common/v1/places",{companyId:a},e),s=t.data||t||[];return this.buildHierarchy(s)}catch(s){return Ja.handleError(s instanceof Error?s:"Erro ao buscar locais após renovação de token",!0),[]}return Ja.handleError(t instanceof Error?t.message:"Erro ao buscar locais",!0),[]}}};function Fi(e){const a=new Map,t=new Map,s=[];e.forEach(e=>{const s={...e,children:[],level:0};a.set(e.id,s),t.set(e.id_user,s)}),e.forEach(e=>{const r=a.get(e.id);if(e.id_leader){const a=t.get(e.id_leader);if(a)return void a.children.push(r)}s.push(r)});const r=(e,a)=>{e.level=a,e.children.forEach(e=>r(e,a+1))};s.forEach(e=>r(e,0));const n=e=>{e.sort((e,a)=>{const t=e.name||e.id_user||e.email||"",s=a.name||a.id_user||a.email||"";return t.localeCompare(s)}),e.forEach(e=>e.children.length>0&&n(e.children))};return n(s),s}function Mi(e){const a=[],t=e=>{a.push(e),e.children.forEach(t)};return e.forEach(t),a}function Li(){const{alias:e,isAuthenticated:a}=Ot(),t=Ga.getAccessToken(),{data:s=[]}=Os({enabled:!0});return g.useQuery({queryKey:["leadership",e,s.length],queryFn:async()=>{if(!t||!e)throw new Error("Usuário não autenticado ou unidade não selecionada");const a=rt(),{data:r,error:n}=await a.schema("common").from("leaders").select("*").eq("is_removed",!1).eq("alias",e);if(n)throw new Error("Erro ao buscar hierarquia de liderança");if(!r||0===r.length)return[];const i={};s.forEach(e=>{i[e.userId]={name:e.userName||e.userEmail,email:e.userEmail||""}});const o=r.map(e=>({...e,name:i[e.id_user]?.name||e.id_user,email:i[e.id_user]?.email||"",subordinatesCount:r.filter(a=>a.id_leader===e.id_user).length})),l=new Set(r.map(e=>e.id_user));return new Set(r.filter(e=>e.id_leader&&!l.has(e.id_leader)).map(e=>e.id_leader)).forEach(e=>{const a=i[e];o.push({id:`virtual-${e}`,alias:r[0]?.alias||"",id_user:e,id_leader:null,is_removed:!1,is_active:!0,created_at:(new Date).toISOString(),updated_at:(new Date).toISOString(),name:a?.name||e,email:a?.email||"",subordinatesCount:r.filter(a=>a.id_leader===e).length})}),Fi(o)},enabled:!!t&&!!e&&a&&s.length>0})}function zi(){const e="common",{alias:a}=Ot(),t=g.useQueryClient(),s=rt();return g.useMutation({mutationFn:async t=>{if(!a)throw new Error("Unidade não selecionada");if(t.id_user===t.id_leader)throw new Error("Usuário não pode ser seu próprio líder");t.id_leader&&await Vi(s,a,e,t.id_user,t.id_leader);const{data:r,error:n}=await s.schema(e).from("leaders").insert({alias:a,id_user:t.id_user,id_leader:t.id_leader,is_active:!0,is_removed:!1}).select().single();if(n)throw n;return r},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",a]}),o.toast.success("Líder virtual promovido com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao criar líder")}})}function Oi(){const e="common",{alias:a}=Ot(),t=g.useQueryClient(),s=rt();return g.useMutation({mutationFn:async t=>{if(!a)throw new Error("Unidade não selecionada");if(!t.users.length)throw new Error("Selecione pelo menos um liderado");const r=t.users.map(e=>e.id_user),{data:n}=await s.schema(e).from("leaders").select("id_user").eq("alias",a).in("id_user",r).eq("is_removed",!1);if(n&&n.length>0){const e=n.map(e=>e.id_user);throw new Error(`Alguns usuários já estão cadastrados como líderes: ${e.join(", ")}`)}for(const d of t.users){if(d.id_user===t.id_leader)throw new Error("Usuário não pode ser seu próprio líder");await Vi(s,a,e,d.id_user,t.id_leader)}const i=t.users.map(e=>({alias:a,id_user:e.id_user,id_leader:t.id_leader,is_active:!0,is_removed:!1})),{data:o,error:l}=await s.schema(e).from("leaders").insert(i).select();if(l)throw l;return o},onSuccess:e=>{t.invalidateQueries({queryKey:["leadership",a]}),o.toast.success(`${e?.length||0} liderado(s) adicionado(s) com sucesso`)},onError:e=>{o.toast.error(e.message||"Erro ao adicionar liderados")}})}function Ui(){const e="common",{alias:a}=Ot(),t=g.useQueryClient(),s=rt();return g.useMutation({mutationFn:async t=>{if(!a)throw new Error("Unidade não selecionada");const{data:r}=await s.schema(e).from("leaders").select("id_user").eq("id",t.id).eq("alias",a).single();if(!r)throw new Error("Líder não encontrado");if(r.id_user===t.id_leader)throw new Error("Usuário não pode ser seu próprio líder");t.id_leader&&await Vi(s,a,e,r.id_user,t.id_leader,t.id);const{data:n,error:i}=await s.schema(e).from("leaders").update({id_leader:t.id_leader}).eq("id",t.id).eq("alias",a).select().single();if(i)throw i;return n},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",a]}),o.toast.success("Líder atualizado com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao atualizar líder")}})}function $i(){const{alias:e}=Ot(),a=g.useQueryClient(),t=rt();return g.useMutation({mutationFn:async a=>{if(!e)throw new Error("Unidade não selecionada");const{error:s}=await t.schema("common").from("leaders").update({is_removed:!0}).eq("id",a).eq("alias",e);if(s)throw s},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",e]}),o.toast.success("Líder removido com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao remover líder")}})}function qi(){const e="common",{alias:a}=Ot(),t=g.useQueryClient(),s=rt();return g.useMutation({mutationFn:async({leaderUserId:t,selectedUsers:r})=>{if(!a)throw new Error("Unidade não selecionada");const n=r.map(e=>e.id_user),i=await Promise.all([s.schema(e).from("leaders").select("id, id_user, id_leader").eq("alias",a).eq("is_removed",!1).eq("id_leader",t),s.schema(e).from("leaders").select("id, id_user, id_leader").eq("alias",a).eq("is_removed",!1).in("id_user",n.length?n:["__none__"])]),[{data:o,error:l},{data:d,error:c}]=i;if(l)throw l;if(c)throw c;const u=o||[],m=d||[],p=new Set(n),h=u.filter(e=>!p.has(e.id_user)),x=m.filter(e=>e.id_leader!==t),f=new Set(m.map(e=>e.id_user)),g=r.filter(e=>!f.has(e.id_user));for(const N of x)await Vi(s,a,e,N.id_user,t,N.id);for(const N of g){if(N.id_user===t)throw new Error("Usuário não pode ser seu próprio líder");await Vi(s,a,e,N.id_user,t)}const b=[];if(h.length){const t=h.map(e=>e.id);b.push(s.schema(e).from("leaders").update({id_leader:null}).in("id",t).eq("alias",a))}if(x.length){const r=x.map(e=>e.id);b.push(s.schema(e).from("leaders").update({id_leader:t}).in("id",r).eq("alias",a))}if(g.length){const r=g.map(e=>({alias:a,id_user:e.id_user,id_leader:t,is_active:!0,is_removed:!1}));b.push(s.schema(e).from("leaders").insert(r))}const v=(await Promise.all(b)).find(e=>e?.error);if(v?.error)throw v.error;return{unlinked:h.length,updated:x.length,created:g.length}},onSuccess:e=>{t.invalidateQueries({queryKey:["leadership",a]}),o.toast.success(`Subordinados sincronizados (${e.created} adicionados, ${e.updated} atualizados, ${e.unlinked} removidos)`)},onError:e=>{o.toast.error(e.message||"Erro ao sincronizar subordinados")}})}async function Vi(e,a,t,s,r,n){const{data:i,error:o}=await e.schema(t).from("leaders").select("id, id_user, id_leader").eq("alias",a).eq("is_removed",!1);if(o)throw o;const l=n?i.filter(e=>e.id!==n):i,d=new Set;let c=r;for(;c;){if(d.has(c))throw new Error("Esta associação criaria um ciclo na hierarquia");if(c===s)throw new Error("Esta associação criaria um ciclo na hierarquia");d.add(c);const e=l.find(e=>e.id_user===c);c=e?.id_leader||null}}function Bi({leader:a,expandedIds:t,onToggleExpand:s,onEdit:r}){const n=t.has(a.id),i=a.children.length>0,o=32*a.level;return e.jsxs(e.Fragment,{children:[e.jsxs("tr",{className:"border-b hover:bg-muted/50 transition-colors",children:[e.jsx("td",{className:"py-3 px-4",children:e.jsxs("div",{className:"flex items-center gap-2",style:{paddingLeft:`${o}px`},children:[i?e.jsx("button",{onClick:()=>s(a.id),className:"p-1 hover:bg-accent rounded",children:n?e.jsx(l.ChevronDown,{className:"h-4 w-4"}):e.jsx(l.ChevronRight,{className:"h-4 w-4"})}):e.jsx("div",{className:"w-6"}),e.jsx(l.User,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("button",{onClick:()=>{r(a)},className:"font-medium hover:text-primary hover:underline text-left",children:a.name||a.id_user||a.email})]})}),e.jsx("td",{className:"py-3 px-4 text-center",children:e.jsx("span",{className:"text-sm",children:a.subordinatesCount||0})})]}),i&&n&&a.children.map(a=>e.jsx(Bi,{leader:a,expandedIds:t,onToggleExpand:s,onEdit:r},a.id))]})}var Wi=function(e,a){for(var t={};e.length;){var s=e[0],r=s.code,n=s.message,i=s.path.join(".");if(!t[i])if("unionErrors"in s){var o=s.unionErrors[0].errors[0];t[i]={message:o.message,type:o.code}}else t[i]={message:n,type:r};if("unionErrors"in s&&s.unionErrors.forEach(function(a){return a.errors.forEach(function(a){return e.push(a)})}),a){var l=t[i].types,d=l&&l[s.code];t[i]=u.appendErrors(i,a,t,r,d?[].concat(d,s.message):s.message)}e.shift()}return t},Hi=function(e,a,t){return void 0===t&&(t={}),function(s,r,n){try{return Promise.resolve(function(r,i){try{var o=Promise.resolve(e["sync"===t.mode?"parse":"parseAsync"](s,a)).then(function(e){return n.shouldUseNativeValidation&&U.validateFieldsNatively({},n),{errors:{},values:t.raw?s:e}})}catch(l){return i(l)}return o&&o.then?o.then(void 0,i):o}(0,function(e){if(function(e){return Array.isArray(null==e?void 0:e.errors)}(e))return{values:{},errors:U.toNestErrors(Wi(e.errors,!n.shouldUseNativeValidation&&"all"===n.criteriaMode),n)};throw e}))}catch(i){return Promise.reject(i)}}};const Qi=O.z.object({id_leader:O.z.string().nullable(),id_users:O.z.array(O.z.string()).min(1,"Selecione pelo menos um liderado")}),Gi=O.z.object({id_leader:O.z.string().nullable(),id_users:O.z.array(O.z.string())});function Ki({value:t,onChange:s,excludeUserIds:r=[],error:n}){const{data:i=[],isLoading:o}=Os(),[d,c]=a.useState(""),u=a.useRef(null),m=a.useRef(0),p=i.filter(e=>!r.includes(e.userId||"")).filter(e=>{const a=d.toLowerCase(),t=e.userName?.toLowerCase().includes(a);return t}).sort((e,a)=>{const s=t.includes(e.userId),r=t.includes(a.userId);if(s&&!r)return-1;if(!s&&r)return 1;const n=e.userName||e.userEmail||"",i=a.userName||a.userEmail||"";return n.localeCompare(i)});return a.useEffect(()=>{u.current&&m.current>0&&(u.current.scrollTop=m.current)},[p]),o?e.jsxs("div",{className:"flex items-center justify-center p-4",children:[e.jsx(l.Loader2,{className:"h-6 w-6 animate-spin"}),e.jsx("span",{className:"ml-2",children:"Carregando usuários..."})]}):e.jsxs("div",{className:"space-y-2",children:[e.jsx(ge,{placeholder:"Buscar usuário...",value:d,onChange:e=>c(e.target.value)}),e.jsx("div",{ref:u,className:"border rounded-md p-4 h-[300px] overflow-y-auto",children:0===p.length?e.jsx("p",{className:"text-sm text-muted-foreground",children:"Nenhum usuário encontrado"}):e.jsx("div",{className:"space-y-2",children:p.map(a=>e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(aa,{id:a.userId,checked:t.includes(a.userId),onCheckedChange:()=>{return e=a.userId,u.current&&(m.current=u.current.scrollTop),void(t.includes(e)?s(t.filter(a=>a!==e)):s([...t,e]));var e}}),e.jsx(ve,{htmlFor:a.userId,className:"flex-1 cursor-pointer",children:a.userName||a.userEmail})]},a.userId))})}),t.length>0&&e.jsxs("p",{className:"text-sm text-muted-foreground",children:[t.length," usuário(s) selecionado(s)"]}),n&&e.jsx("p",{className:"text-sm text-destructive",children:n})]})}function Xi({leader:t,prefilledLeaderId:s,onSuccess:r}){const{alias:n}=Ot(),i=!!t,o=t?.id.startsWith("virtual-"),d=Oi(),c=zi(),m=Ui(),p=qi(),h=$i(),{data:x=[]}=Li(),{data:f=[]}=Os(),[g,b]=a.useState(""),v=Mi(x).map(e=>e.id_user),N=i?Mi(x).filter(e=>e.id_leader===t.id_user).map(e=>e.id_user):[],j=u.useForm({resolver:Hi(i?Gi:Qi),defaultValues:{id_leader:s||(i?t?.id_leader:null)||null,id_users:i?N:[]}});a.useEffect(()=>{if(t){const e=Mi(x).filter(e=>e.id_leader===t.id_user).map(e=>e.id_user);j.reset({id_leader:t.id_leader||null,id_users:e})}else s?j.reset({id_leader:s,id_users:[]}):j.reset({id_leader:null,id_users:[]})},[n,t?.id,t?.id_user,t?.id_leader,s,x]);const y=d.isPending||c.isPending||m.isPending||p.isPending||h.isPending,w=j.watch("id_leader"),C=j.watch("id_users"),k=i?[t.id_user,...v.filter(e=>e!==t.id_user&&!C.includes(e)&&!N.includes(e))]:[w,...v.filter(e=>!C.includes(e))].filter(Boolean);return e.jsxs("form",{onSubmit:j.handleSubmit(async e=>{try{if(i)if(o){await c.mutateAsync({id_user:t.id_user,id_leader:e.id_leader});const a=f.filter(a=>e.id_users.includes(a.userId)).map(e=>({id_user:e.userId}));await p.mutateAsync({leaderUserId:t.id_user,selectedUsers:a})}else{await m.mutateAsync({id:t.id,id_leader:e.id_leader});const a=f.filter(a=>e.id_users.includes(a.userId)).map(e=>({id_user:e.userId}));await p.mutateAsync({leaderUserId:t.id_user,selectedUsers:a})}else{const a=f.filter(a=>e.id_users.includes(a.userId)).map(e=>({id_user:e.userId}));await d.mutateAsync({id_leader:e.id_leader,users:a})}r?.()}catch(a){}}),className:"space-y-4",children:[i&&e.jsxs("div",{children:[e.jsx(ve,{children:"Líder"}),e.jsx(ge,{value:f.find(e=>e.userId===t.id_user)?.userName||t.name||t.id_user,disabled:!0,className:"bg-muted"})]}),e.jsxs("div",{children:[e.jsx(ve,{children:"Líder Superior"}),e.jsxs(We,{value:w||"none",onValueChange:e=>j.setValue("id_leader","none"===e?null:e),children:[e.jsx(Ge,{children:e.jsx(Qe,{placeholder:"Nenhum (líder raiz)"})}),e.jsxs(Je,{children:[e.jsx("div",{className:"sticky top-0 z-10 bg-background p-2 border-b",children:e.jsx(ge,{placeholder:"Buscar líder...",value:g,onChange:e=>b(e.target.value),onKeyDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:"h-8"})}),e.jsxs(Ds,{className:"h-[200px]",children:[e.jsx(Ze,{value:"none",children:"Nenhum (líder raiz)"}),f.filter(e=>{const a=i?e.userId!==t.id_user:!C.includes(e.userId),s=!g||e.userName?.toLowerCase().includes(g.toLowerCase());return a&&s}).sort((e,a)=>{const t=e.userName||e.userEmail||"",s=a.userName||a.userEmail||"";return t.localeCompare(s)}).map(a=>e.jsx(Ze,{value:a.userId,children:a.userName},a.userId))]})]})]},`superior-select-${n}`),j.formState.errors.id_leader&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:j.formState.errors.id_leader.message})]}),e.jsxs("div",{children:[e.jsx(ve,{children:"Liderados *"}),e.jsx(Ki,{value:C,onChange:e=>j.setValue("id_users",e),excludeUserIds:k,error:j.formState.errors.id_users?.message},`users-multiselect-${n}`)]}),e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsx(xe,{type:"submit",disabled:y||!i&&0===C.length,children:y&&!h.isPending?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),i?"Atualizando...":"Salvando..."]}):i?C.length>0?`Atualizar (${C.length})`:"Atualizar":`Adicionar (${C.length})`}),i&&!w&&0===C.length&&e.jsx(xe,{type:"button",variant:"destructive",disabled:y,onClick:async()=>{if(t&&window.confirm("Tem certeza que deseja remover esta liderança?"))try{await h.mutateAsync(t.id),r?.()}catch(e){}},className:"ml-auto",children:h.isPending?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Removendo..."]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Trash2,{className:"mr-2 h-4 w-4"}),"Remover"]})})]})]})}function Ji({open:a,onOpenChange:t,leader:s,prefilledLeaderId:r,title:n}){return e.jsx(Se,{open:a,onOpenChange:t,children:e.jsxs(Pe,{className:"sm:max-w-[500px]",children:[e.jsx(_e,{children:e.jsx(De,{children:n})}),e.jsx(Xi,{leader:s,prefilledLeaderId:r,onSuccess:()=>t(!1)})]})})}const Yi="leadership-expanded-nodes",Zi=(e,a)=>{try{localStorage.setItem(`${Yi}-${e}`,JSON.stringify(Array.from(a)))}catch(t){}};function eo(e){const[t,s]=a.useState(!1),[r,n]=a.useState(0),{uploadFunction:i,deleteFunction:o,defaultOptions:l,onSuccess:d,onError:c}=e||{};return{upload:async(e,a)=>{if(!i){const e=new Error("uploadFunction não fornecida");throw ha({title:"Erro de configuração",description:"Função de upload não configurada. Verifique a documentação.",variant:"destructive"}),e}s(!0),n(0);try{const t={...l,...a};if(t.maxSize&&e.size>t.maxSize)throw new Error(`Arquivo muito grande. Tamanho máximo: ${Math.round(t.maxSize/1024/1024)}MB`);if(t.allowedTypes){if(!t.allowedTypes.some(a=>a.endsWith("/*")?e.type.startsWith(a.replace("/*","")):e.type===a))throw new Error(`Tipo de arquivo não permitido. Tipos aceitos: ${t.allowedTypes.join(", ")}`)}const s=await i(e,t);return n(100),ha({title:"Sucesso",description:"Arquivo enviado com sucesso"}),d?.(s),s}catch(t){const e=t instanceof Error?t:new Error("Erro ao fazer upload");throw ha({title:"Erro",description:e.message,variant:"destructive"}),c?.(e),e}finally{s(!1)}},deleteMedia:async(e,a)=>{if(!o){const e=new Error("deleteFunction não fornecida");throw ha({title:"Erro de configuração",description:"Função de delete não configurada.",variant:"destructive"}),e}try{await o(e,a),ha({title:"Sucesso",description:"Arquivo removido com sucesso"})}catch(t){throw ha({title:"Erro",description:"Erro ao remover o arquivo",variant:"destructive"}),t}},uploading:t,progress:r}}function ao(e){const a=[/(?:youtube\.com\/watch\?v=|youtu\.be\/|youtube\.com\/embed\/)([a-zA-Z0-9_-]{11})/,/^([a-zA-Z0-9_-]{11})$/];for(const t of a){const a=e.match(t);if(a)return a[1]}return null}function to(e,a){const t=ao(e);if(!t)return e;return`https://www.youtube.com/embed/${t}${a?"?autoplay=1&mute=1":""}`}function so(e){const a=e.match(/vimeo\.com\/(?:video\/)?(\d+)/);return a?a[1]:null}function ro(e,a){const t=so(e);if(!t)return e;return`https://player.vimeo.com/video/${t}${a?"?autoplay=1&muted=1":""}`}function no(e){if(!e)return;const a=e.match(/src="([^"]+)"/);return a?a[1]:void 0}function io(e){return e?/youtube|youtu\.be/.test(e)?"youtube":/vimeo/.test(e)?"vimeo":"file":"file"}function oo(e,a){return e/a}Object.defineProperty(exports,"sonnerToast",{enumerable:!0,get:function(){return o.toast}}),exports.AUTH_CONFIG=xt,exports.Accordion=lr,exports.AccordionContent=ur,exports.AccordionItem=dr,exports.AccordionTrigger=cr,exports.ActionButton=fe,exports.ActionMenu=ei,exports.ActionMenuItems=Ss,exports.Alert=tr,exports.AlertDescription=rr,exports.AlertDialog=$t,exports.AlertDialogAction=Xt,exports.AlertDialogCancel=Jt,exports.AlertDialogContent=Wt,exports.AlertDialogDescription=Kt,exports.AlertDialogFooter=Qt,exports.AlertDialogHeader=Ht,exports.AlertDialogOverlay=Bt,exports.AlertDialogPortal=Vt,exports.AlertDialogTitle=Gt,exports.AlertDialogTrigger=qt,exports.AlertTitle=sr,exports.AppHeader=li,exports.AppLayout=yi,exports.AppSidebar=ji,exports.AspectRatio=mr,exports.AuthErrorInterceptor=dt,exports.AuthProvider=({children:t})=>{const[s,r]=a.useState({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null});let n=null;try{n=g.useQueryClient()}catch{}const[i,o]=a.useState(!1),[l,d]=a.useState(0),c=a.useCallback(e=>{r(a=>({...a,...e}))},[]),u=a.useCallback(e=>{r(a=>({...a,isLoading:e}))},[]),m=a.useCallback(()=>{r({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null})},[]),p=a.useCallback(async e=>{try{u(!0);const t=Ga.getAccessToken();if(!t)return;const r=await nt.generateToken(t,e.alias,void 0,!0);if(!r)return;Ga.setSupabaseToken(r),Ga.setSelectedAlias(e.alias);const i=Ga.extractTokenData(),o=i?.alias||e.alias,l=i?.companyId||Ga.getCompanyId(e.alias),d={id:l||e.id,name:e.name,alias:o};let m=null,p=null;if(s.user?.id&&o&&l)try{const e=(await ht.fetchActiveUsersMap(o,l)).get(s.user.id);if(e){const a=Ft(e);m=a.placeId,p=a.placeName}}catch(a){}c({alias:o,selectedUnit:d,placeId:m,placeName:p,activePlaceId:m,activePlaceName:p}),n&&(await n.clear(),await new Promise(e=>setTimeout(e,100)))}catch(a){}finally{u(!1)}},[c,n,u,s.user]),h=a.useCallback(async()=>await Lt.processCallback(),[]),x=a.useCallback(async()=>{Lt.logout(),m(),n&&await n.clear()},[m,n]),f=a.useCallback(e=>{o(e)},[]),b=a.useCallback(()=>{d(e=>e+1)},[]),v=a.useCallback(()=>{d(e=>e+1)},[]);a.useEffect(()=>{if(!s.isAuthenticated)return;let e=!0;const a=setInterval(()=>{e&&(Ga.areAllTokensValid()||e&&x())},6e5);return()=>{e=!1,clearInterval(a)}},[s.isAuthenticated,x]),a.useEffect(()=>{let e=!0;return(async()=>{try{if(await new Promise(e=>setTimeout(e,100)),!e)return;const a=await Lt.initialize();if(!e)return;a&&a.isAuthenticated?c({user:a.user,companies:a.companies,alias:a.alias,isAuthenticated:!0,isLoading:!1,selectedUnit:a.selectedUnit,userId:a.userId,userAlias:a.userAlias,placeId:a.placeId,placeName:a.placeName,activePlaceId:a.activePlaceId,activePlaceName:a.activePlaceName}):e&&u(!1)}catch(a){e&&(dt.handleError(a),u(!1))}})(),()=>{e=!1}},[c,u,x]);const N=a.useMemo(()=>({...s,logout:x,processCallback:h,switchUnit:p,availableUnits:s.companies,isSearchVisible:i,setSearchVisible:f,clearSearch:b,refreshData:v}),[s.user,s.companies,s.alias,s.isAuthenticated,s.isLoading,s.selectedUnit,s.userId,s.userAlias,s.placeId,s.placeName,s.activePlaceId,s.activePlaceName,x,h,p,i,f,b,v]);return e.jsx(zt.Provider,{value:N,children:t})},exports.AuthService=Lt,exports.Avatar=pr,exports.AvatarFallback=xr,exports.AvatarImage=hr,exports.Badge=ra,exports.BaseForm=$s,exports.Breadcrumb=fr,exports.BreadcrumbEllipsis=yr,exports.BreadcrumbItem=br,exports.BreadcrumbLink=vr,exports.BreadcrumbList=gr,exports.BreadcrumbPage=Nr,exports.BreadcrumbSeparator=jr,exports.BulkActionBar=Bs,exports.Button=xe,exports.CRUD_CONFIG=ft,exports.Calendar=Rr,exports.CallbackPage=()=>{const{processCallback:t}=Ot(),[s,r]=a.useState(null),[n,i]=a.useState(!1);a.useEffect(()=>{(async()=>{try{if(await t()){window.history.replaceState({},document.title,"/");const e=localStorage.getItem("auth_return_url");e?(localStorage.removeItem("auth_return_url"),window.location.href=e):window.location.href="/"}else r("Falha na autenticação. Tente novamente.")}catch(e){r(e?.message||"Erro durante a autenticação. Tente novamente.")}})()},[t]);const o=async()=>{i(!0),r(null);try{await t()||r("Falha na autenticação. Tente novamente.")}catch(e){r(e?.message||"Erro ao tentar novamente.")}finally{i(!1)}},d=()=>{window.location.href="/"};return s?e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(Ne,{className:"w-full max-w-md",children:[e.jsx(je,{className:"text-center",children:e.jsxs(ye,{className:"text-xl font-semibold text-destructive flex items-center justify-center gap-2",children:[e.jsx(l.AlertCircle,{className:"h-5 w-5"}),"Erro na Autenticação"]})}),e.jsxs(Ce,{className:"space-y-4",children:[e.jsx(tr,{variant:"destructive",children:e.jsx(rr,{children:s})}),e.jsx("div",{className:"text-sm text-muted-foreground",children:e.jsx("p",{children:"Se o problema persistir, verifique se a URL de callback está configurada corretamente no provedor OAuth."})}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(xe,{onClick:o,disabled:n,className:"flex-1",children:n?e.jsxs(e.Fragment,{children:[e.jsx(ia,{size:"sm",className:"mr-2"}),"Tentando..."]}):e.jsxs(e.Fragment,{children:[e.jsx(l.RefreshCw,{className:"h-4 w-4 mr-2"}),"Tentar Novamente"]})}),e.jsx(xe,{onClick:d,variant:"outline",className:"flex-1",children:"Voltar ao Início"})]})]})]})}):e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(Ne,{className:"w-full max-w-md",children:[e.jsx(je,{className:"text-center",children:e.jsx(ye,{className:"text-xl font-semibold",children:"Processando Autenticação"})}),e.jsxs(Ce,{className:"text-center",children:[e.jsx("div",{className:"flex justify-center mb-4",children:e.jsx(ia,{size:"lg"})}),e.jsx("p",{className:"text-muted-foreground",children:"Processando tokens e redirecionando..."})]})]})})},exports.Card=Ne,exports.CardContent=Ce,exports.CardDescription=we,exports.CardFooter=ke,exports.CardHeader=je,exports.CardSkeleton=ls,exports.CardTitle=ye,exports.Cards=function({data:a,renderCard:t,isLoading:s=!1,emptyMessage:r="Nenhum item encontrado",columns:n,gap:i="md",className:o}){return s?e.jsx(Ur,{cols:n?String(n):"auto-fit",gap:i,className:o,children:[...Array(6)].map((a,t)=>e.jsx(Fa,{className:"h-48 w-full"},t))}):0===a.length?e.jsx("div",{className:"flex items-center justify-center p-8",children:e.jsx("div",{className:"text-center text-muted-foreground",children:e.jsx("p",{children:r})})}):e.jsx(Ur,{cols:n?String(n):"auto-fit",gap:i,className:o,children:a.map(t)})},exports.ChatbotPage=function(){const[t,s]=a.useState(!1),[r,n]=a.useState(""),{messages:i,isLoading:o,error:d,sendMessage:c}=Ai(),u=a.useRef(null),m=a.useRef(null);a.useEffect(()=>{if(u.current){const e=u.current.querySelector("[data-radix-scroll-area-viewport]");e&&(e.scrollTop=e.scrollHeight)}},[i]),a.useEffect(()=>{t&&m.current&&m.current.focus()},[t]),a.useEffect(()=>{const e=e=>{"Escape"===e.key&&t&&s(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[t]);const p=()=>{r.trim()&&!o&&(c(r),n(""))};return e.jsxs(e.Fragment,{children:[e.jsx(xe,{onClick:()=>s(!t),className:"fixed bottom-6 right-6 h-14 w-14 rounded-full shadow-lg z-50",size:"icon",children:t?e.jsx(l.X,{className:"h-6 w-6"}):e.jsx(l.MessageCircle,{className:"h-6 w-6"})}),t&&e.jsxs(Ne,{className:"fixed bottom-24 right-6 w-96 h-[600px] shadow-xl z-50 flex flex-col",children:[e.jsxs(je,{className:"flex flex-row items-center justify-between space-y-0 pb-4",children:[e.jsx(ye,{className:"text-lg font-semibold",children:"Chat Assistant"}),e.jsx(xe,{variant:"ghost",size:"icon",onClick:()=>s(!1),className:"h-8 w-8",children:e.jsx(l.X,{className:"h-4 w-4"})})]}),e.jsxs(Ce,{className:"flex-1 flex flex-col p-0 overflow-hidden",children:[e.jsx(Ds,{ref:u,className:"flex-1 px-4",children:e.jsxs("div",{className:"space-y-4 py-4",children:[i.map(a=>e.jsx("div",{className:"flex "+("user"===a.role?"justify-end":"justify-start"),children:e.jsx("div",{className:"max-w-[80%] rounded-lg px-4 py-2 "+("user"===a.role?"bg-primary text-primary-foreground":"bg-muted"),children:"assistant"===a.role?e.jsx(Ti,{content:a.content}):e.jsx("p",{className:"text-sm whitespace-pre-wrap",children:a.content})})},a.id)),o&&e.jsx("div",{className:"flex justify-start",children:e.jsx("div",{className:"bg-muted rounded-lg px-4 py-2",children:e.jsxs("div",{className:"flex space-x-2",children:[e.jsx("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce"}),e.jsx("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.2s]"}),e.jsx("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.4s]"})]})})}),d&&e.jsx("div",{className:"text-center text-sm text-destructive py-2",children:d})]})}),e.jsx("div",{className:"border-t p-4",children:e.jsxs("div",{className:"flex space-x-2",children:[e.jsx(ge,{ref:m,value:r,onChange:e=>n(e.target.value),onKeyPress:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),p())},placeholder:"Digite sua mensagem...",disabled:o,className:"flex-1"}),e.jsx(xe,{onClick:p,disabled:o||!r.trim(),size:"icon",children:e.jsx(l.Send,{className:"h-4 w-4"})})]})})]})]})]})},exports.Checkbox=aa,exports.Collapsible=Dr,exports.CollapsibleContent=Mr,exports.CollapsibleTrigger=Fr,exports.ColorPicker=Rs,exports.Command=Ea,exports.CommandDialog=({children:a,...t})=>e.jsx("div",{...t,children:e.jsx(Ea,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:a})}),exports.CommandEmpty=Ia,exports.CommandGroup=Pa,exports.CommandInput=Aa,exports.CommandItem=Ra,exports.CommandList=Ta,exports.CommandSeparator=_a,exports.CommandShortcut=Da,exports.CrudCards=function({manager:a,config:t,onEdit:s,onDelete:r}){return a.isLoading?e.jsx(Ur,{children:Array.from({length:3}).map((a,t)=>e.jsxs(Ne,{children:[e.jsxs(je,{children:[e.jsx(Fa,{className:"h-4 w-3/4"}),e.jsx(Fa,{className:"h-3 w-1/2"})]}),e.jsx(Ce,{children:e.jsxs("div",{className:"space-y-2",children:[e.jsx(Fa,{className:"h-3 w-full"}),e.jsx(Fa,{className:"h-3 w-2/3"})]})})]},t))}):e.jsx(Lr.Root,{children:a.entities.map(a=>e.jsxs(Lr.Item,{onClick:()=>s(a),children:[e.jsx(je,{className:"pb-3",children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx(ye,{className:"text-base leading-6 truncate",children:a.title||a.name||"Sem título"}),e.jsx(we,{className:"text-sm",children:i.format(new Date(a.created_at),"dd/MM/yyyy HH:mm",{locale:_r})})]}),e.jsxs("div",{className:"flex items-center gap-2 ml-2",children:[a.link&&e.jsx(xe,{variant:"external-link",size:"icon-xs",onClick:e=>{e.stopPropagation(),(e=>{try{const a=window.open(e,"_blank");a&&!a.closed&&void 0!==a.closed||(navigator.clipboard.writeText(e),o.toast.info("Link copiado para a área de transferência"))}catch(a){window.location.href=e}})(a.link)},title:"Abrir link externo",children:e.jsx(l.ExternalLink,{className:"h-4 w-4"})}),e.jsx("div",{onClick:e=>e.stopPropagation(),children:e.jsx(Es,{onEdit:()=>s(a),onDelete:r?()=>r(a):void 0,canDelete:!!r})})]})]})}),e.jsx(Ce,{className:"pt-0",children:e.jsx("div",{className:"space-y-2",children:t.cardFields?.map(t=>{const s=a[t.key];return s?e.jsx(Lr.Field,{label:t.label,value:t.render?t.render(s,a):String(s)},String(t.key)):null})})})]},a.id))})},exports.CrudPageInternal=Xs,exports.CrudPagination=Vs,exports.CrudPrimitiveFilterBar=function({searchValue:a="",onSearchChange:t,customFilters:s=[],onClearFilters:r,showClearButton:n=!0,layout:i="horizontal"}){const o=a||s.length>0;return e.jsxs("div",{className:`flex ${"vertical"===i?"flex-col":"flex-row items-center"} gap-2 w-full`,children:[t&&e.jsxs("div",{className:"relative flex-1 min-w-[200px]",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(ge,{type:"text",placeholder:"Buscar...",value:a,onChange:e=>t(e.target.value),className:"pl-9 h-9"})]}),s.map((a,t)=>e.jsx("div",{className:"vertical"===i?"w-full":"",children:a},t)),n&&o&&r&&e.jsxs(xe,{variant:"ghost",size:"sm",onClick:r,className:"h-9 px-3 whitespace-nowrap",children:[e.jsx(l.X,{size:14,className:"mr-1"}),"Limpar"]})]})},exports.CrudPrimitivePagination=qs,exports.CrudPrimitiveTable=function({data:t,columns:s,sortField:r,sortDirection:n,onSort:i,onRowClick:o,renderActions:d,isLoading:c=!1,emptyMessage:u="Nenhum item encontrado",className:m,enableSelection:p=!1,selectedIds:h=[],onSelectItem:x,onSelectAll:f,isAllSelected:g=!1}){const b=a.useMemo(()=>{const e=s.reduce((e,a)=>a.width?e:e+(a.weight??1),0);return s.map(a=>{if(a.width)return`${a.width}px`;if(a.minWidth&&!a.weight)return`${a.minWidth}px`;const t=(a.weight??1)/e*100;return a.minWidth?`minmax(${a.minWidth}px, ${t}%)`:`${t}%`})},[s]);return c?e.jsx("div",{className:"flex-1 overflow-auto",children:e.jsx("div",{className:"p-4 space-y-3",children:[...Array(5)].map((a,t)=>e.jsx(Fa,{className:"h-12 w-full"},t))})}):0===t.length?e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsx("div",{className:"text-center text-muted-foreground",children:e.jsx("p",{children:u})})}):e.jsx("div",{className:"flex-1 overflow-auto",children:e.jsxs(Zt,{className:m,children:[e.jsx(es,{className:"sticky top-0 bg-background z-10",children:e.jsxs(ss,{children:[p&&e.jsx(rs,{className:"w-[40px]",children:e.jsx(aa,{checked:g,onCheckedChange:f,"aria-label":"Selecionar todos"})}),s.map((a,t)=>{return e.jsx(rs,{className:a.className,style:{width:b[t]},children:a.sortable&&i?e.jsxs("button",{onClick:()=>i(String(a.key)),className:"flex items-center hover:text-foreground transition-colors font-medium",children:[a.header,(s=String(a.key),r!==s?e.jsx(l.ArrowUpDown,{size:14,className:"ml-1 opacity-50"}):"asc"===n?e.jsx(l.ArrowUp,{size:14,className:"ml-1"}):e.jsx(l.ArrowDown,{size:14,className:"ml-1"}))]}):e.jsx("span",{className:"font-medium",children:a.header})},String(a.key));var s}),d&&e.jsx(rs,{className:"w-[80px] text-right",children:"Ações"})]})}),e.jsx(as,{children:t.map(a=>e.jsxs(ss,{onClick:()=>o?.(a),className:o?"cursor-pointer":"",children:[p&&e.jsx(ns,{children:e.jsx(aa,{checked:h.includes(a.id),onCheckedChange:()=>x?.(a.id),onClick:e=>e.stopPropagation(),"aria-label":`Selecionar item ${a.id}`})}),s.map(t=>e.jsx(ns,{className:t.className,children:t.render?t.render(a):String(a[t.key]??"-")},String(t.key))),d&&e.jsx(ns,{className:"text-right",onClick:e=>e.stopPropagation(),children:d(a)})]},a.id))})]})})},exports.CrudTable=Is,exports.DataList=Lr,exports.DeleteConfirmationDialog=Yt,exports.Dialog=Se,exports.DialogClose=Te,exports.DialogContent=Pe,exports.DialogDescription=Fe,exports.DialogFooter=Re,exports.DialogHeader=_e,exports.DialogOverlay=Ie,exports.DialogPortal=Ae,exports.DialogTitle=De,exports.DialogTrigger=Ee,exports.DropdownMenu=us,exports.DropdownMenuCheckboxItem=js,exports.DropdownMenuContent=vs,exports.DropdownMenuGroup=ps,exports.DropdownMenuItem=Ns,exports.DropdownMenuLabel=ws,exports.DropdownMenuPortal=hs,exports.DropdownMenuRadioGroup=fs,exports.DropdownMenuRadioItem=ys,exports.DropdownMenuSeparator=Cs,exports.DropdownMenuShortcut=ks,exports.DropdownMenuSub=xs,exports.DropdownMenuSubContent=bs,exports.DropdownMenuSubTrigger=gs,exports.DropdownMenuTrigger=ms,exports.EmailService=Si,exports.EmptyState=cs,exports.EntitySelect=zs,exports.ErrorBoundary=ki,exports.FilterBar=Ks,exports.Form=Me,exports.FormControl=qe,exports.FormDescription=Ve,exports.FormField=({...a})=>e.jsx(Le.Provider,{value:{name:a.name},children:e.jsx(u.Controller,{...a})}),exports.FormItem=Ue,exports.FormLabel=$e,exports.FormMessage=Be,exports.FormSkeleton=function({fields:a=4}){return e.jsxs("div",{className:"space-y-4",children:[Array.from({length:a}).map((a,t)=>e.jsxs("div",{className:"space-y-2",children:[e.jsx(Fa,{className:"h-4 w-24"}),e.jsx(Fa,{className:"h-10 w-full"})]},t)),e.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[e.jsx(Fa,{className:"h-10 w-20"}),e.jsx(Fa,{className:"h-10 w-20"})]})]})},exports.Grid=Ur,exports.HeaderSkeleton=function(){return e.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx(Fa,{className:"h-8 w-8 rounded-full"}),e.jsx(Fa,{className:"h-6 w-32"})]}),e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(Fa,{className:"h-8 w-8"}),e.jsx(Fa,{className:"h-8 w-24"})]})]})},exports.IconPicker=Ls,exports.ImageEditor=function({value:t,onChange:s,onSubmit:r,onCancel:n,uploadFunction:i,deleteFunction:o,uploadOptions:d}){const[c,u]=a.useState(t||{alignment:"center",allowDownload:!1}),m=a.useRef(null),{upload:p,uploading:h}=eo({uploadFunction:i,deleteFunction:o,defaultOptions:{...d,allowedTypes:["image/*"],maxSize:5242880}}),x=(e,a)=>{const t={...c,[e]:a};u(t),s(t)};return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"URL da imagem"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(ge,{type:"url",placeholder:"https://exemplo.com/imagem.jpg",value:c.imageUrl||"",onChange:e=>x("imageUrl",e.target.value),className:"flex-1"}),i&&e.jsxs(e.Fragment,{children:[e.jsx("input",{ref:m,type:"file",accept:"image/*",onChange:async e=>{const a=e.target.files?.[0];if(a)try{const e=await p(a),t={...c,imageUrl:e.url,imageFile:e.name,imagePath:e.path,imageSize:e.size};u(t),s(t)}catch(t){}finally{m.current&&(m.current.value="")}},className:"hidden"}),e.jsx(xe,{type:"button",variant:"outline",onClick:()=>m.current?.click(),disabled:h,children:h?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Upload,{className:"mr-2 h-4 w-4"}),"Upload"]})})]})]}),c.imageFile&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Arquivo: ",c.imageFile," (",Math.round((c.imageSize||0)/1024)," KB)"]})]}),c.imageUrl&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Preview"}),e.jsx("div",{className:"border rounded-lg p-4 bg-muted/30",children:e.jsx("div",{className:"flex "+("left"===c.alignment?"justify-start":"right"===c.alignment?"justify-end":"justify-center"),children:e.jsx("img",{src:c.imageUrl,alt:c.alt||"Preview",style:{width:c.width?`${c.width}px`:"auto",height:c.height?`${c.height}px`:"auto",maxWidth:"100%"},className:"rounded-lg shadow-md"})})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{htmlFor:"caption",children:"Legenda (opcional)"}),e.jsx(ta,{id:"caption",placeholder:"Descrição da imagem",value:c.caption||"",onChange:e=>x("caption",e.target.value),rows:2})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{htmlFor:"alt",children:"Texto alternativo (acessibilidade)"}),e.jsx(ge,{id:"alt",placeholder:"Descrição para leitores de tela",value:c.alt||"",onChange:e=>x("alt",e.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Alinhamento"}),e.jsxs(We,{value:c.alignment||"center",onValueChange:e=>x("alignment",e),children:[e.jsx(Ge,{children:e.jsx(Qe,{})}),e.jsxs(Je,{children:[e.jsx(Ze,{value:"left",children:"Esquerda"}),e.jsx(Ze,{value:"center",children:"Centro"}),e.jsx(Ze,{value:"right",children:"Direita"})]})]})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{htmlFor:"width",children:"Largura (px, opcional)"}),e.jsx(ge,{id:"width",type:"number",placeholder:"Auto",value:c.width||"",onChange:e=>x("width",e.target.value?Number(e.target.value):void 0)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{htmlFor:"height",children:"Altura (px, opcional)"}),e.jsx(ge,{id:"height",type:"number",placeholder:"Auto",value:c.height||"",onChange:e=>x("height",e.target.value?Number(e.target.value):void 0)})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{id:"allowDownload",type:"checkbox",checked:c.allowDownload||!1,onChange:e=>x("allowDownload",e.target.checked),className:"h-4 w-4"}),e.jsx(ve,{htmlFor:"allowDownload",className:"cursor-pointer",children:"Permitir download da imagem"})]}),e.jsxs("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e.jsx(xe,{variant:"outline",onClick:n,children:"Cancelar"}),e.jsx(xe,{onClick:()=>{c.imageUrl?r(c):ha({title:"Erro",description:"Adicione uma URL ou faça upload de uma imagem",variant:"destructive"})},disabled:!c.imageUrl,children:"Salvar"})]})]})},exports.ImageRenderer=function({content:a,className:t="",style:s}){if(!a.imageUrl)return null;const r={left:"justify-start",center:"justify-center",right:"justify-end"}[a.alignment||"center"];return e.jsx("div",{className:`flex ${r} my-4 ${t}`,style:s,children:e.jsxs("div",{className:"space-y-2 max-w-full",children:[e.jsx("img",{src:a.imageUrl,alt:a.alt||"",style:{width:a.width?`${a.width}px`:"auto",height:a.height?`${a.height}px`:"auto",maxWidth:"100%"},className:"rounded-lg shadow-md"}),a.caption&&e.jsx("p",{className:"text-sm text-muted-foreground text-center italic",children:a.caption}),a.allowDownload&&a.imageUrl&&e.jsxs("a",{href:a.imageUrl,download:!0,className:"flex items-center gap-2 text-sm text-primary hover:underline justify-center",children:[e.jsx(l.Download,{className:"h-4 w-4"}),"Baixar imagem"]})]})})},exports.Input=ge,exports.LOGO_CONFIG=jt,exports.Label=ve,exports.LeaderRow=Bi,exports.LeadershipDialog=Ji,exports.LeadershipForm=Xi,exports.LeadershipPage=function(){const{alias:t}=Ot(),{data:s,isLoading:r,error:n,refetch:i}=Li(),{data:o=[]}=Os(),[d,c]=a.useState(()=>t?(e=>{try{const a=localStorage.getItem(`${Yi}-${e}`);if(a)return new Set(JSON.parse(a))}catch(n){}return new Set})(t):new Set),[u,m]=a.useState(!1),[p,h]=a.useState(),[x,f]=a.useState(null),g=o.length-(s?new Set(Mi(s).map(e=>e.id_user)).size:0);a.useEffect(()=>{if(s&&s.length>0&&t){if(!localStorage.getItem(`${Yi}-${t}`)){const e=s.map(e=>e.id),a=new Set(e);c(a),Zi(t,a)}}},[s,t]);const b=e=>{c(a=>{const s=new Set(a);return s.has(e)?s.delete(e):s.add(e),t&&Zi(t,s),s})},v=e=>{h(e),f(null),m(!0)};return r?e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsxs("div",{className:"text-center",children:[e.jsx(l.RefreshCw,{className:"h-8 w-8 animate-spin mx-auto mb-4 text-muted-foreground"}),e.jsx("p",{className:"text-muted-foreground",children:"Carregando hierarquia de liderança..."})]})}):n?e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsxs("div",{className:"text-center",children:[e.jsx("p",{className:"text-destructive mb-4",children:"Erro ao carregar hierarquia de liderança"}),e.jsx(xe,{onClick:()=>i(),children:"Tentar novamente"})]})}):e.jsxs("div",{className:"flex flex-col h-full",children:[e.jsx("div",{className:"flex items-center justify-between p-4 border-b",children:e.jsxs("div",{className:"flex gap-2 items-center",children:[e.jsxs(xe,{size:"sm",onClick:()=>{h(void 0),f(null),m(!0)},children:[e.jsx(l.Plus,{className:"h-4 w-4 mr-2"}),"Definir Líder"]}),e.jsxs(xe,{variant:"outline",size:"sm",onClick:()=>{if(!s)return;const e=Mi(s).filter(e=>e.children.length>0).map(e=>e.id),a=new Set(e);c(a),t&&Zi(t,a)},disabled:!s||0===s.length,children:[e.jsx(l.ChevronDown,{className:"h-4 w-4 mr-2"}),"Expandir todos"]}),e.jsxs(xe,{variant:"outline",size:"sm",onClick:()=>{const e=new Set;c(e),t&&Zi(t,e)},disabled:!s||0===s.length,children:[e.jsx(l.ChevronRight,{className:"h-4 w-4 mr-2"}),"Recolher todos"]}),e.jsx("div",{className:"flex items-center gap-2 ml-4",children:e.jsxs("div",{className:"flex items-center gap-2 px-3 py-1.5 bg-muted rounded-md",children:[e.jsx(l.Users,{className:"h-4 w-4 text-muted-foreground"}),e.jsxs("span",{className:"text-sm font-medium",children:[g," usuário",1!==g?"s":""," não associado",1!==g?"s":""]})]})})]})}),s&&0!==s.length?e.jsx(Ds,{className:"flex-1",children:e.jsx("div",{children:e.jsxs("table",{className:"w-full",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b bg-muted/50",children:[e.jsx("th",{className:"py-3 px-4 text-left font-semibold",children:"Nome"}),e.jsx("th",{className:"py-3 px-4 text-center font-semibold",children:"Liderados"})]})}),e.jsx("tbody",{children:s.map(a=>e.jsx(Bi,{leader:a,expandedIds:d,onToggleExpand:b,onEdit:v},a.id))})]})})}):e.jsx("div",{className:"flex items-center justify-center flex-1",children:e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"Nenhuma hierarquia de liderança encontrada"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:'Clique em "Definir Líder" para começar'})]})}),e.jsx(Ji,{open:u,onOpenChange:()=>{m(!1),h(void 0),f(null)},leader:p,prefilledLeaderId:x,title:p?"Editar Líder":x?"Adicionar Liderado":"Adicionar Líder Raiz"},`leadership-dialog-${t}`)]})},exports.LoadingState=function({isLoading:a,children:t,className:s,type:r="spinner",size:n="md"}){return a?"overlay"===r?e.jsxs("div",{className:me("relative",s),children:[t,e.jsx("div",{className:"absolute inset-0 bg-background/50 backdrop-blur-sm flex items-center justify-center z-10",children:e.jsx(ia,{size:n})})]}):"skeleton"===r?e.jsx("div",{className:me("animate-pulse",s),children:e.jsx("div",{className:"bg-muted rounded-md h-full w-full"})}):e.jsx("div",{className:me("flex items-center justify-center py-8",s),children:e.jsx(ia,{size:n})}):e.jsx(e.Fragment,{children:t})},exports.LoginPage=()=>e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(Ne,{className:"w-full max-w-md",children:[e.jsx(je,{className:"text-center",children:e.jsx(ye,{className:"text-2xl font-bold",children:"Acesso ao Sistema"})}),e.jsxs(Ce,{className:"text-center space-y-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"Faça login para acessar o sistema"}),e.jsx(xe,{onClick:async()=>{bt()?await Lt.loginDev():Lt.loginProd()},className:"w-full",size:"lg",children:bt()?"Login Desenvolvimento":"Entrar com Qualiex"})]})]})}),exports.MESSAGES=yt,exports.ManageAccessModal=Ii,exports.MarkdownMessage=Ti,exports.MultiSelect=za,exports.NavigationProvider=ri,exports.PageBreadcrumb=function({items:a,maxItems:t=3,className:s}){return a.length>t&&(a[0],a.slice(-(t-1))),a.length,e.jsx(fr,{className:s})},exports.PageMetadataProvider=ir,exports.Pagination=Vr,exports.PaginationContent=Br,exports.PaginationEllipsis=Kr,exports.PaginationItem=Wr,exports.PaginationLink=Hr,exports.PaginationNext=Gr,exports.PaginationPrevious=Qr,exports.PlaceCard=Pi,exports.PlacesList=function({places:a,isLoading:t,manageAccessConfig:s}){return t?e.jsx("div",{className:"flex items-center justify-center py-12",children:e.jsxs("div",{className:"text-center space-y-2",children:[e.jsx("div",{className:"animate-spin h-8 w-8 border-4 border-primary border-t-transparent rounded-full mx-auto"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Carregando locais..."})]})}):a&&0!==a.length?e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-xl font-bold mb-4",children:"Estrutura de Locais"}),a.map(a=>e.jsx(Pi,{place:a,manageAccessConfig:s},a.id))]}):e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center space-y-3",children:[e.jsx(l.Building2,{className:"h-12 w-12 text-muted-foreground/50"}),e.jsxs("div",{children:[e.jsx("h3",{className:"font-semibold text-lg",children:"Nenhum local encontrado"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Não há locais cadastrados para esta unidade."})]})]})},exports.Popover=Ca,exports.PopoverContent=Sa,exports.PopoverTrigger=ka,exports.Progress=Xr,exports.ProtectedRoute=({children:t})=>{const{isAuthenticated:s,isLoading:r}=Ot();if(a.useEffect(()=>{if(!s)return;const e=()=>{Ga.areAllTokensValid()||Lt.logout()};e();const a=setInterval(e,3e5);return()=>clearInterval(a)},[s]),a.useEffect(()=>{if(r)return;if(s)return;if(Ga.isManualLogout())return void(window.location.href="/login");const e=new URLSearchParams(window.location.search),a=window.location.hash.startsWith("#")?window.location.hash.substring(1):window.location.hash,t=new URLSearchParams(a);if(e.has("access_token")||t.has("access_token"))return;const n=bt();(async()=>{n?await Lt.loginDev():Lt.loginProd()})()},[s,r]),r)return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(Ne,{className:"w-full max-w-md",children:[e.jsx(je,{className:"text-center",children:e.jsx(ye,{className:"text-xl font-semibold",children:"Carregando..."})}),e.jsxs(Ce,{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground",children:"Verificando autenticação..."})]})]})});if(!s){if(new URLSearchParams(window.location.search).has("access_token")||new URLSearchParams(window.location.hash.substring(1)).has("access_token"))return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(Ne,{className:"w-full max-w-md",children:[e.jsx(je,{className:"text-center",children:e.jsx(ye,{className:"text-xl font-semibold",children:"Processando..."})}),e.jsxs(Ce,{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground",children:"Processando tokens..."})]})]})});try{if(Ga.areAllTokensValid())return e.jsx(e.Fragment,{children:t})}catch{}return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(Ne,{className:"w-full max-w-md",children:[e.jsx(je,{className:"text-center",children:e.jsx(ye,{className:"text-xl font-semibold",children:"Iniciando..."})}),e.jsxs(Ce,{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground",children:bt()?"Fazendo login automático...":"Redirecionando para autenticação..."})]})]})})}return e.jsx(e.Fragment,{children:t})},exports.QUALIEX_CONFIG=vt,exports.QUERY_KEYS={crud:e=>[e],list:(e,a)=>[e,"list",a],detail:(e,a)=>[e,"detail",a]},exports.QualiexEnrichmentService=At,exports.QualiexErrorInterceptor=ut,exports.QualiexUserField=Us,exports.RadioGroup=Jr,exports.RadioGroupItem=Yr,exports.ResizableRail=Ni,exports.SEARCH_CONFIG=gt,exports.ScrollArea=Ds,exports.ScrollBar=Fs,exports.Select=We,exports.SelectContent=Je,exports.SelectGroup=He,exports.SelectItem=Ze,exports.SelectLabel=Ye,exports.SelectScrollDownButton=Xe,exports.SelectScrollUpButton=Ke,exports.SelectSearch=function({multiple:a=!1,options:t=[],value:s,onChange:r,getOptionValue:n=e=>e.value,getOptionLabel:i=e=>e.label,placeholder:o="Selecione...",label:d,icon:c,emptyMessage:u="Nenhum item disponível.",searchPlaceholder:m="Buscar...",disabled:p=!1,required:h=!1,isLoading:x=!1,error:f,className:g,sortOptions:b=!0,maxDisplayedBadges:v,popoverContainer:N,onOpen:j,onClose:y}){if(x)return e.jsxs("div",{className:me("space-y-2",g),children:[d&&e.jsxs(ve,{children:[d,h&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(Fa,{className:"h-10 w-full"})]});const w="string"==typeof f?f:f?"Erro ao carregar dados":void 0;return w?e.jsxs("div",{className:me("space-y-2",g),children:[d&&e.jsxs(ve,{children:[d,h&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs("div",{className:"flex items-center gap-2 p-3 border border-destructive rounded-md bg-destructive/10 text-destructive",children:[e.jsx(l.AlertCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:w})]})]}):e.jsx(qr,{multiple:a,options:t,value:s||(a?[]:""),onChange:r,getOptionValue:n,getOptionLabel:i,placeholder:o,label:d,icon:c,emptyMessage:u,searchPlaceholder:m,disabled:p,required:h,className:g,sortOptions:b,maxDisplayedBadges:v,popoverContainer:N,onOpen:j,onClose:y})},exports.SelectSeparator=ea,exports.SelectTrigger=Ge,exports.SelectValue=Qe,exports.Separator=Zr,exports.Sheet=en,exports.SheetClose=tn,exports.SheetContent=on,exports.SheetDescription=un,exports.SheetFooter=dn,exports.SheetHeader=ln,exports.SheetOverlay=rn,exports.SheetPortal=sn,exports.SheetTitle=cn,exports.SheetTrigger=an,exports.Sidebar=Nn,exports.SidebarContent=An,exports.SidebarFooter=Sn,exports.SidebarGroup=Tn,exports.SidebarGroupAction=Pn,exports.SidebarGroupContent=_n,exports.SidebarGroupLabel=In,exports.SidebarHeader=bi,exports.SidebarInput=Cn,exports.SidebarInset=wn,exports.SidebarMenu=Rn,exports.SidebarMenuAction=Ln,exports.SidebarMenuBadge=zn,exports.SidebarMenuButton=Mn,exports.SidebarMenuItem=Dn,exports.SidebarMenuSkeleton=On,exports.SidebarMenuSub=Un,exports.SidebarMenuSubButton=qn,exports.SidebarMenuSubItem=$n,exports.SidebarProvider=vn,exports.SidebarRail=yn,exports.SidebarSeparator=En,exports.SidebarSkeleton=function(){return e.jsx("div",{className:"w-64 border-r bg-muted/10",children:e.jsxs("div",{className:"p-4",children:[e.jsx(Fa,{className:"h-8 w-32 mb-6"}),e.jsx("div",{className:"space-y-2",children:Array.from({length:6}).map((a,t)=>e.jsxs("div",{className:"flex items-center space-x-3 p-2",children:[e.jsx(Fa,{className:"h-4 w-4"}),e.jsx(Fa,{className:"h-4 w-20"})]},t))})]})})},exports.SidebarTrigger=jn,exports.Skeleton=Fa,exports.Slider=Vn,exports.SonnerToaster=({...a})=>{const{theme:t="system"}=_.useTheme();return e.jsx(o.Toaster,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...a})},exports.Spinner=ia,exports.Stack=Gs,exports.StatusSelect=function({value:a,onChange:t,activeLabel:s="Ativo",inactiveLabel:r="Inativo",allLabel:n="[Todos]",placeholder:i="Status",className:o="w-full sm:w-[180px]"}){const l=[{id:"active",name:s},{id:"inactive",name:r},{id:"all",name:n}];return e.jsx(zs,{value:a,onChange:e=>t(e),items:l,getItemValue:e=>e.id,getItemLabel:e=>e.name,placeholder:i,className:o})},exports.Switch=Bn,exports.TabPageContent=function({children:a,className:t}){return e.jsx("div",{className:me("space-y-6",t),children:a})},exports.TabPageHeader=function({title:a,description:t,actions:s,className:r}){return e.jsxs("div",{className:me("space-y-4",r),children:[e.jsxs("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-2xl font-bold tracking-tight",children:a}),t&&e.jsx("p",{className:"text-muted-foreground text-sm",children:t})]}),s&&e.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:s})]}),e.jsx(Zr,{})]})},exports.TabPageLayout=function({children:a,className:t}){return e.jsx("div",{className:me("flex flex-col h-full",t),children:e.jsx(Ds,{className:"flex-1",children:e.jsx("div",{className:"space-y-6 p-6",children:a})})})},exports.Table=Zt,exports.TableBody=as,exports.TableCaption=is,exports.TableCell=ns,exports.TableFooter=ts,exports.TableHead=rs,exports.TableHeader=es,exports.TableRow=ss,exports.TableRowActions=Es,exports.TableSkeleton=os,exports.Tabs=Wn,exports.TabsContent=Gn,exports.TabsList=Hn,exports.TabsTrigger=Qn,exports.Textarea=ta,exports.Toast=va,exports.ToastAction=Na,exports.ToastClose=ja,exports.ToastDescription=wa,exports.ToastProvider=fa,exports.ToastTitle=ya,exports.ToastViewport=ga,exports.Toaster=function(){const{toasts:a}=xa();return e.jsxs(fa,{children:[a.map(function({id:a,title:t,description:s,action:r,...n}){return e.jsxs(va,{...n,children:[e.jsxs("div",{className:"grid gap-1",children:[t&&e.jsx(ya,{children:t}),s&&e.jsx(wa,{children:s})]}),r,e.jsx(ja,{})]},a)}),e.jsx(ga,{})]})},exports.Toggle=Xn,exports.ToggleGroup=Yn,exports.ToggleGroupItem=Zn,exports.TokenManager=Ga,exports.TokenService=Ua,exports.Tooltip=pn,exports.TooltipContent=xn,exports.TooltipProvider=mn,exports.TooltipTrigger=hn,exports.VideoEditor=function({value:t,onChange:s,onSubmit:r,onCancel:n,uploadFunction:i,deleteFunction:o,uploadOptions:d}){const[c,u]=a.useState(t||{inputType:"url",controls:!0}),m=a.useRef(null),p=a.useRef(null),{upload:h,uploading:x}=eo({uploadFunction:i,deleteFunction:o,defaultOptions:{...d,allowedTypes:["video/*"],maxSize:104857600}}),{upload:f,uploading:g}=eo({uploadFunction:i,deleteFunction:o,defaultOptions:{...d,allowedTypes:["image/*"],maxSize:5242880}}),b=a.useMemo(()=>io(c.videoUrl||no(c.embedCode)||""),[c.videoUrl,c.embedCode]),v=(e,a)=>{const t={...c,[e]:a};u(t),s(t)};return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Tipo de entrada"}),e.jsxs(We,{value:c.inputType||"url",onValueChange:e=>v("inputType",e),children:[e.jsx(Ge,{children:e.jsx(Qe,{})}),e.jsxs(Je,{children:[e.jsx(Ze,{value:"url",children:"URL (YouTube/Vimeo/arquivo)"}),e.jsx(Ze,{value:"upload",children:"Upload de arquivo"}),e.jsx(Ze,{value:"embed",children:"Código de incorporação (iframe)"})]})]})]}),"embed"!==c.inputType&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"URL do vídeo"}),e.jsx(ge,{type:"url",placeholder:"https://www.youtube.com/watch?v=... ou arquivo direto",value:c.videoUrl||"",onChange:e=>v("videoUrl",e.target.value)})]}),"upload"===c.inputType&&i&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Arquivo de vídeo"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("input",{ref:m,type:"file",accept:"video/*",onChange:async e=>{const a=e.target.files?.[0];if(a)try{const e=await h(a),t={...c,videoUrl:e.url,videoFile:e.name,videoPath:e.path,videoSize:e.size,title:c.title||a.name.replace(/\.[^/.]+$/,"")};u(t),s(t)}catch(t){}finally{m.current&&(m.current.value="")}},className:"hidden"}),e.jsx(xe,{type:"button",variant:"outline",onClick:()=>m.current?.click(),disabled:x,children:x?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Upload,{className:"mr-2 h-4 w-4"}),"Selecionar vídeo"]})}),c.videoFile&&e.jsxs("span",{className:"text-xs text-muted-foreground truncate self-center",children:[c.videoFile," (",Math.round((c.videoSize||0)/1024/1024)," MB)"]})]})]}),"embed"===c.inputType&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Código embed (iframe)"}),e.jsx(ta,{placeholder:'<iframe src="https://www.youtube.com/embed/..." ...></iframe>',value:c.embedCode||"",onChange:e=>v("embedCode",e.target.value),rows:4,className:"font-mono text-sm"})]}),i&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Thumbnail/Poster (opcional)"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(ge,{type:"url",placeholder:"https://exemplo.com/thumbnail.jpg",value:c.thumbnail||"",onChange:e=>v("thumbnail",e.target.value),className:"flex-1"}),e.jsx("input",{ref:p,type:"file",accept:"image/*",onChange:async e=>{const a=e.target.files?.[0];if(a)try{const e=await f(a),t={...c,thumbnail:e.url,thumbnailFile:e.name,thumbnailPath:e.path};u(t),s(t)}catch(t){}finally{p.current&&(p.current.value="")}},className:"hidden"}),e.jsx(xe,{type:"button",variant:"outline",onClick:()=>p.current?.click(),disabled:g,children:g?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Upload,{className:"mr-2 h-4 w-4"}),"Upload"]})})]}),c.thumbnailFile&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Arquivo: ",c.thumbnailFile]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{htmlFor:"title",children:"Título (opcional)"}),e.jsx(ge,{id:"title",placeholder:"Título do vídeo",value:c.title||"",onChange:e=>v("title",e.target.value)})]}),e.jsxs("div",{className:"flex gap-6",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{id:"autoplay",type:"checkbox",checked:c.autoplay||!1,onChange:e=>v("autoplay",e.target.checked),className:"h-4 w-4"}),e.jsx(ve,{htmlFor:"autoplay",className:"cursor-pointer",children:"Autoplay (mudo em embeds)"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{id:"controls",type:"checkbox",checked:!1!==c.controls,onChange:e=>v("controls",e.target.checked),className:"h-4 w-4"}),e.jsx(ve,{htmlFor:"controls",className:"cursor-pointer",children:"Mostrar controles"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ve,{children:"Preview"}),e.jsx("div",{className:"border rounded-lg p-4 bg-muted/30",children:(()=>{const a=c.videoUrl||no(c.embedCode)||"";if(!a)return e.jsx("div",{className:"text-center py-8 text-muted-foreground",children:"Adicione uma URL, faça upload ou insira um código embed para visualizar"});if("file"===b)return e.jsxs("video",{controls:!1!==c.controls,autoPlay:c.autoplay,poster:c.thumbnail,className:"w-full h-auto rounded-md",playsInline:!0,children:[e.jsx("source",{src:a}),"Seu navegador não suporta vídeos HTML5."]});const t="youtube"===b?to(a,c.autoplay):ro(a,c.autoplay);return e.jsx("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e.jsx("iframe",{title:c.title||"Vídeo",src:t,className:"absolute inset-0 w-full h-full rounded-md",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})})})()})]}),e.jsxs("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e.jsx(xe,{variant:"outline",onClick:n,children:"Cancelar"}),e.jsx(xe,{onClick:()=>{c.videoUrl||c.embedCode?r(c):ha({title:"Erro",description:"Adicione uma URL, faça upload de um vídeo ou insira um código embed",variant:"destructive"})},disabled:!(c.videoUrl||c.embedCode),children:"Salvar"})]})]})},exports.VideoRenderer=function({content:a,className:t="",style:s}){const r=a.videoUrl||no(a.embedCode)||"";if(!r)return null;const n=io(r);return e.jsx(Ne,{className:`overflow-hidden my-4 ${t}`,style:s,children:e.jsxs(Ce,{className:"p-0",children:["file"===n?e.jsxs("video",{controls:!1!==a.controls,autoPlay:a.autoplay,poster:a.thumbnail,className:"w-full h-auto",playsInline:!0,muted:a.autoplay,children:[e.jsx("source",{src:r}),"Seu navegador não suporta vídeos HTML5."]}):e.jsx("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e.jsx("iframe",{title:a.title||"Vídeo",src:"youtube"===n?to(r,a.autoplay):ro(r,a.autoplay),className:"absolute inset-0 w-full h-full",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})}),a.title&&e.jsx("div",{className:"p-4",children:e.jsx("p",{className:"text-sm font-medium",children:a.title})})]})})},exports.assets=xi,exports.badgeVariants=sa,exports.buildHierarchy=Fi,exports.buttonVariants=he,exports.calculateAspectRatio=oo,exports.cn=me,exports.createCrudPage=function(a){return({manager:t})=>{const{manager:s,config:r,onSave:n,onEdit:i,onToggleStatus:o}=a,l=t??s,d={entityName:r.entityName,entityNamePlural:r.entityNamePlural,filters:r.filters||[],columns:r.columns,cardFields:r.cardFields||[],enableBulkActions:r.enableBulkActions??!1,bulkActions:r.bulkActions||[],customActions:r.customActions,customRowActions:r.customRowActions,customListView:r.customListView,onEdit:i||r.onEdit};return e.jsx(Xs,{manager:l,config:d,formSections:r.formSections,onSave:n,onToggleStatus:o,defaultSort:r.defaultSort})}},exports.createCrudRoutingConfig=function(e,a){const t=ai({basePath:e,newPath:a.newPath,editPath:a.editPath});return{useCustomRouting:!0,onNew:t.onNew,onEdit:t.onEdit}},exports.createRoutingHandlers=ai,exports.createService=Pt,exports.createSimpleSaveHandler=function(e,a,t){return s=>{if(s.id){const a=t(s);e.updateEntity(s.id,a)}else{const t=a(s);e.createEntity(t)}}},exports.createSimpleService=function(e){const a=Pt({tableName:e.tableName,searchFields:e.searchFields||["title"],selectFields:e.selectFields,schemaName:e.schemaName||"central",entityName:e.entityName,enableQualiexEnrichment:e.enableQualiexEnrichment||!0,userIdFields:e.userIdFields,userFieldsMapping:e.userFieldsMapping});return{service:a,useCrudHook:(t,s)=>Ut({queryKey:e.tableName,service:{...a,getAll:async(e={})=>await a.getAll({...e})},entityName:e.entityName,additionalFilters:t,onSuccess:s})}},exports.crudPresets=er,exports.debounce=(e,a)=>{let t;return(...s)=>{clearTimeout(t),t=setTimeout(()=>e(...s),a)}},exports.deriveEmailField=Ct,exports.deriveNameField=wt,exports.deriveUsernameField=kt,exports.detectVideoProvider=io,exports.emailService=Ei,exports.errorService=Ja,exports.extractImageFileName=function(e){try{const a=new URL(e),t=a.pathname.split("/");return t[t.length-1]||"image"}catch{const a=e.split("/");return a[a.length-1]||"image"}},exports.extractVimeoId=so,exports.extractYouTubeId=ao,exports.flattenTree=Mi,exports.formatCurrency=e=>null==e?"R$ 0,00":new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",minimumFractionDigits:2,maximumFractionDigits:2}).format(e),exports.formatDatetime=e=>{if(!e)return"";const a=i.parseISO(e);if(!i.isValid(a))return"Data inválida";return`${a.toLocaleDateString("pt-BR",{day:"2-digit",month:"2-digit",year:"numeric"})} ${a.toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit"})}`},exports.formatFileSize=function(e){return e<1024?`${e} B`:e<1048576?`${Math.round(e/1024)} KB`:`${(e/1024/1024).toFixed(2)} MB`},exports.generateCrudConfig=Js,exports.getQualiexConfig=Nt,exports.getSupabaseClient=rt,exports.handleExternalLink=ue,exports.isDevEnvironment=bt,exports.isImageUrl=function(e){const a=e.toLowerCase();return[".jpg",".jpeg",".png",".gif",".webp",".svg",".bmp",".ico"].some(e=>a.includes(e))},exports.logoSrc=fi,exports.normalizeVideoUrl=function(e,a,t){switch(a||io(e)){case"youtube":return to(e,t);case"vimeo":return ro(e,t);default:return e}},exports.normalizeVimeoUrl=ro,exports.normalizeYouTubeUrl=to,exports.parseIframeSrc=no,exports.placeService=Di,exports.qualiexApi=ht,exports.resizeKeepingAspect=function(e,a,t,s){const r=oo(e,a);return t&&!s?{width:t,height:Math.round(t/r)}:s&&!t?{width:Math.round(s*r),height:s}:{width:e,height:a}},exports.resolveFieldMappings=St,exports.setupQualiexCore=function(e){return{queryClient:e.queryClient||new g.QueryClient({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}}),config:e}},exports.slugify=e=>e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-").replace(/-+/g,"-"),exports.smallLogoSrc=gi,exports.toast=ha,exports.toggleVariants=Kn,exports.trimTextFields=pe,exports.useActiveModules=ci,exports.useAuth=Ot,exports.useBaseForm=Ps,exports.useCreateLeaderMutation=function(){const e="common",{alias:a}=Ot(),t=g.useQueryClient(),s=rt();return g.useMutation({mutationFn:async t=>{if(!a)throw new Error("Unidade não selecionada");if(t.id_user===t.id_leader)throw new Error("Usuário não pode ser seu próprio líder");if((await s.schema(e).from("leaders").select("id").eq("alias",a).eq("id_user",t.id_user).eq("is_removed",!1).maybeSingle()).data)throw new Error("Este usuário já está cadastrado como líder");t.id_leader&&await Vi(s,a,e,t.id_user,t.id_leader);const{data:r,error:n}=await s.schema(e).from("leaders").insert({alias:a,id_user:t.id_user,id_leader:t.id_leader,is_active:!0,is_removed:!1}).select().single();if(n)throw n;return r},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",a]}),o.toast.success("Líder adicionado com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao adicionar líder")}})},exports.useCreateMultipleLeadersMutation=Oi,exports.useCreateSingleLeaderMutation=zi,exports.useCrud=Ut,exports.useDebounce=oi,exports.useFormField=ze,exports.useLeadershipApi=Li,exports.useMediaUpload=eo,exports.useNavigation=ni,exports.useOpenAIChat=Ai,exports.usePageMetadata=function(e){const{setMetadata:t,clearMetadata:s}=or();a.useEffect(()=>(t(e),()=>s()),[e.title,e.subtitle,t,s])},exports.usePageMetadataContext=or,exports.usePageTitle=ii,exports.usePermissionQuery=di,exports.useQualiexUsers=Os,exports.useRemoveLeaderMutation=$i,exports.useRouteBreadcrumbs=function(){const e=b.useLocation();return(()=>{const a=e.pathname.split("/").filter(Boolean),t=[{label:"Exemplos",href:"/"}];let s="";return a.forEach((e,r)=>{s+=`/${e}`;const n=r===a.length-1,i=e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");t.push({label:i,href:n?void 0:s,isCurrentPage:n})}),t})()},exports.useSidebar=bn,exports.useSidebarResize=vi,exports.useSyncSubordinatesMutation=qi,exports.useToast=xa,exports.useUpdateLeaderMutation=Ui,exports.withPreset=function(e,a,t={}){const s=er[e];return Js(s.title,a,{...s,...t})};
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("react"),a=require("@radix-ui/react-slot"),s=require("class-variance-authority"),r=require("clsx"),n=require("tailwind-merge"),i=require("date-fns"),o=require("sonner"),l=require("lucide-react"),d=require("@radix-ui/react-label"),c=require("@radix-ui/react-dialog"),u=require("react-hook-form"),m=require("@radix-ui/react-select"),p=require("@radix-ui/react-checkbox"),h=require("@radix-ui/react-toast"),f=require("@radix-ui/react-popover"),x=require("@supabase/supabase-js"),g=require("@tanstack/react-query"),b=require("react-router-dom"),v=require("@radix-ui/react-alert-dialog"),y=require("@radix-ui/react-dropdown-menu"),N=require("@radix-ui/react-context-menu"),j=require("@radix-ui/react-scroll-area"),w=require("@radix-ui/react-switch"),k=require("@radix-ui/react-progress"),C=require("@radix-ui/react-accordion"),S=require("@radix-ui/react-aspect-ratio"),P=require("@radix-ui/react-avatar"),E=require("react-day-picker"),T=require("@radix-ui/react-collapsible"),A=require("vaul"),_=require("@radix-ui/react-radio-group"),I=require("@radix-ui/react-separator"),R=require("@radix-ui/react-tooltip"),L=require("@radix-ui/react-slider"),M=require("next-themes"),O=require("@radix-ui/react-tabs"),D=require("@radix-ui/react-toggle"),F=require("@radix-ui/react-toggle-group"),z=require("react-markdown"),$=require("remark-gfm"),U=require("zod"),V=require("@hookform/resolvers");function q(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(a){if("default"!==a){var s=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,s.get?s:{enumerable:!0,get:function(){return e[a]}})}}),t.default=e,Object.freeze(t)}var B=q(t),W=q(d),H=q(c),K=q(m),G=q(p),Q=q(h),X=q(f),J=q(v),Y=q(y),Z=q(N),ee=q(j),te=q(w),ae=q(k),se=q(C),re=q(S),ne=q(P),ie=q(T),oe=q(_),le=q(I),de=q(R),ce=q(L),ue=q(O),me=q(D),pe=q(F);const he=e=>"string"==typeof e,fe=()=>{let e,t;const a=new Promise((a,s)=>{e=a,t=s});return a.resolve=e,a.reject=t,a},xe=e=>null==e?"":""+e,ge=/###/g,be=e=>e&&e.indexOf("###")>-1?e.replace(ge,"."):e,ve=e=>!e||he(e),ye=(e,t,a)=>{const s=he(t)?t.split("."):t;let r=0;for(;r<s.length-1;){if(ve(e))return{};const t=be(s[r]);!e[t]&&a&&(e[t]=new a),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++r}return ve(e)?{}:{obj:e,k:be(s[r])}},Ne=(e,t,a)=>{const{obj:s,k:r}=ye(e,t,Object);if(void 0!==s||1===t.length)return void(s[r]=a);let n=t[t.length-1],i=t.slice(0,t.length-1),o=ye(e,i,Object);for(;void 0===o.obj&&i.length;)n=`${i[i.length-1]}.${n}`,i=i.slice(0,i.length-1),o=ye(e,i,Object),o?.obj&&void 0!==o.obj[`${o.k}.${n}`]&&(o.obj=void 0);o.obj[`${o.k}.${n}`]=a},je=(e,t)=>{const{obj:a,k:s}=ye(e,t);if(a&&Object.prototype.hasOwnProperty.call(a,s))return a[s]},we=(e,t,a)=>{for(const s in t)"__proto__"!==s&&"constructor"!==s&&(s in e?he(e[s])||e[s]instanceof String||he(t[s])||t[s]instanceof String?a&&(e[s]=t[s]):we(e[s],t[s],a):e[s]=t[s]);return e},ke=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var Ce={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};const Se=e=>he(e)?e.replace(/[&<>"'\/]/g,e=>Ce[e]):e;const Pe=[" ",",","?","!",";"],Ee=new class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const t=this.regExpMap.get(e);if(void 0!==t)return t;const a=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,a),this.regExpQueue.push(e),a}}(20),Te=(e,t,a=".")=>{if(!e)return;if(e[t]){if(!Object.prototype.hasOwnProperty.call(e,t))return;return e[t]}const s=t.split(a);let r=e;for(let n=0;n<s.length;){if(!r||"object"!=typeof r)return;let e,t="";for(let i=n;i<s.length;++i)if(i!==n&&(t+=a),t+=s[i],e=r[t],void 0!==e){if(["string","number","boolean"].indexOf(typeof e)>-1&&i<s.length-1)continue;n+=i-n+1;break}r=e}return r},Ae=e=>e?.replace("_","-"),_e={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){}};class Ie{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||"i18next:",this.logger=e||_e,this.options=t,this.debug=t.debug}log(...e){return this.forward(e,"log","",!0)}warn(...e){return this.forward(e,"warn","",!0)}error(...e){return this.forward(e,"error","")}deprecate(...e){return this.forward(e,"warn","WARNING DEPRECATED: ",!0)}forward(e,t,a,s){return s&&!this.debug?null:(he(e[0])&&(e[0]=`${a}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new Ie(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new Ie(this.logger,e)}}var Re=new Ie;class Le{constructor(){this.observers={}}on(e,t){return e.split(" ").forEach(e=>{this.observers[e]||(this.observers[e]=new Map);const a=this.observers[e].get(t)||0;this.observers[e].set(t,a+1)}),this}off(e,t){this.observers[e]&&(t?this.observers[e].delete(t):delete this.observers[e])}emit(e,...t){if(this.observers[e]){Array.from(this.observers[e].entries()).forEach(([e,a])=>{for(let s=0;s<a;s++)e(...t)})}if(this.observers["*"]){Array.from(this.observers["*"].entries()).forEach(([a,s])=>{for(let r=0;r<s;r++)a.apply(a,[e,...t])})}}}class Me extends Le{constructor(e,t={ns:["translation"],defaultNS:"translation"}){super(),this.data=e||{},this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),void 0===this.options.ignoreJSONStructure&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,a,s={}){const r=void 0!==s.keySeparator?s.keySeparator:this.options.keySeparator,n=void 0!==s.ignoreJSONStructure?s.ignoreJSONStructure:this.options.ignoreJSONStructure;let i;e.indexOf(".")>-1?i=e.split("."):(i=[e,t],a&&(Array.isArray(a)?i.push(...a):he(a)&&r?i.push(...a.split(r)):i.push(a)));const o=je(this.data,i);return!o&&!t&&!a&&e.indexOf(".")>-1&&(e=i[0],t=i[1],a=i.slice(2).join(".")),!o&&n&&he(a)?Te(this.data?.[e]?.[t],a,r):o}addResource(e,t,a,s,r={silent:!1}){const n=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator;let i=[e,t];a&&(i=i.concat(n?a.split(n):a)),e.indexOf(".")>-1&&(i=e.split("."),s=t,t=i[1]),this.addNamespaces(t),Ne(this.data,i,s),r.silent||this.emit("added",e,t,a,s)}addResources(e,t,a,s={silent:!1}){for(const r in a)(he(a[r])||Array.isArray(a[r]))&&this.addResource(e,t,r,a[r],{silent:!0});s.silent||this.emit("added",e,t,a)}addResourceBundle(e,t,a,s,r,n={silent:!1,skipCopy:!1}){let i=[e,t];e.indexOf(".")>-1&&(i=e.split("."),s=a,a=t,t=i[1]),this.addNamespaces(t);let o=je(this.data,i)||{};n.skipCopy||(a=JSON.parse(JSON.stringify(a))),s?we(o,a,r):o={...o,...a},Ne(this.data,i,o),n.silent||this.emit("added",e,t,a)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit("removed",e,t)}hasResourceBundle(e,t){return void 0!==this.getResource(e,t)}getResourceBundle(e,t){return t||(t=this.options.defaultNS),this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find(e=>t[e]&&Object.keys(t[e]).length>0)}toJSON(){return this.data}}var Oe={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,a,s,r){return e.forEach(e=>{t=this.processors[e]?.process(t,a,s,r)??t}),t}};const De=Symbol("i18next/PATH_KEY");function Fe(e,t){const{[De]:a}=e(function(){const e=[],t=Object.create(null);let a;return t.get=(s,r)=>(a?.revoke?.(),r===De?e:(e.push(r),a=Proxy.revocable(s,t),a.proxy)),Proxy.revocable(Object.create(null),t).proxy}());return a.join(t?.keySeparator??".")}const ze={},$e=e=>!he(e)&&"boolean"!=typeof e&&"number"!=typeof e;class Ue extends Le{constructor(e,t={}){super(),((e,t,a)=>{e.forEach(e=>{t[e]&&(a[e]=t[e])})})(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=t,void 0===this.options.keySeparator&&(this.options.keySeparator="."),this.logger=Re.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){const a={...t};if(null==e)return!1;const s=this.resolve(e,a);if(void 0===s?.res)return!1;const r=$e(s.res);return!1!==a.returnObjects||!r}extractFromKey(e,t){let a=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===a&&(a=":");const s=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let r=t.ns||this.options.defaultNS||[];const n=a&&e.indexOf(a)>-1,i=!(this.options.userDefinedKeySeparator||t.keySeparator||this.options.userDefinedNsSeparator||t.nsSeparator||((e,t,a)=>{t=t||"",a=a||"";const s=Pe.filter(e=>t.indexOf(e)<0&&a.indexOf(e)<0);if(0===s.length)return!0;const r=Ee.getRegExp(`(${s.map(e=>"?"===e?"\\?":e).join("|")})`);let n=!r.test(e);if(!n){const t=e.indexOf(a);t>0&&!r.test(e.substring(0,t))&&(n=!0)}return n})(e,a,s));if(n&&!i){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:he(r)?[r]:r};const n=e.split(a);(a!==s||a===s&&this.options.ns.indexOf(n[0])>-1)&&(r=n.shift()),e=n.join(s)}return{key:e,namespaces:he(r)?[r]:r}}translate(e,t,a){let s="object"==typeof t?{...t}:t;if("object"!=typeof s&&this.options.overloadTranslationOptionHandler&&(s=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof s&&(s={...s}),s||(s={}),null==e)return"";"function"==typeof e&&(e=Fe(e,{...this.options,...s})),Array.isArray(e)||(e=[String(e)]);const r=void 0!==s.returnDetails?s.returnDetails:this.options.returnDetails,n=void 0!==s.keySeparator?s.keySeparator:this.options.keySeparator,{key:i,namespaces:o}=this.extractFromKey(e[e.length-1],s),l=o[o.length-1];let d=void 0!==s.nsSeparator?s.nsSeparator:this.options.nsSeparator;void 0===d&&(d=":");const c=s.lng||this.language,u=s.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if("cimode"===c?.toLowerCase())return u?r?{res:`${l}${d}${i}`,usedKey:i,exactUsedKey:i,usedLng:c,usedNS:l,usedParams:this.getUsedParamsDetails(s)}:`${l}${d}${i}`:r?{res:i,usedKey:i,exactUsedKey:i,usedLng:c,usedNS:l,usedParams:this.getUsedParamsDetails(s)}:i;const m=this.resolve(e,s);let p=m?.res;const h=m?.usedKey||i,f=m?.exactUsedKey||i,x=void 0!==s.joinArrays?s.joinArrays:this.options.joinArrays,g=!this.i18nFormat||this.i18nFormat.handleAsObject,b=void 0!==s.count&&!he(s.count),v=Ue.hasDefaultValue(s),y=b?this.pluralResolver.getSuffix(c,s.count,s):"",N=s.ordinal&&b?this.pluralResolver.getSuffix(c,s.count,{ordinal:!1}):"",j=b&&!s.ordinal&&0===s.count,w=j&&s[`defaultValue${this.options.pluralSeparator}zero`]||s[`defaultValue${y}`]||s[`defaultValue${N}`]||s.defaultValue;let k=p;g&&!p&&v&&(k=w);const C=$e(k),S=Object.prototype.toString.apply(k);if(!(g&&k&&C&&["[object Number]","[object Function]","[object RegExp]"].indexOf(S)<0)||he(x)&&Array.isArray(k))if(g&&he(x)&&Array.isArray(p))p=p.join(x),p&&(p=this.extendTranslation(p,e,s,a));else{let t=!1,r=!1;!this.isValidLookup(p)&&v&&(t=!0,p=w),this.isValidLookup(p)||(r=!0,p=i);const o=(s.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&r?void 0:p,u=v&&w!==p&&this.options.updateMissing;if(r||t||u){if(this.logger.log(u?"updateKey":"missingKey",c,l,i,u?w:p),n){const e=this.resolve(i,{...s,keySeparator:!1});e&&e.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let e=[];const t=this.languageUtils.getFallbackCodes(this.options.fallbackLng,s.lng||this.language);if("fallback"===this.options.saveMissingTo&&t&&t[0])for(let s=0;s<t.length;s++)e.push(t[s]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(s.lng||this.language):e.push(s.lng||this.language);const a=(e,t,a)=>{const r=v&&a!==p?a:o;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,r,u,s):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(e,l,t,r,u,s),this.emit("missingKey",e,l,t,p)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?e.forEach(e=>{const t=this.pluralResolver.getSuffixes(e,s);j&&s[`defaultValue${this.options.pluralSeparator}zero`]&&t.indexOf(`${this.options.pluralSeparator}zero`)<0&&t.push(`${this.options.pluralSeparator}zero`),t.forEach(t=>{a([e],i+t,s[`defaultValue${t}`]||w)})}):a(e,i,w))}p=this.extendTranslation(p,e,s,m,a),r&&p===i&&this.options.appendNamespaceToMissingKey&&(p=`${l}${d}${i}`),(r||t)&&this.options.parseMissingKeyHandler&&(p=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${d}${i}`:i,t?p:void 0,s))}else{if(!s.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,k,{...s,ns:o}):`key '${i} (${this.language})' returned an object instead of string.`;return r?(m.res=e,m.usedParams=this.getUsedParamsDetails(s),m):e}if(n){const e=Array.isArray(k),t=e?[]:{},a=e?f:h;for(const r in k)if(Object.prototype.hasOwnProperty.call(k,r)){const e=`${a}${n}${r}`;t[r]=v&&!p?this.translate(e,{...s,defaultValue:$e(w)?w[r]:void 0,joinArrays:!1,ns:o}):this.translate(e,{...s,joinArrays:!1,ns:o}),t[r]===e&&(t[r]=k[r])}p=t}}return r?(m.res=p,m.usedParams=this.getUsedParamsDetails(s),m):p}extendTranslation(e,t,a,s,r){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...a},a.lng||this.language||s.usedLng,s.usedNS,s.usedKey,{resolved:s});else if(!a.skipInterpolation){a.interpolation&&this.interpolator.init({...a,interpolation:{...this.options.interpolation,...a.interpolation}});const n=he(e)&&(void 0!==a?.interpolation?.skipOnVariables?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let i;if(n){const t=e.match(this.interpolator.nestingRegexp);i=t&&t.length}let o=a.replace&&!he(a.replace)?a.replace:a;if(this.options.interpolation.defaultVariables&&(o={...this.options.interpolation.defaultVariables,...o}),e=this.interpolator.interpolate(e,o,a.lng||this.language||s.usedLng,a),n){const t=e.match(this.interpolator.nestingRegexp);i<(t&&t.length)&&(a.nest=!1)}!a.lng&&s&&s.res&&(a.lng=this.language||s.usedLng),!1!==a.nest&&(e=this.interpolator.nest(e,(...e)=>r?.[0]!==e[0]||a.context?this.translate(...e,t):(this.logger.warn(`It seems you are nesting recursively key: ${e[0]} in key: ${t[0]}`),null),a)),a.interpolation&&this.interpolator.reset()}const n=a.postProcess||this.options.postProcess,i=he(n)?[n]:n;return null!=e&&i?.length&&!1!==a.applyPostProcessor&&(e=Oe.handle(i,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...s,usedParams:this.getUsedParamsDetails(a)},...a}:a,this)),e}resolve(e,t={}){let a,s,r,n,i;return he(e)&&(e=[e]),e.forEach(e=>{if(this.isValidLookup(a))return;const o=this.extractFromKey(e,t),l=o.key;s=l;let d=o.namespaces;this.options.fallbackNS&&(d=d.concat(this.options.fallbackNS));const c=void 0!==t.count&&!he(t.count),u=c&&!t.ordinal&&0===t.count,m=void 0!==t.context&&(he(t.context)||"number"==typeof t.context)&&""!==t.context,p=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);d.forEach(e=>{this.isValidLookup(a)||(i=e,ze[`${p[0]}-${e}`]||!this.utils?.hasLoadedNamespace||this.utils?.hasLoadedNamespace(i)||(ze[`${p[0]}-${e}`]=!0,this.logger.warn(`key "${s}" for languages "${p.join(", ")}" won't get resolved as namespace "${i}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),p.forEach(s=>{if(this.isValidLookup(a))return;n=s;const i=[l];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(i,l,s,e,t);else{let e;c&&(e=this.pluralResolver.getSuffix(s,t.count,t));const a=`${this.options.pluralSeparator}zero`,r=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(c&&(t.ordinal&&0===e.indexOf(r)&&i.push(l+e.replace(r,this.options.pluralSeparator)),i.push(l+e),u&&i.push(l+a)),m){const s=`${l}${this.options.contextSeparator||"_"}${t.context}`;i.push(s),c&&(t.ordinal&&0===e.indexOf(r)&&i.push(s+e.replace(r,this.options.pluralSeparator)),i.push(s+e),u&&i.push(s+a))}}let o;for(;o=i.pop();)this.isValidLookup(a)||(r=o,a=this.getResource(s,e,o,t))}))})}),{res:a,usedKey:s,exactUsedKey:r,usedLng:n,usedNS:i}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,a,s={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,t,a,s):this.resourceStore.getResource(e,t,a,s)}getUsedParamsDetails(e={}){const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],a=e.replace&&!he(e.replace);let s=a?e.replace:e;if(a&&void 0!==e.count&&(s.count=e.count),this.options.interpolation.defaultVariables&&(s={...this.options.interpolation.defaultVariables,...s}),!a){s={...s};for(const e of t)delete s[e]}return s}static hasDefaultValue(e){const t="defaultValue";for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t===a.substring(0,12)&&void 0!==e[a])return!0;return!1}}class Ve{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Re.create("languageUtils")}getScriptPartFromCode(e){if(!(e=Ae(e))||e.indexOf("-")<0)return null;const t=e.split("-");return 2===t.length?null:(t.pop(),"x"===t[t.length-1].toLowerCase()?null:this.formatLanguageCode(t.join("-")))}getLanguagePartFromCode(e){if(!(e=Ae(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(he(e)&&e.indexOf("-")>-1){let a;try{a=Intl.getCanonicalLocales(e)[0]}catch(t){}return a&&this.options.lowerCaseLng&&(a=a.toLowerCase()),a||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return("languageOnly"===this.options.load||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach(e=>{if(t)return;const a=this.formatLanguageCode(e);this.options.supportedLngs&&!this.isSupportedCode(a)||(t=a)}),!t&&this.options.supportedLngs&&e.forEach(e=>{if(t)return;const a=this.getScriptPartFromCode(e);if(this.isSupportedCode(a))return t=a;const s=this.getLanguagePartFromCode(e);if(this.isSupportedCode(s))return t=s;t=this.options.supportedLngs.find(e=>e===s?e:e.indexOf("-")<0&&s.indexOf("-")<0?void 0:e.indexOf("-")>0&&s.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===s||0===e.indexOf(s)&&s.length>1?e:void 0)}),t||(t=this.getFallbackCodes(this.options.fallbackLng)[0]),t}getFallbackCodes(e,t){if(!e)return[];if("function"==typeof e&&(e=e(t)),he(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let a=e[t];return a||(a=e[this.getScriptPartFromCode(t)]),a||(a=e[this.formatLanguageCode(t)]),a||(a=e[this.getLanguagePartFromCode(t)]),a||(a=e.default),a||[]}toResolveHierarchy(e,t){const a=this.getFallbackCodes((!1===t?[]:t)||this.options.fallbackLng||[],e),s=[],r=e=>{e&&(this.isSupportedCode(e)?s.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return he(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&r(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&r(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&r(this.getLanguagePartFromCode(e))):he(e)&&r(this.formatLanguageCode(e)),a.forEach(e=>{s.indexOf(e)<0&&r(this.formatLanguageCode(e))}),s}}const qe={zero:0,one:1,two:2,few:3,many:4,other:5},Be={select:e=>1===e?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class We{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=Re.create("pluralResolver"),this.pluralRulesCache={}}addRule(e,t){this.rules[e]=t}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){const a=Ae("dev"===e?"en":e),s=t.ordinal?"ordinal":"cardinal",r=JSON.stringify({cleanedCode:a,type:s});if(r in this.pluralRulesCache)return this.pluralRulesCache[r];let n;try{n=new Intl.PluralRules(a,{type:s})}catch(i){if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),Be;if(!e.match(/-|_/))return Be;const a=this.languageUtils.getLanguagePartFromCode(e);n=this.getRule(a,t)}return this.pluralRulesCache[r]=n,n}needsPlural(e,t={}){let a=this.getRule(e,t);return a||(a=this.getRule("dev",t)),a?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,t,a={}){return this.getSuffixes(e,a).map(e=>`${t}${e}`)}getSuffixes(e,t={}){let a=this.getRule(e,t);return a||(a=this.getRule("dev",t)),a?a.resolvedOptions().pluralCategories.sort((e,t)=>qe[e]-qe[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`):[]}getSuffix(e,t,a={}){const s=this.getRule(e,a);return s?`${this.options.prepend}${a.ordinal?`ordinal${this.options.prepend}`:""}${s.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix("dev",t,a))}}const He=(e,t,a,s=".",r=!0)=>{let n=((e,t,a)=>{const s=je(e,a);return void 0!==s?s:je(t,a)})(e,t,a);return!n&&r&&he(a)&&(n=Te(e,a,s),void 0===n&&(n=Te(t,a,s))),n},Ke=e=>e.replace(/\$/g,"$$$$");class Ge{constructor(e={}){this.logger=Re.create("interpolator"),this.options=e,this.format=e?.interpolation?.format||(e=>e),this.init(e)}init(e={}){e.interpolation||(e.interpolation={escapeValue:!0});const{escape:t,escapeValue:a,useRawValueToEscape:s,prefix:r,prefixEscaped:n,suffix:i,suffixEscaped:o,formatSeparator:l,unescapeSuffix:d,unescapePrefix:c,nestingPrefix:u,nestingPrefixEscaped:m,nestingSuffix:p,nestingSuffixEscaped:h,nestingOptionsSeparator:f,maxReplaces:x,alwaysFormat:g}=e.interpolation;this.escape=void 0!==t?t:Se,this.escapeValue=void 0===a||a,this.useRawValueToEscape=void 0!==s&&s,this.prefix=r?ke(r):n||"{{",this.suffix=i?ke(i):o||"}}",this.formatSeparator=l||",",this.unescapePrefix=d?"":c||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=u?ke(u):m||ke("$t("),this.nestingSuffix=p?ke(p):h||ke(")"),this.nestingOptionsSeparator=f||",",this.maxReplaces=x||1e3,this.alwaysFormat=void 0!==g&&g,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(e,t)=>e?.source===t?(e.lastIndex=0,e):new RegExp(t,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,t,a,s){let r,n,i;const o=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},l=e=>{if(e.indexOf(this.formatSeparator)<0){const r=He(t,o,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(r,void 0,a,{...s,...t,interpolationkey:e}):r}const r=e.split(this.formatSeparator),n=r.shift().trim(),i=r.join(this.formatSeparator).trim();return this.format(He(t,o,n,this.options.keySeparator,this.options.ignoreJSONStructure),i,a,{...s,...t,interpolationkey:n})};this.resetRegExp();const d=s?.missingInterpolationHandler||this.options.missingInterpolationHandler,c=void 0!==s?.interpolation?.skipOnVariables?s.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>Ke(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?Ke(this.escape(e)):Ke(e)}].forEach(t=>{for(i=0;r=t.regex.exec(e);){const a=r[1].trim();if(n=l(a),void 0===n)if("function"==typeof d){const t=d(e,r,s);n=he(t)?t:""}else if(s&&Object.prototype.hasOwnProperty.call(s,a))n="";else{if(c){n=r[0];continue}this.logger.warn(`missed to pass in variable ${a} for interpolating ${e}`),n=""}else he(n)||this.useRawValueToEscape||(n=xe(n));const o=t.safeValue(n);if(e=e.replace(r[0],o),c?(t.regex.lastIndex+=n.length,t.regex.lastIndex-=r[0].length):t.regex.lastIndex=0,i++,i>=this.maxReplaces)break}}),e}nest(e,t,a={}){let s,r,n;const i=(e,t)=>{const a=this.nestingOptionsSeparator;if(e.indexOf(a)<0)return e;const s=e.split(new RegExp(`${a}[ ]*{`));let r=`{${s[1]}`;e=s[0],r=this.interpolate(r,n);const i=r.match(/'/g),o=r.match(/"/g);((i?.length??0)%2==0&&!o||o.length%2!=0)&&(r=r.replace(/'/g,'"'));try{n=JSON.parse(r),t&&(n={...t,...n})}catch(l){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,l),`${e}${a}${r}`}return n.defaultValue&&n.defaultValue.indexOf(this.prefix)>-1&&delete n.defaultValue,e};for(;s=this.nestingRegexp.exec(e);){let o=[];n={...a},n=n.replace&&!he(n.replace)?n.replace:n,n.applyPostProcessor=!1,delete n.defaultValue;const l=/{.*}/.test(s[1])?s[1].lastIndexOf("}")+1:s[1].indexOf(this.formatSeparator);if(-1!==l&&(o=s[1].slice(l).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),s[1]=s[1].slice(0,l)),r=t(i.call(this,s[1].trim(),n),n),r&&s[0]===e&&!he(r))return r;he(r)||(r=xe(r)),r||(this.logger.warn(`missed to resolve ${s[1]} for nesting ${e}`),r=""),o.length&&(r=o.reduce((e,t)=>this.format(e,t,a.lng,{...a,interpolationkey:s[1].trim()}),r.trim())),e=e.replace(s[0],r),this.regexp.lastIndex=0}return e}}const Qe=e=>{const t={};return(a,s,r)=>{let n=r;r&&r.interpolationkey&&r.formatParams&&r.formatParams[r.interpolationkey]&&r[r.interpolationkey]&&(n={...n,[r.interpolationkey]:void 0});const i=s+JSON.stringify(n);let o=t[i];return o||(o=e(Ae(s),r),t[i]=o),o(a)}},Xe=e=>(t,a,s)=>e(Ae(a),s)(t);class Je{constructor(e={}){this.logger=Re.create("formatter"),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||",";const a=t.cacheInBuiltFormats?Qe:Xe;this.formats={number:a((e,t)=>{const a=new Intl.NumberFormat(e,{...t});return e=>a.format(e)}),currency:a((e,t)=>{const a=new Intl.NumberFormat(e,{...t,style:"currency"});return e=>a.format(e)}),datetime:a((e,t)=>{const a=new Intl.DateTimeFormat(e,{...t});return e=>a.format(e)}),relativetime:a((e,t)=>{const a=new Intl.RelativeTimeFormat(e,{...t});return e=>a.format(e,t.range||"day")}),list:a((e,t)=>{const a=new Intl.ListFormat(e,{...t});return e=>a.format(e)})}}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Qe(t)}format(e,t,a,s={}){const r=t.split(this.formatSeparator);if(r.length>1&&r[0].indexOf("(")>1&&r[0].indexOf(")")<0&&r.find(e=>e.indexOf(")")>-1)){const e=r.findIndex(e=>e.indexOf(")")>-1);r[0]=[r[0],...r.splice(1,e)].join(this.formatSeparator)}return r.reduce((e,t)=>{const{formatName:r,formatOptions:n}=(e=>{let t=e.toLowerCase().trim();const a={};if(e.indexOf("(")>-1){const s=e.split("(");t=s[0].toLowerCase().trim();const r=s[1].substring(0,s[1].length-1);"currency"===t&&r.indexOf(":")<0?a.currency||(a.currency=r.trim()):"relativetime"===t&&r.indexOf(":")<0?a.range||(a.range=r.trim()):r.split(";").forEach(e=>{if(e){const[t,...s]=e.split(":"),r=s.join(":").trim().replace(/^'+|'+$/g,""),n=t.trim();a[n]||(a[n]=r),"false"===r&&(a[n]=!1),"true"===r&&(a[n]=!0),isNaN(r)||(a[n]=parseInt(r,10))}})}return{formatName:t,formatOptions:a}})(t);if(this.formats[r]){let t=e;try{const i=s?.formatParams?.[s.interpolationkey]||{},o=i.locale||i.lng||s.locale||s.lng||a;t=this.formats[r](e,o,{...n,...s,...i})}catch(i){this.logger.warn(i)}return t}return this.logger.warn(`there was no format function for ${r}`),e},e)}}class Ye extends Le{constructor(e,t,a,s={}){super(),this.backend=e,this.store=t,this.services=a,this.languageUtils=a.languageUtils,this.options=s,this.logger=Re.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=s.maxParallelReads||10,this.readingCalls=0,this.maxRetries=s.maxRetries>=0?s.maxRetries:5,this.retryTimeout=s.retryTimeout>=1?s.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(a,s.backend,s)}queueLoad(e,t,a,s){const r={},n={},i={},o={};return e.forEach(e=>{let s=!0;t.forEach(t=>{const i=`${e}|${t}`;!a.reload&&this.store.hasResourceBundle(e,t)?this.state[i]=2:this.state[i]<0||(1===this.state[i]?void 0===n[i]&&(n[i]=!0):(this.state[i]=1,s=!1,void 0===n[i]&&(n[i]=!0),void 0===r[i]&&(r[i]=!0),void 0===o[t]&&(o[t]=!0)))}),s||(i[e]=!0)}),(Object.keys(r).length||Object.keys(n).length)&&this.queue.push({pending:n,pendingCount:Object.keys(n).length,loaded:{},errors:[],callback:s}),{toLoad:Object.keys(r),pending:Object.keys(n),toLoadLanguages:Object.keys(i),toLoadNamespaces:Object.keys(o)}}loaded(e,t,a){const s=e.split("|"),r=s[0],n=s[1];t&&this.emit("failedLoading",r,n,t),!t&&a&&this.store.addResourceBundle(r,n,a,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&a&&(this.state[e]=0);const i={};this.queue.forEach(a=>{((e,t,a)=>{const{obj:s,k:r}=ye(e,t,Object);s[r]=s[r]||[],s[r].push(a)})(a.loaded,[r],n),((e,t)=>{void 0!==e.pending[t]&&(delete e.pending[t],e.pendingCount--)})(a,e),t&&a.errors.push(t),0!==a.pendingCount||a.done||(Object.keys(a.loaded).forEach(e=>{i[e]||(i[e]={});const t=a.loaded[e];t.length&&t.forEach(t=>{void 0===i[e][t]&&(i[e][t]=!0)})}),a.done=!0,a.errors.length?a.callback(a.errors):a.callback())}),this.emit("loaded",i),this.queue=this.queue.filter(e=>!e.done)}read(e,t,a,s=0,r=this.retryTimeout,n){if(!e.length)return n(null,{});if(this.readingCalls>=this.maxParallelReads)return void this.waitingReads.push({lng:e,ns:t,fcName:a,tried:s,wait:r,callback:n});this.readingCalls++;const i=(i,o)=>{if(this.readingCalls--,this.waitingReads.length>0){const e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}i&&o&&s<this.maxRetries?setTimeout(()=>{this.read.call(this,e,t,a,s+1,2*r,n)},r):n(i,o)},o=this.backend[a].bind(this.backend);if(2!==o.length)return o(e,t,i);try{const a=o(e,t);a&&"function"==typeof a.then?a.then(e=>i(null,e)).catch(i):i(null,a)}catch(l){i(l)}}prepareLoading(e,t,a={},s){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),s&&s();he(e)&&(e=this.languageUtils.toResolveHierarchy(e)),he(t)&&(t=[t]);const r=this.queueLoad(e,t,a,s);if(!r.toLoad.length)return r.pending.length||s(),null;r.toLoad.forEach(e=>{this.loadOne(e)})}load(e,t,a){this.prepareLoading(e,t,{},a)}reload(e,t,a){this.prepareLoading(e,t,{reload:!0},a)}loadOne(e,t=""){const a=e.split("|"),s=a[0],r=a[1];this.read(s,r,"read",void 0,void 0,(a,n)=>{a&&this.logger.warn(`${t}loading namespace ${r} for language ${s} failed`,a),!a&&n&&this.logger.log(`${t}loaded namespace ${r} for language ${s}`,n),this.loaded(e,a,n)})}saveMissing(e,t,a,s,r,n={},i=()=>{}){if(!this.services?.utils?.hasLoadedNamespace||this.services?.utils?.hasLoadedNamespace(t)){if(null!=a&&""!==a){if(this.backend?.create){const l={...n,isUpdate:r},d=this.backend.create.bind(this.backend);if(d.length<6)try{let r;r=5===d.length?d(e,t,a,s,l):d(e,t,a,s),r&&"function"==typeof r.then?r.then(e=>i(null,e)).catch(i):i(null,r)}catch(o){i(o)}else d(e,t,a,s,i,l)}e&&e[0]&&this.store.addResource(e[0],t,a,s)}}else this.logger.warn(`did not save key "${a}" as the namespace "${t}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")}}const Ze=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if("object"==typeof e[1]&&(t=e[1]),he(e[1])&&(t.defaultValue=e[1]),he(e[2])&&(t.tDescription=e[2]),"object"==typeof e[2]||"object"==typeof e[3]){const a=e[3]||e[2];Object.keys(a).forEach(e=>{t[e]=a[e]})}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),et=e=>(he(e.ns)&&(e.ns=[e.ns]),he(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),he(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs?.indexOf?.("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),"boolean"==typeof e.initImmediate&&(e.initAsync=e.initImmediate),e),tt=()=>{};class at extends Le{constructor(e={},t){var a;if(super(),this.options=et(e),this.services={},this.logger=Re,this.modules={external:[]},a=this,Object.getOwnPropertyNames(Object.getPrototypeOf(a)).forEach(e=>{"function"==typeof a[e]&&(a[e]=a[e].bind(a))}),t&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,t),this;setTimeout(()=>{this.init(e,t)},0)}}init(e={},t){this.isInitializing=!0,"function"==typeof e&&(t=e,e={}),null==e.defaultNS&&e.ns&&(he(e.ns)?e.defaultNS=e.ns:e.ns.indexOf("translation")<0&&(e.defaultNS=e.ns[0]));const a=Ze();this.options={...a,...this.options,...et(e)},this.options.interpolation={...a.interpolation,...this.options.interpolation},void 0!==e.keySeparator&&(this.options.userDefinedKeySeparator=e.keySeparator),void 0!==e.nsSeparator&&(this.options.userDefinedNsSeparator=e.nsSeparator);const s=e=>e?"function"==typeof e?new e:e:null;if(!this.options.isClone){let e;this.modules.logger?Re.init(s(this.modules.logger),this.options):Re.init(null,this.options),e=this.modules.formatter?this.modules.formatter:Je;const t=new Ve(this.options);this.store=new Me(this.options.resources,this.options);const r=this.services;r.logger=Re,r.resourceStore=this.store,r.languageUtils=t,r.pluralResolver=new We(t,{prepend:this.options.pluralSeparator,simplifyPluralSuffix:this.options.simplifyPluralSuffix});this.options.interpolation.format&&this.options.interpolation.format!==a.interpolation.format&&this.logger.deprecate("init: you are still using the legacy format function, please use the new approach: https://www.i18next.com/translation-function/formatting"),!e||this.options.interpolation.format&&this.options.interpolation.format!==a.interpolation.format||(r.formatter=s(e),r.formatter.init&&r.formatter.init(r,this.options),this.options.interpolation.format=r.formatter.format.bind(r.formatter)),r.interpolator=new Ge(this.options),r.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},r.backendConnector=new Ye(s(this.modules.backend),r.resourceStore,r,this.options),r.backendConnector.on("*",(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(r.languageDetector=s(this.modules.languageDetector),r.languageDetector.init&&r.languageDetector.init(r,this.options.detection,this.options)),this.modules.i18nFormat&&(r.i18nFormat=s(this.modules.i18nFormat),r.i18nFormat.init&&r.i18nFormat.init(this)),this.translator=new Ue(this.services,this.options),this.translator.on("*",(e,...t)=>{this.emit(e,...t)}),this.modules.external.forEach(e=>{e.init&&e.init(this)})}if(this.format=this.options.interpolation.format,t||(t=tt),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&"dev"!==e[0]&&(this.options.lng=e[0])}this.services.languageDetector||this.options.lng||this.logger.warn("init: no languageDetector is used and no lng is defined");["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(e=>{this[e]=(...t)=>this.store[e](...t)});["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(e=>{this[e]=(...t)=>(this.store[e](...t),this)});const r=fe(),n=()=>{const e=(e,a)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),r.resolve(a),t(e,a)};if(this.languages&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initAsync?n():setTimeout(n,0),r}loadResources(e,t=tt){let a=t;const s=he(e)?e:this.language;if("function"==typeof e&&(a=e),!this.options.resources||this.options.partialBundledLanguages){if("cimode"===s?.toLowerCase()&&(!this.options.preload||0===this.options.preload.length))return a();const e=[],t=t=>{if(!t)return;if("cimode"===t)return;this.services.languageUtils.toResolveHierarchy(t).forEach(t=>{"cimode"!==t&&e.indexOf(t)<0&&e.push(t)})};if(s)t(s);else{this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(e=>t(e))}this.options.preload?.forEach?.(e=>t(e)),this.services.backendConnector.load(e,this.options.ns,e=>{e||this.resolvedLanguage||!this.language||this.setResolvedLanguage(this.language),a(e)})}else a(null)}reloadResources(e,t,a){const s=fe();return"function"==typeof e&&(a=e,e=void 0),"function"==typeof t&&(a=t,t=void 0),e||(e=this.languages),t||(t=this.options.ns),a||(a=tt),this.services.backendConnector.reload(e,t,e=>{s.resolve(),a(e)}),s}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return"backend"===e.type&&(this.modules.backend=e),("logger"===e.type||e.log&&e.warn&&e.error)&&(this.modules.logger=e),"languageDetector"===e.type&&(this.modules.languageDetector=e),"i18nFormat"===e.type&&(this.modules.i18nFormat=e),"postProcessor"===e.type&&Oe.addPostProcessor(e),"formatter"===e.type&&(this.modules.formatter=e),"3rdParty"===e.type&&this.modules.external.push(e),this}setResolvedLanguage(e){if(e&&this.languages&&!(["cimode","dev"].indexOf(e)>-1)){for(let e=0;e<this.languages.length;e++){const t=this.languages[e];if(!(["cimode","dev"].indexOf(t)>-1)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}!this.resolvedLanguage&&this.languages.indexOf(e)<0&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,t){this.isLanguageChangingTo=e;const a=fe();this.emit("languageChanging",e);const s=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},r=(r,n)=>{n?this.isLanguageChangingTo===e&&(s(n),this.translator.changeLanguage(n),this.isLanguageChangingTo=void 0,this.emit("languageChanged",n),this.logger.log("languageChanged",n)):this.isLanguageChangingTo=void 0,a.resolve((...e)=>this.t(...e)),t&&t(r,(...e)=>this.t(...e))},n=t=>{e||t||!this.services.languageDetector||(t=[]);const a=he(t)?t:t&&t[0],n=this.store.hasLanguageSomeTranslations(a)?a:this.services.languageUtils.getBestMatchFromCodes(he(t)?[t]:t);n&&(this.language||s(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector?.cacheUserLanguage?.(n)),this.loadResources(n,e=>{r(e,n)})};return e||!this.services.languageDetector||this.services.languageDetector.async?!e&&this.services.languageDetector&&this.services.languageDetector.async?0===this.services.languageDetector.detect.length?this.services.languageDetector.detect().then(n):this.services.languageDetector.detect(n):n(e):n(this.services.languageDetector.detect()),a}getFixedT(e,t,a){const s=(e,t,...r)=>{let n;n="object"!=typeof t?this.options.overloadTranslationOptionHandler([e,t].concat(r)):{...t},n.lng=n.lng||s.lng,n.lngs=n.lngs||s.lngs,n.ns=n.ns||s.ns,""!==n.keyPrefix&&(n.keyPrefix=n.keyPrefix||a||s.keyPrefix);const i=this.options.keySeparator||".";let o;return n.keyPrefix&&Array.isArray(e)?o=e.map(e=>("function"==typeof e&&(e=Fe(e,{...this.options,...t})),`${n.keyPrefix}${i}${e}`)):("function"==typeof e&&(e=Fe(e,{...this.options,...t})),o=n.keyPrefix?`${n.keyPrefix}${i}${e}`:e),this.t(o,n)};return he(e)?s.lng=e:s.lngs=e,s.ns=t,s.keyPrefix=a,s}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,t={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const a=t.lng||this.resolvedLanguage||this.languages[0],s=!!this.options&&this.options.fallbackLng,r=this.languages[this.languages.length-1];if("cimode"===a.toLowerCase())return!0;const n=(e,t)=>{const a=this.services.backendConnector.state[`${e}|${t}`];return-1===a||0===a||2===a};if(t.precheck){const e=t.precheck(this,n);if(void 0!==e)return e}return!!this.hasResourceBundle(a,e)||(!(this.services.backendConnector.backend&&(!this.options.resources||this.options.partialBundledLanguages))||!(!n(a,e)||s&&!n(r,e)))}loadNamespaces(e,t){const a=fe();return this.options.ns?(he(e)&&(e=[e]),e.forEach(e=>{this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}),this.loadResources(e=>{a.resolve(),t&&t(e)}),a):(t&&t(),Promise.resolve())}loadLanguages(e,t){const a=fe();he(e)&&(e=[e]);const s=this.options.preload||[],r=e.filter(e=>s.indexOf(e)<0&&this.services.languageUtils.isSupportedCode(e));return r.length?(this.options.preload=s.concat(r),this.loadResources(e=>{a.resolve(),t&&t(e)}),a):(t&&t(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language)),!e)return"rtl";try{const t=new Intl.Locale(e);if(t&&t.getTextInfo){const e=t.getTextInfo();if(e&&e.direction)return e.direction}}catch(a){}const t=this.services?.languageUtils||new Ve(Ze());return e.toLowerCase().indexOf("-latn")>1?"ltr":["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"].indexOf(t.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(e={},t){const a=new at(e,t);return a.createInstance=at.createInstance,a}cloneInstance(e={},t=tt){const a=e.forkResourceStore;a&&delete e.forkResourceStore;const s={...this.options,...e,isClone:!0},r=new at(s);void 0===e.debug&&void 0===e.prefix||(r.logger=r.logger.clone(e));if(["store","services","language"].forEach(e=>{r[e]=this[e]}),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},a){const e=Object.keys(this.store.data).reduce((e,t)=>(e[t]={...this.store.data[t]},e[t]=Object.keys(e[t]).reduce((a,s)=>(a[s]={...e[t][s]},a),e[t]),e),{});r.store=new Me(e,s),r.services.resourceStore=r.store}return r.translator=new Ue(r.services,s),r.translator.on("*",(e,...t)=>{r.emit(e,...t)}),r.init(s,t),r.translator.options=s,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const st=at.createInstance();function rt(e,t){t?.stopPropagation();window.open(e,"_blank","noopener,noreferrer")||navigator.clipboard.writeText(e).then(()=>{o.toast.info(st.t("link_copied"))})}function nt(...e){return n.twMerge(r.clsx(e))}st.createInstance,st.dir,st.init,st.loadResources,st.reloadResources,st.use,st.changeLanguage,st.getFixedT,st.t,st.exists,st.setDefaultNamespace,st.hasLoadedNamespace,st.loadNamespaces,st.loadLanguages;const it=e=>{if(null==e)return e;if("string"==typeof e)return e.trim();if(Array.isArray(e))return e.map(it);if("object"==typeof e&&e.constructor===Object){const t={};for(const[a,s]of Object.entries(e))t[a]=it(s);return t}return e},ot=s.cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-all duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{primary:"bg-primary text-primary-foreground hover:bg-primary-hover shadow-sm hover:shadow-md active:scale-[0.98]",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary-hover border border-input shadow-sm",tertiary:"bg-background text-foreground hover:bg-accent hover:text-accent-foreground border border-border",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground",subtle:"text-muted-foreground hover:text-foreground hover:bg-accent/50",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90 shadow-sm hover:shadow-md",link:"text-primary underline-offset-4 hover:underline",icon:"bg-transparent border border-input hover:bg-accent hover:text-accent-foreground p-2",loading:"bg-primary/50 text-primary-foreground cursor-wait",default:"bg-primary text-primary-foreground hover:bg-primary/90",action:"bg-primary/10 text-primary hover:bg-primary/20 border border-primary/30","icon-only":"bg-transparent border border-input hover:bg-accent hover:text-accent-foreground p-2","external-link":"bg-transparent text-muted-foreground hover:text-foreground hover:bg-accent/50 transition-colors","action-primary":"bg-primary text-primary-foreground hover:bg-primary/90 shadow-sm","action-secondary":"bg-secondary text-secondary-foreground hover:bg-secondary/80 border border-input"},size:{sm:"h-8 px-3 text-xs rounded",md:"h-10 px-4 py-2 text-sm rounded-md",lg:"h-12 px-8 text-base rounded-lg",xl:"h-14 px-10 text-lg rounded-lg",icon:"h-10 w-10","icon-sm":"h-8 w-8","icon-xs":"h-6 w-6",default:"h-10 px-4 py-2"}},defaultVariants:{variant:"primary",size:"md"}}),lt=B.forwardRef(({className:t,variant:s,size:r,asChild:n=!1,...i},o)=>{const l=n?a.Slot:"button";return e.jsx(l,{className:nt(ot({variant:s,size:r,className:t})),ref:o,...i})});lt.displayName="Button";const dt=t.forwardRef(({variant:t="default",className:a,children:s,...r},n)=>e.jsx(lt,{ref:n,variant:"action",size:"sm",className:nt("h-7 px-2 text-xs",a),...r,children:s||e.jsx(l.EllipsisVertical,{size:12})}));dt.displayName="ActionButton";const ct=B.forwardRef(({className:t,type:a,...s},r)=>e.jsx("input",{type:a,className:nt("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",t),ref:r,...s}));ct.displayName="Input";const ut=s.cva("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),mt=B.forwardRef(({className:t,...a},s)=>e.jsx(W.Root,{ref:s,className:nt(ut(),t),...a}));mt.displayName=W.Root.displayName;const pt=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("rounded-lg border bg-card text-card-foreground shadow-sm",t),...a}));pt.displayName="Card";const ht=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("flex flex-col space-y-1.5 p-6",t),...a}));ht.displayName="CardHeader";const ft=B.forwardRef(({className:t,...a},s)=>e.jsx("h3",{ref:s,className:nt("text-2xl font-semibold leading-none tracking-tight",t),...a}));ft.displayName="CardTitle";const xt=B.forwardRef(({className:t,...a},s)=>e.jsx("p",{ref:s,className:nt("text-sm text-muted-foreground",t),...a}));xt.displayName="CardDescription";const gt=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("p-6 pt-0",t),...a}));gt.displayName="CardContent";const bt=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("flex items-center p-6 pt-0",t),...a}));bt.displayName="CardFooter";const vt=H.Root,yt=H.Trigger,Nt=H.Portal,jt=H.Close,wt=B.forwardRef(({className:t,...a},s)=>e.jsx(H.Overlay,{ref:s,className:nt("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...a}));wt.displayName=H.Overlay.displayName;const kt=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(Nt,{children:[e.jsx(wt,{}),e.jsxs(H.Content,{ref:r,className:nt("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...s,children:[a,e.jsxs(H.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[e.jsx(l.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));kt.displayName=H.Content.displayName;const Ct=({className:t,...a})=>e.jsx("div",{className:nt("flex flex-col space-y-1.5 text-center sm:text-left",t),...a});Ct.displayName="DialogHeader";const St=({className:t,...a})=>e.jsx("div",{className:nt("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});St.displayName="DialogFooter";const Pt=B.forwardRef(({className:t,...a},s)=>e.jsx(H.Title,{ref:s,className:nt("text-lg font-semibold leading-none tracking-tight",t),...a}));Pt.displayName=H.Title.displayName;const Et=B.forwardRef(({className:t,...a},s)=>e.jsx(H.Description,{ref:s,className:nt("text-sm text-muted-foreground",t),...a}));Et.displayName=H.Description.displayName;const Tt=u.FormProvider,At=B.createContext({}),_t=()=>{const e=B.useContext(At),t=B.useContext(It),{getFieldState:a,formState:s}=u.useFormContext(),r=a(e.name,s);if(!e)throw new Error("useFormField should be used within <FormField>");const{id:n}=t;return{id:n,name:e.name,formItemId:`${n}-form-item`,formDescriptionId:`${n}-form-item-description`,formMessageId:`${n}-form-item-message`,...r}},It=B.createContext({}),Rt=B.forwardRef(({className:t,...a},s)=>{const r=B.useId();return e.jsx(It.Provider,{value:{id:r},children:e.jsx("div",{ref:s,className:nt("space-y-2",t),...a})})});Rt.displayName="FormItem";const Lt=B.forwardRef(({className:t,...a},s)=>{const{error:r,formItemId:n}=_t();return e.jsx(mt,{ref:s,className:nt(r&&"text-destructive",t),htmlFor:n,...a})});Lt.displayName="FormLabel";const Mt=B.forwardRef(({...t},s)=>{const{error:r,formItemId:n,formDescriptionId:i,formMessageId:o}=_t();return e.jsx(a.Slot,{ref:s,id:n,"aria-describedby":r?`${i} ${o}`:`${i}`,"aria-invalid":!!r,...t})});Mt.displayName="FormControl";const Ot=B.forwardRef(({className:t,...a},s)=>{const{formDescriptionId:r}=_t();return e.jsx("p",{ref:s,id:r,className:nt("text-sm text-muted-foreground",t),...a})});Ot.displayName="FormDescription";const Dt=B.forwardRef(({className:t,children:a,...s},r)=>{const{error:n,formMessageId:i}=_t(),o=n?String(n?.message):a;return o?e.jsx("p",{ref:r,id:i,className:nt("text-sm font-medium text-destructive",t),...s,children:o}):null});Dt.displayName="FormMessage";const Ft=K.Root,zt=K.Group,$t=K.Value,Ut=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(K.Trigger,{ref:r,className:nt("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",t),...s,children:[a,e.jsx(K.Icon,{asChild:!0,children:e.jsx(l.ChevronDown,{className:"h-4 w-4 opacity-50"})})]}));Ut.displayName=K.Trigger.displayName;const Vt=B.forwardRef(({className:t,...a},s)=>e.jsx(K.ScrollUpButton,{ref:s,className:nt("flex cursor-default items-center justify-center py-1",t),...a,children:e.jsx(l.ChevronUp,{className:"h-4 w-4"})}));Vt.displayName=K.ScrollUpButton.displayName;const qt=B.forwardRef(({className:t,...a},s)=>e.jsx(K.ScrollDownButton,{ref:s,className:nt("flex cursor-default items-center justify-center py-1",t),...a,children:e.jsx(l.ChevronDown,{className:"h-4 w-4"})}));qt.displayName=K.ScrollDownButton.displayName;const Bt=B.forwardRef(({className:t,children:a,position:s="popper",container:r,collisionBoundary:n,...i},o)=>e.jsx(K.Portal,{container:r,children:e.jsxs(K.Content,{ref:o,className:nt("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===s&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:s,collisionBoundary:n,...i,children:[e.jsx(Vt,{}),e.jsx(K.Viewport,{className:nt("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),e.jsx(qt,{})]})}));Bt.displayName=K.Content.displayName;const Wt=B.forwardRef(({className:t,...a},s)=>e.jsx(K.Label,{ref:s,className:nt("py-1.5 pl-8 pr-2 text-sm font-semibold",t),...a}));Wt.displayName=K.Label.displayName;const Ht=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(K.Item,{ref:r,className:nt("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(K.ItemIndicator,{children:e.jsx(l.Check,{className:"h-4 w-4"})})}),e.jsx(K.ItemText,{children:a})]}));Ht.displayName=K.Item.displayName;const Kt=B.forwardRef(({className:t,...a},s)=>e.jsx(K.Separator,{ref:s,className:nt("-mx-1 my-1 h-px bg-muted",t),...a}));Kt.displayName=K.Separator.displayName;const Gt=B.forwardRef(({className:t,...a},s)=>e.jsx(G.Root,{ref:s,className:nt("peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",t),...a,children:e.jsx(G.Indicator,{className:nt("flex items-center justify-center text-current"),children:e.jsx(l.Check,{className:"h-4 w-4"})})}));Gt.displayName=G.Root.displayName;const Qt=B.forwardRef(({className:t,...a},s)=>e.jsx("textarea",{className:nt("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),ref:s,...a}));Qt.displayName="Textarea";const Xt=s.cva("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground",success:"border-transparent bg-green-500 text-white hover:bg-green-600",warning:"border-transparent bg-yellow-500 text-white hover:bg-yellow-600",sharp:"border-transparent bg-[hsl(78,70%,46%)] text-white hover:bg-[hsl(78,70%,40%)]"}},defaultVariants:{variant:"default"}}),Jt=B.forwardRef(({className:t,variant:a,...s},r)=>e.jsx("div",{ref:r,className:nt(Xt({variant:a}),t),...s}));Jt.displayName="Badge";const Yt={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"};function Zt({size:t="md",className:a}){return e.jsx(l.Loader2,{className:nt("animate-spin text-muted-foreground",Yt[t],a)})}let ea=0;const ta=new Map,aa=e=>{if(ta.has(e))return;const t=setTimeout(()=>{ta.delete(e),ia({type:"REMOVE_TOAST",toastId:e})},1e6);ta.set(e,t)},sa=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{const{toastId:a}=t;return a?aa(a):e.toasts.forEach(e=>{aa(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===a||void 0===a?{...e,open:!1}:e)}}case"REMOVE_TOAST":return void 0===t.toastId?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},ra=[];let na={toasts:[]};function ia(e){na=sa(na,e),ra.forEach(e=>{e(na)})}function oa({...e}){const t=(ea=(ea+1)%Number.MAX_SAFE_INTEGER,ea.toString()),a=()=>ia({type:"DISMISS_TOAST",toastId:t});return ia({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:e=>{e||a()}}}),{id:t,dismiss:a,update:e=>ia({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function la(){const[e,t]=B.useState(na);return B.useEffect(()=>(ra.push(t),()=>{const e=ra.indexOf(t);e>-1&&ra.splice(e,1)}),[e]),{...e,toast:oa,dismiss:e=>ia({type:"DISMISS_TOAST",toastId:e})}}const da=Q.Provider,ca=B.forwardRef(({className:t,...a},s)=>e.jsx(Q.Viewport,{ref:s,className:nt("fixed top-4 left-1/2 transform -translate-x-1/2 z-[100] flex max-h-screen w-full max-w-[420px] flex-col p-4",t),...a}));ca.displayName=Q.Viewport.displayName;const ua=s.cva("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),ma=B.forwardRef(({className:t,variant:a,...s},r)=>e.jsx(Q.Root,{ref:r,className:nt(ua({variant:a}),t),...s}));ma.displayName=Q.Root.displayName;const pa=B.forwardRef(({className:t,...a},s)=>e.jsx(Q.Action,{ref:s,className:nt("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",t),...a}));pa.displayName=Q.Action.displayName;const ha=B.forwardRef(({className:t,...a},s)=>e.jsx(Q.Close,{ref:s,className:nt("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",t),"toast-close":"",...a,children:e.jsx(l.X,{className:"h-4 w-4"})}));ha.displayName=Q.Close.displayName;const fa=B.forwardRef(({className:t,...a},s)=>e.jsx(Q.Title,{ref:s,className:nt("text-sm font-semibold",t),...a}));fa.displayName=Q.Title.displayName;const xa=B.forwardRef(({className:t,...a},s)=>e.jsx(Q.Description,{ref:s,className:nt("text-sm opacity-90",t),...a}));xa.displayName=Q.Description.displayName;const ga=X.Root,ba=X.Trigger,va=B.forwardRef(({className:t,align:a="center",sideOffset:s=4,container:r,...n},i)=>e.jsx(X.Portal,{container:r,children:e.jsx(X.Content,{ref:i,align:a,sideOffset:s,className:nt("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...n})}));va.displayName=X.Content.displayName;const ya=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...a}));ya.displayName="Command";const Na=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:e.jsx("input",{ref:s,className:nt("flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...a})}));Na.displayName="CommandInput";const ja=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("max-h-[300px] overflow-y-auto overflow-x-hidden",t),...a}));ja.displayName="CommandList";const wa=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("py-6 text-center text-sm text-muted-foreground",t),...a}));wa.displayName="CommandEmpty";const ka=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",t),...a}));ka.displayName="CommandGroup";const Ca=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("-mx-1 h-px bg-border",t),...a}));Ca.displayName="CommandSeparator";const Sa=B.forwardRef(({className:t,disabled:a,onSelect:s,value:r,...n},i)=>e.jsx("div",{ref:i,className:nt("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50",t),"data-disabled":a,onClick:()=>!a&&s?.(r||""),...n}));Sa.displayName="CommandItem";const Pa=({className:t,...a})=>e.jsx("span",{className:nt("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});function Ea({className:t,...a}){return e.jsx("div",{className:nt("animate-pulse rounded-md bg-muted",t),...a})}Pa.displayName="CommandShortcut";const Ta={},Aa=(e,t,a,s)=>{La(a)&&Ta[a]||(La(a)&&(Ta[a]=new Date),((e,t,a,s)=>{const r=[a,{code:t,...s||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(r,"warn","react-i18next::",!0);La(r[0])&&(r[0]=`react-i18next:: ${r[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...r):console})(e,t,a,s))},_a=(e,t)=>()=>{if(e.isInitialized)t();else{const a=()=>{setTimeout(()=>{e.off("initialized",a)},0),t()};e.on("initialized",a)}},Ia=(e,t,a)=>{e.loadNamespaces(t,_a(e,a))},Ra=(e,t,a,s)=>{if(La(a)&&(a=[a]),e.options.preload&&e.options.preload.indexOf(t)>-1)return Ia(e,a,s);a.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,_a(e,s))},La=e=>"string"==typeof e,Ma=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Oa={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},Da=e=>Oa[e];let Fa={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(Ma,Da)};let za;const $a={type:"3rdParty",init(e){((e={})=>{Fa={...Fa,...e}})(e.options.react),(e=>{za=e})(e)}},Ua=t.createContext();class Va{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var qa,Ba={exports:{}},Wa={};var Ha,Ka,Ga={};
2
+ /**
3
+ * @license React
4
+ * use-sync-external-store-shim.development.js
5
+ *
6
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
7
+ *
8
+ * This source code is licensed under the MIT license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */var Qa=(Ka||(Ka=1,"production"===process.env.NODE_ENV?Ba.exports=function(){if(qa)return Wa;qa=1;var e=t,a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=e.useState,r=e.useEffect,n=e.useLayoutEffect,i=e.useDebugValue;function o(e){var t=e.getSnapshot;e=e.value;try{var s=t();return!a(e,s)}catch(r){return!0}}var l="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var a=t(),l=s({inst:{value:a,getSnapshot:t}}),d=l[0].inst,c=l[1];return n(function(){d.value=a,d.getSnapshot=t,o(d)&&c({inst:d})},[e,a,t]),r(function(){return o(d)&&c({inst:d}),e(function(){o(d)&&c({inst:d})})},[e]),i(a),a};return Wa.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:l,Wa}():Ba.exports=(Ha||(Ha=1,"production"!==process.env.NODE_ENV&&function(){function e(e){var t=e.getSnapshot;e=e.value;try{var a=t();return!s(e,a)}catch(r){return!0}}"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var a=t,s="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=a.useState,n=a.useEffect,i=a.useLayoutEffect,o=a.useDebugValue,l=!1,d=!1,c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(t,c){l||void 0===a.startTransition||(l=!0);var u=c();if(!d){var m=c();s(u,m)||(d=!0)}var p=(m=r({inst:{value:u,getSnapshot:c}}))[0].inst,h=m[1];return i(function(){p.value=u,p.getSnapshot=c,e(p)&&h({inst:p})},[t,u,c]),n(function(){return e(p)&&h({inst:p}),t(function(){e(p)&&h({inst:p})})},[t]),o(u),u};Ga.useSyncExternalStore=void 0!==a.useSyncExternalStore?a.useSyncExternalStore:c,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Ga)),Ba.exports);const Xa={t:(e,t)=>{return La(t)?t:"object"==typeof(a=t)&&null!==a&&La(t.defaultValue)?t.defaultValue:Array.isArray(e)?e[e.length-1]:e;var a},ready:!1},Ja=()=>()=>{},Ya=(e,a={})=>{const{i18n:s}=a,{i18n:r,defaultNS:n}=t.useContext(Ua)||{},i=s||r||za;i&&!i.reportNamespaces&&(i.reportNamespaces=new Va),i||Aa(i,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const o=t.useMemo(()=>({...Fa,...i?.options?.react,...a}),[i,a]),{useSuspense:l,keyPrefix:d}=o,c=e||n||i?.options?.defaultNS,u=La(c)?[c]:c||["translation"],m=t.useMemo(()=>u,u);i?.reportNamespaces?.addUsedNamespaces?.(m);const p=t.useRef(0),h=t.useCallback(e=>{if(!i)return Ja;const{bindI18n:t,bindI18nStore:a}=o,s=()=>{p.current+=1,e()};return t&&i.on(t,s),a&&i.store.on(a,s),()=>{t&&t.split(" ").forEach(e=>i.off(e,s)),a&&a.split(" ").forEach(e=>i.store.off(e,s))}},[i,o]),f=t.useRef(),x=t.useCallback(()=>{if(!i)return Xa;const e=!(!i.isInitialized&&!i.initializedStoreOnce)&&m.every(e=>((e,t,a={})=>t.languages&&t.languages.length?t.hasLoadedNamespace(e,{lng:a.lng,precheck:(t,s)=>{if(a.bindI18n&&a.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!s(t.isLanguageChangingTo,e))return!1}}):(Aa(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0))(e,i,o)),t=a.lng||i.language,s=p.current,r=f.current;if(r&&r.ready===e&&r.lng===t&&r.keyPrefix===d&&r.revision===s)return r;const n={t:i.getFixedT(t,"fallback"===o.nsMode?m:m[0],d),ready:e,lng:t,keyPrefix:d,revision:s};return f.current=n,n},[i,m,d,o,a.lng]),[g,b]=t.useState(0),{t:v,ready:y}=Qa.useSyncExternalStore(h,x,x);t.useEffect(()=>{if(i&&!y&&!l){const e=()=>b(e=>e+1);a.lng?Ra(i,a.lng,m,e):Ia(i,m,e)}},[i,a.lng,m,y,l,g]);const N=i||{},j=t.useRef(null),w=t.useRef(),k=e=>{const t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;const a=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(a,"__original"))try{Object.defineProperty(a,"__original",{value:e,writable:!1,enumerable:!1,configurable:!1})}catch(s){}return a},C=t.useMemo(()=>{const e=N,t=e?.language;let a=e;e&&(j.current&&j.current.__original===e?w.current!==t?(a=k(e),j.current=a,w.current=t):a=j.current:(a=k(e),j.current=a,w.current=t));const s=[v,a,y];return s.t=v,s.i18n=a,s.ready=y,s},[v,N,y,N.resolvedLanguage,N.language,N.languages]);if(i&&l&&!y)throw new Promise(e=>{const t=()=>e();a.lng?Ra(i,a.lng,m,t):Ia(i,m,t)});return C};const Za=e=>e.normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase();function es({multiple:a,options:s,value:r,onChange:n,getOptionValue:i,getOptionLabel:o,placeholder:d,label:c,icon:u,emptyMessage:m,searchPlaceholder:p,disabled:h,required:f,className:x,sortOptions:g,maxDisplayedBadges:b,popoverContainer:v,onOpen:y,onClose:N}){const{t:j}=Ya(),[w,k]=t.useState(!1),[C,S]=t.useState(""),P=t.useMemo(()=>r?Array.isArray(r)?r:[r]:[],[r]),E=t.useMemo(()=>{if(!v)return;let e=v,t=0;try{for(;e&&t<3;){const a=window.getComputedStyle(e),s=a.overflowY||a.overflow;if(!s||"visible"===s||"unset"===s)break;e=e.parentElement,t++}}catch{}return e??void 0},[v]),T=t.useMemo(()=>{const e=s.map(e=>({original:e,value:i(e),label:o(e)}));return g?e.sort((e,t)=>e.label.localeCompare(t.label,"pt-BR",{sensitivity:"base"})):e},[s,i,o,g]),A=t.useMemo(()=>{if(!C)return T;const e=Za(C);return T.filter(t=>Za(t.label).includes(e))},[T,C]),_=t.useMemo(()=>T.filter(e=>P.includes(e.value)),[T,P]),I=(e,t)=>{t.preventDefault(),t.stopPropagation(),n&&n(a?P.filter(t=>t!==e):"")},R=b?_.slice(0,b):_,L=b&&_.length>b?_.length-b:0;return e.jsxs("div",{className:nt("space-y-2",x),children:[c&&e.jsxs(mt,{children:[c,f&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs(ga,{open:w,onOpenChange:e=>{k(e),e?y?.():(S(""),N?.())},modal:!1,children:[e.jsx(ba,{asChild:!0,children:e.jsxs(lt,{variant:"outline",role:"combobox","aria-expanded":w,disabled:h,className:nt("w-full justify-between min-h-10 h-auto",0===_.length&&"text-muted-foreground"),children:[0===_.length?e.jsxs("span",{className:"flex items-center gap-2",children:[u&&e.jsx(u,{className:"h-4 w-4"}),d]}):a?e.jsxs("div",{className:"flex flex-wrap gap-1.5 flex-1 mr-2",children:[R.map(t=>e.jsxs(Jt,{variant:"secondary",className:"gap-1 pr-1",children:[t.label,e.jsx("button",{type:"button",className:"rounded-full outline-none ring-offset-background focus:ring-2 focus:ring-ring focus:ring-offset-2",onKeyDown:e=>{"Enter"===e.key&&I(t.value,e)},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>I(t.value,e),children:e.jsx(l.X,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})]},t.value)),L>0&&e.jsxs(Jt,{variant:"outline",className:"gap-1",children:["+",L]})]}):e.jsxs("span",{className:"flex items-center gap-2",children:[u&&e.jsx(u,{className:"h-4 w-4"}),_[0]?.label]}),e.jsx(l.ChevronDown,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(va,{className:"w-full p-0 bg-popover z-[60]",align:"start",container:E,collisionBoundary:E,children:e.jsxs(ya,{children:[e.jsx(Na,{placeholder:p,value:C,onChange:e=>S(e.target.value)}),e.jsx(ja,{children:0===s.length?e.jsx(wa,{children:m}):0===A.length?e.jsx(wa,{children:j("no_results")}):e.jsx(ka,{children:A.map(t=>e.jsxs(Sa,{value:t.value,onSelect:()=>(e=>{if(n)if(a){const t=P.includes(e)?P.filter(t=>t!==e):[...P,e];n(t)}else n(e),k(!1)})(t.value),className:"cursor-pointer",children:[e.jsx(l.Check,{className:nt("mr-2 h-4 w-4",P.includes(t.value)?"opacity-100":"opacity-0")}),t.label]},t.value))})})]})})]})]})}function ts({multiple:t=!1,options:a,items:s,value:r,onChange:n,onValueChange:i,getOptionValue:o=e=>e.value,getOptionLabel:d=e=>e.label,placeholder:c,label:u,icon:m,emptyMessage:p,searchPlaceholder:h,disabled:f=!1,required:x=!1,isLoading:g=!1,error:b,className:v,sortOptions:y=!0,maxDisplayedBadges:N,popoverContainer:j,onOpen:w,onClose:k}){const{t:C}=Ya(),S=s||a||[],P=i||n,E=c||C("select_placeholder"),T=p||C("no_results"),A=h||C("search_placeholder");if(g)return e.jsxs("div",{className:nt("space-y-2",v),children:[u&&e.jsxs(mt,{children:[u,x&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(Ea,{className:"h-10 w-full"})]});const _="string"==typeof b?b:b instanceof Error?b.message:b?"Erro ao carregar dados":void 0;return _?e.jsxs("div",{className:nt("space-y-2",v),children:[u&&e.jsxs(mt,{children:[u,x&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs("div",{className:"flex items-center gap-2 p-3 border border-destructive rounded-md bg-destructive/10 text-destructive",children:[e.jsx(l.AlertCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:_})]})]}):e.jsx(es,{multiple:t,options:S,value:r||(t?[]:""),onChange:P,getOptionValue:o,getOptionLabel:d,placeholder:E,label:u,icon:m,emptyMessage:T,searchPlaceholder:A,disabled:f,required:x,className:v,sortOptions:y,maxDisplayedBadges:N,popoverContainer:j,onOpen:w,onClose:k})}var as=Object.defineProperty;class ss{static normalizeBase64Url(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");const a=(4-t.length%4)%4;return t+="=".repeat(a),t}static parseJwtPayload(e){try{const r=e.split(".");if(3!==r.length)return null;const n=r[1];n.length,this.LARGE_PAYLOAD_THRESHOLD;try{const e=this.normalizeBase64Url(n),t=atob(e),a=new Uint8Array(t.length);for(let r=0;r<t.length;r++)a[r]=t.charCodeAt(r);const s=new TextDecoder("utf-8").decode(a);return JSON.parse(s)}catch(t){try{const e=this.normalizeBase64Url(n),t=decodeURIComponent(atob(e).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""));return JSON.parse(t)}catch(a){try{const e=this.normalizeBase64Url(n),t=atob(e);return JSON.parse(t)}catch(s){throw s}}}}catch(r){return null}}static validateTokens(e,t){const a=[],s=[];try{t.split(".")[1],e.split(".")[1];const r=this.parseJwtPayload(t),n=this.parseJwtPayload(e);if(!r){const e="ID token decode falhou - possível problema com base64url encoding";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:a,errors:s}}let i=!0;if(!n){const e="Access token decode falhou - será tentado novamente nas chamadas de API";a.push(e),i=!1}const o=Math.floor(Date.now()/1e3);if(n?.exp&&n.exp<o){const e="Access token expirado - pode precisar de refresh";a.push(e),i=!1}if(r.exp&&r.exp<o){const e="ID token expirado - autenticação inválida";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:i,warnings:a,errors:s}}return{isValid:!0,idTokenValid:!0,accessTokenValid:i,warnings:a,errors:s}}catch(r){const e=`Erro na validação de tokens: ${r}`;return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:a,errors:s}}}static isTokenExpired(e){const t=this.parseJwtPayload(e);return!t||!t.exp||1e3*t.exp<Date.now()}static extractTokenData(e){return this.parseJwtPayload(e)}}((e,t,a)=>{t in e?as(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a})(ss,"LARGE_PAYLOAD_THRESHOLD"+"",1e3);const rs="qualiex_access_token",ns="qualiex_id_token",is="supabase_token",os="oauth_state",ls="oauth_nonce",ds="selected_alias",cs="manual_logout",us={setAccessToken:e=>localStorage.setItem(rs,e),getAccessToken:()=>localStorage.getItem(rs),setIdToken:e=>localStorage.setItem(ns,e),getIdToken:()=>localStorage.getItem(ns),getSupabaseToken:()=>localStorage.getItem(is),setOAuthState:e=>sessionStorage.setItem(os,e),getOAuthState:()=>sessionStorage.getItem(os),clearOAuthState:()=>sessionStorage.removeItem(os),setOAuthNonce:e=>sessionStorage.setItem(ls,e),getOAuthNonce:()=>sessionStorage.getItem(ls),clearOAuthNonce:()=>sessionStorage.removeItem(ls),setSelectedAlias:e=>localStorage.setItem(ds,e),getSelectedAlias:()=>localStorage.getItem(ds),clearSelectedAlias:()=>localStorage.removeItem(ds),generateOAuthState:()=>"Lw==",generateOAuthNonce:()=>{const e=new Uint8Array(32);return crypto.getRandomValues(e),btoa(String.fromCharCode(...e)).replace(/[+/=]/g,"")},hasAllTokens:()=>!(!us.getAccessToken()||!us.getIdToken()),setSupabaseToken:e=>{localStorage.setItem(is,e),us._clearValidationCache()},areAllTokensValid:()=>{const e=us.getAccessToken(),t=us.getIdToken();if(!e||!t)return!1;try{const a=ss.validateTokens(e,t);return!!a.idTokenValid&&a.idTokenValid}catch(a){return!1}},clearExpiredTokens:()=>{let e=!1;const t=us.getAccessToken(),a=us.getIdToken(),s=us.getSupabaseToken();return t&&us.isTokenExpired(t)&&(localStorage.removeItem(rs),e=!0),a&&us.isTokenExpired(a)&&(localStorage.removeItem(ns),e=!0),s&&us.isTokenExpired(s)&&(localStorage.removeItem(is),e=!0),e},clearAll:()=>{localStorage.removeItem(rs),localStorage.removeItem(ns),localStorage.removeItem(is),localStorage.removeItem(ds),localStorage.removeItem(cs),sessionStorage.removeItem(os),sessionStorage.removeItem(ls)},setManualLogout:()=>localStorage.setItem(cs,"true"),isManualLogout:()=>"true"===localStorage.getItem(cs),clearManualLogout:()=>localStorage.removeItem(cs),isTokenExpired:e=>{try{return ss.isTokenExpired(e)}catch{return!0}},_validationCache:{isValid:!1,timestamp:0,cacheValidityMs:3e5},_clearValidationCache:()=>{us._validationCache.isValid=!1,us._validationCache.timestamp=0},isSupabaseTokenValid:()=>{const e=us.getSupabaseToken();if(!e)return!1;if(us.isTokenExpired(e))return us._clearValidationCache(),us._handleExpiredToken(),!1;const t=Date.now();return t-us._validationCache.timestamp<us._validationCache.cacheValidityMs?us._validationCache.isValid:(us._validationCache.isValid=!0,us._validationCache.timestamp=t,!0)},getValidSupabaseToken:()=>us.isSupabaseTokenValid()?us.getSupabaseToken():null,_handleExpiredToken:()=>{us.clearAll(),"undefined"!=typeof window&&(window.location.href="/")},extractTokenData:()=>{if(!us.isSupabaseTokenValid())return null;const e=us.getSupabaseToken();if(!e)return null;try{const t=ss.parseJwtPayload(e);if(!t)return null;const a=t.alias||t.default||t.user_alias,s=t.place_id||null,r=t.place_name||null;let n=t.company_id;if(!n&&a)for(const e in t)if(e.startsWith("co")&&/^co\d+$/.test(e)){const s=t[e];if(s&&"string"==typeof s){const e=s.split(";");if(e.length>7&&e[0]===a){n=e[7];break}}}return{alias:a,companyId:n,placeId:s,placeName:r,payload:t}}catch(t){return us._handleExpiredToken(),null}},getCompanyId:e=>{const t=us.getAccessToken();if(t)try{const a=ss.parseJwtPayload(t);if(a)for(const t in a)if(t.startsWith("co")&&/^co\d+$/.test(t)){const s=a[t];if(s&&"string"==typeof s){const t=s.split(";");if(e&&t.length>7&&t[0]===e)return t[7];if(!e&&t.length>7)return t[7]}}}catch(r){}const a=us.extractTokenData();if(a?.companyId)return a.companyId;const s=us.getIdToken();if(s)try{const t=ss.parseJwtPayload(s);if(t)for(const a in t)if(a.startsWith("co")&&/^co\d+$/.test(a)){const s=t[a];if(s&&"string"==typeof s){const t=s.split(";");if(e&&t.length>7&&t[0]===e)return t[7];if(!e&&t.length>7)return t[7]}}}catch(r){}return null},getCurrentCompanyId:()=>{const e=us.extractTokenData();return e?.companyId||null},getAllCompaniesData:()=>{const e=us.getIdToken();if(!e)return[];try{const t=ss.parseJwtPayload(e);if(!t)return[];const a=[];for(const e in t)if(e.startsWith("co")&&/^co\d+$/.test(e)){const s=t[e];if(s&&"string"==typeof s){const e=s.split(";");e.length>=4&&a.push({id:e.length>7?e[7]:"",alias:e[0].trim(),name:e[3].trim(),payload:t})}}return a}catch{return[]}}};var ms=Object.defineProperty,ps=(e,t,a)=>((e,t,a)=>t in e?ms(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const hs=new class{constructor(){ps(this,"errors",[]),ps(this,"toastCount",0),ps(this,"lastToastTime",0)}handleError(e,t=!0){const a="string"==typeof e?e:e.message;if(this.errors.push({id:Date.now().toString(),message:a,timestamp:Date.now(),count:1}),t&&this.shouldShowToast()){oa({title:this.getErrorTitle(a),description:a,variant:"destructive"})}}getErrorTitle(e){const t=e.toLowerCase();return t.includes("401")||t.includes("unauthorized")||t.includes("expirou")?"Sessão Expirada":t.includes("token")||t.includes("autenticação")?"Erro de Autenticação":t.includes("api")||t.includes("network")?"Erro de Conexão":"Erro"}success(e,t){oa({title:e,description:t,variant:"default"})}shouldShowToast(){const e=Date.now();return e-this.lastToastTime>6e4&&(this.toastCount=0),this.toastCount<3&&(this.toastCount++,this.lastToastTime=e,!0)}getErrors(){return this.errors.slice(-50)}clearErrors(){this.errors=[]}};var fs=Object.defineProperty,xs=(e,t,a)=>((e,t,a)=>t in e?fs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const gs=(void 0).VITE_SUPABASE_URL,bs=(void 0).VITE_SUPABASE_PUBLISHABLE_KEY,vs=class e{constructor(){xs(this,"client"),xs(this,"currentToken",null),xs(this,"instanceCount",0),this.instanceCount++,this.client=this.createClientWithToken(null)}createClientWithToken(e){const t={apikey:bs};e&&this.isTokenValid(e)&&(t.Authorization=`Bearer ${e}`);return x.createClient(gs,bs,{auth:{persistSession:!1,autoRefreshToken:!1,detectSessionInUrl:!1,storage:void 0},global:{headers:t,fetch:async(e,t)=>("string"==typeof e?e:e.url).includes("/auth/v1/user")?new Response(JSON.stringify({error:"blocked"}),{status:401,headers:{"Content-Type":"application/json"}}):fetch(e,t)}})}static getInstance(){return e.instance||(e.instance=new e),e.instance}getClient(){const e=us.getValidSupabaseToken();return e!==this.currentToken&&(this.client=this.createClientWithToken(e),this.currentToken=e),this.client}isTokenValid(e){try{const t=JSON.parse(atob(e.split(".")[1])),a=Math.floor(Date.now()/1e3);return t.exp>a}catch(t){return hs.handleError(t instanceof Error?t:"❌ Supabase - Error validating token",!1),!1}}};xs(vs,"instance");let ys=vs;function Ns(){return ys.getInstance().getClient()}class js{static async generateToken(e,t,a,s=!1){try{if(!s){const e=us.getSupabaseToken();if(e&&us.isSupabaseTokenValid())return e}const r=Ns(),{data:n,error:i}=await r.functions.invoke("validate-token",{body:{access_token:e,alias:t}});return i&&(i.message?.includes("401")||i.message?.includes("Unauthorized"))?(a?.(),null):n?.access_token&&n.access_token?(us.setSupabaseToken(n.access_token),n.access_token):null}catch(r){return r instanceof Error&&(r.message.includes("401")||r.message.includes("Unauthorized"))&&a?.(),null}}}var ws=Object.defineProperty,ks=(e,t,a)=>((e,t,a)=>t in e?ws(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);class Cs{static setLogoutCallback(e){this.onLogoutCallback=e}static async attemptRegeneration(){if(this.isRegenerating)return null;this.isRegenerating=!0;try{const e=us.getAccessToken(),t=us.getSelectedAlias();if(!e||!t)return null;const a=await js.generateToken(e,t,this.onLogoutCallback||void 0,!1);return a?(us.setSupabaseToken(a),a):null}catch(e){return null}finally{this.isRegenerating=!1}}}ks(Cs,"isRegenerating",!1),ks(Cs,"onLogoutCallback",null);class Ss{static handleError(e){if(!e)return!1;const t=e.message||e.toString();return!!this.isAuthenticationError(e,t)&&(us.clearAll(),window.location.href="/",!0)}static isAuthenticationError(e,t){if(401===e.status||401===e.statusCode)return!0;const a=t.toLowerCase();return["401","unauthorized","token","expired","invalid","authentication","login","session"].some(e=>a.includes(e))}static async wrapAsync(e){try{return await e}catch(t){if(!this.handleError(t))throw t;throw new Error("Sua sessão expirou. Você será redirecionado para fazer login novamente.")}}}var Ps=Object.defineProperty;class Es{static async handleApiError(e){if(!e||this.isRetrying)return!1;const t=e.status||e.statusCode,a=e.message||e.toString();if(401===t||a.includes("401")||a.includes("Unauthorized")){this.isRetrying=!0;try{return await Cs.attemptRegeneration()?(this.isRetrying=!1,!0):(Ss.handleError(e),this.isRetrying=!1,!1)}catch(s){return Ss.handleError(e),this.isRetrying=!1,!1}}return!1}static validateToken(){const e=us.getAccessToken();return e?us.isTokenExpired(e)?{valid:!1,message:"Sua sessão expirou. Você será redirecionado para fazer login."}:{valid:!0}:{valid:!1,message:"Token OAuth não encontrado. Faça login novamente."}}}((e,t,a)=>{((e,t,a)=>{t in e?Ps(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a})(e,t+"",a)})(Es,"isRetrying",!1);var Ts=Object.defineProperty,As=(e,t,a)=>((e,t,a)=>t in e?Ts(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,t+"",a);const _s=new class{constructor(){As(this,"baseUrl",(void 0).VITE_QUALIEX_API_URL)}async makeApiCall(e,t,a){const s=Es.validateToken();if(!s.valid)throw new Error(s.message||"Token inválido");const r=us.getAccessToken();if(!r)throw new Error("Token Qualiex não encontrado");if(!a||""===a.trim())throw new Error("Alias da unidade é obrigatório para chamadas à API do Qualiex");const n=new URL(e,this.baseUrl);Object.entries(t).forEach(([e,t])=>{n.searchParams.append(e,t)});const i=await fetch(n.toString(),{method:"GET",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json",Accept:"application/json","un-alias":a}});if(!i.ok){const e=new Error(`API call failed: ${i.status} ${i.statusText}`);throw e.status=i.status,e.statusCode=i.status,e}return await i.json()}mapToQualiexUser(e){const t=e.status||e.userStatus||"",a=void 0!==e.isActive?e.isActive:"active"===t.toLowerCase()||"ACTIVE"===t.toUpperCase();return{id:e.id||e.ID||"",userId:e.userId||String(e.ID),userName:e.userName||"Nome não disponível",userEmail:e.userEmail||"Email não disponível",placeId:null,placeName:e.placeName||null,roleId:e.roleId||void 0,roleName:e.roleName||void 0,companyId:e.companyId||void 0,companyName:e.companyName||void 0,isActive:a,status:t||void 0}}async fetchUsers(e,t){try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"active"},e);let s=a;if(a.data)s=a.data;else{if(!Array.isArray(a))return hs.handleError("[QualiexApi] Formato de resposta inesperado",!1),[];s=a}if(!Array.isArray(s))return hs.handleError("[QualiexApi] Resposta não é um array",!1),[];return s.map(this.mapToQualiexUser)}catch(a){if(await Es.handleApiError(a))try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"active"},e);let s=a;if(a.data)s=a.data;else{if(!Array.isArray(a))return hs.handleError("[QualiexApi] Formato de resposta inesperado após retry",!1),[];s=a}return Array.isArray(s)?s.map(this.mapToQualiexUser):(hs.handleError("[QualiexApi] Resposta não é um array após retry",!1),[])}catch(s){return hs.handleError(s instanceof Error?s:"Erro ao buscar usuários após renovação de token",!0),[]}const r=a instanceof Error?a.message:"Erro ao buscar usuários da API Qualiex";return hs.handleError(r,!0),[]}}async fetchUserById(e,t,a){try{return(await this.fetchUsers(t,a)).find(t=>t.userId===e)||null}catch(s){return hs.handleError(s instanceof Error?s:"[QualiexApi] Error fetching user by ID"),null}}async fetchActiveUsersMap(e,t){const a=await this.fetchUsers(e,t),s=new Map;return a.forEach(e=>{s.set(e.userId,e)}),s}async fetchAllUsers(e,t){try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"all"},e);let s=a;if(a.data)s=a.data;else{if(!Array.isArray(a))return hs.handleError("[QualiexApi] Formato de resposta inesperado",!1),[];s=a}return Array.isArray(s)?s.map(this.mapToQualiexUser):(hs.handleError("[QualiexApi] Resposta não é um array",!1),[])}catch(a){if(await Es.handleApiError(a))try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"all"},e);let s=a;if(a.data)s=a.data;else{if(!Array.isArray(a))return hs.handleError("[QualiexApi] Formato de resposta inesperado após retry",!1),[];s=a}return Array.isArray(s)?s.map(this.mapToQualiexUser):(hs.handleError("[QualiexApi] Resposta não é um array após retry",!1),[])}catch(s){return hs.handleError(s instanceof Error?s:"Erro ao buscar usuários após renovação de token",!0),[]}return hs.handleError(a instanceof Error?a.message:"Erro ao buscar usuários da API Qualiex",!0),[]}}async getUsers(e){const t=us.extractTokenData();return t&&t.companyId?this.fetchUsers(e,t.companyId):[]}async getAllUsers(e){const t=us.extractTokenData();return t&&t.companyId?this.fetchAllUsers(e,t.companyId):[]}},Is={oauth:{authUrl:(void 0).VITE_OAUTH_AUTH_URL,clientId:(void 0).VITE_OAUTH_CLIENT_ID,responseType:"id_token token",scope:"openid profile email"}},Rs={pagination:{defaultPageSize:25,pageSizeOptions:[10,25,50,100]},sorting:{defaultField:"updated_at",defaultDirection:"desc"}},Ls={debounceDelay:500},Ms=()=>{const e=window.location.origin;return e.includes("localhost")||e.includes("127.0.0.1")||e.includes("id-preview")||e.includes("lovable.dev")||(void 0).DEV},Os={userNameFieldSuffix:"_name",userEmailFieldSuffix:"_email",userUsernameFieldSuffix:"_username"},Ds=()=>Os,Fs={isQualiex:"true"===(void 0).VITE_IS_QUALIEX},zs={success:{created:e=>`${e} criado com sucesso`,updated:e=>`${e} atualizado com sucesso`,deleted:e=>`${e} removido com sucesso`},error:{create:e=>`Erro ao criar ${e}`,update:e=>`Erro ao atualizar ${e}`,delete:e=>`Erro ao remover ${e}`,load:e=>`Erro ao carregar ${e}`}};function $s(e,t){const a=Ds(),s=t||a.userNameFieldSuffix||"_name";return e.endsWith("_id")?e.replace(/_id$/,s):`${e}${s}`}function Us(e,t){const a=Ds(),s=t||a.userEmailFieldSuffix||"_email";return e.endsWith("_id")?e.replace(/_id$/,s):`${e}${s}`}function Vs(e,t){const a=Ds(),s=t||a.userUsernameFieldSuffix||"_username";return e.endsWith("_id")?e.replace(/_id$/,s):`${e}${s}`}function qs(e,t){return t&&t.length>0?t.map(e=>({idField:e.idField,nameField:e.nameField||$s(e.idField),emailField:e.emailField||Us(e.idField),usernameField:e.usernameField||Vs(e.idField)})):e&&e.length>0?e.map(e=>({idField:e,nameField:$s(e),emailField:Us(e),usernameField:Vs(e)})):[{idField:"id_user",nameField:"responsible_name"}]}const Bs=new Map;class Ws{static async fetchQualiexUsers(e,t){const a=`${t}_${e}`,s=Bs.get(a);if(s&&Date.now()-s.timestamp<3e5)return s.users;const r=await _s.fetchUsers(e,t);return Bs.set(a,{users:r,timestamp:Date.now()}),r}static extractUserIds(e,t){const a=new Set;for(const s of e)for(const e of t){const t=s[e.idField];t&&"string"==typeof t&&""!==t.trim()&&a.add(t)}return a}static indexUsers(e){const t=new Map;for(const a of e)a.id&&t.set(a.id,a),a.userId&&t.set(a.userId,a);return t}static enrichEntity(e,t,a){const s={...e};for(const r of t){const t=e[r.idField];if(!t)continue;const n=a.get(t);if(n){if(r.nameField){s[r.nameField]||(s[r.nameField]=n.userName||n.displayName||null)}if(r.emailField){s[r.emailField]||(s[r.emailField]=n.userEmail||null)}if(r.usernameField){s[r.usernameField]||(s[r.usernameField]=n.userName||null)}}}return s}static async enrichWithUserData(e,t){if(!Array.isArray(e)||0===e.length)return e;try{if(!us.areAllTokensValid())return e;const a=us.extractTokenData();if(!a)return e;const{alias:s,companyId:r}=a;if(!s||!r)return e;const n=qs(t.userIdFields,t.userFieldsMapping);if(0===this.extractUserIds(e,n).size)return e;const i=await this.fetchQualiexUsers(s,r),o=this.indexUsers(i);return e.map(e=>this.enrichEntity(e,n,o))}catch(a){return hs.handleError(a instanceof Error?a:new Error(`[QualiexEnrichment.${t.entityName}] Erro crítico`),!1),e}}static async enrichWithResponsibleNames(e,t){return this.enrichWithUserData(e,{entityName:t.entityName,userIdFields:["id_user"],userFieldsMapping:[{idField:"id_user",nameField:"responsible_name"}]})}}const Hs=["responsible_name"],Ks=e=>Hs.includes(e);function Gs(e,t,a){const s="string"==typeof e?{tableName:e,searchFields:t||[],schemaName:a||"common"}:{searchFields:e.searchFields||[],schemaName:e.schemaName||"common",...e},{tableName:r,searchFields:n,selectFields:i,schemaName:o,entityName:l,enableQualiexEnrichment:d=!1}=s,c=()=>{if(!us.getValidSupabaseToken())throw new Error("Token de autenticação expirado. Faça login novamente.");return Ns().schema(o).from(r)},u=(e,t,a,s)=>{let r=c().select(i||"*",{count:"exact"});r=r.eq("is_removed",!1),Object.entries(s).forEach(([e,t])=>{void 0!==t&&""!==t&&(Array.isArray(t)?r=r.in(e,t):"object"==typeof t&&t&&"operator"in t?"not_null"===t.operator?r=r.not(e,"is",null):"is_null"===t.operator&&(r=r.is(e,null)):null!==t&&(r=r.eq(e,t)))}),r=((e,t)=>{if(t&&n.length>0){const a=n.map(e=>`${e}.ilike.%${t}%`).join(",");return e.or(a)}return e})(r,e);const o=t.includes(".");return o||Ks(t)||(r=r.order(t,{ascending:"asc"===a})),{query:r,isForeignKey:o}},m=async(e,t,a,r,n)=>{const i=qs(s.userIdFields,s.userFieldsMapping).some(e=>e.nameField===t||e.emailField===t||e.usernameField===t),o=t.includes(".");if(Ks(t)||o||i){const e={search:"",sortField:void 0,sortDirection:void 0,page:1,limit:500},i=await this.getAll(e);if(!i?.data?.length)return i;const d=await Ws.enrichWithUserData(i.data,{entityName:l,userIdFields:s.userIdFields,userFieldsMapping:s.userFieldsMapping});let c;c=o?d.sort((e,s)=>{const r=t.split(".").reduce((e,t)=>e?.[t],e)||"",n=t.split(".").reduce((e,t)=>e?.[t],s)||"",i=String(r).localeCompare(String(n),"pt-BR");return"asc"===a?i:-i}):((e,t,a)=>[...e].sort((e,s)=>{const r=e[t]||"",n=s[t]||"",i=r.localeCompare(n,"pt-BR",{sensitivity:"base"});return"asc"===a?i:-i}))(d,t,a);const u=((e,t=1,a=25)=>{const s=(t-1)*a,r=s+a,n=e.slice(s,r);return{data:n,pagination:{currentPage:t,totalPages:Math.ceil(e.length/a),totalItems:n.length,totalCount:e.length,itemsPerPage:a,hasNextPage:r<e.length,hasPreviousPage:t>1}}})(c,r,n);return{data:u.data,currentPage:u.pagination.currentPage,totalPages:u.pagination.totalPages,totalItems:u.pagination.totalCount,itemsPerPage:u.pagination.itemsPerPage,hasNextPage:u.pagination.hasNextPage,hasPreviousPage:u.pagination.hasPreviousPage}}return await Ws.enrichWithUserData(e,{entityName:l,userIdFields:s.userIdFields,userFieldsMapping:s.userFieldsMapping})};return{async getAll(e={}){const{search:t,sortField:a,sortDirection:n,page:i,limit:o,additionalFilters:c}=(e=>{const{search:t="",sortField:a="updated_at",sortDirection:s="desc",page:r=1,limit:n=25,...i}=e;return{search:t,sortField:a,sortDirection:s,page:r,limit:n,additionalFilters:i}})(e),{query:p}=u(t,a,n,c),h=((e,t,a)=>{const s=(t-1)*a,r=s+a-1;return e.range(s,r)})(p,i,o),{data:f,error:x,count:g}=await h;if(x)throw new Error(`Error fetching ${r}: ${x.message}`);let b=((e,t,a,s)=>{const r=Math.ceil((t||0)/s);return{data:e,currentPage:a,totalPages:r,totalItems:t||0,itemsPerPage:s,hasNextPage:a<r,hasPreviousPage:a>1}})(f||[],g,i,o);if((e=>{if(!d||!l||0===e.length)return!1;const t=qs(s.userIdFields,s.userFieldsMapping);return e.some(e=>t.some(t=>e[t.idField]))})(b.data)){const e=await m(b.data,a,n,i,o);if(!Array.isArray(e))return e;b={...b,data:e}}return b},async getById(e){const{data:t,error:a}=await c().select(i||"*").eq("id",e).maybeSingle();if(a)throw new Error(`Error fetching ${r}: ${a.message}`);return t},async create(e){const t=it(e),a=Object.entries(t).reduce((e,[t,a])=>(void 0!==a&&(e[t]=a),e),{}),{data:s,error:n}=await c().insert(a).select().single();if(n)throw new Error(`Error creating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from create ${r} operation`);return s},async update(e,t){const a={...it(t),updated_at:(new Date).toISOString()},{data:s,error:n}=await c().update(a).eq("id",e).select().single();if(n)throw new Error(`Error updating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from update ${r} operation`);return s},async delete(e){const t={is_removed:!0,updated_at:(new Date).toISOString()},{error:a}=await c().update(t).eq("id",e);if(a)throw new Error(`Error soft deleting ${r}: ${a.message}`)}}}const Qs=()=>{us.clearManualLogout()},Xs=e=>e?.placeId||null,Js=e=>e?.placeName||null,Ys=e=>({placeId:Xs(e),placeName:Js(e)}),Zs=class{static async initialize(){try{if(!us.hasAllTokens()||!us.areAllTokensValid())return us.clearExpiredTokens(),{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null};const t=us.getAccessToken(),a=us.getIdToken();Qs();const s=this.extractUserFromIdToken(a),r=this.extractCompaniesFromIdToken(a),n=this.extractAliasFromAccessToken(t),i=us.extractTokenData(),o=i?.alias;let l=null;if(o&&r.some(e=>e.alias===o))l=o;else{const e=us.getSelectedAlias(),t=e&&r.some(t=>t.alias===e);l=t?e:n||r[0]?.alias||null}!us.isSupabaseTokenValid()&&l&&await Cs.attemptRegeneration();let d=null;if(l){const e=us.getCompanyId(l),t=r.find(e=>e.alias===l);t&&(d={id:e||t.id,name:t.name,alias:t.alias})}let c=null,u=null;if(s?.id&&l){const t=us.getCompanyId(l);if(t)try{const e=(await _s.fetchActiveUsersMap(l,t)).get(s.id);if(e){const t=Ys(e);c=t.placeId,u=t.placeName}}catch(e){}}return{isAuthenticated:!0,isLoading:!1,user:s,alias:l,companies:r,selectedUnit:d,userId:s?.id||null,userAlias:s?.id||null,placeId:c,placeName:u,activePlaceId:c,activePlaceName:u}}catch(e){return{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null}}}static async loginDev(){try{const e=Ns(),{data:t,error:a}=await e.functions.invoke("dev-tokens",{body:{environment:"development"}});if(a)return!1;if(!t?.access_token||!t?.id_token)return!1;const s=new URL("/callback",window.location.origin);return s.hash=`access_token=${t.access_token}&id_token=${t.id_token}&token_type=bearer`,window.location.href=s.toString(),!0}catch(e){return!1}}static loginProd(){const e=us.generateOAuthState();us.setOAuthState(e);const t=us.generateOAuthNonce();us.setOAuthNonce(t);const a=`${window.location.origin}/callback`,s=new URL(Is.oauth.authUrl);s.searchParams.set("client_id",Is.oauth.clientId),s.searchParams.set("response_type",Is.oauth.responseType),s.searchParams.set("scope",Is.oauth.scope),s.searchParams.set("redirect_uri",a),s.searchParams.set("state",e),s.searchParams.set("nonce",t),s.searchParams.set("response_mode","fragment"),Ms(),window.location.href=s.toString()}static async processCallback(){try{if(us.hasAllTokens()){if(!us.getValidSupabaseToken()){us.getAccessToken();await Cs.attemptRegeneration()}return!0}const e=new URLSearchParams(window.location.hash.startsWith("#")?window.location.hash.substring(1):window.location.hash),t=new URLSearchParams(window.location.search),a=a=>e.get(a)||t.get(a),s=a("access_token"),r=a("id_token"),n=a("error");if(n)throw new Error(`Erro OAuth: ${n}`);if(!s||!r)throw new Error("Tokens não encontrados na URL de callback");us.setAccessToken(s),us.setIdToken(r),Qs();const i=this.extractAliasFromAccessToken(s);if(i)us.setSelectedAlias(i);else{const e=this.extractCompaniesFromIdToken(r);if(0===e.length)throw new Error("Nenhuma empresa encontrada nos tokens");us.setSelectedAlias(e[0].alias)}if(!await Cs.attemptRegeneration())throw new Error("Falha ao gerar token Supabase");return us.clearOAuthState(),us.clearOAuthNonce(),!0}catch(e){throw e}}static logout(){us.setManualLogout(),us.clearAll(),window.location.href="/login"}static decodeToken(e){return ss.parseJwtPayload(e)}static extractUserFromIdToken(e){const t=this.decodeToken(e);return t?{id:t.subNewId,email:t.email,name:t.name,identifier:t.identifier}:null}static extractCompaniesFromIdToken(e){const t=this.decodeToken(e);if(!t)return[];const a=[];return Object.keys(t).forEach(e=>{if(e.match(/^co(\d+)$/)&&"string"==typeof t[e]){const s=t[e].split(";");if(s.length>=4)a.push({id:s.length>7?s[7].trim():"",alias:s[0].trim(),name:s[3].trim()});else{const[s,r]=t[e].split("|");s&&r&&a.push({id:"",alias:s.trim(),name:r.trim()})}}}),a}static extractAliasFromAccessToken(e){const t=this.decodeToken(e);return t?.default||null}};Cs.setLogoutCallback(()=>{Zs.logout()});let er=Zs;const tr=t.createContext(void 0),ar=()=>{const e=t.useContext(tr);if(void 0===e)throw new Error("useAuth deve ser usado dentro de um AuthProvider");return e};function sr({queryKey:e,service:a,entityName:s,searchFields:r,additionalFilters:n={},onSuccess:i}){const[l,d]=b.useSearchParams(),c=g.useQueryClient(),{alias:u,userId:m,isAuthenticated:p}=ar(),h=t.useCallback(t=>{const a=`${e}_${t}`,s=l.get(a);return s||(l.get(t)||"")},[l,e]),f=h("search"),x=h("sortField")||Rs.sorting.defaultField,v=h("sortDirection")||Rs.sorting.defaultDirection,y=parseInt(h("page")||"1"),N=parseInt(h("limit")||String(Rs.pagination.defaultPageSize)),j=f,w=t.useMemo(()=>({search:j,sortField:x,sortDirection:v,page:y,limit:N,...n}),[j,x,v,y,N,n]),k=t.useCallback(()=>a.getAll(w),[a,w]),C=g.useQuery({queryKey:[e,u,m,w],queryFn:k,enabled:!!u&&p});if(!C)throw new Error(`useCrud: Query initialization failed for "${s}". Ensure QueryClientProvider is configured in your app root.`);const S=g.useMutation({mutationFn:a.create,onSuccess:()=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(zs.success.created(s)),i?.()},onError:e=>{o.toast.error(`${zs.error.create(s)}: ${e.message}`)}}),P=g.useMutation({mutationFn:({id:e,data:t})=>a.update(e,t),onSuccess:()=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(zs.success.updated(s)),i?.()},onError:e=>{o.toast.error(`${zs.error.update(s)}: ${e.message}`)}}),E=g.useMutation({mutationFn:a.delete,onSuccess:()=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(zs.success.deleted(s))},onError:e=>{o.toast.error(`${zs.error.delete(s)}: ${e.message}`)}}),T=t.useCallback(t=>{const a={...Object.fromEntries(l)};Object.entries(t).forEach(([t,s])=>{const r=`${e}_${t}`;""===s||0===s?delete a[r]:a[r]=String(s)}),delete a.sortField,delete a.sortDirection,d(a)},[l,d,e]),A=t.useCallback(e=>{T({search:e,page:1})},[T]),_=t.useCallback(e=>{T({sortField:e,sortDirection:x===e&&"asc"===v?"desc":"asc",page:1})},[x,v,T]),I=t.useCallback(e=>{T({page:e})},[T]),R=t.useCallback(e=>{T({limit:e,page:1})},[T]),L=t.useCallback(()=>{const t=Object.fromEntries(l),a=`${e}_`,s=Object.fromEntries(Object.entries(t).filter(([e])=>!e.startsWith(a)));d(s)},[d,l,e]),[M,O]=t.useState([]),D=t.useCallback(e=>{O(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),F=t.useCallback(()=>{const e=C?.data?.data.map(e=>e.id)||[];O(t=>t.length===e.length?[]:e)},[C?.data?.data]),z=t.useCallback(()=>{O([])},[]),$=t.useMemo(()=>{const e=C?.data?.data.map(e=>e.id)||[];return e.length>0&&M.length===e.length},[M,C?.data?.data]),U=g.useMutation({mutationFn:async e=>{await Promise.all(e.map(e=>a.delete(e)))},onSuccess:(t,a)=>{c.invalidateQueries({queryKey:[e]}),o.toast.success(`${a.length} ${s}(s) deletado(s) com sucesso`),z()},onError:e=>{o.toast.error(`Erro ao deletar itens: ${e.message}`)}}),V=t.useCallback((e,t)=>{const a=t?t(e):e;e.id?P.mutate({id:e.id,data:a}):S.mutate({...a,alias:u})},[u,S,P]);return{entities:C?.data?.data||[],pagination:{data:C?.data?.data||[],currentPage:C?.data?.currentPage||1,totalPages:C?.data?.totalPages||1,totalItems:C?.data?.totalItems||0,itemsPerPage:C?.data?.itemsPerPage||Rs.pagination.defaultPageSize,hasNextPage:C?.data?.hasNextPage||!1,hasPreviousPage:C?.data?.hasPreviousPage||!1},isLoading:C?.isLoading??!0,isCreating:S?.isPending??!1,isUpdating:P?.isPending??!1,isDeleting:E?.isPending??!1,error:C?.error||null,searchTerm:f,sortField:x,sortDirection:v,currentPage:y,itemsPerPage:N,queryKey:e,createEntity:S.mutate,updateEntity:(e,t)=>P.mutate({id:e,data:t}),deleteEntity:E.mutate,save:V,handleSearch:A,handleSort:_,handlePageChange:I,handleItemsPerPageChange:R,clearFilters:L,refetch:C.refetch,selectedIds:M,selectItem:D,selectAll:F,clearSelection:z,isAllSelected:$,bulkDelete:e=>U.mutateAsync(e),isBulkDeleting:U.isPending}}const rr=J.Root,nr=J.Trigger,ir=J.Portal,or=B.forwardRef(({className:t,...a},s)=>e.jsx(J.Overlay,{className:nt("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...a,ref:s}));or.displayName=J.Overlay.displayName;const lr=B.forwardRef(({className:t,...a},s)=>e.jsxs(ir,{children:[e.jsx(or,{}),e.jsx(J.Content,{ref:s,className:nt("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...a})]}));lr.displayName=J.Content.displayName;const dr=({className:t,...a})=>e.jsx("div",{className:nt("flex flex-col space-y-2 text-center sm:text-left bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-6 rounded-t-lg",t),...a});dr.displayName="AlertDialogHeader";const cr=({className:t,...a})=>e.jsx("div",{className:nt("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});cr.displayName="AlertDialogFooter";const ur=B.forwardRef(({className:t,...a},s)=>e.jsx(J.Title,{ref:s,className:nt("text-lg font-semibold",t),...a}));ur.displayName=J.Title.displayName;const mr=B.forwardRef(({className:t,...a},s)=>e.jsx(J.Description,{ref:s,className:nt("text-sm text-muted-foreground",t),...a}));mr.displayName=J.Description.displayName;const pr=B.forwardRef(({className:t,...a},s)=>e.jsx(J.Action,{ref:s,className:nt(ot(),t),...a}));pr.displayName=J.Action.displayName;const hr=B.forwardRef(({className:t,...a},s)=>e.jsx(J.Cancel,{ref:s,className:nt(ot({variant:"outline"}),"mt-2 sm:mt-0",t),...a}));hr.displayName=J.Cancel.displayName;const fr=({open:t,onOpenChange:a,item:s,onConfirm:r,entityName:n="item",isDeleting:i=!1})=>{const{t:o}=Ya(),d=()=>{a(!1)};return s?e.jsx(rr,{open:t,onOpenChange:d,children:e.jsxs(lr,{className:"sm:max-w-[420px] bg-white",children:[e.jsxs("button",{onClick:d,className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(l.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Fechar"})]}),e.jsxs("div",{className:"flex flex-col items-center text-center space-y-3 py-2",children:[e.jsx("div",{className:"w-16 h-16 rounded-full bg-destructive/10 flex items-center justify-center",children:e.jsx(l.AlertTriangle,{className:"w-8 h-8 text-destructive"})}),e.jsx(ur,{className:"text-xl font-semibold",children:"Tem certeza?"}),e.jsx(mr,{asChild:!0,children:e.jsxs("div",{className:"text-sm text-muted-foreground",children:[e.jsx("p",{children:"Você está prestes a excluir este registro."}),e.jsx("p",{children:"Esta ação não pode ser desfeita."})]})})]}),e.jsxs("div",{className:"flex flex-row gap-2 justify-center mt-6",children:[e.jsx(pr,{onClick:()=>{s&&(r(s),a(!1))},disabled:i,className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",children:o(i?"deleting":"confirm_delete")}),e.jsx(hr,{onClick:d,className:"mt-0 border-none bg-transparent hover:bg-muted text-foreground shadow-none",children:"Cancelar"})]})]})}):null},xr=B.forwardRef(({className:t,...a},s)=>e.jsx("table",{ref:s,className:nt("w-full caption-bottom text-sm",t),...a}));xr.displayName="Table";const gr=B.forwardRef(({className:t,...a},s)=>e.jsx("thead",{ref:s,className:nt("[&_tr]:border-b sticky top-0 z-[1] bg-background",t),...a}));gr.displayName="TableHeader";const br=B.forwardRef(({className:t,...a},s)=>e.jsx("tbody",{ref:s,className:nt("[&_tr:last-child]:border-0",t),...a}));br.displayName="TableBody";const vr=B.forwardRef(({className:t,...a},s)=>e.jsx("tfoot",{ref:s,className:nt("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",t),...a}));vr.displayName="TableFooter";const yr=B.forwardRef(({className:t,...a},s)=>e.jsx("tr",{ref:s,className:nt("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted odd:bg-muted/50",t),...a}));yr.displayName="TableRow";const Nr=B.forwardRef(({className:t,...a},s)=>e.jsx("th",{ref:s,className:nt("h-12 px-4 py-3 text-left align-middle font-medium text-muted-foreground bg-background border-b [&:has([role=checkbox])]:pr-0",t),...a}));Nr.displayName="TableHead";const jr=B.forwardRef(({className:t,...a},s)=>e.jsx("td",{ref:s,className:nt("px-4 py-3 align-middle [&:has([role=checkbox])]:pr-0",t),...a}));jr.displayName="TableCell";const wr=B.forwardRef(({className:t,...a},s)=>e.jsx("caption",{ref:s,className:nt("mt-4 text-sm text-muted-foreground",t),...a}));function kr({rows:t=5,columns:a=4}){return e.jsx("div",{className:"w-full",children:e.jsxs("div",{className:"rounded-md border",children:[e.jsx("div",{className:"border-b bg-muted/50 px-4 py-3",children:e.jsx("div",{className:"flex space-x-4",children:Array.from({length:a}).map((t,a)=>e.jsx(Ea,{className:"h-4 w-24"},a))})}),e.jsx("div",{children:Array.from({length:t}).map((t,s)=>e.jsx("div",{className:"border-b px-4 py-3 last:border-0",children:e.jsx("div",{className:"flex space-x-4",children:Array.from({length:a}).map((t,a)=>e.jsx(Ea,{className:"h-4 w-20"},a))})},s))})]})})}function Cr({count:t=3}){return e.jsx("div",{className:"space-y-4",children:Array.from({length:t}).map((t,a)=>e.jsxs(pt,{children:[e.jsxs(ht,{children:[e.jsx(Ea,{className:"h-4 w-3/4"}),e.jsx(Ea,{className:"h-3 w-1/2"})]}),e.jsx(gt,{children:e.jsxs("div",{className:"space-y-2",children:[e.jsx(Ea,{className:"h-3 w-full"}),e.jsx(Ea,{className:"h-3 w-2/3"})]})})]},a))})}wr.displayName="TableCaption";const Sr={default:l.FileX,search:l.Search,error:l.AlertCircle};function Pr({icon:t,title:a,description:s,action:r,className:n,variant:i="default"}){const o=t?()=>t:Sr[i];return e.jsxs("div",{className:nt("flex flex-col items-center justify-center py-12 px-4 text-center",n),children:[e.jsx("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted mb-4",children:e.jsx(o,{className:"h-8 w-8 text-muted-foreground"})}),e.jsx("h3",{className:"text-lg font-semibold mb-2",children:a}),s&&e.jsx("p",{className:"text-muted-foreground mb-6 max-w-sm",children:s}),r&&e.jsx(lt,{onClick:r.onClick,variant:"outline",children:r.label})]})}const Er=Y.Root,Tr=Y.Trigger,Ar=Y.Group,_r=Y.Portal,Ir=Y.Sub,Rr=Y.RadioGroup,Lr=B.forwardRef(({className:t,inset:a,children:s,...r},n)=>e.jsxs(Y.SubTrigger,{ref:n,className:nt("flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",a&&"pl-8",t),...r,children:[s,e.jsx(l.ChevronRight,{className:"ml-auto h-4 w-4"})]}));Lr.displayName=Y.SubTrigger.displayName;const Mr=B.forwardRef(({className:t,...a},s)=>e.jsx(Y.SubContent,{ref:s,className:nt("z-50 min-w-[8rem] overflow-hidden border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a}));Mr.displayName=Y.SubContent.displayName;const Or=B.forwardRef(({className:t,sideOffset:a=4,...s},r)=>e.jsx(Y.Portal,{children:e.jsx(Y.Content,{ref:r,sideOffset:a,className:nt("z-[100] min-w-[8rem] overflow-hidden rounded-md border bg-white shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 dark:bg-gray-800 dark:border-gray-700",t),...s})}));Or.displayName=Y.Content.displayName;const Dr=B.forwardRef(({className:t,inset:a,...s},r)=>e.jsx(Y.Item,{ref:r,className:nt("relative flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a&&"pl-8",t),...s}));Dr.displayName=Y.Item.displayName;const Fr=B.forwardRef(({className:t,children:a,checked:s,...r},n)=>e.jsxs(Y.CheckboxItem,{ref:n,className:nt("relative flex cursor-default select-none items-center py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:s,...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(Y.ItemIndicator,{children:e.jsx(l.Check,{className:"h-4 w-4"})})}),a]}));Fr.displayName=Y.CheckboxItem.displayName;const zr=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(Y.RadioItem,{ref:r,className:nt("relative flex cursor-default select-none items-center py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(Y.ItemIndicator,{children:e.jsx(l.Circle,{className:"h-2 w-2 fill-current"})})}),a]}));zr.displayName=Y.RadioItem.displayName;const $r=B.forwardRef(({className:t,inset:a,...s},r)=>e.jsx(Y.Label,{ref:r,className:nt("px-2 py-1.5 text-sm font-semibold",a&&"pl-8",t),...s}));$r.displayName=Y.Label.displayName;const Ur=B.forwardRef(({className:t,...a},s)=>e.jsx(Y.Separator,{ref:s,className:nt("-mx-1 my-1 h-px bg-muted",t),...a}));Ur.displayName=Y.Separator.displayName;const Vr=({className:t,...a})=>e.jsx("span",{className:nt("ml-auto text-xs tracking-widest opacity-60",t),...a});Vr.displayName="DropdownMenuShortcut";const qr=({onEdit:t,onDelete:a,onToggleStatus:s,isActive:r=!0,canDelete:n=!0,customActions:i=[],renderAs:o})=>{const{t:d}=Ya(),c=[];if(t){const e={icon:l.Edit,label:d("edit"),onClick:t};c.push(e)}if(i.forEach(e=>{c.push(e)}),s){const e={icon:r?l.PowerOff:l.Power,label:d(r?"deactivate":"activate"),onClick:s};c.push(e)}if(n&&a){const e={icon:l.Trash2,label:d("delete"),onClick:a,destructive:!0};c.push(e)}return"dropdown"===o?e.jsx(e.Fragment,{children:c.map((t,a)=>e.jsxs(Dr,{onClick:t.onClick,className:t.destructive?"text-destructive":"",children:[e.jsx(t.icon,{className:"mr-2 h-4 w-4"}),t.label]},a))}):e.jsx(e.Fragment,{children:c.map((t,a)=>e.jsxs(lt,{variant:"ghost",size:"sm",onClick:t.onClick,className:"w-full justify-start px-2 py-1.5 text-sm font-normal h-7 "+(t.destructive?"text-destructive hover:text-destructive":""),children:[e.jsx(t.icon,{className:"h-4 w-4 mr-2"}),t.label]},a))})},Br=({onEdit:t,onDelete:a,canDelete:s=!0,onToggleStatus:r,isActive:n=!0,customActions:i=[]})=>e.jsxs(Er,{children:[e.jsx(Tr,{asChild:!0,children:e.jsx(lt,{variant:"action",size:"sm",className:"h-7 px-2 text-xs",children:e.jsx(l.EllipsisVertical,{size:12})})}),e.jsx(Or,{align:"end",className:"bg-background border border-border shadow-lg w-[160px]",children:e.jsx(qr,{onEdit:t?e=>{e?.stopPropagation(),t?.()}:void 0,onDelete:a?e=>{e?.stopPropagation(),a?.()}:void 0,onToggleStatus:r?e=>{e?.stopPropagation(),r?.()}:void 0,isActive:n,canDelete:s&&!!a,customActions:i,renderAs:"dropdown"})})]}),Wr=Z.Root,Hr=Z.Trigger,Kr=Z.Group,Gr=Z.Portal,Qr=Z.Sub,Xr=Z.RadioGroup,Jr=B.forwardRef(({className:t,inset:a,children:s,...r},n)=>e.jsxs(Z.SubTrigger,{ref:n,className:nt("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",a&&"pl-8",t),...r,children:[s,e.jsx(l.ChevronRight,{className:"ml-auto h-4 w-4"})]}));Jr.displayName=Z.SubTrigger.displayName;const Yr=B.forwardRef(({className:t,...a},s)=>e.jsx(Z.SubContent,{ref:s,className:nt("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a}));Yr.displayName=Z.SubContent.displayName;const Zr=B.forwardRef(({className:t,...a},s)=>e.jsx(Z.Portal,{children:e.jsx(Z.Content,{ref:s,className:nt("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a})}));Zr.displayName=Z.Content.displayName;const en=B.forwardRef(({className:t,inset:a,...s},r)=>e.jsx(Z.Item,{ref:r,className:nt("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",a&&"pl-8",t),...s}));en.displayName=Z.Item.displayName;const tn=B.forwardRef(({className:t,children:a,checked:s,...r},n)=>e.jsxs(Z.CheckboxItem,{ref:n,className:nt("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:s,...r,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(Z.ItemIndicator,{children:e.jsx(l.Check,{className:"h-4 w-4"})})}),a]}));tn.displayName=Z.CheckboxItem.displayName;const an=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(Z.RadioItem,{ref:r,className:nt("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...s,children:[e.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e.jsx(Z.ItemIndicator,{children:e.jsx(l.Circle,{className:"h-2 w-2 fill-current"})})}),a]}));an.displayName=Z.RadioItem.displayName;const sn=B.forwardRef(({className:t,inset:a,...s},r)=>e.jsx(Z.Label,{ref:r,className:nt("px-2 py-1.5 text-sm font-semibold text-foreground",a&&"pl-8",t),...s}));sn.displayName=Z.Label.displayName;const rn=B.forwardRef(({className:t,...a},s)=>e.jsx(Z.Separator,{ref:s,className:nt("-mx-1 my-1 h-px bg-border",t),...a}));rn.displayName=Z.Separator.displayName;const nn=({className:t,...a})=>e.jsx("span",{className:nt("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});nn.displayName="ContextMenuShortcut";const on=t.memo(({checked:t,onCheckedChange:a})=>e.jsx(Gt,{checked:t,onCheckedChange:a}),(e,t)=>e.checked===t.checked),ln=({manager:a,columns:s,onEdit:r,onView:n,onToggleStatus:i,onDelete:o,renderActions:d,customRowActions:c,enableBulkActions:u=!1,onNew:m,newButtonLabel:p,showNewButton:h=!0,customActions:f=[],hideActionBar:x=!1})=>{const{t:g}=Ya(),{setSearchVisible:b}=ar(),[v,y]=t.useState(!1);t.useEffect(()=>(b(!0),()=>b(!1)),[b]),t.useEffect(()=>{const e=()=>y(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const N=t.useMemo(()=>(()=>{s.length;let e=0;const t=s.map(t=>{if(t.width)return e+=t.width,{...t,calculatedWidth:t.width,isFixed:!0};{const a=t.minWidth||120,s=t.weight||1;return e+=a,{...t,calculatedWidth:a,weight:s,isFixed:!1}}});return e+=50,t.map(e=>e.isFixed?{...e,style:{width:`${e.calculatedWidth}px`}}:{...e,style:{minWidth:`${e.calculatedWidth}px`,width:`${e.calculatedWidth}px`}})})(),[s]),j=!x&&(m||f.length>0);return v?a.isLoading?e.jsx(Cr,{count:3}):0===a.entities.length?e.jsx(Pr,{title:g("empty_title"),description:g("empty_description"),variant:"search"}):e.jsxs("div",{className:"flex flex-col h-full",children:[j&&e.jsx("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:e.jsxs("div",{className:"flex items-center gap-2",children:[m&&h&&e.jsxs(lt,{onClick:m,children:[e.jsx(l.Plus,{size:16,className:"mr-2"}),p||g("new")]}),f.map((t,a)=>{const s=t.icon;return e.jsxs(lt,{onClick:t.action,variant:t.variant||"outline",children:[s&&e.jsx(s,{size:16,className:"mr-2"}),t.label]},a)})]})}),e.jsx("div",{className:"flex-1 overflow-auto space-y-4 p-4",children:a.entities.map(t=>e.jsxs(Wr,{children:[e.jsx(Hr,{asChild:!0,children:e.jsx(pt,{className:nt("overflow-hidden cursor-pointer hover:bg-muted/50",u&&a.selectedIds.includes(t.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),u?a.selectItem(t.id):r?.(t)},children:e.jsx(gt,{className:"p-4",children:e.jsxs("div",{className:"flex items-start gap-3",children:[u&&e.jsx("div",{className:"pt-0.5",onClick:e=>e.stopPropagation(),children:e.jsx(on,{checked:a.selectedIds.includes(t.id),onCheckedChange:()=>a.selectItem(t.id)})}),e.jsxs("div",{className:"flex-1",children:[s.map(a=>e.jsxs("div",{className:"flex justify-between items-start mb-2 last:mb-0",children:[e.jsxs("span",{className:"text-sm font-medium text-muted-foreground min-w-0 mr-2",children:[a.header,":"]}),e.jsx("div",{className:"text-sm text-foreground text-right min-w-0 flex-1",children:a.render?a.render(t):String(t[a.key]??"")})]},String(a.key))),(r||n||d)&&e.jsx("div",{className:"mt-3 pt-3 border-t flex justify-end",onClick:e=>e.stopPropagation(),children:d?d(t):e.jsx(Br,{onEdit:r?()=>{r(t)}:void 0,onDelete:o?()=>o(t):void 0,onToggleStatus:i?()=>i(t):void 0,isActive:t.is_actived,customActions:c?c(t):[]})})]})]})})})}),e.jsx(Zr,{className:"w-[160px]",children:e.jsx(qr,{onEdit:r?()=>r(t):void 0,onDelete:o?()=>o(t):void 0,onToggleStatus:i?()=>i(t):void 0,isActive:t.is_actived,canDelete:!!o,customActions:c?c(t):[],renderAs:"context"})})]},t.id))})]}):e.jsxs("div",{className:"flex flex-col h-full",children:[j&&e.jsx("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:e.jsxs("div",{className:"flex items-center gap-2",children:[m&&h&&e.jsxs(lt,{onClick:m,children:[e.jsx(l.Plus,{size:16,className:"mr-2"}),p||g("new")]}),f.map((t,a)=>{const s=t.icon;return e.jsxs(lt,{onClick:t.action,variant:t.variant||"outline",children:[s&&e.jsx(s,{size:16,className:"mr-2"}),t.label]},a)})]})}),a.isLoading?e.jsx(kr,{rows:5,columns:s.length}):e.jsx("div",{className:"flex flex-col h-full overflow-hidden",children:e.jsx("div",{className:"flex-1 overflow-auto",children:e.jsxs(xr,{className:"table-auto",children:[e.jsxs("colgroup",{children:[u&&e.jsx("col",{style:{width:"50px"}}),N.map((t,a)=>e.jsx("col",{style:t.style},a)),e.jsx("col",{style:{width:"50px"}})]}),e.jsx(gr,{children:e.jsxs(yr,{children:[u&&e.jsx(Nr,{className:"w-[50px]",children:e.jsx(on,{checked:a.isAllSelected,onCheckedChange:a.selectAll})}),s.map(t=>{return e.jsx(Nr,{className:`${t.className||""} ${t.sortable?"cursor-pointer hover:bg-muted/50":""}`,onClick:t.sortable?()=>a.handleSort(String(t.key)):void 0,children:e.jsxs("div",{className:"flex items-center "+(t.className?.includes("text-center")?"justify-center":""),children:[t.header,t.sortable&&(s=String(t.key),a.sortField!==s?e.jsx(l.ArrowUpDown,{size:14,className:"ml-1 opacity-50"}):"asc"===a.sortDirection?e.jsx(l.ArrowUp,{size:14,className:"ml-1"}):e.jsx(l.ArrowDown,{size:14,className:"ml-1"}))]})},String(t.key));var s}),e.jsx(Nr,{className:"w-[50px] text-center",children:g("actions")})]})}),e.jsx(br,{children:0===a.entities.length?e.jsx(yr,{children:e.jsx(jr,{colSpan:u?s.length+2:s.length+1,className:"h-32",children:e.jsx(Pr,{title:g("empty_title"),description:g("empty_description"),variant:"search"})})}):a.entities.map(t=>e.jsxs(Wr,{children:[e.jsx(Hr,{asChild:!0,children:e.jsxs(yr,{className:nt("cursor-pointer hover:bg-muted/50",u&&a.selectedIds.includes(t.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),u?a.selectItem(t.id):r?.(t)},children:[u&&e.jsx(jr,{onClick:e=>e.stopPropagation(),children:e.jsx(on,{checked:a.selectedIds.includes(t.id),onCheckedChange:()=>a.selectItem(t.id)})}),s.map(a=>e.jsx(jr,{className:a.className,children:a.render?a.render(t):String(t[a.key]??"")},String(a.key))),e.jsx(jr,{className:"text-center",children:d?d(t):e.jsx(Br,{onEdit:r?()=>r(t):void 0,onDelete:o?()=>o(t):void 0,onToggleStatus:i?()=>i(t):void 0,isActive:t.is_actived,customActions:c?c(t):[]})})]})}),e.jsx(Zr,{className:"w-[160px]",children:e.jsx(qr,{onEdit:r?()=>r(t):void 0,onDelete:o?()=>o(t):void 0,onToggleStatus:i?()=>i(t):void 0,isActive:t.is_actived,canDelete:!!o,customActions:c?c(t):[],renderAs:"context"})})]},t.id))})]})})})]})};function dn(e,a,s,r){const[n,i]=t.useState({}),[o,l]=t.useState({}),d=t.useMemo(()=>e,[e]),c=e=>e instanceof Date&&!isNaN(e.getTime()),u=e=>{if(void 0!==e.defaultValue)return e.defaultValue;switch(e.type){case"multiselect":return[];case"checkbox":return!1;case"number":return 0;case"date":default:return"";case"group":return{}}},m=(e,t)=>{if(e.computedValue&&"function"==typeof e.computedValue)try{return e.computedValue(t)}catch(a){return u(e)}},p=(e,t,a)=>{if(e.required&&(""===t||null==t||Array.isArray(t)&&0===t.length))return`${e.label} é obrigatório`;if(e.validation){let r;if("function"==typeof e.validation?r=e.validation:e.validation.custom&&"function"==typeof e.validation.custom&&(r=e.validation.custom),r)try{const e=r(t,a);if(e)return e}catch(s){}}};t.useEffect(()=>{if(!r)return;const e=t=>{const a=[];return t.forEach(t=>{a.push(t),t.fields&&a.push(...e(t.fields))}),a},t=e(d),n={};t.forEach(e=>{let t;if(a&&void 0!==a[e.name]){if(t=a[e.name],null==t&&(t=""),"date"===e.type&&t)if("string"==typeof t){const e=new Date(t);c(e)&&(t=e.toISOString().split("T")[0])}else c(t)&&(t=t.toISOString().split("T")[0])}else t=u(e);n[e.name]=t}),t.forEach(e=>{const t=m(e,n);void 0!==t&&(n[e.name]=t)}),a&&Object.keys(a).forEach(e=>{t.find(t=>t.name===e)||void 0===a[e]||(n[e]=a[e])}),i(n),l({}),s&&s(n)},[d,a,s,r]);const h=e=>{const t=[];return e.forEach(e=>{t.push(e),e.fields&&t.push(...h(e.fields))}),t},f=()=>{const e=h(d),t={};return e.forEach(e=>{const a=p(e,n[e.name],n);a&&(t[e.name]=a)}),l(t),0===Object.keys(t).length};return{formData:n,errors:o,updateField:(e,t)=>{i(a=>{const r={...a,[e]:t},n=((e,t)=>{let a={...t};const s=e=>{const t=[];return e.forEach(e=>{t.push(e),e.fields&&t.push(...s(e.fields))}),t};return s(d).filter(t=>t.dependsOn===e).forEach(e=>{const t=m(e,a);void 0!==t&&(a={...a,[e.name]:t})}),a})(e,r);return s&&s(n),n}),o[e]&&l(t=>{const a={...t};return delete a[e],a});const a=h(d).find(t=>t.name===e);if(a){const s=p(a,t,n);s&&l(t=>({...t,[e]:s}))}},validateForm:f,handleSubmit:e=>t=>{t&&(t.preventDefault(),t.stopPropagation()),f()&&e(n)}}}const cn=["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#06b6d4","#84cc16","#f97316","#ec4899","#6b7280"],un=({value:t="#3b82f6",onChange:a,label:s})=>e.jsxs("div",{className:"space-y-2",children:[s&&e.jsx(mt,{children:s}),e.jsxs(ga,{children:[e.jsx(ba,{asChild:!0,children:e.jsxs(lt,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e.jsx("div",{className:"h-4 w-4 rounded border mr-2",style:{backgroundColor:t}}),t]})}),e.jsx(va,{className:"w-64",children:e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx(mt,{htmlFor:"color-input",children:"Cor personalizada"}),e.jsx(ct,{id:"color-input",type:"color",value:t,onChange:e=>a?.(e.target.value),className:"h-10 w-full"})]}),e.jsxs("div",{children:[e.jsx(mt,{children:"Cores predefinidas"}),e.jsx("div",{className:"grid grid-cols-5 gap-2 mt-2",children:cn.map(t=>e.jsx("button",{className:"h-8 w-8 rounded border-2 border-border hover:border-primary",style:{backgroundColor:t},onClick:()=>a?.(t),"aria-label":`Selecionar cor ${t}`},t))})]})]})})]})]}),mn=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(ee.Root,{ref:r,className:nt("relative overflow-hidden",t),...s,children:[e.jsx(ee.Viewport,{className:"h-full w-full rounded-[inherit]",children:a}),e.jsx(pn,{}),e.jsx(ee.Corner,{})]}));mn.displayName=ee.Root.displayName;const pn=B.forwardRef(({className:t,orientation:a="vertical",...s},r)=>e.jsx(ee.ScrollAreaScrollbar,{ref:r,orientation:a,className:nt("flex touch-none select-none transition-colors","vertical"===a&&"h-full w-2.5 border-l border-l-transparent p-[1px]","horizontal"===a&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",t),...s,children:e.jsx(ee.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));pn.displayName=ee.ScrollAreaScrollbar.displayName;const hn={Star:l.Star,Heart:l.Heart,Home:l.Home,User:l.User,Settings:l.Settings,Mail:l.Mail,Phone:l.Phone,Calendar:l.Calendar,MapPin:l.MapPin,Camera:l.Camera,Image:l.Image,Music:l.Music,Video:l.Video,Book:l.Book,Bookmark:l.Bookmark,Search:l.Search,Filter:l.Filter,Edit:l.Edit,Trash2:l.Trash2,Plus:l.Plus,Minus:l.Minus,Check:l.Check,X:l.X,ChevronDown:l.ChevronDown,ChevronUp:l.ChevronUp,ChevronLeft:l.ChevronLeft,ChevronRight:l.ChevronRight,ArrowUp:l.ArrowUp,ArrowDown:l.ArrowDown,ArrowLeft:l.ArrowLeft,ArrowRight:l.ArrowRight,Clock:l.Clock,Bell:l.Bell,AlertCircle:l.AlertCircle,Info:l.Info,HelpCircle:l.HelpCircle,Download:l.Download,Upload:l.Upload,Share:l.Share,Copy:l.Copy,Save:l.Save,FileText:l.FileText,Folder:l.Folder,FolderOpen:l.FolderOpen,Archive:l.Archive,Lock:l.Lock,Unlock:l.Unlock,Eye:l.Eye,EyeOff:l.EyeOff,Shield:l.Shield,Key:l.Key,Zap:l.Zap,Flame:l.Flame,Sparkles:l.Sparkles,Award:l.Award,Trophy:l.Trophy,Target:l.Target},fn=({value:a="Star",onChange:s,label:r})=>{const{t:n}=Ya(),[i,o]=t.useState(""),d=Object.entries(hn).filter(([e])=>e.toLowerCase().includes(i.toLowerCase())),c=hn[a]||l.Star;return e.jsxs("div",{className:"space-y-2",children:[r&&e.jsx(mt,{children:r}),e.jsxs(ga,{children:[e.jsx(ba,{asChild:!0,children:e.jsxs(lt,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e.jsx(c,{className:"h-4 w-4 mr-2"}),a]})}),e.jsx(va,{className:"w-80",children:e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx(mt,{htmlFor:"icon-search",children:n("search")}),e.jsx(ct,{id:"icon-search",placeholder:n("search"),value:i,onChange:e=>o(e.target.value)})]}),e.jsx(mn,{className:"h-48",children:e.jsx("div",{className:"grid grid-cols-6 gap-2",children:d.map(([t,r])=>e.jsx("button",{className:"p-2 rounded border-2 hover:border-primary "+(a===t?"border-primary bg-primary/10":"border-border"),onClick:()=>s?.(t),title:t,children:e.jsx(r,{className:"h-4 w-4"})},t))})})]})})]})]})},xn=B.forwardRef(({className:t,...a},s)=>e.jsx(te.Root,{className:nt("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",t),...a,ref:s,children:e.jsx(te.Thumb,{className:nt("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));xn.displayName=te.Root.displayName;const gn=(e={})=>{const{user:t,alias:a}=ar(),{enabled:s=!0}=e;return g.useQuery({queryKey:["qualiex-users",a],queryFn:()=>_s.getUsers(a),enabled:s&&!!a&&!!t,retry:2,retryDelay:1e3})},bn=({value:t="",onChange:a,placeholder:s,disabled:r,className:n,enabled:i})=>{const{t:o}=Ya(),{data:l=[],isLoading:d,error:c}=gn({enabled:i});return e.jsx(ts,{value:t,onChange:a,options:l,isLoading:d,error:c,getOptionValue:e=>e.userId,getOptionLabel:e=>e.userName,placeholder:s||o("search_placeholder"),searchPlaceholder:o("search_placeholder"),emptyMessage:o("no_results"),disabled:r,className:n})};function vn({title:a,sections:s,initialData:r,onSubmit:n,onCancel:i,open:o,submitButtonText:l,isLoading:d=!1,usersData:c}){const{t:u}=Ya(),[m,p]=t.useState(s?.[0]?.id||""),h=t.useRef(null),[f,x]=t.useState(null),g=t.useCallback(e=>{h.current=e,x(e)},[]),b=t.useMemo(()=>s&&Array.isArray(s)?s.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[s]),{formData:v,errors:y,updateField:N,handleSubmit:j}=dn(b,r,void 0,o),w=t.useMemo(()=>s&&Array.isArray(s)?s.map(e=>({...e,disabled:e.condition?!e.condition(v):e.disabled||!1})):[],[s,v]),k=t.useMemo(()=>{const e=w.find(e=>e.id===m);if(e&&!e.disabled)return m;const t=w.find(e=>!e.disabled);return t?.id||m},[w,m]);t.useEffect(()=>{k!==m&&p(k)},[k,m]);const C=w.find(e=>e.id===k),S=t=>{const a=(t.computedValue,v[t.name]),s=void 0!==a?a:"",r=y[t.name];switch(t.type){case"group":const a="horizontal"===t.layout,n=a?`flex gap-3 w-full ${t.className||""}`:"space-y-3",i=a?nt("space-y-2 w-full",t.wrapperClassName):nt("space-y-2",t.className,t.wrapperClassName);return e.jsxs("div",{className:i,children:[t.label,e.jsx("div",{className:n,children:t.fields?.map(e=>S(e))})]},t.name);case"user-select":return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(bn,{value:s||"",onChange:e=>N(t.name,e),placeholder:t.placeholder,disabled:t.disabled,className:r?"border-red-500":""}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"textarea":return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(Qt,{id:t.name,value:s||"",onChange:e=>{N(t.name,e.target.value)},placeholder:t.placeholder,disabled:t.disabled,rows:t.rows,maxLength:t.maxLength,className:`${r?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"select":return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsxs(Ft,{value:String(s),onValueChange:e=>{N(t.name,e),t.onValueChange&&t.onValueChange(e)},disabled:t.disabled,children:[e.jsx(Ut,{className:`${r?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`,children:e.jsx($t,{placeholder:t.placeholder})}),e.jsx(Bt,{children:t.options?.map(t=>e.jsx(Ht,{value:t.value,children:t.label},t.value))})]}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"multiselect":return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-red-500 ml-1",children:"*"})]}),e.jsx(ts,{options:t.options||[],value:Array.isArray(s)?s:[],onChange:e=>N(t.name,e),placeholder:t.placeholder,disabled:t.disabled,error:r,popoverContainer:f,getOptionValue:e=>String(e.value),getOptionLabel:e=>e.label}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"date":return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(ct,{id:t.name,type:"date",value:String(s),onChange:e=>N(t.name,e.target.value),placeholder:t.placeholder,disabled:t.disabled,className:nt("w-full",r?"border-red-500":"",t.disabled?"bg-gray-100 cursor-not-allowed":"")}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"color":return e.jsxs("div",{children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label," ",t.required&&e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsx(ct,{id:t.name,type:"color",value:s||t.defaultValue||"#000000",onChange:e=>N(t.name,e.target.value),className:"h-10"}),r&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:r})]},t.name);case"color-picker":return e.jsxs("div",{children:[e.jsx(un,{label:`${t.label} ${t.required?"*":""}`,value:s||t.defaultValue||"#3b82f6",onChange:e=>N(t.name,e)}),r&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:r})]},t.name);case"icon-picker":return e.jsxs("div",{children:[e.jsx(fn,{label:`${t.label} ${t.required?"*":""}`,value:s||t.defaultValue||"Star",onChange:e=>N(t.name,e)}),r&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:r})]},t.name);case"custom":if(!t.component)return null;const o=t.component,l="function"==typeof t.componentProps?t.componentProps(v):t.componentProps||{};return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[t.label&&e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(o,{value:s,onChange:e=>{N(t.name,e),t.onValueChange&&t.onValueChange(e)},disabled:t.disabled,error:r,popoverContainer:f,...l}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"number":return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(ct,{id:t.name,type:"number",value:null!=s?String(s):"",onChange:e=>{const a=e.target.value,s=""===a?null:Number(a);N(t.name,s)},placeholder:t.placeholder,disabled:t.disabled,className:`${r?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`,min:t.min,step:t.step||"1"}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"checkbox":return e.jsxs("div",{className:`flex items-center space-x-2 ${t.className||""}`,children:[e.jsx(Gt,{id:t.name,checked:!!s,onCheckedChange:e=>N(t.name,e),disabled:t.disabled}),e.jsx(mt,{htmlFor:t.name,className:"cursor-pointer",children:t.label}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name);case"switch":return e.jsxs("div",{className:`flex items-center justify-between space-x-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(xn,{id:t.name,checked:!!s,onCheckedChange:e=>N(t.name,e),disabled:t.disabled}),r&&e.jsx("p",{className:"text-sm text-red-500 mt-2",children:r})]},t.name);default:return e.jsxs("div",{className:`space-y-2 ${t.className||""}`,children:[e.jsx(mt,{htmlFor:t.name,children:t.label}),e.jsx(ct,{id:t.name,type:"text",value:s||"",onChange:e=>{N(t.name,e.target.value)},placeholder:t.placeholder,disabled:t.disabled,className:`${r?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`,readOnly:t.disabled}),r&&e.jsx("p",{className:"text-sm text-red-500",children:r})]},t.name)}},P=t.useCallback(()=>{if(!C)return null;if(C.disabled)return e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e.jsx("div",{className:"rounded-full bg-muted p-3 mb-4",children:e.jsx("svg",{className:"h-6 w-6 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m0 0v2m0-2h2m-2 0H9m3-8V9m0-4V3"})})}),e.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Seção não disponível"}),e.jsx("p",{className:"text-muted-foreground max-w-sm",children:'Complete as informações obrigatórias na seção "Informações Gerais" para acessar esta seção.'})]});if(C.component){const t=C.component;return e.jsx(t,{formData:v,updateField:N,errors:y,users:c,disabled:C.disabled})}return e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:C.fields.map(S)})},[C,v,N,y,c,S]),E=e.jsxs("div",{className:"flex flex-col max-h-[80vh]",children:[w.length>1&&e.jsx("div",{className:"flex-shrink-0 p-4 border-b",children:e.jsx("div",{className:"flex space-x-2",children:w.map(t=>e.jsx(lt,{variant:k===t.id?"action-primary":"action-secondary",size:"sm",onClick:()=>(e=>{const t=w.find(t=>t.id===e);t&&!t.disabled&&p(e)})(t.id),disabled:t.disabled,className:t.disabled?"opacity-50 cursor-not-allowed":"",children:t.title},t.id))})}),e.jsx("div",{className:"flex-1 overflow-y-auto px-2 md:px-4 pt-0 pb-2 md:pb-4",children:d?e.jsx("div",{className:"flex items-center justify-center py-12",children:e.jsx("div",{className:"text-muted-foreground",children:u("loading")})}):e.jsxs("form",{onSubmit:j(n),className:"space-y-3 md:space-y-4",children:[P(),e.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[e.jsx(lt,{type:"button",variant:"outline",onClick:i,children:u("cancel")}),e.jsx(lt,{type:"submit",disabled:d,children:l||u("save")})]})]})})]});return e.jsx(vt,{open:o,onOpenChange:e=>{!1===e&&!0===o&&i()},children:e.jsxs(kt,{ref:g,className:"max-w-4xl max-h-[90vh] overflow-visible",children:[e.jsxs(Ct,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:[e.jsx(Pt,{className:"text-white",children:a}),e.jsx(Et,{className:"sr-only",children:"Formulário para preenchimento de dados"})]}),E]})})}function yn({currentPage:t,totalPages:a,totalItems:s,itemsPerPage:r,onPageChange:n,onItemsPerPageChange:i,variant:o="full"}){const d=(t-1)*r+1,c=Math.min(t*r,s);return e.jsxs("div",{className:"flex items-center justify-between px-4 py-3 gap-4",children:[e.jsx("div",{className:"flex items-center gap-2",children:"full"===o&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:"Itens por página"}),e.jsxs(Ft,{value:String(r),onValueChange:e=>i(Number(e)),children:[e.jsx(Ut,{className:"h-8 w-[70px]",children:e.jsx($t,{})}),e.jsxs(Bt,{children:[e.jsx(Ht,{value:"10",children:"10"}),e.jsx(Ht,{value:"25",children:"25"}),e.jsx(Ht,{value:"50",children:"50"}),e.jsx(Ht,{value:"100",children:"100"})]})]})]})}),e.jsxs("div",{className:"text-sm text-muted-foreground text-center hidden sm:block",children:[d,"-",c," de ",s," itens"]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(lt,{variant:"outline",size:"sm",onClick:()=>n(1),disabled:1===t,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronsLeft,{size:16})}),e.jsx(lt,{variant:"outline",size:"sm",onClick:()=>n(t-1),disabled:1===t,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronLeft,{size:16})}),e.jsxs("div",{className:"flex items-center gap-1 px-2",children:[e.jsx("span",{className:"text-sm font-medium",children:t}),e.jsx("span",{className:"text-sm text-muted-foreground",children:"de"}),e.jsx("span",{className:"text-sm font-medium",children:a})]}),e.jsx(lt,{variant:"outline",size:"sm",onClick:()=>n(t+1),disabled:t===a,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronRight,{size:16})}),e.jsx(lt,{variant:"outline",size:"sm",onClick:()=>n(a),disabled:t===a,className:"h-8 w-8 p-0",children:e.jsx(l.ChevronsRight,{size:16})})]})]})}function Nn({manager:t}){return e.jsx(yn,{currentPage:t.pagination.currentPage,totalPages:t.pagination.totalPages,totalItems:t.pagination.totalItems,itemsPerPage:t.pagination.itemsPerPage,onPageChange:t.handlePageChange,onItemsPerPageChange:t.handleItemsPerPageChange,variant:"full"})}const jn=({selectedCount:t,onClearSelection:a,onBulkDelete:s,customActions:r=[],isLoading:n=!1})=>{const{t:i}=Ya();return e.jsxs("div",{className:"flex-shrink-0 flex items-center justify-between px-4 py-2 bg-primary/10 border-b border-primary/20",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm font-medium",children:i("selected",{count:t})}),e.jsxs(lt,{variant:"ghost",size:"sm",onClick:a,className:"h-7 px-2",children:[e.jsx(l.X,{size:14,className:"mr-1"}),i("clear")]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[r.map((t,a)=>{const s=t.icon;return e.jsxs(lt,{variant:t.variant||"outline",size:"sm",onClick:()=>t.action([]),disabled:n,className:"h-7",children:[s&&e.jsx(s,{size:14,className:"mr-1"}),t.label]},a)}),s&&e.jsxs(lt,{variant:"destructive",size:"sm",onClick:s,disabled:n,className:"h-7",children:[e.jsx(l.Trash2,{size:14,className:"mr-1"}),i("delete")]})]})]})},wn={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},kn={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},Cn={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"};function Sn({children:t,direction:a="column",gap:s="md",align:r="stretch",justify:n="start",wrap:i=!1,className:o}){return e.jsx("div",{className:nt("flex","column"===a?"flex-col":"flex-row",wn[s],kn[r],Cn[n],i&&"flex-wrap",o),children:t})}function Pn({manager:t,filters:a,inline:s=!1}){const{t:r}=Ya(),{isSearchVisible:n}=ar(),i=t.searchTerm,o=e.jsxs(e.Fragment,{children:[a.some(e=>"search"===e.type)&&!n&&e.jsxs("div",{className:"relative flex-1",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e.jsx(ct,{placeholder:r("search"),value:t.searchTerm,onChange:e=>t.handleSearch(e.target.value),className:"pl-10"})]}),a.filter(e=>"select"===e.type&&e.options).map((t,a)=>e.jsxs("select",{value:t.value||"",onChange:e=>t.onChange?.(e.target.value),className:"h-10 px-3 rounded-md border border-input bg-background text-sm ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",children:[t.placeholder&&e.jsx("option",{value:"",children:t.placeholder}),t.options.map(t=>e.jsx("option",{value:t.value,children:t.label},t.value))]},`select-${a}`)),a.filter(e=>"custom"===e.type&&e.component).map((t,a)=>{const r=t.component;return e.jsx("div",{className:s?"":"w-full sm:w-auto",children:e.jsx(r,{...t.props})},`custom-${a}`)}),i&&e.jsxs(lt,{variant:"outline",onClick:t.clearFilters,className:"whitespace-nowrap",children:[e.jsx(l.X,{className:"h-4 w-4 mr-2"}),r("clear")]})]});return s?e.jsx("div",{className:"flex items-center gap-2",children:o}):e.jsx(Sn,{direction:"column",gap:"md",className:"mb-6",children:e.jsx(Sn,{direction:"row",gap:"md",wrap:!0,className:"flex-col sm:flex-row",children:o})})}function En({manager:a,config:s,formSections:r,onSave:n,onToggleStatus:i,defaultSort:o}){a&&a.queryKey;const{t:d}=Ya(),{setSearchVisible:c}=ar(),[u,m]=b.useSearchParams(),[p,h]=t.useState(!1),[f,x]=t.useState(null),[g,v]=t.useState({isOpen:!1,entityId:null,entityName:""}),[y,N]=t.useState({isOpen:!1,count:0});t.useEffect(()=>(c(!0),()=>{c(!1)}),[c]),t.useEffect(()=>{if(o&&a){const e=`${a.queryKey}_sortField`,t=`${a.queryKey}_sortDirection`;if(!u.has(e)&&!u.has(t)){const a=Object.fromEntries(u);a[e]=o.column,a[t]=o.direction,m(a)}}},[]);return e.jsxs("div",{className:"flex-1 flex flex-col h-full",children:[s.enableBulkActions&&a.selectedIds.length>0&&e.jsx(jn,{selectedCount:a.selectedIds.length,onClearSelection:a.clearSelection,onBulkDelete:s.bulkActions&&s.bulkActions.length>0?void 0:()=>{N({isOpen:!0,count:a.selectedIds.length})},customActions:s.bulkActions,isLoading:a.isBulkDeleting}),e.jsxs("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(lt,{onClick:()=>{s.onNew?s.onNew():(x(null),h(!0))},children:[e.jsx(l.Plus,{size:16,className:"mr-2"}),d("new")]}),s.customActions?.map((t,a)=>e.jsxs(lt,{onClick:t.action,variant:t.variant||"outline",children:[t.icon&&e.jsx(t.icon,{size:16,className:"mr-2"}),t.label]},a))]}),s.filters&&s.filters.length>0&&e.jsx("div",{className:"flex items-center gap-2 flex-1 justify-end",children:e.jsx(Pn,{manager:a,filters:s.filters,inline:!0})})]}),e.jsx("div",{className:"flex-1 flex flex-col overflow-hidden",children:s.customListView?e.jsx("div",{className:"flex-1 overflow-auto p-4",children:s.customListView(a.entities,a)}):e.jsx(ln,{manager:a,columns:s.columns,onEdit:e=>{s.onEdit?s.onEdit(e):(x(e),h(!0))},onDelete:e=>{v({isOpen:!0,entityId:e.id,entityName:e.title||e.name||"Item"})},onToggleStatus:i,enableBulkActions:s.enableBulkActions,customRowActions:s.customRowActions})}),e.jsx("div",{className:"flex-shrink-0 border-t bg-background",children:e.jsx(Nn,{manager:a})}),!s.useCustomRouting&&e.jsx(vn,{open:p,title:f?`Editar ${s.entityName}`:`Novo ${s.entityName}`,sections:r,initialData:f||void 0,onSubmit:e=>{n(e),h(!1),x(null)},onCancel:()=>{h(!1),x(null)},isLoading:a.isLoading,submitButtonText:d(f?"update":"create")}),e.jsx(fr,{open:g.isOpen,onOpenChange:()=>{v({isOpen:!1,entityId:null,entityName:""})},onConfirm:e=>{g.entityId&&(a.deleteEntity(g.entityId),v({isOpen:!1,entityId:null,entityName:""}))},item:g.entityId?{id:g.entityId,title:g.entityName}:void 0,entityName:s.entityName,isDeleting:a.isDeleting}),e.jsx(fr,{open:y.isOpen,onOpenChange:()=>N({isOpen:!1,count:0}),onConfirm:()=>(a.bulkDelete?.(a.selectedIds),void N({isOpen:!1,count:0})),item:{id:"bulk",title:`${y.count} ${1===y.count?s.entityName:s.entityNamePlural}`},entityName:s.entityNamePlural,isDeleting:a.isBulkDeleting,isBulk:!0,bulkCount:y.count})]})}function Tn(e,t){const a=e.toLowerCase();return a.includes("email")?{type:"email",required:!0}:a.includes("phone")||a.includes("tel")?{type:"tel"}:a.includes("description")||a.includes("content")||a.includes("notes")?{type:"textarea"}:a.includes("status")||a.includes("type")||a.includes("category")?{type:"select",options:[]}:"boolean"==typeof t?{type:"boolean"}:"number"==typeof t?{type:"number"}:t instanceof Date?{type:"date"}:{type:"text"}}function An(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase()).trim()}const _n=B.forwardRef(({className:t,value:a,...s},r)=>e.jsx(ae.Root,{ref:r,className:nt("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",t),...s,children:e.jsx(ae.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(a||0)}%)`}})}));function In({steps:t,currentStepIndex:a,onStepClick:s,className:r}){return e.jsx("div",{className:nt("flex items-center justify-between mb-6",r),children:t.map((a,r)=>e.jsxs("div",{className:"flex items-center flex-1",children:[e.jsx("div",{className:nt("flex items-center justify-center w-10 h-10 rounded-full border-2 transition-colors font-medium",a.isActive&&"border-primary bg-primary text-primary-foreground",a.isCompleted&&"border-primary bg-primary text-primary-foreground",!a.isActive&&!a.isCompleted&&"border-muted-foreground/30 text-muted-foreground bg-background",s&&!a.isDisabled&&"cursor-pointer hover:border-primary/50",a.isDisabled&&"opacity-50 cursor-not-allowed"),onClick:()=>s&&!a.isDisabled&&s(r),role:s&&!a.isDisabled?"button":void 0,tabIndex:s&&!a.isDisabled?0:void 0,"aria-label":`${a.label} - ${a.isCompleted?"Completo":a.isActive?"Atual":"Pendente"}`,children:a.isCompleted?e.jsx(l.Check,{className:"w-5 h-5"}):r+1}),r<t.length-1&&e.jsx("div",{className:nt("flex-1 h-0.5 mx-2 transition-colors",a.isCompleted?"bg-primary":"bg-muted-foreground/30"),"aria-hidden":"true"})]},a.id))})}function Rn({steps:t,currentStepIndex:a,onStepClick:s,className:r}){return e.jsx("div",{className:nt("flex items-center gap-2 mb-6 overflow-x-auto",r),children:t.map((a,r)=>e.jsxs("div",{className:"flex items-center gap-2 whitespace-nowrap",children:[e.jsxs("div",{className:nt("flex items-center gap-2 px-3 py-2 rounded-md transition-colors",a.isActive&&"bg-primary text-primary-foreground font-medium",a.isCompleted&&"bg-primary/10 text-primary",!a.isActive&&!a.isCompleted&&"bg-muted text-muted-foreground",s&&!a.isDisabled&&"cursor-pointer hover:bg-primary/20",a.isDisabled&&"opacity-50 cursor-not-allowed"),onClick:()=>s&&!a.isDisabled&&s(r),role:s&&!a.isDisabled?"button":void 0,tabIndex:s&&!a.isDisabled?0:void 0,"aria-label":`${a.label} - ${a.isCompleted?"Completo":a.isActive?"Atual":"Pendente"}`,children:[e.jsx("span",{className:"text-sm font-medium",children:r+1}),e.jsx("span",{className:"text-sm",children:a.label}),a.isCompleted&&e.jsx(l.Check,{className:"w-4 h-4 ml-1"})]}),r<t.length-1&&e.jsx("span",{className:"text-muted-foreground","aria-hidden":"true",children:"/"})]},a.id))})}function Ln({steps:t,currentStepIndex:a,className:s}){const r=t[a],n=(a+1)/t.length*100;return e.jsxs("div",{className:nt("mb-6 space-y-2",s),children:[e.jsxs("div",{className:"flex items-center justify-between text-sm",children:[e.jsxs("span",{className:"text-muted-foreground",children:["Etapa ",a+1," de ",t.length]}),e.jsx("span",{className:"font-medium",children:r?.label})]}),e.jsx(_n,{value:n,className:"h-2"})]})}function Mn({isFirstStep:t,isLastStep:a,canGoNext:s,canGoPrevious:r,isLoading:n,onPrevious:i,onNext:o,onSubmit:l,previousButtonText:d,nextButtonText:c,submitButtonText:u}){const{t:m}=Ya();return e.jsxs(e.Fragment,{children:[e.jsx("div",{children:r&&!t&&e.jsx(lt,{type:"button",variant:"outline",onClick:i,disabled:n,children:d||m("previous")})}),e.jsxs("div",{className:"flex gap-2",children:[s&&!a&&e.jsx(lt,{type:"button",onClick:o,disabled:n,children:c||m("next")}),a&&e.jsx(lt,{type:"button",onClick:l,disabled:n,children:n?m("saving"):u||m("save")})]})]})}_n.displayName=ae.Root.displayName;const On=s.cva("relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),Dn=B.forwardRef(({className:t,variant:a,...s},r)=>e.jsx("div",{ref:r,role:"alert",className:nt(On({variant:a}),t),...s}));Dn.displayName="Alert";const Fn=B.forwardRef(({className:t,...a},s)=>e.jsx("h5",{ref:s,className:nt("mb-1 font-medium leading-none tracking-tight",t),...a}));Fn.displayName="AlertTitle";const zn=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("text-sm [&_p]:leading-relaxed",t),...a}));zn.displayName="AlertDescription";const $n=t.createContext(void 0);function Un({children:a,actions:s}){const[r,n]=t.useState({}),[i,o]=t.useState(s);return t.useEffect(()=>{o(s)},[s]),e.jsx($n.Provider,{value:{metadata:r,setMetadata:n,clearMetadata:()=>n({}),headerActions:i,setHeaderActions:o},children:a})}function Vn(){const e=t.useContext($n);if(!e)throw new Error("usePageMetadataContext must be used within PageMetadataProvider");return e}const qn=se.Root,Bn=B.forwardRef(({className:t,...a},s)=>e.jsx(se.Item,{ref:s,className:nt("border-b",t),...a}));Bn.displayName="AccordionItem";const Wn=B.forwardRef(({className:t,children:a,...s},r)=>e.jsx(se.Header,{className:"flex",children:e.jsxs(se.Trigger,{ref:r,className:nt("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",t),...s,children:[a,e.jsx(l.ChevronDown,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));Wn.displayName=se.Trigger.displayName;const Hn=B.forwardRef(({className:t,children:a,...s},r)=>e.jsx(se.Content,{ref:r,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...s,children:e.jsx("div",{className:nt("pb-4 pt-0",t),children:a})}));Hn.displayName=se.Content.displayName;const Kn=re.Root,Gn=B.forwardRef(({className:t,...a},s)=>e.jsx(ne.Root,{ref:s,className:nt("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",t),...a}));Gn.displayName=ne.Root.displayName;const Qn=B.forwardRef(({className:t,...a},s)=>e.jsx(ne.Image,{ref:s,className:nt("aspect-square h-full w-full",t),...a}));Qn.displayName=ne.Image.displayName;const Xn=B.forwardRef(({className:t,...a},s)=>e.jsx(ne.Fallback,{ref:s,className:nt("flex h-full w-full items-center justify-center rounded-full bg-muted",t),...a}));Xn.displayName=ne.Fallback.displayName;const Jn=B.forwardRef(({...t},a)=>e.jsx("nav",{ref:a,"aria-label":"breadcrumb",...t}));Jn.displayName="Breadcrumb";const Yn=B.forwardRef(({className:t,...a},s)=>e.jsx("ol",{ref:s,className:nt("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",t),...a}));Yn.displayName="BreadcrumbList";const Zn=B.forwardRef(({className:t,...a},s)=>e.jsx("li",{ref:s,className:nt("inline-flex items-center gap-1.5",t),...a}));Zn.displayName="BreadcrumbItem";const ei=B.forwardRef(({asChild:t,className:a,...s},r)=>{const n=t?B.Fragment:"a";return e.jsx(n,{ref:r,className:nt("transition-colors hover:text-foreground",a),...s})});ei.displayName="BreadcrumbLink";const ti=B.forwardRef(({className:t,...a},s)=>e.jsx("span",{ref:s,role:"link","aria-disabled":"true","aria-current":"page",className:nt("font-normal text-foreground",t),...a}));ti.displayName="BreadcrumbPage";const ai=({children:t,className:a,...s})=>e.jsx("li",{role:"presentation","aria-hidden":"true",className:nt("[&>svg]:size-3.5",a),...s,children:t??e.jsx(l.ChevronRight,{})});ai.displayName="BreadcrumbSeparator";const si=({className:t,...a})=>e.jsxs("span",{role:"presentation","aria-hidden":"true",className:nt("flex h-9 w-9 items-center justify-center",t),...a,children:[e.jsx(l.MoreHorizontal,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"More"})]});si.displayName="BreadcrumbEllipsis";const ri=s.cva("flex items-center",{variants:{orientation:{horizontal:"flex-row [&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none",vertical:"flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none"}},defaultVariants:{orientation:"horizontal"}}),ni=B.forwardRef(({className:t,orientation:a,...s},r)=>e.jsx("div",{ref:r,className:nt(ri({orientation:a}),t),...s}));function ii(e){return(t={})=>{const a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}function oi(e){return(t,a)=>{let s;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,r=a?.width?String(a.width):t;s=e.formattingValues[r]||e.formattingValues[t]}else{const t=e.defaultWidth,r=a?.width?String(a.width):e.defaultWidth;s=e.values[r]||e.values[t]}return s[e.argumentCallback?e.argumentCallback(t):t]}}function li(e){return(t,a={})=>{const s=a.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],n=t.match(r);if(!n)return null;const i=n[0],o=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(o)?function(e,t){for(let a=0;a<e.length;a++)if(t(e[a]))return a;return}(o,e=>e.test(i)):function(e,t){for(const a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t(e[a]))return a;return}(o,e=>e.test(i));let d;d=e.valueCallback?e.valueCallback(l):l,d=a.valueCallback?a.valueCallback(d):d;return{value:d,rest:t.slice(i.length)}}}function di(e){return(t,a={})=>{const s=t.match(e.matchPattern);if(!s)return null;const r=s[0],n=t.match(e.parsePattern);if(!n)return null;let i=e.valueCallback?e.valueCallback(n[0]):n[0];i=a.valueCallback?a.valueCallback(i):i;return{value:i,rest:t.slice(r.length)}}}ni.displayName="ButtonGroup";const ci={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},ui={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},mi={ordinalNumber:(e,t)=>{const a=Number(e),s=a%100;if(s>20||s<10)switch(s%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:oi({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:oi({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:oi({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:oi({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:oi({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},pi={ordinalNumber:di({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:li({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:li({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:li({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:li({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:li({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},hi={code:"en-US",formatDistance:(e,t,a)=>{let s;const r=ci[e];return s="string"==typeof r?r:1===t?r.one:r.other.replace("{{count}}",t.toString()),a?.addSuffix?a.comparison&&a.comparison>0?"in "+s:s+" ago":s},formatLong:{date:ii({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:ii({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:ii({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},formatRelative:(e,t,a,s)=>ui[e],localize:mi,match:pi,options:{weekStartsOn:0,firstWeekContainsDate:1}},fi={lessThanXSeconds:{one:"menos de un segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"medio minuto",lessThanXMinutes:{one:"menos de un minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"alrededor de 1 hora",other:"alrededor de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 día",other:"{{count}} días"},aboutXWeeks:{one:"alrededor de 1 semana",other:"alrededor de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"alrededor de 1 mes",other:"alrededor de {{count}} meses"},xMonths:{one:"1 mes",other:"{{count}} meses"},aboutXYears:{one:"alrededor de 1 año",other:"alrededor de {{count}} años"},xYears:{one:"1 año",other:"{{count}} años"},overXYears:{one:"más de 1 año",other:"más de {{count}} años"},almostXYears:{one:"casi 1 año",other:"casi {{count}} años"}},xi={date:ii({formats:{full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/y"},defaultWidth:"full"}),time:ii({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:ii({formats:{full:"{{date}} 'a las' {{time}}",long:"{{date}} 'a las' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},gi={lastWeek:"'el' eeee 'pasado a la' p",yesterday:"'ayer a la' p",today:"'hoy a la' p",tomorrow:"'mañana a la' p",nextWeek:"eeee 'a la' p",other:"P"},bi={lastWeek:"'el' eeee 'pasado a las' p",yesterday:"'ayer a las' p",today:"'hoy a las' p",tomorrow:"'mañana a las' p",nextWeek:"eeee 'a las' p",other:"P"},vi={ordinalNumber:(e,t)=>Number(e)+"º",era:oi({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","después de cristo"]},defaultWidth:"wide"}),quarter:oi({values:{narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:oi({values:{narrow:["e","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],wide:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]},defaultWidth:"wide"}),day:oi({values:{narrow:["d","l","m","m","j","v","s"],short:["do","lu","ma","mi","ju","vi","sá"],abbreviated:["dom","lun","mar","mié","jue","vie","sáb"],wide:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"]},defaultWidth:"wide"}),dayPeriod:oi({values:{narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"}},defaultFormattingWidth:"wide"})},yi={ordinalNumber:di({matchPattern:/^(\d+)(º)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}}),era:li({matchPatterns:{narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes de la era com[uú]n)/i,/^(despu[eé]s de cristo|era com[uú]n)/i]},defaultParseWidth:"any"}),quarter:li({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:li({matchPatterns:{narrow:/^[efmajsond]/i,abbreviated:/^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,wide:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^e/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^en/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i]},defaultParseWidth:"any"}),day:li({matchPatterns:{narrow:/^[dlmjvs]/i,short:/^(do|lu|ma|mi|ju|vi|s[áa])/i,abbreviated:/^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,wide:/^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^do/i,/^lu/i,/^ma/i,/^mi/i,/^ju/i,/^vi/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:li({matchPatterns:{narrow:/^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,any:/^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mn/i,noon:/^md/i,morning:/mañana/i,afternoon:/tarde/i,evening:/tarde/i,night:/noche/i}},defaultParseWidth:"any"})},Ni={code:"es",formatDistance:(e,t,a)=>{let s;const r=fi[e];return s="string"==typeof r?r:1===t?r.one:r.other.replace("{{count}}",t.toString()),a?.addSuffix?a.comparison&&a.comparison>0?"en "+s:"hace "+s:s},formatLong:xi,formatRelative:(e,t,a,s)=>1!==t.getHours()?bi[e]:gi[e],localize:vi,match:yi,options:{weekStartsOn:1,firstWeekContainsDate:1}},ji={lessThanXSeconds:{one:"menos de um segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"meio minuto",lessThanXMinutes:{one:"menos de um minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"cerca de 1 hora",other:"cerca de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dia",other:"{{count}} dias"},aboutXWeeks:{one:"cerca de 1 semana",other:"cerca de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"cerca de 1 mês",other:"cerca de {{count}} meses"},xMonths:{one:"1 mês",other:"{{count}} meses"},aboutXYears:{one:"cerca de 1 ano",other:"cerca de {{count}} anos"},xYears:{one:"1 ano",other:"{{count}} anos"},overXYears:{one:"mais de 1 ano",other:"mais de {{count}} anos"},almostXYears:{one:"quase 1 ano",other:"quase {{count}} anos"}},wi={date:ii({formats:{full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/yyyy"},defaultWidth:"full"}),time:ii({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:ii({formats:{full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},ki={lastWeek:e=>{const t=e.getDay();return"'"+(0===t||6===t?"último":"última")+"' eeee 'às' p"},yesterday:"'ontem às' p",today:"'hoje às' p",tomorrow:"'amanhã às' p",nextWeek:"eeee 'às' p",other:"P"},Ci={ordinalNumber:(e,t)=>{const a=Number(e);return"week"===t?.unit?a+"ª":a+"º"},era:oi({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},defaultWidth:"wide"}),quarter:oi({values:{narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:oi({values:{narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},defaultWidth:"wide"}),day:oi({values:{narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sab"],abbreviated:["domingo","segunda","terça","quarta","quinta","sexta","sábado"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},defaultWidth:"wide"}),dayPeriod:oi({values:{narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"}},defaultFormattingWidth:"wide"})},Si={ordinalNumber:di({matchPattern:/^(\d+)[ºªo]?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:li({matchPatterns:{narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|d\.?\s?c\.?)/i,wide:/^(antes de cristo|depois de cristo)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^ac/i,/^dc/i],wide:[/^antes de cristo/i,/^depois de cristo/i]},defaultParseWidth:"any"}),quarter:li({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:li({matchPatterns:{narrow:/^[jfmajsond]/i,abbreviated:/^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,wide:/^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^fev/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dez/i]},defaultParseWidth:"any"}),day:li({matchPatterns:{narrow:/^(dom|[23456]ª?|s[aá]b)/i,short:/^(dom|[23456]ª?|s[aá]b)/i,abbreviated:/^(dom|seg|ter|qua|qui|sex|s[aá]b)/i,wide:/^(domingo|(segunda|ter[cç]a|quarta|quinta|sexta)([- ]feira)?|s[aá]bado)/i},defaultMatchWidth:"wide",parsePatterns:{short:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],narrow:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],any:[/^d/i,/^seg/i,/^t/i,/^qua/i,/^qui/i,/^sex/i,/^s[aá]b/i]},defaultParseWidth:"any"}),dayPeriod:li({matchPatterns:{narrow:/^(a|p|mn|md|(da) (manhã|tarde|noite))/i,any:/^([ap]\.?\s?m\.?|meia[-\s]noite|meio[-\s]dia|(da) (manhã|tarde|noite))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mn|^meia[-\s]noite/i,noon:/^md|^meio[-\s]dia/i,morning:/manhã/i,afternoon:/tarde/i,evening:/tarde/i,night:/noite/i}},defaultParseWidth:"any"})},Pi={code:"pt-BR",formatDistance:(e,t,a)=>{let s;const r=ji[e];return s="string"==typeof r?r:1===t?r.one:r.other.replace("{{count}}",String(t)),a?.addSuffix?a.comparison&&a.comparison>0?"em "+s:"há "+s:s},formatLong:wi,formatRelative:(e,t,a,s)=>{const r=ki[e];return"function"==typeof r?r(t):r},localize:Ci,match:Si,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ei({className:t,classNames:a,showOutsideDays:s=!0,...r}){return e.jsx(E.DayPicker,{showOutsideDays:s,className:nt("p-3 pointer-events-auto",t),locale:Pi,classNames:{months:"flex flex-col sm:flex-row space-y-4 sm:space-x-4 sm:space-y-0",month:"space-y-4",caption:"flex justify-center pt-1 relative items-center",caption_label:"text-sm font-medium",nav:"space-x-1 flex items-center",nav_button:nt(ot({variant:"outline"}),"h-7 w-7 bg-transparent p-0 opacity-50 hover:opacity-100"),nav_button_previous:"absolute left-1",nav_button_next:"absolute right-1",table:"w-full border-collapse space-y-1",head_row:"flex",head_cell:"text-muted-foreground rounded-md w-9 font-normal text-[0.8rem]",row:"flex w-full mt-2",cell:"h-9 w-9 text-center text-sm p-0 relative [&:has([aria-selected].day-range-end)]:rounded-r-md [&:has([aria-selected].day-outside)]:bg-accent/50 [&:has([aria-selected])]:bg-accent first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md focus-within:relative focus-within:z-20",day:nt(ot({variant:"ghost"}),"h-9 w-9 p-0 font-normal aria-selected:opacity-100"),day_range_end:"day-range-end",day_selected:"bg-primary text-primary-foreground hover:bg-primary hover:text-primary-foreground focus:bg-primary focus:text-primary-foreground",day_today:"bg-accent text-accent-foreground",day_outside:"day-outside text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",day_disabled:"text-muted-foreground opacity-50",day_range_middle:"aria-selected:bg-accent aria-selected:text-accent-foreground",day_hidden:"invisible",...a},components:{IconLeft:({...t})=>e.jsx(l.ChevronLeft,{className:"h-4 w-4"}),IconRight:({...t})=>e.jsx(l.ChevronRight,{className:"h-4 w-4"})},...r})}Ei.displayName="Calendar";const Ti=ie.Root,Ai=ie.CollapsibleTrigger,_i=ie.CollapsibleContent;const Ii={Root:function({children:t,className:a}){return e.jsx("div",{className:nt("space-y-4",a),children:t})},Item:function({children:t,onClick:a,className:s}){return e.jsx(pt,{className:nt("transition-colors",a&&"cursor-pointer hover:bg-muted/50",s),onClick:a,children:e.jsx(gt,{className:"p-4",children:t})})},Field:function({label:t,value:a,className:s}){return e.jsxs("div",{className:nt("flex justify-between items-center text-sm",s),children:[e.jsxs("span",{className:"text-muted-foreground font-medium",children:[t,":"]}),e.jsx("span",{className:"text-foreground",children:a})]})}};const Ri=({shouldScaleBackground:t=!0,...a})=>e.jsx(A.Drawer.Root,{shouldScaleBackground:t,...a});Ri.displayName="Drawer";const Li=A.Drawer.Trigger,Mi=A.Drawer.Portal,Oi=A.Drawer.Close,Di=B.forwardRef(({className:t,...a},s)=>e.jsx(A.Drawer.Overlay,{ref:s,className:nt("fixed inset-0 z-50 bg-black/80",t),...a}));Di.displayName=A.Drawer.Overlay.displayName;const Fi=B.forwardRef(({className:t,children:a,...s},r)=>e.jsxs(Mi,{children:[e.jsx(Di,{}),e.jsxs(A.Drawer.Content,{ref:r,className:nt("fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",t),...s,children:[e.jsx("div",{className:"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted"}),a]})]}));Fi.displayName="DrawerContent";const zi=({className:t,...a})=>e.jsx("div",{className:nt("grid gap-1.5 p-4 text-center sm:text-left",t),...a});zi.displayName="DrawerHeader";const $i=({className:t,...a})=>e.jsx("div",{className:nt("mt-auto flex flex-col gap-2 p-4",t),...a});$i.displayName="DrawerFooter";const Ui=B.forwardRef(({className:t,...a},s)=>e.jsx(A.Drawer.Title,{ref:s,className:nt("text-lg font-semibold leading-none tracking-tight",t),...a}));Ui.displayName=A.Drawer.Title.displayName;const Vi=B.forwardRef(({className:t,...a},s)=>e.jsx(A.Drawer.Description,{ref:s,className:nt("text-sm text-muted-foreground",t),...a}));Vi.displayName=A.Drawer.Description.displayName;const qi={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6","auto-fit":"grid-cols-[repeat(auto-fit,minmax(250px,1fr))]","auto-fill":"grid-cols-[repeat(auto-fill,minmax(250px,1fr))]"},Bi={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"};function Wi({children:t,cols:a="auto-fit",gap:s="md",className:r}){return e.jsx("div",{className:nt("grid",qi[a],Bi[s],r),children:t})}const Hi=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-slot":"input-group",className:nt("flex min-w-0 items-center rounded-md border border-input bg-background","focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2 focus-within:ring-offset-background","has-[input:disabled]:cursor-not-allowed has-[input:disabled]:opacity-50","has-[textarea:disabled]:cursor-not-allowed has-[textarea:disabled]:opacity-50",t),...a}));Hi.displayName="InputGroup";const Ki=s.cva("flex items-center justify-center text-sm text-muted-foreground shrink-0",{variants:{align:{"inline-start":"border-r border-input px-3","inline-end":"border-l border-input px-3","block-start":"border-b border-input px-3 py-2 w-full justify-start","block-end":"border-t border-input px-3 py-2 w-full justify-start"}},defaultVariants:{align:"inline-start"}}),Gi=B.forwardRef(({className:t,align:a,...s},r)=>e.jsx("div",{ref:r,"data-slot":"input-group-addon",className:nt(Ki({align:a}),t),...s}));Gi.displayName="InputGroupAddon";const Qi=s.cva("",{variants:{size:{xs:"h-6 px-2 text-xs","icon-xs":"h-6 w-6",sm:"h-7 px-3 text-xs","icon-sm":"h-7 w-7"}},defaultVariants:{size:"xs"}}),Xi=B.forwardRef(({className:t,size:a,variant:s="ghost",...r},n)=>e.jsx(lt,{ref:n,"data-slot":"input-group-button",variant:s,className:nt(Qi({size:a}),"rounded-none first:rounded-l-md last:rounded-r-md",t),...r}));Xi.displayName="InputGroupButton";const Ji=B.forwardRef(({className:t,...a},s)=>e.jsx(ct,{ref:s,"data-slot":"input-group-control",className:nt("flex-1 border-0 bg-transparent shadow-none","focus-visible:ring-0 focus-visible:ring-offset-0",t),...a}));Ji.displayName="InputGroupInput";const Yi=B.forwardRef(({className:t,...a},s)=>e.jsx(Qt,{ref:s,"data-slot":"input-group-control",className:nt("flex-1 border-0 bg-transparent shadow-none resize-none","focus-visible:ring-0 focus-visible:ring-offset-0",t),...a}));Yi.displayName="InputGroupTextarea";const Zi=B.forwardRef(({className:t,keys:a,children:s,...r},n)=>a&&a.length>0?e.jsxs("span",{className:nt("inline-flex items-center gap-1",t),children:[a.map((t,a)=>e.jsx("kbd",{className:nt("pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border border-border bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground opacity-100"),children:t},a)),s&&e.jsx("kbd",{ref:n,className:nt("pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border border-border bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground opacity-100"),...r,children:s})]}):e.jsx("kbd",{ref:n,className:nt("pointer-events-none inline-flex h-5 select-none items-center gap-1 rounded border border-border bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground opacity-100",t),...r,children:s}));Zi.displayName="Kbd";const eo=B.forwardRef(({className:t,children:a,...s},r)=>e.jsx("select",{ref:r,className:nt("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),...s,children:a}));eo.displayName="NativeSelect";const to=B.forwardRef(({className:t,...a},s)=>e.jsx("h1",{ref:s,className:nt("scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl",t),...a}));to.displayName="H1";const ao=B.forwardRef(({className:t,...a},s)=>e.jsx("h2",{ref:s,className:nt("scroll-m-20 border-b pb-2 text-3xl font-semibold tracking-tight first:mt-0",t),...a}));ao.displayName="H2";const so=B.forwardRef(({className:t,...a},s)=>e.jsx("h3",{ref:s,className:nt("scroll-m-20 text-2xl font-semibold tracking-tight",t),...a}));so.displayName="H3";const ro=B.forwardRef(({className:t,...a},s)=>e.jsx("h4",{ref:s,className:nt("scroll-m-20 text-xl font-semibold tracking-tight",t),...a}));ro.displayName="H4";const no=B.forwardRef(({className:t,...a},s)=>e.jsx("p",{ref:s,className:nt("leading-7 [&:not(:first-child)]:mt-6",t),...a}));no.displayName="P";const io=B.forwardRef(({className:t,...a},s)=>e.jsx("p",{ref:s,className:nt("text-xl text-muted-foreground",t),...a}));io.displayName="Lead";const oo=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,className:nt("text-lg font-semibold",t),...a}));oo.displayName="Large";const lo=B.forwardRef(({className:t,...a},s)=>e.jsx("small",{ref:s,className:nt("text-sm font-medium leading-none",t),...a}));lo.displayName="Small";const co=B.forwardRef(({className:t,...a},s)=>e.jsx("p",{ref:s,className:nt("text-sm text-muted-foreground",t),...a}));co.displayName="Muted";const uo=B.forwardRef(({className:t,...a},s)=>e.jsx("code",{ref:s,className:nt("relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold",t),...a}));uo.displayName="InlineCode";const mo=B.forwardRef(({className:t,...a},s)=>e.jsx("blockquote",{ref:s,className:nt("mt-6 border-l-2 pl-6 italic",t),...a}));mo.displayName="Blockquote";const po=B.forwardRef(({className:t,...a},s)=>e.jsx("ul",{ref:s,className:nt("my-6 ml-6 list-disc [&>li]:mt-2",t),...a}));po.displayName="List";const ho=({className:t,...a})=>e.jsx("nav",{role:"navigation","aria-label":"pagination",className:nt("mx-auto flex w-full justify-center",t),...a});ho.displayName="Pagination";const fo=B.forwardRef(({className:t,...a},s)=>e.jsx("ul",{ref:s,className:nt("flex flex-row items-center gap-1",t),...a}));fo.displayName="PaginationContent";const xo=B.forwardRef(({className:t,...a},s)=>e.jsx("li",{ref:s,className:nt("",t),...a}));xo.displayName="PaginationItem";const go=({className:t,isActive:a,size:s="icon",...r})=>e.jsx("a",{"aria-current":a?"page":void 0,className:nt(ot({variant:a?"outline":"ghost",size:s}),t),...r});go.displayName="PaginationLink";const bo=({className:t,...a})=>e.jsxs(go,{"aria-label":"Go to previous page",size:"default",className:nt("gap-1 pl-2.5",t),...a,children:[e.jsx(l.ChevronLeft,{className:"h-4 w-4"}),e.jsx("span",{children:"Previous"})]});bo.displayName="PaginationPrevious";const vo=({className:t,...a})=>e.jsxs(go,{"aria-label":"Go to next page",size:"default",className:nt("gap-1 pr-2.5",t),...a,children:[e.jsx("span",{children:"Next"}),e.jsx(l.ChevronRight,{className:"h-4 w-4"})]});vo.displayName="PaginationNext";const yo=({className:t,...a})=>e.jsxs("span",{"aria-hidden":!0,className:nt("flex h-9 w-9 items-center justify-center",t),...a,children:[e.jsx(l.MoreHorizontal,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"More pages"})]});yo.displayName="PaginationEllipsis";const No=B.forwardRef(({className:t,...a},s)=>e.jsx(oe.Root,{className:nt("grid gap-2",t),...a,ref:s}));No.displayName=oe.Root.displayName;const jo=B.forwardRef(({className:t,...a},s)=>e.jsx(oe.Item,{ref:s,className:nt("aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",t),...a,children:e.jsx(oe.Indicator,{className:"flex items-center justify-center",children:e.jsx(l.Circle,{className:"h-2.5 w-2.5 fill-current text-current"})})}));jo.displayName=oe.Item.displayName;const wo=s.cva("flex h-10 w-full items-center rounded-md border border-input bg-background text-sm ring-offset-background transition-colors focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2",{variants:{variant:{default:"",filled:"bg-muted border-transparent",outline:"border-2"},size:{default:"h-10",sm:"h-8",lg:"h-12"}},defaultVariants:{variant:"default",size:"default"}}),ko=B.forwardRef(({className:t,variant:a,size:s,onClear:r,showClearButton:n=!0,value:i,...o},d)=>{const c=null!=i&&""!==i;return e.jsxs("div",{className:nt(wo({variant:a,size:s,className:t})),children:[e.jsx(l.Search,{className:"ml-3 h-4 w-4 shrink-0 text-muted-foreground"}),e.jsx("input",{type:"text",className:nt("flex-1 bg-transparent px-3 py-2 placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50","sm"===s&&"py-1 text-xs","lg"===s&&"py-3"),ref:d,value:i,...o}),n&&c&&r&&e.jsx("button",{type:"button",onClick:r,className:"mr-2 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none","aria-label":"Clear search",children:e.jsx(l.X,{className:"h-4 w-4"})})]})});ko.displayName="Searchbar";const Co=B.forwardRef(({className:t,orientation:a="horizontal",decorative:s=!0,...r},n)=>e.jsx(le.Root,{ref:n,decorative:s,orientation:a,className:nt("shrink-0 bg-border","horizontal"===a?"h-[1px] w-full":"h-full w-[1px]",t),...r}));Co.displayName=le.Root.displayName;const So=H.Root,Po=H.Trigger,Eo=H.Close,To=H.Portal,Ao=B.forwardRef(({className:t,...a},s)=>e.jsx(H.Overlay,{className:nt("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...a,ref:s}));Ao.displayName=H.Overlay.displayName;const _o=s.cva("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),Io=B.forwardRef(({side:t="right",className:a,children:s,...r},n)=>e.jsxs(To,{children:[e.jsx(Ao,{}),e.jsxs(H.Content,{ref:n,className:nt(_o({side:t}),a),...r,children:[s,e.jsxs(H.Close,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[e.jsx(l.X,{className:"h-4 w-4"}),e.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Io.displayName=H.Content.displayName;const Ro=({className:t,...a})=>e.jsx("div",{className:nt("flex flex-col space-y-2 text-center sm:text-left",t),...a});Ro.displayName="SheetHeader";const Lo=({className:t,...a})=>e.jsx("div",{className:nt("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});Lo.displayName="SheetFooter";const Mo=B.forwardRef(({className:t,...a},s)=>e.jsx(H.Title,{ref:s,className:nt("text-lg font-semibold text-foreground",t),...a}));Mo.displayName=H.Title.displayName;const Oo=B.forwardRef(({className:t,...a},s)=>e.jsx(H.Description,{ref:s,className:nt("text-sm text-muted-foreground",t),...a}));Oo.displayName=H.Description.displayName;const Do=de.Provider,Fo=de.Root,zo=de.Trigger,$o=B.forwardRef(({className:t,sideOffset:a=4,...s},r)=>e.jsx(de.Content,{ref:r,sideOffset:a,className:nt("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...s}));$o.displayName=de.Content.displayName;const Uo="sidebar:state",Vo=B.createContext(null);function qo(){const e=B.useContext(Vo);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}const Bo=B.forwardRef(({defaultOpen:t=!0,open:a,onOpenChange:s,className:r,style:n,children:i,...o},l)=>{const[d,c]=B.useState(!1);B.useEffect(()=>{const e=()=>c(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const[u,m]=B.useState(!1),[p,h]=B.useState(()=>{if("undefined"!=typeof window){const e=localStorage.getItem(Uo);return null!==e?"true"===e:t}return t}),f=a??p,x=B.useCallback(e=>{const t="function"==typeof e?e(f):e;s?s(t):h(t),"undefined"!=typeof window&&localStorage.setItem(Uo,String(t))},[s,f]),g=B.useCallback(()=>d?m(e=>!e):x(e=>!e),[d,x,m]);B.useEffect(()=>{const e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),g())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[g]);const b=f?"expanded":"collapsed",v=B.useMemo(()=>({state:b,open:f,setOpen:x,isMobile:d,openMobile:u,setOpenMobile:m,toggleSidebar:g}),[b,f,x,d,u,m,g]);return e.jsx(Vo.Provider,{value:v,children:e.jsx(Do,{delayDuration:0,children:e.jsx("div",{className:nt("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar sidebar-container",r),style:{"--sidebar-width":"16rem","--sidebar-width-icon":"4.5rem",...n},ref:l,...o,children:i})})})});Bo.displayName="SidebarProvider";const Wo=B.forwardRef(({side:t="left",variant:a="sidebar",collapsible:s="offcanvas",className:r,children:n,...i},o)=>{const{isMobile:l,state:d,openMobile:c,setOpenMobile:u}=qo();return"none"===s?e.jsx("div",{className:nt("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",r),ref:o,...i,children:n}):l?e.jsx(So,{open:c,onOpenChange:u,...i,children:e.jsxs(Io,{"data-sidebar":"sidebar","data-mobile":"true",className:"w-[--sidebar-width] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden sidebar-mobile",style:{"--sidebar-width":"18rem"},side:t,children:[e.jsx(Mo,{className:"sr-only",children:"Menu de Navegação"}),e.jsx("div",{className:"flex h-full w-full flex-col",children:n})]})}):e.jsxs("div",{ref:o,className:"group peer hidden md:block text-sidebar-foreground","data-state":d,"data-collapsible":"collapsed"===d?s:"","data-variant":a,"data-side":t,children:[e.jsx("div",{className:nt("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===a||"inset"===a?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),e.jsx("div",{className:nt("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex","left"===t?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]","floating"===a||"inset"===a?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",r),...i,children:e.jsx("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow bg-white",children:n})})]})});Wo.displayName="Sidebar";const Ho=B.forwardRef(({className:t,onClick:a,...s},r)=>{const{toggleSidebar:n}=qo();return e.jsxs(lt,{ref:r,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:nt("h-7 w-7",t),onClick:e=>{a?.(e),n()},...s,children:[e.jsx(l.PanelLeft,{}),e.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});Ho.displayName="SidebarTrigger";const Ko=B.forwardRef(({className:t,...a},s)=>{const{toggleSidebar:r}=qo();return e.jsx("button",{ref:s,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:r,title:"Toggle Sidebar",className:nt("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex","[[data-side=left]_&]:cursor-w-resize [[data-side=right]_&]:cursor-e-resize","[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize","group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full group-data-[collapsible=offcanvas]:hover:bg-sidebar","[[data-side=left][data-collapsible=offcanvas]_&]:-right-2","[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",t),...a})});Ko.displayName="SidebarRail";const Go=B.forwardRef(({className:t,...a},s)=>e.jsx("main",{ref:s,className:nt("relative flex min-h-svh flex-1 flex-col bg-background","peer-data-[variant=inset]:min-h-[calc(100svh-theme(spacing.4))] md:peer-data-[variant=inset]:m-2 md:peer-data-[state=collapsed]:peer-data-[variant=inset]:ml-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow",t),...a}));Go.displayName="SidebarInset";const Qo=B.forwardRef(({className:t,...a},s)=>e.jsx(ct,{ref:s,"data-sidebar":"input",className:nt("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",t),...a}));Qo.displayName="SidebarInput";const Xo=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-sidebar":"header",className:nt("flex flex-col gap-2 p-2",t),...a}));Xo.displayName="SidebarHeader";const Jo=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-sidebar":"footer",className:nt("flex flex-col gap-2 p-2",t),...a}));Jo.displayName="SidebarFooter";const Yo=B.forwardRef(({className:t,...a},s)=>e.jsx(Co,{ref:s,"data-sidebar":"separator",className:nt("mx-2 w-auto bg-sidebar-border",t),...a}));Yo.displayName="SidebarSeparator";const Zo=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-sidebar":"content",className:nt("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",t),...a}));Zo.displayName="SidebarContent";const el=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-sidebar":"group",className:nt("relative flex w-full min-w-0 flex-col p-2",t),...a}));el.displayName="SidebarGroup";const tl=B.forwardRef(({className:t,asChild:s=!1,...r},n)=>{const i=s?a.Slot:"div";return e.jsx(i,{ref:n,"data-sidebar":"group-label",className:nt("duration-200 flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opa] ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",t),...r})});tl.displayName="SidebarGroupLabel";const al=B.forwardRef(({className:t,asChild:s=!1,...r},n)=>{const i=s?a.Slot:"button";return e.jsx(i,{ref:n,"data-sidebar":"group-action",className:nt("absolute right-3 top-3.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","group-data-[collapsible=icon]:hidden",t),...r})});al.displayName="SidebarGroupAction";const sl=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-sidebar":"group-content",className:nt("w-full text-sm",t),...a}));sl.displayName="SidebarGroupContent";const rl=B.forwardRef(({className:t,...a},s)=>e.jsx("ul",{ref:s,"data-sidebar":"menu",className:nt("flex w-full min-w-0 flex-col gap-1",t),...a}));rl.displayName="SidebarMenu";const nl=B.forwardRef(({className:t,...a},s)=>e.jsx("li",{ref:s,"data-sidebar":"menu-item",className:nt("group/menu-item relative",t),...a}));nl.displayName="SidebarMenuItem";const il=s.cva("peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-primary data-[active=true]:font-medium data-[active=true]:text-sidebar-primary-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:gap-0 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 group-data-[collapsible=icon]:[&>*]:!mr-0 group-data-[collapsible=icon]:[&>*]:!ml-0",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-10 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:!p-0"}},defaultVariants:{variant:"default",size:"default"}}),ol=B.forwardRef(({asChild:t=!1,isActive:s=!1,variant:r="default",size:n="default",tooltip:i,className:o,...l},d)=>{const c=t?a.Slot:"button",{isMobile:u,state:m}=qo(),p=e.jsx(c,{ref:d,"data-sidebar":"menu-button","data-size":n,"data-active":s,className:nt(il({variant:r,size:n}),o),...l});return i?("string"==typeof i&&(i={children:i}),e.jsxs(Fo,{children:[e.jsx(zo,{asChild:!0,children:p}),e.jsx($o,{side:"right",align:"center",hidden:"collapsed"!==m||u,...i})]})):p});ol.displayName="SidebarMenuButton";const ll=B.forwardRef(({className:t,asChild:s=!1,showOnHover:r=!1,...n},i)=>{const o=s?a.Slot:"button";return e.jsx(o,{ref:i,"data-sidebar":"menu-action",className:nt("absolute right-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground outline-none ring-sidebar-ring transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 peer-hover/menu-button:text-sidebar-accent-foreground [&>svg]:size-4 [&>svg]:shrink-0","after:absolute after:-inset-2 after:md:hidden","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",r&&"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",t),...n})});ll.displayName="SidebarMenuAction";const dl=B.forwardRef(({className:t,...a},s)=>e.jsx("div",{ref:s,"data-sidebar":"menu-badge",className:nt("absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums text-sidebar-foreground select-none pointer-events-none","peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground","peer-data-[size=sm]/menu-button:top-1","peer-data-[size=default]/menu-button:top-1.5","peer-data-[size=lg]/menu-button:top-2.5","group-data-[collapsible=icon]:hidden",t),...a}));dl.displayName="SidebarMenuBadge";const cl=B.forwardRef(({className:t,showIcon:a=!1,...s},r)=>{const n=B.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return e.jsxs("div",{ref:r,"data-sidebar":"menu-skeleton",className:nt("rounded-md h-8 flex gap-2 px-2 items-center",t),...s,children:[a&&e.jsx("div",{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),e.jsx("div",{className:"h-4 flex-1 max-w-[--skeleton-width] skeleton-width","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":n}})]})});cl.displayName="SidebarMenuSkeleton";const ul=B.forwardRef(({className:t,...a},s)=>e.jsx("ul",{ref:s,"data-sidebar":"menu-sub",className:nt("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5","group-data-[collapsible=icon]:hidden",t),...a}));ul.displayName="SidebarMenuSub";const ml=B.forwardRef(({...t},a)=>e.jsx("li",{ref:a,...t}));ml.displayName="SidebarMenuSubItem";const pl=B.forwardRef(({asChild:t=!1,size:s="md",isActive:r,className:n,...i},o)=>{const l=t?a.Slot:"a";return e.jsx(l,{ref:o,"data-sidebar":"menu-sub-button","data-size":s,"data-active":r,className:nt("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground outline-none ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground","data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground","sm"===s&&"text-xs","md"===s&&"text-sm","group-data-[collapsible=icon]:hidden",n),...i})});pl.displayName="SidebarMenuSubButton";const hl=B.forwardRef(({className:t,...a},s)=>e.jsxs(ce.Root,{ref:s,className:nt("relative flex w-full touch-none select-none items-center",t),...a,children:[e.jsx(ce.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:e.jsx(ce.Range,{className:"absolute h-full bg-primary"})}),e.jsx(ce.Thumb,{className:"block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));hl.displayName=ce.Root.displayName;const fl=ue.Root,xl=B.forwardRef(({className:t,...a},s)=>e.jsx(ue.List,{ref:s,className:nt("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",t),...a}));xl.displayName=ue.List.displayName;const gl=B.forwardRef(({className:t,...a},s)=>e.jsx(ue.Trigger,{ref:s,className:nt("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",t),...a}));gl.displayName=ue.Trigger.displayName;const bl=B.forwardRef(({className:t,...a},s)=>e.jsx(ue.Content,{ref:s,className:nt("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",t),...a}));bl.displayName=ue.Content.displayName;const vl=s.cva("inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent hover:bg-accent hover:text-accent-foreground"},size:{default:"h-10 px-3",sm:"h-9 px-2.5",lg:"h-11 px-5"}},defaultVariants:{variant:"default",size:"default"}}),yl=B.forwardRef(({className:t,variant:a,size:s,...r},n)=>e.jsx(me.Root,{ref:n,className:nt(vl({variant:a,size:s,className:t})),...r}));yl.displayName=me.Root.displayName;const Nl=B.createContext({size:"default",variant:"default"}),jl=B.forwardRef(({className:t,variant:a,size:s,children:r,...n},i)=>e.jsx(pe.Root,{ref:i,className:nt("flex items-center justify-center gap-1",t),...n,children:e.jsx(Nl.Provider,{value:{variant:a,size:s},children:r})}));jl.displayName=pe.Root.displayName;const wl=B.forwardRef(({className:t,children:a,variant:s,size:r,...n},i)=>{const o=B.useContext(Nl);return e.jsx(pe.Item,{ref:i,className:nt(vl({variant:o.variant||s,size:o.size||r}),t),...n,children:a})});function kl({onEdit:t,onDelete:a,onToggleStatus:s,isActive:r=!0,canEdit:n=!0,canDelete:i=!0,customActions:o=[],renderAs:d="dropdown",variant:c="default"}){const{t:u}=Ya(),m=[];return t&&n&&m.push({icon:l.Edit,label:u("edit"),onClick:t,variant:"default"}),s&&m.push({icon:r?l.PowerOff:l.Power,label:u(r?"deactivate":"activate"),onClick:s,variant:"default"}),o.forEach(e=>{!1!==e.show&&m.push({icon:e.icon,label:e.label,onClick:e.onClick,variant:e.variant||"default"})}),a&&i&&m.push({icon:l.Trash2,label:u("remove"),onClick:a,variant:"destructive"}),0===m.length?null:"dropdown"===d?e.jsxs(Er,{children:[e.jsx(Tr,{asChild:!0,children:e.jsx(lt,{variant:"ghost",size:"compact"===c?"sm":"default",className:"compact"===c?"h-7 px-2":"",children:e.jsx(l.EllipsisVertical,{size:"compact"===c?14:16})})}),e.jsx(Or,{align:"end",className:"bg-background border border-border shadow-lg min-w-[120px]",children:m.map((t,a)=>e.jsxs(Dr,{onClick:t.onClick,className:"destructive"===t.variant?"text-destructive":"",children:[t.icon&&e.jsx(t.icon,{className:"mr-2 h-4 w-4"}),t.label]},a))})]}):e.jsx("div",{className:"flex items-center gap-1",children:m.map((t,a)=>e.jsxs(lt,{variant:"destructive"===t.variant?"destructive":"ghost",size:"compact"===c?"sm":"default",onClick:t.onClick,className:"compact"===c?"h-7 px-2":"",children:[t.icon&&e.jsx(t.icon,{size:"compact"===c?14:16}),"compact"!==c&&e.jsx("span",{className:"ml-1",children:t.label})]},a))})}function Cl(e){const t=b.useNavigate();return{onNew:()=>{const a=e.newPath||`${e.basePath}/new`;t(a)},onEdit:a=>{const s=e.editPath?e.editPath.replace(":id",a.id):`${e.basePath}/${a.id}/edit`;t(s)}}}wl.displayName=pe.Item.displayName;const Sl=new class{async getUserPreferences(e,t){if(!us.areAllTokensValid())return null;const a=Ns();try{const{data:s,error:r}=await a.schema("common").from("user_preferences").select("*").eq("id_user",e).eq("alias",t).maybeSingle();if(r)return"PGRST116"===r.code?this.createDefaultPreferences(e,t):("42501"===r.code||"PGRST301"===r.code||r.message?.includes("permission denied"),null);if(!s)return this.createDefaultPreferences(e,t);const n=s;return{locale:n.locale,timezone:n.timezone,datetimeFormat:n.datetime_format}}catch(s){return null}}async createDefaultPreferences(e,t){const a=Ns(),s={id_user:e,locale:"pt-BR",timezone:"America/Sao_Paulo",datetime_format:"dd/MM/yyyy HH:mm",alias:t};try{const{data:e,error:t}=await a.schema("common").from("user_preferences").insert(s).select().single();if(t)throw t;const r=e;return{locale:r.locale,timezone:r.timezone,datetimeFormat:r.datetime_format}}catch(r){throw r}}async updatePreferences(e,t,a){const s=Ns();try{const{error:r}=await s.schema("common").from("user_preferences").update(a).eq("id_user",e).eq("alias",t);if(r)throw r}catch(r){throw r}}};var Pl=Object.defineProperty,El=(e,t,a)=>((e,t,a)=>t in e?Pl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const Tl=new class{constructor(){El(this,"cache",{}),El(this,"cacheTimestamps",new Map),El(this,"CACHE_TTL",3e5),El(this,"loadingPromises",new Map)}isCacheValid(e){const t=this.cacheTimestamps.get(e);return!!t&&Date.now()-t<this.CACHE_TTL}async loadTranslations(e){if(this.isCacheValid(e))return this.cache[e]||{};const t=this.loadingPromises.get(e);if(t)return t;const a=this.fetchTranslations(e);this.loadingPromises.set(e,a);try{return await a}finally{this.loadingPromises.delete(e)}}async fetchTranslations(e){try{if(!us.areAllTokensValid())return{};const t=Ns(),{data:a,error:s}=await t.schema("common").from("translations").select("key, pt, en, es").eq("is_removed",!1);if(s)return"42501"===s.code||"PGRST301"===s.code||s.message?.includes("permission denied")||s.message?.includes("No suitable key"),{};const r={};return a?.forEach(t=>{let a;a="pt-BR"===e?t.pt:"en-US"===e?t.en||t.pt:"es-ES"===e&&t.es||t.pt,a&&(r[t.key]=a)}),this.cache[e]=r,this.cacheTimestamps.set(e,Date.now()),r}catch(t){return{}}}async upsertTranslation(e,t,a,s){const r=Ns(),{error:n}=await r.schema("common").from("translations").upsert({key:e,pt:t,en:a,es:s},{onConflict:"key"});if(n)throw n;this.clearCache()}async bulkUpsertTranslations(e){const t=Ns(),{error:a}=await t.schema("common").from("translations").upsert(e.map(e=>({key:e.key,pt:e.pt,en:e.en,es:e.es})),{onConflict:"key"});if(a)throw a;this.clearCache()}clearCache(){this.cache={},this.cacheTimestamps.clear()}clearCacheForLocale(e){delete this.cache[e],this.cacheTimestamps.delete(e)}};var Al=Object.defineProperty,_l=(e,t,a)=>((e,t,a)=>t in e?Al(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const Il="true"===(void 0).VITE_I18N_DEBUG_MODE;st.use(new class{constructor(e=!1){_l(this,"type","backend"),_l(this,"isDebugMode"),_l(this,"cache",new Map),_l(this,"loadingPromises",new Map),this.isDebugMode=e}read(e,t,a){if(!us.areAllTokensValid())return void a(null,{});if(this.cache.has(e))return void a(null,this.cache.get(e));if(this.loadingPromises.has(e))return void this.loadingPromises.get(e).then(()=>{a(null,this.cache.get(e)||{})});const s=Tl.loadTranslations(e).then(t=>{if(this.isDebugMode){const a={};Object.keys(t).forEach(e=>{a[e]=`[${e} ✅]`}),this.cache.set(e,a)}else this.cache.set(e,t)}).catch(t=>{this.cache.set(e,{})}).finally(()=>{this.loadingPromises.delete(e)});this.loadingPromises.set(e,s),s.then(()=>{a(null,this.cache.get(e)||{})})}create(e,t,a,s){}}(Il)).use($a).init({fallbackLng:"pt-BR",lng:"pt-BR",defaultNS:"translations",ns:["translations"],interpolation:{escapeValue:!1},react:{useSuspense:!1},saveMissing:!1,returnEmptyString:!1,parseMissingKeyHandler:(e,t)=>Il?`[${e} ❌]`:`[⚠️ ${e}]`});const Rl=t.createContext(void 0),Ll=()=>{const e=t.useContext(Rl);if(!e)throw new Error("useLocale deve ser usado dentro de LocaleProvider");return e},Ml=[{value:"pt-BR",label:"Português (BR)",flag:"🇧🇷"},{value:"en-US",label:"English (US)",flag:"🇺🇸"},{value:"es-ES",label:"Español",flag:"🇪🇸"}],Ol=[{value:"dd/MM/yyyy HH:mm",label:"dd/MM/yyyy HH:mm",example:"28/11/2024 14:30",description:"Padrão Brasileiro"},{value:"MM/dd/yyyy hh:mm a",label:"MM/dd/yyyy hh:mm a",example:"11/28/2024 02:30 PM",description:"Padrão Americano (12h)"},{value:"MM/dd/yyyy HH:mm",label:"MM/dd/yyyy HH:mm",example:"11/28/2024 14:30",description:"Padrão Americano (24h)"},{value:"yyyy-MM-dd HH:mm",label:"yyyy-MM-dd HH:mm",example:"2024-11-28 14:30",description:"ISO 8601"},{value:"dd.MM.yyyy HH:mm",label:"dd.MM.yyyy HH:mm",example:"28.11.2024 14:30",description:"Padrão Europeu"},{value:"d MMM yyyy, HH:mm",label:"d MMM yyyy, HH:mm",example:"28 Nov 2024, 14:30",description:"Formato Longo"}],Dl=[{value:"America/Sao_Paulo",label:"Brasília (UTC-3)",offset:"-03:00"},{value:"America/Noronha",label:"Fernando de Noronha (UTC-2)",offset:"-02:00"},{value:"America/Manaus",label:"Manaus (UTC-4)",offset:"-04:00"},{value:"America/Rio_Branco",label:"Rio Branco (UTC-5)",offset:"-05:00"},{value:"America/New_York",label:"New York (UTC-5/-4)",offset:"-05:00"},{value:"America/Chicago",label:"Chicago (UTC-6/-5)",offset:"-06:00"},{value:"America/Los_Angeles",label:"Los Angeles (UTC-8/-7)",offset:"-08:00"},{value:"Europe/London",label:"Londres (UTC+0/+1)",offset:"+00:00"},{value:"Europe/Paris",label:"Paris (UTC+1/+2)",offset:"+01:00"},{value:"Europe/Berlin",label:"Berlim (UTC+1/+2)",offset:"+01:00"},{value:"Asia/Tokyo",label:"Tóquio (UTC+9)",offset:"+09:00"},{value:"Australia/Sydney",label:"Sydney (UTC+10/+11)",offset:"+10:00"}],Fl=()=>{const{locale:t,datetimeFormat:a,timezone:s,setLocale:r,setDatetimeFormat:n,setTimezone:i}=Ll(),{t:o}=Ya();return e.jsxs("div",{className:"space-y-4 p-4",children:[e.jsxs("div",{children:[e.jsxs("label",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e.jsx(l.Globe,{className:"h-4 w-4"}),o("language")]}),e.jsxs(Ft,{value:t,onValueChange:r,children:[e.jsx(Ut,{children:e.jsx($t,{})}),e.jsx(Bt,{children:Ml.map(t=>e.jsxs(Ht,{value:t.value,children:[t.flag," ",t.label]},t.value))})]})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e.jsx(l.Clock,{className:"h-4 w-4"}),o("timezone")||"Fuso Horário"]}),e.jsxs(Ft,{value:s,onValueChange:i,children:[e.jsx(Ut,{children:e.jsx($t,{})}),e.jsx(Bt,{children:Dl.map(t=>e.jsx(Ht,{value:t.value,children:t.label},t.value))})]})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e.jsx(l.Calendar,{className:"h-4 w-4"}),o("dateTimeFormat")||"Formato de Data/Hora"]}),e.jsxs(Ft,{value:a,onValueChange:n,children:[e.jsx(Ut,{children:e.jsx($t,{})}),e.jsx(Bt,{children:Ol.map(t=>e.jsx(Ht,{value:t.value,children:e.jsxs("div",{className:"flex flex-col items-start",children:[e.jsx("span",{children:t.label}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:[t.description," • ",t.example]})]})},t.value))})]})]})]})},zl=t.memo(({variant:a="card",className:s="",selectedUnit:r,onUnitChange:n})=>{const{user:i,companies:o,alias:d,isAuthenticated:c,logout:u,switchUnit:m}=ar(),[p,h]=t.useState(!1),f=o?.[0]||null,x=d?o?.find(e=>e.alias===d):f,g=o||[],b=r||x||f||f,v=t.useCallback(e=>{n?n(e):m(e)},[n,m]),y=t.useMemo(()=>{if(!g?.length)return[];const e=new Map;g.forEach(t=>{e.set(t.alias,t)});const t=Array.from(e.values()),a=t.find(e=>e.alias===b?.alias),s=t.filter(e=>e.alias!==b?.alias);return s.sort((e,t)=>(e.name||"").localeCompare(t.name||"","pt-BR",{sensitivity:"base"})),a?[a,...s]:s},[g,b?.alias]);if(!c||!i)return null;const N=()=>e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("div",{className:"flex-shrink-0",children:e.jsx("div",{className:"w-10 h-10 bg-primary rounded-full flex items-center justify-center",children:e.jsx(l.User,{className:"h-5 w-5 text-primary-foreground"})})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-sm font-medium truncate",children:i.name}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Unidade: ",b?.name||"N/A"]})]})]}),b&&e.jsx("div",{className:"mt-3",children:e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(l.Building2,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm font-medium",children:b.name})]})}),y.length>1&&e.jsxs("div",{className:"mt-2",children:[e.jsxs("p",{className:"text-xs text-muted-foreground mb-1",children:["Unidades disponíveis: ",y.length]}),e.jsxs("div",{className:"flex flex-wrap gap-1",children:[y.slice(0,3).map(t=>e.jsx(Jt,{variant:t.alias===b?.alias?"default":"secondary",className:"text-xs cursor-pointer",onClick:()=>v(t),children:t.name},t.alias)),y.length>3&&e.jsxs(Jt,{variant:"outline",className:"text-xs",children:["+",y.length-3]})]})]})]});return"dropdown"===a?e.jsxs(Er,{children:[e.jsx(Tr,{asChild:!0,children:e.jsx(lt,{variant:"ghost",className:`h-auto p-2 ${s}`,children:e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsxs("div",{className:"hidden md:block text-left",children:[e.jsx("p",{className:"text-sm font-medium",children:i.name}),e.jsx("p",{className:"text-xs text-muted-foreground",children:b?.name||"N/A"})]}),e.jsx("div",{className:"w-8 h-8 bg-primary rounded-full flex items-center justify-center",children:e.jsx(l.User,{className:"h-4 w-4 text-primary-foreground"})}),e.jsx(l.ChevronDown,{className:"h-4 w-4"})]})})}),e.jsxs(Or,{className:"w-56 bg-background border border-border shadow-lg z-50",align:"end",children:[e.jsxs(Ir,{children:[e.jsxs(Lr,{children:[e.jsx(l.RefreshCw,{className:"mr-2 h-4 w-4"}),"Alterar Unidade"]}),e.jsx(Mr,{children:y.map(t=>e.jsxs(Dr,{onClick:()=>v(t),className:t.alias===b?.alias?"bg-muted":"",children:[e.jsx(l.Building2,{className:"mr-2 h-4 w-4"}),t.name,t.alias===b?.alias&&e.jsx(Jt,{variant:"outline",className:"ml-2 text-xs",children:"Atual"})]},t.alias))})]}),e.jsx(Ur,{}),e.jsxs(Dr,{onClick:()=>h(!0),children:[e.jsx(l.Settings,{className:"mr-2 h-4 w-4"}),"Preferências"]}),e.jsxs(Dr,{onClick:u,children:[e.jsx(l.LogOut,{className:"mr-2 h-4 w-4"}),"Sair"]})]}),e.jsx(vt,{open:p,onOpenChange:h,children:e.jsxs(kt,{children:[e.jsx(Ct,{children:e.jsx(Pt,{children:"Preferências de Internacionalização"})}),e.jsx(Fl,{})]})})]}):e.jsxs(pt,{className:s,children:[e.jsx(ht,{children:e.jsx(ft,{className:"text-lg",children:"Informações do Usuário"})}),e.jsxs(gt,{className:"space-y-4",children:[e.jsx(N,{}),e.jsx(Co,{}),e.jsxs(lt,{variant:"outline",onClick:()=>h(!0),size:"sm",className:"w-full",children:[e.jsx(l.Settings,{className:"mr-2 h-4 w-4"}),"Preferências"]}),e.jsxs(lt,{variant:"outline",onClick:u,size:"sm",className:"w-full",children:[e.jsx(l.LogOut,{className:"mr-2 h-4 w-4"}),"Sair"]}),e.jsx(vt,{open:p,onOpenChange:h,children:e.jsxs(kt,{children:[e.jsx(Ct,{children:e.jsx(Pt,{children:"Preferências de Internacionalização"})}),e.jsx(Fl,{})]})})]})]})}),$l=t.createContext({});function Ul({children:a,config:s}){const r=t.useMemo(()=>({navigation:s?.navigation,appName:s?.appName}),[s?.navigation,s?.appName]);return e.jsx($l.Provider,{value:r,children:a})}function Vl(){return t.useContext($l)}function ql(){const e=b.useLocation(),{navigation:t}=Vl(),{t:a}=Ya();if(!t)return a("page");const s=t.find(t=>t.path===e.pathname);if(s)return s.label;const r=t.find(t=>e.pathname.startsWith(t.path+"/"));return r?.label||a("page")}function Bl(e,a){const[s,r]=t.useState(e),n=t.useRef(),i=t.useCallback(()=>{n.current&&(clearTimeout(n.current),n.current=void 0)},[]);return t.useEffect(()=>(i(),n.current=setTimeout(()=>{r(e)},a),i),[e,a,i]),[s,i]}const Wl=t.memo(function({actions:a}){const s=b.useLocation(),r=ql(),{navigation:n,appName:i}=Vl(),{metadata:o,headerActions:d}=Vn(),{t:c}=Ya(),{companies:u,alias:m,isSearchVisible:p,clearSearch:h,refreshData:f,switchUnit:x}=ar(),g=m?u?.find(e=>e.alias===m)||u?.[0]||null:u?.[0]||null,[v,y]=b.useSearchParams(),[N,j]=t.useState(()=>v.get("search")||""),[w,k]=Bl(N,Ls.debounceDelay);t.useEffect(()=>{if(!p)return;const e=new URLSearchParams(v);w?(e.set("search",w),e.set("page","1")):e.delete("search"),y(e)},[w,y,p]);const C=n?.find(e=>e.path===s.pathname)||n?.find(e=>s.pathname.startsWith(e.path+"/")),S=o.title||r,P=o.subtitle||C?.complementaryText||c("item_details");return e.jsx("header",{className:"bg-white border-b border-gray-200 px-2 md:px-4 py-2",children:e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsxs("div",{className:"flex-shrink-0",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx("h1",{className:"text-lg font-semibold text-foreground truncate",children:S}),e.jsx(Jt,{variant:"default",className:"bg-primary hover:bg-primary/90 text-primary-foreground text-xs px-2 py-1",children:i||c("module")})]}),P&&e.jsx("p",{className:"text-sm text-muted-foreground truncate",children:P})]}),p&&e.jsxs("div",{className:"flex items-center gap-2 flex-1 max-w-2xl",children:[e.jsxs("div",{className:"relative flex-1",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e.jsx(ct,{placeholder:c("search"),value:N,onChange:e=>(e=>{j(e)})(e.target.value),className:"w-full pl-10 pr-8"}),N&&e.jsx(lt,{variant:"ghost",size:"sm",className:"absolute right-1 top-1/2 transform -translate-y-1/2 h-6 w-6 p-0 hover:bg-gray-100",onClick:()=>{k(),j("");const e=new URLSearchParams(v);e.delete("search"),e.delete("page"),y(e)},title:c("clear_search"),children:e.jsx(l.X,{size:14})})]}),e.jsx(lt,{variant:"outline",size:"sm",onClick:f,className:"flex-shrink-0 h-10 w-10 p-0",title:c("refresh_data"),children:e.jsx(l.RefreshCw,{size:14})})]}),e.jsxs("div",{className:"flex-shrink-0 ml-auto flex items-center gap-3",children:[(d||a)&&e.jsx("div",{className:"flex items-center gap-2",children:d||a}),(void 0).VITE_WIKI_URL&&e.jsx(lt,{variant:"secondary",size:"sm",className:"h-8 px-3",onClick:e=>rt((void 0).VITE_WIKI_URL,e),title:c("open_wiki"),children:"Wiki"}),e.jsx("div",{className:"text-sm",children:e.jsx(zl,{variant:"dropdown",selectedUnit:g,onUnitChange:x})})]})]})})}),Hl=({key:e,enabled:t,checkFn:a,staleTime:s=3e5,gcTime:r=6e5})=>g.useQuery({queryKey:["permission",e],queryFn:a,enabled:t,staleTime:s,gcTime:r,retry:0,refetchOnWindowFocus:!1}),Kl=(e={})=>{const{enabled:t=!0}=e,{alias:a}=ar();return g.useQuery({queryKey:["active-modules",a],queryFn:async()=>{if(!a)return[];const e=Ns(),{data:t,error:s}=await e.schema("central").from("modules").select("\n id, name, url,\n modules_alias!inner(alias)\n ").eq("modules_alias.alias",a).eq("status","active").order("name");if(s){if(!Ss.handleError(s))throw s;return[]}return t||[]},enabled:t&&!!a})},Gl="forlogic-sidebar-pinned",Ql=()=>{try{const e=localStorage.getItem(Gl);return!!e&&JSON.parse(e)}catch{return!1}},Xl=e=>{const t=["border-l-yellow-400","border-l-green-400","border-l-blue-400","border-l-red-400","border-l-purple-400","border-l-pink-400"];return t[e%t.length]},Jl=`https://${(void 0).VITE_SUPABASE_PROJECT_ID_STORAGE??(void 0).VITE_SUPABASE_PROJECT_ID}.supabase.co/storage/v1/object/public/library-assets`,Yl={logo:`${Jl}/${Fs.isQualiex?"logo-qualiex.svg":"logo.svg"}`,smallLogo:`${Jl}/${Fs.isQualiex?"small-forlogic.svg":"small.svg"}`},Zl=Yl.logo,ed=Yl.smallLogo;function td({appName:t,isPinned:a,onPinToggle:s,open:r,dropdownOpen:n,onDropdownChange:i}){const{t:o}=Ya(),{data:d,isLoading:c,error:u}=Kl({enabled:n}),m=e=>{((e,t)=>{const a=e?.find(e=>e.url===t);a?.url&&window.open(a.url,"_blank")})(d,e)};return e.jsxs(Xo,{className:"p-0 gap-0",children:[e.jsx("div",{className:"flex items-center justify-between h-[34px]",children:r?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex items-center pl-[12px]",children:e.jsx("img",{src:Yl.logo,alt:"Logo",className:"h-6 max-w-full object-contain"})}),e.jsx("button",{onClick:s,className:"h-8 w-8 flex items-center justify-center rounded-md transition-colors duration-200 "+(a?"bg-primary/20 text-primary":"hover:bg-muted text-muted-foreground"),children:e.jsx(l.PanelLeft,{className:"h-4 w-4"})})]}):e.jsx("div",{className:"flex items-center justify-center w-full h-[34px]",children:e.jsx("img",{src:Yl.smallLogo,alt:"Logo",className:"h-[34px] w-[34px] object-contain"})})}),e.jsx("div",{className:"mt-2 pt-0",children:e.jsxs(Er,{onOpenChange:i,children:[e.jsx(Tr,{asChild:!0,children:r?e.jsxs("div",{className:"bg-muted hover:bg-muted/80 text-foreground font-medium text-sm flex items-center justify-between cursor-pointer transition-all duration-200 h-8 px-3 gap-3 rounded-md w-full",children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx("img",{src:"https://ccjfvpnndclajkleyqkc.supabase.co/storage/v1/object/public/library-assets/composit.svg",alt:"Menu",className:"h-6 w-6 text-muted-foreground flex-shrink-0"}),e.jsx("span",{className:"truncate group-data-[collapsible=icon]:hidden",children:t})]}),e.jsx(l.ChevronDown,{className:"h-6 w-6 flex-shrink-0 text-muted-foreground"})]}):e.jsx("div",{className:"flex items-center justify-center w-full h-8 bg-muted hover:bg-muted/80 rounded-md cursor-pointer transition-all duration-200 p-[5px]",children:e.jsx(l.ChevronDown,{className:"h-6 w-6 text-muted-foreground"})})}),e.jsx(Or,{className:r?"w-80 bg-white rounded-lg shadow-lg border border-gray-200 p-4 z-50":"w-[58px] bg-white rounded-lg shadow-lg border border-gray-200 p-2 z-50",align:r?"start":"center",children:c?e.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-muted-foreground",children:[e.jsx(l.Loader2,{className:"h-4 w-4 animate-spin"}),e.jsx("span",{className:"text-sm",children:o("loading")})]}):u?e.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-destructive",children:[e.jsx(l.AlertCircle,{className:"h-4 w-4"}),e.jsx("span",{className:"text-sm",children:o("error")})]}):d&&0!==d.length?e.jsx("div",{className:"space-y-2",children:d.map((t,a)=>e.jsx("div",{onClick:()=>m(t.url||""),className:`\n bg-muted/50 hover:bg-muted rounded-md p-3 cursor-pointer \n border-l-4 ${Xl(a)} transition-colors duration-200\n `,children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"font-medium text-foreground text-sm",children:t.name}),t.url&&e.jsx(l.ExternalLink,{className:"h-4 w-4 text-muted-foreground"})]})},t.id))}):e.jsx("div",{className:"py-3 px-3 text-muted-foreground text-sm",children:o("no_results")})})]})})]})}function ad({direction:e="right",minWidth:a=224,maxWidth:s=384,defaultWidth:r=240,storageKey:n="sidebar-width",onResize:i,isOpen:o=!0}={}){const[l,d]=t.useState(()=>{if("undefined"==typeof window)return r;const e=localStorage.getItem(n);return e?parseInt(e):r}),[c,u]=t.useState(!1),m=t.useRef(null);t.useEffect(()=>{const e=document.querySelector(".sidebar-container");e&&e instanceof HTMLElement&&(o?e.style.setProperty("--sidebar-width",`${l}px`):e.style.setProperty("--sidebar-width","240px"))},[l,o]);const p=t.useCallback(e=>{e.preventDefault(),u(!0)},[]);return t.useEffect(()=>{if(!c)return;const t=t=>{let r;r="left"===e?window.innerWidth-t.clientX:t.clientX,r=Math.max(a,Math.min(s,r)),d(r),i?.(r)},r=()=>{u(!1),localStorage.setItem(n,l.toString())};return document.addEventListener("mousemove",t),document.addEventListener("mouseup",r),()=>{document.removeEventListener("mousemove",t),document.removeEventListener("mouseup",r)}},[c,e,a,s,l,n,i]),t.useEffect(()=>{c?(document.body.style.cursor="ew-resize",document.body.style.userSelect="none"):(document.body.style.cursor="",document.body.style.userSelect="")},[c,e]),{width:l,isDragging:c,dragRef:m,handleMouseDown:p}}const sd=t.forwardRef(({className:t,onMouseDown:a,isDragging:s,...r},n)=>e.jsx("div",{ref:n,onMouseDown:a,className:nt("absolute inset-y-0 right-0 w-1 cursor-ew-resize","hover:bg-primary/20 transition-colors","after:absolute after:inset-y-0 after:-left-1 after:-right-1 after:content-['']",s&&"bg-primary/40",t),...r}));function rd({config:a,customContent:s,resizable:r=!1,minWidth:n=224,maxWidth:i=384}={}){const{t:o}=Ya(),{open:d,setOpen:c}=qo(),u=b.useLocation(),{alias:m,user:p}=ar(),[h,f]=t.useState(!1),[x,g]=t.useState(Ql),[v,y]=t.useState(!1),N=t.useRef(!1),j=r?ad({minWidth:n,maxWidth:i,storageKey:"app-sidebar-width",isOpen:d}):null;t.useEffect(()=>{c(!!x||!(!v&&!h))},[x,v,h,c]);return e.jsxs(Wo,{collapsible:"icon",onMouseEnter:()=>{x||N.current||y(!0)},onMouseLeave:()=>{x||y(!1)},className:"app-sidebar bg-white border-r border-gray-200 py-6 px-3",style:j&&d?{width:`${j.width}px`,transition:"none"}:{transition:"all 300ms ease-in-out"},children:[e.jsx(td,{appName:a?.appName||o("module_title"),isPinned:x,onPinToggle:()=>{const e=!x;g(e),(e=>{try{localStorage.setItem(Gl,JSON.stringify(e))}catch{}})(e),e||(N.current=!0,y(!1),c(!1),setTimeout(()=>{N.current=!1},300))},open:d,dropdownOpen:h,onDropdownChange:f}),e.jsx(Zo,{children:s||e.jsx(el,{className:"p-0 mt-6",children:e.jsx(sl,{children:e.jsx(rl,{className:"space-y-2",children:e.jsx(Do,{children:a?.navigation?.map((t,a)=>{const s=({item:t,index:a})=>{const r=`${t.path}-${a}-${m??"noalias"}-${p?.id??"nouser"}`,{data:n=!0,isLoading:i}=Hl({key:r,enabled:Boolean(t.permissionCheck&&m&&p?.id),checkFn:t.permissionCheck||(()=>Promise.resolve(!0))}),d=t.permissionCheck&&!n;if(d&&"Admin"===t.label)return null;const c=i?l.Loader2:d?l.Lock:t.icon;d?o("restricted_access"):t.complementaryText;return t.children&&t.children.length>0?e.jsx(Ti,{defaultOpen:!0,className:"group/collapsible",children:e.jsxs(nl,{children:[e.jsx(Ai,{asChild:!0,children:e.jsx(ol,{size:"lg",className:"h-10",children:e.jsxs("div",{className:"flex w-full items-center gap-3",children:[e.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e.jsx(c,{className:"h-5 w-4"})}),e.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:t.label}),e.jsx(l.ChevronRight,{className:"ml-auto h-4 w-4 transition-transform group-data-[state=open]/collapsible:rotate-90 group-data-[collapsible=icon]:hidden"})]})})}),e.jsx(_i,{children:e.jsx(ul,{children:t.children.map((t,a)=>e.jsx(s,{item:t,index:a},t.path))})})]})},t.path):e.jsx(nl,{children:d||i?e.jsxs(Fo,{children:[e.jsx(zo,{asChild:!0,children:e.jsx(ol,{size:"lg",className:"h-10 opacity-50 cursor-not-allowed",onClick:e=>e.preventDefault(),children:e.jsxs("div",{className:"flex w-full items-center gap-3",children:[e.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e.jsx(c,{className:"h-4 w-4 "+(i?"animate-spin":"")})}),e.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:t.label})]})})}),e.jsx($o,{children:e.jsx("p",{children:o(i?"checking_access":"restricted_access")})})]}):e.jsx(ol,{asChild:!0,isActive:(h=t.path,u.pathname===h||u.pathname.startsWith(h+"/")),size:"lg",className:"h-10",children:e.jsxs(b.Link,{to:t.path,className:"flex w-full items-center gap-3",children:[e.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e.jsx(c,{className:"h-5 w-4"})}),e.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:t.label})]})})},t.path);var h};return e.jsx(s,{item:t,index:a},t.path)})})})})})}),r&&j&&d&&e.jsx(sd,{ref:j.dragRef,onMouseDown:j.handleMouseDown,isDragging:j.isDragging})]})}sd.displayName="ResizableRail";const nd=t.memo(function({children:a,sidebar:s,sidebarConfig:r,showHeader:n=!0}){const i=t.useMemo(()=>s||e.jsx(rd,{config:r}),[s,r]),o=t.useMemo(()=>({"--sidebar-width":"240px","--sidebar-width-icon":"58px"}),[]);return e.jsx(Ul,{config:r,children:e.jsx(Un,{children:e.jsx(Bo,{defaultOpen:!1,style:o,children:e.jsxs("div",{className:"sidebar-container min-h-screen flex w-full",children:[i,e.jsxs("main",{className:"flex-1 flex flex-col h-screen overflow-hidden",children:[n&&e.jsx("div",{className:"flex-shrink-0 sticky top-0 z-10 bg-background",children:e.jsx(Wl,{})}),e.jsx("div",{className:"flex-1 overflow-y-auto bg-gray-50",children:a})]})]})})})})});var id=Object.defineProperty,od=(e,t,a)=>((e,t,a)=>t in e?id(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,t+"",a);class ld extends t.Component{constructor(e){super(e),od(this,"copyErrorDetails",()=>{const e=hs.getErrors().slice(0,2),t=`\n=== ERRO ATUAL ===\n${this.state.error?.message||"Erro desconhecido"}\n\nStack Trace:\n${this.state.error?.stack||"Não disponível"}\n\n=== ÚLTIMOS ERROS ===\n${e.map((e,t)=>`${t+1}. [${new Date(e.timestamp).toLocaleTimeString()}] ${e.message}`).join("\n")||"Nenhum erro registrado"}\n `.trim();navigator.clipboard.writeText(t),oa({title:"Detalhes copiados!",description:"Os detalhes do erro foram copiados para a área de transferência."})}),this.state={hasError:!1,showDetails:!1}}static getDerivedStateFromError(e){if((void 0).DEV)throw e;return{hasError:!0,error:e}}componentDidCatch(e,t){if((void 0).DEV)throw e;hs.handleError(e,!1),this.setState({errorInfo:t})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const t=hs.getErrors().slice(0,2);return e.jsx("div",{className:"flex items-center justify-center min-h-screen p-4",children:e.jsxs(pt,{className:"w-full max-w-2xl",children:[e.jsxs(ht,{className:"text-center",children:[e.jsx("div",{className:"flex justify-center mb-4",children:e.jsx(l.AlertTriangle,{className:"h-12 w-12 text-destructive"})}),e.jsx(ft,{children:"Algo deu errado"})]}),e.jsxs(gt,{className:"space-y-4",children:[e.jsx("p",{className:"text-center text-muted-foreground",children:"Ocorreu um erro inesperado. Tente recarregar a página."}),e.jsxs(Ti,{open:this.state.showDetails,onOpenChange:e=>this.setState({showDetails:e}),children:[e.jsx(Ai,{asChild:!0,children:e.jsxs(lt,{variant:"outline",className:"w-full flex items-center justify-center gap-2",children:[e.jsx(l.ChevronDown,{className:"h-4 w-4 transition-transform "+(this.state.showDetails?"rotate-180":"")}),"Ver Detalhes Técnicos"]})}),e.jsxs(_i,{className:"mt-4 space-y-4",children:[e.jsxs("div",{className:"rounded-lg border bg-card p-4 space-y-3",children:[e.jsxs("div",{children:[e.jsx("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📋 Erro Atual"}),e.jsxs("div",{className:"text-sm space-y-2",children:[e.jsx("p",{className:"font-medium text-destructive",children:this.state.error?.message||"Erro desconhecido"}),this.state.error?.stack&&e.jsx(mn,{className:"h-32 w-full rounded border bg-muted p-2",children:e.jsx("pre",{className:"text-xs text-muted-foreground whitespace-pre-wrap",children:this.state.error.stack})})]})]}),t.length>0&&e.jsxs("div",{className:"pt-3 border-t",children:[e.jsx("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📜 Últimos Erros"}),e.jsx("div",{className:"space-y-2",children:t.map((t,a)=>e.jsx("div",{className:"text-sm p-2 rounded bg-muted/50",children:e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsxs("span",{className:"font-medium text-muted-foreground shrink-0",children:[a+1,"."]}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:e.jsxs("span",{className:"text-xs text-muted-foreground",children:["[",new Date(t.timestamp).toLocaleTimeString(),"]"]})}),e.jsx("p",{className:"text-sm break-words",children:t.message})]})]})},t.id))})]})]}),e.jsxs(lt,{variant:"outline",onClick:this.copyErrorDetails,className:"w-full flex items-center justify-center gap-2",children:[e.jsx(l.Copy,{className:"h-4 w-4"}),"Copiar Detalhes"]})]})]}),e.jsx(lt,{onClick:()=>window.location.reload(),className:"w-full",children:"Recarregar Página"})]})]})})}return this.props.children}}const dd={"pt-BR":Pi,"en-US":hi,"es-ES":Ni},cd=(e,t="pt-BR")=>{if(!e)return"";const a=i.parseISO(e);if(!i.isValid(a))return"Invalid date";const s=dd[t]||Pi;return i.format(a,"PP",{locale:s})};class ud{static async sendEmail(e){const t=Ns(),{data:a,error:s}=await t.functions.invoke("send-email",{body:{template_code:e.templateCode,to:e.to,variables:e.variables,cc:e.cc,bcc:e.bcc,replyTo:e.replyTo}});if(s)throw s;return a}}const md=ud;function pd(){const[e,a]=t.useState([]),[s,r]=t.useState(!1),[n,i]=t.useState(null),[l,d]=t.useState(null);t.useEffect(()=>{c()},[]);const c=async()=>{try{const e=Ns(),{data:t,error:s}=await e.functions.invoke("openai-chat",{body:{action:"createThread"}});if(s)throw s;i(t.threadId),a([{id:"initial",role:"assistant",content:"Olá! Como posso ajudá-lo hoje?",timestamp:new Date}])}catch(e){d("Erro ao inicializar conversa"),o.toast.error("Erro ao inicializar conversa")}};return{messages:e,isLoading:s,error:l,sendMessage:t.useCallback(async e=>{if(!n||!e.trim())return;const t={id:`user-${Date.now()}`,role:"user",content:e,timestamp:new Date};a(e=>[...e,t]),r(!0),d(null);try{const t=Ns(),{data:s,error:r}=await t.functions.invoke("openai-chat",{body:{action:"sendMessage",threadId:n,message:e}});if(r)throw r;const{runId:i}=s,o=await(async e=>{if(!n)return!1;for(let a=0;a<60;a++)try{const t=Ns(),{data:a,error:s}=await t.functions.invoke("openai-chat",{body:{action:"checkRunStatus",threadId:n,runId:e}});if(s)throw s;const{status:r}=a;if("completed"===r)return!0;if("failed"===r||"cancelled"===r)throw new Error("O assistente encontrou um erro");await new Promise(e=>setTimeout(e,1e3))}catch(t){throw t}throw new Error("Tempo limite excedido")})(i);o&&await(async()=>{if(n)try{const e=Ns(),{data:t,error:s}=await e.functions.invoke("openai-chat",{body:{action:"getMessages",threadId:n}});if(s)throw s;const r=t.messages.map(e=>({id:e.id,role:e.role,content:e.content,timestamp:new Date(1e3*e.created_at)}));a(r)}catch(e){throw e}})()}catch(s){const e=s instanceof Error?s.message:"Erro ao enviar mensagem";d(e),o.toast.error(e),a(e=>e.filter(e=>e.id!==t.id))}finally{r(!1)}},[n]),threadId:n}}function hd({content:t,className:a}){return e.jsx("div",{className:nt("prose prose-sm max-w-none",a),children:e.jsx(z,{remarkPlugins:[$],components:{h1:({children:t})=>e.jsx("h1",{className:"text-lg font-bold mt-4 mb-2 text-foreground",children:t}),h2:({children:t})=>e.jsx("h2",{className:"text-base font-bold mt-3 mb-2 text-foreground",children:t}),h3:({children:t})=>e.jsx("h3",{className:"text-sm font-semibold mt-2 mb-1 text-foreground",children:t}),p:({children:t})=>e.jsx("p",{className:"text-sm mb-2 last:mb-0 text-foreground",children:t}),ul:({children:t})=>e.jsx("ul",{className:"list-disc list-inside mb-2 space-y-1",children:t}),ol:({children:t})=>e.jsx("ol",{className:"list-decimal list-inside mb-2 space-y-1",children:t}),li:({children:t})=>e.jsx("li",{className:"text-sm text-foreground",children:t}),code:({inline:t,children:a,...s})=>t?e.jsx("code",{className:"bg-muted px-1.5 py-0.5 rounded text-xs font-mono text-foreground",...s,children:a}):e.jsx("code",{className:"block bg-muted p-2 rounded text-xs font-mono overflow-x-auto mb-2 text-foreground",...s,children:a}),pre:({children:t})=>e.jsx("pre",{className:"bg-muted p-2 rounded overflow-x-auto mb-2",children:t}),a:({children:t,href:a})=>e.jsx("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-primary underline hover:text-primary/80",children:t}),blockquote:({children:t})=>e.jsx("blockquote",{className:"border-l-4 border-primary pl-3 italic my-2 text-muted-foreground",children:t}),strong:({children:t})=>e.jsx("strong",{className:"font-bold text-foreground",children:t}),em:({children:t})=>e.jsx("em",{className:"italic text-foreground",children:t})},children:t})})}function fd({open:a,onOpenChange:s,placeId:r,placeName:n,onMakeManager:i,onMakeMembers:o,currentManagerId:d,currentMemberIds:c=[]}){const{t:u}=Ya(),[m,p]=t.useState([]),[h,f]=t.useState(!1),[x,g]=t.useState(""),{data:b=[],isLoading:v}=gn({enabled:a}),y=t.useMemo(()=>{let e=[...b];if(e.sort((e,t)=>{const a=e.userName?.toLowerCase()||"",s=t.userName?.toLowerCase()||"";return a.localeCompare(s)}),x){const t=x.toLowerCase();e=e.filter(e=>e.userName?.toLowerCase().includes(t)||e.userEmail?.toLowerCase().includes(t))}return e},[b,x]),N=e=>{p(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},j=1===m.length,w=m.length>0;return e.jsx(vt,{open:a,onOpenChange:s,children:e.jsxs(kt,{className:"max-w-2xl",children:[e.jsx(Ct,{children:e.jsxs(Pt,{className:"flex items-center gap-2",children:[e.jsx(l.Users,{className:"h-5 w-5"}),"Gerenciar Acessos - ",n]})}),e.jsxs("div",{className:"relative",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(ct,{placeholder:u("search_placeholder"),value:x,onChange:e=>g(e.target.value),className:"pl-9"})]}),e.jsx(mn,{className:"h-[400px] pr-4",children:v?e.jsx("div",{className:"space-y-2",children:[...Array(5)].map((t,a)=>e.jsx(Ea,{className:"h-16 w-full"},a))}):0===y.length?e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e.jsx(l.Users,{className:"h-12 w-12 text-muted-foreground/50 mb-3"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:x?"Nenhum usuário encontrado":"Nenhum usuário disponível"})]}):e.jsx("div",{className:"space-y-2",children:y.map(t=>{const a=t.userId===d,s=c.includes(t.userId||""),r=m.includes(t.userId||"");return e.jsxs("div",{className:nt("flex items-center gap-3 p-3 rounded-lg border transition-colors",r&&"bg-accent border-primary","hover:bg-accent/50 cursor-pointer"),onClick:()=>N(t.userId||""),children:[e.jsx(Gt,{checked:r,onCheckedChange:()=>N(t.userId||""),onClick:e=>e.stopPropagation()}),e.jsxs("div",{className:"flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("p",{className:"font-medium",children:t.userName}),a&&e.jsx(l.Crown,{className:"h-4 w-4 text-yellow-500"})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t.userEmail})]}),(a||s)&&e.jsx("div",{className:"text-xs text-muted-foreground",children:a?"Gestor":"Membro"})]},t.userId)})})}),e.jsxs(St,{className:"flex gap-2 sm:gap-2",children:[e.jsx("div",{className:"flex-1 text-sm text-muted-foreground",children:m.length>0&&e.jsxs("span",{children:[m.length," selecionado(s)"]})}),j&&i&&e.jsxs(lt,{onClick:async()=>{if(i&&1===m.length){f(!0);try{await i(m[0],r),p([])}finally{f(!1)}}},disabled:h,variant:"outline",children:[e.jsx(l.Crown,{className:"h-4 w-4 mr-2"}),"Tornar Gestor"]}),w&&o&&e.jsxs(lt,{onClick:async()=>{if(o&&0!==m.length){f(!0);try{await o(m,r),p([])}finally{f(!1)}}},disabled:h,children:[e.jsx(l.UserPlus,{className:"h-4 w-4 mr-2"}),"Tornar ",m.length>1?"Membros":"Membro"]})]})]})})}function xd({place:a,level:s=0,manageAccessConfig:r}){const[n,i]=t.useState(!1),[o,d]=t.useState(!1),c=a.subPlaces&&a.subPlaces.length>0,u=a.isActive??!0,m=a.usersCount??0;return e.jsxs("div",{children:[e.jsxs(Ti,{open:n,onOpenChange:i,children:[e.jsxs("div",{className:"flex items-center gap-2 py-3 px-4 hover:bg-accent/50 transition-colors",style:{paddingLeft:2*s+1+"rem"},children:[c?e.jsxs(Ai,{className:"flex items-center gap-2 flex-1",children:[e.jsx(l.ChevronRight,{className:nt("h-4 w-4 transition-transform shrink-0",n&&"rotate-90")}),e.jsx(l.Building2,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.jsx("span",{className:"font-medium",children:a.name}),e.jsxs("span",{className:"text-sm text-muted-foreground",children:["(",a.subPlaces.length,")"]})]}):e.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[e.jsx("div",{className:"w-4 shrink-0"}),e.jsx(l.Building2,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.jsx("span",{className:"font-medium",children:a.name})]}),e.jsxs("div",{className:"flex items-center gap-3 ml-auto",children:[e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx(l.Users,{className:"h-3.5 w-3.5 text-muted-foreground"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:m})]}),e.jsx(Jt,{variant:u?"default":"secondary",className:"text-xs",children:u?"Ativo":"Inativo"}),r&&e.jsx(kl,{customActions:[{label:"Gerenciar Acessos",icon:l.Settings,onClick:()=>d(!0),variant:"default"}],renderAs:"dropdown",variant:"compact"})]})]}),c&&e.jsx(_i,{children:a.subPlaces.map(t=>e.jsx(xd,{place:t,level:s+1,manageAccessConfig:r},t.id))})]}),0===s&&e.jsx(Co,{}),r&&e.jsx(fd,{open:o,onOpenChange:d,placeId:a.id,placeName:a.name,onMakeManager:r.onMakeManager,onMakeMembers:r.onMakeMembers,currentManagerId:r.getCurrentManagerId?.(a.id),currentMemberIds:r.getCurrentMemberIds?.(a.id)})]})}var gd=Object.defineProperty,bd=(e,t,a)=>((e,t,a)=>t in e?gd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,t+"",a);const vd=new class{constructor(){bd(this,"baseUrl",(void 0).VITE_QUALIEX_API_URL)}async makeApiCall(e,t,a){const s=Es.validateToken();if(!s.valid)throw new Error(s.message||"Token inválido");const r=us.getAccessToken();if(!r)throw new Error("Token Qualiex não encontrado");if(!a||""===a.trim())throw new Error("Alias da unidade é obrigatório");const n=new URL(e,this.baseUrl);Object.entries(t).forEach(([e,t])=>{n.searchParams.append(e,t)});const i=await fetch(n.toString(),{method:"GET",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json",Accept:"application/json","un-alias":a}});if(!i.ok){const e=new Error(`API call failed: ${i.status}`);throw e.status=i.status,e}return i.json()}buildHierarchy(e){const t=new Map,a=[];return e.forEach(e=>{t.set(e.id,{...e,subPlaces:[]})}),e.forEach(e=>{const s=t.get(e.id);if(e.parentId){const r=t.get(e.parentId);r?(r.subPlaces=r.subPlaces||[],r.subPlaces.push(s)):a.push(s)}else a.push(s)}),a}async getPlaces(e,t){try{const a=await this.makeApiCall("/api/common/v1/places",{companyId:t},e),s=a.data||a||[];return this.buildHierarchy(s)}catch(a){if(await Es.handleApiError(a))try{const a=await this.makeApiCall("/api/common/v1/places",{companyId:t},e),s=a.data||a||[];return this.buildHierarchy(s)}catch(s){return hs.handleError(s instanceof Error?s:"Erro ao buscar locais após renovação de token",!0),[]}return hs.handleError(a instanceof Error?a.message:"Erro ao buscar locais",!0),[]}}};function yd(e){const t=new Map,a=new Map,s=[];e.forEach(e=>{const s={...e,children:[],level:0};t.set(e.id,s),a.set(e.id_user,s)}),e.forEach(e=>{const r=t.get(e.id);if(e.id_leader){const t=a.get(e.id_leader);if(t)return void t.children.push(r)}s.push(r)});const r=(e,t)=>{e.level=t,e.children.forEach(e=>r(e,t+1))};s.forEach(e=>r(e,0));const n=e=>{e.sort((e,t)=>{const a=e.name||e.id_user||e.email||"",s=t.name||t.id_user||t.email||"";return a.localeCompare(s)}),e.forEach(e=>e.children.length>0&&n(e.children))};return n(s),s}function Nd(e){const t=[],a=e=>{t.push(e),e.children.forEach(a)};return e.forEach(a),t}function jd(){const{alias:e,isAuthenticated:t}=ar(),a=us.getAccessToken(),{data:s=[]}=gn({enabled:!0});return g.useQuery({queryKey:["leadership",e,s.length],queryFn:async()=>{if(!a||!e)throw new Error("Usuário não autenticado ou unidade não selecionada");const t=Ns(),{data:r,error:n}=await t.schema("common").from("leaders").select("*").eq("is_removed",!1).eq("alias",e);if(n)throw new Error("Erro ao buscar hierarquia de liderança");if(!r||0===r.length)return[];const i={};s.forEach(e=>{i[e.userId]={name:e.userName||e.userEmail,email:e.userEmail||""}});const o=r.map(e=>({...e,name:i[e.id_user]?.name||"[Não encontrado]",email:i[e.id_user]?.email||"",subordinatesCount:r.filter(t=>t.id_leader===e.id_user).length})),l=new Set(r.map(e=>e.id_user));return new Set(r.filter(e=>e.id_leader&&!l.has(e.id_leader)).map(e=>e.id_leader)).forEach(e=>{const t=i[e];o.push({id:`virtual-${e}`,alias:r[0]?.alias||"",id_user:e,id_leader:null,is_removed:!1,is_active:!0,created_at:(new Date).toISOString(),updated_at:(new Date).toISOString(),name:t?.name||"[Não encontrado]",email:t?.email||"",subordinatesCount:r.filter(t=>t.id_leader===e).length})}),yd(o)},enabled:!!a&&!!e&&t&&s.length>0})}function wd(){const e="common",{alias:t}=ar(),a=g.useQueryClient(),s=Ns();return g.useMutation({mutationFn:async a=>{if(!t)throw new Error("Unidade não selecionada");if(a.id_user===a.id_leader)throw new Error("Usuário não pode ser seu próprio líder");a.id_leader&&await Ed(s,t,e,a.id_user,a.id_leader);const{data:r,error:n}=await s.schema(e).from("leaders").insert({alias:t,id_user:a.id_user,id_leader:a.id_leader,is_active:!0,is_removed:!1}).select().single();if(n)throw n;return r},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",t]}),o.toast.success("Líder virtual promovido com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao criar líder")}})}function kd(){const e="common",{alias:t}=ar(),a=g.useQueryClient(),s=Ns();return g.useMutation({mutationFn:async a=>{if(!t)throw new Error("Unidade não selecionada");if(!a.users.length)throw new Error("Selecione pelo menos um liderado");const r=a.users.map(e=>e.id_user),{data:n}=await s.schema(e).from("leaders").select("id_user").eq("alias",t).in("id_user",r).eq("is_removed",!1);if(n&&n.length>0){const e=n.map(e=>e.id_user);throw new Error(`Alguns usuários já estão cadastrados como líderes: ${e.join(", ")}`)}for(const d of a.users){if(a.id_leader&&d.id_user===a.id_leader)throw new Error("Usuário não pode ser seu próprio líder");a.id_leader&&await Ed(s,t,e,d.id_user,a.id_leader)}const i=a.users.map(e=>({alias:t,id_user:e.id_user,id_leader:a.id_leader,is_active:!0,is_removed:!1})),{data:o,error:l}=await s.schema(e).from("leaders").insert(i).select();if(l)throw l;return o},onSuccess:e=>{a.invalidateQueries({queryKey:["leadership",t]}),o.toast.success(`${e?.length||0} liderado(s) adicionado(s) com sucesso`)},onError:e=>{o.toast.error(e.message||"Erro ao adicionar liderados")}})}function Cd(){const e="common",{alias:t}=ar(),a=g.useQueryClient(),s=Ns();return g.useMutation({mutationFn:async a=>{if(!t)throw new Error("Unidade não selecionada");const{data:r}=await s.schema(e).from("leaders").select("id_user").eq("id",a.id).eq("alias",t).single();if(!r)throw new Error("Líder não encontrado");if(r.id_user===a.id_leader)throw new Error("Usuário não pode ser seu próprio líder");a.id_leader&&await Ed(s,t,e,r.id_user,a.id_leader,a.id);const{data:n,error:i}=await s.schema(e).from("leaders").update({id_leader:a.id_leader}).eq("id",a.id).eq("alias",t).select().single();if(i)throw i;return n},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",t]}),o.toast.success("Líder atualizado com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao atualizar líder")}})}function Sd(){const{alias:e}=ar(),t=g.useQueryClient(),a=Ns();return g.useMutation({mutationFn:async t=>{if(!e)throw new Error("Unidade não selecionada");const{error:s}=await a.schema("common").from("leaders").update({is_removed:!0}).eq("id",t).eq("alias",e);if(s)throw s},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",e]}),o.toast.success("Líder removido com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao remover líder")}})}function Pd(){const e="common",{alias:t}=ar(),a=g.useQueryClient(),s=Ns();return g.useMutation({mutationFn:async({leaderUserId:a,selectedUsers:r})=>{if(!t)throw new Error("Unidade não selecionada");const n=r.map(e=>e.id_user),i=await Promise.all([s.schema(e).from("leaders").select("id, id_user, id_leader").eq("alias",t).eq("is_removed",!1).eq("id_leader",a),s.schema(e).from("leaders").select("id, id_user, id_leader").eq("alias",t).eq("is_removed",!1).in("id_user",n.length?n:["__none__"])]),[{data:o,error:l},{data:d,error:c}]=i;if(l)throw l;if(c)throw c;const u=o||[],m=d||[],p=new Set(n),h=u.filter(e=>!p.has(e.id_user)),f=m.filter(e=>e.id_leader!==a),x=new Set(m.map(e=>e.id_user)),g=r.filter(e=>!x.has(e.id_user));for(const y of f)await Ed(s,t,e,y.id_user,a,y.id);for(const y of g){if(y.id_user===a)throw new Error("Usuário não pode ser seu próprio líder");await Ed(s,t,e,y.id_user,a)}const b=[];if(h.length){const a=h.map(e=>e.id);b.push(s.schema(e).from("leaders").update({is_removed:!0}).in("id",a).eq("alias",t))}if(f.length){const r=f.map(e=>e.id);b.push(s.schema(e).from("leaders").update({id_leader:a}).in("id",r).eq("alias",t))}if(g.length){const r=g.map(e=>({alias:t,id_user:e.id_user,id_leader:a,is_active:!0,is_removed:!1}));b.push(s.schema(e).from("leaders").insert(r))}const v=(await Promise.all(b)).find(e=>e?.error);if(v?.error)throw v.error;return{unlinked:h.length,updated:f.length,created:g.length}},onSuccess:e=>{a.invalidateQueries({queryKey:["leadership",t]}),o.toast.success(`Subordinados sincronizados (${e.created} adicionados, ${e.updated} atualizados, ${e.unlinked} removidos)`)},onError:e=>{o.toast.error(e.message||"Erro ao sincronizar subordinados")}})}async function Ed(e,t,a,s,r,n){const{data:i,error:o}=await e.schema(a).from("leaders").select("id, id_user, id_leader").eq("alias",t).eq("is_removed",!1);if(o)throw o;const l=n?i.filter(e=>e.id!==n):i,d=new Set;let c=r;for(;c;){if(d.has(c))throw new Error("Esta associação criaria um ciclo na hierarquia");if(c===s)throw new Error("Esta associação criaria um ciclo na hierarquia");d.add(c);const e=l.find(e=>e.id_user===c);c=e?.id_leader||null}}function Td({leader:t,expandedIds:a,onToggleExpand:s,onEdit:r}){const n=a.has(t.id),i=t.children.length>0,o=32*t.level;return e.jsxs(e.Fragment,{children:[e.jsxs("tr",{className:"border-b hover:bg-muted/50 transition-colors",children:[e.jsx("td",{className:"py-3 px-4",children:e.jsxs("div",{className:"flex items-center gap-2",style:{paddingLeft:`${o}px`},children:[i?e.jsx("button",{onClick:()=>s(t.id),className:"p-1 hover:bg-accent rounded",children:n?e.jsx(l.ChevronDown,{className:"h-4 w-4"}):e.jsx(l.ChevronRight,{className:"h-4 w-4"})}):e.jsx("div",{className:"w-6"}),e.jsx(l.User,{className:"h-4 w-4 text-muted-foreground"}),e.jsx("button",{onClick:()=>{r(t)},className:"font-medium hover:text-primary hover:underline text-left",children:t.name||t.id_user||t.email})]})}),e.jsx("td",{className:"py-3 px-4 text-center",children:e.jsx("span",{className:"text-sm",children:t.subordinatesCount||0})})]}),i&&n&&t.children.map(t=>e.jsx(Td,{leader:t,expandedIds:a,onToggleExpand:s,onEdit:r},t.id))]})}var Ad=function(e,t){for(var a={};e.length;){var s=e[0],r=s.code,n=s.message,i=s.path.join(".");if(!a[i])if("unionErrors"in s){var o=s.unionErrors[0].errors[0];a[i]={message:o.message,type:o.code}}else a[i]={message:n,type:r};if("unionErrors"in s&&s.unionErrors.forEach(function(t){return t.errors.forEach(function(t){return e.push(t)})}),t){var l=a[i].types,d=l&&l[s.code];a[i]=u.appendErrors(i,t,a,r,d?[].concat(d,s.message):s.message)}e.shift()}return a},_d=function(e,t,a){return void 0===a&&(a={}),function(s,r,n){try{return Promise.resolve(function(r,i){try{var o=Promise.resolve(e["sync"===a.mode?"parse":"parseAsync"](s,t)).then(function(e){return n.shouldUseNativeValidation&&V.validateFieldsNatively({},n),{errors:{},values:a.raw?s:e}})}catch(l){return i(l)}return o&&o.then?o.then(void 0,i):o}(0,function(e){if(function(e){return Array.isArray(null==e?void 0:e.errors)}(e))return{values:{},errors:V.toNestErrors(Ad(e.errors,!n.shouldUseNativeValidation&&"all"===n.criteriaMode),n)};throw e}))}catch(i){return Promise.reject(i)}}};const Id=U.z.object({id_leader:U.z.string().nullable(),id_users:U.z.array(U.z.string()).min(1,"Selecione pelo menos um liderado")}),Rd=U.z.object({id_leader:U.z.string().nullable(),id_users:U.z.array(U.z.string())});function Ld({value:a,onChange:s,excludeUserIds:r=[],error:n}){const{data:i=[],isLoading:o}=gn(),[d,c]=t.useState(""),u=t.useRef(null),m=t.useRef(0),{t:p}=Ya(),h=i.filter(e=>!r.includes(e.userId||"")).filter(e=>{const t=d.toLowerCase(),a=e.userName?.toLowerCase().includes(t);return a}).sort((e,t)=>{const s=a.includes(e.userId),r=a.includes(t.userId);if(s&&!r)return-1;if(!s&&r)return 1;const n=e.userName||e.userEmail||"",i=t.userName||t.userEmail||"";return n.localeCompare(i)});return t.useEffect(()=>{u.current&&m.current>0&&(u.current.scrollTop=m.current)},[h]),o?e.jsxs("div",{className:"flex items-center justify-center p-4",children:[e.jsx(l.Loader2,{className:"h-6 w-6 animate-spin"}),e.jsx("span",{className:"ml-2",children:p("loading_data")})]}):e.jsxs("div",{className:"space-y-2",children:[e.jsx(ct,{placeholder:p("search_user"),value:d,onChange:e=>c(e.target.value)}),e.jsx("div",{ref:u,className:"border rounded-md p-4 h-[300px] overflow-y-auto",children:0===h.length?e.jsx("p",{className:"text-sm text-muted-foreground",children:p("search_user")}):e.jsx("div",{className:"space-y-2",children:h.map(t=>e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(Gt,{id:t.userId,checked:a.includes(t.userId),onCheckedChange:()=>{return e=t.userId,u.current&&(m.current=u.current.scrollTop),void(a.includes(e)?s(a.filter(t=>t!==e)):s([...a,e]));var e}}),e.jsx(mt,{htmlFor:t.userId,className:"flex-1 cursor-pointer",children:t.userName||t.userEmail})]},t.userId))})}),a.length>0&&e.jsx("p",{className:"text-sm text-muted-foreground",children:p("selected_count",{count:a.length})}),n&&e.jsx("p",{className:"text-sm text-destructive",children:n})]})}function Md({leader:a,prefilledLeaderId:s,onSuccess:r}){const{t:n}=Ya(),{alias:i}=ar(),o=!!a,d=a?.id.startsWith("virtual-"),c=kd(),m=wd(),p=Cd(),h=Pd(),f=Sd(),{data:x=[]}=jd(),{data:g=[]}=gn(),[b,v]=t.useState(""),y=Nd(x).map(e=>e.id_user),N=o?Nd(x).filter(e=>e.id_leader===a.id_user).map(e=>e.id_user):[],j=u.useForm({resolver:_d(o?Rd:Id),defaultValues:{id_leader:s||(o?a?.id_leader:null)||null,id_users:o?N:[]}});t.useEffect(()=>{if(a){const e=Nd(x).filter(e=>e.id_leader===a.id_user).map(e=>e.id_user);j.reset({id_leader:a.id_leader||null,id_users:e})}else s?j.reset({id_leader:s,id_users:[]}):j.reset({id_leader:null,id_users:[]})},[i,a?.id,a?.id_user,a?.id_leader,s,x]);const w=c.isPending||m.isPending||p.isPending||h.isPending||f.isPending,k=j.watch("id_leader"),C=j.watch("id_users"),S=o?[a.id_user,...y.filter(e=>e!==a.id_user&&!C.includes(e)&&!N.includes(e))]:[k,...y.filter(e=>!C.includes(e))].filter(Boolean);return e.jsxs("form",{onSubmit:j.handleSubmit(async e=>{try{if(o)if(d){await m.mutateAsync({id_user:a.id_user,id_leader:e.id_leader});const t=g.filter(t=>e.id_users.includes(t.userId)).map(e=>({id_user:e.userId}));await h.mutateAsync({leaderUserId:a.id_user,selectedUsers:t})}else{await p.mutateAsync({id:a.id,id_leader:e.id_leader});const t=g.filter(t=>e.id_users.includes(t.userId)).map(e=>({id_user:e.userId}));await h.mutateAsync({leaderUserId:a.id_user,selectedUsers:t})}else{const t=g.filter(t=>e.id_users.includes(t.userId)).map(e=>({id_user:e.userId}));await c.mutateAsync({id_leader:e.id_leader,users:t})}r?.()}catch(t){}}),className:"space-y-4",children:[o&&e.jsxs("div",{children:[e.jsx(mt,{children:n("leader")}),e.jsx(ct,{value:g.find(e=>e.userId===a.id_user)?.userName||a.name||a.id_user,disabled:!0,className:"bg-muted"})]}),e.jsxs("div",{children:[e.jsx(mt,{children:n("superior")}),e.jsxs(Ft,{value:k||"none",onValueChange:e=>j.setValue("id_leader","none"===e?null:e),children:[e.jsx(Ut,{children:e.jsx($t,{placeholder:n("select_placeholder")})}),e.jsxs(Bt,{children:[e.jsx("div",{className:"sticky top-0 z-10 bg-background p-2 border-b",children:e.jsx(ct,{placeholder:n("superior_search"),value:b,onChange:e=>v(e.target.value),onKeyDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:"h-8"})}),e.jsxs(mn,{className:"h-[200px]",children:[e.jsx(Ht,{value:"none",children:"[Nenhum]"}),g.filter(e=>{const t=o?e.userId!==a.id_user:!C.includes(e.userId),s=!b||e.userName?.toLowerCase().includes(b.toLowerCase());return t&&s}).sort((e,t)=>{const a=e.userName||e.userEmail||"",s=t.userName||t.userEmail||"";return a.localeCompare(s)}).map(t=>e.jsx(Ht,{value:t.userId,children:t.userName},t.userId))]})]})]},`superior-select-${i}`),j.formState.errors.id_leader&&e.jsx("p",{className:"text-sm text-destructive mt-1",children:j.formState.errors.id_leader.message})]}),e.jsxs("div",{children:[e.jsxs(mt,{children:[n("subordinates")," *"]}),e.jsx(Ld,{value:C,onChange:e=>j.setValue("id_users",e),excludeUserIds:S,error:j.formState.errors.id_users?.message},`users-multiselect-${i}`)]}),e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsx(lt,{type:"submit",disabled:w||!o&&0===C.length,children:w&&!f.isPending?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),n(o?"updating":"saving")]}):o?C.length>0?n("update_success",{count:C.length}):n("update"):n("create_success",{count:C.length})}),o&&!k&&0===C.length&&e.jsx(lt,{type:"button",variant:"destructive",disabled:w,onClick:async()=>{if(a&&window.confirm(n("remove_confirm")))try{await f.mutateAsync(a.id),r?.()}catch(e){}},className:"ml-auto",children:f.isPending?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),n("removing")]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Trash2,{className:"mr-2 h-4 w-4"}),n("remove")]})})]})]})}function Od({open:t,onOpenChange:a,leader:s,prefilledLeaderId:r,title:n}){return e.jsx(vt,{open:t,onOpenChange:a,children:e.jsxs(kt,{className:"sm:max-w-[500px]",children:[e.jsx(Ct,{children:e.jsx(Pt,{children:n})}),e.jsx(Md,{leader:s,prefilledLeaderId:r,onSuccess:()=>a(!1)})]})})}const Dd="leadership-expanded-nodes",Fd=(e,t)=>{try{localStorage.setItem(`${Dd}-${e}`,JSON.stringify(Array.from(t)))}catch(a){}};function zd(e){const[a,s]=t.useState(!1),[r,n]=t.useState(0),{t:i}=Ya(),{uploadFunction:o,deleteFunction:l,defaultOptions:d,onSuccess:c,onError:u}=e||{};return{upload:async(e,t)=>{if(!o){const e=new Error("uploadFunction não fornecida");throw oa({title:"Erro de configuração",description:"Função de upload não configurada. Verifique a documentação.",variant:"destructive"}),e}s(!0),n(0);try{const a={...d,...t};if(a.maxSize&&e.size>a.maxSize)throw new Error(`Arquivo muito grande. Tamanho máximo: ${Math.round(a.maxSize/1024/1024)}MB`);if(a.allowedTypes){if(!a.allowedTypes.some(t=>t.endsWith("/*")?e.type.startsWith(t.replace("/*","")):e.type===t))throw new Error(`Tipo de arquivo não permitido. Tipos aceitos: ${a.allowedTypes.join(", ")}`)}const s=await o(e,a);return n(100),oa({title:"Sucesso",description:i("file_upload_success")}),c?.(s),s}catch(a){const e=a instanceof Error?a:new Error("Erro ao fazer upload");throw oa({title:"Erro",description:e.message,variant:"destructive"}),u?.(e),e}finally{s(!1)}},deleteMedia:async(e,t)=>{if(!l){const e=new Error("deleteFunction não fornecida");throw oa({title:"Erro de configuração",description:"Função de delete não configurada.",variant:"destructive"}),e}try{await l(e,t),oa({title:"Sucesso",description:"Arquivo removido com sucesso"})}catch(a){throw oa({title:"Erro",description:"Erro ao remover o arquivo",variant:"destructive"}),a}},uploading:a,progress:r}}function $d(e){const t=[/(?:youtube\.com\/watch\?v=|youtu\.be\/|youtube\.com\/embed\/)([a-zA-Z0-9_-]{11})/,/^([a-zA-Z0-9_-]{11})$/];for(const a of t){const t=e.match(a);if(t)return t[1]}return null}function Ud(e,t){const a=$d(e);if(!a)return e;return`https://www.youtube.com/embed/${a}${t?"?autoplay=1&mute=1":""}`}function Vd(e){const t=e.match(/vimeo\.com\/(?:video\/)?(\d+)/);return t?t[1]:null}function qd(e,t){const a=Vd(e);if(!a)return e;return`https://player.vimeo.com/video/${a}${t?"?autoplay=1&muted=1":""}`}function Bd(e){if(!e)return;const t=e.match(/src="([^"]+)"/);return t?t[1]:void 0}function Wd(e){return e?/youtube|youtu\.be/.test(e)?"youtube":/vimeo/.test(e)?"vimeo":"file":"file"}function Hd(e,t){return e/t}Object.defineProperty(exports,"sonnerToast",{enumerable:!0,get:function(){return o.toast}}),exports.AUTH_CONFIG=Is,exports.Accordion=qn,exports.AccordionContent=Hn,exports.AccordionItem=Bn,exports.AccordionTrigger=Wn,exports.ActionButton=dt,exports.ActionMenu=kl,exports.ActionMenuItems=qr,exports.Alert=Dn,exports.AlertDescription=zn,exports.AlertDialog=rr,exports.AlertDialogAction=pr,exports.AlertDialogCancel=hr,exports.AlertDialogContent=lr,exports.AlertDialogDescription=mr,exports.AlertDialogFooter=cr,exports.AlertDialogHeader=dr,exports.AlertDialogOverlay=or,exports.AlertDialogPortal=ir,exports.AlertDialogTitle=ur,exports.AlertDialogTrigger=nr,exports.AlertTitle=Fn,exports.AppHeader=Wl,exports.AppLayout=nd,exports.AppSidebar=rd,exports.AspectRatio=Kn,exports.AuthErrorInterceptor=Ss,exports.AuthProvider=({children:a})=>{const[s,r]=t.useState({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null});let n=null;try{n=g.useQueryClient()}catch{}const[i,o]=t.useState(!1),[l,d]=t.useState(0),c=t.useCallback(e=>{r(t=>({...t,...e}))},[]),u=t.useCallback(e=>{r(t=>({...t,isLoading:e}))},[]),m=t.useCallback(()=>{r({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null})},[]),p=t.useCallback(async e=>{try{u(!0);const a=us.getAccessToken();if(!a)return;const r=await js.generateToken(a,e.alias,void 0,!0);if(!r)return;us.setSupabaseToken(r),us.setSelectedAlias(e.alias);const i=us.extractTokenData(),o=i?.alias||e.alias,l=i?.companyId||us.getCompanyId(e.alias),d={id:l||e.id,name:e.name,alias:o};let m=null,p=null;if(s.user?.id&&o&&l)try{const e=(await _s.fetchActiveUsersMap(o,l)).get(s.user.id);if(e){const t=Ys(e);m=t.placeId,p=t.placeName}}catch(t){}c({alias:o,selectedUnit:d,placeId:m,placeName:p,activePlaceId:m,activePlaceName:p}),n&&(await n.clear(),await new Promise(e=>setTimeout(e,100)))}catch(t){}finally{u(!1)}},[c,n,u,s.user]),h=t.useCallback(async()=>await er.processCallback(),[]),f=t.useCallback(async()=>{er.logout(),m(),n&&await n.clear()},[m,n]),x=t.useCallback(e=>{o(e)},[]),b=t.useCallback(()=>{d(e=>e+1)},[]),v=t.useCallback(()=>{d(e=>e+1)},[]);t.useEffect(()=>{if(!s.isAuthenticated)return;let e=!0;const t=setInterval(()=>{e&&(us.areAllTokensValid()||e&&f())},6e5);return()=>{e=!1,clearInterval(t)}},[s.isAuthenticated,f]),t.useEffect(()=>{let e=!0;return(async()=>{try{if(await new Promise(e=>setTimeout(e,100)),!e)return;const t=await er.initialize();if(!e)return;t&&t.isAuthenticated?c({user:t.user,companies:t.companies,alias:t.alias,isAuthenticated:!0,isLoading:!1,selectedUnit:t.selectedUnit,userId:t.userId,userAlias:t.userAlias,placeId:t.placeId,placeName:t.placeName,activePlaceId:t.activePlaceId,activePlaceName:t.activePlaceName}):e&&u(!1)}catch(t){e&&(Ss.handleError(t),u(!1))}})(),()=>{e=!1}},[c,u,f]);const y=t.useMemo(()=>({...s,logout:f,processCallback:h,switchUnit:p,availableUnits:s.companies,isSearchVisible:i,setSearchVisible:x,clearSearch:b,refreshData:v}),[s.user,s.companies,s.alias,s.isAuthenticated,s.isLoading,s.selectedUnit,s.userId,s.userAlias,s.placeId,s.placeName,s.activePlaceId,s.activePlaceName,f,h,p,i,x,b,v]);return e.jsx(tr.Provider,{value:y,children:a})},exports.AuthService=er,exports.Avatar=Gn,exports.AvatarFallback=Xn,exports.AvatarImage=Qn,exports.Badge=Jt,exports.BaseForm=vn,exports.Blockquote=mo,exports.Breadcrumb=Jn,exports.BreadcrumbEllipsis=si,exports.BreadcrumbItem=Zn,exports.BreadcrumbLink=ei,exports.BreadcrumbList=Yn,exports.BreadcrumbPage=ti,exports.BreadcrumbSeparator=ai,exports.BulkActionBar=jn,exports.Button=lt,exports.ButtonGroup=ni,exports.CRUD_CONFIG=Rs,exports.Calendar=Ei,exports.CallbackPage=()=>{const{processCallback:a}=ar(),[s,r]=t.useState(null),[n,i]=t.useState(!1);t.useEffect(()=>{(async()=>{try{if(await a()){window.history.replaceState({},document.title,"/");const e=localStorage.getItem("auth_return_url");e?(localStorage.removeItem("auth_return_url"),window.location.href=e):window.location.href="/"}else r("Falha na autenticação. Tente novamente.")}catch(e){r(e?.message||"Erro durante a autenticação. Tente novamente.")}})()},[a]);const o=async()=>{i(!0),r(null);try{await a()||r("Falha na autenticação. Tente novamente.")}catch(e){r(e?.message||"Erro ao tentar novamente.")}finally{i(!1)}},d=()=>{window.location.href="/"};return s?e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(pt,{className:"w-full max-w-md",children:[e.jsx(ht,{className:"text-center",children:e.jsxs(ft,{className:"text-xl font-semibold text-destructive flex items-center justify-center gap-2",children:[e.jsx(l.AlertCircle,{className:"h-5 w-5"}),"Erro na Autenticação"]})}),e.jsxs(gt,{className:"space-y-4",children:[e.jsx(Dn,{variant:"destructive",children:e.jsx(zn,{children:s})}),e.jsx("div",{className:"text-sm text-muted-foreground",children:e.jsx("p",{children:"Se o problema persistir, verifique se a URL de callback está configurada corretamente no provedor OAuth."})}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(lt,{onClick:o,disabled:n,className:"flex-1",children:n?e.jsxs(e.Fragment,{children:[e.jsx(Zt,{size:"sm",className:"mr-2"}),"Tentando..."]}):e.jsxs(e.Fragment,{children:[e.jsx(l.RefreshCw,{className:"h-4 w-4 mr-2"}),"Tentar Novamente"]})}),e.jsx(lt,{onClick:d,variant:"outline",className:"flex-1",children:"Voltar ao Início"})]})]})]})}):e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(pt,{className:"w-full max-w-md",children:[e.jsx(ht,{className:"text-center",children:e.jsx(ft,{className:"text-xl font-semibold",children:"Processando Autenticação"})}),e.jsxs(gt,{className:"text-center",children:[e.jsx("div",{className:"flex justify-center mb-4",children:e.jsx(Zt,{size:"lg"})}),e.jsx("p",{className:"text-muted-foreground",children:"Processando tokens e redirecionando..."})]})]})})},exports.Card=pt,exports.CardContent=gt,exports.CardDescription=xt,exports.CardFooter=bt,exports.CardHeader=ht,exports.CardSkeleton=Cr,exports.CardTitle=ft,exports.Cards=function({data:t,renderCard:a,isLoading:s=!1,emptyMessage:r="Nenhum item encontrado",columns:n,gap:i="md",className:o}){return s?e.jsx(Wi,{cols:n?String(n):"auto-fit",gap:i,className:o,children:[...Array(6)].map((t,a)=>e.jsx(Ea,{className:"h-48 w-full"},a))}):0===t.length?e.jsx("div",{className:"flex items-center justify-center p-8",children:e.jsx("div",{className:"text-center text-muted-foreground",children:e.jsx("p",{children:r})})}):e.jsx(Wi,{cols:n?String(n):"auto-fit",gap:i,className:o,children:t.map(a)})},exports.ChatbotPage=function(){const{t:a}=Ya(),[s,r]=t.useState(!1),[n,i]=t.useState(""),{messages:o,isLoading:d,error:c,sendMessage:u}=pd(),m=t.useRef(null),p=t.useRef(null);t.useEffect(()=>{if(m.current){const e=m.current.querySelector("[data-radix-scroll-area-viewport]");e&&(e.scrollTop=e.scrollHeight)}},[o]),t.useEffect(()=>{s&&p.current&&p.current.focus()},[s]),t.useEffect(()=>{const e=e=>{"Escape"===e.key&&s&&r(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[s]);const h=()=>{n.trim()&&!d&&(u(n),i(""))};return e.jsxs(e.Fragment,{children:[e.jsx(lt,{onClick:()=>r(!s),className:"fixed bottom-6 right-6 h-14 w-14 rounded-full shadow-lg z-50",size:"icon",children:s?e.jsx(l.X,{className:"h-6 w-6"}):e.jsx(l.MessageCircle,{className:"h-6 w-6"})}),s&&e.jsxs(pt,{className:"fixed bottom-24 right-6 w-96 h-[600px] shadow-xl z-50 flex flex-col",children:[e.jsxs(ht,{className:"flex flex-row items-center justify-between space-y-0 pb-4",children:[e.jsx(ft,{className:"text-lg font-semibold",children:a("title")}),e.jsx(lt,{variant:"ghost",size:"icon",onClick:()=>r(!1),className:"h-8 w-8",children:e.jsx(l.X,{className:"h-4 w-4"})})]}),e.jsxs(gt,{className:"flex-1 flex flex-col p-0 overflow-hidden",children:[e.jsx(mn,{ref:m,className:"flex-1 px-4",children:e.jsxs("div",{className:"space-y-4 py-4",children:[o.map(t=>e.jsx("div",{className:"flex "+("user"===t.role?"justify-end":"justify-start"),children:e.jsx("div",{className:"max-w-[80%] rounded-lg px-4 py-2 "+("user"===t.role?"bg-primary text-primary-foreground":"bg-muted"),children:"assistant"===t.role?e.jsx(hd,{content:t.content}):e.jsx("p",{className:"text-sm whitespace-pre-wrap",children:t.content})})},t.id)),d&&e.jsx("div",{className:"flex justify-start",children:e.jsx("div",{className:"bg-muted rounded-lg px-4 py-2",children:e.jsxs("div",{className:"flex space-x-2",children:[e.jsx("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce"}),e.jsx("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.2s]"}),e.jsx("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.4s]"})]})})}),c&&e.jsx("div",{className:"text-center text-sm text-destructive py-2",children:c})]})}),e.jsx("div",{className:"border-t p-4",children:e.jsxs("div",{className:"flex space-x-2",children:[e.jsx(ct,{ref:p,value:n,onChange:e=>i(e.target.value),onKeyPress:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),h())},placeholder:a("placeholder"),disabled:d,className:"flex-1"}),e.jsx(lt,{onClick:h,disabled:d||!n.trim(),size:"icon",children:e.jsx(l.Send,{className:"h-4 w-4"})})]})})]})]})]})},exports.Checkbox=Gt,exports.Collapsible=Ti,exports.CollapsibleContent=_i,exports.CollapsibleTrigger=Ai,exports.ColorPicker=un,exports.Combobox=ts,exports.Command=ya,exports.CommandDialog=({children:t,...a})=>e.jsx("div",{...a,children:e.jsx(ya,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:t})}),exports.CommandEmpty=wa,exports.CommandGroup=ka,exports.CommandInput=Na,exports.CommandItem=Sa,exports.CommandList=ja,exports.CommandSeparator=Ca,exports.CommandShortcut=Pa,exports.ContextMenu=Wr,exports.ContextMenuCheckboxItem=tn,exports.ContextMenuContent=Zr,exports.ContextMenuGroup=Kr,exports.ContextMenuItem=en,exports.ContextMenuLabel=sn,exports.ContextMenuPortal=Gr,exports.ContextMenuRadioGroup=Xr,exports.ContextMenuRadioItem=an,exports.ContextMenuSeparator=rn,exports.ContextMenuShortcut=nn,exports.ContextMenuSub=Qr,exports.ContextMenuSubContent=Yr,exports.ContextMenuSubTrigger=Jr,exports.ContextMenuTrigger=Hr,exports.CrudCards=function({manager:t,config:a,onEdit:s,onDelete:r}){const{t:n}=Ya();return t.isLoading?e.jsx(Wi,{children:Array.from({length:3}).map((t,a)=>e.jsxs(pt,{children:[e.jsxs(ht,{children:[e.jsx(Ea,{className:"h-4 w-3/4"}),e.jsx(Ea,{className:"h-3 w-1/2"})]}),e.jsx(gt,{children:e.jsxs("div",{className:"space-y-2",children:[e.jsx(Ea,{className:"h-3 w-full"}),e.jsx(Ea,{className:"h-3 w-2/3"})]})})]},a))}):e.jsx(Ii.Root,{children:t.entities.map(t=>e.jsxs(Ii.Item,{onClick:()=>s(t),children:[e.jsx(ht,{className:"pb-3",children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx(ft,{className:"text-base leading-6 truncate",children:t.title||t.name||n("no_title")}),e.jsx(xt,{className:"text-sm",children:i.format(new Date(t.created_at),"dd/MM/yyyy HH:mm",{locale:Pi})})]}),e.jsxs("div",{className:"flex items-center gap-2 ml-2",children:[t.link&&e.jsx(lt,{variant:"external-link",size:"icon-xs",onClick:e=>{e.stopPropagation(),(e=>{try{const t=window.open(e,"_blank");t&&!t.closed&&void 0!==t.closed||(navigator.clipboard.writeText(e),o.toast.info(n("link_copied")))}catch(t){window.location.href=e}})(t.link)},title:n("open_external_link"),children:e.jsx(l.ExternalLink,{className:"h-4 w-4"})}),e.jsx("div",{onClick:e=>e.stopPropagation(),children:e.jsx(Br,{onEdit:()=>s(t),onDelete:r?()=>r(t):void 0,canDelete:!!r})})]})]})}),e.jsx(gt,{className:"pt-0",children:e.jsx("div",{className:"space-y-2",children:a.cardFields?.map(a=>{const s=t[a.key];return s?e.jsx(Ii.Field,{label:a.label,value:a.render?a.render(s,t):String(s)},String(a.key)):null})})})]},t.id))})},exports.CrudPageInternal=En,exports.CrudPagination=Nn,exports.CrudPrimitiveFilterBar=function({searchValue:t="",onSearchChange:a,customFilters:s=[],onClearFilters:r,showClearButton:n=!0,layout:i="horizontal"}){const{t:o}=Ya(),d=t||s.length>0;return e.jsxs("div",{className:`flex ${"vertical"===i?"flex-col":"flex-row items-center"} gap-2 w-full`,children:[a&&e.jsxs("div",{className:"relative flex-1 min-w-[200px]",children:[e.jsx(l.Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(ct,{type:"text",placeholder:o("search"),value:t,onChange:e=>a(e.target.value),className:"pl-9 h-9"})]}),s.map((t,a)=>e.jsx("div",{className:"vertical"===i?"w-full":"",children:t},a)),n&&d&&r&&e.jsxs(lt,{variant:"ghost",size:"sm",onClick:r,className:"h-9 px-3 whitespace-nowrap",children:[e.jsx(l.X,{size:14,className:"mr-1"}),o("clear_filters")]})]})},exports.CrudPrimitivePagination=yn,exports.CrudPrimitiveTable=function({data:a,columns:s,sortField:r,sortDirection:n,onSort:i,onRowClick:o,renderActions:d,isLoading:c=!1,emptyMessage:u="Nenhum item encontrado",className:m,enableSelection:p=!1,selectedIds:h=[],onSelectItem:f,onSelectAll:x,isAllSelected:g=!1}){const b=t.useMemo(()=>{const e=s.reduce((e,t)=>t.width?e:e+(t.weight??1),0);return s.map(t=>{if(t.width)return`${t.width}px`;if(t.minWidth&&!t.weight)return`${t.minWidth}px`;const a=(t.weight??1)/e*100;return t.minWidth?`minmax(${t.minWidth}px, ${a}%)`:`${a}%`})},[s]);return c?e.jsx("div",{className:"flex-1 overflow-auto",children:e.jsx("div",{className:"p-4 space-y-3",children:[...Array(5)].map((t,a)=>e.jsx(Ea,{className:"h-12 w-full"},a))})}):0===a.length?e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsx("div",{className:"text-center text-muted-foreground",children:e.jsx("p",{children:u})})}):e.jsx("div",{className:"flex-1 overflow-auto",children:e.jsxs(xr,{className:m,children:[e.jsx(gr,{className:"sticky top-0 bg-background z-10",children:e.jsxs(yr,{children:[p&&e.jsx(Nr,{className:"w-[40px]",children:e.jsx(Gt,{checked:g,onCheckedChange:x,"aria-label":"Selecionar todos"})}),s.map((t,a)=>{return e.jsx(Nr,{className:t.className,style:{width:b[a]},children:t.sortable&&i?e.jsxs("button",{onClick:()=>i(String(t.key)),className:"flex items-center hover:text-foreground transition-colors font-medium",children:[t.header,(s=String(t.key),r!==s?e.jsx(l.ArrowUpDown,{size:14,className:"ml-1 opacity-50"}):"asc"===n?e.jsx(l.ArrowUp,{size:14,className:"ml-1"}):e.jsx(l.ArrowDown,{size:14,className:"ml-1"}))]}):e.jsx("span",{className:"font-medium",children:t.header})},String(t.key));var s}),d&&e.jsx(Nr,{className:"w-[80px] text-right",children:"Ações"})]})}),e.jsx(br,{children:a.map(t=>e.jsxs(yr,{onClick:()=>o?.(t),className:o?"cursor-pointer":"",children:[p&&e.jsx(jr,{children:e.jsx(Gt,{checked:h.includes(t.id),onCheckedChange:()=>f?.(t.id),onClick:e=>e.stopPropagation(),"aria-label":`Selecionar item ${t.id}`})}),s.map(a=>e.jsx(jr,{className:a.className,children:a.render?a.render(t):String(t[a.key]??"-")},String(a.key))),d&&e.jsx(jr,{className:"text-right",onClick:e=>e.stopPropagation(),children:d(t)})]},t.id))})]})})},exports.CrudTable=ln,exports.DataList=Ii,exports.DatePicker=function({date:t,onDateChange:a,placeholder:s="Pick a date",disabled:r=!1,className:n,disabledDates:o}){return e.jsxs(ga,{children:[e.jsx(ba,{asChild:!0,children:e.jsxs(lt,{variant:"outline",disabled:r,className:nt("w-full justify-start text-left font-normal",!t&&"text-muted-foreground",n),children:[e.jsx(l.Calendar,{className:"mr-2 h-4 w-4"}),t?i.format(t,"PPP"):e.jsx("span",{children:s})]})}),e.jsx(va,{className:"w-auto p-0",align:"start",children:e.jsx(Ei,{mode:"single",selected:t,onSelect:a,disabled:o,initialFocus:!0,className:"pointer-events-auto"})})]})},exports.DeleteConfirmationDialog=fr,exports.Dialog=vt,exports.DialogClose=jt,exports.DialogContent=kt,exports.DialogDescription=Et,exports.DialogFooter=St,exports.DialogHeader=Ct,exports.DialogOverlay=wt,exports.DialogPortal=Nt,exports.DialogTitle=Pt,exports.DialogTrigger=yt,exports.Drawer=Ri,exports.DrawerClose=Oi,exports.DrawerContent=Fi,exports.DrawerDescription=Vi,exports.DrawerFooter=$i,exports.DrawerHeader=zi,exports.DrawerOverlay=Di,exports.DrawerPortal=Mi,exports.DrawerTitle=Ui,exports.DrawerTrigger=Li,exports.DropdownMenu=Er,exports.DropdownMenuCheckboxItem=Fr,exports.DropdownMenuContent=Or,exports.DropdownMenuGroup=Ar,exports.DropdownMenuItem=Dr,exports.DropdownMenuLabel=$r,exports.DropdownMenuPortal=_r,exports.DropdownMenuRadioGroup=Rr,exports.DropdownMenuRadioItem=zr,exports.DropdownMenuSeparator=Ur,exports.DropdownMenuShortcut=Vr,exports.DropdownMenuSub=Ir,exports.DropdownMenuSubContent=Mr,exports.DropdownMenuSubTrigger=Lr,exports.DropdownMenuTrigger=Tr,exports.EmailService=ud,exports.EmptyState=Pr,exports.EntitySelect=ts,exports.ErrorBoundary=ld,exports.FilterBar=Pn,exports.Form=Tt,exports.FormControl=Mt,exports.FormDescription=Ot,exports.FormField=({...t})=>e.jsx(At.Provider,{value:{name:t.name},children:e.jsx(u.Controller,{...t})}),exports.FormItem=Rt,exports.FormLabel=Lt,exports.FormMessage=Dt,exports.FormSkeleton=function({fields:t=4}){return e.jsxs("div",{className:"space-y-4",children:[Array.from({length:t}).map((t,a)=>e.jsxs("div",{className:"space-y-2",children:[e.jsx(Ea,{className:"h-4 w-24"}),e.jsx(Ea,{className:"h-10 w-full"})]},a)),e.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[e.jsx(Ea,{className:"h-10 w-20"}),e.jsx(Ea,{className:"h-10 w-20"})]})]})},exports.Grid=Wi,exports.H1=to,exports.H2=ao,exports.H3=so,exports.H4=ro,exports.HeaderSkeleton=function(){return e.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx(Ea,{className:"h-8 w-8 rounded-full"}),e.jsx(Ea,{className:"h-6 w-32"})]}),e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(Ea,{className:"h-8 w-8"}),e.jsx(Ea,{className:"h-8 w-24"})]})]})},exports.I18nextProvider=function({i18n:e,defaultNS:a,children:s}){const r=t.useMemo(()=>({i18n:e,defaultNS:a}),[e,a]);return t.createElement(Ua.Provider,{value:r},s)},exports.IconPicker=fn,exports.ImageEditor=function({value:a,onChange:s,onSubmit:r,onCancel:n,uploadFunction:i,deleteFunction:o,uploadOptions:d}){const{t:c}=Ya(),[u,m]=t.useState(a||{alignment:"center",allowDownload:!1}),p=t.useRef(null),{upload:h,uploading:f}=zd({uploadFunction:i,deleteFunction:o,defaultOptions:{...d,allowedTypes:["image/*"],maxSize:5242880}}),x=(e,t)=>{const a={...u,[e]:t};m(a),s(a)};return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("url")}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(ct,{type:"url",placeholder:c("url_placeholder"),value:u.imageUrl||"",onChange:e=>x("imageUrl",e.target.value),className:"flex-1"}),i&&e.jsxs(e.Fragment,{children:[e.jsx("input",{ref:p,type:"file",accept:"image/*",onChange:async e=>{const t=e.target.files?.[0];if(t)try{const e=await h(t),a={...u,imageUrl:e.url,imageFile:e.name,imagePath:e.path,imageSize:e.size};m(a),s(a)}catch(a){}finally{p.current&&(p.current.value="")}},className:"hidden"}),e.jsx(lt,{type:"button",variant:"outline",onClick:()=>p.current?.click(),disabled:f,children:f?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),c("uploading")]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Upload,{className:"mr-2 h-4 w-4"}),c("upload")]})})]})]}),u.imageFile&&e.jsx("p",{className:"text-xs text-muted-foreground",children:c("image.fileInfo",{name:u.imageFile,size:Math.round((u.imageSize||0)/1024)})})]}),u.imageUrl&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("preview")}),e.jsx("div",{className:"border rounded-lg p-4 bg-muted/30",children:e.jsx("div",{className:"flex "+("left"===u.alignment?"justify-start":"right"===u.alignment?"justify-end":"justify-center"),children:e.jsx("img",{src:u.imageUrl,alt:u.alt||"Preview",style:{width:u.width?`${u.width}px`:"auto",height:u.height?`${u.height}px`:"auto",maxWidth:"100%"},className:"rounded-lg shadow-md"})})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{htmlFor:"caption",children:c("caption")}),e.jsx(Qt,{id:"caption",placeholder:c("caption"),value:u.caption||"",onChange:e=>x("caption",e.target.value),rows:2})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{htmlFor:"alt",children:c("alt")}),e.jsx(ct,{id:"alt",placeholder:c("alt"),value:u.alt||"",onChange:e=>x("alt",e.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("alignment")}),e.jsxs(Ft,{value:u.alignment||"center",onValueChange:e=>x("alignment",e),children:[e.jsx(Ut,{children:e.jsx($t,{})}),e.jsxs(Bt,{children:[e.jsx(Ht,{value:"left",children:c("left")}),e.jsx(Ht,{value:"center",children:c("center")}),e.jsx(Ht,{value:"right",children:c("right")})]})]})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{htmlFor:"width",children:c("width")}),e.jsx(ct,{id:"width",type:"number",placeholder:"px",value:u.width||"",onChange:e=>x("width",e.target.value?Number(e.target.value):void 0)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{htmlFor:"height",children:c("height")}),e.jsx(ct,{id:"height",type:"number",placeholder:"px",value:u.height||"",onChange:e=>x("height",e.target.value?Number(e.target.value):void 0)})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{id:"allowDownload",type:"checkbox",checked:u.allowDownload||!1,onChange:e=>x("allowDownload",e.target.checked),className:"h-4 w-4"}),e.jsx(mt,{htmlFor:"allowDownload",className:"cursor-pointer",children:c("allow_download")})]}),e.jsxs("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e.jsx(lt,{variant:"outline",onClick:n,children:c("cancel")}),e.jsx(lt,{onClick:()=>{u.imageUrl?r(u):oa({title:c("error"),description:c("error_no_image"),variant:"destructive"})},disabled:!u.imageUrl,children:c("save")})]})]})},exports.ImageRenderer=function({content:t,className:a="",style:s}){if(!t.imageUrl)return null;const r={left:"justify-start",center:"justify-center",right:"justify-end"}[t.alignment||"center"];return e.jsx("div",{className:`flex ${r} my-4 ${a}`,style:s,children:e.jsxs("div",{className:"space-y-2 max-w-full",children:[e.jsx("img",{src:t.imageUrl,alt:t.alt||"",style:{width:t.width?`${t.width}px`:"auto",height:t.height?`${t.height}px`:"auto",maxWidth:"100%"},className:"rounded-lg shadow-md"}),t.caption&&e.jsx("p",{className:"text-sm text-muted-foreground text-center italic",children:t.caption}),t.allowDownload&&t.imageUrl&&e.jsxs("a",{href:t.imageUrl,download:!0,className:"flex items-center gap-2 text-sm text-primary hover:underline justify-center",children:[e.jsx(l.Download,{className:"h-4 w-4"}),"Baixar imagem"]})]})})},exports.InlineCode=uo,exports.Input=ct,exports.InputGroup=Hi,exports.InputGroupAddon=Gi,exports.InputGroupButton=Xi,exports.InputGroupInput=Ji,exports.InputGroupTextarea=Yi,exports.Kbd=Zi,exports.LOGO_CONFIG=Fs,exports.Label=mt,exports.Large=oo,exports.Lead=io,exports.LeaderRow=Td,exports.LeadershipDialog=Od,exports.LeadershipForm=Md,exports.LeadershipPage=function(){const{alias:a}=ar(),{t:s}=Ya(),{data:r,isLoading:n,error:i,refetch:o}=jd(),{data:d=[]}=gn({enabled:!0}),[c,u]=t.useState(()=>a?(e=>{try{const t=localStorage.getItem(`${Dd}-${e}`);if(t)return new Set(JSON.parse(t))}catch(i){}return new Set})(a):new Set),[m,p]=t.useState(!1),[h,f]=t.useState(),[x,g]=t.useState(null),b=d.filter(e=>e.userName&&"Nome não disponível"!==e.userName),v=new Set(b.map(e=>e.userId)),y=b.length-(r?Nd(r).filter(e=>v.has(e.id_user)&&"[Não encontrado]"!==e.name).length:0);t.useEffect(()=>{if(r&&r.length>0&&a){if(!localStorage.getItem(`${Dd}-${a}`)){const e=r.map(e=>e.id),t=new Set(e);u(t),Fd(a,t)}}},[r,a]);const N=e=>{u(t=>{const s=new Set(t);return s.has(e)?s.delete(e):s.add(e),a&&Fd(a,s),s})},j=e=>{f(e),g(null),p(!0)};return n?e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsxs("div",{className:"text-center",children:[e.jsx(l.RefreshCw,{className:"h-8 w-8 animate-spin mx-auto mb-4 text-muted-foreground"}),e.jsx("p",{className:"text-muted-foreground",children:s("loading")})]})}):i?e.jsx("div",{className:"flex items-center justify-center h-full",children:e.jsxs("div",{className:"text-center",children:[e.jsx("p",{className:"text-destructive mb-4",children:"Erro ao carregar hierarquia de liderança"}),e.jsx(lt,{onClick:()=>o(),children:"Tentar novamente"})]})}):e.jsxs("div",{className:"flex flex-col h-full",children:[e.jsx("div",{className:"flex items-center justify-between p-4 border-b",children:e.jsxs("div",{className:"flex gap-2 items-center",children:[e.jsxs(lt,{size:"sm",onClick:()=>{f(void 0),g(null),p(!0)},children:[e.jsx(l.Plus,{className:"h-4 w-4 mr-2"}),"Definir Líder"]}),e.jsxs(lt,{variant:"outline",size:"sm",onClick:()=>{if(!r)return;const e=Nd(r).filter(e=>e.children.length>0).map(e=>e.id),t=new Set(e);u(t),a&&Fd(a,t)},disabled:!r||0===r.length,children:[e.jsx(l.ChevronDown,{className:"h-4 w-4 mr-2"}),"Expandir todos"]}),e.jsxs(lt,{variant:"outline",size:"sm",onClick:()=>{const e=new Set;u(e),a&&Fd(a,e)},disabled:!r||0===r.length,children:[e.jsx(l.ChevronRight,{className:"h-4 w-4 mr-2"}),"Recolher todos"]}),e.jsx("div",{className:"flex items-center gap-2 ml-4",children:e.jsxs("div",{className:"flex items-center gap-2 px-3 py-1.5 bg-muted rounded-md",children:[e.jsx(l.Users,{className:"h-4 w-4 text-muted-foreground"}),e.jsxs("span",{className:"text-sm font-medium",children:[y," usuário",1!==y?"s":""," não associado",1!==y?"s":""]})]})})]})}),r&&0!==r.length?e.jsx(mn,{className:"flex-1",children:e.jsx("div",{children:e.jsxs("table",{className:"w-full",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b bg-muted/50",children:[e.jsx("th",{className:"py-3 px-4 text-left font-semibold",children:"Nome"}),e.jsx("th",{className:"py-3 px-4 text-center font-semibold",children:"Liderados"})]})}),e.jsx("tbody",{children:r.map(t=>e.jsx(Td,{leader:t,expandedIds:c,onToggleExpand:N,onEdit:j},t.id))})]})})}):e.jsx("div",{className:"flex items-center justify-center flex-1",children:e.jsxs("div",{className:"text-center space-y-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"Nenhuma hierarquia de liderança encontrada"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:'Clique em "Definir Líder" para começar'})]})}),e.jsx(Od,{open:m,onOpenChange:()=>{p(!1),f(void 0),g(null)},leader:h,prefilledLeaderId:x,title:h?s("edit")+" "+s("name"):x?s("add")+" Liderado":s("add")+" Líder Raiz"},`leadership-dialog-${a}`)]})},exports.List=po,exports.LoadingState=function({isLoading:t,children:a,className:s,type:r="spinner",size:n="md"}){return t?"overlay"===r?e.jsxs("div",{className:nt("relative",s),children:[a,e.jsx("div",{className:"absolute inset-0 bg-background/50 backdrop-blur-sm flex items-center justify-center z-10",children:e.jsx(Zt,{size:n})})]}):"skeleton"===r?e.jsx("div",{className:nt("animate-pulse",s),children:e.jsx("div",{className:"bg-muted rounded-md h-full w-full"})}):e.jsx("div",{className:nt("flex items-center justify-center py-8",s),children:e.jsx(Zt,{size:n})}):e.jsx(e.Fragment,{children:a})},exports.LocaleProvider=({children:a})=>{const{user:s,alias:r}=ar(),[n,i]=t.useState({locale:"pt-BR",timezone:"America/Sao_Paulo",datetimeFormat:"dd/MM/yyyy HH:mm"}),[o,l]=t.useState(!0);t.useEffect(()=>{(async()=>{if(s?.id&&r)try{const e=await Sl.getUserPreferences(s.id,r);e&&(i({locale:e.locale,timezone:e.timezone,datetimeFormat:e.datetimeFormat}),await st.changeLanguage(e.locale),localStorage.setItem("i18nextLng",e.locale))}catch(e){}finally{l(!1)}else l(!1)})()},[s?.id,r]);const d=t.useCallback(async e=>{if(s?.id&&r)try{await Sl.updatePreferences(s.id,r,{locale:e}),i(t=>({...t,locale:e})),await st.changeLanguage(e),localStorage.setItem("i18nextLng",e)}catch(t){throw t}},[s?.id,r]),c=t.useCallback(async e=>{if(s?.id&&r)try{await Sl.updatePreferences(s.id,r,{timezone:e}),i(t=>({...t,timezone:e}))}catch(t){throw t}},[s?.id,r]),u=t.useCallback(async e=>{if(s?.id&&r)try{await Sl.updatePreferences(s.id,r,{datetime_format:e}),i(t=>({...t,datetimeFormat:e}))}catch(t){throw t}},[s?.id,r]);return e.jsx(Rl.Provider,{value:{...n,setLocale:d,setTimezone:c,setDatetimeFormat:u,isLoading:o},children:a})},exports.LocaleSelector=Fl,exports.LoginPage=()=>e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(pt,{className:"w-full max-w-md",children:[e.jsx(ht,{className:"text-center",children:e.jsx(ft,{className:"text-2xl font-bold",children:"Acesso ao Sistema"})}),e.jsxs(gt,{className:"text-center space-y-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"Faça login para acessar o sistema"}),e.jsx(lt,{onClick:async()=>{Ms()?await er.loginDev():er.loginProd()},className:"w-full",size:"lg",children:Ms()?"Login Desenvolvimento":"Entrar com Qualiex"})]})]})}),exports.MESSAGES=zs,exports.ManageAccessModal=fd,exports.MarkdownMessage=hd,exports.MultiSelect=ts,exports.Muted=co,exports.NativeSelect=eo,exports.NavigationProvider=Ul,exports.P=no,exports.PageBreadcrumb=function({items:t,maxItems:a=3,className:s}){return t.length>a&&(t[0],t.slice(-(a-1))),t.length,e.jsx(Jn,{className:s})},exports.PageMetadataProvider=Un,exports.Pagination=ho,exports.PaginationContent=fo,exports.PaginationEllipsis=yo,exports.PaginationItem=xo,exports.PaginationLink=go,exports.PaginationNext=vo,exports.PaginationPrevious=bo,exports.PlaceCard=xd,exports.PlacesList=function({places:t,isLoading:a,manageAccessConfig:s}){const{t:r}=Ya();return a?e.jsx("div",{className:"flex items-center justify-center py-12",children:e.jsxs("div",{className:"text-center space-y-2",children:[e.jsx("div",{className:"animate-spin h-8 w-8 border-4 border-primary border-t-transparent rounded-full mx-auto"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:r("loading_data")})]})}):t&&0!==t.length?e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-xl font-bold mb-4",children:"Estrutura de Locais"}),t.map(t=>e.jsx(xd,{place:t,manageAccessConfig:s},t.id))]}):e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center space-y-3",children:[e.jsx(l.Building2,{className:"h-12 w-12 text-muted-foreground/50"}),e.jsxs("div",{children:[e.jsx("h3",{className:"font-semibold text-lg",children:"Nenhum local encontrado"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Não há locais cadastrados para esta unidade."})]})]})},exports.Popover=ga,exports.PopoverContent=va,exports.PopoverTrigger=ba,exports.Progress=_n,exports.ProtectedRoute=({children:a})=>{const{isAuthenticated:s,isLoading:r}=ar();if(t.useEffect(()=>{if(!s)return;const e=()=>{us.areAllTokensValid()||er.logout()};e();const t=setInterval(e,3e5);return()=>clearInterval(t)},[s]),t.useEffect(()=>{if(r)return;if(s)return;if(us.isManualLogout())return void(window.location.href="/login");const e=new URLSearchParams(window.location.search),t=window.location.hash.startsWith("#")?window.location.hash.substring(1):window.location.hash,a=new URLSearchParams(t);if(e.has("access_token")||a.has("access_token"))return;const n=Ms();(async()=>{n?await er.loginDev():er.loginProd()})()},[s,r]),r)return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(pt,{className:"w-full max-w-md",children:[e.jsx(ht,{className:"text-center",children:e.jsx(ft,{className:"text-xl font-semibold",children:"Carregando..."})}),e.jsxs(gt,{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground",children:"Verificando autenticação..."})]})]})});if(!s){return new URLSearchParams(window.location.search).has("access_token")||new URLSearchParams(window.location.hash.substring(1)).has("access_token")?e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(pt,{className:"w-full max-w-md",children:[e.jsx(ht,{className:"text-center",children:e.jsx(ft,{className:"text-xl font-semibold",children:"Processando..."})}),e.jsxs(gt,{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground",children:"Processando tokens..."})]})]})}):e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:e.jsxs(pt,{className:"w-full max-w-md",children:[e.jsx(ht,{className:"text-center",children:e.jsx(ft,{className:"text-xl font-semibold",children:"Iniciando..."})}),e.jsxs(gt,{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground",children:Ms()?"Fazendo login automático...":"Redirecionando para autenticação..."})]})]})})}return e.jsx(e.Fragment,{children:a})},exports.QUALIEX_CONFIG=Os,exports.QUERY_KEYS={crud:e=>[e],list:(e,t)=>[e,"list",t],detail:(e,t)=>[e,"detail",t]},exports.QualiexEnrichmentService=Ws,exports.QualiexErrorInterceptor=Es,exports.QualiexUserField=bn,exports.RadioGroup=No,exports.RadioGroupItem=jo,exports.ResizableRail=sd,exports.SEARCH_CONFIG=Ls,exports.ScrollArea=mn,exports.ScrollBar=pn,exports.Searchbar=ko,exports.Select=Ft,exports.SelectContent=Bt,exports.SelectGroup=zt,exports.SelectItem=Ht,exports.SelectLabel=Wt,exports.SelectScrollDownButton=qt,exports.SelectScrollUpButton=Vt,exports.SelectSearch=ts,exports.SelectSeparator=Kt,exports.SelectTrigger=Ut,exports.SelectValue=$t,exports.Separator=Co,exports.Sheet=So,exports.SheetClose=Eo,exports.SheetContent=Io,exports.SheetDescription=Oo,exports.SheetFooter=Lo,exports.SheetHeader=Ro,exports.SheetOverlay=Ao,exports.SheetPortal=To,exports.SheetTitle=Mo,exports.SheetTrigger=Po,exports.Sidebar=Wo,exports.SidebarContent=Zo,exports.SidebarFooter=Jo,exports.SidebarGroup=el,exports.SidebarGroupAction=al,exports.SidebarGroupContent=sl,exports.SidebarGroupLabel=tl,exports.SidebarHeader=td,exports.SidebarInput=Qo,exports.SidebarInset=Go,exports.SidebarMenu=rl,exports.SidebarMenuAction=ll,exports.SidebarMenuBadge=dl,exports.SidebarMenuButton=ol,exports.SidebarMenuItem=nl,exports.SidebarMenuSkeleton=cl,exports.SidebarMenuSub=ul,exports.SidebarMenuSubButton=pl,exports.SidebarMenuSubItem=ml,exports.SidebarProvider=Bo,exports.SidebarRail=Ko,exports.SidebarSeparator=Yo,exports.SidebarSkeleton=function(){return e.jsx("div",{className:"w-64 border-r bg-muted/10",children:e.jsxs("div",{className:"p-4",children:[e.jsx(Ea,{className:"h-8 w-32 mb-6"}),e.jsx("div",{className:"space-y-2",children:Array.from({length:6}).map((t,a)=>e.jsxs("div",{className:"flex items-center space-x-3 p-2",children:[e.jsx(Ea,{className:"h-4 w-4"}),e.jsx(Ea,{className:"h-4 w-20"})]},a))})]})})},exports.SidebarTrigger=Ho,exports.Skeleton=Ea,exports.Slider=hl,exports.Small=lo,exports.SonnerToaster=({...t})=>{const{theme:a="system"}=M.useTheme();return e.jsx(o.Toaster,{theme:a,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...t})},exports.Spinner=Zt,exports.Stack=Sn,exports.StatusSelect=function({value:t,onChange:a,activeLabel:s,inactiveLabel:r,allLabel:n,placeholder:i,className:o="w-full sm:w-[180px]"}){const{t:l}=Ya(),d=[{id:"active",name:s||l("active")},{id:"inactive",name:r||l("inactive")},{id:"all",name:n||l("all")}];return e.jsx(ts,{value:t,onChange:e=>a(e),options:d,getOptionValue:e=>e.id,getOptionLabel:e=>e.name,placeholder:i||l("select"),className:o})},exports.Switch=xn,exports.TabPageContent=function({children:t,className:a}){return e.jsx("div",{className:nt("space-y-6",a),children:t})},exports.TabPageHeader=function({title:t,description:a,actions:s,className:r}){return e.jsxs("div",{className:nt("space-y-4",r),children:[e.jsxs("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-2xl font-bold tracking-tight",children:t}),a&&e.jsx("p",{className:"text-muted-foreground text-sm",children:a})]}),s&&e.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:s})]}),e.jsx(Co,{})]})},exports.TabPageLayout=function({children:t,className:a}){return e.jsx("div",{className:nt("flex flex-col h-full",a),children:e.jsx(mn,{className:"flex-1",children:e.jsx("div",{className:"space-y-6 p-6",children:t})})})},exports.Table=xr,exports.TableBody=br,exports.TableCaption=wr,exports.TableCell=jr,exports.TableFooter=vr,exports.TableHead=Nr,exports.TableHeader=gr,exports.TableRow=yr,exports.TableRowActions=Br,exports.TableSkeleton=kr,exports.Tabs=fl,exports.TabsContent=bl,exports.TabsList=xl,exports.TabsTrigger=gl,exports.Textarea=Qt,exports.Toast=ma,exports.ToastAction=pa,exports.ToastClose=ha,exports.ToastDescription=xa,exports.ToastProvider=da,exports.ToastTitle=fa,exports.ToastViewport=ca,exports.Toaster=function(){const{toasts:t}=la();return e.jsxs(da,{children:[t.map(function({id:t,title:a,description:s,action:r,...n}){return e.jsxs(ma,{...n,children:[e.jsxs("div",{className:"grid gap-1",children:[a&&e.jsx(fa,{children:a}),s&&e.jsx(xa,{children:s})]}),r,e.jsx(ha,{})]},t)}),e.jsx(ca,{})]})},exports.Toggle=yl,exports.ToggleGroup=jl,exports.ToggleGroupItem=wl,exports.TokenManager=us,exports.TokenService=ss,exports.Tooltip=Fo,exports.TooltipContent=$o,exports.TooltipProvider=Do,exports.TooltipTrigger=zo,exports.TranslationLoader=function({children:a}){const{ready:s}=Ya(),[r,n]=t.useState(!0);return t.useEffect(()=>{s&&r&&n(!1)},[s,r]),r&&!s?e.jsx("div",{className:"flex items-center justify-center min-h-screen bg-background",children:e.jsxs("div",{className:"flex flex-col items-center gap-4",children:[e.jsx(Zt,{size:"lg"}),e.jsx("p",{className:"text-sm text-muted-foreground animate-pulse",children:"Carregando traduções..."})]})}):e.jsx(e.Fragment,{children:a})},exports.VideoEditor=function({value:a,onChange:s,onSubmit:r,onCancel:n,uploadFunction:i,deleteFunction:o,uploadOptions:d}){const{t:c}=Ya(),[u,m]=t.useState(a||{inputType:"url",controls:!0}),p=t.useRef(null),h=t.useRef(null),{upload:f,uploading:x}=zd({uploadFunction:i,deleteFunction:o,defaultOptions:{...d,allowedTypes:["video/*"],maxSize:104857600}}),{upload:g,uploading:b}=zd({uploadFunction:i,deleteFunction:o,defaultOptions:{...d,allowedTypes:["image/*"],maxSize:5242880}}),v=t.useMemo(()=>Wd(u.videoUrl||Bd(u.embedCode)||""),[u.videoUrl,u.embedCode]),y=(e,t)=>{const a={...u,[e]:t};m(a),s(a)};return e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("input_type")}),e.jsxs(Ft,{value:u.inputType||"url",onValueChange:e=>y("inputType",e),children:[e.jsx(Ut,{children:e.jsx($t,{})}),e.jsxs(Bt,{children:[e.jsx(Ht,{value:"url",children:c("url")}),e.jsx(Ht,{value:"upload",children:c("input_type_upload")}),e.jsx(Ht,{value:"embed",children:c("input_type_embed")})]})]})]}),"upload"===u.inputType&&i&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("file")}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx("input",{ref:p,type:"file",accept:"video/*",onChange:async e=>{const t=e.target.files?.[0];if(t)try{const e=await f(t),a={...u,videoUrl:e.url,videoFile:e.name,videoPath:e.path,videoSize:e.size,title:u.title||t.name.replace(/\.[^/.]+$/,"")};m(a),s(a)}catch(a){}finally{p.current&&(p.current.value="")}},className:"hidden"}),e.jsx(lt,{type:"button",variant:"outline",onClick:()=>p.current?.click(),disabled:x,children:x?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),c("uploading")]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Upload,{className:"mr-2 h-4 w-4"}),c("select_video")]})}),u.videoFile&&e.jsx("span",{className:"text-xs text-muted-foreground truncate self-center",children:c("video.fileInfo",{name:u.videoFile,size:Math.round((u.videoSize||0)/1024/1024)})})]})]}),"embed"===u.inputType&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("embed")}),e.jsx(Qt,{placeholder:c("embed"),value:u.embedCode||"",onChange:e=>y("embedCode",e.target.value),rows:4,className:"font-mono text-sm"})]}),i&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("thumbnail")}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(ct,{type:"url",placeholder:c("thumbnail"),value:u.thumbnail||"",onChange:e=>y("thumbnail",e.target.value),className:"flex-1"}),e.jsx("input",{ref:h,type:"file",accept:"image/*",onChange:async e=>{const t=e.target.files?.[0];if(t)try{const e=await g(t),a={...u,thumbnail:e.url,thumbnailFile:e.name,thumbnailPath:e.path};m(a),s(a)}catch(a){}finally{h.current&&(h.current.value="")}},className:"hidden"}),e.jsx(lt,{type:"button",variant:"outline",onClick:()=>h.current?.click(),disabled:b,children:b?e.jsxs(e.Fragment,{children:[e.jsx(l.Loader2,{className:"mr-2 h-4 w-4 animate-spin"}),c("video.uploading")]}):e.jsxs(e.Fragment,{children:[e.jsx(l.Upload,{className:"mr-2 h-4 w-4"}),c("upload")]})})]}),u.thumbnailFile&&e.jsx("p",{className:"text-xs text-muted-foreground",children:c("video.thumbnailFileInfo",{name:u.thumbnailFile})})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{htmlFor:"title",children:c("title")}),e.jsx(ct,{id:"title",placeholder:c("title"),value:u.title||"",onChange:e=>y("title",e.target.value)})]}),e.jsxs("div",{className:"flex gap-6",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{id:"autoplay",type:"checkbox",checked:u.autoplay||!1,onChange:e=>y("autoplay",e.target.checked),className:"h-4 w-4"}),e.jsx(mt,{htmlFor:"autoplay",className:"cursor-pointer",children:c("video.autoplay")})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{id:"controls",type:"checkbox",checked:!1!==u.controls,onChange:e=>y("controls",e.target.checked),className:"h-4 w-4"}),e.jsx(mt,{htmlFor:"controls",className:"cursor-pointer",children:c("video.controls")})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(mt,{children:c("preview")}),e.jsx("div",{className:"border rounded-lg p-4 bg-muted/30",children:(()=>{const t=u.videoUrl||Bd(u.embedCode)||"";if(!t)return e.jsx("div",{className:"text-center py-8 text-muted-foreground",children:c("no_content_preview")});if("file"===v)return e.jsxs("video",{controls:!1!==u.controls,autoPlay:u.autoplay,poster:u.thumbnail,className:"w-full h-auto rounded-md",playsInline:!0,children:[e.jsx("source",{src:t}),c("unsupported")]});const a="youtube"===v?Ud(t,u.autoplay):qd(t,u.autoplay);return e.jsx("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e.jsx("iframe",{title:u.title||c("video"),src:a,className:"absolute inset-0 w-full h-full rounded-md",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})})})()})]}),e.jsxs("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e.jsx(lt,{variant:"outline",onClick:n,children:c("cancel")}),e.jsx(lt,{onClick:()=>{u.videoUrl||u.embedCode?r(u):oa({title:c("error"),description:c("error_no_video"),variant:"destructive"})},disabled:!(u.videoUrl||u.embedCode),children:c("save")})]})]})},exports.VideoRenderer=function({content:t,className:a="",style:s}){const r=t.videoUrl||Bd(t.embedCode)||"";if(!r)return null;const n=Wd(r),{t:i}=Ya();return e.jsx(pt,{className:`overflow-hidden my-4 ${a}`,style:s,children:e.jsxs(gt,{className:"p-0",children:["file"===n?e.jsxs("video",{controls:!1!==t.controls,autoPlay:t.autoplay,poster:t.thumbnail,className:"w-full h-auto",playsInline:!0,muted:t.autoplay,children:[e.jsx("source",{src:r}),"Seu navegador não suporta vídeos HTML5."]}):e.jsx("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e.jsx("iframe",{title:t.title||i("video"),src:"youtube"===n?Ud(r,t.autoplay):qd(r,t.autoplay),className:"absolute inset-0 w-full h-full",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})}),t.title&&e.jsx("div",{className:"p-4",children:e.jsx("p",{className:"text-sm font-medium",children:t.title})})]})})},exports.WizardBreadcrumb=Rn,exports.WizardButtons=Mn,exports.WizardForm=function({title:a,sections:s,initialData:r,onSubmit:n,onCancel:i,open:o,submitButtonText:l,isLoading:d=!1,usersData:c,showProgressIndicator:u=!0,progressType:m="stepper",validateOnNext:p=!0,allowSkipSections:h=!1,previousButtonText:f,nextButtonText:x,onStepChange:g,onStepValidationFail:b,renderProgressIndicator:v,renderButtons:y,currentStepIndex:N,onCurrentStepChange:j}){const[w,k]=t.useState(0),C=N??w,S=j??k,P=t.useRef(null),[E,T]=t.useState(null),A=t.useCallback(e=>{P.current=e,T(e)},[]),_=t.useMemo(()=>s&&Array.isArray(s)?s.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[s]),{formData:I,errors:R,updateField:L,handleSubmit:M}=dn(_,r,void 0,o);t.useEffect(()=>{o&&S(0)},[o,S]);const O=t.useCallback(()=>{const e=s[C];if(!e)return!0;const t=e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e),a={};let r=!0;return t.forEach(e=>{const t=I[e.name];if(e.required&&(""===t||null==t||Array.isArray(t)&&0===t.length)&&(a[e.name]=`${e.label} é obrigatório`,r=!1),e.validation&&"function"==typeof e.validation){const s=e.validation(t,I);s&&(a[e.name]=s,r=!1)}}),!r&&b&&b(C,a),r},[s,C,I,b]),D=t.useCallback(()=>{if(p&&!O())return;const e=C+1;e<s.length&&(S(e),g?.(e,s[e].id))},[C,s,p,O,S,g]),F=t.useCallback(()=>{const e=C-1;e>=0&&(S(e),g?.(e,s[e].id))},[C,s,S,g]),z=t.useCallback(()=>{let e=!0;for(let t=0;t<s.length;t++){s[t].fields.flatMap(e=>"group"===e.type?e.fields||[]:e).forEach(t=>{const a=I[t.name];t.required&&(""===a||null==a||Array.isArray(a)&&0===a.length)&&(e=!1)})}e&&M(n)()},[s,I,M,n]),$=t.useMemo(()=>s.map((e,t)=>({index:t,id:e.id,label:e.label||e.id,isActive:t===C,isCompleted:t<C,isDisabled:e.disabled||!1})),[s,C]),U=0===C,V=C===s.length-1,q=t.useMemo(()=>{if(!u)return null;if(v)return v(C,s.length,s);const t=h?e=>{S(e),g?.(e,s[e].id)}:void 0;switch(m){case"breadcrumb":return e.jsx(Rn,{steps:$,currentStepIndex:C,onStepClick:t});case"progressbar":return e.jsx(Ln,{steps:$,currentStepIndex:C});default:return e.jsx(In,{steps:$,currentStepIndex:C,onStepClick:t})}},[u,v,m,$,C,s,h,S,g]),B=t.useMemo(()=>{const t={isFirstStep:U,isLastStep:V,canGoNext:C<s.length-1,canGoPrevious:C>0,isLoading:d,onPrevious:F,onNext:D,onSubmit:z,previousButtonText:f,nextButtonText:x,submitButtonText:l};return y?y(t):e.jsx(Mn,{...t})},[U,V,C,s.length,d,F,D,z,f,x,l,y]),W=t=>{const a=(t.computedValue,I[t.name]),s=void 0!==a?a:"",r=R[t.name];switch(t.type){case"group":return e.jsxs("div",{className:"space-y-2",children:[t.label&&e.jsx(mt,{className:"text-sm font-medium",children:t.label}),e.jsx("div",{className:nt("grid gap-4",1===t.columns&&"grid-cols-1",2===t.columns&&"grid-cols-1 md:grid-cols-2",3===t.columns&&"grid-cols-1 md:grid-cols-3",4===t.columns&&"grid-cols-1 md:grid-cols-4",!t.columns&&"grid-cols-1"),children:t.fields?.map(e=>W(e))})]},t.name);case"number":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(ct,{id:t.name,type:"number",value:s,onChange:e=>L(t.name,""===e.target.value?"":Number(e.target.value)),placeholder:t.placeholder,disabled:t.disabled||void 0!==t.computedValue,className:r?"border-destructive":""}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"textarea":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(Qt,{id:t.name,value:s,onChange:e=>L(t.name,e.target.value),placeholder:t.placeholder,disabled:t.disabled,rows:t.rows||3,className:r?"border-destructive":""}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"select":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsxs(Ft,{value:s,onValueChange:e=>L(t.name,e),children:[e.jsx(Ut,{className:r?"border-destructive":"",children:e.jsx($t,{placeholder:t.placeholder||`Selecione ${t.label}`})}),e.jsx(Bt,{children:t.options?.map(t=>e.jsx(Ht,{value:String(t.value),children:t.label},t.value))})]}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"multiselect":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(ts,{options:t.options||[],value:Array.isArray(s)?s:[],onChange:e=>L(t.name,e),placeholder:t.placeholder,className:r?"border-destructive":""}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"color":case"color-picker":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(un,{value:s,onChange:e=>L(t.name,e),label:""}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"icon-picker":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(fn,{value:s,onChange:e=>L(t.name,e),label:""}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"user-select":return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(bn,{value:s,onChange:e=>L(t.name,e),placeholder:t.placeholder,disabled:t.disabled}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name);case"custom":return t.render?e.jsxs("div",{className:"space-y-2",children:[t.label&&e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),t.render({value:s,onChange:e=>L(t.name,e),error:r,disabled:t.disabled}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name):null;default:return e.jsxs("div",{className:"space-y-2",children:[e.jsxs(mt,{htmlFor:t.name,children:[t.label,t.required&&e.jsx("span",{className:"text-destructive ml-1",children:"*"})]}),e.jsx(ct,{id:t.name,type:t.type||"text",value:s,onChange:e=>L(t.name,e.target.value),placeholder:t.placeholder,disabled:t.disabled||void 0!==t.computedValue,className:r?"border-destructive":""}),r&&e.jsx("p",{className:"text-sm text-destructive",children:r})]},t.name)}},H=s[C];return e.jsx(vt,{open:o,onOpenChange:i,children:e.jsxs(kt,{ref:A,className:"max-w-4xl max-h-[90vh] overflow-y-auto",children:[e.jsx(Ct,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:e.jsx(Pt,{className:"text-white",children:a})}),q,e.jsx("div",{className:"space-y-4 py-4",children:H?.fields.map(e=>W(e))}),e.jsx("div",{className:"flex justify-between pt-4 border-t",children:B})]})})},exports.WizardProgressBar=Ln,exports.WizardStepper=In,exports.assets=Yl,exports.badgeVariants=Xt,exports.buildHierarchy=yd,exports.buttonGroupVariants=ri,exports.buttonVariants=ot,exports.calculateAspectRatio=Hd,exports.cn=nt,exports.createCrudPage=function(t){return({manager:a})=>{const{manager:s,config:r,onSave:n,onEdit:i,onToggleStatus:o}=t,l=a??s,d={entityName:r.entityName,entityNamePlural:r.entityNamePlural,filters:r.filters||[],columns:r.columns,cardFields:r.cardFields||[],enableBulkActions:r.enableBulkActions??!1,bulkActions:r.bulkActions||[],customActions:r.customActions,customRowActions:r.customRowActions,customListView:r.customListView,onEdit:i||r.onEdit};return e.jsx(En,{manager:l,config:d,formSections:r.formSections,onSave:n,onToggleStatus:o,defaultSort:r.defaultSort})}},exports.createCrudRoutingConfig=function(e,t){const a=Cl({basePath:e,newPath:t.newPath,editPath:t.editPath});return{useCustomRouting:!0,onNew:a.onNew,onEdit:a.onEdit}},exports.createRoutingHandlers=Cl,exports.createService=Gs,exports.createSimpleSaveHandler=function(e,t,a){return s=>{if(s.id){const t=a(s);e.updateEntity(s.id,t)}else{const a=t(s);e.createEntity(a)}}},exports.createSimpleService=function(e){const t=Gs({tableName:e.tableName,searchFields:e.searchFields||["title"],selectFields:e.selectFields,schemaName:e.schemaName||"central",entityName:e.entityName,enableQualiexEnrichment:e.enableQualiexEnrichment||!0,userIdFields:e.userIdFields,userFieldsMapping:e.userFieldsMapping});return{service:t,useCrudHook:(a,s)=>sr({queryKey:e.tableName,service:{...t,getAll:async(e={})=>await t.getAll({...e})},entityName:e.entityName,additionalFilters:a,onSuccess:s})}},exports.debounce=(e,t)=>{let a;return(...s)=>{clearTimeout(a),a=setTimeout(()=>e(...s),t)}},exports.deriveEmailField=Us,exports.deriveNameField=$s,exports.deriveUsernameField=Vs,exports.detectVideoProvider=Wd,exports.emailService=md,exports.errorService=hs,exports.extractImageFileName=function(e){try{const t=new URL(e),a=t.pathname.split("/");return a[a.length-1]||"image"}catch{const t=e.split("/");return t[t.length-1]||"image"}},exports.extractVimeoId=Vd,exports.extractYouTubeId=$d,exports.filterAndPromoteOrphans=function(e,t){const a=e.map(e=>({...e})),s=new Set(a.filter(e=>!t.has(e.id_user)).map(e=>e.id_user));return a.forEach(e=>{if(e.id_leader&&s.has(e.id_leader)){let t=e.id_leader;for(;t&&s.has(t);){const e=a.find(e=>e.id_user===t);t=e?.id_leader||null}e.id_leader=t}}),a.filter(e=>t.has(e.id_user))},exports.flattenTree=Nd,exports.formatCurrency=e=>null==e?"R$ 0,00":new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",minimumFractionDigits:2,maximumFractionDigits:2}).format(e),exports.formatDate=cd,exports.formatDatetime=e=>{if(!e)return"";const t=i.parseISO(e);if(!i.isValid(t))return"Data inválida";return`${t.toLocaleDateString("pt-BR",{day:"2-digit",month:"2-digit",year:"numeric",timeZone:"America/Sao_Paulo"})} ${t.toLocaleTimeString("pt-BR",{hour:"2-digit",minute:"2-digit",timeZone:"America/Sao_Paulo"})}`},exports.formatFileSize=function(e){return e<1024?`${e} B`:e<1048576?`${Math.round(e/1024)} KB`:`${(e/1024/1024).toFixed(2)} MB`},exports.generateCrudConfig=function(e,t,a={}){const s=[];return Object.keys(t).forEach(e=>{if("id"!==e&&!e.endsWith("_at")){const a=t[e],r={key:e,header:An(e),label:An(e),...Tn(e,a),sortable:!0,searchable:"string"==typeof a};s.push(r)}}),{title:e,columns:s,searchPlaceholder:`Buscar ${e.toLowerCase()}...`,itemsPerPage:10,enableCreate:!0,enableEdit:!0,enableDelete:!0,enableSearch:!0,enableFilters:!1,...a}},exports.getQualiexConfig=Ds,exports.getSupabaseClient=Ns,exports.handleExternalLink=rt,exports.i18n=st,exports.inputGroupAddonVariants=Ki,exports.inputGroupButtonVariants=Qi,exports.isDevEnvironment=Ms,exports.isImageUrl=function(e){const t=e.toLowerCase();return[".jpg",".jpeg",".png",".gif",".webp",".svg",".bmp",".ico"].some(e=>t.includes(e))},exports.logoSrc=Zl,exports.normalizeVideoUrl=function(e,t,a){switch(t||Wd(e)){case"youtube":return Ud(e,a);case"vimeo":return qd(e,a);default:return e}},exports.normalizeVimeoUrl=qd,exports.normalizeYouTubeUrl=Ud,exports.parseIframeSrc=Bd,exports.placeService=vd,exports.qualiexApi=_s,exports.resizeKeepingAspect=function(e,t,a,s){const r=Hd(e,t);return a&&!s?{width:a,height:Math.round(a/r)}:s&&!a?{width:Math.round(s*r),height:s}:{width:e,height:t}},exports.resolveFieldMappings=qs,exports.searchbarVariants=wo,exports.setupQualiexCore=function(e){return{queryClient:e.queryClient||new g.QueryClient({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}}),config:e}},exports.slugify=e=>e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-").replace(/-+/g,"-"),exports.smallLogoSrc=ed,exports.toast=oa,exports.toggleVariants=vl,exports.translationService=Tl,exports.trimTextFields=it,exports.useActiveModules=Kl,exports.useAllQualiexUsers=(e={})=>{const{alias:t}=ar(),{enabled:a=!0}=e;return g.useQuery({queryKey:["qualiex-all-users",t],queryFn:async()=>t?_s.getAllUsers(t):[],enabled:a&&!!t,staleTime:3e5,retry:2})},exports.useAuth=ar,exports.useBaseForm=dn,exports.useCreateLeaderMutation=function(){const e="common",{alias:t}=ar(),a=g.useQueryClient(),s=Ns();return g.useMutation({mutationFn:async a=>{if(!t)throw new Error("Unidade não selecionada");if(a.id_user===a.id_leader)throw new Error("Usuário não pode ser seu próprio líder");if((await s.schema(e).from("leaders").select("id").eq("alias",t).eq("id_user",a.id_user).eq("is_removed",!1).maybeSingle()).data)throw new Error("Este usuário já está cadastrado como líder");a.id_leader&&await Ed(s,t,e,a.id_user,a.id_leader);const{data:r,error:n}=await s.schema(e).from("leaders").insert({alias:t,id_user:a.id_user,id_leader:a.id_leader,is_active:!0,is_removed:!1}).select().single();if(n)throw n;return r},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",t]}),o.toast.success("Líder adicionado com sucesso")},onError:e=>{o.toast.error(e.message||"Erro ao adicionar líder")}})},exports.useCreateMultipleLeadersMutation=kd,exports.useCreateSingleLeaderMutation=wd,exports.useCrud=sr,exports.useDebounce=Bl,exports.useFormField=_t,exports.useI18nFormatters=()=>{const{locale:e,timezone:t,datetimeFormat:a}=Ll();return{formatDatetime:e=>((e,t="dd/MM/yyyy HH:mm")=>{if(!e)return"";const a=i.parseISO(e);return i.isValid(a)?i.format(a,t):"Invalid date"})(e,a,t),formatDate:t=>cd(t,e),locale:e,timezone:t,datetimeFormat:a}},exports.useLeadershipApi=jd,exports.useLocale=Ll,exports.useMediaUpload=zd,exports.useNavigation=Vl,exports.useOpenAIChat=pd,exports.usePageMetadata=function(e){const{setMetadata:a,clearMetadata:s}=Vn();t.useEffect(()=>(a(e),()=>s()),[e.title,e.subtitle,a,s])},exports.usePageMetadataContext=Vn,exports.usePageTitle=ql,exports.usePermissionQuery=Hl,exports.useQualiexUsers=gn,exports.useRemoveLeaderMutation=Sd,exports.useRouteBreadcrumbs=function(){const e=b.useLocation();return(()=>{const t=e.pathname.split("/").filter(Boolean),a=[{label:"Exemplos",href:"/"}];let s="";return t.forEach((e,r)=>{s+=`/${e}`;const n=r===t.length-1,i=e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");a.push({label:i,href:n?void 0:s,isCurrentPage:n})}),a})()},exports.useSidebar=qo,exports.useSidebarResize=ad,exports.useSyncSubordinatesMutation=Pd,exports.useToast=la,exports.useTranslation=Ya,exports.useUpdateLeaderMutation=Cd;