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/README.md +93 -6412
- package/dist/README.md +93 -6412
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.esm.js +10 -1
- package/dist/index.js +10 -1
- package/package.json +25 -5
package/dist/index.esm.js
CHANGED
|
@@ -1 +1,10 @@
|
|
|
1
|
-
import{jsx as e,jsxs as a,Fragment as t}from"react/jsx-runtime";import*as r from"react";import s,{useState as n,useMemo as i,createContext as o,useContext as l,useCallback as d,useEffect as c,memo as m,useRef as u,Component as h}from"react";import{Slot as p}from"@radix-ui/react-slot";import{cva as f}from"class-variance-authority";import{clsx as g}from"clsx";import{twMerge as b}from"tailwind-merge";import{parseISO as v,isValid as N,format as y}from"date-fns";import{toast as x,Toaster as w}from"sonner";export{toast as sonnerToast}from"sonner";import{EllipsisVertical as k,X as C,ChevronDown as S,ChevronUp as E,Check as I,Loader2 as _,AlertCircle as A,AlertTriangle as T,Search as P,FileX as R,ChevronRight as z,Circle as F,Edit as D,PowerOff as L,Power as j,Trash2 as O,Plus as M,ArrowUpDown as $,ArrowUp as U,ArrowDown as V,Target as q,Trophy as B,Award as W,Sparkles as H,Flame as Q,Zap as K,Key as G,Shield as J,EyeOff as X,Eye as Y,Unlock as Z,Lock as ee,Archive as ae,FolderOpen as te,Folder as re,FileText as se,Save as ne,Copy as ie,Share as oe,Upload as le,Download as de,HelpCircle as ce,Info as me,Bell as ue,Clock as he,ArrowRight as pe,ArrowLeft as fe,ChevronLeft as ge,Minus as be,Filter as ve,Bookmark as Ne,Book as ye,Video as xe,Music as we,Image as ke,Camera as Ce,MapPin as Se,Calendar as Ee,Phone as Ie,Mail as _e,Settings as Ae,User as Te,Home as Pe,Heart as Re,Star as ze,ChevronsLeft as Fe,ChevronsRight as De,RefreshCw as Le,MoreHorizontal as je,PanelLeft as Oe,ExternalLink as Me,Building2 as $e,LogOut as Ue,MessageCircle as Ve,Send as qe,Users as Be,Crown as We,UserPlus as He}from"lucide-react";import*as Qe from"@radix-ui/react-label";import*as Ke from"@radix-ui/react-dialog";import{useFormContext as Ge,FormProvider as Je,Controller as Xe,appendErrors as Ye,useForm as Ze}from"react-hook-form";import*as ea from"@radix-ui/react-select";import*as aa from"@radix-ui/react-checkbox";import*as ta from"@radix-ui/react-toast";import*as ra from"@radix-ui/react-popover";import{createClient as sa}from"@supabase/supabase-js";import{useQueryClient as na,useQuery as ia,useMutation as oa,QueryClient as la}from"@tanstack/react-query";import{useSearchParams as da,useLocation as ca,useNavigate as ma,Link as ua}from"react-router-dom";import*as ha from"@radix-ui/react-alert-dialog";import*as pa from"@radix-ui/react-dropdown-menu";import*as fa from"@radix-ui/react-scroll-area";import*as ga from"@radix-ui/react-accordion";import*as ba from"@radix-ui/react-aspect-ratio";import*as va from"@radix-ui/react-avatar";import{DayPicker as Na}from"react-day-picker";import*as ya from"@radix-ui/react-collapsible";import*as xa from"@radix-ui/react-progress";import*as wa from"@radix-ui/react-radio-group";import*as ka from"@radix-ui/react-separator";import*as Ca from"@radix-ui/react-tooltip";import*as Sa from"@radix-ui/react-slider";import{useTheme as Ea}from"next-themes";import*as Ia from"@radix-ui/react-switch";import*as _a from"@radix-ui/react-tabs";import*as Aa from"@radix-ui/react-toggle";import*as Ta from"@radix-ui/react-toggle-group";import Pa from"react-markdown";import Ra from"remark-gfm";import{z as za}from"zod";import{validateFieldsNatively as Fa,toNestErrors as Da}from"@hookform/resolvers";function La(e,a){a?.stopPropagation();window.open(e,"_blank","noopener,noreferrer")||navigator.clipboard.writeText(e).then(()=>{x.info("Link copiado para a área de transferência")})}function ja(...e){return b(g(e))}const Oa=e=>{if(null==e)return e;if("string"==typeof e)return e.trim();if(Array.isArray(e))return e.map(Oa);if("object"==typeof e&&e.constructor===Object){const a={};for(const[t,r]of Object.entries(e))a[t]=Oa(r);return a}return e},Ma=e=>{if(!e)return"";const a=v(e);if(!N(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"})}`},$a=e=>null==e?"R$ 0,00":new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",minimumFractionDigits:2,maximumFractionDigits:2}).format(e),Ua=(e,a)=>{let t;return(...r)=>{clearTimeout(t),t=setTimeout(()=>e(...r),a)}},Va=e=>e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-").replace(/-+/g,"-"),qa=f("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"}}),Ba=r.forwardRef(({className:a,variant:t,size:r,asChild:s=!1,...n},i)=>e(s?p:"button",{className:ja(qa({variant:t,size:r,className:a})),ref:i,...n}));Ba.displayName="Button";const Wa=s.forwardRef(({variant:a="default",className:t,children:r,...s},n)=>e(Ba,{ref:n,variant:"action",size:"sm",className:ja("h-7 px-2 text-xs",t),...s,children:r||e(k,{size:12})}));Wa.displayName="ActionButton";const Ha=r.forwardRef(({className:a,type:t,...r},s)=>e("input",{type:t,className:ja("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:s,...r}));Ha.displayName="Input";const Qa=f("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Ka=r.forwardRef(({className:a,...t},r)=>e(Qe.Root,{ref:r,className:ja(Qa(),a),...t}));Ka.displayName=Qe.Root.displayName;const Ga=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("rounded-lg border bg-card text-card-foreground shadow-sm",a),...t}));Ga.displayName="Card";const Ja=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("flex flex-col space-y-1.5 p-6",a),...t}));Ja.displayName="CardHeader";const Xa=r.forwardRef(({className:a,...t},r)=>e("h3",{ref:r,className:ja("text-2xl font-semibold leading-none tracking-tight",a),...t}));Xa.displayName="CardTitle";const Ya=r.forwardRef(({className:a,...t},r)=>e("p",{ref:r,className:ja("text-sm text-muted-foreground",a),...t}));Ya.displayName="CardDescription";const Za=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("p-6 pt-0",a),...t}));Za.displayName="CardContent";const et=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("flex items-center p-6 pt-0",a),...t}));et.displayName="CardFooter";const at=Ke.Root,tt=Ke.Trigger,rt=Ke.Portal,st=Ke.Close,nt=r.forwardRef(({className:a,...t},r)=>e(Ke.Overlay,{ref:r,className:ja("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}));nt.displayName=Ke.Overlay.displayName;const it=r.forwardRef(({className:t,children:r,...s},n)=>a(rt,{children:[e(nt,{}),a(Ke.Content,{ref:n,className:ja("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",t),...s,children:[r,a(Ke.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(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Close"})]})]})]}));it.displayName=Ke.Content.displayName;const ot=({className:a,...t})=>e("div",{className:ja("flex flex-col space-y-1.5 text-center",a),...t});ot.displayName="DialogHeader";const lt=({className:a,...t})=>e("div",{className:ja("flex flex-row gap-2 items-center justify-end mt-6",a),...t});lt.displayName="DialogFooter";const dt=r.forwardRef(({className:a,...t},r)=>e(Ke.Title,{ref:r,className:ja("text-xl font-semibold leading-none tracking-tight",a),...t}));dt.displayName=Ke.Title.displayName;const ct=r.forwardRef(({className:a,...t},r)=>e(Ke.Description,{ref:r,className:ja("text-sm text-muted-foreground",a),...t}));ct.displayName=Ke.Description.displayName;const mt=Je,ut=r.createContext({}),ht=({...a})=>e(ut.Provider,{value:{name:a.name},children:e(Xe,{...a})}),pt=()=>{const e=r.useContext(ut),a=r.useContext(ft),{getFieldState:t,formState:s}=Ge(),n=t(e.name,s);if(!e)throw new Error("useFormField should be used within <FormField>");const{id:i}=a;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},ft=r.createContext({}),gt=r.forwardRef(({className:a,...t},s)=>{const n=r.useId();return e(ft.Provider,{value:{id:n},children:e("div",{ref:s,className:ja("space-y-2",a),...t})})});gt.displayName="FormItem";const bt=r.forwardRef(({className:a,...t},r)=>{const{error:s,formItemId:n}=pt();return e(Ka,{ref:r,className:ja(s&&"text-destructive",a),htmlFor:n,...t})});bt.displayName="FormLabel";const vt=r.forwardRef(({...a},t)=>{const{error:r,formItemId:s,formDescriptionId:n,formMessageId:i}=pt();return e(p,{ref:t,id:s,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...a})});vt.displayName="FormControl";const Nt=r.forwardRef(({className:a,...t},r)=>{const{formDescriptionId:s}=pt();return e("p",{ref:r,id:s,className:ja("text-sm text-muted-foreground",a),...t})});Nt.displayName="FormDescription";const yt=r.forwardRef(({className:a,children:t,...r},s)=>{const{error:n,formMessageId:i}=pt(),o=n?String(n?.message):t;return o?e("p",{ref:s,id:i,className:ja("text-sm font-medium text-destructive",a),...r,children:o}):null});yt.displayName="FormMessage";const xt=ea.Root,wt=ea.Group,kt=ea.Value,Ct=r.forwardRef(({className:t,children:r,...s},n)=>a(ea.Trigger,{ref:n,className:ja("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:[r,e(ea.Icon,{asChild:!0,children:e(S,{className:"h-4 w-4 opacity-50"})})]}));Ct.displayName=ea.Trigger.displayName;const St=r.forwardRef(({className:a,...t},r)=>e(ea.ScrollUpButton,{ref:r,className:ja("flex cursor-default items-center justify-center py-1",a),...t,children:e(E,{className:"h-4 w-4"})}));St.displayName=ea.ScrollUpButton.displayName;const Et=r.forwardRef(({className:a,...t},r)=>e(ea.ScrollDownButton,{ref:r,className:ja("flex cursor-default items-center justify-center py-1",a),...t,children:e(S,{className:"h-4 w-4"})}));Et.displayName=ea.ScrollDownButton.displayName;const It=r.forwardRef(({className:t,children:r,position:s="popper",container:n,collisionBoundary:i,...o},l)=>e(ea.Portal,{container:n,children:a(ea.Content,{ref:l,className:ja("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:i,...o,children:[e(St,{}),e(ea.Viewport,{className:ja("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:r}),e(Et,{})]})}));It.displayName=ea.Content.displayName;const _t=r.forwardRef(({className:a,...t},r)=>e(ea.Label,{ref:r,className:ja("py-1.5 pl-8 pr-2 text-sm font-semibold",a),...t}));_t.displayName=ea.Label.displayName;const At=r.forwardRef(({className:t,children:r,...s},n)=>a(ea.Item,{ref:n,className:ja("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("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(ea.ItemIndicator,{children:e(I,{className:"h-4 w-4"})})}),e(ea.ItemText,{children:r})]}));At.displayName=ea.Item.displayName;const Tt=r.forwardRef(({className:a,...t},r)=>e(ea.Separator,{ref:r,className:ja("-mx-1 my-1 h-px bg-muted",a),...t}));Tt.displayName=ea.Separator.displayName;const Pt=r.forwardRef(({className:a,...t},r)=>e(aa.Root,{ref:r,className:ja("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(aa.Indicator,{className:ja("flex items-center justify-center text-current"),children:e(I,{className:"h-4 w-4"})})}));Pt.displayName=aa.Root.displayName;const Rt=r.forwardRef(({className:a,...t},r)=>e("textarea",{className:ja("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:r,...t}));Rt.displayName="Textarea";const zt=f("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"}}),Ft=r.forwardRef(({className:a,variant:t,...r},s)=>e("div",{ref:s,className:ja(zt({variant:t}),a),...r}));Ft.displayName="Badge";const Dt={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"};function Lt({size:a="md",className:t}){return e(_,{className:ja("animate-spin text-muted-foreground",Dt[a],t)})}function jt({isLoading:r,children:s,className:n,type:i="spinner",size:o="md"}){return r?"overlay"===i?a("div",{className:ja("relative",n),children:[s,e("div",{className:"absolute inset-0 bg-background/50 backdrop-blur-sm flex items-center justify-center z-10",children:e(Lt,{size:o})})]}):e("div","skeleton"===i?{className:ja("animate-pulse",n),children:e("div",{className:"bg-muted rounded-md h-full w-full"})}:{className:ja("flex items-center justify-center py-8",n),children:e(Lt,{size:o})}):e(t,{children:s})}let Ot=0;const Mt=new Map,$t=e=>{if(Mt.has(e))return;const a=setTimeout(()=>{Mt.delete(e),Bt({type:"REMOVE_TOAST",toastId:e})},1e6);Mt.set(e,a)},Ut=(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?$t(t):e.toasts.forEach(e=>{$t(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)}}},Vt=[];let qt={toasts:[]};function Bt(e){qt=Ut(qt,e),Vt.forEach(e=>{e(qt)})}function Wt({...e}){const a=(Ot=(Ot+1)%Number.MAX_SAFE_INTEGER,Ot.toString()),t=()=>Bt({type:"DISMISS_TOAST",toastId:a});return Bt({type:"ADD_TOAST",toast:{...e,id:a,open:!0,onOpenChange:e=>{e||t()}}}),{id:a,dismiss:t,update:e=>Bt({type:"UPDATE_TOAST",toast:{...e,id:a}})}}function Ht(){const[e,a]=r.useState(qt);return r.useEffect(()=>(Vt.push(a),()=>{const e=Vt.indexOf(a);e>-1&&Vt.splice(e,1)}),[e]),{...e,toast:Wt,dismiss:e=>Bt({type:"DISMISS_TOAST",toastId:e})}}const Qt=ta.Provider,Kt=r.forwardRef(({className:a,...t},r)=>e(ta.Viewport,{ref:r,className:ja("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}));Kt.displayName=ta.Viewport.displayName;const Gt=f("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"}}),Jt=r.forwardRef(({className:a,variant:t,...r},s)=>e(ta.Root,{ref:s,className:ja(Gt({variant:t}),a),...r}));Jt.displayName=ta.Root.displayName;const Xt=r.forwardRef(({className:a,...t},r)=>e(ta.Action,{ref:r,className:ja("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}));Xt.displayName=ta.Action.displayName;const Yt=r.forwardRef(({className:a,...t},r)=>e(ta.Close,{ref:r,className:ja("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(C,{className:"h-4 w-4"})}));Yt.displayName=ta.Close.displayName;const Zt=r.forwardRef(({className:a,...t},r)=>e(ta.Title,{ref:r,className:ja("text-sm font-semibold",a),...t}));Zt.displayName=ta.Title.displayName;const er=r.forwardRef(({className:a,...t},r)=>e(ta.Description,{ref:r,className:ja("text-sm opacity-90",a),...t}));function ar(){const{toasts:t}=Ht();return a(Qt,{children:[t.map(function({id:t,title:r,description:s,action:n,...i}){return a(Jt,{...i,children:[a("div",{className:"grid gap-1",children:[r&&e(Zt,{children:r}),s&&e(er,{children:s})]}),n,e(Yt,{})]},t)}),e(Kt,{})]})}er.displayName=ta.Description.displayName;const tr=ra.Root,rr=ra.Trigger,sr=r.forwardRef(({className:a,align:t="center",sideOffset:r=4,container:s,...n},i)=>e(ra.Portal,{container:s,children:e(ra.Content,{ref:i,align:t,sideOffset:r,className:ja("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})}));sr.displayName=ra.Content.displayName;const nr=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...t}));nr.displayName="Command";const ir=({children:a,...t})=>e("div",{...t,children:e(nr,{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})}),or=r.forwardRef(({className:a,...t},r)=>e("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:e("input",{ref:r,className:ja("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})}));or.displayName="CommandInput";const lr=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("max-h-[300px] overflow-y-auto overflow-x-hidden",a),...t}));lr.displayName="CommandList";const dr=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("py-6 text-center text-sm text-muted-foreground",a),...t}));dr.displayName="CommandEmpty";const cr=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("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}));cr.displayName="CommandGroup";const mr=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("-mx-1 h-px bg-border",a),...t}));mr.displayName="CommandSeparator";const ur=r.forwardRef(({className:a,disabled:t,onSelect:r,value:s,...n},i)=>e("div",{ref:i,className:ja("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&&r?.(s||""),...n}));ur.displayName="CommandItem";const hr=({className:a,...t})=>e("span",{className:ja("ml-auto text-xs tracking-widest text-muted-foreground",a),...t});function pr({className:a,...t}){return e("div",{className:ja("animate-pulse rounded-md bg-muted",a),...t})}hr.displayName="CommandShortcut";const fr=e=>e.normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase();function gr({multiple:t,options:r,value:s,onChange:o,getOptionValue:l,getOptionLabel:d,placeholder:c,label:m,icon:u,emptyMessage:h,searchPlaceholder:p,disabled:f,required:g,className:b,sortOptions:v,maxDisplayedBadges:N,popoverContainer:y,onOpen:x,onClose:w}){const[k,E]=n(!1),[_,A]=n(""),T=i(()=>s?Array.isArray(s)?s:[s]:[],[s]),P=i(()=>{if(!y)return;let e=y,a=0;try{for(;e&&a<3;){const t=window.getComputedStyle(e),r=t.overflowY||t.overflow;if(!r||"visible"===r||"unset"===r)break;e=e.parentElement,a++}}catch{}return e??void 0},[y]),R=i(()=>{const e=r.map(e=>({original:e,value:l(e),label:d(e)}));return v?e.sort((e,a)=>e.label.localeCompare(a.label,"pt-BR",{sensitivity:"base"})):e},[r,l,d,v]),z=i(()=>{if(!_)return R;const e=fr(_);return R.filter(a=>fr(a.label).includes(e))},[R,_]),F=i(()=>R.filter(e=>T.includes(e.value)),[R,T]),D=(e,a)=>{a.preventDefault(),a.stopPropagation(),o&&o(t?T.filter(a=>a!==e):"")},L=N?F.slice(0,N):F,j=N&&F.length>N?F.length-N:0;return a("div",{className:ja("space-y-2",b),children:[m&&a(Ka,{children:[m,g&&e("span",{className:"text-destructive ml-1",children:"*"})]}),a(tr,{open:k,onOpenChange:e=>{E(e),e?x?.():(A(""),w?.())},modal:!1,children:[e(rr,{asChild:!0,children:a(Ba,{variant:"outline",role:"combobox","aria-expanded":k,disabled:f,className:ja("w-full justify-between min-h-10 h-auto",0===F.length&&"text-muted-foreground"),children:[0===F.length?a("span",{className:"flex items-center gap-2",children:[u&&e(u,{className:"h-4 w-4"}),c]}):t?a("div",{className:"flex flex-wrap gap-1.5 flex-1 mr-2",children:[L.map(t=>a(Ft,{variant:"secondary",className:"gap-1 pr-1",children:[t.label,e("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&&D(t.value,e)},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>D(t.value,e),children:e(C,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})]},t.value)),j>0&&a(Ft,{variant:"outline",className:"gap-1",children:["+",j]})]}):a("span",{className:"flex items-center gap-2",children:[u&&e(u,{className:"h-4 w-4"}),F[0]?.label]}),e(S,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e(sr,{className:"w-full p-0 bg-popover z-[60]",align:"start",container:P,collisionBoundary:P,children:a(nr,{children:[e(or,{placeholder:p,value:_,onChange:e=>A(e.target.value)}),e(lr,{children:0===r.length?e(dr,{children:h}):0===z.length?e(dr,{children:"Nenhum item encontrado."}):e(cr,{children:z.map(r=>a(ur,{value:r.value,onSelect:()=>(e=>{if(o)if(t){const a=T.includes(e)?T.filter(a=>a!==e):[...T,e];o(a)}else o(e),E(!1)})(r.value),className:"cursor-pointer",children:[e(I,{className:ja("mr-2 h-4 w-4",T.includes(r.value)?"opacity-100":"opacity-0")}),r.label]},r.value))})})]})})]})]})}function br({multiple:t=!0,options:r=[],value:s,onChange:n,getOptionValue:i=e=>e.value,getOptionLabel:o=e=>e.label,placeholder:l="Selecione itens...",label:d,icon:c,emptyMessage:m="Nenhum item disponível.",searchPlaceholder:u="Buscar...",disabled:h=!1,required:p=!1,isLoading:f=!1,error:g,className:b,sortOptions:v=!0,maxDisplayedBadges:N,popoverContainer:y,onOpen:x,onClose:w}){if(f)return a("div",{className:ja("space-y-2",b),children:[d&&a(Ka,{children:[d,p&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(pr,{className:"h-10 w-full"})]});const k="string"==typeof g?g:g?"Erro ao carregar dados":void 0;return k?a("div",{className:ja("space-y-2",b),children:[d&&a(Ka,{children:[d,p&&e("span",{className:"text-destructive ml-1",children:"*"})]}),a("div",{className:"flex items-center gap-2 p-3 border border-destructive rounded-md bg-destructive/10 text-destructive",children:[e(A,{className:"h-4 w-4"}),e("span",{className:"text-sm",children:k})]})]}):e(gr,{multiple:t,options:r,value:s||(t?[]:""),onChange:n,getOptionValue:i,getOptionLabel:o,placeholder:l,label:d,icon:c,emptyMessage:m,searchPlaceholder:u,disabled:h,required:p,className:b,sortOptions:v,maxDisplayedBadges:N,popoverContainer:y,onOpen:x,onClose:w})}var vr=Object.defineProperty;class Nr{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 s=e.split(".");if(3!==s.length)return null;const n=s[1];n.length,this.LARGE_PAYLOAD_THRESHOLD;try{const e=this.normalizeBase64Url(n),a=atob(e),t=new Uint8Array(a.length);for(let s=0;s<a.length;s++)t[s]=a.charCodeAt(s);const r=new TextDecoder("utf-8").decode(t);return JSON.parse(r)}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(r){throw r}}}}catch(s){return null}}static validateTokens(e,a){const t=[],r=[];try{a.split(".")[1],e.split(".")[1];const s=this.parseJwtPayload(a),n=this.parseJwtPayload(e);if(!s){const e="ID token decode falhou - possível problema com base64url encoding";return r.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:r}}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(s.exp&&s.exp<o){const e="ID token expirado - autenticação inválida";return r.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:i,warnings:t,errors:r}}return{isValid:!0,idTokenValid:!0,accessTokenValid:i,warnings:t,errors:r}}catch(s){const e=`Erro na validação de tokens: ${s}`;return r.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:r}}}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?vr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t})(Nr,"LARGE_PAYLOAD_THRESHOLD"+"",1e3);const yr="qualiex_access_token",xr="qualiex_id_token",wr="supabase_token",kr="oauth_state",Cr="oauth_nonce",Sr="selected_alias",Er="manual_logout",Ir={setAccessToken:e=>localStorage.setItem(yr,e),getAccessToken:()=>localStorage.getItem(yr),setIdToken:e=>localStorage.setItem(xr,e),getIdToken:()=>localStorage.getItem(xr),getSupabaseToken:()=>localStorage.getItem(wr),setOAuthState:e=>sessionStorage.setItem(kr,e),getOAuthState:()=>sessionStorage.getItem(kr),clearOAuthState:()=>sessionStorage.removeItem(kr),setOAuthNonce:e=>sessionStorage.setItem(Cr,e),getOAuthNonce:()=>sessionStorage.getItem(Cr),clearOAuthNonce:()=>sessionStorage.removeItem(Cr),setSelectedAlias:e=>localStorage.setItem(Sr,e),getSelectedAlias:()=>localStorage.getItem(Sr),clearSelectedAlias:()=>localStorage.removeItem(Sr),generateOAuthState:()=>"Lw==",generateOAuthNonce:()=>{const e=new Uint8Array(32);return crypto.getRandomValues(e),btoa(String.fromCharCode(...e)).replace(/[+/=]/g,"")},hasAllTokens:()=>!(!Ir.getAccessToken()||!Ir.getIdToken()),setSupabaseToken:e=>{localStorage.setItem(wr,e),Ir._clearValidationCache()},areAllTokensValid:()=>{const e=Ir.getAccessToken(),a=Ir.getIdToken();if(!e||!a)return!1;try{const t=Nr.validateTokens(e,a);return!!t.idTokenValid&&t.idTokenValid}catch(t){return!1}},clearExpiredTokens:()=>{let e=!1;const a=Ir.getAccessToken(),t=Ir.getIdToken(),r=Ir.getSupabaseToken();return a&&Ir.isTokenExpired(a)&&(localStorage.removeItem(yr),e=!0),t&&Ir.isTokenExpired(t)&&(localStorage.removeItem(xr),e=!0),r&&Ir.isTokenExpired(r)&&(localStorage.removeItem(wr),e=!0),e},clearAll:()=>{localStorage.removeItem(yr),localStorage.removeItem(xr),localStorage.removeItem(wr),localStorage.removeItem(Sr),localStorage.removeItem(Er),sessionStorage.removeItem(kr),sessionStorage.removeItem(Cr)},setManualLogout:()=>localStorage.setItem(Er,"true"),isManualLogout:()=>"true"===localStorage.getItem(Er),clearManualLogout:()=>localStorage.removeItem(Er),isTokenExpired:e=>{try{return Nr.isTokenExpired(e)}catch{return!0}},_validationCache:{isValid:!1,timestamp:0,cacheValidityMs:3e5},_clearValidationCache:()=>{Ir._validationCache.isValid=!1,Ir._validationCache.timestamp=0},isSupabaseTokenValid:()=>{const e=Ir.getSupabaseToken();if(!e)return!1;if(Ir.isTokenExpired(e))return Ir._clearValidationCache(),Ir._handleExpiredToken(),!1;const a=Date.now();return a-Ir._validationCache.timestamp<Ir._validationCache.cacheValidityMs?Ir._validationCache.isValid:(Ir._validationCache.isValid=!0,Ir._validationCache.timestamp=a,!0)},getValidSupabaseToken:()=>Ir.isSupabaseTokenValid()?Ir.getSupabaseToken():null,_handleExpiredToken:()=>{Ir.clearAll(),"undefined"!=typeof window&&(window.location.href="/")},extractTokenData:()=>{if(!Ir.isSupabaseTokenValid())return null;const e=Ir.getSupabaseToken();if(!e)return null;try{const a=Nr.parseJwtPayload(e);if(!a)return null;const t=a.alias||a.default||a.user_alias,r=a.place_id||null,s=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 r=a[e];if(r&&"string"==typeof r){const e=r.split(";");if(e.length>7&&e[0]===t){n=e[7];break}}}return{alias:t,companyId:n,placeId:r,placeName:s,payload:a}}catch(a){return Ir._handleExpiredToken(),null}},getCompanyId:e=>{const a=Ir.getAccessToken();if(a)try{const t=Nr.parseJwtPayload(a);if(t)for(const a in t)if(a.startsWith("co")&&/^co\d+$/.test(a)){const r=t[a];if(r&&"string"==typeof r){const a=r.split(";");if(e&&a.length>7&&a[0]===e)return a[7];if(!e&&a.length>7)return a[7]}}}catch(s){}const t=Ir.extractTokenData();if(t?.companyId)return t.companyId;const r=Ir.getIdToken();if(r)try{const a=Nr.parseJwtPayload(r);if(a)for(const t in a)if(t.startsWith("co")&&/^co\d+$/.test(t)){const r=a[t];if(r&&"string"==typeof r){const a=r.split(";");if(e&&a.length>7&&a[0]===e)return a[7];if(!e&&a.length>7)return a[7]}}}catch(s){}return null},getCurrentCompanyId:()=>{const e=Ir.extractTokenData();return e?.companyId||null},getAllCompaniesData:()=>{const e=Ir.getIdToken();if(!e)return[];try{const a=Nr.parseJwtPayload(e);if(!a)return[];const t=[];for(const e in a)if(e.startsWith("co")&&/^co\d+$/.test(e)){const r=a[e];if(r&&"string"==typeof r){const e=r.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 _r=Object.defineProperty,Ar=(e,a,t)=>((e,a,t)=>a in e?_r(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const Tr=new class{constructor(){Ar(this,"errors",[]),Ar(this,"toastCount",0),Ar(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()){Wt({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){Wt({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 Pr=Object.defineProperty,Rr=(e,a,t)=>((e,a,t)=>a in e?Pr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const zr=import.meta.env.VITE_SUPABASE_URL,Fr=import.meta.env.VITE_SUPABASE_PUBLISHABLE_KEY,Dr=class e{constructor(){Rr(this,"client"),Rr(this,"currentToken",null),Rr(this,"instanceCount",0),this.instanceCount++,this.client=this.createClientWithToken(null)}createClientWithToken(e){const a={apikey:Fr};e&&this.isTokenValid(e)&&(a.Authorization=`Bearer ${e}`);return sa(zr,Fr,{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=Ir.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 Tr.handleError(a instanceof Error?a:"❌ Supabase - Error validating token",!1),!1}}};Rr(Dr,"instance");let Lr=Dr;function jr(){return Lr.getInstance().getClient()}class Or{static async generateToken(e,a,t,r=!1){try{if(!r){const e=Ir.getSupabaseToken();if(e&&Ir.isSupabaseTokenValid())return e}const s=jr(),{data:n,error:i}=await s.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?(Ir.setSupabaseToken(n.access_token),n.access_token):null}catch(s){return s instanceof Error&&(s.message.includes("401")||s.message.includes("Unauthorized"))&&t?.(),null}}}var Mr=Object.defineProperty,$r=(e,a,t)=>((e,a,t)=>a in e?Mr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);class Ur{static setLogoutCallback(e){this.onLogoutCallback=e}static async attemptRegeneration(){if(this.isRegenerating)return null;this.isRegenerating=!0;try{const e=Ir.getAccessToken(),a=Ir.getSelectedAlias();if(!e||!a)return null;const t=await Or.generateToken(e,a,this.onLogoutCallback||void 0,!1);return t?(Ir.setSupabaseToken(t),t):null}catch(e){return null}finally{this.isRegenerating=!1}}}$r(Ur,"isRegenerating",!1),$r(Ur,"onLogoutCallback",null);class Vr{static handleError(e){if(!e)return!1;const a=e.message||e.toString();return!!this.isAuthenticationError(e,a)&&(Ir.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 qr=Object.defineProperty;class Br{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 Ur.attemptRegeneration()?(this.isRetrying=!1,!0):(Vr.handleError(e),this.isRetrying=!1,!1)}catch(r){return Vr.handleError(e),this.isRetrying=!1,!1}}return!1}static validateToken(){const e=Ir.getAccessToken();return e?Ir.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?qr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t})(e,a+"",t)})(Br,"isRetrying",!1);var Wr=Object.defineProperty,Hr=(e,a,t)=>((e,a,t)=>a in e?Wr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);const Qr=new class{constructor(){Hr(this,"baseUrl",import.meta.env.VITE_QUALIEX_API_URL)}async makeApiCall(e,a,t){const r=Br.validateToken();if(!r.valid)throw new Error(r.message||"Token inválido");const s=Ir.getAccessToken();if(!s)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 ${s}`,"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 r=t;if(t.data)r=t.data;else{if(!Array.isArray(t))return Tr.handleError("[QualiexApi] Formato de resposta inesperado",!1),[];r=t}if(!Array.isArray(r))return Tr.handleError("[QualiexApi] Resposta não é um array",!1),[];return r.map(this.mapToQualiexUser)}catch(t){if(await Br.handleApiError(t))try{const t=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:a,search:"",filterStatus:"active"},e);let r=t;if(t.data)r=t.data;else{if(!Array.isArray(t))return Tr.handleError("[QualiexApi] Formato de resposta inesperado após retry",!1),[];r=t}return Array.isArray(r)?r.map(this.mapToQualiexUser):(Tr.handleError("[QualiexApi] Resposta não é um array após retry",!1),[])}catch(r){return Tr.handleError(r instanceof Error?r:"Erro ao buscar usuários após renovação de token",!0),[]}const s=t instanceof Error?t.message:"Erro ao buscar usuários da API Qualiex";return Tr.handleError(s,!0),[]}}async fetchUserById(e,a,t){try{return(await this.fetchUsers(a,t)).find(a=>a.userId===e)||null}catch(r){return Tr.handleError(r instanceof Error?r:"[QualiexApi] Error fetching user by ID"),null}}async fetchActiveUsersMap(e,a){const t=await this.fetchUsers(e,a),r=new Map;return t.forEach(e=>{r.set(e.userId,e)}),r}async getUsers(e){const a=Ir.extractTokenData();return a&&a.companyId?this.fetchUsers(e,a.companyId):[]}},Kr={oauth:{authUrl:import.meta.env.VITE_OAUTH_AUTH_URL,clientId:import.meta.env.VITE_OAUTH_CLIENT_ID,responseType:"id_token token",scope:"openid profile email"}},Gr={pagination:{defaultPageSize:25,pageSizeOptions:[10,25,50,100]},sorting:{defaultField:"updated_at",defaultDirection:"desc"}},Jr={debounceDelay:500},Xr=()=>{const e=window.location.origin;return e.includes("localhost")||e.includes("127.0.0.1")||e.includes("id-preview")||e.includes("lovable.dev")||import.meta.env.DEV},Yr={crud:e=>[e],list:(e,a)=>[e,"list",a],detail:(e,a)=>[e,"detail",a]},Zr={userNameFieldSuffix:"_name",userEmailFieldSuffix:"_email",userUsernameFieldSuffix:"_username"},es=()=>Zr,as={isQualiex:"true"===import.meta.env.VITE_IS_QUALIEX},ts={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 rs(e,a){const t=es(),r=a||t.userNameFieldSuffix||"_name";return e.endsWith("_id")?e.replace(/_id$/,r):`${e}${r}`}function ss(e,a){const t=es(),r=a||t.userEmailFieldSuffix||"_email";return e.endsWith("_id")?e.replace(/_id$/,r):`${e}${r}`}function ns(e,a){const t=es(),r=a||t.userUsernameFieldSuffix||"_username";return e.endsWith("_id")?e.replace(/_id$/,r):`${e}${r}`}function is(e,a){return a&&a.length>0?a.map(e=>({idField:e.idField,nameField:e.nameField||rs(e.idField),emailField:e.emailField||ss(e.idField),usernameField:e.usernameField||ns(e.idField)})):e&&e.length>0?e.map(e=>({idField:e,nameField:rs(e),emailField:ss(e),usernameField:ns(e)})):[{idField:"id_user",nameField:"responsible_name"}]}const os=new Map;class ls{static async fetchQualiexUsers(e,a){const t=`${a}_${e}`,r=os.get(t);if(r&&Date.now()-r.timestamp<3e5)return r.users;const s=await Qr.fetchUsers(e,a);return os.set(t,{users:s,timestamp:Date.now()}),s}static extractUserIds(e,a){const t=new Set;for(const r of e)for(const e of a){const a=r[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 r={...e};for(const s of a){const a=e[s.idField];if(!a)continue;const n=t.get(a);if(n){if(s.nameField){r[s.nameField]||(r[s.nameField]=n.userName||n.displayName||null)}if(s.emailField){r[s.emailField]||(r[s.emailField]=n.userEmail||null)}if(s.usernameField){r[s.usernameField]||(r[s.usernameField]=n.userName||null)}}}return r}static async enrichWithUserData(e,a){if(!Array.isArray(e)||0===e.length)return e;try{const t=Ir.extractTokenData();if(!t)return e;const{alias:r,companyId:s}=t;if(!r||!s)return e;const n=is(a.userIdFields,a.userFieldsMapping);if(0===this.extractUserIds(e,n).size)return e;const i=await this.fetchQualiexUsers(r,s),o=this.indexUsers(i);return e.map(e=>this.enrichEntity(e,n,o))}catch(t){return Tr.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 ds=["responsible_name"],cs=e=>ds.includes(e);function ms(e,a,t){const r="string"==typeof e?{tableName:e,searchFields:a||[],schemaName:t||"common"}:{searchFields:e.searchFields||[],schemaName:e.schemaName||"common",...e},{tableName:s,searchFields:n,selectFields:i,schemaName:o,entityName:l,enableQualiexEnrichment:d=!1}=r,c=()=>{if(!Ir.getValidSupabaseToken())throw new Error("Token de autenticação expirado. Faça login novamente.");return jr().schema(o).from(s)},m=(e,a,t,r)=>{let s=c().select(i||"*",{count:"exact"});s=s.eq("is_removed",!1),Object.entries(r).forEach(([e,a])=>{void 0!==a&&""!==a&&(Array.isArray(a)?s=s.in(e,a):"object"==typeof a&&a&&"operator"in a?"not_null"===a.operator?s=s.not(e,"is",null):"is_null"===a.operator&&(s=s.is(e,null)):null!==a&&(s=s.eq(e,a)))}),s=((e,a)=>{if(a&&n.length>0){const t=n.map(e=>`${e}.ilike.%${a}%`).join(",");return e.or(t)}return e})(s,e);const o=a.includes(".");return o||cs(a)||(s=s.order(a,{ascending:"asc"===t})),{query:s,isForeignKey:o}},u=async(e,a,t,s,n)=>{const i=is(r.userIdFields,r.userFieldsMapping).some(e=>e.nameField===a||e.emailField===a||e.usernameField===a),o=a.includes(".");if(cs(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 ls.enrichWithUserData(i.data,{entityName:l,userIdFields:r.userIdFields,userFieldsMapping:r.userFieldsMapping});let c;c=o?d.sort((e,r)=>{const s=a.split(".").reduce((e,a)=>e?.[a],e)||"",n=a.split(".").reduce((e,a)=>e?.[a],r)||"",i=String(s).localeCompare(String(n),"pt-BR");return"asc"===t?i:-i}):((e,a,t)=>[...e].sort((e,r)=>{const s=e[a]||"",n=r[a]||"",i=s.localeCompare(n,"pt-BR",{sensitivity:"base"});return"asc"===t?i:-i}))(d,a,t);const m=((e,a=1,t=25)=>{const r=(a-1)*t,s=r+t,n=e.slice(r,s);return{data:n,pagination:{currentPage:a,totalPages:Math.ceil(e.length/t),totalItems:n.length,totalCount:e.length,itemsPerPage:t,hasNextPage:s<e.length,hasPreviousPage:a>1}}})(c,s,n);return{data:m.data,currentPage:m.pagination.currentPage,totalPages:m.pagination.totalPages,totalItems:m.pagination.totalCount,itemsPerPage:m.pagination.itemsPerPage,hasNextPage:m.pagination.hasNextPage,hasPreviousPage:m.pagination.hasPreviousPage}}return await ls.enrichWithUserData(e,{entityName:l,userIdFields:r.userIdFields,userFieldsMapping:r.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:r="desc",page:s=1,limit:n=25,...i}=e;return{search:a,sortField:t,sortDirection:r,page:s,limit:n,additionalFilters:i}})(e),{query:h}=m(a,t,n,c),p=((e,a,t)=>{const r=(a-1)*t,s=r+t-1;return e.range(r,s)})(h,i,o),{data:f,error:g,count:b}=await p;if(g)throw new Error(`Error fetching ${s}: ${g.message}`);let v=((e,a,t,r)=>{const s=Math.ceil((a||0)/r);return{data:e,currentPage:t,totalPages:s,totalItems:a||0,itemsPerPage:r,hasNextPage:t<s,hasPreviousPage:t>1}})(f||[],b,i,o);if((e=>{if(!d||!l||0===e.length)return!1;const a=is(r.userIdFields,r.userFieldsMapping);return e.some(e=>a.some(a=>e[a.idField]))})(v.data)){const e=await u(v.data,t,n,i,o);if(!Array.isArray(e))return e;v={...v,data:e}}return v},async getById(e){const{data:a,error:t}=await c().select(i||"*").eq("id",e).maybeSingle();if(t)throw new Error(`Error fetching ${s}: ${t.message}`);return a},async create(e){const a=Oa(e),t=Object.entries(a).reduce((e,[a,t])=>(void 0!==t&&(e[a]=t),e),{}),{data:r,error:n}=await c().insert(t).select().single();if(n)throw new Error(`Error creating ${s}: ${n.message}`);if(!r)throw new Error(`No data returned from create ${s} operation`);return r},async update(e,a){const t={...Oa(a),updated_at:(new Date).toISOString()},{data:r,error:n}=await c().update(t).eq("id",e).select().single();if(n)throw new Error(`Error updating ${s}: ${n.message}`);if(!r)throw new Error(`No data returned from update ${s} operation`);return r},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 ${s}: ${t.message}`)}}}const us=()=>{Ir.clearManualLogout()},hs=e=>e?.placeId||null,ps=e=>e?.placeName||null,fs=e=>({placeId:hs(e),placeName:ps(e)}),gs=class{static async initialize(){try{if(!Ir.hasAllTokens()||!Ir.areAllTokensValid())return Ir.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=Ir.getAccessToken(),t=Ir.getIdToken();us();const r=this.extractUserFromIdToken(t),s=this.extractCompaniesFromIdToken(t),n=this.extractAliasFromAccessToken(a),i=Ir.extractTokenData(),o=i?.alias;let l=null;if(o&&s.some(e=>e.alias===o))l=o;else{const e=Ir.getSelectedAlias(),a=e&&s.some(a=>a.alias===e);l=a?e:n||s[0]?.alias||null}!Ir.isSupabaseTokenValid()&&l&&await Ur.attemptRegeneration();let d=null;if(l){const e=Ir.getCompanyId(l),a=s.find(e=>e.alias===l);a&&(d={id:e||a.id,name:a.name,alias:a.alias})}let c=null,m=null;if(r?.id&&l){const a=Ir.getCompanyId(l);if(a)try{const e=(await Qr.fetchActiveUsersMap(l,a)).get(r.id);if(e){const a=fs(e);c=a.placeId,m=a.placeName}}catch(e){}}return{isAuthenticated:!0,isLoading:!1,user:r,alias:l,companies:s,selectedUnit:d,userId:r?.id||null,userAlias:r?.id||null,placeId:c,placeName:m,activePlaceId:c,activePlaceName:m}}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=jr(),{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 r=new URL("/callback",window.location.origin);return r.hash=`access_token=${a.access_token}&id_token=${a.id_token}&token_type=bearer`,window.location.href=r.toString(),!0}catch(e){return!1}}static loginProd(){const e=Ir.generateOAuthState();Ir.setOAuthState(e);const a=Ir.generateOAuthNonce();Ir.setOAuthNonce(a);const t=`${window.location.origin}/callback`,r=new URL(Kr.oauth.authUrl);r.searchParams.set("client_id",Kr.oauth.clientId),r.searchParams.set("response_type",Kr.oauth.responseType),r.searchParams.set("scope",Kr.oauth.scope),r.searchParams.set("redirect_uri",t),r.searchParams.set("state",e),r.searchParams.set("nonce",a),r.searchParams.set("response_mode","fragment"),Xr(),window.location.href=r.toString()}static async processCallback(){try{if(Ir.hasAllTokens()){if(!Ir.getValidSupabaseToken()){Ir.getAccessToken();await Ur.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),r=t("access_token"),s=t("id_token"),n=t("error");if(n)throw new Error(`Erro OAuth: ${n}`);if(!r||!s)throw new Error("Tokens não encontrados na URL de callback");Ir.setAccessToken(r),Ir.setIdToken(s),us();const i=this.extractAliasFromAccessToken(r);if(i)Ir.setSelectedAlias(i);else{const e=this.extractCompaniesFromIdToken(s);if(0===e.length)throw new Error("Nenhuma empresa encontrada nos tokens");Ir.setSelectedAlias(e[0].alias)}if(!await Ur.attemptRegeneration())throw new Error("Falha ao gerar token Supabase");return Ir.clearOAuthState(),Ir.clearOAuthNonce(),!0}catch(e){throw e}}static logout(){Ir.setManualLogout(),Ir.clearAll(),window.location.href="/login"}static decodeToken(e){return Nr.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 r=a[e].split(";");if(r.length>=4)t.push({id:r.length>7?r[7].trim():"",alias:r[0].trim(),name:r[3].trim()});else{const[r,s]=a[e].split("|");r&&s&&t.push({id:"",alias:r.trim(),name:s.trim()})}}}),t}static extractAliasFromAccessToken(e){const a=this.decodeToken(e);return a?.default||null}};Ur.setLogoutCallback(()=>{gs.logout()});let bs=gs;const vs=o(void 0),Ns=({children:a})=>{const[t,r]=n({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null});let s=null;try{s=na()}catch{}const[o,l]=n(!1),[m,u]=n(0),h=d(e=>{r(a=>({...a,...e}))},[]),p=d(e=>{r(a=>({...a,isLoading:e}))},[]),f=d(()=>{r({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null})},[]),g=d(async e=>{try{p(!0);const r=Ir.getAccessToken();if(!r)return;const n=await Or.generateToken(r,e.alias,void 0,!0);if(!n)return;Ir.setSupabaseToken(n),Ir.setSelectedAlias(e.alias);const i=Ir.extractTokenData(),o=i?.alias||e.alias,l=i?.companyId||Ir.getCompanyId(e.alias),d={id:l||e.id,name:e.name,alias:o};let c=null,m=null;if(t.user?.id&&o&&l)try{const e=(await Qr.fetchActiveUsersMap(o,l)).get(t.user.id);if(e){const a=fs(e);c=a.placeId,m=a.placeName}}catch(a){}h({alias:o,selectedUnit:d,placeId:c,placeName:m,activePlaceId:c,activePlaceName:m}),s&&(await s.clear(),await new Promise(e=>setTimeout(e,100)))}catch(a){}finally{p(!1)}},[h,s,p,t.user]),b=d(async()=>await bs.processCallback(),[]),v=d(async()=>{bs.logout(),f(),s&&await s.clear()},[f,s]),N=d(e=>{l(e)},[]),y=d(()=>{u(e=>e+1)},[]),x=d(()=>{u(e=>e+1)},[]);c(()=>{if(!t.isAuthenticated)return;let e=!0;const a=setInterval(()=>{e&&(Ir.areAllTokensValid()||e&&v())},6e5);return()=>{e=!1,clearInterval(a)}},[t.isAuthenticated,v]),c(()=>{let e=!0;return(async()=>{try{if(await new Promise(e=>setTimeout(e,100)),!e)return;const a=await bs.initialize();if(!e)return;a&&a.isAuthenticated?h({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&&p(!1)}catch(a){e&&(Vr.handleError(a),p(!1))}})(),()=>{e=!1}},[h,p,v]);const w=i(()=>({...t,logout:v,processCallback:b,switchUnit:g,availableUnits:t.companies,isSearchVisible:o,setSearchVisible:N,clearSearch:y,refreshData:x}),[t.user,t.companies,t.alias,t.isAuthenticated,t.isLoading,t.selectedUnit,t.userId,t.userAlias,t.placeId,t.placeName,t.activePlaceId,t.activePlaceName,v,b,g,o,N,y,x]);return e(vs.Provider,{value:w,children:a})},ys=()=>{const e=l(vs);if(void 0===e)throw new Error("useAuth deve ser usado dentro de um AuthProvider");return e};function xs({queryKey:e,service:a,entityName:t,searchFields:r,additionalFilters:s={},onSuccess:o}){const[l,c]=da(),m=na(),{alias:u,userId:h}=ys(),p=d(a=>{const t=`${e}_${a}`,r=l.get(t);return r||(l.get(a)||"")},[l,e]),f=p("search"),g=p("sortField")||Gr.sorting.defaultField,b=p("sortDirection")||Gr.sorting.defaultDirection,v=parseInt(p("page")||"1"),N=parseInt(p("limit")||String(Gr.pagination.defaultPageSize)),y=f,w=i(()=>({search:y,sortField:g,sortDirection:b,page:v,limit:N,...s}),[y,g,b,v,N,s]),k=d(()=>a.getAll(w),[a,w]),C=ia({queryKey:[e,u,h,w],queryFn:k});if(!C)throw new Error(`useCrud: Query initialization failed for "${t}". Ensure QueryClientProvider is configured in your app root.`);const S=oa({mutationFn:a.create,onSuccess:()=>{m.invalidateQueries({queryKey:[e]}),x.success(ts.success.created(t)),o?.()},onError:e=>{x.error(`${ts.error.create(t)}: ${e.message}`)}}),E=oa({mutationFn:({id:e,data:t})=>a.update(e,t),onSuccess:()=>{m.invalidateQueries({queryKey:[e]}),x.success(ts.success.updated(t)),o?.()},onError:e=>{x.error(`${ts.error.update(t)}: ${e.message}`)}}),I=oa({mutationFn:a.delete,onSuccess:()=>{m.invalidateQueries({queryKey:[e]}),x.success(ts.success.deleted(t))},onError:e=>{x.error(`${ts.error.delete(t)}: ${e.message}`)}}),_=d(a=>{const t={...Object.fromEntries(l)};Object.entries(a).forEach(([a,r])=>{const s=`${e}_${a}`;""===r||0===r?delete t[s]:t[s]=String(r)}),delete t.sortField,delete t.sortDirection,c(t)},[l,c,e]),A=d(e=>{_({search:e,page:1})},[_]),T=d(e=>{_({sortField:e,sortDirection:g===e&&"asc"===b?"desc":"asc",page:1})},[g,b,_]),P=d(e=>{_({page:e})},[_]),R=d(e=>{_({limit:e,page:1})},[_]),z=d(()=>{const a=Object.fromEntries(l),t=`${e}_`,r=Object.fromEntries(Object.entries(a).filter(([e])=>!e.startsWith(t)));c(r)},[c,l,e]),[F,D]=n([]),L=d(e=>{D(a=>a.includes(e)?a.filter(a=>a!==e):[...a,e])},[]),j=d(()=>{const e=C?.data?.data.map(e=>e.id)||[];D(a=>a.length===e.length?[]:e)},[C?.data?.data]),O=d(()=>{D([])},[]),M=i(()=>{const e=C?.data?.data.map(e=>e.id)||[];return e.length>0&&F.length===e.length},[F,C?.data?.data]),$=oa({mutationFn:async e=>{await Promise.all(e.map(e=>a.delete(e)))},onSuccess:(a,r)=>{m.invalidateQueries({queryKey:[e]}),x.success(`${r.length} ${t}(s) deletado(s) com sucesso`),O()},onError:e=>{x.error(`Erro ao deletar itens: ${e.message}`)}}),U=d((e,a)=>{const t=a?a(e):e;e.id?E.mutate({id:e.id,data:t}):S.mutate({...t,alias:u})},[u,S,E]);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||Gr.pagination.defaultPageSize,hasNextPage:C?.data?.hasNextPage||!1,hasPreviousPage:C?.data?.hasPreviousPage||!1},isLoading:C?.isLoading??!0,isCreating:S?.isPending??!1,isUpdating:E?.isPending??!1,isDeleting:I?.isPending??!1,error:C?.error||null,searchTerm:f,sortField:g,sortDirection:b,currentPage:v,itemsPerPage:N,queryKey:e,createEntity:S.mutate,updateEntity:(e,a)=>E.mutate({id:e,data:a}),deleteEntity:I.mutate,save:U,handleSearch:A,handleSort:T,handlePageChange:P,handleItemsPerPageChange:R,clearFilters:z,refetch:C.refetch,selectedIds:F,selectItem:L,selectAll:j,clearSelection:O,isAllSelected:M,bulkDelete:e=>$.mutateAsync(e),isBulkDeleting:$.isPending}}function ws(e){const a=ms({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,r)=>xs({queryKey:e.tableName,service:{...a,getAll:async(e={})=>await a.getAll({...e})},entityName:e.entityName,additionalFilters:t,onSuccess:r})}}const ks=ha.Root,Cs=ha.Trigger,Ss=ha.Portal,Es=r.forwardRef(({className:a,...t},r)=>e(ha.Overlay,{className:ja("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:r}));Es.displayName=ha.Overlay.displayName;const Is=r.forwardRef(({className:t,...r},s)=>a(Ss,{children:[e(Es,{}),e(ha.Content,{ref:s,className:ja("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),...r})]}));Is.displayName=ha.Content.displayName;const _s=({className:a,...t})=>e("div",{className:ja("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});_s.displayName="AlertDialogHeader";const As=({className:a,...t})=>e("div",{className:ja("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",a),...t});As.displayName="AlertDialogFooter";const Ts=r.forwardRef(({className:a,...t},r)=>e(ha.Title,{ref:r,className:ja("text-lg font-semibold",a),...t}));Ts.displayName=ha.Title.displayName;const Ps=r.forwardRef(({className:a,...t},r)=>e(ha.Description,{ref:r,className:ja("text-sm text-muted-foreground",a),...t}));Ps.displayName=ha.Description.displayName;const Rs=r.forwardRef(({className:a,...t},r)=>e(ha.Action,{ref:r,className:ja(qa(),a),...t}));Rs.displayName=ha.Action.displayName;const zs=r.forwardRef(({className:a,...t},r)=>e(ha.Cancel,{ref:r,className:ja(qa({variant:"outline"}),"mt-2 sm:mt-0",a),...t}));zs.displayName=ha.Cancel.displayName;const Fs=({open:t,onOpenChange:r,item:s,onConfirm:n,entityName:i="item",isDeleting:o=!1})=>{const l=()=>{r(!1)};return s?e(ks,{open:t,onOpenChange:l,children:a(Is,{className:"sm:max-w-[420px] bg-white",children:[a("button",{onClick:l,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(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Fechar"})]}),a("div",{className:"flex flex-col items-center text-center space-y-3 py-2",children:[e("div",{className:"w-16 h-16 rounded-full bg-destructive/10 flex items-center justify-center",children:e(T,{className:"w-8 h-8 text-destructive"})}),e(Ts,{className:"text-xl font-semibold",children:"Tem certeza?"}),e(Ps,{asChild:!0,children:a("div",{className:"text-sm text-muted-foreground",children:[e("p",{children:"Você está prestes a excluir este registro."}),e("p",{children:"Esta ação não pode ser desfeita."})]})})]}),a("div",{className:"flex flex-row gap-2 justify-center mt-6",children:[e(Rs,{onClick:()=>{s&&(n(s),r(!1))},disabled:o,className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",children:o?"Removendo...":"Sim, excluir registro"}),e(zs,{onClick:l,className:"mt-0 border-none bg-transparent hover:bg-muted text-foreground shadow-none",children:"Cancelar"})]})]})}):null},Ds=r.forwardRef(({className:a,...t},r)=>e("table",{ref:r,className:ja("w-full caption-bottom text-sm",a),...t}));Ds.displayName="Table";const Ls=r.forwardRef(({className:a,...t},r)=>e("thead",{ref:r,className:ja("[&_tr]:border-b sticky top-0 z-[1] bg-background",a),...t}));Ls.displayName="TableHeader";const js=r.forwardRef(({className:a,...t},r)=>e("tbody",{ref:r,className:ja("[&_tr:last-child]:border-0",a),...t}));js.displayName="TableBody";const Os=r.forwardRef(({className:a,...t},r)=>e("tfoot",{ref:r,className:ja("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",a),...t}));Os.displayName="TableFooter";const Ms=r.forwardRef(({className:a,...t},r)=>e("tr",{ref:r,className:ja("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted odd:bg-muted/50",a),...t}));Ms.displayName="TableRow";const $s=r.forwardRef(({className:a,...t},r)=>e("th",{ref:r,className:ja("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}));$s.displayName="TableHead";const Us=r.forwardRef(({className:a,...t},r)=>e("td",{ref:r,className:ja("px-4 py-3 align-middle [&:has([role=checkbox])]:pr-0",a),...t}));Us.displayName="TableCell";const Vs=r.forwardRef(({className:a,...t},r)=>e("caption",{ref:r,className:ja("mt-4 text-sm text-muted-foreground",a),...t}));function qs({rows:t=5,columns:r=4}){return e("div",{className:"w-full",children:a("div",{className:"rounded-md border",children:[e("div",{className:"border-b bg-muted/50 px-4 py-3",children:e("div",{className:"flex space-x-4",children:Array.from({length:r}).map((a,t)=>e(pr,{className:"h-4 w-24"},t))})}),e("div",{children:Array.from({length:t}).map((a,t)=>e("div",{className:"border-b px-4 py-3 last:border-0",children:e("div",{className:"flex space-x-4",children:Array.from({length:r}).map((a,t)=>e(pr,{className:"h-4 w-20"},t))})},t))})]})})}function Bs({count:t=3}){return e("div",{className:"space-y-4",children:Array.from({length:t}).map((t,r)=>a(Ga,{children:[a(Ja,{children:[e(pr,{className:"h-4 w-3/4"}),e(pr,{className:"h-3 w-1/2"})]}),e(Za,{children:a("div",{className:"space-y-2",children:[e(pr,{className:"h-3 w-full"}),e(pr,{className:"h-3 w-2/3"})]})})]},r))})}function Ws({fields:t=4}){return a("div",{className:"space-y-4",children:[Array.from({length:t}).map((t,r)=>a("div",{className:"space-y-2",children:[e(pr,{className:"h-4 w-24"}),e(pr,{className:"h-10 w-full"})]},r)),a("div",{className:"flex justify-end space-x-2 pt-4",children:[e(pr,{className:"h-10 w-20"}),e(pr,{className:"h-10 w-20"})]})]})}function Hs(){return a("div",{className:"flex items-center justify-between p-4 border-b",children:[a("div",{className:"flex items-center space-x-3",children:[e(pr,{className:"h-8 w-8 rounded-full"}),e(pr,{className:"h-6 w-32"})]}),a("div",{className:"flex items-center space-x-2",children:[e(pr,{className:"h-8 w-8"}),e(pr,{className:"h-8 w-24"})]})]})}function Qs(){return e("div",{className:"w-64 border-r bg-muted/10",children:a("div",{className:"p-4",children:[e(pr,{className:"h-8 w-32 mb-6"}),e("div",{className:"space-y-2",children:Array.from({length:6}).map((t,r)=>a("div",{className:"flex items-center space-x-3 p-2",children:[e(pr,{className:"h-4 w-4"}),e(pr,{className:"h-4 w-20"})]},r))})]})})}Vs.displayName="TableCaption";const Ks={default:R,search:P,error:A};function Gs({icon:t,title:r,description:s,action:n,className:i,variant:o="default"}){const l=t?()=>t:Ks[o];return a("div",{className:ja("flex flex-col items-center justify-center py-12 px-4 text-center",i),children:[e("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted mb-4",children:e(l,{className:"h-8 w-8 text-muted-foreground"})}),e("h3",{className:"text-lg font-semibold mb-2",children:r}),s&&e("p",{className:"text-muted-foreground mb-6 max-w-sm",children:s}),n&&e(Ba,{onClick:n.onClick,variant:"outline",children:n.label})]})}const Js=pa.Root,Xs=pa.Trigger,Ys=pa.Group,Zs=pa.Portal,en=pa.Sub,an=pa.RadioGroup,tn=r.forwardRef(({className:t,inset:r,children:s,...n},i)=>a(pa.SubTrigger,{ref:i,className:ja("flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",r&&"pl-8",t),...n,children:[s,e(z,{className:"ml-auto h-4 w-4"})]}));tn.displayName=pa.SubTrigger.displayName;const rn=r.forwardRef(({className:a,...t},r)=>e(pa.SubContent,{ref:r,className:ja("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}));rn.displayName=pa.SubContent.displayName;const sn=r.forwardRef(({className:a,sideOffset:t=4,...r},s)=>e(pa.Portal,{children:e(pa.Content,{ref:s,sideOffset:t,className:ja("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),...r})}));sn.displayName=pa.Content.displayName;const nn=r.forwardRef(({className:a,inset:t,...r},s)=>e(pa.Item,{ref:s,className:ja("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),...r}));nn.displayName=pa.Item.displayName;const on=r.forwardRef(({className:t,children:r,checked:s,...n},i)=>a(pa.CheckboxItem,{ref:i,className:ja("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,...n,children:[e("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(pa.ItemIndicator,{children:e(I,{className:"h-4 w-4"})})}),r]}));on.displayName=pa.CheckboxItem.displayName;const ln=r.forwardRef(({className:t,children:r,...s},n)=>a(pa.RadioItem,{ref:n,className:ja("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("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(pa.ItemIndicator,{children:e(F,{className:"h-2 w-2 fill-current"})})}),r]}));ln.displayName=pa.RadioItem.displayName;const dn=r.forwardRef(({className:a,inset:t,...r},s)=>e(pa.Label,{ref:s,className:ja("px-2 py-1.5 text-sm font-semibold",t&&"pl-8",a),...r}));dn.displayName=pa.Label.displayName;const cn=r.forwardRef(({className:a,...t},r)=>e(pa.Separator,{ref:r,className:ja("-mx-1 my-1 h-px bg-muted",a),...t}));cn.displayName=pa.Separator.displayName;const mn=({className:a,...t})=>e("span",{className:ja("ml-auto text-xs tracking-widest opacity-60",a),...t});mn.displayName="DropdownMenuShortcut";const un=({onEdit:r,onDelete:s,onToggleStatus:n,isActive:i=!0,canDelete:o=!0,customActions:l=[],renderAs:d})=>{const c=[];if(r){const e={icon:D,label:"Editar",onClick:r};c.push(e)}if(l.forEach(e=>{c.push(e)}),n){const e={icon:i?L:j,label:i?"Inativar":"Ativar",onClick:n};c.push(e)}if(o&&s){const e={icon:O,label:"Remover",onClick:s,destructive:!0};c.push(e)}return e(t,"dropdown"===d?{children:c.map((t,r)=>a(nn,{onClick:t.onClick,className:t.destructive?"text-destructive":"",children:[e(t.icon,{className:"mr-2 h-4 w-4"}),t.label]},r))}:{children:c.map((t,r)=>a(Ba,{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(t.icon,{className:"h-4 w-4 mr-2"}),t.label]},r))})},hn=({onEdit:t,onDelete:r,canDelete:s=!0,onToggleStatus:n,isActive:i=!0,customActions:o=[]})=>a(Js,{children:[e(Xs,{asChild:!0,children:e(Ba,{variant:"action",size:"sm",className:"h-7 px-2 text-xs",children:e(k,{size:12})})}),e(sn,{align:"end",className:"bg-background border border-border shadow-lg min-w-[120px]",children:e(un,{onEdit:t?e=>{e?.stopPropagation(),t?.()}:void 0,onDelete:r?e=>{e?.stopPropagation(),r?.()}:void 0,onToggleStatus:n?e=>{e?.stopPropagation(),n?.()}:void 0,isActive:i,canDelete:s&&!!r,customActions:o,renderAs:"dropdown"})})]}),pn=({contextMenu:a,onClose:t,onEdit:r,onDelete:s,onToggleStatus:n,customActions:i})=>(c(()=>{const e=()=>t();if(a)return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[a,t]),a?e("div",{className:"fixed bg-background border border-border rounded-md shadow-lg py-1 z-50 min-w-[120px]",style:{left:a.x,top:a.y},onClick:e=>e.stopPropagation(),children:e(un,{onEdit:r?()=>{r(a.item),t()}:void 0,onDelete:s?()=>{s(a.item),t()}:void 0,onToggleStatus:n?()=>{n(a.item),t()}:void 0,isActive:a.item.is_actived,canDelete:!!s,customActions:i?i(a.item):[],renderAs:"context"})}):null),fn=m(({checked:a,onCheckedChange:t})=>e(Pt,{checked:a,onCheckedChange:t}),(e,a)=>e.checked===a.checked),gn=({manager:t,columns:r,onEdit:s,onView:o,onToggleStatus:l,onDelete:d,renderActions:m,customRowActions:u,enableBulkActions:h=!1,onNew:p,newButtonLabel:f="Novo",showNewButton:g=!0,customActions:b=[],hideActionBar:v=!1})=>{const{setSearchVisible:N}=ys(),[y,x]=n(!1),[w,k]=n(null);c(()=>(N(!0),()=>N(!1)),[N]),c(()=>{const e=()=>x(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),c(()=>{const e=()=>k(null);if(w)return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[w]);const C=i(()=>(()=>{r.length;let e=0;const a=r.map(a=>{if(a.width)return e+=a.width,{...a,calculatedWidth:a.width,isFixed:!0};{const t=a.minWidth||120,r=a.weight||1;return e+=t,{...a,calculatedWidth:t,weight:r,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`}})})(),[r]),S=!v&&(p||b.length>0);return y?t.isLoading?e(Bs,{count:3}):0===t.entities.length?e(Gs,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"}):a("div",{className:"flex flex-col h-full",children:[S&&e("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:a("div",{className:"flex items-center gap-2",children:[p&&g&&a(Ba,{onClick:p,children:[e(M,{size:16,className:"mr-2"}),f]}),b.map((t,r)=>{const s=t.icon;return a(Ba,{onClick:t.action,variant:t.variant||"outline",children:[s&&e(s,{size:16,className:"mr-2"}),t.label]},r)})]})}),a("div",{className:"flex-1 overflow-auto space-y-4 p-4",children:[t.entities.map(n=>e(Ga,{className:ja("overflow-hidden cursor-pointer hover:bg-muted/50",h&&t.selectedIds.includes(n.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),h?t.selectItem(n.id):s?.(n)},onContextMenu:e=>{e.preventDefault(),e.stopPropagation(),k({x:e.clientX,y:e.clientY,item:n})},children:e(Za,{className:"p-4",children:a("div",{className:"flex items-start gap-3",children:[h&&e("div",{className:"pt-0.5",onClick:e=>e.stopPropagation(),children:e(fn,{checked:t.selectedIds.includes(n.id),onCheckedChange:()=>t.selectItem(n.id)})}),a("div",{className:"flex-1",children:[r.map(t=>a("div",{className:"flex justify-between items-start mb-2 last:mb-0",children:[a("span",{className:"text-sm font-medium text-muted-foreground min-w-0 mr-2",children:[t.header,":"]}),e("div",{className:"text-sm text-foreground text-right min-w-0 flex-1",children:t.render?t.render(n):String(n[t.key]??"")})]},String(t.key))),(s||o||m)&&e("div",{className:"mt-3 pt-3 border-t flex justify-end",onClick:e=>e.stopPropagation(),children:m?m(n):e(hn,{onEdit:s?()=>{s(n)}:void 0,onDelete:d?()=>d(n):void 0,onToggleStatus:l?()=>l(n):void 0,isActive:n.is_actived,customActions:u?u(n):[]})})]})]})})},n.id)),e(pn,{contextMenu:w,onClose:()=>k(null),onEdit:s,onDelete:d,onToggleStatus:l,customActions:u})]})]}):a("div",{className:"flex flex-col h-full",children:[S&&e("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:a("div",{className:"flex items-center gap-2",children:[p&&g&&a(Ba,{onClick:p,children:[e(M,{size:16,className:"mr-2"}),f]}),b.map((t,r)=>{const s=t.icon;return a(Ba,{onClick:t.action,variant:t.variant||"outline",children:[s&&e(s,{size:16,className:"mr-2"}),t.label]},r)})]})}),t.isLoading?e(qs,{rows:5,columns:r.length}):e("div",{className:"flex flex-col h-full overflow-hidden",children:e("div",{className:"flex-1 overflow-auto",children:a(Ds,{className:"table-auto",children:[a("colgroup",{children:[h&&e("col",{style:{width:"50px"}}),C.map((a,t)=>e("col",{style:a.style},t)),e("col",{style:{width:"50px"}})]}),e(Ls,{children:a(Ms,{children:[h&&e($s,{className:"w-[50px]",children:e(fn,{checked:t.isAllSelected,onCheckedChange:t.selectAll})}),r.map(r=>{return e($s,{className:`${r.className||""} ${r.sortable?"cursor-pointer hover:bg-muted/50":""}`,onClick:r.sortable?()=>t.handleSort(String(r.key)):void 0,children:a("div",{className:"flex items-center "+(r.className?.includes("text-center")?"justify-center":""),children:[r.header,r.sortable&&(s=String(r.key),t.sortField!==s?e($,{size:14,className:"ml-1 opacity-50"}):"asc"===t.sortDirection?e(U,{size:14,className:"ml-1"}):e(V,{size:14,className:"ml-1"}))]})},String(r.key));var s}),e($s,{className:"w-[50px] text-center",children:"Ações"})]})}),e(js,{children:0===t.entities.length?e(Ms,{children:e(Us,{colSpan:h?r.length+2:r.length+1,className:"h-32",children:e(Gs,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"})})}):t.entities.map(n=>a(Ms,{className:ja("cursor-pointer hover:bg-muted/50",h&&t.selectedIds.includes(n.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),h?t.selectItem(n.id):s?.(n)},onContextMenu:e=>{e.preventDefault(),e.stopPropagation(),k({x:e.clientX,y:e.clientY,item:n})},children:[h&&e(Us,{onClick:e=>e.stopPropagation(),children:e(fn,{checked:t.selectedIds.includes(n.id),onCheckedChange:()=>t.selectItem(n.id)})}),r.map(a=>e(Us,{className:a.className,children:a.render?a.render(n):String(n[a.key]??"")},String(a.key))),e(Us,{className:"text-center",children:m?m(n):e(hn,{onEdit:s?()=>s(n):void 0,onDelete:d?()=>d(n):void 0,onToggleStatus:l?()=>l(n):void 0,isActive:n.is_actived,customActions:u?u(n):[]})})]},n.id))})]})})}),e(pn,{contextMenu:w,onClose:()=>k(null),onEdit:s,onDelete:d,onToggleStatus:l,customActions:u})]})};function bn(e,a,t,r){const[s,o]=n({}),[l,d]=n({}),m=i(()=>e,[e]),u=e=>e instanceof Date&&!isNaN(e.getTime()),h=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{}}},p=(e,a)=>{if(e.computedValue&&"function"==typeof e.computedValue)try{return e.computedValue(a)}catch(t){return h(e)}},f=(e,a,t)=>{if(e.required&&(""===a||null==a||Array.isArray(a)&&0===a.length))return`${e.label} é obrigatório`;if(e.validation){let s;if("function"==typeof e.validation?s=e.validation:e.validation.custom&&"function"==typeof e.validation.custom&&(s=e.validation.custom),s)try{const e=s(a,t);if(e)return e}catch(r){}}};c(()=>{if(!r)return;const e=a=>{const t=[];return a.forEach(a=>{t.push(a),a.fields&&t.push(...e(a.fields))}),t},s=e(m),n={};s.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);u(e)&&(t=e.toISOString().split("T")[0])}else u(t)&&(t=t.toISOString().split("T")[0])}else t=h(e);n[e.name]=t}),s.forEach(e=>{const a=p(e,n);void 0!==a&&(n[e.name]=a)}),a&&Object.keys(a).forEach(e=>{s.find(a=>a.name===e)||void 0===a[e]||(n[e]=a[e])}),o(n),d({}),t&&t(n)},[m,a,t,r]);const g=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...g(e.fields))}),a},b=()=>{const e=g(m),a={};return e.forEach(e=>{const t=f(e,s[e.name],s);t&&(a[e.name]=t)}),d(a),0===Object.keys(a).length};return{formData:s,errors:l,updateField:(e,a)=>{o(r=>{const s={...r,[e]:a},n=((e,a)=>{let t={...a};const r=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...r(e.fields))}),a};return r(m).filter(a=>a.dependsOn===e).forEach(e=>{const a=p(e,t);void 0!==a&&(t={...t,[e.name]:a})}),t})(e,s);return t&&t(n),n}),l[e]&&d(a=>{const t={...a};return delete t[e],t});const r=g(m).find(a=>a.name===e);if(r){const t=f(r,a,s);t&&d(a=>({...a,[e]:t}))}},validateForm:b,handleSubmit:e=>a=>{a&&(a.preventDefault(),a.stopPropagation()),b()&&e(s)}}}const vn=["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#06b6d4","#84cc16","#f97316","#ec4899","#6b7280"],Nn=({value:t="#3b82f6",onChange:r,label:s})=>a("div",{className:"space-y-2",children:[s&&e(Ka,{children:s}),a(tr,{children:[e(rr,{asChild:!0,children:a(Ba,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e("div",{className:"h-4 w-4 rounded border mr-2",style:{backgroundColor:t}}),t]})}),e(sr,{className:"w-64",children:a("div",{className:"space-y-3",children:[a("div",{children:[e(Ka,{htmlFor:"color-input",children:"Cor personalizada"}),e(Ha,{id:"color-input",type:"color",value:t,onChange:e=>r?.(e.target.value),className:"h-10 w-full"})]}),a("div",{children:[e(Ka,{children:"Cores predefinidas"}),e("div",{className:"grid grid-cols-5 gap-2 mt-2",children:vn.map(a=>e("button",{className:"h-8 w-8 rounded border-2 border-border hover:border-primary",style:{backgroundColor:a},onClick:()=>r?.(a),"aria-label":`Selecionar cor ${a}`},a))})]})]})})]})]}),yn=r.forwardRef(({className:t,children:r,...s},n)=>a(fa.Root,{ref:n,className:ja("relative overflow-hidden",t),...s,children:[e(fa.Viewport,{className:"h-full w-full rounded-[inherit]",children:r}),e(xn,{}),e(fa.Corner,{})]}));yn.displayName=fa.Root.displayName;const xn=r.forwardRef(({className:a,orientation:t="vertical",...r},s)=>e(fa.ScrollAreaScrollbar,{ref:s,orientation:t,className:ja("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),...r,children:e(fa.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));xn.displayName=fa.ScrollAreaScrollbar.displayName;const wn={Star:ze,Heart:Re,Home:Pe,User:Te,Settings:Ae,Mail:_e,Phone:Ie,Calendar:Ee,MapPin:Se,Camera:Ce,Image:ke,Music:we,Video:xe,Book:ye,Bookmark:Ne,Search:P,Filter:ve,Edit:D,Trash2:O,Plus:M,Minus:be,Check:I,X:C,ChevronDown:S,ChevronUp:E,ChevronLeft:ge,ChevronRight:z,ArrowUp:U,ArrowDown:V,ArrowLeft:fe,ArrowRight:pe,Clock:he,Bell:ue,AlertCircle:A,Info:me,HelpCircle:ce,Download:de,Upload:le,Share:oe,Copy:ie,Save:ne,FileText:se,Folder:re,FolderOpen:te,Archive:ae,Lock:ee,Unlock:Z,Eye:Y,EyeOff:X,Shield:J,Key:G,Zap:K,Flame:Q,Sparkles:H,Award:W,Trophy:B,Target:q},kn=({value:t="Star",onChange:r,label:s})=>{const[i,o]=n(""),l=Object.entries(wn).filter(([e])=>e.toLowerCase().includes(i.toLowerCase())),d=wn[t]||ze;return a("div",{className:"space-y-2",children:[s&&e(Ka,{children:s}),a(tr,{children:[e(rr,{asChild:!0,children:a(Ba,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e(d,{className:"h-4 w-4 mr-2"}),t]})}),e(sr,{className:"w-80",children:a("div",{className:"space-y-3",children:[a("div",{children:[e(Ka,{htmlFor:"icon-search",children:"Buscar ícone"}),e(Ha,{id:"icon-search",placeholder:"Digite o nome do ícone...",value:i,onChange:e=>o(e.target.value)})]}),e(yn,{className:"h-48",children:e("div",{className:"grid grid-cols-6 gap-2",children:l.map(([a,s])=>e("button",{className:"p-2 rounded border-2 hover:border-primary "+(t===a?"border-primary bg-primary/10":"border-border"),onClick:()=>r?.(a),title:a,children:e(s,{className:"h-4 w-4"})},a))})})]})})]})]})};function Cn({items:a,getItemValue:t,getItemLabel:r,...s}){const n=s.error?"string"==typeof s.error?s.error:!(s.error instanceof Error)||s.error.message:void 0,i={...s,multiple:!1,options:a,getOptionValue:t,getOptionLabel:r,error:n};return e(br,{...i})}const Sn=(e={})=>{const{user:a,alias:t}=ys(),{enabled:r=!0}=e;return ia({queryKey:["qualiex-users",t],queryFn:()=>Qr.getUsers(t),enabled:r&&!!t&&!!a,retry:2,retryDelay:1e3})},En=({value:a="",onChange:t,placeholder:r="Selecionar usuário",disabled:s,className:n,enabled:i})=>{const{data:o=[],isLoading:l,error:d}=Sn({enabled:i});return e(Cn,{value:a,onChange:t,items:o,isLoading:l,error:d,getItemValue:e=>e.userId,getItemLabel:e=>e.userName,placeholder:r,searchPlaceholder:"Buscar usuário...",emptyMessage:"Nenhum usuário disponível",disabled:s,className:n})};function In({title:t,sections:r,initialData:o,onSubmit:l,onCancel:c,open:m,submitButtonText:h="Salvar",isLoading:p=!1,usersData:f}){const[g,b]=n(r?.[0]?.id||""),v=u(null),[N,y]=n(null),x=d(e=>{v.current=e,y(e)},[]),w=i(()=>r&&Array.isArray(r)?r.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[r]),{formData:k,errors:C,updateField:S,handleSubmit:E}=bn(w,o,void 0,m),I=i(()=>r&&Array.isArray(r)?r.map(e=>({...e,disabled:e.condition?!e.condition(k):e.disabled||!1})):[],[r,k]),_=i(()=>{const e=I.find(e=>e.id===g);if(e&&!e.disabled)return g;const a=I.find(e=>!e.disabled);return a?.id||g},[I,g]);s.useEffect(()=>{_!==g&&b(_)},[_,g]);const A=I.find(e=>e.id===_),T=t=>{const r=(t.computedValue,k[t.name]),s=void 0!==r?r:"",n=C[t.name];switch(t.type){case"group":return a("div",{className:"space-y-2",children:[t.label,e("div",{className:t.className||("horizontal"===t.layout?"flex gap-3":"space-y-3"),children:t.fields?.map(e=>T(e))})]},t.name);case"user-select":return a("div",{className:`space-y-2 ${t.className||""}`,children:[e(Ka,{htmlFor:t.name,children:t.label}),e(En,{value:s||"",onChange:e=>S(t.name,e),placeholder:t.placeholder,disabled:t.disabled,className:n?"border-red-500":""}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);case"textarea":return a("div",{className:`space-y-2 ${t.className||""}`,children:[e(Ka,{htmlFor:t.name,children:t.label}),e(Rt,{id:t.name,value:s||"",onChange:e=>{S(t.name,e.target.value)},placeholder:t.placeholder,disabled:t.disabled,className:`${n?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);case"select":return a("div",{className:`space-y-2 ${t.className||""}`,children:[e(Ka,{htmlFor:t.name,children:t.label}),a(xt,{value:String(s),onValueChange:e=>{S(t.name,e),t.onValueChange&&t.onValueChange(e)},disabled:t.disabled,children:[e(Ct,{className:`${n?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`,children:e(kt,{placeholder:t.placeholder})}),e(It,{children:t.options?.map(a=>e(At,{value:a.value,children:a.label},a.value))})]}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);case"multiselect":return a("div",{className:`space-y-2 ${t.className||""}`,children:[a(Ka,{htmlFor:t.name,children:[t.label,t.required&&e("span",{className:"text-red-500 ml-1",children:"*"})]}),e(br,{options:t.options||[],value:Array.isArray(s)?s:[],onChange:e=>S(t.name,e),placeholder:t.placeholder,disabled:t.disabled,error:n,popoverContainer:N,getOptionValue:e=>String(e.value),getOptionLabel:e=>e.label}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);case"date":return a("div",{className:`space-y-2 ${t.className||""}`,children:[e(Ka,{htmlFor:t.name,children:t.label}),e(Ha,{id:t.name,type:"date",value:String(s),onChange:e=>S(t.name,e.target.value),placeholder:t.placeholder,disabled:t.disabled,className:ja("w-full",n?"border-red-500":"",t.disabled?"bg-gray-100 cursor-not-allowed":"")}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);case"color":return a("div",{children:[a(Ka,{htmlFor:t.name,children:[t.label," ",t.required&&e("span",{className:"text-destructive",children:"*"})]}),e(Ha,{id:t.name,type:"color",value:s||t.defaultValue||"#000000",onChange:e=>S(t.name,e.target.value),className:"h-10"}),n&&e("p",{className:"text-sm text-destructive mt-1",children:n})]},t.name);case"color-picker":return a("div",{children:[e(Nn,{label:`${t.label} ${t.required?"*":""}`,value:s||t.defaultValue||"#3b82f6",onChange:e=>S(t.name,e)}),n&&e("p",{className:"text-sm text-destructive mt-1",children:n})]},t.name);case"icon-picker":return a("div",{children:[e(kn,{label:`${t.label} ${t.required?"*":""}`,value:s||t.defaultValue||"Star",onChange:e=>S(t.name,e)}),n&&e("p",{className:"text-sm text-destructive mt-1",children:n})]},t.name);case"custom":if(!t.component)return null;const r=t.component;return a("div",{className:`space-y-2 ${t.className||""}`,children:[t.label&&e(Ka,{htmlFor:t.name,children:t.label}),e(r,{value:s,onChange:e=>{S(t.name,e),t.onValueChange&&t.onValueChange(e)},disabled:t.disabled,error:n,popoverContainer:N,...t.componentProps||{}}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);case"number":return a("div",{className:`space-y-2 ${t.className||""}`,children:[e(Ka,{htmlFor:t.name,children:t.label}),e(Ha,{id:t.name,type:"number",value:null!=s?String(s):"",onChange:e=>{const a=e.target.value,r=""===a?null:Number(a);S(t.name,r)},placeholder:t.placeholder,disabled:t.disabled,className:`${n?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`,min:t.min,step:t.step||"1"}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name);default:return a("div",{className:`space-y-2 ${t.className||""}`,children:[e(Ka,{htmlFor:t.name,children:t.label}),e(Ha,{id:t.name,type:"text",value:s||"",onChange:e=>{S(t.name,e.target.value)},placeholder:t.placeholder,disabled:t.disabled,className:`${n?"border-red-500":""} ${t.disabled?"bg-gray-100 cursor-not-allowed":""}`,readOnly:t.disabled}),n&&e("p",{className:"text-sm text-red-500",children:n})]},t.name)}},P=d(()=>{if(!A)return null;if(A.disabled)return a("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e("div",{className:"rounded-full bg-muted p-3 mb-4",children:e("svg",{className:"h-6 w-6 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m0 0v2m0-2h2m-2 0H9m3-8V9m0-4V3"})})}),e("h3",{className:"text-lg font-semibold mb-2",children:"Seção não disponível"}),e("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(A.component){const a=A.component;return e(a,{formData:k,updateField:S,errors:C,users:f,disabled:A.disabled})}return e("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:A.fields.map(T)})},[A,k,S,C,f,T]),R=a("div",{className:"flex flex-col max-h-[80vh]",children:[I.length>1&&e("div",{className:"flex-shrink-0 p-4 border-b",children:e("div",{className:"flex space-x-2",children:I.map(a=>e(Ba,{variant:_===a.id?"action-primary":"action-secondary",size:"sm",onClick:()=>(e=>{const a=I.find(a=>a.id===e);a&&!a.disabled&&b(e)})(a.id),disabled:a.disabled,className:a.disabled?"opacity-50 cursor-not-allowed":"",children:a.title},a.id))})}),e("div",{className:"flex-1 overflow-y-auto px-2 md:px-4 pt-0 pb-2 md:pb-4",children:p?e("div",{className:"flex items-center justify-center py-12",children:e("div",{className:"text-muted-foreground",children:"Carregando dados..."})}):a("form",{onSubmit:E(l),className:"space-y-3 md:space-y-4",children:[P(),a("div",{className:"flex justify-end space-x-2 pt-4",children:[e(Ba,{type:"button",variant:"outline",onClick:c,children:"Cancelar"}),e(Ba,{type:"submit",disabled:p,children:h})]})]})})]});return e(at,{open:m,onOpenChange:e=>{!1===e&&!0===m&&c()},children:a(it,{ref:x,className:"max-w-4xl max-h-[90vh] overflow-visible",children:[a(ot,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:[e(dt,{className:"text-white",children:t}),e(ct,{className:"sr-only",children:"Formulário para preenchimento de dados"})]}),R]})})}function _n({currentPage:r,totalPages:s,totalItems:n,itemsPerPage:i,onPageChange:o,onItemsPerPageChange:l,variant:d="full"}){const c=(r-1)*i+1,m=Math.min(r*i,n);return a("div",{className:"flex items-center justify-between px-4 py-3 gap-4",children:[e("div",{className:"flex items-center gap-2",children:"full"===d&&a(t,{children:[e("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:"Itens por página"}),a(xt,{value:String(i),onValueChange:e=>l(Number(e)),children:[e(Ct,{className:"h-8 w-[70px]",children:e(kt,{})}),a(It,{children:[e(At,{value:"10",children:"10"}),e(At,{value:"25",children:"25"}),e(At,{value:"50",children:"50"}),e(At,{value:"100",children:"100"})]})]})]})}),a("div",{className:"text-sm text-muted-foreground text-center hidden sm:block",children:[c,"-",m," de ",n," itens"]}),a("div",{className:"flex items-center gap-1",children:[e(Ba,{variant:"outline",size:"sm",onClick:()=>o(1),disabled:1===r,className:"h-8 w-8 p-0",children:e(Fe,{size:16})}),e(Ba,{variant:"outline",size:"sm",onClick:()=>o(r-1),disabled:1===r,className:"h-8 w-8 p-0",children:e(ge,{size:16})}),a("div",{className:"flex items-center gap-1 px-2",children:[e("span",{className:"text-sm font-medium",children:r}),e("span",{className:"text-sm text-muted-foreground",children:"de"}),e("span",{className:"text-sm font-medium",children:s})]}),e(Ba,{variant:"outline",size:"sm",onClick:()=>o(r+1),disabled:r===s,className:"h-8 w-8 p-0",children:e(z,{size:16})}),e(Ba,{variant:"outline",size:"sm",onClick:()=>o(s),disabled:r===s,className:"h-8 w-8 p-0",children:e(De,{size:16})})]})]})}function An({manager:a}){return e(_n,{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 Tn=({selectedCount:t,onClearSelection:r,onBulkDelete:s,customActions:n=[],isLoading:i=!1})=>a("div",{className:"flex-shrink-0 flex items-center justify-between px-4 py-2 bg-primary/10 border-b border-primary/20",children:[a("div",{className:"flex items-center gap-3",children:[a("span",{className:"text-sm font-medium",children:[t," ",1===t?"item selecionado":"itens selecionados"]}),a(Ba,{variant:"ghost",size:"sm",onClick:r,className:"h-7 px-2",children:[e(C,{size:14,className:"mr-1"}),"Limpar"]})]}),a("div",{className:"flex items-center gap-2",children:[n.map((t,r)=>{const s=t.icon;return a(Ba,{variant:t.variant||"outline",size:"sm",onClick:()=>t.action([]),disabled:i,className:"h-7",children:[s&&e(s,{size:14,className:"mr-1"}),t.label]},r)}),s&&a(Ba,{variant:"destructive",size:"sm",onClick:s,disabled:i,className:"h-7",children:[e(O,{size:14,className:"mr-1"}),"Remover"]})]})]}),Pn={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},Rn={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},zn={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"};function Fn({children:a,direction:t="column",gap:r="md",align:s="stretch",justify:n="start",wrap:i=!1,className:o}){return e("div",{className:ja("flex","column"===t?"flex-col":"flex-row",Pn[r],Rn[s],zn[n],i&&"flex-wrap",o),children:a})}function Dn({manager:r,filters:s,inline:n=!1}){const{isSearchVisible:i}=ys(),o=r.searchTerm,l=a(t,{children:[s.some(e=>"search"===e.type)&&!i&&a("div",{className:"relative flex-1",children:[e(P,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e(Ha,{placeholder:"Buscar...",value:r.searchTerm,onChange:e=>r.handleSearch(e.target.value),className:"pl-10"})]}),s.filter(e=>"select"===e.type&&e.options).map((t,r)=>a("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("option",{value:"",children:t.placeholder}),t.options.map(a=>e("option",{value:a.value,children:a.label},a.value))]},`select-${r}`)),s.filter(e=>"custom"===e.type&&e.component).map((a,t)=>{const r=a.component;return e("div",{className:n?"":"w-full sm:w-auto",children:e(r,{...a.props})},`custom-${t}`)}),o&&a(Ba,{variant:"outline",onClick:r.clearFilters,className:"whitespace-nowrap",children:[e(C,{className:"h-4 w-4 mr-2"}),"Limpar Filtros"]})]});return n?e("div",{className:"flex items-center gap-2",children:l}):e(Fn,{direction:"column",gap:"md",className:"mb-6",children:e(Fn,{direction:"row",gap:"md",wrap:!0,className:"flex-col sm:flex-row",children:l})})}function Ln({manager:t,config:r,formSections:s,onSave:i,onToggleStatus:o,defaultSort:l}){t&&t.queryKey;const{setSearchVisible:d}=ys(),[m,u]=da(),[h,p]=n(!1),[f,g]=n(null),[b,v]=n({isOpen:!1,entityId:null,entityName:""}),[N,y]=n({isOpen:!1,count:0});c(()=>(d(!0),()=>{d(!1)}),[d]),c(()=>{if(l&&t){const e=`${t.queryKey}_sortField`,a=`${t.queryKey}_sortDirection`;if(!m.has(e)&&!m.has(a)){const t=Object.fromEntries(m);t[e]=l.column,t[a]=l.direction,u(t)}}},[]);return a("div",{className:"flex-1 flex flex-col h-full",children:[r.enableBulkActions&&t.selectedIds.length>0&&e(Tn,{selectedCount:t.selectedIds.length,onClearSelection:t.clearSelection,onBulkDelete:r.bulkActions&&r.bulkActions.length>0?void 0:()=>{y({isOpen:!0,count:t.selectedIds.length})},customActions:r.bulkActions,isLoading:t.isBulkDeleting}),a("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:[a("div",{className:"flex items-center gap-2",children:[a(Ba,{onClick:()=>{r.onNew?r.onNew():(g(null),p(!0))},children:[e(M,{size:16,className:"mr-2"}),"Novo"]}),r.customActions?.map((t,r)=>a(Ba,{onClick:t.action,variant:t.variant||"outline",children:[t.icon&&e(t.icon,{size:16,className:"mr-2"}),t.label]},r))]}),r.filters&&r.filters.length>0&&e("div",{className:"flex items-center gap-2 flex-1 justify-end",children:e(Dn,{manager:t,filters:r.filters,inline:!0})})]}),e("div",{className:"flex-1 flex flex-col overflow-hidden",children:r.customListView?e("div",{className:"flex-1 overflow-auto p-4",children:r.customListView(t.entities,t)}):e(gn,{manager:t,columns:r.columns,onEdit:e=>{r.onEdit?r.onEdit(e):(g(e),p(!0))},onDelete:e=>{v({isOpen:!0,entityId:e.id,entityName:e.title||e.name||"Item"})},onToggleStatus:o,enableBulkActions:r.enableBulkActions,customRowActions:r.customRowActions})}),e("div",{className:"flex-shrink-0 border-t bg-background",children:e(An,{manager:t})}),!r.useCustomRouting&&e(In,{open:h,title:f?`Editar ${r.entityName}`:`Novo ${r.entityName}`,sections:s,initialData:f||void 0,onSubmit:e=>{i(e),p(!1),g(null)},onCancel:()=>{p(!1),g(null)},isLoading:t.isLoading,submitButtonText:f?"Atualizar":"Criar"}),e(Fs,{open:b.isOpen,onOpenChange:()=>{v({isOpen:!1,entityId:null,entityName:""})},onConfirm:e=>{b.entityId&&(t.deleteEntity(b.entityId),v({isOpen:!1,entityId:null,entityName:""}))},item:b.entityId?{id:b.entityId,title:b.entityName}:void 0,entityName:r.entityName,isDeleting:t.isDeleting}),e(Fs,{open:N.isOpen,onOpenChange:()=>y({isOpen:!1,count:0}),onConfirm:()=>(t.bulkDelete?.(t.selectedIds),void y({isOpen:!1,count:0})),item:{id:"bulk",title:`${N.count} ${1===N.count?r.entityName:r.entityNamePlural}`},entityName:r.entityNamePlural,isDeleting:t.isBulkDeleting,isBulk:!0,bulkCount:N.count})]})}function jn(a){return({manager:t})=>{const{manager:r,config:s,onSave:n,onEdit:i,onToggleStatus:o}=a,l=t??r,d={entityName:s.entityName,entityNamePlural:s.entityNamePlural,filters:s.filters||[],columns:s.columns,cardFields:s.cardFields||[],enableBulkActions:s.enableBulkActions??!1,bulkActions:s.bulkActions||[],customActions:s.customActions,customRowActions:s.customRowActions,customListView:s.customListView,onEdit:i||s.onEdit};return e(Ln,{manager:l,config:d,formSections:s.formSections,onSave:n,onToggleStatus:o,defaultSort:s.defaultSort})}}function On(e,a,t){return r=>{if(r.id){const a=t(r);e.updateEntity(r.id,a)}else{const t=a(r);e.createEntity(t)}}}function Mn(e,a,t={}){const r=[];return Object.keys(a).forEach(e=>{if("id"!==e&&!e.endsWith("_at")){const t=a[e],s={key:e,header:Un(e),label:Un(e),...$n(e,t),sortable:!0,searchable:"string"==typeof t};r.push(s)}}),{title:e,columns:r,searchPlaceholder:`Buscar ${e.toLowerCase()}...`,itemsPerPage:10,enableCreate:!0,enableEdit:!0,enableDelete:!0,enableSearch:!0,enableFilters:!1,...t}}function $n(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 Un(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase()).trim()}const Vn={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}};function qn(e,a,t={}){const r=Vn[e];return Mn(r.title,a,{...r,...t})}const Bn=({children:r})=>{const{isAuthenticated:n,isLoading:i}=ys();if(s.useEffect(()=>{if(!n)return;const e=()=>{Ir.areAllTokensValid()||bs.logout()};e();const a=setInterval(e,3e5);return()=>clearInterval(a)},[n]),s.useEffect(()=>{if(i)return;if(n)return;if(Ir.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 r=Xr();(async()=>{r?await bs.loginDev():bs.loginProd()})()},[n,i]),i)return e("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:a(Ga,{className:"w-full max-w-md",children:[e(Ja,{className:"text-center",children:e(Xa,{className:"text-xl font-semibold",children:"Carregando..."})}),a(Za,{className:"text-center",children:[e("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e("p",{className:"text-muted-foreground",children:"Verificando autenticação..."})]})]})});if(!n){if(new URLSearchParams(window.location.search).has("access_token")||new URLSearchParams(window.location.hash.substring(1)).has("access_token"))return e("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:a(Ga,{className:"w-full max-w-md",children:[e(Ja,{className:"text-center",children:e(Xa,{className:"text-xl font-semibold",children:"Processando..."})}),a(Za,{className:"text-center",children:[e("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e("p",{className:"text-muted-foreground",children:"Processando tokens..."})]})]})});try{if(Ir.areAllTokensValid())return e(t,{children:r})}catch{}return e("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:a(Ga,{className:"w-full max-w-md",children:[e(Ja,{className:"text-center",children:e(Xa,{className:"text-xl font-semibold",children:"Iniciando..."})}),a(Za,{className:"text-center",children:[e("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e("p",{className:"text-muted-foreground",children:Xr()?"Fazendo login automático...":"Redirecionando para autenticação..."})]})]})})}return e(t,{children:r})},Wn=f("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"}}),Hn=r.forwardRef(({className:a,variant:t,...r},s)=>e("div",{ref:s,role:"alert",className:ja(Wn({variant:t}),a),...r}));Hn.displayName="Alert";const Qn=r.forwardRef(({className:a,...t},r)=>e("h5",{ref:r,className:ja("mb-1 font-medium leading-none tracking-tight",a),...t}));Qn.displayName="AlertTitle";const Kn=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,className:ja("text-sm [&_p]:leading-relaxed",a),...t}));Kn.displayName="AlertDescription";const Gn=()=>{const{processCallback:r}=ys(),[s,i]=n(null),[o,l]=n(!1);c(()=>{(async()=>{try{if(await r()){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 i("Falha na autenticação. Tente novamente.")}catch(e){i(e?.message||"Erro durante a autenticação. Tente novamente.")}})()},[r]);const d=async()=>{l(!0),i(null);try{await r()||i("Falha na autenticação. Tente novamente.")}catch(e){i(e?.message||"Erro ao tentar novamente.")}finally{l(!1)}},m=()=>{window.location.href="/"};return e("div",s?{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:a(Ga,{className:"w-full max-w-md",children:[e(Ja,{className:"text-center",children:a(Xa,{className:"text-xl font-semibold text-destructive flex items-center justify-center gap-2",children:[e(A,{className:"h-5 w-5"}),"Erro na Autenticação"]})}),a(Za,{className:"space-y-4",children:[e(Hn,{variant:"destructive",children:e(Kn,{children:s})}),e("div",{className:"text-sm text-muted-foreground",children:e("p",{children:"Se o problema persistir, verifique se a URL de callback está configurada corretamente no provedor OAuth."})}),a("div",{className:"flex gap-2",children:[e(Ba,{onClick:d,disabled:o,className:"flex-1",children:a(t,o?{children:[e(Lt,{size:"sm",className:"mr-2"}),"Tentando..."]}:{children:[e(Le,{className:"h-4 w-4 mr-2"}),"Tentar Novamente"]})}),e(Ba,{onClick:m,variant:"outline",className:"flex-1",children:"Voltar ao Início"})]})]})]})}:{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:a(Ga,{className:"w-full max-w-md",children:[e(Ja,{className:"text-center",children:e(Xa,{className:"text-xl font-semibold",children:"Processando Autenticação"})}),a(Za,{className:"text-center",children:[e("div",{className:"flex justify-center mb-4",children:e(Lt,{size:"lg"})}),e("p",{className:"text-muted-foreground",children:"Processando tokens e redirecionando..."})]})]})})},Jn=()=>e("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:a(Ga,{className:"w-full max-w-md",children:[e(Ja,{className:"text-center",children:e(Xa,{className:"text-2xl font-bold",children:"Acesso ao Sistema"})}),a(Za,{className:"text-center space-y-4",children:[e("p",{className:"text-muted-foreground",children:"Faça login para acessar o sistema"}),e(Ba,{onClick:async()=>{Xr()?await bs.loginDev():bs.loginProd()},className:"w-full",size:"lg",children:Xr()?"Login Desenvolvimento":"Entrar com Qualiex"})]})]})}),Xn=o(void 0);function Yn({children:a,actions:t}){const[r,s]=n({}),[i,o]=n(t);return c(()=>{o(t)},[t]),e(Xn.Provider,{value:{metadata:r,setMetadata:s,clearMetadata:()=>s({}),headerActions:i,setHeaderActions:o},children:a})}function Zn(){const e=l(Xn);if(!e)throw new Error("usePageMetadataContext must be used within PageMetadataProvider");return e}function ei(e){const{setMetadata:a,clearMetadata:t}=Zn();c(()=>(a(e),()=>t()),[e.title,e.subtitle,a,t])}function ai(e){return{queryClient:e.queryClient||new la({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}}),config:e}}const ti=ga.Root,ri=r.forwardRef(({className:a,...t},r)=>e(ga.Item,{ref:r,className:ja("border-b",a),...t}));ri.displayName="AccordionItem";const si=r.forwardRef(({className:t,children:r,...s},n)=>e(ga.Header,{className:"flex",children:a(ga.Trigger,{ref:n,className:ja("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",t),...s,children:[r,e(S,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));si.displayName=ga.Trigger.displayName;const ni=r.forwardRef(({className:a,children:t,...r},s)=>e(ga.Content,{ref:s,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...r,children:e("div",{className:ja("pb-4 pt-0",a),children:t})}));ni.displayName=ga.Content.displayName;const ii=ba.Root,oi=r.forwardRef(({className:a,...t},r)=>e(va.Root,{ref:r,className:ja("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",a),...t}));oi.displayName=va.Root.displayName;const li=r.forwardRef(({className:a,...t},r)=>e(va.Image,{ref:r,className:ja("aspect-square h-full w-full",a),...t}));li.displayName=va.Image.displayName;const di=r.forwardRef(({className:a,...t},r)=>e(va.Fallback,{ref:r,className:ja("flex h-full w-full items-center justify-center rounded-full bg-muted",a),...t}));di.displayName=va.Fallback.displayName;const ci=r.forwardRef(({...a},t)=>e("nav",{ref:t,"aria-label":"breadcrumb",...a}));ci.displayName="Breadcrumb";const mi=r.forwardRef(({className:a,...t},r)=>e("ol",{ref:r,className:ja("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",a),...t}));mi.displayName="BreadcrumbList";const ui=r.forwardRef(({className:a,...t},r)=>e("li",{ref:r,className:ja("inline-flex items-center gap-1.5",a),...t}));ui.displayName="BreadcrumbItem";const hi=r.forwardRef(({asChild:a,className:t,...s},n)=>{const i=a?r.Fragment:"a";return e(i,{ref:n,className:ja("transition-colors hover:text-foreground",t),...s})});hi.displayName="BreadcrumbLink";const pi=r.forwardRef(({className:a,...t},r)=>e("span",{ref:r,role:"link","aria-disabled":"true","aria-current":"page",className:ja("font-normal text-foreground",a),...t}));pi.displayName="BreadcrumbPage";const fi=({children:a,className:t,...r})=>e("li",{role:"presentation","aria-hidden":"true",className:ja("[&>svg]:size-3.5",t),...r,children:a??e(z,{})});fi.displayName="BreadcrumbSeparator";const gi=({className:t,...r})=>a("span",{role:"presentation","aria-hidden":"true",className:ja("flex h-9 w-9 items-center justify-center",t),...r,children:[e(je,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"More"})]});function bi(e){return(a={})=>{const t=a.width?String(a.width):e.defaultWidth;return e.formats[t]||e.formats[e.defaultWidth]}}function vi(e){return(a,t)=>{let r;if("formatting"===(t?.context?String(t.context):"standalone")&&e.formattingValues){const a=e.defaultFormattingWidth||e.defaultWidth,s=t?.width?String(t.width):a;r=e.formattingValues[s]||e.formattingValues[a]}else{const a=e.defaultWidth,s=t?.width?String(t.width):e.defaultWidth;r=e.values[s]||e.values[a]}return r[e.argumentCallback?e.argumentCallback(a):a]}}function Ni(e){return(a,t={})=>{const r=t.width,s=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],n=a.match(s);if(!n)return null;const i=n[0],o=r&&e.parsePatterns[r]||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)}}}gi.displayName="BreadcrumbEllipsis";const yi={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"}},xi={date:bi({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:bi({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:bi({formats:{full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},wi={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"},ki={ordinalNumber:(e,a)=>{const t=Number(e);return"week"===a?.unit?t+"ª":t+"º"},era:vi({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},defaultWidth:"wide"}),quarter:vi({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:vi({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:vi({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:vi({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"})},Ci={ordinalNumber:(Si={matchPattern:/^(\d+)[ºªo]?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{const t=e.match(Si.matchPattern);if(!t)return null;const r=t[0],s=e.match(Si.parsePattern);if(!s)return null;let n=Si.valueCallback?Si.valueCallback(s[0]):s[0];return n=a.valueCallback?a.valueCallback(n):n,{value:n,rest:e.slice(r.length)}}),era:Ni({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:Ni({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:Ni({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:Ni({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:Ni({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 Si;const Ei={code:"pt-BR",formatDistance:(e,a,t)=>{let r;const s=yi[e];return r="string"==typeof s?s:1===a?s.one:s.other.replace("{{count}}",String(a)),t?.addSuffix?t.comparison&&t.comparison>0?"em "+r:"há "+r:r},formatLong:xi,formatRelative:(e,a,t,r)=>{const s=wi[e];return"function"==typeof s?s(a):s},localize:ki,match:Ci,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Ii({className:a,classNames:t,showOutsideDays:r=!0,...s}){return e(Na,{showOutsideDays:r,className:ja("p-3",a),locale:Ei,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:ja(qa({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:ja(qa({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(ge,{className:"h-4 w-4"}),IconRight:({...a})=>e(z,{className:"h-4 w-4"})},...s})}Ii.displayName="Calendar";const _i=ya.Root,Ai=ya.CollapsibleTrigger,Ti=ya.CollapsibleContent;const Pi={Root:function({children:a,className:t}){return e("div",{className:ja("space-y-4",t),children:a})},Item:function({children:a,onClick:t,className:r}){return e(Ga,{className:ja("transition-colors",t&&"cursor-pointer hover:bg-muted/50",r),onClick:t,children:e(Za,{className:"p-4",children:a})})},Field:function({label:t,value:r,className:s}){return a("div",{className:ja("flex justify-between items-center text-sm",s),children:[a("span",{className:"text-muted-foreground font-medium",children:[t,":"]}),e("span",{className:"text-foreground",children:r})]})}};function Ri({value:a,onChange:t,activeLabel:r="Ativo",inactiveLabel:s="Inativo",allLabel:n="[Todos]",placeholder:i="Status",className:o="w-full sm:w-[180px]"}){return e(Cn,{value:a,onChange:e=>t(e),items:[{id:"active",name:r},{id:"inactive",name:s},{id:"all",name:n}],getItemValue:e=>e.id,getItemLabel:e=>e.name,placeholder:i,className:o})}const zi={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))]"},Fi={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"};function Di({children:a,cols:t="auto-fit",gap:r="md",className:s}){return e("div",{className:ja("grid",zi[t],Fi[r],s),children:a})}const Li=e=>e.normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase();function ji({multiple:t,options:r,value:s,onChange:o,getOptionValue:l,getOptionLabel:d,placeholder:c,label:m,icon:u,emptyMessage:h,searchPlaceholder:p,disabled:f,required:g,className:b,sortOptions:v,maxDisplayedBadges:N,popoverContainer:y,onOpen:x,onClose:w}){const[k,E]=n(!1),[_,A]=n(""),T=i(()=>s?Array.isArray(s)?s:[s]:[],[s]),P=i(()=>{if(!y)return;let e=y,a=0;try{for(;e&&a<3;){const t=window.getComputedStyle(e),r=t.overflowY||t.overflow;if(!r||"visible"===r||"unset"===r)break;e=e.parentElement,a++}}catch{}return e??void 0},[y]),R=i(()=>{const e=r.map(e=>({original:e,value:l(e),label:d(e)}));return v?e.sort((e,a)=>e.label.localeCompare(a.label,"pt-BR",{sensitivity:"base"})):e},[r,l,d,v]),z=i(()=>{if(!_)return R;const e=Li(_);return R.filter(a=>Li(a.label).includes(e))},[R,_]),F=i(()=>R.filter(e=>T.includes(e.value)),[R,T]),D=(e,a)=>{a.preventDefault(),a.stopPropagation(),o&&o(t?T.filter(a=>a!==e):"")},L=N?F.slice(0,N):F,j=N&&F.length>N?F.length-N:0;return a("div",{className:ja("space-y-2",b),children:[m&&a(Ka,{children:[m,g&&e("span",{className:"text-destructive ml-1",children:"*"})]}),a(tr,{open:k,onOpenChange:e=>{E(e),e?x?.():(A(""),w?.())},modal:!1,children:[e(rr,{asChild:!0,children:a(Ba,{variant:"outline",role:"combobox","aria-expanded":k,disabled:f,className:ja("w-full justify-between min-h-10 h-auto",0===F.length&&"text-muted-foreground"),children:[0===F.length?a("span",{className:"flex items-center gap-2",children:[u&&e(u,{className:"h-4 w-4"}),c]}):t?a("div",{className:"flex flex-wrap gap-1.5 flex-1 mr-2",children:[L.map(t=>a(Ft,{variant:"secondary",className:"gap-1 pr-1",children:[t.label,e("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&&D(t.value,e)},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>D(t.value,e),children:e(C,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})]},t.value)),j>0&&a(Ft,{variant:"outline",className:"gap-1",children:["+",j]})]}):a("span",{className:"flex items-center gap-2",children:[u&&e(u,{className:"h-4 w-4"}),F[0]?.label]}),e(S,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e(sr,{className:"w-full p-0 bg-popover z-[60]",align:"start",container:P,collisionBoundary:P,children:a(nr,{children:[e(or,{placeholder:p,value:_,onChange:e=>A(e.target.value)}),e(lr,{children:0===r.length?e(dr,{children:h}):0===z.length?e(dr,{children:"Nenhum item encontrado."}):e(cr,{children:z.map(r=>a(ur,{value:r.value,onSelect:()=>(e=>{if(o)if(t){const a=T.includes(e)?T.filter(a=>a!==e):[...T,e];o(a)}else o(e),E(!1)})(r.value),className:"cursor-pointer",children:[e(I,{className:ja("mr-2 h-4 w-4",T.includes(r.value)?"opacity-100":"opacity-0")}),r.label]},r.value))})})]})})]})]})}function Oi({multiple:t=!1,options:r=[],value:s,onChange:n,getOptionValue:i=e=>e.value,getOptionLabel:o=e=>e.label,placeholder:l="Selecione...",label:d,icon:c,emptyMessage:m="Nenhum item disponível.",searchPlaceholder:u="Buscar...",disabled:h=!1,required:p=!1,isLoading:f=!1,error:g,className:b,sortOptions:v=!0,maxDisplayedBadges:N,popoverContainer:y,onOpen:x,onClose:w}){if(f)return a("div",{className:ja("space-y-2",b),children:[d&&a(Ka,{children:[d,p&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(pr,{className:"h-10 w-full"})]});const k="string"==typeof g?g:g?"Erro ao carregar dados":void 0;return k?a("div",{className:ja("space-y-2",b),children:[d&&a(Ka,{children:[d,p&&e("span",{className:"text-destructive ml-1",children:"*"})]}),a("div",{className:"flex items-center gap-2 p-3 border border-destructive rounded-md bg-destructive/10 text-destructive",children:[e(A,{className:"h-4 w-4"}),e("span",{className:"text-sm",children:k})]})]}):e(ji,{multiple:t,options:r,value:s||(t?[]:""),onChange:n,getOptionValue:i,getOptionLabel:o,placeholder:l,label:d,icon:c,emptyMessage:m,searchPlaceholder:u,disabled:h,required:p,className:b,sortOptions:v,maxDisplayedBadges:N,popoverContainer:y,onOpen:x,onClose:w})}function Mi({items:a,maxItems:t=3,className:r}){return a.length>t&&(a[0],a.slice(-(t-1))),a.length,e(ci,{className:r})}function $i(){const e=ca();return(()=>{const a=e.pathname.split("/").filter(Boolean),t=[{label:"Exemplos",href:"/"}];let r="";return a.forEach((e,s)=>{r+=`/${e}`;const n=s===a.length-1,i=e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");t.push({label:i,href:n?void 0:r,isCurrentPage:n})}),t})()}const Ui=({className:a,...t})=>e("nav",{role:"navigation","aria-label":"pagination",className:ja("mx-auto flex w-full justify-center",a),...t});Ui.displayName="Pagination";const Vi=r.forwardRef(({className:a,...t},r)=>e("ul",{ref:r,className:ja("flex flex-row items-center gap-1",a),...t}));Vi.displayName="PaginationContent";const qi=r.forwardRef(({className:a,...t},r)=>e("li",{ref:r,className:ja("",a),...t}));qi.displayName="PaginationItem";const Bi=({className:a,isActive:t,size:r="icon",...s})=>e("a",{"aria-current":t?"page":void 0,className:ja(qa({variant:t?"outline":"ghost",size:r}),a),...s});Bi.displayName="PaginationLink";const Wi=({className:t,...r})=>a(Bi,{"aria-label":"Go to previous page",size:"default",className:ja("gap-1 pl-2.5",t),...r,children:[e(ge,{className:"h-4 w-4"}),e("span",{children:"Previous"})]});Wi.displayName="PaginationPrevious";const Hi=({className:t,...r})=>a(Bi,{"aria-label":"Go to next page",size:"default",className:ja("gap-1 pr-2.5",t),...r,children:[e("span",{children:"Next"}),e(z,{className:"h-4 w-4"})]});Hi.displayName="PaginationNext";const Qi=({className:t,...r})=>a("span",{"aria-hidden":!0,className:ja("flex h-9 w-9 items-center justify-center",t),...r,children:[e(je,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"More pages"})]});Qi.displayName="PaginationEllipsis";const Ki=r.forwardRef(({className:a,value:t,...r},s)=>e(xa.Root,{ref:s,className:ja("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",a),...r,children:e(xa.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(t||0)}%)`}})}));Ki.displayName=xa.Root.displayName;const Gi=r.forwardRef(({className:a,...t},r)=>e(wa.Root,{className:ja("grid gap-2",a),...t,ref:r}));Gi.displayName=wa.Root.displayName;const Ji=r.forwardRef(({className:a,...t},r)=>e(wa.Item,{ref:r,className:ja("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(wa.Indicator,{className:"flex items-center justify-center",children:e(F,{className:"h-2.5 w-2.5 fill-current text-current"})})}));Ji.displayName=wa.Item.displayName;const Xi=r.forwardRef(({className:a,orientation:t="horizontal",decorative:r=!0,...s},n)=>e(ka.Root,{ref:n,decorative:r,orientation:t,className:ja("shrink-0 bg-border","horizontal"===t?"h-[1px] w-full":"h-full w-[1px]",a),...s}));Xi.displayName=ka.Root.displayName;const Yi=Ke.Root,Zi=Ke.Trigger,eo=Ke.Close,ao=Ke.Portal,to=r.forwardRef(({className:a,...t},r)=>e(Ke.Overlay,{className:ja("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:r}));to.displayName=Ke.Overlay.displayName;const ro=f("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"}}),so=r.forwardRef(({side:t="right",className:r,children:s,...n},i)=>a(ao,{children:[e(to,{}),a(Ke.Content,{ref:i,className:ja(ro({side:t}),r),...n,children:[s,a(Ke.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(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Close"})]})]})]}));so.displayName=Ke.Content.displayName;const no=({className:a,...t})=>e("div",{className:ja("flex flex-col space-y-2 text-center sm:text-left",a),...t});no.displayName="SheetHeader";const io=({className:a,...t})=>e("div",{className:ja("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",a),...t});io.displayName="SheetFooter";const oo=r.forwardRef(({className:a,...t},r)=>e(Ke.Title,{ref:r,className:ja("text-lg font-semibold text-foreground",a),...t}));oo.displayName=Ke.Title.displayName;const lo=r.forwardRef(({className:a,...t},r)=>e(Ke.Description,{ref:r,className:ja("text-sm text-muted-foreground",a),...t}));lo.displayName=Ke.Description.displayName;const co=Ca.Provider,mo=Ca.Root,uo=Ca.Trigger,ho=r.forwardRef(({className:a,sideOffset:t=4,...r},s)=>e(Ca.Content,{ref:s,sideOffset:t,className:ja("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),...r}));ho.displayName=Ca.Content.displayName;const po="sidebar:state",fo=r.createContext(null);function go(){const e=r.useContext(fo);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}const bo=r.forwardRef(({defaultOpen:a=!0,open:t,onOpenChange:s,className:n,style:i,children:o,...l},d)=>{const[c,m]=r.useState(!1);r.useEffect(()=>{const e=()=>m(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const[u,h]=r.useState(!1),[p,f]=r.useState(()=>{if("undefined"!=typeof window){const e=localStorage.getItem(po);return null!==e?"true"===e:a}return a}),g=t??p,b=r.useCallback(e=>{const a="function"==typeof e?e(g):e;s?s(a):f(a),"undefined"!=typeof window&&localStorage.setItem(po,String(a))},[s,g]),v=r.useCallback(()=>c?h(e=>!e):b(e=>!e),[c,b,h]);r.useEffect(()=>{const e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),v())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[v]);const N=g?"expanded":"collapsed",y=r.useMemo(()=>({state:N,open:g,setOpen:b,isMobile:c,openMobile:u,setOpenMobile:h,toggleSidebar:v}),[N,g,b,c,u,h,v]);return e(fo.Provider,{value:y,children:e(co,{delayDuration:0,children:e("div",{className:ja("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar sidebar-container",n),style:{"--sidebar-width":"16rem","--sidebar-width-icon":"4.5rem",...i},ref:d,...l,children:o})})})});bo.displayName="SidebarProvider";const vo=r.forwardRef(({side:t="left",variant:r="sidebar",collapsible:s="offcanvas",className:n,children:i,...o},l)=>{const{isMobile:d,state:c,openMobile:m,setOpenMobile:u}=go();return"none"===s?e("div",{className:ja("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",n),ref:l,...o,children:i}):d?e(Yi,{open:m,onOpenChange:u,...o,children:a(so,{"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(oo,{className:"sr-only",children:"Menu de Navegação"}),e("div",{className:"flex h-full w-full flex-col",children:i})]})}):a("div",{ref:l,className:"group peer hidden md:block text-sidebar-foreground","data-state":c,"data-collapsible":"collapsed"===c?s:"","data-variant":r,"data-side":t,children:[e("div",{className:ja("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"===r||"inset"===r?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),e("div",{className:ja("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"===r||"inset"===r?"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",n),...o,children:e("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:i})})]})});vo.displayName="Sidebar";const No=r.forwardRef(({className:t,onClick:r,...s},n)=>{const{toggleSidebar:i}=go();return a(Ba,{ref:n,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:ja("h-7 w-7",t),onClick:e=>{r?.(e),i()},...s,children:[e(Oe,{}),e("span",{className:"sr-only",children:"Toggle Sidebar"})]})});No.displayName="SidebarTrigger";const yo=r.forwardRef(({className:a,...t},r)=>{const{toggleSidebar:s}=go();return e("button",{ref:r,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:s,title:"Toggle Sidebar",className:ja("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})});yo.displayName="SidebarRail";const xo=r.forwardRef(({className:a,...t},r)=>e("main",{ref:r,className:ja("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}));xo.displayName="SidebarInset";const wo=r.forwardRef(({className:a,...t},r)=>e(Ha,{ref:r,"data-sidebar":"input",className:ja("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",a),...t}));wo.displayName="SidebarInput";const ko=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,"data-sidebar":"header",className:ja("flex flex-col gap-2 p-2",a),...t}));ko.displayName="SidebarHeader";const Co=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,"data-sidebar":"footer",className:ja("flex flex-col gap-2 p-2",a),...t}));Co.displayName="SidebarFooter";const So=r.forwardRef(({className:a,...t},r)=>e(Xi,{ref:r,"data-sidebar":"separator",className:ja("mx-2 w-auto bg-sidebar-border",a),...t}));So.displayName="SidebarSeparator";const Eo=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,"data-sidebar":"content",className:ja("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",a),...t}));Eo.displayName="SidebarContent";const Io=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,"data-sidebar":"group",className:ja("relative flex w-full min-w-0 flex-col p-2",a),...t}));Io.displayName="SidebarGroup";const _o=r.forwardRef(({className:a,asChild:t=!1,...r},s)=>e(t?p:"div",{ref:s,"data-sidebar":"group-label",className:ja("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}));_o.displayName="SidebarGroupLabel";const Ao=r.forwardRef(({className:a,asChild:t=!1,...r},s)=>e(t?p:"button",{ref:s,"data-sidebar":"group-action",className:ja("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}));Ao.displayName="SidebarGroupAction";const To=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,"data-sidebar":"group-content",className:ja("w-full text-sm",a),...t}));To.displayName="SidebarGroupContent";const Po=r.forwardRef(({className:a,...t},r)=>e("ul",{ref:r,"data-sidebar":"menu",className:ja("flex w-full min-w-0 flex-col gap-1",a),...t}));Po.displayName="SidebarMenu";const Ro=r.forwardRef(({className:a,...t},r)=>e("li",{ref:r,"data-sidebar":"menu-item",className:ja("group/menu-item relative",a),...t}));Ro.displayName="SidebarMenuItem";const zo=f("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"}}),Fo=r.forwardRef(({asChild:t=!1,isActive:r=!1,variant:s="default",size:n="default",tooltip:i,className:o,...l},d)=>{const c=t?p:"button",{isMobile:m,state:u}=go(),h=e(c,{ref:d,"data-sidebar":"menu-button","data-size":n,"data-active":r,className:ja(zo({variant:s,size:n}),o),...l});return i?("string"==typeof i&&(i={children:i}),a(mo,{children:[e(uo,{asChild:!0,children:h}),e(ho,{side:"right",align:"center",hidden:"collapsed"!==u||m,...i})]})):h});Fo.displayName="SidebarMenuButton";const Do=r.forwardRef(({className:a,asChild:t=!1,showOnHover:r=!1,...s},n)=>e(t?p:"button",{ref:n,"data-sidebar":"menu-action",className:ja("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),...s}));Do.displayName="SidebarMenuAction";const Lo=r.forwardRef(({className:a,...t},r)=>e("div",{ref:r,"data-sidebar":"menu-badge",className:ja("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}));Lo.displayName="SidebarMenuBadge";const jo=r.forwardRef(({className:t,showIcon:s=!1,...n},i)=>{const o=r.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return a("div",{ref:i,"data-sidebar":"menu-skeleton",className:ja("rounded-md h-8 flex gap-2 px-2 items-center",t),...n,children:[s&&e("div",{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),e("div",{className:"h-4 flex-1 max-w-[--skeleton-width] skeleton-width","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":o}})]})});jo.displayName="SidebarMenuSkeleton";const Oo=r.forwardRef(({className:a,...t},r)=>e("ul",{ref:r,"data-sidebar":"menu-sub",className:ja("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}));Oo.displayName="SidebarMenuSub";const Mo=r.forwardRef(({...a},t)=>e("li",{ref:t,...a}));Mo.displayName="SidebarMenuSubItem";const $o=r.forwardRef(({asChild:a=!1,size:t="md",isActive:r,className:s,...n},i)=>e(a?p:"a",{ref:i,"data-sidebar":"menu-sub-button","data-size":t,"data-active":r,className:ja("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"===t&&"text-xs","md"===t&&"text-sm","group-data-[collapsible=icon]:hidden",s),...n}));$o.displayName="SidebarMenuSubButton";const Uo=r.forwardRef(({className:t,...r},s)=>a(Sa.Root,{ref:s,className:ja("relative flex w-full touch-none select-none items-center",t),...r,children:[e(Sa.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:e(Sa.Range,{className:"absolute h-full bg-primary"})}),e(Sa.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"})]}));Uo.displayName=Sa.Root.displayName;const Vo=({...a})=>{const{theme:t="system"}=Ea();return e(w,{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})},qo=r.forwardRef(({className:a,...t},r)=>e(Ia.Root,{className:ja("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:r,children:e(Ia.Thumb,{className:ja("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")})}));qo.displayName=Ia.Root.displayName;const Bo=_a.Root,Wo=r.forwardRef(({className:a,...t},r)=>e(_a.List,{ref:r,className:ja("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",a),...t}));Wo.displayName=_a.List.displayName;const Ho=r.forwardRef(({className:a,...t},r)=>e(_a.Trigger,{ref:r,className:ja("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}));Ho.displayName=_a.Trigger.displayName;const Qo=r.forwardRef(({className:a,...t},r)=>e(_a.Content,{ref:r,className:ja("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",a),...t}));function Ko({children:a,className:t}){return e("div",{className:ja("flex flex-col h-full",t),children:e(yn,{className:"flex-1",children:e("div",{className:"space-y-6 p-6",children:a})})})}function Go({title:t,description:r,actions:s,className:n}){return a("div",{className:ja("space-y-4",n),children:[a("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[a("div",{className:"space-y-1",children:[e("h2",{className:"text-2xl font-bold tracking-tight",children:t}),r&&e("p",{className:"text-muted-foreground text-sm",children:r})]}),s&&e("div",{className:"flex items-center gap-2 flex-wrap",children:s})]}),e(Xi,{})]})}function Jo({children:a,className:t}){return e("div",{className:ja("space-y-6",t),children:a})}Qo.displayName=_a.Content.displayName;const Xo=f("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"}}),Yo=r.forwardRef(({className:a,variant:t,size:r,...s},n)=>e(Aa.Root,{ref:n,className:ja(Xo({variant:t,size:r,className:a})),...s}));Yo.displayName=Aa.Root.displayName;const Zo=r.createContext({size:"default",variant:"default"}),el=r.forwardRef(({className:a,variant:t,size:r,children:s,...n},i)=>e(Ta.Root,{ref:i,className:ja("flex items-center justify-center gap-1",a),...n,children:e(Zo.Provider,{value:{variant:t,size:r},children:s})}));el.displayName=Ta.Root.displayName;const al=r.forwardRef(({className:a,children:t,variant:s,size:n,...i},o)=>{const l=r.useContext(Zo);return e(Ta.Item,{ref:o,className:ja(Xo({variant:l.variant||s,size:l.size||n}),a),...i,children:t})});function tl({manager:t,config:r,onEdit:s,onDelete:n}){return t.isLoading?e(Di,{children:Array.from({length:3}).map((t,r)=>a(Ga,{children:[a(Ja,{children:[e(pr,{className:"h-4 w-3/4"}),e(pr,{className:"h-3 w-1/2"})]}),e(Za,{children:a("div",{className:"space-y-2",children:[e(pr,{className:"h-3 w-full"}),e(pr,{className:"h-3 w-2/3"})]})})]},r))}):e(Pi.Root,{children:t.entities.map(t=>a(Pi.Item,{onClick:()=>s(t),children:[e(Ja,{className:"pb-3",children:a("div",{className:"flex items-start justify-between",children:[a("div",{className:"flex-1 min-w-0",children:[e(Xa,{className:"text-base leading-6 truncate",children:t.title||t.name||"Sem título"}),e(Ya,{className:"text-sm",children:y(new Date(t.created_at),"dd/MM/yyyy HH:mm",{locale:Ei})})]}),a("div",{className:"flex items-center gap-2 ml-2",children:[t.link&&e(Ba,{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),x.info("Link copiado para a área de transferência"))}catch(a){window.location.href=e}})(t.link)},title:"Abrir link externo",children:e(Me,{className:"h-4 w-4"})}),e("div",{onClick:e=>e.stopPropagation(),children:e(hn,{onEdit:()=>s(t),onDelete:n?()=>n(t):void 0,canDelete:!!n})})]})]})}),e(Za,{className:"pt-0",children:e("div",{className:"space-y-2",children:r.cardFields?.map(a=>{const r=t[a.key];return r?e(Pi.Field,{label:a.label,value:a.render?a.render(r,t):String(r)},String(a.key)):null})})})]},t.id))})}function rl({data:t,columns:r,sortField:s,sortDirection:n,onSort:o,onRowClick:l,renderActions:d,isLoading:c=!1,emptyMessage:m="Nenhum item encontrado",className:u,enableSelection:h=!1,selectedIds:p=[],onSelectItem:f,onSelectAll:g,isAllSelected:b=!1}){const v=i(()=>{const e=r.reduce((e,a)=>a.width?e:e+(a.weight??1),0);return r.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}%`})},[r]);return c?e("div",{className:"flex-1 overflow-auto",children:e("div",{className:"p-4 space-y-3",children:[...Array(5)].map((a,t)=>e(pr,{className:"h-12 w-full"},t))})}):0===t.length?e("div",{className:"flex-1 flex items-center justify-center",children:e("div",{className:"text-center text-muted-foreground",children:e("p",{children:m})})}):e("div",{className:"flex-1 overflow-auto",children:a(Ds,{className:u,children:[e(Ls,{className:"sticky top-0 bg-background z-10",children:a(Ms,{children:[h&&e($s,{className:"w-[40px]",children:e(Pt,{checked:b,onCheckedChange:g,"aria-label":"Selecionar todos"})}),r.map((t,r)=>{return e($s,{className:t.className,style:{width:v[r]},children:t.sortable&&o?a("button",{onClick:()=>o(String(t.key)),className:"flex items-center hover:text-foreground transition-colors font-medium",children:[t.header,(i=String(t.key),s!==i?e($,{size:14,className:"ml-1 opacity-50"}):e("asc"===n?U:V,{size:14,className:"ml-1"}))]}):e("span",{className:"font-medium",children:t.header})},String(t.key));var i}),d&&e($s,{className:"w-[80px] text-right",children:"Ações"})]})}),e(js,{children:t.map(t=>a(Ms,{onClick:()=>l?.(t),className:l?"cursor-pointer":"",children:[h&&e(Us,{children:e(Pt,{checked:p.includes(t.id),onCheckedChange:()=>f?.(t.id),onClick:e=>e.stopPropagation(),"aria-label":`Selecionar item ${t.id}`})}),r.map(a=>e(Us,{className:a.className,children:a.render?a.render(t):String(t[a.key]??"-")},String(a.key))),d&&e(Us,{className:"text-right",onClick:e=>e.stopPropagation(),children:d(t)})]},t.id))})]})})}function sl({onEdit:t,onDelete:r,onToggleStatus:s,isActive:n=!0,canEdit:i=!0,canDelete:o=!0,customActions:l=[],renderAs:d="dropdown",variant:c="default"}){const m=[];return t&&i&&m.push({icon:D,label:"Editar",onClick:t,variant:"default"}),s&&m.push({icon:n?L:j,label:n?"Inativar":"Ativar",onClick:s,variant:"default"}),l.forEach(e=>{!1!==e.show&&m.push({icon:e.icon,label:e.label,onClick:e.onClick,variant:e.variant||"default"})}),r&&o&&m.push({icon:O,label:"Remover",onClick:r,variant:"destructive"}),0===m.length?null:"dropdown"===d?a(Js,{children:[e(Xs,{asChild:!0,children:e(Ba,{variant:"ghost",size:"compact"===c?"sm":"default",className:"compact"===c?"h-7 px-2":"",children:e(k,{size:"compact"===c?14:16})})}),e(sn,{align:"end",className:"bg-background border border-border shadow-lg min-w-[120px]",children:m.map((t,r)=>a(nn,{onClick:t.onClick,className:"destructive"===t.variant?"text-destructive":"",children:[t.icon&&e(t.icon,{className:"mr-2 h-4 w-4"}),t.label]},r))})]}):e("div",{className:"flex items-center gap-1",children:m.map((t,r)=>a(Ba,{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(t.icon,{size:"compact"===c?14:16}),"compact"!==c&&e("span",{className:"ml-1",children:t.label})]},r))})}function nl({searchValue:t="",onSearchChange:r,customFilters:s=[],onClearFilters:n,showClearButton:i=!0,layout:o="horizontal"}){const l=t||s.length>0;return a("div",{className:`flex ${"vertical"===o?"flex-col":"flex-row items-center"} gap-2 w-full`,children:[r&&a("div",{className:"relative flex-1 min-w-[200px]",children:[e(P,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e(Ha,{type:"text",placeholder:"Buscar...",value:t,onChange:e=>r(e.target.value),className:"pl-9 h-9"})]}),s.map((a,t)=>e("div",{className:"vertical"===o?"w-full":"",children:a},t)),i&&l&&n&&a(Ba,{variant:"ghost",size:"sm",onClick:n,className:"h-9 px-3 whitespace-nowrap",children:[e(C,{size:14,className:"mr-1"}),"Limpar"]})]})}function il({data:a,renderCard:t,isLoading:r=!1,emptyMessage:s="Nenhum item encontrado",columns:n,gap:i="md",className:o}){return r?e(Di,{cols:n?String(n):"auto-fit",gap:i,className:o,children:[...Array(6)].map((a,t)=>e(pr,{className:"h-48 w-full"},t))}):0===a.length?e("div",{className:"flex items-center justify-center p-8",children:e("div",{className:"text-center text-muted-foreground",children:e("p",{children:s})})}):e(Di,{cols:n?String(n):"auto-fit",gap:i,className:o,children:a.map(t)})}function ol(e){const a=ma();return{onNew:()=>{const t=e.newPath||`${e.basePath}/new`;a(t)},onEdit:t=>{const r=e.editPath?e.editPath.replace(":id",t.id):`${e.basePath}/${t.id}/edit`;a(r)}}}function ll(e,a){const t=ol({basePath:e,newPath:a.newPath,editPath:a.editPath});return{useCustomRouting:!0,onNew:t.onNew,onEdit:t.onEdit}}al.displayName=Ta.Item.displayName;const dl=s.memo(({variant:r="card",className:n="",selectedUnit:i,onUnitChange:o})=>{const{user:l,companies:d,alias:c,isAuthenticated:m,logout:u,switchUnit:h}=ys(),p=d?.[0]||null,f=c?d?.find(e=>e.alias===c):p,g=d||[],b=i||f||p||p,v=s.useCallback(e=>{o?o(e):h(e)},[o,h]),N=s.useMemo(()=>{if(!g?.length)return[];const e=new Map;g.forEach(a=>{e.set(a.alias,a)});const a=Array.from(e.values()),t=a.find(e=>e.alias===b?.alias),r=a.filter(e=>e.alias!==b?.alias);return r.sort((e,a)=>(e.name||"").localeCompare(a.name||"","pt-BR",{sensitivity:"base"})),t?[t,...r]:r},[g,b?.alias]);if(!m||!l)return null;const y=()=>a(t,{children:[a("div",{className:"flex items-center space-x-3",children:[e("div",{className:"flex-shrink-0",children:e("div",{className:"w-10 h-10 bg-primary rounded-full flex items-center justify-center",children:e(Te,{className:"h-5 w-5 text-primary-foreground"})})}),a("div",{className:"flex-1 min-w-0",children:[e("p",{className:"text-sm font-medium truncate",children:l.name}),a("p",{className:"text-xs text-muted-foreground",children:["Unidade: ",b?.name||"N/A"]})]})]}),b&&e("div",{className:"mt-3",children:a("div",{className:"flex items-center space-x-2",children:[e($e,{className:"h-4 w-4 text-muted-foreground"}),e("span",{className:"text-sm font-medium",children:b.name})]})}),N.length>1&&a("div",{className:"mt-2",children:[a("p",{className:"text-xs text-muted-foreground mb-1",children:["Unidades disponíveis: ",N.length]}),a("div",{className:"flex flex-wrap gap-1",children:[N.slice(0,3).map(a=>e(Ft,{variant:a.alias===b?.alias?"default":"secondary",className:"text-xs cursor-pointer",onClick:()=>v(a),children:a.name},a.alias)),N.length>3&&a(Ft,{variant:"outline",className:"text-xs",children:["+",N.length-3]})]})]})]});return"dropdown"===r?a(Js,{children:[e(Xs,{asChild:!0,children:e(Ba,{variant:"ghost",className:`h-auto p-2 ${n}`,children:a("div",{className:"flex items-center space-x-2",children:[a("div",{className:"hidden md:block text-left",children:[e("p",{className:"text-sm font-medium",children:l.name}),e("p",{className:"text-xs text-muted-foreground",children:b?.name||"N/A"})]}),e("div",{className:"w-8 h-8 bg-primary rounded-full flex items-center justify-center",children:e(Te,{className:"h-4 w-4 text-primary-foreground"})}),e(S,{className:"h-4 w-4"})]})})}),a(sn,{className:"w-56 bg-background border border-border shadow-lg z-50",align:"end",children:[a(en,{children:[a(tn,{children:[e(Le,{className:"mr-2 h-4 w-4"}),"Alterar Unidade"]}),e(rn,{children:N.map(t=>a(nn,{onClick:()=>v(t),className:t.alias===b?.alias?"bg-muted":"",children:[e($e,{className:"mr-2 h-4 w-4"}),t.name,t.alias===b?.alias&&e(Ft,{variant:"outline",className:"ml-2 text-xs",children:"Atual"})]},t.alias))})]}),e(cn,{}),a(nn,{onClick:u,children:[e(Ue,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]}):a(Ga,{className:n,children:[e(Ja,{children:e(Xa,{className:"text-lg",children:"Informações do Usuário"})}),a(Za,{className:"space-y-4",children:[e(y,{}),e(Xi,{}),a(Ba,{variant:"outline",onClick:u,size:"sm",className:"w-full",children:[e(Ue,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]})}),cl=o({});function ml({children:a,config:t}){const r=i(()=>({navigation:t?.navigation,appName:t?.appName}),[t?.navigation,t?.appName]);return e(cl.Provider,{value:r,children:a})}function ul(){return l(cl)}function hl(){const e=ca(),{navigation:a}=ul();if(!a)return"Página";const t=a.find(a=>a.path===e.pathname);if(t)return t.label;const r=a.find(a=>e.pathname.startsWith(a.path+"/"));return r?.label||"Página"}function pl(e,a){const[t,r]=n(e),s=u(),i=d(()=>{s.current&&(clearTimeout(s.current),s.current=void 0)},[]);return c(()=>(i(),s.current=setTimeout(()=>{r(e)},a),i),[e,a,i]),[t,i]}const fl=m(function({actions:t}){const r=ca(),s=hl(),{navigation:i,appName:o}=ul(),{metadata:l,headerActions:d}=Zn(),{companies:m,alias:u,isSearchVisible:h,clearSearch:p,refreshData:f,switchUnit:g}=ys(),b=u?m?.find(e=>e.alias===u)||m?.[0]||null:m?.[0]||null,[v,N]=da(),[y,x]=n(()=>v.get("search")||""),[w,k]=pl(y,Jr.debounceDelay);c(()=>{if(!h)return;const e=new URLSearchParams(v);w?(e.set("search",w),e.set("page","1")):e.delete("search"),N(e)},[w,N,h]);const S=i?.find(e=>e.path===r.pathname)||i?.find(e=>r.pathname.startsWith(e.path+"/")),E=l.title||s,I=l.subtitle||S?.complementaryText||"Detalhes do item";return e("header",{className:"bg-white border-b border-gray-200 px-2 md:px-4 py-2",children:a("div",{className:"flex items-center gap-4",children:[a("div",{className:"flex-shrink-0",children:[a("div",{className:"flex items-center gap-2 mb-1",children:[e("h1",{className:"text-lg font-semibold text-foreground truncate",children:E}),e(Ft,{variant:"default",className:"bg-primary hover:bg-primary/90 text-primary-foreground text-xs px-2 py-1",children:o||"Módulo"})]}),e("p",{className:"text-sm text-muted-foreground truncate",children:I})]}),h&&a("div",{className:"flex items-center gap-2 flex-1 max-w-2xl",children:[a("div",{className:"relative flex-1",children:[e(P,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e(Ha,{placeholder:"/wiki"===r.pathname?"Buscar artigos...":"Buscar...",value:y,onChange:e=>(e=>{x(e)})(e.target.value),className:"w-full pl-10 pr-8"}),y&&e(Ba,{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(),x("");const e=new URLSearchParams(v);e.delete("search"),e.delete("page"),N(e)},title:"Limpar busca",children:e(C,{size:14})})]}),e(Ba,{variant:"outline",size:"sm",onClick:f,className:"flex-shrink-0 h-10 w-10 p-0",title:"Atualizar dados",children:e(Le,{size:14})})]}),a("div",{className:"flex-shrink-0 ml-auto flex items-center gap-3",children:[(d||t)&&e("div",{className:"flex items-center gap-2",children:d||t}),import.meta.env.VITE_WIKI_URL&&e(Ba,{variant:"secondary",size:"sm",className:"h-8 px-3",onClick:e=>La(import.meta.env.VITE_WIKI_URL,e),title:"Abrir Wiki",children:"Wiki"}),e("div",{className:"text-sm",children:e(dl,{variant:"dropdown",selectedUnit:b,onUnitChange:g})})]})]})})}),gl=({key:e,enabled:a,checkFn:t,staleTime:r=3e5,gcTime:s=6e5})=>ia({queryKey:["permission",e],queryFn:t,enabled:a,staleTime:r,gcTime:s,retry:0,refetchOnWindowFocus:!1}),bl=(e={})=>{const{enabled:a=!0}=e,{alias:t}=ys();return ia({queryKey:["active-modules",t],queryFn:async()=>{if(!t)return[];const e=jr(),{data:a,error:r}=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(r){if(!Vr.handleError(r))throw r;return[]}return a||[]},enabled:a&&!!t})},vl="forlogic-sidebar-pinned",Nl=()=>{try{const e=localStorage.getItem(vl);return!!e&&JSON.parse(e)}catch{return!1}},yl=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]},xl=`https://${import.meta.env.VITE_SUPABASE_PROJECT_ID}.supabase.co/storage/v1/object/public/library-assets`,wl={logo:`${xl}/${as.isQualiex?"logo-qualiex.svg":"logo.svg"}`,smallLogo:`${xl}/${as.isQualiex?"small-forlogic.svg":"small.svg"}`},kl=wl.logo,Cl=wl.smallLogo;function Sl({appName:r,isPinned:s,onPinToggle:n,open:i,dropdownOpen:o,onDropdownChange:l}){const{data:d,isLoading:c,error:m}=bl({enabled:o}),u=e=>{((e,a)=>{const t=e?.find(e=>e.url===a);t?.url&&window.open(t.url,"_blank")})(d,e)};return a(ko,{className:"p-0 gap-0",children:[e("div",{className:"flex items-center justify-between h-[34px]",children:i?a(t,{children:[e("div",{className:"flex items-center pl-[12px]",children:e("img",{src:wl.logo,alt:"Logo",className:"h-6 max-w-full object-contain"})}),e("button",{onClick:n,className:"h-8 w-8 flex items-center justify-center rounded-md transition-colors duration-200 "+(s?"bg-primary/20 text-primary":"hover:bg-muted text-muted-foreground"),children:e(Oe,{className:"h-4 w-4"})})]}):e("div",{className:"flex items-center justify-center w-full h-[34px]",children:e("img",{src:wl.smallLogo,alt:"Logo",className:"h-[34px] w-[34px] object-contain"})})}),e("div",{className:"mt-2 pt-0",children:a(Js,{onOpenChange:l,children:[e(Xs,{asChild:!0,children:i?a("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:[a("div",{className:"flex items-center gap-2 min-w-0",children:[e("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("span",{className:"truncate group-data-[collapsible=icon]:hidden",children:r})]}),e(S,{className:"h-6 w-6 flex-shrink-0 text-muted-foreground"})]}):e("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(S,{className:"h-6 w-6 text-muted-foreground"})})}),e(sn,{className:i?"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:i?"start":"center",children:c?a("div",{className:"flex items-center space-x-2 py-3 px-3 text-muted-foreground",children:[e(_,{className:"h-4 w-4 animate-spin"}),e("span",{className:"text-sm",children:"Carregando módulos..."})]}):m?a("div",{className:"flex items-center space-x-2 py-3 px-3 text-destructive",children:[e(A,{className:"h-4 w-4"}),e("span",{className:"text-sm",children:"Erro ao carregar módulos"})]}):d&&0!==d.length?e("div",{className:"space-y-2",children:d.map((t,r)=>e("div",{onClick:()=>u(t.url||""),className:`\n bg-muted/50 hover:bg-muted rounded-md p-3 cursor-pointer \n border-l-4 ${yl(r)} transition-colors duration-200\n `,children:a("div",{className:"flex items-center justify-between",children:[e("span",{className:"font-medium text-foreground text-sm",children:t.name}),t.url&&e(Me,{className:"h-4 w-4 text-muted-foreground"})]})},t.id))}):e("div",{className:"py-3 px-3 text-muted-foreground text-sm",children:"Nenhum módulo disponível"})})]})})]})}function El({direction:e="right",minWidth:a=224,maxWidth:t=384,defaultWidth:r=240,storageKey:s="sidebar-width",onResize:i,isOpen:o=!0}={}){const[l,m]=n(()=>{if("undefined"==typeof window)return r;const e=localStorage.getItem(s);return e?parseInt(e):r}),[h,p]=n(!1),f=u(null);c(()=>{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 g=d(e=>{e.preventDefault(),p(!0)},[]);return c(()=>{if(!h)return;const r=r=>{let s;s="left"===e?window.innerWidth-r.clientX:r.clientX,s=Math.max(a,Math.min(t,s)),m(s),i?.(s)},n=()=>{p(!1),localStorage.setItem(s,l.toString())};return document.addEventListener("mousemove",r),document.addEventListener("mouseup",n),()=>{document.removeEventListener("mousemove",r),document.removeEventListener("mouseup",n)}},[h,e,a,t,l,s,i]),c(()=>{h?(document.body.style.cursor="ew-resize",document.body.style.userSelect="none"):(document.body.style.cursor="",document.body.style.userSelect="")},[h,e]),{width:l,isDragging:h,dragRef:f,handleMouseDown:g}}const Il=s.forwardRef(({className:a,onMouseDown:t,isDragging:r,...s},n)=>e("div",{ref:n,onMouseDown:t,className:ja("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-['']",r&&"bg-primary/40",a),...s}));function _l({config:t,customContent:r,resizable:s=!1,minWidth:i=224,maxWidth:o=384}={}){const{open:l,setOpen:d}=go(),m=ca(),{alias:h,user:p}=ys(),[f,g]=n(!1),[b,v]=n(Nl),[N,y]=n(!1),x=u(!1),w=s?El({minWidth:i,maxWidth:o,storageKey:"app-sidebar-width",isOpen:l}):null;c(()=>{d(!!b||!(!N&&!f))},[b,N,f,d]);return a(vo,{collapsible:"icon",onMouseEnter:()=>{b||x.current||y(!0)},onMouseLeave:()=>{b||y(!1)},className:"app-sidebar bg-white border-r border-gray-200 py-6 px-3",style:w&&l?{width:`${w.width}px`,transition:"none"}:{transition:"all 300ms ease-in-out"},children:[e(Sl,{appName:t?.appName||"Título do módulo",isPinned:b,onPinToggle:()=>{const e=!b;v(e),(e=>{try{localStorage.setItem(vl,JSON.stringify(e))}catch{}})(e),e||(x.current=!0,y(!1),d(!1),setTimeout(()=>{x.current=!1},300))},open:l,dropdownOpen:f,onDropdownChange:g}),e(Eo,{children:r||e(Io,{className:"p-0 mt-6",children:e(To,{children:e(Po,{className:"space-y-2",children:e(co,{children:t?.navigation?.map((t,r)=>{const s=({item:t,index:r})=>{const n=`${t.path}-${r}-${h??"noalias"}-${p?.id??"nouser"}`,{data:i=!0,isLoading:o}=gl({key:n,enabled:Boolean(t.permissionCheck&&h&&p?.id),checkFn:t.permissionCheck||(()=>Promise.resolve(!0))}),l=t.permissionCheck&&!i,d=o?_:l?ee:t.icon;l||t.complementaryText;return t.children&&t.children.length>0?e(_i,{defaultOpen:!0,className:"group/collapsible",children:a(Ro,{children:[e(Ai,{asChild:!0,children:e(Fo,{size:"lg",className:"h-10",children:a("div",{className:"flex w-full items-center gap-3",children:[e("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e(d,{className:"h-5 w-4"})}),e("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:t.label}),e(z,{className:"ml-auto h-4 w-4 transition-transform group-data-[state=open]/collapsible:rotate-90 group-data-[collapsible=icon]:hidden"})]})})}),e(Ti,{children:e(Oo,{children:t.children.map((a,t)=>e(s,{item:a,index:t},a.path))})})]})},t.path):e(Ro,{children:l||o?a(mo,{children:[e(uo,{asChild:!0,children:e(Fo,{size:"lg",className:"h-10 opacity-50 cursor-not-allowed",onClick:e=>e.preventDefault(),children:a("div",{className:"flex w-full items-center gap-3",children:[e("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e(d,{className:"h-4 w-4 "+(o?"animate-spin":"")})}),e("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:t.label})]})})}),e(ho,{children:e("p",{children:o?"Verificando acesso...":"Acesso restrito"})})]}):e(Fo,{asChild:!0,isActive:(c=t.path,m.pathname===c||m.pathname.startsWith(c+"/")),size:"lg",className:"h-10",children:a(ua,{to:t.path,className:"flex w-full items-center gap-3",children:[e("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e(d,{className:"h-5 w-4"})}),e("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:t.label})]})})},t.path);var c};return e(s,{item:t,index:r},t.path)})})})})})}),s&&w&&l&&e(Il,{ref:w.dragRef,onMouseDown:w.handleMouseDown,isDragging:w.isDragging})]})}Il.displayName="ResizableRail";const Al=m(function({children:t,sidebar:r,sidebarConfig:s,showHeader:n=!0}){const o=i(()=>r||e(_l,{config:s}),[r,s]),l=i(()=>({"--sidebar-width":"240px","--sidebar-width-icon":"58px"}),[]);return e(ml,{config:s,children:e(Yn,{children:e(bo,{defaultOpen:!1,style:l,children:a("div",{className:"sidebar-container min-h-screen flex w-full",children:[o,a("main",{className:"flex-1 flex flex-col h-screen overflow-hidden",children:[n&&e("div",{className:"flex-shrink-0 sticky top-0 z-10 bg-background",children:e(fl,{})}),e("div",{className:"flex-1 overflow-y-auto bg-gray-50",children:t})]})]})})})})});var Tl=Object.defineProperty,Pl=(e,a,t)=>((e,a,t)=>a in e?Tl(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);class Rl extends h{constructor(e){super(e),Pl(this,"copyErrorDetails",()=>{const e=Tr.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),Wt({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(import.meta.env.DEV)throw e;return{hasError:!0,error:e}}componentDidCatch(e,a){if(import.meta.env.DEV)throw e;Tr.handleError(e,!1),this.setState({errorInfo:a})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const t=Tr.getErrors().slice(0,2);return e("div",{className:"flex items-center justify-center min-h-screen p-4",children:a(Ga,{className:"w-full max-w-2xl",children:[a(Ja,{className:"text-center",children:[e("div",{className:"flex justify-center mb-4",children:e(T,{className:"h-12 w-12 text-destructive"})}),e(Xa,{children:"Algo deu errado"})]}),a(Za,{className:"space-y-4",children:[e("p",{className:"text-center text-muted-foreground",children:"Ocorreu um erro inesperado. Tente recarregar a página."}),a(_i,{open:this.state.showDetails,onOpenChange:e=>this.setState({showDetails:e}),children:[e(Ai,{asChild:!0,children:a(Ba,{variant:"outline",className:"w-full flex items-center justify-center gap-2",children:[e(S,{className:"h-4 w-4 transition-transform "+(this.state.showDetails?"rotate-180":"")}),"Ver Detalhes Técnicos"]})}),a(Ti,{className:"mt-4 space-y-4",children:[a("div",{className:"rounded-lg border bg-card p-4 space-y-3",children:[a("div",{children:[e("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📋 Erro Atual"}),a("div",{className:"text-sm space-y-2",children:[e("p",{className:"font-medium text-destructive",children:this.state.error?.message||"Erro desconhecido"}),this.state.error?.stack&&e(yn,{className:"h-32 w-full rounded border bg-muted p-2",children:e("pre",{className:"text-xs text-muted-foreground whitespace-pre-wrap",children:this.state.error.stack})})]})]}),t.length>0&&a("div",{className:"pt-3 border-t",children:[e("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📜 Últimos Erros"}),e("div",{className:"space-y-2",children:t.map((t,r)=>e("div",{className:"text-sm p-2 rounded bg-muted/50",children:a("div",{className:"flex items-start gap-2",children:[a("span",{className:"font-medium text-muted-foreground shrink-0",children:[r+1,"."]}),a("div",{className:"flex-1 min-w-0",children:[e("div",{className:"flex items-center gap-2 flex-wrap",children:a("span",{className:"text-xs text-muted-foreground",children:["[",new Date(t.timestamp).toLocaleTimeString(),"]"]})}),e("p",{className:"text-sm break-words",children:t.message})]})]})},t.id))})]})]}),a(Ba,{variant:"outline",onClick:this.copyErrorDetails,className:"w-full flex items-center justify-center gap-2",children:[e(ie,{className:"h-4 w-4"}),"Copiar Detalhes"]})]})]}),e(Ba,{onClick:()=>window.location.reload(),className:"w-full",children:"Recarregar Página"})]})]})})}return this.props.children}}class zl{static async sendEmail(e){const a=jr(),{data:t,error:r}=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(r)throw r;return t}}const Fl=zl;function Dl(){const[e,a]=n([]),[t,r]=n(!1),[s,i]=n(null),[o,l]=n(null);c(()=>{m()},[]);const m=async()=>{try{const e=jr(),{data:t,error:r}=await e.functions.invoke("openai-chat",{body:{action:"createThread"}});if(r)throw r;i(t.threadId),a([{id:"initial",role:"assistant",content:"Olá! Como posso ajudá-lo hoje?",timestamp:new Date}])}catch(e){l("Erro ao inicializar conversa"),x.error("Erro ao inicializar conversa")}};return{messages:e,isLoading:t,error:o,sendMessage:d(async e=>{if(!s||!e.trim())return;const t={id:`user-${Date.now()}`,role:"user",content:e,timestamp:new Date};a(e=>[...e,t]),r(!0),l(null);try{const t=jr(),{data:r,error:n}=await t.functions.invoke("openai-chat",{body:{action:"sendMessage",threadId:s,message:e}});if(n)throw n;const{runId:i}=r,o=await(async e=>{if(!s)return!1;for(let t=0;t<60;t++)try{const a=jr(),{data:t,error:r}=await a.functions.invoke("openai-chat",{body:{action:"checkRunStatus",threadId:s,runId:e}});if(r)throw r;const{status:n}=t;if("completed"===n)return!0;if("failed"===n||"cancelled"===n)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(s)try{const e=jr(),{data:t,error:r}=await e.functions.invoke("openai-chat",{body:{action:"getMessages",threadId:s}});if(r)throw r;const n=t.messages.map(e=>({id:e.id,role:e.role,content:e.content,timestamp:new Date(1e3*e.created_at)}));a(n)}catch(e){throw e}})()}catch(n){const e=n instanceof Error?n.message:"Erro ao enviar mensagem";l(e),x.error(e),a(e=>e.filter(e=>e.id!==t.id))}finally{r(!1)}},[s]),threadId:s}}function Ll({content:a,className:t}){return e("div",{className:ja("prose prose-sm max-w-none",t),children:e(Pa,{remarkPlugins:[Ra],components:{h1:({children:a})=>e("h1",{className:"text-lg font-bold mt-4 mb-2 text-foreground",children:a}),h2:({children:a})=>e("h2",{className:"text-base font-bold mt-3 mb-2 text-foreground",children:a}),h3:({children:a})=>e("h3",{className:"text-sm font-semibold mt-2 mb-1 text-foreground",children:a}),p:({children:a})=>e("p",{className:"text-sm mb-2 last:mb-0 text-foreground",children:a}),ul:({children:a})=>e("ul",{className:"list-disc list-inside mb-2 space-y-1",children:a}),ol:({children:a})=>e("ol",{className:"list-decimal list-inside mb-2 space-y-1",children:a}),li:({children:a})=>e("li",{className:"text-sm text-foreground",children:a}),code:({inline:a,children:t,...r})=>e("code",a?{className:"bg-muted px-1.5 py-0.5 rounded text-xs font-mono text-foreground",...r,children:t}:{className:"block bg-muted p-2 rounded text-xs font-mono overflow-x-auto mb-2 text-foreground",...r,children:t}),pre:({children:a})=>e("pre",{className:"bg-muted p-2 rounded overflow-x-auto mb-2",children:a}),a:({children:a,href:t})=>e("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"text-primary underline hover:text-primary/80",children:a}),blockquote:({children:a})=>e("blockquote",{className:"border-l-4 border-primary pl-3 italic my-2 text-muted-foreground",children:a}),strong:({children:a})=>e("strong",{className:"font-bold text-foreground",children:a}),em:({children:a})=>e("em",{className:"italic text-foreground",children:a})},children:a})})}function jl(){const[r,s]=n(!1),[i,o]=n(""),{messages:l,isLoading:d,error:m,sendMessage:h}=Dl(),p=u(null),f=u(null);c(()=>{if(p.current){const e=p.current.querySelector("[data-radix-scroll-area-viewport]");e&&(e.scrollTop=e.scrollHeight)}},[l]),c(()=>{r&&f.current&&f.current.focus()},[r]),c(()=>{const e=e=>{"Escape"===e.key&&r&&s(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[r]);const g=()=>{i.trim()&&!d&&(h(i),o(""))};return a(t,{children:[e(Ba,{onClick:()=>s(!r),className:"fixed bottom-6 right-6 h-14 w-14 rounded-full shadow-lg z-50",size:"icon",children:e(r?C:Ve,{className:"h-6 w-6"})}),r&&a(Ga,{className:"fixed bottom-24 right-6 w-96 h-[600px] shadow-xl z-50 flex flex-col",children:[a(Ja,{className:"flex flex-row items-center justify-between space-y-0 pb-4",children:[e(Xa,{className:"text-lg font-semibold",children:"Chat Assistant"}),e(Ba,{variant:"ghost",size:"icon",onClick:()=>s(!1),className:"h-8 w-8",children:e(C,{className:"h-4 w-4"})})]}),a(Za,{className:"flex-1 flex flex-col p-0 overflow-hidden",children:[e(yn,{ref:p,className:"flex-1 px-4",children:a("div",{className:"space-y-4 py-4",children:[l.map(a=>e("div",{className:"flex "+("user"===a.role?"justify-end":"justify-start"),children:e("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(Ll,{content:a.content}):e("p",{className:"text-sm whitespace-pre-wrap",children:a.content})})},a.id)),d&&e("div",{className:"flex justify-start",children:e("div",{className:"bg-muted rounded-lg px-4 py-2",children:a("div",{className:"flex space-x-2",children:[e("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce"}),e("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.2s]"}),e("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.4s]"})]})})}),m&&e("div",{className:"text-center text-sm text-destructive py-2",children:m})]})}),e("div",{className:"border-t p-4",children:a("div",{className:"flex space-x-2",children:[e(Ha,{ref:f,value:i,onChange:e=>o(e.target.value),onKeyPress:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),g())},placeholder:"Digite sua mensagem...",disabled:d,className:"flex-1"}),e(Ba,{onClick:g,disabled:d||!i.trim(),size:"icon",children:e(qe,{className:"h-4 w-4"})})]})})]})]})]})}function Ol({open:t,onOpenChange:r,placeId:s,placeName:o,onMakeManager:l,onMakeMembers:d,currentManagerId:c,currentMemberIds:m=[]}){const[u,h]=n([]),[p,f]=n(!1),[g,b]=n(""),{data:v=[],isLoading:N}=Sn({enabled:t}),y=i(()=>{let e=[...v];if(e.sort((e,a)=>{const t=e.userName?.toLowerCase()||"",r=a.userName?.toLowerCase()||"";return t.localeCompare(r)}),g){const a=g.toLowerCase();e=e.filter(e=>e.userName?.toLowerCase().includes(a)||e.userEmail?.toLowerCase().includes(a))}return e},[v,g]),x=e=>{h(a=>a.includes(e)?a.filter(a=>a!==e):[...a,e])},w=1===u.length,k=u.length>0;return e(at,{open:t,onOpenChange:r,children:a(it,{className:"max-w-2xl",children:[e(ot,{children:a(dt,{className:"flex items-center gap-2",children:[e(Be,{className:"h-5 w-5"}),"Gerenciar Acessos - ",o]})}),a("div",{className:"relative",children:[e(P,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e(Ha,{placeholder:"Buscar por nome ou email...",value:g,onChange:e=>b(e.target.value),className:"pl-9"})]}),e(yn,{className:"h-[400px] pr-4",children:N?e("div",{className:"space-y-2",children:[...Array(5)].map((a,t)=>e(pr,{className:"h-16 w-full"},t))}):0===y.length?a("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e(Be,{className:"h-12 w-12 text-muted-foreground/50 mb-3"}),e("p",{className:"text-sm text-muted-foreground",children:g?"Nenhum usuário encontrado":"Nenhum usuário disponível"})]}):e("div",{className:"space-y-2",children:y.map(t=>{const r=t.userId===c,s=m.includes(t.userId||""),n=u.includes(t.userId||"");return a("div",{className:ja("flex items-center gap-3 p-3 rounded-lg border transition-colors",n&&"bg-accent border-primary","hover:bg-accent/50 cursor-pointer"),onClick:()=>x(t.userId||""),children:[e(Pt,{checked:n,onCheckedChange:()=>x(t.userId||""),onClick:e=>e.stopPropagation()}),a("div",{className:"flex-1",children:[a("div",{className:"flex items-center gap-2",children:[e("p",{className:"font-medium",children:t.userName}),r&&e(We,{className:"h-4 w-4 text-yellow-500"})]}),e("p",{className:"text-sm text-muted-foreground",children:t.userEmail})]}),(r||s)&&e("div",{className:"text-xs text-muted-foreground",children:r?"Gestor":"Membro"})]},t.userId)})})}),a(lt,{className:"flex gap-2 sm:gap-2",children:[e("div",{className:"flex-1 text-sm text-muted-foreground",children:u.length>0&&a("span",{children:[u.length," selecionado(s)"]})}),w&&l&&a(Ba,{onClick:async()=>{if(l&&1===u.length){f(!0);try{await l(u[0],s),h([])}finally{f(!1)}}},disabled:p,variant:"outline",children:[e(We,{className:"h-4 w-4 mr-2"}),"Tornar Gestor"]}),k&&d&&a(Ba,{onClick:async()=>{if(d&&0!==u.length){f(!0);try{await d(u,s),h([])}finally{f(!1)}}},disabled:p,children:[e(He,{className:"h-4 w-4 mr-2"}),"Tornar ",u.length>1?"Membros":"Membro"]})]})]})})}function Ml({place:t,level:r=0,manageAccessConfig:s}){const[i,o]=n(!1),[l,d]=n(!1),c=t.subPlaces&&t.subPlaces.length>0,m=t.isActive??!0,u=t.usersCount??0;return a("div",{children:[a(_i,{open:i,onOpenChange:o,children:[a("div",{className:"flex items-center gap-2 py-3 px-4 hover:bg-accent/50 transition-colors",style:{paddingLeft:2*r+1+"rem"},children:[c?a(Ai,{className:"flex items-center gap-2 flex-1",children:[e(z,{className:ja("h-4 w-4 transition-transform shrink-0",i&&"rotate-90")}),e($e,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e("span",{className:"font-medium",children:t.name}),a("span",{className:"text-sm text-muted-foreground",children:["(",t.subPlaces.length,")"]})]}):a("div",{className:"flex items-center gap-2 flex-1",children:[e("div",{className:"w-4 shrink-0"}),e($e,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e("span",{className:"font-medium",children:t.name})]}),a("div",{className:"flex items-center gap-3 ml-auto",children:[a("div",{className:"flex items-center gap-1.5",children:[e(Be,{className:"h-3.5 w-3.5 text-muted-foreground"}),e("span",{className:"text-sm text-muted-foreground",children:u})]}),e(Ft,{variant:m?"default":"secondary",className:"text-xs",children:m?"Ativo":"Inativo"}),s&&e(sl,{customActions:[{label:"Gerenciar Acessos",icon:Ae,onClick:()=>d(!0),variant:"default"}],renderAs:"dropdown",variant:"compact"})]})]}),c&&e(Ti,{children:t.subPlaces.map(a=>e(Ml,{place:a,level:r+1,manageAccessConfig:s},a.id))})]}),0===r&&e(Xi,{}),s&&e(Ol,{open:l,onOpenChange:d,placeId:t.id,placeName:t.name,onMakeManager:s.onMakeManager,onMakeMembers:s.onMakeMembers,currentManagerId:s.getCurrentManagerId?.(t.id),currentMemberIds:s.getCurrentMemberIds?.(t.id)})]})}function $l({places:t,isLoading:r,manageAccessConfig:s}){return r?e("div",{className:"flex items-center justify-center py-12",children:a("div",{className:"text-center space-y-2",children:[e("div",{className:"animate-spin h-8 w-8 border-4 border-primary border-t-transparent rounded-full mx-auto"}),e("p",{className:"text-sm text-muted-foreground",children:"Carregando locais..."})]})}):t&&0!==t.length?a("div",{className:"space-y-1",children:[e("h2",{className:"text-xl font-bold mb-4",children:"Estrutura de Locais"}),t.map(a=>e(Ml,{place:a,manageAccessConfig:s},a.id))]}):a("div",{className:"flex flex-col items-center justify-center py-12 text-center space-y-3",children:[e($e,{className:"h-12 w-12 text-muted-foreground/50"}),a("div",{children:[e("h3",{className:"font-semibold text-lg",children:"Nenhum local encontrado"}),e("p",{className:"text-sm text-muted-foreground",children:"Não há locais cadastrados para esta unidade."})]})]})}var Ul=Object.defineProperty,Vl=(e,a,t)=>((e,a,t)=>a in e?Ul(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);const ql=new class{constructor(){Vl(this,"baseUrl",import.meta.env.VITE_QUALIEX_API_URL)}async makeApiCall(e,a,t){const r=Br.validateToken();if(!r.valid)throw new Error(r.message||"Token inválido");const s=Ir.getAccessToken();if(!s)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 ${s}`,"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 r=a.get(e.id);if(e.parentId){const s=a.get(e.parentId);s?(s.subPlaces=s.subPlaces||[],s.subPlaces.push(r)):t.push(r)}else t.push(r)}),t}async getPlaces(e,a){try{const t=await this.makeApiCall("/api/common/v1/places",{companyId:a},e),r=t.data||t||[];return this.buildHierarchy(r)}catch(t){if(await Br.handleApiError(t))try{const t=await this.makeApiCall("/api/common/v1/places",{companyId:a},e),r=t.data||t||[];return this.buildHierarchy(r)}catch(r){return Tr.handleError(r instanceof Error?r:"Erro ao buscar locais após renovação de token",!0),[]}return Tr.handleError(t instanceof Error?t.message:"Erro ao buscar locais",!0),[]}}};function Bl(e){const a=new Map,t=new Map,r=[];e.forEach(e=>{const r={...e,children:[],level:0};a.set(e.id,r),t.set(e.id_user,r)}),e.forEach(e=>{const s=a.get(e.id);if(e.id_leader){const a=t.get(e.id_leader);if(a)return void a.children.push(s)}r.push(s)});const s=(e,a)=>{e.level=a,e.children.forEach(e=>s(e,a+1))};r.forEach(e=>s(e,0));const n=e=>{e.sort((e,a)=>{const t=e.name||e.id_user||e.email||"",r=a.name||a.id_user||a.email||"";return t.localeCompare(r)}),e.forEach(e=>e.children.length>0&&n(e.children))};return n(r),r}function Wl(e){const a=[],t=e=>{a.push(e),e.children.forEach(t)};return e.forEach(t),a}function Hl(){const{alias:e,isAuthenticated:a}=ys(),t=Ir.getAccessToken(),{data:r=[]}=Sn({enabled:!0});return ia({queryKey:["leadership",e,r.length],queryFn:async()=>{if(!t||!e)throw new Error("Usuário não autenticado ou unidade não selecionada");const a=jr(),{data:s,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(!s||0===s.length)return[];const i={};r.forEach(e=>{i[e.userId]={name:e.userName||e.userEmail,email:e.userEmail||""}});const o=s.map(e=>({...e,name:i[e.id_user]?.name||e.id_user,email:i[e.id_user]?.email||"",subordinatesCount:s.filter(a=>a.id_leader===e.id_user).length})),l=new Set(s.map(e=>e.id_user));return new Set(s.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:s[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:s.filter(a=>a.id_leader===e).length})}),Bl(o)},enabled:!!t&&!!e&&a&&r.length>0})}function Ql(){const e="common",{alias:a}=ys(),t=na(),r=jr();return oa({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 r.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 Zl(r,a,e,t.id_user,t.id_leader);const{data:s,error:n}=await r.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 s},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",a]}),x.success("Líder adicionado com sucesso")},onError:e=>{x.error(e.message||"Erro ao adicionar líder")}})}function Kl(){const e="common",{alias:a}=ys(),t=na(),r=jr();return oa({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 Zl(r,a,e,t.id_user,t.id_leader);const{data:s,error:n}=await r.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 s},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",a]}),x.success("Líder virtual promovido com sucesso")},onError:e=>{x.error(e.message||"Erro ao criar líder")}})}function Gl(){const e="common",{alias:a}=ys(),t=na(),r=jr();return oa({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 s=t.users.map(e=>e.id_user),{data:n}=await r.schema(e).from("leaders").select("id_user").eq("alias",a).in("id_user",s).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 Zl(r,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 r.schema(e).from("leaders").insert(i).select();if(l)throw l;return o},onSuccess:e=>{t.invalidateQueries({queryKey:["leadership",a]}),x.success(`${e?.length||0} liderado(s) adicionado(s) com sucesso`)},onError:e=>{x.error(e.message||"Erro ao adicionar liderados")}})}function Jl(){const e="common",{alias:a}=ys(),t=na(),r=jr();return oa({mutationFn:async t=>{if(!a)throw new Error("Unidade não selecionada");const{data:s}=await r.schema(e).from("leaders").select("id_user").eq("id",t.id).eq("alias",a).single();if(!s)throw new Error("Líder não encontrado");if(s.id_user===t.id_leader)throw new Error("Usuário não pode ser seu próprio líder");t.id_leader&&await Zl(r,a,e,s.id_user,t.id_leader,t.id);const{data:n,error:i}=await r.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]}),x.success("Líder atualizado com sucesso")},onError:e=>{x.error(e.message||"Erro ao atualizar líder")}})}function Xl(){const{alias:e}=ys(),a=na(),t=jr();return oa({mutationFn:async a=>{if(!e)throw new Error("Unidade não selecionada");const{error:r}=await t.schema("common").from("leaders").update({is_removed:!0}).eq("id",a).eq("alias",e);if(r)throw r},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",e]}),x.success("Líder removido com sucesso")},onError:e=>{x.error(e.message||"Erro ao remover líder")}})}function Yl(){const e="common",{alias:a}=ys(),t=na(),r=jr();return oa({mutationFn:async({leaderUserId:t,selectedUsers:s})=>{if(!a)throw new Error("Unidade não selecionada");const n=s.map(e=>e.id_user),i=await Promise.all([r.schema(e).from("leaders").select("id, id_user, id_leader").eq("alias",a).eq("is_removed",!1).eq("id_leader",t),r.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 m=o||[],u=d||[],h=new Set(n),p=m.filter(e=>!h.has(e.id_user)),f=u.filter(e=>e.id_leader!==t),g=new Set(u.map(e=>e.id_user)),b=s.filter(e=>!g.has(e.id_user));for(const y of f)await Zl(r,a,e,y.id_user,t,y.id);for(const y of b){if(y.id_user===t)throw new Error("Usuário não pode ser seu próprio líder");await Zl(r,a,e,y.id_user,t)}const v=[];if(p.length){const t=p.map(e=>e.id);v.push(r.schema(e).from("leaders").update({id_leader:null}).in("id",t).eq("alias",a))}if(f.length){const s=f.map(e=>e.id);v.push(r.schema(e).from("leaders").update({id_leader:t}).in("id",s).eq("alias",a))}if(b.length){const s=b.map(e=>({alias:a,id_user:e.id_user,id_leader:t,is_active:!0,is_removed:!1}));v.push(r.schema(e).from("leaders").insert(s))}const N=(await Promise.all(v)).find(e=>e?.error);if(N?.error)throw N.error;return{unlinked:p.length,updated:f.length,created:b.length}},onSuccess:e=>{t.invalidateQueries({queryKey:["leadership",a]}),x.success(`Subordinados sincronizados (${e.created} adicionados, ${e.updated} atualizados, ${e.unlinked} removidos)`)},onError:e=>{x.error(e.message||"Erro ao sincronizar subordinados")}})}async function Zl(e,a,t,r,s,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=s;for(;c;){if(d.has(c))throw new Error("Esta associação criaria um ciclo na hierarquia");if(c===r)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 ed({leader:r,expandedIds:s,onToggleExpand:n,onEdit:i}){const o=s.has(r.id),l=r.children.length>0,d=32*r.level;return a(t,{children:[a("tr",{className:"border-b hover:bg-muted/50 transition-colors",children:[e("td",{className:"py-3 px-4",children:a("div",{className:"flex items-center gap-2",style:{paddingLeft:`${d}px`},children:[l?e("button",{onClick:()=>n(r.id),className:"p-1 hover:bg-accent rounded",children:e(o?S:z,{className:"h-4 w-4"})}):e("div",{className:"w-6"}),e(Te,{className:"h-4 w-4 text-muted-foreground"}),e("button",{onClick:()=>{i(r)},className:"font-medium hover:text-primary hover:underline text-left",children:r.name||r.id_user||r.email})]})}),e("td",{className:"py-3 px-4 text-center",children:e("span",{className:"text-sm",children:r.subordinatesCount||0})})]}),l&&o&&r.children.map(a=>e(ed,{leader:a,expandedIds:s,onToggleExpand:n,onEdit:i},a.id))]})}var ad=function(e,a){for(var t={};e.length;){var r=e[0],s=r.code,n=r.message,i=r.path.join(".");if(!t[i])if("unionErrors"in r){var o=r.unionErrors[0].errors[0];t[i]={message:o.message,type:o.code}}else t[i]={message:n,type:s};if("unionErrors"in r&&r.unionErrors.forEach(function(a){return a.errors.forEach(function(a){return e.push(a)})}),a){var l=t[i].types,d=l&&l[r.code];t[i]=Ye(i,a,t,s,d?[].concat(d,r.message):r.message)}e.shift()}return t},td=function(e,a,t){return void 0===t&&(t={}),function(r,s,n){try{return Promise.resolve(function(s,i){try{var o=Promise.resolve(e["sync"===t.mode?"parse":"parseAsync"](r,a)).then(function(e){return n.shouldUseNativeValidation&&Fa({},n),{errors:{},values:t.raw?r: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:Da(ad(e.errors,!n.shouldUseNativeValidation&&"all"===n.criteriaMode),n)};throw e}))}catch(i){return Promise.reject(i)}}};const rd=za.object({id_leader:za.string().nullable(),id_users:za.array(za.string()).min(1,"Selecione pelo menos um liderado")}),sd=za.object({id_leader:za.string().nullable(),id_users:za.array(za.string())});function nd({value:t,onChange:r,excludeUserIds:s=[],error:i}){const{data:o=[],isLoading:l}=Sn(),[d,m]=n(""),h=u(null),p=u(0),f=o.filter(e=>!s.includes(e.userId||"")).filter(e=>{const a=d.toLowerCase(),t=e.userName?.toLowerCase().includes(a);return t}).sort((e,a)=>{const r=t.includes(e.userId),s=t.includes(a.userId);if(r&&!s)return-1;if(!r&&s)return 1;const n=e.userName||e.userEmail||"",i=a.userName||a.userEmail||"";return n.localeCompare(i)});return c(()=>{h.current&&p.current>0&&(h.current.scrollTop=p.current)},[f]),a("div",l?{className:"flex items-center justify-center p-4",children:[e(_,{className:"h-6 w-6 animate-spin"}),e("span",{className:"ml-2",children:"Carregando usuários..."})]}:{className:"space-y-2",children:[e(Ha,{placeholder:"Buscar usuário...",value:d,onChange:e=>m(e.target.value)}),e("div",{ref:h,className:"border rounded-md p-4 h-[300px] overflow-y-auto",children:0===f.length?e("p",{className:"text-sm text-muted-foreground",children:"Nenhum usuário encontrado"}):e("div",{className:"space-y-2",children:f.map(s=>a("div",{className:"flex items-center space-x-2",children:[e(Pt,{id:s.userId,checked:t.includes(s.userId),onCheckedChange:()=>{return e=s.userId,h.current&&(p.current=h.current.scrollTop),void(t.includes(e)?r(t.filter(a=>a!==e)):r([...t,e]));var e}}),e(Ka,{htmlFor:s.userId,className:"flex-1 cursor-pointer",children:s.userName||s.userEmail})]},s.userId))})}),t.length>0&&a("p",{className:"text-sm text-muted-foreground",children:[t.length," usuário(s) selecionado(s)"]}),i&&e("p",{className:"text-sm text-destructive",children:i})]})}function id({leader:r,prefilledLeaderId:s,onSuccess:i}){const{alias:o}=ys(),l=!!r,d=r?.id.startsWith("virtual-"),m=Gl(),u=Kl(),h=Jl(),p=Yl(),f=Xl(),{data:g=[]}=Hl(),{data:b=[]}=Sn(),[v,N]=n(""),y=Wl(g).map(e=>e.id_user),x=l?Wl(g).filter(e=>e.id_leader===r.id_user).map(e=>e.id_user):[],w=Ze({resolver:td(l?sd:rd),defaultValues:{id_leader:s||(l?r?.id_leader:null)||null,id_users:l?x:[]}});c(()=>{if(r){const e=Wl(g).filter(e=>e.id_leader===r.id_user).map(e=>e.id_user);w.reset({id_leader:r.id_leader||null,id_users:e})}else s?w.reset({id_leader:s,id_users:[]}):w.reset({id_leader:null,id_users:[]})},[o,r?.id,r?.id_user,r?.id_leader,s,g]);const k=m.isPending||u.isPending||h.isPending||p.isPending||f.isPending,C=w.watch("id_leader"),S=w.watch("id_users"),E=l?[r.id_user,...y.filter(e=>e!==r.id_user&&!S.includes(e)&&!x.includes(e))]:[C,...y.filter(e=>!S.includes(e))].filter(Boolean);return a("form",{onSubmit:w.handleSubmit(async e=>{try{if(l)if(d){await u.mutateAsync({id_user:r.id_user,id_leader:e.id_leader});const a=b.filter(a=>e.id_users.includes(a.userId)).map(e=>({id_user:e.userId}));await p.mutateAsync({leaderUserId:r.id_user,selectedUsers:a})}else{await h.mutateAsync({id:r.id,id_leader:e.id_leader});const a=b.filter(a=>e.id_users.includes(a.userId)).map(e=>({id_user:e.userId}));await p.mutateAsync({leaderUserId:r.id_user,selectedUsers:a})}else{const a=b.filter(a=>e.id_users.includes(a.userId)).map(e=>({id_user:e.userId}));await m.mutateAsync({id_leader:e.id_leader,users:a})}i?.()}catch(a){}}),className:"space-y-4",children:[l&&a("div",{children:[e(Ka,{children:"Líder"}),e(Ha,{value:b.find(e=>e.userId===r.id_user)?.userName||r.name||r.id_user,disabled:!0,className:"bg-muted"})]}),a("div",{children:[e(Ka,{children:"Líder Superior"}),a(xt,{value:C||"none",onValueChange:e=>w.setValue("id_leader","none"===e?null:e),children:[e(Ct,{children:e(kt,{placeholder:"Nenhum (líder raiz)"})}),a(It,{children:[e("div",{className:"sticky top-0 z-10 bg-background p-2 border-b",children:e(Ha,{placeholder:"Buscar líder...",value:v,onChange:e=>N(e.target.value),onKeyDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:"h-8"})}),a(yn,{className:"h-[200px]",children:[e(At,{value:"none",children:"Nenhum (líder raiz)"}),b.filter(e=>{const a=l?e.userId!==r.id_user:!S.includes(e.userId),t=!v||e.userName?.toLowerCase().includes(v.toLowerCase());return a&&t}).sort((e,a)=>{const t=e.userName||e.userEmail||"",r=a.userName||a.userEmail||"";return t.localeCompare(r)}).map(a=>e(At,{value:a.userId,children:a.userName},a.userId))]})]})]},`superior-select-${o}`),w.formState.errors.id_leader&&e("p",{className:"text-sm text-destructive mt-1",children:w.formState.errors.id_leader.message})]}),a("div",{children:[e(Ka,{children:"Liderados *"}),e(nd,{value:S,onChange:e=>w.setValue("id_users",e),excludeUserIds:E,error:w.formState.errors.id_users?.message},`users-multiselect-${o}`)]}),a("div",{className:"flex items-center justify-between gap-2",children:[e(Ba,{type:"submit",disabled:k||!l&&0===S.length,children:k&&!f.isPending?a(t,{children:[e(_,{className:"mr-2 h-4 w-4 animate-spin"}),l?"Atualizando...":"Salvando..."]}):l?S.length>0?`Atualizar (${S.length})`:"Atualizar":`Adicionar (${S.length})`}),l&&!C&&0===S.length&&e(Ba,{type:"button",variant:"destructive",disabled:k,onClick:async()=>{if(r&&window.confirm("Tem certeza que deseja remover esta liderança?"))try{await f.mutateAsync(r.id),i?.()}catch(e){}},className:"ml-auto",children:f.isPending?a(t,{children:[e(_,{className:"mr-2 h-4 w-4 animate-spin"}),"Removendo..."]}):a(t,{children:[e(O,{className:"mr-2 h-4 w-4"}),"Remover"]})})]})]})}function od({open:t,onOpenChange:r,leader:s,prefilledLeaderId:n,title:i}){return e(at,{open:t,onOpenChange:r,children:a(it,{className:"sm:max-w-[500px]",children:[e(ot,{children:e(dt,{children:i})}),e(id,{leader:s,prefilledLeaderId:n,onSuccess:()=>r(!1)})]})})}const ld="leadership-expanded-nodes",dd=(e,a)=>{try{localStorage.setItem(`${ld}-${e}`,JSON.stringify(Array.from(a)))}catch(t){}};function cd(){const{alias:t}=ys(),{data:r,isLoading:s,error:i,refetch:o}=Hl(),{data:l=[]}=Sn(),[d,m]=n(()=>t?(e=>{try{const a=localStorage.getItem(`${ld}-${e}`);if(a)return new Set(JSON.parse(a))}catch(i){}return new Set})(t):new Set),[u,h]=n(!1),[p,f]=n(),[g,b]=n(null),v=l.length-(r?new Set(Wl(r).map(e=>e.id_user)).size:0);c(()=>{if(r&&r.length>0&&t){if(!localStorage.getItem(`${ld}-${t}`)){const e=r.map(e=>e.id),a=new Set(e);m(a),dd(t,a)}}},[r,t]);const N=e=>{m(a=>{const r=new Set(a);return r.has(e)?r.delete(e):r.add(e),t&&dd(t,r),r})},y=e=>{f(e),b(null),h(!0)};return s?e("div",{className:"flex items-center justify-center h-full",children:a("div",{className:"text-center",children:[e(Le,{className:"h-8 w-8 animate-spin mx-auto mb-4 text-muted-foreground"}),e("p",{className:"text-muted-foreground",children:"Carregando hierarquia de liderança..."})]})}):i?e("div",{className:"flex items-center justify-center h-full",children:a("div",{className:"text-center",children:[e("p",{className:"text-destructive mb-4",children:"Erro ao carregar hierarquia de liderança"}),e(Ba,{onClick:()=>o(),children:"Tentar novamente"})]})}):a("div",{className:"flex flex-col h-full",children:[e("div",{className:"flex items-center justify-between p-4 border-b",children:a("div",{className:"flex gap-2 items-center",children:[a(Ba,{size:"sm",onClick:()=>{f(void 0),b(null),h(!0)},children:[e(M,{className:"h-4 w-4 mr-2"}),"Definir Líder"]}),a(Ba,{variant:"outline",size:"sm",onClick:()=>{if(!r)return;const e=Wl(r).filter(e=>e.children.length>0).map(e=>e.id),a=new Set(e);m(a),t&&dd(t,a)},disabled:!r||0===r.length,children:[e(S,{className:"h-4 w-4 mr-2"}),"Expandir todos"]}),a(Ba,{variant:"outline",size:"sm",onClick:()=>{const e=new Set;m(e),t&&dd(t,e)},disabled:!r||0===r.length,children:[e(z,{className:"h-4 w-4 mr-2"}),"Recolher todos"]}),e("div",{className:"flex items-center gap-2 ml-4",children:a("div",{className:"flex items-center gap-2 px-3 py-1.5 bg-muted rounded-md",children:[e(Be,{className:"h-4 w-4 text-muted-foreground"}),a("span",{className:"text-sm font-medium",children:[v," usuário",1!==v?"s":""," não associado",1!==v?"s":""]})]})})]})}),r&&0!==r.length?e(yn,{className:"flex-1",children:e("div",{children:a("table",{className:"w-full",children:[e("thead",{children:a("tr",{className:"border-b bg-muted/50",children:[e("th",{className:"py-3 px-4 text-left font-semibold",children:"Nome"}),e("th",{className:"py-3 px-4 text-center font-semibold",children:"Liderados"})]})}),e("tbody",{children:r.map(a=>e(ed,{leader:a,expandedIds:d,onToggleExpand:N,onEdit:y},a.id))})]})})}):e("div",{className:"flex items-center justify-center flex-1",children:a("div",{className:"text-center space-y-4",children:[e("p",{className:"text-muted-foreground",children:"Nenhuma hierarquia de liderança encontrada"}),e("p",{className:"text-sm text-muted-foreground",children:'Clique em "Definir Líder" para começar'})]})}),e(od,{open:u,onOpenChange:()=>{h(!1),f(void 0),b(null)},leader:p,prefilledLeaderId:g,title:p?"Editar Líder":g?"Adicionar Liderado":"Adicionar Líder Raiz"},`leadership-dialog-${t}`)]})}function md(e){const[a,t]=n(!1),[r,s]=n(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 Wt({title:"Erro de configuração",description:"Função de upload não configurada. Verifique a documentação.",variant:"destructive"}),e}t(!0),s(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 r=await i(e,t);return s(100),Wt({title:"Sucesso",description:"Arquivo enviado com sucesso"}),d?.(r),r}catch(r){const e=r instanceof Error?r:new Error("Erro ao fazer upload");throw Wt({title:"Erro",description:e.message,variant:"destructive"}),c?.(e),e}finally{t(!1)}},deleteMedia:async(e,a)=>{if(!o){const e=new Error("deleteFunction não fornecida");throw Wt({title:"Erro de configuração",description:"Função de delete não configurada.",variant:"destructive"}),e}try{await o(e,a),Wt({title:"Sucesso",description:"Arquivo removido com sucesso"})}catch(t){throw Wt({title:"Erro",description:"Erro ao remover o arquivo",variant:"destructive"}),t}},uploading:a,progress:r}}function ud(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 hd(e,a){const t=ud(e);if(!t)return e;return`https://www.youtube.com/embed/${t}${a?"?autoplay=1&mute=1":""}`}function pd(e){const a=e.match(/vimeo\.com\/(?:video\/)?(\d+)/);return a?a[1]:null}function fd(e,a){const t=pd(e);if(!t)return e;return`https://player.vimeo.com/video/${t}${a?"?autoplay=1&muted=1":""}`}function gd(e){if(!e)return;const a=e.match(/src="([^"]+)"/);return a?a[1]:void 0}function bd(e){return e?/youtube|youtu\.be/.test(e)?"youtube":/vimeo/.test(e)?"vimeo":"file":"file"}function vd(e,a,t){switch(a||bd(e)){case"youtube":return hd(e,t);case"vimeo":return fd(e,t);default:return e}}function Nd({value:r,onChange:s,onSubmit:o,onCancel:l,uploadFunction:d,deleteFunction:c,uploadOptions:m}){const[h,p]=n(r||{inputType:"url",controls:!0}),f=u(null),g=u(null),{upload:b,uploading:v}=md({uploadFunction:d,deleteFunction:c,defaultOptions:{...m,allowedTypes:["video/*"],maxSize:104857600}}),{upload:N,uploading:y}=md({uploadFunction:d,deleteFunction:c,defaultOptions:{...m,allowedTypes:["image/*"],maxSize:5242880}}),x=i(()=>bd(h.videoUrl||gd(h.embedCode)||""),[h.videoUrl,h.embedCode]),w=(e,a)=>{const t={...h,[e]:a};p(t),s(t)};return a("div",{className:"space-y-6",children:[a("div",{className:"space-y-2",children:[e(Ka,{children:"Tipo de entrada"}),a(xt,{value:h.inputType||"url",onValueChange:e=>w("inputType",e),children:[e(Ct,{children:e(kt,{})}),a(It,{children:[e(At,{value:"url",children:"URL (YouTube/Vimeo/arquivo)"}),e(At,{value:"upload",children:"Upload de arquivo"}),e(At,{value:"embed",children:"Código de incorporação (iframe)"})]})]})]}),"embed"!==h.inputType&&a("div",{className:"space-y-2",children:[e(Ka,{children:"URL do vídeo"}),e(Ha,{type:"url",placeholder:"https://www.youtube.com/watch?v=... ou arquivo direto",value:h.videoUrl||"",onChange:e=>w("videoUrl",e.target.value)})]}),"upload"===h.inputType&&d&&a("div",{className:"space-y-2",children:[e(Ka,{children:"Arquivo de vídeo"}),a("div",{className:"flex gap-2",children:[e("input",{ref:f,type:"file",accept:"video/*",onChange:async e=>{const a=e.target.files?.[0];if(a)try{const e=await b(a),t={...h,videoUrl:e.url,videoFile:e.name,videoPath:e.path,videoSize:e.size,title:h.title||a.name.replace(/\.[^/.]+$/,"")};p(t),s(t)}catch(t){}finally{f.current&&(f.current.value="")}},className:"hidden"}),e(Ba,{type:"button",variant:"outline",onClick:()=>f.current?.click(),disabled:v,children:a(t,v?{children:[e(_,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}:{children:[e(le,{className:"mr-2 h-4 w-4"}),"Selecionar vídeo"]})}),h.videoFile&&a("span",{className:"text-xs text-muted-foreground truncate self-center",children:[h.videoFile," (",Math.round((h.videoSize||0)/1024/1024)," MB)"]})]})]}),"embed"===h.inputType&&a("div",{className:"space-y-2",children:[e(Ka,{children:"Código embed (iframe)"}),e(Rt,{placeholder:'<iframe src="https://www.youtube.com/embed/..." ...></iframe>',value:h.embedCode||"",onChange:e=>w("embedCode",e.target.value),rows:4,className:"font-mono text-sm"})]}),d&&a("div",{className:"space-y-2",children:[e(Ka,{children:"Thumbnail/Poster (opcional)"}),a("div",{className:"flex gap-2",children:[e(Ha,{type:"url",placeholder:"https://exemplo.com/thumbnail.jpg",value:h.thumbnail||"",onChange:e=>w("thumbnail",e.target.value),className:"flex-1"}),e("input",{ref:g,type:"file",accept:"image/*",onChange:async e=>{const a=e.target.files?.[0];if(a)try{const e=await N(a),t={...h,thumbnail:e.url,thumbnailFile:e.name,thumbnailPath:e.path};p(t),s(t)}catch(t){}finally{g.current&&(g.current.value="")}},className:"hidden"}),e(Ba,{type:"button",variant:"outline",onClick:()=>g.current?.click(),disabled:y,children:a(t,y?{children:[e(_,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}:{children:[e(le,{className:"mr-2 h-4 w-4"}),"Upload"]})})]}),h.thumbnailFile&&a("p",{className:"text-xs text-muted-foreground",children:["Arquivo: ",h.thumbnailFile]})]}),a("div",{className:"space-y-2",children:[e(Ka,{htmlFor:"title",children:"Título (opcional)"}),e(Ha,{id:"title",placeholder:"Título do vídeo",value:h.title||"",onChange:e=>w("title",e.target.value)})]}),a("div",{className:"flex gap-6",children:[a("div",{className:"flex items-center gap-2",children:[e("input",{id:"autoplay",type:"checkbox",checked:h.autoplay||!1,onChange:e=>w("autoplay",e.target.checked),className:"h-4 w-4"}),e(Ka,{htmlFor:"autoplay",className:"cursor-pointer",children:"Autoplay (mudo em embeds)"})]}),a("div",{className:"flex items-center gap-2",children:[e("input",{id:"controls",type:"checkbox",checked:!1!==h.controls,onChange:e=>w("controls",e.target.checked),className:"h-4 w-4"}),e(Ka,{htmlFor:"controls",className:"cursor-pointer",children:"Mostrar controles"})]})]}),a("div",{className:"space-y-2",children:[e(Ka,{children:"Preview"}),e("div",{className:"border rounded-lg p-4 bg-muted/30",children:(()=>{const t=h.videoUrl||gd(h.embedCode)||"";if(!t)return e("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"===x)return a("video",{controls:!1!==h.controls,autoPlay:h.autoplay,poster:h.thumbnail,className:"w-full h-auto rounded-md",playsInline:!0,children:[e("source",{src:t}),"Seu navegador não suporta vídeos HTML5."]});const r="youtube"===x?hd(t,h.autoplay):fd(t,h.autoplay);return e("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e("iframe",{title:h.title||"Vídeo",src:r,className:"absolute inset-0 w-full h-full rounded-md",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})})})()})]}),a("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e(Ba,{variant:"outline",onClick:l,children:"Cancelar"}),e(Ba,{onClick:()=>{h.videoUrl||h.embedCode?o(h):Wt({title:"Erro",description:"Adicione uma URL, faça upload de um vídeo ou insira um código embed",variant:"destructive"})},disabled:!(h.videoUrl||h.embedCode),children:"Salvar"})]})]})}function yd({content:t,className:r="",style:s}){const n=t.videoUrl||gd(t.embedCode)||"";if(!n)return null;const i=bd(n);return e(Ga,{className:`overflow-hidden my-4 ${r}`,style:s,children:a(Za,{className:"p-0",children:["file"===i?a("video",{controls:!1!==t.controls,autoPlay:t.autoplay,poster:t.thumbnail,className:"w-full h-auto",playsInline:!0,muted:t.autoplay,children:[e("source",{src:n}),"Seu navegador não suporta vídeos HTML5."]}):e("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e("iframe",{title:t.title||"Vídeo",src:"youtube"===i?hd(n,t.autoplay):fd(n,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("div",{className:"p-4",children:e("p",{className:"text-sm font-medium",children:t.title})})]})})}function xd({value:r,onChange:s,onSubmit:i,onCancel:o,uploadFunction:l,deleteFunction:d,uploadOptions:c}){const[m,h]=n(r||{alignment:"center",allowDownload:!1}),p=u(null),{upload:f,uploading:g}=md({uploadFunction:l,deleteFunction:d,defaultOptions:{...c,allowedTypes:["image/*"],maxSize:5242880}}),b=(e,a)=>{const t={...m,[e]:a};h(t),s(t)};return a("div",{className:"space-y-6",children:[a("div",{className:"space-y-2",children:[e(Ka,{children:"URL da imagem"}),a("div",{className:"flex gap-2",children:[e(Ha,{type:"url",placeholder:"https://exemplo.com/imagem.jpg",value:m.imageUrl||"",onChange:e=>b("imageUrl",e.target.value),className:"flex-1"}),l&&a(t,{children:[e("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={...m,imageUrl:e.url,imageFile:e.name,imagePath:e.path,imageSize:e.size};h(t),s(t)}catch(t){}finally{p.current&&(p.current.value="")}},className:"hidden"}),e(Ba,{type:"button",variant:"outline",onClick:()=>p.current?.click(),disabled:g,children:a(t,g?{children:[e(_,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}:{children:[e(le,{className:"mr-2 h-4 w-4"}),"Upload"]})})]})]}),m.imageFile&&a("p",{className:"text-xs text-muted-foreground",children:["Arquivo: ",m.imageFile," (",Math.round((m.imageSize||0)/1024)," KB)"]})]}),m.imageUrl&&a("div",{className:"space-y-2",children:[e(Ka,{children:"Preview"}),e("div",{className:"border rounded-lg p-4 bg-muted/30",children:e("div",{className:"flex "+("left"===m.alignment?"justify-start":"right"===m.alignment?"justify-end":"justify-center"),children:e("img",{src:m.imageUrl,alt:m.alt||"Preview",style:{width:m.width?`${m.width}px`:"auto",height:m.height?`${m.height}px`:"auto",maxWidth:"100%"},className:"rounded-lg shadow-md"})})})]}),a("div",{className:"space-y-2",children:[e(Ka,{htmlFor:"caption",children:"Legenda (opcional)"}),e(Rt,{id:"caption",placeholder:"Descrição da imagem",value:m.caption||"",onChange:e=>b("caption",e.target.value),rows:2})]}),a("div",{className:"space-y-2",children:[e(Ka,{htmlFor:"alt",children:"Texto alternativo (acessibilidade)"}),e(Ha,{id:"alt",placeholder:"Descrição para leitores de tela",value:m.alt||"",onChange:e=>b("alt",e.target.value)})]}),a("div",{className:"space-y-2",children:[e(Ka,{children:"Alinhamento"}),a(xt,{value:m.alignment||"center",onValueChange:e=>b("alignment",e),children:[e(Ct,{children:e(kt,{})}),a(It,{children:[e(At,{value:"left",children:"Esquerda"}),e(At,{value:"center",children:"Centro"}),e(At,{value:"right",children:"Direita"})]})]})]}),a("div",{className:"grid grid-cols-2 gap-4",children:[a("div",{className:"space-y-2",children:[e(Ka,{htmlFor:"width",children:"Largura (px, opcional)"}),e(Ha,{id:"width",type:"number",placeholder:"Auto",value:m.width||"",onChange:e=>b("width",e.target.value?Number(e.target.value):void 0)})]}),a("div",{className:"space-y-2",children:[e(Ka,{htmlFor:"height",children:"Altura (px, opcional)"}),e(Ha,{id:"height",type:"number",placeholder:"Auto",value:m.height||"",onChange:e=>b("height",e.target.value?Number(e.target.value):void 0)})]})]}),a("div",{className:"flex items-center gap-2",children:[e("input",{id:"allowDownload",type:"checkbox",checked:m.allowDownload||!1,onChange:e=>b("allowDownload",e.target.checked),className:"h-4 w-4"}),e(Ka,{htmlFor:"allowDownload",className:"cursor-pointer",children:"Permitir download da imagem"})]}),a("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e(Ba,{variant:"outline",onClick:o,children:"Cancelar"}),e(Ba,{onClick:()=>{m.imageUrl?i(m):Wt({title:"Erro",description:"Adicione uma URL ou faça upload de uma imagem",variant:"destructive"})},disabled:!m.imageUrl,children:"Salvar"})]})]})}function wd({content:t,className:r="",style:s}){if(!t.imageUrl)return null;const n={left:"justify-start",center:"justify-center",right:"justify-end"}[t.alignment||"center"];return e("div",{className:`flex ${n} my-4 ${r}`,style:s,children:a("div",{className:"space-y-2 max-w-full",children:[e("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("p",{className:"text-sm text-muted-foreground text-center italic",children:t.caption}),t.allowDownload&&t.imageUrl&&a("a",{href:t.imageUrl,download:!0,className:"flex items-center gap-2 text-sm text-primary hover:underline justify-center",children:[e(de,{className:"h-4 w-4"}),"Baixar imagem"]})]})})}function kd(e,a){return e/a}function Cd(e,a,t,r){const s=kd(e,a);return t&&!r?{width:t,height:Math.round(t/s)}:r&&!t?{width:Math.round(r*s),height:r}:{width:e,height:a}}function Sd(e){const a=e.toLowerCase();return[".jpg",".jpeg",".png",".gif",".webp",".svg",".bmp",".ico"].some(e=>a.includes(e))}function Ed(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"}}function Id(e){return e<1024?`${e} B`:e<1048576?`${Math.round(e/1024)} KB`:`${(e/1024/1024).toFixed(2)} MB`}export{Kr as AUTH_CONFIG,ti as Accordion,ni as AccordionContent,ri as AccordionItem,si as AccordionTrigger,Wa as ActionButton,sl as ActionMenu,un as ActionMenuItems,Hn as Alert,Kn as AlertDescription,ks as AlertDialog,Rs as AlertDialogAction,zs as AlertDialogCancel,Is as AlertDialogContent,Ps as AlertDialogDescription,As as AlertDialogFooter,_s as AlertDialogHeader,Es as AlertDialogOverlay,Ss as AlertDialogPortal,Ts as AlertDialogTitle,Cs as AlertDialogTrigger,Qn as AlertTitle,fl as AppHeader,Al as AppLayout,_l as AppSidebar,ii as AspectRatio,Vr as AuthErrorInterceptor,Ns as AuthProvider,bs as AuthService,oi as Avatar,di as AvatarFallback,li as AvatarImage,Ft as Badge,In as BaseForm,ci as Breadcrumb,gi as BreadcrumbEllipsis,ui as BreadcrumbItem,hi as BreadcrumbLink,mi as BreadcrumbList,pi as BreadcrumbPage,fi as BreadcrumbSeparator,Tn as BulkActionBar,Ba as Button,Gr as CRUD_CONFIG,Ii as Calendar,Gn as CallbackPage,Ga as Card,Za as CardContent,Ya as CardDescription,et as CardFooter,Ja as CardHeader,Bs as CardSkeleton,Xa as CardTitle,il as Cards,jl as ChatbotPage,Pt as Checkbox,_i as Collapsible,Ti as CollapsibleContent,Ai as CollapsibleTrigger,Nn as ColorPicker,nr as Command,ir as CommandDialog,dr as CommandEmpty,cr as CommandGroup,or as CommandInput,ur as CommandItem,lr as CommandList,mr as CommandSeparator,hr as CommandShortcut,tl as CrudCards,Ln as CrudPageInternal,An as CrudPagination,nl as CrudPrimitiveFilterBar,_n as CrudPrimitivePagination,rl as CrudPrimitiveTable,gn as CrudTable,Pi as DataList,Fs as DeleteConfirmationDialog,at as Dialog,st as DialogClose,it as DialogContent,ct as DialogDescription,lt as DialogFooter,ot as DialogHeader,nt as DialogOverlay,rt as DialogPortal,dt as DialogTitle,tt as DialogTrigger,Js as DropdownMenu,on as DropdownMenuCheckboxItem,sn as DropdownMenuContent,Ys as DropdownMenuGroup,nn as DropdownMenuItem,dn as DropdownMenuLabel,Zs as DropdownMenuPortal,an as DropdownMenuRadioGroup,ln as DropdownMenuRadioItem,cn as DropdownMenuSeparator,mn as DropdownMenuShortcut,en as DropdownMenuSub,rn as DropdownMenuSubContent,tn as DropdownMenuSubTrigger,Xs as DropdownMenuTrigger,zl as EmailService,Gs as EmptyState,Cn as EntitySelect,Rl as ErrorBoundary,Dn as FilterBar,mt as Form,vt as FormControl,Nt as FormDescription,ht as FormField,gt as FormItem,bt as FormLabel,yt as FormMessage,Ws as FormSkeleton,Di as Grid,Hs as HeaderSkeleton,kn as IconPicker,xd as ImageEditor,wd as ImageRenderer,Ha as Input,as as LOGO_CONFIG,Ka as Label,ed as LeaderRow,od as LeadershipDialog,id as LeadershipForm,cd as LeadershipPage,jt as LoadingState,Jn as LoginPage,ts as MESSAGES,Ol as ManageAccessModal,Ll as MarkdownMessage,br as MultiSelect,ml as NavigationProvider,Mi as PageBreadcrumb,Yn as PageMetadataProvider,Ui as Pagination,Vi as PaginationContent,Qi as PaginationEllipsis,qi as PaginationItem,Bi as PaginationLink,Hi as PaginationNext,Wi as PaginationPrevious,Ml as PlaceCard,$l as PlacesList,tr as Popover,sr as PopoverContent,rr as PopoverTrigger,Ki as Progress,Bn as ProtectedRoute,Zr as QUALIEX_CONFIG,Yr as QUERY_KEYS,ls as QualiexEnrichmentService,Br as QualiexErrorInterceptor,En as QualiexUserField,Gi as RadioGroup,Ji as RadioGroupItem,Il as ResizableRail,Jr as SEARCH_CONFIG,yn as ScrollArea,xn as ScrollBar,xt as Select,It as SelectContent,wt as SelectGroup,At as SelectItem,_t as SelectLabel,Et as SelectScrollDownButton,St as SelectScrollUpButton,Oi as SelectSearch,Tt as SelectSeparator,Ct as SelectTrigger,kt as SelectValue,Xi as Separator,Yi as Sheet,eo as SheetClose,so as SheetContent,lo as SheetDescription,io as SheetFooter,no as SheetHeader,to as SheetOverlay,ao as SheetPortal,oo as SheetTitle,Zi as SheetTrigger,vo as Sidebar,Eo as SidebarContent,Co as SidebarFooter,Io as SidebarGroup,Ao as SidebarGroupAction,To as SidebarGroupContent,_o as SidebarGroupLabel,Sl as SidebarHeader,wo as SidebarInput,xo as SidebarInset,Po as SidebarMenu,Do as SidebarMenuAction,Lo as SidebarMenuBadge,Fo as SidebarMenuButton,Ro as SidebarMenuItem,jo as SidebarMenuSkeleton,Oo as SidebarMenuSub,$o as SidebarMenuSubButton,Mo as SidebarMenuSubItem,bo as SidebarProvider,yo as SidebarRail,So as SidebarSeparator,Qs as SidebarSkeleton,No as SidebarTrigger,pr as Skeleton,Uo as Slider,Vo as SonnerToaster,Lt as Spinner,Fn as Stack,Ri as StatusSelect,qo as Switch,Jo as TabPageContent,Go as TabPageHeader,Ko as TabPageLayout,Ds as Table,js as TableBody,Vs as TableCaption,Us as TableCell,Os as TableFooter,$s as TableHead,Ls as TableHeader,Ms as TableRow,hn as TableRowActions,qs as TableSkeleton,Bo as Tabs,Qo as TabsContent,Wo as TabsList,Ho as TabsTrigger,Rt as Textarea,Jt as Toast,Xt as ToastAction,Yt as ToastClose,er as ToastDescription,Qt as ToastProvider,Zt as ToastTitle,Kt as ToastViewport,ar as Toaster,Yo as Toggle,el as ToggleGroup,al as ToggleGroupItem,Ir as TokenManager,Nr as TokenService,mo as Tooltip,ho as TooltipContent,co as TooltipProvider,uo as TooltipTrigger,Nd as VideoEditor,yd as VideoRenderer,wl as assets,zt as badgeVariants,Bl as buildHierarchy,qa as buttonVariants,kd as calculateAspectRatio,ja as cn,jn as createCrudPage,ll as createCrudRoutingConfig,ol as createRoutingHandlers,ms as createService,On as createSimpleSaveHandler,ws as createSimpleService,Vn as crudPresets,Ua as debounce,ss as deriveEmailField,rs as deriveNameField,ns as deriveUsernameField,bd as detectVideoProvider,Fl as emailService,Tr as errorService,Ed as extractImageFileName,pd as extractVimeoId,ud as extractYouTubeId,Wl as flattenTree,$a as formatCurrency,Ma as formatDatetime,Id as formatFileSize,Mn as generateCrudConfig,es as getQualiexConfig,jr as getSupabaseClient,La as handleExternalLink,Xr as isDevEnvironment,Sd as isImageUrl,kl as logoSrc,vd as normalizeVideoUrl,fd as normalizeVimeoUrl,hd as normalizeYouTubeUrl,gd as parseIframeSrc,ql as placeService,Qr as qualiexApi,Cd as resizeKeepingAspect,is as resolveFieldMappings,ai as setupQualiexCore,Va as slugify,Cl as smallLogoSrc,Wt as toast,Xo as toggleVariants,Oa as trimTextFields,bl as useActiveModules,ys as useAuth,bn as useBaseForm,Ql as useCreateLeaderMutation,Gl as useCreateMultipleLeadersMutation,Kl as useCreateSingleLeaderMutation,xs as useCrud,pl as useDebounce,pt as useFormField,Hl as useLeadershipApi,md as useMediaUpload,ul as useNavigation,Dl as useOpenAIChat,ei as usePageMetadata,Zn as usePageMetadataContext,hl as usePageTitle,gl as usePermissionQuery,Sn as useQualiexUsers,Xl as useRemoveLeaderMutation,$i as useRouteBreadcrumbs,go as useSidebar,El as useSidebarResize,Yl as useSyncSubordinatesMutation,Ht as useToast,Jl as useUpdateLeaderMutation,qn as withPreset};
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import*as r from"react";import s,{createContext as n,useContext as i,useMemo as o,useRef as l,useCallback as d,useState as c,useEffect as u,createElement as m,memo as h,Component as p}from"react";import{Slot as f}from"@radix-ui/react-slot";import{cva as g}from"class-variance-authority";import{clsx as b}from"clsx";import{twMerge as v}from"tailwind-merge";import{parseISO as y,isValid as x,format as N}from"date-fns";import{toast as w,Toaster as k}from"sonner";export{toast as sonnerToast}from"sonner";import{EllipsisVertical as S,X as C,ChevronDown as _,ChevronUp as P,Check as E,Loader2 as T,AlertCircle as I,AlertTriangle as A,Search as R,FileX as O,ChevronRight as L,Circle as j,Edit as F,PowerOff as M,Power as D,Trash2 as z,Plus as $,ArrowUpDown as U,ArrowUp as V,ArrowDown as q,Target as B,Trophy as W,Award as H,Sparkles as K,Flame as Q,Zap as G,Key as J,Shield as X,EyeOff as Y,Eye as Z,Unlock as ee,Lock as te,Archive as ae,FolderOpen as re,Folder as se,FileText as ne,Save as ie,Copy as oe,Share as le,Upload as de,Download as ce,HelpCircle as ue,Info as me,Bell as he,Clock as pe,ArrowRight as fe,ArrowLeft as ge,ChevronLeft as be,Minus as ve,Filter as ye,Bookmark as xe,Book as Ne,Video as we,Music as ke,Image as Se,Camera as Ce,MapPin as _e,Calendar as Pe,Phone as Ee,Mail as Te,Settings as Ie,User as Ae,Home as Re,Heart as Oe,Star as Le,ChevronsLeft as je,ChevronsRight as Fe,RefreshCw as Me,MoreHorizontal as De,PanelLeft as ze,ExternalLink as $e,Globe as Ue,Building2 as Ve,LogOut as qe,MessageCircle as Be,Send as We,Users as He,Crown as Ke,UserPlus as Qe}from"lucide-react";import*as Ge from"@radix-ui/react-label";import*as Je from"@radix-ui/react-dialog";import{useFormContext as Xe,FormProvider as Ye,Controller as Ze,appendErrors as et,useForm as tt}from"react-hook-form";import*as at from"@radix-ui/react-select";import*as rt from"@radix-ui/react-checkbox";import*as st from"@radix-ui/react-toast";import*as nt from"@radix-ui/react-popover";import{createClient as it}from"@supabase/supabase-js";import{useQueryClient as ot,useQuery as lt,useMutation as dt,QueryClient as ct}from"@tanstack/react-query";import{useSearchParams as ut,useLocation as mt,useNavigate as ht,Link as pt}from"react-router-dom";import*as ft from"@radix-ui/react-alert-dialog";import*as gt from"@radix-ui/react-dropdown-menu";import*as bt from"@radix-ui/react-context-menu";import*as vt from"@radix-ui/react-scroll-area";import*as yt from"@radix-ui/react-switch";import*as xt from"@radix-ui/react-progress";import*as Nt from"@radix-ui/react-accordion";import*as wt from"@radix-ui/react-aspect-ratio";import*as kt from"@radix-ui/react-avatar";import{DayPicker as St}from"react-day-picker";import*as Ct from"@radix-ui/react-collapsible";import{Drawer as _t}from"vaul";import*as Pt from"@radix-ui/react-radio-group";import*as Et from"@radix-ui/react-separator";import*as Tt from"@radix-ui/react-tooltip";import*as It from"@radix-ui/react-slider";import{useTheme as At}from"next-themes";import*as Rt from"@radix-ui/react-tabs";import*as Ot from"@radix-ui/react-toggle";import*as Lt from"@radix-ui/react-toggle-group";import jt from"react-markdown";import Ft from"remark-gfm";import{z as Mt}from"zod";import{validateFieldsNatively as Dt,toNestErrors as zt}from"@hookform/resolvers";const $t=e=>"string"==typeof e,Ut=()=>{let e,t;const a=new Promise((a,r)=>{e=a,t=r});return a.resolve=e,a.reject=t,a},Vt=e=>null==e?"":""+e,qt=/###/g,Bt=e=>e&&e.indexOf("###")>-1?e.replace(qt,"."):e,Wt=e=>!e||$t(e),Ht=(e,t,a)=>{const r=$t(t)?t.split("."):t;let s=0;for(;s<r.length-1;){if(Wt(e))return{};const t=Bt(r[s]);!e[t]&&a&&(e[t]=new a),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++s}return Wt(e)?{}:{obj:e,k:Bt(r[s])}},Kt=(e,t,a)=>{const{obj:r,k:s}=Ht(e,t,Object);if(void 0!==r||1===t.length)return void(r[s]=a);let n=t[t.length-1],i=t.slice(0,t.length-1),o=Ht(e,i,Object);for(;void 0===o.obj&&i.length;)n=`${i[i.length-1]}.${n}`,i=i.slice(0,i.length-1),o=Ht(e,i,Object),o?.obj&&void 0!==o.obj[`${o.k}.${n}`]&&(o.obj=void 0);o.obj[`${o.k}.${n}`]=a},Qt=(e,t)=>{const{obj:a,k:r}=Ht(e,t);if(a&&Object.prototype.hasOwnProperty.call(a,r))return a[r]},Gt=(e,t,a)=>{for(const r in t)"__proto__"!==r&&"constructor"!==r&&(r in e?$t(e[r])||e[r]instanceof String||$t(t[r])||t[r]instanceof String?a&&(e[r]=t[r]):Gt(e[r],t[r],a):e[r]=t[r]);return e},Jt=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var Xt={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const Yt=e=>$t(e)?e.replace(/[&<>"'\/]/g,e=>Xt[e]):e;const Zt=[" ",",","?","!",";"],ea=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),ta=(e,t,a=".")=>{if(!e)return;if(e[t]){if(!Object.prototype.hasOwnProperty.call(e,t))return;return e[t]}const r=t.split(a);let s=e;for(let n=0;n<r.length;){if(!s||"object"!=typeof s)return;let e,t="";for(let i=n;i<r.length;++i)if(i!==n&&(t+=a),t+=r[i],e=s[t],void 0!==e){if(["string","number","boolean"].indexOf(typeof e)>-1&&i<r.length-1)continue;n+=i-n+1;break}s=e}return s},aa=e=>e?.replace("_","-"),ra={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){}};class sa{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||"i18next:",this.logger=e||ra,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,r){return r&&!this.debug?null:($t(e[0])&&(e[0]=`${a}${this.prefix} ${e[0]}`),this.logger[t](e))}create(e){return new sa(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return(e=e||this.options).prefix=e.prefix||this.prefix,new sa(this.logger,e)}}var na=new sa;class ia{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 r=0;r<a;r++)e(...t)})}if(this.observers["*"]){Array.from(this.observers["*"].entries()).forEach(([a,r])=>{for(let s=0;s<r;s++)a.apply(a,[e,...t])})}}}class oa extends ia{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,r={}){const s=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,n=void 0!==r.ignoreJSONStructure?r.ignoreJSONStructure:this.options.ignoreJSONStructure;let i;e.indexOf(".")>-1?i=e.split("."):(i=[e,t],a&&(Array.isArray(a)?i.push(...a):$t(a)&&s?i.push(...a.split(s)):i.push(a)));const o=Qt(this.data,i);return!o&&!t&&!a&&e.indexOf(".")>-1&&(e=i[0],t=i[1],a=i.slice(2).join(".")),!o&&n&&$t(a)?ta(this.data?.[e]?.[t],a,s):o}addResource(e,t,a,r,s={silent:!1}){const n=void 0!==s.keySeparator?s.keySeparator:this.options.keySeparator;let i=[e,t];a&&(i=i.concat(n?a.split(n):a)),e.indexOf(".")>-1&&(i=e.split("."),r=t,t=i[1]),this.addNamespaces(t),Kt(this.data,i,r),s.silent||this.emit("added",e,t,a,r)}addResources(e,t,a,r={silent:!1}){for(const s in a)($t(a[s])||Array.isArray(a[s]))&&this.addResource(e,t,s,a[s],{silent:!0});r.silent||this.emit("added",e,t,a)}addResourceBundle(e,t,a,r,s,n={silent:!1,skipCopy:!1}){let i=[e,t];e.indexOf(".")>-1&&(i=e.split("."),r=a,a=t,t=i[1]),this.addNamespaces(t);let o=Qt(this.data,i)||{};n.skipCopy||(a=JSON.parse(JSON.stringify(a))),r?Gt(o,a,s):o={...o,...a},Kt(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 la={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,a,r,s){return e.forEach(e=>{t=this.processors[e]?.process(t,a,r,s)??t}),t}};const da=Symbol("i18next/PATH_KEY");function ca(e,t){const{[da]:a}=e(function(){const e=[],t=Object.create(null);let a;return t.get=(r,s)=>(a?.revoke?.(),s===da?e:(e.push(s),a=Proxy.revocable(r,t),a.proxy)),Proxy.revocable(Object.create(null),t).proxy}());return a.join(t?.keySeparator??".")}const ua={},ma=e=>!$t(e)&&"boolean"!=typeof e&&"number"!=typeof e;class ha extends ia{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=na.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){const a={...t};if(null==e)return!1;const r=this.resolve(e,a);if(void 0===r?.res)return!1;const s=ma(r.res);return!1!==a.returnObjects||!s}extractFromKey(e,t){let a=void 0!==t.nsSeparator?t.nsSeparator:this.options.nsSeparator;void 0===a&&(a=":");const r=void 0!==t.keySeparator?t.keySeparator:this.options.keySeparator;let s=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 r=Zt.filter(e=>t.indexOf(e)<0&&a.indexOf(e)<0);if(0===r.length)return!0;const s=ea.getRegExp(`(${r.map(e=>"?"===e?"\\?":e).join("|")})`);let n=!s.test(e);if(!n){const t=e.indexOf(a);t>0&&!s.test(e.substring(0,t))&&(n=!0)}return n})(e,a,r));if(n&&!i){const t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:$t(s)?[s]:s};const n=e.split(a);(a!==r||a===r&&this.options.ns.indexOf(n[0])>-1)&&(s=n.shift()),e=n.join(r)}return{key:e,namespaces:$t(s)?[s]:s}}translate(e,t,a){let r="object"==typeof t?{...t}:t;if("object"!=typeof r&&this.options.overloadTranslationOptionHandler&&(r=this.options.overloadTranslationOptionHandler(arguments)),"object"==typeof r&&(r={...r}),r||(r={}),null==e)return"";"function"==typeof e&&(e=ca(e,{...this.options,...r})),Array.isArray(e)||(e=[String(e)]);const s=void 0!==r.returnDetails?r.returnDetails:this.options.returnDetails,n=void 0!==r.keySeparator?r.keySeparator:this.options.keySeparator,{key:i,namespaces:o}=this.extractFromKey(e[e.length-1],r),l=o[o.length-1];let d=void 0!==r.nsSeparator?r.nsSeparator:this.options.nsSeparator;void 0===d&&(d=":");const c=r.lng||this.language,u=r.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if("cimode"===c?.toLowerCase())return u?s?{res:`${l}${d}${i}`,usedKey:i,exactUsedKey:i,usedLng:c,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:`${l}${d}${i}`:s?{res:i,usedKey:i,exactUsedKey:i,usedLng:c,usedNS:l,usedParams:this.getUsedParamsDetails(r)}:i;const m=this.resolve(e,r);let h=m?.res;const p=m?.usedKey||i,f=m?.exactUsedKey||i,g=void 0!==r.joinArrays?r.joinArrays:this.options.joinArrays,b=!this.i18nFormat||this.i18nFormat.handleAsObject,v=void 0!==r.count&&!$t(r.count),y=ha.hasDefaultValue(r),x=v?this.pluralResolver.getSuffix(c,r.count,r):"",N=r.ordinal&&v?this.pluralResolver.getSuffix(c,r.count,{ordinal:!1}):"",w=v&&!r.ordinal&&0===r.count,k=w&&r[`defaultValue${this.options.pluralSeparator}zero`]||r[`defaultValue${x}`]||r[`defaultValue${N}`]||r.defaultValue;let S=h;b&&!h&&y&&(S=k);const C=ma(S),_=Object.prototype.toString.apply(S);if(!(b&&S&&C&&["[object Number]","[object Function]","[object RegExp]"].indexOf(_)<0)||$t(g)&&Array.isArray(S))if(b&&$t(g)&&Array.isArray(h))h=h.join(g),h&&(h=this.extendTranslation(h,e,r,a));else{let t=!1,s=!1;!this.isValidLookup(h)&&y&&(t=!0,h=k),this.isValidLookup(h)||(s=!0,h=i);const o=(r.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&s?void 0:h,u=y&&k!==h&&this.options.updateMissing;if(s||t||u){if(this.logger.log(u?"updateKey":"missingKey",c,l,i,u?k:h),n){const e=this.resolve(i,{...r,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,r.lng||this.language);if("fallback"===this.options.saveMissingTo&&t&&t[0])for(let r=0;r<t.length;r++)e.push(t[r]);else"all"===this.options.saveMissingTo?e=this.languageUtils.toResolveHierarchy(r.lng||this.language):e.push(r.lng||this.language);const a=(e,t,a)=>{const s=y&&a!==h?a:o;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,s,u,r):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(e,l,t,s,u,r),this.emit("missingKey",e,l,t,h)};this.options.saveMissing&&(this.options.saveMissingPlurals&&v?e.forEach(e=>{const t=this.pluralResolver.getSuffixes(e,r);w&&r[`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,r[`defaultValue${t}`]||k)})}):a(e,i,k))}h=this.extendTranslation(h,e,r,m,a),s&&h===i&&this.options.appendNamespaceToMissingKey&&(h=`${l}${d}${i}`),(s||t)&&this.options.parseMissingKeyHandler&&(h=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${d}${i}`:i,t?h:void 0,r))}else{if(!r.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(p,S,{...r,ns:o}):`key '${i} (${this.language})' returned an object instead of string.`;return s?(m.res=e,m.usedParams=this.getUsedParamsDetails(r),m):e}if(n){const e=Array.isArray(S),t=e?[]:{},a=e?f:p;for(const s in S)if(Object.prototype.hasOwnProperty.call(S,s)){const e=`${a}${n}${s}`;t[s]=y&&!h?this.translate(e,{...r,defaultValue:ma(k)?k[s]:void 0,joinArrays:!1,ns:o}):this.translate(e,{...r,joinArrays:!1,ns:o}),t[s]===e&&(t[s]=S[s])}h=t}}return s?(m.res=h,m.usedParams=this.getUsedParamsDetails(r),m):h}extendTranslation(e,t,a,r,s){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...a},a.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!a.skipInterpolation){a.interpolation&&this.interpolator.init({...a,interpolation:{...this.options.interpolation,...a.interpolation}});const n=$t(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&&!$t(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||r.usedLng,a),n){const t=e.match(this.interpolator.nestingRegexp);i<(t&&t.length)&&(a.nest=!1)}!a.lng&&r&&r.res&&(a.lng=this.language||r.usedLng),!1!==a.nest&&(e=this.interpolator.nest(e,(...e)=>s?.[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=$t(n)?[n]:n;return null!=e&&i?.length&&!1!==a.applyPostProcessor&&(e=la.handle(i,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(a)},...a}:a,this)),e}resolve(e,t={}){let a,r,s,n,i;return $t(e)&&(e=[e]),e.forEach(e=>{if(this.isValidLookup(a))return;const o=this.extractFromKey(e,t),l=o.key;r=l;let d=o.namespaces;this.options.fallbackNS&&(d=d.concat(this.options.fallbackNS));const c=void 0!==t.count&&!$t(t.count),u=c&&!t.ordinal&&0===t.count,m=void 0!==t.context&&($t(t.context)||"number"==typeof t.context)&&""!==t.context,h=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);d.forEach(e=>{this.isValidLookup(a)||(i=e,ua[`${h[0]}-${e}`]||!this.utils?.hasLoadedNamespace||this.utils?.hasLoadedNamespace(i)||(ua[`${h[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${h.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!!!")),h.forEach(r=>{if(this.isValidLookup(a))return;n=r;const i=[l];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(i,l,r,e,t);else{let e;c&&(e=this.pluralResolver.getSuffix(r,t.count,t));const a=`${this.options.pluralSeparator}zero`,s=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(c&&(t.ordinal&&0===e.indexOf(s)&&i.push(l+e.replace(s,this.options.pluralSeparator)),i.push(l+e),u&&i.push(l+a)),m){const r=`${l}${this.options.contextSeparator||"_"}${t.context}`;i.push(r),c&&(t.ordinal&&0===e.indexOf(s)&&i.push(r+e.replace(s,this.options.pluralSeparator)),i.push(r+e),u&&i.push(r+a))}}let o;for(;o=i.pop();)this.isValidLookup(a)||(s=o,a=this.getResource(r,e,o,t))}))})}),{res:a,usedKey:r,exactUsedKey:s,usedLng:n,usedNS:i}}isValidLookup(e){return!(void 0===e||!this.options.returnNull&&null===e||!this.options.returnEmptyString&&""===e)}getResource(e,t,a,r={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,t,a,r):this.resourceStore.getResource(e,t,a,r)}getUsedParamsDetails(e={}){const t=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],a=e.replace&&!$t(e.replace);let r=a?e.replace:e;if(a&&void 0!==e.count&&(r.count=e.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!a){r={...r};for(const e of t)delete r[e]}return r}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 pa{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=na.create("languageUtils")}getScriptPartFromCode(e){if(!(e=aa(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=aa(e))||e.indexOf("-")<0)return e;const t=e.split("-");return this.formatLanguageCode(t[0])}formatLanguageCode(e){if($t(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 r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find(e=>e===r?e:e.indexOf("-")<0&&r.indexOf("-")<0?void 0:e.indexOf("-")>0&&r.indexOf("-")<0&&e.substring(0,e.indexOf("-"))===r||0===e.indexOf(r)&&r.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)),$t(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),r=[],s=e=>{e&&(this.isSupportedCode(e)?r.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return $t(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?("languageOnly"!==this.options.load&&s(this.formatLanguageCode(e)),"languageOnly"!==this.options.load&&"currentOnly"!==this.options.load&&s(this.getScriptPartFromCode(e)),"currentOnly"!==this.options.load&&s(this.getLanguagePartFromCode(e))):$t(e)&&s(this.formatLanguageCode(e)),a.forEach(e=>{r.indexOf(e)<0&&s(this.formatLanguageCode(e))}),r}}const fa={zero:0,one:1,two:2,few:3,many:4,other:5},ga={select:e=>1===e?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class ba{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=na.create("pluralResolver"),this.pluralRulesCache={}}addRule(e,t){this.rules[e]=t}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){const a=aa("dev"===e?"en":e),r=t.ordinal?"ordinal":"cardinal",s=JSON.stringify({cleanedCode:a,type:r});if(s in this.pluralRulesCache)return this.pluralRulesCache[s];let n;try{n=new Intl.PluralRules(a,{type:r})}catch(i){if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),ga;if(!e.match(/-|_/))return ga;const a=this.languageUtils.getLanguagePartFromCode(e);n=this.getRule(a,t)}return this.pluralRulesCache[s]=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)=>fa[e]-fa[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:""}${e}`):[]}getSuffix(e,t,a={}){const r=this.getRule(e,a);return r?`${this.options.prepend}${a.ordinal?`ordinal${this.options.prepend}`:""}${r.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix("dev",t,a))}}const va=(e,t,a,r=".",s=!0)=>{let n=((e,t,a)=>{const r=Qt(e,a);return void 0!==r?r:Qt(t,a)})(e,t,a);return!n&&s&&$t(a)&&(n=ta(e,a,r),void 0===n&&(n=ta(t,a,r))),n},ya=e=>e.replace(/\$/g,"$$$$");class xa{constructor(e={}){this.logger=na.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:r,prefix:s,prefixEscaped:n,suffix:i,suffixEscaped:o,formatSeparator:l,unescapeSuffix:d,unescapePrefix:c,nestingPrefix:u,nestingPrefixEscaped:m,nestingSuffix:h,nestingSuffixEscaped:p,nestingOptionsSeparator:f,maxReplaces:g,alwaysFormat:b}=e.interpolation;this.escape=void 0!==t?t:Yt,this.escapeValue=void 0===a||a,this.useRawValueToEscape=void 0!==r&&r,this.prefix=s?Jt(s):n||"{{",this.suffix=i?Jt(i):o||"}}",this.formatSeparator=l||",",this.unescapePrefix=d?"":c||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=u?Jt(u):m||Jt("$t("),this.nestingSuffix=h?Jt(h):p||Jt(")"),this.nestingOptionsSeparator=f||",",this.maxReplaces=g||1e3,this.alwaysFormat=void 0!==b&&b,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,r){let s,n,i;const o=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},l=e=>{if(e.indexOf(this.formatSeparator)<0){const s=va(t,o,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(s,void 0,a,{...r,...t,interpolationkey:e}):s}const s=e.split(this.formatSeparator),n=s.shift().trim(),i=s.join(this.formatSeparator).trim();return this.format(va(t,o,n,this.options.keySeparator,this.options.ignoreJSONStructure),i,a,{...r,...t,interpolationkey:n})};this.resetRegExp();const d=r?.missingInterpolationHandler||this.options.missingInterpolationHandler,c=void 0!==r?.interpolation?.skipOnVariables?r.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>ya(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?ya(this.escape(e)):ya(e)}].forEach(t=>{for(i=0;s=t.regex.exec(e);){const a=s[1].trim();if(n=l(a),void 0===n)if("function"==typeof d){const t=d(e,s,r);n=$t(t)?t:""}else if(r&&Object.prototype.hasOwnProperty.call(r,a))n="";else{if(c){n=s[0];continue}this.logger.warn(`missed to pass in variable ${a} for interpolating ${e}`),n=""}else $t(n)||this.useRawValueToEscape||(n=Vt(n));const o=t.safeValue(n);if(e=e.replace(s[0],o),c?(t.regex.lastIndex+=n.length,t.regex.lastIndex-=s[0].length):t.regex.lastIndex=0,i++,i>=this.maxReplaces)break}}),e}nest(e,t,a={}){let r,s,n;const i=(e,t)=>{const a=this.nestingOptionsSeparator;if(e.indexOf(a)<0)return e;const r=e.split(new RegExp(`${a}[ ]*{`));let s=`{${r[1]}`;e=r[0],s=this.interpolate(s,n);const i=s.match(/'/g),o=s.match(/"/g);((i?.length??0)%2==0&&!o||o.length%2!=0)&&(s=s.replace(/'/g,'"'));try{n=JSON.parse(s),t&&(n={...t,...n})}catch(l){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,l),`${e}${a}${s}`}return n.defaultValue&&n.defaultValue.indexOf(this.prefix)>-1&&delete n.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let o=[];n={...a},n=n.replace&&!$t(n.replace)?n.replace:n,n.applyPostProcessor=!1,delete n.defaultValue;const l=/{.*}/.test(r[1])?r[1].lastIndexOf("}")+1:r[1].indexOf(this.formatSeparator);if(-1!==l&&(o=r[1].slice(l).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),r[1]=r[1].slice(0,l)),s=t(i.call(this,r[1].trim(),n),n),s&&r[0]===e&&!$t(s))return s;$t(s)||(s=Vt(s)),s||(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),s=""),o.length&&(s=o.reduce((e,t)=>this.format(e,t,a.lng,{...a,interpolationkey:r[1].trim()}),s.trim())),e=e.replace(r[0],s),this.regexp.lastIndex=0}return e}}const Na=e=>{const t={};return(a,r,s)=>{let n=s;s&&s.interpolationkey&&s.formatParams&&s.formatParams[s.interpolationkey]&&s[s.interpolationkey]&&(n={...n,[s.interpolationkey]:void 0});const i=r+JSON.stringify(n);let o=t[i];return o||(o=e(aa(r),s),t[i]=o),o(a)}},wa=e=>(t,a,r)=>e(aa(a),r)(t);class ka{constructor(e={}){this.logger=na.create("formatter"),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||",";const a=t.cacheInBuiltFormats?Na:wa;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()]=Na(t)}format(e,t,a,r={}){const s=t.split(this.formatSeparator);if(s.length>1&&s[0].indexOf("(")>1&&s[0].indexOf(")")<0&&s.find(e=>e.indexOf(")")>-1)){const e=s.findIndex(e=>e.indexOf(")")>-1);s[0]=[s[0],...s.splice(1,e)].join(this.formatSeparator)}return s.reduce((e,t)=>{const{formatName:s,formatOptions:n}=(e=>{let t=e.toLowerCase().trim();const a={};if(e.indexOf("(")>-1){const r=e.split("(");t=r[0].toLowerCase().trim();const s=r[1].substring(0,r[1].length-1);"currency"===t&&s.indexOf(":")<0?a.currency||(a.currency=s.trim()):"relativetime"===t&&s.indexOf(":")<0?a.range||(a.range=s.trim()):s.split(";").forEach(e=>{if(e){const[t,...r]=e.split(":"),s=r.join(":").trim().replace(/^'+|'+$/g,""),n=t.trim();a[n]||(a[n]=s),"false"===s&&(a[n]=!1),"true"===s&&(a[n]=!0),isNaN(s)||(a[n]=parseInt(s,10))}})}return{formatName:t,formatOptions:a}})(t);if(this.formats[s]){let t=e;try{const i=r?.formatParams?.[r.interpolationkey]||{},o=i.locale||i.lng||r.locale||r.lng||a;t=this.formats[s](e,o,{...n,...r,...i})}catch(i){this.logger.warn(i)}return t}return this.logger.warn(`there was no format function for ${s}`),e},e)}}class Sa extends ia{constructor(e,t,a,r={}){super(),this.backend=e,this.store=t,this.services=a,this.languageUtils=a.languageUtils,this.options=r,this.logger=na.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(a,r.backend,r)}queueLoad(e,t,a,r){const s={},n={},i={},o={};return e.forEach(e=>{let r=!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,r=!1,void 0===n[i]&&(n[i]=!0),void 0===s[i]&&(s[i]=!0),void 0===o[t]&&(o[t]=!0)))}),r||(i[e]=!0)}),(Object.keys(s).length||Object.keys(n).length)&&this.queue.push({pending:n,pendingCount:Object.keys(n).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(s),pending:Object.keys(n),toLoadLanguages:Object.keys(i),toLoadNamespaces:Object.keys(o)}}loaded(e,t,a){const r=e.split("|"),s=r[0],n=r[1];t&&this.emit("failedLoading",s,n,t),!t&&a&&this.store.addResourceBundle(s,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:r,k:s}=Ht(e,t,Object);r[s]=r[s]||[],r[s].push(a)})(a.loaded,[s],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,r=0,s=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:r,wait:s,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&&r<this.maxRetries?setTimeout(()=>{this.read.call(this,e,t,a,r+1,2*s,n)},s):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={},r){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),r&&r();$t(e)&&(e=this.languageUtils.toResolveHierarchy(e)),$t(t)&&(t=[t]);const s=this.queueLoad(e,t,a,r);if(!s.toLoad.length)return s.pending.length||r(),null;s.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("|"),r=a[0],s=a[1];this.read(r,s,"read",void 0,void 0,(a,n)=>{a&&this.logger.warn(`${t}loading namespace ${s} for language ${r} failed`,a),!a&&n&&this.logger.log(`${t}loaded namespace ${s} for language ${r}`,n),this.loaded(e,a,n)})}saveMissing(e,t,a,r,s,n={},i=()=>{}){if(!this.services?.utils?.hasLoadedNamespace||this.services?.utils?.hasLoadedNamespace(t)){if(null!=a&&""!==a){if(this.backend?.create){const l={...n,isUpdate:s},d=this.backend.create.bind(this.backend);if(d.length<6)try{let s;s=5===d.length?d(e,t,a,r,l):d(e,t,a,r),s&&"function"==typeof s.then?s.then(e=>i(null,e)).catch(i):i(null,s)}catch(o){i(o)}else d(e,t,a,r,i,l)}e&&e[0]&&this.store.addResource(e[0],t,a,r)}}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 Ca=()=>({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]),$t(e[1])&&(t.defaultValue=e[1]),$t(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}),_a=e=>($t(e.ns)&&(e.ns=[e.ns]),$t(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),$t(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),Pa=()=>{};class Ea extends ia{constructor(e={},t){var a;if(super(),this.options=_a(e),this.services={},this.logger=na,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&&($t(e.ns)?e.defaultNS=e.ns:e.ns.indexOf("translation")<0&&(e.defaultNS=e.ns[0]));const a=Ca();this.options={...a,...this.options,..._a(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 r=e=>e?"function"==typeof e?new e:e:null;if(!this.options.isClone){let e;this.modules.logger?na.init(r(this.modules.logger),this.options):na.init(null,this.options),e=this.modules.formatter?this.modules.formatter:ka;const t=new pa(this.options);this.store=new oa(this.options.resources,this.options);const s=this.services;s.logger=na,s.resourceStore=this.store,s.languageUtils=t,s.pluralResolver=new ba(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||(s.formatter=r(e),s.formatter.init&&s.formatter.init(s,this.options),this.options.interpolation.format=s.formatter.format.bind(s.formatter)),s.interpolator=new xa(this.options),s.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},s.backendConnector=new Sa(r(this.modules.backend),s.resourceStore,s,this.options),s.backendConnector.on("*",(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(s.languageDetector=r(this.modules.languageDetector),s.languageDetector.init&&s.languageDetector.init(s,this.options.detection,this.options)),this.modules.i18nFormat&&(s.i18nFormat=r(this.modules.i18nFormat),s.i18nFormat.init&&s.i18nFormat.init(this)),this.translator=new ha(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=Pa),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 s=Ut(),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),s.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),s}loadResources(e,t=Pa){let a=t;const r=$t(e)?e:this.language;if("function"==typeof e&&(a=e),!this.options.resources||this.options.partialBundledLanguages){if("cimode"===r?.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(r)t(r);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 r=Ut();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=Pa),this.services.backendConnector.reload(e,t,e=>{r.resolve(),a(e)}),r}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&&la.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=Ut();this.emit("languageChanging",e);const r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},s=(s,n)=>{n?this.isLanguageChangingTo===e&&(r(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(s,(...e)=>this.t(...e))},n=t=>{e||t||!this.services.languageDetector||(t=[]);const a=$t(t)?t:t&&t[0],n=this.store.hasLanguageSomeTranslations(a)?a:this.services.languageUtils.getBestMatchFromCodes($t(t)?[t]:t);n&&(this.language||r(n),this.translator.language||this.translator.changeLanguage(n),this.services.languageDetector?.cacheUserLanguage?.(n)),this.loadResources(n,e=>{s(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 r=(e,t,...s)=>{let n;n="object"!=typeof t?this.options.overloadTranslationOptionHandler([e,t].concat(s)):{...t},n.lng=n.lng||r.lng,n.lngs=n.lngs||r.lngs,n.ns=n.ns||r.ns,""!==n.keyPrefix&&(n.keyPrefix=n.keyPrefix||a||r.keyPrefix);const i=this.options.keySeparator||".";let o;return n.keyPrefix&&Array.isArray(e)?o=e.map(e=>("function"==typeof e&&(e=ca(e,{...this.options,...t})),`${n.keyPrefix}${i}${e}`)):("function"==typeof e&&(e=ca(e,{...this.options,...t})),o=n.keyPrefix?`${n.keyPrefix}${i}${e}`:e),this.t(o,n)};return $t(e)?r.lng=e:r.lngs=e,r.ns=t,r.keyPrefix=a,r}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],r=!!this.options&&this.options.fallbackLng,s=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)||r&&!n(s,e)))}loadNamespaces(e,t){const a=Ut();return this.options.ns?($t(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=Ut();$t(e)&&(e=[e]);const r=this.options.preload||[],s=e.filter(e=>r.indexOf(e)<0&&this.services.languageUtils.isSupportedCode(e));return s.length?(this.options.preload=r.concat(s),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 pa(Ca());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 Ea(e,t);return a.createInstance=Ea.createInstance,a}cloneInstance(e={},t=Pa){const a=e.forkResourceStore;a&&delete e.forkResourceStore;const r={...this.options,...e,isClone:!0},s=new Ea(r);void 0===e.debug&&void 0===e.prefix||(s.logger=s.logger.clone(e));if(["store","services","language"].forEach(e=>{s[e]=this[e]}),s.services={...this.services},s.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},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,r)=>(a[r]={...e[t][r]},a),e[t]),e),{});s.store=new oa(e,r),s.services.resourceStore=s.store}return s.translator=new ha(s.services,r),s.translator.on("*",(e,...t)=>{s.emit(e,...t)}),s.init(r,t),s.translator.options=r,s.translator.backendConnector.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},s}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const Ta=Ea.createInstance();function Ia(e,t){t?.stopPropagation();window.open(e,"_blank","noopener,noreferrer")||navigator.clipboard.writeText(e).then(()=>{w.info(Ta.t("link_copied"))})}function Aa(...e){return v(b(e))}Ta.createInstance,Ta.dir,Ta.init,Ta.loadResources,Ta.reloadResources,Ta.use,Ta.changeLanguage,Ta.getFixedT,Ta.t,Ta.exists,Ta.setDefaultNamespace,Ta.hasLoadedNamespace,Ta.loadNamespaces,Ta.loadLanguages;const Ra=e=>{if(null==e)return e;if("string"==typeof e)return e.trim();if(Array.isArray(e))return e.map(Ra);if("object"==typeof e&&e.constructor===Object){const t={};for(const[a,r]of Object.entries(e))t[a]=Ra(r);return t}return e},Oa=e=>{if(!e)return"";const t=y(e);if(!x(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"})}`},La=e=>null==e?"R$ 0,00":new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",minimumFractionDigits:2,maximumFractionDigits:2}).format(e),ja=(e,t)=>{let a;return(...r)=>{clearTimeout(a),a=setTimeout(()=>e(...r),t)}},Fa=e=>e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"").replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-").replace(/-+/g,"-"),Ma=g("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"}}),Da=r.forwardRef(({className:t,variant:a,size:r,asChild:s=!1,...n},i)=>e(s?f:"button",{className:Aa(Ma({variant:a,size:r,className:t})),ref:i,...n}));Da.displayName="Button";const za=s.forwardRef(({variant:t="default",className:a,children:r,...s},n)=>e(Da,{ref:n,variant:"action",size:"sm",className:Aa("h-7 px-2 text-xs",a),...s,children:r||e(S,{size:12})}));za.displayName="ActionButton";const $a=r.forwardRef(({className:t,type:a,...r},s)=>e("input",{type:a,className:Aa("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:s,...r}));$a.displayName="Input";const Ua=g("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Va=r.forwardRef(({className:t,...a},r)=>e(Ge.Root,{ref:r,className:Aa(Ua(),t),...a}));Va.displayName=Ge.Root.displayName;const qa=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("rounded-lg border bg-card text-card-foreground shadow-sm",t),...a}));qa.displayName="Card";const Ba=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("flex flex-col space-y-1.5 p-6",t),...a}));Ba.displayName="CardHeader";const Wa=r.forwardRef(({className:t,...a},r)=>e("h3",{ref:r,className:Aa("text-2xl font-semibold leading-none tracking-tight",t),...a}));Wa.displayName="CardTitle";const Ha=r.forwardRef(({className:t,...a},r)=>e("p",{ref:r,className:Aa("text-sm text-muted-foreground",t),...a}));Ha.displayName="CardDescription";const Ka=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("p-6 pt-0",t),...a}));Ka.displayName="CardContent";const Qa=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("flex items-center p-6 pt-0",t),...a}));Qa.displayName="CardFooter";const Ga=Je.Root,Ja=Je.Trigger,Xa=Je.Portal,Ya=Je.Close,Za=r.forwardRef(({className:t,...a},r)=>e(Je.Overlay,{ref:r,className:Aa("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}));Za.displayName=Je.Overlay.displayName;const er=r.forwardRef(({className:a,children:r,...s},n)=>t(Xa,{children:[e(Za,{}),t(Je.Content,{ref:n,className:Aa("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),...s,children:[r,t(Je.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(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Close"})]})]})]}));er.displayName=Je.Content.displayName;const tr=({className:t,...a})=>e("div",{className:Aa("flex flex-col space-y-1.5 text-center sm:text-left",t),...a});tr.displayName="DialogHeader";const ar=({className:t,...a})=>e("div",{className:Aa("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});ar.displayName="DialogFooter";const rr=r.forwardRef(({className:t,...a},r)=>e(Je.Title,{ref:r,className:Aa("text-lg font-semibold leading-none tracking-tight",t),...a}));rr.displayName=Je.Title.displayName;const sr=r.forwardRef(({className:t,...a},r)=>e(Je.Description,{ref:r,className:Aa("text-sm text-muted-foreground",t),...a}));sr.displayName=Je.Description.displayName;const nr=Ye,ir=r.createContext({}),or=({...t})=>e(ir.Provider,{value:{name:t.name},children:e(Ze,{...t})}),lr=()=>{const e=r.useContext(ir),t=r.useContext(dr),{getFieldState:a,formState:s}=Xe(),n=a(e.name,s);if(!e)throw new Error("useFormField should be used within <FormField>");const{id:i}=t;return{id:i,name:e.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},dr=r.createContext({}),cr=r.forwardRef(({className:t,...a},s)=>{const n=r.useId();return e(dr.Provider,{value:{id:n},children:e("div",{ref:s,className:Aa("space-y-2",t),...a})})});cr.displayName="FormItem";const ur=r.forwardRef(({className:t,...a},r)=>{const{error:s,formItemId:n}=lr();return e(Va,{ref:r,className:Aa(s&&"text-destructive",t),htmlFor:n,...a})});ur.displayName="FormLabel";const mr=r.forwardRef(({...t},a)=>{const{error:r,formItemId:s,formDescriptionId:n,formMessageId:i}=lr();return e(f,{ref:a,id:s,"aria-describedby":r?`${n} ${i}`:`${n}`,"aria-invalid":!!r,...t})});mr.displayName="FormControl";const hr=r.forwardRef(({className:t,...a},r)=>{const{formDescriptionId:s}=lr();return e("p",{ref:r,id:s,className:Aa("text-sm text-muted-foreground",t),...a})});hr.displayName="FormDescription";const pr=r.forwardRef(({className:t,children:a,...r},s)=>{const{error:n,formMessageId:i}=lr(),o=n?String(n?.message):a;return o?e("p",{ref:s,id:i,className:Aa("text-sm font-medium text-destructive",t),...r,children:o}):null});pr.displayName="FormMessage";const fr=at.Root,gr=at.Group,br=at.Value,vr=r.forwardRef(({className:a,children:r,...s},n)=>t(at.Trigger,{ref:n,className:Aa("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:[r,e(at.Icon,{asChild:!0,children:e(_,{className:"h-4 w-4 opacity-50"})})]}));vr.displayName=at.Trigger.displayName;const yr=r.forwardRef(({className:t,...a},r)=>e(at.ScrollUpButton,{ref:r,className:Aa("flex cursor-default items-center justify-center py-1",t),...a,children:e(P,{className:"h-4 w-4"})}));yr.displayName=at.ScrollUpButton.displayName;const xr=r.forwardRef(({className:t,...a},r)=>e(at.ScrollDownButton,{ref:r,className:Aa("flex cursor-default items-center justify-center py-1",t),...a,children:e(_,{className:"h-4 w-4"})}));xr.displayName=at.ScrollDownButton.displayName;const Nr=r.forwardRef(({className:a,children:r,position:s="popper",container:n,collisionBoundary:i,...o},l)=>e(at.Portal,{container:n,children:t(at.Content,{ref:l,className:Aa("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:i,...o,children:[e(yr,{}),e(at.Viewport,{className:Aa("p-1","popper"===s&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:r}),e(xr,{})]})}));Nr.displayName=at.Content.displayName;const wr=r.forwardRef(({className:t,...a},r)=>e(at.Label,{ref:r,className:Aa("py-1.5 pl-8 pr-2 text-sm font-semibold",t),...a}));wr.displayName=at.Label.displayName;const kr=r.forwardRef(({className:a,children:r,...s},n)=>t(at.Item,{ref:n,className:Aa("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("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(at.ItemIndicator,{children:e(E,{className:"h-4 w-4"})})}),e(at.ItemText,{children:r})]}));kr.displayName=at.Item.displayName;const Sr=r.forwardRef(({className:t,...a},r)=>e(at.Separator,{ref:r,className:Aa("-mx-1 my-1 h-px bg-muted",t),...a}));Sr.displayName=at.Separator.displayName;const Cr=r.forwardRef(({className:t,...a},r)=>e(rt.Root,{ref:r,className:Aa("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(rt.Indicator,{className:Aa("flex items-center justify-center text-current"),children:e(E,{className:"h-4 w-4"})})}));Cr.displayName=rt.Root.displayName;const _r=r.forwardRef(({className:t,...a},r)=>e("textarea",{className:Aa("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:r,...a}));_r.displayName="Textarea";const Pr=g("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"}}),Er=r.forwardRef(({className:t,variant:a,...r},s)=>e("div",{ref:s,className:Aa(Pr({variant:a}),t),...r}));Er.displayName="Badge";const Tr={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"};function Ir({size:t="md",className:a}){return e(T,{className:Aa("animate-spin text-muted-foreground",Tr[t],a)})}function Ar({isLoading:r,children:s,className:n,type:i="spinner",size:o="md"}){return r?"overlay"===i?t("div",{className:Aa("relative",n),children:[s,e("div",{className:"absolute inset-0 bg-background/50 backdrop-blur-sm flex items-center justify-center z-10",children:e(Ir,{size:o})})]}):e("div","skeleton"===i?{className:Aa("animate-pulse",n),children:e("div",{className:"bg-muted rounded-md h-full w-full"})}:{className:Aa("flex items-center justify-center py-8",n),children:e(Ir,{size:o})}):e(a,{children:s})}let Rr=0;const Or=new Map,Lr=e=>{if(Or.has(e))return;const t=setTimeout(()=>{Or.delete(e),Dr({type:"REMOVE_TOAST",toastId:e})},1e6);Or.set(e,t)},jr=(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?Lr(a):e.toasts.forEach(e=>{Lr(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)}}},Fr=[];let Mr={toasts:[]};function Dr(e){Mr=jr(Mr,e),Fr.forEach(e=>{e(Mr)})}function zr({...e}){const t=(Rr=(Rr+1)%Number.MAX_SAFE_INTEGER,Rr.toString()),a=()=>Dr({type:"DISMISS_TOAST",toastId:t});return Dr({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:e=>{e||a()}}}),{id:t,dismiss:a,update:e=>Dr({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function $r(){const[e,t]=r.useState(Mr);return r.useEffect(()=>(Fr.push(t),()=>{const e=Fr.indexOf(t);e>-1&&Fr.splice(e,1)}),[e]),{...e,toast:zr,dismiss:e=>Dr({type:"DISMISS_TOAST",toastId:e})}}const Ur=st.Provider,Vr=r.forwardRef(({className:t,...a},r)=>e(st.Viewport,{ref:r,className:Aa("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}));Vr.displayName=st.Viewport.displayName;const qr=g("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"}}),Br=r.forwardRef(({className:t,variant:a,...r},s)=>e(st.Root,{ref:s,className:Aa(qr({variant:a}),t),...r}));Br.displayName=st.Root.displayName;const Wr=r.forwardRef(({className:t,...a},r)=>e(st.Action,{ref:r,className:Aa("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}));Wr.displayName=st.Action.displayName;const Hr=r.forwardRef(({className:t,...a},r)=>e(st.Close,{ref:r,className:Aa("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(C,{className:"h-4 w-4"})}));Hr.displayName=st.Close.displayName;const Kr=r.forwardRef(({className:t,...a},r)=>e(st.Title,{ref:r,className:Aa("text-sm font-semibold",t),...a}));Kr.displayName=st.Title.displayName;const Qr=r.forwardRef(({className:t,...a},r)=>e(st.Description,{ref:r,className:Aa("text-sm opacity-90",t),...a}));function Gr(){const{toasts:a}=$r();return t(Ur,{children:[a.map(function({id:a,title:r,description:s,action:n,...i}){return t(Br,{...i,children:[t("div",{className:"grid gap-1",children:[r&&e(Kr,{children:r}),s&&e(Qr,{children:s})]}),n,e(Hr,{})]},a)}),e(Vr,{})]})}Qr.displayName=st.Description.displayName;const Jr=nt.Root,Xr=nt.Trigger,Yr=r.forwardRef(({className:t,align:a="center",sideOffset:r=4,container:s,...n},i)=>e(nt.Portal,{container:s,children:e(nt.Content,{ref:i,align:a,sideOffset:r,className:Aa("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})}));Yr.displayName=nt.Content.displayName;const Zr=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...a}));Zr.displayName="Command";const es=({children:t,...a})=>e("div",{...a,children:e(Zr,{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})}),ts=r.forwardRef(({className:t,...a},r)=>e("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:e("input",{ref:r,className:Aa("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})}));ts.displayName="CommandInput";const as=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("max-h-[300px] overflow-y-auto overflow-x-hidden",t),...a}));as.displayName="CommandList";const rs=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("py-6 text-center text-sm text-muted-foreground",t),...a}));rs.displayName="CommandEmpty";const ss=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("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}));ss.displayName="CommandGroup";const ns=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("-mx-1 h-px bg-border",t),...a}));ns.displayName="CommandSeparator";const is=r.forwardRef(({className:t,disabled:a,onSelect:r,value:s,...n},i)=>e("div",{ref:i,className:Aa("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&&r?.(s||""),...n}));is.displayName="CommandItem";const os=({className:t,...a})=>e("span",{className:Aa("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});function ls({className:t,...a}){return e("div",{className:Aa("animate-pulse rounded-md bg-muted",t),...a})}os.displayName="CommandShortcut";const ds={},cs=(e,t,a,r)=>{ps(a)&&ds[a]||(ps(a)&&(ds[a]=new Date),((e,t,a,r)=>{const s=[a,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(s,"warn","react-i18next::",!0);ps(s[0])&&(s[0]=`react-i18next:: ${s[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...s):console})(e,t,a,r))},us=(e,t)=>()=>{if(e.isInitialized)t();else{const a=()=>{setTimeout(()=>{e.off("initialized",a)},0),t()};e.on("initialized",a)}},ms=(e,t,a)=>{e.loadNamespaces(t,us(e,a))},hs=(e,t,a,r)=>{if(ps(a)&&(a=[a]),e.options.preload&&e.options.preload.indexOf(t)>-1)return ms(e,a,r);a.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,us(e,r))},ps=e=>"string"==typeof e,fs=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,gs={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},bs=e=>gs[e];let vs={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:e=>e.replace(fs,bs)};let ys;const xs={type:"3rdParty",init(e){((e={})=>{vs={...vs,...e}})(e.options.react),(e=>{ys=e})(e)}},Ns=n();class ws{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var ks,Ss={exports:{}},Cs={};var _s,Ps,Es={};
|
|
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 Ts=(Ps||(Ps=1,"production"===process.env.NODE_ENV?Ss.exports=function(){if(ks)return Cs;ks=1;var e=s,t="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},a=e.useState,r=e.useEffect,n=e.useLayoutEffect,i=e.useDebugValue;function o(e){var a=e.getSnapshot;e=e.value;try{var r=a();return!t(e,r)}catch(s){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 s=t(),l=a({inst:{value:s,getSnapshot:t}}),d=l[0].inst,c=l[1];return n(function(){d.value=s,d.getSnapshot=t,o(d)&&c({inst:d})},[e,s,t]),r(function(){return o(d)&&c({inst:d}),e(function(){o(d)&&c({inst:d})})},[e]),i(s),s};return Cs.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:l,Cs}():Ss.exports=(_s||(_s=1,"production"!==process.env.NODE_ENV&&function(){function e(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!a(e,r)}catch(s){return!0}}"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=s,a="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=t.useState,n=t.useEffect,i=t.useLayoutEffect,o=t.useDebugValue,l=!1,d=!1,c="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(s,c){l||void 0===t.startTransition||(l=!0);var u=c();if(!d){var m=c();a(u,m)||(d=!0)}var h=(m=r({inst:{value:u,getSnapshot:c}}))[0].inst,p=m[1];return i(function(){h.value=u,h.getSnapshot=c,e(h)&&p({inst:h})},[s,u,c]),n(function(){return e(h)&&p({inst:h}),s(function(){e(h)&&p({inst:h})})},[s]),o(u),u};Es.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:c,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Es)),Ss.exports);const Is={t:(e,t)=>{return ps(t)?t:"object"==typeof(a=t)&&null!==a&&ps(t.defaultValue)?t.defaultValue:Array.isArray(e)?e[e.length-1]:e;var a},ready:!1},As=()=>()=>{},Rs=(e,t={})=>{const{i18n:a}=t,{i18n:r,defaultNS:s}=i(Ns)||{},n=a||r||ys;n&&!n.reportNamespaces&&(n.reportNamespaces=new ws),n||cs(n,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const m=o(()=>({...vs,...n?.options?.react,...t}),[n,t]),{useSuspense:h,keyPrefix:p}=m,f=e||s||n?.options?.defaultNS,g=ps(f)?[f]:f||["translation"],b=o(()=>g,g);n?.reportNamespaces?.addUsedNamespaces?.(b);const v=l(0),y=d(e=>{if(!n)return As;const{bindI18n:t,bindI18nStore:a}=m,r=()=>{v.current+=1,e()};return t&&n.on(t,r),a&&n.store.on(a,r),()=>{t&&t.split(" ").forEach(e=>n.off(e,r)),a&&a.split(" ").forEach(e=>n.store.off(e,r))}},[n,m]),x=l(),N=d(()=>{if(!n)return Is;const e=!(!n.isInitialized&&!n.initializedStoreOnce)&&b.every(e=>((e,t,a={})=>t.languages&&t.languages.length?t.hasLoadedNamespace(e,{lng:a.lng,precheck:(t,r)=>{if(a.bindI18n&&a.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}):(cs(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0))(e,n,m)),a=t.lng||n.language,r=v.current,s=x.current;if(s&&s.ready===e&&s.lng===a&&s.keyPrefix===p&&s.revision===r)return s;const i={t:n.getFixedT(a,"fallback"===m.nsMode?b:b[0],p),ready:e,lng:a,keyPrefix:p,revision:r};return x.current=i,i},[n,b,p,m,t.lng]),[w,k]=c(0),{t:S,ready:C}=Ts.useSyncExternalStore(y,N,N);u(()=>{if(n&&!C&&!h){const e=()=>k(e=>e+1);t.lng?hs(n,t.lng,b,e):ms(n,b,e)}},[n,t.lng,b,C,h,w]);const _=n||{},P=l(null),E=l(),T=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(r){}return a},I=o(()=>{const e=_,t=e?.language;let a=e;e&&(P.current&&P.current.__original===e?E.current!==t?(a=T(e),P.current=a,E.current=t):a=P.current:(a=T(e),P.current=a,E.current=t));const r=[S,a,C];return r.t=S,r.i18n=a,r.ready=C,r},[S,_,C,_.resolvedLanguage,_.language,_.languages]);if(n&&h&&!C)throw new Promise(e=>{const a=()=>e();t.lng?hs(n,t.lng,b,a):ms(n,b,a)});return I};function Os({i18n:e,defaultNS:t,children:a}){const r=o(()=>({i18n:e,defaultNS:t}),[e,t]);return m(Ns.Provider,{value:r},a)}const Ls=e=>e.normalize("NFD").replace(/\p{Diacritic}/gu,"").toLowerCase();function js({multiple:a,options:r,value:s,onChange:n,getOptionValue:i,getOptionLabel:l,placeholder:d,label:u,icon:m,emptyMessage:h,searchPlaceholder:p,disabled:f,required:g,className:b,sortOptions:v,maxDisplayedBadges:y,popoverContainer:x,onOpen:N,onClose:w}){const{t:k}=Rs(),[S,P]=c(!1),[T,I]=c(""),A=o(()=>s?Array.isArray(s)?s:[s]:[],[s]),R=o(()=>{if(!x)return;let e=x,t=0;try{for(;e&&t<3;){const a=window.getComputedStyle(e),r=a.overflowY||a.overflow;if(!r||"visible"===r||"unset"===r)break;e=e.parentElement,t++}}catch{}return e??void 0},[x]),O=o(()=>{const e=r.map(e=>({original:e,value:i(e),label:l(e)}));return v?e.sort((e,t)=>e.label.localeCompare(t.label,"pt-BR",{sensitivity:"base"})):e},[r,i,l,v]),L=o(()=>{if(!T)return O;const e=Ls(T);return O.filter(t=>Ls(t.label).includes(e))},[O,T]),j=o(()=>O.filter(e=>A.includes(e.value)),[O,A]),F=(e,t)=>{t.preventDefault(),t.stopPropagation(),n&&n(a?A.filter(t=>t!==e):"")},M=y?j.slice(0,y):j,D=y&&j.length>y?j.length-y:0;return t("div",{className:Aa("space-y-2",b),children:[u&&t(Va,{children:[u,g&&e("span",{className:"text-destructive ml-1",children:"*"})]}),t(Jr,{open:S,onOpenChange:e=>{P(e),e?N?.():(I(""),w?.())},modal:!1,children:[e(Xr,{asChild:!0,children:t(Da,{variant:"outline",role:"combobox","aria-expanded":S,disabled:f,className:Aa("w-full justify-between min-h-10 h-auto",0===j.length&&"text-muted-foreground"),children:[0===j.length?t("span",{className:"flex items-center gap-2",children:[m&&e(m,{className:"h-4 w-4"}),d]}):a?t("div",{className:"flex flex-wrap gap-1.5 flex-1 mr-2",children:[M.map(a=>t(Er,{variant:"secondary",className:"gap-1 pr-1",children:[a.label,e("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&&F(a.value,e)},onMouseDown:e=>{e.preventDefault(),e.stopPropagation()},onClick:e=>F(a.value,e),children:e(C,{className:"h-3 w-3 text-muted-foreground hover:text-foreground"})})]},a.value)),D>0&&t(Er,{variant:"outline",className:"gap-1",children:["+",D]})]}):t("span",{className:"flex items-center gap-2",children:[m&&e(m,{className:"h-4 w-4"}),j[0]?.label]}),e(_,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),e(Yr,{className:"w-full p-0 bg-popover z-[60]",align:"start",container:R,collisionBoundary:R,children:t(Zr,{children:[e(ts,{placeholder:p,value:T,onChange:e=>I(e.target.value)}),e(as,{children:0===r.length?e(rs,{children:h}):0===L.length?e(rs,{children:k("no_results")}):e(ss,{children:L.map(r=>t(is,{value:r.value,onSelect:()=>(e=>{if(n)if(a){const t=A.includes(e)?A.filter(t=>t!==e):[...A,e];n(t)}else n(e),P(!1)})(r.value),className:"cursor-pointer",children:[e(E,{className:Aa("mr-2 h-4 w-4",A.includes(r.value)?"opacity-100":"opacity-0")}),r.label]},r.value))})})]})})]})]})}function Fs({multiple:a=!1,options:r,items:s,value:n,onChange:i,onValueChange:o,getOptionValue:l=e=>e.value,getOptionLabel:d=e=>e.label,placeholder:c,label:u,icon:m,emptyMessage:h,searchPlaceholder:p,disabled:f=!1,required:g=!1,isLoading:b=!1,error:v,className:y,sortOptions:x=!0,maxDisplayedBadges:N,popoverContainer:w,onOpen:k,onClose:S}){const{t:C}=Rs(),_=s||r||[],P=o||i,E=c||C("select_placeholder"),T=h||C("no_results"),A=p||C("search_placeholder");if(b)return t("div",{className:Aa("space-y-2",y),children:[u&&t(Va,{children:[u,g&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(ls,{className:"h-10 w-full"})]});const R="string"==typeof v?v:v instanceof Error?v.message:v?"Erro ao carregar dados":void 0;return R?t("div",{className:Aa("space-y-2",y),children:[u&&t(Va,{children:[u,g&&e("span",{className:"text-destructive ml-1",children:"*"})]}),t("div",{className:"flex items-center gap-2 p-3 border border-destructive rounded-md bg-destructive/10 text-destructive",children:[e(I,{className:"h-4 w-4"}),e("span",{className:"text-sm",children:R})]})]}):e(js,{multiple:a,options:_,value:n||(a?[]:""),onChange:P,getOptionValue:l,getOptionLabel:d,placeholder:E,label:u,icon:m,emptyMessage:T,searchPlaceholder:A,disabled:f,required:g,className:y,sortOptions:x,maxDisplayedBadges:N,popoverContainer:w,onOpen:k,onClose:S})}var Ms=Object.defineProperty;class Ds{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 s=e.split(".");if(3!==s.length)return null;const n=s[1];n.length,this.LARGE_PAYLOAD_THRESHOLD;try{const e=this.normalizeBase64Url(n),t=atob(e),a=new Uint8Array(t.length);for(let s=0;s<t.length;s++)a[s]=t.charCodeAt(s);const r=new TextDecoder("utf-8").decode(a);return JSON.parse(r)}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(r){throw r}}}}catch(s){return null}}static validateTokens(e,t){const a=[],r=[];try{t.split(".")[1],e.split(".")[1];const s=this.parseJwtPayload(t),n=this.parseJwtPayload(e);if(!s){const e="ID token decode falhou - possível problema com base64url encoding";return r.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:a,errors:r}}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(s.exp&&s.exp<o){const e="ID token expirado - autenticação inválida";return r.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:i,warnings:a,errors:r}}return{isValid:!0,idTokenValid:!0,accessTokenValid:i,warnings:a,errors:r}}catch(s){const e=`Erro na validação de tokens: ${s}`;return r.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:a,errors:r}}}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?Ms(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a})(Ds,"LARGE_PAYLOAD_THRESHOLD"+"",1e3);const zs="qualiex_access_token",$s="qualiex_id_token",Us="supabase_token",Vs="oauth_state",qs="oauth_nonce",Bs="selected_alias",Ws="manual_logout",Hs={setAccessToken:e=>localStorage.setItem(zs,e),getAccessToken:()=>localStorage.getItem(zs),setIdToken:e=>localStorage.setItem($s,e),getIdToken:()=>localStorage.getItem($s),getSupabaseToken:()=>localStorage.getItem(Us),setOAuthState:e=>sessionStorage.setItem(Vs,e),getOAuthState:()=>sessionStorage.getItem(Vs),clearOAuthState:()=>sessionStorage.removeItem(Vs),setOAuthNonce:e=>sessionStorage.setItem(qs,e),getOAuthNonce:()=>sessionStorage.getItem(qs),clearOAuthNonce:()=>sessionStorage.removeItem(qs),setSelectedAlias:e=>localStorage.setItem(Bs,e),getSelectedAlias:()=>localStorage.getItem(Bs),clearSelectedAlias:()=>localStorage.removeItem(Bs),generateOAuthState:()=>"Lw==",generateOAuthNonce:()=>{const e=new Uint8Array(32);return crypto.getRandomValues(e),btoa(String.fromCharCode(...e)).replace(/[+/=]/g,"")},hasAllTokens:()=>!(!Hs.getAccessToken()||!Hs.getIdToken()),setSupabaseToken:e=>{localStorage.setItem(Us,e),Hs._clearValidationCache()},areAllTokensValid:()=>{const e=Hs.getAccessToken(),t=Hs.getIdToken();if(!e||!t)return!1;try{const a=Ds.validateTokens(e,t);return!!a.idTokenValid&&a.idTokenValid}catch(a){return!1}},clearExpiredTokens:()=>{let e=!1;const t=Hs.getAccessToken(),a=Hs.getIdToken(),r=Hs.getSupabaseToken();return t&&Hs.isTokenExpired(t)&&(localStorage.removeItem(zs),e=!0),a&&Hs.isTokenExpired(a)&&(localStorage.removeItem($s),e=!0),r&&Hs.isTokenExpired(r)&&(localStorage.removeItem(Us),e=!0),e},clearAll:()=>{localStorage.removeItem(zs),localStorage.removeItem($s),localStorage.removeItem(Us),localStorage.removeItem(Bs),localStorage.removeItem(Ws),sessionStorage.removeItem(Vs),sessionStorage.removeItem(qs)},setManualLogout:()=>localStorage.setItem(Ws,"true"),isManualLogout:()=>"true"===localStorage.getItem(Ws),clearManualLogout:()=>localStorage.removeItem(Ws),isTokenExpired:e=>{try{return Ds.isTokenExpired(e)}catch{return!0}},_validationCache:{isValid:!1,timestamp:0,cacheValidityMs:3e5},_clearValidationCache:()=>{Hs._validationCache.isValid=!1,Hs._validationCache.timestamp=0},isSupabaseTokenValid:()=>{const e=Hs.getSupabaseToken();if(!e)return!1;if(Hs.isTokenExpired(e))return Hs._clearValidationCache(),Hs._handleExpiredToken(),!1;const t=Date.now();return t-Hs._validationCache.timestamp<Hs._validationCache.cacheValidityMs?Hs._validationCache.isValid:(Hs._validationCache.isValid=!0,Hs._validationCache.timestamp=t,!0)},getValidSupabaseToken:()=>Hs.isSupabaseTokenValid()?Hs.getSupabaseToken():null,_handleExpiredToken:()=>{Hs.clearAll(),"undefined"!=typeof window&&(window.location.href="/")},extractTokenData:()=>{if(!Hs.isSupabaseTokenValid())return null;const e=Hs.getSupabaseToken();if(!e)return null;try{const t=Ds.parseJwtPayload(e);if(!t)return null;const a=t.alias||t.default||t.user_alias,r=t.place_id||null,s=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 r=t[e];if(r&&"string"==typeof r){const e=r.split(";");if(e.length>7&&e[0]===a){n=e[7];break}}}return{alias:a,companyId:n,placeId:r,placeName:s,payload:t}}catch(t){return Hs._handleExpiredToken(),null}},getCompanyId:e=>{const t=Hs.getAccessToken();if(t)try{const a=Ds.parseJwtPayload(t);if(a)for(const t in a)if(t.startsWith("co")&&/^co\d+$/.test(t)){const r=a[t];if(r&&"string"==typeof r){const t=r.split(";");if(e&&t.length>7&&t[0]===e)return t[7];if(!e&&t.length>7)return t[7]}}}catch(s){}const a=Hs.extractTokenData();if(a?.companyId)return a.companyId;const r=Hs.getIdToken();if(r)try{const t=Ds.parseJwtPayload(r);if(t)for(const a in t)if(a.startsWith("co")&&/^co\d+$/.test(a)){const r=t[a];if(r&&"string"==typeof r){const t=r.split(";");if(e&&t.length>7&&t[0]===e)return t[7];if(!e&&t.length>7)return t[7]}}}catch(s){}return null},getCurrentCompanyId:()=>{const e=Hs.extractTokenData();return e?.companyId||null},getAllCompaniesData:()=>{const e=Hs.getIdToken();if(!e)return[];try{const t=Ds.parseJwtPayload(e);if(!t)return[];const a=[];for(const e in t)if(e.startsWith("co")&&/^co\d+$/.test(e)){const r=t[e];if(r&&"string"==typeof r){const e=r.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 Ks=Object.defineProperty,Qs=(e,t,a)=>((e,t,a)=>t in e?Ks(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const Gs=new class{constructor(){Qs(this,"errors",[]),Qs(this,"toastCount",0),Qs(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()){zr({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){zr({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 Js=Object.defineProperty,Xs=(e,t,a)=>((e,t,a)=>t in e?Js(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const Ys=import.meta.env.VITE_SUPABASE_URL,Zs=import.meta.env.VITE_SUPABASE_PUBLISHABLE_KEY,en=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:Zs};e&&this.isTokenValid(e)&&(t.Authorization=`Bearer ${e}`);return it(Ys,Zs,{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=Hs.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 Gs.handleError(t instanceof Error?t:"❌ Supabase - Error validating token",!1),!1}}};Xs(en,"instance");let tn=en;function an(){return tn.getInstance().getClient()}class rn{static async generateToken(e,t,a,r=!1){try{if(!r){const e=Hs.getSupabaseToken();if(e&&Hs.isSupabaseTokenValid())return e}const s=an(),{data:n,error:i}=await s.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?(Hs.setSupabaseToken(n.access_token),n.access_token):null}catch(s){return s instanceof Error&&(s.message.includes("401")||s.message.includes("Unauthorized"))&&a?.(),null}}}var sn=Object.defineProperty,nn=(e,t,a)=>((e,t,a)=>t in e?sn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);class on{static setLogoutCallback(e){this.onLogoutCallback=e}static async attemptRegeneration(){if(this.isRegenerating)return null;this.isRegenerating=!0;try{const e=Hs.getAccessToken(),t=Hs.getSelectedAlias();if(!e||!t)return null;const a=await rn.generateToken(e,t,this.onLogoutCallback||void 0,!1);return a?(Hs.setSupabaseToken(a),a):null}catch(e){return null}finally{this.isRegenerating=!1}}}nn(on,"isRegenerating",!1),nn(on,"onLogoutCallback",null);class ln{static handleError(e){if(!e)return!1;const t=e.message||e.toString();return!!this.isAuthenticationError(e,t)&&(Hs.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 dn=Object.defineProperty;class cn{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 on.attemptRegeneration()?(this.isRetrying=!1,!0):(ln.handleError(e),this.isRetrying=!1,!1)}catch(r){return ln.handleError(e),this.isRetrying=!1,!1}}return!1}static validateToken(){const e=Hs.getAccessToken();return e?Hs.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?dn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a})(e,t+"",a)})(cn,"isRetrying",!1);var un=Object.defineProperty,mn=(e,t,a)=>((e,t,a)=>t in e?un(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,t+"",a);const hn=new class{constructor(){mn(this,"baseUrl",import.meta.env.VITE_QUALIEX_API_URL)}async makeApiCall(e,t,a){const r=cn.validateToken();if(!r.valid)throw new Error(r.message||"Token inválido");const s=Hs.getAccessToken();if(!s)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 ${s}`,"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 r=a;if(a.data)r=a.data;else{if(!Array.isArray(a))return Gs.handleError("[QualiexApi] Formato de resposta inesperado",!1),[];r=a}if(!Array.isArray(r))return Gs.handleError("[QualiexApi] Resposta não é um array",!1),[];return r.map(this.mapToQualiexUser)}catch(a){if(await cn.handleApiError(a))try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"active"},e);let r=a;if(a.data)r=a.data;else{if(!Array.isArray(a))return Gs.handleError("[QualiexApi] Formato de resposta inesperado após retry",!1),[];r=a}return Array.isArray(r)?r.map(this.mapToQualiexUser):(Gs.handleError("[QualiexApi] Resposta não é um array após retry",!1),[])}catch(r){return Gs.handleError(r instanceof Error?r:"Erro ao buscar usuários após renovação de token",!0),[]}const s=a instanceof Error?a.message:"Erro ao buscar usuários da API Qualiex";return Gs.handleError(s,!0),[]}}async fetchUserById(e,t,a){try{return(await this.fetchUsers(t,a)).find(t=>t.userId===e)||null}catch(r){return Gs.handleError(r instanceof Error?r:"[QualiexApi] Error fetching user by ID"),null}}async fetchActiveUsersMap(e,t){const a=await this.fetchUsers(e,t),r=new Map;return a.forEach(e=>{r.set(e.userId,e)}),r}async fetchAllUsers(e,t){try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"all"},e);let r=a;if(a.data)r=a.data;else{if(!Array.isArray(a))return Gs.handleError("[QualiexApi] Formato de resposta inesperado",!1),[];r=a}return Array.isArray(r)?r.map(this.mapToQualiexUser):(Gs.handleError("[QualiexApi] Resposta não é um array",!1),[])}catch(a){if(await cn.handleApiError(a))try{const a=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:t,search:"",filterStatus:"all"},e);let r=a;if(a.data)r=a.data;else{if(!Array.isArray(a))return Gs.handleError("[QualiexApi] Formato de resposta inesperado após retry",!1),[];r=a}return Array.isArray(r)?r.map(this.mapToQualiexUser):(Gs.handleError("[QualiexApi] Resposta não é um array após retry",!1),[])}catch(r){return Gs.handleError(r instanceof Error?r:"Erro ao buscar usuários após renovação de token",!0),[]}return Gs.handleError(a instanceof Error?a.message:"Erro ao buscar usuários da API Qualiex",!0),[]}}async getUsers(e){const t=Hs.extractTokenData();return t&&t.companyId?this.fetchUsers(e,t.companyId):[]}async getAllUsers(e){const t=Hs.extractTokenData();return t&&t.companyId?this.fetchAllUsers(e,t.companyId):[]}},pn={oauth:{authUrl:import.meta.env.VITE_OAUTH_AUTH_URL,clientId:import.meta.env.VITE_OAUTH_CLIENT_ID,responseType:"id_token token",scope:"openid profile email"}},fn={pagination:{defaultPageSize:25,pageSizeOptions:[10,25,50,100]},sorting:{defaultField:"updated_at",defaultDirection:"desc"}},gn={debounceDelay:500},bn=()=>{const e=window.location.origin;return e.includes("localhost")||e.includes("127.0.0.1")||e.includes("id-preview")||e.includes("lovable.dev")||import.meta.env.DEV},vn={crud:e=>[e],list:(e,t)=>[e,"list",t],detail:(e,t)=>[e,"detail",t]},yn={userNameFieldSuffix:"_name",userEmailFieldSuffix:"_email",userUsernameFieldSuffix:"_username"},xn=()=>yn,Nn={isQualiex:"true"===import.meta.env.VITE_IS_QUALIEX},wn={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 kn(e,t){const a=xn(),r=t||a.userNameFieldSuffix||"_name";return e.endsWith("_id")?e.replace(/_id$/,r):`${e}${r}`}function Sn(e,t){const a=xn(),r=t||a.userEmailFieldSuffix||"_email";return e.endsWith("_id")?e.replace(/_id$/,r):`${e}${r}`}function Cn(e,t){const a=xn(),r=t||a.userUsernameFieldSuffix||"_username";return e.endsWith("_id")?e.replace(/_id$/,r):`${e}${r}`}function _n(e,t){return t&&t.length>0?t.map(e=>({idField:e.idField,nameField:e.nameField||kn(e.idField),emailField:e.emailField||Sn(e.idField),usernameField:e.usernameField||Cn(e.idField)})):e&&e.length>0?e.map(e=>({idField:e,nameField:kn(e),emailField:Sn(e),usernameField:Cn(e)})):[{idField:"id_user",nameField:"responsible_name"}]}const Pn=new Map;class En{static async fetchQualiexUsers(e,t){const a=`${t}_${e}`,r=Pn.get(a);if(r&&Date.now()-r.timestamp<3e5)return r.users;const s=await hn.fetchUsers(e,t);return Pn.set(a,{users:s,timestamp:Date.now()}),s}static extractUserIds(e,t){const a=new Set;for(const r of e)for(const e of t){const t=r[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 r={...e};for(const s of t){const t=e[s.idField];if(!t)continue;const n=a.get(t);if(n){if(s.nameField){r[s.nameField]||(r[s.nameField]=n.userName||n.displayName||null)}if(s.emailField){r[s.emailField]||(r[s.emailField]=n.userEmail||null)}if(s.usernameField){r[s.usernameField]||(r[s.usernameField]=n.userName||null)}}}return r}static async enrichWithUserData(e,t){if(!Array.isArray(e)||0===e.length)return e;try{if(!Hs.areAllTokensValid())return e;const a=Hs.extractTokenData();if(!a)return e;const{alias:r,companyId:s}=a;if(!r||!s)return e;const n=_n(t.userIdFields,t.userFieldsMapping);if(0===this.extractUserIds(e,n).size)return e;const i=await this.fetchQualiexUsers(r,s),o=this.indexUsers(i);return e.map(e=>this.enrichEntity(e,n,o))}catch(a){return Gs.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 Tn=["responsible_name"],In=e=>Tn.includes(e);function An(e,t,a){const r="string"==typeof e?{tableName:e,searchFields:t||[],schemaName:a||"common"}:{searchFields:e.searchFields||[],schemaName:e.schemaName||"common",...e},{tableName:s,searchFields:n,selectFields:i,schemaName:o,entityName:l,enableQualiexEnrichment:d=!1}=r,c=()=>{if(!Hs.getValidSupabaseToken())throw new Error("Token de autenticação expirado. Faça login novamente.");return an().schema(o).from(s)},u=(e,t,a,r)=>{let s=c().select(i||"*",{count:"exact"});s=s.eq("is_removed",!1),Object.entries(r).forEach(([e,t])=>{void 0!==t&&""!==t&&(Array.isArray(t)?s=s.in(e,t):"object"==typeof t&&t&&"operator"in t?"not_null"===t.operator?s=s.not(e,"is",null):"is_null"===t.operator&&(s=s.is(e,null)):null!==t&&(s=s.eq(e,t)))}),s=((e,t)=>{if(t&&n.length>0){const a=n.map(e=>`${e}.ilike.%${t}%`).join(",");return e.or(a)}return e})(s,e);const o=t.includes(".");return o||In(t)||(s=s.order(t,{ascending:"asc"===a})),{query:s,isForeignKey:o}},m=async(e,t,a,s,n)=>{const i=_n(r.userIdFields,r.userFieldsMapping).some(e=>e.nameField===t||e.emailField===t||e.usernameField===t),o=t.includes(".");if(In(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 En.enrichWithUserData(i.data,{entityName:l,userIdFields:r.userIdFields,userFieldsMapping:r.userFieldsMapping});let c;c=o?d.sort((e,r)=>{const s=t.split(".").reduce((e,t)=>e?.[t],e)||"",n=t.split(".").reduce((e,t)=>e?.[t],r)||"",i=String(s).localeCompare(String(n),"pt-BR");return"asc"===a?i:-i}):((e,t,a)=>[...e].sort((e,r)=>{const s=e[t]||"",n=r[t]||"",i=s.localeCompare(n,"pt-BR",{sensitivity:"base"});return"asc"===a?i:-i}))(d,t,a);const u=((e,t=1,a=25)=>{const r=(t-1)*a,s=r+a,n=e.slice(r,s);return{data:n,pagination:{currentPage:t,totalPages:Math.ceil(e.length/a),totalItems:n.length,totalCount:e.length,itemsPerPage:a,hasNextPage:s<e.length,hasPreviousPage:t>1}}})(c,s,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 En.enrichWithUserData(e,{entityName:l,userIdFields:r.userIdFields,userFieldsMapping:r.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:r="desc",page:s=1,limit:n=25,...i}=e;return{search:t,sortField:a,sortDirection:r,page:s,limit:n,additionalFilters:i}})(e),{query:h}=u(t,a,n,c),p=((e,t,a)=>{const r=(t-1)*a,s=r+a-1;return e.range(r,s)})(h,i,o),{data:f,error:g,count:b}=await p;if(g)throw new Error(`Error fetching ${s}: ${g.message}`);let v=((e,t,a,r)=>{const s=Math.ceil((t||0)/r);return{data:e,currentPage:a,totalPages:s,totalItems:t||0,itemsPerPage:r,hasNextPage:a<s,hasPreviousPage:a>1}})(f||[],b,i,o);if((e=>{if(!d||!l||0===e.length)return!1;const t=_n(r.userIdFields,r.userFieldsMapping);return e.some(e=>t.some(t=>e[t.idField]))})(v.data)){const e=await m(v.data,a,n,i,o);if(!Array.isArray(e))return e;v={...v,data:e}}return v},async getById(e){const{data:t,error:a}=await c().select(i||"*").eq("id",e).maybeSingle();if(a)throw new Error(`Error fetching ${s}: ${a.message}`);return t},async create(e){const t=Ra(e),a=Object.entries(t).reduce((e,[t,a])=>(void 0!==a&&(e[t]=a),e),{}),{data:r,error:n}=await c().insert(a).select().single();if(n)throw new Error(`Error creating ${s}: ${n.message}`);if(!r)throw new Error(`No data returned from create ${s} operation`);return r},async update(e,t){const a={...Ra(t),updated_at:(new Date).toISOString()},{data:r,error:n}=await c().update(a).eq("id",e).select().single();if(n)throw new Error(`Error updating ${s}: ${n.message}`);if(!r)throw new Error(`No data returned from update ${s} operation`);return r},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 ${s}: ${a.message}`)}}}const Rn=()=>{Hs.clearManualLogout()},On=e=>e?.placeId||null,Ln=e=>e?.placeName||null,jn=e=>({placeId:On(e),placeName:Ln(e)}),Fn=class{static async initialize(){try{if(!Hs.hasAllTokens()||!Hs.areAllTokensValid())return Hs.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=Hs.getAccessToken(),a=Hs.getIdToken();Rn();const r=this.extractUserFromIdToken(a),s=this.extractCompaniesFromIdToken(a),n=this.extractAliasFromAccessToken(t),i=Hs.extractTokenData(),o=i?.alias;let l=null;if(o&&s.some(e=>e.alias===o))l=o;else{const e=Hs.getSelectedAlias(),t=e&&s.some(t=>t.alias===e);l=t?e:n||s[0]?.alias||null}!Hs.isSupabaseTokenValid()&&l&&await on.attemptRegeneration();let d=null;if(l){const e=Hs.getCompanyId(l),t=s.find(e=>e.alias===l);t&&(d={id:e||t.id,name:t.name,alias:t.alias})}let c=null,u=null;if(r?.id&&l){const t=Hs.getCompanyId(l);if(t)try{const e=(await hn.fetchActiveUsersMap(l,t)).get(r.id);if(e){const t=jn(e);c=t.placeId,u=t.placeName}}catch(e){}}return{isAuthenticated:!0,isLoading:!1,user:r,alias:l,companies:s,selectedUnit:d,userId:r?.id||null,userAlias:r?.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=an(),{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 r=new URL("/callback",window.location.origin);return r.hash=`access_token=${t.access_token}&id_token=${t.id_token}&token_type=bearer`,window.location.href=r.toString(),!0}catch(e){return!1}}static loginProd(){const e=Hs.generateOAuthState();Hs.setOAuthState(e);const t=Hs.generateOAuthNonce();Hs.setOAuthNonce(t);const a=`${window.location.origin}/callback`,r=new URL(pn.oauth.authUrl);r.searchParams.set("client_id",pn.oauth.clientId),r.searchParams.set("response_type",pn.oauth.responseType),r.searchParams.set("scope",pn.oauth.scope),r.searchParams.set("redirect_uri",a),r.searchParams.set("state",e),r.searchParams.set("nonce",t),r.searchParams.set("response_mode","fragment"),bn(),window.location.href=r.toString()}static async processCallback(){try{if(Hs.hasAllTokens()){if(!Hs.getValidSupabaseToken()){Hs.getAccessToken();await on.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),r=a("access_token"),s=a("id_token"),n=a("error");if(n)throw new Error(`Erro OAuth: ${n}`);if(!r||!s)throw new Error("Tokens não encontrados na URL de callback");Hs.setAccessToken(r),Hs.setIdToken(s),Rn();const i=this.extractAliasFromAccessToken(r);if(i)Hs.setSelectedAlias(i);else{const e=this.extractCompaniesFromIdToken(s);if(0===e.length)throw new Error("Nenhuma empresa encontrada nos tokens");Hs.setSelectedAlias(e[0].alias)}if(!await on.attemptRegeneration())throw new Error("Falha ao gerar token Supabase");return Hs.clearOAuthState(),Hs.clearOAuthNonce(),!0}catch(e){throw e}}static logout(){Hs.setManualLogout(),Hs.clearAll(),window.location.href="/login"}static decodeToken(e){return Ds.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 r=t[e].split(";");if(r.length>=4)a.push({id:r.length>7?r[7].trim():"",alias:r[0].trim(),name:r[3].trim()});else{const[r,s]=t[e].split("|");r&&s&&a.push({id:"",alias:r.trim(),name:s.trim()})}}}),a}static extractAliasFromAccessToken(e){const t=this.decodeToken(e);return t?.default||null}};on.setLogoutCallback(()=>{Fn.logout()});let Mn=Fn;const Dn=n(void 0),zn=({children:t})=>{const[a,r]=c({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null});let s=null;try{s=ot()}catch{}const[n,i]=c(!1),[l,m]=c(0),h=d(e=>{r(t=>({...t,...e}))},[]),p=d(e=>{r(t=>({...t,isLoading:e}))},[]),f=d(()=>{r({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null,placeId:null,placeName:null,activePlaceId:null,activePlaceName:null})},[]),g=d(async e=>{try{p(!0);const r=Hs.getAccessToken();if(!r)return;const n=await rn.generateToken(r,e.alias,void 0,!0);if(!n)return;Hs.setSupabaseToken(n),Hs.setSelectedAlias(e.alias);const i=Hs.extractTokenData(),o=i?.alias||e.alias,l=i?.companyId||Hs.getCompanyId(e.alias),d={id:l||e.id,name:e.name,alias:o};let c=null,u=null;if(a.user?.id&&o&&l)try{const e=(await hn.fetchActiveUsersMap(o,l)).get(a.user.id);if(e){const t=jn(e);c=t.placeId,u=t.placeName}}catch(t){}h({alias:o,selectedUnit:d,placeId:c,placeName:u,activePlaceId:c,activePlaceName:u}),s&&(await s.clear(),await new Promise(e=>setTimeout(e,100)))}catch(t){}finally{p(!1)}},[h,s,p,a.user]),b=d(async()=>await Mn.processCallback(),[]),v=d(async()=>{Mn.logout(),f(),s&&await s.clear()},[f,s]),y=d(e=>{i(e)},[]),x=d(()=>{m(e=>e+1)},[]),N=d(()=>{m(e=>e+1)},[]);u(()=>{if(!a.isAuthenticated)return;let e=!0;const t=setInterval(()=>{e&&(Hs.areAllTokensValid()||e&&v())},6e5);return()=>{e=!1,clearInterval(t)}},[a.isAuthenticated,v]),u(()=>{let e=!0;return(async()=>{try{if(await new Promise(e=>setTimeout(e,100)),!e)return;const t=await Mn.initialize();if(!e)return;t&&t.isAuthenticated?h({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&&p(!1)}catch(t){e&&(ln.handleError(t),p(!1))}})(),()=>{e=!1}},[h,p,v]);const w=o(()=>({...a,logout:v,processCallback:b,switchUnit:g,availableUnits:a.companies,isSearchVisible:n,setSearchVisible:y,clearSearch:x,refreshData:N}),[a.user,a.companies,a.alias,a.isAuthenticated,a.isLoading,a.selectedUnit,a.userId,a.userAlias,a.placeId,a.placeName,a.activePlaceId,a.activePlaceName,v,b,g,n,y,x,N]);return e(Dn.Provider,{value:w,children:t})},$n=()=>{const e=i(Dn);if(void 0===e)throw new Error("useAuth deve ser usado dentro de um AuthProvider");return e};function Un({queryKey:e,service:t,entityName:a,searchFields:r,additionalFilters:s={},onSuccess:n}){const[i,l]=ut(),u=ot(),{alias:m,userId:h,isAuthenticated:p}=$n(),f=d(t=>{const a=`${e}_${t}`,r=i.get(a);return r||(i.get(t)||"")},[i,e]),g=f("search"),b=f("sortField")||fn.sorting.defaultField,v=f("sortDirection")||fn.sorting.defaultDirection,y=parseInt(f("page")||"1"),x=parseInt(f("limit")||String(fn.pagination.defaultPageSize)),N=g,k=o(()=>({search:N,sortField:b,sortDirection:v,page:y,limit:x,...s}),[N,b,v,y,x,s]),S=d(()=>t.getAll(k),[t,k]),C=lt({queryKey:[e,m,h,k],queryFn:S,enabled:!!m&&p});if(!C)throw new Error(`useCrud: Query initialization failed for "${a}". Ensure QueryClientProvider is configured in your app root.`);const _=dt({mutationFn:t.create,onSuccess:()=>{u.invalidateQueries({queryKey:[e]}),w.success(wn.success.created(a)),n?.()},onError:e=>{w.error(`${wn.error.create(a)}: ${e.message}`)}}),P=dt({mutationFn:({id:e,data:a})=>t.update(e,a),onSuccess:()=>{u.invalidateQueries({queryKey:[e]}),w.success(wn.success.updated(a)),n?.()},onError:e=>{w.error(`${wn.error.update(a)}: ${e.message}`)}}),E=dt({mutationFn:t.delete,onSuccess:()=>{u.invalidateQueries({queryKey:[e]}),w.success(wn.success.deleted(a))},onError:e=>{w.error(`${wn.error.delete(a)}: ${e.message}`)}}),T=d(t=>{const a={...Object.fromEntries(i)};Object.entries(t).forEach(([t,r])=>{const s=`${e}_${t}`;""===r||0===r?delete a[s]:a[s]=String(r)}),delete a.sortField,delete a.sortDirection,l(a)},[i,l,e]),I=d(e=>{T({search:e,page:1})},[T]),A=d(e=>{T({sortField:e,sortDirection:b===e&&"asc"===v?"desc":"asc",page:1})},[b,v,T]),R=d(e=>{T({page:e})},[T]),O=d(e=>{T({limit:e,page:1})},[T]),L=d(()=>{const t=Object.fromEntries(i),a=`${e}_`,r=Object.fromEntries(Object.entries(t).filter(([e])=>!e.startsWith(a)));l(r)},[l,i,e]),[j,F]=c([]),M=d(e=>{F(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),D=d(()=>{const e=C?.data?.data.map(e=>e.id)||[];F(t=>t.length===e.length?[]:e)},[C?.data?.data]),z=d(()=>{F([])},[]),$=o(()=>{const e=C?.data?.data.map(e=>e.id)||[];return e.length>0&&j.length===e.length},[j,C?.data?.data]),U=dt({mutationFn:async e=>{await Promise.all(e.map(e=>t.delete(e)))},onSuccess:(t,r)=>{u.invalidateQueries({queryKey:[e]}),w.success(`${r.length} ${a}(s) deletado(s) com sucesso`),z()},onError:e=>{w.error(`Erro ao deletar itens: ${e.message}`)}}),V=d((e,t)=>{const a=t?t(e):e;e.id?P.mutate({id:e.id,data:a}):_.mutate({...a,alias:m})},[m,_,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||fn.pagination.defaultPageSize,hasNextPage:C?.data?.hasNextPage||!1,hasPreviousPage:C?.data?.hasPreviousPage||!1},isLoading:C?.isLoading??!0,isCreating:_?.isPending??!1,isUpdating:P?.isPending??!1,isDeleting:E?.isPending??!1,error:C?.error||null,searchTerm:g,sortField:b,sortDirection:v,currentPage:y,itemsPerPage:x,queryKey:e,createEntity:_.mutate,updateEntity:(e,t)=>P.mutate({id:e,data:t}),deleteEntity:E.mutate,save:V,handleSearch:I,handleSort:A,handlePageChange:R,handleItemsPerPageChange:O,clearFilters:L,refetch:C.refetch,selectedIds:j,selectItem:M,selectAll:D,clearSelection:z,isAllSelected:$,bulkDelete:e=>U.mutateAsync(e),isBulkDeleting:U.isPending}}function Vn(e){const t=An({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,r)=>Un({queryKey:e.tableName,service:{...t,getAll:async(e={})=>await t.getAll({...e})},entityName:e.entityName,additionalFilters:a,onSuccess:r})}}const qn=ft.Root,Bn=ft.Trigger,Wn=ft.Portal,Hn=r.forwardRef(({className:t,...a},r)=>e(ft.Overlay,{className:Aa("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:r}));Hn.displayName=ft.Overlay.displayName;const Kn=r.forwardRef(({className:a,...r},s)=>t(Wn,{children:[e(Hn,{}),e(ft.Content,{ref:s,className:Aa("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),...r})]}));Kn.displayName=ft.Content.displayName;const Qn=({className:t,...a})=>e("div",{className:Aa("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});Qn.displayName="AlertDialogHeader";const Gn=({className:t,...a})=>e("div",{className:Aa("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});Gn.displayName="AlertDialogFooter";const Jn=r.forwardRef(({className:t,...a},r)=>e(ft.Title,{ref:r,className:Aa("text-lg font-semibold",t),...a}));Jn.displayName=ft.Title.displayName;const Xn=r.forwardRef(({className:t,...a},r)=>e(ft.Description,{ref:r,className:Aa("text-sm text-muted-foreground",t),...a}));Xn.displayName=ft.Description.displayName;const Yn=r.forwardRef(({className:t,...a},r)=>e(ft.Action,{ref:r,className:Aa(Ma(),t),...a}));Yn.displayName=ft.Action.displayName;const Zn=r.forwardRef(({className:t,...a},r)=>e(ft.Cancel,{ref:r,className:Aa(Ma({variant:"outline"}),"mt-2 sm:mt-0",t),...a}));Zn.displayName=ft.Cancel.displayName;const ei=({open:a,onOpenChange:r,item:s,onConfirm:n,entityName:i="item",isDeleting:o=!1})=>{const{t:l}=Rs(),d=()=>{r(!1)};return s?e(qn,{open:a,onOpenChange:d,children:t(Kn,{className:"sm:max-w-[420px] bg-white",children:[t("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(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Fechar"})]}),t("div",{className:"flex flex-col items-center text-center space-y-3 py-2",children:[e("div",{className:"w-16 h-16 rounded-full bg-destructive/10 flex items-center justify-center",children:e(A,{className:"w-8 h-8 text-destructive"})}),e(Jn,{className:"text-xl font-semibold",children:"Tem certeza?"}),e(Xn,{asChild:!0,children:t("div",{className:"text-sm text-muted-foreground",children:[e("p",{children:"Você está prestes a excluir este registro."}),e("p",{children:"Esta ação não pode ser desfeita."})]})})]}),t("div",{className:"flex flex-row gap-2 justify-center mt-6",children:[e(Yn,{onClick:()=>{s&&(n(s),r(!1))},disabled:o,className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",children:l(o?"deleting":"confirm_delete")}),e(Zn,{onClick:d,className:"mt-0 border-none bg-transparent hover:bg-muted text-foreground shadow-none",children:"Cancelar"})]})]})}):null},ti=r.forwardRef(({className:t,...a},r)=>e("table",{ref:r,className:Aa("w-full caption-bottom text-sm",t),...a}));ti.displayName="Table";const ai=r.forwardRef(({className:t,...a},r)=>e("thead",{ref:r,className:Aa("[&_tr]:border-b sticky top-0 z-[1] bg-background",t),...a}));ai.displayName="TableHeader";const ri=r.forwardRef(({className:t,...a},r)=>e("tbody",{ref:r,className:Aa("[&_tr:last-child]:border-0",t),...a}));ri.displayName="TableBody";const si=r.forwardRef(({className:t,...a},r)=>e("tfoot",{ref:r,className:Aa("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",t),...a}));si.displayName="TableFooter";const ni=r.forwardRef(({className:t,...a},r)=>e("tr",{ref:r,className:Aa("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted odd:bg-muted/50",t),...a}));ni.displayName="TableRow";const ii=r.forwardRef(({className:t,...a},r)=>e("th",{ref:r,className:Aa("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}));ii.displayName="TableHead";const oi=r.forwardRef(({className:t,...a},r)=>e("td",{ref:r,className:Aa("px-4 py-3 align-middle [&:has([role=checkbox])]:pr-0",t),...a}));oi.displayName="TableCell";const li=r.forwardRef(({className:t,...a},r)=>e("caption",{ref:r,className:Aa("mt-4 text-sm text-muted-foreground",t),...a}));function di({rows:a=5,columns:r=4}){return e("div",{className:"w-full",children:t("div",{className:"rounded-md border",children:[e("div",{className:"border-b bg-muted/50 px-4 py-3",children:e("div",{className:"flex space-x-4",children:Array.from({length:r}).map((t,a)=>e(ls,{className:"h-4 w-24"},a))})}),e("div",{children:Array.from({length:a}).map((t,a)=>e("div",{className:"border-b px-4 py-3 last:border-0",children:e("div",{className:"flex space-x-4",children:Array.from({length:r}).map((t,a)=>e(ls,{className:"h-4 w-20"},a))})},a))})]})})}function ci({count:a=3}){return e("div",{className:"space-y-4",children:Array.from({length:a}).map((a,r)=>t(qa,{children:[t(Ba,{children:[e(ls,{className:"h-4 w-3/4"}),e(ls,{className:"h-3 w-1/2"})]}),e(Ka,{children:t("div",{className:"space-y-2",children:[e(ls,{className:"h-3 w-full"}),e(ls,{className:"h-3 w-2/3"})]})})]},r))})}function ui({fields:a=4}){return t("div",{className:"space-y-4",children:[Array.from({length:a}).map((a,r)=>t("div",{className:"space-y-2",children:[e(ls,{className:"h-4 w-24"}),e(ls,{className:"h-10 w-full"})]},r)),t("div",{className:"flex justify-end space-x-2 pt-4",children:[e(ls,{className:"h-10 w-20"}),e(ls,{className:"h-10 w-20"})]})]})}function mi(){return t("div",{className:"flex items-center justify-between p-4 border-b",children:[t("div",{className:"flex items-center space-x-3",children:[e(ls,{className:"h-8 w-8 rounded-full"}),e(ls,{className:"h-6 w-32"})]}),t("div",{className:"flex items-center space-x-2",children:[e(ls,{className:"h-8 w-8"}),e(ls,{className:"h-8 w-24"})]})]})}function hi(){return e("div",{className:"w-64 border-r bg-muted/10",children:t("div",{className:"p-4",children:[e(ls,{className:"h-8 w-32 mb-6"}),e("div",{className:"space-y-2",children:Array.from({length:6}).map((a,r)=>t("div",{className:"flex items-center space-x-3 p-2",children:[e(ls,{className:"h-4 w-4"}),e(ls,{className:"h-4 w-20"})]},r))})]})})}li.displayName="TableCaption";const pi={default:O,search:R,error:I};function fi({icon:a,title:r,description:s,action:n,className:i,variant:o="default"}){const l=a?()=>a:pi[o];return t("div",{className:Aa("flex flex-col items-center justify-center py-12 px-4 text-center",i),children:[e("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted mb-4",children:e(l,{className:"h-8 w-8 text-muted-foreground"})}),e("h3",{className:"text-lg font-semibold mb-2",children:r}),s&&e("p",{className:"text-muted-foreground mb-6 max-w-sm",children:s}),n&&e(Da,{onClick:n.onClick,variant:"outline",children:n.label})]})}const gi=gt.Root,bi=gt.Trigger,vi=gt.Group,yi=gt.Portal,xi=gt.Sub,Ni=gt.RadioGroup,wi=r.forwardRef(({className:a,inset:r,children:s,...n},i)=>t(gt.SubTrigger,{ref:i,className:Aa("flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",r&&"pl-8",a),...n,children:[s,e(L,{className:"ml-auto h-4 w-4"})]}));wi.displayName=gt.SubTrigger.displayName;const ki=r.forwardRef(({className:t,...a},r)=>e(gt.SubContent,{ref:r,className:Aa("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}));ki.displayName=gt.SubContent.displayName;const Si=r.forwardRef(({className:t,sideOffset:a=4,...r},s)=>e(gt.Portal,{children:e(gt.Content,{ref:s,sideOffset:a,className:Aa("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),...r})}));Si.displayName=gt.Content.displayName;const Ci=r.forwardRef(({className:t,inset:a,...r},s)=>e(gt.Item,{ref:s,className:Aa("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),...r}));Ci.displayName=gt.Item.displayName;const _i=r.forwardRef(({className:a,children:r,checked:s,...n},i)=>t(gt.CheckboxItem,{ref:i,className:Aa("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,...n,children:[e("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(gt.ItemIndicator,{children:e(E,{className:"h-4 w-4"})})}),r]}));_i.displayName=gt.CheckboxItem.displayName;const Pi=r.forwardRef(({className:a,children:r,...s},n)=>t(gt.RadioItem,{ref:n,className:Aa("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("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(gt.ItemIndicator,{children:e(j,{className:"h-2 w-2 fill-current"})})}),r]}));Pi.displayName=gt.RadioItem.displayName;const Ei=r.forwardRef(({className:t,inset:a,...r},s)=>e(gt.Label,{ref:s,className:Aa("px-2 py-1.5 text-sm font-semibold",a&&"pl-8",t),...r}));Ei.displayName=gt.Label.displayName;const Ti=r.forwardRef(({className:t,...a},r)=>e(gt.Separator,{ref:r,className:Aa("-mx-1 my-1 h-px bg-muted",t),...a}));Ti.displayName=gt.Separator.displayName;const Ii=({className:t,...a})=>e("span",{className:Aa("ml-auto text-xs tracking-widest opacity-60",t),...a});Ii.displayName="DropdownMenuShortcut";const Ai=({onEdit:r,onDelete:s,onToggleStatus:n,isActive:i=!0,canDelete:o=!0,customActions:l=[],renderAs:d})=>{const{t:c}=Rs(),u=[];if(r){const e={icon:F,label:c("edit"),onClick:r};u.push(e)}if(l.forEach(e=>{u.push(e)}),n){const e={icon:i?M:D,label:c(i?"deactivate":"activate"),onClick:n};u.push(e)}if(o&&s){const e={icon:z,label:c("delete"),onClick:s,destructive:!0};u.push(e)}return e(a,"dropdown"===d?{children:u.map((a,r)=>t(Ci,{onClick:a.onClick,className:a.destructive?"text-destructive":"",children:[e(a.icon,{className:"mr-2 h-4 w-4"}),a.label]},r))}:{children:u.map((a,r)=>t(Da,{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(a.icon,{className:"h-4 w-4 mr-2"}),a.label]},r))})},Ri=({onEdit:a,onDelete:r,canDelete:s=!0,onToggleStatus:n,isActive:i=!0,customActions:o=[]})=>t(gi,{children:[e(bi,{asChild:!0,children:e(Da,{variant:"action",size:"sm",className:"h-7 px-2 text-xs",children:e(S,{size:12})})}),e(Si,{align:"end",className:"bg-background border border-border shadow-lg w-[160px]",children:e(Ai,{onEdit:a?e=>{e?.stopPropagation(),a?.()}:void 0,onDelete:r?e=>{e?.stopPropagation(),r?.()}:void 0,onToggleStatus:n?e=>{e?.stopPropagation(),n?.()}:void 0,isActive:i,canDelete:s&&!!r,customActions:o,renderAs:"dropdown"})})]}),Oi=bt.Root,Li=bt.Trigger,ji=bt.Group,Fi=bt.Portal,Mi=bt.Sub,Di=bt.RadioGroup,zi=r.forwardRef(({className:a,inset:r,children:s,...n},i)=>t(bt.SubTrigger,{ref:i,className:Aa("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",r&&"pl-8",a),...n,children:[s,e(L,{className:"ml-auto h-4 w-4"})]}));zi.displayName=bt.SubTrigger.displayName;const $i=r.forwardRef(({className:t,...a},r)=>e(bt.SubContent,{ref:r,className:Aa("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}));$i.displayName=bt.SubContent.displayName;const Ui=r.forwardRef(({className:t,...a},r)=>e(bt.Portal,{children:e(bt.Content,{ref:r,className:Aa("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})}));Ui.displayName=bt.Content.displayName;const Vi=r.forwardRef(({className:t,inset:a,...r},s)=>e(bt.Item,{ref:s,className:Aa("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),...r}));Vi.displayName=bt.Item.displayName;const qi=r.forwardRef(({className:a,children:r,checked:s,...n},i)=>t(bt.CheckboxItem,{ref:i,className:Aa("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",a),checked:s,...n,children:[e("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(bt.ItemIndicator,{children:e(E,{className:"h-4 w-4"})})}),r]}));qi.displayName=bt.CheckboxItem.displayName;const Bi=r.forwardRef(({className:a,children:r,...s},n)=>t(bt.RadioItem,{ref:n,className:Aa("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",a),...s,children:[e("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:e(bt.ItemIndicator,{children:e(j,{className:"h-2 w-2 fill-current"})})}),r]}));Bi.displayName=bt.RadioItem.displayName;const Wi=r.forwardRef(({className:t,inset:a,...r},s)=>e(bt.Label,{ref:s,className:Aa("px-2 py-1.5 text-sm font-semibold text-foreground",a&&"pl-8",t),...r}));Wi.displayName=bt.Label.displayName;const Hi=r.forwardRef(({className:t,...a},r)=>e(bt.Separator,{ref:r,className:Aa("-mx-1 my-1 h-px bg-border",t),...a}));Hi.displayName=bt.Separator.displayName;const Ki=({className:t,...a})=>e("span",{className:Aa("ml-auto text-xs tracking-widest text-muted-foreground",t),...a});Ki.displayName="ContextMenuShortcut";const Qi=h(({checked:t,onCheckedChange:a})=>e(Cr,{checked:t,onCheckedChange:a}),(e,t)=>e.checked===t.checked),Gi=({manager:a,columns:r,onEdit:s,onView:n,onToggleStatus:i,onDelete:l,renderActions:d,customRowActions:m,enableBulkActions:h=!1,onNew:p,newButtonLabel:f,showNewButton:g=!0,customActions:b=[],hideActionBar:v=!1})=>{const{t:y}=Rs(),{setSearchVisible:x}=$n(),[N,w]=c(!1);u(()=>(x(!0),()=>x(!1)),[x]),u(()=>{const e=()=>w(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const k=o(()=>(()=>{r.length;let e=0;const t=r.map(t=>{if(t.width)return e+=t.width,{...t,calculatedWidth:t.width,isFixed:!0};{const a=t.minWidth||120,r=t.weight||1;return e+=a,{...t,calculatedWidth:a,weight:r,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`}})})(),[r]),S=!v&&(p||b.length>0);return N?a.isLoading?e(ci,{count:3}):0===a.entities.length?e(fi,{title:y("empty_title"),description:y("empty_description"),variant:"search"}):t("div",{className:"flex flex-col h-full",children:[S&&e("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:t("div",{className:"flex items-center gap-2",children:[p&&g&&t(Da,{onClick:p,children:[e($,{size:16,className:"mr-2"}),f||y("new")]}),b.map((a,r)=>{const s=a.icon;return t(Da,{onClick:a.action,variant:a.variant||"outline",children:[s&&e(s,{size:16,className:"mr-2"}),a.label]},r)})]})}),e("div",{className:"flex-1 overflow-auto space-y-4 p-4",children:a.entities.map(o=>t(Oi,{children:[e(Li,{asChild:!0,children:e(qa,{className:Aa("overflow-hidden cursor-pointer hover:bg-muted/50",h&&a.selectedIds.includes(o.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),h?a.selectItem(o.id):s?.(o)},children:e(Ka,{className:"p-4",children:t("div",{className:"flex items-start gap-3",children:[h&&e("div",{className:"pt-0.5",onClick:e=>e.stopPropagation(),children:e(Qi,{checked:a.selectedIds.includes(o.id),onCheckedChange:()=>a.selectItem(o.id)})}),t("div",{className:"flex-1",children:[r.map(a=>t("div",{className:"flex justify-between items-start mb-2 last:mb-0",children:[t("span",{className:"text-sm font-medium text-muted-foreground min-w-0 mr-2",children:[a.header,":"]}),e("div",{className:"text-sm text-foreground text-right min-w-0 flex-1",children:a.render?a.render(o):String(o[a.key]??"")})]},String(a.key))),(s||n||d)&&e("div",{className:"mt-3 pt-3 border-t flex justify-end",onClick:e=>e.stopPropagation(),children:d?d(o):e(Ri,{onEdit:s?()=>{s(o)}:void 0,onDelete:l?()=>l(o):void 0,onToggleStatus:i?()=>i(o):void 0,isActive:o.is_actived,customActions:m?m(o):[]})})]})]})})})}),e(Ui,{className:"w-[160px]",children:e(Ai,{onEdit:s?()=>s(o):void 0,onDelete:l?()=>l(o):void 0,onToggleStatus:i?()=>i(o):void 0,isActive:o.is_actived,canDelete:!!l,customActions:m?m(o):[],renderAs:"context"})})]},o.id))})]}):t("div",{className:"flex flex-col h-full",children:[S&&e("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:t("div",{className:"flex items-center gap-2",children:[p&&g&&t(Da,{onClick:p,children:[e($,{size:16,className:"mr-2"}),f||y("new")]}),b.map((a,r)=>{const s=a.icon;return t(Da,{onClick:a.action,variant:a.variant||"outline",children:[s&&e(s,{size:16,className:"mr-2"}),a.label]},r)})]})}),a.isLoading?e(di,{rows:5,columns:r.length}):e("div",{className:"flex flex-col h-full overflow-hidden",children:e("div",{className:"flex-1 overflow-auto",children:t(ti,{className:"table-auto",children:[t("colgroup",{children:[h&&e("col",{style:{width:"50px"}}),k.map((t,a)=>e("col",{style:t.style},a)),e("col",{style:{width:"50px"}})]}),e(ai,{children:t(ni,{children:[h&&e(ii,{className:"w-[50px]",children:e(Qi,{checked:a.isAllSelected,onCheckedChange:a.selectAll})}),r.map(r=>{return e(ii,{className:`${r.className||""} ${r.sortable?"cursor-pointer hover:bg-muted/50":""}`,onClick:r.sortable?()=>a.handleSort(String(r.key)):void 0,children:t("div",{className:"flex items-center "+(r.className?.includes("text-center")?"justify-center":""),children:[r.header,r.sortable&&(s=String(r.key),a.sortField!==s?e(U,{size:14,className:"ml-1 opacity-50"}):"asc"===a.sortDirection?e(V,{size:14,className:"ml-1"}):e(q,{size:14,className:"ml-1"}))]})},String(r.key));var s}),e(ii,{className:"w-[50px] text-center",children:y("actions")})]})}),e(ri,{children:0===a.entities.length?e(ni,{children:e(oi,{colSpan:h?r.length+2:r.length+1,className:"h-32",children:e(fi,{title:y("empty_title"),description:y("empty_description"),variant:"search"})})}):a.entities.map(n=>t(Oi,{children:[e(Li,{asChild:!0,children:t(ni,{className:Aa("cursor-pointer hover:bg-muted/50",h&&a.selectedIds.includes(n.id)&&"bg-muted"),onClick:e=>{e.stopPropagation(),h?a.selectItem(n.id):s?.(n)},children:[h&&e(oi,{onClick:e=>e.stopPropagation(),children:e(Qi,{checked:a.selectedIds.includes(n.id),onCheckedChange:()=>a.selectItem(n.id)})}),r.map(t=>e(oi,{className:t.className,children:t.render?t.render(n):String(n[t.key]??"")},String(t.key))),e(oi,{className:"text-center",children:d?d(n):e(Ri,{onEdit:s?()=>s(n):void 0,onDelete:l?()=>l(n):void 0,onToggleStatus:i?()=>i(n):void 0,isActive:n.is_actived,customActions:m?m(n):[]})})]})}),e(Ui,{className:"w-[160px]",children:e(Ai,{onEdit:s?()=>s(n):void 0,onDelete:l?()=>l(n):void 0,onToggleStatus:i?()=>i(n):void 0,isActive:n.is_actived,canDelete:!!l,customActions:m?m(n):[],renderAs:"context"})})]},n.id))})]})})})]})};function Ji(e,t,a,r){const[s,n]=c({}),[i,l]=c({}),d=o(()=>e,[e]),m=e=>e instanceof Date&&!isNaN(e.getTime()),h=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{}}},p=(e,t)=>{if(e.computedValue&&"function"==typeof e.computedValue)try{return e.computedValue(t)}catch(a){return h(e)}},f=(e,t,a)=>{if(e.required&&(""===t||null==t||Array.isArray(t)&&0===t.length))return`${e.label} é obrigatório`;if(e.validation){let s;if("function"==typeof e.validation?s=e.validation:e.validation.custom&&"function"==typeof e.validation.custom&&(s=e.validation.custom),s)try{const e=s(t,a);if(e)return e}catch(r){}}};u(()=>{if(!r)return;const e=t=>{const a=[];return t.forEach(t=>{a.push(t),t.fields&&a.push(...e(t.fields))}),a},s=e(d),i={};s.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);m(e)&&(a=e.toISOString().split("T")[0])}else m(a)&&(a=a.toISOString().split("T")[0])}else a=h(e);i[e.name]=a}),s.forEach(e=>{const t=p(e,i);void 0!==t&&(i[e.name]=t)}),t&&Object.keys(t).forEach(e=>{s.find(t=>t.name===e)||void 0===t[e]||(i[e]=t[e])}),n(i),l({}),a&&a(i)},[d,t,a,r]);const g=e=>{const t=[];return e.forEach(e=>{t.push(e),e.fields&&t.push(...g(e.fields))}),t},b=()=>{const e=g(d),t={};return e.forEach(e=>{const a=f(e,s[e.name],s);a&&(t[e.name]=a)}),l(t),0===Object.keys(t).length};return{formData:s,errors:i,updateField:(e,t)=>{n(r=>{const s={...r,[e]:t},n=((e,t)=>{let a={...t};const r=e=>{const t=[];return e.forEach(e=>{t.push(e),e.fields&&t.push(...r(e.fields))}),t};return r(d).filter(t=>t.dependsOn===e).forEach(e=>{const t=p(e,a);void 0!==t&&(a={...a,[e.name]:t})}),a})(e,s);return a&&a(n),n}),i[e]&&l(t=>{const a={...t};return delete a[e],a});const r=g(d).find(t=>t.name===e);if(r){const a=f(r,t,s);a&&l(t=>({...t,[e]:a}))}},validateForm:b,handleSubmit:e=>t=>{t&&(t.preventDefault(),t.stopPropagation()),b()&&e(s)}}}const Xi=["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#06b6d4","#84cc16","#f97316","#ec4899","#6b7280"],Yi=({value:a="#3b82f6",onChange:r,label:s})=>t("div",{className:"space-y-2",children:[s&&e(Va,{children:s}),t(Jr,{children:[e(Xr,{asChild:!0,children:t(Da,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e("div",{className:"h-4 w-4 rounded border mr-2",style:{backgroundColor:a}}),a]})}),e(Yr,{className:"w-64",children:t("div",{className:"space-y-3",children:[t("div",{children:[e(Va,{htmlFor:"color-input",children:"Cor personalizada"}),e($a,{id:"color-input",type:"color",value:a,onChange:e=>r?.(e.target.value),className:"h-10 w-full"})]}),t("div",{children:[e(Va,{children:"Cores predefinidas"}),e("div",{className:"grid grid-cols-5 gap-2 mt-2",children:Xi.map(t=>e("button",{className:"h-8 w-8 rounded border-2 border-border hover:border-primary",style:{backgroundColor:t},onClick:()=>r?.(t),"aria-label":`Selecionar cor ${t}`},t))})]})]})})]})]}),Zi=r.forwardRef(({className:a,children:r,...s},n)=>t(vt.Root,{ref:n,className:Aa("relative overflow-hidden",a),...s,children:[e(vt.Viewport,{className:"h-full w-full rounded-[inherit]",children:r}),e(eo,{}),e(vt.Corner,{})]}));Zi.displayName=vt.Root.displayName;const eo=r.forwardRef(({className:t,orientation:a="vertical",...r},s)=>e(vt.ScrollAreaScrollbar,{ref:s,orientation:a,className:Aa("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),...r,children:e(vt.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));eo.displayName=vt.ScrollAreaScrollbar.displayName;const to={Star:Le,Heart:Oe,Home:Re,User:Ae,Settings:Ie,Mail:Te,Phone:Ee,Calendar:Pe,MapPin:_e,Camera:Ce,Image:Se,Music:ke,Video:we,Book:Ne,Bookmark:xe,Search:R,Filter:ye,Edit:F,Trash2:z,Plus:$,Minus:ve,Check:E,X:C,ChevronDown:_,ChevronUp:P,ChevronLeft:be,ChevronRight:L,ArrowUp:V,ArrowDown:q,ArrowLeft:ge,ArrowRight:fe,Clock:pe,Bell:he,AlertCircle:I,Info:me,HelpCircle:ue,Download:ce,Upload:de,Share:le,Copy:oe,Save:ie,FileText:ne,Folder:se,FolderOpen:re,Archive:ae,Lock:te,Unlock:ee,Eye:Z,EyeOff:Y,Shield:X,Key:J,Zap:G,Flame:Q,Sparkles:K,Award:H,Trophy:W,Target:B},ao=({value:a="Star",onChange:r,label:s})=>{const{t:n}=Rs(),[i,o]=c(""),l=Object.entries(to).filter(([e])=>e.toLowerCase().includes(i.toLowerCase())),d=to[a]||Le;return t("div",{className:"space-y-2",children:[s&&e(Va,{children:s}),t(Jr,{children:[e(Xr,{asChild:!0,children:t(Da,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[e(d,{className:"h-4 w-4 mr-2"}),a]})}),e(Yr,{className:"w-80",children:t("div",{className:"space-y-3",children:[t("div",{children:[e(Va,{htmlFor:"icon-search",children:n("search")}),e($a,{id:"icon-search",placeholder:n("search"),value:i,onChange:e=>o(e.target.value)})]}),e(Zi,{className:"h-48",children:e("div",{className:"grid grid-cols-6 gap-2",children:l.map(([t,s])=>e("button",{className:"p-2 rounded border-2 hover:border-primary "+(a===t?"border-primary bg-primary/10":"border-border"),onClick:()=>r?.(t),title:t,children:e(s,{className:"h-4 w-4"})},t))})})]})})]})]})},ro=r.forwardRef(({className:t,...a},r)=>e(yt.Root,{className:Aa("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:r,children:e(yt.Thumb,{className:Aa("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")})}));ro.displayName=yt.Root.displayName;const so=(e={})=>{const{user:t,alias:a}=$n(),{enabled:r=!0}=e;return lt({queryKey:["qualiex-users",a],queryFn:()=>hn.getUsers(a),enabled:r&&!!a&&!!t,retry:2,retryDelay:1e3})},no=({value:t="",onChange:a,placeholder:r,disabled:s,className:n,enabled:i})=>{const{t:o}=Rs(),{data:l=[],isLoading:d,error:c}=so({enabled:i});return e(Fs,{value:t,onChange:a,options:l,isLoading:d,error:c,getOptionValue:e=>e.userId,getOptionLabel:e=>e.userName,placeholder:r||o("search_placeholder"),searchPlaceholder:o("search_placeholder"),emptyMessage:o("no_results"),disabled:s,className:n})};function io({title:a,sections:r,initialData:n,onSubmit:i,onCancel:u,open:m,submitButtonText:h,isLoading:p=!1,usersData:f}){const{t:g}=Rs(),[b,v]=c(r?.[0]?.id||""),y=l(null),[x,N]=c(null),w=d(e=>{y.current=e,N(e)},[]),k=o(()=>r&&Array.isArray(r)?r.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[r]),{formData:S,errors:C,updateField:_,handleSubmit:P}=Ji(k,n,void 0,m),E=o(()=>r&&Array.isArray(r)?r.map(e=>({...e,disabled:e.condition?!e.condition(S):e.disabled||!1})):[],[r,S]),T=o(()=>{const e=E.find(e=>e.id===b);if(e&&!e.disabled)return b;const t=E.find(e=>!e.disabled);return t?.id||b},[E,b]);s.useEffect(()=>{T!==b&&v(T)},[T,b]);const I=E.find(e=>e.id===T),A=a=>{const r=(a.computedValue,S[a.name]),s=void 0!==r?r:"",n=C[a.name];switch(a.type){case"group":const r="horizontal"===a.layout,i=r?`flex gap-3 w-full ${a.className||""}`:"space-y-3",o=r?Aa("space-y-2 w-full",a.wrapperClassName):Aa("space-y-2",a.className,a.wrapperClassName);return t("div",{className:o,children:[a.label,e("div",{className:i,children:a.fields?.map(e=>A(e))})]},a.name);case"user-select":return t("div",{className:`space-y-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),e(no,{value:s||"",onChange:e=>_(a.name,e),placeholder:a.placeholder,disabled:a.disabled,className:n?"border-red-500":""}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"textarea":return t("div",{className:`space-y-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),e(_r,{id:a.name,value:s||"",onChange:e=>{_(a.name,e.target.value)},placeholder:a.placeholder,disabled:a.disabled,rows:a.rows,maxLength:a.maxLength,className:`${n?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"select":return t("div",{className:`space-y-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),t(fr,{value:String(s),onValueChange:e=>{_(a.name,e),a.onValueChange&&a.onValueChange(e)},disabled:a.disabled,children:[e(vr,{className:`${n?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`,children:e(br,{placeholder:a.placeholder})}),e(Nr,{children:a.options?.map(t=>e(kr,{value:t.value,children:t.label},t.value))})]}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"multiselect":return t("div",{className:`space-y-2 ${a.className||""}`,children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-red-500 ml-1",children:"*"})]}),e(Fs,{options:a.options||[],value:Array.isArray(s)?s:[],onChange:e=>_(a.name,e),placeholder:a.placeholder,disabled:a.disabled,error:n,popoverContainer:x,getOptionValue:e=>String(e.value),getOptionLabel:e=>e.label}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"date":return t("div",{className:`space-y-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),e($a,{id:a.name,type:"date",value:String(s),onChange:e=>_(a.name,e.target.value),placeholder:a.placeholder,disabled:a.disabled,className:Aa("w-full",n?"border-red-500":"",a.disabled?"bg-gray-100 cursor-not-allowed":"")}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"color":return t("div",{children:[t(Va,{htmlFor:a.name,children:[a.label," ",a.required&&e("span",{className:"text-destructive",children:"*"})]}),e($a,{id:a.name,type:"color",value:s||a.defaultValue||"#000000",onChange:e=>_(a.name,e.target.value),className:"h-10"}),n&&e("p",{className:"text-sm text-destructive mt-1",children:n})]},a.name);case"color-picker":return t("div",{children:[e(Yi,{label:`${a.label} ${a.required?"*":""}`,value:s||a.defaultValue||"#3b82f6",onChange:e=>_(a.name,e)}),n&&e("p",{className:"text-sm text-destructive mt-1",children:n})]},a.name);case"icon-picker":return t("div",{children:[e(ao,{label:`${a.label} ${a.required?"*":""}`,value:s||a.defaultValue||"Star",onChange:e=>_(a.name,e)}),n&&e("p",{className:"text-sm text-destructive mt-1",children:n})]},a.name);case"custom":if(!a.component)return null;const l=a.component,d="function"==typeof a.componentProps?a.componentProps(S):a.componentProps||{};return t("div",{className:`space-y-2 ${a.className||""}`,children:[a.label&&e(Va,{htmlFor:a.name,children:a.label}),e(l,{value:s,onChange:e=>{_(a.name,e),a.onValueChange&&a.onValueChange(e)},disabled:a.disabled,error:n,popoverContainer:x,...d}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"number":return t("div",{className:`space-y-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),e($a,{id:a.name,type:"number",value:null!=s?String(s):"",onChange:e=>{const t=e.target.value,r=""===t?null:Number(t);_(a.name,r)},placeholder:a.placeholder,disabled:a.disabled,className:`${n?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`,min:a.min,step:a.step||"1"}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"checkbox":return t("div",{className:`flex items-center space-x-2 ${a.className||""}`,children:[e(Cr,{id:a.name,checked:!!s,onCheckedChange:e=>_(a.name,e),disabled:a.disabled}),e(Va,{htmlFor:a.name,className:"cursor-pointer",children:a.label}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name);case"switch":return t("div",{className:`flex items-center justify-between space-x-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),e(ro,{id:a.name,checked:!!s,onCheckedChange:e=>_(a.name,e),disabled:a.disabled}),n&&e("p",{className:"text-sm text-red-500 mt-2",children:n})]},a.name);default:return t("div",{className:`space-y-2 ${a.className||""}`,children:[e(Va,{htmlFor:a.name,children:a.label}),e($a,{id:a.name,type:"text",value:s||"",onChange:e=>{_(a.name,e.target.value)},placeholder:a.placeholder,disabled:a.disabled,className:`${n?"border-red-500":""} ${a.disabled?"bg-gray-100 cursor-not-allowed":""}`,readOnly:a.disabled}),n&&e("p",{className:"text-sm text-red-500",children:n})]},a.name)}},R=d(()=>{if(!I)return null;if(I.disabled)return t("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e("div",{className:"rounded-full bg-muted p-3 mb-4",children:e("svg",{className:"h-6 w-6 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:e("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m0 0v2m0-2h2m-2 0H9m3-8V9m0-4V3"})})}),e("h3",{className:"text-lg font-semibold mb-2",children:"Seção não disponível"}),e("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(I.component){const t=I.component;return e(t,{formData:S,updateField:_,errors:C,users:f,disabled:I.disabled})}return e("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:I.fields.map(A)})},[I,S,_,C,f,A]),O=t("div",{className:"flex flex-col max-h-[80vh]",children:[E.length>1&&e("div",{className:"flex-shrink-0 p-4 border-b",children:e("div",{className:"flex space-x-2",children:E.map(t=>e(Da,{variant:T===t.id?"action-primary":"action-secondary",size:"sm",onClick:()=>(e=>{const t=E.find(t=>t.id===e);t&&!t.disabled&&v(e)})(t.id),disabled:t.disabled,className:t.disabled?"opacity-50 cursor-not-allowed":"",children:t.title},t.id))})}),e("div",{className:"flex-1 overflow-y-auto px-2 md:px-4 pt-0 pb-2 md:pb-4",children:p?e("div",{className:"flex items-center justify-center py-12",children:e("div",{className:"text-muted-foreground",children:g("loading")})}):t("form",{onSubmit:P(i),className:"space-y-3 md:space-y-4",children:[R(),t("div",{className:"flex justify-end space-x-2 pt-4",children:[e(Da,{type:"button",variant:"outline",onClick:u,children:g("cancel")}),e(Da,{type:"submit",disabled:p,children:h||g("save")})]})]})})]});return e(Ga,{open:m,onOpenChange:e=>{!1===e&&!0===m&&u()},children:t(er,{ref:w,className:"max-w-4xl max-h-[90vh] overflow-visible",children:[t(tr,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:[e(rr,{className:"text-white",children:a}),e(sr,{className:"sr-only",children:"Formulário para preenchimento de dados"})]}),O]})})}function oo({currentPage:r,totalPages:s,totalItems:n,itemsPerPage:i,onPageChange:o,onItemsPerPageChange:l,variant:d="full"}){const c=(r-1)*i+1,u=Math.min(r*i,n);return t("div",{className:"flex items-center justify-between px-4 py-3 gap-4",children:[e("div",{className:"flex items-center gap-2",children:"full"===d&&t(a,{children:[e("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:"Itens por página"}),t(fr,{value:String(i),onValueChange:e=>l(Number(e)),children:[e(vr,{className:"h-8 w-[70px]",children:e(br,{})}),t(Nr,{children:[e(kr,{value:"10",children:"10"}),e(kr,{value:"25",children:"25"}),e(kr,{value:"50",children:"50"}),e(kr,{value:"100",children:"100"})]})]})]})}),t("div",{className:"text-sm text-muted-foreground text-center hidden sm:block",children:[c,"-",u," de ",n," itens"]}),t("div",{className:"flex items-center gap-1",children:[e(Da,{variant:"outline",size:"sm",onClick:()=>o(1),disabled:1===r,className:"h-8 w-8 p-0",children:e(je,{size:16})}),e(Da,{variant:"outline",size:"sm",onClick:()=>o(r-1),disabled:1===r,className:"h-8 w-8 p-0",children:e(be,{size:16})}),t("div",{className:"flex items-center gap-1 px-2",children:[e("span",{className:"text-sm font-medium",children:r}),e("span",{className:"text-sm text-muted-foreground",children:"de"}),e("span",{className:"text-sm font-medium",children:s})]}),e(Da,{variant:"outline",size:"sm",onClick:()=>o(r+1),disabled:r===s,className:"h-8 w-8 p-0",children:e(L,{size:16})}),e(Da,{variant:"outline",size:"sm",onClick:()=>o(s),disabled:r===s,className:"h-8 w-8 p-0",children:e(Fe,{size:16})})]})]})}function lo({manager:t}){return e(oo,{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 co=({selectedCount:a,onClearSelection:r,onBulkDelete:s,customActions:n=[],isLoading:i=!1})=>{const{t:o}=Rs();return t("div",{className:"flex-shrink-0 flex items-center justify-between px-4 py-2 bg-primary/10 border-b border-primary/20",children:[t("div",{className:"flex items-center gap-3",children:[e("span",{className:"text-sm font-medium",children:o("selected",{count:a})}),t(Da,{variant:"ghost",size:"sm",onClick:r,className:"h-7 px-2",children:[e(C,{size:14,className:"mr-1"}),o("clear")]})]}),t("div",{className:"flex items-center gap-2",children:[n.map((a,r)=>{const s=a.icon;return t(Da,{variant:a.variant||"outline",size:"sm",onClick:()=>a.action([]),disabled:i,className:"h-7",children:[s&&e(s,{size:14,className:"mr-1"}),a.label]},r)}),s&&t(Da,{variant:"destructive",size:"sm",onClick:s,disabled:i,className:"h-7",children:[e(z,{size:14,className:"mr-1"}),o("delete")]})]})]})},uo={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},mo={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},ho={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"};function po({children:t,direction:a="column",gap:r="md",align:s="stretch",justify:n="start",wrap:i=!1,className:o}){return e("div",{className:Aa("flex","column"===a?"flex-col":"flex-row",uo[r],mo[s],ho[n],i&&"flex-wrap",o),children:t})}function fo({manager:r,filters:s,inline:n=!1}){const{t:i}=Rs(),{isSearchVisible:o}=$n(),l=r.searchTerm,d=t(a,{children:[s.some(e=>"search"===e.type)&&!o&&t("div",{className:"relative flex-1",children:[e(R,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e($a,{placeholder:i("search"),value:r.searchTerm,onChange:e=>r.handleSearch(e.target.value),className:"pl-10"})]}),s.filter(e=>"select"===e.type&&e.options).map((a,r)=>t("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("option",{value:"",children:a.placeholder}),a.options.map(t=>e("option",{value:t.value,children:t.label},t.value))]},`select-${r}`)),s.filter(e=>"custom"===e.type&&e.component).map((t,a)=>{const r=t.component;return e("div",{className:n?"":"w-full sm:w-auto",children:e(r,{...t.props})},`custom-${a}`)}),l&&t(Da,{variant:"outline",onClick:r.clearFilters,className:"whitespace-nowrap",children:[e(C,{className:"h-4 w-4 mr-2"}),i("clear")]})]});return n?e("div",{className:"flex items-center gap-2",children:d}):e(po,{direction:"column",gap:"md",className:"mb-6",children:e(po,{direction:"row",gap:"md",wrap:!0,className:"flex-col sm:flex-row",children:d})})}function go({manager:a,config:r,formSections:s,onSave:n,onToggleStatus:i,defaultSort:o}){a&&a.queryKey;const{t:l}=Rs(),{setSearchVisible:d}=$n(),[m,h]=ut(),[p,f]=c(!1),[g,b]=c(null),[v,y]=c({isOpen:!1,entityId:null,entityName:""}),[x,N]=c({isOpen:!1,count:0});u(()=>(d(!0),()=>{d(!1)}),[d]),u(()=>{if(o&&a){const e=`${a.queryKey}_sortField`,t=`${a.queryKey}_sortDirection`;if(!m.has(e)&&!m.has(t)){const a=Object.fromEntries(m);a[e]=o.column,a[t]=o.direction,h(a)}}},[]);return t("div",{className:"flex-1 flex flex-col h-full",children:[r.enableBulkActions&&a.selectedIds.length>0&&e(co,{selectedCount:a.selectedIds.length,onClearSelection:a.clearSelection,onBulkDelete:r.bulkActions&&r.bulkActions.length>0?void 0:()=>{N({isOpen:!0,count:a.selectedIds.length})},customActions:r.bulkActions,isLoading:a.isBulkDeleting}),t("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b gap-4",children:[t("div",{className:"flex items-center gap-2",children:[t(Da,{onClick:()=>{r.onNew?r.onNew():(b(null),f(!0))},children:[e($,{size:16,className:"mr-2"}),l("new")]}),r.customActions?.map((a,r)=>t(Da,{onClick:a.action,variant:a.variant||"outline",children:[a.icon&&e(a.icon,{size:16,className:"mr-2"}),a.label]},r))]}),r.filters&&r.filters.length>0&&e("div",{className:"flex items-center gap-2 flex-1 justify-end",children:e(fo,{manager:a,filters:r.filters,inline:!0})})]}),e("div",{className:"flex-1 flex flex-col overflow-hidden",children:r.customListView?e("div",{className:"flex-1 overflow-auto p-4",children:r.customListView(a.entities,a)}):e(Gi,{manager:a,columns:r.columns,onEdit:e=>{r.onEdit?r.onEdit(e):(b(e),f(!0))},onDelete:e=>{y({isOpen:!0,entityId:e.id,entityName:e.title||e.name||"Item"})},onToggleStatus:i,enableBulkActions:r.enableBulkActions,customRowActions:r.customRowActions})}),e("div",{className:"flex-shrink-0 border-t bg-background",children:e(lo,{manager:a})}),!r.useCustomRouting&&e(io,{open:p,title:g?`Editar ${r.entityName}`:`Novo ${r.entityName}`,sections:s,initialData:g||void 0,onSubmit:e=>{n(e),f(!1),b(null)},onCancel:()=>{f(!1),b(null)},isLoading:a.isLoading,submitButtonText:l(g?"update":"create")}),e(ei,{open:v.isOpen,onOpenChange:()=>{y({isOpen:!1,entityId:null,entityName:""})},onConfirm:e=>{v.entityId&&(a.deleteEntity(v.entityId),y({isOpen:!1,entityId:null,entityName:""}))},item:v.entityId?{id:v.entityId,title:v.entityName}:void 0,entityName:r.entityName,isDeleting:a.isDeleting}),e(ei,{open:x.isOpen,onOpenChange:()=>N({isOpen:!1,count:0}),onConfirm:()=>(a.bulkDelete?.(a.selectedIds),void N({isOpen:!1,count:0})),item:{id:"bulk",title:`${x.count} ${1===x.count?r.entityName:r.entityNamePlural}`},entityName:r.entityNamePlural,isDeleting:a.isBulkDeleting,isBulk:!0,bulkCount:x.count})]})}function bo(t){return({manager:a})=>{const{manager:r,config:s,onSave:n,onEdit:i,onToggleStatus:o}=t,l=a??r,d={entityName:s.entityName,entityNamePlural:s.entityNamePlural,filters:s.filters||[],columns:s.columns,cardFields:s.cardFields||[],enableBulkActions:s.enableBulkActions??!1,bulkActions:s.bulkActions||[],customActions:s.customActions,customRowActions:s.customRowActions,customListView:s.customListView,onEdit:i||s.onEdit};return e(go,{manager:l,config:d,formSections:s.formSections,onSave:n,onToggleStatus:o,defaultSort:s.defaultSort})}}function vo(e,t,a){return r=>{if(r.id){const t=a(r);e.updateEntity(r.id,t)}else{const a=t(r);e.createEntity(a)}}}function yo(e,t,a={}){const r=[];return Object.keys(t).forEach(e=>{if("id"!==e&&!e.endsWith("_at")){const a=t[e],s={key:e,header:No(e),label:No(e),...xo(e,a),sortable:!0,searchable:"string"==typeof a};r.push(s)}}),{title:e,columns:r,searchPlaceholder:`Buscar ${e.toLowerCase()}...`,itemsPerPage:10,enableCreate:!0,enableEdit:!0,enableDelete:!0,enableSearch:!0,enableFilters:!1,...a}}function xo(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 No(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase()).trim()}const wo=r.forwardRef(({className:t,value:a,...r},s)=>e(xt.Root,{ref:s,className:Aa("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",t),...r,children:e(xt.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(a||0)}%)`}})}));function ko({steps:a,currentStepIndex:r,onStepClick:s,className:n}){return e("div",{className:Aa("flex items-center justify-between mb-6",n),children:a.map((r,n)=>t("div",{className:"flex items-center flex-1",children:[e("div",{className:Aa("flex items-center justify-center w-10 h-10 rounded-full border-2 transition-colors font-medium",r.isActive&&"border-primary bg-primary text-primary-foreground",r.isCompleted&&"border-primary bg-primary text-primary-foreground",!r.isActive&&!r.isCompleted&&"border-muted-foreground/30 text-muted-foreground bg-background",s&&!r.isDisabled&&"cursor-pointer hover:border-primary/50",r.isDisabled&&"opacity-50 cursor-not-allowed"),onClick:()=>s&&!r.isDisabled&&s(n),role:s&&!r.isDisabled?"button":void 0,tabIndex:s&&!r.isDisabled?0:void 0,"aria-label":`${r.label} - ${r.isCompleted?"Completo":r.isActive?"Atual":"Pendente"}`,children:r.isCompleted?e(E,{className:"w-5 h-5"}):n+1}),n<a.length-1&&e("div",{className:Aa("flex-1 h-0.5 mx-2 transition-colors",r.isCompleted?"bg-primary":"bg-muted-foreground/30"),"aria-hidden":"true"})]},r.id))})}function So({steps:a,currentStepIndex:r,onStepClick:s,className:n}){return e("div",{className:Aa("flex items-center gap-2 mb-6 overflow-x-auto",n),children:a.map((r,n)=>t("div",{className:"flex items-center gap-2 whitespace-nowrap",children:[t("div",{className:Aa("flex items-center gap-2 px-3 py-2 rounded-md transition-colors",r.isActive&&"bg-primary text-primary-foreground font-medium",r.isCompleted&&"bg-primary/10 text-primary",!r.isActive&&!r.isCompleted&&"bg-muted text-muted-foreground",s&&!r.isDisabled&&"cursor-pointer hover:bg-primary/20",r.isDisabled&&"opacity-50 cursor-not-allowed"),onClick:()=>s&&!r.isDisabled&&s(n),role:s&&!r.isDisabled?"button":void 0,tabIndex:s&&!r.isDisabled?0:void 0,"aria-label":`${r.label} - ${r.isCompleted?"Completo":r.isActive?"Atual":"Pendente"}`,children:[e("span",{className:"text-sm font-medium",children:n+1}),e("span",{className:"text-sm",children:r.label}),r.isCompleted&&e(E,{className:"w-4 h-4 ml-1"})]}),n<a.length-1&&e("span",{className:"text-muted-foreground","aria-hidden":"true",children:"/"})]},r.id))})}function Co({steps:a,currentStepIndex:r,className:s}){const n=a[r],i=(r+1)/a.length*100;return t("div",{className:Aa("mb-6 space-y-2",s),children:[t("div",{className:"flex items-center justify-between text-sm",children:[t("span",{className:"text-muted-foreground",children:["Etapa ",r+1," de ",a.length]}),e("span",{className:"font-medium",children:n?.label})]}),e(wo,{value:i,className:"h-2"})]})}function _o({isFirstStep:r,isLastStep:s,canGoNext:n,canGoPrevious:i,isLoading:o,onPrevious:l,onNext:d,onSubmit:c,previousButtonText:u,nextButtonText:m,submitButtonText:h}){const{t:p}=Rs();return t(a,{children:[e("div",{children:i&&!r&&e(Da,{type:"button",variant:"outline",onClick:l,disabled:o,children:u||p("previous")})}),t("div",{className:"flex gap-2",children:[n&&!s&&e(Da,{type:"button",onClick:d,disabled:o,children:m||p("next")}),s&&e(Da,{type:"button",onClick:c,disabled:o,children:o?p("saving"):h||p("save")})]})]})}function Po({title:a,sections:r,initialData:n,onSubmit:i,onCancel:u,open:m,submitButtonText:h,isLoading:p=!1,usersData:f,showProgressIndicator:g=!0,progressType:b="stepper",validateOnNext:v=!0,allowSkipSections:y=!1,previousButtonText:x,nextButtonText:N,onStepChange:w,onStepValidationFail:k,renderProgressIndicator:S,renderButtons:C,currentStepIndex:_,onCurrentStepChange:P}){const[E,T]=c(0),I=_??E,A=P??T,R=l(null),[O,L]=c(null),j=d(e=>{R.current=e,L(e)},[]),F=o(()=>r&&Array.isArray(r)?r.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[r]),{formData:M,errors:D,updateField:z,handleSubmit:$}=Ji(F,n,void 0,m);s.useEffect(()=>{m&&A(0)},[m,A]);const U=d(()=>{const e=r[I];if(!e)return!0;const t=e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e),a={};let s=!0;return t.forEach(e=>{const t=M[e.name];if(e.required&&(""===t||null==t||Array.isArray(t)&&0===t.length)&&(a[e.name]=`${e.label} é obrigatório`,s=!1),e.validation&&"function"==typeof e.validation){const r=e.validation(t,M);r&&(a[e.name]=r,s=!1)}}),!s&&k&&k(I,a),s},[r,I,M,k]),V=d(()=>{if(v&&!U())return;const e=I+1;e<r.length&&(A(e),w?.(e,r[e].id))},[I,r,v,U,A,w]),q=d(()=>{const e=I-1;e>=0&&(A(e),w?.(e,r[e].id))},[I,r,A,w]),B=d(()=>{let e=!0;for(let t=0;t<r.length;t++){r[t].fields.flatMap(e=>"group"===e.type?e.fields||[]:e).forEach(t=>{const a=M[t.name];t.required&&(""===a||null==a||Array.isArray(a)&&0===a.length)&&(e=!1)})}e&&$(i)()},[r,M,$,i]),W=o(()=>r.map((e,t)=>({index:t,id:e.id,label:e.label||e.id,isActive:t===I,isCompleted:t<I,isDisabled:e.disabled||!1})),[r,I]),H=0===I,K=I===r.length-1,Q=o(()=>{if(!g)return null;if(S)return S(I,r.length,r);const t=y?e=>{A(e),w?.(e,r[e].id)}:void 0;switch(b){case"breadcrumb":return e(So,{steps:W,currentStepIndex:I,onStepClick:t});case"progressbar":return e(Co,{steps:W,currentStepIndex:I});default:return e(ko,{steps:W,currentStepIndex:I,onStepClick:t})}},[g,S,b,W,I,r,y,A,w]),G=o(()=>{const t={isFirstStep:H,isLastStep:K,canGoNext:I<r.length-1,canGoPrevious:I>0,isLoading:p,onPrevious:q,onNext:V,onSubmit:B,previousButtonText:x,nextButtonText:N,submitButtonText:h};return C?C(t):e(_o,{...t})},[H,K,I,r.length,p,q,V,B,x,N,h,C]),J=a=>{const r=(a.computedValue,M[a.name]),s=void 0!==r?r:"",n=D[a.name];switch(a.type){case"group":return t("div",{className:"space-y-2",children:[a.label&&e(Va,{className:"text-sm font-medium",children:a.label}),e("div",{className:Aa("grid gap-4",1===a.columns&&"grid-cols-1",2===a.columns&&"grid-cols-1 md:grid-cols-2",3===a.columns&&"grid-cols-1 md:grid-cols-3",4===a.columns&&"grid-cols-1 md:grid-cols-4",!a.columns&&"grid-cols-1"),children:a.fields?.map(e=>J(e))})]},a.name);case"number":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e($a,{id:a.name,type:"number",value:s,onChange:e=>z(a.name,""===e.target.value?"":Number(e.target.value)),placeholder:a.placeholder,disabled:a.disabled||void 0!==a.computedValue,className:n?"border-destructive":""}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"textarea":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(_r,{id:a.name,value:s,onChange:e=>z(a.name,e.target.value),placeholder:a.placeholder,disabled:a.disabled,rows:a.rows||3,className:n?"border-destructive":""}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"select":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),t(fr,{value:s,onValueChange:e=>z(a.name,e),children:[e(vr,{className:n?"border-destructive":"",children:e(br,{placeholder:a.placeholder||`Selecione ${a.label}`})}),e(Nr,{children:a.options?.map(t=>e(kr,{value:String(t.value),children:t.label},t.value))})]}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"multiselect":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(Fs,{options:a.options||[],value:Array.isArray(s)?s:[],onChange:e=>z(a.name,e),placeholder:a.placeholder,className:n?"border-destructive":""}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"color":case"color-picker":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(Yi,{value:s,onChange:e=>z(a.name,e),label:""}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"icon-picker":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(ao,{value:s,onChange:e=>z(a.name,e),label:""}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"user-select":return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e(no,{value:s,onChange:e=>z(a.name,e),placeholder:a.placeholder,disabled:a.disabled}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name);case"custom":return a.render?t("div",{className:"space-y-2",children:[a.label&&t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),a.render({value:s,onChange:e=>z(a.name,e),error:n,disabled:a.disabled}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name):null;default:return t("div",{className:"space-y-2",children:[t(Va,{htmlFor:a.name,children:[a.label,a.required&&e("span",{className:"text-destructive ml-1",children:"*"})]}),e($a,{id:a.name,type:a.type||"text",value:s,onChange:e=>z(a.name,e.target.value),placeholder:a.placeholder,disabled:a.disabled||void 0!==a.computedValue,className:n?"border-destructive":""}),n&&e("p",{className:"text-sm text-destructive",children:n})]},a.name)}},X=r[I];return e(Ga,{open:m,onOpenChange:u,children:t(er,{ref:j,className:"max-w-4xl max-h-[90vh] overflow-y-auto",children:[e(tr,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:e(rr,{className:"text-white",children:a})}),Q,e("div",{className:"space-y-4 py-4",children:X?.fields.map(e=>J(e))}),e("div",{className:"flex justify-between pt-4 border-t",children:G})]})})}wo.displayName=xt.Root.displayName;const Eo=({children:r})=>{const{isAuthenticated:n,isLoading:i}=$n();if(s.useEffect(()=>{if(!n)return;const e=()=>{Hs.areAllTokensValid()||Mn.logout()};e();const t=setInterval(e,3e5);return()=>clearInterval(t)},[n]),s.useEffect(()=>{if(i)return;if(n)return;if(Hs.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 r=bn();(async()=>{r?await Mn.loginDev():Mn.loginProd()})()},[n,i]),i)return e("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:t(qa,{className:"w-full max-w-md",children:[e(Ba,{className:"text-center",children:e(Wa,{className:"text-xl font-semibold",children:"Carregando..."})}),t(Ka,{className:"text-center",children:[e("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e("p",{className:"text-muted-foreground",children:"Verificando autenticação..."})]})]})});if(!n){const a=new URLSearchParams(window.location.search).has("access_token")||new URLSearchParams(window.location.hash.substring(1)).has("access_token");return e("div",a?{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:t(qa,{className:"w-full max-w-md",children:[e(Ba,{className:"text-center",children:e(Wa,{className:"text-xl font-semibold",children:"Processando..."})}),t(Ka,{className:"text-center",children:[e("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e("p",{className:"text-muted-foreground",children:"Processando tokens..."})]})]})}:{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:t(qa,{className:"w-full max-w-md",children:[e(Ba,{className:"text-center",children:e(Wa,{className:"text-xl font-semibold",children:"Iniciando..."})}),t(Ka,{className:"text-center",children:[e("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),e("p",{className:"text-muted-foreground",children:bn()?"Fazendo login automático...":"Redirecionando para autenticação..."})]})]})})}return e(a,{children:r})},To=g("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"}}),Io=r.forwardRef(({className:t,variant:a,...r},s)=>e("div",{ref:s,role:"alert",className:Aa(To({variant:a}),t),...r}));Io.displayName="Alert";const Ao=r.forwardRef(({className:t,...a},r)=>e("h5",{ref:r,className:Aa("mb-1 font-medium leading-none tracking-tight",t),...a}));Ao.displayName="AlertTitle";const Ro=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("text-sm [&_p]:leading-relaxed",t),...a}));Ro.displayName="AlertDescription";const Oo=()=>{const{processCallback:r}=$n(),[s,n]=c(null),[i,o]=c(!1);u(()=>{(async()=>{try{if(await r()){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 n("Falha na autenticação. Tente novamente.")}catch(e){n(e?.message||"Erro durante a autenticação. Tente novamente.")}})()},[r]);const l=async()=>{o(!0),n(null);try{await r()||n("Falha na autenticação. Tente novamente.")}catch(e){n(e?.message||"Erro ao tentar novamente.")}finally{o(!1)}},d=()=>{window.location.href="/"};return e("div",s?{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:t(qa,{className:"w-full max-w-md",children:[e(Ba,{className:"text-center",children:t(Wa,{className:"text-xl font-semibold text-destructive flex items-center justify-center gap-2",children:[e(I,{className:"h-5 w-5"}),"Erro na Autenticação"]})}),t(Ka,{className:"space-y-4",children:[e(Io,{variant:"destructive",children:e(Ro,{children:s})}),e("div",{className:"text-sm text-muted-foreground",children:e("p",{children:"Se o problema persistir, verifique se a URL de callback está configurada corretamente no provedor OAuth."})}),t("div",{className:"flex gap-2",children:[e(Da,{onClick:l,disabled:i,className:"flex-1",children:t(a,i?{children:[e(Ir,{size:"sm",className:"mr-2"}),"Tentando..."]}:{children:[e(Me,{className:"h-4 w-4 mr-2"}),"Tentar Novamente"]})}),e(Da,{onClick:d,variant:"outline",className:"flex-1",children:"Voltar ao Início"})]})]})]})}:{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:t(qa,{className:"w-full max-w-md",children:[e(Ba,{className:"text-center",children:e(Wa,{className:"text-xl font-semibold",children:"Processando Autenticação"})}),t(Ka,{className:"text-center",children:[e("div",{className:"flex justify-center mb-4",children:e(Ir,{size:"lg"})}),e("p",{className:"text-muted-foreground",children:"Processando tokens e redirecionando..."})]})]})})},Lo=()=>e("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:t(qa,{className:"w-full max-w-md",children:[e(Ba,{className:"text-center",children:e(Wa,{className:"text-2xl font-bold",children:"Acesso ao Sistema"})}),t(Ka,{className:"text-center space-y-4",children:[e("p",{className:"text-muted-foreground",children:"Faça login para acessar o sistema"}),e(Da,{onClick:async()=>{bn()?await Mn.loginDev():Mn.loginProd()},className:"w-full",size:"lg",children:bn()?"Login Desenvolvimento":"Entrar com Qualiex"})]})]})}),jo=n(void 0);function Fo({children:t,actions:a}){const[r,s]=c({}),[n,i]=c(a);return u(()=>{i(a)},[a]),e(jo.Provider,{value:{metadata:r,setMetadata:s,clearMetadata:()=>s({}),headerActions:n,setHeaderActions:i},children:t})}function Mo(){const e=i(jo);if(!e)throw new Error("usePageMetadataContext must be used within PageMetadataProvider");return e}function Do(e){const{setMetadata:t,clearMetadata:a}=Mo();u(()=>(t(e),()=>a()),[e.title,e.subtitle,t,a])}function zo(e){return{queryClient:e.queryClient||new ct({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}}),config:e}}const $o=Nt.Root,Uo=r.forwardRef(({className:t,...a},r)=>e(Nt.Item,{ref:r,className:Aa("border-b",t),...a}));Uo.displayName="AccordionItem";const Vo=r.forwardRef(({className:a,children:r,...s},n)=>e(Nt.Header,{className:"flex",children:t(Nt.Trigger,{ref:n,className:Aa("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",a),...s,children:[r,e(_,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));Vo.displayName=Nt.Trigger.displayName;const qo=r.forwardRef(({className:t,children:a,...r},s)=>e(Nt.Content,{ref:s,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...r,children:e("div",{className:Aa("pb-4 pt-0",t),children:a})}));qo.displayName=Nt.Content.displayName;const Bo=wt.Root,Wo=r.forwardRef(({className:t,...a},r)=>e(kt.Root,{ref:r,className:Aa("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",t),...a}));Wo.displayName=kt.Root.displayName;const Ho=r.forwardRef(({className:t,...a},r)=>e(kt.Image,{ref:r,className:Aa("aspect-square h-full w-full",t),...a}));Ho.displayName=kt.Image.displayName;const Ko=r.forwardRef(({className:t,...a},r)=>e(kt.Fallback,{ref:r,className:Aa("flex h-full w-full items-center justify-center rounded-full bg-muted",t),...a}));Ko.displayName=kt.Fallback.displayName;const Qo=r.forwardRef(({...t},a)=>e("nav",{ref:a,"aria-label":"breadcrumb",...t}));Qo.displayName="Breadcrumb";const Go=r.forwardRef(({className:t,...a},r)=>e("ol",{ref:r,className:Aa("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",t),...a}));Go.displayName="BreadcrumbList";const Jo=r.forwardRef(({className:t,...a},r)=>e("li",{ref:r,className:Aa("inline-flex items-center gap-1.5",t),...a}));Jo.displayName="BreadcrumbItem";const Xo=r.forwardRef(({asChild:t,className:a,...s},n)=>{const i=t?r.Fragment:"a";return e(i,{ref:n,className:Aa("transition-colors hover:text-foreground",a),...s})});Xo.displayName="BreadcrumbLink";const Yo=r.forwardRef(({className:t,...a},r)=>e("span",{ref:r,role:"link","aria-disabled":"true","aria-current":"page",className:Aa("font-normal text-foreground",t),...a}));Yo.displayName="BreadcrumbPage";const Zo=({children:t,className:a,...r})=>e("li",{role:"presentation","aria-hidden":"true",className:Aa("[&>svg]:size-3.5",a),...r,children:t??e(L,{})});Zo.displayName="BreadcrumbSeparator";const el=({className:a,...r})=>t("span",{role:"presentation","aria-hidden":"true",className:Aa("flex h-9 w-9 items-center justify-center",a),...r,children:[e(De,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"More"})]});el.displayName="BreadcrumbEllipsis";const tl=g("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"}}),al=r.forwardRef(({className:t,orientation:a,...r},s)=>e("div",{ref:s,className:Aa(tl({orientation:a}),t),...r}));function rl(e){return(t={})=>{const a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}function sl(e){return(t,a)=>{let r;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,s=a?.width?String(a.width):t;r=e.formattingValues[s]||e.formattingValues[t]}else{const t=e.defaultWidth,s=a?.width?String(a.width):e.defaultWidth;r=e.values[s]||e.values[t]}return r[e.argumentCallback?e.argumentCallback(t):t]}}function nl(e){return(t,a={})=>{const r=a.width,s=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],n=t.match(s);if(!n)return null;const i=n[0],o=r&&e.parsePatterns[r]||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 il(e){return(t,a={})=>{const r=t.match(e.matchPattern);if(!r)return null;const s=r[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(s.length)}}}al.displayName="ButtonGroup";const ol={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"}},ll={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},dl={ordinalNumber:(e,t)=>{const a=Number(e),r=a%100;if(r>20||r<10)switch(r%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:sl({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:sl({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:sl({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:sl({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:sl({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"})},cl={ordinalNumber:il({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:nl({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:nl({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:nl({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:nl({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:nl({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"})},ul={code:"en-US",formatDistance:(e,t,a)=>{let r;const s=ol[e];return r="string"==typeof s?s:1===t?s.one:s.other.replace("{{count}}",t.toString()),a?.addSuffix?a.comparison&&a.comparison>0?"in "+r:r+" ago":r},formatLong:{date:rl({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:rl({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:rl({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},formatRelative:(e,t,a,r)=>ll[e],localize:dl,match:cl,options:{weekStartsOn:0,firstWeekContainsDate:1}},ml={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"}},hl={date:rl({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:rl({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:rl({formats:{full:"{{date}} 'a las' {{time}}",long:"{{date}} 'a las' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},pl={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"},fl={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"},gl={ordinalNumber:(e,t)=>Number(e)+"º",era:sl({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","después de cristo"]},defaultWidth:"wide"}),quarter:sl({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:sl({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:sl({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:sl({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"})},bl={ordinalNumber:il({matchPattern:/^(\d+)(º)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}}),era:nl({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:nl({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:nl({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:nl({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:nl({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"})},vl={code:"es",formatDistance:(e,t,a)=>{let r;const s=ml[e];return r="string"==typeof s?s:1===t?s.one:s.other.replace("{{count}}",t.toString()),a?.addSuffix?a.comparison&&a.comparison>0?"en "+r:"hace "+r:r},formatLong:hl,formatRelative:(e,t,a,r)=>1!==t.getHours()?fl[e]:pl[e],localize:gl,match:bl,options:{weekStartsOn:1,firstWeekContainsDate:1}},yl={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"}},xl={date:rl({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:rl({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:rl({formats:{full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},Nl={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"},wl={ordinalNumber:(e,t)=>{const a=Number(e);return"week"===t?.unit?a+"ª":a+"º"},era:sl({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},defaultWidth:"wide"}),quarter:sl({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:sl({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:sl({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:sl({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"})},kl={ordinalNumber:il({matchPattern:/^(\d+)[ºªo]?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)}),era:nl({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:nl({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:nl({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:nl({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:nl({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"})},Sl={code:"pt-BR",formatDistance:(e,t,a)=>{let r;const s=yl[e];return r="string"==typeof s?s:1===t?s.one:s.other.replace("{{count}}",String(t)),a?.addSuffix?a.comparison&&a.comparison>0?"em "+r:"há "+r:r},formatLong:xl,formatRelative:(e,t,a,r)=>{const s=Nl[e];return"function"==typeof s?s(t):s},localize:wl,match:kl,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Cl({className:t,classNames:a,showOutsideDays:r=!0,...s}){return e(St,{showOutsideDays:r,className:Aa("p-3 pointer-events-auto",t),locale:Sl,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:Aa(Ma({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:Aa(Ma({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(be,{className:"h-4 w-4"}),IconRight:({...t})=>e(L,{className:"h-4 w-4"})},...s})}Cl.displayName="Calendar";const _l=Ct.Root,Pl=Ct.CollapsibleTrigger,El=Ct.CollapsibleContent;const Tl={Root:function({children:t,className:a}){return e("div",{className:Aa("space-y-4",a),children:t})},Item:function({children:t,onClick:a,className:r}){return e(qa,{className:Aa("transition-colors",a&&"cursor-pointer hover:bg-muted/50",r),onClick:a,children:e(Ka,{className:"p-4",children:t})})},Field:function({label:a,value:r,className:s}){return t("div",{className:Aa("flex justify-between items-center text-sm",s),children:[t("span",{className:"text-muted-foreground font-medium",children:[a,":"]}),e("span",{className:"text-foreground",children:r})]})}};function Il({date:a,onDateChange:r,placeholder:s="Pick a date",disabled:n=!1,className:i,disabledDates:o}){return t(Jr,{children:[e(Xr,{asChild:!0,children:t(Da,{variant:"outline",disabled:n,className:Aa("w-full justify-start text-left font-normal",!a&&"text-muted-foreground",i),children:[e(Pe,{className:"mr-2 h-4 w-4"}),a?N(a,"PPP"):e("span",{children:s})]})}),e(Yr,{className:"w-auto p-0",align:"start",children:e(Cl,{mode:"single",selected:a,onSelect:r,disabled:o,initialFocus:!0,className:"pointer-events-auto"})})]})}const Al=({shouldScaleBackground:t=!0,...a})=>e(_t.Root,{shouldScaleBackground:t,...a});Al.displayName="Drawer";const Rl=_t.Trigger,Ol=_t.Portal,Ll=_t.Close,jl=r.forwardRef(({className:t,...a},r)=>e(_t.Overlay,{ref:r,className:Aa("fixed inset-0 z-50 bg-black/80",t),...a}));jl.displayName=_t.Overlay.displayName;const Fl=r.forwardRef(({className:a,children:r,...s},n)=>t(Ol,{children:[e(jl,{}),t(_t.Content,{ref:n,className:Aa("fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background",a),...s,children:[e("div",{className:"mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted"}),r]})]}));Fl.displayName="DrawerContent";const Ml=({className:t,...a})=>e("div",{className:Aa("grid gap-1.5 p-4 text-center sm:text-left",t),...a});Ml.displayName="DrawerHeader";const Dl=({className:t,...a})=>e("div",{className:Aa("mt-auto flex flex-col gap-2 p-4",t),...a});Dl.displayName="DrawerFooter";const zl=r.forwardRef(({className:t,...a},r)=>e(_t.Title,{ref:r,className:Aa("text-lg font-semibold leading-none tracking-tight",t),...a}));zl.displayName=_t.Title.displayName;const $l=r.forwardRef(({className:t,...a},r)=>e(_t.Description,{ref:r,className:Aa("text-sm text-muted-foreground",t),...a}));function Ul({value:t,onChange:a,activeLabel:r,inactiveLabel:s,allLabel:n,placeholder:i,className:o="w-full sm:w-[180px]"}){const{t:l}=Rs(),d=[{id:"active",name:r||l("active")},{id:"inactive",name:s||l("inactive")},{id:"all",name:n||l("all")}];return e(Fs,{value:t,onChange:e=>a(e),options:d,getOptionValue:e=>e.id,getOptionLabel:e=>e.name,placeholder:i||l("select"),className:o})}$l.displayName=_t.Description.displayName;const Vl={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))]"},ql={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"};function Bl({children:t,cols:a="auto-fit",gap:r="md",className:s}){return e("div",{className:Aa("grid",Vl[a],ql[r],s),children:t})}const Wl=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-slot":"input-group",className:Aa("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}));Wl.displayName="InputGroup";const Hl=g("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"}}),Kl=r.forwardRef(({className:t,align:a,...r},s)=>e("div",{ref:s,"data-slot":"input-group-addon",className:Aa(Hl({align:a}),t),...r}));Kl.displayName="InputGroupAddon";const Ql=g("",{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"}}),Gl=r.forwardRef(({className:t,size:a,variant:r="ghost",...s},n)=>e(Da,{ref:n,"data-slot":"input-group-button",variant:r,className:Aa(Ql({size:a}),"rounded-none first:rounded-l-md last:rounded-r-md",t),...s}));Gl.displayName="InputGroupButton";const Jl=r.forwardRef(({className:t,...a},r)=>e($a,{ref:r,"data-slot":"input-group-control",className:Aa("flex-1 border-0 bg-transparent shadow-none","focus-visible:ring-0 focus-visible:ring-offset-0",t),...a}));Jl.displayName="InputGroupInput";const Xl=r.forwardRef(({className:t,...a},r)=>e(_r,{ref:r,"data-slot":"input-group-control",className:Aa("flex-1 border-0 bg-transparent shadow-none resize-none","focus-visible:ring-0 focus-visible:ring-offset-0",t),...a}));Xl.displayName="InputGroupTextarea";const Yl=r.forwardRef(({className:a,keys:r,children:s,...n},i)=>r&&r.length>0?t("span",{className:Aa("inline-flex items-center gap-1",a),children:[r.map((t,a)=>e("kbd",{className:Aa("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("kbd",{ref:i,className:Aa("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"),...n,children:s})]}):e("kbd",{ref:i,className:Aa("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",a),...n,children:s}));Yl.displayName="Kbd";const Zl=r.forwardRef(({className:t,children:a,...r},s)=>e("select",{ref:s,className:Aa("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),...r,children:a}));Zl.displayName="NativeSelect";const ed=r.forwardRef(({className:t,...a},r)=>e("h1",{ref:r,className:Aa("scroll-m-20 text-4xl font-extrabold tracking-tight lg:text-5xl",t),...a}));ed.displayName="H1";const td=r.forwardRef(({className:t,...a},r)=>e("h2",{ref:r,className:Aa("scroll-m-20 border-b pb-2 text-3xl font-semibold tracking-tight first:mt-0",t),...a}));td.displayName="H2";const ad=r.forwardRef(({className:t,...a},r)=>e("h3",{ref:r,className:Aa("scroll-m-20 text-2xl font-semibold tracking-tight",t),...a}));ad.displayName="H3";const rd=r.forwardRef(({className:t,...a},r)=>e("h4",{ref:r,className:Aa("scroll-m-20 text-xl font-semibold tracking-tight",t),...a}));rd.displayName="H4";const sd=r.forwardRef(({className:t,...a},r)=>e("p",{ref:r,className:Aa("leading-7 [&:not(:first-child)]:mt-6",t),...a}));sd.displayName="P";const nd=r.forwardRef(({className:t,...a},r)=>e("p",{ref:r,className:Aa("text-xl text-muted-foreground",t),...a}));nd.displayName="Lead";const id=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,className:Aa("text-lg font-semibold",t),...a}));id.displayName="Large";const od=r.forwardRef(({className:t,...a},r)=>e("small",{ref:r,className:Aa("text-sm font-medium leading-none",t),...a}));od.displayName="Small";const ld=r.forwardRef(({className:t,...a},r)=>e("p",{ref:r,className:Aa("text-sm text-muted-foreground",t),...a}));ld.displayName="Muted";const dd=r.forwardRef(({className:t,...a},r)=>e("code",{ref:r,className:Aa("relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold",t),...a}));dd.displayName="InlineCode";const cd=r.forwardRef(({className:t,...a},r)=>e("blockquote",{ref:r,className:Aa("mt-6 border-l-2 pl-6 italic",t),...a}));cd.displayName="Blockquote";const ud=r.forwardRef(({className:t,...a},r)=>e("ul",{ref:r,className:Aa("my-6 ml-6 list-disc [&>li]:mt-2",t),...a}));function md({items:t,maxItems:a=3,className:r}){return t.length>a&&(t[0],t.slice(-(a-1))),t.length,e(Qo,{className:r})}function hd(){const e=mt();return(()=>{const t=e.pathname.split("/").filter(Boolean),a=[{label:"Exemplos",href:"/"}];let r="";return t.forEach((e,s)=>{r+=`/${e}`;const n=s===t.length-1,i=e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");a.push({label:i,href:n?void 0:r,isCurrentPage:n})}),a})()}ud.displayName="List";const pd=({className:t,...a})=>e("nav",{role:"navigation","aria-label":"pagination",className:Aa("mx-auto flex w-full justify-center",t),...a});pd.displayName="Pagination";const fd=r.forwardRef(({className:t,...a},r)=>e("ul",{ref:r,className:Aa("flex flex-row items-center gap-1",t),...a}));fd.displayName="PaginationContent";const gd=r.forwardRef(({className:t,...a},r)=>e("li",{ref:r,className:Aa("",t),...a}));gd.displayName="PaginationItem";const bd=({className:t,isActive:a,size:r="icon",...s})=>e("a",{"aria-current":a?"page":void 0,className:Aa(Ma({variant:a?"outline":"ghost",size:r}),t),...s});bd.displayName="PaginationLink";const vd=({className:a,...r})=>t(bd,{"aria-label":"Go to previous page",size:"default",className:Aa("gap-1 pl-2.5",a),...r,children:[e(be,{className:"h-4 w-4"}),e("span",{children:"Previous"})]});vd.displayName="PaginationPrevious";const yd=({className:a,...r})=>t(bd,{"aria-label":"Go to next page",size:"default",className:Aa("gap-1 pr-2.5",a),...r,children:[e("span",{children:"Next"}),e(L,{className:"h-4 w-4"})]});yd.displayName="PaginationNext";const xd=({className:a,...r})=>t("span",{"aria-hidden":!0,className:Aa("flex h-9 w-9 items-center justify-center",a),...r,children:[e(De,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"More pages"})]});xd.displayName="PaginationEllipsis";const Nd=r.forwardRef(({className:t,...a},r)=>e(Pt.Root,{className:Aa("grid gap-2",t),...a,ref:r}));Nd.displayName=Pt.Root.displayName;const wd=r.forwardRef(({className:t,...a},r)=>e(Pt.Item,{ref:r,className:Aa("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(Pt.Indicator,{className:"flex items-center justify-center",children:e(j,{className:"h-2.5 w-2.5 fill-current text-current"})})}));wd.displayName=Pt.Item.displayName;const kd=g("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"}}),Sd=r.forwardRef(({className:a,variant:r,size:s,onClear:n,showClearButton:i=!0,value:o,...l},d)=>{const c=null!=o&&""!==o;return t("div",{className:Aa(kd({variant:r,size:s,className:a})),children:[e(R,{className:"ml-3 h-4 w-4 shrink-0 text-muted-foreground"}),e("input",{type:"text",className:Aa("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:o,...l}),i&&c&&n&&e("button",{type:"button",onClick:n,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(C,{className:"h-4 w-4"})})]})});Sd.displayName="Searchbar";const Cd=r.forwardRef(({className:t,orientation:a="horizontal",decorative:r=!0,...s},n)=>e(Et.Root,{ref:n,decorative:r,orientation:a,className:Aa("shrink-0 bg-border","horizontal"===a?"h-[1px] w-full":"h-full w-[1px]",t),...s}));Cd.displayName=Et.Root.displayName;const _d=Je.Root,Pd=Je.Trigger,Ed=Je.Close,Td=Je.Portal,Id=r.forwardRef(({className:t,...a},r)=>e(Je.Overlay,{className:Aa("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:r}));Id.displayName=Je.Overlay.displayName;const Ad=g("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"}}),Rd=r.forwardRef(({side:a="right",className:r,children:s,...n},i)=>t(Td,{children:[e(Id,{}),t(Je.Content,{ref:i,className:Aa(Ad({side:a}),r),...n,children:[s,t(Je.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(C,{className:"h-4 w-4"}),e("span",{className:"sr-only",children:"Close"})]})]})]}));Rd.displayName=Je.Content.displayName;const Od=({className:t,...a})=>e("div",{className:Aa("flex flex-col space-y-2 text-center sm:text-left",t),...a});Od.displayName="SheetHeader";const Ld=({className:t,...a})=>e("div",{className:Aa("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a});Ld.displayName="SheetFooter";const jd=r.forwardRef(({className:t,...a},r)=>e(Je.Title,{ref:r,className:Aa("text-lg font-semibold text-foreground",t),...a}));jd.displayName=Je.Title.displayName;const Fd=r.forwardRef(({className:t,...a},r)=>e(Je.Description,{ref:r,className:Aa("text-sm text-muted-foreground",t),...a}));Fd.displayName=Je.Description.displayName;const Md=Tt.Provider,Dd=Tt.Root,zd=Tt.Trigger,$d=r.forwardRef(({className:t,sideOffset:a=4,...r},s)=>e(Tt.Content,{ref:s,sideOffset:a,className:Aa("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),...r}));$d.displayName=Tt.Content.displayName;const Ud="sidebar:state",Vd=r.createContext(null);function qd(){const e=r.useContext(Vd);if(!e)throw new Error("useSidebar must be used within a SidebarProvider.");return e}const Bd=r.forwardRef(({defaultOpen:t=!0,open:a,onOpenChange:s,className:n,style:i,children:o,...l},d)=>{const[c,u]=r.useState(!1);r.useEffect(()=>{const e=()=>u(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const[m,h]=r.useState(!1),[p,f]=r.useState(()=>{if("undefined"!=typeof window){const e=localStorage.getItem(Ud);return null!==e?"true"===e:t}return t}),g=a??p,b=r.useCallback(e=>{const t="function"==typeof e?e(g):e;s?s(t):f(t),"undefined"!=typeof window&&localStorage.setItem(Ud,String(t))},[s,g]),v=r.useCallback(()=>c?h(e=>!e):b(e=>!e),[c,b,h]);r.useEffect(()=>{const e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),v())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[v]);const y=g?"expanded":"collapsed",x=r.useMemo(()=>({state:y,open:g,setOpen:b,isMobile:c,openMobile:m,setOpenMobile:h,toggleSidebar:v}),[y,g,b,c,m,h,v]);return e(Vd.Provider,{value:x,children:e(Md,{delayDuration:0,children:e("div",{className:Aa("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar sidebar-container",n),style:{"--sidebar-width":"16rem","--sidebar-width-icon":"4.5rem",...i},ref:d,...l,children:o})})})});Bd.displayName="SidebarProvider";const Wd=r.forwardRef(({side:a="left",variant:r="sidebar",collapsible:s="offcanvas",className:n,children:i,...o},l)=>{const{isMobile:d,state:c,openMobile:u,setOpenMobile:m}=qd();return"none"===s?e("div",{className:Aa("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",n),ref:l,...o,children:i}):d?e(_d,{open:u,onOpenChange:m,...o,children:t(Rd,{"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(jd,{className:"sr-only",children:"Menu de Navegação"}),e("div",{className:"flex h-full w-full flex-col",children:i})]})}):t("div",{ref:l,className:"group peer hidden md:block text-sidebar-foreground","data-state":c,"data-collapsible":"collapsed"===c?s:"","data-variant":r,"data-side":a,children:[e("div",{className:Aa("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"===r||"inset"===r?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),e("div",{className:Aa("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"===r||"inset"===r?"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",n),...o,children:e("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:i})})]})});Wd.displayName="Sidebar";const Hd=r.forwardRef(({className:a,onClick:r,...s},n)=>{const{toggleSidebar:i}=qd();return t(Da,{ref:n,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:Aa("h-7 w-7",a),onClick:e=>{r?.(e),i()},...s,children:[e(ze,{}),e("span",{className:"sr-only",children:"Toggle Sidebar"})]})});Hd.displayName="SidebarTrigger";const Kd=r.forwardRef(({className:t,...a},r)=>{const{toggleSidebar:s}=qd();return e("button",{ref:r,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:s,title:"Toggle Sidebar",className:Aa("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})});Kd.displayName="SidebarRail";const Qd=r.forwardRef(({className:t,...a},r)=>e("main",{ref:r,className:Aa("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}));Qd.displayName="SidebarInset";const Gd=r.forwardRef(({className:t,...a},r)=>e($a,{ref:r,"data-sidebar":"input",className:Aa("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",t),...a}));Gd.displayName="SidebarInput";const Jd=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-sidebar":"header",className:Aa("flex flex-col gap-2 p-2",t),...a}));Jd.displayName="SidebarHeader";const Xd=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-sidebar":"footer",className:Aa("flex flex-col gap-2 p-2",t),...a}));Xd.displayName="SidebarFooter";const Yd=r.forwardRef(({className:t,...a},r)=>e(Cd,{ref:r,"data-sidebar":"separator",className:Aa("mx-2 w-auto bg-sidebar-border",t),...a}));Yd.displayName="SidebarSeparator";const Zd=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-sidebar":"content",className:Aa("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",t),...a}));Zd.displayName="SidebarContent";const ec=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-sidebar":"group",className:Aa("relative flex w-full min-w-0 flex-col p-2",t),...a}));ec.displayName="SidebarGroup";const tc=r.forwardRef(({className:t,asChild:a=!1,...r},s)=>e(a?f:"div",{ref:s,"data-sidebar":"group-label",className:Aa("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}));tc.displayName="SidebarGroupLabel";const ac=r.forwardRef(({className:t,asChild:a=!1,...r},s)=>e(a?f:"button",{ref:s,"data-sidebar":"group-action",className:Aa("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}));ac.displayName="SidebarGroupAction";const rc=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-sidebar":"group-content",className:Aa("w-full text-sm",t),...a}));rc.displayName="SidebarGroupContent";const sc=r.forwardRef(({className:t,...a},r)=>e("ul",{ref:r,"data-sidebar":"menu",className:Aa("flex w-full min-w-0 flex-col gap-1",t),...a}));sc.displayName="SidebarMenu";const nc=r.forwardRef(({className:t,...a},r)=>e("li",{ref:r,"data-sidebar":"menu-item",className:Aa("group/menu-item relative",t),...a}));nc.displayName="SidebarMenuItem";const ic=g("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"}}),oc=r.forwardRef(({asChild:a=!1,isActive:r=!1,variant:s="default",size:n="default",tooltip:i,className:o,...l},d)=>{const c=a?f:"button",{isMobile:u,state:m}=qd(),h=e(c,{ref:d,"data-sidebar":"menu-button","data-size":n,"data-active":r,className:Aa(ic({variant:s,size:n}),o),...l});return i?("string"==typeof i&&(i={children:i}),t(Dd,{children:[e(zd,{asChild:!0,children:h}),e($d,{side:"right",align:"center",hidden:"collapsed"!==m||u,...i})]})):h});oc.displayName="SidebarMenuButton";const lc=r.forwardRef(({className:t,asChild:a=!1,showOnHover:r=!1,...s},n)=>e(a?f:"button",{ref:n,"data-sidebar":"menu-action",className:Aa("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),...s}));lc.displayName="SidebarMenuAction";const dc=r.forwardRef(({className:t,...a},r)=>e("div",{ref:r,"data-sidebar":"menu-badge",className:Aa("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}));dc.displayName="SidebarMenuBadge";const cc=r.forwardRef(({className:a,showIcon:s=!1,...n},i)=>{const o=r.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return t("div",{ref:i,"data-sidebar":"menu-skeleton",className:Aa("rounded-md h-8 flex gap-2 px-2 items-center",a),...n,children:[s&&e("div",{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),e("div",{className:"h-4 flex-1 max-w-[--skeleton-width] skeleton-width","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":o}})]})});cc.displayName="SidebarMenuSkeleton";const uc=r.forwardRef(({className:t,...a},r)=>e("ul",{ref:r,"data-sidebar":"menu-sub",className:Aa("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}));uc.displayName="SidebarMenuSub";const mc=r.forwardRef(({...t},a)=>e("li",{ref:a,...t}));mc.displayName="SidebarMenuSubItem";const hc=r.forwardRef(({asChild:t=!1,size:a="md",isActive:r,className:s,...n},i)=>e(t?f:"a",{ref:i,"data-sidebar":"menu-sub-button","data-size":a,"data-active":r,className:Aa("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"===a&&"text-xs","md"===a&&"text-sm","group-data-[collapsible=icon]:hidden",s),...n}));hc.displayName="SidebarMenuSubButton";const pc=r.forwardRef(({className:a,...r},s)=>t(It.Root,{ref:s,className:Aa("relative flex w-full touch-none select-none items-center",a),...r,children:[e(It.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:e(It.Range,{className:"absolute h-full bg-primary"})}),e(It.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"})]}));pc.displayName=It.Root.displayName;const fc=({...t})=>{const{theme:a="system"}=At();return e(k,{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})},gc=Rt.Root,bc=r.forwardRef(({className:t,...a},r)=>e(Rt.List,{ref:r,className:Aa("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",t),...a}));bc.displayName=Rt.List.displayName;const vc=r.forwardRef(({className:t,...a},r)=>e(Rt.Trigger,{ref:r,className:Aa("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}));vc.displayName=Rt.Trigger.displayName;const yc=r.forwardRef(({className:t,...a},r)=>e(Rt.Content,{ref:r,className:Aa("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",t),...a}));function xc({children:t,className:a}){return e("div",{className:Aa("flex flex-col h-full",a),children:e(Zi,{className:"flex-1",children:e("div",{className:"space-y-6 p-6",children:t})})})}function Nc({title:a,description:r,actions:s,className:n}){return t("div",{className:Aa("space-y-4",n),children:[t("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[t("div",{className:"space-y-1",children:[e("h2",{className:"text-2xl font-bold tracking-tight",children:a}),r&&e("p",{className:"text-muted-foreground text-sm",children:r})]}),s&&e("div",{className:"flex items-center gap-2 flex-wrap",children:s})]}),e(Cd,{})]})}function wc({children:t,className:a}){return e("div",{className:Aa("space-y-6",a),children:t})}yc.displayName=Rt.Content.displayName;const kc=g("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"}}),Sc=r.forwardRef(({className:t,variant:a,size:r,...s},n)=>e(Ot.Root,{ref:n,className:Aa(kc({variant:a,size:r,className:t})),...s}));Sc.displayName=Ot.Root.displayName;const Cc=r.createContext({size:"default",variant:"default"}),_c=r.forwardRef(({className:t,variant:a,size:r,children:s,...n},i)=>e(Lt.Root,{ref:i,className:Aa("flex items-center justify-center gap-1",t),...n,children:e(Cc.Provider,{value:{variant:a,size:r},children:s})}));_c.displayName=Lt.Root.displayName;const Pc=r.forwardRef(({className:t,children:a,variant:s,size:n,...i},o)=>{const l=r.useContext(Cc);return e(Lt.Item,{ref:o,className:Aa(kc({variant:l.variant||s,size:l.size||n}),t),...i,children:a})});function Ec({manager:a,config:r,onEdit:s,onDelete:n}){const{t:i}=Rs();return a.isLoading?e(Bl,{children:Array.from({length:3}).map((a,r)=>t(qa,{children:[t(Ba,{children:[e(ls,{className:"h-4 w-3/4"}),e(ls,{className:"h-3 w-1/2"})]}),e(Ka,{children:t("div",{className:"space-y-2",children:[e(ls,{className:"h-3 w-full"}),e(ls,{className:"h-3 w-2/3"})]})})]},r))}):e(Tl.Root,{children:a.entities.map(a=>t(Tl.Item,{onClick:()=>s(a),children:[e(Ba,{className:"pb-3",children:t("div",{className:"flex items-start justify-between",children:[t("div",{className:"flex-1 min-w-0",children:[e(Wa,{className:"text-base leading-6 truncate",children:a.title||a.name||i("no_title")}),e(Ha,{className:"text-sm",children:N(new Date(a.created_at),"dd/MM/yyyy HH:mm",{locale:Sl})})]}),t("div",{className:"flex items-center gap-2 ml-2",children:[a.link&&e(Da,{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),w.info(i("link_copied")))}catch(t){window.location.href=e}})(a.link)},title:i("open_external_link"),children:e($e,{className:"h-4 w-4"})}),e("div",{onClick:e=>e.stopPropagation(),children:e(Ri,{onEdit:()=>s(a),onDelete:n?()=>n(a):void 0,canDelete:!!n})})]})]})}),e(Ka,{className:"pt-0",children:e("div",{className:"space-y-2",children:r.cardFields?.map(t=>{const r=a[t.key];return r?e(Tl.Field,{label:t.label,value:t.render?t.render(r,a):String(r)},String(t.key)):null})})})]},a.id))})}function Tc({data:a,columns:r,sortField:s,sortDirection:n,onSort:i,onRowClick:l,renderActions:d,isLoading:c=!1,emptyMessage:u="Nenhum item encontrado",className:m,enableSelection:h=!1,selectedIds:p=[],onSelectItem:f,onSelectAll:g,isAllSelected:b=!1}){const v=o(()=>{const e=r.reduce((e,t)=>t.width?e:e+(t.weight??1),0);return r.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}%`})},[r]);return c?e("div",{className:"flex-1 overflow-auto",children:e("div",{className:"p-4 space-y-3",children:[...Array(5)].map((t,a)=>e(ls,{className:"h-12 w-full"},a))})}):0===a.length?e("div",{className:"flex-1 flex items-center justify-center",children:e("div",{className:"text-center text-muted-foreground",children:e("p",{children:u})})}):e("div",{className:"flex-1 overflow-auto",children:t(ti,{className:m,children:[e(ai,{className:"sticky top-0 bg-background z-10",children:t(ni,{children:[h&&e(ii,{className:"w-[40px]",children:e(Cr,{checked:b,onCheckedChange:g,"aria-label":"Selecionar todos"})}),r.map((a,r)=>{return e(ii,{className:a.className,style:{width:v[r]},children:a.sortable&&i?t("button",{onClick:()=>i(String(a.key)),className:"flex items-center hover:text-foreground transition-colors font-medium",children:[a.header,(o=String(a.key),s!==o?e(U,{size:14,className:"ml-1 opacity-50"}):e("asc"===n?V:q,{size:14,className:"ml-1"}))]}):e("span",{className:"font-medium",children:a.header})},String(a.key));var o}),d&&e(ii,{className:"w-[80px] text-right",children:"Ações"})]})}),e(ri,{children:a.map(a=>t(ni,{onClick:()=>l?.(a),className:l?"cursor-pointer":"",children:[h&&e(oi,{children:e(Cr,{checked:p.includes(a.id),onCheckedChange:()=>f?.(a.id),onClick:e=>e.stopPropagation(),"aria-label":`Selecionar item ${a.id}`})}),r.map(t=>e(oi,{className:t.className,children:t.render?t.render(a):String(a[t.key]??"-")},String(t.key))),d&&e(oi,{className:"text-right",onClick:e=>e.stopPropagation(),children:d(a)})]},a.id))})]})})}function Ic({onEdit:a,onDelete:r,onToggleStatus:s,isActive:n=!0,canEdit:i=!0,canDelete:o=!0,customActions:l=[],renderAs:d="dropdown",variant:c="default"}){const{t:u}=Rs(),m=[];return a&&i&&m.push({icon:F,label:u("edit"),onClick:a,variant:"default"}),s&&m.push({icon:n?M:D,label:u(n?"deactivate":"activate"),onClick:s,variant:"default"}),l.forEach(e=>{!1!==e.show&&m.push({icon:e.icon,label:e.label,onClick:e.onClick,variant:e.variant||"default"})}),r&&o&&m.push({icon:z,label:u("remove"),onClick:r,variant:"destructive"}),0===m.length?null:"dropdown"===d?t(gi,{children:[e(bi,{asChild:!0,children:e(Da,{variant:"ghost",size:"compact"===c?"sm":"default",className:"compact"===c?"h-7 px-2":"",children:e(S,{size:"compact"===c?14:16})})}),e(Si,{align:"end",className:"bg-background border border-border shadow-lg min-w-[120px]",children:m.map((a,r)=>t(Ci,{onClick:a.onClick,className:"destructive"===a.variant?"text-destructive":"",children:[a.icon&&e(a.icon,{className:"mr-2 h-4 w-4"}),a.label]},r))})]}):e("div",{className:"flex items-center gap-1",children:m.map((a,r)=>t(Da,{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(a.icon,{size:"compact"===c?14:16}),"compact"!==c&&e("span",{className:"ml-1",children:a.label})]},r))})}function Ac({searchValue:a="",onSearchChange:r,customFilters:s=[],onClearFilters:n,showClearButton:i=!0,layout:o="horizontal"}){const{t:l}=Rs(),d=a||s.length>0;return t("div",{className:`flex ${"vertical"===o?"flex-col":"flex-row items-center"} gap-2 w-full`,children:[r&&t("div",{className:"relative flex-1 min-w-[200px]",children:[e(R,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e($a,{type:"text",placeholder:l("search"),value:a,onChange:e=>r(e.target.value),className:"pl-9 h-9"})]}),s.map((t,a)=>e("div",{className:"vertical"===o?"w-full":"",children:t},a)),i&&d&&n&&t(Da,{variant:"ghost",size:"sm",onClick:n,className:"h-9 px-3 whitespace-nowrap",children:[e(C,{size:14,className:"mr-1"}),l("clear_filters")]})]})}function Rc({data:t,renderCard:a,isLoading:r=!1,emptyMessage:s="Nenhum item encontrado",columns:n,gap:i="md",className:o}){return r?e(Bl,{cols:n?String(n):"auto-fit",gap:i,className:o,children:[...Array(6)].map((t,a)=>e(ls,{className:"h-48 w-full"},a))}):0===t.length?e("div",{className:"flex items-center justify-center p-8",children:e("div",{className:"text-center text-muted-foreground",children:e("p",{children:s})})}):e(Bl,{cols:n?String(n):"auto-fit",gap:i,className:o,children:t.map(a)})}function Oc(e){const t=ht();return{onNew:()=>{const a=e.newPath||`${e.basePath}/new`;t(a)},onEdit:a=>{const r=e.editPath?e.editPath.replace(":id",a.id):`${e.basePath}/${a.id}/edit`;t(r)}}}function Lc(e,t){const a=Oc({basePath:e,newPath:t.newPath,editPath:t.editPath});return{useCustomRouting:!0,onNew:a.onNew,onEdit:a.onEdit}}Pc.displayName=Lt.Item.displayName;const jc=(e={})=>{const{alias:t}=$n(),{enabled:a=!0}=e;return lt({queryKey:["qualiex-all-users",t],queryFn:async()=>t?hn.getAllUsers(t):[],enabled:a&&!!t,staleTime:3e5,retry:2})};const Fc=new class{async getUserPreferences(e,t){if(!Hs.areAllTokensValid())return null;const a=an();try{const{data:r,error:s}=await a.schema("common").from("user_preferences").select("*").eq("id_user",e).eq("alias",t).maybeSingle();if(s)return"PGRST116"===s.code?this.createDefaultPreferences(e,t):("42501"===s.code||"PGRST301"===s.code||s.message?.includes("permission denied"),null);if(!r)return this.createDefaultPreferences(e,t);const n=r;return{locale:n.locale,timezone:n.timezone,datetimeFormat:n.datetime_format}}catch(r){return null}}async createDefaultPreferences(e,t){const a=an(),r={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(r).select().single();if(t)throw t;const s=e;return{locale:s.locale,timezone:s.timezone,datetimeFormat:s.datetime_format}}catch(s){throw s}}async updatePreferences(e,t,a){const r=an();try{const{error:s}=await r.schema("common").from("user_preferences").update(a).eq("id_user",e).eq("alias",t);if(s)throw s}catch(s){throw s}}};var Mc=Object.defineProperty,Dc=(e,t,a)=>((e,t,a)=>t in e?Mc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const zc=new class{constructor(){Dc(this,"cache",{}),Dc(this,"cacheTimestamps",new Map),Dc(this,"CACHE_TTL",3e5),Dc(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(!Hs.areAllTokensValid())return{};const t=an(),{data:a,error:r}=await t.schema("common").from("translations").select("key, pt, en, es").eq("is_removed",!1);if(r)return"42501"===r.code||"PGRST301"===r.code||r.message?.includes("permission denied")||r.message?.includes("No suitable key"),{};const s={};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&&(s[t.key]=a)}),this.cache[e]=s,this.cacheTimestamps.set(e,Date.now()),s}catch(t){return{}}}async upsertTranslation(e,t,a,r){const s=an(),{error:n}=await s.schema("common").from("translations").upsert({key:e,pt:t,en:a,es:r},{onConflict:"key"});if(n)throw n;this.clearCache()}async bulkUpsertTranslations(e){const t=an(),{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 $c=Object.defineProperty,Uc=(e,t,a)=>((e,t,a)=>t in e?$c(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,"symbol"!=typeof t?t+"":t,a);const Vc="true"===import.meta.env.VITE_I18N_DEBUG_MODE;Ta.use(new class{constructor(e=!1){Uc(this,"type","backend"),Uc(this,"isDebugMode"),Uc(this,"cache",new Map),Uc(this,"loadingPromises",new Map),this.isDebugMode=e}read(e,t,a){if(!Hs.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 r=zc.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,r),r.then(()=>{a(null,this.cache.get(e)||{})})}create(e,t,a,r){}}(Vc)).use(xs).init({fallbackLng:"pt-BR",lng:"pt-BR",defaultNS:"translations",ns:["translations"],interpolation:{escapeValue:!1},react:{useSuspense:!1},saveMissing:!1,returnEmptyString:!1,parseMissingKeyHandler:(e,t)=>Vc?`[${e} ❌]`:`[⚠️ ${e}]`});const qc=n(void 0),Bc=({children:t})=>{const{user:a,alias:r}=$n(),[s,n]=c({locale:"pt-BR",timezone:"America/Sao_Paulo",datetimeFormat:"dd/MM/yyyy HH:mm"}),[i,o]=c(!0);u(()=>{(async()=>{if(a?.id&&r)try{const e=await Fc.getUserPreferences(a.id,r);e&&(n({locale:e.locale,timezone:e.timezone,datetimeFormat:e.datetimeFormat}),await Ta.changeLanguage(e.locale),localStorage.setItem("i18nextLng",e.locale))}catch(e){}finally{o(!1)}else o(!1)})()},[a?.id,r]);const l=d(async e=>{if(a?.id&&r)try{await Fc.updatePreferences(a.id,r,{locale:e}),n(t=>({...t,locale:e})),await Ta.changeLanguage(e),localStorage.setItem("i18nextLng",e)}catch(t){throw t}},[a?.id,r]),m=d(async e=>{if(a?.id&&r)try{await Fc.updatePreferences(a.id,r,{timezone:e}),n(t=>({...t,timezone:e}))}catch(t){throw t}},[a?.id,r]),h=d(async e=>{if(a?.id&&r)try{await Fc.updatePreferences(a.id,r,{datetime_format:e}),n(t=>({...t,datetimeFormat:e}))}catch(t){throw t}},[a?.id,r]);return e(qc.Provider,{value:{...s,setLocale:l,setTimezone:m,setDatetimeFormat:h,isLoading:i},children:t})},Wc=()=>{const e=i(qc);if(!e)throw new Error("useLocale deve ser usado dentro de LocaleProvider");return e},Hc=[{value:"pt-BR",label:"Português (BR)",flag:"🇧🇷"},{value:"en-US",label:"English (US)",flag:"🇺🇸"},{value:"es-ES",label:"Español",flag:"🇪🇸"}],Kc=[{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"}],Qc=[{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"}],Gc=()=>{const{locale:a,datetimeFormat:r,timezone:s,setLocale:n,setDatetimeFormat:i,setTimezone:o}=Wc(),{t:l}=Rs();return t("div",{className:"space-y-4 p-4",children:[t("div",{children:[t("label",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e(Ue,{className:"h-4 w-4"}),l("language")]}),t(fr,{value:a,onValueChange:n,children:[e(vr,{children:e(br,{})}),e(Nr,{children:Hc.map(e=>t(kr,{value:e.value,children:[e.flag," ",e.label]},e.value))})]})]}),t("div",{children:[t("label",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e(pe,{className:"h-4 w-4"}),l("timezone")||"Fuso Horário"]}),t(fr,{value:s,onValueChange:o,children:[e(vr,{children:e(br,{})}),e(Nr,{children:Qc.map(t=>e(kr,{value:t.value,children:t.label},t.value))})]})]}),t("div",{children:[t("label",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e(Pe,{className:"h-4 w-4"}),l("dateTimeFormat")||"Formato de Data/Hora"]}),t(fr,{value:r,onValueChange:i,children:[e(vr,{children:e(br,{})}),e(Nr,{children:Kc.map(a=>e(kr,{value:a.value,children:t("div",{className:"flex flex-col items-start",children:[e("span",{children:a.label}),t("span",{className:"text-xs text-muted-foreground",children:[a.description," • ",a.example]})]})},a.value))})]})]})]})},Jc=s.memo(({variant:r="card",className:n="",selectedUnit:i,onUnitChange:o})=>{const{user:l,companies:d,alias:u,isAuthenticated:m,logout:h,switchUnit:p}=$n(),[f,g]=c(!1),b=d?.[0]||null,v=u?d?.find(e=>e.alias===u):b,y=d||[],x=i||v||b||b,N=s.useCallback(e=>{o?o(e):p(e)},[o,p]),w=s.useMemo(()=>{if(!y?.length)return[];const e=new Map;y.forEach(t=>{e.set(t.alias,t)});const t=Array.from(e.values()),a=t.find(e=>e.alias===x?.alias),r=t.filter(e=>e.alias!==x?.alias);return r.sort((e,t)=>(e.name||"").localeCompare(t.name||"","pt-BR",{sensitivity:"base"})),a?[a,...r]:r},[y,x?.alias]);if(!m||!l)return null;const k=()=>t(a,{children:[t("div",{className:"flex items-center space-x-3",children:[e("div",{className:"flex-shrink-0",children:e("div",{className:"w-10 h-10 bg-primary rounded-full flex items-center justify-center",children:e(Ae,{className:"h-5 w-5 text-primary-foreground"})})}),t("div",{className:"flex-1 min-w-0",children:[e("p",{className:"text-sm font-medium truncate",children:l.name}),t("p",{className:"text-xs text-muted-foreground",children:["Unidade: ",x?.name||"N/A"]})]})]}),x&&e("div",{className:"mt-3",children:t("div",{className:"flex items-center space-x-2",children:[e(Ve,{className:"h-4 w-4 text-muted-foreground"}),e("span",{className:"text-sm font-medium",children:x.name})]})}),w.length>1&&t("div",{className:"mt-2",children:[t("p",{className:"text-xs text-muted-foreground mb-1",children:["Unidades disponíveis: ",w.length]}),t("div",{className:"flex flex-wrap gap-1",children:[w.slice(0,3).map(t=>e(Er,{variant:t.alias===x?.alias?"default":"secondary",className:"text-xs cursor-pointer",onClick:()=>N(t),children:t.name},t.alias)),w.length>3&&t(Er,{variant:"outline",className:"text-xs",children:["+",w.length-3]})]})]})]});return"dropdown"===r?t(gi,{children:[e(bi,{asChild:!0,children:e(Da,{variant:"ghost",className:`h-auto p-2 ${n}`,children:t("div",{className:"flex items-center space-x-2",children:[t("div",{className:"hidden md:block text-left",children:[e("p",{className:"text-sm font-medium",children:l.name}),e("p",{className:"text-xs text-muted-foreground",children:x?.name||"N/A"})]}),e("div",{className:"w-8 h-8 bg-primary rounded-full flex items-center justify-center",children:e(Ae,{className:"h-4 w-4 text-primary-foreground"})}),e(_,{className:"h-4 w-4"})]})})}),t(Si,{className:"w-56 bg-background border border-border shadow-lg z-50",align:"end",children:[t(xi,{children:[t(wi,{children:[e(Me,{className:"mr-2 h-4 w-4"}),"Alterar Unidade"]}),e(ki,{children:w.map(a=>t(Ci,{onClick:()=>N(a),className:a.alias===x?.alias?"bg-muted":"",children:[e(Ve,{className:"mr-2 h-4 w-4"}),a.name,a.alias===x?.alias&&e(Er,{variant:"outline",className:"ml-2 text-xs",children:"Atual"})]},a.alias))})]}),e(Ti,{}),t(Ci,{onClick:()=>g(!0),children:[e(Ie,{className:"mr-2 h-4 w-4"}),"Preferências"]}),t(Ci,{onClick:h,children:[e(qe,{className:"mr-2 h-4 w-4"}),"Sair"]})]}),e(Ga,{open:f,onOpenChange:g,children:t(er,{children:[e(tr,{children:e(rr,{children:"Preferências de Internacionalização"})}),e(Gc,{})]})})]}):t(qa,{className:n,children:[e(Ba,{children:e(Wa,{className:"text-lg",children:"Informações do Usuário"})}),t(Ka,{className:"space-y-4",children:[e(k,{}),e(Cd,{}),t(Da,{variant:"outline",onClick:()=>g(!0),size:"sm",className:"w-full",children:[e(Ie,{className:"mr-2 h-4 w-4"}),"Preferências"]}),t(Da,{variant:"outline",onClick:h,size:"sm",className:"w-full",children:[e(qe,{className:"mr-2 h-4 w-4"}),"Sair"]}),e(Ga,{open:f,onOpenChange:g,children:t(er,{children:[e(tr,{children:e(rr,{children:"Preferências de Internacionalização"})}),e(Gc,{})]})})]})]})}),Xc=n({});function Yc({children:t,config:a}){const r=o(()=>({navigation:a?.navigation,appName:a?.appName}),[a?.navigation,a?.appName]);return e(Xc.Provider,{value:r,children:t})}function Zc(){return i(Xc)}function eu(){const e=mt(),{navigation:t}=Zc(),{t:a}=Rs();if(!t)return a("page");const r=t.find(t=>t.path===e.pathname);if(r)return r.label;const s=t.find(t=>e.pathname.startsWith(t.path+"/"));return s?.label||a("page")}function tu(e,t){const[a,r]=c(e),s=l(),n=d(()=>{s.current&&(clearTimeout(s.current),s.current=void 0)},[]);return u(()=>(n(),s.current=setTimeout(()=>{r(e)},t),n),[e,t,n]),[a,n]}const au=h(function({actions:a}){const r=mt(),s=eu(),{navigation:n,appName:i}=Zc(),{metadata:o,headerActions:l}=Mo(),{t:d}=Rs(),{companies:m,alias:h,isSearchVisible:p,clearSearch:f,refreshData:g,switchUnit:b}=$n(),v=h?m?.find(e=>e.alias===h)||m?.[0]||null:m?.[0]||null,[y,x]=ut(),[N,w]=c(()=>y.get("search")||""),[k,S]=tu(N,gn.debounceDelay);u(()=>{if(!p)return;const e=new URLSearchParams(y);k?(e.set("search",k),e.set("page","1")):e.delete("search"),x(e)},[k,x,p]);const _=n?.find(e=>e.path===r.pathname)||n?.find(e=>r.pathname.startsWith(e.path+"/")),P=o.title||s,E=o.subtitle||_?.complementaryText||d("item_details");return e("header",{className:"bg-white border-b border-gray-200 px-2 md:px-4 py-2",children:t("div",{className:"flex items-center gap-4",children:[t("div",{className:"flex-shrink-0",children:[t("div",{className:"flex items-center gap-2 mb-1",children:[e("h1",{className:"text-lg font-semibold text-foreground truncate",children:P}),e(Er,{variant:"default",className:"bg-primary hover:bg-primary/90 text-primary-foreground text-xs px-2 py-1",children:i||d("module")})]}),E&&e("p",{className:"text-sm text-muted-foreground truncate",children:E})]}),p&&t("div",{className:"flex items-center gap-2 flex-1 max-w-2xl",children:[t("div",{className:"relative flex-1",children:[e(R,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),e($a,{placeholder:d("search"),value:N,onChange:e=>(e=>{w(e)})(e.target.value),className:"w-full pl-10 pr-8"}),N&&e(Da,{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:()=>{S(),w("");const e=new URLSearchParams(y);e.delete("search"),e.delete("page"),x(e)},title:d("clear_search"),children:e(C,{size:14})})]}),e(Da,{variant:"outline",size:"sm",onClick:g,className:"flex-shrink-0 h-10 w-10 p-0",title:d("refresh_data"),children:e(Me,{size:14})})]}),t("div",{className:"flex-shrink-0 ml-auto flex items-center gap-3",children:[(l||a)&&e("div",{className:"flex items-center gap-2",children:l||a}),import.meta.env.VITE_WIKI_URL&&e(Da,{variant:"secondary",size:"sm",className:"h-8 px-3",onClick:e=>Ia(import.meta.env.VITE_WIKI_URL,e),title:d("open_wiki"),children:"Wiki"}),e("div",{className:"text-sm",children:e(Jc,{variant:"dropdown",selectedUnit:v,onUnitChange:b})})]})]})})}),ru=({key:e,enabled:t,checkFn:a,staleTime:r=3e5,gcTime:s=6e5})=>lt({queryKey:["permission",e],queryFn:a,enabled:t,staleTime:r,gcTime:s,retry:0,refetchOnWindowFocus:!1}),su=(e={})=>{const{enabled:t=!0}=e,{alias:a}=$n();return lt({queryKey:["active-modules",a],queryFn:async()=>{if(!a)return[];const e=an(),{data:t,error:r}=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(r){if(!ln.handleError(r))throw r;return[]}return t||[]},enabled:t&&!!a})},nu="forlogic-sidebar-pinned",iu=()=>{try{const e=localStorage.getItem(nu);return!!e&&JSON.parse(e)}catch{return!1}},ou=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]},lu=`https://${import.meta.env.VITE_SUPABASE_PROJECT_ID_STORAGE??import.meta.env.VITE_SUPABASE_PROJECT_ID}.supabase.co/storage/v1/object/public/library-assets`,du={logo:`${lu}/${Nn.isQualiex?"logo-qualiex.svg":"logo.svg"}`,smallLogo:`${lu}/${Nn.isQualiex?"small-forlogic.svg":"small.svg"}`},cu=du.logo,uu=du.smallLogo;function mu({appName:r,isPinned:s,onPinToggle:n,open:i,dropdownOpen:o,onDropdownChange:l}){const{t:d}=Rs(),{data:c,isLoading:u,error:m}=su({enabled:o}),h=e=>{((e,t)=>{const a=e?.find(e=>e.url===t);a?.url&&window.open(a.url,"_blank")})(c,e)};return t(Jd,{className:"p-0 gap-0",children:[e("div",{className:"flex items-center justify-between h-[34px]",children:i?t(a,{children:[e("div",{className:"flex items-center pl-[12px]",children:e("img",{src:du.logo,alt:"Logo",className:"h-6 max-w-full object-contain"})}),e("button",{onClick:n,className:"h-8 w-8 flex items-center justify-center rounded-md transition-colors duration-200 "+(s?"bg-primary/20 text-primary":"hover:bg-muted text-muted-foreground"),children:e(ze,{className:"h-4 w-4"})})]}):e("div",{className:"flex items-center justify-center w-full h-[34px]",children:e("img",{src:du.smallLogo,alt:"Logo",className:"h-[34px] w-[34px] object-contain"})})}),e("div",{className:"mt-2 pt-0",children:t(gi,{onOpenChange:l,children:[e(bi,{asChild:!0,children:i?t("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:[t("div",{className:"flex items-center gap-2 min-w-0",children:[e("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("span",{className:"truncate group-data-[collapsible=icon]:hidden",children:r})]}),e(_,{className:"h-6 w-6 flex-shrink-0 text-muted-foreground"})]}):e("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(_,{className:"h-6 w-6 text-muted-foreground"})})}),e(Si,{className:i?"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:i?"start":"center",children:u?t("div",{className:"flex items-center space-x-2 py-3 px-3 text-muted-foreground",children:[e(T,{className:"h-4 w-4 animate-spin"}),e("span",{className:"text-sm",children:d("loading")})]}):m?t("div",{className:"flex items-center space-x-2 py-3 px-3 text-destructive",children:[e(I,{className:"h-4 w-4"}),e("span",{className:"text-sm",children:d("error")})]}):c&&0!==c.length?e("div",{className:"space-y-2",children:c.map((a,r)=>e("div",{onClick:()=>h(a.url||""),className:`\n bg-muted/50 hover:bg-muted rounded-md p-3 cursor-pointer \n border-l-4 ${ou(r)} transition-colors duration-200\n `,children:t("div",{className:"flex items-center justify-between",children:[e("span",{className:"font-medium text-foreground text-sm",children:a.name}),a.url&&e($e,{className:"h-4 w-4 text-muted-foreground"})]})},a.id))}):e("div",{className:"py-3 px-3 text-muted-foreground text-sm",children:d("no_results")})})]})})]})}function hu({direction:e="right",minWidth:t=224,maxWidth:a=384,defaultWidth:r=240,storageKey:s="sidebar-width",onResize:n,isOpen:i=!0}={}){const[o,m]=c(()=>{if("undefined"==typeof window)return r;const e=localStorage.getItem(s);return e?parseInt(e):r}),[h,p]=c(!1),f=l(null);u(()=>{const e=document.querySelector(".sidebar-container");e&&e instanceof HTMLElement&&(i?e.style.setProperty("--sidebar-width",`${o}px`):e.style.setProperty("--sidebar-width","240px"))},[o,i]);const g=d(e=>{e.preventDefault(),p(!0)},[]);return u(()=>{if(!h)return;const r=r=>{let s;s="left"===e?window.innerWidth-r.clientX:r.clientX,s=Math.max(t,Math.min(a,s)),m(s),n?.(s)},i=()=>{p(!1),localStorage.setItem(s,o.toString())};return document.addEventListener("mousemove",r),document.addEventListener("mouseup",i),()=>{document.removeEventListener("mousemove",r),document.removeEventListener("mouseup",i)}},[h,e,t,a,o,s,n]),u(()=>{h?(document.body.style.cursor="ew-resize",document.body.style.userSelect="none"):(document.body.style.cursor="",document.body.style.userSelect="")},[h,e]),{width:o,isDragging:h,dragRef:f,handleMouseDown:g}}const pu=s.forwardRef(({className:t,onMouseDown:a,isDragging:r,...s},n)=>e("div",{ref:n,onMouseDown:a,className:Aa("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-['']",r&&"bg-primary/40",t),...s}));function fu({config:a,customContent:r,resizable:s=!1,minWidth:n=224,maxWidth:i=384}={}){const{t:o}=Rs(),{open:d,setOpen:m}=qd(),h=mt(),{alias:p,user:f}=$n(),[g,b]=c(!1),[v,y]=c(iu),[x,N]=c(!1),w=l(!1),k=s?hu({minWidth:n,maxWidth:i,storageKey:"app-sidebar-width",isOpen:d}):null;u(()=>{m(!!v||!(!x&&!g))},[v,x,g,m]);return t(Wd,{collapsible:"icon",onMouseEnter:()=>{v||w.current||N(!0)},onMouseLeave:()=>{v||N(!1)},className:"app-sidebar bg-white border-r border-gray-200 py-6 px-3",style:k&&d?{width:`${k.width}px`,transition:"none"}:{transition:"all 300ms ease-in-out"},children:[e(mu,{appName:a?.appName||o("module_title"),isPinned:v,onPinToggle:()=>{const e=!v;y(e),(e=>{try{localStorage.setItem(nu,JSON.stringify(e))}catch{}})(e),e||(w.current=!0,N(!1),m(!1),setTimeout(()=>{w.current=!1},300))},open:d,dropdownOpen:g,onDropdownChange:b}),e(Zd,{children:r||e(ec,{className:"p-0 mt-6",children:e(rc,{children:e(sc,{className:"space-y-2",children:e(Md,{children:a?.navigation?.map((a,r)=>{const s=({item:a,index:r})=>{const n=`${a.path}-${r}-${p??"noalias"}-${f?.id??"nouser"}`,{data:i=!0,isLoading:l}=ru({key:n,enabled:Boolean(a.permissionCheck&&p&&f?.id),checkFn:a.permissionCheck||(()=>Promise.resolve(!0))}),d=a.permissionCheck&&!i;if(d&&"Admin"===a.label)return null;const c=l?T:d?te:a.icon;d?o("restricted_access"):a.complementaryText;return a.children&&a.children.length>0?e(_l,{defaultOpen:!0,className:"group/collapsible",children:t(nc,{children:[e(Pl,{asChild:!0,children:e(oc,{size:"lg",className:"h-10",children:t("div",{className:"flex w-full items-center gap-3",children:[e("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e(c,{className:"h-5 w-4"})}),e("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:a.label}),e(L,{className:"ml-auto h-4 w-4 transition-transform group-data-[state=open]/collapsible:rotate-90 group-data-[collapsible=icon]:hidden"})]})})}),e(El,{children:e(uc,{children:a.children.map((t,a)=>e(s,{item:t,index:a},t.path))})})]})},a.path):e(nc,{children:d||l?t(Dd,{children:[e(zd,{asChild:!0,children:e(oc,{size:"lg",className:"h-10 opacity-50 cursor-not-allowed",onClick:e=>e.preventDefault(),children:t("div",{className:"flex w-full items-center gap-3",children:[e("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e(c,{className:"h-4 w-4 "+(l?"animate-spin":"")})}),e("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:a.label})]})})}),e($d,{children:e("p",{children:o(l?"checking_access":"restricted_access")})})]}):e(oc,{asChild:!0,isActive:(u=a.path,h.pathname===u||h.pathname.startsWith(u+"/")),size:"lg",className:"h-10",children:t(pt,{to:a.path,className:"flex w-full items-center gap-3",children:[e("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:e(c,{className:"h-5 w-4"})}),e("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:a.label})]})})},a.path);var u};return e(s,{item:a,index:r},a.path)})})})})})}),s&&k&&d&&e(pu,{ref:k.dragRef,onMouseDown:k.handleMouseDown,isDragging:k.isDragging})]})}pu.displayName="ResizableRail";const gu=h(function({children:a,sidebar:r,sidebarConfig:s,showHeader:n=!0}){const i=o(()=>r||e(fu,{config:s}),[r,s]),l=o(()=>({"--sidebar-width":"240px","--sidebar-width-icon":"58px"}),[]);return e(Yc,{config:s,children:e(Fo,{children:e(Bd,{defaultOpen:!1,style:l,children:t("div",{className:"sidebar-container min-h-screen flex w-full",children:[i,t("main",{className:"flex-1 flex flex-col h-screen overflow-hidden",children:[n&&e("div",{className:"flex-shrink-0 sticky top-0 z-10 bg-background",children:e(au,{})}),e("div",{className:"flex-1 overflow-y-auto bg-gray-50",children:a})]})]})})})})});var bu=Object.defineProperty,vu=(e,t,a)=>((e,t,a)=>t in e?bu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,t+"",a);class yu extends p{constructor(e){super(e),vu(this,"copyErrorDetails",()=>{const e=Gs.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),zr({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(import.meta.env.DEV)throw e;return{hasError:!0,error:e}}componentDidCatch(e,t){if(import.meta.env.DEV)throw e;Gs.handleError(e,!1),this.setState({errorInfo:t})}render(){if(this.state.hasError){if(this.props.fallback)return this.props.fallback;const a=Gs.getErrors().slice(0,2);return e("div",{className:"flex items-center justify-center min-h-screen p-4",children:t(qa,{className:"w-full max-w-2xl",children:[t(Ba,{className:"text-center",children:[e("div",{className:"flex justify-center mb-4",children:e(A,{className:"h-12 w-12 text-destructive"})}),e(Wa,{children:"Algo deu errado"})]}),t(Ka,{className:"space-y-4",children:[e("p",{className:"text-center text-muted-foreground",children:"Ocorreu um erro inesperado. Tente recarregar a página."}),t(_l,{open:this.state.showDetails,onOpenChange:e=>this.setState({showDetails:e}),children:[e(Pl,{asChild:!0,children:t(Da,{variant:"outline",className:"w-full flex items-center justify-center gap-2",children:[e(_,{className:"h-4 w-4 transition-transform "+(this.state.showDetails?"rotate-180":"")}),"Ver Detalhes Técnicos"]})}),t(El,{className:"mt-4 space-y-4",children:[t("div",{className:"rounded-lg border bg-card p-4 space-y-3",children:[t("div",{children:[e("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📋 Erro Atual"}),t("div",{className:"text-sm space-y-2",children:[e("p",{className:"font-medium text-destructive",children:this.state.error?.message||"Erro desconhecido"}),this.state.error?.stack&&e(Zi,{className:"h-32 w-full rounded border bg-muted p-2",children:e("pre",{className:"text-xs text-muted-foreground whitespace-pre-wrap",children:this.state.error.stack})})]})]}),a.length>0&&t("div",{className:"pt-3 border-t",children:[e("h4",{className:"font-semibold text-sm mb-2 flex items-center gap-2",children:"📜 Últimos Erros"}),e("div",{className:"space-y-2",children:a.map((a,r)=>e("div",{className:"text-sm p-2 rounded bg-muted/50",children:t("div",{className:"flex items-start gap-2",children:[t("span",{className:"font-medium text-muted-foreground shrink-0",children:[r+1,"."]}),t("div",{className:"flex-1 min-w-0",children:[e("div",{className:"flex items-center gap-2 flex-wrap",children:t("span",{className:"text-xs text-muted-foreground",children:["[",new Date(a.timestamp).toLocaleTimeString(),"]"]})}),e("p",{className:"text-sm break-words",children:a.message})]})]})},a.id))})]})]}),t(Da,{variant:"outline",onClick:this.copyErrorDetails,className:"w-full flex items-center justify-center gap-2",children:[e(oe,{className:"h-4 w-4"}),"Copiar Detalhes"]})]})]}),e(Da,{onClick:()=>window.location.reload(),className:"w-full",children:"Recarregar Página"})]})]})})}return this.props.children}}function xu({children:r}){const{ready:s}=Rs(),[n,i]=c(!0);return u(()=>{s&&n&&i(!1)},[s,n]),n&&!s?e("div",{className:"flex items-center justify-center min-h-screen bg-background",children:t("div",{className:"flex flex-col items-center gap-4",children:[e(Ir,{size:"lg"}),e("p",{className:"text-sm text-muted-foreground animate-pulse",children:"Carregando traduções..."})]})}):e(a,{children:r})}const Nu={"pt-BR":Sl,"en-US":ul,"es-ES":vl},wu=(e,t="pt-BR")=>{if(!e)return"";const a=y(e);if(!x(a))return"Invalid date";return N(a,"PP",{locale:Nu[t]||Sl})},ku=()=>{const{locale:e,timezone:t,datetimeFormat:a}=Wc();return{formatDatetime:e=>((e,t="dd/MM/yyyy HH:mm")=>{if(!e)return"";const a=y(e);return x(a)?N(a,t):"Invalid date"})(e,a,t),formatDate:t=>wu(t,e),locale:e,timezone:t,datetimeFormat:a}};class Su{static async sendEmail(e){const t=an(),{data:a,error:r}=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(r)throw r;return a}}const Cu=Su;function _u(){const[e,t]=c([]),[a,r]=c(!1),[s,n]=c(null),[i,o]=c(null);u(()=>{l()},[]);const l=async()=>{try{const e=an(),{data:a,error:r}=await e.functions.invoke("openai-chat",{body:{action:"createThread"}});if(r)throw r;n(a.threadId),t([{id:"initial",role:"assistant",content:"Olá! Como posso ajudá-lo hoje?",timestamp:new Date}])}catch(e){o("Erro ao inicializar conversa"),w.error("Erro ao inicializar conversa")}};return{messages:e,isLoading:a,error:i,sendMessage:d(async e=>{if(!s||!e.trim())return;const a={id:`user-${Date.now()}`,role:"user",content:e,timestamp:new Date};t(e=>[...e,a]),r(!0),o(null);try{const a=an(),{data:r,error:n}=await a.functions.invoke("openai-chat",{body:{action:"sendMessage",threadId:s,message:e}});if(n)throw n;const{runId:i}=r,o=await(async e=>{if(!s)return!1;for(let a=0;a<60;a++)try{const t=an(),{data:a,error:r}=await t.functions.invoke("openai-chat",{body:{action:"checkRunStatus",threadId:s,runId:e}});if(r)throw r;const{status:n}=a;if("completed"===n)return!0;if("failed"===n||"cancelled"===n)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(s)try{const e=an(),{data:a,error:r}=await e.functions.invoke("openai-chat",{body:{action:"getMessages",threadId:s}});if(r)throw r;const n=a.messages.map(e=>({id:e.id,role:e.role,content:e.content,timestamp:new Date(1e3*e.created_at)}));t(n)}catch(e){throw e}})()}catch(n){const e=n instanceof Error?n.message:"Erro ao enviar mensagem";o(e),w.error(e),t(e=>e.filter(e=>e.id!==a.id))}finally{r(!1)}},[s]),threadId:s}}function Pu({content:t,className:a}){return e("div",{className:Aa("prose prose-sm max-w-none",a),children:e(jt,{remarkPlugins:[Ft],components:{h1:({children:t})=>e("h1",{className:"text-lg font-bold mt-4 mb-2 text-foreground",children:t}),h2:({children:t})=>e("h2",{className:"text-base font-bold mt-3 mb-2 text-foreground",children:t}),h3:({children:t})=>e("h3",{className:"text-sm font-semibold mt-2 mb-1 text-foreground",children:t}),p:({children:t})=>e("p",{className:"text-sm mb-2 last:mb-0 text-foreground",children:t}),ul:({children:t})=>e("ul",{className:"list-disc list-inside mb-2 space-y-1",children:t}),ol:({children:t})=>e("ol",{className:"list-decimal list-inside mb-2 space-y-1",children:t}),li:({children:t})=>e("li",{className:"text-sm text-foreground",children:t}),code:({inline:t,children:a,...r})=>e("code",t?{className:"bg-muted px-1.5 py-0.5 rounded text-xs font-mono text-foreground",...r,children:a}:{className:"block bg-muted p-2 rounded text-xs font-mono overflow-x-auto mb-2 text-foreground",...r,children:a}),pre:({children:t})=>e("pre",{className:"bg-muted p-2 rounded overflow-x-auto mb-2",children:t}),a:({children:t,href:a})=>e("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-primary underline hover:text-primary/80",children:t}),blockquote:({children:t})=>e("blockquote",{className:"border-l-4 border-primary pl-3 italic my-2 text-muted-foreground",children:t}),strong:({children:t})=>e("strong",{className:"font-bold text-foreground",children:t}),em:({children:t})=>e("em",{className:"italic text-foreground",children:t})},children:t})})}function Eu(){const{t:r}=Rs(),[s,n]=c(!1),[i,o]=c(""),{messages:d,isLoading:m,error:h,sendMessage:p}=_u(),f=l(null),g=l(null);u(()=>{if(f.current){const e=f.current.querySelector("[data-radix-scroll-area-viewport]");e&&(e.scrollTop=e.scrollHeight)}},[d]),u(()=>{s&&g.current&&g.current.focus()},[s]),u(()=>{const e=e=>{"Escape"===e.key&&s&&n(!1)};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[s]);const b=()=>{i.trim()&&!m&&(p(i),o(""))};return t(a,{children:[e(Da,{onClick:()=>n(!s),className:"fixed bottom-6 right-6 h-14 w-14 rounded-full shadow-lg z-50",size:"icon",children:e(s?C:Be,{className:"h-6 w-6"})}),s&&t(qa,{className:"fixed bottom-24 right-6 w-96 h-[600px] shadow-xl z-50 flex flex-col",children:[t(Ba,{className:"flex flex-row items-center justify-between space-y-0 pb-4",children:[e(Wa,{className:"text-lg font-semibold",children:r("title")}),e(Da,{variant:"ghost",size:"icon",onClick:()=>n(!1),className:"h-8 w-8",children:e(C,{className:"h-4 w-4"})})]}),t(Ka,{className:"flex-1 flex flex-col p-0 overflow-hidden",children:[e(Zi,{ref:f,className:"flex-1 px-4",children:t("div",{className:"space-y-4 py-4",children:[d.map(t=>e("div",{className:"flex "+("user"===t.role?"justify-end":"justify-start"),children:e("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(Pu,{content:t.content}):e("p",{className:"text-sm whitespace-pre-wrap",children:t.content})})},t.id)),m&&e("div",{className:"flex justify-start",children:e("div",{className:"bg-muted rounded-lg px-4 py-2",children:t("div",{className:"flex space-x-2",children:[e("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce"}),e("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.2s]"}),e("div",{className:"w-2 h-2 bg-foreground/40 rounded-full animate-bounce [animation-delay:0.4s]"})]})})}),h&&e("div",{className:"text-center text-sm text-destructive py-2",children:h})]})}),e("div",{className:"border-t p-4",children:t("div",{className:"flex space-x-2",children:[e($a,{ref:g,value:i,onChange:e=>o(e.target.value),onKeyPress:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),b())},placeholder:r("placeholder"),disabled:m,className:"flex-1"}),e(Da,{onClick:b,disabled:m||!i.trim(),size:"icon",children:e(We,{className:"h-4 w-4"})})]})})]})]})]})}function Tu({open:a,onOpenChange:r,placeId:s,placeName:n,onMakeManager:i,onMakeMembers:l,currentManagerId:d,currentMemberIds:u=[]}){const{t:m}=Rs(),[h,p]=c([]),[f,g]=c(!1),[b,v]=c(""),{data:y=[],isLoading:x}=so({enabled:a}),N=o(()=>{let e=[...y];if(e.sort((e,t)=>{const a=e.userName?.toLowerCase()||"",r=t.userName?.toLowerCase()||"";return a.localeCompare(r)}),b){const t=b.toLowerCase();e=e.filter(e=>e.userName?.toLowerCase().includes(t)||e.userEmail?.toLowerCase().includes(t))}return e},[y,b]),w=e=>{p(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},k=1===h.length,S=h.length>0;return e(Ga,{open:a,onOpenChange:r,children:t(er,{className:"max-w-2xl",children:[e(tr,{children:t(rr,{className:"flex items-center gap-2",children:[e(He,{className:"h-5 w-5"}),"Gerenciar Acessos - ",n]})}),t("div",{className:"relative",children:[e(R,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e($a,{placeholder:m("search_placeholder"),value:b,onChange:e=>v(e.target.value),className:"pl-9"})]}),e(Zi,{className:"h-[400px] pr-4",children:x?e("div",{className:"space-y-2",children:[...Array(5)].map((t,a)=>e(ls,{className:"h-16 w-full"},a))}):0===N.length?t("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[e(He,{className:"h-12 w-12 text-muted-foreground/50 mb-3"}),e("p",{className:"text-sm text-muted-foreground",children:b?"Nenhum usuário encontrado":"Nenhum usuário disponível"})]}):e("div",{className:"space-y-2",children:N.map(a=>{const r=a.userId===d,s=u.includes(a.userId||""),n=h.includes(a.userId||"");return t("div",{className:Aa("flex items-center gap-3 p-3 rounded-lg border transition-colors",n&&"bg-accent border-primary","hover:bg-accent/50 cursor-pointer"),onClick:()=>w(a.userId||""),children:[e(Cr,{checked:n,onCheckedChange:()=>w(a.userId||""),onClick:e=>e.stopPropagation()}),t("div",{className:"flex-1",children:[t("div",{className:"flex items-center gap-2",children:[e("p",{className:"font-medium",children:a.userName}),r&&e(Ke,{className:"h-4 w-4 text-yellow-500"})]}),e("p",{className:"text-sm text-muted-foreground",children:a.userEmail})]}),(r||s)&&e("div",{className:"text-xs text-muted-foreground",children:r?"Gestor":"Membro"})]},a.userId)})})}),t(ar,{className:"flex gap-2 sm:gap-2",children:[e("div",{className:"flex-1 text-sm text-muted-foreground",children:h.length>0&&t("span",{children:[h.length," selecionado(s)"]})}),k&&i&&t(Da,{onClick:async()=>{if(i&&1===h.length){g(!0);try{await i(h[0],s),p([])}finally{g(!1)}}},disabled:f,variant:"outline",children:[e(Ke,{className:"h-4 w-4 mr-2"}),"Tornar Gestor"]}),S&&l&&t(Da,{onClick:async()=>{if(l&&0!==h.length){g(!0);try{await l(h,s),p([])}finally{g(!1)}}},disabled:f,children:[e(Qe,{className:"h-4 w-4 mr-2"}),"Tornar ",h.length>1?"Membros":"Membro"]})]})]})})}function Iu({place:a,level:r=0,manageAccessConfig:s}){const[n,i]=c(!1),[o,l]=c(!1),d=a.subPlaces&&a.subPlaces.length>0,u=a.isActive??!0,m=a.usersCount??0;return t("div",{children:[t(_l,{open:n,onOpenChange:i,children:[t("div",{className:"flex items-center gap-2 py-3 px-4 hover:bg-accent/50 transition-colors",style:{paddingLeft:2*r+1+"rem"},children:[d?t(Pl,{className:"flex items-center gap-2 flex-1",children:[e(L,{className:Aa("h-4 w-4 transition-transform shrink-0",n&&"rotate-90")}),e(Ve,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e("span",{className:"font-medium",children:a.name}),t("span",{className:"text-sm text-muted-foreground",children:["(",a.subPlaces.length,")"]})]}):t("div",{className:"flex items-center gap-2 flex-1",children:[e("div",{className:"w-4 shrink-0"}),e(Ve,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e("span",{className:"font-medium",children:a.name})]}),t("div",{className:"flex items-center gap-3 ml-auto",children:[t("div",{className:"flex items-center gap-1.5",children:[e(He,{className:"h-3.5 w-3.5 text-muted-foreground"}),e("span",{className:"text-sm text-muted-foreground",children:m})]}),e(Er,{variant:u?"default":"secondary",className:"text-xs",children:u?"Ativo":"Inativo"}),s&&e(Ic,{customActions:[{label:"Gerenciar Acessos",icon:Ie,onClick:()=>l(!0),variant:"default"}],renderAs:"dropdown",variant:"compact"})]})]}),d&&e(El,{children:a.subPlaces.map(t=>e(Iu,{place:t,level:r+1,manageAccessConfig:s},t.id))})]}),0===r&&e(Cd,{}),s&&e(Tu,{open:o,onOpenChange:l,placeId:a.id,placeName:a.name,onMakeManager:s.onMakeManager,onMakeMembers:s.onMakeMembers,currentManagerId:s.getCurrentManagerId?.(a.id),currentMemberIds:s.getCurrentMemberIds?.(a.id)})]})}function Au({places:a,isLoading:r,manageAccessConfig:s}){const{t:n}=Rs();return r?e("div",{className:"flex items-center justify-center py-12",children:t("div",{className:"text-center space-y-2",children:[e("div",{className:"animate-spin h-8 w-8 border-4 border-primary border-t-transparent rounded-full mx-auto"}),e("p",{className:"text-sm text-muted-foreground",children:n("loading_data")})]})}):a&&0!==a.length?t("div",{className:"space-y-1",children:[e("h2",{className:"text-xl font-bold mb-4",children:"Estrutura de Locais"}),a.map(t=>e(Iu,{place:t,manageAccessConfig:s},t.id))]}):t("div",{className:"flex flex-col items-center justify-center py-12 text-center space-y-3",children:[e(Ve,{className:"h-12 w-12 text-muted-foreground/50"}),t("div",{children:[e("h3",{className:"font-semibold text-lg",children:"Nenhum local encontrado"}),e("p",{className:"text-sm text-muted-foreground",children:"Não há locais cadastrados para esta unidade."})]})]})}var Ru=Object.defineProperty,Ou=(e,t,a)=>((e,t,a)=>t in e?Ru(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a)(e,t+"",a);const Lu=new class{constructor(){Ou(this,"baseUrl",import.meta.env.VITE_QUALIEX_API_URL)}async makeApiCall(e,t,a){const r=cn.validateToken();if(!r.valid)throw new Error(r.message||"Token inválido");const s=Hs.getAccessToken();if(!s)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 ${s}`,"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 r=t.get(e.id);if(e.parentId){const s=t.get(e.parentId);s?(s.subPlaces=s.subPlaces||[],s.subPlaces.push(r)):a.push(r)}else a.push(r)}),a}async getPlaces(e,t){try{const a=await this.makeApiCall("/api/common/v1/places",{companyId:t},e),r=a.data||a||[];return this.buildHierarchy(r)}catch(a){if(await cn.handleApiError(a))try{const a=await this.makeApiCall("/api/common/v1/places",{companyId:t},e),r=a.data||a||[];return this.buildHierarchy(r)}catch(r){return Gs.handleError(r instanceof Error?r:"Erro ao buscar locais após renovação de token",!0),[]}return Gs.handleError(a instanceof Error?a.message:"Erro ao buscar locais",!0),[]}}};function ju(e,t){const a=e.map(e=>({...e})),r=new Set(a.filter(e=>!t.has(e.id_user)).map(e=>e.id_user));return a.forEach(e=>{if(e.id_leader&&r.has(e.id_leader)){let t=e.id_leader;for(;t&&r.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))}function Fu(e){const t=new Map,a=new Map,r=[];e.forEach(e=>{const r={...e,children:[],level:0};t.set(e.id,r),a.set(e.id_user,r)}),e.forEach(e=>{const s=t.get(e.id);if(e.id_leader){const t=a.get(e.id_leader);if(t)return void t.children.push(s)}r.push(s)});const s=(e,t)=>{e.level=t,e.children.forEach(e=>s(e,t+1))};r.forEach(e=>s(e,0));const n=e=>{e.sort((e,t)=>{const a=e.name||e.id_user||e.email||"",r=t.name||t.id_user||t.email||"";return a.localeCompare(r)}),e.forEach(e=>e.children.length>0&&n(e.children))};return n(r),r}function Mu(e){const t=[],a=e=>{t.push(e),e.children.forEach(a)};return e.forEach(a),t}function Du(){const{alias:e,isAuthenticated:t}=$n(),a=Hs.getAccessToken(),{data:r=[]}=so({enabled:!0});return lt({queryKey:["leadership",e,r.length],queryFn:async()=>{if(!a||!e)throw new Error("Usuário não autenticado ou unidade não selecionada");const t=an(),{data:s,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(!s||0===s.length)return[];const i={};r.forEach(e=>{i[e.userId]={name:e.userName||e.userEmail,email:e.userEmail||""}});const o=s.map(e=>({...e,name:i[e.id_user]?.name||"[Não encontrado]",email:i[e.id_user]?.email||"",subordinatesCount:s.filter(t=>t.id_leader===e.id_user).length})),l=new Set(s.map(e=>e.id_user));return new Set(s.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:s[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:s.filter(t=>t.id_leader===e).length})}),Fu(o)},enabled:!!a&&!!e&&t&&r.length>0})}function zu(){const e="common",{alias:t}=$n(),a=ot(),r=an();return dt({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 r.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 Wu(r,t,e,a.id_user,a.id_leader);const{data:s,error:n}=await r.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 s},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",t]}),w.success("Líder adicionado com sucesso")},onError:e=>{w.error(e.message||"Erro ao adicionar líder")}})}function $u(){const e="common",{alias:t}=$n(),a=ot(),r=an();return dt({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 Wu(r,t,e,a.id_user,a.id_leader);const{data:s,error:n}=await r.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 s},onSuccess:()=>{a.invalidateQueries({queryKey:["leadership",t]}),w.success("Líder virtual promovido com sucesso")},onError:e=>{w.error(e.message||"Erro ao criar líder")}})}function Uu(){const e="common",{alias:t}=$n(),a=ot(),r=an();return dt({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 s=a.users.map(e=>e.id_user),{data:n}=await r.schema(e).from("leaders").select("id_user").eq("alias",t).in("id_user",s).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 Wu(r,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 r.schema(e).from("leaders").insert(i).select();if(l)throw l;return o},onSuccess:e=>{a.invalidateQueries({queryKey:["leadership",t]}),w.success(`${e?.length||0} liderado(s) adicionado(s) com sucesso`)},onError:e=>{w.error(e.message||"Erro ao adicionar liderados")}})}function Vu(){const e="common",{alias:t}=$n(),a=ot(),r=an();return dt({mutationFn:async a=>{if(!t)throw new Error("Unidade não selecionada");const{data:s}=await r.schema(e).from("leaders").select("id_user").eq("id",a.id).eq("alias",t).single();if(!s)throw new Error("Líder não encontrado");if(s.id_user===a.id_leader)throw new Error("Usuário não pode ser seu próprio líder");a.id_leader&&await Wu(r,t,e,s.id_user,a.id_leader,a.id);const{data:n,error:i}=await r.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]}),w.success("Líder atualizado com sucesso")},onError:e=>{w.error(e.message||"Erro ao atualizar líder")}})}function qu(){const{alias:e}=$n(),t=ot(),a=an();return dt({mutationFn:async t=>{if(!e)throw new Error("Unidade não selecionada");const{error:r}=await a.schema("common").from("leaders").update({is_removed:!0}).eq("id",t).eq("alias",e);if(r)throw r},onSuccess:()=>{t.invalidateQueries({queryKey:["leadership",e]}),w.success("Líder removido com sucesso")},onError:e=>{w.error(e.message||"Erro ao remover líder")}})}function Bu(){const e="common",{alias:t}=$n(),a=ot(),r=an();return dt({mutationFn:async({leaderUserId:a,selectedUsers:s})=>{if(!t)throw new Error("Unidade não selecionada");const n=s.map(e=>e.id_user),i=await Promise.all([r.schema(e).from("leaders").select("id, id_user, id_leader").eq("alias",t).eq("is_removed",!1).eq("id_leader",a),r.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||[],h=new Set(n),p=u.filter(e=>!h.has(e.id_user)),f=m.filter(e=>e.id_leader!==a),g=new Set(m.map(e=>e.id_user)),b=s.filter(e=>!g.has(e.id_user));for(const x of f)await Wu(r,t,e,x.id_user,a,x.id);for(const x of b){if(x.id_user===a)throw new Error("Usuário não pode ser seu próprio líder");await Wu(r,t,e,x.id_user,a)}const v=[];if(p.length){const a=p.map(e=>e.id);v.push(r.schema(e).from("leaders").update({is_removed:!0}).in("id",a).eq("alias",t))}if(f.length){const s=f.map(e=>e.id);v.push(r.schema(e).from("leaders").update({id_leader:a}).in("id",s).eq("alias",t))}if(b.length){const s=b.map(e=>({alias:t,id_user:e.id_user,id_leader:a,is_active:!0,is_removed:!1}));v.push(r.schema(e).from("leaders").insert(s))}const y=(await Promise.all(v)).find(e=>e?.error);if(y?.error)throw y.error;return{unlinked:p.length,updated:f.length,created:b.length}},onSuccess:e=>{a.invalidateQueries({queryKey:["leadership",t]}),w.success(`Subordinados sincronizados (${e.created} adicionados, ${e.updated} atualizados, ${e.unlinked} removidos)`)},onError:e=>{w.error(e.message||"Erro ao sincronizar subordinados")}})}async function Wu(e,t,a,r,s,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=s;for(;c;){if(d.has(c))throw new Error("Esta associação criaria um ciclo na hierarquia");if(c===r)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 Hu({leader:r,expandedIds:s,onToggleExpand:n,onEdit:i}){const o=s.has(r.id),l=r.children.length>0,d=32*r.level;return t(a,{children:[t("tr",{className:"border-b hover:bg-muted/50 transition-colors",children:[e("td",{className:"py-3 px-4",children:t("div",{className:"flex items-center gap-2",style:{paddingLeft:`${d}px`},children:[l?e("button",{onClick:()=>n(r.id),className:"p-1 hover:bg-accent rounded",children:e(o?_:L,{className:"h-4 w-4"})}):e("div",{className:"w-6"}),e(Ae,{className:"h-4 w-4 text-muted-foreground"}),e("button",{onClick:()=>{i(r)},className:"font-medium hover:text-primary hover:underline text-left",children:r.name||r.id_user||r.email})]})}),e("td",{className:"py-3 px-4 text-center",children:e("span",{className:"text-sm",children:r.subordinatesCount||0})})]}),l&&o&&r.children.map(t=>e(Hu,{leader:t,expandedIds:s,onToggleExpand:n,onEdit:i},t.id))]})}var Ku=function(e,t){for(var a={};e.length;){var r=e[0],s=r.code,n=r.message,i=r.path.join(".");if(!a[i])if("unionErrors"in r){var o=r.unionErrors[0].errors[0];a[i]={message:o.message,type:o.code}}else a[i]={message:n,type:s};if("unionErrors"in r&&r.unionErrors.forEach(function(t){return t.errors.forEach(function(t){return e.push(t)})}),t){var l=a[i].types,d=l&&l[r.code];a[i]=et(i,t,a,s,d?[].concat(d,r.message):r.message)}e.shift()}return a},Qu=function(e,t,a){return void 0===a&&(a={}),function(r,s,n){try{return Promise.resolve(function(s,i){try{var o=Promise.resolve(e["sync"===a.mode?"parse":"parseAsync"](r,t)).then(function(e){return n.shouldUseNativeValidation&&Dt({},n),{errors:{},values:a.raw?r: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:zt(Ku(e.errors,!n.shouldUseNativeValidation&&"all"===n.criteriaMode),n)};throw e}))}catch(i){return Promise.reject(i)}}};const Gu=Mt.object({id_leader:Mt.string().nullable(),id_users:Mt.array(Mt.string()).min(1,"Selecione pelo menos um liderado")}),Ju=Mt.object({id_leader:Mt.string().nullable(),id_users:Mt.array(Mt.string())});function Xu({value:a,onChange:r,excludeUserIds:s=[],error:n}){const{data:i=[],isLoading:o}=so(),[d,m]=c(""),h=l(null),p=l(0),{t:f}=Rs(),g=i.filter(e=>!s.includes(e.userId||"")).filter(e=>{const t=d.toLowerCase(),a=e.userName?.toLowerCase().includes(t);return a}).sort((e,t)=>{const r=a.includes(e.userId),s=a.includes(t.userId);if(r&&!s)return-1;if(!r&&s)return 1;const n=e.userName||e.userEmail||"",i=t.userName||t.userEmail||"";return n.localeCompare(i)});return u(()=>{h.current&&p.current>0&&(h.current.scrollTop=p.current)},[g]),t("div",o?{className:"flex items-center justify-center p-4",children:[e(T,{className:"h-6 w-6 animate-spin"}),e("span",{className:"ml-2",children:f("loading_data")})]}:{className:"space-y-2",children:[e($a,{placeholder:f("search_user"),value:d,onChange:e=>m(e.target.value)}),e("div",{ref:h,className:"border rounded-md p-4 h-[300px] overflow-y-auto",children:0===g.length?e("p",{className:"text-sm text-muted-foreground",children:f("search_user")}):e("div",{className:"space-y-2",children:g.map(s=>t("div",{className:"flex items-center space-x-2",children:[e(Cr,{id:s.userId,checked:a.includes(s.userId),onCheckedChange:()=>{return e=s.userId,h.current&&(p.current=h.current.scrollTop),void(a.includes(e)?r(a.filter(t=>t!==e)):r([...a,e]));var e}}),e(Va,{htmlFor:s.userId,className:"flex-1 cursor-pointer",children:s.userName||s.userEmail})]},s.userId))})}),a.length>0&&e("p",{className:"text-sm text-muted-foreground",children:f("selected_count",{count:a.length})}),n&&e("p",{className:"text-sm text-destructive",children:n})]})}function Yu({leader:r,prefilledLeaderId:s,onSuccess:n}){const{t:i}=Rs(),{alias:o}=$n(),l=!!r,d=r?.id.startsWith("virtual-"),m=Uu(),h=$u(),p=Vu(),f=Bu(),g=qu(),{data:b=[]}=Du(),{data:v=[]}=so(),[y,x]=c(""),N=Mu(b).map(e=>e.id_user),w=l?Mu(b).filter(e=>e.id_leader===r.id_user).map(e=>e.id_user):[],k=tt({resolver:Qu(l?Ju:Gu),defaultValues:{id_leader:s||(l?r?.id_leader:null)||null,id_users:l?w:[]}});u(()=>{if(r){const e=Mu(b).filter(e=>e.id_leader===r.id_user).map(e=>e.id_user);k.reset({id_leader:r.id_leader||null,id_users:e})}else s?k.reset({id_leader:s,id_users:[]}):k.reset({id_leader:null,id_users:[]})},[o,r?.id,r?.id_user,r?.id_leader,s,b]);const S=m.isPending||h.isPending||p.isPending||f.isPending||g.isPending,C=k.watch("id_leader"),_=k.watch("id_users"),P=l?[r.id_user,...N.filter(e=>e!==r.id_user&&!_.includes(e)&&!w.includes(e))]:[C,...N.filter(e=>!_.includes(e))].filter(Boolean);return t("form",{onSubmit:k.handleSubmit(async e=>{try{if(l)if(d){await h.mutateAsync({id_user:r.id_user,id_leader:e.id_leader});const t=v.filter(t=>e.id_users.includes(t.userId)).map(e=>({id_user:e.userId}));await f.mutateAsync({leaderUserId:r.id_user,selectedUsers:t})}else{await p.mutateAsync({id:r.id,id_leader:e.id_leader});const t=v.filter(t=>e.id_users.includes(t.userId)).map(e=>({id_user:e.userId}));await f.mutateAsync({leaderUserId:r.id_user,selectedUsers:t})}else{const t=v.filter(t=>e.id_users.includes(t.userId)).map(e=>({id_user:e.userId}));await m.mutateAsync({id_leader:e.id_leader,users:t})}n?.()}catch(t){}}),className:"space-y-4",children:[l&&t("div",{children:[e(Va,{children:i("leader")}),e($a,{value:v.find(e=>e.userId===r.id_user)?.userName||r.name||r.id_user,disabled:!0,className:"bg-muted"})]}),t("div",{children:[e(Va,{children:i("superior")}),t(fr,{value:C||"none",onValueChange:e=>k.setValue("id_leader","none"===e?null:e),children:[e(vr,{children:e(br,{placeholder:i("select_placeholder")})}),t(Nr,{children:[e("div",{className:"sticky top-0 z-10 bg-background p-2 border-b",children:e($a,{placeholder:i("superior_search"),value:y,onChange:e=>x(e.target.value),onKeyDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:"h-8"})}),t(Zi,{className:"h-[200px]",children:[e(kr,{value:"none",children:"[Nenhum]"}),v.filter(e=>{const t=l?e.userId!==r.id_user:!_.includes(e.userId),a=!y||e.userName?.toLowerCase().includes(y.toLowerCase());return t&&a}).sort((e,t)=>{const a=e.userName||e.userEmail||"",r=t.userName||t.userEmail||"";return a.localeCompare(r)}).map(t=>e(kr,{value:t.userId,children:t.userName},t.userId))]})]})]},`superior-select-${o}`),k.formState.errors.id_leader&&e("p",{className:"text-sm text-destructive mt-1",children:k.formState.errors.id_leader.message})]}),t("div",{children:[t(Va,{children:[i("subordinates")," *"]}),e(Xu,{value:_,onChange:e=>k.setValue("id_users",e),excludeUserIds:P,error:k.formState.errors.id_users?.message},`users-multiselect-${o}`)]}),t("div",{className:"flex items-center justify-between gap-2",children:[e(Da,{type:"submit",disabled:S||!l&&0===_.length,children:S&&!g.isPending?t(a,{children:[e(T,{className:"mr-2 h-4 w-4 animate-spin"}),i(l?"updating":"saving")]}):l?_.length>0?i("update_success",{count:_.length}):i("update"):i("create_success",{count:_.length})}),l&&!C&&0===_.length&&e(Da,{type:"button",variant:"destructive",disabled:S,onClick:async()=>{if(r&&window.confirm(i("remove_confirm")))try{await g.mutateAsync(r.id),n?.()}catch(e){}},className:"ml-auto",children:g.isPending?t(a,{children:[e(T,{className:"mr-2 h-4 w-4 animate-spin"}),i("removing")]}):t(a,{children:[e(z,{className:"mr-2 h-4 w-4"}),i("remove")]})})]})]})}function Zu({open:a,onOpenChange:r,leader:s,prefilledLeaderId:n,title:i}){return e(Ga,{open:a,onOpenChange:r,children:t(er,{className:"sm:max-w-[500px]",children:[e(tr,{children:e(rr,{children:i})}),e(Yu,{leader:s,prefilledLeaderId:n,onSuccess:()=>r(!1)})]})})}const em="leadership-expanded-nodes",tm=(e,t)=>{try{localStorage.setItem(`${em}-${e}`,JSON.stringify(Array.from(t)))}catch(a){}};function am(){const{alias:a}=$n(),{t:r}=Rs(),{data:s,isLoading:n,error:i,refetch:o}=Du(),{data:l=[]}=so({enabled:!0}),[d,m]=c(()=>a?(e=>{try{const t=localStorage.getItem(`${em}-${e}`);if(t)return new Set(JSON.parse(t))}catch(i){}return new Set})(a):new Set),[h,p]=c(!1),[f,g]=c(),[b,v]=c(null),y=l.filter(e=>e.userName&&"Nome não disponível"!==e.userName),x=new Set(y.map(e=>e.userId)),N=y.length-(s?Mu(s).filter(e=>x.has(e.id_user)&&"[Não encontrado]"!==e.name).length:0);u(()=>{if(s&&s.length>0&&a){if(!localStorage.getItem(`${em}-${a}`)){const e=s.map(e=>e.id),t=new Set(e);m(t),tm(a,t)}}},[s,a]);const w=e=>{m(t=>{const r=new Set(t);return r.has(e)?r.delete(e):r.add(e),a&&tm(a,r),r})},k=e=>{g(e),v(null),p(!0)};return n?e("div",{className:"flex items-center justify-center h-full",children:t("div",{className:"text-center",children:[e(Me,{className:"h-8 w-8 animate-spin mx-auto mb-4 text-muted-foreground"}),e("p",{className:"text-muted-foreground",children:r("loading")})]})}):i?e("div",{className:"flex items-center justify-center h-full",children:t("div",{className:"text-center",children:[e("p",{className:"text-destructive mb-4",children:"Erro ao carregar hierarquia de liderança"}),e(Da,{onClick:()=>o(),children:"Tentar novamente"})]})}):t("div",{className:"flex flex-col h-full",children:[e("div",{className:"flex items-center justify-between p-4 border-b",children:t("div",{className:"flex gap-2 items-center",children:[t(Da,{size:"sm",onClick:()=>{g(void 0),v(null),p(!0)},children:[e($,{className:"h-4 w-4 mr-2"}),"Definir Líder"]}),t(Da,{variant:"outline",size:"sm",onClick:()=>{if(!s)return;const e=Mu(s).filter(e=>e.children.length>0).map(e=>e.id),t=new Set(e);m(t),a&&tm(a,t)},disabled:!s||0===s.length,children:[e(_,{className:"h-4 w-4 mr-2"}),"Expandir todos"]}),t(Da,{variant:"outline",size:"sm",onClick:()=>{const e=new Set;m(e),a&&tm(a,e)},disabled:!s||0===s.length,children:[e(L,{className:"h-4 w-4 mr-2"}),"Recolher todos"]}),e("div",{className:"flex items-center gap-2 ml-4",children:t("div",{className:"flex items-center gap-2 px-3 py-1.5 bg-muted rounded-md",children:[e(He,{className:"h-4 w-4 text-muted-foreground"}),t("span",{className:"text-sm font-medium",children:[N," usuário",1!==N?"s":""," não associado",1!==N?"s":""]})]})})]})}),s&&0!==s.length?e(Zi,{className:"flex-1",children:e("div",{children:t("table",{className:"w-full",children:[e("thead",{children:t("tr",{className:"border-b bg-muted/50",children:[e("th",{className:"py-3 px-4 text-left font-semibold",children:"Nome"}),e("th",{className:"py-3 px-4 text-center font-semibold",children:"Liderados"})]})}),e("tbody",{children:s.map(t=>e(Hu,{leader:t,expandedIds:d,onToggleExpand:w,onEdit:k},t.id))})]})})}):e("div",{className:"flex items-center justify-center flex-1",children:t("div",{className:"text-center space-y-4",children:[e("p",{className:"text-muted-foreground",children:"Nenhuma hierarquia de liderança encontrada"}),e("p",{className:"text-sm text-muted-foreground",children:'Clique em "Definir Líder" para começar'})]})}),e(Zu,{open:h,onOpenChange:()=>{p(!1),g(void 0),v(null)},leader:f,prefilledLeaderId:b,title:f?r("edit")+" "+r("name"):b?r("add")+" Liderado":r("add")+" Líder Raiz"},`leadership-dialog-${a}`)]})}function rm(e){const[t,a]=c(!1),[r,s]=c(0),{t:n}=Rs(),{uploadFunction:i,deleteFunction:o,defaultOptions:l,onSuccess:d,onError:u}=e||{};return{upload:async(e,t)=>{if(!i){const e=new Error("uploadFunction não fornecida");throw zr({title:"Erro de configuração",description:"Função de upload não configurada. Verifique a documentação.",variant:"destructive"}),e}a(!0),s(0);try{const a={...l,...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 r=await i(e,a);return s(100),zr({title:"Sucesso",description:n("file_upload_success")}),d?.(r),r}catch(r){const e=r instanceof Error?r:new Error("Erro ao fazer upload");throw zr({title:"Erro",description:e.message,variant:"destructive"}),u?.(e),e}finally{a(!1)}},deleteMedia:async(e,t)=>{if(!o){const e=new Error("deleteFunction não fornecida");throw zr({title:"Erro de configuração",description:"Função de delete não configurada.",variant:"destructive"}),e}try{await o(e,t),zr({title:"Sucesso",description:"Arquivo removido com sucesso"})}catch(a){throw zr({title:"Erro",description:"Erro ao remover o arquivo",variant:"destructive"}),a}},uploading:t,progress:r}}function sm(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 nm(e,t){const a=sm(e);if(!a)return e;return`https://www.youtube.com/embed/${a}${t?"?autoplay=1&mute=1":""}`}function im(e){const t=e.match(/vimeo\.com\/(?:video\/)?(\d+)/);return t?t[1]:null}function om(e,t){const a=im(e);if(!a)return e;return`https://player.vimeo.com/video/${a}${t?"?autoplay=1&muted=1":""}`}function lm(e){if(!e)return;const t=e.match(/src="([^"]+)"/);return t?t[1]:void 0}function dm(e){return e?/youtube|youtu\.be/.test(e)?"youtube":/vimeo/.test(e)?"vimeo":"file":"file"}function cm(e,t,a){switch(t||dm(e)){case"youtube":return nm(e,a);case"vimeo":return om(e,a);default:return e}}function um({value:r,onChange:s,onSubmit:n,onCancel:i,uploadFunction:d,deleteFunction:u,uploadOptions:m}){const{t:h}=Rs(),[p,f]=c(r||{inputType:"url",controls:!0}),g=l(null),b=l(null),{upload:v,uploading:y}=rm({uploadFunction:d,deleteFunction:u,defaultOptions:{...m,allowedTypes:["video/*"],maxSize:104857600}}),{upload:x,uploading:N}=rm({uploadFunction:d,deleteFunction:u,defaultOptions:{...m,allowedTypes:["image/*"],maxSize:5242880}}),w=o(()=>dm(p.videoUrl||lm(p.embedCode)||""),[p.videoUrl,p.embedCode]),k=(e,t)=>{const a={...p,[e]:t};f(a),s(a)};return t("div",{className:"space-y-6",children:[t("div",{className:"space-y-2",children:[e(Va,{children:h("input_type")}),t(fr,{value:p.inputType||"url",onValueChange:e=>k("inputType",e),children:[e(vr,{children:e(br,{})}),t(Nr,{children:[e(kr,{value:"url",children:h("url")}),e(kr,{value:"upload",children:h("input_type_upload")}),e(kr,{value:"embed",children:h("input_type_embed")})]})]})]}),"upload"===p.inputType&&d&&t("div",{className:"space-y-2",children:[e(Va,{children:h("file")}),t("div",{className:"flex gap-2",children:[e("input",{ref:g,type:"file",accept:"video/*",onChange:async e=>{const t=e.target.files?.[0];if(t)try{const e=await v(t),a={...p,videoUrl:e.url,videoFile:e.name,videoPath:e.path,videoSize:e.size,title:p.title||t.name.replace(/\.[^/.]+$/,"")};f(a),s(a)}catch(a){}finally{g.current&&(g.current.value="")}},className:"hidden"}),e(Da,{type:"button",variant:"outline",onClick:()=>g.current?.click(),disabled:y,children:t(a,y?{children:[e(T,{className:"mr-2 h-4 w-4 animate-spin"}),h("uploading")]}:{children:[e(de,{className:"mr-2 h-4 w-4"}),h("select_video")]})}),p.videoFile&&e("span",{className:"text-xs text-muted-foreground truncate self-center",children:h("video.fileInfo",{name:p.videoFile,size:Math.round((p.videoSize||0)/1024/1024)})})]})]}),"embed"===p.inputType&&t("div",{className:"space-y-2",children:[e(Va,{children:h("embed")}),e(_r,{placeholder:h("embed"),value:p.embedCode||"",onChange:e=>k("embedCode",e.target.value),rows:4,className:"font-mono text-sm"})]}),d&&t("div",{className:"space-y-2",children:[e(Va,{children:h("thumbnail")}),t("div",{className:"flex gap-2",children:[e($a,{type:"url",placeholder:h("thumbnail"),value:p.thumbnail||"",onChange:e=>k("thumbnail",e.target.value),className:"flex-1"}),e("input",{ref:b,type:"file",accept:"image/*",onChange:async e=>{const t=e.target.files?.[0];if(t)try{const e=await x(t),a={...p,thumbnail:e.url,thumbnailFile:e.name,thumbnailPath:e.path};f(a),s(a)}catch(a){}finally{b.current&&(b.current.value="")}},className:"hidden"}),e(Da,{type:"button",variant:"outline",onClick:()=>b.current?.click(),disabled:N,children:t(a,N?{children:[e(T,{className:"mr-2 h-4 w-4 animate-spin"}),h("video.uploading")]}:{children:[e(de,{className:"mr-2 h-4 w-4"}),h("upload")]})})]}),p.thumbnailFile&&e("p",{className:"text-xs text-muted-foreground",children:h("video.thumbnailFileInfo",{name:p.thumbnailFile})})]}),t("div",{className:"space-y-2",children:[e(Va,{htmlFor:"title",children:h("title")}),e($a,{id:"title",placeholder:h("title"),value:p.title||"",onChange:e=>k("title",e.target.value)})]}),t("div",{className:"flex gap-6",children:[t("div",{className:"flex items-center gap-2",children:[e("input",{id:"autoplay",type:"checkbox",checked:p.autoplay||!1,onChange:e=>k("autoplay",e.target.checked),className:"h-4 w-4"}),e(Va,{htmlFor:"autoplay",className:"cursor-pointer",children:h("video.autoplay")})]}),t("div",{className:"flex items-center gap-2",children:[e("input",{id:"controls",type:"checkbox",checked:!1!==p.controls,onChange:e=>k("controls",e.target.checked),className:"h-4 w-4"}),e(Va,{htmlFor:"controls",className:"cursor-pointer",children:h("video.controls")})]})]}),t("div",{className:"space-y-2",children:[e(Va,{children:h("preview")}),e("div",{className:"border rounded-lg p-4 bg-muted/30",children:(()=>{const a=p.videoUrl||lm(p.embedCode)||"";if(!a)return e("div",{className:"text-center py-8 text-muted-foreground",children:h("no_content_preview")});if("file"===w)return t("video",{controls:!1!==p.controls,autoPlay:p.autoplay,poster:p.thumbnail,className:"w-full h-auto rounded-md",playsInline:!0,children:[e("source",{src:a}),h("unsupported")]});const r="youtube"===w?nm(a,p.autoplay):om(a,p.autoplay);return e("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e("iframe",{title:p.title||h("video"),src:r,className:"absolute inset-0 w-full h-full rounded-md",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})})})()})]}),t("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e(Da,{variant:"outline",onClick:i,children:h("cancel")}),e(Da,{onClick:()=>{p.videoUrl||p.embedCode?n(p):zr({title:h("error"),description:h("error_no_video"),variant:"destructive"})},disabled:!(p.videoUrl||p.embedCode),children:h("save")})]})]})}function mm({content:a,className:r="",style:s}){const n=a.videoUrl||lm(a.embedCode)||"";if(!n)return null;const i=dm(n),{t:o}=Rs();return e(qa,{className:`overflow-hidden my-4 ${r}`,style:s,children:t(Ka,{className:"p-0",children:["file"===i?t("video",{controls:!1!==a.controls,autoPlay:a.autoplay,poster:a.thumbnail,className:"w-full h-auto",playsInline:!0,muted:a.autoplay,children:[e("source",{src:n}),"Seu navegador não suporta vídeos HTML5."]}):e("div",{className:"relative w-full",style:{paddingTop:"56.25%"},children:e("iframe",{title:a.title||o("video"),src:"youtube"===i?nm(n,a.autoplay):om(n,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("div",{className:"p-4",children:e("p",{className:"text-sm font-medium",children:a.title})})]})})}function hm({value:r,onChange:s,onSubmit:n,onCancel:i,uploadFunction:o,deleteFunction:d,uploadOptions:u}){const{t:m}=Rs(),[h,p]=c(r||{alignment:"center",allowDownload:!1}),f=l(null),{upload:g,uploading:b}=rm({uploadFunction:o,deleteFunction:d,defaultOptions:{...u,allowedTypes:["image/*"],maxSize:5242880}}),v=(e,t)=>{const a={...h,[e]:t};p(a),s(a)};return t("div",{className:"space-y-6",children:[t("div",{className:"space-y-2",children:[e(Va,{children:m("url")}),t("div",{className:"flex gap-2",children:[e($a,{type:"url",placeholder:m("url_placeholder"),value:h.imageUrl||"",onChange:e=>v("imageUrl",e.target.value),className:"flex-1"}),o&&t(a,{children:[e("input",{ref:f,type:"file",accept:"image/*",onChange:async e=>{const t=e.target.files?.[0];if(t)try{const e=await g(t),a={...h,imageUrl:e.url,imageFile:e.name,imagePath:e.path,imageSize:e.size};p(a),s(a)}catch(a){}finally{f.current&&(f.current.value="")}},className:"hidden"}),e(Da,{type:"button",variant:"outline",onClick:()=>f.current?.click(),disabled:b,children:t(a,b?{children:[e(T,{className:"mr-2 h-4 w-4 animate-spin"}),m("uploading")]}:{children:[e(de,{className:"mr-2 h-4 w-4"}),m("upload")]})})]})]}),h.imageFile&&e("p",{className:"text-xs text-muted-foreground",children:m("image.fileInfo",{name:h.imageFile,size:Math.round((h.imageSize||0)/1024)})})]}),h.imageUrl&&t("div",{className:"space-y-2",children:[e(Va,{children:m("preview")}),e("div",{className:"border rounded-lg p-4 bg-muted/30",children:e("div",{className:"flex "+("left"===h.alignment?"justify-start":"right"===h.alignment?"justify-end":"justify-center"),children:e("img",{src:h.imageUrl,alt:h.alt||"Preview",style:{width:h.width?`${h.width}px`:"auto",height:h.height?`${h.height}px`:"auto",maxWidth:"100%"},className:"rounded-lg shadow-md"})})})]}),t("div",{className:"space-y-2",children:[e(Va,{htmlFor:"caption",children:m("caption")}),e(_r,{id:"caption",placeholder:m("caption"),value:h.caption||"",onChange:e=>v("caption",e.target.value),rows:2})]}),t("div",{className:"space-y-2",children:[e(Va,{htmlFor:"alt",children:m("alt")}),e($a,{id:"alt",placeholder:m("alt"),value:h.alt||"",onChange:e=>v("alt",e.target.value)})]}),t("div",{className:"space-y-2",children:[e(Va,{children:m("alignment")}),t(fr,{value:h.alignment||"center",onValueChange:e=>v("alignment",e),children:[e(vr,{children:e(br,{})}),t(Nr,{children:[e(kr,{value:"left",children:m("left")}),e(kr,{value:"center",children:m("center")}),e(kr,{value:"right",children:m("right")})]})]})]}),t("div",{className:"grid grid-cols-2 gap-4",children:[t("div",{className:"space-y-2",children:[e(Va,{htmlFor:"width",children:m("width")}),e($a,{id:"width",type:"number",placeholder:"px",value:h.width||"",onChange:e=>v("width",e.target.value?Number(e.target.value):void 0)})]}),t("div",{className:"space-y-2",children:[e(Va,{htmlFor:"height",children:m("height")}),e($a,{id:"height",type:"number",placeholder:"px",value:h.height||"",onChange:e=>v("height",e.target.value?Number(e.target.value):void 0)})]})]}),t("div",{className:"flex items-center gap-2",children:[e("input",{id:"allowDownload",type:"checkbox",checked:h.allowDownload||!1,onChange:e=>v("allowDownload",e.target.checked),className:"h-4 w-4"}),e(Va,{htmlFor:"allowDownload",className:"cursor-pointer",children:m("allow_download")})]}),t("div",{className:"flex justify-end gap-2 pt-4 border-t",children:[e(Da,{variant:"outline",onClick:i,children:m("cancel")}),e(Da,{onClick:()=>{h.imageUrl?n(h):zr({title:m("error"),description:m("error_no_image"),variant:"destructive"})},disabled:!h.imageUrl,children:m("save")})]})]})}function pm({content:a,className:r="",style:s}){if(!a.imageUrl)return null;const n={left:"justify-start",center:"justify-center",right:"justify-end"}[a.alignment||"center"];return e("div",{className:`flex ${n} my-4 ${r}`,style:s,children:t("div",{className:"space-y-2 max-w-full",children:[e("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("p",{className:"text-sm text-muted-foreground text-center italic",children:a.caption}),a.allowDownload&&a.imageUrl&&t("a",{href:a.imageUrl,download:!0,className:"flex items-center gap-2 text-sm text-primary hover:underline justify-center",children:[e(ce,{className:"h-4 w-4"}),"Baixar imagem"]})]})})}function fm(e,t){return e/t}function gm(e,t,a,r){const s=fm(e,t);return a&&!r?{width:a,height:Math.round(a/s)}:r&&!a?{width:Math.round(r*s),height:r}:{width:e,height:t}}function bm(e){const t=e.toLowerCase();return[".jpg",".jpeg",".png",".gif",".webp",".svg",".bmp",".ico"].some(e=>t.includes(e))}function vm(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"}}function ym(e){return e<1024?`${e} B`:e<1048576?`${Math.round(e/1024)} KB`:`${(e/1024/1024).toFixed(2)} MB`}export{pn as AUTH_CONFIG,$o as Accordion,qo as AccordionContent,Uo as AccordionItem,Vo as AccordionTrigger,za as ActionButton,Ic as ActionMenu,Ai as ActionMenuItems,Io as Alert,Ro as AlertDescription,qn as AlertDialog,Yn as AlertDialogAction,Zn as AlertDialogCancel,Kn as AlertDialogContent,Xn as AlertDialogDescription,Gn as AlertDialogFooter,Qn as AlertDialogHeader,Hn as AlertDialogOverlay,Wn as AlertDialogPortal,Jn as AlertDialogTitle,Bn as AlertDialogTrigger,Ao as AlertTitle,au as AppHeader,gu as AppLayout,fu as AppSidebar,Bo as AspectRatio,ln as AuthErrorInterceptor,zn as AuthProvider,Mn as AuthService,Wo as Avatar,Ko as AvatarFallback,Ho as AvatarImage,Er as Badge,io as BaseForm,cd as Blockquote,Qo as Breadcrumb,el as BreadcrumbEllipsis,Jo as BreadcrumbItem,Xo as BreadcrumbLink,Go as BreadcrumbList,Yo as BreadcrumbPage,Zo as BreadcrumbSeparator,co as BulkActionBar,Da as Button,al as ButtonGroup,fn as CRUD_CONFIG,Cl as Calendar,Oo as CallbackPage,qa as Card,Ka as CardContent,Ha as CardDescription,Qa as CardFooter,Ba as CardHeader,ci as CardSkeleton,Wa as CardTitle,Rc as Cards,Eu as ChatbotPage,Cr as Checkbox,_l as Collapsible,El as CollapsibleContent,Pl as CollapsibleTrigger,Yi as ColorPicker,Fs as Combobox,Zr as Command,es as CommandDialog,rs as CommandEmpty,ss as CommandGroup,ts as CommandInput,is as CommandItem,as as CommandList,ns as CommandSeparator,os as CommandShortcut,Oi as ContextMenu,qi as ContextMenuCheckboxItem,Ui as ContextMenuContent,ji as ContextMenuGroup,Vi as ContextMenuItem,Wi as ContextMenuLabel,Fi as ContextMenuPortal,Di as ContextMenuRadioGroup,Bi as ContextMenuRadioItem,Hi as ContextMenuSeparator,Ki as ContextMenuShortcut,Mi as ContextMenuSub,$i as ContextMenuSubContent,zi as ContextMenuSubTrigger,Li as ContextMenuTrigger,Ec as CrudCards,go as CrudPageInternal,lo as CrudPagination,Ac as CrudPrimitiveFilterBar,oo as CrudPrimitivePagination,Tc as CrudPrimitiveTable,Gi as CrudTable,Tl as DataList,Il as DatePicker,ei as DeleteConfirmationDialog,Ga as Dialog,Ya as DialogClose,er as DialogContent,sr as DialogDescription,ar as DialogFooter,tr as DialogHeader,Za as DialogOverlay,Xa as DialogPortal,rr as DialogTitle,Ja as DialogTrigger,Al as Drawer,Ll as DrawerClose,Fl as DrawerContent,$l as DrawerDescription,Dl as DrawerFooter,Ml as DrawerHeader,jl as DrawerOverlay,Ol as DrawerPortal,zl as DrawerTitle,Rl as DrawerTrigger,gi as DropdownMenu,_i as DropdownMenuCheckboxItem,Si as DropdownMenuContent,vi as DropdownMenuGroup,Ci as DropdownMenuItem,Ei as DropdownMenuLabel,yi as DropdownMenuPortal,Ni as DropdownMenuRadioGroup,Pi as DropdownMenuRadioItem,Ti as DropdownMenuSeparator,Ii as DropdownMenuShortcut,xi as DropdownMenuSub,ki as DropdownMenuSubContent,wi as DropdownMenuSubTrigger,bi as DropdownMenuTrigger,Su as EmailService,fi as EmptyState,Fs as EntitySelect,yu as ErrorBoundary,fo as FilterBar,nr as Form,mr as FormControl,hr as FormDescription,or as FormField,cr as FormItem,ur as FormLabel,pr as FormMessage,ui as FormSkeleton,Bl as Grid,ed as H1,td as H2,ad as H3,rd as H4,mi as HeaderSkeleton,Os as I18nextProvider,ao as IconPicker,hm as ImageEditor,pm as ImageRenderer,dd as InlineCode,$a as Input,Wl as InputGroup,Kl as InputGroupAddon,Gl as InputGroupButton,Jl as InputGroupInput,Xl as InputGroupTextarea,Yl as Kbd,Nn as LOGO_CONFIG,Va as Label,id as Large,nd as Lead,Hu as LeaderRow,Zu as LeadershipDialog,Yu as LeadershipForm,am as LeadershipPage,ud as List,Ar as LoadingState,Bc as LocaleProvider,Gc as LocaleSelector,Lo as LoginPage,wn as MESSAGES,Tu as ManageAccessModal,Pu as MarkdownMessage,Fs as MultiSelect,ld as Muted,Zl as NativeSelect,Yc as NavigationProvider,sd as P,md as PageBreadcrumb,Fo as PageMetadataProvider,pd as Pagination,fd as PaginationContent,xd as PaginationEllipsis,gd as PaginationItem,bd as PaginationLink,yd as PaginationNext,vd as PaginationPrevious,Iu as PlaceCard,Au as PlacesList,Jr as Popover,Yr as PopoverContent,Xr as PopoverTrigger,wo as Progress,Eo as ProtectedRoute,yn as QUALIEX_CONFIG,vn as QUERY_KEYS,En as QualiexEnrichmentService,cn as QualiexErrorInterceptor,no as QualiexUserField,Nd as RadioGroup,wd as RadioGroupItem,pu as ResizableRail,gn as SEARCH_CONFIG,Zi as ScrollArea,eo as ScrollBar,Sd as Searchbar,fr as Select,Nr as SelectContent,gr as SelectGroup,kr as SelectItem,wr as SelectLabel,xr as SelectScrollDownButton,yr as SelectScrollUpButton,Fs as SelectSearch,Sr as SelectSeparator,vr as SelectTrigger,br as SelectValue,Cd as Separator,_d as Sheet,Ed as SheetClose,Rd as SheetContent,Fd as SheetDescription,Ld as SheetFooter,Od as SheetHeader,Id as SheetOverlay,Td as SheetPortal,jd as SheetTitle,Pd as SheetTrigger,Wd as Sidebar,Zd as SidebarContent,Xd as SidebarFooter,ec as SidebarGroup,ac as SidebarGroupAction,rc as SidebarGroupContent,tc as SidebarGroupLabel,mu as SidebarHeader,Gd as SidebarInput,Qd as SidebarInset,sc as SidebarMenu,lc as SidebarMenuAction,dc as SidebarMenuBadge,oc as SidebarMenuButton,nc as SidebarMenuItem,cc as SidebarMenuSkeleton,uc as SidebarMenuSub,hc as SidebarMenuSubButton,mc as SidebarMenuSubItem,Bd as SidebarProvider,Kd as SidebarRail,Yd as SidebarSeparator,hi as SidebarSkeleton,Hd as SidebarTrigger,ls as Skeleton,pc as Slider,od as Small,fc as SonnerToaster,Ir as Spinner,po as Stack,Ul as StatusSelect,ro as Switch,wc as TabPageContent,Nc as TabPageHeader,xc as TabPageLayout,ti as Table,ri as TableBody,li as TableCaption,oi as TableCell,si as TableFooter,ii as TableHead,ai as TableHeader,ni as TableRow,Ri as TableRowActions,di as TableSkeleton,gc as Tabs,yc as TabsContent,bc as TabsList,vc as TabsTrigger,_r as Textarea,Br as Toast,Wr as ToastAction,Hr as ToastClose,Qr as ToastDescription,Ur as ToastProvider,Kr as ToastTitle,Vr as ToastViewport,Gr as Toaster,Sc as Toggle,_c as ToggleGroup,Pc as ToggleGroupItem,Hs as TokenManager,Ds as TokenService,Dd as Tooltip,$d as TooltipContent,Md as TooltipProvider,zd as TooltipTrigger,xu as TranslationLoader,um as VideoEditor,mm as VideoRenderer,So as WizardBreadcrumb,_o as WizardButtons,Po as WizardForm,Co as WizardProgressBar,ko as WizardStepper,du as assets,Pr as badgeVariants,Fu as buildHierarchy,tl as buttonGroupVariants,Ma as buttonVariants,fm as calculateAspectRatio,Aa as cn,bo as createCrudPage,Lc as createCrudRoutingConfig,Oc as createRoutingHandlers,An as createService,vo as createSimpleSaveHandler,Vn as createSimpleService,ja as debounce,Sn as deriveEmailField,kn as deriveNameField,Cn as deriveUsernameField,dm as detectVideoProvider,Cu as emailService,Gs as errorService,vm as extractImageFileName,im as extractVimeoId,sm as extractYouTubeId,ju as filterAndPromoteOrphans,Mu as flattenTree,La as formatCurrency,wu as formatDate,Oa as formatDatetime,ym as formatFileSize,yo as generateCrudConfig,xn as getQualiexConfig,an as getSupabaseClient,Ia as handleExternalLink,Ta as i18n,Hl as inputGroupAddonVariants,Ql as inputGroupButtonVariants,bn as isDevEnvironment,bm as isImageUrl,cu as logoSrc,cm as normalizeVideoUrl,om as normalizeVimeoUrl,nm as normalizeYouTubeUrl,lm as parseIframeSrc,Lu as placeService,hn as qualiexApi,gm as resizeKeepingAspect,_n as resolveFieldMappings,kd as searchbarVariants,zo as setupQualiexCore,Fa as slugify,uu as smallLogoSrc,zr as toast,kc as toggleVariants,zc as translationService,Ra as trimTextFields,su as useActiveModules,jc as useAllQualiexUsers,$n as useAuth,Ji as useBaseForm,zu as useCreateLeaderMutation,Uu as useCreateMultipleLeadersMutation,$u as useCreateSingleLeaderMutation,Un as useCrud,tu as useDebounce,lr as useFormField,ku as useI18nFormatters,Du as useLeadershipApi,Wc as useLocale,rm as useMediaUpload,Zc as useNavigation,_u as useOpenAIChat,Do as usePageMetadata,Mo as usePageMetadataContext,eu as usePageTitle,ru as usePermissionQuery,so as useQualiexUsers,qu as useRemoveLeaderMutation,hd as useRouteBreadcrumbs,qd as useSidebar,hu as useSidebarResize,Bu as useSyncSubordinatesMutation,$r as useToast,Rs as useTranslation,Vu as useUpdateLeaderMutation};
|