@sito/dashboard-app 0.0.37 → 0.0.39
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/components/Actions/Actions.test.d.ts +1 -0
- package/dist/components/Actions/ActionsDropdown.stories.d.ts +1 -2
- package/dist/components/Buttons/IconButton.d.ts +6 -2
- package/dist/components/Buttons/index.d.ts +2 -1
- package/dist/components/Dialog/ConfirmationDialog.test.d.ts +1 -0
- package/dist/components/Navbar/Navbar.test.d.ts +1 -0
- package/dist/components/Navbar/types.d.ts +2 -2
- package/dist/components/Page/types.d.ts +4 -3
- package/dist/components/index.d.ts +0 -1
- package/dist/dashboard-app.cjs +1 -1
- package/dist/dashboard-app.js +1174 -1235
- package/dist/hooks/actions/useDeleteAction.test.d.ts +1 -0
- package/dist/hooks/actions/useEditAction.test.d.ts +1 -0
- package/dist/hooks/actions/useExportAction.test.d.ts +1 -0
- package/dist/hooks/actions/useImportAction.test.d.ts +1 -0
- package/dist/hooks/actions/useRestoreAction.test.d.ts +1 -0
- package/dist/hooks/dialogs/useDialog.test.d.ts +1 -0
- package/dist/hooks/useScrollTrigger.test.d.ts +1 -0
- package/dist/main.css +1 -1
- package/dist/main.d.ts +2 -0
- package/package.json +11 -8
- package/dist/components/Buttons/Button.d.ts +0 -2
- package/dist/components/Buttons/Button.stories.d.ts +0 -28
- package/dist/components/Buttons/IconButton.stories.d.ts +0 -29
- package/dist/components/Buttons/types.d.ts +0 -12
- package/dist/components/Dropdown/Dropdown.d.ts +0 -2
- package/dist/components/Dropdown/Dropdown.stories.d.ts +0 -9
- package/dist/components/Dropdown/index.d.ts +0 -2
- package/dist/components/Dropdown/types.d.ts +0 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { StoryObj } from '@storybook/react';
|
|
2
|
-
import { BaseEntityDto } from '../../lib';
|
|
3
2
|
declare const meta: {
|
|
4
3
|
title: string;
|
|
5
|
-
component: <TRow extends BaseEntityDto>(props: import('./types').ActionsContainerPropsType<TRow>) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
component: <TRow extends import('../../lib').BaseEntityDto>(props: import('./types').ActionsContainerPropsType<TRow>) => import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
tags: string[];
|
|
7
6
|
args: {
|
|
8
7
|
actions: {
|
|
@@ -1,2 +1,6 @@
|
|
|
1
|
-
import { IconButtonPropsType } from '
|
|
2
|
-
|
|
1
|
+
import { IconButtonPropsType } from '@sito/dashboard';
|
|
2
|
+
import { IconDefinition } from '@fortawesome/fontawesome-svg-core';
|
|
3
|
+
export type IconButtonPropsLocalType = Omit<IconButtonPropsType, "icon"> & {
|
|
4
|
+
icon: IconDefinition;
|
|
5
|
+
};
|
|
6
|
+
export declare const AppIconButton: ({ icon, ...rest }: IconButtonPropsLocalType) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IconButtonPropsLocalType } from '../Buttons/IconButton';
|
|
2
2
|
export type NavbarPropsType = {
|
|
3
|
-
menuButtonProps?:
|
|
3
|
+
menuButtonProps?: IconButtonPropsLocalType;
|
|
4
4
|
openDrawer: () => void;
|
|
5
5
|
showClock?: boolean;
|
|
6
6
|
showSearch?: boolean;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
-
import { ActionType } from '@sito/dashboard';
|
|
2
|
+
import { ActionType, IconButtonPropsType } from '@sito/dashboard';
|
|
3
|
+
import { IconDefinition } from '@fortawesome/fontawesome-svg-core';
|
|
3
4
|
import { BaseEntityDto } from '../../lib';
|
|
4
|
-
import { IconButtonPropsType } from '../Buttons/types';
|
|
5
5
|
export type PagePropsType<TRow extends BaseEntityDto> = {
|
|
6
6
|
title?: string;
|
|
7
7
|
children: ReactNode;
|
|
@@ -13,7 +13,8 @@ export type PagePropsType<TRow extends BaseEntityDto> = {
|
|
|
13
13
|
showBackButton?: boolean;
|
|
14
14
|
queryKey?: string[];
|
|
15
15
|
};
|
|
16
|
-
export interface PageAddOptions<TRow extends BaseEntityDto> extends Partial<ActionType<TRow>>, Partial<Omit<IconButtonPropsType, "icon" | "onClick">> {
|
|
16
|
+
export interface PageAddOptions<TRow extends BaseEntityDto> extends Partial<Omit<ActionType<TRow>, "icon">>, Partial<Omit<IconButtonPropsType, "icon" | "onClick">> {
|
|
17
|
+
icon?: IconDefinition;
|
|
17
18
|
}
|
|
18
19
|
export type PageHeaderPropsType<TRow extends BaseEntityDto> = {
|
|
19
20
|
title?: string;
|
package/dist/dashboard-app.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var vs=Object.defineProperty;var Cs=(e,t,s)=>t in e?vs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s;var ue=(e,t,s)=>Cs(e,typeof t!="symbol"?t+"":t,s);var Vr=require("./main.css");Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _=require("@sito/dashboard"),u=require("react/jsx-runtime"),h=require("react"),H=require("@fortawesome/free-solid-svg-icons"),ie=require("@fortawesome/react-fontawesome"),Pt=require("react-dom"),Ss=require("@emotion/css"),we=require("@tanstack/react-query"),ks=require("@fortawesome/free-regular-svg-icons");function et(e){const{id:t,icon:s,tooltip:n,onClick:i,children:r,hidden:c=!1,disabled:a=!1,showText:f=!1,showTooltips:y=!0}=e;return c?null:u.jsxs("button",{id:t,className:`action ${f?"text-action":"icon-action"}`,disabled:a,onClick:()=>i(),"aria-disabled":a,"data-tooltip-id":"tooltip","data-tooltip-content":y?n:"",children:[s," ",f&&n,r]})}function tt(e){const{actions:t=[],className:s="",showTooltips:n=!0,showActionTexts:i=!1}=e;return u.jsx("ul",{className:`actions-container ${s}`,children:t==null?void 0:t.map(r=>u.jsx("li",{children:u.jsx(et,{showTooltips:n,showText:i,...r,children:r.children})},r.id))})}const Mt=e=>{const{children:t,open:s,onClose:n}=e,i=h.useRef(null),r=h.useCallback(a=>{const f=i.current;!s||!f||f.contains(a.target)||n()},[s,n]),c=h.useCallback(a=>{s&&a.key==="Escape"&&n()},[s,n]);return h.useEffect(()=>{if(s)return setTimeout(()=>{var a;return(a=i.current)==null?void 0:a.focus()},0),document.addEventListener("mousedown",r),document.addEventListener("keydown",c),()=>{document.removeEventListener("mousedown",r),document.removeEventListener("keydown",c)}},[s,r,c]),u.jsx("div",{ref:i,role:"menu","aria-hidden":!s,tabIndex:-1,className:`dropdown-main ${s?"opened":"closed"}`,onClick:a=>a.stopPropagation(),children:t})},me=e=>{const{children:t,icon:s,type:n="button",className:i="",variant:r="text",color:c="default",iconClassName:a="",...f}=e;return u.jsxs("button",{type:n,className:`icon-button ${i} ${r} ${c}`,...f,children:[u.jsx(ie.FontAwesomeIcon,{icon:s,className:`!w-auto ${a}`}),t]})},ge=e=>{const{children:t,type:s="button",variant:n="text",color:i="default",className:r="",...c}=e;return u.jsx("button",{type:s,className:`button ${n} ${i} ${r}`,...c,children:t})};var ze,St;function As(){if(St)return ze;St=1;const e=(a,f="local",y=void 0)=>{if(f==="local"){if(localStorage.getItem(a)!==void 0&&localStorage.getItem(a)!=="undefined"&&localStorage.getItem(a)!==null)return y===void 0||y!==void 0&&localStorage.getItem(a)===y}else if(f==="session"&&sessionStorage.getItem(a)!==void 0&&sessionStorage.getItem(a)!=="undefined"&&sessionStorage.getItem(a)!==null)return y===void 0||y!==void 0&&sessionStorage.getItem(a)===y;return!1},t=a=>{const f={};return a.substring(1).split("&").forEach(p=>{const[g,m]=p.split("=");f[g]=m}),f},s=(a="")=>{if(r(a)&&a.length)return r(a);{let f=navigator.language||navigator.userLanguage;if(f.indexOf("en")<0&&f.indexOf("es")<0&&(f="en-US"),f=f.split("-")[0],f)return a.length&&i(a,730,f),f}return"en"},n=(a=0,f=0,y=window,p="smooth")=>y.scroll({top:a,left:f,behavior:p}),i=(a,f,y,p="/",g="Lax")=>{var m=new Date;m.setTime(m.getTime()+f*24*60*60*1e3);const w="; expires="+m.toUTCString();document.cookie=`${a}=${y||""}${w};path=${p};SameSite=${g}`},r=a=>{const f=`${a}=`,p=decodeURIComponent(document.cookie).split(";");for(let g=0;g<p.length;g+=1){let m=p[g];for(;m.charAt(0)===" ";)m=m.substring(1);if(m.indexOf(f)===0)return m.substring(f.length,m.length)}return""};return ze={getCookie:r,createCookie:i,deleteCookie:a=>document.cookie=`${a}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`,getUserLanguage:s,scrollTo:n,parseQueries:t,validation:e},ze}var _s=As();function Ns(){const{t:e,language:t}=_.useTranslation();return{timeAge:h.useCallback(n=>{const r=new Date-n,c=Math.floor(r/(1e3*60)),a=Math.floor(c/60),f=t==="es",y=e("_accessibility:labels.ago"),p=e("_accessibility:labels.minute"),g=e("_accessibility:labels.minutes"),m=e("_accessibility:labels.hour"),w=e("_accessibility:labels.hours"),k=e("_accessibility:labels.yesterday"),b=e("_accessibility:labels.justNow");return r<1e3*60?b:c<60?`${f?y:""} ${c} ${c===1?p:g} ${f?"":y}`:a<24?`${f?y:""} ${a} ${a===1?m:w} ${f?"":y}`:a<48?k:n.toLocaleDateString(navigator.language||"es-ES",{day:"2-digit",month:"2-digit",year:"numeric"})},[e,t])}}var R=(e=>(e[e.success=0]="success",e[e.error=1]="error",e[e.warning=2]="warning",e[e.info=3]="info",e))(R||{}),te=(e=>(e.GET="GET",e.POST="POST",e.PUT="PUT",e.PATCH="PATCH",e.DELETE="DELETE",e))(te||{});async function Ae(e,t="GET",s,n){const i={...s?{"Content-Type":"application/json"}:{},...n};try{const r=await fetch(e,{method:t,headers:i,...s?{body:JSON.stringify(s)}:{}}),c=await r.text();let a=null;try{a=c?JSON.parse(c):null}catch{a=null}if(!r.ok){const f=typeof a=="object"&&a!==null?a.message??a.error??c:c||r.statusText;return{data:null,status:r.status,error:{status:r.status,message:f||"Unknown error occurred"}}}return{data:r.status!==204&&a!==null?a:null,status:r.status,error:null}}catch(r){return{data:null,status:500,error:{status:500,message:r instanceof Error?r.message:"Unknown error occurred"}}}}function It(e,t){if(t){const s=Object.entries(t).filter(([,n])=>n!=null).map(([n,i])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(i))}`).join("&");return s?`${e}?${s}`:e}return e}const st=(e,t,s)=>{const n=[];if(t){const{sortingBy:i,sortingOrder:r,currentPage:c,pageSize:a}=t;n.push(`sort=${String(i)}`,`order=${r}`,`page=${c}`,`pageSize=${a}`)}if(s){const i=Object.entries(s).filter(([,r])=>r!=null&&r!=="").flatMap(([r,c])=>{if(Array.isArray(c))return c.map(a=>`${r}==${encodeURIComponent((a==null?void 0:a.id)??a)}`);if(typeof c=="object"&&c!==null&&"start"in c&&"end"in c){const a=[];return c.start!=null&&c.start!==""&&a.push(`${r}>=${encodeURIComponent(c.start)}`),c.end!=null&&c.end!==""&&a.push(`${r}<=${encodeURIComponent(c.end)}`),a}return typeof c=="object"&&c!==null?`${r}==${encodeURIComponent(c.id??"")}`:`${r}==${encodeURIComponent(c)}`});i.length>0&&n.push(`filters=${i.join(",")}`)}return n.length?`${e}?${n.join("&")}`:e};class rt{constructor(t,s="user",n=!0,i){ue(this,"baseUrl");ue(this,"userKey");ue(this,"secured");ue(this,"tokenAcquirer");this.baseUrl=t,this.secured=n,this.userKey=s,this.tokenAcquirer=i??this.defaultTokenAcquirer}defaultTokenAcquirer(t){if(t)return{credentials:"include"};const s=nt(this.userKey);if(s&&s.length)return{Authorization:`Bearer ${s}`}}async doQuery(t,s=te.GET,n,i){const r=this.secured?this.tokenAcquirer():{},{data:c,status:a,error:f}=await Ae(`${this.baseUrl}${t}`,s,n,{...r,...i??{}});if(f||a<200||a>=300)throw f??{status:a,message:String(a)};return c}async get(t,s,n){const i=st(t,s,n),r=this.secured?this.tokenAcquirer():void 0,{data:c,error:a}=await Ae(`${this.baseUrl}${i}`,te.GET,null,r);if(a)throw a;return c}async patch(t,s){const n=this.secured?this.tokenAcquirer():void 0,{error:i,data:r,status:c}=await Ae(`${this.baseUrl}${t}`,te.PATCH,s,n);if(i||!r)throw i??{status:c,message:"Unknown error"};return r}async delete(t,s){const n=this.secured?this.tokenAcquirer():void 0,{error:i,data:r,status:c}=await Ae(`${this.baseUrl}${t}`,te.DELETE,s,n);if(i||!r)throw i??{status:c,message:"Unknown error"};return r}async post(t,s){const n=this.secured?this.tokenAcquirer():void 0,{error:i,data:r,status:c}=await Ae(`${this.baseUrl}${t}`,te.POST,s,n);if(i||!r)throw i??{status:c,message:"Unknown error"};return r}}class Ot{constructor(t,s="user"){ue(this,"api");this.api=new rt(t,s,!1)}async login(t){const s="auth/sign-in",n=t;return await this.api.doQuery(s,te.POST,n)}async logout(){return await this.api.doQuery("auth/sign-out",te.POST)}async register(t){return await this.api.doQuery("auth/sign-up",te.POST,t)}async getSession(){return await this.api.doQuery("auth/session",te.GET,null,{...this.api.defaultTokenAcquirer()})}}class Es{constructor(t,s){ue(this,"auth");this.auth=new Ot(t,s)}get Auth(){return this.auth}}class Fs{constructor(t,s,n="user",i=!0){ue(this,"table");ue(this,"secured");ue(this,"api");this.table=t,this.secured=i,this.api=new rt(s,n,i)}async insert(t){return await this.api.post(`${this.table}`,t)}async insertMany(t){return await this.api.doQuery(`${this.table}/batch`,te.POST,t)}async update(t){return await this.api.patch(`${this.table}/${t.id}`,t)}async get(t,s){return await this.api.get(`${this.table}`,t,s)}async export(t){const s=st(`${this.table}/export`,void 0,t);return await this.api.doQuery(s,te.GET,void 0)}async import(t){return await this.api.doQuery(`${this.table}/import`,te.POST,t)}async commonGet(t){return await this.api.doQuery(It(`${this.table}/common`,t),te.GET)}async getById(t){return await this.api.doQuery(`${this.table}/${t}`)}async softDelete(t){return await this.api.delete(`${this.table}`,t)}async restore(t){return await this.api.patch(`${this.table}/restore`,t)}}function js(e){return Object.keys(e).filter(t=>isNaN(Number(t))).map(t=>({key:t,value:e[t]}))}const nt=(e,t="")=>{const s=localStorage.getItem(e)??void 0;if(s&&t.length)switch(t){case"object":return JSON.parse(s);case"number":return Number(s);case"boolean":return s==="true"||s==="1";default:return s}return s},Je=(e,t)=>localStorage.setItem(e,typeof t=="object"?JSON.stringify(t):t),Ye=e=>localStorage.removeItem(e);function Xe(e){const t=e?new Date(e):new Date,s={weekday:"long",day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0};return t.toLocaleString(navigator.language||"es-ES",s)}function Ut(e){const t=e?new Date(e):new Date,s=String(t.getDate()).padStart(2,"0"),n=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getFullYear()).slice(-2),r=String(t.getHours()).padStart(2,"0"),c=String(t.getMinutes()).padStart(2,"0");return`${s}/${n}/${i} ${r}:${c}`}function Ts(e){const t=e?new Date(e):new Date,s=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0"),r=String(t.getHours()).padStart(2,"0"),c=String(t.getMinutes()).padStart(2,"0");return`${s}-${n}-${i}T${r}:${c}`}const Rt=()=>{var s;const e=navigator,t=((s=e==null?void 0:e.userAgentData)==null?void 0:s.platform)||(e==null?void 0:e.platform)||"";return/Mac|iPhone|iPod|iPad/i.test(t)};function je(e){if(!e||typeof e!="object")return!1;const t=e;return Array.isArray(t.errors)&&t.errors.every(s=>Array.isArray(s)&&s.length===2&&typeof s[0]=="string")}function Te(e){if(!e||typeof e!="object")return!1;const t=e;return typeof(t==null?void 0:t.status)=="number"&&typeof(t==null?void 0:t.message)=="string"}function $s(e,t){return e!=null&&e.errors?e.errors.map(([s,n])=>t(s,n)):[]}const qt=h.createContext({});function Ds(e){const{children:t}=e,[s,n]=h.useReducer((y,p)=>{const{type:g,items:m,index:w}=p;switch(g){case"set":return(m==null?void 0:m.map((k,b)=>({...k,id:b})))??[];case"remove":return w!==void 0?y.filter((k,b)=>b!==w):[]}return y},[],()=>[]),i=y=>n({type:"set",items:[{...y,type:R.error}]}),r=y=>n({type:"set",items:[{...y}]}),c=y=>n({type:"set",items:y}),a=y=>n({type:"set",items:[{...y,type:R.success}]}),f=y=>n({type:"remove",index:y});return u.jsx(qt.Provider,{value:{notification:s,removeNotification:f,showErrorNotification:i,showNotification:r,showSuccessNotification:a,showStackNotifications:c},children:t})}const ve=()=>{const e=h.useContext(qt);if(e===void 0)throw new Error("NotificationContext must be used within a Provider");return e},he=new we.QueryClient({defaultOptions:{queries:{refetchInterval:!1,refetchOnMount:!0,refetchOnReconnect:!1,retry:!1,retryOnMount:!0,refetchOnWindowFocus:!1}}}),Bt=h.createContext(void 0),Ls=e=>{const{children:t,manager:s}=e;return u.jsx(Bt.Provider,{value:{client:s},children:u.jsx(we.QueryClientProvider,{client:he,children:t})})},Ht=()=>{const e=h.useContext(Bt);if(!e)throw new Error("managerContext must be used within a Provider");return e.client},Qt=h.createContext(void 0),Vs=e=>{const{children:t,guestMode:s="guest_mode",user:n="user"}=e,i=Ht(),[r,c]=h.useState({}),a=h.useCallback(()=>!!nt(s,"boolean")&&r.token===void 0,[r.token,s]),f=h.useCallback(w=>{Je(s,w)},[s]),y=h.useCallback(w=>{w&&(c(w),Ye(s),Je(n,w.token))},[s,n]),p=h.useCallback(async()=>{try{await i.Auth.logout()}catch(w){console.error(w)}c({}),Ye(n)},[i.Auth,n]),g=h.useCallback(async()=>{try{const w=await i.Auth.getSession();y(w)}catch(w){console.error(w),p()}},[y,p,i.Auth]),m={account:r,logUser:y,logoutUser:p,logUserFromLocal:g,isInGuestMode:a,setGuestMode:f};return u.jsx(Qt.Provider,{value:m,children:t})},it=()=>{const e=h.useContext(Qt);if(!e)throw new Error("authContext must be used within a Provider");return e},Kt=h.createContext({}),Ps=e=>{const{children:t,location:s,navigate:n,linkComponent:i,searchComponent:r}=e;return u.jsx(Kt.Provider,{value:{location:s,navigate:n,linkComponent:i,searchComponent:r},children:t})},$e=()=>{const e=h.useContext(Kt);if(e===void 0||Object.keys(e).length===0)throw new Error("Config provider has not been set. This step is required and cannot be skipped.");return e},at=h.createContext({}),Ms=e=>{const{children:t}=e,[s,n]=h.useState({}),i=h.useCallback((f,y)=>n(p=>({...p,[f]:[...p[f]??[],y]})),[]),r=h.useCallback((f,y)=>n(p=>({...p,[f]:(p[f]??[]).filter((g,m)=>m!==y)})),[]),c=h.useCallback(f=>{n(f?y=>({...y,[f]:[]}):{})},[]),a=h.useMemo(()=>({dynamicItems:s,addChildItem:i,removeChildItem:r,clearDynamicItems:c}),[s,c,r,i]);return u.jsx(at.Provider,{value:a,children:t})},Wt=()=>h.useContext(at),ot=e=>{const{showSuccessNotification:t}=ve(),{mutationFn:s,onError:n,onSuccess:i,onSuccessMessage:r}=e,[c,a]=h.useState([]),{open:f,handleClose:y,handleOpen:p}=mt(),g=()=>{y(),a([])},m=async k=>{a(k),p()},w=we.useMutation({mutationFn:()=>s(Array.isArray(c)?c:[c]),onError:k=>{console.error(k),n&&n(k),g()},onSuccess:async k=>{i&&i(k),t({message:r}),g()}});return{open:f,onClick:m,close:g,dialogFn:w,isLoading:w.isPending}};var De=e=>e.type==="checkbox",Se=e=>e instanceof Date,ee=e=>e==null;const zt=e=>typeof e=="object";var Q=e=>!ee(e)&&!Array.isArray(e)&&zt(e)&&!Se(e),Is=e=>Q(e)&&e.target?De(e.target)?e.target.checked:e.target.value:e,Os=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,Us=(e,t)=>e.has(Os(t)),Rs=e=>{const t=e.constructor&&e.constructor.prototype;return Q(t)&&t.hasOwnProperty("isPrototypeOf")},ct=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function Y(e){let t;const s=Array.isArray(e),n=typeof FileList<"u"?e instanceof FileList:!1;if(e instanceof Date)t=new Date(e);else if(!(ct&&(e instanceof Blob||n))&&(s||Q(e)))if(t=s?[]:{},!s&&!Rs(e))t=e;else for(const i in e)e.hasOwnProperty(i)&&(t[i]=Y(e[i]));else return e;return t}var Ue=e=>/^\w*$/.test(e),W=e=>e===void 0,lt=e=>Array.isArray(e)?e.filter(Boolean):[],ut=e=>lt(e.replace(/["|']|\]/g,"").split(/\.|\[/)),S=(e,t,s)=>{if(!t||!Q(e))return s;const n=(Ue(t)?[t]:ut(t)).reduce((i,r)=>ee(i)?i:i[r],e);return W(n)||n===e?W(e[t])?s:e[t]:n},de=e=>typeof e=="boolean",O=(e,t,s)=>{let n=-1;const i=Ue(t)?[t]:ut(t),r=i.length,c=r-1;for(;++n<r;){const a=i[n];let f=s;if(n!==c){const y=e[a];f=Q(y)||Array.isArray(y)?y:isNaN(+i[n+1])?{}:[]}if(a==="__proto__"||a==="constructor"||a==="prototype")return;e[a]=f,e=e[a]}};const kt={BLUR:"blur",FOCUS_OUT:"focusout"},ce={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ye={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},qs=h.createContext(null);qs.displayName="HookFormContext";var Bs=(e,t,s,n=!0)=>{const i={defaultValues:t._defaultValues};for(const r in e)Object.defineProperty(i,r,{get:()=>{const c=r;return t._proxyFormState[c]!==ce.all&&(t._proxyFormState[c]=!n||ce.all),e[c]}});return i};const Hs=typeof window<"u"?h.useLayoutEffect:h.useEffect;var fe=e=>typeof e=="string",Qs=(e,t,s,n,i)=>fe(e)?(n&&t.watch.add(e),S(s,e,i)):Array.isArray(e)?e.map(r=>(n&&t.watch.add(r),S(s,r))):(n&&(t.watchAll=!0),s),Ze=e=>ee(e)||!zt(e);function xe(e,t,s=new WeakSet){if(Ze(e)||Ze(t))return e===t;if(Se(e)&&Se(t))return e.getTime()===t.getTime();const n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;if(s.has(e)||s.has(t))return!0;s.add(e),s.add(t);for(const r of n){const c=e[r];if(!i.includes(r))return!1;if(r!=="ref"){const a=t[r];if(Se(c)&&Se(a)||Q(c)&&Q(a)||Array.isArray(c)&&Array.isArray(a)?!xe(c,a,s):c!==a)return!1}}return!0}var Ks=(e,t,s,n,i)=>t?{...s[e],types:{...s[e]&&s[e].types?s[e].types:{},[n]:i||!0}}:{},Ee=e=>Array.isArray(e)?e:[e],At=()=>{let e=[];return{get observers(){return e},next:i=>{for(const r of e)r.next&&r.next(i)},subscribe:i=>(e.push(i),{unsubscribe:()=>{e=e.filter(r=>r!==i)}}),unsubscribe:()=>{e=[]}}},se=e=>Q(e)&&!Object.keys(e).length,dt=e=>e.type==="file",le=e=>typeof e=="function",Me=e=>{if(!ct)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Gt=e=>e.type==="select-multiple",ft=e=>e.type==="radio",Ws=e=>ft(e)||De(e),Ge=e=>Me(e)&&e.isConnected;function zs(e,t){const s=t.slice(0,-1).length;let n=0;for(;n<s;)e=W(e)?n++:e[t[n++]];return e}function Gs(e){for(const t in e)if(e.hasOwnProperty(t)&&!W(e[t]))return!1;return!0}function K(e,t){const s=Array.isArray(t)?t:Ue(t)?[t]:ut(t),n=s.length===1?e:zs(e,s),i=s.length-1,r=s[i];return n&&delete n[r],i!==0&&(Q(n)&&se(n)||Array.isArray(n)&&Gs(n))&&K(e,s.slice(0,-1)),e}var Jt=e=>{for(const t in e)if(le(e[t]))return!0;return!1};function Ie(e,t={}){const s=Array.isArray(e);if(Q(e)||s)for(const n in e)Array.isArray(e[n])||Q(e[n])&&!Jt(e[n])?(t[n]=Array.isArray(e[n])?[]:{},Ie(e[n],t[n])):ee(e[n])||(t[n]=!0);return t}function Yt(e,t,s){const n=Array.isArray(e);if(Q(e)||n)for(const i in e)Array.isArray(e[i])||Q(e[i])&&!Jt(e[i])?W(t)||Ze(s[i])?s[i]=Array.isArray(e[i])?Ie(e[i],[]):{...Ie(e[i])}:Yt(e[i],ee(t)?{}:t[i],s[i]):s[i]=!xe(e[i],t[i]);return s}var _e=(e,t)=>Yt(e,t,Ie(t));const _t={value:!1,isValid:!1},Nt={value:!0,isValid:!0};var Xt=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(s=>s&&s.checked&&!s.disabled).map(s=>s.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!W(e[0].attributes.value)?W(e[0].value)||e[0].value===""?Nt:{value:e[0].value,isValid:!0}:Nt:_t}return _t},Zt=(e,{valueAsNumber:t,valueAsDate:s,setValueAs:n})=>W(e)?e:t?e===""?NaN:e&&+e:s&&fe(e)?new Date(e):n?n(e):e;const Et={isValid:!1,value:null};var es=e=>Array.isArray(e)?e.reduce((t,s)=>s&&s.checked&&!s.disabled?{isValid:!0,value:s.value}:t,Et):Et;function Ft(e){const t=e.ref;return dt(t)?t.files:ft(t)?es(e.refs).value:Gt(t)?[...t.selectedOptions].map(({value:s})=>s):De(t)?Xt(e.refs).value:Zt(W(t.value)?e.ref.value:t.value,e)}var Js=(e,t,s,n)=>{const i={};for(const r of e){const c=S(t,r);c&&O(i,r,c._f)}return{criteriaMode:s,names:[...e],fields:i,shouldUseNativeValidation:n}},Oe=e=>e instanceof RegExp,Ne=e=>W(e)?e:Oe(e)?e.source:Q(e)?Oe(e.value)?e.value.source:e.value:e,jt=e=>({isOnSubmit:!e||e===ce.onSubmit,isOnBlur:e===ce.onBlur,isOnChange:e===ce.onChange,isOnAll:e===ce.all,isOnTouch:e===ce.onTouched});const Tt="AsyncFunction";var Ys=e=>!!e&&!!e.validate&&!!(le(e.validate)&&e.validate.constructor.name===Tt||Q(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===Tt)),Xs=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),$t=(e,t,s)=>!s&&(t.watchAll||t.watch.has(e)||[...t.watch].some(n=>e.startsWith(n)&&/^\.\w+/.test(e.slice(n.length))));const Fe=(e,t,s,n)=>{for(const i of s||Object.keys(e)){const r=S(e,i);if(r){const{_f:c,...a}=r;if(c){if(c.refs&&c.refs[0]&&t(c.refs[0],i)&&!n)return!0;if(c.ref&&t(c.ref,c.name)&&!n)return!0;if(Fe(a,t))break}else if(Q(a)&&Fe(a,t))break}}};function Dt(e,t,s){const n=S(e,s);if(n||Ue(s))return{error:n,name:s};const i=s.split(".");for(;i.length;){const r=i.join("."),c=S(t,r),a=S(e,r);if(c&&!Array.isArray(c)&&s!==r)return{name:s};if(a&&a.type)return{name:r,error:a};if(a&&a.root&&a.root.type)return{name:`${r}.root`,error:a.root};i.pop()}return{name:s}}var Zs=(e,t,s,n)=>{s(e);const{name:i,...r}=e;return se(r)||Object.keys(r).length>=Object.keys(t).length||Object.keys(r).find(c=>t[c]===(!n||ce.all))},er=(e,t,s)=>!e||!t||e===t||Ee(e).some(n=>n&&(s?n===t:n.startsWith(t)||t.startsWith(n))),tr=(e,t,s,n,i)=>i.isOnAll?!1:!s&&i.isOnTouch?!(t||e):(s?n.isOnBlur:i.isOnBlur)?!e:(s?n.isOnChange:i.isOnChange)?e:!0,sr=(e,t)=>!lt(S(e,t)).length&&K(e,t),rr=(e,t,s)=>{const n=Ee(S(e,s));return O(n,"root",t[s]),O(e,s,n),e},Pe=e=>fe(e);function Lt(e,t,s="validate"){if(Pe(e)||Array.isArray(e)&&e.every(Pe)||de(e)&&!e)return{type:s,message:Pe(e)?e:"",ref:t}}var ke=e=>Q(e)&&!Oe(e)?e:{value:e,message:""},Vt=async(e,t,s,n,i,r)=>{const{ref:c,refs:a,required:f,maxLength:y,minLength:p,min:g,max:m,pattern:w,validate:k,name:b,valueAsNumber:T,mount:z}=e._f,N=S(s,b);if(!z||t.has(b))return{};const q=a?a[0]:c,D=E=>{i&&q.reportValidity&&(q.setCustomValidity(de(E)?"":E||""),q.reportValidity())},j={},G=ft(c),L=De(c),ae=G||L,B=(T||dt(c))&&W(c.value)&&W(N)||Me(c)&&c.value===""||N===""||Array.isArray(N)&&!N.length,I=Ks.bind(null,b,n,j),M=(E,F,U,J=ye.maxLength,X=ye.minLength)=>{const V=E?F:U;j[b]={type:E?J:X,message:V,ref:c,...I(E?J:X,V)}};if(r?!Array.isArray(N)||!N.length:f&&(!ae&&(B||ee(N))||de(N)&&!N||L&&!Xt(a).isValid||G&&!es(a).isValid)){const{value:E,message:F}=Pe(f)?{value:!!f,message:f}:ke(f);if(E&&(j[b]={type:ye.required,message:F,ref:q,...I(ye.required,F)},!n))return D(F),j}if(!B&&(!ee(g)||!ee(m))){let E,F;const U=ke(m),J=ke(g);if(!ee(N)&&!isNaN(N)){const X=c.valueAsNumber||N&&+N;ee(U.value)||(E=X>U.value),ee(J.value)||(F=X<J.value)}else{const X=c.valueAsDate||new Date(N),V=oe=>new Date(new Date().toDateString()+" "+oe),Z=c.type=="time",re=c.type=="week";fe(U.value)&&N&&(E=Z?V(N)>V(U.value):re?N>U.value:X>new Date(U.value)),fe(J.value)&&N&&(F=Z?V(N)<V(J.value):re?N<J.value:X<new Date(J.value))}if((E||F)&&(M(!!E,U.message,J.message,ye.max,ye.min),!n))return D(j[b].message),j}if((y||p)&&!B&&(fe(N)||r&&Array.isArray(N))){const E=ke(y),F=ke(p),U=!ee(E.value)&&N.length>+E.value,J=!ee(F.value)&&N.length<+F.value;if((U||J)&&(M(U,E.message,F.message),!n))return D(j[b].message),j}if(w&&!B&&fe(N)){const{value:E,message:F}=ke(w);if(Oe(E)&&!N.match(E)&&(j[b]={type:ye.pattern,message:F,ref:c,...I(ye.pattern,F)},!n))return D(F),j}if(k){if(le(k)){const E=await k(N,s),F=Lt(E,q);if(F&&(j[b]={...F,...I(ye.validate,F.message)},!n))return D(F.message),j}else if(Q(k)){let E={};for(const F in k){if(!se(E)&&!n)break;const U=Lt(await k[F](N,s),q,F);U&&(E={...U,...I(F,U.message)},D(U.message),n&&(j[b]=E))}if(!se(E)&&(j[b]={ref:q,...E},!n))return j}}return D(!0),j};const nr={mode:ce.onSubmit,reValidateMode:ce.onChange,shouldFocusError:!0};function ir(e={}){let t={...nr,...e},s={submitCount:0,isDirty:!1,isReady:!1,isLoading:le(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},n={},i=Q(t.defaultValues)||Q(t.values)?Y(t.defaultValues||t.values)||{}:{},r=t.shouldUnregister?{}:Y(i),c={action:!1,mount:!1,watch:!1},a={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},f,y=0;const p={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1};let g={...p};const m={array:At(),state:At()},w=t.criteriaMode===ce.all,k=o=>l=>{clearTimeout(y),y=setTimeout(o,l)},b=async o=>{if(!t.disabled&&(p.isValid||g.isValid||o)){const l=t.resolver?se((await L()).errors):await B(n,!0);l!==s.isValid&&m.state.next({isValid:l})}},T=(o,l)=>{!t.disabled&&(p.isValidating||p.validatingFields||g.isValidating||g.validatingFields)&&((o||Array.from(a.mount)).forEach(d=>{d&&(l?O(s.validatingFields,d,l):K(s.validatingFields,d))}),m.state.next({validatingFields:s.validatingFields,isValidating:!se(s.validatingFields)}))},z=(o,l=[],d,C,v=!0,x=!0)=>{if(C&&d&&!t.disabled){if(c.action=!0,x&&Array.isArray(S(n,o))){const A=d(S(n,o),C.argA,C.argB);v&&O(n,o,A)}if(x&&Array.isArray(S(s.errors,o))){const A=d(S(s.errors,o),C.argA,C.argB);v&&O(s.errors,o,A),sr(s.errors,o)}if((p.touchedFields||g.touchedFields)&&x&&Array.isArray(S(s.touchedFields,o))){const A=d(S(s.touchedFields,o),C.argA,C.argB);v&&O(s.touchedFields,o,A)}(p.dirtyFields||g.dirtyFields)&&(s.dirtyFields=_e(i,r)),m.state.next({name:o,isDirty:M(o,l),dirtyFields:s.dirtyFields,errors:s.errors,isValid:s.isValid})}else O(r,o,l)},N=(o,l)=>{O(s.errors,o,l),m.state.next({errors:s.errors})},q=o=>{s.errors=o,m.state.next({errors:s.errors,isValid:!1})},D=(o,l,d,C)=>{const v=S(n,o);if(v){const x=S(r,o,W(d)?S(i,o):d);W(x)||C&&C.defaultChecked||l?O(r,o,l?x:Ft(v._f)):U(o,x),c.mount&&b()}},j=(o,l,d,C,v)=>{let x=!1,A=!1;const $={name:o};if(!t.disabled){if(!d||C){(p.isDirty||g.isDirty)&&(A=s.isDirty,s.isDirty=$.isDirty=M(),x=A!==$.isDirty);const P=xe(S(i,o),l);A=!!S(s.dirtyFields,o),P?K(s.dirtyFields,o):O(s.dirtyFields,o,!0),$.dirtyFields=s.dirtyFields,x=x||(p.dirtyFields||g.dirtyFields)&&A!==!P}if(d){const P=S(s.touchedFields,o);P||(O(s.touchedFields,o,d),$.touchedFields=s.touchedFields,x=x||(p.touchedFields||g.touchedFields)&&P!==d)}x&&v&&m.state.next($)}return x?$:{}},G=(o,l,d,C)=>{const v=S(s.errors,o),x=(p.isValid||g.isValid)&&de(l)&&s.isValid!==l;if(t.delayError&&d?(f=k(()=>N(o,d)),f(t.delayError)):(clearTimeout(y),f=null,d?O(s.errors,o,d):K(s.errors,o)),(d?!xe(v,d):v)||!se(C)||x){const A={...C,...x&&de(l)?{isValid:l}:{},errors:s.errors,name:o};s={...s,...A},m.state.next(A)}},L=async o=>{T(o,!0);const l=await t.resolver(r,t.context,Js(o||a.mount,n,t.criteriaMode,t.shouldUseNativeValidation));return T(o),l},ae=async o=>{const{errors:l}=await L(o);if(o)for(const d of o){const C=S(l,d);C?O(s.errors,d,C):K(s.errors,d)}else s.errors=l;return l},B=async(o,l,d={valid:!0})=>{for(const C in o){const v=o[C];if(v){const{_f:x,...A}=v;if(x){const $=a.array.has(x.name),P=v._f&&Ys(v._f);P&&p.validatingFields&&T([C],!0);const ne=await Vt(v,a.disabled,r,w,t.shouldUseNativeValidation&&!l,$);if(P&&p.validatingFields&&T([C]),ne[x.name]&&(d.valid=!1,l))break;!l&&(S(ne,x.name)?$?rr(s.errors,ne,x.name):O(s.errors,x.name,ne[x.name]):K(s.errors,x.name))}!se(A)&&await B(A,l,d)}}return d.valid},I=()=>{for(const o of a.unMount){const l=S(n,o);l&&(l._f.refs?l._f.refs.every(d=>!Ge(d)):!Ge(l._f.ref))&&Be(o)}a.unMount=new Set},M=(o,l)=>!t.disabled&&(o&&l&&O(r,o,l),!xe(oe(),i)),E=(o,l,d)=>Qs(o,a,{...c.mount?r:W(l)?i:fe(o)?{[o]:l}:l},d,l),F=o=>lt(S(c.mount?r:i,o,t.shouldUnregister?S(i,o,[]):[])),U=(o,l,d={})=>{const C=S(n,o);let v=l;if(C){const x=C._f;x&&(!x.disabled&&O(r,o,Zt(l,x)),v=Me(x.ref)&&ee(l)?"":l,Gt(x.ref)?[...x.ref.options].forEach(A=>A.selected=v.includes(A.value)):x.refs?De(x.ref)?x.refs.forEach(A=>{(!A.defaultChecked||!A.disabled)&&(Array.isArray(v)?A.checked=!!v.find($=>$===A.value):A.checked=v===A.value||!!v)}):x.refs.forEach(A=>A.checked=A.value===v):dt(x.ref)?x.ref.value="":(x.ref.value=v,x.ref.type||m.state.next({name:o,values:Y(r)})))}(d.shouldDirty||d.shouldTouch)&&j(o,v,d.shouldTouch,d.shouldDirty,!0),d.shouldValidate&&re(o)},J=(o,l,d)=>{for(const C in l){if(!l.hasOwnProperty(C))return;const v=l[C],x=o+"."+C,A=S(n,x);(a.array.has(o)||Q(v)||A&&!A._f)&&!Se(v)?J(x,v,d):U(x,v,d)}},X=(o,l,d={})=>{const C=S(n,o),v=a.array.has(o),x=Y(l);O(r,o,x),v?(m.array.next({name:o,values:Y(r)}),(p.isDirty||p.dirtyFields||g.isDirty||g.dirtyFields)&&d.shouldDirty&&m.state.next({name:o,dirtyFields:_e(i,r),isDirty:M(o,x)})):C&&!C._f&&!ee(x)?J(o,x,d):U(o,x,d),$t(o,a)&&m.state.next({...s,name:o}),m.state.next({name:c.mount?o:void 0,values:Y(r)})},V=async o=>{c.mount=!0;const l=o.target;let d=l.name,C=!0;const v=S(n,d),x=P=>{C=Number.isNaN(P)||Se(P)&&isNaN(P.getTime())||xe(P,S(r,d,P))},A=jt(t.mode),$=jt(t.reValidateMode);if(v){let P,ne;const Ve=l.type?Ft(v._f):Is(o),pe=o.type===kt.BLUR||o.type===kt.FOCUS_OUT,ps=!Xs(v._f)&&!t.resolver&&!S(s.errors,d)&&!v._f.deps||tr(pe,S(s.touchedFields,d),s.isSubmitted,$,A),Ke=$t(d,a,pe);O(r,d,Ve),pe?(v._f.onBlur&&v._f.onBlur(o),f&&f(0)):v._f.onChange&&v._f.onChange(o);const We=j(d,Ve,pe),xs=!se(We)||Ke;if(!pe&&m.state.next({name:d,type:o.type,values:Y(r)}),ps)return(p.isValid||g.isValid)&&(t.mode==="onBlur"?pe&&b():pe||b()),xs&&m.state.next({name:d,...Ke?{}:We});if(!pe&&Ke&&m.state.next({...s}),t.resolver){const{errors:vt}=await L([d]);if(x(Ve),C){const ws=Dt(s.errors,n,d),Ct=Dt(vt,n,ws.name||d);P=Ct.error,d=Ct.name,ne=se(vt)}}else T([d],!0),P=(await Vt(v,a.disabled,r,w,t.shouldUseNativeValidation))[d],T([d]),x(Ve),C&&(P?ne=!1:(p.isValid||g.isValid)&&(ne=await B(n,!0)));C&&(v._f.deps&&re(v._f.deps),G(d,ne,P,We))}},Z=(o,l)=>{if(S(s.errors,l)&&o.focus)return o.focus(),1},re=async(o,l={})=>{let d,C;const v=Ee(o);if(t.resolver){const x=await ae(W(o)?o:v);d=se(x),C=o?!v.some(A=>S(x,A)):d}else o?(C=(await Promise.all(v.map(async x=>{const A=S(n,x);return await B(A&&A._f?{[x]:A}:A)}))).every(Boolean),!(!C&&!s.isValid)&&b()):C=d=await B(n);return m.state.next({...!fe(o)||(p.isValid||g.isValid)&&d!==s.isValid?{}:{name:o},...t.resolver||!o?{isValid:d}:{},errors:s.errors}),l.shouldFocus&&!C&&Fe(n,Z,o?v:a.mount),C},oe=o=>{const l={...c.mount?r:i};return W(o)?l:fe(o)?S(l,o):o.map(d=>S(l,d))},Le=(o,l)=>({invalid:!!S((l||s).errors,o),isDirty:!!S((l||s).dirtyFields,o),error:S((l||s).errors,o),isValidating:!!S(s.validatingFields,o),isTouched:!!S((l||s).touchedFields,o)}),Ce=o=>{o&&Ee(o).forEach(l=>K(s.errors,l)),m.state.next({errors:o?s.errors:{}})},ht=(o,l,d)=>{const C=(S(n,o,{_f:{}})._f||{}).ref,v=S(s.errors,o)||{},{ref:x,message:A,type:$,...P}=v;O(s.errors,o,{...P,...l,ref:C}),m.state.next({name:o,errors:s.errors,isValid:!1}),d&&d.shouldFocus&&C&&C.focus&&C.focus()},fs=(o,l)=>le(o)?m.state.subscribe({next:d=>"values"in d&&o(E(void 0,l),d)}):E(o,l,!0),yt=o=>m.state.subscribe({next:l=>{er(o.name,l.name,o.exact)&&Zs(l,o.formState||p,bs,o.reRenderRoot)&&o.callback({values:{...r},...s,...l,defaultValues:i})}}).unsubscribe,ms=o=>(c.mount=!0,g={...g,...o.formState},yt({...o,formState:g})),Be=(o,l={})=>{for(const d of o?Ee(o):a.mount)a.mount.delete(d),a.array.delete(d),l.keepValue||(K(n,d),K(r,d)),!l.keepError&&K(s.errors,d),!l.keepDirty&&K(s.dirtyFields,d),!l.keepTouched&&K(s.touchedFields,d),!l.keepIsValidating&&K(s.validatingFields,d),!t.shouldUnregister&&!l.keepDefaultValue&&K(i,d);m.state.next({values:Y(r)}),m.state.next({...s,...l.keepDirty?{isDirty:M()}:{}}),!l.keepIsValid&&b()},gt=({disabled:o,name:l})=>{(de(o)&&c.mount||o||a.disabled.has(l))&&(o?a.disabled.add(l):a.disabled.delete(l))},He=(o,l={})=>{let d=S(n,o);const C=de(l.disabled)||de(t.disabled);return O(n,o,{...d||{},_f:{...d&&d._f?d._f:{ref:{name:o}},name:o,mount:!0,...l}}),a.mount.add(o),d?gt({disabled:de(l.disabled)?l.disabled:t.disabled,name:o}):D(o,!0,l.value),{...C?{disabled:l.disabled||t.disabled}:{},...t.progressive?{required:!!l.required,min:Ne(l.min),max:Ne(l.max),minLength:Ne(l.minLength),maxLength:Ne(l.maxLength),pattern:Ne(l.pattern)}:{},name:o,onChange:V,onBlur:V,ref:v=>{if(v){He(o,l),d=S(n,o);const x=W(v.value)&&v.querySelectorAll&&v.querySelectorAll("input,select,textarea")[0]||v,A=Ws(x),$=d._f.refs||[];if(A?$.find(P=>P===x):x===d._f.ref)return;O(n,o,{_f:{...d._f,...A?{refs:[...$.filter(Ge),x,...Array.isArray(S(i,o))?[{}]:[]],ref:{type:x.type,name:o}}:{ref:x}}}),D(o,!1,void 0,x)}else d=S(n,o,{}),d._f&&(d._f.mount=!1),(t.shouldUnregister||l.shouldUnregister)&&!(Us(a.array,o)&&c.action)&&a.unMount.add(o)}}},Qe=()=>t.shouldFocusError&&Fe(n,Z,a.mount),hs=o=>{de(o)&&(m.state.next({disabled:o}),Fe(n,(l,d)=>{const C=S(n,d);C&&(l.disabled=C._f.disabled||o,Array.isArray(C._f.refs)&&C._f.refs.forEach(v=>{v.disabled=C._f.disabled||o}))},0,!1))},bt=(o,l)=>async d=>{let C;d&&(d.preventDefault&&d.preventDefault(),d.persist&&d.persist());let v=Y(r);if(m.state.next({isSubmitting:!0}),t.resolver){const{errors:x,values:A}=await L();s.errors=x,v=Y(A)}else await B(n);if(a.disabled.size)for(const x of a.disabled)K(v,x);if(K(s.errors,"root"),se(s.errors)){m.state.next({errors:{}});try{await o(v,d)}catch(x){C=x}}else l&&await l({...s.errors},d),Qe(),setTimeout(Qe);if(m.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:se(s.errors)&&!C,submitCount:s.submitCount+1,errors:s.errors}),C)throw C},ys=(o,l={})=>{S(n,o)&&(W(l.defaultValue)?X(o,Y(S(i,o))):(X(o,l.defaultValue),O(i,o,Y(l.defaultValue))),l.keepTouched||K(s.touchedFields,o),l.keepDirty||(K(s.dirtyFields,o),s.isDirty=l.defaultValue?M(o,Y(S(i,o))):M()),l.keepError||(K(s.errors,o),p.isValid&&b()),m.state.next({...s}))},pt=(o,l={})=>{const d=o?Y(o):i,C=Y(d),v=se(o),x=v?i:C;if(l.keepDefaultValues||(i=d),!l.keepValues){if(l.keepDirtyValues){const A=new Set([...a.mount,...Object.keys(_e(i,r))]);for(const $ of Array.from(A))S(s.dirtyFields,$)?O(x,$,S(r,$)):X($,S(x,$))}else{if(ct&&W(o))for(const A of a.mount){const $=S(n,A);if($&&$._f){const P=Array.isArray($._f.refs)?$._f.refs[0]:$._f.ref;if(Me(P)){const ne=P.closest("form");if(ne){ne.reset();break}}}}if(l.keepFieldsRef)for(const A of a.mount)X(A,S(x,A));else n={}}r=t.shouldUnregister?l.keepDefaultValues?Y(i):{}:Y(x),m.array.next({values:{...x}}),m.state.next({values:{...x}})}a={mount:l.keepDirtyValues?a.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},c.mount=!p.isValid||!!l.keepIsValid||!!l.keepDirtyValues,c.watch=!!t.shouldUnregister,m.state.next({submitCount:l.keepSubmitCount?s.submitCount:0,isDirty:v?!1:l.keepDirty?s.isDirty:!!(l.keepDefaultValues&&!xe(o,i)),isSubmitted:l.keepIsSubmitted?s.isSubmitted:!1,dirtyFields:v?{}:l.keepDirtyValues?l.keepDefaultValues&&r?_e(i,r):s.dirtyFields:l.keepDefaultValues&&o?_e(i,o):l.keepDirty?s.dirtyFields:{},touchedFields:l.keepTouched?s.touchedFields:{},errors:l.keepErrors?s.errors:{},isSubmitSuccessful:l.keepIsSubmitSuccessful?s.isSubmitSuccessful:!1,isSubmitting:!1})},xt=(o,l)=>pt(le(o)?o(r):o,l),gs=(o,l={})=>{const d=S(n,o),C=d&&d._f;if(C){const v=C.refs?C.refs[0]:C.ref;v.focus&&(v.focus(),l.shouldSelect&&le(v.select)&&v.select())}},bs=o=>{s={...s,...o}},wt={control:{register:He,unregister:Be,getFieldState:Le,handleSubmit:bt,setError:ht,_subscribe:yt,_runSchema:L,_focusError:Qe,_getWatch:E,_getDirty:M,_setValid:b,_setFieldArray:z,_setDisabledField:gt,_setErrors:q,_getFieldArray:F,_reset:pt,_resetDefaultValues:()=>le(t.defaultValues)&&t.defaultValues().then(o=>{xt(o,t.resetOptions),m.state.next({isLoading:!1})}),_removeUnmounted:I,_disableForm:hs,_subjects:m,_proxyFormState:p,get _fields(){return n},get _formValues(){return r},get _state(){return c},set _state(o){c=o},get _defaultValues(){return i},get _names(){return a},set _names(o){a=o},get _formState(){return s},get _options(){return t},set _options(o){t={...t,...o}}},subscribe:ms,trigger:re,register:He,handleSubmit:bt,watch:fs,setValue:X,getValues:oe,reset:xt,resetField:ys,clearErrors:Ce,unregister:Be,setError:ht,setFocus:gs,getFieldState:Le};return{...wt,formControl:wt}}function ts(e={}){const t=h.useRef(void 0),s=h.useRef(void 0),[n,i]=h.useState({isDirty:!1,isValidating:!1,isLoading:le(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:le(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:n},e.defaultValues&&!le(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:c,...a}=ir(e);t.current={...a,formState:n}}const r=t.current.control;return r._options=e,Hs(()=>{const c=r._subscribe({formState:r._proxyFormState,callback:()=>i({...r._formState}),reRenderRoot:!0});return i(a=>({...a,isReady:!0})),r._formState.isReady=!0,c},[r]),h.useEffect(()=>r._disableForm(e.disabled),[r,e.disabled]),h.useEffect(()=>{e.mode&&(r._options.mode=e.mode),e.reValidateMode&&(r._options.reValidateMode=e.reValidateMode)},[r,e.mode,e.reValidateMode]),h.useEffect(()=>{e.errors&&(r._setErrors(e.errors),r._focusError())},[r,e.errors]),h.useEffect(()=>{e.shouldUnregister&&r._subjects.state.next({values:r._getWatch()})},[r,e.shouldUnregister]),h.useEffect(()=>{if(r._proxyFormState.isDirty){const c=r._getDirty();c!==n.isDirty&&r._subjects.state.next({isDirty:c})}},[r,n.isDirty]),h.useEffect(()=>{e.values&&!xe(e.values,s.current)?(r._reset(e.values,{keepFieldsRef:!0,...r._options.resetOptions}),s.current=e.values,i(c=>({...c}))):r._resetDefaultValues()},[r,e.values]),h.useEffect(()=>{r._state.mount||(r._setValid(),r._state.mount=!0),r._state.watch&&(r._state.watch=!1,r._subjects.state.next({...r._formState})),r._removeUnmounted()}),t.current.formState=Bs(n,r),t.current}const ar=e=>{const{t}=_.useTranslation(),{showStackNotifications:s,showSuccessNotification:n}=ve(),{defaultValues:i,mutationFn:r,formToDto:c,onError:a,onSuccess:f,queryKey:y,onSuccessMessage:p}=e,{control:g,handleSubmit:m,reset:w,setError:k,getValues:b,setValue:T}=ts({defaultValues:i}),z=h.useCallback(D=>{const j=D==null?void 0:D.errors,G=[];return j&&j.forEach(([L,ae])=>{const B=document.querySelector(`[name="${L}"]`);(B instanceof HTMLInputElement||B instanceof HTMLTextAreaElement||B instanceof HTMLSelectElement)&&(B.focus(),B.classList.add("error"),G.push(t(`_entities:${y}.${L}.${ae}`)))}),G},[t,y]),N=h.useCallback(()=>{document.querySelectorAll("input, textarea, select").forEach(j=>{j.classList.remove("error")})},[]),q=we.useMutation({mutationFn:r,onError:D=>{console.error(D);const j=D;if(a)a(D);else if(je(j)){const G=z(j);s(G.map(L=>({message:L,type:R.error})))}else if(Te(j)){const G=j.message||t("_accessibility:errors.500"),L=t(`_accessibility:errors.${j.status}`);s([{message:L||G,type:R.error}])}},onSuccess:async D=>{he&&await he.invalidateQueries({queryKey:y}),f&&f(D),p&&n({message:p})}});return{control:g,getValues:b,setValue:T,handleSubmit:m,onSubmit:D=>q.mutate(c?c(D):D),reset:w,setError:k,parseFormError:z,releaseFormError:N,isLoading:q.isPending}},ss=e=>{const{t}=_.useTranslation(),{onClick:s,hidden:n=!1,disabled:i=!1}=e;return{action:h.useCallback(c=>({id:be.Delete,hidden:!!c.deletedAt||n,disabled:!!c.deletedAt||i,icon:u.jsx(ie.FontAwesomeIcon,{className:"text-red-500",icon:H.faTrash}),tooltip:t("_pages:common.actions.delete.text"),onClick:()=>s([c==null?void 0:c.id]),onMultipleClick:a=>s(a.map(f=>f.id)),multiple:!0}),[i,n,s,t])}},rs=e=>{const{t}=_.useTranslation(),{onClick:s,hidden:n=!1}=e;return{action:h.useCallback(r=>({id:be.Restore,hidden:!r.deletedAt||n,disabled:!r.deletedAt,icon:u.jsx(ie.FontAwesomeIcon,{className:"text-red-500",icon:H.faRotateLeft}),tooltip:t("_pages:common.actions.restore.text"),onClick:()=>s([r==null?void 0:r.id]),onMultipleClick:c=>s(c.map(a=>a.id)),multiple:!0}),[n,s,t])}},or=e=>{const{t}=_.useTranslation(),{onClick:s,hidden:n=!1}=e;return{action:h.useCallback(r=>({id:be.Edit,hidden:!!r.deletedAt||n,disabled:!!r.deletedAt,icon:u.jsx(ie.FontAwesomeIcon,{className:"primary",icon:H.faPencil}),tooltip:t("_pages:common.actions.edit.text"),onClick:()=>s(r==null?void 0:r.id)}),[n,s,t])}};var be=(e=>(e.Add="add",e.Edit="edit",e.Delete="delete",e.Restore="restore",e.Refresh="refresh",e.Export="export",e.Import="import",e))(be||{});const ns=e=>{const{t}=_.useTranslation(),{onClick:s,hidden:n=!1,disabled:i=!1,isLoading:r=!1}=e;return{action:h.useCallback(()=>({id:be.Export,hidden:n,disabled:i,icon:u.jsx(ie.FontAwesomeIcon,{className:`${r?"rotate":""}`,icon:r?H.faCircleNotch:H.faCloudArrowDown}),tooltip:t("_pages:common.actions.export.text"),onClick:s}),[i,n,r,s,t])}},is=e=>{const{t}=_.useTranslation(),{onClick:s,hidden:n=!1,disabled:i=!1,isLoading:r=!1}=e;return{action:h.useCallback(()=>({id:be.Import,hidden:n,disabled:i,icon:u.jsx(ie.FontAwesomeIcon,{className:`${r?"rotate":""}`,icon:r?H.faCircleNotch:H.faCloudUpload}),tooltip:t("_pages:common.actions.import.text"),onClick:s}),[i,n,r,s,t])}},cr=e=>{const{queryKey:t,onSuccess:s,...n}=e,{showStackNotifications:i}=ve(),{t:r}=_.useTranslation(),{open:c,onClick:a,close:f,dialogFn:y,isLoading:p}=ot({onSuccessMessage:r("_pages:common.actions.delete.successMessage"),onError:m=>{const w=m;if(je(w))i(w.errors.map(([k,b])=>({message:r(`_pages:${k}.errors.${b}`),type:R.error})));else if(Te(w)){const k=w.message||r("_accessibility:errors.500"),b=r(`_accessibility:errors.${w.status}`);i([{message:b||k,type:R.error}])}},onSuccess:async m=>{await he.invalidateQueries({queryKey:t}),s&&s(m)},...n}),{action:g}=ss({onClick:a});return{onClick:a,title:r("_pages:common.actions.delete.dialog.title"),open:c,isLoading:p,handleSubmit:()=>y.mutate(),handleClose:f,action:g}},mt=()=>{const[e,t]=h.useState(!1);return{open:e,setOpen:t,handleClose:()=>t(!1),handleOpen:()=>t(!0)}},lr=e=>{const{t}=_.useTranslation(),{showErrorNotification:s,showStackNotifications:n,showSuccessNotification:i}=ve(),{defaultValues:r,getFunction:c,mutationFn:a,formToDto:f,dtoToForm:y,onError:p,onSuccess:g,queryKey:m,onSuccessMessage:w,title:k}=e,[b,T]=h.useState(0),{open:z,handleClose:N,handleOpen:q}=mt(),{control:D,handleSubmit:j,reset:G,setError:L,getValues:ae,setValue:B}=ts({defaultValues:r}),{data:I,isLoading:M}=we.useQuery({queryFn:()=>c==null?void 0:c(b),queryKey:[...m,b],enabled:!!c&&!!m&&!!b});h.useEffect(()=>{I&&y&&G({...y(I)})},[I]);const E=h.useCallback(V=>{const Z=V==null?void 0:V.errors,re=[];return Z&&Z.forEach(([oe,Le])=>{const Ce=document.querySelector(`[name="${oe}"]`);(Ce instanceof HTMLInputElement||Ce instanceof HTMLTextAreaElement||Ce instanceof HTMLSelectElement)&&(Ce.focus(),Ce.classList.add("error"),re.push(t(`_entities:${m}.${oe}.${Le}`)))}),re},[t,m]),F=h.useCallback(()=>{document.querySelectorAll("input, textarea, select").forEach(Z=>{Z.classList.remove("error")})},[]),U=h.useCallback(V=>{T(V??0),q()},[q]),J=h.useCallback(()=>{F(),N(),G()},[G,F,N]),X=we.useMutation({mutationFn:a,onError:V=>{if(console.error(V),p)p(V);else{const Z=V;if(je(Z)){const re=E(Z);n(re.map(oe=>({message:oe,type:R.error})))}else if(Te(Z)){const re=Z.message||t("_accessibility:errors.500"),oe=t(`_accessibility:errors.${Z.status}`);s({message:oe||re})}else s({message:t("_accessibility:errors.500")})}},onSuccess:async V=>{await he.invalidateQueries({queryKey:m}),g&&g(V),i({message:w}),J()}});return{open:z,openDialog:U,handleClose:J,control:D,getValues:ae,setValue:B,handleSubmit:j,onSubmit:V=>X.mutate(f?f(V):V),reset:G,setError:L,parseFormError:E,releaseFormError:F,title:k,isLoading:M||X.isPending}},ur=e=>{const{queryKey:t,onSuccess:s,...n}=e,{showStackNotifications:i}=ve(),{t:r}=_.useTranslation(),{open:c,onClick:a,close:f,dialogFn:y,isLoading:p}=ot({onSuccessMessage:r("_pages:common.actions.restore.successMessage"),onError:m=>{const w=m;if(je(w))i(w.errors.map(([k,b])=>({message:r(`_pages:${k}.errors.${b}`),type:R.error})));else if(Te(w)){const k=w.message||r("_accessibility:errors.500"),b=r(`_accessibility:errors.${w.status}`);i([{message:b||k,type:R.error}])}},onSuccess:async m=>{await he.invalidateQueries({queryKey:t}),s&&s(m)},...n}),{action:g}=rs({onClick:a});return{onClick:a,title:r("_pages:common.actions.restore.dialog.title"),open:c,isLoading:p,handleSubmit:()=>y.mutate(),handleClose:f,action:g}};function dr(e){const{t}=_.useTranslation(),{queryKey:s,mutationFn:n,entity:i,fileProcessor:r,onError:c}=e,[a,f]=h.useState(!1),[y,p]=h.useState(null),[g,m]=h.useState(!1),w=we.useMutation({mutationFn:n,onError:b=>{console.error(b),c==null||c(b)},onSuccess:async()=>{he&&await he.invalidateQueries({queryKey:s})}}),{action:k}=is({onClick:()=>f(!0)});return{handleSubmit:async()=>{if(!(!y||y.length===0))try{await w.mutateAsync({items:y,override:g}),f(!1),p(null),m(!1)}catch(b){console.error(b)}},isLoading:w.isPending,fileProcessor:r,onFileProcessed:b=>p(b),onOverrideChange:b=>m(b),open:a,title:t("_pages:common.actions.import.dialog.title",{entity:t(`_pages:${i}.title`)}),handleClose:()=>{f(!1),p(null)},action:k}}const fr=e=>{const{showSuccessNotification:t}=ve(),{t:s}=_.useTranslation(),{entity:n,mutationFn:i,onError:r,onSuccess:c,onSuccessMessage:a=s("_pages:common.actions.export.successMessage")}=e,f=we.useMutation({mutationFn:()=>i(),onError:g=>{console.error(g),r&&r(g)},onSuccess:async g=>{const m=JSON.stringify(g,null,2),w=new Blob([m],{type:"application/json"}),k=URL.createObjectURL(w),b=document.createElement("a");b.href=k,b.download=`${n}.json`,b.click(),URL.revokeObjectURL(k),c&&c(g),t({message:a})}}),y=h.useCallback(()=>{f.mutate()},[f]),{action:p}=ns({onClick:y,isLoading:f.isPending});return{action:p}};function as(e){const[t,s]=h.useState(!1),n=h.useCallback(()=>{const i=window.scrollY>e;s(i)},[e]);return h.useEffect(()=>(window.addEventListener("scroll",n),()=>{window.removeEventListener("scroll",n)}),[n]),t}const mr=()=>{const{t:e}=_.useTranslation(),t=as(200);return u.jsx(me,{icon:H.faArrowUp,onClick:()=>_s.scrollTo(0,0),"data-tooltip-id":"tooltip","data-tooltip-content":e("_accessibility:buttons.toTop"),className:`submit primary to-top ${t?"show":"hide"}`})},os=e=>{const{actions:t=[],className:s=""}=e,{t:n}=_.useTranslation(),[i,r]=h.useState(!1);return u.jsxs("div",{className:`actions-dropdown ${s}`,children:[u.jsx(me,{icon:H.faEllipsisV,onClick:()=>r(!0),"data-tooltip-id":"tooltip","data-tooltip-content":n("_accessibility:buttons.openActions")}),u.jsx(Mt,{open:i,onClose:()=>r(!1),children:u.jsx(tt,{showActionTexts:!0,actions:t,className:"flex-col",showTooltips:!1})})]})},hr=h.forwardRef(function(e,t){const{value:s,onChange:n,state:i=_.State.default,name:r="",id:c="",label:a="",disabled:f=!1,required:y=!1,containerClassName:p="",inputClassName:g="",labelClassName:m="",helperText:w="",helperTextClassName:k="",...b}=e;return u.jsxs("div",{className:`relative z-0 w-full mb-5 group ${p}`,children:[u.jsx("textarea",{ref:t,name:r,id:c,className:`text-input text-area ${_.inputStateClassName(i)} ${g} peer`,required:y,value:s,onChange:n,disabled:f,...b}),u.jsxs("label",{htmlFor:r,className:`text-input-label ${_.labelStateClassName(i)} ${m}`,children:[a,y?" *":""]}),!!w&&u.jsx("p",{className:`text-input-helper-text ${_.helperTextStateClassName(i)} ${k}`,children:w})]})}),yr=e=>{const{t}=_.useTranslation(),{children:s,handleSubmit:n,onSubmit:i,isLoading:r=!1,buttonEnd:c=!0,reset:a}=e;return u.jsxs("form",{className:"form-container",onSubmit:n(i),children:[s,u.jsxs("div",{className:`flex gap-2 mt-5 ${c?"justify-end":""}`,children:[u.jsxs(ge,{type:"submit",color:"primary",variant:"submit",disabled:r,name:t("_accessibility:buttons.submit"),"aria-label":t("_accessibility:ariaLabels.submit"),children:[r?u.jsx(_.Loading,{color:"stroke-base",loaderClass:"!w-6 mt-1",strokeWidth:"6"}):null,t("_accessibility:buttons.submit")]}),u.jsx(ge,{type:"button",variant:"outlined",onClick:()=>a==null?void 0:a(),name:t("_accessibility:buttons.cancel"),"aria-label":t("_accessibility:ariaLabels.cancel"),children:t("_accessibility:buttons.cancel")})]})]})},gr=h.forwardRef(function(e,t){const[s,n]=h.useState(!1);return u.jsx(_.TextInput,{...e,type:s?"text":"password",ref:t,children:u.jsx(me,{type:"button",tabIndex:-1,className:"absolute right-2 password-icon",onClick:()=>n(!s),icon:s?H.faEyeSlash:H.faEye})})}),Re=e=>{const{t}=_.useTranslation(),{title:s,children:n,handleClose:i,open:r=!1,containerClassName:c="",className:a="",animationClass:f="appear"}=e,[y,p]=h.useState(window.innerWidth),g=h.useCallback(b=>{b.key==="Escape"&&r&&i()},[r,i]);h.useEffect(()=>(window.addEventListener("keydown",g),()=>{window.removeEventListener("keydown",g)}),[g]);const m=h.useCallback(()=>{p(window.innerWidth)},[]);h.useEffect(()=>(window.addEventListener("resize",m),()=>{window.removeEventListener("resize",m)}),[m]);const w=h.useMemo(()=>Ss.css({width:`${y}px`}),[y]),k=h.useCallback(b=>{var T;((T=b==null?void 0:b.currentTarget)==null?void 0:T.getAttribute("name"))===t("_accessibility:buttons.closeDialog")&&i()},[t,i]);return h.useEffect(()=>{const b=T=>{T?document.body.style.overflow="hidden":document.body.style.overflow="auto"};return b(r),()=>{b(r)}},[r]),Pt.createPortal(u.jsx("div",{"aria-label":t("_accessibility:ariaLabels.closeDialog"),"aria-disabled":!r,onClick:k,className:`dialog-backdrop animated ${r?`opened ${f}`:"closed"} ${w} h-screen ${r?"bg-base/20 backdrop-blur-xl":"pointer-events-none"} ${c}`,children:u.jsxs("div",{className:`dialog elevated animated ${r?`opened ${f}`:"closed"} ${a}`,children:[u.jsxs("div",{className:"dialog-header",children:[u.jsx("h3",{className:"text-text text-xl",children:s}),u.jsx(me,{icon:H.faClose,disabled:!r,"aria-disabled":!r,onClick:i,className:"icon-button text-red-400",name:t("_accessibility:buttons.closeDialog"),"aria-label":t("_accessibility:ariaLabels.closeDialog")})]}),n]})}),document.body)},qe=e=>{const{primaryText:t,cancelText:s,onPrimaryClick:n,onCancel:i,isLoading:r=!1,disabled:c=!1,primaryType:a="submit",containerClassName:f="",primaryClassName:y="",alignEnd:p=!1,primaryName:g,primaryAriaLabel:m,cancelName:w,cancelAriaLabel:k}=e;return u.jsxs("div",{className:`flex gap-2 mt-2 ${p?"justify-end":""} ${f}`,children:[u.jsxs(ge,{type:a,color:"primary",variant:"submit",className:y,disabled:c,onClick:a==="button"?n:void 0,name:g,"aria-label":m,children:[r?u.jsx(_.Loading,{color:"stroke-base",loaderClass:"!w-6 mt-1",strokeWidth:"6"}):null,t]}),u.jsx(ge,{type:"button",variant:"outlined",disabled:c,onClick:i,name:w,"aria-label":k,children:s})]})},br=e=>{const{t}=_.useTranslation(),{children:s,handleSubmit:n,onSubmit:i,handleClose:r,isLoading:c=!1,buttonEnd:a=!0,...f}=e;return u.jsx(Re,{...f,handleClose:r,children:u.jsxs("form",{onSubmit:n(i),children:[u.jsx("div",{className:"form-container",children:s}),u.jsx(qe,{primaryType:"submit",primaryText:t("_accessibility:buttons.submit"),cancelText:t("_accessibility:buttons.cancel"),onCancel:r,isLoading:c,disabled:c,primaryClassName:"!px-6",alignEnd:a,primaryName:t("_accessibility:buttons.submit"),primaryAriaLabel:t("_accessibility:ariaLabels.submit"),cancelName:t("_accessibility:buttons.cancel"),cancelAriaLabel:t("_accessibility:ariaLabels.cancel")})]})})},pr=e=>{const{t}=_.useTranslation(),{children:s,handleSubmit:n,handleClose:i,isLoading:r=!1,...c}=e;return u.jsxs(Re,{...c,handleClose:i,children:[s,u.jsx(qe,{primaryText:t("_accessibility:buttons.ok"),cancelText:t("_accessibility:buttons.cancel"),onPrimaryClick:n,onCancel:i,isLoading:r,disabled:r,primaryType:"button",containerClassName:"mt-5",primaryName:t("_accessibility:buttons.ok"),primaryAriaLabel:t("_accessibility:ariaLabels.ok"),cancelName:t("_accessibility:buttons.cancel"),cancelAriaLabel:t("_accessibility:ariaLabels.cancel")})]})};function xr(e){const{message:t,className:s=""}=e,{t:n}=_.useTranslation();return t?u.jsx("p",{className:`text-red-600 text-sm mt-2 ${s}`,children:t||n("_messages:errors.parseFile",{defaultValue:"Failed to process file"})}):null}function wr(e){const{message:t,className:s=""}=e,{t:n}=_.useTranslation();return u.jsxs("div",{className:`my-4 mx-auto flex items-center gap-3 text-sm text-gray-600 ${s}`,children:[u.jsx(_.Loading,{loaderClass:"w-5 h-5",className:"!w-auto"}),u.jsx("span",{children:t??n("_messages:loading.processingFile",{defaultValue:"Processing file..."})})]})}function vr(e){const{items:t,max:s=5,className:n=""}=e,{t:i}=_.useTranslation();if(!t||t.length===0)return null;const r=t.slice(0,s);return u.jsxs("div",{className:`mt-4 ${n}`,children:[u.jsx("p",{className:"text-sm text-gray-600",children:i("_pages:common.actions.import.previewCount",{count:t.length,defaultValue:`Preview: ${t.length} items`})}),u.jsx("pre",{className:"mt-2 max-h-56 overflow-auto rounded bg-gray-100 p-3 text-xs",children:JSON.stringify(r,null,2)})]})}const Cr=e=>{const{t}=_.useTranslation(),[s,n]=h.useState(null),[i,r]=h.useState(null),[c,a]=h.useState(null),[f,y]=h.useState(!1),[p,g]=h.useState(!1),{children:m,handleSubmit:w,handleClose:k,isLoading:b=!1,fileProcessor:T,onFileProcessed:z,onOverrideChange:N,open:q,...D}=e,[j,G]=h.useState(0),L=h.useRef(z),ae=h.useRef(T);h.useEffect(()=>{L.current=z},[z]),h.useEffect(()=>{ae.current=T},[T]),h.useEffect(()=>{q||(n(null),r(null),a(null),y(!1),g(!1),G(I=>I+1))},[q]);const B=h.useCallback(async()=>{var I;if(ae.current&&s){y(!0);try{const M=await ae.current(s,{override:p});r(M??[]),a(null),(I=L.current)==null||I.call(L,M??[])}catch(M){console.error(M),r(null);const E=M instanceof Error?M.message:"Failed to parse file";a(E)}y(!1)}},[s,p]);return h.useEffect(()=>{B()},[B]),u.jsxs(Re,{...D,open:q,handleClose:k,children:[u.jsx(_.FileInput,{onClear:()=>{var I;n(null),r(null),a(null),y(!1),(I=L.current)==null||I.call(L,[])},onChange:I=>{var E,F;const M=(E=I.target.files)==null?void 0:E[0];if(!M){n(null),r(null),a(null),y(!1),(F=L.current)==null||F.call(L,[]);return}n(M)},label:t("_accessibility:labels.file")},j),u.jsxs("label",{className:"mt-3 flex items-center gap-2 text-sm",children:[u.jsx("input",{type:"checkbox",checked:p,onChange:I=>{const M=I.target.checked;g(M),N==null||N(M)}}),u.jsx("span",{children:t("_pages:common.actions.import.override",{defaultValue:"Override existing items"})})]}),u.jsx(xr,{message:c??void 0}),f&&u.jsx(wr,{}),!!i&&i.length>0&&u.jsx(vr,{items:i}),m,u.jsx(qe,{primaryText:t("_accessibility:buttons.ok"),cancelText:t("_accessibility:buttons.cancel"),onPrimaryClick:()=>{(!T||!!i&&i.length>0)&&w()},onCancel:k,isLoading:b,primaryType:"button",containerClassName:"mt-5",primaryName:t("_accessibility:buttons.ok"),primaryAriaLabel:t("_accessibility:ariaLabels.ok"),cancelName:t("_accessibility:buttons.cancel"),cancelAriaLabel:t("_accessibility:ariaLabels.cancel")})]})};function Sr(e){const{t}=_.useTranslation(),{open:s,onClose:n,menuMap:i,logo:r}=e,{account:c}=it(),{dynamicItems:a}=Wt(),{linkComponent:f}=$e(),y=f,p=h.useMemo(()=>i.filter(b=>{const T=b.auth,z=!!(c!=null&&c.email);return T==null||T&&z||!T&&!z}),[c==null?void 0:c.email,i]),g=h.useCallback(b=>{b.key==="Escape"&&s&&n()},[n,s]);h.useEffect(()=>(document.addEventListener("keydown",g),()=>{document.removeEventListener("keydown",g)}),[g]);const m=h.useCallback((b,T)=>T?b===`${location.pathname}${location.search}`:b===location.pathname,[]),w=h.useCallback(b=>u.jsx("li",{className:`drawer-list-item-child ${m(b.path,!0)?"active":""} animated`,children:b.path?u.jsx(y,{"aria-disabled":!s,to:b.path??"/","aria-label":t(`_accessibility:ariaLabels.${b.path}`),className:"drawer-link",children:b.label}):b.label},b.id),[y,s,t,m]),k=h.useMemo(()=>p.map((b,T)=>{const z=b.page??String(T),N=`drawer-list-item ${m(b.path)?"active":""} animated`;if(b.type==="divider")return u.jsx("li",{className:N,children:u.jsx("hr",{className:"drawer-divider"})},z);const q=b.children??(b.page&&a?a[b.page]:null);return u.jsxs("li",{className:N,children:[u.jsxs(y,{"aria-disabled":!s,to:b.path??"/","aria-label":t(`_accessibility:ariaLabels.${b.path}`),className:"drawer-link",children:[b.icon,t(`_pages:${b.page}.title`)]}),q&&u.jsx("ul",{className:"drawer-children-list",children:q.map(w)})]},z)}),[y,a,m,s,p,w,t]);return u.jsx("div",{"aria-label":t("_accessibility:ariaLabels.closeMenu"),"aria-disabled":!s,className:`${s?"opened":"closed"} drawer-backdrop`,onClick:()=>n(),children:u.jsxs("aside",{className:`${s?"opened":"closed"} drawer animated`,children:[u.jsxs("div",{className:"drawer-header-container",children:[r,u.jsx("h2",{className:"drawer-header poppins",children:t("_pages:home.appName")})]}),u.jsx("ul",{className:"flex flex-col",children:k})]})})}function kr(e){const{error:t}=e,{t:s}=_.useTranslation();return u.jsxs("div",{className:"flex flex-col items-center justify-center pt-10 gap-5",children:[u.jsx(ie.FontAwesomeIcon,{icon:ks.faSadTear,className:"text-red-300 text-4xl"}),u.jsx("p",{className:"text-text text-center",children:(t==null?void 0:t.message)??s("_accessibility:errors.unknownError")})]})}const Ar=e=>{const{showBackButton:t,title:s,actions:n}=e,{t:i}=_.useTranslation(),{navigate:r}=$e();return u.jsxs("div",{className:"page-header",children:[u.jsxs("div",{className:"page-header-left",children:[t&&u.jsx(me,{icon:H.faArrowLeft,onClick:()=>r(-1),name:i("_accessibility:buttons.back"),"data-tooltip-id":"tooltip","data-tooltip-content":i("_accessibility:buttons.back")}),u.jsx("h2",{className:"page-header-title",children:s})]}),u.jsxs("div",{children:[u.jsx(tt,{className:"max-xs:!hidden",actions:n??[]}),u.jsx(os,{className:"min-xs:hidden",actions:n??[]})]})]})},_r=e=>{const{title:t,children:s,addOptions:n,filterOptions:i,actions:r,queryKey:c,isLoading:a=!1,isAnimated:f=!0,showBackButton:y=!1}=e,{t:p}=_.useTranslation(),{countOfFilters:g}=_.useTableOptions(),m=h.useMemo(()=>{const w=Array.isArray(r)?[...r]:[];if(c){const k={id:be.Refresh,onClick:()=>he.invalidateQueries({queryKey:c}),icon:u.jsx(ie.FontAwesomeIcon,{icon:H.faRotateLeft}),tooltip:p("_pages:common.actions.refresh.text")};w.unshift(k)}if(n){const k={...n,id:be.Add,icon:u.jsx(ie.FontAwesomeIcon,{icon:H.faAdd})};w.unshift(k)}if(i){const k={...i,id:"filter",icon:u.jsx(ie.FontAwesomeIcon,{icon:H.faFilter}),children:u.jsx(_.Badge,{className:`${g>0?"show":"hide"} `,count:g})};w.push(k)}return w},[r,n,g,i,c,p]);return u.jsxs("main",{className:"page-main",children:[u.jsx(Ar,{showBackButton:y,actions:m,title:t}),u.jsx("div",{className:`page-main-content ${f?"appear":""}`,children:a?u.jsx(_.Loading,{className:"page-loading"}):s}),n&&u.jsx(me,{icon:n.icon??H.faAdd,color:n.color??"primary",variant:n.variant??"submit",onClick:()=>{var w;return(w=n.onClick)==null?void 0:w.call(n)},className:`button fab min-xs:!hidden ${n.className??""}`})]})},Nr=e=>{const{t}=_.useTranslation(),{className:s="",itemClassName:n="",loading:i=!1,emptyComponent:r=null,emptyMessage:c=t("_accessibility:messages.empty"),renderComponent:a,data:f=[]}=e;return u.jsx(u.Fragment,{children:f!=null&&f.length?u.jsx("ul",{className:`pretty-grid-main ${s}`,children:f==null?void 0:f.map(y=>u.jsx("li",{className:`pretty-grid-item ${n}`,children:a(y)},y.id))}):u.jsx(u.Fragment,{children:r||u.jsx(ds,{message:c})})})},Er=()=>{const[e,t]=h.useState(Xe());return h.useEffect(()=>{const s=window.matchMedia("(min-width: 768px)"),n=()=>{t(s.matches?Xe():Ut())},i=setInterval(n,1e3);return s.addEventListener("change",n),()=>{clearInterval(i),s.removeEventListener("change",n)}},[]),u.jsx("p",{className:"capitalize max-xs:hidden",children:e})};function Fr(e){const{t}=_.useTranslation(),{openDrawer:s,showClock:n=!0,showSearch:i=!0,menuButtonProps:r}=e,c={...r,type:(r==null?void 0:r.type)??"button",icon:(r==null?void 0:r.icon)??H.faBars,onClick:m=>{var w;(w=r==null?void 0:r.onClick)==null||w.call(r,m),s()},name:(r==null?void 0:r.name)??t("_accessibility:buttons.openMenu"),ariaLabel:(r==null?void 0:r["aria-label"])??t("_accessibility:ariaLabels.openMenu"),className:`navbar-menu animated ${(r==null?void 0:r.className)??""}`},{searchComponent:a}=$e(),[f,y]=h.useState(!1),p=h.useCallback(m=>{(Rt()?m.metaKey:m.ctrlKey)&&m.shiftKey&&m.key.toLowerCase()==="f"&&(y(!0),m.preventDefault())},[]);h.useEffect(()=>(window.addEventListener("keydown",p),()=>{window.removeEventListener("keydown",p)}),[p]);const g=a;return u.jsxs(u.Fragment,{children:[location.pathname!=="/"&&!!g&&u.jsx(g,{open:f,onClose:()=>y(!1)}),u.jsxs("header",{id:"header",className:"header",children:[u.jsxs("div",{className:"navbar-left",children:[u.jsx(me,{...c}),u.jsx("h1",{className:"poppins navbar-title",children:t("_pages:home.appName")})]}),u.jsxs("div",{className:"navbar-right",children:[i&&u.jsx(me,{icon:H.faSearch,className:"min-md:!hidden",onClick:()=>y(!0)}),n&&u.jsx(Er,{})]})]})]})}function jr(){const{t:e}=_.useTranslation(),{notification:t,removeNotification:s}=ve(),[n,i]=h.useState(new Set),r=h.useCallback(g=>{if(g===void 0){const m=new Set(t.map((w,k)=>k));i(m),window.setTimeout(()=>s(),300)}else i(m=>new Set(m).add(g)),window.setTimeout(()=>s(g),300)},[t,s]),c=h.useCallback(g=>{switch(g){case R.error:return H.faWarning;default:return H.faCircleCheck}},[]),a=h.useCallback(g=>{switch(g){case R.success:return"!text-success";case R.error:return"!text-error";case R.warning:return"!text-warning";default:return"!text-info"}},[]),f=h.useCallback(g=>{switch(g){case R.success:return"bg-bg-success";case R.error:return"bg-bg-error";case R.warning:return"bg-bg-warning";default:return"bg-bg-info"}},[]),y=h.useRef();h.useEffect(()=>{y.current=()=>r()},[r]),h.useEffect(()=>{if(!(t!=null&&t.length))return;const g=m=>{var w;return(w=y.current)==null?void 0:w.call(y,m)};return window.addEventListener("click",g),()=>{window.removeEventListener("click",g)}},[t==null?void 0:t.length]);const p=h.useCallback(g=>{g.key==="Escape"&&t.length&&r()},[t,r]);return h.useEffect(()=>(window.addEventListener("keydown",p),()=>{window.removeEventListener("keydown",p)}),[p]),h.useEffect(()=>{i(new Set)},[t]),Pt.createPortal(u.jsx("div",{className:`notification-portal ${t!=null&&t.length?"w-screen h-screen":""}`,children:t!=null&&t.length?t==null?void 0:t.map(({id:g,type:m,message:w},k)=>u.jsxs("div",{className:`notification ${n.has(k)?"closing":""} ${f(m??R.error)}`,onClick:b=>b.stopPropagation(),children:[u.jsxs("div",{className:"flex gap-3 items-center",children:[u.jsx(ie.FontAwesomeIcon,{icon:c(m??R.error),className:`${a(m??R.error)}`}),u.jsx("p",{className:`whitespace-nowrap ${a(m??R.error)}`,children:w})]}),u.jsx(me,{type:"button",icon:H.faClose,color:"error",className:"group",onClick:b=>{b.stopPropagation(),r(k)},iconClassName:`${a(m??R.error)} group-hover:!text-red-400 cursor-pointer`,name:e("_accessibility:buttons.closeNotification"),"aria-label":e("_accessibility:ariaLabels.closeNotification")})]},g)):null}),document.body)}function Tr(){return u.jsx("div",{className:"w-screen h-screen flex items-center justify-center overflow-hidden",children:u.jsx(_.Loading,{className:"blur-appear"})})}const cs=e=>{const{id:t,active:s,onClick:n,children:i,to:r}=e,{linkComponent:c}=$e(),a=c;return u.jsx(a,{to:r??`#${t}`,onClick:()=>n(),className:`button submit tab ${s?"primary":"outlined"}`,children:i})},ls=e=>{var f;const{tabs:t=[],defaultTab:s,className:n="",tabsContainerClassName:i=""}=e,[r,c]=h.useState((f=t[0])==null?void 0:f.id),a=h.useMemo(()=>t.find(y=>y.id===r),[t,r]);return h.useEffect(()=>{s&&c(s)},[s]),u.jsxs("div",{className:`tabs-layout-main ${n}`,children:[u.jsx("ul",{className:`horizontal tabs tabs-container ${i}`,children:t.map(({id:y,to:p,label:g})=>u.jsx("li",{children:u.jsx(cs,{onClick:()=>c(y),id:y,to:p??"",siblings:t.length>1,active:r===y,children:g})},y))}),a==null?void 0:a.content]})},us=e=>{const{translation:t,onClickNext:s,image:n="",alt:i="",final:r=!1}=e,{setGuestMode:c}=it(),{t:a}=_.useTranslation();return u.jsxs("div",{className:"big-appear w-md flex flex-col gap-20",children:[u.jsx("img",{src:n,alt:i}),u.jsx("h2",{className:"text-5xl text-center leading-16",children:a(`_pages:onboarding.${t}.title`)}),u.jsx("p",{className:"text-center !text-lg",children:a(`_pages:onboarding.${t}.body`)}),u.jsx("div",{className:"flex gap-5 items-center justify-center",children:r?u.jsxs(u.Fragment,{children:[u.jsx(ge,{color:"primary",className:"!px-8",variant:"outlined",onClick:()=>{c(!0),window.location.href="/"},"aria-label":a("_accessibility:ariaLabels.start"),children:a("_accessibility:buttons.startAsGuest")}),u.jsx(ge,{color:"primary",variant:"submit",className:"!px-8","aria-label":a("_accessibility:ariaLabels.start"),onClick:()=>window.location.href="/auth/sign-in",children:a("_accessibility:buttons.signIn")})]}):u.jsxs(u.Fragment,{children:[u.jsx(ge,{color:"primary",className:"!px-8",variant:"outlined",onClick:()=>window.location.href="/auth/sign-in","aria-label":a("_accessibility:ariaLabels.skip"),children:a("_accessibility:buttons.skip")}),u.jsx(ge,{color:"primary",className:"!px-8",variant:"outlined",onClick:()=>s(),"aria-label":a("_accessibility:ariaLabels.next"),children:a("_accessibility:buttons.next")})]})})]})},$r=e=>{const{steps:t}=e,[s,n]=h.useState(1),i=h.useMemo(()=>t.map((r,c)=>({id:c+1,label:"",content:u.jsx(us,{translation:r,final:c===t.length-1,onClickNext:()=>n(a=>a+1)})})),[t]);return u.jsx("div",{className:"onboarding-main",children:u.jsx(ls,{defaultTab:s,tabs:i})})},ds=e=>{const{message:t,messageProps:s={className:"text-gray-400 text-balance text-center"},action:n,iconProps:i}=e;return u.jsxs("div",{className:"flex flex-col items-center justify-center gap-5 pt-5",children:[i&&u.jsx(ie.FontAwesomeIcon,{...i??{}}),u.jsx("p",{...s??{},children:t}),n&&u.jsx(et,{showTooltips:!1,showText:!0,...n})]})};exports.APIClient=rt;exports.Action=et;exports.Actions=tt;exports.ActionsDropdown=os;exports.AuthClient=Ot;exports.AuthProvider=Vs;exports.BaseClient=Fs;exports.Button=ge;exports.ConfigProvider=Ps;exports.ConfirmationDialog=pr;exports.Dialog=Re;exports.DialogActions=qe;exports.Drawer=Sr;exports.DrawerMenuContext=at;exports.DrawerMenuProvider=Ms;exports.Dropdown=Mt;exports.Empty=ds;exports.Error=kr;exports.FormContainer=yr;exports.FormDialog=br;exports.GlobalActions=be;exports.IManager=Es;exports.IconButton=me;exports.ImportDialog=Cr;exports.ManagerProvider=Ls;exports.Methods=te;exports.Navbar=Fr;exports.Notification=jr;exports.NotificationEnumType=R;exports.NotificationProvider=Ds;exports.Onboarding=$r;exports.Page=_r;exports.ParagraphInput=hr;exports.PasswordInput=gr;exports.PrettyGrid=Nr;exports.SplashScreen=Tr;exports.Step=us;exports.Tab=cs;exports.TabsLayout=ls;exports.ToTop=mr;exports.buildQueryUrl=It;exports.enumToKeyValueArray=js;exports.formatForDatetimeLocal=Ts;exports.fromLocal=nt;exports.getFormattedDateTime=Xe;exports.getShortFormattedDateTime=Ut;exports.isHttpError=Te;exports.isMac=Rt;exports.isValidationError=je;exports.makeRequest=Ae;exports.mapValidationErrors=$s;exports.parseQueries=st;exports.queryClient=he;exports.removeFromLocal=Ye;exports.toLocal=Je;exports.useAuth=it;exports.useConfig=$e;exports.useConfirmationForm=ot;exports.useDeleteAction=ss;exports.useDeleteDialog=cr;exports.useDialog=mt;exports.useDrawerMenu=Wt;exports.useEditAction=or;exports.useExportAction=ns;exports.useExportActionMutate=fr;exports.useFormDialog=lr;exports.useImportAction=is;exports.useImportDialog=dr;exports.useManager=Ht;exports.useNotification=ve;exports.usePostForm=ar;exports.useRestoreAction=rs;exports.useRestoreDialog=ur;exports.useScrollTrigger=as;exports.useTimeAge=Ns;Object.keys(_).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:()=>_[e]})});
|
|
1
|
+
var xs=Object.defineProperty;var ws=(e,t,s)=>t in e?xs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s;var de=(e,t,s)=>ws(e,typeof t!="symbol"?t+"":t,s);var $r=require("./main.css");Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("@sito/dashboard"),u=require("react/jsx-runtime"),ie=require("@fortawesome/react-fontawesome"),h=require("react"),B=require("@fortawesome/free-solid-svg-icons"),Vt=require("react-dom"),vs=require("@emotion/css"),xe=require("@tanstack/react-query"),Cs=require("@fortawesome/free-regular-svg-icons");function Ze(e){const{id:t,icon:s,tooltip:n,onClick:i,children:r,hidden:c=!1,disabled:a=!1,showText:f=!1,showTooltips:m=!0}=e;return c?null:u.jsxs("button",{id:t,className:`action ${f?"text-action":"icon-action"}`,disabled:a,onClick:()=>i(),"aria-disabled":a,"data-tooltip-id":"tooltip","data-tooltip-content":m?n:"",children:[s," ",f&&n,r]})}function et(e){const{actions:t=[],className:s="",showTooltips:n=!0,showActionTexts:i=!1}=e;return u.jsx("ul",{className:`actions-container ${s}`,children:t==null?void 0:t.map(r=>u.jsx("li",{children:u.jsx(Ze,{showTooltips:n,showText:i,...r,children:r.children})},r.id))})}const ue=({icon:e,...t})=>u.jsx(A.IconButton,{icon:u.jsx(ie.FontAwesomeIcon,{icon:e}),...t});var We,Ct;function Ss(){if(Ct)return We;Ct=1;const e=(a,f="local",m=void 0)=>{if(f==="local"){if(localStorage.getItem(a)!==void 0&&localStorage.getItem(a)!=="undefined"&&localStorage.getItem(a)!==null)return m===void 0||m!==void 0&&localStorage.getItem(a)===m}else if(f==="session"&&sessionStorage.getItem(a)!==void 0&&sessionStorage.getItem(a)!=="undefined"&&sessionStorage.getItem(a)!==null)return m===void 0||m!==void 0&&sessionStorage.getItem(a)===m;return!1},t=a=>{const f={};return a.substring(1).split("&").forEach(p=>{const[b,g]=p.split("=");f[b]=g}),f},s=(a="")=>{if(r(a)&&a.length)return r(a);{let f=navigator.language||navigator.userLanguage;if(f.indexOf("en")<0&&f.indexOf("es")<0&&(f="en-US"),f=f.split("-")[0],f)return a.length&&i(a,730,f),f}return"en"},n=(a=0,f=0,m=window,p="smooth")=>m.scroll({top:a,left:f,behavior:p}),i=(a,f,m,p="/",b="Lax")=>{var g=new Date;g.setTime(g.getTime()+f*24*60*60*1e3);const x="; expires="+g.toUTCString();document.cookie=`${a}=${m||""}${x};path=${p};SameSite=${b}`},r=a=>{const f=`${a}=`,p=decodeURIComponent(document.cookie).split(";");for(let b=0;b<p.length;b+=1){let g=p[b];for(;g.charAt(0)===" ";)g=g.substring(1);if(g.indexOf(f)===0)return g.substring(f.length,g.length)}return""};return We={getCookie:r,createCookie:i,deleteCookie:a=>document.cookie=`${a}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`,getUserLanguage:s,scrollTo:n,parseQueries:t,validation:e},We}var ks=Ss();function As(){const{t:e,language:t}=A.useTranslation();return{timeAge:h.useCallback(n=>{const r=new Date-n,c=Math.floor(r/(1e3*60)),a=Math.floor(c/60),f=t==="es",m=e("_accessibility:labels.ago"),p=e("_accessibility:labels.minute"),b=e("_accessibility:labels.minutes"),g=e("_accessibility:labels.hour"),x=e("_accessibility:labels.hours"),S=e("_accessibility:labels.yesterday"),y=e("_accessibility:labels.justNow");return r<1e3*60?y:c<60?`${f?m:""} ${c} ${c===1?p:b} ${f?"":m}`:a<24?`${f?m:""} ${a} ${a===1?g:x} ${f?"":m}`:a<48?S:n.toLocaleDateString(navigator.language||"es-ES",{day:"2-digit",month:"2-digit",year:"numeric"})},[e,t])}}var R=(e=>(e[e.success=0]="success",e[e.error=1]="error",e[e.warning=2]="warning",e[e.info=3]="info",e))(R||{}),ee=(e=>(e.GET="GET",e.POST="POST",e.PUT="PUT",e.PATCH="PATCH",e.DELETE="DELETE",e))(ee||{});async function ke(e,t="GET",s,n){const i={...s?{"Content-Type":"application/json"}:{},...n};try{const r=await fetch(e,{method:t,headers:i,...s?{body:JSON.stringify(s)}:{}}),c=await r.text();let a=null;try{a=c?JSON.parse(c):null}catch{a=null}if(!r.ok){const f=typeof a=="object"&&a!==null?a.message??a.error??c:c||r.statusText;return{data:null,status:r.status,error:{status:r.status,message:f||"Unknown error occurred"}}}return{data:r.status!==204&&a!==null?a:null,status:r.status,error:null}}catch(r){return{data:null,status:500,error:{status:500,message:r instanceof Error?r.message:"Unknown error occurred"}}}}function It(e,t){if(t){const s=Object.entries(t).filter(([,n])=>n!=null).map(([n,i])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(i))}`).join("&");return s?`${e}?${s}`:e}return e}const tt=(e,t,s)=>{const n=[];if(t){const{sortingBy:i,sortingOrder:r,currentPage:c,pageSize:a}=t;n.push(`sort=${String(i)}`,`order=${r}`,`page=${c}`,`pageSize=${a}`)}if(s){const i=Object.entries(s).filter(([,r])=>r!=null&&r!=="").flatMap(([r,c])=>{if(Array.isArray(c))return c.map(a=>`${r}==${encodeURIComponent((a==null?void 0:a.id)??a)}`);if(typeof c=="object"&&c!==null&&"start"in c&&"end"in c){const a=[];return c.start!=null&&c.start!==""&&a.push(`${r}>=${encodeURIComponent(c.start)}`),c.end!=null&&c.end!==""&&a.push(`${r}<=${encodeURIComponent(c.end)}`),a}return typeof c=="object"&&c!==null?`${r}==${encodeURIComponent(c.id??"")}`:`${r}==${encodeURIComponent(c)}`});i.length>0&&n.push(`filters=${i.join(",")}`)}return n.length?`${e}?${n.join("&")}`:e};class st{constructor(t,s="user",n=!0,i){de(this,"baseUrl");de(this,"userKey");de(this,"secured");de(this,"tokenAcquirer");this.baseUrl=t,this.secured=n,this.userKey=s,this.tokenAcquirer=i??this.defaultTokenAcquirer}defaultTokenAcquirer(t){if(t)return{credentials:"include"};const s=rt(this.userKey);if(s&&s.length)return{Authorization:`Bearer ${s}`}}async doQuery(t,s=ee.GET,n,i){const r=this.secured?this.tokenAcquirer():{},{data:c,status:a,error:f}=await ke(`${this.baseUrl}${t}`,s,n,{...r,...i??{}});if(f||a<200||a>=300)throw f??{status:a,message:String(a)};return c}async get(t,s,n){const i=tt(t,s,n),r=this.secured?this.tokenAcquirer():void 0,{data:c,error:a}=await ke(`${this.baseUrl}${i}`,ee.GET,null,r);if(a)throw a;return c}async patch(t,s){const n=this.secured?this.tokenAcquirer():void 0,{error:i,data:r,status:c}=await ke(`${this.baseUrl}${t}`,ee.PATCH,s,n);if(i||!r)throw i??{status:c,message:"Unknown error"};return r}async delete(t,s){const n=this.secured?this.tokenAcquirer():void 0,{error:i,data:r,status:c}=await ke(`${this.baseUrl}${t}`,ee.DELETE,s,n);if(i||!r)throw i??{status:c,message:"Unknown error"};return r}async post(t,s){const n=this.secured?this.tokenAcquirer():void 0,{error:i,data:r,status:c}=await ke(`${this.baseUrl}${t}`,ee.POST,s,n);if(i||!r)throw i??{status:c,message:"Unknown error"};return r}}class Pt{constructor(t,s="user"){de(this,"api");this.api=new st(t,s,!1)}async login(t){const s="auth/sign-in",n=t;return await this.api.doQuery(s,ee.POST,n)}async logout(){return await this.api.doQuery("auth/sign-out",ee.POST)}async register(t){return await this.api.doQuery("auth/sign-up",ee.POST,t)}async getSession(){return await this.api.doQuery("auth/session",ee.GET,null,{...this.api.defaultTokenAcquirer()})}}class _s{constructor(t,s){de(this,"auth");this.auth=new Pt(t,s)}get Auth(){return this.auth}}class Ns{constructor(t,s,n="user",i=!0){de(this,"table");de(this,"secured");de(this,"api");this.table=t,this.secured=i,this.api=new st(s,n,i)}async insert(t){return await this.api.post(`${this.table}`,t)}async insertMany(t){return await this.api.doQuery(`${this.table}/batch`,ee.POST,t)}async update(t){return await this.api.patch(`${this.table}/${t.id}`,t)}async get(t,s){return await this.api.get(`${this.table}`,t,s)}async export(t){const s=tt(`${this.table}/export`,void 0,t);return await this.api.doQuery(s,ee.GET,void 0)}async import(t){return await this.api.doQuery(`${this.table}/import`,ee.POST,t)}async commonGet(t){return await this.api.doQuery(It(`${this.table}/common`,t),ee.GET)}async getById(t){return await this.api.doQuery(`${this.table}/${t}`)}async softDelete(t){return await this.api.delete(`${this.table}`,t)}async restore(t){return await this.api.patch(`${this.table}/restore`,t)}}function Es(e){return Object.keys(e).filter(t=>isNaN(Number(t))).map(t=>({key:t,value:e[t]}))}const rt=(e,t="")=>{const s=localStorage.getItem(e)??void 0;if(s&&t.length)switch(t){case"object":return JSON.parse(s);case"number":return Number(s);case"boolean":return s==="true"||s==="1";default:return s}return s},Ge=(e,t)=>localStorage.setItem(e,typeof t=="object"?JSON.stringify(t):t),Je=e=>localStorage.removeItem(e);function Ye(e){const t=e?new Date(e):new Date,s={weekday:"long",day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0};return t.toLocaleString(navigator.language||"es-ES",s)}function Mt(e){const t=e?new Date(e):new Date,s=String(t.getDate()).padStart(2,"0"),n=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getFullYear()).slice(-2),r=String(t.getHours()).padStart(2,"0"),c=String(t.getMinutes()).padStart(2,"0");return`${s}/${n}/${i} ${r}:${c}`}function Fs(e){const t=e?new Date(e):new Date,s=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0"),r=String(t.getHours()).padStart(2,"0"),c=String(t.getMinutes()).padStart(2,"0");return`${s}-${n}-${i}T${r}:${c}`}const Ot=()=>{var s;const e=navigator,t=((s=e==null?void 0:e.userAgentData)==null?void 0:s.platform)||(e==null?void 0:e.platform)||"";return/Mac|iPhone|iPod|iPad/i.test(t)};function Fe(e){if(!e||typeof e!="object")return!1;const t=e;return Array.isArray(t.errors)&&t.errors.every(s=>Array.isArray(s)&&s.length===2&&typeof s[0]=="string")}function Te(e){if(!e||typeof e!="object")return!1;const t=e;return typeof(t==null?void 0:t.status)=="number"&&typeof(t==null?void 0:t.message)=="string"}function Ts(e,t){return e!=null&&e.errors?e.errors.map(([s,n])=>t(s,n)):[]}const Ut=h.createContext({});function js(e){const{children:t}=e,[s,n]=h.useReducer((m,p)=>{const{type:b,items:g,index:x}=p;switch(b){case"set":return(g==null?void 0:g.map((S,y)=>({...S,id:y})))??[];case"remove":return x!==void 0?m.filter((S,y)=>y!==x):[]}return m},[],()=>[]),i=m=>n({type:"set",items:[{...m,type:R.error}]}),r=m=>n({type:"set",items:[{...m}]}),c=m=>n({type:"set",items:m}),a=m=>n({type:"set",items:[{...m,type:R.success}]}),f=m=>n({type:"remove",index:m});return u.jsx(Ut.Provider,{value:{notification:s,removeNotification:f,showErrorNotification:i,showNotification:r,showSuccessNotification:a,showStackNotifications:c},children:t})}const we=()=>{const e=h.useContext(Ut);if(e===void 0)throw new Error("NotificationContext must be used within a Provider");return e},he=new xe.QueryClient({defaultOptions:{queries:{refetchInterval:!1,refetchOnMount:!0,refetchOnReconnect:!1,retry:!1,retryOnMount:!0,refetchOnWindowFocus:!1}}}),Rt=h.createContext(void 0),Ds=e=>{const{children:t,manager:s}=e;return u.jsx(Rt.Provider,{value:{client:s},children:u.jsx(xe.QueryClientProvider,{client:he,children:t})})},qt=()=>{const e=h.useContext(Rt);if(!e)throw new Error("managerContext must be used within a Provider");return e.client},Bt=h.createContext(void 0),$s=e=>{const{children:t,guestMode:s="guest_mode",user:n="user"}=e,i=qt(),[r,c]=h.useState({}),a=h.useCallback(()=>!!rt(s,"boolean")&&r.token===void 0,[r.token,s]),f=h.useCallback(x=>{Ge(s,x)},[s]),m=h.useCallback(x=>{x&&(c(x),Je(s),Ge(n,x.token))},[s,n]),p=h.useCallback(async()=>{try{await i.Auth.logout()}catch(x){console.error(x)}c({}),Je(n)},[i.Auth,n]),b=h.useCallback(async()=>{try{const x=await i.Auth.getSession();m(x)}catch(x){console.error(x),p()}},[m,p,i.Auth]),g={account:r,logUser:m,logoutUser:p,logUserFromLocal:b,isInGuestMode:a,setGuestMode:f};return u.jsx(Bt.Provider,{value:g,children:t})},nt=()=>{const e=h.useContext(Bt);if(!e)throw new Error("authContext must be used within a Provider");return e},Ht=h.createContext({}),Ls=e=>{const{children:t,location:s,navigate:n,linkComponent:i,searchComponent:r}=e;return u.jsx(Ht.Provider,{value:{location:s,navigate:n,linkComponent:i,searchComponent:r},children:t})},je=()=>{const e=h.useContext(Ht);if(e===void 0||Object.keys(e).length===0)throw new Error("Config provider has not been set. This step is required and cannot be skipped.");return e},it=h.createContext({}),Vs=e=>{const{children:t}=e,[s,n]=h.useState({}),i=h.useCallback((f,m)=>n(p=>({...p,[f]:[...p[f]??[],m]})),[]),r=h.useCallback((f,m)=>n(p=>({...p,[f]:(p[f]??[]).filter((b,g)=>g!==m)})),[]),c=h.useCallback(f=>{n(f?m=>({...m,[f]:[]}):{})},[]),a=h.useMemo(()=>({dynamicItems:s,addChildItem:i,removeChildItem:r,clearDynamicItems:c}),[s,c,r,i]);return u.jsx(it.Provider,{value:a,children:t})},Qt=()=>h.useContext(it),at=e=>{const{showSuccessNotification:t}=we(),{mutationFn:s,onError:n,onSuccess:i,onSuccessMessage:r}=e,[c,a]=h.useState([]),{open:f,handleClose:m,handleOpen:p}=ft(),b=()=>{m(),a([])},g=async S=>{a(S),p()},x=xe.useMutation({mutationFn:()=>s(Array.isArray(c)?c:[c]),onError:S=>{console.error(S),n&&n(S),b()},onSuccess:async S=>{i&&i(S),t({message:r}),b()}});return{open:f,onClick:g,close:b,dialogFn:x,isLoading:x.isPending}};var De=e=>e.type==="checkbox",Ce=e=>e instanceof Date,Z=e=>e==null;const Kt=e=>typeof e=="object";var Q=e=>!Z(e)&&!Array.isArray(e)&&Kt(e)&&!Ce(e),Is=e=>Q(e)&&e.target?De(e.target)?e.target.checked:e.target.value:e,Ps=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,Ms=(e,t)=>e.has(Ps(t)),Os=e=>{const t=e.constructor&&e.constructor.prototype;return Q(t)&&t.hasOwnProperty("isPrototypeOf")},ot=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function J(e){let t;const s=Array.isArray(e),n=typeof FileList<"u"?e instanceof FileList:!1;if(e instanceof Date)t=new Date(e);else if(!(ot&&(e instanceof Blob||n))&&(s||Q(e)))if(t=s?[]:{},!s&&!Os(e))t=e;else for(const i in e)e.hasOwnProperty(i)&&(t[i]=J(e[i]));else return e;return t}var Oe=e=>/^\w*$/.test(e),W=e=>e===void 0,ct=e=>Array.isArray(e)?e.filter(Boolean):[],lt=e=>ct(e.replace(/["|']|\]/g,"").split(/\.|\[/)),k=(e,t,s)=>{if(!t||!Q(e))return s;const n=(Oe(t)?[t]:lt(t)).reduce((i,r)=>Z(i)?i:i[r],e);return W(n)||n===e?W(e[t])?s:e[t]:n},fe=e=>typeof e=="boolean",U=(e,t,s)=>{let n=-1;const i=Oe(t)?[t]:lt(t),r=i.length,c=r-1;for(;++n<r;){const a=i[n];let f=s;if(n!==c){const m=e[a];f=Q(m)||Array.isArray(m)?m:isNaN(+i[n+1])?{}:[]}if(a==="__proto__"||a==="constructor"||a==="prototype")return;e[a]=f,e=e[a]}};const St={BLUR:"blur",FOCUS_OUT:"focusout"},ce={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ge={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Us=h.createContext(null);Us.displayName="HookFormContext";var Rs=(e,t,s,n=!0)=>{const i={defaultValues:t._defaultValues};for(const r in e)Object.defineProperty(i,r,{get:()=>{const c=r;return t._proxyFormState[c]!==ce.all&&(t._proxyFormState[c]=!n||ce.all),e[c]}});return i};const qs=typeof window<"u"?h.useLayoutEffect:h.useEffect;var me=e=>typeof e=="string",Bs=(e,t,s,n,i)=>me(e)?(n&&t.watch.add(e),k(s,e,i)):Array.isArray(e)?e.map(r=>(n&&t.watch.add(r),k(s,r))):(n&&(t.watchAll=!0),s),Xe=e=>Z(e)||!Kt(e);function pe(e,t,s=new WeakSet){if(Xe(e)||Xe(t))return e===t;if(Ce(e)&&Ce(t))return e.getTime()===t.getTime();const n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;if(s.has(e)||s.has(t))return!0;s.add(e),s.add(t);for(const r of n){const c=e[r];if(!i.includes(r))return!1;if(r!=="ref"){const a=t[r];if(Ce(c)&&Ce(a)||Q(c)&&Q(a)||Array.isArray(c)&&Array.isArray(a)?!pe(c,a,s):c!==a)return!1}}return!0}var Hs=(e,t,s,n,i)=>t?{...s[e],types:{...s[e]&&s[e].types?s[e].types:{},[n]:i||!0}}:{},Ne=e=>Array.isArray(e)?e:[e],kt=()=>{let e=[];return{get observers(){return e},next:i=>{for(const r of e)r.next&&r.next(i)},subscribe:i=>(e.push(i),{unsubscribe:()=>{e=e.filter(r=>r!==i)}}),unsubscribe:()=>{e=[]}}},te=e=>Q(e)&&!Object.keys(e).length,ut=e=>e.type==="file",le=e=>typeof e=="function",Ie=e=>{if(!ot)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Wt=e=>e.type==="select-multiple",dt=e=>e.type==="radio",Qs=e=>dt(e)||De(e),ze=e=>Ie(e)&&e.isConnected;function Ks(e,t){const s=t.slice(0,-1).length;let n=0;for(;n<s;)e=W(e)?n++:e[t[n++]];return e}function Ws(e){for(const t in e)if(e.hasOwnProperty(t)&&!W(e[t]))return!1;return!0}function K(e,t){const s=Array.isArray(t)?t:Oe(t)?[t]:lt(t),n=s.length===1?e:Ks(e,s),i=s.length-1,r=s[i];return n&&delete n[r],i!==0&&(Q(n)&&te(n)||Array.isArray(n)&&Ws(n))&&K(e,s.slice(0,-1)),e}var zt=e=>{for(const t in e)if(le(e[t]))return!0;return!1};function Pe(e,t={}){const s=Array.isArray(e);if(Q(e)||s)for(const n in e)Array.isArray(e[n])||Q(e[n])&&!zt(e[n])?(t[n]=Array.isArray(e[n])?[]:{},Pe(e[n],t[n])):Z(e[n])||(t[n]=!0);return t}function Gt(e,t,s){const n=Array.isArray(e);if(Q(e)||n)for(const i in e)Array.isArray(e[i])||Q(e[i])&&!zt(e[i])?W(t)||Xe(s[i])?s[i]=Array.isArray(e[i])?Pe(e[i],[]):{...Pe(e[i])}:Gt(e[i],Z(t)?{}:t[i],s[i]):s[i]=!pe(e[i],t[i]);return s}var Ae=(e,t)=>Gt(e,t,Pe(t));const At={value:!1,isValid:!1},_t={value:!0,isValid:!0};var Jt=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(s=>s&&s.checked&&!s.disabled).map(s=>s.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!W(e[0].attributes.value)?W(e[0].value)||e[0].value===""?_t:{value:e[0].value,isValid:!0}:_t:At}return At},Yt=(e,{valueAsNumber:t,valueAsDate:s,setValueAs:n})=>W(e)?e:t?e===""?NaN:e&&+e:s&&me(e)?new Date(e):n?n(e):e;const Nt={isValid:!1,value:null};var Xt=e=>Array.isArray(e)?e.reduce((t,s)=>s&&s.checked&&!s.disabled?{isValid:!0,value:s.value}:t,Nt):Nt;function Et(e){const t=e.ref;return ut(t)?t.files:dt(t)?Xt(e.refs).value:Wt(t)?[...t.selectedOptions].map(({value:s})=>s):De(t)?Jt(e.refs).value:Yt(W(t.value)?e.ref.value:t.value,e)}var zs=(e,t,s,n)=>{const i={};for(const r of e){const c=k(t,r);c&&U(i,r,c._f)}return{criteriaMode:s,names:[...e],fields:i,shouldUseNativeValidation:n}},Me=e=>e instanceof RegExp,_e=e=>W(e)?e:Me(e)?e.source:Q(e)?Me(e.value)?e.value.source:e.value:e,Ft=e=>({isOnSubmit:!e||e===ce.onSubmit,isOnBlur:e===ce.onBlur,isOnChange:e===ce.onChange,isOnAll:e===ce.all,isOnTouch:e===ce.onTouched});const Tt="AsyncFunction";var Gs=e=>!!e&&!!e.validate&&!!(le(e.validate)&&e.validate.constructor.name===Tt||Q(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===Tt)),Js=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),jt=(e,t,s)=>!s&&(t.watchAll||t.watch.has(e)||[...t.watch].some(n=>e.startsWith(n)&&/^\.\w+/.test(e.slice(n.length))));const Ee=(e,t,s,n)=>{for(const i of s||Object.keys(e)){const r=k(e,i);if(r){const{_f:c,...a}=r;if(c){if(c.refs&&c.refs[0]&&t(c.refs[0],i)&&!n)return!0;if(c.ref&&t(c.ref,c.name)&&!n)return!0;if(Ee(a,t))break}else if(Q(a)&&Ee(a,t))break}}};function Dt(e,t,s){const n=k(e,s);if(n||Oe(s))return{error:n,name:s};const i=s.split(".");for(;i.length;){const r=i.join("."),c=k(t,r),a=k(e,r);if(c&&!Array.isArray(c)&&s!==r)return{name:s};if(a&&a.type)return{name:r,error:a};if(a&&a.root&&a.root.type)return{name:`${r}.root`,error:a.root};i.pop()}return{name:s}}var Ys=(e,t,s,n)=>{s(e);const{name:i,...r}=e;return te(r)||Object.keys(r).length>=Object.keys(t).length||Object.keys(r).find(c=>t[c]===(!n||ce.all))},Xs=(e,t,s)=>!e||!t||e===t||Ne(e).some(n=>n&&(s?n===t:n.startsWith(t)||t.startsWith(n))),Zs=(e,t,s,n,i)=>i.isOnAll?!1:!s&&i.isOnTouch?!(t||e):(s?n.isOnBlur:i.isOnBlur)?!e:(s?n.isOnChange:i.isOnChange)?e:!0,er=(e,t)=>!ct(k(e,t)).length&&K(e,t),tr=(e,t,s)=>{const n=Ne(k(e,s));return U(n,"root",t[s]),U(e,s,n),e},Ve=e=>me(e);function $t(e,t,s="validate"){if(Ve(e)||Array.isArray(e)&&e.every(Ve)||fe(e)&&!e)return{type:s,message:Ve(e)?e:"",ref:t}}var Se=e=>Q(e)&&!Me(e)?e:{value:e,message:""},Lt=async(e,t,s,n,i,r)=>{const{ref:c,refs:a,required:f,maxLength:m,minLength:p,min:b,max:g,pattern:x,validate:S,name:y,valueAsNumber:T,mount:q}=e._f,E=k(s,y);if(!q||t.has(y))return{};const O=a?a[0]:c,L=N=>{i&&O.reportValidity&&(O.setCustomValidity(fe(N)?"":N||""),O.reportValidity())},j={},G=dt(c),V=De(c),ae=G||V,H=(T||ut(c))&&W(c.value)&&W(E)||Ie(c)&&c.value===""||E===""||Array.isArray(E)&&!E.length,se=Hs.bind(null,y,n,j),X=(N,F,D,I=ge.maxLength,z=ge.minLength)=>{const P=N?F:D;j[y]={type:N?I:z,message:P,ref:c,...se(N?I:z,P)}};if(r?!Array.isArray(E)||!E.length:f&&(!ae&&(H||Z(E))||fe(E)&&!E||V&&!Jt(a).isValid||G&&!Xt(a).isValid)){const{value:N,message:F}=Ve(f)?{value:!!f,message:f}:Se(f);if(N&&(j[y]={type:ge.required,message:F,ref:O,...se(ge.required,F)},!n))return L(F),j}if(!H&&(!Z(b)||!Z(g))){let N,F;const D=Se(g),I=Se(b);if(!Z(E)&&!isNaN(E)){const z=c.valueAsNumber||E&&+E;Z(D.value)||(N=z>D.value),Z(I.value)||(F=z<I.value)}else{const z=c.valueAsDate||new Date(E),P=oe=>new Date(new Date().toDateString()+" "+oe),Y=c.type=="time",re=c.type=="week";me(D.value)&&E&&(N=Y?P(E)>P(D.value):re?E>D.value:z>new Date(D.value)),me(I.value)&&E&&(F=Y?P(E)<P(I.value):re?E<I.value:z<new Date(I.value))}if((N||F)&&(X(!!N,D.message,I.message,ge.max,ge.min),!n))return L(j[y].message),j}if((m||p)&&!H&&(me(E)||r&&Array.isArray(E))){const N=Se(m),F=Se(p),D=!Z(N.value)&&E.length>+N.value,I=!Z(F.value)&&E.length<+F.value;if((D||I)&&(X(D,N.message,F.message),!n))return L(j[y].message),j}if(x&&!H&&me(E)){const{value:N,message:F}=Se(x);if(Me(N)&&!E.match(N)&&(j[y]={type:ge.pattern,message:F,ref:c,...se(ge.pattern,F)},!n))return L(F),j}if(S){if(le(S)){const N=await S(E,s),F=$t(N,O);if(F&&(j[y]={...F,...se(ge.validate,F.message)},!n))return L(F.message),j}else if(Q(S)){let N={};for(const F in S){if(!te(N)&&!n)break;const D=$t(await S[F](E,s),O,F);D&&(N={...D,...se(F,D.message)},L(D.message),n&&(j[y]=N))}if(!te(N)&&(j[y]={ref:O,...N},!n))return j}}return L(!0),j};const sr={mode:ce.onSubmit,reValidateMode:ce.onChange,shouldFocusError:!0};function rr(e={}){let t={...sr,...e},s={submitCount:0,isDirty:!1,isReady:!1,isLoading:le(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},n={},i=Q(t.defaultValues)||Q(t.values)?J(t.defaultValues||t.values)||{}:{},r=t.shouldUnregister?{}:J(i),c={action:!1,mount:!1,watch:!1},a={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},f,m=0;const p={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1};let b={...p};const g={array:kt(),state:kt()},x=t.criteriaMode===ce.all,S=o=>l=>{clearTimeout(m),m=setTimeout(o,l)},y=async o=>{if(!t.disabled&&(p.isValid||b.isValid||o)){const l=t.resolver?te((await V()).errors):await H(n,!0);l!==s.isValid&&g.state.next({isValid:l})}},T=(o,l)=>{!t.disabled&&(p.isValidating||p.validatingFields||b.isValidating||b.validatingFields)&&((o||Array.from(a.mount)).forEach(d=>{d&&(l?U(s.validatingFields,d,l):K(s.validatingFields,d))}),g.state.next({validatingFields:s.validatingFields,isValidating:!te(s.validatingFields)}))},q=(o,l=[],d,C,v=!0,w=!0)=>{if(C&&d&&!t.disabled){if(c.action=!0,w&&Array.isArray(k(n,o))){const _=d(k(n,o),C.argA,C.argB);v&&U(n,o,_)}if(w&&Array.isArray(k(s.errors,o))){const _=d(k(s.errors,o),C.argA,C.argB);v&&U(s.errors,o,_),er(s.errors,o)}if((p.touchedFields||b.touchedFields)&&w&&Array.isArray(k(s.touchedFields,o))){const _=d(k(s.touchedFields,o),C.argA,C.argB);v&&U(s.touchedFields,o,_)}(p.dirtyFields||b.dirtyFields)&&(s.dirtyFields=Ae(i,r)),g.state.next({name:o,isDirty:X(o,l),dirtyFields:s.dirtyFields,errors:s.errors,isValid:s.isValid})}else U(r,o,l)},E=(o,l)=>{U(s.errors,o,l),g.state.next({errors:s.errors})},O=o=>{s.errors=o,g.state.next({errors:s.errors,isValid:!1})},L=(o,l,d,C)=>{const v=k(n,o);if(v){const w=k(r,o,W(d)?k(i,o):d);W(w)||C&&C.defaultChecked||l?U(r,o,l?w:Et(v._f)):D(o,w),c.mount&&y()}},j=(o,l,d,C,v)=>{let w=!1,_=!1;const $={name:o};if(!t.disabled){if(!d||C){(p.isDirty||b.isDirty)&&(_=s.isDirty,s.isDirty=$.isDirty=X(),w=_!==$.isDirty);const M=pe(k(i,o),l);_=!!k(s.dirtyFields,o),M?K(s.dirtyFields,o):U(s.dirtyFields,o,!0),$.dirtyFields=s.dirtyFields,w=w||(p.dirtyFields||b.dirtyFields)&&_!==!M}if(d){const M=k(s.touchedFields,o);M||(U(s.touchedFields,o,d),$.touchedFields=s.touchedFields,w=w||(p.touchedFields||b.touchedFields)&&M!==d)}w&&v&&g.state.next($)}return w?$:{}},G=(o,l,d,C)=>{const v=k(s.errors,o),w=(p.isValid||b.isValid)&&fe(l)&&s.isValid!==l;if(t.delayError&&d?(f=S(()=>E(o,d)),f(t.delayError)):(clearTimeout(m),f=null,d?U(s.errors,o,d):K(s.errors,o)),(d?!pe(v,d):v)||!te(C)||w){const _={...C,...w&&fe(l)?{isValid:l}:{},errors:s.errors,name:o};s={...s,..._},g.state.next(_)}},V=async o=>{T(o,!0);const l=await t.resolver(r,t.context,zs(o||a.mount,n,t.criteriaMode,t.shouldUseNativeValidation));return T(o),l},ae=async o=>{const{errors:l}=await V(o);if(o)for(const d of o){const C=k(l,d);C?U(s.errors,d,C):K(s.errors,d)}else s.errors=l;return l},H=async(o,l,d={valid:!0})=>{for(const C in o){const v=o[C];if(v){const{_f:w,..._}=v;if(w){const $=a.array.has(w.name),M=v._f&&Gs(v._f);M&&p.validatingFields&&T([C],!0);const ne=await Lt(v,a.disabled,r,x,t.shouldUseNativeValidation&&!l,$);if(M&&p.validatingFields&&T([C]),ne[w.name]&&(d.valid=!1,l))break;!l&&(k(ne,w.name)?$?tr(s.errors,ne,w.name):U(s.errors,w.name,ne[w.name]):K(s.errors,w.name))}!te(_)&&await H(_,l,d)}}return d.valid},se=()=>{for(const o of a.unMount){const l=k(n,o);l&&(l._f.refs?l._f.refs.every(d=>!ze(d)):!ze(l._f.ref))&&qe(o)}a.unMount=new Set},X=(o,l)=>!t.disabled&&(o&&l&&U(r,o,l),!pe(oe(),i)),N=(o,l,d)=>Bs(o,a,{...c.mount?r:W(l)?i:me(o)?{[o]:l}:l},d,l),F=o=>ct(k(c.mount?r:i,o,t.shouldUnregister?k(i,o,[]):[])),D=(o,l,d={})=>{const C=k(n,o);let v=l;if(C){const w=C._f;w&&(!w.disabled&&U(r,o,Yt(l,w)),v=Ie(w.ref)&&Z(l)?"":l,Wt(w.ref)?[...w.ref.options].forEach(_=>_.selected=v.includes(_.value)):w.refs?De(w.ref)?w.refs.forEach(_=>{(!_.defaultChecked||!_.disabled)&&(Array.isArray(v)?_.checked=!!v.find($=>$===_.value):_.checked=v===_.value||!!v)}):w.refs.forEach(_=>_.checked=_.value===v):ut(w.ref)?w.ref.value="":(w.ref.value=v,w.ref.type||g.state.next({name:o,values:J(r)})))}(d.shouldDirty||d.shouldTouch)&&j(o,v,d.shouldTouch,d.shouldDirty,!0),d.shouldValidate&&re(o)},I=(o,l,d)=>{for(const C in l){if(!l.hasOwnProperty(C))return;const v=l[C],w=o+"."+C,_=k(n,w);(a.array.has(o)||Q(v)||_&&!_._f)&&!Ce(v)?I(w,v,d):D(w,v,d)}},z=(o,l,d={})=>{const C=k(n,o),v=a.array.has(o),w=J(l);U(r,o,w),v?(g.array.next({name:o,values:J(r)}),(p.isDirty||p.dirtyFields||b.isDirty||b.dirtyFields)&&d.shouldDirty&&g.state.next({name:o,dirtyFields:Ae(i,r),isDirty:X(o,w)})):C&&!C._f&&!Z(w)?I(o,w,d):D(o,w,d),jt(o,a)&&g.state.next({...s,name:o}),g.state.next({name:c.mount?o:void 0,values:J(r)})},P=async o=>{c.mount=!0;const l=o.target;let d=l.name,C=!0;const v=k(n,d),w=M=>{C=Number.isNaN(M)||Ce(M)&&isNaN(M.getTime())||pe(M,k(r,d,M))},_=Ft(t.mode),$=Ft(t.reValidateMode);if(v){let M,ne;const Le=l.type?Et(v._f):Is(o),be=o.type===St.BLUR||o.type===St.FOCUS_OUT,ys=!Js(v._f)&&!t.resolver&&!k(s.errors,d)&&!v._f.deps||Zs(be,k(s.touchedFields,d),s.isSubmitted,$,_),Qe=jt(d,a,be);U(r,d,Le),be?(v._f.onBlur&&v._f.onBlur(o),f&&f(0)):v._f.onChange&&v._f.onChange(o);const Ke=j(d,Le,be),bs=!te(Ke)||Qe;if(!be&&g.state.next({name:d,type:o.type,values:J(r)}),ys)return(p.isValid||b.isValid)&&(t.mode==="onBlur"?be&&y():be||y()),bs&&g.state.next({name:d,...Qe?{}:Ke});if(!be&&Qe&&g.state.next({...s}),t.resolver){const{errors:wt}=await V([d]);if(w(Le),C){const ps=Dt(s.errors,n,d),vt=Dt(wt,n,ps.name||d);M=vt.error,d=vt.name,ne=te(wt)}}else T([d],!0),M=(await Lt(v,a.disabled,r,x,t.shouldUseNativeValidation))[d],T([d]),w(Le),C&&(M?ne=!1:(p.isValid||b.isValid)&&(ne=await H(n,!0)));C&&(v._f.deps&&re(v._f.deps),G(d,ne,M,Ke))}},Y=(o,l)=>{if(k(s.errors,l)&&o.focus)return o.focus(),1},re=async(o,l={})=>{let d,C;const v=Ne(o);if(t.resolver){const w=await ae(W(o)?o:v);d=te(w),C=o?!v.some(_=>k(w,_)):d}else o?(C=(await Promise.all(v.map(async w=>{const _=k(n,w);return await H(_&&_._f?{[w]:_}:_)}))).every(Boolean),!(!C&&!s.isValid)&&y()):C=d=await H(n);return g.state.next({...!me(o)||(p.isValid||b.isValid)&&d!==s.isValid?{}:{name:o},...t.resolver||!o?{isValid:d}:{},errors:s.errors}),l.shouldFocus&&!C&&Ee(n,Y,o?v:a.mount),C},oe=o=>{const l={...c.mount?r:i};return W(o)?l:me(o)?k(l,o):o.map(d=>k(l,d))},$e=(o,l)=>({invalid:!!k((l||s).errors,o),isDirty:!!k((l||s).dirtyFields,o),error:k((l||s).errors,o),isValidating:!!k(s.validatingFields,o),isTouched:!!k((l||s).touchedFields,o)}),ve=o=>{o&&Ne(o).forEach(l=>K(s.errors,l)),g.state.next({errors:o?s.errors:{}})},mt=(o,l,d)=>{const C=(k(n,o,{_f:{}})._f||{}).ref,v=k(s.errors,o)||{},{ref:w,message:_,type:$,...M}=v;U(s.errors,o,{...M,...l,ref:C}),g.state.next({name:o,errors:s.errors,isValid:!1}),d&&d.shouldFocus&&C&&C.focus&&C.focus()},us=(o,l)=>le(o)?g.state.subscribe({next:d=>"values"in d&&o(N(void 0,l),d)}):N(o,l,!0),ht=o=>g.state.subscribe({next:l=>{Xs(o.name,l.name,o.exact)&&Ys(l,o.formState||p,gs,o.reRenderRoot)&&o.callback({values:{...r},...s,...l,defaultValues:i})}}).unsubscribe,ds=o=>(c.mount=!0,b={...b,...o.formState},ht({...o,formState:b})),qe=(o,l={})=>{for(const d of o?Ne(o):a.mount)a.mount.delete(d),a.array.delete(d),l.keepValue||(K(n,d),K(r,d)),!l.keepError&&K(s.errors,d),!l.keepDirty&&K(s.dirtyFields,d),!l.keepTouched&&K(s.touchedFields,d),!l.keepIsValidating&&K(s.validatingFields,d),!t.shouldUnregister&&!l.keepDefaultValue&&K(i,d);g.state.next({values:J(r)}),g.state.next({...s,...l.keepDirty?{isDirty:X()}:{}}),!l.keepIsValid&&y()},gt=({disabled:o,name:l})=>{(fe(o)&&c.mount||o||a.disabled.has(l))&&(o?a.disabled.add(l):a.disabled.delete(l))},Be=(o,l={})=>{let d=k(n,o);const C=fe(l.disabled)||fe(t.disabled);return U(n,o,{...d||{},_f:{...d&&d._f?d._f:{ref:{name:o}},name:o,mount:!0,...l}}),a.mount.add(o),d?gt({disabled:fe(l.disabled)?l.disabled:t.disabled,name:o}):L(o,!0,l.value),{...C?{disabled:l.disabled||t.disabled}:{},...t.progressive?{required:!!l.required,min:_e(l.min),max:_e(l.max),minLength:_e(l.minLength),maxLength:_e(l.maxLength),pattern:_e(l.pattern)}:{},name:o,onChange:P,onBlur:P,ref:v=>{if(v){Be(o,l),d=k(n,o);const w=W(v.value)&&v.querySelectorAll&&v.querySelectorAll("input,select,textarea")[0]||v,_=Qs(w),$=d._f.refs||[];if(_?$.find(M=>M===w):w===d._f.ref)return;U(n,o,{_f:{...d._f,..._?{refs:[...$.filter(ze),w,...Array.isArray(k(i,o))?[{}]:[]],ref:{type:w.type,name:o}}:{ref:w}}}),L(o,!1,void 0,w)}else d=k(n,o,{}),d._f&&(d._f.mount=!1),(t.shouldUnregister||l.shouldUnregister)&&!(Ms(a.array,o)&&c.action)&&a.unMount.add(o)}}},He=()=>t.shouldFocusError&&Ee(n,Y,a.mount),fs=o=>{fe(o)&&(g.state.next({disabled:o}),Ee(n,(l,d)=>{const C=k(n,d);C&&(l.disabled=C._f.disabled||o,Array.isArray(C._f.refs)&&C._f.refs.forEach(v=>{v.disabled=C._f.disabled||o}))},0,!1))},yt=(o,l)=>async d=>{let C;d&&(d.preventDefault&&d.preventDefault(),d.persist&&d.persist());let v=J(r);if(g.state.next({isSubmitting:!0}),t.resolver){const{errors:w,values:_}=await V();s.errors=w,v=J(_)}else await H(n);if(a.disabled.size)for(const w of a.disabled)K(v,w);if(K(s.errors,"root"),te(s.errors)){g.state.next({errors:{}});try{await o(v,d)}catch(w){C=w}}else l&&await l({...s.errors},d),He(),setTimeout(He);if(g.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:te(s.errors)&&!C,submitCount:s.submitCount+1,errors:s.errors}),C)throw C},ms=(o,l={})=>{k(n,o)&&(W(l.defaultValue)?z(o,J(k(i,o))):(z(o,l.defaultValue),U(i,o,J(l.defaultValue))),l.keepTouched||K(s.touchedFields,o),l.keepDirty||(K(s.dirtyFields,o),s.isDirty=l.defaultValue?X(o,J(k(i,o))):X()),l.keepError||(K(s.errors,o),p.isValid&&y()),g.state.next({...s}))},bt=(o,l={})=>{const d=o?J(o):i,C=J(d),v=te(o),w=v?i:C;if(l.keepDefaultValues||(i=d),!l.keepValues){if(l.keepDirtyValues){const _=new Set([...a.mount,...Object.keys(Ae(i,r))]);for(const $ of Array.from(_))k(s.dirtyFields,$)?U(w,$,k(r,$)):z($,k(w,$))}else{if(ot&&W(o))for(const _ of a.mount){const $=k(n,_);if($&&$._f){const M=Array.isArray($._f.refs)?$._f.refs[0]:$._f.ref;if(Ie(M)){const ne=M.closest("form");if(ne){ne.reset();break}}}}if(l.keepFieldsRef)for(const _ of a.mount)z(_,k(w,_));else n={}}r=t.shouldUnregister?l.keepDefaultValues?J(i):{}:J(w),g.array.next({values:{...w}}),g.state.next({values:{...w}})}a={mount:l.keepDirtyValues?a.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},c.mount=!p.isValid||!!l.keepIsValid||!!l.keepDirtyValues,c.watch=!!t.shouldUnregister,g.state.next({submitCount:l.keepSubmitCount?s.submitCount:0,isDirty:v?!1:l.keepDirty?s.isDirty:!!(l.keepDefaultValues&&!pe(o,i)),isSubmitted:l.keepIsSubmitted?s.isSubmitted:!1,dirtyFields:v?{}:l.keepDirtyValues?l.keepDefaultValues&&r?Ae(i,r):s.dirtyFields:l.keepDefaultValues&&o?Ae(i,o):l.keepDirty?s.dirtyFields:{},touchedFields:l.keepTouched?s.touchedFields:{},errors:l.keepErrors?s.errors:{},isSubmitSuccessful:l.keepIsSubmitSuccessful?s.isSubmitSuccessful:!1,isSubmitting:!1})},pt=(o,l)=>bt(le(o)?o(r):o,l),hs=(o,l={})=>{const d=k(n,o),C=d&&d._f;if(C){const v=C.refs?C.refs[0]:C.ref;v.focus&&(v.focus(),l.shouldSelect&&le(v.select)&&v.select())}},gs=o=>{s={...s,...o}},xt={control:{register:Be,unregister:qe,getFieldState:$e,handleSubmit:yt,setError:mt,_subscribe:ht,_runSchema:V,_focusError:He,_getWatch:N,_getDirty:X,_setValid:y,_setFieldArray:q,_setDisabledField:gt,_setErrors:O,_getFieldArray:F,_reset:bt,_resetDefaultValues:()=>le(t.defaultValues)&&t.defaultValues().then(o=>{pt(o,t.resetOptions),g.state.next({isLoading:!1})}),_removeUnmounted:se,_disableForm:fs,_subjects:g,_proxyFormState:p,get _fields(){return n},get _formValues(){return r},get _state(){return c},set _state(o){c=o},get _defaultValues(){return i},get _names(){return a},set _names(o){a=o},get _formState(){return s},get _options(){return t},set _options(o){t={...t,...o}}},subscribe:ds,trigger:re,register:Be,handleSubmit:yt,watch:us,setValue:z,getValues:oe,reset:pt,resetField:ms,clearErrors:ve,unregister:qe,setError:mt,setFocus:hs,getFieldState:$e};return{...xt,formControl:xt}}function Zt(e={}){const t=h.useRef(void 0),s=h.useRef(void 0),[n,i]=h.useState({isDirty:!1,isValidating:!1,isLoading:le(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:le(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:n},e.defaultValues&&!le(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:c,...a}=rr(e);t.current={...a,formState:n}}const r=t.current.control;return r._options=e,qs(()=>{const c=r._subscribe({formState:r._proxyFormState,callback:()=>i({...r._formState}),reRenderRoot:!0});return i(a=>({...a,isReady:!0})),r._formState.isReady=!0,c},[r]),h.useEffect(()=>r._disableForm(e.disabled),[r,e.disabled]),h.useEffect(()=>{e.mode&&(r._options.mode=e.mode),e.reValidateMode&&(r._options.reValidateMode=e.reValidateMode)},[r,e.mode,e.reValidateMode]),h.useEffect(()=>{e.errors&&(r._setErrors(e.errors),r._focusError())},[r,e.errors]),h.useEffect(()=>{e.shouldUnregister&&r._subjects.state.next({values:r._getWatch()})},[r,e.shouldUnregister]),h.useEffect(()=>{if(r._proxyFormState.isDirty){const c=r._getDirty();c!==n.isDirty&&r._subjects.state.next({isDirty:c})}},[r,n.isDirty]),h.useEffect(()=>{e.values&&!pe(e.values,s.current)?(r._reset(e.values,{keepFieldsRef:!0,...r._options.resetOptions}),s.current=e.values,i(c=>({...c}))):r._resetDefaultValues()},[r,e.values]),h.useEffect(()=>{r._state.mount||(r._setValid(),r._state.mount=!0),r._state.watch&&(r._state.watch=!1,r._subjects.state.next({...r._formState})),r._removeUnmounted()}),t.current.formState=Rs(n,r),t.current}const nr=e=>{const{t}=A.useTranslation(),{showStackNotifications:s,showSuccessNotification:n}=we(),{defaultValues:i,mutationFn:r,formToDto:c,onError:a,onSuccess:f,queryKey:m,onSuccessMessage:p}=e,{control:b,handleSubmit:g,reset:x,setError:S,getValues:y,setValue:T}=Zt({defaultValues:i}),q=h.useCallback(L=>{const j=L==null?void 0:L.errors,G=[];return j&&j.forEach(([V,ae])=>{const H=document.querySelector(`[name="${V}"]`);(H instanceof HTMLInputElement||H instanceof HTMLTextAreaElement||H instanceof HTMLSelectElement)&&(H.focus(),H.classList.add("error"),G.push(t(`_entities:${m}.${V}.${ae}`)))}),G},[t,m]),E=h.useCallback(()=>{document.querySelectorAll("input, textarea, select").forEach(j=>{j.classList.remove("error")})},[]),O=xe.useMutation({mutationFn:r,onError:L=>{console.error(L);const j=L;if(a)a(L);else if(Fe(j)){const G=q(j);s(G.map(V=>({message:V,type:R.error})))}else if(Te(j)){const G=j.message||t("_accessibility:errors.500"),V=t(`_accessibility:errors.${j.status}`);s([{message:V||G,type:R.error}])}},onSuccess:async L=>{he&&await he.invalidateQueries({queryKey:m}),f&&f(L),p&&n({message:p})}});return{control:b,getValues:y,setValue:T,handleSubmit:g,onSubmit:L=>O.mutate(c?c(L):L),reset:x,setError:S,parseFormError:q,releaseFormError:E,isLoading:O.isPending}},es=e=>{const{t}=A.useTranslation(),{onClick:s,hidden:n=!1,disabled:i=!1}=e;return{action:h.useCallback(c=>({id:ye.Delete,hidden:!!c.deletedAt||n,disabled:!!c.deletedAt||i,icon:u.jsx(ie.FontAwesomeIcon,{className:"text-red-500",icon:B.faTrash}),tooltip:t("_pages:common.actions.delete.text"),onClick:()=>s([c==null?void 0:c.id]),onMultipleClick:a=>s(a.map(f=>f.id)),multiple:!0}),[i,n,s,t])}},ts=e=>{const{t}=A.useTranslation(),{onClick:s,hidden:n=!1}=e;return{action:h.useCallback(r=>({id:ye.Restore,hidden:!r.deletedAt||n,disabled:!r.deletedAt,icon:u.jsx(ie.FontAwesomeIcon,{className:"text-red-500",icon:B.faRotateLeft}),tooltip:t("_pages:common.actions.restore.text"),onClick:()=>s([r==null?void 0:r.id]),onMultipleClick:c=>s(c.map(a=>a.id)),multiple:!0}),[n,s,t])}},ir=e=>{const{t}=A.useTranslation(),{onClick:s,hidden:n=!1}=e;return{action:h.useCallback(r=>({id:ye.Edit,hidden:!!r.deletedAt||n,disabled:!!r.deletedAt,icon:u.jsx(ie.FontAwesomeIcon,{className:"primary",icon:B.faPencil}),tooltip:t("_pages:common.actions.edit.text"),onClick:()=>s(r==null?void 0:r.id)}),[n,s,t])}};var ye=(e=>(e.Add="add",e.Edit="edit",e.Delete="delete",e.Restore="restore",e.Refresh="refresh",e.Export="export",e.Import="import",e))(ye||{});const ss=e=>{const{t}=A.useTranslation(),{onClick:s,hidden:n=!1,disabled:i=!1,isLoading:r=!1}=e;return{action:h.useCallback(()=>({id:ye.Export,hidden:n,disabled:i,icon:u.jsx(ie.FontAwesomeIcon,{className:`${r?"rotate":""}`,icon:r?B.faCircleNotch:B.faCloudArrowDown}),tooltip:t("_pages:common.actions.export.text"),onClick:s}),[i,n,r,s,t])}},rs=e=>{const{t}=A.useTranslation(),{onClick:s,hidden:n=!1,disabled:i=!1,isLoading:r=!1}=e;return{action:h.useCallback(()=>({id:ye.Import,hidden:n,disabled:i,icon:u.jsx(ie.FontAwesomeIcon,{className:`${r?"rotate":""}`,icon:r?B.faCircleNotch:B.faCloudUpload}),tooltip:t("_pages:common.actions.import.text"),onClick:s}),[i,n,r,s,t])}},ar=e=>{const{queryKey:t,onSuccess:s,...n}=e,{showStackNotifications:i}=we(),{t:r}=A.useTranslation(),{open:c,onClick:a,close:f,dialogFn:m,isLoading:p}=at({onSuccessMessage:r("_pages:common.actions.delete.successMessage"),onError:g=>{const x=g;if(Fe(x))i(x.errors.map(([S,y])=>({message:r(`_pages:${S}.errors.${y}`),type:R.error})));else if(Te(x)){const S=x.message||r("_accessibility:errors.500"),y=r(`_accessibility:errors.${x.status}`);i([{message:y||S,type:R.error}])}},onSuccess:async g=>{await he.invalidateQueries({queryKey:t}),s&&s(g)},...n}),{action:b}=es({onClick:a});return{onClick:a,title:r("_pages:common.actions.delete.dialog.title"),open:c,isLoading:p,handleSubmit:()=>m.mutate(),handleClose:f,action:b}},ft=()=>{const[e,t]=h.useState(!1);return{open:e,setOpen:t,handleClose:()=>t(!1),handleOpen:()=>t(!0)}},or=e=>{const{t}=A.useTranslation(),{showErrorNotification:s,showStackNotifications:n,showSuccessNotification:i}=we(),{defaultValues:r,getFunction:c,mutationFn:a,formToDto:f,dtoToForm:m,onError:p,onSuccess:b,queryKey:g,onSuccessMessage:x,title:S}=e,[y,T]=h.useState(0),{open:q,handleClose:E,handleOpen:O}=ft(),{control:L,handleSubmit:j,reset:G,setError:V,getValues:ae,setValue:H}=Zt({defaultValues:r}),{data:se,isLoading:X}=xe.useQuery({queryFn:()=>c==null?void 0:c(y),queryKey:[...g,y],enabled:!!c&&!!g&&!!y});h.useEffect(()=>{se&&m&&G({...m(se)})},[se]);const N=h.useCallback(P=>{const Y=P==null?void 0:P.errors,re=[];return Y&&Y.forEach(([oe,$e])=>{const ve=document.querySelector(`[name="${oe}"]`);(ve instanceof HTMLInputElement||ve instanceof HTMLTextAreaElement||ve instanceof HTMLSelectElement)&&(ve.focus(),ve.classList.add("error"),re.push(t(`_entities:${g}.${oe}.${$e}`)))}),re},[t,g]),F=h.useCallback(()=>{document.querySelectorAll("input, textarea, select").forEach(Y=>{Y.classList.remove("error")})},[]),D=h.useCallback(P=>{T(P??0),O()},[O]),I=h.useCallback(()=>{F(),E(),G()},[G,F,E]),z=xe.useMutation({mutationFn:a,onError:P=>{if(console.error(P),p)p(P);else{const Y=P;if(Fe(Y)){const re=N(Y);n(re.map(oe=>({message:oe,type:R.error})))}else if(Te(Y)){const re=Y.message||t("_accessibility:errors.500"),oe=t(`_accessibility:errors.${Y.status}`);s({message:oe||re})}else s({message:t("_accessibility:errors.500")})}},onSuccess:async P=>{await he.invalidateQueries({queryKey:g}),b&&b(P),i({message:x}),I()}});return{open:q,openDialog:D,handleClose:I,control:L,getValues:ae,setValue:H,handleSubmit:j,onSubmit:P=>z.mutate(f?f(P):P),reset:G,setError:V,parseFormError:N,releaseFormError:F,title:S,isLoading:X||z.isPending}},cr=e=>{const{queryKey:t,onSuccess:s,...n}=e,{showStackNotifications:i}=we(),{t:r}=A.useTranslation(),{open:c,onClick:a,close:f,dialogFn:m,isLoading:p}=at({onSuccessMessage:r("_pages:common.actions.restore.successMessage"),onError:g=>{const x=g;if(Fe(x))i(x.errors.map(([S,y])=>({message:r(`_pages:${S}.errors.${y}`),type:R.error})));else if(Te(x)){const S=x.message||r("_accessibility:errors.500"),y=r(`_accessibility:errors.${x.status}`);i([{message:y||S,type:R.error}])}},onSuccess:async g=>{await he.invalidateQueries({queryKey:t}),s&&s(g)},...n}),{action:b}=ts({onClick:a});return{onClick:a,title:r("_pages:common.actions.restore.dialog.title"),open:c,isLoading:p,handleSubmit:()=>m.mutate(),handleClose:f,action:b}};function lr(e){const{t}=A.useTranslation(),{queryKey:s,mutationFn:n,entity:i,fileProcessor:r,onError:c}=e,[a,f]=h.useState(!1),[m,p]=h.useState(null),[b,g]=h.useState(!1),x=xe.useMutation({mutationFn:n,onError:y=>{console.error(y),c==null||c(y)},onSuccess:async()=>{he&&await he.invalidateQueries({queryKey:s})}}),{action:S}=rs({onClick:()=>f(!0)});return{handleSubmit:async()=>{if(!(!m||m.length===0))try{await x.mutateAsync({items:m,override:b}),f(!1),p(null),g(!1)}catch(y){console.error(y)}},isLoading:x.isPending,fileProcessor:r,onFileProcessed:y=>p(y),onOverrideChange:y=>g(y),open:a,title:t("_pages:common.actions.import.dialog.title",{entity:t(`_pages:${i}.title`)}),handleClose:()=>{f(!1),p(null)},action:S}}const ur=e=>{const{showSuccessNotification:t}=we(),{t:s}=A.useTranslation(),{entity:n,mutationFn:i,onError:r,onSuccess:c,onSuccessMessage:a=s("_pages:common.actions.export.successMessage")}=e,f=xe.useMutation({mutationFn:()=>i(),onError:b=>{console.error(b),r&&r(b)},onSuccess:async b=>{const g=JSON.stringify(b,null,2),x=new Blob([g],{type:"application/json"}),S=URL.createObjectURL(x),y=document.createElement("a");y.href=S,y.download=`${n}.json`,y.click(),URL.revokeObjectURL(S),c&&c(b),t({message:a})}}),m=h.useCallback(()=>{f.mutate()},[f]),{action:p}=ss({onClick:m,isLoading:f.isPending});return{action:p}};function ns(e){const[t,s]=h.useState(!1),n=h.useCallback(()=>{const i=window.scrollY>e;s(i)},[e]);return h.useEffect(()=>(window.addEventListener("scroll",n),()=>{window.removeEventListener("scroll",n)}),[n]),t}const dr=()=>{const{t:e}=A.useTranslation(),t=ns(200);return u.jsx(ue,{icon:B.faArrowUp,onClick:()=>ks.scrollTo(0,0),"data-tooltip-id":"tooltip","data-tooltip-content":e("_accessibility:buttons.toTop"),className:`submit primary to-top ${t?"show":"hide"}`})},is=e=>{const{actions:t=[],className:s=""}=e,{t:n}=A.useTranslation(),[i,r]=h.useState(!1);return u.jsxs("div",{className:`actions-dropdown ${s}`,children:[u.jsx(ue,{icon:B.faEllipsisV,onClick:()=>r(!0),className:"actions-dropdown-trigger","data-tooltip-id":"tooltip","data-tooltip-content":n("_accessibility:buttons.openActions")}),u.jsx(A.Dropdown,{open:i,onClose:()=>r(!1),children:u.jsx(et,{showActionTexts:!0,actions:t,className:"flex-col",showTooltips:!1})})]})},fr=h.forwardRef(function(e,t){const{value:s,onChange:n,state:i=A.State.default,name:r="",id:c="",label:a="",disabled:f=!1,required:m=!1,containerClassName:p="",inputClassName:b="",labelClassName:g="",helperText:x="",helperTextClassName:S="",...y}=e;return u.jsxs("div",{className:`relative z-0 w-full mb-5 group ${p}`,children:[u.jsx("textarea",{ref:t,name:r,id:c,className:`text-input text-area ${A.inputStateClassName(i)} ${b} peer`,required:m,value:s,onChange:n,disabled:f,...y}),u.jsxs("label",{htmlFor:r,className:`text-input-label ${A.labelStateClassName(i)} ${g}`,children:[a,m?" *":""]}),!!x&&u.jsx("p",{className:`text-input-helper-text ${A.helperTextStateClassName(i)} ${S}`,children:x})]})}),mr=e=>{const{t}=A.useTranslation(),{children:s,handleSubmit:n,onSubmit:i,isLoading:r=!1,buttonEnd:c=!0,reset:a}=e;return u.jsxs("form",{className:"form-container",onSubmit:n(i),children:[s,u.jsxs("div",{className:`flex gap-2 mt-5 ${c?"justify-end":""}`,children:[u.jsxs(A.Button,{type:"submit",color:"primary",variant:"submit",disabled:r,name:t("_accessibility:buttons.submit"),"aria-label":t("_accessibility:ariaLabels.submit"),children:[r?u.jsx(A.Loading,{color:"stroke-base",loaderClass:"!w-6 mt-1",strokeWidth:"6"}):null,t("_accessibility:buttons.submit")]}),u.jsx(A.Button,{type:"button",variant:"outlined",onClick:()=>a==null?void 0:a(),name:t("_accessibility:buttons.cancel"),"aria-label":t("_accessibility:ariaLabels.cancel"),children:t("_accessibility:buttons.cancel")})]})]})},hr=h.forwardRef(function(e,t){const[s,n]=h.useState(!1);return u.jsx(A.TextInput,{...e,type:s?"text":"password",ref:t,children:u.jsx(ue,{type:"button",tabIndex:-1,className:"absolute right-2 password-icon",onClick:()=>n(!s),icon:s?B.faEyeSlash:B.faEye})})}),Ue=e=>{const{t}=A.useTranslation(),{title:s,children:n,handleClose:i,open:r=!1,containerClassName:c="",className:a="",animationClass:f="appear"}=e,[m,p]=h.useState(window.innerWidth),b=h.useCallback(y=>{y.key==="Escape"&&r&&i()},[r,i]);h.useEffect(()=>(window.addEventListener("keydown",b),()=>{window.removeEventListener("keydown",b)}),[b]);const g=h.useCallback(()=>{p(window.innerWidth)},[]);h.useEffect(()=>(window.addEventListener("resize",g),()=>{window.removeEventListener("resize",g)}),[g]);const x=h.useMemo(()=>vs.css({width:`${m}px`}),[m]),S=h.useCallback(y=>{var T;((T=y==null?void 0:y.currentTarget)==null?void 0:T.getAttribute("name"))===t("_accessibility:buttons.closeDialog")&&i()},[t,i]);return h.useEffect(()=>{const y=T=>{T?document.body.style.overflow="hidden":document.body.style.overflow="auto"};return y(r),()=>{y(r)}},[r]),Vt.createPortal(u.jsx("div",{"aria-label":t("_accessibility:ariaLabels.closeDialog"),"aria-disabled":!r,onClick:S,className:`dialog-backdrop animated ${r?`opened ${f}`:"closed"} ${x} h-screen ${r?"bg-base/20 backdrop-blur-xl":"pointer-events-none"} ${c}`,children:u.jsxs("div",{className:`dialog elevated animated ${r?`opened ${f}`:"closed"} ${a}`,children:[u.jsxs("div",{className:"dialog-header",children:[u.jsx("h3",{className:"text-text text-xl",children:s}),u.jsx(ue,{icon:B.faClose,disabled:!r,"aria-disabled":!r,onClick:i,className:"icon-button text-red-400",name:t("_accessibility:buttons.closeDialog"),"aria-label":t("_accessibility:ariaLabels.closeDialog")})]}),n]})}),document.body)},Re=e=>{const{primaryText:t,cancelText:s,onPrimaryClick:n,onCancel:i,isLoading:r=!1,disabled:c=!1,primaryType:a="submit",containerClassName:f="",primaryClassName:m="",alignEnd:p=!1,primaryName:b,primaryAriaLabel:g,cancelName:x,cancelAriaLabel:S}=e;return u.jsxs("div",{className:`flex gap-2 mt-2 ${p?"justify-end":""} ${f}`,children:[u.jsxs(A.Button,{type:a,color:"primary",variant:"submit",className:m,disabled:c,onClick:a==="button"?n:void 0,name:b,"aria-label":g,children:[r?u.jsx(A.Loading,{color:"stroke-base",loaderClass:"!w-6 mt-1",strokeWidth:"6"}):null,t]}),u.jsx(A.Button,{type:"button",variant:"outlined",disabled:c,onClick:i,name:x,"aria-label":S,children:s})]})},gr=e=>{const{t}=A.useTranslation(),{children:s,handleSubmit:n,onSubmit:i,handleClose:r,isLoading:c=!1,buttonEnd:a=!0,...f}=e;return u.jsx(Ue,{...f,handleClose:r,children:u.jsxs("form",{onSubmit:n(i),children:[u.jsx("div",{className:"form-container",children:s}),u.jsx(Re,{primaryType:"submit",primaryText:t("_accessibility:buttons.submit"),cancelText:t("_accessibility:buttons.cancel"),onCancel:r,isLoading:c,disabled:c,primaryClassName:"!px-6",alignEnd:a,primaryName:t("_accessibility:buttons.submit"),primaryAriaLabel:t("_accessibility:ariaLabels.submit"),cancelName:t("_accessibility:buttons.cancel"),cancelAriaLabel:t("_accessibility:ariaLabels.cancel")})]})})},yr=e=>{const{t}=A.useTranslation(),{children:s,handleSubmit:n,handleClose:i,isLoading:r=!1,...c}=e;return u.jsxs(Ue,{...c,handleClose:i,children:[s,u.jsx(Re,{primaryText:t("_accessibility:buttons.ok"),cancelText:t("_accessibility:buttons.cancel"),onPrimaryClick:n,onCancel:i,isLoading:r,disabled:r,primaryType:"button",containerClassName:"mt-5",primaryName:t("_accessibility:buttons.ok"),primaryAriaLabel:t("_accessibility:ariaLabels.ok"),cancelName:t("_accessibility:buttons.cancel"),cancelAriaLabel:t("_accessibility:ariaLabels.cancel")})]})};function br(e){const{message:t,className:s=""}=e,{t:n}=A.useTranslation();return t?u.jsx("p",{className:`text-red-600 text-sm mt-2 ${s}`,children:t||n("_messages:errors.parseFile",{defaultValue:"Failed to process file"})}):null}function pr(e){const{message:t,className:s=""}=e,{t:n}=A.useTranslation();return u.jsxs("div",{className:`my-4 mx-auto flex items-center gap-3 text-sm text-gray-600 ${s}`,children:[u.jsx(A.Loading,{loaderClass:"w-5 h-5",className:"!w-auto"}),u.jsx("span",{children:t??n("_messages:loading.processingFile",{defaultValue:"Processing file..."})})]})}function xr(e){const{items:t,max:s=5,className:n=""}=e,{t:i}=A.useTranslation();if(!t||t.length===0)return null;const r=t.slice(0,s);return u.jsxs("div",{className:`mt-4 ${n}`,children:[u.jsx("p",{className:"text-sm text-gray-600",children:i("_pages:common.actions.import.previewCount",{count:t.length,defaultValue:`Preview: ${t.length} items`})}),u.jsx("pre",{className:"mt-2 max-h-56 overflow-auto rounded bg-gray-100 p-3 text-xs",children:JSON.stringify(r,null,2)})]})}const wr=e=>{const{t}=A.useTranslation(),[s,n]=h.useState(null),[i,r]=h.useState(null),[c,a]=h.useState(null),[f,m]=h.useState(!1),[p,b]=h.useState(!1),{children:g,handleSubmit:x,handleClose:S,isLoading:y=!1,fileProcessor:T,onFileProcessed:q,onOverrideChange:E,open:O,...L}=e,[j,G]=h.useState(0),V=h.useRef(q),ae=h.useRef(T);h.useEffect(()=>{V.current=q},[q]),h.useEffect(()=>{ae.current=T},[T]);const[H,se]=h.useState(O);H!==O&&(se(O),O||(n(null),r(null),a(null),m(!1),b(!1),G(N=>N+1)));const X=h.useCallback(async(N,F)=>{var D;if(ae.current){m(!0);try{const I=await ae.current(N,{override:F});r(I??[]),a(null),(D=V.current)==null||D.call(V,I??[])}catch(I){console.error(I),r(null);const z=I instanceof Error?I.message:"Failed to parse file";a(z)}m(!1)}},[]);return u.jsxs(Ue,{...L,open:O,handleClose:S,children:[u.jsx(A.FileInput,{onClear:()=>{var N;n(null),r(null),a(null),m(!1),(N=V.current)==null||N.call(V,[])},onChange:N=>{var D,I;const F=(D=N.target.files)==null?void 0:D[0];if(!F){n(null),r(null),a(null),m(!1),(I=V.current)==null||I.call(V,[]);return}n(F),X(F,p)},label:t("_accessibility:labels.file")},j),u.jsxs("label",{className:"mt-3 flex items-center gap-2 text-sm",children:[u.jsx("input",{type:"checkbox",checked:p,onChange:N=>{const F=N.target.checked;b(F),E==null||E(F),s&&X(s,F)}}),u.jsx("span",{children:t("_pages:common.actions.import.override",{defaultValue:"Override existing items"})})]}),u.jsx(br,{message:c??void 0}),f&&u.jsx(pr,{}),!!i&&i.length>0&&u.jsx(xr,{items:i}),g,u.jsx(Re,{primaryText:t("_accessibility:buttons.ok"),cancelText:t("_accessibility:buttons.cancel"),onPrimaryClick:()=>{(!T||!!i&&i.length>0)&&x()},onCancel:S,isLoading:y,primaryType:"button",containerClassName:"mt-5",primaryName:t("_accessibility:buttons.ok"),primaryAriaLabel:t("_accessibility:ariaLabels.ok"),cancelName:t("_accessibility:buttons.cancel"),cancelAriaLabel:t("_accessibility:ariaLabels.cancel")})]})};function vr(e){const{t}=A.useTranslation(),{open:s,onClose:n,menuMap:i,logo:r}=e,{account:c}=nt(),{dynamicItems:a}=Qt(),{linkComponent:f}=je(),m=f,p=h.useMemo(()=>i.filter(y=>{const T=y.auth,q=!!(c!=null&&c.email);return T==null||T&&q||!T&&!q}),[c==null?void 0:c.email,i]),b=h.useCallback(y=>{y.key==="Escape"&&s&&n()},[n,s]);h.useEffect(()=>(document.addEventListener("keydown",b),()=>{document.removeEventListener("keydown",b)}),[b]);const g=h.useCallback((y,T)=>T?y===`${location.pathname}${location.search}`:y===location.pathname,[]),x=h.useCallback(y=>u.jsx("li",{className:`drawer-list-item-child ${g(y.path,!0)?"active":""} animated`,children:y.path?u.jsx(m,{"aria-disabled":!s,to:y.path??"/","aria-label":t(`_accessibility:ariaLabels.${y.path}`),className:"drawer-link",children:y.label}):y.label},y.id),[m,s,t,g]),S=h.useMemo(()=>p.map((y,T)=>{const q=y.page??String(T),E=`drawer-list-item ${g(y.path)?"active":""} animated`;if(y.type==="divider")return u.jsx("li",{className:E,children:u.jsx("hr",{className:"drawer-divider"})},q);const O=y.children??(y.page&&a?a[y.page]:null);return u.jsxs("li",{className:E,children:[u.jsxs(m,{"aria-disabled":!s,to:y.path??"/","aria-label":t(`_accessibility:ariaLabels.${y.path}`),className:"drawer-link",children:[y.icon,t(`_pages:${y.page}.title`)]}),O&&u.jsx("ul",{className:"drawer-children-list",children:O.map(x)})]},q)}),[m,a,g,s,p,x,t]);return u.jsx("div",{"aria-label":t("_accessibility:ariaLabels.closeMenu"),"aria-disabled":!s,className:`${s?"opened":"closed"} drawer-backdrop`,onClick:()=>n(),children:u.jsxs("aside",{className:`${s?"opened":"closed"} drawer animated`,children:[u.jsxs("div",{className:"drawer-header-container",children:[r,u.jsx("h2",{className:"drawer-header poppins",children:t("_pages:home.appName")})]}),u.jsx("ul",{className:"flex flex-col",children:S})]})})}function Cr(e){const{error:t}=e,{t:s}=A.useTranslation();return u.jsxs("div",{className:"flex flex-col items-center justify-center pt-10 gap-5",children:[u.jsx(ie.FontAwesomeIcon,{icon:Cs.faSadTear,className:"text-red-300 text-4xl"}),u.jsx("p",{className:"text-text text-center",children:(t==null?void 0:t.message)??s("_accessibility:errors.unknownError")})]})}const Sr=e=>{const{showBackButton:t,title:s,actions:n}=e,{t:i}=A.useTranslation(),{navigate:r}=je();return u.jsxs("div",{className:"page-header",children:[u.jsxs("div",{className:"page-header-left",children:[t&&u.jsx(ue,{icon:B.faArrowLeft,onClick:()=>r(-1),name:i("_accessibility:buttons.back"),"data-tooltip-id":"tooltip","data-tooltip-content":i("_accessibility:buttons.back")}),u.jsx("h2",{className:"page-header-title",children:s})]}),u.jsxs("div",{children:[u.jsx(et,{className:"max-xs:!hidden",actions:n??[]}),u.jsx(is,{className:"min-xs:hidden",actions:n??[]})]})]})},kr=e=>{const{title:t,children:s,addOptions:n,filterOptions:i,actions:r,queryKey:c,isLoading:a=!1,isAnimated:f=!0,showBackButton:m=!1}=e,{t:p}=A.useTranslation(),{countOfFilters:b}=A.useTableOptions(),g=h.useMemo(()=>{const x=Array.isArray(r)?[...r]:[];if(c){const S={id:ye.Refresh,onClick:()=>he.invalidateQueries({queryKey:c}),icon:u.jsx(ie.FontAwesomeIcon,{icon:B.faRotateLeft}),tooltip:p("_pages:common.actions.refresh.text")};x.unshift(S)}if(n){const S={...n,id:ye.Add,icon:u.jsx(ie.FontAwesomeIcon,{icon:B.faAdd})};x.unshift(S)}if(i){const S={...i,id:"filter",icon:u.jsx(ie.FontAwesomeIcon,{icon:B.faFilter}),children:u.jsx(A.Badge,{className:`${b>0?"show":"hide"} `,count:b})};x.push(S)}return x},[r,n,b,i,c,p]);return u.jsxs("main",{className:"page-main",children:[u.jsx(Sr,{showBackButton:m,actions:g,title:t}),u.jsx("div",{className:`page-main-content ${f?"appear":""}`,children:a?u.jsx(A.Loading,{className:"page-loading"}):s}),n&&u.jsx(ue,{icon:n.icon??B.faAdd,color:n.color??"primary",variant:n.variant??"submit",onClick:()=>{var x;return(x=n.onClick)==null?void 0:x.call(n)},className:`button fab min-xs:!hidden ${n.className??""}`})]})},Ar=e=>{const{t}=A.useTranslation(),{className:s="",itemClassName:n="",loading:i=!1,emptyComponent:r=null,emptyMessage:c=t("_accessibility:messages.empty"),renderComponent:a,data:f=[]}=e;return u.jsx(u.Fragment,{children:f!=null&&f.length?u.jsx("ul",{className:`pretty-grid-main ${s}`,children:f==null?void 0:f.map(m=>u.jsx("li",{className:`pretty-grid-item ${n}`,children:a(m)},m.id))}):u.jsx(u.Fragment,{children:r||u.jsx(ls,{message:c})})})},_r=()=>{const[e,t]=h.useState(Ye());return h.useEffect(()=>{const s=window.matchMedia("(min-width: 768px)"),n=()=>{t(s.matches?Ye():Mt())},i=setInterval(n,1e3);return s.addEventListener("change",n),()=>{clearInterval(i),s.removeEventListener("change",n)}},[]),u.jsx("p",{className:"capitalize max-xs:hidden",children:e})};function Nr(e){const{t}=A.useTranslation(),{openDrawer:s,showClock:n=!0,showSearch:i=!0,menuButtonProps:r}=e,{searchComponent:c}=je(),[a,f]=h.useState(!1),m=h.useCallback(b=>{(Ot()?b.metaKey:b.ctrlKey)&&b.shiftKey&&b.key.toLowerCase()==="f"&&(f(!0),b.preventDefault())},[]);h.useEffect(()=>(window.addEventListener("keydown",m),()=>{window.removeEventListener("keydown",m)}),[m]);const p=c;return u.jsxs(u.Fragment,{children:[location.pathname!=="/"&&!!p&&u.jsx(p,{open:a,onClose:()=>f(!1)}),u.jsxs("header",{id:"header",className:"header",children:[u.jsxs("div",{className:"navbar-left",children:[u.jsx(ue,{...r,type:(r==null?void 0:r.type)??"button",icon:(r==null?void 0:r.icon)??B.faBars,onClick:b=>{var g;(g=r==null?void 0:r.onClick)==null||g.call(r,b),s()},name:(r==null?void 0:r.name)??t("_accessibility:buttons.openMenu"),"aria-label":(r==null?void 0:r["aria-label"])??t("_accessibility:ariaLabels.openMenu"),className:`navbar-menu animated ${(r==null?void 0:r.className)??""}`}),u.jsx("h1",{className:"poppins navbar-title",children:t("_pages:home.appName")})]}),u.jsxs("div",{className:"navbar-right",children:[i&&u.jsx(ue,{icon:B.faSearch,className:"min-md:!hidden",onClick:()=>f(!0)}),n&&u.jsx(_r,{})]})]})]})}function Er(){const{t:e}=A.useTranslation(),{notification:t,removeNotification:s}=we(),[n,i]=h.useState(new Set),[r,c]=h.useState(t);r!==t&&(c(t),i(new Set));const a=h.useCallback(x=>{if(x===void 0){const S=new Set(t.map((y,T)=>T));i(S),window.setTimeout(()=>s(),300)}else i(S=>new Set(S).add(x)),window.setTimeout(()=>s(x),300)},[t,s]),f=h.useCallback(x=>{switch(x){case R.error:return B.faWarning;default:return B.faCircleCheck}},[]),m=h.useCallback(x=>{switch(x){case R.success:return"!text-success";case R.error:return"!text-error";case R.warning:return"!text-warning";default:return"!text-info"}},[]),p=h.useCallback(x=>{switch(x){case R.success:return"bg-bg-success";case R.error:return"bg-bg-error";case R.warning:return"bg-bg-warning";default:return"bg-bg-info"}},[]),b=h.useRef();h.useEffect(()=>{b.current=()=>a()},[a]),h.useEffect(()=>{if(!(t!=null&&t.length))return;let x;const S=window.setTimeout(()=>{x=y=>{var T;return(T=b.current)==null?void 0:T.call(b,y)},window.addEventListener("click",x)},0);return()=>{window.clearTimeout(S),x&&window.removeEventListener("click",x)}},[t==null?void 0:t.length]);const g=h.useCallback(x=>{x.key==="Escape"&&t.length&&a()},[t,a]);return h.useEffect(()=>(window.addEventListener("keydown",g),()=>{window.removeEventListener("keydown",g)}),[g]),Vt.createPortal(u.jsx("div",{className:`notification-portal ${t!=null&&t.length?"w-screen h-screen":""}`,children:t!=null&&t.length?t==null?void 0:t.map(({id:x,type:S,message:y},T)=>u.jsxs("div",{className:`notification ${n.has(T)?"closing":""} ${p(S??R.error)}`,onClick:q=>q.stopPropagation(),children:[u.jsxs("div",{className:"flex gap-3 items-center",children:[u.jsx(ie.FontAwesomeIcon,{icon:f(S??R.error),className:`${m(S??R.error)}`}),u.jsx("p",{className:`whitespace-nowrap ${m(S??R.error)}`,children:y})]}),u.jsx(ue,{type:"button",icon:B.faClose,color:"error",className:"group",onClick:q=>{q.stopPropagation(),a(T)},iconClassName:`${m(S??R.error)} group-hover:!text-red-400 cursor-pointer`,name:e("_accessibility:buttons.closeNotification"),"aria-label":e("_accessibility:ariaLabels.closeNotification")})]},x)):null}),document.body)}function Fr(){return u.jsx("div",{className:"w-screen h-screen flex items-center justify-center overflow-hidden",children:u.jsx(A.Loading,{className:"blur-appear"})})}const as=e=>{const{id:t,active:s,onClick:n,children:i,to:r}=e,{linkComponent:c}=je(),a=c;return u.jsx(a,{to:r??`#${t}`,onClick:()=>n(),className:`button submit tab ${s?"primary":"outlined"}`,children:i})},os=e=>{var f;const{tabs:t=[],defaultTab:s,className:n="",tabsContainerClassName:i=""}=e,[r,c]=h.useState(s??((f=t[0])==null?void 0:f.id)),a=h.useMemo(()=>t.find(m=>m.id===r),[t,r]);return u.jsxs("div",{className:`tabs-layout-main ${n}`,children:[u.jsx("ul",{className:`horizontal tabs tabs-container ${i}`,children:t.map(({id:m,to:p,label:b})=>u.jsx("li",{children:u.jsx(as,{onClick:()=>c(m),id:m,to:p??"",siblings:t.length>1,active:r===m,children:b})},m))}),a==null?void 0:a.content]})},cs=e=>{const{translation:t,onClickNext:s,image:n="",alt:i="",final:r=!1}=e,{setGuestMode:c}=nt(),{t:a}=A.useTranslation();return u.jsxs("div",{className:"big-appear w-md flex flex-col gap-20",children:[u.jsx("img",{src:n,alt:i}),u.jsx("h2",{className:"text-5xl text-center leading-16",children:a(`_pages:onboarding.${t}.title`)}),u.jsx("p",{className:"text-center !text-lg",children:a(`_pages:onboarding.${t}.body`)}),u.jsx("div",{className:"flex gap-5 items-center justify-center",children:r?u.jsxs(u.Fragment,{children:[u.jsx(A.Button,{color:"primary",className:"!px-8",variant:"outlined",onClick:()=>{c(!0),window.location.href="/"},"aria-label":a("_accessibility:ariaLabels.start"),children:a("_accessibility:buttons.startAsGuest")}),u.jsx(A.Button,{color:"primary",variant:"submit",className:"!px-8","aria-label":a("_accessibility:ariaLabels.start"),onClick:()=>window.location.href="/auth/sign-in",children:a("_accessibility:buttons.signIn")})]}):u.jsxs(u.Fragment,{children:[u.jsx(A.Button,{color:"primary",className:"!px-8",variant:"outlined",onClick:()=>window.location.href="/auth/sign-in","aria-label":a("_accessibility:ariaLabels.skip"),children:a("_accessibility:buttons.skip")}),u.jsx(A.Button,{color:"primary",className:"!px-8",variant:"outlined",onClick:()=>s(),"aria-label":a("_accessibility:ariaLabels.next"),children:a("_accessibility:buttons.next")})]})})]})},Tr=e=>{const{steps:t}=e,[s,n]=h.useState(1),i=h.useMemo(()=>t.map((r,c)=>({id:c+1,label:"",content:u.jsx(cs,{translation:r,final:c===t.length-1,onClickNext:()=>n(a=>a+1)})})),[t]);return u.jsx("div",{className:"onboarding-main",children:u.jsx(os,{defaultTab:s,tabs:i})})},ls=e=>{const{message:t,messageProps:s={className:"text-gray-400 text-balance text-center"},action:n,iconProps:i}=e;return u.jsxs("div",{className:"flex flex-col items-center justify-center gap-5 pt-5",children:[i&&u.jsx(ie.FontAwesomeIcon,{...i??{}}),u.jsx("p",{...s??{},children:t}),n&&u.jsx(Ze,{showTooltips:!1,showText:!0,...n})]})};Object.defineProperty(exports,"Button",{enumerable:!0,get:()=>A.Button});exports.APIClient=st;exports.Action=Ze;exports.Actions=et;exports.ActionsDropdown=is;exports.AppIconButton=ue;exports.AuthClient=Pt;exports.AuthProvider=$s;exports.BaseClient=Ns;exports.ConfigProvider=Ls;exports.ConfirmationDialog=yr;exports.Dialog=Ue;exports.DialogActions=Re;exports.Drawer=vr;exports.DrawerMenuContext=it;exports.DrawerMenuProvider=Vs;exports.Empty=ls;exports.Error=Cr;exports.FormContainer=mr;exports.FormDialog=gr;exports.GlobalActions=ye;exports.IManager=_s;exports.IconButton=ue;exports.ImportDialog=wr;exports.ManagerProvider=Ds;exports.Methods=ee;exports.Navbar=Nr;exports.Notification=Er;exports.NotificationEnumType=R;exports.NotificationProvider=js;exports.Onboarding=Tr;exports.Page=kr;exports.ParagraphInput=fr;exports.PasswordInput=hr;exports.PrettyGrid=Ar;exports.SplashScreen=Fr;exports.Step=cs;exports.Tab=as;exports.TabsLayout=os;exports.ToTop=dr;exports.buildQueryUrl=It;exports.enumToKeyValueArray=Es;exports.formatForDatetimeLocal=Fs;exports.fromLocal=rt;exports.getFormattedDateTime=Ye;exports.getShortFormattedDateTime=Mt;exports.isHttpError=Te;exports.isMac=Ot;exports.isValidationError=Fe;exports.makeRequest=ke;exports.mapValidationErrors=Ts;exports.parseQueries=tt;exports.queryClient=he;exports.removeFromLocal=Je;exports.toLocal=Ge;exports.useAuth=nt;exports.useConfig=je;exports.useConfirmationForm=at;exports.useDeleteAction=es;exports.useDeleteDialog=ar;exports.useDialog=ft;exports.useDrawerMenu=Qt;exports.useEditAction=ir;exports.useExportAction=ss;exports.useExportActionMutate=ur;exports.useFormDialog=or;exports.useImportAction=rs;exports.useImportDialog=lr;exports.useManager=qt;exports.useNotification=we;exports.usePostForm=nr;exports.useRestoreAction=ts;exports.useRestoreDialog=cr;exports.useScrollTrigger=ns;exports.useTimeAge=As;Object.keys(A).forEach(e=>{e!=="default"&&!Object.prototype.hasOwnProperty.call(exports,e)&&Object.defineProperty(exports,e,{enumerable:!0,get:()=>A[e]})});
|