@bgscore/react-core 1.0.41 → 1.0.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
- 'use strict';var pe=require('react'),I=require('dayjs'),dt=require('dayjs/plugin/utc'),mt=require('dayjs/plugin/timezone'),yt=require('dayjs/plugin/duration'),gt=require('dayjs/plugin/advancedFormat'),Rt=require('dayjs/plugin/localizedFormat'),bt=require('dayjs/plugin/relativeTime'),ht=require('dayjs/plugin/isSameOrBefore'),Tt=require('dayjs/plugin/isSameOrAfter'),xt=require('dayjs/plugin/weekOfYear'),Dt=require('dayjs/plugin/customParseFormat'),jsxRuntime=require('react/jsx-runtime'),Ke=require('crypto-js/aes'),Fe=require('crypto-js/pbkdf2'),qt=require('crypto-js/enc-utf8'),ce=require('crypto-js/enc-base64'),He=require('crypto-js/lib-typedarrays'),zustand=require('zustand'),shallow=require('zustand/react/shallow'),Yt=require('axios'),yr=require('dexie'),reactDom=require('react-dom');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var pe__default=/*#__PURE__*/_interopDefault(pe);var I__default=/*#__PURE__*/_interopDefault(I);var dt__default=/*#__PURE__*/_interopDefault(dt);var mt__default=/*#__PURE__*/_interopDefault(mt);var yt__default=/*#__PURE__*/_interopDefault(yt);var gt__default=/*#__PURE__*/_interopDefault(gt);var Rt__default=/*#__PURE__*/_interopDefault(Rt);var bt__default=/*#__PURE__*/_interopDefault(bt);var ht__default=/*#__PURE__*/_interopDefault(ht);var Tt__default=/*#__PURE__*/_interopDefault(Tt);var xt__default=/*#__PURE__*/_interopDefault(xt);var Dt__default=/*#__PURE__*/_interopDefault(Dt);var Ke__default=/*#__PURE__*/_interopDefault(Ke);var Fe__default=/*#__PURE__*/_interopDefault(Fe);var qt__default=/*#__PURE__*/_interopDefault(qt);var ce__default=/*#__PURE__*/_interopDefault(ce);var He__default=/*#__PURE__*/_interopDefault(He);var Yt__default=/*#__PURE__*/_interopDefault(Yt);var yr__default=/*#__PURE__*/_interopDefault(yr);I__default.default.extend(dt__default.default);I__default.default.extend(mt__default.default);I__default.default.extend(yt__default.default);I__default.default.extend(gt__default.default);I__default.default.extend(Rt__default.default);I__default.default.extend(bt__default.default);I__default.default.extend(ht__default.default);I__default.default.extend(Tt__default.default);I__default.default.extend(xt__default.default);I__default.default.extend(Dt__default.default);var B=I__default.default;function Yr(){let e=()=>Math.random()*16%16|0;return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>(t==="x"?e():e()&3|8).toString(16))}function Jr(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var Qr=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function Gr(e,t){let r=false;return e&&typeof e=="object"&&Array.isArray(e)&&(typeof t=="number"?e.length>t&&(r=true):r=true),r}function _(e){return !(e==null||typeof e=="string"&&e.trim()===""||Array.isArray(e)&&e.length===0||typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length===0)}var Ue={camelCase:(e="")=>(e=e.split(".").map(t=>(t=t.charAt(0).toUpperCase()+t.slice(1),t)).join(" "),e=e.replace(/([a-z0-9])([A-Z])/g,"$1 $2"),e.charAt(0).toUpperCase()+e.slice(1)),snackCase:(e="")=>{let r=e.replace(/_([a-z])/g,(n,s)=>s.toUpperCase()).replace(/([A-Z])/g," $1");return r=r.charAt(0).toUpperCase()+r.slice(1),r},changeAll:(e="",t=false)=>{let r="";try{e=e?.split(".")[e?.split(".")?.length-1],e=e?.split("[]")[e?.split("[]")?.length-1],r=Ue.snackCase(Ue.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function Xr(e,t){return typeof e=="function"?e(t):e}var L=(e,t,r)=>{if(!e)return r;if(e.hasOwnProperty(t))return e[t];let n=t.replace(/\[(\d+)\]/g,".$1").split("."),s=e;for(let a of n){if(s==null)return r;s=s[a];}return s===void 0?r:s},Zr={desc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let s=L(r,t)?L(r,t):"",a=L(n,t)?L(r,t):"";return s<a?1:-1}else return r<n?1:-1})),asc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let s=L(r,t)?L(r,t):"",a=L(n,t)?L(n,t):"";return s>a?1:-1}else return r>n?1:-1}))},en=(e,t)=>{Array.isArray(e)||(e=[]);let r=[];return r=e.map(n=>Number(t?L(n,t)||0:n||0)),r.reduce((n,s)=>(n||0)+(s||0),0)||0};function tn(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function Ct(e){let t=new WeakSet;return JSON.stringify(e,function(r,n){return n!==null&&typeof n=="object"?t.has(n)?void 0:(t.add(n),Object.keys(n).sort().reduce((s,a)=>(s[a]=n[a],s),{})):n})??""}function Le(e,t){return Ct([t??"undefined",e??"undefined"])}function Ne(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function rn(e,t=0){let r,n=function(...s){clearTimeout(r),r=setTimeout(()=>{e(...s);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var le=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function Re(e,t){let r=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e===t||e==="-"||e===`-${t}`||new RegExp(`^-?\\d+${r}$`).test(e)||new RegExp(`^-?${r}\\d*$`).test(e)}function At(e,t=false,r="."){if(typeof e=="number")return !Number.isNaN(e);if(typeof e=="string"&&e.trim()!==""){let n=e.trim(),s=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${s}\\d+)?|\\${s}\\d+)$`).test(n)||t&&Re(n,r))return true}return false}function $e(e="",t=false,r="."){if(!At(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),s=Number(n);return Number.isNaN(s)?null:s}var wt=new Set(["accessKey","className","contentEditable","contextMenu","dir","draggable","hidden","id","lang","spellCheck","style","tabIndex","title","translate","role","onClick","onFocus","onBlur","onKeyDown","onKeyUp","onMouseEnter","onMouseLeave","onMouseDown","onMouseUp","onTouchStart","onTouchEnd","onChange","onInput","children"]);function nn(e){let t={};for(let r in e)wt.has(r)&&(t[r]=e[r]);return t}function on(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function sn(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(B).sort((a,l)=>a.diff(l)),n=r[0].format("YYYY-MM-DD"),s=r.at(-1).format("YYYY-MM-DD");return [n,s]}function an(e,t){let r=B(e),n=B(t),s=r.month()===n.month(),a=r.year()===n.year();return a&&s?`${r.format("DD")} - ${n.format("DD")} ${r.format("MMM")} ${r.format("YYYY")}`:a?`${r.format("DD MMM")} - ${n.format("DD MMM")} ${r.format("YYYY")}`:`${r.format("DD MMM YYYY")} - ${n.format("DD MMM YYYY")}`}function ln(e,t){if(!e?.trim()||!t?.trim())return "";if(e===t)return "0";let r=B(e,"HH:mm",true),n=B(t,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let s=n.diff(r,"minutes");return s<=0&&(s+=24*60),s.toString()}var cn=(e=[],t="label",r="value",n,s=" | ")=>{if(!Array.isArray(e))return [[],[]];let a=e.map((i,c)=>{if(typeof i!="object"){let u=typeof t=="function"?t(i,c):i,R=typeof r=="function"?r(i,c):i;return {label:u,value:R,index:c,rowData:i}}else {let u=typeof t=="function"?t(i,c):L(i,t,""),R=typeof r=="function"?r(i,c):L(i,r,"");return {label:u,value:typeof R=="boolean"?R:R||"",index:c,rowData:i}}});if(!n)return [[{items:a}],a];let l=Array.isArray(n)?n:[n],o=new Map;for(let i of a){let c=i.rowData,u=l.map(f=>String(typeof c=="object"?L(c,f,"")??"":"")).join(s),R=o.get(u)||[];R.push(i),o.set(u,R);}return [Array.from(o.entries()).map(([i,c])=>({group:i,items:c})),a]};function St(e,t=""){let r=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n],a=t?`${t}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!_(s))continue;Array.isArray(s)?s.forEach(l=>{r.push(`${a}=${encodeURIComponent(l)}`);}):typeof s=="object"&&s!==null?r.push(St(s,a)):r.push(`${a}=${encodeURIComponent(s)}`);}return r.join("&")}function Me(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=Me(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=Me(e[t]));return e}var Be=pe.createContext(void 0);function z(){let e=pe.useContext(Be);return e||{}}var Et=({children:e,value:t})=>{let r={...t};return pe.useEffect(()=>{(async()=>{if(!(typeof window>"u")&&t.localeConfig){let{preset:s,object:a,isLocal:l}=t.localeConfig;if(typeof s=="string")try{await import(`dayjs/locale/${s}`);}catch{console.warn(`Locale "${s}" not found, fallback to default`);}s&&B.locale(s,a??{},l);}})();},[t.localeConfig]),jsxRuntime.jsx(Be.Provider,{value:r,children:e})};function be(e,t){let r=He__default.default.random(16),n=He__default.default.random(16),s=Fe__default.default(t,r,{keySize:256/32,iterations:1e3}),a=Ke__default.default.encrypt(JSON.stringify(e),s,{iv:n}).toString();return {salt:r.toString(ce__default.default),iv:n.toString(ce__default.default),encrypted:a}}function he(e,t){let{salt:r,iv:n,encrypted:s}=e,a=Fe__default.default(t,ce__default.default.parse(r),{keySize:256/32,iterations:1e3}),o=Ke__default.default.decrypt(s,a,{iv:ce__default.default.parse(n)}).toString(qt__default.default);return JSON.parse(o)}function je(e,t){return JSON.stringify(be(e,t))}function Ie(e,t){return he(JSON.parse(e),t)}function G(){let{passphrase:e}=z();return {passphrase:e,encrypt(t,r){return be(t,r||e)},decrypt(t,r){return he(t,r||e)},encryptString(t,r){return je(t,r||e)},decryptString(t,r){return Ie(t,r||e)}}}var _e=()=>{let{encrypt:e,decrypt:t}=G(),r=pe.useCallback((l,o)=>{try{let i=e(o);localStorage.setItem(l,JSON.stringify(i));}catch(i){console.error("Failed to save to storage:",i);}},[e]),n=pe.useCallback(l=>{try{let o=localStorage.getItem(l);return o?t(JSON.parse(o)):null}catch(o){return console.error("Failed to get from storage:",o),null}},[t]),s=l=>{let[o,i]=pe.useState(()=>{try{let c=localStorage.getItem(l);return c?t(JSON.parse(c)):null}catch(c){return console.error("Failed to parse localStorage value",c),null}});return pe.useEffect(()=>{let c=u=>{if(u.key===l)if(u.newValue)try{i(t(JSON.parse(u.newValue)));}catch(R){console.error("Decrypt error from storage event",R);}else i(null);};return window.addEventListener("storage",c),()=>window.removeEventListener("storage",c)},[l,t]),o},a=pe.useCallback(l=>{l?localStorage.removeItem(l):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:s}};function Nt(e,t){for(let r in t){let n=e[r],s=t[r];if(r==="response"){let a=JSON.stringify(n),l=JSON.stringify(s);if(a!==l)return false}else if(n!==s)return false}return true}var te={loading:false,response:void 0,isCancel:false},re=zustand.create((e,t)=>({states:{},updateState:(r,n)=>{let s=t().states[r]??te,a={...s,...n};Nt(s,a)||e(l=>({states:{...l.states,[r]:a}}));}}));var xe=new Map,ze=(e,t)=>{xe.set(e,t);},Ve=e=>{xe.delete(e);},We=e=>xe.get(e);function Bt(...e){let[t,r,n]=e,s=t.__isVoid,a=t.__path||t.name,l=s?void 0:r,o=s?r:n,i=o?.storeName||`${a}`,c=o?.mergeStrategy??"replace",[u,R,f,C]=re(shallow.useShallow(w=>{let h=w.states[i]??te;return [h.loading,h.isCancel,h.response,w.updateState]})),{storageKey:P,cache:x,clearPreviousData:M,refetchOnWindowFocus:H}=z(),F=_e(),E=pe.useRef(void 0),K=pe.useRef(null),{cacheName:q,cacheKey:U,timeout:X,timeoutUnit:ae,persistence:ie,cacheEnabled:Z}=pe.useMemo(()=>{let w=P?F.get(P):void 0,h=typeof o?.cache=="object"?o?.cache?.cacheName??a:a,T=Le({...l,session:w},typeof o?.cache=="object"?o?.cache?.cacheKey:void 0),g=false;typeof x?.enabled=="boolean"&&(g=x.enabled);let v=false;typeof x?.persistence=="boolean"&&(v=x?.persistence),typeof o?.cache=="object"&&typeof o?.cache?.persistence=="boolean"&&(v=o?.cache?.persistence??false);let S=60*5,N="s";return _(x?.timeout)&&(typeof x?.timeout=="number"?(S=x.timeout,N="s"):typeof x?.timeout=="object"&&(S=x?.timeout.value,N=x?.timeout.unit)),_(o?.cache)&&(typeof o?.cache!="boolean"?(typeof o?.cache?.enabled=="boolean"?g=o.cache.enabled:g=true,typeof o?.cache?.timeout=="number"?(S=o.cache.timeout,N="s"):typeof o?.cache?.timeout=="object"&&(S=o.cache.timeout.value,N=o.cache.timeout.unit)):g=o.cache),{cacheName:h,cacheKey:T,timeout:S,timeoutUnit:N,persistence:v,cacheEnabled:g}},[o?.cache,l,P,x,a]);pe.useEffect(()=>{let w=JSON.stringify(_(E.current)?E.current:""),h=JSON.stringify(_(l)?l:""),T=E.current===void 0;(w!==h||T)&&!o?.hold&&((o?.clearPreviousData??M)&&C(i,{response:null}),A(),E.current=l),o?.onChange&&o?.onChange(l,d);},[l,o?.clearPreviousData,M,o?.hold,...o?.trigger||[]]),pe.useEffect(()=>{let w=async()=>{!ie&&q&&U&&(await caches.open(q)).delete(U);};return window.addEventListener("beforeunload",w),()=>{window.removeEventListener("beforeunload",w),K.current?.abort();}},[ie,q,U,i,K]);let A=pe.useCallback(async w=>{let h=l;if(o?.hold&&o?.logging&&console.log("Hold active"),o?.beforeRequest&&(h=o?.beforeRequest(l)),Z&&!w&&!R){o?.onBeforeRequest&&o?.onBeforeRequest(l);let T=await caches.open(q),v=await(await T.match(U))?.json();if(v){let{data:S,expired:N}=v;if(B().isAfter(N))await T.delete(U);else {o?.afterResponse&&S?.data&&(S.data=o?.afterResponse(S.data,h)),o?.logging&&console.log("After request: Using Cache",S),S?.status&&o?.onSuccess?.(S,h),o?.onAfterResponse?.(S,h),C(i,{loading:false,response:S});return}}}if(typeof t=="function"){K.current?.abort();let T=new AbortController;K.current=T,C(i,{loading:true}),o?.logging&&console.log("Before request",l),o?.onBeforeRequest&&o?.onBeforeRequest(l);let g=s?await t(void 0,{...o,signal:T.signal}):await t(h,void 0,{...o,signal:T.signal});if(g.__rawData=g.data,c==="append"&&_(f.__rawData)&&_(g?.data)){if(Array.isArray(f.__rawData)&&Array.isArray(g?.data)){let v=[...f?.__rawData??[],...g.data??[]];g.data=v,g.__rawData=v;}else if(typeof f.__rawData=="object"&&typeof g.data=="object"){let v={...f.__rawData,...g.data};g.data=v,g.__rawData=v;}}if(o?.afterResponse&&g?.data&&(g.data=o?.afterResponse(g.data,h)),o?.logging&&console.log("After request",g),g.status&&o?.onSuccess?.(g,h),g.status||o?.onError?.(g,h),o?.onAfterResponse?.(g,h),C(i,{loading:false,response:g,isCancel:false}),Z&&g.status){let v=B().add(X,ae).toISOString(),S={data:g,expired:v},N=await caches.open(q),W=new Response(JSON.stringify(S));await N.put(U,W);}}},[l,t,o,R,q,U,X,ae,Z,f]);pe.useEffect(()=>{if(o?.refreshInterval){let w=typeof o.refreshInterval=="number"?o.refreshInterval:o.refreshInterval.value,h=typeof o.refreshInterval=="number"?"s":o.refreshInterval.unit,T=setInterval(()=>{A();},B.duration(w,h).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[o?.refreshInterval,A]);let y=pe.useRef(null),{enabledRefetch:b,timeoutRefetch:p,timeoutUnitRefetch:D}=pe.useMemo(()=>{let w=o?.refetchOnWindowFocus?.enabled??H?.enabled??false,h=o?.refetchOnWindowFocus?.timeout??H?.timeout,T=typeof h=="number"?h:h?.value??60*5,g=typeof h=="object"?h.unit:"s";return {enabledRefetch:w,timeoutRefetch:T,timeoutUnitRefetch:g}},[o?.refetchOnWindowFocus,H]);pe.useEffect(()=>{if(!b||o?.hold)return;let w=B.duration(p,D).asMilliseconds(),h=()=>{let g=Date.now(),v=y.current;v!==null&&g-v>=w&&A(),y.current=null;},T=()=>{y.current=Date.now();};return window.addEventListener("focus",h),window.addEventListener("blur",T),()=>{window.removeEventListener("focus",h),window.removeEventListener("blur",T);}},[b,p,D,A,o?.hold]);let m=pe.useCallback(()=>{K.current?.abort(),K.current=null,C(i,{loading:false,isCancel:true});},[i,K]),O=pe.useCallback(()=>{C(i,{loading:false,response:null});},[i]),d=pe.useMemo(()=>({...f,loading:u,refresh:A,abort:m,clear:O,response:f,isCancel:R,clone:(w,h)=>Bt(t,w,{storeName:`${a}-clone`,...h})}),[f,u,A,m,O,R,t]);return pe.useEffect(()=>(ze(i,d),()=>{Ve(i);}),[d,i]),[f?.data,d]}async function Fn(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var Ht=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(Ht||{}),Kt=(A=>(A.number="number",A.currency="currency",A.percent="percent",A.date="date",A.dateTime="dateTime",A.month="month",A.year="year",A.time="time",A.timestamp="timestamp",A.string="string",A.textarea="textarea",A.code="code",A.password="password",A.boolean="boolean",A.toggle="toggle",A.email="email",A.phone="phone",A.url="url",A.json="json",A.file="file",A.image="image",A.array="array",A.object="object",A.enum="enum",A.user="user",A.department="department",A.status="status",A))(Kt||{});var Wn=()=>{let{format:e}=z();return (t,r,n)=>{try{return r==="number"?It(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(s=>s===r)?_t(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?Ft(t,n):r==="string"?jt(t,n):t?.toString()}catch{return}}};function Ft(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",s=t?.falseLabel??"No";return r?n:s}function jt(e,t){if(!_(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=Ne(r);break;case "uppercase":r=r.toUpperCase();break;case "lowercase":r=r.toLowerCase();break}return t?.ellipsis&&r.length>t.ellipsis&&(r=r.slice(0,t.ellipsis)+"..."),r}function It(e,{thouSep:t,decSep:r,decDigits:n,method:s,dirty:a}){if(a){let R=String(e??"").trim().trim();if(Re(R,r))return R}if(e==null||isNaN(Number(e)))return "";let l=typeof e=="string"?parseFloat(e):e;if(s)if(typeof n=="number"){let u=Math.pow(10,n);l=Math[s](l*u)/u;}else l=Math[s](l);else if(typeof n=="number"){let u=Math.pow(10,n);l=Math.trunc(l*u)/u;}let o=0;if(n==="auto"){let u=l.toString(),R=u.indexOf(".");R!==-1&&(o=u.length-R-1);}let i={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?o:n||0,maximumFractionDigits:n==="auto"?o:n||0,minimumIntegerDigits:1};return l.toLocaleString("en-US",i).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,t)}function _t(e,{display:t,value:r}){if(!_(e))return e;let n=B(e,r);return n.isValid()?n.format(t):e}function Qn(e,{interval:t,lead:r}){let n=pe.useRef(null);pe.useEffect(()=>{n.current=e;},[e]),pe.useEffect(()=>{let s=()=>n.current();if(r&&s(),t!==null){let a=setInterval(s,t);return ()=>clearInterval(a)}},[t]);}function Zn(e,t,r){let[n,s]=pe.useState(false),a=(c,u)=>typeof e=="string"&&c===e||typeof e=="number"&&u===e,l=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),o=c=>{let{key:u,keyCode:R}=c,f=c.ctrlKey,C=c.altKey,P=c.shiftKey;if(!l(document.activeElement))if(t)if(typeof t=="string")a(u,R)&&(t==="ctrl"&&f||t==="alt"&&C||t==="shift"&&P)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));else {let x=t.every(M=>M==="ctrl"?f:M==="alt"?C:M==="shift"?P:false);a(u,R)&&x&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));}else a(u,R)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));},i=({key:c,keyCode:u})=>{a(c,u)&&s(false);};return pe.useEffect(()=>(window.addEventListener("keydown",o),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",o),window.removeEventListener("keyup",i);}),[]),n}var io=({url:e,token:t,beforeRequest:r,onCallback:n,headers:s,onUnauthorized:a,handleToast:l,handleAuthorization:o,disabledToastWhenCancel:i,withCredentials:c,encryptRequest:u,encryptResponse:R,passphrase:f})=>{let{encrypt:C,decrypt:P,passphrase:x}=G(),M=Yt__default.default.create({baseURL:`${e}`,headers:{"Content-Type":"application/json",...s}}),H=(y,b,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,d=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:R)&&d){let S=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?x:p.passphrase:f;try{d=P(d,S);}catch{try{d=P(d,x);}catch{}}}let T={...n({...y,data:d,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:i,v=o?o(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&l&&(!m||!g)&&l(T),!v&&(!m||!p?.disabledHandleUnauthorized)){let S=p?.onUnauthorized||a;S&&S(T);}if(typeof b=="function")b(T);else return T},F=(y,b=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:c}).then(b).catch(p=>b(p.response,p)),E=(y,b,p,D,m)=>{let d={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},w={...d.headers};if(d.token&&(typeof d.token=="boolean"?t&&(w.Authorization=`Bearer ${t}`):d.token&&(w.Authorization=`Bearer ${d.token}`)),r&&(p=r(p)),(typeof d?.encryptRequest=="boolean"?d?.encryptRequest:u)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:f;p=C(p,T);}return F({url:b,method:y,data:p,headers:w,responseType:d.responseType,signal:d.signal,withCredentials:d.withCredentials,onUploadProgress:T=>{d?.onUploadProgress&&d?.onUploadProgress(T);}},(T,g)=>H(T,D,d,g))};return {client:F,post:(y,b,p,D)=>E("POST",`${y}`,b,p,D),put:(y,b,p,D)=>E("PUT",`${y}`,b,p,D),patch:(y,b,p,D)=>E("PATCH",`${y}`,b,p,D),delete:(y,b,p)=>E("DELETE",`${y}`,null,b,p),get:(y,b,p)=>E("GET",`${y}`,null,b,p),upload:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,b,p,D,m)=>{try{let d={...{token:!0,responseType:"json",infoError:!0},...m},w={"Content-Type":"application/json",...s,...d.headers};if(d.token){let k=typeof d.token=="boolean"?t:d.token;k&&(w.Authorization=`Bearer ${k}`);}let h=p;if(r&&(h=r(h)),(typeof d.encryptRequest=="boolean"?d.encryptRequest:u)&&h){let k=d.passphrase?typeof d.passphrase=="boolean"&&d.passphrase?x:d.passphrase:f;h=C(h,k);}let g=await fetch(`${e}${b}`,{method:y,headers:w,credentials:d.withCredentials?"include":"same-origin",signal:d.signal,body:JSON.stringify(h)}),v=g?.status,S=v===401;if(!g.ok){let k=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",$=await g.clone().text();if($)if(V.includes("application/json"))try{let Q=JSON.parse($);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:R)&&p){let ge=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:f;try{p=P(Q,ge);}catch{try{p=P(Q,x);}catch{}}}k=Q?.message||k;}catch{k=$;}else k=$;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:i,j={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0};m?.infoError&&l&&!J&&l(j),D(j);return}let N=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:k,value:J}=await N.read();ee=k,Y+=W.decode(J,{stream:!0});let j=Y.split(`
1
+ 'use strict';var le=require('react'),I=require('dayjs'),Xe=require('dayjs/plugin/utc'),Ze=require('dayjs/plugin/timezone'),et=require('dayjs/plugin/duration'),tt=require('dayjs/plugin/advancedFormat'),rt=require('dayjs/plugin/localizedFormat'),nt=require('dayjs/plugin/relativeTime'),ot=require('dayjs/plugin/isSameOrBefore'),st=require('dayjs/plugin/isSameOrAfter'),at=require('dayjs/plugin/weekOfYear'),it=require('dayjs/plugin/customParseFormat'),jsxRuntime=require('react/jsx-runtime'),Ee=require('crypto-js/aes'),Ne=require('crypto-js/pbkdf2'),Rt=require('crypto-js/enc-utf8'),ie=require('crypto-js/enc-base64'),ke=require('crypto-js/lib-typedarrays'),zustand=require('zustand'),shallow=require('zustand/react/shallow'),Et=require('axios'),er=require('dexie');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var le__default=/*#__PURE__*/_interopDefault(le);var I__default=/*#__PURE__*/_interopDefault(I);var Xe__default=/*#__PURE__*/_interopDefault(Xe);var Ze__default=/*#__PURE__*/_interopDefault(Ze);var et__default=/*#__PURE__*/_interopDefault(et);var tt__default=/*#__PURE__*/_interopDefault(tt);var rt__default=/*#__PURE__*/_interopDefault(rt);var nt__default=/*#__PURE__*/_interopDefault(nt);var ot__default=/*#__PURE__*/_interopDefault(ot);var st__default=/*#__PURE__*/_interopDefault(st);var at__default=/*#__PURE__*/_interopDefault(at);var it__default=/*#__PURE__*/_interopDefault(it);var Ee__default=/*#__PURE__*/_interopDefault(Ee);var Ne__default=/*#__PURE__*/_interopDefault(Ne);var Rt__default=/*#__PURE__*/_interopDefault(Rt);var ie__default=/*#__PURE__*/_interopDefault(ie);var ke__default=/*#__PURE__*/_interopDefault(ke);var Et__default=/*#__PURE__*/_interopDefault(Et);var er__default=/*#__PURE__*/_interopDefault(er);I__default.default.extend(Xe__default.default);I__default.default.extend(Ze__default.default);I__default.default.extend(et__default.default);I__default.default.extend(tt__default.default);I__default.default.extend(rt__default.default);I__default.default.extend(nt__default.default);I__default.default.extend(ot__default.default);I__default.default.extend(st__default.default);I__default.default.extend(at__default.default);I__default.default.extend(it__default.default);var H=I__default.default;function xr(){let t=()=>Math.random()*16%16|0;return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>(e==="x"?t():t()&3|8).toString(16))}function Cr(t,e){try{return JSON.stringify(t)!==JSON.stringify(e)}catch{return false}}var Ar=t=>(Object.keys(t).forEach(e=>{t[e]===void 0&&(t[e]=null);}),t);function Sr(t,e){let r=false;return t&&typeof t=="object"&&Array.isArray(t)&&(typeof e=="number"?t.length>e&&(r=true):r=true),r}function z(t){return !(t==null||typeof t=="string"&&t.trim()===""||Array.isArray(t)&&t.length===0||typeof t=="object"&&t!==null&&!Array.isArray(t)&&Object.keys(t).length===0)}var we={camelCase:(t="")=>(t=t.split(".").map(e=>(e=e.charAt(0).toUpperCase()+e.slice(1),e)).join(" "),t=t.replace(/([a-z0-9])([A-Z])/g,"$1 $2"),t.charAt(0).toUpperCase()+t.slice(1)),snackCase:(t="")=>{let r=t.replace(/_([a-z])/g,(n,s)=>s.toUpperCase()).replace(/([A-Z])/g," $1");return r=r.charAt(0).toUpperCase()+r.slice(1),r},changeAll:(t="",e=false)=>{let r="";try{t=t?.split(".")[t?.split(".")?.length-1],t=t?.split("[]")[t?.split("[]")?.length-1],r=we.snackCase(we.camelCase(t)),e&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function wr(t,e){return typeof t=="function"?t(e):t}var N=(t,e,r)=>{if(!t)return r;if(t.hasOwnProperty(e))return t[e];let n=e.replace(/\[(\d+)\]/g,".$1").split("."),s=t;for(let a of n){if(s==null)return r;s=s[a];}return s===void 0?r:s},Or={desc:(t,e)=>(t||(t=[]),t.sort((r,n)=>{if(e){let s=N(r,e)?N(r,e):"",a=N(n,e)?N(r,e):"";return s<a?1:-1}else return r<n?1:-1})),asc:(t,e)=>(t||(t=[]),t.sort((r,n)=>{if(e){let s=N(r,e)?N(r,e):"",a=N(n,e)?N(n,e):"";return s>a?1:-1}else return r>n?1:-1}))},Pr=(t,e)=>{Array.isArray(t)||(t=[]);let r=[];return r=t.map(n=>Number(e?N(n,e)||0:n||0)),r.reduce((n,s)=>(n||0)+(s||0),0)||0};function qr(t){try{return t&&JSON.parse(JSON.stringify(t))}catch{return t}}function lt(t){let e=new WeakSet;return JSON.stringify(t,function(r,n){return n!==null&&typeof n=="object"?e.has(n)?void 0:(e.add(n),Object.keys(n).sort().reduce((s,a)=>(s[a]=n[a],s),{})):n})??""}function Pe(t,e){return lt([e??"undefined",t??"undefined"])}function qe(t=""){return typeof t!="string"&&(t=""),t.replace(/\b\w/g,e=>e.toUpperCase())}function vr(t,e=0){let r,n=function(...s){clearTimeout(r),r=setTimeout(()=>{t(...s);},e*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var ae=t=>{let e=t.match(/^data:\s*(.*)/s);if(e)try{return JSON.parse(e[1])}catch{return null}return null};function fe(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return t===e||t==="-"||t===`-${e}`||new RegExp(`^-?\\d+${r}$`).test(t)||new RegExp(`^-?${r}\\d*$`).test(t)}function ct(t,e=false,r="."){if(typeof t=="number")return !Number.isNaN(t);if(typeof t=="string"&&t.trim()!==""){let n=t.trim(),s=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${s}\\d+)?|\\${s}\\d+)$`).test(n)||e&&fe(n,r))return true}return false}function ve(t="",e=false,r="."){if(!ct(t,!e,r))return null;let n=r==="."?t.trim():t.trim().replace(r,"."),s=Number(n);return Number.isNaN(s)?null:s}var pt=new Set(["accessKey","className","contentEditable","contextMenu","dir","draggable","hidden","id","lang","spellCheck","style","tabIndex","title","translate","role","onClick","onFocus","onBlur","onKeyDown","onKeyUp","onMouseEnter","onMouseLeave","onMouseDown","onMouseUp","onTouchStart","onTouchEnd","onChange","onInput","children"]);function Ur(t){let e={};for(let r in t)pt.has(r)&&(e[r]=t[r]);return e}function kr(t,e=2){return t?t.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,e).join(""):""}function Er(t=[]){let e=t.filter(Boolean);if(e.length===0)return ["",""];let r=e.map(H).sort((a,l)=>a.diff(l)),n=r[0].format("YYYY-MM-DD"),s=r.at(-1).format("YYYY-MM-DD");return [n,s]}function Nr(t,e){let r=H(t),n=H(e),s=r.month()===n.month(),a=r.year()===n.year();return a&&s?`${r.format("DD")} - ${n.format("DD")} ${r.format("MMM")} ${r.format("YYYY")}`:a?`${r.format("DD MMM")} - ${n.format("DD MMM")} ${r.format("YYYY")}`:`${r.format("DD MMM YYYY")} - ${n.format("DD MMM YYYY")}`}function Mr(t,e){if(!t?.trim()||!e?.trim())return "";if(t===e)return "0";let r=H(t,"HH:mm",true),n=H(e,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let s=n.diff(r,"minutes");return s<=0&&(s+=24*60),s.toString()}var $r=(t=[],e="label",r="value",n,s=" | ")=>{if(!Array.isArray(t))return [[],[]];let a=t.map((i,c)=>{if(typeof i!="object"){let u=typeof e=="function"?e(i,c):i,h=typeof r=="function"?r(i,c):i;return {label:u,value:h,index:c,rowData:i}}else {let u=typeof e=="function"?e(i,c):N(i,e,""),h=typeof r=="function"?r(i,c):N(i,r,"");return {label:u,value:typeof h=="boolean"?h:h||"",index:c,rowData:i}}});if(!n)return [[{items:a}],a];let l=Array.isArray(n)?n:[n],o=new Map;for(let i of a){let c=i.rowData,u=l.map(d=>String(typeof c=="object"?N(c,d,"")??"":"")).join(s),h=o.get(u)||[];h.push(i),o.set(u,h);}return [Array.from(o.entries()).map(([i,c])=>({group:i,items:c})),a]};function ut(t,e=""){let r=[];for(let n in t)if(t.hasOwnProperty(n)){let s=t[n],a=e?`${e}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!z(s))continue;Array.isArray(s)?s.forEach(l=>{r.push(`${a}=${encodeURIComponent(l)}`);}):typeof s=="object"&&s!==null?r.push(ut(s,a)):r.push(`${a}=${encodeURIComponent(s)}`);}return r.join("&")}function Oe(t){if(t==="null")return null;if(Array.isArray(t))for(let e=0;e<t.length;e++)t[e]=Oe(t[e]);else if(t&&typeof t=="object")for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=Oe(t[e]));return t}var Ue=le.createContext(void 0);function _(){let t=le.useContext(Ue);return t||{}}var yt=({children:t,value:e})=>{let r={...e};return le.useEffect(()=>{(async()=>{if(!(typeof window>"u")&&e.localeConfig){let{preset:s,object:a,isLocal:l}=e.localeConfig;if(typeof s=="string")try{await import(`dayjs/locale/${s}`);}catch{console.warn(`Locale "${s}" not found, fallback to default`);}s&&H.locale(s,a??{},l);}})();},[e.localeConfig]),jsxRuntime.jsx(Ue.Provider,{value:r,children:t})};function de(t,e){let r=ke__default.default.random(16),n=ke__default.default.random(16),s=Ne__default.default(e,r,{keySize:256/32,iterations:1e3}),a=Ee__default.default.encrypt(JSON.stringify(t),s,{iv:n}).toString();return {salt:r.toString(ie__default.default),iv:n.toString(ie__default.default),encrypted:a}}function me(t,e){let{salt:r,iv:n,encrypted:s}=t,a=Ne__default.default(e,ie__default.default.parse(r),{keySize:256/32,iterations:1e3}),o=Ee__default.default.decrypt(s,a,{iv:ie__default.default.parse(n)}).toString(Rt__default.default);return JSON.parse(o)}function Me(t,e){return JSON.stringify(de(t,e))}function $e(t,e){return me(JSON.parse(t),e)}function G(){let{passphrase:t}=_();return {passphrase:t,encrypt(e,r){return de(e,r||t)},decrypt(e,r){return me(e,r||t)},encryptString(e,r){return Me(e,r||t)},decryptString(e,r){return $e(e,r||t)}}}var Le=()=>{let{encrypt:t,decrypt:e}=G(),r=le.useCallback((l,o)=>{try{let i=t(o);localStorage.setItem(l,JSON.stringify(i));}catch(i){console.error("Failed to save to storage:",i);}},[t]),n=le.useCallback(l=>{try{let o=localStorage.getItem(l);return o?e(JSON.parse(o)):null}catch(o){return console.error("Failed to get from storage:",o),null}},[e]),s=l=>{let[o,i]=le.useState(()=>{try{let c=localStorage.getItem(l);return c?e(JSON.parse(c)):null}catch(c){return console.error("Failed to parse localStorage value",c),null}});return le.useEffect(()=>{let c=u=>{if(u.key===l)if(u.newValue)try{i(e(JSON.parse(u.newValue)));}catch(h){console.error("Decrypt error from storage event",h);}else i(null);};return window.addEventListener("storage",c),()=>window.removeEventListener("storage",c)},[l,e]),o},a=le.useCallback(l=>{l?localStorage.removeItem(l):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:s}};function Dt(t,e){for(let r in e){let n=t[r],s=e[r];if(r==="response"){let a=JSON.stringify(n),l=JSON.stringify(s);if(a!==l)return false}else if(n!==s)return false}return true}var te={loading:false,response:void 0,isCancel:false},re=zustand.create((t,e)=>({states:{},updateState:(r,n)=>{let s=e().states[r]??te,a={...s,...n};Dt(s,a)||t(l=>({states:{...l.states,[r]:a}}));}}));var ge=new Map,He=(t,e)=>{ge.set(t,e);},Fe=t=>{ge.delete(t);},Ke=t=>ge.get(t);function Ct(...t){let[e,r,n]=t,s=e.__isVoid,a=e.__path||e.name,l=s?void 0:r,o=s?r:n,i=o?.storeName||`${a}`,c=o?.mergeStrategy??"replace",[u,h,d,C]=re(shallow.useShallow(S=>{let b=S.states[i]??te;return [b.loading,b.isCancel,b.response,S.updateState]})),{storageKey:q,cache:x,clearPreviousData:M,refetchOnWindowFocus:F}=_(),B=Le(),U=le.useRef(void 0),K=le.useRef(null),{cacheName:k,cacheKey:E,timeout:X,timeoutUnit:oe,persistence:se,cacheEnabled:Z}=le.useMemo(()=>{let S=q?B.get(q):void 0,b=typeof o?.cache=="object"?o?.cache?.cacheName??a:a,T=Pe({...l,session:S},typeof o?.cache=="object"?o?.cache?.cacheKey:void 0),g=false;typeof x?.enabled=="boolean"&&(g=x.enabled);let P=false;typeof x?.persistence=="boolean"&&(P=x?.persistence),typeof o?.cache=="object"&&typeof o?.cache?.persistence=="boolean"&&(P=o?.cache?.persistence??false);let w=60*5,$="s";return z(x?.timeout)&&(typeof x?.timeout=="number"?(w=x.timeout,$="s"):typeof x?.timeout=="object"&&(w=x?.timeout.value,$=x?.timeout.unit)),z(o?.cache)&&(typeof o?.cache!="boolean"?(typeof o?.cache?.enabled=="boolean"?g=o.cache.enabled:g=true,typeof o?.cache?.timeout=="number"?(w=o.cache.timeout,$="s"):typeof o?.cache?.timeout=="object"&&(w=o.cache.timeout.value,$=o.cache.timeout.unit)):g=o.cache),{cacheName:b,cacheKey:T,timeout:w,timeoutUnit:$,persistence:P,cacheEnabled:g}},[o?.cache,l,q,x,a]);le.useEffect(()=>{let S=JSON.stringify(z(U.current)?U.current:""),b=JSON.stringify(z(l)?l:""),T=U.current===void 0;(S!==b||T)&&!o?.hold&&((o?.clearPreviousData??M)&&C(i,{response:null}),A(),U.current=l),o?.onChange&&o?.onChange(l,f);},[l,o?.clearPreviousData,M,o?.hold,...o?.trigger||[]]),le.useEffect(()=>{let S=async()=>{!se&&k&&E&&(await caches.open(k)).delete(E);};return window.addEventListener("beforeunload",S),()=>{window.removeEventListener("beforeunload",S),K.current?.abort();}},[se,k,E,i,K]);let A=le.useCallback(async S=>{let b=l;if(o?.hold&&o?.logging&&console.log("Hold active"),o?.beforeRequest&&(b=o?.beforeRequest(l)),Z&&!S&&!h){o?.onBeforeRequest&&o?.onBeforeRequest(l);let T=await caches.open(k),P=await(await T.match(E))?.json();if(P){let{data:w,expired:$}=P;if(H().isAfter($))await T.delete(E);else {o?.afterResponse&&w?.data&&(w.data=o?.afterResponse(w.data,b)),o?.logging&&console.log("After request: Using Cache",w),w?.status&&o?.onSuccess?.(w,b),o?.onAfterResponse?.(w,b),C(i,{loading:false,response:w});return}}}if(typeof e=="function"){K.current?.abort();let T=new AbortController;K.current=T,C(i,{loading:true}),o?.logging&&console.log("Before request",l),o?.onBeforeRequest&&o?.onBeforeRequest(l);let g=s?await e(void 0,{...o,signal:T.signal}):await e(b,void 0,{...o,signal:T.signal});if(g.__rawData=g.data,c==="append"&&z(d.__rawData)&&z(g?.data)){if(Array.isArray(d.__rawData)&&Array.isArray(g?.data)){let P=[...d?.__rawData??[],...g.data??[]];g.data=P,g.__rawData=P;}else if(typeof d.__rawData=="object"&&typeof g.data=="object"){let P={...d.__rawData,...g.data};g.data=P,g.__rawData=P;}}if(o?.afterResponse&&g?.data&&(g.data=o?.afterResponse(g.data,b)),o?.logging&&console.log("After request",g),g.status&&o?.onSuccess?.(g,b),g.status||o?.onError?.(g,b),o?.onAfterResponse?.(g,b),C(i,{loading:false,response:g,isCancel:false}),Z&&g.status){let P=H().add(X,oe).toISOString(),w={data:g,expired:P},$=await caches.open(k),W=new Response(JSON.stringify(w));await $.put(E,W);}}},[l,e,o,h,k,E,X,oe,Z,d]);le.useEffect(()=>{if(o?.refreshInterval){let S=typeof o.refreshInterval=="number"?o.refreshInterval:o.refreshInterval.value,b=typeof o.refreshInterval=="number"?"s":o.refreshInterval.unit,T=setInterval(()=>{A();},H.duration(S,b).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[o?.refreshInterval,A]);let y=le.useRef(null),{enabledRefetch:R,timeoutRefetch:p,timeoutUnitRefetch:D}=le.useMemo(()=>{let S=o?.refetchOnWindowFocus?.enabled??F?.enabled??false,b=o?.refetchOnWindowFocus?.timeout??F?.timeout,T=typeof b=="number"?b:b?.value??60*5,g=typeof b=="object"?b.unit:"s";return {enabledRefetch:S,timeoutRefetch:T,timeoutUnitRefetch:g}},[o?.refetchOnWindowFocus,F]);le.useEffect(()=>{if(!R||o?.hold)return;let S=H.duration(p,D).asMilliseconds(),b=()=>{let g=Date.now(),P=y.current;P!==null&&g-P>=S&&A(),y.current=null;},T=()=>{y.current=Date.now();};return window.addEventListener("focus",b),window.addEventListener("blur",T),()=>{window.removeEventListener("focus",b),window.removeEventListener("blur",T);}},[R,p,D,A,o?.hold]);let m=le.useCallback(()=>{K.current?.abort(),K.current=null,C(i,{loading:false,isCancel:true});},[i,K]),O=le.useCallback(()=>{C(i,{loading:false,response:null});},[i]),f=le.useMemo(()=>({...d,loading:u,refresh:A,abort:m,clear:O,response:d,isCancel:h,clone:(S,b)=>Ct(e,S,{storeName:`${a}-clone`,...b})}),[d,u,A,m,O,h,e]);return le.useEffect(()=>(He(i,f),()=>{Fe(i);}),[f,i]),[d?.data,f]}async function yn(t,e=()=>{}){let r=t*1e3;return new Promise(n=>{setInterval(()=>{e();},1e3);setTimeout(async()=>{await e(),n(true);},r);})}var At=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(At||{}),St=(A=>(A.number="number",A.currency="currency",A.percent="percent",A.date="date",A.dateTime="dateTime",A.month="month",A.year="year",A.time="time",A.timestamp="timestamp",A.string="string",A.textarea="textarea",A.code="code",A.password="password",A.boolean="boolean",A.toggle="toggle",A.email="email",A.phone="phone",A.url="url",A.json="json",A.file="file",A.image="image",A.array="array",A.object="object",A.enum="enum",A.user="user",A.department="department",A.status="status",A))(St||{});var Dn=()=>{let{format:t}=_();return (e,r,n)=>{try{return r==="number"?Pt(e,{thouSep:t.number.thouSep,decDigits:t.number.decDigits,decSep:t.number.decSep,...n}):["date","dateTime","month","year","time"].some(s=>s===r)?qt(e,{display:t[r]?.display,value:t[r]?.value,...n}):r==="boolean"?wt(e,n):r==="string"?Ot(e,n):e?.toString()}catch{return}}};function wt(t,e){let r=typeof t=="string"?t==="true":!!t,n=e?.trueLabel??"Yes",s=e?.falseLabel??"No";return r?n:s}function Ot(t,e){if(!z(t))return "";let r=String(t);switch(e?.textTransform){case "capitalize":r=qe(r);break;case "uppercase":r=r.toUpperCase();break;case "lowercase":r=r.toLowerCase();break}return e?.ellipsis&&r.length>e.ellipsis&&(r=r.slice(0,e.ellipsis)+"..."),r}function Pt(t,{thouSep:e,decSep:r,decDigits:n,method:s,dirty:a}){if(a){let h=String(t??"").trim().trim();if(fe(h,r))return h}if(t==null||isNaN(Number(t)))return "";let l=typeof t=="string"?parseFloat(t):t;if(s)if(typeof n=="number"){let u=Math.pow(10,n);l=Math[s](l*u)/u;}else l=Math[s](l);else if(typeof n=="number"){let u=Math.pow(10,n);l=Math.trunc(l*u)/u;}let o=0;if(n==="auto"){let u=l.toString(),h=u.indexOf(".");h!==-1&&(o=u.length-h-1);}let i={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?o:n||0,maximumFractionDigits:n==="auto"?o:n||0,minimumIntegerDigits:1};return l.toLocaleString("en-US",i).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,e)}function qt(t,{display:e,value:r}){if(!z(t))return t;let n=H(t,r);return n.isValid()?n.format(e):t}function An(t,{interval:e,lead:r}){let n=le.useRef(null);le.useEffect(()=>{n.current=t;},[t]),le.useEffect(()=>{let s=()=>n.current();if(r&&s(),e!==null){let a=setInterval(s,e);return ()=>clearInterval(a)}},[e]);}function On(t,e,r){let[n,s]=le.useState(false),a=(c,u)=>typeof t=="string"&&c===t||typeof t=="number"&&u===t,l=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),o=c=>{let{key:u,keyCode:h}=c,d=c.ctrlKey,C=c.altKey,q=c.shiftKey;if(!l(document.activeElement))if(e)if(typeof e=="string")a(u,h)&&(e==="ctrl"&&d||e==="alt"&&C||e==="shift"&&q)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));else {let x=e.every(M=>M==="ctrl"?d:M==="alt"?C:M==="shift"?q:false);a(u,h)&&x&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));}else a(u,h)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));},i=({key:c,keyCode:u})=>{a(c,u)&&s(false);};return le.useEffect(()=>(window.addEventListener("keydown",o),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",o),window.removeEventListener("keyup",i);}),[]),n}var Mn=({url:t,token:e,beforeRequest:r,onCallback:n,headers:s,onUnauthorized:a,handleToast:l,handleAuthorization:o,disabledToastWhenCancel:i,withCredentials:c,encryptRequest:u,encryptResponse:h,passphrase:d})=>{let{encrypt:C,decrypt:q,passphrase:x}=G(),M=Et__default.default.create({baseURL:`${t}`,headers:{"Content-Type":"application/json",...s}}),F=(y,R,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,f=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:h)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?x:p.passphrase:d;try{f=q(f,w);}catch{try{f=q(f,x);}catch{}}}let T={...n({...y,data:f,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:i,P=o?o(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&l&&(!m||!g)&&l(T),!P&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||a;w&&w(T);}if(typeof R=="function")R(T);else return T},B=(y,R=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:c}).then(R).catch(p=>R(p.response,p)),U=(y,R,p,D,m)=>{let f={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},S={...f.headers};if(f.token&&(typeof f.token=="boolean"?e&&(S.Authorization=`Bearer ${e}`):f.token&&(S.Authorization=`Bearer ${f.token}`)),r&&(p=r(p)),(typeof f?.encryptRequest=="boolean"?f?.encryptRequest:u)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:d;p=C(p,T);}return B({url:R,method:y,data:p,headers:S,responseType:f.responseType,signal:f.signal,withCredentials:f.withCredentials,onUploadProgress:T=>{f?.onUploadProgress&&f?.onUploadProgress(T);}},(T,g)=>F(T,D,f,g))};return {client:B,post:(y,R,p,D)=>U("POST",`${y}`,R,p,D),put:(y,R,p,D)=>U("PUT",`${y}`,R,p,D),patch:(y,R,p,D)=>U("PATCH",`${y}`,R,p,D),delete:(y,R,p)=>U("DELETE",`${y}`,null,R,p),get:(y,R,p)=>U("GET",`${y}`,null,R,p),upload:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,R,p,D,m)=>{try{let f={...{token:!0,responseType:"json",infoError:!0},...m},S={"Content-Type":"application/json",...s,...f.headers};if(f.token){let v=typeof f.token=="boolean"?e:f.token;v&&(S.Authorization=`Bearer ${v}`);}let b=p;if(r&&(b=r(b)),(typeof f.encryptRequest=="boolean"?f.encryptRequest:u)&&b){let v=f.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?x:f.passphrase:d;b=C(b,v);}let g=await fetch(`${t}${R}`,{method:y,headers:S,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(b)}),P=g?.status,w=P===401;if(!g.ok){let v=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(V.includes("application/json"))try{let Q=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:h)&&p){let ue=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:d;try{p=q(Q,ue);}catch{try{p=q(Q,x);}catch{}}}v=Q?.message||v;}catch{v=L;}else v=L;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:i,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0};m?.infoError&&l&&!J&&l(j),D(j);return}let $=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:v,value:J}=await $.read();ee=v,Y+=W.decode(J,{stream:!0});let j=Y.split(`
2
2
 
3
- `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let $=le(V);D({status:!0,data:$,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0});}catch(O){let d=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:d,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}};function po(e,t){let[r,n]=pe.useState(false),[s,a]=pe.useState(),[l,o]=pe.useState(0),i=pe.useRef(null);return pe.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{i.current?.abort();}},[]),[async f=>{i.current?.abort();let C=new AbortController;i.current=C,n(true),t?.beforeRequest&&(f=t?.beforeRequest(f)),t?.logging&&console.log("Before request",f),t?.onBeforeRequest&&t?.onBeforeRequest(f);let P={...t,signal:C.signal,onUploadProgress:M=>{let H=Math.round(M.loaded*100/(M.total||1));o(H);}},x=e.__isVoid?await e(void 0,P):await e(f,void 0,P);t?.logging&&console.log("After response",x),a(x),n(false),o(0),t?.afterResponse&&x?.data&&(x.data=t?.afterResponse(x.data,f)),x.status&&t?.onSuccess&&t?.onSuccess(x,f),!x.status&&t?.onError&&t?.onError(x,f),t?.onAfterResponse?.(x,f);},{...s,loading:r,abort:()=>{i.current?.abort(),i.current=null,n(false),o(0);},progress:l,reset:()=>{n(false),o(0),a(null);}}]}function Gt(e,t){let{disableHysteresis:r=false,threshold:n=100,target:s}=t,a=e.current;return s&&(typeof s.pageYOffset=="number"?e.current=s.pageYOffset:s.scrollTop!==void 0&&(e.current=s.scrollTop)),!r&&a!==void 0&&e.current<a?false:(e.current||0)>n}var Xt=typeof window<"u"?window:null;function mo(e={}){let{getTrigger:t=Gt,target:r=Xt,disableHysteresis:n=false,threshold:s=100}=e,a=pe__default.default.useRef(0),[l,o]=pe__default.default.useState(()=>t(a,{disableHysteresis:n,threshold:s,target:r}));return pe__default.default.useEffect(()=>{let i=()=>{o(t(a,{disableHysteresis:n,threshold:s,target:r}));};if(i(),r)return r.addEventListener("scroll",i,{passive:true}),()=>{r.removeEventListener("scroll",i);}},[r,t,n,s]),l}function Ro(e,t){let r,n;typeof t=="number"?(r=t,n=void 0):(r=t?.delay??500,n=t?.onDebounce);let[s,a]=pe.useState(e);return pe.useEffect(()=>{let l=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(l)},[e,r,n]),s}var Ao=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,s=t?.shallow??true,{refresh:a,abort:l,clear:o,clone:i}=We(n)||{},c=P=>{let x=P.states[n]??te;return {loading:x.loading,isCancel:x.isCancel,response:x.response}},{loading:u,isCancel:R,response:f}=s?re(shallow.useShallow(c)):re(c),C=pe.useMemo(()=>[f?.data,{...f,loading:u,isCancel:R,refresh:a,abort:l,clear:o,clone:i}],[f,u,R,a,l,o,i]);return t?.selector?t.selector(C):C};var ue=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},Je=(e,t)=>{let r=false;return pe__default.default.Children.forEach(e,n=>{if(pe__default.default.isValidElement(n)){let s=n,a=n.type.displayName;(t.includes(a)||s.props?.children&&Je(s.props.children,t))&&(r=true);}}),r},Qe=(e,t)=>{let r={others:[]},n=s=>{pe__default.default.Children.forEach(s,a=>{if(pe__default.default.isValidElement(a)){let l=a.type.displayName,o=a,i=o.props?.children;t.includes(l)?r[l]=a:i&&Je(i,t)?n(o.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function Eo(){let{format:e}=z();return (t="",r=false)=>$e(t,r,e.number.decSep)}function Uo(e,t){let r=pe.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return pe.useEffect(()=>{if(!e)return;let n=()=>{let a=e.getBoundingClientRect();r.current={width:a.width,height:a.height,top:a.top,left:a.left,right:a.right,bottom:a.bottom},t&&t(r.current);};n();let s=new ResizeObserver(()=>n());return s.observe(e),()=>s.disconnect()},[e,t]),r}var Pe={};function $o(e,t){let[r,n]=pe.useState(false),[s,a]=pe.useState(),[l,o]=pe.useState();return pe.useEffect(()=>{if(!e)return;if(Pe[e]){o(()=>Pe[e]);return}n(true),(async()=>{try{let c=await import(`${t.path}${e}${t.extension??".svg?react"}`);Pe[e]=c.default,o(()=>c.default);}catch(c){a(c),console.error(c);}finally{n(false);}})();},[e,t.path,t.extension]),{error:s,loading:r,Icon:l}}function Ko(e){let t=e,r=new Set;function n(){return t}function s(o){return r.add(o),()=>r.delete(o)}function a(o){typeof o=="function"?t=o(t):t=o,r.forEach(i=>i());}function l(o){let i=pe.useRef(o?o(t):t);return pe.useSyncExternalStore(s,()=>{let c=o?o(t):t,u=i.current;return Object.is(u,c)||(i.current=c),i.current},()=>o?o(t):t)}return {getSnapshot:n,subscribe:s,setState:a,useStore:l}}function Ge(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],s=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&Ge(n,s);});}function jo(e){let t={};for(let r in e){let n=e[r];t[r]=(...s)=>{let a=n(...s);return Ge(a,r),a};}return t}function zo(e,t){let[r,n]=pe.useState(false),[s,a]=pe.useState([]),l=pe.useRef([]),o=pe.useRef(null);pe.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{o.current?.abort();}},[]);let i=async R=>{o.current?.abort();let f=new AbortController;o.current=f,n(true),a([]),l.current=[],e(R,C=>{C.isDone||(l.current.push(C),a([...l.current])),(C.isDone||!C.status)&&(n(false),t?.onDone&&t?.onDone([...l.current])),C.status?t?.onStream&&t?.onStream(C):t?.onError&&t?.onError(C);},{signal:f.signal});},c=()=>{o.current?.abort(),o.current=null,n(false);},u=()=>{n(false),a([]),l.current=[];};return [s.map(R=>R.data),i,{loading:r,abort:c,reset:u,response:s}]}function Jo(e,t){let{key:r}=t,[n,s]=pe.useState();return pe.useEffect(()=>{let a=yr.liveQuery(()=>e(r)).subscribe(s);return ()=>a.unsubscribe()},[r]),n}function Zo(e,t){let{key:r}=t,[n,s]=pe.useState(false);return pe.useEffect(()=>{let a=yr.liveQuery(async()=>!!await e(r)).subscribe(l=>{s(o=>o!==l?l:o);});return ()=>a.unsubscribe()},[r]),n}var fe,de={};function ns({dbName:e,version:t=1,table:r}){return fe||(fe=new yr__default.default(e),t=Object.keys(de).length+1,fe.version(t).stores(de)),r}function os({name:e,primaryKey:t}){de[e]||(de[e]=t);let r=()=>{let c=fe.table(e);if(!c)throw new Error(`Table ${e} is not registered in Dexie`);return c};return {table:r,create:async i=>await r().add(i),update:async(i,c)=>await r().update(i,c),put:async(i,c)=>await r().put({...c,[t]:i}),detail:async i=>await r().get(i),remove:async i=>await r().delete(i)}}var fs=()=>{let{encrypt:e,decrypt:t,passphrase:r}=G();return ({url:n,token:s,beforeRequest:a,onCallback:l,headers:o,onUnauthorized:i,handleToast:c,handleAuthorization:u,disabledToastWhenCancel:R,withCredentials:f,encryptRequest:C,encryptResponse:P,passphrase:x})=>{let M=Yt__default.default.create({baseURL:`${n}`,headers:{"Content-Type":"application/json",...o}}),H=(y,b,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,d=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:P)&&d){let S=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?r:p.passphrase:x;try{d=t(d,S);}catch{try{d=t(d,r);}catch{}}}let T={...l({...y,data:d,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:R,v=u?u(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&c&&(!m||!g)&&c(T),!v&&(!m||!p?.disabledHandleUnauthorized)){let S=p?.onUnauthorized||i;S&&S(T);}if(typeof b=="function")b(T);else return T},F=(y,b=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:f}).then(b).catch(p=>b(p.response,p)),E=(y,b,p,D,m)=>{let d={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},w={...d.headers};if(d.token&&(typeof d.token=="boolean"?s&&(w.Authorization=`Bearer ${s}`):d.token&&(w.Authorization=`Bearer ${d.token}`)),a&&(p=a(p)),(typeof d?.encryptRequest=="boolean"?d?.encryptRequest:C)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;p=e(p,T);}return F({url:b,method:y,data:p,headers:w,responseType:d.responseType,signal:d.signal,withCredentials:d.withCredentials,onUploadProgress:T=>{d?.onUploadProgress&&d?.onUploadProgress(T);}},(T,g)=>H(T,D,d,g))};return {client:F,post:(y,b,p,D)=>E("POST",`${y}`,b,p,D),put:(y,b,p,D)=>E("PUT",`${y}`,b,p,D),patch:(y,b,p,D)=>E("PATCH",`${y}`,b,p,D),delete:(y,b,p)=>E("DELETE",`${y}`,null,b,p),get:(y,b,p)=>E("GET",`${y}`,null,b,p),upload:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,b,p,D,m)=>{try{let d={...{token:!0,responseType:"json",infoError:!0},...m},w={"Content-Type":"application/json",...o,...d.headers};if(d.token){let k=typeof d.token=="boolean"?s:d.token;k&&(w.Authorization=`Bearer ${k}`);}let h=p;if(a&&(h=a(h)),(typeof d.encryptRequest=="boolean"?d.encryptRequest:C)&&h){let k=d.passphrase?typeof d.passphrase=="boolean"&&d.passphrase?r:d.passphrase:x;h=e(h,k);}let g=await fetch(`${n}${b}`,{method:y,headers:w,credentials:d.withCredentials?"include":"same-origin",signal:d.signal,body:JSON.stringify(h)}),v=g?.status,S=v===401;if(!g.ok){let k=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",$=await g.clone().text();if($)if(V.includes("application/json"))try{let Q=JSON.parse($);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:P)&&p){let ge=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;try{p=t(Q,ge);}catch{try{p=t(Q,r);}catch{}}}k=Q?.message||k;}catch{k=$;}else k=$;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:R,j={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0};m?.infoError&&c&&!J&&c(j),D(j);return}let N=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:k,value:J}=await N.read();ee=k,Y+=W.decode(J,{stream:!0});let j=Y.split(`
3
+ `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let L=ae(V);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0});}catch(O){let f=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:f,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}};function Hn(t,e){let[r,n]=le.useState(false),[s,a]=le.useState(),[l,o]=le.useState(0),i=le.useRef(null);return le.useEffect(()=>{if(e?.abortOnUnmount)return ()=>{i.current?.abort();}},[]),[async d=>{i.current?.abort();let C=new AbortController;i.current=C,n(true),e?.beforeRequest&&(d=e?.beforeRequest(d)),e?.logging&&console.log("Before request",d),e?.onBeforeRequest&&e?.onBeforeRequest(d);let q={...e,signal:C.signal,onUploadProgress:M=>{let F=Math.round(M.loaded*100/(M.total||1));o(F);}},x=t.__isVoid?await t(void 0,q):await t(d,void 0,q);e?.logging&&console.log("After response",x),a(x),n(false),o(0),e?.afterResponse&&x?.data&&(x.data=e?.afterResponse(x.data,d)),x.status&&e?.onSuccess&&e?.onSuccess(x,d),!x.status&&e?.onError&&e?.onError(x,d),e?.onAfterResponse?.(x,d);},{...s,loading:r,abort:()=>{i.current?.abort(),i.current=null,n(false),o(0);},progress:l,reset:()=>{n(false),o(0),a(null);}}]}function $t(t,e){let{disableHysteresis:r=false,threshold:n=100,target:s}=e,a=t.current;return s&&(typeof s.pageYOffset=="number"?t.current=s.pageYOffset:s.scrollTop!==void 0&&(t.current=s.scrollTop)),!r&&a!==void 0&&t.current<a?false:(t.current||0)>n}var Lt=typeof window<"u"?window:null;function Bn(t={}){let{getTrigger:e=$t,target:r=Lt,disableHysteresis:n=false,threshold:s=100}=t,a=le__default.default.useRef(0),[l,o]=le__default.default.useState(()=>e(a,{disableHysteresis:n,threshold:s,target:r}));return le__default.default.useEffect(()=>{let i=()=>{o(e(a,{disableHysteresis:n,threshold:s,target:r}));};if(i(),r)return r.addEventListener("scroll",i,{passive:true}),()=>{r.removeEventListener("scroll",i);}},[r,e,n,s]),l}function zn(t,e){let r,n;typeof e=="number"?(r=e,n=void 0):(r=e?.delay??500,n=e?.onDebounce);let[s,a]=le.useState(t);return le.useEffect(()=>{let l=setTimeout(()=>{a(t),n&&n(t);},r);return ()=>clearTimeout(l)},[t,r,n]),s}var Gn=(t,e)=>{let r=t.__path||t.name,n=e?.storeName||`${r}`,s=e?.shallow??true,{refresh:a,abort:l,clear:o,clone:i}=Ke(n)||{},c=q=>{let x=q.states[n]??te;return {loading:x.loading,isCancel:x.isCancel,response:x.response}},{loading:u,isCancel:h,response:d}=s?re(shallow.useShallow(c)):re(c),C=le.useMemo(()=>[d?.data,{...d,loading:u,isCancel:h,refresh:a,abort:l,clear:o,clone:i}],[d,u,h,a,l,o,i]);return e?.selector?e.selector(C):C};var eo=(t,e)=>{let r=n=>t(n);return r.displayName=e,r},je=(t,e)=>{let r=false;return le__default.default.Children.forEach(t,n=>{if(le__default.default.isValidElement(n)){let s=n,a=n.type.displayName;(e.includes(a)||s.props?.children&&je(s.props.children,e))&&(r=true);}}),r},to=(t,e)=>{let r={others:[]},n=s=>{le__default.default.Children.forEach(s,a=>{if(le__default.default.isValidElement(a)){let l=a.type.displayName,o=a,i=o.props?.children;e.includes(l)?r[l]=a:i&&je(i,e)?n(o.props.children):r.others.push(a);}else r.others.push(a);});};return n(t),r};function so(){let{format:t}=_();return (e="",r=false)=>ve(e,r,t.number.decSep)}function lo(t,e){let r=le.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return le.useEffect(()=>{if(!t)return;let n=()=>{let a=t.getBoundingClientRect();r.current={width:a.width,height:a.height,top:a.top,left:a.left,right:a.right,bottom:a.bottom},e&&e(r.current);};n();let s=new ResizeObserver(()=>n());return s.observe(t),()=>s.disconnect()},[t,e]),r}var Ce={};function fo(t,e){let[r,n]=le.useState(false),[s,a]=le.useState(),[l,o]=le.useState();return le.useEffect(()=>{if(!t)return;if(Ce[t]){o(()=>Ce[t]);return}n(true),(async()=>{try{let c=await import(`${e.path}${t}${e.extension??".svg?react"}`);Ce[t]=c.default,o(()=>c.default);}catch(c){a(c),console.error(c);}finally{n(false);}})();},[t,e.path,e.extension]),{error:s,loading:r,Icon:l}}function go(t){let e=t,r=new Set;function n(){return e}function s(o){return r.add(o),()=>r.delete(o)}function a(o){typeof o=="function"?e=o(e):e=o,r.forEach(i=>i());}function l(o){let i=le.useRef(o?o(e):e);return le.useSyncExternalStore(s,()=>{let c=o?o(e):e,u=i.current;return Object.is(u,c)||(i.current=c),i.current},()=>o?o(e):e)}return {getSnapshot:n,subscribe:s,setState:a,useStore:l}}function Ie(t,e){!t||typeof t!="object"||Object.keys(t).forEach(r=>{let n=t[r],s=e?`${e}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&Ie(n,s);});}function ho(t){let e={};for(let r in t){let n=t[r];e[r]=(...s)=>{let a=n(...s);return Ie(a,r),a};}return e}function Do(t,e){let[r,n]=le.useState(false),[s,a]=le.useState([]),l=le.useRef([]),o=le.useRef(null);le.useEffect(()=>{if(e?.abortOnUnmount)return ()=>{o.current?.abort();}},[]);let i=async h=>{o.current?.abort();let d=new AbortController;o.current=d,n(true),a([]),l.current=[],t(h,C=>{C.isDone||(l.current.push(C),a([...l.current])),(C.isDone||!C.status)&&(n(false),e?.onDone&&e?.onDone([...l.current])),C.status?e?.onStream&&e?.onStream(C):e?.onError&&e?.onError(C);},{signal:d.signal});},c=()=>{o.current?.abort(),o.current=null,n(false);},u=()=>{n(false),a([]),l.current=[];};return [s.map(h=>h.data),i,{loading:r,abort:c,reset:u,response:s}]}function So(t,e){let{key:r}=e,[n,s]=le.useState();return le.useEffect(()=>{let a=er.liveQuery(()=>t(r)).subscribe(s);return ()=>a.unsubscribe()},[r]),n}function qo(t,e){let{key:r}=e,[n,s]=le.useState(false);return le.useEffect(()=>{let a=er.liveQuery(async()=>!!await t(r)).subscribe(l=>{s(o=>o!==l?l:o);});return ()=>a.unsubscribe()},[r]),n}var ce,pe={};function Eo({dbName:t,version:e=1,table:r}){return ce||(ce=new er__default.default(t),e=Object.keys(pe).length+1,ce.version(e).stores(pe)),r}function No({name:t,primaryKey:e}){pe[t]||(pe[t]=e);let r=()=>{let c=ce.table(t);if(!c)throw new Error(`Table ${t} is not registered in Dexie`);return c};return {table:r,create:async i=>await r().add(i),update:async(i,c)=>await r().update(i,c),put:async(i,c)=>await r().put({...c,[e]:i}),detail:async i=>await r().get(i),remove:async i=>await r().delete(i)}}var jo=()=>{let{encrypt:t,decrypt:e,passphrase:r}=G();return ({url:n,token:s,beforeRequest:a,onCallback:l,headers:o,onUnauthorized:i,handleToast:c,handleAuthorization:u,disabledToastWhenCancel:h,withCredentials:d,encryptRequest:C,encryptResponse:q,passphrase:x})=>{let M=Et__default.default.create({baseURL:`${n}`,headers:{"Content-Type":"application/json",...o}}),F=(y,R,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,f=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:q)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?r:p.passphrase:x;try{f=e(f,w);}catch{try{f=e(f,r);}catch{}}}let T={...l({...y,data:f,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:h,P=u?u(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&c&&(!m||!g)&&c(T),!P&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||i;w&&w(T);}if(typeof R=="function")R(T);else return T},B=(y,R=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:d}).then(R).catch(p=>R(p.response,p)),U=(y,R,p,D,m)=>{let f={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},S={...f.headers};if(f.token&&(typeof f.token=="boolean"?s&&(S.Authorization=`Bearer ${s}`):f.token&&(S.Authorization=`Bearer ${f.token}`)),a&&(p=a(p)),(typeof f?.encryptRequest=="boolean"?f?.encryptRequest:C)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;p=t(p,T);}return B({url:R,method:y,data:p,headers:S,responseType:f.responseType,signal:f.signal,withCredentials:f.withCredentials,onUploadProgress:T=>{f?.onUploadProgress&&f?.onUploadProgress(T);}},(T,g)=>F(T,D,f,g))};return {client:B,post:(y,R,p,D)=>U("POST",`${y}`,R,p,D),put:(y,R,p,D)=>U("PUT",`${y}`,R,p,D),patch:(y,R,p,D)=>U("PATCH",`${y}`,R,p,D),delete:(y,R,p)=>U("DELETE",`${y}`,null,R,p),get:(y,R,p)=>U("GET",`${y}`,null,R,p),upload:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,R,p,D,m)=>{try{let f={...{token:!0,responseType:"json",infoError:!0},...m},S={"Content-Type":"application/json",...o,...f.headers};if(f.token){let v=typeof f.token=="boolean"?s:f.token;v&&(S.Authorization=`Bearer ${v}`);}let b=p;if(a&&(b=a(b)),(typeof f.encryptRequest=="boolean"?f.encryptRequest:C)&&b){let v=f.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?r:f.passphrase:x;b=t(b,v);}let g=await fetch(`${n}${R}`,{method:y,headers:S,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(b)}),P=g?.status,w=P===401;if(!g.ok){let v=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(V.includes("application/json"))try{let Q=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:q)&&p){let ue=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;try{p=e(Q,ue);}catch{try{p=e(Q,r);}catch{}}}v=Q?.message||v;}catch{v=L;}else v=L;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:h,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0};m?.infoError&&c&&!J&&c(j),D(j);return}let $=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:v,value:J}=await $.read();ee=v,Y+=W.decode(J,{stream:!0});let j=Y.split(`
4
4
 
5
- `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let $=le(V);D({status:!0,data:$,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0});}catch(O){let d=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:d,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}}};function et(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],s=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&et(n,s);});}function tt(e,t,r=""){if(typeof e=="function")return ()=>{let s=e(t);return et(s,r),s};if(!e||typeof e!="object")return e;let n={};for(let s in e){let a=r?`${r}.${s}`:s;n[s]=tt(e[s],t,a);}return n}function ms(e,t){return tt(e,t)}function Rs(e){let t=[...e],r=a=>a==null?"":String(a),n=(a,l)=>{if(Array.isArray(l.and))return l.and.every(o=>n(a,o));if(Array.isArray(l.or))return l.or.some(o=>n(a,o));for(let[o,i]of Object.entries(l)){if(o==="and"||o==="or")continue;let{opt:c="eq",value:u,required:R=true}=typeof i=="object"&&i!==null&&"value"in i?i:{value:i};if(!R&&(u==null||u===""))continue;let f=L(a,o,void 0);switch(c){case "eq":if(f!==u)return false;break;case "neq":if(f===u)return false;break;case "gt":if(!(f>u))return false;break;case "gte":if(!(f>=u))return false;break;case "lt":if(!(f<u))return false;break;case "lte":if(!(f<=u))return false;break;case "contains":{if(f==null||u==null)return false;if(Array.isArray(f)){if(!f.some(P=>r(P).toLowerCase().includes(r(u).toLowerCase())))return false}else if(!r(f).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "notContains":{if(f==null)break;if(Array.isArray(f)){if(f.some(P=>r(P).toLowerCase().includes(r(u).toLowerCase())))return false}else if(r(f).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "startsWith":if(f==null||u==null||!String(f).startsWith(String(u)))return false;break;case "endsWith":if(f==null||u==null||!String(f).endsWith(String(u)))return false;break;case "in":if(!Array.isArray(u)||!u.includes(f))return false;break;case "notIn":if(Array.isArray(u)&&u.includes(f))return false;break;default:return false}}return true},s={where(a){return a&&(t=t.filter(l=>n(l,a))),s},sort(a){let l=Object.entries(a);return t.sort((o,i)=>{for(let[c,u]of l){let R=L(o,c),f=L(i,c);if(R!==f)return u==="asc"?R>f?1:-1:R<f?1:-1}return 0}),s},distinct(a){let l=Array.isArray(a)?a:a?[a]:[],o=new Set;return t=t.filter(i=>{let c=l.length?l.map(u=>L(i,u)).join("|"):JSON.stringify(i);return o.has(c)?false:(o.add(c),true)}),s},select(a){return t=t.map(l=>{let o={};for(let i of a)o[i]=L(l,i);return o}),s},paginate(a,l){let o=(a-1)*l,i=o+l;return {data:t.slice(o,i),total:t.length,page:a,pageSize:l,totalPages:Math.ceil(t.length/l)}},groupBy(a){let l={};for(let o of t){let i=L(o,a),c=String(i??"undefined");l[c]||(l[c]=[]),l[c].push(o);}return l},map(a){return t=t.map(a),s},reduce(a,l){return t.reduce(a,l)},limit(a){return t=t.slice(0,a),s},get(){return t}};return s}function hs({label:e="",search:t="",bgcolor:r="#337ab7",color:n="#fff"}){let s=[];e||(e="");let a=t?.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return typeof e!="string"?s=e.toString().split(new RegExp(`(${a})`,"gi")):s=e.split(new RegExp(`(${a})`,"gi")),jsxRuntime.jsx(jsxRuntime.Fragment,{children:s.map((l,o)=>jsxRuntime.jsx("span",{style:l?.toString()?.toLowerCase()===t?.toString()?.toLowerCase()?{backgroundColor:r,color:n}:{},children:l},o))})}var nt={sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},Ds=["base","sm","md","lg","xl","2xl"];var me={base:0,sm:1,md:2,lg:3,xl:4,"2xl":5};function Tr(e){if(typeof window>"u")return "base";let r=Object.entries(e).filter(([n,s])=>window.matchMedia(`(min-width: ${s})`).matches);return r.length===0?"base":r[r.length-1][0]}function ve(){let{breakpoints:e=nt}=z(),[t,r]=pe.useState(()=>Tr(e));return pe.useEffect(()=>{if(typeof window>"u")return;let a=Object.entries(e).map(([o,i])=>({key:o,query:window.matchMedia(`(min-width: ${i})`)})),l=()=>{let o=a.filter(i=>i.query.matches);r(o.length===0?"base":o[o.length-1].key);};return l(),a.forEach(o=>{typeof o.query.addEventListener=="function"?o.query.addEventListener("change",l):typeof o.query.addListener=="function"&&o.query.addListener(l);}),()=>{a.forEach(o=>{typeof o.query.removeEventListener=="function"?o.query.removeEventListener("change",l):typeof o.query.removeListener=="function"&&o.query.removeListener(l);});}},[e]),{current:t,isMobile:t==="base"||t==="sm",is:{base:t==="base",sm:t==="sm",md:t==="md",lg:t==="lg",xl:t==="xl","2xl":t==="2xl"},up:s=>me[t]>=me[s],down:s=>me[t]<=me[s]}}function ot(e,t=0){let[r,n]=pe.useState(false),s=pe.useRef(null),a=pe.useRef(null),l=pe.useRef(false);return pe.useLayoutEffect(()=>{let o=e.current;if(!o)return;let i=()=>{l.current||(s.current&&clearTimeout(s.current),s.current=window.setTimeout(()=>{l.current=true,n(true);},t));},c=()=>{let f=o.getBoundingClientRect();if(f.width===0||f.height===0)return;let C=a.current,P={w:f.width,h:f.height};(!C||C.w!==P.w||C.h!==P.h)&&(a.current=P,i());};requestAnimationFrame(()=>{c();});let u=new ResizeObserver(()=>{c();}),R=new MutationObserver(()=>{c();});return u.observe(o),R.observe(o,{childList:true,subtree:true,attributes:true}),()=>{s.current&&clearTimeout(s.current),u.disconnect(),R.disconnect();}},[t]),r}function st(e=100){let[t,r]=pe.useState(false);return pe.useEffect(()=>{if(!("PerformanceObserver"in window))return;let n=new PerformanceObserver(s=>{for(let a of s.getEntries())a.duration>e&&(r(true),setTimeout(()=>{r(false);},300));});return n.observe({entryTypes:["longtask"]}),()=>n.disconnect()},[e]),t}function at(e,t,r,n){let s=pe.useRef(void 0),a=pe.useRef({x:0,y:0,width:0,visible:true}),l=pe.useRef(r);pe.useEffect(()=>{l.current=r;},[r]),pe.useLayoutEffect(()=>{if(n)return;let o=e.current,i=t.current;if(!o||!i)return;if(l.current){requestAnimationFrame(()=>{i.style.transform="",i.style.top="",i.style.left="",i.style.removeProperty("width");});return}let c=false,u=q=>{let U=q;for(;U;){if(window.getComputedStyle(U).display==="none")return false;U=U.parentElement;}return true},R=()=>{if(!o||!i||l.current)return;let q=o.getBoundingClientRect(),U=u(o);a.current={x:q.left,y:q.top,width:q.width,visible:U},U?(i.style.top="0",i.style.left="0",i.style.display="",i.style.transform=`translate3d(${q.left}px, ${q.top}px, 0)`,i.style.width=`${q.width}px`):i.style.display="none";},f=()=>{if(!o||!i||l.current)return;let U=i.getBoundingClientRect().height;o.style.height=`${U}px`,o.style.minHeight=`${U}px`;},C=()=>{c||(c=true,s.current=requestAnimationFrame(()=>{R(),c=false;}));},P=()=>{requestAnimationFrame(()=>{R(),requestAnimationFrame(()=>{f();});});},x=new ResizeObserver(()=>{C();}),M=new ResizeObserver(()=>{requestAnimationFrame(()=>{f(),R();});}),H=new MutationObserver(()=>{C();});x.observe(o),M.observe(i),H.observe(document.body,{attributes:true,attributeFilter:["style","class"],subtree:true});let F=null,E=()=>{if(!o||!i||l.current||i.style.visibility==="hidden")return;let q=i.cloneNode(true);q.removeAttribute("style"),q.style.pointerEvents="none",o.innerHTML="",o.appendChild(q),i.style.visibility="hidden",i.style.pointerEvents="none",F&&clearTimeout(F),F=setTimeout(()=>{o.innerHTML="",i.style.visibility="",i.style.pointerEvents="";},150);},K=()=>{C();};return i.addEventListener("layout-complete",P),window.addEventListener("scroll",E,{passive:true,capture:true}),window.addEventListener("resize",K,{passive:true}),requestAnimationFrame(()=>{R(),requestAnimationFrame(()=>{f();});}),()=>{s.current&&cancelAnimationFrame(s.current),x.disconnect(),M.disconnect(),H.disconnect(),i.removeEventListener("layout-complete",P),window.removeEventListener("scroll",E),window.removeEventListener("resize",K);}},[n]);}var ct=pe.createContext(null);function Vs(){let e=pe.useContext(ct);if(!e)throw new Error("useExpandable must be used within ExpandableProvider");return e}var qe=({children:e,renderInlineBelow:t,inlineLayout:r})=>{let{ExpandableModalLoader:n,ExpandableModalBackdrop:s,ExpandableModalContent:a}=pe.useMemo(()=>Qe(e,["ExpandableModalLoader","ExpandableModalBackdrop","ExpandableModalContent"]),[e]),[l,o]=pe.useState(false),i=pe.useRef(null),c=pe.useRef(null),{down:u}=ve(),R=u(t),f=ot(c),C=st(100),P=pe.useRef(false),x=pe.useRef(0);pe.useEffect(()=>{f&&x.current<5&&(x.current+=1,P.current=true);},[f]);let M=!f||!P.current&&C;at(i,c,l,R),pe.useEffect(()=>{if(!l)return;let F=window.innerWidth-document.documentElement.clientWidth,E=document.body.style.overflow,K=document.body.style.paddingRight;return document.body.style.overflow="hidden",document.body.style.paddingRight=`${F}px`,()=>{document.body.style.overflow=E,document.body.style.paddingRight=K;}},[l]);let H={open:l,setOpen:o,targetRef:i,sourceRef:c,showLoading:M};return jsxRuntime.jsx(ct.Provider,{value:H,children:R?r:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[M&&n,jsxRuntime.jsx("div",{"data-slot":"target",ref:i}),reactDom.createPortal(jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[s,a]}),document.body)]})})},qr=ue(({children:e})=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:e}),"ExpandableModalLoader");qe.Loader=qr;var Ur=ue(({children:e})=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:e}),"ExpandableModalBackdrop");qe.Backdrop=Ur;var Mr=ue(({children:e})=>jsxRuntime.jsx(jsxRuntime.Fragment,{children:e}),"ExpandableModalContent");qe.Content=Mr;exports.BREAKPOINT_ORDER=Ds;exports.BgsCoreProvider=Et;exports.DataTypeEnum=Kt;exports.Expandable=qe;exports.Highlight=hs;exports.HttpMethod=Ht;exports.TAILWIND_SCREENS=nt;exports.bindApi=ms;exports.capitalizeWords=Ne;exports.createApiHelper=io;exports.createDatabase=ns;exports.createElement=ue;exports.createStore=Ko;exports.createTable=os;exports.debounce=rn;exports.decrypt=he;exports.decryptString=Ie;exports.defaultState=te;exports.diffJson=Jr;exports.encrypt=be;exports.encryptString=je;exports.filterDOMPropsLite=nn;exports.formatBoolean=Ft;exports.formatDate=_t;exports.formatNumber=It;exports.formatString=jt;exports.generateCacheKey=Le;exports.generateUUID=Yr;exports.getApiActions=We;exports.getDateRangeLabelFromSorted=an;exports.getFieldValue=L;exports.getInitials=on;exports.getMinMaxDate=sn;exports.getTotalMinutes=ln;exports.isArray=Gr;exports.isDirtyRaw=Re;exports.isNotEmpty=_;exports.isValidNumber=At;exports.jsonCopy=tn;exports.labelFormatter=Ue;exports.mappingData=cn;exports.mappingUndefinedtoNull=Qr;exports.moment=B;exports.objectToQueryString=St;exports.parseSSEChunk=le;exports.parseStringToNumber=$e;exports.query=Rs;exports.registerApi=ze;exports.renderChildren=Xr;exports.replaceNullStrings=Me;exports.safeUpdate=Nt;exports.sorting=Zr;exports.splitElement=Qe;exports.stableStringify=Ct;exports.summary=en;exports.unregisterApi=Ve;exports.useAnchorPosition=at;exports.useApiLoad=Bt;exports.useApiLoadStore=re;exports.useApiSend=po;exports.useApiStore=Ao;exports.useApiStream=zo;exports.useBgsCore=z;exports.useCpuBusy=st;exports.useCreateApi=fs;exports.useCrypto=G;exports.useDbLive=Jo;exports.useDbLiveFlag=Zo;exports.useDebounce=Ro;exports.useDelay=Fn;exports.useDynamicSvgImport=$o;exports.useElementBounding=Uo;exports.useExpandable=Vs;exports.useFormatted=Wn;exports.useInterval=Qn;exports.useKeyPress=Zn;exports.useLayoutReady=ot;exports.useParseStringToNumber=Eo;exports.useScrollTrigger=mo;exports.useStorage=_e;exports.wrapApi=jo;
5
+ `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let L=ae(V);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0});}catch(O){let f=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:f,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}}};function _e(t,e){!t||typeof t!="object"||Object.keys(t).forEach(r=>{let n=t[r],s=e?`${e}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&_e(n,s);});}function We(t,e,r=""){if(typeof t=="function")return ()=>{let s=t(e);return _e(s,r),s};if(!t||typeof t!="object")return t;let n={};for(let s in t){let a=r?`${r}.${s}`:s;n[s]=We(t[s],e,a);}return n}function zo(t,e){return We(t,e)}function Wo(t){let e=[...t],r=a=>a==null?"":String(a),n=(a,l)=>{if(Array.isArray(l.and))return l.and.every(o=>n(a,o));if(Array.isArray(l.or))return l.or.some(o=>n(a,o));for(let[o,i]of Object.entries(l)){if(o==="and"||o==="or")continue;let{opt:c="eq",value:u,required:h=true}=typeof i=="object"&&i!==null&&"value"in i?i:{value:i};if(!h&&(u==null||u===""))continue;let d=N(a,o,void 0);switch(c){case "eq":if(d!==u)return false;break;case "neq":if(d===u)return false;break;case "gt":if(!(d>u))return false;break;case "gte":if(!(d>=u))return false;break;case "lt":if(!(d<u))return false;break;case "lte":if(!(d<=u))return false;break;case "contains":{if(d==null||u==null)return false;if(Array.isArray(d)){if(!d.some(q=>r(q).toLowerCase().includes(r(u).toLowerCase())))return false}else if(!r(d).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "notContains":{if(d==null)break;if(Array.isArray(d)){if(d.some(q=>r(q).toLowerCase().includes(r(u).toLowerCase())))return false}else if(r(d).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "startsWith":if(d==null||u==null||!String(d).startsWith(String(u)))return false;break;case "endsWith":if(d==null||u==null||!String(d).endsWith(String(u)))return false;break;case "in":if(!Array.isArray(u)||!u.includes(d))return false;break;case "notIn":if(Array.isArray(u)&&u.includes(d))return false;break;default:return false}}return true},s={where(a){return a&&(e=e.filter(l=>n(l,a))),s},sort(a){let l=Object.entries(a);return e.sort((o,i)=>{for(let[c,u]of l){let h=N(o,c),d=N(i,c);if(h!==d)return u==="asc"?h>d?1:-1:h<d?1:-1}return 0}),s},distinct(a){let l=Array.isArray(a)?a:a?[a]:[],o=new Set;return e=e.filter(i=>{let c=l.length?l.map(u=>N(i,u)).join("|"):JSON.stringify(i);return o.has(c)?false:(o.add(c),true)}),s},select(a){return e=e.map(l=>{let o={};for(let i of a)o[i]=N(l,i);return o}),s},paginate(a,l){let o=(a-1)*l,i=o+l;return {data:e.slice(o,i),total:e.length,page:a,pageSize:l,totalPages:Math.ceil(e.length/l)}},groupBy(a){let l={};for(let o of e){let i=N(o,a),c=String(i??"undefined");l[c]||(l[c]=[]),l[c].push(o);}return l},map(a){return e=e.map(a),s},reduce(a,l){return e.reduce(a,l)},limit(a){return e=e.slice(0,a),s},get(){return e}};return s}function Jo({label:t="",search:e="",bgcolor:r="#337ab7",color:n="#fff"}){let s=[];t||(t="");let a=e?.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return typeof t!="string"?s=t.toString().split(new RegExp(`(${a})`,"gi")):s=t.split(new RegExp(`(${a})`,"gi")),jsxRuntime.jsx(jsxRuntime.Fragment,{children:s.map((l,o)=>jsxRuntime.jsx("span",{style:l?.toString()?.toLowerCase()===e?.toString()?.toLowerCase()?{backgroundColor:r,color:n}:{},children:l},o))})}function es(t,e,r,n){let s=le.useRef(void 0),a=le.useRef({x:0,y:0,width:0,visible:true}),l=le.useRef(r);le.useEffect(()=>{l.current=r;},[r]),le.useLayoutEffect(()=>{if(n)return;let o=t.current,i=e.current;if(!o||!i)return;if(l.current){requestAnimationFrame(()=>{i.style.transform="",i.style.top="",i.style.left="",i.style.removeProperty("width");});return}let c=false,u=k=>{let E=k;for(;E;){if(window.getComputedStyle(E).display==="none")return false;E=E.parentElement;}return true},h=()=>{if(!o||!i||l.current)return;let k=o.getBoundingClientRect(),E=u(o);a.current={x:k.left,y:k.top,width:k.width,visible:E},E?(i.style.top="0",i.style.left="0",i.style.display="",i.style.transform=`translate3d(${k.left}px, ${k.top}px, 0)`,i.style.width=`${k.width}px`):i.style.display="none";},d=()=>{if(!o||!i||l.current)return;let E=i.getBoundingClientRect().height;o.style.height=`${E}px`,o.style.minHeight=`${E}px`;},C=()=>{c||(c=true,s.current=requestAnimationFrame(()=>{h(),c=false;}));},q=()=>{requestAnimationFrame(()=>{h(),requestAnimationFrame(()=>{d();});});},x=new ResizeObserver(()=>{C();}),M=new ResizeObserver(()=>{requestAnimationFrame(()=>{d(),h();});}),F=new MutationObserver(()=>{C();});x.observe(o),M.observe(i),F.observe(document.body,{attributes:true,attributeFilter:["style","class"],subtree:true});let B=null,U=()=>{if(!o||!i||l.current)return;let k=i.cloneNode(true);k.removeAttribute("style"),o.innerHTML="",o.appendChild(k),requestAnimationFrame(()=>{i.style.display="none";}),B&&clearTimeout(B),B=setTimeout(()=>{o.innerHTML="",requestAnimationFrame(()=>{i.style.display="";});},150);},K=()=>{C();};return i.addEventListener("layout-complete",q),window.addEventListener("scroll",U,{passive:true,capture:true}),window.addEventListener("resize",K,{passive:true}),requestAnimationFrame(()=>{h(),requestAnimationFrame(()=>{d();});}),()=>{s.current&&cancelAnimationFrame(s.current),x.disconnect(),M.disconnect(),F.disconnect(),i.removeEventListener("layout-complete",q),window.removeEventListener("scroll",U),window.removeEventListener("resize",K);}},[n]);}function ns(t=100){let[e,r]=le.useState(false);return le.useEffect(()=>{if(!("PerformanceObserver"in window))return;let n=new PerformanceObserver(s=>{for(let a of s.getEntries())a.duration>t&&(r(true),setTimeout(()=>{r(false);},300));});return n.observe({entryTypes:["longtask"]}),()=>n.disconnect()},[t]),e}function is(t,e=0){let[r,n]=le.useState(false),s=le.useRef(null),a=le.useRef(null),l=le.useRef(false);return le.useLayoutEffect(()=>{let o=t.current;if(!o)return;let i=()=>{l.current||(s.current&&clearTimeout(s.current),s.current=window.setTimeout(()=>{l.current=true,n(true);},e));},c=()=>{let d=o.getBoundingClientRect();if(d.width===0||d.height===0)return;let C=a.current,q={w:d.width,h:d.height};(!C||C.w!==q.w||C.h!==q.h)&&(a.current=q,i());};requestAnimationFrame(()=>{c();});let u=new ResizeObserver(()=>{c();}),h=new MutationObserver(()=>{c();});return u.observe(o),h.observe(o,{childList:true,subtree:true,attributes:true}),()=>{s.current&&clearTimeout(s.current),u.disconnect(),h.disconnect();}},[e]),r}exports.BgsCoreProvider=yt;exports.DataTypeEnum=St;exports.Highlight=Jo;exports.HttpMethod=At;exports.bindApi=zo;exports.capitalizeWords=qe;exports.createApiHelper=Mn;exports.createDatabase=Eo;exports.createElement=eo;exports.createStore=go;exports.createTable=No;exports.debounce=vr;exports.decrypt=me;exports.decryptString=$e;exports.defaultState=te;exports.diffJson=Cr;exports.encrypt=de;exports.encryptString=Me;exports.filterDOMPropsLite=Ur;exports.formatBoolean=wt;exports.formatDate=qt;exports.formatNumber=Pt;exports.formatString=Ot;exports.generateCacheKey=Pe;exports.generateUUID=xr;exports.getApiActions=Ke;exports.getDateRangeLabelFromSorted=Nr;exports.getFieldValue=N;exports.getInitials=kr;exports.getMinMaxDate=Er;exports.getTotalMinutes=Mr;exports.isArray=Sr;exports.isDirtyRaw=fe;exports.isNotEmpty=z;exports.isValidNumber=ct;exports.jsonCopy=qr;exports.labelFormatter=we;exports.mappingData=$r;exports.mappingUndefinedtoNull=Ar;exports.moment=H;exports.objectToQueryString=ut;exports.parseSSEChunk=ae;exports.parseStringToNumber=ve;exports.query=Wo;exports.registerApi=He;exports.renderChildren=wr;exports.replaceNullStrings=Oe;exports.safeUpdate=Dt;exports.sorting=Or;exports.splitElement=to;exports.stableStringify=lt;exports.summary=Pr;exports.unregisterApi=Fe;exports.useAnchorPosition=es;exports.useApiLoad=Ct;exports.useApiLoadStore=re;exports.useApiSend=Hn;exports.useApiStore=Gn;exports.useApiStream=Do;exports.useBgsCore=_;exports.useCpuBusy=ns;exports.useCreateApi=jo;exports.useCrypto=G;exports.useDbLive=So;exports.useDbLiveFlag=qo;exports.useDebounce=zn;exports.useDelay=yn;exports.useDynamicSvgImport=fo;exports.useElementBounding=lo;exports.useFormatted=Dn;exports.useInterval=An;exports.useKeyPress=On;exports.useLayoutReady=is;exports.useParseStringToNumber=so;exports.useScrollTrigger=Bn;exports.useStorage=Le;exports.wrapApi=ho;
package/dist/index.d.cts CHANGED
@@ -807,51 +807,8 @@ interface HighlightProps {
807
807
  }
808
808
  declare function Highlight({ label, search, bgcolor, color }: HighlightProps): react_jsx_runtime.JSX.Element;
809
809
 
810
- declare const TAILWIND_SCREENS: {
811
- readonly sm: "640px";
812
- readonly md: "768px";
813
- readonly lg: "1024px";
814
- readonly xl: "1280px";
815
- readonly "2xl": "1536px";
816
- };
817
- type TailwindBreakpoint = keyof typeof TAILWIND_SCREENS;
818
- declare const BREAKPOINT_ORDER: (TailwindBreakpoint | "base")[];
819
-
820
- interface ExpandableContextData {
821
- showLoading: boolean;
822
- open: boolean;
823
- setOpen: React.Dispatch<React.SetStateAction<boolean>>;
824
- targetRef: RefObject<HTMLDivElement | null>;
825
- sourceRef: RefObject<HTMLDivElement | null>;
826
- }
827
- declare function useExpandable(): ExpandableContextData;
828
- interface ExpandableProps {
829
- renderInlineBelow: TailwindBreakpoint | "base";
830
- inlineLayout: React.ReactNode;
831
- }
832
- declare const Expandable: {
833
- ({ children, renderInlineBelow, inlineLayout }: PropsWithChildren<ExpandableProps>): react_jsx_runtime.JSX.Element;
834
- Loader: React$1.FC<{
835
- children?: React$1.ReactNode | undefined;
836
- }>;
837
- Backdrop: React$1.FC<{
838
- children?: React$1.ReactNode | undefined;
839
- }>;
840
- Content: React$1.FC<{
841
- children?: React$1.ReactNode | undefined;
842
- }>;
843
- };
844
-
845
810
  declare function useAnchorPosition(targetRef: RefObject<HTMLDivElement | null>, sourceRef: RefObject<HTMLDivElement | null>, isModalOpen: boolean, disabled: boolean): void;
846
811
 
847
- type BreakpointState = {
848
- current: TailwindBreakpoint | "base";
849
- is: Record<TailwindBreakpoint | "base", boolean>;
850
- up: (bp: TailwindBreakpoint | "base") => boolean;
851
- down: (bp: TailwindBreakpoint | "base") => boolean;
852
- isMobile: boolean;
853
- };
854
-
855
812
  declare function useCpuBusy(thresholdMs?: number): boolean;
856
813
 
857
814
  declare function useLayoutReady(ref: RefObject<HTMLElement | null>, settleMs?: number): boolean;
@@ -869,7 +826,6 @@ type FormatContextProps = {
869
826
  number: OptionsNumberProps;
870
827
  };
871
828
  type BgsCoreProps = {
872
- breakpoints?: Record<TailwindBreakpoint, string>;
873
829
  localeConfig?: {
874
830
  preset?: string | ILocale;
875
831
  object?: Partial<ILocale>;
@@ -888,4 +844,4 @@ interface BgsCoreProviderProps {
888
844
  }
889
845
  declare const BgsCoreProvider: ({ children, value: options }: PropsWithChildren<BgsCoreProviderProps>) => react_jsx_runtime.JSX.Element;
890
846
 
891
- export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, type ApiHelperBase, type ApiLoadState, type ApiMethod, type ApiMethodStream, type ApiMethodVoid, type ApiResponse, type ApiResponseStream, BREAKPOINT_ORDER, type BgsCoreProps, BgsCoreProvider, type BoundingSize, type BreakpointState, type CacheData, type CacheProps, type CallbackHelper, type CallbackStream, type Children, type ClientCallback, type CombinationType, type CreateDatabaseProps, type CreateElementProps, type CreateTableProps, type DataSource, type DataType, type DataTypeDateGroup, DataTypeEnum, type Depth, type EncryptedPayload, Expandable, type ExpandableContextData, Highlight, type HighlightProps, HttpMethod, type MappingDataReturn, type NestedKeyOf, type OptionsBoolean, type OptionsCallReturn, type OptionsDate, type OptionsHelper, type OptionsNumber, type OptionsNumberProps, type OptionsString, type PaginationMeta, type PathValue, type QueryApi, type QueryCondition, type QueryFilterOption, type QueryOperator, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, TAILWIND_SCREENS, type TailwindBreakpoint, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseFormattedOptions, type UseHelperProps, type UseScrollTriggerOptions, bindApi, capitalizeWords, createApiHelper, createDatabase, createElement, createStore, createTable, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, formatBoolean, formatDate, formatNumber, formatString, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, query, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useAnchorPosition, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCpuBusy, useCreateApi, useCrypto, useDbLive, useDbLiveFlag, useDebounce, useDelay, useDynamicSvgImport, useElementBounding, useExpandable, useFormatted, useInterval, useKeyPress, useLayoutReady, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
847
+ export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, type ApiHelperBase, type ApiLoadState, type ApiMethod, type ApiMethodStream, type ApiMethodVoid, type ApiResponse, type ApiResponseStream, type BgsCoreProps, BgsCoreProvider, type BoundingSize, type CacheData, type CacheProps, type CallbackHelper, type CallbackStream, type Children, type ClientCallback, type CombinationType, type CreateDatabaseProps, type CreateElementProps, type CreateTableProps, type DataSource, type DataType, type DataTypeDateGroup, DataTypeEnum, type Depth, type EncryptedPayload, Highlight, type HighlightProps, HttpMethod, type MappingDataReturn, type NestedKeyOf, type OptionsBoolean, type OptionsCallReturn, type OptionsDate, type OptionsHelper, type OptionsNumber, type OptionsNumberProps, type OptionsString, type PaginationMeta, type PathValue, type QueryApi, type QueryCondition, type QueryFilterOption, type QueryOperator, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseFormattedOptions, type UseHelperProps, type UseScrollTriggerOptions, bindApi, capitalizeWords, createApiHelper, createDatabase, createElement, createStore, createTable, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, formatBoolean, formatDate, formatNumber, formatString, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, query, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useAnchorPosition, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCpuBusy, useCreateApi, useCrypto, useDbLive, useDbLiveFlag, useDebounce, useDelay, useDynamicSvgImport, useElementBounding, useFormatted, useInterval, useKeyPress, useLayoutReady, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
package/dist/index.d.ts CHANGED
@@ -807,51 +807,8 @@ interface HighlightProps {
807
807
  }
808
808
  declare function Highlight({ label, search, bgcolor, color }: HighlightProps): react_jsx_runtime.JSX.Element;
809
809
 
810
- declare const TAILWIND_SCREENS: {
811
- readonly sm: "640px";
812
- readonly md: "768px";
813
- readonly lg: "1024px";
814
- readonly xl: "1280px";
815
- readonly "2xl": "1536px";
816
- };
817
- type TailwindBreakpoint = keyof typeof TAILWIND_SCREENS;
818
- declare const BREAKPOINT_ORDER: (TailwindBreakpoint | "base")[];
819
-
820
- interface ExpandableContextData {
821
- showLoading: boolean;
822
- open: boolean;
823
- setOpen: React.Dispatch<React.SetStateAction<boolean>>;
824
- targetRef: RefObject<HTMLDivElement | null>;
825
- sourceRef: RefObject<HTMLDivElement | null>;
826
- }
827
- declare function useExpandable(): ExpandableContextData;
828
- interface ExpandableProps {
829
- renderInlineBelow: TailwindBreakpoint | "base";
830
- inlineLayout: React.ReactNode;
831
- }
832
- declare const Expandable: {
833
- ({ children, renderInlineBelow, inlineLayout }: PropsWithChildren<ExpandableProps>): react_jsx_runtime.JSX.Element;
834
- Loader: React$1.FC<{
835
- children?: React$1.ReactNode | undefined;
836
- }>;
837
- Backdrop: React$1.FC<{
838
- children?: React$1.ReactNode | undefined;
839
- }>;
840
- Content: React$1.FC<{
841
- children?: React$1.ReactNode | undefined;
842
- }>;
843
- };
844
-
845
810
  declare function useAnchorPosition(targetRef: RefObject<HTMLDivElement | null>, sourceRef: RefObject<HTMLDivElement | null>, isModalOpen: boolean, disabled: boolean): void;
846
811
 
847
- type BreakpointState = {
848
- current: TailwindBreakpoint | "base";
849
- is: Record<TailwindBreakpoint | "base", boolean>;
850
- up: (bp: TailwindBreakpoint | "base") => boolean;
851
- down: (bp: TailwindBreakpoint | "base") => boolean;
852
- isMobile: boolean;
853
- };
854
-
855
812
  declare function useCpuBusy(thresholdMs?: number): boolean;
856
813
 
857
814
  declare function useLayoutReady(ref: RefObject<HTMLElement | null>, settleMs?: number): boolean;
@@ -869,7 +826,6 @@ type FormatContextProps = {
869
826
  number: OptionsNumberProps;
870
827
  };
871
828
  type BgsCoreProps = {
872
- breakpoints?: Record<TailwindBreakpoint, string>;
873
829
  localeConfig?: {
874
830
  preset?: string | ILocale;
875
831
  object?: Partial<ILocale>;
@@ -888,4 +844,4 @@ interface BgsCoreProviderProps {
888
844
  }
889
845
  declare const BgsCoreProvider: ({ children, value: options }: PropsWithChildren<BgsCoreProviderProps>) => react_jsx_runtime.JSX.Element;
890
846
 
891
- export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, type ApiHelperBase, type ApiLoadState, type ApiMethod, type ApiMethodStream, type ApiMethodVoid, type ApiResponse, type ApiResponseStream, BREAKPOINT_ORDER, type BgsCoreProps, BgsCoreProvider, type BoundingSize, type BreakpointState, type CacheData, type CacheProps, type CallbackHelper, type CallbackStream, type Children, type ClientCallback, type CombinationType, type CreateDatabaseProps, type CreateElementProps, type CreateTableProps, type DataSource, type DataType, type DataTypeDateGroup, DataTypeEnum, type Depth, type EncryptedPayload, Expandable, type ExpandableContextData, Highlight, type HighlightProps, HttpMethod, type MappingDataReturn, type NestedKeyOf, type OptionsBoolean, type OptionsCallReturn, type OptionsDate, type OptionsHelper, type OptionsNumber, type OptionsNumberProps, type OptionsString, type PaginationMeta, type PathValue, type QueryApi, type QueryCondition, type QueryFilterOption, type QueryOperator, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, TAILWIND_SCREENS, type TailwindBreakpoint, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseFormattedOptions, type UseHelperProps, type UseScrollTriggerOptions, bindApi, capitalizeWords, createApiHelper, createDatabase, createElement, createStore, createTable, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, formatBoolean, formatDate, formatNumber, formatString, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, query, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useAnchorPosition, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCpuBusy, useCreateApi, useCrypto, useDbLive, useDbLiveFlag, useDebounce, useDelay, useDynamicSvgImport, useElementBounding, useExpandable, useFormatted, useInterval, useKeyPress, useLayoutReady, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
847
+ export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, type ApiHelperBase, type ApiLoadState, type ApiMethod, type ApiMethodStream, type ApiMethodVoid, type ApiResponse, type ApiResponseStream, type BgsCoreProps, BgsCoreProvider, type BoundingSize, type CacheData, type CacheProps, type CallbackHelper, type CallbackStream, type Children, type ClientCallback, type CombinationType, type CreateDatabaseProps, type CreateElementProps, type CreateTableProps, type DataSource, type DataType, type DataTypeDateGroup, DataTypeEnum, type Depth, type EncryptedPayload, Highlight, type HighlightProps, HttpMethod, type MappingDataReturn, type NestedKeyOf, type OptionsBoolean, type OptionsCallReturn, type OptionsDate, type OptionsHelper, type OptionsNumber, type OptionsNumberProps, type OptionsString, type PaginationMeta, type PathValue, type QueryApi, type QueryCondition, type QueryFilterOption, type QueryOperator, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseFormattedOptions, type UseHelperProps, type UseScrollTriggerOptions, bindApi, capitalizeWords, createApiHelper, createDatabase, createElement, createStore, createTable, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, formatBoolean, formatDate, formatNumber, formatString, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, query, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useAnchorPosition, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCpuBusy, useCreateApi, useCrypto, useDbLive, useDbLiveFlag, useDebounce, useDelay, useDynamicSvgImport, useElementBounding, useFormatted, useInterval, useKeyPress, useLayoutReady, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import pe,{createContext,useContext,useEffect,useCallback,useRef,useMemo,useState,useLayoutEffect,useSyncExternalStore}from'react';import I from'dayjs';import dt from'dayjs/plugin/utc';import mt from'dayjs/plugin/timezone';import yt from'dayjs/plugin/duration';import gt from'dayjs/plugin/advancedFormat';import Rt from'dayjs/plugin/localizedFormat';import bt from'dayjs/plugin/relativeTime';import ht from'dayjs/plugin/isSameOrBefore';import Tt from'dayjs/plugin/isSameOrAfter';import xt from'dayjs/plugin/weekOfYear';import Dt from'dayjs/plugin/customParseFormat';import {jsx,Fragment,jsxs}from'react/jsx-runtime';import Ke from'crypto-js/aes';import Fe from'crypto-js/pbkdf2';import qt from'crypto-js/enc-utf8';import ce from'crypto-js/enc-base64';import He from'crypto-js/lib-typedarrays';import {create}from'zustand';import {useShallow}from'zustand/react/shallow';import Yt from'axios';import yr,{liveQuery}from'dexie';import {createPortal}from'react-dom';I.extend(dt);I.extend(mt);I.extend(yt);I.extend(gt);I.extend(Rt);I.extend(bt);I.extend(ht);I.extend(Tt);I.extend(xt);I.extend(Dt);var B=I;function Yr(){let e=()=>Math.random()*16%16|0;return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>(t==="x"?e():e()&3|8).toString(16))}function Jr(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var Qr=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function Gr(e,t){let r=false;return e&&typeof e=="object"&&Array.isArray(e)&&(typeof t=="number"?e.length>t&&(r=true):r=true),r}function _(e){return !(e==null||typeof e=="string"&&e.trim()===""||Array.isArray(e)&&e.length===0||typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.keys(e).length===0)}var Ue={camelCase:(e="")=>(e=e.split(".").map(t=>(t=t.charAt(0).toUpperCase()+t.slice(1),t)).join(" "),e=e.replace(/([a-z0-9])([A-Z])/g,"$1 $2"),e.charAt(0).toUpperCase()+e.slice(1)),snackCase:(e="")=>{let r=e.replace(/_([a-z])/g,(n,s)=>s.toUpperCase()).replace(/([A-Z])/g," $1");return r=r.charAt(0).toUpperCase()+r.slice(1),r},changeAll:(e="",t=false)=>{let r="";try{e=e?.split(".")[e?.split(".")?.length-1],e=e?.split("[]")[e?.split("[]")?.length-1],r=Ue.snackCase(Ue.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function Xr(e,t){return typeof e=="function"?e(t):e}var L=(e,t,r)=>{if(!e)return r;if(e.hasOwnProperty(t))return e[t];let n=t.replace(/\[(\d+)\]/g,".$1").split("."),s=e;for(let a of n){if(s==null)return r;s=s[a];}return s===void 0?r:s},Zr={desc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let s=L(r,t)?L(r,t):"",a=L(n,t)?L(r,t):"";return s<a?1:-1}else return r<n?1:-1})),asc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let s=L(r,t)?L(r,t):"",a=L(n,t)?L(n,t):"";return s>a?1:-1}else return r>n?1:-1}))},en=(e,t)=>{Array.isArray(e)||(e=[]);let r=[];return r=e.map(n=>Number(t?L(n,t)||0:n||0)),r.reduce((n,s)=>(n||0)+(s||0),0)||0};function tn(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function Ct(e){let t=new WeakSet;return JSON.stringify(e,function(r,n){return n!==null&&typeof n=="object"?t.has(n)?void 0:(t.add(n),Object.keys(n).sort().reduce((s,a)=>(s[a]=n[a],s),{})):n})??""}function Le(e,t){return Ct([t??"undefined",e??"undefined"])}function Ne(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function rn(e,t=0){let r,n=function(...s){clearTimeout(r),r=setTimeout(()=>{e(...s);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var le=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function Re(e,t){let r=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e===t||e==="-"||e===`-${t}`||new RegExp(`^-?\\d+${r}$`).test(e)||new RegExp(`^-?${r}\\d*$`).test(e)}function At(e,t=false,r="."){if(typeof e=="number")return !Number.isNaN(e);if(typeof e=="string"&&e.trim()!==""){let n=e.trim(),s=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${s}\\d+)?|\\${s}\\d+)$`).test(n)||t&&Re(n,r))return true}return false}function $e(e="",t=false,r="."){if(!At(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),s=Number(n);return Number.isNaN(s)?null:s}var wt=new Set(["accessKey","className","contentEditable","contextMenu","dir","draggable","hidden","id","lang","spellCheck","style","tabIndex","title","translate","role","onClick","onFocus","onBlur","onKeyDown","onKeyUp","onMouseEnter","onMouseLeave","onMouseDown","onMouseUp","onTouchStart","onTouchEnd","onChange","onInput","children"]);function nn(e){let t={};for(let r in e)wt.has(r)&&(t[r]=e[r]);return t}function on(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function sn(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(B).sort((a,l)=>a.diff(l)),n=r[0].format("YYYY-MM-DD"),s=r.at(-1).format("YYYY-MM-DD");return [n,s]}function an(e,t){let r=B(e),n=B(t),s=r.month()===n.month(),a=r.year()===n.year();return a&&s?`${r.format("DD")} - ${n.format("DD")} ${r.format("MMM")} ${r.format("YYYY")}`:a?`${r.format("DD MMM")} - ${n.format("DD MMM")} ${r.format("YYYY")}`:`${r.format("DD MMM YYYY")} - ${n.format("DD MMM YYYY")}`}function ln(e,t){if(!e?.trim()||!t?.trim())return "";if(e===t)return "0";let r=B(e,"HH:mm",true),n=B(t,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let s=n.diff(r,"minutes");return s<=0&&(s+=24*60),s.toString()}var cn=(e=[],t="label",r="value",n,s=" | ")=>{if(!Array.isArray(e))return [[],[]];let a=e.map((i,c)=>{if(typeof i!="object"){let u=typeof t=="function"?t(i,c):i,R=typeof r=="function"?r(i,c):i;return {label:u,value:R,index:c,rowData:i}}else {let u=typeof t=="function"?t(i,c):L(i,t,""),R=typeof r=="function"?r(i,c):L(i,r,"");return {label:u,value:typeof R=="boolean"?R:R||"",index:c,rowData:i}}});if(!n)return [[{items:a}],a];let l=Array.isArray(n)?n:[n],o=new Map;for(let i of a){let c=i.rowData,u=l.map(f=>String(typeof c=="object"?L(c,f,"")??"":"")).join(s),R=o.get(u)||[];R.push(i),o.set(u,R);}return [Array.from(o.entries()).map(([i,c])=>({group:i,items:c})),a]};function St(e,t=""){let r=[];for(let n in e)if(e.hasOwnProperty(n)){let s=e[n],a=t?`${t}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!_(s))continue;Array.isArray(s)?s.forEach(l=>{r.push(`${a}=${encodeURIComponent(l)}`);}):typeof s=="object"&&s!==null?r.push(St(s,a)):r.push(`${a}=${encodeURIComponent(s)}`);}return r.join("&")}function Me(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=Me(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=Me(e[t]));return e}var Be=createContext(void 0);function z(){let e=useContext(Be);return e||{}}var Et=({children:e,value:t})=>{let r={...t};return useEffect(()=>{(async()=>{if(!(typeof window>"u")&&t.localeConfig){let{preset:s,object:a,isLocal:l}=t.localeConfig;if(typeof s=="string")try{await import(`dayjs/locale/${s}`);}catch{console.warn(`Locale "${s}" not found, fallback to default`);}s&&B.locale(s,a??{},l);}})();},[t.localeConfig]),jsx(Be.Provider,{value:r,children:e})};function be(e,t){let r=He.random(16),n=He.random(16),s=Fe(t,r,{keySize:256/32,iterations:1e3}),a=Ke.encrypt(JSON.stringify(e),s,{iv:n}).toString();return {salt:r.toString(ce),iv:n.toString(ce),encrypted:a}}function he(e,t){let{salt:r,iv:n,encrypted:s}=e,a=Fe(t,ce.parse(r),{keySize:256/32,iterations:1e3}),o=Ke.decrypt(s,a,{iv:ce.parse(n)}).toString(qt);return JSON.parse(o)}function je(e,t){return JSON.stringify(be(e,t))}function Ie(e,t){return he(JSON.parse(e),t)}function G(){let{passphrase:e}=z();return {passphrase:e,encrypt(t,r){return be(t,r||e)},decrypt(t,r){return he(t,r||e)},encryptString(t,r){return je(t,r||e)},decryptString(t,r){return Ie(t,r||e)}}}var _e=()=>{let{encrypt:e,decrypt:t}=G(),r=useCallback((l,o)=>{try{let i=e(o);localStorage.setItem(l,JSON.stringify(i));}catch(i){console.error("Failed to save to storage:",i);}},[e]),n=useCallback(l=>{try{let o=localStorage.getItem(l);return o?t(JSON.parse(o)):null}catch(o){return console.error("Failed to get from storage:",o),null}},[t]),s=l=>{let[o,i]=useState(()=>{try{let c=localStorage.getItem(l);return c?t(JSON.parse(c)):null}catch(c){return console.error("Failed to parse localStorage value",c),null}});return useEffect(()=>{let c=u=>{if(u.key===l)if(u.newValue)try{i(t(JSON.parse(u.newValue)));}catch(R){console.error("Decrypt error from storage event",R);}else i(null);};return window.addEventListener("storage",c),()=>window.removeEventListener("storage",c)},[l,t]),o},a=useCallback(l=>{l?localStorage.removeItem(l):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:s}};function Nt(e,t){for(let r in t){let n=e[r],s=t[r];if(r==="response"){let a=JSON.stringify(n),l=JSON.stringify(s);if(a!==l)return false}else if(n!==s)return false}return true}var te={loading:false,response:void 0,isCancel:false},re=create((e,t)=>({states:{},updateState:(r,n)=>{let s=t().states[r]??te,a={...s,...n};Nt(s,a)||e(l=>({states:{...l.states,[r]:a}}));}}));var xe=new Map,ze=(e,t)=>{xe.set(e,t);},Ve=e=>{xe.delete(e);},We=e=>xe.get(e);function Bt(...e){let[t,r,n]=e,s=t.__isVoid,a=t.__path||t.name,l=s?void 0:r,o=s?r:n,i=o?.storeName||`${a}`,c=o?.mergeStrategy??"replace",[u,R,f,C]=re(useShallow(w=>{let h=w.states[i]??te;return [h.loading,h.isCancel,h.response,w.updateState]})),{storageKey:P,cache:x,clearPreviousData:M,refetchOnWindowFocus:H}=z(),F=_e(),E=useRef(void 0),K=useRef(null),{cacheName:q,cacheKey:U,timeout:X,timeoutUnit:ae,persistence:ie,cacheEnabled:Z}=useMemo(()=>{let w=P?F.get(P):void 0,h=typeof o?.cache=="object"?o?.cache?.cacheName??a:a,T=Le({...l,session:w},typeof o?.cache=="object"?o?.cache?.cacheKey:void 0),g=false;typeof x?.enabled=="boolean"&&(g=x.enabled);let v=false;typeof x?.persistence=="boolean"&&(v=x?.persistence),typeof o?.cache=="object"&&typeof o?.cache?.persistence=="boolean"&&(v=o?.cache?.persistence??false);let S=60*5,N="s";return _(x?.timeout)&&(typeof x?.timeout=="number"?(S=x.timeout,N="s"):typeof x?.timeout=="object"&&(S=x?.timeout.value,N=x?.timeout.unit)),_(o?.cache)&&(typeof o?.cache!="boolean"?(typeof o?.cache?.enabled=="boolean"?g=o.cache.enabled:g=true,typeof o?.cache?.timeout=="number"?(S=o.cache.timeout,N="s"):typeof o?.cache?.timeout=="object"&&(S=o.cache.timeout.value,N=o.cache.timeout.unit)):g=o.cache),{cacheName:h,cacheKey:T,timeout:S,timeoutUnit:N,persistence:v,cacheEnabled:g}},[o?.cache,l,P,x,a]);useEffect(()=>{let w=JSON.stringify(_(E.current)?E.current:""),h=JSON.stringify(_(l)?l:""),T=E.current===void 0;(w!==h||T)&&!o?.hold&&((o?.clearPreviousData??M)&&C(i,{response:null}),A(),E.current=l),o?.onChange&&o?.onChange(l,d);},[l,o?.clearPreviousData,M,o?.hold,...o?.trigger||[]]),useEffect(()=>{let w=async()=>{!ie&&q&&U&&(await caches.open(q)).delete(U);};return window.addEventListener("beforeunload",w),()=>{window.removeEventListener("beforeunload",w),K.current?.abort();}},[ie,q,U,i,K]);let A=useCallback(async w=>{let h=l;if(o?.hold&&o?.logging&&console.log("Hold active"),o?.beforeRequest&&(h=o?.beforeRequest(l)),Z&&!w&&!R){o?.onBeforeRequest&&o?.onBeforeRequest(l);let T=await caches.open(q),v=await(await T.match(U))?.json();if(v){let{data:S,expired:N}=v;if(B().isAfter(N))await T.delete(U);else {o?.afterResponse&&S?.data&&(S.data=o?.afterResponse(S.data,h)),o?.logging&&console.log("After request: Using Cache",S),S?.status&&o?.onSuccess?.(S,h),o?.onAfterResponse?.(S,h),C(i,{loading:false,response:S});return}}}if(typeof t=="function"){K.current?.abort();let T=new AbortController;K.current=T,C(i,{loading:true}),o?.logging&&console.log("Before request",l),o?.onBeforeRequest&&o?.onBeforeRequest(l);let g=s?await t(void 0,{...o,signal:T.signal}):await t(h,void 0,{...o,signal:T.signal});if(g.__rawData=g.data,c==="append"&&_(f.__rawData)&&_(g?.data)){if(Array.isArray(f.__rawData)&&Array.isArray(g?.data)){let v=[...f?.__rawData??[],...g.data??[]];g.data=v,g.__rawData=v;}else if(typeof f.__rawData=="object"&&typeof g.data=="object"){let v={...f.__rawData,...g.data};g.data=v,g.__rawData=v;}}if(o?.afterResponse&&g?.data&&(g.data=o?.afterResponse(g.data,h)),o?.logging&&console.log("After request",g),g.status&&o?.onSuccess?.(g,h),g.status||o?.onError?.(g,h),o?.onAfterResponse?.(g,h),C(i,{loading:false,response:g,isCancel:false}),Z&&g.status){let v=B().add(X,ae).toISOString(),S={data:g,expired:v},N=await caches.open(q),W=new Response(JSON.stringify(S));await N.put(U,W);}}},[l,t,o,R,q,U,X,ae,Z,f]);useEffect(()=>{if(o?.refreshInterval){let w=typeof o.refreshInterval=="number"?o.refreshInterval:o.refreshInterval.value,h=typeof o.refreshInterval=="number"?"s":o.refreshInterval.unit,T=setInterval(()=>{A();},B.duration(w,h).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[o?.refreshInterval,A]);let y=useRef(null),{enabledRefetch:b,timeoutRefetch:p,timeoutUnitRefetch:D}=useMemo(()=>{let w=o?.refetchOnWindowFocus?.enabled??H?.enabled??false,h=o?.refetchOnWindowFocus?.timeout??H?.timeout,T=typeof h=="number"?h:h?.value??60*5,g=typeof h=="object"?h.unit:"s";return {enabledRefetch:w,timeoutRefetch:T,timeoutUnitRefetch:g}},[o?.refetchOnWindowFocus,H]);useEffect(()=>{if(!b||o?.hold)return;let w=B.duration(p,D).asMilliseconds(),h=()=>{let g=Date.now(),v=y.current;v!==null&&g-v>=w&&A(),y.current=null;},T=()=>{y.current=Date.now();};return window.addEventListener("focus",h),window.addEventListener("blur",T),()=>{window.removeEventListener("focus",h),window.removeEventListener("blur",T);}},[b,p,D,A,o?.hold]);let m=useCallback(()=>{K.current?.abort(),K.current=null,C(i,{loading:false,isCancel:true});},[i,K]),O=useCallback(()=>{C(i,{loading:false,response:null});},[i]),d=useMemo(()=>({...f,loading:u,refresh:A,abort:m,clear:O,response:f,isCancel:R,clone:(w,h)=>Bt(t,w,{storeName:`${a}-clone`,...h})}),[f,u,A,m,O,R,t]);return useEffect(()=>(ze(i,d),()=>{Ve(i);}),[d,i]),[f?.data,d]}async function Fn(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var Ht=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(Ht||{}),Kt=(A=>(A.number="number",A.currency="currency",A.percent="percent",A.date="date",A.dateTime="dateTime",A.month="month",A.year="year",A.time="time",A.timestamp="timestamp",A.string="string",A.textarea="textarea",A.code="code",A.password="password",A.boolean="boolean",A.toggle="toggle",A.email="email",A.phone="phone",A.url="url",A.json="json",A.file="file",A.image="image",A.array="array",A.object="object",A.enum="enum",A.user="user",A.department="department",A.status="status",A))(Kt||{});var Wn=()=>{let{format:e}=z();return (t,r,n)=>{try{return r==="number"?It(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(s=>s===r)?_t(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?Ft(t,n):r==="string"?jt(t,n):t?.toString()}catch{return}}};function Ft(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",s=t?.falseLabel??"No";return r?n:s}function jt(e,t){if(!_(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=Ne(r);break;case "uppercase":r=r.toUpperCase();break;case "lowercase":r=r.toLowerCase();break}return t?.ellipsis&&r.length>t.ellipsis&&(r=r.slice(0,t.ellipsis)+"..."),r}function It(e,{thouSep:t,decSep:r,decDigits:n,method:s,dirty:a}){if(a){let R=String(e??"").trim().trim();if(Re(R,r))return R}if(e==null||isNaN(Number(e)))return "";let l=typeof e=="string"?parseFloat(e):e;if(s)if(typeof n=="number"){let u=Math.pow(10,n);l=Math[s](l*u)/u;}else l=Math[s](l);else if(typeof n=="number"){let u=Math.pow(10,n);l=Math.trunc(l*u)/u;}let o=0;if(n==="auto"){let u=l.toString(),R=u.indexOf(".");R!==-1&&(o=u.length-R-1);}let i={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?o:n||0,maximumFractionDigits:n==="auto"?o:n||0,minimumIntegerDigits:1};return l.toLocaleString("en-US",i).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,t)}function _t(e,{display:t,value:r}){if(!_(e))return e;let n=B(e,r);return n.isValid()?n.format(t):e}function Qn(e,{interval:t,lead:r}){let n=useRef(null);useEffect(()=>{n.current=e;},[e]),useEffect(()=>{let s=()=>n.current();if(r&&s(),t!==null){let a=setInterval(s,t);return ()=>clearInterval(a)}},[t]);}function Zn(e,t,r){let[n,s]=useState(false),a=(c,u)=>typeof e=="string"&&c===e||typeof e=="number"&&u===e,l=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),o=c=>{let{key:u,keyCode:R}=c,f=c.ctrlKey,C=c.altKey,P=c.shiftKey;if(!l(document.activeElement))if(t)if(typeof t=="string")a(u,R)&&(t==="ctrl"&&f||t==="alt"&&C||t==="shift"&&P)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));else {let x=t.every(M=>M==="ctrl"?f:M==="alt"?C:M==="shift"?P:false);a(u,R)&&x&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));}else a(u,R)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));},i=({key:c,keyCode:u})=>{a(c,u)&&s(false);};return useEffect(()=>(window.addEventListener("keydown",o),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",o),window.removeEventListener("keyup",i);}),[]),n}var io=({url:e,token:t,beforeRequest:r,onCallback:n,headers:s,onUnauthorized:a,handleToast:l,handleAuthorization:o,disabledToastWhenCancel:i,withCredentials:c,encryptRequest:u,encryptResponse:R,passphrase:f})=>{let{encrypt:C,decrypt:P,passphrase:x}=G(),M=Yt.create({baseURL:`${e}`,headers:{"Content-Type":"application/json",...s}}),H=(y,b,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,d=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:R)&&d){let S=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?x:p.passphrase:f;try{d=P(d,S);}catch{try{d=P(d,x);}catch{}}}let T={...n({...y,data:d,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:i,v=o?o(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&l&&(!m||!g)&&l(T),!v&&(!m||!p?.disabledHandleUnauthorized)){let S=p?.onUnauthorized||a;S&&S(T);}if(typeof b=="function")b(T);else return T},F=(y,b=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:c}).then(b).catch(p=>b(p.response,p)),E=(y,b,p,D,m)=>{let d={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},w={...d.headers};if(d.token&&(typeof d.token=="boolean"?t&&(w.Authorization=`Bearer ${t}`):d.token&&(w.Authorization=`Bearer ${d.token}`)),r&&(p=r(p)),(typeof d?.encryptRequest=="boolean"?d?.encryptRequest:u)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:f;p=C(p,T);}return F({url:b,method:y,data:p,headers:w,responseType:d.responseType,signal:d.signal,withCredentials:d.withCredentials,onUploadProgress:T=>{d?.onUploadProgress&&d?.onUploadProgress(T);}},(T,g)=>H(T,D,d,g))};return {client:F,post:(y,b,p,D)=>E("POST",`${y}`,b,p,D),put:(y,b,p,D)=>E("PUT",`${y}`,b,p,D),patch:(y,b,p,D)=>E("PATCH",`${y}`,b,p,D),delete:(y,b,p)=>E("DELETE",`${y}`,null,b,p),get:(y,b,p)=>E("GET",`${y}`,null,b,p),upload:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,b,p,D,m)=>{try{let d={...{token:!0,responseType:"json",infoError:!0},...m},w={"Content-Type":"application/json",...s,...d.headers};if(d.token){let k=typeof d.token=="boolean"?t:d.token;k&&(w.Authorization=`Bearer ${k}`);}let h=p;if(r&&(h=r(h)),(typeof d.encryptRequest=="boolean"?d.encryptRequest:u)&&h){let k=d.passphrase?typeof d.passphrase=="boolean"&&d.passphrase?x:d.passphrase:f;h=C(h,k);}let g=await fetch(`${e}${b}`,{method:y,headers:w,credentials:d.withCredentials?"include":"same-origin",signal:d.signal,body:JSON.stringify(h)}),v=g?.status,S=v===401;if(!g.ok){let k=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",$=await g.clone().text();if($)if(V.includes("application/json"))try{let Q=JSON.parse($);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:R)&&p){let ge=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:f;try{p=P(Q,ge);}catch{try{p=P(Q,x);}catch{}}}k=Q?.message||k;}catch{k=$;}else k=$;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:i,j={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0};m?.infoError&&l&&!J&&l(j),D(j);return}let N=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:k,value:J}=await N.read();ee=k,Y+=W.decode(J,{stream:!0});let j=Y.split(`
1
+ import le,{createContext,useContext,useEffect,useCallback,useRef,useMemo,useState,useLayoutEffect,useSyncExternalStore}from'react';import I from'dayjs';import Xe from'dayjs/plugin/utc';import Ze from'dayjs/plugin/timezone';import et from'dayjs/plugin/duration';import tt from'dayjs/plugin/advancedFormat';import rt from'dayjs/plugin/localizedFormat';import nt from'dayjs/plugin/relativeTime';import ot from'dayjs/plugin/isSameOrBefore';import st from'dayjs/plugin/isSameOrAfter';import at from'dayjs/plugin/weekOfYear';import it from'dayjs/plugin/customParseFormat';import {jsx,Fragment}from'react/jsx-runtime';import Ee from'crypto-js/aes';import Ne from'crypto-js/pbkdf2';import Rt from'crypto-js/enc-utf8';import ie from'crypto-js/enc-base64';import ke from'crypto-js/lib-typedarrays';import {create}from'zustand';import {useShallow}from'zustand/react/shallow';import Et from'axios';import er,{liveQuery}from'dexie';I.extend(Xe);I.extend(Ze);I.extend(et);I.extend(tt);I.extend(rt);I.extend(nt);I.extend(ot);I.extend(st);I.extend(at);I.extend(it);var H=I;function xr(){let t=()=>Math.random()*16%16|0;return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>(e==="x"?t():t()&3|8).toString(16))}function Cr(t,e){try{return JSON.stringify(t)!==JSON.stringify(e)}catch{return false}}var Ar=t=>(Object.keys(t).forEach(e=>{t[e]===void 0&&(t[e]=null);}),t);function Sr(t,e){let r=false;return t&&typeof t=="object"&&Array.isArray(t)&&(typeof e=="number"?t.length>e&&(r=true):r=true),r}function z(t){return !(t==null||typeof t=="string"&&t.trim()===""||Array.isArray(t)&&t.length===0||typeof t=="object"&&t!==null&&!Array.isArray(t)&&Object.keys(t).length===0)}var we={camelCase:(t="")=>(t=t.split(".").map(e=>(e=e.charAt(0).toUpperCase()+e.slice(1),e)).join(" "),t=t.replace(/([a-z0-9])([A-Z])/g,"$1 $2"),t.charAt(0).toUpperCase()+t.slice(1)),snackCase:(t="")=>{let r=t.replace(/_([a-z])/g,(n,s)=>s.toUpperCase()).replace(/([A-Z])/g," $1");return r=r.charAt(0).toUpperCase()+r.slice(1),r},changeAll:(t="",e=false)=>{let r="";try{t=t?.split(".")[t?.split(".")?.length-1],t=t?.split("[]")[t?.split("[]")?.length-1],r=we.snackCase(we.camelCase(t)),e&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function wr(t,e){return typeof t=="function"?t(e):t}var N=(t,e,r)=>{if(!t)return r;if(t.hasOwnProperty(e))return t[e];let n=e.replace(/\[(\d+)\]/g,".$1").split("."),s=t;for(let a of n){if(s==null)return r;s=s[a];}return s===void 0?r:s},Or={desc:(t,e)=>(t||(t=[]),t.sort((r,n)=>{if(e){let s=N(r,e)?N(r,e):"",a=N(n,e)?N(r,e):"";return s<a?1:-1}else return r<n?1:-1})),asc:(t,e)=>(t||(t=[]),t.sort((r,n)=>{if(e){let s=N(r,e)?N(r,e):"",a=N(n,e)?N(n,e):"";return s>a?1:-1}else return r>n?1:-1}))},Pr=(t,e)=>{Array.isArray(t)||(t=[]);let r=[];return r=t.map(n=>Number(e?N(n,e)||0:n||0)),r.reduce((n,s)=>(n||0)+(s||0),0)||0};function qr(t){try{return t&&JSON.parse(JSON.stringify(t))}catch{return t}}function lt(t){let e=new WeakSet;return JSON.stringify(t,function(r,n){return n!==null&&typeof n=="object"?e.has(n)?void 0:(e.add(n),Object.keys(n).sort().reduce((s,a)=>(s[a]=n[a],s),{})):n})??""}function Pe(t,e){return lt([e??"undefined",t??"undefined"])}function qe(t=""){return typeof t!="string"&&(t=""),t.replace(/\b\w/g,e=>e.toUpperCase())}function vr(t,e=0){let r,n=function(...s){clearTimeout(r),r=setTimeout(()=>{t(...s);},e*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var ae=t=>{let e=t.match(/^data:\s*(.*)/s);if(e)try{return JSON.parse(e[1])}catch{return null}return null};function fe(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return t===e||t==="-"||t===`-${e}`||new RegExp(`^-?\\d+${r}$`).test(t)||new RegExp(`^-?${r}\\d*$`).test(t)}function ct(t,e=false,r="."){if(typeof t=="number")return !Number.isNaN(t);if(typeof t=="string"&&t.trim()!==""){let n=t.trim(),s=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${s}\\d+)?|\\${s}\\d+)$`).test(n)||e&&fe(n,r))return true}return false}function ve(t="",e=false,r="."){if(!ct(t,!e,r))return null;let n=r==="."?t.trim():t.trim().replace(r,"."),s=Number(n);return Number.isNaN(s)?null:s}var pt=new Set(["accessKey","className","contentEditable","contextMenu","dir","draggable","hidden","id","lang","spellCheck","style","tabIndex","title","translate","role","onClick","onFocus","onBlur","onKeyDown","onKeyUp","onMouseEnter","onMouseLeave","onMouseDown","onMouseUp","onTouchStart","onTouchEnd","onChange","onInput","children"]);function Ur(t){let e={};for(let r in t)pt.has(r)&&(e[r]=t[r]);return e}function kr(t,e=2){return t?t.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,e).join(""):""}function Er(t=[]){let e=t.filter(Boolean);if(e.length===0)return ["",""];let r=e.map(H).sort((a,l)=>a.diff(l)),n=r[0].format("YYYY-MM-DD"),s=r.at(-1).format("YYYY-MM-DD");return [n,s]}function Nr(t,e){let r=H(t),n=H(e),s=r.month()===n.month(),a=r.year()===n.year();return a&&s?`${r.format("DD")} - ${n.format("DD")} ${r.format("MMM")} ${r.format("YYYY")}`:a?`${r.format("DD MMM")} - ${n.format("DD MMM")} ${r.format("YYYY")}`:`${r.format("DD MMM YYYY")} - ${n.format("DD MMM YYYY")}`}function Mr(t,e){if(!t?.trim()||!e?.trim())return "";if(t===e)return "0";let r=H(t,"HH:mm",true),n=H(e,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let s=n.diff(r,"minutes");return s<=0&&(s+=24*60),s.toString()}var $r=(t=[],e="label",r="value",n,s=" | ")=>{if(!Array.isArray(t))return [[],[]];let a=t.map((i,c)=>{if(typeof i!="object"){let u=typeof e=="function"?e(i,c):i,h=typeof r=="function"?r(i,c):i;return {label:u,value:h,index:c,rowData:i}}else {let u=typeof e=="function"?e(i,c):N(i,e,""),h=typeof r=="function"?r(i,c):N(i,r,"");return {label:u,value:typeof h=="boolean"?h:h||"",index:c,rowData:i}}});if(!n)return [[{items:a}],a];let l=Array.isArray(n)?n:[n],o=new Map;for(let i of a){let c=i.rowData,u=l.map(d=>String(typeof c=="object"?N(c,d,"")??"":"")).join(s),h=o.get(u)||[];h.push(i),o.set(u,h);}return [Array.from(o.entries()).map(([i,c])=>({group:i,items:c})),a]};function ut(t,e=""){let r=[];for(let n in t)if(t.hasOwnProperty(n)){let s=t[n],a=e?`${e}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!z(s))continue;Array.isArray(s)?s.forEach(l=>{r.push(`${a}=${encodeURIComponent(l)}`);}):typeof s=="object"&&s!==null?r.push(ut(s,a)):r.push(`${a}=${encodeURIComponent(s)}`);}return r.join("&")}function Oe(t){if(t==="null")return null;if(Array.isArray(t))for(let e=0;e<t.length;e++)t[e]=Oe(t[e]);else if(t&&typeof t=="object")for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=Oe(t[e]));return t}var Ue=createContext(void 0);function _(){let t=useContext(Ue);return t||{}}var yt=({children:t,value:e})=>{let r={...e};return useEffect(()=>{(async()=>{if(!(typeof window>"u")&&e.localeConfig){let{preset:s,object:a,isLocal:l}=e.localeConfig;if(typeof s=="string")try{await import(`dayjs/locale/${s}`);}catch{console.warn(`Locale "${s}" not found, fallback to default`);}s&&H.locale(s,a??{},l);}})();},[e.localeConfig]),jsx(Ue.Provider,{value:r,children:t})};function de(t,e){let r=ke.random(16),n=ke.random(16),s=Ne(e,r,{keySize:256/32,iterations:1e3}),a=Ee.encrypt(JSON.stringify(t),s,{iv:n}).toString();return {salt:r.toString(ie),iv:n.toString(ie),encrypted:a}}function me(t,e){let{salt:r,iv:n,encrypted:s}=t,a=Ne(e,ie.parse(r),{keySize:256/32,iterations:1e3}),o=Ee.decrypt(s,a,{iv:ie.parse(n)}).toString(Rt);return JSON.parse(o)}function Me(t,e){return JSON.stringify(de(t,e))}function $e(t,e){return me(JSON.parse(t),e)}function G(){let{passphrase:t}=_();return {passphrase:t,encrypt(e,r){return de(e,r||t)},decrypt(e,r){return me(e,r||t)},encryptString(e,r){return Me(e,r||t)},decryptString(e,r){return $e(e,r||t)}}}var Le=()=>{let{encrypt:t,decrypt:e}=G(),r=useCallback((l,o)=>{try{let i=t(o);localStorage.setItem(l,JSON.stringify(i));}catch(i){console.error("Failed to save to storage:",i);}},[t]),n=useCallback(l=>{try{let o=localStorage.getItem(l);return o?e(JSON.parse(o)):null}catch(o){return console.error("Failed to get from storage:",o),null}},[e]),s=l=>{let[o,i]=useState(()=>{try{let c=localStorage.getItem(l);return c?e(JSON.parse(c)):null}catch(c){return console.error("Failed to parse localStorage value",c),null}});return useEffect(()=>{let c=u=>{if(u.key===l)if(u.newValue)try{i(e(JSON.parse(u.newValue)));}catch(h){console.error("Decrypt error from storage event",h);}else i(null);};return window.addEventListener("storage",c),()=>window.removeEventListener("storage",c)},[l,e]),o},a=useCallback(l=>{l?localStorage.removeItem(l):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:s}};function Dt(t,e){for(let r in e){let n=t[r],s=e[r];if(r==="response"){let a=JSON.stringify(n),l=JSON.stringify(s);if(a!==l)return false}else if(n!==s)return false}return true}var te={loading:false,response:void 0,isCancel:false},re=create((t,e)=>({states:{},updateState:(r,n)=>{let s=e().states[r]??te,a={...s,...n};Dt(s,a)||t(l=>({states:{...l.states,[r]:a}}));}}));var ge=new Map,He=(t,e)=>{ge.set(t,e);},Fe=t=>{ge.delete(t);},Ke=t=>ge.get(t);function Ct(...t){let[e,r,n]=t,s=e.__isVoid,a=e.__path||e.name,l=s?void 0:r,o=s?r:n,i=o?.storeName||`${a}`,c=o?.mergeStrategy??"replace",[u,h,d,C]=re(useShallow(S=>{let b=S.states[i]??te;return [b.loading,b.isCancel,b.response,S.updateState]})),{storageKey:q,cache:x,clearPreviousData:M,refetchOnWindowFocus:F}=_(),B=Le(),U=useRef(void 0),K=useRef(null),{cacheName:k,cacheKey:E,timeout:X,timeoutUnit:oe,persistence:se,cacheEnabled:Z}=useMemo(()=>{let S=q?B.get(q):void 0,b=typeof o?.cache=="object"?o?.cache?.cacheName??a:a,T=Pe({...l,session:S},typeof o?.cache=="object"?o?.cache?.cacheKey:void 0),g=false;typeof x?.enabled=="boolean"&&(g=x.enabled);let P=false;typeof x?.persistence=="boolean"&&(P=x?.persistence),typeof o?.cache=="object"&&typeof o?.cache?.persistence=="boolean"&&(P=o?.cache?.persistence??false);let w=60*5,$="s";return z(x?.timeout)&&(typeof x?.timeout=="number"?(w=x.timeout,$="s"):typeof x?.timeout=="object"&&(w=x?.timeout.value,$=x?.timeout.unit)),z(o?.cache)&&(typeof o?.cache!="boolean"?(typeof o?.cache?.enabled=="boolean"?g=o.cache.enabled:g=true,typeof o?.cache?.timeout=="number"?(w=o.cache.timeout,$="s"):typeof o?.cache?.timeout=="object"&&(w=o.cache.timeout.value,$=o.cache.timeout.unit)):g=o.cache),{cacheName:b,cacheKey:T,timeout:w,timeoutUnit:$,persistence:P,cacheEnabled:g}},[o?.cache,l,q,x,a]);useEffect(()=>{let S=JSON.stringify(z(U.current)?U.current:""),b=JSON.stringify(z(l)?l:""),T=U.current===void 0;(S!==b||T)&&!o?.hold&&((o?.clearPreviousData??M)&&C(i,{response:null}),A(),U.current=l),o?.onChange&&o?.onChange(l,f);},[l,o?.clearPreviousData,M,o?.hold,...o?.trigger||[]]),useEffect(()=>{let S=async()=>{!se&&k&&E&&(await caches.open(k)).delete(E);};return window.addEventListener("beforeunload",S),()=>{window.removeEventListener("beforeunload",S),K.current?.abort();}},[se,k,E,i,K]);let A=useCallback(async S=>{let b=l;if(o?.hold&&o?.logging&&console.log("Hold active"),o?.beforeRequest&&(b=o?.beforeRequest(l)),Z&&!S&&!h){o?.onBeforeRequest&&o?.onBeforeRequest(l);let T=await caches.open(k),P=await(await T.match(E))?.json();if(P){let{data:w,expired:$}=P;if(H().isAfter($))await T.delete(E);else {o?.afterResponse&&w?.data&&(w.data=o?.afterResponse(w.data,b)),o?.logging&&console.log("After request: Using Cache",w),w?.status&&o?.onSuccess?.(w,b),o?.onAfterResponse?.(w,b),C(i,{loading:false,response:w});return}}}if(typeof e=="function"){K.current?.abort();let T=new AbortController;K.current=T,C(i,{loading:true}),o?.logging&&console.log("Before request",l),o?.onBeforeRequest&&o?.onBeforeRequest(l);let g=s?await e(void 0,{...o,signal:T.signal}):await e(b,void 0,{...o,signal:T.signal});if(g.__rawData=g.data,c==="append"&&z(d.__rawData)&&z(g?.data)){if(Array.isArray(d.__rawData)&&Array.isArray(g?.data)){let P=[...d?.__rawData??[],...g.data??[]];g.data=P,g.__rawData=P;}else if(typeof d.__rawData=="object"&&typeof g.data=="object"){let P={...d.__rawData,...g.data};g.data=P,g.__rawData=P;}}if(o?.afterResponse&&g?.data&&(g.data=o?.afterResponse(g.data,b)),o?.logging&&console.log("After request",g),g.status&&o?.onSuccess?.(g,b),g.status||o?.onError?.(g,b),o?.onAfterResponse?.(g,b),C(i,{loading:false,response:g,isCancel:false}),Z&&g.status){let P=H().add(X,oe).toISOString(),w={data:g,expired:P},$=await caches.open(k),W=new Response(JSON.stringify(w));await $.put(E,W);}}},[l,e,o,h,k,E,X,oe,Z,d]);useEffect(()=>{if(o?.refreshInterval){let S=typeof o.refreshInterval=="number"?o.refreshInterval:o.refreshInterval.value,b=typeof o.refreshInterval=="number"?"s":o.refreshInterval.unit,T=setInterval(()=>{A();},H.duration(S,b).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[o?.refreshInterval,A]);let y=useRef(null),{enabledRefetch:R,timeoutRefetch:p,timeoutUnitRefetch:D}=useMemo(()=>{let S=o?.refetchOnWindowFocus?.enabled??F?.enabled??false,b=o?.refetchOnWindowFocus?.timeout??F?.timeout,T=typeof b=="number"?b:b?.value??60*5,g=typeof b=="object"?b.unit:"s";return {enabledRefetch:S,timeoutRefetch:T,timeoutUnitRefetch:g}},[o?.refetchOnWindowFocus,F]);useEffect(()=>{if(!R||o?.hold)return;let S=H.duration(p,D).asMilliseconds(),b=()=>{let g=Date.now(),P=y.current;P!==null&&g-P>=S&&A(),y.current=null;},T=()=>{y.current=Date.now();};return window.addEventListener("focus",b),window.addEventListener("blur",T),()=>{window.removeEventListener("focus",b),window.removeEventListener("blur",T);}},[R,p,D,A,o?.hold]);let m=useCallback(()=>{K.current?.abort(),K.current=null,C(i,{loading:false,isCancel:true});},[i,K]),O=useCallback(()=>{C(i,{loading:false,response:null});},[i]),f=useMemo(()=>({...d,loading:u,refresh:A,abort:m,clear:O,response:d,isCancel:h,clone:(S,b)=>Ct(e,S,{storeName:`${a}-clone`,...b})}),[d,u,A,m,O,h,e]);return useEffect(()=>(He(i,f),()=>{Fe(i);}),[f,i]),[d?.data,f]}async function yn(t,e=()=>{}){let r=t*1e3;return new Promise(n=>{setInterval(()=>{e();},1e3);setTimeout(async()=>{await e(),n(true);},r);})}var At=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(At||{}),St=(A=>(A.number="number",A.currency="currency",A.percent="percent",A.date="date",A.dateTime="dateTime",A.month="month",A.year="year",A.time="time",A.timestamp="timestamp",A.string="string",A.textarea="textarea",A.code="code",A.password="password",A.boolean="boolean",A.toggle="toggle",A.email="email",A.phone="phone",A.url="url",A.json="json",A.file="file",A.image="image",A.array="array",A.object="object",A.enum="enum",A.user="user",A.department="department",A.status="status",A))(St||{});var Dn=()=>{let{format:t}=_();return (e,r,n)=>{try{return r==="number"?Pt(e,{thouSep:t.number.thouSep,decDigits:t.number.decDigits,decSep:t.number.decSep,...n}):["date","dateTime","month","year","time"].some(s=>s===r)?qt(e,{display:t[r]?.display,value:t[r]?.value,...n}):r==="boolean"?wt(e,n):r==="string"?Ot(e,n):e?.toString()}catch{return}}};function wt(t,e){let r=typeof t=="string"?t==="true":!!t,n=e?.trueLabel??"Yes",s=e?.falseLabel??"No";return r?n:s}function Ot(t,e){if(!z(t))return "";let r=String(t);switch(e?.textTransform){case "capitalize":r=qe(r);break;case "uppercase":r=r.toUpperCase();break;case "lowercase":r=r.toLowerCase();break}return e?.ellipsis&&r.length>e.ellipsis&&(r=r.slice(0,e.ellipsis)+"..."),r}function Pt(t,{thouSep:e,decSep:r,decDigits:n,method:s,dirty:a}){if(a){let h=String(t??"").trim().trim();if(fe(h,r))return h}if(t==null||isNaN(Number(t)))return "";let l=typeof t=="string"?parseFloat(t):t;if(s)if(typeof n=="number"){let u=Math.pow(10,n);l=Math[s](l*u)/u;}else l=Math[s](l);else if(typeof n=="number"){let u=Math.pow(10,n);l=Math.trunc(l*u)/u;}let o=0;if(n==="auto"){let u=l.toString(),h=u.indexOf(".");h!==-1&&(o=u.length-h-1);}let i={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?o:n||0,maximumFractionDigits:n==="auto"?o:n||0,minimumIntegerDigits:1};return l.toLocaleString("en-US",i).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,e)}function qt(t,{display:e,value:r}){if(!z(t))return t;let n=H(t,r);return n.isValid()?n.format(e):t}function An(t,{interval:e,lead:r}){let n=useRef(null);useEffect(()=>{n.current=t;},[t]),useEffect(()=>{let s=()=>n.current();if(r&&s(),e!==null){let a=setInterval(s,e);return ()=>clearInterval(a)}},[e]);}function On(t,e,r){let[n,s]=useState(false),a=(c,u)=>typeof t=="string"&&c===t||typeof t=="number"&&u===t,l=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),o=c=>{let{key:u,keyCode:h}=c,d=c.ctrlKey,C=c.altKey,q=c.shiftKey;if(!l(document.activeElement))if(e)if(typeof e=="string")a(u,h)&&(e==="ctrl"&&d||e==="alt"&&C||e==="shift"&&q)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));else {let x=e.every(M=>M==="ctrl"?d:M==="alt"?C:M==="shift"?q:false);a(u,h)&&x&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));}else a(u,h)&&(c.preventDefault(),r&&c.stopPropagation(),s(!n));},i=({key:c,keyCode:u})=>{a(c,u)&&s(false);};return useEffect(()=>(window.addEventListener("keydown",o),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",o),window.removeEventListener("keyup",i);}),[]),n}var Mn=({url:t,token:e,beforeRequest:r,onCallback:n,headers:s,onUnauthorized:a,handleToast:l,handleAuthorization:o,disabledToastWhenCancel:i,withCredentials:c,encryptRequest:u,encryptResponse:h,passphrase:d})=>{let{encrypt:C,decrypt:q,passphrase:x}=G(),M=Et.create({baseURL:`${t}`,headers:{"Content-Type":"application/json",...s}}),F=(y,R,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,f=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:h)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?x:p.passphrase:d;try{f=q(f,w);}catch{try{f=q(f,x);}catch{}}}let T={...n({...y,data:f,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:i,P=o?o(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&l&&(!m||!g)&&l(T),!P&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||a;w&&w(T);}if(typeof R=="function")R(T);else return T},B=(y,R=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:c}).then(R).catch(p=>R(p.response,p)),U=(y,R,p,D,m)=>{let f={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},S={...f.headers};if(f.token&&(typeof f.token=="boolean"?e&&(S.Authorization=`Bearer ${e}`):f.token&&(S.Authorization=`Bearer ${f.token}`)),r&&(p=r(p)),(typeof f?.encryptRequest=="boolean"?f?.encryptRequest:u)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:d;p=C(p,T);}return B({url:R,method:y,data:p,headers:S,responseType:f.responseType,signal:f.signal,withCredentials:f.withCredentials,onUploadProgress:T=>{f?.onUploadProgress&&f?.onUploadProgress(T);}},(T,g)=>F(T,D,f,g))};return {client:B,post:(y,R,p,D)=>U("POST",`${y}`,R,p,D),put:(y,R,p,D)=>U("PUT",`${y}`,R,p,D),patch:(y,R,p,D)=>U("PATCH",`${y}`,R,p,D),delete:(y,R,p)=>U("DELETE",`${y}`,null,R,p),get:(y,R,p)=>U("GET",`${y}`,null,R,p),upload:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,R,p,D,m)=>{try{let f={...{token:!0,responseType:"json",infoError:!0},...m},S={"Content-Type":"application/json",...s,...f.headers};if(f.token){let v=typeof f.token=="boolean"?e:f.token;v&&(S.Authorization=`Bearer ${v}`);}let b=p;if(r&&(b=r(b)),(typeof f.encryptRequest=="boolean"?f.encryptRequest:u)&&b){let v=f.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?x:f.passphrase:d;b=C(b,v);}let g=await fetch(`${t}${R}`,{method:y,headers:S,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(b)}),P=g?.status,w=P===401;if(!g.ok){let v=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(V.includes("application/json"))try{let Q=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:h)&&p){let ue=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:d;try{p=q(Q,ue);}catch{try{p=q(Q,x);}catch{}}}v=Q?.message||v;}catch{v=L;}else v=L;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:i,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0};m?.infoError&&l&&!J&&l(j),D(j);return}let $=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:v,value:J}=await $.read();ee=v,Y+=W.decode(J,{stream:!0});let j=Y.split(`
2
2
 
3
- `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let $=le(V);D({status:!0,data:$,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0});}catch(O){let d=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:d,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}};function po(e,t){let[r,n]=useState(false),[s,a]=useState(),[l,o]=useState(0),i=useRef(null);return useEffect(()=>{if(t?.abortOnUnmount)return ()=>{i.current?.abort();}},[]),[async f=>{i.current?.abort();let C=new AbortController;i.current=C,n(true),t?.beforeRequest&&(f=t?.beforeRequest(f)),t?.logging&&console.log("Before request",f),t?.onBeforeRequest&&t?.onBeforeRequest(f);let P={...t,signal:C.signal,onUploadProgress:M=>{let H=Math.round(M.loaded*100/(M.total||1));o(H);}},x=e.__isVoid?await e(void 0,P):await e(f,void 0,P);t?.logging&&console.log("After response",x),a(x),n(false),o(0),t?.afterResponse&&x?.data&&(x.data=t?.afterResponse(x.data,f)),x.status&&t?.onSuccess&&t?.onSuccess(x,f),!x.status&&t?.onError&&t?.onError(x,f),t?.onAfterResponse?.(x,f);},{...s,loading:r,abort:()=>{i.current?.abort(),i.current=null,n(false),o(0);},progress:l,reset:()=>{n(false),o(0),a(null);}}]}function Gt(e,t){let{disableHysteresis:r=false,threshold:n=100,target:s}=t,a=e.current;return s&&(typeof s.pageYOffset=="number"?e.current=s.pageYOffset:s.scrollTop!==void 0&&(e.current=s.scrollTop)),!r&&a!==void 0&&e.current<a?false:(e.current||0)>n}var Xt=typeof window<"u"?window:null;function mo(e={}){let{getTrigger:t=Gt,target:r=Xt,disableHysteresis:n=false,threshold:s=100}=e,a=pe.useRef(0),[l,o]=pe.useState(()=>t(a,{disableHysteresis:n,threshold:s,target:r}));return pe.useEffect(()=>{let i=()=>{o(t(a,{disableHysteresis:n,threshold:s,target:r}));};if(i(),r)return r.addEventListener("scroll",i,{passive:true}),()=>{r.removeEventListener("scroll",i);}},[r,t,n,s]),l}function Ro(e,t){let r,n;typeof t=="number"?(r=t,n=void 0):(r=t?.delay??500,n=t?.onDebounce);let[s,a]=useState(e);return useEffect(()=>{let l=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(l)},[e,r,n]),s}var Ao=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,s=t?.shallow??true,{refresh:a,abort:l,clear:o,clone:i}=We(n)||{},c=P=>{let x=P.states[n]??te;return {loading:x.loading,isCancel:x.isCancel,response:x.response}},{loading:u,isCancel:R,response:f}=s?re(useShallow(c)):re(c),C=useMemo(()=>[f?.data,{...f,loading:u,isCancel:R,refresh:a,abort:l,clear:o,clone:i}],[f,u,R,a,l,o,i]);return t?.selector?t.selector(C):C};var ue=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},Je=(e,t)=>{let r=false;return pe.Children.forEach(e,n=>{if(pe.isValidElement(n)){let s=n,a=n.type.displayName;(t.includes(a)||s.props?.children&&Je(s.props.children,t))&&(r=true);}}),r},Qe=(e,t)=>{let r={others:[]},n=s=>{pe.Children.forEach(s,a=>{if(pe.isValidElement(a)){let l=a.type.displayName,o=a,i=o.props?.children;t.includes(l)?r[l]=a:i&&Je(i,t)?n(o.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function Eo(){let{format:e}=z();return (t="",r=false)=>$e(t,r,e.number.decSep)}function Uo(e,t){let r=useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return useEffect(()=>{if(!e)return;let n=()=>{let a=e.getBoundingClientRect();r.current={width:a.width,height:a.height,top:a.top,left:a.left,right:a.right,bottom:a.bottom},t&&t(r.current);};n();let s=new ResizeObserver(()=>n());return s.observe(e),()=>s.disconnect()},[e,t]),r}var Pe={};function $o(e,t){let[r,n]=useState(false),[s,a]=useState(),[l,o]=useState();return useEffect(()=>{if(!e)return;if(Pe[e]){o(()=>Pe[e]);return}n(true),(async()=>{try{let c=await import(`${t.path}${e}${t.extension??".svg?react"}`);Pe[e]=c.default,o(()=>c.default);}catch(c){a(c),console.error(c);}finally{n(false);}})();},[e,t.path,t.extension]),{error:s,loading:r,Icon:l}}function Ko(e){let t=e,r=new Set;function n(){return t}function s(o){return r.add(o),()=>r.delete(o)}function a(o){typeof o=="function"?t=o(t):t=o,r.forEach(i=>i());}function l(o){let i=useRef(o?o(t):t);return useSyncExternalStore(s,()=>{let c=o?o(t):t,u=i.current;return Object.is(u,c)||(i.current=c),i.current},()=>o?o(t):t)}return {getSnapshot:n,subscribe:s,setState:a,useStore:l}}function Ge(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],s=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&Ge(n,s);});}function jo(e){let t={};for(let r in e){let n=e[r];t[r]=(...s)=>{let a=n(...s);return Ge(a,r),a};}return t}function zo(e,t){let[r,n]=useState(false),[s,a]=useState([]),l=useRef([]),o=useRef(null);useEffect(()=>{if(t?.abortOnUnmount)return ()=>{o.current?.abort();}},[]);let i=async R=>{o.current?.abort();let f=new AbortController;o.current=f,n(true),a([]),l.current=[],e(R,C=>{C.isDone||(l.current.push(C),a([...l.current])),(C.isDone||!C.status)&&(n(false),t?.onDone&&t?.onDone([...l.current])),C.status?t?.onStream&&t?.onStream(C):t?.onError&&t?.onError(C);},{signal:f.signal});},c=()=>{o.current?.abort(),o.current=null,n(false);},u=()=>{n(false),a([]),l.current=[];};return [s.map(R=>R.data),i,{loading:r,abort:c,reset:u,response:s}]}function Jo(e,t){let{key:r}=t,[n,s]=useState();return useEffect(()=>{let a=liveQuery(()=>e(r)).subscribe(s);return ()=>a.unsubscribe()},[r]),n}function Zo(e,t){let{key:r}=t,[n,s]=useState(false);return useEffect(()=>{let a=liveQuery(async()=>!!await e(r)).subscribe(l=>{s(o=>o!==l?l:o);});return ()=>a.unsubscribe()},[r]),n}var fe,de={};function ns({dbName:e,version:t=1,table:r}){return fe||(fe=new yr(e),t=Object.keys(de).length+1,fe.version(t).stores(de)),r}function os({name:e,primaryKey:t}){de[e]||(de[e]=t);let r=()=>{let c=fe.table(e);if(!c)throw new Error(`Table ${e} is not registered in Dexie`);return c};return {table:r,create:async i=>await r().add(i),update:async(i,c)=>await r().update(i,c),put:async(i,c)=>await r().put({...c,[t]:i}),detail:async i=>await r().get(i),remove:async i=>await r().delete(i)}}var fs=()=>{let{encrypt:e,decrypt:t,passphrase:r}=G();return ({url:n,token:s,beforeRequest:a,onCallback:l,headers:o,onUnauthorized:i,handleToast:c,handleAuthorization:u,disabledToastWhenCancel:R,withCredentials:f,encryptRequest:C,encryptResponse:P,passphrase:x})=>{let M=Yt.create({baseURL:`${n}`,headers:{"Content-Type":"application/json",...o}}),H=(y,b,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,d=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:P)&&d){let S=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?r:p.passphrase:x;try{d=t(d,S);}catch{try{d=t(d,r);}catch{}}}let T={...l({...y,data:d,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:R,v=u?u(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&c&&(!m||!g)&&c(T),!v&&(!m||!p?.disabledHandleUnauthorized)){let S=p?.onUnauthorized||i;S&&S(T);}if(typeof b=="function")b(T);else return T},F=(y,b=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:f}).then(b).catch(p=>b(p.response,p)),E=(y,b,p,D,m)=>{let d={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},w={...d.headers};if(d.token&&(typeof d.token=="boolean"?s&&(w.Authorization=`Bearer ${s}`):d.token&&(w.Authorization=`Bearer ${d.token}`)),a&&(p=a(p)),(typeof d?.encryptRequest=="boolean"?d?.encryptRequest:C)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;p=e(p,T);}return F({url:b,method:y,data:p,headers:w,responseType:d.responseType,signal:d.signal,withCredentials:d.withCredentials,onUploadProgress:T=>{d?.onUploadProgress&&d?.onUploadProgress(T);}},(T,g)=>H(T,D,d,g))};return {client:F,post:(y,b,p,D)=>E("POST",`${y}`,b,p,D),put:(y,b,p,D)=>E("PUT",`${y}`,b,p,D),patch:(y,b,p,D)=>E("PATCH",`${y}`,b,p,D),delete:(y,b,p)=>E("DELETE",`${y}`,null,b,p),get:(y,b,p)=>E("GET",`${y}`,null,b,p),upload:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,b,p,D,m)=>{try{let d={...{token:!0,responseType:"json",infoError:!0},...m},w={"Content-Type":"application/json",...o,...d.headers};if(d.token){let k=typeof d.token=="boolean"?s:d.token;k&&(w.Authorization=`Bearer ${k}`);}let h=p;if(a&&(h=a(h)),(typeof d.encryptRequest=="boolean"?d.encryptRequest:C)&&h){let k=d.passphrase?typeof d.passphrase=="boolean"&&d.passphrase?r:d.passphrase:x;h=e(h,k);}let g=await fetch(`${n}${b}`,{method:y,headers:w,credentials:d.withCredentials?"include":"same-origin",signal:d.signal,body:JSON.stringify(h)}),v=g?.status,S=v===401;if(!g.ok){let k=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",$=await g.clone().text();if($)if(V.includes("application/json"))try{let Q=JSON.parse($);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:P)&&p){let ge=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;try{p=t(Q,ge);}catch{try{p=t(Q,r);}catch{}}}k=Q?.message||k;}catch{k=$;}else k=$;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:R,j={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0};m?.infoError&&c&&!J&&c(j),D(j);return}let N=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:k,value:J}=await N.read();ee=k,Y+=W.decode(J,{stream:!0});let j=Y.split(`
3
+ `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let L=ae(V);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0});}catch(O){let f=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:f,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}};function Hn(t,e){let[r,n]=useState(false),[s,a]=useState(),[l,o]=useState(0),i=useRef(null);return useEffect(()=>{if(e?.abortOnUnmount)return ()=>{i.current?.abort();}},[]),[async d=>{i.current?.abort();let C=new AbortController;i.current=C,n(true),e?.beforeRequest&&(d=e?.beforeRequest(d)),e?.logging&&console.log("Before request",d),e?.onBeforeRequest&&e?.onBeforeRequest(d);let q={...e,signal:C.signal,onUploadProgress:M=>{let F=Math.round(M.loaded*100/(M.total||1));o(F);}},x=t.__isVoid?await t(void 0,q):await t(d,void 0,q);e?.logging&&console.log("After response",x),a(x),n(false),o(0),e?.afterResponse&&x?.data&&(x.data=e?.afterResponse(x.data,d)),x.status&&e?.onSuccess&&e?.onSuccess(x,d),!x.status&&e?.onError&&e?.onError(x,d),e?.onAfterResponse?.(x,d);},{...s,loading:r,abort:()=>{i.current?.abort(),i.current=null,n(false),o(0);},progress:l,reset:()=>{n(false),o(0),a(null);}}]}function $t(t,e){let{disableHysteresis:r=false,threshold:n=100,target:s}=e,a=t.current;return s&&(typeof s.pageYOffset=="number"?t.current=s.pageYOffset:s.scrollTop!==void 0&&(t.current=s.scrollTop)),!r&&a!==void 0&&t.current<a?false:(t.current||0)>n}var Lt=typeof window<"u"?window:null;function Bn(t={}){let{getTrigger:e=$t,target:r=Lt,disableHysteresis:n=false,threshold:s=100}=t,a=le.useRef(0),[l,o]=le.useState(()=>e(a,{disableHysteresis:n,threshold:s,target:r}));return le.useEffect(()=>{let i=()=>{o(e(a,{disableHysteresis:n,threshold:s,target:r}));};if(i(),r)return r.addEventListener("scroll",i,{passive:true}),()=>{r.removeEventListener("scroll",i);}},[r,e,n,s]),l}function zn(t,e){let r,n;typeof e=="number"?(r=e,n=void 0):(r=e?.delay??500,n=e?.onDebounce);let[s,a]=useState(t);return useEffect(()=>{let l=setTimeout(()=>{a(t),n&&n(t);},r);return ()=>clearTimeout(l)},[t,r,n]),s}var Gn=(t,e)=>{let r=t.__path||t.name,n=e?.storeName||`${r}`,s=e?.shallow??true,{refresh:a,abort:l,clear:o,clone:i}=Ke(n)||{},c=q=>{let x=q.states[n]??te;return {loading:x.loading,isCancel:x.isCancel,response:x.response}},{loading:u,isCancel:h,response:d}=s?re(useShallow(c)):re(c),C=useMemo(()=>[d?.data,{...d,loading:u,isCancel:h,refresh:a,abort:l,clear:o,clone:i}],[d,u,h,a,l,o,i]);return e?.selector?e.selector(C):C};var eo=(t,e)=>{let r=n=>t(n);return r.displayName=e,r},je=(t,e)=>{let r=false;return le.Children.forEach(t,n=>{if(le.isValidElement(n)){let s=n,a=n.type.displayName;(e.includes(a)||s.props?.children&&je(s.props.children,e))&&(r=true);}}),r},to=(t,e)=>{let r={others:[]},n=s=>{le.Children.forEach(s,a=>{if(le.isValidElement(a)){let l=a.type.displayName,o=a,i=o.props?.children;e.includes(l)?r[l]=a:i&&je(i,e)?n(o.props.children):r.others.push(a);}else r.others.push(a);});};return n(t),r};function so(){let{format:t}=_();return (e="",r=false)=>ve(e,r,t.number.decSep)}function lo(t,e){let r=useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return useEffect(()=>{if(!t)return;let n=()=>{let a=t.getBoundingClientRect();r.current={width:a.width,height:a.height,top:a.top,left:a.left,right:a.right,bottom:a.bottom},e&&e(r.current);};n();let s=new ResizeObserver(()=>n());return s.observe(t),()=>s.disconnect()},[t,e]),r}var Ce={};function fo(t,e){let[r,n]=useState(false),[s,a]=useState(),[l,o]=useState();return useEffect(()=>{if(!t)return;if(Ce[t]){o(()=>Ce[t]);return}n(true),(async()=>{try{let c=await import(`${e.path}${t}${e.extension??".svg?react"}`);Ce[t]=c.default,o(()=>c.default);}catch(c){a(c),console.error(c);}finally{n(false);}})();},[t,e.path,e.extension]),{error:s,loading:r,Icon:l}}function go(t){let e=t,r=new Set;function n(){return e}function s(o){return r.add(o),()=>r.delete(o)}function a(o){typeof o=="function"?e=o(e):e=o,r.forEach(i=>i());}function l(o){let i=useRef(o?o(e):e);return useSyncExternalStore(s,()=>{let c=o?o(e):e,u=i.current;return Object.is(u,c)||(i.current=c),i.current},()=>o?o(e):e)}return {getSnapshot:n,subscribe:s,setState:a,useStore:l}}function Ie(t,e){!t||typeof t!="object"||Object.keys(t).forEach(r=>{let n=t[r],s=e?`${e}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&Ie(n,s);});}function ho(t){let e={};for(let r in t){let n=t[r];e[r]=(...s)=>{let a=n(...s);return Ie(a,r),a};}return e}function Do(t,e){let[r,n]=useState(false),[s,a]=useState([]),l=useRef([]),o=useRef(null);useEffect(()=>{if(e?.abortOnUnmount)return ()=>{o.current?.abort();}},[]);let i=async h=>{o.current?.abort();let d=new AbortController;o.current=d,n(true),a([]),l.current=[],t(h,C=>{C.isDone||(l.current.push(C),a([...l.current])),(C.isDone||!C.status)&&(n(false),e?.onDone&&e?.onDone([...l.current])),C.status?e?.onStream&&e?.onStream(C):e?.onError&&e?.onError(C);},{signal:d.signal});},c=()=>{o.current?.abort(),o.current=null,n(false);},u=()=>{n(false),a([]),l.current=[];};return [s.map(h=>h.data),i,{loading:r,abort:c,reset:u,response:s}]}function So(t,e){let{key:r}=e,[n,s]=useState();return useEffect(()=>{let a=liveQuery(()=>t(r)).subscribe(s);return ()=>a.unsubscribe()},[r]),n}function qo(t,e){let{key:r}=e,[n,s]=useState(false);return useEffect(()=>{let a=liveQuery(async()=>!!await t(r)).subscribe(l=>{s(o=>o!==l?l:o);});return ()=>a.unsubscribe()},[r]),n}var ce,pe={};function Eo({dbName:t,version:e=1,table:r}){return ce||(ce=new er(t),e=Object.keys(pe).length+1,ce.version(e).stores(pe)),r}function No({name:t,primaryKey:e}){pe[t]||(pe[t]=e);let r=()=>{let c=ce.table(t);if(!c)throw new Error(`Table ${t} is not registered in Dexie`);return c};return {table:r,create:async i=>await r().add(i),update:async(i,c)=>await r().update(i,c),put:async(i,c)=>await r().put({...c,[e]:i}),detail:async i=>await r().get(i),remove:async i=>await r().delete(i)}}var jo=()=>{let{encrypt:t,decrypt:e,passphrase:r}=G();return ({url:n,token:s,beforeRequest:a,onCallback:l,headers:o,onUnauthorized:i,handleToast:c,handleAuthorization:u,disabledToastWhenCancel:h,withCredentials:d,encryptRequest:C,encryptResponse:q,passphrase:x})=>{let M=Et.create({baseURL:`${n}`,headers:{"Content-Type":"application/json",...o}}),F=(y,R,p,D)=>{let m=D?.code==="ERR_CANCELED",O=y?.status===401,f=y?.data;if((typeof p?.encryptResponse=="boolean"?p?.encryptResponse:q)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?r:p.passphrase:x;try{f=e(f,w);}catch{try{f=e(f,r);}catch{}}}let T={...l({...y,data:f,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:h,P=u?u(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&c&&(!m||!g)&&c(T),!P&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||i;w&&w(T);}if(typeof R=="function")R(T);else return T},B=(y,R=()=>{})=>M({...y,withCredentials:typeof y.withCredentials=="boolean"?y.withCredentials:d}).then(R).catch(p=>R(p.response,p)),U=(y,R,p,D,m)=>{let f={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...m},S={...f.headers};if(f.token&&(typeof f.token=="boolean"?s&&(S.Authorization=`Bearer ${s}`):f.token&&(S.Authorization=`Bearer ${f.token}`)),a&&(p=a(p)),(typeof f?.encryptRequest=="boolean"?f?.encryptRequest:C)&&p){let T=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;p=t(p,T);}return B({url:R,method:y,data:p,headers:S,responseType:f.responseType,signal:f.signal,withCredentials:f.withCredentials,onUploadProgress:T=>{f?.onUploadProgress&&f?.onUploadProgress(T);}},(T,g)=>F(T,D,f,g))};return {client:B,post:(y,R,p,D)=>U("POST",`${y}`,R,p,D),put:(y,R,p,D)=>U("PUT",`${y}`,R,p,D),patch:(y,R,p,D)=>U("PATCH",`${y}`,R,p,D),delete:(y,R,p)=>U("DELETE",`${y}`,null,R,p),get:(y,R,p)=>U("GET",`${y}`,null,R,p),upload:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{infoSuccess:false,...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})},stream:async(y,R,p,D,m)=>{try{let f={...{token:!0,responseType:"json",infoError:!0},...m},S={"Content-Type":"application/json",...o,...f.headers};if(f.token){let v=typeof f.token=="boolean"?s:f.token;v&&(S.Authorization=`Bearer ${v}`);}let b=p;if(a&&(b=a(b)),(typeof f.encryptRequest=="boolean"?f.encryptRequest:C)&&b){let v=f.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?r:f.passphrase:x;b=t(b,v);}let g=await fetch(`${n}${R}`,{method:y,headers:S,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(b)}),P=g?.status,w=P===401;if(!g.ok){let v=g?.statusText||"Error";try{let V=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(V.includes("application/json"))try{let Q=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:q)&&p){let ue=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;try{p=e(Q,ue);}catch{try{p=e(Q,r);}catch{}}}v=Q?.message||v;}catch{v=L;}else v=L;}catch{}let J=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:h,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0};m?.infoError&&c&&!J&&c(j),D(j);return}let $=g.body.getReader(),W=new TextDecoder("utf-8"),Y="",ee=!1;for(;!ee;){let{done:v,value:J}=await $.read();ee=v,Y+=W.decode(J,{stream:!0});let j=Y.split(`
4
4
 
5
- `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let $=le(V);D({status:!0,data:$,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:S,httpCode:v,isDone:!0});}catch(O){let d=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:d,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,b,p,D)=>{let m=new FormData;return Object.keys(b).forEach(O=>m.append(O,b[O])),E("POST",`${y}`,m,p,{...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}}};function et(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],s=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&et(n,s);});}function tt(e,t,r=""){if(typeof e=="function")return ()=>{let s=e(t);return et(s,r),s};if(!e||typeof e!="object")return e;let n={};for(let s in e){let a=r?`${r}.${s}`:s;n[s]=tt(e[s],t,a);}return n}function ms(e,t){return tt(e,t)}function Rs(e){let t=[...e],r=a=>a==null?"":String(a),n=(a,l)=>{if(Array.isArray(l.and))return l.and.every(o=>n(a,o));if(Array.isArray(l.or))return l.or.some(o=>n(a,o));for(let[o,i]of Object.entries(l)){if(o==="and"||o==="or")continue;let{opt:c="eq",value:u,required:R=true}=typeof i=="object"&&i!==null&&"value"in i?i:{value:i};if(!R&&(u==null||u===""))continue;let f=L(a,o,void 0);switch(c){case "eq":if(f!==u)return false;break;case "neq":if(f===u)return false;break;case "gt":if(!(f>u))return false;break;case "gte":if(!(f>=u))return false;break;case "lt":if(!(f<u))return false;break;case "lte":if(!(f<=u))return false;break;case "contains":{if(f==null||u==null)return false;if(Array.isArray(f)){if(!f.some(P=>r(P).toLowerCase().includes(r(u).toLowerCase())))return false}else if(!r(f).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "notContains":{if(f==null)break;if(Array.isArray(f)){if(f.some(P=>r(P).toLowerCase().includes(r(u).toLowerCase())))return false}else if(r(f).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "startsWith":if(f==null||u==null||!String(f).startsWith(String(u)))return false;break;case "endsWith":if(f==null||u==null||!String(f).endsWith(String(u)))return false;break;case "in":if(!Array.isArray(u)||!u.includes(f))return false;break;case "notIn":if(Array.isArray(u)&&u.includes(f))return false;break;default:return false}}return true},s={where(a){return a&&(t=t.filter(l=>n(l,a))),s},sort(a){let l=Object.entries(a);return t.sort((o,i)=>{for(let[c,u]of l){let R=L(o,c),f=L(i,c);if(R!==f)return u==="asc"?R>f?1:-1:R<f?1:-1}return 0}),s},distinct(a){let l=Array.isArray(a)?a:a?[a]:[],o=new Set;return t=t.filter(i=>{let c=l.length?l.map(u=>L(i,u)).join("|"):JSON.stringify(i);return o.has(c)?false:(o.add(c),true)}),s},select(a){return t=t.map(l=>{let o={};for(let i of a)o[i]=L(l,i);return o}),s},paginate(a,l){let o=(a-1)*l,i=o+l;return {data:t.slice(o,i),total:t.length,page:a,pageSize:l,totalPages:Math.ceil(t.length/l)}},groupBy(a){let l={};for(let o of t){let i=L(o,a),c=String(i??"undefined");l[c]||(l[c]=[]),l[c].push(o);}return l},map(a){return t=t.map(a),s},reduce(a,l){return t.reduce(a,l)},limit(a){return t=t.slice(0,a),s},get(){return t}};return s}function hs({label:e="",search:t="",bgcolor:r="#337ab7",color:n="#fff"}){let s=[];e||(e="");let a=t?.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return typeof e!="string"?s=e.toString().split(new RegExp(`(${a})`,"gi")):s=e.split(new RegExp(`(${a})`,"gi")),jsx(Fragment,{children:s.map((l,o)=>jsx("span",{style:l?.toString()?.toLowerCase()===t?.toString()?.toLowerCase()?{backgroundColor:r,color:n}:{},children:l},o))})}var nt={sm:"640px",md:"768px",lg:"1024px",xl:"1280px","2xl":"1536px"},Ds=["base","sm","md","lg","xl","2xl"];var me={base:0,sm:1,md:2,lg:3,xl:4,"2xl":5};function Tr(e){if(typeof window>"u")return "base";let r=Object.entries(e).filter(([n,s])=>window.matchMedia(`(min-width: ${s})`).matches);return r.length===0?"base":r[r.length-1][0]}function ve(){let{breakpoints:e=nt}=z(),[t,r]=useState(()=>Tr(e));return useEffect(()=>{if(typeof window>"u")return;let a=Object.entries(e).map(([o,i])=>({key:o,query:window.matchMedia(`(min-width: ${i})`)})),l=()=>{let o=a.filter(i=>i.query.matches);r(o.length===0?"base":o[o.length-1].key);};return l(),a.forEach(o=>{typeof o.query.addEventListener=="function"?o.query.addEventListener("change",l):typeof o.query.addListener=="function"&&o.query.addListener(l);}),()=>{a.forEach(o=>{typeof o.query.removeEventListener=="function"?o.query.removeEventListener("change",l):typeof o.query.removeListener=="function"&&o.query.removeListener(l);});}},[e]),{current:t,isMobile:t==="base"||t==="sm",is:{base:t==="base",sm:t==="sm",md:t==="md",lg:t==="lg",xl:t==="xl","2xl":t==="2xl"},up:s=>me[t]>=me[s],down:s=>me[t]<=me[s]}}function ot(e,t=0){let[r,n]=useState(false),s=useRef(null),a=useRef(null),l=useRef(false);return useLayoutEffect(()=>{let o=e.current;if(!o)return;let i=()=>{l.current||(s.current&&clearTimeout(s.current),s.current=window.setTimeout(()=>{l.current=true,n(true);},t));},c=()=>{let f=o.getBoundingClientRect();if(f.width===0||f.height===0)return;let C=a.current,P={w:f.width,h:f.height};(!C||C.w!==P.w||C.h!==P.h)&&(a.current=P,i());};requestAnimationFrame(()=>{c();});let u=new ResizeObserver(()=>{c();}),R=new MutationObserver(()=>{c();});return u.observe(o),R.observe(o,{childList:true,subtree:true,attributes:true}),()=>{s.current&&clearTimeout(s.current),u.disconnect(),R.disconnect();}},[t]),r}function st(e=100){let[t,r]=useState(false);return useEffect(()=>{if(!("PerformanceObserver"in window))return;let n=new PerformanceObserver(s=>{for(let a of s.getEntries())a.duration>e&&(r(true),setTimeout(()=>{r(false);},300));});return n.observe({entryTypes:["longtask"]}),()=>n.disconnect()},[e]),t}function at(e,t,r,n){let s=useRef(void 0),a=useRef({x:0,y:0,width:0,visible:true}),l=useRef(r);useEffect(()=>{l.current=r;},[r]),useLayoutEffect(()=>{if(n)return;let o=e.current,i=t.current;if(!o||!i)return;if(l.current){requestAnimationFrame(()=>{i.style.transform="",i.style.top="",i.style.left="",i.style.removeProperty("width");});return}let c=false,u=q=>{let U=q;for(;U;){if(window.getComputedStyle(U).display==="none")return false;U=U.parentElement;}return true},R=()=>{if(!o||!i||l.current)return;let q=o.getBoundingClientRect(),U=u(o);a.current={x:q.left,y:q.top,width:q.width,visible:U},U?(i.style.top="0",i.style.left="0",i.style.display="",i.style.transform=`translate3d(${q.left}px, ${q.top}px, 0)`,i.style.width=`${q.width}px`):i.style.display="none";},f=()=>{if(!o||!i||l.current)return;let U=i.getBoundingClientRect().height;o.style.height=`${U}px`,o.style.minHeight=`${U}px`;},C=()=>{c||(c=true,s.current=requestAnimationFrame(()=>{R(),c=false;}));},P=()=>{requestAnimationFrame(()=>{R(),requestAnimationFrame(()=>{f();});});},x=new ResizeObserver(()=>{C();}),M=new ResizeObserver(()=>{requestAnimationFrame(()=>{f(),R();});}),H=new MutationObserver(()=>{C();});x.observe(o),M.observe(i),H.observe(document.body,{attributes:true,attributeFilter:["style","class"],subtree:true});let F=null,E=()=>{if(!o||!i||l.current||i.style.visibility==="hidden")return;let q=i.cloneNode(true);q.removeAttribute("style"),q.style.pointerEvents="none",o.innerHTML="",o.appendChild(q),i.style.visibility="hidden",i.style.pointerEvents="none",F&&clearTimeout(F),F=setTimeout(()=>{o.innerHTML="",i.style.visibility="",i.style.pointerEvents="";},150);},K=()=>{C();};return i.addEventListener("layout-complete",P),window.addEventListener("scroll",E,{passive:true,capture:true}),window.addEventListener("resize",K,{passive:true}),requestAnimationFrame(()=>{R(),requestAnimationFrame(()=>{f();});}),()=>{s.current&&cancelAnimationFrame(s.current),x.disconnect(),M.disconnect(),H.disconnect(),i.removeEventListener("layout-complete",P),window.removeEventListener("scroll",E),window.removeEventListener("resize",K);}},[n]);}var ct=createContext(null);function Vs(){let e=useContext(ct);if(!e)throw new Error("useExpandable must be used within ExpandableProvider");return e}var qe=({children:e,renderInlineBelow:t,inlineLayout:r})=>{let{ExpandableModalLoader:n,ExpandableModalBackdrop:s,ExpandableModalContent:a}=useMemo(()=>Qe(e,["ExpandableModalLoader","ExpandableModalBackdrop","ExpandableModalContent"]),[e]),[l,o]=useState(false),i=useRef(null),c=useRef(null),{down:u}=ve(),R=u(t),f=ot(c),C=st(100),P=useRef(false),x=useRef(0);useEffect(()=>{f&&x.current<5&&(x.current+=1,P.current=true);},[f]);let M=!f||!P.current&&C;at(i,c,l,R),useEffect(()=>{if(!l)return;let F=window.innerWidth-document.documentElement.clientWidth,E=document.body.style.overflow,K=document.body.style.paddingRight;return document.body.style.overflow="hidden",document.body.style.paddingRight=`${F}px`,()=>{document.body.style.overflow=E,document.body.style.paddingRight=K;}},[l]);let H={open:l,setOpen:o,targetRef:i,sourceRef:c,showLoading:M};return jsx(ct.Provider,{value:H,children:R?r:jsxs(Fragment,{children:[M&&n,jsx("div",{"data-slot":"target",ref:i}),createPortal(jsxs(Fragment,{children:[s,a]}),document.body)]})})},qr=ue(({children:e})=>jsx(Fragment,{children:e}),"ExpandableModalLoader");qe.Loader=qr;var Ur=ue(({children:e})=>jsx(Fragment,{children:e}),"ExpandableModalBackdrop");qe.Backdrop=Ur;var Mr=ue(({children:e})=>jsx(Fragment,{children:e}),"ExpandableModalContent");qe.Content=Mr;export{Ds as BREAKPOINT_ORDER,Et as BgsCoreProvider,Kt as DataTypeEnum,qe as Expandable,hs as Highlight,Ht as HttpMethod,nt as TAILWIND_SCREENS,ms as bindApi,Ne as capitalizeWords,io as createApiHelper,ns as createDatabase,ue as createElement,Ko as createStore,os as createTable,rn as debounce,he as decrypt,Ie as decryptString,te as defaultState,Jr as diffJson,be as encrypt,je as encryptString,nn as filterDOMPropsLite,Ft as formatBoolean,_t as formatDate,It as formatNumber,jt as formatString,Le as generateCacheKey,Yr as generateUUID,We as getApiActions,an as getDateRangeLabelFromSorted,L as getFieldValue,on as getInitials,sn as getMinMaxDate,ln as getTotalMinutes,Gr as isArray,Re as isDirtyRaw,_ as isNotEmpty,At as isValidNumber,tn as jsonCopy,Ue as labelFormatter,cn as mappingData,Qr as mappingUndefinedtoNull,B as moment,St as objectToQueryString,le as parseSSEChunk,$e as parseStringToNumber,Rs as query,ze as registerApi,Xr as renderChildren,Me as replaceNullStrings,Nt as safeUpdate,Zr as sorting,Qe as splitElement,Ct as stableStringify,en as summary,Ve as unregisterApi,at as useAnchorPosition,Bt as useApiLoad,re as useApiLoadStore,po as useApiSend,Ao as useApiStore,zo as useApiStream,z as useBgsCore,st as useCpuBusy,fs as useCreateApi,G as useCrypto,Jo as useDbLive,Zo as useDbLiveFlag,Ro as useDebounce,Fn as useDelay,$o as useDynamicSvgImport,Uo as useElementBounding,Vs as useExpandable,Wn as useFormatted,Qn as useInterval,Zn as useKeyPress,ot as useLayoutReady,Eo as useParseStringToNumber,mo as useScrollTrigger,_e as useStorage,jo as wrapApi};
5
+ `);Y=j.pop();for(let V of j)if(V.startsWith("data:"))try{let L=ae(V);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:P,isDone:!0});}catch(O){let f=O?.name==="AbortError";D({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:f,isUnauthorization:false,httpCode:400,isDone:true});}},multipart:(y,R,p,D)=>{let m=new FormData;return Object.keys(R).forEach(O=>m.append(O,R[O])),U("POST",`${y}`,m,p,{...D,headers:{"Content-Type":"multipart/form-data",...D?.headers}})}}}};function _e(t,e){!t||typeof t!="object"||Object.keys(t).forEach(r=>{let n=t[r],s=e?`${e}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:s,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=s;}try{Object.defineProperty(n,"__isVoid",{value:n.length===2,writable:!0,enumerable:!1,configurable:!0});}catch{n.__isVoid=n.length===2;}}else n&&typeof n=="object"&&_e(n,s);});}function We(t,e,r=""){if(typeof t=="function")return ()=>{let s=t(e);return _e(s,r),s};if(!t||typeof t!="object")return t;let n={};for(let s in t){let a=r?`${r}.${s}`:s;n[s]=We(t[s],e,a);}return n}function zo(t,e){return We(t,e)}function Wo(t){let e=[...t],r=a=>a==null?"":String(a),n=(a,l)=>{if(Array.isArray(l.and))return l.and.every(o=>n(a,o));if(Array.isArray(l.or))return l.or.some(o=>n(a,o));for(let[o,i]of Object.entries(l)){if(o==="and"||o==="or")continue;let{opt:c="eq",value:u,required:h=true}=typeof i=="object"&&i!==null&&"value"in i?i:{value:i};if(!h&&(u==null||u===""))continue;let d=N(a,o,void 0);switch(c){case "eq":if(d!==u)return false;break;case "neq":if(d===u)return false;break;case "gt":if(!(d>u))return false;break;case "gte":if(!(d>=u))return false;break;case "lt":if(!(d<u))return false;break;case "lte":if(!(d<=u))return false;break;case "contains":{if(d==null||u==null)return false;if(Array.isArray(d)){if(!d.some(q=>r(q).toLowerCase().includes(r(u).toLowerCase())))return false}else if(!r(d).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "notContains":{if(d==null)break;if(Array.isArray(d)){if(d.some(q=>r(q).toLowerCase().includes(r(u).toLowerCase())))return false}else if(r(d).toLowerCase().includes(r(u).toLowerCase()))return false;break}case "startsWith":if(d==null||u==null||!String(d).startsWith(String(u)))return false;break;case "endsWith":if(d==null||u==null||!String(d).endsWith(String(u)))return false;break;case "in":if(!Array.isArray(u)||!u.includes(d))return false;break;case "notIn":if(Array.isArray(u)&&u.includes(d))return false;break;default:return false}}return true},s={where(a){return a&&(e=e.filter(l=>n(l,a))),s},sort(a){let l=Object.entries(a);return e.sort((o,i)=>{for(let[c,u]of l){let h=N(o,c),d=N(i,c);if(h!==d)return u==="asc"?h>d?1:-1:h<d?1:-1}return 0}),s},distinct(a){let l=Array.isArray(a)?a:a?[a]:[],o=new Set;return e=e.filter(i=>{let c=l.length?l.map(u=>N(i,u)).join("|"):JSON.stringify(i);return o.has(c)?false:(o.add(c),true)}),s},select(a){return e=e.map(l=>{let o={};for(let i of a)o[i]=N(l,i);return o}),s},paginate(a,l){let o=(a-1)*l,i=o+l;return {data:e.slice(o,i),total:e.length,page:a,pageSize:l,totalPages:Math.ceil(e.length/l)}},groupBy(a){let l={};for(let o of e){let i=N(o,a),c=String(i??"undefined");l[c]||(l[c]=[]),l[c].push(o);}return l},map(a){return e=e.map(a),s},reduce(a,l){return e.reduce(a,l)},limit(a){return e=e.slice(0,a),s},get(){return e}};return s}function Jo({label:t="",search:e="",bgcolor:r="#337ab7",color:n="#fff"}){let s=[];t||(t="");let a=e?.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return typeof t!="string"?s=t.toString().split(new RegExp(`(${a})`,"gi")):s=t.split(new RegExp(`(${a})`,"gi")),jsx(Fragment,{children:s.map((l,o)=>jsx("span",{style:l?.toString()?.toLowerCase()===e?.toString()?.toLowerCase()?{backgroundColor:r,color:n}:{},children:l},o))})}function es(t,e,r,n){let s=useRef(void 0),a=useRef({x:0,y:0,width:0,visible:true}),l=useRef(r);useEffect(()=>{l.current=r;},[r]),useLayoutEffect(()=>{if(n)return;let o=t.current,i=e.current;if(!o||!i)return;if(l.current){requestAnimationFrame(()=>{i.style.transform="",i.style.top="",i.style.left="",i.style.removeProperty("width");});return}let c=false,u=k=>{let E=k;for(;E;){if(window.getComputedStyle(E).display==="none")return false;E=E.parentElement;}return true},h=()=>{if(!o||!i||l.current)return;let k=o.getBoundingClientRect(),E=u(o);a.current={x:k.left,y:k.top,width:k.width,visible:E},E?(i.style.top="0",i.style.left="0",i.style.display="",i.style.transform=`translate3d(${k.left}px, ${k.top}px, 0)`,i.style.width=`${k.width}px`):i.style.display="none";},d=()=>{if(!o||!i||l.current)return;let E=i.getBoundingClientRect().height;o.style.height=`${E}px`,o.style.minHeight=`${E}px`;},C=()=>{c||(c=true,s.current=requestAnimationFrame(()=>{h(),c=false;}));},q=()=>{requestAnimationFrame(()=>{h(),requestAnimationFrame(()=>{d();});});},x=new ResizeObserver(()=>{C();}),M=new ResizeObserver(()=>{requestAnimationFrame(()=>{d(),h();});}),F=new MutationObserver(()=>{C();});x.observe(o),M.observe(i),F.observe(document.body,{attributes:true,attributeFilter:["style","class"],subtree:true});let B=null,U=()=>{if(!o||!i||l.current)return;let k=i.cloneNode(true);k.removeAttribute("style"),o.innerHTML="",o.appendChild(k),requestAnimationFrame(()=>{i.style.display="none";}),B&&clearTimeout(B),B=setTimeout(()=>{o.innerHTML="",requestAnimationFrame(()=>{i.style.display="";});},150);},K=()=>{C();};return i.addEventListener("layout-complete",q),window.addEventListener("scroll",U,{passive:true,capture:true}),window.addEventListener("resize",K,{passive:true}),requestAnimationFrame(()=>{h(),requestAnimationFrame(()=>{d();});}),()=>{s.current&&cancelAnimationFrame(s.current),x.disconnect(),M.disconnect(),F.disconnect(),i.removeEventListener("layout-complete",q),window.removeEventListener("scroll",U),window.removeEventListener("resize",K);}},[n]);}function ns(t=100){let[e,r]=useState(false);return useEffect(()=>{if(!("PerformanceObserver"in window))return;let n=new PerformanceObserver(s=>{for(let a of s.getEntries())a.duration>t&&(r(true),setTimeout(()=>{r(false);},300));});return n.observe({entryTypes:["longtask"]}),()=>n.disconnect()},[t]),e}function is(t,e=0){let[r,n]=useState(false),s=useRef(null),a=useRef(null),l=useRef(false);return useLayoutEffect(()=>{let o=t.current;if(!o)return;let i=()=>{l.current||(s.current&&clearTimeout(s.current),s.current=window.setTimeout(()=>{l.current=true,n(true);},e));},c=()=>{let d=o.getBoundingClientRect();if(d.width===0||d.height===0)return;let C=a.current,q={w:d.width,h:d.height};(!C||C.w!==q.w||C.h!==q.h)&&(a.current=q,i());};requestAnimationFrame(()=>{c();});let u=new ResizeObserver(()=>{c();}),h=new MutationObserver(()=>{c();});return u.observe(o),h.observe(o,{childList:true,subtree:true,attributes:true}),()=>{s.current&&clearTimeout(s.current),u.disconnect(),h.disconnect();}},[e]),r}export{yt as BgsCoreProvider,St as DataTypeEnum,Jo as Highlight,At as HttpMethod,zo as bindApi,qe as capitalizeWords,Mn as createApiHelper,Eo as createDatabase,eo as createElement,go as createStore,No as createTable,vr as debounce,me as decrypt,$e as decryptString,te as defaultState,Cr as diffJson,de as encrypt,Me as encryptString,Ur as filterDOMPropsLite,wt as formatBoolean,qt as formatDate,Pt as formatNumber,Ot as formatString,Pe as generateCacheKey,xr as generateUUID,Ke as getApiActions,Nr as getDateRangeLabelFromSorted,N as getFieldValue,kr as getInitials,Er as getMinMaxDate,Mr as getTotalMinutes,Sr as isArray,fe as isDirtyRaw,z as isNotEmpty,ct as isValidNumber,qr as jsonCopy,we as labelFormatter,$r as mappingData,Ar as mappingUndefinedtoNull,H as moment,ut as objectToQueryString,ae as parseSSEChunk,ve as parseStringToNumber,Wo as query,He as registerApi,wr as renderChildren,Oe as replaceNullStrings,Dt as safeUpdate,Or as sorting,to as splitElement,lt as stableStringify,Pr as summary,Fe as unregisterApi,es as useAnchorPosition,Ct as useApiLoad,re as useApiLoadStore,Hn as useApiSend,Gn as useApiStore,Do as useApiStream,_ as useBgsCore,ns as useCpuBusy,jo as useCreateApi,G as useCrypto,So as useDbLive,qo as useDbLiveFlag,zn as useDebounce,yn as useDelay,fo as useDynamicSvgImport,lo as useElementBounding,Dn as useFormatted,An as useInterval,On as useKeyPress,is as useLayoutReady,so as useParseStringToNumber,Bn as useScrollTrigger,Le as useStorage,ho as wrapApi};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bgscore/react-core",
3
- "version": "1.0.41",
3
+ "version": "1.0.42",
4
4
  "description": "A React utility library that provides advanced API hooks (fetch, mutation, caching). Built for scalable and flexible data handling in modern React applications.",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.js",