@bgscore/react-core 1.0.41 → 1.0.43
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 +3 -3
- package/dist/index.d.cts +1 -45
- package/dist/index.d.ts +1 -45
- package/dist/index.js +3 -3
- package/package.json +1 -1
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'),Ze=require('dayjs/plugin/utc'),et=require('dayjs/plugin/timezone'),tt=require('dayjs/plugin/duration'),rt=require('dayjs/plugin/advancedFormat'),nt=require('dayjs/plugin/localizedFormat'),ot=require('dayjs/plugin/relativeTime'),st=require('dayjs/plugin/isSameOrBefore'),at=require('dayjs/plugin/isSameOrAfter'),it=require('dayjs/plugin/weekOfYear'),lt=require('dayjs/plugin/customParseFormat'),jsxRuntime=require('react/jsx-runtime'),Ee=require('crypto-js/aes'),Ne=require('crypto-js/pbkdf2'),ht=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'),Nt=require('axios'),tr=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 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 lt__default=/*#__PURE__*/_interopDefault(lt);var Ee__default=/*#__PURE__*/_interopDefault(Ee);var Ne__default=/*#__PURE__*/_interopDefault(Ne);var ht__default=/*#__PURE__*/_interopDefault(ht);var ie__default=/*#__PURE__*/_interopDefault(ie);var ke__default=/*#__PURE__*/_interopDefault(ke);var Nt__default=/*#__PURE__*/_interopDefault(Nt);var tr__default=/*#__PURE__*/_interopDefault(tr);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);I__default.default.extend(lt__default.default);var H=I__default.default;function xr(){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 Cr(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var Ar=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function Sr(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 V(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 we={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,o)=>o.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=we.snackCase(we.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function wr(e,t){return typeof e=="function"?e(t):e}var E=(e,t,r)=>{if(!e)return r;if(e.hasOwnProperty(t))return e[t];let n=t.replace(/\[(\d+)\]/g,".$1").split("."),o=e;for(let a of n){if(o==null)return r;o=o[a];}return o===void 0?r:o},Or={desc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let o=E(r,t)?E(r,t):"",a=E(n,t)?E(r,t):"";return o<a?1:-1}else return r<n?1:-1})),asc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let o=E(r,t)?E(r,t):"",a=E(n,t)?E(n,t):"";return o>a?1:-1}else return r>n?1:-1}))},Pr=(e,t)=>{Array.isArray(e)||(e=[]);let r=[];return r=e.map(n=>Number(t?E(n,t)||0:n||0)),r.reduce((n,o)=>(n||0)+(o||0),0)||0};function qr(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((o,a)=>(o[a]=n[a],o),{})):n})??""}function Pe(e,t){return ct([t??"undefined",e??"undefined"])}function qe(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function vr(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var ae=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function de(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 pt(e,t=false,r="."){if(typeof e=="number")return !Number.isNaN(e);if(typeof e=="string"&&e.trim()!==""){let n=e.trim(),o=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${o}\\d+)?|\\${o}\\d+)$`).test(n)||t&&de(n,r))return true}return false}function ve(e="",t=false,r="."){if(!pt(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var ut=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(e){let t={};for(let r in e)ut.has(r)&&(t[r]=e[r]);return t}function kr(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function Er(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(H).sort((a,i)=>a.diff(i)),n=r[0].format("YYYY-MM-DD"),o=r.at(-1).format("YYYY-MM-DD");return [n,o]}function Nr(e,t){let r=H(e),n=H(t),o=r.month()===n.month(),a=r.year()===n.year();return a&&o?`${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(e,t){if(!e?.trim()||!t?.trim())return "";if(e===t)return "0";let r=H(e,"HH:mm",true),n=H(t,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let o=n.diff(r,"minutes");return o<=0&&(o+=24*60),o.toString()}var $r=(e=[],t="label",r="value",n,o=" | ")=>{if(!Array.isArray(e))return [[],[]];let a=e.map((l,c)=>{if(typeof l!="object"){let u=typeof t=="function"?t(l,c):l,h=typeof r=="function"?r(l,c):l;return {label:u,value:h,index:c,rowData:l}}else {let u=typeof t=="function"?t(l,c):E(l,t,""),h=typeof r=="function"?r(l,c):E(l,r,"");return {label:u,value:typeof h=="boolean"?h:h||"",index:c,rowData:l}}});if(!n)return [[{items:a}],a];let i=Array.isArray(n)?n:[n],s=new Map;for(let l of a){let c=l.rowData,u=i.map(d=>String(typeof c=="object"?E(c,d,"")??"":"")).join(o),h=s.get(u)||[];h.push(l),s.set(u,h);}return [Array.from(s.entries()).map(([l,c])=>({group:l,items:c})),a]};function ft(e,t=""){let r=[];for(let n in e)if(e.hasOwnProperty(n)){let o=e[n],a=t?`${t}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!V(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(ft(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function Oe(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=Oe(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=Oe(e[t]));return e}var Ue=le.createContext(void 0);function W(){let e=le.useContext(Ue);return e||{}}var gt=({children:e,value:t})=>{let r={...t};return le.useEffect(()=>{(async()=>{if(!(typeof window>"u")&&t.localeConfig){let{preset:o,object:a,isLocal:i}=t.localeConfig;if(typeof o=="string")try{await import(`dayjs/locale/${o}`);}catch{console.warn(`Locale "${o}" not found, fallback to default`);}o&&H.locale(o,a??{},i);}})();},[t.localeConfig]),jsxRuntime.jsx(Ue.Provider,{value:r,children:e})};function me(e,t){let r=ke__default.default.random(16),n=ke__default.default.random(16),o=Ne__default.default(t,r,{keySize:256/32,iterations:1e3}),a=Ee__default.default.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(ie__default.default),iv:n.toString(ie__default.default),encrypted:a}}function ye(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Ne__default.default(t,ie__default.default.parse(r),{keySize:256/32,iterations:1e3}),s=Ee__default.default.decrypt(o,a,{iv:ie__default.default.parse(n)}).toString(ht__default.default);return JSON.parse(s)}function Me(e,t){return JSON.stringify(me(e,t))}function $e(e,t){return ye(JSON.parse(e),t)}function X(){let{passphrase:e}=W();return {passphrase:e,encrypt(t,r){return me(t,r||e)},decrypt(t,r){return ye(t,r||e)},encryptString(t,r){return Me(t,r||e)},decryptString(t,r){return $e(t,r||e)}}}var Le=()=>{let{encrypt:e,decrypt:t}=X(),r=le.useCallback((i,s)=>{try{let l=e(s);localStorage.setItem(i,JSON.stringify(l));}catch(l){console.error("Failed to save to storage:",l);}},[e]),n=le.useCallback(i=>{try{let s=localStorage.getItem(i);return s?t(JSON.parse(s)):null}catch(s){return console.error("Failed to get from storage:",s),null}},[t]),o=i=>{let[s,l]=le.useState(()=>{try{let c=localStorage.getItem(i);return c?t(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===i)if(u.newValue)try{l(t(JSON.parse(u.newValue)));}catch(h){console.error("Decrypt error from storage event",h);}else l(null);};return window.addEventListener("storage",c),()=>window.removeEventListener("storage",c)},[i,t]),s},a=le.useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function xt(e,t){for(let r in t){let n=e[r],o=t[r];if(r==="response"){let a=JSON.stringify(n),i=JSON.stringify(o);if(a!==i)return false}else if(n!==o)return false}return true}var re={loading:false,response:void 0,isCancel:false},ne=zustand.create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??re,a={...o,...n};xt(o,a)||e(i=>({states:{...i.states,[r]:a}}));}}));var Re=new Map,He=(e,t)=>{Re.set(e,t);},Fe=e=>{Re.delete(e);},Ke=e=>Re.get(e);function At(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,i=o?void 0:r,s=o?r:n,l=s?.storeName||`${a}`,c=s?.mergeStrategy??"replace",[u,h,d,C]=ne(shallow.useShallow(S=>{let b=S.states[l]??re;return [b.loading,b.isCancel,b.response,S.updateState]})),{storageKey:P,cache:x,clearPreviousData:N,refetchOnWindowFocus:F}=W(),z=Le(),U=le.useRef(void 0),K=le.useRef(null),{cacheName:B,cacheKey:k,timeout:M,timeoutUnit:Z,persistence:se,cacheEnabled:ee}=le.useMemo(()=>{let S=P?z.get(P):void 0,b=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,T=Pe({...i,session:S},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),g=false;typeof x?.enabled=="boolean"&&(g=x.enabled);let q=false;typeof x?.persistence=="boolean"&&(q=x?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(q=s?.cache?.persistence??false);let w=60*5,$="s";return V(x?.timeout)&&(typeof x?.timeout=="number"?(w=x.timeout,$="s"):typeof x?.timeout=="object"&&(w=x?.timeout.value,$=x?.timeout.unit)),V(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?g=s.cache.enabled:g=true,typeof s?.cache?.timeout=="number"?(w=s.cache.timeout,$="s"):typeof s?.cache?.timeout=="object"&&(w=s.cache.timeout.value,$=s.cache.timeout.unit)):g=s.cache),{cacheName:b,cacheKey:T,timeout:w,timeoutUnit:$,persistence:q,cacheEnabled:g}},[s?.cache,i,P,x,a]);le.useEffect(()=>{let S=JSON.stringify(V(U.current)?U.current:""),b=JSON.stringify(V(i)?i:""),T=U.current===void 0;(S!==b||T)&&!s?.hold&&((s?.clearPreviousData??N)&&C(l,{response:null}),A(),U.current=i),s?.onChange&&s?.onChange(i,f);},[i,s?.clearPreviousData,N,s?.hold,...s?.trigger||[]]),le.useEffect(()=>{let S=async()=>{!se&&B&&k&&(await caches.open(B)).delete(k);};return window.addEventListener("beforeunload",S),()=>{window.removeEventListener("beforeunload",S),K.current?.abort();}},[se,B,k,l,K]);let A=le.useCallback(async S=>{let b=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(b=s?.beforeRequest(i)),ee&&!S&&!h){s?.onBeforeRequest&&s?.onBeforeRequest(i);let T=await caches.open(B),q=await(await T.match(k))?.json();if(q){let{data:w,expired:$}=q;if(H().isAfter($))await T.delete(k);else {s?.afterResponse&&w?.data&&(w.data=s?.afterResponse(w.data,b)),s?.logging&&console.log("After request: Using Cache",w),w?.status&&s?.onSuccess?.(w,b),s?.onAfterResponse?.(w,b),C(l,{loading:false,response:w});return}}}if(typeof t=="function"){K.current?.abort();let T=new AbortController;K.current=T,C(l,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let g=o?await t(void 0,{...s,signal:T.signal}):await t(b,void 0,{...s,signal:T.signal});if(g.__rawData=g.data,c==="append"&&V(d.__rawData)&&V(g?.data)){if(Array.isArray(d.__rawData)&&Array.isArray(g?.data)){let q=[...d?.__rawData??[],...g.data??[]];g.data=q,g.__rawData=q;}else if(typeof d.__rawData=="object"&&typeof g.data=="object"){let q={...d.__rawData,...g.data};g.data=q,g.__rawData=q;}}if(s?.afterResponse&&g?.data&&(g.data=s?.afterResponse(g.data,b)),s?.logging&&console.log("After request",g),g.status&&s?.onSuccess?.(g,b),g.status||s?.onError?.(g,b),s?.onAfterResponse?.(g,b),C(l,{loading:false,response:g,isCancel:false}),ee&&g.status){let q=H().add(M,Z).toISOString(),w={data:g,expired:q},$=await caches.open(B),Y=new Response(JSON.stringify(w));await $.put(k,Y);}}},[i,t,s,h,B,k,M,Z,ee,d]);le.useEffect(()=>{if(s?.refreshInterval){let S=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,b=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,T=setInterval(()=>{A();},H.duration(S,b).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[s?.refreshInterval,A]);let y=le.useRef(null),{enabledRefetch:R,timeoutRefetch:p,timeoutUnitRefetch:D}=le.useMemo(()=>{let S=s?.refetchOnWindowFocus?.enabled??F?.enabled??false,b=s?.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}},[s?.refetchOnWindowFocus,F]);le.useEffect(()=>{if(!R||s?.hold)return;let S=H.duration(p,D).asMilliseconds(),b=()=>{let g=Date.now(),q=y.current;q!==null&&g-q>=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,s?.hold]);let m=le.useCallback(()=>{K.current?.abort(),K.current=null,C(l,{loading:false,isCancel:true});},[l,K]),O=le.useCallback(()=>{C(l,{loading:false,response:null});},[l]),f=le.useMemo(()=>({...d,loading:u,refresh:A,abort:m,clear:O,response:d,isCancel:h,clone:(S,b)=>At(t,S,{storeName:`${a}-clone`,...b})}),[d,u,A,m,O,h,t]);return le.useEffect(()=>(He(l,f),()=>{Fe(l);}),[f,l]),[d?.data,f]}async function yn(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var St=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(St||{}),wt=(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))(wt||{});var Dn=()=>{let{format:e}=W();return (t,r,n)=>{try{return r==="number"?qt(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(o=>o===r)?vt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?Ot(t,n):r==="string"?Pt(t,n):t?.toString()}catch{return}}};function Ot(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function Pt(e,t){if(!V(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=qe(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 qt(e,{thouSep:t,decSep:r,decDigits:n,method:o,dirty:a}){if(a){let h=String(e??"").trim().trim();if(de(h,r))return h}if(e==null||isNaN(Number(e)))return "";let i=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let u=Math.pow(10,n);i=Math[o](i*u)/u;}else i=Math[o](i);else if(typeof n=="number"){let u=Math.pow(10,n);i=Math.trunc(i*u)/u;}let s=0;if(n==="auto"){let u=i.toString(),h=u.indexOf(".");h!==-1&&(s=u.length-h-1);}let l={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?s:n||0,maximumFractionDigits:n==="auto"?s:n||0,minimumIntegerDigits:1};return i.toLocaleString("en-US",l).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,t)}function vt(e,{display:t,value:r}){if(!V(e))return e;let n=H(e,r);return n.isValid()?n.format(t):e}function An(e,{interval:t,lead:r}){let n=le.useRef(null);le.useEffect(()=>{n.current=e;},[e]),le.useEffect(()=>{let o=()=>n.current();if(r&&o(),t!==null){let a=setInterval(o,t);return ()=>clearInterval(a)}},[t]);}function On(e,t,r){let[n,o]=le.useState(false),a=(c,u)=>typeof e=="string"&&c===e||typeof e=="number"&&u===e,i=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),s=c=>{let{key:u,keyCode:h}=c,d=c.ctrlKey,C=c.altKey,P=c.shiftKey;if(!i(document.activeElement))if(t)if(typeof t=="string")a(u,h)&&(t==="ctrl"&&d||t==="alt"&&C||t==="shift"&&P)&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));else {let x=t.every(N=>N==="ctrl"?d:N==="alt"?C:N==="shift"?P:false);a(u,h)&&x&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));}else a(u,h)&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));},l=({key:c,keyCode:u})=>{a(c,u)&&o(false);};return le.useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",l),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",l);}),[]),n}var Mn=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:l,withCredentials:c,encryptRequest:u,encryptResponse:h,passphrase:d})=>{let{encrypt:C,decrypt:P,passphrase:x}=X(),N=Nt__default.default.create({baseURL:`${e}`,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:h)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?x:p.passphrase:d;try{f=P(f,w);}catch{try{f=P(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:l,q=s?s(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&i&&(!m||!g)&&i(T),!q&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||a;w&&w(T);}if(typeof R=="function")R(T);else return T},z=(y,R=()=>{})=>N({...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"?t&&(S.Authorization=`Bearer ${t}`):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 z({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:z,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"?t: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(`${e}${R}`,{method:y,headers:S,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(b)}),q=g?.status,w=q===401;if(!g.ok){let v=g?.statusText||"Error";try{let _=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(_.includes("application/json"))try{let G=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:h)&&p){let fe=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:d;try{p=P(G,fe);}catch{try{p=P(G,x);}catch{}}}v=G?.message||v;}catch{v=L;}else v=L;}catch{}let Q=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:l,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!0};m?.infoError&&i&&!Q&&i(j),D(j);return}let $=g.body.getReader(),Y=new TextDecoder("utf-8"),J="",te=!1;for(;!te;){let{done:v,value:Q}=await $.read();te=v,J+=Y.decode(Q,{stream:!0});let j=J.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
|
+
`);J=j.pop();for(let _ of j)if(_.startsWith("data:"))try{let L=ae(_);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,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(e,t){let[r,n]=le.useState(false),[o,a]=le.useState(),[i,s]=le.useState(0),l=le.useRef(null);return le.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{l.current?.abort();}},[]),[async d=>{l.current?.abort();let C=new AbortController;l.current=C,n(true),t?.beforeRequest&&(d=t?.beforeRequest(d)),t?.logging&&console.log("Before request",d),t?.onBeforeRequest&&t?.onBeforeRequest(d);let P={...t,signal:C.signal,onUploadProgress:N=>{let F=Math.round(N.loaded*100/(N.total||1));s(F);}},x=e.__isVoid?await e(void 0,P):await e(d,void 0,P);t?.logging&&console.log("After response",x),a(x),n(false),s(0),t?.afterResponse&&x?.data&&(x.data=t?.afterResponse(x.data,d)),x.status&&t?.onSuccess&&t?.onSuccess(x,d),!x.status&&t?.onError&&t?.onError(x,d),t?.onAfterResponse?.(x,d);},{...o,loading:r,abort:()=>{l.current?.abort(),l.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function Lt(e,t){let{disableHysteresis:r=false,threshold:n=100,target:o}=t,a=e.current;return o&&(typeof o.pageYOffset=="number"?e.current=o.pageYOffset:o.scrollTop!==void 0&&(e.current=o.scrollTop)),!r&&a!==void 0&&e.current<a?false:(e.current||0)>n}var Ht=typeof window<"u"?window:null;function Bn(e={}){let{getTrigger:t=Lt,target:r=Ht,disableHysteresis:n=false,threshold:o=100}=e,a=le__default.default.useRef(0),[i,s]=le__default.default.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return le__default.default.useEffect(()=>{let l=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(l(),r)return r.addEventListener("scroll",l,{passive:true}),()=>{r.removeEventListener("scroll",l);}},[r,t,n,o]),i}function Vn(e,t){let r,n;typeof t=="number"?(r=t,n=void 0):(r=t?.delay??500,n=t?.onDebounce);let[o,a]=le.useState(e);return le.useEffect(()=>{let i=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(i)},[e,r,n]),o}var Gn=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:i,clear:s,clone:l}=Ke(n)||{},c=P=>{let x=P.states[n]??re;return {loading:x.loading,isCancel:x.isCancel,response:x.response}},{loading:u,isCancel:h,response:d}=o?ne(shallow.useShallow(c)):ne(c),C=le.useMemo(()=>[d?.data,{...d,loading:u,isCancel:h,refresh:a,abort:i,clear:s,clone:l}],[d,u,h,a,i,s,l]);return t?.selector?t.selector(C):C};var eo=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},je=(e,t)=>{let r=false;return le__default.default.Children.forEach(e,n=>{if(le__default.default.isValidElement(n)){let o=n,a=n.type.displayName;(t.includes(a)||o.props?.children&&je(o.props.children,t))&&(r=true);}}),r},to=(e,t)=>{let r={others:[]},n=o=>{le__default.default.Children.forEach(o,a=>{if(le__default.default.isValidElement(a)){let i=a.type.displayName,s=a,l=s.props?.children;t.includes(i)?r[i]=a:l&&je(l,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function so(){let{format:e}=W();return (t="",r=false)=>ve(t,r,e.number.decSep)}function lo(e,t){let r=le.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return le.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 o=new ResizeObserver(()=>n());return o.observe(e),()=>o.disconnect()},[e,t]),r}var Ae={};function fo(e,t){let[r,n]=le.useState(false),[o,a]=le.useState(),[i,s]=le.useState();return le.useEffect(()=>{if(!e)return;if(Ae[e]){s(()=>Ae[e]);return}n(true),(async()=>{try{let c=await import(`${t.path}${e}${t.extension??".svg?react"}`);Ae[e]=c.default,s(()=>c.default);}catch(c){a(c),console.error(c);}finally{n(false);}})();},[e,t.path,t.extension]),{error:o,loading:r,Icon:i}}function go(e){let t=e,r=new Set;function n(){return t}function o(s){return r.add(s),()=>r.delete(s)}function a(s){typeof s=="function"?t=s(t):t=s,r.forEach(l=>l());}function i(s){let l=le.useRef(s?s(t):t);return le.useSyncExternalStore(o,()=>{let c=s?s(t):t,u=l.current;return Object.is(u,c)||(l.current=c),l.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function Ie(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],o=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:o,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=o;}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,o);});}function ho(e){let t={};for(let r in e){let n=e[r];t[r]=(...o)=>{let a=n(...o);return Ie(a,r),a};}return t}function Do(e,t){let[r,n]=le.useState(false),[o,a]=le.useState([]),i=le.useRef([]),s=le.useRef(null);le.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let l=async h=>{s.current?.abort();let d=new AbortController;s.current=d,n(true),a([]),i.current=[],e(h,C=>{C.isDone||(i.current.push(C),a([...i.current])),(C.isDone||!C.status)&&(n(false),t?.onDone&&t?.onDone([...i.current])),C.status?t?.onStream&&t?.onStream(C):t?.onError&&t?.onError(C);},{signal:d.signal});},c=()=>{s.current?.abort(),s.current=null,n(false);},u=()=>{n(false),a([]),i.current=[];};return [o.map(h=>h.data),l,{loading:r,abort:c,reset:u,response:o}]}function So(e,t){let{key:r}=t,[n,o]=le.useState();return le.useEffect(()=>{let a=tr.liveQuery(()=>e(r)).subscribe(o);return ()=>a.unsubscribe()},[r]),n}function qo(e,t){let{key:r}=t,[n,o]=le.useState(false);return le.useEffect(()=>{let a=tr.liveQuery(async()=>!!await e(r)).subscribe(i=>{o(s=>s!==i?i:s);});return ()=>a.unsubscribe()},[r]),n}var ce,pe={};function Eo({dbName:e,version:t=1,table:r}){return ce||(ce=new tr__default.default(e),t=Object.keys(pe).length+1,ce.version(t).stores(pe)),r}function No({name:e,primaryKey:t}){pe[e]||(pe[e]=t);let r=()=>{let c=ce.table(e);if(!c)throw new Error(`Table ${e} is not registered in Dexie`);return c};return {table:r,create:async l=>await r().add(l),update:async(l,c)=>await r().update(l,c),put:async(l,c)=>await r().put({...c,[t]:l}),detail:async l=>await r().get(l),remove:async l=>await r().delete(l)}}var jo=()=>{let{encrypt:e,decrypt:t,passphrase:r}=X();return ({url:n,token:o,beforeRequest:a,onCallback:i,headers:s,onUnauthorized:l,handleToast:c,handleAuthorization:u,disabledToastWhenCancel:h,withCredentials:d,encryptRequest:C,encryptResponse:P,passphrase:x})=>{let N=Nt__default.default.create({baseURL:`${n}`,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:P)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?r:p.passphrase:x;try{f=t(f,w);}catch{try{f=t(f,r);}catch{}}}let T={...i({...y,data:f,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:h,q=u?u(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&c&&(!m||!g)&&c(T),!q&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||l;w&&w(T);}if(typeof R=="function")R(T);else return T},z=(y,R=()=>{})=>N({...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"?o&&(S.Authorization=`Bearer ${o}`):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=e(p,T);}return z({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:z,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"?o: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=e(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)}),q=g?.status,w=q===401;if(!g.ok){let v=g?.statusText||"Error";try{let _=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(_.includes("application/json"))try{let G=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:P)&&p){let fe=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;try{p=t(G,fe);}catch{try{p=t(G,r);}catch{}}}v=G?.message||v;}catch{v=L;}else v=L;}catch{}let Q=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:h,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!0};m?.infoError&&c&&!Q&&c(j),D(j);return}let $=g.body.getReader(),Y=new TextDecoder("utf-8"),J="",te=!1;for(;!te;){let{done:v,value:Q}=await $.read();te=v,J+=Y.decode(Q,{stream:!0});let j=J.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
|
+
`);J=j.pop();for(let _ of j)if(_.startsWith("data:"))try{let L=ae(_);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,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(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],o=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:o,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=o;}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,o);});}function We(e,t,r=""){if(typeof e=="function")return ()=>{let o=e(t);return _e(o,r),o};if(!e||typeof e!="object")return e;let n={};for(let o in e){let a=r?`${r}.${o}`:o;n[o]=We(e[o],t,a);}return n}function Vo(e,t){return We(e,t)}function Wo(e){let t=[...e],r=a=>a==null?"":String(a),n=(a,i)=>{if(Array.isArray(i.and))return i.and.every(s=>n(a,s));if(Array.isArray(i.or))return i.or.some(s=>n(a,s));for(let[s,l]of Object.entries(i)){if(s==="and"||s==="or")continue;let{opt:c="eq",value:u,required:h=true}=typeof l=="object"&&l!==null&&"value"in l?l:{value:l};if(!h&&(u==null||u===""))continue;let d=E(a,s,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(P=>r(P).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(P=>r(P).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},o={where(a){return a&&(t=t.filter(i=>n(i,a))),o},sort(a){let i=Object.entries(a);return t.sort((s,l)=>{for(let[c,u]of i){let h=E(s,c),d=E(l,c);if(h!==d)return u==="asc"?h>d?1:-1:h<d?1:-1}return 0}),o},distinct(a){let i=Array.isArray(a)?a:a?[a]:[],s=new Set;return t=t.filter(l=>{let c=i.length?i.map(u=>E(l,u)).join("|"):JSON.stringify(l);return s.has(c)?false:(s.add(c),true)}),o},select(a){return t=t.map(i=>{let s={};for(let l of a)s[l]=E(i,l);return s}),o},paginate(a,i){let s=(a-1)*i,l=s+i;return {data:t.slice(s,l),total:t.length,page:a,pageSize:i,totalPages:Math.ceil(t.length/i)}},groupBy(a){let i={};for(let s of t){let l=E(s,a),c=String(l??"undefined");i[c]||(i[c]=[]),i[c].push(s);}return i},map(a){return t=t.map(a),o},reduce(a,i){return t.reduce(a,i)},limit(a){return t=t.slice(0,a),o},get(){return t}};return o}function Jo({label:e="",search:t="",bgcolor:r="#337ab7",color:n="#fff"}){let o=[];e||(e="");let a=t?.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return typeof e!="string"?o=e.toString().split(new RegExp(`(${a})`,"gi")):o=e.split(new RegExp(`(${a})`,"gi")),jsxRuntime.jsx(jsxRuntime.Fragment,{children:o.map((i,s)=>jsxRuntime.jsx("span",{style:i?.toString()?.toLowerCase()===t?.toString()?.toLowerCase()?{backgroundColor:r,color:n}:{},children:i},s))})}function es(e,t,r,n){let o=le.useRef(void 0),a=le.useRef({x:0,y:0,width:0,visible:true}),i=le.useRef(r),s=le.useRef(true);le.useEffect(()=>{let l=e.current;if(!l)return;let c=new IntersectionObserver(([u])=>{s.current=u.isIntersecting;},{threshold:0});return c.observe(l),()=>{c.disconnect(),s.current=false;}},[e,t]),le.useEffect(()=>{i.current=r;},[r]),le.useLayoutEffect(()=>{if(n)return;let l=e.current,c=t.current;if(!l||!c)return;if(i.current){requestAnimationFrame(()=>{c.style.transform="",c.style.top="",c.style.left="",c.style.removeProperty("width");});return}let u=false,h=k=>{let M=k;for(;M;){if(window.getComputedStyle(M).display==="none")return false;M=M.parentElement;}return true},d=()=>{if(!l||!c||i.current)return;let k=l.getBoundingClientRect(),M=h(l);a.current={x:k.left,y:k.top,width:k.width,visible:M},M?(c.style.top="0",c.style.left="0",c.style.display="",c.style.transform=`translate3d(${k.left}px, ${k.top}px, 0)`,c.style.width=`${k.width}px`):c.style.display="none";},C=()=>{if(!l||!c||i.current)return;let M=c.getBoundingClientRect().height;l.style.height=`${M}px`,l.style.minHeight=`${M}px`;},P=()=>{u||(u=true,o.current=requestAnimationFrame(()=>{d(),u=false;}));},x=()=>{requestAnimationFrame(()=>{d(),requestAnimationFrame(()=>{C();});});},N=new ResizeObserver(()=>{P();}),F=new ResizeObserver(()=>{requestAnimationFrame(()=>{C(),d();});}),z=new MutationObserver(()=>{P();});N.observe(l),F.observe(c),z.observe(document.body,{attributes:true,attributeFilter:["style","class"],subtree:true});let U=null,K=()=>{if(!l||!c||i.current||!s.current)return;let k=c.cloneNode(true);k.removeAttribute("style"),l.innerHTML="",l.appendChild(k),requestAnimationFrame(()=>{c.style.display="none";}),U&&clearTimeout(U),U=setTimeout(()=>{l.innerHTML="",requestAnimationFrame(()=>{c.style.display="";});},150);},B=()=>{P();};return c.addEventListener("layout-complete",x),window.addEventListener("scroll",K,{passive:true,capture:true}),window.addEventListener("resize",B,{passive:true}),requestAnimationFrame(()=>{d(),requestAnimationFrame(()=>{C();});}),()=>{o.current&&cancelAnimationFrame(o.current),N.disconnect(),F.disconnect(),z.disconnect(),c.removeEventListener("layout-complete",x),window.removeEventListener("scroll",K),window.removeEventListener("resize",B);}},[n]);}function ns(e=100){let[t,r]=le.useState(false);return le.useEffect(()=>{if(!("PerformanceObserver"in window))return;let n=new PerformanceObserver(o=>{for(let a of o.getEntries())a.duration>e&&(r(true),setTimeout(()=>{r(false);},300));});return n.observe({entryTypes:["longtask"]}),()=>n.disconnect()},[e]),t}function is(e,t=0){let[r,n]=le.useState(false),o=le.useRef(null),a=le.useRef(null),i=le.useRef(false);return le.useLayoutEffect(()=>{let s=e.current;if(!s)return;let l=()=>{i.current||(o.current&&clearTimeout(o.current),o.current=window.setTimeout(()=>{i.current=true,n(true);},t));},c=()=>{let d=s.getBoundingClientRect();if(d.width===0||d.height===0)return;let C=a.current,P={w:d.width,h:d.height};(!C||C.w!==P.w||C.h!==P.h)&&(a.current=P,l());};requestAnimationFrame(()=>{c();});let u=new ResizeObserver(()=>{c();}),h=new MutationObserver(()=>{c();});return u.observe(s),h.observe(s,{childList:true,subtree:true,attributes:true}),()=>{o.current&&clearTimeout(o.current),u.disconnect(),h.disconnect();}},[t]),r}exports.BgsCoreProvider=gt;exports.DataTypeEnum=wt;exports.Highlight=Jo;exports.HttpMethod=St;exports.bindApi=Vo;exports.capitalizeWords=qe;exports.createApiHelper=Mn;exports.createDatabase=Eo;exports.createElement=eo;exports.createStore=go;exports.createTable=No;exports.debounce=vr;exports.decrypt=ye;exports.decryptString=$e;exports.defaultState=re;exports.diffJson=Cr;exports.encrypt=me;exports.encryptString=Me;exports.filterDOMPropsLite=Ur;exports.formatBoolean=Ot;exports.formatDate=vt;exports.formatNumber=qt;exports.formatString=Pt;exports.generateCacheKey=Pe;exports.generateUUID=xr;exports.getApiActions=Ke;exports.getDateRangeLabelFromSorted=Nr;exports.getFieldValue=E;exports.getInitials=kr;exports.getMinMaxDate=Er;exports.getTotalMinutes=Mr;exports.isArray=Sr;exports.isDirtyRaw=de;exports.isNotEmpty=V;exports.isValidNumber=pt;exports.jsonCopy=qr;exports.labelFormatter=we;exports.mappingData=$r;exports.mappingUndefinedtoNull=Ar;exports.moment=H;exports.objectToQueryString=ft;exports.parseSSEChunk=ae;exports.parseStringToNumber=ve;exports.query=Wo;exports.registerApi=He;exports.renderChildren=wr;exports.replaceNullStrings=Oe;exports.safeUpdate=xt;exports.sorting=Or;exports.splitElement=to;exports.stableStringify=ct;exports.summary=Pr;exports.unregisterApi=Fe;exports.useAnchorPosition=es;exports.useApiLoad=At;exports.useApiLoadStore=ne;exports.useApiSend=Hn;exports.useApiStore=Gn;exports.useApiStream=Do;exports.useBgsCore=W;exports.useCpuBusy=ns;exports.useCreateApi=jo;exports.useCrypto=X;exports.useDbLive=So;exports.useDbLiveFlag=qo;exports.useDebounce=Vn;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,
|
|
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,
|
|
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 Ze from'dayjs/plugin/utc';import et from'dayjs/plugin/timezone';import tt from'dayjs/plugin/duration';import rt from'dayjs/plugin/advancedFormat';import nt from'dayjs/plugin/localizedFormat';import ot from'dayjs/plugin/relativeTime';import st from'dayjs/plugin/isSameOrBefore';import at from'dayjs/plugin/isSameOrAfter';import it from'dayjs/plugin/weekOfYear';import lt from'dayjs/plugin/customParseFormat';import {jsx,Fragment}from'react/jsx-runtime';import Ee from'crypto-js/aes';import Ne from'crypto-js/pbkdf2';import ht 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 Nt from'axios';import tr,{liveQuery}from'dexie';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);I.extend(lt);var H=I;function xr(){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 Cr(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var Ar=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function Sr(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 V(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 we={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,o)=>o.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=we.snackCase(we.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function wr(e,t){return typeof e=="function"?e(t):e}var E=(e,t,r)=>{if(!e)return r;if(e.hasOwnProperty(t))return e[t];let n=t.replace(/\[(\d+)\]/g,".$1").split("."),o=e;for(let a of n){if(o==null)return r;o=o[a];}return o===void 0?r:o},Or={desc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let o=E(r,t)?E(r,t):"",a=E(n,t)?E(r,t):"";return o<a?1:-1}else return r<n?1:-1})),asc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let o=E(r,t)?E(r,t):"",a=E(n,t)?E(n,t):"";return o>a?1:-1}else return r>n?1:-1}))},Pr=(e,t)=>{Array.isArray(e)||(e=[]);let r=[];return r=e.map(n=>Number(t?E(n,t)||0:n||0)),r.reduce((n,o)=>(n||0)+(o||0),0)||0};function qr(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((o,a)=>(o[a]=n[a],o),{})):n})??""}function Pe(e,t){return ct([t??"undefined",e??"undefined"])}function qe(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function vr(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var ae=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function de(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 pt(e,t=false,r="."){if(typeof e=="number")return !Number.isNaN(e);if(typeof e=="string"&&e.trim()!==""){let n=e.trim(),o=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${o}\\d+)?|\\${o}\\d+)$`).test(n)||t&&de(n,r))return true}return false}function ve(e="",t=false,r="."){if(!pt(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var ut=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(e){let t={};for(let r in e)ut.has(r)&&(t[r]=e[r]);return t}function kr(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function Er(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(H).sort((a,i)=>a.diff(i)),n=r[0].format("YYYY-MM-DD"),o=r.at(-1).format("YYYY-MM-DD");return [n,o]}function Nr(e,t){let r=H(e),n=H(t),o=r.month()===n.month(),a=r.year()===n.year();return a&&o?`${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(e,t){if(!e?.trim()||!t?.trim())return "";if(e===t)return "0";let r=H(e,"HH:mm",true),n=H(t,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let o=n.diff(r,"minutes");return o<=0&&(o+=24*60),o.toString()}var $r=(e=[],t="label",r="value",n,o=" | ")=>{if(!Array.isArray(e))return [[],[]];let a=e.map((l,c)=>{if(typeof l!="object"){let u=typeof t=="function"?t(l,c):l,h=typeof r=="function"?r(l,c):l;return {label:u,value:h,index:c,rowData:l}}else {let u=typeof t=="function"?t(l,c):E(l,t,""),h=typeof r=="function"?r(l,c):E(l,r,"");return {label:u,value:typeof h=="boolean"?h:h||"",index:c,rowData:l}}});if(!n)return [[{items:a}],a];let i=Array.isArray(n)?n:[n],s=new Map;for(let l of a){let c=l.rowData,u=i.map(d=>String(typeof c=="object"?E(c,d,"")??"":"")).join(o),h=s.get(u)||[];h.push(l),s.set(u,h);}return [Array.from(s.entries()).map(([l,c])=>({group:l,items:c})),a]};function ft(e,t=""){let r=[];for(let n in e)if(e.hasOwnProperty(n)){let o=e[n],a=t?`${t}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!V(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(ft(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function Oe(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=Oe(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=Oe(e[t]));return e}var Ue=createContext(void 0);function W(){let e=useContext(Ue);return e||{}}var gt=({children:e,value:t})=>{let r={...t};return useEffect(()=>{(async()=>{if(!(typeof window>"u")&&t.localeConfig){let{preset:o,object:a,isLocal:i}=t.localeConfig;if(typeof o=="string")try{await import(`dayjs/locale/${o}`);}catch{console.warn(`Locale "${o}" not found, fallback to default`);}o&&H.locale(o,a??{},i);}})();},[t.localeConfig]),jsx(Ue.Provider,{value:r,children:e})};function me(e,t){let r=ke.random(16),n=ke.random(16),o=Ne(t,r,{keySize:256/32,iterations:1e3}),a=Ee.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(ie),iv:n.toString(ie),encrypted:a}}function ye(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Ne(t,ie.parse(r),{keySize:256/32,iterations:1e3}),s=Ee.decrypt(o,a,{iv:ie.parse(n)}).toString(ht);return JSON.parse(s)}function Me(e,t){return JSON.stringify(me(e,t))}function $e(e,t){return ye(JSON.parse(e),t)}function X(){let{passphrase:e}=W();return {passphrase:e,encrypt(t,r){return me(t,r||e)},decrypt(t,r){return ye(t,r||e)},encryptString(t,r){return Me(t,r||e)},decryptString(t,r){return $e(t,r||e)}}}var Le=()=>{let{encrypt:e,decrypt:t}=X(),r=useCallback((i,s)=>{try{let l=e(s);localStorage.setItem(i,JSON.stringify(l));}catch(l){console.error("Failed to save to storage:",l);}},[e]),n=useCallback(i=>{try{let s=localStorage.getItem(i);return s?t(JSON.parse(s)):null}catch(s){return console.error("Failed to get from storage:",s),null}},[t]),o=i=>{let[s,l]=useState(()=>{try{let c=localStorage.getItem(i);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===i)if(u.newValue)try{l(t(JSON.parse(u.newValue)));}catch(h){console.error("Decrypt error from storage event",h);}else l(null);};return window.addEventListener("storage",c),()=>window.removeEventListener("storage",c)},[i,t]),s},a=useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function xt(e,t){for(let r in t){let n=e[r],o=t[r];if(r==="response"){let a=JSON.stringify(n),i=JSON.stringify(o);if(a!==i)return false}else if(n!==o)return false}return true}var re={loading:false,response:void 0,isCancel:false},ne=create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??re,a={...o,...n};xt(o,a)||e(i=>({states:{...i.states,[r]:a}}));}}));var Re=new Map,He=(e,t)=>{Re.set(e,t);},Fe=e=>{Re.delete(e);},Ke=e=>Re.get(e);function At(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,i=o?void 0:r,s=o?r:n,l=s?.storeName||`${a}`,c=s?.mergeStrategy??"replace",[u,h,d,C]=ne(useShallow(S=>{let b=S.states[l]??re;return [b.loading,b.isCancel,b.response,S.updateState]})),{storageKey:P,cache:x,clearPreviousData:N,refetchOnWindowFocus:F}=W(),z=Le(),U=useRef(void 0),K=useRef(null),{cacheName:B,cacheKey:k,timeout:M,timeoutUnit:Z,persistence:se,cacheEnabled:ee}=useMemo(()=>{let S=P?z.get(P):void 0,b=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,T=Pe({...i,session:S},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),g=false;typeof x?.enabled=="boolean"&&(g=x.enabled);let q=false;typeof x?.persistence=="boolean"&&(q=x?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(q=s?.cache?.persistence??false);let w=60*5,$="s";return V(x?.timeout)&&(typeof x?.timeout=="number"?(w=x.timeout,$="s"):typeof x?.timeout=="object"&&(w=x?.timeout.value,$=x?.timeout.unit)),V(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?g=s.cache.enabled:g=true,typeof s?.cache?.timeout=="number"?(w=s.cache.timeout,$="s"):typeof s?.cache?.timeout=="object"&&(w=s.cache.timeout.value,$=s.cache.timeout.unit)):g=s.cache),{cacheName:b,cacheKey:T,timeout:w,timeoutUnit:$,persistence:q,cacheEnabled:g}},[s?.cache,i,P,x,a]);useEffect(()=>{let S=JSON.stringify(V(U.current)?U.current:""),b=JSON.stringify(V(i)?i:""),T=U.current===void 0;(S!==b||T)&&!s?.hold&&((s?.clearPreviousData??N)&&C(l,{response:null}),A(),U.current=i),s?.onChange&&s?.onChange(i,f);},[i,s?.clearPreviousData,N,s?.hold,...s?.trigger||[]]),useEffect(()=>{let S=async()=>{!se&&B&&k&&(await caches.open(B)).delete(k);};return window.addEventListener("beforeunload",S),()=>{window.removeEventListener("beforeunload",S),K.current?.abort();}},[se,B,k,l,K]);let A=useCallback(async S=>{let b=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(b=s?.beforeRequest(i)),ee&&!S&&!h){s?.onBeforeRequest&&s?.onBeforeRequest(i);let T=await caches.open(B),q=await(await T.match(k))?.json();if(q){let{data:w,expired:$}=q;if(H().isAfter($))await T.delete(k);else {s?.afterResponse&&w?.data&&(w.data=s?.afterResponse(w.data,b)),s?.logging&&console.log("After request: Using Cache",w),w?.status&&s?.onSuccess?.(w,b),s?.onAfterResponse?.(w,b),C(l,{loading:false,response:w});return}}}if(typeof t=="function"){K.current?.abort();let T=new AbortController;K.current=T,C(l,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let g=o?await t(void 0,{...s,signal:T.signal}):await t(b,void 0,{...s,signal:T.signal});if(g.__rawData=g.data,c==="append"&&V(d.__rawData)&&V(g?.data)){if(Array.isArray(d.__rawData)&&Array.isArray(g?.data)){let q=[...d?.__rawData??[],...g.data??[]];g.data=q,g.__rawData=q;}else if(typeof d.__rawData=="object"&&typeof g.data=="object"){let q={...d.__rawData,...g.data};g.data=q,g.__rawData=q;}}if(s?.afterResponse&&g?.data&&(g.data=s?.afterResponse(g.data,b)),s?.logging&&console.log("After request",g),g.status&&s?.onSuccess?.(g,b),g.status||s?.onError?.(g,b),s?.onAfterResponse?.(g,b),C(l,{loading:false,response:g,isCancel:false}),ee&&g.status){let q=H().add(M,Z).toISOString(),w={data:g,expired:q},$=await caches.open(B),Y=new Response(JSON.stringify(w));await $.put(k,Y);}}},[i,t,s,h,B,k,M,Z,ee,d]);useEffect(()=>{if(s?.refreshInterval){let S=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,b=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,T=setInterval(()=>{A();},H.duration(S,b).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[s?.refreshInterval,A]);let y=useRef(null),{enabledRefetch:R,timeoutRefetch:p,timeoutUnitRefetch:D}=useMemo(()=>{let S=s?.refetchOnWindowFocus?.enabled??F?.enabled??false,b=s?.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}},[s?.refetchOnWindowFocus,F]);useEffect(()=>{if(!R||s?.hold)return;let S=H.duration(p,D).asMilliseconds(),b=()=>{let g=Date.now(),q=y.current;q!==null&&g-q>=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,s?.hold]);let m=useCallback(()=>{K.current?.abort(),K.current=null,C(l,{loading:false,isCancel:true});},[l,K]),O=useCallback(()=>{C(l,{loading:false,response:null});},[l]),f=useMemo(()=>({...d,loading:u,refresh:A,abort:m,clear:O,response:d,isCancel:h,clone:(S,b)=>At(t,S,{storeName:`${a}-clone`,...b})}),[d,u,A,m,O,h,t]);return useEffect(()=>(He(l,f),()=>{Fe(l);}),[f,l]),[d?.data,f]}async function yn(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var St=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(St||{}),wt=(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))(wt||{});var Dn=()=>{let{format:e}=W();return (t,r,n)=>{try{return r==="number"?qt(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(o=>o===r)?vt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?Ot(t,n):r==="string"?Pt(t,n):t?.toString()}catch{return}}};function Ot(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function Pt(e,t){if(!V(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=qe(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 qt(e,{thouSep:t,decSep:r,decDigits:n,method:o,dirty:a}){if(a){let h=String(e??"").trim().trim();if(de(h,r))return h}if(e==null||isNaN(Number(e)))return "";let i=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let u=Math.pow(10,n);i=Math[o](i*u)/u;}else i=Math[o](i);else if(typeof n=="number"){let u=Math.pow(10,n);i=Math.trunc(i*u)/u;}let s=0;if(n==="auto"){let u=i.toString(),h=u.indexOf(".");h!==-1&&(s=u.length-h-1);}let l={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?s:n||0,maximumFractionDigits:n==="auto"?s:n||0,minimumIntegerDigits:1};return i.toLocaleString("en-US",l).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,t)}function vt(e,{display:t,value:r}){if(!V(e))return e;let n=H(e,r);return n.isValid()?n.format(t):e}function An(e,{interval:t,lead:r}){let n=useRef(null);useEffect(()=>{n.current=e;},[e]),useEffect(()=>{let o=()=>n.current();if(r&&o(),t!==null){let a=setInterval(o,t);return ()=>clearInterval(a)}},[t]);}function On(e,t,r){let[n,o]=useState(false),a=(c,u)=>typeof e=="string"&&c===e||typeof e=="number"&&u===e,i=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),s=c=>{let{key:u,keyCode:h}=c,d=c.ctrlKey,C=c.altKey,P=c.shiftKey;if(!i(document.activeElement))if(t)if(typeof t=="string")a(u,h)&&(t==="ctrl"&&d||t==="alt"&&C||t==="shift"&&P)&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));else {let x=t.every(N=>N==="ctrl"?d:N==="alt"?C:N==="shift"?P:false);a(u,h)&&x&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));}else a(u,h)&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));},l=({key:c,keyCode:u})=>{a(c,u)&&o(false);};return useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",l),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",l);}),[]),n}var Mn=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:l,withCredentials:c,encryptRequest:u,encryptResponse:h,passphrase:d})=>{let{encrypt:C,decrypt:P,passphrase:x}=X(),N=Nt.create({baseURL:`${e}`,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:h)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?x:p.passphrase:d;try{f=P(f,w);}catch{try{f=P(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:l,q=s?s(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&i&&(!m||!g)&&i(T),!q&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||a;w&&w(T);}if(typeof R=="function")R(T);else return T},z=(y,R=()=>{})=>N({...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"?t&&(S.Authorization=`Bearer ${t}`):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 z({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:z,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"?t: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(`${e}${R}`,{method:y,headers:S,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(b)}),q=g?.status,w=q===401;if(!g.ok){let v=g?.statusText||"Error";try{let _=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(_.includes("application/json"))try{let G=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:h)&&p){let fe=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?x:m.passphrase:d;try{p=P(G,fe);}catch{try{p=P(G,x);}catch{}}}v=G?.message||v;}catch{v=L;}else v=L;}catch{}let Q=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:l,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!0};m?.infoError&&i&&!Q&&i(j),D(j);return}let $=g.body.getReader(),Y=new TextDecoder("utf-8"),J="",te=!1;for(;!te;){let{done:v,value:Q}=await $.read();te=v,J+=Y.decode(Q,{stream:!0});let j=J.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
|
+
`);J=j.pop();for(let _ of j)if(_.startsWith("data:"))try{let L=ae(_);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,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(e,t){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState(0),l=useRef(null);return useEffect(()=>{if(t?.abortOnUnmount)return ()=>{l.current?.abort();}},[]),[async d=>{l.current?.abort();let C=new AbortController;l.current=C,n(true),t?.beforeRequest&&(d=t?.beforeRequest(d)),t?.logging&&console.log("Before request",d),t?.onBeforeRequest&&t?.onBeforeRequest(d);let P={...t,signal:C.signal,onUploadProgress:N=>{let F=Math.round(N.loaded*100/(N.total||1));s(F);}},x=e.__isVoid?await e(void 0,P):await e(d,void 0,P);t?.logging&&console.log("After response",x),a(x),n(false),s(0),t?.afterResponse&&x?.data&&(x.data=t?.afterResponse(x.data,d)),x.status&&t?.onSuccess&&t?.onSuccess(x,d),!x.status&&t?.onError&&t?.onError(x,d),t?.onAfterResponse?.(x,d);},{...o,loading:r,abort:()=>{l.current?.abort(),l.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function Lt(e,t){let{disableHysteresis:r=false,threshold:n=100,target:o}=t,a=e.current;return o&&(typeof o.pageYOffset=="number"?e.current=o.pageYOffset:o.scrollTop!==void 0&&(e.current=o.scrollTop)),!r&&a!==void 0&&e.current<a?false:(e.current||0)>n}var Ht=typeof window<"u"?window:null;function Bn(e={}){let{getTrigger:t=Lt,target:r=Ht,disableHysteresis:n=false,threshold:o=100}=e,a=le.useRef(0),[i,s]=le.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return le.useEffect(()=>{let l=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(l(),r)return r.addEventListener("scroll",l,{passive:true}),()=>{r.removeEventListener("scroll",l);}},[r,t,n,o]),i}function Vn(e,t){let r,n;typeof t=="number"?(r=t,n=void 0):(r=t?.delay??500,n=t?.onDebounce);let[o,a]=useState(e);return useEffect(()=>{let i=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(i)},[e,r,n]),o}var Gn=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:i,clear:s,clone:l}=Ke(n)||{},c=P=>{let x=P.states[n]??re;return {loading:x.loading,isCancel:x.isCancel,response:x.response}},{loading:u,isCancel:h,response:d}=o?ne(useShallow(c)):ne(c),C=useMemo(()=>[d?.data,{...d,loading:u,isCancel:h,refresh:a,abort:i,clear:s,clone:l}],[d,u,h,a,i,s,l]);return t?.selector?t.selector(C):C};var eo=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},je=(e,t)=>{let r=false;return le.Children.forEach(e,n=>{if(le.isValidElement(n)){let o=n,a=n.type.displayName;(t.includes(a)||o.props?.children&&je(o.props.children,t))&&(r=true);}}),r},to=(e,t)=>{let r={others:[]},n=o=>{le.Children.forEach(o,a=>{if(le.isValidElement(a)){let i=a.type.displayName,s=a,l=s.props?.children;t.includes(i)?r[i]=a:l&&je(l,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function so(){let{format:e}=W();return (t="",r=false)=>ve(t,r,e.number.decSep)}function lo(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 o=new ResizeObserver(()=>n());return o.observe(e),()=>o.disconnect()},[e,t]),r}var Ae={};function fo(e,t){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState();return useEffect(()=>{if(!e)return;if(Ae[e]){s(()=>Ae[e]);return}n(true),(async()=>{try{let c=await import(`${t.path}${e}${t.extension??".svg?react"}`);Ae[e]=c.default,s(()=>c.default);}catch(c){a(c),console.error(c);}finally{n(false);}})();},[e,t.path,t.extension]),{error:o,loading:r,Icon:i}}function go(e){let t=e,r=new Set;function n(){return t}function o(s){return r.add(s),()=>r.delete(s)}function a(s){typeof s=="function"?t=s(t):t=s,r.forEach(l=>l());}function i(s){let l=useRef(s?s(t):t);return useSyncExternalStore(o,()=>{let c=s?s(t):t,u=l.current;return Object.is(u,c)||(l.current=c),l.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function Ie(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],o=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:o,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=o;}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,o);});}function ho(e){let t={};for(let r in e){let n=e[r];t[r]=(...o)=>{let a=n(...o);return Ie(a,r),a};}return t}function Do(e,t){let[r,n]=useState(false),[o,a]=useState([]),i=useRef([]),s=useRef(null);useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let l=async h=>{s.current?.abort();let d=new AbortController;s.current=d,n(true),a([]),i.current=[],e(h,C=>{C.isDone||(i.current.push(C),a([...i.current])),(C.isDone||!C.status)&&(n(false),t?.onDone&&t?.onDone([...i.current])),C.status?t?.onStream&&t?.onStream(C):t?.onError&&t?.onError(C);},{signal:d.signal});},c=()=>{s.current?.abort(),s.current=null,n(false);},u=()=>{n(false),a([]),i.current=[];};return [o.map(h=>h.data),l,{loading:r,abort:c,reset:u,response:o}]}function So(e,t){let{key:r}=t,[n,o]=useState();return useEffect(()=>{let a=liveQuery(()=>e(r)).subscribe(o);return ()=>a.unsubscribe()},[r]),n}function qo(e,t){let{key:r}=t,[n,o]=useState(false);return useEffect(()=>{let a=liveQuery(async()=>!!await e(r)).subscribe(i=>{o(s=>s!==i?i:s);});return ()=>a.unsubscribe()},[r]),n}var ce,pe={};function Eo({dbName:e,version:t=1,table:r}){return ce||(ce=new tr(e),t=Object.keys(pe).length+1,ce.version(t).stores(pe)),r}function No({name:e,primaryKey:t}){pe[e]||(pe[e]=t);let r=()=>{let c=ce.table(e);if(!c)throw new Error(`Table ${e} is not registered in Dexie`);return c};return {table:r,create:async l=>await r().add(l),update:async(l,c)=>await r().update(l,c),put:async(l,c)=>await r().put({...c,[t]:l}),detail:async l=>await r().get(l),remove:async l=>await r().delete(l)}}var jo=()=>{let{encrypt:e,decrypt:t,passphrase:r}=X();return ({url:n,token:o,beforeRequest:a,onCallback:i,headers:s,onUnauthorized:l,handleToast:c,handleAuthorization:u,disabledToastWhenCancel:h,withCredentials:d,encryptRequest:C,encryptResponse:P,passphrase:x})=>{let N=Nt.create({baseURL:`${n}`,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:P)&&f){let w=p?.passphrase?typeof p.passphrase=="boolean"&&p.passphrase?r:p.passphrase:x;try{f=t(f,w);}catch{try{f=t(f,r);}catch{}}}let T={...i({...y,data:f,isCancel:m,isUnauthorization:O},D),isCancel:m,isUnauthorization:O,httpCode:y?.status},g=typeof p?.disabledToastWhenCancel=="boolean"?p?.disabledToastWhenCancel:h,q=u?u(T,p):!O;if((p?.infoSuccess&&T.status||p?.infoError&&!T.status)&&c&&(!m||!g)&&c(T),!q&&(!m||!p?.disabledHandleUnauthorized)){let w=p?.onUnauthorized||l;w&&w(T);}if(typeof R=="function")R(T);else return T},z=(y,R=()=>{})=>N({...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"?o&&(S.Authorization=`Bearer ${o}`):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=e(p,T);}return z({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:z,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"?o: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=e(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)}),q=g?.status,w=q===401;if(!g.ok){let v=g?.statusText||"Error";try{let _=g.headers.get("content-type")||"",L=await g.clone().text();if(L)if(_.includes("application/json"))try{let G=JSON.parse(L);if((typeof m?.encryptResponse=="boolean"?m?.encryptResponse:P)&&p){let fe=m?.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?r:m.passphrase:x;try{p=t(G,fe);}catch{try{p=t(G,r);}catch{}}}v=G?.message||v;}catch{v=L;}else v=L;}catch{}let Q=typeof m?.disabledToastWhenCancel=="boolean"?m?.disabledToastWhenCancel:h,j={status:!1,data:void 0,message:v,isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!0};m?.infoError&&c&&!Q&&c(j),D(j);return}let $=g.body.getReader(),Y=new TextDecoder("utf-8"),J="",te=!1;for(;!te;){let{done:v,value:Q}=await $.read();te=v,J+=Y.decode(Q,{stream:!0});let j=J.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
|
+
`);J=j.pop();for(let _ of j)if(_.startsWith("data:"))try{let L=ae(_);D({status:!0,data:L,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,isDone:!1});}catch{}}D({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:w,httpCode:q,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(e,t){!e||typeof e!="object"||Object.keys(e).forEach(r=>{let n=e[r],o=t?`${t}.${r}`:r;if(typeof n=="function"){try{Object.defineProperty(n,"__path",{value:o,writable:!0,enumerable:!1,configurable:!0});}catch{n.__path=o;}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,o);});}function We(e,t,r=""){if(typeof e=="function")return ()=>{let o=e(t);return _e(o,r),o};if(!e||typeof e!="object")return e;let n={};for(let o in e){let a=r?`${r}.${o}`:o;n[o]=We(e[o],t,a);}return n}function Vo(e,t){return We(e,t)}function Wo(e){let t=[...e],r=a=>a==null?"":String(a),n=(a,i)=>{if(Array.isArray(i.and))return i.and.every(s=>n(a,s));if(Array.isArray(i.or))return i.or.some(s=>n(a,s));for(let[s,l]of Object.entries(i)){if(s==="and"||s==="or")continue;let{opt:c="eq",value:u,required:h=true}=typeof l=="object"&&l!==null&&"value"in l?l:{value:l};if(!h&&(u==null||u===""))continue;let d=E(a,s,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(P=>r(P).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(P=>r(P).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},o={where(a){return a&&(t=t.filter(i=>n(i,a))),o},sort(a){let i=Object.entries(a);return t.sort((s,l)=>{for(let[c,u]of i){let h=E(s,c),d=E(l,c);if(h!==d)return u==="asc"?h>d?1:-1:h<d?1:-1}return 0}),o},distinct(a){let i=Array.isArray(a)?a:a?[a]:[],s=new Set;return t=t.filter(l=>{let c=i.length?i.map(u=>E(l,u)).join("|"):JSON.stringify(l);return s.has(c)?false:(s.add(c),true)}),o},select(a){return t=t.map(i=>{let s={};for(let l of a)s[l]=E(i,l);return s}),o},paginate(a,i){let s=(a-1)*i,l=s+i;return {data:t.slice(s,l),total:t.length,page:a,pageSize:i,totalPages:Math.ceil(t.length/i)}},groupBy(a){let i={};for(let s of t){let l=E(s,a),c=String(l??"undefined");i[c]||(i[c]=[]),i[c].push(s);}return i},map(a){return t=t.map(a),o},reduce(a,i){return t.reduce(a,i)},limit(a){return t=t.slice(0,a),o},get(){return t}};return o}function Jo({label:e="",search:t="",bgcolor:r="#337ab7",color:n="#fff"}){let o=[];e||(e="");let a=t?.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return typeof e!="string"?o=e.toString().split(new RegExp(`(${a})`,"gi")):o=e.split(new RegExp(`(${a})`,"gi")),jsx(Fragment,{children:o.map((i,s)=>jsx("span",{style:i?.toString()?.toLowerCase()===t?.toString()?.toLowerCase()?{backgroundColor:r,color:n}:{},children:i},s))})}function es(e,t,r,n){let o=useRef(void 0),a=useRef({x:0,y:0,width:0,visible:true}),i=useRef(r),s=useRef(true);useEffect(()=>{let l=e.current;if(!l)return;let c=new IntersectionObserver(([u])=>{s.current=u.isIntersecting;},{threshold:0});return c.observe(l),()=>{c.disconnect(),s.current=false;}},[e,t]),useEffect(()=>{i.current=r;},[r]),useLayoutEffect(()=>{if(n)return;let l=e.current,c=t.current;if(!l||!c)return;if(i.current){requestAnimationFrame(()=>{c.style.transform="",c.style.top="",c.style.left="",c.style.removeProperty("width");});return}let u=false,h=k=>{let M=k;for(;M;){if(window.getComputedStyle(M).display==="none")return false;M=M.parentElement;}return true},d=()=>{if(!l||!c||i.current)return;let k=l.getBoundingClientRect(),M=h(l);a.current={x:k.left,y:k.top,width:k.width,visible:M},M?(c.style.top="0",c.style.left="0",c.style.display="",c.style.transform=`translate3d(${k.left}px, ${k.top}px, 0)`,c.style.width=`${k.width}px`):c.style.display="none";},C=()=>{if(!l||!c||i.current)return;let M=c.getBoundingClientRect().height;l.style.height=`${M}px`,l.style.minHeight=`${M}px`;},P=()=>{u||(u=true,o.current=requestAnimationFrame(()=>{d(),u=false;}));},x=()=>{requestAnimationFrame(()=>{d(),requestAnimationFrame(()=>{C();});});},N=new ResizeObserver(()=>{P();}),F=new ResizeObserver(()=>{requestAnimationFrame(()=>{C(),d();});}),z=new MutationObserver(()=>{P();});N.observe(l),F.observe(c),z.observe(document.body,{attributes:true,attributeFilter:["style","class"],subtree:true});let U=null,K=()=>{if(!l||!c||i.current||!s.current)return;let k=c.cloneNode(true);k.removeAttribute("style"),l.innerHTML="",l.appendChild(k),requestAnimationFrame(()=>{c.style.display="none";}),U&&clearTimeout(U),U=setTimeout(()=>{l.innerHTML="",requestAnimationFrame(()=>{c.style.display="";});},150);},B=()=>{P();};return c.addEventListener("layout-complete",x),window.addEventListener("scroll",K,{passive:true,capture:true}),window.addEventListener("resize",B,{passive:true}),requestAnimationFrame(()=>{d(),requestAnimationFrame(()=>{C();});}),()=>{o.current&&cancelAnimationFrame(o.current),N.disconnect(),F.disconnect(),z.disconnect(),c.removeEventListener("layout-complete",x),window.removeEventListener("scroll",K),window.removeEventListener("resize",B);}},[n]);}function ns(e=100){let[t,r]=useState(false);return useEffect(()=>{if(!("PerformanceObserver"in window))return;let n=new PerformanceObserver(o=>{for(let a of o.getEntries())a.duration>e&&(r(true),setTimeout(()=>{r(false);},300));});return n.observe({entryTypes:["longtask"]}),()=>n.disconnect()},[e]),t}function is(e,t=0){let[r,n]=useState(false),o=useRef(null),a=useRef(null),i=useRef(false);return useLayoutEffect(()=>{let s=e.current;if(!s)return;let l=()=>{i.current||(o.current&&clearTimeout(o.current),o.current=window.setTimeout(()=>{i.current=true,n(true);},t));},c=()=>{let d=s.getBoundingClientRect();if(d.width===0||d.height===0)return;let C=a.current,P={w:d.width,h:d.height};(!C||C.w!==P.w||C.h!==P.h)&&(a.current=P,l());};requestAnimationFrame(()=>{c();});let u=new ResizeObserver(()=>{c();}),h=new MutationObserver(()=>{c();});return u.observe(s),h.observe(s,{childList:true,subtree:true,attributes:true}),()=>{o.current&&clearTimeout(o.current),u.disconnect(),h.disconnect();}},[t]),r}export{gt as BgsCoreProvider,wt as DataTypeEnum,Jo as Highlight,St as HttpMethod,Vo as bindApi,qe as capitalizeWords,Mn as createApiHelper,Eo as createDatabase,eo as createElement,go as createStore,No as createTable,vr as debounce,ye as decrypt,$e as decryptString,re as defaultState,Cr as diffJson,me as encrypt,Me as encryptString,Ur as filterDOMPropsLite,Ot as formatBoolean,vt as formatDate,qt as formatNumber,Pt as formatString,Pe as generateCacheKey,xr as generateUUID,Ke as getApiActions,Nr as getDateRangeLabelFromSorted,E as getFieldValue,kr as getInitials,Er as getMinMaxDate,Mr as getTotalMinutes,Sr as isArray,de as isDirtyRaw,V as isNotEmpty,pt as isValidNumber,qr as jsonCopy,we as labelFormatter,$r as mappingData,Ar as mappingUndefinedtoNull,H as moment,ft as objectToQueryString,ae as parseSSEChunk,ve as parseStringToNumber,Wo as query,He as registerApi,wr as renderChildren,Oe as replaceNullStrings,xt as safeUpdate,Or as sorting,to as splitElement,ct as stableStringify,Pr as summary,Fe as unregisterApi,es as useAnchorPosition,At as useApiLoad,ne as useApiLoadStore,Hn as useApiSend,Gn as useApiStore,Do as useApiStream,W as useBgsCore,ns as useCpuBusy,jo as useCreateApi,X as useCrypto,So as useDbLive,qo as useDbLiveFlag,Vn 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.
|
|
3
|
+
"version": "1.0.43",
|
|
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",
|