forlogic-core 1.4.11 → 1.4.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.js +2 -2
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/index.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import*as e from"react";import a,{useMemo as t,useCallback as s,useState as r,useEffect as n,createContext as i,useContext as o,useRef as l,Component as c}from"react";import{Slot as d,createSlot as m}from"@radix-ui/react-slot";import{cva as u}from"class-variance-authority";import{clsx as f}from"clsx";import{twMerge as p}from"tailwind-merge";import{parseISO as h,isValid as x,format as g}from"date-fns";import*as b from"@radix-ui/react-label";import*as y from"@radix-ui/react-dialog";import{X as v,ChevronDown as N,ChevronUp as j,Check as w,Loader2 as k,AlertCircle as S,Search as C,FileX as T,ChevronRight as R,Circle as _,Edit as P,PowerOff as E,Power as A,Trash2 as I,EllipsisVertical as D,ArrowUpDown as O,ArrowUp as z,ArrowDown as
|
|
1
|
+
import*as e from"react";import a,{useMemo as t,useCallback as s,useState as r,useEffect as n,createContext as i,useContext as o,useRef as l,Component as c}from"react";import{Slot as d,createSlot as m}from"@radix-ui/react-slot";import{cva as u}from"class-variance-authority";import{clsx as f}from"clsx";import{twMerge as p}from"tailwind-merge";import{parseISO as h,isValid as x,format as g}from"date-fns";import*as b from"@radix-ui/react-label";import*as y from"@radix-ui/react-dialog";import{X as v,ChevronDown as N,ChevronUp as j,Check as w,Loader2 as k,AlertCircle as S,Search as C,FileX as T,ChevronRight as R,Circle as _,Edit as P,PowerOff as E,Power as A,Trash2 as I,EllipsisVertical as D,ArrowUpDown as O,ArrowUp as z,ArrowDown as $,Target as F,Trophy as L,Award as M,Sparkles as V,Flame as U,Zap as B,Key as W,Shield as q,EyeOff as H,Eye as Q,Unlock as J,Lock as K,Archive as X,FolderOpen as G,Folder as Y,FileText as Z,Save as ee,Copy as ae,Share as te,Upload as se,Download as re,HelpCircle as ne,Info as ie,Bell as oe,Clock as le,ArrowRight as ce,ArrowLeft as de,ChevronLeft as me,Minus as ue,Plus as fe,Filter as pe,Bookmark as he,Book as xe,Video as ge,Music as be,Image as ye,Camera as ve,MapPin as Ne,Calendar as je,Phone as we,Mail as ke,Settings as Se,User as Ce,Home as Te,Heart as Re,Star as _e,ChevronsLeft as Pe,ChevronsRight as Ee,RefreshCw as Ae,MoreHorizontal as Ie,MessageCircle as De,PanelLeft as Oe,ExternalLink as ze,Building2 as $e,LogOut as Fe,AlertTriangle as Le}from"lucide-react";import{useFormContext as Me,FormProvider as Ve,Controller as Ue}from"react-hook-form";import*as Be from"@radix-ui/react-select";import*as We from"@radix-ui/react-checkbox";import*as qe from"@radix-ui/react-toast";import{createClient as He}from"@supabase/supabase-js";import{useQueryClient as Qe,useQuery as Je,useMutation as Ke,QueryClient as Xe}from"@tanstack/react-query";import{useSearchParams as Ge,useLocation as Ye,useNavigate as Ze,Link as ea}from"react-router-dom";import{toast as aa,Toaster as ta}from"sonner";export{toast as sonnerToast}from"sonner";import*as sa from"@radix-ui/react-alert-dialog";import*as ra from"@radix-ui/react-dropdown-menu";import*as na from"@radix-ui/react-popover";import*as ia from"@radix-ui/react-scroll-area";import*as oa from"@radix-ui/react-accordion";import*as la from"@radix-ui/react-aspect-ratio";import*as ca from"@radix-ui/react-avatar";import{DayPicker as da}from"react-day-picker";import*as ma from"@radix-ui/react-collapsible";import*as ua from"@radix-ui/react-progress";import*as fa from"@radix-ui/react-radio-group";import*as pa from"@radix-ui/react-separator";import*as ha from"@radix-ui/react-tooltip";import*as xa from"@radix-ui/react-slider";import{useTheme as ga}from"next-themes";import"react-dom";import*as ba from"@radix-ui/react-tabs";import*as ya from"@radix-ui/react-toggle";import*as va from"@radix-ui/react-toggle-group";var Na,ja={exports:{}},wa={};var ka,Sa,Ca={};
|
|
2
2
|
/**
|
|
3
3
|
* @license React
|
|
4
4
|
* react-jsx-runtime.development.js
|
|
@@ -7,4 +7,4 @@ import*as e from"react";import a,{useMemo as t,useCallback as s,useState as r,us
|
|
|
7
7
|
*
|
|
8
8
|
* This source code is licensed under the MIT license found in the
|
|
9
9
|
* LICENSE file in the root directory of this source tree.
|
|
10
|
-
*/function Ta(){return ka||(ka=1,"production"!==process.env.NODE_ENV&&function(){var e=a,t=Symbol.for("react.element"),s=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),o=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),m=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.for("react.offscreen"),h=Symbol.iterator;var x=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function g(e){for(var a=arguments.length,t=new Array(a>1?a-1:0),s=1;s<a;s++)t[s-1]=arguments[s];!function(e,a,t){var s=x.ReactDebugCurrentFrame,r=s.getStackAddendum();""!==r&&(a+="%s",t=t.concat([r]));var n=t.map(function(e){return String(e)});n.unshift("Warning: "+a),Function.prototype.apply.call(console[e],console,n)}("error",e,t)}var b;function y(e){return e.displayName||"Context"}function v(e){if(null==e)return null;if("number"==typeof e.tag&&g("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case r:return"Fragment";case s:return"Portal";case i:return"Profiler";case n:return"StrictMode";case d:return"Suspense";case m:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case l:return y(e)+".Consumer";case o:return y(e._context)+".Provider";case c:return function(e,a,t){var s=e.displayName;if(s)return s;var r=a.displayName||a.name||"";return""!==r?t+"("+r+")":t}(e,e.render,"ForwardRef");case u:var a=e.displayName||null;return null!==a?a:v(e.type)||"Memo";case f:var t=e,p=t._payload,h=t._init;try{return v(h(p))}catch(x){return null}}return null}b=Symbol.for("react.module.reference");var N,j,w,k,S,C,T,R=Object.assign,_=0;function P(){}P.__reactDisabledLog=!0;var E,A=x.ReactCurrentDispatcher;function I(e,a,t){if(void 0===E)try{throw Error()}catch(r){var s=r.stack.trim().match(/\n( *(at )?)/);E=s&&s[1]||""}return"\n"+E+e}var D,O=!1,z="function"==typeof WeakMap?WeakMap:Map;function F(e,a){if(!e||O)return"";var t,s=D.get(e);if(void 0!==s)return s;O=!0;var r,n=Error.prepareStackTrace;Error.prepareStackTrace=void 0,r=A.current,A.current=null,function(){if(0===_){N=console.log,j=console.info,w=console.warn,k=console.error,S=console.group,C=console.groupCollapsed,T=console.groupEnd;var e={configurable:!0,enumerable:!0,value:P,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}_++}();try{if(a){var i=function(){throw Error()};if(Object.defineProperty(i.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(i,[])}catch(p){t=p}Reflect.construct(e,[],i)}else{try{i.call()}catch(p){t=p}e.call(i.prototype)}}else{try{throw Error()}catch(p){t=p}e()}}catch(h){if(h&&t&&"string"==typeof h.stack){for(var o=h.stack.split("\n"),l=t.stack.split("\n"),c=o.length-1,d=l.length-1;c>=1&&d>=0&&o[c]!==l[d];)d--;for(;c>=1&&d>=0;c--,d--)if(o[c]!==l[d]){if(1!==c||1!==d)do{if(c--,--d<0||o[c]!==l[d]){var m="\n"+o[c].replace(" at new "," at ");return e.displayName&&m.includes("<anonymous>")&&(m=m.replace("<anonymous>",e.displayName)),"function"==typeof e&&D.set(e,m),m}}while(c>=1&&d>=0);break}}}finally{O=!1,A.current=r,function(){if(0===--_){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:R({},e,{value:N}),info:R({},e,{value:j}),warn:R({},e,{value:w}),error:R({},e,{value:k}),group:R({},e,{value:S}),groupCollapsed:R({},e,{value:C}),groupEnd:R({},e,{value:T})})}_<0&&g("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=n}var u=e?e.displayName||e.name:"",f=u?I(u):"";return"function"==typeof e&&D.set(e,f),f}function $(e,a,t){if(null==e)return"";if("function"==typeof e)return F(e,function(e){var a=e.prototype;return!(!a||!a.isReactComponent)}(e));if("string"==typeof e)return I(e);switch(e){case d:return I("Suspense");case m:return I("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case c:return F(e.render,!1);case u:return $(e.type,a,t);case f:var s=e,r=s._payload,n=s._init;try{return $(n(r),a,t)}catch(i){}}return""}D=new z;var L=Object.prototype.hasOwnProperty,M={},V=x.ReactDebugCurrentFrame;function U(e){if(e){var a=e._owner,t=$(e.type,e._source,a?a.type:null);V.setExtraStackFrame(t)}else V.setExtraStackFrame(null)}var B=Array.isArray;function W(e){return B(e)}function q(e){return""+e}function H(e){if(function(e){try{return q(e),!1}catch(a){return!0}}(e))return g("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),q(e)}var Q,J,K=x.ReactCurrentOwner,X={key:!0,ref:!0,__self:!0,__source:!0};function G(e,a,s,r,n){var i,o={},l=null,c=null;for(i in void 0!==s&&(H(s),l=""+s),function(e){if(L.call(e,"key")){var a=Object.getOwnPropertyDescriptor(e,"key").get;if(a&&a.isReactWarning)return!1}return void 0!==e.key}(a)&&(H(a.key),l=""+a.key),function(e){if(L.call(e,"ref")){var a=Object.getOwnPropertyDescriptor(e,"ref").get;if(a&&a.isReactWarning)return!1}return void 0!==e.ref}(a)&&(c=a.ref,function(e){"string"==typeof e.ref&&K.current}(a)),a)L.call(a,i)&&!X.hasOwnProperty(i)&&(o[i]=a[i]);if(e&&e.defaultProps){var d=e.defaultProps;for(i in d)void 0===o[i]&&(o[i]=d[i])}if(l||c){var m="function"==typeof e?e.displayName||e.name||"Unknown":e;l&&function(e,a){var t=function(){Q||(Q=!0,g("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",a))};t.isReactWarning=!0,Object.defineProperty(e,"key",{get:t,configurable:!0})}(o,m),c&&function(e,a){var t=function(){J||(J=!0,g("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",a))};t.isReactWarning=!0,Object.defineProperty(e,"ref",{get:t,configurable:!0})}(o,m)}return function(e,a,s,r,n,i,o){var l={$$typeof:t,type:e,key:a,ref:s,props:o,_owner:i,_store:{}};return Object.defineProperty(l._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(l,"_self",{configurable:!1,enumerable:!1,writable:!1,value:r}),Object.defineProperty(l,"_source",{configurable:!1,enumerable:!1,writable:!1,value:n}),Object.freeze&&(Object.freeze(l.props),Object.freeze(l)),l}(e,l,c,n,r,K.current,o)}var Y,Z=x.ReactCurrentOwner,ee=x.ReactDebugCurrentFrame;function ae(e){if(e){var a=e._owner,t=$(e.type,e._source,a?a.type:null);ee.setExtraStackFrame(t)}else ee.setExtraStackFrame(null)}function te(e){return"object"==typeof e&&null!==e&&e.$$typeof===t}function se(){if(Z.current){var e=v(Z.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}Y=!1;var re={};function ne(e,a){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var t=function(e){var a=se();if(!a){var t="string"==typeof e?e:e.displayName||e.name;t&&(a="\n\nCheck the top-level render call using <"+t+">.")}return a}(a);if(!re[t]){re[t]=!0;var s="";e&&e._owner&&e._owner!==Z.current&&(s=" It was passed a child from "+v(e._owner.type)+"."),ae(e),g('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,s),ae(null)}}}function ie(e,a){if("object"==typeof e)if(W(e))for(var t=0;t<e.length;t++){var s=e[t];te(s)&&ne(s,a)}else if(te(e))e._store&&(e._store.validated=!0);else if(e){var r=function(e){if(null===e||"object"!=typeof e)return null;var a=h&&e[h]||e["@@iterator"];return"function"==typeof a?a:null}(e);if("function"==typeof r&&r!==e.entries)for(var n,i=r.call(e);!(n=i.next()).done;)te(n.value)&&ne(n.value,a)}}function oe(e){var a,t=e.type;if(null!=t&&"string"!=typeof t){if("function"==typeof t)a=t.propTypes;else{if("object"!=typeof t||t.$$typeof!==c&&t.$$typeof!==u)return;a=t.propTypes}if(a){var s=v(t);!function(e,a,t,s,r){var n=Function.call.bind(L);for(var i in e)if(n(e,i)){var o=void 0;try{if("function"!=typeof e[i]){var l=Error((s||"React class")+": "+t+" type `"+i+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[i]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw l.name="Invariant Violation",l}o=e[i](a,i,s,t,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(c){o=c}!o||o instanceof Error||(U(r),g("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",s||"React class",t,i,typeof o),U(null)),o instanceof Error&&!(o.message in M)&&(M[o.message]=!0,U(r),g("Failed %s type: %s",t,o.message),U(null))}}(a,e.props,"prop",s,e)}else if(void 0!==t.PropTypes&&!Y){Y=!0,g("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",v(t)||"Unknown")}"function"!=typeof t.getDefaultProps||t.getDefaultProps.isReactClassApproved||g("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}var le={};function ce(e,a,s,h,x,y){var N=function(e){return"string"==typeof e||"function"==typeof e||e===r||e===i||e===n||e===d||e===m||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===f||e.$$typeof===u||e.$$typeof===o||e.$$typeof===l||e.$$typeof===c||e.$$typeof===b||void 0!==e.getModuleId)}(e);if(!N){var j="";(void 0===e||"object"==typeof e&&null!==e&&0===Object.keys(e).length)&&(j+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var w;j+=se(),null===e?w="null":W(e)?w="array":void 0!==e&&e.$$typeof===t?(w="<"+(v(e.type)||"Unknown")+" />",j=" Did you accidentally export a JSX literal instead of a component?"):w=typeof e,g("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",w,j)}var k=G(e,a,s,x,y);if(null==k)return k;if(N){var S=a.children;if(void 0!==S)if(h)if(W(S)){for(var C=0;C<S.length;C++)ie(S[C],e);Object.freeze&&Object.freeze(S)}else g("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else ie(S,e)}if(L.call(a,"key")){var T=v(e),R=Object.keys(a).filter(function(e){return"key"!==e}),_=R.length>0?"{key: someKey, "+R.join(": ..., ")+": ...}":"{key: someKey}";if(!le[T+_])g('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',_,T,R.length>0?"{"+R.join(": ..., ")+": ...}":"{}",T),le[T+_]=!0}return e===r?function(e){for(var a=Object.keys(e.props),t=0;t<a.length;t++){var s=a[t];if("children"!==s&&"key"!==s){ae(e),g("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",s),ae(null);break}}null!==e.ref&&(ae(e),g("Invalid attribute `ref` supplied to `React.Fragment`."),ae(null))}(k):oe(k),k}var de=function(e,a,t){return ce(e,a,t,!1)},me=function(e,a,t){return ce(e,a,t,!0)};Ca.Fragment=r,Ca.jsx=de,Ca.jsxs=me}()),Ca}var Ra=(Sa||(Sa=1,"production"===process.env.NODE_ENV?ja.exports=function(){if(Na)return wa;Na=1;var e=a,t=Symbol.for("react.element"),s=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,n=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function o(e,a,s){var o,l={},c=null,d=null;for(o in void 0!==s&&(c=""+s),void 0!==a.key&&(c=""+a.key),void 0!==a.ref&&(d=a.ref),a)r.call(a,o)&&!i.hasOwnProperty(o)&&(l[o]=a[o]);if(e&&e.defaultProps)for(o in a=e.defaultProps)void 0===l[o]&&(l[o]=a[o]);return{$$typeof:t,type:e,key:c,ref:d,props:l,_owner:n.current}}return wa.Fragment=s,wa.jsx=o,wa.jsxs=o,wa}():ja.exports=Ta()),ja.exports);function _a(...e){return p(f(e))}const Pa=e=>{if(null==e)return e;if("string"==typeof e)return e.trim();if(Array.isArray(e))return e.map(Pa);if("object"==typeof e&&e.constructor===Object){const a={};for(const[t,s]of Object.entries(e))a[t]=Pa(s);return a}return e},Ea=e=>{if(!e)return"";const a=h(e);if(!x(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"})}`},Aa=e=>null==e?"R$ 0,00":new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",minimumFractionDigits:2,maximumFractionDigits:2}).format(e),Ia=(e,a)=>{let t;return(...s)=>{clearTimeout(t),t=setTimeout(()=>e(...s),a)}},Da=u("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","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"}}),Oa=e.forwardRef(({className:e,variant:a,size:t,asChild:s=!1,...r},n)=>{const i=s?d:"button";return Ra.jsx(i,{className:_a(Da({variant:a,size:t,className:e})),ref:n,...r})});Oa.displayName="Button";const za=e.forwardRef(({className:e,type:a,...t},s)=>Ra.jsx("input",{type:a,className:_a("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",e),ref:s,...t}));za.displayName="Input";const Fa=u("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),$a=e.forwardRef(({className:e,...a},t)=>Ra.jsx(b.Root,{ref:t,className:_a(Fa(),e),...a}));$a.displayName=b.Root.displayName;const La=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("rounded-lg border bg-card text-card-foreground shadow-sm",e),...a}));La.displayName="Card";const Ma=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("flex flex-col space-y-1.5 p-6",e),...a}));Ma.displayName="CardHeader";const Va=e.forwardRef(({className:e,...a},t)=>Ra.jsx("h3",{ref:t,className:_a("text-2xl font-semibold leading-none tracking-tight",e),...a}));Va.displayName="CardTitle";const Ua=e.forwardRef(({className:e,...a},t)=>Ra.jsx("p",{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));Ua.displayName="CardDescription";const Ba=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("p-6 pt-0",e),...a}));Ba.displayName="CardContent";const Wa=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("flex items-center p-6 pt-0",e),...a}));Wa.displayName="CardFooter";const qa=y.Root,Ha=y.Trigger,Qa=y.Portal,Ja=y.Close,Ka=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Overlay,{ref:t,className:_a("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",e),...a}));Ka.displayName=y.Overlay.displayName;const Xa=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(Qa,{children:[Ra.jsx(Ka,{}),Ra.jsxs(y.Content,{ref:s,className:_a("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 bg-background 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 overflow-hidden",e),...t,children:[a,Ra.jsxs(y.Close,{className:"absolute right-4 top-4 z-10 rounded-sm text-white opacity-70 ring-offset-background transition-opacity hover:opacity-100 hover:text-white focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[Ra.jsx(v,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Xa.displayName=y.Content.displayName;const Ga=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col space-y-1.5 text-center sm:text-left bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-3 rounded-t-lg",e),...a});Ga.displayName="DialogHeader";const Ya=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});Ya.displayName="DialogFooter";const Za=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Title,{ref:t,className:_a("text-lg font-semibold leading-none tracking-tight",e),...a}));Za.displayName=y.Title.displayName;const et=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Description,{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));et.displayName=y.Description.displayName;const at=Ve,tt=e.createContext({}),st=({...e})=>Ra.jsx(tt.Provider,{value:{name:e.name},children:Ra.jsx(Ue,{...e})}),rt=()=>{const a=e.useContext(tt),t=e.useContext(nt),{getFieldState:s,formState:r}=Me(),n=s(a.name,r);if(!a)throw new Error("useFormField should be used within <FormField>");const{id:i}=t;return{id:i,name:a.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},nt=e.createContext({}),it=e.forwardRef(({className:a,...t},s)=>{const r=e.useId();return Ra.jsx(nt.Provider,{value:{id:r},children:Ra.jsx("div",{ref:s,className:_a("space-y-2",a),...t})})});it.displayName="FormItem";const ot=e.forwardRef(({className:e,...a},t)=>{const{error:s,formItemId:r}=rt();return Ra.jsx($a,{ref:t,className:_a(s&&"text-destructive",e),htmlFor:r,...a})});ot.displayName="FormLabel";const lt=e.forwardRef(({...e},a)=>{const{error:t,formItemId:s,formDescriptionId:r,formMessageId:n}=rt();return Ra.jsx(d,{ref:a,id:s,"aria-describedby":t?`${r} ${n}`:`${r}`,"aria-invalid":!!t,...e})});lt.displayName="FormControl";e.forwardRef(({className:e,...a},t)=>{const{formDescriptionId:s}=rt();return Ra.jsx("p",{ref:t,id:s,className:_a("text-sm text-muted-foreground",e),...a})}).displayName="FormDescription";const ct=e.forwardRef(({className:e,children:a,...t},s)=>{const{error:r,formMessageId:n}=rt(),i=r?String(r?.message):a;return i?Ra.jsx("p",{ref:s,id:n,className:_a("text-sm font-medium text-destructive",e),...t,children:i}):null});ct.displayName="FormMessage";const dt=Be.Root,mt=Be.Value,ut=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(Be.Trigger,{ref:s,className:_a("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",e),...t,children:[a,Ra.jsx(Be.Icon,{asChild:!0,children:Ra.jsx(N,{className:"h-4 w-4 opacity-50"})})]}));ut.displayName=Be.Trigger.displayName;const ft=e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.ScrollUpButton,{ref:t,className:_a("flex cursor-default items-center justify-center py-1",e),...a,children:Ra.jsx(j,{className:"h-4 w-4"})}));ft.displayName=Be.ScrollUpButton.displayName;const pt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.ScrollDownButton,{ref:t,className:_a("flex cursor-default items-center justify-center py-1",e),...a,children:Ra.jsx(N,{className:"h-4 w-4"})}));pt.displayName=Be.ScrollDownButton.displayName;const ht=e.forwardRef(({className:e,children:a,position:t="popper",...s},r)=>Ra.jsx(Be.Portal,{children:Ra.jsxs(Be.Content,{ref:r,className:_a("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"===t&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:t,...s,children:[Ra.jsx(ft,{}),Ra.jsx(Be.Viewport,{className:_a("p-1","popper"===t&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),Ra.jsx(pt,{})]})}));ht.displayName=Be.Content.displayName;e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.Label,{ref:t,className:_a("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...a})).displayName=Be.Label.displayName;const xt=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(Be.Item,{ref:s,className:_a("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",e),...t,children:[Ra.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:Ra.jsx(Be.ItemIndicator,{children:Ra.jsx(w,{className:"h-4 w-4"})})}),Ra.jsx(Be.ItemText,{children:a})]}));xt.displayName=Be.Item.displayName;e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.Separator,{ref:t,className:_a("-mx-1 my-1 h-px bg-muted",e),...a})).displayName=Be.Separator.displayName;const gt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(We.Root,{ref:t,className:_a("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",e),...a,children:Ra.jsx(We.Indicator,{className:_a("flex items-center justify-center text-current"),children:Ra.jsx(w,{className:"h-4 w-4"})})}));gt.displayName=We.Root.displayName;const bt=e.forwardRef(({className:e,...a},t)=>Ra.jsx("textarea",{className:_a("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",e),ref:t,...a}));bt.displayName="Textarea";const yt=u("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"}}),vt=e.forwardRef(({className:e,variant:a,...t},s)=>Ra.jsx("div",{ref:s,className:_a(yt({variant:a}),e),...t}));vt.displayName="Badge";const Nt={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"};function jt({size:e="md",className:a}){return Ra.jsx(k,{className:_a("animate-spin text-muted-foreground",Nt[e],a)})}function wt({isLoading:e,children:a,className:t,type:s="spinner",size:r="md"}){return e?"overlay"===s?Ra.jsxs("div",{className:_a("relative",t),children:[a,Ra.jsx("div",{className:"absolute inset-0 bg-background/50 backdrop-blur-sm flex items-center justify-center z-10",children:Ra.jsx(jt,{size:r})})]}):"skeleton"===s?Ra.jsx("div",{className:_a("animate-pulse",t),children:Ra.jsx("div",{className:"bg-muted rounded-md h-full w-full"})}):Ra.jsx("div",{className:_a("flex items-center justify-center py-8",t),children:Ra.jsx(jt,{size:r})}):Ra.jsx(Ra.Fragment,{children:a})}let kt=0;const St=new Map,Ct=e=>{if(St.has(e))return;const a=setTimeout(()=>{St.delete(e),Pt({type:"REMOVE_TOAST",toastId:e})},1e6);St.set(e,a)},Tt=(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?Ct(t):e.toasts.forEach(e=>{Ct(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)}}},Rt=[];let _t={toasts:[]};function Pt(e){_t=Tt(_t,e),Rt.forEach(e=>{e(_t)})}function Et({...e}){const a=(kt=(kt+1)%Number.MAX_SAFE_INTEGER,kt.toString()),t=()=>Pt({type:"DISMISS_TOAST",toastId:a});return Pt({type:"ADD_TOAST",toast:{...e,id:a,open:!0,onOpenChange:e=>{e||t()}}}),{id:a,dismiss:t,update:e=>Pt({type:"UPDATE_TOAST",toast:{...e,id:a}})}}function At(){const[a,t]=e.useState(_t);return e.useEffect(()=>(Rt.push(t),()=>{const e=Rt.indexOf(t);e>-1&&Rt.splice(e,1)}),[a]),{...a,toast:Et,dismiss:e=>Pt({type:"DISMISS_TOAST",toastId:e})}}const It=qe.Provider,Dt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Viewport,{ref:t,className:_a("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",e),...a}));Dt.displayName=qe.Viewport.displayName;const Ot=u("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"}}),zt=e.forwardRef(({className:e,variant:a,...t},s)=>Ra.jsx(qe.Root,{ref:s,className:_a(Ot({variant:a}),e),...t}));zt.displayName=qe.Root.displayName;const Ft=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Action,{ref:t,className:_a("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",e),...a}));Ft.displayName=qe.Action.displayName;const $t=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Close,{ref:t,className:_a("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",e),"toast-close":"",...a,children:Ra.jsx(v,{className:"h-4 w-4"})}));$t.displayName=qe.Close.displayName;const Lt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Title,{ref:t,className:_a("text-sm font-semibold",e),...a}));Lt.displayName=qe.Title.displayName;const Mt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Description,{ref:t,className:_a("text-sm opacity-90",e),...a}));function Vt(){const{toasts:e}=At();return Ra.jsxs(It,{children:[e.map(function({id:e,title:a,description:t,action:s,...r}){return Ra.jsxs(zt,{...r,children:[Ra.jsxs("div",{className:"grid gap-1",children:[a&&Ra.jsx(Lt,{children:a}),t&&Ra.jsx(Mt,{children:t})]}),s,Ra.jsx($t,{})]},e)}),Ra.jsx(Dt,{})]})}Mt.displayName=qe.Description.displayName;var Ut=Object.defineProperty;class Bt{static normalizeBase64Url(e){let a=e.replace(/-/g,"+").replace(/_/g,"/");const t=(4-a.length%4)%4;return a+="=".repeat(t),a}static parseJwtPayload(e){try{const r=e.split(".");if(3!==r.length)return null;const n=r[1];n.length,this.LARGE_PAYLOAD_THRESHOLD;try{const e=this.normalizeBase64Url(n),a=atob(e),t=new Uint8Array(a.length);for(let r=0;r<a.length;r++)t[r]=a.charCodeAt(r);const s=new TextDecoder("utf-8").decode(t);return JSON.parse(s)}catch(a){try{const e=this.normalizeBase64Url(n),a=decodeURIComponent(atob(e).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""));return JSON.parse(a)}catch(t){try{const e=this.normalizeBase64Url(n),a=atob(e);return JSON.parse(a)}catch(s){throw s}}}}catch(r){return null}}static validateTokens(e,a){const t=[],s=[];try{a.split(".")[1],e.split(".")[1];const r=this.parseJwtPayload(a),n=this.parseJwtPayload(e);if(!r){const e="ID token decode falhou - possível problema com base64url encoding";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:s}}let i=!0;if(!n){const e="Access token decode falhou - será tentado novamente nas chamadas de API";t.push(e),i=!1}const o=Math.floor(Date.now()/1e3);if(n?.exp&&n.exp<o){const e="Access token expirado - pode precisar de refresh";t.push(e),i=!1}if(r.exp&&r.exp<o){const e="ID token expirado - autenticação inválida";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:i,warnings:t,errors:s}}return{isValid:!0,idTokenValid:!0,accessTokenValid:i,warnings:t,errors:s}}catch(r){const e=`Erro na validação de tokens: ${r}`;return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:s}}}static isTokenExpired(e){const a=this.parseJwtPayload(e);return!a||!a.exp||1e3*a.exp<Date.now()}static extractTokenData(e){return this.parseJwtPayload(e)}}((e,a,t)=>{a in e?Ut(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t})(Bt,"LARGE_PAYLOAD_THRESHOLD"+"",1e3);const Wt="qualiex_access_token",qt="qualiex_id_token",Ht="supabase_token",Qt="oauth_state",Jt="oauth_nonce",Kt="selected_alias",Xt="manual_logout",Gt={setAccessToken:e=>localStorage.setItem(Wt,e),getAccessToken:()=>localStorage.getItem(Wt),setIdToken:e=>localStorage.setItem(qt,e),getIdToken:()=>localStorage.getItem(qt),getSupabaseToken:()=>localStorage.getItem(Ht),setOAuthState:e=>sessionStorage.setItem(Qt,e),getOAuthState:()=>sessionStorage.getItem(Qt),clearOAuthState:()=>sessionStorage.removeItem(Qt),setOAuthNonce:e=>sessionStorage.setItem(Jt,e),getOAuthNonce:()=>sessionStorage.getItem(Jt),clearOAuthNonce:()=>sessionStorage.removeItem(Jt),setSelectedAlias:e=>localStorage.setItem(Kt,e),getSelectedAlias:()=>localStorage.getItem(Kt),clearSelectedAlias:()=>localStorage.removeItem(Kt),generateOAuthState:()=>"Lw==",generateOAuthNonce:()=>{const e=new Uint8Array(32);return crypto.getRandomValues(e),btoa(String.fromCharCode(...e)).replace(/[+/=]/g,"")},hasAllTokens:()=>!(!Gt.getAccessToken()||!Gt.getIdToken()),setSupabaseToken:e=>{localStorage.setItem(Ht,e),Gt._clearValidationCache()},areAllTokensValid:()=>{const e=Gt.getAccessToken(),a=Gt.getIdToken();if(!e||!a)return!1;try{const t=Bt.validateTokens(e,a);return!!t.idTokenValid&&(t.accessTokenValid,t.idTokenValid)}catch(t){return!1}},clearExpiredTokens:()=>{let e=!1;const a=Gt.getAccessToken(),t=Gt.getIdToken(),s=Gt.getSupabaseToken();return a&&Gt.isTokenExpired(a)&&(localStorage.removeItem(Wt),e=!0),t&&Gt.isTokenExpired(t)&&(localStorage.removeItem(qt),e=!0),s&&Gt.isTokenExpired(s)&&(localStorage.removeItem(Ht),e=!0),e},clearAll:()=>{localStorage.removeItem(Wt),localStorage.removeItem(qt),localStorage.removeItem(Ht),localStorage.removeItem(Kt),localStorage.removeItem(Xt),sessionStorage.removeItem(Qt),sessionStorage.removeItem(Jt)},setManualLogout:()=>localStorage.setItem(Xt,"true"),isManualLogout:()=>"true"===localStorage.getItem(Xt),clearManualLogout:()=>localStorage.removeItem(Xt),isTokenExpired:e=>{try{return Bt.isTokenExpired(e)}catch{return!0}},_validationCache:{isValid:!1,timestamp:0,cacheValidityMs:3e5},_clearValidationCache:()=>{Gt._validationCache.isValid=!1,Gt._validationCache.timestamp=0},isSupabaseTokenValid:()=>{const e=Gt.getSupabaseToken();if(!e)return!1;if(Gt.isTokenExpired(e))return Gt._clearValidationCache(),Gt._handleExpiredToken(),!1;const a=Date.now();return a-Gt._validationCache.timestamp<Gt._validationCache.cacheValidityMs?Gt._validationCache.isValid:(Gt._validationCache.isValid=!0,Gt._validationCache.timestamp=a,!0)},getValidSupabaseToken:()=>Gt.isSupabaseTokenValid()?Gt.getSupabaseToken():null,_handleExpiredToken:()=>{Gt.clearAll(),"undefined"!=typeof window&&(window.location.href="/")},extractTokenData:()=>{if(!Gt.isSupabaseTokenValid())return null;const e=Gt.getSupabaseToken();if(!e)return null;try{const a=Bt.parseJwtPayload(e);if(!a)return null;const t=a.alias||a.default||a.user_alias;let s=a.company_id;if(!s&&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){s=e[7];break}}}return{alias:t,companyId:s,payload:a}}catch(a){return Gt._handleExpiredToken(),null}},getCompanyId:e=>{const a=Gt.extractTokenData();if(!a)return null;if(!e)return a.companyId;const t=Gt.getIdToken();if(!t)return null;try{const a=Bt.parseJwtPayload(t);if(!a)return null;for(const t in a)if(t.startsWith("co")&&/^co\d+$/.test(t)){const s=a[t];if(s&&"string"==typeof s){const a=s.split(";");if(a.length>7&&a[0]===e)return a[7]}}}catch{return null}return null},getCurrentCompanyId:()=>{const e=Gt.extractTokenData();return e?.companyId||null},getAllCompaniesData:()=>{const e=Gt.getIdToken();if(!e)return[];try{const a=Bt.parseJwtPayload(e);if(!a)return[];const t=[];for(const e in a)if(e.startsWith("co")&&/^co\d+$/.test(e)){const s=a[e];if(s&&"string"==typeof s){const e=s.split(";");e.length>=4&&t.push({id:e.length>7?e[7]:"",alias:e[0].trim(),name:e[3].trim(),payload:a})}}return t}catch{return[]}}};var Yt=Object.defineProperty,Zt=(e,a,t)=>((e,a,t)=>a in e?Yt(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const es=new class{constructor(){Zt(this,"errors",[]),Zt(this,"toastCount",0),Zt(this,"lastToastTime",0)}handleError(e,a=!0){const t="string"==typeof e?e:e.message;this.errors.push({id:Date.now().toString(),message:t,timestamp:Date.now(),count:1}),a&&this.shouldShowToast()&&Et({title:"Erro",description:t,variant:"destructive"})}success(e,a){Et({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=[]}},as=()=>{Gt.clearManualLogout()},ts={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"}},ss={pagination:{defaultPageSize:25,pageSizeOptions:[10,25,50,100]},sorting:{defaultField:"updated_at",defaultDirection:"desc"}},rs={debounceDelay:500},ns=()=>{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},is={crud:e=>[e],list:(e,a)=>[e,"list",a],detail:(e,a)=>[e,"detail",a]};let os={enableUserEnrichment:!1,enableUsersApi:!1};const ls=()=>os,cs=e=>{os={...os,...e}},ds={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}`}};class ms{static async initialize(){try{if(!Gt.hasAllTokens()||!Gt.areAllTokensValid())return Gt.clearExpiredTokens(),{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null};const e=Gt.getAccessToken(),a=Gt.getIdToken();as();const t=this.extractUserFromIdToken(a),s=this.extractCompaniesFromIdToken(a),r=this.extractAliasFromAccessToken(e),n=Gt.getSelectedAlias(),i=n&&s.some(e=>e.alias===n)?n:r||s[0]?.alias||null;if(!Gt.isSupabaseTokenValid()&&i){const a=await us.generateToken(e,i);a&&Gt.setSupabaseToken(a)}let o=null;if(i){const e=Gt.getCompanyId(i),a=s.find(e=>e.alias===i);a&&(o={id:e||a.id,name:a.name,alias:a.alias})}return{isAuthenticated:!0,isLoading:!1,user:t,alias:i,companies:s,selectedUnit:o,userId:t?.id||null,userAlias:t?.id||null}}catch(e){return{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null}}}static async loginDev(){try{const{getSupabaseClient:e}=await Promise.resolve().then(function(){return vs}),a=e(),{data:t,error:s}=await a.functions.invoke("dev-tokens",{body:{environment:"development"}});if(s)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=Gt.generateOAuthState();Gt.setOAuthState(e);const a=Gt.generateOAuthNonce();Gt.setOAuthNonce(a);const t=`${window.location.origin}/callback`,s=new URL(ts.oauth.authUrl);s.searchParams.set("client_id",ts.oauth.clientId),s.searchParams.set("response_type",ts.oauth.responseType),s.searchParams.set("scope",ts.oauth.scope),s.searchParams.set("redirect_uri",t),s.searchParams.set("state",e),s.searchParams.set("nonce",a),s.searchParams.set("response_mode","fragment"),ns(),window.location.href=s.toString()}static async processCallback(){try{if(Gt.hasAllTokens()){if(!Gt.getValidSupabaseToken()){const e=Gt.getAccessToken(),a=this.extractAliasFromAccessToken(e),t=this.extractCompaniesFromIdToken(Gt.getIdToken())[0]?.alias,s=a||t;if(s){const a=await us.generateToken(e,s);a&&Gt.setSupabaseToken(a)}}return!0}const e=new URLSearchParams(window.location.hash.startsWith("#")?window.location.hash.substring(1):window.location.hash),a=new URLSearchParams(window.location.search),t=t=>e.get(t)||a.get(t),s=t("access_token"),r=t("id_token"),n=t("error");if(n)throw new Error(`Erro OAuth: ${n}`);if(!s||!r)throw new Error("Tokens não encontrados na URL de callback");Gt.setAccessToken(s),Gt.setIdToken(r),as();const i=this.extractAliasFromAccessToken(s);if(i){const e=await us.generateToken(s,i);if(!e)throw new Error("Falha ao gerar token Supabase");Gt.setSupabaseToken(e)}else{const e=this.extractCompaniesFromIdToken(r);if(0===e.length)throw new Error("Nenhuma empresa encontrada nos tokens");const a=e[0].alias,t=await us.generateToken(s,a);if(!t)throw new Error("Falha ao gerar token Supabase");Gt.setSupabaseToken(t)}return Gt.clearOAuthState(),Gt.clearOAuthNonce(),!0}catch(e){throw e}}static logout(){Gt.setManualLogout(),Gt.clearAll(),window.location.href="/login"}static decodeToken(e){return Bt.parseJwtPayload(e)}static extractUserFromIdToken(e){const a=this.decodeToken(e);return a?{id:a.subNewId,email:a.email,name:a.name,identifier:a.identifier}:null}static extractCompaniesFromIdToken(e){const a=this.decodeToken(e);if(!a)return[];const t=[];return Object.keys(a).forEach(e=>{if(e.match(/^co(\d+)$/)&&"string"==typeof a[e]){const s=a[e].split(";");if(s.length>=4)t.push({id:s.length>7?s[7].trim():"",alias:s[0].trim(),name:s[3].trim()});else{const[s,r]=a[e].split("|");s&&r&&t.push({id:"",alias:s.trim(),name:r.trim()})}}}),t}static extractAliasFromAccessToken(e){const a=this.decodeToken(e);return a?.default||null}}class us{static async generateToken(e,a){try{const t=Gt.getSupabaseToken();if(t&&Gt.isSupabaseTokenValid())return t;const s=ys(),{data:r,error:n}=await s.functions.invoke("validate-token",{body:{access_token:e,alias:a}});return n&&(n.message?.includes("401")||n.message?.includes("Unauthorized"))?(ms.logout(),null):r?.access_token&&r.access_token?(Gt.setSupabaseToken(r.access_token),r.access_token):null}catch(t){return t instanceof Error&&(t.message.includes("401")||t.message.includes("Unauthorized"))&&ms.logout(),null}}}var fs=Object.defineProperty,ps=(e,a,t)=>((e,a,t)=>a in e?fs(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const hs=import.meta.env.VITE_SUPABASE_URL,xs=import.meta.env.VITE_SUPABASE_PUBLISHABLE_KEY,gs=class e{constructor(){ps(this,"client"),ps(this,"currentToken",null),ps(this,"instanceCount",0),ps(this,"isRegenerating",!1),this.instanceCount++,this.client=this.createClientWithToken(null)}createClientWithToken(e){const a={apikey:xs};return e&&this.isTokenValid(e)&&(a.Authorization=`Bearer ${e}`),He(hs,xs,{auth:{persistSession:!1,autoRefreshToken:!1,storage:void 0},global:{headers:a}})}static getInstance(){return e.instance||(e.instance=new e),e.instance}getClient(){Gt.getValidSupabaseToken()||!Gt.areAllTokensValid()||this.isRegenerating||this.attemptTokenRegeneration();const e=Gt.getValidSupabaseToken();return e!==this.currentToken&&(this.client=this.createClientWithToken(e),this.currentToken=e),this.client}async attemptTokenRegeneration(){if(!this.isRegenerating){this.isRegenerating=!0;try{const e=Gt.getAccessToken(),a=Gt.getSelectedAlias();if(!e||!a)return;const t=await us.generateToken(e,a);t&&Gt.setSupabaseToken(t)}catch(e){}finally{this.isRegenerating=!1}}}isTokenValid(e){try{const a=JSON.parse(atob(e.split(".")[1])),t=Math.floor(Date.now()/1e3);return a.exp>t}catch(a){return es.handleError(a instanceof Error?a:"❌ Supabase - Error validating token",!1),!1}}};ps(gs,"instance");let bs=gs;const ys=()=>bs.getInstance().getClient();var vs=Object.freeze({__proto__:null,getSupabaseClient:ys}),Ns=Object.defineProperty,js=(e,a,t)=>((e,a,t)=>a in e?Ns(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);const ws=new class{constructor(){js(this,"baseUrl",import.meta.env.VITE_QUALIEX_API_URL)}async makeApiCall(e,a,t){const s=Gt.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 r=new URL(e,this.baseUrl);Object.entries(a).forEach(([e,a])=>{r.searchParams.append(e,a)});const n=await fetch(r.toString(),{method:"GET",headers:{Authorization:`Bearer ${s}`,"Content-Type":"application/json",Accept:"application/json","un-alias":t}});if(!n.ok)throw new Error(`API call failed: ${n.status} ${n.statusText}`);return await n.json()}mapToQualiexUser(e){return{userId:e.userId||String(e.ID),userName:e.userName||"Nome não disponível",userEmail:e.userEmail||"Email não disponível"}}async fetchUsers(e,a){try{const t=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:a,search:"",filterStatus:"active"},e);let s=t;if(t.data)s=t.data;else{if(!Array.isArray(t))return es.handleError("[QualiexApi] Unexpected response format",!1),[];s=t}if(!Array.isArray(s))return es.handleError("[QualiexApi] Response is not an array",!1),[];return s.map(this.mapToQualiexUser)}catch(t){return es.handleError(t instanceof Error?t:"[QualiexApi] Error fetching users"),[]}}async fetchUserById(e,a,t){try{return(await this.fetchUsers(a,t)).find(a=>a.userId===e)||null}catch(s){return es.handleError(s instanceof Error?s:"[QualiexApi] Error fetching user by ID"),null}}async getUsers(e){const a=Gt.extractTokenData();return a&&a.companyId?this.fetchUsers(e,a.companyId):(es.handleError("[QualiexApi] CompanyId não encontrado no token Supabase",!1),[])}};class ks{static async extractTokenData(){const e=Gt.extractTokenData();return e||(es.handleError("[QualiexEnrichment] ❌ Token Supabase não encontrado",!1),null)}static async enrichWithResponsibleNames(e,a){if(!e||0===e.length)return es.handleError(`[QualiexEnrichment.${a.entityName}] Nenhuma entidade encontrada`,!1),e;try{const t=await this.extractTokenData();if(!t)return e.map(e=>({...e,responsible_name:e.id_user?"Token não encontrado":null}));const{alias:s,companyId:r}=t;if(!s||!r)return es.handleError(`[QualiexEnrichment.${a.entityName}] DADOS OBRIGATÓRIOS FALTANDO - alias: ${!!s}, companyId: ${!!r}`,!1),e.map(e=>({...e,responsible_name:e.id_user?`Configuração incompleta (alias: ${!!s}, companyId: ${!!r})`:null}));const n=await ws.getUsers(s),i=e.map(e=>{if(e.id_user){const a=n.find(a=>a.userId===e.id_user);return{...e,responsible_name:a?.userName||`ID não encontrado: ${e.id_user}`}}return{...e,responsible_name:null}});i.filter(e=>e.responsible_name&&!e.responsible_name.includes("ID não encontrado")&&!e.responsible_name.includes("Erro:")&&!e.responsible_name.includes("Token não encontrado")&&!e.responsible_name.includes("Configuração incompleta")).length;return i}catch(t){return es.handleError(t instanceof Error?t:`[QualiexEnrichment.${a.entityName}] 💥 ERRO CRÍTICO`),e.map(e=>({...e,responsible_name:e.id_user?`Erro: ${t.message}`:null}))}}}const Ss=["responsible_name"];function Cs(e,a,t){const s="string"==typeof e?{tableName:e,searchFields:a||[],schemaName:t||"central"}:{searchFields:e.searchFields||[],schemaName:e.schemaName||"central",...e},{tableName:r,searchFields:n,selectFields:i,schemaName:o,entityName:l,enableQualiexEnrichment:c=!1}=s,d=()=>{if(!Gt.getValidSupabaseToken())throw new Error("Token de autenticação expirado. Faça login novamente.");return ys().schema(o).from(r)};return{async getAll(e={}){const{search:a="",sortField:t="updated_at",sortDirection:s="desc",page:o=1,limit:m=25,...u}=e;let f=d().select(i||"*",{count:"exact"});f=f.eq("is_removed",!1),Object.entries(u).forEach(([e,a])=>{null!=a&&""!==a&&(f=Array.isArray(a)?f.in(e,a):"object"==typeof a&&a&&"operator"in a&&"not_null"===a.operator?f.not(e,"is",null):f.eq(e,a))}),f=((e,a)=>{if(a&&n.length>0){const t=n.map(e=>`${e}.ilike.%${a}%`).join(",");return e.or(t)}return e})(f,a),f=f.order(t,{ascending:"asc"===s}),f=((e,a,t)=>{const s=(a-1)*t,r=s+t-1;return e.range(s,r)})(f,o,m);const{data:p,error:h,count:x}=await f;if(h)throw new Error(`Error fetching ${r}: ${h.message}`);let g=((e,a,t,s)=>{const r=Math.ceil((a||0)/s);return{data:e,currentPage:t,totalPages:r,totalItems:a||0,itemsPerPage:s,hasNextPage:t<r,hasPreviousPage:t>1}})(p||[],x,o,m);const b=ls();if(c&&b.enableUserEnrichment&&l&&g.data.length>0){if(g.data.some(e=>e.id_user)){if(t&&(y=t,Ss.includes(y))){const a={...e,page:1,limit:500,sortField:void 0,sortDirection:void 0},r=await this.getAll(a);if(!r?.data?.length)return r;const n=((e,a,t)=>[...e].sort((e,s)=>{const r=e[a]||"",n=s[a]||"",i=r.localeCompare(n,"pt-BR",{sensitivity:"base"});return"asc"===t?i:-i}))(await ks.enrichWithResponsibleNames(r.data,{entityName:l}),t,s),i=((e,a=1,t=25)=>{const s=(a-1)*t,r=s+t,n=e.slice(s,r);return{data:n,pagination:{currentPage:a,totalPages:Math.ceil(e.length/t),totalItems:n.length,totalCount:e.length,itemsPerPage:t,hasNextPage:r<e.length,hasPreviousPage:a>1}}})(n,o,m);return{data:i.data,currentPage:i.pagination.currentPage,totalPages:i.pagination.totalPages,totalItems:i.pagination.totalItems,itemsPerPage:i.pagination.itemsPerPage,hasNextPage:i.pagination.hasNextPage,hasPreviousPage:i.pagination.hasPreviousPage}}const a=await ks.enrichWithResponsibleNames(g.data,{entityName:l});g={...g,data:a}}}var y;return g},async getById(e){const{data:a,error:t}=await d().select(i||"*").eq("id",e).maybeSingle();if(t)throw new Error(`Error fetching ${r}: ${t.message}`);return a},async create(e){const a=Pa(e),t=Object.entries(a).reduce((e,[a,t])=>(void 0!==t&&(e[a]=t),e),{}),{data:s,error:n}=await d().insert(t).select().single();if(n)throw new Error(`Error creating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from create ${r} operation`);return s},async update(e,a){const t={...Pa(a),updated_at:(new Date).toISOString()},{data:s,error:n}=await d().update(t).eq("id",e).select().single();if(n)throw new Error(`Error updating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from update ${r} operation`);return s},async delete(e){const a={is_removed:!0,updated_at:(new Date).toISOString()},{error:t}=await d().update(a).eq("id",e);if(t)throw new Error(`Error soft deleting ${r}: ${t.message}`)}}}function Ts({queryKey:e,service:a,entityName:r,searchFields:n,additionalFilters:i={},onSuccess:o}){const[l,c]=Ge(),d=Qe(),m=l.get("search")||"",u=l.get("sortField")||ss.sorting.defaultField,f=l.get("sortDirection")||ss.sorting.defaultDirection,p=parseInt(l.get("page")||"1"),h=parseInt(l.get("limit")||String(ss.pagination.defaultPageSize)),x=m,g=t(()=>({search:x,sortField:u,sortDirection:f,page:p,limit:h,...i}),[x,u,f,p,h,i]),b=s(()=>a.getAll(g),[a,g]),y=Je({queryKey:[e,g],queryFn:b}),v=Ke({mutationFn:a.create,onSuccess:()=>{d.invalidateQueries({queryKey:[e]}),aa.success(ds.success.created(r)),o?.()},onError:e=>{aa.error(`${ds.error.create(r)}: ${e.message}`)}}),N=Ke({mutationFn:({id:e,data:t})=>a.update(e,t),onSuccess:()=>{d.invalidateQueries({queryKey:[e]}),aa.success(ds.success.updated(r)),o?.()},onError:e=>{aa.error(`${ds.error.update(r)}: ${e.message}`)}}),j=Ke({mutationFn:a.delete,onSuccess:()=>{d.invalidateQueries({queryKey:[e]}),aa.success(ds.success.deleted(r))},onError:e=>{aa.error(`${ds.error.delete(r)}: ${e.message}`)}}),w=s(e=>{const a={...Object.fromEntries(l)};Object.entries(e).forEach(([e,t])=>{""===t||0===t?delete a[e]:a[e]=String(t)}),c(a)},[l,c]),k=s(e=>{w({search:e,page:1})},[w]),S=s(e=>{w({sortField:e,sortDirection:u===e&&"asc"===f?"desc":"asc",page:1})},[u,f,w]),C=s(e=>{w({page:e})},[w]),T=s(e=>{w({limit:e,page:1})},[w]),R=s(()=>{c({})},[c]);return{entities:y.data?.data||[],pagination:{currentPage:y.data?.currentPage||1,totalPages:y.data?.totalPages||1,totalItems:y.data?.totalItems||0,itemsPerPage:y.data?.itemsPerPage||ss.pagination.defaultPageSize,hasNextPage:y.data?.hasNextPage||!1,hasPreviousPage:y.data?.hasPreviousPage||!1},isLoading:y.isLoading,isCreating:v.isPending,isUpdating:N.isPending,isDeleting:j.isPending,error:y.error,searchTerm:m,sortField:u,sortDirection:f,currentPage:p,itemsPerPage:h,createEntity:v.mutate,updateEntity:(e,a)=>N.mutate({id:e,data:a}),deleteEntity:j.mutate,handleSearch:k,handleSort:S,handlePageChange:C,handleItemsPerPageChange:T,clearFilters:R,refetch:y.refetch}}function Rs(e){const a=Cs({tableName:e.tableName,searchFields:e.searchFields||["title"],schemaName:e.schemaName||"central",entityName:e.entityName,enableQualiexEnrichment:e.enableQualiexEnrichment||!0});return{service:a,useCrudHook:t=>Ts({queryKey:e.tableName,service:{...a,getAll:async(e={})=>await a.getAll({...e})},entityName:e.entityName,onSuccess:t})}}const _s=sa.Root,Ps=sa.Trigger,Es=sa.Portal,As=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Overlay,{className:_a("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",e),...a,ref:t}));As.displayName=sa.Overlay.displayName;const Is=e.forwardRef(({className:e,...a},t)=>Ra.jsxs(Es,{children:[Ra.jsx(As,{}),Ra.jsx(sa.Content,{ref:t,className:_a("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",e),...a})]}));Is.displayName=sa.Content.displayName;const Ds=({className:e,...a})=>Ra.jsx("div",{className:_a("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",e),...a});Ds.displayName="AlertDialogHeader";const Os=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});Os.displayName="AlertDialogFooter";const zs=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Title,{ref:t,className:_a("text-lg font-semibold",e),...a}));zs.displayName=sa.Title.displayName;const Fs=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Description,{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));Fs.displayName=sa.Description.displayName;const $s=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Action,{ref:t,className:_a(Da(),e),...a}));$s.displayName=sa.Action.displayName;const Ls=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Cancel,{ref:t,className:_a(Da({variant:"outline"}),"mt-2 sm:mt-0",e),...a}));Ls.displayName=sa.Cancel.displayName;const Ms=({open:e,onOpenChange:a,item:t,onConfirm:s,entityName:i="item",isDeleting:o=!1})=>{const[l,c]=r("");n(()=>{e||c("")},[e]);const d=()=>{c(""),a(!1)},m=l===t?.title;return t?Ra.jsx(_s,{open:e,onOpenChange:d,children:Ra.jsxs(Is,{className:"sm:max-w-[500px]",children:[Ra.jsx(Ds,{children:Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsx("div",{className:"flex-shrink-0 w-8 h-8 rounded-full bg-destructive/10 flex items-center justify-center",children:Ra.jsx("span",{className:"text-destructive font-semibold text-sm",children:"!"})}),Ra.jsx("div",{className:"flex-1",children:Ra.jsx(zs,{className:"text-lg font-semibold",children:"Confirmar Exclusão"})})]})}),Ra.jsx(Fs,{asChild:!0,children:Ra.jsxs("div",{className:"space-y-4",children:[Ra.jsxs("div",{className:"text-sm text-muted-foreground",children:[Ra.jsxs("p",{className:"mb-2",children:["Você está prestes a excluir permanentemente o ",i,":"]}),Ra.jsx("div",{className:"p-3 bg-muted rounded-md border-l-4 border-l-destructive",children:Ra.jsx("p",{className:"font-medium text-foreground",children:t.title})})]}),Ra.jsx("div",{className:"bg-orange-50 border border-orange-200 rounded-md p-3",children:Ra.jsxs("div",{className:"flex items-start space-x-2",children:[Ra.jsx("div",{className:"flex-shrink-0 w-5 h-5 rounded-full bg-orange-500 flex items-center justify-center mt-0.5",children:Ra.jsx("span",{className:"text-white font-bold text-xs",children:"!"})}),Ra.jsxs("div",{className:"text-sm text-orange-800",children:[Ra.jsx("p",{className:"font-medium mb-1",children:"Atenção!"}),Ra.jsxs("p",{children:["Esta ação não pode ser desfeita. O ",i," será removido permanentemente do sistema."]})]})]})}),Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsxs($a,{htmlFor:"confirmation",className:"text-sm font-medium",children:["Para confirmar, digite ",Ra.jsxs("strong",{children:['"',t.title,'"']})," abaixo:"]}),Ra.jsx(za,{id:"confirmation",type:"text",value:l,onChange:e=>c(e.target.value),placeholder:`Digite: ${t.title}`,className:"w-full"})]})]})}),Ra.jsxs(Os,{children:[Ra.jsx(Ls,{onClick:d,children:"Cancelar"}),Ra.jsx($s,{onClick:()=>{t&&l===t.title&&(s(t),c(""),a(!1))},disabled:!m||o,className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",children:o?"Removendo...":`Excluir ${i}`})]})]})}):null},Vs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("table",{ref:t,className:_a("w-full caption-bottom text-sm",e),...a}));Vs.displayName="Table";const Us=e.forwardRef(({className:e,...a},t)=>Ra.jsx("thead",{ref:t,className:_a("[&_tr]:border-b sticky top-0 z-[1] bg-background",e),...a}));Us.displayName="TableHeader";const Bs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("tbody",{ref:t,className:_a("[&_tr:last-child]:border-0",e),...a}));Bs.displayName="TableBody";const Ws=e.forwardRef(({className:e,...a},t)=>Ra.jsx("tfoot",{ref:t,className:_a("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...a}));Ws.displayName="TableFooter";const qs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("tr",{ref:t,className:_a("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...a}));qs.displayName="TableRow";const Hs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("th",{ref:t,className:_a("h-12 px-4 py-3 text-left align-middle font-medium text-muted-foreground bg-background border-b [&:has([role=checkbox])]:pr-0",e),...a}));Hs.displayName="TableHead";const Qs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("td",{ref:t,className:_a("px-4 py-3 align-middle [&:has([role=checkbox])]:pr-0",e),...a}));Qs.displayName="TableCell";const Js=e.forwardRef(({className:e,...a},t)=>Ra.jsx("caption",{ref:t,className:_a("mt-4 text-sm text-muted-foreground",e),...a}));function Ks({className:e,...a}){return Ra.jsx("div",{className:_a("animate-pulse rounded-md bg-muted",e),...a})}function Xs({rows:e=5,columns:a=4}){return Ra.jsx("div",{className:"w-full",children:Ra.jsxs("div",{className:"rounded-md border",children:[Ra.jsx("div",{className:"border-b bg-muted/50 px-4 py-3",children:Ra.jsx("div",{className:"flex space-x-4",children:Array.from({length:a}).map((e,a)=>Ra.jsx(Ks,{className:"h-4 w-24"},a))})}),Ra.jsx("div",{children:Array.from({length:e}).map((e,t)=>Ra.jsx("div",{className:"border-b px-4 py-3 last:border-0",children:Ra.jsx("div",{className:"flex space-x-4",children:Array.from({length:a}).map((e,a)=>Ra.jsx(Ks,{className:"h-4 w-20"},a))})},t))})]})})}function Gs({count:e=3}){return Ra.jsx("div",{className:"space-y-4",children:Array.from({length:e}).map((e,a)=>Ra.jsxs(La,{children:[Ra.jsxs(Ma,{children:[Ra.jsx(Ks,{className:"h-4 w-3/4"}),Ra.jsx(Ks,{className:"h-3 w-1/2"})]}),Ra.jsx(Ba,{children:Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsx(Ks,{className:"h-3 w-full"}),Ra.jsx(Ks,{className:"h-3 w-2/3"})]})})]},a))})}function Ys({fields:e=4}){return Ra.jsxs("div",{className:"space-y-4",children:[Array.from({length:e}).map((e,a)=>Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsx(Ks,{className:"h-4 w-24"}),Ra.jsx(Ks,{className:"h-10 w-full"})]},a)),Ra.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[Ra.jsx(Ks,{className:"h-10 w-20"}),Ra.jsx(Ks,{className:"h-10 w-20"})]})]})}function Zs(){return Ra.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[Ra.jsxs("div",{className:"flex items-center space-x-3",children:[Ra.jsx(Ks,{className:"h-8 w-8 rounded-full"}),Ra.jsx(Ks,{className:"h-6 w-32"})]}),Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsx(Ks,{className:"h-8 w-8"}),Ra.jsx(Ks,{className:"h-8 w-24"})]})]})}function er(){return Ra.jsx("div",{className:"w-64 border-r bg-muted/10",children:Ra.jsxs("div",{className:"p-4",children:[Ra.jsx(Ks,{className:"h-8 w-32 mb-6"}),Ra.jsx("div",{className:"space-y-2",children:Array.from({length:6}).map((e,a)=>Ra.jsxs("div",{className:"flex items-center space-x-3 p-2",children:[Ra.jsx(Ks,{className:"h-4 w-4"}),Ra.jsx(Ks,{className:"h-4 w-20"})]},a))})]})})}Js.displayName="TableCaption";const ar={default:T,search:C,error:S};function tr({icon:e,title:a,description:t,action:s,className:r,variant:n="default"}){const i=e?()=>e:ar[n];return Ra.jsxs("div",{className:_a("flex flex-col items-center justify-center py-12 px-4 text-center",r),children:[Ra.jsx("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted mb-4",children:Ra.jsx(i,{className:"h-8 w-8 text-muted-foreground"})}),Ra.jsx("h3",{className:"text-lg font-semibold mb-2",children:a}),t&&Ra.jsx("p",{className:"text-muted-foreground mb-6 max-w-sm",children:t}),s&&Ra.jsx(Oa,{onClick:s.onClick,variant:"outline",children:s.label})]})}const sr=ra.Root,rr=ra.Trigger,nr=ra.Group,ir=ra.Portal,or=ra.Sub,lr=ra.RadioGroup,cr=e.forwardRef(({className:e,inset:a,children:t,...s},r)=>Ra.jsxs(ra.SubTrigger,{ref:r,className:_a("flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",a&&"pl-8",e),...s,children:[t,Ra.jsx(R,{className:"ml-auto h-4 w-4"})]}));cr.displayName=ra.SubTrigger.displayName;const dr=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ra.SubContent,{ref:t,className:_a("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",e),...a}));dr.displayName=ra.SubContent.displayName;const mr=e.forwardRef(({className:e,sideOffset:a=4,...t},s)=>Ra.jsx(ra.Portal,{children:Ra.jsx(ra.Content,{ref:s,sideOffset:a,className:_a("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",e),...t})}));mr.displayName=ra.Content.displayName;const ur=e.forwardRef(({className:e,inset:a,...t},s)=>Ra.jsx(ra.Item,{ref:s,className:_a("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",e),...t}));ur.displayName=ra.Item.displayName;const fr=e.forwardRef(({className:e,children:a,checked:t,...s},r)=>Ra.jsxs(ra.CheckboxItem,{ref:r,className:_a("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",e),checked:t,...s,children:[Ra.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:Ra.jsx(ra.ItemIndicator,{children:Ra.jsx(w,{className:"h-4 w-4"})})}),a]}));fr.displayName=ra.CheckboxItem.displayName;const pr=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(ra.RadioItem,{ref:s,className:_a("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",e),...t,children:[Ra.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:Ra.jsx(ra.ItemIndicator,{children:Ra.jsx(_,{className:"h-2 w-2 fill-current"})})}),a]}));pr.displayName=ra.RadioItem.displayName;const hr=e.forwardRef(({className:e,inset:a,...t},s)=>Ra.jsx(ra.Label,{ref:s,className:_a("px-2 py-1.5 text-sm font-semibold",a&&"pl-8",e),...t}));hr.displayName=ra.Label.displayName;const xr=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ra.Separator,{ref:t,className:_a("-mx-1 my-1 h-px bg-muted",e),...a}));xr.displayName=ra.Separator.displayName;const gr=({className:e,...a})=>Ra.jsx("span",{className:_a("ml-auto text-xs tracking-widest opacity-60",e),...a});gr.displayName="DropdownMenuShortcut";const br=({onEdit:e,onDelete:a,onToggleStatus:t,isActive:s=!0,canDelete:r=!0,renderAs:n})=>{const i=[];if(e){const a={icon:P,label:"Editar",onClick:e};i.push(a)}if(t){const e={icon:s?E:A,label:s?"Inativar":"Ativar",onClick:t};i.push(e)}if(r&&a){const e={icon:I,label:"Remover",onClick:a,destructive:!0};i.push(e)}return"dropdown"===n?Ra.jsx(Ra.Fragment,{children:i.map((e,a)=>Ra.jsxs(ur,{onClick:e.onClick,className:e.destructive?"text-destructive":"",children:[Ra.jsx(e.icon,{className:"mr-2 h-4 w-4"}),e.label]},a))}):Ra.jsx(Ra.Fragment,{children:i.map((e,a)=>Ra.jsxs(Oa,{variant:"ghost",size:"sm",onClick:e.onClick,className:"w-full justify-start h-auto py-2 px-3 text-sm font-normal "+(e.destructive?"text-destructive hover:text-destructive":""),children:[Ra.jsx(e.icon,{className:"h-4 w-4 mr-2"}),e.label]},a))})},yr=({onEdit:e,onDelete:a,canDelete:t=!0,onToggleStatus:s,isActive:r=!0})=>Ra.jsxs(sr,{children:[Ra.jsx(rr,{asChild:!0,children:Ra.jsx(Oa,{variant:"default",size:"sm",className:"h-7 px-2 text-xs bg-primary text-primary-foreground hover:bg-primary/90",children:Ra.jsx(D,{size:12})})}),Ra.jsx(mr,{align:"end",children:Ra.jsx(br,{onEdit:a=>{a?.stopPropagation(),e?.()},onDelete:e=>{e?.stopPropagation(),a?.()},onToggleStatus:e=>{e?.stopPropagation(),s?.()},isActive:r,canDelete:t,renderAs:"dropdown"})})]}),vr=({manager:e,columns:a,onEdit:t,onView:s,onToggleStatus:i,onDelete:o,renderActions:l})=>{const[c,d]=r(!1),[m,u]=r(null);n(()=>{const e=()=>d(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),n(()=>{const e=()=>u(null);if(m)return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[m]);const f=(()=>{a.length;let e=0;const t=a.map(a=>{if(a.width)return e+=a.width,{...a,calculatedWidth:a.width,isFixed:!0};{const t=a.minWidth||120,s=a.weight||1;return e+=t,{...a,calculatedWidth:t,weight:s,isFixed:!1}}});return e+=100,t.map(e=>e.isFixed?{...e,style:{width:`${e.calculatedWidth}px`}}:{...e,style:{minWidth:`${e.calculatedWidth}px`,width:`${e.calculatedWidth}px`}})})();return c?e.isLoading?Ra.jsx(Gs,{count:3}):0===e.entities.length?Ra.jsx(tr,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"}):Ra.jsxs("div",{className:"space-y-4",children:[e.entities.map(e=>Ra.jsx(La,{className:"overflow-hidden cursor-pointer hover:bg-muted/50",onClick:a=>{a.stopPropagation(),t?.(e)},onContextMenu:a=>{a.preventDefault(),a.stopPropagation(),u({x:a.clientX,y:a.clientY,item:e})},children:Ra.jsxs(Ba,{className:"p-4",children:[a.map(a=>Ra.jsxs("div",{className:"flex justify-between items-start mb-2 last:mb-0",children:[Ra.jsxs("span",{className:"text-sm font-medium text-muted-foreground min-w-0 mr-2",children:[a.header,":"]}),Ra.jsx("div",{className:"text-sm text-foreground text-right min-w-0 flex-1",children:a.render?a.render(e):e[a.key]})]},String(a.key))),(t||s||l)&&Ra.jsx("div",{className:"mt-3 pt-3 border-t flex justify-end",onClick:e=>e.stopPropagation(),children:l?l(e):Ra.jsx(yr,{onEdit:t?()=>{t(e)}:void 0,onDelete:o?()=>o(e):void 0,onToggleStatus:i?()=>i(e):void 0,isActive:e.is_actived})})]})},e.id)),m&&Ra.jsx("div",{className:"fixed bg-background border border-border rounded-md shadow-lg py-1 z-50 min-w-[120px]",style:{left:m.x,top:m.y},onClick:e=>e.stopPropagation(),children:Ra.jsx(br,{onEdit:t?()=>{t(m.item),u(null)}:void 0,onDelete:o?()=>{o(m.item),u(null)}:void 0,onToggleStatus:i?()=>{i(m.item),u(null)}:void 0,isActive:m.item.is_actived,canDelete:!!o,renderAs:"context"})})]}):Ra.jsxs("div",{className:"flex flex-col h-full",children:[e.isLoading?Ra.jsx(Xs,{rows:5,columns:a.length}):Ra.jsx("div",{className:"flex flex-col h-full overflow-hidden",children:Ra.jsx("div",{className:"flex-1 overflow-auto",children:Ra.jsxs(Vs,{className:"table-fixed",children:[Ra.jsxs("colgroup",{children:[f.map((e,a)=>Ra.jsx("col",{style:e.style},a)),Ra.jsx("col",{style:{width:"100px"}})]}),Ra.jsx(Us,{children:Ra.jsxs(qs,{children:[a.map(a=>{return Ra.jsx(Hs,{className:`${a.className||""} ${a.sortable?"cursor-pointer hover:bg-muted/50":""}`,onClick:a.sortable?()=>e.handleSort(String(a.key)):void 0,children:Ra.jsxs("div",{className:"flex items-center "+(a.className?.includes("text-center")?"justify-center":""),children:[a.header,a.sortable&&(t=String(a.key),e.sortField!==t?Ra.jsx(O,{size:14,className:"ml-1 opacity-50"}):"asc"===e.sortDirection?Ra.jsx(z,{size:14,className:"ml-1"}):Ra.jsx(F,{size:14,className:"ml-1"}))]})},String(a.key));var t}),Ra.jsx(Hs,{className:"w-[100px] text-center",children:"Ações"})]})}),Ra.jsx(Bs,{children:0===e.entities.length?Ra.jsx(qs,{children:Ra.jsx(Qs,{colSpan:a.length+1,className:"h-32",children:Ra.jsx(tr,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"})})}):e.entities.map(e=>Ra.jsxs(qs,{className:"cursor-pointer hover:bg-muted/50",onClick:a=>{a.stopPropagation(),t?.(e)},onContextMenu:a=>{a.preventDefault(),a.stopPropagation(),u({x:a.clientX,y:a.clientY,item:e})},children:[a.map(a=>Ra.jsx(Qs,{className:a.className,children:a.render?a.render(e):e[a.key]},String(a.key))),Ra.jsx(Qs,{className:"text-center",children:l?l(e):Ra.jsx(yr,{onEdit:t?()=>t(e):void 0,onDelete:o?()=>o(e):void 0,onToggleStatus:i?()=>i(e):void 0,isActive:e.is_actived})})]},e.id))})]})})}),m&&Ra.jsx("div",{className:"fixed bg-background border border-border rounded-md shadow-lg py-1 z-50 min-w-[120px]",style:{left:m.x,top:m.y},onClick:e=>e.stopPropagation(),children:Ra.jsx(br,{onEdit:t?()=>{t(m.item),u(null)}:void 0,onDelete:o?()=>{o(m.item),u(null)}:void 0,onToggleStatus:i?()=>{i(m.item),u(null)}:void 0,isActive:m.item.is_actived,canDelete:!!o,renderAs:"context"})})]})};function Nr(e,a,s,i){const[o,l]=r({}),[c,d]=r({}),m=t(()=>e,[e]),u=e=>e instanceof Date&&!isNaN(e.getTime()),f=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 f(e)}},h=(e,a,t)=>{if(e.required&&(""===a||null==a||Array.isArray(a)&&0===a.length))return`${e.label} é obrigatório`;if(e.validation){let r;if("function"==typeof e.validation?r=e.validation:e.validation.custom&&"function"==typeof e.validation.custom&&(r=e.validation.custom),r)try{const e=r(a,t);if(e)return e}catch(s){}}};n(()=>{if(!i)return;const e=a=>{const t=[];return a.forEach(a=>{t.push(a),a.fields&&t.push(...e(a.fields))}),t},t=e(m),r={};t.forEach(e=>{let t;if(a&&void 0!==a[e.name]){if(t=a[e.name],null==t&&(t=""),"date"===e.type&&t)if("string"==typeof t){const e=new Date(t);u(e)&&(t=e.toISOString().split("T")[0])}else u(t)&&(t=t.toISOString().split("T")[0])}else t=f(e);r[e.name]=t}),t.forEach(e=>{const a=p(e,r);void 0!==a&&(r[e.name]=a)}),l(r),d({}),s&&s(r)},[m,a,s,i]);const x=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...x(e.fields))}),a},g=()=>{const e=x(m),a={};return e.forEach(e=>{const t=h(e,o[e.name],o);t&&(a[e.name]=t)}),d(a),0===Object.keys(a).length};return{formData:o,errors:c,updateField:(e,a)=>{l(t=>{const r={...t,[e]:a},n=((e,a)=>{let t={...a};const s=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...s(e.fields))}),a};return s(m).filter(a=>a.dependsOn===e).forEach(e=>{const a=p(e,t);void 0!==a&&(t={...t,[e.name]:a})}),t})(e,r);return s&&s(n),n}),c[e]&&d(a=>{const t={...a};return delete t[e],t});const t=x(m).find(a=>a.name===e);if(t){const s=h(t,a,o);s&&d(a=>({...a,[e]:s}))}},validateForm:g,handleSubmit:e=>a=>{a&&(a.preventDefault(),a.stopPropagation()),g()&&e(o)}}}const jr=na.Root,wr=na.Trigger,kr=e.forwardRef(({className:e,align:a="center",sideOffset:t=4,...s},r)=>Ra.jsx(na.Portal,{children:Ra.jsx(na.Content,{ref:r,align:a,sideOffset:t,className:_a("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",e),...s})}));kr.displayName=na.Content.displayName;const Sr=["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#06b6d4","#84cc16","#f97316","#ec4899","#6b7280"],Cr=({value:e="#3b82f6",onChange:a,label:t})=>Ra.jsxs("div",{className:"space-y-2",children:[t&&Ra.jsx($a,{children:t}),Ra.jsxs(jr,{children:[Ra.jsx(wr,{asChild:!0,children:Ra.jsxs(Oa,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[Ra.jsx("div",{className:"h-4 w-4 rounded border mr-2",style:{backgroundColor:e}}),e]})}),Ra.jsx(kr,{className:"w-64",children:Ra.jsxs("div",{className:"space-y-3",children:[Ra.jsxs("div",{children:[Ra.jsx($a,{htmlFor:"color-input",children:"Cor personalizada"}),Ra.jsx(za,{id:"color-input",type:"color",value:e,onChange:e=>a?.(e.target.value),className:"h-10 w-full"})]}),Ra.jsxs("div",{children:[Ra.jsx($a,{children:"Cores predefinidas"}),Ra.jsx("div",{className:"grid grid-cols-5 gap-2 mt-2",children:Sr.map(e=>Ra.jsx("button",{className:"h-8 w-8 rounded border-2 border-border hover:border-primary",style:{backgroundColor:e},onClick:()=>a?.(e),"aria-label":`Selecionar cor ${e}`},e))})]})]})})]})]}),Tr=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(ia.Root,{ref:s,className:_a("relative overflow-hidden",e),...t,children:[Ra.jsx(ia.Viewport,{className:"h-full w-full rounded-[inherit]",children:a}),Ra.jsx(Rr,{}),Ra.jsx(ia.Corner,{})]}));Tr.displayName=ia.Root.displayName;const Rr=e.forwardRef(({className:e,orientation:a="vertical",...t},s)=>Ra.jsx(ia.ScrollAreaScrollbar,{ref:s,orientation:a,className:_a("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]",e),...t,children:Ra.jsx(ia.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));Rr.displayName=ia.ScrollAreaScrollbar.displayName;const _r={Star:_e,Heart:Re,Home:Te,User:Ce,Settings:Se,Mail:ke,Phone:we,Calendar:je,MapPin:Ne,Camera:ve,Image:ye,Music:be,Video:ge,Book:xe,Bookmark:he,Search:C,Filter:pe,Edit:P,Trash2:I,Plus:fe,Minus:ue,Check:w,X:v,ChevronDown:N,ChevronUp:j,ChevronLeft:me,ChevronRight:R,ArrowUp:z,ArrowDown:F,ArrowLeft:de,ArrowRight:ce,Clock:le,Bell:oe,AlertCircle:S,Info:ie,HelpCircle:ne,Download:re,Upload:se,Share:te,Copy:ae,Save:ee,FileText:Z,Folder:Y,FolderOpen:G,Archive:X,Lock:K,Unlock:J,Eye:Q,EyeOff:H,Shield:q,Key:W,Zap:B,Flame:U,Sparkles:V,Award:M,Trophy:L,Target:$},Pr=({value:e="Star",onChange:a,label:t})=>{const[s,n]=r(""),i=Object.entries(_r).filter(([e])=>e.toLowerCase().includes(s.toLowerCase())),o=_r[e]||_e;return Ra.jsxs("div",{className:"space-y-2",children:[t&&Ra.jsx($a,{children:t}),Ra.jsxs(jr,{children:[Ra.jsx(wr,{asChild:!0,children:Ra.jsxs(Oa,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[Ra.jsx(o,{className:"h-4 w-4 mr-2"}),e]})}),Ra.jsx(kr,{className:"w-80",children:Ra.jsxs("div",{className:"space-y-3",children:[Ra.jsxs("div",{children:[Ra.jsx($a,{htmlFor:"icon-search",children:"Buscar ícone"}),Ra.jsx(za,{id:"icon-search",placeholder:"Digite o nome do ícone...",value:s,onChange:e=>n(e.target.value)})]}),Ra.jsx(Tr,{className:"h-48",children:Ra.jsx("div",{className:"grid grid-cols-6 gap-2",children:i.map(([t,s])=>Ra.jsx("button",{className:"p-2 rounded border-2 hover:border-primary "+(e===t?"border-primary bg-primary/10":"border-border"),onClick:()=>a?.(t),title:t,children:Ra.jsx(s,{className:"h-4 w-4"})},t))})})]})})]})]})};class Er{static handleError(e){if(!e)return!1;const a=e.message||e.toString();return!!this.isAuthenticationError(e,a)&&(Gt.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.")}}}const Ar=i(void 0),Ir=({children:e})=>{const[a,i]=r({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null});let o=null;try{o=Qe()}catch{}const[l,c]=r(!1),[d,m]=r(0),u=s(e=>{i(a=>({...a,...e}))},[]),f=s(e=>{i(a=>({...a,isLoading:e}))},[]),p=s(()=>{i({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null})},[]),h=s(async e=>{try{f(!0);const a=Gt.getAccessToken();if(!a)return;const t=await us.generateToken(a,e.alias);if(!t)return;Gt.setSupabaseToken(t),Gt.setSelectedAlias(e.alias);const s={id:Gt.getCompanyId(e.alias)||e.id,name:e.name,alias:e.alias};u({alias:e.alias,selectedUnit:s}),o&&await o.invalidateQueries()}catch(a){}finally{f(!1)}},[u,o,f]),x=s(async()=>await ms.processCallback(),[]),g=s(async()=>{ms.logout(),p(),o&&await o.clear()},[p,o]),b=s(e=>{c(e)},[]),y=s(()=>{m(e=>e+1)},[]),v=s(()=>{m(e=>e+1)},[]);n(()=>{if(!a.isAuthenticated)return;let e=!0;const t=setInterval(()=>{e&&(Gt.areAllTokensValid()||e&&g())},6e5);return()=>{e=!1,clearInterval(t)}},[a.isAuthenticated,g]),n(()=>{let e=!0;return(async()=>{try{if(await new Promise(e=>setTimeout(e,100)),!e)return;const a=await ms.initialize();if(!e)return;a&&a.isAuthenticated?u({user:a.user,companies:a.companies,alias:a.alias,isAuthenticated:!0,isLoading:!1,selectedUnit:a.selectedUnit,userId:a.userId,userAlias:a.userAlias}):e&&f(!1)}catch(a){e&&(Er.handleError(a),f(!1))}})(),()=>{e=!1}},[u,f,g]);const N=t(()=>({...a,logout:g,processCallback:x,switchUnit:h,availableUnits:a.companies,isSearchVisible:l,setSearchVisible:b,clearSearch:y,refreshData:v}),[a,g,x,h,l,b,y,v]);return Ra.jsx(Ar.Provider,{value:N,children:e})},Dr=()=>{const e=o(Ar);if(void 0===e)throw new Error("useAuth deve ser usado dentro de um AuthProvider");return e},Or=(e={})=>{const{user:a,alias:t}=Dr(),s=ls(),{enabled:r=s.enableUsersApi}=e;return Je({queryKey:["qualiex-users",t],queryFn:()=>ws.getUsers(t),enabled:r&&!!t&&!!a,retry:2,retryDelay:1e3})},zr=({value:e="",onChange:a,placeholder:t="Selecionar usuário",disabled:s,className:r,enabled:n})=>{const{data:i=[],isLoading:o,error:l}=Or({enabled:n});return o?Ra.jsx(Ks,{className:_a("h-10 w-full",r)}):l?Ra.jsxs("div",{className:`flex items-center gap-2 p-2 border border-destructive/20 rounded-md ${r}`,children:[Ra.jsx(S,{className:"h-4 w-4 text-destructive"}),Ra.jsx("span",{className:"text-sm text-destructive",children:"Erro ao carregar usuários"})]}):Ra.jsxs(dt,{value:e,onValueChange:a,disabled:s||0===i.length,children:[Ra.jsx(ut,{className:r,children:Ra.jsx(mt,{placeholder:t})}),Ra.jsx(ht,{children:0===i.length?Ra.jsx(xt,{value:"no-users",disabled:!0,children:"Nenhum usuário encontrado"}):i.map(e=>Ra.jsx(xt,{value:e.userId,children:e.userName},e.userId))})]})},Fr=({value:e,onChange:a,placeholder:t="Selecionar responsável",disabled:s,className:r})=>Ra.jsxs(dt,{value:e,onValueChange:a,disabled:s,children:[Ra.jsx(ut,{className:r,children:Ra.jsx(mt,{placeholder:t})}),Ra.jsx(ht,{children:Ra.jsx(xt,{value:"placeholder",children:"Responsável placeholder"})})]});function $r({title:e,sections:n,initialData:i,onSubmit:o,onCancel:l,open:c,submitButtonText:d="Salvar",isLoading:m=!1,usersData:u}){const[f,p]=r(n?.[0]?.id||""),h=t(()=>n&&Array.isArray(n)?n.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[n]),{formData:x,errors:g,updateField:b,handleSubmit:y}=Nr(h,i,void 0,c),v=t(()=>n&&Array.isArray(n)?n.map(e=>({...e,disabled:e.condition?!e.condition(x):e.disabled||!1})):[],[n,x]),N=t(()=>{const e=v.find(e=>e.id===f);if(e&&!e.disabled)return f;const a=v.find(e=>!e.disabled);return a?.id||f},[v,f]);a.useEffect(()=>{N!==f&&p(N)},[N,f]);const j=v.find(e=>e.id===N),w=e=>{const a=(e.computedValue,x[e.name]),t=void 0!==a?a:"",s=g[e.name];switch(e.type){case"group":return Ra.jsxs("div",{className:"space-y-2",children:[e.label,Ra.jsx("div",{className:e.className||("horizontal"===e.layout?"flex gap-3":"space-y-3"),children:e.fields?.map(e=>w(e))})]},e.name);case"user-select":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(zr,{value:t||"",onChange:a=>b(e.name,a),placeholder:e.placeholder,disabled:e.disabled,className:s?"border-red-500":""}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"textarea":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(bt,{id:e.name,value:t||"",onChange:a=>{b(e.name,a.target.value)},placeholder:e.placeholder,disabled:e.disabled,className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"select":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsxs(dt,{value:String(t),onValueChange:a=>{b(e.name,a),e.onValueChange&&e.onValueChange(a)},disabled:e.disabled,children:[Ra.jsx(ut,{className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`,children:Ra.jsx(mt,{placeholder:e.placeholder})}),Ra.jsx(ht,{children:e.options?.map(e=>Ra.jsx(xt,{value:e.value,children:e.label},e.value))})]}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"date":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(za,{id:e.name,type:"date",value:String(t),onChange:a=>b(e.name,a.target.value),placeholder:e.placeholder,disabled:e.disabled,className:_a("w-full",s?"border-red-500":"",e.disabled?"bg-gray-100 cursor-not-allowed":"")}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"single-responsible-select":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(Fr,{value:String(t),onChange:a=>b(e.name,a),placeholder:e.placeholder,disabled:e.disabled,className:s?"border-red-500":""}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"simple-qualiex-user-field":const a=ls();return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(zr,{value:t??"",onChange:a=>b(e.name,a),placeholder:e.placeholder,disabled:e.disabled,className:s?"border-red-500":"",enabled:a.enableUsersApi}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"color":return Ra.jsxs("div",{children:[Ra.jsxs($a,{htmlFor:e.name,children:[e.label," ",e.required&&Ra.jsx("span",{className:"text-destructive",children:"*"})]}),Ra.jsx(za,{id:e.name,type:"color",value:t||e.defaultValue||"#000000",onChange:a=>b(e.name,a.target.value),className:"h-10"}),s&&Ra.jsx("p",{className:"text-sm text-destructive mt-1",children:s})]},e.name);case"color-picker":return Ra.jsxs("div",{children:[Ra.jsx(Cr,{label:`${e.label} ${e.required?"*":""}`,value:t||e.defaultValue||"#3b82f6",onChange:a=>b(e.name,a)}),s&&Ra.jsx("p",{className:"text-sm text-destructive mt-1",children:s})]},e.name);case"icon-picker":return Ra.jsxs("div",{children:[Ra.jsx(Pr,{label:`${e.label} ${e.required?"*":""}`,value:t||e.defaultValue||"Star",onChange:a=>b(e.name,a)}),s&&Ra.jsx("p",{className:"text-sm text-destructive mt-1",children:s})]},e.name);case"number":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(za,{id:e.name,type:"number",value:null!=t?String(t):"",onChange:a=>{const t=a.target.value,s=""===t?null:Number(t);b(e.name,s)},placeholder:e.placeholder,disabled:e.disabled,className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`,min:e.min,step:e.step||"1"}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);default:return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx($a,{htmlFor:e.name,children:e.label}),Ra.jsx(za,{id:e.name,type:"text",value:t||"",onChange:a=>{b(e.name,a.target.value)},placeholder:e.placeholder,disabled:e.disabled,className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`,readOnly:e.disabled}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name)}},k=s(()=>{if(!j)return null;if(j.disabled)return Ra.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[Ra.jsx("div",{className:"rounded-full bg-muted p-3 mb-4",children:Ra.jsx("svg",{className:"h-6 w-6 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:Ra.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m0 0v2m0-2h2m-2 0H9m3-8V9m0-4V3"})})}),Ra.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Seção não disponível"}),Ra.jsx("p",{className:"text-muted-foreground max-w-sm",children:'Complete as informações obrigatórias na seção "Informações Gerais" para acessar esta seção.'})]});if(j.component){const e=j.component;return Ra.jsx(e,{formData:x,updateField:b,errors:g,users:u,disabled:j.disabled})}return Ra.jsx("div",{className:"space-y-3",children:j.fields.map(w)})},[j,x,b,g,u,w]),S=Ra.jsxs("div",{className:"flex flex-col max-h-[80vh]",children:[v.length>1&&Ra.jsx("div",{className:"flex-shrink-0 p-4 border-b",children:Ra.jsx("div",{className:"flex space-x-2",children:v.map(e=>Ra.jsx(Oa,{variant:N===e.id?"action-primary":"action-secondary",size:"sm",onClick:()=>(e=>{const a=v.find(a=>a.id===e);a&&!a.disabled&&p(e)})(e.id),disabled:e.disabled,className:e.disabled?"opacity-50 cursor-not-allowed":"",children:e.title},e.id))})}),Ra.jsx("div",{className:"flex-1 overflow-y-auto px-2 md:px-4 pt-0 pb-2 md:pb-4",children:m?Ra.jsx("div",{className:"flex items-center justify-center py-12",children:Ra.jsx("div",{className:"text-muted-foreground",children:"Carregando dados..."})}):Ra.jsxs("form",{onSubmit:y(o),className:"space-y-3 md:space-y-4",children:[k(),Ra.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[Ra.jsx(Oa,{type:"button",variant:"outline",onClick:l,children:"Cancelar"}),Ra.jsx(Oa,{type:"submit",disabled:m,children:d})]})]})})]});return Ra.jsx(qa,{open:c,onOpenChange:e=>{!1===e&&!0===c&&l()},children:Ra.jsxs(Xa,{className:"max-w-4xl max-h-[90vh] overflow-hidden",children:[Ra.jsxs(Ga,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:[Ra.jsx(Za,{className:"text-white",children:e}),Ra.jsx(et,{className:"sr-only",children:"Formulário para preenchimento de dados"})]}),S]})})}function Lr({open:e,title:a,sections:t,initialData:s,onSubmit:r,onCancel:n,isLoading:i=!1,submitButtonText:o="Salvar"}){return Ra.jsx($r,{open:e,title:a,sections:t,initialData:s,onSubmit:r,onCancel:n,isLoading:i,submitButtonText:o})}const Mr=({manager:e})=>{const{pagination:a={totalItems:0,totalPages:1},currentPage:t=1,itemsPerPage:s=10,handlePageChange:r=()=>{},handleItemsPerPageChange:n=()=>{}}=e,{totalItems:i=0,totalPages:o=1}=a,l=i>0?(t-1)*s+1:0,c=Math.min(t*s,i);return Ra.jsxs("div",{className:"px-4 h-12 flex items-center justify-between text-sm text-muted-foreground bg-muted/50 border-t border-border flex-shrink-0 mt-auto",children:[Ra.jsxs("div",{className:"flex items-center space-x-3",children:[Ra.jsx("span",{children:"Itens por página"}),Ra.jsxs(dt,{value:s.toString(),onValueChange:e=>n(Number(e)),children:[Ra.jsx(ut,{className:"w-20 h-8 border-border",children:Ra.jsx(mt,{})}),Ra.jsxs(ht,{children:[Ra.jsx(xt,{value:"10",children:"10"}),Ra.jsx(xt,{value:"25",children:"25"}),Ra.jsx(xt,{value:"50",children:"50"}),Ra.jsx(xt,{value:"100",children:"100"})]})]})]}),Ra.jsx("div",{className:"flex-1 flex justify-center",children:Ra.jsx("span",{children:i>0?`${l}-${c} de ${i} itens (página ${t} de ${o})`:"0 itens"})}),Ra.jsxs("div",{className:"flex items-center space-x-1",children:[Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(1),disabled:1===t,children:Ra.jsx(Pe,{className:"h-4 w-4"})}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(Math.max(1,t-1)),disabled:1===t,children:Ra.jsx(me,{className:"h-4 w-4"})}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(Math.min(o,t+1)),disabled:t===o,children:Ra.jsx(R,{className:"h-4 w-4"})}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(o),disabled:t===o,children:Ra.jsx(Ee,{className:"h-4 w-4"})})]})]})};function Vr({manager:e,config:a,formSections:t,onSave:s,FormComponent:i,onToggleStatus:o}){const{setSearchVisible:l}=Dr(),[c,d]=r(!1),[m,u]=r(null),[f,p]=r({isOpen:!1,entityId:null,entityName:""});n(()=>(l(!0),()=>{l(!1)}),[l]);const h=()=>{d(!1),u(null)},x=e=>{s(e),d(!1),u(null)};return Ra.jsxs("div",{className:"flex-1 flex flex-col h-full",children:[Ra.jsx("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b",children:Ra.jsx("div",{className:"flex items-center gap-4",children:Ra.jsxs(Oa,{onClick:()=>{u(null),d(!0)},className:"flex items-center gap-2",children:[Ra.jsx(fe,{size:16}),"Novo"]})})}),Ra.jsx("div",{className:"flex-1 flex flex-col overflow-hidden",children:Ra.jsx(vr,{manager:e,columns:a.columns,onEdit:e=>{u(e),d(!0)},onDelete:e=>{p({isOpen:!0,entityId:e.id,entityName:e.title||e.name||"Item"})},onToggleStatus:o})}),Ra.jsx("div",{className:"flex-shrink-0 border-t bg-background",children:Ra.jsx(Mr,{manager:e})}),i?Ra.jsx(i,{open:c,onCancel:h,onSubmit:x,editingEntity:m,isLoading:e.isLoading}):Ra.jsx(Lr,{open:c,title:m?`Editar ${a.entityName}`:`Novo ${a.entityName}`,sections:t,initialData:m||void 0,onSubmit:x,onCancel:h,isLoading:e.isLoading,submitButtonText:m?"Atualizar":"Criar"}),Ra.jsx(Ms,{open:f.isOpen,onOpenChange:()=>{p({isOpen:!1,entityId:null,entityName:""})},onConfirm:a=>{f.entityId&&(e.deleteEntity(f.entityId),p({isOpen:!1,entityId:null,entityName:""}))},item:f.entityId?{id:f.entityId,title:f.entityName}:void 0,entityName:a.entityName,isDeleting:e.isDeleting})]})}function Ur(e){return()=>{const{manager:a,config:t,onSave:s,onToggleStatus:r,FormComponent:n}=e,i={entityName:t.entityName,entityNamePlural:t.entityNamePlural,filters:t.filters||[],columns:t.columns,cardFields:t.cardFields||[]};return Ra.jsx(Vr,{manager:a,config:i,formSections:t.formSections,onSave:s,FormComponent:n,onToggleStatus:r})}}function Br(e,a,t){return s=>{if(s.id){const a=t(s);e.updateEntity(s.id,a)}else{const t=a(s);e.createEntity(t)}}}function Wr(e,a,t={}){const s=[];return Object.keys(a).forEach(e=>{if("id"!==e&&!e.endsWith("_at")){const t=a[e],r={key:e,header:Hr(e),label:Hr(e),...qr(e,t),sortable:!0,searchable:"string"==typeof t};s.push(r)}}),{title:e,columns:s,searchPlaceholder:`Buscar ${e.toLowerCase()}...`,itemsPerPage:10,enableCreate:!0,enableEdit:!0,enableDelete:!0,enableSearch:!0,enableFilters:!1,...t}}function qr(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 Hr(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase()).trim()}const Qr={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 Jr(e,a,t={}){const s=Qr[e];return Wr(s.title,a,{...s,...t})}const Kr=({children:e})=>{const{isAuthenticated:t,isLoading:s}=Dr();if(a.useEffect(()=>{if(!t)return;const e=()=>{Gt.areAllTokensValid()||ms.logout()};e();const a=setInterval(e,3e5);return()=>clearInterval(a)},[t]),a.useEffect(()=>{if(s)return;if(t)return;if(Gt.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,r=new URLSearchParams(a);if(e.has("access_token")||r.has("access_token"))return;const n=ns();(async()=>{n?await ms.loginDev():ms.loginProd()})()},[t,s]),s)return Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Carregando..."})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),Ra.jsx("p",{className:"text-muted-foreground",children:"Verificando autenticação..."})]})]})});if(!t){return new URLSearchParams(window.location.search).has("access_token")||new URLSearchParams(window.location.hash.substring(1)).has("access_token")?Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Processando..."})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),Ra.jsx("p",{className:"text-muted-foreground",children:"Processando tokens..."})]})]})}):Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Iniciando..."})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),Ra.jsx("p",{className:"text-muted-foreground",children:ns()?"Fazendo login automático...":"Redirecionando para autenticação..."})]})]})})}return Ra.jsx(Ra.Fragment,{children:e})},Xr=u("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"}}),Gr=e.forwardRef(({className:e,variant:a,...t},s)=>Ra.jsx("div",{ref:s,role:"alert",className:_a(Xr({variant:a}),e),...t}));Gr.displayName="Alert";const Yr=e.forwardRef(({className:e,...a},t)=>Ra.jsx("h5",{ref:t,className:_a("mb-1 font-medium leading-none tracking-tight",e),...a}));Yr.displayName="AlertTitle";const Zr=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("text-sm [&_p]:leading-relaxed",e),...a}));Zr.displayName="AlertDescription";const en=()=>{const{processCallback:e}=Dr(),[a,t]=r(null),[s,i]=r(!1);n(()=>{(async()=>{try{if(await e()){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 t("Falha na autenticação. Tente novamente.")}catch(a){t(a?.message||"Erro durante a autenticação. Tente novamente.")}})()},[e]);const o=async()=>{i(!0),t(null);try{await e()||t("Falha na autenticação. Tente novamente.")}catch(a){t(a?.message||"Erro ao tentar novamente.")}finally{i(!1)}},l=()=>{window.location.href="/"};return a?Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsxs(Va,{className:"text-xl font-semibold text-destructive flex items-center justify-center gap-2",children:[Ra.jsx(S,{className:"h-5 w-5"}),"Erro na Autenticação"]})}),Ra.jsxs(Ba,{className:"space-y-4",children:[Ra.jsx(Gr,{variant:"destructive",children:Ra.jsx(Zr,{children:a})}),Ra.jsx("div",{className:"text-sm text-muted-foreground",children:Ra.jsx("p",{children:"Se o problema persistir, verifique se a URL de callback está configurada corretamente no provedor OAuth."})}),Ra.jsxs("div",{className:"flex gap-2",children:[Ra.jsx(Oa,{onClick:o,disabled:s,className:"flex-1",children:s?Ra.jsxs(Ra.Fragment,{children:[Ra.jsx(jt,{size:"sm",className:"mr-2"}),"Tentando..."]}):Ra.jsxs(Ra.Fragment,{children:[Ra.jsx(Ae,{className:"h-4 w-4 mr-2"}),"Tentar Novamente"]})}),Ra.jsx(Oa,{onClick:l,variant:"outline",className:"flex-1",children:"Voltar ao Início"})]})]})]})}):Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Processando Autenticação"})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"flex justify-center mb-4",children:Ra.jsx(jt,{size:"lg"})}),Ra.jsx("p",{className:"text-muted-foreground",children:"Processando tokens e redirecionando..."})]})]})})},an=()=>Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-2xl font-bold",children:"Acesso ao Sistema"})}),Ra.jsxs(Ba,{className:"text-center space-y-4",children:[Ra.jsx("p",{className:"text-muted-foreground",children:"Faça login para acessar o sistema"}),Ra.jsx(Oa,{onClick:async()=>{ns()?await ms.loginDev():ms.loginProd()},className:"w-full",size:"lg",children:ns()?"Login Desenvolvimento":"Entrar com Qualiex"})]})]})});function tn(e){return{queryClient:e.queryClient||new Xe({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}}),config:e}}const sn=oa.Root,rn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(oa.Item,{ref:t,className:_a("border-b",e),...a}));rn.displayName="AccordionItem";const nn=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsx(oa.Header,{className:"flex",children:Ra.jsxs(oa.Trigger,{ref:s,className:_a("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",e),...t,children:[a,Ra.jsx(N,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));nn.displayName=oa.Trigger.displayName;const on=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsx(oa.Content,{ref:s,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...t,children:Ra.jsx("div",{className:_a("pb-4 pt-0",e),children:a})}));on.displayName=oa.Content.displayName;const ln=la.Root,cn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ca.Root,{ref:t,className:_a("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...a}));cn.displayName=ca.Root.displayName;const dn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ca.Image,{ref:t,className:_a("aspect-square h-full w-full",e),...a}));dn.displayName=ca.Image.displayName;const mn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ca.Fallback,{ref:t,className:_a("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...a}));mn.displayName=ca.Fallback.displayName;const un=e.forwardRef(({...e},a)=>Ra.jsx("nav",{ref:a,"aria-label":"breadcrumb",...e}));un.displayName="Breadcrumb";const fn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ol",{ref:t,className:_a("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",e),...a}));fn.displayName="BreadcrumbList";const pn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("li",{ref:t,className:_a("inline-flex items-center gap-1.5",e),...a}));pn.displayName="BreadcrumbItem";const hn=e.forwardRef(({asChild:a,className:t,...s},r)=>{const n=a?e.Fragment:"a";return Ra.jsx(n,{ref:r,className:_a("transition-colors hover:text-foreground",t),...s})});hn.displayName="BreadcrumbLink";const xn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("span",{ref:t,role:"link","aria-disabled":"true","aria-current":"page",className:_a("font-normal text-foreground",e),...a}));xn.displayName="BreadcrumbPage";const gn=({children:e,className:a,...t})=>Ra.jsx("li",{role:"presentation","aria-hidden":"true",className:_a("[&>svg]:size-3.5",a),...t,children:e??Ra.jsx(R,{})});gn.displayName="BreadcrumbSeparator";const bn=({className:e,...a})=>Ra.jsxs("span",{role:"presentation","aria-hidden":"true",className:_a("flex h-9 w-9 items-center justify-center",e),...a,children:[Ra.jsx(Ie,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"More"})]});function yn(e){return(a={})=>{const t=a.width?String(a.width):e.defaultWidth;return e.formats[t]||e.formats[e.defaultWidth]}}function vn(e){return(a,t)=>{let s;if("formatting"===(t?.context?String(t.context):"standalone")&&e.formattingValues){const a=e.defaultFormattingWidth||e.defaultWidth,r=t?.width?String(t.width):a;s=e.formattingValues[r]||e.formattingValues[a]}else{const a=e.defaultWidth,r=t?.width?String(t.width):e.defaultWidth;s=e.values[r]||e.values[a]}return s[e.argumentCallback?e.argumentCallback(a):a]}}function Nn(e){return(a,t={})=>{const s=t.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],n=a.match(r);if(!n)return null;const i=n[0],o=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(o)?function(e,a){for(let t=0;t<e.length;t++)if(a(e[t]))return t;return}(o,e=>e.test(i)):function(e,a){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&a(e[t]))return t;return}(o,e=>e.test(i));let c;c=e.valueCallback?e.valueCallback(l):l,c=t.valueCallback?t.valueCallback(c):c;return{value:c,rest:a.slice(i.length)}}}bn.displayName="BreadcrumbEllipsis";const jn={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"}},wn={date:yn({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:yn({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:yn({formats:{full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},kn={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"},Sn={ordinalNumber:(e,a)=>{const t=Number(e);return"week"===a?.unit?t+"ª":t+"º"},era:vn({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},defaultWidth:"wide"}),quarter:vn({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:vn({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:vn({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:vn({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"})},Cn={ordinalNumber:(Tn={matchPattern:/^(\d+)[ºªo]?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{const t=e.match(Tn.matchPattern);if(!t)return null;const s=t[0],r=e.match(Tn.parsePattern);if(!r)return null;let n=Tn.valueCallback?Tn.valueCallback(r[0]):r[0];return n=a.valueCallback?a.valueCallback(n):n,{value:n,rest:e.slice(s.length)}}),era:Nn({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:Nn({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:Nn({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:Nn({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:Nn({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 Tn;const Rn={code:"pt-BR",formatDistance:(e,a,t)=>{let s;const r=jn[e];return s="string"==typeof r?r:1===a?r.one:r.other.replace("{{count}}",String(a)),t?.addSuffix?t.comparison&&t.comparison>0?"em "+s:"há "+s:s},formatLong:wn,formatRelative:(e,a,t,s)=>{const r=kn[e];return"function"==typeof r?r(a):r},localize:Sn,match:Cn,options:{weekStartsOn:0,firstWeekContainsDate:1}};function _n({className:e,classNames:a,showOutsideDays:t=!0,...s}){return Ra.jsx(da,{showOutsideDays:t,className:_a("p-3",e),locale:Rn,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:_a(Da({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:_a(Da({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:({...e})=>Ra.jsx(me,{className:"h-4 w-4"}),IconRight:({...e})=>Ra.jsx(R,{className:"h-4 w-4"})},...s})}_n.displayName="Calendar";const Pn=ma.Root,En=ma.CollapsibleTrigger,An=ma.CollapsibleContent,In=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",e),...a}));In.displayName="Command";const Dn=({children:e,...a})=>Ra.jsx("div",{...a,children:Ra.jsx(In,{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:e})}),On=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:Ra.jsx("input",{ref:t,className:_a("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",e),...a})}));On.displayName="CommandInput";const zn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("max-h-[300px] overflow-y-auto overflow-x-hidden",e),...a}));zn.displayName="CommandList";const Fn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("py-6 text-center text-sm text-muted-foreground",e),...a}));Fn.displayName="CommandEmpty";const $n=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("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",e),...a}));$n.displayName="CommandGroup";const Ln=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("-mx-1 h-px bg-border",e),...a}));Ln.displayName="CommandSeparator";const Mn=e.forwardRef(({className:e,disabled:a,onSelect:t,value:s,...r},n)=>Ra.jsx("div",{ref:n,className:_a("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",e),"data-disabled":a,onClick:()=>!a&&t?.(s||""),...r}));Mn.displayName="CommandItem";const Vn=({className:e,...a})=>Ra.jsx("span",{className:_a("ml-auto text-xs tracking-widest text-muted-foreground",e),...a});Vn.displayName="CommandShortcut";const Un={Root:function({children:e,className:a}){return Ra.jsx("div",{className:_a("space-y-4",a),children:e})},Item:function({children:e,onClick:a,className:t}){return Ra.jsx(La,{className:_a("transition-colors",a&&"cursor-pointer hover:bg-muted/50",t),onClick:a,children:Ra.jsx(Ba,{className:"p-4",children:e})})},Field:function({label:e,value:a,className:t}){return Ra.jsxs("div",{className:_a("flex justify-between items-center text-sm",t),children:[Ra.jsxs("span",{className:"text-muted-foreground font-medium",children:[e,":"]}),Ra.jsx("span",{className:"text-foreground",children:a})]})}},Bn=({variant:e="button",className:t="",children:s})=>{const[n,i]=r(!1),{user:o}=Dr(),{companies:l,alias:c}=Dr(),d=c?l?.find(e=>e.alias===c)||l?.[0]||null:l?.[0]||null,m=(()=>{if(!o?.email)return"";return`${`${import.meta.env.VITE_FEEDBACK_APP_URL}/`}?${new URLSearchParams({email:o.email,module:"OKR",alias:d?.alias||""}).toString()}`})();if(!o?.email||!d)return null;const u=a.forwardRef((a,s)=>"menuItem"===e?Ra.jsxs("div",{ref:s,className:"flex items-center cursor-pointer w-full px-2 py-1.5 text-sm hover:bg-accent rounded-sm",...a,children:[Ra.jsx(De,{className:"mr-2 h-4 w-4"}),"Feedback"]}):Ra.jsxs(Oa,{ref:s,variant:"default",size:"sm",className:`bg-primary hover:bg-primary/90 ${t}`,...a,children:[Ra.jsx(De,{className:"mr-2 h-4 w-4"}),"Feedback"]}));return u.displayName="TriggerButton",Ra.jsxs(qa,{open:n,onOpenChange:i,children:[Ra.jsx(Ha,{asChild:!0,children:Ra.jsx(u,{})}),Ra.jsxs(Xa,{className:"max-w-4xl max-h-[90vh] w-full h-full p-0 overflow-hidden",children:[Ra.jsxs(Ga,{className:"sr-only",children:[Ra.jsx(Za,{children:"Feedback"}),Ra.jsx(et,{children:"Formulário de feedback para melhorias no sistema"})]}),Ra.jsx("div",{className:"w-full h-full",children:Ra.jsx("iframe",{src:m,width:"100%",height:"600px",className:"feedback-iframe",title:"Formulário de Feedback",loading:"lazy"})})]})]})},Wn={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))]"},qn={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"};function Hn({children:e,cols:a="auto-fit",gap:t="md",className:s}){return Ra.jsx("div",{className:_a("grid",Wn[a],qn[t],s),children:e})}function Qn({items:e,maxItems:a=3,className:t}){return e.length>a&&(e[0],e.slice(-(a-1))),e.length,Ra.jsx(un,{className:t})}function Jn(){const e=Ye();return(()=>{const a=e.pathname.split("/").filter(Boolean),t=[{label:"Exemplos",href:"/"}];let s="";return a.forEach((e,r)=>{s+=`/${e}`;const n=r===a.length-1,i=e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");t.push({label:i,href:n?void 0:s,isCurrentPage:n})}),t})()}const Kn=({className:e,...a})=>Ra.jsx("nav",{role:"navigation","aria-label":"pagination",className:_a("mx-auto flex w-full justify-center",e),...a});Kn.displayName="Pagination";const Xn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ul",{ref:t,className:_a("flex flex-row items-center gap-1",e),...a}));Xn.displayName="PaginationContent";const Gn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("li",{ref:t,className:_a("",e),...a}));Gn.displayName="PaginationItem";const Yn=({className:e,isActive:a,size:t="icon",...s})=>Ra.jsx("a",{"aria-current":a?"page":void 0,className:_a(Da({variant:a?"outline":"ghost",size:t}),e),...s});Yn.displayName="PaginationLink";const Zn=({className:e,...a})=>Ra.jsxs(Yn,{"aria-label":"Go to previous page",size:"default",className:_a("gap-1 pl-2.5",e),...a,children:[Ra.jsx(me,{className:"h-4 w-4"}),Ra.jsx("span",{children:"Previous"})]});Zn.displayName="PaginationPrevious";const ei=({className:e,...a})=>Ra.jsxs(Yn,{"aria-label":"Go to next page",size:"default",className:_a("gap-1 pr-2.5",e),...a,children:[Ra.jsx("span",{children:"Next"}),Ra.jsx(R,{className:"h-4 w-4"})]});ei.displayName="PaginationNext";const ai=({className:e,...a})=>Ra.jsxs("span",{"aria-hidden":!0,className:_a("flex h-9 w-9 items-center justify-center",e),...a,children:[Ra.jsx(Ie,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"More pages"})]});ai.displayName="PaginationEllipsis";const ti=e.forwardRef(({className:e,value:a,...t},s)=>Ra.jsx(ua.Root,{ref:s,className:_a("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",e),...t,children:Ra.jsx(ua.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(a||0)}%)`}})}));ti.displayName=ua.Root.displayName;const si=e.forwardRef(({className:e,...a},t)=>Ra.jsx(fa.Root,{className:_a("grid gap-2",e),...a,ref:t}));si.displayName=fa.Root.displayName;const ri=e.forwardRef(({className:e,...a},t)=>Ra.jsx(fa.Item,{ref:t,className:_a("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",e),...a,children:Ra.jsx(fa.Indicator,{className:"flex items-center justify-center",children:Ra.jsx(_,{className:"h-2.5 w-2.5 fill-current text-current"})})}));ri.displayName=fa.Item.displayName;const ni=e.forwardRef(({className:e,orientation:a="horizontal",decorative:t=!0,...s},r)=>Ra.jsx(pa.Root,{ref:r,decorative:t,orientation:a,className:_a("shrink-0 bg-border","horizontal"===a?"h-[1px] w-full":"h-full w-[1px]",e),...s}));ni.displayName=pa.Root.displayName;const ii=y.Root,oi=y.Trigger,li=y.Close,ci=y.Portal,di=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Overlay,{className:_a("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",e),...a,ref:t}));di.displayName=y.Overlay.displayName;const mi=u("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"}}),ui=e.forwardRef(({side:e="right",className:a,children:t,...s},r)=>Ra.jsxs(ci,{children:[Ra.jsx(di,{}),Ra.jsxs(y.Content,{ref:r,className:_a(mi({side:e}),a),...s,children:[t,Ra.jsxs(y.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:[Ra.jsx(v,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));ui.displayName=y.Content.displayName;const fi=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col space-y-2 text-center sm:text-left",e),...a});fi.displayName="SheetHeader";const pi=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});pi.displayName="SheetFooter";const hi=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Title,{ref:t,className:_a("text-lg font-semibold text-foreground",e),...a}));hi.displayName=y.Title.displayName;const xi=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Description,{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));xi.displayName=y.Description.displayName;const gi=ha.Provider,bi=ha.Root,yi=ha.Trigger,vi=e.forwardRef(({className:e,sideOffset:a=4,...t},s)=>Ra.jsx(ha.Content,{ref:s,sideOffset:a,className:_a("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",e),...t}));vi.displayName=ha.Content.displayName;const Ni="sidebar:state",ji=e.createContext(null);function wi(){const a=e.useContext(ji);if(!a)throw new Error("useSidebar must be used within a SidebarProvider.");return a}const ki=e.forwardRef(({defaultOpen:a=!0,open:t,onOpenChange:s,className:r,style:n,children:i,...o},l)=>{const[c,d]=e.useState(!1);e.useEffect(()=>{const e=()=>d(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const[m,u]=e.useState(!1),[f,p]=e.useState(()=>{if("undefined"!=typeof window){const e=localStorage.getItem(Ni);return null!==e?"true"===e:a}return a}),h=t??f,x=e.useCallback(e=>{const a="function"==typeof e?e(h):e;s?s(a):p(a),"undefined"!=typeof window&&localStorage.setItem(Ni,String(a))},[s,h]),g=e.useCallback(()=>c?u(e=>!e):x(e=>!e),[c,x,u]);e.useEffect(()=>{const e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),g())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[g]);const b=h?"expanded":"collapsed",y=e.useMemo(()=>({state:b,open:h,setOpen:x,isMobile:c,openMobile:m,setOpenMobile:u,toggleSidebar:g}),[b,h,x,c,m,u,g]);return Ra.jsx(ji.Provider,{value:y,children:Ra.jsx(gi,{delayDuration:0,children:Ra.jsx("div",{className:_a("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar sidebar-container",r),style:{"--sidebar-width":"16rem","--sidebar-width-icon":"4.5rem",...n},ref:l,...o,children:i})})})});ki.displayName="SidebarProvider";const Si=e.forwardRef(({side:e="left",variant:a="sidebar",collapsible:t="offcanvas",className:s,children:r,...n},i)=>{const{isMobile:o,state:l,openMobile:c,setOpenMobile:d}=wi();return"none"===t?Ra.jsx("div",{className:_a("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",s),ref:i,...n,children:r}):o?Ra.jsx(ii,{open:c,onOpenChange:d,...n,children:Ra.jsxs(ui,{"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:e,children:[Ra.jsx(hi,{className:"sr-only",children:"Menu de Navegação"}),Ra.jsx("div",{className:"flex h-full w-full flex-col",children:r})]})}):Ra.jsxs("div",{ref:i,className:"group peer hidden md:block text-sidebar-foreground","data-state":l,"data-collapsible":"collapsed"===l?t:"","data-variant":a,"data-side":e,children:[Ra.jsx("div",{className:_a("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===a||"inset"===a?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),Ra.jsx("div",{className:_a("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex","left"===e?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]","floating"===a||"inset"===a?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",s),...n,children:Ra.jsx("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow bg-white",children:r})})]})});Si.displayName="Sidebar";const Ci=e.forwardRef(({className:e,onClick:a,...t},s)=>{const{toggleSidebar:r}=wi();return Ra.jsxs(Oa,{ref:s,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:_a("h-7 w-7",e),onClick:e=>{a?.(e),r()},...t,children:[Ra.jsx(Oe,{}),Ra.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});Ci.displayName="SidebarTrigger";const Ti=e.forwardRef(({className:e,...a},t)=>{const{toggleSidebar:s}=wi();return Ra.jsx("button",{ref:t,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:s,title:"Toggle Sidebar",className:_a("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",e),...a})});Ti.displayName="SidebarRail";const Ri=e.forwardRef(({className:e,...a},t)=>Ra.jsx("main",{ref:t,className:_a("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",e),...a}));Ri.displayName="SidebarInset";const _i=e.forwardRef(({className:e,...a},t)=>Ra.jsx(za,{ref:t,"data-sidebar":"input",className:_a("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",e),...a}));_i.displayName="SidebarInput";const Pi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"header",className:_a("flex flex-col gap-2 p-2",e),...a}));Pi.displayName="SidebarHeader";const Ei=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"footer",className:_a("flex flex-col gap-2 p-2",e),...a}));Ei.displayName="SidebarFooter";const Ai=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ni,{ref:t,"data-sidebar":"separator",className:_a("mx-2 w-auto bg-sidebar-border",e),...a}));Ai.displayName="SidebarSeparator";const Ii=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"content",className:_a("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...a}));Ii.displayName="SidebarContent";const Di=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"group",className:_a("relative flex w-full min-w-0 flex-col p-2",e),...a}));Di.displayName="SidebarGroup";const Oi=e.forwardRef(({className:e,asChild:a=!1,...t},s)=>{const r=a?d:"div";return Ra.jsx(r,{ref:s,"data-sidebar":"group-label",className:_a("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",e),...t})});Oi.displayName="SidebarGroupLabel";const zi=e.forwardRef(({className:e,asChild:a=!1,...t},s)=>{const r=a?d:"button";return Ra.jsx(r,{ref:s,"data-sidebar":"group-action",className:_a("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",e),...t})});zi.displayName="SidebarGroupAction";const Fi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"group-content",className:_a("w-full text-sm",e),...a}));Fi.displayName="SidebarGroupContent";const $i=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ul",{ref:t,"data-sidebar":"menu",className:_a("flex w-full min-w-0 flex-col gap-1",e),...a}));$i.displayName="SidebarMenu";const Li=e.forwardRef(({className:e,...a},t)=>Ra.jsx("li",{ref:t,"data-sidebar":"menu-item",className:_a("group/menu-item relative",e),...a}));Li.displayName="SidebarMenuItem";const Mi=u("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"}}),Vi=e.forwardRef(({asChild:e=!1,isActive:a=!1,variant:t="default",size:s="default",tooltip:r,className:n,...i},o)=>{const l=e?d:"button",{isMobile:c,state:m}=wi(),u=Ra.jsx(l,{ref:o,"data-sidebar":"menu-button","data-size":s,"data-active":a,className:_a(Mi({variant:t,size:s}),n),...i});return r?("string"==typeof r&&(r={children:r}),Ra.jsxs(bi,{children:[Ra.jsx(yi,{asChild:!0,children:u}),Ra.jsx(vi,{side:"right",align:"center",hidden:"collapsed"!==m||c,...r})]})):u});Vi.displayName="SidebarMenuButton";const Ui=e.forwardRef(({className:e,asChild:a=!1,showOnHover:t=!1,...s},r)=>{const n=a?d:"button";return Ra.jsx(n,{ref:r,"data-sidebar":"menu-action",className:_a("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",t&&"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",e),...s})});Ui.displayName="SidebarMenuAction";const Bi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"menu-badge",className:_a("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",e),...a}));Bi.displayName="SidebarMenuBadge";const Wi=e.forwardRef(({className:a,showIcon:t=!1,...s},r)=>{const n=e.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return Ra.jsxs("div",{ref:r,"data-sidebar":"menu-skeleton",className:_a("rounded-md h-8 flex gap-2 px-2 items-center",a),...s,children:[t&&Ra.jsx("div",{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),Ra.jsx("div",{className:"h-4 flex-1 max-w-[--skeleton-width] skeleton-width","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":n}})]})});Wi.displayName="SidebarMenuSkeleton";const qi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ul",{ref:t,"data-sidebar":"menu-sub",className:_a("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",e),...a}));qi.displayName="SidebarMenuSub";const Hi=e.forwardRef(({...e},a)=>Ra.jsx("li",{ref:a,...e}));Hi.displayName="SidebarMenuSubItem";const Qi=e.forwardRef(({asChild:e=!1,size:a="md",isActive:t,className:s,...r},n)=>{const i=e?d:"a";return Ra.jsx(i,{ref:n,"data-sidebar":"menu-sub-button","data-size":a,"data-active":t,className:_a("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),...r})});Qi.displayName="SidebarMenuSubButton";const Ji=e.forwardRef(({className:e,...a},t)=>Ra.jsxs(xa.Root,{ref:t,className:_a("relative flex w-full touch-none select-none items-center",e),...a,children:[Ra.jsx(xa.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:Ra.jsx(xa.Range,{className:"absolute h-full bg-primary"})}),Ra.jsx(xa.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"})]}));Ji.displayName=xa.Root.displayName;const Ki=({...e})=>{const{theme:a="system"}=ga();return Ra.jsx(ta,{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"}},...e})};function Xi(e,a,{checkForDefaultPrevented:t=!0}={}){return function(s){if(e?.(s),!1===t||!s.defaultPrevented)return a?.(s)}}function Gi(e,a){if("function"==typeof e)return e(a);null!=e&&(e.current=a)}function Yi(...a){return e.useCallback(function(...e){return a=>{let t=!1;const s=e.map(e=>{const s=Gi(e,a);return t||"function"!=typeof s||(t=!0),s});if(t)return()=>{for(let a=0;a<s.length;a++){const t=s[a];"function"==typeof t?t():Gi(e[a],null)}}}}(...a),a)}function Zi(...a){const t=a[0];if(1===a.length)return t;const s=()=>{const s=a.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(a){const r=s.reduce((e,{useScope:t,scopeName:s})=>({...e,...t(a)[`__scope${s}`]}),{});return e.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return s.scopeName=t.scopeName,s}var eo=globalThis?.document?e.useLayoutEffect:()=>{},ao=e[" useInsertionEffect ".trim().toString()]||eo;function to({prop:a,defaultProp:t,onChange:s=()=>{},caller:r}){const[n,i,o]=function({defaultProp:a,onChange:t}){const[s,r]=e.useState(a),n=e.useRef(s),i=e.useRef(t);return ao(()=>{i.current=t},[t]),e.useEffect(()=>{n.current!==s&&(i.current?.(s),n.current=s)},[s,n]),[s,r,i]}({defaultProp:t,onChange:s}),l=void 0!==a,c=l?a:n;{const t=e.useRef(void 0!==a);e.useEffect(()=>{const e=t.current;if(e!==l){}t.current=l},[l,r])}const d=e.useCallback(e=>{if(l){const t=function(e){return"function"==typeof e}(e)?e(a):e;t!==a&&o.current?.(t)}else i(e)},[l,a,i,o]);return[c,d]}var so=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,t)=>{const s=m(`Primitive.${t}`),r=e.forwardRef((e,a)=>{const{asChild:r,...n}=e,i=r?s:t;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),Ra.jsx(i,{...n,ref:a})});return r.displayName=`Primitive.${t}`,{...a,[t]:r}},{}),ro="Switch",[no]=function(a,t=[]){let s=[];const r=()=>{const t=s.map(a=>e.createContext(a));return function(s){const r=s?.[a]||t;return e.useMemo(()=>({[`__scope${a}`]:{...s,[a]:r}}),[s,r])}};return r.scopeName=a,[function(t,r){const n=e.createContext(r),i=s.length;s=[...s,r];const o=t=>{const{scope:s,children:r,...o}=t,l=s?.[a]?.[i]||n,c=e.useMemo(()=>o,Object.values(o));return Ra.jsx(l.Provider,{value:c,children:r})};return o.displayName=t+"Provider",[o,function(s,o){const l=o?.[a]?.[i]||n,c=e.useContext(l);if(c)return c;if(void 0!==r)return r;throw new Error(`\`${s}\` must be used within \`${t}\``)}]},Zi(r,...t)]}(ro),[io,oo]=no(ro),lo=e.forwardRef((a,t)=>{const{__scopeSwitch:s,name:r,checked:n,defaultChecked:i,required:o,disabled:l,value:c="on",onCheckedChange:d,form:m,...u}=a,[f,p]=e.useState(null),h=Yi(t,e=>p(e)),x=e.useRef(!1),g=!f||(m||!!f.closest("form")),[b,y]=to({prop:n,defaultProp:i??!1,onChange:d,caller:ro});return Ra.jsxs(io,{scope:s,checked:b,disabled:l,children:[Ra.jsx(so.button,{type:"button",role:"switch","aria-checked":b,"aria-required":o,"data-state":fo(b),"data-disabled":l?"":void 0,disabled:l,value:c,...u,ref:h,onClick:Xi(a.onClick,e=>{y(e=>!e),g&&(x.current=e.isPropagationStopped(),x.current||e.stopPropagation())})}),g&&Ra.jsx(uo,{control:f,bubbles:!x.current,name:r,value:c,checked:b,required:o,disabled:l,form:m,style:{transform:"translateX(-100%)"}})]})});lo.displayName=ro;var co="SwitchThumb",mo=e.forwardRef((e,a)=>{const{__scopeSwitch:t,...s}=e,r=oo(co,t);return Ra.jsx(so.span,{"data-state":fo(r.checked),"data-disabled":r.disabled?"":void 0,...s,ref:a})});mo.displayName=co;var uo=e.forwardRef(({__scopeSwitch:a,control:t,checked:s,bubbles:r=!0,...n},i)=>{const o=e.useRef(null),l=Yi(o,i),c=function(a){const t=e.useRef({value:a,previous:a});return e.useMemo(()=>(t.current.value!==a&&(t.current.previous=t.current.value,t.current.value=a),t.current.previous),[a])}(s),d=function(a){const[t,s]=e.useState(void 0);return eo(()=>{if(a){s({width:a.offsetWidth,height:a.offsetHeight});const e=new ResizeObserver(e=>{if(!Array.isArray(e))return;if(!e.length)return;const t=e[0];let r,n;if("borderBoxSize"in t){const e=t.borderBoxSize,a=Array.isArray(e)?e[0]:e;r=a.inlineSize,n=a.blockSize}else r=a.offsetWidth,n=a.offsetHeight;s({width:r,height:n})});return e.observe(a,{box:"border-box"}),()=>e.unobserve(a)}s(void 0)},[a]),t}(t);return e.useEffect(()=>{const e=o.current;if(!e)return;const a=window.HTMLInputElement.prototype,t=Object.getOwnPropertyDescriptor(a,"checked").set;if(c!==s&&t){const a=new Event("click",{bubbles:r});t.call(e,s),e.dispatchEvent(a)}},[c,s,r]),Ra.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:s,...n,tabIndex:-1,ref:l,style:{...n.style,...d,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function fo(e){return e?"checked":"unchecked"}uo.displayName="SwitchBubbleInput";var po=lo,ho=mo;const xo=e.forwardRef(({className:e,...a},t)=>Ra.jsx(po,{className:_a("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",e),...a,ref:t,children:Ra.jsx(ho,{className:_a("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")})}));xo.displayName=po.displayName;const go={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},bo={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},yo={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"};function vo({children:e,direction:a="column",gap:t="md",align:s="stretch",justify:r="start",wrap:n=!1,className:i}){return Ra.jsx("div",{className:_a("flex","column"===a?"flex-col":"flex-row",go[t],bo[s],yo[r],n&&"flex-wrap",i),children:e})}const No=ba.Root,jo=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ba.List,{ref:t,className:_a("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...a}));jo.displayName=ba.List.displayName;const wo=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ba.Trigger,{ref:t,className:_a("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",e),...a}));wo.displayName=ba.Trigger.displayName;const ko=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ba.Content,{ref:t,className:_a("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...a}));function So({children:e,className:a}){return Ra.jsx("div",{className:_a("flex flex-col h-full",a),children:Ra.jsx(Tr,{className:"flex-1",children:Ra.jsx("div",{className:"space-y-6 p-6",children:e})})})}function Co({title:e,description:a,actions:t,className:s}){return Ra.jsxs("div",{className:_a("space-y-4",s),children:[Ra.jsxs("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[Ra.jsxs("div",{className:"space-y-1",children:[Ra.jsx("h2",{className:"text-2xl font-bold tracking-tight",children:e}),a&&Ra.jsx("p",{className:"text-muted-foreground text-sm",children:a})]}),t&&Ra.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:t})]}),Ra.jsx(ni,{})]})}function To({children:e,className:a}){return Ra.jsx("div",{className:_a("space-y-6",a),children:e})}ko.displayName=ba.Content.displayName;const Ro=u("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"}}),_o=e.forwardRef(({className:e,variant:a,size:t,...s},r)=>Ra.jsx(ya.Root,{ref:r,className:_a(Ro({variant:a,size:t,className:e})),...s}));_o.displayName=ya.Root.displayName;const Po=e.createContext({size:"default",variant:"default"}),Eo=e.forwardRef(({className:e,variant:a,size:t,children:s,...r},n)=>Ra.jsx(va.Root,{ref:n,className:_a("flex items-center justify-center gap-1",e),...r,children:Ra.jsx(Po.Provider,{value:{variant:a,size:t},children:s})}));Eo.displayName=va.Root.displayName;const Ao=e.forwardRef(({className:a,children:t,variant:s,size:r,...n},i)=>{const o=e.useContext(Po);return Ra.jsx(va.Item,{ref:i,className:_a(Ro({variant:o.variant||s,size:o.size||r}),a),...n,children:t})});Ao.displayName=va.Item.displayName;const Io=a.forwardRef(({variant:e="default",className:a,children:t,...s},r)=>Ra.jsx(Oa,{ref:r,variant:"outline",size:"sm",className:_a("h-7 px-2 text-xs","border-primary/20 text-primary hover:bg-primary/5",a),...s,children:t||Ra.jsx(D,{size:12})}));function Do({manager:e,config:a,onEdit:t,onDelete:s}){return e.isLoading?Ra.jsx(Hn,{children:Array.from({length:3}).map((e,a)=>Ra.jsxs(La,{children:[Ra.jsxs(Ma,{children:[Ra.jsx(Ks,{className:"h-4 w-3/4"}),Ra.jsx(Ks,{className:"h-3 w-1/2"})]}),Ra.jsx(Ba,{children:Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsx(Ks,{className:"h-3 w-full"}),Ra.jsx(Ks,{className:"h-3 w-2/3"})]})})]},a))}):Ra.jsx(Un.Root,{children:e.entities.map(e=>Ra.jsxs(Un.Item,{onClick:()=>t(e),children:[Ra.jsx(Ma,{className:"pb-3",children:Ra.jsxs("div",{className:"flex items-start justify-between",children:[Ra.jsxs("div",{className:"flex-1 min-w-0",children:[Ra.jsx(Va,{className:"text-base leading-6 truncate",children:e.title||e.name||"Sem título"}),Ra.jsx(Ua,{className:"text-sm",children:g(new Date(e.created_at),"dd/MM/yyyy HH:mm",{locale:Rn})})]}),Ra.jsxs("div",{className:"flex items-center gap-2 ml-2",children:[e.link&&Ra.jsx(Oa,{variant:"external-link",size:"icon-xs",onClick:a=>{a.stopPropagation(),(e=>{try{const a=window.open(e,"_blank");a&&!a.closed&&void 0!==a.closed||(navigator.clipboard.writeText(e),aa.info("Link copiado para a área de transferência"))}catch(a){window.location.href=e}})(e.link)},title:"Abrir link externo",children:Ra.jsx(ze,{className:"h-4 w-4"})}),Ra.jsx("div",{onClick:e=>e.stopPropagation(),children:Ra.jsx(yr,{onEdit:()=>t(e),onDelete:s?()=>s(e):void 0,canDelete:!!s})})]})]})}),Ra.jsx(Ba,{className:"pt-0",children:Ra.jsx("div",{className:"space-y-2",children:a.cardFields?.map(a=>{const t=e[a.key];return t?Ra.jsx(Un.Field,{label:a.label,value:a.render?a.render(t,e):String(t)},String(a.key)):null})})})]},e.id))})}function Oo({manager:e,filters:a}){const{isSearchVisible:t}=Dr(),s=e.searchTerm;return Ra.jsx(vo,{direction:"column",gap:"md",className:"mb-6",children:Ra.jsxs(vo,{direction:"row",gap:"md",wrap:!0,className:"flex-col sm:flex-row",children:[a.some(e=>"search"===e.type)&&!t&&Ra.jsxs("div",{className:"relative flex-1",children:[Ra.jsx(C,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),Ra.jsx(za,{placeholder:"Buscar...",value:e.searchTerm,onChange:a=>e.handleSearch(a.target.value),className:"pl-10"})]}),a.filter(e=>"custom"===e.type&&e.component).map((e,a)=>{const t=e.component;return Ra.jsx("div",{className:"w-full sm:w-auto",children:Ra.jsx(t,{...e.props})},a)}),s&&Ra.jsxs(Oa,{variant:"outline",onClick:e.clearFilters,className:"whitespace-nowrap",children:[Ra.jsx(v,{className:"h-4 w-4 mr-2"}),"Limpar Filtros"]})]})})}function zo(e){const a=Ze();return{onNew:()=>{const t=e.newPath||`${e.basePath}/new`;a(t)},onEdit:t=>{const s=e.editPath?e.editPath.replace(":id",t.id):`${e.basePath}/${t.id}/edit`;a(s)}}}function Fo(e){return zo({basePath:e})}function $o({open:e,onCancel:a,onSubmit:t,editingEntity:s,isLoading:r=!1,title:n,editTitle:i,sections:o,transformData:l}){const{alias:c}=Dr();return Ra.jsx(Lr,{open:e,title:s?i:n,sections:o,initialData:s,onSubmit:e=>{if(l){const a=l(e,c||"");t(a)}else{const a={...e,alias:c||""};s?.id&&(a.id=s.id),t(a)}},onCancel:a,isLoading:r,submitButtonText:s?"Atualizar":"Salvar"})}Io.displayName="ActionButton";const Lo=a.memo(({variant:e="card",className:t="",selectedUnit:s,onUnitChange:r})=>{const{user:n,companies:i,alias:o,isAuthenticated:l,logout:c,switchUnit:d}=Dr(),m=i?.[0]||null,u=o?i?.find(e=>e.alias===o):m,f=i||[],p=s||u||m||m,h=a.useCallback(e=>{r?r(e):d(e)},[r,d]),x=a.useMemo(()=>{if(!f?.length)return[];const e=new Map;f.forEach(a=>{e.set(a.alias,a)});const a=Array.from(e.values()),t=a.find(e=>e.alias===p?.alias),s=a.filter(e=>e.alias!==p?.alias);return s.sort((e,a)=>(e.name||"").localeCompare(a.name||"","pt-BR",{sensitivity:"base"})),t?[t,...s]:s},[f,p?.alias]);if(!l||!n)return null;const g=()=>Ra.jsxs(Ra.Fragment,{children:[Ra.jsxs("div",{className:"flex items-center space-x-3",children:[Ra.jsx("div",{className:"flex-shrink-0",children:Ra.jsx("div",{className:"w-10 h-10 bg-primary rounded-full flex items-center justify-center",children:Ra.jsx(Ce,{className:"h-5 w-5 text-primary-foreground"})})}),Ra.jsxs("div",{className:"flex-1 min-w-0",children:[Ra.jsx("p",{className:"text-sm font-medium truncate",children:n.name}),Ra.jsxs("p",{className:"text-xs text-muted-foreground",children:["Unidade: ",p?.name||"N/A"]})]})]}),p&&Ra.jsx("div",{className:"mt-3",children:Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsx(Fe,{className:"h-4 w-4 text-muted-foreground"}),Ra.jsx("span",{className:"text-sm font-medium",children:p.name})]})}),x.length>1&&Ra.jsxs("div",{className:"mt-2",children:[Ra.jsxs("p",{className:"text-xs text-muted-foreground mb-1",children:["Unidades disponíveis: ",x.length]}),Ra.jsxs("div",{className:"flex flex-wrap gap-1",children:[x.slice(0,3).map(e=>Ra.jsx(vt,{variant:e.alias===p?.alias?"default":"secondary",className:"text-xs cursor-pointer",onClick:()=>h(e),children:e.name},e.alias)),x.length>3&&Ra.jsxs(vt,{variant:"outline",className:"text-xs",children:["+",x.length-3]})]})]})]});return"dropdown"===e?Ra.jsxs(sr,{children:[Ra.jsx(rr,{asChild:!0,children:Ra.jsx(Oa,{variant:"ghost",className:`h-auto p-2 ${t}`,children:Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsxs("div",{className:"hidden md:block text-left",children:[Ra.jsx("p",{className:"text-sm font-medium",children:n.name}),Ra.jsx("p",{className:"text-xs text-muted-foreground",children:p?.name||"N/A"})]}),Ra.jsx("div",{className:"w-8 h-8 bg-primary rounded-full flex items-center justify-center",children:Ra.jsx(Ce,{className:"h-4 w-4 text-primary-foreground"})}),Ra.jsx(N,{className:"h-4 w-4"})]})})}),Ra.jsxs(mr,{className:"w-56 bg-background border border-border shadow-lg z-50",align:"end",children:[Ra.jsxs(or,{children:[Ra.jsxs(cr,{children:[Ra.jsx(Ae,{className:"mr-2 h-4 w-4"}),"Alterar Unidade"]}),Ra.jsx(dr,{children:x.map(e=>Ra.jsxs(ur,{onClick:()=>h(e),className:e.alias===p?.alias?"bg-muted":"",children:[Ra.jsx(Fe,{className:"mr-2 h-4 w-4"}),e.name,e.alias===p?.alias&&Ra.jsx(vt,{variant:"outline",className:"ml-2 text-xs",children:"Atual"})]},e.alias))})]}),Ra.jsx(xr,{}),Ra.jsx(Bn,{variant:"menuItem"}),Ra.jsxs(ur,{onClick:c,children:[Ra.jsx($e,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]}):Ra.jsxs(La,{className:t,children:[Ra.jsx(Ma,{children:Ra.jsx(Va,{className:"text-lg",children:"Informações do Usuário"})}),Ra.jsxs(Ba,{className:"space-y-4",children:[Ra.jsx(g,{}),Ra.jsx(ni,{}),Ra.jsxs("div",{className:"flex space-x-2",children:[Ra.jsx(Bn,{className:"flex-1"}),Ra.jsxs(Oa,{variant:"outline",onClick:c,size:"sm",className:"flex-1",children:[Ra.jsx($e,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]})]})}),Mo=i({});function Vo({children:e,config:a}){return Ra.jsx(Mo.Provider,{value:{navigation:a?.navigation,appName:a?.appName},children:e})}function Uo(){return o(Mo)}function Bo(){const e=Ye(),{navigation:a}=Uo(),t=a?.find(a=>a.path===e.pathname);return t?.label||"Página"}function Wo(e,a){const[t,i]=r(e),o=l(),c=s(()=>{o.current&&(clearTimeout(o.current),o.current=void 0)},[]);return n(()=>(c(),o.current=setTimeout(()=>{i(e)},a),c),[e,a,c]),[t,c]}const qo=({actions:e})=>{const a=Ye(),t=Bo(),{navigation:s,appName:i}=Uo(),{companies:o,alias:l,isSearchVisible:c,clearSearch:d,refreshData:m,switchUnit:u}=Dr(),f=l?o?.find(e=>e.alias===l)||o?.[0]||null:o?.[0]||null,[p,h]=Ge(),[x,g]=r(()=>p.get("search")||""),[b,y]=Wo(x,rs.debounceDelay);n(()=>{if(!c)return;const e=new URLSearchParams(p);b?(e.set("search",b),e.set("page","1")):e.delete("search"),h(e)},[b,h,c]);const N=s?.find(e=>e.path===a.pathname);return Ra.jsx("header",{className:"bg-white border-b border-gray-200 px-2 md:px-4 py-2",children:Ra.jsxs("div",{className:"flex items-center justify-between gap-4",children:[Ra.jsx("div",{className:"flex items-center space-x-1 md:space-x-2 min-w-0",children:Ra.jsxs("div",{className:"min-w-0 flex flex-col md:flex-row md:items-center md:space-x-3 space-y-2 md:space-y-0",children:[Ra.jsxs("div",{className:"min-w-0",children:[Ra.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[Ra.jsx("h1",{className:"text-lg font-semibold text-foreground truncate",children:t}),Ra.jsx(vt,{variant:"default",className:"bg-primary hover:bg-primary/90 text-primary-foreground text-xs px-2 py-1",children:i||"Módulo"})]}),Ra.jsx("p",{className:"text-sm text-muted-foreground truncate",children:N?.complementaryText||"Detalhes do item"})]}),c&&Ra.jsxs("div",{className:"flex items-center space-x-1 w-full md:w-auto",children:[Ra.jsxs("div",{className:"relative w-full md:w-48",children:[Ra.jsx(C,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),Ra.jsx(za,{placeholder:"/wiki"===a.pathname?"Buscar artigos...":"Buscar...",value:x,onChange:e=>(e=>{g(e)})(e.target.value),className:"w-full pl-10 pr-8"}),x&&Ra.jsx(Oa,{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:()=>{y(),g("");const e=new URLSearchParams(p);e.delete("search"),e.delete("page"),h(e)},title:"Limpar busca",children:Ra.jsx(v,{size:14})})]}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:m,className:"flex-shrink-0 h-10 w-10 p-0",title:"Atualizar dados",children:Ra.jsx(Ae,{size:14})})]})]})}),Ra.jsxs("div",{className:"flex-shrink-0 flex items-center gap-3",children:[e&&Ra.jsx("div",{className:"flex items-center gap-2",children:e}),Ra.jsx("div",{className:"text-sm",children:Ra.jsx(Lo,{variant:"dropdown",selectedUnit:f,onUnitChange:u})})]})]})})},Ho=(e={})=>{const{enabled:a=!0}=e,{alias:t}=Dr();return Je({queryKey:["active-modules",t],queryFn:async()=>{if(!t)return[];const e=ys(),{data:a,error:s}=await e.schema("central").from("modules").select("\n id, name, url,\n modules_alias!inner(alias)\n ").eq("modules_alias.alias",t).eq("status","active").order("name");if(s){if(!Er.handleError(s))throw s;return[]}return a||[]},enabled:a&&!!t})},Qo=({key:e,enabled:a,checkFn:t,staleTime:s=3e5,gcTime:r=6e5})=>Je({queryKey:["permission",e],queryFn:t,enabled:a,staleTime:s,gcTime:r,retry:0,refetchOnWindowFocus:!1}),Jo=import.meta.env.VITE_SUPABASE_PROJECT_ID,Ko={logo:`https://${Jo}.supabase.co/storage/v1/object/public/library-assets/logo.svg`,smallLogo:`https://${Jo}.supabase.co/storage/v1/object/public/library-assets/small.svg`},Xo=Ko.logo,Go=Ko.smallLogo,Yo="forlogic-sidebar-pinned",Zo=()=>{try{const e=localStorage.getItem(Yo);return!!e&&JSON.parse(e)}catch{return!1}};function el({config:e}={}){const{state:a,open:t,setOpen:s}=wi(),i=Ye(),{alias:o,user:l}=Dr(),[c,d]=r(!1),[m,u]=r(Zo),[f,p]=r(!1);n(()=>{s(!!m||!(!f&&!c))},[m,f,c,s]);const{data:h,isLoading:x,error:g}=Ho({enabled:c}),b=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]};return Ra.jsxs(Si,{collapsible:"icon",onMouseEnter:()=>{m||p(!0)},onMouseLeave:()=>{m||p(!1)},className:"app-sidebar transition-all duration-300 ease-in-out bg-white border-r border-gray-200 py-6 px-3",children:[Ra.jsxs(Pi,{className:"p-0 gap-0",children:[Ra.jsx("div",{className:"flex items-center justify-between h-[34px]",children:t?Ra.jsxs(Ra.Fragment,{children:[Ra.jsx("div",{className:"flex items-center pl-[12px]",children:Ra.jsx("img",{src:Ko.logo,alt:"Logo",className:"h-6 max-w-full object-contain"})}),Ra.jsx("button",{onClick:()=>{const e=!m;u(e),(e=>{try{localStorage.setItem(Yo,JSON.stringify(e))}catch{}})(e)},className:"h-8 w-8 flex items-center justify-center rounded-md transition-colors duration-200 "+(m?"bg-primary text-primary-foreground":"hover:bg-muted text-muted-foreground"),children:Ra.jsx(Oe,{className:"h-4 w-4"})})]}):Ra.jsx("div",{className:"flex items-center justify-center w-full h-[34px]",children:Ra.jsx("img",{src:Ko.smallLogo,alt:"Logo",className:"h-[34px] w-[34px] object-contain"})})}),Ra.jsx("div",{className:"mt-2 pt-0",children:Ra.jsxs(sr,{onOpenChange:d,children:[Ra.jsx(rr,{asChild:!0,children:t?Ra.jsxs("div",{className:"bg-muted hover:bg-muted/80 text-foreground font-medium text-sm flex items-center justify-between cursor-pointer transition-all duration-200 h-8 px-3 gap-3 rounded-md w-full",children:[Ra.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[Ra.jsx("img",{src:"https://ccjfvpnndclajkleyqkc.supabase.co/storage/v1/object/public/library-assets/composit.svg",alt:"Menu",className:"h-6 w-6 text-muted-foreground flex-shrink-0"}),Ra.jsx("span",{className:"truncate group-data-[collapsible=icon]:hidden",children:e?.appName||"Título do módulo"})]}),Ra.jsx(N,{className:"h-6 w-6 flex-shrink-0 text-muted-foreground"})]}):Ra.jsx("div",{className:"flex items-center justify-center w-full h-8 bg-muted hover:bg-muted/80 rounded-md cursor-pointer transition-all duration-200 p-[5px]",children:Ra.jsx(N,{className:"h-6 w-6 text-muted-foreground"})})}),Ra.jsx(mr,{className:t?"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:t?"start":"center",children:x?Ra.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-muted-foreground",children:[Ra.jsx(k,{className:"h-4 w-4 animate-spin"}),Ra.jsx("span",{className:"text-sm",children:"Carregando módulos..."})]}):g?Ra.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-destructive",children:[Ra.jsx(S,{className:"h-4 w-4"}),Ra.jsx("span",{className:"text-sm",children:"Erro ao carregar módulos"})]}):h&&0!==h.length?Ra.jsx("div",{className:"space-y-2",children:h.map((e,a)=>Ra.jsx("div",{onClick:()=>(e=>{const a=h?.find(a=>a.url===e);a?.url&&window.open(a.url,"_blank")})(e.url||""),className:`\n bg-muted/50 hover:bg-muted rounded-md p-3 cursor-pointer \n border-l-4 ${b(a)} transition-colors duration-200\n `,children:Ra.jsxs("div",{className:"flex items-center justify-between",children:[Ra.jsx("span",{className:"font-medium text-foreground text-sm",children:e.name}),e.url&&Ra.jsx(ze,{className:"h-4 w-4 text-muted-foreground"})]})},e.id))}):Ra.jsx("div",{className:"py-3 px-3 text-muted-foreground text-sm",children:"Nenhum módulo disponível"})})]})})]}),Ra.jsx(Ii,{children:Ra.jsx(Di,{className:"p-0 mt-6",children:Ra.jsx(Fi,{children:Ra.jsx($i,{className:"space-y-2",children:Ra.jsx(gi,{children:e?.navigation?.map((e,a)=>{const t=({item:e,index:a})=>{const t=`${e.path}-${a}-${o??"noalias"}-${l?.id??"nouser"}`,{data:s=!0,isLoading:r}=Qo({key:t,enabled:Boolean(e.permissionCheck&&o&&l?.id),checkFn:e.permissionCheck||(()=>Promise.resolve(!0))}),n=e.permissionCheck&&!s,c=r?k:n?K:e.icon;return n||e.complementaryText,Ra.jsx(Li,{children:n||r?Ra.jsxs(bi,{children:[Ra.jsx(yi,{asChild:!0,children:Ra.jsx(Vi,{size:"lg",className:"h-10 opacity-50 cursor-not-allowed",onClick:e=>e.preventDefault(),children:Ra.jsxs("div",{className:"flex w-full items-center gap-3",children:[Ra.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:Ra.jsx(c,{className:"h-4 w-4 "+(r?"animate-spin":"")})}),Ra.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:e.label})]})})}),Ra.jsx(vi,{children:Ra.jsx("p",{children:r?"Verificando acesso...":"Acesso restrito"})})]}):Ra.jsx(Vi,{asChild:!0,isActive:(d=e.path,i.pathname===d),size:"lg",className:"h-10",children:Ra.jsxs(ea,{to:e.path,className:"flex w-full items-center gap-3",children:[Ra.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:Ra.jsx(c,{className:"h-5 w-4"})}),Ra.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:e.label})]})})},e.path);var d};return Ra.jsx(t,{item:e,index:a},e.path)})})})})})})]})}function al({children:e,sidebar:a,sidebarConfig:t,showHeader:s=!0}){const r=a||Ra.jsx(el,{config:t});return Ra.jsx(Vo,{config:t,children:Ra.jsx(ki,{defaultOpen:!1,style:{"--sidebar-width":"240px","--sidebar-width-icon":"58px"},children:Ra.jsxs("div",{className:"min-h-screen flex w-full",children:[r,Ra.jsxs("main",{className:"flex-1 flex flex-col min-h-screen",children:[s&&Ra.jsx("div",{className:"flex-shrink-0",children:Ra.jsx(qo,{})}),Ra.jsx("div",{className:"flex-1 overflow-y-auto bg-gray-50",children:e})]})]})})})}class tl extends c{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,a){es.handleError(e,!1)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:Ra.jsx("div",{className:"flex items-center justify-center min-h-screen p-4",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsxs(Ma,{className:"text-center",children:[Ra.jsx("div",{className:"flex justify-center mb-4",children:Ra.jsx(Le,{className:"h-12 w-12 text-destructive"})}),Ra.jsx(Va,{children:"Algo deu errado"})]}),Ra.jsxs(Ba,{className:"text-center space-y-4",children:[Ra.jsx("p",{className:"text-muted-foreground",children:"Ocorreu um erro inesperado. Tente recarregar a página."}),Ra.jsx(Oa,{onClick:()=>window.location.reload(),className:"w-full",children:"Recarregar Página"})]})]})}):this.props.children}}export{ts as AUTH_CONFIG,sn as Accordion,on as AccordionContent,rn as AccordionItem,nn as AccordionTrigger,Io as ActionButton,br as ActionMenuItems,Gr as Alert,Zr as AlertDescription,_s as AlertDialog,$s as AlertDialogAction,Ls as AlertDialogCancel,Is as AlertDialogContent,Fs as AlertDialogDescription,Os as AlertDialogFooter,Ds as AlertDialogHeader,As as AlertDialogOverlay,Es as AlertDialogPortal,zs as AlertDialogTitle,Ps as AlertDialogTrigger,Yr as AlertTitle,qo as AppHeader,al as AppLayout,el as AppSidebar,ln as AspectRatio,Er as AuthErrorInterceptor,Ir as AuthProvider,ms as AuthService,cn as Avatar,mn as AvatarFallback,dn as AvatarImage,vt as Badge,$r as BaseForm,un as Breadcrumb,bn as BreadcrumbEllipsis,pn as BreadcrumbItem,hn as BreadcrumbLink,fn as BreadcrumbList,xn as BreadcrumbPage,gn as BreadcrumbSeparator,Oa as Button,ss as CRUD_CONFIG,_n as Calendar,en as CallbackPage,La as Card,Ba as CardContent,Ua as CardDescription,Wa as CardFooter,Ma as CardHeader,Gs as CardSkeleton,Va as CardTitle,gt as Checkbox,Pn as Collapsible,An as CollapsibleContent,En as CollapsibleTrigger,Cr as ColorPicker,In as Command,Dn as CommandDialog,Fn as CommandEmpty,$n as CommandGroup,On as CommandInput,Mn as CommandItem,zn as CommandList,Ln as CommandSeparator,Vn as CommandShortcut,Do as CrudCards,Lr as CrudForm,vr as CrudTable,Un as DataList,Ms as DeleteConfirmationDialog,qa as Dialog,Ja as DialogClose,Xa as DialogContent,et as DialogDescription,Ya as DialogFooter,Ga as DialogHeader,Ka as DialogOverlay,Qa as DialogPortal,Za as DialogTitle,Ha as DialogTrigger,sr as DropdownMenu,fr as DropdownMenuCheckboxItem,mr as DropdownMenuContent,nr as DropdownMenuGroup,ur as DropdownMenuItem,hr as DropdownMenuLabel,ir as DropdownMenuPortal,lr as DropdownMenuRadioGroup,pr as DropdownMenuRadioItem,xr as DropdownMenuSeparator,gr as DropdownMenuShortcut,or as DropdownMenuSub,dr as DropdownMenuSubContent,cr as DropdownMenuSubTrigger,rr as DropdownMenuTrigger,tr as EmptyState,tl as ErrorBoundary,Bn as FeedbackDialog,Oo as FilterBar,at as Form,lt as FormControl,st as FormField,it as FormItem,ot as FormLabel,ct as FormMessage,Ys as FormSkeleton,$o as GenericEntityForm,Hn as Grid,Zs as HeaderSkeleton,Pr as IconPicker,za as Input,$a as Label,wt as LoadingState,an as LoginPage,ds as MESSAGES,Vo as NavigationProvider,Qn as PageBreadcrumb,Kn as Pagination,Xn as PaginationContent,ai as PaginationEllipsis,Gn as PaginationItem,Yn as PaginationLink,ei as PaginationNext,Zn as PaginationPrevious,jr as Popover,kr as PopoverContent,wr as PopoverTrigger,ti as Progress,Kr as ProtectedRoute,is as QUERY_KEYS,ks as QualiexEnrichmentService,Fr as QualiexResponsibleSelectField,zr as QualiexUserField,si as RadioGroup,ri as RadioGroupItem,rs as SEARCH_CONFIG,Tr as ScrollArea,Rr as ScrollBar,dt as Select,ht as SelectContent,xt as SelectItem,ut as SelectTrigger,mt as SelectValue,ni as Separator,ii as Sheet,li as SheetClose,ui as SheetContent,xi as SheetDescription,pi as SheetFooter,fi as SheetHeader,di as SheetOverlay,ci as SheetPortal,hi as SheetTitle,oi as SheetTrigger,Si as Sidebar,Ii as SidebarContent,Ei as SidebarFooter,Di as SidebarGroup,zi as SidebarGroupAction,Fi as SidebarGroupContent,Oi as SidebarGroupLabel,Pi as SidebarHeader,_i as SidebarInput,Ri as SidebarInset,$i as SidebarMenu,Ui as SidebarMenuAction,Bi as SidebarMenuBadge,Vi as SidebarMenuButton,Li as SidebarMenuItem,Wi as SidebarMenuSkeleton,qi as SidebarMenuSub,Qi as SidebarMenuSubButton,Hi as SidebarMenuSubItem,ki as SidebarProvider,Ti as SidebarRail,Ai as SidebarSeparator,er as SidebarSkeleton,Ci as SidebarTrigger,Ks as Skeleton,Ji as Slider,Ki as SonnerToaster,jt as Spinner,vo as Stack,xo as Switch,To as TabPageContent,Co as TabPageHeader,So as TabPageLayout,Vs as Table,Bs as TableBody,Js as TableCaption,Qs as TableCell,Ws as TableFooter,Hs as TableHead,Us as TableHeader,qs as TableRow,yr as TableRowActions,Xs as TableSkeleton,No as Tabs,ko as TabsContent,jo as TabsList,wo as TabsTrigger,bt as Textarea,zt as Toast,Ft as ToastAction,$t as ToastClose,Mt as ToastDescription,It as ToastProvider,Lt as ToastTitle,Dt as ToastViewport,Vt as Toaster,_o as Toggle,Eo as ToggleGroup,Ao as ToggleGroupItem,Gt as TokenManager,Bt as TokenService,bi as Tooltip,vi as TooltipContent,gi as TooltipProvider,yi as TooltipTrigger,Ko as assets,yt as badgeVariants,Da as buttonVariants,_a as cn,Ur as createCrudPage,zo as createRoutingHandlers,Cs as createService,Br as createSimpleSaveHandler,Rs as createSimpleService,Qr as crudPresets,Ia as debounce,es as errorService,Aa as formatCurrency,Ea as formatDatetime,Wr as generateCrudConfig,ls as getQualiexConfig,ys as getSupabaseClient,ns as isDevEnvironment,Xo as logoSrc,ws as qualiexApi,cs as setQualiexConfig,tn as setupQualiexCore,Go as smallLogoSrc,Et as toast,Ro as toggleVariants,Pa as trimTextFields,Ho as useActiveModules,Dr as useAuth,Nr as useBaseForm,Ts as useCrud,Fo as useCrudRouting,Wo as useDebounce,Uo as useNavigation,Bo as usePageTitle,Qo as usePermissionQuery,Or as useQualiexUsers,Jn as useRouteBreadcrumbs,wi as useSidebar,At as useToast,Jr as withPreset};
|
|
10
|
+
*/function Ta(){return ka||(ka=1,"production"!==process.env.NODE_ENV&&function(){var e=a,t=Symbol.for("react.element"),s=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),n=Symbol.for("react.strict_mode"),i=Symbol.for("react.profiler"),o=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),m=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),p=Symbol.for("react.offscreen"),h=Symbol.iterator;var x=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function g(e){for(var a=arguments.length,t=new Array(a>1?a-1:0),s=1;s<a;s++)t[s-1]=arguments[s];!function(e,a,t){var s=x.ReactDebugCurrentFrame,r=s.getStackAddendum();""!==r&&(a+="%s",t=t.concat([r]));var n=t.map(function(e){return String(e)});n.unshift("Warning: "+a),Function.prototype.apply.call(console[e],console,n)}("error",e,t)}var b;function y(e){return e.displayName||"Context"}function v(e){if(null==e)return null;if("number"==typeof e.tag&&g("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),"function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case r:return"Fragment";case s:return"Portal";case i:return"Profiler";case n:return"StrictMode";case d:return"Suspense";case m:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case l:return y(e)+".Consumer";case o:return y(e._context)+".Provider";case c:return function(e,a,t){var s=e.displayName;if(s)return s;var r=a.displayName||a.name||"";return""!==r?t+"("+r+")":t}(e,e.render,"ForwardRef");case u:var a=e.displayName||null;return null!==a?a:v(e.type)||"Memo";case f:var t=e,p=t._payload,h=t._init;try{return v(h(p))}catch(x){return null}}return null}b=Symbol.for("react.module.reference");var N,j,w,k,S,C,T,R=Object.assign,_=0;function P(){}P.__reactDisabledLog=!0;var E,A=x.ReactCurrentDispatcher;function I(e,a,t){if(void 0===E)try{throw Error()}catch(r){var s=r.stack.trim().match(/\n( *(at )?)/);E=s&&s[1]||""}return"\n"+E+e}var D,O=!1,z="function"==typeof WeakMap?WeakMap:Map;function $(e,a){if(!e||O)return"";var t,s=D.get(e);if(void 0!==s)return s;O=!0;var r,n=Error.prepareStackTrace;Error.prepareStackTrace=void 0,r=A.current,A.current=null,function(){if(0===_){N=console.log,j=console.info,w=console.warn,k=console.error,S=console.group,C=console.groupCollapsed,T=console.groupEnd;var e={configurable:!0,enumerable:!0,value:P,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}_++}();try{if(a){var i=function(){throw Error()};if(Object.defineProperty(i.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(i,[])}catch(p){t=p}Reflect.construct(e,[],i)}else{try{i.call()}catch(p){t=p}e.call(i.prototype)}}else{try{throw Error()}catch(p){t=p}e()}}catch(h){if(h&&t&&"string"==typeof h.stack){for(var o=h.stack.split("\n"),l=t.stack.split("\n"),c=o.length-1,d=l.length-1;c>=1&&d>=0&&o[c]!==l[d];)d--;for(;c>=1&&d>=0;c--,d--)if(o[c]!==l[d]){if(1!==c||1!==d)do{if(c--,--d<0||o[c]!==l[d]){var m="\n"+o[c].replace(" at new "," at ");return e.displayName&&m.includes("<anonymous>")&&(m=m.replace("<anonymous>",e.displayName)),"function"==typeof e&&D.set(e,m),m}}while(c>=1&&d>=0);break}}}finally{O=!1,A.current=r,function(){if(0===--_){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:R({},e,{value:N}),info:R({},e,{value:j}),warn:R({},e,{value:w}),error:R({},e,{value:k}),group:R({},e,{value:S}),groupCollapsed:R({},e,{value:C}),groupEnd:R({},e,{value:T})})}_<0&&g("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}(),Error.prepareStackTrace=n}var u=e?e.displayName||e.name:"",f=u?I(u):"";return"function"==typeof e&&D.set(e,f),f}function F(e,a,t){if(null==e)return"";if("function"==typeof e)return $(e,function(e){var a=e.prototype;return!(!a||!a.isReactComponent)}(e));if("string"==typeof e)return I(e);switch(e){case d:return I("Suspense");case m:return I("SuspenseList")}if("object"==typeof e)switch(e.$$typeof){case c:return $(e.render,!1);case u:return F(e.type,a,t);case f:var s=e,r=s._payload,n=s._init;try{return F(n(r),a,t)}catch(i){}}return""}D=new z;var L=Object.prototype.hasOwnProperty,M={},V=x.ReactDebugCurrentFrame;function U(e){if(e){var a=e._owner,t=F(e.type,e._source,a?a.type:null);V.setExtraStackFrame(t)}else V.setExtraStackFrame(null)}var B=Array.isArray;function W(e){return B(e)}function q(e){return""+e}function H(e){if(function(e){try{return q(e),!1}catch(a){return!0}}(e))return g("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",function(e){return"function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object"}(e)),q(e)}var Q,J,K=x.ReactCurrentOwner,X={key:!0,ref:!0,__self:!0,__source:!0};function G(e,a,s,r,n){var i,o={},l=null,c=null;for(i in void 0!==s&&(H(s),l=""+s),function(e){if(L.call(e,"key")){var a=Object.getOwnPropertyDescriptor(e,"key").get;if(a&&a.isReactWarning)return!1}return void 0!==e.key}(a)&&(H(a.key),l=""+a.key),function(e){if(L.call(e,"ref")){var a=Object.getOwnPropertyDescriptor(e,"ref").get;if(a&&a.isReactWarning)return!1}return void 0!==e.ref}(a)&&(c=a.ref,function(e){"string"==typeof e.ref&&K.current}(a)),a)L.call(a,i)&&!X.hasOwnProperty(i)&&(o[i]=a[i]);if(e&&e.defaultProps){var d=e.defaultProps;for(i in d)void 0===o[i]&&(o[i]=d[i])}if(l||c){var m="function"==typeof e?e.displayName||e.name||"Unknown":e;l&&function(e,a){var t=function(){Q||(Q=!0,g("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",a))};t.isReactWarning=!0,Object.defineProperty(e,"key",{get:t,configurable:!0})}(o,m),c&&function(e,a){var t=function(){J||(J=!0,g("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",a))};t.isReactWarning=!0,Object.defineProperty(e,"ref",{get:t,configurable:!0})}(o,m)}return function(e,a,s,r,n,i,o){var l={$$typeof:t,type:e,key:a,ref:s,props:o,_owner:i,_store:{}};return Object.defineProperty(l._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(l,"_self",{configurable:!1,enumerable:!1,writable:!1,value:r}),Object.defineProperty(l,"_source",{configurable:!1,enumerable:!1,writable:!1,value:n}),Object.freeze&&(Object.freeze(l.props),Object.freeze(l)),l}(e,l,c,n,r,K.current,o)}var Y,Z=x.ReactCurrentOwner,ee=x.ReactDebugCurrentFrame;function ae(e){if(e){var a=e._owner,t=F(e.type,e._source,a?a.type:null);ee.setExtraStackFrame(t)}else ee.setExtraStackFrame(null)}function te(e){return"object"==typeof e&&null!==e&&e.$$typeof===t}function se(){if(Z.current){var e=v(Z.current.type);if(e)return"\n\nCheck the render method of `"+e+"`."}return""}Y=!1;var re={};function ne(e,a){if(e._store&&!e._store.validated&&null==e.key){e._store.validated=!0;var t=function(e){var a=se();if(!a){var t="string"==typeof e?e:e.displayName||e.name;t&&(a="\n\nCheck the top-level render call using <"+t+">.")}return a}(a);if(!re[t]){re[t]=!0;var s="";e&&e._owner&&e._owner!==Z.current&&(s=" It was passed a child from "+v(e._owner.type)+"."),ae(e),g('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,s),ae(null)}}}function ie(e,a){if("object"==typeof e)if(W(e))for(var t=0;t<e.length;t++){var s=e[t];te(s)&&ne(s,a)}else if(te(e))e._store&&(e._store.validated=!0);else if(e){var r=function(e){if(null===e||"object"!=typeof e)return null;var a=h&&e[h]||e["@@iterator"];return"function"==typeof a?a:null}(e);if("function"==typeof r&&r!==e.entries)for(var n,i=r.call(e);!(n=i.next()).done;)te(n.value)&&ne(n.value,a)}}function oe(e){var a,t=e.type;if(null!=t&&"string"!=typeof t){if("function"==typeof t)a=t.propTypes;else{if("object"!=typeof t||t.$$typeof!==c&&t.$$typeof!==u)return;a=t.propTypes}if(a){var s=v(t);!function(e,a,t,s,r){var n=Function.call.bind(L);for(var i in e)if(n(e,i)){var o=void 0;try{if("function"!=typeof e[i]){var l=Error((s||"React class")+": "+t+" type `"+i+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[i]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw l.name="Invariant Violation",l}o=e[i](a,i,s,t,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(c){o=c}!o||o instanceof Error||(U(r),g("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",s||"React class",t,i,typeof o),U(null)),o instanceof Error&&!(o.message in M)&&(M[o.message]=!0,U(r),g("Failed %s type: %s",t,o.message),U(null))}}(a,e.props,"prop",s,e)}else if(void 0!==t.PropTypes&&!Y){Y=!0,g("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",v(t)||"Unknown")}"function"!=typeof t.getDefaultProps||t.getDefaultProps.isReactClassApproved||g("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}var le={};function ce(e,a,s,h,x,y){var N=function(e){return"string"==typeof e||"function"==typeof e||e===r||e===i||e===n||e===d||e===m||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===f||e.$$typeof===u||e.$$typeof===o||e.$$typeof===l||e.$$typeof===c||e.$$typeof===b||void 0!==e.getModuleId)}(e);if(!N){var j="";(void 0===e||"object"==typeof e&&null!==e&&0===Object.keys(e).length)&&(j+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var w;j+=se(),null===e?w="null":W(e)?w="array":void 0!==e&&e.$$typeof===t?(w="<"+(v(e.type)||"Unknown")+" />",j=" Did you accidentally export a JSX literal instead of a component?"):w=typeof e,g("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",w,j)}var k=G(e,a,s,x,y);if(null==k)return k;if(N){var S=a.children;if(void 0!==S)if(h)if(W(S)){for(var C=0;C<S.length;C++)ie(S[C],e);Object.freeze&&Object.freeze(S)}else g("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else ie(S,e)}if(L.call(a,"key")){var T=v(e),R=Object.keys(a).filter(function(e){return"key"!==e}),_=R.length>0?"{key: someKey, "+R.join(": ..., ")+": ...}":"{key: someKey}";if(!le[T+_])g('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',_,T,R.length>0?"{"+R.join(": ..., ")+": ...}":"{}",T),le[T+_]=!0}return e===r?function(e){for(var a=Object.keys(e.props),t=0;t<a.length;t++){var s=a[t];if("children"!==s&&"key"!==s){ae(e),g("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",s),ae(null);break}}null!==e.ref&&(ae(e),g("Invalid attribute `ref` supplied to `React.Fragment`."),ae(null))}(k):oe(k),k}var de=function(e,a,t){return ce(e,a,t,!1)},me=function(e,a,t){return ce(e,a,t,!0)};Ca.Fragment=r,Ca.jsx=de,Ca.jsxs=me}()),Ca}var Ra=(Sa||(Sa=1,"production"===process.env.NODE_ENV?ja.exports=function(){if(Na)return wa;Na=1;var e=a,t=Symbol.for("react.element"),s=Symbol.for("react.fragment"),r=Object.prototype.hasOwnProperty,n=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function o(e,a,s){var o,l={},c=null,d=null;for(o in void 0!==s&&(c=""+s),void 0!==a.key&&(c=""+a.key),void 0!==a.ref&&(d=a.ref),a)r.call(a,o)&&!i.hasOwnProperty(o)&&(l[o]=a[o]);if(e&&e.defaultProps)for(o in a=e.defaultProps)void 0===l[o]&&(l[o]=a[o]);return{$$typeof:t,type:e,key:c,ref:d,props:l,_owner:n.current}}return wa.Fragment=s,wa.jsx=o,wa.jsxs=o,wa}():ja.exports=Ta()),ja.exports);function _a(...e){return p(f(e))}const Pa=e=>{if(null==e)return e;if("string"==typeof e)return e.trim();if(Array.isArray(e))return e.map(Pa);if("object"==typeof e&&e.constructor===Object){const a={};for(const[t,s]of Object.entries(e))a[t]=Pa(s);return a}return e},Ea=e=>{if(!e)return"";const a=h(e);if(!x(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"})}`},Aa=e=>null==e?"R$ 0,00":new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",minimumFractionDigits:2,maximumFractionDigits:2}).format(e),Ia=(e,a)=>{let t;return(...s)=>{clearTimeout(t),t=setTimeout(()=>e(...s),a)}},Da=u("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","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"}}),Oa=e.forwardRef(({className:e,variant:a,size:t,asChild:s=!1,...r},n)=>{const i=s?d:"button";return Ra.jsx(i,{className:_a(Da({variant:a,size:t,className:e})),ref:n,...r})});Oa.displayName="Button";const za=e.forwardRef(({className:e,type:a,...t},s)=>Ra.jsx("input",{type:a,className:_a("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",e),ref:s,...t}));za.displayName="Input";const $a=u("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Fa=e.forwardRef(({className:e,...a},t)=>Ra.jsx(b.Root,{ref:t,className:_a($a(),e),...a}));Fa.displayName=b.Root.displayName;const La=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("rounded-lg border bg-card text-card-foreground shadow-sm",e),...a}));La.displayName="Card";const Ma=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("flex flex-col space-y-1.5 p-6",e),...a}));Ma.displayName="CardHeader";const Va=e.forwardRef(({className:e,...a},t)=>Ra.jsx("h3",{ref:t,className:_a("text-2xl font-semibold leading-none tracking-tight",e),...a}));Va.displayName="CardTitle";const Ua=e.forwardRef(({className:e,...a},t)=>Ra.jsx("p",{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));Ua.displayName="CardDescription";const Ba=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("p-6 pt-0",e),...a}));Ba.displayName="CardContent";const Wa=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("flex items-center p-6 pt-0",e),...a}));Wa.displayName="CardFooter";const qa=y.Root,Ha=y.Trigger,Qa=y.Portal,Ja=y.Close,Ka=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Overlay,{ref:t,className:_a("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",e),...a}));Ka.displayName=y.Overlay.displayName;const Xa=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(Qa,{children:[Ra.jsx(Ka,{}),Ra.jsxs(y.Content,{ref:s,className:_a("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 bg-background 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 overflow-hidden",e),...t,children:[a,Ra.jsxs(y.Close,{className:"absolute right-4 top-4 z-10 rounded-sm text-white opacity-70 ring-offset-background transition-opacity hover:opacity-100 hover:text-white focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[Ra.jsx(v,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Xa.displayName=y.Content.displayName;const Ga=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col space-y-1.5 text-center sm:text-left bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-3 rounded-t-lg",e),...a});Ga.displayName="DialogHeader";const Ya=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});Ya.displayName="DialogFooter";const Za=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Title,{ref:t,className:_a("text-lg font-semibold leading-none tracking-tight",e),...a}));Za.displayName=y.Title.displayName;const et=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Description,{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));et.displayName=y.Description.displayName;const at=Ve,tt=e.createContext({}),st=({...e})=>Ra.jsx(tt.Provider,{value:{name:e.name},children:Ra.jsx(Ue,{...e})}),rt=()=>{const a=e.useContext(tt),t=e.useContext(nt),{getFieldState:s,formState:r}=Me(),n=s(a.name,r);if(!a)throw new Error("useFormField should be used within <FormField>");const{id:i}=t;return{id:i,name:a.name,formItemId:`${i}-form-item`,formDescriptionId:`${i}-form-item-description`,formMessageId:`${i}-form-item-message`,...n}},nt=e.createContext({}),it=e.forwardRef(({className:a,...t},s)=>{const r=e.useId();return Ra.jsx(nt.Provider,{value:{id:r},children:Ra.jsx("div",{ref:s,className:_a("space-y-2",a),...t})})});it.displayName="FormItem";const ot=e.forwardRef(({className:e,...a},t)=>{const{error:s,formItemId:r}=rt();return Ra.jsx(Fa,{ref:t,className:_a(s&&"text-destructive",e),htmlFor:r,...a})});ot.displayName="FormLabel";const lt=e.forwardRef(({...e},a)=>{const{error:t,formItemId:s,formDescriptionId:r,formMessageId:n}=rt();return Ra.jsx(d,{ref:a,id:s,"aria-describedby":t?`${r} ${n}`:`${r}`,"aria-invalid":!!t,...e})});lt.displayName="FormControl";e.forwardRef(({className:e,...a},t)=>{const{formDescriptionId:s}=rt();return Ra.jsx("p",{ref:t,id:s,className:_a("text-sm text-muted-foreground",e),...a})}).displayName="FormDescription";const ct=e.forwardRef(({className:e,children:a,...t},s)=>{const{error:r,formMessageId:n}=rt(),i=r?String(r?.message):a;return i?Ra.jsx("p",{ref:s,id:n,className:_a("text-sm font-medium text-destructive",e),...t,children:i}):null});ct.displayName="FormMessage";const dt=Be.Root,mt=Be.Value,ut=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(Be.Trigger,{ref:s,className:_a("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",e),...t,children:[a,Ra.jsx(Be.Icon,{asChild:!0,children:Ra.jsx(N,{className:"h-4 w-4 opacity-50"})})]}));ut.displayName=Be.Trigger.displayName;const ft=e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.ScrollUpButton,{ref:t,className:_a("flex cursor-default items-center justify-center py-1",e),...a,children:Ra.jsx(j,{className:"h-4 w-4"})}));ft.displayName=Be.ScrollUpButton.displayName;const pt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.ScrollDownButton,{ref:t,className:_a("flex cursor-default items-center justify-center py-1",e),...a,children:Ra.jsx(N,{className:"h-4 w-4"})}));pt.displayName=Be.ScrollDownButton.displayName;const ht=e.forwardRef(({className:e,children:a,position:t="popper",...s},r)=>Ra.jsx(Be.Portal,{children:Ra.jsxs(Be.Content,{ref:r,className:_a("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"===t&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:t,...s,children:[Ra.jsx(ft,{}),Ra.jsx(Be.Viewport,{className:_a("p-1","popper"===t&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),Ra.jsx(pt,{})]})}));ht.displayName=Be.Content.displayName;e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.Label,{ref:t,className:_a("py-1.5 pl-8 pr-2 text-sm font-semibold",e),...a})).displayName=Be.Label.displayName;const xt=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(Be.Item,{ref:s,className:_a("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",e),...t,children:[Ra.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:Ra.jsx(Be.ItemIndicator,{children:Ra.jsx(w,{className:"h-4 w-4"})})}),Ra.jsx(Be.ItemText,{children:a})]}));xt.displayName=Be.Item.displayName;e.forwardRef(({className:e,...a},t)=>Ra.jsx(Be.Separator,{ref:t,className:_a("-mx-1 my-1 h-px bg-muted",e),...a})).displayName=Be.Separator.displayName;const gt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(We.Root,{ref:t,className:_a("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",e),...a,children:Ra.jsx(We.Indicator,{className:_a("flex items-center justify-center text-current"),children:Ra.jsx(w,{className:"h-4 w-4"})})}));gt.displayName=We.Root.displayName;const bt=e.forwardRef(({className:e,...a},t)=>Ra.jsx("textarea",{className:_a("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",e),ref:t,...a}));bt.displayName="Textarea";const yt=u("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"}}),vt=e.forwardRef(({className:e,variant:a,...t},s)=>Ra.jsx("div",{ref:s,className:_a(yt({variant:a}),e),...t}));vt.displayName="Badge";const Nt={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"};function jt({size:e="md",className:a}){return Ra.jsx(k,{className:_a("animate-spin text-muted-foreground",Nt[e],a)})}function wt({isLoading:e,children:a,className:t,type:s="spinner",size:r="md"}){return e?"overlay"===s?Ra.jsxs("div",{className:_a("relative",t),children:[a,Ra.jsx("div",{className:"absolute inset-0 bg-background/50 backdrop-blur-sm flex items-center justify-center z-10",children:Ra.jsx(jt,{size:r})})]}):"skeleton"===s?Ra.jsx("div",{className:_a("animate-pulse",t),children:Ra.jsx("div",{className:"bg-muted rounded-md h-full w-full"})}):Ra.jsx("div",{className:_a("flex items-center justify-center py-8",t),children:Ra.jsx(jt,{size:r})}):Ra.jsx(Ra.Fragment,{children:a})}let kt=0;const St=new Map,Ct=e=>{if(St.has(e))return;const a=setTimeout(()=>{St.delete(e),Pt({type:"REMOVE_TOAST",toastId:e})},1e6);St.set(e,a)},Tt=(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?Ct(t):e.toasts.forEach(e=>{Ct(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)}}},Rt=[];let _t={toasts:[]};function Pt(e){_t=Tt(_t,e),Rt.forEach(e=>{e(_t)})}function Et({...e}){const a=(kt=(kt+1)%Number.MAX_SAFE_INTEGER,kt.toString()),t=()=>Pt({type:"DISMISS_TOAST",toastId:a});return Pt({type:"ADD_TOAST",toast:{...e,id:a,open:!0,onOpenChange:e=>{e||t()}}}),{id:a,dismiss:t,update:e=>Pt({type:"UPDATE_TOAST",toast:{...e,id:a}})}}function At(){const[a,t]=e.useState(_t);return e.useEffect(()=>(Rt.push(t),()=>{const e=Rt.indexOf(t);e>-1&&Rt.splice(e,1)}),[a]),{...a,toast:Et,dismiss:e=>Pt({type:"DISMISS_TOAST",toastId:e})}}const It=qe.Provider,Dt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Viewport,{ref:t,className:_a("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",e),...a}));Dt.displayName=qe.Viewport.displayName;const Ot=u("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"}}),zt=e.forwardRef(({className:e,variant:a,...t},s)=>Ra.jsx(qe.Root,{ref:s,className:_a(Ot({variant:a}),e),...t}));zt.displayName=qe.Root.displayName;const $t=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Action,{ref:t,className:_a("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",e),...a}));$t.displayName=qe.Action.displayName;const Ft=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Close,{ref:t,className:_a("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",e),"toast-close":"",...a,children:Ra.jsx(v,{className:"h-4 w-4"})}));Ft.displayName=qe.Close.displayName;const Lt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Title,{ref:t,className:_a("text-sm font-semibold",e),...a}));Lt.displayName=qe.Title.displayName;const Mt=e.forwardRef(({className:e,...a},t)=>Ra.jsx(qe.Description,{ref:t,className:_a("text-sm opacity-90",e),...a}));function Vt(){const{toasts:e}=At();return Ra.jsxs(It,{children:[e.map(function({id:e,title:a,description:t,action:s,...r}){return Ra.jsxs(zt,{...r,children:[Ra.jsxs("div",{className:"grid gap-1",children:[a&&Ra.jsx(Lt,{children:a}),t&&Ra.jsx(Mt,{children:t})]}),s,Ra.jsx(Ft,{})]},e)}),Ra.jsx(Dt,{})]})}Mt.displayName=qe.Description.displayName;var Ut=Object.defineProperty;class Bt{static normalizeBase64Url(e){let a=e.replace(/-/g,"+").replace(/_/g,"/");const t=(4-a.length%4)%4;return a+="=".repeat(t),a}static parseJwtPayload(e){try{const r=e.split(".");if(3!==r.length)return null;const n=r[1];n.length,this.LARGE_PAYLOAD_THRESHOLD;try{const e=this.normalizeBase64Url(n),a=atob(e),t=new Uint8Array(a.length);for(let r=0;r<a.length;r++)t[r]=a.charCodeAt(r);const s=new TextDecoder("utf-8").decode(t);return JSON.parse(s)}catch(a){try{const e=this.normalizeBase64Url(n),a=decodeURIComponent(atob(e).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""));return JSON.parse(a)}catch(t){try{const e=this.normalizeBase64Url(n),a=atob(e);return JSON.parse(a)}catch(s){throw s}}}}catch(r){return null}}static validateTokens(e,a){const t=[],s=[];try{a.split(".")[1],e.split(".")[1];const r=this.parseJwtPayload(a),n=this.parseJwtPayload(e);if(!r){const e="ID token decode falhou - possível problema com base64url encoding";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:s}}let i=!0;if(!n){const e="Access token decode falhou - será tentado novamente nas chamadas de API";t.push(e),i=!1}const o=Math.floor(Date.now()/1e3);if(n?.exp&&n.exp<o){const e="Access token expirado - pode precisar de refresh";t.push(e),i=!1}if(r.exp&&r.exp<o){const e="ID token expirado - autenticação inválida";return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:i,warnings:t,errors:s}}return{isValid:!0,idTokenValid:!0,accessTokenValid:i,warnings:t,errors:s}}catch(r){const e=`Erro na validação de tokens: ${r}`;return s.push(e),{isValid:!1,idTokenValid:!1,accessTokenValid:!1,warnings:t,errors:s}}}static isTokenExpired(e){const a=this.parseJwtPayload(e);return!a||!a.exp||1e3*a.exp<Date.now()}static extractTokenData(e){return this.parseJwtPayload(e)}}((e,a,t)=>{a in e?Ut(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t})(Bt,"LARGE_PAYLOAD_THRESHOLD"+"",1e3);const Wt="qualiex_access_token",qt="qualiex_id_token",Ht="supabase_token",Qt="oauth_state",Jt="oauth_nonce",Kt="selected_alias",Xt="manual_logout",Gt={setAccessToken:e=>localStorage.setItem(Wt,e),getAccessToken:()=>localStorage.getItem(Wt),setIdToken:e=>localStorage.setItem(qt,e),getIdToken:()=>localStorage.getItem(qt),getSupabaseToken:()=>localStorage.getItem(Ht),setOAuthState:e=>sessionStorage.setItem(Qt,e),getOAuthState:()=>sessionStorage.getItem(Qt),clearOAuthState:()=>sessionStorage.removeItem(Qt),setOAuthNonce:e=>sessionStorage.setItem(Jt,e),getOAuthNonce:()=>sessionStorage.getItem(Jt),clearOAuthNonce:()=>sessionStorage.removeItem(Jt),setSelectedAlias:e=>localStorage.setItem(Kt,e),getSelectedAlias:()=>localStorage.getItem(Kt),clearSelectedAlias:()=>localStorage.removeItem(Kt),generateOAuthState:()=>"Lw==",generateOAuthNonce:()=>{const e=new Uint8Array(32);return crypto.getRandomValues(e),btoa(String.fromCharCode(...e)).replace(/[+/=]/g,"")},hasAllTokens:()=>!(!Gt.getAccessToken()||!Gt.getIdToken()),setSupabaseToken:e=>{localStorage.setItem(Ht,e),Gt._clearValidationCache()},areAllTokensValid:()=>{const e=Gt.getAccessToken(),a=Gt.getIdToken();if(!e||!a)return!1;try{const t=Bt.validateTokens(e,a);return!!t.idTokenValid&&(t.accessTokenValid,t.idTokenValid)}catch(t){return!1}},clearExpiredTokens:()=>{let e=!1;const a=Gt.getAccessToken(),t=Gt.getIdToken(),s=Gt.getSupabaseToken();return a&&Gt.isTokenExpired(a)&&(localStorage.removeItem(Wt),e=!0),t&&Gt.isTokenExpired(t)&&(localStorage.removeItem(qt),e=!0),s&&Gt.isTokenExpired(s)&&(localStorage.removeItem(Ht),e=!0),e},clearAll:()=>{localStorage.removeItem(Wt),localStorage.removeItem(qt),localStorage.removeItem(Ht),localStorage.removeItem(Kt),localStorage.removeItem(Xt),sessionStorage.removeItem(Qt),sessionStorage.removeItem(Jt)},setManualLogout:()=>localStorage.setItem(Xt,"true"),isManualLogout:()=>"true"===localStorage.getItem(Xt),clearManualLogout:()=>localStorage.removeItem(Xt),isTokenExpired:e=>{try{return Bt.isTokenExpired(e)}catch{return!0}},_validationCache:{isValid:!1,timestamp:0,cacheValidityMs:3e5},_clearValidationCache:()=>{Gt._validationCache.isValid=!1,Gt._validationCache.timestamp=0},isSupabaseTokenValid:()=>{const e=Gt.getSupabaseToken();if(!e)return!1;if(Gt.isTokenExpired(e))return Gt._clearValidationCache(),Gt._handleExpiredToken(),!1;const a=Date.now();return a-Gt._validationCache.timestamp<Gt._validationCache.cacheValidityMs?Gt._validationCache.isValid:(Gt._validationCache.isValid=!0,Gt._validationCache.timestamp=a,!0)},getValidSupabaseToken:()=>Gt.isSupabaseTokenValid()?Gt.getSupabaseToken():null,_handleExpiredToken:()=>{Gt.clearAll(),"undefined"!=typeof window&&(window.location.href="/")},extractTokenData:()=>{if(!Gt.isSupabaseTokenValid())return null;const e=Gt.getSupabaseToken();if(!e)return null;try{const a=Bt.parseJwtPayload(e);if(!a)return null;const t=a.alias||a.default||a.user_alias;let s=a.company_id;if(!s&&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){s=e[7];break}}}return{alias:t,companyId:s,payload:a}}catch(a){return Gt._handleExpiredToken(),null}},getCompanyId:e=>{const a=Gt.extractTokenData();if(!a)return null;if(!e)return a.companyId;const t=Gt.getIdToken();if(!t)return null;try{const a=Bt.parseJwtPayload(t);if(!a)return null;for(const t in a)if(t.startsWith("co")&&/^co\d+$/.test(t)){const s=a[t];if(s&&"string"==typeof s){const a=s.split(";");if(a.length>7&&a[0]===e)return a[7]}}}catch{return null}return null},getCurrentCompanyId:()=>{const e=Gt.extractTokenData();return e?.companyId||null},getAllCompaniesData:()=>{const e=Gt.getIdToken();if(!e)return[];try{const a=Bt.parseJwtPayload(e);if(!a)return[];const t=[];for(const e in a)if(e.startsWith("co")&&/^co\d+$/.test(e)){const s=a[e];if(s&&"string"==typeof s){const e=s.split(";");e.length>=4&&t.push({id:e.length>7?e[7]:"",alias:e[0].trim(),name:e[3].trim(),payload:a})}}return t}catch{return[]}}};var Yt=Object.defineProperty,Zt=(e,a,t)=>((e,a,t)=>a in e?Yt(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const es=new class{constructor(){Zt(this,"errors",[]),Zt(this,"toastCount",0),Zt(this,"lastToastTime",0)}handleError(e,a=!0){const t="string"==typeof e?e:e.message;this.errors.push({id:Date.now().toString(),message:t,timestamp:Date.now(),count:1}),a&&this.shouldShowToast()&&Et({title:"Erro",description:t,variant:"destructive"})}success(e,a){Et({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=[]}},as=()=>{Gt.clearManualLogout()},ts={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"}},ss={pagination:{defaultPageSize:25,pageSizeOptions:[10,25,50,100]},sorting:{defaultField:"updated_at",defaultDirection:"desc"}},rs={debounceDelay:500},ns=()=>{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},is={crud:e=>[e],list:(e,a)=>[e,"list",a],detail:(e,a)=>[e,"detail",a]};let os={enableUserEnrichment:!1,enableUsersApi:!1};const ls=()=>os,cs=e=>{os={...os,...e}},ds={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}`}};class ms{static async initialize(){try{if(!Gt.hasAllTokens()||!Gt.areAllTokensValid())return Gt.clearExpiredTokens(),{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null};const e=Gt.getAccessToken(),a=Gt.getIdToken();as();const t=this.extractUserFromIdToken(a),s=this.extractCompaniesFromIdToken(a),r=this.extractAliasFromAccessToken(e),n=Gt.getSelectedAlias(),i=n&&s.some(e=>e.alias===n)?n:r||s[0]?.alias||null;if(!Gt.isSupabaseTokenValid()&&i){const a=await us.generateToken(e,i);a&&Gt.setSupabaseToken(a)}let o=null;if(i){const e=Gt.getCompanyId(i),a=s.find(e=>e.alias===i);a&&(o={id:e||a.id,name:a.name,alias:a.alias})}return{isAuthenticated:!0,isLoading:!1,user:t,alias:i,companies:s,selectedUnit:o,userId:t?.id||null,userAlias:t?.id||null}}catch(e){return{isAuthenticated:!1,isLoading:!1,user:null,alias:null,companies:[],selectedUnit:null,userId:null,userAlias:null}}}static async loginDev(){try{const{getSupabaseClient:e}=await Promise.resolve().then(function(){return vs}),a=e(),{data:t,error:s}=await a.functions.invoke("dev-tokens",{body:{environment:"development"}});if(s)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=Gt.generateOAuthState();Gt.setOAuthState(e);const a=Gt.generateOAuthNonce();Gt.setOAuthNonce(a);const t=`${window.location.origin}/callback`,s=new URL(ts.oauth.authUrl);s.searchParams.set("client_id",ts.oauth.clientId),s.searchParams.set("response_type",ts.oauth.responseType),s.searchParams.set("scope",ts.oauth.scope),s.searchParams.set("redirect_uri",t),s.searchParams.set("state",e),s.searchParams.set("nonce",a),s.searchParams.set("response_mode","fragment"),ns(),window.location.href=s.toString()}static async processCallback(){try{if(Gt.hasAllTokens()){if(!Gt.getValidSupabaseToken()){const e=Gt.getAccessToken(),a=this.extractAliasFromAccessToken(e),t=this.extractCompaniesFromIdToken(Gt.getIdToken())[0]?.alias,s=a||t;if(s){const a=await us.generateToken(e,s);a&&Gt.setSupabaseToken(a)}}return!0}const e=new URLSearchParams(window.location.hash.startsWith("#")?window.location.hash.substring(1):window.location.hash),a=new URLSearchParams(window.location.search),t=t=>e.get(t)||a.get(t),s=t("access_token"),r=t("id_token"),n=t("error");if(n)throw new Error(`Erro OAuth: ${n}`);if(!s||!r)throw new Error("Tokens não encontrados na URL de callback");Gt.setAccessToken(s),Gt.setIdToken(r),as();const i=this.extractAliasFromAccessToken(s);if(i){const e=await us.generateToken(s,i);if(!e)throw new Error("Falha ao gerar token Supabase");Gt.setSupabaseToken(e)}else{const e=this.extractCompaniesFromIdToken(r);if(0===e.length)throw new Error("Nenhuma empresa encontrada nos tokens");const a=e[0].alias,t=await us.generateToken(s,a);if(!t)throw new Error("Falha ao gerar token Supabase");Gt.setSupabaseToken(t)}return Gt.clearOAuthState(),Gt.clearOAuthNonce(),!0}catch(e){throw e}}static logout(){Gt.setManualLogout(),Gt.clearAll(),window.location.href="/login"}static decodeToken(e){return Bt.parseJwtPayload(e)}static extractUserFromIdToken(e){const a=this.decodeToken(e);return a?{id:a.subNewId,email:a.email,name:a.name,identifier:a.identifier}:null}static extractCompaniesFromIdToken(e){const a=this.decodeToken(e);if(!a)return[];const t=[];return Object.keys(a).forEach(e=>{if(e.match(/^co(\d+)$/)&&"string"==typeof a[e]){const s=a[e].split(";");if(s.length>=4)t.push({id:s.length>7?s[7].trim():"",alias:s[0].trim(),name:s[3].trim()});else{const[s,r]=a[e].split("|");s&&r&&t.push({id:"",alias:s.trim(),name:r.trim()})}}}),t}static extractAliasFromAccessToken(e){const a=this.decodeToken(e);return a?.default||null}}class us{static async generateToken(e,a){try{const t=Gt.getSupabaseToken();if(t&&Gt.isSupabaseTokenValid())return t;const s=ys(),{data:r,error:n}=await s.functions.invoke("validate-token",{body:{access_token:e,alias:a}});return n&&(n.message?.includes("401")||n.message?.includes("Unauthorized"))?(ms.logout(),null):r?.access_token&&r.access_token?(Gt.setSupabaseToken(r.access_token),r.access_token):null}catch(t){return t instanceof Error&&(t.message.includes("401")||t.message.includes("Unauthorized"))&&ms.logout(),null}}}var fs=Object.defineProperty,ps=(e,a,t)=>((e,a,t)=>a in e?fs(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,"symbol"!=typeof a?a+"":a,t);const hs=import.meta.env.VITE_SUPABASE_URL,xs=import.meta.env.VITE_SUPABASE_PUBLISHABLE_KEY,gs=class e{constructor(){ps(this,"client"),ps(this,"currentToken",null),ps(this,"instanceCount",0),ps(this,"isRegenerating",!1),this.instanceCount++,this.client=this.createClientWithToken(null)}createClientWithToken(e){const a={apikey:xs};return e&&this.isTokenValid(e)&&(a.Authorization=`Bearer ${e}`),He(hs,xs,{auth:{persistSession:!1,autoRefreshToken:!1,storage:void 0},global:{headers:a}})}static getInstance(){return e.instance||(e.instance=new e),e.instance}getClient(){Gt.getValidSupabaseToken()||!Gt.areAllTokensValid()||this.isRegenerating||this.attemptTokenRegeneration();const e=Gt.getValidSupabaseToken();return e!==this.currentToken&&(this.client=this.createClientWithToken(e),this.currentToken=e),this.client}async attemptTokenRegeneration(){if(!this.isRegenerating){this.isRegenerating=!0;try{const e=Gt.getAccessToken(),a=Gt.getSelectedAlias();if(!e||!a)return;const t=await us.generateToken(e,a);t&&Gt.setSupabaseToken(t)}catch(e){}finally{this.isRegenerating=!1}}}isTokenValid(e){try{const a=JSON.parse(atob(e.split(".")[1])),t=Math.floor(Date.now()/1e3);return a.exp>t}catch(a){return es.handleError(a instanceof Error?a:"❌ Supabase - Error validating token",!1),!1}}};ps(gs,"instance");let bs=gs;const ys=()=>bs.getInstance().getClient();var vs=Object.freeze({__proto__:null,getSupabaseClient:ys}),Ns=Object.defineProperty,js=(e,a,t)=>((e,a,t)=>a in e?Ns(e,a,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[a]=t)(e,a+"",t);const ws=new class{constructor(){js(this,"baseUrl",import.meta.env.VITE_QUALIEX_API_URL)}async makeApiCall(e,a,t){const s=Gt.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 r=new URL(e,this.baseUrl);Object.entries(a).forEach(([e,a])=>{r.searchParams.append(e,a)});const n=await fetch(r.toString(),{method:"GET",headers:{Authorization:`Bearer ${s}`,"Content-Type":"application/json",Accept:"application/json","un-alias":t}});if(!n.ok)throw new Error(`API call failed: ${n.status} ${n.statusText}`);return await n.json()}mapToQualiexUser(e){return{userId:e.userId||String(e.ID),userName:e.userName||"Nome não disponível",userEmail:e.userEmail||"Email não disponível"}}async fetchUsers(e,a){try{const t=await this.makeApiCall("/api/common/v1/companiesusers",{companyId:a,search:"",filterStatus:"active"},e);let s=t;if(t.data)s=t.data;else{if(!Array.isArray(t))return es.handleError("[QualiexApi] Unexpected response format",!1),[];s=t}if(!Array.isArray(s))return es.handleError("[QualiexApi] Response is not an array",!1),[];return s.map(this.mapToQualiexUser)}catch(t){return es.handleError(t instanceof Error?t:"[QualiexApi] Error fetching users"),[]}}async fetchUserById(e,a,t){try{return(await this.fetchUsers(a,t)).find(a=>a.userId===e)||null}catch(s){return es.handleError(s instanceof Error?s:"[QualiexApi] Error fetching user by ID"),null}}async getUsers(e){const a=Gt.extractTokenData();return a&&a.companyId?this.fetchUsers(e,a.companyId):(es.handleError("[QualiexApi] CompanyId não encontrado no token Supabase",!1),[])}};class ks{static async extractTokenData(){const e=Gt.extractTokenData();return e||(es.handleError("[QualiexEnrichment] ❌ Token Supabase não encontrado",!1),null)}static async enrichWithResponsibleNames(e,a){if(!e||0===e.length)return es.handleError(`[QualiexEnrichment.${a.entityName}] Nenhuma entidade encontrada`,!1),e;try{const t=await this.extractTokenData();if(!t)return e.map(e=>({...e,responsible_name:e.id_user?"Token não encontrado":null}));const{alias:s,companyId:r}=t;if(!s||!r)return es.handleError(`[QualiexEnrichment.${a.entityName}] DADOS OBRIGATÓRIOS FALTANDO - alias: ${!!s}, companyId: ${!!r}`,!1),e.map(e=>({...e,responsible_name:e.id_user?`Configuração incompleta (alias: ${!!s}, companyId: ${!!r})`:null}));const n=await ws.getUsers(s),i=e.map(e=>{if(e.id_user){const a=n.find(a=>a.userId===e.id_user);return{...e,responsible_name:a?.userName||`ID não encontrado: ${e.id_user}`}}return{...e,responsible_name:null}});i.filter(e=>e.responsible_name&&!e.responsible_name.includes("ID não encontrado")&&!e.responsible_name.includes("Erro:")&&!e.responsible_name.includes("Token não encontrado")&&!e.responsible_name.includes("Configuração incompleta")).length;return i}catch(t){return es.handleError(t instanceof Error?t:`[QualiexEnrichment.${a.entityName}] 💥 ERRO CRÍTICO`),e.map(e=>({...e,responsible_name:e.id_user?`Erro: ${t.message}`:null}))}}}const Ss=["responsible_name"];function Cs(e,a,t){const s="string"==typeof e?{tableName:e,searchFields:a||[],schemaName:t||"central"}:{searchFields:e.searchFields||[],schemaName:e.schemaName||"central",...e},{tableName:r,searchFields:n,selectFields:i,schemaName:o,entityName:l,enableQualiexEnrichment:c=!1}=s,d=()=>{if(!Gt.getValidSupabaseToken())throw new Error("Token de autenticação expirado. Faça login novamente.");return ys().schema(o).from(r)};return{async getAll(e={}){const{search:a="",sortField:t="updated_at",sortDirection:s="desc",page:o=1,limit:m=25,...u}=e;let f=d().select(i||"*",{count:"exact"});f=f.eq("is_removed",!1),Object.entries(u).forEach(([e,a])=>{null!=a&&""!==a&&(f=Array.isArray(a)?f.in(e,a):"object"==typeof a&&a&&"operator"in a&&"not_null"===a.operator?f.not(e,"is",null):f.eq(e,a))}),f=((e,a)=>{if(a&&n.length>0){const t=n.map(e=>`${e}.ilike.%${a}%`).join(",");return e.or(t)}return e})(f,a),f=f.order(t,{ascending:"asc"===s}),f=((e,a,t)=>{const s=(a-1)*t,r=s+t-1;return e.range(s,r)})(f,o,m);const{data:p,error:h,count:x}=await f;if(h)throw new Error(`Error fetching ${r}: ${h.message}`);let g=((e,a,t,s)=>{const r=Math.ceil((a||0)/s);return{data:e,currentPage:t,totalPages:r,totalItems:a||0,itemsPerPage:s,hasNextPage:t<r,hasPreviousPage:t>1}})(p||[],x,o,m);const b=ls();if(c&&b.enableUserEnrichment&&l&&g.data.length>0){if(g.data.some(e=>e.id_user)){if(t&&(y=t,Ss.includes(y))){const a={...e,page:1,limit:500,sortField:void 0,sortDirection:void 0},r=await this.getAll(a);if(!r?.data?.length)return r;const n=((e,a,t)=>[...e].sort((e,s)=>{const r=e[a]||"",n=s[a]||"",i=r.localeCompare(n,"pt-BR",{sensitivity:"base"});return"asc"===t?i:-i}))(await ks.enrichWithResponsibleNames(r.data,{entityName:l}),t,s),i=((e,a=1,t=25)=>{const s=(a-1)*t,r=s+t,n=e.slice(s,r);return{data:n,pagination:{currentPage:a,totalPages:Math.ceil(e.length/t),totalItems:n.length,totalCount:e.length,itemsPerPage:t,hasNextPage:r<e.length,hasPreviousPage:a>1}}})(n,o,m);return{data:i.data,currentPage:i.pagination.currentPage,totalPages:i.pagination.totalPages,totalItems:i.pagination.totalItems,itemsPerPage:i.pagination.itemsPerPage,hasNextPage:i.pagination.hasNextPage,hasPreviousPage:i.pagination.hasPreviousPage}}const a=await ks.enrichWithResponsibleNames(g.data,{entityName:l});g={...g,data:a}}}var y;return g},async getById(e){const{data:a,error:t}=await d().select(i||"*").eq("id",e).maybeSingle();if(t)throw new Error(`Error fetching ${r}: ${t.message}`);return a},async create(e){const a=Pa(e),t=Object.entries(a).reduce((e,[a,t])=>(void 0!==t&&(e[a]=t),e),{}),{data:s,error:n}=await d().insert(t).select().single();if(n)throw new Error(`Error creating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from create ${r} operation`);return s},async update(e,a){const t={...Pa(a),updated_at:(new Date).toISOString()},{data:s,error:n}=await d().update(t).eq("id",e).select().single();if(n)throw new Error(`Error updating ${r}: ${n.message}`);if(!s)throw new Error(`No data returned from update ${r} operation`);return s},async delete(e){const a={is_removed:!0,updated_at:(new Date).toISOString()},{error:t}=await d().update(a).eq("id",e);if(t)throw new Error(`Error soft deleting ${r}: ${t.message}`)}}}function Ts({queryKey:e,service:a,entityName:r,searchFields:n,additionalFilters:i={},onSuccess:o}){const[l,c]=Ge(),d=Qe(),m=l.get("search")||"",u=l.get("sortField")||ss.sorting.defaultField,f=l.get("sortDirection")||ss.sorting.defaultDirection,p=parseInt(l.get("page")||"1"),h=parseInt(l.get("limit")||String(ss.pagination.defaultPageSize)),x=m,g=t(()=>({search:x,sortField:u,sortDirection:f,page:p,limit:h,...i}),[x,u,f,p,h,i]),b=s(()=>a.getAll(g),[a,g]),y=Je({queryKey:[e,g],queryFn:b});if(!y)throw new Error(`useCrud: Query initialization failed for "${r}". Ensure QueryClientProvider is configured in your app root.`);const v=Ke({mutationFn:a.create,onSuccess:()=>{d.invalidateQueries({queryKey:[e]}),aa.success(ds.success.created(r)),o?.()},onError:e=>{aa.error(`${ds.error.create(r)}: ${e.message}`)}}),N=Ke({mutationFn:({id:e,data:t})=>a.update(e,t),onSuccess:()=>{d.invalidateQueries({queryKey:[e]}),aa.success(ds.success.updated(r)),o?.()},onError:e=>{aa.error(`${ds.error.update(r)}: ${e.message}`)}}),j=Ke({mutationFn:a.delete,onSuccess:()=>{d.invalidateQueries({queryKey:[e]}),aa.success(ds.success.deleted(r))},onError:e=>{aa.error(`${ds.error.delete(r)}: ${e.message}`)}}),w=s(e=>{const a={...Object.fromEntries(l)};Object.entries(e).forEach(([e,t])=>{""===t||0===t?delete a[e]:a[e]=String(t)}),c(a)},[l,c]),k=s(e=>{w({search:e,page:1})},[w]),S=s(e=>{w({sortField:e,sortDirection:u===e&&"asc"===f?"desc":"asc",page:1})},[u,f,w]),C=s(e=>{w({page:e})},[w]),T=s(e=>{w({limit:e,page:1})},[w]),R=s(()=>{c({})},[c]);return{entities:y?.data?.data||[],pagination:{currentPage:y?.data?.currentPage||1,totalPages:y?.data?.totalPages||1,totalItems:y?.data?.totalItems||0,itemsPerPage:y?.data?.itemsPerPage||ss.pagination.defaultPageSize,hasNextPage:y?.data?.hasNextPage||!1,hasPreviousPage:y?.data?.hasPreviousPage||!1},isLoading:y?.isLoading??!0,isCreating:v?.isPending??!1,isUpdating:N?.isPending??!1,isDeleting:j?.isPending??!1,error:y?.error||null,searchTerm:m,sortField:u,sortDirection:f,currentPage:p,itemsPerPage:h,createEntity:v.mutate,updateEntity:(e,a)=>N.mutate({id:e,data:a}),deleteEntity:j.mutate,handleSearch:k,handleSort:S,handlePageChange:C,handleItemsPerPageChange:T,clearFilters:R,refetch:y.refetch}}function Rs(e){const a=Cs({tableName:e.tableName,searchFields:e.searchFields||["title"],schemaName:e.schemaName||"central",entityName:e.entityName,enableQualiexEnrichment:e.enableQualiexEnrichment||!0});return{service:a,useCrudHook:t=>Ts({queryKey:e.tableName,service:{...a,getAll:async(e={})=>await a.getAll({...e})},entityName:e.entityName,onSuccess:t})}}const _s=sa.Root,Ps=sa.Trigger,Es=sa.Portal,As=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Overlay,{className:_a("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",e),...a,ref:t}));As.displayName=sa.Overlay.displayName;const Is=e.forwardRef(({className:e,...a},t)=>Ra.jsxs(Es,{children:[Ra.jsx(As,{}),Ra.jsx(sa.Content,{ref:t,className:_a("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",e),...a})]}));Is.displayName=sa.Content.displayName;const Ds=({className:e,...a})=>Ra.jsx("div",{className:_a("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",e),...a});Ds.displayName="AlertDialogHeader";const Os=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});Os.displayName="AlertDialogFooter";const zs=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Title,{ref:t,className:_a("text-lg font-semibold",e),...a}));zs.displayName=sa.Title.displayName;const $s=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Description,{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));$s.displayName=sa.Description.displayName;const Fs=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Action,{ref:t,className:_a(Da(),e),...a}));Fs.displayName=sa.Action.displayName;const Ls=e.forwardRef(({className:e,...a},t)=>Ra.jsx(sa.Cancel,{ref:t,className:_a(Da({variant:"outline"}),"mt-2 sm:mt-0",e),...a}));Ls.displayName=sa.Cancel.displayName;const Ms=({open:e,onOpenChange:a,item:t,onConfirm:s,entityName:i="item",isDeleting:o=!1})=>{const[l,c]=r("");n(()=>{e||c("")},[e]);const d=()=>{c(""),a(!1)},m=l===t?.title;return t?Ra.jsx(_s,{open:e,onOpenChange:d,children:Ra.jsxs(Is,{className:"sm:max-w-[500px]",children:[Ra.jsx(Ds,{children:Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsx("div",{className:"flex-shrink-0 w-8 h-8 rounded-full bg-destructive/10 flex items-center justify-center",children:Ra.jsx("span",{className:"text-destructive font-semibold text-sm",children:"!"})}),Ra.jsx("div",{className:"flex-1",children:Ra.jsx(zs,{className:"text-lg font-semibold",children:"Confirmar Exclusão"})})]})}),Ra.jsx($s,{asChild:!0,children:Ra.jsxs("div",{className:"space-y-4",children:[Ra.jsxs("div",{className:"text-sm text-muted-foreground",children:[Ra.jsxs("p",{className:"mb-2",children:["Você está prestes a excluir permanentemente o ",i,":"]}),Ra.jsx("div",{className:"p-3 bg-muted rounded-md border-l-4 border-l-destructive",children:Ra.jsx("p",{className:"font-medium text-foreground",children:t.title})})]}),Ra.jsx("div",{className:"bg-orange-50 border border-orange-200 rounded-md p-3",children:Ra.jsxs("div",{className:"flex items-start space-x-2",children:[Ra.jsx("div",{className:"flex-shrink-0 w-5 h-5 rounded-full bg-orange-500 flex items-center justify-center mt-0.5",children:Ra.jsx("span",{className:"text-white font-bold text-xs",children:"!"})}),Ra.jsxs("div",{className:"text-sm text-orange-800",children:[Ra.jsx("p",{className:"font-medium mb-1",children:"Atenção!"}),Ra.jsxs("p",{children:["Esta ação não pode ser desfeita. O ",i," será removido permanentemente do sistema."]})]})]})}),Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsxs(Fa,{htmlFor:"confirmation",className:"text-sm font-medium",children:["Para confirmar, digite ",Ra.jsxs("strong",{children:['"',t.title,'"']})," abaixo:"]}),Ra.jsx(za,{id:"confirmation",type:"text",value:l,onChange:e=>c(e.target.value),placeholder:`Digite: ${t.title}`,className:"w-full"})]})]})}),Ra.jsxs(Os,{children:[Ra.jsx(Ls,{onClick:d,children:"Cancelar"}),Ra.jsx(Fs,{onClick:()=>{t&&l===t.title&&(s(t),c(""),a(!1))},disabled:!m||o,className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",children:o?"Removendo...":`Excluir ${i}`})]})]})}):null},Vs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("table",{ref:t,className:_a("w-full caption-bottom text-sm",e),...a}));Vs.displayName="Table";const Us=e.forwardRef(({className:e,...a},t)=>Ra.jsx("thead",{ref:t,className:_a("[&_tr]:border-b sticky top-0 z-[1] bg-background",e),...a}));Us.displayName="TableHeader";const Bs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("tbody",{ref:t,className:_a("[&_tr:last-child]:border-0",e),...a}));Bs.displayName="TableBody";const Ws=e.forwardRef(({className:e,...a},t)=>Ra.jsx("tfoot",{ref:t,className:_a("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...a}));Ws.displayName="TableFooter";const qs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("tr",{ref:t,className:_a("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...a}));qs.displayName="TableRow";const Hs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("th",{ref:t,className:_a("h-12 px-4 py-3 text-left align-middle font-medium text-muted-foreground bg-background border-b [&:has([role=checkbox])]:pr-0",e),...a}));Hs.displayName="TableHead";const Qs=e.forwardRef(({className:e,...a},t)=>Ra.jsx("td",{ref:t,className:_a("px-4 py-3 align-middle [&:has([role=checkbox])]:pr-0",e),...a}));Qs.displayName="TableCell";const Js=e.forwardRef(({className:e,...a},t)=>Ra.jsx("caption",{ref:t,className:_a("mt-4 text-sm text-muted-foreground",e),...a}));function Ks({className:e,...a}){return Ra.jsx("div",{className:_a("animate-pulse rounded-md bg-muted",e),...a})}function Xs({rows:e=5,columns:a=4}){return Ra.jsx("div",{className:"w-full",children:Ra.jsxs("div",{className:"rounded-md border",children:[Ra.jsx("div",{className:"border-b bg-muted/50 px-4 py-3",children:Ra.jsx("div",{className:"flex space-x-4",children:Array.from({length:a}).map((e,a)=>Ra.jsx(Ks,{className:"h-4 w-24"},a))})}),Ra.jsx("div",{children:Array.from({length:e}).map((e,t)=>Ra.jsx("div",{className:"border-b px-4 py-3 last:border-0",children:Ra.jsx("div",{className:"flex space-x-4",children:Array.from({length:a}).map((e,a)=>Ra.jsx(Ks,{className:"h-4 w-20"},a))})},t))})]})})}function Gs({count:e=3}){return Ra.jsx("div",{className:"space-y-4",children:Array.from({length:e}).map((e,a)=>Ra.jsxs(La,{children:[Ra.jsxs(Ma,{children:[Ra.jsx(Ks,{className:"h-4 w-3/4"}),Ra.jsx(Ks,{className:"h-3 w-1/2"})]}),Ra.jsx(Ba,{children:Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsx(Ks,{className:"h-3 w-full"}),Ra.jsx(Ks,{className:"h-3 w-2/3"})]})})]},a))})}function Ys({fields:e=4}){return Ra.jsxs("div",{className:"space-y-4",children:[Array.from({length:e}).map((e,a)=>Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsx(Ks,{className:"h-4 w-24"}),Ra.jsx(Ks,{className:"h-10 w-full"})]},a)),Ra.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[Ra.jsx(Ks,{className:"h-10 w-20"}),Ra.jsx(Ks,{className:"h-10 w-20"})]})]})}function Zs(){return Ra.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[Ra.jsxs("div",{className:"flex items-center space-x-3",children:[Ra.jsx(Ks,{className:"h-8 w-8 rounded-full"}),Ra.jsx(Ks,{className:"h-6 w-32"})]}),Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsx(Ks,{className:"h-8 w-8"}),Ra.jsx(Ks,{className:"h-8 w-24"})]})]})}function er(){return Ra.jsx("div",{className:"w-64 border-r bg-muted/10",children:Ra.jsxs("div",{className:"p-4",children:[Ra.jsx(Ks,{className:"h-8 w-32 mb-6"}),Ra.jsx("div",{className:"space-y-2",children:Array.from({length:6}).map((e,a)=>Ra.jsxs("div",{className:"flex items-center space-x-3 p-2",children:[Ra.jsx(Ks,{className:"h-4 w-4"}),Ra.jsx(Ks,{className:"h-4 w-20"})]},a))})]})})}Js.displayName="TableCaption";const ar={default:T,search:C,error:S};function tr({icon:e,title:a,description:t,action:s,className:r,variant:n="default"}){const i=e?()=>e:ar[n];return Ra.jsxs("div",{className:_a("flex flex-col items-center justify-center py-12 px-4 text-center",r),children:[Ra.jsx("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted mb-4",children:Ra.jsx(i,{className:"h-8 w-8 text-muted-foreground"})}),Ra.jsx("h3",{className:"text-lg font-semibold mb-2",children:a}),t&&Ra.jsx("p",{className:"text-muted-foreground mb-6 max-w-sm",children:t}),s&&Ra.jsx(Oa,{onClick:s.onClick,variant:"outline",children:s.label})]})}const sr=ra.Root,rr=ra.Trigger,nr=ra.Group,ir=ra.Portal,or=ra.Sub,lr=ra.RadioGroup,cr=e.forwardRef(({className:e,inset:a,children:t,...s},r)=>Ra.jsxs(ra.SubTrigger,{ref:r,className:_a("flex cursor-default select-none items-center px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",a&&"pl-8",e),...s,children:[t,Ra.jsx(R,{className:"ml-auto h-4 w-4"})]}));cr.displayName=ra.SubTrigger.displayName;const dr=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ra.SubContent,{ref:t,className:_a("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",e),...a}));dr.displayName=ra.SubContent.displayName;const mr=e.forwardRef(({className:e,sideOffset:a=4,...t},s)=>Ra.jsx(ra.Portal,{children:Ra.jsx(ra.Content,{ref:s,sideOffset:a,className:_a("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",e),...t})}));mr.displayName=ra.Content.displayName;const ur=e.forwardRef(({className:e,inset:a,...t},s)=>Ra.jsx(ra.Item,{ref:s,className:_a("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",e),...t}));ur.displayName=ra.Item.displayName;const fr=e.forwardRef(({className:e,children:a,checked:t,...s},r)=>Ra.jsxs(ra.CheckboxItem,{ref:r,className:_a("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",e),checked:t,...s,children:[Ra.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:Ra.jsx(ra.ItemIndicator,{children:Ra.jsx(w,{className:"h-4 w-4"})})}),a]}));fr.displayName=ra.CheckboxItem.displayName;const pr=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(ra.RadioItem,{ref:s,className:_a("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",e),...t,children:[Ra.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:Ra.jsx(ra.ItemIndicator,{children:Ra.jsx(_,{className:"h-2 w-2 fill-current"})})}),a]}));pr.displayName=ra.RadioItem.displayName;const hr=e.forwardRef(({className:e,inset:a,...t},s)=>Ra.jsx(ra.Label,{ref:s,className:_a("px-2 py-1.5 text-sm font-semibold",a&&"pl-8",e),...t}));hr.displayName=ra.Label.displayName;const xr=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ra.Separator,{ref:t,className:_a("-mx-1 my-1 h-px bg-muted",e),...a}));xr.displayName=ra.Separator.displayName;const gr=({className:e,...a})=>Ra.jsx("span",{className:_a("ml-auto text-xs tracking-widest opacity-60",e),...a});gr.displayName="DropdownMenuShortcut";const br=({onEdit:e,onDelete:a,onToggleStatus:t,isActive:s=!0,canDelete:r=!0,renderAs:n})=>{const i=[];if(e){const a={icon:P,label:"Editar",onClick:e};i.push(a)}if(t){const e={icon:s?E:A,label:s?"Inativar":"Ativar",onClick:t};i.push(e)}if(r&&a){const e={icon:I,label:"Remover",onClick:a,destructive:!0};i.push(e)}return"dropdown"===n?Ra.jsx(Ra.Fragment,{children:i.map((e,a)=>Ra.jsxs(ur,{onClick:e.onClick,className:e.destructive?"text-destructive":"",children:[Ra.jsx(e.icon,{className:"mr-2 h-4 w-4"}),e.label]},a))}):Ra.jsx(Ra.Fragment,{children:i.map((e,a)=>Ra.jsxs(Oa,{variant:"ghost",size:"sm",onClick:e.onClick,className:"w-full justify-start h-auto py-2 px-3 text-sm font-normal "+(e.destructive?"text-destructive hover:text-destructive":""),children:[Ra.jsx(e.icon,{className:"h-4 w-4 mr-2"}),e.label]},a))})},yr=({onEdit:e,onDelete:a,canDelete:t=!0,onToggleStatus:s,isActive:r=!0})=>Ra.jsxs(sr,{children:[Ra.jsx(rr,{asChild:!0,children:Ra.jsx(Oa,{variant:"default",size:"sm",className:"h-7 px-2 text-xs bg-primary text-primary-foreground hover:bg-primary/90",children:Ra.jsx(D,{size:12})})}),Ra.jsx(mr,{align:"end",children:Ra.jsx(br,{onEdit:a=>{a?.stopPropagation(),e?.()},onDelete:e=>{e?.stopPropagation(),a?.()},onToggleStatus:e=>{e?.stopPropagation(),s?.()},isActive:r,canDelete:t,renderAs:"dropdown"})})]}),vr=({manager:e,columns:a,onEdit:t,onView:s,onToggleStatus:i,onDelete:o,renderActions:l})=>{const[c,d]=r(!1),[m,u]=r(null);n(()=>{const e=()=>d(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),n(()=>{const e=()=>u(null);if(m)return document.addEventListener("click",e),()=>document.removeEventListener("click",e)},[m]);const f=(()=>{a.length;let e=0;const t=a.map(a=>{if(a.width)return e+=a.width,{...a,calculatedWidth:a.width,isFixed:!0};{const t=a.minWidth||120,s=a.weight||1;return e+=t,{...a,calculatedWidth:t,weight:s,isFixed:!1}}});return e+=100,t.map(e=>e.isFixed?{...e,style:{width:`${e.calculatedWidth}px`}}:{...e,style:{minWidth:`${e.calculatedWidth}px`,width:`${e.calculatedWidth}px`}})})();return c?e.isLoading?Ra.jsx(Gs,{count:3}):0===e.entities.length?Ra.jsx(tr,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"}):Ra.jsxs("div",{className:"space-y-4",children:[e.entities.map(e=>Ra.jsx(La,{className:"overflow-hidden cursor-pointer hover:bg-muted/50",onClick:a=>{a.stopPropagation(),t?.(e)},onContextMenu:a=>{a.preventDefault(),a.stopPropagation(),u({x:a.clientX,y:a.clientY,item:e})},children:Ra.jsxs(Ba,{className:"p-4",children:[a.map(a=>Ra.jsxs("div",{className:"flex justify-between items-start mb-2 last:mb-0",children:[Ra.jsxs("span",{className:"text-sm font-medium text-muted-foreground min-w-0 mr-2",children:[a.header,":"]}),Ra.jsx("div",{className:"text-sm text-foreground text-right min-w-0 flex-1",children:a.render?a.render(e):e[a.key]})]},String(a.key))),(t||s||l)&&Ra.jsx("div",{className:"mt-3 pt-3 border-t flex justify-end",onClick:e=>e.stopPropagation(),children:l?l(e):Ra.jsx(yr,{onEdit:t?()=>{t(e)}:void 0,onDelete:o?()=>o(e):void 0,onToggleStatus:i?()=>i(e):void 0,isActive:e.is_actived})})]})},e.id)),m&&Ra.jsx("div",{className:"fixed bg-background border border-border rounded-md shadow-lg py-1 z-50 min-w-[120px]",style:{left:m.x,top:m.y},onClick:e=>e.stopPropagation(),children:Ra.jsx(br,{onEdit:t?()=>{t(m.item),u(null)}:void 0,onDelete:o?()=>{o(m.item),u(null)}:void 0,onToggleStatus:i?()=>{i(m.item),u(null)}:void 0,isActive:m.item.is_actived,canDelete:!!o,renderAs:"context"})})]}):Ra.jsxs("div",{className:"flex flex-col h-full",children:[e.isLoading?Ra.jsx(Xs,{rows:5,columns:a.length}):Ra.jsx("div",{className:"flex flex-col h-full overflow-hidden",children:Ra.jsx("div",{className:"flex-1 overflow-auto",children:Ra.jsxs(Vs,{className:"table-fixed",children:[Ra.jsxs("colgroup",{children:[f.map((e,a)=>Ra.jsx("col",{style:e.style},a)),Ra.jsx("col",{style:{width:"100px"}})]}),Ra.jsx(Us,{children:Ra.jsxs(qs,{children:[a.map(a=>{return Ra.jsx(Hs,{className:`${a.className||""} ${a.sortable?"cursor-pointer hover:bg-muted/50":""}`,onClick:a.sortable?()=>e.handleSort(String(a.key)):void 0,children:Ra.jsxs("div",{className:"flex items-center "+(a.className?.includes("text-center")?"justify-center":""),children:[a.header,a.sortable&&(t=String(a.key),e.sortField!==t?Ra.jsx(O,{size:14,className:"ml-1 opacity-50"}):"asc"===e.sortDirection?Ra.jsx(z,{size:14,className:"ml-1"}):Ra.jsx($,{size:14,className:"ml-1"}))]})},String(a.key));var t}),Ra.jsx(Hs,{className:"w-[100px] text-center",children:"Ações"})]})}),Ra.jsx(Bs,{children:0===e.entities.length?Ra.jsx(qs,{children:Ra.jsx(Qs,{colSpan:a.length+1,className:"h-32",children:Ra.jsx(tr,{title:"Nenhum item encontrado",description:"Não há dados para exibir no momento.",variant:"search"})})}):e.entities.map(e=>Ra.jsxs(qs,{className:"cursor-pointer hover:bg-muted/50",onClick:a=>{a.stopPropagation(),t?.(e)},onContextMenu:a=>{a.preventDefault(),a.stopPropagation(),u({x:a.clientX,y:a.clientY,item:e})},children:[a.map(a=>Ra.jsx(Qs,{className:a.className,children:a.render?a.render(e):e[a.key]},String(a.key))),Ra.jsx(Qs,{className:"text-center",children:l?l(e):Ra.jsx(yr,{onEdit:t?()=>t(e):void 0,onDelete:o?()=>o(e):void 0,onToggleStatus:i?()=>i(e):void 0,isActive:e.is_actived})})]},e.id))})]})})}),m&&Ra.jsx("div",{className:"fixed bg-background border border-border rounded-md shadow-lg py-1 z-50 min-w-[120px]",style:{left:m.x,top:m.y},onClick:e=>e.stopPropagation(),children:Ra.jsx(br,{onEdit:t?()=>{t(m.item),u(null)}:void 0,onDelete:o?()=>{o(m.item),u(null)}:void 0,onToggleStatus:i?()=>{i(m.item),u(null)}:void 0,isActive:m.item.is_actived,canDelete:!!o,renderAs:"context"})})]})};function Nr(e,a,s,i){const[o,l]=r({}),[c,d]=r({}),m=t(()=>e,[e]),u=e=>e instanceof Date&&!isNaN(e.getTime()),f=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 f(e)}},h=(e,a,t)=>{if(e.required&&(""===a||null==a||Array.isArray(a)&&0===a.length))return`${e.label} é obrigatório`;if(e.validation){let r;if("function"==typeof e.validation?r=e.validation:e.validation.custom&&"function"==typeof e.validation.custom&&(r=e.validation.custom),r)try{const e=r(a,t);if(e)return e}catch(s){}}};n(()=>{if(!i)return;const e=a=>{const t=[];return a.forEach(a=>{t.push(a),a.fields&&t.push(...e(a.fields))}),t},t=e(m),r={};t.forEach(e=>{let t;if(a&&void 0!==a[e.name]){if(t=a[e.name],null==t&&(t=""),"date"===e.type&&t)if("string"==typeof t){const e=new Date(t);u(e)&&(t=e.toISOString().split("T")[0])}else u(t)&&(t=t.toISOString().split("T")[0])}else t=f(e);r[e.name]=t}),t.forEach(e=>{const a=p(e,r);void 0!==a&&(r[e.name]=a)}),l(r),d({}),s&&s(r)},[m,a,s,i]);const x=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...x(e.fields))}),a},g=()=>{const e=x(m),a={};return e.forEach(e=>{const t=h(e,o[e.name],o);t&&(a[e.name]=t)}),d(a),0===Object.keys(a).length};return{formData:o,errors:c,updateField:(e,a)=>{l(t=>{const r={...t,[e]:a},n=((e,a)=>{let t={...a};const s=e=>{const a=[];return e.forEach(e=>{a.push(e),e.fields&&a.push(...s(e.fields))}),a};return s(m).filter(a=>a.dependsOn===e).forEach(e=>{const a=p(e,t);void 0!==a&&(t={...t,[e.name]:a})}),t})(e,r);return s&&s(n),n}),c[e]&&d(a=>{const t={...a};return delete t[e],t});const t=x(m).find(a=>a.name===e);if(t){const s=h(t,a,o);s&&d(a=>({...a,[e]:s}))}},validateForm:g,handleSubmit:e=>a=>{a&&(a.preventDefault(),a.stopPropagation()),g()&&e(o)}}}const jr=na.Root,wr=na.Trigger,kr=e.forwardRef(({className:e,align:a="center",sideOffset:t=4,...s},r)=>Ra.jsx(na.Portal,{children:Ra.jsx(na.Content,{ref:r,align:a,sideOffset:t,className:_a("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",e),...s})}));kr.displayName=na.Content.displayName;const Sr=["#3b82f6","#ef4444","#10b981","#f59e0b","#8b5cf6","#06b6d4","#84cc16","#f97316","#ec4899","#6b7280"],Cr=({value:e="#3b82f6",onChange:a,label:t})=>Ra.jsxs("div",{className:"space-y-2",children:[t&&Ra.jsx(Fa,{children:t}),Ra.jsxs(jr,{children:[Ra.jsx(wr,{asChild:!0,children:Ra.jsxs(Oa,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[Ra.jsx("div",{className:"h-4 w-4 rounded border mr-2",style:{backgroundColor:e}}),e]})}),Ra.jsx(kr,{className:"w-64",children:Ra.jsxs("div",{className:"space-y-3",children:[Ra.jsxs("div",{children:[Ra.jsx(Fa,{htmlFor:"color-input",children:"Cor personalizada"}),Ra.jsx(za,{id:"color-input",type:"color",value:e,onChange:e=>a?.(e.target.value),className:"h-10 w-full"})]}),Ra.jsxs("div",{children:[Ra.jsx(Fa,{children:"Cores predefinidas"}),Ra.jsx("div",{className:"grid grid-cols-5 gap-2 mt-2",children:Sr.map(e=>Ra.jsx("button",{className:"h-8 w-8 rounded border-2 border-border hover:border-primary",style:{backgroundColor:e},onClick:()=>a?.(e),"aria-label":`Selecionar cor ${e}`},e))})]})]})})]})]}),Tr=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsxs(ia.Root,{ref:s,className:_a("relative overflow-hidden",e),...t,children:[Ra.jsx(ia.Viewport,{className:"h-full w-full rounded-[inherit]",children:a}),Ra.jsx(Rr,{}),Ra.jsx(ia.Corner,{})]}));Tr.displayName=ia.Root.displayName;const Rr=e.forwardRef(({className:e,orientation:a="vertical",...t},s)=>Ra.jsx(ia.ScrollAreaScrollbar,{ref:s,orientation:a,className:_a("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]",e),...t,children:Ra.jsx(ia.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}));Rr.displayName=ia.ScrollAreaScrollbar.displayName;const _r={Star:_e,Heart:Re,Home:Te,User:Ce,Settings:Se,Mail:ke,Phone:we,Calendar:je,MapPin:Ne,Camera:ve,Image:ye,Music:be,Video:ge,Book:xe,Bookmark:he,Search:C,Filter:pe,Edit:P,Trash2:I,Plus:fe,Minus:ue,Check:w,X:v,ChevronDown:N,ChevronUp:j,ChevronLeft:me,ChevronRight:R,ArrowUp:z,ArrowDown:$,ArrowLeft:de,ArrowRight:ce,Clock:le,Bell:oe,AlertCircle:S,Info:ie,HelpCircle:ne,Download:re,Upload:se,Share:te,Copy:ae,Save:ee,FileText:Z,Folder:Y,FolderOpen:G,Archive:X,Lock:K,Unlock:J,Eye:Q,EyeOff:H,Shield:q,Key:W,Zap:B,Flame:U,Sparkles:V,Award:M,Trophy:L,Target:F},Pr=({value:e="Star",onChange:a,label:t})=>{const[s,n]=r(""),i=Object.entries(_r).filter(([e])=>e.toLowerCase().includes(s.toLowerCase())),o=_r[e]||_e;return Ra.jsxs("div",{className:"space-y-2",children:[t&&Ra.jsx(Fa,{children:t}),Ra.jsxs(jr,{children:[Ra.jsx(wr,{asChild:!0,children:Ra.jsxs(Oa,{variant:"outline",className:"w-full justify-start text-left font-normal",children:[Ra.jsx(o,{className:"h-4 w-4 mr-2"}),e]})}),Ra.jsx(kr,{className:"w-80",children:Ra.jsxs("div",{className:"space-y-3",children:[Ra.jsxs("div",{children:[Ra.jsx(Fa,{htmlFor:"icon-search",children:"Buscar ícone"}),Ra.jsx(za,{id:"icon-search",placeholder:"Digite o nome do ícone...",value:s,onChange:e=>n(e.target.value)})]}),Ra.jsx(Tr,{className:"h-48",children:Ra.jsx("div",{className:"grid grid-cols-6 gap-2",children:i.map(([t,s])=>Ra.jsx("button",{className:"p-2 rounded border-2 hover:border-primary "+(e===t?"border-primary bg-primary/10":"border-border"),onClick:()=>a?.(t),title:t,children:Ra.jsx(s,{className:"h-4 w-4"})},t))})})]})})]})]})};class Er{static handleError(e){if(!e)return!1;const a=e.message||e.toString();return!!this.isAuthenticationError(e,a)&&(Gt.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.")}}}const Ar=i(void 0),Ir=({children:e})=>{const[a,i]=r({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null});let o=null;try{o=Qe()}catch{}const[l,c]=r(!1),[d,m]=r(0),u=s(e=>{i(a=>({...a,...e}))},[]),f=s(e=>{i(a=>({...a,isLoading:e}))},[]),p=s(()=>{i({user:null,companies:[],alias:null,isAuthenticated:!1,isLoading:!0,selectedUnit:null,userId:null,userAlias:null})},[]),h=s(async e=>{try{f(!0);const a=Gt.getAccessToken();if(!a)return;const t=await us.generateToken(a,e.alias);if(!t)return;Gt.setSupabaseToken(t),Gt.setSelectedAlias(e.alias);const s={id:Gt.getCompanyId(e.alias)||e.id,name:e.name,alias:e.alias};u({alias:e.alias,selectedUnit:s}),o&&await o.invalidateQueries()}catch(a){}finally{f(!1)}},[u,o,f]),x=s(async()=>await ms.processCallback(),[]),g=s(async()=>{ms.logout(),p(),o&&await o.clear()},[p,o]),b=s(e=>{c(e)},[]),y=s(()=>{m(e=>e+1)},[]),v=s(()=>{m(e=>e+1)},[]);n(()=>{if(!a.isAuthenticated)return;let e=!0;const t=setInterval(()=>{e&&(Gt.areAllTokensValid()||e&&g())},6e5);return()=>{e=!1,clearInterval(t)}},[a.isAuthenticated,g]),n(()=>{let e=!0;return(async()=>{try{if(await new Promise(e=>setTimeout(e,100)),!e)return;const a=await ms.initialize();if(!e)return;a&&a.isAuthenticated?u({user:a.user,companies:a.companies,alias:a.alias,isAuthenticated:!0,isLoading:!1,selectedUnit:a.selectedUnit,userId:a.userId,userAlias:a.userAlias}):e&&f(!1)}catch(a){e&&(Er.handleError(a),f(!1))}})(),()=>{e=!1}},[u,f,g]);const N=t(()=>({...a,logout:g,processCallback:x,switchUnit:h,availableUnits:a.companies,isSearchVisible:l,setSearchVisible:b,clearSearch:y,refreshData:v}),[a,g,x,h,l,b,y,v]);return Ra.jsx(Ar.Provider,{value:N,children:e})},Dr=()=>{const e=o(Ar);if(void 0===e)throw new Error("useAuth deve ser usado dentro de um AuthProvider");return e},Or=(e={})=>{const{user:a,alias:t}=Dr(),s=ls(),{enabled:r=s.enableUsersApi}=e;return Je({queryKey:["qualiex-users",t],queryFn:()=>ws.getUsers(t),enabled:r&&!!t&&!!a,retry:2,retryDelay:1e3})},zr=({value:e="",onChange:a,placeholder:t="Selecionar usuário",disabled:s,className:r,enabled:n})=>{const{data:i=[],isLoading:o,error:l}=Or({enabled:n});return o?Ra.jsx(Ks,{className:_a("h-10 w-full",r)}):l?Ra.jsxs("div",{className:`flex items-center gap-2 p-2 border border-destructive/20 rounded-md ${r}`,children:[Ra.jsx(S,{className:"h-4 w-4 text-destructive"}),Ra.jsx("span",{className:"text-sm text-destructive",children:"Erro ao carregar usuários"})]}):Ra.jsxs(dt,{value:e,onValueChange:a,disabled:s||0===i.length,children:[Ra.jsx(ut,{className:r,children:Ra.jsx(mt,{placeholder:t})}),Ra.jsx(ht,{children:0===i.length?Ra.jsx(xt,{value:"no-users",disabled:!0,children:"Nenhum usuário encontrado"}):i.map(e=>Ra.jsx(xt,{value:e.userId,children:e.userName},e.userId))})]})},$r=({value:e,onChange:a,placeholder:t="Selecionar responsável",disabled:s,className:r})=>Ra.jsxs(dt,{value:e,onValueChange:a,disabled:s,children:[Ra.jsx(ut,{className:r,children:Ra.jsx(mt,{placeholder:t})}),Ra.jsx(ht,{children:Ra.jsx(xt,{value:"placeholder",children:"Responsável placeholder"})})]});function Fr({title:e,sections:n,initialData:i,onSubmit:o,onCancel:l,open:c,submitButtonText:d="Salvar",isLoading:m=!1,usersData:u}){const[f,p]=r(n?.[0]?.id||""),h=t(()=>n&&Array.isArray(n)?n.flatMap(e=>e.fields.flatMap(e=>"group"===e.type?e.fields||[]:e)):[],[n]),{formData:x,errors:g,updateField:b,handleSubmit:y}=Nr(h,i,void 0,c),v=t(()=>n&&Array.isArray(n)?n.map(e=>({...e,disabled:e.condition?!e.condition(x):e.disabled||!1})):[],[n,x]),N=t(()=>{const e=v.find(e=>e.id===f);if(e&&!e.disabled)return f;const a=v.find(e=>!e.disabled);return a?.id||f},[v,f]);a.useEffect(()=>{N!==f&&p(N)},[N,f]);const j=v.find(e=>e.id===N),w=e=>{const a=(e.computedValue,x[e.name]),t=void 0!==a?a:"",s=g[e.name];switch(e.type){case"group":return Ra.jsxs("div",{className:"space-y-2",children:[e.label,Ra.jsx("div",{className:e.className||("horizontal"===e.layout?"flex gap-3":"space-y-3"),children:e.fields?.map(e=>w(e))})]},e.name);case"user-select":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx(zr,{value:t||"",onChange:a=>b(e.name,a),placeholder:e.placeholder,disabled:e.disabled,className:s?"border-red-500":""}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"textarea":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx(bt,{id:e.name,value:t||"",onChange:a=>{b(e.name,a.target.value)},placeholder:e.placeholder,disabled:e.disabled,className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"select":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsxs(dt,{value:String(t),onValueChange:a=>{b(e.name,a),e.onValueChange&&e.onValueChange(a)},disabled:e.disabled,children:[Ra.jsx(ut,{className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`,children:Ra.jsx(mt,{placeholder:e.placeholder})}),Ra.jsx(ht,{children:e.options?.map(e=>Ra.jsx(xt,{value:e.value,children:e.label},e.value))})]}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"date":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx(za,{id:e.name,type:"date",value:String(t),onChange:a=>b(e.name,a.target.value),placeholder:e.placeholder,disabled:e.disabled,className:_a("w-full",s?"border-red-500":"",e.disabled?"bg-gray-100 cursor-not-allowed":"")}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"single-responsible-select":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx($r,{value:String(t),onChange:a=>b(e.name,a),placeholder:e.placeholder,disabled:e.disabled,className:s?"border-red-500":""}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"simple-qualiex-user-field":const a=ls();return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx(zr,{value:t??"",onChange:a=>b(e.name,a),placeholder:e.placeholder,disabled:e.disabled,className:s?"border-red-500":"",enabled:a.enableUsersApi}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);case"color":return Ra.jsxs("div",{children:[Ra.jsxs(Fa,{htmlFor:e.name,children:[e.label," ",e.required&&Ra.jsx("span",{className:"text-destructive",children:"*"})]}),Ra.jsx(za,{id:e.name,type:"color",value:t||e.defaultValue||"#000000",onChange:a=>b(e.name,a.target.value),className:"h-10"}),s&&Ra.jsx("p",{className:"text-sm text-destructive mt-1",children:s})]},e.name);case"color-picker":return Ra.jsxs("div",{children:[Ra.jsx(Cr,{label:`${e.label} ${e.required?"*":""}`,value:t||e.defaultValue||"#3b82f6",onChange:a=>b(e.name,a)}),s&&Ra.jsx("p",{className:"text-sm text-destructive mt-1",children:s})]},e.name);case"icon-picker":return Ra.jsxs("div",{children:[Ra.jsx(Pr,{label:`${e.label} ${e.required?"*":""}`,value:t||e.defaultValue||"Star",onChange:a=>b(e.name,a)}),s&&Ra.jsx("p",{className:"text-sm text-destructive mt-1",children:s})]},e.name);case"number":return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx(za,{id:e.name,type:"number",value:null!=t?String(t):"",onChange:a=>{const t=a.target.value,s=""===t?null:Number(t);b(e.name,s)},placeholder:e.placeholder,disabled:e.disabled,className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`,min:e.min,step:e.step||"1"}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name);default:return Ra.jsxs("div",{className:`space-y-2 ${e.className||""}`,children:[Ra.jsx(Fa,{htmlFor:e.name,children:e.label}),Ra.jsx(za,{id:e.name,type:"text",value:t||"",onChange:a=>{b(e.name,a.target.value)},placeholder:e.placeholder,disabled:e.disabled,className:`${s?"border-red-500":""} ${e.disabled?"bg-gray-100 cursor-not-allowed":""}`,readOnly:e.disabled}),s&&Ra.jsx("p",{className:"text-sm text-red-500",children:s})]},e.name)}},k=s(()=>{if(!j)return null;if(j.disabled)return Ra.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-center",children:[Ra.jsx("div",{className:"rounded-full bg-muted p-3 mb-4",children:Ra.jsx("svg",{className:"h-6 w-6 text-muted-foreground",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:Ra.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m0 0v2m0-2h2m-2 0H9m3-8V9m0-4V3"})})}),Ra.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Seção não disponível"}),Ra.jsx("p",{className:"text-muted-foreground max-w-sm",children:'Complete as informações obrigatórias na seção "Informações Gerais" para acessar esta seção.'})]});if(j.component){const e=j.component;return Ra.jsx(e,{formData:x,updateField:b,errors:g,users:u,disabled:j.disabled})}return Ra.jsx("div",{className:"space-y-3",children:j.fields.map(w)})},[j,x,b,g,u,w]),S=Ra.jsxs("div",{className:"flex flex-col max-h-[80vh]",children:[v.length>1&&Ra.jsx("div",{className:"flex-shrink-0 p-4 border-b",children:Ra.jsx("div",{className:"flex space-x-2",children:v.map(e=>Ra.jsx(Oa,{variant:N===e.id?"action-primary":"action-secondary",size:"sm",onClick:()=>(e=>{const a=v.find(a=>a.id===e);a&&!a.disabled&&p(e)})(e.id),disabled:e.disabled,className:e.disabled?"opacity-50 cursor-not-allowed":"",children:e.title},e.id))})}),Ra.jsx("div",{className:"flex-1 overflow-y-auto px-2 md:px-4 pt-0 pb-2 md:pb-4",children:m?Ra.jsx("div",{className:"flex items-center justify-center py-12",children:Ra.jsx("div",{className:"text-muted-foreground",children:"Carregando dados..."})}):Ra.jsxs("form",{onSubmit:y(o),className:"space-y-3 md:space-y-4",children:[k(),Ra.jsxs("div",{className:"flex justify-end space-x-2 pt-4",children:[Ra.jsx(Oa,{type:"button",variant:"outline",onClick:l,children:"Cancelar"}),Ra.jsx(Oa,{type:"submit",disabled:m,children:d})]})]})})]});return Ra.jsx(qa,{open:c,onOpenChange:e=>{!1===e&&!0===c&&l()},children:Ra.jsxs(Xa,{className:"max-w-4xl max-h-[90vh] overflow-hidden",children:[Ra.jsxs(Ga,{className:"bg-primary text-primary-foreground px-6 py-4 -mx-6 -mt-6 mb-4",children:[Ra.jsx(Za,{className:"text-white",children:e}),Ra.jsx(et,{className:"sr-only",children:"Formulário para preenchimento de dados"})]}),S]})})}function Lr({open:e,title:a,sections:t,initialData:s,onSubmit:r,onCancel:n,isLoading:i=!1,submitButtonText:o="Salvar"}){return Ra.jsx(Fr,{open:e,title:a,sections:t,initialData:s,onSubmit:r,onCancel:n,isLoading:i,submitButtonText:o})}const Mr=({manager:e})=>{const{pagination:a={totalItems:0,totalPages:1},currentPage:t=1,itemsPerPage:s=10,handlePageChange:r=()=>{},handleItemsPerPageChange:n=()=>{}}=e,{totalItems:i=0,totalPages:o=1}=a,l=i>0?(t-1)*s+1:0,c=Math.min(t*s,i);return Ra.jsxs("div",{className:"px-4 h-12 flex items-center justify-between text-sm text-muted-foreground bg-muted/50 border-t border-border flex-shrink-0 mt-auto",children:[Ra.jsxs("div",{className:"flex items-center space-x-3",children:[Ra.jsx("span",{children:"Itens por página"}),Ra.jsxs(dt,{value:s.toString(),onValueChange:e=>n(Number(e)),children:[Ra.jsx(ut,{className:"w-20 h-8 border-border",children:Ra.jsx(mt,{})}),Ra.jsxs(ht,{children:[Ra.jsx(xt,{value:"10",children:"10"}),Ra.jsx(xt,{value:"25",children:"25"}),Ra.jsx(xt,{value:"50",children:"50"}),Ra.jsx(xt,{value:"100",children:"100"})]})]})]}),Ra.jsx("div",{className:"flex-1 flex justify-center",children:Ra.jsx("span",{children:i>0?`${l}-${c} de ${i} itens (página ${t} de ${o})`:"0 itens"})}),Ra.jsxs("div",{className:"flex items-center space-x-1",children:[Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(1),disabled:1===t,children:Ra.jsx(Pe,{className:"h-4 w-4"})}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(Math.max(1,t-1)),disabled:1===t,children:Ra.jsx(me,{className:"h-4 w-4"})}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(Math.min(o,t+1)),disabled:t===o,children:Ra.jsx(R,{className:"h-4 w-4"})}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:()=>r(o),disabled:t===o,children:Ra.jsx(Ee,{className:"h-4 w-4"})})]})]})};function Vr({manager:e,config:a,formSections:t,onSave:s,FormComponent:i,onToggleStatus:o}){const{setSearchVisible:l}=Dr(),[c,d]=r(!1),[m,u]=r(null),[f,p]=r({isOpen:!1,entityId:null,entityName:""});n(()=>(l(!0),()=>{l(!1)}),[l]);const h=()=>{d(!1),u(null)},x=e=>{s(e),d(!1),u(null)};return Ra.jsxs("div",{className:"flex-1 flex flex-col h-full",children:[Ra.jsx("div",{className:"flex-shrink-0 flex justify-between items-center px-4 py-1.5 bg-muted/50 border-b",children:Ra.jsx("div",{className:"flex items-center gap-4",children:Ra.jsxs(Oa,{onClick:()=>{u(null),d(!0)},className:"flex items-center gap-2",children:[Ra.jsx(fe,{size:16}),"Novo"]})})}),Ra.jsx("div",{className:"flex-1 flex flex-col overflow-hidden",children:Ra.jsx(vr,{manager:e,columns:a.columns,onEdit:e=>{u(e),d(!0)},onDelete:e=>{p({isOpen:!0,entityId:e.id,entityName:e.title||e.name||"Item"})},onToggleStatus:o})}),Ra.jsx("div",{className:"flex-shrink-0 border-t bg-background",children:Ra.jsx(Mr,{manager:e})}),i?Ra.jsx(i,{open:c,onCancel:h,onSubmit:x,editingEntity:m,isLoading:e.isLoading}):Ra.jsx(Lr,{open:c,title:m?`Editar ${a.entityName}`:`Novo ${a.entityName}`,sections:t,initialData:m||void 0,onSubmit:x,onCancel:h,isLoading:e.isLoading,submitButtonText:m?"Atualizar":"Criar"}),Ra.jsx(Ms,{open:f.isOpen,onOpenChange:()=>{p({isOpen:!1,entityId:null,entityName:""})},onConfirm:a=>{f.entityId&&(e.deleteEntity(f.entityId),p({isOpen:!1,entityId:null,entityName:""}))},item:f.entityId?{id:f.entityId,title:f.entityName}:void 0,entityName:a.entityName,isDeleting:e.isDeleting})]})}function Ur(e){return()=>{const{manager:a,config:t,onSave:s,onToggleStatus:r,FormComponent:n}=e,i={entityName:t.entityName,entityNamePlural:t.entityNamePlural,filters:t.filters||[],columns:t.columns,cardFields:t.cardFields||[]};return Ra.jsx(Vr,{manager:a,config:i,formSections:t.formSections,onSave:s,FormComponent:n,onToggleStatus:r})}}function Br(e,a,t){return s=>{if(s.id){const a=t(s);e.updateEntity(s.id,a)}else{const t=a(s);e.createEntity(t)}}}function Wr(e,a,t={}){const s=[];return Object.keys(a).forEach(e=>{if("id"!==e&&!e.endsWith("_at")){const t=a[e],r={key:e,header:Hr(e),label:Hr(e),...qr(e,t),sortable:!0,searchable:"string"==typeof t};s.push(r)}}),{title:e,columns:s,searchPlaceholder:`Buscar ${e.toLowerCase()}...`,itemsPerPage:10,enableCreate:!0,enableEdit:!0,enableDelete:!0,enableSearch:!0,enableFilters:!1,...t}}function qr(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 Hr(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/\b\w/g,e=>e.toUpperCase()).trim()}const Qr={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 Jr(e,a,t={}){const s=Qr[e];return Wr(s.title,a,{...s,...t})}const Kr=({children:e})=>{const{isAuthenticated:t,isLoading:s}=Dr();if(a.useEffect(()=>{if(!t)return;const e=()=>{Gt.areAllTokensValid()||ms.logout()};e();const a=setInterval(e,3e5);return()=>clearInterval(a)},[t]),a.useEffect(()=>{if(s)return;if(t)return;if(Gt.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,r=new URLSearchParams(a);if(e.has("access_token")||r.has("access_token"))return;const n=ns();(async()=>{n?await ms.loginDev():ms.loginProd()})()},[t,s]),s)return Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Carregando..."})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),Ra.jsx("p",{className:"text-muted-foreground",children:"Verificando autenticação..."})]})]})});if(!t){return new URLSearchParams(window.location.search).has("access_token")||new URLSearchParams(window.location.hash.substring(1)).has("access_token")?Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Processando..."})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),Ra.jsx("p",{className:"text-muted-foreground",children:"Processando tokens..."})]})]})}):Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Iniciando..."})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"animate-spin rounded-full h-8 w-8 border-b-2 border-primary mx-auto mb-4"}),Ra.jsx("p",{className:"text-muted-foreground",children:ns()?"Fazendo login automático...":"Redirecionando para autenticação..."})]})]})})}return Ra.jsx(Ra.Fragment,{children:e})},Xr=u("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"}}),Gr=e.forwardRef(({className:e,variant:a,...t},s)=>Ra.jsx("div",{ref:s,role:"alert",className:_a(Xr({variant:a}),e),...t}));Gr.displayName="Alert";const Yr=e.forwardRef(({className:e,...a},t)=>Ra.jsx("h5",{ref:t,className:_a("mb-1 font-medium leading-none tracking-tight",e),...a}));Yr.displayName="AlertTitle";const Zr=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("text-sm [&_p]:leading-relaxed",e),...a}));Zr.displayName="AlertDescription";const en=()=>{const{processCallback:e}=Dr(),[a,t]=r(null),[s,i]=r(!1);n(()=>{(async()=>{try{if(await e()){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 t("Falha na autenticação. Tente novamente.")}catch(a){t(a?.message||"Erro durante a autenticação. Tente novamente.")}})()},[e]);const o=async()=>{i(!0),t(null);try{await e()||t("Falha na autenticação. Tente novamente.")}catch(a){t(a?.message||"Erro ao tentar novamente.")}finally{i(!1)}},l=()=>{window.location.href="/"};return a?Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsxs(Va,{className:"text-xl font-semibold text-destructive flex items-center justify-center gap-2",children:[Ra.jsx(S,{className:"h-5 w-5"}),"Erro na Autenticação"]})}),Ra.jsxs(Ba,{className:"space-y-4",children:[Ra.jsx(Gr,{variant:"destructive",children:Ra.jsx(Zr,{children:a})}),Ra.jsx("div",{className:"text-sm text-muted-foreground",children:Ra.jsx("p",{children:"Se o problema persistir, verifique se a URL de callback está configurada corretamente no provedor OAuth."})}),Ra.jsxs("div",{className:"flex gap-2",children:[Ra.jsx(Oa,{onClick:o,disabled:s,className:"flex-1",children:s?Ra.jsxs(Ra.Fragment,{children:[Ra.jsx(jt,{size:"sm",className:"mr-2"}),"Tentando..."]}):Ra.jsxs(Ra.Fragment,{children:[Ra.jsx(Ae,{className:"h-4 w-4 mr-2"}),"Tentar Novamente"]})}),Ra.jsx(Oa,{onClick:l,variant:"outline",className:"flex-1",children:"Voltar ao Início"})]})]})]})}):Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-xl font-semibold",children:"Processando Autenticação"})}),Ra.jsxs(Ba,{className:"text-center",children:[Ra.jsx("div",{className:"flex justify-center mb-4",children:Ra.jsx(jt,{size:"lg"})}),Ra.jsx("p",{className:"text-muted-foreground",children:"Processando tokens e redirecionando..."})]})]})})},an=()=>Ra.jsx("div",{className:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary/5 to-secondary/5",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsx(Ma,{className:"text-center",children:Ra.jsx(Va,{className:"text-2xl font-bold",children:"Acesso ao Sistema"})}),Ra.jsxs(Ba,{className:"text-center space-y-4",children:[Ra.jsx("p",{className:"text-muted-foreground",children:"Faça login para acessar o sistema"}),Ra.jsx(Oa,{onClick:async()=>{ns()?await ms.loginDev():ms.loginProd()},className:"w-full",size:"lg",children:ns()?"Login Desenvolvimento":"Entrar com Qualiex"})]})]})});function tn(e){return{queryClient:e.queryClient||new Xe({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}}),config:e}}const sn=oa.Root,rn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(oa.Item,{ref:t,className:_a("border-b",e),...a}));rn.displayName="AccordionItem";const nn=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsx(oa.Header,{className:"flex",children:Ra.jsxs(oa.Trigger,{ref:s,className:_a("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",e),...t,children:[a,Ra.jsx(N,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));nn.displayName=oa.Trigger.displayName;const on=e.forwardRef(({className:e,children:a,...t},s)=>Ra.jsx(oa.Content,{ref:s,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...t,children:Ra.jsx("div",{className:_a("pb-4 pt-0",e),children:a})}));on.displayName=oa.Content.displayName;const ln=la.Root,cn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ca.Root,{ref:t,className:_a("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",e),...a}));cn.displayName=ca.Root.displayName;const dn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ca.Image,{ref:t,className:_a("aspect-square h-full w-full",e),...a}));dn.displayName=ca.Image.displayName;const mn=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ca.Fallback,{ref:t,className:_a("flex h-full w-full items-center justify-center rounded-full bg-muted",e),...a}));mn.displayName=ca.Fallback.displayName;const un=e.forwardRef(({...e},a)=>Ra.jsx("nav",{ref:a,"aria-label":"breadcrumb",...e}));un.displayName="Breadcrumb";const fn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ol",{ref:t,className:_a("flex flex-wrap items-center gap-1.5 break-words text-sm text-muted-foreground sm:gap-2.5",e),...a}));fn.displayName="BreadcrumbList";const pn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("li",{ref:t,className:_a("inline-flex items-center gap-1.5",e),...a}));pn.displayName="BreadcrumbItem";const hn=e.forwardRef(({asChild:a,className:t,...s},r)=>{const n=a?e.Fragment:"a";return Ra.jsx(n,{ref:r,className:_a("transition-colors hover:text-foreground",t),...s})});hn.displayName="BreadcrumbLink";const xn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("span",{ref:t,role:"link","aria-disabled":"true","aria-current":"page",className:_a("font-normal text-foreground",e),...a}));xn.displayName="BreadcrumbPage";const gn=({children:e,className:a,...t})=>Ra.jsx("li",{role:"presentation","aria-hidden":"true",className:_a("[&>svg]:size-3.5",a),...t,children:e??Ra.jsx(R,{})});gn.displayName="BreadcrumbSeparator";const bn=({className:e,...a})=>Ra.jsxs("span",{role:"presentation","aria-hidden":"true",className:_a("flex h-9 w-9 items-center justify-center",e),...a,children:[Ra.jsx(Ie,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"More"})]});function yn(e){return(a={})=>{const t=a.width?String(a.width):e.defaultWidth;return e.formats[t]||e.formats[e.defaultWidth]}}function vn(e){return(a,t)=>{let s;if("formatting"===(t?.context?String(t.context):"standalone")&&e.formattingValues){const a=e.defaultFormattingWidth||e.defaultWidth,r=t?.width?String(t.width):a;s=e.formattingValues[r]||e.formattingValues[a]}else{const a=e.defaultWidth,r=t?.width?String(t.width):e.defaultWidth;s=e.values[r]||e.values[a]}return s[e.argumentCallback?e.argumentCallback(a):a]}}function Nn(e){return(a,t={})=>{const s=t.width,r=s&&e.matchPatterns[s]||e.matchPatterns[e.defaultMatchWidth],n=a.match(r);if(!n)return null;const i=n[0],o=s&&e.parsePatterns[s]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(o)?function(e,a){for(let t=0;t<e.length;t++)if(a(e[t]))return t;return}(o,e=>e.test(i)):function(e,a){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&a(e[t]))return t;return}(o,e=>e.test(i));let c;c=e.valueCallback?e.valueCallback(l):l,c=t.valueCallback?t.valueCallback(c):c;return{value:c,rest:a.slice(i.length)}}}bn.displayName="BreadcrumbEllipsis";const jn={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"}},wn={date:yn({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:yn({formats:{full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},defaultWidth:"full"}),dateTime:yn({formats:{full:"{{date}} 'às' {{time}}",long:"{{date}} 'às' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},kn={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"},Sn={ordinalNumber:(e,a)=>{const t=Number(e);return"week"===a?.unit?t+"ª":t+"º"},era:vn({values:{narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},defaultWidth:"wide"}),quarter:vn({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:vn({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:vn({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:vn({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"})},Cn={ordinalNumber:(Tn={matchPattern:/^(\d+)[ºªo]?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{const t=e.match(Tn.matchPattern);if(!t)return null;const s=t[0],r=e.match(Tn.parsePattern);if(!r)return null;let n=Tn.valueCallback?Tn.valueCallback(r[0]):r[0];return n=a.valueCallback?a.valueCallback(n):n,{value:n,rest:e.slice(s.length)}}),era:Nn({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:Nn({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:Nn({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:Nn({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:Nn({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 Tn;const Rn={code:"pt-BR",formatDistance:(e,a,t)=>{let s;const r=jn[e];return s="string"==typeof r?r:1===a?r.one:r.other.replace("{{count}}",String(a)),t?.addSuffix?t.comparison&&t.comparison>0?"em "+s:"há "+s:s},formatLong:wn,formatRelative:(e,a,t,s)=>{const r=kn[e];return"function"==typeof r?r(a):r},localize:Sn,match:Cn,options:{weekStartsOn:0,firstWeekContainsDate:1}};function _n({className:e,classNames:a,showOutsideDays:t=!0,...s}){return Ra.jsx(da,{showOutsideDays:t,className:_a("p-3",e),locale:Rn,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:_a(Da({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:_a(Da({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:({...e})=>Ra.jsx(me,{className:"h-4 w-4"}),IconRight:({...e})=>Ra.jsx(R,{className:"h-4 w-4"})},...s})}_n.displayName="Calendar";const Pn=ma.Root,En=ma.CollapsibleTrigger,An=ma.CollapsibleContent,In=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",e),...a}));In.displayName="Command";const Dn=({children:e,...a})=>Ra.jsx("div",{...a,children:Ra.jsx(In,{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:e})}),On=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:Ra.jsx("input",{ref:t,className:_a("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",e),...a})}));On.displayName="CommandInput";const zn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("max-h-[300px] overflow-y-auto overflow-x-hidden",e),...a}));zn.displayName="CommandList";const $n=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("py-6 text-center text-sm text-muted-foreground",e),...a}));$n.displayName="CommandEmpty";const Fn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("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",e),...a}));Fn.displayName="CommandGroup";const Ln=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,className:_a("-mx-1 h-px bg-border",e),...a}));Ln.displayName="CommandSeparator";const Mn=e.forwardRef(({className:e,disabled:a,onSelect:t,value:s,...r},n)=>Ra.jsx("div",{ref:n,className:_a("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",e),"data-disabled":a,onClick:()=>!a&&t?.(s||""),...r}));Mn.displayName="CommandItem";const Vn=({className:e,...a})=>Ra.jsx("span",{className:_a("ml-auto text-xs tracking-widest text-muted-foreground",e),...a});Vn.displayName="CommandShortcut";const Un={Root:function({children:e,className:a}){return Ra.jsx("div",{className:_a("space-y-4",a),children:e})},Item:function({children:e,onClick:a,className:t}){return Ra.jsx(La,{className:_a("transition-colors",a&&"cursor-pointer hover:bg-muted/50",t),onClick:a,children:Ra.jsx(Ba,{className:"p-4",children:e})})},Field:function({label:e,value:a,className:t}){return Ra.jsxs("div",{className:_a("flex justify-between items-center text-sm",t),children:[Ra.jsxs("span",{className:"text-muted-foreground font-medium",children:[e,":"]}),Ra.jsx("span",{className:"text-foreground",children:a})]})}},Bn=({variant:e="button",className:t="",children:s})=>{const[n,i]=r(!1),{user:o}=Dr(),{companies:l,alias:c}=Dr(),d=c?l?.find(e=>e.alias===c)||l?.[0]||null:l?.[0]||null,m=(()=>{if(!o?.email)return"";return`${`${import.meta.env.VITE_FEEDBACK_APP_URL}/`}?${new URLSearchParams({email:o.email,module:"OKR",alias:d?.alias||""}).toString()}`})();if(!o?.email||!d)return null;const u=a.forwardRef((a,s)=>"menuItem"===e?Ra.jsxs("div",{ref:s,className:"flex items-center cursor-pointer w-full px-2 py-1.5 text-sm hover:bg-accent rounded-sm",...a,children:[Ra.jsx(De,{className:"mr-2 h-4 w-4"}),"Feedback"]}):Ra.jsxs(Oa,{ref:s,variant:"default",size:"sm",className:`bg-primary hover:bg-primary/90 ${t}`,...a,children:[Ra.jsx(De,{className:"mr-2 h-4 w-4"}),"Feedback"]}));return u.displayName="TriggerButton",Ra.jsxs(qa,{open:n,onOpenChange:i,children:[Ra.jsx(Ha,{asChild:!0,children:Ra.jsx(u,{})}),Ra.jsxs(Xa,{className:"max-w-4xl max-h-[90vh] w-full h-full p-0 overflow-hidden",children:[Ra.jsxs(Ga,{className:"sr-only",children:[Ra.jsx(Za,{children:"Feedback"}),Ra.jsx(et,{children:"Formulário de feedback para melhorias no sistema"})]}),Ra.jsx("div",{className:"w-full h-full",children:Ra.jsx("iframe",{src:m,width:"100%",height:"600px",className:"feedback-iframe",title:"Formulário de Feedback",loading:"lazy"})})]})]})},Wn={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))]"},qn={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"};function Hn({children:e,cols:a="auto-fit",gap:t="md",className:s}){return Ra.jsx("div",{className:_a("grid",Wn[a],qn[t],s),children:e})}function Qn({items:e,maxItems:a=3,className:t}){return e.length>a&&(e[0],e.slice(-(a-1))),e.length,Ra.jsx(un,{className:t})}function Jn(){const e=Ye();return(()=>{const a=e.pathname.split("/").filter(Boolean),t=[{label:"Exemplos",href:"/"}];let s="";return a.forEach((e,r)=>{s+=`/${e}`;const n=r===a.length-1,i=e.split("-").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");t.push({label:i,href:n?void 0:s,isCurrentPage:n})}),t})()}const Kn=({className:e,...a})=>Ra.jsx("nav",{role:"navigation","aria-label":"pagination",className:_a("mx-auto flex w-full justify-center",e),...a});Kn.displayName="Pagination";const Xn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ul",{ref:t,className:_a("flex flex-row items-center gap-1",e),...a}));Xn.displayName="PaginationContent";const Gn=e.forwardRef(({className:e,...a},t)=>Ra.jsx("li",{ref:t,className:_a("",e),...a}));Gn.displayName="PaginationItem";const Yn=({className:e,isActive:a,size:t="icon",...s})=>Ra.jsx("a",{"aria-current":a?"page":void 0,className:_a(Da({variant:a?"outline":"ghost",size:t}),e),...s});Yn.displayName="PaginationLink";const Zn=({className:e,...a})=>Ra.jsxs(Yn,{"aria-label":"Go to previous page",size:"default",className:_a("gap-1 pl-2.5",e),...a,children:[Ra.jsx(me,{className:"h-4 w-4"}),Ra.jsx("span",{children:"Previous"})]});Zn.displayName="PaginationPrevious";const ei=({className:e,...a})=>Ra.jsxs(Yn,{"aria-label":"Go to next page",size:"default",className:_a("gap-1 pr-2.5",e),...a,children:[Ra.jsx("span",{children:"Next"}),Ra.jsx(R,{className:"h-4 w-4"})]});ei.displayName="PaginationNext";const ai=({className:e,...a})=>Ra.jsxs("span",{"aria-hidden":!0,className:_a("flex h-9 w-9 items-center justify-center",e),...a,children:[Ra.jsx(Ie,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"More pages"})]});ai.displayName="PaginationEllipsis";const ti=e.forwardRef(({className:e,value:a,...t},s)=>Ra.jsx(ua.Root,{ref:s,className:_a("relative h-2 w-full overflow-hidden rounded-full bg-primary/20",e),...t,children:Ra.jsx(ua.Indicator,{className:"h-full w-full flex-1 bg-primary transition-all",style:{transform:`translateX(-${100-(a||0)}%)`}})}));ti.displayName=ua.Root.displayName;const si=e.forwardRef(({className:e,...a},t)=>Ra.jsx(fa.Root,{className:_a("grid gap-2",e),...a,ref:t}));si.displayName=fa.Root.displayName;const ri=e.forwardRef(({className:e,...a},t)=>Ra.jsx(fa.Item,{ref:t,className:_a("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",e),...a,children:Ra.jsx(fa.Indicator,{className:"flex items-center justify-center",children:Ra.jsx(_,{className:"h-2.5 w-2.5 fill-current text-current"})})}));ri.displayName=fa.Item.displayName;const ni=e.forwardRef(({className:e,orientation:a="horizontal",decorative:t=!0,...s},r)=>Ra.jsx(pa.Root,{ref:r,decorative:t,orientation:a,className:_a("shrink-0 bg-border","horizontal"===a?"h-[1px] w-full":"h-full w-[1px]",e),...s}));ni.displayName=pa.Root.displayName;const ii=y.Root,oi=y.Trigger,li=y.Close,ci=y.Portal,di=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Overlay,{className:_a("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",e),...a,ref:t}));di.displayName=y.Overlay.displayName;const mi=u("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"}}),ui=e.forwardRef(({side:e="right",className:a,children:t,...s},r)=>Ra.jsxs(ci,{children:[Ra.jsx(di,{}),Ra.jsxs(y.Content,{ref:r,className:_a(mi({side:e}),a),...s,children:[t,Ra.jsxs(y.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:[Ra.jsx(v,{className:"h-4 w-4"}),Ra.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));ui.displayName=y.Content.displayName;const fi=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col space-y-2 text-center sm:text-left",e),...a});fi.displayName="SheetHeader";const pi=({className:e,...a})=>Ra.jsx("div",{className:_a("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...a});pi.displayName="SheetFooter";const hi=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Title,{ref:t,className:_a("text-lg font-semibold text-foreground",e),...a}));hi.displayName=y.Title.displayName;const xi=e.forwardRef(({className:e,...a},t)=>Ra.jsx(y.Description,{ref:t,className:_a("text-sm text-muted-foreground",e),...a}));xi.displayName=y.Description.displayName;const gi=ha.Provider,bi=ha.Root,yi=ha.Trigger,vi=e.forwardRef(({className:e,sideOffset:a=4,...t},s)=>Ra.jsx(ha.Content,{ref:s,sideOffset:a,className:_a("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",e),...t}));vi.displayName=ha.Content.displayName;const Ni="sidebar:state",ji=e.createContext(null);function wi(){const a=e.useContext(ji);if(!a)throw new Error("useSidebar must be used within a SidebarProvider.");return a}const ki=e.forwardRef(({defaultOpen:a=!0,open:t,onOpenChange:s,className:r,style:n,children:i,...o},l)=>{const[c,d]=e.useState(!1);e.useEffect(()=>{const e=()=>d(window.innerWidth<768);return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);const[m,u]=e.useState(!1),[f,p]=e.useState(()=>{if("undefined"!=typeof window){const e=localStorage.getItem(Ni);return null!==e?"true"===e:a}return a}),h=t??f,x=e.useCallback(e=>{const a="function"==typeof e?e(h):e;s?s(a):p(a),"undefined"!=typeof window&&localStorage.setItem(Ni,String(a))},[s,h]),g=e.useCallback(()=>c?u(e=>!e):x(e=>!e),[c,x,u]);e.useEffect(()=>{const e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),g())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[g]);const b=h?"expanded":"collapsed",y=e.useMemo(()=>({state:b,open:h,setOpen:x,isMobile:c,openMobile:m,setOpenMobile:u,toggleSidebar:g}),[b,h,x,c,m,u,g]);return Ra.jsx(ji.Provider,{value:y,children:Ra.jsx(gi,{delayDuration:0,children:Ra.jsx("div",{className:_a("group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-sidebar sidebar-container",r),style:{"--sidebar-width":"16rem","--sidebar-width-icon":"4.5rem",...n},ref:l,...o,children:i})})})});ki.displayName="SidebarProvider";const Si=e.forwardRef(({side:e="left",variant:a="sidebar",collapsible:t="offcanvas",className:s,children:r,...n},i)=>{const{isMobile:o,state:l,openMobile:c,setOpenMobile:d}=wi();return"none"===t?Ra.jsx("div",{className:_a("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground",s),ref:i,...n,children:r}):o?Ra.jsx(ii,{open:c,onOpenChange:d,...n,children:Ra.jsxs(ui,{"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:e,children:[Ra.jsx(hi,{className:"sr-only",children:"Menu de Navegação"}),Ra.jsx("div",{className:"flex h-full w-full flex-col",children:r})]})}):Ra.jsxs("div",{ref:i,className:"group peer hidden md:block text-sidebar-foreground","data-state":l,"data-collapsible":"collapsed"===l?t:"","data-variant":a,"data-side":e,children:[Ra.jsx("div",{className:_a("duration-200 relative h-svh w-[--sidebar-width] bg-transparent transition-[width] ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===a||"inset"===a?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4))]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon]")}),Ra.jsx("div",{className:_a("duration-200 fixed inset-y-0 z-10 hidden h-svh w-[--sidebar-width] transition-[left,right,width] ease-linear md:flex","left"===e?"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]":"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]","floating"===a||"inset"===a?"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)_+_theme(spacing.4)_+2px)]":"group-data-[collapsible=icon]:w-[--sidebar-width-icon] group-data-[side=left]:border-r group-data-[side=right]:border-l",s),...n,children:Ra.jsx("div",{"data-sidebar":"sidebar",className:"flex h-full w-full flex-col group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow bg-white",children:r})})]})});Si.displayName="Sidebar";const Ci=e.forwardRef(({className:e,onClick:a,...t},s)=>{const{toggleSidebar:r}=wi();return Ra.jsxs(Oa,{ref:s,"data-sidebar":"trigger",variant:"ghost",size:"icon",className:_a("h-7 w-7",e),onClick:e=>{a?.(e),r()},...t,children:[Ra.jsx(Oe,{}),Ra.jsx("span",{className:"sr-only",children:"Toggle Sidebar"})]})});Ci.displayName="SidebarTrigger";const Ti=e.forwardRef(({className:e,...a},t)=>{const{toggleSidebar:s}=wi();return Ra.jsx("button",{ref:t,"data-sidebar":"rail","aria-label":"Toggle Sidebar",tabIndex:-1,onClick:s,title:"Toggle Sidebar",className:_a("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",e),...a})});Ti.displayName="SidebarRail";const Ri=e.forwardRef(({className:e,...a},t)=>Ra.jsx("main",{ref:t,className:_a("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",e),...a}));Ri.displayName="SidebarInset";const _i=e.forwardRef(({className:e,...a},t)=>Ra.jsx(za,{ref:t,"data-sidebar":"input",className:_a("h-8 w-full bg-background shadow-none focus-visible:ring-2 focus-visible:ring-sidebar-ring",e),...a}));_i.displayName="SidebarInput";const Pi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"header",className:_a("flex flex-col gap-2 p-2",e),...a}));Pi.displayName="SidebarHeader";const Ei=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"footer",className:_a("flex flex-col gap-2 p-2",e),...a}));Ei.displayName="SidebarFooter";const Ai=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ni,{ref:t,"data-sidebar":"separator",className:_a("mx-2 w-auto bg-sidebar-border",e),...a}));Ai.displayName="SidebarSeparator";const Ii=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"content",className:_a("flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...a}));Ii.displayName="SidebarContent";const Di=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"group",className:_a("relative flex w-full min-w-0 flex-col p-2",e),...a}));Di.displayName="SidebarGroup";const Oi=e.forwardRef(({className:e,asChild:a=!1,...t},s)=>{const r=a?d:"div";return Ra.jsx(r,{ref:s,"data-sidebar":"group-label",className:_a("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",e),...t})});Oi.displayName="SidebarGroupLabel";const zi=e.forwardRef(({className:e,asChild:a=!1,...t},s)=>{const r=a?d:"button";return Ra.jsx(r,{ref:s,"data-sidebar":"group-action",className:_a("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",e),...t})});zi.displayName="SidebarGroupAction";const $i=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"group-content",className:_a("w-full text-sm",e),...a}));$i.displayName="SidebarGroupContent";const Fi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ul",{ref:t,"data-sidebar":"menu",className:_a("flex w-full min-w-0 flex-col gap-1",e),...a}));Fi.displayName="SidebarMenu";const Li=e.forwardRef(({className:e,...a},t)=>Ra.jsx("li",{ref:t,"data-sidebar":"menu-item",className:_a("group/menu-item relative",e),...a}));Li.displayName="SidebarMenuItem";const Mi=u("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"}}),Vi=e.forwardRef(({asChild:e=!1,isActive:a=!1,variant:t="default",size:s="default",tooltip:r,className:n,...i},o)=>{const l=e?d:"button",{isMobile:c,state:m}=wi(),u=Ra.jsx(l,{ref:o,"data-sidebar":"menu-button","data-size":s,"data-active":a,className:_a(Mi({variant:t,size:s}),n),...i});return r?("string"==typeof r&&(r={children:r}),Ra.jsxs(bi,{children:[Ra.jsx(yi,{asChild:!0,children:u}),Ra.jsx(vi,{side:"right",align:"center",hidden:"collapsed"!==m||c,...r})]})):u});Vi.displayName="SidebarMenuButton";const Ui=e.forwardRef(({className:e,asChild:a=!1,showOnHover:t=!1,...s},r)=>{const n=a?d:"button";return Ra.jsx(n,{ref:r,"data-sidebar":"menu-action",className:_a("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",t&&"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",e),...s})});Ui.displayName="SidebarMenuAction";const Bi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("div",{ref:t,"data-sidebar":"menu-badge",className:_a("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",e),...a}));Bi.displayName="SidebarMenuBadge";const Wi=e.forwardRef(({className:a,showIcon:t=!1,...s},r)=>{const n=e.useMemo(()=>`${Math.floor(40*Math.random())+50}%`,[]);return Ra.jsxs("div",{ref:r,"data-sidebar":"menu-skeleton",className:_a("rounded-md h-8 flex gap-2 px-2 items-center",a),...s,children:[t&&Ra.jsx("div",{className:"size-4 rounded-md","data-sidebar":"menu-skeleton-icon"}),Ra.jsx("div",{className:"h-4 flex-1 max-w-[--skeleton-width] skeleton-width","data-sidebar":"menu-skeleton-text",style:{"--skeleton-width":n}})]})});Wi.displayName="SidebarMenuSkeleton";const qi=e.forwardRef(({className:e,...a},t)=>Ra.jsx("ul",{ref:t,"data-sidebar":"menu-sub",className:_a("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",e),...a}));qi.displayName="SidebarMenuSub";const Hi=e.forwardRef(({...e},a)=>Ra.jsx("li",{ref:a,...e}));Hi.displayName="SidebarMenuSubItem";const Qi=e.forwardRef(({asChild:e=!1,size:a="md",isActive:t,className:s,...r},n)=>{const i=e?d:"a";return Ra.jsx(i,{ref:n,"data-sidebar":"menu-sub-button","data-size":a,"data-active":t,className:_a("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),...r})});Qi.displayName="SidebarMenuSubButton";const Ji=e.forwardRef(({className:e,...a},t)=>Ra.jsxs(xa.Root,{ref:t,className:_a("relative flex w-full touch-none select-none items-center",e),...a,children:[Ra.jsx(xa.Track,{className:"relative h-2 w-full grow overflow-hidden rounded-full bg-secondary",children:Ra.jsx(xa.Range,{className:"absolute h-full bg-primary"})}),Ra.jsx(xa.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"})]}));Ji.displayName=xa.Root.displayName;const Ki=({...e})=>{const{theme:a="system"}=ga();return Ra.jsx(ta,{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"}},...e})};function Xi(e,a,{checkForDefaultPrevented:t=!0}={}){return function(s){if(e?.(s),!1===t||!s.defaultPrevented)return a?.(s)}}function Gi(e,a){if("function"==typeof e)return e(a);null!=e&&(e.current=a)}function Yi(...a){return e.useCallback(function(...e){return a=>{let t=!1;const s=e.map(e=>{const s=Gi(e,a);return t||"function"!=typeof s||(t=!0),s});if(t)return()=>{for(let a=0;a<s.length;a++){const t=s[a];"function"==typeof t?t():Gi(e[a],null)}}}}(...a),a)}function Zi(...a){const t=a[0];if(1===a.length)return t;const s=()=>{const s=a.map(e=>({useScope:e(),scopeName:e.scopeName}));return function(a){const r=s.reduce((e,{useScope:t,scopeName:s})=>({...e,...t(a)[`__scope${s}`]}),{});return e.useMemo(()=>({[`__scope${t.scopeName}`]:r}),[r])}};return s.scopeName=t.scopeName,s}var eo=globalThis?.document?e.useLayoutEffect:()=>{},ao=e[" useInsertionEffect ".trim().toString()]||eo;function to({prop:a,defaultProp:t,onChange:s=()=>{},caller:r}){const[n,i,o]=function({defaultProp:a,onChange:t}){const[s,r]=e.useState(a),n=e.useRef(s),i=e.useRef(t);return ao(()=>{i.current=t},[t]),e.useEffect(()=>{n.current!==s&&(i.current?.(s),n.current=s)},[s,n]),[s,r,i]}({defaultProp:t,onChange:s}),l=void 0!==a,c=l?a:n;{const t=e.useRef(void 0!==a);e.useEffect(()=>{const e=t.current;if(e!==l){}t.current=l},[l,r])}const d=e.useCallback(e=>{if(l){const t=function(e){return"function"==typeof e}(e)?e(a):e;t!==a&&o.current?.(t)}else i(e)},[l,a,i,o]);return[c,d]}var so=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((a,t)=>{const s=m(`Primitive.${t}`),r=e.forwardRef((e,a)=>{const{asChild:r,...n}=e,i=r?s:t;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),Ra.jsx(i,{...n,ref:a})});return r.displayName=`Primitive.${t}`,{...a,[t]:r}},{}),ro="Switch",[no]=function(a,t=[]){let s=[];const r=()=>{const t=s.map(a=>e.createContext(a));return function(s){const r=s?.[a]||t;return e.useMemo(()=>({[`__scope${a}`]:{...s,[a]:r}}),[s,r])}};return r.scopeName=a,[function(t,r){const n=e.createContext(r),i=s.length;s=[...s,r];const o=t=>{const{scope:s,children:r,...o}=t,l=s?.[a]?.[i]||n,c=e.useMemo(()=>o,Object.values(o));return Ra.jsx(l.Provider,{value:c,children:r})};return o.displayName=t+"Provider",[o,function(s,o){const l=o?.[a]?.[i]||n,c=e.useContext(l);if(c)return c;if(void 0!==r)return r;throw new Error(`\`${s}\` must be used within \`${t}\``)}]},Zi(r,...t)]}(ro),[io,oo]=no(ro),lo=e.forwardRef((a,t)=>{const{__scopeSwitch:s,name:r,checked:n,defaultChecked:i,required:o,disabled:l,value:c="on",onCheckedChange:d,form:m,...u}=a,[f,p]=e.useState(null),h=Yi(t,e=>p(e)),x=e.useRef(!1),g=!f||(m||!!f.closest("form")),[b,y]=to({prop:n,defaultProp:i??!1,onChange:d,caller:ro});return Ra.jsxs(io,{scope:s,checked:b,disabled:l,children:[Ra.jsx(so.button,{type:"button",role:"switch","aria-checked":b,"aria-required":o,"data-state":fo(b),"data-disabled":l?"":void 0,disabled:l,value:c,...u,ref:h,onClick:Xi(a.onClick,e=>{y(e=>!e),g&&(x.current=e.isPropagationStopped(),x.current||e.stopPropagation())})}),g&&Ra.jsx(uo,{control:f,bubbles:!x.current,name:r,value:c,checked:b,required:o,disabled:l,form:m,style:{transform:"translateX(-100%)"}})]})});lo.displayName=ro;var co="SwitchThumb",mo=e.forwardRef((e,a)=>{const{__scopeSwitch:t,...s}=e,r=oo(co,t);return Ra.jsx(so.span,{"data-state":fo(r.checked),"data-disabled":r.disabled?"":void 0,...s,ref:a})});mo.displayName=co;var uo=e.forwardRef(({__scopeSwitch:a,control:t,checked:s,bubbles:r=!0,...n},i)=>{const o=e.useRef(null),l=Yi(o,i),c=function(a){const t=e.useRef({value:a,previous:a});return e.useMemo(()=>(t.current.value!==a&&(t.current.previous=t.current.value,t.current.value=a),t.current.previous),[a])}(s),d=function(a){const[t,s]=e.useState(void 0);return eo(()=>{if(a){s({width:a.offsetWidth,height:a.offsetHeight});const e=new ResizeObserver(e=>{if(!Array.isArray(e))return;if(!e.length)return;const t=e[0];let r,n;if("borderBoxSize"in t){const e=t.borderBoxSize,a=Array.isArray(e)?e[0]:e;r=a.inlineSize,n=a.blockSize}else r=a.offsetWidth,n=a.offsetHeight;s({width:r,height:n})});return e.observe(a,{box:"border-box"}),()=>e.unobserve(a)}s(void 0)},[a]),t}(t);return e.useEffect(()=>{const e=o.current;if(!e)return;const a=window.HTMLInputElement.prototype,t=Object.getOwnPropertyDescriptor(a,"checked").set;if(c!==s&&t){const a=new Event("click",{bubbles:r});t.call(e,s),e.dispatchEvent(a)}},[c,s,r]),Ra.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:s,...n,tabIndex:-1,ref:l,style:{...n.style,...d,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});function fo(e){return e?"checked":"unchecked"}uo.displayName="SwitchBubbleInput";var po=lo,ho=mo;const xo=e.forwardRef(({className:e,...a},t)=>Ra.jsx(po,{className:_a("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",e),...a,ref:t,children:Ra.jsx(ho,{className:_a("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")})}));xo.displayName=po.displayName;const go={xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},bo={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},yo={start:"justify-start",center:"justify-center",end:"justify-end",between:"justify-between",around:"justify-around",evenly:"justify-evenly"};function vo({children:e,direction:a="column",gap:t="md",align:s="stretch",justify:r="start",wrap:n=!1,className:i}){return Ra.jsx("div",{className:_a("flex","column"===a?"flex-col":"flex-row",go[t],bo[s],yo[r],n&&"flex-wrap",i),children:e})}const No=ba.Root,jo=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ba.List,{ref:t,className:_a("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...a}));jo.displayName=ba.List.displayName;const wo=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ba.Trigger,{ref:t,className:_a("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",e),...a}));wo.displayName=ba.Trigger.displayName;const ko=e.forwardRef(({className:e,...a},t)=>Ra.jsx(ba.Content,{ref:t,className:_a("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...a}));function So({children:e,className:a}){return Ra.jsx("div",{className:_a("flex flex-col h-full",a),children:Ra.jsx(Tr,{className:"flex-1",children:Ra.jsx("div",{className:"space-y-6 p-6",children:e})})})}function Co({title:e,description:a,actions:t,className:s}){return Ra.jsxs("div",{className:_a("space-y-4",s),children:[Ra.jsxs("div",{className:"flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",children:[Ra.jsxs("div",{className:"space-y-1",children:[Ra.jsx("h2",{className:"text-2xl font-bold tracking-tight",children:e}),a&&Ra.jsx("p",{className:"text-muted-foreground text-sm",children:a})]}),t&&Ra.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:t})]}),Ra.jsx(ni,{})]})}function To({children:e,className:a}){return Ra.jsx("div",{className:_a("space-y-6",a),children:e})}ko.displayName=ba.Content.displayName;const Ro=u("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"}}),_o=e.forwardRef(({className:e,variant:a,size:t,...s},r)=>Ra.jsx(ya.Root,{ref:r,className:_a(Ro({variant:a,size:t,className:e})),...s}));_o.displayName=ya.Root.displayName;const Po=e.createContext({size:"default",variant:"default"}),Eo=e.forwardRef(({className:e,variant:a,size:t,children:s,...r},n)=>Ra.jsx(va.Root,{ref:n,className:_a("flex items-center justify-center gap-1",e),...r,children:Ra.jsx(Po.Provider,{value:{variant:a,size:t},children:s})}));Eo.displayName=va.Root.displayName;const Ao=e.forwardRef(({className:a,children:t,variant:s,size:r,...n},i)=>{const o=e.useContext(Po);return Ra.jsx(va.Item,{ref:i,className:_a(Ro({variant:o.variant||s,size:o.size||r}),a),...n,children:t})});Ao.displayName=va.Item.displayName;const Io=a.forwardRef(({variant:e="default",className:a,children:t,...s},r)=>Ra.jsx(Oa,{ref:r,variant:"outline",size:"sm",className:_a("h-7 px-2 text-xs","border-primary/20 text-primary hover:bg-primary/5",a),...s,children:t||Ra.jsx(D,{size:12})}));function Do({manager:e,config:a,onEdit:t,onDelete:s}){return e.isLoading?Ra.jsx(Hn,{children:Array.from({length:3}).map((e,a)=>Ra.jsxs(La,{children:[Ra.jsxs(Ma,{children:[Ra.jsx(Ks,{className:"h-4 w-3/4"}),Ra.jsx(Ks,{className:"h-3 w-1/2"})]}),Ra.jsx(Ba,{children:Ra.jsxs("div",{className:"space-y-2",children:[Ra.jsx(Ks,{className:"h-3 w-full"}),Ra.jsx(Ks,{className:"h-3 w-2/3"})]})})]},a))}):Ra.jsx(Un.Root,{children:e.entities.map(e=>Ra.jsxs(Un.Item,{onClick:()=>t(e),children:[Ra.jsx(Ma,{className:"pb-3",children:Ra.jsxs("div",{className:"flex items-start justify-between",children:[Ra.jsxs("div",{className:"flex-1 min-w-0",children:[Ra.jsx(Va,{className:"text-base leading-6 truncate",children:e.title||e.name||"Sem título"}),Ra.jsx(Ua,{className:"text-sm",children:g(new Date(e.created_at),"dd/MM/yyyy HH:mm",{locale:Rn})})]}),Ra.jsxs("div",{className:"flex items-center gap-2 ml-2",children:[e.link&&Ra.jsx(Oa,{variant:"external-link",size:"icon-xs",onClick:a=>{a.stopPropagation(),(e=>{try{const a=window.open(e,"_blank");a&&!a.closed&&void 0!==a.closed||(navigator.clipboard.writeText(e),aa.info("Link copiado para a área de transferência"))}catch(a){window.location.href=e}})(e.link)},title:"Abrir link externo",children:Ra.jsx(ze,{className:"h-4 w-4"})}),Ra.jsx("div",{onClick:e=>e.stopPropagation(),children:Ra.jsx(yr,{onEdit:()=>t(e),onDelete:s?()=>s(e):void 0,canDelete:!!s})})]})]})}),Ra.jsx(Ba,{className:"pt-0",children:Ra.jsx("div",{className:"space-y-2",children:a.cardFields?.map(a=>{const t=e[a.key];return t?Ra.jsx(Un.Field,{label:a.label,value:a.render?a.render(t,e):String(t)},String(a.key)):null})})})]},e.id))})}function Oo({manager:e,filters:a}){const{isSearchVisible:t}=Dr(),s=e.searchTerm;return Ra.jsx(vo,{direction:"column",gap:"md",className:"mb-6",children:Ra.jsxs(vo,{direction:"row",gap:"md",wrap:!0,className:"flex-col sm:flex-row",children:[a.some(e=>"search"===e.type)&&!t&&Ra.jsxs("div",{className:"relative flex-1",children:[Ra.jsx(C,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),Ra.jsx(za,{placeholder:"Buscar...",value:e.searchTerm,onChange:a=>e.handleSearch(a.target.value),className:"pl-10"})]}),a.filter(e=>"custom"===e.type&&e.component).map((e,a)=>{const t=e.component;return Ra.jsx("div",{className:"w-full sm:w-auto",children:Ra.jsx(t,{...e.props})},a)}),s&&Ra.jsxs(Oa,{variant:"outline",onClick:e.clearFilters,className:"whitespace-nowrap",children:[Ra.jsx(v,{className:"h-4 w-4 mr-2"}),"Limpar Filtros"]})]})})}function zo(e){const a=Ze();return{onNew:()=>{const t=e.newPath||`${e.basePath}/new`;a(t)},onEdit:t=>{const s=e.editPath?e.editPath.replace(":id",t.id):`${e.basePath}/${t.id}/edit`;a(s)}}}function $o(e){return zo({basePath:e})}function Fo({open:e,onCancel:a,onSubmit:t,editingEntity:s,isLoading:r=!1,title:n,editTitle:i,sections:o,transformData:l}){const{alias:c}=Dr();return Ra.jsx(Lr,{open:e,title:s?i:n,sections:o,initialData:s,onSubmit:e=>{if(l){const a=l(e,c||"");t(a)}else{const a={...e,alias:c||""};s?.id&&(a.id=s.id),t(a)}},onCancel:a,isLoading:r,submitButtonText:s?"Atualizar":"Salvar"})}Io.displayName="ActionButton";const Lo=a.memo(({variant:e="card",className:t="",selectedUnit:s,onUnitChange:r})=>{const{user:n,companies:i,alias:o,isAuthenticated:l,logout:c,switchUnit:d}=Dr(),m=i?.[0]||null,u=o?i?.find(e=>e.alias===o):m,f=i||[],p=s||u||m||m,h=a.useCallback(e=>{r?r(e):d(e)},[r,d]),x=a.useMemo(()=>{if(!f?.length)return[];const e=new Map;f.forEach(a=>{e.set(a.alias,a)});const a=Array.from(e.values()),t=a.find(e=>e.alias===p?.alias),s=a.filter(e=>e.alias!==p?.alias);return s.sort((e,a)=>(e.name||"").localeCompare(a.name||"","pt-BR",{sensitivity:"base"})),t?[t,...s]:s},[f,p?.alias]);if(!l||!n)return null;const g=()=>Ra.jsxs(Ra.Fragment,{children:[Ra.jsxs("div",{className:"flex items-center space-x-3",children:[Ra.jsx("div",{className:"flex-shrink-0",children:Ra.jsx("div",{className:"w-10 h-10 bg-primary rounded-full flex items-center justify-center",children:Ra.jsx(Ce,{className:"h-5 w-5 text-primary-foreground"})})}),Ra.jsxs("div",{className:"flex-1 min-w-0",children:[Ra.jsx("p",{className:"text-sm font-medium truncate",children:n.name}),Ra.jsxs("p",{className:"text-xs text-muted-foreground",children:["Unidade: ",p?.name||"N/A"]})]})]}),p&&Ra.jsx("div",{className:"mt-3",children:Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsx($e,{className:"h-4 w-4 text-muted-foreground"}),Ra.jsx("span",{className:"text-sm font-medium",children:p.name})]})}),x.length>1&&Ra.jsxs("div",{className:"mt-2",children:[Ra.jsxs("p",{className:"text-xs text-muted-foreground mb-1",children:["Unidades disponíveis: ",x.length]}),Ra.jsxs("div",{className:"flex flex-wrap gap-1",children:[x.slice(0,3).map(e=>Ra.jsx(vt,{variant:e.alias===p?.alias?"default":"secondary",className:"text-xs cursor-pointer",onClick:()=>h(e),children:e.name},e.alias)),x.length>3&&Ra.jsxs(vt,{variant:"outline",className:"text-xs",children:["+",x.length-3]})]})]})]});return"dropdown"===e?Ra.jsxs(sr,{children:[Ra.jsx(rr,{asChild:!0,children:Ra.jsx(Oa,{variant:"ghost",className:`h-auto p-2 ${t}`,children:Ra.jsxs("div",{className:"flex items-center space-x-2",children:[Ra.jsxs("div",{className:"hidden md:block text-left",children:[Ra.jsx("p",{className:"text-sm font-medium",children:n.name}),Ra.jsx("p",{className:"text-xs text-muted-foreground",children:p?.name||"N/A"})]}),Ra.jsx("div",{className:"w-8 h-8 bg-primary rounded-full flex items-center justify-center",children:Ra.jsx(Ce,{className:"h-4 w-4 text-primary-foreground"})}),Ra.jsx(N,{className:"h-4 w-4"})]})})}),Ra.jsxs(mr,{className:"w-56 bg-background border border-border shadow-lg z-50",align:"end",children:[Ra.jsxs(or,{children:[Ra.jsxs(cr,{children:[Ra.jsx(Ae,{className:"mr-2 h-4 w-4"}),"Alterar Unidade"]}),Ra.jsx(dr,{children:x.map(e=>Ra.jsxs(ur,{onClick:()=>h(e),className:e.alias===p?.alias?"bg-muted":"",children:[Ra.jsx($e,{className:"mr-2 h-4 w-4"}),e.name,e.alias===p?.alias&&Ra.jsx(vt,{variant:"outline",className:"ml-2 text-xs",children:"Atual"})]},e.alias))})]}),Ra.jsx(xr,{}),Ra.jsx(Bn,{variant:"menuItem"}),Ra.jsxs(ur,{onClick:c,children:[Ra.jsx(Fe,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]}):Ra.jsxs(La,{className:t,children:[Ra.jsx(Ma,{children:Ra.jsx(Va,{className:"text-lg",children:"Informações do Usuário"})}),Ra.jsxs(Ba,{className:"space-y-4",children:[Ra.jsx(g,{}),Ra.jsx(ni,{}),Ra.jsxs("div",{className:"flex space-x-2",children:[Ra.jsx(Bn,{className:"flex-1"}),Ra.jsxs(Oa,{variant:"outline",onClick:c,size:"sm",className:"flex-1",children:[Ra.jsx(Fe,{className:"mr-2 h-4 w-4"}),"Sair"]})]})]})]})}),Mo=i({});function Vo({children:e,config:a}){return Ra.jsx(Mo.Provider,{value:{navigation:a?.navigation,appName:a?.appName},children:e})}function Uo(){return o(Mo)}function Bo(){const e=Ye(),{navigation:a}=Uo(),t=a?.find(a=>a.path===e.pathname);return t?.label||"Página"}function Wo(e,a){const[t,i]=r(e),o=l(),c=s(()=>{o.current&&(clearTimeout(o.current),o.current=void 0)},[]);return n(()=>(c(),o.current=setTimeout(()=>{i(e)},a),c),[e,a,c]),[t,c]}const qo=({actions:e})=>{const a=Ye(),t=Bo(),{navigation:s,appName:i}=Uo(),{companies:o,alias:l,isSearchVisible:c,clearSearch:d,refreshData:m,switchUnit:u}=Dr(),f=l?o?.find(e=>e.alias===l)||o?.[0]||null:o?.[0]||null,[p,h]=Ge(),[x,g]=r(()=>p.get("search")||""),[b,y]=Wo(x,rs.debounceDelay);n(()=>{if(!c)return;const e=new URLSearchParams(p);b?(e.set("search",b),e.set("page","1")):e.delete("search"),h(e)},[b,h,c]);const N=s?.find(e=>e.path===a.pathname);return Ra.jsx("header",{className:"bg-white border-b border-gray-200 px-2 md:px-4 py-2",children:Ra.jsxs("div",{className:"flex items-center justify-between gap-4",children:[Ra.jsx("div",{className:"flex items-center space-x-1 md:space-x-2 min-w-0",children:Ra.jsxs("div",{className:"min-w-0 flex flex-col md:flex-row md:items-center md:space-x-3 space-y-2 md:space-y-0",children:[Ra.jsxs("div",{className:"min-w-0",children:[Ra.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[Ra.jsx("h1",{className:"text-lg font-semibold text-foreground truncate",children:t}),Ra.jsx(vt,{variant:"default",className:"bg-primary hover:bg-primary/90 text-primary-foreground text-xs px-2 py-1",children:i||"Módulo"})]}),Ra.jsx("p",{className:"text-sm text-muted-foreground truncate",children:N?.complementaryText||"Detalhes do item"})]}),c&&Ra.jsxs("div",{className:"flex items-center space-x-1 w-full md:w-auto",children:[Ra.jsxs("div",{className:"relative w-full md:w-48",children:[Ra.jsx(C,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-muted-foreground h-4 w-4"}),Ra.jsx(za,{placeholder:"/wiki"===a.pathname?"Buscar artigos...":"Buscar...",value:x,onChange:e=>(e=>{g(e)})(e.target.value),className:"w-full pl-10 pr-8"}),x&&Ra.jsx(Oa,{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:()=>{y(),g("");const e=new URLSearchParams(p);e.delete("search"),e.delete("page"),h(e)},title:"Limpar busca",children:Ra.jsx(v,{size:14})})]}),Ra.jsx(Oa,{variant:"outline",size:"sm",onClick:m,className:"flex-shrink-0 h-10 w-10 p-0",title:"Atualizar dados",children:Ra.jsx(Ae,{size:14})})]})]})}),Ra.jsxs("div",{className:"flex-shrink-0 flex items-center gap-3",children:[e&&Ra.jsx("div",{className:"flex items-center gap-2",children:e}),Ra.jsx("div",{className:"text-sm",children:Ra.jsx(Lo,{variant:"dropdown",selectedUnit:f,onUnitChange:u})})]})]})})},Ho=(e={})=>{const{enabled:a=!0}=e,{alias:t}=Dr();return Je({queryKey:["active-modules",t],queryFn:async()=>{if(!t)return[];const e=ys(),{data:a,error:s}=await e.schema("central").from("modules").select("\n id, name, url,\n modules_alias!inner(alias)\n ").eq("modules_alias.alias",t).eq("status","active").order("name");if(s){if(!Er.handleError(s))throw s;return[]}return a||[]},enabled:a&&!!t})},Qo=({key:e,enabled:a,checkFn:t,staleTime:s=3e5,gcTime:r=6e5})=>Je({queryKey:["permission",e],queryFn:t,enabled:a,staleTime:s,gcTime:r,retry:0,refetchOnWindowFocus:!1}),Jo=import.meta.env.VITE_SUPABASE_PROJECT_ID,Ko={logo:`https://${Jo}.supabase.co/storage/v1/object/public/library-assets/logo.svg`,smallLogo:`https://${Jo}.supabase.co/storage/v1/object/public/library-assets/small.svg`},Xo=Ko.logo,Go=Ko.smallLogo,Yo="forlogic-sidebar-pinned",Zo=()=>{try{const e=localStorage.getItem(Yo);return!!e&&JSON.parse(e)}catch{return!1}};function el({config:e}={}){const{state:a,open:t,setOpen:s}=wi(),i=Ye(),{alias:o,user:l}=Dr(),[c,d]=r(!1),[m,u]=r(Zo),[f,p]=r(!1);n(()=>{s(!!m||!(!f&&!c))},[m,f,c,s]);const{data:h,isLoading:x,error:g}=Ho({enabled:c}),b=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]};return Ra.jsxs(Si,{collapsible:"icon",onMouseEnter:()=>{m||p(!0)},onMouseLeave:()=>{m||p(!1)},className:"app-sidebar transition-all duration-300 ease-in-out bg-white border-r border-gray-200 py-6 px-3",children:[Ra.jsxs(Pi,{className:"p-0 gap-0",children:[Ra.jsx("div",{className:"flex items-center justify-between h-[34px]",children:t?Ra.jsxs(Ra.Fragment,{children:[Ra.jsx("div",{className:"flex items-center pl-[12px]",children:Ra.jsx("img",{src:Ko.logo,alt:"Logo",className:"h-6 max-w-full object-contain"})}),Ra.jsx("button",{onClick:()=>{const e=!m;u(e),(e=>{try{localStorage.setItem(Yo,JSON.stringify(e))}catch{}})(e)},className:"h-8 w-8 flex items-center justify-center rounded-md transition-colors duration-200 "+(m?"bg-primary text-primary-foreground":"hover:bg-muted text-muted-foreground"),children:Ra.jsx(Oe,{className:"h-4 w-4"})})]}):Ra.jsx("div",{className:"flex items-center justify-center w-full h-[34px]",children:Ra.jsx("img",{src:Ko.smallLogo,alt:"Logo",className:"h-[34px] w-[34px] object-contain"})})}),Ra.jsx("div",{className:"mt-2 pt-0",children:Ra.jsxs(sr,{onOpenChange:d,children:[Ra.jsx(rr,{asChild:!0,children:t?Ra.jsxs("div",{className:"bg-muted hover:bg-muted/80 text-foreground font-medium text-sm flex items-center justify-between cursor-pointer transition-all duration-200 h-8 px-3 gap-3 rounded-md w-full",children:[Ra.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[Ra.jsx("img",{src:"https://ccjfvpnndclajkleyqkc.supabase.co/storage/v1/object/public/library-assets/composit.svg",alt:"Menu",className:"h-6 w-6 text-muted-foreground flex-shrink-0"}),Ra.jsx("span",{className:"truncate group-data-[collapsible=icon]:hidden",children:e?.appName||"Título do módulo"})]}),Ra.jsx(N,{className:"h-6 w-6 flex-shrink-0 text-muted-foreground"})]}):Ra.jsx("div",{className:"flex items-center justify-center w-full h-8 bg-muted hover:bg-muted/80 rounded-md cursor-pointer transition-all duration-200 p-[5px]",children:Ra.jsx(N,{className:"h-6 w-6 text-muted-foreground"})})}),Ra.jsx(mr,{className:t?"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:t?"start":"center",children:x?Ra.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-muted-foreground",children:[Ra.jsx(k,{className:"h-4 w-4 animate-spin"}),Ra.jsx("span",{className:"text-sm",children:"Carregando módulos..."})]}):g?Ra.jsxs("div",{className:"flex items-center space-x-2 py-3 px-3 text-destructive",children:[Ra.jsx(S,{className:"h-4 w-4"}),Ra.jsx("span",{className:"text-sm",children:"Erro ao carregar módulos"})]}):h&&0!==h.length?Ra.jsx("div",{className:"space-y-2",children:h.map((e,a)=>Ra.jsx("div",{onClick:()=>(e=>{const a=h?.find(a=>a.url===e);a?.url&&window.open(a.url,"_blank")})(e.url||""),className:`\n bg-muted/50 hover:bg-muted rounded-md p-3 cursor-pointer \n border-l-4 ${b(a)} transition-colors duration-200\n `,children:Ra.jsxs("div",{className:"flex items-center justify-between",children:[Ra.jsx("span",{className:"font-medium text-foreground text-sm",children:e.name}),e.url&&Ra.jsx(ze,{className:"h-4 w-4 text-muted-foreground"})]})},e.id))}):Ra.jsx("div",{className:"py-3 px-3 text-muted-foreground text-sm",children:"Nenhum módulo disponível"})})]})})]}),Ra.jsx(Ii,{children:Ra.jsx(Di,{className:"p-0 mt-6",children:Ra.jsx($i,{children:Ra.jsx(Fi,{className:"space-y-2",children:Ra.jsx(gi,{children:e?.navigation?.map((e,a)=>{const t=({item:e,index:a})=>{const t=`${e.path}-${a}-${o??"noalias"}-${l?.id??"nouser"}`,{data:s=!0,isLoading:r}=Qo({key:t,enabled:Boolean(e.permissionCheck&&o&&l?.id),checkFn:e.permissionCheck||(()=>Promise.resolve(!0))}),n=e.permissionCheck&&!s,c=r?k:n?K:e.icon;return n||e.complementaryText,Ra.jsx(Li,{children:n||r?Ra.jsxs(bi,{children:[Ra.jsx(yi,{asChild:!0,children:Ra.jsx(Vi,{size:"lg",className:"h-10 opacity-50 cursor-not-allowed",onClick:e=>e.preventDefault(),children:Ra.jsxs("div",{className:"flex w-full items-center gap-3",children:[Ra.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:Ra.jsx(c,{className:"h-4 w-4 "+(r?"animate-spin":"")})}),Ra.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:e.label})]})})}),Ra.jsx(vi,{children:Ra.jsx("p",{children:r?"Verificando acesso...":"Acesso restrito"})})]}):Ra.jsx(Vi,{asChild:!0,isActive:(d=e.path,i.pathname===d),size:"lg",className:"h-10",children:Ra.jsxs(ea,{to:e.path,className:"flex w-full items-center gap-3",children:[Ra.jsx("span",{className:"grid place-items-center h-[34px] w-[34px] p-[5px]",children:Ra.jsx(c,{className:"h-5 w-4"})}),Ra.jsx("span",{className:"font-medium sidebar-text group-data-[collapsible=icon]:hidden",children:e.label})]})})},e.path);var d};return Ra.jsx(t,{item:e,index:a},e.path)})})})})})})]})}function al({children:e,sidebar:a,sidebarConfig:t,showHeader:s=!0}){const r=a||Ra.jsx(el,{config:t});return Ra.jsx(Vo,{config:t,children:Ra.jsx(ki,{defaultOpen:!1,style:{"--sidebar-width":"240px","--sidebar-width-icon":"58px"},children:Ra.jsxs("div",{className:"min-h-screen flex w-full",children:[r,Ra.jsxs("main",{className:"flex-1 flex flex-col min-h-screen",children:[s&&Ra.jsx("div",{className:"flex-shrink-0",children:Ra.jsx(qo,{})}),Ra.jsx("div",{className:"flex-1 overflow-y-auto bg-gray-50",children:e})]})]})})})}class tl extends c{constructor(e){super(e),this.state={hasError:!1}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,a){es.handleError(e,!1)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:Ra.jsx("div",{className:"flex items-center justify-center min-h-screen p-4",children:Ra.jsxs(La,{className:"w-full max-w-md",children:[Ra.jsxs(Ma,{className:"text-center",children:[Ra.jsx("div",{className:"flex justify-center mb-4",children:Ra.jsx(Le,{className:"h-12 w-12 text-destructive"})}),Ra.jsx(Va,{children:"Algo deu errado"})]}),Ra.jsxs(Ba,{className:"text-center space-y-4",children:[Ra.jsx("p",{className:"text-muted-foreground",children:"Ocorreu um erro inesperado. Tente recarregar a página."}),Ra.jsx(Oa,{onClick:()=>window.location.reload(),className:"w-full",children:"Recarregar Página"})]})]})}):this.props.children}}export{ts as AUTH_CONFIG,sn as Accordion,on as AccordionContent,rn as AccordionItem,nn as AccordionTrigger,Io as ActionButton,br as ActionMenuItems,Gr as Alert,Zr as AlertDescription,_s as AlertDialog,Fs as AlertDialogAction,Ls as AlertDialogCancel,Is as AlertDialogContent,$s as AlertDialogDescription,Os as AlertDialogFooter,Ds as AlertDialogHeader,As as AlertDialogOverlay,Es as AlertDialogPortal,zs as AlertDialogTitle,Ps as AlertDialogTrigger,Yr as AlertTitle,qo as AppHeader,al as AppLayout,el as AppSidebar,ln as AspectRatio,Er as AuthErrorInterceptor,Ir as AuthProvider,ms as AuthService,cn as Avatar,mn as AvatarFallback,dn as AvatarImage,vt as Badge,Fr as BaseForm,un as Breadcrumb,bn as BreadcrumbEllipsis,pn as BreadcrumbItem,hn as BreadcrumbLink,fn as BreadcrumbList,xn as BreadcrumbPage,gn as BreadcrumbSeparator,Oa as Button,ss as CRUD_CONFIG,_n as Calendar,en as CallbackPage,La as Card,Ba as CardContent,Ua as CardDescription,Wa as CardFooter,Ma as CardHeader,Gs as CardSkeleton,Va as CardTitle,gt as Checkbox,Pn as Collapsible,An as CollapsibleContent,En as CollapsibleTrigger,Cr as ColorPicker,In as Command,Dn as CommandDialog,$n as CommandEmpty,Fn as CommandGroup,On as CommandInput,Mn as CommandItem,zn as CommandList,Ln as CommandSeparator,Vn as CommandShortcut,Do as CrudCards,Lr as CrudForm,vr as CrudTable,Un as DataList,Ms as DeleteConfirmationDialog,qa as Dialog,Ja as DialogClose,Xa as DialogContent,et as DialogDescription,Ya as DialogFooter,Ga as DialogHeader,Ka as DialogOverlay,Qa as DialogPortal,Za as DialogTitle,Ha as DialogTrigger,sr as DropdownMenu,fr as DropdownMenuCheckboxItem,mr as DropdownMenuContent,nr as DropdownMenuGroup,ur as DropdownMenuItem,hr as DropdownMenuLabel,ir as DropdownMenuPortal,lr as DropdownMenuRadioGroup,pr as DropdownMenuRadioItem,xr as DropdownMenuSeparator,gr as DropdownMenuShortcut,or as DropdownMenuSub,dr as DropdownMenuSubContent,cr as DropdownMenuSubTrigger,rr as DropdownMenuTrigger,tr as EmptyState,tl as ErrorBoundary,Bn as FeedbackDialog,Oo as FilterBar,at as Form,lt as FormControl,st as FormField,it as FormItem,ot as FormLabel,ct as FormMessage,Ys as FormSkeleton,Fo as GenericEntityForm,Hn as Grid,Zs as HeaderSkeleton,Pr as IconPicker,za as Input,Fa as Label,wt as LoadingState,an as LoginPage,ds as MESSAGES,Vo as NavigationProvider,Qn as PageBreadcrumb,Kn as Pagination,Xn as PaginationContent,ai as PaginationEllipsis,Gn as PaginationItem,Yn as PaginationLink,ei as PaginationNext,Zn as PaginationPrevious,jr as Popover,kr as PopoverContent,wr as PopoverTrigger,ti as Progress,Kr as ProtectedRoute,is as QUERY_KEYS,ks as QualiexEnrichmentService,$r as QualiexResponsibleSelectField,zr as QualiexUserField,si as RadioGroup,ri as RadioGroupItem,rs as SEARCH_CONFIG,Tr as ScrollArea,Rr as ScrollBar,dt as Select,ht as SelectContent,xt as SelectItem,ut as SelectTrigger,mt as SelectValue,ni as Separator,ii as Sheet,li as SheetClose,ui as SheetContent,xi as SheetDescription,pi as SheetFooter,fi as SheetHeader,di as SheetOverlay,ci as SheetPortal,hi as SheetTitle,oi as SheetTrigger,Si as Sidebar,Ii as SidebarContent,Ei as SidebarFooter,Di as SidebarGroup,zi as SidebarGroupAction,$i as SidebarGroupContent,Oi as SidebarGroupLabel,Pi as SidebarHeader,_i as SidebarInput,Ri as SidebarInset,Fi as SidebarMenu,Ui as SidebarMenuAction,Bi as SidebarMenuBadge,Vi as SidebarMenuButton,Li as SidebarMenuItem,Wi as SidebarMenuSkeleton,qi as SidebarMenuSub,Qi as SidebarMenuSubButton,Hi as SidebarMenuSubItem,ki as SidebarProvider,Ti as SidebarRail,Ai as SidebarSeparator,er as SidebarSkeleton,Ci as SidebarTrigger,Ks as Skeleton,Ji as Slider,Ki as SonnerToaster,jt as Spinner,vo as Stack,xo as Switch,To as TabPageContent,Co as TabPageHeader,So as TabPageLayout,Vs as Table,Bs as TableBody,Js as TableCaption,Qs as TableCell,Ws as TableFooter,Hs as TableHead,Us as TableHeader,qs as TableRow,yr as TableRowActions,Xs as TableSkeleton,No as Tabs,ko as TabsContent,jo as TabsList,wo as TabsTrigger,bt as Textarea,zt as Toast,$t as ToastAction,Ft as ToastClose,Mt as ToastDescription,It as ToastProvider,Lt as ToastTitle,Dt as ToastViewport,Vt as Toaster,_o as Toggle,Eo as ToggleGroup,Ao as ToggleGroupItem,Gt as TokenManager,Bt as TokenService,bi as Tooltip,vi as TooltipContent,gi as TooltipProvider,yi as TooltipTrigger,Ko as assets,yt as badgeVariants,Da as buttonVariants,_a as cn,Ur as createCrudPage,zo as createRoutingHandlers,Cs as createService,Br as createSimpleSaveHandler,Rs as createSimpleService,Qr as crudPresets,Ia as debounce,es as errorService,Aa as formatCurrency,Ea as formatDatetime,Wr as generateCrudConfig,ls as getQualiexConfig,ys as getSupabaseClient,ns as isDevEnvironment,Xo as logoSrc,ws as qualiexApi,cs as setQualiexConfig,tn as setupQualiexCore,Go as smallLogoSrc,Et as toast,Ro as toggleVariants,Pa as trimTextFields,Ho as useActiveModules,Dr as useAuth,Nr as useBaseForm,Ts as useCrud,$o as useCrudRouting,Wo as useDebounce,Uo as useNavigation,Bo as usePageTitle,Qo as usePermissionQuery,Or as useQualiexUsers,Jn as useRouteBreadcrumbs,wi as useSidebar,At as useToast,Jr as withPreset};
|