@bgscore/react-core 1.0.10 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,3 +1,3 @@
1
- 'use strict';var ee=require('react'),M=require('dayjs'),Fe=require('dayjs/plugin/utc'),Le=require('dayjs/plugin/timezone'),Ie=require('dayjs/plugin/duration'),He=require('dayjs/plugin/advancedFormat'),Be=require('dayjs/plugin/localizedFormat'),je=require('dayjs/plugin/relativeTime'),_e=require('dayjs/plugin/isSameOrBefore'),Ve=require('dayjs/plugin/isSameOrAfter'),We=require('dayjs/plugin/weekOfYear'),Ye=require('dayjs/plugin/customParseFormat'),jsxRuntime=require('react/jsx-runtime'),Ae=require('crypto-js/aes'),Se=require('crypto-js/pbkdf2'),nt=require('crypto-js/enc-utf8'),Z=require('crypto-js/enc-base64'),Ce=require('crypto-js/lib-typedarrays'),zustand=require('zustand'),shallow=require('zustand/react/shallow'),bt=require('axios');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var ee__default=/*#__PURE__*/_interopDefault(ee);var M__default=/*#__PURE__*/_interopDefault(M);var Fe__default=/*#__PURE__*/_interopDefault(Fe);var Le__default=/*#__PURE__*/_interopDefault(Le);var Ie__default=/*#__PURE__*/_interopDefault(Ie);var He__default=/*#__PURE__*/_interopDefault(He);var Be__default=/*#__PURE__*/_interopDefault(Be);var je__default=/*#__PURE__*/_interopDefault(je);var _e__default=/*#__PURE__*/_interopDefault(_e);var Ve__default=/*#__PURE__*/_interopDefault(Ve);var We__default=/*#__PURE__*/_interopDefault(We);var Ye__default=/*#__PURE__*/_interopDefault(Ye);var Ae__default=/*#__PURE__*/_interopDefault(Ae);var Se__default=/*#__PURE__*/_interopDefault(Se);var nt__default=/*#__PURE__*/_interopDefault(nt);var Z__default=/*#__PURE__*/_interopDefault(Z);var Ce__default=/*#__PURE__*/_interopDefault(Ce);var bt__default=/*#__PURE__*/_interopDefault(bt);M__default.default.extend(Fe__default.default);M__default.default.extend(Le__default.default);M__default.default.extend(Ie__default.default);M__default.default.extend(He__default.default);M__default.default.extend(Be__default.default);M__default.default.extend(je__default.default);M__default.default.extend(_e__default.default);M__default.default.extend(Ve__default.default);M__default.default.extend(We__default.default);M__default.default.extend(Ye__default.default);var q=M__default.default;function Yt(){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 zt(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var Jt=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function Gt(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 Re={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=Re.snackCase(Re.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function Xt(e,t){return typeof e=="function"?e(t):e}var v=(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},Zt={desc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let o=v(r,t)?v(r,t):"",a=v(n,t)?v(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=v(r,t)?v(r,t):"",a=v(n,t)?v(n,t):"";return o>a?1:-1}else return r>n?1:-1}))},Qt=(e,t)=>{Array.isArray(e)||(e=[]);let r=[];return r=e.map(n=>Number(t?v(n,t)||0:n||0)),r.reduce((n,o)=>(n||0)+(o||0),0)||0};function er(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function ze(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 be(e,t){return ze([t??"undefined",e??"undefined"])}function he(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function tr(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var Te=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function ae(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 Je(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&&ae(n,r))return true}return false}function De(e="",t=false,r="."){if(!Je(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var Ge=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)Ge.has(r)&&(t[r]=e[r]);return t}function nr(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function or(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(q).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 sr(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 ar(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 ir=(e=[],t="label",r="value",n)=>Array.isArray(e)?e.map((o,a)=>{if(typeof o!="object"){let i=typeof t=="function"?t(o,a):o,s=typeof r=="function"?r(o,a):o;return {label:i,value:s,index:a,rowData:o}}else {let i=typeof t=="function"?t(o,a):v(o,t,""),s=typeof r=="function"?r(o,a):v(o,r,"");return {label:i,value:typeof s=="boolean"?s:s||"",index:a,...n&&{[n]:v(o,n)},rowData:o}}}):[];function Xe(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(!$(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(Xe(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function ge(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=ge(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=ge(e[t]));return e}var xe=ee.createContext(void 0);function F(){let e=ee.useContext(xe);return e||{}}var tt=({children:e,value:t})=>{let r={...t};return ee.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&&q.locale(o,a??{},i);}})();},[t.localeConfig]),jsxRuntime.jsx(xe.Provider,{value:r,children:e})};function ie(e,t){let r=Ce__default.default.random(16),n=Ce__default.default.random(16),o=Se__default.default(t,r,{keySize:256/32,iterations:1e3}),a=Ae__default.default.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(Z__default.default),iv:n.toString(Z__default.default),encrypted:a}}function le(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Se__default.default(t,Z__default.default.parse(r),{keySize:256/32,iterations:1e3}),s=Ae__default.default.decrypt(o,a,{iv:Z__default.default.parse(n)}).toString(nt__default.default);return JSON.parse(s)}function Pe(e,t){return JSON.stringify(ie(e,t))}function Oe(e,t){return le(JSON.parse(e),t)}function Q(){let{passphrase:e}=F();return {passphrase:e,encrypt(t,r){return ie(t,r||e)},decrypt(t,r){return le(t,r||e)},encryptString(t,r){return Pe(t,r||e)},decryptString(t,r){return Oe(t,r||e)}}}var we=()=>{let{encrypt:e,decrypt:t}=Q(),r=ee.useCallback((i,s)=>{try{let p=e(s);localStorage.setItem(i,JSON.stringify(p));}catch(p){console.error("Failed to save to storage:",p);}},[e]),n=ee.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,p]=ee.useState(()=>{try{let d=localStorage.getItem(i);return d?t(JSON.parse(d)):null}catch(d){return console.error("Failed to parse localStorage value",d),null}});return ee.useEffect(()=>{let d=y=>{if(y.key===i)if(y.newValue)try{p(t(JSON.parse(y.newValue)));}catch(T){console.error("Decrypt error from storage event",T);}else p(null);};return window.addEventListener("storage",d),()=>window.removeEventListener("storage",d)},[i,t]),s},a=ee.useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function it(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 z={loading:false,response:void 0,isCancel:false},J=zustand.create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??z,a={...o,...n};it(o,a)||e(i=>({states:{...i.states,[r]:a}}));}}));var ce=new Map,qe=(e,t)=>{ce.set(e,t);},Ue=e=>{ce.delete(e);},Ne=e=>ce.get(e);function pt(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,i=o?void 0:r,s=o?r:n,p=s?.storeName||`${a}`,d=s?.mergeStrategy??"replace",[y,T,R,x]=J(shallow.useShallow(b=>{let f=b.states[p]??z;return [f.loading,f.isCancel,f.response,b.updateState]})),{storageKey:O,cache:g,clearPreviousData:E,refetchOnWindowFocus:L}=F(),I=we(),V=ee.useRef(void 0),H=ee.useRef(null),{cacheName:j,cacheKey:B,timeout:te,timeoutUnit:re,persistence:ne,cacheEnabled:h}=ee.useMemo(()=>{let b=O?I.get(O):void 0,f=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,A=be({...i,session:b},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),c=false;typeof g?.enabled=="boolean"&&(c=g.enabled);let S=false;typeof g?.persistence=="boolean"&&(S=g?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(S=s?.cache?.persistence??false);let P=60*5,N="s";return $(g?.timeout)&&(typeof g?.timeout=="number"?(P=g.timeout,N="s"):typeof g?.timeout=="object"&&(P=g?.timeout.value,N=g?.timeout.unit)),$(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?c=s.cache.enabled:c=true,typeof s?.cache?.timeout=="number"?(P=s.cache.timeout,N="s"):typeof s?.cache?.timeout=="object"&&(P=s.cache.timeout.value,N=s.cache.timeout.unit)):c=s.cache),{cacheName:f,cacheKey:A,timeout:P,timeoutUnit:N,persistence:S,cacheEnabled:c}},[s?.cache,i,O,g,a]);ee.useEffect(()=>{let b=JSON.stringify($(V.current)?V.current:""),f=JSON.stringify($(i)?i:""),A=V.current===void 0;(b!==f||A)&&!s?.hold&&((s?.clearPreviousData??E)&&x(p,{response:null}),l(),V.current=i),s?.onChange&&s?.onChange(i,U);},[i,s?.clearPreviousData,E,s?.hold,...s?.trigger||[]]),ee.useEffect(()=>{let b=async()=>{!ne&&j&&B&&(await caches.open(j)).delete(B);};return window.addEventListener("beforeunload",b),()=>{window.removeEventListener("beforeunload",b),H.current?.abort();}},[ne,j,B,p,H]);let l=ee.useCallback(async b=>{let f=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(f=s?.beforeRequest(i)),h&&!b&&!T){s?.onBeforeRequest&&s?.onBeforeRequest(i);let A=await caches.open(j),S=await(await A.match(B))?.json();if(S){let{data:P,expired:N}=S;if(q().isAfter(N))await A.delete(B);else {s?.afterResponse&&P?.data&&(P.data=s?.afterResponse(P.data,f)),s?.logging&&console.log("After request: Using Cache",P),P?.status&&s?.onSuccess?.(P,f),s?.onAfterResponse?.(P,f),x(p,{loading:false,response:P});return}}}if(typeof t=="function"){H.current?.abort();let A=new AbortController;H.current=A,x(p,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let c=o?await t(void 0,{...s,signal:A.signal}):await t(f,void 0,{...s,signal:A.signal});if(c.__rawData=c.data,d==="append"&&$(R.__rawData)&&$(c?.data)){if(Array.isArray(R.__rawData)&&Array.isArray(c?.data)){let S=[...R?.__rawData??[],...c.data??[]];c.data=S,c.__rawData=S;}else if(typeof R.__rawData=="object"&&typeof c.data=="object"){let S={...R.__rawData,...c.data};c.data=S,c.__rawData=S;}}if(s?.afterResponse&&c?.data&&(c.data=s?.afterResponse(c.data,f)),s?.logging&&console.log("After request",c),c.status&&s?.onSuccess?.(c,f),c.status||s?.onError?.(c,f),s?.onAfterResponse?.(c,f),x(p,{loading:false,response:c,isCancel:false}),h&&c.status){let S=q().add(te,re).toISOString(),P={data:c,expired:S},N=await caches.open(j),W=new Response(JSON.stringify(P));await N.put(B,W);}}},[i,t,s,T,j,B,te,re,h,R]);ee.useEffect(()=>{if(s?.refreshInterval){let b=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,f=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,A=setInterval(()=>{l();},q.duration(b,f).asMilliseconds());return ()=>clearInterval(A)}return ()=>{}},[s?.refreshInterval,l]);let u=ee.useRef(null),{enabledRefetch:C,timeoutRefetch:D,timeoutUnitRefetch:w}=ee.useMemo(()=>{let b=s?.refetchOnWindowFocus?.enabled??L?.enabled??false,f=s?.refetchOnWindowFocus?.timeout??L?.timeout,A=typeof f=="number"?f:f?.value??60*5,c=typeof f=="object"?f.unit:"s";return {enabledRefetch:b,timeoutRefetch:A,timeoutUnitRefetch:c}},[s?.refetchOnWindowFocus,L]);ee.useEffect(()=>{if(!C)return;let b=q.duration(D,w).asMilliseconds(),f=()=>{let c=Date.now(),S=u.current;S!==null&&c-S>=b&&l(),u.current=null;},A=()=>{u.current=Date.now();};return window.addEventListener("focus",f),window.addEventListener("blur",A),()=>{window.removeEventListener("focus",f),window.removeEventListener("blur",A);}},[C,D,w,l]);let m=ee.useCallback(()=>{H.current?.abort(),H.current=null,x(p,{loading:false,isCancel:true});},[p,H]),K=ee.useCallback(()=>{x(p,{loading:false,response:null});},[p]),U=ee.useMemo(()=>({...R,loading:y,refresh:l,abort:m,clear:K,response:R,isCancel:T,clone:(b,f)=>pt(t,b,{storeName:`${a}-clone`,...f})}),[R,y,l,m,K,T,t]);return ee.useEffect(()=>(qe(p,U),()=>{Ue(p);}),[U,p]),[R?.data,U]}async function Lr(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var ct=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(ct||{}),ut=(l=>(l.number="number",l.currency="currency",l.percent="percent",l.date="date",l.dateTime="dateTime",l.month="month",l.year="year",l.time="time",l.timestamp="timestamp",l.string="string",l.textarea="textarea",l.code="code",l.password="password",l.boolean="boolean",l.toggle="toggle",l.email="email",l.phone="phone",l.url="url",l.json="json",l.file="file",l.image="image",l.array="array",l.object="object",l.enum="enum",l.user="user",l.department="department",l.status="status",l))(ut||{});var Vr=()=>{let{format:e}=F();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)?mt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?ft(t,n):r==="string"?dt(t,n):t?.toString()}catch{return}}};function ft(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function dt(e,t){if(!$(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=he(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 T=String(e??"").trim().trim();if(ae(T,r))return T}if(e==null||isNaN(Number(e)))return "";let i=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let y=Math.pow(10,n);i=Math[o](i*y)/y;}else i=Math[o](i);else if(typeof n=="number"){let y=Math.pow(10,n);i=Math.trunc(i*y)/y;}let s=0;if(n==="auto"){let y=i.toString(),T=y.indexOf(".");T!==-1&&(s=y.length-T-1);}let p={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?s:n||0,maximumFractionDigits:n==="auto"?s:n||0,minimumIntegerDigits:1};return i.toLocaleString("en-US",p).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,t)}function mt(e,{display:t,value:r}){if(!$(e))return e;let n=q(e,r);return n.isValid()?n.format(t):e}function zr(e,{interval:t,lead:r}){let n=ee.useRef(null);ee.useEffect(()=>{n.current=e;},[e]),ee.useEffect(()=>{let o=()=>n.current();if(r&&o(),t!==null){let a=setInterval(o,t);return ()=>clearInterval(a)}},[t]);}function Xr(e,t,r){let[n,o]=ee.useState(false),a=(d,y)=>typeof e=="string"&&d===e||typeof e=="number"&&y===e,i=d=>d!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(d.tagName)||d.hasAttribute("contentEditable")),s=d=>{let{key:y,keyCode:T}=d,R=d.ctrlKey,x=d.altKey,O=d.shiftKey;if(!i(document.activeElement))if(t)if(typeof t=="string")a(y,T)&&(t==="ctrl"&&R||t==="alt"&&x||t==="shift"&&O)&&(d.preventDefault(),r&&d.stopPropagation(),o(!n));else {let g=t.every(E=>E==="ctrl"?R:E==="alt"?x:E==="shift"?O:false);a(y,T)&&g&&(d.preventDefault(),r&&d.stopPropagation(),o(!n));}else a(y,T)&&(d.preventDefault(),r&&d.stopPropagation(),o(!n));},p=({key:d,keyCode:y})=>{a(d,y)&&o(false);};return ee.useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",p),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",p);}),[]),n}var sn=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:p,withCredentials:d,encryptRequest:y,encryptResponse:T,passphrase:R})=>{let{encrypt:x,decrypt:O,passphrase:g}=Q(),E=(h,l,u,C)=>{let D=C?.code==="ERR_CANCELED",w=h?.status===401,m=h?.data;if((typeof u?.encryptResponse=="boolean"?u?.encryptResponse:T)&&m){let c=u?.passphrase?typeof u.passphrase=="boolean"&&u.passphrase?g:u.passphrase:R;try{m=O(m,c);}catch{try{m=O(m,g);}catch{}}}let b={...n({...h,data:m,isCancel:D,isUnauthorization:w},C),isCancel:D,isUnauthorization:w,httpCode:h?.status},f=typeof u?.disabledToastWhenCancel=="boolean"?u?.disabledToastWhenCancel:p,A=s?s(b,u):!w;if((u?.infoSuccess&&b.status||u?.infoError&&!b.status)&&i&&(!D||!f)&&i(b),!A&&(!D||!u?.disabledHandleUnauthorized)){let c=u?.onUnauthorized||a;c&&c(b);}if(l)l(b);else return b},L=(h,l=()=>{})=>bt__default.default.create({baseURL:`${e}`,withCredentials:typeof h.withCredentials=="boolean"?h.withCredentials:d})(h).then(l).catch(C=>l(C.response,C)),I=(h,l,u,C,D)=>{let m={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...D},K={"Content-Type":"application/json",...o,...m.headers};if(m.token&&(typeof m.token=="boolean"?t&&(K.Authorization=`Bearer ${t}`):m.token&&(K.Authorization=`Bearer ${m.token}`)),r&&(u=r(u)),(typeof m?.encryptRequest=="boolean"?m?.encryptRequest:y)&&u){let b=D?.passphrase?typeof D.passphrase=="boolean"&&D.passphrase?g:D.passphrase:R;u=x(u,b);}return L({url:l,method:h,data:u,headers:K,responseType:m.responseType,signal:m.signal,withCredentials:m.withCredentials,onUploadProgress:b=>{m?.onUploadProgress&&m?.onUploadProgress(b);}},(b,f)=>E(b,C,m,f))};return {client:L,post:(h,l,u,C)=>I("POST",`${h}`,l,u,C),put:(h,l,u,C)=>I("PUT",`${h}`,l,u,C),patch:(h,l,u,C)=>I("PATCH",`${h}`,l,u,C),delete:(h,l,u)=>I("DELETE",`${h}`,null,l,u),get:(h,l,u)=>I("GET",`${h}`,null,l,u),upload:(h,l,u,C)=>{let D=new FormData;return Object.keys(l).forEach(w=>D.append(w,l[w])),I("POST",`${h}`,D,u,{infoSuccess:false,...C,headers:{"Content-Type":"multipart/form-data",...C?.headers}})},stream:async(h,l,u,C,D)=>{try{let m={...{token:!0,responseType:"json",infoError:!0},...D},K={"Content-Type":"application/json",...o,...m.headers};if(m.token){let k=typeof m.token=="boolean"?t:m.token;k&&(K.Authorization=`Bearer ${k}`);}let U=u;if(r&&(U=r(U)),(typeof m.encryptRequest=="boolean"?m.encryptRequest:y)&&U){let k=m.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?g:m.passphrase:R;U=x(U,k);}let f=await fetch(`${e}${l}`,{method:h,headers:K,credentials:m.withCredentials?"include":"same-origin",signal:m.signal,body:JSON.stringify(U)}),A=f?.status,c=A===401;if(!f.ok){let k=f?.statusText||"Error";try{let X=f.headers.get("content-type")||"",_=await f.clone().text();if(_)if(X.includes("application/json"))try{let se=JSON.parse(_);if((typeof D?.encryptResponse=="boolean"?D?.encryptResponse:T)&&u){let Ke=D?.passphrase?typeof D.passphrase=="boolean"&&D.passphrase?g:D.passphrase:R;try{u=O(se,Ke);}catch{try{u=O(se,g);}catch{}}}k=se?.message||k;}catch{k=_;}else k=_;}catch{}let oe=typeof D?.disabledToastWhenCancel=="boolean"?D?.disabledToastWhenCancel:p,Y={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:c,httpCode:A,isDone:!0};D?.infoError&&i&&!oe&&i(Y),C(Y);return}let S=f.body.getReader(),P=new TextDecoder("utf-8"),N="",W=!1;for(;!W;){let{done:k,value:oe}=await S.read();W=k,N+=P.decode(oe,{stream:!0});let Y=N.split(`
1
+ 'use strict';var ee=require('react'),M=require('dayjs'),Le=require('dayjs/plugin/utc'),Be=require('dayjs/plugin/timezone'),He=require('dayjs/plugin/duration'),je=require('dayjs/plugin/advancedFormat'),Ve=require('dayjs/plugin/localizedFormat'),_e=require('dayjs/plugin/relativeTime'),ze=require('dayjs/plugin/isSameOrBefore'),We=require('dayjs/plugin/isSameOrAfter'),Ye=require('dayjs/plugin/weekOfYear'),Je=require('dayjs/plugin/customParseFormat'),jsxRuntime=require('react/jsx-runtime'),Pe=require('crypto-js/aes'),Oe=require('crypto-js/pbkdf2'),st=require('crypto-js/enc-utf8'),Z=require('crypto-js/enc-base64'),Se=require('crypto-js/lib-typedarrays'),zustand=require('zustand'),shallow=require('zustand/react/shallow'),Tt=require('axios');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var ee__default=/*#__PURE__*/_interopDefault(ee);var M__default=/*#__PURE__*/_interopDefault(M);var Le__default=/*#__PURE__*/_interopDefault(Le);var Be__default=/*#__PURE__*/_interopDefault(Be);var He__default=/*#__PURE__*/_interopDefault(He);var je__default=/*#__PURE__*/_interopDefault(je);var Ve__default=/*#__PURE__*/_interopDefault(Ve);var _e__default=/*#__PURE__*/_interopDefault(_e);var ze__default=/*#__PURE__*/_interopDefault(ze);var We__default=/*#__PURE__*/_interopDefault(We);var Ye__default=/*#__PURE__*/_interopDefault(Ye);var Je__default=/*#__PURE__*/_interopDefault(Je);var Pe__default=/*#__PURE__*/_interopDefault(Pe);var Oe__default=/*#__PURE__*/_interopDefault(Oe);var st__default=/*#__PURE__*/_interopDefault(st);var Z__default=/*#__PURE__*/_interopDefault(Z);var Se__default=/*#__PURE__*/_interopDefault(Se);var Tt__default=/*#__PURE__*/_interopDefault(Tt);M__default.default.extend(Le__default.default);M__default.default.extend(Be__default.default);M__default.default.extend(He__default.default);M__default.default.extend(je__default.default);M__default.default.extend(Ve__default.default);M__default.default.extend(_e__default.default);M__default.default.extend(ze__default.default);M__default.default.extend(We__default.default);M__default.default.extend(Ye__default.default);M__default.default.extend(Je__default.default);var q=M__default.default;function Zt(){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 Qt(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var er=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function tr(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 he={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=he.snackCase(he.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function rr(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},nr={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}))},or=(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 sr(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function Ge(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 Te(e,t){return Ge([t??"undefined",e??"undefined"])}function xe(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function ar(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var De=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function ae(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 Xe(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&&ae(n,r))return true}return false}function Ce(e="",t=false,r="."){if(!Xe(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var Ze=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 ir(e){let t={};for(let r in e)Ze.has(r)&&(t[r]=e[r]);return t}function lr(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function cr(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(q).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 pr(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 ur(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 fr=(e=[],t="label",r="value",n)=>Array.isArray(e)?e.map((o,a)=>{if(typeof o!="object"){let i=typeof t=="function"?t(o,a):o,s=typeof r=="function"?r(o,a):o;return {label:i,value:s,index:a,rowData:o}}else {let i=typeof t=="function"?t(o,a):E(o,t,""),s=typeof r=="function"?r(o,a):E(o,r,"");return {label:i,value:typeof s=="boolean"?s:s||"",index:a,...n&&{[n]:E(o,n)},rowData:o}}}):[];function Qe(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(!$(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(Qe(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function be(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=be(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=be(e[t]));return e}var Ae=ee.createContext(void 0);function I(){let e=ee.useContext(Ae);return e||{}}var nt=({children:e,value:t})=>{let r={...t};return ee.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&&q.locale(o,a??{},i);}})();},[t.localeConfig]),jsxRuntime.jsx(Ae.Provider,{value:r,children:e})};function ie(e,t){let r=Se__default.default.random(16),n=Se__default.default.random(16),o=Oe__default.default(t,r,{keySize:256/32,iterations:1e3}),a=Pe__default.default.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(Z__default.default),iv:n.toString(Z__default.default),encrypted:a}}function le(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Oe__default.default(t,Z__default.default.parse(r),{keySize:256/32,iterations:1e3}),s=Pe__default.default.decrypt(o,a,{iv:Z__default.default.parse(n)}).toString(st__default.default);return JSON.parse(s)}function we(e,t){return JSON.stringify(ie(e,t))}function qe(e,t){return le(JSON.parse(e),t)}function Q(){let{passphrase:e}=I();return {passphrase:e,encrypt(t,r){return ie(t,r||e)},decrypt(t,r){return le(t,r||e)},encryptString(t,r){return we(t,r||e)},decryptString(t,r){return qe(t,r||e)}}}var Ue=()=>{let{encrypt:e,decrypt:t}=Q(),r=ee.useCallback((i,s)=>{try{let c=e(s);localStorage.setItem(i,JSON.stringify(c));}catch(c){console.error("Failed to save to storage:",c);}},[e]),n=ee.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,c]=ee.useState(()=>{try{let p=localStorage.getItem(i);return p?t(JSON.parse(p)):null}catch(p){return console.error("Failed to parse localStorage value",p),null}});return ee.useEffect(()=>{let p=y=>{if(y.key===i)if(y.newValue)try{c(t(JSON.parse(y.newValue)));}catch(T){console.error("Decrypt error from storage event",T);}else c(null);};return window.addEventListener("storage",p),()=>window.removeEventListener("storage",p)},[i,t]),s},a=ee.useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function ct(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 Y={loading:false,response:void 0,isCancel:false},J=zustand.create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??Y,a={...o,...n};ct(o,a)||e(i=>({states:{...i.states,[r]:a}}));}}));var pe=new Map,ve=(e,t)=>{pe.set(e,t);},ke=e=>{pe.delete(e);},Ee=e=>pe.get(e);function ut(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,i=o?void 0:r,s=o?r:n,c=s?.storeName||`${a}`,p=s?.mergeStrategy??"replace",[y,T,R,D]=J(shallow.useShallow(h=>{let d=h.states[c]??Y;return [d.loading,d.isCancel,d.response,h.updateState]})),{storageKey:O,cache:g,clearPreviousData:N,refetchOnWindowFocus:F}=I(),L=Ue(),_=ee.useRef(void 0),B=ee.useRef(null),{cacheName:j,cacheKey:H,timeout:te,timeoutUnit:re,persistence:ne,cacheEnabled:b}=ee.useMemo(()=>{let h=O?L.get(O):void 0,d=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,A=Te({...i,session:h},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),u=false;typeof g?.enabled=="boolean"&&(u=g.enabled);let S=false;typeof g?.persistence=="boolean"&&(S=g?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(S=s?.cache?.persistence??false);let P=60*5,v="s";return $(g?.timeout)&&(typeof g?.timeout=="number"?(P=g.timeout,v="s"):typeof g?.timeout=="object"&&(P=g?.timeout.value,v=g?.timeout.unit)),$(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?u=s.cache.enabled:u=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)):u=s.cache),{cacheName:d,cacheKey:A,timeout:P,timeoutUnit:v,persistence:S,cacheEnabled:u}},[s?.cache,i,O,g,a]);ee.useEffect(()=>{let h=JSON.stringify($(_.current)?_.current:""),d=JSON.stringify($(i)?i:""),A=_.current===void 0;(h!==d||A)&&!s?.hold&&((s?.clearPreviousData??N)&&D(c,{response:null}),l(),_.current=i),s?.onChange&&s?.onChange(i,U);},[i,s?.clearPreviousData,N,s?.hold,...s?.trigger||[]]),ee.useEffect(()=>{let h=async()=>{!ne&&j&&H&&(await caches.open(j)).delete(H);};return window.addEventListener("beforeunload",h),()=>{window.removeEventListener("beforeunload",h),B.current?.abort();}},[ne,j,H,c,B]);let l=ee.useCallback(async h=>{let d=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(d=s?.beforeRequest(i)),b&&!h&&!T){s?.onBeforeRequest&&s?.onBeforeRequest(i);let A=await caches.open(j),S=await(await A.match(H))?.json();if(S){let{data:P,expired:v}=S;if(q().isAfter(v))await A.delete(H);else {s?.afterResponse&&P?.data&&(P.data=s?.afterResponse(P.data,d)),s?.logging&&console.log("After request: Using Cache",P),P?.status&&s?.onSuccess?.(P,d),s?.onAfterResponse?.(P,d),D(c,{loading:false,response:P});return}}}if(typeof t=="function"){B.current?.abort();let A=new AbortController;B.current=A,D(c,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let u=o?await t(void 0,{...s,signal:A.signal}):await t(d,void 0,{...s,signal:A.signal});if(u.__rawData=u.data,p==="append"&&$(R.__rawData)&&$(u?.data)){if(Array.isArray(R.__rawData)&&Array.isArray(u?.data)){let S=[...R?.__rawData??[],...u.data??[]];u.data=S,u.__rawData=S;}else if(typeof R.__rawData=="object"&&typeof u.data=="object"){let S={...R.__rawData,...u.data};u.data=S,u.__rawData=S;}}if(s?.afterResponse&&u?.data&&(u.data=s?.afterResponse(u.data,d)),s?.logging&&console.log("After request",u),u.status&&s?.onSuccess?.(u,d),u.status||s?.onError?.(u,d),s?.onAfterResponse?.(u,d),D(c,{loading:false,response:u,isCancel:false}),b&&u.status){let S=q().add(te,re).toISOString(),P={data:u,expired:S},v=await caches.open(j),z=new Response(JSON.stringify(P));await v.put(H,z);}}},[i,t,s,T,j,H,te,re,b,R]);ee.useEffect(()=>{if(s?.refreshInterval){let h=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,d=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,A=setInterval(()=>{l();},q.duration(h,d).asMilliseconds());return ()=>clearInterval(A)}return ()=>{}},[s?.refreshInterval,l]);let f=ee.useRef(null),{enabledRefetch:C,timeoutRefetch:x,timeoutUnitRefetch:w}=ee.useMemo(()=>{let h=s?.refetchOnWindowFocus?.enabled??F?.enabled??false,d=s?.refetchOnWindowFocus?.timeout??F?.timeout,A=typeof d=="number"?d:d?.value??60*5,u=typeof d=="object"?d.unit:"s";return {enabledRefetch:h,timeoutRefetch:A,timeoutUnitRefetch:u}},[s?.refetchOnWindowFocus,F]);ee.useEffect(()=>{if(!C)return;let h=q.duration(x,w).asMilliseconds(),d=()=>{let u=Date.now(),S=f.current;S!==null&&u-S>=h&&l(),f.current=null;},A=()=>{f.current=Date.now();};return window.addEventListener("focus",d),window.addEventListener("blur",A),()=>{window.removeEventListener("focus",d),window.removeEventListener("blur",A);}},[C,x,w,l]);let m=ee.useCallback(()=>{B.current?.abort(),B.current=null,D(c,{loading:false,isCancel:true});},[c,B]),K=ee.useCallback(()=>{D(c,{loading:false,response:null});},[c]),U=ee.useMemo(()=>({...R,loading:y,refresh:l,abort:m,clear:K,response:R,isCancel:T,clone:(h,d)=>ut(t,h,{storeName:`${a}-clone`,...d})}),[R,y,l,m,K,T,t]);return ee.useEffect(()=>(ve(c,U),()=>{ke(c);}),[U,c]),[R?.data,U]}async function Vr(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var ft=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(ft||{}),dt=(l=>(l.number="number",l.currency="currency",l.percent="percent",l.date="date",l.dateTime="dateTime",l.month="month",l.year="year",l.time="time",l.timestamp="timestamp",l.string="string",l.textarea="textarea",l.code="code",l.password="password",l.boolean="boolean",l.toggle="toggle",l.email="email",l.phone="phone",l.url="url",l.json="json",l.file="file",l.image="image",l.array="array",l.object="object",l.enum="enum",l.user="user",l.department="department",l.status="status",l))(dt||{});var Gr=()=>{let{format:e}=I();return (t,r,n)=>{try{return r==="number"?Ne(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(o=>o===r)?Rt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?mt(t,n):r==="string"?yt(t,n):t?.toString()}catch{return}}};function mt(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function yt(e,t){if(!$(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=xe(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}Ne(10,{thouSep:",",decSep:".",decDigits:2});function Ne(e,{thouSep:t,decSep:r,decDigits:n,method:o,dirty:a}){if(a){let T=String(e??"").trim().trim();if(ae(T,r))return T}if(e==null||isNaN(Number(e)))return "";let i=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let y=Math.pow(10,n);i=Math[o](i*y)/y;}else i=Math[o](i);else if(typeof n=="number"){let y=Math.pow(10,n);i=Math.trunc(i*y)/y;}let s=0;if(n==="auto"){let y=i.toString(),T=y.indexOf(".");T!==-1&&(s=y.length-T-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,t)}function Rt(e,{display:t,value:r}){if(!$(e))return e;let n=q(e,r);return n.isValid()?n.format(t):e}function Qr(e,{interval:t,lead:r}){let n=ee.useRef(null);ee.useEffect(()=>{n.current=e;},[e]),ee.useEffect(()=>{let o=()=>n.current();if(r&&o(),t!==null){let a=setInterval(o,t);return ()=>clearInterval(a)}},[t]);}function rn(e,t,r){let[n,o]=ee.useState(false),a=(p,y)=>typeof e=="string"&&p===e||typeof e=="number"&&y===e,i=p=>p!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(p.tagName)||p.hasAttribute("contentEditable")),s=p=>{let{key:y,keyCode:T}=p,R=p.ctrlKey,D=p.altKey,O=p.shiftKey;if(!i(document.activeElement))if(t)if(typeof t=="string")a(y,T)&&(t==="ctrl"&&R||t==="alt"&&D||t==="shift"&&O)&&(p.preventDefault(),r&&p.stopPropagation(),o(!n));else {let g=t.every(N=>N==="ctrl"?R:N==="alt"?D:N==="shift"?O:false);a(y,T)&&g&&(p.preventDefault(),r&&p.stopPropagation(),o(!n));}else a(y,T)&&(p.preventDefault(),r&&p.stopPropagation(),o(!n));},c=({key:p,keyCode:y})=>{a(p,y)&&o(false);};return ee.useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",c),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",c);}),[]),n}var un=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:c,withCredentials:p,encryptRequest:y,encryptResponse:T,passphrase:R})=>{let{encrypt:D,decrypt:O,passphrase:g}=Q(),N=(b,l,f,C)=>{let x=C?.code==="ERR_CANCELED",w=b?.status===401,m=b?.data;if((typeof f?.encryptResponse=="boolean"?f?.encryptResponse:T)&&m){let u=f?.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?g:f.passphrase:R;try{m=O(m,u);}catch{try{m=O(m,g);}catch{}}}let h={...n({...b,data:m,isCancel:x,isUnauthorization:w},C),isCancel:x,isUnauthorization:w,httpCode:b?.status},d=typeof f?.disabledToastWhenCancel=="boolean"?f?.disabledToastWhenCancel:c,A=s?s(h,f):!w;if((f?.infoSuccess&&h.status||f?.infoError&&!h.status)&&i&&(!x||!d)&&i(h),!A&&(!x||!f?.disabledHandleUnauthorized)){let u=f?.onUnauthorized||a;u&&u(h);}if(l)l(h);else return h},F=(b,l=()=>{})=>Tt__default.default.create({baseURL:`${e}`,withCredentials:typeof b.withCredentials=="boolean"?b.withCredentials:p})(b).then(l).catch(C=>l(C.response,C)),L=(b,l,f,C,x)=>{let m={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...x},K={"Content-Type":"application/json",...o,...m.headers};if(m.token&&(typeof m.token=="boolean"?t&&(K.Authorization=`Bearer ${t}`):m.token&&(K.Authorization=`Bearer ${m.token}`)),r&&(f=r(f)),(typeof m?.encryptRequest=="boolean"?m?.encryptRequest:y)&&f){let h=x?.passphrase?typeof x.passphrase=="boolean"&&x.passphrase?g:x.passphrase:R;f=D(f,h);}return F({url:l,method:b,data:f,headers:K,responseType:m.responseType,signal:m.signal,withCredentials:m.withCredentials,onUploadProgress:h=>{m?.onUploadProgress&&m?.onUploadProgress(h);}},(h,d)=>N(h,C,m,d))};return {client:F,post:(b,l,f,C)=>L("POST",`${b}`,l,f,C),put:(b,l,f,C)=>L("PUT",`${b}`,l,f,C),patch:(b,l,f,C)=>L("PATCH",`${b}`,l,f,C),delete:(b,l,f)=>L("DELETE",`${b}`,null,l,f),get:(b,l,f)=>L("GET",`${b}`,null,l,f),upload:(b,l,f,C)=>{let x=new FormData;return Object.keys(l).forEach(w=>x.append(w,l[w])),L("POST",`${b}`,x,f,{infoSuccess:false,...C,headers:{"Content-Type":"multipart/form-data",...C?.headers}})},stream:async(b,l,f,C,x)=>{try{let m={...{token:!0,responseType:"json",infoError:!0},...x},K={"Content-Type":"application/json",...o,...m.headers};if(m.token){let k=typeof m.token=="boolean"?t:m.token;k&&(K.Authorization=`Bearer ${k}`);}let U=f;if(r&&(U=r(U)),(typeof m.encryptRequest=="boolean"?m.encryptRequest:y)&&U){let k=m.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?g:m.passphrase:R;U=D(U,k);}let d=await fetch(`${e}${l}`,{method:b,headers:K,credentials:m.withCredentials?"include":"same-origin",signal:m.signal,body:JSON.stringify(U)}),A=d?.status,u=A===401;if(!d.ok){let k=d?.statusText||"Error";try{let X=d.headers.get("content-type")||"",V=await d.clone().text();if(V)if(X.includes("application/json"))try{let se=JSON.parse(V);if((typeof x?.encryptResponse=="boolean"?x?.encryptResponse:T)&&f){let Fe=x?.passphrase?typeof x.passphrase=="boolean"&&x.passphrase?g:x.passphrase:R;try{f=O(se,Fe);}catch{try{f=O(se,g);}catch{}}}k=se?.message||k;}catch{k=V;}else k=V;}catch{}let oe=typeof x?.disabledToastWhenCancel=="boolean"?x?.disabledToastWhenCancel:c,W={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:u,httpCode:A,isDone:!0};x?.infoError&&i&&!oe&&i(W),C(W);return}let S=d.body.getReader(),P=new TextDecoder("utf-8"),v="",z=!1;for(;!z;){let{done:k,value:oe}=await S.read();z=k,v+=P.decode(oe,{stream:!0});let W=v.split(`
2
2
 
3
- `);N=Y.pop();for(let X of Y)if(X.startsWith("data:"))try{let _=Te(X);C({status:!0,data:_,message:"",isCancel:!1,isUnauthorization:c,httpCode:A,isDone:!1});}catch{}}C({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:c,httpCode:A,isDone:!0});}catch(w){let m=w?.name==="AbortError";C({status:false,data:void 0,message:w instanceof Error?w.message:"Internal Server Error",isCancel:m,isUnauthorization:false,httpCode:400,isDone:true});}}}};function pn(e,t){let[r,n]=ee.useState(false),[o,a]=ee.useState(),[i,s]=ee.useState(0),p=ee.useRef(null);return ee.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{p.current?.abort();}},[]),[async R=>{p.current?.abort();let x=new AbortController;p.current=x,n(true),t?.beforeRequest&&(R=t?.beforeRequest(R)),t?.logging&&console.log("Before request",R),t?.onBeforeRequest&&t?.onBeforeRequest(R);let O={...t,signal:x.signal,onUploadProgress:E=>{let L=Math.round(E.loaded*100/(E.total||1));s(L);}},g=e.__isVoid?await e(void 0,O):await e(R,void 0,O);t?.logging&&console.log("After response",g),a(g),n(false),s(0),t?.afterResponse&&g?.data&&(g.data=t?.afterResponse(g.data,R)),g.status&&t?.onSuccess&&t?.onSuccess(g,R),!g.status&&t?.onError&&t?.onError(g,R),t?.onAfterResponse?.(g,R);},{...o,loading:r,abort:()=>{p.current?.abort(),p.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function Dt(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 xt=typeof window<"u"?window:null;function fn(e={}){let{getTrigger:t=Dt,target:r=xt,disableHysteresis:n=false,threshold:o=100}=e,a=ee__default.default.useRef(0),[i,s]=ee__default.default.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return ee__default.default.useEffect(()=>{let p=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(p(),r)return r.addEventListener("scroll",p,{passive:true}),()=>{r.removeEventListener("scroll",p);}},[r,t,n,o]),i}function yn(e,t){let r,n;typeof t=="number"?(r=t,n=void 0):(r=t?.delay??500,n=t?.onDebounce);let[o,a]=ee.useState(e);return ee.useEffect(()=>{let i=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(i)},[e,r,n]),o}var xn=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:i,clear:s,clone:p}=Ne(n)||{},d=O=>{let g=O.states[n]??z;return {loading:g.loading,isCancel:g.isCancel,response:g.response}},{loading:y,isCancel:T,response:R}=o?J(shallow.useShallow(d)):J(d),x=ee.useMemo(()=>[R?.data,{...R,loading:y,isCancel:T,refresh:a,abort:i,clear:s,clone:p}],[R,y,T,a,i,s,p]);return t?.selector?t.selector(x):x};var Sn=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},Ee=(e,t)=>{let r=false;return ee__default.default.Children.forEach(e,n=>{if(ee__default.default.isValidElement(n)){let o=n,a=n.type.displayName;(t.includes(a)||o.props?.children&&Ee(o.props.children,t))&&(r=true);}}),r},Pn=(e,t)=>{let r={others:[]},n=o=>{ee__default.default.Children.forEach(o,a=>{if(ee__default.default.isValidElement(a)){let i=a.type.displayName,s=a,p=s.props?.children;t.includes(i)?r[i]=a:p&&Ee(p,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function Un(){let{format:e}=F();return (t="",r=false)=>De(t,r,e.number.decSep)}function vn(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(p=>p());}function i(s){let p=ee.useRef(s?s(t):t);return ee.useSyncExternalStore(o,()=>{let d=s?s(t):t,y=p.current;return Object.is(y,d)||(p.current=d),p.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function qt(e,t=[]){let r={};for(let n in e){let o=e[n];if(typeof o=="function"){let a=o.bind(null);a.__path=[...t,n].join("."),a.__isVoid=o.length===2,r[n]=a;}else typeof o=="object"&&o!==null?r[n]=qt(o,[...t,n]):r[n]=o;}return r}function Kn(e,t){let[r,n]=ee.useState(false),[o,a]=ee.useState([]),i=ee.useRef([]),s=ee.useRef(null);ee.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let p=async T=>{s.current?.abort();let R=new AbortController;s.current=R,n(true),a([]),i.current=[],e(T,x=>{x.isDone||(i.current.push(x),a([...i.current])),(x.isDone||!x.status)&&(n(false),t?.onDone&&t?.onDone([...i.current])),x.status?t?.onStream&&t?.onStream(x):t?.onError&&t?.onError(x);},{signal:R.signal});},d=()=>{s.current?.abort(),s.current=null,n(false);},y=()=>{n(false),a([]),i.current=[];};return [o.map(T=>T.data),p,{loading:r,abort:d,reset:y,response:o}]}exports.BgsCoreProvider=tt;exports.DataTypeEnum=ut;exports.HttpMethod=ct;exports.capitalizeWords=he;exports.createApiHelper=sn;exports.createElement=Sn;exports.createStore=vn;exports.debounce=tr;exports.decrypt=le;exports.decryptString=Oe;exports.defaultState=z;exports.diffJson=zt;exports.encrypt=ie;exports.encryptString=Pe;exports.filterDOMPropsLite=rr;exports.generateCacheKey=be;exports.generateUUID=Yt;exports.getApiActions=Ne;exports.getDateRangeLabelFromSorted=sr;exports.getFieldValue=v;exports.getInitials=nr;exports.getMinMaxDate=or;exports.getTotalMinutes=ar;exports.isArray=Gt;exports.isDirtyRaw=ae;exports.isNotEmpty=$;exports.isValidNumber=Je;exports.jsonCopy=er;exports.labelFormatter=Re;exports.mappingData=ir;exports.mappingUndefinedtoNull=Jt;exports.moment=q;exports.objectToQueryString=Xe;exports.parseSSEChunk=Te;exports.parseStringToNumber=De;exports.registerApi=qe;exports.renderChildren=Xt;exports.replaceNullStrings=ge;exports.safeUpdate=it;exports.sorting=Zt;exports.splitElement=Pn;exports.stableStringify=ze;exports.summary=Qt;exports.unregisterApi=Ue;exports.useApiLoad=pt;exports.useApiLoadStore=J;exports.useApiSend=pn;exports.useApiStore=xn;exports.useApiStream=Kn;exports.useBgsCore=F;exports.useCrypto=Q;exports.useDebounce=yn;exports.useDelay=Lr;exports.useFormatted=Vr;exports.useInterval=zr;exports.useKeyPress=Xr;exports.useParseStringToNumber=Un;exports.useScrollTrigger=fn;exports.useStorage=we;exports.wrapApi=qt;
3
+ `);v=W.pop();for(let X of W)if(X.startsWith("data:"))try{let V=De(X);C({status:!0,data:V,message:"",isCancel:!1,isUnauthorization:u,httpCode:A,isDone:!1});}catch{}}C({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:u,httpCode:A,isDone:!0});}catch(w){let m=w?.name==="AbortError";C({status:false,data:void 0,message:w instanceof Error?w.message:"Internal Server Error",isCancel:m,isUnauthorization:false,httpCode:400,isDone:true});}}}};function mn(e,t){let[r,n]=ee.useState(false),[o,a]=ee.useState(),[i,s]=ee.useState(0),c=ee.useRef(null);return ee.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{c.current?.abort();}},[]),[async R=>{c.current?.abort();let D=new AbortController;c.current=D,n(true),t?.beforeRequest&&(R=t?.beforeRequest(R)),t?.logging&&console.log("Before request",R),t?.onBeforeRequest&&t?.onBeforeRequest(R);let O={...t,signal:D.signal,onUploadProgress:N=>{let F=Math.round(N.loaded*100/(N.total||1));s(F);}},g=e.__isVoid?await e(void 0,O):await e(R,void 0,O);t?.logging&&console.log("After response",g),a(g),n(false),s(0),t?.afterResponse&&g?.data&&(g.data=t?.afterResponse(g.data,R)),g.status&&t?.onSuccess&&t?.onSuccess(g,R),!g.status&&t?.onError&&t?.onError(g,R),t?.onAfterResponse?.(g,R);},{...o,loading:r,abort:()=>{c.current?.abort(),c.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function Ct(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 At=typeof window<"u"?window:null;function gn(e={}){let{getTrigger:t=Ct,target:r=At,disableHysteresis:n=false,threshold:o=100}=e,a=ee__default.default.useRef(0),[i,s]=ee__default.default.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return ee__default.default.useEffect(()=>{let c=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(c(),r)return r.addEventListener("scroll",c,{passive:true}),()=>{r.removeEventListener("scroll",c);}},[r,t,n,o]),i}function Tn(e,t){let r,n;typeof t=="number"?(r=t,n=void 0):(r=t?.delay??500,n=t?.onDebounce);let[o,a]=ee.useState(e);return ee.useEffect(()=>{let i=setTimeout(()=>{a(e),n&&n(e);},r);return ()=>clearTimeout(i)},[e,r,n]),o}var On=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:i,clear:s,clone:c}=Ee(n)||{},p=O=>{let g=O.states[n]??Y;return {loading:g.loading,isCancel:g.isCancel,response:g.response}},{loading:y,isCancel:T,response:R}=o?J(shallow.useShallow(p)):J(p),D=ee.useMemo(()=>[R?.data,{...R,loading:y,isCancel:T,refresh:a,abort:i,clear:s,clone:c}],[R,y,T,a,i,s,c]);return t?.selector?t.selector(D):D};var Un=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},$e=(e,t)=>{let r=false;return ee__default.default.Children.forEach(e,n=>{if(ee__default.default.isValidElement(n)){let o=n,a=n.type.displayName;(t.includes(a)||o.props?.children&&$e(o.props.children,t))&&(r=true);}}),r},vn=(e,t)=>{let r={others:[]},n=o=>{ee__default.default.Children.forEach(o,a=>{if(ee__default.default.isValidElement(a)){let i=a.type.displayName,s=a,c=s.props?.children;t.includes(i)?r[i]=a:c&&$e(c,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function Mn(){let{format:e}=I();return (t="",r=false)=>Ce(t,r,e.number.decSep)}function In(e,t){let r=ee.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0});return ee.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 ge={};function Hn(e,t){let[r,n]=ee.useState(false),[o,a]=ee.useState(),[i,s]=ee.useState();return ee.useEffect(()=>{if(!e)return;if(ge[e]){s(()=>ge[e]);return}n(true),(async()=>{try{let p=await import(`${t.path}${e}${t.extension??".svg?react"}`);ge[e]=p.default,s(()=>p.default);}catch(p){a(p),console.error(p);}finally{n(false);}})();},[e,t.path,t.extension]),{error:o,loading:r,Icon:i}}function _n(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(c=>c());}function i(s){let c=ee.useRef(s?s(t):t);return ee.useSyncExternalStore(o,()=>{let p=s?s(t):t,y=c.current;return Object.is(y,p)||(c.current=p),c.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function Nt(e,t=[]){let r={};for(let n in e){let o=e[n];if(typeof o=="function"){let a=o.bind(null);a.__path=[...t,n].join("."),a.__isVoid=o.length===2,r[n]=a;}else typeof o=="object"&&o!==null?r[n]=Nt(o,[...t,n]):r[n]=o;}return r}function Jn(e,t){let[r,n]=ee.useState(false),[o,a]=ee.useState([]),i=ee.useRef([]),s=ee.useRef(null);ee.useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let c=async T=>{s.current?.abort();let R=new AbortController;s.current=R,n(true),a([]),i.current=[],e(T,D=>{D.isDone||(i.current.push(D),a([...i.current])),(D.isDone||!D.status)&&(n(false),t?.onDone&&t?.onDone([...i.current])),D.status?t?.onStream&&t?.onStream(D):t?.onError&&t?.onError(D);},{signal:R.signal});},p=()=>{s.current?.abort(),s.current=null,n(false);},y=()=>{n(false),a([]),i.current=[];};return [o.map(T=>T.data),c,{loading:r,abort:p,reset:y,response:o}]}exports.BgsCoreProvider=nt;exports.DataTypeEnum=dt;exports.HttpMethod=ft;exports.capitalizeWords=xe;exports.createApiHelper=un;exports.createElement=Un;exports.createStore=_n;exports.debounce=ar;exports.decrypt=le;exports.decryptString=qe;exports.defaultState=Y;exports.diffJson=Qt;exports.encrypt=ie;exports.encryptString=we;exports.filterDOMPropsLite=ir;exports.generateCacheKey=Te;exports.generateUUID=Zt;exports.getApiActions=Ee;exports.getDateRangeLabelFromSorted=pr;exports.getFieldValue=E;exports.getInitials=lr;exports.getMinMaxDate=cr;exports.getTotalMinutes=ur;exports.isArray=tr;exports.isDirtyRaw=ae;exports.isNotEmpty=$;exports.isValidNumber=Xe;exports.jsonCopy=sr;exports.labelFormatter=he;exports.mappingData=fr;exports.mappingUndefinedtoNull=er;exports.moment=q;exports.objectToQueryString=Qe;exports.parseSSEChunk=De;exports.parseStringToNumber=Ce;exports.registerApi=ve;exports.renderChildren=rr;exports.replaceNullStrings=be;exports.safeUpdate=ct;exports.sorting=nr;exports.splitElement=vn;exports.stableStringify=Ge;exports.summary=or;exports.unregisterApi=ke;exports.useApiLoad=ut;exports.useApiLoadStore=J;exports.useApiSend=mn;exports.useApiStore=On;exports.useApiStream=Jn;exports.useBgsCore=I;exports.useCrypto=Q;exports.useDebounce=Tn;exports.useDelay=Vr;exports.useDynamicSvgImport=Hn;exports.useElementBounding=In;exports.useFormatted=Gr;exports.useInterval=Qr;exports.useKeyPress=rn;exports.useParseStringToNumber=Mn;exports.useScrollTrigger=gn;exports.useStorage=Ue;exports.wrapApi=Nt;
package/dist/index.d.cts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { GenericAbortSignal, AxiosProgressEvent, AxiosResponse, AxiosRequestConfig } from 'axios';
2
2
  import { DurationUnitType } from 'dayjs/plugin/duration';
3
- import React$1, { PropsWithChildren } from 'react';
3
+ import * as React$1 from 'react';
4
+ import React__default, { PropsWithChildren } from 'react';
4
5
  import * as zustand from 'zustand';
5
6
  import dayjs from 'dayjs';
6
7
  import * as react_jsx_runtime from 'react/jsx-runtime';
@@ -499,7 +500,7 @@ interface UseScrollTriggerOptions {
499
500
  disableHysteresis?: boolean;
500
501
  target?: Node | Window | null;
501
502
  threshold?: number;
502
- getTrigger?: (store: ReturnType<typeof React$1.useRef<number | undefined>>, options: {
503
+ getTrigger?: (store: ReturnType<typeof React__default.useRef<number | undefined>>, options: {
503
504
  disableHysteresis?: boolean;
504
505
  threshold?: number;
505
506
  target?: Node | Window | null;
@@ -588,18 +589,38 @@ interface UseApiStoreOptions<T extends AnyApiMethod, U = UseCallReturnType<Infer
588
589
  declare const useApiStore: <T extends AnyApiMethod, U = UseCallReturnType<InferApiRequest<T>, InferApiResponse<T>>>(api: T, options?: UseApiStoreOptions<T, U>) => U;
589
590
 
590
591
  type CreateElementProps<P = unknown> = {
591
- (element: (props: P) => React$1.JSX.Element, elementName: string): React$1.FC<P>;
592
+ (element: (props: P) => React__default.JSX.Element, elementName: string): React__default.FC<P>;
592
593
  };
593
- declare const createElement: <T>(element: (props: T) => React$1.JSX.Element, elementName: string) => React$1.FC<T>;
594
+ declare const createElement: <T>(element: (props: T) => React__default.JSX.Element, elementName: string) => React__default.FC<T>;
594
595
  type SplitElementResult<T extends string> = {
595
- [K in T]?: React$1.ReactNode;
596
+ [K in T]?: React__default.ReactNode;
596
597
  } & {
597
- others?: React$1.ReactNode[];
598
+ others?: React__default.ReactNode[];
598
599
  };
599
- declare const splitElement: <T extends string>(children: React$1.ReactNode, elementNames: T[]) => SplitElementResult<T>;
600
+ declare const splitElement: <T extends string>(children: React__default.ReactNode, elementNames: T[]) => SplitElementResult<T>;
600
601
 
601
602
  declare function useParseStringToNumber(): (value?: string, strict?: boolean) => number | null;
602
603
 
604
+ type BoundingSize = {
605
+ width: number;
606
+ height: number;
607
+ top: number;
608
+ left: number;
609
+ right: number;
610
+ bottom: number;
611
+ };
612
+ declare function useElementBounding(target?: HTMLElement | Element | null, onResize?: (size: BoundingSize) => void): React$1.RefObject<BoundingSize>;
613
+
614
+ interface Options {
615
+ path: string;
616
+ extension?: string;
617
+ }
618
+ declare function useDynamicSvgImport(iconName: string, options: Options): {
619
+ error: unknown;
620
+ loading: boolean;
621
+ Icon: React__default.FC<React__default.SVGProps<SVGElement>> | undefined;
622
+ };
623
+
603
624
  declare function generateUUID(): string;
604
625
  declare function diffJson(data1: any, data2: any): boolean;
605
626
  declare const mappingUndefinedtoNull: (values: any) => any;
@@ -703,4 +724,4 @@ interface BgsCoreProviderProps {
703
724
  }
704
725
  declare const BgsCoreProvider: ({ children, value: options }: PropsWithChildren<BgsCoreProviderProps>) => react_jsx_runtime.JSX.Element;
705
726
 
706
- export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, type ApiLoadState, type ApiMethod, type ApiMethodStream, type ApiMethodVoid, type ApiResponse, type ApiResponseStream, type BgsCoreProps, BgsCoreProvider, type CacheData, type CacheProps, type CallbackHelper, type CallbackStream, type Children, type ClientCallback, type CombinationType, type CreateElementProps, type DataSource, type DataType, DataTypeEnum, type EncryptedPayload, HttpMethod, type NestedKeyOf, type OptionsCallReturn, type OptionsHelper, type OptionsNumberProps, type PaginationMeta, type PathValue, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, type TWithName, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseHelperProps, type UseScrollTriggerOptions, capitalizeWords, createApiHelper, createElement, createStore, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCrypto, useDebounce, useDelay, useFormatted, useInterval, useKeyPress, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
727
+ export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, 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 CreateElementProps, type DataSource, type DataType, DataTypeEnum, type EncryptedPayload, HttpMethod, type NestedKeyOf, type OptionsCallReturn, type OptionsHelper, type OptionsNumberProps, type PaginationMeta, type PathValue, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, type TWithName, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseHelperProps, type UseScrollTriggerOptions, capitalizeWords, createApiHelper, createElement, createStore, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCrypto, useDebounce, useDelay, useDynamicSvgImport, useElementBounding, useFormatted, useInterval, useKeyPress, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { GenericAbortSignal, AxiosProgressEvent, AxiosResponse, AxiosRequestConfig } from 'axios';
2
2
  import { DurationUnitType } from 'dayjs/plugin/duration';
3
- import React$1, { PropsWithChildren } from 'react';
3
+ import * as React$1 from 'react';
4
+ import React__default, { PropsWithChildren } from 'react';
4
5
  import * as zustand from 'zustand';
5
6
  import dayjs from 'dayjs';
6
7
  import * as react_jsx_runtime from 'react/jsx-runtime';
@@ -499,7 +500,7 @@ interface UseScrollTriggerOptions {
499
500
  disableHysteresis?: boolean;
500
501
  target?: Node | Window | null;
501
502
  threshold?: number;
502
- getTrigger?: (store: ReturnType<typeof React$1.useRef<number | undefined>>, options: {
503
+ getTrigger?: (store: ReturnType<typeof React__default.useRef<number | undefined>>, options: {
503
504
  disableHysteresis?: boolean;
504
505
  threshold?: number;
505
506
  target?: Node | Window | null;
@@ -588,18 +589,38 @@ interface UseApiStoreOptions<T extends AnyApiMethod, U = UseCallReturnType<Infer
588
589
  declare const useApiStore: <T extends AnyApiMethod, U = UseCallReturnType<InferApiRequest<T>, InferApiResponse<T>>>(api: T, options?: UseApiStoreOptions<T, U>) => U;
589
590
 
590
591
  type CreateElementProps<P = unknown> = {
591
- (element: (props: P) => React$1.JSX.Element, elementName: string): React$1.FC<P>;
592
+ (element: (props: P) => React__default.JSX.Element, elementName: string): React__default.FC<P>;
592
593
  };
593
- declare const createElement: <T>(element: (props: T) => React$1.JSX.Element, elementName: string) => React$1.FC<T>;
594
+ declare const createElement: <T>(element: (props: T) => React__default.JSX.Element, elementName: string) => React__default.FC<T>;
594
595
  type SplitElementResult<T extends string> = {
595
- [K in T]?: React$1.ReactNode;
596
+ [K in T]?: React__default.ReactNode;
596
597
  } & {
597
- others?: React$1.ReactNode[];
598
+ others?: React__default.ReactNode[];
598
599
  };
599
- declare const splitElement: <T extends string>(children: React$1.ReactNode, elementNames: T[]) => SplitElementResult<T>;
600
+ declare const splitElement: <T extends string>(children: React__default.ReactNode, elementNames: T[]) => SplitElementResult<T>;
600
601
 
601
602
  declare function useParseStringToNumber(): (value?: string, strict?: boolean) => number | null;
602
603
 
604
+ type BoundingSize = {
605
+ width: number;
606
+ height: number;
607
+ top: number;
608
+ left: number;
609
+ right: number;
610
+ bottom: number;
611
+ };
612
+ declare function useElementBounding(target?: HTMLElement | Element | null, onResize?: (size: BoundingSize) => void): React$1.RefObject<BoundingSize>;
613
+
614
+ interface Options {
615
+ path: string;
616
+ extension?: string;
617
+ }
618
+ declare function useDynamicSvgImport(iconName: string, options: Options): {
619
+ error: unknown;
620
+ loading: boolean;
621
+ Icon: React__default.FC<React__default.SVGProps<SVGElement>> | undefined;
622
+ };
623
+
603
624
  declare function generateUUID(): string;
604
625
  declare function diffJson(data1: any, data2: any): boolean;
605
626
  declare const mappingUndefinedtoNull: (values: any) => any;
@@ -703,4 +724,4 @@ interface BgsCoreProviderProps {
703
724
  }
704
725
  declare const BgsCoreProvider: ({ children, value: options }: PropsWithChildren<BgsCoreProviderProps>) => react_jsx_runtime.JSX.Element;
705
726
 
706
- export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, type ApiLoadState, type ApiMethod, type ApiMethodStream, type ApiMethodVoid, type ApiResponse, type ApiResponseStream, type BgsCoreProps, BgsCoreProvider, type CacheData, type CacheProps, type CallbackHelper, type CallbackStream, type Children, type ClientCallback, type CombinationType, type CreateElementProps, type DataSource, type DataType, DataTypeEnum, type EncryptedPayload, HttpMethod, type NestedKeyOf, type OptionsCallReturn, type OptionsHelper, type OptionsNumberProps, type PaginationMeta, type PathValue, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, type TWithName, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseHelperProps, type UseScrollTriggerOptions, capitalizeWords, createApiHelper, createElement, createStore, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCrypto, useDebounce, useDelay, useFormatted, useInterval, useKeyPress, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
727
+ export { type ApiActionState, type ApiActionStateStream, type ApiDefaultFetch, type ApiDefaultMethod, type ApiDefaultStream, 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 CreateElementProps, type DataSource, type DataType, DataTypeEnum, type EncryptedPayload, HttpMethod, type NestedKeyOf, type OptionsCallReturn, type OptionsHelper, type OptionsNumberProps, type PaginationMeta, type PathValue, type ResponseType, type SelectedNested, type SplitElementResult, type StorePayload, type SupportedFormattedType, type TWithName, type TextTransform, type TimeoutConfig, type UseApiSendProps, type UseApiSendReturnType, type UseApiStreamProps, type UseApiStreamReturn, type UseCallOptionsProps, type UseCallReturnType, type UseHelperProps, type UseScrollTriggerOptions, capitalizeWords, createApiHelper, createElement, createStore, debounce, decrypt, decryptString, defaultState, diffJson, encrypt, encryptString, filterDOMPropsLite, generateCacheKey, generateUUID, getApiActions, getDateRangeLabelFromSorted, getFieldValue, getInitials, getMinMaxDate, getTotalMinutes, isArray, isDirtyRaw, isNotEmpty, isValidNumber, jsonCopy, labelFormatter, mappingData, mappingUndefinedtoNull, moment, objectToQueryString, parseSSEChunk, parseStringToNumber, registerApi, renderChildren, replaceNullStrings, safeUpdate, sorting, splitElement, stableStringify, summary, unregisterApi, useApiLoad, useApiLoadStore, useApiSend, useApiStore, useApiStream, useBgsCore, useCrypto, useDebounce, useDelay, useDynamicSvgImport, useElementBounding, useFormatted, useInterval, useKeyPress, useParseStringToNumber, useScrollTrigger, useStorage, wrapApi };
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- import ee,{createContext,useContext,useEffect,useCallback,useRef,useMemo,useState,useSyncExternalStore}from'react';import M from'dayjs';import Fe from'dayjs/plugin/utc';import Le from'dayjs/plugin/timezone';import Ie from'dayjs/plugin/duration';import He from'dayjs/plugin/advancedFormat';import Be from'dayjs/plugin/localizedFormat';import je from'dayjs/plugin/relativeTime';import _e from'dayjs/plugin/isSameOrBefore';import Ve from'dayjs/plugin/isSameOrAfter';import We from'dayjs/plugin/weekOfYear';import Ye from'dayjs/plugin/customParseFormat';import {jsx}from'react/jsx-runtime';import Ae from'crypto-js/aes';import Se from'crypto-js/pbkdf2';import nt from'crypto-js/enc-utf8';import Z from'crypto-js/enc-base64';import Ce from'crypto-js/lib-typedarrays';import {create}from'zustand';import {useShallow}from'zustand/react/shallow';import bt from'axios';M.extend(Fe);M.extend(Le);M.extend(Ie);M.extend(He);M.extend(Be);M.extend(je);M.extend(_e);M.extend(Ve);M.extend(We);M.extend(Ye);var q=M;function Yt(){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 zt(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var Jt=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function Gt(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 Re={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=Re.snackCase(Re.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function Xt(e,t){return typeof e=="function"?e(t):e}var v=(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},Zt={desc:(e,t)=>(e||(e=[]),e.sort((r,n)=>{if(t){let o=v(r,t)?v(r,t):"",a=v(n,t)?v(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=v(r,t)?v(r,t):"",a=v(n,t)?v(n,t):"";return o>a?1:-1}else return r>n?1:-1}))},Qt=(e,t)=>{Array.isArray(e)||(e=[]);let r=[];return r=e.map(n=>Number(t?v(n,t)||0:n||0)),r.reduce((n,o)=>(n||0)+(o||0),0)||0};function er(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function ze(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 be(e,t){return ze([t??"undefined",e??"undefined"])}function he(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function tr(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var Te=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function ae(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 Je(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&&ae(n,r))return true}return false}function De(e="",t=false,r="."){if(!Je(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var Ge=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)Ge.has(r)&&(t[r]=e[r]);return t}function nr(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function or(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(q).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 sr(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 ar(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 ir=(e=[],t="label",r="value",n)=>Array.isArray(e)?e.map((o,a)=>{if(typeof o!="object"){let i=typeof t=="function"?t(o,a):o,s=typeof r=="function"?r(o,a):o;return {label:i,value:s,index:a,rowData:o}}else {let i=typeof t=="function"?t(o,a):v(o,t,""),s=typeof r=="function"?r(o,a):v(o,r,"");return {label:i,value:typeof s=="boolean"?s:s||"",index:a,...n&&{[n]:v(o,n)},rowData:o}}}):[];function Xe(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(!$(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(Xe(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function ge(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=ge(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=ge(e[t]));return e}var xe=createContext(void 0);function F(){let e=useContext(xe);return e||{}}var tt=({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&&q.locale(o,a??{},i);}})();},[t.localeConfig]),jsx(xe.Provider,{value:r,children:e})};function ie(e,t){let r=Ce.random(16),n=Ce.random(16),o=Se(t,r,{keySize:256/32,iterations:1e3}),a=Ae.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(Z),iv:n.toString(Z),encrypted:a}}function le(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Se(t,Z.parse(r),{keySize:256/32,iterations:1e3}),s=Ae.decrypt(o,a,{iv:Z.parse(n)}).toString(nt);return JSON.parse(s)}function Pe(e,t){return JSON.stringify(ie(e,t))}function Oe(e,t){return le(JSON.parse(e),t)}function Q(){let{passphrase:e}=F();return {passphrase:e,encrypt(t,r){return ie(t,r||e)},decrypt(t,r){return le(t,r||e)},encryptString(t,r){return Pe(t,r||e)},decryptString(t,r){return Oe(t,r||e)}}}var we=()=>{let{encrypt:e,decrypt:t}=Q(),r=useCallback((i,s)=>{try{let p=e(s);localStorage.setItem(i,JSON.stringify(p));}catch(p){console.error("Failed to save to storage:",p);}},[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,p]=useState(()=>{try{let d=localStorage.getItem(i);return d?t(JSON.parse(d)):null}catch(d){return console.error("Failed to parse localStorage value",d),null}});return useEffect(()=>{let d=y=>{if(y.key===i)if(y.newValue)try{p(t(JSON.parse(y.newValue)));}catch(T){console.error("Decrypt error from storage event",T);}else p(null);};return window.addEventListener("storage",d),()=>window.removeEventListener("storage",d)},[i,t]),s},a=useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function it(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 z={loading:false,response:void 0,isCancel:false},J=create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??z,a={...o,...n};it(o,a)||e(i=>({states:{...i.states,[r]:a}}));}}));var ce=new Map,qe=(e,t)=>{ce.set(e,t);},Ue=e=>{ce.delete(e);},Ne=e=>ce.get(e);function pt(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,i=o?void 0:r,s=o?r:n,p=s?.storeName||`${a}`,d=s?.mergeStrategy??"replace",[y,T,R,x]=J(useShallow(b=>{let f=b.states[p]??z;return [f.loading,f.isCancel,f.response,b.updateState]})),{storageKey:O,cache:g,clearPreviousData:E,refetchOnWindowFocus:L}=F(),I=we(),V=useRef(void 0),H=useRef(null),{cacheName:j,cacheKey:B,timeout:te,timeoutUnit:re,persistence:ne,cacheEnabled:h}=useMemo(()=>{let b=O?I.get(O):void 0,f=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,A=be({...i,session:b},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),c=false;typeof g?.enabled=="boolean"&&(c=g.enabled);let S=false;typeof g?.persistence=="boolean"&&(S=g?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(S=s?.cache?.persistence??false);let P=60*5,N="s";return $(g?.timeout)&&(typeof g?.timeout=="number"?(P=g.timeout,N="s"):typeof g?.timeout=="object"&&(P=g?.timeout.value,N=g?.timeout.unit)),$(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?c=s.cache.enabled:c=true,typeof s?.cache?.timeout=="number"?(P=s.cache.timeout,N="s"):typeof s?.cache?.timeout=="object"&&(P=s.cache.timeout.value,N=s.cache.timeout.unit)):c=s.cache),{cacheName:f,cacheKey:A,timeout:P,timeoutUnit:N,persistence:S,cacheEnabled:c}},[s?.cache,i,O,g,a]);useEffect(()=>{let b=JSON.stringify($(V.current)?V.current:""),f=JSON.stringify($(i)?i:""),A=V.current===void 0;(b!==f||A)&&!s?.hold&&((s?.clearPreviousData??E)&&x(p,{response:null}),l(),V.current=i),s?.onChange&&s?.onChange(i,U);},[i,s?.clearPreviousData,E,s?.hold,...s?.trigger||[]]),useEffect(()=>{let b=async()=>{!ne&&j&&B&&(await caches.open(j)).delete(B);};return window.addEventListener("beforeunload",b),()=>{window.removeEventListener("beforeunload",b),H.current?.abort();}},[ne,j,B,p,H]);let l=useCallback(async b=>{let f=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(f=s?.beforeRequest(i)),h&&!b&&!T){s?.onBeforeRequest&&s?.onBeforeRequest(i);let A=await caches.open(j),S=await(await A.match(B))?.json();if(S){let{data:P,expired:N}=S;if(q().isAfter(N))await A.delete(B);else {s?.afterResponse&&P?.data&&(P.data=s?.afterResponse(P.data,f)),s?.logging&&console.log("After request: Using Cache",P),P?.status&&s?.onSuccess?.(P,f),s?.onAfterResponse?.(P,f),x(p,{loading:false,response:P});return}}}if(typeof t=="function"){H.current?.abort();let A=new AbortController;H.current=A,x(p,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let c=o?await t(void 0,{...s,signal:A.signal}):await t(f,void 0,{...s,signal:A.signal});if(c.__rawData=c.data,d==="append"&&$(R.__rawData)&&$(c?.data)){if(Array.isArray(R.__rawData)&&Array.isArray(c?.data)){let S=[...R?.__rawData??[],...c.data??[]];c.data=S,c.__rawData=S;}else if(typeof R.__rawData=="object"&&typeof c.data=="object"){let S={...R.__rawData,...c.data};c.data=S,c.__rawData=S;}}if(s?.afterResponse&&c?.data&&(c.data=s?.afterResponse(c.data,f)),s?.logging&&console.log("After request",c),c.status&&s?.onSuccess?.(c,f),c.status||s?.onError?.(c,f),s?.onAfterResponse?.(c,f),x(p,{loading:false,response:c,isCancel:false}),h&&c.status){let S=q().add(te,re).toISOString(),P={data:c,expired:S},N=await caches.open(j),W=new Response(JSON.stringify(P));await N.put(B,W);}}},[i,t,s,T,j,B,te,re,h,R]);useEffect(()=>{if(s?.refreshInterval){let b=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,f=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,A=setInterval(()=>{l();},q.duration(b,f).asMilliseconds());return ()=>clearInterval(A)}return ()=>{}},[s?.refreshInterval,l]);let u=useRef(null),{enabledRefetch:C,timeoutRefetch:D,timeoutUnitRefetch:w}=useMemo(()=>{let b=s?.refetchOnWindowFocus?.enabled??L?.enabled??false,f=s?.refetchOnWindowFocus?.timeout??L?.timeout,A=typeof f=="number"?f:f?.value??60*5,c=typeof f=="object"?f.unit:"s";return {enabledRefetch:b,timeoutRefetch:A,timeoutUnitRefetch:c}},[s?.refetchOnWindowFocus,L]);useEffect(()=>{if(!C)return;let b=q.duration(D,w).asMilliseconds(),f=()=>{let c=Date.now(),S=u.current;S!==null&&c-S>=b&&l(),u.current=null;},A=()=>{u.current=Date.now();};return window.addEventListener("focus",f),window.addEventListener("blur",A),()=>{window.removeEventListener("focus",f),window.removeEventListener("blur",A);}},[C,D,w,l]);let m=useCallback(()=>{H.current?.abort(),H.current=null,x(p,{loading:false,isCancel:true});},[p,H]),K=useCallback(()=>{x(p,{loading:false,response:null});},[p]),U=useMemo(()=>({...R,loading:y,refresh:l,abort:m,clear:K,response:R,isCancel:T,clone:(b,f)=>pt(t,b,{storeName:`${a}-clone`,...f})}),[R,y,l,m,K,T,t]);return useEffect(()=>(qe(p,U),()=>{Ue(p);}),[U,p]),[R?.data,U]}async function Lr(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var ct=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(ct||{}),ut=(l=>(l.number="number",l.currency="currency",l.percent="percent",l.date="date",l.dateTime="dateTime",l.month="month",l.year="year",l.time="time",l.timestamp="timestamp",l.string="string",l.textarea="textarea",l.code="code",l.password="password",l.boolean="boolean",l.toggle="toggle",l.email="email",l.phone="phone",l.url="url",l.json="json",l.file="file",l.image="image",l.array="array",l.object="object",l.enum="enum",l.user="user",l.department="department",l.status="status",l))(ut||{});var Vr=()=>{let{format:e}=F();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)?mt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?ft(t,n):r==="string"?dt(t,n):t?.toString()}catch{return}}};function ft(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function dt(e,t){if(!$(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=he(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 T=String(e??"").trim().trim();if(ae(T,r))return T}if(e==null||isNaN(Number(e)))return "";let i=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let y=Math.pow(10,n);i=Math[o](i*y)/y;}else i=Math[o](i);else if(typeof n=="number"){let y=Math.pow(10,n);i=Math.trunc(i*y)/y;}let s=0;if(n==="auto"){let y=i.toString(),T=y.indexOf(".");T!==-1&&(s=y.length-T-1);}let p={style:"decimal",useGrouping:true,minimumFractionDigits:n==="auto"?s:n||0,maximumFractionDigits:n==="auto"?s:n||0,minimumIntegerDigits:1};return i.toLocaleString("en-US",p).replace(/\./g,"decSep").replace(/,/g,"thouSep").replace(/decSep/g,r).replace(/thouSep/g,t)}function mt(e,{display:t,value:r}){if(!$(e))return e;let n=q(e,r);return n.isValid()?n.format(t):e}function zr(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 Xr(e,t,r){let[n,o]=useState(false),a=(d,y)=>typeof e=="string"&&d===e||typeof e=="number"&&y===e,i=d=>d!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(d.tagName)||d.hasAttribute("contentEditable")),s=d=>{let{key:y,keyCode:T}=d,R=d.ctrlKey,x=d.altKey,O=d.shiftKey;if(!i(document.activeElement))if(t)if(typeof t=="string")a(y,T)&&(t==="ctrl"&&R||t==="alt"&&x||t==="shift"&&O)&&(d.preventDefault(),r&&d.stopPropagation(),o(!n));else {let g=t.every(E=>E==="ctrl"?R:E==="alt"?x:E==="shift"?O:false);a(y,T)&&g&&(d.preventDefault(),r&&d.stopPropagation(),o(!n));}else a(y,T)&&(d.preventDefault(),r&&d.stopPropagation(),o(!n));},p=({key:d,keyCode:y})=>{a(d,y)&&o(false);};return useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",p),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",p);}),[]),n}var sn=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:p,withCredentials:d,encryptRequest:y,encryptResponse:T,passphrase:R})=>{let{encrypt:x,decrypt:O,passphrase:g}=Q(),E=(h,l,u,C)=>{let D=C?.code==="ERR_CANCELED",w=h?.status===401,m=h?.data;if((typeof u?.encryptResponse=="boolean"?u?.encryptResponse:T)&&m){let c=u?.passphrase?typeof u.passphrase=="boolean"&&u.passphrase?g:u.passphrase:R;try{m=O(m,c);}catch{try{m=O(m,g);}catch{}}}let b={...n({...h,data:m,isCancel:D,isUnauthorization:w},C),isCancel:D,isUnauthorization:w,httpCode:h?.status},f=typeof u?.disabledToastWhenCancel=="boolean"?u?.disabledToastWhenCancel:p,A=s?s(b,u):!w;if((u?.infoSuccess&&b.status||u?.infoError&&!b.status)&&i&&(!D||!f)&&i(b),!A&&(!D||!u?.disabledHandleUnauthorized)){let c=u?.onUnauthorized||a;c&&c(b);}if(l)l(b);else return b},L=(h,l=()=>{})=>bt.create({baseURL:`${e}`,withCredentials:typeof h.withCredentials=="boolean"?h.withCredentials:d})(h).then(l).catch(C=>l(C.response,C)),I=(h,l,u,C,D)=>{let m={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...D},K={"Content-Type":"application/json",...o,...m.headers};if(m.token&&(typeof m.token=="boolean"?t&&(K.Authorization=`Bearer ${t}`):m.token&&(K.Authorization=`Bearer ${m.token}`)),r&&(u=r(u)),(typeof m?.encryptRequest=="boolean"?m?.encryptRequest:y)&&u){let b=D?.passphrase?typeof D.passphrase=="boolean"&&D.passphrase?g:D.passphrase:R;u=x(u,b);}return L({url:l,method:h,data:u,headers:K,responseType:m.responseType,signal:m.signal,withCredentials:m.withCredentials,onUploadProgress:b=>{m?.onUploadProgress&&m?.onUploadProgress(b);}},(b,f)=>E(b,C,m,f))};return {client:L,post:(h,l,u,C)=>I("POST",`${h}`,l,u,C),put:(h,l,u,C)=>I("PUT",`${h}`,l,u,C),patch:(h,l,u,C)=>I("PATCH",`${h}`,l,u,C),delete:(h,l,u)=>I("DELETE",`${h}`,null,l,u),get:(h,l,u)=>I("GET",`${h}`,null,l,u),upload:(h,l,u,C)=>{let D=new FormData;return Object.keys(l).forEach(w=>D.append(w,l[w])),I("POST",`${h}`,D,u,{infoSuccess:false,...C,headers:{"Content-Type":"multipart/form-data",...C?.headers}})},stream:async(h,l,u,C,D)=>{try{let m={...{token:!0,responseType:"json",infoError:!0},...D},K={"Content-Type":"application/json",...o,...m.headers};if(m.token){let k=typeof m.token=="boolean"?t:m.token;k&&(K.Authorization=`Bearer ${k}`);}let U=u;if(r&&(U=r(U)),(typeof m.encryptRequest=="boolean"?m.encryptRequest:y)&&U){let k=m.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?g:m.passphrase:R;U=x(U,k);}let f=await fetch(`${e}${l}`,{method:h,headers:K,credentials:m.withCredentials?"include":"same-origin",signal:m.signal,body:JSON.stringify(U)}),A=f?.status,c=A===401;if(!f.ok){let k=f?.statusText||"Error";try{let X=f.headers.get("content-type")||"",_=await f.clone().text();if(_)if(X.includes("application/json"))try{let se=JSON.parse(_);if((typeof D?.encryptResponse=="boolean"?D?.encryptResponse:T)&&u){let Ke=D?.passphrase?typeof D.passphrase=="boolean"&&D.passphrase?g:D.passphrase:R;try{u=O(se,Ke);}catch{try{u=O(se,g);}catch{}}}k=se?.message||k;}catch{k=_;}else k=_;}catch{}let oe=typeof D?.disabledToastWhenCancel=="boolean"?D?.disabledToastWhenCancel:p,Y={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:c,httpCode:A,isDone:!0};D?.infoError&&i&&!oe&&i(Y),C(Y);return}let S=f.body.getReader(),P=new TextDecoder("utf-8"),N="",W=!1;for(;!W;){let{done:k,value:oe}=await S.read();W=k,N+=P.decode(oe,{stream:!0});let Y=N.split(`
1
+ import ee,{createContext,useContext,useEffect,useCallback,useRef,useMemo,useState,useSyncExternalStore}from'react';import M from'dayjs';import Le from'dayjs/plugin/utc';import Be from'dayjs/plugin/timezone';import He from'dayjs/plugin/duration';import je from'dayjs/plugin/advancedFormat';import Ve from'dayjs/plugin/localizedFormat';import _e from'dayjs/plugin/relativeTime';import ze from'dayjs/plugin/isSameOrBefore';import We from'dayjs/plugin/isSameOrAfter';import Ye from'dayjs/plugin/weekOfYear';import Je from'dayjs/plugin/customParseFormat';import {jsx}from'react/jsx-runtime';import Pe from'crypto-js/aes';import Oe from'crypto-js/pbkdf2';import st from'crypto-js/enc-utf8';import Z from'crypto-js/enc-base64';import Se from'crypto-js/lib-typedarrays';import {create}from'zustand';import {useShallow}from'zustand/react/shallow';import Tt from'axios';M.extend(Le);M.extend(Be);M.extend(He);M.extend(je);M.extend(Ve);M.extend(_e);M.extend(ze);M.extend(We);M.extend(Ye);M.extend(Je);var q=M;function Zt(){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 Qt(e,t){try{return JSON.stringify(e)!==JSON.stringify(t)}catch{return false}}var er=e=>(Object.keys(e).forEach(t=>{e[t]===void 0&&(e[t]=null);}),e);function tr(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 he={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=he.snackCase(he.camelCase(e)),t&&(r=r?.split(" ")?.map(n=>n?.length<=3?n?.toUpperCase():n)?.join(" "));}catch{}return r?.trim()}};function rr(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},nr={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}))},or=(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 sr(e){try{return e&&JSON.parse(JSON.stringify(e))}catch{return e}}function Ge(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 Te(e,t){return Ge([t??"undefined",e??"undefined"])}function xe(e=""){return typeof e!="string"&&(e=""),e.replace(/\b\w/g,t=>t.toUpperCase())}function ar(e,t=0){let r,n=function(...o){clearTimeout(r),r=setTimeout(()=>{e(...o);},t*1e3);};return n.cancel=()=>{clearTimeout(r);},n}var De=e=>{let t=e.match(/^data:\s*(.*)/s);if(t)try{return JSON.parse(t[1])}catch{return null}return null};function ae(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 Xe(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&&ae(n,r))return true}return false}function Ce(e="",t=false,r="."){if(!Xe(e,!t,r))return null;let n=r==="."?e.trim():e.trim().replace(r,"."),o=Number(n);return Number.isNaN(o)?null:o}var Ze=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 ir(e){let t={};for(let r in e)Ze.has(r)&&(t[r]=e[r]);return t}function lr(e,t=2){return e?e.split(" ").map(r=>r.charAt(0).toUpperCase()).slice(0,t).join(""):""}function cr(e=[]){let t=e.filter(Boolean);if(t.length===0)return ["",""];let r=t.map(q).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 pr(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 ur(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 fr=(e=[],t="label",r="value",n)=>Array.isArray(e)?e.map((o,a)=>{if(typeof o!="object"){let i=typeof t=="function"?t(o,a):o,s=typeof r=="function"?r(o,a):o;return {label:i,value:s,index:a,rowData:o}}else {let i=typeof t=="function"?t(o,a):E(o,t,""),s=typeof r=="function"?r(o,a):E(o,r,"");return {label:i,value:typeof s=="boolean"?s:s||"",index:a,...n&&{[n]:E(o,n)},rowData:o}}}):[];function Qe(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(!$(o))continue;Array.isArray(o)?o.forEach(i=>{r.push(`${a}=${encodeURIComponent(i)}`);}):typeof o=="object"&&o!==null?r.push(Qe(o,a)):r.push(`${a}=${encodeURIComponent(o)}`);}return r.join("&")}function be(e){if(e==="null")return null;if(Array.isArray(e))for(let t=0;t<e.length;t++)e[t]=be(e[t]);else if(e&&typeof e=="object")for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(e[t]=be(e[t]));return e}var Ae=createContext(void 0);function I(){let e=useContext(Ae);return e||{}}var nt=({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&&q.locale(o,a??{},i);}})();},[t.localeConfig]),jsx(Ae.Provider,{value:r,children:e})};function ie(e,t){let r=Se.random(16),n=Se.random(16),o=Oe(t,r,{keySize:256/32,iterations:1e3}),a=Pe.encrypt(JSON.stringify(e),o,{iv:n}).toString();return {salt:r.toString(Z),iv:n.toString(Z),encrypted:a}}function le(e,t){let{salt:r,iv:n,encrypted:o}=e,a=Oe(t,Z.parse(r),{keySize:256/32,iterations:1e3}),s=Pe.decrypt(o,a,{iv:Z.parse(n)}).toString(st);return JSON.parse(s)}function we(e,t){return JSON.stringify(ie(e,t))}function qe(e,t){return le(JSON.parse(e),t)}function Q(){let{passphrase:e}=I();return {passphrase:e,encrypt(t,r){return ie(t,r||e)},decrypt(t,r){return le(t,r||e)},encryptString(t,r){return we(t,r||e)},decryptString(t,r){return qe(t,r||e)}}}var Ue=()=>{let{encrypt:e,decrypt:t}=Q(),r=useCallback((i,s)=>{try{let c=e(s);localStorage.setItem(i,JSON.stringify(c));}catch(c){console.error("Failed to save to storage:",c);}},[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,c]=useState(()=>{try{let p=localStorage.getItem(i);return p?t(JSON.parse(p)):null}catch(p){return console.error("Failed to parse localStorage value",p),null}});return useEffect(()=>{let p=y=>{if(y.key===i)if(y.newValue)try{c(t(JSON.parse(y.newValue)));}catch(T){console.error("Decrypt error from storage event",T);}else c(null);};return window.addEventListener("storage",p),()=>window.removeEventListener("storage",p)},[i,t]),s},a=useCallback(i=>{i?localStorage.removeItem(i):localStorage.clear();},[]);return {save:r,get:n,clear:a,useWatchStorage:o}};function ct(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 Y={loading:false,response:void 0,isCancel:false},J=create((e,t)=>({states:{},updateState:(r,n)=>{let o=t().states[r]??Y,a={...o,...n};ct(o,a)||e(i=>({states:{...i.states,[r]:a}}));}}));var pe=new Map,ve=(e,t)=>{pe.set(e,t);},ke=e=>{pe.delete(e);},Ee=e=>pe.get(e);function ut(...e){let[t,r,n]=e,o=t.__isVoid,a=t.__path||t.name,i=o?void 0:r,s=o?r:n,c=s?.storeName||`${a}`,p=s?.mergeStrategy??"replace",[y,T,R,D]=J(useShallow(h=>{let d=h.states[c]??Y;return [d.loading,d.isCancel,d.response,h.updateState]})),{storageKey:O,cache:g,clearPreviousData:N,refetchOnWindowFocus:F}=I(),L=Ue(),_=useRef(void 0),B=useRef(null),{cacheName:j,cacheKey:H,timeout:te,timeoutUnit:re,persistence:ne,cacheEnabled:b}=useMemo(()=>{let h=O?L.get(O):void 0,d=typeof s?.cache=="object"?s?.cache?.cacheName??a:a,A=Te({...i,session:h},typeof s?.cache=="object"?s?.cache?.cacheKey:void 0),u=false;typeof g?.enabled=="boolean"&&(u=g.enabled);let S=false;typeof g?.persistence=="boolean"&&(S=g?.persistence),typeof s?.cache=="object"&&typeof s?.cache?.persistence=="boolean"&&(S=s?.cache?.persistence??false);let P=60*5,v="s";return $(g?.timeout)&&(typeof g?.timeout=="number"?(P=g.timeout,v="s"):typeof g?.timeout=="object"&&(P=g?.timeout.value,v=g?.timeout.unit)),$(s?.cache)&&(typeof s?.cache!="boolean"?(typeof s?.cache?.enabled=="boolean"?u=s.cache.enabled:u=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)):u=s.cache),{cacheName:d,cacheKey:A,timeout:P,timeoutUnit:v,persistence:S,cacheEnabled:u}},[s?.cache,i,O,g,a]);useEffect(()=>{let h=JSON.stringify($(_.current)?_.current:""),d=JSON.stringify($(i)?i:""),A=_.current===void 0;(h!==d||A)&&!s?.hold&&((s?.clearPreviousData??N)&&D(c,{response:null}),l(),_.current=i),s?.onChange&&s?.onChange(i,U);},[i,s?.clearPreviousData,N,s?.hold,...s?.trigger||[]]),useEffect(()=>{let h=async()=>{!ne&&j&&H&&(await caches.open(j)).delete(H);};return window.addEventListener("beforeunload",h),()=>{window.removeEventListener("beforeunload",h),B.current?.abort();}},[ne,j,H,c,B]);let l=useCallback(async h=>{let d=i;if(s?.hold&&s?.logging&&console.log("Hold active"),s?.beforeRequest&&(d=s?.beforeRequest(i)),b&&!h&&!T){s?.onBeforeRequest&&s?.onBeforeRequest(i);let A=await caches.open(j),S=await(await A.match(H))?.json();if(S){let{data:P,expired:v}=S;if(q().isAfter(v))await A.delete(H);else {s?.afterResponse&&P?.data&&(P.data=s?.afterResponse(P.data,d)),s?.logging&&console.log("After request: Using Cache",P),P?.status&&s?.onSuccess?.(P,d),s?.onAfterResponse?.(P,d),D(c,{loading:false,response:P});return}}}if(typeof t=="function"){B.current?.abort();let A=new AbortController;B.current=A,D(c,{loading:true}),s?.logging&&console.log("Before request",i),s?.onBeforeRequest&&s?.onBeforeRequest(i);let u=o?await t(void 0,{...s,signal:A.signal}):await t(d,void 0,{...s,signal:A.signal});if(u.__rawData=u.data,p==="append"&&$(R.__rawData)&&$(u?.data)){if(Array.isArray(R.__rawData)&&Array.isArray(u?.data)){let S=[...R?.__rawData??[],...u.data??[]];u.data=S,u.__rawData=S;}else if(typeof R.__rawData=="object"&&typeof u.data=="object"){let S={...R.__rawData,...u.data};u.data=S,u.__rawData=S;}}if(s?.afterResponse&&u?.data&&(u.data=s?.afterResponse(u.data,d)),s?.logging&&console.log("After request",u),u.status&&s?.onSuccess?.(u,d),u.status||s?.onError?.(u,d),s?.onAfterResponse?.(u,d),D(c,{loading:false,response:u,isCancel:false}),b&&u.status){let S=q().add(te,re).toISOString(),P={data:u,expired:S},v=await caches.open(j),z=new Response(JSON.stringify(P));await v.put(H,z);}}},[i,t,s,T,j,H,te,re,b,R]);useEffect(()=>{if(s?.refreshInterval){let h=typeof s.refreshInterval=="number"?s.refreshInterval:s.refreshInterval.value,d=typeof s.refreshInterval=="number"?"s":s.refreshInterval.unit,A=setInterval(()=>{l();},q.duration(h,d).asMilliseconds());return ()=>clearInterval(A)}return ()=>{}},[s?.refreshInterval,l]);let f=useRef(null),{enabledRefetch:C,timeoutRefetch:x,timeoutUnitRefetch:w}=useMemo(()=>{let h=s?.refetchOnWindowFocus?.enabled??F?.enabled??false,d=s?.refetchOnWindowFocus?.timeout??F?.timeout,A=typeof d=="number"?d:d?.value??60*5,u=typeof d=="object"?d.unit:"s";return {enabledRefetch:h,timeoutRefetch:A,timeoutUnitRefetch:u}},[s?.refetchOnWindowFocus,F]);useEffect(()=>{if(!C)return;let h=q.duration(x,w).asMilliseconds(),d=()=>{let u=Date.now(),S=f.current;S!==null&&u-S>=h&&l(),f.current=null;},A=()=>{f.current=Date.now();};return window.addEventListener("focus",d),window.addEventListener("blur",A),()=>{window.removeEventListener("focus",d),window.removeEventListener("blur",A);}},[C,x,w,l]);let m=useCallback(()=>{B.current?.abort(),B.current=null,D(c,{loading:false,isCancel:true});},[c,B]),K=useCallback(()=>{D(c,{loading:false,response:null});},[c]),U=useMemo(()=>({...R,loading:y,refresh:l,abort:m,clear:K,response:R,isCancel:T,clone:(h,d)=>ut(t,h,{storeName:`${a}-clone`,...d})}),[R,y,l,m,K,T,t]);return useEffect(()=>(ve(c,U),()=>{ke(c);}),[U,c]),[R?.data,U]}async function Vr(e,t=()=>{}){let r=e*1e3;return new Promise(n=>{setInterval(()=>{t();},1e3);setTimeout(async()=>{await t(),n(true);},r);})}var ft=(a=>(a.POST="POST",a.PUT="PUT",a.PATCH="PATCH",a.DELETE="DELETE",a.GET="GET",a))(ft||{}),dt=(l=>(l.number="number",l.currency="currency",l.percent="percent",l.date="date",l.dateTime="dateTime",l.month="month",l.year="year",l.time="time",l.timestamp="timestamp",l.string="string",l.textarea="textarea",l.code="code",l.password="password",l.boolean="boolean",l.toggle="toggle",l.email="email",l.phone="phone",l.url="url",l.json="json",l.file="file",l.image="image",l.array="array",l.object="object",l.enum="enum",l.user="user",l.department="department",l.status="status",l))(dt||{});var Gr=()=>{let{format:e}=I();return (t,r,n)=>{try{return r==="number"?Ne(t,{thouSep:e.number.thouSep,decDigits:e.number.decDigits,decSep:e.number.decSep,...n}):["date","dateTime","month","year","time"].some(o=>o===r)?Rt(t,{display:e[r]?.display,value:e[r]?.value,...n}):r==="boolean"?mt(t,n):r==="string"?yt(t,n):t?.toString()}catch{return}}};function mt(e,t){let r=typeof e=="string"?e==="true":!!e,n=t?.trueLabel??"Yes",o=t?.falseLabel??"No";return r?n:o}function yt(e,t){if(!$(e))return "";let r=String(e);switch(t?.textTransform){case "capitalize":r=xe(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}Ne(10,{thouSep:",",decSep:".",decDigits:2});function Ne(e,{thouSep:t,decSep:r,decDigits:n,method:o,dirty:a}){if(a){let T=String(e??"").trim().trim();if(ae(T,r))return T}if(e==null||isNaN(Number(e)))return "";let i=typeof e=="string"?parseFloat(e):e;if(o)if(typeof n=="number"){let y=Math.pow(10,n);i=Math[o](i*y)/y;}else i=Math[o](i);else if(typeof n=="number"){let y=Math.pow(10,n);i=Math.trunc(i*y)/y;}let s=0;if(n==="auto"){let y=i.toString(),T=y.indexOf(".");T!==-1&&(s=y.length-T-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,t)}function Rt(e,{display:t,value:r}){if(!$(e))return e;let n=q(e,r);return n.isValid()?n.format(t):e}function Qr(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 rn(e,t,r){let[n,o]=useState(false),a=(p,y)=>typeof e=="string"&&p===e||typeof e=="number"&&y===e,i=p=>p!==null&&(["INPUT","TEXTAREA","SELECT","BUTTON"].includes(p.tagName)||p.hasAttribute("contentEditable")),s=p=>{let{key:y,keyCode:T}=p,R=p.ctrlKey,D=p.altKey,O=p.shiftKey;if(!i(document.activeElement))if(t)if(typeof t=="string")a(y,T)&&(t==="ctrl"&&R||t==="alt"&&D||t==="shift"&&O)&&(p.preventDefault(),r&&p.stopPropagation(),o(!n));else {let g=t.every(N=>N==="ctrl"?R:N==="alt"?D:N==="shift"?O:false);a(y,T)&&g&&(p.preventDefault(),r&&p.stopPropagation(),o(!n));}else a(y,T)&&(p.preventDefault(),r&&p.stopPropagation(),o(!n));},c=({key:p,keyCode:y})=>{a(p,y)&&o(false);};return useEffect(()=>(window.addEventListener("keydown",s),window.addEventListener("keyup",c),()=>{window.removeEventListener("keydown",s),window.removeEventListener("keyup",c);}),[]),n}var un=({url:e,token:t,beforeRequest:r,onCallback:n,headers:o,onUnauthorized:a,handleToast:i,handleAuthorization:s,disabledToastWhenCancel:c,withCredentials:p,encryptRequest:y,encryptResponse:T,passphrase:R})=>{let{encrypt:D,decrypt:O,passphrase:g}=Q(),N=(b,l,f,C)=>{let x=C?.code==="ERR_CANCELED",w=b?.status===401,m=b?.data;if((typeof f?.encryptResponse=="boolean"?f?.encryptResponse:T)&&m){let u=f?.passphrase?typeof f.passphrase=="boolean"&&f.passphrase?g:f.passphrase:R;try{m=O(m,u);}catch{try{m=O(m,g);}catch{}}}let h={...n({...b,data:m,isCancel:x,isUnauthorization:w},C),isCancel:x,isUnauthorization:w,httpCode:b?.status},d=typeof f?.disabledToastWhenCancel=="boolean"?f?.disabledToastWhenCancel:c,A=s?s(h,f):!w;if((f?.infoSuccess&&h.status||f?.infoError&&!h.status)&&i&&(!x||!d)&&i(h),!A&&(!x||!f?.disabledHandleUnauthorized)){let u=f?.onUnauthorized||a;u&&u(h);}if(l)l(h);else return h},F=(b,l=()=>{})=>Tt.create({baseURL:`${e}`,withCredentials:typeof b.withCredentials=="boolean"?b.withCredentials:p})(b).then(l).catch(C=>l(C.response,C)),L=(b,l,f,C,x)=>{let m={...{token:true,infoError:true,infoSuccess:true,responseType:"json"},...x},K={"Content-Type":"application/json",...o,...m.headers};if(m.token&&(typeof m.token=="boolean"?t&&(K.Authorization=`Bearer ${t}`):m.token&&(K.Authorization=`Bearer ${m.token}`)),r&&(f=r(f)),(typeof m?.encryptRequest=="boolean"?m?.encryptRequest:y)&&f){let h=x?.passphrase?typeof x.passphrase=="boolean"&&x.passphrase?g:x.passphrase:R;f=D(f,h);}return F({url:l,method:b,data:f,headers:K,responseType:m.responseType,signal:m.signal,withCredentials:m.withCredentials,onUploadProgress:h=>{m?.onUploadProgress&&m?.onUploadProgress(h);}},(h,d)=>N(h,C,m,d))};return {client:F,post:(b,l,f,C)=>L("POST",`${b}`,l,f,C),put:(b,l,f,C)=>L("PUT",`${b}`,l,f,C),patch:(b,l,f,C)=>L("PATCH",`${b}`,l,f,C),delete:(b,l,f)=>L("DELETE",`${b}`,null,l,f),get:(b,l,f)=>L("GET",`${b}`,null,l,f),upload:(b,l,f,C)=>{let x=new FormData;return Object.keys(l).forEach(w=>x.append(w,l[w])),L("POST",`${b}`,x,f,{infoSuccess:false,...C,headers:{"Content-Type":"multipart/form-data",...C?.headers}})},stream:async(b,l,f,C,x)=>{try{let m={...{token:!0,responseType:"json",infoError:!0},...x},K={"Content-Type":"application/json",...o,...m.headers};if(m.token){let k=typeof m.token=="boolean"?t:m.token;k&&(K.Authorization=`Bearer ${k}`);}let U=f;if(r&&(U=r(U)),(typeof m.encryptRequest=="boolean"?m.encryptRequest:y)&&U){let k=m.passphrase?typeof m.passphrase=="boolean"&&m.passphrase?g:m.passphrase:R;U=D(U,k);}let d=await fetch(`${e}${l}`,{method:b,headers:K,credentials:m.withCredentials?"include":"same-origin",signal:m.signal,body:JSON.stringify(U)}),A=d?.status,u=A===401;if(!d.ok){let k=d?.statusText||"Error";try{let X=d.headers.get("content-type")||"",V=await d.clone().text();if(V)if(X.includes("application/json"))try{let se=JSON.parse(V);if((typeof x?.encryptResponse=="boolean"?x?.encryptResponse:T)&&f){let Fe=x?.passphrase?typeof x.passphrase=="boolean"&&x.passphrase?g:x.passphrase:R;try{f=O(se,Fe);}catch{try{f=O(se,g);}catch{}}}k=se?.message||k;}catch{k=V;}else k=V;}catch{}let oe=typeof x?.disabledToastWhenCancel=="boolean"?x?.disabledToastWhenCancel:c,W={status:!1,data:void 0,message:k,isCancel:!1,isUnauthorization:u,httpCode:A,isDone:!0};x?.infoError&&i&&!oe&&i(W),C(W);return}let S=d.body.getReader(),P=new TextDecoder("utf-8"),v="",z=!1;for(;!z;){let{done:k,value:oe}=await S.read();z=k,v+=P.decode(oe,{stream:!0});let W=v.split(`
2
2
 
3
- `);N=Y.pop();for(let X of Y)if(X.startsWith("data:"))try{let _=Te(X);C({status:!0,data:_,message:"",isCancel:!1,isUnauthorization:c,httpCode:A,isDone:!1});}catch{}}C({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:c,httpCode:A,isDone:!0});}catch(w){let m=w?.name==="AbortError";C({status:false,data:void 0,message:w instanceof Error?w.message:"Internal Server Error",isCancel:m,isUnauthorization:false,httpCode:400,isDone:true});}}}};function pn(e,t){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState(0),p=useRef(null);return useEffect(()=>{if(t?.abortOnUnmount)return ()=>{p.current?.abort();}},[]),[async R=>{p.current?.abort();let x=new AbortController;p.current=x,n(true),t?.beforeRequest&&(R=t?.beforeRequest(R)),t?.logging&&console.log("Before request",R),t?.onBeforeRequest&&t?.onBeforeRequest(R);let O={...t,signal:x.signal,onUploadProgress:E=>{let L=Math.round(E.loaded*100/(E.total||1));s(L);}},g=e.__isVoid?await e(void 0,O):await e(R,void 0,O);t?.logging&&console.log("After response",g),a(g),n(false),s(0),t?.afterResponse&&g?.data&&(g.data=t?.afterResponse(g.data,R)),g.status&&t?.onSuccess&&t?.onSuccess(g,R),!g.status&&t?.onError&&t?.onError(g,R),t?.onAfterResponse?.(g,R);},{...o,loading:r,abort:()=>{p.current?.abort(),p.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function Dt(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 xt=typeof window<"u"?window:null;function fn(e={}){let{getTrigger:t=Dt,target:r=xt,disableHysteresis:n=false,threshold:o=100}=e,a=ee.useRef(0),[i,s]=ee.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return ee.useEffect(()=>{let p=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(p(),r)return r.addEventListener("scroll",p,{passive:true}),()=>{r.removeEventListener("scroll",p);}},[r,t,n,o]),i}function yn(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 xn=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:i,clear:s,clone:p}=Ne(n)||{},d=O=>{let g=O.states[n]??z;return {loading:g.loading,isCancel:g.isCancel,response:g.response}},{loading:y,isCancel:T,response:R}=o?J(useShallow(d)):J(d),x=useMemo(()=>[R?.data,{...R,loading:y,isCancel:T,refresh:a,abort:i,clear:s,clone:p}],[R,y,T,a,i,s,p]);return t?.selector?t.selector(x):x};var Sn=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},Ee=(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&&Ee(o.props.children,t))&&(r=true);}}),r},Pn=(e,t)=>{let r={others:[]},n=o=>{ee.Children.forEach(o,a=>{if(ee.isValidElement(a)){let i=a.type.displayName,s=a,p=s.props?.children;t.includes(i)?r[i]=a:p&&Ee(p,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function Un(){let{format:e}=F();return (t="",r=false)=>De(t,r,e.number.decSep)}function vn(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(p=>p());}function i(s){let p=useRef(s?s(t):t);return useSyncExternalStore(o,()=>{let d=s?s(t):t,y=p.current;return Object.is(y,d)||(p.current=d),p.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function qt(e,t=[]){let r={};for(let n in e){let o=e[n];if(typeof o=="function"){let a=o.bind(null);a.__path=[...t,n].join("."),a.__isVoid=o.length===2,r[n]=a;}else typeof o=="object"&&o!==null?r[n]=qt(o,[...t,n]):r[n]=o;}return r}function Kn(e,t){let[r,n]=useState(false),[o,a]=useState([]),i=useRef([]),s=useRef(null);useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let p=async T=>{s.current?.abort();let R=new AbortController;s.current=R,n(true),a([]),i.current=[],e(T,x=>{x.isDone||(i.current.push(x),a([...i.current])),(x.isDone||!x.status)&&(n(false),t?.onDone&&t?.onDone([...i.current])),x.status?t?.onStream&&t?.onStream(x):t?.onError&&t?.onError(x);},{signal:R.signal});},d=()=>{s.current?.abort(),s.current=null,n(false);},y=()=>{n(false),a([]),i.current=[];};return [o.map(T=>T.data),p,{loading:r,abort:d,reset:y,response:o}]}export{tt as BgsCoreProvider,ut as DataTypeEnum,ct as HttpMethod,he as capitalizeWords,sn as createApiHelper,Sn as createElement,vn as createStore,tr as debounce,le as decrypt,Oe as decryptString,z as defaultState,zt as diffJson,ie as encrypt,Pe as encryptString,rr as filterDOMPropsLite,be as generateCacheKey,Yt as generateUUID,Ne as getApiActions,sr as getDateRangeLabelFromSorted,v as getFieldValue,nr as getInitials,or as getMinMaxDate,ar as getTotalMinutes,Gt as isArray,ae as isDirtyRaw,$ as isNotEmpty,Je as isValidNumber,er as jsonCopy,Re as labelFormatter,ir as mappingData,Jt as mappingUndefinedtoNull,q as moment,Xe as objectToQueryString,Te as parseSSEChunk,De as parseStringToNumber,qe as registerApi,Xt as renderChildren,ge as replaceNullStrings,it as safeUpdate,Zt as sorting,Pn as splitElement,ze as stableStringify,Qt as summary,Ue as unregisterApi,pt as useApiLoad,J as useApiLoadStore,pn as useApiSend,xn as useApiStore,Kn as useApiStream,F as useBgsCore,Q as useCrypto,yn as useDebounce,Lr as useDelay,Vr as useFormatted,zr as useInterval,Xr as useKeyPress,Un as useParseStringToNumber,fn as useScrollTrigger,we as useStorage,qt as wrapApi};
3
+ `);v=W.pop();for(let X of W)if(X.startsWith("data:"))try{let V=De(X);C({status:!0,data:V,message:"",isCancel:!1,isUnauthorization:u,httpCode:A,isDone:!1});}catch{}}C({status:!0,data:void 0,message:"",isCancel:!1,isUnauthorization:u,httpCode:A,isDone:!0});}catch(w){let m=w?.name==="AbortError";C({status:false,data:void 0,message:w instanceof Error?w.message:"Internal Server Error",isCancel:m,isUnauthorization:false,httpCode:400,isDone:true});}}}};function mn(e,t){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState(0),c=useRef(null);return useEffect(()=>{if(t?.abortOnUnmount)return ()=>{c.current?.abort();}},[]),[async R=>{c.current?.abort();let D=new AbortController;c.current=D,n(true),t?.beforeRequest&&(R=t?.beforeRequest(R)),t?.logging&&console.log("Before request",R),t?.onBeforeRequest&&t?.onBeforeRequest(R);let O={...t,signal:D.signal,onUploadProgress:N=>{let F=Math.round(N.loaded*100/(N.total||1));s(F);}},g=e.__isVoid?await e(void 0,O):await e(R,void 0,O);t?.logging&&console.log("After response",g),a(g),n(false),s(0),t?.afterResponse&&g?.data&&(g.data=t?.afterResponse(g.data,R)),g.status&&t?.onSuccess&&t?.onSuccess(g,R),!g.status&&t?.onError&&t?.onError(g,R),t?.onAfterResponse?.(g,R);},{...o,loading:r,abort:()=>{c.current?.abort(),c.current=null,n(false),s(0);},progress:i,reset:()=>{n(false),s(0),a(null);}}]}function Ct(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 At=typeof window<"u"?window:null;function gn(e={}){let{getTrigger:t=Ct,target:r=At,disableHysteresis:n=false,threshold:o=100}=e,a=ee.useRef(0),[i,s]=ee.useState(()=>t(a,{disableHysteresis:n,threshold:o,target:r}));return ee.useEffect(()=>{let c=()=>{s(t(a,{disableHysteresis:n,threshold:o,target:r}));};if(c(),r)return r.addEventListener("scroll",c,{passive:true}),()=>{r.removeEventListener("scroll",c);}},[r,t,n,o]),i}function Tn(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 On=(e,t)=>{let r=e.__path||e.name,n=t?.storeName||`${r}`,o=t?.shallow??true,{refresh:a,abort:i,clear:s,clone:c}=Ee(n)||{},p=O=>{let g=O.states[n]??Y;return {loading:g.loading,isCancel:g.isCancel,response:g.response}},{loading:y,isCancel:T,response:R}=o?J(useShallow(p)):J(p),D=useMemo(()=>[R?.data,{...R,loading:y,isCancel:T,refresh:a,abort:i,clear:s,clone:c}],[R,y,T,a,i,s,c]);return t?.selector?t.selector(D):D};var Un=(e,t)=>{let r=n=>e(n);return r.displayName=t,r},$e=(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&&$e(o.props.children,t))&&(r=true);}}),r},vn=(e,t)=>{let r={others:[]},n=o=>{ee.Children.forEach(o,a=>{if(ee.isValidElement(a)){let i=a.type.displayName,s=a,c=s.props?.children;t.includes(i)?r[i]=a:c&&$e(c,t)?n(s.props.children):r.others.push(a);}else r.others.push(a);});};return n(e),r};function Mn(){let{format:e}=I();return (t="",r=false)=>Ce(t,r,e.number.decSep)}function In(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 ge={};function Hn(e,t){let[r,n]=useState(false),[o,a]=useState(),[i,s]=useState();return useEffect(()=>{if(!e)return;if(ge[e]){s(()=>ge[e]);return}n(true),(async()=>{try{let p=await import(`${t.path}${e}${t.extension??".svg?react"}`);ge[e]=p.default,s(()=>p.default);}catch(p){a(p),console.error(p);}finally{n(false);}})();},[e,t.path,t.extension]),{error:o,loading:r,Icon:i}}function _n(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(c=>c());}function i(s){let c=useRef(s?s(t):t);return useSyncExternalStore(o,()=>{let p=s?s(t):t,y=c.current;return Object.is(y,p)||(c.current=p),c.current},()=>s?s(t):t)}return {getSnapshot:n,subscribe:o,setState:a,useStore:i}}function Nt(e,t=[]){let r={};for(let n in e){let o=e[n];if(typeof o=="function"){let a=o.bind(null);a.__path=[...t,n].join("."),a.__isVoid=o.length===2,r[n]=a;}else typeof o=="object"&&o!==null?r[n]=Nt(o,[...t,n]):r[n]=o;}return r}function Jn(e,t){let[r,n]=useState(false),[o,a]=useState([]),i=useRef([]),s=useRef(null);useEffect(()=>{if(t?.abortOnUnmount)return ()=>{s.current?.abort();}},[]);let c=async T=>{s.current?.abort();let R=new AbortController;s.current=R,n(true),a([]),i.current=[],e(T,D=>{D.isDone||(i.current.push(D),a([...i.current])),(D.isDone||!D.status)&&(n(false),t?.onDone&&t?.onDone([...i.current])),D.status?t?.onStream&&t?.onStream(D):t?.onError&&t?.onError(D);},{signal:R.signal});},p=()=>{s.current?.abort(),s.current=null,n(false);},y=()=>{n(false),a([]),i.current=[];};return [o.map(T=>T.data),c,{loading:r,abort:p,reset:y,response:o}]}export{nt as BgsCoreProvider,dt as DataTypeEnum,ft as HttpMethod,xe as capitalizeWords,un as createApiHelper,Un as createElement,_n as createStore,ar as debounce,le as decrypt,qe as decryptString,Y as defaultState,Qt as diffJson,ie as encrypt,we as encryptString,ir as filterDOMPropsLite,Te as generateCacheKey,Zt as generateUUID,Ee as getApiActions,pr as getDateRangeLabelFromSorted,E as getFieldValue,lr as getInitials,cr as getMinMaxDate,ur as getTotalMinutes,tr as isArray,ae as isDirtyRaw,$ as isNotEmpty,Xe as isValidNumber,sr as jsonCopy,he as labelFormatter,fr as mappingData,er as mappingUndefinedtoNull,q as moment,Qe as objectToQueryString,De as parseSSEChunk,Ce as parseStringToNumber,ve as registerApi,rr as renderChildren,be as replaceNullStrings,ct as safeUpdate,nr as sorting,vn as splitElement,Ge as stableStringify,or as summary,ke as unregisterApi,ut as useApiLoad,J as useApiLoadStore,mn as useApiSend,On as useApiStore,Jn as useApiStream,I as useBgsCore,Q as useCrypto,Tn as useDebounce,Vr as useDelay,Hn as useDynamicSvgImport,In as useElementBounding,Gr as useFormatted,Qr as useInterval,rn as useKeyPress,Mn as useParseStringToNumber,gn as useScrollTrigger,Ue as useStorage,Nt as wrapApi};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bgscore/react-core",
3
- "version": "1.0.10",
3
+ "version": "1.0.11",
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",