@bgscore/react-core 1.0.19 → 1.0.21

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.js CHANGED
@@ -1,3 +1,5 @@
1
- import ee,{createContext,useContext,useEffect,useCallback,useRef,useMemo,useState,useSyncExternalStore}from'react';import $ from'dayjs';import Ve from'dayjs/plugin/utc';import _e from'dayjs/plugin/timezone';import ze from'dayjs/plugin/duration';import Ye from'dayjs/plugin/advancedFormat';import We from'dayjs/plugin/localizedFormat';import Je from'dayjs/plugin/relativeTime';import Ge from'dayjs/plugin/isSameOrBefore';import Qe from'dayjs/plugin/isSameOrAfter';import Xe from'dayjs/plugin/weekOfYear';import Ze from'dayjs/plugin/customParseFormat';import {jsx}from'react/jsx-runtime';import qe from'crypto-js/aes';import Ue from'crypto-js/pbkdf2';import ct from'crypto-js/enc-utf8';import X from'crypto-js/enc-base64';import we from'crypto-js/lib-typedarrays';import {create}from'zustand';import {useShallow}from'zustand/react/shallow';import At from'axios';import _t,{liveQuery}from'dexie';$.extend(Ve);$.extend(_e);$.extend(ze);$.extend(Ye);$.extend(We);$.extend(Je);$.extend(Ge);$.extend(Qe);$.extend(Xe);$.extend(Ze);var q=$;function lr(){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 pr=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function ur(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 K(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 De={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=De.snackCase(De.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function fr(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},dr={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}))},mr=(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 yr(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function et(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 Ce(e,t){return et([t??"undefined",e??"undefined"])}function Ae(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function gr(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var Se=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function le(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 tt(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&&le(n,r))return true}return false}function Pe(e="",t=false,r="."){if(!tt(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var rt=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 Rr(e){let t={};for(let r in e)rt.has(r)&&(t[r]=e[r]);return t}function br(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function hr(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(q).sort((a,l)=>a.diff(l)),n=r[0].format("YYYY-MM-DD"),o=r.at(-1).format("YYYY-MM-DD");return [n,o]}function Tr(e,t){let r=q(e),n=q(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 Dr(e,t){if(!e?.trim()||!t?.trim())return "";if(e===t)return "0";let r=q(e,"HH:mm",true),n=q(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 xr=(e=[],t="label",r="value",n,o=" | ")=>{if(!Array.isArray(e))return [[],[]];let a=e.map((i,c)=>{if(typeof i!="object"){let f=typeof t=="function"?t(i,c):i,R=typeof r=="function"?r(i,c):i;return {label:f,value:R,index:c,rowData:i}}else {let f=typeof t=="function"?t(i,c):E(i,t,""),R=typeof r=="function"?r(i,c):E(i,r,"");return {label:f,value:typeof R=="boolean"?R:R||"",index:c,rowData:i}}});if(!n)return [[{items:a}],a];let l=Array.isArray(n)?n:[n],s=new Map;for(let i of a){let c=i.rowData,f=l.map(g=>String(typeof c=="object"?E(c,g,"")??"":"")).join(o),R=s.get(f)||[];R.push(i),s.set(f,R);}return [Array.from(s.entries()).map(([i,c])=>({group:i,items:c})),a]};function nt(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(!K(o))continue;Array.isArray(o)?o.forEach(l=>{r.push(`${a}=${encodeURIComponent(l)}`);}):typeof o=="object"&&o!==null?r.push(nt(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function xe(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=xe(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=xe(e[t]));return e}var Oe=createContext(void 0);function L(){let e=useContext(Oe);return e||{}}var it=({children:e,value:t})=>{let r={...t};return useEffect(()=>{(async()=>{if(!(typeof window>"u")&&t.localeConfig){let{preset:o,object:a,isLocal:l}=t.localeConfig;if(typeof o=="string")try{await import(`dayjs/locale/${o}`);}catch{console.warn(`Locale "${o}" not found, fallback to default`);}o&&q.locale(o,a??{},l);}})();},[t.localeConfig]),jsx(Oe.Provider,{value:r,children:e})};function ce(e,t){let r=we.random(16),n=we.random(16),o=Ue(t,r,{keySize:256/32,iterations:1e3}),a=qe.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(X),iv:n.toString(X),encrypted:a}}function pe(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Ue(t,X.parse(r),{keySize:256/32,iterations:1e3}),s=qe.decrypt(o,a,{iv:X.parse(n)}).toString(ct);return JSON.parse(s)}function ve(e,t){return JSON.stringify(ce(e,t))}function ke(e,t){return pe(JSON.parse(e),t)}function Z(){let{passphrase:e}=L();return {passphrase:e,encrypt(t,r){return ce(t,r||e)},decrypt(t,r){return pe(t,r||e)},encryptString(t,r){return ve(t,r||e)},decryptString(t,r){return ke(t,r||e)}}}var Ee=()=>{let{encrypt:e,decrypt:t}=Z(),r=useCallback((l,s)=>{try{let i=e(s);localStorage.setItem(l,JSON.stringify(i));}catch(i){console.error("Failed to save to storage:",i);}},[e]),n=useCallback(l=>{try{let s=localStorage.getItem(l);return s?t(JSON.parse(s)):null}catch(s){return console.error("Failed to get from storage:",s),null}},[t]),o=l=>{let[s,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=f=>{if(f.key===l)if(f.newValue)try{i(t(JSON.parse(f.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]),s},a=useCallback(l=>{l?localStorage.removeItem(l):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function dt(e,t){for(let r in t){let n=e[r],o=t[r];if(r==="response"){let a=JSON.stringify(n),l=JSON.stringify(o);if(a!==l)return false}else if(n!==o)return false}return true}var z={loading:false,response:void 0,isCancel:false},Y=create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??z,a={...o,...n};dt(o,a)||e(l=>({states:{...l.states,[r]:a}}));}}));var fe=new Map,Ne=(e,t)=>{fe.set(e,t);},Me=e=>{fe.delete(e);},$e=e=>fe.get(e);function yt(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,l=o?void 0:r,s=o?r:n,i=s?.storeName||`${a}`,c=s?.mergeStrategy??"replace",[f,R,g,x]=Y(useShallow(h=>{let u=h.states[i]??z;return [u.loading,u.isCancel,u.response,h.updateState]})),{storageKey:O,cache:b,clearPreviousData:N,refetchOnWindowFocus:B}=L(),J=Ee(),M=useRef(void 0),F=useRef(null),{cacheName:H,cacheKey:I,timeout:ne,timeoutUnit:oe,persistence:se,cacheEnabled:G}=useMemo(()=>{let h=O?J.get(O):void 0,u=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,T=Ce({...l,session:h},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),m=false;typeof b?.enabled=="boolean"&&(m=b.enabled);let A=false;typeof b?.persistence=="boolean"&&(A=b?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(A=s?.cache?.persistence??false);let P=60*5,v="s";return K(b?.timeout)&&(typeof b?.timeout=="number"?(P=b.timeout,v="s"):typeof b?.timeout=="object"&&(P=b?.timeout.value,v=b?.timeout.unit)),K(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?m=s.cache.enabled:m=true,typeof s?.cache?.timeout=="number"?(P=s.cache.timeout,v="s"):typeof s?.cache?.timeout=="object"&&(P=s.cache.timeout.value,v=s.cache.timeout.unit)):m=s.cache),{cacheName:u,cacheKey:T,timeout:P,timeoutUnit:v,persistence:A,cacheEnabled:m}},[s?.cache,l,O,b,a]);useEffect(()=>{let h=JSON.stringify(K(M.current)?M.current:""),u=JSON.stringify(K(l)?l:""),T=M.current===void 0;(h!==u||T)&&!s?.hold&&((s?.clearPreviousData??N)&&x(i,{response:null}),p(),M.current=l),s?.onChange&&s?.onChange(l,U);},[l,s?.clearPreviousData,N,s?.hold,...s?.trigger||[]]),useEffect(()=>{let h=async()=>{!se&&H&&I&&(await caches.open(H)).delete(I);};return window.addEventListener("beforeunload",h),()=>{window.removeEventListener("beforeunload",h),F.current?.abort();}},[se,H,I,i,F]);let p=useCallback(async h=>{let u=l;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(u=s?.beforeRequest(l)),G&&!h&&!R){s?.onBeforeRequest&&s?.onBeforeRequest(l);let T=await caches.open(H),A=await(await T.match(I))?.json();if(A){let{data:P,expired:v}=A;if(q().isAfter(v))await T.delete(I);else {s?.afterResponse&&P?.data&&(P.data=s?.afterResponse(P.data,u)),s?.logging&&console.log("After request: Using Cache",P),P?.status&&s?.onSuccess?.(P,u),s?.onAfterResponse?.(P,u),x(i,{loading:false,response:P});return}}}if(typeof t=="function"){F.current?.abort();let T=new AbortController;F.current=T,x(i,{loading:true}),s?.logging&&console.log("Before request",l),s?.onBeforeRequest&&s?.onBeforeRequest(l);let m=o?await t(void 0,{...s,signal:T.signal}):await t(u,void 0,{...s,signal:T.signal});if(m.__rawData=m.data,c==="append"&&K(g.__rawData)&&K(m?.data)){if(Array.isArray(g.__rawData)&&Array.isArray(m?.data)){let A=[...g?.__rawData??[],...m.data??[]];m.data=A,m.__rawData=A;}else if(typeof g.__rawData=="object"&&typeof m.data=="object"){let A={...g.__rawData,...m.data};m.data=A,m.__rawData=A;}}if(s?.afterResponse&&m?.data&&(m.data=s?.afterResponse(m.data,u)),s?.logging&&console.log("After request",m),m.status&&s?.onSuccess?.(m,u),m.status||s?.onError?.(m,u),s?.onAfterResponse?.(m,u),x(i,{loading:false,response:m,isCancel:false}),G&&m.status){let A=q().add(ne,oe).toISOString(),P={data:m,expired:A},v=await caches.open(H),V=new Response(JSON.stringify(P));await v.put(I,V);}}},[l,t,s,R,H,I,ne,oe,G,g]);useEffect(()=>{if(s?.refreshInterval){let h=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,u=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,T=setInterval(()=>{p();},q.duration(h,u).asMilliseconds());return ()=>clearInterval(T)}return ()=>{}},[s?.refreshInterval,p]);let C=useRef(null),{enabledRefetch:d,timeoutRefetch:S,timeoutUnitRefetch:D}=useMemo(()=>{let h=s?.refetchOnWindowFocus?.enabled??B?.enabled??false,u=s?.refetchOnWindowFocus?.timeout??B?.timeout,T=typeof u=="number"?u:u?.value??60*5,m=typeof u=="object"?u.unit:"s";return {enabledRefetch:h,timeoutRefetch:T,timeoutUnitRefetch:m}},[s?.refetchOnWindowFocus,B]);useEffect(()=>{if(!d||s?.hold)return;let h=q.duration(S,D).asMilliseconds(),u=()=>{let m=Date.now(),A=C.current;A!==null&&m-A>=h&&p(),C.current=null;},T=()=>{C.current=Date.now();};return window.addEventListener("focus",u),window.addEventListener("blur",T),()=>{window.removeEventListener("focus",u),window.removeEventListener("blur",T);}},[d,S,D,p,s?.hold]);let w=useCallback(()=>{F.current?.abort(),F.current=null,x(i,{loading:false,isCancel:true});},[i,F]),y=useCallback(()=>{x(i,{loading:false,response:null});},[i]),U=useMemo(()=>({...g,loading:f,refresh:p,abort:w,clear:y,response:g,isCancel:R,clone:(h,u)=>yt(t,h,{storeName:`${a}-clone`,...u})}),[g,f,p,w,y,R,t]);return useEffect(()=>(Ne(i,U),()=>{Me(i);}),[U,i]),[g?.data,U]}async function en(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var gt=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(gt||{}),Rt=(p=>(p.number="number",p.currency="currency",p.percent="percent",p.date="date",p.dateTime="dateTime",p.month="month",p.year="year",p.time="time",p.timestamp="timestamp",p.string="string",p.textarea="textarea",p.code="code",p.password="password",p.boolean="boolean",p.toggle="toggle",p.email="email",p.phone="phone",p.url="url",p.json="json",p.file="file",p.image="image",p.array="array",p.object="object",p.enum="enum",p.user="user",p.department="department",p.status="status",p))(Rt||{});var an=()=>{let{format:e}=L();return (t,r,n)=>{try{return r==="number"?Ke(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(o=>o===r)?Tt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?bt(t,n):r==="string"?ht(t,n):t?.toString()}catch{return}}};function bt(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function ht(e,t){if(!K(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=Ae(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}Ke(10,{thouSep:",",decSep:".",decDigits:2});function Ke(e,{thouSep:t,decSep:r,decDigits:n,method:o,dirty:a}){if(a){let R=String(e??"").trim().trim();if(le(R,r))return R}if(e==null||isNaN(Number(e)))return "";let l=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let f=Math.pow(10,n);l=Math[o](l*f)/f;}else l=Math[o](l);else if(typeof n=="number"){let f=Math.pow(10,n);l=Math.trunc(l*f)/f;}let s=0;if(n==="auto"){let f=l.toString(),R=f.indexOf(".");R!==-1&&(s=f.length-R-1);}let i={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?s:n||0,maximumFractionDigits:n==="auto"?s: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 Tt(e,{display:t,value:r}){if(!K(e))return e;let n=q(e,r);return n.isValid()?n.format(t):e}function pn(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 dn(e,t,r){let[n,o]=useState(false),a=(c,f)=>typeof e=="string"&&c===e||typeof e=="number"&&f===e,l=c=>c!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(c.tagName)||c.hasAttribute("contentEditable")),s=c=>{let{key:f,keyCode:R}=c,g=c.ctrlKey,x=c.altKey,O=c.shiftKey;if(!l(document.activeElement))if(t)if(typeof t=="string")a(f,R)&&(t==="ctrl"&&g||t==="alt"&&x||t==="shift"&&O)&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));else {let b=t.every(N=>N==="ctrl"?g:N==="alt"?x:N==="shift"?O:false);a(f,R)&&b&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));}else a(f,R)&&(c.preventDefault(),r&&c.stopPropagation(),o(!n));},i=({key:c,keyCode:f})=>{a(c,f)&&o(false);};return useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",i);}),[]),n}var Dn=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:l,handleAuthorization:s,disabledToastWhenCancel:i,withCredentials:c,encryptRequest:f,encryptResponse:R,passphrase:g})=>{let{encrypt:x,decrypt:O,passphrase:b}=Z(),N=At.create({baseURL:`${e}`,headers:{"Content-Type":"application/json",...o}}),B=(p,C,d,S)=>{let D=S?.code==="ERR_CANCELED",w=p?.status===401,y=p?.data;if((typeof d?.encryptResponse=="boolean"?d?.encryptResponse:R)&&y){let A=d?.passphrase?typeof d.passphrase=="boolean"&&d.passphrase?b:d.passphrase:g;try{y=O(y,A);}catch{try{y=O(y,b);}catch{}}}let u={...n({...p,data:y,isCancel:D,isUnauthorization:w},S),isCancel:D,isUnauthorization:w,httpCode:p?.status},T=typeof d?.disabledToastWhenCancel=="boolean"?d?.disabledToastWhenCancel:i,m=s?s(u,d):!w;if((d?.infoSuccess&&u.status||d?.infoError&&!u.status)&&l&&(!D||!T)&&l(u),!m&&(!D||!d?.disabledHandleUnauthorized)){let A=d?.onUnauthorized||a;A&&A(u);}if(typeof C=="function")C(u);else return u},J=(p,C=()=>{})=>N({...p,withCredentials:typeof p.withCredentials=="boolean"?p.withCredentials:c}).then(C).catch(d=>C(d.response,d)),M=(p,C,d,S,D)=>{let y={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...D},U={...y.headers};if(y.token&&(typeof y.token=="boolean"?t&&(U.Authorization=`Bearer ${t}`):y.token&&(U.Authorization=`Bearer ${y.token}`)),r&&(d=r(d)),(typeof y?.encryptRequest=="boolean"?y?.encryptRequest:f)&&d){let u=D?.passphrase?typeof D.passphrase=="boolean"&&D.passphrase?b:D.passphrase:g;d=x(d,u);}return J({url:C,method:p,data:d,headers:U,responseType:y.responseType,signal:y.signal,withCredentials:y.withCredentials,onUploadProgress:u=>{y?.onUploadProgress&&y?.onUploadProgress(u);}},(u,T)=>B(u,S,y,T))};return {client:J,post:(p,C,d,S)=>M("POST",`${p}`,C,d,S),put:(p,C,d,S)=>M("PUT",`${p}`,C,d,S),patch:(p,C,d,S)=>M("PATCH",`${p}`,C,d,S),delete:(p,C,d)=>M("DELETE",`${p}`,null,C,d),get:(p,C,d)=>M("GET",`${p}`,null,C,d),upload:(p,C,d,S)=>{let D=new FormData;return Object.keys(C).forEach(w=>D.append(w,C[w])),M("POST",`${p}`,D,d,{infoSuccess:false,...S,headers:{"Content-Type":"multipart/form-data",...S?.headers}})},stream:async(p,C,d,S,D)=>{try{let y={...{token:!0,responseType:"json",infoError:!0},...D},U={"Content-Type":"application/json",...o,...y.headers};if(y.token){let k=typeof y.token=="boolean"?t:y.token;k&&(U.Authorization=`Bearer ${k}`);}let h=d;if(r&&(h=r(h)),(typeof y.encryptRequest=="boolean"?y.encryptRequest:f)&&h){let k=y.passphrase?typeof y.passphrase=="boolean"&&y.passphrase?b:y.passphrase:g;h=x(h,k);}let T=await fetch(`${e}${C}`,{method:p,headers:U,credentials:y.withCredentials?"include":"same-origin",signal:y.signal,body:JSON.stringify(h)}),m=T?.status,A=m===401;if(!T.ok){let k=T?.statusText||"Error";try{let Q=T.headers.get("content-type")||"",j=await T.clone().text();if(j)if(Q.includes("application/json"))try{let ie=JSON.parse(j);if((typeof D?.encryptResponse=="boolean"?D?.encryptResponse:R)&&d){let je=D?.passphrase?typeof D.passphrase=="boolean"&&D.passphrase?b:D.passphrase:g;try{d=O(ie,je);}catch{try{d=O(ie,b);}catch{}}}k=ie?.message||k;}catch{k=j;}else k=j;}catch{}let ae=typeof D?.disabledToastWhenCancel=="boolean"?D?.disabledToastWhenCancel:i,_={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:A,httpCode:m,isDone:!0};D?.infoError&&l&&!ae&&l(_),S(_);return}let P=T.body.getReader(),v=new TextDecoder("utf-8"),V="",Te=!1;for(;!Te;){let{done:k,value:ae}=await P.read();Te=k,V+=v.decode(ae,{stream:!0});let _=V.split(`
1
+ import ie,{createContext,useContext,useEffect,useCallback,useRef,useMemo,useState,useSyncExternalStore}from'react';import F from'dayjs';import Ye from'dayjs/plugin/utc';import Je from'dayjs/plugin/timezone';import Ge from'dayjs/plugin/duration';import Qe from'dayjs/plugin/advancedFormat';import Xe from'dayjs/plugin/localizedFormat';import Ze from'dayjs/plugin/relativeTime';import et from'dayjs/plugin/isSameOrBefore';import tt from'dayjs/plugin/isSameOrAfter';import rt from'dayjs/plugin/weekOfYear';import nt from'dayjs/plugin/customParseFormat';import {jsx}from'react/jsx-runtime';import Ue from'crypto-js/aes';import ke from'crypto-js/pbkdf2';import dt from'crypto-js/enc-utf8';import ae from'crypto-js/enc-base64';import qe from'crypto-js/lib-typedarrays';import {create}from'zustand';import {useShallow}from'zustand/react/shallow';import wt from'axios';import Jt,{liveQuery}from'dexie';F.extend(Ye);F.extend(Je);F.extend(Ge);F.extend(Qe);F.extend(Xe);F.extend(Ze);F.extend(et);F.extend(tt);F.extend(rt);F.extend(nt);var M=F;function pr(){let t=()=>Math.random()*16%16|0;return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>(e==="x"?t():t()&3|8).toString(16))}function ur(t,e){try{return JSON.stringify(t)!==JSON.stringify(e)}catch{return false}}var fr=t=>(Object.keys(t).forEach(e=>{t[e]===void 0&&(t[e]=null);}),t);function dr(t,e){let r=false;return t&&typeof t=="object"&&Array.isArray(t)&&(typeof e=="number"?t.length>e&&(r=true):r=true),r}function H(t){return !(t==null||typeof t=="string"&&t.trim()===""||Array.isArray(t)&&t.length===0||typeof t=="object"&&t!==null&&!Array.isArray(t)&&Object.keys(t).length===0)}var Ce={camelCase:(t="")=>(t=t.split(".").map(e=>(e=e.charAt(0).toUpperCase()+e.slice(1),e)).join(" "),t=t.replace(/([a-z0-9])([A-Z])/g,"$1 $2"),t.charAt(0).toUpperCase()+t.slice(1)),snackCase:(t="")=>{let r=t.replace(/_([a-z])/g,(n,o)=>o.toUpperCase()).replace(/([A-Z])/g," $1");return r=r.charAt(0).toUpperCase()+r.slice(1),r},changeAll:(t="",e=false)=>{let r="";try{t=t?.split(".")[t?.split(".")?.length-1],t=t?.split("[]")[t?.split("[]")?.length-1],r=Ce.snackCase(Ce.camelCase(t)),e&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function yr(t,e){return typeof t=="function"?t(e):t}var k=(t,e,r)=>{if(!t)return r;if(t.hasOwnProperty(e))return t[e];let n=e.replace(/\[(\d+)\]/g,".$1").split("."),o=t;for(let a of n){if(o==null)return r;o=o[a];}return o===void 0?r:o},mr={desc:(t,e)=>(t||(t=[]),t.sort((r,n)=>{if(e){let o=k(r,e)?k(r,e):"",a=k(n,e)?k(r,e):"";return o<a?1:-1}else return r<n?1:-1})),asc:(t,e)=>(t||(t=[]),t.sort((r,n)=>{if(e){let o=k(r,e)?k(r,e):"",a=k(n,e)?k(n,e):"";return o>a?1:-1}else return r>n?1:-1}))},gr=(t,e)=>{Array.isArray(t)||(t=[]);let r=[];return r=t.map(n=>Number(e?k(n,e)||0:n||0)),r.reduce((n,o)=>(n||0)+(o||0),0)||0};function Rr(t){try{return t&&JSON.parse(JSON.stringify(t))}catch{return t}}function ot(t){let e=new WeakSet;return JSON.stringify(t,function(r,n){return n!==null&&typeof n=="object"?e.has(n)?void 0:(e.add(n),Object.keys(n).sort().reduce((o,a)=>(o[a]=n[a],o),{})):n})??""}function Se(t,e){return ot([e??"undefined",t??"undefined"])}function Oe(t=""){return typeof t!="string"&&(t=""),t.replace(/\b\w/g,e=>e.toUpperCase())}function hr(t,e=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{t(...o);},e*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var se=t=>{let e=t.match(/^data:\s*(.*)/s);if(e)try{return JSON.parse(e[1])}catch{return null}return null};function ue(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return t===e||t==="-"||t===`-${e}`||new RegExp(`^-?\\d+${r}$`).test(t)||new RegExp(`^-?${r}\\d*$`).test(t)}function st(t,e=false,r="."){if(typeof t=="number")return !Number.isNaN(t);if(typeof t=="string"&&t.trim()!==""){let n=t.trim(),o=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");if(new RegExp(`^-?(\\d+(\\${o}\\d+)?|\\${o}\\d+)$`).test(n)||e&&ue(n,r))return true}return false}function Pe(t="",e=false,r="."){if(!st(t,!e,r))return null;let n=r==="."?t.trim():t.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var at=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 br(t){let e={};for(let r in t)at.has(r)&&(e[r]=t[r]);return e}function Tr(t,e=2){return t?t.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,e).join(""):""}function Dr(t=[]){let e=t.filter(Boolean);if(e.length===0)return ["",""];let r=e.map(M).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 xr(t,e){let r=M(t),n=M(e),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 Cr(t,e){if(!t?.trim()||!e?.trim())return "";if(t===e)return "0";let r=M(t,"HH:mm",true),n=M(e,"HH:mm",true);if(!r.isValid()||!n.isValid())return "";let o=n.diff(r,"minutes");return o<=0&&(o+=24*60),o.toString()}var Ar=(t=[],e="label",r="value",n,o=" | ")=>{if(!Array.isArray(t))return [[],[]];let a=t.map((c,l)=>{if(typeof c!="object"){let m=typeof e=="function"?e(c,l):c,y=typeof r=="function"?r(c,l):c;return {label:m,value:y,index:l,rowData:c}}else {let m=typeof e=="function"?e(c,l):k(c,e,""),y=typeof r=="function"?r(c,l):k(c,r,"");return {label:m,value:typeof y=="boolean"?y:y||"",index:l,rowData:c}}});if(!n)return [[{items:a}],a];let i=Array.isArray(n)?n:[n],s=new Map;for(let c of a){let l=c.rowData,m=i.map(D=>String(typeof l=="object"?k(l,D,"")??"":"")).join(o),y=s.get(m)||[];y.push(c),s.set(m,y);}return [Array.from(s.entries()).map(([c,l])=>({group:c,items:l})),a]};function it(t,e=""){let r=[];for(let n in t)if(t.hasOwnProperty(n)){let o=t[n],a=e?`${e}[${encodeURIComponent(n)}]`:encodeURIComponent(n);if(!H(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(it(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function Ae(t){if(t==="null")return null;if(Array.isArray(t))for(let e=0;e<t.length;e++)t[e]=Ae(t[e]);else if(t&&typeof t=="object")for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&(t[e]=Ae(t[e]));return t}var we=createContext(void 0);function _(){let t=useContext(we);return t||{}}var ut=({children:t,value:e})=>{let r={...e};return useEffect(()=>{(async()=>{if(!(typeof window>"u")&&e.localeConfig){let{preset:o,object:a,isLocal:i}=e.localeConfig;if(typeof o=="string")try{await import(`dayjs/locale/${o}`);}catch{console.warn(`Locale "${o}" not found, fallback to default`);}o&&M.locale(o,a??{},i);}})();},[e.localeConfig]),jsx(we.Provider,{value:r,children:t})};function fe(t,e){let r=qe.random(16),n=qe.random(16),o=ke(e,r,{keySize:256/32,iterations:1e3}),a=Ue.encrypt(JSON.stringify(t),o,{iv:n}).toString();return {salt:r.toString(ae),iv:n.toString(ae),encrypted:a}}function de(t,e){let{salt:r,iv:n,encrypted:o}=t,a=ke(e,ae.parse(r),{keySize:256/32,iterations:1e3}),s=Ue.decrypt(o,a,{iv:ae.parse(n)}).toString(dt);return JSON.parse(s)}function ve(t,e){return JSON.stringify(fe(t,e))}function Ee(t,e){return de(JSON.parse(t),e)}function G(){let{passphrase:t}=_();return {passphrase:t,encrypt(e,r){return fe(e,r||t)},decrypt(e,r){return de(e,r||t)},encryptString(e,r){return ve(e,r||t)},decryptString(e,r){return Ee(e,r||t)}}}var Ne=()=>{let{encrypt:t,decrypt:e}=G(),r=useCallback((i,s)=>{try{let c=t(s);localStorage.setItem(i,JSON.stringify(c));}catch(c){console.error("Failed to save to storage:",c);}},[t]),n=useCallback(i=>{try{let s=localStorage.getItem(i);return s?e(JSON.parse(s)):null}catch(s){return console.error("Failed to get from storage:",s),null}},[e]),o=i=>{let[s,c]=useState(()=>{try{let l=localStorage.getItem(i);return l?e(JSON.parse(l)):null}catch(l){return console.error("Failed to parse localStorage value",l),null}});return useEffect(()=>{let l=m=>{if(m.key===i)if(m.newValue)try{c(e(JSON.parse(m.newValue)));}catch(y){console.error("Decrypt error from storage event",y);}else c(null);};return window.addEventListener("storage",l),()=>window.removeEventListener("storage",l)},[i,e]),s},a=useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function Rt(t,e){for(let r in e){let n=t[r],o=e[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 Z={loading:false,response:void 0,isCancel:false},ee=create((t,e)=>({states:{},updateState:(r,n)=>{let o=e().states[r]??Z,a={...o,...n};Rt(o,a)||t(i=>({states:{...i.states,[r]:a}}));}}));var me=new Map,Me=(t,e)=>{me.set(t,e);},$e=t=>{me.delete(t);},Ke=t=>me.get(t);function bt(...t){let[e,r,n]=t,o=e.__isVoid,a=e.__path||e.name,i=o?void 0:r,s=o?r:n,c=s?.storeName||`${a}`,l=s?.mergeStrategy??"replace",[m,y,D,S]=ee(useShallow(C=>{let d=C.states[c]??Z;return [d.loading,d.isCancel,d.response,C.updateState]})),{storageKey:U,cache:b,clearPreviousData:$,refetchOnWindowFocus:j}=_(),z=Ne(),v=useRef(void 0),B=useRef(null),{cacheName:W,cacheKey:I,timeout:re,timeoutUnit:ne,persistence:oe,cacheEnabled:Q}=useMemo(()=>{let C=U?z.get(U):void 0,d=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,x=Se({...i,session:C},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),h=false;typeof b?.enabled=="boolean"&&(h=b.enabled);let A=false;typeof b?.persistence=="boolean"&&(A=b?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(A=s?.cache?.persistence??false);let w=60*5,E="s";return H(b?.timeout)&&(typeof b?.timeout=="number"?(w=b.timeout,E="s"):typeof b?.timeout=="object"&&(w=b?.timeout.value,E=b?.timeout.unit)),H(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?h=s.cache.enabled:h=true,typeof s?.cache?.timeout=="number"?(w=s.cache.timeout,E="s"):typeof s?.cache?.timeout=="object"&&(w=s.cache.timeout.value,E=s.cache.timeout.unit)):h=s.cache),{cacheName:d,cacheKey:x,timeout:w,timeoutUnit:E,persistence:A,cacheEnabled:h}},[s?.cache,i,U,b,a]);useEffect(()=>{let C=JSON.stringify(H(v.current)?v.current:""),d=JSON.stringify(H(i)?i:""),x=v.current===void 0;(C!==d||x)&&!s?.hold&&((s?.clearPreviousData??$)&&S(c,{response:null}),p(),v.current=i),s?.onChange&&s?.onChange(i,q);},[i,s?.clearPreviousData,$,s?.hold,...s?.trigger||[]]),useEffect(()=>{let C=async()=>{!oe&&W&&I&&(await caches.open(W)).delete(I);};return window.addEventListener("beforeunload",C),()=>{window.removeEventListener("beforeunload",C),B.current?.abort();}},[oe,W,I,c,B]);let p=useCallback(async C=>{let d=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(d=s?.beforeRequest(i)),Q&&!C&&!y){s?.onBeforeRequest&&s?.onBeforeRequest(i);let x=await caches.open(W),A=await(await x.match(I))?.json();if(A){let{data:w,expired:E}=A;if(M().isAfter(E))await x.delete(I);else {s?.afterResponse&&w?.data&&(w.data=s?.afterResponse(w.data,d)),s?.logging&&console.log("After request: Using Cache",w),w?.status&&s?.onSuccess?.(w,d),s?.onAfterResponse?.(w,d),S(c,{loading:false,response:w});return}}}if(typeof e=="function"){B.current?.abort();let x=new AbortController;B.current=x,S(c,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let h=o?await e(void 0,{...s,signal:x.signal}):await e(d,void 0,{...s,signal:x.signal});if(h.__rawData=h.data,l==="append"&&H(D.__rawData)&&H(h?.data)){if(Array.isArray(D.__rawData)&&Array.isArray(h?.data)){let A=[...D?.__rawData??[],...h.data??[]];h.data=A,h.__rawData=A;}else if(typeof D.__rawData=="object"&&typeof h.data=="object"){let A={...D.__rawData,...h.data};h.data=A,h.__rawData=A;}}if(s?.afterResponse&&h?.data&&(h.data=s?.afterResponse(h.data,d)),s?.logging&&console.log("After request",h),h.status&&s?.onSuccess?.(h,d),h.status||s?.onError?.(h,d),s?.onAfterResponse?.(h,d),S(c,{loading:false,response:h,isCancel:false}),Q&&h.status){let A=M().add(re,ne).toISOString(),w={data:h,expired:A},E=await caches.open(W),L=new Response(JSON.stringify(w));await E.put(I,L);}}},[i,e,s,y,W,I,re,ne,Q,D]);useEffect(()=>{if(s?.refreshInterval){let C=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,d=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,x=setInterval(()=>{p();},M.duration(C,d).asMilliseconds());return ()=>clearInterval(x)}return ()=>{}},[s?.refreshInterval,p]);let R=useRef(null),{enabledRefetch:u,timeoutRefetch:T,timeoutUnitRefetch:g}=useMemo(()=>{let C=s?.refetchOnWindowFocus?.enabled??j?.enabled??false,d=s?.refetchOnWindowFocus?.timeout??j?.timeout,x=typeof d=="number"?d:d?.value??60*5,h=typeof d=="object"?d.unit:"s";return {enabledRefetch:C,timeoutRefetch:x,timeoutUnitRefetch:h}},[s?.refetchOnWindowFocus,j]);useEffect(()=>{if(!u||s?.hold)return;let C=M.duration(T,g).asMilliseconds(),d=()=>{let h=Date.now(),A=R.current;A!==null&&h-A>=C&&p(),R.current=null;},x=()=>{R.current=Date.now();};return window.addEventListener("focus",d),window.addEventListener("blur",x),()=>{window.removeEventListener("focus",d),window.removeEventListener("blur",x);}},[u,T,g,p,s?.hold]);let O=useCallback(()=>{B.current?.abort(),B.current=null,S(c,{loading:false,isCancel:true});},[c,B]),f=useCallback(()=>{S(c,{loading:false,response:null});},[c]),q=useMemo(()=>({...D,loading:m,refresh:p,abort:O,clear:f,response:D,isCancel:y,clone:(C,d)=>bt(e,C,{storeName:`${a}-clone`,...d})}),[D,m,p,O,f,y,e]);return useEffect(()=>(Me(c,q),()=>{$e(c);}),[q,c]),[D?.data,q]}async function rn(t,e=()=>{}){let r=t*1e3;return new Promise(n=>{setInterval(()=>{e();},1e3);setTimeout(async()=>{await e(),n(true);},r);})}var Tt=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(Tt||{}),Dt=(p=>(p.number="number",p.currency="currency",p.percent="percent",p.date="date",p.dateTime="dateTime",p.month="month",p.year="year",p.time="time",p.timestamp="timestamp",p.string="string",p.textarea="textarea",p.code="code",p.password="password",p.boolean="boolean",p.toggle="toggle",p.email="email",p.phone="phone",p.url="url",p.json="json",p.file="file",p.image="image",p.array="array",p.object="object",p.enum="enum",p.user="user",p.department="department",p.status="status",p))(Dt||{});var cn=()=>{let{format:t}=_();return (e,r,n)=>{try{return r==="number"?Fe(e,{thouSep:t.number.thouSep,decDigits:t.number.decDigits,decSep:t.number.decSep,...n}):["date","dateTime","month","year","time"].some(o=>o===r)?At(e,{display:t[r]?.display,value:t[r]?.value,...n}):r==="boolean"?xt(e,n):r==="string"?Ct(e,n):e?.toString()}catch{return}}};function xt(t,e){let r=typeof t=="string"?t==="true":!!t,n=e?.trueLabel??"Yes",o=e?.falseLabel??"No";return r?n:o}function Ct(t,e){if(!H(t))return "";let r=String(t);switch(e?.textTransform){case "capitalize":r=Oe(r);break;case "uppercase":r=r.toUpperCase();break;case "lowercase":r=r.toLowerCase();break}return e?.ellipsis&&r.length>e.ellipsis&&(r=r.slice(0,e.ellipsis)+"..."),r}Fe(10,{thouSep:",",decSep:".",decDigits:2});function Fe(t,{thouSep:e,decSep:r,decDigits:n,method:o,dirty:a}){if(a){let y=String(t??"").trim().trim();if(ue(y,r))return y}if(t==null||isNaN(Number(t)))return "";let i=typeof t=="string"?parseFloat(t):t;if(o)if(typeof n=="number"){let m=Math.pow(10,n);i=Math[o](i*m)/m;}else i=Math[o](i);else if(typeof n=="number"){let m=Math.pow(10,n);i=Math.trunc(i*m)/m;}let s=0;if(n==="auto"){let m=i.toString(),y=m.indexOf(".");y!==-1&&(s=m.length-y-1);}let c={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?s:n||0,maximumFractionDigits:n==="auto"?s:n||0,minimumIntegerDigits:1};return i.toLocaleString("en-US",c).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,e)}function At(t,{display:e,value:r}){if(!H(t))return t;let n=M(t,r);return n.isValid()?n.format(e):t}function fn(t,{interval:e,lead:r}){let n=useRef(null);useEffect(()=>{n.current=t;},[t]),useEffect(()=>{let o=()=>n.current();if(r&&o(),e!==null){let a=setInterval(o,e);return ()=>clearInterval(a)}},[e]);}function mn(t,e,r){let[n,o]=useState(false),a=(l,m)=>typeof t=="string"&&l===t||typeof t=="number"&&m===t,i=l=>l!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(l.tagName)||l.hasAttribute("contentEditable")),s=l=>{let{key:m,keyCode:y}=l,D=l.ctrlKey,S=l.altKey,U=l.shiftKey;if(!i(document.activeElement))if(e)if(typeof e=="string")a(m,y)&&(e==="ctrl"&&D||e==="alt"&&S||e==="shift"&&U)&&(l.preventDefault(),r&&l.stopPropagation(),o(!n));else {let b=e.every($=>$==="ctrl"?D:$==="alt"?S:$==="shift"?U:false);a(m,y)&&b&&(l.preventDefault(),r&&l.stopPropagation(),o(!n));}else a(m,y)&&(l.preventDefault(),r&&l.stopPropagation(),o(!n));},c=({key:l,keyCode:m})=>{a(l,m)&&o(false);};return useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",c),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",c);}),[]),n}var Cn=({url:t,token:e,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:c,withCredentials:l,encryptRequest:m,encryptResponse:y,passphrase:D})=>{let{encrypt:S,decrypt:U,passphrase:b}=G(),$=wt.create({baseURL:`${t}`,headers:{"Content-Type":"application/json",...o}}),j=(p,R,u,T)=>{let g=T?.code==="ERR_CANCELED",O=p?.status===401,f=p?.data;if((typeof u?.encryptResponse=="boolean"?u?.encryptResponse:y)&&f){let A=u?.passphrase?typeof u.passphrase=="boolean"&&u.passphrase?b:u.passphrase:D;try{f=U(f,A);}catch{try{f=U(f,b);}catch{}}}let d={...n({...p,data:f,isCancel:g,isUnauthorization:O},T),isCancel:g,isUnauthorization:O,httpCode:p?.status},x=typeof u?.disabledToastWhenCancel=="boolean"?u?.disabledToastWhenCancel:c,h=s?s(d,u):!O;if((u?.infoSuccess&&d.status||u?.infoError&&!d.status)&&i&&(!g||!x)&&i(d),!h&&(!g||!u?.disabledHandleUnauthorized)){let A=u?.onUnauthorized||a;A&&A(d);}if(typeof R=="function")R(d);else return d},z=(p,R=()=>{})=>$({...p,withCredentials:typeof p.withCredentials=="boolean"?p.withCredentials:l}).then(R).catch(u=>R(u.response,u)),v=(p,R,u,T,g)=>{let f={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...g},q={...f.headers};if(f.token&&(typeof f.token=="boolean"?e&&(q.Authorization=`Bearer ${e}`):f.token&&(q.Authorization=`Bearer ${f.token}`)),r&&(u=r(u)),(typeof f?.encryptRequest=="boolean"?f?.encryptRequest:m)&&u){let d=g?.passphrase?typeof g.passphrase=="boolean"&&g.passphrase?b:g.passphrase:D;u=S(u,d);}return z({url:R,method:p,data:u,headers:q,responseType:f.responseType,signal:f.signal,withCredentials:f.withCredentials,onUploadProgress:d=>{f?.onUploadProgress&&f?.onUploadProgress(d);}},(d,x)=>j(d,T,f,x))};return {client:z,post:(p,R,u,T)=>v("POST",`${p}`,R,u,T),put:(p,R,u,T)=>v("PUT",`${p}`,R,u,T),patch:(p,R,u,T)=>v("PATCH",`${p}`,R,u,T),delete:(p,R,u)=>v("DELETE",`${p}`,null,R,u),get:(p,R,u)=>v("GET",`${p}`,null,R,u),upload:(p,R,u,T)=>{let g=new FormData;return Object.keys(R).forEach(O=>g.append(O,R[O])),v("POST",`${p}`,g,u,{infoSuccess:false,...T,headers:{"Content-Type":"multipart/form-data",...T?.headers}})},stream:async(p,R,u,T,g)=>{try{let f={...{token:!0,responseType:"json",infoError:!0},...g},q={"Content-Type":"application/json",...o,...f.headers};if(f.token){let P=typeof f.token=="boolean"?e:f.token;P&&(q.Authorization=`Bearer ${P}`);}let C=u;if(r&&(C=r(C)),(typeof f.encryptRequest=="boolean"?f.encryptRequest:m)&&C){let P=f.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?b:f.passphrase:D;C=S(C,P);}let x=await fetch(`${t}${R}`,{method:p,headers:q,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(C)}),h=x?.status,A=h===401;if(!x.ok){let P=x?.statusText||"Error";try{let V=x.headers.get("content-type")||"",N=await x.clone().text();if(N)if(V.includes("application/json"))try{let J=JSON.parse(N);if((typeof g?.encryptResponse=="boolean"?g?.encryptResponse:y)&&u){let pe=g?.passphrase?typeof g.passphrase=="boolean"&&g.passphrase?b:g.passphrase:D;try{u=U(J,pe);}catch{try{u=U(J,b);}catch{}}}P=J?.message||P;}catch{P=N;}else P=N;}catch{}let Y=typeof g?.disabledToastWhenCancel=="boolean"?g?.disabledToastWhenCancel:c,K={status:!1,data:void 0,message:P,isCancel:!1,isUnauthorization:A,httpCode:h,isDone:!0};g?.infoError&&i&&!Y&&i(K),T(K);return}let w=x.body.getReader(),E=new TextDecoder("utf-8"),L="",X=!1;for(;!X;){let{done:P,value:Y}=await w.read();X=P,L+=E.decode(Y,{stream:!0});let K=L.split(`
2
2
 
3
- `);V=_.pop();for(let Q of _)if(Q.startsWith("data:"))try{let j=Se(Q);S({status:!0,data:j,message:"",isCancel:!1,isUnauthorization:A,httpCode:m,isDone:!1});}catch{}}S({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:A,httpCode:m,isDone:!0});}catch(w){let y=w?.name==="AbortError";S({status:false,data:void 0,message:w instanceof Error?w.message:"Internal Server Error",isCancel:y,isUnauthorization:false,httpCode:400,isDone:true});}}}};function An(e,t){let[r,n]=useState(false),[o,a]=useState(),[l,s]=useState(0),i=useRef(null);return useEffect(()=>{if(t?.abortOnUnmount)return ()=>{i.current?.abort();}},[]),[async g=>{i.current?.abort();let x=new AbortController;i.current=x,n(true),t?.beforeRequest&&(g=t?.beforeRequest(g)),t?.logging&&console.log("Before request",g),t?.onBeforeRequest&&t?.onBeforeRequest(g);let O={...t,signal:x.signal,onUploadProgress:N=>{let B=Math.round(N.loaded*100/(N.total||1));s(B);}},b=e.__isVoid?await e(void 0,O):await e(g,void 0,O);t?.logging&&console.log("After response",b),a(b),n(false),s(0),t?.afterResponse&&b?.data&&(b.data=t?.afterResponse(b.data,g)),b.status&&t?.onSuccess&&t?.onSuccess(b,g),!b.status&&t?.onError&&t?.onError(b,g),t?.onAfterResponse?.(b,g);},{...o,loading:r,abort:()=>{i.current?.abort(),i.current=null,n(false),s(0);},progress:l,reset:()=>{n(false),s(0),a(null);}}]}function Ot(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 wt=typeof window<"u"?window:null;function On(e={}){let{getTrigger:t=Ot,target:r=wt,disableHysteresis:n=false,threshold:o=100}=e,a=ee.useRef(0),[l,s]=ee.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return ee.useEffect(()=>{let i=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(i(),r)return r.addEventListener("scroll",i,{passive:true}),()=>{r.removeEventListener("scroll",i);}},[r,t,n,o]),l}function Un(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 l=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(l)},[e,r,n]),o}var Kn=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:l,clear:s,clone:i}=$e(n)||{},c=O=>{let b=O.states[n]??z;return {loading:b.loading,isCancel:b.isCancel,response:b.response}},{loading:f,isCancel:R,response:g}=o?Y(useShallow(c)):Y(c),x=useMemo(()=>[g?.data,{...g,loading:f,isCancel:R,refresh:a,abort:l,clear:s,clone:i}],[g,f,R,a,l,s,i]);return t?.selector?t.selector(x):x};var In=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},Fe=(e,t)=>{let r=false;return ee.Children.forEach(e,n=>{if(ee.isValidElement(n)){let o=n,a=n.type.displayName;(t.includes(a)||o.props?.children&&Fe(o.props.children,t))&&(r=true);}}),r},Bn=(e,t)=>{let r={others:[]},n=o=>{ee.Children.forEach(o,a=>{if(ee.isValidElement(a)){let l=a.type.displayName,s=a,i=s.props?.children;t.includes(l)?r[l]=a:i&&Fe(i,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function _n(){let{format:e}=L();return (t="",r=false)=>Pe(t,r,e.number.decSep)}function Wn(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 he={};function Xn(e,t){let[r,n]=useState(false),[o,a]=useState(),[l,s]=useState();return useEffect(()=>{if(!e)return;if(he[e]){s(()=>he[e]);return}n(true),(async()=>{try{let c=await import(`${t.path}${e}${t.extension??".svg?react"}`);he[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:l}}function to(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(i=>i());}function l(s){let i=useRef(s?s(t):t);return useSyncExternalStore(o,()=>{let c=s?s(t):t,f=i.current;return Object.is(f,c)||(i.current=c),i.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:l}}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 no(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 ao(e,t){let[r,n]=useState(false),[o,a]=useState([]),l=useRef([]),s=useRef(null);useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let i=async R=>{s.current?.abort();let g=new AbortController;s.current=g,n(true),a([]),l.current=[],e(R,x=>{x.isDone||(l.current.push(x),a([...l.current])),(x.isDone||!x.status)&&(n(false),t?.onDone&&t?.onDone([...l.current])),x.status?t?.onStream&&t?.onStream(x):t?.onError&&t?.onError(x);},{signal:g.signal});},c=()=>{s.current?.abort(),s.current=null,n(false);},f=()=>{n(false),a([]),l.current=[];};return [o.map(R=>R.data),i,{loading:r,abort:c,reset:f,response:o}]}function po(e,t){let{key:r}=t,[n,o]=useState();return useEffect(()=>{let a=liveQuery(()=>e(r)).subscribe(o);return ()=>a.unsubscribe()},[r]),n}function yo(e,t){let{key:r}=t,[n,o]=useState(false);return useEffect(()=>{let a=liveQuery(async()=>!!await e(r)).subscribe(l=>{o(s=>s!==l?l:s);});return ()=>a.unsubscribe()},[r]),n}var te,re={};function ho({dbName:e,version:t=1,table:r}){return te||(te=new _t(e),t=Object.keys(re).length+1,te.version(t).stores(re)),r}function To({name:e,primaryKey:t}){re[e]||(re[e]=t);let r=()=>{let c=te.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)}}export{it as BgsCoreProvider,Rt as DataTypeEnum,gt as HttpMethod,Ae as capitalizeWords,Dn as createApiHelper,ho as createDatabase,In as createElement,to as createStore,To as createTable,gr as debounce,pe as decrypt,ke as decryptString,z as defaultState,cr as diffJson,ce as encrypt,ve as encryptString,Rr as filterDOMPropsLite,Ce as generateCacheKey,lr as generateUUID,$e as getApiActions,Tr as getDateRangeLabelFromSorted,E as getFieldValue,br as getInitials,hr as getMinMaxDate,Dr as getTotalMinutes,ur as isArray,le as isDirtyRaw,K as isNotEmpty,tt as isValidNumber,yr as jsonCopy,De as labelFormatter,xr as mappingData,pr as mappingUndefinedtoNull,q as moment,nt as objectToQueryString,Se as parseSSEChunk,Pe as parseStringToNumber,Ne as registerApi,fr as renderChildren,xe as replaceNullStrings,dt as safeUpdate,dr as sorting,Bn as splitElement,et as stableStringify,mr as summary,Me as unregisterApi,yt as useApiLoad,Y as useApiLoadStore,An as useApiSend,Kn as useApiStore,ao as useApiStream,L as useBgsCore,Z as useCrypto,po as useDbLive,yo as useDbLiveFlag,Un as useDebounce,en as useDelay,Xn as useDynamicSvgImport,Wn as useElementBounding,an as useFormatted,pn as useInterval,dn as useKeyPress,_n as useParseStringToNumber,On as useScrollTrigger,Ee as useStorage,no as wrapApi};
3
+ `);L=K.pop();for(let V of K)if(V.startsWith("data:"))try{let N=se(V);T({status:!0,data:N,message:"",isCancel:!1,isUnauthorization:A,httpCode:h,isDone:!1});}catch{}}T({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:A,httpCode:h,isDone:!0});}catch(O){let f=O?.name==="AbortError";T({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:f,isUnauthorization:false,httpCode:400,isDone:true});}}}};function On(t,e){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState(0),c=useRef(null);return useEffect(()=>{if(e?.abortOnUnmount)return ()=>{c.current?.abort();}},[]),[async D=>{c.current?.abort();let S=new AbortController;c.current=S,n(true),e?.beforeRequest&&(D=e?.beforeRequest(D)),e?.logging&&console.log("Before request",D),e?.onBeforeRequest&&e?.onBeforeRequest(D);let U={...e,signal:S.signal,onUploadProgress:$=>{let j=Math.round($.loaded*100/($.total||1));s(j);}},b=t.__isVoid?await t(void 0,U):await t(D,void 0,U);e?.logging&&console.log("After response",b),a(b),n(false),s(0),e?.afterResponse&&b?.data&&(b.data=e?.afterResponse(b.data,D)),b.status&&e?.onSuccess&&e?.onSuccess(b,D),!b.status&&e?.onError&&e?.onError(b,D),e?.onAfterResponse?.(b,D);},{...o,loading:r,abort:()=>{c.current?.abort(),c.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function kt(t,e){let{disableHysteresis:r=false,threshold:n=100,target:o}=e,a=t.current;return o&&(typeof o.pageYOffset=="number"?t.current=o.pageYOffset:o.scrollTop!==void 0&&(t.current=o.scrollTop)),!r&&a!==void 0&&t.current<a?false:(t.current||0)>n}var vt=typeof window<"u"?window:null;function qn(t={}){let{getTrigger:e=kt,target:r=vt,disableHysteresis:n=false,threshold:o=100}=t,a=ie.useRef(0),[i,s]=ie.useState(()=>e(a,{disableHysteresis:n,threshold:o,target:r}));return ie.useEffect(()=>{let c=()=>{s(e(a,{disableHysteresis:n,threshold:o,target:r}));};if(c(),r)return r.addEventListener("scroll",c,{passive:true}),()=>{r.removeEventListener("scroll",c);}},[r,e,n,o]),i}function vn(t,e){let r,n;typeof e=="number"?(r=e,n=void 0):(r=e?.delay??500,n=e?.onDebounce);let[o,a]=useState(t);return useEffect(()=>{let i=setTimeout(()=>{a(t),n&&n(t);},r);return ()=>clearTimeout(i)},[t,r,n]),o}var Hn=(t,e)=>{let r=t.__path||t.name,n=e?.storeName||`${r}`,o=e?.shallow??true,{refresh:a,abort:i,clear:s,clone:c}=Ke(n)||{},l=U=>{let b=U.states[n]??Z;return {loading:b.loading,isCancel:b.isCancel,response:b.response}},{loading:m,isCancel:y,response:D}=o?ee(useShallow(l)):ee(l),S=useMemo(()=>[D?.data,{...D,loading:m,isCancel:y,refresh:a,abort:i,clear:s,clone:c}],[D,m,y,a,i,s,c]);return e?.selector?e.selector(S):S};var Bn=(t,e)=>{let r=n=>t(n);return r.displayName=e,r},Le=(t,e)=>{let r=false;return ie.Children.forEach(t,n=>{if(ie.isValidElement(n)){let o=n,a=n.type.displayName;(e.includes(a)||o.props?.children&&Le(o.props.children,e))&&(r=true);}}),r},In=(t,e)=>{let r={others:[]},n=o=>{ie.Children.forEach(o,a=>{if(ie.isValidElement(a)){let i=a.type.displayName,s=a,c=s.props?.children;e.includes(i)?r[i]=a:c&&Le(c,e)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(t),r};function zn(){let{format:t}=_();return (e="",r=false)=>Pe(e,r,t.number.decSep)}function Gn(t,e){let r=useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return useEffect(()=>{if(!t)return;let n=()=>{let a=t.getBoundingClientRect();r.current={width:a.width,height:a.height,top:a.top,left:a.left,right:a.right,bottom:a.bottom},e&&e(r.current);};n();let o=new ResizeObserver(()=>n());return o.observe(t),()=>o.disconnect()},[t,e]),r}var xe={};function eo(t,e){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState();return useEffect(()=>{if(!t)return;if(xe[t]){s(()=>xe[t]);return}n(true),(async()=>{try{let l=await import(`${e.path}${t}${e.extension??".svg?react"}`);xe[t]=l.default,s(()=>l.default);}catch(l){a(l),console.error(l);}finally{n(false);}})();},[t,e.path,e.extension]),{error:o,loading:r,Icon:i}}function no(t){let e=t,r=new Set;function n(){return e}function o(s){return r.add(s),()=>r.delete(s)}function a(s){typeof s=="function"?e=s(e):e=s,r.forEach(c=>c());}function i(s){let c=useRef(s?s(e):e);return useSyncExternalStore(o,()=>{let l=s?s(e):e,m=c.current;return Object.is(m,l)||(c.current=l),c.current},()=>s?s(e):e)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function je(t,e){!t||typeof t!="object"||Object.keys(t).forEach(r=>{let n=t[r],o=e?`${e}.${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"&&je(n,o);});}function so(t){let e={};for(let r in t){let n=t[r];e[r]=(...o)=>{let a=n(...o);return je(a,r),a};}return e}function lo(t,e){let[r,n]=useState(false),[o,a]=useState([]),i=useRef([]),s=useRef(null);useEffect(()=>{if(e?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let c=async y=>{s.current?.abort();let D=new AbortController;s.current=D,n(true),a([]),i.current=[],t(y,S=>{S.isDone||(i.current.push(S),a([...i.current])),(S.isDone||!S.status)&&(n(false),e?.onDone&&e?.onDone([...i.current])),S.status?e?.onStream&&e?.onStream(S):e?.onError&&e?.onError(S);},{signal:D.signal});},l=()=>{s.current?.abort(),s.current=null,n(false);},m=()=>{n(false),a([]),i.current=[];};return [o.map(y=>y.data),c,{loading:r,abort:l,reset:m,response:o}]}function fo(t,e){let{key:r}=e,[n,o]=useState();return useEffect(()=>{let a=liveQuery(()=>t(r)).subscribe(o);return ()=>a.unsubscribe()},[r]),n}function Ro(t,e){let{key:r}=e,[n,o]=useState(false);return useEffect(()=>{let a=liveQuery(async()=>!!await t(r)).subscribe(i=>{o(s=>s!==i?i:s);});return ()=>a.unsubscribe()},[r]),n}var le,ce={};function Do({dbName:t,version:e=1,table:r}){return le||(le=new Jt(t),e=Object.keys(ce).length+1,le.version(e).stores(ce)),r}function xo({name:t,primaryKey:e}){ce[t]||(ce[t]=e);let r=()=>{let l=le.table(t);if(!l)throw new Error(`Table ${t} is not registered in Dexie`);return l};return {table:r,create:async c=>await r().add(c),update:async(c,l)=>await r().update(c,l),put:async(c,l)=>await r().put({...l,[e]:c}),detail:async c=>await r().get(c),remove:async c=>await r().delete(c)}}var Uo=()=>{let{encrypt:t,decrypt:e,passphrase:r}=G();return ({url:n,token:o,beforeRequest:a,onCallback:i,headers:s,onUnauthorized:c,handleToast:l,handleAuthorization:m,disabledToastWhenCancel:y,withCredentials:D,encryptRequest:S,encryptResponse:U,passphrase:b})=>{let $=wt.create({baseURL:`${n}`,headers:{"Content-Type":"application/json",...s}}),j=(p,R,u,T)=>{let g=T?.code==="ERR_CANCELED",O=p?.status===401,f=p?.data;if((typeof u?.encryptResponse=="boolean"?u?.encryptResponse:U)&&f){let A=u?.passphrase?typeof u.passphrase=="boolean"&&u.passphrase?r:u.passphrase:b;try{f=e(f,A);}catch{try{f=e(f,r);}catch{}}}let d={...i({...p,data:f,isCancel:g,isUnauthorization:O},T),isCancel:g,isUnauthorization:O,httpCode:p?.status},x=typeof u?.disabledToastWhenCancel=="boolean"?u?.disabledToastWhenCancel:y,h=m?m(d,u):!O;if((u?.infoSuccess&&d.status||u?.infoError&&!d.status)&&l&&(!g||!x)&&l(d),!h&&(!g||!u?.disabledHandleUnauthorized)){let A=u?.onUnauthorized||c;A&&A(d);}if(typeof R=="function")R(d);else return d},z=(p,R=()=>{})=>$({...p,withCredentials:typeof p.withCredentials=="boolean"?p.withCredentials:D}).then(R).catch(u=>R(u.response,u)),v=(p,R,u,T,g)=>{let f={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...g},q={...f.headers};if(f.token&&(typeof f.token=="boolean"?o&&(q.Authorization=`Bearer ${o}`):f.token&&(q.Authorization=`Bearer ${f.token}`)),a&&(u=a(u)),(typeof f?.encryptRequest=="boolean"?f?.encryptRequest:S)&&u){let d=g?.passphrase?typeof g.passphrase=="boolean"&&g.passphrase?r:g.passphrase:b;u=t(u,d);}return z({url:R,method:p,data:u,headers:q,responseType:f.responseType,signal:f.signal,withCredentials:f.withCredentials,onUploadProgress:d=>{f?.onUploadProgress&&f?.onUploadProgress(d);}},(d,x)=>j(d,T,f,x))};return {client:z,post:(p,R,u,T)=>v("POST",`${p}`,R,u,T),put:(p,R,u,T)=>v("PUT",`${p}`,R,u,T),patch:(p,R,u,T)=>v("PATCH",`${p}`,R,u,T),delete:(p,R,u)=>v("DELETE",`${p}`,null,R,u),get:(p,R,u)=>v("GET",`${p}`,null,R,u),upload:(p,R,u,T)=>{let g=new FormData;return Object.keys(R).forEach(O=>g.append(O,R[O])),v("POST",`${p}`,g,u,{infoSuccess:false,...T,headers:{"Content-Type":"multipart/form-data",...T?.headers}})},stream:async(p,R,u,T,g)=>{try{let f={...{token:!0,responseType:"json",infoError:!0},...g},q={"Content-Type":"application/json",...s,...f.headers};if(f.token){let P=typeof f.token=="boolean"?o:f.token;P&&(q.Authorization=`Bearer ${P}`);}let C=u;if(a&&(C=a(C)),(typeof f.encryptRequest=="boolean"?f.encryptRequest:S)&&C){let P=f.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?r:f.passphrase:b;C=t(C,P);}let x=await fetch(`${n}${R}`,{method:p,headers:q,credentials:f.withCredentials?"include":"same-origin",signal:f.signal,body:JSON.stringify(C)}),h=x?.status,A=h===401;if(!x.ok){let P=x?.statusText||"Error";try{let V=x.headers.get("content-type")||"",N=await x.clone().text();if(N)if(V.includes("application/json"))try{let J=JSON.parse(N);if((typeof g?.encryptResponse=="boolean"?g?.encryptResponse:U)&&u){let pe=g?.passphrase?typeof g.passphrase=="boolean"&&g.passphrase?r:g.passphrase:b;try{u=e(J,pe);}catch{try{u=e(J,r);}catch{}}}P=J?.message||P;}catch{P=N;}else P=N;}catch{}let Y=typeof g?.disabledToastWhenCancel=="boolean"?g?.disabledToastWhenCancel:y,K={status:!1,data:void 0,message:P,isCancel:!1,isUnauthorization:A,httpCode:h,isDone:!0};g?.infoError&&l&&!Y&&l(K),T(K);return}let w=x.body.getReader(),E=new TextDecoder("utf-8"),L="",X=!1;for(;!X;){let{done:P,value:Y}=await w.read();X=P,L+=E.decode(Y,{stream:!0});let K=L.split(`
4
+
5
+ `);L=K.pop();for(let V of K)if(V.startsWith("data:"))try{let N=se(V);T({status:!0,data:N,message:"",isCancel:!1,isUnauthorization:A,httpCode:h,isDone:!1});}catch{}}T({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:A,httpCode:h,isDone:!0});}catch(O){let f=O?.name==="AbortError";T({status:false,data:void 0,message:O instanceof Error?O.message:"Internal Server Error",isCancel:f,isUnauthorization:false,httpCode:400,isDone:true});}}}}};function Ve(t,e){!t||typeof t!="object"||Object.keys(t).forEach(r=>{let n=t[r],o=e?`${e}.${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"&&Ve(n,o);});}function vo(t,e){let r={};for(let n in t){let o=t[n];r[n]=()=>{let a=o(e);return Ve(a,n),a};}return r}function Mo(t){let e=[...t],r=(o,a)=>{if(a.and)return a.and.every(i=>r(o,i));if(a.or)return a.or.some(i=>r(o,i));for(let[i,s]of Object.entries(a)){if(i==="and"||i==="or")continue;let{opt:c="eq",value:l,required:m=true}=typeof s=="object"&&s!==null&&"value"in s?s:{value:s};if(!m&&(l==null||l===""))continue;let y=k(o,i,void 0);switch(c){case "eq":if(y!==l)return false;break;case "neq":if(y===l)return false;break;case "gt":if(!(y>l))return false;break;case "gte":if(!(y>=l))return false;break;case "lt":if(!(y<l))return false;break;case "lte":if(!(y<=l))return false;break;case "contains":if(typeof y!="string"||typeof l!="string"||!y.includes(l))return false;break;case "notContains":if(typeof y!="string"||typeof l!="string"||y.includes(l))return false;break;case "startsWith":if(typeof y!="string"||typeof l!="string"||!y.startsWith(l))return false;break;case "endsWith":if(typeof y!="string"||typeof l!="string"||!y.endsWith(l))return false;break;case "in":if(!Array.isArray(l)||!l.includes(y))return false;break;case "notIn":if(Array.isArray(l)&&l.includes(y))return false;break}}return true},n={where(o){return e=e.filter(a=>r(a,o)),n},sort(o){let a=Object.entries(o);return e.sort((i,s)=>{for(let[c,l]of a){let m=k(i,c),y=k(s,c);if(m!==y)return l==="asc"?m>y?1:-1:m<y?1:-1}return 0}),n},distinct(o){let a=Array.isArray(o)?o:o?[o]:[],i=new Set;return e=e.filter(s=>{let c=a.length?a.map(l=>k(s,l)).join("|"):JSON.stringify(s);return i.has(c)?false:(i.add(c),true)}),n},select(o){return e=e.map(a=>{let i={};for(let s of o)i[s]=k(a,s);return i}),n},paginate(o,a){let i=(o-1)*a,s=i+a;return {data:e.slice(i,s),total:e.length,page:o,pageSize:a,totalPages:Math.ceil(e.length/a)}},groupBy(o){let a={};for(let i of e){let s=k(i,o),c=String(s??"undefined");a[c]||(a[c]=[]),a[c].push(i);}return a},map(o){return e=e.map(o),n},reduce(o,a){return e.reduce(o,a)},limit(o){return e=e.slice(0,o),n},get(){return e}};return n}export{ut as BgsCoreProvider,Dt as DataTypeEnum,Tt as HttpMethod,vo as bindApi,Oe as capitalizeWords,Cn as createApiHelper,Do as createDatabase,Bn as createElement,no as createStore,xo as createTable,hr as debounce,de as decrypt,Ee as decryptString,Z as defaultState,ur as diffJson,fe as encrypt,ve as encryptString,br as filterDOMPropsLite,Se as generateCacheKey,pr as generateUUID,Ke as getApiActions,xr as getDateRangeLabelFromSorted,k as getFieldValue,Tr as getInitials,Dr as getMinMaxDate,Cr as getTotalMinutes,dr as isArray,ue as isDirtyRaw,H as isNotEmpty,st as isValidNumber,Rr as jsonCopy,Ce as labelFormatter,Ar as mappingData,fr as mappingUndefinedtoNull,M as moment,it as objectToQueryString,se as parseSSEChunk,Pe as parseStringToNumber,Mo as query,Me as registerApi,yr as renderChildren,Ae as replaceNullStrings,Rt as safeUpdate,mr as sorting,In as splitElement,ot as stableStringify,gr as summary,$e as unregisterApi,bt as useApiLoad,ee as useApiLoadStore,On as useApiSend,Hn as useApiStore,lo as useApiStream,_ as useBgsCore,Uo as useCreateApi,G as useCrypto,fo as useDbLive,Ro as useDbLiveFlag,vn as useDebounce,rn as useDelay,eo as useDynamicSvgImport,Gn as useElementBounding,cn as useFormatted,fn as useInterval,mn as useKeyPress,zn as useParseStringToNumber,qn as useScrollTrigger,Ne as useStorage,so as wrapApi};