hfs 3.0.0 → 3.0.1

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.
@@ -1,4 +1,4 @@
1
- var dx=Object.defineProperty,px=Object.defineProperties;var fx=Object.getOwnPropertyDescriptors;var rf=Object.getOwnPropertySymbols;var Pm=Object.prototype.hasOwnProperty,Rm=Object.prototype.propertyIsEnumerable;var ou=(d,m)=>(m=Symbol[d])?m:Symbol.for("Symbol."+d),mx=d=>{throw TypeError(d)},oo=Math.pow,im=(d,m,g)=>m in d?dx(d,m,{enumerable:!0,configurable:!0,writable:!0,value:g}):d[m]=g,Fe=(d,m)=>{for(var g in m||(m={}))Pm.call(m,g)&&im(d,g,m[g]);if(rf)for(var g of rf(m))Rm.call(m,g)&&im(d,g,m[g]);return d},$t=(d,m)=>px(d,fx(m));var $m=d=>typeof d=="symbol"?d:d+"",Vt=(d,m)=>{var g={};for(var x in d)Pm.call(d,x)&&m.indexOf(x)<0&&(g[x]=d[x]);if(d!=null&&rf)for(var x of rf(d))m.indexOf(x)<0&&Rm.call(d,x)&&(g[x]=d[x]);return g};var Xo=(d,m,g)=>im(d,typeof m!="symbol"?m+"":m,g);var vt=(d,m,g)=>new Promise((x,b)=>{var E=C=>{try{S(g.next(C))}catch(T){b(T)}},v=C=>{try{S(g.throw(C))}catch(T){b(T)}},S=C=>C.done?x(C.value):Promise.resolve(C.value).then(E,v);S((g=g.apply(d,m)).next())}),su=function(d,m){this[0]=d,this[1]=m},Im=(d,m,g)=>{var x=(v,S,C,T)=>{try{var R=g[v](S),k=(S=R.value)instanceof su,L=R.done;Promise.resolve(k?S[0]:S).then(D=>k?x(v==="return"?v:"next",S[1]?{done:D.done,value:D.value}:D,C,T):C({value:D,done:L})).catch(D=>x("throw",D,C,T))}catch(D){T(D)}},b=v=>E[v]=S=>new Promise((C,T)=>x(v,S,C,T)),E={};return g=g.apply(d,m),E[ou("asyncIterator")]=()=>E,b("next"),b("throw"),b("return"),E},bt=d=>{var m=d[ou("asyncIterator")],g=!1,x,b={};return m==null?(m=d[ou("iterator")](),x=E=>b[E]=v=>m[E](v)):(m=m.call(d),x=E=>b[E]=v=>{if(g){if(g=!1,E==="throw")throw v;return v}return g=!0,{done:!1,value:new su(new Promise(S=>{var C=m[E](v);C instanceof Object||mx("Object expected"),S(C)}),1)}}),b[ou("iterator")]=()=>b,x("next"),"throw"in m?x("throw"):b.throw=E=>{throw E},"return"in m&&x("return"),b},lm=(d,m,g)=>(m=d[ou("asyncIterator")])?m.call(d):(d=d[ou("iterator")](),m={},g=(x,b)=>(b=d[x])&&(m[x]=E=>new Promise((v,S,C)=>(E=b.call(d,E),C=E.done,Promise.resolve(E.value).then(T=>v({value:T,done:C}),S)))),g("next"),g("return"),m);function _mergeNamespaces(d,m){for(var g=0;g<m.length;g++){const x=m[g];if(typeof x!="string"&&!Array.isArray(x)){for(const b in x)if(b!=="default"&&!(b in d)){const E=Object.getOwnPropertyDescriptor(x,b);E&&Object.defineProperty(d,b,E.get?E:{enumerable:!0,get:()=>x[b]})}}}return Object.freeze(Object.defineProperty(d,Symbol.toStringTag,{value:"Module"}))}const thisModule=Object.freeze(Object.defineProperty({__proto__:null,get ADMIN_URI(){return ADMIN_URI},get ALLOW_SESSION_IP_CHANGE(){return ALLOW_SESSION_IP_CHANGE},get API_URI(){return API_URI},get AriaOnly(){return AriaOnly},get CFG(){return CFG},get DAY(){return DAY},get Dialogs(){return Dialogs},get EMBEDDED_LANGUAGE(){return EMBEDDED_LANGUAGE},get ErrorMsg(){return ErrorMsg},get FRONTEND_OPTIONS(){return FRONTEND_OPTIONS},get FRONTEND_URI(){return FRONTEND_URI},get HFS_REPO(){return HFS_REPO},get HIDE_IN_TESTS(){return HIDE_IN_TESTS},get HOUR(){return HOUR},get HTTP_BAD_REQUEST(){return HTTP_BAD_REQUEST},get HTTP_CONFLICT(){return HTTP_CONFLICT},get HTTP_FAILED_DEPENDENCY(){return HTTP_FAILED_DEPENDENCY},get HTTP_FOOL(){return HTTP_FOOL},get HTTP_FORBIDDEN(){return HTTP_FORBIDDEN},get HTTP_INSUFFICIENT_STORAGE(){return HTTP_INSUFFICIENT_STORAGE},get HTTP_MESSAGES(){return HTTP_MESSAGES},get HTTP_METHOD_NOT_ALLOWED(){return HTTP_METHOD_NOT_ALLOWED},get HTTP_MOVED_PERMANENTLY(){return HTTP_MOVED_PERMANENTLY},get HTTP_NOT_ACCEPTABLE(){return HTTP_NOT_ACCEPTABLE},get HTTP_NOT_FOUND(){return HTTP_NOT_FOUND},get HTTP_NOT_MODIFIED(){return HTTP_NOT_MODIFIED},get HTTP_NO_CONTENT(){return HTTP_NO_CONTENT},get HTTP_OK(){return HTTP_OK},get HTTP_PARTIAL_CONTENT(){return HTTP_PARTIAL_CONTENT},get HTTP_PAYLOAD_TOO_LARGE(){return HTTP_PAYLOAD_TOO_LARGE},get HTTP_PRECONDITION_FAILED(){return HTTP_PRECONDITION_FAILED},get HTTP_RANGE_NOT_SATISFIABLE(){return HTTP_RANGE_NOT_SATISFIABLE},get HTTP_SERVER_ERROR(){return HTTP_SERVER_ERROR},get HTTP_SERVICE_UNAVAILABLE(){return HTTP_SERVICE_UNAVAILABLE},get HTTP_TEMPORARY_REDIRECT(){return HTTP_TEMPORARY_REDIRECT},get HTTP_TOO_MANY_REQUESTS(){return HTTP_TOO_MANY_REQUESTS},get HTTP_UNAUTHORIZED(){return HTTP_UNAUTHORIZED},get Html(){return Html},get ICONS_URI(){return ICONS_URI},get IMAGE_FILEMASK(){return IMAGE_FILEMASK},get KeepInScreen(){return KeepInScreen},get LIST(){return LIST},get MAX_TILE_SIZE(){return MAX_TILE_SIZE},get MD_TAGS(){return MD_TAGS},get MINUTE(){return MINUTE},get MTIME_CHECK(){return MTIME_CHECK},get NBSP(){return NBSP},get PERM_KEYS(){return PERM_KEYS},get PLUGINS_PUB_URI(){return PLUGINS_PUB_URI},get PLUGIN_CUSTOM_REST_PREFIX(){return PLUGIN_CUSTOM_REST_PREFIX},get PORT_DISABLED(){return PORT_DISABLED},get PREVIOUS_TAG(){return PREVIOUS_TAG},get REPO_URL(){return REPO_URL},get SORT_BY_OPTIONS(){return SORT_BY_OPTIONS},get SPECIAL_URI(){return SPECIAL_URI},get THEME_OPTIONS(){return THEME_OPTIONS},get UPLOAD_TEMP_HASH(){return UPLOAD_TEMP_HASH},get WEBSITE(){return WEBSITE},get WHO_ANYONE(){return WHO_ANYONE},get WHO_ANY_ACCOUNT(){return WHO_ANY_ACCOUNT},get WHO_NO_ONE(){return WHO_NO_ONE},get WIKI_URL(){return WIKI_URL},get _dbg(){return _dbg},get _log(){return _log},get anyDialogOpen(){return anyDialogOpen},get asyncGeneratorToArray(){return asyncGeneratorToArray},get basename(){return basename},get buildUrlQueryString(){return buildUrlQueryString},get callable(){return callable},get closeDialog(){return closeDialog},get componentOrNode(){return componentOrNode},get copyTextToClipboard(){return copyTextToClipboard},get cpuSpeedIndex(){return cpuSpeedIndex},get createDurationFormatter(){return createDurationFormatter},get defaultPerms(){return defaultPerms},get dialogsDefaults(){return dialogsDefaults},get dirname(){return dirname},get domOn(){return domOn},get dontBotherWithKeys(){return dontBotherWithKeys},get downloadFileWithContent(){return downloadFileWithContent},get enforceFinal(){return enforceFinal},get enforceStarting(){return enforceStarting},get err2msg(){return err2msg},get escapeHTML(){return escapeHTML},get fallbackToBasicAuth(){return fallbackToBasicAuth},get filterMapGenerator(){return filterMapGenerator},get findDefined(){return findDefined},get focusSelector(){return focusSelector},get focusableSelector(){return focusableSelector},get formatBytes(){return formatBytes},get formatDate(){return formatDate},get formatPerc(){return formatPerc},get formatSpeed(){return formatSpeed},get formatTime(){return formatTime},get formatTimestamp(){return formatTimestamp},get getHFS(){return getHFS},get getOrSet(){return getOrSet},get getPrefixUrl(){return getPrefixUrl},get hIcon(){return hIcon},get hasProp(){return hasProp},get haveTimeout(){return haveTimeout},get hfsEvent(){return hfsEvent},get inCommon(){return inCommon},get ipForUrl(){return ipForUrl},get isCtrlKey(){return isCtrlKey},get isDescendant(){return isDescendant},get isEqualLax(){return isEqualLax},get isIP(){return isIP},get isIpLan(){return isIpLan},get isIpLocalHost(){return isIpLocalHost},get isMac(){return isMac},get isMobile(){return isMobile},get isNumeric(){return isNumeric},get isOrderedEqual(){return isOrderedEqual},get isPrimitive(){return isPrimitive},get isTimestampString(){return isTimestampString},get isWhoObject(){return isWhoObject},get isWindowsDrive(){return isWindowsDrive},get join(){return join},get loadScript(){return loadScript},get makeMatcher(){return makeMatcher},get makeSessionRefresher(){return makeSessionRefresher},get mapFilter(){return mapFilter},get matches(){return matches},get md(){return md},get newDialog(){return newDialog},get newObj(){return newObj},get noAriaTitle(){return noAriaTitle},get normalizeHost(){return normalizeHost},get objFromKeys(){return objFromKeys},get objRenameKey(){return objRenameKey},get objSameKeys(){return objSameKeys},get onHfsEvent(){return onHfsEvent},get onlyTruthy(){return onlyTruthy},get operationSuccessful(){return operationSuccessful},get patchKey(){return patchKey},get pathEncode(){return pathEncode},get pendingPromise(){return pendingPromise},get popKey(){return popKey},get prefix(){return prefix},get promiseBestEffort(){return promiseBestEffort},get randomId(){return randomId},get reactFilter(){return reactFilter},get reactJoin(){return reactJoin},get readFile(){return readFile},get removeFinal(){return removeFinal},get removeStarting(){return removeStarting},get repeat(){return repeat},get replace(){return replace},get replaceStringToReact(){return replaceStringToReact},get restartAnimation(){return restartAnimation},get retry(){return retry},get runAt(){return runAt},get safeDecodeURIComponent(){return safeDecodeURIComponent},get selectFiles(){return selectFiles},get setHidden(){return setHidden},get shortenAgent(){return shortenAgent},get splitAt(){return splitAt},get srpClientPart(){return srpClientPart},get srpClientSequence(){return srpClientSequence},get stringAfter(){return stringAfter},get strinsert(){return strinsert},get swap(){return swap},get throw_(){return throw_},get toMutable(){return toMutable},get truthy(){return truthy},get tryJson(){return tryJson},get try_(){return try_},get typedEntries(){return typedEntries},get typedKeys(){return typedKeys},get urlParams(){return urlParams},get useAutoScroll(){return useAutoScroll},get useBatch(){return useBatch},get useEffectOnce(){return useEffectOnce},get useFixSticky(){return useFixSticky},get useGetSize(){return useGetSize},get useIsMobile(){return useIsMobile},get useOnResize(){return useOnResize},get useRequestRender(){return useRequestRender},get useStateMounted(){return useStateMounted},get wait(){return wait},get waitFor(){return waitFor},get wantArray(){return wantArray},get with_(){return with_},get working(){return working},get xlate(){return xlate}},Symbol.toStringTag,{value:"Module"}));(function(){const m=document.createElement("link").relList;if(m&&m.supports&&m.supports("modulepreload"))return;for(const b of document.querySelectorAll('link[rel="modulepreload"]'))x(b);new MutationObserver(b=>{for(const E of b)if(E.type==="childList")for(const v of E.addedNodes)v.tagName==="LINK"&&v.rel==="modulepreload"&&x(v)}).observe(document,{childList:!0,subtree:!0});function g(b){const E={};return b.integrity&&(E.integrity=b.integrity),b.referrerPolicy&&(E.referrerPolicy=b.referrerPolicy),b.crossOrigin==="use-credentials"?E.credentials="include":b.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function x(b){if(b.ep)return;b.ep=!0;const E=g(b);fetch(b.href,E)}})();var commonjsGlobal=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function getDefaultExportFromCjs(d){return d&&d.__esModule&&Object.prototype.hasOwnProperty.call(d,"default")?d.default:d}function getAugmentedNamespace(d){if(Object.prototype.hasOwnProperty.call(d,"__esModule"))return d;var m=d.default;if(typeof m=="function"){var g=function x(){return this instanceof x?Reflect.construct(m,arguments,this.constructor):m.apply(this,arguments)};g.prototype=m.prototype}else g={};return Object.defineProperty(g,"__esModule",{value:!0}),Object.keys(d).forEach(function(x){var b=Object.getOwnPropertyDescriptor(d,x);Object.defineProperty(g,x,b.get?b:{enumerable:!0,get:function(){return d[x]}})}),g}var react={exports:{}},react_production_min={};/**
1
+ var dx=Object.defineProperty,px=Object.defineProperties;var fx=Object.getOwnPropertyDescriptors;var rf=Object.getOwnPropertySymbols;var Pm=Object.prototype.hasOwnProperty,Rm=Object.prototype.propertyIsEnumerable;var ou=(d,m)=>(m=Symbol[d])?m:Symbol.for("Symbol."+d),mx=d=>{throw TypeError(d)},oo=Math.pow,im=(d,m,g)=>m in d?dx(d,m,{enumerable:!0,configurable:!0,writable:!0,value:g}):d[m]=g,Fe=(d,m)=>{for(var g in m||(m={}))Pm.call(m,g)&&im(d,g,m[g]);if(rf)for(var g of rf(m))Rm.call(m,g)&&im(d,g,m[g]);return d},$t=(d,m)=>px(d,fx(m));var $m=d=>typeof d=="symbol"?d:d+"",Vt=(d,m)=>{var g={};for(var x in d)Pm.call(d,x)&&m.indexOf(x)<0&&(g[x]=d[x]);if(d!=null&&rf)for(var x of rf(d))m.indexOf(x)<0&&Rm.call(d,x)&&(g[x]=d[x]);return g};var Xo=(d,m,g)=>im(d,typeof m!="symbol"?m+"":m,g);var yt=(d,m,g)=>new Promise((x,b)=>{var E=C=>{try{S(g.next(C))}catch(T){b(T)}},v=C=>{try{S(g.throw(C))}catch(T){b(T)}},S=C=>C.done?x(C.value):Promise.resolve(C.value).then(E,v);S((g=g.apply(d,m)).next())}),su=function(d,m){this[0]=d,this[1]=m},Im=(d,m,g)=>{var x=(v,S,C,T)=>{try{var R=g[v](S),k=(S=R.value)instanceof su,L=R.done;Promise.resolve(k?S[0]:S).then(D=>k?x(v==="return"?v:"next",S[1]?{done:D.done,value:D.value}:D,C,T):C({value:D,done:L})).catch(D=>x("throw",D,C,T))}catch(D){T(D)}},b=v=>E[v]=S=>new Promise((C,T)=>x(v,S,C,T)),E={};return g=g.apply(d,m),E[ou("asyncIterator")]=()=>E,b("next"),b("throw"),b("return"),E},bt=d=>{var m=d[ou("asyncIterator")],g=!1,x,b={};return m==null?(m=d[ou("iterator")](),x=E=>b[E]=v=>m[E](v)):(m=m.call(d),x=E=>b[E]=v=>{if(g){if(g=!1,E==="throw")throw v;return v}return g=!0,{done:!1,value:new su(new Promise(S=>{var C=m[E](v);C instanceof Object||mx("Object expected"),S(C)}),1)}}),b[ou("iterator")]=()=>b,x("next"),"throw"in m?x("throw"):b.throw=E=>{throw E},"return"in m&&x("return"),b},lm=(d,m,g)=>(m=d[ou("asyncIterator")])?m.call(d):(d=d[ou("iterator")](),m={},g=(x,b)=>(b=d[x])&&(m[x]=E=>new Promise((v,S,C)=>(E=b.call(d,E),C=E.done,Promise.resolve(E.value).then(T=>v({value:T,done:C}),S)))),g("next"),g("return"),m);function _mergeNamespaces(d,m){for(var g=0;g<m.length;g++){const x=m[g];if(typeof x!="string"&&!Array.isArray(x)){for(const b in x)if(b!=="default"&&!(b in d)){const E=Object.getOwnPropertyDescriptor(x,b);E&&Object.defineProperty(d,b,E.get?E:{enumerable:!0,get:()=>x[b]})}}}return Object.freeze(Object.defineProperty(d,Symbol.toStringTag,{value:"Module"}))}const thisModule=Object.freeze(Object.defineProperty({__proto__:null,get ADMIN_URI(){return ADMIN_URI},get ALLOW_SESSION_IP_CHANGE(){return ALLOW_SESSION_IP_CHANGE},get API_URI(){return API_URI},get AriaOnly(){return AriaOnly},get CFG(){return CFG},get DAY(){return DAY},get Dialogs(){return Dialogs},get EMBEDDED_LANGUAGE(){return EMBEDDED_LANGUAGE},get ErrorMsg(){return ErrorMsg},get FRONTEND_OPTIONS(){return FRONTEND_OPTIONS},get FRONTEND_URI(){return FRONTEND_URI},get HFS_REPO(){return HFS_REPO},get HIDE_IN_TESTS(){return HIDE_IN_TESTS},get HOUR(){return HOUR},get HTTP_BAD_REQUEST(){return HTTP_BAD_REQUEST},get HTTP_CONFLICT(){return HTTP_CONFLICT},get HTTP_FAILED_DEPENDENCY(){return HTTP_FAILED_DEPENDENCY},get HTTP_FOOL(){return HTTP_FOOL},get HTTP_FORBIDDEN(){return HTTP_FORBIDDEN},get HTTP_INSUFFICIENT_STORAGE(){return HTTP_INSUFFICIENT_STORAGE},get HTTP_MESSAGES(){return HTTP_MESSAGES},get HTTP_METHOD_NOT_ALLOWED(){return HTTP_METHOD_NOT_ALLOWED},get HTTP_MOVED_PERMANENTLY(){return HTTP_MOVED_PERMANENTLY},get HTTP_NOT_ACCEPTABLE(){return HTTP_NOT_ACCEPTABLE},get HTTP_NOT_FOUND(){return HTTP_NOT_FOUND},get HTTP_NOT_MODIFIED(){return HTTP_NOT_MODIFIED},get HTTP_NO_CONTENT(){return HTTP_NO_CONTENT},get HTTP_OK(){return HTTP_OK},get HTTP_PARTIAL_CONTENT(){return HTTP_PARTIAL_CONTENT},get HTTP_PAYLOAD_TOO_LARGE(){return HTTP_PAYLOAD_TOO_LARGE},get HTTP_PRECONDITION_FAILED(){return HTTP_PRECONDITION_FAILED},get HTTP_RANGE_NOT_SATISFIABLE(){return HTTP_RANGE_NOT_SATISFIABLE},get HTTP_SERVER_ERROR(){return HTTP_SERVER_ERROR},get HTTP_SERVICE_UNAVAILABLE(){return HTTP_SERVICE_UNAVAILABLE},get HTTP_TEMPORARY_REDIRECT(){return HTTP_TEMPORARY_REDIRECT},get HTTP_TOO_MANY_REQUESTS(){return HTTP_TOO_MANY_REQUESTS},get HTTP_UNAUTHORIZED(){return HTTP_UNAUTHORIZED},get Html(){return Html},get ICONS_URI(){return ICONS_URI},get IMAGE_FILEMASK(){return IMAGE_FILEMASK},get KeepInScreen(){return KeepInScreen},get LIST(){return LIST},get MAX_TILE_SIZE(){return MAX_TILE_SIZE},get MD_TAGS(){return MD_TAGS},get MINUTE(){return MINUTE},get MTIME_CHECK(){return MTIME_CHECK},get NBSP(){return NBSP},get PERM_KEYS(){return PERM_KEYS},get PLUGINS_PUB_URI(){return PLUGINS_PUB_URI},get PLUGIN_CUSTOM_REST_PREFIX(){return PLUGIN_CUSTOM_REST_PREFIX},get PORT_DISABLED(){return PORT_DISABLED},get PREVIOUS_TAG(){return PREVIOUS_TAG},get REPO_URL(){return REPO_URL},get SORT_BY_OPTIONS(){return SORT_BY_OPTIONS},get SPECIAL_URI(){return SPECIAL_URI},get THEME_OPTIONS(){return THEME_OPTIONS},get UPLOAD_TEMP_HASH(){return UPLOAD_TEMP_HASH},get WEBSITE(){return WEBSITE},get WHO_ANYONE(){return WHO_ANYONE},get WHO_ANY_ACCOUNT(){return WHO_ANY_ACCOUNT},get WHO_NO_ONE(){return WHO_NO_ONE},get WIKI_URL(){return WIKI_URL},get _dbg(){return _dbg},get _log(){return _log},get anyDialogOpen(){return anyDialogOpen},get asyncGeneratorToArray(){return asyncGeneratorToArray},get basename(){return basename},get buildUrlQueryString(){return buildUrlQueryString},get callable(){return callable},get closeDialog(){return closeDialog},get componentOrNode(){return componentOrNode},get copyTextToClipboard(){return copyTextToClipboard},get cpuSpeedIndex(){return cpuSpeedIndex},get createDurationFormatter(){return createDurationFormatter},get defaultPerms(){return defaultPerms},get dialogsDefaults(){return dialogsDefaults},get dirname(){return dirname},get domOn(){return domOn},get dontBotherWithKeys(){return dontBotherWithKeys},get downloadFileWithContent(){return downloadFileWithContent},get enforceFinal(){return enforceFinal},get enforceStarting(){return enforceStarting},get err2msg(){return err2msg},get escapeHTML(){return escapeHTML},get fallbackToBasicAuth(){return fallbackToBasicAuth},get filterMapGenerator(){return filterMapGenerator},get findDefined(){return findDefined},get focusSelector(){return focusSelector},get focusableSelector(){return focusableSelector},get formatBytes(){return formatBytes},get formatDate(){return formatDate},get formatPerc(){return formatPerc},get formatSpeed(){return formatSpeed},get formatTime(){return formatTime},get formatTimestamp(){return formatTimestamp},get getHFS(){return getHFS},get getOrSet(){return getOrSet},get getPrefixUrl(){return getPrefixUrl},get hIcon(){return hIcon},get hasProp(){return hasProp},get haveTimeout(){return haveTimeout},get hfsEvent(){return hfsEvent},get inCommon(){return inCommon},get ipForUrl(){return ipForUrl},get isCtrlKey(){return isCtrlKey},get isDescendant(){return isDescendant},get isEqualLax(){return isEqualLax},get isIP(){return isIP},get isIpLan(){return isIpLan},get isIpLocalHost(){return isIpLocalHost},get isMac(){return isMac},get isMobile(){return isMobile},get isNumeric(){return isNumeric},get isOrderedEqual(){return isOrderedEqual},get isPrimitive(){return isPrimitive},get isTimestampString(){return isTimestampString},get isWhoObject(){return isWhoObject},get isWindowsDrive(){return isWindowsDrive},get join(){return join},get loadScript(){return loadScript},get makeMatcher(){return makeMatcher},get makeSessionRefresher(){return makeSessionRefresher},get mapFilter(){return mapFilter},get matches(){return matches},get md(){return md},get newDialog(){return newDialog},get newObj(){return newObj},get noAriaTitle(){return noAriaTitle},get normalizeHost(){return normalizeHost},get objFromKeys(){return objFromKeys},get objRenameKey(){return objRenameKey},get objSameKeys(){return objSameKeys},get onHfsEvent(){return onHfsEvent},get onlyTruthy(){return onlyTruthy},get operationSuccessful(){return operationSuccessful},get patchKey(){return patchKey},get pathEncode(){return pathEncode},get pendingPromise(){return pendingPromise},get popKey(){return popKey},get prefix(){return prefix},get promiseBestEffort(){return promiseBestEffort},get randomId(){return randomId},get reactFilter(){return reactFilter},get reactJoin(){return reactJoin},get readFile(){return readFile},get removeFinal(){return removeFinal},get removeStarting(){return removeStarting},get repeat(){return repeat},get replace(){return replace},get replaceStringToReact(){return replaceStringToReact},get restartAnimation(){return restartAnimation},get retry(){return retry},get runAt(){return runAt},get safeDecodeURIComponent(){return safeDecodeURIComponent},get selectFiles(){return selectFiles},get setHidden(){return setHidden},get shortenAgent(){return shortenAgent},get splitAt(){return splitAt},get srpClientPart(){return srpClientPart},get srpClientSequence(){return srpClientSequence},get stringAfter(){return stringAfter},get strinsert(){return strinsert},get swap(){return swap},get throw_(){return throw_},get toMutable(){return toMutable},get truthy(){return truthy},get tryJson(){return tryJson},get try_(){return try_},get typedEntries(){return typedEntries},get typedKeys(){return typedKeys},get urlParams(){return urlParams},get useAutoScroll(){return useAutoScroll},get useBatch(){return useBatch},get useEffectOnce(){return useEffectOnce},get useFixSticky(){return useFixSticky},get useGetSize(){return useGetSize},get useIsMobile(){return useIsMobile},get useOnResize(){return useOnResize},get useRequestRender(){return useRequestRender},get useStateMounted(){return useStateMounted},get wait(){return wait},get waitFor(){return waitFor},get wantArray(){return wantArray},get with_(){return with_},get working(){return working},get xlate(){return xlate}},Symbol.toStringTag,{value:"Module"}));(function(){const m=document.createElement("link").relList;if(m&&m.supports&&m.supports("modulepreload"))return;for(const b of document.querySelectorAll('link[rel="modulepreload"]'))x(b);new MutationObserver(b=>{for(const E of b)if(E.type==="childList")for(const v of E.addedNodes)v.tagName==="LINK"&&v.rel==="modulepreload"&&x(v)}).observe(document,{childList:!0,subtree:!0});function g(b){const E={};return b.integrity&&(E.integrity=b.integrity),b.referrerPolicy&&(E.referrerPolicy=b.referrerPolicy),b.crossOrigin==="use-credentials"?E.credentials="include":b.crossOrigin==="anonymous"?E.credentials="omit":E.credentials="same-origin",E}function x(b){if(b.ep)return;b.ep=!0;const E=g(b);fetch(b.href,E)}})();var commonjsGlobal=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function getDefaultExportFromCjs(d){return d&&d.__esModule&&Object.prototype.hasOwnProperty.call(d,"default")?d.default:d}function getAugmentedNamespace(d){if(Object.prototype.hasOwnProperty.call(d,"__esModule"))return d;var m=d.default;if(typeof m=="function"){var g=function x(){return this instanceof x?Reflect.construct(m,arguments,this.constructor):m.apply(this,arguments)};g.prototype=m.prototype}else g={};return Object.defineProperty(g,"__esModule",{value:!0}),Object.keys(d).forEach(function(x){var b=Object.getOwnPropertyDescriptor(d,x);Object.defineProperty(g,x,b.get?b:{enumerable:!0,get:function(){return d[x]}})}),g}var react={exports:{}},react_production_min={};/**
2
2
  * @license React
3
3
  * react.production.min.js
4
4
  *
@@ -29,7 +29,7 @@ var dx=Object.defineProperty,px=Object.defineProperties;var fx=Object.getOwnProp
29
29
  `+le[we].replace(" at new "," at ");return M.displayName&&ze.includes("<anonymous>")&&(ze=ze.replace("<anonymous>",M.displayName)),ze}while(1<=we&&0<=Ae);break}}}finally{Ee=!1,Error.prepareStackTrace=F}return(M=M?M.displayName||M.name:"")?ye(M):""}function Se(M){switch(M.tag){case 5:return ye(M.type);case 16:return ye("Lazy");case 13:return ye("Suspense");case 19:return ye("SuspenseList");case 0:case 2:case 15:return M=ve(M.type,!1),M;case 11:return M=ve(M.type.render,!1),M;case 1:return M=ve(M.type,!0),M;default:return""}}function $e(M){if(M==null)return null;if(typeof M=="function")return M.displayName||M.name||null;if(typeof M=="string")return M;switch(M){case V:return"Fragment";case W:return"Portal";case Q:return"Profiler";case J:return"StrictMode";case oe:return"Suspense";case Z:return"SuspenseList"}if(typeof M=="object")switch(M.$$typeof){case re:return(M.displayName||"Context")+".Consumer";case X:return(M._context.displayName||"Context")+".Provider";case ie:var P=M.render;return M=M.displayName,M||(M=P.displayName||P.name||"",M=M!==""?"ForwardRef("+M+")":"ForwardRef"),M;case ee:return P=M.displayName||null,P!==null?P:$e(M.type)||"Memo";case ce:P=M._payload,M=M._init;try{return $e(M(P))}catch(F){}}return null}function Me(M){var P=M.type;switch(M.tag){case 24:return"Cache";case 9:return(P.displayName||"Context")+".Consumer";case 10:return(P._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return M=P.render,M=M.displayName||M.name||"",P.displayName||(M!==""?"ForwardRef("+M+")":"ForwardRef");case 7:return"Fragment";case 5:return P;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return $e(P);case 8:return P===J?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof P=="function")return P.displayName||P.name||null;if(typeof P=="string")return P}return null}function Re(M){switch(typeof M){case"boolean":case"number":case"string":case"undefined":return M;case"object":return M;default:return""}}function De(M){var P=M.type;return(M=M.nodeName)&&M.toLowerCase()==="input"&&(P==="checkbox"||P==="radio")}function Be(M){var P=De(M)?"checked":"value",F=Object.getOwnPropertyDescriptor(M.constructor.prototype,P),q=""+M[P];if(!M.hasOwnProperty(P)&&typeof F!="undefined"&&typeof F.get=="function"&&typeof F.set=="function"){var le=F.get,xe=F.set;return Object.defineProperty(M,P,{configurable:!0,get:function(){return le.call(this)},set:function(we){q=""+we,xe.call(this,we)}}),Object.defineProperty(M,P,{enumerable:F.enumerable}),{getValue:function(){return q},setValue:function(we){q=""+we},stopTracking:function(){M._valueTracker=null,delete M[P]}}}}function Le(M){M._valueTracker||(M._valueTracker=Be(M))}function Ge(M){if(!M)return!1;var P=M._valueTracker;if(!P)return!0;var F=P.getValue(),q="";return M&&(q=De(M)?M.checked?"true":"false":M.value),M=q,M!==F?(P.setValue(M),!0):!1}function Ie(M){if(M=M||(typeof document!="undefined"?document:void 0),typeof M=="undefined")return null;try{return M.activeElement||M.body}catch(P){return M.body}}function Ye(M,P){var F=P.checked;return pe({},P,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:F!=null?F:M._wrapperState.initialChecked})}function He(M,P){var F=P.defaultValue==null?"":P.defaultValue,q=P.checked!=null?P.checked:P.defaultChecked;F=Re(P.value!=null?P.value:F),M._wrapperState={initialChecked:q,initialValue:F,controlled:P.type==="checkbox"||P.type==="radio"?P.checked!=null:P.value!=null}}function Ve(M,P){P=P.checked,P!=null&&Y(M,"checked",P,!1)}function rt(M,P){Ve(M,P);var F=Re(P.value),q=P.type;if(F!=null)q==="number"?(F===0&&M.value===""||M.value!=F)&&(M.value=""+F):M.value!==""+F&&(M.value=""+F);else if(q==="submit"||q==="reset"){M.removeAttribute("value");return}P.hasOwnProperty("value")?ot(M,P.type,F):P.hasOwnProperty("defaultValue")&&ot(M,P.type,Re(P.defaultValue)),P.checked==null&&P.defaultChecked!=null&&(M.defaultChecked=!!P.defaultChecked)}function Oe(M,P,F){if(P.hasOwnProperty("value")||P.hasOwnProperty("defaultValue")){var q=P.type;if(!(q!=="submit"&&q!=="reset"||P.value!==void 0&&P.value!==null))return;P=""+M._wrapperState.initialValue,F||P===M.value||(M.value=P),M.defaultValue=P}F=M.name,F!==""&&(M.name=""),M.defaultChecked=!!M._wrapperState.initialChecked,F!==""&&(M.name=F)}function ot(M,P,F){(P!=="number"||Ie(M.ownerDocument)!==M)&&(F==null?M.defaultValue=""+M._wrapperState.initialValue:M.defaultValue!==""+F&&(M.defaultValue=""+F))}var ke=Array.isArray;function Ne(M,P,F,q){if(M=M.options,P){P={};for(var le=0;le<F.length;le++)P["$"+F[le]]=!0;for(F=0;F<M.length;F++)le=P.hasOwnProperty("$"+M[F].value),M[F].selected!==le&&(M[F].selected=le),le&&q&&(M[F].defaultSelected=!0)}else{for(F=""+Re(F),P=null,le=0;le<M.length;le++){if(M[le].value===F){M[le].selected=!0,q&&(M[le].defaultSelected=!0);return}P!==null||M[le].disabled||(P=M[le])}P!==null&&(P.selected=!0)}}function Ke(M,P){if(P.dangerouslySetInnerHTML!=null)throw Error(g(91));return pe({},P,{value:void 0,defaultValue:void 0,children:""+M._wrapperState.initialValue})}function Xe(M,P){var F=P.value;if(F==null){if(F=P.children,P=P.defaultValue,F!=null){if(P!=null)throw Error(g(92));if(ke(F)){if(1<F.length)throw Error(g(93));F=F[0]}P=F}P==null&&(P=""),F=P}M._wrapperState={initialValue:Re(F)}}function st(M,P){var F=Re(P.value),q=Re(P.defaultValue);F!=null&&(F=""+F,F!==M.value&&(M.value=F),P.defaultValue==null&&M.defaultValue!==F&&(M.defaultValue=F)),q!=null&&(M.defaultValue=""+q)}function xt(M){var P=M.textContent;P===M._wrapperState.initialValue&&P!==""&&P!==null&&(M.value=P)}function Je(M){switch(M){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function gt(M,P){return M==null||M==="http://www.w3.org/1999/xhtml"?Je(P):M==="http://www.w3.org/2000/svg"&&P==="foreignObject"?"http://www.w3.org/1999/xhtml":M}var Ct,dt=function(M){return typeof MSApp!="undefined"&&MSApp.execUnsafeLocalFunction?function(P,F,q,le){MSApp.execUnsafeLocalFunction(function(){return M(P,F,q,le)})}:M}(function(M,P){if(M.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in M)M.innerHTML=P;else{for(Ct=Ct||document.createElement("div"),Ct.innerHTML="<svg>"+P.valueOf().toString()+"</svg>",P=Ct.firstChild;M.firstChild;)M.removeChild(M.firstChild);for(;P.firstChild;)M.appendChild(P.firstChild)}});function jt(M,P){if(P){var F=M.firstChild;if(F&&F===M.lastChild&&F.nodeType===3){F.nodeValue=P;return}}M.textContent=P}var Wt={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Xt=["Webkit","ms","Moz","O"];Object.keys(Wt).forEach(function(M){Xt.forEach(function(P){P=P+M.charAt(0).toUpperCase()+M.substring(1),Wt[P]=Wt[M]})});function Pt(M,P,F){return P==null||typeof P=="boolean"||P===""?"":F||typeof P!="number"||P===0||Wt.hasOwnProperty(M)&&Wt[M]?(""+P).trim():P+"px"}function zt(M,P){M=M.style;for(var F in P)if(P.hasOwnProperty(F)){var q=F.indexOf("--")===0,le=Pt(F,P[F],q);F==="float"&&(F="cssFloat"),q?M.setProperty(F,le):M[F]=le}}var St=pe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Lt(M,P){if(P){if(St[M]&&(P.children!=null||P.dangerouslySetInnerHTML!=null))throw Error(g(137,M));if(P.dangerouslySetInnerHTML!=null){if(P.children!=null)throw Error(g(60));if(typeof P.dangerouslySetInnerHTML!="object"||!("__html"in P.dangerouslySetInnerHTML))throw Error(g(61))}if(P.style!=null&&typeof P.style!="object")throw Error(g(62))}}function Kt(M,P){if(M.indexOf("-")===-1)return typeof P.is=="string";switch(M){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Zt=null;function lr(M){return M=M.target||M.srcElement||window,M.correspondingUseElement&&(M=M.correspondingUseElement),M.nodeType===3?M.parentNode:M}var vr=null,Jt=null,rr=null;function Or(M){if(M=In(M)){if(typeof vr!="function")throw Error(g(280));var P=M.stateNode;P&&(P=ac(P),vr(M.stateNode,M.type,P))}}function xr(M){Jt?rr?rr.push(M):rr=[M]:Jt=M}function qr(){if(Jt){var M=Jt,P=rr;if(rr=Jt=null,Or(M),P)for(M=0;M<P.length;M++)Or(P[M])}}function yn(M,P){return M(P)}function Qr(){}var Fo=!1;function Pn(M,P,F){if(Fo)return M(P,F);Fo=!0;try{return yn(M,P,F)}finally{Fo=!1,(Jt!==null||rr!==null)&&(Qr(),qr())}}function Fr(M,P){var F=M.stateNode;if(F===null)return null;var q=ac(F);if(q===null)return null;F=q[P];e:switch(P){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(q=!q.disabled)||(M=M.type,q=!(M==="button"||M==="input"||M==="select"||M==="textarea")),M=!q;break e;default:M=!1}if(M)return null;if(F&&typeof F!="function")throw Error(g(231,P,typeof F));return F}var wr=!1;if(S)try{var zr={};Object.defineProperty(zr,"passive",{get:function(){wr=!0}}),window.addEventListener("test",zr,zr),window.removeEventListener("test",zr,zr)}catch(M){wr=!1}function sn(M,P,F,q,le,xe,we,Ae,ze){var ct=Array.prototype.slice.call(arguments,3);try{P.apply(F,ct)}catch(Mt){this.onError(Mt)}}var vn=!1,Wn=null,En=!1,xo=null,Zo={onError:function(M){vn=!0,Wn=M}};function _o(M,P,F,q,le,xe,we,Ae,ze){vn=!1,Wn=null,sn.apply(Zo,arguments)}function No(M,P,F,q,le,xe,we,Ae,ze){if(_o.apply(this,arguments),vn){if(vn){var ct=Wn;vn=!1,Wn=null}else throw Error(g(198));En||(En=!0,xo=ct)}}function ut(M){var P=M,F=M;if(M.alternate)for(;P.return;)P=P.return;else{M=P;do P=M,(P.flags&4098)!==0&&(F=P.return),M=P.return;while(M)}return P.tag===3?F:null}function tt(M){if(M.tag===13){var P=M.memoizedState;if(P===null&&(M=M.alternate,M!==null&&(P=M.memoizedState)),P!==null)return P.dehydrated}return null}function It(M){if(ut(M)!==M)throw Error(g(188))}function Gt(M){var P=M.alternate;if(!P){if(P=ut(M),P===null)throw Error(g(188));return P!==M?null:M}for(var F=M,q=P;;){var le=F.return;if(le===null)break;var xe=le.alternate;if(xe===null){if(q=le.return,q!==null){F=q;continue}break}if(le.child===xe.child){for(xe=le.child;xe;){if(xe===F)return It(le),M;if(xe===q)return It(le),P;xe=xe.sibling}throw Error(g(188))}if(F.return!==q.return)F=le,q=xe;else{for(var we=!1,Ae=le.child;Ae;){if(Ae===F){we=!0,F=le,q=xe;break}if(Ae===q){we=!0,q=le,F=xe;break}Ae=Ae.sibling}if(!we){for(Ae=xe.child;Ae;){if(Ae===F){we=!0,F=xe,q=le;break}if(Ae===q){we=!0,q=xe,F=le;break}Ae=Ae.sibling}if(!we)throw Error(g(189))}}if(F.alternate!==q)throw Error(g(190))}if(F.tag!==3)throw Error(g(188));return F.stateNode.current===F?M:P}function dr(M){return M=Gt(M),M!==null?Yt(M):null}function Yt(M){if(M.tag===5||M.tag===6)return M;for(M=M.child;M!==null;){var P=Yt(M);if(P!==null)return P;M=M.sibling}return null}var Er=m.unstable_scheduleCallback,so=m.unstable_cancelCallback,pi=m.unstable_shouldYield,of=m.unstable_requestPaint,Gr=m.unstable_now,sf=m.unstable_getCurrentPriorityLevel,iu=m.unstable_ImmediatePriority,Ld=m.unstable_UserBlockingPriority,Aa=m.unstable_NormalPriority,Dd=m.unstable_LowPriority,au=m.unstable_IdlePriority,Dl=null,ts=null;function lf(M){if(ts&&typeof ts.onCommitFiberRoot=="function")try{ts.onCommitFiberRoot(Dl,M,void 0,(M.current.flags&128)===128)}catch(P){}}var jo=Math.clz32?Math.clz32:Fd,Ad=Math.log,Od=Math.LN2;function Fd(M){return M>>>=0,M===0?32:31-(Ad(M)/Od|0)|0}var Vi=64,Al=4194304;function Wi(M){switch(M&-M){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return M&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return M&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return M}}function gi(M,P){var F=M.pendingLanes;if(F===0)return 0;var q=0,le=M.suspendedLanes,xe=M.pingedLanes,we=F&268435455;if(we!==0){var Ae=we&~le;Ae!==0?q=Wi(Ae):(xe&=we,xe!==0&&(q=Wi(xe)))}else we=F&~le,we!==0?q=Wi(we):xe!==0&&(q=Wi(xe));if(q===0)return 0;if(P!==0&&P!==q&&(P&le)===0&&(le=q&-q,xe=P&-P,le>=xe||le===16&&(xe&4194240)!==0))return P;if((q&4)!==0&&(q|=F&16),P=M.entangledLanes,P!==0)for(M=M.entanglements,P&=q;0<P;)F=31-jo(P),le=1<<F,q|=M[F],P&=~le;return q}function Nd(M,P){switch(M){case 1:case 2:case 4:return P+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return P+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function cf(M,P){for(var F=M.suspendedLanes,q=M.pingedLanes,le=M.expirationTimes,xe=M.pendingLanes;0<xe;){var we=31-jo(xe),Ae=1<<we,ze=le[we];ze===-1?((Ae&F)===0||(Ae&q)!==0)&&(le[we]=Nd(Ae,P)):ze<=P&&(M.expiredLanes|=Ae),xe&=~Ae}}function Ol(M){return M=M.pendingLanes&-1073741825,M!==0?M:M&1073741824?1073741824:0}function lu(){var M=Vi;return Vi<<=1,(Vi&4194240)===0&&(Vi=64),M}function Oa(M){for(var P=[],F=0;31>F;F++)P.push(M);return P}function Fa(M,P,F){M.pendingLanes|=P,P!==536870912&&(M.suspendedLanes=0,M.pingedLanes=0),M=M.eventTimes,P=31-jo(P),M[P]=F}function jd(M,P){var F=M.pendingLanes&~P;M.pendingLanes=P,M.suspendedLanes=0,M.pingedLanes=0,M.expiredLanes&=P,M.mutableReadLanes&=P,M.entangledLanes&=P,P=M.entanglements;var q=M.eventTimes;for(M=M.expirationTimes;0<F;){var le=31-jo(F),xe=1<<le;P[le]=0,q[le]=-1,M[le]=-1,F&=~xe}}function Na(M,P){var F=M.entangledLanes|=P;for(M=M.entanglements;F;){var q=31-jo(F),le=1<<q;le&P|M[q]&P&&(M[q]|=P),F&=~le}}var kr=0;function xi(M){return M&=-M,1<M?4<M?(M&268435455)!==0?16:536870912:4:1}var cu,Fl,Hd,uu,du,Nl=!1,Ha=[],Hs=null,Ys=null,Bs=null,qi=new Map,Ya=new Map,zs=[],uf="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function Yd(M,P){switch(M){case"focusin":case"focusout":Hs=null;break;case"dragenter":case"dragleave":Ys=null;break;case"mouseover":case"mouseout":Bs=null;break;case"pointerover":case"pointerout":qi.delete(P.pointerId);break;case"gotpointercapture":case"lostpointercapture":Ya.delete(P.pointerId)}}function _i(M,P,F,q,le,xe){return M===null||M.nativeEvent!==xe?(M={blockedOn:P,domEventName:F,eventSystemFlags:q,nativeEvent:xe,targetContainers:[le]},P!==null&&(P=In(P),P!==null&&Fl(P)),M):(M.eventSystemFlags|=q,P=M.targetContainers,le!==null&&P.indexOf(le)===-1&&P.push(le),M)}function df(M,P,F,q,le){switch(P){case"focusin":return Hs=_i(Hs,M,P,F,q,le),!0;case"dragenter":return Ys=_i(Ys,M,P,F,q,le),!0;case"mouseover":return Bs=_i(Bs,M,P,F,q,le),!0;case"pointerover":var xe=le.pointerId;return qi.set(xe,_i(qi.get(xe)||null,M,P,F,q,le)),!0;case"gotpointercapture":return xe=le.pointerId,Ya.set(xe,_i(Ya.get(xe)||null,M,P,F,q,le)),!0}return!1}function Bd(M){var P=as(M.target);if(P!==null){var F=ut(P);if(F!==null){if(P=F.tag,P===13){if(P=tt(F),P!==null){M.blockedOn=P,du(M.priority,function(){Hd(F)});return}}else if(P===3&&F.stateNode.current.memoizedState.isDehydrated){M.blockedOn=F.tag===3?F.stateNode.containerInfo:null;return}}}M.blockedOn=null}function jl(M){if(M.blockedOn!==null)return!1;for(var P=M.targetContainers;0<P.length;){var F=Bl(M.domEventName,M.eventSystemFlags,P[0],M.nativeEvent);if(F===null){F=M.nativeEvent;var q=new F.constructor(F.type,F);Zt=q,F.target.dispatchEvent(q),Zt=null}else return P=In(F),P!==null&&Fl(P),M.blockedOn=F,!1;P.shift()}return!0}function zd(M,P,F){jl(M)&&F.delete(P)}function pf(){Nl=!1,Hs!==null&&jl(Hs)&&(Hs=null),Ys!==null&&jl(Ys)&&(Ys=null),Bs!==null&&jl(Bs)&&(Bs=null),qi.forEach(zd),Ya.forEach(zd)}function Lr(M,P){M.blockedOn===P&&(M.blockedOn=null,Nl||(Nl=!0,m.unstable_scheduleCallback(m.unstable_NormalPriority,pf)))}function Ir(M){function P(le){return Lr(le,M)}if(0<Ha.length){Lr(Ha[0],M);for(var F=1;F<Ha.length;F++){var q=Ha[F];q.blockedOn===M&&(q.blockedOn=null)}}for(Hs!==null&&Lr(Hs,M),Ys!==null&&Lr(Ys,M),Bs!==null&&Lr(Bs,M),qi.forEach(P),Ya.forEach(P),F=0;F<zs.length;F++)q=zs[F],q.blockedOn===M&&(q.blockedOn=null);for(;0<zs.length&&(F=zs[0],F.blockedOn===null);)Bd(F),F.blockedOn===null&&zs.shift()}var Ki=B.ReactCurrentBatchConfig,Hl=!0;function ff(M,P,F,q){var le=kr,xe=Ki.transition;Ki.transition=null;try{kr=1,pu(M,P,F,q)}finally{kr=le,Ki.transition=xe}}function mf(M,P,F,q){var le=kr,xe=Ki.transition;Ki.transition=null;try{kr=4,pu(M,P,F,q)}finally{kr=le,Ki.transition=xe}}function pu(M,P,F,q){if(Hl){var le=Bl(M,P,F,q);if(le===null)Iu(M,P,q,Yl,F),Yd(M,q);else if(df(le,M,P,F,q))q.stopPropagation();else if(Yd(M,q),P&4&&-1<uf.indexOf(M)){for(;le!==null;){var xe=In(le);if(xe!==null&&cu(xe),xe=Bl(M,P,F,q),xe===null&&Iu(M,P,q,Yl,F),xe===le)break;le=xe}le!==null&&q.stopPropagation()}else Iu(M,P,q,null,F)}}var Yl=null;function Bl(M,P,F,q){if(Yl=null,M=lr(q),M=as(M),M!==null)if(P=ut(M),P===null)M=null;else if(F=P.tag,F===13){if(M=tt(P),M!==null)return M;M=null}else if(F===3){if(P.stateNode.current.memoizedState.isDehydrated)return P.tag===3?P.stateNode.containerInfo:null;M=null}else P!==M&&(M=null);return Yl=M,null}function Gd(M){switch(M){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(sf()){case iu:return 1;case Ld:return 4;case Aa:case Dd:return 16;case au:return 536870912;default:return 16}default:return 16}}var Ur=null,Ba=null,rs=null;function fu(){if(rs)return rs;var M,P=Ba,F=P.length,q,le="value"in Ur?Ur.value:Ur.textContent,xe=le.length;for(M=0;M<F&&P[M]===le[M];M++);var we=F-M;for(q=1;q<=we&&P[F-q]===le[xe-q];q++);return rs=le.slice(M,1<q?1-q:void 0)}function Ji(M){var P=M.keyCode;return"charCode"in M?(M=M.charCode,M===0&&P===13&&(M=13)):M=P,M===10&&(M=13),32<=M||M===13?M:0}function jn(){return!0}function mu(){return!1}function qn(M){function P(F,q,le,xe,we){this._reactName=F,this._targetInst=le,this.type=q,this.nativeEvent=xe,this.target=we,this.currentTarget=null;for(var Ae in M)M.hasOwnProperty(Ae)&&(F=M[Ae],this[Ae]=F?F(xe):xe[Ae]);return this.isDefaultPrevented=(xe.defaultPrevented!=null?xe.defaultPrevented:xe.returnValue===!1)?jn:mu,this.isPropagationStopped=mu,this}return pe(P.prototype,{preventDefault:function(){this.defaultPrevented=!0;var F=this.nativeEvent;F&&(F.preventDefault?F.preventDefault():typeof F.returnValue!="unknown"&&(F.returnValue=!1),this.isDefaultPrevented=jn)},stopPropagation:function(){var F=this.nativeEvent;F&&(F.stopPropagation?F.stopPropagation():typeof F.cancelBubble!="unknown"&&(F.cancelBubble=!0),this.isPropagationStopped=jn)},persist:function(){},isPersistent:jn}),P}var yi={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(M){return M.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},zl=qn(yi),Qi=pe({},yi,{view:0,detail:0}),Ud=qn(Qi),Hn,xu,Rn,Gl=pe({},Qi,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Eu,button:0,buttons:0,relatedTarget:function(M){return M.relatedTarget===void 0?M.fromElement===M.srcElement?M.toElement:M.fromElement:M.relatedTarget},movementX:function(M){return"movementX"in M?M.movementX:(M!==Rn&&(Rn&&M.type==="mousemove"?(Hn=M.screenX-Rn.screenX,xu=M.screenY-Rn.screenY):xu=Hn=0,Rn=M),Hn)},movementY:function(M){return"movementY"in M?M.movementY:xu}}),_u=qn(Gl),Gs=pe({},Gl,{dataTransfer:0}),Ul=qn(Gs),yu=pe({},Qi,{relatedTarget:0}),Nr=qn(yu),Us=pe({},yi,{animationName:0,elapsedTime:0,pseudoElement:0}),vu=qn(Us),hf=pe({},yi,{clipboardData:function(M){return"clipboardData"in M?M.clipboardData:window.clipboardData}}),bu=qn(hf),gf=pe({},yi,{data:0}),Vd=qn(gf),xf={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Wd={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Vl={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Xi(M){var P=this.nativeEvent;return P.getModifierState?P.getModifierState(M):(M=Vl[M])?!!P[M]:!1}function Eu(){return Xi}var qd=pe({},Qi,{key:function(M){if(M.key){var P=xf[M.key]||M.key;if(P!=="Unidentified")return P}return M.type==="keypress"?(M=Ji(M),M===13?"Enter":String.fromCharCode(M)):M.type==="keydown"||M.type==="keyup"?Wd[M.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Eu,charCode:function(M){return M.type==="keypress"?Ji(M):0},keyCode:function(M){return M.type==="keydown"||M.type==="keyup"?M.keyCode:0},which:function(M){return M.type==="keypress"?Ji(M):M.type==="keydown"||M.type==="keyup"?M.keyCode:0}}),Kd=qn(qd),Su=pe({},Gl,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Wl=qn(Su),Jd=pe({},Qi,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Eu}),_f=qn(Jd),Cu=pe({},yi,{propertyName:0,elapsedTime:0,pseudoElement:0}),wu=qn(Cu),yf=pe({},Gl,{deltaX:function(M){return"deltaX"in M?M.deltaX:"wheelDeltaX"in M?-M.wheelDeltaX:0},deltaY:function(M){return"deltaY"in M?M.deltaY:"wheelDeltaY"in M?-M.wheelDeltaY:"wheelDelta"in M?-M.wheelDelta:0},deltaZ:0,deltaMode:0}),Qd=qn(yf),io=[9,13,27,32],za=S&&"CompositionEvent"in window,Ss=null;S&&"documentMode"in document&&(Ss=document.documentMode);var Xd=S&&"TextEvent"in window&&!Ss,Mu=S&&(!za||Ss&&8<Ss&&11>=Ss),Zd=" ",ep=!1;function tp(M,P){switch(M){case"keyup":return io.indexOf(P.keyCode)!==-1;case"keydown":return P.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function rp(M){return M=M.detail,typeof M=="object"&&"data"in M?M.data:null}var Zi=!1;function ea(M,P){switch(M){case"compositionend":return rp(P);case"keypress":return P.which!==32?null:(ep=!0,Zd);case"textInput":return M=P.data,M===Zd&&ep?null:M;default:return null}}function vf(M,P){if(Zi)return M==="compositionend"||!za&&tp(M,P)?(M=fu(),rs=Ba=Ur=null,Zi=!1,M):null;switch(M){case"paste":return null;case"keypress":if(!(P.ctrlKey||P.altKey||P.metaKey)||P.ctrlKey&&P.altKey){if(P.char&&1<P.char.length)return P.char;if(P.which)return String.fromCharCode(P.which)}return null;case"compositionend":return Mu&&P.locale!=="ko"?null:P.data;default:return null}}var bf={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function ql(M){var P=M&&M.nodeName&&M.nodeName.toLowerCase();return P==="input"?!!bf[M.type]:P==="textarea"}function Tu(M,P,F,q){xr(q),P=nc(P,"onChange"),0<P.length&&(F=new zl("onChange","change",null,F,q),M.push({event:F,listeners:P}))}var vo=null,Vs=null;function Ef(M){cp(M,0)}function Kl(M){var P=pr(M);if(Ge(P))return M}function Sf(M,P){if(M==="change")return P}var Ei=!1;if(S){var ao;if(S){var Jl="oninput"in document;if(!Jl){var np=document.createElement("div");np.setAttribute("oninput","return;"),Jl=typeof np.oninput=="function"}ao=Jl}else ao=!1;Ei=ao&&(!document.documentMode||9<document.documentMode)}function op(){vo&&(vo.detachEvent("onpropertychange",sp),Vs=vo=null)}function sp(M){if(M.propertyName==="value"&&Kl(Vs)){var P=[];Tu(P,Vs,M,lr(M)),Pn(Ef,P)}}function Cf(M,P,F){M==="focusin"?(op(),vo=P,Vs=F,vo.attachEvent("onpropertychange",sp)):M==="focusout"&&op()}function wf(M){if(M==="selectionchange"||M==="keyup"||M==="keydown")return Kl(Vs)}function ra(M,P){if(M==="click")return Kl(P)}function qe(M,P){if(M==="input"||M==="change")return Kl(P)}function ft(M,P){return M===P&&(M!==0||1/M===1/P)||M!==M&&P!==P}var at=typeof Object.is=="function"?Object.is:ft;function At(M,P){if(at(M,P))return!0;if(typeof M!="object"||M===null||typeof P!="object"||P===null)return!1;var F=Object.keys(M),q=Object.keys(P);if(F.length!==q.length)return!1;for(q=0;q<F.length;q++){var le=F[q];if(!C.call(P,le)||!at(M[le],P[le]))return!1}return!0}function cr(M){for(;M&&M.firstChild;)M=M.firstChild;return M}function Pr(M,P){var F=cr(M);M=0;for(var q;F;){if(F.nodeType===3){if(q=M+F.textContent.length,M<=P&&q>=P)return{node:F,offset:P-M};M=q}e:{for(;F;){if(F.nextSibling){F=F.nextSibling;break e}F=F.parentNode}F=void 0}F=cr(F)}}function an(M,P){return M&&P?M===P?!0:M&&M.nodeType===3?!1:P&&P.nodeType===3?an(M,P.parentNode):"contains"in M?M.contains(P):M.compareDocumentPosition?!!(M.compareDocumentPosition(P)&16):!1:!1}function Dr(){for(var M=window,P=Ie();P instanceof M.HTMLIFrameElement;){try{var F=typeof P.contentWindow.location.href=="string"}catch(q){F=!1}if(F)M=P.contentWindow;else break;P=Ie(M.document)}return P}function Ga(M){var P=M&&M.nodeName&&M.nodeName.toLowerCase();return P&&(P==="input"&&(M.type==="text"||M.type==="search"||M.type==="tel"||M.type==="url"||M.type==="password")||P==="textarea"||M.contentEditable==="true")}function Mf(M){var P=Dr(),F=M.focusedElem,q=M.selectionRange;if(P!==F&&F&&F.ownerDocument&&an(F.ownerDocument.documentElement,F)){if(q!==null&&Ga(F)){if(P=q.start,M=q.end,M===void 0&&(M=P),"selectionStart"in F)F.selectionStart=P,F.selectionEnd=Math.min(M,F.value.length);else if(M=(P=F.ownerDocument||document)&&P.defaultView||window,M.getSelection){M=M.getSelection();var le=F.textContent.length,xe=Math.min(q.start,le);q=q.end===void 0?xe:Math.min(q.end,le),!M.extend&&xe>q&&(le=q,q=xe,xe=le),le=Pr(F,xe);var we=Pr(F,q);le&&we&&(M.rangeCount!==1||M.anchorNode!==le.node||M.anchorOffset!==le.offset||M.focusNode!==we.node||M.focusOffset!==we.offset)&&(P=P.createRange(),P.setStart(le.node,le.offset),M.removeAllRanges(),xe>q?(M.addRange(P),M.extend(we.node,we.offset)):(P.setEnd(we.node,we.offset),M.addRange(P)))}}for(P=[],M=F;M=M.parentNode;)M.nodeType===1&&P.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof F.focus=="function"&&F.focus(),F=0;F<P.length;F++)M=P[F],M.element.scrollLeft=M.left,M.element.scrollTop=M.top}}var Eo=S&&"documentMode"in document&&11>=document.documentMode,Cs=null,Pu=null,ns=null,na=!1;function Ua(M,P,F){var q=F.window===F?F.document:F.nodeType===9?F:F.ownerDocument;na||Cs==null||Cs!==Ie(q)||(q=Cs,"selectionStart"in q&&Ga(q)?q={start:q.selectionStart,end:q.selectionEnd}:(q=(q.ownerDocument&&q.ownerDocument.defaultView||window).getSelection(),q={anchorNode:q.anchorNode,anchorOffset:q.anchorOffset,focusNode:q.focusNode,focusOffset:q.focusOffset}),ns&&At(ns,q)||(ns=q,q=nc(Pu,"onSelect"),0<q.length&&(P=new zl("onSelect","select",null,P,F),M.push({event:P,listeners:q}),P.target=Cs)))}function Rr(M,P){var F={};return F[M.toLowerCase()]=P.toLowerCase(),F["Webkit"+M]="webkit"+P,F["Moz"+M]="moz"+P,F}var oa={animationend:Rr("Animation","AnimationEnd"),animationiteration:Rr("Animation","AnimationIteration"),animationstart:Rr("Animation","AnimationStart"),transitionend:Rr("Transition","TransitionEnd")},Ql={},Va={};S&&(Va=document.createElement("div").style,"AnimationEvent"in window||(delete oa.animationend.animation,delete oa.animationiteration.animation,delete oa.animationstart.animation),"TransitionEvent"in window||delete oa.transitionend.transition);function Xl(M){if(Ql[M])return Ql[M];if(!oa[M])return M;var P=oa[M],F;for(F in P)if(P.hasOwnProperty(F)&&F in Va)return Ql[M]=P[F];return M}var ip=Xl("animationend"),ap=Xl("animationiteration"),Wa=Xl("animationstart"),ws=Xl("transitionend"),qa=new Map,Ru="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Ho(M,P){qa.set(M,P),E(P,[M])}for(var Zl=0;Zl<Ru.length;Zl++){var ec=Ru[Zl],tc=ec.toLowerCase(),lp=ec[0].toUpperCase()+ec.slice(1);Ho(tc,"on"+lp)}Ho(ip,"onAnimationEnd"),Ho(ap,"onAnimationIteration"),Ho(Wa,"onAnimationStart"),Ho("dblclick","onDoubleClick"),Ho("focusin","onFocus"),Ho("focusout","onBlur"),Ho(ws,"onTransitionEnd"),v("onMouseEnter",["mouseout","mouseover"]),v("onMouseLeave",["mouseout","mouseover"]),v("onPointerEnter",["pointerout","pointerover"]),v("onPointerLeave",["pointerout","pointerover"]),E("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),E("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),E("onBeforeInput",["compositionend","keypress","textInput","paste"]),E("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),E("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),E("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Ms="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Si=new Set("cancel close invalid load scroll toggle".split(" ").concat(Ms));function Ka(M,P,F){var q=M.type||"unknown-event";M.currentTarget=F,No(q,P,void 0,M),M.currentTarget=null}function cp(M,P){P=(P&4)!==0;for(var F=0;F<M.length;F++){var q=M[F],le=q.event;q=q.listeners;e:{var xe=void 0;if(P)for(var we=q.length-1;0<=we;we--){var Ae=q[we],ze=Ae.instance,ct=Ae.currentTarget;if(Ae=Ae.listener,ze!==xe&&le.isPropagationStopped())break e;Ka(le,Ae,ct),xe=ze}else for(we=0;we<q.length;we++){if(Ae=q[we],ze=Ae.instance,ct=Ae.currentTarget,Ae=Ae.listener,ze!==xe&&le.isPropagationStopped())break e;Ka(le,Ae,ct),xe=ze}}}if(En)throw M=xo,En=!1,xo=null,M}function Hr(M,P){var F=P[ic];F===void 0&&(F=P[ic]=new Set);var q=M+"__bubble";F.has(q)||(rc(P,M,2,!1),F.add(q))}function $u(M,P,F){var q=0;P&&(q|=4),rc(F,M,q,P)}var Ci="_reactListening"+Math.random().toString(36).slice(2);function Ws(M){if(!M[Ci]){M[Ci]=!0,x.forEach(function(F){F!=="selectionchange"&&(Si.has(F)||$u(F,!1,M),$u(F,!0,M))});var P=M.nodeType===9?M:M.ownerDocument;P===null||P[Ci]||(P[Ci]=!0,$u("selectionchange",!1,P))}}function rc(M,P,F,q){switch(Gd(P)){case 1:var le=ff;break;case 4:le=mf;break;default:le=pu}F=le.bind(null,P,F,M),le=void 0,!wr||P!=="touchstart"&&P!=="touchmove"&&P!=="wheel"||(le=!0),q?le!==void 0?M.addEventListener(P,F,{capture:!0,passive:le}):M.addEventListener(P,F,!0):le!==void 0?M.addEventListener(P,F,{passive:le}):M.addEventListener(P,F,!1)}function Iu(M,P,F,q,le){var xe=q;if((P&1)===0&&(P&2)===0&&q!==null)e:for(;;){if(q===null)return;var we=q.tag;if(we===3||we===4){var Ae=q.stateNode.containerInfo;if(Ae===le||Ae.nodeType===8&&Ae.parentNode===le)break;if(we===4)for(we=q.return;we!==null;){var ze=we.tag;if((ze===3||ze===4)&&(ze=we.stateNode.containerInfo,ze===le||ze.nodeType===8&&ze.parentNode===le))return;we=we.return}for(;Ae!==null;){if(we=as(Ae),we===null)return;if(ze=we.tag,ze===5||ze===6){q=xe=we;continue e}Ae=Ae.parentNode}}q=q.return}Pn(function(){var ct=xe,Mt=lr(F),Rt=[];e:{var wt=qa.get(M);if(wt!==void 0){var Ot=zl,Nt=M;switch(M){case"keypress":if(Ji(F)===0)break e;case"keydown":case"keyup":Ot=Kd;break;case"focusin":Nt="focus",Ot=Nr;break;case"focusout":Nt="blur",Ot=Nr;break;case"beforeblur":case"afterblur":Ot=Nr;break;case"click":if(F.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":Ot=_u;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":Ot=Ul;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":Ot=_f;break;case ip:case ap:case Wa:Ot=vu;break;case ws:Ot=wu;break;case"scroll":Ot=Ud;break;case"wheel":Ot=Qd;break;case"copy":case"cut":case"paste":Ot=bu;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":Ot=Wl}var Ht=(P&4)!==0,tn=!Ht&&M==="scroll",Ze=Ht?wt!==null?wt+"Capture":null:wt;Ht=[];for(var We=ct,nt;We!==null;){nt=We;var kt=nt.stateNode;if(nt.tag===5&&kt!==null&&(nt=kt,Ze!==null&&(kt=Fr(We,Ze),kt!=null&&Ht.push(sa(We,kt,nt)))),tn)break;We=We.return}0<Ht.length&&(wt=new Ot(wt,Nt,null,F,Mt),Rt.push({event:wt,listeners:Ht}))}}if((P&7)===0){e:{if(wt=M==="mouseover"||M==="pointerover",Ot=M==="mouseout"||M==="pointerout",wt&&F!==Zt&&(Nt=F.relatedTarget||F.fromElement)&&(as(Nt)||Nt[co]))break e;if((Ot||wt)&&(wt=Mt.window===Mt?Mt:(wt=Mt.ownerDocument)?wt.defaultView||wt.parentWindow:window,Ot?(Nt=F.relatedTarget||F.toElement,Ot=ct,Nt=Nt?as(Nt):null,Nt!==null&&(tn=ut(Nt),Nt!==tn||Nt.tag!==5&&Nt.tag!==6)&&(Nt=null)):(Ot=null,Nt=ct),Ot!==Nt)){if(Ht=_u,kt="onMouseLeave",Ze="onMouseEnter",We="mouse",(M==="pointerout"||M==="pointerover")&&(Ht=Wl,kt="onPointerLeave",Ze="onPointerEnter",We="pointer"),tn=Ot==null?wt:pr(Ot),nt=Nt==null?wt:pr(Nt),wt=new Ht(kt,We+"leave",Ot,F,Mt),wt.target=tn,wt.relatedTarget=nt,kt=null,as(Mt)===ct&&(Ht=new Ht(Ze,We+"enter",Nt,F,Mt),Ht.target=nt,Ht.relatedTarget=tn,kt=Ht),tn=kt,Ot&&Nt)t:{for(Ht=Ot,Ze=Nt,We=0,nt=Ht;nt;nt=ia(nt))We++;for(nt=0,kt=Ze;kt;kt=ia(kt))nt++;for(;0<We-nt;)Ht=ia(Ht),We--;for(;0<nt-We;)Ze=ia(Ze),nt--;for(;We--;){if(Ht===Ze||Ze!==null&&Ht===Ze.alternate)break t;Ht=ia(Ht),Ze=ia(Ze)}Ht=null}else Ht=null;Ot!==null&&ln(Rt,wt,Ot,Ht,!1),Nt!==null&&tn!==null&&ln(Rt,tn,Nt,Ht,!0)}}e:{if(wt=ct?pr(ct):window,Ot=wt.nodeName&&wt.nodeName.toLowerCase(),Ot==="select"||Ot==="input"&&wt.type==="file")var Bt=Sf;else if(ql(wt))if(Ei)Bt=qe;else{Bt=wf;var Qt=Cf}else(Ot=wt.nodeName)&&Ot.toLowerCase()==="input"&&(wt.type==="checkbox"||wt.type==="radio")&&(Bt=ra);if(Bt&&(Bt=Bt(M,ct))){Tu(Rt,Bt,F,Mt);break e}Qt&&Qt(M,wt,ct),M==="focusout"&&(Qt=wt._wrapperState)&&Qt.controlled&&wt.type==="number"&&ot(wt,"number",wt.value)}switch(Qt=ct?pr(ct):window,M){case"focusin":(ql(Qt)||Qt.contentEditable==="true")&&(Cs=Qt,Pu=ct,ns=null);break;case"focusout":ns=Pu=Cs=null;break;case"mousedown":na=!0;break;case"contextmenu":case"mouseup":case"dragend":na=!1,Ua(Rt,F,Mt);break;case"selectionchange":if(Eo)break;case"keydown":case"keyup":Ua(Rt,F,Mt)}var qt;if(za)e:{switch(M){case"compositionstart":var nr="onCompositionStart";break e;case"compositionend":nr="onCompositionEnd";break e;case"compositionupdate":nr="onCompositionUpdate";break e}nr=void 0}else Zi?tp(M,F)&&(nr="onCompositionEnd"):M==="keydown"&&F.keyCode===229&&(nr="onCompositionStart");nr&&(Mu&&F.locale!=="ko"&&(Zi||nr!=="onCompositionStart"?nr==="onCompositionEnd"&&Zi&&(qt=fu()):(Ur=Mt,Ba="value"in Ur?Ur.value:Ur.textContent,Zi=!0)),Qt=nc(ct,nr),0<Qt.length&&(nr=new Vd(nr,M,null,F,Mt),Rt.push({event:nr,listeners:Qt}),qt?nr.data=qt:(qt=rp(F),qt!==null&&(nr.data=qt)))),(qt=Xd?ea(M,F):vf(M,F))&&(ct=nc(ct,"onBeforeInput"),0<ct.length&&(Mt=new Vd("onBeforeInput","beforeinput",null,F,Mt),Rt.push({event:Mt,listeners:ct}),Mt.data=qt))}cp(Rt,P)})}function sa(M,P,F){return{instance:M,listener:P,currentTarget:F}}function nc(M,P){for(var F=P+"Capture",q=[];M!==null;){var le=M,xe=le.stateNode;le.tag===5&&xe!==null&&(le=xe,xe=Fr(M,F),xe!=null&&q.unshift(sa(M,xe,le)),xe=Fr(M,P),xe!=null&&q.push(sa(M,xe,le))),M=M.return}return q}function ia(M){if(M===null)return null;do M=M.return;while(M&&M.tag!==5);return M||null}function ln(M,P,F,q,le){for(var xe=P._reactName,we=[];F!==null&&F!==q;){var Ae=F,ze=Ae.alternate,ct=Ae.stateNode;if(ze!==null&&ze===q)break;Ae.tag===5&&ct!==null&&(Ae=ct,le?(ze=Fr(F,xe),ze!=null&&we.unshift(sa(F,ze,Ae))):le||(ze=Fr(F,xe),ze!=null&&we.push(sa(F,ze,Ae)))),F=F.return}we.length!==0&&M.push({event:P,listeners:we})}var $n=/\r\n?/g,Tf=/\u0000|\uFFFD/g;function up(M){return(typeof M=="string"?M:""+M).replace($n,`
30
30
  `).replace(Tf,"")}function Ja(M,P,F){if(P=up(P),up(M)!==P&&F)throw Error(g(425))}function oc(){}var Qa=null,wi=null;function Xa(M,P){return M==="textarea"||M==="noscript"||typeof P.children=="string"||typeof P.children=="number"||typeof P.dangerouslySetInnerHTML=="object"&&P.dangerouslySetInnerHTML!==null&&P.dangerouslySetInnerHTML.__html!=null}var qs=typeof setTimeout=="function"?setTimeout:void 0,Za=typeof clearTimeout=="function"?clearTimeout:void 0,aa=typeof Promise=="function"?Promise:void 0,sc=typeof queueMicrotask=="function"?queueMicrotask:typeof aa!="undefined"?function(M){return aa.resolve(null).then(M).catch(la)}:qs;function la(M){setTimeout(function(){throw M})}function Lu(M,P){var F=P,q=0;do{var le=F.nextSibling;if(M.removeChild(F),le&&le.nodeType===8)if(F=le.data,F==="/$"){if(q===0){M.removeChild(le),Ir(P);return}q--}else F!=="$"&&F!=="$?"&&F!=="$!"||q++;F=le}while(F);Ir(P)}function Ks(M){for(;M!=null;M=M.nextSibling){var P=M.nodeType;if(P===1||P===3)break;if(P===8){if(P=M.data,P==="$"||P==="$!"||P==="$?")break;if(P==="/$")return null}}return M}function dp(M){M=M.previousSibling;for(var P=0;M;){if(M.nodeType===8){var F=M.data;if(F==="$"||F==="$!"||F==="$?"){if(P===0)return M;P--}else F==="/$"&&P++}M=M.previousSibling}return null}var ua=Math.random().toString(36).slice(2),os="__reactFiber$"+ua,Js="__reactProps$"+ua,co="__reactContainer$"+ua,ic="__reactEvents$"+ua,Te="__reactListeners$"+ua,pa="__reactHandles$"+ua;function as(M){var P=M[os];if(P)return P;for(var F=M.parentNode;F;){if(P=F[co]||F[os]){if(F=P.alternate,P.child!==null||F!==null&&F.child!==null)for(M=dp(M);M!==null;){if(F=M[os])return F;M=dp(M)}return P}M=F,F=M.parentNode}return null}function In(M){return M=M[os]||M[co],!M||M.tag!==5&&M.tag!==6&&M.tag!==13&&M.tag!==3?null:M}function pr(M){if(M.tag===5||M.tag===6)return M.stateNode;throw Error(g(33))}function ac(M){return M[Js]||null}var Du=[],ma=-1;function Kn(M){return{current:M}}function Yr(M){0>ma||(M.current=Du[ma],Du[ma]=null,ma--)}function jr(M,P){ma++,Du[ma]=M.current,M.current=P}var Qs={},Ln=Kn(Qs),Jn=Kn(!1),Yn=Qs;function ha(M,P){var F=M.type.contextTypes;if(!F)return Qs;var q=M.stateNode;if(q&&q.__reactInternalMemoizedUnmaskedChildContext===P)return q.__reactInternalMemoizedMaskedChildContext;var le={},xe;for(xe in F)le[xe]=P[xe];return q&&(M=M.stateNode,M.__reactInternalMemoizedUnmaskedChildContext=P,M.__reactInternalMemoizedMaskedChildContext=le),le}function Qn(M){return M=M.childContextTypes,M!=null}function lc(){Yr(Jn),Yr(Ln)}function pp(M,P,F){if(Ln.current!==Qs)throw Error(g(168));jr(Ln,P),jr(Jn,F)}function fp(M,P,F){var q=M.stateNode;if(P=P.childContextTypes,typeof q.getChildContext!="function")return F;q=q.getChildContext();for(var le in q)if(!(le in P))throw Error(g(108,Me(M)||"Unknown",le));return pe({},F,q)}function So(M){return M=(M=M.stateNode)&&M.__reactInternalMemoizedMergedChildContext||Qs,Yn=Ln.current,jr(Ln,M),jr(Jn,Jn.current),!0}function mp(M,P,F){var q=M.stateNode;if(!q)throw Error(g(169));F?(M=fp(M,P,Yn),q.__reactInternalMemoizedMergedChildContext=M,Yr(Jn),Yr(Ln),jr(Ln,M)):Yr(Jn),jr(Jn,F)}var Ts=null,cc=!1,Au=!1;function hp(M){Ts===null?Ts=[M]:Ts.push(M)}function Mi(M){cc=!0,hp(M)}function Xs(){if(!Au&&Ts!==null){Au=!0;var M=0,P=kr;try{var F=Ts;for(kr=1;M<F.length;M++){var q=F[M];do q=q(!0);while(q!==null)}Ts=null,cc=!1}catch(le){throw Ts!==null&&(Ts=Ts.slice(M+1)),Er(iu,Xs),le}finally{kr=P,Au=!1}}return null}var xa=[],Dn=0,uc=null,dc=0,Co=[],wo=0,Ti=null,ls=1,us="";function Pi(M,P){xa[Dn++]=dc,xa[Dn++]=uc,uc=M,dc=P}function gp(M,P,F){Co[wo++]=ls,Co[wo++]=us,Co[wo++]=Ti,Ti=M;var q=ls;M=us;var le=32-jo(q)-1;q&=~(1<<le),F+=1;var xe=32-jo(P)+le;if(30<xe){var we=le-le%5;xe=(q&(1<<we)-1).toString(32),q>>=we,le-=we,ls=1<<32-jo(P)+le|F<<le|q,us=xe+M}else ls=1<<xe|F<<le|q,us=M}function tl(M){M.return!==null&&(Pi(M,1),gp(M,1,0))}function Ri(M){for(;M===uc;)uc=xa[--Dn],xa[Dn]=null,dc=xa[--Dn],xa[Dn]=null;for(;M===Ti;)Ti=Co[--wo],Co[wo]=null,us=Co[--wo],Co[wo]=null,ls=Co[--wo],Co[wo]=null}var An=null,uo=null,Br=!1,Yo=null;function ds(M,P){var F=Lo(5,null,null,0);F.elementType="DELETED",F.stateNode=P,F.return=M,P=M.deletions,P===null?(M.deletions=[F],M.flags|=16):P.push(F)}function pc(M,P){switch(M.tag){case 5:var F=M.type;return P=P.nodeType!==1||F.toLowerCase()!==P.nodeName.toLowerCase()?null:P,P!==null?(M.stateNode=P,An=M,uo=Ks(P.firstChild),!0):!1;case 6:return P=M.pendingProps===""||P.nodeType!==3?null:P,P!==null?(M.stateNode=P,An=M,uo=null,!0):!1;case 13:return P=P.nodeType!==8?null:P,P!==null?(F=Ti!==null?{id:ls,overflow:us}:null,M.memoizedState={dehydrated:P,treeContext:F,retryLane:1073741824},F=Lo(18,null,null,0),F.stateNode=P,F.return=M,M.child=F,An=M,uo=null,!0):!1;default:return!1}}function Ps(M){return(M.mode&1)!==0&&(M.flags&128)===0}function Xn(M){if(Br){var P=uo;if(P){var F=P;if(!pc(M,P)){if(Ps(M))throw Error(g(418));P=Ks(F.nextSibling);var q=An;P&&pc(M,P)?ds(q,F):(M.flags=M.flags&-4097|2,Br=!1,An=M)}}else{if(Ps(M))throw Error(g(418));M.flags=M.flags&-4097|2,Br=!1,An=M}}}function xp(M){for(M=M.return;M!==null&&M.tag!==5&&M.tag!==3&&M.tag!==13;)M=M.return;An=M}function rl(M){if(M!==An)return!1;if(!Br)return xp(M),Br=!0,!1;var P;if((P=M.tag!==3)&&!(P=M.tag!==5)&&(P=M.type,P=P!=="head"&&P!=="body"&&!Xa(M.type,M.memoizedProps)),P&&(P=uo)){if(Ps(M))throw Ou(),Error(g(418));for(;P;)ds(M,P),P=Ks(P.nextSibling)}if(xp(M),M.tag===13){if(M=M.memoizedState,M=M!==null?M.dehydrated:null,!M)throw Error(g(317));e:{for(M=M.nextSibling,P=0;M;){if(M.nodeType===8){var F=M.data;if(F==="/$"){if(P===0){uo=Ks(M.nextSibling);break e}P--}else F!=="$"&&F!=="$!"&&F!=="$?"||P++}M=M.nextSibling}uo=null}}else uo=An?Ks(M.stateNode.nextSibling):null;return!0}function Ou(){for(var M=uo;M;)M=Ks(M.nextSibling)}function ps(){uo=An=null,Br=!1}function fs(M){Yo===null?Yo=[M]:Yo.push(M)}var _p=B.ReactCurrentBatchConfig;function ol(M,P,F){if(M=F.ref,M!==null&&typeof M!="function"&&typeof M!="object"){if(F._owner){if(F=F._owner,F){if(F.tag!==1)throw Error(g(309));var q=F.stateNode}if(!q)throw Error(g(147,M));var le=q,xe=""+M;return P!==null&&P.ref!==null&&typeof P.ref=="function"&&P.ref._stringRef===xe?P.ref:(P=function(we){var Ae=le.refs;we===null?delete Ae[xe]:Ae[xe]=we},P._stringRef=xe,P)}if(typeof M!="string")throw Error(g(284));if(!F._owner)throw Error(g(290,M))}return M}function $i(M,P){throw M=Object.prototype.toString.call(P),Error(g(31,M==="[object Object]"?"object with keys {"+Object.keys(P).join(", ")+"}":M))}function yp(M){var P=M._init;return P(M._payload)}function Fu(M){function P(Ze,We){if(M){var nt=Ze.deletions;nt===null?(Ze.deletions=[We],Ze.flags|=16):nt.push(We)}}function F(Ze,We){if(!M)return null;for(;We!==null;)P(Ze,We),We=We.sibling;return null}function q(Ze,We){for(Ze=new Map;We!==null;)We.key!==null?Ze.set(We.key,We):Ze.set(We.index,We),We=We.sibling;return Ze}function le(Ze,We){return Ze=qo(Ze,We),Ze.index=0,Ze.sibling=null,Ze}function xe(Ze,We,nt){return Ze.index=nt,M?(nt=Ze.alternate,nt!==null?(nt=nt.index,nt<We?(Ze.flags|=2,We):nt):(Ze.flags|=2,We)):(Ze.flags|=1048576,We)}function we(Ze){return M&&Ze.alternate===null&&(Ze.flags|=2),Ze}function Ae(Ze,We,nt,kt){return We===null||We.tag!==6?(We=Td(nt,Ze.mode,kt),We.return=Ze,We):(We=le(We,nt),We.return=Ze,We)}function ze(Ze,We,nt,kt){var Bt=nt.type;return Bt===V?Mt(Ze,We,nt.props.children,kt,nt.key):We!==null&&(We.elementType===Bt||typeof Bt=="object"&&Bt!==null&&Bt.$$typeof===ce&&yp(Bt)===We.type)?(kt=le(We,nt.props),kt.ref=ol(Ze,We,nt),kt.return=Ze,kt):(kt=Wc(nt.type,nt.key,nt.props,null,Ze.mode,kt),kt.ref=ol(Ze,We,nt),kt.return=Ze,kt)}function ct(Ze,We,nt,kt){return We===null||We.tag!==4||We.stateNode.containerInfo!==nt.containerInfo||We.stateNode.implementation!==nt.implementation?(We=Pd(nt,Ze.mode,kt),We.return=Ze,We):(We=le(We,nt.children||[]),We.return=Ze,We)}function Mt(Ze,We,nt,kt,Bt){return We===null||We.tag!==7?(We=Yi(nt,Ze.mode,kt,Bt),We.return=Ze,We):(We=le(We,nt),We.return=Ze,We)}function Rt(Ze,We,nt){if(typeof We=="string"&&We!==""||typeof We=="number")return We=Td(""+We,Ze.mode,nt),We.return=Ze,We;if(typeof We=="object"&&We!==null){switch(We.$$typeof){case U:return nt=Wc(We.type,We.key,We.props,null,Ze.mode,nt),nt.ref=ol(Ze,null,We),nt.return=Ze,nt;case W:return We=Pd(We,Ze.mode,nt),We.return=Ze,We;case ce:var kt=We._init;return Rt(Ze,kt(We._payload),nt)}if(ke(We)||ue(We))return We=Yi(We,Ze.mode,nt,null),We.return=Ze,We;$i(Ze,We)}return null}function wt(Ze,We,nt,kt){var Bt=We!==null?We.key:null;if(typeof nt=="string"&&nt!==""||typeof nt=="number")return Bt!==null?null:Ae(Ze,We,""+nt,kt);if(typeof nt=="object"&&nt!==null){switch(nt.$$typeof){case U:return nt.key===Bt?ze(Ze,We,nt,kt):null;case W:return nt.key===Bt?ct(Ze,We,nt,kt):null;case ce:return Bt=nt._init,wt(Ze,We,Bt(nt._payload),kt)}if(ke(nt)||ue(nt))return Bt!==null?null:Mt(Ze,We,nt,kt,null);$i(Ze,nt)}return null}function Ot(Ze,We,nt,kt,Bt){if(typeof kt=="string"&&kt!==""||typeof kt=="number")return Ze=Ze.get(nt)||null,Ae(We,Ze,""+kt,Bt);if(typeof kt=="object"&&kt!==null){switch(kt.$$typeof){case U:return Ze=Ze.get(kt.key===null?nt:kt.key)||null,ze(We,Ze,kt,Bt);case W:return Ze=Ze.get(kt.key===null?nt:kt.key)||null,ct(We,Ze,kt,Bt);case ce:var Qt=kt._init;return Ot(Ze,We,nt,Qt(kt._payload),Bt)}if(ke(kt)||ue(kt))return Ze=Ze.get(nt)||null,Mt(We,Ze,kt,Bt,null);$i(We,kt)}return null}function Nt(Ze,We,nt,kt){for(var Bt=null,Qt=null,qt=We,nr=We=0,_n=null;qt!==null&&nr<nt.length;nr++){qt.index>nr?(_n=qt,qt=null):_n=qt.sibling;var $r=wt(Ze,qt,nt[nr],kt);if($r===null){qt===null&&(qt=_n);break}M&&qt&&$r.alternate===null&&P(Ze,qt),We=xe($r,We,nr),Qt===null?Bt=$r:Qt.sibling=$r,Qt=$r,qt=_n}if(nr===nt.length)return F(Ze,qt),Br&&Pi(Ze,nr),Bt;if(qt===null){for(;nr<nt.length;nr++)qt=Rt(Ze,nt[nr],kt),qt!==null&&(We=xe(qt,We,nr),Qt===null?Bt=qt:Qt.sibling=qt,Qt=qt);return Br&&Pi(Ze,nr),Bt}for(qt=q(Ze,qt);nr<nt.length;nr++)_n=Ot(qt,Ze,nr,nt[nr],kt),_n!==null&&(M&&_n.alternate!==null&&qt.delete(_n.key===null?nr:_n.key),We=xe(_n,We,nr),Qt===null?Bt=_n:Qt.sibling=_n,Qt=_n);return M&&qt.forEach(function(di){return P(Ze,di)}),Br&&Pi(Ze,nr),Bt}function Ht(Ze,We,nt,kt){var Bt=ue(nt);if(typeof Bt!="function")throw Error(g(150));if(nt=Bt.call(nt),nt==null)throw Error(g(151));for(var Qt=Bt=null,qt=We,nr=We=0,_n=null,$r=nt.next();qt!==null&&!$r.done;nr++,$r=nt.next()){qt.index>nr?(_n=qt,qt=null):_n=qt.sibling;var di=wt(Ze,qt,$r.value,kt);if(di===null){qt===null&&(qt=_n);break}M&&qt&&di.alternate===null&&P(Ze,qt),We=xe(di,We,nr),Qt===null?Bt=di:Qt.sibling=di,Qt=di,qt=_n}if($r.done)return F(Ze,qt),Br&&Pi(Ze,nr),Bt;if(qt===null){for(;!$r.done;nr++,$r=nt.next())$r=Rt(Ze,$r.value,kt),$r!==null&&(We=xe($r,We,nr),Qt===null?Bt=$r:Qt.sibling=$r,Qt=$r);return Br&&Pi(Ze,nr),Bt}for(qt=q(Ze,qt);!$r.done;nr++,$r=nt.next())$r=Ot(qt,Ze,nr,$r.value,kt),$r!==null&&(M&&$r.alternate!==null&&qt.delete($r.key===null?nr:$r.key),We=xe($r,We,nr),Qt===null?Bt=$r:Qt.sibling=$r,Qt=$r);return M&&qt.forEach(function(qf){return P(Ze,qf)}),Br&&Pi(Ze,nr),Bt}function tn(Ze,We,nt,kt){if(typeof nt=="object"&&nt!==null&&nt.type===V&&nt.key===null&&(nt=nt.props.children),typeof nt=="object"&&nt!==null){switch(nt.$$typeof){case U:e:{for(var Bt=nt.key,Qt=We;Qt!==null;){if(Qt.key===Bt){if(Bt=nt.type,Bt===V){if(Qt.tag===7){F(Ze,Qt.sibling),We=le(Qt,nt.props.children),We.return=Ze,Ze=We;break e}}else if(Qt.elementType===Bt||typeof Bt=="object"&&Bt!==null&&Bt.$$typeof===ce&&yp(Bt)===Qt.type){F(Ze,Qt.sibling),We=le(Qt,nt.props),We.ref=ol(Ze,Qt,nt),We.return=Ze,Ze=We;break e}F(Ze,Qt);break}else P(Ze,Qt);Qt=Qt.sibling}nt.type===V?(We=Yi(nt.props.children,Ze.mode,kt,nt.key),We.return=Ze,Ze=We):(kt=Wc(nt.type,nt.key,nt.props,null,Ze.mode,kt),kt.ref=ol(Ze,We,nt),kt.return=Ze,Ze=kt)}return we(Ze);case W:e:{for(Qt=nt.key;We!==null;){if(We.key===Qt)if(We.tag===4&&We.stateNode.containerInfo===nt.containerInfo&&We.stateNode.implementation===nt.implementation){F(Ze,We.sibling),We=le(We,nt.children||[]),We.return=Ze,Ze=We;break e}else{F(Ze,We);break}else P(Ze,We);We=We.sibling}We=Pd(nt,Ze.mode,kt),We.return=Ze,Ze=We}return we(Ze);case ce:return Qt=nt._init,tn(Ze,We,Qt(nt._payload),kt)}if(ke(nt))return Nt(Ze,We,nt,kt);if(ue(nt))return Ht(Ze,We,nt,kt);$i(Ze,nt)}return typeof nt=="string"&&nt!==""||typeof nt=="number"?(nt=""+nt,We!==null&&We.tag===6?(F(Ze,We.sibling),We=le(We,nt),We.return=Ze,Ze=We):(F(Ze,We),We=Td(nt,Ze.mode,kt),We.return=Ze,Ze=We),we(Ze)):F(Ze,We)}return tn}var Xr=Fu(!0),fc=Fu(!1),il=Kn(null),po=null,Zs=null,_a=null;function Rs(){_a=Zs=po=null}function mc(M){var P=il.current;Yr(il),M._currentValue=P}function Sn(M,P,F){for(;M!==null;){var q=M.alternate;if((M.childLanes&P)!==P?(M.childLanes|=P,q!==null&&(q.childLanes|=P)):q!==null&&(q.childLanes&P)!==P&&(q.childLanes|=P),M===F)break;M=M.return}}function ei(M,P){po=M,_a=Zs=null,M=M.dependencies,M!==null&&M.firstContext!==null&&((M.lanes&P)!==0&&(zn=!0),M.firstContext=null)}function Mo(M){var P=M._currentValue;if(_a!==M)if(M={context:M,memoizedValue:P,next:null},Zs===null){if(po===null)throw Error(g(308));Zs=M,po.dependencies={lanes:0,firstContext:M}}else Zs=Zs.next=M;return P}var ki=null;function Nu(M){ki===null?ki=[M]:ki.push(M)}function hc(M,P,F,q){var le=P.interleaved;return le===null?(F.next=F,Nu(P)):(F.next=le.next,le.next=F),P.interleaved=F,$s(M,q)}function $s(M,P){M.lanes|=P;var F=M.alternate;for(F!==null&&(F.lanes|=P),F=M,M=M.return;M!==null;)M.childLanes|=P,F=M.alternate,F!==null&&(F.childLanes|=P),F=M,M=M.return;return F.tag===3?F.stateNode:null}var To=!1;function gc(M){M.updateQueue={baseState:M.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function vp(M,P){M=M.updateQueue,P.updateQueue===M&&(P.updateQueue={baseState:M.baseState,firstBaseUpdate:M.firstBaseUpdate,lastBaseUpdate:M.lastBaseUpdate,shared:M.shared,effects:M.effects})}function ks(M,P){return{eventTime:M,lane:P,tag:0,payload:null,callback:null,next:null}}function Po(M,P,F){var q=M.updateQueue;if(q===null)return null;if(q=q.shared,(Mr&2)!==0){var le=q.pending;return le===null?P.next=P:(P.next=le.next,le.next=P),q.pending=P,$s(M,F)}return le=q.interleaved,le===null?(P.next=P,Nu(q)):(P.next=le.next,le.next=P),q.interleaved=P,$s(M,F)}function xc(M,P,F){if(P=P.updateQueue,P!==null&&(P=P.shared,(F&4194240)!==0)){var q=P.lanes;q&=M.pendingLanes,F|=q,P.lanes=F,Na(M,F)}}function bp(M,P){var F=M.updateQueue,q=M.alternate;if(q!==null&&(q=q.updateQueue,F===q)){var le=null,xe=null;if(F=F.firstBaseUpdate,F!==null){do{var we={eventTime:F.eventTime,lane:F.lane,tag:F.tag,payload:F.payload,callback:F.callback,next:null};xe===null?le=xe=we:xe=xe.next=we,F=F.next}while(F!==null);xe===null?le=xe=P:xe=xe.next=P}else le=xe=P;F={baseState:q.baseState,firstBaseUpdate:le,lastBaseUpdate:xe,shared:q.shared,effects:q.effects},M.updateQueue=F;return}M=F.lastBaseUpdate,M===null?F.firstBaseUpdate=P:M.next=P,F.lastBaseUpdate=P}function ya(M,P,F,q){var le=M.updateQueue;To=!1;var xe=le.firstBaseUpdate,we=le.lastBaseUpdate,Ae=le.shared.pending;if(Ae!==null){le.shared.pending=null;var ze=Ae,ct=ze.next;ze.next=null,we===null?xe=ct:we.next=ct,we=ze;var Mt=M.alternate;Mt!==null&&(Mt=Mt.updateQueue,Ae=Mt.lastBaseUpdate,Ae!==we&&(Ae===null?Mt.firstBaseUpdate=ct:Ae.next=ct,Mt.lastBaseUpdate=ze))}if(xe!==null){var Rt=le.baseState;we=0,Mt=ct=ze=null,Ae=xe;do{var wt=Ae.lane,Ot=Ae.eventTime;if((q&wt)===wt){Mt!==null&&(Mt=Mt.next={eventTime:Ot,lane:0,tag:Ae.tag,payload:Ae.payload,callback:Ae.callback,next:null});e:{var Nt=M,Ht=Ae;switch(wt=P,Ot=F,Ht.tag){case 1:if(Nt=Ht.payload,typeof Nt=="function"){Rt=Nt.call(Ot,Rt,wt);break e}Rt=Nt;break e;case 3:Nt.flags=Nt.flags&-65537|128;case 0:if(Nt=Ht.payload,wt=typeof Nt=="function"?Nt.call(Ot,Rt,wt):Nt,wt==null)break e;Rt=pe({},Rt,wt);break e;case 2:To=!0}}Ae.callback!==null&&Ae.lane!==0&&(M.flags|=64,wt=le.effects,wt===null?le.effects=[Ae]:wt.push(Ae))}else Ot={eventTime:Ot,lane:wt,tag:Ae.tag,payload:Ae.payload,callback:Ae.callback,next:null},Mt===null?(ct=Mt=Ot,ze=Rt):Mt=Mt.next=Ot,we|=wt;if(Ae=Ae.next,Ae===null){if(Ae=le.shared.pending,Ae===null)break;wt=Ae,Ae=wt.next,wt.next=null,le.lastBaseUpdate=wt,le.shared.pending=null}}while(!0);if(Mt===null&&(ze=Rt),le.baseState=ze,le.firstBaseUpdate=ct,le.lastBaseUpdate=Mt,P=le.shared.interleaved,P!==null){le=P;do we|=le.lane,le=le.next;while(le!==P)}else xe===null&&(le.shared.lanes=0);ii|=we,M.lanes=we,M.memoizedState=Rt}}function ju(M,P,F){if(M=P.effects,P.effects=null,M!==null)for(P=0;P<M.length;P++){var q=M[P],le=q.callback;if(le!==null){if(q.callback=null,q=F,typeof le!="function")throw Error(g(191,le));le.call(q)}}}var al={},hs=Kn(al),ll=Kn(al),va=Kn(al);function Is(M){if(M===al)throw Error(g(174));return M}function Hu(M,P){switch(jr(va,P),jr(ll,M),jr(hs,al),M=P.nodeType,M){case 9:case 11:P=(P=P.documentElement)?P.namespaceURI:gt(null,"");break;default:M=M===8?P.parentNode:P,P=M.namespaceURI||null,M=M.tagName,P=gt(P,M)}Yr(hs),jr(hs,P)}function ti(){Yr(hs),Yr(ll),Yr(va)}function Yu(M){Is(va.current);var P=Is(hs.current),F=gt(P,M.type);P!==F&&(jr(ll,M),jr(hs,F))}function _c(M){ll.current===M&&(Yr(hs),Yr(ll))}var Vr=Kn(0);function Ii(M){for(var P=M;P!==null;){if(P.tag===13){var F=P.memoizedState;if(F!==null&&(F=F.dehydrated,F===null||F.data==="$?"||F.data==="$!"))return P}else if(P.tag===19&&P.memoizedProps.revealOrder!==void 0){if((P.flags&128)!==0)return P}else if(P.child!==null){P.child.return=P,P=P.child;continue}if(P===M)break;for(;P.sibling===null;){if(P.return===null||P.return===M)return null;P=P.return}P.sibling.return=P.return,P=P.sibling}return null}var Bu=[];function yc(){for(var M=0;M<Bu.length;M++)Bu[M]._workInProgressVersionPrimary=null;Bu.length=0}var cl=B.ReactCurrentDispatcher,zu=B.ReactCurrentBatchConfig,ri=0,Kr=null,Zr=null,dn=null,ba=!1,ul=!1,Li=0,_r=0;function On(){throw Error(g(321))}function Gu(M,P){if(P===null)return!1;for(var F=0;F<P.length&&F<M.length;F++)if(!at(M[F],P[F]))return!1;return!0}function Di(M,P,F,q,le,xe){if(ri=xe,Kr=P,P.memoizedState=null,P.updateQueue=null,P.lanes=0,cl.current=M===null||M.memoizedState===null?Rf:Mc,M=F(q,le),ul){xe=0;do{if(ul=!1,Li=0,25<=xe)throw Error(g(301));xe+=1,dn=Zr=null,P.updateQueue=null,cl.current=wa,M=F(q,le)}while(ul)}if(cl.current=wc,P=Zr!==null&&Zr.next!==null,ri=0,dn=Zr=Kr=null,ba=!1,P)throw Error(g(300));return M}function vc(){var M=Li!==0;return Li=0,M}function gs(){var M={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return dn===null?Kr.memoizedState=dn=M:dn=dn.next=M,dn}function Ro(){if(Zr===null){var M=Kr.alternate;M=M!==null?M.memoizedState:null}else M=Zr.next;var P=dn===null?Kr.memoizedState:dn.next;if(P!==null)dn=P,Zr=M;else{if(M===null)throw Error(g(310));Zr=M,M={memoizedState:Zr.memoizedState,baseState:Zr.baseState,baseQueue:Zr.baseQueue,queue:Zr.queue,next:null},dn===null?Kr.memoizedState=dn=M:dn=dn.next=M}return dn}function Fn(M,P){return typeof P=="function"?P(M):P}function Uu(M){var P=Ro(),F=P.queue;if(F===null)throw Error(g(311));F.lastRenderedReducer=M;var q=Zr,le=q.baseQueue,xe=F.pending;if(xe!==null){if(le!==null){var we=le.next;le.next=xe.next,xe.next=we}q.baseQueue=le=xe,F.pending=null}if(le!==null){xe=le.next,q=q.baseState;var Ae=we=null,ze=null,ct=xe;do{var Mt=ct.lane;if((ri&Mt)===Mt)ze!==null&&(ze=ze.next={lane:0,action:ct.action,hasEagerState:ct.hasEagerState,eagerState:ct.eagerState,next:null}),q=ct.hasEagerState?ct.eagerState:M(q,ct.action);else{var Rt={lane:Mt,action:ct.action,hasEagerState:ct.hasEagerState,eagerState:ct.eagerState,next:null};ze===null?(Ae=ze=Rt,we=q):ze=ze.next=Rt,Kr.lanes|=Mt,ii|=Mt}ct=ct.next}while(ct!==null&&ct!==xe);ze===null?we=q:ze.next=Ae,at(q,P.memoizedState)||(zn=!0),P.memoizedState=q,P.baseState=we,P.baseQueue=ze,F.lastRenderedState=q}if(M=F.interleaved,M!==null){le=M;do xe=le.lane,Kr.lanes|=xe,ii|=xe,le=le.next;while(le!==M)}else le===null&&(F.lanes=0);return[P.memoizedState,F.dispatch]}function Ea(M){var P=Ro(),F=P.queue;if(F===null)throw Error(g(311));F.lastRenderedReducer=M;var q=F.dispatch,le=F.pending,xe=P.memoizedState;if(le!==null){F.pending=null;var we=le=le.next;do xe=M(xe,we.action),we=we.next;while(we!==le);at(xe,P.memoizedState)||(zn=!0),P.memoizedState=xe,P.baseQueue===null&&(P.baseState=xe),F.lastRenderedState=xe}return[xe,q]}function bc(){}function Vu(M,P){var F=Kr,q=Ro(),le=P(),xe=!at(q.memoizedState,le);if(xe&&(q.memoizedState=le,zn=!0),q=q.queue,xs(Ls.bind(null,F,q,M),[M]),q.getSnapshot!==P||xe||dn!==null&&dn.memoizedState.tag&1){if(F.flags|=2048,Sa(9,Zn.bind(null,F,q,le,P),void 0,null),xn===null)throw Error(g(349));(ri&30)!==0||Wu(F,P,le)}return le}function Wu(M,P,F){M.flags|=16384,M={getSnapshot:P,value:F},P=Kr.updateQueue,P===null?(P={lastEffect:null,stores:null},Kr.updateQueue=P,P.stores=[M]):(F=P.stores,F===null?P.stores=[M]:F.push(M))}function Zn(M,P,F,q){P.value=F,P.getSnapshot=q,Ec(P)&&qu(M)}function Ls(M,P,F){return F(function(){Ec(P)&&qu(M)})}function Ec(M){var P=M.getSnapshot;M=M.value;try{var F=P();return!at(M,F)}catch(q){return!0}}function qu(M){var P=$s(M,1);P!==null&&Wo(P,M,1,-1)}function dl(M){var P=gs();return typeof M=="function"&&(M=M()),P.memoizedState=P.baseState=M,M={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Fn,lastRenderedState:M},P.queue=M,M=M.dispatch=Tp.bind(null,Kr,M),[P.memoizedState,M]}function Sa(M,P,F,q){return M={tag:M,create:P,destroy:F,deps:q,next:null},P=Kr.updateQueue,P===null?(P={lastEffect:null,stores:null},Kr.updateQueue=P,P.lastEffect=M.next=M):(F=P.lastEffect,F===null?P.lastEffect=M.next=M:(q=F.next,F.next=M,M.next=q,P.lastEffect=M)),M}function Sc(){return Ro().memoizedState}function fl(M,P,F,q){var le=gs();Kr.flags|=M,le.memoizedState=Sa(1|P,F,void 0,q===void 0?null:q)}function Ca(M,P,F,q){var le=Ro();q=q===void 0?null:q;var xe=void 0;if(Zr!==null){var we=Zr.memoizedState;if(xe=we.destroy,q!==null&&Gu(q,we.deps)){le.memoizedState=Sa(P,F,xe,q);return}}Kr.flags|=M,le.memoizedState=Sa(1|P,F,xe,q)}function Cc(M,P){return fl(8390656,8,M,P)}function xs(M,P){return Ca(2048,8,M,P)}function Ep(M,P){return Ca(4,2,M,P)}function Ds(M,P){return Ca(4,4,M,P)}function Ku(M,P){if(typeof P=="function")return M=M(),P(M),function(){P(null)};if(P!=null)return M=M(),P.current=M,function(){P.current=null}}function Ju(M,P,F){return F=F!=null?F.concat([M]):null,Ca(4,4,Ku.bind(null,P,M),F)}function hl(){}function Sp(M,P){var F=Ro();P=P===void 0?null:P;var q=F.memoizedState;return q!==null&&P!==null&&Gu(P,q[1])?q[0]:(F.memoizedState=[M,P],M)}function Cp(M,P){var F=Ro();P=P===void 0?null:P;var q=F.memoizedState;return q!==null&&P!==null&&Gu(P,q[1])?q[0]:(M=M(),F.memoizedState=[M,P],M)}function wp(M,P,F){return(ri&21)===0?(M.baseState&&(M.baseState=!1,zn=!0),M.memoizedState=F):(at(F,P)||(F=lu(),Kr.lanes|=F,ii|=F,M.baseState=!0),P)}function Mp(M,P){var F=kr;kr=F!==0&&4>F?F:4,M(!0);var q=zu.transition;zu.transition={};try{M(!1),P()}finally{kr=F,zu.transition=q}}function Qu(){return Ro().memoizedState}function Pf(M,P,F){var q=ci(M);if(F={lane:q,action:F,hasEagerState:!1,eagerState:null,next:null},Xu(M))Bn(P,F);else if(F=hc(M,P,F,q),F!==null){var le=Vn();Wo(F,M,q,le),Bo(F,P,q)}}function Tp(M,P,F){var q=ci(M),le={lane:q,action:F,hasEagerState:!1,eagerState:null,next:null};if(Xu(M))Bn(P,le);else{var xe=M.alternate;if(M.lanes===0&&(xe===null||xe.lanes===0)&&(xe=P.lastRenderedReducer,xe!==null))try{var we=P.lastRenderedState,Ae=xe(we,F);if(le.hasEagerState=!0,le.eagerState=Ae,at(Ae,we)){var ze=P.interleaved;ze===null?(le.next=le,Nu(P)):(le.next=ze.next,ze.next=le),P.interleaved=le;return}}catch(ct){}finally{}F=hc(M,P,le,q),F!==null&&(le=Vn(),Wo(F,M,q,le),Bo(F,P,q))}}function Xu(M){var P=M.alternate;return M===Kr||P!==null&&P===Kr}function Bn(M,P){ul=ba=!0;var F=M.pending;F===null?P.next=P:(P.next=F.next,F.next=P),M.pending=P}function Bo(M,P,F){if((F&4194240)!==0){var q=P.lanes;q&=M.pendingLanes,F|=q,P.lanes=F,Na(M,F)}}var wc={readContext:Mo,useCallback:On,useContext:On,useEffect:On,useImperativeHandle:On,useInsertionEffect:On,useLayoutEffect:On,useMemo:On,useReducer:On,useRef:On,useState:On,useDebugValue:On,useDeferredValue:On,useTransition:On,useMutableSource:On,useSyncExternalStore:On,useId:On,unstable_isNewReconciler:!1},Rf={readContext:Mo,useCallback:function(M,P){return gs().memoizedState=[M,P===void 0?null:P],M},useContext:Mo,useEffect:Cc,useImperativeHandle:function(M,P,F){return F=F!=null?F.concat([M]):null,fl(4194308,4,Ku.bind(null,P,M),F)},useLayoutEffect:function(M,P){return fl(4194308,4,M,P)},useInsertionEffect:function(M,P){return fl(4,2,M,P)},useMemo:function(M,P){var F=gs();return P=P===void 0?null:P,M=M(),F.memoizedState=[M,P],M},useReducer:function(M,P,F){var q=gs();return P=F!==void 0?F(P):P,q.memoizedState=q.baseState=P,M={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:M,lastRenderedState:P},q.queue=M,M=M.dispatch=Pf.bind(null,Kr,M),[q.memoizedState,M]},useRef:function(M){var P=gs();return M={current:M},P.memoizedState=M},useState:dl,useDebugValue:hl,useDeferredValue:function(M){return gs().memoizedState=M},useTransition:function(){var M=dl(!1),P=M[0];return M=Mp.bind(null,M[1]),gs().memoizedState=M,[P,M]},useMutableSource:function(){},useSyncExternalStore:function(M,P,F){var q=Kr,le=gs();if(Br){if(F===void 0)throw Error(g(407));F=F()}else{if(F=P(),xn===null)throw Error(g(349));(ri&30)!==0||Wu(q,P,F)}le.memoizedState=F;var xe={value:F,getSnapshot:P};return le.queue=xe,Cc(Ls.bind(null,q,xe,M),[M]),q.flags|=2048,Sa(9,Zn.bind(null,q,xe,F,P),void 0,null),F},useId:function(){var M=gs(),P=xn.identifierPrefix;if(Br){var F=us,q=ls;F=(q&~(1<<32-jo(q)-1)).toString(32)+F,P=":"+P+"R"+F,F=Li++,0<F&&(P+="H"+F.toString(32)),P+=":"}else F=_r++,P=":"+P+"r"+F.toString(32)+":";return M.memoizedState=P},unstable_isNewReconciler:!1},Mc={readContext:Mo,useCallback:Sp,useContext:Mo,useEffect:xs,useImperativeHandle:Ju,useInsertionEffect:Ep,useLayoutEffect:Ds,useMemo:Cp,useReducer:Uu,useRef:Sc,useState:function(){return Uu(Fn)},useDebugValue:hl,useDeferredValue:function(M){var P=Ro();return wp(P,Zr.memoizedState,M)},useTransition:function(){var M=Uu(Fn)[0],P=Ro().memoizedState;return[M,P]},useMutableSource:bc,useSyncExternalStore:Vu,useId:Qu,unstable_isNewReconciler:!1},wa={readContext:Mo,useCallback:Sp,useContext:Mo,useEffect:xs,useImperativeHandle:Ju,useInsertionEffect:Ep,useLayoutEffect:Ds,useMemo:Cp,useReducer:Ea,useRef:Sc,useState:function(){return Ea(Fn)},useDebugValue:hl,useDeferredValue:function(M){var P=Ro();return Zr===null?P.memoizedState=M:wp(P,Zr.memoizedState,M)},useTransition:function(){var M=Ea(Fn)[0],P=Ro().memoizedState;return[M,P]},useMutableSource:bc,useSyncExternalStore:Vu,useId:Qu,unstable_isNewReconciler:!1};function $o(M,P){if(M&&M.defaultProps){P=pe({},P),M=M.defaultProps;for(var F in M)P[F]===void 0&&(P[F]=M[F]);return P}return P}function Tc(M,P,F,q){P=M.memoizedState,F=F(q,P),F=F==null?P:pe({},P,F),M.memoizedState=F,M.lanes===0&&(M.updateQueue.baseState=F)}var Pc={isMounted:function(M){return(M=M._reactInternals)?ut(M)===M:!1},enqueueSetState:function(M,P,F){M=M._reactInternals;var q=Vn(),le=ci(M),xe=ks(q,le);xe.payload=P,F!=null&&(xe.callback=F),P=Po(M,xe,le),P!==null&&(Wo(P,M,le,q),xc(P,M,le))},enqueueReplaceState:function(M,P,F){M=M._reactInternals;var q=Vn(),le=ci(M),xe=ks(q,le);xe.tag=1,xe.payload=P,F!=null&&(xe.callback=F),P=Po(M,xe,le),P!==null&&(Wo(P,M,le,q),xc(P,M,le))},enqueueForceUpdate:function(M,P){M=M._reactInternals;var F=Vn(),q=ci(M),le=ks(F,q);le.tag=2,P!=null&&(le.callback=P),P=Po(M,le,q),P!==null&&(Wo(P,M,q,F),xc(P,M,q))}};function Zu(M,P,F,q,le,xe,we){return M=M.stateNode,typeof M.shouldComponentUpdate=="function"?M.shouldComponentUpdate(q,xe,we):P.prototype&&P.prototype.isPureReactComponent?!At(F,q)||!At(le,xe):!0}function Ai(M,P,F){var q=!1,le=Qs,xe=P.contextType;return typeof xe=="object"&&xe!==null?xe=Mo(xe):(le=Qn(P)?Yn:Ln.current,q=P.contextTypes,xe=(q=q!=null)?ha(M,le):Qs),P=new P(F,xe),M.memoizedState=P.state!==null&&P.state!==void 0?P.state:null,P.updater=Pc,M.stateNode=P,P._reactInternals=M,q&&(M=M.stateNode,M.__reactInternalMemoizedUnmaskedChildContext=le,M.__reactInternalMemoizedMaskedChildContext=xe),P}function Ma(M,P,F,q){M=P.state,typeof P.componentWillReceiveProps=="function"&&P.componentWillReceiveProps(F,q),typeof P.UNSAFE_componentWillReceiveProps=="function"&&P.UNSAFE_componentWillReceiveProps(F,q),P.state!==M&&Pc.enqueueReplaceState(P,P.state,null)}function ed(M,P,F,q){var le=M.stateNode;le.props=F,le.state=M.memoizedState,le.refs={},gc(M);var xe=P.contextType;typeof xe=="object"&&xe!==null?le.context=Mo(xe):(xe=Qn(P)?Yn:Ln.current,le.context=ha(M,xe)),le.state=M.memoizedState,xe=P.getDerivedStateFromProps,typeof xe=="function"&&(Tc(M,P,xe,F),le.state=M.memoizedState),typeof P.getDerivedStateFromProps=="function"||typeof le.getSnapshotBeforeUpdate=="function"||typeof le.UNSAFE_componentWillMount!="function"&&typeof le.componentWillMount!="function"||(P=le.state,typeof le.componentWillMount=="function"&&le.componentWillMount(),typeof le.UNSAFE_componentWillMount=="function"&&le.UNSAFE_componentWillMount(),P!==le.state&&Pc.enqueueReplaceState(le,le.state,null),ya(M,F,le,q),le.state=M.memoizedState),typeof le.componentDidMount=="function"&&(M.flags|=4194308)}function Oi(M,P){try{var F="",q=P;do F+=Se(q),q=q.return;while(q);var le=F}catch(xe){le=`
31
31
  Error generating stack: `+xe.message+`
32
- `+xe.stack}return{value:M,source:P,stack:le,digest:null}}function Rc(M,P,F){return{value:M,source:null,stack:F!=null?F:null,digest:P!=null?P:null}}function Ta(M,P){try{console.error(P.value)}catch(F){setTimeout(function(){throw F})}}var Pp=typeof WeakMap=="function"?WeakMap:Map;function xl(M,P,F){F=ks(-1,F),F.tag=3,F.payload={element:null};var q=P.value;return F.callback=function(){Hc||(Hc=!0,vd=q),Ta(M,P)},F}function $c(M,P,F){F=ks(-1,F),F.tag=3;var q=M.type.getDerivedStateFromError;if(typeof q=="function"){var le=P.value;F.payload=function(){return q(le)},F.callback=function(){Ta(M,P)}}var xe=M.stateNode;return xe!==null&&typeof xe.componentDidCatch=="function"&&(F.callback=function(){Ta(M,P),typeof q!="function"&&(ai===null?ai=new Set([this]):ai.add(this));var we=P.stack;this.componentDidCatch(P.value,{componentStack:we!==null?we:""})}),F}function _l(M,P,F){var q=M.pingCache;if(q===null){q=M.pingCache=new Pp;var le=new Set;q.set(P,le)}else le=q.get(P),le===void 0&&(le=new Set,q.set(P,le));le.has(F)||(le.add(F),M=Ff.bind(null,M,P,F),P.then(M,M))}function Rp(M){do{var P;if((P=M.tag===13)&&(P=M.memoizedState,P=P!==null?P.dehydrated!==null:!0),P)return M;M=M.return}while(M!==null);return null}function td(M,P,F,q,le){return(M.mode&1)===0?(M===P?M.flags|=65536:(M.flags|=128,F.flags|=131072,F.flags&=-52805,F.tag===1&&(F.alternate===null?F.tag=17:(P=ks(-1,1),P.tag=2,Po(F,P,1))),F.lanes|=1),M):(M.flags|=65536,M.lanes=le,M)}var kc=B.ReactCurrentOwner,zn=!1;function Cn(M,P,F,q){P.child=M===null?fc(P,null,F,q):Xr(P,M.child,F,q)}function $p(M,P,F,q,le){F=F.render;var xe=P.ref;return ei(P,le),q=Di(M,P,F,q,xe,le),F=vc(),M!==null&&!zn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,zo(M,P,le)):(Br&&F&&tl(P),P.flags|=1,Cn(M,P,q,le),P.child)}function rd(M,P,F,q,le){if(M===null){var xe=F.type;return typeof xe=="function"&&!Vc(xe)&&xe.defaultProps===void 0&&F.compare===null&&F.defaultProps===void 0?(P.tag=15,P.type=xe,_s(M,P,xe,q,le)):(M=Wc(F.type,null,q,P,P.mode,le),M.ref=P.ref,M.return=P,P.child=M)}if(xe=M.child,(M.lanes&le)===0){var we=xe.memoizedProps;if(F=F.compare,F=F!==null?F:At,F(we,q)&&M.ref===P.ref)return zo(M,P,le)}return P.flags|=1,M=qo(xe,q),M.ref=P.ref,M.return=P,P.child=M}function _s(M,P,F,q,le){if(M!==null){var xe=M.memoizedProps;if(At(xe,q)&&M.ref===P.ref)if(zn=!1,P.pendingProps=q=xe,(M.lanes&le)!==0)(M.flags&131072)!==0&&(zn=!0);else return P.lanes=M.lanes,zo(M,P,le)}return ad(M,P,F,q,le)}function nd(M,P,F){var q=P.pendingProps,le=q.children,xe=M!==null?M.memoizedState:null;if(q.mode==="hidden")if((P.mode&1)===0)P.memoizedState={baseLanes:0,cachePool:null,transitions:null},jr(Ia,ho),ho|=F;else{if((F&1073741824)===0)return M=xe!==null?xe.baseLanes|F:F,P.lanes=P.childLanes=1073741824,P.memoizedState={baseLanes:M,cachePool:null,transitions:null},P.updateQueue=null,jr(Ia,ho),ho|=M,null;P.memoizedState={baseLanes:0,cachePool:null,transitions:null},q=xe!==null?xe.baseLanes:F,jr(Ia,ho),ho|=q}else xe!==null?(q=xe.baseLanes|F,P.memoizedState=null):q=F,jr(Ia,ho),ho|=q;return Cn(M,P,le,F),P.child}function od(M,P){var F=P.ref;(M===null&&F!==null||M!==null&&M.ref!==F)&&(P.flags|=512,P.flags|=2097152)}function ad(M,P,F,q,le){var xe=Qn(F)?Yn:Ln.current;return xe=ha(P,xe),ei(P,le),F=Di(M,P,F,q,xe,le),q=vc(),M!==null&&!zn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,zo(M,P,le)):(Br&&q&&tl(P),P.flags|=1,Cn(M,P,F,le),P.child)}function ld(M,P,F,q,le){if(Qn(F)){var xe=!0;So(P)}else xe=!1;if(ei(P,le),P.stateNode===null)Lc(M,P),Ai(P,F,q),ed(P,F,q,le),q=!0;else if(M===null){var we=P.stateNode,Ae=P.memoizedProps;we.props=Ae;var ze=we.context,ct=F.contextType;typeof ct=="object"&&ct!==null?ct=Mo(ct):(ct=Qn(F)?Yn:Ln.current,ct=ha(P,ct));var Mt=F.getDerivedStateFromProps,Rt=typeof Mt=="function"||typeof we.getSnapshotBeforeUpdate=="function";Rt||typeof we.UNSAFE_componentWillReceiveProps!="function"&&typeof we.componentWillReceiveProps!="function"||(Ae!==q||ze!==ct)&&Ma(P,we,q,ct),To=!1;var wt=P.memoizedState;we.state=wt,ya(P,q,we,le),ze=P.memoizedState,Ae!==q||wt!==ze||Jn.current||To?(typeof Mt=="function"&&(Tc(P,F,Mt,q),ze=P.memoizedState),(Ae=To||Zu(P,F,Ae,q,wt,ze,ct))?(Rt||typeof we.UNSAFE_componentWillMount!="function"&&typeof we.componentWillMount!="function"||(typeof we.componentWillMount=="function"&&we.componentWillMount(),typeof we.UNSAFE_componentWillMount=="function"&&we.UNSAFE_componentWillMount()),typeof we.componentDidMount=="function"&&(P.flags|=4194308)):(typeof we.componentDidMount=="function"&&(P.flags|=4194308),P.memoizedProps=q,P.memoizedState=ze),we.props=q,we.state=ze,we.context=ct,q=Ae):(typeof we.componentDidMount=="function"&&(P.flags|=4194308),q=!1)}else{we=P.stateNode,vp(M,P),Ae=P.memoizedProps,ct=P.type===P.elementType?Ae:$o(P.type,Ae),we.props=ct,Rt=P.pendingProps,wt=we.context,ze=F.contextType,typeof ze=="object"&&ze!==null?ze=Mo(ze):(ze=Qn(F)?Yn:Ln.current,ze=ha(P,ze));var Ot=F.getDerivedStateFromProps;(Mt=typeof Ot=="function"||typeof we.getSnapshotBeforeUpdate=="function")||typeof we.UNSAFE_componentWillReceiveProps!="function"&&typeof we.componentWillReceiveProps!="function"||(Ae!==Rt||wt!==ze)&&Ma(P,we,q,ze),To=!1,wt=P.memoizedState,we.state=wt,ya(P,q,we,le);var Nt=P.memoizedState;Ae!==Rt||wt!==Nt||Jn.current||To?(typeof Ot=="function"&&(Tc(P,F,Ot,q),Nt=P.memoizedState),(ct=To||Zu(P,F,ct,q,wt,Nt,ze)||!1)?(Mt||typeof we.UNSAFE_componentWillUpdate!="function"&&typeof we.componentWillUpdate!="function"||(typeof we.componentWillUpdate=="function"&&we.componentWillUpdate(q,Nt,ze),typeof we.UNSAFE_componentWillUpdate=="function"&&we.UNSAFE_componentWillUpdate(q,Nt,ze)),typeof we.componentDidUpdate=="function"&&(P.flags|=4),typeof we.getSnapshotBeforeUpdate=="function"&&(P.flags|=1024)):(typeof we.componentDidUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=4),typeof we.getSnapshotBeforeUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=1024),P.memoizedProps=q,P.memoizedState=Nt),we.props=q,we.state=Nt,we.context=ze,q=ct):(typeof we.componentDidUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=4),typeof we.getSnapshotBeforeUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=1024),q=!1)}return cd(M,P,F,q,xe,le)}function cd(M,P,F,q,le,xe){od(M,P);var we=(P.flags&128)!==0;if(!q&&!we)return le&&mp(P,F,!1),zo(M,P,xe);q=P.stateNode,kc.current=P;var Ae=we&&typeof F.getDerivedStateFromError!="function"?null:q.render();return P.flags|=1,M!==null&&we?(P.child=Xr(P,M.child,null,xe),P.child=Xr(P,null,Ae,xe)):Cn(M,P,Ae,xe),P.memoizedState=q.state,le&&mp(P,F,!0),P.child}function kp(M){var P=M.stateNode;P.pendingContext?pp(M,P.pendingContext,P.pendingContext!==P.context):P.context&&pp(M,P.context,!1),Hu(M,P.containerInfo)}function ys(M,P,F,q,le){return ps(),fs(le),P.flags|=256,Cn(M,P,F,q),P.child}var yl={dehydrated:null,treeContext:null,retryLane:0};function vl(M){return{baseLanes:M,cachePool:null,transitions:null}}function Ic(M,P,F){var q=P.pendingProps,le=Vr.current,xe=!1,we=(P.flags&128)!==0,Ae;if((Ae=we)||(Ae=M!==null&&M.memoizedState===null?!1:(le&2)!==0),Ae?(xe=!0,P.flags&=-129):(M===null||M.memoizedState!==null)&&(le|=1),jr(Vr,le&1),M===null)return Xn(P),M=P.memoizedState,M!==null&&(M=M.dehydrated,M!==null)?((P.mode&1)===0?P.lanes=1:M.data==="$!"?P.lanes=8:P.lanes=1073741824,null):(we=q.children,M=q.fallback,xe?(q=P.mode,xe=P.child,we={mode:"hidden",children:we},(q&1)===0&&xe!==null?(xe.childLanes=0,xe.pendingProps=we):xe=qc(we,q,0,null),M=Yi(M,q,F,null),xe.return=P,M.return=P,xe.sibling=M,P.child=xe,P.child.memoizedState=vl(F),P.memoizedState=yl,M):Pa(P,we));if(le=M.memoizedState,le!==null&&(Ae=le.dehydrated,Ae!==null))return er(M,P,we,q,Ae,le,F);if(xe){xe=q.fallback,we=P.mode,le=M.child,Ae=le.sibling;var ze={mode:"hidden",children:q.children};return(we&1)===0&&P.child!==le?(q=P.child,q.childLanes=0,q.pendingProps=ze,P.deletions=null):(q=qo(le,ze),q.subtreeFlags=le.subtreeFlags&14680064),Ae!==null?xe=qo(Ae,xe):(xe=Yi(xe,we,F,null),xe.flags|=2),xe.return=P,q.return=P,q.sibling=xe,P.child=q,q=xe,xe=P.child,we=M.child.memoizedState,we=we===null?vl(F):{baseLanes:we.baseLanes|F,cachePool:null,transitions:we.transitions},xe.memoizedState=we,xe.childLanes=M.childLanes&~F,P.memoizedState=yl,q}return xe=M.child,M=xe.sibling,q=qo(xe,{mode:"visible",children:q.children}),(P.mode&1)===0&&(q.lanes=F),q.return=P,q.sibling=null,M!==null&&(F=P.deletions,F===null?(P.deletions=[M],P.flags|=16):F.push(M)),P.child=q,P.memoizedState=null,q}function Pa(M,P){return P=qc({mode:"visible",children:P},M.mode,0,null),P.return=M,M.child=P}function As(M,P,F,q){return q!==null&&fs(q),Xr(P,M.child,null,F),M=Pa(P,P.pendingProps.children),M.flags|=2,P.memoizedState=null,M}function er(M,P,F,q,le,xe,we){if(F)return P.flags&256?(P.flags&=-257,q=Rc(Error(g(422))),As(M,P,we,q)):P.memoizedState!==null?(P.child=M.child,P.flags|=128,null):(xe=q.fallback,le=P.mode,q=qc({mode:"visible",children:q.children},le,0,null),xe=Yi(xe,le,we,null),xe.flags|=2,q.return=P,xe.return=P,q.sibling=xe,P.child=q,(P.mode&1)!==0&&Xr(P,M.child,null,we),P.child.memoizedState=vl(we),P.memoizedState=yl,xe);if((P.mode&1)===0)return As(M,P,we,null);if(le.data==="$!"){if(q=le.nextSibling&&le.nextSibling.dataset,q)var Ae=q.dgst;return q=Ae,xe=Error(g(419)),q=Rc(xe,q,void 0),As(M,P,we,q)}if(Ae=(we&M.childLanes)!==0,zn||Ae){if(q=xn,q!==null){switch(we&-we){case 4:le=2;break;case 16:le=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:le=32;break;case 536870912:le=268435456;break;default:le=0}le=(le&(q.suspendedLanes|we))!==0?0:le,le!==0&&le!==xe.retryLane&&(xe.retryLane=le,$s(M,le),Wo(q,M,le,-1))}return Md(),q=Rc(Error(g(421))),As(M,P,we,q)}return le.data==="$?"?(P.flags|=128,P.child=M.child,P=Nf.bind(null,M),le._reactRetry=P,null):(M=xe.treeContext,uo=Ks(le.nextSibling),An=P,Br=!0,Yo=null,M!==null&&(Co[wo++]=ls,Co[wo++]=us,Co[wo++]=Ti,ls=M.id,us=M.overflow,Ti=P),P=Pa(P,q.children),P.flags|=4096,P)}function bl(M,P,F){M.lanes|=P;var q=M.alternate;q!==null&&(q.lanes|=P),Sn(M.return,P,F)}function El(M,P,F,q,le){var xe=M.memoizedState;xe===null?M.memoizedState={isBackwards:P,rendering:null,renderingStartTime:0,last:q,tail:F,tailMode:le}:(xe.isBackwards=P,xe.rendering=null,xe.renderingStartTime=0,xe.last=q,xe.tail=F,xe.tailMode=le)}function ni(M,P,F){var q=P.pendingProps,le=q.revealOrder,xe=q.tail;if(Cn(M,P,q.children,F),q=Vr.current,(q&2)!==0)q=q&1|2,P.flags|=128;else{if(M!==null&&(M.flags&128)!==0)e:for(M=P.child;M!==null;){if(M.tag===13)M.memoizedState!==null&&bl(M,F,P);else if(M.tag===19)bl(M,F,P);else if(M.child!==null){M.child.return=M,M=M.child;continue}if(M===P)break e;for(;M.sibling===null;){if(M.return===null||M.return===P)break e;M=M.return}M.sibling.return=M.return,M=M.sibling}q&=1}if(jr(Vr,q),(P.mode&1)===0)P.memoizedState=null;else switch(le){case"forwards":for(F=P.child,le=null;F!==null;)M=F.alternate,M!==null&&Ii(M)===null&&(le=F),F=F.sibling;F=le,F===null?(le=P.child,P.child=null):(le=F.sibling,F.sibling=null),El(P,!1,le,F,xe);break;case"backwards":for(F=null,le=P.child,P.child=null;le!==null;){if(M=le.alternate,M!==null&&Ii(M)===null){P.child=le;break}M=le.sibling,le.sibling=F,F=le,le=M}El(P,!0,F,null,xe);break;case"together":El(P,!1,null,null,void 0);break;default:P.memoizedState=null}return P.child}function Lc(M,P){(P.mode&1)===0&&M!==null&&(M.alternate=null,P.alternate=null,P.flags|=2)}function zo(M,P,F){if(M!==null&&(P.dependencies=M.dependencies),ii|=P.lanes,(F&P.childLanes)===0)return null;if(M!==null&&P.child!==M.child)throw Error(g(153));if(P.child!==null){for(M=P.child,F=qo(M,M.pendingProps),P.child=F,F.return=P;M.sibling!==null;)M=M.sibling,F=F.sibling=qo(M,M.pendingProps),F.return=P;F.sibling=null}return P.child}function Ip(M,P,F){switch(P.tag){case 3:kp(P),ps();break;case 5:Yu(P);break;case 1:Qn(P.type)&&So(P);break;case 4:Hu(P,P.stateNode.containerInfo);break;case 10:var q=P.type._context,le=P.memoizedProps.value;jr(il,q._currentValue),q._currentValue=le;break;case 13:if(q=P.memoizedState,q!==null)return q.dehydrated!==null?(jr(Vr,Vr.current&1),P.flags|=128,null):(F&P.child.childLanes)!==0?Ic(M,P,F):(jr(Vr,Vr.current&1),M=zo(M,P,F),M!==null?M.sibling:null);jr(Vr,Vr.current&1);break;case 19:if(q=(F&P.childLanes)!==0,(M.flags&128)!==0){if(q)return ni(M,P,F);P.flags|=128}if(le=P.memoizedState,le!==null&&(le.rendering=null,le.tail=null,le.lastEffect=null),jr(Vr,Vr.current),q)break;return null;case 22:case 23:return P.lanes=0,nd(M,P,F)}return zo(M,P,F)}var wn,ud,Lp,dd;wn=function(M,P){for(var F=P.child;F!==null;){if(F.tag===5||F.tag===6)M.appendChild(F.stateNode);else if(F.tag!==4&&F.child!==null){F.child.return=F,F=F.child;continue}if(F===P)break;for(;F.sibling===null;){if(F.return===null||F.return===P)return;F=F.return}F.sibling.return=F.return,F=F.sibling}},ud=function(){},Lp=function(M,P,F,q){var le=M.memoizedProps;if(le!==q){M=P.stateNode,Is(hs.current);var xe=null;switch(F){case"input":le=Ye(M,le),q=Ye(M,q),xe=[];break;case"select":le=pe({},le,{value:void 0}),q=pe({},q,{value:void 0}),xe=[];break;case"textarea":le=Ke(M,le),q=Ke(M,q),xe=[];break;default:typeof le.onClick!="function"&&typeof q.onClick=="function"&&(M.onclick=oc)}Lt(F,q);var we;F=null;for(ct in le)if(!q.hasOwnProperty(ct)&&le.hasOwnProperty(ct)&&le[ct]!=null)if(ct==="style"){var Ae=le[ct];for(we in Ae)Ae.hasOwnProperty(we)&&(F||(F={}),F[we]="")}else ct!=="dangerouslySetInnerHTML"&&ct!=="children"&&ct!=="suppressContentEditableWarning"&&ct!=="suppressHydrationWarning"&&ct!=="autoFocus"&&(b.hasOwnProperty(ct)?xe||(xe=[]):(xe=xe||[]).push(ct,null));for(ct in q){var ze=q[ct];if(Ae=le!=null?le[ct]:void 0,q.hasOwnProperty(ct)&&ze!==Ae&&(ze!=null||Ae!=null))if(ct==="style")if(Ae){for(we in Ae)!Ae.hasOwnProperty(we)||ze&&ze.hasOwnProperty(we)||(F||(F={}),F[we]="");for(we in ze)ze.hasOwnProperty(we)&&Ae[we]!==ze[we]&&(F||(F={}),F[we]=ze[we])}else F||(xe||(xe=[]),xe.push(ct,F)),F=ze;else ct==="dangerouslySetInnerHTML"?(ze=ze?ze.__html:void 0,Ae=Ae?Ae.__html:void 0,ze!=null&&Ae!==ze&&(xe=xe||[]).push(ct,ze)):ct==="children"?typeof ze!="string"&&typeof ze!="number"||(xe=xe||[]).push(ct,""+ze):ct!=="suppressContentEditableWarning"&&ct!=="suppressHydrationWarning"&&(b.hasOwnProperty(ct)?(ze!=null&&ct==="onScroll"&&Hr("scroll",M),xe||Ae===ze||(xe=[])):(xe=xe||[]).push(ct,ze))}F&&(xe=xe||[]).push("style",F);var ct=xe;(P.updateQueue=ct)&&(P.flags|=4)}},dd=function(M,P,F,q){F!==q&&(P.flags|=4)};function Sl(M,P){if(!Br)switch(M.tailMode){case"hidden":P=M.tail;for(var F=null;P!==null;)P.alternate!==null&&(F=P),P=P.sibling;F===null?M.tail=null:F.sibling=null;break;case"collapsed":F=M.tail;for(var q=null;F!==null;)F.alternate!==null&&(q=F),F=F.sibling;q===null?P||M.tail===null?M.tail=null:M.tail.sibling=null:q.sibling=null}}function Mn(M){var P=M.alternate!==null&&M.alternate.child===M.child,F=0,q=0;if(P)for(var le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags&14680064,q|=le.flags&14680064,le.return=M,le=le.sibling;else for(le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags,q|=le.flags,le.return=M,le=le.sibling;return M.subtreeFlags|=q,M.childLanes=F,P}function $f(M,P,F){var q=P.pendingProps;switch(Ri(P),P.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Mn(P),null;case 1:return Qn(P.type)&&lc(),Mn(P),null;case 3:return q=P.stateNode,ti(),Yr(Jn),Yr(Ln),yc(),q.pendingContext&&(q.context=q.pendingContext,q.pendingContext=null),(M===null||M.child===null)&&(rl(P)?P.flags|=4:M===null||M.memoizedState.isDehydrated&&(P.flags&256)===0||(P.flags|=1024,Yo!==null&&(Sd(Yo),Yo=null))),ud(M,P),Mn(P),null;case 5:_c(P);var le=Is(va.current);if(F=P.type,M!==null&&P.stateNode!=null)Lp(M,P,F,q,le),M.ref!==P.ref&&(P.flags|=512,P.flags|=2097152);else{if(!q){if(P.stateNode===null)throw Error(g(166));return Mn(P),null}if(M=Is(hs.current),rl(P)){q=P.stateNode,F=P.type;var xe=P.memoizedProps;switch(q[os]=P,q[Js]=xe,M=(P.mode&1)!==0,F){case"dialog":Hr("cancel",q),Hr("close",q);break;case"iframe":case"object":case"embed":Hr("load",q);break;case"video":case"audio":for(le=0;le<Ms.length;le++)Hr(Ms[le],q);break;case"source":Hr("error",q);break;case"img":case"image":case"link":Hr("error",q),Hr("load",q);break;case"details":Hr("toggle",q);break;case"input":He(q,xe),Hr("invalid",q);break;case"select":q._wrapperState={wasMultiple:!!xe.multiple},Hr("invalid",q);break;case"textarea":Xe(q,xe),Hr("invalid",q)}Lt(F,xe),le=null;for(var we in xe)if(xe.hasOwnProperty(we)){var Ae=xe[we];we==="children"?typeof Ae=="string"?q.textContent!==Ae&&(xe.suppressHydrationWarning!==!0&&Ja(q.textContent,Ae,M),le=["children",Ae]):typeof Ae=="number"&&q.textContent!==""+Ae&&(xe.suppressHydrationWarning!==!0&&Ja(q.textContent,Ae,M),le=["children",""+Ae]):b.hasOwnProperty(we)&&Ae!=null&&we==="onScroll"&&Hr("scroll",q)}switch(F){case"input":Le(q),Oe(q,xe,!0);break;case"textarea":Le(q),xt(q);break;case"select":case"option":break;default:typeof xe.onClick=="function"&&(q.onclick=oc)}q=le,P.updateQueue=q,q!==null&&(P.flags|=4)}else{we=le.nodeType===9?le:le.ownerDocument,M==="http://www.w3.org/1999/xhtml"&&(M=Je(F)),M==="http://www.w3.org/1999/xhtml"?F==="script"?(M=we.createElement("div"),M.innerHTML="<script><\/script>",M=M.removeChild(M.firstChild)):typeof q.is=="string"?M=we.createElement(F,{is:q.is}):(M=we.createElement(F),F==="select"&&(we=M,q.multiple?we.multiple=!0:q.size&&(we.size=q.size))):M=we.createElementNS(M,F),M[os]=P,M[Js]=q,wn(M,P,!1,!1),P.stateNode=M;e:{switch(we=Kt(F,q),F){case"dialog":Hr("cancel",M),Hr("close",M),le=q;break;case"iframe":case"object":case"embed":Hr("load",M),le=q;break;case"video":case"audio":for(le=0;le<Ms.length;le++)Hr(Ms[le],M);le=q;break;case"source":Hr("error",M),le=q;break;case"img":case"image":case"link":Hr("error",M),Hr("load",M),le=q;break;case"details":Hr("toggle",M),le=q;break;case"input":He(M,q),le=Ye(M,q),Hr("invalid",M);break;case"option":le=q;break;case"select":M._wrapperState={wasMultiple:!!q.multiple},le=pe({},q,{value:void 0}),Hr("invalid",M);break;case"textarea":Xe(M,q),le=Ke(M,q),Hr("invalid",M);break;default:le=q}Lt(F,le),Ae=le;for(xe in Ae)if(Ae.hasOwnProperty(xe)){var ze=Ae[xe];xe==="style"?zt(M,ze):xe==="dangerouslySetInnerHTML"?(ze=ze?ze.__html:void 0,ze!=null&&dt(M,ze)):xe==="children"?typeof ze=="string"?(F!=="textarea"||ze!=="")&&jt(M,ze):typeof ze=="number"&&jt(M,""+ze):xe!=="suppressContentEditableWarning"&&xe!=="suppressHydrationWarning"&&xe!=="autoFocus"&&(b.hasOwnProperty(xe)?ze!=null&&xe==="onScroll"&&Hr("scroll",M):ze!=null&&Y(M,xe,ze,we))}switch(F){case"input":Le(M),Oe(M,q,!1);break;case"textarea":Le(M),xt(M);break;case"option":q.value!=null&&M.setAttribute("value",""+Re(q.value));break;case"select":M.multiple=!!q.multiple,xe=q.value,xe!=null?Ne(M,!!q.multiple,xe,!1):q.defaultValue!=null&&Ne(M,!!q.multiple,q.defaultValue,!0);break;default:typeof le.onClick=="function"&&(M.onclick=oc)}switch(F){case"button":case"input":case"select":case"textarea":q=!!q.autoFocus;break e;case"img":q=!0;break e;default:q=!1}}q&&(P.flags|=4)}P.ref!==null&&(P.flags|=512,P.flags|=2097152)}return Mn(P),null;case 6:if(M&&P.stateNode!=null)dd(M,P,M.memoizedProps,q);else{if(typeof q!="string"&&P.stateNode===null)throw Error(g(166));if(F=Is(va.current),Is(hs.current),rl(P)){if(q=P.stateNode,F=P.memoizedProps,q[os]=P,(xe=q.nodeValue!==F)&&(M=An,M!==null))switch(M.tag){case 3:Ja(q.nodeValue,F,(M.mode&1)!==0);break;case 5:M.memoizedProps.suppressHydrationWarning!==!0&&Ja(q.nodeValue,F,(M.mode&1)!==0)}xe&&(P.flags|=4)}else q=(F.nodeType===9?F:F.ownerDocument).createTextNode(q),q[os]=P,P.stateNode=q}return Mn(P),null;case 13:if(Yr(Vr),q=P.memoizedState,M===null||M.memoizedState!==null&&M.memoizedState.dehydrated!==null){if(Br&&uo!==null&&(P.mode&1)!==0&&(P.flags&128)===0)Ou(),ps(),P.flags|=98560,xe=!1;else if(xe=rl(P),q!==null&&q.dehydrated!==null){if(M===null){if(!xe)throw Error(g(318));if(xe=P.memoizedState,xe=xe!==null?xe.dehydrated:null,!xe)throw Error(g(317));xe[os]=P}else ps(),(P.flags&128)===0&&(P.memoizedState=null),P.flags|=4;Mn(P),xe=!1}else Yo!==null&&(Sd(Yo),Yo=null),xe=!0;if(!xe)return P.flags&65536?P:null}return(P.flags&128)!==0?(P.lanes=F,P):(q=q!==null,q!==(M!==null&&M.memoizedState!==null)&&q&&(P.child.flags|=8192,(P.mode&1)!==0&&(M===null||(Vr.current&1)!==0?pn===0&&(pn=3):Md())),P.updateQueue!==null&&(P.flags|=4),Mn(P),null);case 4:return ti(),ud(M,P),M===null&&Ws(P.stateNode.containerInfo),Mn(P),null;case 10:return mc(P.type._context),Mn(P),null;case 17:return Qn(P.type)&&lc(),Mn(P),null;case 19:if(Yr(Vr),xe=P.memoizedState,xe===null)return Mn(P),null;if(q=(P.flags&128)!==0,we=xe.rendering,we===null)if(q)Sl(xe,!1);else{if(pn!==0||M!==null&&(M.flags&128)!==0)for(M=P.child;M!==null;){if(we=Ii(M),we!==null){for(P.flags|=128,Sl(xe,!1),q=we.updateQueue,q!==null&&(P.updateQueue=q,P.flags|=4),P.subtreeFlags=0,q=F,F=P.child;F!==null;)xe=F,M=q,xe.flags&=14680066,we=xe.alternate,we===null?(xe.childLanes=0,xe.lanes=M,xe.child=null,xe.subtreeFlags=0,xe.memoizedProps=null,xe.memoizedState=null,xe.updateQueue=null,xe.dependencies=null,xe.stateNode=null):(xe.childLanes=we.childLanes,xe.lanes=we.lanes,xe.child=we.child,xe.subtreeFlags=0,xe.deletions=null,xe.memoizedProps=we.memoizedProps,xe.memoizedState=we.memoizedState,xe.updateQueue=we.updateQueue,xe.type=we.type,M=we.dependencies,xe.dependencies=M===null?null:{lanes:M.lanes,firstContext:M.firstContext}),F=F.sibling;return jr(Vr,Vr.current&1|2),P.child}M=M.sibling}xe.tail!==null&&Gr()>Fi&&(P.flags|=128,q=!0,Sl(xe,!1),P.lanes=4194304)}else{if(!q)if(M=Ii(we),M!==null){if(P.flags|=128,q=!0,F=M.updateQueue,F!==null&&(P.updateQueue=F,P.flags|=4),Sl(xe,!0),xe.tail===null&&xe.tailMode==="hidden"&&!we.alternate&&!Br)return Mn(P),null}else 2*Gr()-xe.renderingStartTime>Fi&&F!==1073741824&&(P.flags|=128,q=!0,Sl(xe,!1),P.lanes=4194304);xe.isBackwards?(we.sibling=P.child,P.child=we):(F=xe.last,F!==null?F.sibling=we:P.child=we,xe.last=we)}return xe.tail!==null?(P=xe.tail,xe.rendering=P,xe.tail=P.sibling,xe.renderingStartTime=Gr(),P.sibling=null,F=Vr.current,jr(Vr,q?F&1|2:F&1),P):(Mn(P),null);case 22:case 23:return wd(),q=P.memoizedState!==null,M!==null&&M.memoizedState!==null!==q&&(P.flags|=8192),q&&(P.mode&1)!==0?(ho&1073741824)!==0&&(Mn(P),P.subtreeFlags&6&&(P.flags|=8192)):Mn(P),null;case 24:return null;case 25:return null}throw Error(g(156,P.tag))}function kf(M,P){switch(Ri(P),P.tag){case 1:return Qn(P.type)&&lc(),M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 3:return ti(),Yr(Jn),Yr(Ln),yc(),M=P.flags,(M&65536)!==0&&(M&128)===0?(P.flags=M&-65537|128,P):null;case 5:return _c(P),null;case 13:if(Yr(Vr),M=P.memoizedState,M!==null&&M.dehydrated!==null){if(P.alternate===null)throw Error(g(340));ps()}return M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 19:return Yr(Vr),null;case 4:return ti(),null;case 10:return mc(P.type._context),null;case 22:case 23:return wd(),null;case 24:return null;default:return null}}var Dc=!1,Wr=!1,Gn=typeof WeakSet=="function"?WeakSet:Set,Ft=null;function Ra(M,P){var F=M.ref;if(F!==null)if(typeof F=="function")try{F(null)}catch(q){Jr(M,P,q)}else F.current=null}function Cl(M,P,F){try{F()}catch(q){Jr(M,P,q)}}var Dp=!1;function If(M,P){if(Qa=Hl,M=Dr(),Ga(M)){if("selectionStart"in M)var F={start:M.selectionStart,end:M.selectionEnd};else e:{F=(F=M.ownerDocument)&&F.defaultView||window;var q=F.getSelection&&F.getSelection();if(q&&q.rangeCount!==0){F=q.anchorNode;var le=q.anchorOffset,xe=q.focusNode;q=q.focusOffset;try{F.nodeType,xe.nodeType}catch(kt){F=null;break e}var we=0,Ae=-1,ze=-1,ct=0,Mt=0,Rt=M,wt=null;t:for(;;){for(var Ot;Rt!==F||le!==0&&Rt.nodeType!==3||(Ae=we+le),Rt!==xe||q!==0&&Rt.nodeType!==3||(ze=we+q),Rt.nodeType===3&&(we+=Rt.nodeValue.length),(Ot=Rt.firstChild)!==null;)wt=Rt,Rt=Ot;for(;;){if(Rt===M)break t;if(wt===F&&++ct===le&&(Ae=we),wt===xe&&++Mt===q&&(ze=we),(Ot=Rt.nextSibling)!==null)break;Rt=wt,wt=Rt.parentNode}Rt=Ot}F=Ae===-1||ze===-1?null:{start:Ae,end:ze}}else F=null}F=F||{start:0,end:0}}else F=null;for(wi={focusedElem:M,selectionRange:F},Hl=!1,Ft=P;Ft!==null;)if(P=Ft,M=P.child,(P.subtreeFlags&1028)!==0&&M!==null)M.return=P,Ft=M;else for(;Ft!==null;){P=Ft;try{var Nt=P.alternate;if((P.flags&1024)!==0)switch(P.tag){case 0:case 11:case 15:break;case 1:if(Nt!==null){var Ht=Nt.memoizedProps,tn=Nt.memoizedState,Ze=P.stateNode,We=Ze.getSnapshotBeforeUpdate(P.elementType===P.type?Ht:$o(P.type,Ht),tn);Ze.__reactInternalSnapshotBeforeUpdate=We}break;case 3:var nt=P.stateNode.containerInfo;nt.nodeType===1?nt.textContent="":nt.nodeType===9&&nt.documentElement&&nt.removeChild(nt.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(g(163))}}catch(kt){Jr(P,P.return,kt)}if(M=P.sibling,M!==null){M.return=P.return,Ft=M;break}Ft=P.return}return Nt=Dp,Dp=!1,Nt}function Os(M,P,F){var q=P.updateQueue;if(q=q!==null?q.lastEffect:null,q!==null){var le=q=q.next;do{if((le.tag&M)===M){var xe=le.destroy;le.destroy=void 0,xe!==void 0&&Cl(P,F,xe)}le=le.next}while(le!==q)}}function wl(M,P){if(P=P.updateQueue,P=P!==null?P.lastEffect:null,P!==null){var F=P=P.next;do{if((F.tag&M)===M){var q=F.create;F.destroy=q()}F=F.next}while(F!==P)}}function Ac(M){var P=M.ref;if(P!==null){var F=M.stateNode;switch(M.tag){case 5:M=F;break;default:M=F}typeof P=="function"?P(M):P.current=M}}function Ap(M){var P=M.alternate;P!==null&&(M.alternate=null,Ap(P)),M.child=null,M.deletions=null,M.sibling=null,M.tag===5&&(P=M.stateNode,P!==null&&(delete P[os],delete P[Js],delete P[ic],delete P[Te],delete P[pa])),M.stateNode=null,M.return=null,M.dependencies=null,M.memoizedProps=null,M.memoizedState=null,M.pendingProps=null,M.stateNode=null,M.updateQueue=null}function Op(M){return M.tag===5||M.tag===3||M.tag===4}function Fp(M){e:for(;;){for(;M.sibling===null;){if(M.return===null||Op(M.return))return null;M=M.return}for(M.sibling.return=M.return,M=M.sibling;M.tag!==5&&M.tag!==6&&M.tag!==18;){if(M.flags&2||M.child===null||M.tag===4)continue e;M.child.return=M,M=M.child}if(!(M.flags&2))return M.stateNode}}function pd(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.nodeType===8?F.parentNode.insertBefore(M,P):F.insertBefore(M,P):(F.nodeType===8?(P=F.parentNode,P.insertBefore(M,F)):(P=F,P.appendChild(M)),F=F._reactRootContainer,F!=null||P.onclick!==null||(P.onclick=oc));else if(q!==4&&(M=M.child,M!==null))for(pd(M,P,F),M=M.sibling;M!==null;)pd(M,P,F),M=M.sibling}function Oc(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.insertBefore(M,P):F.appendChild(M);else if(q!==4&&(M=M.child,M!==null))for(Oc(M,P,F),M=M.sibling;M!==null;)Oc(M,P,F),M=M.sibling}var gn=null,Go=!1;function vs(M,P,F){for(F=F.child;F!==null;)fd(M,P,F),F=F.sibling}function fd(M,P,F){if(ts&&typeof ts.onCommitFiberUnmount=="function")try{ts.onCommitFiberUnmount(Dl,F)}catch(Ae){}switch(F.tag){case 5:Wr||Ra(F,P);case 6:var q=gn,le=Go;gn=null,vs(M,P,F),gn=q,Go=le,gn!==null&&(Go?(M=gn,F=F.stateNode,M.nodeType===8?M.parentNode.removeChild(F):M.removeChild(F)):gn.removeChild(F.stateNode));break;case 18:gn!==null&&(Go?(M=gn,F=F.stateNode,M.nodeType===8?Lu(M.parentNode,F):M.nodeType===1&&Lu(M,F),Ir(M)):Lu(gn,F.stateNode));break;case 4:q=gn,le=Go,gn=F.stateNode.containerInfo,Go=!0,vs(M,P,F),gn=q,Go=le;break;case 0:case 11:case 14:case 15:if(!Wr&&(q=F.updateQueue,q!==null&&(q=q.lastEffect,q!==null))){le=q=q.next;do{var xe=le,we=xe.destroy;xe=xe.tag,we!==void 0&&((xe&2)!==0||(xe&4)!==0)&&Cl(F,P,we),le=le.next}while(le!==q)}vs(M,P,F);break;case 1:if(!Wr&&(Ra(F,P),q=F.stateNode,typeof q.componentWillUnmount=="function"))try{q.props=F.memoizedProps,q.state=F.memoizedState,q.componentWillUnmount()}catch(Ae){Jr(F,P,Ae)}vs(M,P,F);break;case 21:vs(M,P,F);break;case 22:F.mode&1?(Wr=(q=Wr)||F.memoizedState!==null,vs(M,P,F),Wr=q):vs(M,P,F);break;default:vs(M,P,F)}}function $a(M){var P=M.updateQueue;if(P!==null){M.updateQueue=null;var F=M.stateNode;F===null&&(F=M.stateNode=new Gn),P.forEach(function(q){var le=jf.bind(null,M,q);F.has(q)||(F.add(q),q.then(le,le))})}}function mo(M,P){var F=P.deletions;if(F!==null)for(var q=0;q<F.length;q++){var le=F[q];try{var xe=M,we=P,Ae=we;e:for(;Ae!==null;){switch(Ae.tag){case 5:gn=Ae.stateNode,Go=!1;break e;case 3:gn=Ae.stateNode.containerInfo,Go=!0;break e;case 4:gn=Ae.stateNode.containerInfo,Go=!0;break e}Ae=Ae.return}if(gn===null)throw Error(g(160));fd(xe,we,le),gn=null,Go=!1;var ze=le.alternate;ze!==null&&(ze.return=null),le.return=null}catch(ct){Jr(le,P,ct)}}if(P.subtreeFlags&12854)for(P=P.child;P!==null;)hd(P,M),P=P.sibling}function hd(M,P){var F=M.alternate,q=M.flags;switch(M.tag){case 0:case 11:case 14:case 15:if(mo(P,M),Uo(M),q&4){try{Os(3,M,M.return),wl(3,M)}catch(Ht){Jr(M,M.return,Ht)}try{Os(5,M,M.return)}catch(Ht){Jr(M,M.return,Ht)}}break;case 1:mo(P,M),Uo(M),q&512&&F!==null&&Ra(F,F.return);break;case 5:if(mo(P,M),Uo(M),q&512&&F!==null&&Ra(F,F.return),M.flags&32){var le=M.stateNode;try{jt(le,"")}catch(Ht){Jr(M,M.return,Ht)}}if(q&4&&(le=M.stateNode,le!=null)){var xe=M.memoizedProps,we=F!==null?F.memoizedProps:xe,Ae=M.type,ze=M.updateQueue;if(M.updateQueue=null,ze!==null)try{Ae==="input"&&xe.type==="radio"&&xe.name!=null&&Ve(le,xe),Kt(Ae,we);var ct=Kt(Ae,xe);for(we=0;we<ze.length;we+=2){var Mt=ze[we],Rt=ze[we+1];Mt==="style"?zt(le,Rt):Mt==="dangerouslySetInnerHTML"?dt(le,Rt):Mt==="children"?jt(le,Rt):Y(le,Mt,Rt,ct)}switch(Ae){case"input":rt(le,xe);break;case"textarea":st(le,xe);break;case"select":var wt=le._wrapperState.wasMultiple;le._wrapperState.wasMultiple=!!xe.multiple;var Ot=xe.value;Ot!=null?Ne(le,!!xe.multiple,Ot,!1):wt!==!!xe.multiple&&(xe.defaultValue!=null?Ne(le,!!xe.multiple,xe.defaultValue,!0):Ne(le,!!xe.multiple,xe.multiple?[]:"",!1))}le[Js]=xe}catch(Ht){Jr(M,M.return,Ht)}}break;case 6:if(mo(P,M),Uo(M),q&4){if(M.stateNode===null)throw Error(g(162));le=M.stateNode,xe=M.memoizedProps;try{le.nodeValue=xe}catch(Ht){Jr(M,M.return,Ht)}}break;case 3:if(mo(P,M),Uo(M),q&4&&F!==null&&F.memoizedState.isDehydrated)try{Ir(P.containerInfo)}catch(Ht){Jr(M,M.return,Ht)}break;case 4:mo(P,M),Uo(M);break;case 13:mo(P,M),Uo(M),le=M.child,le.flags&8192&&(xe=le.memoizedState!==null,le.stateNode.isHidden=xe,!xe||le.alternate!==null&&le.alternate.memoizedState!==null||(yd=Gr())),q&4&&$a(M);break;case 22:if(Mt=F!==null&&F.memoizedState!==null,M.mode&1?(Wr=(ct=Wr)||Mt,mo(P,M),Wr=ct):mo(P,M),Uo(M),q&8192){if(ct=M.memoizedState!==null,(M.stateNode.isHidden=ct)&&!Mt&&(M.mode&1)!==0)for(Ft=M,Mt=M.child;Mt!==null;){for(Rt=Ft=Mt;Ft!==null;){switch(wt=Ft,Ot=wt.child,wt.tag){case 0:case 11:case 14:case 15:Os(4,wt,wt.return);break;case 1:Ra(wt,wt.return);var Nt=wt.stateNode;if(typeof Nt.componentWillUnmount=="function"){q=wt,F=wt.return;try{P=q,Nt.props=P.memoizedProps,Nt.state=P.memoizedState,Nt.componentWillUnmount()}catch(Ht){Jr(q,F,Ht)}}break;case 5:Ra(wt,wt.return);break;case 22:if(wt.memoizedState!==null){oi(Rt);continue}}Ot!==null?(Ot.return=wt,Ft=Ot):oi(Rt)}Mt=Mt.sibling}e:for(Mt=null,Rt=M;;){if(Rt.tag===5){if(Mt===null){Mt=Rt;try{le=Rt.stateNode,ct?(xe=le.style,typeof xe.setProperty=="function"?xe.setProperty("display","none","important"):xe.display="none"):(Ae=Rt.stateNode,ze=Rt.memoizedProps.style,we=ze!=null&&ze.hasOwnProperty("display")?ze.display:null,Ae.style.display=Pt("display",we))}catch(Ht){Jr(M,M.return,Ht)}}}else if(Rt.tag===6){if(Mt===null)try{Rt.stateNode.nodeValue=ct?"":Rt.memoizedProps}catch(Ht){Jr(M,M.return,Ht)}}else if((Rt.tag!==22&&Rt.tag!==23||Rt.memoizedState===null||Rt===M)&&Rt.child!==null){Rt.child.return=Rt,Rt=Rt.child;continue}if(Rt===M)break e;for(;Rt.sibling===null;){if(Rt.return===null||Rt.return===M)break e;Mt===Rt&&(Mt=null),Rt=Rt.return}Mt===Rt&&(Mt=null),Rt.sibling.return=Rt.return,Rt=Rt.sibling}}break;case 19:mo(P,M),Uo(M),q&4&&$a(M);break;case 21:break;default:mo(P,M),Uo(M)}}function Uo(M){var P=M.flags;if(P&2){try{e:{for(var F=M.return;F!==null;){if(Op(F)){var q=F;break e}F=F.return}throw Error(g(160))}switch(q.tag){case 5:var le=q.stateNode;q.flags&32&&(jt(le,""),q.flags&=-33);var xe=Fp(M);Oc(M,xe,le);break;case 3:case 4:var we=q.stateNode.containerInfo,Ae=Fp(M);pd(M,Ae,we);break;default:throw Error(g(161))}}catch(ze){Jr(M,M.return,ze)}M.flags&=-3}P&4096&&(M.flags&=-4097)}function Fc(M,P,F){Ft=M,xd(M)}function xd(M,P,F){for(var q=(M.mode&1)!==0;Ft!==null;){var le=Ft,xe=le.child;if(le.tag===22&&q){var we=le.memoizedState!==null||Dc;if(!we){var Ae=le.alternate,ze=Ae!==null&&Ae.memoizedState!==null||Wr;Ae=Dc;var ct=Wr;if(Dc=we,(Wr=ze)&&!ct)for(Ft=le;Ft!==null;)we=Ft,ze=we.child,we.tag===22&&we.memoizedState!==null?Np(le):ze!==null?(ze.return=we,Ft=ze):Np(le);for(;xe!==null;)Ft=xe,xd(xe),xe=xe.sibling;Ft=le,Dc=Ae,Wr=ct}Vo(M)}else(le.subtreeFlags&8772)!==0&&xe!==null?(xe.return=le,Ft=xe):Vo(M)}}function Vo(M){for(;Ft!==null;){var P=Ft;if((P.flags&8772)!==0){var F=P.alternate;try{if((P.flags&8772)!==0)switch(P.tag){case 0:case 11:case 15:Wr||wl(5,P);break;case 1:var q=P.stateNode;if(P.flags&4&&!Wr)if(F===null)q.componentDidMount();else{var le=P.elementType===P.type?F.memoizedProps:$o(P.type,F.memoizedProps);q.componentDidUpdate(le,F.memoizedState,q.__reactInternalSnapshotBeforeUpdate)}var xe=P.updateQueue;xe!==null&&ju(P,xe,q);break;case 3:var we=P.updateQueue;if(we!==null){if(F=null,P.child!==null)switch(P.child.tag){case 5:F=P.child.stateNode;break;case 1:F=P.child.stateNode}ju(P,we,F)}break;case 5:var Ae=P.stateNode;if(F===null&&P.flags&4){F=Ae;var ze=P.memoizedProps;switch(P.type){case"button":case"input":case"select":case"textarea":ze.autoFocus&&F.focus();break;case"img":ze.src&&(F.src=ze.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(P.memoizedState===null){var ct=P.alternate;if(ct!==null){var Mt=ct.memoizedState;if(Mt!==null){var Rt=Mt.dehydrated;Rt!==null&&Ir(Rt)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(g(163))}Wr||P.flags&512&&Ac(P)}catch(wt){Jr(P,P.return,wt)}}if(P===M){Ft=null;break}if(F=P.sibling,F!==null){F.return=P.return,Ft=F;break}Ft=P.return}}function oi(M){for(;Ft!==null;){var P=Ft;if(P===M){Ft=null;break}var F=P.sibling;if(F!==null){F.return=P.return,Ft=F;break}Ft=P.return}}function Np(M){for(;Ft!==null;){var P=Ft;try{switch(P.tag){case 0:case 11:case 15:var F=P.return;try{wl(4,P)}catch(ze){Jr(P,F,ze)}break;case 1:var q=P.stateNode;if(typeof q.componentDidMount=="function"){var le=P.return;try{q.componentDidMount()}catch(ze){Jr(P,le,ze)}}var xe=P.return;try{Ac(P)}catch(ze){Jr(P,xe,ze)}break;case 5:var we=P.return;try{Ac(P)}catch(ze){Jr(P,we,ze)}}}catch(ze){Jr(P,P.return,ze)}if(P===M){Ft=null;break}var Ae=P.sibling;if(Ae!==null){Ae.return=P.return,Ft=Ae;break}Ft=P.return}}var jp=Math.ceil,Nc=B.ReactCurrentDispatcher,_d=B.ReactCurrentOwner,Io=B.ReactCurrentBatchConfig,Mr=0,xn=null,cn=null,Tn=0,ho=0,Ia=Kn(0),pn=0,Ml=null,ii=0,Tl=0,jc=0,Pl=null,to=null,yd=0,Fi=1/0,Fs=null,Hc=!1,vd=null,ai=null,Yc=!1,li=null,Un=0,Rl=0,bd=null,Bc=-1,$l=0;function Vn(){return(Mr&6)!==0?Gr():Bc!==-1?Bc:Bc=Gr()}function ci(M){return(M.mode&1)===0?1:(Mr&2)!==0&&Tn!==0?Tn&-Tn:_p.transition!==null?($l===0&&($l=lu()),$l):(M=kr,M!==0||(M=window.event,M=M===void 0?16:Gd(M.type)),M)}function Wo(M,P,F,q){if(50<Rl)throw Rl=0,bd=null,Error(g(185));Fa(M,F,q),((Mr&2)===0||M!==xn)&&(M===xn&&((Mr&2)===0&&(Tl|=F),pn===4&&ui(M,Tn)),no(M,q),F===1&&Mr===0&&(P.mode&1)===0&&(Fi=Gr()+500,cc&&Xs()))}function no(M,P){var F=M.callbackNode;cf(M,P);var q=gi(M,M===xn?Tn:0);if(q===0)F!==null&&so(F),M.callbackNode=null,M.callbackPriority=0;else if(P=q&-q,M.callbackPriority!==P){if(F!=null&&so(F),P===1)M.tag===0?Mi(Hp.bind(null,M)):hp(Hp.bind(null,M)),sc(function(){(Mr&6)===0&&Xs()}),F=null;else{switch(xi(q)){case 1:F=iu;break;case 4:F=Ld;break;case 16:F=Aa;break;case 536870912:F=au;break;default:F=Aa}F=Wp(F,zc.bind(null,M))}M.callbackPriority=P,M.callbackNode=F}}function zc(M,P){if(Bc=-1,$l=0,(Mr&6)!==0)throw Error(g(327));var F=M.callbackNode;if(La()&&M.callbackNode!==F)return null;var q=gi(M,M===xn?Tn:0);if(q===0)return null;if((q&30)!==0||(q&M.expiredLanes)!==0||P)P=Gc(M,q);else{P=q;var le=Mr;Mr|=2;var xe=Bp();(xn!==M||Tn!==P)&&(Fs=null,Fi=Gr()+500,ji(M,P));do try{Af();break}catch(Ae){Yp(M,Ae)}while(!0);Rs(),Nc.current=xe,Mr=le,cn!==null?P=0:(xn=null,Tn=0,P=pn)}if(P!==0){if(P===2&&(le=Ol(M),le!==0&&(q=le,P=Ed(M,le))),P===1)throw F=Ml,ji(M,0),ui(M,q),no(M,Gr()),F;if(P===6)ui(M,q);else{if(le=M.current.alternate,(q&30)===0&&!Lf(le)&&(P=Gc(M,q),P===2&&(xe=Ol(M),xe!==0&&(q=xe,P=Ed(M,xe))),P===1))throw F=Ml,ji(M,0),ui(M,q),no(M,Gr()),F;switch(M.finishedWork=le,M.finishedLanes=q,P){case 0:case 1:throw Error(g(345));case 2:Hi(M,to,Fs);break;case 3:if(ui(M,q),(q&130023424)===q&&(P=yd+500-Gr(),10<P)){if(gi(M,0)!==0)break;if(le=M.suspendedLanes,(le&q)!==q){Vn(),M.pingedLanes|=M.suspendedLanes&le;break}M.timeoutHandle=qs(Hi.bind(null,M,to,Fs),P);break}Hi(M,to,Fs);break;case 4:if(ui(M,q),(q&4194240)===q)break;for(P=M.eventTimes,le=-1;0<q;){var we=31-jo(q);xe=1<<we,we=P[we],we>le&&(le=we),q&=~xe}if(q=le,q=Gr()-q,q=(120>q?120:480>q?480:1080>q?1080:1920>q?1920:3e3>q?3e3:4320>q?4320:1960*jp(q/1960))-q,10<q){M.timeoutHandle=qs(Hi.bind(null,M,to,Fs),q);break}Hi(M,to,Fs);break;case 5:Hi(M,to,Fs);break;default:throw Error(g(329))}}}return no(M,Gr()),M.callbackNode===F?zc.bind(null,M):null}function Ed(M,P){var F=Pl;return M.current.memoizedState.isDehydrated&&(ji(M,P).flags|=256),M=Gc(M,P),M!==2&&(P=to,to=F,P!==null&&Sd(P)),M}function Sd(M){to===null?to=M:to.push.apply(to,M)}function Lf(M){for(var P=M;;){if(P.flags&16384){var F=P.updateQueue;if(F!==null&&(F=F.stores,F!==null))for(var q=0;q<F.length;q++){var le=F[q],xe=le.getSnapshot;le=le.value;try{if(!at(xe(),le))return!1}catch(we){return!1}}}if(F=P.child,P.subtreeFlags&16384&&F!==null)F.return=P,P=F;else{if(P===M)break;for(;P.sibling===null;){if(P.return===null||P.return===M)return!0;P=P.return}P.sibling.return=P.return,P=P.sibling}}return!0}function ui(M,P){for(P&=~jc,P&=~Tl,M.suspendedLanes|=P,M.pingedLanes&=~P,M=M.expirationTimes;0<P;){var F=31-jo(P),q=1<<F;M[F]=-1,P&=~q}}function Hp(M){if((Mr&6)!==0)throw Error(g(327));La();var P=gi(M,0);if((P&1)===0)return no(M,Gr()),null;var F=Gc(M,P);if(M.tag!==0&&F===2){var q=Ol(M);q!==0&&(P=q,F=Ed(M,q))}if(F===1)throw F=Ml,ji(M,0),ui(M,P),no(M,Gr()),F;if(F===6)throw Error(g(345));return M.finishedWork=M.current.alternate,M.finishedLanes=P,Hi(M,to,Fs),no(M,Gr()),null}function Cd(M,P){var F=Mr;Mr|=1;try{return M(P)}finally{Mr=F,Mr===0&&(Fi=Gr()+500,cc&&Xs())}}function Ni(M){li!==null&&li.tag===0&&(Mr&6)===0&&La();var P=Mr;Mr|=1;var F=Io.transition,q=kr;try{if(Io.transition=null,kr=1,M)return M()}finally{kr=q,Io.transition=F,Mr=P,(Mr&6)===0&&Xs()}}function wd(){ho=Ia.current,Yr(Ia)}function ji(M,P){M.finishedWork=null,M.finishedLanes=0;var F=M.timeoutHandle;if(F!==-1&&(M.timeoutHandle=-1,Za(F)),cn!==null)for(F=cn.return;F!==null;){var q=F;switch(Ri(q),q.tag){case 1:q=q.type.childContextTypes,q!=null&&lc();break;case 3:ti(),Yr(Jn),Yr(Ln),yc();break;case 5:_c(q);break;case 4:ti();break;case 13:Yr(Vr);break;case 19:Yr(Vr);break;case 10:mc(q.type._context);break;case 22:case 23:wd()}F=F.return}if(xn=M,cn=M=qo(M.current,null),Tn=ho=P,pn=0,Ml=null,jc=Tl=ii=0,to=Pl=null,ki!==null){for(P=0;P<ki.length;P++)if(F=ki[P],q=F.interleaved,q!==null){F.interleaved=null;var le=q.next,xe=F.pending;if(xe!==null){var we=xe.next;xe.next=le,q.next=we}F.pending=q}ki=null}return M}function Yp(M,P){do{var F=cn;try{if(Rs(),cl.current=wc,ba){for(var q=Kr.memoizedState;q!==null;){var le=q.queue;le!==null&&(le.pending=null),q=q.next}ba=!1}if(ri=0,dn=Zr=Kr=null,ul=!1,Li=0,_d.current=null,F===null||F.return===null){pn=1,Ml=P,cn=null;break}e:{var xe=M,we=F.return,Ae=F,ze=P;if(P=Tn,Ae.flags|=32768,ze!==null&&typeof ze=="object"&&typeof ze.then=="function"){var ct=ze,Mt=Ae,Rt=Mt.tag;if((Mt.mode&1)===0&&(Rt===0||Rt===11||Rt===15)){var wt=Mt.alternate;wt?(Mt.updateQueue=wt.updateQueue,Mt.memoizedState=wt.memoizedState,Mt.lanes=wt.lanes):(Mt.updateQueue=null,Mt.memoizedState=null)}var Ot=Rp(we);if(Ot!==null){Ot.flags&=-257,td(Ot,we,Ae,xe,P),Ot.mode&1&&_l(xe,ct,P),P=Ot,ze=ct;var Nt=P.updateQueue;if(Nt===null){var Ht=new Set;Ht.add(ze),P.updateQueue=Ht}else Nt.add(ze);break e}else{if((P&1)===0){_l(xe,ct,P),Md();break e}ze=Error(g(426))}}else if(Br&&Ae.mode&1){var tn=Rp(we);if(tn!==null){(tn.flags&65536)===0&&(tn.flags|=256),td(tn,we,Ae,xe,P),fs(Oi(ze,Ae));break e}}xe=ze=Oi(ze,Ae),pn!==4&&(pn=2),Pl===null?Pl=[xe]:Pl.push(xe),xe=we;do{switch(xe.tag){case 3:xe.flags|=65536,P&=-P,xe.lanes|=P;var Ze=xl(xe,ze,P);bp(xe,Ze);break e;case 1:Ae=ze;var We=xe.type,nt=xe.stateNode;if((xe.flags&128)===0&&(typeof We.getDerivedStateFromError=="function"||nt!==null&&typeof nt.componentDidCatch=="function"&&(ai===null||!ai.has(nt)))){xe.flags|=65536,P&=-P,xe.lanes|=P;var kt=$c(xe,Ae,P);bp(xe,kt);break e}}xe=xe.return}while(xe!==null)}Gp(F)}catch(Bt){P=Bt,cn===F&&F!==null&&(cn=F=F.return);continue}break}while(!0)}function Bp(){var M=Nc.current;return Nc.current=wc,M===null?wc:M}function Md(){(pn===0||pn===3||pn===2)&&(pn=4),xn===null||(ii&268435455)===0&&(Tl&268435455)===0||ui(xn,Tn)}function Gc(M,P){var F=Mr;Mr|=2;var q=Bp();(xn!==M||Tn!==P)&&(Fs=null,ji(M,P));do try{Df();break}catch(le){Yp(M,le)}while(!0);if(Rs(),Mr=F,Nc.current=q,cn!==null)throw Error(g(261));return xn=null,Tn=0,pn}function Df(){for(;cn!==null;)zp(cn)}function Af(){for(;cn!==null&&!pi();)zp(cn)}function zp(M){var P=Vp(M.alternate,M,ho);M.memoizedProps=M.pendingProps,P===null?Gp(M):cn=P,_d.current=null}function Gp(M){var P=M;do{var F=P.alternate;if(M=P.return,(P.flags&32768)===0){if(F=$f(F,P,ho),F!==null){cn=F;return}}else{if(F=kf(F,P),F!==null){F.flags&=32767,cn=F;return}if(M!==null)M.flags|=32768,M.subtreeFlags=0,M.deletions=null;else{pn=6,cn=null;return}}if(P=P.sibling,P!==null){cn=P;return}cn=P=M}while(P!==null);pn===0&&(pn=5)}function Hi(M,P,F){var q=kr,le=Io.transition;try{Io.transition=null,kr=1,Of(M,P,F,q)}finally{Io.transition=le,kr=q}return null}function Of(M,P,F,q){do La();while(li!==null);if((Mr&6)!==0)throw Error(g(327));F=M.finishedWork;var le=M.finishedLanes;if(F===null)return null;if(M.finishedWork=null,M.finishedLanes=0,F===M.current)throw Error(g(177));M.callbackNode=null,M.callbackPriority=0;var xe=F.lanes|F.childLanes;if(jd(M,xe),M===xn&&(cn=xn=null,Tn=0),(F.subtreeFlags&2064)===0&&(F.flags&2064)===0||Yc||(Yc=!0,Wp(Aa,function(){return La(),null})),xe=(F.flags&15990)!==0,(F.subtreeFlags&15990)!==0||xe){xe=Io.transition,Io.transition=null;var we=kr;kr=1;var Ae=Mr;Mr|=4,_d.current=null,If(M,F),hd(F,M),Mf(wi),Hl=!!Qa,wi=Qa=null,M.current=F,Fc(F),of(),Mr=Ae,kr=we,Io.transition=xe}else M.current=F;if(Yc&&(Yc=!1,li=M,Un=le),xe=M.pendingLanes,xe===0&&(ai=null),lf(F.stateNode),no(M,Gr()),P!==null)for(q=M.onRecoverableError,F=0;F<P.length;F++)le=P[F],q(le.value,{componentStack:le.stack,digest:le.digest});if(Hc)throw Hc=!1,M=vd,vd=null,M;return(Un&1)!==0&&M.tag!==0&&La(),xe=M.pendingLanes,(xe&1)!==0?M===bd?Rl++:(Rl=0,bd=M):Rl=0,Xs(),null}function La(){if(li!==null){var M=xi(Un),P=Io.transition,F=kr;try{if(Io.transition=null,kr=16>M?16:M,li===null)var q=!1;else{if(M=li,li=null,Un=0,(Mr&6)!==0)throw Error(g(331));var le=Mr;for(Mr|=4,Ft=M.current;Ft!==null;){var xe=Ft,we=xe.child;if((Ft.flags&16)!==0){var Ae=xe.deletions;if(Ae!==null){for(var ze=0;ze<Ae.length;ze++){var ct=Ae[ze];for(Ft=ct;Ft!==null;){var Mt=Ft;switch(Mt.tag){case 0:case 11:case 15:Os(8,Mt,xe)}var Rt=Mt.child;if(Rt!==null)Rt.return=Mt,Ft=Rt;else for(;Ft!==null;){Mt=Ft;var wt=Mt.sibling,Ot=Mt.return;if(Ap(Mt),Mt===ct){Ft=null;break}if(wt!==null){wt.return=Ot,Ft=wt;break}Ft=Ot}}}var Nt=xe.alternate;if(Nt!==null){var Ht=Nt.child;if(Ht!==null){Nt.child=null;do{var tn=Ht.sibling;Ht.sibling=null,Ht=tn}while(Ht!==null)}}Ft=xe}}if((xe.subtreeFlags&2064)!==0&&we!==null)we.return=xe,Ft=we;else e:for(;Ft!==null;){if(xe=Ft,(xe.flags&2048)!==0)switch(xe.tag){case 0:case 11:case 15:Os(9,xe,xe.return)}var Ze=xe.sibling;if(Ze!==null){Ze.return=xe.return,Ft=Ze;break e}Ft=xe.return}}var We=M.current;for(Ft=We;Ft!==null;){we=Ft;var nt=we.child;if((we.subtreeFlags&2064)!==0&&nt!==null)nt.return=we,Ft=nt;else e:for(we=We;Ft!==null;){if(Ae=Ft,(Ae.flags&2048)!==0)try{switch(Ae.tag){case 0:case 11:case 15:wl(9,Ae)}}catch(Bt){Jr(Ae,Ae.return,Bt)}if(Ae===we){Ft=null;break e}var kt=Ae.sibling;if(kt!==null){kt.return=Ae.return,Ft=kt;break e}Ft=Ae.return}}if(Mr=le,Xs(),ts&&typeof ts.onPostCommitFiberRoot=="function")try{ts.onPostCommitFiberRoot(Dl,M)}catch(Bt){}q=!0}return q}finally{kr=F,Io.transition=P}}return!1}function Uc(M,P,F){P=Oi(F,P),P=xl(M,P,1),M=Po(M,P,1),P=Vn(),M!==null&&(Fa(M,1,P),no(M,P))}function Jr(M,P,F){if(M.tag===3)Uc(M,M,F);else for(;P!==null;){if(P.tag===3){Uc(P,M,F);break}else if(P.tag===1){var q=P.stateNode;if(typeof P.type.getDerivedStateFromError=="function"||typeof q.componentDidCatch=="function"&&(ai===null||!ai.has(q))){M=Oi(F,M),M=$c(P,M,1),P=Po(P,M,1),M=Vn(),P!==null&&(Fa(P,1,M),no(P,M));break}}P=P.return}}function Ff(M,P,F){var q=M.pingCache;q!==null&&q.delete(P),P=Vn(),M.pingedLanes|=M.suspendedLanes&F,xn===M&&(Tn&F)===F&&(pn===4||pn===3&&(Tn&130023424)===Tn&&500>Gr()-yd?ji(M,0):jc|=F),no(M,P)}function Up(M,P){P===0&&((M.mode&1)===0?P=1:(P=Al,Al<<=1,(Al&130023424)===0&&(Al=4194304)));var F=Vn();M=$s(M,P),M!==null&&(Fa(M,P,F),no(M,F))}function Nf(M){var P=M.memoizedState,F=0;P!==null&&(F=P.retryLane),Up(M,F)}function jf(M,P){var F=0;switch(M.tag){case 13:var q=M.stateNode,le=M.memoizedState;le!==null&&(F=le.retryLane);break;case 19:q=M.stateNode;break;default:throw Error(g(314))}q!==null&&q.delete(P),Up(M,F)}var Vp;Vp=function(M,P,F){if(M!==null)if(M.memoizedProps!==P.pendingProps||Jn.current)zn=!0;else{if((M.lanes&F)===0&&(P.flags&128)===0)return zn=!1,Ip(M,P,F);zn=(M.flags&131072)!==0}else zn=!1,Br&&(P.flags&1048576)!==0&&gp(P,dc,P.index);switch(P.lanes=0,P.tag){case 2:var q=P.type;Lc(M,P),M=P.pendingProps;var le=ha(P,Ln.current);ei(P,F),le=Di(null,P,q,M,le,F);var xe=vc();return P.flags|=1,typeof le=="object"&&le!==null&&typeof le.render=="function"&&le.$$typeof===void 0?(P.tag=1,P.memoizedState=null,P.updateQueue=null,Qn(q)?(xe=!0,So(P)):xe=!1,P.memoizedState=le.state!==null&&le.state!==void 0?le.state:null,gc(P),le.updater=Pc,P.stateNode=le,le._reactInternals=P,ed(P,q,M,F),P=cd(null,P,q,!0,xe,F)):(P.tag=0,Br&&xe&&tl(P),Cn(null,P,le,F),P=P.child),P;case 16:q=P.elementType;e:{switch(Lc(M,P),M=P.pendingProps,le=q._init,q=le(q._payload),P.type=q,le=P.tag=Yf(q),M=$o(q,M),le){case 0:P=ad(null,P,q,M,F);break e;case 1:P=ld(null,P,q,M,F);break e;case 11:P=$p(null,P,q,M,F);break e;case 14:P=rd(null,P,q,$o(q.type,M),F);break e}throw Error(g(306,q,""))}return P;case 0:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),ad(M,P,q,le,F);case 1:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),ld(M,P,q,le,F);case 3:e:{if(kp(P),M===null)throw Error(g(387));q=P.pendingProps,xe=P.memoizedState,le=xe.element,vp(M,P),ya(P,q,null,F);var we=P.memoizedState;if(q=we.element,xe.isDehydrated)if(xe={element:q,isDehydrated:!1,cache:we.cache,pendingSuspenseBoundaries:we.pendingSuspenseBoundaries,transitions:we.transitions},P.updateQueue.baseState=xe,P.memoizedState=xe,P.flags&256){le=Oi(Error(g(423)),P),P=ys(M,P,q,F,le);break e}else if(q!==le){le=Oi(Error(g(424)),P),P=ys(M,P,q,F,le);break e}else for(uo=Ks(P.stateNode.containerInfo.firstChild),An=P,Br=!0,Yo=null,F=fc(P,null,q,F),P.child=F;F;)F.flags=F.flags&-3|4096,F=F.sibling;else{if(ps(),q===le){P=zo(M,P,F);break e}Cn(M,P,q,F)}P=P.child}return P;case 5:return Yu(P),M===null&&Xn(P),q=P.type,le=P.pendingProps,xe=M!==null?M.memoizedProps:null,we=le.children,Xa(q,le)?we=null:xe!==null&&Xa(q,xe)&&(P.flags|=32),od(M,P),Cn(M,P,we,F),P.child;case 6:return M===null&&Xn(P),null;case 13:return Ic(M,P,F);case 4:return Hu(P,P.stateNode.containerInfo),q=P.pendingProps,M===null?P.child=Xr(P,null,q,F):Cn(M,P,q,F),P.child;case 11:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),$p(M,P,q,le,F);case 7:return Cn(M,P,P.pendingProps,F),P.child;case 8:return Cn(M,P,P.pendingProps.children,F),P.child;case 12:return Cn(M,P,P.pendingProps.children,F),P.child;case 10:e:{if(q=P.type._context,le=P.pendingProps,xe=P.memoizedProps,we=le.value,jr(il,q._currentValue),q._currentValue=we,xe!==null)if(at(xe.value,we)){if(xe.children===le.children&&!Jn.current){P=zo(M,P,F);break e}}else for(xe=P.child,xe!==null&&(xe.return=P);xe!==null;){var Ae=xe.dependencies;if(Ae!==null){we=xe.child;for(var ze=Ae.firstContext;ze!==null;){if(ze.context===q){if(xe.tag===1){ze=ks(-1,F&-F),ze.tag=2;var ct=xe.updateQueue;if(ct!==null){ct=ct.shared;var Mt=ct.pending;Mt===null?ze.next=ze:(ze.next=Mt.next,Mt.next=ze),ct.pending=ze}}xe.lanes|=F,ze=xe.alternate,ze!==null&&(ze.lanes|=F),Sn(xe.return,F,P),Ae.lanes|=F;break}ze=ze.next}}else if(xe.tag===10)we=xe.type===P.type?null:xe.child;else if(xe.tag===18){if(we=xe.return,we===null)throw Error(g(341));we.lanes|=F,Ae=we.alternate,Ae!==null&&(Ae.lanes|=F),Sn(we,F,P),we=xe.sibling}else we=xe.child;if(we!==null)we.return=xe;else for(we=xe;we!==null;){if(we===P){we=null;break}if(xe=we.sibling,xe!==null){xe.return=we.return,we=xe;break}we=we.return}xe=we}Cn(M,P,le.children,F),P=P.child}return P;case 9:return le=P.type,q=P.pendingProps.children,ei(P,F),le=Mo(le),q=q(le),P.flags|=1,Cn(M,P,q,F),P.child;case 14:return q=P.type,le=$o(q,P.pendingProps),le=$o(q.type,le),rd(M,P,q,le,F);case 15:return _s(M,P,P.type,P.pendingProps,F);case 17:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),Lc(M,P),P.tag=1,Qn(q)?(M=!0,So(P)):M=!1,ei(P,F),Ai(P,q,le),ed(P,q,le,F),cd(null,P,q,!0,M,F);case 19:return ni(M,P,F);case 22:return nd(M,P,F)}throw Error(g(156,P.tag))};function Wp(M,P){return Er(M,P)}function Hf(M,P,F,q){this.tag=M,this.key=F,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=P,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=q,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Lo(M,P,F,q){return new Hf(M,P,F,q)}function Vc(M){return M=M.prototype,!(!M||!M.isReactComponent)}function Yf(M){if(typeof M=="function")return Vc(M)?1:0;if(M!=null){if(M=M.$$typeof,M===ie)return 11;if(M===ee)return 14}return 2}function qo(M,P){var F=M.alternate;return F===null?(F=Lo(M.tag,P,M.key,M.mode),F.elementType=M.elementType,F.type=M.type,F.stateNode=M.stateNode,F.alternate=M,M.alternate=F):(F.pendingProps=P,F.type=M.type,F.flags=0,F.subtreeFlags=0,F.deletions=null),F.flags=M.flags&14680064,F.childLanes=M.childLanes,F.lanes=M.lanes,F.child=M.child,F.memoizedProps=M.memoizedProps,F.memoizedState=M.memoizedState,F.updateQueue=M.updateQueue,P=M.dependencies,F.dependencies=P===null?null:{lanes:P.lanes,firstContext:P.firstContext},F.sibling=M.sibling,F.index=M.index,F.ref=M.ref,F}function Wc(M,P,F,q,le,xe){var we=2;if(q=M,typeof M=="function")Vc(M)&&(we=1);else if(typeof M=="string")we=5;else e:switch(M){case V:return Yi(F.children,le,xe,P);case J:we=8,le|=8;break;case Q:return M=Lo(12,F,P,le|2),M.elementType=Q,M.lanes=xe,M;case oe:return M=Lo(13,F,P,le),M.elementType=oe,M.lanes=xe,M;case Z:return M=Lo(19,F,P,le),M.elementType=Z,M.lanes=xe,M;case fe:return qc(F,le,xe,P);default:if(typeof M=="object"&&M!==null)switch(M.$$typeof){case X:we=10;break e;case re:we=9;break e;case ie:we=11;break e;case ee:we=14;break e;case ce:we=16,q=null;break e}throw Error(g(130,M==null?M:typeof M,""))}return P=Lo(we,F,P,le),P.elementType=M,P.type=q,P.lanes=xe,P}function Yi(M,P,F,q){return M=Lo(7,M,q,P),M.lanes=F,M}function qc(M,P,F,q){return M=Lo(22,M,q,P),M.elementType=fe,M.lanes=F,M.stateNode={isHidden:!1},M}function Td(M,P,F){return M=Lo(6,M,null,P),M.lanes=F,M}function Pd(M,P,F){return P=Lo(4,M.children!==null?M.children:[],M.key,P),P.lanes=F,P.stateNode={containerInfo:M.containerInfo,pendingChildren:null,implementation:M.implementation},P}function Bf(M,P,F,q,le){this.tag=P,this.containerInfo=M,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Oa(0),this.expirationTimes=Oa(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Oa(0),this.identifierPrefix=q,this.onRecoverableError=le,this.mutableSourceEagerHydrationData=null}function Rd(M,P,F,q,le,xe,we,Ae,ze){return M=new Bf(M,P,F,Ae,ze),P===1?(P=1,xe===!0&&(P|=8)):P=0,xe=Lo(3,null,null,P),M.current=xe,xe.stateNode=M,xe.memoizedState={element:q,isDehydrated:F,cache:null,transitions:null,pendingSuspenseBoundaries:null},gc(xe),M}function zf(M,P,F){var q=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W,key:q==null?null:""+q,children:M,containerInfo:P,implementation:F}}function qp(M){if(!M)return Qs;M=M._reactInternals;e:{if(ut(M)!==M||M.tag!==1)throw Error(g(170));var P=M;do{switch(P.tag){case 3:P=P.stateNode.context;break e;case 1:if(Qn(P.type)){P=P.stateNode.__reactInternalMemoizedMergedChildContext;break e}}P=P.return}while(P!==null);throw Error(g(171))}if(M.tag===1){var F=M.type;if(Qn(F))return fp(M,F,P)}return P}function Kp(M,P,F,q,le,xe,we,Ae,ze){return M=Rd(F,q,!0,M,le,xe,we,Ae,ze),M.context=qp(null),F=M.current,q=Vn(),le=ci(F),xe=ks(q,le),xe.callback=P!=null?P:null,Po(F,xe,le),M.current.lanes=le,Fa(M,le,q),no(M,q),M}function Kc(M,P,F,q){var le=P.current,xe=Vn(),we=ci(le);return F=qp(F),P.context===null?P.context=F:P.pendingContext=F,P=ks(xe,we),P.payload={element:M},q=q===void 0?null:q,q!==null&&(P.callback=q),M=Po(le,P,we),M!==null&&(Wo(M,le,we,xe),xc(M,le,we)),we}function Jc(M){if(M=M.current,!M.child)return null;switch(M.child.tag){case 5:return M.child.stateNode;default:return M.child.stateNode}}function Jp(M,P){if(M=M.memoizedState,M!==null&&M.dehydrated!==null){var F=M.retryLane;M.retryLane=F!==0&&F<P?F:P}}function $d(M,P){Jp(M,P),(M=M.alternate)&&Jp(M,P)}function Gf(){return null}var Qp=typeof reportError=="function"?reportError:function(M){console.error(M)};function Qc(M){this._internalRoot=M}kl.prototype.render=Qc.prototype.render=function(M){var P=this._internalRoot;if(P===null)throw Error(g(409));Kc(M,P,null,null)},kl.prototype.unmount=Qc.prototype.unmount=function(){var M=this._internalRoot;if(M!==null){this._internalRoot=null;var P=M.containerInfo;Ni(function(){Kc(null,M,null,null)}),P[co]=null}};function kl(M){this._internalRoot=M}kl.prototype.unstable_scheduleHydration=function(M){if(M){var P=uu();M={blockedOn:null,target:M,priority:P};for(var F=0;F<zs.length&&P!==0&&P<zs[F].priority;F++);zs.splice(F,0,M),F===0&&Bd(M)}};function kd(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11)}function Xc(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11&&(M.nodeType!==8||M.nodeValue!==" react-mount-point-unstable "))}function Xp(){}function Uf(M,P,F,q,le){if(le){if(typeof q=="function"){var xe=q;q=function(){var ct=Jc(we);xe.call(ct)}}var we=Kp(P,q,M,0,null,!1,!1,"",Xp);return M._reactRootContainer=we,M[co]=we.current,Ws(M.nodeType===8?M.parentNode:M),Ni(),we}for(;le=M.lastChild;)M.removeChild(le);if(typeof q=="function"){var Ae=q;q=function(){var ct=Jc(ze);Ae.call(ct)}}var ze=Rd(M,0,!1,null,null,!1,!1,"",Xp);return M._reactRootContainer=ze,M[co]=ze.current,Ws(M.nodeType===8?M.parentNode:M),Ni(function(){Kc(P,ze,F,q)}),ze}function Bi(M,P,F,q,le){var xe=F._reactRootContainer;if(xe){var we=xe;if(typeof le=="function"){var Ae=le;le=function(){var ze=Jc(we);Ae.call(ze)}}Kc(P,we,M,le)}else we=Uf(F,P,M,le,q);return Jc(we)}cu=function(M){switch(M.tag){case 3:var P=M.stateNode;if(P.current.memoizedState.isDehydrated){var F=Wi(P.pendingLanes);F!==0&&(Na(P,F|1),no(P,Gr()),(Mr&6)===0&&(Fi=Gr()+500,Xs()))}break;case 13:Ni(function(){var q=$s(M,1);if(q!==null){var le=Vn();Wo(q,M,1,le)}}),$d(M,1)}},Fl=function(M){if(M.tag===13){var P=$s(M,134217728);if(P!==null){var F=Vn();Wo(P,M,134217728,F)}$d(M,134217728)}},Hd=function(M){if(M.tag===13){var P=ci(M),F=$s(M,P);if(F!==null){var q=Vn();Wo(F,M,P,q)}$d(M,P)}},uu=function(){return kr},du=function(M,P){var F=kr;try{return kr=M,P()}finally{kr=F}},vr=function(M,P,F){switch(P){case"input":if(rt(M,F),P=F.name,F.type==="radio"&&P!=null){for(F=M;F.parentNode;)F=F.parentNode;for(F=F.querySelectorAll("input[name="+JSON.stringify(""+P)+'][type="radio"]'),P=0;P<F.length;P++){var q=F[P];if(q!==M&&q.form===M.form){var le=ac(q);if(!le)throw Error(g(90));Ge(q),rt(q,le)}}}break;case"textarea":st(M,F);break;case"select":P=F.value,P!=null&&Ne(M,!!F.multiple,P,!1)}},yn=Cd,Qr=Ni;var Vf={usingClientEntryPoint:!1,Events:[In,pr,ac,xr,qr,Cd]},Il={findFiberByHostInstance:as,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Wf={bundleType:Il.bundleType,version:Il.version,rendererPackageName:Il.rendererPackageName,rendererConfig:Il.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:B.ReactCurrentDispatcher,findHostInstanceByFiber:function(M){return M=dr(M),M===null?null:M.stateNode},findFiberByHostInstance:Il.findFiberByHostInstance||Gf,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__!="undefined"){var Zc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Zc.isDisabled&&Zc.supportsFiber)try{Dl=Zc.inject(Wf),ts=Zc}catch(M){}}return reactDom_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Vf,reactDom_production_min.createPortal=function(M,P){var F=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!kd(P))throw Error(g(200));return zf(M,P,null,F)},reactDom_production_min.createRoot=function(M,P){if(!kd(M))throw Error(g(299));var F=!1,q="",le=Qp;return P!=null&&(P.unstable_strictMode===!0&&(F=!0),P.identifierPrefix!==void 0&&(q=P.identifierPrefix),P.onRecoverableError!==void 0&&(le=P.onRecoverableError)),P=Rd(M,1,!1,null,null,F,!1,q,le),M[co]=P.current,Ws(M.nodeType===8?M.parentNode:M),new Qc(P)},reactDom_production_min.findDOMNode=function(M){if(M==null)return null;if(M.nodeType===1)return M;var P=M._reactInternals;if(P===void 0)throw typeof M.render=="function"?Error(g(188)):(M=Object.keys(M).join(","),Error(g(268,M)));return M=dr(P),M=M===null?null:M.stateNode,M},reactDom_production_min.flushSync=function(M){return Ni(M)},reactDom_production_min.hydrate=function(M,P,F){if(!Xc(P))throw Error(g(200));return Bi(null,M,P,!0,F)},reactDom_production_min.hydrateRoot=function(M,P,F){if(!kd(M))throw Error(g(405));var q=F!=null&&F.hydratedSources||null,le=!1,xe="",we=Qp;if(F!=null&&(F.unstable_strictMode===!0&&(le=!0),F.identifierPrefix!==void 0&&(xe=F.identifierPrefix),F.onRecoverableError!==void 0&&(we=F.onRecoverableError)),P=Kp(P,null,M,1,F!=null?F:null,le,!1,xe,we),M[co]=P.current,Ws(M),q)for(M=0;M<q.length;M++)F=q[M],le=F._getVersion,le=le(F._source),P.mutableSourceEagerHydrationData==null?P.mutableSourceEagerHydrationData=[F,le]:P.mutableSourceEagerHydrationData.push(F,le);return new kl(P)},reactDom_production_min.render=function(M,P,F){if(!Xc(P))throw Error(g(200));return Bi(null,M,P,!1,F)},reactDom_production_min.unmountComponentAtNode=function(M){if(!Xc(M))throw Error(g(40));return M._reactRootContainer?(Ni(function(){Bi(null,null,M,!1,function(){M._reactRootContainer=null,M[co]=null})}),!0):!1},reactDom_production_min.unstable_batchedUpdates=Cd,reactDom_production_min.unstable_renderSubtreeIntoContainer=function(M,P,F,q){if(!Xc(F))throw Error(g(200));if(M==null||M._reactInternals===void 0)throw Error(g(38));return Bi(M,P,F,!1,q)},reactDom_production_min.version="18.3.1-next-f1338f8080-20240426",reactDom_production_min}var hasRequiredReactDom;function requireReactDom(){if(hasRequiredReactDom)return reactDom.exports;hasRequiredReactDom=1;function d(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__=="undefined"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(d)}catch(m){console.error(m)}}return d(),reactDom.exports=requireReactDom_production_min(),reactDom.exports}var hasRequiredClient;function requireClient(){if(hasRequiredClient)return client;hasRequiredClient=1;var d=requireReactDom();return client.createRoot=d.createRoot,client.hydrateRoot=d.hydrateRoot,client}var clientExports=requireClient();const scriptRel="modulepreload",assetsURL=function(d){return"/"+d},seen={},__vitePreload=function(m,g,x){let b=Promise.resolve();if(g&&g.length>0){let v=function(T){return Promise.all(T.map(R=>Promise.resolve(R).then(k=>({status:"fulfilled",value:k}),k=>({status:"rejected",reason:k}))))};document.getElementsByTagName("link");const S=document.querySelector("meta[property=csp-nonce]"),C=(S==null?void 0:S.nonce)||(S==null?void 0:S.getAttribute("nonce"));b=v(g.map(T=>{if(T=assetsURL(T),T in seen)return;seen[T]=!0;const R=T.endsWith(".css"),k=R?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${T}"]${k}`))return;const L=document.createElement("link");if(L.rel=R?"stylesheet":scriptRel,R||(L.as="script"),L.crossOrigin="",L.href=T,C&&L.setAttribute("nonce",C),document.head.appendChild(L),R)return new Promise((D,A)=>{L.addEventListener("load",D),L.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${T}`)))})}))}function E(v){const S=new Event("vite:preloadError",{cancelable:!0});if(S.payload=v,window.dispatchEvent(S),!S.defaultPrevented)throw v}return b.then(v=>{for(const S of v||[])S.status==="rejected"&&E(S.reason);return m().catch(E)})};window.crypto||(window.crypto={});crypto.subtle||(crypto.subtle=console.debug("using polyfill for crypto.subtle")||{});var Lm;(Lm=crypto.subtle).digest||(Lm.digest=(d,m)=>vt(void 0,null,function*(){if(d!=="SHA-512")return alert(d+" required but not supported");const x=(yield __vitePreload(()=>import("./sha512-wrZA9gj0.js").then(b=>b.s),[])).default.arrayBuffer;return x(m)}));var reactDomExports=requireReactDom();const ReactDOM=getDefaultExportFromCjs(reactDomExports);/**
32
+ `+xe.stack}return{value:M,source:P,stack:le,digest:null}}function Rc(M,P,F){return{value:M,source:null,stack:F!=null?F:null,digest:P!=null?P:null}}function Ta(M,P){try{console.error(P.value)}catch(F){setTimeout(function(){throw F})}}var Pp=typeof WeakMap=="function"?WeakMap:Map;function xl(M,P,F){F=ks(-1,F),F.tag=3,F.payload={element:null};var q=P.value;return F.callback=function(){Hc||(Hc=!0,vd=q),Ta(M,P)},F}function $c(M,P,F){F=ks(-1,F),F.tag=3;var q=M.type.getDerivedStateFromError;if(typeof q=="function"){var le=P.value;F.payload=function(){return q(le)},F.callback=function(){Ta(M,P)}}var xe=M.stateNode;return xe!==null&&typeof xe.componentDidCatch=="function"&&(F.callback=function(){Ta(M,P),typeof q!="function"&&(ai===null?ai=new Set([this]):ai.add(this));var we=P.stack;this.componentDidCatch(P.value,{componentStack:we!==null?we:""})}),F}function _l(M,P,F){var q=M.pingCache;if(q===null){q=M.pingCache=new Pp;var le=new Set;q.set(P,le)}else le=q.get(P),le===void 0&&(le=new Set,q.set(P,le));le.has(F)||(le.add(F),M=Ff.bind(null,M,P,F),P.then(M,M))}function Rp(M){do{var P;if((P=M.tag===13)&&(P=M.memoizedState,P=P!==null?P.dehydrated!==null:!0),P)return M;M=M.return}while(M!==null);return null}function td(M,P,F,q,le){return(M.mode&1)===0?(M===P?M.flags|=65536:(M.flags|=128,F.flags|=131072,F.flags&=-52805,F.tag===1&&(F.alternate===null?F.tag=17:(P=ks(-1,1),P.tag=2,Po(F,P,1))),F.lanes|=1),M):(M.flags|=65536,M.lanes=le,M)}var kc=B.ReactCurrentOwner,zn=!1;function Cn(M,P,F,q){P.child=M===null?fc(P,null,F,q):Xr(P,M.child,F,q)}function $p(M,P,F,q,le){F=F.render;var xe=P.ref;return ei(P,le),q=Di(M,P,F,q,xe,le),F=vc(),M!==null&&!zn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,zo(M,P,le)):(Br&&F&&tl(P),P.flags|=1,Cn(M,P,q,le),P.child)}function rd(M,P,F,q,le){if(M===null){var xe=F.type;return typeof xe=="function"&&!Vc(xe)&&xe.defaultProps===void 0&&F.compare===null&&F.defaultProps===void 0?(P.tag=15,P.type=xe,_s(M,P,xe,q,le)):(M=Wc(F.type,null,q,P,P.mode,le),M.ref=P.ref,M.return=P,P.child=M)}if(xe=M.child,(M.lanes&le)===0){var we=xe.memoizedProps;if(F=F.compare,F=F!==null?F:At,F(we,q)&&M.ref===P.ref)return zo(M,P,le)}return P.flags|=1,M=qo(xe,q),M.ref=P.ref,M.return=P,P.child=M}function _s(M,P,F,q,le){if(M!==null){var xe=M.memoizedProps;if(At(xe,q)&&M.ref===P.ref)if(zn=!1,P.pendingProps=q=xe,(M.lanes&le)!==0)(M.flags&131072)!==0&&(zn=!0);else return P.lanes=M.lanes,zo(M,P,le)}return ad(M,P,F,q,le)}function nd(M,P,F){var q=P.pendingProps,le=q.children,xe=M!==null?M.memoizedState:null;if(q.mode==="hidden")if((P.mode&1)===0)P.memoizedState={baseLanes:0,cachePool:null,transitions:null},jr(Ia,ho),ho|=F;else{if((F&1073741824)===0)return M=xe!==null?xe.baseLanes|F:F,P.lanes=P.childLanes=1073741824,P.memoizedState={baseLanes:M,cachePool:null,transitions:null},P.updateQueue=null,jr(Ia,ho),ho|=M,null;P.memoizedState={baseLanes:0,cachePool:null,transitions:null},q=xe!==null?xe.baseLanes:F,jr(Ia,ho),ho|=q}else xe!==null?(q=xe.baseLanes|F,P.memoizedState=null):q=F,jr(Ia,ho),ho|=q;return Cn(M,P,le,F),P.child}function od(M,P){var F=P.ref;(M===null&&F!==null||M!==null&&M.ref!==F)&&(P.flags|=512,P.flags|=2097152)}function ad(M,P,F,q,le){var xe=Qn(F)?Yn:Ln.current;return xe=ha(P,xe),ei(P,le),F=Di(M,P,F,q,xe,le),q=vc(),M!==null&&!zn?(P.updateQueue=M.updateQueue,P.flags&=-2053,M.lanes&=~le,zo(M,P,le)):(Br&&q&&tl(P),P.flags|=1,Cn(M,P,F,le),P.child)}function ld(M,P,F,q,le){if(Qn(F)){var xe=!0;So(P)}else xe=!1;if(ei(P,le),P.stateNode===null)Lc(M,P),Ai(P,F,q),ed(P,F,q,le),q=!0;else if(M===null){var we=P.stateNode,Ae=P.memoizedProps;we.props=Ae;var ze=we.context,ct=F.contextType;typeof ct=="object"&&ct!==null?ct=Mo(ct):(ct=Qn(F)?Yn:Ln.current,ct=ha(P,ct));var Mt=F.getDerivedStateFromProps,Rt=typeof Mt=="function"||typeof we.getSnapshotBeforeUpdate=="function";Rt||typeof we.UNSAFE_componentWillReceiveProps!="function"&&typeof we.componentWillReceiveProps!="function"||(Ae!==q||ze!==ct)&&Ma(P,we,q,ct),To=!1;var wt=P.memoizedState;we.state=wt,ya(P,q,we,le),ze=P.memoizedState,Ae!==q||wt!==ze||Jn.current||To?(typeof Mt=="function"&&(Tc(P,F,Mt,q),ze=P.memoizedState),(Ae=To||Zu(P,F,Ae,q,wt,ze,ct))?(Rt||typeof we.UNSAFE_componentWillMount!="function"&&typeof we.componentWillMount!="function"||(typeof we.componentWillMount=="function"&&we.componentWillMount(),typeof we.UNSAFE_componentWillMount=="function"&&we.UNSAFE_componentWillMount()),typeof we.componentDidMount=="function"&&(P.flags|=4194308)):(typeof we.componentDidMount=="function"&&(P.flags|=4194308),P.memoizedProps=q,P.memoizedState=ze),we.props=q,we.state=ze,we.context=ct,q=Ae):(typeof we.componentDidMount=="function"&&(P.flags|=4194308),q=!1)}else{we=P.stateNode,vp(M,P),Ae=P.memoizedProps,ct=P.type===P.elementType?Ae:$o(P.type,Ae),we.props=ct,Rt=P.pendingProps,wt=we.context,ze=F.contextType,typeof ze=="object"&&ze!==null?ze=Mo(ze):(ze=Qn(F)?Yn:Ln.current,ze=ha(P,ze));var Ot=F.getDerivedStateFromProps;(Mt=typeof Ot=="function"||typeof we.getSnapshotBeforeUpdate=="function")||typeof we.UNSAFE_componentWillReceiveProps!="function"&&typeof we.componentWillReceiveProps!="function"||(Ae!==Rt||wt!==ze)&&Ma(P,we,q,ze),To=!1,wt=P.memoizedState,we.state=wt,ya(P,q,we,le);var Nt=P.memoizedState;Ae!==Rt||wt!==Nt||Jn.current||To?(typeof Ot=="function"&&(Tc(P,F,Ot,q),Nt=P.memoizedState),(ct=To||Zu(P,F,ct,q,wt,Nt,ze)||!1)?(Mt||typeof we.UNSAFE_componentWillUpdate!="function"&&typeof we.componentWillUpdate!="function"||(typeof we.componentWillUpdate=="function"&&we.componentWillUpdate(q,Nt,ze),typeof we.UNSAFE_componentWillUpdate=="function"&&we.UNSAFE_componentWillUpdate(q,Nt,ze)),typeof we.componentDidUpdate=="function"&&(P.flags|=4),typeof we.getSnapshotBeforeUpdate=="function"&&(P.flags|=1024)):(typeof we.componentDidUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=4),typeof we.getSnapshotBeforeUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=1024),P.memoizedProps=q,P.memoizedState=Nt),we.props=q,we.state=Nt,we.context=ze,q=ct):(typeof we.componentDidUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=4),typeof we.getSnapshotBeforeUpdate!="function"||Ae===M.memoizedProps&&wt===M.memoizedState||(P.flags|=1024),q=!1)}return cd(M,P,F,q,xe,le)}function cd(M,P,F,q,le,xe){od(M,P);var we=(P.flags&128)!==0;if(!q&&!we)return le&&mp(P,F,!1),zo(M,P,xe);q=P.stateNode,kc.current=P;var Ae=we&&typeof F.getDerivedStateFromError!="function"?null:q.render();return P.flags|=1,M!==null&&we?(P.child=Xr(P,M.child,null,xe),P.child=Xr(P,null,Ae,xe)):Cn(M,P,Ae,xe),P.memoizedState=q.state,le&&mp(P,F,!0),P.child}function kp(M){var P=M.stateNode;P.pendingContext?pp(M,P.pendingContext,P.pendingContext!==P.context):P.context&&pp(M,P.context,!1),Hu(M,P.containerInfo)}function ys(M,P,F,q,le){return ps(),fs(le),P.flags|=256,Cn(M,P,F,q),P.child}var yl={dehydrated:null,treeContext:null,retryLane:0};function vl(M){return{baseLanes:M,cachePool:null,transitions:null}}function Ic(M,P,F){var q=P.pendingProps,le=Vr.current,xe=!1,we=(P.flags&128)!==0,Ae;if((Ae=we)||(Ae=M!==null&&M.memoizedState===null?!1:(le&2)!==0),Ae?(xe=!0,P.flags&=-129):(M===null||M.memoizedState!==null)&&(le|=1),jr(Vr,le&1),M===null)return Xn(P),M=P.memoizedState,M!==null&&(M=M.dehydrated,M!==null)?((P.mode&1)===0?P.lanes=1:M.data==="$!"?P.lanes=8:P.lanes=1073741824,null):(we=q.children,M=q.fallback,xe?(q=P.mode,xe=P.child,we={mode:"hidden",children:we},(q&1)===0&&xe!==null?(xe.childLanes=0,xe.pendingProps=we):xe=qc(we,q,0,null),M=Yi(M,q,F,null),xe.return=P,M.return=P,xe.sibling=M,P.child=xe,P.child.memoizedState=vl(F),P.memoizedState=yl,M):Pa(P,we));if(le=M.memoizedState,le!==null&&(Ae=le.dehydrated,Ae!==null))return er(M,P,we,q,Ae,le,F);if(xe){xe=q.fallback,we=P.mode,le=M.child,Ae=le.sibling;var ze={mode:"hidden",children:q.children};return(we&1)===0&&P.child!==le?(q=P.child,q.childLanes=0,q.pendingProps=ze,P.deletions=null):(q=qo(le,ze),q.subtreeFlags=le.subtreeFlags&14680064),Ae!==null?xe=qo(Ae,xe):(xe=Yi(xe,we,F,null),xe.flags|=2),xe.return=P,q.return=P,q.sibling=xe,P.child=q,q=xe,xe=P.child,we=M.child.memoizedState,we=we===null?vl(F):{baseLanes:we.baseLanes|F,cachePool:null,transitions:we.transitions},xe.memoizedState=we,xe.childLanes=M.childLanes&~F,P.memoizedState=yl,q}return xe=M.child,M=xe.sibling,q=qo(xe,{mode:"visible",children:q.children}),(P.mode&1)===0&&(q.lanes=F),q.return=P,q.sibling=null,M!==null&&(F=P.deletions,F===null?(P.deletions=[M],P.flags|=16):F.push(M)),P.child=q,P.memoizedState=null,q}function Pa(M,P){return P=qc({mode:"visible",children:P},M.mode,0,null),P.return=M,M.child=P}function As(M,P,F,q){return q!==null&&fs(q),Xr(P,M.child,null,F),M=Pa(P,P.pendingProps.children),M.flags|=2,P.memoizedState=null,M}function er(M,P,F,q,le,xe,we){if(F)return P.flags&256?(P.flags&=-257,q=Rc(Error(g(422))),As(M,P,we,q)):P.memoizedState!==null?(P.child=M.child,P.flags|=128,null):(xe=q.fallback,le=P.mode,q=qc({mode:"visible",children:q.children},le,0,null),xe=Yi(xe,le,we,null),xe.flags|=2,q.return=P,xe.return=P,q.sibling=xe,P.child=q,(P.mode&1)!==0&&Xr(P,M.child,null,we),P.child.memoizedState=vl(we),P.memoizedState=yl,xe);if((P.mode&1)===0)return As(M,P,we,null);if(le.data==="$!"){if(q=le.nextSibling&&le.nextSibling.dataset,q)var Ae=q.dgst;return q=Ae,xe=Error(g(419)),q=Rc(xe,q,void 0),As(M,P,we,q)}if(Ae=(we&M.childLanes)!==0,zn||Ae){if(q=xn,q!==null){switch(we&-we){case 4:le=2;break;case 16:le=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:le=32;break;case 536870912:le=268435456;break;default:le=0}le=(le&(q.suspendedLanes|we))!==0?0:le,le!==0&&le!==xe.retryLane&&(xe.retryLane=le,$s(M,le),Wo(q,M,le,-1))}return Md(),q=Rc(Error(g(421))),As(M,P,we,q)}return le.data==="$?"?(P.flags|=128,P.child=M.child,P=Nf.bind(null,M),le._reactRetry=P,null):(M=xe.treeContext,uo=Ks(le.nextSibling),An=P,Br=!0,Yo=null,M!==null&&(Co[wo++]=ls,Co[wo++]=us,Co[wo++]=Ti,ls=M.id,us=M.overflow,Ti=P),P=Pa(P,q.children),P.flags|=4096,P)}function bl(M,P,F){M.lanes|=P;var q=M.alternate;q!==null&&(q.lanes|=P),Sn(M.return,P,F)}function El(M,P,F,q,le){var xe=M.memoizedState;xe===null?M.memoizedState={isBackwards:P,rendering:null,renderingStartTime:0,last:q,tail:F,tailMode:le}:(xe.isBackwards=P,xe.rendering=null,xe.renderingStartTime=0,xe.last=q,xe.tail=F,xe.tailMode=le)}function ni(M,P,F){var q=P.pendingProps,le=q.revealOrder,xe=q.tail;if(Cn(M,P,q.children,F),q=Vr.current,(q&2)!==0)q=q&1|2,P.flags|=128;else{if(M!==null&&(M.flags&128)!==0)e:for(M=P.child;M!==null;){if(M.tag===13)M.memoizedState!==null&&bl(M,F,P);else if(M.tag===19)bl(M,F,P);else if(M.child!==null){M.child.return=M,M=M.child;continue}if(M===P)break e;for(;M.sibling===null;){if(M.return===null||M.return===P)break e;M=M.return}M.sibling.return=M.return,M=M.sibling}q&=1}if(jr(Vr,q),(P.mode&1)===0)P.memoizedState=null;else switch(le){case"forwards":for(F=P.child,le=null;F!==null;)M=F.alternate,M!==null&&Ii(M)===null&&(le=F),F=F.sibling;F=le,F===null?(le=P.child,P.child=null):(le=F.sibling,F.sibling=null),El(P,!1,le,F,xe);break;case"backwards":for(F=null,le=P.child,P.child=null;le!==null;){if(M=le.alternate,M!==null&&Ii(M)===null){P.child=le;break}M=le.sibling,le.sibling=F,F=le,le=M}El(P,!0,F,null,xe);break;case"together":El(P,!1,null,null,void 0);break;default:P.memoizedState=null}return P.child}function Lc(M,P){(P.mode&1)===0&&M!==null&&(M.alternate=null,P.alternate=null,P.flags|=2)}function zo(M,P,F){if(M!==null&&(P.dependencies=M.dependencies),ii|=P.lanes,(F&P.childLanes)===0)return null;if(M!==null&&P.child!==M.child)throw Error(g(153));if(P.child!==null){for(M=P.child,F=qo(M,M.pendingProps),P.child=F,F.return=P;M.sibling!==null;)M=M.sibling,F=F.sibling=qo(M,M.pendingProps),F.return=P;F.sibling=null}return P.child}function Ip(M,P,F){switch(P.tag){case 3:kp(P),ps();break;case 5:Yu(P);break;case 1:Qn(P.type)&&So(P);break;case 4:Hu(P,P.stateNode.containerInfo);break;case 10:var q=P.type._context,le=P.memoizedProps.value;jr(il,q._currentValue),q._currentValue=le;break;case 13:if(q=P.memoizedState,q!==null)return q.dehydrated!==null?(jr(Vr,Vr.current&1),P.flags|=128,null):(F&P.child.childLanes)!==0?Ic(M,P,F):(jr(Vr,Vr.current&1),M=zo(M,P,F),M!==null?M.sibling:null);jr(Vr,Vr.current&1);break;case 19:if(q=(F&P.childLanes)!==0,(M.flags&128)!==0){if(q)return ni(M,P,F);P.flags|=128}if(le=P.memoizedState,le!==null&&(le.rendering=null,le.tail=null,le.lastEffect=null),jr(Vr,Vr.current),q)break;return null;case 22:case 23:return P.lanes=0,nd(M,P,F)}return zo(M,P,F)}var wn,ud,Lp,dd;wn=function(M,P){for(var F=P.child;F!==null;){if(F.tag===5||F.tag===6)M.appendChild(F.stateNode);else if(F.tag!==4&&F.child!==null){F.child.return=F,F=F.child;continue}if(F===P)break;for(;F.sibling===null;){if(F.return===null||F.return===P)return;F=F.return}F.sibling.return=F.return,F=F.sibling}},ud=function(){},Lp=function(M,P,F,q){var le=M.memoizedProps;if(le!==q){M=P.stateNode,Is(hs.current);var xe=null;switch(F){case"input":le=Ye(M,le),q=Ye(M,q),xe=[];break;case"select":le=pe({},le,{value:void 0}),q=pe({},q,{value:void 0}),xe=[];break;case"textarea":le=Ke(M,le),q=Ke(M,q),xe=[];break;default:typeof le.onClick!="function"&&typeof q.onClick=="function"&&(M.onclick=oc)}Lt(F,q);var we;F=null;for(ct in le)if(!q.hasOwnProperty(ct)&&le.hasOwnProperty(ct)&&le[ct]!=null)if(ct==="style"){var Ae=le[ct];for(we in Ae)Ae.hasOwnProperty(we)&&(F||(F={}),F[we]="")}else ct!=="dangerouslySetInnerHTML"&&ct!=="children"&&ct!=="suppressContentEditableWarning"&&ct!=="suppressHydrationWarning"&&ct!=="autoFocus"&&(b.hasOwnProperty(ct)?xe||(xe=[]):(xe=xe||[]).push(ct,null));for(ct in q){var ze=q[ct];if(Ae=le!=null?le[ct]:void 0,q.hasOwnProperty(ct)&&ze!==Ae&&(ze!=null||Ae!=null))if(ct==="style")if(Ae){for(we in Ae)!Ae.hasOwnProperty(we)||ze&&ze.hasOwnProperty(we)||(F||(F={}),F[we]="");for(we in ze)ze.hasOwnProperty(we)&&Ae[we]!==ze[we]&&(F||(F={}),F[we]=ze[we])}else F||(xe||(xe=[]),xe.push(ct,F)),F=ze;else ct==="dangerouslySetInnerHTML"?(ze=ze?ze.__html:void 0,Ae=Ae?Ae.__html:void 0,ze!=null&&Ae!==ze&&(xe=xe||[]).push(ct,ze)):ct==="children"?typeof ze!="string"&&typeof ze!="number"||(xe=xe||[]).push(ct,""+ze):ct!=="suppressContentEditableWarning"&&ct!=="suppressHydrationWarning"&&(b.hasOwnProperty(ct)?(ze!=null&&ct==="onScroll"&&Hr("scroll",M),xe||Ae===ze||(xe=[])):(xe=xe||[]).push(ct,ze))}F&&(xe=xe||[]).push("style",F);var ct=xe;(P.updateQueue=ct)&&(P.flags|=4)}},dd=function(M,P,F,q){F!==q&&(P.flags|=4)};function Sl(M,P){if(!Br)switch(M.tailMode){case"hidden":P=M.tail;for(var F=null;P!==null;)P.alternate!==null&&(F=P),P=P.sibling;F===null?M.tail=null:F.sibling=null;break;case"collapsed":F=M.tail;for(var q=null;F!==null;)F.alternate!==null&&(q=F),F=F.sibling;q===null?P||M.tail===null?M.tail=null:M.tail.sibling=null:q.sibling=null}}function Mn(M){var P=M.alternate!==null&&M.alternate.child===M.child,F=0,q=0;if(P)for(var le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags&14680064,q|=le.flags&14680064,le.return=M,le=le.sibling;else for(le=M.child;le!==null;)F|=le.lanes|le.childLanes,q|=le.subtreeFlags,q|=le.flags,le.return=M,le=le.sibling;return M.subtreeFlags|=q,M.childLanes=F,P}function $f(M,P,F){var q=P.pendingProps;switch(Ri(P),P.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Mn(P),null;case 1:return Qn(P.type)&&lc(),Mn(P),null;case 3:return q=P.stateNode,ti(),Yr(Jn),Yr(Ln),yc(),q.pendingContext&&(q.context=q.pendingContext,q.pendingContext=null),(M===null||M.child===null)&&(rl(P)?P.flags|=4:M===null||M.memoizedState.isDehydrated&&(P.flags&256)===0||(P.flags|=1024,Yo!==null&&(Sd(Yo),Yo=null))),ud(M,P),Mn(P),null;case 5:_c(P);var le=Is(va.current);if(F=P.type,M!==null&&P.stateNode!=null)Lp(M,P,F,q,le),M.ref!==P.ref&&(P.flags|=512,P.flags|=2097152);else{if(!q){if(P.stateNode===null)throw Error(g(166));return Mn(P),null}if(M=Is(hs.current),rl(P)){q=P.stateNode,F=P.type;var xe=P.memoizedProps;switch(q[os]=P,q[Js]=xe,M=(P.mode&1)!==0,F){case"dialog":Hr("cancel",q),Hr("close",q);break;case"iframe":case"object":case"embed":Hr("load",q);break;case"video":case"audio":for(le=0;le<Ms.length;le++)Hr(Ms[le],q);break;case"source":Hr("error",q);break;case"img":case"image":case"link":Hr("error",q),Hr("load",q);break;case"details":Hr("toggle",q);break;case"input":He(q,xe),Hr("invalid",q);break;case"select":q._wrapperState={wasMultiple:!!xe.multiple},Hr("invalid",q);break;case"textarea":Xe(q,xe),Hr("invalid",q)}Lt(F,xe),le=null;for(var we in xe)if(xe.hasOwnProperty(we)){var Ae=xe[we];we==="children"?typeof Ae=="string"?q.textContent!==Ae&&(xe.suppressHydrationWarning!==!0&&Ja(q.textContent,Ae,M),le=["children",Ae]):typeof Ae=="number"&&q.textContent!==""+Ae&&(xe.suppressHydrationWarning!==!0&&Ja(q.textContent,Ae,M),le=["children",""+Ae]):b.hasOwnProperty(we)&&Ae!=null&&we==="onScroll"&&Hr("scroll",q)}switch(F){case"input":Le(q),Oe(q,xe,!0);break;case"textarea":Le(q),xt(q);break;case"select":case"option":break;default:typeof xe.onClick=="function"&&(q.onclick=oc)}q=le,P.updateQueue=q,q!==null&&(P.flags|=4)}else{we=le.nodeType===9?le:le.ownerDocument,M==="http://www.w3.org/1999/xhtml"&&(M=Je(F)),M==="http://www.w3.org/1999/xhtml"?F==="script"?(M=we.createElement("div"),M.innerHTML="<script><\/script>",M=M.removeChild(M.firstChild)):typeof q.is=="string"?M=we.createElement(F,{is:q.is}):(M=we.createElement(F),F==="select"&&(we=M,q.multiple?we.multiple=!0:q.size&&(we.size=q.size))):M=we.createElementNS(M,F),M[os]=P,M[Js]=q,wn(M,P,!1,!1),P.stateNode=M;e:{switch(we=Kt(F,q),F){case"dialog":Hr("cancel",M),Hr("close",M),le=q;break;case"iframe":case"object":case"embed":Hr("load",M),le=q;break;case"video":case"audio":for(le=0;le<Ms.length;le++)Hr(Ms[le],M);le=q;break;case"source":Hr("error",M),le=q;break;case"img":case"image":case"link":Hr("error",M),Hr("load",M),le=q;break;case"details":Hr("toggle",M),le=q;break;case"input":He(M,q),le=Ye(M,q),Hr("invalid",M);break;case"option":le=q;break;case"select":M._wrapperState={wasMultiple:!!q.multiple},le=pe({},q,{value:void 0}),Hr("invalid",M);break;case"textarea":Xe(M,q),le=Ke(M,q),Hr("invalid",M);break;default:le=q}Lt(F,le),Ae=le;for(xe in Ae)if(Ae.hasOwnProperty(xe)){var ze=Ae[xe];xe==="style"?zt(M,ze):xe==="dangerouslySetInnerHTML"?(ze=ze?ze.__html:void 0,ze!=null&&dt(M,ze)):xe==="children"?typeof ze=="string"?(F!=="textarea"||ze!=="")&&jt(M,ze):typeof ze=="number"&&jt(M,""+ze):xe!=="suppressContentEditableWarning"&&xe!=="suppressHydrationWarning"&&xe!=="autoFocus"&&(b.hasOwnProperty(xe)?ze!=null&&xe==="onScroll"&&Hr("scroll",M):ze!=null&&Y(M,xe,ze,we))}switch(F){case"input":Le(M),Oe(M,q,!1);break;case"textarea":Le(M),xt(M);break;case"option":q.value!=null&&M.setAttribute("value",""+Re(q.value));break;case"select":M.multiple=!!q.multiple,xe=q.value,xe!=null?Ne(M,!!q.multiple,xe,!1):q.defaultValue!=null&&Ne(M,!!q.multiple,q.defaultValue,!0);break;default:typeof le.onClick=="function"&&(M.onclick=oc)}switch(F){case"button":case"input":case"select":case"textarea":q=!!q.autoFocus;break e;case"img":q=!0;break e;default:q=!1}}q&&(P.flags|=4)}P.ref!==null&&(P.flags|=512,P.flags|=2097152)}return Mn(P),null;case 6:if(M&&P.stateNode!=null)dd(M,P,M.memoizedProps,q);else{if(typeof q!="string"&&P.stateNode===null)throw Error(g(166));if(F=Is(va.current),Is(hs.current),rl(P)){if(q=P.stateNode,F=P.memoizedProps,q[os]=P,(xe=q.nodeValue!==F)&&(M=An,M!==null))switch(M.tag){case 3:Ja(q.nodeValue,F,(M.mode&1)!==0);break;case 5:M.memoizedProps.suppressHydrationWarning!==!0&&Ja(q.nodeValue,F,(M.mode&1)!==0)}xe&&(P.flags|=4)}else q=(F.nodeType===9?F:F.ownerDocument).createTextNode(q),q[os]=P,P.stateNode=q}return Mn(P),null;case 13:if(Yr(Vr),q=P.memoizedState,M===null||M.memoizedState!==null&&M.memoizedState.dehydrated!==null){if(Br&&uo!==null&&(P.mode&1)!==0&&(P.flags&128)===0)Ou(),ps(),P.flags|=98560,xe=!1;else if(xe=rl(P),q!==null&&q.dehydrated!==null){if(M===null){if(!xe)throw Error(g(318));if(xe=P.memoizedState,xe=xe!==null?xe.dehydrated:null,!xe)throw Error(g(317));xe[os]=P}else ps(),(P.flags&128)===0&&(P.memoizedState=null),P.flags|=4;Mn(P),xe=!1}else Yo!==null&&(Sd(Yo),Yo=null),xe=!0;if(!xe)return P.flags&65536?P:null}return(P.flags&128)!==0?(P.lanes=F,P):(q=q!==null,q!==(M!==null&&M.memoizedState!==null)&&q&&(P.child.flags|=8192,(P.mode&1)!==0&&(M===null||(Vr.current&1)!==0?pn===0&&(pn=3):Md())),P.updateQueue!==null&&(P.flags|=4),Mn(P),null);case 4:return ti(),ud(M,P),M===null&&Ws(P.stateNode.containerInfo),Mn(P),null;case 10:return mc(P.type._context),Mn(P),null;case 17:return Qn(P.type)&&lc(),Mn(P),null;case 19:if(Yr(Vr),xe=P.memoizedState,xe===null)return Mn(P),null;if(q=(P.flags&128)!==0,we=xe.rendering,we===null)if(q)Sl(xe,!1);else{if(pn!==0||M!==null&&(M.flags&128)!==0)for(M=P.child;M!==null;){if(we=Ii(M),we!==null){for(P.flags|=128,Sl(xe,!1),q=we.updateQueue,q!==null&&(P.updateQueue=q,P.flags|=4),P.subtreeFlags=0,q=F,F=P.child;F!==null;)xe=F,M=q,xe.flags&=14680066,we=xe.alternate,we===null?(xe.childLanes=0,xe.lanes=M,xe.child=null,xe.subtreeFlags=0,xe.memoizedProps=null,xe.memoizedState=null,xe.updateQueue=null,xe.dependencies=null,xe.stateNode=null):(xe.childLanes=we.childLanes,xe.lanes=we.lanes,xe.child=we.child,xe.subtreeFlags=0,xe.deletions=null,xe.memoizedProps=we.memoizedProps,xe.memoizedState=we.memoizedState,xe.updateQueue=we.updateQueue,xe.type=we.type,M=we.dependencies,xe.dependencies=M===null?null:{lanes:M.lanes,firstContext:M.firstContext}),F=F.sibling;return jr(Vr,Vr.current&1|2),P.child}M=M.sibling}xe.tail!==null&&Gr()>Fi&&(P.flags|=128,q=!0,Sl(xe,!1),P.lanes=4194304)}else{if(!q)if(M=Ii(we),M!==null){if(P.flags|=128,q=!0,F=M.updateQueue,F!==null&&(P.updateQueue=F,P.flags|=4),Sl(xe,!0),xe.tail===null&&xe.tailMode==="hidden"&&!we.alternate&&!Br)return Mn(P),null}else 2*Gr()-xe.renderingStartTime>Fi&&F!==1073741824&&(P.flags|=128,q=!0,Sl(xe,!1),P.lanes=4194304);xe.isBackwards?(we.sibling=P.child,P.child=we):(F=xe.last,F!==null?F.sibling=we:P.child=we,xe.last=we)}return xe.tail!==null?(P=xe.tail,xe.rendering=P,xe.tail=P.sibling,xe.renderingStartTime=Gr(),P.sibling=null,F=Vr.current,jr(Vr,q?F&1|2:F&1),P):(Mn(P),null);case 22:case 23:return wd(),q=P.memoizedState!==null,M!==null&&M.memoizedState!==null!==q&&(P.flags|=8192),q&&(P.mode&1)!==0?(ho&1073741824)!==0&&(Mn(P),P.subtreeFlags&6&&(P.flags|=8192)):Mn(P),null;case 24:return null;case 25:return null}throw Error(g(156,P.tag))}function kf(M,P){switch(Ri(P),P.tag){case 1:return Qn(P.type)&&lc(),M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 3:return ti(),Yr(Jn),Yr(Ln),yc(),M=P.flags,(M&65536)!==0&&(M&128)===0?(P.flags=M&-65537|128,P):null;case 5:return _c(P),null;case 13:if(Yr(Vr),M=P.memoizedState,M!==null&&M.dehydrated!==null){if(P.alternate===null)throw Error(g(340));ps()}return M=P.flags,M&65536?(P.flags=M&-65537|128,P):null;case 19:return Yr(Vr),null;case 4:return ti(),null;case 10:return mc(P.type._context),null;case 22:case 23:return wd(),null;case 24:return null;default:return null}}var Dc=!1,Wr=!1,Gn=typeof WeakSet=="function"?WeakSet:Set,Ft=null;function Ra(M,P){var F=M.ref;if(F!==null)if(typeof F=="function")try{F(null)}catch(q){Jr(M,P,q)}else F.current=null}function Cl(M,P,F){try{F()}catch(q){Jr(M,P,q)}}var Dp=!1;function If(M,P){if(Qa=Hl,M=Dr(),Ga(M)){if("selectionStart"in M)var F={start:M.selectionStart,end:M.selectionEnd};else e:{F=(F=M.ownerDocument)&&F.defaultView||window;var q=F.getSelection&&F.getSelection();if(q&&q.rangeCount!==0){F=q.anchorNode;var le=q.anchorOffset,xe=q.focusNode;q=q.focusOffset;try{F.nodeType,xe.nodeType}catch(kt){F=null;break e}var we=0,Ae=-1,ze=-1,ct=0,Mt=0,Rt=M,wt=null;t:for(;;){for(var Ot;Rt!==F||le!==0&&Rt.nodeType!==3||(Ae=we+le),Rt!==xe||q!==0&&Rt.nodeType!==3||(ze=we+q),Rt.nodeType===3&&(we+=Rt.nodeValue.length),(Ot=Rt.firstChild)!==null;)wt=Rt,Rt=Ot;for(;;){if(Rt===M)break t;if(wt===F&&++ct===le&&(Ae=we),wt===xe&&++Mt===q&&(ze=we),(Ot=Rt.nextSibling)!==null)break;Rt=wt,wt=Rt.parentNode}Rt=Ot}F=Ae===-1||ze===-1?null:{start:Ae,end:ze}}else F=null}F=F||{start:0,end:0}}else F=null;for(wi={focusedElem:M,selectionRange:F},Hl=!1,Ft=P;Ft!==null;)if(P=Ft,M=P.child,(P.subtreeFlags&1028)!==0&&M!==null)M.return=P,Ft=M;else for(;Ft!==null;){P=Ft;try{var Nt=P.alternate;if((P.flags&1024)!==0)switch(P.tag){case 0:case 11:case 15:break;case 1:if(Nt!==null){var Ht=Nt.memoizedProps,tn=Nt.memoizedState,Ze=P.stateNode,We=Ze.getSnapshotBeforeUpdate(P.elementType===P.type?Ht:$o(P.type,Ht),tn);Ze.__reactInternalSnapshotBeforeUpdate=We}break;case 3:var nt=P.stateNode.containerInfo;nt.nodeType===1?nt.textContent="":nt.nodeType===9&&nt.documentElement&&nt.removeChild(nt.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(g(163))}}catch(kt){Jr(P,P.return,kt)}if(M=P.sibling,M!==null){M.return=P.return,Ft=M;break}Ft=P.return}return Nt=Dp,Dp=!1,Nt}function Os(M,P,F){var q=P.updateQueue;if(q=q!==null?q.lastEffect:null,q!==null){var le=q=q.next;do{if((le.tag&M)===M){var xe=le.destroy;le.destroy=void 0,xe!==void 0&&Cl(P,F,xe)}le=le.next}while(le!==q)}}function wl(M,P){if(P=P.updateQueue,P=P!==null?P.lastEffect:null,P!==null){var F=P=P.next;do{if((F.tag&M)===M){var q=F.create;F.destroy=q()}F=F.next}while(F!==P)}}function Ac(M){var P=M.ref;if(P!==null){var F=M.stateNode;switch(M.tag){case 5:M=F;break;default:M=F}typeof P=="function"?P(M):P.current=M}}function Ap(M){var P=M.alternate;P!==null&&(M.alternate=null,Ap(P)),M.child=null,M.deletions=null,M.sibling=null,M.tag===5&&(P=M.stateNode,P!==null&&(delete P[os],delete P[Js],delete P[ic],delete P[Te],delete P[pa])),M.stateNode=null,M.return=null,M.dependencies=null,M.memoizedProps=null,M.memoizedState=null,M.pendingProps=null,M.stateNode=null,M.updateQueue=null}function Op(M){return M.tag===5||M.tag===3||M.tag===4}function Fp(M){e:for(;;){for(;M.sibling===null;){if(M.return===null||Op(M.return))return null;M=M.return}for(M.sibling.return=M.return,M=M.sibling;M.tag!==5&&M.tag!==6&&M.tag!==18;){if(M.flags&2||M.child===null||M.tag===4)continue e;M.child.return=M,M=M.child}if(!(M.flags&2))return M.stateNode}}function pd(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.nodeType===8?F.parentNode.insertBefore(M,P):F.insertBefore(M,P):(F.nodeType===8?(P=F.parentNode,P.insertBefore(M,F)):(P=F,P.appendChild(M)),F=F._reactRootContainer,F!=null||P.onclick!==null||(P.onclick=oc));else if(q!==4&&(M=M.child,M!==null))for(pd(M,P,F),M=M.sibling;M!==null;)pd(M,P,F),M=M.sibling}function Oc(M,P,F){var q=M.tag;if(q===5||q===6)M=M.stateNode,P?F.insertBefore(M,P):F.appendChild(M);else if(q!==4&&(M=M.child,M!==null))for(Oc(M,P,F),M=M.sibling;M!==null;)Oc(M,P,F),M=M.sibling}var gn=null,Go=!1;function vs(M,P,F){for(F=F.child;F!==null;)fd(M,P,F),F=F.sibling}function fd(M,P,F){if(ts&&typeof ts.onCommitFiberUnmount=="function")try{ts.onCommitFiberUnmount(Dl,F)}catch(Ae){}switch(F.tag){case 5:Wr||Ra(F,P);case 6:var q=gn,le=Go;gn=null,vs(M,P,F),gn=q,Go=le,gn!==null&&(Go?(M=gn,F=F.stateNode,M.nodeType===8?M.parentNode.removeChild(F):M.removeChild(F)):gn.removeChild(F.stateNode));break;case 18:gn!==null&&(Go?(M=gn,F=F.stateNode,M.nodeType===8?Lu(M.parentNode,F):M.nodeType===1&&Lu(M,F),Ir(M)):Lu(gn,F.stateNode));break;case 4:q=gn,le=Go,gn=F.stateNode.containerInfo,Go=!0,vs(M,P,F),gn=q,Go=le;break;case 0:case 11:case 14:case 15:if(!Wr&&(q=F.updateQueue,q!==null&&(q=q.lastEffect,q!==null))){le=q=q.next;do{var xe=le,we=xe.destroy;xe=xe.tag,we!==void 0&&((xe&2)!==0||(xe&4)!==0)&&Cl(F,P,we),le=le.next}while(le!==q)}vs(M,P,F);break;case 1:if(!Wr&&(Ra(F,P),q=F.stateNode,typeof q.componentWillUnmount=="function"))try{q.props=F.memoizedProps,q.state=F.memoizedState,q.componentWillUnmount()}catch(Ae){Jr(F,P,Ae)}vs(M,P,F);break;case 21:vs(M,P,F);break;case 22:F.mode&1?(Wr=(q=Wr)||F.memoizedState!==null,vs(M,P,F),Wr=q):vs(M,P,F);break;default:vs(M,P,F)}}function $a(M){var P=M.updateQueue;if(P!==null){M.updateQueue=null;var F=M.stateNode;F===null&&(F=M.stateNode=new Gn),P.forEach(function(q){var le=jf.bind(null,M,q);F.has(q)||(F.add(q),q.then(le,le))})}}function mo(M,P){var F=P.deletions;if(F!==null)for(var q=0;q<F.length;q++){var le=F[q];try{var xe=M,we=P,Ae=we;e:for(;Ae!==null;){switch(Ae.tag){case 5:gn=Ae.stateNode,Go=!1;break e;case 3:gn=Ae.stateNode.containerInfo,Go=!0;break e;case 4:gn=Ae.stateNode.containerInfo,Go=!0;break e}Ae=Ae.return}if(gn===null)throw Error(g(160));fd(xe,we,le),gn=null,Go=!1;var ze=le.alternate;ze!==null&&(ze.return=null),le.return=null}catch(ct){Jr(le,P,ct)}}if(P.subtreeFlags&12854)for(P=P.child;P!==null;)hd(P,M),P=P.sibling}function hd(M,P){var F=M.alternate,q=M.flags;switch(M.tag){case 0:case 11:case 14:case 15:if(mo(P,M),Uo(M),q&4){try{Os(3,M,M.return),wl(3,M)}catch(Ht){Jr(M,M.return,Ht)}try{Os(5,M,M.return)}catch(Ht){Jr(M,M.return,Ht)}}break;case 1:mo(P,M),Uo(M),q&512&&F!==null&&Ra(F,F.return);break;case 5:if(mo(P,M),Uo(M),q&512&&F!==null&&Ra(F,F.return),M.flags&32){var le=M.stateNode;try{jt(le,"")}catch(Ht){Jr(M,M.return,Ht)}}if(q&4&&(le=M.stateNode,le!=null)){var xe=M.memoizedProps,we=F!==null?F.memoizedProps:xe,Ae=M.type,ze=M.updateQueue;if(M.updateQueue=null,ze!==null)try{Ae==="input"&&xe.type==="radio"&&xe.name!=null&&Ve(le,xe),Kt(Ae,we);var ct=Kt(Ae,xe);for(we=0;we<ze.length;we+=2){var Mt=ze[we],Rt=ze[we+1];Mt==="style"?zt(le,Rt):Mt==="dangerouslySetInnerHTML"?dt(le,Rt):Mt==="children"?jt(le,Rt):Y(le,Mt,Rt,ct)}switch(Ae){case"input":rt(le,xe);break;case"textarea":st(le,xe);break;case"select":var wt=le._wrapperState.wasMultiple;le._wrapperState.wasMultiple=!!xe.multiple;var Ot=xe.value;Ot!=null?Ne(le,!!xe.multiple,Ot,!1):wt!==!!xe.multiple&&(xe.defaultValue!=null?Ne(le,!!xe.multiple,xe.defaultValue,!0):Ne(le,!!xe.multiple,xe.multiple?[]:"",!1))}le[Js]=xe}catch(Ht){Jr(M,M.return,Ht)}}break;case 6:if(mo(P,M),Uo(M),q&4){if(M.stateNode===null)throw Error(g(162));le=M.stateNode,xe=M.memoizedProps;try{le.nodeValue=xe}catch(Ht){Jr(M,M.return,Ht)}}break;case 3:if(mo(P,M),Uo(M),q&4&&F!==null&&F.memoizedState.isDehydrated)try{Ir(P.containerInfo)}catch(Ht){Jr(M,M.return,Ht)}break;case 4:mo(P,M),Uo(M);break;case 13:mo(P,M),Uo(M),le=M.child,le.flags&8192&&(xe=le.memoizedState!==null,le.stateNode.isHidden=xe,!xe||le.alternate!==null&&le.alternate.memoizedState!==null||(yd=Gr())),q&4&&$a(M);break;case 22:if(Mt=F!==null&&F.memoizedState!==null,M.mode&1?(Wr=(ct=Wr)||Mt,mo(P,M),Wr=ct):mo(P,M),Uo(M),q&8192){if(ct=M.memoizedState!==null,(M.stateNode.isHidden=ct)&&!Mt&&(M.mode&1)!==0)for(Ft=M,Mt=M.child;Mt!==null;){for(Rt=Ft=Mt;Ft!==null;){switch(wt=Ft,Ot=wt.child,wt.tag){case 0:case 11:case 14:case 15:Os(4,wt,wt.return);break;case 1:Ra(wt,wt.return);var Nt=wt.stateNode;if(typeof Nt.componentWillUnmount=="function"){q=wt,F=wt.return;try{P=q,Nt.props=P.memoizedProps,Nt.state=P.memoizedState,Nt.componentWillUnmount()}catch(Ht){Jr(q,F,Ht)}}break;case 5:Ra(wt,wt.return);break;case 22:if(wt.memoizedState!==null){oi(Rt);continue}}Ot!==null?(Ot.return=wt,Ft=Ot):oi(Rt)}Mt=Mt.sibling}e:for(Mt=null,Rt=M;;){if(Rt.tag===5){if(Mt===null){Mt=Rt;try{le=Rt.stateNode,ct?(xe=le.style,typeof xe.setProperty=="function"?xe.setProperty("display","none","important"):xe.display="none"):(Ae=Rt.stateNode,ze=Rt.memoizedProps.style,we=ze!=null&&ze.hasOwnProperty("display")?ze.display:null,Ae.style.display=Pt("display",we))}catch(Ht){Jr(M,M.return,Ht)}}}else if(Rt.tag===6){if(Mt===null)try{Rt.stateNode.nodeValue=ct?"":Rt.memoizedProps}catch(Ht){Jr(M,M.return,Ht)}}else if((Rt.tag!==22&&Rt.tag!==23||Rt.memoizedState===null||Rt===M)&&Rt.child!==null){Rt.child.return=Rt,Rt=Rt.child;continue}if(Rt===M)break e;for(;Rt.sibling===null;){if(Rt.return===null||Rt.return===M)break e;Mt===Rt&&(Mt=null),Rt=Rt.return}Mt===Rt&&(Mt=null),Rt.sibling.return=Rt.return,Rt=Rt.sibling}}break;case 19:mo(P,M),Uo(M),q&4&&$a(M);break;case 21:break;default:mo(P,M),Uo(M)}}function Uo(M){var P=M.flags;if(P&2){try{e:{for(var F=M.return;F!==null;){if(Op(F)){var q=F;break e}F=F.return}throw Error(g(160))}switch(q.tag){case 5:var le=q.stateNode;q.flags&32&&(jt(le,""),q.flags&=-33);var xe=Fp(M);Oc(M,xe,le);break;case 3:case 4:var we=q.stateNode.containerInfo,Ae=Fp(M);pd(M,Ae,we);break;default:throw Error(g(161))}}catch(ze){Jr(M,M.return,ze)}M.flags&=-3}P&4096&&(M.flags&=-4097)}function Fc(M,P,F){Ft=M,xd(M)}function xd(M,P,F){for(var q=(M.mode&1)!==0;Ft!==null;){var le=Ft,xe=le.child;if(le.tag===22&&q){var we=le.memoizedState!==null||Dc;if(!we){var Ae=le.alternate,ze=Ae!==null&&Ae.memoizedState!==null||Wr;Ae=Dc;var ct=Wr;if(Dc=we,(Wr=ze)&&!ct)for(Ft=le;Ft!==null;)we=Ft,ze=we.child,we.tag===22&&we.memoizedState!==null?Np(le):ze!==null?(ze.return=we,Ft=ze):Np(le);for(;xe!==null;)Ft=xe,xd(xe),xe=xe.sibling;Ft=le,Dc=Ae,Wr=ct}Vo(M)}else(le.subtreeFlags&8772)!==0&&xe!==null?(xe.return=le,Ft=xe):Vo(M)}}function Vo(M){for(;Ft!==null;){var P=Ft;if((P.flags&8772)!==0){var F=P.alternate;try{if((P.flags&8772)!==0)switch(P.tag){case 0:case 11:case 15:Wr||wl(5,P);break;case 1:var q=P.stateNode;if(P.flags&4&&!Wr)if(F===null)q.componentDidMount();else{var le=P.elementType===P.type?F.memoizedProps:$o(P.type,F.memoizedProps);q.componentDidUpdate(le,F.memoizedState,q.__reactInternalSnapshotBeforeUpdate)}var xe=P.updateQueue;xe!==null&&ju(P,xe,q);break;case 3:var we=P.updateQueue;if(we!==null){if(F=null,P.child!==null)switch(P.child.tag){case 5:F=P.child.stateNode;break;case 1:F=P.child.stateNode}ju(P,we,F)}break;case 5:var Ae=P.stateNode;if(F===null&&P.flags&4){F=Ae;var ze=P.memoizedProps;switch(P.type){case"button":case"input":case"select":case"textarea":ze.autoFocus&&F.focus();break;case"img":ze.src&&(F.src=ze.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(P.memoizedState===null){var ct=P.alternate;if(ct!==null){var Mt=ct.memoizedState;if(Mt!==null){var Rt=Mt.dehydrated;Rt!==null&&Ir(Rt)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(g(163))}Wr||P.flags&512&&Ac(P)}catch(wt){Jr(P,P.return,wt)}}if(P===M){Ft=null;break}if(F=P.sibling,F!==null){F.return=P.return,Ft=F;break}Ft=P.return}}function oi(M){for(;Ft!==null;){var P=Ft;if(P===M){Ft=null;break}var F=P.sibling;if(F!==null){F.return=P.return,Ft=F;break}Ft=P.return}}function Np(M){for(;Ft!==null;){var P=Ft;try{switch(P.tag){case 0:case 11:case 15:var F=P.return;try{wl(4,P)}catch(ze){Jr(P,F,ze)}break;case 1:var q=P.stateNode;if(typeof q.componentDidMount=="function"){var le=P.return;try{q.componentDidMount()}catch(ze){Jr(P,le,ze)}}var xe=P.return;try{Ac(P)}catch(ze){Jr(P,xe,ze)}break;case 5:var we=P.return;try{Ac(P)}catch(ze){Jr(P,we,ze)}}}catch(ze){Jr(P,P.return,ze)}if(P===M){Ft=null;break}var Ae=P.sibling;if(Ae!==null){Ae.return=P.return,Ft=Ae;break}Ft=P.return}}var jp=Math.ceil,Nc=B.ReactCurrentDispatcher,_d=B.ReactCurrentOwner,Io=B.ReactCurrentBatchConfig,Mr=0,xn=null,cn=null,Tn=0,ho=0,Ia=Kn(0),pn=0,Ml=null,ii=0,Tl=0,jc=0,Pl=null,to=null,yd=0,Fi=1/0,Fs=null,Hc=!1,vd=null,ai=null,Yc=!1,li=null,Un=0,Rl=0,bd=null,Bc=-1,$l=0;function Vn(){return(Mr&6)!==0?Gr():Bc!==-1?Bc:Bc=Gr()}function ci(M){return(M.mode&1)===0?1:(Mr&2)!==0&&Tn!==0?Tn&-Tn:_p.transition!==null?($l===0&&($l=lu()),$l):(M=kr,M!==0||(M=window.event,M=M===void 0?16:Gd(M.type)),M)}function Wo(M,P,F,q){if(50<Rl)throw Rl=0,bd=null,Error(g(185));Fa(M,F,q),((Mr&2)===0||M!==xn)&&(M===xn&&((Mr&2)===0&&(Tl|=F),pn===4&&ui(M,Tn)),no(M,q),F===1&&Mr===0&&(P.mode&1)===0&&(Fi=Gr()+500,cc&&Xs()))}function no(M,P){var F=M.callbackNode;cf(M,P);var q=gi(M,M===xn?Tn:0);if(q===0)F!==null&&so(F),M.callbackNode=null,M.callbackPriority=0;else if(P=q&-q,M.callbackPriority!==P){if(F!=null&&so(F),P===1)M.tag===0?Mi(Hp.bind(null,M)):hp(Hp.bind(null,M)),sc(function(){(Mr&6)===0&&Xs()}),F=null;else{switch(xi(q)){case 1:F=iu;break;case 4:F=Ld;break;case 16:F=Aa;break;case 536870912:F=au;break;default:F=Aa}F=Wp(F,zc.bind(null,M))}M.callbackPriority=P,M.callbackNode=F}}function zc(M,P){if(Bc=-1,$l=0,(Mr&6)!==0)throw Error(g(327));var F=M.callbackNode;if(La()&&M.callbackNode!==F)return null;var q=gi(M,M===xn?Tn:0);if(q===0)return null;if((q&30)!==0||(q&M.expiredLanes)!==0||P)P=Gc(M,q);else{P=q;var le=Mr;Mr|=2;var xe=Bp();(xn!==M||Tn!==P)&&(Fs=null,Fi=Gr()+500,ji(M,P));do try{Af();break}catch(Ae){Yp(M,Ae)}while(!0);Rs(),Nc.current=xe,Mr=le,cn!==null?P=0:(xn=null,Tn=0,P=pn)}if(P!==0){if(P===2&&(le=Ol(M),le!==0&&(q=le,P=Ed(M,le))),P===1)throw F=Ml,ji(M,0),ui(M,q),no(M,Gr()),F;if(P===6)ui(M,q);else{if(le=M.current.alternate,(q&30)===0&&!Lf(le)&&(P=Gc(M,q),P===2&&(xe=Ol(M),xe!==0&&(q=xe,P=Ed(M,xe))),P===1))throw F=Ml,ji(M,0),ui(M,q),no(M,Gr()),F;switch(M.finishedWork=le,M.finishedLanes=q,P){case 0:case 1:throw Error(g(345));case 2:Hi(M,to,Fs);break;case 3:if(ui(M,q),(q&130023424)===q&&(P=yd+500-Gr(),10<P)){if(gi(M,0)!==0)break;if(le=M.suspendedLanes,(le&q)!==q){Vn(),M.pingedLanes|=M.suspendedLanes&le;break}M.timeoutHandle=qs(Hi.bind(null,M,to,Fs),P);break}Hi(M,to,Fs);break;case 4:if(ui(M,q),(q&4194240)===q)break;for(P=M.eventTimes,le=-1;0<q;){var we=31-jo(q);xe=1<<we,we=P[we],we>le&&(le=we),q&=~xe}if(q=le,q=Gr()-q,q=(120>q?120:480>q?480:1080>q?1080:1920>q?1920:3e3>q?3e3:4320>q?4320:1960*jp(q/1960))-q,10<q){M.timeoutHandle=qs(Hi.bind(null,M,to,Fs),q);break}Hi(M,to,Fs);break;case 5:Hi(M,to,Fs);break;default:throw Error(g(329))}}}return no(M,Gr()),M.callbackNode===F?zc.bind(null,M):null}function Ed(M,P){var F=Pl;return M.current.memoizedState.isDehydrated&&(ji(M,P).flags|=256),M=Gc(M,P),M!==2&&(P=to,to=F,P!==null&&Sd(P)),M}function Sd(M){to===null?to=M:to.push.apply(to,M)}function Lf(M){for(var P=M;;){if(P.flags&16384){var F=P.updateQueue;if(F!==null&&(F=F.stores,F!==null))for(var q=0;q<F.length;q++){var le=F[q],xe=le.getSnapshot;le=le.value;try{if(!at(xe(),le))return!1}catch(we){return!1}}}if(F=P.child,P.subtreeFlags&16384&&F!==null)F.return=P,P=F;else{if(P===M)break;for(;P.sibling===null;){if(P.return===null||P.return===M)return!0;P=P.return}P.sibling.return=P.return,P=P.sibling}}return!0}function ui(M,P){for(P&=~jc,P&=~Tl,M.suspendedLanes|=P,M.pingedLanes&=~P,M=M.expirationTimes;0<P;){var F=31-jo(P),q=1<<F;M[F]=-1,P&=~q}}function Hp(M){if((Mr&6)!==0)throw Error(g(327));La();var P=gi(M,0);if((P&1)===0)return no(M,Gr()),null;var F=Gc(M,P);if(M.tag!==0&&F===2){var q=Ol(M);q!==0&&(P=q,F=Ed(M,q))}if(F===1)throw F=Ml,ji(M,0),ui(M,P),no(M,Gr()),F;if(F===6)throw Error(g(345));return M.finishedWork=M.current.alternate,M.finishedLanes=P,Hi(M,to,Fs),no(M,Gr()),null}function Cd(M,P){var F=Mr;Mr|=1;try{return M(P)}finally{Mr=F,Mr===0&&(Fi=Gr()+500,cc&&Xs())}}function Ni(M){li!==null&&li.tag===0&&(Mr&6)===0&&La();var P=Mr;Mr|=1;var F=Io.transition,q=kr;try{if(Io.transition=null,kr=1,M)return M()}finally{kr=q,Io.transition=F,Mr=P,(Mr&6)===0&&Xs()}}function wd(){ho=Ia.current,Yr(Ia)}function ji(M,P){M.finishedWork=null,M.finishedLanes=0;var F=M.timeoutHandle;if(F!==-1&&(M.timeoutHandle=-1,Za(F)),cn!==null)for(F=cn.return;F!==null;){var q=F;switch(Ri(q),q.tag){case 1:q=q.type.childContextTypes,q!=null&&lc();break;case 3:ti(),Yr(Jn),Yr(Ln),yc();break;case 5:_c(q);break;case 4:ti();break;case 13:Yr(Vr);break;case 19:Yr(Vr);break;case 10:mc(q.type._context);break;case 22:case 23:wd()}F=F.return}if(xn=M,cn=M=qo(M.current,null),Tn=ho=P,pn=0,Ml=null,jc=Tl=ii=0,to=Pl=null,ki!==null){for(P=0;P<ki.length;P++)if(F=ki[P],q=F.interleaved,q!==null){F.interleaved=null;var le=q.next,xe=F.pending;if(xe!==null){var we=xe.next;xe.next=le,q.next=we}F.pending=q}ki=null}return M}function Yp(M,P){do{var F=cn;try{if(Rs(),cl.current=wc,ba){for(var q=Kr.memoizedState;q!==null;){var le=q.queue;le!==null&&(le.pending=null),q=q.next}ba=!1}if(ri=0,dn=Zr=Kr=null,ul=!1,Li=0,_d.current=null,F===null||F.return===null){pn=1,Ml=P,cn=null;break}e:{var xe=M,we=F.return,Ae=F,ze=P;if(P=Tn,Ae.flags|=32768,ze!==null&&typeof ze=="object"&&typeof ze.then=="function"){var ct=ze,Mt=Ae,Rt=Mt.tag;if((Mt.mode&1)===0&&(Rt===0||Rt===11||Rt===15)){var wt=Mt.alternate;wt?(Mt.updateQueue=wt.updateQueue,Mt.memoizedState=wt.memoizedState,Mt.lanes=wt.lanes):(Mt.updateQueue=null,Mt.memoizedState=null)}var Ot=Rp(we);if(Ot!==null){Ot.flags&=-257,td(Ot,we,Ae,xe,P),Ot.mode&1&&_l(xe,ct,P),P=Ot,ze=ct;var Nt=P.updateQueue;if(Nt===null){var Ht=new Set;Ht.add(ze),P.updateQueue=Ht}else Nt.add(ze);break e}else{if((P&1)===0){_l(xe,ct,P),Md();break e}ze=Error(g(426))}}else if(Br&&Ae.mode&1){var tn=Rp(we);if(tn!==null){(tn.flags&65536)===0&&(tn.flags|=256),td(tn,we,Ae,xe,P),fs(Oi(ze,Ae));break e}}xe=ze=Oi(ze,Ae),pn!==4&&(pn=2),Pl===null?Pl=[xe]:Pl.push(xe),xe=we;do{switch(xe.tag){case 3:xe.flags|=65536,P&=-P,xe.lanes|=P;var Ze=xl(xe,ze,P);bp(xe,Ze);break e;case 1:Ae=ze;var We=xe.type,nt=xe.stateNode;if((xe.flags&128)===0&&(typeof We.getDerivedStateFromError=="function"||nt!==null&&typeof nt.componentDidCatch=="function"&&(ai===null||!ai.has(nt)))){xe.flags|=65536,P&=-P,xe.lanes|=P;var kt=$c(xe,Ae,P);bp(xe,kt);break e}}xe=xe.return}while(xe!==null)}Gp(F)}catch(Bt){P=Bt,cn===F&&F!==null&&(cn=F=F.return);continue}break}while(!0)}function Bp(){var M=Nc.current;return Nc.current=wc,M===null?wc:M}function Md(){(pn===0||pn===3||pn===2)&&(pn=4),xn===null||(ii&268435455)===0&&(Tl&268435455)===0||ui(xn,Tn)}function Gc(M,P){var F=Mr;Mr|=2;var q=Bp();(xn!==M||Tn!==P)&&(Fs=null,ji(M,P));do try{Df();break}catch(le){Yp(M,le)}while(!0);if(Rs(),Mr=F,Nc.current=q,cn!==null)throw Error(g(261));return xn=null,Tn=0,pn}function Df(){for(;cn!==null;)zp(cn)}function Af(){for(;cn!==null&&!pi();)zp(cn)}function zp(M){var P=Vp(M.alternate,M,ho);M.memoizedProps=M.pendingProps,P===null?Gp(M):cn=P,_d.current=null}function Gp(M){var P=M;do{var F=P.alternate;if(M=P.return,(P.flags&32768)===0){if(F=$f(F,P,ho),F!==null){cn=F;return}}else{if(F=kf(F,P),F!==null){F.flags&=32767,cn=F;return}if(M!==null)M.flags|=32768,M.subtreeFlags=0,M.deletions=null;else{pn=6,cn=null;return}}if(P=P.sibling,P!==null){cn=P;return}cn=P=M}while(P!==null);pn===0&&(pn=5)}function Hi(M,P,F){var q=kr,le=Io.transition;try{Io.transition=null,kr=1,Of(M,P,F,q)}finally{Io.transition=le,kr=q}return null}function Of(M,P,F,q){do La();while(li!==null);if((Mr&6)!==0)throw Error(g(327));F=M.finishedWork;var le=M.finishedLanes;if(F===null)return null;if(M.finishedWork=null,M.finishedLanes=0,F===M.current)throw Error(g(177));M.callbackNode=null,M.callbackPriority=0;var xe=F.lanes|F.childLanes;if(jd(M,xe),M===xn&&(cn=xn=null,Tn=0),(F.subtreeFlags&2064)===0&&(F.flags&2064)===0||Yc||(Yc=!0,Wp(Aa,function(){return La(),null})),xe=(F.flags&15990)!==0,(F.subtreeFlags&15990)!==0||xe){xe=Io.transition,Io.transition=null;var we=kr;kr=1;var Ae=Mr;Mr|=4,_d.current=null,If(M,F),hd(F,M),Mf(wi),Hl=!!Qa,wi=Qa=null,M.current=F,Fc(F),of(),Mr=Ae,kr=we,Io.transition=xe}else M.current=F;if(Yc&&(Yc=!1,li=M,Un=le),xe=M.pendingLanes,xe===0&&(ai=null),lf(F.stateNode),no(M,Gr()),P!==null)for(q=M.onRecoverableError,F=0;F<P.length;F++)le=P[F],q(le.value,{componentStack:le.stack,digest:le.digest});if(Hc)throw Hc=!1,M=vd,vd=null,M;return(Un&1)!==0&&M.tag!==0&&La(),xe=M.pendingLanes,(xe&1)!==0?M===bd?Rl++:(Rl=0,bd=M):Rl=0,Xs(),null}function La(){if(li!==null){var M=xi(Un),P=Io.transition,F=kr;try{if(Io.transition=null,kr=16>M?16:M,li===null)var q=!1;else{if(M=li,li=null,Un=0,(Mr&6)!==0)throw Error(g(331));var le=Mr;for(Mr|=4,Ft=M.current;Ft!==null;){var xe=Ft,we=xe.child;if((Ft.flags&16)!==0){var Ae=xe.deletions;if(Ae!==null){for(var ze=0;ze<Ae.length;ze++){var ct=Ae[ze];for(Ft=ct;Ft!==null;){var Mt=Ft;switch(Mt.tag){case 0:case 11:case 15:Os(8,Mt,xe)}var Rt=Mt.child;if(Rt!==null)Rt.return=Mt,Ft=Rt;else for(;Ft!==null;){Mt=Ft;var wt=Mt.sibling,Ot=Mt.return;if(Ap(Mt),Mt===ct){Ft=null;break}if(wt!==null){wt.return=Ot,Ft=wt;break}Ft=Ot}}}var Nt=xe.alternate;if(Nt!==null){var Ht=Nt.child;if(Ht!==null){Nt.child=null;do{var tn=Ht.sibling;Ht.sibling=null,Ht=tn}while(Ht!==null)}}Ft=xe}}if((xe.subtreeFlags&2064)!==0&&we!==null)we.return=xe,Ft=we;else e:for(;Ft!==null;){if(xe=Ft,(xe.flags&2048)!==0)switch(xe.tag){case 0:case 11:case 15:Os(9,xe,xe.return)}var Ze=xe.sibling;if(Ze!==null){Ze.return=xe.return,Ft=Ze;break e}Ft=xe.return}}var We=M.current;for(Ft=We;Ft!==null;){we=Ft;var nt=we.child;if((we.subtreeFlags&2064)!==0&&nt!==null)nt.return=we,Ft=nt;else e:for(we=We;Ft!==null;){if(Ae=Ft,(Ae.flags&2048)!==0)try{switch(Ae.tag){case 0:case 11:case 15:wl(9,Ae)}}catch(Bt){Jr(Ae,Ae.return,Bt)}if(Ae===we){Ft=null;break e}var kt=Ae.sibling;if(kt!==null){kt.return=Ae.return,Ft=kt;break e}Ft=Ae.return}}if(Mr=le,Xs(),ts&&typeof ts.onPostCommitFiberRoot=="function")try{ts.onPostCommitFiberRoot(Dl,M)}catch(Bt){}q=!0}return q}finally{kr=F,Io.transition=P}}return!1}function Uc(M,P,F){P=Oi(F,P),P=xl(M,P,1),M=Po(M,P,1),P=Vn(),M!==null&&(Fa(M,1,P),no(M,P))}function Jr(M,P,F){if(M.tag===3)Uc(M,M,F);else for(;P!==null;){if(P.tag===3){Uc(P,M,F);break}else if(P.tag===1){var q=P.stateNode;if(typeof P.type.getDerivedStateFromError=="function"||typeof q.componentDidCatch=="function"&&(ai===null||!ai.has(q))){M=Oi(F,M),M=$c(P,M,1),P=Po(P,M,1),M=Vn(),P!==null&&(Fa(P,1,M),no(P,M));break}}P=P.return}}function Ff(M,P,F){var q=M.pingCache;q!==null&&q.delete(P),P=Vn(),M.pingedLanes|=M.suspendedLanes&F,xn===M&&(Tn&F)===F&&(pn===4||pn===3&&(Tn&130023424)===Tn&&500>Gr()-yd?ji(M,0):jc|=F),no(M,P)}function Up(M,P){P===0&&((M.mode&1)===0?P=1:(P=Al,Al<<=1,(Al&130023424)===0&&(Al=4194304)));var F=Vn();M=$s(M,P),M!==null&&(Fa(M,P,F),no(M,F))}function Nf(M){var P=M.memoizedState,F=0;P!==null&&(F=P.retryLane),Up(M,F)}function jf(M,P){var F=0;switch(M.tag){case 13:var q=M.stateNode,le=M.memoizedState;le!==null&&(F=le.retryLane);break;case 19:q=M.stateNode;break;default:throw Error(g(314))}q!==null&&q.delete(P),Up(M,F)}var Vp;Vp=function(M,P,F){if(M!==null)if(M.memoizedProps!==P.pendingProps||Jn.current)zn=!0;else{if((M.lanes&F)===0&&(P.flags&128)===0)return zn=!1,Ip(M,P,F);zn=(M.flags&131072)!==0}else zn=!1,Br&&(P.flags&1048576)!==0&&gp(P,dc,P.index);switch(P.lanes=0,P.tag){case 2:var q=P.type;Lc(M,P),M=P.pendingProps;var le=ha(P,Ln.current);ei(P,F),le=Di(null,P,q,M,le,F);var xe=vc();return P.flags|=1,typeof le=="object"&&le!==null&&typeof le.render=="function"&&le.$$typeof===void 0?(P.tag=1,P.memoizedState=null,P.updateQueue=null,Qn(q)?(xe=!0,So(P)):xe=!1,P.memoizedState=le.state!==null&&le.state!==void 0?le.state:null,gc(P),le.updater=Pc,P.stateNode=le,le._reactInternals=P,ed(P,q,M,F),P=cd(null,P,q,!0,xe,F)):(P.tag=0,Br&&xe&&tl(P),Cn(null,P,le,F),P=P.child),P;case 16:q=P.elementType;e:{switch(Lc(M,P),M=P.pendingProps,le=q._init,q=le(q._payload),P.type=q,le=P.tag=Yf(q),M=$o(q,M),le){case 0:P=ad(null,P,q,M,F);break e;case 1:P=ld(null,P,q,M,F);break e;case 11:P=$p(null,P,q,M,F);break e;case 14:P=rd(null,P,q,$o(q.type,M),F);break e}throw Error(g(306,q,""))}return P;case 0:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),ad(M,P,q,le,F);case 1:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),ld(M,P,q,le,F);case 3:e:{if(kp(P),M===null)throw Error(g(387));q=P.pendingProps,xe=P.memoizedState,le=xe.element,vp(M,P),ya(P,q,null,F);var we=P.memoizedState;if(q=we.element,xe.isDehydrated)if(xe={element:q,isDehydrated:!1,cache:we.cache,pendingSuspenseBoundaries:we.pendingSuspenseBoundaries,transitions:we.transitions},P.updateQueue.baseState=xe,P.memoizedState=xe,P.flags&256){le=Oi(Error(g(423)),P),P=ys(M,P,q,F,le);break e}else if(q!==le){le=Oi(Error(g(424)),P),P=ys(M,P,q,F,le);break e}else for(uo=Ks(P.stateNode.containerInfo.firstChild),An=P,Br=!0,Yo=null,F=fc(P,null,q,F),P.child=F;F;)F.flags=F.flags&-3|4096,F=F.sibling;else{if(ps(),q===le){P=zo(M,P,F);break e}Cn(M,P,q,F)}P=P.child}return P;case 5:return Yu(P),M===null&&Xn(P),q=P.type,le=P.pendingProps,xe=M!==null?M.memoizedProps:null,we=le.children,Xa(q,le)?we=null:xe!==null&&Xa(q,xe)&&(P.flags|=32),od(M,P),Cn(M,P,we,F),P.child;case 6:return M===null&&Xn(P),null;case 13:return Ic(M,P,F);case 4:return Hu(P,P.stateNode.containerInfo),q=P.pendingProps,M===null?P.child=Xr(P,null,q,F):Cn(M,P,q,F),P.child;case 11:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),$p(M,P,q,le,F);case 7:return Cn(M,P,P.pendingProps,F),P.child;case 8:return Cn(M,P,P.pendingProps.children,F),P.child;case 12:return Cn(M,P,P.pendingProps.children,F),P.child;case 10:e:{if(q=P.type._context,le=P.pendingProps,xe=P.memoizedProps,we=le.value,jr(il,q._currentValue),q._currentValue=we,xe!==null)if(at(xe.value,we)){if(xe.children===le.children&&!Jn.current){P=zo(M,P,F);break e}}else for(xe=P.child,xe!==null&&(xe.return=P);xe!==null;){var Ae=xe.dependencies;if(Ae!==null){we=xe.child;for(var ze=Ae.firstContext;ze!==null;){if(ze.context===q){if(xe.tag===1){ze=ks(-1,F&-F),ze.tag=2;var ct=xe.updateQueue;if(ct!==null){ct=ct.shared;var Mt=ct.pending;Mt===null?ze.next=ze:(ze.next=Mt.next,Mt.next=ze),ct.pending=ze}}xe.lanes|=F,ze=xe.alternate,ze!==null&&(ze.lanes|=F),Sn(xe.return,F,P),Ae.lanes|=F;break}ze=ze.next}}else if(xe.tag===10)we=xe.type===P.type?null:xe.child;else if(xe.tag===18){if(we=xe.return,we===null)throw Error(g(341));we.lanes|=F,Ae=we.alternate,Ae!==null&&(Ae.lanes|=F),Sn(we,F,P),we=xe.sibling}else we=xe.child;if(we!==null)we.return=xe;else for(we=xe;we!==null;){if(we===P){we=null;break}if(xe=we.sibling,xe!==null){xe.return=we.return,we=xe;break}we=we.return}xe=we}Cn(M,P,le.children,F),P=P.child}return P;case 9:return le=P.type,q=P.pendingProps.children,ei(P,F),le=Mo(le),q=q(le),P.flags|=1,Cn(M,P,q,F),P.child;case 14:return q=P.type,le=$o(q,P.pendingProps),le=$o(q.type,le),rd(M,P,q,le,F);case 15:return _s(M,P,P.type,P.pendingProps,F);case 17:return q=P.type,le=P.pendingProps,le=P.elementType===q?le:$o(q,le),Lc(M,P),P.tag=1,Qn(q)?(M=!0,So(P)):M=!1,ei(P,F),Ai(P,q,le),ed(P,q,le,F),cd(null,P,q,!0,M,F);case 19:return ni(M,P,F);case 22:return nd(M,P,F)}throw Error(g(156,P.tag))};function Wp(M,P){return Er(M,P)}function Hf(M,P,F,q){this.tag=M,this.key=F,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=P,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=q,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Lo(M,P,F,q){return new Hf(M,P,F,q)}function Vc(M){return M=M.prototype,!(!M||!M.isReactComponent)}function Yf(M){if(typeof M=="function")return Vc(M)?1:0;if(M!=null){if(M=M.$$typeof,M===ie)return 11;if(M===ee)return 14}return 2}function qo(M,P){var F=M.alternate;return F===null?(F=Lo(M.tag,P,M.key,M.mode),F.elementType=M.elementType,F.type=M.type,F.stateNode=M.stateNode,F.alternate=M,M.alternate=F):(F.pendingProps=P,F.type=M.type,F.flags=0,F.subtreeFlags=0,F.deletions=null),F.flags=M.flags&14680064,F.childLanes=M.childLanes,F.lanes=M.lanes,F.child=M.child,F.memoizedProps=M.memoizedProps,F.memoizedState=M.memoizedState,F.updateQueue=M.updateQueue,P=M.dependencies,F.dependencies=P===null?null:{lanes:P.lanes,firstContext:P.firstContext},F.sibling=M.sibling,F.index=M.index,F.ref=M.ref,F}function Wc(M,P,F,q,le,xe){var we=2;if(q=M,typeof M=="function")Vc(M)&&(we=1);else if(typeof M=="string")we=5;else e:switch(M){case V:return Yi(F.children,le,xe,P);case J:we=8,le|=8;break;case Q:return M=Lo(12,F,P,le|2),M.elementType=Q,M.lanes=xe,M;case oe:return M=Lo(13,F,P,le),M.elementType=oe,M.lanes=xe,M;case Z:return M=Lo(19,F,P,le),M.elementType=Z,M.lanes=xe,M;case fe:return qc(F,le,xe,P);default:if(typeof M=="object"&&M!==null)switch(M.$$typeof){case X:we=10;break e;case re:we=9;break e;case ie:we=11;break e;case ee:we=14;break e;case ce:we=16,q=null;break e}throw Error(g(130,M==null?M:typeof M,""))}return P=Lo(we,F,P,le),P.elementType=M,P.type=q,P.lanes=xe,P}function Yi(M,P,F,q){return M=Lo(7,M,q,P),M.lanes=F,M}function qc(M,P,F,q){return M=Lo(22,M,q,P),M.elementType=fe,M.lanes=F,M.stateNode={isHidden:!1},M}function Td(M,P,F){return M=Lo(6,M,null,P),M.lanes=F,M}function Pd(M,P,F){return P=Lo(4,M.children!==null?M.children:[],M.key,P),P.lanes=F,P.stateNode={containerInfo:M.containerInfo,pendingChildren:null,implementation:M.implementation},P}function Bf(M,P,F,q,le){this.tag=P,this.containerInfo=M,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Oa(0),this.expirationTimes=Oa(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Oa(0),this.identifierPrefix=q,this.onRecoverableError=le,this.mutableSourceEagerHydrationData=null}function Rd(M,P,F,q,le,xe,we,Ae,ze){return M=new Bf(M,P,F,Ae,ze),P===1?(P=1,xe===!0&&(P|=8)):P=0,xe=Lo(3,null,null,P),M.current=xe,xe.stateNode=M,xe.memoizedState={element:q,isDehydrated:F,cache:null,transitions:null,pendingSuspenseBoundaries:null},gc(xe),M}function zf(M,P,F){var q=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:W,key:q==null?null:""+q,children:M,containerInfo:P,implementation:F}}function qp(M){if(!M)return Qs;M=M._reactInternals;e:{if(ut(M)!==M||M.tag!==1)throw Error(g(170));var P=M;do{switch(P.tag){case 3:P=P.stateNode.context;break e;case 1:if(Qn(P.type)){P=P.stateNode.__reactInternalMemoizedMergedChildContext;break e}}P=P.return}while(P!==null);throw Error(g(171))}if(M.tag===1){var F=M.type;if(Qn(F))return fp(M,F,P)}return P}function Kp(M,P,F,q,le,xe,we,Ae,ze){return M=Rd(F,q,!0,M,le,xe,we,Ae,ze),M.context=qp(null),F=M.current,q=Vn(),le=ci(F),xe=ks(q,le),xe.callback=P!=null?P:null,Po(F,xe,le),M.current.lanes=le,Fa(M,le,q),no(M,q),M}function Kc(M,P,F,q){var le=P.current,xe=Vn(),we=ci(le);return F=qp(F),P.context===null?P.context=F:P.pendingContext=F,P=ks(xe,we),P.payload={element:M},q=q===void 0?null:q,q!==null&&(P.callback=q),M=Po(le,P,we),M!==null&&(Wo(M,le,we,xe),xc(M,le,we)),we}function Jc(M){if(M=M.current,!M.child)return null;switch(M.child.tag){case 5:return M.child.stateNode;default:return M.child.stateNode}}function Jp(M,P){if(M=M.memoizedState,M!==null&&M.dehydrated!==null){var F=M.retryLane;M.retryLane=F!==0&&F<P?F:P}}function $d(M,P){Jp(M,P),(M=M.alternate)&&Jp(M,P)}function Gf(){return null}var Qp=typeof reportError=="function"?reportError:function(M){console.error(M)};function Qc(M){this._internalRoot=M}kl.prototype.render=Qc.prototype.render=function(M){var P=this._internalRoot;if(P===null)throw Error(g(409));Kc(M,P,null,null)},kl.prototype.unmount=Qc.prototype.unmount=function(){var M=this._internalRoot;if(M!==null){this._internalRoot=null;var P=M.containerInfo;Ni(function(){Kc(null,M,null,null)}),P[co]=null}};function kl(M){this._internalRoot=M}kl.prototype.unstable_scheduleHydration=function(M){if(M){var P=uu();M={blockedOn:null,target:M,priority:P};for(var F=0;F<zs.length&&P!==0&&P<zs[F].priority;F++);zs.splice(F,0,M),F===0&&Bd(M)}};function kd(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11)}function Xc(M){return!(!M||M.nodeType!==1&&M.nodeType!==9&&M.nodeType!==11&&(M.nodeType!==8||M.nodeValue!==" react-mount-point-unstable "))}function Xp(){}function Uf(M,P,F,q,le){if(le){if(typeof q=="function"){var xe=q;q=function(){var ct=Jc(we);xe.call(ct)}}var we=Kp(P,q,M,0,null,!1,!1,"",Xp);return M._reactRootContainer=we,M[co]=we.current,Ws(M.nodeType===8?M.parentNode:M),Ni(),we}for(;le=M.lastChild;)M.removeChild(le);if(typeof q=="function"){var Ae=q;q=function(){var ct=Jc(ze);Ae.call(ct)}}var ze=Rd(M,0,!1,null,null,!1,!1,"",Xp);return M._reactRootContainer=ze,M[co]=ze.current,Ws(M.nodeType===8?M.parentNode:M),Ni(function(){Kc(P,ze,F,q)}),ze}function Bi(M,P,F,q,le){var xe=F._reactRootContainer;if(xe){var we=xe;if(typeof le=="function"){var Ae=le;le=function(){var ze=Jc(we);Ae.call(ze)}}Kc(P,we,M,le)}else we=Uf(F,P,M,le,q);return Jc(we)}cu=function(M){switch(M.tag){case 3:var P=M.stateNode;if(P.current.memoizedState.isDehydrated){var F=Wi(P.pendingLanes);F!==0&&(Na(P,F|1),no(P,Gr()),(Mr&6)===0&&(Fi=Gr()+500,Xs()))}break;case 13:Ni(function(){var q=$s(M,1);if(q!==null){var le=Vn();Wo(q,M,1,le)}}),$d(M,1)}},Fl=function(M){if(M.tag===13){var P=$s(M,134217728);if(P!==null){var F=Vn();Wo(P,M,134217728,F)}$d(M,134217728)}},Hd=function(M){if(M.tag===13){var P=ci(M),F=$s(M,P);if(F!==null){var q=Vn();Wo(F,M,P,q)}$d(M,P)}},uu=function(){return kr},du=function(M,P){var F=kr;try{return kr=M,P()}finally{kr=F}},vr=function(M,P,F){switch(P){case"input":if(rt(M,F),P=F.name,F.type==="radio"&&P!=null){for(F=M;F.parentNode;)F=F.parentNode;for(F=F.querySelectorAll("input[name="+JSON.stringify(""+P)+'][type="radio"]'),P=0;P<F.length;P++){var q=F[P];if(q!==M&&q.form===M.form){var le=ac(q);if(!le)throw Error(g(90));Ge(q),rt(q,le)}}}break;case"textarea":st(M,F);break;case"select":P=F.value,P!=null&&Ne(M,!!F.multiple,P,!1)}},yn=Cd,Qr=Ni;var Vf={usingClientEntryPoint:!1,Events:[In,pr,ac,xr,qr,Cd]},Il={findFiberByHostInstance:as,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Wf={bundleType:Il.bundleType,version:Il.version,rendererPackageName:Il.rendererPackageName,rendererConfig:Il.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:B.ReactCurrentDispatcher,findHostInstanceByFiber:function(M){return M=dr(M),M===null?null:M.stateNode},findFiberByHostInstance:Il.findFiberByHostInstance||Gf,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__!="undefined"){var Zc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Zc.isDisabled&&Zc.supportsFiber)try{Dl=Zc.inject(Wf),ts=Zc}catch(M){}}return reactDom_production_min.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Vf,reactDom_production_min.createPortal=function(M,P){var F=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!kd(P))throw Error(g(200));return zf(M,P,null,F)},reactDom_production_min.createRoot=function(M,P){if(!kd(M))throw Error(g(299));var F=!1,q="",le=Qp;return P!=null&&(P.unstable_strictMode===!0&&(F=!0),P.identifierPrefix!==void 0&&(q=P.identifierPrefix),P.onRecoverableError!==void 0&&(le=P.onRecoverableError)),P=Rd(M,1,!1,null,null,F,!1,q,le),M[co]=P.current,Ws(M.nodeType===8?M.parentNode:M),new Qc(P)},reactDom_production_min.findDOMNode=function(M){if(M==null)return null;if(M.nodeType===1)return M;var P=M._reactInternals;if(P===void 0)throw typeof M.render=="function"?Error(g(188)):(M=Object.keys(M).join(","),Error(g(268,M)));return M=dr(P),M=M===null?null:M.stateNode,M},reactDom_production_min.flushSync=function(M){return Ni(M)},reactDom_production_min.hydrate=function(M,P,F){if(!Xc(P))throw Error(g(200));return Bi(null,M,P,!0,F)},reactDom_production_min.hydrateRoot=function(M,P,F){if(!kd(M))throw Error(g(405));var q=F!=null&&F.hydratedSources||null,le=!1,xe="",we=Qp;if(F!=null&&(F.unstable_strictMode===!0&&(le=!0),F.identifierPrefix!==void 0&&(xe=F.identifierPrefix),F.onRecoverableError!==void 0&&(we=F.onRecoverableError)),P=Kp(P,null,M,1,F!=null?F:null,le,!1,xe,we),M[co]=P.current,Ws(M),q)for(M=0;M<q.length;M++)F=q[M],le=F._getVersion,le=le(F._source),P.mutableSourceEagerHydrationData==null?P.mutableSourceEagerHydrationData=[F,le]:P.mutableSourceEagerHydrationData.push(F,le);return new kl(P)},reactDom_production_min.render=function(M,P,F){if(!Xc(P))throw Error(g(200));return Bi(null,M,P,!1,F)},reactDom_production_min.unmountComponentAtNode=function(M){if(!Xc(M))throw Error(g(40));return M._reactRootContainer?(Ni(function(){Bi(null,null,M,!1,function(){M._reactRootContainer=null,M[co]=null})}),!0):!1},reactDom_production_min.unstable_batchedUpdates=Cd,reactDom_production_min.unstable_renderSubtreeIntoContainer=function(M,P,F,q){if(!Xc(F))throw Error(g(200));if(M==null||M._reactInternals===void 0)throw Error(g(38));return Bi(M,P,F,!1,q)},reactDom_production_min.version="18.3.1-next-f1338f8080-20240426",reactDom_production_min}var hasRequiredReactDom;function requireReactDom(){if(hasRequiredReactDom)return reactDom.exports;hasRequiredReactDom=1;function d(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__=="undefined"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(d)}catch(m){console.error(m)}}return d(),reactDom.exports=requireReactDom_production_min(),reactDom.exports}var hasRequiredClient;function requireClient(){if(hasRequiredClient)return client;hasRequiredClient=1;var d=requireReactDom();return client.createRoot=d.createRoot,client.hydrateRoot=d.hydrateRoot,client}var clientExports=requireClient();const scriptRel="modulepreload",assetsURL=function(d){return"/"+d},seen={},__vitePreload=function(m,g,x){let b=Promise.resolve();if(g&&g.length>0){let v=function(T){return Promise.all(T.map(R=>Promise.resolve(R).then(k=>({status:"fulfilled",value:k}),k=>({status:"rejected",reason:k}))))};document.getElementsByTagName("link");const S=document.querySelector("meta[property=csp-nonce]"),C=(S==null?void 0:S.nonce)||(S==null?void 0:S.getAttribute("nonce"));b=v(g.map(T=>{if(T=assetsURL(T),T in seen)return;seen[T]=!0;const R=T.endsWith(".css"),k=R?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${T}"]${k}`))return;const L=document.createElement("link");if(L.rel=R?"stylesheet":scriptRel,R||(L.as="script"),L.crossOrigin="",L.href=T,C&&L.setAttribute("nonce",C),document.head.appendChild(L),R)return new Promise((D,A)=>{L.addEventListener("load",D),L.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${T}`)))})}))}function E(v){const S=new Event("vite:preloadError",{cancelable:!0});if(S.payload=v,window.dispatchEvent(S),!S.defaultPrevented)throw v}return b.then(v=>{for(const S of v||[])S.status==="rejected"&&E(S.reason);return m().catch(E)})};window.crypto||(window.crypto={});crypto.subtle||(crypto.subtle=console.debug("using polyfill for crypto.subtle")||{});var Lm;(Lm=crypto.subtle).digest||(Lm.digest=(d,m)=>yt(void 0,null,function*(){if(d!=="SHA-512")return alert(d+" required but not supported");const x=(yield __vitePreload(()=>import("./sha512-CG53IlA4.js").then(b=>b.s),[])).default.arrayBuffer;return x(m)}));var reactDomExports=requireReactDom();const ReactDOM=getDefaultExportFromCjs(reactDomExports);/**
33
33
  * @remix-run/router v1.16.1
34
34
  *
35
35
  * Copyright (c) Remix Software Inc.
@@ -291,16 +291,16 @@ Error generating stack: `+xe.message+`
291
291
  * Released under MIT license <https://lodash.com/license>
292
292
  * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
293
293
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
294
- */var lodash=lodash$1.exports,hasRequiredLodash;function requireLodash(){return hasRequiredLodash||(hasRequiredLodash=1,function(d,m){(function(){var g,x="4.17.21",b=200,E="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",v="Expected a function",S="Invalid `variable` option passed into `_.template`",C="__lodash_hash_undefined__",T=500,R="__lodash_placeholder__",k=1,L=2,D=4,A=1,I=2,N=1,z=2,j=4,Y=8,B=16,U=32,W=64,V=128,J=256,Q=512,X=30,re="...",ie=800,oe=16,Z=1,ee=2,ce=3,fe=1/0,ae=9007199254740991,ue=17976931348623157e292,pe=NaN,ge=4294967295,ye=ge-1,Ee=ge>>>1,ve=[["ary",V],["bind",N],["bindKey",z],["curry",Y],["curryRight",B],["flip",Q],["partial",U],["partialRight",W],["rearg",J]],Se="[object Arguments]",$e="[object Array]",Me="[object AsyncFunction]",Re="[object Boolean]",De="[object Date]",Be="[object DOMException]",Le="[object Error]",Ge="[object Function]",Ie="[object GeneratorFunction]",Ye="[object Map]",He="[object Number]",Ve="[object Null]",rt="[object Object]",Oe="[object Promise]",ot="[object Proxy]",ke="[object RegExp]",Ne="[object Set]",Ke="[object String]",Xe="[object Symbol]",st="[object Undefined]",xt="[object WeakMap]",Je="[object WeakSet]",gt="[object ArrayBuffer]",Ct="[object DataView]",dt="[object Float32Array]",jt="[object Float64Array]",Wt="[object Int8Array]",Xt="[object Int16Array]",Pt="[object Int32Array]",zt="[object Uint8Array]",St="[object Uint8ClampedArray]",Lt="[object Uint16Array]",Kt="[object Uint32Array]",Zt=/\b__p \+= '';/g,lr=/\b(__p \+=) '' \+/g,vr=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Jt=/&(?:amp|lt|gt|quot|#39);/g,rr=/[&<>"']/g,Or=RegExp(Jt.source),xr=RegExp(rr.source),qr=/<%-([\s\S]+?)%>/g,yn=/<%([\s\S]+?)%>/g,Qr=/<%=([\s\S]+?)%>/g,Fo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Pn=/^\w*$/,Fr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wr=/[\\^$.*+?()[\]{}|]/g,zr=RegExp(wr.source),sn=/^\s+/,vn=/\s/,Wn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,En=/\{\n\/\* \[wrapped with (.+)\] \*/,xo=/,? & /,Zo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,_o=/[()=,{}\[\]\/\s]/,No=/\\(\\)?/g,ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,tt=/\w*$/,It=/^[-+]0x[0-9a-f]+$/i,Gt=/^0b[01]+$/i,dr=/^\[object .+?Constructor\]$/,Yt=/^0o[0-7]+$/i,Er=/^(?:0|[1-9]\d*)$/,so=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,pi=/($^)/,of=/['\n\r\u2028\u2029\\]/g,Gr="\\ud800-\\udfff",sf="\\u0300-\\u036f",iu="\\ufe20-\\ufe2f",Ld="\\u20d0-\\u20ff",Aa=sf+iu+Ld,Dd="\\u2700-\\u27bf",au="a-z\\xdf-\\xf6\\xf8-\\xff",Dl="\\xac\\xb1\\xd7\\xf7",ts="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",lf="\\u2000-\\u206f",jo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ad="A-Z\\xc0-\\xd6\\xd8-\\xde",Od="\\ufe0e\\ufe0f",Fd=Dl+ts+lf+jo,Vi="['’]",Al="["+Gr+"]",Wi="["+Fd+"]",gi="["+Aa+"]",Nd="\\d+",cf="["+Dd+"]",Ol="["+au+"]",lu="[^"+Gr+Fd+Nd+Dd+au+Ad+"]",Oa="\\ud83c[\\udffb-\\udfff]",Fa="(?:"+gi+"|"+Oa+")",jd="[^"+Gr+"]",Na="(?:\\ud83c[\\udde6-\\uddff]){2}",kr="[\\ud800-\\udbff][\\udc00-\\udfff]",xi="["+Ad+"]",cu="\\u200d",Fl="(?:"+Ol+"|"+lu+")",Hd="(?:"+xi+"|"+lu+")",uu="(?:"+Vi+"(?:d|ll|m|re|s|t|ve))?",du="(?:"+Vi+"(?:D|LL|M|RE|S|T|VE))?",Nl=Fa+"?",Ha="["+Od+"]?",Hs="(?:"+cu+"(?:"+[jd,Na,kr].join("|")+")"+Ha+Nl+")*",Ys="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Bs="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",qi=Ha+Nl+Hs,Ya="(?:"+[cf,Na,kr].join("|")+")"+qi,zs="(?:"+[jd+gi+"?",gi,Na,kr,Al].join("|")+")",uf=RegExp(Vi,"g"),Yd=RegExp(gi,"g"),_i=RegExp(Oa+"(?="+Oa+")|"+zs+qi,"g"),df=RegExp([xi+"?"+Ol+"+"+uu+"(?="+[Wi,xi,"$"].join("|")+")",Hd+"+"+du+"(?="+[Wi,xi+Fl,"$"].join("|")+")",xi+"?"+Fl+"+"+uu,xi+"+"+du,Bs,Ys,Nd,Ya].join("|"),"g"),Bd=RegExp("["+cu+Gr+Aa+Od+"]"),jl=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,zd=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],pf=-1,Lr={};Lr[dt]=Lr[jt]=Lr[Wt]=Lr[Xt]=Lr[Pt]=Lr[zt]=Lr[St]=Lr[Lt]=Lr[Kt]=!0,Lr[Se]=Lr[$e]=Lr[gt]=Lr[Re]=Lr[Ct]=Lr[De]=Lr[Le]=Lr[Ge]=Lr[Ye]=Lr[He]=Lr[rt]=Lr[ke]=Lr[Ne]=Lr[Ke]=Lr[xt]=!1;var Ir={};Ir[Se]=Ir[$e]=Ir[gt]=Ir[Ct]=Ir[Re]=Ir[De]=Ir[dt]=Ir[jt]=Ir[Wt]=Ir[Xt]=Ir[Pt]=Ir[Ye]=Ir[He]=Ir[rt]=Ir[ke]=Ir[Ne]=Ir[Ke]=Ir[Xe]=Ir[zt]=Ir[St]=Ir[Lt]=Ir[Kt]=!0,Ir[Le]=Ir[Ge]=Ir[xt]=!1;var Ki={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Hl={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ff={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},mf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},pu=parseFloat,Yl=parseInt,Bl=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,Gd=typeof self=="object"&&self&&self.Object===Object&&self,Ur=Bl||Gd||Function("return this")(),Ba=m&&!m.nodeType&&m,rs=Ba&&!0&&d&&!d.nodeType&&d,fu=rs&&rs.exports===Ba,Ji=fu&&Bl.process,jn=function(){try{var qe=rs&&rs.require&&rs.require("util").types;return qe||Ji&&Ji.binding&&Ji.binding("util")}catch(ft){}}(),mu=jn&&jn.isArrayBuffer,qn=jn&&jn.isDate,yi=jn&&jn.isMap,zl=jn&&jn.isRegExp,Qi=jn&&jn.isSet,Ud=jn&&jn.isTypedArray;function Hn(qe,ft,at){switch(at.length){case 0:return qe.call(ft);case 1:return qe.call(ft,at[0]);case 2:return qe.call(ft,at[0],at[1]);case 3:return qe.call(ft,at[0],at[1],at[2])}return qe.apply(ft,at)}function xu(qe,ft,at,At){for(var cr=-1,Pr=qe==null?0:qe.length;++cr<Pr;){var an=qe[cr];ft(At,an,at(an),qe)}return At}function Rn(qe,ft){for(var at=-1,At=qe==null?0:qe.length;++at<At&&ft(qe[at],at,qe)!==!1;);return qe}function Gl(qe,ft){for(var at=qe==null?0:qe.length;at--&&ft(qe[at],at,qe)!==!1;);return qe}function _u(qe,ft){for(var at=-1,At=qe==null?0:qe.length;++at<At;)if(!ft(qe[at],at,qe))return!1;return!0}function Gs(qe,ft){for(var at=-1,At=qe==null?0:qe.length,cr=0,Pr=[];++at<At;){var an=qe[at];ft(an,at,qe)&&(Pr[cr++]=an)}return Pr}function Ul(qe,ft){var at=qe==null?0:qe.length;return!!at&&Xi(qe,ft,0)>-1}function yu(qe,ft,at){for(var At=-1,cr=qe==null?0:qe.length;++At<cr;)if(at(ft,qe[At]))return!0;return!1}function Nr(qe,ft){for(var at=-1,At=qe==null?0:qe.length,cr=Array(At);++at<At;)cr[at]=ft(qe[at],at,qe);return cr}function Us(qe,ft){for(var at=-1,At=ft.length,cr=qe.length;++at<At;)qe[cr+at]=ft[at];return qe}function vu(qe,ft,at,At){var cr=-1,Pr=qe==null?0:qe.length;for(At&&Pr&&(at=qe[++cr]);++cr<Pr;)at=ft(at,qe[cr],cr,qe);return at}function hf(qe,ft,at,At){var cr=qe==null?0:qe.length;for(At&&cr&&(at=qe[--cr]);cr--;)at=ft(at,qe[cr],cr,qe);return at}function bu(qe,ft){for(var at=-1,At=qe==null?0:qe.length;++at<At;)if(ft(qe[at],at,qe))return!0;return!1}var gf=Su("length");function Vd(qe){return qe.split("")}function xf(qe){return qe.match(Zo)||[]}function Wd(qe,ft,at){var At;return at(qe,function(cr,Pr,an){if(ft(cr,Pr,an))return At=Pr,!1}),At}function Vl(qe,ft,at,At){for(var cr=qe.length,Pr=at+(At?1:-1);At?Pr--:++Pr<cr;)if(ft(qe[Pr],Pr,qe))return Pr;return-1}function Xi(qe,ft,at){return ft===ft?Kl(qe,ft,at):Vl(qe,qd,at)}function Eu(qe,ft,at,At){for(var cr=at-1,Pr=qe.length;++cr<Pr;)if(At(qe[cr],ft))return cr;return-1}function qd(qe){return qe!==qe}function Kd(qe,ft){var at=qe==null?0:qe.length;return at?Cu(qe,ft)/at:pe}function Su(qe){return function(ft){return ft==null?g:ft[qe]}}function Wl(qe){return function(ft){return qe==null?g:qe[ft]}}function Jd(qe,ft,at,At,cr){return cr(qe,function(Pr,an,Dr){at=At?(At=!1,Pr):ft(at,Pr,an,Dr)}),at}function _f(qe,ft){var at=qe.length;for(qe.sort(ft);at--;)qe[at]=qe[at].value;return qe}function Cu(qe,ft){for(var at,At=-1,cr=qe.length;++At<cr;){var Pr=ft(qe[At]);Pr!==g&&(at=at===g?Pr:at+Pr)}return at}function wu(qe,ft){for(var at=-1,At=Array(qe);++at<qe;)At[at]=ft(at);return At}function yf(qe,ft){return Nr(ft,function(at){return[at,qe[at]]})}function Qd(qe){return qe&&qe.slice(0,Jl(qe)+1).replace(sn,"")}function io(qe){return function(ft){return qe(ft)}}function za(qe,ft){return Nr(ft,function(at){return qe[at]})}function Ss(qe,ft){return qe.has(ft)}function Xd(qe,ft){for(var at=-1,At=qe.length;++at<At&&Xi(ft,qe[at],0)>-1;);return at}function Mu(qe,ft){for(var at=qe.length;at--&&Xi(ft,qe[at],0)>-1;);return at}function Zd(qe,ft){for(var at=qe.length,At=0;at--;)qe[at]===ft&&++At;return At}var ep=Wl(Ki),tp=Wl(Hl);function rp(qe){return"\\"+mf[qe]}function Zi(qe,ft){return qe==null?g:qe[ft]}function ea(qe){return Bd.test(qe)}function vf(qe){return jl.test(qe)}function bf(qe){for(var ft,at=[];!(ft=qe.next()).done;)at.push(ft.value);return at}function ql(qe){var ft=-1,at=Array(qe.size);return qe.forEach(function(At,cr){at[++ft]=[cr,At]}),at}function Tu(qe,ft){return function(at){return qe(ft(at))}}function vo(qe,ft){for(var at=-1,At=qe.length,cr=0,Pr=[];++at<At;){var an=qe[at];(an===ft||an===R)&&(qe[at]=R,Pr[cr++]=at)}return Pr}function Vs(qe){var ft=-1,at=Array(qe.size);return qe.forEach(function(At){at[++ft]=At}),at}function Ef(qe){var ft=-1,at=Array(qe.size);return qe.forEach(function(At){at[++ft]=[At,At]}),at}function Kl(qe,ft,at){for(var At=at-1,cr=qe.length;++At<cr;)if(qe[At]===ft)return At;return-1}function Sf(qe,ft,at){for(var At=at+1;At--;)if(qe[At]===ft)return At;return At}function Ei(qe){return ea(qe)?op(qe):gf(qe)}function ao(qe){return ea(qe)?sp(qe):Vd(qe)}function Jl(qe){for(var ft=qe.length;ft--&&vn.test(qe.charAt(ft)););return ft}var np=Wl(ff);function op(qe){for(var ft=_i.lastIndex=0;_i.test(qe);)++ft;return ft}function sp(qe){return qe.match(_i)||[]}function Cf(qe){return qe.match(df)||[]}var wf=function qe(ft){ft=ft==null?Ur:ra.defaults(Ur.Object(),ft,ra.pick(Ur,zd));var at=ft.Array,At=ft.Date,cr=ft.Error,Pr=ft.Function,an=ft.Math,Dr=ft.Object,Ga=ft.RegExp,Mf=ft.String,Eo=ft.TypeError,Cs=at.prototype,Pu=Pr.prototype,ns=Dr.prototype,na=ft["__core-js_shared__"],Ua=Pu.toString,Rr=ns.hasOwnProperty,oa=0,Ql=function(){var $=/[^.]+$/.exec(na&&na.keys&&na.keys.IE_PROTO||"");return $?"Symbol(src)_1."+$:""}(),Va=ns.toString,Xl=Ua.call(Dr),ip=Ur._,ap=Ga("^"+Ua.call(Rr).replace(wr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Wa=fu?ft.Buffer:g,ws=ft.Symbol,qa=ft.Uint8Array,Ru=Wa?Wa.allocUnsafe:g,Ho=Tu(Dr.getPrototypeOf,Dr),Zl=Dr.create,ec=ns.propertyIsEnumerable,tc=Cs.splice,lp=ws?ws.isConcatSpreadable:g,Ms=ws?ws.iterator:g,Si=ws?ws.toStringTag:g,Ka=function(){try{var $=ni(Dr,"defineProperty");return $({},"",{}),$}catch(O){}}(),cp=ft.clearTimeout!==Ur.clearTimeout&&ft.clearTimeout,Hr=At&&At.now!==Ur.Date.now&&At.now,$u=ft.setTimeout!==Ur.setTimeout&&ft.setTimeout,Ci=an.ceil,Ws=an.floor,rc=Dr.getOwnPropertySymbols,Iu=Wa?Wa.isBuffer:g,sa=ft.isFinite,nc=Cs.join,ia=Tu(Dr.keys,Dr),ln=an.max,$n=an.min,Tf=At.now,up=ft.parseInt,Ja=an.random,oc=Cs.reverse,Qa=ni(ft,"DataView"),wi=ni(ft,"Map"),Xa=ni(ft,"Promise"),qs=ni(ft,"Set"),Za=ni(ft,"WeakMap"),aa=ni(Dr,"create"),sc=Za&&new Za,la={},Lu=oi(Qa),Ks=oi(wi),dp=oi(Xa),ua=oi(qs),os=oi(Za),Js=ws?ws.prototype:g,co=Js?Js.valueOf:g,ic=Js?Js.toString:g;function Te($){if(un($)&&!gr($)&&!($ instanceof pr)){if($ instanceof In)return $;if(Rr.call($,"__wrapped__"))return jp($)}return new In($)}var pa=function(){function $(){}return function(O){if(!on(O))return{};if(Zl)return Zl(O);$.prototype=O;var K=new $;return $.prototype=g,K}}();function as(){}function In($,O){this.__wrapped__=$,this.__actions__=[],this.__chain__=!!O,this.__index__=0,this.__values__=g}Te.templateSettings={escape:qr,evaluate:yn,interpolate:Qr,variable:"",imports:{_:Te}},Te.prototype=as.prototype,Te.prototype.constructor=Te,In.prototype=pa(as.prototype),In.prototype.constructor=In;function pr($){this.__wrapped__=$,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=ge,this.__views__=[]}function ac(){var $=new pr(this.__wrapped__);return $.__actions__=Bn(this.__actions__),$.__dir__=this.__dir__,$.__filtered__=this.__filtered__,$.__iteratees__=Bn(this.__iteratees__),$.__takeCount__=this.__takeCount__,$.__views__=Bn(this.__views__),$}function Du(){if(this.__filtered__){var $=new pr(this);$.__dir__=-1,$.__filtered__=!0}else $=this.clone(),$.__dir__*=-1;return $}function ma(){var $=this.__wrapped__.value(),O=this.__dir__,K=gr($),_e=O<0,Ce=K?$.length:0,Pe=ud(0,Ce,this.__views__),je=Pe.start,Ue=Pe.end,Qe=Ue-je,yt=_e?Ue:je-1,Et=this.__iteratees__,Tt=Et.length,Dt=0,Ut=$n(Qe,this.__takeCount__);if(!K||!_e&&Ce==Qe&&Ut==Qe)return Sa($,this.__actions__);var or=[];e:for(;Qe--&&Dt<Ut;){yt+=O;for(var Sr=-1,ir=$[yt];++Sr<Tt;){var Cr=Et[Sr],Tr=Cr.iteratee,Jo=Cr.type,go=Tr(ir);if(Jo==ee)ir=go;else if(!go){if(Jo==Z)continue e;break e}}or[Dt++]=ir}return or}pr.prototype=pa(as.prototype),pr.prototype.constructor=pr;function Kn($){var O=-1,K=$==null?0:$.length;for(this.clear();++O<K;){var _e=$[O];this.set(_e[0],_e[1])}}function Yr(){this.__data__=aa?aa(null):{},this.size=0}function jr($){var O=this.has($)&&delete this.__data__[$];return this.size-=O?1:0,O}function Qs($){var O=this.__data__;if(aa){var K=O[$];return K===C?g:K}return Rr.call(O,$)?O[$]:g}function Ln($){var O=this.__data__;return aa?O[$]!==g:Rr.call(O,$)}function Jn($,O){var K=this.__data__;return this.size+=this.has($)?0:1,K[$]=aa&&O===g?C:O,this}Kn.prototype.clear=Yr,Kn.prototype.delete=jr,Kn.prototype.get=Qs,Kn.prototype.has=Ln,Kn.prototype.set=Jn;function Yn($){var O=-1,K=$==null?0:$.length;for(this.clear();++O<K;){var _e=$[O];this.set(_e[0],_e[1])}}function ha(){this.__data__=[],this.size=0}function Qn($){var O=this.__data__,K=An(O,$);if(K<0)return!1;var _e=O.length-1;return K==_e?O.pop():tc.call(O,K,1),--this.size,!0}function lc($){var O=this.__data__,K=An(O,$);return K<0?g:O[K][1]}function pp($){return An(this.__data__,$)>-1}function fp($,O){var K=this.__data__,_e=An(K,$);return _e<0?(++this.size,K.push([$,O])):K[_e][1]=O,this}Yn.prototype.clear=ha,Yn.prototype.delete=Qn,Yn.prototype.get=lc,Yn.prototype.has=pp,Yn.prototype.set=fp;function So($){var O=-1,K=$==null?0:$.length;for(this.clear();++O<K;){var _e=$[O];this.set(_e[0],_e[1])}}function mp(){this.size=0,this.__data__={hash:new Kn,map:new(wi||Yn),string:new Kn}}function Ts($){var O=bl(this,$).delete($);return this.size-=O?1:0,O}function cc($){return bl(this,$).get($)}function Au($){return bl(this,$).has($)}function hp($,O){var K=bl(this,$),_e=K.size;return K.set($,O),this.size+=K.size==_e?0:1,this}So.prototype.clear=mp,So.prototype.delete=Ts,So.prototype.get=cc,So.prototype.has=Au,So.prototype.set=hp;function Mi($){var O=-1,K=$==null?0:$.length;for(this.__data__=new So;++O<K;)this.add($[O])}function Xs($){return this.__data__.set($,C),this}function xa($){return this.__data__.has($)}Mi.prototype.add=Mi.prototype.push=Xs,Mi.prototype.has=xa;function Dn($){var O=this.__data__=new Yn($);this.size=O.size}function uc(){this.__data__=new Yn,this.size=0}function dc($){var O=this.__data__,K=O.delete($);return this.size=O.size,K}function Co($){return this.__data__.get($)}function wo($){return this.__data__.has($)}function Ti($,O){var K=this.__data__;if(K instanceof Yn){var _e=K.__data__;if(!wi||_e.length<b-1)return _e.push([$,O]),this.size=++K.size,this;K=this.__data__=new So(_e)}return K.set($,O),this.size=K.size,this}Dn.prototype.clear=uc,Dn.prototype.delete=dc,Dn.prototype.get=Co,Dn.prototype.has=wo,Dn.prototype.set=Ti;function ls($,O){var K=gr($),_e=!K&&Ll($),Ce=!K&&!_e&&Da($),Pe=!K&&!_e&&!Ce&&tu($),je=K||_e||Ce||Pe,Ue=je?wu($.length,Mf):[],Qe=Ue.length;for(var yt in $)(O||Rr.call($,yt))&&!(je&&(yt=="length"||Ce&&(yt=="offset"||yt=="parent")||Pe&&(yt=="buffer"||yt=="byteLength"||yt=="byteOffset")||Wr(yt,Qe)))&&Ue.push(yt);return Ue}function us($){var O=$.length;return O?$[ba(0,O-1)]:g}function Pi($,O){return Fc(Bn($),Ps(O,0,$.length))}function gp($){return Fc(Bn($))}function tl($,O,K){(K!==g&&!Ns($[O],K)||K===g&&!(O in $))&&ds($,O,K)}function Ri($,O,K){var _e=$[O];(!(Rr.call($,O)&&Ns(_e,K))||K===g&&!(O in $))&&ds($,O,K)}function An($,O){for(var K=$.length;K--;)if(Ns($[K][0],O))return K;return-1}function uo($,O,K,_e){return fs($,function(Ce,Pe,je){O(_e,Ce,K(Ce),je)}),_e}function Br($,O){return $&&Bo(O,Nn(O),$)}function Yo($,O){return $&&Bo(O,Ao(O),$)}function ds($,O,K){O=="__proto__"&&Ka?Ka($,O,{configurable:!0,enumerable:!0,value:K,writable:!0}):$[O]=K}function pc($,O){for(var K=-1,_e=O.length,Ce=at(_e),Pe=$==null;++K<_e;)Ce[K]=Pe?g:Qf($,O[K]);return Ce}function Ps($,O,K){return $===$&&(K!==g&&($=$<=K?$:K),O!==g&&($=$>=O?$:O)),$}function Xn($,O,K,_e,Ce,Pe){var je,Ue=O&k,Qe=O&L,yt=O&D;if(K&&(je=Ce?K($,_e,Ce,Pe):K($)),je!==g)return je;if(!on($))return $;var Et=gr($);if(Et){if(je=Sl($),!Ue)return Bn($,je)}else{var Tt=wn($),Dt=Tt==Ge||Tt==Ie;if(Da($))return Ju($,Ue);if(Tt==rt||Tt==Se||Dt&&!Ce){if(je=Qe||Dt?{}:Mn($),!Ue)return Qe?Rf($,Yo(je,$)):wc($,Br(je,$))}else{if(!Ir[Tt])return Ce?$:{};je=$f($,Tt,Ue)}}Pe||(Pe=new Dn);var Ut=Pe.get($);if(Ut)return Ut;Pe.set($,je),pm($)?$.forEach(function(ir){je.add(Xn(ir,O,K,ir,$,Pe))}):um($)&&$.forEach(function(ir,Cr){je.set(Cr,Xn(ir,O,K,Cr,$,Pe))});var or=yt?Qe?vl:yl:Qe?Ao:Nn,Sr=Et?g:or($);return Rn(Sr||$,function(ir,Cr){Sr&&(Cr=ir,ir=$[Cr]),Ri(je,Cr,Xn(ir,O,K,Cr,$,Pe))}),je}function xp($){var O=Nn($);return function(K){return rl(K,$,O)}}function rl($,O,K){var _e=K.length;if($==null)return!_e;for($=Dr($);_e--;){var Ce=K[_e],Pe=O[Ce],je=$[Ce];if(je===g&&!(Ce in $)||!Pe(je))return!1}return!0}function Ou($,O,K){if(typeof $!="function")throw new Eo(v);return $a(function(){$.apply(g,K)},O)}function ps($,O,K,_e){var Ce=-1,Pe=Ul,je=!0,Ue=$.length,Qe=[],yt=O.length;if(!Ue)return Qe;K&&(O=Nr(O,io(K))),_e?(Pe=yu,je=!1):O.length>=b&&(Pe=Ss,je=!1,O=new Mi(O));e:for(;++Ce<Ue;){var Et=$[Ce],Tt=K==null?Et:K(Et);if(Et=_e||Et!==0?Et:0,je&&Tt===Tt){for(var Dt=yt;Dt--;)if(O[Dt]===Tt)continue e;Qe.push(Et)}else Pe(O,Tt,_e)||Qe.push(Et)}return Qe}var fs=$o(po),_p=$o(Zs,!0);function ol($,O){var K=!0;return fs($,function(_e,Ce,Pe){return K=!!O(_e,Ce,Pe),K}),K}function $i($,O,K){for(var _e=-1,Ce=$.length;++_e<Ce;){var Pe=$[_e],je=O(Pe);if(je!=null&&(Ue===g?je===je&&!Ko(je):K(je,Ue)))var Ue=je,Qe=Pe}return Qe}function yp($,O,K,_e){var Ce=$.length;for(K=yr(K),K<0&&(K=-K>Ce?0:Ce+K),_e=_e===g||_e>Ce?Ce:yr(_e),_e<0&&(_e+=Ce),_e=K>_e?0:mm(_e);K<_e;)$[K++]=O;return $}function Fu($,O){var K=[];return fs($,function(_e,Ce,Pe){O(_e,Ce,Pe)&&K.push(_e)}),K}function Xr($,O,K,_e,Ce){var Pe=-1,je=$.length;for(K||(K=Dc),Ce||(Ce=[]);++Pe<je;){var Ue=$[Pe];O>0&&K(Ue)?O>1?Xr(Ue,O-1,K,_e,Ce):Us(Ce,Ue):_e||(Ce[Ce.length]=Ue)}return Ce}var fc=Tc(),il=Tc(!0);function po($,O){return $&&fc($,O,Nn)}function Zs($,O){return $&&il($,O,Nn)}function _a($,O){return Gs(O,function(K){return zi($[K])})}function Rs($,O){O=xs(O,$);for(var K=0,_e=O.length;$!=null&&K<_e;)$=$[Vo(O[K++])];return K&&K==_e?$:g}function mc($,O,K){var _e=O($);return gr($)?_e:Us(_e,K($))}function Sn($){return $==null?$===g?st:Ve:Si&&Si in Dr($)?Lc($):pd($)}function ei($,O){return $>O}function Mo($,O){return $!=null&&Rr.call($,O)}function ki($,O){return $!=null&&O in Dr($)}function Nu($,O,K){return $>=$n(O,K)&&$<ln(O,K)}function hc($,O,K){for(var _e=K?yu:Ul,Ce=$[0].length,Pe=$.length,je=Pe,Ue=at(Pe),Qe=1/0,yt=[];je--;){var Et=$[je];je&&O&&(Et=Nr(Et,io(O))),Qe=$n(Et.length,Qe),Ue[je]=!K&&(O||Ce>=120&&Et.length>=120)?new Mi(je&&Et):g}Et=$[0];var Tt=-1,Dt=Ue[0];e:for(;++Tt<Ce&&yt.length<Qe;){var Ut=Et[Tt],or=O?O(Ut):Ut;if(Ut=K||Ut!==0?Ut:0,!(Dt?Ss(Dt,or):_e(yt,or,K))){for(je=Pe;--je;){var Sr=Ue[je];if(!(Sr?Ss(Sr,or):_e($[je],or,K)))continue e}Dt&&Dt.push(or),yt.push(Ut)}}return yt}function $s($,O,K,_e){return po($,function(Ce,Pe,je){O(_e,K(Ce),Pe,je)}),_e}function To($,O,K){O=xs(O,$),$=gn($,O);var _e=$==null?$:$[Vo(Un(O))];return _e==null?g:Hn(_e,$,K)}function gc($){return un($)&&Sn($)==Se}function vp($){return un($)&&Sn($)==gt}function ks($){return un($)&&Sn($)==De}function Po($,O,K,_e,Ce){return $===O?!0:$==null||O==null||!un($)&&!un(O)?$!==$&&O!==O:xc($,O,K,_e,Po,Ce)}function xc($,O,K,_e,Ce,Pe){var je=gr($),Ue=gr(O),Qe=je?$e:wn($),yt=Ue?$e:wn(O);Qe=Qe==Se?rt:Qe,yt=yt==Se?rt:yt;var Et=Qe==rt,Tt=yt==rt,Dt=Qe==yt;if(Dt&&Da($)){if(!Da(O))return!1;je=!0,Et=!1}if(Dt&&!Et)return Pe||(Pe=new Dn),je||tu($)?ld($,O,K,_e,Ce,Pe):cd($,O,Qe,K,_e,Ce,Pe);if(!(K&A)){var Ut=Et&&Rr.call($,"__wrapped__"),or=Tt&&Rr.call(O,"__wrapped__");if(Ut||or){var Sr=Ut?$.value():$,ir=or?O.value():O;return Pe||(Pe=new Dn),Ce(Sr,ir,K,_e,Pe)}}return Dt?(Pe||(Pe=new Dn),kp($,O,K,_e,Ce,Pe)):!1}function bp($){return un($)&&wn($)==Ye}function ya($,O,K,_e){var Ce=K.length,Pe=Ce,je=!_e;if($==null)return!Pe;for($=Dr($);Ce--;){var Ue=K[Ce];if(je&&Ue[2]?Ue[1]!==$[Ue[0]]:!(Ue[0]in $))return!1}for(;++Ce<Pe;){Ue=K[Ce];var Qe=Ue[0],yt=$[Qe],Et=Ue[1];if(je&&Ue[2]){if(yt===g&&!(Qe in $))return!1}else{var Tt=new Dn;if(_e)var Dt=_e(yt,Et,Qe,$,O,Tt);if(!(Dt===g?Po(Et,yt,A|I,_e,Tt):Dt))return!1}}return!0}function ju($){if(!on($)||Dp($))return!1;var O=zi($)?ap:dr;return O.test(oi($))}function al($){return un($)&&Sn($)==ke}function hs($){return un($)&&wn($)==Ne}function ll($){return un($)&&Zp($.length)&&!!Lr[Sn($)]}function va($){return typeof $=="function"?$:$==null?Oo:typeof $=="object"?gr($)?Vr($[0],$[1]):_c($):Mm($)}function Is($){if(!Os($))return ia($);var O=[];for(var K in Dr($))Rr.call($,K)&&K!="constructor"&&O.push(K);return O}function Hu($){if(!on($))return Fp($);var O=Os($),K=[];for(var _e in $)_e=="constructor"&&(O||!Rr.call($,_e))||K.push(_e);return K}function ti($,O){return $<O}function Yu($,O){var K=-1,_e=Do($)?at($.length):[];return fs($,function(Ce,Pe,je){_e[++K]=O(Ce,Pe,je)}),_e}function _c($){var O=El($);return O.length==1&&O[0][2]?Ac(O[0][0],O[0][1]):function(K){return K===$||ya(K,$,O)}}function Vr($,O){return Ft($)&&wl(O)?Ac(Vo($),O):function(K){var _e=Qf(K,$);return _e===g&&_e===O?Xf(K,$):Po(O,_e,A|I)}}function Ii($,O,K,_e,Ce){$!==O&&fc(O,function(Pe,je){if(Ce||(Ce=new Dn),on(Pe))Bu($,O,je,K,Ii,_e,Ce);else{var Ue=_e?_e(vs($,je),Pe,je+"",$,O,Ce):g;Ue===g&&(Ue=Pe),tl($,je,Ue)}},Ao)}function Bu($,O,K,_e,Ce,Pe,je){var Ue=vs($,K),Qe=vs(O,K),yt=je.get(Qe);if(yt){tl($,K,yt);return}var Et=Pe?Pe(Ue,Qe,K+"",$,O,je):g,Tt=Et===g;if(Tt){var Dt=gr(Qe),Ut=!Dt&&Da(Qe),or=!Dt&&!Ut&&tu(Qe);Et=Qe,Dt||Ut||or?gr(Ue)?Et=Ue:fn(Ue)?Et=Bn(Ue):Ut?(Tt=!1,Et=Ju(Qe,!0)):or?(Tt=!1,Et=Mp(Qe,!0)):Et=[]:Id(Qe)||Ll(Qe)?(Et=Ue,Ll(Ue)?Et=hm(Ue):(!on(Ue)||zi(Ue))&&(Et=Mn(Qe))):Tt=!1}Tt&&(je.set(Qe,Et),Ce(Et,Qe,_e,Pe,je),je.delete(Qe)),tl($,K,Et)}function yc($,O){var K=$.length;if(K)return O+=O<0?K:0,Wr(O,K)?$[O]:g}function cl($,O,K){O.length?O=Nr(O,function(Pe){return gr(Pe)?function(je){return Rs(je,Pe.length===1?Pe[0]:Pe)}:Pe}):O=[Oo];var _e=-1;O=Nr(O,io(er()));var Ce=Yu($,function(Pe,je,Ue){var Qe=Nr(O,function(yt){return yt(Pe)});return{criteria:Qe,index:++_e,value:Pe}});return _f(Ce,function(Pe,je){return Pf(Pe,je,K)})}function zu($,O){return ri($,O,function(K,_e){return Xf($,_e)})}function ri($,O,K){for(var _e=-1,Ce=O.length,Pe={};++_e<Ce;){var je=O[_e],Ue=Rs($,je);K(Ue,je)&&Di(Pe,xs(je,$),Ue)}return Pe}function Kr($){return function(O){return Rs(O,$)}}function Zr($,O,K,_e){var Ce=_e?Eu:Xi,Pe=-1,je=O.length,Ue=$;for($===O&&(O=Bn(O)),K&&(Ue=Nr($,io(K)));++Pe<je;)for(var Qe=0,yt=O[Pe],Et=K?K(yt):yt;(Qe=Ce(Ue,Et,Qe,_e))>-1;)Ue!==$&&tc.call(Ue,Qe,1),tc.call($,Qe,1);return $}function dn($,O){for(var K=$?O.length:0,_e=K-1;K--;){var Ce=O[K];if(K==_e||Ce!==Pe){var Pe=Ce;Wr(Ce)?tc.call($,Ce,1):Ec($,Ce)}}return $}function ba($,O){return $+Ws(Ja()*(O-$+1))}function ul($,O,K,_e){for(var Ce=-1,Pe=ln(Ci((O-$)/(K||1)),0),je=at(Pe);Pe--;)je[_e?Pe:++Ce]=$,$+=K;return je}function Li($,O){var K="";if(!$||O<1||O>ae)return K;do O%2&&(K+=$),O=Ws(O/2),O&&($+=$);while(O);return K}function _r($,O){return mo(Oc($,O,Oo),$+"")}function On($){return us(nu($))}function Gu($,O){var K=nu($);return Fc(K,Ps(O,0,K.length))}function Di($,O,K,_e){if(!on($))return $;O=xs(O,$);for(var Ce=-1,Pe=O.length,je=Pe-1,Ue=$;Ue!=null&&++Ce<Pe;){var Qe=Vo(O[Ce]),yt=K;if(Qe==="__proto__"||Qe==="constructor"||Qe==="prototype")return $;if(Ce!=je){var Et=Ue[Qe];yt=_e?_e(Et,Qe,Ue):g,yt===g&&(yt=on(Et)?Et:Wr(O[Ce+1])?[]:{})}Ri(Ue,Qe,yt),Ue=Ue[Qe]}return $}var vc=sc?function($,O){return sc.set($,O),$}:Oo,gs=Ka?function($,O){return Ka($,"toString",{configurable:!0,enumerable:!1,value:em(O),writable:!0})}:Oo;function Ro($){return Fc(nu($))}function Fn($,O,K){var _e=-1,Ce=$.length;O<0&&(O=-O>Ce?0:Ce+O),K=K>Ce?Ce:K,K<0&&(K+=Ce),Ce=O>K?0:K-O>>>0,O>>>=0;for(var Pe=at(Ce);++_e<Ce;)Pe[_e]=$[_e+O];return Pe}function Uu($,O){var K;return fs($,function(_e,Ce,Pe){return K=O(_e,Ce,Pe),!K}),!!K}function Ea($,O,K){var _e=0,Ce=$==null?_e:$.length;if(typeof O=="number"&&O===O&&Ce<=Ee){for(;_e<Ce;){var Pe=_e+Ce>>>1,je=$[Pe];je!==null&&!Ko(je)&&(K?je<=O:je<O)?_e=Pe+1:Ce=Pe}return Ce}return bc($,O,Oo,K)}function bc($,O,K,_e){var Ce=0,Pe=$==null?0:$.length;if(Pe===0)return 0;O=K(O);for(var je=O!==O,Ue=O===null,Qe=Ko(O),yt=O===g;Ce<Pe;){var Et=Ws((Ce+Pe)/2),Tt=K($[Et]),Dt=Tt!==g,Ut=Tt===null,or=Tt===Tt,Sr=Ko(Tt);if(je)var ir=_e||or;else yt?ir=or&&(_e||Dt):Ue?ir=or&&Dt&&(_e||!Ut):Qe?ir=or&&Dt&&!Ut&&(_e||!Sr):Ut||Sr?ir=!1:ir=_e?Tt<=O:Tt<O;ir?Ce=Et+1:Pe=Et}return $n(Pe,ye)}function Vu($,O){for(var K=-1,_e=$.length,Ce=0,Pe=[];++K<_e;){var je=$[K],Ue=O?O(je):je;if(!K||!Ns(Ue,Qe)){var Qe=Ue;Pe[Ce++]=je===0?0:je}}return Pe}function Wu($){return typeof $=="number"?$:Ko($)?pe:+$}function Zn($){if(typeof $=="string")return $;if(gr($))return Nr($,Zn)+"";if(Ko($))return ic?ic.call($):"";var O=$+"";return O=="0"&&1/$==-1/0?"-0":O}function Ls($,O,K){var _e=-1,Ce=Ul,Pe=$.length,je=!0,Ue=[],Qe=Ue;if(K)je=!1,Ce=yu;else if(Pe>=b){var yt=O?null:$p($);if(yt)return Vs(yt);je=!1,Ce=Ss,Qe=new Mi}else Qe=O?[]:Ue;e:for(;++_e<Pe;){var Et=$[_e],Tt=O?O(Et):Et;if(Et=K||Et!==0?Et:0,je&&Tt===Tt){for(var Dt=Qe.length;Dt--;)if(Qe[Dt]===Tt)continue e;O&&Qe.push(Tt),Ue.push(Et)}else Ce(Qe,Tt,K)||(Qe!==Ue&&Qe.push(Tt),Ue.push(Et))}return Ue}function Ec($,O){return O=xs(O,$),$=gn($,O),$==null||delete $[Vo(Un(O))]}function qu($,O,K,_e){return Di($,O,K(Rs($,O)),_e)}function dl($,O,K,_e){for(var Ce=$.length,Pe=_e?Ce:-1;(_e?Pe--:++Pe<Ce)&&O($[Pe],Pe,$););return K?Fn($,_e?0:Pe,_e?Pe+1:Ce):Fn($,_e?Pe+1:0,_e?Ce:Pe)}function Sa($,O){var K=$;return K instanceof pr&&(K=K.value()),vu(O,function(_e,Ce){return Ce.func.apply(Ce.thisArg,Us([_e],Ce.args))},K)}function Sc($,O,K){var _e=$.length;if(_e<2)return _e?Ls($[0]):[];for(var Ce=-1,Pe=at(_e);++Ce<_e;)for(var je=$[Ce],Ue=-1;++Ue<_e;)Ue!=Ce&&(Pe[Ce]=ps(Pe[Ce]||je,$[Ue],O,K));return Ls(Xr(Pe,1),O,K)}function fl($,O,K){for(var _e=-1,Ce=$.length,Pe=O.length,je={};++_e<Ce;){var Ue=_e<Pe?O[_e]:g;K(je,$[_e],Ue)}return je}function Ca($){return fn($)?$:[]}function Cc($){return typeof $=="function"?$:Oo}function xs($,O){return gr($)?$:Ft($,O)?[$]:xd(Ar($))}var Ep=_r;function Ds($,O,K){var _e=$.length;return K=K===g?_e:K,!O&&K>=_e?$:Fn($,O,K)}var Ku=cp||function($){return Ur.clearTimeout($)};function Ju($,O){if(O)return $.slice();var K=$.length,_e=Ru?Ru(K):new $.constructor(K);return $.copy(_e),_e}function hl($){var O=new $.constructor($.byteLength);return new qa(O).set(new qa($)),O}function Sp($,O){var K=O?hl($.buffer):$.buffer;return new $.constructor(K,$.byteOffset,$.byteLength)}function Cp($){var O=new $.constructor($.source,tt.exec($));return O.lastIndex=$.lastIndex,O}function wp($){return co?Dr(co.call($)):{}}function Mp($,O){var K=O?hl($.buffer):$.buffer;return new $.constructor(K,$.byteOffset,$.length)}function Qu($,O){if($!==O){var K=$!==g,_e=$===null,Ce=$===$,Pe=Ko($),je=O!==g,Ue=O===null,Qe=O===O,yt=Ko(O);if(!Ue&&!yt&&!Pe&&$>O||Pe&&je&&Qe&&!Ue&&!yt||_e&&je&&Qe||!K&&Qe||!Ce)return 1;if(!_e&&!Pe&&!yt&&$<O||yt&&K&&Ce&&!_e&&!Pe||Ue&&K&&Ce||!je&&Ce||!Qe)return-1}return 0}function Pf($,O,K){for(var _e=-1,Ce=$.criteria,Pe=O.criteria,je=Ce.length,Ue=K.length;++_e<je;){var Qe=Qu(Ce[_e],Pe[_e]);if(Qe){if(_e>=Ue)return Qe;var yt=K[_e];return Qe*(yt=="desc"?-1:1)}}return $.index-O.index}function Tp($,O,K,_e){for(var Ce=-1,Pe=$.length,je=K.length,Ue=-1,Qe=O.length,yt=ln(Pe-je,0),Et=at(Qe+yt),Tt=!_e;++Ue<Qe;)Et[Ue]=O[Ue];for(;++Ce<je;)(Tt||Ce<Pe)&&(Et[K[Ce]]=$[Ce]);for(;yt--;)Et[Ue++]=$[Ce++];return Et}function Xu($,O,K,_e){for(var Ce=-1,Pe=$.length,je=-1,Ue=K.length,Qe=-1,yt=O.length,Et=ln(Pe-Ue,0),Tt=at(Et+yt),Dt=!_e;++Ce<Et;)Tt[Ce]=$[Ce];for(var Ut=Ce;++Qe<yt;)Tt[Ut+Qe]=O[Qe];for(;++je<Ue;)(Dt||Ce<Pe)&&(Tt[Ut+K[je]]=$[Ce++]);return Tt}function Bn($,O){var K=-1,_e=$.length;for(O||(O=at(_e));++K<_e;)O[K]=$[K];return O}function Bo($,O,K,_e){var Ce=!K;K||(K={});for(var Pe=-1,je=O.length;++Pe<je;){var Ue=O[Pe],Qe=_e?_e(K[Ue],$[Ue],Ue,K,$):g;Qe===g&&(Qe=$[Ue]),Ce?ds(K,Ue,Qe):Ri(K,Ue,Qe)}return K}function wc($,O){return Bo($,zo($),O)}function Rf($,O){return Bo($,Ip($),O)}function Mc($,O){return function(K,_e){var Ce=gr(K)?xu:uo,Pe=O?O():{};return Ce(K,$,er(_e,2),Pe)}}function wa($){return _r(function(O,K){var _e=-1,Ce=K.length,Pe=Ce>1?K[Ce-1]:g,je=Ce>2?K[2]:g;for(Pe=$.length>3&&typeof Pe=="function"?(Ce--,Pe):g,je&&Gn(K[0],K[1],je)&&(Pe=Ce<3?g:Pe,Ce=1),O=Dr(O);++_e<Ce;){var Ue=K[_e];Ue&&$(O,Ue,_e,Pe)}return O})}function $o($,O){return function(K,_e){if(K==null)return K;if(!Do(K))return $(K,_e);for(var Ce=K.length,Pe=O?Ce:-1,je=Dr(K);(O?Pe--:++Pe<Ce)&&_e(je[Pe],Pe,je)!==!1;);return K}}function Tc($){return function(O,K,_e){for(var Ce=-1,Pe=Dr(O),je=_e(O),Ue=je.length;Ue--;){var Qe=je[$?Ue:++Ce];if(K(Pe[Qe],Qe,Pe)===!1)break}return O}}function Pc($,O,K){var _e=O&N,Ce=Ma($);function Pe(){var je=this&&this!==Ur&&this instanceof Pe?Ce:$;return je.apply(_e?K:this,arguments)}return Pe}function Zu($){return function(O){O=Ar(O);var K=ea(O)?ao(O):g,_e=K?K[0]:O.charAt(0),Ce=K?Ds(K,1).join(""):O.slice(1);return _e[$]()+Ce}}function Ai($){return function(O){return vu(Cm(Sm(O).replace(uf,"")),$,"")}}function Ma($){return function(){var O=arguments;switch(O.length){case 0:return new $;case 1:return new $(O[0]);case 2:return new $(O[0],O[1]);case 3:return new $(O[0],O[1],O[2]);case 4:return new $(O[0],O[1],O[2],O[3]);case 5:return new $(O[0],O[1],O[2],O[3],O[4]);case 6:return new $(O[0],O[1],O[2],O[3],O[4],O[5]);case 7:return new $(O[0],O[1],O[2],O[3],O[4],O[5],O[6])}var K=pa($.prototype),_e=$.apply(K,O);return on(_e)?_e:K}}function ed($,O,K){var _e=Ma($);function Ce(){for(var Pe=arguments.length,je=at(Pe),Ue=Pe,Qe=As(Ce);Ue--;)je[Ue]=arguments[Ue];var yt=Pe<3&&je[0]!==Qe&&je[Pe-1]!==Qe?[]:vo(je,Qe);if(Pe-=yt.length,Pe<K)return zn($,O,Ta,Ce.placeholder,g,je,yt,g,g,K-Pe);var Et=this&&this!==Ur&&this instanceof Ce?_e:$;return Hn(Et,this,je)}return Ce}function Oi($){return function(O,K,_e){var Ce=Dr(O);if(!Do(O)){var Pe=er(K,3);O=Nn(O),K=function(Ue){return Pe(Ce[Ue],Ue,Ce)}}var je=$(O,K,_e);return je>-1?Ce[Pe?O[je]:je]:g}}function Rc($){return ys(function(O){var K=O.length,_e=K,Ce=In.prototype.thru;for($&&O.reverse();_e--;){var Pe=O[_e];if(typeof Pe!="function")throw new Eo(v);if(Ce&&!je&&Pa(Pe)=="wrapper")var je=new In([],!0)}for(_e=je?_e:K;++_e<K;){Pe=O[_e];var Ue=Pa(Pe),Qe=Ue=="wrapper"?Ic(Pe):g;Qe&&Cl(Qe[0])&&Qe[1]==(V|Y|U|J)&&!Qe[4].length&&Qe[9]==1?je=je[Pa(Qe[0])].apply(je,Qe[3]):je=Pe.length==1&&Cl(Pe)?je[Ue]():je.thru(Pe)}return function(){var yt=arguments,Et=yt[0];if(je&&yt.length==1&&gr(Et))return je.plant(Et).value();for(var Tt=0,Dt=K?O[Tt].apply(this,yt):Et;++Tt<K;)Dt=O[Tt].call(this,Dt);return Dt}})}function Ta($,O,K,_e,Ce,Pe,je,Ue,Qe,yt){var Et=O&V,Tt=O&N,Dt=O&z,Ut=O&(Y|B),or=O&Q,Sr=Dt?g:Ma($);function ir(){for(var Cr=arguments.length,Tr=at(Cr),Jo=Cr;Jo--;)Tr[Jo]=arguments[Jo];if(Ut)var go=As(ir),Qo=Zd(Tr,go);if(_e&&(Tr=Tp(Tr,_e,Ce,Ut)),Pe&&(Tr=Xu(Tr,Pe,je,Ut)),Cr-=Qo,Ut&&Cr<yt){var hn=vo(Tr,go);return zn($,O,Ta,ir.placeholder,K,Tr,hn,Ue,Qe,yt-Cr)}var js=Tt?K:this,Ui=Dt?js[$]:$;return Cr=Tr.length,Ue?Tr=Go(Tr,Ue):or&&Cr>1&&Tr.reverse(),Et&&Qe<Cr&&(Tr.length=Qe),this&&this!==Ur&&this instanceof ir&&(Ui=Sr||Ma(Ui)),Ui.apply(js,Tr)}return ir}function Pp($,O){return function(K,_e){return $s(K,$,O(_e),{})}}function xl($,O){return function(K,_e){var Ce;if(K===g&&_e===g)return O;if(K!==g&&(Ce=K),_e!==g){if(Ce===g)return _e;typeof K=="string"||typeof _e=="string"?(K=Zn(K),_e=Zn(_e)):(K=Wu(K),_e=Wu(_e)),Ce=$(K,_e)}return Ce}}function $c($){return ys(function(O){return O=Nr(O,io(er())),_r(function(K){var _e=this;return $(O,function(Ce){return Hn(Ce,_e,K)})})})}function _l($,O){O=O===g?" ":Zn(O);var K=O.length;if(K<2)return K?Li(O,$):O;var _e=Li(O,Ci($/Ei(O)));return ea(O)?Ds(ao(_e),0,$).join(""):_e.slice(0,$)}function Rp($,O,K,_e){var Ce=O&N,Pe=Ma($);function je(){for(var Ue=-1,Qe=arguments.length,yt=-1,Et=_e.length,Tt=at(Et+Qe),Dt=this&&this!==Ur&&this instanceof je?Pe:$;++yt<Et;)Tt[yt]=_e[yt];for(;Qe--;)Tt[yt++]=arguments[++Ue];return Hn(Dt,Ce?K:this,Tt)}return je}function td($){return function(O,K,_e){return _e&&typeof _e!="number"&&Gn(O,K,_e)&&(K=_e=g),O=Gi(O),K===g?(K=O,O=0):K=Gi(K),_e=_e===g?O<K?1:-1:Gi(_e),ul(O,K,_e,$)}}function kc($){return function(O,K){return typeof O=="string"&&typeof K=="string"||(O=Es(O),K=Es(K)),$(O,K)}}function zn($,O,K,_e,Ce,Pe,je,Ue,Qe,yt){var Et=O&Y,Tt=Et?je:g,Dt=Et?g:je,Ut=Et?Pe:g,or=Et?g:Pe;O|=Et?U:W,O&=~(Et?W:U),O&j||(O&=-4);var Sr=[$,O,Ce,Ut,Tt,or,Dt,Ue,Qe,yt],ir=K.apply(g,Sr);return Cl($)&&fd(ir,Sr),ir.placeholder=_e,hd(ir,$,O)}function Cn($){var O=an[$];return function(K,_e){if(K=Es(K),_e=_e==null?0:$n(yr(_e),292),_e&&sa(K)){var Ce=(Ar(K)+"e").split("e"),Pe=O(Ce[0]+"e"+(+Ce[1]+_e));return Ce=(Ar(Pe)+"e").split("e"),+(Ce[0]+"e"+(+Ce[1]-_e))}return O(K)}}var $p=qs&&1/Vs(new qs([,-0]))[1]==fe?function($){return new qs($)}:nm;function rd($){return function(O){var K=wn(O);return K==Ye?ql(O):K==Ne?Ef(O):yf(O,$(O))}}function _s($,O,K,_e,Ce,Pe,je,Ue){var Qe=O&z;if(!Qe&&typeof $!="function")throw new Eo(v);var yt=_e?_e.length:0;if(yt||(O&=-97,_e=Ce=g),je=je===g?je:ln(yr(je),0),Ue=Ue===g?Ue:yr(Ue),yt-=Ce?Ce.length:0,O&W){var Et=_e,Tt=Ce;_e=Ce=g}var Dt=Qe?g:Ic($),Ut=[$,O,K,_e,Ce,Et,Tt,Pe,je,Ue];if(Dt&&Op(Ut,Dt),$=Ut[0],O=Ut[1],K=Ut[2],_e=Ut[3],Ce=Ut[4],Ue=Ut[9]=Ut[9]===g?Qe?0:$.length:ln(Ut[9]-yt,0),!Ue&&O&(Y|B)&&(O&=-25),!O||O==N)var or=Pc($,O,K);else O==Y||O==B?or=ed($,O,Ue):(O==U||O==(N|U))&&!Ce.length?or=Rp($,O,K,_e):or=Ta.apply(g,Ut);var Sr=Dt?vc:fd;return hd(Sr(or,Ut),$,O)}function nd($,O,K,_e){return $===g||Ns($,ns[K])&&!Rr.call(_e,K)?O:$}function od($,O,K,_e,Ce,Pe){return on($)&&on(O)&&(Pe.set(O,$),Ii($,O,g,od,Pe),Pe.delete(O)),$}function ad($){return Id($)?g:$}function ld($,O,K,_e,Ce,Pe){var je=K&A,Ue=$.length,Qe=O.length;if(Ue!=Qe&&!(je&&Qe>Ue))return!1;var yt=Pe.get($),Et=Pe.get(O);if(yt&&Et)return yt==O&&Et==$;var Tt=-1,Dt=!0,Ut=K&I?new Mi:g;for(Pe.set($,O),Pe.set(O,$);++Tt<Ue;){var or=$[Tt],Sr=O[Tt];if(_e)var ir=je?_e(Sr,or,Tt,O,$,Pe):_e(or,Sr,Tt,$,O,Pe);if(ir!==g){if(ir)continue;Dt=!1;break}if(Ut){if(!bu(O,function(Cr,Tr){if(!Ss(Ut,Tr)&&(or===Cr||Ce(or,Cr,K,_e,Pe)))return Ut.push(Tr)})){Dt=!1;break}}else if(!(or===Sr||Ce(or,Sr,K,_e,Pe))){Dt=!1;break}}return Pe.delete($),Pe.delete(O),Dt}function cd($,O,K,_e,Ce,Pe,je){switch(K){case Ct:if($.byteLength!=O.byteLength||$.byteOffset!=O.byteOffset)return!1;$=$.buffer,O=O.buffer;case gt:return!($.byteLength!=O.byteLength||!Pe(new qa($),new qa(O)));case Re:case De:case He:return Ns(+$,+O);case Le:return $.name==O.name&&$.message==O.message;case ke:case Ke:return $==O+"";case Ye:var Ue=ql;case Ne:var Qe=_e&A;if(Ue||(Ue=Vs),$.size!=O.size&&!Qe)return!1;var yt=je.get($);if(yt)return yt==O;_e|=I,je.set($,O);var Et=ld(Ue($),Ue(O),_e,Ce,Pe,je);return je.delete($),Et;case Xe:if(co)return co.call($)==co.call(O)}return!1}function kp($,O,K,_e,Ce,Pe){var je=K&A,Ue=yl($),Qe=Ue.length,yt=yl(O),Et=yt.length;if(Qe!=Et&&!je)return!1;for(var Tt=Qe;Tt--;){var Dt=Ue[Tt];if(!(je?Dt in O:Rr.call(O,Dt)))return!1}var Ut=Pe.get($),or=Pe.get(O);if(Ut&&or)return Ut==O&&or==$;var Sr=!0;Pe.set($,O),Pe.set(O,$);for(var ir=je;++Tt<Qe;){Dt=Ue[Tt];var Cr=$[Dt],Tr=O[Dt];if(_e)var Jo=je?_e(Tr,Cr,Dt,O,$,Pe):_e(Cr,Tr,Dt,$,O,Pe);if(!(Jo===g?Cr===Tr||Ce(Cr,Tr,K,_e,Pe):Jo)){Sr=!1;break}ir||(ir=Dt=="constructor")}if(Sr&&!ir){var go=$.constructor,Qo=O.constructor;go!=Qo&&"constructor"in $&&"constructor"in O&&!(typeof go=="function"&&go instanceof go&&typeof Qo=="function"&&Qo instanceof Qo)&&(Sr=!1)}return Pe.delete($),Pe.delete(O),Sr}function ys($){return mo(Oc($,g,jc),$+"")}function yl($){return mc($,Nn,zo)}function vl($){return mc($,Ao,Ip)}var Ic=sc?function($){return sc.get($)}:nm;function Pa($){for(var O=$.name+"",K=la[O],_e=Rr.call(la,O)?K.length:0;_e--;){var Ce=K[_e],Pe=Ce.func;if(Pe==null||Pe==$)return Ce.name}return O}function As($){var O=Rr.call(Te,"placeholder")?Te:$;return O.placeholder}function er(){var $=Te.iteratee||tm;return $=$===tm?va:$,arguments.length?$(arguments[0],arguments[1]):$}function bl($,O){var K=$.__data__;return Ra(O)?K[typeof O=="string"?"string":"hash"]:K.map}function El($){for(var O=Nn($),K=O.length;K--;){var _e=O[K],Ce=$[_e];O[K]=[_e,Ce,wl(Ce)]}return O}function ni($,O){var K=Zi($,O);return ju(K)?K:g}function Lc($){var O=Rr.call($,Si),K=$[Si];try{$[Si]=g;var _e=!0}catch(Pe){}var Ce=Va.call($);return _e&&(O?$[Si]=K:delete $[Si]),Ce}var zo=rc?function($){return $==null?[]:($=Dr($),Gs(rc($),function(O){return ec.call($,O)}))}:om,Ip=rc?function($){for(var O=[];$;)Us(O,zo($)),$=Ho($);return O}:om,wn=Sn;(Qa&&wn(new Qa(new ArrayBuffer(1)))!=Ct||wi&&wn(new wi)!=Ye||Xa&&wn(Xa.resolve())!=Oe||qs&&wn(new qs)!=Ne||Za&&wn(new Za)!=xt)&&(wn=function($){var O=Sn($),K=O==rt?$.constructor:g,_e=K?oi(K):"";if(_e)switch(_e){case Lu:return Ct;case Ks:return Ye;case dp:return Oe;case ua:return Ne;case os:return xt}return O});function ud($,O,K){for(var _e=-1,Ce=K.length;++_e<Ce;){var Pe=K[_e],je=Pe.size;switch(Pe.type){case"drop":$+=je;break;case"dropRight":O-=je;break;case"take":O=$n(O,$+je);break;case"takeRight":$=ln($,O-je);break}}return{start:$,end:O}}function Lp($){var O=$.match(En);return O?O[1].split(xo):[]}function dd($,O,K){O=xs(O,$);for(var _e=-1,Ce=O.length,Pe=!1;++_e<Ce;){var je=Vo(O[_e]);if(!(Pe=$!=null&&K($,je)))break;$=$[je]}return Pe||++_e!=Ce?Pe:(Ce=$==null?0:$.length,!!Ce&&Zp(Ce)&&Wr(je,Ce)&&(gr($)||Ll($)))}function Sl($){var O=$.length,K=new $.constructor(O);return O&&typeof $[0]=="string"&&Rr.call($,"index")&&(K.index=$.index,K.input=$.input),K}function Mn($){return typeof $.constructor=="function"&&!Os($)?pa(Ho($)):{}}function $f($,O,K){var _e=$.constructor;switch(O){case gt:return hl($);case Re:case De:return new _e(+$);case Ct:return Sp($,K);case dt:case jt:case Wt:case Xt:case Pt:case zt:case St:case Lt:case Kt:return Mp($,K);case Ye:return new _e;case He:case Ke:return new _e($);case ke:return Cp($);case Ne:return new _e;case Xe:return wp($)}}function kf($,O){var K=O.length;if(!K)return $;var _e=K-1;return O[_e]=(K>1?"& ":"")+O[_e],O=O.join(K>2?", ":" "),$.replace(Wn,`{
294
+ */var lodash=lodash$1.exports,hasRequiredLodash;function requireLodash(){return hasRequiredLodash||(hasRequiredLodash=1,function(d,m){(function(){var g,x="4.17.21",b=200,E="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",v="Expected a function",S="Invalid `variable` option passed into `_.template`",C="__lodash_hash_undefined__",T=500,R="__lodash_placeholder__",k=1,L=2,D=4,A=1,I=2,N=1,z=2,j=4,Y=8,B=16,U=32,W=64,V=128,J=256,Q=512,X=30,re="...",ie=800,oe=16,Z=1,ee=2,ce=3,fe=1/0,ae=9007199254740991,ue=17976931348623157e292,pe=NaN,ge=4294967295,ye=ge-1,Ee=ge>>>1,ve=[["ary",V],["bind",N],["bindKey",z],["curry",Y],["curryRight",B],["flip",Q],["partial",U],["partialRight",W],["rearg",J]],Se="[object Arguments]",$e="[object Array]",Me="[object AsyncFunction]",Re="[object Boolean]",De="[object Date]",Be="[object DOMException]",Le="[object Error]",Ge="[object Function]",Ie="[object GeneratorFunction]",Ye="[object Map]",He="[object Number]",Ve="[object Null]",rt="[object Object]",Oe="[object Promise]",ot="[object Proxy]",ke="[object RegExp]",Ne="[object Set]",Ke="[object String]",Xe="[object Symbol]",st="[object Undefined]",xt="[object WeakMap]",Je="[object WeakSet]",gt="[object ArrayBuffer]",Ct="[object DataView]",dt="[object Float32Array]",jt="[object Float64Array]",Wt="[object Int8Array]",Xt="[object Int16Array]",Pt="[object Int32Array]",zt="[object Uint8Array]",St="[object Uint8ClampedArray]",Lt="[object Uint16Array]",Kt="[object Uint32Array]",Zt=/\b__p \+= '';/g,lr=/\b(__p \+=) '' \+/g,vr=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Jt=/&(?:amp|lt|gt|quot|#39);/g,rr=/[&<>"']/g,Or=RegExp(Jt.source),xr=RegExp(rr.source),qr=/<%-([\s\S]+?)%>/g,yn=/<%([\s\S]+?)%>/g,Qr=/<%=([\s\S]+?)%>/g,Fo=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Pn=/^\w*$/,Fr=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wr=/[\\^$.*+?()[\]{}|]/g,zr=RegExp(wr.source),sn=/^\s+/,vn=/\s/,Wn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,En=/\{\n\/\* \[wrapped with (.+)\] \*/,xo=/,? & /,Zo=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,_o=/[()=,{}\[\]\/\s]/,No=/\\(\\)?/g,ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,tt=/\w*$/,It=/^[-+]0x[0-9a-f]+$/i,Gt=/^0b[01]+$/i,dr=/^\[object .+?Constructor\]$/,Yt=/^0o[0-7]+$/i,Er=/^(?:0|[1-9]\d*)$/,so=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,pi=/($^)/,of=/['\n\r\u2028\u2029\\]/g,Gr="\\ud800-\\udfff",sf="\\u0300-\\u036f",iu="\\ufe20-\\ufe2f",Ld="\\u20d0-\\u20ff",Aa=sf+iu+Ld,Dd="\\u2700-\\u27bf",au="a-z\\xdf-\\xf6\\xf8-\\xff",Dl="\\xac\\xb1\\xd7\\xf7",ts="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",lf="\\u2000-\\u206f",jo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ad="A-Z\\xc0-\\xd6\\xd8-\\xde",Od="\\ufe0e\\ufe0f",Fd=Dl+ts+lf+jo,Vi="['’]",Al="["+Gr+"]",Wi="["+Fd+"]",gi="["+Aa+"]",Nd="\\d+",cf="["+Dd+"]",Ol="["+au+"]",lu="[^"+Gr+Fd+Nd+Dd+au+Ad+"]",Oa="\\ud83c[\\udffb-\\udfff]",Fa="(?:"+gi+"|"+Oa+")",jd="[^"+Gr+"]",Na="(?:\\ud83c[\\udde6-\\uddff]){2}",kr="[\\ud800-\\udbff][\\udc00-\\udfff]",xi="["+Ad+"]",cu="\\u200d",Fl="(?:"+Ol+"|"+lu+")",Hd="(?:"+xi+"|"+lu+")",uu="(?:"+Vi+"(?:d|ll|m|re|s|t|ve))?",du="(?:"+Vi+"(?:D|LL|M|RE|S|T|VE))?",Nl=Fa+"?",Ha="["+Od+"]?",Hs="(?:"+cu+"(?:"+[jd,Na,kr].join("|")+")"+Ha+Nl+")*",Ys="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Bs="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",qi=Ha+Nl+Hs,Ya="(?:"+[cf,Na,kr].join("|")+")"+qi,zs="(?:"+[jd+gi+"?",gi,Na,kr,Al].join("|")+")",uf=RegExp(Vi,"g"),Yd=RegExp(gi,"g"),_i=RegExp(Oa+"(?="+Oa+")|"+zs+qi,"g"),df=RegExp([xi+"?"+Ol+"+"+uu+"(?="+[Wi,xi,"$"].join("|")+")",Hd+"+"+du+"(?="+[Wi,xi+Fl,"$"].join("|")+")",xi+"?"+Fl+"+"+uu,xi+"+"+du,Bs,Ys,Nd,Ya].join("|"),"g"),Bd=RegExp("["+cu+Gr+Aa+Od+"]"),jl=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,zd=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],pf=-1,Lr={};Lr[dt]=Lr[jt]=Lr[Wt]=Lr[Xt]=Lr[Pt]=Lr[zt]=Lr[St]=Lr[Lt]=Lr[Kt]=!0,Lr[Se]=Lr[$e]=Lr[gt]=Lr[Re]=Lr[Ct]=Lr[De]=Lr[Le]=Lr[Ge]=Lr[Ye]=Lr[He]=Lr[rt]=Lr[ke]=Lr[Ne]=Lr[Ke]=Lr[xt]=!1;var Ir={};Ir[Se]=Ir[$e]=Ir[gt]=Ir[Ct]=Ir[Re]=Ir[De]=Ir[dt]=Ir[jt]=Ir[Wt]=Ir[Xt]=Ir[Pt]=Ir[Ye]=Ir[He]=Ir[rt]=Ir[ke]=Ir[Ne]=Ir[Ke]=Ir[Xe]=Ir[zt]=Ir[St]=Ir[Lt]=Ir[Kt]=!0,Ir[Le]=Ir[Ge]=Ir[xt]=!1;var Ki={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Hl={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ff={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},mf={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},pu=parseFloat,Yl=parseInt,Bl=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,Gd=typeof self=="object"&&self&&self.Object===Object&&self,Ur=Bl||Gd||Function("return this")(),Ba=m&&!m.nodeType&&m,rs=Ba&&!0&&d&&!d.nodeType&&d,fu=rs&&rs.exports===Ba,Ji=fu&&Bl.process,jn=function(){try{var qe=rs&&rs.require&&rs.require("util").types;return qe||Ji&&Ji.binding&&Ji.binding("util")}catch(ft){}}(),mu=jn&&jn.isArrayBuffer,qn=jn&&jn.isDate,yi=jn&&jn.isMap,zl=jn&&jn.isRegExp,Qi=jn&&jn.isSet,Ud=jn&&jn.isTypedArray;function Hn(qe,ft,at){switch(at.length){case 0:return qe.call(ft);case 1:return qe.call(ft,at[0]);case 2:return qe.call(ft,at[0],at[1]);case 3:return qe.call(ft,at[0],at[1],at[2])}return qe.apply(ft,at)}function xu(qe,ft,at,At){for(var cr=-1,Pr=qe==null?0:qe.length;++cr<Pr;){var an=qe[cr];ft(At,an,at(an),qe)}return At}function Rn(qe,ft){for(var at=-1,At=qe==null?0:qe.length;++at<At&&ft(qe[at],at,qe)!==!1;);return qe}function Gl(qe,ft){for(var at=qe==null?0:qe.length;at--&&ft(qe[at],at,qe)!==!1;);return qe}function _u(qe,ft){for(var at=-1,At=qe==null?0:qe.length;++at<At;)if(!ft(qe[at],at,qe))return!1;return!0}function Gs(qe,ft){for(var at=-1,At=qe==null?0:qe.length,cr=0,Pr=[];++at<At;){var an=qe[at];ft(an,at,qe)&&(Pr[cr++]=an)}return Pr}function Ul(qe,ft){var at=qe==null?0:qe.length;return!!at&&Xi(qe,ft,0)>-1}function yu(qe,ft,at){for(var At=-1,cr=qe==null?0:qe.length;++At<cr;)if(at(ft,qe[At]))return!0;return!1}function Nr(qe,ft){for(var at=-1,At=qe==null?0:qe.length,cr=Array(At);++at<At;)cr[at]=ft(qe[at],at,qe);return cr}function Us(qe,ft){for(var at=-1,At=ft.length,cr=qe.length;++at<At;)qe[cr+at]=ft[at];return qe}function vu(qe,ft,at,At){var cr=-1,Pr=qe==null?0:qe.length;for(At&&Pr&&(at=qe[++cr]);++cr<Pr;)at=ft(at,qe[cr],cr,qe);return at}function hf(qe,ft,at,At){var cr=qe==null?0:qe.length;for(At&&cr&&(at=qe[--cr]);cr--;)at=ft(at,qe[cr],cr,qe);return at}function bu(qe,ft){for(var at=-1,At=qe==null?0:qe.length;++at<At;)if(ft(qe[at],at,qe))return!0;return!1}var gf=Su("length");function Vd(qe){return qe.split("")}function xf(qe){return qe.match(Zo)||[]}function Wd(qe,ft,at){var At;return at(qe,function(cr,Pr,an){if(ft(cr,Pr,an))return At=Pr,!1}),At}function Vl(qe,ft,at,At){for(var cr=qe.length,Pr=at+(At?1:-1);At?Pr--:++Pr<cr;)if(ft(qe[Pr],Pr,qe))return Pr;return-1}function Xi(qe,ft,at){return ft===ft?Kl(qe,ft,at):Vl(qe,qd,at)}function Eu(qe,ft,at,At){for(var cr=at-1,Pr=qe.length;++cr<Pr;)if(At(qe[cr],ft))return cr;return-1}function qd(qe){return qe!==qe}function Kd(qe,ft){var at=qe==null?0:qe.length;return at?Cu(qe,ft)/at:pe}function Su(qe){return function(ft){return ft==null?g:ft[qe]}}function Wl(qe){return function(ft){return qe==null?g:qe[ft]}}function Jd(qe,ft,at,At,cr){return cr(qe,function(Pr,an,Dr){at=At?(At=!1,Pr):ft(at,Pr,an,Dr)}),at}function _f(qe,ft){var at=qe.length;for(qe.sort(ft);at--;)qe[at]=qe[at].value;return qe}function Cu(qe,ft){for(var at,At=-1,cr=qe.length;++At<cr;){var Pr=ft(qe[At]);Pr!==g&&(at=at===g?Pr:at+Pr)}return at}function wu(qe,ft){for(var at=-1,At=Array(qe);++at<qe;)At[at]=ft(at);return At}function yf(qe,ft){return Nr(ft,function(at){return[at,qe[at]]})}function Qd(qe){return qe&&qe.slice(0,Jl(qe)+1).replace(sn,"")}function io(qe){return function(ft){return qe(ft)}}function za(qe,ft){return Nr(ft,function(at){return qe[at]})}function Ss(qe,ft){return qe.has(ft)}function Xd(qe,ft){for(var at=-1,At=qe.length;++at<At&&Xi(ft,qe[at],0)>-1;);return at}function Mu(qe,ft){for(var at=qe.length;at--&&Xi(ft,qe[at],0)>-1;);return at}function Zd(qe,ft){for(var at=qe.length,At=0;at--;)qe[at]===ft&&++At;return At}var ep=Wl(Ki),tp=Wl(Hl);function rp(qe){return"\\"+mf[qe]}function Zi(qe,ft){return qe==null?g:qe[ft]}function ea(qe){return Bd.test(qe)}function vf(qe){return jl.test(qe)}function bf(qe){for(var ft,at=[];!(ft=qe.next()).done;)at.push(ft.value);return at}function ql(qe){var ft=-1,at=Array(qe.size);return qe.forEach(function(At,cr){at[++ft]=[cr,At]}),at}function Tu(qe,ft){return function(at){return qe(ft(at))}}function vo(qe,ft){for(var at=-1,At=qe.length,cr=0,Pr=[];++at<At;){var an=qe[at];(an===ft||an===R)&&(qe[at]=R,Pr[cr++]=at)}return Pr}function Vs(qe){var ft=-1,at=Array(qe.size);return qe.forEach(function(At){at[++ft]=At}),at}function Ef(qe){var ft=-1,at=Array(qe.size);return qe.forEach(function(At){at[++ft]=[At,At]}),at}function Kl(qe,ft,at){for(var At=at-1,cr=qe.length;++At<cr;)if(qe[At]===ft)return At;return-1}function Sf(qe,ft,at){for(var At=at+1;At--;)if(qe[At]===ft)return At;return At}function Ei(qe){return ea(qe)?op(qe):gf(qe)}function ao(qe){return ea(qe)?sp(qe):Vd(qe)}function Jl(qe){for(var ft=qe.length;ft--&&vn.test(qe.charAt(ft)););return ft}var np=Wl(ff);function op(qe){for(var ft=_i.lastIndex=0;_i.test(qe);)++ft;return ft}function sp(qe){return qe.match(_i)||[]}function Cf(qe){return qe.match(df)||[]}var wf=function qe(ft){ft=ft==null?Ur:ra.defaults(Ur.Object(),ft,ra.pick(Ur,zd));var at=ft.Array,At=ft.Date,cr=ft.Error,Pr=ft.Function,an=ft.Math,Dr=ft.Object,Ga=ft.RegExp,Mf=ft.String,Eo=ft.TypeError,Cs=at.prototype,Pu=Pr.prototype,ns=Dr.prototype,na=ft["__core-js_shared__"],Ua=Pu.toString,Rr=ns.hasOwnProperty,oa=0,Ql=function(){var $=/[^.]+$/.exec(na&&na.keys&&na.keys.IE_PROTO||"");return $?"Symbol(src)_1."+$:""}(),Va=ns.toString,Xl=Ua.call(Dr),ip=Ur._,ap=Ga("^"+Ua.call(Rr).replace(wr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Wa=fu?ft.Buffer:g,ws=ft.Symbol,qa=ft.Uint8Array,Ru=Wa?Wa.allocUnsafe:g,Ho=Tu(Dr.getPrototypeOf,Dr),Zl=Dr.create,ec=ns.propertyIsEnumerable,tc=Cs.splice,lp=ws?ws.isConcatSpreadable:g,Ms=ws?ws.iterator:g,Si=ws?ws.toStringTag:g,Ka=function(){try{var $=ni(Dr,"defineProperty");return $({},"",{}),$}catch(O){}}(),cp=ft.clearTimeout!==Ur.clearTimeout&&ft.clearTimeout,Hr=At&&At.now!==Ur.Date.now&&At.now,$u=ft.setTimeout!==Ur.setTimeout&&ft.setTimeout,Ci=an.ceil,Ws=an.floor,rc=Dr.getOwnPropertySymbols,Iu=Wa?Wa.isBuffer:g,sa=ft.isFinite,nc=Cs.join,ia=Tu(Dr.keys,Dr),ln=an.max,$n=an.min,Tf=At.now,up=ft.parseInt,Ja=an.random,oc=Cs.reverse,Qa=ni(ft,"DataView"),wi=ni(ft,"Map"),Xa=ni(ft,"Promise"),qs=ni(ft,"Set"),Za=ni(ft,"WeakMap"),aa=ni(Dr,"create"),sc=Za&&new Za,la={},Lu=oi(Qa),Ks=oi(wi),dp=oi(Xa),ua=oi(qs),os=oi(Za),Js=ws?ws.prototype:g,co=Js?Js.valueOf:g,ic=Js?Js.toString:g;function Te($){if(un($)&&!gr($)&&!($ instanceof pr)){if($ instanceof In)return $;if(Rr.call($,"__wrapped__"))return jp($)}return new In($)}var pa=function(){function $(){}return function(O){if(!on(O))return{};if(Zl)return Zl(O);$.prototype=O;var K=new $;return $.prototype=g,K}}();function as(){}function In($,O){this.__wrapped__=$,this.__actions__=[],this.__chain__=!!O,this.__index__=0,this.__values__=g}Te.templateSettings={escape:qr,evaluate:yn,interpolate:Qr,variable:"",imports:{_:Te}},Te.prototype=as.prototype,Te.prototype.constructor=Te,In.prototype=pa(as.prototype),In.prototype.constructor=In;function pr($){this.__wrapped__=$,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=ge,this.__views__=[]}function ac(){var $=new pr(this.__wrapped__);return $.__actions__=Bn(this.__actions__),$.__dir__=this.__dir__,$.__filtered__=this.__filtered__,$.__iteratees__=Bn(this.__iteratees__),$.__takeCount__=this.__takeCount__,$.__views__=Bn(this.__views__),$}function Du(){if(this.__filtered__){var $=new pr(this);$.__dir__=-1,$.__filtered__=!0}else $=this.clone(),$.__dir__*=-1;return $}function ma(){var $=this.__wrapped__.value(),O=this.__dir__,K=gr($),_e=O<0,Ce=K?$.length:0,Pe=ud(0,Ce,this.__views__),je=Pe.start,Ue=Pe.end,Qe=Ue-je,vt=_e?Ue:je-1,Et=this.__iteratees__,Tt=Et.length,Dt=0,Ut=$n(Qe,this.__takeCount__);if(!K||!_e&&Ce==Qe&&Ut==Qe)return Sa($,this.__actions__);var or=[];e:for(;Qe--&&Dt<Ut;){vt+=O;for(var Sr=-1,ir=$[vt];++Sr<Tt;){var Cr=Et[Sr],Tr=Cr.iteratee,Jo=Cr.type,go=Tr(ir);if(Jo==ee)ir=go;else if(!go){if(Jo==Z)continue e;break e}}or[Dt++]=ir}return or}pr.prototype=pa(as.prototype),pr.prototype.constructor=pr;function Kn($){var O=-1,K=$==null?0:$.length;for(this.clear();++O<K;){var _e=$[O];this.set(_e[0],_e[1])}}function Yr(){this.__data__=aa?aa(null):{},this.size=0}function jr($){var O=this.has($)&&delete this.__data__[$];return this.size-=O?1:0,O}function Qs($){var O=this.__data__;if(aa){var K=O[$];return K===C?g:K}return Rr.call(O,$)?O[$]:g}function Ln($){var O=this.__data__;return aa?O[$]!==g:Rr.call(O,$)}function Jn($,O){var K=this.__data__;return this.size+=this.has($)?0:1,K[$]=aa&&O===g?C:O,this}Kn.prototype.clear=Yr,Kn.prototype.delete=jr,Kn.prototype.get=Qs,Kn.prototype.has=Ln,Kn.prototype.set=Jn;function Yn($){var O=-1,K=$==null?0:$.length;for(this.clear();++O<K;){var _e=$[O];this.set(_e[0],_e[1])}}function ha(){this.__data__=[],this.size=0}function Qn($){var O=this.__data__,K=An(O,$);if(K<0)return!1;var _e=O.length-1;return K==_e?O.pop():tc.call(O,K,1),--this.size,!0}function lc($){var O=this.__data__,K=An(O,$);return K<0?g:O[K][1]}function pp($){return An(this.__data__,$)>-1}function fp($,O){var K=this.__data__,_e=An(K,$);return _e<0?(++this.size,K.push([$,O])):K[_e][1]=O,this}Yn.prototype.clear=ha,Yn.prototype.delete=Qn,Yn.prototype.get=lc,Yn.prototype.has=pp,Yn.prototype.set=fp;function So($){var O=-1,K=$==null?0:$.length;for(this.clear();++O<K;){var _e=$[O];this.set(_e[0],_e[1])}}function mp(){this.size=0,this.__data__={hash:new Kn,map:new(wi||Yn),string:new Kn}}function Ts($){var O=bl(this,$).delete($);return this.size-=O?1:0,O}function cc($){return bl(this,$).get($)}function Au($){return bl(this,$).has($)}function hp($,O){var K=bl(this,$),_e=K.size;return K.set($,O),this.size+=K.size==_e?0:1,this}So.prototype.clear=mp,So.prototype.delete=Ts,So.prototype.get=cc,So.prototype.has=Au,So.prototype.set=hp;function Mi($){var O=-1,K=$==null?0:$.length;for(this.__data__=new So;++O<K;)this.add($[O])}function Xs($){return this.__data__.set($,C),this}function xa($){return this.__data__.has($)}Mi.prototype.add=Mi.prototype.push=Xs,Mi.prototype.has=xa;function Dn($){var O=this.__data__=new Yn($);this.size=O.size}function uc(){this.__data__=new Yn,this.size=0}function dc($){var O=this.__data__,K=O.delete($);return this.size=O.size,K}function Co($){return this.__data__.get($)}function wo($){return this.__data__.has($)}function Ti($,O){var K=this.__data__;if(K instanceof Yn){var _e=K.__data__;if(!wi||_e.length<b-1)return _e.push([$,O]),this.size=++K.size,this;K=this.__data__=new So(_e)}return K.set($,O),this.size=K.size,this}Dn.prototype.clear=uc,Dn.prototype.delete=dc,Dn.prototype.get=Co,Dn.prototype.has=wo,Dn.prototype.set=Ti;function ls($,O){var K=gr($),_e=!K&&Ll($),Ce=!K&&!_e&&Da($),Pe=!K&&!_e&&!Ce&&tu($),je=K||_e||Ce||Pe,Ue=je?wu($.length,Mf):[],Qe=Ue.length;for(var vt in $)(O||Rr.call($,vt))&&!(je&&(vt=="length"||Ce&&(vt=="offset"||vt=="parent")||Pe&&(vt=="buffer"||vt=="byteLength"||vt=="byteOffset")||Wr(vt,Qe)))&&Ue.push(vt);return Ue}function us($){var O=$.length;return O?$[ba(0,O-1)]:g}function Pi($,O){return Fc(Bn($),Ps(O,0,$.length))}function gp($){return Fc(Bn($))}function tl($,O,K){(K!==g&&!Ns($[O],K)||K===g&&!(O in $))&&ds($,O,K)}function Ri($,O,K){var _e=$[O];(!(Rr.call($,O)&&Ns(_e,K))||K===g&&!(O in $))&&ds($,O,K)}function An($,O){for(var K=$.length;K--;)if(Ns($[K][0],O))return K;return-1}function uo($,O,K,_e){return fs($,function(Ce,Pe,je){O(_e,Ce,K(Ce),je)}),_e}function Br($,O){return $&&Bo(O,Nn(O),$)}function Yo($,O){return $&&Bo(O,Ao(O),$)}function ds($,O,K){O=="__proto__"&&Ka?Ka($,O,{configurable:!0,enumerable:!0,value:K,writable:!0}):$[O]=K}function pc($,O){for(var K=-1,_e=O.length,Ce=at(_e),Pe=$==null;++K<_e;)Ce[K]=Pe?g:Qf($,O[K]);return Ce}function Ps($,O,K){return $===$&&(K!==g&&($=$<=K?$:K),O!==g&&($=$>=O?$:O)),$}function Xn($,O,K,_e,Ce,Pe){var je,Ue=O&k,Qe=O&L,vt=O&D;if(K&&(je=Ce?K($,_e,Ce,Pe):K($)),je!==g)return je;if(!on($))return $;var Et=gr($);if(Et){if(je=Sl($),!Ue)return Bn($,je)}else{var Tt=wn($),Dt=Tt==Ge||Tt==Ie;if(Da($))return Ju($,Ue);if(Tt==rt||Tt==Se||Dt&&!Ce){if(je=Qe||Dt?{}:Mn($),!Ue)return Qe?Rf($,Yo(je,$)):wc($,Br(je,$))}else{if(!Ir[Tt])return Ce?$:{};je=$f($,Tt,Ue)}}Pe||(Pe=new Dn);var Ut=Pe.get($);if(Ut)return Ut;Pe.set($,je),pm($)?$.forEach(function(ir){je.add(Xn(ir,O,K,ir,$,Pe))}):um($)&&$.forEach(function(ir,Cr){je.set(Cr,Xn(ir,O,K,Cr,$,Pe))});var or=vt?Qe?vl:yl:Qe?Ao:Nn,Sr=Et?g:or($);return Rn(Sr||$,function(ir,Cr){Sr&&(Cr=ir,ir=$[Cr]),Ri(je,Cr,Xn(ir,O,K,Cr,$,Pe))}),je}function xp($){var O=Nn($);return function(K){return rl(K,$,O)}}function rl($,O,K){var _e=K.length;if($==null)return!_e;for($=Dr($);_e--;){var Ce=K[_e],Pe=O[Ce],je=$[Ce];if(je===g&&!(Ce in $)||!Pe(je))return!1}return!0}function Ou($,O,K){if(typeof $!="function")throw new Eo(v);return $a(function(){$.apply(g,K)},O)}function ps($,O,K,_e){var Ce=-1,Pe=Ul,je=!0,Ue=$.length,Qe=[],vt=O.length;if(!Ue)return Qe;K&&(O=Nr(O,io(K))),_e?(Pe=yu,je=!1):O.length>=b&&(Pe=Ss,je=!1,O=new Mi(O));e:for(;++Ce<Ue;){var Et=$[Ce],Tt=K==null?Et:K(Et);if(Et=_e||Et!==0?Et:0,je&&Tt===Tt){for(var Dt=vt;Dt--;)if(O[Dt]===Tt)continue e;Qe.push(Et)}else Pe(O,Tt,_e)||Qe.push(Et)}return Qe}var fs=$o(po),_p=$o(Zs,!0);function ol($,O){var K=!0;return fs($,function(_e,Ce,Pe){return K=!!O(_e,Ce,Pe),K}),K}function $i($,O,K){for(var _e=-1,Ce=$.length;++_e<Ce;){var Pe=$[_e],je=O(Pe);if(je!=null&&(Ue===g?je===je&&!Ko(je):K(je,Ue)))var Ue=je,Qe=Pe}return Qe}function yp($,O,K,_e){var Ce=$.length;for(K=yr(K),K<0&&(K=-K>Ce?0:Ce+K),_e=_e===g||_e>Ce?Ce:yr(_e),_e<0&&(_e+=Ce),_e=K>_e?0:mm(_e);K<_e;)$[K++]=O;return $}function Fu($,O){var K=[];return fs($,function(_e,Ce,Pe){O(_e,Ce,Pe)&&K.push(_e)}),K}function Xr($,O,K,_e,Ce){var Pe=-1,je=$.length;for(K||(K=Dc),Ce||(Ce=[]);++Pe<je;){var Ue=$[Pe];O>0&&K(Ue)?O>1?Xr(Ue,O-1,K,_e,Ce):Us(Ce,Ue):_e||(Ce[Ce.length]=Ue)}return Ce}var fc=Tc(),il=Tc(!0);function po($,O){return $&&fc($,O,Nn)}function Zs($,O){return $&&il($,O,Nn)}function _a($,O){return Gs(O,function(K){return zi($[K])})}function Rs($,O){O=xs(O,$);for(var K=0,_e=O.length;$!=null&&K<_e;)$=$[Vo(O[K++])];return K&&K==_e?$:g}function mc($,O,K){var _e=O($);return gr($)?_e:Us(_e,K($))}function Sn($){return $==null?$===g?st:Ve:Si&&Si in Dr($)?Lc($):pd($)}function ei($,O){return $>O}function Mo($,O){return $!=null&&Rr.call($,O)}function ki($,O){return $!=null&&O in Dr($)}function Nu($,O,K){return $>=$n(O,K)&&$<ln(O,K)}function hc($,O,K){for(var _e=K?yu:Ul,Ce=$[0].length,Pe=$.length,je=Pe,Ue=at(Pe),Qe=1/0,vt=[];je--;){var Et=$[je];je&&O&&(Et=Nr(Et,io(O))),Qe=$n(Et.length,Qe),Ue[je]=!K&&(O||Ce>=120&&Et.length>=120)?new Mi(je&&Et):g}Et=$[0];var Tt=-1,Dt=Ue[0];e:for(;++Tt<Ce&&vt.length<Qe;){var Ut=Et[Tt],or=O?O(Ut):Ut;if(Ut=K||Ut!==0?Ut:0,!(Dt?Ss(Dt,or):_e(vt,or,K))){for(je=Pe;--je;){var Sr=Ue[je];if(!(Sr?Ss(Sr,or):_e($[je],or,K)))continue e}Dt&&Dt.push(or),vt.push(Ut)}}return vt}function $s($,O,K,_e){return po($,function(Ce,Pe,je){O(_e,K(Ce),Pe,je)}),_e}function To($,O,K){O=xs(O,$),$=gn($,O);var _e=$==null?$:$[Vo(Un(O))];return _e==null?g:Hn(_e,$,K)}function gc($){return un($)&&Sn($)==Se}function vp($){return un($)&&Sn($)==gt}function ks($){return un($)&&Sn($)==De}function Po($,O,K,_e,Ce){return $===O?!0:$==null||O==null||!un($)&&!un(O)?$!==$&&O!==O:xc($,O,K,_e,Po,Ce)}function xc($,O,K,_e,Ce,Pe){var je=gr($),Ue=gr(O),Qe=je?$e:wn($),vt=Ue?$e:wn(O);Qe=Qe==Se?rt:Qe,vt=vt==Se?rt:vt;var Et=Qe==rt,Tt=vt==rt,Dt=Qe==vt;if(Dt&&Da($)){if(!Da(O))return!1;je=!0,Et=!1}if(Dt&&!Et)return Pe||(Pe=new Dn),je||tu($)?ld($,O,K,_e,Ce,Pe):cd($,O,Qe,K,_e,Ce,Pe);if(!(K&A)){var Ut=Et&&Rr.call($,"__wrapped__"),or=Tt&&Rr.call(O,"__wrapped__");if(Ut||or){var Sr=Ut?$.value():$,ir=or?O.value():O;return Pe||(Pe=new Dn),Ce(Sr,ir,K,_e,Pe)}}return Dt?(Pe||(Pe=new Dn),kp($,O,K,_e,Ce,Pe)):!1}function bp($){return un($)&&wn($)==Ye}function ya($,O,K,_e){var Ce=K.length,Pe=Ce,je=!_e;if($==null)return!Pe;for($=Dr($);Ce--;){var Ue=K[Ce];if(je&&Ue[2]?Ue[1]!==$[Ue[0]]:!(Ue[0]in $))return!1}for(;++Ce<Pe;){Ue=K[Ce];var Qe=Ue[0],vt=$[Qe],Et=Ue[1];if(je&&Ue[2]){if(vt===g&&!(Qe in $))return!1}else{var Tt=new Dn;if(_e)var Dt=_e(vt,Et,Qe,$,O,Tt);if(!(Dt===g?Po(Et,vt,A|I,_e,Tt):Dt))return!1}}return!0}function ju($){if(!on($)||Dp($))return!1;var O=zi($)?ap:dr;return O.test(oi($))}function al($){return un($)&&Sn($)==ke}function hs($){return un($)&&wn($)==Ne}function ll($){return un($)&&Zp($.length)&&!!Lr[Sn($)]}function va($){return typeof $=="function"?$:$==null?Oo:typeof $=="object"?gr($)?Vr($[0],$[1]):_c($):Mm($)}function Is($){if(!Os($))return ia($);var O=[];for(var K in Dr($))Rr.call($,K)&&K!="constructor"&&O.push(K);return O}function Hu($){if(!on($))return Fp($);var O=Os($),K=[];for(var _e in $)_e=="constructor"&&(O||!Rr.call($,_e))||K.push(_e);return K}function ti($,O){return $<O}function Yu($,O){var K=-1,_e=Do($)?at($.length):[];return fs($,function(Ce,Pe,je){_e[++K]=O(Ce,Pe,je)}),_e}function _c($){var O=El($);return O.length==1&&O[0][2]?Ac(O[0][0],O[0][1]):function(K){return K===$||ya(K,$,O)}}function Vr($,O){return Ft($)&&wl(O)?Ac(Vo($),O):function(K){var _e=Qf(K,$);return _e===g&&_e===O?Xf(K,$):Po(O,_e,A|I)}}function Ii($,O,K,_e,Ce){$!==O&&fc(O,function(Pe,je){if(Ce||(Ce=new Dn),on(Pe))Bu($,O,je,K,Ii,_e,Ce);else{var Ue=_e?_e(vs($,je),Pe,je+"",$,O,Ce):g;Ue===g&&(Ue=Pe),tl($,je,Ue)}},Ao)}function Bu($,O,K,_e,Ce,Pe,je){var Ue=vs($,K),Qe=vs(O,K),vt=je.get(Qe);if(vt){tl($,K,vt);return}var Et=Pe?Pe(Ue,Qe,K+"",$,O,je):g,Tt=Et===g;if(Tt){var Dt=gr(Qe),Ut=!Dt&&Da(Qe),or=!Dt&&!Ut&&tu(Qe);Et=Qe,Dt||Ut||or?gr(Ue)?Et=Ue:fn(Ue)?Et=Bn(Ue):Ut?(Tt=!1,Et=Ju(Qe,!0)):or?(Tt=!1,Et=Mp(Qe,!0)):Et=[]:Id(Qe)||Ll(Qe)?(Et=Ue,Ll(Ue)?Et=hm(Ue):(!on(Ue)||zi(Ue))&&(Et=Mn(Qe))):Tt=!1}Tt&&(je.set(Qe,Et),Ce(Et,Qe,_e,Pe,je),je.delete(Qe)),tl($,K,Et)}function yc($,O){var K=$.length;if(K)return O+=O<0?K:0,Wr(O,K)?$[O]:g}function cl($,O,K){O.length?O=Nr(O,function(Pe){return gr(Pe)?function(je){return Rs(je,Pe.length===1?Pe[0]:Pe)}:Pe}):O=[Oo];var _e=-1;O=Nr(O,io(er()));var Ce=Yu($,function(Pe,je,Ue){var Qe=Nr(O,function(vt){return vt(Pe)});return{criteria:Qe,index:++_e,value:Pe}});return _f(Ce,function(Pe,je){return Pf(Pe,je,K)})}function zu($,O){return ri($,O,function(K,_e){return Xf($,_e)})}function ri($,O,K){for(var _e=-1,Ce=O.length,Pe={};++_e<Ce;){var je=O[_e],Ue=Rs($,je);K(Ue,je)&&Di(Pe,xs(je,$),Ue)}return Pe}function Kr($){return function(O){return Rs(O,$)}}function Zr($,O,K,_e){var Ce=_e?Eu:Xi,Pe=-1,je=O.length,Ue=$;for($===O&&(O=Bn(O)),K&&(Ue=Nr($,io(K)));++Pe<je;)for(var Qe=0,vt=O[Pe],Et=K?K(vt):vt;(Qe=Ce(Ue,Et,Qe,_e))>-1;)Ue!==$&&tc.call(Ue,Qe,1),tc.call($,Qe,1);return $}function dn($,O){for(var K=$?O.length:0,_e=K-1;K--;){var Ce=O[K];if(K==_e||Ce!==Pe){var Pe=Ce;Wr(Ce)?tc.call($,Ce,1):Ec($,Ce)}}return $}function ba($,O){return $+Ws(Ja()*(O-$+1))}function ul($,O,K,_e){for(var Ce=-1,Pe=ln(Ci((O-$)/(K||1)),0),je=at(Pe);Pe--;)je[_e?Pe:++Ce]=$,$+=K;return je}function Li($,O){var K="";if(!$||O<1||O>ae)return K;do O%2&&(K+=$),O=Ws(O/2),O&&($+=$);while(O);return K}function _r($,O){return mo(Oc($,O,Oo),$+"")}function On($){return us(nu($))}function Gu($,O){var K=nu($);return Fc(K,Ps(O,0,K.length))}function Di($,O,K,_e){if(!on($))return $;O=xs(O,$);for(var Ce=-1,Pe=O.length,je=Pe-1,Ue=$;Ue!=null&&++Ce<Pe;){var Qe=Vo(O[Ce]),vt=K;if(Qe==="__proto__"||Qe==="constructor"||Qe==="prototype")return $;if(Ce!=je){var Et=Ue[Qe];vt=_e?_e(Et,Qe,Ue):g,vt===g&&(vt=on(Et)?Et:Wr(O[Ce+1])?[]:{})}Ri(Ue,Qe,vt),Ue=Ue[Qe]}return $}var vc=sc?function($,O){return sc.set($,O),$}:Oo,gs=Ka?function($,O){return Ka($,"toString",{configurable:!0,enumerable:!1,value:em(O),writable:!0})}:Oo;function Ro($){return Fc(nu($))}function Fn($,O,K){var _e=-1,Ce=$.length;O<0&&(O=-O>Ce?0:Ce+O),K=K>Ce?Ce:K,K<0&&(K+=Ce),Ce=O>K?0:K-O>>>0,O>>>=0;for(var Pe=at(Ce);++_e<Ce;)Pe[_e]=$[_e+O];return Pe}function Uu($,O){var K;return fs($,function(_e,Ce,Pe){return K=O(_e,Ce,Pe),!K}),!!K}function Ea($,O,K){var _e=0,Ce=$==null?_e:$.length;if(typeof O=="number"&&O===O&&Ce<=Ee){for(;_e<Ce;){var Pe=_e+Ce>>>1,je=$[Pe];je!==null&&!Ko(je)&&(K?je<=O:je<O)?_e=Pe+1:Ce=Pe}return Ce}return bc($,O,Oo,K)}function bc($,O,K,_e){var Ce=0,Pe=$==null?0:$.length;if(Pe===0)return 0;O=K(O);for(var je=O!==O,Ue=O===null,Qe=Ko(O),vt=O===g;Ce<Pe;){var Et=Ws((Ce+Pe)/2),Tt=K($[Et]),Dt=Tt!==g,Ut=Tt===null,or=Tt===Tt,Sr=Ko(Tt);if(je)var ir=_e||or;else vt?ir=or&&(_e||Dt):Ue?ir=or&&Dt&&(_e||!Ut):Qe?ir=or&&Dt&&!Ut&&(_e||!Sr):Ut||Sr?ir=!1:ir=_e?Tt<=O:Tt<O;ir?Ce=Et+1:Pe=Et}return $n(Pe,ye)}function Vu($,O){for(var K=-1,_e=$.length,Ce=0,Pe=[];++K<_e;){var je=$[K],Ue=O?O(je):je;if(!K||!Ns(Ue,Qe)){var Qe=Ue;Pe[Ce++]=je===0?0:je}}return Pe}function Wu($){return typeof $=="number"?$:Ko($)?pe:+$}function Zn($){if(typeof $=="string")return $;if(gr($))return Nr($,Zn)+"";if(Ko($))return ic?ic.call($):"";var O=$+"";return O=="0"&&1/$==-1/0?"-0":O}function Ls($,O,K){var _e=-1,Ce=Ul,Pe=$.length,je=!0,Ue=[],Qe=Ue;if(K)je=!1,Ce=yu;else if(Pe>=b){var vt=O?null:$p($);if(vt)return Vs(vt);je=!1,Ce=Ss,Qe=new Mi}else Qe=O?[]:Ue;e:for(;++_e<Pe;){var Et=$[_e],Tt=O?O(Et):Et;if(Et=K||Et!==0?Et:0,je&&Tt===Tt){for(var Dt=Qe.length;Dt--;)if(Qe[Dt]===Tt)continue e;O&&Qe.push(Tt),Ue.push(Et)}else Ce(Qe,Tt,K)||(Qe!==Ue&&Qe.push(Tt),Ue.push(Et))}return Ue}function Ec($,O){return O=xs(O,$),$=gn($,O),$==null||delete $[Vo(Un(O))]}function qu($,O,K,_e){return Di($,O,K(Rs($,O)),_e)}function dl($,O,K,_e){for(var Ce=$.length,Pe=_e?Ce:-1;(_e?Pe--:++Pe<Ce)&&O($[Pe],Pe,$););return K?Fn($,_e?0:Pe,_e?Pe+1:Ce):Fn($,_e?Pe+1:0,_e?Ce:Pe)}function Sa($,O){var K=$;return K instanceof pr&&(K=K.value()),vu(O,function(_e,Ce){return Ce.func.apply(Ce.thisArg,Us([_e],Ce.args))},K)}function Sc($,O,K){var _e=$.length;if(_e<2)return _e?Ls($[0]):[];for(var Ce=-1,Pe=at(_e);++Ce<_e;)for(var je=$[Ce],Ue=-1;++Ue<_e;)Ue!=Ce&&(Pe[Ce]=ps(Pe[Ce]||je,$[Ue],O,K));return Ls(Xr(Pe,1),O,K)}function fl($,O,K){for(var _e=-1,Ce=$.length,Pe=O.length,je={};++_e<Ce;){var Ue=_e<Pe?O[_e]:g;K(je,$[_e],Ue)}return je}function Ca($){return fn($)?$:[]}function Cc($){return typeof $=="function"?$:Oo}function xs($,O){return gr($)?$:Ft($,O)?[$]:xd(Ar($))}var Ep=_r;function Ds($,O,K){var _e=$.length;return K=K===g?_e:K,!O&&K>=_e?$:Fn($,O,K)}var Ku=cp||function($){return Ur.clearTimeout($)};function Ju($,O){if(O)return $.slice();var K=$.length,_e=Ru?Ru(K):new $.constructor(K);return $.copy(_e),_e}function hl($){var O=new $.constructor($.byteLength);return new qa(O).set(new qa($)),O}function Sp($,O){var K=O?hl($.buffer):$.buffer;return new $.constructor(K,$.byteOffset,$.byteLength)}function Cp($){var O=new $.constructor($.source,tt.exec($));return O.lastIndex=$.lastIndex,O}function wp($){return co?Dr(co.call($)):{}}function Mp($,O){var K=O?hl($.buffer):$.buffer;return new $.constructor(K,$.byteOffset,$.length)}function Qu($,O){if($!==O){var K=$!==g,_e=$===null,Ce=$===$,Pe=Ko($),je=O!==g,Ue=O===null,Qe=O===O,vt=Ko(O);if(!Ue&&!vt&&!Pe&&$>O||Pe&&je&&Qe&&!Ue&&!vt||_e&&je&&Qe||!K&&Qe||!Ce)return 1;if(!_e&&!Pe&&!vt&&$<O||vt&&K&&Ce&&!_e&&!Pe||Ue&&K&&Ce||!je&&Ce||!Qe)return-1}return 0}function Pf($,O,K){for(var _e=-1,Ce=$.criteria,Pe=O.criteria,je=Ce.length,Ue=K.length;++_e<je;){var Qe=Qu(Ce[_e],Pe[_e]);if(Qe){if(_e>=Ue)return Qe;var vt=K[_e];return Qe*(vt=="desc"?-1:1)}}return $.index-O.index}function Tp($,O,K,_e){for(var Ce=-1,Pe=$.length,je=K.length,Ue=-1,Qe=O.length,vt=ln(Pe-je,0),Et=at(Qe+vt),Tt=!_e;++Ue<Qe;)Et[Ue]=O[Ue];for(;++Ce<je;)(Tt||Ce<Pe)&&(Et[K[Ce]]=$[Ce]);for(;vt--;)Et[Ue++]=$[Ce++];return Et}function Xu($,O,K,_e){for(var Ce=-1,Pe=$.length,je=-1,Ue=K.length,Qe=-1,vt=O.length,Et=ln(Pe-Ue,0),Tt=at(Et+vt),Dt=!_e;++Ce<Et;)Tt[Ce]=$[Ce];for(var Ut=Ce;++Qe<vt;)Tt[Ut+Qe]=O[Qe];for(;++je<Ue;)(Dt||Ce<Pe)&&(Tt[Ut+K[je]]=$[Ce++]);return Tt}function Bn($,O){var K=-1,_e=$.length;for(O||(O=at(_e));++K<_e;)O[K]=$[K];return O}function Bo($,O,K,_e){var Ce=!K;K||(K={});for(var Pe=-1,je=O.length;++Pe<je;){var Ue=O[Pe],Qe=_e?_e(K[Ue],$[Ue],Ue,K,$):g;Qe===g&&(Qe=$[Ue]),Ce?ds(K,Ue,Qe):Ri(K,Ue,Qe)}return K}function wc($,O){return Bo($,zo($),O)}function Rf($,O){return Bo($,Ip($),O)}function Mc($,O){return function(K,_e){var Ce=gr(K)?xu:uo,Pe=O?O():{};return Ce(K,$,er(_e,2),Pe)}}function wa($){return _r(function(O,K){var _e=-1,Ce=K.length,Pe=Ce>1?K[Ce-1]:g,je=Ce>2?K[2]:g;for(Pe=$.length>3&&typeof Pe=="function"?(Ce--,Pe):g,je&&Gn(K[0],K[1],je)&&(Pe=Ce<3?g:Pe,Ce=1),O=Dr(O);++_e<Ce;){var Ue=K[_e];Ue&&$(O,Ue,_e,Pe)}return O})}function $o($,O){return function(K,_e){if(K==null)return K;if(!Do(K))return $(K,_e);for(var Ce=K.length,Pe=O?Ce:-1,je=Dr(K);(O?Pe--:++Pe<Ce)&&_e(je[Pe],Pe,je)!==!1;);return K}}function Tc($){return function(O,K,_e){for(var Ce=-1,Pe=Dr(O),je=_e(O),Ue=je.length;Ue--;){var Qe=je[$?Ue:++Ce];if(K(Pe[Qe],Qe,Pe)===!1)break}return O}}function Pc($,O,K){var _e=O&N,Ce=Ma($);function Pe(){var je=this&&this!==Ur&&this instanceof Pe?Ce:$;return je.apply(_e?K:this,arguments)}return Pe}function Zu($){return function(O){O=Ar(O);var K=ea(O)?ao(O):g,_e=K?K[0]:O.charAt(0),Ce=K?Ds(K,1).join(""):O.slice(1);return _e[$]()+Ce}}function Ai($){return function(O){return vu(Cm(Sm(O).replace(uf,"")),$,"")}}function Ma($){return function(){var O=arguments;switch(O.length){case 0:return new $;case 1:return new $(O[0]);case 2:return new $(O[0],O[1]);case 3:return new $(O[0],O[1],O[2]);case 4:return new $(O[0],O[1],O[2],O[3]);case 5:return new $(O[0],O[1],O[2],O[3],O[4]);case 6:return new $(O[0],O[1],O[2],O[3],O[4],O[5]);case 7:return new $(O[0],O[1],O[2],O[3],O[4],O[5],O[6])}var K=pa($.prototype),_e=$.apply(K,O);return on(_e)?_e:K}}function ed($,O,K){var _e=Ma($);function Ce(){for(var Pe=arguments.length,je=at(Pe),Ue=Pe,Qe=As(Ce);Ue--;)je[Ue]=arguments[Ue];var vt=Pe<3&&je[0]!==Qe&&je[Pe-1]!==Qe?[]:vo(je,Qe);if(Pe-=vt.length,Pe<K)return zn($,O,Ta,Ce.placeholder,g,je,vt,g,g,K-Pe);var Et=this&&this!==Ur&&this instanceof Ce?_e:$;return Hn(Et,this,je)}return Ce}function Oi($){return function(O,K,_e){var Ce=Dr(O);if(!Do(O)){var Pe=er(K,3);O=Nn(O),K=function(Ue){return Pe(Ce[Ue],Ue,Ce)}}var je=$(O,K,_e);return je>-1?Ce[Pe?O[je]:je]:g}}function Rc($){return ys(function(O){var K=O.length,_e=K,Ce=In.prototype.thru;for($&&O.reverse();_e--;){var Pe=O[_e];if(typeof Pe!="function")throw new Eo(v);if(Ce&&!je&&Pa(Pe)=="wrapper")var je=new In([],!0)}for(_e=je?_e:K;++_e<K;){Pe=O[_e];var Ue=Pa(Pe),Qe=Ue=="wrapper"?Ic(Pe):g;Qe&&Cl(Qe[0])&&Qe[1]==(V|Y|U|J)&&!Qe[4].length&&Qe[9]==1?je=je[Pa(Qe[0])].apply(je,Qe[3]):je=Pe.length==1&&Cl(Pe)?je[Ue]():je.thru(Pe)}return function(){var vt=arguments,Et=vt[0];if(je&&vt.length==1&&gr(Et))return je.plant(Et).value();for(var Tt=0,Dt=K?O[Tt].apply(this,vt):Et;++Tt<K;)Dt=O[Tt].call(this,Dt);return Dt}})}function Ta($,O,K,_e,Ce,Pe,je,Ue,Qe,vt){var Et=O&V,Tt=O&N,Dt=O&z,Ut=O&(Y|B),or=O&Q,Sr=Dt?g:Ma($);function ir(){for(var Cr=arguments.length,Tr=at(Cr),Jo=Cr;Jo--;)Tr[Jo]=arguments[Jo];if(Ut)var go=As(ir),Qo=Zd(Tr,go);if(_e&&(Tr=Tp(Tr,_e,Ce,Ut)),Pe&&(Tr=Xu(Tr,Pe,je,Ut)),Cr-=Qo,Ut&&Cr<vt){var hn=vo(Tr,go);return zn($,O,Ta,ir.placeholder,K,Tr,hn,Ue,Qe,vt-Cr)}var js=Tt?K:this,Ui=Dt?js[$]:$;return Cr=Tr.length,Ue?Tr=Go(Tr,Ue):or&&Cr>1&&Tr.reverse(),Et&&Qe<Cr&&(Tr.length=Qe),this&&this!==Ur&&this instanceof ir&&(Ui=Sr||Ma(Ui)),Ui.apply(js,Tr)}return ir}function Pp($,O){return function(K,_e){return $s(K,$,O(_e),{})}}function xl($,O){return function(K,_e){var Ce;if(K===g&&_e===g)return O;if(K!==g&&(Ce=K),_e!==g){if(Ce===g)return _e;typeof K=="string"||typeof _e=="string"?(K=Zn(K),_e=Zn(_e)):(K=Wu(K),_e=Wu(_e)),Ce=$(K,_e)}return Ce}}function $c($){return ys(function(O){return O=Nr(O,io(er())),_r(function(K){var _e=this;return $(O,function(Ce){return Hn(Ce,_e,K)})})})}function _l($,O){O=O===g?" ":Zn(O);var K=O.length;if(K<2)return K?Li(O,$):O;var _e=Li(O,Ci($/Ei(O)));return ea(O)?Ds(ao(_e),0,$).join(""):_e.slice(0,$)}function Rp($,O,K,_e){var Ce=O&N,Pe=Ma($);function je(){for(var Ue=-1,Qe=arguments.length,vt=-1,Et=_e.length,Tt=at(Et+Qe),Dt=this&&this!==Ur&&this instanceof je?Pe:$;++vt<Et;)Tt[vt]=_e[vt];for(;Qe--;)Tt[vt++]=arguments[++Ue];return Hn(Dt,Ce?K:this,Tt)}return je}function td($){return function(O,K,_e){return _e&&typeof _e!="number"&&Gn(O,K,_e)&&(K=_e=g),O=Gi(O),K===g?(K=O,O=0):K=Gi(K),_e=_e===g?O<K?1:-1:Gi(_e),ul(O,K,_e,$)}}function kc($){return function(O,K){return typeof O=="string"&&typeof K=="string"||(O=Es(O),K=Es(K)),$(O,K)}}function zn($,O,K,_e,Ce,Pe,je,Ue,Qe,vt){var Et=O&Y,Tt=Et?je:g,Dt=Et?g:je,Ut=Et?Pe:g,or=Et?g:Pe;O|=Et?U:W,O&=~(Et?W:U),O&j||(O&=-4);var Sr=[$,O,Ce,Ut,Tt,or,Dt,Ue,Qe,vt],ir=K.apply(g,Sr);return Cl($)&&fd(ir,Sr),ir.placeholder=_e,hd(ir,$,O)}function Cn($){var O=an[$];return function(K,_e){if(K=Es(K),_e=_e==null?0:$n(yr(_e),292),_e&&sa(K)){var Ce=(Ar(K)+"e").split("e"),Pe=O(Ce[0]+"e"+(+Ce[1]+_e));return Ce=(Ar(Pe)+"e").split("e"),+(Ce[0]+"e"+(+Ce[1]-_e))}return O(K)}}var $p=qs&&1/Vs(new qs([,-0]))[1]==fe?function($){return new qs($)}:nm;function rd($){return function(O){var K=wn(O);return K==Ye?ql(O):K==Ne?Ef(O):yf(O,$(O))}}function _s($,O,K,_e,Ce,Pe,je,Ue){var Qe=O&z;if(!Qe&&typeof $!="function")throw new Eo(v);var vt=_e?_e.length:0;if(vt||(O&=-97,_e=Ce=g),je=je===g?je:ln(yr(je),0),Ue=Ue===g?Ue:yr(Ue),vt-=Ce?Ce.length:0,O&W){var Et=_e,Tt=Ce;_e=Ce=g}var Dt=Qe?g:Ic($),Ut=[$,O,K,_e,Ce,Et,Tt,Pe,je,Ue];if(Dt&&Op(Ut,Dt),$=Ut[0],O=Ut[1],K=Ut[2],_e=Ut[3],Ce=Ut[4],Ue=Ut[9]=Ut[9]===g?Qe?0:$.length:ln(Ut[9]-vt,0),!Ue&&O&(Y|B)&&(O&=-25),!O||O==N)var or=Pc($,O,K);else O==Y||O==B?or=ed($,O,Ue):(O==U||O==(N|U))&&!Ce.length?or=Rp($,O,K,_e):or=Ta.apply(g,Ut);var Sr=Dt?vc:fd;return hd(Sr(or,Ut),$,O)}function nd($,O,K,_e){return $===g||Ns($,ns[K])&&!Rr.call(_e,K)?O:$}function od($,O,K,_e,Ce,Pe){return on($)&&on(O)&&(Pe.set(O,$),Ii($,O,g,od,Pe),Pe.delete(O)),$}function ad($){return Id($)?g:$}function ld($,O,K,_e,Ce,Pe){var je=K&A,Ue=$.length,Qe=O.length;if(Ue!=Qe&&!(je&&Qe>Ue))return!1;var vt=Pe.get($),Et=Pe.get(O);if(vt&&Et)return vt==O&&Et==$;var Tt=-1,Dt=!0,Ut=K&I?new Mi:g;for(Pe.set($,O),Pe.set(O,$);++Tt<Ue;){var or=$[Tt],Sr=O[Tt];if(_e)var ir=je?_e(Sr,or,Tt,O,$,Pe):_e(or,Sr,Tt,$,O,Pe);if(ir!==g){if(ir)continue;Dt=!1;break}if(Ut){if(!bu(O,function(Cr,Tr){if(!Ss(Ut,Tr)&&(or===Cr||Ce(or,Cr,K,_e,Pe)))return Ut.push(Tr)})){Dt=!1;break}}else if(!(or===Sr||Ce(or,Sr,K,_e,Pe))){Dt=!1;break}}return Pe.delete($),Pe.delete(O),Dt}function cd($,O,K,_e,Ce,Pe,je){switch(K){case Ct:if($.byteLength!=O.byteLength||$.byteOffset!=O.byteOffset)return!1;$=$.buffer,O=O.buffer;case gt:return!($.byteLength!=O.byteLength||!Pe(new qa($),new qa(O)));case Re:case De:case He:return Ns(+$,+O);case Le:return $.name==O.name&&$.message==O.message;case ke:case Ke:return $==O+"";case Ye:var Ue=ql;case Ne:var Qe=_e&A;if(Ue||(Ue=Vs),$.size!=O.size&&!Qe)return!1;var vt=je.get($);if(vt)return vt==O;_e|=I,je.set($,O);var Et=ld(Ue($),Ue(O),_e,Ce,Pe,je);return je.delete($),Et;case Xe:if(co)return co.call($)==co.call(O)}return!1}function kp($,O,K,_e,Ce,Pe){var je=K&A,Ue=yl($),Qe=Ue.length,vt=yl(O),Et=vt.length;if(Qe!=Et&&!je)return!1;for(var Tt=Qe;Tt--;){var Dt=Ue[Tt];if(!(je?Dt in O:Rr.call(O,Dt)))return!1}var Ut=Pe.get($),or=Pe.get(O);if(Ut&&or)return Ut==O&&or==$;var Sr=!0;Pe.set($,O),Pe.set(O,$);for(var ir=je;++Tt<Qe;){Dt=Ue[Tt];var Cr=$[Dt],Tr=O[Dt];if(_e)var Jo=je?_e(Tr,Cr,Dt,O,$,Pe):_e(Cr,Tr,Dt,$,O,Pe);if(!(Jo===g?Cr===Tr||Ce(Cr,Tr,K,_e,Pe):Jo)){Sr=!1;break}ir||(ir=Dt=="constructor")}if(Sr&&!ir){var go=$.constructor,Qo=O.constructor;go!=Qo&&"constructor"in $&&"constructor"in O&&!(typeof go=="function"&&go instanceof go&&typeof Qo=="function"&&Qo instanceof Qo)&&(Sr=!1)}return Pe.delete($),Pe.delete(O),Sr}function ys($){return mo(Oc($,g,jc),$+"")}function yl($){return mc($,Nn,zo)}function vl($){return mc($,Ao,Ip)}var Ic=sc?function($){return sc.get($)}:nm;function Pa($){for(var O=$.name+"",K=la[O],_e=Rr.call(la,O)?K.length:0;_e--;){var Ce=K[_e],Pe=Ce.func;if(Pe==null||Pe==$)return Ce.name}return O}function As($){var O=Rr.call(Te,"placeholder")?Te:$;return O.placeholder}function er(){var $=Te.iteratee||tm;return $=$===tm?va:$,arguments.length?$(arguments[0],arguments[1]):$}function bl($,O){var K=$.__data__;return Ra(O)?K[typeof O=="string"?"string":"hash"]:K.map}function El($){for(var O=Nn($),K=O.length;K--;){var _e=O[K],Ce=$[_e];O[K]=[_e,Ce,wl(Ce)]}return O}function ni($,O){var K=Zi($,O);return ju(K)?K:g}function Lc($){var O=Rr.call($,Si),K=$[Si];try{$[Si]=g;var _e=!0}catch(Pe){}var Ce=Va.call($);return _e&&(O?$[Si]=K:delete $[Si]),Ce}var zo=rc?function($){return $==null?[]:($=Dr($),Gs(rc($),function(O){return ec.call($,O)}))}:om,Ip=rc?function($){for(var O=[];$;)Us(O,zo($)),$=Ho($);return O}:om,wn=Sn;(Qa&&wn(new Qa(new ArrayBuffer(1)))!=Ct||wi&&wn(new wi)!=Ye||Xa&&wn(Xa.resolve())!=Oe||qs&&wn(new qs)!=Ne||Za&&wn(new Za)!=xt)&&(wn=function($){var O=Sn($),K=O==rt?$.constructor:g,_e=K?oi(K):"";if(_e)switch(_e){case Lu:return Ct;case Ks:return Ye;case dp:return Oe;case ua:return Ne;case os:return xt}return O});function ud($,O,K){for(var _e=-1,Ce=K.length;++_e<Ce;){var Pe=K[_e],je=Pe.size;switch(Pe.type){case"drop":$+=je;break;case"dropRight":O-=je;break;case"take":O=$n(O,$+je);break;case"takeRight":$=ln($,O-je);break}}return{start:$,end:O}}function Lp($){var O=$.match(En);return O?O[1].split(xo):[]}function dd($,O,K){O=xs(O,$);for(var _e=-1,Ce=O.length,Pe=!1;++_e<Ce;){var je=Vo(O[_e]);if(!(Pe=$!=null&&K($,je)))break;$=$[je]}return Pe||++_e!=Ce?Pe:(Ce=$==null?0:$.length,!!Ce&&Zp(Ce)&&Wr(je,Ce)&&(gr($)||Ll($)))}function Sl($){var O=$.length,K=new $.constructor(O);return O&&typeof $[0]=="string"&&Rr.call($,"index")&&(K.index=$.index,K.input=$.input),K}function Mn($){return typeof $.constructor=="function"&&!Os($)?pa(Ho($)):{}}function $f($,O,K){var _e=$.constructor;switch(O){case gt:return hl($);case Re:case De:return new _e(+$);case Ct:return Sp($,K);case dt:case jt:case Wt:case Xt:case Pt:case zt:case St:case Lt:case Kt:return Mp($,K);case Ye:return new _e;case He:case Ke:return new _e($);case ke:return Cp($);case Ne:return new _e;case Xe:return wp($)}}function kf($,O){var K=O.length;if(!K)return $;var _e=K-1;return O[_e]=(K>1?"& ":"")+O[_e],O=O.join(K>2?", ":" "),$.replace(Wn,`{
295
295
  /* [wrapped with `+O+`] */
296
- `)}function Dc($){return gr($)||Ll($)||!!(lp&&$&&$[lp])}function Wr($,O){var K=typeof $;return O=O==null?ae:O,!!O&&(K=="number"||K!="symbol"&&Er.test($))&&$>-1&&$%1==0&&$<O}function Gn($,O,K){if(!on(K))return!1;var _e=typeof O;return(_e=="number"?Do(K)&&Wr(O,K.length):_e=="string"&&O in K)?Ns(K[O],$):!1}function Ft($,O){if(gr($))return!1;var K=typeof $;return K=="number"||K=="symbol"||K=="boolean"||$==null||Ko($)?!0:Pn.test($)||!Fo.test($)||O!=null&&$ in Dr(O)}function Ra($){var O=typeof $;return O=="string"||O=="number"||O=="symbol"||O=="boolean"?$!=="__proto__":$===null}function Cl($){var O=Pa($),K=Te[O];if(typeof K!="function"||!(O in pr.prototype))return!1;if($===K)return!0;var _e=Ic(K);return!!_e&&$===_e[0]}function Dp($){return!!Ql&&Ql in $}var If=na?zi:sm;function Os($){var O=$&&$.constructor,K=typeof O=="function"&&O.prototype||ns;return $===K}function wl($){return $===$&&!on($)}function Ac($,O){return function(K){return K==null?!1:K[$]===O&&(O!==g||$ in Dr(K))}}function Ap($){var O=nt($,function(_e){return K.size===T&&K.clear(),_e}),K=O.cache;return O}function Op($,O){var K=$[1],_e=O[1],Ce=K|_e,Pe=Ce<(N|z|V),je=_e==V&&K==Y||_e==V&&K==J&&$[7].length<=O[8]||_e==(V|J)&&O[7].length<=O[8]&&K==Y;if(!(Pe||je))return $;_e&N&&($[2]=O[2],Ce|=K&N?0:j);var Ue=O[3];if(Ue){var Qe=$[3];$[3]=Qe?Tp(Qe,Ue,O[4]):Ue,$[4]=Qe?vo($[3],R):O[4]}return Ue=O[5],Ue&&(Qe=$[5],$[5]=Qe?Xu(Qe,Ue,O[6]):Ue,$[6]=Qe?vo($[5],R):O[6]),Ue=O[7],Ue&&($[7]=Ue),_e&V&&($[8]=$[8]==null?O[8]:$n($[8],O[8])),$[9]==null&&($[9]=O[9]),$[0]=O[0],$[1]=Ce,$}function Fp($){var O=[];if($!=null)for(var K in Dr($))O.push(K);return O}function pd($){return Va.call($)}function Oc($,O,K){return O=ln(O===g?$.length-1:O,0),function(){for(var _e=arguments,Ce=-1,Pe=ln(_e.length-O,0),je=at(Pe);++Ce<Pe;)je[Ce]=_e[O+Ce];Ce=-1;for(var Ue=at(O+1);++Ce<O;)Ue[Ce]=_e[Ce];return Ue[O]=K(je),Hn($,this,Ue)}}function gn($,O){return O.length<2?$:Rs($,Fn(O,0,-1))}function Go($,O){for(var K=$.length,_e=$n(O.length,K),Ce=Bn($);_e--;){var Pe=O[_e];$[_e]=Wr(Pe,K)?Ce[Pe]:g}return $}function vs($,O){if(!(O==="constructor"&&typeof $[O]=="function")&&O!="__proto__")return $[O]}var fd=Uo(vc),$a=$u||function($,O){return Ur.setTimeout($,O)},mo=Uo(gs);function hd($,O,K){var _e=O+"";return mo($,kf(_e,Np(Lp(_e),K)))}function Uo($){var O=0,K=0;return function(){var _e=Tf(),Ce=oe-(_e-K);if(K=_e,Ce>0){if(++O>=ie)return arguments[0]}else O=0;return $.apply(g,arguments)}}function Fc($,O){var K=-1,_e=$.length,Ce=_e-1;for(O=O===g?_e:O;++K<O;){var Pe=ba(K,Ce),je=$[Pe];$[Pe]=$[K],$[K]=je}return $.length=O,$}var xd=Ap(function($){var O=[];return $.charCodeAt(0)===46&&O.push(""),$.replace(Fr,function(K,_e,Ce,Pe){O.push(Ce?Pe.replace(No,"$1"):_e||K)}),O});function Vo($){if(typeof $=="string"||Ko($))return $;var O=$+"";return O=="0"&&1/$==-1/0?"-0":O}function oi($){if($!=null){try{return Ua.call($)}catch(O){}try{return $+""}catch(O){}}return""}function Np($,O){return Rn(ve,function(K){var _e="_."+K[0];O&K[1]&&!Ul($,_e)&&$.push(_e)}),$.sort()}function jp($){if($ instanceof pr)return $.clone();var O=new In($.__wrapped__,$.__chain__);return O.__actions__=Bn($.__actions__),O.__index__=$.__index__,O.__values__=$.__values__,O}function Nc($,O,K){(K?Gn($,O,K):O===g)?O=1:O=ln(yr(O),0);var _e=$==null?0:$.length;if(!_e||O<1)return[];for(var Ce=0,Pe=0,je=at(Ci(_e/O));Ce<_e;)je[Pe++]=Fn($,Ce,Ce+=O);return je}function _d($){for(var O=-1,K=$==null?0:$.length,_e=0,Ce=[];++O<K;){var Pe=$[O];Pe&&(Ce[_e++]=Pe)}return Ce}function Io(){var $=arguments.length;if(!$)return[];for(var O=at($-1),K=arguments[0],_e=$;_e--;)O[_e-1]=arguments[_e];return Us(gr(K)?Bn(K):[K],Xr(O,1))}var Mr=_r(function($,O){return fn($)?ps($,Xr(O,1,fn,!0)):[]}),xn=_r(function($,O){var K=Un(O);return fn(K)&&(K=g),fn($)?ps($,Xr(O,1,fn,!0),er(K,2)):[]}),cn=_r(function($,O){var K=Un(O);return fn(K)&&(K=g),fn($)?ps($,Xr(O,1,fn,!0),g,K):[]});function Tn($,O,K){var _e=$==null?0:$.length;return _e?(O=K||O===g?1:yr(O),Fn($,O<0?0:O,_e)):[]}function ho($,O,K){var _e=$==null?0:$.length;return _e?(O=K||O===g?1:yr(O),O=_e-O,Fn($,0,O<0?0:O)):[]}function Ia($,O){return $&&$.length?dl($,er(O,3),!0,!0):[]}function pn($,O){return $&&$.length?dl($,er(O,3),!0):[]}function Ml($,O,K,_e){var Ce=$==null?0:$.length;return Ce?(K&&typeof K!="number"&&Gn($,O,K)&&(K=0,_e=Ce),yp($,O,K,_e)):[]}function ii($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=K==null?0:yr(K);return Ce<0&&(Ce=ln(_e+Ce,0)),Vl($,er(O,3),Ce)}function Tl($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=_e-1;return K!==g&&(Ce=yr(K),Ce=K<0?ln(_e+Ce,0):$n(Ce,_e-1)),Vl($,er(O,3),Ce,!0)}function jc($){var O=$==null?0:$.length;return O?Xr($,1):[]}function Pl($){var O=$==null?0:$.length;return O?Xr($,fe):[]}function to($,O){var K=$==null?0:$.length;return K?(O=O===g?1:yr(O),Xr($,O)):[]}function yd($){for(var O=-1,K=$==null?0:$.length,_e={};++O<K;){var Ce=$[O];_e[Ce[0]]=Ce[1]}return _e}function Fi($){return $&&$.length?$[0]:g}function Fs($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=K==null?0:yr(K);return Ce<0&&(Ce=ln(_e+Ce,0)),Xi($,O,Ce)}function Hc($){var O=$==null?0:$.length;return O?Fn($,0,-1):[]}var vd=_r(function($){var O=Nr($,Ca);return O.length&&O[0]===$[0]?hc(O):[]}),ai=_r(function($){var O=Un($),K=Nr($,Ca);return O===Un(K)?O=g:K.pop(),K.length&&K[0]===$[0]?hc(K,er(O,2)):[]}),Yc=_r(function($){var O=Un($),K=Nr($,Ca);return O=typeof O=="function"?O:g,O&&K.pop(),K.length&&K[0]===$[0]?hc(K,g,O):[]});function li($,O){return $==null?"":nc.call($,O)}function Un($){var O=$==null?0:$.length;return O?$[O-1]:g}function Rl($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=_e;return K!==g&&(Ce=yr(K),Ce=Ce<0?ln(_e+Ce,0):$n(Ce,_e-1)),O===O?Sf($,O,Ce):Vl($,qd,Ce,!0)}function bd($,O){return $&&$.length?yc($,yr(O)):g}var Bc=_r($l);function $l($,O){return $&&$.length&&O&&O.length?Zr($,O):$}function Vn($,O,K){return $&&$.length&&O&&O.length?Zr($,O,er(K,2)):$}function ci($,O,K){return $&&$.length&&O&&O.length?Zr($,O,g,K):$}var Wo=ys(function($,O){var K=$==null?0:$.length,_e=pc($,O);return dn($,Nr(O,function(Ce){return Wr(Ce,K)?+Ce:Ce}).sort(Qu)),_e});function no($,O){var K=[];if(!($&&$.length))return K;var _e=-1,Ce=[],Pe=$.length;for(O=er(O,3);++_e<Pe;){var je=$[_e];O(je,_e,$)&&(K.push(je),Ce.push(_e))}return dn($,Ce),K}function zc($){return $==null?$:oc.call($)}function Ed($,O,K){var _e=$==null?0:$.length;return _e?(K&&typeof K!="number"&&Gn($,O,K)?(O=0,K=_e):(O=O==null?0:yr(O),K=K===g?_e:yr(K)),Fn($,O,K)):[]}function Sd($,O){return Ea($,O)}function Lf($,O,K){return bc($,O,er(K,2))}function ui($,O){var K=$==null?0:$.length;if(K){var _e=Ea($,O);if(_e<K&&Ns($[_e],O))return _e}return-1}function Hp($,O){return Ea($,O,!0)}function Cd($,O,K){return bc($,O,er(K,2),!0)}function Ni($,O){var K=$==null?0:$.length;if(K){var _e=Ea($,O,!0)-1;if(Ns($[_e],O))return _e}return-1}function wd($){return $&&$.length?Vu($):[]}function ji($,O){return $&&$.length?Vu($,er(O,2)):[]}function Yp($){var O=$==null?0:$.length;return O?Fn($,1,O):[]}function Bp($,O,K){return $&&$.length?(O=K||O===g?1:yr(O),Fn($,0,O<0?0:O)):[]}function Md($,O,K){var _e=$==null?0:$.length;return _e?(O=K||O===g?1:yr(O),O=_e-O,Fn($,O<0?0:O,_e)):[]}function Gc($,O){return $&&$.length?dl($,er(O,3),!1,!0):[]}function Df($,O){return $&&$.length?dl($,er(O,3)):[]}var Af=_r(function($){return Ls(Xr($,1,fn,!0))}),zp=_r(function($){var O=Un($);return fn(O)&&(O=g),Ls(Xr($,1,fn,!0),er(O,2))}),Gp=_r(function($){var O=Un($);return O=typeof O=="function"?O:g,Ls(Xr($,1,fn,!0),g,O)});function Hi($){return $&&$.length?Ls($):[]}function Of($,O){return $&&$.length?Ls($,er(O,2)):[]}function La($,O){return O=typeof O=="function"?O:g,$&&$.length?Ls($,g,O):[]}function Uc($){if(!($&&$.length))return[];var O=0;return $=Gs($,function(K){if(fn(K))return O=ln(K.length,O),!0}),wu(O,function(K){return Nr($,Su(K))})}function Jr($,O){if(!($&&$.length))return[];var K=Uc($);return O==null?K:Nr(K,function(_e){return Hn(O,g,_e)})}var Ff=_r(function($,O){return fn($)?ps($,O):[]}),Up=_r(function($){return Sc(Gs($,fn))}),Nf=_r(function($){var O=Un($);return fn(O)&&(O=g),Sc(Gs($,fn),er(O,2))}),jf=_r(function($){var O=Un($);return O=typeof O=="function"?O:g,Sc(Gs($,fn),g,O)}),Vp=_r(Uc);function Wp($,O){return fl($||[],O||[],Ri)}function Hf($,O){return fl($||[],O||[],Di)}var Lo=_r(function($){var O=$.length,K=O>1?$[O-1]:g;return K=typeof K=="function"?($.pop(),K):g,Jr($,K)});function Vc($){var O=Te($);return O.__chain__=!0,O}function Yf($,O){return O($),$}function qo($,O){return O($)}var Wc=ys(function($){var O=$.length,K=O?$[0]:0,_e=this.__wrapped__,Ce=function(Pe){return pc(Pe,$)};return O>1||this.__actions__.length||!(_e instanceof pr)||!Wr(K)?this.thru(Ce):(_e=_e.slice(K,+K+(O?1:0)),_e.__actions__.push({func:qo,args:[Ce],thisArg:g}),new In(_e,this.__chain__).thru(function(Pe){return O&&!Pe.length&&Pe.push(g),Pe}))});function Yi(){return Vc(this)}function qc(){return new In(this.value(),this.__chain__)}function Td(){this.__values__===g&&(this.__values__=fm(this.value()));var $=this.__index__>=this.__values__.length,O=$?g:this.__values__[this.__index__++];return{done:$,value:O}}function Pd(){return this}function Bf($){for(var O,K=this;K instanceof as;){var _e=jp(K);_e.__index__=0,_e.__values__=g,O?Ce.__wrapped__=_e:O=_e;var Ce=_e;K=K.__wrapped__}return Ce.__wrapped__=$,O}function Rd(){var $=this.__wrapped__;if($ instanceof pr){var O=$;return this.__actions__.length&&(O=new pr(this)),O=O.reverse(),O.__actions__.push({func:qo,args:[zc],thisArg:g}),new In(O,this.__chain__)}return this.thru(zc)}function zf(){return Sa(this.__wrapped__,this.__actions__)}var qp=Mc(function($,O,K){Rr.call($,K)?++$[K]:ds($,K,1)});function Kp($,O,K){var _e=gr($)?_u:ol;return K&&Gn($,O,K)&&(O=g),_e($,er(O,3))}function Kc($,O){var K=gr($)?Gs:Fu;return K($,er(O,3))}var Jc=Oi(ii),Jp=Oi(Tl);function $d($,O){return Xr(Bi($,O),1)}function Gf($,O){return Xr(Bi($,O),fe)}function Qp($,O,K){return K=K===g?1:yr(K),Xr(Bi($,O),K)}function Qc($,O){var K=gr($)?Rn:fs;return K($,er(O,3))}function kl($,O){var K=gr($)?Gl:_p;return K($,er(O,3))}var kd=Mc(function($,O,K){Rr.call($,K)?$[K].push(O):ds($,K,[O])});function Xc($,O,K,_e){$=Do($)?$:nu($),K=K&&!_e?yr(K):0;var Ce=$.length;return K<0&&(K=ln(Ce+K,0)),ef($)?K<=Ce&&$.indexOf(O,K)>-1:!!Ce&&Xi($,O,K)>-1}var Xp=_r(function($,O,K){var _e=-1,Ce=typeof O=="function",Pe=Do($)?at($.length):[];return fs($,function(je){Pe[++_e]=Ce?Hn(O,je,K):To(je,O,K)}),Pe}),Uf=Mc(function($,O,K){ds($,K,O)});function Bi($,O){var K=gr($)?Nr:Yu;return K($,er(O,3))}function Vf($,O,K,_e){return $==null?[]:(gr(O)||(O=O==null?[]:[O]),K=_e?g:K,gr(K)||(K=K==null?[]:[K]),cl($,O,K))}var Il=Mc(function($,O,K){$[K?0:1].push(O)},function(){return[[],[]]});function Wf($,O,K){var _e=gr($)?vu:Jd,Ce=arguments.length<3;return _e($,er(O,4),K,Ce,fs)}function Zc($,O,K){var _e=gr($)?hf:Jd,Ce=arguments.length<3;return _e($,er(O,4),K,Ce,_p)}function M($,O){var K=gr($)?Gs:Fu;return K($,kt(er(O,3)))}function P($){var O=gr($)?us:On;return O($)}function F($,O,K){(K?Gn($,O,K):O===g)?O=1:O=yr(O);var _e=gr($)?Pi:Gu;return _e($,O)}function q($){var O=gr($)?gp:Ro;return O($)}function le($){if($==null)return 0;if(Do($))return ef($)?Ei($):$.length;var O=wn($);return O==Ye||O==Ne?$.size:Is($).length}function xe($,O,K){var _e=gr($)?bu:Uu;return K&&Gn($,O,K)&&(O=g),_e($,er(O,3))}var we=_r(function($,O){if($==null)return[];var K=O.length;return K>1&&Gn($,O[0],O[1])?O=[]:K>2&&Gn(O[0],O[1],O[2])&&(O=[O[0]]),cl($,Xr(O,1),[])}),Ae=Hr||function(){return Ur.Date.now()};function ze($,O){if(typeof O!="function")throw new Eo(v);return $=yr($),function(){if(--$<1)return O.apply(this,arguments)}}function ct($,O,K){return O=K?g:O,O=$&&O==null?$.length:O,_s($,V,g,g,g,g,O)}function Mt($,O){var K;if(typeof O!="function")throw new Eo(v);return $=yr($),function(){return--$>0&&(K=O.apply(this,arguments)),$<=1&&(O=g),K}}var Rt=_r(function($,O,K){var _e=N;if(K.length){var Ce=vo(K,As(Rt));_e|=U}return _s($,_e,O,K,Ce)}),wt=_r(function($,O,K){var _e=N|z;if(K.length){var Ce=vo(K,As(wt));_e|=U}return _s(O,_e,$,K,Ce)});function Ot($,O,K){O=K?g:O;var _e=_s($,Y,g,g,g,g,g,O);return _e.placeholder=Ot.placeholder,_e}function Nt($,O,K){O=K?g:O;var _e=_s($,B,g,g,g,g,g,O);return _e.placeholder=Nt.placeholder,_e}function Ht($,O,K){var _e,Ce,Pe,je,Ue,Qe,yt=0,Et=!1,Tt=!1,Dt=!0;if(typeof $!="function")throw new Eo(v);O=Es(O)||0,on(K)&&(Et=!!K.leading,Tt="maxWait"in K,Pe=Tt?ln(Es(K.maxWait)||0,O):Pe,Dt="trailing"in K?!!K.trailing:Dt);function Ut(hn){var js=_e,Ui=Ce;return _e=Ce=g,yt=hn,je=$.apply(Ui,js),je}function or(hn){return yt=hn,Ue=$a(Cr,O),Et?Ut(hn):je}function Sr(hn){var js=hn-Qe,Ui=hn-yt,Tm=O-js;return Tt?$n(Tm,Pe-Ui):Tm}function ir(hn){var js=hn-Qe,Ui=hn-yt;return Qe===g||js>=O||js<0||Tt&&Ui>=Pe}function Cr(){var hn=Ae();if(ir(hn))return Tr(hn);Ue=$a(Cr,Sr(hn))}function Tr(hn){return Ue=g,Dt&&_e?Ut(hn):(_e=Ce=g,je)}function Jo(){Ue!==g&&Ku(Ue),yt=0,_e=Qe=Ce=Ue=g}function go(){return Ue===g?je:Tr(Ae())}function Qo(){var hn=Ae(),js=ir(hn);if(_e=arguments,Ce=this,Qe=hn,js){if(Ue===g)return or(Qe);if(Tt)return Ku(Ue),Ue=$a(Cr,O),Ut(Qe)}return Ue===g&&(Ue=$a(Cr,O)),je}return Qo.cancel=Jo,Qo.flush=go,Qo}var tn=_r(function($,O){return Ou($,1,O)}),Ze=_r(function($,O,K){return Ou($,Es(O)||0,K)});function We($){return _s($,Q)}function nt($,O){if(typeof $!="function"||O!=null&&typeof O!="function")throw new Eo(v);var K=function(){var _e=arguments,Ce=O?O.apply(this,_e):_e[0],Pe=K.cache;if(Pe.has(Ce))return Pe.get(Ce);var je=$.apply(this,_e);return K.cache=Pe.set(Ce,je)||Pe,je};return K.cache=new(nt.Cache||So),K}nt.Cache=So;function kt($){if(typeof $!="function")throw new Eo(v);return function(){var O=arguments;switch(O.length){case 0:return!$.call(this);case 1:return!$.call(this,O[0]);case 2:return!$.call(this,O[0],O[1]);case 3:return!$.call(this,O[0],O[1],O[2])}return!$.apply(this,O)}}function Bt($){return Mt(2,$)}var Qt=Ep(function($,O){O=O.length==1&&gr(O[0])?Nr(O[0],io(er())):Nr(Xr(O,1),io(er()));var K=O.length;return _r(function(_e){for(var Ce=-1,Pe=$n(_e.length,K);++Ce<Pe;)_e[Ce]=O[Ce].call(this,_e[Ce]);return Hn($,this,_e)})}),qt=_r(function($,O){var K=vo(O,As(qt));return _s($,U,g,O,K)}),nr=_r(function($,O){var K=vo(O,As(nr));return _s($,W,g,O,K)}),_n=ys(function($,O){return _s($,J,g,g,g,O)});function $r($,O){if(typeof $!="function")throw new Eo(v);return O=O===g?O:yr(O),_r($,O)}function di($,O){if(typeof $!="function")throw new Eo(v);return O=O==null?0:ln(yr(O),0),_r(function(K){var _e=K[O],Ce=Ds(K,0,O);return _e&&Us(Ce,_e),Hn($,this,Ce)})}function qf($,O,K){var _e=!0,Ce=!0;if(typeof $!="function")throw new Eo(v);return on(K)&&(_e="leading"in K?!!K.leading:_e,Ce="trailing"in K?!!K.trailing:Ce),Ht($,O,{leading:_e,maxWait:O,trailing:Ce})}function Fm($){return ct($,1)}function Nm($,O){return qt(Cc(O),$)}function jm(){if(!arguments.length)return[];var $=arguments[0];return gr($)?$:[$]}function Hm($){return Xn($,D)}function Ym($,O){return O=typeof O=="function"?O:g,Xn($,D,O)}function Bm($){return Xn($,k|D)}function zm($,O){return O=typeof O=="function"?O:g,Xn($,k|D,O)}function Gm($,O){return O==null||rl($,O,Nn(O))}function Ns($,O){return $===O||$!==$&&O!==O}var Um=kc(ei),Vm=kc(function($,O){return $>=O}),Ll=gc(function(){return arguments}())?gc:function($){return un($)&&Rr.call($,"callee")&&!ec.call($,"callee")},gr=at.isArray,Wm=mu?io(mu):vp;function Do($){return $!=null&&Zp($.length)&&!zi($)}function fn($){return un($)&&Do($)}function qm($){return $===!0||$===!1||un($)&&Sn($)==Re}var Da=Iu||sm,Km=qn?io(qn):ks;function Jm($){return un($)&&$.nodeType===1&&!Id($)}function Qm($){if($==null)return!0;if(Do($)&&(gr($)||typeof $=="string"||typeof $.splice=="function"||Da($)||tu($)||Ll($)))return!$.length;var O=wn($);if(O==Ye||O==Ne)return!$.size;if(Os($))return!Is($).length;for(var K in $)if(Rr.call($,K))return!1;return!0}function Xm($,O){return Po($,O)}function Zm($,O,K){K=typeof K=="function"?K:g;var _e=K?K($,O):g;return _e===g?Po($,O,g,K):!!_e}function Kf($){if(!un($))return!1;var O=Sn($);return O==Le||O==Be||typeof $.message=="string"&&typeof $.name=="string"&&!Id($)}function eh($){return typeof $=="number"&&sa($)}function zi($){if(!on($))return!1;var O=Sn($);return O==Ge||O==Ie||O==Me||O==ot}function cm($){return typeof $=="number"&&$==yr($)}function Zp($){return typeof $=="number"&&$>-1&&$%1==0&&$<=ae}function on($){var O=typeof $;return $!=null&&(O=="object"||O=="function")}function un($){return $!=null&&typeof $=="object"}var um=yi?io(yi):bp;function rh($,O){return $===O||ya($,O,El(O))}function nh($,O,K){return K=typeof K=="function"?K:g,ya($,O,El(O),K)}function oh($){return dm($)&&$!=+$}function sh($){if(If($))throw new cr(E);return ju($)}function ih($){return $===null}function ah($){return $==null}function dm($){return typeof $=="number"||un($)&&Sn($)==He}function Id($){if(!un($)||Sn($)!=rt)return!1;var O=Ho($);if(O===null)return!0;var K=Rr.call(O,"constructor")&&O.constructor;return typeof K=="function"&&K instanceof K&&Ua.call(K)==Xl}var Jf=zl?io(zl):al;function lh($){return cm($)&&$>=-9007199254740991&&$<=ae}var pm=Qi?io(Qi):hs;function ef($){return typeof $=="string"||!gr($)&&un($)&&Sn($)==Ke}function Ko($){return typeof $=="symbol"||un($)&&Sn($)==Xe}var tu=Ud?io(Ud):ll;function ch($){return $===g}function uh($){return un($)&&wn($)==xt}function dh($){return un($)&&Sn($)==Je}var ph=kc(ti),fh=kc(function($,O){return $<=O});function fm($){if(!$)return[];if(Do($))return ef($)?ao($):Bn($);if(Ms&&$[Ms])return bf($[Ms]());var O=wn($),K=O==Ye?ql:O==Ne?Vs:nu;return K($)}function Gi($){if(!$)return $===0?$:0;if($=Es($),$===fe||$===-1/0){var O=$<0?-1:1;return O*ue}return $===$?$:0}function yr($){var O=Gi($),K=O%1;return O===O?K?O-K:O:0}function mm($){return $?Ps(yr($),0,ge):0}function Es($){if(typeof $=="number")return $;if(Ko($))return pe;if(on($)){var O=typeof $.valueOf=="function"?$.valueOf():$;$=on(O)?O+"":O}if(typeof $!="string")return $===0?$:+$;$=Qd($);var K=Gt.test($);return K||Yt.test($)?Yl($.slice(2),K?2:8):It.test($)?pe:+$}function hm($){return Bo($,Ao($))}function mh($){return $?Ps(yr($),-9007199254740991,ae):$===0?$:0}function Ar($){return $==null?"":Zn($)}var hh=wa(function($,O){if(Os(O)||Do(O)){Bo(O,Nn(O),$);return}for(var K in O)Rr.call(O,K)&&Ri($,K,O[K])}),gm=wa(function($,O){Bo(O,Ao(O),$)}),tf=wa(function($,O,K,_e){Bo(O,Ao(O),$,_e)}),gh=wa(function($,O,K,_e){Bo(O,Nn(O),$,_e)}),xh=ys(pc);function _h($,O){var K=pa($);return O==null?K:Br(K,O)}var yh=_r(function($,O){$=Dr($);var K=-1,_e=O.length,Ce=_e>2?O[2]:g;for(Ce&&Gn(O[0],O[1],Ce)&&(_e=1);++K<_e;)for(var Pe=O[K],je=Ao(Pe),Ue=-1,Qe=je.length;++Ue<Qe;){var yt=je[Ue],Et=$[yt];(Et===g||Ns(Et,ns[yt])&&!Rr.call($,yt))&&($[yt]=Pe[yt])}return $}),vh=_r(function($){return $.push(g,od),Hn(xm,g,$)});function bh($,O){return Wd($,er(O,3),po)}function Eh($,O){return Wd($,er(O,3),Zs)}function Sh($,O){return $==null?$:fc($,er(O,3),Ao)}function Ch($,O){return $==null?$:il($,er(O,3),Ao)}function wh($,O){return $&&po($,er(O,3))}function Mh($,O){return $&&Zs($,er(O,3))}function Th($){return $==null?[]:_a($,Nn($))}function Ph($){return $==null?[]:_a($,Ao($))}function Qf($,O,K){var _e=$==null?g:Rs($,O);return _e===g?K:_e}function Rh($,O){return $!=null&&dd($,O,Mo)}function Xf($,O){return $!=null&&dd($,O,ki)}var $h=Pp(function($,O,K){O!=null&&typeof O.toString!="function"&&(O=Va.call(O)),$[O]=K},em(Oo)),kh=Pp(function($,O,K){O!=null&&typeof O.toString!="function"&&(O=Va.call(O)),Rr.call($,O)?$[O].push(K):$[O]=[K]},er),Ih=_r(To);function Nn($){return Do($)?ls($):Is($)}function Ao($){return Do($)?ls($,!0):Hu($)}function Lh($,O){var K={};return O=er(O,3),po($,function(_e,Ce,Pe){ds(K,O(_e,Ce,Pe),_e)}),K}function Dh($,O){var K={};return O=er(O,3),po($,function(_e,Ce,Pe){ds(K,Ce,O(_e,Ce,Pe))}),K}var Ah=wa(function($,O,K){Ii($,O,K)}),xm=wa(function($,O,K,_e){Ii($,O,K,_e)}),Oh=ys(function($,O){var K={};if($==null)return K;var _e=!1;O=Nr(O,function(Pe){return Pe=xs(Pe,$),_e||(_e=Pe.length>1),Pe}),Bo($,vl($),K),_e&&(K=Xn(K,k|L|D,ad));for(var Ce=O.length;Ce--;)Ec(K,O[Ce]);return K});function Fh($,O){return _m($,kt(er(O)))}var Nh=ys(function($,O){return $==null?{}:zu($,O)});function _m($,O){if($==null)return{};var K=Nr(vl($),function(_e){return[_e]});return O=er(O),ri($,K,function(_e,Ce){return O(_e,Ce[0])})}function jh($,O,K){O=xs(O,$);var _e=-1,Ce=O.length;for(Ce||(Ce=1,$=g);++_e<Ce;){var Pe=$==null?g:$[Vo(O[_e])];Pe===g&&(_e=Ce,Pe=K),$=zi(Pe)?Pe.call($):Pe}return $}function Hh($,O,K){return $==null?$:Di($,O,K)}function Yh($,O,K,_e){return _e=typeof _e=="function"?_e:g,$==null?$:Di($,O,K,_e)}var ym=rd(Nn),vm=rd(Ao);function Bh($,O,K){var _e=gr($),Ce=_e||Da($)||tu($);if(O=er(O,4),K==null){var Pe=$&&$.constructor;Ce?K=_e?new Pe:[]:on($)?K=zi(Pe)?pa(Ho($)):{}:K={}}return(Ce?Rn:po)($,function(je,Ue,Qe){return O(K,je,Ue,Qe)}),K}function Gh($,O){return $==null?!0:Ec($,O)}function Uh($,O,K){return $==null?$:qu($,O,Cc(K))}function Vh($,O,K,_e){return _e=typeof _e=="function"?_e:g,$==null?$:qu($,O,Cc(K),_e)}function nu($){return $==null?[]:za($,Nn($))}function Wh($){return $==null?[]:za($,Ao($))}function qh($,O,K){return K===g&&(K=O,O=g),K!==g&&(K=Es(K),K=K===K?K:0),O!==g&&(O=Es(O),O=O===O?O:0),Ps(Es($),O,K)}function Kh($,O,K){return O=Gi(O),K===g?(K=O,O=0):K=Gi(K),$=Es($),Nu($,O,K)}function Jh($,O,K){if(K&&typeof K!="boolean"&&Gn($,O,K)&&(O=K=g),K===g&&(typeof O=="boolean"?(K=O,O=g):typeof $=="boolean"&&(K=$,$=g)),$===g&&O===g?($=0,O=1):($=Gi($),O===g?(O=$,$=0):O=Gi(O)),$>O){var _e=$;$=O,O=_e}if(K||$%1||O%1){var Ce=Ja();return $n($+Ce*(O-$+pu("1e-"+((Ce+"").length-1))),O)}return ba($,O)}var Qh=Ai(function($,O,K){return O=O.toLowerCase(),$+(K?Em(O):O)});function Em($){return Zf(Ar($).toLowerCase())}function Sm($){return $=Ar($),$&&$.replace(so,ep).replace(Yd,"")}function Xh($,O,K){$=Ar($),O=Zn(O);var _e=$.length;K=K===g?_e:Ps(yr(K),0,_e);var Ce=K;return K-=O.length,K>=0&&$.slice(K,Ce)==O}function Zh($){return $=Ar($),$&&xr.test($)?$.replace(rr,tp):$}function eg($){return $=Ar($),$&&zr.test($)?$.replace(wr,"\\$&"):$}var rg=Ai(function($,O,K){return $+(K?"-":"")+O.toLowerCase()}),ng=Ai(function($,O,K){return $+(K?" ":"")+O.toLowerCase()}),og=Zu("toLowerCase");function sg($,O,K){$=Ar($),O=yr(O);var _e=O?Ei($):0;if(!O||_e>=O)return $;var Ce=(O-_e)/2;return _l(Ws(Ce),K)+$+_l(Ci(Ce),K)}function ig($,O,K){$=Ar($),O=yr(O);var _e=O?Ei($):0;return O&&_e<O?$+_l(O-_e,K):$}function ag($,O,K){$=Ar($),O=yr(O);var _e=O?Ei($):0;return O&&_e<O?_l(O-_e,K)+$:$}function lg($,O,K){return K||O==null?O=0:O&&(O=+O),up(Ar($).replace(sn,""),O||0)}function cg($,O,K){return(K?Gn($,O,K):O===g)?O=1:O=yr(O),Li(Ar($),O)}function ug(){var $=arguments,O=Ar($[0]);return $.length<3?O:O.replace($[1],$[2])}var dg=Ai(function($,O,K){return $+(K?"_":"")+O.toLowerCase()});function pg($,O,K){return K&&typeof K!="number"&&Gn($,O,K)&&(O=K=g),K=K===g?ge:K>>>0,K?($=Ar($),$&&(typeof O=="string"||O!=null&&!Jf(O))&&(O=Zn(O),!O&&ea($))?Ds(ao($),0,K):$.split(O,K)):[]}var fg=Ai(function($,O,K){return $+(K?" ":"")+Zf(O)});function mg($,O,K){return $=Ar($),K=K==null?0:Ps(yr(K),0,$.length),O=Zn(O),$.slice(K,K+O.length)==O}function hg($,O,K){var _e=Te.templateSettings;K&&Gn($,O,K)&&(O=g),$=Ar($),O=tf({},O,_e,nd);var Ce=tf({},O.imports,_e.imports,nd),Pe=Nn(Ce),je=za(Ce,Pe),Ue,Qe,yt=0,Et=O.interpolate||pi,Tt="__p += '",Dt=Ga((O.escape||pi).source+"|"+Et.source+"|"+(Et===Qr?ut:pi).source+"|"+(O.evaluate||pi).source+"|$","g"),Ut="//# sourceURL="+(Rr.call(O,"sourceURL")?(O.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++pf+"]")+`
297
- `;$.replace(Dt,function(ir,Cr,Tr,Jo,go,Qo){return Tr||(Tr=Jo),Tt+=$.slice(yt,Qo).replace(of,rp),Cr&&(Ue=!0,Tt+=`' +
296
+ `)}function Dc($){return gr($)||Ll($)||!!(lp&&$&&$[lp])}function Wr($,O){var K=typeof $;return O=O==null?ae:O,!!O&&(K=="number"||K!="symbol"&&Er.test($))&&$>-1&&$%1==0&&$<O}function Gn($,O,K){if(!on(K))return!1;var _e=typeof O;return(_e=="number"?Do(K)&&Wr(O,K.length):_e=="string"&&O in K)?Ns(K[O],$):!1}function Ft($,O){if(gr($))return!1;var K=typeof $;return K=="number"||K=="symbol"||K=="boolean"||$==null||Ko($)?!0:Pn.test($)||!Fo.test($)||O!=null&&$ in Dr(O)}function Ra($){var O=typeof $;return O=="string"||O=="number"||O=="symbol"||O=="boolean"?$!=="__proto__":$===null}function Cl($){var O=Pa($),K=Te[O];if(typeof K!="function"||!(O in pr.prototype))return!1;if($===K)return!0;var _e=Ic(K);return!!_e&&$===_e[0]}function Dp($){return!!Ql&&Ql in $}var If=na?zi:sm;function Os($){var O=$&&$.constructor,K=typeof O=="function"&&O.prototype||ns;return $===K}function wl($){return $===$&&!on($)}function Ac($,O){return function(K){return K==null?!1:K[$]===O&&(O!==g||$ in Dr(K))}}function Ap($){var O=nt($,function(_e){return K.size===T&&K.clear(),_e}),K=O.cache;return O}function Op($,O){var K=$[1],_e=O[1],Ce=K|_e,Pe=Ce<(N|z|V),je=_e==V&&K==Y||_e==V&&K==J&&$[7].length<=O[8]||_e==(V|J)&&O[7].length<=O[8]&&K==Y;if(!(Pe||je))return $;_e&N&&($[2]=O[2],Ce|=K&N?0:j);var Ue=O[3];if(Ue){var Qe=$[3];$[3]=Qe?Tp(Qe,Ue,O[4]):Ue,$[4]=Qe?vo($[3],R):O[4]}return Ue=O[5],Ue&&(Qe=$[5],$[5]=Qe?Xu(Qe,Ue,O[6]):Ue,$[6]=Qe?vo($[5],R):O[6]),Ue=O[7],Ue&&($[7]=Ue),_e&V&&($[8]=$[8]==null?O[8]:$n($[8],O[8])),$[9]==null&&($[9]=O[9]),$[0]=O[0],$[1]=Ce,$}function Fp($){var O=[];if($!=null)for(var K in Dr($))O.push(K);return O}function pd($){return Va.call($)}function Oc($,O,K){return O=ln(O===g?$.length-1:O,0),function(){for(var _e=arguments,Ce=-1,Pe=ln(_e.length-O,0),je=at(Pe);++Ce<Pe;)je[Ce]=_e[O+Ce];Ce=-1;for(var Ue=at(O+1);++Ce<O;)Ue[Ce]=_e[Ce];return Ue[O]=K(je),Hn($,this,Ue)}}function gn($,O){return O.length<2?$:Rs($,Fn(O,0,-1))}function Go($,O){for(var K=$.length,_e=$n(O.length,K),Ce=Bn($);_e--;){var Pe=O[_e];$[_e]=Wr(Pe,K)?Ce[Pe]:g}return $}function vs($,O){if(!(O==="constructor"&&typeof $[O]=="function")&&O!="__proto__")return $[O]}var fd=Uo(vc),$a=$u||function($,O){return Ur.setTimeout($,O)},mo=Uo(gs);function hd($,O,K){var _e=O+"";return mo($,kf(_e,Np(Lp(_e),K)))}function Uo($){var O=0,K=0;return function(){var _e=Tf(),Ce=oe-(_e-K);if(K=_e,Ce>0){if(++O>=ie)return arguments[0]}else O=0;return $.apply(g,arguments)}}function Fc($,O){var K=-1,_e=$.length,Ce=_e-1;for(O=O===g?_e:O;++K<O;){var Pe=ba(K,Ce),je=$[Pe];$[Pe]=$[K],$[K]=je}return $.length=O,$}var xd=Ap(function($){var O=[];return $.charCodeAt(0)===46&&O.push(""),$.replace(Fr,function(K,_e,Ce,Pe){O.push(Ce?Pe.replace(No,"$1"):_e||K)}),O});function Vo($){if(typeof $=="string"||Ko($))return $;var O=$+"";return O=="0"&&1/$==-1/0?"-0":O}function oi($){if($!=null){try{return Ua.call($)}catch(O){}try{return $+""}catch(O){}}return""}function Np($,O){return Rn(ve,function(K){var _e="_."+K[0];O&K[1]&&!Ul($,_e)&&$.push(_e)}),$.sort()}function jp($){if($ instanceof pr)return $.clone();var O=new In($.__wrapped__,$.__chain__);return O.__actions__=Bn($.__actions__),O.__index__=$.__index__,O.__values__=$.__values__,O}function Nc($,O,K){(K?Gn($,O,K):O===g)?O=1:O=ln(yr(O),0);var _e=$==null?0:$.length;if(!_e||O<1)return[];for(var Ce=0,Pe=0,je=at(Ci(_e/O));Ce<_e;)je[Pe++]=Fn($,Ce,Ce+=O);return je}function _d($){for(var O=-1,K=$==null?0:$.length,_e=0,Ce=[];++O<K;){var Pe=$[O];Pe&&(Ce[_e++]=Pe)}return Ce}function Io(){var $=arguments.length;if(!$)return[];for(var O=at($-1),K=arguments[0],_e=$;_e--;)O[_e-1]=arguments[_e];return Us(gr(K)?Bn(K):[K],Xr(O,1))}var Mr=_r(function($,O){return fn($)?ps($,Xr(O,1,fn,!0)):[]}),xn=_r(function($,O){var K=Un(O);return fn(K)&&(K=g),fn($)?ps($,Xr(O,1,fn,!0),er(K,2)):[]}),cn=_r(function($,O){var K=Un(O);return fn(K)&&(K=g),fn($)?ps($,Xr(O,1,fn,!0),g,K):[]});function Tn($,O,K){var _e=$==null?0:$.length;return _e?(O=K||O===g?1:yr(O),Fn($,O<0?0:O,_e)):[]}function ho($,O,K){var _e=$==null?0:$.length;return _e?(O=K||O===g?1:yr(O),O=_e-O,Fn($,0,O<0?0:O)):[]}function Ia($,O){return $&&$.length?dl($,er(O,3),!0,!0):[]}function pn($,O){return $&&$.length?dl($,er(O,3),!0):[]}function Ml($,O,K,_e){var Ce=$==null?0:$.length;return Ce?(K&&typeof K!="number"&&Gn($,O,K)&&(K=0,_e=Ce),yp($,O,K,_e)):[]}function ii($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=K==null?0:yr(K);return Ce<0&&(Ce=ln(_e+Ce,0)),Vl($,er(O,3),Ce)}function Tl($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=_e-1;return K!==g&&(Ce=yr(K),Ce=K<0?ln(_e+Ce,0):$n(Ce,_e-1)),Vl($,er(O,3),Ce,!0)}function jc($){var O=$==null?0:$.length;return O?Xr($,1):[]}function Pl($){var O=$==null?0:$.length;return O?Xr($,fe):[]}function to($,O){var K=$==null?0:$.length;return K?(O=O===g?1:yr(O),Xr($,O)):[]}function yd($){for(var O=-1,K=$==null?0:$.length,_e={};++O<K;){var Ce=$[O];_e[Ce[0]]=Ce[1]}return _e}function Fi($){return $&&$.length?$[0]:g}function Fs($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=K==null?0:yr(K);return Ce<0&&(Ce=ln(_e+Ce,0)),Xi($,O,Ce)}function Hc($){var O=$==null?0:$.length;return O?Fn($,0,-1):[]}var vd=_r(function($){var O=Nr($,Ca);return O.length&&O[0]===$[0]?hc(O):[]}),ai=_r(function($){var O=Un($),K=Nr($,Ca);return O===Un(K)?O=g:K.pop(),K.length&&K[0]===$[0]?hc(K,er(O,2)):[]}),Yc=_r(function($){var O=Un($),K=Nr($,Ca);return O=typeof O=="function"?O:g,O&&K.pop(),K.length&&K[0]===$[0]?hc(K,g,O):[]});function li($,O){return $==null?"":nc.call($,O)}function Un($){var O=$==null?0:$.length;return O?$[O-1]:g}function Rl($,O,K){var _e=$==null?0:$.length;if(!_e)return-1;var Ce=_e;return K!==g&&(Ce=yr(K),Ce=Ce<0?ln(_e+Ce,0):$n(Ce,_e-1)),O===O?Sf($,O,Ce):Vl($,qd,Ce,!0)}function bd($,O){return $&&$.length?yc($,yr(O)):g}var Bc=_r($l);function $l($,O){return $&&$.length&&O&&O.length?Zr($,O):$}function Vn($,O,K){return $&&$.length&&O&&O.length?Zr($,O,er(K,2)):$}function ci($,O,K){return $&&$.length&&O&&O.length?Zr($,O,g,K):$}var Wo=ys(function($,O){var K=$==null?0:$.length,_e=pc($,O);return dn($,Nr(O,function(Ce){return Wr(Ce,K)?+Ce:Ce}).sort(Qu)),_e});function no($,O){var K=[];if(!($&&$.length))return K;var _e=-1,Ce=[],Pe=$.length;for(O=er(O,3);++_e<Pe;){var je=$[_e];O(je,_e,$)&&(K.push(je),Ce.push(_e))}return dn($,Ce),K}function zc($){return $==null?$:oc.call($)}function Ed($,O,K){var _e=$==null?0:$.length;return _e?(K&&typeof K!="number"&&Gn($,O,K)?(O=0,K=_e):(O=O==null?0:yr(O),K=K===g?_e:yr(K)),Fn($,O,K)):[]}function Sd($,O){return Ea($,O)}function Lf($,O,K){return bc($,O,er(K,2))}function ui($,O){var K=$==null?0:$.length;if(K){var _e=Ea($,O);if(_e<K&&Ns($[_e],O))return _e}return-1}function Hp($,O){return Ea($,O,!0)}function Cd($,O,K){return bc($,O,er(K,2),!0)}function Ni($,O){var K=$==null?0:$.length;if(K){var _e=Ea($,O,!0)-1;if(Ns($[_e],O))return _e}return-1}function wd($){return $&&$.length?Vu($):[]}function ji($,O){return $&&$.length?Vu($,er(O,2)):[]}function Yp($){var O=$==null?0:$.length;return O?Fn($,1,O):[]}function Bp($,O,K){return $&&$.length?(O=K||O===g?1:yr(O),Fn($,0,O<0?0:O)):[]}function Md($,O,K){var _e=$==null?0:$.length;return _e?(O=K||O===g?1:yr(O),O=_e-O,Fn($,O<0?0:O,_e)):[]}function Gc($,O){return $&&$.length?dl($,er(O,3),!1,!0):[]}function Df($,O){return $&&$.length?dl($,er(O,3)):[]}var Af=_r(function($){return Ls(Xr($,1,fn,!0))}),zp=_r(function($){var O=Un($);return fn(O)&&(O=g),Ls(Xr($,1,fn,!0),er(O,2))}),Gp=_r(function($){var O=Un($);return O=typeof O=="function"?O:g,Ls(Xr($,1,fn,!0),g,O)});function Hi($){return $&&$.length?Ls($):[]}function Of($,O){return $&&$.length?Ls($,er(O,2)):[]}function La($,O){return O=typeof O=="function"?O:g,$&&$.length?Ls($,g,O):[]}function Uc($){if(!($&&$.length))return[];var O=0;return $=Gs($,function(K){if(fn(K))return O=ln(K.length,O),!0}),wu(O,function(K){return Nr($,Su(K))})}function Jr($,O){if(!($&&$.length))return[];var K=Uc($);return O==null?K:Nr(K,function(_e){return Hn(O,g,_e)})}var Ff=_r(function($,O){return fn($)?ps($,O):[]}),Up=_r(function($){return Sc(Gs($,fn))}),Nf=_r(function($){var O=Un($);return fn(O)&&(O=g),Sc(Gs($,fn),er(O,2))}),jf=_r(function($){var O=Un($);return O=typeof O=="function"?O:g,Sc(Gs($,fn),g,O)}),Vp=_r(Uc);function Wp($,O){return fl($||[],O||[],Ri)}function Hf($,O){return fl($||[],O||[],Di)}var Lo=_r(function($){var O=$.length,K=O>1?$[O-1]:g;return K=typeof K=="function"?($.pop(),K):g,Jr($,K)});function Vc($){var O=Te($);return O.__chain__=!0,O}function Yf($,O){return O($),$}function qo($,O){return O($)}var Wc=ys(function($){var O=$.length,K=O?$[0]:0,_e=this.__wrapped__,Ce=function(Pe){return pc(Pe,$)};return O>1||this.__actions__.length||!(_e instanceof pr)||!Wr(K)?this.thru(Ce):(_e=_e.slice(K,+K+(O?1:0)),_e.__actions__.push({func:qo,args:[Ce],thisArg:g}),new In(_e,this.__chain__).thru(function(Pe){return O&&!Pe.length&&Pe.push(g),Pe}))});function Yi(){return Vc(this)}function qc(){return new In(this.value(),this.__chain__)}function Td(){this.__values__===g&&(this.__values__=fm(this.value()));var $=this.__index__>=this.__values__.length,O=$?g:this.__values__[this.__index__++];return{done:$,value:O}}function Pd(){return this}function Bf($){for(var O,K=this;K instanceof as;){var _e=jp(K);_e.__index__=0,_e.__values__=g,O?Ce.__wrapped__=_e:O=_e;var Ce=_e;K=K.__wrapped__}return Ce.__wrapped__=$,O}function Rd(){var $=this.__wrapped__;if($ instanceof pr){var O=$;return this.__actions__.length&&(O=new pr(this)),O=O.reverse(),O.__actions__.push({func:qo,args:[zc],thisArg:g}),new In(O,this.__chain__)}return this.thru(zc)}function zf(){return Sa(this.__wrapped__,this.__actions__)}var qp=Mc(function($,O,K){Rr.call($,K)?++$[K]:ds($,K,1)});function Kp($,O,K){var _e=gr($)?_u:ol;return K&&Gn($,O,K)&&(O=g),_e($,er(O,3))}function Kc($,O){var K=gr($)?Gs:Fu;return K($,er(O,3))}var Jc=Oi(ii),Jp=Oi(Tl);function $d($,O){return Xr(Bi($,O),1)}function Gf($,O){return Xr(Bi($,O),fe)}function Qp($,O,K){return K=K===g?1:yr(K),Xr(Bi($,O),K)}function Qc($,O){var K=gr($)?Rn:fs;return K($,er(O,3))}function kl($,O){var K=gr($)?Gl:_p;return K($,er(O,3))}var kd=Mc(function($,O,K){Rr.call($,K)?$[K].push(O):ds($,K,[O])});function Xc($,O,K,_e){$=Do($)?$:nu($),K=K&&!_e?yr(K):0;var Ce=$.length;return K<0&&(K=ln(Ce+K,0)),ef($)?K<=Ce&&$.indexOf(O,K)>-1:!!Ce&&Xi($,O,K)>-1}var Xp=_r(function($,O,K){var _e=-1,Ce=typeof O=="function",Pe=Do($)?at($.length):[];return fs($,function(je){Pe[++_e]=Ce?Hn(O,je,K):To(je,O,K)}),Pe}),Uf=Mc(function($,O,K){ds($,K,O)});function Bi($,O){var K=gr($)?Nr:Yu;return K($,er(O,3))}function Vf($,O,K,_e){return $==null?[]:(gr(O)||(O=O==null?[]:[O]),K=_e?g:K,gr(K)||(K=K==null?[]:[K]),cl($,O,K))}var Il=Mc(function($,O,K){$[K?0:1].push(O)},function(){return[[],[]]});function Wf($,O,K){var _e=gr($)?vu:Jd,Ce=arguments.length<3;return _e($,er(O,4),K,Ce,fs)}function Zc($,O,K){var _e=gr($)?hf:Jd,Ce=arguments.length<3;return _e($,er(O,4),K,Ce,_p)}function M($,O){var K=gr($)?Gs:Fu;return K($,kt(er(O,3)))}function P($){var O=gr($)?us:On;return O($)}function F($,O,K){(K?Gn($,O,K):O===g)?O=1:O=yr(O);var _e=gr($)?Pi:Gu;return _e($,O)}function q($){var O=gr($)?gp:Ro;return O($)}function le($){if($==null)return 0;if(Do($))return ef($)?Ei($):$.length;var O=wn($);return O==Ye||O==Ne?$.size:Is($).length}function xe($,O,K){var _e=gr($)?bu:Uu;return K&&Gn($,O,K)&&(O=g),_e($,er(O,3))}var we=_r(function($,O){if($==null)return[];var K=O.length;return K>1&&Gn($,O[0],O[1])?O=[]:K>2&&Gn(O[0],O[1],O[2])&&(O=[O[0]]),cl($,Xr(O,1),[])}),Ae=Hr||function(){return Ur.Date.now()};function ze($,O){if(typeof O!="function")throw new Eo(v);return $=yr($),function(){if(--$<1)return O.apply(this,arguments)}}function ct($,O,K){return O=K?g:O,O=$&&O==null?$.length:O,_s($,V,g,g,g,g,O)}function Mt($,O){var K;if(typeof O!="function")throw new Eo(v);return $=yr($),function(){return--$>0&&(K=O.apply(this,arguments)),$<=1&&(O=g),K}}var Rt=_r(function($,O,K){var _e=N;if(K.length){var Ce=vo(K,As(Rt));_e|=U}return _s($,_e,O,K,Ce)}),wt=_r(function($,O,K){var _e=N|z;if(K.length){var Ce=vo(K,As(wt));_e|=U}return _s(O,_e,$,K,Ce)});function Ot($,O,K){O=K?g:O;var _e=_s($,Y,g,g,g,g,g,O);return _e.placeholder=Ot.placeholder,_e}function Nt($,O,K){O=K?g:O;var _e=_s($,B,g,g,g,g,g,O);return _e.placeholder=Nt.placeholder,_e}function Ht($,O,K){var _e,Ce,Pe,je,Ue,Qe,vt=0,Et=!1,Tt=!1,Dt=!0;if(typeof $!="function")throw new Eo(v);O=Es(O)||0,on(K)&&(Et=!!K.leading,Tt="maxWait"in K,Pe=Tt?ln(Es(K.maxWait)||0,O):Pe,Dt="trailing"in K?!!K.trailing:Dt);function Ut(hn){var js=_e,Ui=Ce;return _e=Ce=g,vt=hn,je=$.apply(Ui,js),je}function or(hn){return vt=hn,Ue=$a(Cr,O),Et?Ut(hn):je}function Sr(hn){var js=hn-Qe,Ui=hn-vt,Tm=O-js;return Tt?$n(Tm,Pe-Ui):Tm}function ir(hn){var js=hn-Qe,Ui=hn-vt;return Qe===g||js>=O||js<0||Tt&&Ui>=Pe}function Cr(){var hn=Ae();if(ir(hn))return Tr(hn);Ue=$a(Cr,Sr(hn))}function Tr(hn){return Ue=g,Dt&&_e?Ut(hn):(_e=Ce=g,je)}function Jo(){Ue!==g&&Ku(Ue),vt=0,_e=Qe=Ce=Ue=g}function go(){return Ue===g?je:Tr(Ae())}function Qo(){var hn=Ae(),js=ir(hn);if(_e=arguments,Ce=this,Qe=hn,js){if(Ue===g)return or(Qe);if(Tt)return Ku(Ue),Ue=$a(Cr,O),Ut(Qe)}return Ue===g&&(Ue=$a(Cr,O)),je}return Qo.cancel=Jo,Qo.flush=go,Qo}var tn=_r(function($,O){return Ou($,1,O)}),Ze=_r(function($,O,K){return Ou($,Es(O)||0,K)});function We($){return _s($,Q)}function nt($,O){if(typeof $!="function"||O!=null&&typeof O!="function")throw new Eo(v);var K=function(){var _e=arguments,Ce=O?O.apply(this,_e):_e[0],Pe=K.cache;if(Pe.has(Ce))return Pe.get(Ce);var je=$.apply(this,_e);return K.cache=Pe.set(Ce,je)||Pe,je};return K.cache=new(nt.Cache||So),K}nt.Cache=So;function kt($){if(typeof $!="function")throw new Eo(v);return function(){var O=arguments;switch(O.length){case 0:return!$.call(this);case 1:return!$.call(this,O[0]);case 2:return!$.call(this,O[0],O[1]);case 3:return!$.call(this,O[0],O[1],O[2])}return!$.apply(this,O)}}function Bt($){return Mt(2,$)}var Qt=Ep(function($,O){O=O.length==1&&gr(O[0])?Nr(O[0],io(er())):Nr(Xr(O,1),io(er()));var K=O.length;return _r(function(_e){for(var Ce=-1,Pe=$n(_e.length,K);++Ce<Pe;)_e[Ce]=O[Ce].call(this,_e[Ce]);return Hn($,this,_e)})}),qt=_r(function($,O){var K=vo(O,As(qt));return _s($,U,g,O,K)}),nr=_r(function($,O){var K=vo(O,As(nr));return _s($,W,g,O,K)}),_n=ys(function($,O){return _s($,J,g,g,g,O)});function $r($,O){if(typeof $!="function")throw new Eo(v);return O=O===g?O:yr(O),_r($,O)}function di($,O){if(typeof $!="function")throw new Eo(v);return O=O==null?0:ln(yr(O),0),_r(function(K){var _e=K[O],Ce=Ds(K,0,O);return _e&&Us(Ce,_e),Hn($,this,Ce)})}function qf($,O,K){var _e=!0,Ce=!0;if(typeof $!="function")throw new Eo(v);return on(K)&&(_e="leading"in K?!!K.leading:_e,Ce="trailing"in K?!!K.trailing:Ce),Ht($,O,{leading:_e,maxWait:O,trailing:Ce})}function Fm($){return ct($,1)}function Nm($,O){return qt(Cc(O),$)}function jm(){if(!arguments.length)return[];var $=arguments[0];return gr($)?$:[$]}function Hm($){return Xn($,D)}function Ym($,O){return O=typeof O=="function"?O:g,Xn($,D,O)}function Bm($){return Xn($,k|D)}function zm($,O){return O=typeof O=="function"?O:g,Xn($,k|D,O)}function Gm($,O){return O==null||rl($,O,Nn(O))}function Ns($,O){return $===O||$!==$&&O!==O}var Um=kc(ei),Vm=kc(function($,O){return $>=O}),Ll=gc(function(){return arguments}())?gc:function($){return un($)&&Rr.call($,"callee")&&!ec.call($,"callee")},gr=at.isArray,Wm=mu?io(mu):vp;function Do($){return $!=null&&Zp($.length)&&!zi($)}function fn($){return un($)&&Do($)}function qm($){return $===!0||$===!1||un($)&&Sn($)==Re}var Da=Iu||sm,Km=qn?io(qn):ks;function Jm($){return un($)&&$.nodeType===1&&!Id($)}function Qm($){if($==null)return!0;if(Do($)&&(gr($)||typeof $=="string"||typeof $.splice=="function"||Da($)||tu($)||Ll($)))return!$.length;var O=wn($);if(O==Ye||O==Ne)return!$.size;if(Os($))return!Is($).length;for(var K in $)if(Rr.call($,K))return!1;return!0}function Xm($,O){return Po($,O)}function Zm($,O,K){K=typeof K=="function"?K:g;var _e=K?K($,O):g;return _e===g?Po($,O,g,K):!!_e}function Kf($){if(!un($))return!1;var O=Sn($);return O==Le||O==Be||typeof $.message=="string"&&typeof $.name=="string"&&!Id($)}function eh($){return typeof $=="number"&&sa($)}function zi($){if(!on($))return!1;var O=Sn($);return O==Ge||O==Ie||O==Me||O==ot}function cm($){return typeof $=="number"&&$==yr($)}function Zp($){return typeof $=="number"&&$>-1&&$%1==0&&$<=ae}function on($){var O=typeof $;return $!=null&&(O=="object"||O=="function")}function un($){return $!=null&&typeof $=="object"}var um=yi?io(yi):bp;function rh($,O){return $===O||ya($,O,El(O))}function nh($,O,K){return K=typeof K=="function"?K:g,ya($,O,El(O),K)}function oh($){return dm($)&&$!=+$}function sh($){if(If($))throw new cr(E);return ju($)}function ih($){return $===null}function ah($){return $==null}function dm($){return typeof $=="number"||un($)&&Sn($)==He}function Id($){if(!un($)||Sn($)!=rt)return!1;var O=Ho($);if(O===null)return!0;var K=Rr.call(O,"constructor")&&O.constructor;return typeof K=="function"&&K instanceof K&&Ua.call(K)==Xl}var Jf=zl?io(zl):al;function lh($){return cm($)&&$>=-9007199254740991&&$<=ae}var pm=Qi?io(Qi):hs;function ef($){return typeof $=="string"||!gr($)&&un($)&&Sn($)==Ke}function Ko($){return typeof $=="symbol"||un($)&&Sn($)==Xe}var tu=Ud?io(Ud):ll;function ch($){return $===g}function uh($){return un($)&&wn($)==xt}function dh($){return un($)&&Sn($)==Je}var ph=kc(ti),fh=kc(function($,O){return $<=O});function fm($){if(!$)return[];if(Do($))return ef($)?ao($):Bn($);if(Ms&&$[Ms])return bf($[Ms]());var O=wn($),K=O==Ye?ql:O==Ne?Vs:nu;return K($)}function Gi($){if(!$)return $===0?$:0;if($=Es($),$===fe||$===-1/0){var O=$<0?-1:1;return O*ue}return $===$?$:0}function yr($){var O=Gi($),K=O%1;return O===O?K?O-K:O:0}function mm($){return $?Ps(yr($),0,ge):0}function Es($){if(typeof $=="number")return $;if(Ko($))return pe;if(on($)){var O=typeof $.valueOf=="function"?$.valueOf():$;$=on(O)?O+"":O}if(typeof $!="string")return $===0?$:+$;$=Qd($);var K=Gt.test($);return K||Yt.test($)?Yl($.slice(2),K?2:8):It.test($)?pe:+$}function hm($){return Bo($,Ao($))}function mh($){return $?Ps(yr($),-9007199254740991,ae):$===0?$:0}function Ar($){return $==null?"":Zn($)}var hh=wa(function($,O){if(Os(O)||Do(O)){Bo(O,Nn(O),$);return}for(var K in O)Rr.call(O,K)&&Ri($,K,O[K])}),gm=wa(function($,O){Bo(O,Ao(O),$)}),tf=wa(function($,O,K,_e){Bo(O,Ao(O),$,_e)}),gh=wa(function($,O,K,_e){Bo(O,Nn(O),$,_e)}),xh=ys(pc);function _h($,O){var K=pa($);return O==null?K:Br(K,O)}var yh=_r(function($,O){$=Dr($);var K=-1,_e=O.length,Ce=_e>2?O[2]:g;for(Ce&&Gn(O[0],O[1],Ce)&&(_e=1);++K<_e;)for(var Pe=O[K],je=Ao(Pe),Ue=-1,Qe=je.length;++Ue<Qe;){var vt=je[Ue],Et=$[vt];(Et===g||Ns(Et,ns[vt])&&!Rr.call($,vt))&&($[vt]=Pe[vt])}return $}),vh=_r(function($){return $.push(g,od),Hn(xm,g,$)});function bh($,O){return Wd($,er(O,3),po)}function Eh($,O){return Wd($,er(O,3),Zs)}function Sh($,O){return $==null?$:fc($,er(O,3),Ao)}function Ch($,O){return $==null?$:il($,er(O,3),Ao)}function wh($,O){return $&&po($,er(O,3))}function Mh($,O){return $&&Zs($,er(O,3))}function Th($){return $==null?[]:_a($,Nn($))}function Ph($){return $==null?[]:_a($,Ao($))}function Qf($,O,K){var _e=$==null?g:Rs($,O);return _e===g?K:_e}function Rh($,O){return $!=null&&dd($,O,Mo)}function Xf($,O){return $!=null&&dd($,O,ki)}var $h=Pp(function($,O,K){O!=null&&typeof O.toString!="function"&&(O=Va.call(O)),$[O]=K},em(Oo)),kh=Pp(function($,O,K){O!=null&&typeof O.toString!="function"&&(O=Va.call(O)),Rr.call($,O)?$[O].push(K):$[O]=[K]},er),Ih=_r(To);function Nn($){return Do($)?ls($):Is($)}function Ao($){return Do($)?ls($,!0):Hu($)}function Lh($,O){var K={};return O=er(O,3),po($,function(_e,Ce,Pe){ds(K,O(_e,Ce,Pe),_e)}),K}function Dh($,O){var K={};return O=er(O,3),po($,function(_e,Ce,Pe){ds(K,Ce,O(_e,Ce,Pe))}),K}var Ah=wa(function($,O,K){Ii($,O,K)}),xm=wa(function($,O,K,_e){Ii($,O,K,_e)}),Oh=ys(function($,O){var K={};if($==null)return K;var _e=!1;O=Nr(O,function(Pe){return Pe=xs(Pe,$),_e||(_e=Pe.length>1),Pe}),Bo($,vl($),K),_e&&(K=Xn(K,k|L|D,ad));for(var Ce=O.length;Ce--;)Ec(K,O[Ce]);return K});function Fh($,O){return _m($,kt(er(O)))}var Nh=ys(function($,O){return $==null?{}:zu($,O)});function _m($,O){if($==null)return{};var K=Nr(vl($),function(_e){return[_e]});return O=er(O),ri($,K,function(_e,Ce){return O(_e,Ce[0])})}function jh($,O,K){O=xs(O,$);var _e=-1,Ce=O.length;for(Ce||(Ce=1,$=g);++_e<Ce;){var Pe=$==null?g:$[Vo(O[_e])];Pe===g&&(_e=Ce,Pe=K),$=zi(Pe)?Pe.call($):Pe}return $}function Hh($,O,K){return $==null?$:Di($,O,K)}function Yh($,O,K,_e){return _e=typeof _e=="function"?_e:g,$==null?$:Di($,O,K,_e)}var ym=rd(Nn),vm=rd(Ao);function Bh($,O,K){var _e=gr($),Ce=_e||Da($)||tu($);if(O=er(O,4),K==null){var Pe=$&&$.constructor;Ce?K=_e?new Pe:[]:on($)?K=zi(Pe)?pa(Ho($)):{}:K={}}return(Ce?Rn:po)($,function(je,Ue,Qe){return O(K,je,Ue,Qe)}),K}function Gh($,O){return $==null?!0:Ec($,O)}function Uh($,O,K){return $==null?$:qu($,O,Cc(K))}function Vh($,O,K,_e){return _e=typeof _e=="function"?_e:g,$==null?$:qu($,O,Cc(K),_e)}function nu($){return $==null?[]:za($,Nn($))}function Wh($){return $==null?[]:za($,Ao($))}function qh($,O,K){return K===g&&(K=O,O=g),K!==g&&(K=Es(K),K=K===K?K:0),O!==g&&(O=Es(O),O=O===O?O:0),Ps(Es($),O,K)}function Kh($,O,K){return O=Gi(O),K===g?(K=O,O=0):K=Gi(K),$=Es($),Nu($,O,K)}function Jh($,O,K){if(K&&typeof K!="boolean"&&Gn($,O,K)&&(O=K=g),K===g&&(typeof O=="boolean"?(K=O,O=g):typeof $=="boolean"&&(K=$,$=g)),$===g&&O===g?($=0,O=1):($=Gi($),O===g?(O=$,$=0):O=Gi(O)),$>O){var _e=$;$=O,O=_e}if(K||$%1||O%1){var Ce=Ja();return $n($+Ce*(O-$+pu("1e-"+((Ce+"").length-1))),O)}return ba($,O)}var Qh=Ai(function($,O,K){return O=O.toLowerCase(),$+(K?Em(O):O)});function Em($){return Zf(Ar($).toLowerCase())}function Sm($){return $=Ar($),$&&$.replace(so,ep).replace(Yd,"")}function Xh($,O,K){$=Ar($),O=Zn(O);var _e=$.length;K=K===g?_e:Ps(yr(K),0,_e);var Ce=K;return K-=O.length,K>=0&&$.slice(K,Ce)==O}function Zh($){return $=Ar($),$&&xr.test($)?$.replace(rr,tp):$}function eg($){return $=Ar($),$&&zr.test($)?$.replace(wr,"\\$&"):$}var rg=Ai(function($,O,K){return $+(K?"-":"")+O.toLowerCase()}),ng=Ai(function($,O,K){return $+(K?" ":"")+O.toLowerCase()}),og=Zu("toLowerCase");function sg($,O,K){$=Ar($),O=yr(O);var _e=O?Ei($):0;if(!O||_e>=O)return $;var Ce=(O-_e)/2;return _l(Ws(Ce),K)+$+_l(Ci(Ce),K)}function ig($,O,K){$=Ar($),O=yr(O);var _e=O?Ei($):0;return O&&_e<O?$+_l(O-_e,K):$}function ag($,O,K){$=Ar($),O=yr(O);var _e=O?Ei($):0;return O&&_e<O?_l(O-_e,K)+$:$}function lg($,O,K){return K||O==null?O=0:O&&(O=+O),up(Ar($).replace(sn,""),O||0)}function cg($,O,K){return(K?Gn($,O,K):O===g)?O=1:O=yr(O),Li(Ar($),O)}function ug(){var $=arguments,O=Ar($[0]);return $.length<3?O:O.replace($[1],$[2])}var dg=Ai(function($,O,K){return $+(K?"_":"")+O.toLowerCase()});function pg($,O,K){return K&&typeof K!="number"&&Gn($,O,K)&&(O=K=g),K=K===g?ge:K>>>0,K?($=Ar($),$&&(typeof O=="string"||O!=null&&!Jf(O))&&(O=Zn(O),!O&&ea($))?Ds(ao($),0,K):$.split(O,K)):[]}var fg=Ai(function($,O,K){return $+(K?" ":"")+Zf(O)});function mg($,O,K){return $=Ar($),K=K==null?0:Ps(yr(K),0,$.length),O=Zn(O),$.slice(K,K+O.length)==O}function hg($,O,K){var _e=Te.templateSettings;K&&Gn($,O,K)&&(O=g),$=Ar($),O=tf({},O,_e,nd);var Ce=tf({},O.imports,_e.imports,nd),Pe=Nn(Ce),je=za(Ce,Pe),Ue,Qe,vt=0,Et=O.interpolate||pi,Tt="__p += '",Dt=Ga((O.escape||pi).source+"|"+Et.source+"|"+(Et===Qr?ut:pi).source+"|"+(O.evaluate||pi).source+"|$","g"),Ut="//# sourceURL="+(Rr.call(O,"sourceURL")?(O.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++pf+"]")+`
297
+ `;$.replace(Dt,function(ir,Cr,Tr,Jo,go,Qo){return Tr||(Tr=Jo),Tt+=$.slice(vt,Qo).replace(of,rp),Cr&&(Ue=!0,Tt+=`' +
298
298
  __e(`+Cr+`) +
299
299
  '`),go&&(Qe=!0,Tt+=`';
300
300
  `+go+`;
301
301
  __p += '`),Tr&&(Tt+=`' +
302
302
  ((__t = (`+Tr+`)) == null ? '' : __t) +
303
- '`),yt=Qo+ir.length,ir}),Tt+=`';
303
+ '`),vt=Qo+ir.length,ir}),Tt+=`';
304
304
  `;var or=Rr.call(O,"variable")&&O.variable;if(!or)Tt=`with (obj) {
305
305
  `+Tt+`
306
306
  }
@@ -310,7 +310,7 @@ __p += '`),Tr&&(Tt+=`' +
310
310
  function print() { __p += __j.call(arguments, '') }
311
311
  `:`;
312
312
  `)+Tt+`return __p
313
- }`;var Sr=wm(function(){return Pr(Pe,Ut+"return "+Tt).apply(g,je)});if(Sr.source=Tt,Kf(Sr))throw Sr;return Sr}function gg($){return Ar($).toLowerCase()}function xg($){return Ar($).toUpperCase()}function _g($,O,K){if($=Ar($),$&&(K||O===g))return Qd($);if(!$||!(O=Zn(O)))return $;var _e=ao($),Ce=ao(O),Pe=Xd(_e,Ce),je=Mu(_e,Ce)+1;return Ds(_e,Pe,je).join("")}function yg($,O,K){if($=Ar($),$&&(K||O===g))return $.slice(0,Jl($)+1);if(!$||!(O=Zn(O)))return $;var _e=ao($),Ce=Mu(_e,ao(O))+1;return Ds(_e,0,Ce).join("")}function vg($,O,K){if($=Ar($),$&&(K||O===g))return $.replace(sn,"");if(!$||!(O=Zn(O)))return $;var _e=ao($),Ce=Xd(_e,ao(O));return Ds(_e,Ce).join("")}function Eg($,O){var K=X,_e=re;if(on(O)){var Ce="separator"in O?O.separator:Ce;K="length"in O?yr(O.length):K,_e="omission"in O?Zn(O.omission):_e}$=Ar($);var Pe=$.length;if(ea($)){var je=ao($);Pe=je.length}if(K>=Pe)return $;var Ue=K-Ei(_e);if(Ue<1)return _e;var Qe=je?Ds(je,0,Ue).join(""):$.slice(0,Ue);if(Ce===g)return Qe+_e;if(je&&(Ue+=Qe.length-Ue),Jf(Ce)){if($.slice(Ue).search(Ce)){var yt,Et=Qe;for(Ce.global||(Ce=Ga(Ce.source,Ar(tt.exec(Ce))+"g")),Ce.lastIndex=0;yt=Ce.exec(Et);)var Tt=yt.index;Qe=Qe.slice(0,Tt===g?Ue:Tt)}}else if($.indexOf(Zn(Ce),Ue)!=Ue){var Dt=Qe.lastIndexOf(Ce);Dt>-1&&(Qe=Qe.slice(0,Dt))}return Qe+_e}function Sg($){return $=Ar($),$&&Or.test($)?$.replace(Jt,np):$}var Cg=Ai(function($,O,K){return $+(K?" ":"")+O.toUpperCase()}),Zf=Zu("toUpperCase");function Cm($,O,K){return $=Ar($),O=K?g:O,O===g?vf($)?Cf($):xf($):$.match(O)||[]}var wm=_r(function($,O){try{return Hn($,g,O)}catch(K){return Kf(K)?K:new cr(K)}}),wg=ys(function($,O){return Rn(O,function(K){K=Vo(K),ds($,K,Rt($[K],$))}),$});function Mg($){var O=$==null?0:$.length,K=er();return $=O?Nr($,function(_e){if(typeof _e[1]!="function")throw new Eo(v);return[K(_e[0]),_e[1]]}):[],_r(function(_e){for(var Ce=-1;++Ce<O;){var Pe=$[Ce];if(Hn(Pe[0],this,_e))return Hn(Pe[1],this,_e)}})}function Tg($){return xp(Xn($,k))}function em($){return function(){return $}}function Pg($,O){return $==null||$!==$?O:$}var Rg=Rc(),$g=Rc(!0);function Oo($){return $}function tm($){return va(typeof $=="function"?$:Xn($,k))}function kg($){return _c(Xn($,k))}function Ig($,O){return Vr($,Xn(O,k))}var Lg=_r(function($,O){return function(K){return To(K,$,O)}}),Dg=_r(function($,O){return function(K){return To($,K,O)}});function rm($,O,K){var _e=Nn(O),Ce=_a(O,_e);K==null&&!(on(O)&&(Ce.length||!_e.length))&&(K=O,O=$,$=this,Ce=_a(O,Nn(O)));var Pe=!(on(K)&&"chain"in K)||!!K.chain,je=zi($);return Rn(Ce,function(Ue){var Qe=O[Ue];$[Ue]=Qe,je&&($.prototype[Ue]=function(){var yt=this.__chain__;if(Pe||yt){var Et=$(this.__wrapped__),Tt=Et.__actions__=Bn(this.__actions__);return Tt.push({func:Qe,args:arguments,thisArg:$}),Et.__chain__=yt,Et}return Qe.apply($,Us([this.value()],arguments))})}),$}function Ag(){return Ur._===this&&(Ur._=ip),this}function nm(){}function Og($){return $=yr($),_r(function(O){return yc(O,$)})}var Fg=$c(Nr),Ng=$c(_u),jg=$c(bu);function Mm($){return Ft($)?Su(Vo($)):Kr($)}function Hg($){return function(O){return $==null?g:Rs($,O)}}var Yg=td(),Bg=td(!0);function om(){return[]}function sm(){return!1}function zg(){return{}}function Gg(){return""}function Ug(){return!0}function Vg($,O){if($=yr($),$<1||$>ae)return[];var K=ge,_e=$n($,ge);O=er(O),$-=ge;for(var Ce=wu(_e,O);++K<$;)O(K);return Ce}function Wg($){return gr($)?Nr($,Vo):Ko($)?[$]:Bn(xd(Ar($)))}function qg($){var O=++oa;return Ar($)+O}var Kg=xl(function($,O){return $+O},0),Jg=Cn("ceil"),Qg=xl(function($,O){return $/O},1),Xg=Cn("floor");function Zg($){return $&&$.length?$i($,Oo,ei):g}function ex($,O){return $&&$.length?$i($,er(O,2),ei):g}function tx($){return Kd($,Oo)}function rx($,O){return Kd($,er(O,2))}function nx($){return $&&$.length?$i($,Oo,ti):g}function ox($,O){return $&&$.length?$i($,er(O,2),ti):g}var sx=xl(function($,O){return $*O},1),ix=Cn("round"),ax=xl(function($,O){return $-O},0);function lx($){return $&&$.length?Cu($,Oo):0}function ux($,O){return $&&$.length?Cu($,er(O,2)):0}return Te.after=ze,Te.ary=ct,Te.assign=hh,Te.assignIn=gm,Te.assignInWith=tf,Te.assignWith=gh,Te.at=xh,Te.before=Mt,Te.bind=Rt,Te.bindAll=wg,Te.bindKey=wt,Te.castArray=jm,Te.chain=Vc,Te.chunk=Nc,Te.compact=_d,Te.concat=Io,Te.cond=Mg,Te.conforms=Tg,Te.constant=em,Te.countBy=qp,Te.create=_h,Te.curry=Ot,Te.curryRight=Nt,Te.debounce=Ht,Te.defaults=yh,Te.defaultsDeep=vh,Te.defer=tn,Te.delay=Ze,Te.difference=Mr,Te.differenceBy=xn,Te.differenceWith=cn,Te.drop=Tn,Te.dropRight=ho,Te.dropRightWhile=Ia,Te.dropWhile=pn,Te.fill=Ml,Te.filter=Kc,Te.flatMap=$d,Te.flatMapDeep=Gf,Te.flatMapDepth=Qp,Te.flatten=jc,Te.flattenDeep=Pl,Te.flattenDepth=to,Te.flip=We,Te.flow=Rg,Te.flowRight=$g,Te.fromPairs=yd,Te.functions=Th,Te.functionsIn=Ph,Te.groupBy=kd,Te.initial=Hc,Te.intersection=vd,Te.intersectionBy=ai,Te.intersectionWith=Yc,Te.invert=$h,Te.invertBy=kh,Te.invokeMap=Xp,Te.iteratee=tm,Te.keyBy=Uf,Te.keys=Nn,Te.keysIn=Ao,Te.map=Bi,Te.mapKeys=Lh,Te.mapValues=Dh,Te.matches=kg,Te.matchesProperty=Ig,Te.memoize=nt,Te.merge=Ah,Te.mergeWith=xm,Te.method=Lg,Te.methodOf=Dg,Te.mixin=rm,Te.negate=kt,Te.nthArg=Og,Te.omit=Oh,Te.omitBy=Fh,Te.once=Bt,Te.orderBy=Vf,Te.over=Fg,Te.overArgs=Qt,Te.overEvery=Ng,Te.overSome=jg,Te.partial=qt,Te.partialRight=nr,Te.partition=Il,Te.pick=Nh,Te.pickBy=_m,Te.property=Mm,Te.propertyOf=Hg,Te.pull=Bc,Te.pullAll=$l,Te.pullAllBy=Vn,Te.pullAllWith=ci,Te.pullAt=Wo,Te.range=Yg,Te.rangeRight=Bg,Te.rearg=_n,Te.reject=M,Te.remove=no,Te.rest=$r,Te.reverse=zc,Te.sampleSize=F,Te.set=Hh,Te.setWith=Yh,Te.shuffle=q,Te.slice=Ed,Te.sortBy=we,Te.sortedUniq=wd,Te.sortedUniqBy=ji,Te.split=pg,Te.spread=di,Te.tail=Yp,Te.take=Bp,Te.takeRight=Md,Te.takeRightWhile=Gc,Te.takeWhile=Df,Te.tap=Yf,Te.throttle=qf,Te.thru=qo,Te.toArray=fm,Te.toPairs=ym,Te.toPairsIn=vm,Te.toPath=Wg,Te.toPlainObject=hm,Te.transform=Bh,Te.unary=Fm,Te.union=Af,Te.unionBy=zp,Te.unionWith=Gp,Te.uniq=Hi,Te.uniqBy=Of,Te.uniqWith=La,Te.unset=Gh,Te.unzip=Uc,Te.unzipWith=Jr,Te.update=Uh,Te.updateWith=Vh,Te.values=nu,Te.valuesIn=Wh,Te.without=Ff,Te.words=Cm,Te.wrap=Nm,Te.xor=Up,Te.xorBy=Nf,Te.xorWith=jf,Te.zip=Vp,Te.zipObject=Wp,Te.zipObjectDeep=Hf,Te.zipWith=Lo,Te.entries=ym,Te.entriesIn=vm,Te.extend=gm,Te.extendWith=tf,rm(Te,Te),Te.add=Kg,Te.attempt=wm,Te.camelCase=Qh,Te.capitalize=Em,Te.ceil=Jg,Te.clamp=qh,Te.clone=Hm,Te.cloneDeep=Bm,Te.cloneDeepWith=zm,Te.cloneWith=Ym,Te.conformsTo=Gm,Te.deburr=Sm,Te.defaultTo=Pg,Te.divide=Qg,Te.endsWith=Xh,Te.eq=Ns,Te.escape=Zh,Te.escapeRegExp=eg,Te.every=Kp,Te.find=Jc,Te.findIndex=ii,Te.findKey=bh,Te.findLast=Jp,Te.findLastIndex=Tl,Te.findLastKey=Eh,Te.floor=Xg,Te.forEach=Qc,Te.forEachRight=kl,Te.forIn=Sh,Te.forInRight=Ch,Te.forOwn=wh,Te.forOwnRight=Mh,Te.get=Qf,Te.gt=Um,Te.gte=Vm,Te.has=Rh,Te.hasIn=Xf,Te.head=Fi,Te.identity=Oo,Te.includes=Xc,Te.indexOf=Fs,Te.inRange=Kh,Te.invoke=Ih,Te.isArguments=Ll,Te.isArray=gr,Te.isArrayBuffer=Wm,Te.isArrayLike=Do,Te.isArrayLikeObject=fn,Te.isBoolean=qm,Te.isBuffer=Da,Te.isDate=Km,Te.isElement=Jm,Te.isEmpty=Qm,Te.isEqual=Xm,Te.isEqualWith=Zm,Te.isError=Kf,Te.isFinite=eh,Te.isFunction=zi,Te.isInteger=cm,Te.isLength=Zp,Te.isMap=um,Te.isMatch=rh,Te.isMatchWith=nh,Te.isNaN=oh,Te.isNative=sh,Te.isNil=ah,Te.isNull=ih,Te.isNumber=dm,Te.isObject=on,Te.isObjectLike=un,Te.isPlainObject=Id,Te.isRegExp=Jf,Te.isSafeInteger=lh,Te.isSet=pm,Te.isString=ef,Te.isSymbol=Ko,Te.isTypedArray=tu,Te.isUndefined=ch,Te.isWeakMap=uh,Te.isWeakSet=dh,Te.join=li,Te.kebabCase=rg,Te.last=Un,Te.lastIndexOf=Rl,Te.lowerCase=ng,Te.lowerFirst=og,Te.lt=ph,Te.lte=fh,Te.max=Zg,Te.maxBy=ex,Te.mean=tx,Te.meanBy=rx,Te.min=nx,Te.minBy=ox,Te.stubArray=om,Te.stubFalse=sm,Te.stubObject=zg,Te.stubString=Gg,Te.stubTrue=Ug,Te.multiply=sx,Te.nth=bd,Te.noConflict=Ag,Te.noop=nm,Te.now=Ae,Te.pad=sg,Te.padEnd=ig,Te.padStart=ag,Te.parseInt=lg,Te.random=Jh,Te.reduce=Wf,Te.reduceRight=Zc,Te.repeat=cg,Te.replace=ug,Te.result=jh,Te.round=ix,Te.runInContext=qe,Te.sample=P,Te.size=le,Te.snakeCase=dg,Te.some=xe,Te.sortedIndex=Sd,Te.sortedIndexBy=Lf,Te.sortedIndexOf=ui,Te.sortedLastIndex=Hp,Te.sortedLastIndexBy=Cd,Te.sortedLastIndexOf=Ni,Te.startCase=fg,Te.startsWith=mg,Te.subtract=ax,Te.sum=lx,Te.sumBy=ux,Te.template=hg,Te.times=Vg,Te.toFinite=Gi,Te.toInteger=yr,Te.toLength=mm,Te.toLower=gg,Te.toNumber=Es,Te.toSafeInteger=mh,Te.toString=Ar,Te.toUpper=xg,Te.trim=_g,Te.trimEnd=yg,Te.trimStart=vg,Te.truncate=Eg,Te.unescape=Sg,Te.uniqueId=qg,Te.upperCase=Cg,Te.upperFirst=Zf,Te.each=Qc,Te.eachRight=kl,Te.first=Fi,rm(Te,function(){var $={};return po(Te,function(O,K){Rr.call(Te.prototype,K)||($[K]=O)}),$}(),{chain:!1}),Te.VERSION=x,Rn(["bind","bindKey","curry","curryRight","partial","partialRight"],function($){Te[$].placeholder=Te}),Rn(["drop","take"],function($,O){pr.prototype[$]=function(K){K=K===g?1:ln(yr(K),0);var _e=this.__filtered__&&!O?new pr(this):this.clone();return _e.__filtered__?_e.__takeCount__=$n(K,_e.__takeCount__):_e.__views__.push({size:$n(K,ge),type:$+(_e.__dir__<0?"Right":"")}),_e},pr.prototype[$+"Right"]=function(K){return this.reverse()[$](K).reverse()}}),Rn(["filter","map","takeWhile"],function($,O){var K=O+1,_e=K==Z||K==ce;pr.prototype[$]=function(Ce){var Pe=this.clone();return Pe.__iteratees__.push({iteratee:er(Ce,3),type:K}),Pe.__filtered__=Pe.__filtered__||_e,Pe}}),Rn(["head","last"],function($,O){var K="take"+(O?"Right":"");pr.prototype[$]=function(){return this[K](1).value()[0]}}),Rn(["initial","tail"],function($,O){var K="drop"+(O?"":"Right");pr.prototype[$]=function(){return this.__filtered__?new pr(this):this[K](1)}}),pr.prototype.compact=function(){return this.filter(Oo)},pr.prototype.find=function($){return this.filter($).head()},pr.prototype.findLast=function($){return this.reverse().find($)},pr.prototype.invokeMap=_r(function($,O){return typeof $=="function"?new pr(this):this.map(function(K){return To(K,$,O)})}),pr.prototype.reject=function($){return this.filter(kt(er($)))},pr.prototype.slice=function($,O){$=yr($);var K=this;return K.__filtered__&&($>0||O<0)?new pr(K):($<0?K=K.takeRight(-$):$&&(K=K.drop($)),O!==g&&(O=yr(O),K=O<0?K.dropRight(-O):K.take(O-$)),K)},pr.prototype.takeRightWhile=function($){return this.reverse().takeWhile($).reverse()},pr.prototype.toArray=function(){return this.take(ge)},po(pr.prototype,function($,O){var K=/^(?:filter|find|map|reject)|While$/.test(O),_e=/^(?:head|last)$/.test(O),Ce=Te[_e?"take"+(O=="last"?"Right":""):O],Pe=_e||/^find/.test(O);Ce&&(Te.prototype[O]=function(){var je=this.__wrapped__,Ue=_e?[1]:arguments,Qe=je instanceof pr,yt=Ue[0],Et=Qe||gr(je),Tt=function(Cr){var Tr=Ce.apply(Te,Us([Cr],Ue));return _e&&Dt?Tr[0]:Tr};Et&&K&&typeof yt=="function"&&yt.length!=1&&(Qe=Et=!1);var Dt=this.__chain__,Ut=!!this.__actions__.length,or=Pe&&!Dt,Sr=Qe&&!Ut;if(!Pe&&Et){je=Sr?je:new pr(this);var ir=$.apply(je,Ue);return ir.__actions__.push({func:qo,args:[Tt],thisArg:g}),new In(ir,Dt)}return or&&Sr?$.apply(this,Ue):(ir=this.thru(Tt),or?_e?ir.value()[0]:ir.value():ir)})}),Rn(["pop","push","shift","sort","splice","unshift"],function($){var O=Cs[$],K=/^(?:push|sort|unshift)$/.test($)?"tap":"thru",_e=/^(?:pop|shift)$/.test($);Te.prototype[$]=function(){var Ce=arguments;if(_e&&!this.__chain__){var Pe=this.value();return O.apply(gr(Pe)?Pe:[],Ce)}return this[K](function(je){return O.apply(gr(je)?je:[],Ce)})}}),po(pr.prototype,function($,O){var K=Te[O];if(K){var _e=K.name+"";Rr.call(la,_e)||(la[_e]=[]),la[_e].push({name:O,func:K})}}),la[Ta(g,z).name]=[{name:"wrapper",func:g}],pr.prototype.clone=ac,pr.prototype.reverse=Du,pr.prototype.value=ma,Te.prototype.at=Wc,Te.prototype.chain=Yi,Te.prototype.commit=qc,Te.prototype.next=Td,Te.prototype.plant=Bf,Te.prototype.reverse=Rd,Te.prototype.toJSON=Te.prototype.valueOf=Te.prototype.value=zf,Te.prototype.first=Te.prototype.head,Ms&&(Te.prototype[Ms]=Pd),Te},ra=wf();rs?((rs.exports=ra)._=ra,Ba._=ra):Ur._=ra}).call(lodash)}(lodash$1,lodash$1.exports)),lodash$1.exports}var lodashExports=requireLodash();const _=getDefaultExportFromCjs(lodashExports),LISTENERS_SUFFIX="\0listeners";class BetterEventEmitter{constructor(){Xo(this,"listeners",new Map);Xo(this,"preventDefault",Symbol());Xo(this,"stop",this.preventDefault)}on(m,g,{warnAfter:x=10,callNow:b=!1}={}){typeof m=="string"&&(m=[m]);for(const E of m){let v=this.listeners.get(E);v||this.listeners.set(E,v=new Set),v.add(g),v.size>x&&console.warn("Warning: many event listeners for ",E),this.emit(E+LISTENERS_SUFFIX,v,g)}if(b)try{g()}catch(E){}return()=>{for(const E of m){const v=this.listeners.get(E);v&&(v.delete(g),this.emit(E+LISTENERS_SUFFIX,v))}}}onListeners(m,g){return this.on(m+LISTENERS_SUFFIX,g)}once(m,g){let x;const b=new Promise(E=>{x=this.on(m,function(...v){return x(),E(v.slice(0,-1)),g==null?void 0:g(...v)})});return Object.assign(x,{then:b.then.bind(b)})}multi(m){const g=Object.entries(m).map(([x,b])=>this.on(x.split(" "),b));return()=>{for(const x of g)x()}}anyListener(m){var g;return!!((g=this.listeners.get(m))!=null&&g.size)}emit(m,...g){let x=this.listeners.get(m);if(!(x!=null&&x.size))return;const b=[];let E=!1;const v={output:b,preventDefault(){E=!0}};for(const S of x){const C=S(...g,v);C===this.stop?v.preventDefault():C!==void 0&&b.push(C)}return Object.assign(b,{isDefaultPrevented:()=>E})}emitAsync(m,...g){return vt(this,null,function*(){const x=this.emit(m,...g);if(!x)return;const b=yield Promise.all(x);return Object.assign(b,{isDefaultPrevented:()=>x.isDefaultPrevented()||b.some(E=>E===this.preventDefault)})})}}const API_URL="/~/api/",timeoutByApi={loginSrp1:90,login:90,get_status:20,check_update:20,get_vfs:20},defaultApiCallOptions={};function setDefaultApiCallOptions(d){Object.assign(defaultApiCallOptions,d)}function apiCall(d,m,g={}){var R,k,L;_.defaults(g,defaultApiCallOptions);const x=(R=g.modal)==null?void 0:R.call(g,d,m),b=window.AbortController?new AbortController:void 0;let E="";const v=1e3*((L=(k=timeoutByApi[d])!=null?k:g.timeout)!=null?L:10),S=v&&setTimeout(()=>{b==null||b.abort(E="timeout"),console.debug("API TIMEOUT",d,m!=null?m:"")},v),C=g.restUri,T=new Date;return Object.assign(fetch(`${location.origin}${C||getPrefixUrl()+API_URL+d}`,{method:C?d:g.method||"POST",headers:{"content-type":"application/json","x-hfs-anti-csrf":"1"},signal:b==null?void 0:b.signal,body:m&&JSON.stringify(m)}).then(D=>vt(this,null,function*(){var N;x==null||x();let A=yield D.text(),I;try{I=g.skipParse?A:JSON.parse(A)}catch(z){I=A}if(g!=null&&g.skipLog||console.debug(D.ok?"API":"API FAILED",d,m!=null?m:"",">>",I,{started:formatTime(T),duration:Date.now()-+T}),yield(N=g.onResponse)==null?void 0:N.call(g,D,I),!D.ok)throw new ApiError(D.status,I===A?A:`Failed API ${d}: ${D.statusText}`,I);return I}),D=>{var A;throw x==null||x(),(A=D==null?void 0:D.message)!=null&&A.includes("fetch")?(console.error(D.message),Error("Server unreachable")):E||D}).finally(()=>clearTimeout(S)),{abort(){b==null||b.abort(E="cancel")},aborted:()=>b==null?void 0:b.signal.aborted})}class ApiError extends Error{constructor(m,g,x){super(g,{cause:x}),this.code=m}get data(){return this.cause}}function useApi(d,m,g={}){const[x,b,E]=useStateMounted(void 0),[v,S]=useStateMounted(void 0),[C,T]=useStateMounted(0),[R,k,L]=useStateMounted(void 0),D=reactExports.useRef();reactExports.useEffect(()=>{var U;S(void 0);let z=!1,j;const Y=()=>z||(j==null?void 0:j.aborted()),B=wait(0).then(()=>{if(!z)return j=!d||Y()?void 0:apiCall(d,m,g),k(j),j}).then(W=>{b(Y()?void 0:W),S(void 0)},W=>{S(Y()?void 0:W),b(void 0)}).finally(()=>{j===L()&&k(void 0),D.current=void 0});return(U=D.current)==null||U.resolve(B),()=>{z=!0,j==null||j.abort()}},[d,JSON.stringify(m),JSON.stringify(g),C]);const A=reactExports.useCallback(()=>{D.current||(D.current=pendingPromise(),T(z=>z+1))},[T]),I=reactExports.useMemo(()=>new BetterEventEmitter,[]),N=reactExports.useCallback(z=>I.on("data",z),[I]);return reactExports.useEffect(()=>{I.emit("data")},[x]),{data:x,setData:b,getData:E,error:v,reload:A,sub:N,loading:R}}function apiEvents(d,m,g){m=_.omitBy(m,_.isUndefined);const x=new EventSource(getPrefixUrl()+API_URL+d+buildUrlQueryString(m));return x.onopen=()=>{console.debug("API EVENTS",d,m),g("connected")},x.onerror=b=>g("error",b),x.onmessage=({data:b})=>{if(!b)return g("closed"),x.close();try{b=JSON.parse(b)}catch(E){return g("string",b)}console.debug("SSE msg",b),g("msg",b)},x}function useApiEvents(d,m={}){const[g,x]=useStateMounted(void 0),[b,E]=useStateMounted(void 0),[v,S]=useStateMounted(!1);return reactExports.useEffect(()=>{const C=apiEvents(d,m,(R,k)=>{switch(R){case"error":return E("Connection error"),T();case"closed":return T();case"msg":return C.readyState===C.CLOSED?T():x(k)}});return()=>{C.close(),T()};function T(){S(!1)}},[d,JSON.stringify(m)]),{data:g,loading:v,error:b}}function getNotifications(d,m){return vt(this,null,function*(){return new Promise(g=>{const x=apiEvents("get_notifications",{channel:d},(b,E)=>{if(b==="connected")return g(x);if(b==="msg")for(const[v,S]of E)v&&m(v,S)})})})}var utils$1={},constants,hasRequiredConstants;function requireConstants(){if(hasRequiredConstants)return constants;hasRequiredConstants=1;const d="\\\\/",m=`[^${d}]`,g="\\.",x="\\+",b="\\?",E="\\/",v="(?=.)",S="[^/]",C=`(?:${E}|$)`,T=`(?:^|${E})`,R=`${g}{1,2}${C}`,k=`(?!${g})`,L=`(?!${T}${R})`,D=`(?!${g}{0,1}${C})`,A=`(?!${R})`,I=`[^.${E}]`,N=`${S}*?`,j={DOT_LITERAL:g,PLUS_LITERAL:x,QMARK_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:v,QMARK:S,END_ANCHOR:C,DOTS_SLASH:R,NO_DOT:k,NO_DOTS:L,NO_DOT_SLASH:D,NO_DOTS_SLASH:A,QMARK_NO_DOT:I,STAR:N,START_ANCHOR:T,SEP:"/"},Y=$t(Fe({},j),{SLASH_LITERAL:`[${d}]`,QMARK:m,STAR:`${m}*?`,DOTS_SLASH:`${g}{1,2}(?:[${d}]|$)`,NO_DOT:`(?!${g})`,NO_DOTS:`(?!(?:^|[${d}])${g}{1,2}(?:[${d}]|$))`,NO_DOT_SLASH:`(?!${g}{0,1}(?:[${d}]|$))`,NO_DOTS_SLASH:`(?!${g}{1,2}(?:[${d}]|$))`,QMARK_NO_DOT:`[^.${d}]`,START_ANCHOR:`(?:^|[${d}])`,END_ANCHOR:`(?:[${d}]|$)`,SEP:"\\"}),B={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};return constants={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:B,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(U){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${U.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(U){return U===!0?Y:j}},constants}var hasRequiredUtils$1;function requireUtils$1(){return hasRequiredUtils$1||(hasRequiredUtils$1=1,function(d){const{REGEX_BACKSLASH:m,REGEX_REMOVE_BACKSLASH:g,REGEX_SPECIAL_CHARS:x,REGEX_SPECIAL_CHARS_GLOBAL:b}=requireConstants();d.isObject=E=>E!==null&&typeof E=="object"&&!Array.isArray(E),d.hasRegexChars=E=>x.test(E),d.isRegexChar=E=>E.length===1&&d.hasRegexChars(E),d.escapeRegex=E=>E.replace(b,"\\$1"),d.toPosixSlashes=E=>E.replace(m,"/"),d.isWindows=()=>{if(typeof navigator!="undefined"&&navigator.platform){const E=navigator.platform.toLowerCase();return E==="win32"||E==="windows"}return typeof process!="undefined"&&process.platform?process.platform==="win32":!1},d.removeBackslashes=E=>E.replace(g,v=>v==="\\"?"":v),d.escapeLast=(E,v,S)=>{const C=E.lastIndexOf(v,S);return C===-1?E:E[C-1]==="\\"?d.escapeLast(E,v,C-1):`${E.slice(0,C)}\\${E.slice(C)}`},d.removePrefix=(E,v={})=>{let S=E;return S.startsWith("./")&&(S=S.slice(2),v.prefix="./"),S},d.wrapOutput=(E,v={},S={})=>{const C=S.contains?"":"^",T=S.contains?"":"$";let R=`${C}(?:${E})${T}`;return v.negated===!0&&(R=`(?:^(?!${R}).*$)`),R},d.basename=(E,{windows:v}={})=>{const S=E.split(v?/[\\/]/:"/"),C=S[S.length-1];return C===""?S[S.length-2]:C}}(utils$1)),utils$1}var scan_1,hasRequiredScan;function requireScan(){if(hasRequiredScan)return scan_1;hasRequiredScan=1;const d=requireUtils$1(),{CHAR_ASTERISK:m,CHAR_AT:g,CHAR_BACKWARD_SLASH:x,CHAR_COMMA:b,CHAR_DOT:E,CHAR_EXCLAMATION_MARK:v,CHAR_FORWARD_SLASH:S,CHAR_LEFT_CURLY_BRACE:C,CHAR_LEFT_PARENTHESES:T,CHAR_LEFT_SQUARE_BRACKET:R,CHAR_PLUS:k,CHAR_QUESTION_MARK:L,CHAR_RIGHT_CURLY_BRACE:D,CHAR_RIGHT_PARENTHESES:A,CHAR_RIGHT_SQUARE_BRACKET:I}=requireConstants(),N=Y=>Y===S||Y===x,z=Y=>{Y.isPrefix!==!0&&(Y.depth=Y.isGlobstar?1/0:1)};return scan_1=(Y,B)=>{const U=B||{},W=Y.length-1,V=U.parts===!0||U.scanToEnd===!0,J=[],Q=[],X=[];let re=Y,ie=-1,oe=0,Z=0,ee=!1,ce=!1,fe=!1,ae=!1,ue=!1,pe=!1,ge=!1,ye=!1,Ee=!1,ve=!1,Se=0,$e,Me,Re={value:"",depth:0,isGlob:!1};const De=()=>ie>=W,Be=()=>re.charCodeAt(ie+1),Le=()=>($e=Me,re.charCodeAt(++ie));for(;ie<W;){Me=Le();let Ve;if(Me===x){ge=Re.backslashes=!0,Me=Le(),Me===C&&(pe=!0);continue}if(pe===!0||Me===C){for(Se++;De()!==!0&&(Me=Le());){if(Me===x){ge=Re.backslashes=!0,Le();continue}if(Me===C){Se++;continue}if(pe!==!0&&Me===E&&(Me=Le())===E){if(ee=Re.isBrace=!0,fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(pe!==!0&&Me===b){if(ee=Re.isBrace=!0,fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(Me===D&&(Se--,Se===0)){pe=!1,ee=Re.isBrace=!0,ve=!0;break}}if(V===!0)continue;break}if(Me===S){if(J.push(ie),Q.push(Re),Re={value:"",depth:0,isGlob:!1},ve===!0)continue;if($e===E&&ie===oe+1){oe+=2;continue}Z=ie+1;continue}if(U.noext!==!0&&(Me===k||Me===g||Me===m||Me===L||Me===v)===!0&&Be()===T){if(fe=Re.isGlob=!0,ae=Re.isExtglob=!0,ve=!0,Me===v&&ie===oe&&(Ee=!0),V===!0){for(;De()!==!0&&(Me=Le());){if(Me===x){ge=Re.backslashes=!0,Me=Le();continue}if(Me===A){fe=Re.isGlob=!0,ve=!0;break}}continue}break}if(Me===m){if($e===m&&(ue=Re.isGlobstar=!0),fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(Me===L){if(fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(Me===R){for(;De()!==!0&&(Ve=Le());){if(Ve===x){ge=Re.backslashes=!0,Le();continue}if(Ve===I){ce=Re.isBracket=!0,fe=Re.isGlob=!0,ve=!0;break}}if(V===!0)continue;break}if(U.nonegate!==!0&&Me===v&&ie===oe){ye=Re.negated=!0,oe++;continue}if(U.noparen!==!0&&Me===T){if(fe=Re.isGlob=!0,V===!0){for(;De()!==!0&&(Me=Le());){if(Me===T){ge=Re.backslashes=!0,Me=Le();continue}if(Me===A){ve=!0;break}}continue}break}if(fe===!0){if(ve=!0,V===!0)continue;break}}U.noext===!0&&(ae=!1,fe=!1);let Ge=re,Ie="",Ye="";oe>0&&(Ie=re.slice(0,oe),re=re.slice(oe),Z-=oe),Ge&&fe===!0&&Z>0?(Ge=re.slice(0,Z),Ye=re.slice(Z)):fe===!0?(Ge="",Ye=re):Ge=re,Ge&&Ge!==""&&Ge!=="/"&&Ge!==re&&N(Ge.charCodeAt(Ge.length-1))&&(Ge=Ge.slice(0,-1)),U.unescape===!0&&(Ye&&(Ye=d.removeBackslashes(Ye)),Ge&&ge===!0&&(Ge=d.removeBackslashes(Ge)));const He={prefix:Ie,input:Y,start:oe,base:Ge,glob:Ye,isBrace:ee,isBracket:ce,isGlob:fe,isExtglob:ae,isGlobstar:ue,negated:ye,negatedExtglob:Ee};if(U.tokens===!0&&(He.maxDepth=0,N(Me)||Q.push(Re),He.tokens=Q),U.parts===!0||U.tokens===!0){let Ve;for(let rt=0;rt<J.length;rt++){const Oe=Ve?Ve+1:oe,ot=J[rt],ke=Y.slice(Oe,ot);U.tokens&&(rt===0&&oe!==0?(Q[rt].isPrefix=!0,Q[rt].value=Ie):Q[rt].value=ke,z(Q[rt]),He.maxDepth+=Q[rt].depth),(rt!==0||ke!=="")&&X.push(ke),Ve=ot}if(Ve&&Ve+1<Y.length){const rt=Y.slice(Ve+1);X.push(rt),U.tokens&&(Q[Q.length-1].value=rt,z(Q[Q.length-1]),He.maxDepth+=Q[Q.length-1].depth)}He.slashes=J,He.parts=X}return He},scan_1}var parse_1,hasRequiredParse;function requireParse(){if(hasRequiredParse)return parse_1;hasRequiredParse=1;const d=requireConstants(),m=requireUtils$1(),{MAX_LENGTH:g,POSIX_REGEX_SOURCE:x,REGEX_NON_SPECIAL_CHARS:b,REGEX_SPECIAL_CHARS_BACKREF:E,REPLACEMENTS:v}=d,S=(R,k)=>{if(typeof k.expandRange=="function")return k.expandRange(...R,k);R.sort();const L=`[${R.join("-")}]`;try{new RegExp(L)}catch(D){return R.map(A=>m.escapeRegex(A)).join("..")}return L},C=(R,k)=>`Missing ${R}: "${k}" - use "\\\\${k}" to match literal characters`,T=(R,k)=>{if(typeof R!="string")throw new TypeError("Expected a string");R=v[R]||R;const L=Fe({},k),D=typeof L.maxLength=="number"?Math.min(g,L.maxLength):g;let A=R.length;if(A>D)throw new SyntaxError(`Input length: ${A}, exceeds maximum allowed length: ${D}`);const I={type:"bos",value:"",output:L.prepend||""},N=[I],z=L.capture?"":"?:",j=d.globChars(L.windows),Y=d.extglobChars(j),{DOT_LITERAL:B,PLUS_LITERAL:U,SLASH_LITERAL:W,ONE_CHAR:V,DOTS_SLASH:J,NO_DOT:Q,NO_DOT_SLASH:X,NO_DOTS_SLASH:re,QMARK:ie,QMARK_NO_DOT:oe,STAR:Z,START_ANCHOR:ee}=j,ce=Oe=>`(${z}(?:(?!${ee}${Oe.dot?J:B}).)*?)`,fe=L.dot?"":Q,ae=L.dot?ie:oe;let ue=L.bash===!0?ce(L):Z;L.capture&&(ue=`(${ue})`),typeof L.noext=="boolean"&&(L.noextglob=L.noext);const pe={input:R,index:-1,start:0,dot:L.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:N};R=m.removePrefix(R,pe),A=R.length;const ge=[],ye=[],Ee=[];let ve=I,Se;const $e=()=>pe.index===A-1,Me=pe.peek=(Oe=1)=>R[pe.index+Oe],Re=pe.advance=()=>R[++pe.index]||"",De=()=>R.slice(pe.index+1),Be=(Oe="",ot=0)=>{pe.consumed+=Oe,pe.index+=ot},Le=Oe=>{pe.output+=Oe.output!=null?Oe.output:Oe.value,Be(Oe.value)},Ge=()=>{let Oe=1;for(;Me()==="!"&&(Me(2)!=="("||Me(3)==="?");)Re(),pe.start++,Oe++;return Oe%2===0?!1:(pe.negated=!0,pe.start++,!0)},Ie=Oe=>{pe[Oe]++,Ee.push(Oe)},Ye=Oe=>{pe[Oe]--,Ee.pop()},He=Oe=>{if(ve.type==="globstar"){const ot=pe.braces>0&&(Oe.type==="comma"||Oe.type==="brace"),ke=Oe.extglob===!0||ge.length&&(Oe.type==="pipe"||Oe.type==="paren");Oe.type!=="slash"&&Oe.type!=="paren"&&!ot&&!ke&&(pe.output=pe.output.slice(0,-ve.output.length),ve.type="star",ve.value="*",ve.output=ue,pe.output+=ve.output)}if(ge.length&&Oe.type!=="paren"&&(ge[ge.length-1].inner+=Oe.value),(Oe.value||Oe.output)&&Le(Oe),ve&&ve.type==="text"&&Oe.type==="text"){ve.output=(ve.output||ve.value)+Oe.value,ve.value+=Oe.value;return}Oe.prev=ve,N.push(Oe),ve=Oe},Ve=(Oe,ot)=>{const ke=$t(Fe({},Y[ot]),{conditions:1,inner:""});ke.prev=ve,ke.parens=pe.parens,ke.output=pe.output;const Ne=(L.capture?"(":"")+ke.open;Ie("parens"),He({type:Oe,value:ot,output:pe.output?"":V}),He({type:"paren",extglob:!0,value:Re(),output:Ne}),ge.push(ke)},rt=Oe=>{let ot=Oe.close+(L.capture?")":""),ke;if(Oe.type==="negate"){let Ne=ue;if(Oe.inner&&Oe.inner.length>1&&Oe.inner.includes("/")&&(Ne=ce(L)),(Ne!==ue||$e()||/^\)+$/.test(De()))&&(ot=Oe.close=`)$))${Ne}`),Oe.inner.includes("*")&&(ke=De())&&/^\.[^\\/.]+$/.test(ke)){const Ke=T(ke,$t(Fe({},k),{fastpaths:!1})).output;ot=Oe.close=`)${Ke})${Ne})`}Oe.prev.type==="bos"&&(pe.negatedExtglob=!0)}He({type:"paren",extglob:!0,value:Se,output:ot}),Ye("parens")};if(L.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(R)){let Oe=!1,ot=R.replace(E,(ke,Ne,Ke,Xe,st,xt)=>Xe==="\\"?(Oe=!0,ke):Xe==="?"?Ne?Ne+Xe+(st?ie.repeat(st.length):""):xt===0?ae+(st?ie.repeat(st.length):""):ie.repeat(Ke.length):Xe==="."?B.repeat(Ke.length):Xe==="*"?Ne?Ne+Xe+(st?ue:""):ue:Ne?ke:`\\${ke}`);return Oe===!0&&(L.unescape===!0?ot=ot.replace(/\\/g,""):ot=ot.replace(/\\+/g,ke=>ke.length%2===0?"\\\\":ke?"\\":"")),ot===R&&L.contains===!0?(pe.output=R,pe):(pe.output=m.wrapOutput(ot,pe,k),pe)}for(;!$e();){if(Se=Re(),Se==="\0")continue;if(Se==="\\"){const ke=Me();if(ke==="/"&&L.bash!==!0||ke==="."||ke===";")continue;if(!ke){Se+="\\",He({type:"text",value:Se});continue}const Ne=/^\\+/.exec(De());let Ke=0;if(Ne&&Ne[0].length>2&&(Ke=Ne[0].length,pe.index+=Ke,Ke%2!==0&&(Se+="\\")),L.unescape===!0?Se=Re():Se+=Re(),pe.brackets===0){He({type:"text",value:Se});continue}}if(pe.brackets>0&&(Se!=="]"||ve.value==="["||ve.value==="[^")){if(L.posix!==!1&&Se===":"){const ke=ve.value.slice(1);if(ke.includes("[")&&(ve.posix=!0,ke.includes(":"))){const Ne=ve.value.lastIndexOf("["),Ke=ve.value.slice(0,Ne),Xe=ve.value.slice(Ne+2),st=x[Xe];if(st){ve.value=Ke+st,pe.backtrack=!0,Re(),!I.output&&N.indexOf(ve)===1&&(I.output=V);continue}}}(Se==="["&&Me()!==":"||Se==="-"&&Me()==="]")&&(Se=`\\${Se}`),Se==="]"&&(ve.value==="["||ve.value==="[^")&&(Se=`\\${Se}`),L.posix===!0&&Se==="!"&&ve.value==="["&&(Se="^"),ve.value+=Se,Le({value:Se});continue}if(pe.quotes===1&&Se!=='"'){Se=m.escapeRegex(Se),ve.value+=Se,Le({value:Se});continue}if(Se==='"'){pe.quotes=pe.quotes===1?0:1,L.keepQuotes===!0&&He({type:"text",value:Se});continue}if(Se==="("){Ie("parens"),He({type:"paren",value:Se});continue}if(Se===")"){if(pe.parens===0&&L.strictBrackets===!0)throw new SyntaxError(C("opening","("));const ke=ge[ge.length-1];if(ke&&pe.parens===ke.parens+1){rt(ge.pop());continue}He({type:"paren",value:Se,output:pe.parens?")":"\\)"}),Ye("parens");continue}if(Se==="["){if(L.nobracket===!0||!De().includes("]")){if(L.nobracket!==!0&&L.strictBrackets===!0)throw new SyntaxError(C("closing","]"));Se=`\\${Se}`}else Ie("brackets");He({type:"bracket",value:Se});continue}if(Se==="]"){if(L.nobracket===!0||ve&&ve.type==="bracket"&&ve.value.length===1){He({type:"text",value:Se,output:`\\${Se}`});continue}if(pe.brackets===0){if(L.strictBrackets===!0)throw new SyntaxError(C("opening","["));He({type:"text",value:Se,output:`\\${Se}`});continue}Ye("brackets");const ke=ve.value.slice(1);if(ve.posix!==!0&&ke[0]==="^"&&!ke.includes("/")&&(Se=`/${Se}`),ve.value+=Se,Le({value:Se}),L.literalBrackets===!1||m.hasRegexChars(ke))continue;const Ne=m.escapeRegex(ve.value);if(pe.output=pe.output.slice(0,-ve.value.length),L.literalBrackets===!0){pe.output+=Ne,ve.value=Ne;continue}ve.value=`(${z}${Ne}|${ve.value})`,pe.output+=ve.value;continue}if(Se==="{"&&L.nobrace!==!0){Ie("braces");const ke={type:"brace",value:Se,output:"(",outputIndex:pe.output.length,tokensIndex:pe.tokens.length};ye.push(ke),He(ke);continue}if(Se==="}"){const ke=ye[ye.length-1];if(L.nobrace===!0||!ke){He({type:"text",value:Se,output:Se});continue}let Ne=")";if(ke.dots===!0){const Ke=N.slice(),Xe=[];for(let st=Ke.length-1;st>=0&&(N.pop(),Ke[st].type!=="brace");st--)Ke[st].type!=="dots"&&Xe.unshift(Ke[st].value);Ne=S(Xe,L),pe.backtrack=!0}if(ke.comma!==!0&&ke.dots!==!0){const Ke=pe.output.slice(0,ke.outputIndex),Xe=pe.tokens.slice(ke.tokensIndex);ke.value=ke.output="\\{",Se=Ne="\\}",pe.output=Ke;for(const st of Xe)pe.output+=st.output||st.value}He({type:"brace",value:Se,output:Ne}),Ye("braces"),ye.pop();continue}if(Se==="|"){ge.length>0&&ge[ge.length-1].conditions++,He({type:"text",value:Se});continue}if(Se===","){let ke=Se;const Ne=ye[ye.length-1];Ne&&Ee[Ee.length-1]==="braces"&&(Ne.comma=!0,ke="|"),He({type:"comma",value:Se,output:ke});continue}if(Se==="/"){if(ve.type==="dot"&&pe.index===pe.start+1){pe.start=pe.index+1,pe.consumed="",pe.output="",N.pop(),ve=I;continue}He({type:"slash",value:Se,output:W});continue}if(Se==="."){if(pe.braces>0&&ve.type==="dot"){ve.value==="."&&(ve.output=B);const ke=ye[ye.length-1];ve.type="dots",ve.output+=Se,ve.value+=Se,ke.dots=!0;continue}if(pe.braces+pe.parens===0&&ve.type!=="bos"&&ve.type!=="slash"){He({type:"text",value:Se,output:B});continue}He({type:"dot",value:Se,output:B});continue}if(Se==="?"){if(!(ve&&ve.value==="(")&&L.noextglob!==!0&&Me()==="("&&Me(2)!=="?"){Ve("qmark",Se);continue}if(ve&&ve.type==="paren"){const Ne=Me();let Ke=Se;(ve.value==="("&&!/[!=<:]/.test(Ne)||Ne==="<"&&!/<([!=]|\w+>)/.test(De()))&&(Ke=`\\${Se}`),He({type:"text",value:Se,output:Ke});continue}if(L.dot!==!0&&(ve.type==="slash"||ve.type==="bos")){He({type:"qmark",value:Se,output:oe});continue}He({type:"qmark",value:Se,output:ie});continue}if(Se==="!"){if(L.noextglob!==!0&&Me()==="("&&(Me(2)!=="?"||!/[!=<:]/.test(Me(3)))){Ve("negate",Se);continue}if(L.nonegate!==!0&&pe.index===0){Ge();continue}}if(Se==="+"){if(L.noextglob!==!0&&Me()==="("&&Me(2)!=="?"){Ve("plus",Se);continue}if(ve&&ve.value==="("||L.regex===!1){He({type:"plus",value:Se,output:U});continue}if(ve&&(ve.type==="bracket"||ve.type==="paren"||ve.type==="brace")||pe.parens>0){He({type:"plus",value:Se});continue}He({type:"plus",value:U});continue}if(Se==="@"){if(L.noextglob!==!0&&Me()==="("&&Me(2)!=="?"){He({type:"at",extglob:!0,value:Se,output:""});continue}He({type:"text",value:Se});continue}if(Se!=="*"){(Se==="$"||Se==="^")&&(Se=`\\${Se}`);const ke=b.exec(De());ke&&(Se+=ke[0],pe.index+=ke[0].length),He({type:"text",value:Se});continue}if(ve&&(ve.type==="globstar"||ve.star===!0)){ve.type="star",ve.star=!0,ve.value+=Se,ve.output=ue,pe.backtrack=!0,pe.globstar=!0,Be(Se);continue}let Oe=De();if(L.noextglob!==!0&&/^\([^?]/.test(Oe)){Ve("star",Se);continue}if(ve.type==="star"){if(L.noglobstar===!0){Be(Se);continue}const ke=ve.prev,Ne=ke.prev,Ke=ke.type==="slash"||ke.type==="bos",Xe=Ne&&(Ne.type==="star"||Ne.type==="globstar");if(L.bash===!0&&(!Ke||Oe[0]&&Oe[0]!=="/")){He({type:"star",value:Se,output:""});continue}const st=pe.braces>0&&(ke.type==="comma"||ke.type==="brace"),xt=ge.length&&(ke.type==="pipe"||ke.type==="paren");if(!Ke&&ke.type!=="paren"&&!st&&!xt){He({type:"star",value:Se,output:""});continue}for(;Oe.slice(0,3)==="/**";){const Je=R[pe.index+4];if(Je&&Je!=="/")break;Oe=Oe.slice(3),Be("/**",3)}if(ke.type==="bos"&&$e()){ve.type="globstar",ve.value+=Se,ve.output=ce(L),pe.output=ve.output,pe.globstar=!0,Be(Se);continue}if(ke.type==="slash"&&ke.prev.type!=="bos"&&!Xe&&$e()){pe.output=pe.output.slice(0,-(ke.output+ve.output).length),ke.output=`(?:${ke.output}`,ve.type="globstar",ve.output=ce(L)+(L.strictSlashes?")":"|$)"),ve.value+=Se,pe.globstar=!0,pe.output+=ke.output+ve.output,Be(Se);continue}if(ke.type==="slash"&&ke.prev.type!=="bos"&&Oe[0]==="/"){const Je=Oe[1]!==void 0?"|$":"";pe.output=pe.output.slice(0,-(ke.output+ve.output).length),ke.output=`(?:${ke.output}`,ve.type="globstar",ve.output=`${ce(L)}${W}|${W}${Je})`,ve.value+=Se,pe.output+=ke.output+ve.output,pe.globstar=!0,Be(Se+Re()),He({type:"slash",value:"/",output:""});continue}if(ke.type==="bos"&&Oe[0]==="/"){ve.type="globstar",ve.value+=Se,ve.output=`(?:^|${W}|${ce(L)}${W})`,pe.output=ve.output,pe.globstar=!0,Be(Se+Re()),He({type:"slash",value:"/",output:""});continue}pe.output=pe.output.slice(0,-ve.output.length),ve.type="globstar",ve.output=ce(L),ve.value+=Se,pe.output+=ve.output,pe.globstar=!0,Be(Se);continue}const ot={type:"star",value:Se,output:ue};if(L.bash===!0){ot.output=".*?",(ve.type==="bos"||ve.type==="slash")&&(ot.output=fe+ot.output),He(ot);continue}if(ve&&(ve.type==="bracket"||ve.type==="paren")&&L.regex===!0){ot.output=Se,He(ot);continue}(pe.index===pe.start||ve.type==="slash"||ve.type==="dot")&&(ve.type==="dot"?(pe.output+=X,ve.output+=X):L.dot===!0?(pe.output+=re,ve.output+=re):(pe.output+=fe,ve.output+=fe),Me()!=="*"&&(pe.output+=V,ve.output+=V)),He(ot)}for(;pe.brackets>0;){if(L.strictBrackets===!0)throw new SyntaxError(C("closing","]"));pe.output=m.escapeLast(pe.output,"["),Ye("brackets")}for(;pe.parens>0;){if(L.strictBrackets===!0)throw new SyntaxError(C("closing",")"));pe.output=m.escapeLast(pe.output,"("),Ye("parens")}for(;pe.braces>0;){if(L.strictBrackets===!0)throw new SyntaxError(C("closing","}"));pe.output=m.escapeLast(pe.output,"{"),Ye("braces")}if(L.strictSlashes!==!0&&(ve.type==="star"||ve.type==="bracket")&&He({type:"maybe_slash",value:"",output:`${W}?`}),pe.backtrack===!0){pe.output="";for(const Oe of pe.tokens)pe.output+=Oe.output!=null?Oe.output:Oe.value,Oe.suffix&&(pe.output+=Oe.suffix)}return pe};return T.fastpaths=(R,k)=>{const L=Fe({},k),D=typeof L.maxLength=="number"?Math.min(g,L.maxLength):g,A=R.length;if(A>D)throw new SyntaxError(`Input length: ${A}, exceeds maximum allowed length: ${D}`);R=v[R]||R;const{DOT_LITERAL:I,SLASH_LITERAL:N,ONE_CHAR:z,DOTS_SLASH:j,NO_DOT:Y,NO_DOTS:B,NO_DOTS_SLASH:U,STAR:W,START_ANCHOR:V}=d.globChars(L.windows),J=L.dot?B:Y,Q=L.dot?U:Y,X=L.capture?"":"?:",re={negated:!1,prefix:""};let ie=L.bash===!0?".*?":W;L.capture&&(ie=`(${ie})`);const oe=fe=>fe.noglobstar===!0?ie:`(${X}(?:(?!${V}${fe.dot?j:I}).)*?)`,Z=fe=>{switch(fe){case"*":return`${J}${z}${ie}`;case".*":return`${I}${z}${ie}`;case"*.*":return`${J}${ie}${I}${z}${ie}`;case"*/*":return`${J}${ie}${N}${z}${Q}${ie}`;case"**":return J+oe(L);case"**/*":return`(?:${J}${oe(L)}${N})?${Q}${z}${ie}`;case"**/*.*":return`(?:${J}${oe(L)}${N})?${Q}${ie}${I}${z}${ie}`;case"**/.*":return`(?:${J}${oe(L)}${N})?${I}${z}${ie}`;default:{const ae=/^(.*?)\.(\w+)$/.exec(fe);if(!ae)return;const ue=Z(ae[1]);return ue?ue+I+ae[2]:void 0}}},ee=m.removePrefix(R,re);let ce=Z(ee);return ce&&L.strictSlashes!==!0&&(ce+=`${N}?`),ce},parse_1=T,parse_1}var picomatch_1,hasRequiredPicomatch;function requirePicomatch(){if(hasRequiredPicomatch)return picomatch_1;hasRequiredPicomatch=1;const d=requireScan(),m=requireParse(),g=requireUtils$1(),x=requireConstants(),b=v=>v&&typeof v=="object"&&!Array.isArray(v),E=(v,S,C=!1)=>{if(Array.isArray(v)){const N=v.map(j=>E(j,S,C));return j=>{for(const Y of N){const B=Y(j);if(B)return B}return!1}}const T=b(v)&&v.tokens&&v.input;if(v===""||typeof v!="string"&&!T)throw new TypeError("Expected pattern to be a non-empty string");const R=S||{},k=R.windows,L=T?E.compileRe(v,S):E.makeRe(v,S,!1,!0),D=L.state;delete L.state;let A=()=>!1;if(R.ignore){const N=$t(Fe({},S),{ignore:null,onMatch:null,onResult:null});A=E(R.ignore,N,C)}const I=(N,z=!1)=>{const{isMatch:j,match:Y,output:B}=E.test(N,L,S,{glob:v,posix:k}),U={glob:v,state:D,regex:L,posix:k,input:N,output:B,match:Y,isMatch:j};return typeof R.onResult=="function"&&R.onResult(U),j===!1?(U.isMatch=!1,z?U:!1):A(N)?(typeof R.onIgnore=="function"&&R.onIgnore(U),U.isMatch=!1,z?U:!1):(typeof R.onMatch=="function"&&R.onMatch(U),z?U:!0)};return C&&(I.state=D),I};return E.test=(v,S,C,{glob:T,posix:R}={})=>{if(typeof v!="string")throw new TypeError("Expected input to be a string");if(v==="")return{isMatch:!1,output:""};const k=C||{},L=k.format||(R?g.toPosixSlashes:null);let D=v===T,A=D&&L?L(v):v;return D===!1&&(A=L?L(v):v,D=A===T),(D===!1||k.capture===!0)&&(k.matchBase===!0||k.basename===!0?D=E.matchBase(v,S,C,R):D=S.exec(A)),{isMatch:!!D,match:D,output:A}},E.matchBase=(v,S,C)=>(S instanceof RegExp?S:E.makeRe(S,C)).test(g.basename(v)),E.isMatch=(v,S,C)=>E(S,C)(v),E.parse=(v,S)=>Array.isArray(v)?v.map(C=>E.parse(C,S)):m(v,$t(Fe({},S),{fastpaths:!1})),E.scan=(v,S)=>d(v,S),E.compileRe=(v,S,C=!1,T=!1)=>{if(C===!0)return v.output;const R=S||{},k=R.contains?"":"^",L=R.contains?"":"$";let D=`${k}(?:${v.output})${L}`;v&&v.negated===!0&&(D=`^(?!${D}).*$`);const A=E.toRegex(D,S);return T===!0&&(A.state=v),A},E.makeRe=(v,S={},C=!1,T=!1)=>{if(!v||typeof v!="string")throw new TypeError("Expected a non-empty string");let R={negated:!1,fastpaths:!0};return S.fastpaths!==!1&&(v[0]==="."||v[0]==="*")&&(R.output=m.fastpaths(v,S)),R.output||(R=m(v,S)),E.compileRe(R,S,C,T)},E.toRegex=(v,S)=>{try{const C=S||{};return new RegExp(v,C.flags||(C.nocase?"i":""))}catch(C){if(S&&S.debug===!0)throw C;return/$^/}},E.constants=x,picomatch_1=E,picomatch_1}var picomatchExports=requirePicomatch();const picomatch=getDefaultExportFromCjs(picomatchExports),SPECIAL_URI="/~/",FRONTEND_URI=SPECIAL_URI+"frontend/",ADMIN_URI=SPECIAL_URI+"admin/",API_URI=SPECIAL_URI+"api/",PLUGINS_PUB_URI=SPECIAL_URI+"plugins/",ICONS_URI=SPECIAL_URI+"icons/",PORT_DISABLED=-1,NBSP=" ",PLUGIN_CUSTOM_REST_PREFIX="_",HFS_REPO="rejetto/hfs",UPLOAD_TEMP_HASH="upload-temp-hash",MTIME_CHECK="x-mtime-check",PREVIOUS_TAG="previous",ALLOW_SESSION_IP_CHANGE="allow_session_ip_change",HIDE_IN_TESTS="hideInTests",EMBEDDED_LANGUAGE="en",HTTP_OK=200,HTTP_NO_CONTENT=204,HTTP_PARTIAL_CONTENT=206,HTTP_MOVED_PERMANENTLY=301,HTTP_TEMPORARY_REDIRECT=302,HTTP_NOT_MODIFIED=304,HTTP_BAD_REQUEST=400,HTTP_UNAUTHORIZED=401,HTTP_FORBIDDEN=403,HTTP_NOT_FOUND=404,HTTP_METHOD_NOT_ALLOWED=405,HTTP_NOT_ACCEPTABLE=406,HTTP_CONFLICT=409,HTTP_PRECONDITION_FAILED=412,HTTP_PAYLOAD_TOO_LARGE=413,HTTP_RANGE_NOT_SATISFIABLE=416,HTTP_FOOL=418,HTTP_FAILED_DEPENDENCY=424,HTTP_TOO_MANY_REQUESTS=429,HTTP_SERVER_ERROR=500,HTTP_SERVICE_UNAVAILABLE=503,HTTP_INSUFFICIENT_STORAGE=507,HTTP_MESSAGES={[HTTP_UNAUTHORIZED]:"Unauthorized",[HTTP_FORBIDDEN]:"Forbidden",[HTTP_NOT_FOUND]:"Not found",[HTTP_SERVER_ERROR]:"Server error",[HTTP_TOO_MANY_REQUESTS]:"Too many requests"},WEBSITE="https://rejetto.com/hfs/",REPO_URL=`https://github.com/${HFS_REPO}/`,WIKI_URL=REPO_URL+"wiki/",MINUTE=6e4,HOUR=60*MINUTE,DAY=24*HOUR,MAX_TILE_SIZE=10,FRONTEND_OPTIONS={file_menu_on_link:!0,tile_size:0,sort_by:"name",invert_order:!1,folders_first:!0,sort_numerics:!1,title_with_path:!0,theme:"",auto_play_seconds:5,disableTranslation:!1},SORT_BY_OPTIONS=["name","extension","size","time","creation"],THEME_OPTIONS={auto:"",light:"light",dark:"dark"},CFG=constMap(["geo_enable","geo_allow","geo_list","geo_allow_unknown","dynamic_dns_url","log","error_log","log_rotation","dont_log_net","log_gui","log_api","log_ua","log_spam","track_ips","max_downloads","max_downloads_per_ip","max_downloads_per_account","roots","force_address","split_uploads","force_lang","suspend_plugins","base_url","size_1024","disable_custom_html","comments_storage","outbound_proxy"]),LIST={add:"+",remove:"-",update:"=",props:"props",ready:"ready",error:"e"},WHO_ANYONE=!0,WHO_NO_ONE=!1,WHO_ANY_ACCOUNT="*",defaultPerms={can_see:"can_read",can_read:WHO_ANYONE,can_list:"can_read",can_upload:WHO_NO_ONE,can_delete:WHO_NO_ONE,can_archive:"can_read"},PERM_KEYS=typedKeys(defaultPerms);function constMap(d){return Object.fromEntries(d.map(m=>[m,m]))}function isWhoObject(d){return d!==null&&typeof d=="object"&&!Array.isArray(d)}const MULTIPLIERS=["","K","M","G","T"];function formatBytes(d,{post:m="B",k:g=0,digits:x=NaN,sep:b=" "}={}){var S;if(isNaN(Number(d))||d<0)return"";g||(g=(S=formatBytes.k)!=null?S:1024);const E=d&&Math.min(MULTIPLIERS.length-1,Math.floor(Math.log2(d)/Math.log2(g)));return d/=oo(g,E),(E&&!isNaN(x)?d.toFixed(x):_.round(d,isNaN(x)?d>=100?0:1:x))+b+(MULTIPLIERS[E]||"")+m}function formatSpeed(d,m={}){return formatBytes(d,Fe({post:"B/s"},m))}function prefix(d,m,g=""){return m?(d||"")+m+(g||""):""}function join(d,m,g="/"){if(!m)return d;if(!d)return m;const x=d.at(-1)===g,b=m[0]===g;return d+(!x&&!b?g+m:x&&b?m.slice(1):m)}function wait(d,m){return new Promise(g=>setTimeout(g,d,m))}function haveTimeout(d,m,g){let x;return Promise.race([m.finally(()=>clearTimeout(x)),new Promise((b,E)=>x=setTimeout(()=>E(g||Error("timeout")),d))])}function objSameKeys(d,m){return Object.fromEntries(Object.entries(d).map(([g,x])=>[g,m(x,g)]))}function objFromKeys(d,m){return Object.fromEntries(d.map(g=>[g,m(g)]))}function enforceFinal(d,m,g=!1){return(m?!m.endsWith(d):g)?m+d:m}function removeFinal(d,m){return m.endsWith(d)?m.slice(0,-d.length):m}function enforceStarting(d,m,g=!1){return(m?!m.startsWith(d):g)?d+m:m}function removeStarting(d,m){return m.startsWith(d)?m.slice(d.length):m}function strinsert(d,m,g,x=0){return d.slice(0,m)+g+d.slice(m+x)}function splitAt(d,m){if(typeof d=="number")return[m.slice(0,d),m.slice(d+1)];const g=m.indexOf(d);return g<0?[m,""]:[m.slice(0,g),m.slice(g+d.length)]}function stringAfter(d,m){const g=m.indexOf(d);return g<0?"":m.slice(g+d.length)}function truthy(d){return!!d}function onlyTruthy(d){return d.filter(truthy)}function setHidden(d,m){return Object.defineProperties(d,newObj(m,g=>({enumerable:!1,writable:!0,value:g})))}function try_(d,m){try{return d()}catch(g){return m==null?void 0:m(g)}}function with_(d,m){return m(d)}function formatPerc(d){return(d*100).toFixed(1)+"%"}function wantArray(d){return d==null?[]:Array.isArray(d)?d:[d]}function _log(...d){return console.log("**",...d),d[d.length-1]}function _dbg(d){debugger;return d}function pendingPromise(){let d;const m=new Promise((g,x)=>d={resolve:g,reject:x});return Object.assign(m,d)}function basename(d){var m;return((m=d.match(/([^\\/]+)[\\/]*$/))==null?void 0:m[1])||""}function dirname(d){return d.slice(0,Math.max(0,d.lastIndexOf("/",d.length-1)))}function tryJson(d,m){try{return d&&JSON.parse(d)}catch(g){return m==null?void 0:m(d)}}function swap(d,m,g){const x=d[m];return d[m]=d[g],d[g]=x,d}function isOrderedEqual(d,m){return _.isEqualWith(d,m,(g,x)=>{if(!_.isPlainObject(g)||!_.isPlainObject(x))return;const b=Object.keys(g),E=Object.keys(x);return b.length===E.length&&b.every((v,S)=>{const C=E[S];return v===C&&isOrderedEqual(g[v],x[C])})})}function findDefined(d,m){if(d)for(const g in d){const x=m(d[g],g);if(x!==void 0)return x}}function newObj(d,m,g=!1){let x;const b=Object.entries(d||{}).map(([v,S])=>{const C=typeof g=="number"?g:0;x=v;let T=m(S,v,E,C);return(g!==!1||m.length===4)&&_.isPlainObject(T)&&(T=newObj(T,m,C+1)),x!==void 0&&[x,T]});return Object.fromEntries(onlyTruthy(b));function E(v){return x=v,!0}}function waitFor(x){return vt(this,arguments,function*(d,{interval:m=200,timeout:g=1/0}={}){const b=Date.now();for(;;){const E=yield d();if(E)return E;if(Date.now()-b>=g)return;yield wait(m)}})}function getOrSet(d,m,g){return m in d?d[m]:d[m]=g()}function randomId(d=10){return d>10?randomId(10)+randomId(d-10):Math.random().toString(36).substring(2,2+d).replace(/l/g,"L")}function objRenameKey(d,m,g){if(!(!d||!d.hasOwnProperty(m)||m===g))return d[g]=d[m],delete d[m],!0}function typedKeys(d){return Object.keys(d)}function typedEntries(d){return Object.entries(d)}function hasProp(d,m){return m in d}function throw_(d){throw d}function filterMapGenerator(d,m){return Im(this,null,function*(){try{for(var g=lm(d),x,b,E;x=!(b=yield new su(g.next())).done;x=!1){const v=b.value;const S=yield new su(m(v));S!==void 0&&(yield S)}}catch(b){E=[b]}finally{try{x&&(b=g.return)&&(yield new su(b.call(g)))}finally{if(E)throw E[0]}}})}function asyncGeneratorToArray(d){return vt(this,null,function*(){const m=[];try{for(var g=lm(d),x,b,E;x=!(b=yield g.next()).done;x=!1){const v=b.value;m.push(v)}}catch(b){E=[b]}finally{try{x&&(b=g.return)&&(yield b.call(g))}finally{if(E)throw E[0]}}return m})}function repeat(d,m){let g=!1;return vt(this,null,function*(){for(;!g;){try{yield m(x)}catch(b){}yield wait(d)}}),x;function x(){g=!0}}function formatTimestamp$2(d,m=!0){return d?(d instanceof Date||(d=new Date(d)),formatDate(d)+" "+formatTime(d,m)):""}function formatTime(d,m=!0){return String(d.getHours()).padStart(2,"0")+":"+String(d.getMinutes()).padStart(2,"0")+(m?":"+String(d.getSeconds()).padStart(2,"0"):"")}function formatDate(d){return[d.getFullYear(),d.getMonth()+1,d.getDate()].map(m=>m.toString().padStart(2,"0")).join("-")}function isNumeric(d){return _.isNumber(d)||_.isString(d)&&!isNaN(Number(d))}function isPrimitive(d){return d===null||typeof d!="object"&&typeof d!="function"}function isIP(d){return/^([.:\da-f]+)$/i.test(d)}function isWindowsDrive(d){return d&&/^[a-zA-Z]:$/.test(d)}function isTimestampString(d){return typeof d=="string"&&/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?Z*$/.test(d)}function isEqualLax(d,m,g){var x;return(x=g==null?void 0:g(d,m))!=null?x:d==m||d&&m&&typeof d=="object"&&typeof m=="object"&&Object.entries(d).every(([b,E])=>isEqualLax(E,m[b],g))&&Object.entries(m).every(([b,E])=>b in d||isEqualLax(E,d[b],g))}function xlate(d,m){var g;return(g=m[d])!=null?g:d}function normalizeHost(d){return d[0]==="["?d.slice(1,d.indexOf("]")):d==null?void 0:d.split(":")[0]}function isIpLocalHost(d){return d==="::1"||d.endsWith("127.0.0.1")}function isIpLan(d){return/^(?:10\.|172\.(1[6-9]|2\d|3[01])\.|192\.168\.|fe80::)/.test(d)}function ipForUrl(d){return d.includes(":")?"["+d+"]":d}function escapeHTML(d){return d.replace(/[\u0000-\u002F\u003A-\u0040\u005B-\u0060\u007B-\u00FF]/g,m=>"&#"+("000"+m.charCodeAt(0)).slice(-4)+";")}function promiseBestEffort(d){return vt(this,null,function*(){return(yield Promise.allSettled(d)).filter(g=>g.status==="fulfilled").map(g=>g.value)})}function pathEncode(d){return d.replace(/[:&#'"% ?\\]/g,escape)}function runAt(d,m){let g=!1,x;return setTimeout(()=>vt(this,null,function*(){if(E()<0)return;const b=2147483647;for(;!g&&E()>b;)yield wait(b);if(g)return;x=setTimeout(m,E());function E(){return d-Date.now()}})),()=>{g=!0,clearTimeout(x)}}function makeMatcher(d,m=!1){return d?picomatch(d.replace(/^(!)?/,"$1(")+")",{nocase:!0}):()=>m}function matches(d,m,g=!1){var b;const x=matches.cache||(matches.cache={});return(x[b=m+(g?"1":"0")]||(x[b]=makeMatcher(m,g)))(d)}function replace(d,m,g=""){const[x,b]=splitAt(" ",g);for(const[E,v]of Object.entries(m))d=d.replaceAll(x+E+b,v);return d}function inCommon(d,m){let g=0;const x=d.length;for(;g<x&&d[g]===m[g];)g++;return g}function mapFilter(d,m,g=b=>b===void 0,x=!1){return d[x?"reduceRight":"reduce"]((b,E,v)=>{const S=m(E,v);return g(S)&&b.push(S),b},[])}function callable(d,...m){return _.isFunction(d)?d(...m):d}function safeDecodeURIComponent(d){try{return decodeURIComponent(d)}catch(m){return d}}function popKey(d,m){if(!d)return;const g=d[m];return delete d[m],g}function patchKey(d,m,g){return d[m]=g(d[m]),d}function retry(d,m=1e3){return vt(this,null,function*(){let g=3;for(;!((yield d())||!g--);)yield wait(m)})}function toMutable(d){return Array.isArray(d)?d.slice():Fe({},d)}function shortenAgent(d){var m;return _.findKey(BROWSERS,g=>g.test(d))||((m=/^[^/(]+ ?/.exec(d))==null?void 0:m[0])||d}const BROWSERS={YaBrowser:/yabrowser/i,AlamoFire:/alamofire/i,Edge:/edge|edga|edgios|edg/i,PhantomJS:/phantomjs/i,Konqueror:/konqueror/i,Amaya:/amaya/i,Epiphany:/epiphany/i,SeaMonkey:/seamonkey/i,Flock:/flock/i,OmniWeb:/omniweb/i,Opera:/opera|OPR\//i,Chromium:/chromium/i,Facebook:/FBA[NV]/,Chrome:/chrome|crios/i,WinJs:/msapphost/i,IE:/msie|trident/i,Firefox:/firefox|fxios/i,Safari:/safari/i,PS5:/playstation 5/i,PS4:/playstation 4/i,PS3:/playstation 3/i,PSP:/playstation portable/i,PS:/playstation/i,Xbox:/xbox/i,UC:/UCBrowser/i},cross=Object.freeze(Object.defineProperty({__proto__:null,ADMIN_URI,ALLOW_SESSION_IP_CHANGE,API_URI,CFG,DAY,EMBEDDED_LANGUAGE,FRONTEND_OPTIONS,FRONTEND_URI,HFS_REPO,HIDE_IN_TESTS,HOUR,HTTP_BAD_REQUEST,HTTP_CONFLICT,HTTP_FAILED_DEPENDENCY,HTTP_FOOL,HTTP_FORBIDDEN,HTTP_INSUFFICIENT_STORAGE,HTTP_MESSAGES,HTTP_METHOD_NOT_ALLOWED,HTTP_MOVED_PERMANENTLY,HTTP_NOT_ACCEPTABLE,HTTP_NOT_FOUND,HTTP_NOT_MODIFIED,HTTP_NO_CONTENT,HTTP_OK,HTTP_PARTIAL_CONTENT,HTTP_PAYLOAD_TOO_LARGE,HTTP_PRECONDITION_FAILED,HTTP_RANGE_NOT_SATISFIABLE,HTTP_SERVER_ERROR,HTTP_SERVICE_UNAVAILABLE,HTTP_TEMPORARY_REDIRECT,HTTP_TOO_MANY_REQUESTS,HTTP_UNAUTHORIZED,ICONS_URI,LIST,MAX_TILE_SIZE,MINUTE,MTIME_CHECK,NBSP,PERM_KEYS,PLUGINS_PUB_URI,PLUGIN_CUSTOM_REST_PREFIX,PORT_DISABLED,PREVIOUS_TAG,REPO_URL,SORT_BY_OPTIONS,SPECIAL_URI,THEME_OPTIONS,UPLOAD_TEMP_HASH,WEBSITE,WHO_ANYONE,WHO_ANY_ACCOUNT,WHO_NO_ONE,WIKI_URL,_dbg,_log,asyncGeneratorToArray,basename,callable,defaultPerms,dirname,enforceFinal,enforceStarting,escapeHTML,filterMapGenerator,findDefined,formatBytes,formatDate,formatPerc,formatSpeed,formatTime,formatTimestamp:formatTimestamp$2,getOrSet,hasProp,haveTimeout,inCommon,ipForUrl,isEqualLax,isIP,isIpLan,isIpLocalHost,isNumeric,isOrderedEqual,isPrimitive,isTimestampString,isWhoObject,isWindowsDrive,join,makeMatcher,mapFilter,matches,newObj,normalizeHost,objFromKeys,objRenameKey,objSameKeys,onlyTruthy,patchKey,pathEncode,pendingPromise,popKey,prefix,promiseBestEffort,randomId,removeFinal,removeStarting,repeat,replace,retry,runAt,safeDecodeURIComponent,setHidden,shortenAgent,splitAt,stringAfter,strinsert,swap,throw_,toMutable,truthy,tryJson,try_,typedEntries,typedKeys,wait,waitFor,wantArray,with_,xlate},Symbol.toStringTag,{value:"Module"})),useIsomorphicLayoutEffect=typeof window!="undefined"?reactExports.useLayoutEffect:reactExports.useEffect;function useEventListener(d,m,g,x){const b=reactExports.useRef(m);useIsomorphicLayoutEffect(()=>{b.current=m},[m]),reactExports.useEffect(()=>{var E;const v=(E=void 0)!==null&&E!==void 0?E:window;if(!(v&&v.addEventListener))return;const S=C=>b.current(C);return v.addEventListener(d,S,x),()=>{v.removeEventListener(d,S,x)}},[d,g,x])}function useInterval(d,m){const g=reactExports.useRef(d);useIsomorphicLayoutEffect(()=>{g.current=d},[d]),reactExports.useEffect(()=>{if(m===null)return;const x=setInterval(()=>g.current(),m);return()=>clearInterval(x)},[m])}const getMatches=d=>typeof window!="undefined"?window.matchMedia(d).matches:!1;function useMediaQuery(d){const[m,g]=reactExports.useState(getMatches(d));return reactExports.useEffect(()=>{function x(){g(getMatches(d))}const b=window.matchMedia(d);return x(),b.addListener?b.addListener(x):b.addEventListener("change",x),()=>{b.removeListener?b.removeListener(x):b.removeEventListener("change",x)}},[d]),m}function useDebounce(d,m){const[g,x]=reactExports.useState(d);return reactExports.useEffect(()=>{const b=setTimeout(()=>x(d),m||500);return()=>{clearTimeout(b)}},[d,m]),g}function useIsMounted(){const d=reactExports.useRef(!1);return reactExports.useEffect(()=>(d.current=!0,()=>{d.current=!1}),[]),reactExports.useCallback(()=>d.current,[])}function useWindowSize(){const[d,m]=reactExports.useState({width:0,height:0}),g=()=>{m({width:window.innerWidth,height:window.innerHeight})};return useEventListener("resize",g),useIsomorphicLayoutEffect(()=>{g()},[]),d}function useStateMounted(d){const m=useIsMounted(),[g,x]=reactExports.useState(d),b=reactExports.useRef(d);b.current=g;const E=reactExports.useCallback(v=>{m()&&x(v)},[m,x]);return[g,E,()=>b.current]}function reactFilter(d){return d.filter(m=>m===0||m&&(!Array.isArray(m)||m.length))}function reactJoin(d,m){const g=[];for(const x of reactFilter(m))g.push(x,d);return g.splice(-1,1),dontBotherWithKeys(g)}function dontBotherWithKeys(d){return d.map((m,g)=>!m||typeof m=="string"?m:Array.isArray(m)?dontBotherWithKeys(m):reactExports.createElement(reactExports.Fragment,{key:g,children:m}))}function useRequestRender(){const[d,m]=reactExports.useState(0);return Object.assign(reactExports.useCallback(()=>m(g=>g+1),[m]),{state:d})}function useBatch(d,m,{delay:g=0,expireAfter:x=0}={}){const b=useBatch.worker2env||(useBatch.worker2env=d&&new Map),E=b&&(b.get(d)||(()=>{const C={batch:new Set,cache:new Map};return b.set(d,C),C})()),v=useRequestRender();reactExports.useEffect(()=>{d&&(E.waiter||(E.waiter=new Promise(C=>{setTimeout(()=>vt(this,null,function*(){try{if(!E.batch.size)return;const T=[...E.batch.values()];E.batch.clear(),d(T).then(R=>{T.forEach((k,L)=>{var D;return E.cache.set(k,(D=R[L])!=null?D:null)})}).finally(C),x&&setTimeout(()=>{for(const R of T)E.cache.delete(R)},x)}finally{E.waiter=void 0}}),g)}))).then(v)},[d,v.state]);const S=E&&E.cache.get(m);return reactExports.useEffect(()=>{E&&S===void 0&&(v(),E.batch.add(m))},[m,S]),{data:S,refresh(){E&&(E.batch.add(m),v())}}}function KeepInScreen(g){var x=g,{margin:d}=x,m=Vt(x,["margin"]);const b=reactExports.useRef(),[E,v]=reactExports.useState(),S=useWindowSize();return reactExports.useEffect(()=>{const C=b.current;if(!C)return;const T=C.getBoundingClientRect(),R=document.documentElement,k=window.innerHeight||R.clientHeight;v(k-(T==null?void 0:T.top)-d)},[S]),reactExports.createElement("div",Fe({ref:b,style:{maxHeight:E,overflow:"auto"}},m))}function useIsMobile(){return useMediaQuery("(pointer:coarse)")}function useFixSticky(){return useOnResize(reactExports.useCallback((d,m,g,x)=>{Object.assign(document.documentElement.style,{scrollPaddingTop:`${m+(parseFloat(x.top)||0)}px`,scrollPaddingBottom:`${m+(parseFloat(x.bottom)||0)}px`})},[])).refToPass}function useOnResize(d){const m=reactExports.useRef(null),g=reactExports.useRef(_.noop);return reactExports.useMemo(()=>{let x=-1,b=-1;function E(v){const S=getComputedStyle(v),C=(v.clientWidth||v.getBoundingClientRect().width)+parseFloat(S.paddingLeft)+parseFloat(S.paddingRight)+parseFloat(S.borderRightWidth)-parseFloat(S.borderLeftWidth),T=(v.clientHeight||v.getBoundingClientRect().height)+parseFloat(S.paddingTop)+parseFloat(S.paddingBottom)+parseFloat(S.borderBottomWidth)-parseFloat(S.borderTopWidth);(C!==x||T!==b)&&d(x=C,b=T,v,S)}return{ref:m,refToPass(v){if(m.current=v,g.current(),g.current=_.noop,!v)return;if(!window.ResizeObserver)return g.current=repeat(500,()=>E(v));const S=new ResizeObserver(_.debounce(C=>E(C[0].target),10));S.observe(v),g.current=()=>S.disconnect()}}},[d])}function useGetSize(){const[d,m]=reactExports.useState(),{refToPass:g,ref:x}=useOnResize(reactExports.useCallback((b,E)=>m([b,E]),[]));return reactExports.useMemo(()=>({w:d==null?void 0:d[0],h:d==null?void 0:d[1],ref:x,refToPass:g}),[d,x])}function useEffectOnce(d,m){const g=reactExports.useRef();reactExports.useEffect(()=>{_.isEqual(m,g.current)||(g.current=m,d(...m))},m)}function AriaOnly({children:d}){return d?reactExports.createElement("div",{className:"ariaOnly"},d):null}function noAriaTitle(d){return{onMouseEnter(m){m.target.title=d}}}const isMac=navigator.platform.match("Mac");function isCtrlKey(d){return(d.ctrlKey||isMac&&d.metaKey)&&d.key}function useAutoScroll(d){const m=reactExports.useRef(),g=reactExports.useRef(),[x,b]=reactExports.useState(!0);return reactExports.useEffect(()=>{const{current:E}=m;x&&(E==null||E.scrollTo(0,E.scrollHeight))},[x,d]),reactExports.useCallback(E=>{var v;m.current=E,(v=g.current)==null||v.call(g),g.current=domOn("scroll",S=>{const C=S.target;C&&b(C.scrollTop+C.clientHeight>=C.scrollHeight-3)},{target:E})},[])}const e=Symbol(),t$e=Symbol(),r="a",n="w";let o=(d,m)=>new Proxy(d,m);const s=Object.getPrototypeOf,c=new WeakMap,l=d=>d&&(c.has(d)?c.get(d):s(d)===Object.prototype||s(d)===Array.prototype),f=d=>typeof d=="object"&&d!==null,i=d=>{if(Array.isArray(d))return Array.from(d);const m=Object.getOwnPropertyDescriptors(d);return Object.values(m).forEach(g=>{g.configurable=!0}),Object.create(s(d),m)},u=d=>d[t$e]||d,a=(d,m,g,x)=>{if(!l(d))return d;let b=x&&x.get(d);if(!b){const C=u(d);b=(T=>Object.values(Object.getOwnPropertyDescriptors(T)).some(R=>!R.configurable&&!R.writable))(C)?[C,i(C)]:[C],x==null||x.set(d,b)}const[E,v]=b;let S=g&&g.get(E);return S&&S[1].f===!!v||(S=((C,T)=>{const R={f:T};let k=!1;const L=(A,I)=>{if(!k){let N=R[r].get(C);if(N||(N={},R[r].set(C,N)),A===n)N[n]=!0;else{let z=N[A];z||(z=new Set,N[A]=z),z.add(I)}}},D={get:(A,I)=>I===t$e?C:(L("k",I),a(Reflect.get(A,I),R[r],R.c,R.t)),has:(A,I)=>I===e?(k=!0,R[r].delete(C),!0):(L("h",I),Reflect.has(A,I)),getOwnPropertyDescriptor:(A,I)=>(L("o",I),Reflect.getOwnPropertyDescriptor(A,I)),ownKeys:A=>(L(n),Reflect.ownKeys(A))};return T&&(D.set=D.deleteProperty=()=>!1),[D,R]})(E,!!v),S[1].p=o(v||E,S[0]),g&&g.set(E,S)),S[1][r]=m,S[1].c=g,S[1].t=x,S[1].p},p=(d,m,g,x,b=Object.is)=>{if(b(d,m))return!1;if(!f(d)||!f(m))return!0;const E=g.get(u(d));if(!E)return!0;if(x){const S=x.get(d);if(S&&S.n===m)return S.g;x.set(d,{n:m,g:!1})}let v=null;try{for(const S of E.h||[])if(v=Reflect.has(d,S)!==Reflect.has(m,S),v)return v;if(E[n]===!0){if(v=((S,C)=>{const T=Reflect.ownKeys(S),R=Reflect.ownKeys(C);return T.length!==R.length||T.some((k,L)=>k!==R[L])})(d,m),v)return v}else for(const S of E.o||[])if(v=!!Reflect.getOwnPropertyDescriptor(d,S)!=!!Reflect.getOwnPropertyDescriptor(m,S),v)return v;for(const S of E.k||[])if(v=p(d[S],m[S],g,x,b),v)return v;return v===null&&(v=!0),v}finally{x&&x.set(d,{n:m,g:v})}},y=d=>l(d)&&d[t$e]||null,h=(d,m=!0)=>{c.set(d,m)},w=(d,m,g)=>{const x=[],b=new WeakSet,E=(v,S)=>{if(b.has(v))return;f(v)&&b.add(v);const C=f(v)&&m.get(u(v));if(C){var T,R;if((T=C.h)==null||T.forEach(L=>{const D=`:has(${String(L)})`;x.push(S?[...S,D]:[D])}),C[n]===!0){const L=":ownKeys";x.push(S?[...S,L]:[L])}else{var k;(k=C.o)==null||k.forEach(L=>{const D=`:hasOwn(${String(L)})`;x.push(S?[...S,D]:[D])})}(R=C.k)==null||R.forEach(L=>{!("value"in(Object.getOwnPropertyDescriptor(v,L)||{}))||E(v[L],S?[...S,L]:[L])})}else S&&x.push(S)};return E(d),x},__vite_import_meta_env__$1={},isObject$1=d=>typeof d=="object"&&d!==null,proxyStateMap=new WeakMap,refSet=new WeakSet,buildProxyFunction=(d=Object.is,m=(T,R)=>new Proxy(T,R),g=T=>isObject$1(T)&&!refSet.has(T)&&(Array.isArray(T)||!(Symbol.iterator in T))&&!(T instanceof WeakMap)&&!(T instanceof WeakSet)&&!(T instanceof Error)&&!(T instanceof Number)&&!(T instanceof Date)&&!(T instanceof String)&&!(T instanceof RegExp)&&!(T instanceof ArrayBuffer),x=T=>{switch(T.status){case"fulfilled":return T.value;case"rejected":throw T.reason;default:throw T}},b=new WeakMap,E=(T,R,k=x)=>{const L=b.get(T);if((L==null?void 0:L[0])===R)return L[1];const D=Array.isArray(T)?[]:Object.create(Object.getPrototypeOf(T));return h(D,!0),b.set(T,[R,D]),Reflect.ownKeys(T).forEach(A=>{if(Object.getOwnPropertyDescriptor(D,A))return;const I=Reflect.get(T,A),{enumerable:N}=Reflect.getOwnPropertyDescriptor(T,A),z={value:I,enumerable:N,configurable:!0};if(refSet.has(I))h(I,!1);else if(I instanceof Promise)delete z.value,z.get=()=>k(I);else if(proxyStateMap.has(I)){const[j,Y]=proxyStateMap.get(I);z.value=E(j,Y(),k)}Object.defineProperty(D,A,z)}),Object.preventExtensions(D)},v=new WeakMap,S=[1,1],C=T=>{if(!isObject$1(T))throw new Error("object required");const R=v.get(T);if(R)return R;let k=S[0];const L=new Set,D=(Q,X=++S[0])=>{k!==X&&(k=X,L.forEach(re=>re(Q,X)))};let A=S[1];const I=(Q=++S[1])=>(A!==Q&&!L.size&&(A=Q,z.forEach(([X])=>{const re=X[1](Q);re>k&&(k=re)})),k),N=Q=>(X,re)=>{const ie=[...X];ie[1]=[Q,...ie[1]],D(ie,re)},z=new Map,j=(Q,X)=>{if((__vite_import_meta_env__$1?"production":void 0)!=="production"&&z.has(Q))throw new Error("prop listener already exists");if(L.size){const re=X[3](N(Q));z.set(Q,[X,re])}else z.set(Q,[X])},Y=Q=>{var X;const re=z.get(Q);re&&(z.delete(Q),(X=re[1])==null||X.call(re))},B=Q=>(L.add(Q),L.size===1&&z.forEach(([re,ie],oe)=>{if((__vite_import_meta_env__$1?"production":void 0)!=="production"&&ie)throw new Error("remove already exists");const Z=re[3](N(oe));z.set(oe,[re,Z])}),()=>{L.delete(Q),L.size===0&&z.forEach(([re,ie],oe)=>{ie&&(ie(),z.set(oe,[re]))})}),U=Array.isArray(T)?[]:Object.create(Object.getPrototypeOf(T)),V=m(U,{deleteProperty(Q,X){const re=Reflect.get(Q,X);Y(X);const ie=Reflect.deleteProperty(Q,X);return ie&&D(["delete",[X],re]),ie},set(Q,X,re,ie){const oe=Reflect.has(Q,X),Z=Reflect.get(Q,X,ie);if(oe&&(d(Z,re)||v.has(re)&&d(Z,v.get(re))))return!0;Y(X),isObject$1(re)&&(re=y(re)||re);let ee=re;if(re instanceof Promise)re.then(ce=>{re.status="fulfilled",re.value=ce,D(["resolve",[X],ce])}).catch(ce=>{re.status="rejected",re.reason=ce,D(["reject",[X],ce])});else{!proxyStateMap.has(re)&&g(re)&&(ee=C(re));const ce=!refSet.has(ee)&&proxyStateMap.get(ee);ce&&j(X,ce)}return Reflect.set(Q,X,ee,ie),D(["set",[X],re,Z]),!0}});v.set(T,V);const J=[U,I,E,B];return proxyStateMap.set(V,J),Reflect.ownKeys(T).forEach(Q=>{const X=Object.getOwnPropertyDescriptor(T,Q);"value"in X&&(V[Q]=T[Q],delete X.value,delete X.writable),Object.defineProperty(U,Q,X)}),V})=>[C,proxyStateMap,refSet,d,m,g,x,b,E,v,S],[defaultProxyFunction]=buildProxyFunction();function proxy(d={}){return defaultProxyFunction(d)}function subscribe(d,m,g){const x=proxyStateMap.get(d);(__vite_import_meta_env__$1?"production":void 0)!=="production"&&!x&&console.warn("Please use proxy object");let b;const E=[],v=x[3];let S=!1;const T=v(R=>{if(E.push(R),g){m(E.splice(0));return}b||(b=Promise.resolve().then(()=>{b=void 0,S&&m(E.splice(0))}))});return S=!0,()=>{S=!1,T()}}function snapshot(d,m){const g=proxyStateMap.get(d);(__vite_import_meta_env__$1?"production":void 0)!=="production"&&!g&&console.warn("Please use proxy object");const[x,b,E]=g;return E(x,b(),m)}function ref(d){return refSet.add(d),d}var shim={exports:{}},useSyncExternalStoreShim_production_min={};/**
313
+ }`;var Sr=wm(function(){return Pr(Pe,Ut+"return "+Tt).apply(g,je)});if(Sr.source=Tt,Kf(Sr))throw Sr;return Sr}function gg($){return Ar($).toLowerCase()}function xg($){return Ar($).toUpperCase()}function _g($,O,K){if($=Ar($),$&&(K||O===g))return Qd($);if(!$||!(O=Zn(O)))return $;var _e=ao($),Ce=ao(O),Pe=Xd(_e,Ce),je=Mu(_e,Ce)+1;return Ds(_e,Pe,je).join("")}function yg($,O,K){if($=Ar($),$&&(K||O===g))return $.slice(0,Jl($)+1);if(!$||!(O=Zn(O)))return $;var _e=ao($),Ce=Mu(_e,ao(O))+1;return Ds(_e,0,Ce).join("")}function vg($,O,K){if($=Ar($),$&&(K||O===g))return $.replace(sn,"");if(!$||!(O=Zn(O)))return $;var _e=ao($),Ce=Xd(_e,ao(O));return Ds(_e,Ce).join("")}function Eg($,O){var K=X,_e=re;if(on(O)){var Ce="separator"in O?O.separator:Ce;K="length"in O?yr(O.length):K,_e="omission"in O?Zn(O.omission):_e}$=Ar($);var Pe=$.length;if(ea($)){var je=ao($);Pe=je.length}if(K>=Pe)return $;var Ue=K-Ei(_e);if(Ue<1)return _e;var Qe=je?Ds(je,0,Ue).join(""):$.slice(0,Ue);if(Ce===g)return Qe+_e;if(je&&(Ue+=Qe.length-Ue),Jf(Ce)){if($.slice(Ue).search(Ce)){var vt,Et=Qe;for(Ce.global||(Ce=Ga(Ce.source,Ar(tt.exec(Ce))+"g")),Ce.lastIndex=0;vt=Ce.exec(Et);)var Tt=vt.index;Qe=Qe.slice(0,Tt===g?Ue:Tt)}}else if($.indexOf(Zn(Ce),Ue)!=Ue){var Dt=Qe.lastIndexOf(Ce);Dt>-1&&(Qe=Qe.slice(0,Dt))}return Qe+_e}function Sg($){return $=Ar($),$&&Or.test($)?$.replace(Jt,np):$}var Cg=Ai(function($,O,K){return $+(K?" ":"")+O.toUpperCase()}),Zf=Zu("toUpperCase");function Cm($,O,K){return $=Ar($),O=K?g:O,O===g?vf($)?Cf($):xf($):$.match(O)||[]}var wm=_r(function($,O){try{return Hn($,g,O)}catch(K){return Kf(K)?K:new cr(K)}}),wg=ys(function($,O){return Rn(O,function(K){K=Vo(K),ds($,K,Rt($[K],$))}),$});function Mg($){var O=$==null?0:$.length,K=er();return $=O?Nr($,function(_e){if(typeof _e[1]!="function")throw new Eo(v);return[K(_e[0]),_e[1]]}):[],_r(function(_e){for(var Ce=-1;++Ce<O;){var Pe=$[Ce];if(Hn(Pe[0],this,_e))return Hn(Pe[1],this,_e)}})}function Tg($){return xp(Xn($,k))}function em($){return function(){return $}}function Pg($,O){return $==null||$!==$?O:$}var Rg=Rc(),$g=Rc(!0);function Oo($){return $}function tm($){return va(typeof $=="function"?$:Xn($,k))}function kg($){return _c(Xn($,k))}function Ig($,O){return Vr($,Xn(O,k))}var Lg=_r(function($,O){return function(K){return To(K,$,O)}}),Dg=_r(function($,O){return function(K){return To($,K,O)}});function rm($,O,K){var _e=Nn(O),Ce=_a(O,_e);K==null&&!(on(O)&&(Ce.length||!_e.length))&&(K=O,O=$,$=this,Ce=_a(O,Nn(O)));var Pe=!(on(K)&&"chain"in K)||!!K.chain,je=zi($);return Rn(Ce,function(Ue){var Qe=O[Ue];$[Ue]=Qe,je&&($.prototype[Ue]=function(){var vt=this.__chain__;if(Pe||vt){var Et=$(this.__wrapped__),Tt=Et.__actions__=Bn(this.__actions__);return Tt.push({func:Qe,args:arguments,thisArg:$}),Et.__chain__=vt,Et}return Qe.apply($,Us([this.value()],arguments))})}),$}function Ag(){return Ur._===this&&(Ur._=ip),this}function nm(){}function Og($){return $=yr($),_r(function(O){return yc(O,$)})}var Fg=$c(Nr),Ng=$c(_u),jg=$c(bu);function Mm($){return Ft($)?Su(Vo($)):Kr($)}function Hg($){return function(O){return $==null?g:Rs($,O)}}var Yg=td(),Bg=td(!0);function om(){return[]}function sm(){return!1}function zg(){return{}}function Gg(){return""}function Ug(){return!0}function Vg($,O){if($=yr($),$<1||$>ae)return[];var K=ge,_e=$n($,ge);O=er(O),$-=ge;for(var Ce=wu(_e,O);++K<$;)O(K);return Ce}function Wg($){return gr($)?Nr($,Vo):Ko($)?[$]:Bn(xd(Ar($)))}function qg($){var O=++oa;return Ar($)+O}var Kg=xl(function($,O){return $+O},0),Jg=Cn("ceil"),Qg=xl(function($,O){return $/O},1),Xg=Cn("floor");function Zg($){return $&&$.length?$i($,Oo,ei):g}function ex($,O){return $&&$.length?$i($,er(O,2),ei):g}function tx($){return Kd($,Oo)}function rx($,O){return Kd($,er(O,2))}function nx($){return $&&$.length?$i($,Oo,ti):g}function ox($,O){return $&&$.length?$i($,er(O,2),ti):g}var sx=xl(function($,O){return $*O},1),ix=Cn("round"),ax=xl(function($,O){return $-O},0);function lx($){return $&&$.length?Cu($,Oo):0}function ux($,O){return $&&$.length?Cu($,er(O,2)):0}return Te.after=ze,Te.ary=ct,Te.assign=hh,Te.assignIn=gm,Te.assignInWith=tf,Te.assignWith=gh,Te.at=xh,Te.before=Mt,Te.bind=Rt,Te.bindAll=wg,Te.bindKey=wt,Te.castArray=jm,Te.chain=Vc,Te.chunk=Nc,Te.compact=_d,Te.concat=Io,Te.cond=Mg,Te.conforms=Tg,Te.constant=em,Te.countBy=qp,Te.create=_h,Te.curry=Ot,Te.curryRight=Nt,Te.debounce=Ht,Te.defaults=yh,Te.defaultsDeep=vh,Te.defer=tn,Te.delay=Ze,Te.difference=Mr,Te.differenceBy=xn,Te.differenceWith=cn,Te.drop=Tn,Te.dropRight=ho,Te.dropRightWhile=Ia,Te.dropWhile=pn,Te.fill=Ml,Te.filter=Kc,Te.flatMap=$d,Te.flatMapDeep=Gf,Te.flatMapDepth=Qp,Te.flatten=jc,Te.flattenDeep=Pl,Te.flattenDepth=to,Te.flip=We,Te.flow=Rg,Te.flowRight=$g,Te.fromPairs=yd,Te.functions=Th,Te.functionsIn=Ph,Te.groupBy=kd,Te.initial=Hc,Te.intersection=vd,Te.intersectionBy=ai,Te.intersectionWith=Yc,Te.invert=$h,Te.invertBy=kh,Te.invokeMap=Xp,Te.iteratee=tm,Te.keyBy=Uf,Te.keys=Nn,Te.keysIn=Ao,Te.map=Bi,Te.mapKeys=Lh,Te.mapValues=Dh,Te.matches=kg,Te.matchesProperty=Ig,Te.memoize=nt,Te.merge=Ah,Te.mergeWith=xm,Te.method=Lg,Te.methodOf=Dg,Te.mixin=rm,Te.negate=kt,Te.nthArg=Og,Te.omit=Oh,Te.omitBy=Fh,Te.once=Bt,Te.orderBy=Vf,Te.over=Fg,Te.overArgs=Qt,Te.overEvery=Ng,Te.overSome=jg,Te.partial=qt,Te.partialRight=nr,Te.partition=Il,Te.pick=Nh,Te.pickBy=_m,Te.property=Mm,Te.propertyOf=Hg,Te.pull=Bc,Te.pullAll=$l,Te.pullAllBy=Vn,Te.pullAllWith=ci,Te.pullAt=Wo,Te.range=Yg,Te.rangeRight=Bg,Te.rearg=_n,Te.reject=M,Te.remove=no,Te.rest=$r,Te.reverse=zc,Te.sampleSize=F,Te.set=Hh,Te.setWith=Yh,Te.shuffle=q,Te.slice=Ed,Te.sortBy=we,Te.sortedUniq=wd,Te.sortedUniqBy=ji,Te.split=pg,Te.spread=di,Te.tail=Yp,Te.take=Bp,Te.takeRight=Md,Te.takeRightWhile=Gc,Te.takeWhile=Df,Te.tap=Yf,Te.throttle=qf,Te.thru=qo,Te.toArray=fm,Te.toPairs=ym,Te.toPairsIn=vm,Te.toPath=Wg,Te.toPlainObject=hm,Te.transform=Bh,Te.unary=Fm,Te.union=Af,Te.unionBy=zp,Te.unionWith=Gp,Te.uniq=Hi,Te.uniqBy=Of,Te.uniqWith=La,Te.unset=Gh,Te.unzip=Uc,Te.unzipWith=Jr,Te.update=Uh,Te.updateWith=Vh,Te.values=nu,Te.valuesIn=Wh,Te.without=Ff,Te.words=Cm,Te.wrap=Nm,Te.xor=Up,Te.xorBy=Nf,Te.xorWith=jf,Te.zip=Vp,Te.zipObject=Wp,Te.zipObjectDeep=Hf,Te.zipWith=Lo,Te.entries=ym,Te.entriesIn=vm,Te.extend=gm,Te.extendWith=tf,rm(Te,Te),Te.add=Kg,Te.attempt=wm,Te.camelCase=Qh,Te.capitalize=Em,Te.ceil=Jg,Te.clamp=qh,Te.clone=Hm,Te.cloneDeep=Bm,Te.cloneDeepWith=zm,Te.cloneWith=Ym,Te.conformsTo=Gm,Te.deburr=Sm,Te.defaultTo=Pg,Te.divide=Qg,Te.endsWith=Xh,Te.eq=Ns,Te.escape=Zh,Te.escapeRegExp=eg,Te.every=Kp,Te.find=Jc,Te.findIndex=ii,Te.findKey=bh,Te.findLast=Jp,Te.findLastIndex=Tl,Te.findLastKey=Eh,Te.floor=Xg,Te.forEach=Qc,Te.forEachRight=kl,Te.forIn=Sh,Te.forInRight=Ch,Te.forOwn=wh,Te.forOwnRight=Mh,Te.get=Qf,Te.gt=Um,Te.gte=Vm,Te.has=Rh,Te.hasIn=Xf,Te.head=Fi,Te.identity=Oo,Te.includes=Xc,Te.indexOf=Fs,Te.inRange=Kh,Te.invoke=Ih,Te.isArguments=Ll,Te.isArray=gr,Te.isArrayBuffer=Wm,Te.isArrayLike=Do,Te.isArrayLikeObject=fn,Te.isBoolean=qm,Te.isBuffer=Da,Te.isDate=Km,Te.isElement=Jm,Te.isEmpty=Qm,Te.isEqual=Xm,Te.isEqualWith=Zm,Te.isError=Kf,Te.isFinite=eh,Te.isFunction=zi,Te.isInteger=cm,Te.isLength=Zp,Te.isMap=um,Te.isMatch=rh,Te.isMatchWith=nh,Te.isNaN=oh,Te.isNative=sh,Te.isNil=ah,Te.isNull=ih,Te.isNumber=dm,Te.isObject=on,Te.isObjectLike=un,Te.isPlainObject=Id,Te.isRegExp=Jf,Te.isSafeInteger=lh,Te.isSet=pm,Te.isString=ef,Te.isSymbol=Ko,Te.isTypedArray=tu,Te.isUndefined=ch,Te.isWeakMap=uh,Te.isWeakSet=dh,Te.join=li,Te.kebabCase=rg,Te.last=Un,Te.lastIndexOf=Rl,Te.lowerCase=ng,Te.lowerFirst=og,Te.lt=ph,Te.lte=fh,Te.max=Zg,Te.maxBy=ex,Te.mean=tx,Te.meanBy=rx,Te.min=nx,Te.minBy=ox,Te.stubArray=om,Te.stubFalse=sm,Te.stubObject=zg,Te.stubString=Gg,Te.stubTrue=Ug,Te.multiply=sx,Te.nth=bd,Te.noConflict=Ag,Te.noop=nm,Te.now=Ae,Te.pad=sg,Te.padEnd=ig,Te.padStart=ag,Te.parseInt=lg,Te.random=Jh,Te.reduce=Wf,Te.reduceRight=Zc,Te.repeat=cg,Te.replace=ug,Te.result=jh,Te.round=ix,Te.runInContext=qe,Te.sample=P,Te.size=le,Te.snakeCase=dg,Te.some=xe,Te.sortedIndex=Sd,Te.sortedIndexBy=Lf,Te.sortedIndexOf=ui,Te.sortedLastIndex=Hp,Te.sortedLastIndexBy=Cd,Te.sortedLastIndexOf=Ni,Te.startCase=fg,Te.startsWith=mg,Te.subtract=ax,Te.sum=lx,Te.sumBy=ux,Te.template=hg,Te.times=Vg,Te.toFinite=Gi,Te.toInteger=yr,Te.toLength=mm,Te.toLower=gg,Te.toNumber=Es,Te.toSafeInteger=mh,Te.toString=Ar,Te.toUpper=xg,Te.trim=_g,Te.trimEnd=yg,Te.trimStart=vg,Te.truncate=Eg,Te.unescape=Sg,Te.uniqueId=qg,Te.upperCase=Cg,Te.upperFirst=Zf,Te.each=Qc,Te.eachRight=kl,Te.first=Fi,rm(Te,function(){var $={};return po(Te,function(O,K){Rr.call(Te.prototype,K)||($[K]=O)}),$}(),{chain:!1}),Te.VERSION=x,Rn(["bind","bindKey","curry","curryRight","partial","partialRight"],function($){Te[$].placeholder=Te}),Rn(["drop","take"],function($,O){pr.prototype[$]=function(K){K=K===g?1:ln(yr(K),0);var _e=this.__filtered__&&!O?new pr(this):this.clone();return _e.__filtered__?_e.__takeCount__=$n(K,_e.__takeCount__):_e.__views__.push({size:$n(K,ge),type:$+(_e.__dir__<0?"Right":"")}),_e},pr.prototype[$+"Right"]=function(K){return this.reverse()[$](K).reverse()}}),Rn(["filter","map","takeWhile"],function($,O){var K=O+1,_e=K==Z||K==ce;pr.prototype[$]=function(Ce){var Pe=this.clone();return Pe.__iteratees__.push({iteratee:er(Ce,3),type:K}),Pe.__filtered__=Pe.__filtered__||_e,Pe}}),Rn(["head","last"],function($,O){var K="take"+(O?"Right":"");pr.prototype[$]=function(){return this[K](1).value()[0]}}),Rn(["initial","tail"],function($,O){var K="drop"+(O?"":"Right");pr.prototype[$]=function(){return this.__filtered__?new pr(this):this[K](1)}}),pr.prototype.compact=function(){return this.filter(Oo)},pr.prototype.find=function($){return this.filter($).head()},pr.prototype.findLast=function($){return this.reverse().find($)},pr.prototype.invokeMap=_r(function($,O){return typeof $=="function"?new pr(this):this.map(function(K){return To(K,$,O)})}),pr.prototype.reject=function($){return this.filter(kt(er($)))},pr.prototype.slice=function($,O){$=yr($);var K=this;return K.__filtered__&&($>0||O<0)?new pr(K):($<0?K=K.takeRight(-$):$&&(K=K.drop($)),O!==g&&(O=yr(O),K=O<0?K.dropRight(-O):K.take(O-$)),K)},pr.prototype.takeRightWhile=function($){return this.reverse().takeWhile($).reverse()},pr.prototype.toArray=function(){return this.take(ge)},po(pr.prototype,function($,O){var K=/^(?:filter|find|map|reject)|While$/.test(O),_e=/^(?:head|last)$/.test(O),Ce=Te[_e?"take"+(O=="last"?"Right":""):O],Pe=_e||/^find/.test(O);Ce&&(Te.prototype[O]=function(){var je=this.__wrapped__,Ue=_e?[1]:arguments,Qe=je instanceof pr,vt=Ue[0],Et=Qe||gr(je),Tt=function(Cr){var Tr=Ce.apply(Te,Us([Cr],Ue));return _e&&Dt?Tr[0]:Tr};Et&&K&&typeof vt=="function"&&vt.length!=1&&(Qe=Et=!1);var Dt=this.__chain__,Ut=!!this.__actions__.length,or=Pe&&!Dt,Sr=Qe&&!Ut;if(!Pe&&Et){je=Sr?je:new pr(this);var ir=$.apply(je,Ue);return ir.__actions__.push({func:qo,args:[Tt],thisArg:g}),new In(ir,Dt)}return or&&Sr?$.apply(this,Ue):(ir=this.thru(Tt),or?_e?ir.value()[0]:ir.value():ir)})}),Rn(["pop","push","shift","sort","splice","unshift"],function($){var O=Cs[$],K=/^(?:push|sort|unshift)$/.test($)?"tap":"thru",_e=/^(?:pop|shift)$/.test($);Te.prototype[$]=function(){var Ce=arguments;if(_e&&!this.__chain__){var Pe=this.value();return O.apply(gr(Pe)?Pe:[],Ce)}return this[K](function(je){return O.apply(gr(je)?je:[],Ce)})}}),po(pr.prototype,function($,O){var K=Te[O];if(K){var _e=K.name+"";Rr.call(la,_e)||(la[_e]=[]),la[_e].push({name:O,func:K})}}),la[Ta(g,z).name]=[{name:"wrapper",func:g}],pr.prototype.clone=ac,pr.prototype.reverse=Du,pr.prototype.value=ma,Te.prototype.at=Wc,Te.prototype.chain=Yi,Te.prototype.commit=qc,Te.prototype.next=Td,Te.prototype.plant=Bf,Te.prototype.reverse=Rd,Te.prototype.toJSON=Te.prototype.valueOf=Te.prototype.value=zf,Te.prototype.first=Te.prototype.head,Ms&&(Te.prototype[Ms]=Pd),Te},ra=wf();rs?((rs.exports=ra)._=ra,Ba._=ra):Ur._=ra}).call(lodash)}(lodash$1,lodash$1.exports)),lodash$1.exports}var lodashExports=requireLodash();const _=getDefaultExportFromCjs(lodashExports),LISTENERS_SUFFIX="\0listeners";class BetterEventEmitter{constructor(){Xo(this,"listeners",new Map);Xo(this,"preventDefault",Symbol());Xo(this,"stop",this.preventDefault)}on(m,g,{warnAfter:x=10,callNow:b=!1}={}){typeof m=="string"&&(m=[m]);for(const E of m){let v=this.listeners.get(E);v||this.listeners.set(E,v=new Set),v.add(g),v.size>x&&console.warn("Warning: many event listeners for ",E),this.emit(E+LISTENERS_SUFFIX,v,g)}if(b)try{g()}catch(E){}return()=>{for(const E of m){const v=this.listeners.get(E);v&&(v.delete(g),this.emit(E+LISTENERS_SUFFIX,v))}}}onListeners(m,g){return this.on(m+LISTENERS_SUFFIX,g)}once(m,g){let x;const b=new Promise(E=>{x=this.on(m,function(...v){return x(),E(v.slice(0,-1)),g==null?void 0:g(...v)})});return Object.assign(x,{then:b.then.bind(b)})}multi(m){const g=Object.entries(m).map(([x,b])=>this.on(x.split(" "),b));return()=>{for(const x of g)x()}}anyListener(m){var g;return!!((g=this.listeners.get(m))!=null&&g.size)}emit(m,...g){let x=this.listeners.get(m);if(!(x!=null&&x.size))return;const b=[];let E=!1;const v={output:b,preventDefault(){E=!0}};for(const S of x){const C=S(...g,v);C===this.stop?v.preventDefault():C!==void 0&&b.push(C)}return Object.assign(b,{isDefaultPrevented:()=>E})}emitAsync(m,...g){return yt(this,null,function*(){const x=this.emit(m,...g);if(!x)return;const b=yield Promise.all(x);return Object.assign(b,{isDefaultPrevented:()=>x.isDefaultPrevented()||b.some(E=>E===this.preventDefault)})})}}const API_URL="/~/api/",timeoutByApi={loginSrp1:90,login:90,get_status:20,check_update:20,get_vfs:20},defaultApiCallOptions={};function setDefaultApiCallOptions(d){Object.assign(defaultApiCallOptions,d)}function apiCall(d,m,g={}){var R,k,L;_.defaults(g,defaultApiCallOptions);const x=(R=g.modal)==null?void 0:R.call(g,d,m),b=window.AbortController?new AbortController:void 0;let E="";const v=1e3*((L=(k=timeoutByApi[d])!=null?k:g.timeout)!=null?L:10),S=v&&setTimeout(()=>{b==null||b.abort(E="timeout"),console.debug("API TIMEOUT",d,m!=null?m:"")},v),C=g.restUri,T=new Date;return Object.assign(fetch(`${location.origin}${C||getPrefixUrl()+API_URL+d}`,{method:C?d:g.method||"POST",headers:{"content-type":"application/json","x-hfs-anti-csrf":"1"},signal:b==null?void 0:b.signal,body:m&&JSON.stringify(m)}).then(D=>yt(this,null,function*(){var N;x==null||x();let A=yield D.text(),I;try{I=g.skipParse?A:JSON.parse(A)}catch(z){I=A}if(g!=null&&g.skipLog||console.debug(D.ok?"API":"API FAILED",d,m!=null?m:"",">>",I,{started:formatTime(T),duration:Date.now()-+T}),yield(N=g.onResponse)==null?void 0:N.call(g,D,I),!D.ok)throw new ApiError(D.status,I===A?A:`Failed API ${d}: ${D.statusText}`,I);return I}),D=>{var A;throw x==null||x(),(A=D==null?void 0:D.message)!=null&&A.includes("fetch")?(console.error(D.message),Error("Server unreachable")):E||D}).finally(()=>clearTimeout(S)),{abort(){b==null||b.abort(E="cancel")},aborted:()=>b==null?void 0:b.signal.aborted})}class ApiError extends Error{constructor(m,g,x){super(g,{cause:x}),this.code=m}get data(){return this.cause}}function useApi(d,m,g={}){const[x,b,E]=useStateMounted(void 0),[v,S]=useStateMounted(void 0),[C,T]=useStateMounted(0),[R,k,L]=useStateMounted(void 0),D=reactExports.useRef();reactExports.useEffect(()=>{var U;S(void 0);let z=!1,j;const Y=()=>z||(j==null?void 0:j.aborted()),B=wait(0).then(()=>{if(!z)return j=!d||Y()?void 0:apiCall(d,m,g),k(j),j}).then(W=>{b(Y()?void 0:W),S(void 0)},W=>{S(Y()?void 0:W),b(void 0)}).finally(()=>{j===L()&&k(void 0),D.current=void 0});return(U=D.current)==null||U.resolve(B),()=>{z=!0,j==null||j.abort()}},[d,JSON.stringify(m),JSON.stringify(g),C]);const A=reactExports.useCallback(()=>{D.current||(D.current=pendingPromise(),T(z=>z+1))},[T]),I=reactExports.useMemo(()=>new BetterEventEmitter,[]),N=reactExports.useCallback(z=>I.on("data",z),[I]);return reactExports.useEffect(()=>{I.emit("data")},[x]),{data:x,setData:b,getData:E,error:v,reload:A,sub:N,loading:R}}function apiEvents(d,m,g){m=_.omitBy(m,_.isUndefined);const x=new EventSource(getPrefixUrl()+API_URL+d+buildUrlQueryString(m));return x.onopen=()=>{console.debug("API EVENTS",d,m),g("connected")},x.onerror=b=>g("error",b),x.onmessage=({data:b})=>{if(!b)return g("closed"),x.close();try{b=JSON.parse(b)}catch(E){return g("string",b)}console.debug("SSE msg",b),g("msg",b)},x}function useApiEvents(d,m={}){const[g,x]=useStateMounted(void 0),[b,E]=useStateMounted(void 0),[v,S]=useStateMounted(!1);return reactExports.useEffect(()=>{const C=apiEvents(d,m,(R,k)=>{switch(R){case"error":return E("Connection error"),T();case"closed":return T();case"msg":return C.readyState===C.CLOSED?T():x(k)}});return()=>{C.close(),T()};function T(){S(!1)}},[d,JSON.stringify(m)]),{data:g,loading:v,error:b}}function getNotifications(d,m){return yt(this,null,function*(){return new Promise(g=>{const x=apiEvents("get_notifications",{channel:d},(b,E)=>{if(b==="connected")return g(x);if(b==="msg")for(const[v,S]of E)v&&m(v,S)})})})}var utils$1={},constants,hasRequiredConstants;function requireConstants(){if(hasRequiredConstants)return constants;hasRequiredConstants=1;const d="\\\\/",m=`[^${d}]`,g="\\.",x="\\+",b="\\?",E="\\/",v="(?=.)",S="[^/]",C=`(?:${E}|$)`,T=`(?:^|${E})`,R=`${g}{1,2}${C}`,k=`(?!${g})`,L=`(?!${T}${R})`,D=`(?!${g}{0,1}${C})`,A=`(?!${R})`,I=`[^.${E}]`,N=`${S}*?`,j={DOT_LITERAL:g,PLUS_LITERAL:x,QMARK_LITERAL:b,SLASH_LITERAL:E,ONE_CHAR:v,QMARK:S,END_ANCHOR:C,DOTS_SLASH:R,NO_DOT:k,NO_DOTS:L,NO_DOT_SLASH:D,NO_DOTS_SLASH:A,QMARK_NO_DOT:I,STAR:N,START_ANCHOR:T,SEP:"/"},Y=$t(Fe({},j),{SLASH_LITERAL:`[${d}]`,QMARK:m,STAR:`${m}*?`,DOTS_SLASH:`${g}{1,2}(?:[${d}]|$)`,NO_DOT:`(?!${g})`,NO_DOTS:`(?!(?:^|[${d}])${g}{1,2}(?:[${d}]|$))`,NO_DOT_SLASH:`(?!${g}{0,1}(?:[${d}]|$))`,NO_DOTS_SLASH:`(?!${g}{1,2}(?:[${d}]|$))`,QMARK_NO_DOT:`[^.${d}]`,START_ANCHOR:`(?:^|[${d}])`,END_ANCHOR:`(?:[${d}]|$)`,SEP:"\\"}),B={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};return constants={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:B,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{__proto__:null,"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,extglobChars(U){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${U.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(U){return U===!0?Y:j}},constants}var hasRequiredUtils$1;function requireUtils$1(){return hasRequiredUtils$1||(hasRequiredUtils$1=1,function(d){const{REGEX_BACKSLASH:m,REGEX_REMOVE_BACKSLASH:g,REGEX_SPECIAL_CHARS:x,REGEX_SPECIAL_CHARS_GLOBAL:b}=requireConstants();d.isObject=E=>E!==null&&typeof E=="object"&&!Array.isArray(E),d.hasRegexChars=E=>x.test(E),d.isRegexChar=E=>E.length===1&&d.hasRegexChars(E),d.escapeRegex=E=>E.replace(b,"\\$1"),d.toPosixSlashes=E=>E.replace(m,"/"),d.isWindows=()=>{if(typeof navigator!="undefined"&&navigator.platform){const E=navigator.platform.toLowerCase();return E==="win32"||E==="windows"}return typeof process!="undefined"&&process.platform?process.platform==="win32":!1},d.removeBackslashes=E=>E.replace(g,v=>v==="\\"?"":v),d.escapeLast=(E,v,S)=>{const C=E.lastIndexOf(v,S);return C===-1?E:E[C-1]==="\\"?d.escapeLast(E,v,C-1):`${E.slice(0,C)}\\${E.slice(C)}`},d.removePrefix=(E,v={})=>{let S=E;return S.startsWith("./")&&(S=S.slice(2),v.prefix="./"),S},d.wrapOutput=(E,v={},S={})=>{const C=S.contains?"":"^",T=S.contains?"":"$";let R=`${C}(?:${E})${T}`;return v.negated===!0&&(R=`(?:^(?!${R}).*$)`),R},d.basename=(E,{windows:v}={})=>{const S=E.split(v?/[\\/]/:"/"),C=S[S.length-1];return C===""?S[S.length-2]:C}}(utils$1)),utils$1}var scan_1,hasRequiredScan;function requireScan(){if(hasRequiredScan)return scan_1;hasRequiredScan=1;const d=requireUtils$1(),{CHAR_ASTERISK:m,CHAR_AT:g,CHAR_BACKWARD_SLASH:x,CHAR_COMMA:b,CHAR_DOT:E,CHAR_EXCLAMATION_MARK:v,CHAR_FORWARD_SLASH:S,CHAR_LEFT_CURLY_BRACE:C,CHAR_LEFT_PARENTHESES:T,CHAR_LEFT_SQUARE_BRACKET:R,CHAR_PLUS:k,CHAR_QUESTION_MARK:L,CHAR_RIGHT_CURLY_BRACE:D,CHAR_RIGHT_PARENTHESES:A,CHAR_RIGHT_SQUARE_BRACKET:I}=requireConstants(),N=Y=>Y===S||Y===x,z=Y=>{Y.isPrefix!==!0&&(Y.depth=Y.isGlobstar?1/0:1)};return scan_1=(Y,B)=>{const U=B||{},W=Y.length-1,V=U.parts===!0||U.scanToEnd===!0,J=[],Q=[],X=[];let re=Y,ie=-1,oe=0,Z=0,ee=!1,ce=!1,fe=!1,ae=!1,ue=!1,pe=!1,ge=!1,ye=!1,Ee=!1,ve=!1,Se=0,$e,Me,Re={value:"",depth:0,isGlob:!1};const De=()=>ie>=W,Be=()=>re.charCodeAt(ie+1),Le=()=>($e=Me,re.charCodeAt(++ie));for(;ie<W;){Me=Le();let Ve;if(Me===x){ge=Re.backslashes=!0,Me=Le(),Me===C&&(pe=!0);continue}if(pe===!0||Me===C){for(Se++;De()!==!0&&(Me=Le());){if(Me===x){ge=Re.backslashes=!0,Le();continue}if(Me===C){Se++;continue}if(pe!==!0&&Me===E&&(Me=Le())===E){if(ee=Re.isBrace=!0,fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(pe!==!0&&Me===b){if(ee=Re.isBrace=!0,fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(Me===D&&(Se--,Se===0)){pe=!1,ee=Re.isBrace=!0,ve=!0;break}}if(V===!0)continue;break}if(Me===S){if(J.push(ie),Q.push(Re),Re={value:"",depth:0,isGlob:!1},ve===!0)continue;if($e===E&&ie===oe+1){oe+=2;continue}Z=ie+1;continue}if(U.noext!==!0&&(Me===k||Me===g||Me===m||Me===L||Me===v)===!0&&Be()===T){if(fe=Re.isGlob=!0,ae=Re.isExtglob=!0,ve=!0,Me===v&&ie===oe&&(Ee=!0),V===!0){for(;De()!==!0&&(Me=Le());){if(Me===x){ge=Re.backslashes=!0,Me=Le();continue}if(Me===A){fe=Re.isGlob=!0,ve=!0;break}}continue}break}if(Me===m){if($e===m&&(ue=Re.isGlobstar=!0),fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(Me===L){if(fe=Re.isGlob=!0,ve=!0,V===!0)continue;break}if(Me===R){for(;De()!==!0&&(Ve=Le());){if(Ve===x){ge=Re.backslashes=!0,Le();continue}if(Ve===I){ce=Re.isBracket=!0,fe=Re.isGlob=!0,ve=!0;break}}if(V===!0)continue;break}if(U.nonegate!==!0&&Me===v&&ie===oe){ye=Re.negated=!0,oe++;continue}if(U.noparen!==!0&&Me===T){if(fe=Re.isGlob=!0,V===!0){for(;De()!==!0&&(Me=Le());){if(Me===T){ge=Re.backslashes=!0,Me=Le();continue}if(Me===A){ve=!0;break}}continue}break}if(fe===!0){if(ve=!0,V===!0)continue;break}}U.noext===!0&&(ae=!1,fe=!1);let Ge=re,Ie="",Ye="";oe>0&&(Ie=re.slice(0,oe),re=re.slice(oe),Z-=oe),Ge&&fe===!0&&Z>0?(Ge=re.slice(0,Z),Ye=re.slice(Z)):fe===!0?(Ge="",Ye=re):Ge=re,Ge&&Ge!==""&&Ge!=="/"&&Ge!==re&&N(Ge.charCodeAt(Ge.length-1))&&(Ge=Ge.slice(0,-1)),U.unescape===!0&&(Ye&&(Ye=d.removeBackslashes(Ye)),Ge&&ge===!0&&(Ge=d.removeBackslashes(Ge)));const He={prefix:Ie,input:Y,start:oe,base:Ge,glob:Ye,isBrace:ee,isBracket:ce,isGlob:fe,isExtglob:ae,isGlobstar:ue,negated:ye,negatedExtglob:Ee};if(U.tokens===!0&&(He.maxDepth=0,N(Me)||Q.push(Re),He.tokens=Q),U.parts===!0||U.tokens===!0){let Ve;for(let rt=0;rt<J.length;rt++){const Oe=Ve?Ve+1:oe,ot=J[rt],ke=Y.slice(Oe,ot);U.tokens&&(rt===0&&oe!==0?(Q[rt].isPrefix=!0,Q[rt].value=Ie):Q[rt].value=ke,z(Q[rt]),He.maxDepth+=Q[rt].depth),(rt!==0||ke!=="")&&X.push(ke),Ve=ot}if(Ve&&Ve+1<Y.length){const rt=Y.slice(Ve+1);X.push(rt),U.tokens&&(Q[Q.length-1].value=rt,z(Q[Q.length-1]),He.maxDepth+=Q[Q.length-1].depth)}He.slashes=J,He.parts=X}return He},scan_1}var parse_1,hasRequiredParse;function requireParse(){if(hasRequiredParse)return parse_1;hasRequiredParse=1;const d=requireConstants(),m=requireUtils$1(),{MAX_LENGTH:g,POSIX_REGEX_SOURCE:x,REGEX_NON_SPECIAL_CHARS:b,REGEX_SPECIAL_CHARS_BACKREF:E,REPLACEMENTS:v}=d,S=(R,k)=>{if(typeof k.expandRange=="function")return k.expandRange(...R,k);R.sort();const L=`[${R.join("-")}]`;try{new RegExp(L)}catch(D){return R.map(A=>m.escapeRegex(A)).join("..")}return L},C=(R,k)=>`Missing ${R}: "${k}" - use "\\\\${k}" to match literal characters`,T=(R,k)=>{if(typeof R!="string")throw new TypeError("Expected a string");R=v[R]||R;const L=Fe({},k),D=typeof L.maxLength=="number"?Math.min(g,L.maxLength):g;let A=R.length;if(A>D)throw new SyntaxError(`Input length: ${A}, exceeds maximum allowed length: ${D}`);const I={type:"bos",value:"",output:L.prepend||""},N=[I],z=L.capture?"":"?:",j=d.globChars(L.windows),Y=d.extglobChars(j),{DOT_LITERAL:B,PLUS_LITERAL:U,SLASH_LITERAL:W,ONE_CHAR:V,DOTS_SLASH:J,NO_DOT:Q,NO_DOT_SLASH:X,NO_DOTS_SLASH:re,QMARK:ie,QMARK_NO_DOT:oe,STAR:Z,START_ANCHOR:ee}=j,ce=Oe=>`(${z}(?:(?!${ee}${Oe.dot?J:B}).)*?)`,fe=L.dot?"":Q,ae=L.dot?ie:oe;let ue=L.bash===!0?ce(L):Z;L.capture&&(ue=`(${ue})`),typeof L.noext=="boolean"&&(L.noextglob=L.noext);const pe={input:R,index:-1,start:0,dot:L.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:N};R=m.removePrefix(R,pe),A=R.length;const ge=[],ye=[],Ee=[];let ve=I,Se;const $e=()=>pe.index===A-1,Me=pe.peek=(Oe=1)=>R[pe.index+Oe],Re=pe.advance=()=>R[++pe.index]||"",De=()=>R.slice(pe.index+1),Be=(Oe="",ot=0)=>{pe.consumed+=Oe,pe.index+=ot},Le=Oe=>{pe.output+=Oe.output!=null?Oe.output:Oe.value,Be(Oe.value)},Ge=()=>{let Oe=1;for(;Me()==="!"&&(Me(2)!=="("||Me(3)==="?");)Re(),pe.start++,Oe++;return Oe%2===0?!1:(pe.negated=!0,pe.start++,!0)},Ie=Oe=>{pe[Oe]++,Ee.push(Oe)},Ye=Oe=>{pe[Oe]--,Ee.pop()},He=Oe=>{if(ve.type==="globstar"){const ot=pe.braces>0&&(Oe.type==="comma"||Oe.type==="brace"),ke=Oe.extglob===!0||ge.length&&(Oe.type==="pipe"||Oe.type==="paren");Oe.type!=="slash"&&Oe.type!=="paren"&&!ot&&!ke&&(pe.output=pe.output.slice(0,-ve.output.length),ve.type="star",ve.value="*",ve.output=ue,pe.output+=ve.output)}if(ge.length&&Oe.type!=="paren"&&(ge[ge.length-1].inner+=Oe.value),(Oe.value||Oe.output)&&Le(Oe),ve&&ve.type==="text"&&Oe.type==="text"){ve.output=(ve.output||ve.value)+Oe.value,ve.value+=Oe.value;return}Oe.prev=ve,N.push(Oe),ve=Oe},Ve=(Oe,ot)=>{const ke=$t(Fe({},Y[ot]),{conditions:1,inner:""});ke.prev=ve,ke.parens=pe.parens,ke.output=pe.output;const Ne=(L.capture?"(":"")+ke.open;Ie("parens"),He({type:Oe,value:ot,output:pe.output?"":V}),He({type:"paren",extglob:!0,value:Re(),output:Ne}),ge.push(ke)},rt=Oe=>{let ot=Oe.close+(L.capture?")":""),ke;if(Oe.type==="negate"){let Ne=ue;if(Oe.inner&&Oe.inner.length>1&&Oe.inner.includes("/")&&(Ne=ce(L)),(Ne!==ue||$e()||/^\)+$/.test(De()))&&(ot=Oe.close=`)$))${Ne}`),Oe.inner.includes("*")&&(ke=De())&&/^\.[^\\/.]+$/.test(ke)){const Ke=T(ke,$t(Fe({},k),{fastpaths:!1})).output;ot=Oe.close=`)${Ke})${Ne})`}Oe.prev.type==="bos"&&(pe.negatedExtglob=!0)}He({type:"paren",extglob:!0,value:Se,output:ot}),Ye("parens")};if(L.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(R)){let Oe=!1,ot=R.replace(E,(ke,Ne,Ke,Xe,st,xt)=>Xe==="\\"?(Oe=!0,ke):Xe==="?"?Ne?Ne+Xe+(st?ie.repeat(st.length):""):xt===0?ae+(st?ie.repeat(st.length):""):ie.repeat(Ke.length):Xe==="."?B.repeat(Ke.length):Xe==="*"?Ne?Ne+Xe+(st?ue:""):ue:Ne?ke:`\\${ke}`);return Oe===!0&&(L.unescape===!0?ot=ot.replace(/\\/g,""):ot=ot.replace(/\\+/g,ke=>ke.length%2===0?"\\\\":ke?"\\":"")),ot===R&&L.contains===!0?(pe.output=R,pe):(pe.output=m.wrapOutput(ot,pe,k),pe)}for(;!$e();){if(Se=Re(),Se==="\0")continue;if(Se==="\\"){const ke=Me();if(ke==="/"&&L.bash!==!0||ke==="."||ke===";")continue;if(!ke){Se+="\\",He({type:"text",value:Se});continue}const Ne=/^\\+/.exec(De());let Ke=0;if(Ne&&Ne[0].length>2&&(Ke=Ne[0].length,pe.index+=Ke,Ke%2!==0&&(Se+="\\")),L.unescape===!0?Se=Re():Se+=Re(),pe.brackets===0){He({type:"text",value:Se});continue}}if(pe.brackets>0&&(Se!=="]"||ve.value==="["||ve.value==="[^")){if(L.posix!==!1&&Se===":"){const ke=ve.value.slice(1);if(ke.includes("[")&&(ve.posix=!0,ke.includes(":"))){const Ne=ve.value.lastIndexOf("["),Ke=ve.value.slice(0,Ne),Xe=ve.value.slice(Ne+2),st=x[Xe];if(st){ve.value=Ke+st,pe.backtrack=!0,Re(),!I.output&&N.indexOf(ve)===1&&(I.output=V);continue}}}(Se==="["&&Me()!==":"||Se==="-"&&Me()==="]")&&(Se=`\\${Se}`),Se==="]"&&(ve.value==="["||ve.value==="[^")&&(Se=`\\${Se}`),L.posix===!0&&Se==="!"&&ve.value==="["&&(Se="^"),ve.value+=Se,Le({value:Se});continue}if(pe.quotes===1&&Se!=='"'){Se=m.escapeRegex(Se),ve.value+=Se,Le({value:Se});continue}if(Se==='"'){pe.quotes=pe.quotes===1?0:1,L.keepQuotes===!0&&He({type:"text",value:Se});continue}if(Se==="("){Ie("parens"),He({type:"paren",value:Se});continue}if(Se===")"){if(pe.parens===0&&L.strictBrackets===!0)throw new SyntaxError(C("opening","("));const ke=ge[ge.length-1];if(ke&&pe.parens===ke.parens+1){rt(ge.pop());continue}He({type:"paren",value:Se,output:pe.parens?")":"\\)"}),Ye("parens");continue}if(Se==="["){if(L.nobracket===!0||!De().includes("]")){if(L.nobracket!==!0&&L.strictBrackets===!0)throw new SyntaxError(C("closing","]"));Se=`\\${Se}`}else Ie("brackets");He({type:"bracket",value:Se});continue}if(Se==="]"){if(L.nobracket===!0||ve&&ve.type==="bracket"&&ve.value.length===1){He({type:"text",value:Se,output:`\\${Se}`});continue}if(pe.brackets===0){if(L.strictBrackets===!0)throw new SyntaxError(C("opening","["));He({type:"text",value:Se,output:`\\${Se}`});continue}Ye("brackets");const ke=ve.value.slice(1);if(ve.posix!==!0&&ke[0]==="^"&&!ke.includes("/")&&(Se=`/${Se}`),ve.value+=Se,Le({value:Se}),L.literalBrackets===!1||m.hasRegexChars(ke))continue;const Ne=m.escapeRegex(ve.value);if(pe.output=pe.output.slice(0,-ve.value.length),L.literalBrackets===!0){pe.output+=Ne,ve.value=Ne;continue}ve.value=`(${z}${Ne}|${ve.value})`,pe.output+=ve.value;continue}if(Se==="{"&&L.nobrace!==!0){Ie("braces");const ke={type:"brace",value:Se,output:"(",outputIndex:pe.output.length,tokensIndex:pe.tokens.length};ye.push(ke),He(ke);continue}if(Se==="}"){const ke=ye[ye.length-1];if(L.nobrace===!0||!ke){He({type:"text",value:Se,output:Se});continue}let Ne=")";if(ke.dots===!0){const Ke=N.slice(),Xe=[];for(let st=Ke.length-1;st>=0&&(N.pop(),Ke[st].type!=="brace");st--)Ke[st].type!=="dots"&&Xe.unshift(Ke[st].value);Ne=S(Xe,L),pe.backtrack=!0}if(ke.comma!==!0&&ke.dots!==!0){const Ke=pe.output.slice(0,ke.outputIndex),Xe=pe.tokens.slice(ke.tokensIndex);ke.value=ke.output="\\{",Se=Ne="\\}",pe.output=Ke;for(const st of Xe)pe.output+=st.output||st.value}He({type:"brace",value:Se,output:Ne}),Ye("braces"),ye.pop();continue}if(Se==="|"){ge.length>0&&ge[ge.length-1].conditions++,He({type:"text",value:Se});continue}if(Se===","){let ke=Se;const Ne=ye[ye.length-1];Ne&&Ee[Ee.length-1]==="braces"&&(Ne.comma=!0,ke="|"),He({type:"comma",value:Se,output:ke});continue}if(Se==="/"){if(ve.type==="dot"&&pe.index===pe.start+1){pe.start=pe.index+1,pe.consumed="",pe.output="",N.pop(),ve=I;continue}He({type:"slash",value:Se,output:W});continue}if(Se==="."){if(pe.braces>0&&ve.type==="dot"){ve.value==="."&&(ve.output=B);const ke=ye[ye.length-1];ve.type="dots",ve.output+=Se,ve.value+=Se,ke.dots=!0;continue}if(pe.braces+pe.parens===0&&ve.type!=="bos"&&ve.type!=="slash"){He({type:"text",value:Se,output:B});continue}He({type:"dot",value:Se,output:B});continue}if(Se==="?"){if(!(ve&&ve.value==="(")&&L.noextglob!==!0&&Me()==="("&&Me(2)!=="?"){Ve("qmark",Se);continue}if(ve&&ve.type==="paren"){const Ne=Me();let Ke=Se;(ve.value==="("&&!/[!=<:]/.test(Ne)||Ne==="<"&&!/<([!=]|\w+>)/.test(De()))&&(Ke=`\\${Se}`),He({type:"text",value:Se,output:Ke});continue}if(L.dot!==!0&&(ve.type==="slash"||ve.type==="bos")){He({type:"qmark",value:Se,output:oe});continue}He({type:"qmark",value:Se,output:ie});continue}if(Se==="!"){if(L.noextglob!==!0&&Me()==="("&&(Me(2)!=="?"||!/[!=<:]/.test(Me(3)))){Ve("negate",Se);continue}if(L.nonegate!==!0&&pe.index===0){Ge();continue}}if(Se==="+"){if(L.noextglob!==!0&&Me()==="("&&Me(2)!=="?"){Ve("plus",Se);continue}if(ve&&ve.value==="("||L.regex===!1){He({type:"plus",value:Se,output:U});continue}if(ve&&(ve.type==="bracket"||ve.type==="paren"||ve.type==="brace")||pe.parens>0){He({type:"plus",value:Se});continue}He({type:"plus",value:U});continue}if(Se==="@"){if(L.noextglob!==!0&&Me()==="("&&Me(2)!=="?"){He({type:"at",extglob:!0,value:Se,output:""});continue}He({type:"text",value:Se});continue}if(Se!=="*"){(Se==="$"||Se==="^")&&(Se=`\\${Se}`);const ke=b.exec(De());ke&&(Se+=ke[0],pe.index+=ke[0].length),He({type:"text",value:Se});continue}if(ve&&(ve.type==="globstar"||ve.star===!0)){ve.type="star",ve.star=!0,ve.value+=Se,ve.output=ue,pe.backtrack=!0,pe.globstar=!0,Be(Se);continue}let Oe=De();if(L.noextglob!==!0&&/^\([^?]/.test(Oe)){Ve("star",Se);continue}if(ve.type==="star"){if(L.noglobstar===!0){Be(Se);continue}const ke=ve.prev,Ne=ke.prev,Ke=ke.type==="slash"||ke.type==="bos",Xe=Ne&&(Ne.type==="star"||Ne.type==="globstar");if(L.bash===!0&&(!Ke||Oe[0]&&Oe[0]!=="/")){He({type:"star",value:Se,output:""});continue}const st=pe.braces>0&&(ke.type==="comma"||ke.type==="brace"),xt=ge.length&&(ke.type==="pipe"||ke.type==="paren");if(!Ke&&ke.type!=="paren"&&!st&&!xt){He({type:"star",value:Se,output:""});continue}for(;Oe.slice(0,3)==="/**";){const Je=R[pe.index+4];if(Je&&Je!=="/")break;Oe=Oe.slice(3),Be("/**",3)}if(ke.type==="bos"&&$e()){ve.type="globstar",ve.value+=Se,ve.output=ce(L),pe.output=ve.output,pe.globstar=!0,Be(Se);continue}if(ke.type==="slash"&&ke.prev.type!=="bos"&&!Xe&&$e()){pe.output=pe.output.slice(0,-(ke.output+ve.output).length),ke.output=`(?:${ke.output}`,ve.type="globstar",ve.output=ce(L)+(L.strictSlashes?")":"|$)"),ve.value+=Se,pe.globstar=!0,pe.output+=ke.output+ve.output,Be(Se);continue}if(ke.type==="slash"&&ke.prev.type!=="bos"&&Oe[0]==="/"){const Je=Oe[1]!==void 0?"|$":"";pe.output=pe.output.slice(0,-(ke.output+ve.output).length),ke.output=`(?:${ke.output}`,ve.type="globstar",ve.output=`${ce(L)}${W}|${W}${Je})`,ve.value+=Se,pe.output+=ke.output+ve.output,pe.globstar=!0,Be(Se+Re()),He({type:"slash",value:"/",output:""});continue}if(ke.type==="bos"&&Oe[0]==="/"){ve.type="globstar",ve.value+=Se,ve.output=`(?:^|${W}|${ce(L)}${W})`,pe.output=ve.output,pe.globstar=!0,Be(Se+Re()),He({type:"slash",value:"/",output:""});continue}pe.output=pe.output.slice(0,-ve.output.length),ve.type="globstar",ve.output=ce(L),ve.value+=Se,pe.output+=ve.output,pe.globstar=!0,Be(Se);continue}const ot={type:"star",value:Se,output:ue};if(L.bash===!0){ot.output=".*?",(ve.type==="bos"||ve.type==="slash")&&(ot.output=fe+ot.output),He(ot);continue}if(ve&&(ve.type==="bracket"||ve.type==="paren")&&L.regex===!0){ot.output=Se,He(ot);continue}(pe.index===pe.start||ve.type==="slash"||ve.type==="dot")&&(ve.type==="dot"?(pe.output+=X,ve.output+=X):L.dot===!0?(pe.output+=re,ve.output+=re):(pe.output+=fe,ve.output+=fe),Me()!=="*"&&(pe.output+=V,ve.output+=V)),He(ot)}for(;pe.brackets>0;){if(L.strictBrackets===!0)throw new SyntaxError(C("closing","]"));pe.output=m.escapeLast(pe.output,"["),Ye("brackets")}for(;pe.parens>0;){if(L.strictBrackets===!0)throw new SyntaxError(C("closing",")"));pe.output=m.escapeLast(pe.output,"("),Ye("parens")}for(;pe.braces>0;){if(L.strictBrackets===!0)throw new SyntaxError(C("closing","}"));pe.output=m.escapeLast(pe.output,"{"),Ye("braces")}if(L.strictSlashes!==!0&&(ve.type==="star"||ve.type==="bracket")&&He({type:"maybe_slash",value:"",output:`${W}?`}),pe.backtrack===!0){pe.output="";for(const Oe of pe.tokens)pe.output+=Oe.output!=null?Oe.output:Oe.value,Oe.suffix&&(pe.output+=Oe.suffix)}return pe};return T.fastpaths=(R,k)=>{const L=Fe({},k),D=typeof L.maxLength=="number"?Math.min(g,L.maxLength):g,A=R.length;if(A>D)throw new SyntaxError(`Input length: ${A}, exceeds maximum allowed length: ${D}`);R=v[R]||R;const{DOT_LITERAL:I,SLASH_LITERAL:N,ONE_CHAR:z,DOTS_SLASH:j,NO_DOT:Y,NO_DOTS:B,NO_DOTS_SLASH:U,STAR:W,START_ANCHOR:V}=d.globChars(L.windows),J=L.dot?B:Y,Q=L.dot?U:Y,X=L.capture?"":"?:",re={negated:!1,prefix:""};let ie=L.bash===!0?".*?":W;L.capture&&(ie=`(${ie})`);const oe=fe=>fe.noglobstar===!0?ie:`(${X}(?:(?!${V}${fe.dot?j:I}).)*?)`,Z=fe=>{switch(fe){case"*":return`${J}${z}${ie}`;case".*":return`${I}${z}${ie}`;case"*.*":return`${J}${ie}${I}${z}${ie}`;case"*/*":return`${J}${ie}${N}${z}${Q}${ie}`;case"**":return J+oe(L);case"**/*":return`(?:${J}${oe(L)}${N})?${Q}${z}${ie}`;case"**/*.*":return`(?:${J}${oe(L)}${N})?${Q}${ie}${I}${z}${ie}`;case"**/.*":return`(?:${J}${oe(L)}${N})?${I}${z}${ie}`;default:{const ae=/^(.*?)\.(\w+)$/.exec(fe);if(!ae)return;const ue=Z(ae[1]);return ue?ue+I+ae[2]:void 0}}},ee=m.removePrefix(R,re);let ce=Z(ee);return ce&&L.strictSlashes!==!0&&(ce+=`${N}?`),ce},parse_1=T,parse_1}var picomatch_1,hasRequiredPicomatch;function requirePicomatch(){if(hasRequiredPicomatch)return picomatch_1;hasRequiredPicomatch=1;const d=requireScan(),m=requireParse(),g=requireUtils$1(),x=requireConstants(),b=v=>v&&typeof v=="object"&&!Array.isArray(v),E=(v,S,C=!1)=>{if(Array.isArray(v)){const N=v.map(j=>E(j,S,C));return j=>{for(const Y of N){const B=Y(j);if(B)return B}return!1}}const T=b(v)&&v.tokens&&v.input;if(v===""||typeof v!="string"&&!T)throw new TypeError("Expected pattern to be a non-empty string");const R=S||{},k=R.windows,L=T?E.compileRe(v,S):E.makeRe(v,S,!1,!0),D=L.state;delete L.state;let A=()=>!1;if(R.ignore){const N=$t(Fe({},S),{ignore:null,onMatch:null,onResult:null});A=E(R.ignore,N,C)}const I=(N,z=!1)=>{const{isMatch:j,match:Y,output:B}=E.test(N,L,S,{glob:v,posix:k}),U={glob:v,state:D,regex:L,posix:k,input:N,output:B,match:Y,isMatch:j};return typeof R.onResult=="function"&&R.onResult(U),j===!1?(U.isMatch=!1,z?U:!1):A(N)?(typeof R.onIgnore=="function"&&R.onIgnore(U),U.isMatch=!1,z?U:!1):(typeof R.onMatch=="function"&&R.onMatch(U),z?U:!0)};return C&&(I.state=D),I};return E.test=(v,S,C,{glob:T,posix:R}={})=>{if(typeof v!="string")throw new TypeError("Expected input to be a string");if(v==="")return{isMatch:!1,output:""};const k=C||{},L=k.format||(R?g.toPosixSlashes:null);let D=v===T,A=D&&L?L(v):v;return D===!1&&(A=L?L(v):v,D=A===T),(D===!1||k.capture===!0)&&(k.matchBase===!0||k.basename===!0?D=E.matchBase(v,S,C,R):D=S.exec(A)),{isMatch:!!D,match:D,output:A}},E.matchBase=(v,S,C)=>(S instanceof RegExp?S:E.makeRe(S,C)).test(g.basename(v)),E.isMatch=(v,S,C)=>E(S,C)(v),E.parse=(v,S)=>Array.isArray(v)?v.map(C=>E.parse(C,S)):m(v,$t(Fe({},S),{fastpaths:!1})),E.scan=(v,S)=>d(v,S),E.compileRe=(v,S,C=!1,T=!1)=>{if(C===!0)return v.output;const R=S||{},k=R.contains?"":"^",L=R.contains?"":"$";let D=`${k}(?:${v.output})${L}`;v&&v.negated===!0&&(D=`^(?!${D}).*$`);const A=E.toRegex(D,S);return T===!0&&(A.state=v),A},E.makeRe=(v,S={},C=!1,T=!1)=>{if(!v||typeof v!="string")throw new TypeError("Expected a non-empty string");let R={negated:!1,fastpaths:!0};return S.fastpaths!==!1&&(v[0]==="."||v[0]==="*")&&(R.output=m.fastpaths(v,S)),R.output||(R=m(v,S)),E.compileRe(R,S,C,T)},E.toRegex=(v,S)=>{try{const C=S||{};return new RegExp(v,C.flags||(C.nocase?"i":""))}catch(C){if(S&&S.debug===!0)throw C;return/$^/}},E.constants=x,picomatch_1=E,picomatch_1}var picomatchExports=requirePicomatch();const picomatch=getDefaultExportFromCjs(picomatchExports),SPECIAL_URI="/~/",FRONTEND_URI=SPECIAL_URI+"frontend/",ADMIN_URI=SPECIAL_URI+"admin/",API_URI=SPECIAL_URI+"api/",PLUGINS_PUB_URI=SPECIAL_URI+"plugins/",ICONS_URI=SPECIAL_URI+"icons/",PORT_DISABLED=-1,NBSP=" ",PLUGIN_CUSTOM_REST_PREFIX="_",HFS_REPO="rejetto/hfs",UPLOAD_TEMP_HASH="upload-temp-hash",MTIME_CHECK="x-mtime-check",PREVIOUS_TAG="previous",ALLOW_SESSION_IP_CHANGE="allow_session_ip_change",HIDE_IN_TESTS="hideInTests",EMBEDDED_LANGUAGE="en",HTTP_OK=200,HTTP_NO_CONTENT=204,HTTP_PARTIAL_CONTENT=206,HTTP_MOVED_PERMANENTLY=301,HTTP_TEMPORARY_REDIRECT=302,HTTP_NOT_MODIFIED=304,HTTP_BAD_REQUEST=400,HTTP_UNAUTHORIZED=401,HTTP_FORBIDDEN=403,HTTP_NOT_FOUND=404,HTTP_METHOD_NOT_ALLOWED=405,HTTP_NOT_ACCEPTABLE=406,HTTP_CONFLICT=409,HTTP_PRECONDITION_FAILED=412,HTTP_PAYLOAD_TOO_LARGE=413,HTTP_RANGE_NOT_SATISFIABLE=416,HTTP_FOOL=418,HTTP_FAILED_DEPENDENCY=424,HTTP_TOO_MANY_REQUESTS=429,HTTP_SERVER_ERROR=500,HTTP_SERVICE_UNAVAILABLE=503,HTTP_INSUFFICIENT_STORAGE=507,HTTP_MESSAGES={[HTTP_UNAUTHORIZED]:"Unauthorized",[HTTP_FORBIDDEN]:"Forbidden",[HTTP_NOT_FOUND]:"Not found",[HTTP_SERVER_ERROR]:"Server error",[HTTP_TOO_MANY_REQUESTS]:"Too many requests"},WEBSITE="https://rejetto.com/hfs/",REPO_URL=`https://github.com/${HFS_REPO}/`,WIKI_URL=REPO_URL+"wiki/",MINUTE=6e4,HOUR=60*MINUTE,DAY=24*HOUR,MAX_TILE_SIZE=10,FRONTEND_OPTIONS={file_menu_on_link:!0,tile_size:0,sort_by:"name",invert_order:!1,folders_first:!0,sort_numerics:!1,title_with_path:!0,theme:"",auto_play_seconds:5,disableTranslation:!1},SORT_BY_OPTIONS=["name","extension","size","time","creation"],THEME_OPTIONS={auto:"",light:"light",dark:"dark"},CFG=constMap(["geo_enable","geo_allow","geo_list","geo_allow_unknown","dynamic_dns_url","log","error_log","log_rotation","dont_log_net","log_gui","log_api","log_ua","log_spam","track_ips","max_downloads","max_downloads_per_ip","max_downloads_per_account","roots","force_address","split_uploads","force_lang","suspend_plugins","base_url","size_1024","disable_custom_html","comments_storage","outbound_proxy"]),LIST={add:"+",remove:"-",update:"=",props:"props",ready:"ready",error:"e"},WHO_ANYONE=!0,WHO_NO_ONE=!1,WHO_ANY_ACCOUNT="*",defaultPerms={can_see:"can_read",can_read:WHO_ANYONE,can_list:"can_read",can_upload:WHO_NO_ONE,can_delete:WHO_NO_ONE,can_archive:"can_read"},PERM_KEYS=typedKeys(defaultPerms);function constMap(d){return Object.fromEntries(d.map(m=>[m,m]))}function isWhoObject(d){return d!==null&&typeof d=="object"&&!Array.isArray(d)}const MULTIPLIERS=["","K","M","G","T"];function formatBytes(d,{post:m="B",k:g=0,digits:x=NaN,sep:b=" "}={}){var S;if(isNaN(Number(d))||d<0)return"";g||(g=(S=formatBytes.k)!=null?S:1024);const E=d&&Math.min(MULTIPLIERS.length-1,Math.floor(Math.log2(d)/Math.log2(g)));return d/=oo(g,E),(E&&!isNaN(x)?d.toFixed(x):_.round(d,isNaN(x)?d>=100?0:1:x))+b+(MULTIPLIERS[E]||"")+m}function formatSpeed(d,m={}){return formatBytes(d,Fe({post:"B/s"},m))}function prefix(d,m,g=""){return m?(d||"")+m+(g||""):""}function join(d,m,g="/"){if(!m)return d;if(!d)return m;const x=d.at(-1)===g,b=m[0]===g;return d+(!x&&!b?g+m:x&&b?m.slice(1):m)}function wait(d,m){return new Promise(g=>setTimeout(g,d,m))}function haveTimeout(d,m,g){let x;return Promise.race([m.finally(()=>clearTimeout(x)),new Promise((b,E)=>x=setTimeout(()=>E(g||Error("timeout")),d))])}function objSameKeys(d,m){return Object.fromEntries(Object.entries(d).map(([g,x])=>[g,m(x,g)]))}function objFromKeys(d,m){return Object.fromEntries(d.map(g=>[g,m(g)]))}function enforceFinal(d,m,g=!1){return(m?!m.endsWith(d):g)?m+d:m}function removeFinal(d,m){return m.endsWith(d)?m.slice(0,-d.length):m}function enforceStarting(d,m,g=!1){return(m?!m.startsWith(d):g)?d+m:m}function removeStarting(d,m){return m.startsWith(d)?m.slice(d.length):m}function strinsert(d,m,g,x=0){return d.slice(0,m)+g+d.slice(m+x)}function splitAt(d,m){if(typeof d=="number")return[m.slice(0,d),m.slice(d+1)];const g=m.indexOf(d);return g<0?[m,""]:[m.slice(0,g),m.slice(g+d.length)]}function stringAfter(d,m){const g=m.indexOf(d);return g<0?"":m.slice(g+d.length)}function truthy(d){return!!d}function onlyTruthy(d){return d.filter(truthy)}function setHidden(d,m){return Object.defineProperties(d,newObj(m,g=>({enumerable:!1,writable:!0,value:g})))}function try_(d,m){try{return d()}catch(g){return m==null?void 0:m(g)}}function with_(d,m){return m(d)}function formatPerc(d){return(d*100).toFixed(1)+"%"}function wantArray(d){return d==null?[]:Array.isArray(d)?d:[d]}function _log(...d){return console.log("**",...d),d[d.length-1]}function _dbg(d){debugger;return d}function pendingPromise(){let d;const m=new Promise((g,x)=>d={resolve:g,reject:x});return Object.assign(m,d)}function basename(d){var m;return((m=d.match(/([^\\/]+)[\\/]*$/))==null?void 0:m[1])||""}function dirname(d){return d.slice(0,Math.max(0,d.lastIndexOf("/",d.length-1)))}function tryJson(d,m){try{return d&&JSON.parse(d)}catch(g){return m==null?void 0:m(d)}}function swap(d,m,g){const x=d[m];return d[m]=d[g],d[g]=x,d}function isOrderedEqual(d,m){return _.isEqualWith(d,m,(g,x)=>{if(!_.isPlainObject(g)||!_.isPlainObject(x))return;const b=Object.keys(g),E=Object.keys(x);return b.length===E.length&&b.every((v,S)=>{const C=E[S];return v===C&&isOrderedEqual(g[v],x[C])})})}function findDefined(d,m){if(d)for(const g in d){const x=m(d[g],g);if(x!==void 0)return x}}function newObj(d,m,g=!1){let x;const b=Object.entries(d||{}).map(([v,S])=>{const C=typeof g=="number"?g:0;x=v;let T=m(S,v,E,C);return(g!==!1||m.length===4)&&_.isPlainObject(T)&&(T=newObj(T,m,C+1)),x!==void 0&&[x,T]});return Object.fromEntries(onlyTruthy(b));function E(v){return x=v,!0}}function waitFor(x){return yt(this,arguments,function*(d,{interval:m=200,timeout:g=1/0}={}){const b=Date.now();for(;;){const E=yield d();if(E)return E;if(Date.now()-b>=g)return;yield wait(m)}})}function getOrSet(d,m,g){return m in d?d[m]:d[m]=g()}function randomId(d=10){return d>10?randomId(10)+randomId(d-10):Math.random().toString(36).substring(2,2+d).replace(/l/g,"L")}function objRenameKey(d,m,g){if(!(!d||!d.hasOwnProperty(m)||m===g))return d[g]=d[m],delete d[m],!0}function typedKeys(d){return Object.keys(d)}function typedEntries(d){return Object.entries(d)}function hasProp(d,m){return m in d}function throw_(d){throw d}function filterMapGenerator(d,m){return Im(this,null,function*(){try{for(var g=lm(d),x,b,E;x=!(b=yield new su(g.next())).done;x=!1){const v=b.value;const S=yield new su(m(v));S!==void 0&&(yield S)}}catch(b){E=[b]}finally{try{x&&(b=g.return)&&(yield new su(b.call(g)))}finally{if(E)throw E[0]}}})}function asyncGeneratorToArray(d){return yt(this,null,function*(){const m=[];try{for(var g=lm(d),x,b,E;x=!(b=yield g.next()).done;x=!1){const v=b.value;m.push(v)}}catch(b){E=[b]}finally{try{x&&(b=g.return)&&(yield b.call(g))}finally{if(E)throw E[0]}}return m})}function repeat(d,m){let g=!1;return yt(this,null,function*(){for(;!g;){try{yield m(x)}catch(b){}yield wait(d)}}),x;function x(){g=!0}}function formatTimestamp$2(d,m=!0){return d?(d instanceof Date||(d=new Date(d)),formatDate(d)+" "+formatTime(d,m)):""}function formatTime(d,m=!0){return String(d.getHours()).padStart(2,"0")+":"+String(d.getMinutes()).padStart(2,"0")+(m?":"+String(d.getSeconds()).padStart(2,"0"):"")}function formatDate(d){return[d.getFullYear(),d.getMonth()+1,d.getDate()].map(m=>m.toString().padStart(2,"0")).join("-")}function isNumeric(d){return _.isNumber(d)||_.isString(d)&&!isNaN(Number(d))}function isPrimitive(d){return d===null||typeof d!="object"&&typeof d!="function"}function isIP(d){return/^([.:\da-f]+)$/i.test(d)}function isWindowsDrive(d){return d&&/^[a-zA-Z]:$/.test(d)}function isTimestampString(d){return typeof d=="string"&&/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(\.\d+)?Z*$/.test(d)}function isEqualLax(d,m,g){var x;return(x=g==null?void 0:g(d,m))!=null?x:d==m||d&&m&&typeof d=="object"&&typeof m=="object"&&Object.entries(d).every(([b,E])=>isEqualLax(E,m[b],g))&&Object.entries(m).every(([b,E])=>b in d||isEqualLax(E,d[b],g))}function xlate(d,m){var g;return(g=m[d])!=null?g:d}function normalizeHost(d){return d[0]==="["?d.slice(1,d.indexOf("]")):d==null?void 0:d.split(":")[0]}function isIpLocalHost(d){return d==="::1"||d.endsWith("127.0.0.1")}function isIpLan(d){return/^(?:10\.|172\.(1[6-9]|2\d|3[01])\.|192\.168\.|fe80::)/.test(d)}function ipForUrl(d){return d.includes(":")?"["+d+"]":d}function escapeHTML(d){return d.replace(/[\u0000-\u002F\u003A-\u0040\u005B-\u0060\u007B-\u00FF]/g,m=>"&#"+("000"+m.charCodeAt(0)).slice(-4)+";")}function promiseBestEffort(d){return yt(this,null,function*(){return(yield Promise.allSettled(d)).filter(g=>g.status==="fulfilled").map(g=>g.value)})}function pathEncode(d){return d.replace(/[:&#'"% ?\\]/g,escape)}function runAt(d,m){let g=!1,x;return setTimeout(()=>yt(this,null,function*(){if(E()<0)return;const b=2147483647;for(;!g&&E()>b;)yield wait(b);if(g)return;x=setTimeout(m,E());function E(){return d-Date.now()}})),()=>{g=!0,clearTimeout(x)}}function makeMatcher(d,m=!1){return d?picomatch(d.replace(/^(!)?/,"$1(")+")",{nocase:!0}):()=>m}function matches(d,m,g=!1){var b;const x=matches.cache||(matches.cache={});return(x[b=m+(g?"1":"0")]||(x[b]=makeMatcher(m,g)))(d)}function replace(d,m,g=""){const[x,b]=splitAt(" ",g);for(const[E,v]of Object.entries(m))d=d.replaceAll(x+E+b,v);return d}function inCommon(d,m){let g=0;const x=d.length;for(;g<x&&d[g]===m[g];)g++;return g}function mapFilter(d,m,g=b=>b===void 0,x=!1){return d[x?"reduceRight":"reduce"]((b,E,v)=>{const S=m(E,v);return g(S)&&b.push(S),b},[])}function callable(d,...m){return _.isFunction(d)?d(...m):d}function safeDecodeURIComponent(d){try{return decodeURIComponent(d)}catch(m){return d}}function popKey(d,m){if(!d)return;const g=d[m];return delete d[m],g}function patchKey(d,m,g){return d[m]=g(d[m]),d}function retry(d,m=1e3){return yt(this,null,function*(){let g=3;for(;!((yield d())||!g--);)yield wait(m)})}function toMutable(d){return Array.isArray(d)?d.slice():Fe({},d)}function shortenAgent(d){var m;return _.findKey(BROWSERS,g=>g.test(d))||((m=/^[^/(]+ ?/.exec(d))==null?void 0:m[0])||d}const BROWSERS={YaBrowser:/yabrowser/i,AlamoFire:/alamofire/i,Edge:/edge|edga|edgios|edg/i,PhantomJS:/phantomjs/i,Konqueror:/konqueror/i,Amaya:/amaya/i,Epiphany:/epiphany/i,SeaMonkey:/seamonkey/i,Flock:/flock/i,OmniWeb:/omniweb/i,Opera:/opera|OPR\//i,Chromium:/chromium/i,Facebook:/FBA[NV]/,Chrome:/chrome|crios/i,WinJs:/msapphost/i,IE:/msie|trident/i,Firefox:/firefox|fxios/i,Safari:/safari/i,PS5:/playstation 5/i,PS4:/playstation 4/i,PS3:/playstation 3/i,PSP:/playstation portable/i,PS:/playstation/i,Xbox:/xbox/i,UC:/UCBrowser/i},cross=Object.freeze(Object.defineProperty({__proto__:null,ADMIN_URI,ALLOW_SESSION_IP_CHANGE,API_URI,CFG,DAY,EMBEDDED_LANGUAGE,FRONTEND_OPTIONS,FRONTEND_URI,HFS_REPO,HIDE_IN_TESTS,HOUR,HTTP_BAD_REQUEST,HTTP_CONFLICT,HTTP_FAILED_DEPENDENCY,HTTP_FOOL,HTTP_FORBIDDEN,HTTP_INSUFFICIENT_STORAGE,HTTP_MESSAGES,HTTP_METHOD_NOT_ALLOWED,HTTP_MOVED_PERMANENTLY,HTTP_NOT_ACCEPTABLE,HTTP_NOT_FOUND,HTTP_NOT_MODIFIED,HTTP_NO_CONTENT,HTTP_OK,HTTP_PARTIAL_CONTENT,HTTP_PAYLOAD_TOO_LARGE,HTTP_PRECONDITION_FAILED,HTTP_RANGE_NOT_SATISFIABLE,HTTP_SERVER_ERROR,HTTP_SERVICE_UNAVAILABLE,HTTP_TEMPORARY_REDIRECT,HTTP_TOO_MANY_REQUESTS,HTTP_UNAUTHORIZED,ICONS_URI,LIST,MAX_TILE_SIZE,MINUTE,MTIME_CHECK,NBSP,PERM_KEYS,PLUGINS_PUB_URI,PLUGIN_CUSTOM_REST_PREFIX,PORT_DISABLED,PREVIOUS_TAG,REPO_URL,SORT_BY_OPTIONS,SPECIAL_URI,THEME_OPTIONS,UPLOAD_TEMP_HASH,WEBSITE,WHO_ANYONE,WHO_ANY_ACCOUNT,WHO_NO_ONE,WIKI_URL,_dbg,_log,asyncGeneratorToArray,basename,callable,defaultPerms,dirname,enforceFinal,enforceStarting,escapeHTML,filterMapGenerator,findDefined,formatBytes,formatDate,formatPerc,formatSpeed,formatTime,formatTimestamp:formatTimestamp$2,getOrSet,hasProp,haveTimeout,inCommon,ipForUrl,isEqualLax,isIP,isIpLan,isIpLocalHost,isNumeric,isOrderedEqual,isPrimitive,isTimestampString,isWhoObject,isWindowsDrive,join,makeMatcher,mapFilter,matches,newObj,normalizeHost,objFromKeys,objRenameKey,objSameKeys,onlyTruthy,patchKey,pathEncode,pendingPromise,popKey,prefix,promiseBestEffort,randomId,removeFinal,removeStarting,repeat,replace,retry,runAt,safeDecodeURIComponent,setHidden,shortenAgent,splitAt,stringAfter,strinsert,swap,throw_,toMutable,truthy,tryJson,try_,typedEntries,typedKeys,wait,waitFor,wantArray,with_,xlate},Symbol.toStringTag,{value:"Module"})),useIsomorphicLayoutEffect=typeof window!="undefined"?reactExports.useLayoutEffect:reactExports.useEffect;function useEventListener(d,m,g,x){const b=reactExports.useRef(m);useIsomorphicLayoutEffect(()=>{b.current=m},[m]),reactExports.useEffect(()=>{var E;const v=(E=void 0)!==null&&E!==void 0?E:window;if(!(v&&v.addEventListener))return;const S=C=>b.current(C);return v.addEventListener(d,S,x),()=>{v.removeEventListener(d,S,x)}},[d,g,x])}function useInterval(d,m){const g=reactExports.useRef(d);useIsomorphicLayoutEffect(()=>{g.current=d},[d]),reactExports.useEffect(()=>{if(m===null)return;const x=setInterval(()=>g.current(),m);return()=>clearInterval(x)},[m])}const getMatches=d=>typeof window!="undefined"?window.matchMedia(d).matches:!1;function useMediaQuery(d){const[m,g]=reactExports.useState(getMatches(d));return reactExports.useEffect(()=>{function x(){g(getMatches(d))}const b=window.matchMedia(d);return x(),b.addListener?b.addListener(x):b.addEventListener("change",x),()=>{b.removeListener?b.removeListener(x):b.removeEventListener("change",x)}},[d]),m}function useDebounce(d,m){const[g,x]=reactExports.useState(d);return reactExports.useEffect(()=>{const b=setTimeout(()=>x(d),m||500);return()=>{clearTimeout(b)}},[d,m]),g}function useIsMounted(){const d=reactExports.useRef(!1);return reactExports.useEffect(()=>(d.current=!0,()=>{d.current=!1}),[]),reactExports.useCallback(()=>d.current,[])}function useWindowSize(){const[d,m]=reactExports.useState({width:0,height:0}),g=()=>{m({width:window.innerWidth,height:window.innerHeight})};return useEventListener("resize",g),useIsomorphicLayoutEffect(()=>{g()},[]),d}function useStateMounted(d){const m=useIsMounted(),[g,x]=reactExports.useState(d),b=reactExports.useRef(d);b.current=g;const E=reactExports.useCallback(v=>{m()&&x(v)},[m,x]);return[g,E,()=>b.current]}function reactFilter(d){return d.filter(m=>m===0||m&&(!Array.isArray(m)||m.length))}function reactJoin(d,m){const g=[];for(const x of reactFilter(m))g.push(x,d);return g.splice(-1,1),dontBotherWithKeys(g)}function dontBotherWithKeys(d){return d.map((m,g)=>!m||typeof m=="string"?m:Array.isArray(m)?dontBotherWithKeys(m):reactExports.createElement(reactExports.Fragment,{key:g,children:m}))}function useRequestRender(){const[d,m]=reactExports.useState(0);return Object.assign(reactExports.useCallback(()=>m(g=>g+1),[m]),{state:d})}function useBatch(d,m,{delay:g=0,expireAfter:x=0}={}){const b=useBatch.worker2env||(useBatch.worker2env=d&&new Map),E=b&&(b.get(d)||(()=>{const C={batch:new Set,cache:new Map};return b.set(d,C),C})()),v=useRequestRender();reactExports.useEffect(()=>{d&&(E.waiter||(E.waiter=new Promise(C=>{setTimeout(()=>yt(this,null,function*(){try{if(!E.batch.size)return;const T=[...E.batch.values()];E.batch.clear(),d(T).then(R=>{T.forEach((k,L)=>{var D;return E.cache.set(k,(D=R[L])!=null?D:null)})}).finally(C),x&&setTimeout(()=>{for(const R of T)E.cache.delete(R)},x)}finally{E.waiter=void 0}}),g)}))).then(v)},[d,v.state]);const S=E&&E.cache.get(m);return reactExports.useEffect(()=>{E&&S===void 0&&(v(),E.batch.add(m))},[m,S]),{data:S,refresh(){E&&(E.batch.add(m),v())}}}function KeepInScreen(g){var x=g,{margin:d}=x,m=Vt(x,["margin"]);const b=reactExports.useRef(),[E,v]=reactExports.useState(),S=useWindowSize();return reactExports.useEffect(()=>{const C=b.current;if(!C)return;const T=C.getBoundingClientRect(),R=document.documentElement,k=window.innerHeight||R.clientHeight;v(k-(T==null?void 0:T.top)-d)},[S]),reactExports.createElement("div",Fe({ref:b,style:{maxHeight:E,overflow:"auto"}},m))}function useIsMobile(){return useMediaQuery("(pointer:coarse)")}function useFixSticky(){return useOnResize(reactExports.useCallback((d,m,g,x)=>{Object.assign(document.documentElement.style,{scrollPaddingTop:`${m+(parseFloat(x.top)||0)}px`,scrollPaddingBottom:`${m+(parseFloat(x.bottom)||0)}px`})},[])).refToPass}function useOnResize(d){const m=reactExports.useRef(null),g=reactExports.useRef(_.noop);return reactExports.useMemo(()=>{let x=-1,b=-1;function E(v){const S=getComputedStyle(v),C=(v.clientWidth||v.getBoundingClientRect().width)+parseFloat(S.paddingLeft)+parseFloat(S.paddingRight)+parseFloat(S.borderRightWidth)-parseFloat(S.borderLeftWidth),T=(v.clientHeight||v.getBoundingClientRect().height)+parseFloat(S.paddingTop)+parseFloat(S.paddingBottom)+parseFloat(S.borderBottomWidth)-parseFloat(S.borderTopWidth);(C!==x||T!==b)&&d(x=C,b=T,v,S)}return{ref:m,refToPass(v){if(m.current=v,g.current(),g.current=_.noop,!v)return;if(!window.ResizeObserver)return g.current=repeat(500,()=>E(v));const S=new ResizeObserver(_.debounce(C=>E(C[0].target),10));S.observe(v),g.current=()=>S.disconnect()}}},[d])}function useGetSize(){const[d,m]=reactExports.useState(),{refToPass:g,ref:x}=useOnResize(reactExports.useCallback((b,E)=>m([b,E]),[]));return reactExports.useMemo(()=>({w:d==null?void 0:d[0],h:d==null?void 0:d[1],ref:x,refToPass:g}),[d,x])}function useEffectOnce(d,m){const g=reactExports.useRef();reactExports.useEffect(()=>{_.isEqual(m,g.current)||(g.current=m,d(...m))},m)}function AriaOnly({children:d}){return d?reactExports.createElement("div",{className:"ariaOnly"},d):null}function noAriaTitle(d){return{onMouseEnter(m){m.target.title=d}}}const isMac=navigator.platform.match("Mac");function isCtrlKey(d){return(d.ctrlKey||isMac&&d.metaKey)&&d.key}function useAutoScroll(d){const m=reactExports.useRef(),g=reactExports.useRef(),[x,b]=reactExports.useState(!0);return reactExports.useEffect(()=>{const{current:E}=m;x&&(E==null||E.scrollTo(0,E.scrollHeight))},[x,d]),reactExports.useCallback(E=>{var v;m.current=E,(v=g.current)==null||v.call(g),g.current=domOn("scroll",S=>{const C=S.target;C&&b(C.scrollTop+C.clientHeight>=C.scrollHeight-3)},{target:E})},[])}const e=Symbol(),t$e=Symbol(),r="a",n="w";let o=(d,m)=>new Proxy(d,m);const s=Object.getPrototypeOf,c=new WeakMap,l=d=>d&&(c.has(d)?c.get(d):s(d)===Object.prototype||s(d)===Array.prototype),f=d=>typeof d=="object"&&d!==null,i=d=>{if(Array.isArray(d))return Array.from(d);const m=Object.getOwnPropertyDescriptors(d);return Object.values(m).forEach(g=>{g.configurable=!0}),Object.create(s(d),m)},u=d=>d[t$e]||d,a=(d,m,g,x)=>{if(!l(d))return d;let b=x&&x.get(d);if(!b){const C=u(d);b=(T=>Object.values(Object.getOwnPropertyDescriptors(T)).some(R=>!R.configurable&&!R.writable))(C)?[C,i(C)]:[C],x==null||x.set(d,b)}const[E,v]=b;let S=g&&g.get(E);return S&&S[1].f===!!v||(S=((C,T)=>{const R={f:T};let k=!1;const L=(A,I)=>{if(!k){let N=R[r].get(C);if(N||(N={},R[r].set(C,N)),A===n)N[n]=!0;else{let z=N[A];z||(z=new Set,N[A]=z),z.add(I)}}},D={get:(A,I)=>I===t$e?C:(L("k",I),a(Reflect.get(A,I),R[r],R.c,R.t)),has:(A,I)=>I===e?(k=!0,R[r].delete(C),!0):(L("h",I),Reflect.has(A,I)),getOwnPropertyDescriptor:(A,I)=>(L("o",I),Reflect.getOwnPropertyDescriptor(A,I)),ownKeys:A=>(L(n),Reflect.ownKeys(A))};return T&&(D.set=D.deleteProperty=()=>!1),[D,R]})(E,!!v),S[1].p=o(v||E,S[0]),g&&g.set(E,S)),S[1][r]=m,S[1].c=g,S[1].t=x,S[1].p},p=(d,m,g,x,b=Object.is)=>{if(b(d,m))return!1;if(!f(d)||!f(m))return!0;const E=g.get(u(d));if(!E)return!0;if(x){const S=x.get(d);if(S&&S.n===m)return S.g;x.set(d,{n:m,g:!1})}let v=null;try{for(const S of E.h||[])if(v=Reflect.has(d,S)!==Reflect.has(m,S),v)return v;if(E[n]===!0){if(v=((S,C)=>{const T=Reflect.ownKeys(S),R=Reflect.ownKeys(C);return T.length!==R.length||T.some((k,L)=>k!==R[L])})(d,m),v)return v}else for(const S of E.o||[])if(v=!!Reflect.getOwnPropertyDescriptor(d,S)!=!!Reflect.getOwnPropertyDescriptor(m,S),v)return v;for(const S of E.k||[])if(v=p(d[S],m[S],g,x,b),v)return v;return v===null&&(v=!0),v}finally{x&&x.set(d,{n:m,g:v})}},y=d=>l(d)&&d[t$e]||null,h=(d,m=!0)=>{c.set(d,m)},w=(d,m,g)=>{const x=[],b=new WeakSet,E=(v,S)=>{if(b.has(v))return;f(v)&&b.add(v);const C=f(v)&&m.get(u(v));if(C){var T,R;if((T=C.h)==null||T.forEach(L=>{const D=`:has(${String(L)})`;x.push(S?[...S,D]:[D])}),C[n]===!0){const L=":ownKeys";x.push(S?[...S,L]:[L])}else{var k;(k=C.o)==null||k.forEach(L=>{const D=`:hasOwn(${String(L)})`;x.push(S?[...S,D]:[D])})}(R=C.k)==null||R.forEach(L=>{!("value"in(Object.getOwnPropertyDescriptor(v,L)||{}))||E(v[L],S?[...S,L]:[L])})}else S&&x.push(S)};return E(d),x},__vite_import_meta_env__$1={},isObject$1=d=>typeof d=="object"&&d!==null,proxyStateMap=new WeakMap,refSet=new WeakSet,buildProxyFunction=(d=Object.is,m=(T,R)=>new Proxy(T,R),g=T=>isObject$1(T)&&!refSet.has(T)&&(Array.isArray(T)||!(Symbol.iterator in T))&&!(T instanceof WeakMap)&&!(T instanceof WeakSet)&&!(T instanceof Error)&&!(T instanceof Number)&&!(T instanceof Date)&&!(T instanceof String)&&!(T instanceof RegExp)&&!(T instanceof ArrayBuffer),x=T=>{switch(T.status){case"fulfilled":return T.value;case"rejected":throw T.reason;default:throw T}},b=new WeakMap,E=(T,R,k=x)=>{const L=b.get(T);if((L==null?void 0:L[0])===R)return L[1];const D=Array.isArray(T)?[]:Object.create(Object.getPrototypeOf(T));return h(D,!0),b.set(T,[R,D]),Reflect.ownKeys(T).forEach(A=>{if(Object.getOwnPropertyDescriptor(D,A))return;const I=Reflect.get(T,A),{enumerable:N}=Reflect.getOwnPropertyDescriptor(T,A),z={value:I,enumerable:N,configurable:!0};if(refSet.has(I))h(I,!1);else if(I instanceof Promise)delete z.value,z.get=()=>k(I);else if(proxyStateMap.has(I)){const[j,Y]=proxyStateMap.get(I);z.value=E(j,Y(),k)}Object.defineProperty(D,A,z)}),Object.preventExtensions(D)},v=new WeakMap,S=[1,1],C=T=>{if(!isObject$1(T))throw new Error("object required");const R=v.get(T);if(R)return R;let k=S[0];const L=new Set,D=(Q,X=++S[0])=>{k!==X&&(k=X,L.forEach(re=>re(Q,X)))};let A=S[1];const I=(Q=++S[1])=>(A!==Q&&!L.size&&(A=Q,z.forEach(([X])=>{const re=X[1](Q);re>k&&(k=re)})),k),N=Q=>(X,re)=>{const ie=[...X];ie[1]=[Q,...ie[1]],D(ie,re)},z=new Map,j=(Q,X)=>{if((__vite_import_meta_env__$1?"production":void 0)!=="production"&&z.has(Q))throw new Error("prop listener already exists");if(L.size){const re=X[3](N(Q));z.set(Q,[X,re])}else z.set(Q,[X])},Y=Q=>{var X;const re=z.get(Q);re&&(z.delete(Q),(X=re[1])==null||X.call(re))},B=Q=>(L.add(Q),L.size===1&&z.forEach(([re,ie],oe)=>{if((__vite_import_meta_env__$1?"production":void 0)!=="production"&&ie)throw new Error("remove already exists");const Z=re[3](N(oe));z.set(oe,[re,Z])}),()=>{L.delete(Q),L.size===0&&z.forEach(([re,ie],oe)=>{ie&&(ie(),z.set(oe,[re]))})}),U=Array.isArray(T)?[]:Object.create(Object.getPrototypeOf(T)),V=m(U,{deleteProperty(Q,X){const re=Reflect.get(Q,X);Y(X);const ie=Reflect.deleteProperty(Q,X);return ie&&D(["delete",[X],re]),ie},set(Q,X,re,ie){const oe=Reflect.has(Q,X),Z=Reflect.get(Q,X,ie);if(oe&&(d(Z,re)||v.has(re)&&d(Z,v.get(re))))return!0;Y(X),isObject$1(re)&&(re=y(re)||re);let ee=re;if(re instanceof Promise)re.then(ce=>{re.status="fulfilled",re.value=ce,D(["resolve",[X],ce])}).catch(ce=>{re.status="rejected",re.reason=ce,D(["reject",[X],ce])});else{!proxyStateMap.has(re)&&g(re)&&(ee=C(re));const ce=!refSet.has(ee)&&proxyStateMap.get(ee);ce&&j(X,ce)}return Reflect.set(Q,X,ee,ie),D(["set",[X],re,Z]),!0}});v.set(T,V);const J=[U,I,E,B];return proxyStateMap.set(V,J),Reflect.ownKeys(T).forEach(Q=>{const X=Object.getOwnPropertyDescriptor(T,Q);"value"in X&&(V[Q]=T[Q],delete X.value,delete X.writable),Object.defineProperty(U,Q,X)}),V})=>[C,proxyStateMap,refSet,d,m,g,x,b,E,v,S],[defaultProxyFunction]=buildProxyFunction();function proxy(d={}){return defaultProxyFunction(d)}function subscribe(d,m,g){const x=proxyStateMap.get(d);(__vite_import_meta_env__$1?"production":void 0)!=="production"&&!x&&console.warn("Please use proxy object");let b;const E=[],v=x[3];let S=!1;const T=v(R=>{if(E.push(R),g){m(E.splice(0));return}b||(b=Promise.resolve().then(()=>{b=void 0,S&&m(E.splice(0))}))});return S=!0,()=>{S=!1,T()}}function snapshot(d,m){const g=proxyStateMap.get(d);(__vite_import_meta_env__$1?"production":void 0)!=="production"&&!g&&console.warn("Please use proxy object");const[x,b,E]=g;return E(x,b(),m)}function ref(d){return refSet.add(d),d}var shim={exports:{}},useSyncExternalStoreShim_production_min={};/**
314
314
  * @license React
315
315
  * use-sync-external-store-shim.production.min.js
316
316
  *
@@ -318,9 +318,9 @@ function print() { __p += __j.call(arguments, '') }
318
318
  *
319
319
  * This source code is licensed under the MIT license found in the
320
320
  * LICENSE file in the root directory of this source tree.
321
- */var hasRequiredUseSyncExternalStoreShim_production_min;function requireUseSyncExternalStoreShim_production_min(){if(hasRequiredUseSyncExternalStoreShim_production_min)return useSyncExternalStoreShim_production_min;hasRequiredUseSyncExternalStoreShim_production_min=1;var d=requireReact();function m(k,L){return k===L&&(k!==0||1/k===1/L)||k!==k&&L!==L}var g=typeof Object.is=="function"?Object.is:m,x=d.useState,b=d.useEffect,E=d.useLayoutEffect,v=d.useDebugValue;function S(k,L){var D=L(),A=x({inst:{value:D,getSnapshot:L}}),I=A[0].inst,N=A[1];return E(function(){I.value=D,I.getSnapshot=L,C(I)&&N({inst:I})},[k,D,L]),b(function(){return C(I)&&N({inst:I}),k(function(){C(I)&&N({inst:I})})},[k]),v(D),D}function C(k){var L=k.getSnapshot;k=k.value;try{var D=L();return!g(k,D)}catch(A){return!0}}function T(k,L){return L()}var R=typeof window=="undefined"||typeof window.document=="undefined"||typeof window.document.createElement=="undefined"?T:S;return useSyncExternalStoreShim_production_min.useSyncExternalStore=d.useSyncExternalStore!==void 0?d.useSyncExternalStore:R,useSyncExternalStoreShim_production_min}var hasRequiredShim;function requireShim(){return hasRequiredShim||(hasRequiredShim=1,shim.exports=requireUseSyncExternalStoreShim_production_min()),shim.exports}var shimExports=requireShim();const useSyncExternalStoreExports=getDefaultExportFromCjs(shimExports),__vite_import_meta_env__={},{use}=React,{useSyncExternalStore}=useSyncExternalStoreExports,useAffectedDebugValue=(d,m)=>{const g=reactExports.useRef();reactExports.useEffect(()=>{g.current=w(d,m)}),reactExports.useDebugValue(g.current)},targetCache=new WeakMap;function useSnapshot(d,m){const x=reactExports.useRef(),b=reactExports.useRef();let E=!0;const v=useSyncExternalStore(reactExports.useCallback(T=>{const R=subscribe(d,T,void 0);return T(),R},[d,void 0]),()=>{const T=snapshot(d,use);try{if(!E&&x.current&&b.current&&!p(x.current,T,b.current,new WeakMap))return x.current}catch(R){}return T},()=>snapshot(d,use));E=!1;const S=new WeakMap;reactExports.useEffect(()=>{x.current=v,b.current=S}),(__vite_import_meta_env__?"production":void 0)!=="production"&&useAffectedDebugValue(v,S);const C=reactExports.useMemo(()=>new WeakMap,[]);return a(v,S,C,targetCache)}const dialogs=proxy([]),{history}=window,dialogsDefaults={closableProps:{children:"x","aria-label":"Close"},padding:!0},focusableSelector=['input:not([type="hidden"])',"button","select","textarea","a[href]","[tabindex]"].map(d=>d+':not([disabled]):not([tabindex="-1"])').join(",");window.addEventListener("keydown",d=>{d.key==="Tab"&&tabCycle(d.target,d.shiftKey)&&d.preventDefault()});function tabCycle(d,m=!1){const g=document.querySelectorAll("[role$=dialog]"),x=g[g.length-1];if(!x)return;const b=x.querySelectorAll(focusableSelector),E=b.length;if(!E)return;const[v,S]=m?[E-1,0]:[0,E-1];if(!(d!==b[S]&&isDescendant(document.activeElement,x)))return b[v].focus(),!0}function isDescendant(d,m){if(!m)return!1;const g=typeof m=="function";for(;d;){if(g?m(d):d===m)return!0;d=d.parentNode}return!1}let waitClosing=Promise.resolve(),ignorePopState=!1;function back(){return vt(this,null,function*(){ignorePopState=!0;let d=history.state;return history.back(),waitClosing=waitClosing.then(()=>new Promise(m=>{const g=setInterval(()=>d!==history.state&&m(),10);setTimeout(()=>clearTimeout(g),500)}))})}vt(void 0,null,function*(){var d;for(;(d=history.state)!=null&&d.$dialog;)history.back(),yield wait(1)});function Dialogs(d){reactExports.useEffect(()=>domOn("popstate",()=>{if(ignorePopState)return ignorePopState=!1;if(!history.state)return;const{$dialog:g}=history.state;if(g&&!dialogs.find(x=>x.$id===g))return back();closeDialog(void 0,!0)}),[]);const m=useSnapshot(dialogs);return reactExports.useEffect(()=>{document.body.style.overflow=m.length?"hidden":""},[m.length]),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement("div",Fe({"aria-hidden":m.length>0},d)),m.map(g=>reactExports.createElement(Dialog,Fe({key:g.$id},g))))}function Dialog(d){var E;const m=reactExports.useRef(null),[g,x]=reactExports.useState(0);if(reactExports.useEffect(()=>{var T;const v=(T=m.current)==null?void 0:T.querySelector(".dialog");if(!v||(tabCycle(v),!d.position))return;let S=0;const C=setInterval(()=>{const R=v.getBoundingClientRect();x(S=Math.min(S,R.top,window.innerHeight-R.bottom+S))},100);return()=>clearInterval(C)},[]),d=Fe(Fe({closable:!0},dialogsDefaults),d),d.Container)return reactExports.createElement(d.Container,d);return reactExports.createElement("div",{ref:m,className:"dialog-backdrop "+(d.className||""),onKeyDown(v){v.key==="Escape"&&closeDialog(),v.stopPropagation()},onClick:v=>d.closable&&v.target===v.currentTarget&&closeDialog()},d.noFrame?reactExports.createElement(d.Content||"div"):reactExports.createElement("div",Fe({role:"dialog","aria-modal":!0,className:"dialog",style:Fe(Fe({},b()),(E=d.dialogProps)==null?void 0:E.style),onClick(v){v.stopPropagation()}},d.dialogProps),d.closable&&reactExports.createElement("button",Fe({className:"dialog-icon dialog-closer",onClick(){closeDialog()}},d.closableProps)),d.icon&&reactExports.createElement("div",{className:"dialog-icon dialog-type"+(typeof d.icon=="string"?" dialog-icon-text":""),"aria-hidden":!0},componentOrNode(d.icon)),reactExports.createElement("h1",{className:"dialog-title"},componentOrNode(d.title)),reactExports.createElement("div",{className:"dialog-content"},reactExports.createElement(d.Content||"div"))));function b(){const{innerWidth:v,innerHeight:S}=window,C=d.position;return C&&Fe(Fe({margin:"1em",position:"absolute"},C[0]<v/2?{left:C[0]}:{right:v-C[0]}),C[1]<S/2?{top:g+C[1]}:{bottom:g+S-C[1]})}}function componentOrNode(d){return isPrimitive(d)||reactExports.isValidElement(d)?d:reactExports.createElement(d)}function newDialog(d){var v;const m=Math.random(),g=performance.now(),x=Object.assign(objSameKeys(d,S=>reactExports.isValidElement(S)?ref(S):S),{close:E,ts:g,$id:m,restoreFocus:(v=d.restoreFocus)!=null?v:ref(document.activeElement||{})});let b=!1;return waitClosing.then(()=>{var S;b||(dialogs.push(x),dialogs.at(-1).closable!==!1&&history.pushState({$dialog:m,ts:g,idx:1+(((S=history.state)==null?void 0:S.idx)||0)},""))}),x;function E(S){var T;b=!0;const C=dialogs.findIndex(R=>R.$id===m);if(!(C<0))return x.closed=((T=history.state)==null?void 0:T.$dialog)===m?back():Promise.resolve(),closeDialogAt(C,S),d.closed}}function closeDialog(d,m=!1){var x;let g=dialogs.length;if(((x=dialogs[g-1])==null?void 0:x.closable)!==!1)for(;g--;){const b=dialogs[g];if(!b.reserveClosing){if(!m){if(history.state.$dialog!==b.$id)return;b.closed=back()}return closeDialogAt(g,d),b}}}function closeDialogAt(d,m){var x,b,E;const[g]=dialogs.splice(d,1);return(b=(x=g.restoreFocus)==null?void 0:x.focus)==null||b.call(x),g.closingValue=m&&typeof m=="object"?ref(m):m,(E=g.closed)!=null||(g.closed=Promise.resolve()),g.closed.then(()=>{var v;return(v=g==null?void 0:g.onClose)==null?void 0:v.call(g,m)}),g}function anyDialogOpen(){return dialogs.length>0}const MD_TAGS={a:"a","`":"code","*":"i","**":"b"};function md(d,{html:m=!0,linkTarget:g="_blank",onText:x=b=>b}={}){return typeof d!="string"&&(d=d[0]),replaceStringToReact(d,/(`|_|\*\*?)(.+?)\1|(\n)|\[(.+?)\]\((.+?)\)|(<(\w+?)(?:\s+[^>]*?)?>(?:.*?<\/\7>)?)/g,b=>b[4]?reactExports.createElement(MD_TAGS.a,{href:b[5],target:g},x(b[4])):b[3]?reactExports.createElement("br"):b[1]?reactExports.createElement(MD_TAGS[b[1]]||reactExports.Fragment,{},x(b[2])):m?reactExports.createElement(Html,{},b[6]):b[6],x)}function replaceStringToReact(d,m,g,x=b=>b){const b=[];let E=0,v;for(;(v=m.exec(d))&&(b.push(x(d.slice(E,v.index))),b.push(g(v)),E=v.index+v[0].length,!!m.global););return reactExports.createElement(reactExports.Fragment,{},...b,x(d.slice(E,1/0)))}function Html(g){var x=g,{children:d}=x,m=Vt(x,["children"]);return reactExports.useMemo(()=>d?reactExports.createElement("span",$t(Fe({},m),{ref:b=>b&&b.replaceChildren(document.createRange().createContextualFragment(d))})):null,[d])}var dist={},parameters={},crossEnvCrypto={};const __viteBrowserExternal={},__viteBrowserExternal$1=Object.freeze(Object.defineProperty({__proto__:null,default:__viteBrowserExternal},Symbol.toStringTag,{value:"Module"})),require$$0=getAugmentedNamespace(__viteBrowserExternal$1);var hasRequiredCrossEnvCrypto;function requireCrossEnvCrypto(){if(hasRequiredCrossEnvCrypto)return crossEnvCrypto;hasRequiredCrossEnvCrypto=1,Object.defineProperty(crossEnvCrypto,"__esModule",{value:!0}),crossEnvCrypto.crossEnvCrypto=void 0;try{const d=typeof window!="undefined"&&window.crypto||require$$0.webcrypto;if(d){if(!d.subtle)throw new Error("Crypto.Subtle is undefined. Make sure you are using HTTPS in a compatible browser.");const m=g=>x=>d.subtle.digest(g,x);crossEnvCrypto.crossEnvCrypto={randomBytes:d.getRandomValues.bind(d),hashFunctions:{SHA1:m("SHA-1"),SHA256:m("SHA-256"),SHA384:m("SHA-384"),SHA512:m("SHA-512")}}}else{const m=require$$0,g=x=>b=>m.createHash(x).update(b).digest().buffer;crossEnvCrypto.crossEnvCrypto={randomBytes:m.randomFillSync,hashFunctions:{SHA1:g("sha1"),SHA256:g("sha256"),SHA384:g("sha384"),SHA512:g("sha512")}}}}catch(d){throw console.error(d),new Error("No suitable crypto library was found. You may need a polyfill.")}return crossEnvCrypto}var hasRequiredParameters;function requireParameters(){if(hasRequiredParameters)return parameters;hasRequiredParameters=1,Object.defineProperty(parameters,"__esModule",{value:!0}),parameters.SRPParameters=void 0;const d=requireCrossEnvCrypto();class m{constructor(x=m.PrimeGroup[2048],b=m.H.SHA512){if(this.primeGroup=x,this.H=b,this.NBits=this.primeGroup.N.toString(2).length,!b)throw new Error("Hash function required")}}return parameters.SRPParameters=m,m.PrimeGroup={256:{N:BigInt("125617018995153554710546479714086468244499594888726646874671447258204721048803"),g:BigInt(2)},512:{N:BigInt("11144252439149533417835749556168991736939157778924947037200268358613863350040339017097790259154750906072491181606044774215413467851989724116331597513345603"),g:BigInt(2)},768:{N:BigInt("1087179135105457859072065649059069760280540086975817629066444682366896187793570736574549981488868217843627094867924800342887096064844227836735667168319981288765377499806385489913341488724152562880918438701129530606139552645689583147"),g:BigInt(2)},1024:{N:BigInt("167609434410335061345139523764350090260135525329813904557420930309800865859473551531551523800013916573891864789934747039010546328480848979516637673776605610374669426214776197828492691384519453218253702788022233205683635831626913357154941914129985489522629902540768368409482248290641036967659389658897350067939"),g:BigInt(2)},1536:{N:BigInt("1486998185923128292816507353619409521152457662596380074614818966810244974827752411420380336514078832314731499938313197533147998565301020797040787428051479639316928015998415709101293902971072960487527411068082311763171549170528008620813391411445907584912865222076100726050255271567749213905330659264908657221124284665444825474741087704974475795505492821585749417639344967192301749033325359286273431675492866492416941152646940908101472416714421046022696100064262587"),g:BigInt(2)},2048:{N:BigInt("21766174458617435773191008891802753781907668374255538511144643224689886235383840957210909013086056401571399717235807266581649606472148410291413364152197364477180887395655483738115072677402235101762521901569820740293149529620419333266262073471054548368736039519702486226506248861060256971802984953561121442680157668000761429988222457090413873973970171927093992114751765168063614761119615476233422096442783117971236371647333871414335895773474667308967050807005509320424799678417036867928316761272274230314067548291133582479583061439577559347101961771406173684378522703483495337037655006751328447510550299250924469288819"),g:BigInt(2)}},m.H={SHA1:d.crossEnvCrypto.hashFunctions.SHA1,SHA256:d.crossEnvCrypto.hashFunctions.SHA256,SHA384:d.crossEnvCrypto.hashFunctions.SHA384,SHA512:d.crossEnvCrypto.hashFunctions.SHA512},parameters}var routines={},utils={},hasRequiredUtils;function requireUtils(){return hasRequiredUtils||(hasRequiredUtils=1,function(d){var m=utils&&utils.__awaiter||function(Y,B,U,W){function V(J){return J instanceof U?J:new U(function(Q){Q(J)})}return new(U||(U=Promise))(function(J,Q){function X(oe){try{ie(W.next(oe))}catch(Z){Q(Z)}}function re(oe){try{ie(W.throw(oe))}catch(Z){Q(Z)}}function ie(oe){oe.done?J(oe.value):V(oe.value).then(X,re)}ie((W=W.apply(Y,B||[])).next())})};Object.defineProperty(d,"__esModule",{value:!0}),d.modPow=d.hashBitCount=d.createVerifierAndSalt=d.createVerifier=d.generateRandomBigInt=d.generateRandomString=d.hashPadded=d.hash=d.padStartArrayBuffer=d.stringToArrayBuffer=d.arrayBufferToBigInt=d.bigIntToArrayBuffer=void 0;const g=requireCrossEnvCrypto(),x=BigInt(0),b=BigInt(1),E=BigInt(2),v=Y=>{const B=Y.toString(16),U=new ArrayBuffer(Math.ceil(B.length/2)),W=new Uint8Array(U);let V=0;B.length%2!==0&&(W[0]=parseInt(B[0],16),V=1);for(let J=0;J<U.byteLength;J++)W[J+V]=parseInt(B.slice(2*J+V,2*J+2+V),16);return U};d.bigIntToArrayBuffer=v;const S=Y=>{const B=[];return new Uint8Array(Y).forEach(U=>{B.push(("0"+U.toString(16)).slice(-2))}),BigInt(`0x${B.join("")}`)};d.arrayBufferToBigInt=S;function C(Y){return new TextEncoder().encode(Y).buffer}d.stringToArrayBuffer=C;const T=(Y,B)=>{const U=new Uint8Array(Y);if(U.length<B){const W=new Uint8Array(B);return W.fill(0,0,B-U.length),W.set(U,B-U.length),W}return U};d.padStartArrayBuffer=T;function R(Y,...B){const U=B.reduce((V,J)=>V+J.byteLength,0),W=new Uint8Array(U);for(let V=0,J=0;J<B.length;J++)W.set(new Uint8Array(B[J]),V),V+=B[J].byteLength;return Y.H(W)}d.hash=R;function k(Y,B,...U){const W=U.map(V=>d.padStartArrayBuffer(V,B));return R(Y,...W)}d.hashPadded=k;function L(Y=10){const B=new Uint8Array(Math.ceil(Math.ceil(Y/2)));return g.crossEnvCrypto.randomBytes(B),B.reduce((U,W)=>{const V=W.toString(16).toString();return V.length===1?U+"0"+V:U+V},"").slice(0,Y)}d.generateRandomString=L;function D(Y=16){return d.arrayBufferToBigInt(j(Y))}d.generateRandomBigInt=D;function A(Y,B,U,W){return m(this,void 0,void 0,function*(){if(!B||!B.trim())throw new Error("Identity (I) must not be null or empty.");if(!U)throw new Error("Salt (s) must not be null.");if(!W)throw new Error("Password (P) must not be null");const V=yield Y.computeX(B,U,W);return Y.computeVerifier(V)})}d.createVerifier=A;function I(Y,B,U,W){return m(this,void 0,void 0,function*(){const V=yield Y.generateRandomSalt(W);return{s:V,v:yield A(Y,B,V,U)}})}d.createVerifierAndSalt=I;const N=Y=>m(void 0,void 0,void 0,function*(){return(yield R(Y,d.bigIntToArrayBuffer(BigInt(1)))).byteLength*8});d.hashBitCount=N;function z(Y,B,U){let W=b;for(;B>x;)B%E==b?(W=Y*W%U,B-=b):(Y=Y*Y%U,B/=E);return W}d.modPow=z;const j=Y=>{const B=new Uint8Array(Y);return g.crossEnvCrypto.randomBytes(B),B.buffer}}(utils)),utils}var hasRequiredRoutines;function requireRoutines(){if(hasRequiredRoutines)return routines;hasRequiredRoutines=1;var d=routines&&routines.__awaiter||function(x,b,E,v){function S(C){return C instanceof E?C:new E(function(T){T(C)})}return new(E||(E=Promise))(function(C,T){function R(D){try{L(v.next(D))}catch(A){T(A)}}function k(D){try{L(v.throw(D))}catch(A){T(A)}}function L(D){D.done?C(D.value):S(D.value).then(R,k)}L((v=v.apply(x,b||[])).next())})};Object.defineProperty(routines,"__esModule",{value:!0}),routines.SRPRoutines=void 0;const m=requireUtils();class g{constructor(b){this.parameters=b}hash(...b){return m.hash(this.parameters,...b)}hashPadded(...b){const E=Math.trunc((this.parameters.NBits+7)/8);return m.hashPadded(this.parameters,E,...b)}computeK(){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hashPadded(m.bigIntToArrayBuffer(this.parameters.primeGroup.N),m.bigIntToArrayBuffer(this.parameters.primeGroup.g)))})}generateRandomSalt(b){return d(this,void 0,void 0,function*(){const E=yield m.hashBitCount(this.parameters),v=b||2*E/8;return m.generateRandomBigInt(v)})}computeX(b,E,v){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(E),yield this.computeIdentityHash(b,v)))})}computeXStep2(b,E){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(b),E))})}computeIdentityHash(b,E){return d(this,void 0,void 0,function*(){return yield this.hash(m.stringToArrayBuffer(E))})}computeVerifier(b){return m.modPow(this.parameters.primeGroup.g,b,this.parameters.primeGroup.N)}generatePrivateValue(){const b=Math.max(256,this.parameters.NBits);let E;do E=m.generateRandomBigInt(b/8)%this.parameters.primeGroup.N;while(E===BigInt(0));return E}computeClientPublicValue(b){return m.modPow(this.parameters.primeGroup.g,b,this.parameters.primeGroup.N)}isValidPublicValue(b){return b%this.parameters.primeGroup.N!==BigInt(0)}computeU(b,E){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hashPadded(m.bigIntToArrayBuffer(b),m.bigIntToArrayBuffer(E)))})}computeClientEvidence(b,E,v,S,C){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(v),m.bigIntToArrayBuffer(S),m.bigIntToArrayBuffer(C)))})}computeServerEvidence(b,E,v){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(b),m.bigIntToArrayBuffer(E),m.bigIntToArrayBuffer(v)))})}computeClientSessionKey(b,E,v,S,C){const T=this.parameters.primeGroup.N,R=v*E+S,k=m.modPow(this.parameters.primeGroup.g,E,T)*b%T;return m.modPow(C+T-k,R,T)}}return routines.SRPRoutines=g,routines}var sessionClient={},hasRequiredSessionClient;function requireSessionClient(){if(hasRequiredSessionClient)return sessionClient;hasRequiredSessionClient=1;var d=sessionClient&&sessionClient.__awaiter||function(b,E,v,S){function C(T){return T instanceof v?T:new v(function(R){R(T)})}return new(v||(v=Promise))(function(T,R){function k(A){try{D(S.next(A))}catch(I){R(I)}}function L(A){try{D(S.throw(A))}catch(I){R(I)}}function D(A){A.done?T(A.value):C(A.value).then(k,L)}D((S=S.apply(b,E||[])).next())})};Object.defineProperty(sessionClient,"__esModule",{value:!0}),sessionClient.SRPClientSessionStep2=sessionClient.SRPClientSessionStep1=sessionClient.SRPClientSession=void 0;class m{constructor(E){this.routines=E}step1(E,v){return d(this,void 0,void 0,function*(){if(!E||!E.trim())throw new Error("User identity must not be null nor empty");if(!v)throw new Error("User password must not be null");const S=yield this.routines.computeIdentityHash(E,v);return new g(this.routines,E,S)})}}sessionClient.SRPClientSession=m;class g{constructor(E,v,S){this.routines=E,this.I=v,this.IH=S}step2(E,v){return d(this,void 0,void 0,function*(){if(!E)throw new Error("Salt (s) must not be null");if(!v)throw new Error("Public server value (B) must not be null");const S=yield this.routines.computeXStep2(E,this.IH),C=this.routines.generatePrivateValue(),T=this.routines.computeClientPublicValue(C),R=yield this.routines.computeK(),k=yield this.routines.computeU(T,v),L=this.routines.computeClientSessionKey(R,S,k,C,v),D=yield this.routines.computeClientEvidence(this.I,E,T,v,L);return new x(this.routines,T,D,L)})}toJSON(){return{I:this.I,IH:Array.from(new Uint8Array(this.IH))}}static fromState(E,v){return new g(E,v.I,new Uint8Array(v.IH).buffer)}}sessionClient.SRPClientSessionStep1=g;class x{constructor(E,v,S,C){this.routines=E,this.A=v,this.M1=S,this.S=C}step3(E){return d(this,void 0,void 0,function*(){if(!E)throw new Error("Server evidence (M2) must not be null");if((yield this.routines.computeServerEvidence(this.A,this.M1,this.S))!==E)throw new Error("Bad server credentials")})}toJSON(){return{A:this.A.toString(16),M1:this.M1.toString(16),S:this.S.toString(16)}}static fromState(E,v){return new x(E,BigInt("0x"+v.A),BigInt("0x"+v.M1),BigInt("0x"+v.S))}}return sessionClient.SRPClientSessionStep2=x,sessionClient}var sessionServer={},hasRequiredSessionServer;function requireSessionServer(){if(hasRequiredSessionServer)return sessionServer;hasRequiredSessionServer=1;var d=sessionServer&&sessionServer.__awaiter||function(v,S,C,T){function R(k){return k instanceof C?k:new C(function(L){L(k)})}return new(C||(C=Promise))(function(k,L){function D(N){try{I(T.next(N))}catch(z){L(z)}}function A(N){try{I(T.throw(N))}catch(z){L(z)}}function I(N){N.done?k(N.value):R(N.value).then(D,A)}I((T=T.apply(v,S||[])).next())})};Object.defineProperty(sessionServer,"__esModule",{value:!0}),sessionServer.SRPServerSessionStep1=sessionServer.SRPServerSession=void 0;const m=requireUtils();class g{constructor(S){this.routines=S}step1(S,C,T){return d(this,void 0,void 0,function*(){const R=this.routines.generatePrivateValue(),k=yield this.routines.computeK(),L=b(this.routines.parameters,k,T,R);return new x(this.routines,S,C,T,R,L)})}}sessionServer.SRPServerSession=g;class x{constructor(S,C,T,R,k,L){this.routines=S,this.identifier=C,this.salt=T,this.verifier=R,this.b=k,this.B=L}sessionKey(S){return d(this,void 0,void 0,function*(){if(S===null)throw new Error("Client public value (A) must not be null");if(!this.routines.isValidPublicValue(S))throw new Error(`Invalid Client public value (A): ${S.toString(16)}`);const C=yield this.routines.computeU(S,this.B);return E(this.routines.parameters.primeGroup.N,this.verifier,C,S,this.b)})}step2(S,C){return d(this,void 0,void 0,function*(){if(!C)throw new Error("Client evidence (M1) must not be null");const T=yield this.sessionKey(S);if((yield this.routines.computeClientEvidence(this.identifier,this.salt,S,this.B,T))!==C)throw new Error("Bad client credentials");return this.routines.computeServerEvidence(S,C,T)})}toJSON(){return{identifier:this.identifier,salt:this.salt.toString(16),verifier:this.verifier.toString(16),b:this.b.toString(16),B:this.B.toString(16)}}static fromState(S,C){return new x(S,C.identifier,BigInt("0x"+C.salt),BigInt("0x"+C.verifier),BigInt("0x"+C.b),BigInt("0x"+C.B))}}sessionServer.SRPServerSessionStep1=x;const b=(v,S,C,T)=>(m.modPow(v.primeGroup.g,T,v.primeGroup.N)+C*S)%v.primeGroup.N,E=(v,S,C,T,R)=>m.modPow(m.modPow(S,C,v)*T,R,v);return sessionServer}var hasRequiredDist;function requireDist(){return hasRequiredDist||(hasRequiredDist=1,function(d){Object.defineProperty(d,"__esModule",{value:!0}),d.generateRandomBigInt=d.arrayBufferToBigInt=d.bigIntToArrayBuffer=d.createVerifierAndSalt=d.SRPServerSessionStep1=d.SRPServerSession=d.SRPClientSessionStep2=d.SRPClientSessionStep1=d.SRPClientSession=d.SRPRoutines=d.SRPParameters=void 0;var m=requireParameters();Object.defineProperty(d,"SRPParameters",{enumerable:!0,get:function(){return m.SRPParameters}});var g=requireRoutines();Object.defineProperty(d,"SRPRoutines",{enumerable:!0,get:function(){return g.SRPRoutines}});var x=requireSessionClient();Object.defineProperty(d,"SRPClientSession",{enumerable:!0,get:function(){return x.SRPClientSession}}),Object.defineProperty(d,"SRPClientSessionStep1",{enumerable:!0,get:function(){return x.SRPClientSessionStep1}}),Object.defineProperty(d,"SRPClientSessionStep2",{enumerable:!0,get:function(){return x.SRPClientSessionStep2}});var b=requireSessionServer();Object.defineProperty(d,"SRPServerSession",{enumerable:!0,get:function(){return b.SRPServerSession}}),Object.defineProperty(d,"SRPServerSessionStep1",{enumerable:!0,get:function(){return b.SRPServerSessionStep1}});var E=requireUtils();Object.defineProperty(d,"createVerifierAndSalt",{enumerable:!0,get:function(){return E.createVerifierAndSalt}}),Object.defineProperty(d,"bigIntToArrayBuffer",{enumerable:!0,get:function(){return E.bigIntToArrayBuffer}}),Object.defineProperty(d,"arrayBufferToBigInt",{enumerable:!0,get:function(){return E.arrayBufferToBigInt}}),Object.defineProperty(d,"generateRandomBigInt",{enumerable:!0,get:function(){return E.generateRandomBigInt}})}(dist)),dist}var distExports=requireDist();function srpClientSequence(d,m,g,x){return vt(this,null,function*(){const{pubKey:b,salt:E}=yield g("loginSrp1",{username:d});if(!E)throw Error("salt");const v=yield srpClientPart(d,m,E,b),S=yield g("loginSrp2",Fe({pubKey:String(v.A),proof:String(v.M1)},x));return yield v.step3(BigInt(S.proof)).catch(()=>Promise.reject("trust")),S})}function srpClientPart(d,m,g,x){return vt(this,null,function*(){const b=new distExports.SRPRoutines(new distExports.SRPParameters);return yield(yield new distExports.SRPClientSession(b).step1(d,m)).step2(BigInt(g),BigInt(x))})}window._=_;setTimeout(()=>{document.querySelectorAll(".removeAtBoot").forEach(d=>d.remove())},500);const cpuSpeedIndex=(()=>{let d=performance.now();return _.range(1e5).map(m=>++m),d=performance.now()-d,1/d})(),urlParams=Object.fromEntries(new URLSearchParams(window.location.search).entries()),HFS=getHFS();Object.assign(HFS,{getPluginKey:()=>getScriptAttr("plugin"),getPluginPublic:()=>{var d,m;return(m=(d=getScriptAttr("src"))==null?void 0:d.match(/^.*\//))==null?void 0:m[0]},getPluginConfig:()=>HFS.plugins[HFS.getPluginKey()]||{},loadScript:d=>loadScript(d.includes("//")||d.startsWith("/")?d:HFS.getPluginPublic()+d),userBelongsTo:d=>wantArray(d).some(m=>HFS.state.expandedUsername.includes(m)),cpuSpeedIndex,copyTextToClipboard,urlParams});formatBytes.k=HFS.kb;const IMAGE_FILEMASK="*.jpg|*.jpeg|*.png|*.gif|*.svg";{const d=console.debug;console.debug=(...m)=>window.DEV&&d(...m)}function getScriptAttr(d){var m;return((m=document.currentScript)==null?void 0:m.getAttribute(d))||console.error("this function must be called at the very top of your file")}function buildUrlQueryString(d){return"?"+Object.entries(d).filter(m=>m[1]!==void 0).map(m=>m.map(g=>encodeURIComponent(g).replaceAll("%2F","/")).join("=")).join("&")}function domOn(d,m,{target:g=window}={}){if(g)return g.addEventListener(d,m),()=>g.removeEventListener(d,m)}function restartAnimation(d,m){d&&(d.style.animation="",d.offsetWidth,d.style.animation=m)}function selectFiles(d,{accept:m="",multiple:g=!0,folder:x=!1}={}){const b=Object.assign(document.createElement("input"),{type:"file",name:"file",accept:m,multiple:g,webkitdirectory:x});b.addEventListener("change",()=>d(b.files)),b.click()}function readFile(d){return new Promise((m,g)=>{const x=new FileReader;x.addEventListener("load",b=>{if(!b.target||d.size&&!b.target.result)return g("cannot read");const{result:E}=b.target;m(E==null?void 0:E.toString())}),x.addEventListener("error",()=>{g(x.error)}),x.readAsText(d)})}function isMobile(){return window.innerWidth<800}function getHFS(){return window.HFS||(window.HFS={})}function getPrefixUrl(){return getHFS().prefixUrl||""}function makeSessionRefresher(d){let m;const g=getHFS().session;return x(g),x;function x(b){if(!b)return;const{exp:E}=b;if(Object.assign(g,b),Object.assign(d,_.pick(b,["username","adminUrl","canChangePassword","accountExp","expandedUsername"])),!b.username||!E)return;const v=new Date(E).getTime()-Date.now(),S=_.clamp(v-3e4,4e3,6e5);console.debug("session refresh in",Math.round(S/1e3)),clearTimeout(m),m=setTimeout(()=>apiCall("refresh_session").then(x),S)}}function focusSelector(d,m=document){const g=m.querySelector(d);if(g&&g instanceof HTMLElement)return g.focus(),!0}function loadScript(d,m={}){return new Promise((g,x)=>{const b=document.createElement("script");b.type="text/javascript",b.src=d,b.onload=g,b.onerror=x;for(const[E,v]of Object.entries(m))b.setAttribute(E,String(v));document.head.appendChild(b)})}function fallbackToBasicAuth(){return BigInt===Number}function createDurationFormatter({locale:d=void 0,unitDisplay:m="narrow",largest:g="day",smallest:x="second",maxTokens:b,skipZeroes:E}={}){const v={day:DAY,hour:HOUR,minute:MINUTE,second:1e3},S=objSameKeys(v,(T,R)=>Intl.NumberFormat(d,{style:"unit",unit:R,unitDisplay:m}).format),C=new Intl.ListFormat(d,{style:"narrow",type:"unit"});return T=>{var L,D;const R=[];let k=!1;for(const[A,I]of typedEntries(v)){if(A===x&&R.length)break;if(A===g&&(k=!0),!k)continue;const N=Math.floor(T/I);if(!(!N&&E)){if(R.push((D=(L=S[A])==null?void 0:L.call(S,N))!=null?D:String(N)),R.length===b)break;T%=I}}return C.format(R)}}function copyTextToClipboard(d){return vt(this,null,function*(){try{yield navigator.clipboard.writeText(d)}catch(m){console.debug("fallback clipboard method");const g=document,x=g.createElement("textarea");x.textContent=d,g.body.appendChild(x),x.select(),g.execCommand("copy"),g.body.removeChild(x)}})}function downloadFileWithContent(d,m){const g=m instanceof Blob?m:new Blob([m],{type:"text/plain"}),x=document.createElement("a");x.href=URL.createObjectURL(g),x.download=d,x.style.display="none",document.body.append(x),x.click(),setTimeout(()=>x.remove(),100)}var Dm;(Dm=Element.prototype).replaceChildren||(Dm.replaceChildren=function(d){for(;this.lastChild;)this.removeChild(this.lastChild);d!==void 0&&this.append(d)});const shared=Object.freeze(Object.defineProperty({__proto__:null,ADMIN_URI,ALLOW_SESSION_IP_CHANGE,API_URI,AriaOnly,CFG,DAY,Dialogs,EMBEDDED_LANGUAGE,FRONTEND_OPTIONS,FRONTEND_URI,HFS_REPO,HIDE_IN_TESTS,HOUR,HTTP_BAD_REQUEST,HTTP_CONFLICT,HTTP_FAILED_DEPENDENCY,HTTP_FOOL,HTTP_FORBIDDEN,HTTP_INSUFFICIENT_STORAGE,HTTP_MESSAGES,HTTP_METHOD_NOT_ALLOWED,HTTP_MOVED_PERMANENTLY,HTTP_NOT_ACCEPTABLE,HTTP_NOT_FOUND,HTTP_NOT_MODIFIED,HTTP_NO_CONTENT,HTTP_OK,HTTP_PARTIAL_CONTENT,HTTP_PAYLOAD_TOO_LARGE,HTTP_PRECONDITION_FAILED,HTTP_RANGE_NOT_SATISFIABLE,HTTP_SERVER_ERROR,HTTP_SERVICE_UNAVAILABLE,HTTP_TEMPORARY_REDIRECT,HTTP_TOO_MANY_REQUESTS,HTTP_UNAUTHORIZED,Html,ICONS_URI,IMAGE_FILEMASK,KeepInScreen,LIST,MAX_TILE_SIZE,MD_TAGS,MINUTE,MTIME_CHECK,NBSP,PERM_KEYS,PLUGINS_PUB_URI,PLUGIN_CUSTOM_REST_PREFIX,PORT_DISABLED,PREVIOUS_TAG,REPO_URL,SORT_BY_OPTIONS,SPECIAL_URI,THEME_OPTIONS,UPLOAD_TEMP_HASH,WEBSITE,WHO_ANYONE,WHO_ANY_ACCOUNT,WHO_NO_ONE,WIKI_URL,_dbg,_log,anyDialogOpen,asyncGeneratorToArray,basename,buildUrlQueryString,callable,closeDialog,componentOrNode,copyTextToClipboard,cpuSpeedIndex,createDurationFormatter,defaultPerms,dialogsDefaults,dirname,domOn,dontBotherWithKeys,downloadFileWithContent,enforceFinal,enforceStarting,escapeHTML,fallbackToBasicAuth,filterMapGenerator,findDefined,focusSelector,focusableSelector,formatBytes,formatDate,formatPerc,formatSpeed,formatTime,formatTimestamp:formatTimestamp$2,getHFS,getOrSet,getPrefixUrl,hasProp,haveTimeout,inCommon,ipForUrl,isCtrlKey,isDescendant,isEqualLax,isIP,isIpLan,isIpLocalHost,isMac,isMobile,isNumeric,isOrderedEqual,isPrimitive,isTimestampString,isWhoObject,isWindowsDrive,join,loadScript,makeMatcher,makeSessionRefresher,mapFilter,matches,md,newDialog,newObj,noAriaTitle,normalizeHost,objFromKeys,objRenameKey,objSameKeys,onlyTruthy,patchKey,pathEncode,pendingPromise,popKey,prefix,promiseBestEffort,randomId,reactFilter,reactJoin,readFile,removeFinal,removeStarting,repeat,replace,replaceStringToReact,restartAnimation,retry,runAt,safeDecodeURIComponent,selectFiles,setHidden,shortenAgent,splitAt,srpClientPart,srpClientSequence,stringAfter,strinsert,swap,throw_,toMutable,truthy,tryJson,try_,typedEntries,typedKeys,urlParams,useAutoScroll,useBatch,useEffectOnce,useFixSticky,useGetSize,useIsMobile,useOnResize,useRequestRender,useStateMounted,wait,waitFor,wantArray,with_,xlate},Symbol.toStringTag,{value:"Module"})),httpCodes={100:"Continue: the initial headers were received; continue with the request body",101:"Switching Protocols: the server is switching protocols as requested",102:"Processing: the server is processing the request but a complete response isn’t ready yet",103:"Early Hints: preliminary headers are being sent before the final response",200:"OK: response sent",201:"Created: a new resource was created successfully",202:"Accepted: the request has been accepted for processing but isn’t complete yet",203:"Non-Authoritative Information: the response contains modified information from a third party",204:"No Content: the request succeeded but there’s no content to return",205:"Reset Content: the request succeeded; please reset your view",206:"Partial Content: only part of the resource is being returned as requested",207:"Multi-Status: the response contains several status codes for different parts of the request",208:"Already Reported: the resource has already been reported in a previous response",226:"IM Used: the server fulfilled the request using instance manipulations",300:"Multiple Choices: several options are available for the requested resource",301:"Moved Permanently: the resource has been permanently moved to a new URL",302:"Found: the resource is temporarily located at a different URL",303:"See Other: the requested resource can be found using GET at another URL",304:"Not Modified: the browser was asked to use its cached version, and the file was not actually sent",305:"Use Proxy: the requested resource must be accessed through the specified proxy",306:"Switch Proxy: this code is no longer used but is reserved for future use",307:"Temporary Redirect: the resource is temporarily available at a different URL; use the original for future requests",308:"Permanent Redirect: the resource has been permanently moved to another URL",400:"Bad Request: the request is malformed or contains invalid parameters",401:"Unauthorized: authentication is required and was either not provided or failed",402:"Payment Required: payment is required to access this resource (reserved for future use)",403:"Forbidden: the server understands the request but refuses to authorize it",404:"Not Found: the requested resource could not be found",405:"Method Not Allowed: the HTTP method used isn’t allowed for this resource",406:"Not Acceptable: the resource can’t produce content acceptable according to the request",407:"Proxy Authentication Required: proxy authentication is required to access the resource",408:"Request Timeout: the server timed out waiting for the request",409:"Conflict: the request couldn’t be processed due to a conflict",410:"Gone: the requested resource is no longer available",411:"Length Required: the request didn’t include the required content length",412:"Precondition Failed: one or more conditions in the request header failed",413:"Payload Too Large: the request payload is too large for the server to process",414:"URI Too Long: the URL provided is too long",415:"Unsupported Media Type: the media type is not supported by the server",416:"Range Not Satisfiable: the requested range cannot be fulfilled by the server",417:"Expectation Failed: the server can’t meet the expectations in the request’s header",418:"I'm a Teapot: this code is a humorous reference and not meant for real use",421:"Misdirected Request: the request was sent to a server that can’t produce a response",422:"Unprocessable Entity: the request was well-formed but contains semantic errors",423:"Locked: the resource is locked and can’t be accessed",424:"Failed Dependency: the request failed because a previous request did not succeed",425:"Too Early: the server refuses to process the request to prevent replay attacks",426:"Upgrade Required: the client should switch to a different protocol",428:"Precondition Required: the server requires the request to be conditional",429:"Too Many Requests: too many requests have been sent in a short period",431:"Request Header Fields Too Large: the request’s header fields are too large",451:"Unavailable For Legal Reasons: the resource is unavailable due to legal restrictions",500:"Internal Server Error: the server encountered an unexpected error",501:"Not Implemented: the server does not support the requested functionality",502:"Bad Gateway: the server received an invalid response from an upstream server",503:"Service Unavailable: the server is currently unable to handle the request",504:"Gateway Timeout: the server did not receive a timely response from an upstream server",505:"HTTP Version Not Supported: the server does not support the HTTP version used",506:"Variant Also Negotiates: a circular reference was detected during content negotiation",507:"Insufficient Storage: the server is unable to store the requested resource",508:"Loop Detected: the server detected an infinite loop while processing the request",510:"Not Extended: additional extensions are needed to fulfill the request",511:"Network Authentication Required: network access requires proper authentication"};MD_TAGS.a=Link$1;function err2msg$1(d){var g;const m=typeof d=="string"&&((g=d.split("Error: EPERM: operation not permitted, access ")[1])==null?void 0:g.split(`
321
+ */var hasRequiredUseSyncExternalStoreShim_production_min;function requireUseSyncExternalStoreShim_production_min(){if(hasRequiredUseSyncExternalStoreShim_production_min)return useSyncExternalStoreShim_production_min;hasRequiredUseSyncExternalStoreShim_production_min=1;var d=requireReact();function m(k,L){return k===L&&(k!==0||1/k===1/L)||k!==k&&L!==L}var g=typeof Object.is=="function"?Object.is:m,x=d.useState,b=d.useEffect,E=d.useLayoutEffect,v=d.useDebugValue;function S(k,L){var D=L(),A=x({inst:{value:D,getSnapshot:L}}),I=A[0].inst,N=A[1];return E(function(){I.value=D,I.getSnapshot=L,C(I)&&N({inst:I})},[k,D,L]),b(function(){return C(I)&&N({inst:I}),k(function(){C(I)&&N({inst:I})})},[k]),v(D),D}function C(k){var L=k.getSnapshot;k=k.value;try{var D=L();return!g(k,D)}catch(A){return!0}}function T(k,L){return L()}var R=typeof window=="undefined"||typeof window.document=="undefined"||typeof window.document.createElement=="undefined"?T:S;return useSyncExternalStoreShim_production_min.useSyncExternalStore=d.useSyncExternalStore!==void 0?d.useSyncExternalStore:R,useSyncExternalStoreShim_production_min}var hasRequiredShim;function requireShim(){return hasRequiredShim||(hasRequiredShim=1,shim.exports=requireUseSyncExternalStoreShim_production_min()),shim.exports}var shimExports=requireShim();const useSyncExternalStoreExports=getDefaultExportFromCjs(shimExports),__vite_import_meta_env__={},{use}=React,{useSyncExternalStore}=useSyncExternalStoreExports,useAffectedDebugValue=(d,m)=>{const g=reactExports.useRef();reactExports.useEffect(()=>{g.current=w(d,m)}),reactExports.useDebugValue(g.current)},targetCache=new WeakMap;function useSnapshot(d,m){const x=reactExports.useRef(),b=reactExports.useRef();let E=!0;const v=useSyncExternalStore(reactExports.useCallback(T=>{const R=subscribe(d,T,void 0);return T(),R},[d,void 0]),()=>{const T=snapshot(d,use);try{if(!E&&x.current&&b.current&&!p(x.current,T,b.current,new WeakMap))return x.current}catch(R){}return T},()=>snapshot(d,use));E=!1;const S=new WeakMap;reactExports.useEffect(()=>{x.current=v,b.current=S}),(__vite_import_meta_env__?"production":void 0)!=="production"&&useAffectedDebugValue(v,S);const C=reactExports.useMemo(()=>new WeakMap,[]);return a(v,S,C,targetCache)}const dialogs=proxy([]),{history}=window,dialogsDefaults={closableProps:{children:"x","aria-label":"Close"},padding:!0},focusableSelector=['input:not([type="hidden"])',"button","select","textarea","a[href]","[tabindex]"].map(d=>d+':not([disabled]):not([tabindex="-1"])').join(",");window.addEventListener("keydown",d=>{d.key==="Tab"&&tabCycle(d.target,d.shiftKey)&&d.preventDefault()});function tabCycle(d,m=!1){const g=document.querySelectorAll("[role$=dialog]"),x=g[g.length-1];if(!x)return;const b=x.querySelectorAll(focusableSelector),E=b.length;if(!E)return;const[v,S]=m?[E-1,0]:[0,E-1];if(!(d!==b[S]&&isDescendant(document.activeElement,x)))return b[v].focus(),!0}function isDescendant(d,m){if(!m)return!1;const g=typeof m=="function";for(;d;){if(g?m(d):d===m)return!0;d=d.parentNode}return!1}let waitClosing=Promise.resolve(),ignorePopState=!1;function back(){return yt(this,null,function*(){ignorePopState=!0;let d=history.state;return waitClosing=waitClosing.then(()=>new Promise(m=>yt(this,null,function*(){const g=Date.now();for(;d===history.state&&!(Date.now()-g>1e3);)history.back(),yield wait(10);m()})))})}yt(void 0,null,function*(){var d;for(;(d=history.state)!=null&&d.$dialog;)history.back(),yield wait(1)});function Dialogs(d){reactExports.useEffect(()=>domOn("popstate",()=>{if(ignorePopState)return ignorePopState=!1;if(!history.state)return;const{$dialog:g}=history.state;if(g&&!dialogs.find(x=>x.$id===g))return back();closeDialog(void 0,!0)}),[]);const m=useSnapshot(dialogs);return reactExports.useEffect(()=>{document.body.style.overflow=m.length?"hidden":""},[m.length]),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement("div",Fe({"aria-hidden":m.length>0},d)),m.map(g=>reactExports.createElement(Dialog,Fe({key:g.$id},g))))}function Dialog(d){var E;const m=reactExports.useRef(null),[g,x]=reactExports.useState(0);if(reactExports.useEffect(()=>{var T;const v=(T=m.current)==null?void 0:T.querySelector(".dialog");if(!v||(tabCycle(v),!d.position))return;let S=0;const C=setInterval(()=>{const R=v.getBoundingClientRect();x(S=Math.min(S,R.top,window.innerHeight-R.bottom+S))},100);return()=>clearInterval(C)},[]),d=Fe(Fe({closable:!0},dialogsDefaults),d),d.Container)return reactExports.createElement(d.Container,d);return reactExports.createElement("div",{ref:m,className:"dialog-backdrop "+(d.className||""),onKeyDown(v){v.key==="Escape"&&closeDialog(),v.stopPropagation()},onClick:v=>d.closable&&v.target===v.currentTarget&&closeDialog()},d.noFrame?reactExports.createElement(d.Content||"div"):reactExports.createElement("div",Fe({role:"dialog","aria-modal":!0,className:"dialog",style:Fe(Fe({},b()),(E=d.dialogProps)==null?void 0:E.style),onClick(v){v.stopPropagation()}},d.dialogProps),d.closable&&reactExports.createElement("button",Fe({className:"dialog-icon dialog-closer",onClick(){closeDialog()}},d.closableProps)),d.icon&&reactExports.createElement("div",{className:"dialog-icon dialog-type"+(typeof d.icon=="string"?" dialog-icon-text":""),"aria-hidden":!0},componentOrNode(d.icon)),reactExports.createElement("h1",{className:"dialog-title"},componentOrNode(d.title)),reactExports.createElement("div",{className:"dialog-content"},reactExports.createElement(d.Content||"div"))));function b(){const{innerWidth:v,innerHeight:S}=window,C=d.position;return C&&Fe(Fe({margin:"1em",position:"absolute"},C[0]<v/2?{left:C[0]}:{right:v-C[0]}),C[1]<S/2?{top:g+C[1]}:{bottom:g+S-C[1]})}}function componentOrNode(d){return isPrimitive(d)||reactExports.isValidElement(d)?d:reactExports.createElement(d)}function newDialog(d){var v;const m=Math.random(),g=performance.now(),x=Object.assign(objSameKeys(d,S=>reactExports.isValidElement(S)?ref(S):S),{close:E,ts:g,$id:m,restoreFocus:(v=d.restoreFocus)!=null?v:ref(document.activeElement||{})});let b=!1;return waitClosing.then(()=>{var S;b||(dialogs.push(x),dialogs.at(-1).closable!==!1&&history.pushState({$dialog:m,ts:g,idx:1+(((S=history.state)==null?void 0:S.idx)||0)},""))}),x;function E(S){var T;b=!0;const C=dialogs.findIndex(R=>R.$id===m);if(!(C<0))return x.closed=((T=history.state)==null?void 0:T.$dialog)===m?back():Promise.resolve(),closeDialogAt(C,S),d.closed}}function closeDialog(d,m=!1){var x;let g=dialogs.length;if(((x=dialogs[g-1])==null?void 0:x.closable)!==!1)for(;g--;){const b=dialogs[g];if(!b.reserveClosing){if(!m){if(history.state.$dialog!==b.$id)return;b.closed=back()}return closeDialogAt(g,d),b}}}function closeDialogAt(d,m){var x,b,E;const[g]=dialogs.splice(d,1);return(b=(x=g.restoreFocus)==null?void 0:x.focus)==null||b.call(x),g.closingValue=m&&typeof m=="object"?ref(m):m,(E=g.closed)!=null||(g.closed=Promise.resolve()),g.closed.then(()=>{var v;return(v=g==null?void 0:g.onClose)==null?void 0:v.call(g,m)}),g}function anyDialogOpen(){return dialogs.length>0}const MD_TAGS={a:"a","`":"code","*":"i","**":"b"};function md(d,{html:m=!0,linkTarget:g="_blank",onText:x=b=>b}={}){return typeof d!="string"&&(d=d[0]),replaceStringToReact(d,/(`|_|\*\*?)(.+?)\1|(\n)|\[(.+?)\]\((.+?)\)|(<(\w+?)(?:\s+[^>]*?)?>(?:.*?<\/\7>)?)/g,b=>b[4]?reactExports.createElement(MD_TAGS.a,{href:b[5],target:g},x(b[4])):b[3]?reactExports.createElement("br"):b[1]?reactExports.createElement(MD_TAGS[b[1]]||reactExports.Fragment,{},x(b[2])):m?reactExports.createElement(Html,{},b[6]):b[6],x)}function replaceStringToReact(d,m,g,x=b=>b){const b=[];let E=0,v;for(;(v=m.exec(d))&&(b.push(x(d.slice(E,v.index))),b.push(g(v)),E=v.index+v[0].length,!!m.global););return reactExports.createElement(reactExports.Fragment,{},...b,x(d.slice(E,1/0)))}function Html(g){var x=g,{children:d}=x,m=Vt(x,["children"]);return reactExports.useMemo(()=>d?reactExports.createElement("span",$t(Fe({},m),{ref:b=>b&&b.replaceChildren(document.createRange().createContextualFragment(d))})):null,[d])}var dist={},parameters={},crossEnvCrypto={};const __viteBrowserExternal={},__viteBrowserExternal$1=Object.freeze(Object.defineProperty({__proto__:null,default:__viteBrowserExternal},Symbol.toStringTag,{value:"Module"})),require$$0=getAugmentedNamespace(__viteBrowserExternal$1);var hasRequiredCrossEnvCrypto;function requireCrossEnvCrypto(){if(hasRequiredCrossEnvCrypto)return crossEnvCrypto;hasRequiredCrossEnvCrypto=1,Object.defineProperty(crossEnvCrypto,"__esModule",{value:!0}),crossEnvCrypto.crossEnvCrypto=void 0;try{const d=typeof window!="undefined"&&window.crypto||require$$0.webcrypto;if(d){if(!d.subtle)throw new Error("Crypto.Subtle is undefined. Make sure you are using HTTPS in a compatible browser.");const m=g=>x=>d.subtle.digest(g,x);crossEnvCrypto.crossEnvCrypto={randomBytes:d.getRandomValues.bind(d),hashFunctions:{SHA1:m("SHA-1"),SHA256:m("SHA-256"),SHA384:m("SHA-384"),SHA512:m("SHA-512")}}}else{const m=require$$0,g=x=>b=>m.createHash(x).update(b).digest().buffer;crossEnvCrypto.crossEnvCrypto={randomBytes:m.randomFillSync,hashFunctions:{SHA1:g("sha1"),SHA256:g("sha256"),SHA384:g("sha384"),SHA512:g("sha512")}}}}catch(d){throw console.error(d),new Error("No suitable crypto library was found. You may need a polyfill.")}return crossEnvCrypto}var hasRequiredParameters;function requireParameters(){if(hasRequiredParameters)return parameters;hasRequiredParameters=1,Object.defineProperty(parameters,"__esModule",{value:!0}),parameters.SRPParameters=void 0;const d=requireCrossEnvCrypto();class m{constructor(x=m.PrimeGroup[2048],b=m.H.SHA512){if(this.primeGroup=x,this.H=b,this.NBits=this.primeGroup.N.toString(2).length,!b)throw new Error("Hash function required")}}return parameters.SRPParameters=m,m.PrimeGroup={256:{N:BigInt("125617018995153554710546479714086468244499594888726646874671447258204721048803"),g:BigInt(2)},512:{N:BigInt("11144252439149533417835749556168991736939157778924947037200268358613863350040339017097790259154750906072491181606044774215413467851989724116331597513345603"),g:BigInt(2)},768:{N:BigInt("1087179135105457859072065649059069760280540086975817629066444682366896187793570736574549981488868217843627094867924800342887096064844227836735667168319981288765377499806385489913341488724152562880918438701129530606139552645689583147"),g:BigInt(2)},1024:{N:BigInt("167609434410335061345139523764350090260135525329813904557420930309800865859473551531551523800013916573891864789934747039010546328480848979516637673776605610374669426214776197828492691384519453218253702788022233205683635831626913357154941914129985489522629902540768368409482248290641036967659389658897350067939"),g:BigInt(2)},1536:{N:BigInt("1486998185923128292816507353619409521152457662596380074614818966810244974827752411420380336514078832314731499938313197533147998565301020797040787428051479639316928015998415709101293902971072960487527411068082311763171549170528008620813391411445907584912865222076100726050255271567749213905330659264908657221124284665444825474741087704974475795505492821585749417639344967192301749033325359286273431675492866492416941152646940908101472416714421046022696100064262587"),g:BigInt(2)},2048:{N:BigInt("21766174458617435773191008891802753781907668374255538511144643224689886235383840957210909013086056401571399717235807266581649606472148410291413364152197364477180887395655483738115072677402235101762521901569820740293149529620419333266262073471054548368736039519702486226506248861060256971802984953561121442680157668000761429988222457090413873973970171927093992114751765168063614761119615476233422096442783117971236371647333871414335895773474667308967050807005509320424799678417036867928316761272274230314067548291133582479583061439577559347101961771406173684378522703483495337037655006751328447510550299250924469288819"),g:BigInt(2)}},m.H={SHA1:d.crossEnvCrypto.hashFunctions.SHA1,SHA256:d.crossEnvCrypto.hashFunctions.SHA256,SHA384:d.crossEnvCrypto.hashFunctions.SHA384,SHA512:d.crossEnvCrypto.hashFunctions.SHA512},parameters}var routines={},utils={},hasRequiredUtils;function requireUtils(){return hasRequiredUtils||(hasRequiredUtils=1,function(d){var m=utils&&utils.__awaiter||function(Y,B,U,W){function V(J){return J instanceof U?J:new U(function(Q){Q(J)})}return new(U||(U=Promise))(function(J,Q){function X(oe){try{ie(W.next(oe))}catch(Z){Q(Z)}}function re(oe){try{ie(W.throw(oe))}catch(Z){Q(Z)}}function ie(oe){oe.done?J(oe.value):V(oe.value).then(X,re)}ie((W=W.apply(Y,B||[])).next())})};Object.defineProperty(d,"__esModule",{value:!0}),d.modPow=d.hashBitCount=d.createVerifierAndSalt=d.createVerifier=d.generateRandomBigInt=d.generateRandomString=d.hashPadded=d.hash=d.padStartArrayBuffer=d.stringToArrayBuffer=d.arrayBufferToBigInt=d.bigIntToArrayBuffer=void 0;const g=requireCrossEnvCrypto(),x=BigInt(0),b=BigInt(1),E=BigInt(2),v=Y=>{const B=Y.toString(16),U=new ArrayBuffer(Math.ceil(B.length/2)),W=new Uint8Array(U);let V=0;B.length%2!==0&&(W[0]=parseInt(B[0],16),V=1);for(let J=0;J<U.byteLength;J++)W[J+V]=parseInt(B.slice(2*J+V,2*J+2+V),16);return U};d.bigIntToArrayBuffer=v;const S=Y=>{const B=[];return new Uint8Array(Y).forEach(U=>{B.push(("0"+U.toString(16)).slice(-2))}),BigInt(`0x${B.join("")}`)};d.arrayBufferToBigInt=S;function C(Y){return new TextEncoder().encode(Y).buffer}d.stringToArrayBuffer=C;const T=(Y,B)=>{const U=new Uint8Array(Y);if(U.length<B){const W=new Uint8Array(B);return W.fill(0,0,B-U.length),W.set(U,B-U.length),W}return U};d.padStartArrayBuffer=T;function R(Y,...B){const U=B.reduce((V,J)=>V+J.byteLength,0),W=new Uint8Array(U);for(let V=0,J=0;J<B.length;J++)W.set(new Uint8Array(B[J]),V),V+=B[J].byteLength;return Y.H(W)}d.hash=R;function k(Y,B,...U){const W=U.map(V=>d.padStartArrayBuffer(V,B));return R(Y,...W)}d.hashPadded=k;function L(Y=10){const B=new Uint8Array(Math.ceil(Math.ceil(Y/2)));return g.crossEnvCrypto.randomBytes(B),B.reduce((U,W)=>{const V=W.toString(16).toString();return V.length===1?U+"0"+V:U+V},"").slice(0,Y)}d.generateRandomString=L;function D(Y=16){return d.arrayBufferToBigInt(j(Y))}d.generateRandomBigInt=D;function A(Y,B,U,W){return m(this,void 0,void 0,function*(){if(!B||!B.trim())throw new Error("Identity (I) must not be null or empty.");if(!U)throw new Error("Salt (s) must not be null.");if(!W)throw new Error("Password (P) must not be null");const V=yield Y.computeX(B,U,W);return Y.computeVerifier(V)})}d.createVerifier=A;function I(Y,B,U,W){return m(this,void 0,void 0,function*(){const V=yield Y.generateRandomSalt(W);return{s:V,v:yield A(Y,B,V,U)}})}d.createVerifierAndSalt=I;const N=Y=>m(void 0,void 0,void 0,function*(){return(yield R(Y,d.bigIntToArrayBuffer(BigInt(1)))).byteLength*8});d.hashBitCount=N;function z(Y,B,U){let W=b;for(;B>x;)B%E==b?(W=Y*W%U,B-=b):(Y=Y*Y%U,B/=E);return W}d.modPow=z;const j=Y=>{const B=new Uint8Array(Y);return g.crossEnvCrypto.randomBytes(B),B.buffer}}(utils)),utils}var hasRequiredRoutines;function requireRoutines(){if(hasRequiredRoutines)return routines;hasRequiredRoutines=1;var d=routines&&routines.__awaiter||function(x,b,E,v){function S(C){return C instanceof E?C:new E(function(T){T(C)})}return new(E||(E=Promise))(function(C,T){function R(D){try{L(v.next(D))}catch(A){T(A)}}function k(D){try{L(v.throw(D))}catch(A){T(A)}}function L(D){D.done?C(D.value):S(D.value).then(R,k)}L((v=v.apply(x,b||[])).next())})};Object.defineProperty(routines,"__esModule",{value:!0}),routines.SRPRoutines=void 0;const m=requireUtils();class g{constructor(b){this.parameters=b}hash(...b){return m.hash(this.parameters,...b)}hashPadded(...b){const E=Math.trunc((this.parameters.NBits+7)/8);return m.hashPadded(this.parameters,E,...b)}computeK(){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hashPadded(m.bigIntToArrayBuffer(this.parameters.primeGroup.N),m.bigIntToArrayBuffer(this.parameters.primeGroup.g)))})}generateRandomSalt(b){return d(this,void 0,void 0,function*(){const E=yield m.hashBitCount(this.parameters),v=b||2*E/8;return m.generateRandomBigInt(v)})}computeX(b,E,v){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(E),yield this.computeIdentityHash(b,v)))})}computeXStep2(b,E){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(b),E))})}computeIdentityHash(b,E){return d(this,void 0,void 0,function*(){return yield this.hash(m.stringToArrayBuffer(E))})}computeVerifier(b){return m.modPow(this.parameters.primeGroup.g,b,this.parameters.primeGroup.N)}generatePrivateValue(){const b=Math.max(256,this.parameters.NBits);let E;do E=m.generateRandomBigInt(b/8)%this.parameters.primeGroup.N;while(E===BigInt(0));return E}computeClientPublicValue(b){return m.modPow(this.parameters.primeGroup.g,b,this.parameters.primeGroup.N)}isValidPublicValue(b){return b%this.parameters.primeGroup.N!==BigInt(0)}computeU(b,E){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hashPadded(m.bigIntToArrayBuffer(b),m.bigIntToArrayBuffer(E)))})}computeClientEvidence(b,E,v,S,C){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(v),m.bigIntToArrayBuffer(S),m.bigIntToArrayBuffer(C)))})}computeServerEvidence(b,E,v){return d(this,void 0,void 0,function*(){return m.arrayBufferToBigInt(yield this.hash(m.bigIntToArrayBuffer(b),m.bigIntToArrayBuffer(E),m.bigIntToArrayBuffer(v)))})}computeClientSessionKey(b,E,v,S,C){const T=this.parameters.primeGroup.N,R=v*E+S,k=m.modPow(this.parameters.primeGroup.g,E,T)*b%T;return m.modPow(C+T-k,R,T)}}return routines.SRPRoutines=g,routines}var sessionClient={},hasRequiredSessionClient;function requireSessionClient(){if(hasRequiredSessionClient)return sessionClient;hasRequiredSessionClient=1;var d=sessionClient&&sessionClient.__awaiter||function(b,E,v,S){function C(T){return T instanceof v?T:new v(function(R){R(T)})}return new(v||(v=Promise))(function(T,R){function k(A){try{D(S.next(A))}catch(I){R(I)}}function L(A){try{D(S.throw(A))}catch(I){R(I)}}function D(A){A.done?T(A.value):C(A.value).then(k,L)}D((S=S.apply(b,E||[])).next())})};Object.defineProperty(sessionClient,"__esModule",{value:!0}),sessionClient.SRPClientSessionStep2=sessionClient.SRPClientSessionStep1=sessionClient.SRPClientSession=void 0;class m{constructor(E){this.routines=E}step1(E,v){return d(this,void 0,void 0,function*(){if(!E||!E.trim())throw new Error("User identity must not be null nor empty");if(!v)throw new Error("User password must not be null");const S=yield this.routines.computeIdentityHash(E,v);return new g(this.routines,E,S)})}}sessionClient.SRPClientSession=m;class g{constructor(E,v,S){this.routines=E,this.I=v,this.IH=S}step2(E,v){return d(this,void 0,void 0,function*(){if(!E)throw new Error("Salt (s) must not be null");if(!v)throw new Error("Public server value (B) must not be null");const S=yield this.routines.computeXStep2(E,this.IH),C=this.routines.generatePrivateValue(),T=this.routines.computeClientPublicValue(C),R=yield this.routines.computeK(),k=yield this.routines.computeU(T,v),L=this.routines.computeClientSessionKey(R,S,k,C,v),D=yield this.routines.computeClientEvidence(this.I,E,T,v,L);return new x(this.routines,T,D,L)})}toJSON(){return{I:this.I,IH:Array.from(new Uint8Array(this.IH))}}static fromState(E,v){return new g(E,v.I,new Uint8Array(v.IH).buffer)}}sessionClient.SRPClientSessionStep1=g;class x{constructor(E,v,S,C){this.routines=E,this.A=v,this.M1=S,this.S=C}step3(E){return d(this,void 0,void 0,function*(){if(!E)throw new Error("Server evidence (M2) must not be null");if((yield this.routines.computeServerEvidence(this.A,this.M1,this.S))!==E)throw new Error("Bad server credentials")})}toJSON(){return{A:this.A.toString(16),M1:this.M1.toString(16),S:this.S.toString(16)}}static fromState(E,v){return new x(E,BigInt("0x"+v.A),BigInt("0x"+v.M1),BigInt("0x"+v.S))}}return sessionClient.SRPClientSessionStep2=x,sessionClient}var sessionServer={},hasRequiredSessionServer;function requireSessionServer(){if(hasRequiredSessionServer)return sessionServer;hasRequiredSessionServer=1;var d=sessionServer&&sessionServer.__awaiter||function(v,S,C,T){function R(k){return k instanceof C?k:new C(function(L){L(k)})}return new(C||(C=Promise))(function(k,L){function D(N){try{I(T.next(N))}catch(z){L(z)}}function A(N){try{I(T.throw(N))}catch(z){L(z)}}function I(N){N.done?k(N.value):R(N.value).then(D,A)}I((T=T.apply(v,S||[])).next())})};Object.defineProperty(sessionServer,"__esModule",{value:!0}),sessionServer.SRPServerSessionStep1=sessionServer.SRPServerSession=void 0;const m=requireUtils();class g{constructor(S){this.routines=S}step1(S,C,T){return d(this,void 0,void 0,function*(){const R=this.routines.generatePrivateValue(),k=yield this.routines.computeK(),L=b(this.routines.parameters,k,T,R);return new x(this.routines,S,C,T,R,L)})}}sessionServer.SRPServerSession=g;class x{constructor(S,C,T,R,k,L){this.routines=S,this.identifier=C,this.salt=T,this.verifier=R,this.b=k,this.B=L}sessionKey(S){return d(this,void 0,void 0,function*(){if(S===null)throw new Error("Client public value (A) must not be null");if(!this.routines.isValidPublicValue(S))throw new Error(`Invalid Client public value (A): ${S.toString(16)}`);const C=yield this.routines.computeU(S,this.B);return E(this.routines.parameters.primeGroup.N,this.verifier,C,S,this.b)})}step2(S,C){return d(this,void 0,void 0,function*(){if(!C)throw new Error("Client evidence (M1) must not be null");const T=yield this.sessionKey(S);if((yield this.routines.computeClientEvidence(this.identifier,this.salt,S,this.B,T))!==C)throw new Error("Bad client credentials");return this.routines.computeServerEvidence(S,C,T)})}toJSON(){return{identifier:this.identifier,salt:this.salt.toString(16),verifier:this.verifier.toString(16),b:this.b.toString(16),B:this.B.toString(16)}}static fromState(S,C){return new x(S,C.identifier,BigInt("0x"+C.salt),BigInt("0x"+C.verifier),BigInt("0x"+C.b),BigInt("0x"+C.B))}}sessionServer.SRPServerSessionStep1=x;const b=(v,S,C,T)=>(m.modPow(v.primeGroup.g,T,v.primeGroup.N)+C*S)%v.primeGroup.N,E=(v,S,C,T,R)=>m.modPow(m.modPow(S,C,v)*T,R,v);return sessionServer}var hasRequiredDist;function requireDist(){return hasRequiredDist||(hasRequiredDist=1,function(d){Object.defineProperty(d,"__esModule",{value:!0}),d.generateRandomBigInt=d.arrayBufferToBigInt=d.bigIntToArrayBuffer=d.createVerifierAndSalt=d.SRPServerSessionStep1=d.SRPServerSession=d.SRPClientSessionStep2=d.SRPClientSessionStep1=d.SRPClientSession=d.SRPRoutines=d.SRPParameters=void 0;var m=requireParameters();Object.defineProperty(d,"SRPParameters",{enumerable:!0,get:function(){return m.SRPParameters}});var g=requireRoutines();Object.defineProperty(d,"SRPRoutines",{enumerable:!0,get:function(){return g.SRPRoutines}});var x=requireSessionClient();Object.defineProperty(d,"SRPClientSession",{enumerable:!0,get:function(){return x.SRPClientSession}}),Object.defineProperty(d,"SRPClientSessionStep1",{enumerable:!0,get:function(){return x.SRPClientSessionStep1}}),Object.defineProperty(d,"SRPClientSessionStep2",{enumerable:!0,get:function(){return x.SRPClientSessionStep2}});var b=requireSessionServer();Object.defineProperty(d,"SRPServerSession",{enumerable:!0,get:function(){return b.SRPServerSession}}),Object.defineProperty(d,"SRPServerSessionStep1",{enumerable:!0,get:function(){return b.SRPServerSessionStep1}});var E=requireUtils();Object.defineProperty(d,"createVerifierAndSalt",{enumerable:!0,get:function(){return E.createVerifierAndSalt}}),Object.defineProperty(d,"bigIntToArrayBuffer",{enumerable:!0,get:function(){return E.bigIntToArrayBuffer}}),Object.defineProperty(d,"arrayBufferToBigInt",{enumerable:!0,get:function(){return E.arrayBufferToBigInt}}),Object.defineProperty(d,"generateRandomBigInt",{enumerable:!0,get:function(){return E.generateRandomBigInt}})}(dist)),dist}var distExports=requireDist();function srpClientSequence(d,m,g,x){return yt(this,null,function*(){const{pubKey:b,salt:E}=yield g("loginSrp1",{username:d});if(!E)throw Error("salt");const v=yield srpClientPart(d,m,E,b),S=yield g("loginSrp2",Fe({pubKey:String(v.A),proof:String(v.M1)},x));return yield v.step3(BigInt(S.proof)).catch(()=>Promise.reject("trust")),S})}function srpClientPart(d,m,g,x){return yt(this,null,function*(){const b=new distExports.SRPRoutines(new distExports.SRPParameters);return yield(yield new distExports.SRPClientSession(b).step1(d,m)).step2(BigInt(g),BigInt(x))})}window._=_;setTimeout(()=>{document.querySelectorAll(".removeAtBoot").forEach(d=>d.remove())},500);const cpuSpeedIndex=(()=>{let d=performance.now();return _.range(1e5).map(m=>++m),d=performance.now()-d,1/d})(),urlParams=Object.fromEntries(new URLSearchParams(window.location.search).entries()),HFS=getHFS();Object.assign(HFS,{getPluginKey:()=>getScriptAttr("plugin"),getPluginPublic:()=>{var d,m;return(m=(d=getScriptAttr("src"))==null?void 0:d.match(/^.*\//))==null?void 0:m[0]},getPluginConfig:()=>HFS.plugins[HFS.getPluginKey()]||{},loadScript:d=>loadScript(d.includes("//")||d.startsWith("/")?d:HFS.getPluginPublic()+d),userBelongsTo:d=>wantArray(d).some(m=>HFS.state.expandedUsername.includes(m)),cpuSpeedIndex,copyTextToClipboard,urlParams});formatBytes.k=HFS.kb;const IMAGE_FILEMASK="*.jpg|*.jpeg|*.png|*.gif|*.svg";{const d=console.debug;console.debug=(...m)=>window.DEV&&d(...m)}function getScriptAttr(d){var m;return((m=document.currentScript)==null?void 0:m.getAttribute(d))||console.error("this function must be called at the very top of your file")}function buildUrlQueryString(d){return"?"+Object.entries(d).filter(m=>m[1]!==void 0).map(m=>m.map(g=>encodeURIComponent(g).replaceAll("%2F","/")).join("=")).join("&")}function domOn(d,m,{target:g=window}={}){if(g)return g.addEventListener(d,m),()=>g.removeEventListener(d,m)}function restartAnimation(d,m){d&&(d.style.animation="",d.offsetWidth,d.style.animation=m)}function selectFiles(d,{accept:m="",multiple:g=!0,folder:x=!1}={}){const b=Object.assign(document.createElement("input"),{type:"file",name:"file",accept:m,multiple:g,webkitdirectory:x});b.addEventListener("change",()=>d(b.files)),b.click()}function readFile(d){return new Promise((m,g)=>{const x=new FileReader;x.addEventListener("load",b=>{if(!b.target||d.size&&!b.target.result)return g("cannot read");const{result:E}=b.target;m(E==null?void 0:E.toString())}),x.addEventListener("error",()=>{g(x.error)}),x.readAsText(d)})}function isMobile(){return window.innerWidth<800}function getHFS(){return window.HFS||(window.HFS={})}function getPrefixUrl(){return getHFS().prefixUrl||""}function makeSessionRefresher(d){let m;const g=getHFS().session;return x(g),x;function x(b){if(!b)return;const{exp:E}=b;if(Object.assign(g,b),Object.assign(d,_.pick(b,["username","adminUrl","canChangePassword","accountExp","expandedUsername"])),!b.username||!E)return;const v=new Date(E).getTime()-Date.now(),S=_.clamp(v-3e4,4e3,6e5);console.debug("session refresh in",Math.round(S/1e3)),clearTimeout(m),m=setTimeout(()=>apiCall("refresh_session").then(x),S)}}function focusSelector(d,m=document){const g=m.querySelector(d);if(g&&g instanceof HTMLElement)return g.focus(),!0}function loadScript(d,m={}){return new Promise((g,x)=>{const b=document.createElement("script");b.type="text/javascript",b.src=d,b.onload=g,b.onerror=x;for(const[E,v]of Object.entries(m))b.setAttribute(E,String(v));document.head.appendChild(b)})}function fallbackToBasicAuth(){return BigInt===Number}function createDurationFormatter({locale:d=void 0,unitDisplay:m="narrow",largest:g="day",smallest:x="second",maxTokens:b,skipZeroes:E}={}){const v={day:DAY,hour:HOUR,minute:MINUTE,second:1e3},S=objSameKeys(v,(T,R)=>Intl.NumberFormat(d,{style:"unit",unit:R,unitDisplay:m}).format),C=new Intl.ListFormat(d,{style:"narrow",type:"unit"});return T=>{var L,D;const R=[];let k=!1;for(const[A,I]of typedEntries(v)){if(A===x&&R.length)break;if(A===g&&(k=!0),!k)continue;const N=Math.floor(T/I);if(!(!N&&E)){if(R.push((D=(L=S[A])==null?void 0:L.call(S,N))!=null?D:String(N)),R.length===b)break;T%=I}}return C.format(R)}}function copyTextToClipboard(d){return yt(this,null,function*(){try{yield navigator.clipboard.writeText(d)}catch(m){console.debug("fallback clipboard method");const g=document,x=g.createElement("textarea");x.textContent=d,g.body.appendChild(x),x.select(),g.execCommand("copy"),g.body.removeChild(x)}})}function downloadFileWithContent(d,m){const g=m instanceof Blob?m:new Blob([m],{type:"text/plain"}),x=document.createElement("a");x.href=URL.createObjectURL(g),x.download=d,x.style.display="none",document.body.append(x),x.click(),setTimeout(()=>x.remove(),100)}var Dm;(Dm=Element.prototype).replaceChildren||(Dm.replaceChildren=function(d){for(;this.lastChild;)this.removeChild(this.lastChild);d!==void 0&&this.append(d)});const shared=Object.freeze(Object.defineProperty({__proto__:null,ADMIN_URI,ALLOW_SESSION_IP_CHANGE,API_URI,AriaOnly,CFG,DAY,Dialogs,EMBEDDED_LANGUAGE,FRONTEND_OPTIONS,FRONTEND_URI,HFS_REPO,HIDE_IN_TESTS,HOUR,HTTP_BAD_REQUEST,HTTP_CONFLICT,HTTP_FAILED_DEPENDENCY,HTTP_FOOL,HTTP_FORBIDDEN,HTTP_INSUFFICIENT_STORAGE,HTTP_MESSAGES,HTTP_METHOD_NOT_ALLOWED,HTTP_MOVED_PERMANENTLY,HTTP_NOT_ACCEPTABLE,HTTP_NOT_FOUND,HTTP_NOT_MODIFIED,HTTP_NO_CONTENT,HTTP_OK,HTTP_PARTIAL_CONTENT,HTTP_PAYLOAD_TOO_LARGE,HTTP_PRECONDITION_FAILED,HTTP_RANGE_NOT_SATISFIABLE,HTTP_SERVER_ERROR,HTTP_SERVICE_UNAVAILABLE,HTTP_TEMPORARY_REDIRECT,HTTP_TOO_MANY_REQUESTS,HTTP_UNAUTHORIZED,Html,ICONS_URI,IMAGE_FILEMASK,KeepInScreen,LIST,MAX_TILE_SIZE,MD_TAGS,MINUTE,MTIME_CHECK,NBSP,PERM_KEYS,PLUGINS_PUB_URI,PLUGIN_CUSTOM_REST_PREFIX,PORT_DISABLED,PREVIOUS_TAG,REPO_URL,SORT_BY_OPTIONS,SPECIAL_URI,THEME_OPTIONS,UPLOAD_TEMP_HASH,WEBSITE,WHO_ANYONE,WHO_ANY_ACCOUNT,WHO_NO_ONE,WIKI_URL,_dbg,_log,anyDialogOpen,asyncGeneratorToArray,basename,buildUrlQueryString,callable,closeDialog,componentOrNode,copyTextToClipboard,cpuSpeedIndex,createDurationFormatter,defaultPerms,dialogsDefaults,dirname,domOn,dontBotherWithKeys,downloadFileWithContent,enforceFinal,enforceStarting,escapeHTML,fallbackToBasicAuth,filterMapGenerator,findDefined,focusSelector,focusableSelector,formatBytes,formatDate,formatPerc,formatSpeed,formatTime,formatTimestamp:formatTimestamp$2,getHFS,getOrSet,getPrefixUrl,hasProp,haveTimeout,inCommon,ipForUrl,isCtrlKey,isDescendant,isEqualLax,isIP,isIpLan,isIpLocalHost,isMac,isMobile,isNumeric,isOrderedEqual,isPrimitive,isTimestampString,isWhoObject,isWindowsDrive,join,loadScript,makeMatcher,makeSessionRefresher,mapFilter,matches,md,newDialog,newObj,noAriaTitle,normalizeHost,objFromKeys,objRenameKey,objSameKeys,onlyTruthy,patchKey,pathEncode,pendingPromise,popKey,prefix,promiseBestEffort,randomId,reactFilter,reactJoin,readFile,removeFinal,removeStarting,repeat,replace,replaceStringToReact,restartAnimation,retry,runAt,safeDecodeURIComponent,selectFiles,setHidden,shortenAgent,splitAt,srpClientPart,srpClientSequence,stringAfter,strinsert,swap,throw_,toMutable,truthy,tryJson,try_,typedEntries,typedKeys,urlParams,useAutoScroll,useBatch,useEffectOnce,useFixSticky,useGetSize,useIsMobile,useOnResize,useRequestRender,useStateMounted,wait,waitFor,wantArray,with_,xlate},Symbol.toStringTag,{value:"Module"})),httpCodes={100:"Continue: the initial headers were received; continue with the request body",101:"Switching Protocols: the server is switching protocols as requested",102:"Processing: the server is processing the request but a complete response isn’t ready yet",103:"Early Hints: preliminary headers are being sent before the final response",200:"OK: response sent",201:"Created: a new resource was created successfully",202:"Accepted: the request has been accepted for processing but isn’t complete yet",203:"Non-Authoritative Information: the response contains modified information from a third party",204:"No Content: the request succeeded but there’s no content to return",205:"Reset Content: the request succeeded; please reset your view",206:"Partial Content: only part of the resource is being returned as requested",207:"Multi-Status: the response contains several status codes for different parts of the request",208:"Already Reported: the resource has already been reported in a previous response",226:"IM Used: the server fulfilled the request using instance manipulations",300:"Multiple Choices: several options are available for the requested resource",301:"Moved Permanently: the resource has been permanently moved to a new URL",302:"Found: the resource is temporarily located at a different URL",303:"See Other: the requested resource can be found using GET at another URL",304:"Not Modified: the browser was asked to use its cached version, and the file was not actually sent",305:"Use Proxy: the requested resource must be accessed through the specified proxy",306:"Switch Proxy: this code is no longer used but is reserved for future use",307:"Temporary Redirect: the resource is temporarily available at a different URL; use the original for future requests",308:"Permanent Redirect: the resource has been permanently moved to another URL",400:"Bad Request: the request is malformed or contains invalid parameters",401:"Unauthorized: authentication is required and was either not provided or failed",402:"Payment Required: payment is required to access this resource (reserved for future use)",403:"Forbidden: the server understands the request but refuses to authorize it",404:"Not Found: the requested resource could not be found",405:"Method Not Allowed: the HTTP method used isn’t allowed for this resource",406:"Not Acceptable: the resource can’t produce content acceptable according to the request",407:"Proxy Authentication Required: proxy authentication is required to access the resource",408:"Request Timeout: the server timed out waiting for the request",409:"Conflict: the request couldn’t be processed due to a conflict",410:"Gone: the requested resource is no longer available",411:"Length Required: the request didn’t include the required content length",412:"Precondition Failed: one or more conditions in the request header failed",413:"Payload Too Large: the request payload is too large for the server to process",414:"URI Too Long: the URL provided is too long",415:"Unsupported Media Type: the media type is not supported by the server",416:"Range Not Satisfiable: the requested range cannot be fulfilled by the server",417:"Expectation Failed: the server can’t meet the expectations in the request’s header",418:"I'm a Teapot: this code is a humorous reference and not meant for real use",421:"Misdirected Request: the request was sent to a server that can’t produce a response",422:"Unprocessable Entity: the request was well-formed but contains semantic errors",423:"Locked: the resource is locked and can’t be accessed",424:"Failed Dependency: the request failed because a previous request did not succeed",425:"Too Early: the server refuses to process the request to prevent replay attacks",426:"Upgrade Required: the client should switch to a different protocol",428:"Precondition Required: the server requires the request to be conditional",429:"Too Many Requests: too many requests have been sent in a short period",431:"Request Header Fields Too Large: the request’s header fields are too large",451:"Unavailable For Legal Reasons: the resource is unavailable due to legal restrictions",500:"Internal Server Error: the server encountered an unexpected error",501:"Not Implemented: the server does not support the requested functionality",502:"Bad Gateway: the server received an invalid response from an upstream server",503:"Service Unavailable: the server is currently unable to handle the request",504:"Gateway Timeout: the server did not receive a timely response from an upstream server",505:"HTTP Version Not Supported: the server does not support the HTTP version used",506:"Variant Also Negotiates: a circular reference was detected during content negotiation",507:"Insufficient Storage: the server is unable to store the requested resource",508:"Loop Detected: the server detected an infinite loop while processing the request",510:"Not Extended: additional extensions are needed to fulfill the request",511:"Network Authentication Required: network access requires proper authentication"};MD_TAGS.a=Link$1;function err2msg$1(d){var g;const m=typeof d=="string"&&((g=d.split("Error: EPERM: operation not permitted, access ")[1])==null?void 0:g.split(`
322
322
  `)[0]);return m?`Access denied on disk for ${m}`:{github_quota:"Request denied. You may have reached the limit, retry later.",ENOENT:"Not found",ENOTDIR:"Not a folder"}[d]||HTTP_MESSAGES[d]||httpCodes[d]||String(d)}function formatTimestamp$1(d){return d?(d instanceof Date?d:new Date(d)).toLocaleString():""}function getLoadingButtonUtilityClass(d){return generateUtilityClass("MuiLoadingButton",d)}const loadingButtonClasses=generateUtilityClasses("MuiLoadingButton",["root","loading","loadingIndicator","loadingIndicatorCenter","loadingIndicatorStart","loadingIndicatorEnd","endIconLoadingEnd","startIconLoadingStart"]),_excluded$1o=["children","disabled","id","loading","loadingIndicator","loadingPosition","variant"],useUtilityClasses$11=d=>{const{loading:m,loadingPosition:g,classes:x}=d,b={root:["root",m&&"loading"],startIcon:[m&&`startIconLoading${capitalize$1(g)}`],endIcon:[m&&`endIconLoading${capitalize$1(g)}`],loadingIndicator:["loadingIndicator",m&&`loadingIndicator${capitalize$1(g)}`]},E=composeClasses(b,getLoadingButtonUtilityClass,x);return _extends$1({},x,E)},rootShouldForwardProp=d=>d!=="ownerState"&&d!=="theme"&&d!=="sx"&&d!=="as"&&d!=="classes",LoadingButtonRoot=styled(Button,{shouldForwardProp:d=>rootShouldForwardProp(d)||d==="classes",name:"MuiLoadingButton",slot:"Root",overridesResolver:(d,m)=>[m.root,m.startIconLoadingStart&&{[`& .${loadingButtonClasses.startIconLoadingStart}`]:m.startIconLoadingStart},m.endIconLoadingEnd&&{[`& .${loadingButtonClasses.endIconLoadingEnd}`]:m.endIconLoadingEnd}]})(({ownerState:d,theme:m})=>_extends$1({[`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]:{transition:m.transitions.create(["opacity"],{duration:m.transitions.duration.short}),opacity:0}},d.loadingPosition==="center"&&{transition:m.transitions.create(["background-color","box-shadow","border-color"],{duration:m.transitions.duration.short}),[`&.${loadingButtonClasses.loading}`]:{color:"transparent"}},d.loadingPosition==="start"&&d.fullWidth&&{[`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]:{transition:m.transitions.create(["opacity"],{duration:m.transitions.duration.short}),opacity:0,marginRight:-8}},d.loadingPosition==="end"&&d.fullWidth&&{[`& .${loadingButtonClasses.startIconLoadingStart}, & .${loadingButtonClasses.endIconLoadingEnd}`]:{transition:m.transitions.create(["opacity"],{duration:m.transitions.duration.short}),opacity:0,marginLeft:-8}})),LoadingButtonLoadingIndicator=styled("span",{name:"MuiLoadingButton",slot:"LoadingIndicator",overridesResolver:(d,m)=>{const{ownerState:g}=d;return[m.loadingIndicator,m[`loadingIndicator${capitalize$1(g.loadingPosition)}`]]}})(({theme:d,ownerState:m})=>_extends$1({position:"absolute",visibility:"visible",display:"flex"},m.loadingPosition==="start"&&(m.variant==="outlined"||m.variant==="contained")&&{left:m.size==="small"?10:14},m.loadingPosition==="start"&&m.variant==="text"&&{left:6},m.loadingPosition==="center"&&{left:"50%",transform:"translate(-50%)",color:(d.vars||d).palette.action.disabled},m.loadingPosition==="end"&&(m.variant==="outlined"||m.variant==="contained")&&{right:m.size==="small"?10:14},m.loadingPosition==="end"&&m.variant==="text"&&{right:6},m.loadingPosition==="start"&&m.fullWidth&&{position:"relative",left:-10},m.loadingPosition==="end"&&m.fullWidth&&{position:"relative",right:-10})),LoadingButton=reactExports.forwardRef(function(m,g){const x=reactExports.useContext(ButtonGroupContext),b=resolveProps$1(x,m),E=useDefaultProps({props:b,name:"MuiLoadingButton"}),{children:v,disabled:S=!1,id:C,loading:T=!1,loadingIndicator:R,loadingPosition:k="center",variant:L="text"}=E,D=_objectWithoutPropertiesLoose(E,_excluded$1o),A=useId(C),I=R!=null?R:jsxRuntimeExports.jsx(CircularProgress,{"aria-labelledby":A,color:"inherit",size:16}),N=_extends$1({},E,{disabled:S,loading:T,loadingIndicator:I,loadingPosition:k,variant:L}),z=useUtilityClasses$11(N),j=T?jsxRuntimeExports.jsx(LoadingButtonLoadingIndicator,{className:z.loadingIndicator,ownerState:N,children:I}):null;return jsxRuntimeExports.jsxs(LoadingButtonRoot,_extends$1({disabled:S||T,id:A,ref:g},D,{variant:L,classes:z,ownerState:N,children:[N.loadingPosition==="end"?v:j,N.loadingPosition==="end"?j:v]}))});function StringField(A){var I=A,{value:d,onChange:m,min:g,max:x,required:b,setApi:E,typing:v,start:S,end:C,onTyping:T,suggestions:R,wrap:k,fieldRef:L}=I,D=Vt(I,["value","onChange","min","max","required","setApi","typing","start","end","onTyping","suggestions","wrap","fieldRef"]);const N=d!=null?d:"";E==null||E({getError(){return!d&&b?"required":(d==null?void 0:d.length)<g?"too short":(d==null?void 0:d.length)>x?"too long":!1}});const[z,j]=reactExports.useState(N),Y=reactExports.useRef(N);reactExports.useEffect(()=>{j(N),Y.current=N},[N]);const B=reactExports.useRef(),U=reactExports.useRef(!1),W=J=>reactExports.createElement(TextField,$t(Fe(Fe({fullWidth:!0,InputLabelProps:z||D.placeholder?{shrink:!0}:void 0},D),J),{ref:L,sx:D.label?D.sx:Object.assign({"& .MuiInputBase-input":{pt:1.5}},D.sx),value:z,onChange(Q){let X=Q.target.value;if(!(k&&X.includes(`
323
- `))){if(T){const re=T(X);if(re===!1)return;X=re}j(X),(v||U.current||B.current===void 0)&&V(Q,X)}},onKeyDown(Q){var X;(X=D.onKeyDown)==null||X.call(D,Q),U.current=Q.code===void 0,Q.key==="Enter"&&Q.target.ariaExpanded!=="true"&&V(Q)},onFocus(Q){B.current=Q.target.value},onBlur(Q){var X;(X=D.onBlur)==null||X.call(D,Q),B.current!==Q.target.value&&V(Q)},InputProps:Fe(Fe($t(Fe({},k&&{multiline:!0}),{startAdornment:S&&reactExports.createElement(InputAdornment,{position:"start"},S),endAdornment:C&&reactExports.createElement(InputAdornment,{position:"end"},C)}),D.InputProps),J==null?void 0:J.InputProps)}));return R?reactExports.createElement(Autocomplete,{freeSolo:!0,options:R,renderInput:W,onChange(J,Q){V(J,Q)}}):W(null);function V(J,Q=z){Q=Q==null?void 0:Q.trim(),Q!==Y.current&&(Y.current=Q,m(Q,{was:d,event:J,cancel(){j(N)}}))}}function SelectField(d){const D=d,{defaultValue:m,value:g=m,onChange:x,setApi:b,options:E,sx:v,disabled:S,afterList:C}=D,T=Vt(D,["defaultValue","value","onChange","setApi","options","sx","disabled","afterList"]),R=reactExports.useMemo(()=>normalizeOptions(E),[E]),k=JSON.stringify(g),L=R==null?void 0:R.find(A=>JSON.stringify(A.value)===k);return reactExports.createElement(TextField,$t(Fe(Fe({select:!0,hiddenLabel:!d.label,value:L?k:"",disabled:(R==null?void 0:R.length)===0||S,children:R?[...R.map((A,I)=>{var N;return reactExports.createElement(MenuItem,{key:I,value:JSON.stringify(A==null?void 0:A.value),disabled:A==null?void 0:A.disabled,children:reactExports.createElement(reactExports.Fragment,{key:I},(N=A==null?void 0:A.label)!=null?N:String(A==null?void 0:A.value))})}),reactExports.createElement("div",{key:-1},C)]:reactExports.createElement(LinearProgress)},commonSelectProps(d)),T),{onChange(A){try{let I=A.target.value;I=JSON.parse(I),x(I,{was:g,event:A})}catch(I){}}}))}function MultiSelectField(g){var x=g,{renderOption:d}=x,m=Vt(x,["renderOption"]);const W=m,{value:b,onChange:E,setApi:v,options:S,placeholder:C,helperText:T,label:R,valueSeparator:k=", ",clearable:L=!0,afterList:D}=W,A=Vt(W,["value","onChange","setApi","options","placeholder","helperText","label","valueSeparator","clearable","afterList"]),I=reactExports.useMemo(()=>normalizeOptions(S),[S]),N=reactExports.useMemo(()=>Array.isArray(b)?b.map(V=>(I==null?void 0:I.find(J=>J.value===V))||{value:V,label:String(V)}):[],[b,I]),z=reactExports.useMemo(()=>(b==null?void 0:b.map(V=>JSON.stringify(V)))||[],[b]),j=useIsMobile(),Y=reactExports.useId(),B=reactExports.useId(),U=!N.length;return d!=null||(d=V=>{var J;return(J=V.label)!=null?J:String(V.value)}),reactExports.createElement(FormControl,{fullWidth:!0,variant:"filled",hiddenLabel:!R},reactExports.createElement(InputLabel,{id:Y,sx:{"&.Mui-focused":{color:"inherit"}}},R),reactExports.createElement(Select,Fe($t(Fe({},commonSelectProps(m)),{multiple:!0,displayEmpty:!0,value:z,onChange:V=>{let{value:J}=V.target;if(!Array.isArray(J)){debugger;return}J=J.map(Q=>Q&&JSON.parse(Q)),E(J,{was:b,event:V})},sx:{"& .MuiSelect-select":{maxHeight:"15em",overflowY:"auto"}},input:reactExports.createElement(FilledInput,{hiddenLabel:!R,"aria-describedby":B}),renderValue:()=>reactExports.createElement("div",{"aria-label":R+": "+N.map(V=>{var J;return(J=V.label)!=null?J:String(V.value)}),style:{overflow:"hidden",display:"flex",flexWrap:"wrap",gap:".5em"},children:U?reactExports.createElement(Box,{position:"relative",top:".3em",fontSize:"small",fontStyle:"italic",color:"text.secondary"},C):N.map((V,J)=>reactExports.createElement("span",{key:J},d(V),J<N.length-1&&k))})}),A),I?!I.length&&reactExports.createElement(ListItemText,{sx:{fontStyle:"italic",ml:1},onClickCapture(V){V.stopPropagation()}},"No options available"):reactExports.createElement(LinearProgress),!j&&(I==null?void 0:I.length)>20&&reactExports.createElement(Box,{sx:{float:"right"},fontSize:"small",width:"8em",textAlign:"right",marginRight:".5em"},"ⓘ You can type the name"),(I==null?void 0:I.length)>1&&reactExports.createElement(Button,{size:"small",sx:{ml:1},ref:V=>V&&Object.assign(V,{role:void 0})&&setTimeout(()=>V.focus()),onClickCapture(V){V.stopPropagation(),E(U?I.map(J=>J.value):[],{was:b,event:V})}},U?"Select all":"Unselect all"),...(I==null?void 0:I.map(V=>reactExports.createElement(MenuItem,{value:JSON.stringify(V==null?void 0:V.value)},reactExports.createElement(Checkbox$1,{checked:(b==null?void 0:b.includes(V.value))||!1}),reactExports.createElement(ListItemText,{primary:d(V)}))))||[],D),reactExports.createElement(FormHelperText,{id:B,error:m.error},T))}function commonSelectProps(d){return{fullWidth:!0,sx:Object.assign({"& .MuiInputBase-inputHiddenLabel":{py:1,"& .MuiInputAdornment-root":{ml:-1}}},d.sx)}}function normalizeOptions(d){return d?Array.isArray(d)?d.map(m=>typeof m=="string"||typeof m=="number"?{value:m}:m):Object.entries(d).map(([m,g])=>({value:g,label:m})):void 0}function DisplayField(x){var b=x,{value:d,empty:m="-"}=b,g=Vt(b,["value","empty"]);return!g.toField&&m!==void 0&&d!==0&&!d&&(d=m),reactExports.createElement(StringField,$t(Fe({},g),{value:d,disabled:!0,onChange(){}}))}function NumberField(R){var k=R,{value:d,onChange:m,setApi:g,required:x,min:b=0,max:E,step:v,unit:S,clearable:C}=k,T=Vt(k,["value","onChange","setApi","required","min","max","step","unit","clearable"]);g==null||g({getError(){return d==null?x?"required":!1:d<b?"too low":d>E?"too high":!1}});const L=useGetSize();return reactExports.createElement(StringField,$t(Fe({type:"number",value:d==null?"":String(d),onChange(D,N){var z=N,{was:A}=z,I=Vt(z,["was"]);m(D?Number(D):null,$t(Fe({},I),{was:A?Number(A):null}))},inputProps:{min:b,max:E,step:v},InputProps:_.merge({sx:{"& input":{appearance:"textfield"}},startAdornment:(C!=null?C:T.placeholder)&&L.w>100&&(d||d===0)&&reactExports.createElement(InputAdornment,{position:"start"},reactExports.createElement(IconButton,{size:"small",edge:"start",sx:{ml:-1,opacity:.5},"aria-label":"clear",onClick(D){m(null,{was:d,event:D})}},reactExports.createElement(Cancel)))},S&&{sx:{pr:"6px","& input":{pl:".2em",textAlign:"right"}},endAdornment:reactExports.createElement(InputAdornment,{position:"end",sx:{mt:"1.2em",ml:"5px","& p":{fontSize:"80%",".Mui-focused &":{color:"text.primary"}}}},S)})},T),{fieldRef:L.refToPass}))}function BoolField(T){var R=T,{label:d="",value:m,onChange:g,setApi:x,helperText:b,error:E,Control:v=Switch,type:S}=R,C=Vt(R,["label","value","onChange","setApi","helperText","error","Control","type"]);const k=()=>m!=null?m:!1,[L,D]=reactExports.useState(k);reactExports.useEffect(()=>D(k),[m]);const A=reactExports.createElement(v,$t(Fe({checked:L},C),{onChange(I){g(I.target.checked,{event:I,was:m})}}));return reactExports.createElement(Box,{ml:1,sx:E?{color:"error.main",outlineOffset:6,outline:"1px solid"}:void 0},reactExports.createElement(FormControlLabel,{label:d,control:A,labelPlacement:"end",sx:Fe({mr:0},C.size==="small"&&{"& .MuiFormControlLabel-label":{fontSize:".9rem"}})}),b&&reactExports.createElement(FormHelperText,{sx:{mt:0},error:E},b))}function CheckboxField(d){return reactExports.createElement(BoolField,Fe({Control:Checkbox$1},d))}const ERROR_CLASS="field-container-with-error";function Form(I){var N=I,{fields:d,values:m,set:g,get:x,defaults:b,save:E,stickyBar:v,addToBar:S=[],barSx:C,formRef:T,onError:R,onValidation:k,saveOnEnter:L,gridProps:D}=N,A=Vt(N,["fields","values","set","get","defaults","save","stickyBar","addToBar","barSx","formRef","onError","onValidation","saveOnEnter","gridProps"]);const z=reactExports.useRef(!1);reactExports.useEffect(()=>(z.current=!0,()=>{z.current=!1}),[]);const[j,Y]=reactExports.useState({}),[B,U]=reactExports.useState({}),W=typeof E=="function"?{onClick:E}:E,[V,J]=reactExports.useState(0),Q=reactExports.useRef(!1),X=reactExports.useRef("");T||(T=reactExports.useRef()),reactExports.useEffect(()=>void ce(),[V]);const re={},ie={};return reactExports.createElement(Box,Fe({component:"form",display:"flex",flexDirection:"column",gap:3,ref:T,onSubmit(fe){fe.preventDefault()},onKeyDown(fe){W&&!W.disabled&&(fe.ctrlKey||fe.metaKey)&&fe.key==="Enter"&&oe()}},A),reactExports.createElement(Grid2,Fe({container:!0,rowSpacing:3,columnSpacing:1},D),d.map((fe,ae)=>{if(!fe)return null;if(reactExports.isValidElement(fe))return reactExports.createElement(Grid2,{key:ae,xs:12},fe);b&&(fe=Fe(Fe({},b==null?void 0:b(fe)),fe));const rt=fe,{k:ue,fromField:pe=_.identity,toField:ge=_.identity,getError:ye,error:Ee,xs:ve=12,sm:Se,md:$e,lg:Me,xl:Re,comp:De=StringField,before:Be,after:Le,parentProps:Ge}=rt,Ie=Vt(rt,["k","fromField","toField","getError","error","xs","sm","md","lg","xl","comp","before","after","parentProps"]);let Ye=j[ue]||Ee||B[ue];Ye===!0&&(Ye="Not valid");const He=!!(Ye||Ee)||void 0;if(ue){const Oe=fe.hasOwnProperty("value")?fe.value:ee(ue);Object.assign(Ie,{name:ue,value:ge(Oe),error:He,setApi(ot){ie[ue]=ot},onKeyDown(ot){L&&ot.key==="Enter"&&oe()},onChange(ot){var ke;try{if(ot=pe(ot,{originalValue:Oe}),U(Ne=>$t(Fe({},Ne),{[ue]:!1})),(((ke=ie[ue])==null?void 0:ke.isEqual)||_.isEqual)(ot,Oe))return;g(ot,ue),Z(ue)}catch(Ne){U(Ke=>$t(Fe({},Ke),{[ue]:(Ne==null?void 0:Ne.message)||String(Ne)||!0}))}}}),Array.isArray(Ie.helperText)&&(Ie.helperText=reactExports.createElement(reactExports.Fragment,{},...Ie.helperText)),Ye&&(Ie.helperText=Ie.helperText?reactExports.createElement(Box,{color:"text.primary",component:"span"},reactExports.createElement(Box,{color:"error.main",style:{borderBottom:"1px solid"},component:"span",display:"block"},Ye),Ie.helperText):Ye),Ie.label===void 0&&(Ie.label=labelFromKey(ue))}const Ve=re[ue]=(re[ue]||0)+1;return reactExports.createElement(Grid2,Fe({key:ue?ue+Ve:ae,xs:ve,sm:Se,md:$e,lg:Me,xl:Re,className:He&&ERROR_CLASS},Ge),Be,reactExports.isValidElement(De)?De:reactExports.createElement(De,Ie),Le)})),W&&reactExports.createElement(Box,{display:"flex",alignItems:"center",sx:Object.assign({},v&&{width:"fit-content",zIndex:2,backgroundColor:"background.paper",borderRadius:1,position:"sticky",bottom:0,p:1,m:-1,boxShadow:"0px 0px 15px #000"},C)},reactExports.createElement(Tooltip,{title:"ctrl + enter",children:reactExports.createElement(LoadingButton,$t(Fe({variant:"contained",startIcon:reactExports.createElement(Save),children:"Save",loading:useDebounce(V!==0)},W),{onClick:oe}))}),...S));function oe(){Q.current=!0,Z()}function Z(fe=""){V===0&&(X.current=fe,setTimeout(()=>J(ae=>ae===0?1:ae)))}function ee(fe){return x?x(fe):m==null?void 0:m[fe]}function ce(){return vt(this,null,function*(){var pe,ge,ye;if(V===0)return;if(V===1)return J(2);const fe="Please review errors",ae={};for(const Ee of d){if(!Ee||reactExports.isValidElement(Ee)||!Ee.k)continue;const{k:ve}=Ee,Se=ee(ve);let $e;try{$e=(yield(ge=(pe=ie[ve])==null?void 0:pe.getError)==null?void 0:ge.call(pe,Se,{values:m,fields:d}))||(yield(ye=Ee.getError)==null?void 0:ye.call(Ee,Se,{values:m,fields:d}))||B[ve]||!1}catch(Me){$e=String(Me)}if(ae[ve]=$e,!Q.current&&ve===X.current)break;if(!z.current)return}Y(ae);const ue=Object.values(ae).some(Boolean);k==null||k(ue&&ae);try{if(!Q.current)return;if(ue)try{return yield R==null?void 0:R(fe)}finally{setTimeout(()=>{var ve,Se;return(Se=(ve=T==null?void 0:T.current)==null?void 0:ve.querySelector("."+ERROR_CLASS))==null?void 0:Se.scrollIntoView({block:"center"})},1)}const Ee=W&&W.onClick;Ee&&(yield Ee())}catch(Ee){yield R==null?void 0:R(Ee)}finally{Q.current=!1,z.current&&J(0)}})}}function labelFromKey(d){return _.upperFirst(d.indexOf("_")>0?d.replace(/_/g," "):d.replace(/([a-z])([A-Z])/g,(m,g,x)=>g+" "+x.toLowerCase()))}function subscribeKey(d,m,g,x){let b=d[m];return subscribe(d,()=>{const E=d[m];Object.is(b,E)||g(b=E)},x)}let currentCleanups;function watch(d,m){let g=!0;const x=new Set,b=new Map,E=()=>{g&&(g=!1,x.forEach(S=>S()),x.clear(),b.forEach(S=>S()),b.clear())},v=()=>vt(this,null,function*(){if(!g)return;x.forEach(T=>T()),x.clear();const S=new Set,C=currentCleanups;currentCleanups=x;try{const T=d(k=>{if(S.add(k),g&&!b.has(k)){const L=subscribe(k,v,m==null?void 0:m.sync);b.set(k,L)}return k}),R=T&&T instanceof Promise?yield T:T;R&&(g?x.add(R):E())}finally{currentCleanups=C}b.forEach((T,R)=>{S.has(R)||(b.delete(R),T())})});return currentCleanups&&currentCleanups.add(E),v(),E}var NOTHING=Symbol.for("immer-nothing"),DRAFTABLE=Symbol.for("immer-draftable"),DRAFT_STATE=Symbol.for("immer-state");function die(d,...m){throw new Error(`[Immer] minified error nr: ${d}. Full error at: https://bit.ly/3cXEKWf`)}var getPrototypeOf=Object.getPrototypeOf;function isDraft(d){return!!d&&!!d[DRAFT_STATE]}function isDraftable(d){var m;return d?isPlainObject(d)||Array.isArray(d)||!!d[DRAFTABLE]||!!((m=d.constructor)!=null&&m[DRAFTABLE])||isMap$1(d)||isSet(d):!1}var objectCtorString=Object.prototype.constructor.toString();function isPlainObject(d){if(!d||typeof d!="object")return!1;const m=getPrototypeOf(d);if(m===null)return!0;const g=Object.hasOwnProperty.call(m,"constructor")&&m.constructor;return g===Object?!0:typeof g=="function"&&Function.toString.call(g)===objectCtorString}function each(d,m){getArchtype(d)===0?Reflect.ownKeys(d).forEach(g=>{m(g,d[g],d)}):d.forEach((g,x)=>m(x,g,d))}function getArchtype(d){const m=d[DRAFT_STATE];return m?m.type_:Array.isArray(d)?1:isMap$1(d)?2:isSet(d)?3:0}function has(d,m){return getArchtype(d)===2?d.has(m):Object.prototype.hasOwnProperty.call(d,m)}function set$1(d,m,g){const x=getArchtype(d);x===2?d.set(m,g):x===3?d.add(g):d[m]=g}function is$3(d,m){return d===m?d!==0||1/d===1/m:d!==d&&m!==m}function isMap$1(d){return d instanceof Map}function isSet(d){return d instanceof Set}function latest(d){return d.copy_||d.base_}function shallowCopy(d,m){if(isMap$1(d))return new Map(d);if(isSet(d))return new Set(d);if(Array.isArray(d))return Array.prototype.slice.call(d);const g=isPlainObject(d);if(m===!0||m==="class_only"&&!g){const x=Object.getOwnPropertyDescriptors(d);delete x[DRAFT_STATE];let b=Reflect.ownKeys(x);for(let E=0;E<b.length;E++){const v=b[E],S=x[v];S.writable===!1&&(S.writable=!0,S.configurable=!0),(S.get||S.set)&&(x[v]={configurable:!0,writable:!0,enumerable:S.enumerable,value:d[v]})}return Object.create(getPrototypeOf(d),x)}else{const x=getPrototypeOf(d);if(x!==null&&g)return Fe({},d);const b=Object.create(x);return Object.assign(b,d)}}function freeze(d,m=!1){return isFrozen(d)||isDraft(d)||!isDraftable(d)||(getArchtype(d)>1&&Object.defineProperties(d,{set:{value:dontMutateFrozenCollections},add:{value:dontMutateFrozenCollections},clear:{value:dontMutateFrozenCollections},delete:{value:dontMutateFrozenCollections}}),Object.freeze(d),m&&Object.values(d).forEach(g=>freeze(g,!0))),d}function dontMutateFrozenCollections(){die(2)}function isFrozen(d){return Object.isFrozen(d)}var plugins={};function getPlugin(d){const m=plugins[d];return m||die(0,d),m}var currentScope;function getCurrentScope(){return currentScope}function createScope(d,m){return{drafts_:[],parent_:d,immer_:m,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function usePatchesInScope(d,m){m&&(getPlugin("Patches"),d.patches_=[],d.inversePatches_=[],d.patchListener_=m)}function revokeScope(d){leaveScope(d),d.drafts_.forEach(revokeDraft),d.drafts_=null}function leaveScope(d){d===currentScope&&(currentScope=d.parent_)}function enterScope(d){return currentScope=createScope(currentScope,d)}function revokeDraft(d){const m=d[DRAFT_STATE];m.type_===0||m.type_===1?m.revoke_():m.revoked_=!0}function processResult(d,m){m.unfinalizedDrafts_=m.drafts_.length;const g=m.drafts_[0];return d!==void 0&&d!==g?(g[DRAFT_STATE].modified_&&(revokeScope(m),die(4)),isDraftable(d)&&(d=finalize(m,d),m.parent_||maybeFreeze(m,d)),m.patches_&&getPlugin("Patches").generateReplacementPatches_(g[DRAFT_STATE].base_,d,m.patches_,m.inversePatches_)):d=finalize(m,g,[]),revokeScope(m),m.patches_&&m.patchListener_(m.patches_,m.inversePatches_),d!==NOTHING?d:void 0}function finalize(d,m,g){if(isFrozen(m))return m;const x=m[DRAFT_STATE];if(!x)return each(m,(b,E)=>finalizeProperty(d,x,m,b,E,g)),m;if(x.scope_!==d)return m;if(!x.modified_)return maybeFreeze(d,x.base_,!0),x.base_;if(!x.finalized_){x.finalized_=!0,x.scope_.unfinalizedDrafts_--;const b=x.copy_;let E=b,v=!1;x.type_===3&&(E=new Set(b),b.clear(),v=!0),each(E,(S,C)=>finalizeProperty(d,x,b,S,C,g,v)),maybeFreeze(d,b,!1),g&&d.patches_&&getPlugin("Patches").generatePatches_(x,g,d.patches_,d.inversePatches_)}return x.copy_}function finalizeProperty(d,m,g,x,b,E,v){if(isDraft(b)){const S=E&&m&&m.type_!==3&&!has(m.assigned_,x)?E.concat(x):void 0,C=finalize(d,b,S);if(set$1(g,x,C),isDraft(C))d.canAutoFreeze_=!1;else return}else v&&g.add(b);if(isDraftable(b)&&!isFrozen(b)){if(!d.immer_.autoFreeze_&&d.unfinalizedDrafts_<1)return;finalize(d,b),(!m||!m.scope_.parent_)&&typeof x!="symbol"&&(isMap$1(g)?g.has(x):Object.prototype.propertyIsEnumerable.call(g,x))&&maybeFreeze(d,b)}}function maybeFreeze(d,m,g=!1){!d.parent_&&d.immer_.autoFreeze_&&d.canAutoFreeze_&&freeze(m,g)}function createProxyProxy(d,m){const g=Array.isArray(d),x={type_:g?1:0,scope_:m?m.scope_:getCurrentScope(),modified_:!1,finalized_:!1,assigned_:{},parent_:m,base_:d,draft_:null,copy_:null,revoke_:null,isManual_:!1};let b=x,E=objectTraps;g&&(b=[x],E=arrayTraps);const{revoke:v,proxy:S}=Proxy.revocable(b,E);return x.draft_=S,x.revoke_=v,S}var objectTraps={get(d,m){if(m===DRAFT_STATE)return d;const g=latest(d);if(!has(g,m))return readPropFromProto(d,g,m);const x=g[m];return d.finalized_||!isDraftable(x)?x:x===peek(d.base_,m)?(prepareCopy(d),d.copy_[m]=createProxy(x,d)):x},has(d,m){return m in latest(d)},ownKeys(d){return Reflect.ownKeys(latest(d))},set(d,m,g){const x=getDescriptorFromProto(latest(d),m);if(x!=null&&x.set)return x.set.call(d.draft_,g),!0;if(!d.modified_){const b=peek(latest(d),m),E=b==null?void 0:b[DRAFT_STATE];if(E&&E.base_===g)return d.copy_[m]=g,d.assigned_[m]=!1,!0;if(is$3(g,b)&&(g!==void 0||has(d.base_,m)))return!0;prepareCopy(d),markChanged(d)}return d.copy_[m]===g&&(g!==void 0||m in d.copy_)||Number.isNaN(g)&&Number.isNaN(d.copy_[m])||(d.copy_[m]=g,d.assigned_[m]=!0),!0},deleteProperty(d,m){return peek(d.base_,m)!==void 0||m in d.base_?(d.assigned_[m]=!1,prepareCopy(d),markChanged(d)):delete d.assigned_[m],d.copy_&&delete d.copy_[m],!0},getOwnPropertyDescriptor(d,m){const g=latest(d),x=Reflect.getOwnPropertyDescriptor(g,m);return x&&{writable:!0,configurable:d.type_!==1||m!=="length",enumerable:x.enumerable,value:g[m]}},defineProperty(){die(11)},getPrototypeOf(d){return getPrototypeOf(d.base_)},setPrototypeOf(){die(12)}},arrayTraps={};each(objectTraps,(d,m)=>{arrayTraps[d]=function(){return arguments[0]=arguments[0][0],m.apply(this,arguments)}});arrayTraps.deleteProperty=function(d,m){return arrayTraps.set.call(this,d,m,void 0)};arrayTraps.set=function(d,m,g){return objectTraps.set.call(this,d[0],m,g,d[0])};function peek(d,m){const g=d[DRAFT_STATE];return(g?latest(g):d)[m]}function readPropFromProto(d,m,g){var b;const x=getDescriptorFromProto(m,g);return x?"value"in x?x.value:(b=x.get)==null?void 0:b.call(d.draft_):void 0}function getDescriptorFromProto(d,m){if(!(m in d))return;let g=getPrototypeOf(d);for(;g;){const x=Object.getOwnPropertyDescriptor(g,m);if(x)return x;g=getPrototypeOf(g)}}function markChanged(d){d.modified_||(d.modified_=!0,d.parent_&&markChanged(d.parent_))}function prepareCopy(d){d.copy_||(d.copy_=shallowCopy(d.base_,d.scope_.immer_.useStrictShallowCopy_))}var Immer2=class{constructor(d){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(m,g,x)=>{if(typeof m=="function"&&typeof g!="function"){const E=g;g=m;const v=this;return function(C=E,...T){return v.produce(C,R=>g.call(this,R,...T))}}typeof g!="function"&&die(6),x!==void 0&&typeof x!="function"&&die(7);let b;if(isDraftable(m)){const E=enterScope(this),v=createProxy(m,void 0);let S=!0;try{b=g(v),S=!1}finally{S?revokeScope(E):leaveScope(E)}return usePatchesInScope(E,x),processResult(b,E)}else if(!m||typeof m!="object"){if(b=g(m),b===void 0&&(b=m),b===NOTHING&&(b=void 0),this.autoFreeze_&&freeze(b,!0),x){const E=[],v=[];getPlugin("Patches").generateReplacementPatches_(m,b,E,v),x(E,v)}return b}else die(1,m)},this.produceWithPatches=(m,g)=>{if(typeof m=="function")return(v,...S)=>this.produceWithPatches(v,C=>m(C,...S));let x,b;return[this.produce(m,g,(v,S)=>{x=v,b=S}),x,b]},typeof(d==null?void 0:d.autoFreeze)=="boolean"&&this.setAutoFreeze(d.autoFreeze),typeof(d==null?void 0:d.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(d.useStrictShallowCopy)}createDraft(d){isDraftable(d)||die(8),isDraft(d)&&(d=current(d));const m=enterScope(this),g=createProxy(d,void 0);return g[DRAFT_STATE].isManual_=!0,leaveScope(m),g}finishDraft(d,m){const g=d&&d[DRAFT_STATE];(!g||!g.isManual_)&&die(9);const{scope_:x}=g;return usePatchesInScope(x,m),processResult(void 0,x)}setAutoFreeze(d){this.autoFreeze_=d}setUseStrictShallowCopy(d){this.useStrictShallowCopy_=d}applyPatches(d,m){let g;for(g=m.length-1;g>=0;g--){const b=m[g];if(b.path.length===0&&b.op==="replace"){d=b.value;break}}g>-1&&(m=m.slice(g+1));const x=getPlugin("Patches").applyPatches_;return isDraft(d)?x(d,m):this.produce(d,b=>x(b,m))}};function createProxy(d,m){const g=isMap$1(d)?getPlugin("MapSet").proxyMap_(d,m):isSet(d)?getPlugin("MapSet").proxySet_(d,m):createProxyProxy(d,m);return(m?m.scope_:getCurrentScope()).drafts_.push(g),g}function current(d){return isDraft(d)||die(10,d),currentImpl(d)}function currentImpl(d){if(!isDraftable(d)||isFrozen(d))return d;const m=d[DRAFT_STATE];let g;if(m){if(!m.modified_)return m.base_;m.finalized_=!0,g=shallowCopy(d,m.scope_.immer_.useStrictShallowCopy_)}else g=shallowCopy(d,!0);return each(g,(x,b)=>{set$1(g,x,currentImpl(b))}),m&&(m.finalized_=!1),g}var immer=new Immer2,produce=immer.produce;const STORAGE_KEY="admin_state",INIT={title:"",config:{},selectedFiles:[],accountsAsTree:!1,movingFile:"",vfs:void 0,expanded:[],loginRequired:!1,username:"",monitorOnlyFiles:!0,monitorWithLog:!0,customHtmlSection:"",darkTheme:void 0,dataTablePersistence:{},hideRandomPlugin:!1,onlinePluginsColumns:{version:!1,pushed_at:!1,license:!1}};Object.assign(INIT,JSON.parse(localStorage[STORAGE_KEY]||null));const state$1=proxy(INIT);Object.assign(window,{state:state$1});const SETTINGS_TO_STORE$1=["onlinePluginsColumns","monitorOnlyFiles","monitorWithLog","customHtmlSection","darkTheme","dataTablePersistence","accountsAsTree","hideRandomPlugin"],storeSettings$1=_.debounce(()=>localStorage[STORAGE_KEY]=JSON.stringify(_.pick(state$1,SETTINGS_TO_STORE$1)),500,{maxWait:1e3});for(const d of SETTINGS_TO_STORE$1)subscribeKey(state$1,d,storeSettings$1);function useSnapState$1(){return useSnapshot(state$1)}function updateStateObject(d,m,g){d[m]=produce(d[m],g)}function useDark(){return useMediaQuery$1("(prefers-color-scheme: dark)")}const EMPTY$1={};function useMyTheme(){const{darkTheme:d}=useSnapState$1(),m=useDark(),g=(d!=null?d:m)?null:EMPTY$1;return reactExports.useMemo(()=>createTheme({palette:g||{mode:"dark",text:{primary:"#bbb",secondary:"#fff6"},primary:{main:"#469",light:"#68c"},secondary:{main:"#969"}},typography:{fontFamily:'Roboto, "Noto sans", "Segoe UI", "San Francisco", "Helvetica Neue", Arial, sans-serif'},components:{MuiLink:{defaultProps:g||{color:"primary.light"}},MuiTextField:{defaultProps:{variant:"filled"},styleOverrides:g||{root:{"& label.Mui-focused":{color:"#ccc"}}}},MuiButton:{defaultProps:{variant:"outlined"},styleOverrides:g||{root({ownerState:x}){return x.color==="primary"&&{color:x.variant==="contained"?"#ddd":"#68c"}}}}}}),[g])}function SwitchThemeBtn(d){const{darkTheme:m}=useSnapState$1(),g=useDark(),x=m!=null?m:g;return reactExports.createElement(Btn$1,Fe({icon:x?Brightness7:Brightness4,onClick:()=>{const b=!x;return state$1.darkTheme=g===b?void 0:b}},d),x?"Light theme":"Dark theme")}dialogsDefaults.Container=function(m){const g=reactExports.useRef(),x=useIsMobile();reactExports.useEffect(()=>{const T=setTimeout(()=>{const R=g.current;R&&(R.focus(),!x&&(focusSelector("[autofocus]",R)||focusSelector(focusableSelector,R)))});return()=>clearTimeout(T)},[g.current]);const b=useDialogBarColors();m=Fe(Fe({},dialogsDefaults),m);const C=m.dialogProps||{},{sx:E,root:v}=C,S=Vt(C,["sx","root"]);return m.noFrame?reactExports.createElement(Modal,{open:!0,children:reactExports.createElement(Center,{},reactExports.createElement(m.Content))}):reactExports.createElement(Dialog$1,$t(Fe(Fe({open:!0,maxWidth:!1,fullScreen:x},S),v),{className:m.className,onClose:()=>closeDialog()}),m.title&&reactExports.createElement(DialogTitle,{sx:Fe({position:"sticky",top:0,p:1,zIndex:2,boxShadow:"0 0 8px #0004",display:"flex",alignItems:"center"},b)},m.icon&&componentOrNode(m.icon),reactExports.createElement(Box,{flex:1,minWidth:40,ml:1},componentOrNode(m.title)),m.closable&&reactExports.createElement(IconBtn,{icon:Close,title:"Close",onClick:()=>closeDialog()})),reactExports.createElement(DialogContent,{ref:g,sx:Fe({p:m.padding?{xs:1,sm:void 0}:0,pt:"16px !important",overflow:"initial",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"stretch"},E)},reactExports.createElement(m.Content)))};function useDialogBarColors(){const{darkTheme:d}=useSnapState$1();return(d!=null?d:useDark())?{bgcolor:"#2d2d2d"}:{bgcolor:"#ccc",color:"#444"}}const type2ico={error:ErrorIcon,warning:Warning,info:Info,success:Check};function alertDialog$1(d,m){var C;const g=typeof m=="string"?{type:m}:m!=null?m:{};let S=g,{type:x="info"}=S,b=Vt(S,["type"]);d instanceof Error&&(d=err2msg$1(d.message||d.code),x="error");const E=pendingPromise(),v=newDialog($t(Fe({className:"dialog-alert dialog-alert-"+x,icon:(C=g.icon)!=null?C:reactExports.createElement(type2ico[x],{color:x}),onClose:E.resolve,title:_.upperFirst(x),dialogProps:{fullScreen:!1}},b),{Content(){return reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"center",gap:1},reactExports.isValidElement(d)?d:reactExports.createElement(Box,{fontSize:"large",lineHeight:"1.8em",pb:1},String(d)))}}));return Object.assign(E,v)}function confirmDialog$1(d,S={}){var C=S,{href:m,trueText:g="Go",falseText:x="Don't",before:b,after:E}=C,v=Vt(C,["href","trueText","falseText","before","after"]);const T=pendingPromise(),R=newDialog($t(Fe({className:"dialog-confirm",onClose:T.resolve,dialogProps:{sx:{alignItems:"center"}}},v),{Content:k}));return Object.assign(T,R);function k(){return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{mb:2},typeof d=="string"?md(d):d),reactExports.createElement(Flex$1,{},b==null?void 0:b({onClick:L=>R.close(L)}),reactExports.createElement("a",{href:m,onClick:()=>R.close(!0)},reactExports.createElement(Button,{variant:"contained"},g)),reactExports.createElement(Button,{onClick:()=>R.close(!1)},x),E==null?void 0:E({onClick:L=>R.close(L)})))}}function formDialog$1(b){return vt(this,null,function*(){var E=b,{form:d,values:m,Wrapper:g}=E,x=Vt(E,["form","values","Wrapper"]);let v;return new Promise(S=>{const C=newDialog($t(Fe({className:"dialog-form",onClose:T=>S(T||v)},x),{Content(){const[T,R]=reactExports.useState(m||{}),A=typeof d=="function"?d(T):d,{onChange:k,before:L}=A,D=Vt(A,["onChange","before"]);return D.save===!1&&(v=T),reactExports.createElement(g||reactExports.Fragment,{},L,reactExports.createElement(Form,$t(Fe({},D),{values:T,set(I,N){R(z=>{const j=$t(Fe({},z),{[N]:I});return k==null||k(j,{setValues:R}),j})},save:D.save!==!1&&Fe({onClick(){C.close(T)}},D.save)})))}}))})})}function promptDialog$1(C){return vt(this,arguments,function*(d,v={}){var S=v,{value:m="",field:g,save:x,addToBar:b=[]}=S,E=Vt(S,["value","field","save","addToBar"]);return formDialog$1($t(Fe({},E),{values:{text:m},form:Fe({fields:[$t(Fe({k:"text",label:null,autoFocus:!0},g),{before:reactExports.createElement(Box,{mb:2},d)})],save:Fe({children:"Continue",startIcon:reactExports.createElement(Forward)},x),saveOnEnter:!0,barSx:{gap:2},addToBar:[reactExports.createElement(Button,{onClick:closeDialog},"Cancel"),...b]},E.form)})).then(T=>T==null?void 0:T.text)})}function waitDialog(){return newDialog({Content:()=>reactExports.createElement(CircularProgress,{size:"20vw"}),noFrame:!0,closable:!1}).close}function toast$1(d,m="info",g){const b=newDialog($t(Fe({},g),{Content:E,dialogProps:{fullScreen:!1,PaperProps:{sx:{transition:"opacity 3000ms ease-in"},ref(v){v&&(v.style.opacity="0")}}}}));return setTimeout(b.close,3e3),b;function E(){return reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"center",gap:1},reactExports.isValidElement(m)?m:reactExports.createElement(type2ico[m],{color:m}),reactExports.isValidElement(d)?d:reactExports.createElement("div",{},String(d)))}}const ALL=`🇦🇫|AF|Afghanistan
323
+ `))){if(T){const re=T(X);if(re===!1)return;X=re}j(X),(v||U.current||B.current===void 0)&&V(Q,X)}},onKeyDown(Q){var X;(X=D.onKeyDown)==null||X.call(D,Q),U.current=Q.code===void 0,Q.key==="Enter"&&Q.target.ariaExpanded!=="true"&&V(Q)},onFocus(Q){B.current=Q.target.value},onBlur(Q){var X;(X=D.onBlur)==null||X.call(D,Q),B.current!==Q.target.value&&V(Q)},InputProps:Fe(Fe($t(Fe({},k&&{multiline:!0}),{startAdornment:S&&reactExports.createElement(InputAdornment,{position:"start"},S),endAdornment:C&&reactExports.createElement(InputAdornment,{position:"end"},C)}),D.InputProps),J==null?void 0:J.InputProps)}));return R?reactExports.createElement(Autocomplete,{freeSolo:!0,options:R,renderInput:W,onChange(J,Q){V(J,Q)}}):W(null);function V(J,Q=z){Q=Q==null?void 0:Q.trim(),Q!==Y.current&&(Y.current=Q,m(Q,{was:d,event:J,cancel(){j(N)}}))}}function SelectField(d){const D=d,{defaultValue:m,value:g=m,onChange:x,setApi:b,options:E,sx:v,disabled:S,afterList:C}=D,T=Vt(D,["defaultValue","value","onChange","setApi","options","sx","disabled","afterList"]),R=reactExports.useMemo(()=>normalizeOptions(E),[E]),k=JSON.stringify(g),L=R==null?void 0:R.find(A=>JSON.stringify(A.value)===k);return reactExports.createElement(TextField,$t(Fe(Fe({select:!0,hiddenLabel:!d.label,value:L?k:"",disabled:(R==null?void 0:R.length)===0||S,children:R?[...R.map((A,I)=>{var N;return reactExports.createElement(MenuItem,{key:I,value:JSON.stringify(A==null?void 0:A.value),disabled:A==null?void 0:A.disabled,children:reactExports.createElement(reactExports.Fragment,{key:I},(N=A==null?void 0:A.label)!=null?N:String(A==null?void 0:A.value))})}),reactExports.createElement("div",{key:-1},C)]:reactExports.createElement(LinearProgress)},commonSelectProps(d)),T),{onChange(A){try{let I=A.target.value;I=JSON.parse(I),x(I,{was:g,event:A})}catch(I){}}}))}function MultiSelectField(g){var x=g,{renderOption:d}=x,m=Vt(x,["renderOption"]);const W=m,{value:b,onChange:E,setApi:v,options:S,placeholder:C,helperText:T,label:R,valueSeparator:k=", ",clearable:L=!0,afterList:D}=W,A=Vt(W,["value","onChange","setApi","options","placeholder","helperText","label","valueSeparator","clearable","afterList"]),I=reactExports.useMemo(()=>normalizeOptions(S),[S]),N=reactExports.useMemo(()=>Array.isArray(b)?b.map(V=>(I==null?void 0:I.find(J=>J.value===V))||{value:V,label:String(V)}):[],[b,I]),z=reactExports.useMemo(()=>(b==null?void 0:b.map(V=>JSON.stringify(V)))||[],[b]),j=useIsMobile(),Y=reactExports.useId(),B=reactExports.useId(),U=!N.length;return d!=null||(d=V=>{var J;return(J=V.label)!=null?J:String(V.value)}),reactExports.createElement(FormControl,{fullWidth:!0,variant:"filled",hiddenLabel:!R},reactExports.createElement(InputLabel,{id:Y,sx:{"&.Mui-focused":{color:"inherit"}}},R),reactExports.createElement(Select,Fe($t(Fe({},commonSelectProps(m)),{multiple:!0,displayEmpty:!0,value:z,onChange:V=>{let{value:J}=V.target;if(!Array.isArray(J)){debugger;return}J=J.map(Q=>Q&&JSON.parse(Q)),E(J,{was:b,event:V})},sx:{"& .MuiSelect-select":{maxHeight:"15em",overflowY:"auto"}},input:reactExports.createElement(FilledInput,{hiddenLabel:!R,"aria-describedby":B}),renderValue:()=>reactExports.createElement("div",{"aria-label":R+": "+N.map(V=>{var J;return(J=V.label)!=null?J:String(V.value)}),style:{overflow:"hidden",display:"flex",flexWrap:"wrap",gap:".5em"},children:U?reactExports.createElement(Box,{position:"relative",top:".3em",fontSize:"small",fontStyle:"italic",color:"text.secondary"},C):N.map((V,J)=>reactExports.createElement("span",{key:J},d(V),J<N.length-1&&k))})}),A),I?!I.length&&reactExports.createElement(ListItemText,{sx:{fontStyle:"italic",ml:1},onClickCapture(V){V.stopPropagation()}},"No options available"):reactExports.createElement(LinearProgress),!j&&(I==null?void 0:I.length)>20&&reactExports.createElement(Box,{sx:{float:"right"},fontSize:"small",width:"8em",textAlign:"right",marginRight:".5em"},"ⓘ You can type the name"),(I==null?void 0:I.length)>1&&reactExports.createElement(Button,{size:"small",sx:{ml:1},ref:V=>V&&Object.assign(V,{role:void 0})&&setTimeout(()=>V.focus()),onClickCapture(V){V.stopPropagation(),E(U?I.map(J=>J.value):[],{was:b,event:V})}},U?"Select all":"Unselect all"),...(I==null?void 0:I.map(V=>reactExports.createElement(MenuItem,{value:JSON.stringify(V==null?void 0:V.value)},reactExports.createElement(Checkbox$1,{checked:(b==null?void 0:b.includes(V.value))||!1}),reactExports.createElement(ListItemText,{primary:d(V)}))))||[],D),reactExports.createElement(FormHelperText,{id:B,error:m.error},T))}function commonSelectProps(d){return{fullWidth:!0,sx:Object.assign({"& .MuiInputBase-inputHiddenLabel":{py:1,"& .MuiInputAdornment-root":{ml:-1}}},d.sx)}}function normalizeOptions(d){return d?Array.isArray(d)?d.map(m=>typeof m=="string"||typeof m=="number"?{value:m}:m):Object.entries(d).map(([m,g])=>({value:g,label:m})):void 0}function DisplayField(x){var b=x,{value:d,empty:m="-"}=b,g=Vt(b,["value","empty"]);return!g.toField&&m!==void 0&&d!==0&&!d&&(d=m),reactExports.createElement(StringField,$t(Fe({},g),{value:d,disabled:!0,onChange(){}}))}function NumberField(R){var k=R,{value:d,onChange:m,setApi:g,required:x,min:b=0,max:E,step:v,unit:S,clearable:C}=k,T=Vt(k,["value","onChange","setApi","required","min","max","step","unit","clearable"]);g==null||g({getError(){return d==null?x?"required":!1:d<b?"too low":d>E?"too high":!1}});const L=useGetSize();return reactExports.createElement(StringField,$t(Fe({type:"number",value:d==null?"":String(d),onChange(D,N){var z=N,{was:A}=z,I=Vt(z,["was"]);m(D?Number(D):null,$t(Fe({},I),{was:A?Number(A):null}))},inputProps:{min:b,max:E,step:v},InputProps:_.merge({sx:{"& input":{appearance:"textfield"}},startAdornment:(C!=null?C:T.placeholder)&&L.w>100&&(d||d===0)&&reactExports.createElement(InputAdornment,{position:"start"},reactExports.createElement(IconButton,{size:"small",edge:"start",sx:{ml:-1,opacity:.5},"aria-label":"clear",onClick(D){m(null,{was:d,event:D})}},reactExports.createElement(Cancel)))},S&&{sx:{pr:"6px","& input":{pl:".2em",textAlign:"right"}},endAdornment:reactExports.createElement(InputAdornment,{position:"end",sx:{mt:"1.2em",ml:"5px","& p":{fontSize:"80%",".Mui-focused &":{color:"text.primary"}}}},S)})},T),{fieldRef:L.refToPass}))}function BoolField(T){var R=T,{label:d="",value:m,onChange:g,setApi:x,helperText:b,error:E,Control:v=Switch,type:S}=R,C=Vt(R,["label","value","onChange","setApi","helperText","error","Control","type"]);const k=()=>m!=null?m:!1,[L,D]=reactExports.useState(k);reactExports.useEffect(()=>D(k),[m]);const A=reactExports.createElement(v,$t(Fe({checked:L},C),{onChange(I){g(I.target.checked,{event:I,was:m})}}));return reactExports.createElement(Box,{ml:1,sx:E?{color:"error.main",outlineOffset:6,outline:"1px solid"}:void 0},reactExports.createElement(FormControlLabel,{label:d,control:A,labelPlacement:"end",sx:Fe({mr:0},C.size==="small"&&{"& .MuiFormControlLabel-label":{fontSize:".9rem"}})}),b&&reactExports.createElement(FormHelperText,{sx:{mt:0},error:E},b))}function CheckboxField(d){return reactExports.createElement(BoolField,Fe({Control:Checkbox$1},d))}const ERROR_CLASS="field-container-with-error";function Form(I){var N=I,{fields:d,values:m,set:g,get:x,defaults:b,save:E,stickyBar:v,addToBar:S=[],barSx:C,formRef:T,onError:R,onValidation:k,saveOnEnter:L,gridProps:D}=N,A=Vt(N,["fields","values","set","get","defaults","save","stickyBar","addToBar","barSx","formRef","onError","onValidation","saveOnEnter","gridProps"]);const z=reactExports.useRef(!1);reactExports.useEffect(()=>(z.current=!0,()=>{z.current=!1}),[]);const[j,Y]=reactExports.useState({}),[B,U]=reactExports.useState({}),W=typeof E=="function"?{onClick:E}:E,[V,J]=reactExports.useState(0),Q=reactExports.useRef(!1),X=reactExports.useRef("");T||(T=reactExports.useRef()),reactExports.useEffect(()=>void ce(),[V]);const re={},ie={};return reactExports.createElement(Box,Fe({component:"form",display:"flex",flexDirection:"column",gap:3,ref:T,onSubmit(fe){fe.preventDefault()},onKeyDown(fe){W&&!W.disabled&&(fe.ctrlKey||fe.metaKey)&&fe.key==="Enter"&&oe()}},A),reactExports.createElement(Grid2,Fe({container:!0,rowSpacing:3,columnSpacing:1},D),d.map((fe,ae)=>{if(!fe)return null;if(reactExports.isValidElement(fe))return reactExports.createElement(Grid2,{key:ae,xs:12},fe);b&&(fe=Fe(Fe({},b==null?void 0:b(fe)),fe));const rt=fe,{k:ue,fromField:pe=_.identity,toField:ge=_.identity,getError:ye,error:Ee,xs:ve=12,sm:Se,md:$e,lg:Me,xl:Re,comp:De=StringField,before:Be,after:Le,parentProps:Ge}=rt,Ie=Vt(rt,["k","fromField","toField","getError","error","xs","sm","md","lg","xl","comp","before","after","parentProps"]);let Ye=j[ue]||Ee||B[ue];Ye===!0&&(Ye="Not valid");const He=!!(Ye||Ee)||void 0;if(ue){const Oe=fe.hasOwnProperty("value")?fe.value:ee(ue);Object.assign(Ie,{name:ue,value:ge(Oe),error:He,setApi(ot){ie[ue]=ot},onKeyDown(ot){L&&ot.key==="Enter"&&oe()},onChange(ot){var ke;try{if(ot=pe(ot,{originalValue:Oe}),U(Ne=>$t(Fe({},Ne),{[ue]:!1})),(((ke=ie[ue])==null?void 0:ke.isEqual)||_.isEqual)(ot,Oe))return;g(ot,ue),Z(ue)}catch(Ne){U(Ke=>$t(Fe({},Ke),{[ue]:(Ne==null?void 0:Ne.message)||String(Ne)||!0}))}}}),Array.isArray(Ie.helperText)&&(Ie.helperText=reactExports.createElement(reactExports.Fragment,{},...Ie.helperText)),Ye&&(Ie.helperText=Ie.helperText?reactExports.createElement(Box,{color:"text.primary",component:"span"},reactExports.createElement(Box,{color:"error.main",style:{borderBottom:"1px solid"},component:"span",display:"block"},Ye),Ie.helperText):Ye),Ie.label===void 0&&(Ie.label=labelFromKey(ue))}const Ve=re[ue]=(re[ue]||0)+1;return reactExports.createElement(Grid2,Fe({key:ue?ue+Ve:ae,xs:ve,sm:Se,md:$e,lg:Me,xl:Re,className:He&&ERROR_CLASS},Ge),Be,reactExports.isValidElement(De)?De:reactExports.createElement(De,Ie),Le)})),W&&reactExports.createElement(Box,{display:"flex",alignItems:"center",sx:Object.assign({},v&&{width:"fit-content",zIndex:2,backgroundColor:"background.paper",borderRadius:1,position:"sticky",bottom:0,p:1,m:-1,boxShadow:"0px 0px 15px #000"},C)},reactExports.createElement(Tooltip,{title:"ctrl + enter",children:reactExports.createElement(LoadingButton,$t(Fe({variant:"contained",startIcon:reactExports.createElement(Save),children:"Save",loading:useDebounce(V!==0)},W),{onClick:oe}))}),...S));function oe(){Q.current=!0,Z()}function Z(fe=""){V===0&&(X.current=fe,setTimeout(()=>J(ae=>ae===0?1:ae)))}function ee(fe){return x?x(fe):m==null?void 0:m[fe]}function ce(){return yt(this,null,function*(){var pe,ge,ye;if(V===0)return;if(V===1)return J(2);const fe="Please review errors",ae={};for(const Ee of d){if(!Ee||reactExports.isValidElement(Ee)||!Ee.k)continue;const{k:ve}=Ee,Se=ee(ve);let $e;try{$e=(yield(ge=(pe=ie[ve])==null?void 0:pe.getError)==null?void 0:ge.call(pe,Se,{values:m,fields:d}))||(yield(ye=Ee.getError)==null?void 0:ye.call(Ee,Se,{values:m,fields:d}))||B[ve]||!1}catch(Me){$e=String(Me)}if(ae[ve]=$e,!Q.current&&ve===X.current)break;if(!z.current)return}Y(ae);const ue=Object.values(ae).some(Boolean);k==null||k(ue&&ae);try{if(!Q.current)return;if(ue)try{return yield R==null?void 0:R(fe)}finally{setTimeout(()=>{var ve,Se;return(Se=(ve=T==null?void 0:T.current)==null?void 0:ve.querySelector("."+ERROR_CLASS))==null?void 0:Se.scrollIntoView({block:"center"})},1)}const Ee=W&&W.onClick;Ee&&(yield Ee())}catch(Ee){yield R==null?void 0:R(Ee)}finally{Q.current=!1,z.current&&J(0)}})}}function labelFromKey(d){return _.upperFirst(d.indexOf("_")>0?d.replace(/_/g," "):d.replace(/([a-z])([A-Z])/g,(m,g,x)=>g+" "+x.toLowerCase()))}function subscribeKey(d,m,g,x){let b=d[m];return subscribe(d,()=>{const E=d[m];Object.is(b,E)||g(b=E)},x)}let currentCleanups;function watch(d,m){let g=!0;const x=new Set,b=new Map,E=()=>{g&&(g=!1,x.forEach(S=>S()),x.clear(),b.forEach(S=>S()),b.clear())},v=()=>yt(this,null,function*(){if(!g)return;x.forEach(T=>T()),x.clear();const S=new Set,C=currentCleanups;currentCleanups=x;try{const T=d(k=>{if(S.add(k),g&&!b.has(k)){const L=subscribe(k,v,m==null?void 0:m.sync);b.set(k,L)}return k}),R=T&&T instanceof Promise?yield T:T;R&&(g?x.add(R):E())}finally{currentCleanups=C}b.forEach((T,R)=>{S.has(R)||(b.delete(R),T())})});return currentCleanups&&currentCleanups.add(E),v(),E}var NOTHING=Symbol.for("immer-nothing"),DRAFTABLE=Symbol.for("immer-draftable"),DRAFT_STATE=Symbol.for("immer-state");function die(d,...m){throw new Error(`[Immer] minified error nr: ${d}. Full error at: https://bit.ly/3cXEKWf`)}var getPrototypeOf=Object.getPrototypeOf;function isDraft(d){return!!d&&!!d[DRAFT_STATE]}function isDraftable(d){var m;return d?isPlainObject(d)||Array.isArray(d)||!!d[DRAFTABLE]||!!((m=d.constructor)!=null&&m[DRAFTABLE])||isMap$1(d)||isSet(d):!1}var objectCtorString=Object.prototype.constructor.toString();function isPlainObject(d){if(!d||typeof d!="object")return!1;const m=getPrototypeOf(d);if(m===null)return!0;const g=Object.hasOwnProperty.call(m,"constructor")&&m.constructor;return g===Object?!0:typeof g=="function"&&Function.toString.call(g)===objectCtorString}function each(d,m){getArchtype(d)===0?Reflect.ownKeys(d).forEach(g=>{m(g,d[g],d)}):d.forEach((g,x)=>m(x,g,d))}function getArchtype(d){const m=d[DRAFT_STATE];return m?m.type_:Array.isArray(d)?1:isMap$1(d)?2:isSet(d)?3:0}function has(d,m){return getArchtype(d)===2?d.has(m):Object.prototype.hasOwnProperty.call(d,m)}function set$1(d,m,g){const x=getArchtype(d);x===2?d.set(m,g):x===3?d.add(g):d[m]=g}function is$3(d,m){return d===m?d!==0||1/d===1/m:d!==d&&m!==m}function isMap$1(d){return d instanceof Map}function isSet(d){return d instanceof Set}function latest(d){return d.copy_||d.base_}function shallowCopy(d,m){if(isMap$1(d))return new Map(d);if(isSet(d))return new Set(d);if(Array.isArray(d))return Array.prototype.slice.call(d);const g=isPlainObject(d);if(m===!0||m==="class_only"&&!g){const x=Object.getOwnPropertyDescriptors(d);delete x[DRAFT_STATE];let b=Reflect.ownKeys(x);for(let E=0;E<b.length;E++){const v=b[E],S=x[v];S.writable===!1&&(S.writable=!0,S.configurable=!0),(S.get||S.set)&&(x[v]={configurable:!0,writable:!0,enumerable:S.enumerable,value:d[v]})}return Object.create(getPrototypeOf(d),x)}else{const x=getPrototypeOf(d);if(x!==null&&g)return Fe({},d);const b=Object.create(x);return Object.assign(b,d)}}function freeze(d,m=!1){return isFrozen(d)||isDraft(d)||!isDraftable(d)||(getArchtype(d)>1&&Object.defineProperties(d,{set:{value:dontMutateFrozenCollections},add:{value:dontMutateFrozenCollections},clear:{value:dontMutateFrozenCollections},delete:{value:dontMutateFrozenCollections}}),Object.freeze(d),m&&Object.values(d).forEach(g=>freeze(g,!0))),d}function dontMutateFrozenCollections(){die(2)}function isFrozen(d){return Object.isFrozen(d)}var plugins={};function getPlugin(d){const m=plugins[d];return m||die(0,d),m}var currentScope;function getCurrentScope(){return currentScope}function createScope(d,m){return{drafts_:[],parent_:d,immer_:m,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function usePatchesInScope(d,m){m&&(getPlugin("Patches"),d.patches_=[],d.inversePatches_=[],d.patchListener_=m)}function revokeScope(d){leaveScope(d),d.drafts_.forEach(revokeDraft),d.drafts_=null}function leaveScope(d){d===currentScope&&(currentScope=d.parent_)}function enterScope(d){return currentScope=createScope(currentScope,d)}function revokeDraft(d){const m=d[DRAFT_STATE];m.type_===0||m.type_===1?m.revoke_():m.revoked_=!0}function processResult(d,m){m.unfinalizedDrafts_=m.drafts_.length;const g=m.drafts_[0];return d!==void 0&&d!==g?(g[DRAFT_STATE].modified_&&(revokeScope(m),die(4)),isDraftable(d)&&(d=finalize(m,d),m.parent_||maybeFreeze(m,d)),m.patches_&&getPlugin("Patches").generateReplacementPatches_(g[DRAFT_STATE].base_,d,m.patches_,m.inversePatches_)):d=finalize(m,g,[]),revokeScope(m),m.patches_&&m.patchListener_(m.patches_,m.inversePatches_),d!==NOTHING?d:void 0}function finalize(d,m,g){if(isFrozen(m))return m;const x=m[DRAFT_STATE];if(!x)return each(m,(b,E)=>finalizeProperty(d,x,m,b,E,g)),m;if(x.scope_!==d)return m;if(!x.modified_)return maybeFreeze(d,x.base_,!0),x.base_;if(!x.finalized_){x.finalized_=!0,x.scope_.unfinalizedDrafts_--;const b=x.copy_;let E=b,v=!1;x.type_===3&&(E=new Set(b),b.clear(),v=!0),each(E,(S,C)=>finalizeProperty(d,x,b,S,C,g,v)),maybeFreeze(d,b,!1),g&&d.patches_&&getPlugin("Patches").generatePatches_(x,g,d.patches_,d.inversePatches_)}return x.copy_}function finalizeProperty(d,m,g,x,b,E,v){if(isDraft(b)){const S=E&&m&&m.type_!==3&&!has(m.assigned_,x)?E.concat(x):void 0,C=finalize(d,b,S);if(set$1(g,x,C),isDraft(C))d.canAutoFreeze_=!1;else return}else v&&g.add(b);if(isDraftable(b)&&!isFrozen(b)){if(!d.immer_.autoFreeze_&&d.unfinalizedDrafts_<1)return;finalize(d,b),(!m||!m.scope_.parent_)&&typeof x!="symbol"&&(isMap$1(g)?g.has(x):Object.prototype.propertyIsEnumerable.call(g,x))&&maybeFreeze(d,b)}}function maybeFreeze(d,m,g=!1){!d.parent_&&d.immer_.autoFreeze_&&d.canAutoFreeze_&&freeze(m,g)}function createProxyProxy(d,m){const g=Array.isArray(d),x={type_:g?1:0,scope_:m?m.scope_:getCurrentScope(),modified_:!1,finalized_:!1,assigned_:{},parent_:m,base_:d,draft_:null,copy_:null,revoke_:null,isManual_:!1};let b=x,E=objectTraps;g&&(b=[x],E=arrayTraps);const{revoke:v,proxy:S}=Proxy.revocable(b,E);return x.draft_=S,x.revoke_=v,S}var objectTraps={get(d,m){if(m===DRAFT_STATE)return d;const g=latest(d);if(!has(g,m))return readPropFromProto(d,g,m);const x=g[m];return d.finalized_||!isDraftable(x)?x:x===peek(d.base_,m)?(prepareCopy(d),d.copy_[m]=createProxy(x,d)):x},has(d,m){return m in latest(d)},ownKeys(d){return Reflect.ownKeys(latest(d))},set(d,m,g){const x=getDescriptorFromProto(latest(d),m);if(x!=null&&x.set)return x.set.call(d.draft_,g),!0;if(!d.modified_){const b=peek(latest(d),m),E=b==null?void 0:b[DRAFT_STATE];if(E&&E.base_===g)return d.copy_[m]=g,d.assigned_[m]=!1,!0;if(is$3(g,b)&&(g!==void 0||has(d.base_,m)))return!0;prepareCopy(d),markChanged(d)}return d.copy_[m]===g&&(g!==void 0||m in d.copy_)||Number.isNaN(g)&&Number.isNaN(d.copy_[m])||(d.copy_[m]=g,d.assigned_[m]=!0),!0},deleteProperty(d,m){return peek(d.base_,m)!==void 0||m in d.base_?(d.assigned_[m]=!1,prepareCopy(d),markChanged(d)):delete d.assigned_[m],d.copy_&&delete d.copy_[m],!0},getOwnPropertyDescriptor(d,m){const g=latest(d),x=Reflect.getOwnPropertyDescriptor(g,m);return x&&{writable:!0,configurable:d.type_!==1||m!=="length",enumerable:x.enumerable,value:g[m]}},defineProperty(){die(11)},getPrototypeOf(d){return getPrototypeOf(d.base_)},setPrototypeOf(){die(12)}},arrayTraps={};each(objectTraps,(d,m)=>{arrayTraps[d]=function(){return arguments[0]=arguments[0][0],m.apply(this,arguments)}});arrayTraps.deleteProperty=function(d,m){return arrayTraps.set.call(this,d,m,void 0)};arrayTraps.set=function(d,m,g){return objectTraps.set.call(this,d[0],m,g,d[0])};function peek(d,m){const g=d[DRAFT_STATE];return(g?latest(g):d)[m]}function readPropFromProto(d,m,g){var b;const x=getDescriptorFromProto(m,g);return x?"value"in x?x.value:(b=x.get)==null?void 0:b.call(d.draft_):void 0}function getDescriptorFromProto(d,m){if(!(m in d))return;let g=getPrototypeOf(d);for(;g;){const x=Object.getOwnPropertyDescriptor(g,m);if(x)return x;g=getPrototypeOf(g)}}function markChanged(d){d.modified_||(d.modified_=!0,d.parent_&&markChanged(d.parent_))}function prepareCopy(d){d.copy_||(d.copy_=shallowCopy(d.base_,d.scope_.immer_.useStrictShallowCopy_))}var Immer2=class{constructor(d){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(m,g,x)=>{if(typeof m=="function"&&typeof g!="function"){const E=g;g=m;const v=this;return function(C=E,...T){return v.produce(C,R=>g.call(this,R,...T))}}typeof g!="function"&&die(6),x!==void 0&&typeof x!="function"&&die(7);let b;if(isDraftable(m)){const E=enterScope(this),v=createProxy(m,void 0);let S=!0;try{b=g(v),S=!1}finally{S?revokeScope(E):leaveScope(E)}return usePatchesInScope(E,x),processResult(b,E)}else if(!m||typeof m!="object"){if(b=g(m),b===void 0&&(b=m),b===NOTHING&&(b=void 0),this.autoFreeze_&&freeze(b,!0),x){const E=[],v=[];getPlugin("Patches").generateReplacementPatches_(m,b,E,v),x(E,v)}return b}else die(1,m)},this.produceWithPatches=(m,g)=>{if(typeof m=="function")return(v,...S)=>this.produceWithPatches(v,C=>m(C,...S));let x,b;return[this.produce(m,g,(v,S)=>{x=v,b=S}),x,b]},typeof(d==null?void 0:d.autoFreeze)=="boolean"&&this.setAutoFreeze(d.autoFreeze),typeof(d==null?void 0:d.useStrictShallowCopy)=="boolean"&&this.setUseStrictShallowCopy(d.useStrictShallowCopy)}createDraft(d){isDraftable(d)||die(8),isDraft(d)&&(d=current(d));const m=enterScope(this),g=createProxy(d,void 0);return g[DRAFT_STATE].isManual_=!0,leaveScope(m),g}finishDraft(d,m){const g=d&&d[DRAFT_STATE];(!g||!g.isManual_)&&die(9);const{scope_:x}=g;return usePatchesInScope(x,m),processResult(void 0,x)}setAutoFreeze(d){this.autoFreeze_=d}setUseStrictShallowCopy(d){this.useStrictShallowCopy_=d}applyPatches(d,m){let g;for(g=m.length-1;g>=0;g--){const b=m[g];if(b.path.length===0&&b.op==="replace"){d=b.value;break}}g>-1&&(m=m.slice(g+1));const x=getPlugin("Patches").applyPatches_;return isDraft(d)?x(d,m):this.produce(d,b=>x(b,m))}};function createProxy(d,m){const g=isMap$1(d)?getPlugin("MapSet").proxyMap_(d,m):isSet(d)?getPlugin("MapSet").proxySet_(d,m):createProxyProxy(d,m);return(m?m.scope_:getCurrentScope()).drafts_.push(g),g}function current(d){return isDraft(d)||die(10,d),currentImpl(d)}function currentImpl(d){if(!isDraftable(d)||isFrozen(d))return d;const m=d[DRAFT_STATE];let g;if(m){if(!m.modified_)return m.base_;m.finalized_=!0,g=shallowCopy(d,m.scope_.immer_.useStrictShallowCopy_)}else g=shallowCopy(d,!0);return each(g,(x,b)=>{set$1(g,x,currentImpl(b))}),m&&(m.finalized_=!1),g}var immer=new Immer2,produce=immer.produce;const STORAGE_KEY="admin_state",INIT={title:"",config:{},selectedFiles:[],accountsAsTree:!1,movingFile:"",vfs:void 0,expanded:[],loginRequired:!1,username:"",monitorOnlyFiles:!0,monitorWithLog:!0,customHtmlSection:"",darkTheme:void 0,dataTablePersistence:{},hideRandomPlugin:!1,onlinePluginsColumns:{version:!1,pushed_at:!1,license:!1}};Object.assign(INIT,JSON.parse(localStorage[STORAGE_KEY]||null));const state$1=proxy(INIT);Object.assign(window,{state:state$1});const SETTINGS_TO_STORE$1=["onlinePluginsColumns","monitorOnlyFiles","monitorWithLog","customHtmlSection","darkTheme","dataTablePersistence","accountsAsTree","hideRandomPlugin"],storeSettings$1=_.debounce(()=>localStorage[STORAGE_KEY]=JSON.stringify(_.pick(state$1,SETTINGS_TO_STORE$1)),500,{maxWait:1e3});for(const d of SETTINGS_TO_STORE$1)subscribeKey(state$1,d,storeSettings$1);function useSnapState$1(){return useSnapshot(state$1)}function updateStateObject(d,m,g){d[m]=produce(d[m],g)}function useDark(){return useMediaQuery$1("(prefers-color-scheme: dark)")}const EMPTY$1={};function useMyTheme(){const{darkTheme:d}=useSnapState$1(),m=useDark(),g=(d!=null?d:m)?null:EMPTY$1;return reactExports.useMemo(()=>createTheme({palette:g||{mode:"dark",text:{primary:"#bbb",secondary:"#fff6"},primary:{main:"#469",light:"#68c"},secondary:{main:"#969"}},typography:{fontFamily:'Roboto, "Noto sans", "Segoe UI", "San Francisco", "Helvetica Neue", Arial, sans-serif'},components:{MuiLink:{defaultProps:g||{color:"primary.light"}},MuiTextField:{defaultProps:{variant:"filled"},styleOverrides:g||{root:{"& label.Mui-focused":{color:"#ccc"}}}},MuiButton:{defaultProps:{variant:"outlined"},styleOverrides:g||{root({ownerState:x}){return x.color==="primary"&&{color:x.variant==="contained"?"#ddd":"#68c"}}}}}}),[g])}function SwitchThemeBtn(d){const{darkTheme:m}=useSnapState$1(),g=useDark(),x=m!=null?m:g;return reactExports.createElement(Btn$1,Fe({icon:x?Brightness7:Brightness4,onClick:()=>{const b=!x;return state$1.darkTheme=g===b?void 0:b}},d),x?"Light theme":"Dark theme")}dialogsDefaults.Container=function(m){const g=reactExports.useRef(),x=useIsMobile();reactExports.useEffect(()=>{const T=setTimeout(()=>{const R=g.current;R&&(R.focus(),!x&&(focusSelector("[autofocus]",R)||focusSelector(focusableSelector,R)))});return()=>clearTimeout(T)},[g.current]);const b=useDialogBarColors();m=Fe(Fe({},dialogsDefaults),m);const C=m.dialogProps||{},{sx:E,root:v}=C,S=Vt(C,["sx","root"]);return m.noFrame?reactExports.createElement(Modal,{open:!0,children:reactExports.createElement(Center,{},reactExports.createElement(m.Content))}):reactExports.createElement(Dialog$1,$t(Fe(Fe({open:!0,maxWidth:!1,fullScreen:x},S),v),{className:m.className,onClose:()=>closeDialog()}),m.title&&reactExports.createElement(DialogTitle,{sx:Fe({position:"sticky",top:0,p:1,zIndex:2,boxShadow:"0 0 8px #0004",display:"flex",alignItems:"center"},b)},m.icon&&componentOrNode(m.icon),reactExports.createElement(Box,{flex:1,minWidth:40,ml:1},componentOrNode(m.title)),m.closable&&reactExports.createElement(IconBtn,{icon:Close,title:"Close",onClick:()=>closeDialog()})),reactExports.createElement(DialogContent,{ref:g,sx:Fe({p:m.padding?{xs:1,sm:void 0}:0,pt:"16px !important",overflow:"initial",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"stretch"},E)},reactExports.createElement(m.Content)))};function useDialogBarColors(){const{darkTheme:d}=useSnapState$1();return(d!=null?d:useDark())?{bgcolor:"#2d2d2d"}:{bgcolor:"#ccc",color:"#444"}}const type2ico={error:ErrorIcon,warning:Warning,info:Info,success:Check};function alertDialog$1(d,m){var C;const g=typeof m=="string"?{type:m}:m!=null?m:{};let S=g,{type:x="info"}=S,b=Vt(S,["type"]);d instanceof Error&&(d=err2msg$1(d.message||d.code),x="error");const E=pendingPromise(),v=newDialog($t(Fe({className:"dialog-alert dialog-alert-"+x,icon:(C=g.icon)!=null?C:reactExports.createElement(type2ico[x],{color:x}),onClose:E.resolve,title:_.upperFirst(x),dialogProps:{fullScreen:!1}},b),{Content(){return reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"center",gap:1},reactExports.isValidElement(d)?d:reactExports.createElement(Box,{fontSize:"large",lineHeight:"1.8em",pb:1},String(d)))}}));return Object.assign(E,v)}function confirmDialog$1(d,S={}){var C=S,{href:m,trueText:g="Go",falseText:x="Don't",before:b,after:E}=C,v=Vt(C,["href","trueText","falseText","before","after"]);const T=pendingPromise(),R=newDialog($t(Fe({className:"dialog-confirm",onClose:T.resolve,dialogProps:{sx:{alignItems:"center"}}},v),{Content:k}));return Object.assign(T,R);function k(){return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{mb:2},typeof d=="string"?md(d):d),reactExports.createElement(Flex$1,{},b==null?void 0:b({onClick:L=>R.close(L)}),reactExports.createElement("a",{href:m,onClick:()=>R.close(!0)},reactExports.createElement(Button,{variant:"contained"},g)),reactExports.createElement(Button,{onClick:()=>R.close(!1)},x),E==null?void 0:E({onClick:L=>R.close(L)})))}}function formDialog$1(b){return yt(this,null,function*(){var E=b,{form:d,values:m,Wrapper:g}=E,x=Vt(E,["form","values","Wrapper"]);let v;return new Promise(S=>{const C=newDialog($t(Fe({className:"dialog-form",onClose:T=>S(T||v)},x),{Content(){const[T,R]=reactExports.useState(m||{}),A=typeof d=="function"?d(T):d,{onChange:k,before:L}=A,D=Vt(A,["onChange","before"]);return D.save===!1&&(v=T),reactExports.createElement(g||reactExports.Fragment,{},L,reactExports.createElement(Form,$t(Fe({},D),{values:T,set(I,N){R(z=>{const j=$t(Fe({},z),{[N]:I});return k==null||k(j,{setValues:R}),j})},save:D.save!==!1&&Fe({onClick(){C.close(T)}},D.save)})))}}))})})}function promptDialog$1(C){return yt(this,arguments,function*(d,v={}){var S=v,{value:m="",field:g,save:x,addToBar:b=[]}=S,E=Vt(S,["value","field","save","addToBar"]);return formDialog$1($t(Fe({},E),{values:{text:m},form:Fe({fields:[$t(Fe({k:"text",label:null,autoFocus:!0},g),{before:reactExports.createElement(Box,{mb:2},d)})],save:Fe({children:"Continue",startIcon:reactExports.createElement(Forward)},x),saveOnEnter:!0,barSx:{gap:2},addToBar:[reactExports.createElement(Button,{onClick:closeDialog},"Cancel"),...b]},E.form)})).then(T=>T==null?void 0:T.text)})}function waitDialog(){return newDialog({Content:()=>reactExports.createElement(CircularProgress,{size:"20vw"}),noFrame:!0,closable:!1}).close}function toast$1(d,m="info",g){const b=newDialog($t(Fe({},g),{Content:E,dialogProps:{fullScreen:!1,PaperProps:{sx:{transition:"opacity 3000ms ease-in"},ref(v){v&&(v.style.opacity="0")}}}}));return setTimeout(b.close,3e3),b;function E(){return reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"center",gap:1},reactExports.isValidElement(m)?m:reactExports.createElement(type2ico[m],{color:m}),reactExports.isValidElement(d)?d:reactExports.createElement("div",{},String(d)))}}const ALL=`🇦🇫|AF|Afghanistan
324
324
  🇦🇽|AX|Åland Islands
325
325
  🇦🇱|AL|Albania
326
326
  🇩🇿|DZ|Algeria
@@ -577,11 +577,11 @@ function print() { __p += __j.call(arguments, '') }
577
577
  🇾🇪|YE|Yemen
578
578
  🇿🇲|ZM|Zambia
579
579
  🇿🇼|ZW|Zimbabwe`.split(`
580
- `).map(d=>{const[m,g,x]=d.split("|");return{flag:m,code:g,name:x}}),WITH_IP="AD,AE,AF,AG,AI,AL,AM,AO,AQ,AR,AS,AT,AU,AW,AX,AZ,BA,BB,BD,BE,BF,BG,BH,BI,BJ,BL,BM,BN,BO,BQ,BR,BS,BT,BV,BW,BY,BZ,CA,CD,CF,CG,CH,CI,CK,CL,CM,CN,CO,CR,CU,CV,CW,CY,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ER,ES,ET,FI,FJ,FK,FM,FO,FR,GA,GB,GD,GE,GF,GG,GH,GI,GL,GM,GN,GP,GQ,GR,GT,GU,GW,GY,HK,HN,HR,HT,HU,ID,IE,IL,IM,IN,IO,IQ,IR,IS,IT,JE,JM,JO,JP,KE,KG,KH,KI,KM,KN,KP,KR,KW,KY,KZ,LA,LB,LC,LI,LK,LR,LS,LT,LU,LV,LY,MA,MC,MD,ME,MF,MG,MH,MK,ML,MM,MN,MO,MP,MQ,MR,MS,MT,MU,MV,MW,MX,MY,MZ,NA,NC,NE,NF,NG,NI,NL,NO,NP,NR,NU,NZ,OM,PA,PE,PF,PG,PH,PK,PL,PM,PR,PS,PT,PW,PY,QA,RE,RO,RS,RU,RW,SA,SB,SC,SD,SE,SG,SI,SK,SL,SM,SN,SO,SR,SS,ST,SV,SX,SY,SZ,TC,TD,TG,TH,TJ,TK,TL,TM,TN,TO,TR,TT,TV,TW,TZ,UA,"+"UG,UM,US,UY,UZ,VA,VC,VE,VG,VI,VN,VU,WF,WS,YE,YT,ZA,ZM,ZW".split(",");function spinner(){return reactExports.createElement(CircularProgress)}function useBreakpoint(d){return useMediaQuery$1(m=>m.breakpoints.up(d),{noSsr:!0})}function IconProgress({icon:d,progress:m,offset:g,title:x,sx:b}){return reactExports.createElement(Flex$1,{vert:!0,center:!0},reactExports.createElement(d,{sx:{position:"absolute",ml:"4px"}}),reactExports.createElement(CircularProgress,{value:m*100||0,variant:"determinate",size:32,sx:{position:"absolute"}}),hTooltip(x!=null?x:_.isNumber(m)?formatPerc(m):"Size unknown","",reactExports.createElement(CircularProgress,{color:"success",value:(g||1e-7)*100,variant:"determinate",size:32,sx:Fe({display:"flex"},b)})))}function Flex$1(v){var S=v,{vert:d=!1,center:m=!1,children:g=null,props:x={},component:b}=S,E=Vt(S,["vert","center","children","props","component"]);return reactExports.createElement(Box,Fe({sx:Fe(Fe({display:"flex",gap:".8em",flexDirection:d?"column":void 0,alignItems:d?void 0:"center"},m&&{justifyContent:"center"}),E),component:b},x),g)}function wikiLink(d,m){return Array.isArray(m)&&(m=dontBotherWithKeys(m)),reactExports.createElement(Link$1,{href:WIKI_URL+d,target:"help"},m)}function WildcardsSupported(){return wikiLink("Wildcards","Wildcards supported")}function reloadBtn(d,m){return reactExports.createElement(IconBtn,Fe({icon:Refresh,title:"Reload",onClick:d},m))}function propsForModifiedValues(d){return d?{sx:{outline:"2px solid",animation:".5s blink 2"}}:void 0}function useRefPass(d){const m=reactExports.useRef(null);return Object.assign(m,{pass(g){m.current=g,_.isFunction(d)?d(g):d&&(d.current=g)}})}const IconBtn=reactExports.forwardRef((d,m)=>reactExports.createElement(Btn$1,Fe({ref:m},d))),Btn$1=reactExports.forwardRef((N,I)=>{var z=N,{icon:d,title:m,onClick:g,disabled:x,progress:b,link:E,tooltipProps:v,confirm:S,doneMessage:C,doneAnimation:T,labelIf:R,children:k,modified:L,loading:D}=z,A=Vt(z,["icon","title","onClick","disabled","progress","link","tooltipProps","confirm","doneMessage","doneAnimation","labelIf","children","modified","loading"]);var re;const[j,Y]=useStateMounted(!1);typeof x=="string"&&(m=x),x=b||x?!0:void 0,E&&(g=()=>window.open(E));const B=useBreakpoint(_.isString(R)?R:"xs")&&(_.isBoolean(R)?R:!0);B||(m=k);const U=useRefPass(I),W=_.merge(propsForModifiedValues(L),{ref:U.pass,disabled:x,"aria-hidden":x,onClick(...ie){return vt(this,null,function*(){if(j||S&&!(yield confirmDialog$1(S===!0?"Are you sure?":S)))return;const oe=g==null?void 0:g.apply(this,ie);oe&&oe instanceof Promise&&(Y(!0),oe.then(Z=>Z!==!1&&execDoneMessage(C,T&&U.current),alertDialog$1).finally(()=>Y(!1)))})}},A),V=reactExports.isValidElement(d)?d:d&&reactExports.createElement(d);let J=k&&B?reactExports.createElement(LoadingButton,_.merge({variant:"contained",startIcon:V,loading:!!(D||j||b),loadingPosition:d&&"start",loadingIndicator:typeof b!="number"?void 0:reactExports.createElement(CircularProgress,{size:"1rem",value:b*100,variant:"determinate"}),children:B&&k},W,(!B||!k)&&{sx:{minWidth:"auto",px:1,py:"7px","& span":{mx:0}}})):reactExports.createElement(IconButton,_.merge(W,{sx:{height:"fit-content"},TouchRippleProps:{"aria-hidden":!0}}),(b||j)&&b!==!1&&reactExports.createElement(CircularProgress,$t(Fe({},typeof b=="number"?{value:b*100,variant:"determinate"}:null),{style:{position:"absolute",top:"10%",left:"10%",width:"80%",height:"80%"}})),V);const Q=(re=A["aria-label"])!=null?re:with_(_.isString(m)&&m,ie=>ie?`${k||""} (${ie})`:void 0);return m&&(x&&(J=reactExports.createElement("span",{role:"button","aria-label":Q,"aria-disabled":x},J)),J=hTooltip(m,Q,J,v)),J});function execDoneMessage(d,m){m&&restartAnimation(m,"success .5s"),d&&toast$1(d===!0?"Operation completed":d,"success")}function iconTooltip(d,m,g,x){return hTooltip(m,void 0,reactExports.createElement(d,Fe({sx:g},x)))}function InLink(m){var d=Vt(m,[]);const g=useNavigate();return d.onClickCapture=x=>vt(this,null,function*(){var b;for(x.preventDefault();anyDialogOpen();)yield(b=closeDialog())==null?void 0:b.closed;g(d.to)}),reactExports.createElement(Link$1,Fe({component:Link$2},d))}const Center=reactExports.forwardRef((d,m)=>reactExports.createElement(Box,Fe({ref:m,display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center",flexDirection:"column"},d)));function LinkBtn(m){var d=Vt(m,[]);return reactExports.createElement(Link$1,$t(Fe({},d),{href:"",sx:Fe({cursor:"pointer"},d.sx),role:"button",onClick(g){var x;g.preventDefault(),(x=d.onClick)==null||x.call(d,g)}}))}function usePauseButton(d="",m=!0,g){const[x,b]=useToggleButton(`Pause ${d}`,`Resume ${d}`,E=>Fe({icon:E?PauseCircle:PlayCircle,sx:{rotate:E?"180deg":"0deg"}},g),m);return{pause:!x,pauseButton:b}}function useToggleButton(d,m,g,x=!1){const[b,E]=reactExports.useState(x instanceof Promise||x instanceof Function?()=>{const T=callable(x);return T instanceof Promise?(T.then(R=>E(R)),!1):T}:x),v=reactExports.useCallback(()=>E(T=>!T),[]),S=g(b),C=reactExports.useMemo(()=>reactExports.createElement(IconBtn,$t(Fe({size:"small",color:b?"primary":void 0,title:b||m===void 0?d:m,"aria-label":d,"aria-pressed":b},S),{sx:Fe({transition:"all .5s"},S.sx),onClick(T){var R;(R=S.onClick)==null||R.call(S,T),v()}})),[b]);return[b,C,E]}function NetmaskField(x){var b=x,{setApi:d,helperText:m}=b,g=Vt(b,["setApi","helperText"]);const E=reactExports.useRef(!1);return d==null||d({getError(){return g.value&&apiCall("validate_net_mask",{mask:g.value}).then(v=>!v.result&&"Invalid mask")}}),reactExports.createElement(StringField,$t(Fe({helperText:reactExports.createElement("span",{},m,m&&" – ",wikiLink("Wildcards#network-masks","Wildcards supported"))},g),{onTyping(v){var S,C;return!E.current&&(v!=null&&v.includes("127.0.0.1"))&&!v.includes("::1")&&(E.current=!0,alertDialog$1('Hostname "localhost" is normally translated as ::1 instead of 127.0.0.1',"warning")),(C=(S=g.onTyping)==null?void 0:S.call(g,v))!=null?C:v}}))}function Country({code:d,ip:m,def:g,long:x,short:b}){const E=m&&!isIpLocalHost(m)&&!isIpLan(m),{data:v}=useBatch(d===void 0&&E&&ip2countryBatch,m,{delay:100});d||(d=v||"");const S=d&&_.find(ALL,{code:d});return S?hTooltip(x?void 0:S.name,void 0,reactExports.createElement("span",{},reactExports.createElement("img",Fe({className:"flag icon-w-text",src:`flags/${d.toLowerCase()}.png`,alt:S.name},x&&{"aria-hidden":!0})),x?S.name+prefix(" (",b&&d,")"):d)):reactExports.createElement(reactExports.Fragment,{},g)}function ip2countryBatch(d){return vt(this,null,function*(){return(yield apiCall("ip_country",{ips:d})).codes})}function hTooltip(d,m,g,x){return reactExports.createElement(Tooltip,Fe($t(Fe({title:d,children:g},m===""?{"aria-hidden":!0}:{"aria-label":m||_.isString(d)&&d||void 0}),{componentsProps:{popper:{sx:Fe({whiteSpace:"pre-wrap"},x==null?void 0:x.sx)}}}),x))}setDefaultApiCallOptions({onResponse(d,m){return vt(this,null,function*(){if(d.status===HTTP_UNAUTHORIZED)throw state$1.loginRequired=(m==null?void 0:m.possible)!==!1||HTTP_FORBIDDEN,new ApiError(d.status,m)})}});const ERRORS={timeout:"Operation timeout"};function useApiEx(...d){const m=useApi(...d);return $t(Fe({},m),{element:reactExports.useMemo(()=>d[0]?m.error?reactExports.createElement(Alert,{severity:"error"},xlate(String(m.error),ERRORS),reactExports.createElement(IconBtn,{icon:Refresh,title:"Reload",onClick:m.reload,sx:{m:"-10px 0 -8px 16px"}})):m.data===void 0?spinner():null:null,Object.values(m))})}function useApiList(d,m={},{map:g,invert:x,pause:b,limit:E}={}){const[v,S]=useStateMounted([]),[C,T]=useStateMounted(void 0),[R,k]=useStateMounted(void 0),[L,D]=useStateMounted(!0),[A,I]=useStateMounted(!1),[N,z]=useStateMounted(!0),[j,Y]=reactExports.useState(0),B=reactExports.useRef(0),[U,W]=reactExports.useState();reactExports.useEffect(()=>W(b?v:void 0),[b]),reactExports.useEffect(()=>{if(!d)return;const X=[],re=_.debounce(()=>{const Z=X.splice(0,1/0);Z.length&&(x&&Z.reverse(),S(ee=>{if(x){const fe=[...Z,...ee];return fe.splice(E!=null?E:1/0,1/0),fe}const ce=[...ee,...Z];return ce.splice(0,ce.length-(E!=null?E:1/0)),ce}))},1e3,{maxWait:1e3});k(void 0),I(!0),D(!0),z(!0),S([]);const ie=apiEvents(d,objSameKeys(m,Z=>Z===!1?void 0:Z),(Z,ee)=>{switch(Z){case"connected":return D(!1),setTimeout(()=>re.flush());case"error":return k("Connection error"),setTimeout(Q,1e3),oe();case"closed":return oe();case"msg":const ce=[],fe=[];wantArray(ee).forEach(ae=>{var ge,ye,Ee,ve;if(!Array.isArray(ae))return console.debug("illegal list packet",ae);console.debug("LIST",...ae);const[ue,pe]=ae;if(ue===LIST.ready){re.flush(),z(!1);return}if(ue===LIST.error){pe===HTTP_UNAUTHORIZED?state$1.loginRequired=((ge=ae[2])==null?void 0:ge.possible)!==!1||HTTP_FORBIDDEN:k(_.isString(pe)||_.isNumber(pe)?err2msg$1(pe):pe);return}if(ue===LIST.props)return T(pe);if(ue===LIST.add){const Se=(ye=g==null?void 0:g(pe))!=null?ye:pe;(Ee=Se.id)!=null||(Se.id=B.current=Math.max(B.current,Date.now())+.001),X.push(Se),re();return}if(ue===LIST.remove){const Se=_.matches(pe);_.isEmpty(_.remove(X,Se))&&ce.push(Se);return}if(ue===LIST.update){const Se=(ve=g==null?void 0:g(ae[2]))!=null?ve:ae[2],$e=_.find(X,pe);if($e)return Object.assign($e,Se);fe.push([pe,Se]);return}console.debug("unknown list api",ue)}),S(ae=>{let ue=ae,pe;if(ce.length&&(pe=ae.filter(ge=>!ce.some(ye=>ye(ge))),pe.length<ae.length&&(ue=pe)),fe.length)for(const[ge,ye]of fe){const Ee=_.findIndex(ue,ge);Ee<0||(ue===ae&&(ue=pe!=null?pe:ae.slice()),ue[Ee]=Fe(Fe({},ue[Ee]),ye))}return ue}),ie.readyState===ie.CLOSED&&oe()}});return()=>ie.close();function oe(){z(!1),I(!1),re.flush()}},[j,d,JSON.stringify(m)]);const V=reactExports.useCallback(X=>S(re=>produce(re,X)),[S]),J=reactExports.useCallback((X,re)=>{V(ie=>{const oe=_.find(ie,X);oe&&Object.assign(oe,re)})},[V]);return{list:U!=null?U:v,props:C,loading:A,error:R,initializing:N,connecting:L,setList:S,updateList:V,updateEntry:J,reload:Q};function Q(){Y(X=>X+1)}}const GridApiContext=reactExports.createContext(void 0);function useGridApiContext(){const d=reactExports.useContext(GridApiContext);if(d===void 0)throw new Error(["MUI: Could not find the data grid context.","It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.","This can also happen if you are bundling multiple versions of the data grid."].join(`
580
+ `).map(d=>{const[m,g,x]=d.split("|");return{flag:m,code:g,name:x}}),WITH_IP="AD,AE,AF,AG,AI,AL,AM,AO,AQ,AR,AS,AT,AU,AW,AX,AZ,BA,BB,BD,BE,BF,BG,BH,BI,BJ,BL,BM,BN,BO,BQ,BR,BS,BT,BV,BW,BY,BZ,CA,CD,CF,CG,CH,CI,CK,CL,CM,CN,CO,CR,CU,CV,CW,CY,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ER,ES,ET,FI,FJ,FK,FM,FO,FR,GA,GB,GD,GE,GF,GG,GH,GI,GL,GM,GN,GP,GQ,GR,GT,GU,GW,GY,HK,HN,HR,HT,HU,ID,IE,IL,IM,IN,IO,IQ,IR,IS,IT,JE,JM,JO,JP,KE,KG,KH,KI,KM,KN,KP,KR,KW,KY,KZ,LA,LB,LC,LI,LK,LR,LS,LT,LU,LV,LY,MA,MC,MD,ME,MF,MG,MH,MK,ML,MM,MN,MO,MP,MQ,MR,MS,MT,MU,MV,MW,MX,MY,MZ,NA,NC,NE,NF,NG,NI,NL,NO,NP,NR,NU,NZ,OM,PA,PE,PF,PG,PH,PK,PL,PM,PR,PS,PT,PW,PY,QA,RE,RO,RS,RU,RW,SA,SB,SC,SD,SE,SG,SI,SK,SL,SM,SN,SO,SR,SS,ST,SV,SX,SY,SZ,TC,TD,TG,TH,TJ,TK,TL,TM,TN,TO,TR,TT,TV,TW,TZ,UA,"+"UG,UM,US,UY,UZ,VA,VC,VE,VG,VI,VN,VU,WF,WS,YE,YT,ZA,ZM,ZW".split(",");function spinner(){return reactExports.createElement(CircularProgress)}function useBreakpoint(d){return useMediaQuery$1(m=>m.breakpoints.up(d),{noSsr:!0})}function IconProgress({icon:d,progress:m,offset:g,title:x,sx:b}){return reactExports.createElement(Flex$1,{vert:!0,center:!0},reactExports.createElement(d,{sx:{position:"absolute",ml:"4px"}}),reactExports.createElement(CircularProgress,{value:m*100||0,variant:"determinate",size:32,sx:{position:"absolute"}}),hTooltip(x!=null?x:_.isNumber(m)?formatPerc(m):"Size unknown","",reactExports.createElement(CircularProgress,{color:"success",value:(g||1e-7)*100,variant:"determinate",size:32,sx:Fe({display:"flex"},b)})))}function Flex$1(v){var S=v,{vert:d=!1,center:m=!1,children:g=null,props:x={},component:b}=S,E=Vt(S,["vert","center","children","props","component"]);return reactExports.createElement(Box,Fe({sx:Fe(Fe({display:"flex",gap:".8em",flexDirection:d?"column":void 0,alignItems:d?void 0:"center"},m&&{justifyContent:"center"}),E),component:b},x),g)}function wikiLink(d,m){return Array.isArray(m)&&(m=dontBotherWithKeys(m)),reactExports.createElement(Link$1,{href:WIKI_URL+d,target:"help"},m)}function WildcardsSupported(){return wikiLink("Wildcards","Wildcards supported")}function reloadBtn(d,m){return reactExports.createElement(IconBtn,Fe({icon:Refresh,title:"Reload",onClick:d},m))}function propsForModifiedValues(d){return d?{sx:{outline:"2px solid",animation:".5s blink 2"}}:void 0}function useRefPass(d){const m=reactExports.useRef(null);return Object.assign(m,{pass(g){m.current=g,_.isFunction(d)?d(g):d&&(d.current=g)}})}const IconBtn=reactExports.forwardRef((d,m)=>reactExports.createElement(Btn$1,Fe({ref:m},d))),Btn$1=reactExports.forwardRef((N,I)=>{var z=N,{icon:d,title:m,onClick:g,disabled:x,progress:b,link:E,tooltipProps:v,confirm:S,doneMessage:C,doneAnimation:T,labelIf:R,children:k,modified:L,loading:D}=z,A=Vt(z,["icon","title","onClick","disabled","progress","link","tooltipProps","confirm","doneMessage","doneAnimation","labelIf","children","modified","loading"]);var re;const[j,Y]=useStateMounted(!1);typeof x=="string"&&(m=x),x=b||x?!0:void 0,E&&(g=()=>window.open(E));const B=useBreakpoint(_.isString(R)?R:"xs")&&(_.isBoolean(R)?R:!0);B||(m=k);const U=useRefPass(I),W=_.merge(propsForModifiedValues(L),{ref:U.pass,disabled:x,"aria-hidden":x,onClick(...ie){return yt(this,null,function*(){if(j||S&&!(yield confirmDialog$1(S===!0?"Are you sure?":S)))return;const oe=g==null?void 0:g.apply(this,ie);oe&&oe instanceof Promise&&(Y(!0),oe.then(Z=>Z!==!1&&execDoneMessage(C,T&&U.current),alertDialog$1).finally(()=>Y(!1)))})}},A),V=reactExports.isValidElement(d)?d:d&&reactExports.createElement(d);let J=k&&B?reactExports.createElement(LoadingButton,_.merge({variant:"contained",startIcon:V,loading:!!(D||j||b),loadingPosition:d&&"start",loadingIndicator:typeof b!="number"?void 0:reactExports.createElement(CircularProgress,{size:"1rem",value:b*100,variant:"determinate"}),children:B&&k},W,(!B||!k)&&{sx:{minWidth:"auto",px:1,py:"7px","& span":{mx:0}}})):reactExports.createElement(IconButton,_.merge(W,{sx:{height:"fit-content"},TouchRippleProps:{"aria-hidden":!0}}),(b||j)&&b!==!1&&reactExports.createElement(CircularProgress,$t(Fe({},typeof b=="number"?{value:b*100,variant:"determinate"}:null),{style:{position:"absolute",top:"10%",left:"10%",width:"80%",height:"80%"}})),V);const Q=(re=A["aria-label"])!=null?re:with_(_.isString(m)&&m,ie=>ie?`${k||""} (${ie})`:void 0);return m&&(x&&(J=reactExports.createElement("span",{role:"button","aria-label":Q,"aria-disabled":x},J)),J=hTooltip(m,Q,J,v)),J});function execDoneMessage(d,m){m&&restartAnimation(m,"success .5s"),d&&toast$1(d===!0?"Operation completed":d,"success")}function iconTooltip(d,m,g,x){return hTooltip(m,void 0,reactExports.createElement(d,Fe({sx:g},x)))}function InLink(m){var d=Vt(m,[]);const g=useNavigate();return d.onClickCapture=x=>yt(this,null,function*(){var b;for(x.preventDefault();anyDialogOpen();)yield(b=closeDialog())==null?void 0:b.closed;g(d.to)}),reactExports.createElement(Link$1,Fe({component:Link$2},d))}const Center=reactExports.forwardRef((d,m)=>reactExports.createElement(Box,Fe({ref:m,display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center",flexDirection:"column"},d)));function LinkBtn(m){var d=Vt(m,[]);return reactExports.createElement(Link$1,$t(Fe({},d),{href:"",sx:Fe({cursor:"pointer"},d.sx),role:"button",onClick(g){var x;g.preventDefault(),(x=d.onClick)==null||x.call(d,g)}}))}function usePauseButton(d="",m=!0,g){const[x,b]=useToggleButton(`Pause ${d}`,`Resume ${d}`,E=>Fe({icon:E?PauseCircle:PlayCircle,sx:{rotate:E?"180deg":"0deg"}},g),m);return{pause:!x,pauseButton:b}}function useToggleButton(d,m,g,x=!1){const[b,E]=reactExports.useState(x instanceof Promise||x instanceof Function?()=>{const T=callable(x);return T instanceof Promise?(T.then(R=>E(R)),!1):T}:x),v=reactExports.useCallback(()=>E(T=>!T),[]),S=g(b),C=reactExports.useMemo(()=>reactExports.createElement(IconBtn,$t(Fe({size:"small",color:b?"primary":void 0,title:b||m===void 0?d:m,"aria-label":d,"aria-pressed":b},S),{sx:Fe({transition:"all .5s"},S.sx),onClick(T){var R;(R=S.onClick)==null||R.call(S,T),v()}})),[b]);return[b,C,E]}function NetmaskField(x){var b=x,{setApi:d,helperText:m}=b,g=Vt(b,["setApi","helperText"]);const E=reactExports.useRef(!1);return d==null||d({getError(){return g.value&&apiCall("validate_net_mask",{mask:g.value}).then(v=>!v.result&&"Invalid mask")}}),reactExports.createElement(StringField,$t(Fe({helperText:reactExports.createElement("span",{},m,m&&" – ",wikiLink("Wildcards#network-masks","Wildcards supported"))},g),{onTyping(v){var S,C;return!E.current&&(v!=null&&v.includes("127.0.0.1"))&&!v.includes("::1")&&(E.current=!0,alertDialog$1('Hostname "localhost" is normally translated as ::1 instead of 127.0.0.1',"warning")),(C=(S=g.onTyping)==null?void 0:S.call(g,v))!=null?C:v}}))}function Country({code:d,ip:m,def:g,long:x,short:b}){const E=m&&!isIpLocalHost(m)&&!isIpLan(m),{data:v}=useBatch(d===void 0&&E&&ip2countryBatch,m,{delay:100});d||(d=v||"");const S=d&&_.find(ALL,{code:d});return S?hTooltip(x?void 0:S.name,void 0,reactExports.createElement("span",{},reactExports.createElement("img",Fe({className:"flag icon-w-text",src:`flags/${d.toLowerCase()}.png`,alt:S.name},x&&{"aria-hidden":!0})),x?S.name+prefix(" (",b&&d,")"):d)):reactExports.createElement(reactExports.Fragment,{},g)}function ip2countryBatch(d){return yt(this,null,function*(){return(yield apiCall("ip_country",{ips:d})).codes})}function hTooltip(d,m,g,x){return reactExports.createElement(Tooltip,Fe($t(Fe({title:d,children:g},m===""?{"aria-hidden":!0}:{"aria-label":m||_.isString(d)&&d||void 0}),{componentsProps:{popper:{sx:Fe({whiteSpace:"pre-wrap"},x==null?void 0:x.sx)}}}),x))}setDefaultApiCallOptions({onResponse(d,m){return yt(this,null,function*(){if(d.status===HTTP_UNAUTHORIZED)throw state$1.loginRequired=(m==null?void 0:m.possible)!==!1||HTTP_FORBIDDEN,new ApiError(d.status,m)})}});const ERRORS={timeout:"Operation timeout"};function useApiEx(...d){const m=useApi(...d);return $t(Fe({},m),{element:reactExports.useMemo(()=>d[0]?m.error?reactExports.createElement(Alert,{severity:"error"},xlate(String(m.error),ERRORS),reactExports.createElement(IconBtn,{icon:Refresh,title:"Reload",onClick:m.reload,sx:{m:"-10px 0 -8px 16px"}})):m.data===void 0?spinner():null:null,Object.values(m))})}function useApiList(d,m={},{map:g,invert:x,pause:b,limit:E}={}){const[v,S]=useStateMounted([]),[C,T]=useStateMounted(void 0),[R,k]=useStateMounted(void 0),[L,D]=useStateMounted(!0),[A,I]=useStateMounted(!1),[N,z]=useStateMounted(!0),[j,Y]=reactExports.useState(0),B=reactExports.useRef(0),[U,W]=reactExports.useState();reactExports.useEffect(()=>W(b?v:void 0),[b]),reactExports.useEffect(()=>{if(!d)return;const X=[],re=_.debounce(()=>{const Z=X.splice(0,1/0);Z.length&&(x&&Z.reverse(),S(ee=>{if(x){const fe=[...Z,...ee];return fe.splice(E!=null?E:1/0,1/0),fe}const ce=[...ee,...Z];return ce.splice(0,ce.length-(E!=null?E:1/0)),ce}))},1e3,{maxWait:1e3});k(void 0),I(!0),D(!0),z(!0),S([]);const ie=apiEvents(d,objSameKeys(m,Z=>Z===!1?void 0:Z),(Z,ee)=>{switch(Z){case"connected":return D(!1),setTimeout(()=>re.flush());case"error":return k("Connection error"),setTimeout(Q,1e3),oe();case"closed":return oe();case"msg":const ce=[],fe=[];wantArray(ee).forEach(ae=>{var ge,ye,Ee,ve;if(!Array.isArray(ae))return console.debug("illegal list packet",ae);console.debug("LIST",...ae);const[ue,pe]=ae;if(ue===LIST.ready){re.flush(),z(!1);return}if(ue===LIST.error){pe===HTTP_UNAUTHORIZED?state$1.loginRequired=((ge=ae[2])==null?void 0:ge.possible)!==!1||HTTP_FORBIDDEN:k(_.isString(pe)||_.isNumber(pe)?err2msg$1(pe):pe);return}if(ue===LIST.props)return T(pe);if(ue===LIST.add){const Se=(ye=g==null?void 0:g(pe))!=null?ye:pe;(Ee=Se.id)!=null||(Se.id=B.current=Math.max(B.current,Date.now())+.001),X.push(Se),re();return}if(ue===LIST.remove){const Se=_.matches(pe);_.isEmpty(_.remove(X,Se))&&ce.push(Se);return}if(ue===LIST.update){const Se=(ve=g==null?void 0:g(ae[2]))!=null?ve:ae[2],$e=_.find(X,pe);if($e)return Object.assign($e,Se);fe.push([pe,Se]);return}console.debug("unknown list api",ue)}),S(ae=>{let ue=ae,pe;if(ce.length&&(pe=ae.filter(ge=>!ce.some(ye=>ye(ge))),pe.length<ae.length&&(ue=pe)),fe.length)for(const[ge,ye]of fe){const Ee=_.findIndex(ue,ge);Ee<0||(ue===ae&&(ue=pe!=null?pe:ae.slice()),ue[Ee]=Fe(Fe({},ue[Ee]),ye))}return ue}),ie.readyState===ie.CLOSED&&oe()}});return()=>ie.close();function oe(){z(!1),I(!1),re.flush()}},[j,d,JSON.stringify(m)]);const V=reactExports.useCallback(X=>S(re=>produce(re,X)),[S]),J=reactExports.useCallback((X,re)=>{V(ie=>{const oe=_.find(ie,X);oe&&Object.assign(oe,re)})},[V]);return{list:U!=null?U:v,props:C,loading:A,error:R,initializing:N,connecting:L,setList:S,updateList:V,updateEntry:J,reload:Q};function Q(){Y(X=>X+1)}}const GridApiContext=reactExports.createContext(void 0);function useGridApiContext(){const d=reactExports.useContext(GridApiContext);if(d===void 0)throw new Error(["MUI: Could not find the data grid context.","It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.","This can also happen if you are bundling multiple versions of the data grid."].join(`
581
581
  `));return d}const useGridApiRef=()=>reactExports.useRef({}),GridRootPropsContext=reactExports.createContext(void 0),useGridRootProps=()=>{const d=reactExports.useContext(GridRootPropsContext);if(!d)throw new Error("MUI: useGridRootProps should only be used inside the DataGrid, DataGridPro or DataGridPremium component.");return d},GridPrivateApiContext=reactExports.createContext(void 0);function useGridPrivateApiContext(){const d=reactExports.useContext(GridPrivateApiContext);if(d===void 0)throw new Error(["MUI: Could not find the data grid private context.","It looks like you rendered your component outside of a DataGrid, DataGridPro or DataGridPremium parent component.","This can also happen if you are bundling multiple versions of the data grid."].join(`
582
582
  `));return d}const UNINITIALIZED={};function useLazyRef(d,m){const g=reactExports.useRef(UNINITIALIZED);return g.current===UNINITIALIZED&&(g.current=d(m)),g}const EMPTY=[];function useOnMount(d){reactExports.useEffect(d,EMPTY)}const buildWarning$1=(d,m="warning")=>{let g=!1;const x=Array.isArray(d)?d.join(`
583
583
  `):d;return()=>{g||(g=!0,m==="error"?console.error(x):console.warn(x))}},is$2=Object.is;function fastObjectShallowCompare(d,m){if(d===m)return!0;if(!(d instanceof Object)||!(m instanceof Object))return!1;let g=0,x=0;for(const b in d)if(g+=1,!is$2(d[b],m[b])||!(b in m))return!1;for(const b in m)x+=1;return g===x}buildWarning$1(["MUI: `useGridSelector` has been called before the initialization of the state.","This hook can only be used inside the context of the grid."]);function isOutputSelector(d){return d.acceptsApiRef}function applySelector(d,m){return isOutputSelector(m)?m(d):m(d.current.state)}const defaultCompare=Object.is,objectShallowCompare=fastObjectShallowCompare,createRefs=()=>({state:null,equals:null,selector:null}),useGridSelector=(d,m,g=defaultCompare)=>{const x=useLazyRef(createRefs),b=x.current.selector!==null,[E,v]=reactExports.useState(b?null:applySelector(d,m));return x.current.state=E,x.current.equals=g,x.current.selector=m,useOnMount(()=>d.current.store.subscribe(()=>{const S=applySelector(d,x.current.selector);x.current.equals(x.current.state,S)||(x.current.state=S,v(S))})),E};function getDataGridUtilityClass(d){return generateUtilityClass("MuiDataGrid",d)}const gridClasses=generateUtilityClasses("MuiDataGrid",["actionsCell","aggregationColumnHeader","aggregationColumnHeader--alignLeft","aggregationColumnHeader--alignCenter","aggregationColumnHeader--alignRight","aggregationColumnHeaderLabel","autoHeight","autosizing","booleanCell","cell--editable","cell--editing","cell--textCenter","cell--textLeft","cell--textRight","cell--withRenderer","cell--rangeTop","cell--rangeBottom","cell--rangeLeft","cell--rangeRight","cell--selectionMode","cell","cellContent","cellCheckbox","cellSkeleton","checkboxInput","columnHeader--alignCenter","columnHeader--alignLeft","columnHeader--alignRight","columnHeader--dragging","columnHeader--moving","columnHeader--numeric","columnHeader--sortable","columnHeader--sorted","columnHeader--filtered","columnHeader","columnHeaderCheckbox","columnHeaderDraggableContainer","columnHeaderDropZone","columnHeaderTitle","columnHeaderTitleContainer","columnHeaderTitleContainerContent","columnGroupHeader","columnHeader--filledGroup","columnHeader--emptyGroup","columnHeader--showColumnBorder","columnHeaders","columnHeadersInner","columnHeadersInner--scrollable","columnSeparator--resizable","columnSeparator--resizing","columnSeparator--sideLeft","columnSeparator--sideRight","columnSeparator","columnsPanel","columnsPanelRow","detailPanel","detailPanels","detailPanelToggleCell","detailPanelToggleCell--expanded","footerCell","panel","panelHeader","panelWrapper","panelContent","panelFooter","paper","editBooleanCell","editInputCell","filterForm","filterFormDeleteIcon","filterFormLogicOperatorInput","filterFormColumnInput","filterFormOperatorInput","filterFormValueInput","filterIcon","footerContainer","headerFilterRow","iconButtonContainer","iconSeparator","main","menu","menuIcon","menuIconButton","menuOpen","menuList","overlay","overlayWrapper","overlayWrapperInner","root","root--densityStandard","root--densityComfortable","root--densityCompact","root--disableUserSelection","row","row--editable","row--editing","row--lastVisible","row--dragging","row--dynamicHeight","row--detailPanelExpanded","rowReorderCellPlaceholder","rowCount","rowReorderCellContainer","rowReorderCell","rowReorderCell--draggable","scrollArea--left","scrollArea--right","scrollArea","selectedRowCount","sortIcon","toolbarContainer","toolbarFilterList","virtualScroller","virtualScrollerContent","virtualScrollerContent--overflowed","virtualScrollerRenderZone","pinnedColumns","pinnedColumns--left","pinnedColumns--right","pinnedColumnHeaders","pinnedColumnHeaders--left","pinnedColumnHeaders--right","withBorderColor","cell--withRightBorder","columnHeader--withRightBorder","treeDataGroupingCell","treeDataGroupingCellToggle","groupingCriteriaCell","groupingCriteriaCellToggle","pinnedRows","pinnedRows--top","pinnedRows--bottom","pinnedRowsRenderZone"]);var NOT_FOUND="NOT_FOUND";function createSingletonCache(d){var m;return{get:function(x){return m&&d(m.key,x)?m.value:NOT_FOUND},put:function(x,b){m={key:x,value:b}},getEntries:function(){return m?[m]:[]},clear:function(){m=void 0}}}function createLruCache(d,m){var g=[];function x(S){var C=g.findIndex(function(R){return m(S,R.key)});if(C>-1){var T=g[C];return C>0&&(g.splice(C,1),g.unshift(T)),T.value}return NOT_FOUND}function b(S,C){x(S)===NOT_FOUND&&(g.unshift({key:S,value:C}),g.length>d&&g.pop())}function E(){return g}function v(){g=[]}return{get:x,put:b,getEntries:E,clear:v}}var defaultEqualityCheck=function(m,g){return m===g};function createCacheKeyComparator(d){return function(g,x){if(g===null||x===null||g.length!==x.length)return!1;for(var b=g.length,E=0;E<b;E++)if(!d(g[E],x[E]))return!1;return!0}}function defaultMemoize(d,m){var g=typeof m=="object"?m:{equalityCheck:m},x=g.equalityCheck,b=x===void 0?defaultEqualityCheck:x,E=g.maxSize,v=E===void 0?1:E,S=g.resultEqualityCheck,C=createCacheKeyComparator(b),T=v===1?createSingletonCache(C):createLruCache(v,C);function R(){var k=T.get(arguments);if(k===NOT_FOUND){if(k=d.apply(null,arguments),S){var L=T.getEntries(),D=L.find(function(A){return S(A.value,k)});D&&(k=D.value)}T.put(arguments,k)}return k}return R.clearCache=function(){return T.clear()},R}function getDependencies(d){var m=Array.isArray(d[0])?d[0]:d;if(!m.every(function(x){return typeof x=="function"})){var g=m.map(function(x){return typeof x=="function"?"function "+(x.name||"unnamed")+"()":typeof x}).join(", ");throw new Error("createSelector expects all input-selectors to be functions, but received the following types: ["+g+"]")}return m}function createSelectorCreator(d){for(var m=arguments.length,g=new Array(m>1?m-1:0),x=1;x<m;x++)g[x-1]=arguments[x];var b=function(){for(var v=arguments.length,S=new Array(v),C=0;C<v;C++)S[C]=arguments[C];var T=0,R,k={memoizeOptions:void 0},L=S.pop();if(typeof L=="object"&&(k=L,L=S.pop()),typeof L!="function")throw new Error("createSelector expects an output function after the inputs, but received: ["+typeof L+"]");var D=k,A=D.memoizeOptions,I=A===void 0?g:A,N=Array.isArray(I)?I:[I],z=getDependencies(S),j=d.apply(void 0,[function(){return T++,L.apply(null,arguments)}].concat(N)),Y=d(function(){for(var U=[],W=z.length,V=0;V<W;V++)U.push(z[V].apply(null,arguments));return R=j.apply(null,U),R});return Object.assign(Y,{resultFunc:L,memoizedResultFunc:j,dependencies:z,lastResult:function(){return R},recomputations:function(){return T},resetRecomputations:function(){return T=0}}),Y};return b}var createSelector$1=createSelectorCreator(defaultMemoize);const cacheContainer={cache:new WeakMap};buildWarning$1(["MUI: A selector was called without passing the instance ID, which may impact the performance of the grid.","To fix, call it with `apiRef`, e.g. `mySelector(apiRef)`, or pass the instance ID explicitly, e.g. `mySelector(state, apiRef.current.instanceId)`."]);function checkIsAPIRef(d){return"current"in d&&"instanceId"in d.current}const DEFAULT_INSTANCE_ID={id:"default"},createSelector=(d,m,g,x,b,E,...v)=>{if(v.length>0)throw new Error("Unsupported number of selectors");let S;if(d&&m&&g)S=(C,T)=>{const R=checkIsAPIRef(C),k=T!=null?T:R?C.current.instanceId:DEFAULT_INSTANCE_ID,L=R?C.current.state:C,D=d(L,k),A=m(L,k);return g(D,A)};else if(d&&m)S=(C,T)=>{const R=checkIsAPIRef(C),k=T!=null?T:R?C.current.instanceId:DEFAULT_INSTANCE_ID,L=R?C.current.state:C,D=d(L,k);return m(D)};else throw new Error("Missing arguments");return S.acceptsApiRef=!0,S},createSelectorMemoized=(...d)=>{const m=(...g)=>{var x,b;const[E,v]=g,S=checkIsAPIRef(E),C=S?E.current.instanceId:v!=null?v:DEFAULT_INSTANCE_ID,T=S?E.current.state:E,{cache:R}=cacheContainer;if(R.get(C)&&(x=R.get(C))!=null&&x.get(d)){var k;return(k=R.get(C))==null?void 0:k.get(d)(T,C)}const L=createSelector$1(...d);return R.get(C)||R.set(C,new Map),(b=R.get(C))==null||b.set(d,L),L(T,C)};return m.acceptsApiRef=!0,m},gridColumnsStateSelector=d=>d.columns,gridColumnFieldsSelector=createSelector(gridColumnsStateSelector,d=>d.orderedFields),gridColumnLookupSelector=createSelector(gridColumnsStateSelector,d=>d.lookup),gridColumnDefinitionsSelector=createSelectorMemoized(gridColumnFieldsSelector,gridColumnLookupSelector,(d,m)=>d.map(g=>m[g])),gridColumnVisibilityModelSelector=createSelector(gridColumnsStateSelector,d=>d.columnVisibilityModel),gridVisibleColumnDefinitionsSelector=createSelectorMemoized(gridColumnDefinitionsSelector,gridColumnVisibilityModelSelector,(d,m)=>d.filter(g=>m[g.field]!==!1)),gridVisibleColumnFieldsSelector=createSelectorMemoized(gridVisibleColumnDefinitionsSelector,d=>d.map(m=>m.field)),gridColumnPositionsSelector=createSelectorMemoized(gridVisibleColumnDefinitionsSelector,d=>{const m=[];let g=0;for(let x=0;x<d.length;x+=1)m.push(g),g+=d[x].computedWidth;return m}),gridColumnsTotalWidthSelector=createSelector(gridVisibleColumnDefinitionsSelector,gridColumnPositionsSelector,(d,m)=>{const g=d.length;return g===0?0:m[g-1]+d[g-1].computedWidth}),gridFilterableColumnDefinitionsSelector=createSelectorMemoized(gridColumnDefinitionsSelector,d=>d.filter(m=>m.filterable)),gridFilterableColumnLookupSelector=createSelectorMemoized(gridColumnDefinitionsSelector,d=>d.reduce((m,g)=>(g.filterable&&(m[g.field]=g),m),{})),gridColumnGroupingSelector=d=>d.columnGrouping,gridColumnGroupsUnwrappedModelSelector=createSelectorMemoized(gridColumnGroupingSelector,d=>{var m;return(m=d==null?void 0:d.unwrappedGroupingModel)!=null?m:{}}),gridColumnGroupsLookupSelector=createSelectorMemoized(gridColumnGroupingSelector,d=>{var m;return(m=d==null?void 0:d.lookup)!=null?m:{}}),gridColumnGroupsHeaderStructureSelector=createSelectorMemoized(gridColumnGroupingSelector,d=>{var m;return(m=d==null?void 0:d.headerStructure)!=null?m:[]}),gridColumnGroupsHeaderMaxDepthSelector=createSelector(gridColumnGroupingSelector,d=>{var m;return(m=d==null?void 0:d.maxDepth)!=null?m:0}),gridRowsStateSelector=d=>d.rows,gridRowCountSelector=createSelector(gridRowsStateSelector,d=>d.totalRowCount),gridRowsLoadingSelector=createSelector(gridRowsStateSelector,d=>d.loading),gridTopLevelRowCountSelector=createSelector(gridRowsStateSelector,d=>d.totalTopLevelRowCount),gridRowsLookupSelector=createSelector(gridRowsStateSelector,d=>d.dataRowIdToModelLookup),gridRowsDataRowIdToIdLookupSelector=createSelector(gridRowsStateSelector,d=>d.dataRowIdToIdLookup),gridRowTreeSelector=createSelector(gridRowsStateSelector,d=>d.tree),gridRowGroupingNameSelector=createSelector(gridRowsStateSelector,d=>d.groupingName),gridRowTreeDepthsSelector=createSelector(gridRowsStateSelector,d=>d.treeDepths),gridRowMaximumTreeDepthSelector=createSelectorMemoized(gridRowsStateSelector,d=>{const m=Object.entries(d.treeDepths);return m.length===0?1:m.filter(([,g])=>g>0).map(([g])=>Number(g)).sort((g,x)=>x-g)[0]+1}),gridDataRowIdsSelector=createSelector(gridRowsStateSelector,d=>d.dataRowIds),gridAdditionalRowGroupsSelector=createSelector(gridRowsStateSelector,d=>d==null?void 0:d.additionalRowGroups),gridPinnedRowsSelector=createSelectorMemoized(gridAdditionalRowGroupsSelector,d=>{var m,g;const x=d==null?void 0:d.pinnedRows;return{bottom:x==null||(m=x.bottom)==null?void 0:m.map(b=>{var E;return{id:b.id,model:(E=b.model)!=null?E:{}}}),top:x==null||(g=x.top)==null?void 0:g.map(b=>{var E;return{id:b.id,model:(E=b.model)!=null?E:{}}})}}),gridPinnedRowsCountSelector=createSelector(gridPinnedRowsSelector,d=>{var m,g;return((d==null||(m=d.top)==null?void 0:m.length)||0)+((d==null||(g=d.bottom)==null?void 0:g.length)||0)}),useGridAriaAttributes=()=>{var d;const m=useGridPrivateApiContext(),g=useGridRootProps(),x=useGridSelector(m,gridVisibleColumnDefinitionsSelector),b=useGridSelector(m,gridRowCountSelector),E=useGridSelector(m,gridColumnGroupsHeaderMaxDepthSelector),v=useGridSelector(m,gridPinnedRowsCountSelector);let S="grid";return(d=g.experimentalFeatures)!=null&&d.ariaV7&&g.treeData&&(S="treegrid"),{role:S,"aria-colcount":x.length,"aria-rowcount":E+1+v+b,"aria-multiselectable":!g.disableMultipleRowSelection}},useUtilityClasses$10=d=>{const{classes:m}=d;return composeClasses({root:["main"]},getDataGridUtilityClass,m)},GridMainContainerRoot=styled$1("div",{name:"MuiDataGrid",slot:"Main",overridesResolver:(d,m)=>m.main})(()=>({position:"relative",flexGrow:1,display:"flex",flexDirection:"column",overflow:"hidden"})),GridMainContainer=reactExports.forwardRef((d,m)=>{var g;const x=useGridRootProps(),b=useUtilityClasses$10(x),E=(g=x.experimentalFeatures)!=null&&g.ariaV7?useGridAriaAttributes:null,v=typeof E=="function"?E():null;return jsxRuntimeExports.jsx(GridMainContainerRoot,_extends$1({ref:m,className:b.root,ownerState:x},v,{children:d.children}))}),gridSortingStateSelector=d=>d.sorting,gridSortedRowIdsSelector=createSelector(gridSortingStateSelector,d=>d.sortedRows),gridSortedRowEntriesSelector=createSelectorMemoized(gridSortedRowIdsSelector,gridRowsLookupSelector,(d,m)=>d.map(g=>{var x;return{id:g,model:(x=m[g])!=null?x:{}}})),gridSortModelSelector=createSelector(gridSortingStateSelector,d=>d.sortModel),gridSortColumnLookupSelector=createSelectorMemoized(gridSortModelSelector,d=>d.reduce((g,x,b)=>(g[x.field]={sortDirection:x.sort,sortIndex:d.length>1?b+1:void 0},g),{})),gridFilterStateSelector=d=>d.filter,gridFilterModelSelector=createSelector(gridFilterStateSelector,d=>d.filterModel);createSelector(gridFilterModelSelector,d=>d.quickFilterValues);const gridVisibleRowsLookupSelector=d=>d.visibleRowsLookup,gridFilteredRowsLookupSelector=createSelector(gridFilterStateSelector,d=>d.filteredRowsLookup);createSelector(gridFilterStateSelector,d=>d.filteredDescendantCountLookup);const gridExpandedSortedRowEntriesSelector=createSelectorMemoized(gridVisibleRowsLookupSelector,gridSortedRowEntriesSelector,(d,m)=>m.filter(g=>d[g.id]!==!1)),gridExpandedSortedRowIdsSelector=createSelectorMemoized(gridExpandedSortedRowEntriesSelector,d=>d.map(m=>m.id)),gridFilteredSortedRowEntriesSelector=createSelectorMemoized(gridFilteredRowsLookupSelector,gridSortedRowEntriesSelector,(d,m)=>m.filter(g=>d[g.id]!==!1)),gridFilteredSortedRowIdsSelector=createSelectorMemoized(gridFilteredSortedRowEntriesSelector,d=>d.map(m=>m.id)),gridFilteredSortedTopLevelRowEntriesSelector=createSelectorMemoized(gridExpandedSortedRowEntriesSelector,gridRowTreeSelector,gridRowMaximumTreeDepthSelector,(d,m,g)=>g<2?d:d.filter(x=>{var b;return((b=m[x.id])==null?void 0:b.depth)===0})),gridExpandedRowCountSelector=createSelector(gridExpandedSortedRowEntriesSelector,d=>d.length),gridFilteredTopLevelRowCountSelector=createSelector(gridFilteredSortedTopLevelRowEntriesSelector,d=>d.length),gridFilterActiveItemsSelector=createSelectorMemoized(gridFilterModelSelector,gridColumnLookupSelector,(d,m)=>{var g;return(g=d.items)==null?void 0:g.filter(x=>{var b,E;if(!x.field)return!1;const v=m[x.field];if(!(v!=null&&v.filterOperators)||(v==null||(b=v.filterOperators)==null?void 0:b.length)===0)return!1;const S=v.filterOperators.find(C=>C.value===x.operator);return S?!S.InputComponent||x.value!=null&&((E=x.value)==null?void 0:E.toString())!=="":!1})}),gridFilterActiveItemsLookupSelector=createSelectorMemoized(gridFilterActiveItemsSelector,d=>d.reduce((g,x)=>(g[x.field]?g[x.field].push(x):g[x.field]=[x],g),{})),gridFocusStateSelector=d=>d.focus,gridFocusCellSelector=createSelector(gridFocusStateSelector,d=>d.cell),gridFocusColumnHeaderSelector=createSelector(gridFocusStateSelector,d=>d.columnHeader);createSelector(gridFocusStateSelector,d=>d.columnHeaderFilter);const unstable_gridFocusColumnGroupHeaderSelector=createSelector(gridFocusStateSelector,d=>d.columnGroupHeader),gridTabIndexStateSelector=d=>d.tabIndex,gridTabIndexCellSelector=createSelector(gridTabIndexStateSelector,d=>d.cell),gridTabIndexColumnHeaderSelector=createSelector(gridTabIndexStateSelector,d=>d.columnHeader);createSelector(gridTabIndexStateSelector,d=>d.columnHeaderFilter);const unstable_gridTabIndexColumnGroupHeaderSelector=createSelector(gridTabIndexStateSelector,d=>d.columnGroupHeader),gridDensitySelector=d=>d.density,gridDensityValueSelector=createSelector(gridDensitySelector,d=>d.value),gridDensityFactorSelector=createSelector(gridDensitySelector,d=>d.factor),gridColumnMenuSelector=d=>d.columnMenu;function GridBody(d){const{VirtualScrollerComponent:m,ColumnHeadersProps:g,children:x}=d,b=useGridPrivateApiContext(),E=useGridRootProps(),v=reactExports.useRef(null),S=useGridSelector(b,gridVisibleColumnDefinitionsSelector),C=useGridSelector(b,gridFilterActiveItemsLookupSelector),T=useGridSelector(b,gridSortColumnLookupSelector),R=useGridSelector(b,gridColumnPositionsSelector),k=useGridSelector(b,gridTabIndexColumnHeaderSelector),L=useGridSelector(b,gridTabIndexCellSelector),D=useGridSelector(b,unstable_gridTabIndexColumnGroupHeaderSelector),A=useGridSelector(b,gridFocusColumnHeaderSelector),I=useGridSelector(b,unstable_gridFocusColumnGroupHeaderSelector),N=useGridSelector(b,gridDensityFactorSelector),z=useGridSelector(b,gridColumnGroupsHeaderMaxDepthSelector),j=useGridSelector(b,gridColumnMenuSelector),Y=useGridSelector(b,gridColumnVisibilityModelSelector),B=useGridSelector(b,gridColumnGroupsHeaderStructureSelector),U=!(D===null&&k===null&&L===null);useEnhancedEffect(()=>{b.current.computeSizeAndPublishResizeEvent();const X=v.current;if(typeof ResizeObserver=="undefined")return()=>{};let re;const ie=new ResizeObserver(()=>{re=requestAnimationFrame(()=>{b.current.computeSizeAndPublishResizeEvent()})});return X&&ie.observe(X),()=>{re&&window.cancelAnimationFrame(re),X&&ie.unobserve(X)}},[b]);const W=reactExports.useRef(null),V=reactExports.useRef(null),J=reactExports.useRef(null);b.current.register("private",{columnHeadersContainerElementRef:V,columnHeadersElementRef:W,virtualScrollerRef:J,mainElementRef:v});const Q=!!b.current.getRootDimensions();return jsxRuntimeExports.jsxs(GridMainContainer,{ref:v,children:[jsxRuntimeExports.jsx(E.slots.columnHeaders,_extends$1({ref:V,innerRef:W,visibleColumns:S,filterColumnLookup:C,sortColumnLookup:T,columnPositions:R,columnHeaderTabIndexState:k,columnGroupHeaderTabIndexState:D,columnHeaderFocus:A,columnGroupHeaderFocus:I,densityFactor:N,headerGroupingMaxDepth:z,columnMenuState:j,columnVisibility:Y,columnGroupsHeaderStructure:B,hasOtherElementInTabSequence:U},g)),Q&&jsxRuntimeExports.jsx(m,{ref:J}),x]})}function GridFooterPlaceholder(){var d;const m=useGridRootProps();return m.hideFooter?null:jsxRuntimeExports.jsx(m.slots.footer,_extends$1({},(d=m.slotProps)==null?void 0:d.footer))}const GRID_ROOT_GROUP_ID="auto-generated-group-node-root",GRID_ID_AUTOGENERATED=Symbol("mui.id_autogenerated"),buildRootGroup=()=>({type:"group",id:GRID_ROOT_GROUP_ID,depth:-1,groupingField:null,groupingKey:null,isAutoGenerated:!0,children:[],childrenFromPath:{},childrenExpanded:!0,parent:null});function checkGridRowIdIsValid(d,m,g="A row was provided without id in the rows prop:"){if(d==null)throw new Error(["MUI: The data grid component requires all rows to have a unique `id` property.","Alternatively, you can use the `getRowId` prop to specify a custom id for each row.",g,JSON.stringify(m)].join(`
584
- `))}const getRowIdFromRowModel=(d,m,g)=>{const x=m?m(d):d.id;return checkGridRowIdIsValid(x,d,g),x},createRowsInternalCache=({rows:d,getRowId:m,loading:g,rowCount:x})=>{const b={type:"full",rows:[]},E={},v={};for(let S=0;S<d.length;S+=1){const C=d[S],T=getRowIdFromRowModel(C,m);E[T]=C,v[T]=T,b.rows.push(T)}return{rowsBeforePartialUpdates:d,loadingPropBeforePartialUpdates:g,rowCountPropBeforePartialUpdates:x,updates:b,dataRowIdToIdLookup:v,dataRowIdToModelLookup:E}},getTopLevelRowCount=({tree:d,rowCountProp:m=0})=>{const g=d[GRID_ROOT_GROUP_ID];return Math.max(m,g.children.length+(g.footerId==null?0:1))},getRowsStateFromCache=({apiRef:d,rowCountProp:m=0,loadingProp:g,previousTree:x,previousTreeDepths:b})=>{const E=d.current.caches.rows,{tree:v,treeDepths:S,dataRowIds:C,groupingName:T}=d.current.applyStrategyProcessor("rowTreeCreation",{previousTree:x,previousTreeDepths:b,updates:E.updates,dataRowIdToIdLookup:E.dataRowIdToIdLookup,dataRowIdToModelLookup:E.dataRowIdToModelLookup}),R=d.current.unstable_applyPipeProcessors("hydrateRows",{tree:v,treeDepths:S,dataRowIdToIdLookup:E.dataRowIdToIdLookup,dataRowIds:C,dataRowIdToModelLookup:E.dataRowIdToModelLookup});return d.current.caches.rows.updates={type:"partial",actions:{insert:[],modify:[],remove:[]},idToActionLookup:{}},_extends$1({},R,{totalRowCount:Math.max(m,R.dataRowIds.length),totalTopLevelRowCount:getTopLevelRowCount({tree:R.tree,rowCountProp:m}),groupingName:T,loading:g})},isAutoGeneratedRow=d=>d.type==="skeletonRow"||d.type==="footer"||d.type==="group"&&d.isAutoGenerated||d.type==="pinnedRow"&&d.isAutoGenerated,getTreeNodeDescendants=(d,m,g)=>{const x=d[m];if(x.type!=="group")return[];const b=[];for(let E=0;E<x.children.length;E+=1){const v=x.children[E];(!g||!isAutoGeneratedRow(d[v]))&&b.push(v);const S=getTreeNodeDescendants(d,v,g);for(let C=0;C<S.length;C+=1)b.push(S[C])}return!g&&x.footerId!=null&&b.push(x.footerId),b},updateCacheWithNewRows=({previousCache:d,getRowId:m,updates:g})=>{var x,b,E;if(d.updates.type==="full")throw new Error("MUI: Unable to prepare a partial update if a full update is not applied yet");const v=new Map;g.forEach(L=>{const D=getRowIdFromRowModel(L,m,"A row was provided without id when calling updateRows():");v.has(D)?v.set(D,_extends$1({},v.get(D),L)):v.set(D,L)});const S={type:"partial",actions:{insert:[...(x=d.updates.actions.insert)!=null?x:[]],modify:[...(b=d.updates.actions.modify)!=null?b:[]],remove:[...(E=d.updates.actions.remove)!=null?E:[]]},idToActionLookup:_extends$1({},d.updates.idToActionLookup)},C=_extends$1({},d.dataRowIdToModelLookup),T=_extends$1({},d.dataRowIdToIdLookup),R={insert:{},modify:{},remove:{}};v.forEach((L,D)=>{const A=S.idToActionLookup[D];if(L._action==="delete"){if(A==="remove"||!C[D])return;A!=null&&(R[A][D]=!0),S.actions.remove.push(D),delete C[D],delete T[D];return}const I=C[D];if(I){A==="remove"?(R.remove[D]=!0,S.actions.modify.push(D)):A==null&&S.actions.modify.push(D),C[D]=_extends$1({},I,L);return}A==="remove"?(R.remove[D]=!0,S.actions.insert.push(D)):A==null&&S.actions.insert.push(D),C[D]=L,T[D]=D});const k=Object.keys(R);for(let L=0;L<k.length;L+=1){const D=k[L],A=R[D];Object.keys(A).length>0&&(S.actions[D]=S.actions[D].filter(I=>!A[I]))}return{dataRowIdToModelLookup:C,dataRowIdToIdLookup:T,updates:S,rowsBeforePartialUpdates:d.rowsBeforePartialUpdates,loadingPropBeforePartialUpdates:d.loadingPropBeforePartialUpdates,rowCountPropBeforePartialUpdates:d.rowCountPropBeforePartialUpdates}};function calculatePinnedRowsHeight(d){var m,g;const x=gridPinnedRowsSelector(d),b=(x==null||(m=x.top)==null?void 0:m.reduce((v,S)=>(v+=d.current.unstable_getRowHeight(S.id),v),0))||0,E=(x==null||(g=x.bottom)==null?void 0:g.reduce((v,S)=>(v+=d.current.unstable_getRowHeight(S.id),v),0))||0;return{top:b,bottom:E}}function getMinimalContentHeight(d,m){const g=gridDensityFactorSelector(d);return`var(--DataGrid-overlayHeight, ${2*Math.floor(m*g)}px)`}const GridOverlayWrapperRoot=styled$1("div",{name:"MuiDataGrid",slot:"OverlayWrapper",shouldForwardProp:d=>d!=="overlayType",overridesResolver:(d,m)=>m.overlayWrapper})(({overlayType:d})=>({position:"sticky",top:0,left:0,width:0,height:0,zIndex:d==="loadingOverlay"?5:4})),GridOverlayWrapperInner=styled$1("div",{name:"MuiDataGrid",slot:"OverlayWrapperInner",shouldForwardProp:d=>d!=="overlayType",overridesResolver:(d,m)=>m.overlayWrapperInner})({}),useUtilityClasses$$=d=>{const{classes:m}=d;return composeClasses({root:["overlayWrapper"],inner:["overlayWrapperInner"]},getDataGridUtilityClass,m)};function GridOverlayWrapper(d){var m,g;const x=useGridApiContext(),b=useGridRootProps(),[E,v]=reactExports.useState(()=>{var R,k;return(R=(k=x.current.getRootDimensions())==null?void 0:k.viewportInnerSize)!=null?R:null}),S=reactExports.useCallback(()=>{var R,k;v((R=(k=x.current.getRootDimensions())==null?void 0:k.viewportInnerSize)!=null?R:null)},[x]);useEnhancedEffect(()=>x.current.subscribeEvent("viewportInnerSizeChange",S),[x,S]);let C=(m=E==null?void 0:E.height)!=null?m:0;b.autoHeight&&C===0&&(C=getMinimalContentHeight(x,b.rowHeight));const T=useUtilityClasses$$(_extends$1({},d,{classes:b.classes}));return E?jsxRuntimeExports.jsx(GridOverlayWrapperRoot,{className:clsx(T.root),overlayType:d.overlayType,children:jsxRuntimeExports.jsx(GridOverlayWrapperInner,_extends$1({className:clsx(T.inner),style:{height:C,width:(g=E==null?void 0:E.width)!=null?g:0}},d))}):null}function GridOverlays(){const d=useGridApiContext(),m=useGridRootProps(),g=useGridSelector(d,gridRowCountSelector),x=useGridSelector(d,gridExpandedRowCountSelector),b=useGridSelector(d,gridRowsLoadingSelector),E=!b&&g===0,v=!b&&g>0&&x===0;let S=null,C="";if(E){var T;S=jsxRuntimeExports.jsx(m.slots.noRowsOverlay,_extends$1({},(T=m.slotProps)==null?void 0:T.noRowsOverlay)),C="noRowsOverlay"}if(v){var R;S=jsxRuntimeExports.jsx(m.slots.noResultsOverlay,_extends$1({},(R=m.slotProps)==null?void 0:R.noResultsOverlay)),C="noResultsOverlay"}if(b){var k;S=jsxRuntimeExports.jsx(m.slots.loadingOverlay,_extends$1({},(k=m.slotProps)==null?void 0:k.loadingOverlay)),C="loadingOverlay"}return S===null?null:jsxRuntimeExports.jsx(GridOverlayWrapper,{overlayType:C,children:S})}function fastMemo(d){return reactExports.memo(d,fastObjectShallowCompare)}let cachedSupportsPreventScroll;function doesSupportPreventScroll(){return cachedSupportsPreventScroll===void 0&&document.createElement("div").focus({get preventScroll(){return cachedSupportsPreventScroll=!0,!1}}),cachedSupportsPreventScroll}var GridEditModes=function(d){return d.Cell="cell",d.Row="row",d}(GridEditModes||{}),GridCellModes=function(d){return d.Edit="edit",d.View="view",d}(GridCellModes||{}),GridRowModes=function(d){return d.Edit="edit",d.View="view",d}(GridRowModes||{}),GridLogicOperator=function(d){return d.And="and",d.Or="or",d}(GridLogicOperator||{}),GridCellEditStartReasons=function(d){return d.enterKeyDown="enterKeyDown",d.cellDoubleClick="cellDoubleClick",d.printableKeyDown="printableKeyDown",d.deleteKeyDown="deleteKeyDown",d.pasteKeyDown="pasteKeyDown",d}(GridCellEditStartReasons||{}),GridCellEditStopReasons=function(d){return d.cellFocusOut="cellFocusOut",d.escapeKeyDown="escapeKeyDown",d.enterKeyDown="enterKeyDown",d.tabKeyDown="tabKeyDown",d.shiftTabKeyDown="shiftTabKeyDown",d}(GridCellEditStopReasons||{}),GridRowEditStartReasons=function(d){return d.enterKeyDown="enterKeyDown",d.cellDoubleClick="cellDoubleClick",d.printableKeyDown="printableKeyDown",d.deleteKeyDown="deleteKeyDown",d}(GridRowEditStartReasons||{}),GridRowEditStopReasons=function(d){return d.rowFocusOut="rowFocusOut",d.escapeKeyDown="escapeKeyDown",d.enterKeyDown="enterKeyDown",d.tabKeyDown="tabKeyDown",d.shiftTabKeyDown="shiftTabKeyDown",d}(GridRowEditStopReasons||{});function isLeaf(d){return d.field!==void 0}function isOverflown(d){return d.scrollHeight>d.clientHeight||d.scrollWidth>d.clientWidth}function findParentElementFromClassName(d,m){return d.closest(`.${m}`)}function escapeOperandAttributeSelector(d){return d.replace(/["\\]/g,"\\$&")}function getGridColumnHeaderElement(d,m){return d.querySelector(`[role="columnheader"][data-field="${escapeOperandAttributeSelector(m)}"]`)}function getGridRowElementSelector(d){return`.${gridClasses.row}[data-id="${escapeOperandAttributeSelector(String(d))}"]`}function getGridRowElement(d,m){return d.querySelector(getGridRowElementSelector(m))}function getGridCellElement(d,{id:m,field:g}){const x=getGridRowElementSelector(m),b=`.${gridClasses.cell}[data-field="${escapeOperandAttributeSelector(g)}"]`,E=`${x} ${b}`;return d.querySelector(E)}function isEventTargetInPortal(d){return d.target.nodeType===1&&!d.currentTarget.contains(d.target)}function useGridApiMethod(d,m,g){const x=reactExports.useRef(!0);reactExports.useEffect(()=>{x.current=!1,d.current.register(g,m)},[d,g,m]),x.current&&d.current.register(g,m)}class MissingRowIdError extends Error{}function useGridParamsApi(d,m){const{getRowId:g}=m,x=reactExports.useCallback(A=>({field:A,colDef:d.current.getColumn(A)}),[d]),b=reactExports.useCallback(A=>{const I=d.current.getRow(A);if(!I)throw new MissingRowIdError(`No row with id #${A} found`);return{id:A,columns:d.current.getAllColumns(),row:I}},[d]),E=reactExports.useCallback((A,I)=>{const N=d.current.getRow(A),z=d.current.getRowNode(A);if(!N||!z)throw new MissingRowIdError(`No row with id #${A} found`);const j=gridFocusCellSelector(d),Y=gridTabIndexCellSelector(d);return{id:A,field:I,row:N,rowNode:z,value:N[I],colDef:d.current.getColumn(I),cellMode:d.current.getCellMode(A,I),api:d.current,hasFocus:j!==null&&j.field===I&&j.id===A,tabIndex:Y&&Y.field===I&&Y.id===A?0:-1}},[d]),v=reactExports.useCallback((A,I)=>{const N=d.current.getColumn(I),z=d.current.getCellValue(A,I),j=d.current.getRow(A),Y=d.current.getRowNode(A);if(!j||!Y)throw new MissingRowIdError(`No row with id #${A} found`);const B=gridFocusCellSelector(d),U=gridTabIndexCellSelector(d),W={id:A,field:I,row:j,rowNode:Y,colDef:N,cellMode:d.current.getCellMode(A,I),hasFocus:B!==null&&B.field===I&&B.id===A,tabIndex:U&&U.field===I&&U.id===A?0:-1,value:z,formattedValue:z,isEditable:!1};return N&&N.valueFormatter&&(W.formattedValue=N.valueFormatter({id:A,field:W.field,value:W.value,api:d.current})),W.isEditable=N&&d.current.isCellEditable(W),W},[d]),S=reactExports.useCallback((A,I)=>{const N=d.current.getColumn(I);if(!N||!N.valueGetter){const z=d.current.getRow(A);if(!z)throw new MissingRowIdError(`No row with id #${A} found`);return z[I]}return N.valueGetter(E(A,I))},[d,E]),C=reactExports.useCallback((A,I)=>{var N;const z=GRID_ID_AUTOGENERATED in A?A[GRID_ID_AUTOGENERATED]:(N=g==null?void 0:g(A))!=null?N:A.id,j=I.field;return!I||!I.valueGetter?A[j]:I.valueGetter(E(z,j))},[E,g]),T=reactExports.useCallback((A,I)=>{var N;const z=C(A,I);if(!I||!I.valueFormatter)return z;const j=(N=g?g(A):A.id)!=null?N:A[GRID_ID_AUTOGENERATED],Y=I.field;return I.valueFormatter({id:j,field:Y,value:z,api:d.current})},[d,g,C]),R=reactExports.useCallback(A=>d.current.rootElementRef.current?getGridColumnHeaderElement(d.current.rootElementRef.current,A):null,[d]),k=reactExports.useCallback(A=>d.current.rootElementRef.current?getGridRowElement(d.current.rootElementRef.current,A):null,[d]),L=reactExports.useCallback((A,I)=>d.current.rootElementRef.current?getGridCellElement(d.current.rootElementRef.current,{id:A,field:I}):null,[d]);useGridApiMethod(d,{getCellValue:S,getCellParams:v,getCellElement:L,getRowValue:C,getRowFormattedValue:T,getRowParams:b,getRowElement:k,getColumnHeaderParams:x,getColumnHeaderElement:R},"public")}const _excluded$1n=["changeReason","unstable_updateValueOnRender"],_excluded3$3=["column","rowId","editCellState","align","children","colIndex","height","width","className","showRightBorder","extendRowFullWidth","row","colSpan","disableDragEvents","isNotVisible","onClick","onDoubleClick","onMouseDown","onMouseUp","onMouseOver","onKeyDown","onKeyUp","onDragEnter","onDragOver","style"],_excluded4=["changeReason","unstable_updateValueOnRender"],EMPTY_CELL_PARAMS={id:-1,field:"__unset__",row:{},rowNode:{id:-1,depth:0,type:"leaf",parent:-1,groupingKey:null},colDef:{type:"string",field:"__unset__",computedWidth:0},cellMode:GridCellModes.View,hasFocus:!1,tabIndex:-1,value:null,formattedValue:"__unset__",isEditable:!1,api:{}},useUtilityClasses$_=d=>{const{align:m,showRightBorder:g,isEditable:x,isSelected:b,isSelectionMode:E,classes:v}=d,S={root:["cell",`cell--text${capitalize$1(m)}`,x&&"cell--editable",b&&"selected",g&&"cell--withRightBorder",E&&!x&&"cell--selectionMode","withBorderColor"],content:["cellContent"]};return composeClasses(S,getDataGridUtilityClass,v)},GridCellWrapper=reactExports.forwardRef((d,m)=>{const{column:g,rowId:x,editCellState:b}=d,E=useGridApiContext(),v=useGridRootProps(),S=g.field,C=useGridSelector(E,()=>{try{const Q=E.current.getCellParams(x,S);return Q.api=E.current,Q}catch(J){if(J instanceof MissingRowIdError)return EMPTY_CELL_PARAMS;throw J}},objectShallowCompare),T=useGridSelector(E,()=>E.current.unstable_applyPipeProcessors("isCellSelected",!1,{id:x,field:S}));if(C===EMPTY_CELL_PARAMS)return null;const{cellMode:R,hasFocus:k,isEditable:L,value:D,formattedValue:A}=C,I=g.type==="actions",N=(R==="view"||!L)&&!I?C.tabIndex:-1,{classes:z,getCellClassName:j}=v,Y=E.current.unstable_applyPipeProcessors("cellClassName",[],{id:x,field:S});g.cellClassName&&Y.push(typeof g.cellClassName=="function"?g.cellClassName(C):g.cellClassName),j&&Y.push(j(C));let B;if(b==null&&g.renderCell&&(B=g.renderCell(C),Y.push(gridClasses["cell--withRenderer"]),Y.push(z==null?void 0:z["cell--withRenderer"])),b!=null&&g.renderEditCell){const J=E.current.getRowWithUpdatedValues(x,g.field),Q=_objectWithoutPropertiesLoose(b,_excluded$1n),X=_extends$1({},C,{row:J},Q);B=g.renderEditCell(X),Y.push(gridClasses["cell--editing"]),Y.push(z==null?void 0:z["cell--editing"])}const{slots:U}=v,W=U.cell,V=_extends$1({},d,{ref:m,field:S,formattedValue:A,hasFocus:k,isEditable:L,isSelected:T,value:D,cellMode:R,children:B,tabIndex:N,className:clsx(Y)});return reactExports.createElement(W,V)}),MemoizedCellWrapper=fastMemo(GridCellWrapper),GridCellV7=reactExports.forwardRef((d,m)=>{var g,x,b,E;const{column:v,rowId:S,editCellState:C,align:T,colIndex:R,height:k,width:L,className:D,showRightBorder:A,colSpan:I,disableDragEvents:N,isNotVisible:z,onClick:j,onDoubleClick:Y,onMouseDown:B,onMouseUp:U,onMouseOver:W,onKeyDown:V,onKeyUp:J,onDragEnter:Q,onDragOver:X,style:re}=d,ie=_objectWithoutPropertiesLoose(d,_excluded3$3),oe=useGridApiContext(),Z=useGridRootProps(),ee=v.field,ce=useGridSelector(oe,()=>{try{const st=oe.current.getCellParams(S,ee);return st.api=oe.current,st}catch(Xe){if(Xe instanceof MissingRowIdError)return EMPTY_CELL_PARAMS;throw Xe}},objectShallowCompare),fe=useGridSelector(oe,()=>oe.current.unstable_applyPipeProcessors("isCellSelected",!1,{id:S,field:ee})),{cellMode:ae,hasFocus:ue,isEditable:pe,value:ge,formattedValue:ye}=ce,Ee=v.type==="actions"&&((g=(x=v).getActions)==null?void 0:g.call(x,oe.current.getRowParams(S)).some(Xe=>!Xe.props.disabled)),ve=(ae==="view"||!pe)&&!Ee?ce.tabIndex:-1,{classes:Se,getCellClassName:$e}=Z,Me=oe.current.unstable_applyPipeProcessors("cellClassName",[],{id:S,field:ee});v.cellClassName&&Me.push(typeof v.cellClassName=="function"?v.cellClassName(ce):v.cellClassName),$e&&Me.push($e(ce));const Re=ye==null?ge:ye,De=reactExports.useRef(null),Be=useForkRef(m,De),Le=reactExports.useRef(null),Ge=(b=Z.unstable_cellSelection)!=null?b:!1,Ie={align:T,showRightBorder:A,isEditable:pe,classes:Z.classes,isSelected:fe,isSelectionMode:Ge},Ye=useUtilityClasses$_(Ie),He=reactExports.useCallback(Xe=>st=>{const xt=oe.current.getCellParams(S,ee||"");oe.current.publishEvent(Xe,xt,st),U&&U(st)},[oe,ee,U,S]),Ve=reactExports.useCallback(Xe=>st=>{const xt=oe.current.getCellParams(S,ee||"");oe.current.publishEvent(Xe,xt,st),B&&B(st)},[oe,ee,B,S]),rt=reactExports.useCallback((Xe,st)=>xt=>{if(!oe.current.getRow(S))return;const Je=oe.current.getCellParams(S,ee||"");oe.current.publishEvent(Xe,Je,xt),st&&st(xt)},[oe,ee,S]),Oe=reactExports.useMemo(()=>_extends$1(z?{padding:0,opacity:0,width:0,border:0}:{minWidth:L,maxWidth:L,minHeight:k,maxHeight:k==="auto"?"none":k},re),[L,k,z,re]);if(reactExports.useEffect(()=>{if(!ue||ae===GridCellModes.Edit)return;const Xe=ownerDocument(oe.current.rootElementRef.current);if(De.current&&!De.current.contains(Xe.activeElement)){const st=De.current.querySelector('[tabindex="0"]'),xt=Le.current||st||De.current;if(doesSupportPreventScroll())xt.focus({preventScroll:!0});else{const Je=oe.current.getScrollPosition();xt.focus(),oe.current.scroll(Je)}}},[ue,ae,oe]),ce===EMPTY_CELL_PARAMS)return null;let ot=ie.onFocus,ke;if(C==null&&v.renderCell&&(ke=v.renderCell(ce),Me.push(gridClasses["cell--withRenderer"]),Me.push(Se==null?void 0:Se["cell--withRenderer"])),C!=null&&v.renderEditCell){const Xe=oe.current.getRowWithUpdatedValues(S,v.field),st=_objectWithoutPropertiesLoose(C,_excluded4),xt=_extends$1({},ce,{row:Xe},st);ke=v.renderEditCell(xt),Me.push(gridClasses["cell--editing"]),Me.push(Se==null?void 0:Se["cell--editing"])}if(ke===void 0){const Xe=Re==null?void 0:Re.toString();ke=jsxRuntimeExports.jsx("div",{className:Ye.content,title:Xe,role:"presentation",children:Xe})}reactExports.isValidElement(ke)&&Ee&&(ke=reactExports.cloneElement(ke,{focusElementRef:Le}));const Ne=N?null:{onDragEnter:rt("cellDragEnter",Q),onDragOver:rt("cellDragOver",X)},Ke=(E=Z.experimentalFeatures)==null?void 0:E.ariaV7;return jsxRuntimeExports.jsx("div",_extends$1({ref:Be,className:clsx(D,Me,Ye.root),role:Ke?"gridcell":"cell","data-field":ee,"data-colindex":R,"aria-colindex":R+1,"aria-colspan":I,style:Oe,tabIndex:ve,onClick:rt("cellClick",j),onDoubleClick:rt("cellDoubleClick",Y),onMouseOver:rt("cellMouseOver",W),onMouseDown:Ve("cellMouseDown"),onMouseUp:He("cellMouseUp"),onKeyDown:rt("cellKeyDown",V),onKeyUp:rt("cellKeyUp",J)},Ne,ie,{onFocus:ot,children:ke}))}),MemoizedGridCellV7=fastMemo(GridCellV7),_excluded$1m=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","hasFocus","tabIndex"],useUtilityClasses$Z=d=>{const{classes:m}=d;return composeClasses({root:["booleanCell"]},getDataGridUtilityClass,m)};function GridBooleanCellRaw(d){const{value:m}=d,g=_objectWithoutPropertiesLoose(d,_excluded$1m),x=useGridApiContext(),b=useGridRootProps(),E={classes:b.classes},v=useUtilityClasses$Z(E),S=reactExports.useMemo(()=>m?b.slots.booleanCellTrueIcon:b.slots.booleanCellFalseIcon,[b.slots.booleanCellFalseIcon,b.slots.booleanCellTrueIcon,m]);return jsxRuntimeExports.jsx(S,_extends$1({fontSize:"small",className:v.root,titleAccess:x.current.getLocaleText(m?"booleanCellTrueLabel":"booleanCellFalseLabel"),"data-value":!!m},g))}const GridBooleanCell=reactExports.memo(GridBooleanCellRaw),renderBooleanCell=d=>isAutoGeneratedRow(d.rowNode)?"":jsxRuntimeExports.jsx(GridBooleanCell,_extends$1({},d)),_excluded$1l=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","className","hasFocus","isValidating","isProcessingProps","error","onValueChange"],useUtilityClasses$Y=d=>{const{classes:m}=d;return composeClasses({root:["editBooleanCell"]},getDataGridUtilityClass,m)};function GridEditBooleanCell(d){var m;const{id:g,value:x,field:b,className:E,hasFocus:v,onValueChange:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$1l),T=useGridApiContext(),R=reactExports.useRef(null),k=useId(),[L,D]=reactExports.useState(x),A=useGridRootProps(),I={classes:A.classes},N=useUtilityClasses$Y(I),z=reactExports.useCallback(j=>vt(this,null,function*(){const Y=j.target.checked;S&&(yield S(j,Y)),D(Y),yield T.current.setEditCellValue({id:g,field:b,value:Y},j)}),[T,b,g,S]);return reactExports.useEffect(()=>{D(x)},[x]),useEnhancedEffect(()=>{v&&R.current.focus()},[v]),jsxRuntimeExports.jsx("label",_extends$1({htmlFor:k,className:clsx(N.root,E)},C,{children:jsxRuntimeExports.jsx(A.slots.baseCheckbox,_extends$1({id:k,inputRef:R,checked:!!L,onChange:z,size:"small"},(m=A.slotProps)==null?void 0:m.baseCheckbox))}))}const renderEditBooleanCell=d=>jsxRuntimeExports.jsx(GridEditBooleanCell,_extends$1({},d)),_excluded$1k=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","hasFocus","inputProps","isValidating","isProcessingProps","onValueChange"],StyledInputBase=styled(InputBase)({fontSize:"inherit"}),useUtilityClasses$X=d=>{const{classes:m}=d;return composeClasses({root:["editInputCell"]},getDataGridUtilityClass,m)};function GridEditDateCell(d){const{id:m,value:g,field:x,colDef:b,hasFocus:E,inputProps:v,onValueChange:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$1k),T=b.type==="dateTime",R=useGridApiContext(),k=reactExports.useRef(),L=reactExports.useMemo(()=>{let B;g==null?B=null:g instanceof Date?B=g:B=new Date((g!=null?g:"").toString());let U;return B==null||Number.isNaN(B.getTime())?U="":U=new Date(B.getTime()-B.getTimezoneOffset()*60*1e3).toISOString().substr(0,T?16:10),{parsed:B,formatted:U}},[g,T]),[D,A]=reactExports.useState(L),N={classes:useGridRootProps().classes},z=useUtilityClasses$X(N),j=reactExports.useCallback(B=>{if(B==="")return null;const[U,W]=B.split("T"),[V,J,Q]=U.split("-"),X=new Date;if(X.setFullYear(Number(V),Number(J)-1,Number(Q)),X.setHours(0,0,0,0),W){const[re,ie]=W.split(":");X.setHours(Number(re),Number(ie),0,0)}return X},[]),Y=reactExports.useCallback(B=>vt(this,null,function*(){const U=B.target.value,W=j(U);S&&(yield S(B,W)),A({parsed:W,formatted:U}),R.current.setEditCellValue({id:m,field:x,value:W},B)}),[R,x,m,S,j]);return reactExports.useEffect(()=>{A(B=>{var U,W;return L.parsed!==B.parsed&&((U=L.parsed)==null?void 0:U.getTime())!==((W=B.parsed)==null?void 0:W.getTime())?L:B})},[L]),useEnhancedEffect(()=>{E&&k.current.focus()},[E]),jsxRuntimeExports.jsx(StyledInputBase,_extends$1({inputRef:k,fullWidth:!0,className:z.root,type:T?"datetime-local":"date",inputProps:_extends$1({max:T?"9999-12-31T23:59":"9999-12-31"},v),value:D.formatted,onChange:Y},C))}const renderEditDateCell=d=>jsxRuntimeExports.jsx(GridEditDateCell,_extends$1({},d)),_excluded$1j=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","hasFocus","isValidating","debounceMs","isProcessingProps","onValueChange"],useUtilityClasses$W=d=>{const{classes:m}=d;return composeClasses({root:["editInputCell"]},getDataGridUtilityClass,m)},GridEditInputCellRoot=styled(InputBase,{name:"MuiDataGrid",slot:"EditInputCell",overridesResolver:(d,m)=>m.editInputCell})(({theme:d})=>_extends$1({},d.typography.body2,{padding:"1px 0","& input":{padding:"0 16px",height:"100%"}})),GridEditInputCell=reactExports.forwardRef((d,m)=>{const g=useGridRootProps(),{id:x,value:b,field:E,colDef:v,hasFocus:S,debounceMs:C=200,isProcessingProps:T,onValueChange:R}=d,k=_objectWithoutPropertiesLoose(d,_excluded$1j),L=useGridApiContext(),D=reactExports.useRef(),[A,I]=reactExports.useState(b),N=useUtilityClasses$W(g),z=reactExports.useCallback(Y=>vt(void 0,null,function*(){const B=Y.target.value;R&&(yield R(Y,B));const U=L.current.getColumn(E);let W=B;U.valueParser&&(W=U.valueParser(B,L.current.getCellParams(x,E))),I(W),L.current.setEditCellValue({id:x,field:E,value:W,debounceMs:C,unstable_skipValueParser:!0},Y)}),[L,C,E,x,R]),j=L.current.unstable_getEditCellMeta(x,E);return reactExports.useEffect(()=>{(j==null?void 0:j.changeReason)!=="debouncedSetEditCellValue"&&I(b)},[j,b]),useEnhancedEffect(()=>{S&&D.current.focus()},[S]),jsxRuntimeExports.jsx(GridEditInputCellRoot,_extends$1({ref:m,inputRef:D,className:N.root,ownerState:g,fullWidth:!0,type:v.type==="number"?v.type:"text",value:A!=null?A:"",onChange:z,endAdornment:T?jsxRuntimeExports.jsx(g.slots.loadIcon,{fontSize:"small",color:"action"}):void 0},k))}),renderEditInputCell=d=>jsxRuntimeExports.jsx(GridEditInputCell,_extends$1({},d)),isEscapeKey=d=>d==="Escape",isEnterKey=d=>d==="Enter",isTabKey=d=>d==="Tab",isSpaceKey=d=>d===" ",isArrowKeys=d=>d.indexOf("Arrow")===0,isHomeOrEndKeys=d=>d==="Home"||d==="End",isPageKeys=d=>d.indexOf("Page")===0;function isPrintableKey(d){return d.key.length===1&&!d.ctrlKey&&!d.metaKey}const isNavigationKey=d=>isHomeOrEndKeys(d)||isArrowKeys(d)||isPageKeys(d)||isSpaceKey(d),isKeyboardEvent$1=d=>!!d.key,isHideMenuKey=d=>isTabKey(d)||isEscapeKey(d);function isSingleSelectColDef(d){return(d==null?void 0:d.type)==="singleSelect"}function getValueFromValueOptions(d,m,g){if(m===void 0)return;const x=m.find(b=>{const E=g(b);return String(E)===String(d)});return g(x)}const _excluded$1i=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","className","hasFocus","isValidating","isProcessingProps","error","onValueChange","initialOpen","getOptionLabel","getOptionValue"],_excluded2$c=["MenuProps"];function isKeyboardEvent(d){return!!d.key}function GridEditSingleSelectCell(d){var m,g,x;const b=useGridRootProps(),{id:E,value:v,field:S,row:C,colDef:T,hasFocus:R,error:k,onValueChange:L,initialOpen:D=b.editMode===GridEditModes.Cell,getOptionLabel:A,getOptionValue:I}=d,N=_objectWithoutPropertiesLoose(d,_excluded$1i),z=useGridApiContext(),j=reactExports.useRef(),Y=reactExports.useRef(),[B,U]=reactExports.useState(D),V=(g=(((m=b.slotProps)==null?void 0:m.baseSelect)||{}).native)!=null?g:!1,J=((x=b.slotProps)==null?void 0:x.baseSelect)||{},{MenuProps:Q}=J,X=_objectWithoutPropertiesLoose(J,_excluded2$c);if(useEnhancedEffect(()=>{if(R){var fe;(fe=Y.current)==null||fe.focus()}},[R]),!isSingleSelectColDef(T))return null;let re;if(typeof(T==null?void 0:T.valueOptions)=="function"?re=T==null?void 0:T.valueOptions({id:E,row:C,field:S}):re=T==null?void 0:T.valueOptions,!re)return null;const ie=I||T.getOptionValue,oe=A||T.getOptionLabel,Z=fe=>vt(this,null,function*(){if(!isSingleSelectColDef(T)||!re)return;U(!1);const ae=fe.target,ue=getValueFromValueOptions(ae.value,re,ie);L&&(yield L(fe,ue)),yield z.current.setEditCellValue({id:E,field:S,value:ue},fe)}),ee=(fe,ae)=>{if(b.editMode===GridEditModes.Row){U(!1);return}if(ae==="backdropClick"||isEscapeKey(fe.key)){const ue=z.current.getCellParams(E,S);z.current.publishEvent("cellEditStop",_extends$1({},ue,{reason:isEscapeKey(fe.key)?GridCellEditStopReasons.escapeKeyDown:GridCellEditStopReasons.cellFocusOut}))}},ce=fe=>{isKeyboardEvent(fe)&&fe.key==="Enter"||U(!0)};return!re||!T?null:jsxRuntimeExports.jsx(b.slots.baseSelect,_extends$1({ref:j,inputRef:Y,value:v,onChange:Z,open:B,onOpen:ce,MenuProps:_extends$1({onClose:ee},Q),error:k,native:V,fullWidth:!0},N,X,{children:re.map(fe=>{var ae;const ue=ie(fe);return reactExports.createElement(b.slots.baseSelectOption,_extends$1({},((ae=b.slotProps)==null?void 0:ae.baseSelectOption)||{},{native:V,key:ue,value:ue}),oe(fe))})}))}const renderEditSingleSelectCell=d=>jsxRuntimeExports.jsx(GridEditSingleSelectCell,_extends$1({},d)),_excluded$1h=["open","target","onClose","children","position","className","onExited"],useUtilityClasses$V=d=>{const{classes:m}=d;return composeClasses({root:["menu"]},getDataGridUtilityClass,m)},GridMenuRoot=styled(Popper,{name:"MuiDataGrid",slot:"Menu",overridesResolver:(d,m)=>m.menu})(({theme:d})=>({zIndex:d.zIndex.modal,[`& .${gridClasses.menuList}`]:{outline:0}})),transformOrigin={"bottom-start":"top left","bottom-end":"top right"};function GridMenu(d){var m;const{open:g,target:x,onClose:b,children:E,position:v,className:S,onExited:C}=d,T=_objectWithoutPropertiesLoose(d,_excluded$1h),R=useGridApiContext(),k=useGridRootProps(),L=useUtilityClasses$V(k),D=reactExports.useRef(null);useEnhancedEffect(()=>{if(g)D.current=document.activeElement instanceof HTMLElement?document.activeElement:null;else{var N,z;(N=D.current)==null||(z=N.focus)==null||z.call(N),D.current=null}},[g]),reactExports.useEffect(()=>{const N=g?"menuOpen":"menuClose";R.current.publishEvent(N,{target:x})},[R,g,x]);const A=N=>z=>{N&&N(),C&&C(z)},I=N=>{N.target&&(x===N.target||x!=null&&x.contains(N.target))||b(N)};return jsxRuntimeExports.jsx(GridMenuRoot,_extends$1({as:k.slots.basePopper,className:clsx(S,L.root),ownerState:k,open:g,anchorEl:x,transition:!0,placement:v},T,(m=k.slotProps)==null?void 0:m.basePopper,{children:({TransitionProps:N,placement:z})=>jsxRuntimeExports.jsx(ClickAwayListener,{onClickAway:I,mouseEvent:"onMouseDown",children:jsxRuntimeExports.jsx(Grow,_extends$1({},N,{style:{transformOrigin:transformOrigin[z]},onExited:A(N==null?void 0:N.onExited),children:jsxRuntimeExports.jsx(Paper,{children:E})}))})}))}const _excluded$1g=["api","colDef","id","hasFocus","isEditable","field","value","formattedValue","row","rowNode","cellMode","tabIndex","position","focusElementRef"],hasActions=d=>typeof d.getActions=="function";function GridActionsCell(d){var m;const{colDef:g,id:x,hasFocus:b,tabIndex:E,position:v="bottom-end",focusElementRef:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$1g),[T,R]=reactExports.useState(-1),[k,L]=reactExports.useState(!1),D=useGridApiContext(),A=reactExports.useRef(null),I=reactExports.useRef(null),N=reactExports.useRef(!1),z=reactExports.useRef({}),j=useTheme$1(),Y=useId(),B=useId(),U=useGridRootProps();if(!hasActions(g))throw new Error("MUI: Missing the `getActions` property in the `GridColDef`.");const W=g.getActions(D.current.getRowParams(x)),V=W.filter(ce=>!ce.props.showInMenu),J=W.filter(ce=>ce.props.showInMenu),Q=V.length+(J.length?1:0);reactExports.useLayoutEffect(()=>{b||Object.entries(z.current).forEach(([ce,fe])=>{fe==null||fe.stop({},()=>{delete z.current[ce]})})},[b]),reactExports.useEffect(()=>{if(T<0||!A.current||T>=A.current.children.length)return;A.current.children[T].focus({preventScroll:!0})},[T]),reactExports.useEffect(()=>{b||(R(-1),N.current=!1)},[b]),reactExports.useImperativeHandle(S,()=>({focus(){if(!N.current){const ce=W.findIndex(fe=>!fe.props.disabled);R(ce)}}}),[W]),reactExports.useEffect(()=>{T>=Q&&R(Q-1)},[T,Q]);const X=()=>{L(!0),R(Q-1),N.current=!0},re=()=>{L(!1)},ie=ce=>fe=>{z.current[ce]=fe},oe=(ce,fe)=>ae=>{R(ce),N.current=!0,fe&&fe(ae)},Z=ce=>{if(Q<=1)return;const fe=(ue,pe)=>{var ge;if(ue<0||ue>W.length)return ue;const ye=j.direction==="rtl"?-1:1,Ee=(pe==="left"?-1:1)*ye;return(ge=W[ue+Ee])!=null&&ge.props.disabled?fe(ue+Ee,pe):ue+Ee};let ae=T;ce.key==="ArrowRight"?ae=fe(T,"right"):ce.key==="ArrowLeft"&&(ae=fe(T,"left")),!(ae<0||ae>=Q)&&ae!==T&&(ce.preventDefault(),ce.stopPropagation(),R(ae))},ee=ce=>{ce.key==="Tab"&&ce.preventDefault(),["Tab","Escape"].includes(ce.key)&&re()};return jsxRuntimeExports.jsxs("div",_extends$1({role:"menu",ref:A,tabIndex:-1,className:gridClasses.actionsCell,onKeyDown:Z},C,{children:[V.map((ce,fe)=>reactExports.cloneElement(ce,{key:fe,touchRippleRef:ie(fe),onClick:oe(fe,ce.props.onClick),tabIndex:T===fe?E:-1})),J.length>0&&B&&jsxRuntimeExports.jsx(U.slots.baseIconButton,_extends$1({ref:I,id:B,"aria-label":D.current.getLocaleText("actionsCellMore"),"aria-haspopup":"menu","aria-expanded":k,"aria-controls":k?Y:void 0,role:"menuitem",size:"small",onClick:X,touchRippleRef:ie(B),tabIndex:T===V.length?E:-1},(m=U.slotProps)==null?void 0:m.baseIconButton,{children:jsxRuntimeExports.jsx(U.slots.moreActionsIcon,{fontSize:"small"})})),J.length>0&&jsxRuntimeExports.jsx(GridMenu,{open:k,target:I.current,position:v,onClose:re,children:jsxRuntimeExports.jsx(MenuList,{id:Y,className:gridClasses.menuList,onKeyDown:ee,"aria-labelledby":B,variant:"menu",autoFocusItem:!0,children:J.map((ce,fe)=>reactExports.cloneElement(ce,{key:fe,closeMenu:re}))})})]}))}const renderActionsCell=d=>jsxRuntimeExports.jsx(GridActionsCell,_extends$1({},d)),_excluded$1f=["label","icon","showInMenu","onClick"],_excluded2$b=["label","icon","showInMenu","onClick","closeMenuOnClick","closeMenu"],GridActionsCellItem=reactExports.forwardRef((d,m)=>{const g=useGridRootProps();if(!d.showInMenu){var x;const{label:k,icon:L,onClick:D}=d,A=_objectWithoutPropertiesLoose(d,_excluded$1f),I=N=>{D==null||D(N)};return jsxRuntimeExports.jsx(g.slots.baseIconButton,_extends$1({ref:m,size:"small",role:"menuitem","aria-label":k},A,{onClick:I},(x=g.slotProps)==null?void 0:x.baseIconButton,{children:reactExports.cloneElement(L,{fontSize:"small"})}))}const{label:b,icon:E,onClick:v,closeMenuOnClick:S=!0,closeMenu:C}=d,T=_objectWithoutPropertiesLoose(d,_excluded2$b),R=k=>{v==null||v(k),S&&(C==null||C())};return jsxRuntimeExports.jsxs(MenuItem,_extends$1({ref:m},T,{onClick:R,children:[E&&jsxRuntimeExports.jsx(ListItemIcon,{children:E}),b]}))}),_excluded$1e=["field","align","width","contentWidth"],useUtilityClasses$U=d=>{const{align:m,classes:g}=d,x={root:["cell","cellSkeleton",`cell--text${capitalize$1(m)}`,"withBorderColor"]};return composeClasses(x,getDataGridUtilityClass,g)};function GridSkeletonCell(d){const{align:m,width:g,contentWidth:x}=d,b=_objectWithoutPropertiesLoose(d,_excluded$1e),v={classes:useGridRootProps().classes,align:m},S=useUtilityClasses$U(v);return jsxRuntimeExports.jsx("div",_extends$1({className:S.root,style:{width:g}},b,{children:jsxRuntimeExports.jsx(Skeleton,{width:`${x}%`})}))}function getBorderColor(d){return d.vars?d.vars.palette.TableCell.border:d.palette.mode==="light"?lighten(alpha(d.palette.divider,1),.88):darken(alpha(d.palette.divider,1),.68)}const columnHeadersStyles={[`.${gridClasses.columnSeparator}, .${gridClasses["columnSeparator--resizing"]}`]:{visibility:"visible",width:"auto"}},columnHeaderStyles={[`& .${gridClasses.iconButtonContainer}`]:{visibility:"visible",width:"auto"},[`& .${gridClasses.menuIcon}`]:{width:"auto",visibility:"visible"}},GridRootStyles=styled("div",{name:"MuiDataGrid",slot:"Root",overridesResolver:(d,m)=>[{[`&.${gridClasses.autoHeight}`]:m.autoHeight},{[`&.${gridClasses.aggregationColumnHeader}`]:m.aggregationColumnHeader},{[`&.${gridClasses["aggregationColumnHeader--alignLeft"]}`]:m["aggregationColumnHeader--alignLeft"]},{[`&.${gridClasses["aggregationColumnHeader--alignCenter"]}`]:m["aggregationColumnHeader--alignCenter"]},{[`&.${gridClasses["aggregationColumnHeader--alignRight"]}`]:m["aggregationColumnHeader--alignRight"]},{[`&.${gridClasses.aggregationColumnHeaderLabel}`]:m.aggregationColumnHeaderLabel},{[`&.${gridClasses["root--disableUserSelection"]} .${gridClasses.cell}`]:m["root--disableUserSelection"]},{[`&.${gridClasses.autosizing}`]:m.autosizing},{[`& .${gridClasses.editBooleanCell}`]:m.editBooleanCell},{[`& .${gridClasses["cell--editing"]}`]:m["cell--editing"]},{[`& .${gridClasses["cell--textCenter"]}`]:m["cell--textCenter"]},{[`& .${gridClasses["cell--textLeft"]}`]:m["cell--textLeft"]},{[`& .${gridClasses["cell--textRight"]}`]:m["cell--textRight"]},{[`& .${gridClasses["cell--withRenderer"]}`]:m["cell--withRenderer"]},{[`& .${gridClasses.cell}`]:m.cell},{[`& .${gridClasses["cell--rangeTop"]}`]:m["cell--rangeTop"]},{[`& .${gridClasses["cell--rangeBottom"]}`]:m["cell--rangeBottom"]},{[`& .${gridClasses["cell--rangeLeft"]}`]:m["cell--rangeLeft"]},{[`& .${gridClasses["cell--rangeRight"]}`]:m["cell--rangeRight"]},{[`& .${gridClasses["cell--withRightBorder"]}`]:m["cell--withRightBorder"]},{[`& .${gridClasses.cellContent}`]:m.cellContent},{[`& .${gridClasses.cellCheckbox}`]:m.cellCheckbox},{[`& .${gridClasses.cellSkeleton}`]:m.cellSkeleton},{[`& .${gridClasses.checkboxInput}`]:m.checkboxInput},{[`& .${gridClasses["columnHeader--alignCenter"]}`]:m["columnHeader--alignCenter"]},{[`& .${gridClasses["columnHeader--alignLeft"]}`]:m["columnHeader--alignLeft"]},{[`& .${gridClasses["columnHeader--alignRight"]}`]:m["columnHeader--alignRight"]},{[`& .${gridClasses["columnHeader--dragging"]}`]:m["columnHeader--dragging"]},{[`& .${gridClasses["columnHeader--moving"]}`]:m["columnHeader--moving"]},{[`& .${gridClasses["columnHeader--numeric"]}`]:m["columnHeader--numeric"]},{[`& .${gridClasses["columnHeader--sortable"]}`]:m["columnHeader--sortable"]},{[`& .${gridClasses["columnHeader--sorted"]}`]:m["columnHeader--sorted"]},{[`& .${gridClasses["columnHeader--withRightBorder"]}`]:m["columnHeader--withRightBorder"]},{[`& .${gridClasses.columnHeader}`]:m.columnHeader},{[`& .${gridClasses.headerFilterRow}`]:m.headerFilterRow},{[`& .${gridClasses.columnHeaderCheckbox}`]:m.columnHeaderCheckbox},{[`& .${gridClasses.columnHeaderDraggableContainer}`]:m.columnHeaderDraggableContainer},{[`& .${gridClasses.columnHeaderTitleContainer}`]:m.columnHeaderTitleContainer},{[`& .${gridClasses["columnSeparator--resizable"]}`]:m["columnSeparator--resizable"]},{[`& .${gridClasses["columnSeparator--resizing"]}`]:m["columnSeparator--resizing"]},{[`& .${gridClasses.columnSeparator}`]:m.columnSeparator},{[`& .${gridClasses.filterIcon}`]:m.filterIcon},{[`& .${gridClasses.iconSeparator}`]:m.iconSeparator},{[`& .${gridClasses.menuIcon}`]:m.menuIcon},{[`& .${gridClasses.menuIconButton}`]:m.menuIconButton},{[`& .${gridClasses.menuOpen}`]:m.menuOpen},{[`& .${gridClasses.menuList}`]:m.menuList},{[`& .${gridClasses["row--editable"]}`]:m["row--editable"]},{[`& .${gridClasses["row--editing"]}`]:m["row--editing"]},{[`& .${gridClasses["row--dragging"]}`]:m["row--dragging"]},{[`& .${gridClasses.row}`]:m.row},{[`& .${gridClasses.rowReorderCellPlaceholder}`]:m.rowReorderCellPlaceholder},{[`& .${gridClasses.rowReorderCell}`]:m.rowReorderCell},{[`& .${gridClasses["rowReorderCell--draggable"]}`]:m["rowReorderCell--draggable"]},{[`& .${gridClasses.sortIcon}`]:m.sortIcon},{[`& .${gridClasses.withBorderColor}`]:m.withBorderColor},{[`& .${gridClasses.treeDataGroupingCell}`]:m.treeDataGroupingCell},{[`& .${gridClasses.treeDataGroupingCellToggle}`]:m.treeDataGroupingCellToggle},{[`& .${gridClasses.detailPanelToggleCell}`]:m.detailPanelToggleCell},{[`& .${gridClasses["detailPanelToggleCell--expanded"]}`]:m["detailPanelToggleCell--expanded"]},m.root]})(({theme:d})=>{const m=getBorderColor(d),g=d.shape.borderRadius;return _extends$1({"--unstable_DataGrid-radius":typeof g=="number"?`${g}px`:g,"--unstable_DataGrid-headWeight":d.typography.fontWeightMedium,"--unstable_DataGrid-overlayBackground":d.vars?`rgba(${d.vars.palette.background.defaultChannel} / ${d.vars.palette.action.disabledOpacity})`:alpha(d.palette.background.default,d.palette.action.disabledOpacity),"--DataGrid-cellOffsetMultiplier":2,flex:1,boxSizing:"border-box",position:"relative",borderWidth:"1px",borderStyle:"solid",borderColor:m,borderRadius:"var(--unstable_DataGrid-radius)",color:(d.vars||d).palette.text.primary},d.typography.body2,{outline:"none",height:"100%",display:"flex",minWidth:0,minHeight:0,flexDirection:"column",overflowAnchor:"none",[`&.${gridClasses.autoHeight}`]:{height:"auto",[`& .${gridClasses["row--lastVisible"]} .${gridClasses.cell}`]:{borderBottomColor:"transparent"}},[`&.${gridClasses.autosizing}`]:{[`& .${gridClasses.columnHeaderTitleContainerContent} > *`]:{overflow:"visible !important"},[`& .${gridClasses.cell} > *`]:{overflow:"visible !important",whiteSpace:"nowrap"},[`& .${gridClasses.groupingCriteriaCell}`]:{width:"unset"},[`& .${gridClasses.treeDataGroupingCell}`]:{width:"unset"}},[`& .${gridClasses["virtualScrollerContent--overflowed"]} .${gridClasses["row--lastVisible"]} .${gridClasses.cell}`]:{borderBottomColor:"transparent"},[`& .${gridClasses.columnHeader}, & .${gridClasses.cell}`]:{WebkitTapHighlightColor:"transparent",lineHeight:null,padding:"0 10px",boxSizing:"border-box"},[`& .${gridClasses.columnHeader}:focus-within, & .${gridClasses.cell}:focus-within`]:{outline:`solid ${d.vars?`rgba(${d.vars.palette.primary.mainChannel} / 0.5)`:alpha(d.palette.primary.main,.5)} 1px`,outlineWidth:1,outlineOffset:-1},[`& .${gridClasses.columnHeader}:focus, & .${gridClasses.cell}:focus`]:{outline:`solid ${d.palette.primary.main} 1px`},[`& .${gridClasses.columnHeaderCheckbox}, & .${gridClasses.cellCheckbox}`]:{padding:0,justifyContent:"center",alignItems:"center"},[`& .${gridClasses.columnHeader}`]:{position:"relative",display:"flex",alignItems:"center"},[`& .${gridClasses["columnHeader--sorted"]} .${gridClasses.iconButtonContainer}, & .${gridClasses["columnHeader--filtered"]} .${gridClasses.iconButtonContainer}`]:{visibility:"visible",width:"auto"},[`& .${gridClasses.columnHeader}:not(.${gridClasses["columnHeader--sorted"]}) .${gridClasses.sortIcon}`]:{opacity:0,transition:d.transitions.create(["opacity"],{duration:d.transitions.duration.shorter})},[`& .${gridClasses.columnHeaderTitleContainer}`]:{display:"flex",alignItems:"center",minWidth:0,flex:1,whiteSpace:"nowrap",overflow:"hidden",position:"relative"},[`& .${gridClasses.columnHeaderTitleContainerContent}`]:{overflow:"hidden",display:"flex",alignItems:"center"},[`& .${gridClasses["columnHeader--filledGroup"]} .${gridClasses.columnHeaderTitleContainer}`]:{borderBottomWidth:"1px",borderBottomStyle:"solid",boxSizing:"border-box"},[`& .${gridClasses["columnHeader--filledGroup"]}.${gridClasses["columnHeader--showColumnBorder"]} .${gridClasses.columnHeaderTitleContainer}`]:{borderBottom:"none"},[`& .${gridClasses["columnHeader--filledGroup"]}.${gridClasses["columnHeader--showColumnBorder"]}`]:{borderBottomWidth:"1px",borderBottomStyle:"solid",boxSizing:"border-box"},[`& .${gridClasses.headerFilterRow}`]:{borderTop:`1px solid ${m}`},[`& .${gridClasses.sortIcon}, & .${gridClasses.filterIcon}`]:{fontSize:"inherit"},[`& .${gridClasses["columnHeader--sortable"]}`]:{cursor:"pointer"},[`& .${gridClasses["columnHeader--alignCenter"]} .${gridClasses.columnHeaderTitleContainer}`]:{justifyContent:"center"},[`& .${gridClasses["columnHeader--alignRight"]} .${gridClasses.columnHeaderDraggableContainer}, & .${gridClasses["columnHeader--alignRight"]} .${gridClasses.columnHeaderTitleContainer}`]:{flexDirection:"row-reverse"},[`& .${gridClasses["columnHeader--alignCenter"]} .${gridClasses.menuIcon}, & .${gridClasses["columnHeader--alignRight"]} .${gridClasses.menuIcon}`]:{marginRight:"auto",marginLeft:-6},[`& .${gridClasses["columnHeader--alignRight"]} .${gridClasses.menuIcon}, & .${gridClasses["columnHeader--alignRight"]} .${gridClasses.menuIcon}`]:{marginRight:"auto",marginLeft:-10},[`& .${gridClasses["columnHeader--moving"]}`]:{backgroundColor:(d.vars||d).palette.action.hover},[`& .${gridClasses.columnSeparator}`]:{visibility:"hidden",position:"absolute",zIndex:100,display:"flex",flexDirection:"column",justifyContent:"center",color:m},"@media (hover: hover)":{[`& .${gridClasses.columnHeaders}:hover`]:columnHeadersStyles,[`& .${gridClasses.columnHeader}:hover`]:columnHeaderStyles,[`& .${gridClasses.columnHeader}:not(.${gridClasses["columnHeader--sorted"]}):hover .${gridClasses.sortIcon}`]:{opacity:.5}},"@media (hover: none)":{[`& .${gridClasses.columnHeaders}`]:columnHeadersStyles,[`& .${gridClasses.columnHeader}`]:columnHeaderStyles},[`& .${gridClasses["columnSeparator--sideLeft"]}`]:{left:-12},[`& .${gridClasses["columnSeparator--sideRight"]}`]:{right:-12},[`& .${gridClasses["columnSeparator--resizable"]}`]:{cursor:"col-resize",touchAction:"none","&:hover":{color:(d.vars||d).palette.text.primary,"@media (hover: none)":{color:m}},[`&.${gridClasses["columnSeparator--resizing"]}`]:{color:(d.vars||d).palette.text.primary},"& svg":{pointerEvents:"none"}},[`& .${gridClasses.iconSeparator}`]:{color:"inherit"},[`& .${gridClasses.menuIcon}`]:{width:0,visibility:"hidden",fontSize:20,marginRight:-10,display:"flex",alignItems:"center"},[`.${gridClasses.menuOpen}`]:{visibility:"visible",width:"auto"},[`& .${gridClasses.row}`]:{display:"flex",width:"fit-content",breakInside:"avoid","&:hover, &.Mui-hovered":{backgroundColor:(d.vars||d).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},"&.Mui-selected":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity),"&:hover, &.Mui-hovered":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / calc(
584
+ `))}const getRowIdFromRowModel=(d,m,g)=>{const x=m?m(d):d.id;return checkGridRowIdIsValid(x,d,g),x},createRowsInternalCache=({rows:d,getRowId:m,loading:g,rowCount:x})=>{const b={type:"full",rows:[]},E={},v={};for(let S=0;S<d.length;S+=1){const C=d[S],T=getRowIdFromRowModel(C,m);E[T]=C,v[T]=T,b.rows.push(T)}return{rowsBeforePartialUpdates:d,loadingPropBeforePartialUpdates:g,rowCountPropBeforePartialUpdates:x,updates:b,dataRowIdToIdLookup:v,dataRowIdToModelLookup:E}},getTopLevelRowCount=({tree:d,rowCountProp:m=0})=>{const g=d[GRID_ROOT_GROUP_ID];return Math.max(m,g.children.length+(g.footerId==null?0:1))},getRowsStateFromCache=({apiRef:d,rowCountProp:m=0,loadingProp:g,previousTree:x,previousTreeDepths:b})=>{const E=d.current.caches.rows,{tree:v,treeDepths:S,dataRowIds:C,groupingName:T}=d.current.applyStrategyProcessor("rowTreeCreation",{previousTree:x,previousTreeDepths:b,updates:E.updates,dataRowIdToIdLookup:E.dataRowIdToIdLookup,dataRowIdToModelLookup:E.dataRowIdToModelLookup}),R=d.current.unstable_applyPipeProcessors("hydrateRows",{tree:v,treeDepths:S,dataRowIdToIdLookup:E.dataRowIdToIdLookup,dataRowIds:C,dataRowIdToModelLookup:E.dataRowIdToModelLookup});return d.current.caches.rows.updates={type:"partial",actions:{insert:[],modify:[],remove:[]},idToActionLookup:{}},_extends$1({},R,{totalRowCount:Math.max(m,R.dataRowIds.length),totalTopLevelRowCount:getTopLevelRowCount({tree:R.tree,rowCountProp:m}),groupingName:T,loading:g})},isAutoGeneratedRow=d=>d.type==="skeletonRow"||d.type==="footer"||d.type==="group"&&d.isAutoGenerated||d.type==="pinnedRow"&&d.isAutoGenerated,getTreeNodeDescendants=(d,m,g)=>{const x=d[m];if(x.type!=="group")return[];const b=[];for(let E=0;E<x.children.length;E+=1){const v=x.children[E];(!g||!isAutoGeneratedRow(d[v]))&&b.push(v);const S=getTreeNodeDescendants(d,v,g);for(let C=0;C<S.length;C+=1)b.push(S[C])}return!g&&x.footerId!=null&&b.push(x.footerId),b},updateCacheWithNewRows=({previousCache:d,getRowId:m,updates:g})=>{var x,b,E;if(d.updates.type==="full")throw new Error("MUI: Unable to prepare a partial update if a full update is not applied yet");const v=new Map;g.forEach(L=>{const D=getRowIdFromRowModel(L,m,"A row was provided without id when calling updateRows():");v.has(D)?v.set(D,_extends$1({},v.get(D),L)):v.set(D,L)});const S={type:"partial",actions:{insert:[...(x=d.updates.actions.insert)!=null?x:[]],modify:[...(b=d.updates.actions.modify)!=null?b:[]],remove:[...(E=d.updates.actions.remove)!=null?E:[]]},idToActionLookup:_extends$1({},d.updates.idToActionLookup)},C=_extends$1({},d.dataRowIdToModelLookup),T=_extends$1({},d.dataRowIdToIdLookup),R={insert:{},modify:{},remove:{}};v.forEach((L,D)=>{const A=S.idToActionLookup[D];if(L._action==="delete"){if(A==="remove"||!C[D])return;A!=null&&(R[A][D]=!0),S.actions.remove.push(D),delete C[D],delete T[D];return}const I=C[D];if(I){A==="remove"?(R.remove[D]=!0,S.actions.modify.push(D)):A==null&&S.actions.modify.push(D),C[D]=_extends$1({},I,L);return}A==="remove"?(R.remove[D]=!0,S.actions.insert.push(D)):A==null&&S.actions.insert.push(D),C[D]=L,T[D]=D});const k=Object.keys(R);for(let L=0;L<k.length;L+=1){const D=k[L],A=R[D];Object.keys(A).length>0&&(S.actions[D]=S.actions[D].filter(I=>!A[I]))}return{dataRowIdToModelLookup:C,dataRowIdToIdLookup:T,updates:S,rowsBeforePartialUpdates:d.rowsBeforePartialUpdates,loadingPropBeforePartialUpdates:d.loadingPropBeforePartialUpdates,rowCountPropBeforePartialUpdates:d.rowCountPropBeforePartialUpdates}};function calculatePinnedRowsHeight(d){var m,g;const x=gridPinnedRowsSelector(d),b=(x==null||(m=x.top)==null?void 0:m.reduce((v,S)=>(v+=d.current.unstable_getRowHeight(S.id),v),0))||0,E=(x==null||(g=x.bottom)==null?void 0:g.reduce((v,S)=>(v+=d.current.unstable_getRowHeight(S.id),v),0))||0;return{top:b,bottom:E}}function getMinimalContentHeight(d,m){const g=gridDensityFactorSelector(d);return`var(--DataGrid-overlayHeight, ${2*Math.floor(m*g)}px)`}const GridOverlayWrapperRoot=styled$1("div",{name:"MuiDataGrid",slot:"OverlayWrapper",shouldForwardProp:d=>d!=="overlayType",overridesResolver:(d,m)=>m.overlayWrapper})(({overlayType:d})=>({position:"sticky",top:0,left:0,width:0,height:0,zIndex:d==="loadingOverlay"?5:4})),GridOverlayWrapperInner=styled$1("div",{name:"MuiDataGrid",slot:"OverlayWrapperInner",shouldForwardProp:d=>d!=="overlayType",overridesResolver:(d,m)=>m.overlayWrapperInner})({}),useUtilityClasses$$=d=>{const{classes:m}=d;return composeClasses({root:["overlayWrapper"],inner:["overlayWrapperInner"]},getDataGridUtilityClass,m)};function GridOverlayWrapper(d){var m,g;const x=useGridApiContext(),b=useGridRootProps(),[E,v]=reactExports.useState(()=>{var R,k;return(R=(k=x.current.getRootDimensions())==null?void 0:k.viewportInnerSize)!=null?R:null}),S=reactExports.useCallback(()=>{var R,k;v((R=(k=x.current.getRootDimensions())==null?void 0:k.viewportInnerSize)!=null?R:null)},[x]);useEnhancedEffect(()=>x.current.subscribeEvent("viewportInnerSizeChange",S),[x,S]);let C=(m=E==null?void 0:E.height)!=null?m:0;b.autoHeight&&C===0&&(C=getMinimalContentHeight(x,b.rowHeight));const T=useUtilityClasses$$(_extends$1({},d,{classes:b.classes}));return E?jsxRuntimeExports.jsx(GridOverlayWrapperRoot,{className:clsx(T.root),overlayType:d.overlayType,children:jsxRuntimeExports.jsx(GridOverlayWrapperInner,_extends$1({className:clsx(T.inner),style:{height:C,width:(g=E==null?void 0:E.width)!=null?g:0}},d))}):null}function GridOverlays(){const d=useGridApiContext(),m=useGridRootProps(),g=useGridSelector(d,gridRowCountSelector),x=useGridSelector(d,gridExpandedRowCountSelector),b=useGridSelector(d,gridRowsLoadingSelector),E=!b&&g===0,v=!b&&g>0&&x===0;let S=null,C="";if(E){var T;S=jsxRuntimeExports.jsx(m.slots.noRowsOverlay,_extends$1({},(T=m.slotProps)==null?void 0:T.noRowsOverlay)),C="noRowsOverlay"}if(v){var R;S=jsxRuntimeExports.jsx(m.slots.noResultsOverlay,_extends$1({},(R=m.slotProps)==null?void 0:R.noResultsOverlay)),C="noResultsOverlay"}if(b){var k;S=jsxRuntimeExports.jsx(m.slots.loadingOverlay,_extends$1({},(k=m.slotProps)==null?void 0:k.loadingOverlay)),C="loadingOverlay"}return S===null?null:jsxRuntimeExports.jsx(GridOverlayWrapper,{overlayType:C,children:S})}function fastMemo(d){return reactExports.memo(d,fastObjectShallowCompare)}let cachedSupportsPreventScroll;function doesSupportPreventScroll(){return cachedSupportsPreventScroll===void 0&&document.createElement("div").focus({get preventScroll(){return cachedSupportsPreventScroll=!0,!1}}),cachedSupportsPreventScroll}var GridEditModes=function(d){return d.Cell="cell",d.Row="row",d}(GridEditModes||{}),GridCellModes=function(d){return d.Edit="edit",d.View="view",d}(GridCellModes||{}),GridRowModes=function(d){return d.Edit="edit",d.View="view",d}(GridRowModes||{}),GridLogicOperator=function(d){return d.And="and",d.Or="or",d}(GridLogicOperator||{}),GridCellEditStartReasons=function(d){return d.enterKeyDown="enterKeyDown",d.cellDoubleClick="cellDoubleClick",d.printableKeyDown="printableKeyDown",d.deleteKeyDown="deleteKeyDown",d.pasteKeyDown="pasteKeyDown",d}(GridCellEditStartReasons||{}),GridCellEditStopReasons=function(d){return d.cellFocusOut="cellFocusOut",d.escapeKeyDown="escapeKeyDown",d.enterKeyDown="enterKeyDown",d.tabKeyDown="tabKeyDown",d.shiftTabKeyDown="shiftTabKeyDown",d}(GridCellEditStopReasons||{}),GridRowEditStartReasons=function(d){return d.enterKeyDown="enterKeyDown",d.cellDoubleClick="cellDoubleClick",d.printableKeyDown="printableKeyDown",d.deleteKeyDown="deleteKeyDown",d}(GridRowEditStartReasons||{}),GridRowEditStopReasons=function(d){return d.rowFocusOut="rowFocusOut",d.escapeKeyDown="escapeKeyDown",d.enterKeyDown="enterKeyDown",d.tabKeyDown="tabKeyDown",d.shiftTabKeyDown="shiftTabKeyDown",d}(GridRowEditStopReasons||{});function isLeaf(d){return d.field!==void 0}function isOverflown(d){return d.scrollHeight>d.clientHeight||d.scrollWidth>d.clientWidth}function findParentElementFromClassName(d,m){return d.closest(`.${m}`)}function escapeOperandAttributeSelector(d){return d.replace(/["\\]/g,"\\$&")}function getGridColumnHeaderElement(d,m){return d.querySelector(`[role="columnheader"][data-field="${escapeOperandAttributeSelector(m)}"]`)}function getGridRowElementSelector(d){return`.${gridClasses.row}[data-id="${escapeOperandAttributeSelector(String(d))}"]`}function getGridRowElement(d,m){return d.querySelector(getGridRowElementSelector(m))}function getGridCellElement(d,{id:m,field:g}){const x=getGridRowElementSelector(m),b=`.${gridClasses.cell}[data-field="${escapeOperandAttributeSelector(g)}"]`,E=`${x} ${b}`;return d.querySelector(E)}function isEventTargetInPortal(d){return d.target.nodeType===1&&!d.currentTarget.contains(d.target)}function useGridApiMethod(d,m,g){const x=reactExports.useRef(!0);reactExports.useEffect(()=>{x.current=!1,d.current.register(g,m)},[d,g,m]),x.current&&d.current.register(g,m)}class MissingRowIdError extends Error{}function useGridParamsApi(d,m){const{getRowId:g}=m,x=reactExports.useCallback(A=>({field:A,colDef:d.current.getColumn(A)}),[d]),b=reactExports.useCallback(A=>{const I=d.current.getRow(A);if(!I)throw new MissingRowIdError(`No row with id #${A} found`);return{id:A,columns:d.current.getAllColumns(),row:I}},[d]),E=reactExports.useCallback((A,I)=>{const N=d.current.getRow(A),z=d.current.getRowNode(A);if(!N||!z)throw new MissingRowIdError(`No row with id #${A} found`);const j=gridFocusCellSelector(d),Y=gridTabIndexCellSelector(d);return{id:A,field:I,row:N,rowNode:z,value:N[I],colDef:d.current.getColumn(I),cellMode:d.current.getCellMode(A,I),api:d.current,hasFocus:j!==null&&j.field===I&&j.id===A,tabIndex:Y&&Y.field===I&&Y.id===A?0:-1}},[d]),v=reactExports.useCallback((A,I)=>{const N=d.current.getColumn(I),z=d.current.getCellValue(A,I),j=d.current.getRow(A),Y=d.current.getRowNode(A);if(!j||!Y)throw new MissingRowIdError(`No row with id #${A} found`);const B=gridFocusCellSelector(d),U=gridTabIndexCellSelector(d),W={id:A,field:I,row:j,rowNode:Y,colDef:N,cellMode:d.current.getCellMode(A,I),hasFocus:B!==null&&B.field===I&&B.id===A,tabIndex:U&&U.field===I&&U.id===A?0:-1,value:z,formattedValue:z,isEditable:!1};return N&&N.valueFormatter&&(W.formattedValue=N.valueFormatter({id:A,field:W.field,value:W.value,api:d.current})),W.isEditable=N&&d.current.isCellEditable(W),W},[d]),S=reactExports.useCallback((A,I)=>{const N=d.current.getColumn(I);if(!N||!N.valueGetter){const z=d.current.getRow(A);if(!z)throw new MissingRowIdError(`No row with id #${A} found`);return z[I]}return N.valueGetter(E(A,I))},[d,E]),C=reactExports.useCallback((A,I)=>{var N;const z=GRID_ID_AUTOGENERATED in A?A[GRID_ID_AUTOGENERATED]:(N=g==null?void 0:g(A))!=null?N:A.id,j=I.field;return!I||!I.valueGetter?A[j]:I.valueGetter(E(z,j))},[E,g]),T=reactExports.useCallback((A,I)=>{var N;const z=C(A,I);if(!I||!I.valueFormatter)return z;const j=(N=g?g(A):A.id)!=null?N:A[GRID_ID_AUTOGENERATED],Y=I.field;return I.valueFormatter({id:j,field:Y,value:z,api:d.current})},[d,g,C]),R=reactExports.useCallback(A=>d.current.rootElementRef.current?getGridColumnHeaderElement(d.current.rootElementRef.current,A):null,[d]),k=reactExports.useCallback(A=>d.current.rootElementRef.current?getGridRowElement(d.current.rootElementRef.current,A):null,[d]),L=reactExports.useCallback((A,I)=>d.current.rootElementRef.current?getGridCellElement(d.current.rootElementRef.current,{id:A,field:I}):null,[d]);useGridApiMethod(d,{getCellValue:S,getCellParams:v,getCellElement:L,getRowValue:C,getRowFormattedValue:T,getRowParams:b,getRowElement:k,getColumnHeaderParams:x,getColumnHeaderElement:R},"public")}const _excluded$1n=["changeReason","unstable_updateValueOnRender"],_excluded3$3=["column","rowId","editCellState","align","children","colIndex","height","width","className","showRightBorder","extendRowFullWidth","row","colSpan","disableDragEvents","isNotVisible","onClick","onDoubleClick","onMouseDown","onMouseUp","onMouseOver","onKeyDown","onKeyUp","onDragEnter","onDragOver","style"],_excluded4=["changeReason","unstable_updateValueOnRender"],EMPTY_CELL_PARAMS={id:-1,field:"__unset__",row:{},rowNode:{id:-1,depth:0,type:"leaf",parent:-1,groupingKey:null},colDef:{type:"string",field:"__unset__",computedWidth:0},cellMode:GridCellModes.View,hasFocus:!1,tabIndex:-1,value:null,formattedValue:"__unset__",isEditable:!1,api:{}},useUtilityClasses$_=d=>{const{align:m,showRightBorder:g,isEditable:x,isSelected:b,isSelectionMode:E,classes:v}=d,S={root:["cell",`cell--text${capitalize$1(m)}`,x&&"cell--editable",b&&"selected",g&&"cell--withRightBorder",E&&!x&&"cell--selectionMode","withBorderColor"],content:["cellContent"]};return composeClasses(S,getDataGridUtilityClass,v)},GridCellWrapper=reactExports.forwardRef((d,m)=>{const{column:g,rowId:x,editCellState:b}=d,E=useGridApiContext(),v=useGridRootProps(),S=g.field,C=useGridSelector(E,()=>{try{const Q=E.current.getCellParams(x,S);return Q.api=E.current,Q}catch(J){if(J instanceof MissingRowIdError)return EMPTY_CELL_PARAMS;throw J}},objectShallowCompare),T=useGridSelector(E,()=>E.current.unstable_applyPipeProcessors("isCellSelected",!1,{id:x,field:S}));if(C===EMPTY_CELL_PARAMS)return null;const{cellMode:R,hasFocus:k,isEditable:L,value:D,formattedValue:A}=C,I=g.type==="actions",N=(R==="view"||!L)&&!I?C.tabIndex:-1,{classes:z,getCellClassName:j}=v,Y=E.current.unstable_applyPipeProcessors("cellClassName",[],{id:x,field:S});g.cellClassName&&Y.push(typeof g.cellClassName=="function"?g.cellClassName(C):g.cellClassName),j&&Y.push(j(C));let B;if(b==null&&g.renderCell&&(B=g.renderCell(C),Y.push(gridClasses["cell--withRenderer"]),Y.push(z==null?void 0:z["cell--withRenderer"])),b!=null&&g.renderEditCell){const J=E.current.getRowWithUpdatedValues(x,g.field),Q=_objectWithoutPropertiesLoose(b,_excluded$1n),X=_extends$1({},C,{row:J},Q);B=g.renderEditCell(X),Y.push(gridClasses["cell--editing"]),Y.push(z==null?void 0:z["cell--editing"])}const{slots:U}=v,W=U.cell,V=_extends$1({},d,{ref:m,field:S,formattedValue:A,hasFocus:k,isEditable:L,isSelected:T,value:D,cellMode:R,children:B,tabIndex:N,className:clsx(Y)});return reactExports.createElement(W,V)}),MemoizedCellWrapper=fastMemo(GridCellWrapper),GridCellV7=reactExports.forwardRef((d,m)=>{var g,x,b,E;const{column:v,rowId:S,editCellState:C,align:T,colIndex:R,height:k,width:L,className:D,showRightBorder:A,colSpan:I,disableDragEvents:N,isNotVisible:z,onClick:j,onDoubleClick:Y,onMouseDown:B,onMouseUp:U,onMouseOver:W,onKeyDown:V,onKeyUp:J,onDragEnter:Q,onDragOver:X,style:re}=d,ie=_objectWithoutPropertiesLoose(d,_excluded3$3),oe=useGridApiContext(),Z=useGridRootProps(),ee=v.field,ce=useGridSelector(oe,()=>{try{const st=oe.current.getCellParams(S,ee);return st.api=oe.current,st}catch(Xe){if(Xe instanceof MissingRowIdError)return EMPTY_CELL_PARAMS;throw Xe}},objectShallowCompare),fe=useGridSelector(oe,()=>oe.current.unstable_applyPipeProcessors("isCellSelected",!1,{id:S,field:ee})),{cellMode:ae,hasFocus:ue,isEditable:pe,value:ge,formattedValue:ye}=ce,Ee=v.type==="actions"&&((g=(x=v).getActions)==null?void 0:g.call(x,oe.current.getRowParams(S)).some(Xe=>!Xe.props.disabled)),ve=(ae==="view"||!pe)&&!Ee?ce.tabIndex:-1,{classes:Se,getCellClassName:$e}=Z,Me=oe.current.unstable_applyPipeProcessors("cellClassName",[],{id:S,field:ee});v.cellClassName&&Me.push(typeof v.cellClassName=="function"?v.cellClassName(ce):v.cellClassName),$e&&Me.push($e(ce));const Re=ye==null?ge:ye,De=reactExports.useRef(null),Be=useForkRef(m,De),Le=reactExports.useRef(null),Ge=(b=Z.unstable_cellSelection)!=null?b:!1,Ie={align:T,showRightBorder:A,isEditable:pe,classes:Z.classes,isSelected:fe,isSelectionMode:Ge},Ye=useUtilityClasses$_(Ie),He=reactExports.useCallback(Xe=>st=>{const xt=oe.current.getCellParams(S,ee||"");oe.current.publishEvent(Xe,xt,st),U&&U(st)},[oe,ee,U,S]),Ve=reactExports.useCallback(Xe=>st=>{const xt=oe.current.getCellParams(S,ee||"");oe.current.publishEvent(Xe,xt,st),B&&B(st)},[oe,ee,B,S]),rt=reactExports.useCallback((Xe,st)=>xt=>{if(!oe.current.getRow(S))return;const Je=oe.current.getCellParams(S,ee||"");oe.current.publishEvent(Xe,Je,xt),st&&st(xt)},[oe,ee,S]),Oe=reactExports.useMemo(()=>_extends$1(z?{padding:0,opacity:0,width:0,border:0}:{minWidth:L,maxWidth:L,minHeight:k,maxHeight:k==="auto"?"none":k},re),[L,k,z,re]);if(reactExports.useEffect(()=>{if(!ue||ae===GridCellModes.Edit)return;const Xe=ownerDocument(oe.current.rootElementRef.current);if(De.current&&!De.current.contains(Xe.activeElement)){const st=De.current.querySelector('[tabindex="0"]'),xt=Le.current||st||De.current;if(doesSupportPreventScroll())xt.focus({preventScroll:!0});else{const Je=oe.current.getScrollPosition();xt.focus(),oe.current.scroll(Je)}}},[ue,ae,oe]),ce===EMPTY_CELL_PARAMS)return null;let ot=ie.onFocus,ke;if(C==null&&v.renderCell&&(ke=v.renderCell(ce),Me.push(gridClasses["cell--withRenderer"]),Me.push(Se==null?void 0:Se["cell--withRenderer"])),C!=null&&v.renderEditCell){const Xe=oe.current.getRowWithUpdatedValues(S,v.field),st=_objectWithoutPropertiesLoose(C,_excluded4),xt=_extends$1({},ce,{row:Xe},st);ke=v.renderEditCell(xt),Me.push(gridClasses["cell--editing"]),Me.push(Se==null?void 0:Se["cell--editing"])}if(ke===void 0){const Xe=Re==null?void 0:Re.toString();ke=jsxRuntimeExports.jsx("div",{className:Ye.content,title:Xe,role:"presentation",children:Xe})}reactExports.isValidElement(ke)&&Ee&&(ke=reactExports.cloneElement(ke,{focusElementRef:Le}));const Ne=N?null:{onDragEnter:rt("cellDragEnter",Q),onDragOver:rt("cellDragOver",X)},Ke=(E=Z.experimentalFeatures)==null?void 0:E.ariaV7;return jsxRuntimeExports.jsx("div",_extends$1({ref:Be,className:clsx(D,Me,Ye.root),role:Ke?"gridcell":"cell","data-field":ee,"data-colindex":R,"aria-colindex":R+1,"aria-colspan":I,style:Oe,tabIndex:ve,onClick:rt("cellClick",j),onDoubleClick:rt("cellDoubleClick",Y),onMouseOver:rt("cellMouseOver",W),onMouseDown:Ve("cellMouseDown"),onMouseUp:He("cellMouseUp"),onKeyDown:rt("cellKeyDown",V),onKeyUp:rt("cellKeyUp",J)},Ne,ie,{onFocus:ot,children:ke}))}),MemoizedGridCellV7=fastMemo(GridCellV7),_excluded$1m=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","hasFocus","tabIndex"],useUtilityClasses$Z=d=>{const{classes:m}=d;return composeClasses({root:["booleanCell"]},getDataGridUtilityClass,m)};function GridBooleanCellRaw(d){const{value:m}=d,g=_objectWithoutPropertiesLoose(d,_excluded$1m),x=useGridApiContext(),b=useGridRootProps(),E={classes:b.classes},v=useUtilityClasses$Z(E),S=reactExports.useMemo(()=>m?b.slots.booleanCellTrueIcon:b.slots.booleanCellFalseIcon,[b.slots.booleanCellFalseIcon,b.slots.booleanCellTrueIcon,m]);return jsxRuntimeExports.jsx(S,_extends$1({fontSize:"small",className:v.root,titleAccess:x.current.getLocaleText(m?"booleanCellTrueLabel":"booleanCellFalseLabel"),"data-value":!!m},g))}const GridBooleanCell=reactExports.memo(GridBooleanCellRaw),renderBooleanCell=d=>isAutoGeneratedRow(d.rowNode)?"":jsxRuntimeExports.jsx(GridBooleanCell,_extends$1({},d)),_excluded$1l=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","className","hasFocus","isValidating","isProcessingProps","error","onValueChange"],useUtilityClasses$Y=d=>{const{classes:m}=d;return composeClasses({root:["editBooleanCell"]},getDataGridUtilityClass,m)};function GridEditBooleanCell(d){var m;const{id:g,value:x,field:b,className:E,hasFocus:v,onValueChange:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$1l),T=useGridApiContext(),R=reactExports.useRef(null),k=useId(),[L,D]=reactExports.useState(x),A=useGridRootProps(),I={classes:A.classes},N=useUtilityClasses$Y(I),z=reactExports.useCallback(j=>yt(this,null,function*(){const Y=j.target.checked;S&&(yield S(j,Y)),D(Y),yield T.current.setEditCellValue({id:g,field:b,value:Y},j)}),[T,b,g,S]);return reactExports.useEffect(()=>{D(x)},[x]),useEnhancedEffect(()=>{v&&R.current.focus()},[v]),jsxRuntimeExports.jsx("label",_extends$1({htmlFor:k,className:clsx(N.root,E)},C,{children:jsxRuntimeExports.jsx(A.slots.baseCheckbox,_extends$1({id:k,inputRef:R,checked:!!L,onChange:z,size:"small"},(m=A.slotProps)==null?void 0:m.baseCheckbox))}))}const renderEditBooleanCell=d=>jsxRuntimeExports.jsx(GridEditBooleanCell,_extends$1({},d)),_excluded$1k=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","hasFocus","inputProps","isValidating","isProcessingProps","onValueChange"],StyledInputBase=styled(InputBase)({fontSize:"inherit"}),useUtilityClasses$X=d=>{const{classes:m}=d;return composeClasses({root:["editInputCell"]},getDataGridUtilityClass,m)};function GridEditDateCell(d){const{id:m,value:g,field:x,colDef:b,hasFocus:E,inputProps:v,onValueChange:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$1k),T=b.type==="dateTime",R=useGridApiContext(),k=reactExports.useRef(),L=reactExports.useMemo(()=>{let B;g==null?B=null:g instanceof Date?B=g:B=new Date((g!=null?g:"").toString());let U;return B==null||Number.isNaN(B.getTime())?U="":U=new Date(B.getTime()-B.getTimezoneOffset()*60*1e3).toISOString().substr(0,T?16:10),{parsed:B,formatted:U}},[g,T]),[D,A]=reactExports.useState(L),N={classes:useGridRootProps().classes},z=useUtilityClasses$X(N),j=reactExports.useCallback(B=>{if(B==="")return null;const[U,W]=B.split("T"),[V,J,Q]=U.split("-"),X=new Date;if(X.setFullYear(Number(V),Number(J)-1,Number(Q)),X.setHours(0,0,0,0),W){const[re,ie]=W.split(":");X.setHours(Number(re),Number(ie),0,0)}return X},[]),Y=reactExports.useCallback(B=>yt(this,null,function*(){const U=B.target.value,W=j(U);S&&(yield S(B,W)),A({parsed:W,formatted:U}),R.current.setEditCellValue({id:m,field:x,value:W},B)}),[R,x,m,S,j]);return reactExports.useEffect(()=>{A(B=>{var U,W;return L.parsed!==B.parsed&&((U=L.parsed)==null?void 0:U.getTime())!==((W=B.parsed)==null?void 0:W.getTime())?L:B})},[L]),useEnhancedEffect(()=>{E&&k.current.focus()},[E]),jsxRuntimeExports.jsx(StyledInputBase,_extends$1({inputRef:k,fullWidth:!0,className:z.root,type:T?"datetime-local":"date",inputProps:_extends$1({max:T?"9999-12-31T23:59":"9999-12-31"},v),value:D.formatted,onChange:Y},C))}const renderEditDateCell=d=>jsxRuntimeExports.jsx(GridEditDateCell,_extends$1({},d)),_excluded$1j=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","hasFocus","isValidating","debounceMs","isProcessingProps","onValueChange"],useUtilityClasses$W=d=>{const{classes:m}=d;return composeClasses({root:["editInputCell"]},getDataGridUtilityClass,m)},GridEditInputCellRoot=styled(InputBase,{name:"MuiDataGrid",slot:"EditInputCell",overridesResolver:(d,m)=>m.editInputCell})(({theme:d})=>_extends$1({},d.typography.body2,{padding:"1px 0","& input":{padding:"0 16px",height:"100%"}})),GridEditInputCell=reactExports.forwardRef((d,m)=>{const g=useGridRootProps(),{id:x,value:b,field:E,colDef:v,hasFocus:S,debounceMs:C=200,isProcessingProps:T,onValueChange:R}=d,k=_objectWithoutPropertiesLoose(d,_excluded$1j),L=useGridApiContext(),D=reactExports.useRef(),[A,I]=reactExports.useState(b),N=useUtilityClasses$W(g),z=reactExports.useCallback(Y=>yt(void 0,null,function*(){const B=Y.target.value;R&&(yield R(Y,B));const U=L.current.getColumn(E);let W=B;U.valueParser&&(W=U.valueParser(B,L.current.getCellParams(x,E))),I(W),L.current.setEditCellValue({id:x,field:E,value:W,debounceMs:C,unstable_skipValueParser:!0},Y)}),[L,C,E,x,R]),j=L.current.unstable_getEditCellMeta(x,E);return reactExports.useEffect(()=>{(j==null?void 0:j.changeReason)!=="debouncedSetEditCellValue"&&I(b)},[j,b]),useEnhancedEffect(()=>{S&&D.current.focus()},[S]),jsxRuntimeExports.jsx(GridEditInputCellRoot,_extends$1({ref:m,inputRef:D,className:N.root,ownerState:g,fullWidth:!0,type:v.type==="number"?v.type:"text",value:A!=null?A:"",onChange:z,endAdornment:T?jsxRuntimeExports.jsx(g.slots.loadIcon,{fontSize:"small",color:"action"}):void 0},k))}),renderEditInputCell=d=>jsxRuntimeExports.jsx(GridEditInputCell,_extends$1({},d)),isEscapeKey=d=>d==="Escape",isEnterKey=d=>d==="Enter",isTabKey=d=>d==="Tab",isSpaceKey=d=>d===" ",isArrowKeys=d=>d.indexOf("Arrow")===0,isHomeOrEndKeys=d=>d==="Home"||d==="End",isPageKeys=d=>d.indexOf("Page")===0;function isPrintableKey(d){return d.key.length===1&&!d.ctrlKey&&!d.metaKey}const isNavigationKey=d=>isHomeOrEndKeys(d)||isArrowKeys(d)||isPageKeys(d)||isSpaceKey(d),isKeyboardEvent$1=d=>!!d.key,isHideMenuKey=d=>isTabKey(d)||isEscapeKey(d);function isSingleSelectColDef(d){return(d==null?void 0:d.type)==="singleSelect"}function getValueFromValueOptions(d,m,g){if(m===void 0)return;const x=m.find(b=>{const E=g(b);return String(E)===String(d)});return g(x)}const _excluded$1i=["id","value","formattedValue","api","field","row","rowNode","colDef","cellMode","isEditable","tabIndex","className","hasFocus","isValidating","isProcessingProps","error","onValueChange","initialOpen","getOptionLabel","getOptionValue"],_excluded2$c=["MenuProps"];function isKeyboardEvent(d){return!!d.key}function GridEditSingleSelectCell(d){var m,g,x;const b=useGridRootProps(),{id:E,value:v,field:S,row:C,colDef:T,hasFocus:R,error:k,onValueChange:L,initialOpen:D=b.editMode===GridEditModes.Cell,getOptionLabel:A,getOptionValue:I}=d,N=_objectWithoutPropertiesLoose(d,_excluded$1i),z=useGridApiContext(),j=reactExports.useRef(),Y=reactExports.useRef(),[B,U]=reactExports.useState(D),V=(g=(((m=b.slotProps)==null?void 0:m.baseSelect)||{}).native)!=null?g:!1,J=((x=b.slotProps)==null?void 0:x.baseSelect)||{},{MenuProps:Q}=J,X=_objectWithoutPropertiesLoose(J,_excluded2$c);if(useEnhancedEffect(()=>{if(R){var fe;(fe=Y.current)==null||fe.focus()}},[R]),!isSingleSelectColDef(T))return null;let re;if(typeof(T==null?void 0:T.valueOptions)=="function"?re=T==null?void 0:T.valueOptions({id:E,row:C,field:S}):re=T==null?void 0:T.valueOptions,!re)return null;const ie=I||T.getOptionValue,oe=A||T.getOptionLabel,Z=fe=>yt(this,null,function*(){if(!isSingleSelectColDef(T)||!re)return;U(!1);const ae=fe.target,ue=getValueFromValueOptions(ae.value,re,ie);L&&(yield L(fe,ue)),yield z.current.setEditCellValue({id:E,field:S,value:ue},fe)}),ee=(fe,ae)=>{if(b.editMode===GridEditModes.Row){U(!1);return}if(ae==="backdropClick"||isEscapeKey(fe.key)){const ue=z.current.getCellParams(E,S);z.current.publishEvent("cellEditStop",_extends$1({},ue,{reason:isEscapeKey(fe.key)?GridCellEditStopReasons.escapeKeyDown:GridCellEditStopReasons.cellFocusOut}))}},ce=fe=>{isKeyboardEvent(fe)&&fe.key==="Enter"||U(!0)};return!re||!T?null:jsxRuntimeExports.jsx(b.slots.baseSelect,_extends$1({ref:j,inputRef:Y,value:v,onChange:Z,open:B,onOpen:ce,MenuProps:_extends$1({onClose:ee},Q),error:k,native:V,fullWidth:!0},N,X,{children:re.map(fe=>{var ae;const ue=ie(fe);return reactExports.createElement(b.slots.baseSelectOption,_extends$1({},((ae=b.slotProps)==null?void 0:ae.baseSelectOption)||{},{native:V,key:ue,value:ue}),oe(fe))})}))}const renderEditSingleSelectCell=d=>jsxRuntimeExports.jsx(GridEditSingleSelectCell,_extends$1({},d)),_excluded$1h=["open","target","onClose","children","position","className","onExited"],useUtilityClasses$V=d=>{const{classes:m}=d;return composeClasses({root:["menu"]},getDataGridUtilityClass,m)},GridMenuRoot=styled(Popper,{name:"MuiDataGrid",slot:"Menu",overridesResolver:(d,m)=>m.menu})(({theme:d})=>({zIndex:d.zIndex.modal,[`& .${gridClasses.menuList}`]:{outline:0}})),transformOrigin={"bottom-start":"top left","bottom-end":"top right"};function GridMenu(d){var m;const{open:g,target:x,onClose:b,children:E,position:v,className:S,onExited:C}=d,T=_objectWithoutPropertiesLoose(d,_excluded$1h),R=useGridApiContext(),k=useGridRootProps(),L=useUtilityClasses$V(k),D=reactExports.useRef(null);useEnhancedEffect(()=>{if(g)D.current=document.activeElement instanceof HTMLElement?document.activeElement:null;else{var N,z;(N=D.current)==null||(z=N.focus)==null||z.call(N),D.current=null}},[g]),reactExports.useEffect(()=>{const N=g?"menuOpen":"menuClose";R.current.publishEvent(N,{target:x})},[R,g,x]);const A=N=>z=>{N&&N(),C&&C(z)},I=N=>{N.target&&(x===N.target||x!=null&&x.contains(N.target))||b(N)};return jsxRuntimeExports.jsx(GridMenuRoot,_extends$1({as:k.slots.basePopper,className:clsx(S,L.root),ownerState:k,open:g,anchorEl:x,transition:!0,placement:v},T,(m=k.slotProps)==null?void 0:m.basePopper,{children:({TransitionProps:N,placement:z})=>jsxRuntimeExports.jsx(ClickAwayListener,{onClickAway:I,mouseEvent:"onMouseDown",children:jsxRuntimeExports.jsx(Grow,_extends$1({},N,{style:{transformOrigin:transformOrigin[z]},onExited:A(N==null?void 0:N.onExited),children:jsxRuntimeExports.jsx(Paper,{children:E})}))})}))}const _excluded$1g=["api","colDef","id","hasFocus","isEditable","field","value","formattedValue","row","rowNode","cellMode","tabIndex","position","focusElementRef"],hasActions=d=>typeof d.getActions=="function";function GridActionsCell(d){var m;const{colDef:g,id:x,hasFocus:b,tabIndex:E,position:v="bottom-end",focusElementRef:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$1g),[T,R]=reactExports.useState(-1),[k,L]=reactExports.useState(!1),D=useGridApiContext(),A=reactExports.useRef(null),I=reactExports.useRef(null),N=reactExports.useRef(!1),z=reactExports.useRef({}),j=useTheme$1(),Y=useId(),B=useId(),U=useGridRootProps();if(!hasActions(g))throw new Error("MUI: Missing the `getActions` property in the `GridColDef`.");const W=g.getActions(D.current.getRowParams(x)),V=W.filter(ce=>!ce.props.showInMenu),J=W.filter(ce=>ce.props.showInMenu),Q=V.length+(J.length?1:0);reactExports.useLayoutEffect(()=>{b||Object.entries(z.current).forEach(([ce,fe])=>{fe==null||fe.stop({},()=>{delete z.current[ce]})})},[b]),reactExports.useEffect(()=>{if(T<0||!A.current||T>=A.current.children.length)return;A.current.children[T].focus({preventScroll:!0})},[T]),reactExports.useEffect(()=>{b||(R(-1),N.current=!1)},[b]),reactExports.useImperativeHandle(S,()=>({focus(){if(!N.current){const ce=W.findIndex(fe=>!fe.props.disabled);R(ce)}}}),[W]),reactExports.useEffect(()=>{T>=Q&&R(Q-1)},[T,Q]);const X=()=>{L(!0),R(Q-1),N.current=!0},re=()=>{L(!1)},ie=ce=>fe=>{z.current[ce]=fe},oe=(ce,fe)=>ae=>{R(ce),N.current=!0,fe&&fe(ae)},Z=ce=>{if(Q<=1)return;const fe=(ue,pe)=>{var ge;if(ue<0||ue>W.length)return ue;const ye=j.direction==="rtl"?-1:1,Ee=(pe==="left"?-1:1)*ye;return(ge=W[ue+Ee])!=null&&ge.props.disabled?fe(ue+Ee,pe):ue+Ee};let ae=T;ce.key==="ArrowRight"?ae=fe(T,"right"):ce.key==="ArrowLeft"&&(ae=fe(T,"left")),!(ae<0||ae>=Q)&&ae!==T&&(ce.preventDefault(),ce.stopPropagation(),R(ae))},ee=ce=>{ce.key==="Tab"&&ce.preventDefault(),["Tab","Escape"].includes(ce.key)&&re()};return jsxRuntimeExports.jsxs("div",_extends$1({role:"menu",ref:A,tabIndex:-1,className:gridClasses.actionsCell,onKeyDown:Z},C,{children:[V.map((ce,fe)=>reactExports.cloneElement(ce,{key:fe,touchRippleRef:ie(fe),onClick:oe(fe,ce.props.onClick),tabIndex:T===fe?E:-1})),J.length>0&&B&&jsxRuntimeExports.jsx(U.slots.baseIconButton,_extends$1({ref:I,id:B,"aria-label":D.current.getLocaleText("actionsCellMore"),"aria-haspopup":"menu","aria-expanded":k,"aria-controls":k?Y:void 0,role:"menuitem",size:"small",onClick:X,touchRippleRef:ie(B),tabIndex:T===V.length?E:-1},(m=U.slotProps)==null?void 0:m.baseIconButton,{children:jsxRuntimeExports.jsx(U.slots.moreActionsIcon,{fontSize:"small"})})),J.length>0&&jsxRuntimeExports.jsx(GridMenu,{open:k,target:I.current,position:v,onClose:re,children:jsxRuntimeExports.jsx(MenuList,{id:Y,className:gridClasses.menuList,onKeyDown:ee,"aria-labelledby":B,variant:"menu",autoFocusItem:!0,children:J.map((ce,fe)=>reactExports.cloneElement(ce,{key:fe,closeMenu:re}))})})]}))}const renderActionsCell=d=>jsxRuntimeExports.jsx(GridActionsCell,_extends$1({},d)),_excluded$1f=["label","icon","showInMenu","onClick"],_excluded2$b=["label","icon","showInMenu","onClick","closeMenuOnClick","closeMenu"],GridActionsCellItem=reactExports.forwardRef((d,m)=>{const g=useGridRootProps();if(!d.showInMenu){var x;const{label:k,icon:L,onClick:D}=d,A=_objectWithoutPropertiesLoose(d,_excluded$1f),I=N=>{D==null||D(N)};return jsxRuntimeExports.jsx(g.slots.baseIconButton,_extends$1({ref:m,size:"small",role:"menuitem","aria-label":k},A,{onClick:I},(x=g.slotProps)==null?void 0:x.baseIconButton,{children:reactExports.cloneElement(L,{fontSize:"small"})}))}const{label:b,icon:E,onClick:v,closeMenuOnClick:S=!0,closeMenu:C}=d,T=_objectWithoutPropertiesLoose(d,_excluded2$b),R=k=>{v==null||v(k),S&&(C==null||C())};return jsxRuntimeExports.jsxs(MenuItem,_extends$1({ref:m},T,{onClick:R,children:[E&&jsxRuntimeExports.jsx(ListItemIcon,{children:E}),b]}))}),_excluded$1e=["field","align","width","contentWidth"],useUtilityClasses$U=d=>{const{align:m,classes:g}=d,x={root:["cell","cellSkeleton",`cell--text${capitalize$1(m)}`,"withBorderColor"]};return composeClasses(x,getDataGridUtilityClass,g)};function GridSkeletonCell(d){const{align:m,width:g,contentWidth:x}=d,b=_objectWithoutPropertiesLoose(d,_excluded$1e),v={classes:useGridRootProps().classes,align:m},S=useUtilityClasses$U(v);return jsxRuntimeExports.jsx("div",_extends$1({className:S.root,style:{width:g}},b,{children:jsxRuntimeExports.jsx(Skeleton,{width:`${x}%`})}))}function getBorderColor(d){return d.vars?d.vars.palette.TableCell.border:d.palette.mode==="light"?lighten(alpha(d.palette.divider,1),.88):darken(alpha(d.palette.divider,1),.68)}const columnHeadersStyles={[`.${gridClasses.columnSeparator}, .${gridClasses["columnSeparator--resizing"]}`]:{visibility:"visible",width:"auto"}},columnHeaderStyles={[`& .${gridClasses.iconButtonContainer}`]:{visibility:"visible",width:"auto"},[`& .${gridClasses.menuIcon}`]:{width:"auto",visibility:"visible"}},GridRootStyles=styled("div",{name:"MuiDataGrid",slot:"Root",overridesResolver:(d,m)=>[{[`&.${gridClasses.autoHeight}`]:m.autoHeight},{[`&.${gridClasses.aggregationColumnHeader}`]:m.aggregationColumnHeader},{[`&.${gridClasses["aggregationColumnHeader--alignLeft"]}`]:m["aggregationColumnHeader--alignLeft"]},{[`&.${gridClasses["aggregationColumnHeader--alignCenter"]}`]:m["aggregationColumnHeader--alignCenter"]},{[`&.${gridClasses["aggregationColumnHeader--alignRight"]}`]:m["aggregationColumnHeader--alignRight"]},{[`&.${gridClasses.aggregationColumnHeaderLabel}`]:m.aggregationColumnHeaderLabel},{[`&.${gridClasses["root--disableUserSelection"]} .${gridClasses.cell}`]:m["root--disableUserSelection"]},{[`&.${gridClasses.autosizing}`]:m.autosizing},{[`& .${gridClasses.editBooleanCell}`]:m.editBooleanCell},{[`& .${gridClasses["cell--editing"]}`]:m["cell--editing"]},{[`& .${gridClasses["cell--textCenter"]}`]:m["cell--textCenter"]},{[`& .${gridClasses["cell--textLeft"]}`]:m["cell--textLeft"]},{[`& .${gridClasses["cell--textRight"]}`]:m["cell--textRight"]},{[`& .${gridClasses["cell--withRenderer"]}`]:m["cell--withRenderer"]},{[`& .${gridClasses.cell}`]:m.cell},{[`& .${gridClasses["cell--rangeTop"]}`]:m["cell--rangeTop"]},{[`& .${gridClasses["cell--rangeBottom"]}`]:m["cell--rangeBottom"]},{[`& .${gridClasses["cell--rangeLeft"]}`]:m["cell--rangeLeft"]},{[`& .${gridClasses["cell--rangeRight"]}`]:m["cell--rangeRight"]},{[`& .${gridClasses["cell--withRightBorder"]}`]:m["cell--withRightBorder"]},{[`& .${gridClasses.cellContent}`]:m.cellContent},{[`& .${gridClasses.cellCheckbox}`]:m.cellCheckbox},{[`& .${gridClasses.cellSkeleton}`]:m.cellSkeleton},{[`& .${gridClasses.checkboxInput}`]:m.checkboxInput},{[`& .${gridClasses["columnHeader--alignCenter"]}`]:m["columnHeader--alignCenter"]},{[`& .${gridClasses["columnHeader--alignLeft"]}`]:m["columnHeader--alignLeft"]},{[`& .${gridClasses["columnHeader--alignRight"]}`]:m["columnHeader--alignRight"]},{[`& .${gridClasses["columnHeader--dragging"]}`]:m["columnHeader--dragging"]},{[`& .${gridClasses["columnHeader--moving"]}`]:m["columnHeader--moving"]},{[`& .${gridClasses["columnHeader--numeric"]}`]:m["columnHeader--numeric"]},{[`& .${gridClasses["columnHeader--sortable"]}`]:m["columnHeader--sortable"]},{[`& .${gridClasses["columnHeader--sorted"]}`]:m["columnHeader--sorted"]},{[`& .${gridClasses["columnHeader--withRightBorder"]}`]:m["columnHeader--withRightBorder"]},{[`& .${gridClasses.columnHeader}`]:m.columnHeader},{[`& .${gridClasses.headerFilterRow}`]:m.headerFilterRow},{[`& .${gridClasses.columnHeaderCheckbox}`]:m.columnHeaderCheckbox},{[`& .${gridClasses.columnHeaderDraggableContainer}`]:m.columnHeaderDraggableContainer},{[`& .${gridClasses.columnHeaderTitleContainer}`]:m.columnHeaderTitleContainer},{[`& .${gridClasses["columnSeparator--resizable"]}`]:m["columnSeparator--resizable"]},{[`& .${gridClasses["columnSeparator--resizing"]}`]:m["columnSeparator--resizing"]},{[`& .${gridClasses.columnSeparator}`]:m.columnSeparator},{[`& .${gridClasses.filterIcon}`]:m.filterIcon},{[`& .${gridClasses.iconSeparator}`]:m.iconSeparator},{[`& .${gridClasses.menuIcon}`]:m.menuIcon},{[`& .${gridClasses.menuIconButton}`]:m.menuIconButton},{[`& .${gridClasses.menuOpen}`]:m.menuOpen},{[`& .${gridClasses.menuList}`]:m.menuList},{[`& .${gridClasses["row--editable"]}`]:m["row--editable"]},{[`& .${gridClasses["row--editing"]}`]:m["row--editing"]},{[`& .${gridClasses["row--dragging"]}`]:m["row--dragging"]},{[`& .${gridClasses.row}`]:m.row},{[`& .${gridClasses.rowReorderCellPlaceholder}`]:m.rowReorderCellPlaceholder},{[`& .${gridClasses.rowReorderCell}`]:m.rowReorderCell},{[`& .${gridClasses["rowReorderCell--draggable"]}`]:m["rowReorderCell--draggable"]},{[`& .${gridClasses.sortIcon}`]:m.sortIcon},{[`& .${gridClasses.withBorderColor}`]:m.withBorderColor},{[`& .${gridClasses.treeDataGroupingCell}`]:m.treeDataGroupingCell},{[`& .${gridClasses.treeDataGroupingCellToggle}`]:m.treeDataGroupingCellToggle},{[`& .${gridClasses.detailPanelToggleCell}`]:m.detailPanelToggleCell},{[`& .${gridClasses["detailPanelToggleCell--expanded"]}`]:m["detailPanelToggleCell--expanded"]},m.root]})(({theme:d})=>{const m=getBorderColor(d),g=d.shape.borderRadius;return _extends$1({"--unstable_DataGrid-radius":typeof g=="number"?`${g}px`:g,"--unstable_DataGrid-headWeight":d.typography.fontWeightMedium,"--unstable_DataGrid-overlayBackground":d.vars?`rgba(${d.vars.palette.background.defaultChannel} / ${d.vars.palette.action.disabledOpacity})`:alpha(d.palette.background.default,d.palette.action.disabledOpacity),"--DataGrid-cellOffsetMultiplier":2,flex:1,boxSizing:"border-box",position:"relative",borderWidth:"1px",borderStyle:"solid",borderColor:m,borderRadius:"var(--unstable_DataGrid-radius)",color:(d.vars||d).palette.text.primary},d.typography.body2,{outline:"none",height:"100%",display:"flex",minWidth:0,minHeight:0,flexDirection:"column",overflowAnchor:"none",[`&.${gridClasses.autoHeight}`]:{height:"auto",[`& .${gridClasses["row--lastVisible"]} .${gridClasses.cell}`]:{borderBottomColor:"transparent"}},[`&.${gridClasses.autosizing}`]:{[`& .${gridClasses.columnHeaderTitleContainerContent} > *`]:{overflow:"visible !important"},[`& .${gridClasses.cell} > *`]:{overflow:"visible !important",whiteSpace:"nowrap"},[`& .${gridClasses.groupingCriteriaCell}`]:{width:"unset"},[`& .${gridClasses.treeDataGroupingCell}`]:{width:"unset"}},[`& .${gridClasses["virtualScrollerContent--overflowed"]} .${gridClasses["row--lastVisible"]} .${gridClasses.cell}`]:{borderBottomColor:"transparent"},[`& .${gridClasses.columnHeader}, & .${gridClasses.cell}`]:{WebkitTapHighlightColor:"transparent",lineHeight:null,padding:"0 10px",boxSizing:"border-box"},[`& .${gridClasses.columnHeader}:focus-within, & .${gridClasses.cell}:focus-within`]:{outline:`solid ${d.vars?`rgba(${d.vars.palette.primary.mainChannel} / 0.5)`:alpha(d.palette.primary.main,.5)} 1px`,outlineWidth:1,outlineOffset:-1},[`& .${gridClasses.columnHeader}:focus, & .${gridClasses.cell}:focus`]:{outline:`solid ${d.palette.primary.main} 1px`},[`& .${gridClasses.columnHeaderCheckbox}, & .${gridClasses.cellCheckbox}`]:{padding:0,justifyContent:"center",alignItems:"center"},[`& .${gridClasses.columnHeader}`]:{position:"relative",display:"flex",alignItems:"center"},[`& .${gridClasses["columnHeader--sorted"]} .${gridClasses.iconButtonContainer}, & .${gridClasses["columnHeader--filtered"]} .${gridClasses.iconButtonContainer}`]:{visibility:"visible",width:"auto"},[`& .${gridClasses.columnHeader}:not(.${gridClasses["columnHeader--sorted"]}) .${gridClasses.sortIcon}`]:{opacity:0,transition:d.transitions.create(["opacity"],{duration:d.transitions.duration.shorter})},[`& .${gridClasses.columnHeaderTitleContainer}`]:{display:"flex",alignItems:"center",minWidth:0,flex:1,whiteSpace:"nowrap",overflow:"hidden",position:"relative"},[`& .${gridClasses.columnHeaderTitleContainerContent}`]:{overflow:"hidden",display:"flex",alignItems:"center"},[`& .${gridClasses["columnHeader--filledGroup"]} .${gridClasses.columnHeaderTitleContainer}`]:{borderBottomWidth:"1px",borderBottomStyle:"solid",boxSizing:"border-box"},[`& .${gridClasses["columnHeader--filledGroup"]}.${gridClasses["columnHeader--showColumnBorder"]} .${gridClasses.columnHeaderTitleContainer}`]:{borderBottom:"none"},[`& .${gridClasses["columnHeader--filledGroup"]}.${gridClasses["columnHeader--showColumnBorder"]}`]:{borderBottomWidth:"1px",borderBottomStyle:"solid",boxSizing:"border-box"},[`& .${gridClasses.headerFilterRow}`]:{borderTop:`1px solid ${m}`},[`& .${gridClasses.sortIcon}, & .${gridClasses.filterIcon}`]:{fontSize:"inherit"},[`& .${gridClasses["columnHeader--sortable"]}`]:{cursor:"pointer"},[`& .${gridClasses["columnHeader--alignCenter"]} .${gridClasses.columnHeaderTitleContainer}`]:{justifyContent:"center"},[`& .${gridClasses["columnHeader--alignRight"]} .${gridClasses.columnHeaderDraggableContainer}, & .${gridClasses["columnHeader--alignRight"]} .${gridClasses.columnHeaderTitleContainer}`]:{flexDirection:"row-reverse"},[`& .${gridClasses["columnHeader--alignCenter"]} .${gridClasses.menuIcon}, & .${gridClasses["columnHeader--alignRight"]} .${gridClasses.menuIcon}`]:{marginRight:"auto",marginLeft:-6},[`& .${gridClasses["columnHeader--alignRight"]} .${gridClasses.menuIcon}, & .${gridClasses["columnHeader--alignRight"]} .${gridClasses.menuIcon}`]:{marginRight:"auto",marginLeft:-10},[`& .${gridClasses["columnHeader--moving"]}`]:{backgroundColor:(d.vars||d).palette.action.hover},[`& .${gridClasses.columnSeparator}`]:{visibility:"hidden",position:"absolute",zIndex:100,display:"flex",flexDirection:"column",justifyContent:"center",color:m},"@media (hover: hover)":{[`& .${gridClasses.columnHeaders}:hover`]:columnHeadersStyles,[`& .${gridClasses.columnHeader}:hover`]:columnHeaderStyles,[`& .${gridClasses.columnHeader}:not(.${gridClasses["columnHeader--sorted"]}):hover .${gridClasses.sortIcon}`]:{opacity:.5}},"@media (hover: none)":{[`& .${gridClasses.columnHeaders}`]:columnHeadersStyles,[`& .${gridClasses.columnHeader}`]:columnHeaderStyles},[`& .${gridClasses["columnSeparator--sideLeft"]}`]:{left:-12},[`& .${gridClasses["columnSeparator--sideRight"]}`]:{right:-12},[`& .${gridClasses["columnSeparator--resizable"]}`]:{cursor:"col-resize",touchAction:"none","&:hover":{color:(d.vars||d).palette.text.primary,"@media (hover: none)":{color:m}},[`&.${gridClasses["columnSeparator--resizing"]}`]:{color:(d.vars||d).palette.text.primary},"& svg":{pointerEvents:"none"}},[`& .${gridClasses.iconSeparator}`]:{color:"inherit"},[`& .${gridClasses.menuIcon}`]:{width:0,visibility:"hidden",fontSize:20,marginRight:-10,display:"flex",alignItems:"center"},[`.${gridClasses.menuOpen}`]:{visibility:"visible",width:"auto"},[`& .${gridClasses.row}`]:{display:"flex",width:"fit-content",breakInside:"avoid","&:hover, &.Mui-hovered":{backgroundColor:(d.vars||d).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},"&.Mui-selected":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity),"&:hover, &.Mui-hovered":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / calc(
585
585
  ${d.vars.palette.action.selectedOpacity} +
586
586
  ${d.vars.palette.action.hoverOpacity}
587
587
  ))`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity+d.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity)}}}},[`& .${gridClasses.cell}`]:{display:"flex",alignItems:"center",borderBottom:"1px solid","&.Mui-selected":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity),"&:hover, &.Mui-hovered":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity+d.palette.action.hoverOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity+d.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity)}}}},[`&.${gridClasses["root--disableUserSelection"]} .${gridClasses.cell}`]:{userSelect:"none"},[`& .${gridClasses.row}:not(.${gridClasses["row--dynamicHeight"]}) > .${gridClasses.cell}`]:{overflow:"hidden",whiteSpace:"nowrap"},[`& .${gridClasses.cellContent}`]:{overflow:"hidden",textOverflow:"ellipsis"},[`& .${gridClasses.cell}.${gridClasses["cell--selectionMode"]}`]:{cursor:"default"},[`& .${gridClasses.cell}.${gridClasses["cell--editing"]}`]:{padding:1,display:"flex",boxShadow:d.shadows[2],backgroundColor:(d.vars||d).palette.background.paper,"&:focus-within":{outline:`solid ${(d.vars||d).palette.primary.main} 1px`,outlineOffset:"-1px"}},[`& .${gridClasses["row--editing"]}`]:{boxShadow:d.shadows[2]},[`& .${gridClasses["row--editing"]} .${gridClasses.cell}`]:{boxShadow:d.shadows[0],backgroundColor:(d.vars||d).palette.background.paper},[`& .${gridClasses.editBooleanCell}`]:{display:"flex",height:"100%",width:"100%",alignItems:"center",justifyContent:"center"},[`& .${gridClasses.booleanCell}[data-value="true"]`]:{color:(d.vars||d).palette.text.secondary},[`& .${gridClasses.booleanCell}[data-value="false"]`]:{color:(d.vars||d).palette.text.disabled},[`& .${gridClasses.actionsCell}`]:{display:"inline-flex",alignItems:"center",gridGap:d.spacing(1)},[`& .${gridClasses.rowReorderCell}`]:{display:"inline-flex",flex:1,alignItems:"center",justifyContent:"center",opacity:(d.vars||d).palette.action.disabledOpacity},[`& .${gridClasses["rowReorderCell--draggable"]}`]:{cursor:"move",opacity:1},[`& .${gridClasses.rowReorderCellContainer}`]:{padding:0,alignItems:"stretch"},[`.${gridClasses.withBorderColor}`]:{borderColor:m},[`& .${gridClasses["cell--withRightBorder"]}`]:{borderRightWidth:"1px",borderRightStyle:"solid"},[`& .${gridClasses["columnHeader--withRightBorder"]}`]:{borderRightWidth:"1px",borderRightStyle:"solid"},[`& .${gridClasses["cell--textLeft"]}`]:{justifyContent:"flex-start"},[`& .${gridClasses["cell--textRight"]}`]:{justifyContent:"flex-end"},[`& .${gridClasses["cell--textCenter"]}`]:{justifyContent:"center"},[`& .${gridClasses.columnHeaderDraggableContainer}`]:{display:"flex",width:"100%",height:"100%"},[`& .${gridClasses.rowReorderCellPlaceholder}`]:{display:"none"},[`& .${gridClasses["columnHeader--dragging"]}, & .${gridClasses["row--dragging"]}`]:{background:(d.vars||d).palette.background.paper,padding:"0 12px",borderRadius:"var(--unstable_DataGrid-radius)",opacity:(d.vars||d).palette.action.disabledOpacity},[`& .${gridClasses["row--dragging"]}`]:{background:(d.vars||d).palette.background.paper,padding:"0 12px",borderRadius:"var(--unstable_DataGrid-radius)",opacity:(d.vars||d).palette.action.disabledOpacity,[`& .${gridClasses.rowReorderCellPlaceholder}`]:{display:"flex"}},[`& .${gridClasses.treeDataGroupingCell}`]:{display:"flex",alignItems:"center",width:"100%"},[`& .${gridClasses.treeDataGroupingCellToggle}`]:{flex:"0 0 28px",alignSelf:"stretch",marginRight:d.spacing(2)},[`& .${gridClasses.groupingCriteriaCell}`]:{display:"flex",alignItems:"center",width:"100%"},[`& .${gridClasses.groupingCriteriaCellToggle}`]:{flex:"0 0 28px",alignSelf:"stretch",marginRight:d.spacing(2)}})}),_excluded$1d=["children","className"],useUtilityClasses$T=d=>{const{autoHeight:m,density:g,classes:x}=d,b={root:["root",m&&"autoHeight",`root--density${capitalize$1(g)}`,"withBorderColor"]};return composeClasses(b,getDataGridUtilityClass,x)},GridRoot=reactExports.forwardRef(function(m,g){var x;const b=useGridRootProps(),{children:E,className:v}=m,S=_objectWithoutPropertiesLoose(m,_excluded$1d),C=useGridPrivateApiContext(),T=useGridSelector(C,gridDensityValueSelector),R=reactExports.useRef(null),k=useForkRef(R,g),L=(x=b.experimentalFeatures)!=null&&x.ariaV7?null:useGridAriaAttributes,D=typeof L=="function"?L():null,A=_extends$1({},b,{density:T}),I=useUtilityClasses$T(A);C.current.register("public",{rootElementRef:R});const[N,z]=reactExports.useState(!1);return useEnhancedEffect(()=>{z(!0)},[]),N?jsxRuntimeExports.jsx(GridRootStyles,_extends$1({ref:k,className:clsx(v,I.root),ownerState:A},D,S,{children:E})):null}),_excluded$1c=["className"],useUtilityClasses$S=d=>{const{classes:m}=d;return composeClasses({root:["footerContainer","withBorderColor"]},getDataGridUtilityClass,m)},GridFooterContainerRoot=styled$1("div",{name:"MuiDataGrid",slot:"FooterContainer",overridesResolver:(d,m)=>m.footerContainer})({display:"flex",justifyContent:"space-between",alignItems:"center",minHeight:52,borderTop:"1px solid"}),GridFooterContainer=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$1c),E=useGridRootProps(),v=useUtilityClasses$S(E);return jsxRuntimeExports.jsx(GridFooterContainerRoot,_extends$1({ref:g,className:clsx(v.root,x),ownerState:E},b))}),_excluded$1b=["className"],useUtilityClasses$R=d=>{const{classes:m}=d;return composeClasses({root:["overlay"]},getDataGridUtilityClass,m)},GridOverlayRoot=styled$1("div",{name:"MuiDataGrid",slot:"Overlay",overridesResolver:(d,m)=>m.overlay})({width:"100%",height:"100%",display:"flex",alignSelf:"center",alignItems:"center",justifyContent:"center",backgroundColor:"var(--unstable_DataGrid-overlayBackground)"}),GridOverlay=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$1b),E=useGridRootProps(),v=useUtilityClasses$R(E);return jsxRuntimeExports.jsx(GridOverlayRoot,_extends$1({ref:g,className:clsx(v.root,x),ownerState:E},b))}),_excluded$1a=["className"],useUtilityClasses$Q=d=>{const{classes:m}=d;return composeClasses({root:["iconButtonContainer"]},getDataGridUtilityClass,m)},GridIconButtonContainerRoot=styled$1("div",{name:"MuiDataGrid",slot:"IconButtonContainer",overridesResolver:(d,m)=>m.iconButtonContainer})(()=>({display:"flex",visibility:"hidden",width:0})),GridIconButtonContainer=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$1a),E=useGridRootProps(),v=useUtilityClasses$Q(E);return jsxRuntimeExports.jsx(GridIconButtonContainerRoot,_extends$1({ref:g,className:clsx(v.root,x),ownerState:E},b))}),useUtilityClasses$P=d=>{const{classes:m}=d;return composeClasses({icon:["sortIcon"]},getDataGridUtilityClass,m)};function getIcon(d,m,g,x){let b;const E={};return m==="asc"?b=d.columnSortedAscendingIcon:m==="desc"?b=d.columnSortedDescendingIcon:(b=d.columnUnsortedIcon,E.sortingOrder=x),b?jsxRuntimeExports.jsx(b,_extends$1({fontSize:"small",className:g},E)):null}function GridColumnHeaderSortIconRaw(d){var m;const{direction:g,index:x,sortingOrder:b}=d,E=useGridApiContext(),v=useGridRootProps(),S=_extends$1({},d,{classes:v.classes}),C=useUtilityClasses$P(S),T=getIcon(v.slots,g,C.icon,b);if(!T)return null;const R=jsxRuntimeExports.jsx(v.slots.baseIconButton,_extends$1({tabIndex:-1,"aria-label":E.current.getLocaleText("columnHeaderSortIconLabel"),title:E.current.getLocaleText("columnHeaderSortIconLabel"),size:"small"},(m=v.slotProps)==null?void 0:m.baseIconButton,{children:T}));return jsxRuntimeExports.jsxs(GridIconButtonContainer,{children:[x!=null&&jsxRuntimeExports.jsx(Badge,{badgeContent:x,color:"default",children:R}),x==null&&R]})}const GridColumnHeaderSortIcon=reactExports.memo(GridColumnHeaderSortIconRaw),useUtilityClasses$O=d=>{const{classes:m,open:g}=d;return composeClasses({root:["menuIcon",g&&"menuOpen"],button:["menuIconButton"]},getDataGridUtilityClass,m)},ColumnHeaderMenuIcon=reactExports.memo(d=>{var m,g;const{colDef:x,open:b,columnMenuId:E,columnMenuButtonId:v,iconButtonRef:S}=d,C=useGridApiContext(),T=useGridRootProps(),R=_extends$1({},d,{classes:T.classes}),k=useUtilityClasses$O(R),L=reactExports.useCallback(D=>{D.preventDefault(),D.stopPropagation(),C.current.toggleColumnMenu(x.field)},[C,x.field]);return jsxRuntimeExports.jsx("div",{className:k.root,children:jsxRuntimeExports.jsx(T.slots.baseTooltip,_extends$1({title:C.current.getLocaleText("columnMenuLabel"),enterDelay:1e3},(m=T.slotProps)==null?void 0:m.baseTooltip,{children:jsxRuntimeExports.jsx(T.slots.baseIconButton,_extends$1({ref:S,tabIndex:-1,className:k.button,"aria-label":C.current.getLocaleText("columnMenuLabel"),size:"small",onClick:L,"aria-haspopup":"menu","aria-expanded":b,"aria-controls":b?E:void 0,id:v},(g=T.slotProps)==null?void 0:g.baseIconButton,{children:jsxRuntimeExports.jsx(T.slots.columnMenuIcon,{fontSize:"small"})}))}))})});function GridColumnHeaderMenu({columnMenuId:d,columnMenuButtonId:m,ContentComponent:g,contentComponentProps:x,field:b,open:E,target:v,onExited:S}){const C=useGridApiContext(),T=C.current.getColumn(b),R=useEventCallback(k=>{k&&(k.stopPropagation(),v!=null&&v.contains(k.target))||C.current.hideColumnMenu()});return!v||!T?null:jsxRuntimeExports.jsx(GridMenu,{placement:`bottom-${T.align==="right"?"start":"end"}`,open:E,target:v,onClose:R,onExited:S,children:jsxRuntimeExports.jsx(g,_extends$1({colDef:T,hideMenu:R,open:E,id:d,labelledby:m},x))})}const _excluded$19=["className"],useUtilityClasses$N=d=>{const{classes:m}=d;return composeClasses({root:["columnHeaderTitle"]},getDataGridUtilityClass,m)},GridColumnHeaderTitleRoot=styled$1("div",{name:"MuiDataGrid",slot:"ColumnHeaderTitle",overridesResolver:(d,m)=>m.columnHeaderTitle})({textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap",fontWeight:"var(--unstable_DataGrid-headWeight)"}),ColumnHeaderInnerTitle=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$19),E=useGridRootProps(),v=useUtilityClasses$N(E);return jsxRuntimeExports.jsx(GridColumnHeaderTitleRoot,_extends$1({ref:g,className:clsx(v.root,x),ownerState:E},b))});function GridColumnHeaderTitle(d){var m;const{label:g,description:x}=d,b=useGridRootProps(),E=reactExports.useRef(null),[v,S]=reactExports.useState(""),C=reactExports.useCallback(()=>{if(!x&&E!=null&&E.current){const T=isOverflown(E.current);S(T?g:"")}},[x,g]);return jsxRuntimeExports.jsx(b.slots.baseTooltip,_extends$1({title:x||v},(m=b.slotProps)==null?void 0:m.baseTooltip,{children:jsxRuntimeExports.jsx(ColumnHeaderInnerTitle,{onMouseOver:C,ref:E,children:g})}))}const _excluded$18=["resizable","resizing","height","side"];var GridColumnHeaderSeparatorSides=function(d){return d.Left="left",d.Right="right",d}(GridColumnHeaderSeparatorSides||{});const useUtilityClasses$M=d=>{const{resizable:m,resizing:g,classes:x,side:b}=d,E={root:["columnSeparator",m&&"columnSeparator--resizable",g&&"columnSeparator--resizing",b&&`columnSeparator--side${capitalize$1(b)}`],icon:["iconSeparator"]};return composeClasses(E,getDataGridUtilityClass,x)};function GridColumnHeaderSeparatorRaw(d){const{height:m,side:g=GridColumnHeaderSeparatorSides.Right}=d,x=_objectWithoutPropertiesLoose(d,_excluded$18),b=useGridRootProps(),E=_extends$1({},d,{side:g,classes:b.classes}),v=useUtilityClasses$M(E),S=reactExports.useCallback(C=>{C.preventDefault(),C.stopPropagation()},[]);return jsxRuntimeExports.jsx("div",_extends$1({className:v.root,style:{minHeight:m,opacity:b.showColumnVerticalBorder?0:1}},x,{onClick:S,children:jsxRuntimeExports.jsx(b.slots.columnResizeIcon,{className:v.icon})}))}const GridColumnHeaderSeparator=reactExports.memo(GridColumnHeaderSeparatorRaw),_excluded$17=["classes","columnMenuOpen","colIndex","height","isResizing","sortDirection","hasFocus","tabIndex","separatorSide","isDraggable","headerComponent","description","elementId","width","columnMenuIconButton","columnMenu","columnTitleIconButtons","headerClassName","label","resizable","draggableContainerProps","columnHeaderSeparatorProps"],GridGenericColumnHeaderItem=reactExports.forwardRef(function(m,g){const{classes:x,columnMenuOpen:b,colIndex:E,height:v,isResizing:S,sortDirection:C,hasFocus:T,tabIndex:R,separatorSide:k,isDraggable:L,headerComponent:D,description:A,width:I,columnMenuIconButton:N=null,columnMenu:z=null,columnTitleIconButtons:j=null,headerClassName:Y,label:B,resizable:U,draggableContainerProps:W,columnHeaderSeparatorProps:V}=m,J=_objectWithoutPropertiesLoose(m,_excluded$17),Q=useGridPrivateApiContext(),X=useGridRootProps(),re=reactExports.useRef(null),[ie,oe]=reactExports.useState(b),Z=useForkRef(re,g);let ee="none";return C!=null&&(ee=C==="asc"?"ascending":"descending"),reactExports.useEffect(()=>{ie||oe(b)},[ie,b]),reactExports.useLayoutEffect(()=>{const ce=Q.current.state.columnMenu;if(T&&!ce.open){const ae=re.current.querySelector('[tabindex="0"]')||re.current;ae==null||ae.focus(),Q.current.columnHeadersContainerElementRef.current.scrollLeft=0}},[Q,T]),jsxRuntimeExports.jsxs("div",_extends$1({ref:Z,className:clsx(x.root,Y),style:{height:v,width:I,minWidth:I,maxWidth:I},role:"columnheader",tabIndex:R,"aria-colindex":E+1,"aria-sort":ee,"aria-label":D==null?B:void 0},J,{children:[jsxRuntimeExports.jsxs("div",_extends$1({className:x.draggableContainer,draggable:L,role:"presentation"},W,{children:[jsxRuntimeExports.jsxs("div",{className:x.titleContainer,role:"presentation",children:[jsxRuntimeExports.jsx("div",{className:x.titleContainerContent,children:D!==void 0?D:jsxRuntimeExports.jsx(GridColumnHeaderTitle,{label:B,description:A,columnWidth:I})}),j]}),N]})),jsxRuntimeExports.jsx(GridColumnHeaderSeparator,_extends$1({resizable:!X.disableColumnResize&&!!U,resizing:S,height:v,side:k},V)),z]}))}),useUtilityClasses$L=d=>{const{colDef:m,classes:g,isDragging:x,sortDirection:b,showRightBorder:E,filterItemsCounter:v}=d,S=b!=null,C=v!=null&&v>0,T=m.type==="number",R={root:["columnHeader",m.headerAlign==="left"&&"columnHeader--alignLeft",m.headerAlign==="center"&&"columnHeader--alignCenter",m.headerAlign==="right"&&"columnHeader--alignRight",m.sortable&&"columnHeader--sortable",x&&"columnHeader--moving",S&&"columnHeader--sorted",C&&"columnHeader--filtered",T&&"columnHeader--numeric","withBorderColor",E&&"columnHeader--withRightBorder"],draggableContainer:["columnHeaderDraggableContainer"],titleContainer:["columnHeaderTitleContainer"],titleContainerContent:["columnHeaderTitleContainerContent"]};return composeClasses(R,getDataGridUtilityClass,g)};function GridColumnHeaderItem(d){var m,g,x,b;const{colDef:E,columnMenuOpen:v,colIndex:S,headerHeight:C,isResizing:T,sortDirection:R,sortIndex:k,filterItemsCounter:L,hasFocus:D,tabIndex:A,disableReorder:I,separatorSide:N}=d,z=useGridPrivateApiContext(),j=useGridRootProps(),Y=reactExports.useRef(null),B=useId(),U=useId(),W=reactExports.useRef(null),[V,J]=reactExports.useState(v),Q=reactExports.useMemo(()=>!j.disableColumnReorder&&!I&&!E.disableReorder,[j.disableColumnReorder,I,E.disableReorder]);let X;E.renderHeader&&(X=E.renderHeader(z.current.getColumnHeaderParams(E.field)));const re=_extends$1({},d,{classes:j.classes,showRightBorder:j.showColumnVerticalBorder}),ie=useUtilityClasses$L(re),oe=reactExports.useCallback(ve=>Se=>{isEventTargetInPortal(Se)||z.current.publishEvent(ve,z.current.getColumnHeaderParams(E.field),Se)},[z,E.field]),Z=reactExports.useMemo(()=>({onClick:oe("columnHeaderClick"),onDoubleClick:oe("columnHeaderDoubleClick"),onMouseOver:oe("columnHeaderOver"),onMouseOut:oe("columnHeaderOut"),onMouseEnter:oe("columnHeaderEnter"),onMouseLeave:oe("columnHeaderLeave"),onKeyDown:oe("columnHeaderKeyDown"),onFocus:oe("columnHeaderFocus"),onBlur:oe("columnHeaderBlur")}),[oe]),ee=reactExports.useMemo(()=>Q?{onDragStart:oe("columnHeaderDragStart"),onDragEnter:oe("columnHeaderDragEnter"),onDragOver:oe("columnHeaderDragOver"),onDragEnd:oe("columnHeaderDragEnd")}:{},[Q,oe]),ce=reactExports.useMemo(()=>({onMouseDown:oe("columnSeparatorMouseDown"),onDoubleClick:oe("columnSeparatorDoubleClick")}),[oe]);reactExports.useEffect(()=>{V||J(v)},[V,v]);const fe=reactExports.useCallback(()=>{J(!1)},[]),ae=!j.disableColumnMenu&&!E.disableColumnMenu&&jsxRuntimeExports.jsx(ColumnHeaderMenuIcon,{colDef:E,columnMenuId:B,columnMenuButtonId:U,open:V,iconButtonRef:W}),ue=jsxRuntimeExports.jsx(GridColumnHeaderMenu,{columnMenuId:B,columnMenuButtonId:U,field:E.field,open:v,target:W.current,ContentComponent:j.slots.columnMenu,contentComponentProps:(m=j.slotProps)==null?void 0:m.columnMenu,onExited:fe}),pe=(g=E.sortingOrder)!=null?g:j.sortingOrder,ge=jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[!j.disableColumnFilter&&jsxRuntimeExports.jsx(j.slots.columnHeaderFilterIconButton,_extends$1({field:E.field,counter:L},(x=j.slotProps)==null?void 0:x.columnHeaderFilterIconButton)),E.sortable&&!E.hideSortIcons&&jsxRuntimeExports.jsx(GridColumnHeaderSortIcon,{direction:R,index:k,sortingOrder:pe})]});reactExports.useLayoutEffect(()=>{const ve=z.current.state.columnMenu;if(D&&!ve.open){var Se;const Me=Y.current.querySelector('[tabindex="0"]')||Y.current;Me==null||Me.focus(),(Se=z.current.columnHeadersContainerElementRef)!=null&&Se.current&&(z.current.columnHeadersContainerElementRef.current.scrollLeft=0)}},[z,D]);const ye=typeof E.headerClassName=="function"?E.headerClassName({field:E.field,colDef:E}):E.headerClassName,Ee=(b=E.headerName)!=null?b:E.field;return jsxRuntimeExports.jsx(GridGenericColumnHeaderItem,_extends$1({ref:Y,classes:ie,columnMenuOpen:v,colIndex:S,height:C,isResizing:T,sortDirection:R,hasFocus:D,tabIndex:A,separatorSide:N,isDraggable:Q,headerComponent:X,description:E.description,elementId:E.field,width:E.computedWidth,columnMenuIconButton:ae,columnTitleIconButtons:ge,headerClassName:ye,label:Ee,resizable:!j.disableColumnResize&&!!E.resizable,"data-field":E.field,columnMenu:ue,draggableContainerProps:ee,columnHeaderSeparatorProps:ce},Z))}const getDefaultGridFilterModel=()=>({items:[],logicOperator:GridLogicOperator.And,quickFilterValues:[],quickFilterLogicOperator:GridLogicOperator.And}),CLEANUP_TIMER_LOOP_MILLIS$1=1e3;let TimerBasedCleanupTracking$1=class{constructor(m=CLEANUP_TIMER_LOOP_MILLIS$1){this.timeouts=new Map,this.cleanupTimeout=CLEANUP_TIMER_LOOP_MILLIS$1,this.cleanupTimeout=m}register(m,g,x){this.timeouts||(this.timeouts=new Map);const b=setTimeout(()=>{typeof g=="function"&&g(),this.timeouts.delete(x.cleanupToken)},this.cleanupTimeout);this.timeouts.set(x.cleanupToken,b)}unregister(m){const g=this.timeouts.get(m.cleanupToken);g&&(this.timeouts.delete(m.cleanupToken),clearTimeout(g))}reset(){this.timeouts&&(this.timeouts.forEach((m,g)=>{this.unregister({cleanupToken:g})}),this.timeouts=void 0)}},FinalizationRegistryBasedCleanupTracking$1=class{constructor(){this.registry=new FinalizationRegistry(m=>{typeof m=="function"&&m()})}register(m,g,x){this.registry.register(m,g,x)}unregister(m){this.registry.unregister(m)}reset(){}};var GridSignature=function(d){return d.DataGrid="DataGrid",d.DataGridPro="DataGridPro",d}(GridSignature||{});let ObjectToBeRetainedByReact$1=class{};function createUseGridApiEventHandler(d){let m=0;return function(x,b,E,v){d.registry===null&&(d.registry=typeof FinalizationRegistry!="undefined"?new FinalizationRegistryBasedCleanupTracking$1:new TimerBasedCleanupTracking$1);const[S]=reactExports.useState(new ObjectToBeRetainedByReact$1),C=reactExports.useRef(null),T=reactExports.useRef();T.current=E;const R=reactExports.useRef(null);if(!C.current&&T.current){const k=(L,D,A)=>{if(!D.defaultMuiPrevented){var I;(I=T.current)==null||I.call(T,L,D,A)}};C.current=x.current.subscribeEvent(b,k,v),m+=1,R.current={cleanupToken:m},d.registry.register(S,()=>{var L;(L=C.current)==null||L.call(C),C.current=null,R.current=null},R.current)}else!T.current&&C.current&&(C.current(),C.current=null,R.current&&(d.registry.unregister(R.current),R.current=null));reactExports.useEffect(()=>{if(!C.current&&T.current){const k=(L,D,A)=>{if(!D.defaultMuiPrevented){var I;(I=T.current)==null||I.call(T,L,D,A)}};C.current=x.current.subscribeEvent(b,k,v)}return R.current&&d.registry&&(d.registry.unregister(R.current),R.current=null),()=>{var k;(k=C.current)==null||k.call(C),C.current=null}},[x,b,v])}}const registryContainer$1={registry:null},useGridApiEventHandler=createUseGridApiEventHandler(registryContainer$1),optionsSubscriberOptions={isFirst:!0};function useGridApiOptionHandler(d,m,g){useGridApiEventHandler(d,m,g,optionsSubscriberOptions)}function useGridLogger(d,m){const g=reactExports.useRef(null);if(g.current)return g.current;const x=d.current.getLogger(m);return g.current=x,x}function isNumber(d){return typeof d=="number"&&!Number.isNaN(d)}function isFunction(d){return typeof d=="function"}function isObject(d){return typeof d=="object"&&d!==null}function localStorageAvailable(){try{const d="__some_random_key_you_are_not_going_to_use__";return window.localStorage.setItem(d,d),window.localStorage.removeItem(d),!0}catch(d){return!1}}function escapeRegExp(d){return d.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")}const clamp=(d,m,g)=>Math.max(m,Math.min(g,d));function isDeepEqual(d,m){if(d===m)return!0;if(d&&m&&typeof d=="object"&&typeof m=="object"){if(d.constructor!==m.constructor)return!1;if(Array.isArray(d)){const b=d.length;if(b!==m.length)return!1;for(let E=0;E<b;E+=1)if(!isDeepEqual(d[E],m[E]))return!1;return!0}if(d instanceof Map&&m instanceof Map){if(d.size!==m.size)return!1;const b=Array.from(d.entries());for(let E=0;E<b.length;E+=1)if(!m.has(b[E][0]))return!1;for(let E=0;E<b.length;E+=1){const v=b[E];if(!isDeepEqual(v[1],m.get(v[0])))return!1}return!0}if(d instanceof Set&&m instanceof Set){if(d.size!==m.size)return!1;const b=Array.from(d.entries());for(let E=0;E<b.length;E+=1)if(!m.has(b[E][0]))return!1;return!0}if(ArrayBuffer.isView(d)&&ArrayBuffer.isView(m)){const b=d.length;if(b!==m.length)return!1;for(let E=0;E<b;E+=1)if(d[E]!==m[E])return!1;return!0}if(d.constructor===RegExp)return d.source===m.source&&d.flags===m.flags;if(d.valueOf!==Object.prototype.valueOf)return d.valueOf()===m.valueOf();if(d.toString!==Object.prototype.toString)return d.toString()===m.toString();const g=Object.keys(d),x=g.length;if(x!==Object.keys(m).length)return!1;for(let b=0;b<x;b+=1)if(!Object.prototype.hasOwnProperty.call(m,g[b]))return!1;for(let b=0;b<x;b+=1){const E=g[b];if(!isDeepEqual(d[E],m[E]))return!1}return!0}return d!==d&&m!==m}function mulberry32(d){return()=>{let m=d+=1831565813;return m=Math.imul(m^m>>>15,m|1),m^=m+Math.imul(m^m>>>7,m|61),((m^m>>>14)>>>0)/4294967296}}function randomNumberBetween(d,m,g){const x=mulberry32(d);return()=>m+(g-m)*x()}function deepClone(d){return typeof structuredClone=="function"?structuredClone(d):JSON.parse(JSON.stringify(d))}const useGridNativeEventListener=(d,m,g,x,b)=>{const E=useGridLogger(d,"useNativeEventListener"),[v,S]=reactExports.useState(!1),C=reactExports.useRef(x),T=reactExports.useCallback(R=>C.current&&C.current(R),[]);reactExports.useEffect(()=>{C.current=x},[x]),reactExports.useEffect(()=>{let R;if(isFunction(m)?R=m():R=m&&m.current?m.current:null,R&&g&&!v){E.debug(`Binding native ${g} event`),R.addEventListener(g,T,b);const k=R;S(!0);const L=()=>{E.debug(`Clearing native ${g} event`),k.removeEventListener(g,T,b)};d.current.subscribeEvent("unmount",L)}},[m,T,g,v,E,b,d])},useFirstRender=d=>{const m=reactExports.useRef(!0);m.current&&(m.current=!1,d())},MAX_PAGE_SIZE=100,defaultPageSize=d=>d?0:100,getPageCount=(d,m)=>m>0&&d>0?Math.ceil(d/m):0;buildWarning$1(["MUI: the 'rowCount' prop is undefined while using paginationMode='server'","For more detail, see http://mui.com/components/data-grid/pagination/#basic-implementation"],"error");const getDefaultGridPaginationModel=d=>({page:0,pageSize:d?0:100}),getValidPage=(d,m=0)=>m===0?d:Math.max(Math.min(d,m-1),0),throwIfPageSizeExceedsTheLimit=(d,m)=>{if(m===GridSignature.DataGrid&&d>MAX_PAGE_SIZE)throw new Error(["MUI: `pageSize` cannot exceed 100 in the MIT version of the DataGrid.","You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature."].join(`
@@ -602,24 +602,24 @@ return result$$;`.replaceAll("$$",String(filterItemsApplierId)));return filterIt
602
602
  `,"").trim();if(!x.includeHeaders)return v;const S=m.filter(k=>k.field!==GRID_CHECKBOX_SELECTION_COL_DEF.field),C=[];if(x.includeColumnGroupsHeaders){const k=E.current.unstable_getAllGroupDetails();let L=0;const D=S.reduce((A,I)=>{const N=E.current.unstable_getColumnGroupPath(I.field);return A[I.field]=N,L=Math.max(L,N.length),A},{});for(let A=0;A<L;A+=1){const I=new CSVRow({csvOptions:x,sanitizeCellValue});C.push(I),S.forEach(N=>{const z=(D[N.field]||[])[A],j=k[z];I.addValue(j?j.headerName||j.groupId:"")})}}const T=new CSVRow({csvOptions:x,sanitizeCellValue});return S.forEach(k=>{T.addValue(k.headerName||k.field)}),C.push(T),`${`${C.map(k=>k.getRowString()).join(`\r
603
603
  `)}\r
604
604
  `}${v}`.trim()}function writeToClipboardPolyfill(d){const m=document.createElement("span");m.style.whiteSpace="pre",m.style.userSelect="all",m.style.opacity="0px",m.textContent=d,document.body.appendChild(m);const g=document.createRange();g.selectNode(m);const x=window.getSelection();x.removeAllRanges(),x.addRange(g);try{document.execCommand("copy")}finally{document.body.removeChild(m)}}function copyToClipboard(d){navigator.clipboard?navigator.clipboard.writeText(d).catch(()=>{writeToClipboardPolyfill(d)}):writeToClipboardPolyfill(d)}function hasNativeSelection(d){var m;return!!((m=window.getSelection())!=null&&m.toString()||d&&(d.selectionEnd||0)-(d.selectionStart||0)>0)}const useGridClipboard=(d,m)=>{const g=m.unstable_ignoreValueFormatterDuringExport,x=(typeof g=="object"?g==null?void 0:g.clipboardExport:g)||!1,b=m.clipboardCopyCellDelimiter,E=reactExports.useCallback(v=>{if(!((v.ctrlKey||v.metaKey)&&v.key==="c")||hasNativeSelection(v.target))return;let S="";if(d.current.getSelectedRows().size>0)S=d.current.getDataAsCsv({includeHeaders:!1,delimiter:b,shouldAppendQuotes:!1,escapeFormulas:!1});else{const T=gridFocusCellSelector(d);if(T){const R=d.current.getCellParams(T.id,T.field);S=serializeCellValue(R,{csvOptions:{delimiter:b,shouldAppendQuotes:!1,escapeFormulas:!1},ignoreValueFormatter:x})}}S=d.current.unstable_applyPipeProcessors("clipboardCopy",S),S&&(copyToClipboard(S),d.current.publishEvent("clipboardCopy",S))},[d,x,b]);useGridNativeEventListener(d,d.current.rootElementRef,"keydown",E),useGridApiOptionHandler(d,"clipboardCopy",m.onClipboardCopy)},columnMenuStateInitializer=d=>_extends$1({},d,{columnMenu:{open:!1}}),useGridColumnMenu=d=>{const m=useGridLogger(d,"useGridColumnMenu"),g=reactExports.useCallback(v=>{d.current.setState(C=>C.columnMenu.open&&C.columnMenu.field===v?C:(m.debug("Opening Column Menu"),_extends$1({},C,{columnMenu:{open:!0,field:v}})))&&(d.current.hidePreferences(),d.current.forceUpdate())},[d,m]),x=reactExports.useCallback(()=>{const v=gridColumnMenuSelector(d.current.state);if(v.field){const C=gridColumnLookupSelector(d),T=gridColumnVisibilityModelSelector(d),R=gridColumnFieldsSelector(d);let k=v.field;if(C[k]||(k=R[0]),T[k]===!1){const L=R.filter(A=>A===k?!0:T[A]!==!1),D=L.indexOf(k);k=L[D+1]||L[D-1]}d.current.setColumnHeaderFocus(k)}d.current.setState(C=>!C.columnMenu.open&&C.columnMenu.field===void 0?C:(m.debug("Hiding Column Menu"),_extends$1({},C,{columnMenu:_extends$1({},C.columnMenu,{open:!1,field:void 0})})))&&d.current.forceUpdate()},[d,m]),b=reactExports.useCallback(v=>{m.debug("Toggle Column Menu");const S=gridColumnMenuSelector(d.current.state);!S.open||S.field!==v?g(v):x()},[d,m,g,x]);useGridApiMethod(d,{showColumnMenu:g,hideColumnMenu:x,toggleColumnMenu:b},"public"),useGridApiEventHandler(d,"columnResizeStart",x),useGridApiEventHandler(d,"virtualScrollerWheel",d.current.hideColumnMenu),useGridApiEventHandler(d,"virtualScrollerTouchMove",d.current.hideColumnMenu)},COLUMNS_DIMENSION_PROPERTIES=["maxWidth","minWidth","width","flex"];function computeFlexColumnsWidth({initialFreeSpace:d,totalFlexUnits:m,flexColumns:g}){const x=new Set(g.map(v=>v.field)),b={all:{},frozenFields:[],freeze:v=>{const S=b.all[v];S&&S.frozen!==!0&&(b.all[v].frozen=!0,b.frozenFields.push(v))}};function E(){if(b.frozenFields.length===x.size)return;const v={min:{},max:{}};let S=d,C=m,T=0;b.frozenFields.forEach(R=>{S-=b.all[R].computedWidth,C-=b.all[R].flex});for(let R=0;R<g.length;R+=1){const k=g[R];if(b.all[k.field]&&b.all[k.field].frozen===!0)continue;let D=S/C*k.flex;D<k.minWidth?(T+=k.minWidth-D,D=k.minWidth,v.min[k.field]=!0):D>k.maxWidth&&(T+=k.maxWidth-D,D=k.maxWidth,v.max[k.field]=!0),b.all[k.field]={frozen:!1,computedWidth:D,flex:k.flex}}T<0?Object.keys(v.max).forEach(R=>{b.freeze(R)}):T>0?Object.keys(v.min).forEach(R=>{b.freeze(R)}):g.forEach(({field:R})=>{b.freeze(R)}),E()}return E(),b.all}const hydrateColumnsWidth=(d,m)=>{const g={};let x=0,b=0;const E=[];d.orderedFields.forEach(S=>{const C=_extends$1({},d.lookup[S]);if(d.columnVisibilityModel[S]===!1)C.computedWidth=0;else{let T;C.flex&&C.flex>0?(x+=C.flex,T=0,E.push(C)):T=clamp(C.width||GRID_STRING_COL_DEF.width,C.minWidth||GRID_STRING_COL_DEF.minWidth,C.maxWidth||GRID_STRING_COL_DEF.maxWidth),b+=T,C.computedWidth=T}g[S]=C});const v=Math.max(m-b,0);if(x>0&&m>0){const S=computeFlexColumnsWidth({initialFreeSpace:v,totalFlexUnits:x,flexColumns:E});Object.keys(S).forEach(C=>{g[C].computedWidth=S[C].computedWidth})}return _extends$1({},d,{lookup:g})},applyInitialState=(d,m)=>{if(!m)return d;const{orderedFields:g=[],dimensions:x={}}=m,b=Object.keys(x);if(b.length===0&&g.length===0)return d;const E={},v=[];for(let R=0;R<g.length;R+=1){const k=g[R];d.lookup[k]&&(E[k]=!0,v.push(k))}const S=v.length===0?d.orderedFields:[...v,...d.orderedFields.filter(R=>!E[R])],C=_extends$1({},d.lookup);for(let R=0;R<b.length;R+=1){const k=b[R],L=_extends$1({},C[k],{hasBeenResized:!0});Object.entries(x[k]).forEach(([D,A])=>{L[D]=A===-1?1/0:A}),C[k]=L}return _extends$1({},d,{orderedFields:S,lookup:C})};function getDefaultColTypeDef(d,m){let g=d[DEFAULT_GRID_COL_TYPE_KEY];return m&&d[m]&&(g=d[m]),g}const createColumnsState=({apiRef:d,columnsToUpsert:m,initialState:g,columnTypes:x,columnVisibilityModel:b=gridColumnVisibilityModelSelector(d),keepOnlyColumnsToUpsert:E=!1})=>{var v,S,C;const T=!d.current.state.columns;let R;if(T)R={orderedFields:[],lookup:{},columnVisibilityModel:b};else{const A=gridColumnsStateSelector(d.current.state);R={orderedFields:E?[]:[...A.orderedFields],lookup:_extends$1({},A.lookup),columnVisibilityModel:b}}let k={};E&&!T&&(k=Object.keys(R.lookup).reduce((A,I)=>_extends$1({},A,{[I]:!1}),{})),m.forEach(A=>{const{field:I}=A;k[I]=!0;let N=R.lookup[I];N==null?(N=_extends$1({},getDefaultColTypeDef(x,A.type),{field:I,hasBeenResized:!1}),R.orderedFields.push(I)):E&&R.orderedFields.push(I),N&&N.type!==A.type&&(N=_extends$1({},getDefaultColTypeDef(x,A.type),{field:I}));let z=N.hasBeenResized;COLUMNS_DIMENSION_PROPERTIES.forEach(j=>{A[j]!==void 0&&(z=!0,A[j]===-1&&(A[j]=1/0))}),R.lookup[I]=_extends$1({},N,A,{hasBeenResized:z})}),E&&!T&&Object.keys(R.lookup).forEach(A=>{k[A]||delete R.lookup[A]});const L=d.current.unstable_applyPipeProcessors("hydrateColumns",R),D=applyInitialState(L,g);return hydrateColumnsWidth(D,(v=(S=(C=d.current).getRootDimensions)==null||(S=S.call(C))==null?void 0:S.viewportInnerSize.width)!=null?v:0)},mergeColumnsState=d=>m=>_extends$1({},m,{columns:d});function getFirstNonSpannedColumnToRender({firstColumnToRender:d,apiRef:m,firstRowToRender:g,lastRowToRender:x,visibleRows:b}){let E=d;for(let v=g;v<x;v+=1)if(b[v]){const C=b[v].id,T=m.current.unstable_getCellColSpanInfo(C,d);T&&T.spannedByColSpan&&(E=T.leftVisibleCellIndex)}return E}function getFirstColumnIndexToRender({firstColumnIndex:d,minColumnIndex:m,columnBuffer:g,firstRowToRender:x,lastRowToRender:b,apiRef:E,visibleRows:v}){const S=Math.max(d-g,m);return getFirstNonSpannedColumnToRender({firstColumnToRender:S,apiRef:E,firstRowToRender:x,lastRowToRender:b,visibleRows:v})}function getTotalHeaderHeight(d,m){const g=gridDensityFactorSelector(d),x=gridColumnGroupsHeaderMaxDepthSelector(d);return Math.floor(m*g)*((x!=null?x:0)+1)}const defaultColumnTypes=getGridDefaultColumnTypes(),columnsStateInitializer=(d,m,g)=>{var x,b,E,v;const S=createColumnsState({apiRef:g,columnTypes:defaultColumnTypes,columnsToUpsert:m.columns,initialState:(x=m.initialState)==null?void 0:x.columns,columnVisibilityModel:(b=(E=m.columnVisibilityModel)!=null?E:(v=m.initialState)==null||(v=v.columns)==null?void 0:v.columnVisibilityModel)!=null?b:{},keepOnlyColumnsToUpsert:!0});return _extends$1({},d,{columns:S})};function useGridColumns(d,m){var g,x;const b=useGridLogger(d,"useGridColumns"),E=defaultColumnTypes,v=reactExports.useRef(m.columns),S=reactExports.useRef(E);d.current.registerControlState({stateId:"visibleColumns",propModel:m.columnVisibilityModel,propOnChange:m.onColumnVisibilityModelChange,stateSelector:gridColumnVisibilityModelSelector,changeEvent:"columnVisibilityModelChange"});const C=reactExports.useCallback(Z=>{b.debug("Updating columns state."),d.current.setState(mergeColumnsState(Z)),d.current.forceUpdate(),d.current.publishEvent("columnsChange",Z.orderedFields)},[b,d]),T=reactExports.useCallback(Z=>gridColumnLookupSelector(d)[Z],[d]),R=reactExports.useCallback(()=>gridColumnDefinitionsSelector(d),[d]),k=reactExports.useCallback(()=>gridVisibleColumnDefinitionsSelector(d),[d]),L=reactExports.useCallback((Z,ee=!0)=>(ee?gridVisibleColumnDefinitionsSelector(d):gridColumnDefinitionsSelector(d)).findIndex(fe=>fe.field===Z),[d]),D=reactExports.useCallback(Z=>{const ee=L(Z);return gridColumnPositionsSelector(d)[ee]},[d,L]),A=reactExports.useCallback(Z=>{gridColumnVisibilityModelSelector(d)!==Z&&(d.current.setState(ce=>_extends$1({},ce,{columns:createColumnsState({apiRef:d,columnTypes:E,columnsToUpsert:[],initialState:void 0,columnVisibilityModel:Z,keepOnlyColumnsToUpsert:!1})})),d.current.forceUpdate())},[d,E]),I=reactExports.useCallback(Z=>{const ee=createColumnsState({apiRef:d,columnTypes:E,columnsToUpsert:Z,initialState:void 0,keepOnlyColumnsToUpsert:!1});C(ee)},[d,C,E]),N=reactExports.useCallback((Z,ee)=>{var ce;const fe=gridColumnVisibilityModelSelector(d),ae=(ce=fe[Z])!=null?ce:!0;if(ee!==ae){const ue=_extends$1({},fe,{[Z]:ee});d.current.setColumnVisibilityModel(ue)}},[d]),z=reactExports.useCallback(Z=>gridColumnFieldsSelector(d).findIndex(ce=>ce===Z),[d]),j=reactExports.useCallback((Z,ee)=>{const ce=gridColumnFieldsSelector(d),fe=z(Z);if(fe===ee)return;b.debug(`Moving column ${Z} to index ${ee}`);const ae=[...ce],ue=ae.splice(fe,1)[0];ae.splice(ee,0,ue),C(_extends$1({},gridColumnsStateSelector(d.current.state),{orderedFields:ae}));const pe={column:d.current.getColumn(Z),targetIndex:d.current.getColumnIndexRelativeToVisibleColumns(Z),oldIndex:fe};d.current.publishEvent("columnIndexChange",pe)},[d,b,C,z]),Y=reactExports.useCallback((Z,ee)=>{var ce,fe;b.debug(`Updating column ${Z} width to ${ee}`);const ae=gridColumnsStateSelector(d.current.state),ue=ae.lookup[Z],pe=_extends$1({},ue,{width:ee,hasBeenResized:!0});C(hydrateColumnsWidth(_extends$1({},ae,{lookup:_extends$1({},ae.lookup,{[Z]:pe})}),(ce=(fe=d.current.getRootDimensions())==null?void 0:fe.viewportInnerSize.width)!=null?ce:0)),d.current.publishEvent("columnWidthChange",{element:d.current.getColumnHeaderElement(Z),colDef:pe,width:ee})},[d,b,C]),B={getColumn:T,getAllColumns:R,getColumnIndex:L,getColumnPosition:D,getVisibleColumns:k,getColumnIndexRelativeToVisibleColumns:z,updateColumns:I,setColumnVisibilityModel:A,setColumnVisibility:N,setColumnWidth:Y},U={setColumnIndex:j};useGridApiMethod(d,B,"public"),useGridApiMethod(d,U,m.signature===GridSignature.DataGrid?"private":"public");const W=reactExports.useCallback((Z,ee)=>{var ce,fe;const ae={},ue=gridColumnVisibilityModelSelector(d);(!ee.exportOnlyDirtyModels||m.columnVisibilityModel!=null||Object.keys((ce=(fe=m.initialState)==null||(fe=fe.columns)==null?void 0:fe.columnVisibilityModel)!=null?ce:{}).length>0||Object.keys(ue).length>0)&&(ae.columnVisibilityModel=ue),ae.orderedFields=gridColumnFieldsSelector(d);const ge=gridColumnDefinitionsSelector(d),ye={};return ge.forEach(Ee=>{if(Ee.hasBeenResized){const ve={};COLUMNS_DIMENSION_PROPERTIES.forEach(Se=>{let $e=Ee[Se];$e===1/0&&($e=-1),ve[Se]=$e}),ye[Ee.field]=ve}}),Object.keys(ye).length>0&&(ae.dimensions=ye),_extends$1({},Z,{columns:ae})},[d,m.columnVisibilityModel,(g=m.initialState)==null?void 0:g.columns]),V=reactExports.useCallback((Z,ee)=>{var ce;const fe=(ce=ee.stateToRestore.columns)==null?void 0:ce.columnVisibilityModel,ae=ee.stateToRestore.columns;if(fe==null&&ae==null)return Z;const ue=createColumnsState({apiRef:d,columnTypes:E,columnsToUpsert:[],initialState:ae,columnVisibilityModel:fe,keepOnlyColumnsToUpsert:!1});return d.current.setState(mergeColumnsState(ue)),ae!=null&&d.current.publishEvent("columnsChange",ue.orderedFields),Z},[d,E]),J=reactExports.useCallback((Z,ee)=>{if(ee===GridPreferencePanelsValue.columns){var ce;const fe=m.slots.columnsPanel;return jsxRuntimeExports.jsx(fe,_extends$1({},(ce=m.slotProps)==null?void 0:ce.columnsPanel))}return Z},[m.slots.columnsPanel,(x=m.slotProps)==null?void 0:x.columnsPanel]),Q=reactExports.useCallback(Z=>m.disableColumnSelector?Z:[...Z,"columnMenuColumnsItem"],[m.disableColumnSelector]);useGridRegisterPipeProcessor(d,"columnMenu",Q),useGridRegisterPipeProcessor(d,"exportState",W),useGridRegisterPipeProcessor(d,"restoreState",V),useGridRegisterPipeProcessor(d,"preferencePanel",J);const X=reactExports.useRef(null);useGridApiEventHandler(d,"viewportInnerSizeChange",Z=>{X.current!==Z.width&&(X.current=Z.width,C(hydrateColumnsWidth(gridColumnsStateSelector(d.current.state),Z.width)))});const ie=reactExports.useCallback(()=>{b.info("Columns pipe processing have changed, regenerating the columns");const Z=createColumnsState({apiRef:d,columnTypes:E,columnsToUpsert:[],initialState:void 0,keepOnlyColumnsToUpsert:!1});C(Z)},[d,b,C,E]);useGridRegisterPipeApplier(d,"hydrateColumns",ie);const oe=reactExports.useRef(!0);reactExports.useEffect(()=>{if(oe.current){oe.current=!1;return}if(b.info(`GridColumns have changed, new length ${m.columns.length}`),v.current===m.columns&&S.current===E)return;const Z=createColumnsState({apiRef:d,columnTypes:E,initialState:void 0,columnsToUpsert:m.columns,keepOnlyColumnsToUpsert:!0});v.current=m.columns,S.current=E,C(Z)},[b,d,C,m.columns,E]),reactExports.useEffect(()=>{m.columnVisibilityModel!==void 0&&d.current.setColumnVisibilityModel(m.columnVisibilityModel)},[d,b,m.columnVisibilityModel])}const COMPACT_DENSITY_FACTOR=.7,COMFORTABLE_DENSITY_FACTOR=1.3,DENSITY_FACTORS={compact:COMPACT_DENSITY_FACTOR,comfortable:COMFORTABLE_DENSITY_FACTOR,standard:1},densityStateInitializer=(d,m)=>_extends$1({},d,{density:{value:m.density,factor:DENSITY_FACTORS[m.density]}}),useGridDensity=(d,m)=>{const g=useGridLogger(d,"useDensity"),x=reactExports.useCallback(E=>{g.debug(`Set grid density to ${E}`),d.current.setState(v=>{const S=gridDensitySelector(v),C={value:E,factor:DENSITY_FACTORS[E]};return isDeepEqual(S,C)?v:_extends$1({},v,{density:C})}),d.current.forceUpdate()},[g,d]);reactExports.useEffect(()=>{d.current.setDensity(m.density)},[d,m.density]),useGridApiMethod(d,{setDensity:x},"public")};function exportAs(d,m="csv",g=document.title||"untitled"){const x=`${g}.${m}`;if("download"in HTMLAnchorElement.prototype){const b=URL.createObjectURL(d),E=document.createElement("a");E.href=b,E.download=x,E.click(),setTimeout(()=>{URL.revokeObjectURL(b)});return}throw new Error("MUI: exportAs not supported")}const getColumnsToExport=({apiRef:d,options:m})=>{const g=gridColumnDefinitionsSelector(d);return m.fields?m.fields.reduce((b,E)=>{const v=g.find(S=>S.field===E);return v&&b.push(v),b},[]):(m.allColumns?g:gridVisibleColumnDefinitionsSelector(d)).filter(b=>!b.disableExport)},defaultGetRowsToExport=({apiRef:d})=>{var m,g;const x=gridFilteredSortedRowIdsSelector(d),b=gridRowTreeSelector(d),E=d.current.getSelectedRows(),v=x.filter(R=>b[R].type!=="footer"),S=gridPinnedRowsSelector(d),C=(S==null||(m=S.top)==null?void 0:m.map(R=>R.id))||[],T=(S==null||(g=S.bottom)==null?void 0:g.map(R=>R.id))||[];return v.unshift(...C),v.push(...T),E.size>0?v.filter(R=>E.has(R)):v},useGridCsvExport=(d,m)=>{const g=useGridLogger(d,"useGridCsvExport"),x=m.unstable_ignoreValueFormatterDuringExport,b=(typeof x=="object"?x==null?void 0:x.csvExport:x)||!1,E=reactExports.useCallback((T={})=>{var R,k,L,D,A;g.debug("Get data as CSV");const I=getColumnsToExport({apiRef:d,options:T}),z=((R=T.getRowsToExport)!=null?R:defaultGetRowsToExport)({apiRef:d});return buildCSV({columns:I,rowIds:z,csvOptions:{delimiter:T.delimiter||",",shouldAppendQuotes:(k=T.shouldAppendQuotes)!=null?k:!0,includeHeaders:(L=T.includeHeaders)!=null?L:!0,includeColumnGroupsHeaders:(D=T.includeColumnGroupsHeaders)!=null?D:!0,escapeFormulas:(A=T.escapeFormulas)!=null?A:!0},ignoreValueFormatter:b,apiRef:d})},[g,d,b]),v=reactExports.useCallback(T=>{g.debug("Export data as CSV");const R=E(T),k=new Blob([T!=null&&T.utf8WithBom?new Uint8Array([239,187,191]):"",R],{type:"text/csv"});exportAs(k,"csv",T==null?void 0:T.fileName)},[g,E]);useGridApiMethod(d,{getDataAsCsv:E,exportDataAsCsv:v},"public");const C=reactExports.useCallback((T,R)=>{var k;return(k=R.csvOptions)!=null&&k.disableToolbarButton?T:[...T,{component:jsxRuntimeExports.jsx(GridCsvExportMenuItem,{options:R.csvOptions}),componentName:"csvExport"}]},[]);useGridRegisterPipeProcessor(d,"exportMenu",C)},getDerivedPaginationModel=(d,m,g)=>{var x;let b=d.paginationModel;const E=d.rowCount,v=(x=g==null?void 0:g.pageSize)!=null?x:b.pageSize,S=getPageCount(E,v);g&&((g==null?void 0:g.page)!==b.page||(g==null?void 0:g.pageSize)!==b.pageSize)&&(b=g);const C=getValidPage(b.page,S);return C!==b.page&&(b=_extends$1({},b,{page:C})),throwIfPageSizeExceedsTheLimit(b.pageSize,m),b},useGridPaginationModel=(d,m)=>{var g;const x=useGridLogger(d,"useGridPaginationModel"),b=useGridSelector(d,gridDensityFactorSelector),E=Math.floor(m.rowHeight*b);d.current.registerControlState({stateId:"paginationModel",propModel:m.paginationModel,propOnChange:m.onPaginationModelChange,stateSelector:gridPaginationModelSelector,changeEvent:"paginationModelChange"});const v=reactExports.useCallback(I=>{const N=gridPaginationModelSelector(d);I!==N.page&&(x.debug(`Setting page to ${I}`),d.current.setPaginationModel({page:I,pageSize:N.pageSize}))},[d,x]),S=reactExports.useCallback(I=>{const N=gridPaginationModelSelector(d);I!==N.pageSize&&(x.debug(`Setting page size to ${I}`),d.current.setPaginationModel({pageSize:I,page:N.page}))},[d,x]),C=reactExports.useCallback(I=>{const N=gridPaginationModelSelector(d);I!==N&&(x.debug("Setting 'paginationModel' to",I),d.current.setState(z=>_extends$1({},z,{pagination:_extends$1({},z.pagination,{paginationModel:getDerivedPaginationModel(z.pagination,m.signature,I)})})))},[d,x,m.signature]);useGridApiMethod(d,{setPage:v,setPageSize:S,setPaginationModel:C},"public");const R=reactExports.useCallback((I,N)=>{var z;const j=gridPaginationModelSelector(d);return!N.exportOnlyDirtyModels||m.paginationModel!=null||((z=m.initialState)==null||(z=z.pagination)==null?void 0:z.paginationModel)!=null||j.page!==0&&j.pageSize!==defaultPageSize(m.autoPageSize)?_extends$1({},I,{pagination:_extends$1({},I.pagination,{paginationModel:j})}):I},[d,m.paginationModel,(g=m.initialState)==null||(g=g.pagination)==null?void 0:g.paginationModel,m.autoPageSize]),k=reactExports.useCallback((I,N)=>{var z,j;const Y=(z=N.stateToRestore.pagination)!=null&&z.paginationModel?_extends$1({},getDefaultGridPaginationModel(m.autoPageSize),(j=N.stateToRestore.pagination)==null?void 0:j.paginationModel):gridPaginationModelSelector(d);return d.current.setState(B=>_extends$1({},B,{pagination:_extends$1({},B.pagination,{paginationModel:getDerivedPaginationModel(B.pagination,m.signature,Y)})})),I},[d,m.autoPageSize,m.signature]);useGridRegisterPipeProcessor(d,"exportState",R),useGridRegisterPipeProcessor(d,"restoreState",k);const L=()=>{var I;const N=gridPaginationModelSelector(d);(I=d.current.virtualScrollerRef)!=null&&I.current&&d.current.scrollToIndexes({rowIndex:N.page*N.pageSize})},D=reactExports.useCallback(()=>{if(!m.autoPageSize)return;const I=d.current.getRootDimensions()||{viewportInnerSize:{height:0}},N=calculatePinnedRowsHeight(d),z=Math.floor((I.viewportInnerSize.height-N.top-N.bottom)/E);d.current.setPageSize(z)},[d,m.autoPageSize,E]),A=reactExports.useCallback(I=>{if(I==null)return;const N=gridPaginationModelSelector(d),z=gridPageCountSelector(d);N.page>z-1&&d.current.setPage(Math.max(0,z-1))},[d]);useGridApiEventHandler(d,"viewportInnerSizeChange",D),useGridApiEventHandler(d,"paginationModelChange",L),useGridApiEventHandler(d,"rowCountChange",A),reactExports.useEffect(()=>{d.current.setState(I=>_extends$1({},I,{pagination:_extends$1({},I.pagination,{paginationModel:getDerivedPaginationModel(I.pagination,m.signature,m.paginationModel)})}))},[d,m.paginationModel,m.paginationMode,m.signature]),reactExports.useEffect(D,[D])};function raf(){return new Promise(d=>{requestAnimationFrame(()=>{d()})})}function buildPrintWindow(d){const m=document.createElement("iframe");return m.style.position="absolute",m.style.width="0px",m.style.height="0px",m.title=d||document.title,m}const useGridPrintExport=(d,m)=>{const g=useGridLogger(d,"useGridPrintExport"),x=reactExports.useRef(null),b=reactExports.useRef(null),E=reactExports.useRef({}),v=reactExports.useRef([]);reactExports.useEffect(()=>{x.current=ownerDocument(d.current.rootElementRef.current)},[d]);const S=reactExports.useCallback((A,I,N)=>new Promise(z=>{const j=getColumnsToExport({apiRef:d,options:{fields:A,allColumns:I}}).map(U=>U.field),Y=gridColumnDefinitionsSelector(d),B={};Y.forEach(U=>{B[U.field]=j.includes(U.field)}),N&&(B[GRID_CHECKBOX_SELECTION_COL_DEF.field]=!0),d.current.setColumnVisibilityModel(B),z()}),[d]),C=reactExports.useCallback(A=>{const N=A({apiRef:d}).map(z=>d.current.getRow(z));d.current.setRows(N)},[d]),T=reactExports.useCallback((A,I)=>{var N,z;const j=_extends$1({copyStyles:!0,hideToolbar:!1,hideFooter:!1,includeCheckboxes:!1},I),Y=A.contentDocument;if(!Y)return;const B=gridRowsMetaSelector(d.current.state),U=d.current.rootElementRef.current,W=U.cloneNode(!0),V=W.querySelector(`.${gridClasses.main}`);V.style.overflow="visible",W.style.contain="size";const Q=W.querySelector(`.${gridClasses.columnHeaders}`).querySelector(`.${gridClasses.columnHeadersInner}`);Q.style.width="100%";let X=((N=U.querySelector(`.${gridClasses.toolbarContainer}`))==null?void 0:N.offsetHeight)||0,re=((z=U.querySelector(`.${gridClasses.footerContainer}`))==null?void 0:z.offsetHeight)||0;if(j.hideToolbar){var ie;(ie=W.querySelector(`.${gridClasses.toolbarContainer}`))==null||ie.remove(),X=0}if(j.hideFooter){var oe;(oe=W.querySelector(`.${gridClasses.footerContainer}`))==null||oe.remove(),re=0}const Z=B.currentPageTotalHeight+getTotalHeaderHeight(d,m.columnHeaderHeight)+X+re;if(W.style.height=`${Z}px`,W.style.boxSizing="content-box",I!=null&&I.getRowsToExport){const ae=W.querySelector(`.${gridClasses.footerContainer}`);ae.style.position="absolute",ae.style.width="100%",ae.style.top=`${Z-re}px`}const ee=document.createElement("div");ee.appendChild(W),Y.body.innerHTML=ee.innerHTML;const ce=typeof j.pageStyle=="function"?j.pageStyle():j.pageStyle;if(typeof ce=="string"){const ae=Y.createElement("style");ae.appendChild(Y.createTextNode(ce)),Y.head.appendChild(ae)}j.bodyClassName&&Y.body.classList.add(...j.bodyClassName.split(" "));const fe=[];if(j.copyStyles){const ae=U.getRootNode(),pe=(ae.constructor.name==="ShadowRoot"?ae:x.current).querySelectorAll("style, link[rel='stylesheet']");for(let ge=0;ge<pe.length;ge+=1){const ye=pe[ge];if(ye.tagName==="STYLE"){const Ee=Y.createElement(ye.tagName),ve=ye.sheet;if(ve){let Se="";for(let $e=0;$e<ve.cssRules.length;$e+=1)typeof ve.cssRules[$e].cssText=="string"&&(Se+=`${ve.cssRules[$e].cssText}\r
605
- `);Ee.appendChild(Y.createTextNode(Se)),Y.head.appendChild(Ee)}}else if(ye.getAttribute("href")){const Ee=Y.createElement(ye.tagName);for(let ve=0;ve<ye.attributes.length;ve+=1){const Se=ye.attributes[ve];Se&&Ee.setAttribute(Se.nodeName,Se.nodeValue||"")}fe.push(new Promise(ve=>{Ee.addEventListener("load",()=>ve())})),Y.head.appendChild(Ee)}}}Promise.all(fe).then(()=>{A.contentWindow.print()})},[d,x,m.columnHeaderHeight]),R=reactExports.useCallback(A=>{var I;x.current.body.removeChild(A),d.current.restoreState(b.current||{}),(I=b.current)!=null&&(I=I.columns)!=null&&I.columnVisibilityModel||d.current.setColumnVisibilityModel(E.current),d.current.unstable_setVirtualization(!0),d.current.setRows(v.current),b.current=null,E.current={},v.current=[]},[d]),L={exportDataAsPrint:reactExports.useCallback(A=>vt(void 0,null,function*(){if(g.debug("Export data as Print"),!d.current.rootElementRef.current)throw new Error("MUI: No grid root element available.");b.current=d.current.exportState(),E.current=gridColumnVisibilityModelSelector(d);const I=gridRowsLookupSelector(d);if(v.current=gridDataRowIdsSelector(d).map(z=>I[z]),m.pagination){const j={page:0,pageSize:gridExpandedRowCountSelector(d)};d.current.setState(Y=>_extends$1({},Y,{pagination:_extends$1({},Y.pagination,{paginationModel:getDerivedPaginationModel(Y.pagination,"DataGridPro",j)})})),d.current.forceUpdate()}yield S(A==null?void 0:A.fields,A==null?void 0:A.allColumns,A==null?void 0:A.includeCheckboxes),A!=null&&A.getRowsToExport&&C(A.getRowsToExport),d.current.unstable_setVirtualization(!1),yield raf();const N=buildPrintWindow(A==null?void 0:A.fileName);N.onload=()=>{T(N,A),N.contentWindow.matchMedia("print").addEventListener("change",j=>{j.matches===!1&&R(N)})},x.current.body.appendChild(N)}),[m,g,d,T,R,S,C])};useGridApiMethod(d,L,"public");const D=reactExports.useCallback((A,I)=>{var N;return(N=I.printOptions)!=null&&N.disableToolbarButton?A:[...A,{component:jsxRuntimeExports.jsx(GridPrintExportMenuItem,{options:I.printOptions}),componentName:"printExport"}]},[]);useGridRegisterPipeProcessor(d,"exportMenu",D)},filterStateInitializer=(d,m,g)=>{var x,b,E;const v=(x=(b=m.filterModel)!=null?b:(E=m.initialState)==null||(E=E.filter)==null?void 0:E.filterModel)!=null?x:getDefaultGridFilterModel();return _extends$1({},d,{filter:{filterModel:sanitizeFilterModel(v,m.disableMultipleColumnsFiltering,g),filteredRowsLookup:{},filteredDescendantCountLookup:{}},visibleRowsLookup:{}})},getVisibleRowsLookup=d=>d.filteredRowsLookup;function getVisibleRowsLookupState(d,m){return d.current.applyStrategyProcessor("visibleRowsLookupCreation",{tree:m.rows.tree,filteredRowsLookup:m.filter.filteredRowsLookup})}function createMemoizedValues(){return defaultMemoize(Object.values)}const useGridFilter=(d,m)=>{var g,x;const b=useGridLogger(d,"useGridFilter");d.current.registerControlState({stateId:"filter",propModel:m.filterModel,propOnChange:m.onFilterModelChange,stateSelector:gridFilterModelSelector,changeEvent:"filterModelChange"});const E=reactExports.useCallback(()=>{d.current.setState(X=>{const re=gridFilterModelSelector(X,d.current.instanceId),ie=m.filterMode==="client"?buildAggregatedFilterApplier(re,d,m.disableEval):null,oe=d.current.applyStrategyProcessor("filtering",{isRowMatchingFilters:ie,filterModel:re!=null?re:getDefaultGridFilterModel()}),Z=_extends$1({},X,{filter:_extends$1({},X.filter,oe)}),ee=getVisibleRowsLookupState(d,Z);return _extends$1({},Z,{visibleRowsLookup:ee})}),d.current.publishEvent("filteredRowsSet")},[d,m.filterMode,m.disableEval]),v=reactExports.useCallback((X,re)=>re==null||re.filterable===!1||m.disableColumnFilter?X:[...X,"columnMenuFilterItem"],[m.disableColumnFilter]),S=reactExports.useCallback(()=>{E(),d.current.forceUpdate()},[d,E]),C=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d),ie=[...re.items],oe=ie.findIndex(Z=>Z.id===X.id);oe===-1?ie.push(X):ie[oe]=X,d.current.setFilterModel(_extends$1({},re,{items:ie}),"upsertFilterItem")},[d]),T=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d),ie=[...re.items];X.forEach(oe=>{const Z=X.findIndex(ee=>ee.id===oe.id);Z===-1?ie.push(oe):ie[Z]=oe}),d.current.setFilterModel(_extends$1({},re,{items:X}),"upsertFilterItems")},[d]),R=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d),ie=re.items.filter(oe=>oe.id!==X.id);ie.length!==re.items.length&&d.current.setFilterModel(_extends$1({},re,{items:ie}),"deleteFilterItem")},[d]),k=reactExports.useCallback((X,re,ie)=>{if(b.debug("Displaying filter panel"),X){const oe=gridFilterModelSelector(d),Z=oe.items.filter(ae=>{var ue;if(ae.value!==void 0)return!(Array.isArray(ae.value)&&ae.value.length===0);const ge=(ue=d.current.getColumn(ae.field).filterOperators)==null?void 0:ue.find(Ee=>Ee.value===ae.operator);return!(typeof(ge==null?void 0:ge.requiresFilterValue)=="undefined"?!0:ge==null?void 0:ge.requiresFilterValue)});let ee;const ce=Z.find(ae=>ae.field===X),fe=d.current.getColumn(X);ce?ee=Z:m.disableMultipleColumnsFiltering?ee=[cleanFilterItem({field:X,operator:fe.filterOperators[0].value},d)]:ee=[...Z,cleanFilterItem({field:X,operator:fe.filterOperators[0].value},d)],d.current.setFilterModel(_extends$1({},oe,{items:ee}))}d.current.showPreferences(GridPreferencePanelsValue.filters,re,ie)},[d,b,m.disableMultipleColumnsFiltering]),L=reactExports.useCallback(()=>{b.debug("Hiding filter panel"),d.current.hidePreferences()},[d,b]),D=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d);re.logicOperator!==X&&d.current.setFilterModel(_extends$1({},re,{logicOperator:X}),"changeLogicOperator")},[d]),A=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d);isDeepEqual(re.quickFilterValues,X)||d.current.setFilterModel(_extends$1({},re,{quickFilterValues:[...X]}))},[d]),I=reactExports.useCallback((X,re)=>{gridFilterModelSelector(d)!==X&&(b.debug("Setting filter model"),d.current.updateControlState("filter",mergeStateWithFilterModel(X,m.disableMultipleColumnsFiltering,d),re),d.current.unstable_applyFilters())},[d,b,m.disableMultipleColumnsFiltering]),N={setFilterLogicOperator:D,unstable_applyFilters:S,deleteFilterItem:R,upsertFilterItem:C,upsertFilterItems:T,setFilterModel:I,showFilterPanel:k,hideFilterPanel:L,setQuickFilterValues:A,ignoreDiacritics:m.ignoreDiacritics};useGridApiMethod(d,N,"public");const z=reactExports.useCallback((X,re)=>{var ie;const oe=gridFilterModelSelector(d);return!re.exportOnlyDirtyModels||m.filterModel!=null||((ie=m.initialState)==null||(ie=ie.filter)==null?void 0:ie.filterModel)!=null||!isDeepEqual(oe,getDefaultGridFilterModel())?_extends$1({},X,{filter:{filterModel:oe}}):X},[d,m.filterModel,(g=m.initialState)==null||(g=g.filter)==null?void 0:g.filterModel]),j=reactExports.useCallback((X,re)=>{var ie;const oe=(ie=re.stateToRestore.filter)==null?void 0:ie.filterModel;return oe==null?X:(d.current.updateControlState("filter",mergeStateWithFilterModel(oe,m.disableMultipleColumnsFiltering,d),"restoreState"),_extends$1({},X,{callbacks:[...X.callbacks,d.current.unstable_applyFilters]}))},[d,m.disableMultipleColumnsFiltering]),Y=reactExports.useCallback((X,re)=>{if(re===GridPreferencePanelsValue.filters){var ie;const oe=m.slots.filterPanel;return jsxRuntimeExports.jsx(oe,_extends$1({},(ie=m.slotProps)==null?void 0:ie.filterPanel))}return X},[m.slots.filterPanel,(x=m.slotProps)==null?void 0:x.filterPanel]),{getRowId:B}=m,U=useLazyRef(createMemoizedValues),W=reactExports.useCallback(X=>{if(m.filterMode!=="client"||!X.isRowMatchingFilters)return{filteredRowsLookup:{},filteredDescendantCountLookup:{}};const re=gridRowsLookupSelector(d),ie={},{isRowMatchingFilters:oe}=X,Z={},ee={passingFilterItems:null,passingQuickFilterValues:null},ce=U.current(d.current.state.rows.dataRowIdToModelLookup);for(let ue=0;ue<ce.length;ue+=1){const pe=ce[ue],ge=B?B(pe):pe.id;oe(pe,void 0,ee);const ye=passFilterLogic([ee.passingFilterItems],[ee.passingQuickFilterValues],X.filterModel,d,Z);ie[ge]=ye}const fe="auto-generated-group-footer-root";return re[fe]&&(ie[fe]=!0),{filteredRowsLookup:ie,filteredDescendantCountLookup:{}}},[d,m.filterMode,B,U]);useGridRegisterPipeProcessor(d,"columnMenu",v),useGridRegisterPipeProcessor(d,"exportState",z),useGridRegisterPipeProcessor(d,"restoreState",j),useGridRegisterPipeProcessor(d,"preferencePanel",Y),useGridRegisterStrategyProcessor(d,GRID_DEFAULT_STRATEGY,"filtering",W),useGridRegisterStrategyProcessor(d,GRID_DEFAULT_STRATEGY,"visibleRowsLookupCreation",getVisibleRowsLookup);const V=reactExports.useCallback(()=>{b.debug("onColUpdated - GridColumns changed, applying filters");const X=gridFilterModelSelector(d),re=gridFilterableColumnLookupSelector(d),ie=X.items.filter(oe=>oe.field&&re[oe.field]);ie.length<X.items.length&&d.current.setFilterModel(_extends$1({},X,{items:ie}))},[d,b]),J=reactExports.useCallback(X=>{X==="filtering"&&d.current.unstable_applyFilters()},[d]),Q=reactExports.useCallback(()=>{d.current.setState(X=>_extends$1({},X,{visibleRowsLookup:getVisibleRowsLookupState(d,X)})),d.current.forceUpdate()},[d]);useGridApiEventHandler(d,"rowsSet",E),useGridApiEventHandler(d,"columnsChange",V),useGridApiEventHandler(d,"activeStrategyProcessorChange",J),useGridApiEventHandler(d,"rowExpansionChange",Q),useGridApiEventHandler(d,"columnVisibilityModelChange",()=>{const X=gridFilterModelSelector(d);X.quickFilterValues&&X.quickFilterExcludeHiddenColumns&&d.current.unstable_applyFilters()}),useFirstRender(()=>{d.current.unstable_applyFilters()}),useEnhancedEffect(()=>{m.filterModel!==void 0&&d.current.setFilterModel(m.filterModel)},[d,b,m.filterModel])},focusStateInitializer=d=>_extends$1({},d,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null},tabIndex:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}}),useGridFocus=(d,m)=>{const g=useGridLogger(d,"useGridFocus"),x=reactExports.useRef(null),b=reactExports.useCallback((V,J)=>{V&&d.current.getRow(V.id)&&d.current.publishEvent("cellFocusOut",d.current.getCellParams(V.id,V.field),J)},[d]),E=reactExports.useCallback((V,J)=>{const Q=gridFocusCellSelector(d);(Q==null?void 0:Q.id)===V&&(Q==null?void 0:Q.field)===J||(d.current.setState(X=>(g.debug(`Focusing on cell with id=${V} and field=${J}`),_extends$1({},X,{tabIndex:{cell:{id:V,field:J},columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null},focus:{cell:{id:V,field:J},columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}}))),d.current.forceUpdate(),d.current.getRow(V)&&(Q&&b(Q,{}),d.current.publishEvent("cellFocusIn",d.current.getCellParams(V,J))))},[d,g,b]),v=reactExports.useCallback((V,J={})=>{const Q=gridFocusCellSelector(d);b(Q,J),d.current.setState(X=>(g.debug(`Focusing on column header with colIndex=${V}`),_extends$1({},X,{tabIndex:{columnHeader:{field:V},columnHeaderFilter:null,cell:null,columnGroupHeader:null},focus:{columnHeader:{field:V},columnHeaderFilter:null,cell:null,columnGroupHeader:null}}))),d.current.forceUpdate()},[d,g,b]),S=reactExports.useCallback((V,J={})=>{const Q=gridFocusCellSelector(d);b(Q,J),d.current.setState(X=>(g.debug(`Focusing on column header filter with colIndex=${V}`),_extends$1({},X,{tabIndex:{columnHeader:null,columnHeaderFilter:{field:V},cell:null,columnGroupHeader:null},focus:{columnHeader:null,columnHeaderFilter:{field:V},cell:null,columnGroupHeader:null}}))),d.current.forceUpdate()},[d,g,b]),C=reactExports.useCallback((V,J,Q={})=>{const X=gridFocusCellSelector(d);X&&d.current.publishEvent("cellFocusOut",d.current.getCellParams(X.id,X.field),Q),d.current.setState(re=>_extends$1({},re,{tabIndex:{columnGroupHeader:{field:V,depth:J},columnHeader:null,columnHeaderFilter:null,cell:null},focus:{columnGroupHeader:{field:V,depth:J},columnHeader:null,columnHeaderFilter:null,cell:null}})),d.current.forceUpdate()},[d]),T=reactExports.useCallback(()=>unstable_gridFocusColumnGroupHeaderSelector(d),[d]),R=reactExports.useCallback((V,J,Q)=>{let X=d.current.getColumnIndex(J);const re=gridVisibleColumnDefinitionsSelector(d),ie=getVisibleRows(d,{pagination:m.pagination,paginationMode:m.paginationMode}),oe=gridPinnedRowsSelector(d),Z=[].concat(oe.top||[],ie.rows,oe.bottom||[]);let ee=Z.findIndex(ue=>ue.id===V);Q==="right"?X+=1:Q==="left"?X-=1:ee+=1,X>=re.length?(ee+=1,ee<Z.length&&(X=0)):X<0&&(ee-=1,ee>=0&&(X=re.length-1)),ee=clamp(ee,0,Z.length-1);const ce=Z[ee];if(!ce)return;const fe=d.current.unstable_getCellColSpanInfo(ce.id,X);fe&&fe.spannedByColSpan&&(Q==="left"||Q==="below"?X=fe.leftVisibleCellIndex:Q==="right"&&(X=fe.rightVisibleCellIndex)),X=clamp(X,0,re.length-1);const ae=re[X];d.current.setCellFocus(ce.id,ae.field)},[d,m.pagination,m.paginationMode]),k=reactExports.useCallback(({id:V,field:J})=>{d.current.setCellFocus(V,J)},[d]),L=reactExports.useCallback((V,J)=>{J.key==="Enter"||J.key==="Tab"||J.key==="Shift"||isNavigationKey(J.key)||d.current.setCellFocus(V.id,V.field)},[d]),D=reactExports.useCallback(({field:V},J)=>{J.target===J.currentTarget&&d.current.setColumnHeaderFocus(V,J)},[d]),A=reactExports.useCallback(({fields:V,depth:J},Q)=>{if(Q.target!==Q.currentTarget)return;const X=unstable_gridFocusColumnGroupHeaderSelector(d);X!==null&&X.depth===J&&V.includes(X.field)||d.current.setColumnGroupHeaderFocus(V[0],J,Q)},[d]),I=reactExports.useCallback((V,J)=>{var Q;(Q=J.relatedTarget)!=null&&Q.className.includes(gridClasses.columnHeader)||(g.debug("Clearing focus"),d.current.setState(X=>_extends$1({},X,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}})))},[g,d]),N=reactExports.useCallback(V=>{x.current=V},[]),z=reactExports.useCallback(V=>{const J=x.current;x.current=null;const Q=gridFocusCellSelector(d);if(!d.current.unstable_applyPipeProcessors("canUpdateFocus",!0,{event:V,cell:J}))return;if(!Q){J&&d.current.setCellFocus(J.id,J.field);return}if((J==null?void 0:J.id)===Q.id&&(J==null?void 0:J.field)===Q.field)return;const re=d.current.getCellElement(Q.id,Q.field);re!=null&&re.contains(V.target)||(J?d.current.setCellFocus(J.id,J.field):(d.current.setState(ie=>_extends$1({},ie,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}})),d.current.forceUpdate(),b(Q,V)))},[d,b]),j=reactExports.useCallback(V=>{if(V.cellMode==="view")return;const J=gridFocusCellSelector(d);((J==null?void 0:J.id)!==V.id||(J==null?void 0:J.field)!==V.field)&&d.current.setCellFocus(V.id,V.field)},[d]),Y=reactExports.useCallback(()=>{const V=gridFocusCellSelector(d);V&&!d.current.getRow(V.id)&&d.current.setState(J=>_extends$1({},J,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}}))},[d]),B=useEventCallback(()=>{const V=gridFocusCellSelector(d);if(!V)return;const J=getVisibleRows(d,{pagination:m.pagination,paginationMode:m.paginationMode});if(J.rows.find(re=>re.id===V.id))return;const X=gridVisibleColumnDefinitionsSelector(d);d.current.setState(re=>_extends$1({},re,{tabIndex:{cell:{id:J.rows[0].id,field:X[0].field},columnGroupHeader:null,columnHeader:null,columnHeaderFilter:null}}))}),U={setCellFocus:E,setColumnHeaderFocus:v,setColumnHeaderFilterFocus:S},W={moveFocusToRelativeCell:R,setColumnGroupHeaderFocus:C,getColumnGroupHeaderFocus:T};useGridApiMethod(d,U,"public"),useGridApiMethod(d,W,"private"),reactExports.useEffect(()=>{const V=ownerDocument(d.current.rootElementRef.current);return V.addEventListener("mouseup",z),()=>{V.removeEventListener("mouseup",z)}},[d,z]),useGridApiEventHandler(d,"columnHeaderBlur",I),useGridApiEventHandler(d,"cellDoubleClick",k),useGridApiEventHandler(d,"cellMouseDown",N),useGridApiEventHandler(d,"cellKeyDown",L),useGridApiEventHandler(d,"cellModeChange",j),useGridApiEventHandler(d,"columnHeaderFocus",D),useGridApiEventHandler(d,"columnGroupHeaderFocus",A),useGridApiEventHandler(d,"rowsSet",Y),useGridApiEventHandler(d,"paginationModelChange",B)};function enrichPageRowsWithPinnedRows(d,m){const g=gridPinnedRowsSelector(d)||{};return[...g.top||[],...m,...g.bottom||[]]}const getLeftColumnIndex=({currentColIndex:d,firstColIndex:m,lastColIndex:g,direction:x})=>{if(x==="rtl"){if(d<g)return d+1}else if(x==="ltr"&&d>m)return d-1;return null},getRightColumnIndex=({currentColIndex:d,firstColIndex:m,lastColIndex:g,direction:x})=>{if(x==="rtl"){if(d>m)return d-1}else if(x==="ltr"&&d<g)return d+1;return null},useGridKeyboardNavigation=(d,m)=>{const g=useGridLogger(d,"useGridKeyboardNavigation"),x=useGridVisibleRows(d,m).rows,b=useTheme$1(),E=reactExports.useMemo(()=>enrichPageRowsWithPinnedRows(d,x),[d,x]),v=m.signature!=="DataGrid"&&m.unstable_headerFilters,S=reactExports.useCallback((z,j,Y="left")=>{const B=gridExpandedSortedRowEntriesSelector(d),U=d.current.unstable_getCellColSpanInfo(j,z);U&&U.spannedByColSpan&&(Y==="left"?z=U.leftVisibleCellIndex:Y==="right"&&(z=U.rightVisibleCellIndex));const W=B.findIndex(J=>J.id===j);g.debug(`Navigating to cell row ${W}, col ${z}`),d.current.scrollToIndexes({colIndex:z,rowIndex:W});const V=d.current.getVisibleColumns()[z].field;d.current.setCellFocus(j,V)},[d,g]),C=reactExports.useCallback((z,j)=>{g.debug(`Navigating to header col ${z}`),d.current.scrollToIndexes({colIndex:z});const Y=d.current.getVisibleColumns()[z].field;d.current.setColumnHeaderFocus(Y,j)},[d,g]),T=reactExports.useCallback((z,j)=>{g.debug(`Navigating to header filter col ${z}`),d.current.scrollToIndexes({colIndex:z});const Y=d.current.getVisibleColumns()[z].field;d.current.setColumnHeaderFilterFocus(Y,j)},[d,g]),R=reactExports.useCallback((z,j,Y)=>{g.debug(`Navigating to header col ${z}`),d.current.scrollToIndexes({colIndex:z});const{field:B}=d.current.getVisibleColumns()[z];d.current.setColumnGroupHeaderFocus(B,j,Y)},[d,g]),k=reactExports.useCallback(z=>{var j;return(j=E[z])==null?void 0:j.id},[E]),L=reactExports.useCallback((z,j)=>{const Y=j.currentTarget.querySelector(`.${gridClasses.columnHeaderTitleContainerContent}`);if(!!Y&&Y.contains(j.target)&&z.field!==GRID_CHECKBOX_SELECTION_COL_DEF.field||!d.current.getRootDimensions())return;const W=d.current.getViewportPageSize(),V=z.field?d.current.getColumnIndex(z.field):0,J=E.length>0?0:null,Q=E.length-1,X=0,re=gridVisibleColumnDefinitionsSelector(d).length-1,ie=gridColumnGroupsHeaderMaxDepthSelector(d);let oe=!0;switch(j.key){case"ArrowDown":{J!==null&&(v?T(V,j):S(V,k(J)));break}case"ArrowRight":{const Z=getRightColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});Z!==null&&C(Z,j);break}case"ArrowLeft":{const Z=getLeftColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});Z!==null&&C(Z,j);break}case"ArrowUp":{ie>0&&R(V,ie-1,j);break}case"PageDown":{J!==null&&Q!==null&&S(V,k(Math.min(J+W,Q)));break}case"Home":{C(X,j);break}case"End":{C(re,j);break}case"Enter":{(j.ctrlKey||j.metaKey)&&d.current.toggleColumnMenu(z.field);break}case" ":break;default:oe=!1}oe&&j.preventDefault()},[d,E.length,v,T,S,k,b.direction,C,R]),D=reactExports.useCallback((z,j)=>{if(!d.current.getRootDimensions())return;const B=unstable_gridHeaderFilteringEditFieldSelector(d)===z.field,U=unstable_gridHeaderFilteringMenuSelector(d)===z.field;if(B||U||!isNavigationKey(j.key))return;const W=d.current.getViewportPageSize(),V=z.field?d.current.getColumnIndex(z.field):0,J=0,Q=E.length-1,X=0,re=gridVisibleColumnDefinitionsSelector(d).length-1;let ie=!0;switch(j.key){case"ArrowDown":{const oe=k(J);oe!=null&&S(V,oe);break}case"ArrowRight":{const oe=getRightColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});oe!==null&&T(oe,j);break}case"ArrowLeft":{const oe=getLeftColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});oe!==null?T(oe,j):d.current.setColumnHeaderFilterFocus(z.field,j);break}case"ArrowUp":{C(V,j);break}case"PageDown":{Q!==null&&S(V,k(Math.min(J+W,Q)));break}case"Home":{T(X,j);break}case"End":{T(re,j);break}case" ":break;default:ie=!1}ie&&j.preventDefault()},[d,E.length,T,b.direction,C,S,k]),A=reactExports.useCallback((z,j)=>{if(!d.current.getRootDimensions())return;const B=unstable_gridFocusColumnGroupHeaderSelector(d);if(B===null)return;const{field:U,depth:W}=B,{fields:V,depth:J,maxDepth:Q}=z,X=d.current.getViewportPageSize(),re=d.current.getColumnIndex(U),ie=U?d.current.getColumnIndex(U):0,oe=0,Z=E.length-1,ee=0,ce=gridVisibleColumnDefinitionsSelector(d).length-1;let fe=!0;switch(j.key){case"ArrowDown":{J===Q-1?C(re,j):R(re,W+1,j);break}case"ArrowUp":{J>0&&R(re,W-1,j);break}case"ArrowRight":{const ae=V.length-V.indexOf(U)-1;re+ae+1<=ce&&R(re+ae+1,W,j);break}case"ArrowLeft":{const ae=V.indexOf(U);re-ae-1>=ee&&R(re-ae-1,W,j);break}case"PageDown":{Z!==null&&S(ie,k(Math.min(oe+X,Z)));break}case"Home":{R(ee,W,j);break}case"End":{R(ce,W,j);break}case" ":break;default:fe=!1}fe&&j.preventDefault()},[d,E.length,C,R,S,k]),I=reactExports.useCallback((z,j)=>{if(isEventTargetInPortal(j))return;const Y=d.current.getCellParams(z.id,z.field);if(Y.cellMode===GridCellModes.Edit||!isNavigationKey(j.key)||!d.current.unstable_applyPipeProcessors("canUpdateFocus",!0,{event:j,cell:Y}))return;const U=d.current.getRootDimensions();if(E.length===0||!U)return;const W=b.direction,V=d.current.getViewportPageSize(),J=z.field?d.current.getColumnIndex(z.field):0,Q=E.findIndex(ee=>ee.id===z.id),X=0,re=E.length-1,ie=0,oe=gridVisibleColumnDefinitionsSelector(d).length-1;let Z=!0;switch(j.key){case"ArrowDown":{Q<re&&S(J,k(Q+1));break}case"ArrowUp":{Q>X?S(J,k(Q-1)):v?T(J,j):C(J,j);break}case"ArrowRight":{const ee=getRightColumnIndex({currentColIndex:J,firstColIndex:ie,lastColIndex:oe,direction:W});ee!==null&&S(ee,k(Q),W==="rtl"?"left":"right");break}case"ArrowLeft":{const ee=getLeftColumnIndex({currentColIndex:J,firstColIndex:ie,lastColIndex:oe,direction:W});ee!==null&&S(ee,k(Q),W==="rtl"?"right":"left");break}case"Tab":{j.shiftKey&&J>ie?S(J-1,k(Q),"left"):!j.shiftKey&&J<oe&&S(J+1,k(Q),"right");break}case" ":{if(z.field===GRID_DETAIL_PANEL_TOGGLE_FIELD)break;const ce=z.colDef;if(ce&&ce.type==="treeDataGroup")break;!j.shiftKey&&Q<re&&S(J,k(Math.min(Q+V,re)));break}case"PageDown":{Q<re&&S(J,k(Math.min(Q+V,re)));break}case"PageUp":{const ee=Math.max(Q-V,X);ee!==Q&&ee>=X?S(J,k(ee)):C(J,j);break}case"Home":{j.ctrlKey||j.metaKey||j.shiftKey?S(ie,k(X)):S(ie,k(Q));break}case"End":{j.ctrlKey||j.metaKey||j.shiftKey?S(oe,k(re)):S(oe,k(Q));break}default:Z=!1}Z&&j.preventDefault()},[d,E,b.direction,S,k,v,T,C]),N=reactExports.useCallback((z,{event:j})=>j.key===" "?!1:z,[]);useGridRegisterPipeProcessor(d,"canStartEditing",N),useGridApiEventHandler(d,"columnHeaderKeyDown",L),useGridApiEventHandler(d,"headerFilterKeyDown",D),useGridApiEventHandler(d,"columnGroupHeaderKeyDown",A),useGridApiEventHandler(d,"cellKeyDown",I)},useGridRowCount=(d,m)=>{var g;const x=useGridLogger(d,"useGridRowCount"),b=useGridSelector(d,gridFilteredTopLevelRowCountSelector),E=useGridSelector(d,gridPaginationRowCountSelector);d.current.registerControlState({stateId:"paginationRowCount",propModel:m.rowCount,propOnChange:m.onRowCountChange,stateSelector:gridPaginationRowCountSelector,changeEvent:"rowCountChange"});const S={setRowCount:reactExports.useCallback(R=>{E!==R&&(x.debug("Setting 'rowCount' to",R),d.current.setState(k=>_extends$1({},k,{pagination:_extends$1({},k.pagination,{rowCount:R})})))},[d,x,E])};useGridApiMethod(d,S,"public");const C=reactExports.useCallback((R,k)=>{var L;const D=gridPaginationRowCountSelector(d);return!k.exportOnlyDirtyModels||m.rowCount!=null||((L=m.initialState)==null||(L=L.pagination)==null?void 0:L.rowCount)!=null?_extends$1({},R,{pagination:_extends$1({},R.pagination,{rowCount:D})}):R},[d,m.rowCount,(g=m.initialState)==null||(g=g.pagination)==null?void 0:g.rowCount]),T=reactExports.useCallback((R,k)=>{var L;const D=(L=k.stateToRestore.pagination)!=null&&L.rowCount?k.stateToRestore.pagination.rowCount:gridPaginationRowCountSelector(d);return d.current.setState(A=>_extends$1({},A,{pagination:_extends$1({},A.pagination,{rowCount:D})})),R},[d]);useGridRegisterPipeProcessor(d,"exportState",C),useGridRegisterPipeProcessor(d,"restoreState",T),reactExports.useEffect(()=>{},[m.rowCount,m.paginationMode]),reactExports.useEffect(()=>{m.paginationMode==="client"?d.current.setRowCount(b):m.rowCount!=null&&d.current.setRowCount(m.rowCount)},[d,b,m.paginationMode,m.rowCount])},paginationStateInitializer=(d,m)=>{var g,x,b,E,v;const S=_extends$1({},getDefaultGridPaginationModel(m.autoPageSize),(g=m.paginationModel)!=null?g:(x=m.initialState)==null||(x=x.pagination)==null?void 0:x.paginationModel);throwIfPageSizeExceedsTheLimit(S.pageSize,m.signature);const C=(b=(E=m.rowCount)!=null?E:(v=m.initialState)==null||(v=v.pagination)==null?void 0:v.rowCount)!=null?b:0;return _extends$1({},d,{pagination:{paginationModel:S,rowCount:C}})},useGridPagination=(d,m)=>{useGridPaginationModel(d,m),useGridRowCount(d,m)},preferencePanelStateInitializer=(d,m)=>{var g,x;return _extends$1({},d,{preferencePanel:(g=(x=m.initialState)==null?void 0:x.preferencePanel)!=null?g:{open:!1}})},useGridPreferencesPanel=(d,m)=>{var g;const x=useGridLogger(d,"useGridPreferencesPanel"),b=reactExports.useRef(),E=reactExports.useRef(),v=reactExports.useCallback(()=>{x.debug("Hiding Preferences Panel");const L=gridPreferencePanelStateSelector(d.current.state);L.openedPanelValue&&d.current.publishEvent("preferencePanelClose",{openedPanelValue:L.openedPanelValue}),d.current.setState(D=>_extends$1({},D,{preferencePanel:{open:!1}})),d.current.forceUpdate()},[d,x]),S=reactExports.useCallback(()=>{E.current=setTimeout(()=>clearTimeout(b.current),0)},[]),C=reactExports.useCallback(()=>{b.current=setTimeout(v,100)},[v]),T=reactExports.useCallback((L,D,A)=>{x.debug("Opening Preferences Panel"),S(),d.current.setState(I=>_extends$1({},I,{preferencePanel:_extends$1({},I.preferencePanel,{open:!0,openedPanelValue:L,panelId:D,labelId:A})})),d.current.publishEvent("preferencePanelOpen",{openedPanelValue:L}),d.current.forceUpdate()},[x,S,d]);useGridApiMethod(d,{showPreferences:T,hidePreferences:C},"public");const R=reactExports.useCallback((L,D)=>{var A;const I=gridPreferencePanelStateSelector(d.current.state);return!D.exportOnlyDirtyModels||((A=m.initialState)==null?void 0:A.preferencePanel)!=null||I.open?_extends$1({},L,{preferencePanel:I}):L},[d,(g=m.initialState)==null?void 0:g.preferencePanel]),k=reactExports.useCallback((L,D)=>{const A=D.stateToRestore.preferencePanel;return A!=null&&d.current.setState(I=>_extends$1({},I,{preferencePanel:A})),L},[d]);useGridRegisterPipeProcessor(d,"exportState",R),useGridRegisterPipeProcessor(d,"restoreState",k),reactExports.useEffect(()=>()=>{clearTimeout(b.current),clearTimeout(E.current)},[])},_excluded$L=["id","field"],_excluded2$8=["id","field"],missingOnProcessRowUpdateErrorWarning$1=buildWarning$1(["MUI: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.","To handle the error pass a callback to the `onProcessRowUpdateError` prop, e.g. `<DataGrid onProcessRowUpdateError={(error) => ...} />`.","For more detail, see http://mui.com/components/data-grid/editing/#server-side-persistence."],"error"),useGridCellEditing=(d,m)=>{const[g,x]=reactExports.useState({}),b=reactExports.useRef(g),E=reactExports.useRef({}),{processRowUpdate:v,onProcessRowUpdateError:S,cellModesModel:C,onCellModesModelChange:T}=m,R=Z=>(...ee)=>{m.editMode===GridEditModes.Cell&&Z(...ee)},k=reactExports.useCallback((Z,ee)=>{const ce=d.current.getCellParams(Z,ee);if(!d.current.isCellEditable(ce))throw new Error(`MUI: The cell with id=${Z} and field=${ee} is not editable.`)},[d]),L=reactExports.useCallback((Z,ee,ce)=>{if(d.current.getCellMode(Z,ee)!==ce)throw new Error(`MUI: The cell with id=${Z} and field=${ee} is not in ${ce} mode.`)},[d]),D=reactExports.useCallback((Z,ee)=>{if(!Z.isEditable||Z.cellMode===GridCellModes.Edit)return;const ce=_extends$1({},Z,{reason:GridCellEditStartReasons.cellDoubleClick});d.current.publishEvent("cellEditStart",ce,ee)},[d]),A=reactExports.useCallback((Z,ee)=>{if(Z.cellMode===GridCellModes.View||d.current.getCellMode(Z.id,Z.field)===GridCellModes.View)return;const ce=_extends$1({},Z,{reason:GridCellEditStopReasons.cellFocusOut});d.current.publishEvent("cellEditStop",ce,ee)},[d]),I=reactExports.useCallback((Z,ee)=>{if(Z.cellMode===GridCellModes.Edit){if(ee.which===229)return;let ce;if(ee.key==="Escape"?ce=GridCellEditStopReasons.escapeKeyDown:ee.key==="Enter"?ce=GridCellEditStopReasons.enterKeyDown:ee.key==="Tab"&&(ce=ee.shiftKey?GridCellEditStopReasons.shiftTabKeyDown:GridCellEditStopReasons.tabKeyDown,ee.preventDefault()),ce){const fe=_extends$1({},Z,{reason:ce});d.current.publishEvent("cellEditStop",fe,ee)}}else if(Z.isEditable){let ce;if(!d.current.unstable_applyPipeProcessors("canStartEditing",!0,{event:ee,cellParams:Z,editMode:"cell"}))return;if(isPrintableKey(ee)?ce=GridCellEditStartReasons.printableKeyDown:(ee.ctrlKey||ee.metaKey)&&ee.key==="v"?ce=GridCellEditStartReasons.pasteKeyDown:ee.key==="Enter"?ce=GridCellEditStartReasons.enterKeyDown:(ee.key==="Delete"||ee.key==="Backspace")&&(ce=GridCellEditStartReasons.deleteKeyDown),ce){const ae=_extends$1({},Z,{reason:ce,key:ee.key});d.current.publishEvent("cellEditStart",ae,ee)}}},[d]),N=reactExports.useCallback(Z=>{const{id:ee,field:ce,reason:fe}=Z,ae={id:ee,field:ce};(fe===GridCellEditStartReasons.printableKeyDown||fe===GridCellEditStartReasons.deleteKeyDown||fe===GridCellEditStartReasons.pasteKeyDown)&&(ae.deleteValue=!0),d.current.startCellEditMode(ae)},[d]),z=reactExports.useCallback(Z=>{const{id:ee,field:ce,reason:fe}=Z;d.current.runPendingEditCellValueMutation(ee,ce);let ae;fe===GridCellEditStopReasons.enterKeyDown?ae="below":fe===GridCellEditStopReasons.tabKeyDown?ae="right":fe===GridCellEditStopReasons.shiftTabKeyDown&&(ae="left");const ue=fe==="escapeKeyDown";d.current.stopCellEditMode({id:ee,field:ce,ignoreModifications:ue,cellToFocusAfter:ae})},[d]);useGridApiEventHandler(d,"cellDoubleClick",R(D)),useGridApiEventHandler(d,"cellFocusOut",R(A)),useGridApiEventHandler(d,"cellKeyDown",R(I)),useGridApiEventHandler(d,"cellEditStart",R(N)),useGridApiEventHandler(d,"cellEditStop",R(z)),useGridApiOptionHandler(d,"cellEditStart",m.onCellEditStart),useGridApiOptionHandler(d,"cellEditStop",m.onCellEditStop);const j=reactExports.useCallback((Z,ee)=>{const ce=gridEditRowsStateSelector(d.current.state);return ce[Z]&&ce[Z][ee]?GridCellModes.Edit:GridCellModes.View},[d]),Y=useEventCallback(Z=>{const ee=Z!==m.cellModesModel;T&&ee&&T(Z,{}),!(m.cellModesModel&&ee)&&(x(Z),b.current=Z,d.current.publishEvent("cellModesModelChange",Z))}),B=reactExports.useCallback((Z,ee,ce)=>{const fe=_extends$1({},b.current);if(ce!==null)fe[Z]=_extends$1({},fe[Z],{[ee]:_extends$1({},ce)});else{const ae=fe[Z],ue=_objectWithoutPropertiesLoose(ae,[ee].map(toPropertyKey));fe[Z]=ue,Object.keys(fe[Z]).length===0&&delete fe[Z]}Y(fe)},[Y]),U=reactExports.useCallback((Z,ee,ce)=>{d.current.setState(fe=>{const ae=_extends$1({},fe.editRows);return ce!==null?ae[Z]=_extends$1({},ae[Z],{[ee]:_extends$1({},ce)}):(delete ae[Z][ee],Object.keys(ae[Z]).length===0&&delete ae[Z]),_extends$1({},fe,{editRows:ae})}),d.current.forceUpdate()},[d]),W=reactExports.useCallback(Z=>{const{id:ee,field:ce}=Z,fe=_objectWithoutPropertiesLoose(Z,_excluded$L);k(ee,ce),L(ee,ce,GridCellModes.View),B(ee,ce,_extends$1({mode:GridCellModes.Edit},fe))},[k,L,B]),V=useEventCallback(Z=>{const{id:ee,field:ce,deleteValue:fe,initialValue:ae}=Z;let ue=d.current.getCellValue(ee,ce);(fe||ae)&&(ue=fe?"":ae),U(ee,ce,{value:ue,error:!1,isProcessingProps:!1}),d.current.setCellFocus(ee,ce)}),J=reactExports.useCallback(Z=>{const{id:ee,field:ce}=Z,fe=_objectWithoutPropertiesLoose(Z,_excluded2$8);L(ee,ce,GridCellModes.Edit),B(ee,ce,_extends$1({mode:GridCellModes.View},fe))},[L,B]),Q=useEventCallback(Z=>vt(void 0,null,function*(){const{id:ee,field:ce,ignoreModifications:fe,cellToFocusAfter:ae="none"}=Z;L(ee,ce,GridCellModes.Edit),d.current.runPendingEditCellValueMutation(ee,ce);const ue=()=>{U(ee,ce,null),B(ee,ce,null),ae!=="none"&&d.current.moveFocusToRelativeCell(ee,ce,ae)};if(fe){ue();return}const pe=gridEditRowsStateSelector(d.current.state),{error:ge,isProcessingProps:ye}=pe[ee][ce];if(ge||ye){E.current[ee][ce].mode=GridCellModes.Edit,B(ee,ce,{mode:GridCellModes.Edit});return}const Ee=d.current.getRowWithUpdatedValuesFromCellEditing(ee,ce);if(v){const ve=Se=>{E.current[ee][ce].mode=GridCellModes.Edit,B(ee,ce,{mode:GridCellModes.Edit}),S?S(Se):missingOnProcessRowUpdateErrorWarning$1()};try{const Se=d.current.getRow(ee);Promise.resolve(v(Ee,Se)).then($e=>{d.current.updateRows([$e]),ue()}).catch(ve)}catch(Se){ve(Se)}}else d.current.updateRows([Ee]),ue()})),X=reactExports.useCallback(Z=>vt(void 0,null,function*(){var ee;const{id:ce,field:fe,value:ae,debounceMs:ue,unstable_skipValueParser:pe}=Z;k(ce,fe),L(ce,fe,GridCellModes.Edit);const ge=d.current.getColumn(fe),ye=d.current.getRow(ce);let Ee=ae;ge.valueParser&&!pe&&(Ee=ge.valueParser(ae,d.current.getCellParams(ce,fe)));let ve=gridEditRowsStateSelector(d.current.state),Se=_extends$1({},ve[ce][fe],{value:Ee,changeReason:ue?"debouncedSetEditCellValue":"setEditCellValue"});if(ge.preProcessEditCellProps){const $e=ae!==ve[ce][fe].value;Se=_extends$1({},Se,{isProcessingProps:!0}),U(ce,fe,Se),Se=yield Promise.resolve(ge.preProcessEditCellProps({id:ce,row:ye,props:Se,hasChanged:$e}))}return d.current.getCellMode(ce,fe)===GridCellModes.View?!1:(ve=gridEditRowsStateSelector(d.current.state),Se=_extends$1({},Se,{isProcessingProps:!1}),Se.value=ge.preProcessEditCellProps?ve[ce][fe].value:Ee,U(ce,fe,Se),ve=gridEditRowsStateSelector(d.current.state),!((ee=ve[ce])!=null&&(ee=ee[fe])!=null&&ee.error))}),[d,k,L,U]),re=reactExports.useCallback((Z,ee)=>{const ce=d.current.getColumn(ee),fe=gridEditRowsStateSelector(d.current.state),ae=d.current.getRow(Z);if(!fe[Z]||!fe[Z][ee])return d.current.getRow(Z);const{value:ue}=fe[Z][ee];return ce.valueSetter?ce.valueSetter({value:ue,row:ae}):_extends$1({},ae,{[ee]:ue})},[d]),ie={getCellMode:j,startCellEditMode:W,stopCellEditMode:J},oe={setCellEditingEditCellValue:X,getRowWithUpdatedValuesFromCellEditing:re};useGridApiMethod(d,ie,"public"),useGridApiMethod(d,oe,"private"),reactExports.useEffect(()=>{C&&Y(C)},[C,Y]),useEnhancedEffect(()=>{const Z=gridRowsDataRowIdToIdLookupSelector(d),ee=E.current;E.current=deepClone(g),Object.entries(g).forEach(([ce,fe])=>{Object.entries(fe).forEach(([ae,ue])=>{var pe,ge;const ye=((pe=ee[ce])==null||(pe=pe[ae])==null?void 0:pe.mode)||GridCellModes.View,Ee=(ge=Z[ce])!=null?ge:ce;ue.mode===GridCellModes.Edit&&ye===GridCellModes.View?V(_extends$1({id:Ee,field:ae},ue)):ue.mode===GridCellModes.View&&ye===GridCellModes.Edit&&Q(_extends$1({id:Ee,field:ae},ue))})})},[d,g,V,Q])},_excluded$K=["id"],_excluded2$7=["id"],missingOnProcessRowUpdateErrorWarning=buildWarning$1(["MUI: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.","To handle the error pass a callback to the `onProcessRowUpdateError` prop, e.g. `<DataGrid onProcessRowUpdateError={(error) => ...} />`.","For more detail, see http://mui.com/components/data-grid/editing/#server-side-persistence."],"error"),useGridRowEditing=(d,m)=>{const[g,x]=reactExports.useState({}),b=reactExports.useRef(g),E=reactExports.useRef({}),v=reactExports.useRef(null),S=reactExports.useRef(null),{processRowUpdate:C,onProcessRowUpdateError:T,rowModesModel:R,onRowModesModelChange:k}=m,L=ae=>(...ue)=>{m.editMode===GridEditModes.Row&&ae(...ue)},D=reactExports.useCallback((ae,ue)=>{const pe=d.current.getCellParams(ae,ue);if(!d.current.isCellEditable(pe))throw new Error(`MUI: The cell with id=${ae} and field=${ue} is not editable.`)},[d]),A=reactExports.useCallback((ae,ue)=>{if(d.current.getRowMode(ae)!==ue)throw new Error(`MUI: The row with id=${ae} is not in ${ue} mode.`)},[d]),I=reactExports.useCallback((ae,ue)=>{if(!ae.isEditable||d.current.getRowMode(ae.id)===GridRowModes.Edit)return;const pe=d.current.getRowParams(ae.id),ge=_extends$1({},pe,{field:ae.field,reason:GridRowEditStartReasons.cellDoubleClick});d.current.publishEvent("rowEditStart",ge,ue)},[d]),N=reactExports.useCallback(ae=>{S.current=ae},[]),z=reactExports.useCallback((ae,ue)=>{ae.isEditable&&d.current.getRowMode(ae.id)!==GridRowModes.View&&(S.current=null,v.current=setTimeout(()=>{var pe;if(v.current=null,((pe=S.current)==null?void 0:pe.id)!==ae.id){if(!d.current.getRow(ae.id)||d.current.getRowMode(ae.id)===GridRowModes.View)return;const ge=d.current.getRowParams(ae.id),ye=_extends$1({},ge,{field:ae.field,reason:GridRowEditStopReasons.rowFocusOut});d.current.publishEvent("rowEditStop",ye,ue)}}))},[d]);reactExports.useEffect(()=>()=>{clearTimeout(v.current)},[]);const j=reactExports.useCallback((ae,ue)=>{if(ae.cellMode===GridRowModes.Edit){if(ue.which===229)return;let pe;if(ue.key==="Escape")pe=GridRowEditStopReasons.escapeKeyDown;else if(ue.key==="Enter")pe=GridRowEditStopReasons.enterKeyDown;else if(ue.key==="Tab"){const ge=gridVisibleColumnFieldsSelector(d).filter(ye=>d.current.getColumn(ye).type===GRID_ACTIONS_COLUMN_TYPE?!0:d.current.isCellEditable(d.current.getCellParams(ae.id,ye)));if(ue.shiftKey?ae.field===ge[0]&&(pe=GridRowEditStopReasons.shiftTabKeyDown):ae.field===ge[ge.length-1]&&(pe=GridRowEditStopReasons.tabKeyDown),ue.preventDefault(),!pe){const ye=ge.findIndex(ve=>ve===ae.field),Ee=ge[ue.shiftKey?ye-1:ye+1];d.current.setCellFocus(ae.id,Ee)}}if(pe){const ge=_extends$1({},d.current.getRowParams(ae.id),{reason:pe,field:ae.field});d.current.publishEvent("rowEditStop",ge,ue)}}else if(ae.isEditable){let pe;if(!d.current.unstable_applyPipeProcessors("canStartEditing",!0,{event:ue,cellParams:ae,editMode:"row"}))return;if(isPrintableKey(ue)||(ue.ctrlKey||ue.metaKey)&&ue.key==="v"?pe=GridRowEditStartReasons.printableKeyDown:ue.key==="Enter"?pe=GridRowEditStartReasons.enterKeyDown:(ue.key==="Delete"||ue.key==="Backspace")&&(pe=GridRowEditStartReasons.deleteKeyDown),pe){const ye=d.current.getRowParams(ae.id),Ee=_extends$1({},ye,{field:ae.field,reason:pe});d.current.publishEvent("rowEditStart",Ee,ue)}}},[d]),Y=reactExports.useCallback(ae=>{const{id:ue,field:pe,reason:ge}=ae,ye={id:ue,fieldToFocus:pe};(ge===GridRowEditStartReasons.printableKeyDown||ge===GridRowEditStartReasons.deleteKeyDown)&&(ye.deleteValue=!!pe),d.current.startRowEditMode(ye)},[d]),B=reactExports.useCallback(ae=>{const{id:ue,reason:pe,field:ge}=ae;d.current.runPendingEditCellValueMutation(ue);let ye;pe===GridRowEditStopReasons.enterKeyDown?ye="below":pe===GridRowEditStopReasons.tabKeyDown?ye="right":pe===GridRowEditStopReasons.shiftTabKeyDown&&(ye="left");const Ee=pe==="escapeKeyDown";d.current.stopRowEditMode({id:ue,ignoreModifications:Ee,field:ge,cellToFocusAfter:ye})},[d]);useGridApiEventHandler(d,"cellDoubleClick",L(I)),useGridApiEventHandler(d,"cellFocusIn",L(N)),useGridApiEventHandler(d,"cellFocusOut",L(z)),useGridApiEventHandler(d,"cellKeyDown",L(j)),useGridApiEventHandler(d,"rowEditStart",L(Y)),useGridApiEventHandler(d,"rowEditStop",L(B)),useGridApiOptionHandler(d,"rowEditStart",m.onRowEditStart),useGridApiOptionHandler(d,"rowEditStop",m.onRowEditStop);const U=reactExports.useCallback(ae=>{if(m.editMode===GridEditModes.Cell)return GridRowModes.View;const ue=gridEditRowsStateSelector(d.current.state);return ue[ae]&&Object.keys(ue[ae]).length>0?GridRowModes.Edit:GridRowModes.View},[d,m.editMode]),W=useEventCallback(ae=>{const ue=ae!==m.rowModesModel;k&&ue&&k(ae,{}),!(m.rowModesModel&&ue)&&(x(ae),b.current=ae,d.current.publishEvent("rowModesModelChange",ae))}),V=reactExports.useCallback((ae,ue)=>{const pe=_extends$1({},b.current);ue!==null?pe[ae]=_extends$1({},ue):delete pe[ae],W(pe)},[W]),J=reactExports.useCallback((ae,ue)=>{d.current.setState(pe=>{const ge=_extends$1({},pe.editRows);return ue!==null?ge[ae]=ue:delete ge[ae],_extends$1({},pe,{editRows:ge})}),d.current.forceUpdate()},[d]),Q=reactExports.useCallback((ae,ue,pe)=>{d.current.setState(ge=>{const ye=_extends$1({},ge.editRows);return pe!==null?ye[ae]=_extends$1({},ye[ae],{[ue]:_extends$1({},pe)}):(delete ye[ae][ue],Object.keys(ye[ae]).length===0&&delete ye[ae]),_extends$1({},ge,{editRows:ye})}),d.current.forceUpdate()},[d]),X=reactExports.useCallback(ae=>{const{id:ue}=ae,pe=_objectWithoutPropertiesLoose(ae,_excluded$K);A(ue,GridRowModes.View),V(ue,_extends$1({mode:GridRowModes.Edit},pe))},[A,V]),re=useEventCallback(ae=>{const{id:ue,fieldToFocus:pe,deleteValue:ge,initialValue:ye}=ae,ve=gridColumnFieldsSelector(d).reduce((Se,$e)=>{if(!d.current.getCellParams(ue,$e).isEditable)return Se;let Re=d.current.getCellValue(ue,$e);return pe===$e&&(ge||ye)&&(Re=ge?"":ye),Se[$e]={value:Re,error:!1,isProcessingProps:!1},Se},{});J(ue,ve),pe&&d.current.setCellFocus(ue,pe)}),ie=reactExports.useCallback(ae=>{const{id:ue}=ae,pe=_objectWithoutPropertiesLoose(ae,_excluded2$7);A(ue,GridRowModes.Edit),V(ue,_extends$1({mode:GridRowModes.View},pe))},[A,V]),oe=useEventCallback(ae=>{const{id:ue,ignoreModifications:pe,field:ge,cellToFocusAfter:ye="none"}=ae;d.current.runPendingEditCellValueMutation(ue);const Ee=()=>{ye!=="none"&&ge&&d.current.moveFocusToRelativeCell(ue,ge,ye),J(ue,null),V(ue,null)};if(pe){Ee();return}const ve=gridEditRowsStateSelector(d.current.state),Se=d.current.getRow(ue);if(Object.values(ve[ue]).some(De=>De.isProcessingProps)){E.current[ue].mode=GridRowModes.Edit;return}if(Object.values(ve[ue]).some(De=>De.error)){E.current[ue].mode=GridRowModes.Edit,V(ue,{mode:GridRowModes.Edit});return}const Re=d.current.getRowWithUpdatedValuesFromRowEditing(ue);if(C){const De=Be=>{E.current[ue].mode=GridRowModes.Edit,V(ue,{mode:GridRowModes.Edit}),T?T(Be):missingOnProcessRowUpdateErrorWarning()};try{Promise.resolve(C(Re,Se)).then(Be=>{d.current.updateRows([Be]),Ee()}).catch(De)}catch(Be){De(Be)}}else d.current.updateRows([Re]),Ee()}),Z=reactExports.useCallback(ae=>{const{id:ue,field:pe,value:ge,debounceMs:ye,unstable_skipValueParser:Ee}=ae;D(ue,pe);const ve=d.current.getColumn(pe),Se=d.current.getRow(ue);let $e=ge;ve.valueParser&&!Ee&&($e=ve.valueParser(ge,d.current.getCellParams(ue,pe)));let Me=gridEditRowsStateSelector(d.current.state),Re=_extends$1({},Me[ue][pe],{value:$e,changeReason:ye?"debouncedSetEditCellValue":"setEditCellValue"});return ve.preProcessEditCellProps||Q(ue,pe,Re),new Promise(De=>{const Be=[];if(ve.preProcessEditCellProps){const Le=Re.value!==Me[ue][pe].value;Re=_extends$1({},Re,{isProcessingProps:!0}),Q(ue,pe,Re);const Ge=Me[ue],Ie=_objectWithoutPropertiesLoose(Ge,[pe].map(toPropertyKey)),Ye=Promise.resolve(ve.preProcessEditCellProps({id:ue,row:Se,props:Re,hasChanged:Le,otherFieldsProps:Ie})).then(He=>{if(d.current.getRowMode(ue)===GridRowModes.View){De(!1);return}Me=gridEditRowsStateSelector(d.current.state),He=_extends$1({},He,{isProcessingProps:!1}),He.value=ve.preProcessEditCellProps?Me[ue][pe].value:$e,Q(ue,pe,He)});Be.push(Ye)}Object.entries(Me[ue]).forEach(([Le,Ge])=>{if(Le===pe)return;const Ie=d.current.getColumn(Le);if(!Ie.preProcessEditCellProps)return;Ge=_extends$1({},Ge,{isProcessingProps:!0}),Q(ue,Le,Ge),Me=gridEditRowsStateSelector(d.current.state);const Ye=Me[ue],He=_objectWithoutPropertiesLoose(Ye,[Le].map(toPropertyKey)),Ve=Promise.resolve(Ie.preProcessEditCellProps({id:ue,row:Se,props:Ge,hasChanged:!1,otherFieldsProps:He})).then(rt=>{if(d.current.getRowMode(ue)===GridRowModes.View){De(!1);return}rt=_extends$1({},rt,{isProcessingProps:!1}),Q(ue,Le,rt)});Be.push(Ve)}),Promise.all(Be).then(()=>{d.current.getRowMode(ue)===GridRowModes.Edit?(Me=gridEditRowsStateSelector(d.current.state),De(!Me[ue][pe].error)):De(!1)})})},[d,D,Q]),ee=reactExports.useCallback(ae=>{const ue=gridEditRowsStateSelector(d.current.state),pe=d.current.getRow(ae);if(!ue[ae])return d.current.getRow(ae);let ge=_extends$1({},pe);return Object.entries(ue[ae]).forEach(([ye,Ee])=>{const ve=d.current.getColumn(ye);ve.valueSetter?ge=ve.valueSetter({value:Ee.value,row:ge}):ge[ye]=Ee.value}),ge},[d]),ce={getRowMode:U,startRowEditMode:X,stopRowEditMode:ie},fe={setRowEditingEditCellValue:Z,getRowWithUpdatedValuesFromRowEditing:ee};useGridApiMethod(d,ce,"public"),useGridApiMethod(d,fe,"private"),reactExports.useEffect(()=>{R&&W(R)},[R,W]),useEnhancedEffect(()=>{const ae=gridRowsDataRowIdToIdLookupSelector(d),ue=E.current;E.current=deepClone(g),Object.entries(g).forEach(([pe,ge])=>{var ye,Ee;const ve=((ye=ue[pe])==null?void 0:ye.mode)||GridRowModes.View,Se=(Ee=ae[pe])!=null?Ee:pe;ge.mode===GridRowModes.Edit&&ve===GridRowModes.View?re(_extends$1({id:Se},ge)):ge.mode===GridRowModes.View&&ve===GridRowModes.Edit&&oe(_extends$1({id:Se},ge))})},[d,g,re,oe])},editingStateInitializer=d=>_extends$1({},d,{editRows:{}}),useGridEditing=(d,m)=>{useGridCellEditing(d,m),useGridRowEditing(d,m);const g=reactExports.useRef({}),{isCellEditable:x}=m,b=reactExports.useCallback(L=>isAutoGeneratedRow(L.rowNode)||!L.colDef.editable||!L.colDef.renderEditCell?!1:x?x(L):!0,[x]),E=(L,D,A,I)=>{if(!A){I();return}if(g.current[L]||(g.current[L]={}),g.current[L][D]){const[j]=g.current[L][D];clearTimeout(j)}const N=()=>{const[j]=g.current[L][D];clearTimeout(j),I(),delete g.current[L][D]},z=setTimeout(()=>{I(),delete g.current[L][D]},A);g.current[L][D]=[z,N]};reactExports.useEffect(()=>{const L=g.current;return()=>{Object.entries(L).forEach(([D,A])=>{Object.keys(A).forEach(I=>{const[N]=L[D][I];clearTimeout(N),delete L[D][I]})})}},[]);const v=reactExports.useCallback((L,D)=>{if(g.current[L]){if(!D)Object.keys(g.current[L]).forEach(A=>{const[,I]=g.current[L][A];I()});else if(g.current[L][D]){const[,A]=g.current[L][D];A()}}},[]),S=reactExports.useCallback(L=>{const{id:D,field:A,debounceMs:I}=L;return new Promise(N=>{E(D,A,I,()=>vt(void 0,null,function*(){const z=m.editMode===GridEditModes.Row?d.current.setRowEditingEditCellValue:d.current.setCellEditingEditCellValue;if(d.current.getCellMode(D,A)===GridCellModes.Edit){const j=yield z(L);N(j)}}))})},[d,m.editMode]),C=reactExports.useCallback((L,D)=>m.editMode===GridEditModes.Cell?d.current.getRowWithUpdatedValuesFromCellEditing(L,D):d.current.getRowWithUpdatedValuesFromRowEditing(L),[d,m.editMode]),T=reactExports.useCallback((L,D)=>{var A,I;return(A=(I=gridEditRowsStateSelector(d.current.state)[L])==null?void 0:I[D])!=null?A:null},[d]),R={isCellEditable:b,setEditCellValue:S,getRowWithUpdatedValues:C,unstable_getEditCellMeta:T},k={runPendingEditCellValueMutation:v};useGridApiMethod(d,R,"public"),useGridApiMethod(d,k,"private")},rowsStateInitializer=(d,m,g)=>(g.current.caches.rows=createRowsInternalCache({rows:m.rows,getRowId:m.getRowId,loading:m.loading,rowCount:m.rowCount}),_extends$1({},d,{rows:getRowsStateFromCache({apiRef:g,rowCountProp:m.rowCount,loadingProp:m.loading,previousTree:null,previousTreeDepths:null})})),useGridRows=(d,m)=>{const g=useGridLogger(d,"useGridRows"),x=useGridVisibleRows(d,m),b=reactExports.useRef(Date.now()),E=useTimeout(),v=reactExports.useCallback(oe=>{const Z=gridRowsLookupSelector(d)[oe];if(Z)return Z;const ee=d.current.getRowNode(oe);return ee&&isAutoGeneratedRow(ee)?{[GRID_ID_AUTOGENERATED]:oe}:null},[d]),S=m.getRowId,C=reactExports.useCallback(oe=>GRID_ID_AUTOGENERATED in oe?oe[GRID_ID_AUTOGENERATED]:S?S(oe):oe.id,[S]),T=reactExports.useMemo(()=>x.rows.reduce((oe,{id:Z},ee)=>(oe[Z]=ee,oe),{}),[x.rows]),R=reactExports.useCallback(({cache:oe,throttle:Z})=>{const ee=()=>{b.current=Date.now(),d.current.setState(fe=>_extends$1({},fe,{rows:getRowsStateFromCache({apiRef:d,rowCountProp:m.rowCount,loadingProp:m.loading,previousTree:gridRowTreeSelector(d),previousTreeDepths:gridRowTreeDepthsSelector(d)})})),d.current.publishEvent("rowsSet"),d.current.forceUpdate()};if(E.clear(),d.current.caches.rows=oe,!Z){ee();return}const ce=m.throttleRowsMs-(Date.now()-b.current);if(ce>0){E.start(ce,ee);return}ee()},[m.throttleRowsMs,m.rowCount,m.loading,d,E]),k=reactExports.useCallback(oe=>{g.debug(`Updating all rows, new length ${oe.length}`);const Z=createRowsInternalCache({rows:oe,getRowId:m.getRowId,loading:m.loading,rowCount:m.rowCount}),ee=d.current.caches.rows;Z.rowsBeforePartialUpdates=ee.rowsBeforePartialUpdates,R({cache:Z,throttle:!0})},[g,m.getRowId,m.loading,m.rowCount,R,d]),L=reactExports.useCallback(oe=>{if(m.signature===GridSignature.DataGrid&&oe.length>1)throw new Error(["MUI: You can't update several rows at once in `apiRef.current.updateRows` on the DataGrid.","You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature."].join(`
605
+ `);Ee.appendChild(Y.createTextNode(Se)),Y.head.appendChild(Ee)}}else if(ye.getAttribute("href")){const Ee=Y.createElement(ye.tagName);for(let ve=0;ve<ye.attributes.length;ve+=1){const Se=ye.attributes[ve];Se&&Ee.setAttribute(Se.nodeName,Se.nodeValue||"")}fe.push(new Promise(ve=>{Ee.addEventListener("load",()=>ve())})),Y.head.appendChild(Ee)}}}Promise.all(fe).then(()=>{A.contentWindow.print()})},[d,x,m.columnHeaderHeight]),R=reactExports.useCallback(A=>{var I;x.current.body.removeChild(A),d.current.restoreState(b.current||{}),(I=b.current)!=null&&(I=I.columns)!=null&&I.columnVisibilityModel||d.current.setColumnVisibilityModel(E.current),d.current.unstable_setVirtualization(!0),d.current.setRows(v.current),b.current=null,E.current={},v.current=[]},[d]),L={exportDataAsPrint:reactExports.useCallback(A=>yt(void 0,null,function*(){if(g.debug("Export data as Print"),!d.current.rootElementRef.current)throw new Error("MUI: No grid root element available.");b.current=d.current.exportState(),E.current=gridColumnVisibilityModelSelector(d);const I=gridRowsLookupSelector(d);if(v.current=gridDataRowIdsSelector(d).map(z=>I[z]),m.pagination){const j={page:0,pageSize:gridExpandedRowCountSelector(d)};d.current.setState(Y=>_extends$1({},Y,{pagination:_extends$1({},Y.pagination,{paginationModel:getDerivedPaginationModel(Y.pagination,"DataGridPro",j)})})),d.current.forceUpdate()}yield S(A==null?void 0:A.fields,A==null?void 0:A.allColumns,A==null?void 0:A.includeCheckboxes),A!=null&&A.getRowsToExport&&C(A.getRowsToExport),d.current.unstable_setVirtualization(!1),yield raf();const N=buildPrintWindow(A==null?void 0:A.fileName);N.onload=()=>{T(N,A),N.contentWindow.matchMedia("print").addEventListener("change",j=>{j.matches===!1&&R(N)})},x.current.body.appendChild(N)}),[m,g,d,T,R,S,C])};useGridApiMethod(d,L,"public");const D=reactExports.useCallback((A,I)=>{var N;return(N=I.printOptions)!=null&&N.disableToolbarButton?A:[...A,{component:jsxRuntimeExports.jsx(GridPrintExportMenuItem,{options:I.printOptions}),componentName:"printExport"}]},[]);useGridRegisterPipeProcessor(d,"exportMenu",D)},filterStateInitializer=(d,m,g)=>{var x,b,E;const v=(x=(b=m.filterModel)!=null?b:(E=m.initialState)==null||(E=E.filter)==null?void 0:E.filterModel)!=null?x:getDefaultGridFilterModel();return _extends$1({},d,{filter:{filterModel:sanitizeFilterModel(v,m.disableMultipleColumnsFiltering,g),filteredRowsLookup:{},filteredDescendantCountLookup:{}},visibleRowsLookup:{}})},getVisibleRowsLookup=d=>d.filteredRowsLookup;function getVisibleRowsLookupState(d,m){return d.current.applyStrategyProcessor("visibleRowsLookupCreation",{tree:m.rows.tree,filteredRowsLookup:m.filter.filteredRowsLookup})}function createMemoizedValues(){return defaultMemoize(Object.values)}const useGridFilter=(d,m)=>{var g,x;const b=useGridLogger(d,"useGridFilter");d.current.registerControlState({stateId:"filter",propModel:m.filterModel,propOnChange:m.onFilterModelChange,stateSelector:gridFilterModelSelector,changeEvent:"filterModelChange"});const E=reactExports.useCallback(()=>{d.current.setState(X=>{const re=gridFilterModelSelector(X,d.current.instanceId),ie=m.filterMode==="client"?buildAggregatedFilterApplier(re,d,m.disableEval):null,oe=d.current.applyStrategyProcessor("filtering",{isRowMatchingFilters:ie,filterModel:re!=null?re:getDefaultGridFilterModel()}),Z=_extends$1({},X,{filter:_extends$1({},X.filter,oe)}),ee=getVisibleRowsLookupState(d,Z);return _extends$1({},Z,{visibleRowsLookup:ee})}),d.current.publishEvent("filteredRowsSet")},[d,m.filterMode,m.disableEval]),v=reactExports.useCallback((X,re)=>re==null||re.filterable===!1||m.disableColumnFilter?X:[...X,"columnMenuFilterItem"],[m.disableColumnFilter]),S=reactExports.useCallback(()=>{E(),d.current.forceUpdate()},[d,E]),C=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d),ie=[...re.items],oe=ie.findIndex(Z=>Z.id===X.id);oe===-1?ie.push(X):ie[oe]=X,d.current.setFilterModel(_extends$1({},re,{items:ie}),"upsertFilterItem")},[d]),T=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d),ie=[...re.items];X.forEach(oe=>{const Z=X.findIndex(ee=>ee.id===oe.id);Z===-1?ie.push(oe):ie[Z]=oe}),d.current.setFilterModel(_extends$1({},re,{items:X}),"upsertFilterItems")},[d]),R=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d),ie=re.items.filter(oe=>oe.id!==X.id);ie.length!==re.items.length&&d.current.setFilterModel(_extends$1({},re,{items:ie}),"deleteFilterItem")},[d]),k=reactExports.useCallback((X,re,ie)=>{if(b.debug("Displaying filter panel"),X){const oe=gridFilterModelSelector(d),Z=oe.items.filter(ae=>{var ue;if(ae.value!==void 0)return!(Array.isArray(ae.value)&&ae.value.length===0);const ge=(ue=d.current.getColumn(ae.field).filterOperators)==null?void 0:ue.find(Ee=>Ee.value===ae.operator);return!(typeof(ge==null?void 0:ge.requiresFilterValue)=="undefined"?!0:ge==null?void 0:ge.requiresFilterValue)});let ee;const ce=Z.find(ae=>ae.field===X),fe=d.current.getColumn(X);ce?ee=Z:m.disableMultipleColumnsFiltering?ee=[cleanFilterItem({field:X,operator:fe.filterOperators[0].value},d)]:ee=[...Z,cleanFilterItem({field:X,operator:fe.filterOperators[0].value},d)],d.current.setFilterModel(_extends$1({},oe,{items:ee}))}d.current.showPreferences(GridPreferencePanelsValue.filters,re,ie)},[d,b,m.disableMultipleColumnsFiltering]),L=reactExports.useCallback(()=>{b.debug("Hiding filter panel"),d.current.hidePreferences()},[d,b]),D=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d);re.logicOperator!==X&&d.current.setFilterModel(_extends$1({},re,{logicOperator:X}),"changeLogicOperator")},[d]),A=reactExports.useCallback(X=>{const re=gridFilterModelSelector(d);isDeepEqual(re.quickFilterValues,X)||d.current.setFilterModel(_extends$1({},re,{quickFilterValues:[...X]}))},[d]),I=reactExports.useCallback((X,re)=>{gridFilterModelSelector(d)!==X&&(b.debug("Setting filter model"),d.current.updateControlState("filter",mergeStateWithFilterModel(X,m.disableMultipleColumnsFiltering,d),re),d.current.unstable_applyFilters())},[d,b,m.disableMultipleColumnsFiltering]),N={setFilterLogicOperator:D,unstable_applyFilters:S,deleteFilterItem:R,upsertFilterItem:C,upsertFilterItems:T,setFilterModel:I,showFilterPanel:k,hideFilterPanel:L,setQuickFilterValues:A,ignoreDiacritics:m.ignoreDiacritics};useGridApiMethod(d,N,"public");const z=reactExports.useCallback((X,re)=>{var ie;const oe=gridFilterModelSelector(d);return!re.exportOnlyDirtyModels||m.filterModel!=null||((ie=m.initialState)==null||(ie=ie.filter)==null?void 0:ie.filterModel)!=null||!isDeepEqual(oe,getDefaultGridFilterModel())?_extends$1({},X,{filter:{filterModel:oe}}):X},[d,m.filterModel,(g=m.initialState)==null||(g=g.filter)==null?void 0:g.filterModel]),j=reactExports.useCallback((X,re)=>{var ie;const oe=(ie=re.stateToRestore.filter)==null?void 0:ie.filterModel;return oe==null?X:(d.current.updateControlState("filter",mergeStateWithFilterModel(oe,m.disableMultipleColumnsFiltering,d),"restoreState"),_extends$1({},X,{callbacks:[...X.callbacks,d.current.unstable_applyFilters]}))},[d,m.disableMultipleColumnsFiltering]),Y=reactExports.useCallback((X,re)=>{if(re===GridPreferencePanelsValue.filters){var ie;const oe=m.slots.filterPanel;return jsxRuntimeExports.jsx(oe,_extends$1({},(ie=m.slotProps)==null?void 0:ie.filterPanel))}return X},[m.slots.filterPanel,(x=m.slotProps)==null?void 0:x.filterPanel]),{getRowId:B}=m,U=useLazyRef(createMemoizedValues),W=reactExports.useCallback(X=>{if(m.filterMode!=="client"||!X.isRowMatchingFilters)return{filteredRowsLookup:{},filteredDescendantCountLookup:{}};const re=gridRowsLookupSelector(d),ie={},{isRowMatchingFilters:oe}=X,Z={},ee={passingFilterItems:null,passingQuickFilterValues:null},ce=U.current(d.current.state.rows.dataRowIdToModelLookup);for(let ue=0;ue<ce.length;ue+=1){const pe=ce[ue],ge=B?B(pe):pe.id;oe(pe,void 0,ee);const ye=passFilterLogic([ee.passingFilterItems],[ee.passingQuickFilterValues],X.filterModel,d,Z);ie[ge]=ye}const fe="auto-generated-group-footer-root";return re[fe]&&(ie[fe]=!0),{filteredRowsLookup:ie,filteredDescendantCountLookup:{}}},[d,m.filterMode,B,U]);useGridRegisterPipeProcessor(d,"columnMenu",v),useGridRegisterPipeProcessor(d,"exportState",z),useGridRegisterPipeProcessor(d,"restoreState",j),useGridRegisterPipeProcessor(d,"preferencePanel",Y),useGridRegisterStrategyProcessor(d,GRID_DEFAULT_STRATEGY,"filtering",W),useGridRegisterStrategyProcessor(d,GRID_DEFAULT_STRATEGY,"visibleRowsLookupCreation",getVisibleRowsLookup);const V=reactExports.useCallback(()=>{b.debug("onColUpdated - GridColumns changed, applying filters");const X=gridFilterModelSelector(d),re=gridFilterableColumnLookupSelector(d),ie=X.items.filter(oe=>oe.field&&re[oe.field]);ie.length<X.items.length&&d.current.setFilterModel(_extends$1({},X,{items:ie}))},[d,b]),J=reactExports.useCallback(X=>{X==="filtering"&&d.current.unstable_applyFilters()},[d]),Q=reactExports.useCallback(()=>{d.current.setState(X=>_extends$1({},X,{visibleRowsLookup:getVisibleRowsLookupState(d,X)})),d.current.forceUpdate()},[d]);useGridApiEventHandler(d,"rowsSet",E),useGridApiEventHandler(d,"columnsChange",V),useGridApiEventHandler(d,"activeStrategyProcessorChange",J),useGridApiEventHandler(d,"rowExpansionChange",Q),useGridApiEventHandler(d,"columnVisibilityModelChange",()=>{const X=gridFilterModelSelector(d);X.quickFilterValues&&X.quickFilterExcludeHiddenColumns&&d.current.unstable_applyFilters()}),useFirstRender(()=>{d.current.unstable_applyFilters()}),useEnhancedEffect(()=>{m.filterModel!==void 0&&d.current.setFilterModel(m.filterModel)},[d,b,m.filterModel])},focusStateInitializer=d=>_extends$1({},d,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null},tabIndex:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}}),useGridFocus=(d,m)=>{const g=useGridLogger(d,"useGridFocus"),x=reactExports.useRef(null),b=reactExports.useCallback((V,J)=>{V&&d.current.getRow(V.id)&&d.current.publishEvent("cellFocusOut",d.current.getCellParams(V.id,V.field),J)},[d]),E=reactExports.useCallback((V,J)=>{const Q=gridFocusCellSelector(d);(Q==null?void 0:Q.id)===V&&(Q==null?void 0:Q.field)===J||(d.current.setState(X=>(g.debug(`Focusing on cell with id=${V} and field=${J}`),_extends$1({},X,{tabIndex:{cell:{id:V,field:J},columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null},focus:{cell:{id:V,field:J},columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}}))),d.current.forceUpdate(),d.current.getRow(V)&&(Q&&b(Q,{}),d.current.publishEvent("cellFocusIn",d.current.getCellParams(V,J))))},[d,g,b]),v=reactExports.useCallback((V,J={})=>{const Q=gridFocusCellSelector(d);b(Q,J),d.current.setState(X=>(g.debug(`Focusing on column header with colIndex=${V}`),_extends$1({},X,{tabIndex:{columnHeader:{field:V},columnHeaderFilter:null,cell:null,columnGroupHeader:null},focus:{columnHeader:{field:V},columnHeaderFilter:null,cell:null,columnGroupHeader:null}}))),d.current.forceUpdate()},[d,g,b]),S=reactExports.useCallback((V,J={})=>{const Q=gridFocusCellSelector(d);b(Q,J),d.current.setState(X=>(g.debug(`Focusing on column header filter with colIndex=${V}`),_extends$1({},X,{tabIndex:{columnHeader:null,columnHeaderFilter:{field:V},cell:null,columnGroupHeader:null},focus:{columnHeader:null,columnHeaderFilter:{field:V},cell:null,columnGroupHeader:null}}))),d.current.forceUpdate()},[d,g,b]),C=reactExports.useCallback((V,J,Q={})=>{const X=gridFocusCellSelector(d);X&&d.current.publishEvent("cellFocusOut",d.current.getCellParams(X.id,X.field),Q),d.current.setState(re=>_extends$1({},re,{tabIndex:{columnGroupHeader:{field:V,depth:J},columnHeader:null,columnHeaderFilter:null,cell:null},focus:{columnGroupHeader:{field:V,depth:J},columnHeader:null,columnHeaderFilter:null,cell:null}})),d.current.forceUpdate()},[d]),T=reactExports.useCallback(()=>unstable_gridFocusColumnGroupHeaderSelector(d),[d]),R=reactExports.useCallback((V,J,Q)=>{let X=d.current.getColumnIndex(J);const re=gridVisibleColumnDefinitionsSelector(d),ie=getVisibleRows(d,{pagination:m.pagination,paginationMode:m.paginationMode}),oe=gridPinnedRowsSelector(d),Z=[].concat(oe.top||[],ie.rows,oe.bottom||[]);let ee=Z.findIndex(ue=>ue.id===V);Q==="right"?X+=1:Q==="left"?X-=1:ee+=1,X>=re.length?(ee+=1,ee<Z.length&&(X=0)):X<0&&(ee-=1,ee>=0&&(X=re.length-1)),ee=clamp(ee,0,Z.length-1);const ce=Z[ee];if(!ce)return;const fe=d.current.unstable_getCellColSpanInfo(ce.id,X);fe&&fe.spannedByColSpan&&(Q==="left"||Q==="below"?X=fe.leftVisibleCellIndex:Q==="right"&&(X=fe.rightVisibleCellIndex)),X=clamp(X,0,re.length-1);const ae=re[X];d.current.setCellFocus(ce.id,ae.field)},[d,m.pagination,m.paginationMode]),k=reactExports.useCallback(({id:V,field:J})=>{d.current.setCellFocus(V,J)},[d]),L=reactExports.useCallback((V,J)=>{J.key==="Enter"||J.key==="Tab"||J.key==="Shift"||isNavigationKey(J.key)||d.current.setCellFocus(V.id,V.field)},[d]),D=reactExports.useCallback(({field:V},J)=>{J.target===J.currentTarget&&d.current.setColumnHeaderFocus(V,J)},[d]),A=reactExports.useCallback(({fields:V,depth:J},Q)=>{if(Q.target!==Q.currentTarget)return;const X=unstable_gridFocusColumnGroupHeaderSelector(d);X!==null&&X.depth===J&&V.includes(X.field)||d.current.setColumnGroupHeaderFocus(V[0],J,Q)},[d]),I=reactExports.useCallback((V,J)=>{var Q;(Q=J.relatedTarget)!=null&&Q.className.includes(gridClasses.columnHeader)||(g.debug("Clearing focus"),d.current.setState(X=>_extends$1({},X,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}})))},[g,d]),N=reactExports.useCallback(V=>{x.current=V},[]),z=reactExports.useCallback(V=>{const J=x.current;x.current=null;const Q=gridFocusCellSelector(d);if(!d.current.unstable_applyPipeProcessors("canUpdateFocus",!0,{event:V,cell:J}))return;if(!Q){J&&d.current.setCellFocus(J.id,J.field);return}if((J==null?void 0:J.id)===Q.id&&(J==null?void 0:J.field)===Q.field)return;const re=d.current.getCellElement(Q.id,Q.field);re!=null&&re.contains(V.target)||(J?d.current.setCellFocus(J.id,J.field):(d.current.setState(ie=>_extends$1({},ie,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}})),d.current.forceUpdate(),b(Q,V)))},[d,b]),j=reactExports.useCallback(V=>{if(V.cellMode==="view")return;const J=gridFocusCellSelector(d);((J==null?void 0:J.id)!==V.id||(J==null?void 0:J.field)!==V.field)&&d.current.setCellFocus(V.id,V.field)},[d]),Y=reactExports.useCallback(()=>{const V=gridFocusCellSelector(d);V&&!d.current.getRow(V.id)&&d.current.setState(J=>_extends$1({},J,{focus:{cell:null,columnHeader:null,columnHeaderFilter:null,columnGroupHeader:null}}))},[d]),B=useEventCallback(()=>{const V=gridFocusCellSelector(d);if(!V)return;const J=getVisibleRows(d,{pagination:m.pagination,paginationMode:m.paginationMode});if(J.rows.find(re=>re.id===V.id))return;const X=gridVisibleColumnDefinitionsSelector(d);d.current.setState(re=>_extends$1({},re,{tabIndex:{cell:{id:J.rows[0].id,field:X[0].field},columnGroupHeader:null,columnHeader:null,columnHeaderFilter:null}}))}),U={setCellFocus:E,setColumnHeaderFocus:v,setColumnHeaderFilterFocus:S},W={moveFocusToRelativeCell:R,setColumnGroupHeaderFocus:C,getColumnGroupHeaderFocus:T};useGridApiMethod(d,U,"public"),useGridApiMethod(d,W,"private"),reactExports.useEffect(()=>{const V=ownerDocument(d.current.rootElementRef.current);return V.addEventListener("mouseup",z),()=>{V.removeEventListener("mouseup",z)}},[d,z]),useGridApiEventHandler(d,"columnHeaderBlur",I),useGridApiEventHandler(d,"cellDoubleClick",k),useGridApiEventHandler(d,"cellMouseDown",N),useGridApiEventHandler(d,"cellKeyDown",L),useGridApiEventHandler(d,"cellModeChange",j),useGridApiEventHandler(d,"columnHeaderFocus",D),useGridApiEventHandler(d,"columnGroupHeaderFocus",A),useGridApiEventHandler(d,"rowsSet",Y),useGridApiEventHandler(d,"paginationModelChange",B)};function enrichPageRowsWithPinnedRows(d,m){const g=gridPinnedRowsSelector(d)||{};return[...g.top||[],...m,...g.bottom||[]]}const getLeftColumnIndex=({currentColIndex:d,firstColIndex:m,lastColIndex:g,direction:x})=>{if(x==="rtl"){if(d<g)return d+1}else if(x==="ltr"&&d>m)return d-1;return null},getRightColumnIndex=({currentColIndex:d,firstColIndex:m,lastColIndex:g,direction:x})=>{if(x==="rtl"){if(d>m)return d-1}else if(x==="ltr"&&d<g)return d+1;return null},useGridKeyboardNavigation=(d,m)=>{const g=useGridLogger(d,"useGridKeyboardNavigation"),x=useGridVisibleRows(d,m).rows,b=useTheme$1(),E=reactExports.useMemo(()=>enrichPageRowsWithPinnedRows(d,x),[d,x]),v=m.signature!=="DataGrid"&&m.unstable_headerFilters,S=reactExports.useCallback((z,j,Y="left")=>{const B=gridExpandedSortedRowEntriesSelector(d),U=d.current.unstable_getCellColSpanInfo(j,z);U&&U.spannedByColSpan&&(Y==="left"?z=U.leftVisibleCellIndex:Y==="right"&&(z=U.rightVisibleCellIndex));const W=B.findIndex(J=>J.id===j);g.debug(`Navigating to cell row ${W}, col ${z}`),d.current.scrollToIndexes({colIndex:z,rowIndex:W});const V=d.current.getVisibleColumns()[z].field;d.current.setCellFocus(j,V)},[d,g]),C=reactExports.useCallback((z,j)=>{g.debug(`Navigating to header col ${z}`),d.current.scrollToIndexes({colIndex:z});const Y=d.current.getVisibleColumns()[z].field;d.current.setColumnHeaderFocus(Y,j)},[d,g]),T=reactExports.useCallback((z,j)=>{g.debug(`Navigating to header filter col ${z}`),d.current.scrollToIndexes({colIndex:z});const Y=d.current.getVisibleColumns()[z].field;d.current.setColumnHeaderFilterFocus(Y,j)},[d,g]),R=reactExports.useCallback((z,j,Y)=>{g.debug(`Navigating to header col ${z}`),d.current.scrollToIndexes({colIndex:z});const{field:B}=d.current.getVisibleColumns()[z];d.current.setColumnGroupHeaderFocus(B,j,Y)},[d,g]),k=reactExports.useCallback(z=>{var j;return(j=E[z])==null?void 0:j.id},[E]),L=reactExports.useCallback((z,j)=>{const Y=j.currentTarget.querySelector(`.${gridClasses.columnHeaderTitleContainerContent}`);if(!!Y&&Y.contains(j.target)&&z.field!==GRID_CHECKBOX_SELECTION_COL_DEF.field||!d.current.getRootDimensions())return;const W=d.current.getViewportPageSize(),V=z.field?d.current.getColumnIndex(z.field):0,J=E.length>0?0:null,Q=E.length-1,X=0,re=gridVisibleColumnDefinitionsSelector(d).length-1,ie=gridColumnGroupsHeaderMaxDepthSelector(d);let oe=!0;switch(j.key){case"ArrowDown":{J!==null&&(v?T(V,j):S(V,k(J)));break}case"ArrowRight":{const Z=getRightColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});Z!==null&&C(Z,j);break}case"ArrowLeft":{const Z=getLeftColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});Z!==null&&C(Z,j);break}case"ArrowUp":{ie>0&&R(V,ie-1,j);break}case"PageDown":{J!==null&&Q!==null&&S(V,k(Math.min(J+W,Q)));break}case"Home":{C(X,j);break}case"End":{C(re,j);break}case"Enter":{(j.ctrlKey||j.metaKey)&&d.current.toggleColumnMenu(z.field);break}case" ":break;default:oe=!1}oe&&j.preventDefault()},[d,E.length,v,T,S,k,b.direction,C,R]),D=reactExports.useCallback((z,j)=>{if(!d.current.getRootDimensions())return;const B=unstable_gridHeaderFilteringEditFieldSelector(d)===z.field,U=unstable_gridHeaderFilteringMenuSelector(d)===z.field;if(B||U||!isNavigationKey(j.key))return;const W=d.current.getViewportPageSize(),V=z.field?d.current.getColumnIndex(z.field):0,J=0,Q=E.length-1,X=0,re=gridVisibleColumnDefinitionsSelector(d).length-1;let ie=!0;switch(j.key){case"ArrowDown":{const oe=k(J);oe!=null&&S(V,oe);break}case"ArrowRight":{const oe=getRightColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});oe!==null&&T(oe,j);break}case"ArrowLeft":{const oe=getLeftColumnIndex({currentColIndex:V,firstColIndex:X,lastColIndex:re,direction:b.direction});oe!==null?T(oe,j):d.current.setColumnHeaderFilterFocus(z.field,j);break}case"ArrowUp":{C(V,j);break}case"PageDown":{Q!==null&&S(V,k(Math.min(J+W,Q)));break}case"Home":{T(X,j);break}case"End":{T(re,j);break}case" ":break;default:ie=!1}ie&&j.preventDefault()},[d,E.length,T,b.direction,C,S,k]),A=reactExports.useCallback((z,j)=>{if(!d.current.getRootDimensions())return;const B=unstable_gridFocusColumnGroupHeaderSelector(d);if(B===null)return;const{field:U,depth:W}=B,{fields:V,depth:J,maxDepth:Q}=z,X=d.current.getViewportPageSize(),re=d.current.getColumnIndex(U),ie=U?d.current.getColumnIndex(U):0,oe=0,Z=E.length-1,ee=0,ce=gridVisibleColumnDefinitionsSelector(d).length-1;let fe=!0;switch(j.key){case"ArrowDown":{J===Q-1?C(re,j):R(re,W+1,j);break}case"ArrowUp":{J>0&&R(re,W-1,j);break}case"ArrowRight":{const ae=V.length-V.indexOf(U)-1;re+ae+1<=ce&&R(re+ae+1,W,j);break}case"ArrowLeft":{const ae=V.indexOf(U);re-ae-1>=ee&&R(re-ae-1,W,j);break}case"PageDown":{Z!==null&&S(ie,k(Math.min(oe+X,Z)));break}case"Home":{R(ee,W,j);break}case"End":{R(ce,W,j);break}case" ":break;default:fe=!1}fe&&j.preventDefault()},[d,E.length,C,R,S,k]),I=reactExports.useCallback((z,j)=>{if(isEventTargetInPortal(j))return;const Y=d.current.getCellParams(z.id,z.field);if(Y.cellMode===GridCellModes.Edit||!isNavigationKey(j.key)||!d.current.unstable_applyPipeProcessors("canUpdateFocus",!0,{event:j,cell:Y}))return;const U=d.current.getRootDimensions();if(E.length===0||!U)return;const W=b.direction,V=d.current.getViewportPageSize(),J=z.field?d.current.getColumnIndex(z.field):0,Q=E.findIndex(ee=>ee.id===z.id),X=0,re=E.length-1,ie=0,oe=gridVisibleColumnDefinitionsSelector(d).length-1;let Z=!0;switch(j.key){case"ArrowDown":{Q<re&&S(J,k(Q+1));break}case"ArrowUp":{Q>X?S(J,k(Q-1)):v?T(J,j):C(J,j);break}case"ArrowRight":{const ee=getRightColumnIndex({currentColIndex:J,firstColIndex:ie,lastColIndex:oe,direction:W});ee!==null&&S(ee,k(Q),W==="rtl"?"left":"right");break}case"ArrowLeft":{const ee=getLeftColumnIndex({currentColIndex:J,firstColIndex:ie,lastColIndex:oe,direction:W});ee!==null&&S(ee,k(Q),W==="rtl"?"right":"left");break}case"Tab":{j.shiftKey&&J>ie?S(J-1,k(Q),"left"):!j.shiftKey&&J<oe&&S(J+1,k(Q),"right");break}case" ":{if(z.field===GRID_DETAIL_PANEL_TOGGLE_FIELD)break;const ce=z.colDef;if(ce&&ce.type==="treeDataGroup")break;!j.shiftKey&&Q<re&&S(J,k(Math.min(Q+V,re)));break}case"PageDown":{Q<re&&S(J,k(Math.min(Q+V,re)));break}case"PageUp":{const ee=Math.max(Q-V,X);ee!==Q&&ee>=X?S(J,k(ee)):C(J,j);break}case"Home":{j.ctrlKey||j.metaKey||j.shiftKey?S(ie,k(X)):S(ie,k(Q));break}case"End":{j.ctrlKey||j.metaKey||j.shiftKey?S(oe,k(re)):S(oe,k(Q));break}default:Z=!1}Z&&j.preventDefault()},[d,E,b.direction,S,k,v,T,C]),N=reactExports.useCallback((z,{event:j})=>j.key===" "?!1:z,[]);useGridRegisterPipeProcessor(d,"canStartEditing",N),useGridApiEventHandler(d,"columnHeaderKeyDown",L),useGridApiEventHandler(d,"headerFilterKeyDown",D),useGridApiEventHandler(d,"columnGroupHeaderKeyDown",A),useGridApiEventHandler(d,"cellKeyDown",I)},useGridRowCount=(d,m)=>{var g;const x=useGridLogger(d,"useGridRowCount"),b=useGridSelector(d,gridFilteredTopLevelRowCountSelector),E=useGridSelector(d,gridPaginationRowCountSelector);d.current.registerControlState({stateId:"paginationRowCount",propModel:m.rowCount,propOnChange:m.onRowCountChange,stateSelector:gridPaginationRowCountSelector,changeEvent:"rowCountChange"});const S={setRowCount:reactExports.useCallback(R=>{E!==R&&(x.debug("Setting 'rowCount' to",R),d.current.setState(k=>_extends$1({},k,{pagination:_extends$1({},k.pagination,{rowCount:R})})))},[d,x,E])};useGridApiMethod(d,S,"public");const C=reactExports.useCallback((R,k)=>{var L;const D=gridPaginationRowCountSelector(d);return!k.exportOnlyDirtyModels||m.rowCount!=null||((L=m.initialState)==null||(L=L.pagination)==null?void 0:L.rowCount)!=null?_extends$1({},R,{pagination:_extends$1({},R.pagination,{rowCount:D})}):R},[d,m.rowCount,(g=m.initialState)==null||(g=g.pagination)==null?void 0:g.rowCount]),T=reactExports.useCallback((R,k)=>{var L;const D=(L=k.stateToRestore.pagination)!=null&&L.rowCount?k.stateToRestore.pagination.rowCount:gridPaginationRowCountSelector(d);return d.current.setState(A=>_extends$1({},A,{pagination:_extends$1({},A.pagination,{rowCount:D})})),R},[d]);useGridRegisterPipeProcessor(d,"exportState",C),useGridRegisterPipeProcessor(d,"restoreState",T),reactExports.useEffect(()=>{},[m.rowCount,m.paginationMode]),reactExports.useEffect(()=>{m.paginationMode==="client"?d.current.setRowCount(b):m.rowCount!=null&&d.current.setRowCount(m.rowCount)},[d,b,m.paginationMode,m.rowCount])},paginationStateInitializer=(d,m)=>{var g,x,b,E,v;const S=_extends$1({},getDefaultGridPaginationModel(m.autoPageSize),(g=m.paginationModel)!=null?g:(x=m.initialState)==null||(x=x.pagination)==null?void 0:x.paginationModel);throwIfPageSizeExceedsTheLimit(S.pageSize,m.signature);const C=(b=(E=m.rowCount)!=null?E:(v=m.initialState)==null||(v=v.pagination)==null?void 0:v.rowCount)!=null?b:0;return _extends$1({},d,{pagination:{paginationModel:S,rowCount:C}})},useGridPagination=(d,m)=>{useGridPaginationModel(d,m),useGridRowCount(d,m)},preferencePanelStateInitializer=(d,m)=>{var g,x;return _extends$1({},d,{preferencePanel:(g=(x=m.initialState)==null?void 0:x.preferencePanel)!=null?g:{open:!1}})},useGridPreferencesPanel=(d,m)=>{var g;const x=useGridLogger(d,"useGridPreferencesPanel"),b=reactExports.useRef(),E=reactExports.useRef(),v=reactExports.useCallback(()=>{x.debug("Hiding Preferences Panel");const L=gridPreferencePanelStateSelector(d.current.state);L.openedPanelValue&&d.current.publishEvent("preferencePanelClose",{openedPanelValue:L.openedPanelValue}),d.current.setState(D=>_extends$1({},D,{preferencePanel:{open:!1}})),d.current.forceUpdate()},[d,x]),S=reactExports.useCallback(()=>{E.current=setTimeout(()=>clearTimeout(b.current),0)},[]),C=reactExports.useCallback(()=>{b.current=setTimeout(v,100)},[v]),T=reactExports.useCallback((L,D,A)=>{x.debug("Opening Preferences Panel"),S(),d.current.setState(I=>_extends$1({},I,{preferencePanel:_extends$1({},I.preferencePanel,{open:!0,openedPanelValue:L,panelId:D,labelId:A})})),d.current.publishEvent("preferencePanelOpen",{openedPanelValue:L}),d.current.forceUpdate()},[x,S,d]);useGridApiMethod(d,{showPreferences:T,hidePreferences:C},"public");const R=reactExports.useCallback((L,D)=>{var A;const I=gridPreferencePanelStateSelector(d.current.state);return!D.exportOnlyDirtyModels||((A=m.initialState)==null?void 0:A.preferencePanel)!=null||I.open?_extends$1({},L,{preferencePanel:I}):L},[d,(g=m.initialState)==null?void 0:g.preferencePanel]),k=reactExports.useCallback((L,D)=>{const A=D.stateToRestore.preferencePanel;return A!=null&&d.current.setState(I=>_extends$1({},I,{preferencePanel:A})),L},[d]);useGridRegisterPipeProcessor(d,"exportState",R),useGridRegisterPipeProcessor(d,"restoreState",k),reactExports.useEffect(()=>()=>{clearTimeout(b.current),clearTimeout(E.current)},[])},_excluded$L=["id","field"],_excluded2$8=["id","field"],missingOnProcessRowUpdateErrorWarning$1=buildWarning$1(["MUI: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.","To handle the error pass a callback to the `onProcessRowUpdateError` prop, e.g. `<DataGrid onProcessRowUpdateError={(error) => ...} />`.","For more detail, see http://mui.com/components/data-grid/editing/#server-side-persistence."],"error"),useGridCellEditing=(d,m)=>{const[g,x]=reactExports.useState({}),b=reactExports.useRef(g),E=reactExports.useRef({}),{processRowUpdate:v,onProcessRowUpdateError:S,cellModesModel:C,onCellModesModelChange:T}=m,R=Z=>(...ee)=>{m.editMode===GridEditModes.Cell&&Z(...ee)},k=reactExports.useCallback((Z,ee)=>{const ce=d.current.getCellParams(Z,ee);if(!d.current.isCellEditable(ce))throw new Error(`MUI: The cell with id=${Z} and field=${ee} is not editable.`)},[d]),L=reactExports.useCallback((Z,ee,ce)=>{if(d.current.getCellMode(Z,ee)!==ce)throw new Error(`MUI: The cell with id=${Z} and field=${ee} is not in ${ce} mode.`)},[d]),D=reactExports.useCallback((Z,ee)=>{if(!Z.isEditable||Z.cellMode===GridCellModes.Edit)return;const ce=_extends$1({},Z,{reason:GridCellEditStartReasons.cellDoubleClick});d.current.publishEvent("cellEditStart",ce,ee)},[d]),A=reactExports.useCallback((Z,ee)=>{if(Z.cellMode===GridCellModes.View||d.current.getCellMode(Z.id,Z.field)===GridCellModes.View)return;const ce=_extends$1({},Z,{reason:GridCellEditStopReasons.cellFocusOut});d.current.publishEvent("cellEditStop",ce,ee)},[d]),I=reactExports.useCallback((Z,ee)=>{if(Z.cellMode===GridCellModes.Edit){if(ee.which===229)return;let ce;if(ee.key==="Escape"?ce=GridCellEditStopReasons.escapeKeyDown:ee.key==="Enter"?ce=GridCellEditStopReasons.enterKeyDown:ee.key==="Tab"&&(ce=ee.shiftKey?GridCellEditStopReasons.shiftTabKeyDown:GridCellEditStopReasons.tabKeyDown,ee.preventDefault()),ce){const fe=_extends$1({},Z,{reason:ce});d.current.publishEvent("cellEditStop",fe,ee)}}else if(Z.isEditable){let ce;if(!d.current.unstable_applyPipeProcessors("canStartEditing",!0,{event:ee,cellParams:Z,editMode:"cell"}))return;if(isPrintableKey(ee)?ce=GridCellEditStartReasons.printableKeyDown:(ee.ctrlKey||ee.metaKey)&&ee.key==="v"?ce=GridCellEditStartReasons.pasteKeyDown:ee.key==="Enter"?ce=GridCellEditStartReasons.enterKeyDown:(ee.key==="Delete"||ee.key==="Backspace")&&(ce=GridCellEditStartReasons.deleteKeyDown),ce){const ae=_extends$1({},Z,{reason:ce,key:ee.key});d.current.publishEvent("cellEditStart",ae,ee)}}},[d]),N=reactExports.useCallback(Z=>{const{id:ee,field:ce,reason:fe}=Z,ae={id:ee,field:ce};(fe===GridCellEditStartReasons.printableKeyDown||fe===GridCellEditStartReasons.deleteKeyDown||fe===GridCellEditStartReasons.pasteKeyDown)&&(ae.deleteValue=!0),d.current.startCellEditMode(ae)},[d]),z=reactExports.useCallback(Z=>{const{id:ee,field:ce,reason:fe}=Z;d.current.runPendingEditCellValueMutation(ee,ce);let ae;fe===GridCellEditStopReasons.enterKeyDown?ae="below":fe===GridCellEditStopReasons.tabKeyDown?ae="right":fe===GridCellEditStopReasons.shiftTabKeyDown&&(ae="left");const ue=fe==="escapeKeyDown";d.current.stopCellEditMode({id:ee,field:ce,ignoreModifications:ue,cellToFocusAfter:ae})},[d]);useGridApiEventHandler(d,"cellDoubleClick",R(D)),useGridApiEventHandler(d,"cellFocusOut",R(A)),useGridApiEventHandler(d,"cellKeyDown",R(I)),useGridApiEventHandler(d,"cellEditStart",R(N)),useGridApiEventHandler(d,"cellEditStop",R(z)),useGridApiOptionHandler(d,"cellEditStart",m.onCellEditStart),useGridApiOptionHandler(d,"cellEditStop",m.onCellEditStop);const j=reactExports.useCallback((Z,ee)=>{const ce=gridEditRowsStateSelector(d.current.state);return ce[Z]&&ce[Z][ee]?GridCellModes.Edit:GridCellModes.View},[d]),Y=useEventCallback(Z=>{const ee=Z!==m.cellModesModel;T&&ee&&T(Z,{}),!(m.cellModesModel&&ee)&&(x(Z),b.current=Z,d.current.publishEvent("cellModesModelChange",Z))}),B=reactExports.useCallback((Z,ee,ce)=>{const fe=_extends$1({},b.current);if(ce!==null)fe[Z]=_extends$1({},fe[Z],{[ee]:_extends$1({},ce)});else{const ae=fe[Z],ue=_objectWithoutPropertiesLoose(ae,[ee].map(toPropertyKey));fe[Z]=ue,Object.keys(fe[Z]).length===0&&delete fe[Z]}Y(fe)},[Y]),U=reactExports.useCallback((Z,ee,ce)=>{d.current.setState(fe=>{const ae=_extends$1({},fe.editRows);return ce!==null?ae[Z]=_extends$1({},ae[Z],{[ee]:_extends$1({},ce)}):(delete ae[Z][ee],Object.keys(ae[Z]).length===0&&delete ae[Z]),_extends$1({},fe,{editRows:ae})}),d.current.forceUpdate()},[d]),W=reactExports.useCallback(Z=>{const{id:ee,field:ce}=Z,fe=_objectWithoutPropertiesLoose(Z,_excluded$L);k(ee,ce),L(ee,ce,GridCellModes.View),B(ee,ce,_extends$1({mode:GridCellModes.Edit},fe))},[k,L,B]),V=useEventCallback(Z=>{const{id:ee,field:ce,deleteValue:fe,initialValue:ae}=Z;let ue=d.current.getCellValue(ee,ce);(fe||ae)&&(ue=fe?"":ae),U(ee,ce,{value:ue,error:!1,isProcessingProps:!1}),d.current.setCellFocus(ee,ce)}),J=reactExports.useCallback(Z=>{const{id:ee,field:ce}=Z,fe=_objectWithoutPropertiesLoose(Z,_excluded2$8);L(ee,ce,GridCellModes.Edit),B(ee,ce,_extends$1({mode:GridCellModes.View},fe))},[L,B]),Q=useEventCallback(Z=>yt(void 0,null,function*(){const{id:ee,field:ce,ignoreModifications:fe,cellToFocusAfter:ae="none"}=Z;L(ee,ce,GridCellModes.Edit),d.current.runPendingEditCellValueMutation(ee,ce);const ue=()=>{U(ee,ce,null),B(ee,ce,null),ae!=="none"&&d.current.moveFocusToRelativeCell(ee,ce,ae)};if(fe){ue();return}const pe=gridEditRowsStateSelector(d.current.state),{error:ge,isProcessingProps:ye}=pe[ee][ce];if(ge||ye){E.current[ee][ce].mode=GridCellModes.Edit,B(ee,ce,{mode:GridCellModes.Edit});return}const Ee=d.current.getRowWithUpdatedValuesFromCellEditing(ee,ce);if(v){const ve=Se=>{E.current[ee][ce].mode=GridCellModes.Edit,B(ee,ce,{mode:GridCellModes.Edit}),S?S(Se):missingOnProcessRowUpdateErrorWarning$1()};try{const Se=d.current.getRow(ee);Promise.resolve(v(Ee,Se)).then($e=>{d.current.updateRows([$e]),ue()}).catch(ve)}catch(Se){ve(Se)}}else d.current.updateRows([Ee]),ue()})),X=reactExports.useCallback(Z=>yt(void 0,null,function*(){var ee;const{id:ce,field:fe,value:ae,debounceMs:ue,unstable_skipValueParser:pe}=Z;k(ce,fe),L(ce,fe,GridCellModes.Edit);const ge=d.current.getColumn(fe),ye=d.current.getRow(ce);let Ee=ae;ge.valueParser&&!pe&&(Ee=ge.valueParser(ae,d.current.getCellParams(ce,fe)));let ve=gridEditRowsStateSelector(d.current.state),Se=_extends$1({},ve[ce][fe],{value:Ee,changeReason:ue?"debouncedSetEditCellValue":"setEditCellValue"});if(ge.preProcessEditCellProps){const $e=ae!==ve[ce][fe].value;Se=_extends$1({},Se,{isProcessingProps:!0}),U(ce,fe,Se),Se=yield Promise.resolve(ge.preProcessEditCellProps({id:ce,row:ye,props:Se,hasChanged:$e}))}return d.current.getCellMode(ce,fe)===GridCellModes.View?!1:(ve=gridEditRowsStateSelector(d.current.state),Se=_extends$1({},Se,{isProcessingProps:!1}),Se.value=ge.preProcessEditCellProps?ve[ce][fe].value:Ee,U(ce,fe,Se),ve=gridEditRowsStateSelector(d.current.state),!((ee=ve[ce])!=null&&(ee=ee[fe])!=null&&ee.error))}),[d,k,L,U]),re=reactExports.useCallback((Z,ee)=>{const ce=d.current.getColumn(ee),fe=gridEditRowsStateSelector(d.current.state),ae=d.current.getRow(Z);if(!fe[Z]||!fe[Z][ee])return d.current.getRow(Z);const{value:ue}=fe[Z][ee];return ce.valueSetter?ce.valueSetter({value:ue,row:ae}):_extends$1({},ae,{[ee]:ue})},[d]),ie={getCellMode:j,startCellEditMode:W,stopCellEditMode:J},oe={setCellEditingEditCellValue:X,getRowWithUpdatedValuesFromCellEditing:re};useGridApiMethod(d,ie,"public"),useGridApiMethod(d,oe,"private"),reactExports.useEffect(()=>{C&&Y(C)},[C,Y]),useEnhancedEffect(()=>{const Z=gridRowsDataRowIdToIdLookupSelector(d),ee=E.current;E.current=deepClone(g),Object.entries(g).forEach(([ce,fe])=>{Object.entries(fe).forEach(([ae,ue])=>{var pe,ge;const ye=((pe=ee[ce])==null||(pe=pe[ae])==null?void 0:pe.mode)||GridCellModes.View,Ee=(ge=Z[ce])!=null?ge:ce;ue.mode===GridCellModes.Edit&&ye===GridCellModes.View?V(_extends$1({id:Ee,field:ae},ue)):ue.mode===GridCellModes.View&&ye===GridCellModes.Edit&&Q(_extends$1({id:Ee,field:ae},ue))})})},[d,g,V,Q])},_excluded$K=["id"],_excluded2$7=["id"],missingOnProcessRowUpdateErrorWarning=buildWarning$1(["MUI: A call to `processRowUpdate` threw an error which was not handled because `onProcessRowUpdateError` is missing.","To handle the error pass a callback to the `onProcessRowUpdateError` prop, e.g. `<DataGrid onProcessRowUpdateError={(error) => ...} />`.","For more detail, see http://mui.com/components/data-grid/editing/#server-side-persistence."],"error"),useGridRowEditing=(d,m)=>{const[g,x]=reactExports.useState({}),b=reactExports.useRef(g),E=reactExports.useRef({}),v=reactExports.useRef(null),S=reactExports.useRef(null),{processRowUpdate:C,onProcessRowUpdateError:T,rowModesModel:R,onRowModesModelChange:k}=m,L=ae=>(...ue)=>{m.editMode===GridEditModes.Row&&ae(...ue)},D=reactExports.useCallback((ae,ue)=>{const pe=d.current.getCellParams(ae,ue);if(!d.current.isCellEditable(pe))throw new Error(`MUI: The cell with id=${ae} and field=${ue} is not editable.`)},[d]),A=reactExports.useCallback((ae,ue)=>{if(d.current.getRowMode(ae)!==ue)throw new Error(`MUI: The row with id=${ae} is not in ${ue} mode.`)},[d]),I=reactExports.useCallback((ae,ue)=>{if(!ae.isEditable||d.current.getRowMode(ae.id)===GridRowModes.Edit)return;const pe=d.current.getRowParams(ae.id),ge=_extends$1({},pe,{field:ae.field,reason:GridRowEditStartReasons.cellDoubleClick});d.current.publishEvent("rowEditStart",ge,ue)},[d]),N=reactExports.useCallback(ae=>{S.current=ae},[]),z=reactExports.useCallback((ae,ue)=>{ae.isEditable&&d.current.getRowMode(ae.id)!==GridRowModes.View&&(S.current=null,v.current=setTimeout(()=>{var pe;if(v.current=null,((pe=S.current)==null?void 0:pe.id)!==ae.id){if(!d.current.getRow(ae.id)||d.current.getRowMode(ae.id)===GridRowModes.View)return;const ge=d.current.getRowParams(ae.id),ye=_extends$1({},ge,{field:ae.field,reason:GridRowEditStopReasons.rowFocusOut});d.current.publishEvent("rowEditStop",ye,ue)}}))},[d]);reactExports.useEffect(()=>()=>{clearTimeout(v.current)},[]);const j=reactExports.useCallback((ae,ue)=>{if(ae.cellMode===GridRowModes.Edit){if(ue.which===229)return;let pe;if(ue.key==="Escape")pe=GridRowEditStopReasons.escapeKeyDown;else if(ue.key==="Enter")pe=GridRowEditStopReasons.enterKeyDown;else if(ue.key==="Tab"){const ge=gridVisibleColumnFieldsSelector(d).filter(ye=>d.current.getColumn(ye).type===GRID_ACTIONS_COLUMN_TYPE?!0:d.current.isCellEditable(d.current.getCellParams(ae.id,ye)));if(ue.shiftKey?ae.field===ge[0]&&(pe=GridRowEditStopReasons.shiftTabKeyDown):ae.field===ge[ge.length-1]&&(pe=GridRowEditStopReasons.tabKeyDown),ue.preventDefault(),!pe){const ye=ge.findIndex(ve=>ve===ae.field),Ee=ge[ue.shiftKey?ye-1:ye+1];d.current.setCellFocus(ae.id,Ee)}}if(pe){const ge=_extends$1({},d.current.getRowParams(ae.id),{reason:pe,field:ae.field});d.current.publishEvent("rowEditStop",ge,ue)}}else if(ae.isEditable){let pe;if(!d.current.unstable_applyPipeProcessors("canStartEditing",!0,{event:ue,cellParams:ae,editMode:"row"}))return;if(isPrintableKey(ue)||(ue.ctrlKey||ue.metaKey)&&ue.key==="v"?pe=GridRowEditStartReasons.printableKeyDown:ue.key==="Enter"?pe=GridRowEditStartReasons.enterKeyDown:(ue.key==="Delete"||ue.key==="Backspace")&&(pe=GridRowEditStartReasons.deleteKeyDown),pe){const ye=d.current.getRowParams(ae.id),Ee=_extends$1({},ye,{field:ae.field,reason:pe});d.current.publishEvent("rowEditStart",Ee,ue)}}},[d]),Y=reactExports.useCallback(ae=>{const{id:ue,field:pe,reason:ge}=ae,ye={id:ue,fieldToFocus:pe};(ge===GridRowEditStartReasons.printableKeyDown||ge===GridRowEditStartReasons.deleteKeyDown)&&(ye.deleteValue=!!pe),d.current.startRowEditMode(ye)},[d]),B=reactExports.useCallback(ae=>{const{id:ue,reason:pe,field:ge}=ae;d.current.runPendingEditCellValueMutation(ue);let ye;pe===GridRowEditStopReasons.enterKeyDown?ye="below":pe===GridRowEditStopReasons.tabKeyDown?ye="right":pe===GridRowEditStopReasons.shiftTabKeyDown&&(ye="left");const Ee=pe==="escapeKeyDown";d.current.stopRowEditMode({id:ue,ignoreModifications:Ee,field:ge,cellToFocusAfter:ye})},[d]);useGridApiEventHandler(d,"cellDoubleClick",L(I)),useGridApiEventHandler(d,"cellFocusIn",L(N)),useGridApiEventHandler(d,"cellFocusOut",L(z)),useGridApiEventHandler(d,"cellKeyDown",L(j)),useGridApiEventHandler(d,"rowEditStart",L(Y)),useGridApiEventHandler(d,"rowEditStop",L(B)),useGridApiOptionHandler(d,"rowEditStart",m.onRowEditStart),useGridApiOptionHandler(d,"rowEditStop",m.onRowEditStop);const U=reactExports.useCallback(ae=>{if(m.editMode===GridEditModes.Cell)return GridRowModes.View;const ue=gridEditRowsStateSelector(d.current.state);return ue[ae]&&Object.keys(ue[ae]).length>0?GridRowModes.Edit:GridRowModes.View},[d,m.editMode]),W=useEventCallback(ae=>{const ue=ae!==m.rowModesModel;k&&ue&&k(ae,{}),!(m.rowModesModel&&ue)&&(x(ae),b.current=ae,d.current.publishEvent("rowModesModelChange",ae))}),V=reactExports.useCallback((ae,ue)=>{const pe=_extends$1({},b.current);ue!==null?pe[ae]=_extends$1({},ue):delete pe[ae],W(pe)},[W]),J=reactExports.useCallback((ae,ue)=>{d.current.setState(pe=>{const ge=_extends$1({},pe.editRows);return ue!==null?ge[ae]=ue:delete ge[ae],_extends$1({},pe,{editRows:ge})}),d.current.forceUpdate()},[d]),Q=reactExports.useCallback((ae,ue,pe)=>{d.current.setState(ge=>{const ye=_extends$1({},ge.editRows);return pe!==null?ye[ae]=_extends$1({},ye[ae],{[ue]:_extends$1({},pe)}):(delete ye[ae][ue],Object.keys(ye[ae]).length===0&&delete ye[ae]),_extends$1({},ge,{editRows:ye})}),d.current.forceUpdate()},[d]),X=reactExports.useCallback(ae=>{const{id:ue}=ae,pe=_objectWithoutPropertiesLoose(ae,_excluded$K);A(ue,GridRowModes.View),V(ue,_extends$1({mode:GridRowModes.Edit},pe))},[A,V]),re=useEventCallback(ae=>{const{id:ue,fieldToFocus:pe,deleteValue:ge,initialValue:ye}=ae,ve=gridColumnFieldsSelector(d).reduce((Se,$e)=>{if(!d.current.getCellParams(ue,$e).isEditable)return Se;let Re=d.current.getCellValue(ue,$e);return pe===$e&&(ge||ye)&&(Re=ge?"":ye),Se[$e]={value:Re,error:!1,isProcessingProps:!1},Se},{});J(ue,ve),pe&&d.current.setCellFocus(ue,pe)}),ie=reactExports.useCallback(ae=>{const{id:ue}=ae,pe=_objectWithoutPropertiesLoose(ae,_excluded2$7);A(ue,GridRowModes.Edit),V(ue,_extends$1({mode:GridRowModes.View},pe))},[A,V]),oe=useEventCallback(ae=>{const{id:ue,ignoreModifications:pe,field:ge,cellToFocusAfter:ye="none"}=ae;d.current.runPendingEditCellValueMutation(ue);const Ee=()=>{ye!=="none"&&ge&&d.current.moveFocusToRelativeCell(ue,ge,ye),J(ue,null),V(ue,null)};if(pe){Ee();return}const ve=gridEditRowsStateSelector(d.current.state),Se=d.current.getRow(ue);if(Object.values(ve[ue]).some(De=>De.isProcessingProps)){E.current[ue].mode=GridRowModes.Edit;return}if(Object.values(ve[ue]).some(De=>De.error)){E.current[ue].mode=GridRowModes.Edit,V(ue,{mode:GridRowModes.Edit});return}const Re=d.current.getRowWithUpdatedValuesFromRowEditing(ue);if(C){const De=Be=>{E.current[ue].mode=GridRowModes.Edit,V(ue,{mode:GridRowModes.Edit}),T?T(Be):missingOnProcessRowUpdateErrorWarning()};try{Promise.resolve(C(Re,Se)).then(Be=>{d.current.updateRows([Be]),Ee()}).catch(De)}catch(Be){De(Be)}}else d.current.updateRows([Re]),Ee()}),Z=reactExports.useCallback(ae=>{const{id:ue,field:pe,value:ge,debounceMs:ye,unstable_skipValueParser:Ee}=ae;D(ue,pe);const ve=d.current.getColumn(pe),Se=d.current.getRow(ue);let $e=ge;ve.valueParser&&!Ee&&($e=ve.valueParser(ge,d.current.getCellParams(ue,pe)));let Me=gridEditRowsStateSelector(d.current.state),Re=_extends$1({},Me[ue][pe],{value:$e,changeReason:ye?"debouncedSetEditCellValue":"setEditCellValue"});return ve.preProcessEditCellProps||Q(ue,pe,Re),new Promise(De=>{const Be=[];if(ve.preProcessEditCellProps){const Le=Re.value!==Me[ue][pe].value;Re=_extends$1({},Re,{isProcessingProps:!0}),Q(ue,pe,Re);const Ge=Me[ue],Ie=_objectWithoutPropertiesLoose(Ge,[pe].map(toPropertyKey)),Ye=Promise.resolve(ve.preProcessEditCellProps({id:ue,row:Se,props:Re,hasChanged:Le,otherFieldsProps:Ie})).then(He=>{if(d.current.getRowMode(ue)===GridRowModes.View){De(!1);return}Me=gridEditRowsStateSelector(d.current.state),He=_extends$1({},He,{isProcessingProps:!1}),He.value=ve.preProcessEditCellProps?Me[ue][pe].value:$e,Q(ue,pe,He)});Be.push(Ye)}Object.entries(Me[ue]).forEach(([Le,Ge])=>{if(Le===pe)return;const Ie=d.current.getColumn(Le);if(!Ie.preProcessEditCellProps)return;Ge=_extends$1({},Ge,{isProcessingProps:!0}),Q(ue,Le,Ge),Me=gridEditRowsStateSelector(d.current.state);const Ye=Me[ue],He=_objectWithoutPropertiesLoose(Ye,[Le].map(toPropertyKey)),Ve=Promise.resolve(Ie.preProcessEditCellProps({id:ue,row:Se,props:Ge,hasChanged:!1,otherFieldsProps:He})).then(rt=>{if(d.current.getRowMode(ue)===GridRowModes.View){De(!1);return}rt=_extends$1({},rt,{isProcessingProps:!1}),Q(ue,Le,rt)});Be.push(Ve)}),Promise.all(Be).then(()=>{d.current.getRowMode(ue)===GridRowModes.Edit?(Me=gridEditRowsStateSelector(d.current.state),De(!Me[ue][pe].error)):De(!1)})})},[d,D,Q]),ee=reactExports.useCallback(ae=>{const ue=gridEditRowsStateSelector(d.current.state),pe=d.current.getRow(ae);if(!ue[ae])return d.current.getRow(ae);let ge=_extends$1({},pe);return Object.entries(ue[ae]).forEach(([ye,Ee])=>{const ve=d.current.getColumn(ye);ve.valueSetter?ge=ve.valueSetter({value:Ee.value,row:ge}):ge[ye]=Ee.value}),ge},[d]),ce={getRowMode:U,startRowEditMode:X,stopRowEditMode:ie},fe={setRowEditingEditCellValue:Z,getRowWithUpdatedValuesFromRowEditing:ee};useGridApiMethod(d,ce,"public"),useGridApiMethod(d,fe,"private"),reactExports.useEffect(()=>{R&&W(R)},[R,W]),useEnhancedEffect(()=>{const ae=gridRowsDataRowIdToIdLookupSelector(d),ue=E.current;E.current=deepClone(g),Object.entries(g).forEach(([pe,ge])=>{var ye,Ee;const ve=((ye=ue[pe])==null?void 0:ye.mode)||GridRowModes.View,Se=(Ee=ae[pe])!=null?Ee:pe;ge.mode===GridRowModes.Edit&&ve===GridRowModes.View?re(_extends$1({id:Se},ge)):ge.mode===GridRowModes.View&&ve===GridRowModes.Edit&&oe(_extends$1({id:Se},ge))})},[d,g,re,oe])},editingStateInitializer=d=>_extends$1({},d,{editRows:{}}),useGridEditing=(d,m)=>{useGridCellEditing(d,m),useGridRowEditing(d,m);const g=reactExports.useRef({}),{isCellEditable:x}=m,b=reactExports.useCallback(L=>isAutoGeneratedRow(L.rowNode)||!L.colDef.editable||!L.colDef.renderEditCell?!1:x?x(L):!0,[x]),E=(L,D,A,I)=>{if(!A){I();return}if(g.current[L]||(g.current[L]={}),g.current[L][D]){const[j]=g.current[L][D];clearTimeout(j)}const N=()=>{const[j]=g.current[L][D];clearTimeout(j),I(),delete g.current[L][D]},z=setTimeout(()=>{I(),delete g.current[L][D]},A);g.current[L][D]=[z,N]};reactExports.useEffect(()=>{const L=g.current;return()=>{Object.entries(L).forEach(([D,A])=>{Object.keys(A).forEach(I=>{const[N]=L[D][I];clearTimeout(N),delete L[D][I]})})}},[]);const v=reactExports.useCallback((L,D)=>{if(g.current[L]){if(!D)Object.keys(g.current[L]).forEach(A=>{const[,I]=g.current[L][A];I()});else if(g.current[L][D]){const[,A]=g.current[L][D];A()}}},[]),S=reactExports.useCallback(L=>{const{id:D,field:A,debounceMs:I}=L;return new Promise(N=>{E(D,A,I,()=>yt(void 0,null,function*(){const z=m.editMode===GridEditModes.Row?d.current.setRowEditingEditCellValue:d.current.setCellEditingEditCellValue;if(d.current.getCellMode(D,A)===GridCellModes.Edit){const j=yield z(L);N(j)}}))})},[d,m.editMode]),C=reactExports.useCallback((L,D)=>m.editMode===GridEditModes.Cell?d.current.getRowWithUpdatedValuesFromCellEditing(L,D):d.current.getRowWithUpdatedValuesFromRowEditing(L),[d,m.editMode]),T=reactExports.useCallback((L,D)=>{var A,I;return(A=(I=gridEditRowsStateSelector(d.current.state)[L])==null?void 0:I[D])!=null?A:null},[d]),R={isCellEditable:b,setEditCellValue:S,getRowWithUpdatedValues:C,unstable_getEditCellMeta:T},k={runPendingEditCellValueMutation:v};useGridApiMethod(d,R,"public"),useGridApiMethod(d,k,"private")},rowsStateInitializer=(d,m,g)=>(g.current.caches.rows=createRowsInternalCache({rows:m.rows,getRowId:m.getRowId,loading:m.loading,rowCount:m.rowCount}),_extends$1({},d,{rows:getRowsStateFromCache({apiRef:g,rowCountProp:m.rowCount,loadingProp:m.loading,previousTree:null,previousTreeDepths:null})})),useGridRows=(d,m)=>{const g=useGridLogger(d,"useGridRows"),x=useGridVisibleRows(d,m),b=reactExports.useRef(Date.now()),E=useTimeout(),v=reactExports.useCallback(oe=>{const Z=gridRowsLookupSelector(d)[oe];if(Z)return Z;const ee=d.current.getRowNode(oe);return ee&&isAutoGeneratedRow(ee)?{[GRID_ID_AUTOGENERATED]:oe}:null},[d]),S=m.getRowId,C=reactExports.useCallback(oe=>GRID_ID_AUTOGENERATED in oe?oe[GRID_ID_AUTOGENERATED]:S?S(oe):oe.id,[S]),T=reactExports.useMemo(()=>x.rows.reduce((oe,{id:Z},ee)=>(oe[Z]=ee,oe),{}),[x.rows]),R=reactExports.useCallback(({cache:oe,throttle:Z})=>{const ee=()=>{b.current=Date.now(),d.current.setState(fe=>_extends$1({},fe,{rows:getRowsStateFromCache({apiRef:d,rowCountProp:m.rowCount,loadingProp:m.loading,previousTree:gridRowTreeSelector(d),previousTreeDepths:gridRowTreeDepthsSelector(d)})})),d.current.publishEvent("rowsSet"),d.current.forceUpdate()};if(E.clear(),d.current.caches.rows=oe,!Z){ee();return}const ce=m.throttleRowsMs-(Date.now()-b.current);if(ce>0){E.start(ce,ee);return}ee()},[m.throttleRowsMs,m.rowCount,m.loading,d,E]),k=reactExports.useCallback(oe=>{g.debug(`Updating all rows, new length ${oe.length}`);const Z=createRowsInternalCache({rows:oe,getRowId:m.getRowId,loading:m.loading,rowCount:m.rowCount}),ee=d.current.caches.rows;Z.rowsBeforePartialUpdates=ee.rowsBeforePartialUpdates,R({cache:Z,throttle:!0})},[g,m.getRowId,m.loading,m.rowCount,R,d]),L=reactExports.useCallback(oe=>{if(m.signature===GridSignature.DataGrid&&oe.length>1)throw new Error(["MUI: You can't update several rows at once in `apiRef.current.updateRows` on the DataGrid.","You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature."].join(`
606
606
  `));const Z=[];oe.forEach(ce=>{const fe=getRowIdFromRowModel(ce,m.getRowId,"A row was provided without id when calling updateRows():"),ae=d.current.getRowNode(fe);if((ae==null?void 0:ae.type)==="pinnedRow"){const ue=d.current.caches.pinnedRows,pe=ue.idLookup[fe];pe&&(ue.idLookup[fe]=_extends$1({},pe,ce))}else Z.push(ce)});const ee=updateCacheWithNewRows({updates:Z,getRowId:m.getRowId,previousCache:d.current.caches.rows});R({cache:ee,throttle:!0})},[m.signature,m.getRowId,R,d]),D=reactExports.useCallback(()=>{const oe=gridDataRowIdsSelector(d),Z=gridRowsLookupSelector(d);return new Map(oe.map(ee=>{var ce;return[ee,(ce=Z[ee])!=null?ce:{}]}))},[d]),A=reactExports.useCallback(()=>gridRowCountSelector(d),[d]),I=reactExports.useCallback(()=>gridDataRowIdsSelector(d),[d]),N=reactExports.useCallback(oe=>T[oe],[T]),z=reactExports.useCallback((oe,Z)=>{const ee=d.current.getRowNode(oe);if(!ee)throw new Error(`MUI: No row with id #${oe} found`);if(ee.type!=="group")throw new Error("MUI: Only group nodes can be expanded or collapsed");const ce=_extends$1({},ee,{childrenExpanded:Z});d.current.setState(fe=>_extends$1({},fe,{rows:_extends$1({},fe.rows,{tree:_extends$1({},fe.rows.tree,{[oe]:ce})})})),d.current.forceUpdate(),d.current.publishEvent("rowExpansionChange",ce)},[d]),j=reactExports.useCallback(oe=>{var Z;return(Z=gridRowTreeSelector(d)[oe])!=null?Z:null},[d]),Y=reactExports.useCallback(({skipAutoGeneratedRows:oe=!0,groupId:Z,applySorting:ee,applyFiltering:ce})=>{const fe=gridRowTreeSelector(d);let ae;if(ee){const ue=fe[Z];if(!ue)return[];const pe=gridSortedRowIdsSelector(d);ae=[];const ge=pe.findIndex(ye=>ye===Z)+1;for(let ye=ge;ye<pe.length&&fe[pe[ye]].depth>ue.depth;ye+=1){const Ee=pe[ye];(!oe||!isAutoGeneratedRow(fe[Ee]))&&ae.push(Ee)}}else ae=getTreeNodeDescendants(fe,Z,oe);if(ce){const ue=gridFilteredRowsLookupSelector(d);ae=ae.filter(pe=>ue[pe]!==!1)}return ae},[d]),B=reactExports.useCallback((oe,Z)=>{const ee=d.current.getRowNode(oe);if(!ee)throw new Error(`MUI: No row with id #${oe} found`);if(ee.parent!==GRID_ROOT_GROUP_ID)throw new Error("MUI: The row reordering do not support reordering of grouped rows yet");if(ee.type!=="leaf")throw new Error("MUI: The row reordering do not support reordering of footer or grouping rows");d.current.setState(ce=>{const fe=gridRowTreeSelector(ce,d.current.instanceId)[GRID_ROOT_GROUP_ID],ae=fe.children,ue=ae.findIndex(ge=>ge===oe);if(ue===-1||ue===Z)return ce;g.debug(`Moving row ${oe} to index ${Z}`);const pe=[...ae];return pe.splice(Z,0,pe.splice(ue,1)[0]),_extends$1({},ce,{rows:_extends$1({},ce.rows,{tree:_extends$1({},ce.rows.tree,{[GRID_ROOT_GROUP_ID]:_extends$1({},fe,{children:pe})})})})}),d.current.publishEvent("rowsSet")},[d,g]),U=reactExports.useCallback((oe,Z)=>{if(m.signature===GridSignature.DataGrid&&Z.length>1)throw new Error(["MUI: You can't replace rows using `apiRef.current.unstable_replaceRows` on the DataGrid.","You need to upgrade to DataGridPro or DataGridPremium component to unlock this feature."].join(`
607
607
  `));if(Z.length===0)return;if(gridRowMaximumTreeDepthSelector(d)>1)throw new Error("`apiRef.current.unstable_replaceRows` is not compatible with tree data and row grouping");const ce=_extends$1({},gridRowTreeSelector(d)),fe=_extends$1({},gridRowsLookupSelector(d)),ae=_extends$1({},gridRowsDataRowIdToIdLookupSelector(d)),ue=ce[GRID_ROOT_GROUP_ID],pe=[...ue.children],ge=new Set;for(let Ee=0;Ee<Z.length;Ee+=1){const ve=Z[Ee],Se=getRowIdFromRowModel(ve,m.getRowId,"A row was provided without id when calling replaceRows()."),[$e]=pe.splice(oe+Ee,1,Se);ge.has($e)||(delete fe[$e],delete ae[$e],delete ce[$e]);const Me={id:Se,depth:0,parent:GRID_ROOT_GROUP_ID,type:"leaf",groupingKey:null};fe[Se]=ve,ae[Se]=Se,ce[Se]=Me,ge.add(Se)}ce[GRID_ROOT_GROUP_ID]=_extends$1({},ue,{children:pe});const ye=pe.filter(Ee=>ce[Ee].type==="leaf");d.current.caches.rows.dataRowIdToModelLookup=fe,d.current.caches.rows.dataRowIdToIdLookup=ae,d.current.setState(Ee=>_extends$1({},Ee,{rows:_extends$1({},Ee.rows,{dataRowIdToModelLookup:fe,dataRowIdToIdLookup:ae,dataRowIds:ye,tree:ce})})),d.current.publishEvent("rowsSet")},[d,m.signature,m.getRowId]),W={getRow:v,getRowId:C,getRowModels:D,getRowsCount:A,getAllRowIds:I,setRows:k,updateRows:L,getRowNode:j,getRowIndexRelativeToVisibleRows:N,unstable_replaceRows:U},V={setRowIndex:B,setRowChildrenExpansion:z,getRowGroupChildren:Y},J=reactExports.useCallback(()=>{g.info("Row grouping pre-processing have changed, regenerating the row tree");let oe;d.current.caches.rows.rowsBeforePartialUpdates===m.rows?oe=_extends$1({},d.current.caches.rows,{updates:{type:"full",rows:gridDataRowIdsSelector(d)}}):oe=createRowsInternalCache({rows:m.rows,getRowId:m.getRowId,loading:m.loading,rowCount:m.rowCount}),R({cache:oe,throttle:!1})},[g,d,m.rows,m.getRowId,m.loading,m.rowCount,R]),Q=reactExports.useCallback(oe=>{oe==="rowTreeCreation"&&J()},[J]),X=reactExports.useCallback(()=>{d.current.getActiveStrategy("rowTree")!==gridRowGroupingNameSelector(d)&&J()},[d,J]);useGridApiEventHandler(d,"activeStrategyProcessorChange",Q),useGridApiEventHandler(d,"strategyAvailabilityChange",X);const re=reactExports.useCallback(()=>{d.current.setState(oe=>{const Z=d.current.unstable_applyPipeProcessors("hydrateRows",{tree:gridRowTreeSelector(oe,d.current.instanceId),treeDepths:gridRowTreeDepthsSelector(oe,d.current.instanceId),dataRowIds:gridDataRowIdsSelector(oe,d.current.instanceId),dataRowIdToModelLookup:gridRowsLookupSelector(oe,d.current.instanceId),dataRowIdToIdLookup:gridRowsDataRowIdToIdLookupSelector(oe,d.current.instanceId)});return _extends$1({},oe,{rows:_extends$1({},oe.rows,Z,{totalTopLevelRowCount:getTopLevelRowCount({tree:Z.tree,rowCountProp:m.rowCount})})})}),d.current.publishEvent("rowsSet"),d.current.forceUpdate()},[d,m.rowCount]);useGridRegisterPipeApplier(d,"hydrateRows",re),useGridApiMethod(d,W,"public"),useGridApiMethod(d,V,m.signature===GridSignature.DataGrid?"private":"public");const ie=reactExports.useRef(!0);reactExports.useEffect(()=>{if(ie.current){ie.current=!1;return}const oe=d.current.caches.rows.rowsBeforePartialUpdates===m.rows,Z=d.current.caches.rows.loadingPropBeforePartialUpdates===m.loading,ee=d.current.caches.rows.rowCountPropBeforePartialUpdates===m.rowCount;if(oe){Z||(d.current.setState(ce=>_extends$1({},ce,{rows:_extends$1({},ce.rows,{loading:m.loading})})),d.current.caches.rows.loadingPropBeforePartialUpdates=m.loading,d.current.forceUpdate()),ee||(d.current.setState(ce=>_extends$1({},ce,{rows:_extends$1({},ce.rows,{totalRowCount:Math.max(m.rowCount||0,ce.rows.totalRowCount),totalTopLevelRowCount:Math.max(m.rowCount||0,ce.rows.totalTopLevelRowCount)})})),d.current.caches.rows.rowCountPropBeforePartialUpdates=m.rowCount,d.current.forceUpdate());return}g.debug(`Updating all rows, new length ${m.rows.length}`),R({cache:createRowsInternalCache({rows:m.rows,getRowId:m.getRowId,loading:m.loading,rowCount:m.rowCount}),throttle:!1})},[m.rows,m.rowCount,m.getRowId,m.loading,g,R,d])},createFlatRowTree=d=>{const m={[GRID_ROOT_GROUP_ID]:_extends$1({},buildRootGroup(),{children:d})};for(let g=0;g<d.length;g+=1){const x=d[g];m[x]={id:x,depth:0,parent:GRID_ROOT_GROUP_ID,type:"leaf",groupingKey:null}}return{groupingName:GRID_DEFAULT_STRATEGY,tree:m,treeDepths:{0:d.length},dataRowIds:d}},updateFlatRowTree=({previousTree:d,actions:m})=>{const g=_extends$1({},d),x={};for(let v=0;v<m.remove.length;v+=1){const S=m.remove[v];x[S]=!0,delete g[S]}for(let v=0;v<m.insert.length;v+=1){const S=m.insert[v];g[S]={id:S,depth:0,parent:GRID_ROOT_GROUP_ID,type:"leaf",groupingKey:null}}const b=g[GRID_ROOT_GROUP_ID];let E=[...b.children,...m.insert];return Object.values(x).length&&(E=E.filter(v=>!x[v])),g[GRID_ROOT_GROUP_ID]=_extends$1({},b,{children:E}),{groupingName:GRID_DEFAULT_STRATEGY,tree:g,treeDepths:{0:E.length},dataRowIds:E}},flatRowTreeCreationMethod=d=>d.updates.type==="full"?createFlatRowTree(d.updates.rows):updateFlatRowTree({previousTree:d.previousTree,actions:d.updates.actions}),useGridRowsPreProcessors=d=>{useGridRegisterStrategyProcessor(d,GRID_DEFAULT_STRATEGY,"rowTreeCreation",flatRowTreeCreationMethod)},getSelectionModelPropValue=(d,m)=>d==null||Array.isArray(d)?d:m&&m[0]===d?m:[d],rowSelectionStateInitializer=(d,m)=>{var g;return _extends$1({},d,{rowSelection:m.rowSelection?(g=getSelectionModelPropValue(m.rowSelectionModel))!=null?g:[]:[]})},useGridRowSelection=(d,m)=>{const g=useGridLogger(d,"useGridSelection"),x=Z=>(...ee)=>{m.rowSelection&&Z(...ee)},b=reactExports.useMemo(()=>getSelectionModelPropValue(m.rowSelectionModel,gridRowSelectionStateSelector(d.current.state)),[d,m.rowSelectionModel]),E=reactExports.useRef(null);d.current.registerControlState({stateId:"rowSelection",propModel:b,propOnChange:m.onRowSelectionModelChange,stateSelector:gridRowSelectionStateSelector,changeEvent:"rowSelectionChange"});const{checkboxSelection:v,disableMultipleRowSelection:S,disableRowSelectionOnClick:C,isRowSelectable:T}=m,R=!S||v,k=useGridVisibleRows(d,m),L=reactExports.useCallback(Z=>{var ee;let ce=Z;const fe=(ee=E.current)!=null?ee:Z,ae=d.current.isRowSelected(Z);if(ae){const ue=gridExpandedSortedRowIdsSelector(d),pe=ue.findIndex(ye=>ye===fe),ge=ue.findIndex(ye=>ye===ce);if(pe===ge)return;pe>ge?ce=ue[ge+1]:ce=ue[ge-1]}E.current=Z,d.current.selectRowRange({startId:fe,endId:ce},!ae)},[d]),D=reactExports.useCallback(Z=>{if(m.signature===GridSignature.DataGrid&&!m.checkboxSelection&&Array.isArray(Z)&&Z.length>1)throw new Error(["MUI: `rowSelectionModel` can only contain 1 item in DataGrid.","You need to upgrade to DataGridPro or DataGridPremium component to unlock multiple selection."].join(`
608
608
  `));gridRowSelectionStateSelector(d.current.state)!==Z&&(g.debug("Setting selection model"),d.current.setState(ce=>_extends$1({},ce,{rowSelection:m.rowSelection?Z:[]})),d.current.forceUpdate())},[d,g,m.rowSelection,m.signature,m.checkboxSelection]),A=reactExports.useCallback(Z=>gridRowSelectionStateSelector(d.current.state).includes(Z),[d]),I=reactExports.useCallback(Z=>{if(T&&!T(d.current.getRowParams(Z)))return!1;const ee=d.current.getRowNode(Z);return!((ee==null?void 0:ee.type)==="footer"||(ee==null?void 0:ee.type)==="pinnedRow")},[d,T]),N=reactExports.useCallback(()=>selectedGridRowsSelector(d),[d]),z=reactExports.useCallback((Z,ee=!0,ce=!1)=>{if(d.current.isRowSelectable(Z))if(E.current=Z,ce)g.debug(`Setting selection for row ${Z}`),d.current.setRowSelectionModel(ee?[Z]:[]);else{g.debug(`Toggling selection for row ${Z}`);const ae=gridRowSelectionStateSelector(d.current.state).filter(pe=>pe!==Z);ee&&ae.push(Z),(ae.length<2||R)&&d.current.setRowSelectionModel(ae)}},[d,g,R]),j=reactExports.useCallback((Z,ee=!0,ce=!1)=>{g.debug("Setting selection for several rows");const fe=Z.filter(pe=>d.current.isRowSelectable(pe));let ae;if(ce)ae=ee?fe:[];else{const pe=_extends$1({},selectedIdsLookupSelector(d));fe.forEach(ge=>{ee?pe[ge]=ge:delete pe[ge]}),ae=Object.values(pe)}(ae.length<2||R)&&d.current.setRowSelectionModel(ae)},[d,g,R]),Y=reactExports.useCallback(({startId:Z,endId:ee},ce=!0,fe=!1)=>{if(!d.current.getRow(Z)||!d.current.getRow(ee))return;g.debug(`Expanding selection from row ${Z} to row ${ee}`);const ae=gridExpandedSortedRowIdsSelector(d),ue=ae.indexOf(Z),pe=ae.indexOf(ee),[ge,ye]=ue>pe?[pe,ue]:[ue,pe],Ee=ae.slice(ge,ye+1);d.current.selectRows(Ee,ce,fe)},[d,g]),B={selectRow:z,setRowSelectionModel:D,getSelectedRows:N,isRowSelected:A,isRowSelectable:I},U={selectRows:j,selectRowRange:Y};useGridApiMethod(d,B,"public"),useGridApiMethod(d,U,m.signature===GridSignature.DataGrid?"private":"public");const W=reactExports.useCallback(()=>{if(m.keepNonExistentRowsSelected)return;const Z=gridRowSelectionStateSelector(d.current.state),ee=gridRowsLookupSelector(d),ce=_extends$1({},selectedIdsLookupSelector(d));let fe=!1;Z.forEach(ae=>{ee[ae]||(delete ce[ae],fe=!0)}),fe&&d.current.setRowSelectionModel(Object.values(ce))},[d,m.keepNonExistentRowsSelected]),V=reactExports.useCallback((Z,ee)=>{const ce=ee.metaKey||ee.ctrlKey,fe=!v&&!ce&&!isKeyboardEvent$1(ee),ae=!R||fe,ue=d.current.isRowSelected(Z);ae?d.current.selectRow(Z,fe?!0:!ue,!0):d.current.selectRow(Z,!ue,!1)},[d,R,v]),J=reactExports.useCallback((Z,ee)=>{var ce;if(C)return;const fe=(ce=ee.target.closest(`.${gridClasses.cell}`))==null?void 0:ce.getAttribute("data-field");if(fe===GRID_CHECKBOX_SELECTION_COL_DEF.field||fe===GRID_DETAIL_PANEL_TOGGLE_FIELD)return;if(fe){const ue=d.current.getColumn(fe);if((ue==null?void 0:ue.type)===GRID_ACTIONS_COLUMN_TYPE)return}d.current.getRowNode(Z.id).type!=="pinnedRow"&&(ee.shiftKey&&(R||v)?L(Z.id):V(Z.id,ee))},[C,R,v,d,L,V]),Q=reactExports.useCallback((Z,ee)=>{if(R&&ee.shiftKey){var ce;(ce=window.getSelection())==null||ce.removeAllRanges()}},[R]),X=reactExports.useCallback((Z,ee)=>{ee.nativeEvent.shiftKey?L(Z.id):d.current.selectRow(Z.id,Z.value)},[d,L]),re=reactExports.useCallback(Z=>{const ce=m.checkboxSelectionVisibleOnly&&m.pagination?gridPaginatedVisibleSortedGridRowIdsSelector(d):gridExpandedSortedRowIdsSelector(d),fe=gridFilterModelSelector(d);d.current.selectRows(ce,Z.value,(fe==null?void 0:fe.items.length)>0)},[d,m.checkboxSelectionVisibleOnly,m.pagination]),ie=reactExports.useCallback((Z,ee)=>{if(d.current.getCellMode(Z.id,Z.field)!==GridCellModes.Edit&&!isEventTargetInPortal(ee)){if(isNavigationKey(ee.key)&&ee.shiftKey){const ce=gridFocusCellSelector(d);if(ce&&ce.id!==Z.id){ee.preventDefault();const fe=d.current.isRowSelected(ce.id);if(!R){d.current.selectRow(ce.id,!fe,!0);return}const ae=d.current.getRowIndexRelativeToVisibleRows(ce.id),ue=d.current.getRowIndexRelativeToVisibleRows(Z.id);let pe,ge;ae>ue?fe?(pe=ue,ge=ae-1):(pe=ue,ge=ae):fe?(pe=ae+1,ge=ue):(pe=ae,ge=ue);const ye=k.rows.slice(pe,ge+1).map(Ee=>Ee.id);d.current.selectRows(ye,!fe);return}}if(ee.key===" "&&ee.shiftKey){ee.preventDefault(),V(Z.id,ee);return}ee.key==="a"&&(ee.ctrlKey||ee.metaKey)&&(ee.preventDefault(),j(d.current.getAllRowIds(),!0))}},[d,V,j,k.rows,R]);useGridApiEventHandler(d,"sortedRowsSet",x(W)),useGridApiEventHandler(d,"rowClick",x(J)),useGridApiEventHandler(d,"rowSelectionCheckboxChange",x(X)),useGridApiEventHandler(d,"headerSelectionCheckboxChange",re),useGridApiEventHandler(d,"cellMouseDown",x(Q)),useGridApiEventHandler(d,"cellKeyDown",x(ie)),reactExports.useEffect(()=>{b!==void 0&&d.current.setRowSelectionModel(b)},[d,b,m.rowSelection]),reactExports.useEffect(()=>{m.rowSelection||d.current.setRowSelectionModel([])},[d,m.rowSelection]);const oe=b!=null;reactExports.useEffect(()=>{if(oe||!m.rowSelection)return;const Z=gridRowSelectionStateSelector(d.current.state);if(I){const ee=Z.filter(ce=>I(ce));ee.length<Z.length&&d.current.setRowSelectionModel(ee)}},[d,I,oe,m.rowSelection]),reactExports.useEffect(()=>{if(!m.rowSelection||oe)return;const Z=gridRowSelectionStateSelector(d.current.state);!R&&Z.length>1&&d.current.setRowSelectionModel([])},[d,R,v,oe,m.rowSelection])},GRID_DEFAULT_LOCALE_TEXT={noRowsLabel:"No rows",noResultsOverlayLabel:"No results found.",toolbarDensity:"Density",toolbarDensityLabel:"Density",toolbarDensityCompact:"Compact",toolbarDensityStandard:"Standard",toolbarDensityComfortable:"Comfortable",toolbarColumns:"Columns",toolbarColumnsLabel:"Select columns",toolbarFilters:"Filters",toolbarFiltersLabel:"Show filters",toolbarFiltersTooltipHide:"Hide filters",toolbarFiltersTooltipShow:"Show filters",toolbarFiltersTooltipActive:d=>d!==1?`${d} active filters`:`${d} active filter`,toolbarQuickFilterPlaceholder:"Search…",toolbarQuickFilterLabel:"Search",toolbarQuickFilterDeleteIconLabel:"Clear",toolbarExport:"Export",toolbarExportLabel:"Export",toolbarExportCSV:"Download as CSV",toolbarExportPrint:"Print",toolbarExportExcel:"Download as Excel",columnsPanelTextFieldLabel:"Find column",columnsPanelTextFieldPlaceholder:"Column title",columnsPanelDragIconLabel:"Reorder column",columnsPanelShowAllButton:"Show all",columnsPanelHideAllButton:"Hide all",filterPanelAddFilter:"Add filter",filterPanelRemoveAll:"Remove all",filterPanelDeleteIconLabel:"Delete",filterPanelLogicOperator:"Logic operator",filterPanelOperator:"Operator",filterPanelOperatorAnd:"And",filterPanelOperatorOr:"Or",filterPanelColumns:"Columns",filterPanelInputLabel:"Value",filterPanelInputPlaceholder:"Filter value",filterOperatorContains:"contains",filterOperatorEquals:"equals",filterOperatorStartsWith:"starts with",filterOperatorEndsWith:"ends with",filterOperatorIs:"is",filterOperatorNot:"is not",filterOperatorAfter:"is after",filterOperatorOnOrAfter:"is on or after",filterOperatorBefore:"is before",filterOperatorOnOrBefore:"is on or before",filterOperatorIsEmpty:"is empty",filterOperatorIsNotEmpty:"is not empty",filterOperatorIsAnyOf:"is any of","filterOperator=":"=","filterOperator!=":"!=","filterOperator>":">","filterOperator>=":">=","filterOperator<":"<","filterOperator<=":"<=",headerFilterOperatorContains:"Contains",headerFilterOperatorEquals:"Equals",headerFilterOperatorStartsWith:"Starts with",headerFilterOperatorEndsWith:"Ends with",headerFilterOperatorIs:"Is",headerFilterOperatorNot:"Is not",headerFilterOperatorAfter:"Is after",headerFilterOperatorOnOrAfter:"Is on or after",headerFilterOperatorBefore:"Is before",headerFilterOperatorOnOrBefore:"Is on or before",headerFilterOperatorIsEmpty:"Is empty",headerFilterOperatorIsNotEmpty:"Is not empty",headerFilterOperatorIsAnyOf:"Is any of","headerFilterOperator=":"Equals","headerFilterOperator!=":"Not equals","headerFilterOperator>":"Greater than","headerFilterOperator>=":"Greater than or equal to","headerFilterOperator<":"Less than","headerFilterOperator<=":"Less than or equal to",filterValueAny:"any",filterValueTrue:"true",filterValueFalse:"false",columnMenuLabel:"Menu",columnMenuShowColumns:"Show columns",columnMenuManageColumns:"Manage columns",columnMenuFilter:"Filter",columnMenuHideColumn:"Hide column",columnMenuUnsort:"Unsort",columnMenuSortAsc:"Sort by ASC",columnMenuSortDesc:"Sort by DESC",columnHeaderFiltersTooltipActive:d=>d!==1?`${d} active filters`:`${d} active filter`,columnHeaderFiltersLabel:"Show filters",columnHeaderSortIconLabel:"Sort",footerRowSelected:d=>d!==1?`${d.toLocaleString()} rows selected`:`${d.toLocaleString()} row selected`,footerTotalRows:"Total Rows:",footerTotalVisibleRows:(d,m)=>`${d.toLocaleString()} of ${m.toLocaleString()}`,checkboxSelectionHeaderName:"Checkbox selection",checkboxSelectionSelectAllRows:"Select all rows",checkboxSelectionUnselectAllRows:"Unselect all rows",checkboxSelectionSelectRow:"Select row",checkboxSelectionUnselectRow:"Unselect row",booleanCellTrueLabel:"yes",booleanCellFalseLabel:"no",actionsCellMore:"more",pinToLeft:"Pin to left",pinToRight:"Pin to right",unpin:"Unpin",treeDataGroupingHeaderName:"Group",treeDataExpand:"see children",treeDataCollapse:"hide children",groupingColumnHeaderName:"Group",groupColumn:d=>`Group by ${d}`,unGroupColumn:d=>`Stop grouping by ${d}`,detailPanelToggle:"Detail panel toggle",expandDetailPanel:"Expand",collapseDetailPanel:"Collapse",MuiTablePagination:{},rowReorderingHeaderName:"Row reordering",aggregationMenuItemHeader:"Aggregation",aggregationFunctionLabelSum:"sum",aggregationFunctionLabelAvg:"avg",aggregationFunctionLabelMin:"min",aggregationFunctionLabelMax:"max",aggregationFunctionLabelSize:"size"},useUtilityClasses$y=d=>{const{classes:m}=d;return reactExports.useMemo(()=>composeClasses({cellCheckbox:["cellCheckbox"],columnHeaderCheckbox:["columnHeaderCheckbox"]},getDataGridUtilityClass,m),[m])},useGridRowSelectionPreProcessors=(d,m)=>{const g={classes:m.classes},x=useUtilityClasses$y(g),b=reactExports.useCallback(E=>{const v=_extends$1({},GRID_CHECKBOX_SELECTION_COL_DEF,{cellClassName:x.cellCheckbox,headerClassName:x.columnHeaderCheckbox,headerName:d.current.getLocaleText("checkboxSelectionHeaderName")}),S=m.checkboxSelection,C=E.lookup[GRID_CHECKBOX_SELECTION_FIELD]!=null;return S&&!C?(E.lookup[GRID_CHECKBOX_SELECTION_FIELD]=v,E.orderedFields=[GRID_CHECKBOX_SELECTION_FIELD,...E.orderedFields]):!S&&C?(delete E.lookup[GRID_CHECKBOX_SELECTION_FIELD],E.orderedFields=E.orderedFields.filter(T=>T!==GRID_CHECKBOX_SELECTION_FIELD)):S&&C&&(E.lookup[GRID_CHECKBOX_SELECTION_FIELD]=_extends$1({},v,E.lookup[GRID_CHECKBOX_SELECTION_FIELD])),E},[d,x,m.checkboxSelection]);useGridRegisterPipeProcessor(d,"hydrateColumns",b)},sortingStateInitializer=(d,m)=>{var g,x,b;const E=(g=(x=m.sortModel)!=null?x:(b=m.initialState)==null||(b=b.sorting)==null?void 0:b.sortModel)!=null?g:[];return _extends$1({},d,{sorting:{sortModel:sanitizeSortModel(E,m.disableMultipleColumnsSorting),sortedRows:[]}})},useGridSorting=(d,m)=>{var g;const x=useGridLogger(d,"useGridSorting");d.current.registerControlState({stateId:"sortModel",propModel:m.sortModel,propOnChange:m.onSortModelChange,stateSelector:gridSortModelSelector,changeEvent:"sortModelChange"});const b=reactExports.useCallback((W,V)=>{const J=gridSortModelSelector(d),Q=J.findIndex(re=>re.field===W);let X=[...J];return Q>-1?V?X.splice(Q,1,V):X.splice(Q,1):X=[...J,V],X},[d]),E=reactExports.useCallback((W,V)=>{var J;const X=gridSortModelSelector(d).find(ie=>ie.field===W.field);if(X){var re;const ie=V===void 0?getNextGridSortDirection((re=W.sortingOrder)!=null?re:m.sortingOrder,X.sort):V;return ie==null?void 0:_extends$1({},X,{sort:ie})}return{field:W.field,sort:V===void 0?getNextGridSortDirection((J=W.sortingOrder)!=null?J:m.sortingOrder):V}},[d,m.sortingOrder]),v=reactExports.useCallback((W,V)=>V==null||V.sortable===!1?W:(V.sortingOrder||m.sortingOrder).some(Q=>!!Q)?[...W,"columnMenuSortItem"]:W,[m.sortingOrder]),S=reactExports.useCallback(()=>{d.current.setState(W=>{if(m.sortingMode==="server")return x.debug("Skipping sorting rows as sortingMode = server"),_extends$1({},W,{sorting:_extends$1({},W.sorting,{sortedRows:getTreeNodeDescendants(gridRowTreeSelector(d),GRID_ROOT_GROUP_ID,!1)})});const V=gridSortModelSelector(W,d.current.instanceId),J=buildAggregatedSortingApplier(V,d),Q=d.current.applyStrategyProcessor("sorting",{sortRowList:J});return _extends$1({},W,{sorting:_extends$1({},W.sorting,{sortedRows:Q})})}),d.current.publishEvent("sortedRowsSet"),d.current.forceUpdate()},[d,x,m.sortingMode]),C=reactExports.useCallback(W=>{gridSortModelSelector(d)!==W&&(x.debug("Setting sort model"),d.current.setState(mergeStateWithSortModel(W,m.disableMultipleColumnsSorting)),d.current.forceUpdate(),d.current.applySorting())},[d,x,m.disableMultipleColumnsSorting]),T=reactExports.useCallback((W,V,J)=>{if(!W.sortable)return;const Q=E(W,V);let X;!J||m.disableMultipleColumnsSorting?X=Q?[Q]:[]:X=b(W.field,Q),d.current.setSortModel(X)},[d,b,E,m.disableMultipleColumnsSorting]),R=reactExports.useCallback(()=>gridSortModelSelector(d),[d]),k=reactExports.useCallback(()=>gridSortedRowEntriesSelector(d).map(V=>V.model),[d]),L=reactExports.useCallback(()=>gridSortedRowIdsSelector(d),[d]),D=reactExports.useCallback(W=>d.current.getSortedRowIds()[W],[d]);useGridApiMethod(d,{getSortModel:R,getSortedRows:k,getSortedRowIds:L,getRowIdFromRowIndex:D,setSortModel:C,sortColumn:T,applySorting:S},"public");const I=reactExports.useCallback((W,V)=>{var J;const Q=gridSortModelSelector(d);return!V.exportOnlyDirtyModels||m.sortModel!=null||((J=m.initialState)==null||(J=J.sorting)==null?void 0:J.sortModel)!=null||Q.length>0?_extends$1({},W,{sorting:{sortModel:Q}}):W},[d,m.sortModel,(g=m.initialState)==null||(g=g.sorting)==null?void 0:g.sortModel]),N=reactExports.useCallback((W,V)=>{var J;const Q=(J=V.stateToRestore.sorting)==null?void 0:J.sortModel;return Q==null?W:(d.current.setState(mergeStateWithSortModel(Q,m.disableMultipleColumnsSorting)),_extends$1({},W,{callbacks:[...W.callbacks,d.current.applySorting]}))},[d,m.disableMultipleColumnsSorting]),z=reactExports.useCallback(W=>{const V=gridRowTreeSelector(d),J=V[GRID_ROOT_GROUP_ID],Q=W.sortRowList?W.sortRowList(J.children.map(X=>V[X])):[...J.children];return J.footerId!=null&&Q.push(J.footerId),Q},[d]);useGridRegisterPipeProcessor(d,"exportState",I),useGridRegisterPipeProcessor(d,"restoreState",N),useGridRegisterStrategyProcessor(d,GRID_DEFAULT_STRATEGY,"sorting",z);const j=reactExports.useCallback(({colDef:W},V)=>{const J=V.shiftKey||V.metaKey||V.ctrlKey;T(W,void 0,J)},[T]),Y=reactExports.useCallback(({colDef:W},V)=>{isEnterKey(V.key)&&!V.ctrlKey&&!V.metaKey&&T(W,void 0,V.shiftKey)},[T]),B=reactExports.useCallback(()=>{const W=gridSortModelSelector(d),V=gridColumnLookupSelector(d);if(W.length>0){const J=W.filter(Q=>V[Q.field]);J.length<W.length&&d.current.setSortModel(J)}},[d]),U=reactExports.useCallback(W=>{W==="sorting"&&d.current.applySorting()},[d]);useGridRegisterPipeProcessor(d,"columnMenu",v),useGridApiEventHandler(d,"columnHeaderClick",j),useGridApiEventHandler(d,"columnHeaderKeyDown",Y),useGridApiEventHandler(d,"rowsSet",d.current.applySorting),useGridApiEventHandler(d,"columnsChange",B),useGridApiEventHandler(d,"activeStrategyProcessorChange",U),useFirstRender(()=>{d.current.applySorting()}),useEnhancedEffect(()=>{m.sortModel!==void 0&&d.current.setSortModel(m.sortModel)},[d,m.sortModel])};function scrollIntoView(d){const{clientHeight:m,scrollTop:g,offsetHeight:x,offsetTop:b}=d,E=b+x;if(x>m)return b;if(E-m>g)return E-m;if(b<g)return b}const useGridScroll=(d,m)=>{const g=useTheme$1(),x=useGridLogger(d,"useGridScroll"),b=d.current.columnHeadersElementRef,E=d.current.virtualScrollerRef,v=useGridSelector(d,gridExpandedSortedRowEntriesSelector),S=reactExports.useCallback(k=>{const L=gridRowCountSelector(d),D=gridVisibleColumnDefinitionsSelector(d);if(!(k.rowIndex==null)&&L===0||D.length===0)return!1;x.debug(`Scrolling to cell at row ${k.rowIndex}, col: ${k.colIndex} `);let I={};if(k.colIndex!=null){const Y=gridColumnPositionsSelector(d);let B;if(typeof k.rowIndex!="undefined"){var N;const U=(N=v[k.rowIndex])==null?void 0:N.id,W=d.current.unstable_getCellColSpanInfo(U,k.colIndex);W&&!W.spannedByColSpan&&(B=W.cellProps.width)}typeof B=="undefined"&&(B=D[k.colIndex].computedWidth),I.left=scrollIntoView({clientHeight:E.current.clientWidth,scrollTop:Math.abs(E.current.scrollLeft),offsetHeight:B,offsetTop:Y[k.colIndex]})}if(k.rowIndex!=null){var z,j;const Y=gridRowsMetaSelector(d.current.state),B=gridPageSelector(d),U=gridPageSizeSelector(d),W=m.pagination?k.rowIndex-B*U:k.rowIndex,V=Y.positions[W+1]?Y.positions[W+1]-Y.positions[W]:Y.currentPageTotalHeight-Y.positions[W],J=((z=E.current.querySelector(`.${gridClasses["pinnedRows--top"]}`))==null?void 0:z.clientHeight)||0,Q=((j=E.current.querySelector(`.${gridClasses["pinnedRows--bottom"]}`))==null?void 0:j.clientHeight)||0;I.top=scrollIntoView({clientHeight:E.current.clientHeight-J-Q,scrollTop:E.current.scrollTop,offsetHeight:V,offsetTop:Y.positions[W]})}return I=d.current.unstable_applyPipeProcessors("scrollToIndexes",I,k),typeof I.left!==void 0||typeof I.top!==void 0?(d.current.scroll(I),!0):!1},[x,d,E,m.pagination,v]),C=reactExports.useCallback(k=>{if(E.current&&k.left!=null&&b.current){const L=g.direction==="rtl"?-1:1;b.current.scrollLeft=k.left,E.current.scrollLeft=L*k.left,x.debug(`Scrolling left: ${k.left}`)}E.current&&k.top!=null&&(E.current.scrollTop=k.top,x.debug(`Scrolling top: ${k.top}`)),x.debug("Scrolling, updating container, and viewport")},[E,g.direction,b,x]),T=reactExports.useCallback(()=>E!=null&&E.current?{top:E.current.scrollTop,left:E.current.scrollLeft}:{top:0,left:0},[E]);useGridApiMethod(d,{scroll:C,scrollToIndexes:S,getScrollPosition:T},"public")};function useGridEvents(d,m){useGridApiOptionHandler(d,"columnHeaderClick",m.onColumnHeaderClick),useGridApiOptionHandler(d,"columnHeaderDoubleClick",m.onColumnHeaderDoubleClick),useGridApiOptionHandler(d,"columnHeaderOver",m.onColumnHeaderOver),useGridApiOptionHandler(d,"columnHeaderOut",m.onColumnHeaderOut),useGridApiOptionHandler(d,"columnHeaderEnter",m.onColumnHeaderEnter),useGridApiOptionHandler(d,"columnHeaderLeave",m.onColumnHeaderLeave),useGridApiOptionHandler(d,"cellClick",m.onCellClick),useGridApiOptionHandler(d,"cellDoubleClick",m.onCellDoubleClick),useGridApiOptionHandler(d,"cellKeyDown",m.onCellKeyDown),useGridApiOptionHandler(d,"preferencePanelClose",m.onPreferencePanelClose),useGridApiOptionHandler(d,"preferencePanelOpen",m.onPreferencePanelOpen),useGridApiOptionHandler(d,"menuOpen",m.onMenuOpen),useGridApiOptionHandler(d,"menuClose",m.onMenuClose),useGridApiOptionHandler(d,"rowDoubleClick",m.onRowDoubleClick),useGridApiOptionHandler(d,"rowClick",m.onRowClick),useGridApiOptionHandler(d,"stateChange",m.onStateChange)}const hasScroll=({content:d,container:m,scrollBarSize:g})=>{const x=d.width>m.width,b=d.height>m.height;let E=!1,v=!1;return(x||b)&&(E=x,v=d.height+(E?g:0)>m.height,v&&(E=d.width+g>m.width)),{hasScrollX:E,hasScrollY:v}};function useGridDimensions(d,m){const g=useGridLogger(d,"useResizeContainer"),x=reactExports.useRef(!1),b=reactExports.useRef(null),E=reactExports.useRef(null),v=useGridSelector(d,gridRowsMetaSelector),S=useGridSelector(d,gridDensityFactorSelector),C=Math.floor(m.rowHeight*S),T=getTotalHeaderHeight(d,m.columnHeaderHeight),R=reactExports.useCallback(()=>{var V;const J=(V=d.current.rootElementRef)==null?void 0:V.current,Q=gridColumnsTotalWidthSelector(d),X=calculatePinnedRowsHeight(d);if(!b.current)return;let re;if(m.scrollbarSize!=null)re=m.scrollbarSize;else if(!Q||!J)re=0;else{const ue=ownerDocument(J).createElement("div");ue.style.width="99px",ue.style.height="99px",ue.style.position="absolute",ue.style.overflow="scroll",ue.className="scrollDiv",J.appendChild(ue),re=ue.offsetWidth-ue.clientWidth,J.removeChild(ue)}let ie,oe,Z;if(m.autoHeight)Z=!1,oe=Math.round(Q)>Math.round(b.current.width),ie={width:b.current.width,height:v.currentPageTotalHeight+(oe?re:0)};else{ie={width:b.current.width,height:Math.max(b.current.height-T,0)};const ae=hasScroll({content:{width:Math.round(Q),height:v.currentPageTotalHeight},container:{width:Math.round(ie.width),height:ie.height-X.top-X.bottom},scrollBarSize:re});Z=ae.hasScrollY,oe=ae.hasScrollX}const ee={width:ie.width-(Z?re:0),height:ie.height-(oe?re:0)},ce={viewportOuterSize:ie,viewportInnerSize:ee,hasScrollX:oe,hasScrollY:Z,scrollBarSize:re},fe=E.current;E.current=ce,(ce.viewportInnerSize.width!==(fe==null?void 0:fe.viewportInnerSize.width)||ce.viewportInnerSize.height!==(fe==null?void 0:fe.viewportInnerSize.height))&&d.current.publishEvent("viewportInnerSizeChange",ce.viewportInnerSize)},[d,m.scrollbarSize,m.autoHeight,v.currentPageTotalHeight,T]),[k,L]=reactExports.useState(),D=reactExports.useMemo(()=>debounce$1(L,60),[]),A=reactExports.useRef();useEnhancedEffect(()=>{k&&(R(),d.current.publishEvent("debouncedResize",b.current))},[d,k,R]);const I=reactExports.useCallback(()=>{d.current.computeSizeAndPublishResizeEvent()},[d]),N=reactExports.useCallback(()=>E.current,[]),z=reactExports.useCallback(()=>{const V=d.current.getRootDimensions();if(!V)return 0;const J=getVisibleRows(d,{pagination:m.pagination,paginationMode:m.paginationMode});if(m.getRowHeight){const X=d.current.getRenderContext(),re=X.lastRowIndex-X.firstRowIndex;return Math.min(re-1,J.rows.length)}const Q=Math.floor(V.viewportInnerSize.height/C);return Math.min(Q,J.rows.length)},[d,m.pagination,m.paginationMode,m.getRowHeight,C]),j=reactExports.useCallback(()=>{var V,J,Q;const X=(V=d.current.mainElementRef)==null?void 0:V.current;if(!X)return;const ie=ownerWindow(X).getComputedStyle(X),oe=parseFloat(ie.height)||0,Z=parseFloat(ie.width)||0,ee=oe!==((J=A.current)==null?void 0:J.height),ce=Z!==((Q=A.current)==null?void 0:Q.width);if(!A.current||ee||ce){const fe={width:Z,height:oe};d.current.publishEvent("resize",fe),A.current=fe}},[d]),Y={resize:I,getRootDimensions:N},B={getViewportPageSize:z,updateGridDimensionsRef:R,computeSizeAndPublishResizeEvent:j};useGridApiMethod(d,Y,"public"),useGridApiMethod(d,B,"private");const U=reactExports.useRef(!0),W=reactExports.useCallback(V=>{b.current=V;const J=/jsdom/.test(window.navigator.userAgent);if(V.height===0&&!x.current&&!m.autoHeight&&!J&&(g.error(["The parent DOM element of the data grid has an empty height.","Please make sure that this element has an intrinsic height.","The grid displays with a height of 0px.","","More details: https://mui.com/r/x-data-grid-no-dimensions."].join(`
609
609
  `)),x.current=!0),V.width===0&&!x.current&&!J&&(g.error(["The parent DOM element of the data grid has an empty width.","Please make sure that this element has an intrinsic width.","The grid displays with a width of 0px.","","More details: https://mui.com/r/x-data-grid-no-dimensions."].join(`
610
610
  `)),x.current=!0),U.current){L(V),U.current=!1;return}D(V)},[m.autoHeight,D,g]);useEnhancedEffect(()=>R(),[R]),useGridApiOptionHandler(d,"sortedRowsSet",R),useGridApiOptionHandler(d,"paginationModelChange",R),useGridApiOptionHandler(d,"columnsChange",R),useGridApiEventHandler(d,"resize",W),useGridApiOptionHandler(d,"debouncedResize",m.onResize)}const _excluded$J=["style"],_excluded2$6=["style"];function binarySearch(d,m,g=0,x=m.length){if(m.length<=0)return-1;if(g>=x)return g;const b=g+Math.floor((x-g)/2),E=m[b];return d<=E?binarySearch(d,m,g,b):binarySearch(d,m,b+1,x)}function exponentialSearch(d,m,g){let x=1;for(;g<m.length&&Math.abs(m[g])<d;)g+=x,x*=2;return binarySearch(d,m,Math.floor(g/2),Math.min(g,m.length))}const getRenderableIndexes=({firstIndex:d,lastIndex:m,buffer:g,minFirstIndex:x,maxLastIndex:b})=>[clamp(d-g,x,b),clamp(m+g,x,b)],areRenderContextsEqual=(d,m)=>d===m?!0:d.firstRowIndex===m.firstRowIndex&&d.lastRowIndex===m.lastRowIndex&&d.firstColumnIndex===m.firstColumnIndex&&d.lastColumnIndex===m.lastColumnIndex,MEMOIZE_OPTIONS={maxSize:3},useGridVirtualScroller=d=>{const m=useGridPrivateApiContext(),g=useGridRootProps(),x=useGridSelector(m,gridVisibleColumnDefinitionsSelector),b=useGridSelector(m,gridVirtualizationEnabledSelector),E=useGridSelector(m,gridVirtualizationColumnEnabledSelector),{ref:v,onRenderZonePositioning:S,renderZoneMinColumnIndex:C=0,renderZoneMaxColumnIndex:T=x.length,getRowProps:R}=d,k=useTheme$1(),L=useGridSelector(m,gridColumnPositionsSelector),D=useGridSelector(m,gridColumnsTotalWidthSelector),A=useGridSelector(m,gridFocusCellSelector),I=useGridSelector(m,gridTabIndexCellSelector),N=useGridSelector(m,gridRowsMetaSelector),z=useGridSelector(m,selectedIdsLookupSelector),j=useGridVisibleRows(m,g),Y=reactExports.useRef(null),B=reactExports.useRef(null),U=useForkRef(v,B),[W,V]=reactExports.useState(null),J=reactExports.useRef(W),Q=reactExports.useRef({top:0,left:0}),[X,re]=reactExports.useState({width:null,height:null}),ie=reactExports.useRef(D),[oe,Z]=reactExports.useState(null),ee=reactExports.useRef(Object.create(null)),ce=reactExports.useRef(),fe=reactExports.useRef(),ae=reactExports.useRef(defaultMemoize((Ie,Ye,He,Ve,rt,Oe)=>{let ot;const ke=Ie.slice(Ye,He);return Oe>-1&&(Ye>Oe&&Oe>=Ve||He<Oe&&Oe<rt)&&(ot=Oe),{focusedCellColumnIndexNotInRange:ot,renderedColumns:ke}},MEMOIZE_OPTIONS)),ue=reactExports.useMemo(()=>A!==null?x.findIndex(Ie=>Ie.field===A.field):-1,[A,x]),pe=reactExports.useCallback(()=>{if(!b)return{firstRowIndex:0,lastRowIndex:j.rows.length,firstColumnIndex:0,lastColumnIndex:x.length};const{top:Ie,left:Ye}=Q.current,He=Math.min(getNearestIndexToRender(m,j,N,Ie),N.positions.length-1),Ve=g.autoHeight?He+j.rows.length:getNearestIndexToRender(m,j,N,Ie+X.height);let rt=0,Oe=L.length;if(E){let ot=!1;const[ke,Ne]=getRenderableIndexes({firstIndex:He,lastIndex:Ve,minFirstIndex:0,maxLastIndex:j.rows.length,buffer:g.rowBuffer});for(let Ke=ke;Ke<Ne&&!ot;Ke+=1){const Xe=j.rows[Ke];ot=m.current.rowHasAutoHeight(Xe.id)}ot||(rt=binarySearch(Math.abs(Ye),L),Oe=binarySearch(Math.abs(Ye)+X.width,L))}return{firstRowIndex:He,lastRowIndex:Ve,firstColumnIndex:rt,lastColumnIndex:Oe}},[b,E,N,g.autoHeight,g.rowBuffer,j,L,x.length,m,X]);useEnhancedEffect(()=>{b?(B.current.scrollLeft=0,B.current.scrollTop=0):Y.current.style.transform="translate3d(0px, 0px, 0px)"},[b]),useEnhancedEffect(()=>{re({width:B.current.clientWidth,height:B.current.clientHeight})},[N.currentPageTotalHeight]);const ge=reactExports.useCallback(()=>{B.current&&re({width:B.current.clientWidth,height:B.current.clientHeight})},[]);useGridApiEventHandler(m,"debouncedResize",ge);const ye=reactExports.useCallback(Ie=>{const[Ye,He]=getRenderableIndexes({firstIndex:Ie.firstRowIndex,lastIndex:Ie.lastRowIndex,minFirstIndex:0,maxLastIndex:j.rows.length,buffer:g.rowBuffer}),[Ve]=getRenderableIndexes({firstIndex:Ie.firstColumnIndex,lastIndex:Ie.lastColumnIndex,minFirstIndex:C,maxLastIndex:T,buffer:g.columnBuffer}),rt=getFirstNonSpannedColumnToRender({firstColumnToRender:Ve,apiRef:m,firstRowToRender:Ye,lastRowToRender:He,visibleRows:j.rows}),Oe=k.direction==="ltr"?1:-1,ot=gridRowsMetaSelector(m.current.state).positions[Ye],ke=Oe*gridColumnPositionsSelector(m)[rt];Y.current.style.transform=`translate3d(${ke}px, ${ot}px, 0px)`,typeof S=="function"&&S({top:ot,left:ke})},[m,j.rows,S,C,T,g.columnBuffer,g.rowBuffer,k.direction]),Ee=reactExports.useCallback(()=>J.current,[]),ve=reactExports.useCallback(Ie=>{if(J.current&&areRenderContextsEqual(Ie,J.current)){ye(Ie);return}V(Ie),ye(Ie);const[Ye,He]=getRenderableIndexes({firstIndex:Ie.firstRowIndex,lastIndex:Ie.lastRowIndex,minFirstIndex:0,maxLastIndex:j.rows.length,buffer:g.rowBuffer});m.current.publishEvent("renderedRowsIntervalChange",{firstRowToRender:Ye,lastRowToRender:He}),J.current=Ie},[m,V,J,j.rows.length,g.rowBuffer,ye]);useEnhancedEffect(()=>{if(X.width==null)return;const Ie=pe();ve(Ie);const{top:Ye,left:He}=Q.current,Ve={top:Ye,left:He,renderContext:Ie};m.current.publishEvent("scrollPositionChange",Ve)},[m,pe,X.width,ve]);const Se=useEventCallback(Ie=>{const{scrollTop:Ye,scrollLeft:He}=Ie.currentTarget;if(Q.current.top=Ye,Q.current.left=He,!J.current||Ye<0||k.direction==="ltr"&&He<0||k.direction==="rtl"&&He>0)return;const Ve=b?pe():J.current,rt=Math.abs(Ve.firstRowIndex-J.current.firstRowIndex),Oe=Math.abs(Ve.lastRowIndex-J.current.lastRowIndex),ot=Math.abs(Ve.firstColumnIndex-J.current.firstColumnIndex),ke=Math.abs(Ve.lastColumnIndex-J.current.lastColumnIndex),Ne=rt>=g.rowThreshold||Oe>=g.rowThreshold||ot>=g.columnThreshold||ke>=g.columnThreshold||ie.current!==D;m.current.publishEvent("scrollPositionChange",{top:Ye,left:He,renderContext:Ne?Ve:J.current},Ie),Ne&&(reactDomExports.flushSync(()=>{ve(Ve)}),ie.current=D)}),$e=useEventCallback(Ie=>{m.current.publishEvent("virtualScrollerWheel",{},Ie)}),Me=useEventCallback(Ie=>{m.current.publishEvent("virtualScrollerTouchMove",{},Ie)}),Re=reactExports.useMemo(()=>A!==null?j.rows.findIndex(Ie=>Ie.id===A.id):-1,[A,j.rows]);useGridApiEventHandler(m,"rowMouseOver",(Ie,Ye)=>{var He;Ye.currentTarget.contains(Ye.relatedTarget)||Z((He=Ie.id)!=null?He:null)}),useGridApiEventHandler(m,"rowMouseOut",(Ie,Ye)=>{Ye.currentTarget.contains(Ye.relatedTarget)||Z(null)});const De=(Ie={renderContext:W})=>{var Ye;const{onRowRender:He,renderContext:Ve,minFirstColumn:rt=C,maxLastColumn:Oe=T,availableSpace:ot=X.width,rowIndexOffset:ke=0,position:Ne="center"}=Ie;if(!Ve||ot==null)return null;const Ke=b?g.rowBuffer:0,Xe=b?g.columnBuffer:0,[st,xt]=getRenderableIndexes({firstIndex:Ve.firstRowIndex,lastIndex:Ve.lastRowIndex,minFirstIndex:0,maxLastIndex:j.rows.length,buffer:Ke}),Je=[];if(Ie.rows)Ie.rows.forEach(Jt=>{Je.push(Jt),m.current.calculateColSpan({rowId:Jt.id,minFirstColumn:rt,maxLastColumn:Oe,columns:x})});else{if(!j.range)return null;for(let Jt=st;Jt<xt;Jt+=1){const rr=j.rows[Jt];Je.push(rr),m.current.calculateColSpan({rowId:rr.id,minFirstColumn:rt,maxLastColumn:Oe,columns:x})}}let gt=!1;if(Re>-1){const Jt=j.rows[Re];(st>Re||xt<Re)&&(gt=!0,Re>st?Je.push(Jt):Je.unshift(Jt),m.current.calculateColSpan({rowId:Jt.id,minFirstColumn:rt,maxLastColumn:Oe,columns:x}))}const[Ct,dt]=getRenderableIndexes({firstIndex:Ve.firstColumnIndex,lastIndex:Ve.lastColumnIndex,minFirstIndex:rt,maxLastIndex:Oe,buffer:Xe}),jt=getFirstNonSpannedColumnToRender({firstColumnToRender:Ct,apiRef:m,firstRowToRender:st,lastRowToRender:xt,visibleRows:j.rows});let Wt=!1;(jt>ue||dt<ue)&&(Wt=!0);const{focusedCellColumnIndexNotInRange:Xt,renderedColumns:Pt}=ae.current(x,jt,dt,rt,Oe,Wt?ue:-1),zt=((Ye=g.slotProps)==null?void 0:Ye.row)||{},{style:St}=zt,Lt=_objectWithoutPropertiesLoose(zt,_excluded$J);(ce.current!==R||fe.current!==St)&&(ee.current=Object.create(null));const Zt=[];let lr=!1;for(let Jt=0;Jt<Je.length;Jt+=1){var vr;const{id:rr,model:Or}=Je[Jt],xr=gt&&A.id===rr,qr=gt?st+Jt===j.rows.length:st+Jt===j.rows.length-1,yn=m.current.rowHasAutoHeight(rr)?"auto":m.current.unstable_getRowHeight(rr);let Qr;z[rr]==null?Qr=!1:Qr=m.current.isRowSelectable(rr),He&&He(rr);const Fo=A!==null&&A.id===rr?A.field:null,Pn=Xt!==void 0&&x[Xt],Fr=Pn&&Fo?[Pn,...Pt]:Pt;let wr=null;I!==null&&I.id===rr&&(wr=m.current.getCellParams(rr,I.field).cellMode==="view"?I.field:null);const zr=typeof R=="function"&&R(rr,Or)||{},{style:sn}=zr,vn=_objectWithoutPropertiesLoose(zr,_excluded2$6);if(!ee.current[rr]){const En=_extends$1({},sn,St);ee.current[rr]=En}let Wn=ke+((j==null||(vr=j.range)==null?void 0:vr.firstRowIndex)||0)+st+Jt;gt&&(A==null?void 0:A.id)===rr?(Wn=Re,lr=!0):lr&&(Wn-=1),Zt.push(jsxRuntimeExports.jsx(g.slots.row,_extends$1({row:Or,rowId:rr,focusedCellColumnIndexNotInRange:Xt,isNotVisible:xr,rowHeight:yn,focusedCell:Fo,tabbableCell:wr,renderedColumns:Fr,visibleColumns:x,firstColumnToRender:jt,lastColumnToRender:dt,selected:Qr,index:Wn,containerWidth:ot,isLastVisible:qr,position:Ne},vn,Lt,{hovered:oe===rr,style:ee.current[rr]}),rr))}return ce.current=R,fe.current=St,Zt},Be=X.width&&D>=X.width,Le=reactExports.useMemo(()=>{const Ie=Math.max(N.currentPageTotalHeight,1);let Ye=!1;B!=null&&B.current&&Ie<=(B==null?void 0:B.current.clientHeight)&&(Ye=!0);const He={width:Be?D:"auto",height:Ie,minHeight:Ye?"100%":"auto"};return g.autoHeight&&j.rows.length===0&&(He.height=getMinimalContentHeight(m,g.rowHeight)),He},[m,B,D,N.currentPageTotalHeight,Be,g.autoHeight,g.rowHeight,j.rows.length]);reactExports.useEffect(()=>{m.current.publishEvent("virtualScrollerContentSizeChange")},[m,Le]);const Ge=reactExports.useMemo(()=>{const Ie={};return Be||(Ie.overflowX="hidden"),g.autoHeight&&(Ie.overflowY="hidden"),Ie},[Be,g.autoHeight]);return m.current.register("private",{getRenderContext:Ee}),{renderContext:W,updateRenderZonePosition:ye,getRows:De,getRootProps:(Ie={})=>_extends$1({ref:U,onScroll:Se,onWheel:$e,onTouchMove:Me},Ie,{style:Ie.style?_extends$1({},Ie.style,Ge):Ge,role:"presentation"}),getContentProps:({style:Ie}={})=>({style:Ie?_extends$1({},Ie,Le):Le,role:"presentation"}),getRenderZoneProps:()=>({ref:Y,role:"rowgroup"})}};function getNearestIndexToRender(d,m,g,x){var b,E;const v=d.current.getLastMeasuredRowIndex();let S=v===1/0;(b=m.range)!=null&&b.lastRowIndex&&!S&&(S=v>=m.range.lastRowIndex);const C=clamp(v-(((E=m.range)==null?void 0:E.firstRowIndex)||0),0,g.positions.length);return S||g.positions[C]>=x?binarySearch(x,g.positions):exponentialSearch(x,g.positions,C)}const useUtilityClasses$x=d=>{const{classes:m,headerAlign:g,isDragging:x,showColumnBorder:b,groupId:E}=d;return composeClasses({root:["columnHeader",g==="left"&&"columnHeader--alignLeft",g==="center"&&"columnHeader--alignCenter",g==="right"&&"columnHeader--alignRight",x&&"columnHeader--moving",b&&"columnHeader--showColumnBorder",b&&"columnHeader--withRightBorder","withBorderColor",E===null?"columnHeader--emptyGroup":"columnHeader--filledGroup"],draggableContainer:["columnHeaderDraggableContainer"],titleContainer:["columnHeaderTitleContainer","withBorderColor"],titleContainerContent:["columnHeaderTitleContainerContent"]},getDataGridUtilityClass,m)};function GridColumnGroupHeader(d){var m;const{groupId:g,width:x,depth:b,maxDepth:E,fields:v,height:S,colIndex:C,hasFocus:T,tabIndex:R,isLastColumn:k}=d,L=useGridRootProps(),D=reactExports.useRef(null),A=useGridApiContext(),I=useGridSelector(A,gridColumnGroupsLookupSelector),N=g?I[g]:{},{headerName:z=g!=null?g:"",description:j="",headerAlign:Y=void 0}=N;let B;const U=g&&((m=I[g])==null?void 0:m.renderHeaderGroup),W=reactExports.useMemo(()=>({groupId:g,headerName:z,description:j,depth:b,maxDepth:E,fields:v,colIndex:C,isLastColumn:k}),[g,z,j,b,E,v,C,k]);g&&U&&(B=U(W));const V=L.showColumnVerticalBorder,J=_extends$1({},d,{classes:L.classes,showColumnBorder:V,headerAlign:Y,depth:b,isDragging:!1}),Q=z!=null?z:g,X=useId(),re=g===null?`empty-group-cell-${X}`:g,ie=useUtilityClasses$x(J);reactExports.useLayoutEffect(()=>{if(T){const fe=D.current.querySelector('[tabindex="0"]')||D.current;fe==null||fe.focus()}},[A,T]);const oe=reactExports.useCallback(ce=>fe=>{isEventTargetInPortal(fe)||A.current.publishEvent(ce,W,fe)},[A,W]),Z=reactExports.useMemo(()=>({onKeyDown:oe("columnGroupHeaderKeyDown"),onFocus:oe("columnGroupHeaderFocus"),onBlur:oe("columnGroupHeaderBlur")}),[oe]),ee=typeof N.headerClassName=="function"?N.headerClassName(W):N.headerClassName;return jsxRuntimeExports.jsx(GridGenericColumnHeaderItem,_extends$1({ref:D,classes:ie,columnMenuOpen:!1,colIndex:C,height:S,isResizing:!1,sortDirection:null,hasFocus:!1,tabIndex:R,isDraggable:!1,headerComponent:B,headerClassName:ee,description:j,elementId:re,width:x,columnMenuIconButton:null,columnTitleIconButtons:null,resizable:!1,label:Q,"aria-colspan":v.length,"data-fields":`|-${v.join("-|-")}-|`},Z))}const GridColumnHeaderRow=styled("div",{name:"MuiDataGrid",slot:"ColumnHeaderRow",overridesResolver:(d,m)=>m.columnHeaderRow})(()=>({display:"flex"}));function isUIEvent(d){return!!d.target}const useGridColumnHeaders=d=>{const{innerRef:m,minColumnIndex:g=0,visibleColumns:x,sortColumnLookup:b,filterColumnLookup:E,columnPositions:v,columnHeaderTabIndexState:S,columnGroupHeaderTabIndexState:C,columnHeaderFocus:T,columnGroupHeaderFocus:R,densityFactor:k,headerGroupingMaxDepth:L,columnMenuState:D,columnVisibility:A,columnGroupsHeaderStructure:I,hasOtherElementInTabSequence:N}=d,z=useTheme$1(),[j,Y]=reactExports.useState(""),[B,U]=reactExports.useState(""),W=useGridPrivateApiContext(),V=useGridSelector(W,gridVirtualizationColumnEnabledSelector),J=useGridRootProps(),Q=reactExports.useRef(null),X=useForkRef(m,Q),[re,ie]=reactExports.useState(null),oe=reactExports.useRef(re),Z=reactExports.useRef(0),ee=useGridVisibleRows(W,J),ce=getTotalHeaderHeight(W,J.columnHeaderHeight),fe=Math.floor(J.columnHeaderHeight*k),ae=reactExports.useCallback(Be=>{re&&Be&&areRenderContextsEqual(re,Be)||ie(Be)},[re]);reactExports.useEffect(()=>{var Be;(Be=W.current.columnHeadersContainerElementRef)!=null&&Be.current&&(W.current.columnHeadersContainerElementRef.current.scrollLeft=0)},[W]);const ue=reactExports.useRef(defaultMemoize(getFirstColumnIndexToRender,{equalityCheck:(Be,Le)=>["firstColumnIndex","minColumnIndex","columnBuffer"].every(Ge=>Be[Ge]===Le[Ge])})),pe=reactExports.useCallback(Be=>{const[Le,Ge]=getRenderableIndexes({firstIndex:Be.firstRowIndex,lastIndex:Be.lastRowIndex,minFirstIndex:0,maxLastIndex:ee.rows.length,buffer:J.rowBuffer}),Ie=ue.current({firstColumnIndex:Be.firstColumnIndex,minColumnIndex:g,columnBuffer:J.columnBuffer,firstRowToRender:Le,lastRowToRender:Ge,apiRef:W,visibleRows:ee.rows}),Ye=z.direction==="ltr"?1:-1,He=Ie>0?Z.current-Ye*v[Ie]:Z.current;Q.current.style.transform=`translate3d(${-He}px, 0px, 0px)`},[v,g,J.columnBuffer,W,ee.rows,J.rowBuffer,z.direction]);reactExports.useLayoutEffect(()=>{re&&pe(re)},[re,pe]);const ge=reactExports.useCallback(({left:Be,renderContext:Le=null},Ge)=>{var Ie,Ye;if(!Q.current||Z.current===Be&&((Ie=oe.current)==null?void 0:Ie.firstColumnIndex)===(Le==null?void 0:Le.firstColumnIndex)&&((Ye=oe.current)==null?void 0:Ye.lastColumnIndex)===(Le==null?void 0:Le.lastColumnIndex))return;Z.current=Be;let He=!1;Le!==oe.current||!oe.current?(isUIEvent(Ge)?(reactDomExports.flushSync(()=>{ae(Le)}),He=!0):ae(Le),oe.current=Le):He=!0,Le&&He&&pe(Le)},[pe,ae]),ye=reactExports.useCallback(Be=>U(Be.field),[]),Ee=reactExports.useCallback(()=>U(""),[]),ve=reactExports.useCallback(Be=>Y(Be.field),[]),Se=reactExports.useCallback(()=>Y(""),[]);useGridApiEventHandler(W,"columnResizeStart",ye),useGridApiEventHandler(W,"columnResizeStop",Ee),useGridApiEventHandler(W,"columnHeaderDragStart",ve),useGridApiEventHandler(W,"columnHeaderDragEnd",Se),useGridApiEventHandler(W,"scrollPositionChange",ge);const $e=Be=>{const{renderContext:Le=re,minFirstColumn:Ge=g,maxLastColumn:Ie=x.length}=Be||{};if(!Le)return null;const[Ye,He]=getRenderableIndexes({firstIndex:Le.firstRowIndex,lastIndex:Le.lastRowIndex,minFirstIndex:0,maxLastIndex:ee.rows.length,buffer:J.rowBuffer}),Ve=V?ue.current({firstColumnIndex:Le.firstColumnIndex,minColumnIndex:Ge,columnBuffer:J.columnBuffer,apiRef:W,firstRowToRender:Ye,lastRowToRender:He,visibleRows:ee.rows}):0,rt=V?Math.min(Le.lastColumnIndex+J.columnBuffer,Ie):Ie;return{renderedColumns:x.slice(Ve,rt),firstColumnToRender:Ve,lastColumnToRender:rt,minFirstColumn:Ge,maxLastColumn:Ie}},Me=(Be,Le={})=>{const Ge=$e(Be);if(Ge==null)return null;const{renderedColumns:Ie,firstColumnToRender:Ye}=Ge,He=[];for(let Ve=0;Ve<Ie.length;Ve+=1){const rt=Ie[Ve],Oe=Ye+Ve,ot=Oe===0,ke=S!==null&&S.field===rt.field||ot&&!N?0:-1,Ne=T!==null&&T.field===rt.field,Ke=D.open&&D.field===rt.field;He.push(jsxRuntimeExports.jsx(GridColumnHeaderItem,_extends$1({},b[rt.field],{columnMenuOpen:Ke,filterItemsCounter:E[rt.field]&&E[rt.field].length,headerHeight:fe,isDragging:rt.field===j,colDef:rt,colIndex:Oe,isResizing:B===rt.field,hasFocus:Ne,tabIndex:ke},Le),rt.field))}return jsxRuntimeExports.jsx(GridColumnHeaderRow,{role:"row","aria-rowindex":L+1,ownerState:J,children:He})},Re=Be=>{if(L===0)return null;const Le=$e(Be);if(Le==null||Le.renderedColumns.length===0)return null;const{firstColumnToRender:Ge,lastColumnToRender:Ie}=Le,Ye=[],He=[];for(let Oe=0;Oe<L;Oe+=1){var Ve,rt;const ot=I[Oe],ke=x[Ge].field,Ne=(Ve=W.current.unstable_getColumnGroupPath(ke)[Oe])!=null?Ve:null,Ke=ot.findIndex(({groupId:Xt,columnFields:Pt})=>Xt===Ne&&Pt.includes(ke)),Xe=x[Ie-1].field,st=(rt=W.current.unstable_getColumnGroupPath(Xe)[Oe])!=null?rt:null,xt=ot.findIndex(({groupId:Xt,columnFields:Pt})=>Xt===st&&Pt.includes(Xe)),Je=ot.slice(Ke,xt+1).map(Xt=>_extends$1({},Xt,{columnFields:Xt.columnFields.filter(Pt=>A[Pt]!==!1)})).filter(Xt=>Xt.columnFields.length>0),gt=Je[0].columnFields.indexOf(ke),dt=Je[0].columnFields.slice(0,gt).reduce((Xt,Pt)=>{var zt;const St=W.current.getColumn(Pt);return Xt+((zt=St.computedWidth)!=null?zt:0)},0);let jt=Ge;const Wt=Je.map(({groupId:Xt,columnFields:Pt})=>{const zt=R!==null&&R.depth===Oe&&Pt.includes(R.field),St=C!==null&&C.depth===Oe&&Pt.includes(C.field)?0:-1,Lt={groupId:Xt,width:Pt.reduce((Kt,Zt)=>Kt+W.current.getColumn(Zt).computedWidth,0),fields:Pt,colIndex:jt,hasFocus:zt,tabIndex:St};return jt+=Pt.length,Lt});He.push({leftOverflow:dt,elements:Wt})}return He.forEach((Oe,ot)=>{Ye.push(jsxRuntimeExports.jsx(GridColumnHeaderRow,{style:{height:`${fe}px`,transform:`translateX(-${Oe.leftOverflow}px)`},role:"row","aria-rowindex":ot+1,ownerState:J,children:Oe.elements.map(({groupId:ke,width:Ne,fields:Ke,colIndex:Xe,hasFocus:st,tabIndex:xt},Je)=>jsxRuntimeExports.jsx(GridColumnGroupHeader,{groupId:ke,width:Ne,fields:Ke,colIndex:Xe,depth:ot,isLastColumn:Xe===x.length-Ke.length,maxDepth:He.length,height:fe,hasFocus:st,tabIndex:xt},Je))},ot))}),Ye},De={minHeight:ce,maxHeight:ce,lineHeight:`${fe}px`};return{renderContext:re,getColumnHeaders:Me,getColumnsToRender:$e,getColumnGroupHeaders:Re,isDragging:!!j,getRootProps:(Be={})=>_extends$1({style:De},Be),getInnerProps:()=>({ref:X,role:"rowgroup"}),headerHeight:fe}},_excluded$I=["className"],useUtilityClasses$w=d=>{const{classes:m}=d;return composeClasses({root:["columnHeaders","withBorderColor"]},getDataGridUtilityClass,m)},GridColumnHeadersRoot=styled$1("div",{name:"MuiDataGrid",slot:"ColumnHeaders",overridesResolver:(d,m)=>m.columnHeaders})({position:"relative",overflow:"hidden",display:"flex",alignItems:"center",boxSizing:"border-box",borderBottom:"1px solid",borderTopLeftRadius:"var(--unstable_DataGrid-radius)",borderTopRightRadius:"var(--unstable_DataGrid-radius)"}),GridBaseColumnHeaders=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$I),E=useGridRootProps(),v=useUtilityClasses$w(E);return jsxRuntimeExports.jsx(GridColumnHeadersRoot,_extends$1({ref:g,className:clsx(x,v.root),ownerState:E},b,{role:"presentation"}))}),_excluded$H=["isDragging","className"],useUtilityClasses$v=d=>{const{isDragging:m,hasScrollX:g,classes:x}=d;return composeClasses({root:["columnHeadersInner",m&&"columnHeaderDropZone",g&&"columnHeadersInner--scrollable"]},getDataGridUtilityClass,x)},GridColumnHeadersInnerRoot=styled$1("div",{name:"MuiDataGrid",slot:"columnHeadersInner",overridesResolver:(d,m)=>[{[`&.${gridClasses.columnHeaderDropZone}`]:m.columnHeaderDropZone},m.columnHeadersInner]})(()=>({display:"flex",alignItems:"flex-start",flexDirection:"column",[`&.${gridClasses.columnHeaderDropZone} .${gridClasses.columnHeaderDraggableContainer}`]:{cursor:"move"},[`&.${gridClasses["columnHeadersInner--scrollable"]} .${gridClasses.columnHeader}:last-child`]:{borderRight:"none"}})),GridColumnHeadersInner=reactExports.forwardRef(function(m,g){var x,b;const{isDragging:E,className:v}=m,S=_objectWithoutPropertiesLoose(m,_excluded$H),C=useGridApiContext(),T=useGridRootProps(),R=_extends$1({},T,{isDragging:E,hasScrollX:(x=(b=C.current.getRootDimensions())==null?void 0:b.hasScrollX)!=null?x:!1}),k=useUtilityClasses$v(R);return jsxRuntimeExports.jsx(GridColumnHeadersInnerRoot,_extends$1({ref:g,className:clsx(v,k.root),ownerState:R},S))}),_excluded$G=["innerRef","className","visibleColumns","sortColumnLookup","filterColumnLookup","columnPositions","columnHeaderTabIndexState","columnGroupHeaderTabIndexState","columnHeaderFocus","columnGroupHeaderFocus","densityFactor","headerGroupingMaxDepth","columnMenuState","columnVisibility","columnGroupsHeaderStructure","hasOtherElementInTabSequence"],GridColumnHeaders=reactExports.forwardRef(function(m,g){const{innerRef:x,visibleColumns:b,sortColumnLookup:E,filterColumnLookup:v,columnPositions:S,columnHeaderTabIndexState:C,columnGroupHeaderTabIndexState:T,columnHeaderFocus:R,columnGroupHeaderFocus:k,densityFactor:L,headerGroupingMaxDepth:D,columnMenuState:A,columnVisibility:I,columnGroupsHeaderStructure:N,hasOtherElementInTabSequence:z}=m,j=_objectWithoutPropertiesLoose(m,_excluded$G),{isDragging:Y,getRootProps:B,getInnerProps:U,getColumnHeaders:W,getColumnGroupHeaders:V}=useGridColumnHeaders({innerRef:x,visibleColumns:b,sortColumnLookup:E,filterColumnLookup:v,columnPositions:S,columnHeaderTabIndexState:C,columnGroupHeaderTabIndexState:T,columnHeaderFocus:R,columnGroupHeaderFocus:k,densityFactor:L,headerGroupingMaxDepth:D,columnMenuState:A,columnVisibility:I,columnGroupsHeaderStructure:N,hasOtherElementInTabSequence:z});return jsxRuntimeExports.jsx(GridBaseColumnHeaders,_extends$1({ref:g},B(j),{children:jsxRuntimeExports.jsxs(GridColumnHeadersInner,_extends$1({isDragging:Y},U(),{children:[V(),W()]}))}))}),MemoizedGridColumnHeaders=fastMemo(GridColumnHeaders),GridNoResultsOverlay=reactExports.forwardRef(function(m,g){const b=useGridApiContext().current.getLocaleText("noResultsOverlayLabel");return jsxRuntimeExports.jsx(GridOverlay,_extends$1({ref:g},m,{children:b}))}),_excluded$F=["sortingOrder"],GridColumnUnsortedIcon=reactExports.memo(function(m){const{sortingOrder:g}=m,x=_objectWithoutPropertiesLoose(m,_excluded$F),b=useGridRootProps(),[E]=g,v=E==="asc"?b.slots.columnSortedAscendingIcon:b.slots.columnSortedDescendingIcon;return v?jsxRuntimeExports.jsx(v,_extends$1({},x)):null}),_excluded$E=["native"];function MUISelectOption(d){let{native:m}=d,g=_objectWithoutPropertiesLoose(d,_excluded$E);return m?jsxRuntimeExports.jsx("option",_extends$1({},g)):jsxRuntimeExports.jsx(MenuItem,_extends$1({},g))}const iconSlots={BooleanCellTrueIcon:GridCheckIcon,BooleanCellFalseIcon:GridCloseIcon,ColumnMenuIcon:GridTripleDotsVerticalIcon,OpenFilterButtonIcon:GridFilterListIcon,FilterPanelDeleteIcon:GridCloseIcon,ColumnFilteredIcon:GridFilterAltIcon,ColumnSelectorIcon:GridColumnIcon,ColumnUnsortedIcon:GridColumnUnsortedIcon,ColumnSortedAscendingIcon:GridArrowUpwardIcon,ColumnSortedDescendingIcon:GridArrowDownwardIcon,ColumnResizeIcon:GridSeparatorIcon,DensityCompactIcon:GridViewHeadlineIcon,DensityStandardIcon:GridTableRowsIcon,DensityComfortableIcon:GridViewStreamIcon,ExportIcon:GridSaveAltIcon,MoreActionsIcon:GridMoreVertIcon,TreeDataCollapseIcon:GridExpandMoreIcon,TreeDataExpandIcon:GridKeyboardArrowRight,GroupingCriteriaCollapseIcon:GridExpandMoreIcon,GroupingCriteriaExpandIcon:GridKeyboardArrowRight,DetailPanelExpandIcon:GridAddIcon,DetailPanelCollapseIcon:GridRemoveIcon,RowReorderIcon:GridDragIcon,QuickFilterIcon:GridSearchIcon,QuickFilterClearIcon:GridCloseIcon,ColumnMenuHideIcon:GridVisibilityOffIcon,ColumnMenuSortAscendingIcon:GridArrowUpwardIcon,ColumnMenuSortDescendingIcon:GridArrowDownwardIcon,ColumnMenuFilterIcon:GridFilterAltIcon,ColumnMenuManageColumnsIcon:GridViewColumnIcon,ColumnMenuClearIcon:GridClearIcon,LoadIcon:GridLoadIcon,FilterPanelAddIcon:GridAddIcon,FilterPanelRemoveAllIcon:GridDeleteForeverIcon,ColumnReorderIcon:GridDragIcon},materialSlots=_extends$1({},iconSlots,{BaseCheckbox:Checkbox$1,BaseTextField:TextField,BaseFormControl:FormControl,BaseSelect:Select,BaseSwitch:Switch,BaseButton:Button,BaseIconButton:IconButton,BaseInputAdornment:InputAdornment,BaseTooltip:Tooltip,BasePopper:Popper,BaseInputLabel:InputLabel,BaseSelectOption:MUISelectOption,BaseChip:Chip}),DATA_GRID_DEFAULT_SLOTS_COMPONENTS=_extends$1({},materialSlots,{Cell:MemoizedGridCellV7,SkeletonCell:GridSkeletonCell,ColumnHeaderFilterIconButton:GridColumnHeaderFilterIconButton,ColumnMenu:GridColumnMenu,ColumnHeaders:MemoizedGridColumnHeaders,Footer:GridFooter,FooterRowCount:GridRowCount,Toolbar:null,PreferencesPanel:GridPreferencesPanel,LoadingOverlay:GridLoadingOverlay,NoResultsOverlay:GridNoResultsOverlay,NoRowsOverlay:GridNoRowsOverlay,Pagination:GridPagination,FilterPanel:GridFilterPanel,ColumnsPanel:GridColumnsPanel,Panel:GridPanel,Row:MemoizedGridRow}),uncapitalizeObjectKeys$1=d=>{if(d!==void 0)return Object.keys(d).reduce((m,g)=>_extends$1({},m,{[`${g.charAt(0).toLowerCase()}${g.slice(1)}`]:d[g]}),{})};function computeSlots({defaultSlots:d,slots:m,components:g}){const x=m!=null?m:g?uncapitalizeObjectKeys$1(g):null;if(!x||Object.keys(x).length===0)return d;const b=_extends$1({},d);return Object.keys(x).forEach(E=>{const v=E;x[v]!==void 0&&(b[v]=x[v])}),b}const _excluded$D=["components","componentsProps"];function groupForwardedProps(d){var m;const g=Object.keys(d);if(!g.some(E=>E.startsWith("aria-")||E.startsWith("data-")))return d;const x={},b=(m=d.forwardedProps)!=null?m:{};for(let E=0;E<g.length;E+=1){const v=g[E];v.startsWith("aria-")||v.startsWith("data-")?b[v]=d[v]:x[v]=d[v]}return x.forwardedProps=b,x}function useProps(d){return reactExports.useMemo(()=>{const{components:m,componentsProps:g}=d,x=_objectWithoutPropertiesLoose(d,_excluded$D);return[m,g,groupForwardedProps(x)]},[d])}const DATA_GRID_FORCED_PROPS={disableMultipleColumnsFiltering:!0,disableMultipleColumnsSorting:!0,disableMultipleRowSelection:!0,throttleRowsMs:void 0,hideFooterRowCount:!1,pagination:!0,checkboxSelectionVisibleOnly:!1,disableColumnReorder:!0,disableColumnResize:!0,keepColumnPositionIfDraggedOutside:!1,signature:"DataGrid"},DATA_GRID_PROPS_DEFAULT_VALUES={autoHeight:!1,autoPageSize:!1,checkboxSelection:!1,checkboxSelectionVisibleOnly:!1,columnBuffer:3,rowBuffer:3,columnThreshold:3,rowThreshold:3,rowSelection:!0,density:"standard",disableColumnFilter:!1,disableColumnMenu:!1,disableColumnSelector:!1,disableDensitySelector:!1,disableEval:!1,disableMultipleColumnsFiltering:!1,disableMultipleRowSelection:!1,disableMultipleColumnsSorting:!1,disableRowSelectionOnClick:!1,disableVirtualization:!1,editMode:GridEditModes.Cell,filterMode:"client",filterDebounceMs:150,columnHeaderHeight:56,hideFooter:!1,hideFooterPagination:!1,hideFooterRowCount:!1,hideFooterSelectedRowCount:!1,ignoreDiacritics:!1,logger:console,logLevel:"error",pagination:!1,paginationMode:"client",rowHeight:52,pageSizeOptions:[25,50,100],rowSpacingType:"margin",showCellVerticalBorder:!1,showColumnVerticalBorder:!1,sortingOrder:["asc","desc",null],sortingMode:"client",throttleRowsMs:0,disableColumnReorder:!1,disableColumnResize:!1,keepNonExistentRowsSelected:!1,keepColumnPositionIfDraggedOutside:!1,unstable_ignoreValueFormatterDuringExport:!1,clipboardCopyCellDelimiter:" ",rowPositionsDebounceMs:166},defaultSlots=uncapitalizeObjectKeys$1(DATA_GRID_DEFAULT_SLOTS_COMPONENTS),useDataGridProps=d=>{const[m,g,x]=useProps(useThemeProps({props:d,name:"MuiDataGrid"})),b=reactExports.useMemo(()=>_extends$1({},GRID_DEFAULT_LOCALE_TEXT,x.localeText),[x.localeText]),E=reactExports.useMemo(()=>computeSlots({defaultSlots,slots:x.slots,components:m}),[m,x.slots]);return reactExports.useMemo(()=>{var v;return _extends$1({},DATA_GRID_PROPS_DEFAULT_VALUES,x,{localeText:b,slots:E,slotProps:(v=x.slotProps)!=null?v:g},DATA_GRID_FORCED_PROPS)},[x,b,E,g])},rowsMetaStateInitializer=d=>_extends$1({},d,{rowsMeta:{currentPageTotalHeight:0,positions:[]}}),getValidRowHeight=(d,m,g)=>typeof d=="number"&&d>0?d:m,useGridRowsMeta=(d,m)=>{const{getRowHeight:g,getRowSpacing:x,getEstimatedRowHeight:b}=m,E=reactExports.useRef(Object.create(null)),v=reactExports.useRef(-1),S=reactExports.useRef(!1),C=useGridSelector(d,gridDensityFactorSelector),T=useGridSelector(d,gridFilterModelSelector),R=useGridSelector(d,gridPaginationSelector),k=useGridSelector(d,gridSortModelSelector),L=useGridVisibleRows(d,m),D=useGridSelector(d,gridPinnedRowsSelector),A=getValidRowHeight(m.rowHeight,DATA_GRID_PROPS_DEFAULT_VALUES.rowHeight),I=Math.floor(A*C),N=reactExports.useCallback(()=>{var ie,oe;S.current=!1;const Z=fe=>{E.current[fe.id]||(E.current[fe.id]={sizes:{baseCenter:I},isResized:!1,autoHeight:!1,needsFirstMeasurement:!0});const{isResized:ae,needsFirstMeasurement:ue,sizes:pe}=E.current[fe.id];let ge=typeof I=="number"&&I>0?I:52;const ye=pe.baseCenter;if(ae)ge=ye;else if(g){const Me=g(_extends$1({},fe,{densityFactor:C}));if(Me==="auto"){if(ue){const Re=b?b(_extends$1({},fe,{densityFactor:C})):I;ge=Re!=null?Re:I}else ge=ye;S.current=!0,E.current[fe.id].autoHeight=!0}else ge=getValidRowHeight(Me,I),E.current[fe.id].needsFirstMeasurement=!1,E.current[fe.id].autoHeight=!1}else E.current[fe.id].needsFirstMeasurement=!1;const Ee={};for(const Me in pe)/^base[A-Z]/.test(Me)&&(Ee[Me]=pe[Me]);if(Ee.baseCenter=ge,x){var ve,Se;const Me=d.current.getRowIndexRelativeToVisibleRows(fe.id),Re=x(_extends$1({},fe,{isFirstVisible:Me===0,isLastVisible:Me===L.rows.length-1,indexRelativeToCurrentPage:Me}));Ee.spacingTop=(ve=Re.top)!=null?ve:0,Ee.spacingBottom=(Se=Re.bottom)!=null?Se:0}const $e=d.current.unstable_applyPipeProcessors("rowHeight",Ee,fe);return E.current[fe.id].sizes=$e,$e},ee=[],ce=L.rows.reduce((fe,ae)=>{ee.push(fe);let ue=0,pe=0;const ge=Z(ae);for(const ye in ge){const Ee=ge[ye];/^base[A-Z]/.test(ye)?ue=Ee>ue?Ee:ue:pe+=Ee}return fe+ue+pe},0);D==null||(ie=D.top)==null||ie.forEach(fe=>{Z(fe)}),D==null||(oe=D.bottom)==null||oe.forEach(fe=>{Z(fe)}),d.current.setState(fe=>_extends$1({},fe,{rowsMeta:{currentPageTotalHeight:ce,positions:ee}})),S.current||(v.current=1/0),d.current.forceUpdate()},[d,L.rows,I,g,x,b,D,C]),z=reactExports.useCallback(ie=>{const oe=E.current[ie];return oe?oe.sizes.baseCenter:I},[I]),j=ie=>{var oe;return(oe=E.current[ie])==null?void 0:oe.sizes},Y=reactExports.useCallback((ie,oe)=>{E.current[ie].sizes.baseCenter=oe,E.current[ie].isResized=!0,E.current[ie].needsFirstMeasurement=!1,N()},[N]),B=reactExports.useMemo(()=>debounce$1(N,m.rowPositionsDebounceMs),[N,m.rowPositionsDebounceMs]),U=reactExports.useCallback((ie,oe,Z)=>{if(!E.current[ie]||!E.current[ie].autoHeight)return;const ee=E.current[ie].sizes[`base${capitalize$1(Z)}`]!==oe;E.current[ie].needsFirstMeasurement=!1,E.current[ie].sizes[`base${capitalize$1(Z)}`]=oe,ee&&B()},[B]),W=reactExports.useCallback(ie=>{var oe;return((oe=E.current[ie])==null?void 0:oe.autoHeight)||!1},[]),V=reactExports.useCallback(()=>v.current,[]),J=reactExports.useCallback(ie=>{S.current&&ie>v.current&&(v.current=ie)},[]),Q=reactExports.useCallback(()=>{E.current={},N()},[N]);reactExports.useEffect(()=>{N()},[I,T,R,k,N]),useGridRegisterPipeApplier(d,"rowHeight",N);const X={unstable_setLastMeasuredRowIndex:J,unstable_getRowHeight:z,unstable_getRowInternalSizes:j,unstable_setRowHeight:Y,unstable_storeRowHeightMeasurement:U,resetRowHeights:Q},re={getLastMeasuredRowIndex:V,rowHasAutoHeight:W};useGridApiMethod(d,X,"public"),useGridApiMethod(d,re,"private")},useGridStatePersistence=d=>{const m=reactExports.useCallback((b={})=>d.current.unstable_applyPipeProcessors("exportState",{},b),[d]),g=reactExports.useCallback(b=>{d.current.unstable_applyPipeProcessors("restoreState",{callbacks:[]},{stateToRestore:b}).callbacks.forEach(v=>{v()}),d.current.forceUpdate()},[d]);useGridApiMethod(d,{exportState:m,restoreState:g},"public")},useGridColumnSpanning=d=>{const m=reactExports.useRef({}),g=reactExports.useCallback((T,R,k)=>{const L=m.current;L[T]||(L[T]={}),L[T][R]=k},[]),x=reactExports.useCallback((T,R)=>{var k;return(k=m.current[T])==null?void 0:k[R]},[]),b=reactExports.useCallback(T=>{const{columnIndex:R,rowId:k,minFirstColumnIndex:L,maxLastColumnIndex:D,columns:A}=T,I=A.length,N=A[R],z=typeof N.colSpan=="function"?N.colSpan(d.current.getCellParams(k,N.field)):N.colSpan;if(!z||z===1)return g(k,R,{spannedByColSpan:!1,cellProps:{colSpan:1,width:N.computedWidth}}),{colSpan:1};let j=N.computedWidth;for(let Y=1;Y<z;Y+=1){const B=R+Y;if(B>=L&&B<D){const U=A[B];j+=U.computedWidth,g(k,R+Y,{spannedByColSpan:!0,rightVisibleCellIndex:Math.min(R+z,I-1),leftVisibleCellIndex:R})}g(k,R,{spannedByColSpan:!1,cellProps:{colSpan:z,width:j}})}return{colSpan:z}},[d,g]),E=reactExports.useCallback(({rowId:T,minFirstColumn:R,maxLastColumn:k,columns:L})=>{for(let D=R;D<k;D+=1){const A=b({columnIndex:D,rowId:T,minFirstColumnIndex:R,maxLastColumnIndex:k,columns:L});A.colSpan>1&&(D+=A.colSpan-1)}},[b]),v={unstable_getCellColSpanInfo:x},S={calculateColSpan:E};useGridApiMethod(d,v,"public"),useGridApiMethod(d,S,"private");const C=reactExports.useCallback(()=>{m.current={}},[]);useGridApiEventHandler(d,"columnOrderChange",C)},recurrentUnwrapGroupingColumnModel=(d,m,g)=>{if(isLeaf(d)){if(g[d.field]!==void 0)throw new Error(["MUI: columnGroupingModel contains duplicated field",`column field ${d.field} occurs two times in the grouping model:`,`- ${g[d.field].join(" > ")}`,`- ${m.join(" > ")}`].join(`
611
611
  `));g[d.field]=m;return}const{groupId:x,children:b}=d;b.forEach(E=>{recurrentUnwrapGroupingColumnModel(E,[...m,x],g)})},unwrapGroupingColumnModel=d=>{if(!d)return{};const m={};return d.forEach(g=>{recurrentUnwrapGroupingColumnModel(g,[],m)}),m},getColumnGroupsHeaderStructure=(d,m,g)=>{const x=C=>{var T;return(T=m[C])!=null?T:[]},b=[],E=Math.max(...d.map(C=>x(C).length)),v=(C,T,R)=>isDeepEqual(x(C).slice(0,R+1),x(T).slice(0,R+1)),S=(C,T)=>!!(g!=null&&g.left&&g.left.includes(C)&&!g.left.includes(T)||g!=null&&g.right&&!g.right.includes(C)&&g.right.includes(T));for(let C=0;C<E;C+=1){const T=d.reduce((R,k)=>{var L;const D=(L=x(k)[C])!=null?L:null;if(R.length===0)return[{columnFields:[k],groupId:D}];const A=R[R.length-1],I=A.columnFields[A.columnFields.length-1];return A.groupId!==D||!v(I,k,C)||S(I,k)?[...R,{columnFields:[k],groupId:D}]:[...R.slice(0,R.length-1),{columnFields:[...A.columnFields,k],groupId:D}]},[]);b.push(T)}return b},_excluded$C=["groupId","children"],createGroupLookup=d=>{let m={};return d.forEach(g=>{if(isLeaf(g))return;const{groupId:x,children:b}=g,E=_objectWithoutPropertiesLoose(g,_excluded$C);if(!x)throw new Error("MUI: An element of the columnGroupingModel does not have either `field` or `groupId`.");b||console.warn(`MUI: group groupId=${x} has no children.`);const v=_extends$1({},E,{groupId:x}),S=createGroupLookup(b);if(S[x]!==void 0||m[x]!==void 0)throw new Error(`MUI: The groupId ${x} is used multiple times in the columnGroupingModel.`);m=_extends$1({},m,S,{[x]:v})}),_extends$1({},m)},columnGroupsStateInitializer=(d,m,g)=>{var x,b,E,v;if(!((x=m.experimentalFeatures)!=null&&x.columnGrouping))return d;const S=gridColumnFieldsSelector(g),C=gridVisibleColumnFieldsSelector(g),T=createGroupLookup((b=m.columnGroupingModel)!=null?b:[]),R=unwrapGroupingColumnModel((E=m.columnGroupingModel)!=null?E:[]),k=getColumnGroupsHeaderStructure(S,R,(v=g.current.state.pinnedColumns)!=null?v:{}),L=C.length===0?0:Math.max(...C.map(D=>{var A,I;return(A=(I=R[D])==null?void 0:I.length)!=null?A:0}));return _extends$1({},d,{columnGrouping:{lookup:T,unwrappedGroupingModel:R,headerStructure:k,maxDepth:L}})},useGridColumnGrouping=(d,m)=>{var g;const x=reactExports.useCallback(C=>{var T;return(T=gridColumnGroupsUnwrappedModelSelector(d)[C])!=null?T:[]},[d]),b=reactExports.useCallback(()=>gridColumnGroupsLookupSelector(d),[d]);useGridApiMethod(d,{unstable_getColumnGroupPath:x,unstable_getAllGroupDetails:b},"public");const v=reactExports.useCallback(()=>{var C;const T=unwrapGroupingColumnModel((C=m.columnGroupingModel)!=null?C:[]);d.current.setState(R=>{var k,L,D;const A=(k=(L=R.columns)==null?void 0:L.orderedFields)!=null?k:[],I=(D=R.pinnedColumns)!=null?D:{},N=getColumnGroupsHeaderStructure(A,T,I);return _extends$1({},R,{columnGrouping:_extends$1({},R.columnGrouping,{headerStructure:N})})})},[d,m.columnGroupingModel]),S=reactExports.useCallback(C=>{var T,R,k,L;if(!((T=m.experimentalFeatures)!=null&&T.columnGrouping))return;const D=(R=(k=(L=d.current).getPinnedColumns)==null?void 0:k.call(L))!=null?R:{},A=gridColumnFieldsSelector(d),I=gridVisibleColumnFieldsSelector(d),N=createGroupLookup(C!=null?C:[]),z=unwrapGroupingColumnModel(C!=null?C:[]),j=getColumnGroupsHeaderStructure(A,z,D),Y=I.length===0?0:Math.max(...I.map(B=>{var U,W;return(U=(W=z[B])==null?void 0:W.length)!=null?U:0}));d.current.setState(B=>_extends$1({},B,{columnGrouping:{lookup:N,unwrappedGroupingModel:z,headerStructure:j,maxDepth:Y}}))},[d,(g=m.experimentalFeatures)==null?void 0:g.columnGrouping]);useGridApiEventHandler(d,"columnIndexChange",v),useGridApiEventHandler(d,"columnsChange",()=>{S(m.columnGroupingModel)}),useGridApiEventHandler(d,"columnVisibilityModelChange",()=>{S(m.columnGroupingModel)}),reactExports.useEffect(()=>{S(m.columnGroupingModel)},[S,m.columnGroupingModel])},useDataGridComponent=(d,m)=>{const g=useGridInitialization(d,m);return useGridRowSelectionPreProcessors(g,m),useGridRowsPreProcessors(g),useGridInitializeState(rowSelectionStateInitializer,g,m),useGridInitializeState(columnsStateInitializer,g,m),useGridInitializeState(rowsStateInitializer,g,m),useGridInitializeState(editingStateInitializer,g,m),useGridInitializeState(focusStateInitializer,g,m),useGridInitializeState(sortingStateInitializer,g,m),useGridInitializeState(preferencePanelStateInitializer,g,m),useGridInitializeState(filterStateInitializer,g,m),useGridInitializeState(densityStateInitializer,g,m),useGridInitializeState(paginationStateInitializer,g,m),useGridInitializeState(rowsMetaStateInitializer,g,m),useGridInitializeState(columnMenuStateInitializer,g,m),useGridInitializeState(columnGroupsStateInitializer,g,m),useGridInitializeState(virtualizationStateInitializer,g,m),useGridKeyboardNavigation(g,m),useGridRowSelection(g,m),useGridColumns(g,m),useGridRows(g,m),useGridParamsApi(g,m),useGridColumnSpanning(g),useGridColumnGrouping(g,m),useGridEditing(g,m),useGridFocus(g,m),useGridPreferencesPanel(g,m),useGridFilter(g,m),useGridSorting(g,m),useGridDensity(g,m),useGridPagination(g,m),useGridRowsMeta(g,m),useGridScroll(g,m),useGridColumnMenu(g),useGridCsvExport(g,m),useGridPrintExport(g,m),useGridClipboard(g,m),useGridDimensions(g,m),useGridEvents(g,m),useGridStatePersistence(g),useGridVirtualization(g,m),g},useUtilityClasses$u=d=>{const{classes:m}=d;return composeClasses({root:["virtualScroller"]},getDataGridUtilityClass,m)},VirtualScrollerRoot=styled$1("div",{name:"MuiDataGrid",slot:"VirtualScroller",overridesResolver:(d,m)=>m.virtualScroller})({overflow:"auto",height:"100%",position:"relative","@media print":{overflow:"hidden"},zIndex:0}),GridVirtualScroller=reactExports.forwardRef(function(m,g){const x=useGridRootProps(),b=useUtilityClasses$u(x);return jsxRuntimeExports.jsx(VirtualScrollerRoot,_extends$1({ref:g},m,{className:clsx(b.root,m.className),ownerState:x}))}),useUtilityClasses$t=(d,m)=>{const{classes:g}=d;return composeClasses({root:["virtualScrollerContent",m&&"virtualScrollerContent--overflowed"]},getDataGridUtilityClass,g)},VirtualScrollerContentRoot=styled$1("div",{name:"MuiDataGrid",slot:"VirtualScrollerContent",overridesResolver:(d,m)=>m.virtualScrollerContent})({}),GridVirtualScrollerContent=reactExports.forwardRef(function(m,g){var x;const b=useGridRootProps(),E=!b.autoHeight&&((x=m.style)==null?void 0:x.minHeight)==="auto",v=useUtilityClasses$t(b,E);return jsxRuntimeExports.jsx(VirtualScrollerContentRoot,_extends$1({ref:g},m,{ownerState:b,className:clsx(v.root,m.className)}))}),_excluded$B=["className"],useUtilityClasses$s=d=>{const{classes:m}=d;return composeClasses({root:["virtualScrollerRenderZone"]},getDataGridUtilityClass,m)},VirtualScrollerRenderZoneRoot=styled$1("div",{name:"MuiDataGrid",slot:"VirtualScrollerRenderZone",overridesResolver:(d,m)=>m.virtualScrollerRenderZone})({position:"absolute",display:"flex",flexDirection:"column"}),GridVirtualScrollerRenderZone=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$B),E=useGridRootProps(),v=useUtilityClasses$s(E);return jsxRuntimeExports.jsx(VirtualScrollerRenderZoneRoot,_extends$1({ref:g,className:clsx(v.root,x),ownerState:E},b))}),_excluded$A=["className"],DataGridVirtualScroller=reactExports.forwardRef(function(m,g){const{className:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$A),{getRootProps:E,getContentProps:v,getRenderZoneProps:S,getRows:C}=useGridVirtualScroller({ref:g});return jsxRuntimeExports.jsxs(GridVirtualScroller,_extends$1({className:x},E(b),{children:[jsxRuntimeExports.jsx(GridOverlays,{}),jsxRuntimeExports.jsx(GridVirtualScrollerContent,_extends$1({},v(),{children:jsxRuntimeExports.jsx(GridVirtualScrollerRenderZone,_extends$1({},S(),{children:C()}))}))]}))}),DataGridRaw=reactExports.forwardRef(function(m,g){const x=useDataGridProps(m),b=useDataGridComponent(x.apiRef,x);return jsxRuntimeExports.jsx(GridContextProvider,{privateApiRef:b,props:x,children:jsxRuntimeExports.jsxs(GridRoot,_extends$1({className:x.className,style:x.style,sx:x.sx,ref:g},x.forwardedProps,{children:[jsxRuntimeExports.jsx(GridHeader,{}),jsxRuntimeExports.jsx(GridBody,{VirtualScrollerComponent:DataGridVirtualScroller}),jsxRuntimeExports.jsx(GridFooterPlaceholder,{})]}))})}),DataGrid=reactExports.memo(DataGridRaw);DATA_GRID_PROPS_DEFAULT_VALUES.filterDebounceMs;DATA_GRID_PROPS_DEFAULT_VALUES.filterDebounceMs;DataGridRaw.propTypes={apiRef:PropTypes.shape({current:PropTypes.object.isRequired}),"aria-label":PropTypes.string,"aria-labelledby":PropTypes.string,autoHeight:PropTypes.bool,autoPageSize:PropTypes.bool,cellModesModel:PropTypes.object,checkboxSelection:PropTypes.bool,classes:PropTypes.object,clipboardCopyCellDelimiter:PropTypes.string,columnBuffer:PropTypes.number,columnGroupingModel:PropTypes.arrayOf(PropTypes.object),columnHeaderHeight:PropTypes.number,columns:chainPropTypes(PropTypes.array.isRequired),columnThreshold:PropTypes.number,columnVisibilityModel:PropTypes.object,components:PropTypes.object,componentsProps:PropTypes.object,density:PropTypes.oneOf(["comfortable","compact","standard"]),disableColumnFilter:PropTypes.bool,disableColumnMenu:PropTypes.bool,disableColumnSelector:PropTypes.bool,disableDensitySelector:PropTypes.bool,disableEval:PropTypes.bool,disableRowSelectionOnClick:PropTypes.bool,disableVirtualization:PropTypes.bool,editMode:PropTypes.oneOf(["cell","row"]),experimentalFeatures:PropTypes.shape({ariaV7:PropTypes.bool,columnGrouping:PropTypes.bool,warnIfFocusStateIsNotSynced:PropTypes.bool}),filterDebounceMs:PropTypes.number,filterMode:PropTypes.oneOf(["client","server"]),filterModel:PropTypes.shape({items:PropTypes.arrayOf(PropTypes.shape({field:PropTypes.string.isRequired,id:PropTypes.oneOfType([PropTypes.number,PropTypes.string]),operator:PropTypes.string.isRequired,value:PropTypes.any})).isRequired,logicOperator:PropTypes.oneOf(["and","or"]),quickFilterExcludeHiddenColumns:PropTypes.bool,quickFilterLogicOperator:PropTypes.oneOf(["and","or"]),quickFilterValues:PropTypes.array}),forwardedProps:PropTypes.object,getCellClassName:PropTypes.func,getDetailPanelContent:PropTypes.func,getEstimatedRowHeight:PropTypes.func,getRowClassName:PropTypes.func,getRowHeight:PropTypes.func,getRowId:PropTypes.func,getRowSpacing:PropTypes.func,hideFooter:PropTypes.bool,hideFooterPagination:PropTypes.bool,hideFooterSelectedRowCount:PropTypes.bool,ignoreDiacritics:PropTypes.bool,initialState:PropTypes.object,isCellEditable:PropTypes.func,isRowSelectable:PropTypes.func,keepNonExistentRowsSelected:PropTypes.bool,loading:PropTypes.bool,localeText:PropTypes.object,logger:PropTypes.shape({debug:PropTypes.func.isRequired,error:PropTypes.func.isRequired,info:PropTypes.func.isRequired,warn:PropTypes.func.isRequired}),logLevel:PropTypes.oneOf(["debug","error","info","warn",!1]),nonce:PropTypes.string,onCellClick:PropTypes.func,onCellDoubleClick:PropTypes.func,onCellEditStart:PropTypes.func,onCellEditStop:PropTypes.func,onCellKeyDown:PropTypes.func,onCellModesModelChange:PropTypes.func,onClipboardCopy:PropTypes.func,onColumnHeaderClick:PropTypes.func,onColumnHeaderDoubleClick:PropTypes.func,onColumnHeaderEnter:PropTypes.func,onColumnHeaderLeave:PropTypes.func,onColumnHeaderOut:PropTypes.func,onColumnHeaderOver:PropTypes.func,onColumnOrderChange:PropTypes.func,onColumnVisibilityModelChange:PropTypes.func,onFilterModelChange:PropTypes.func,onMenuClose:PropTypes.func,onMenuOpen:PropTypes.func,onPaginationModelChange:PropTypes.func,onPreferencePanelClose:PropTypes.func,onPreferencePanelOpen:PropTypes.func,onProcessRowUpdateError:PropTypes.func,onResize:PropTypes.func,onRowClick:PropTypes.func,onRowCountChange:PropTypes.func,onRowDoubleClick:PropTypes.func,onRowEditStart:PropTypes.func,onRowEditStop:PropTypes.func,onRowModesModelChange:PropTypes.func,onRowSelectionModelChange:PropTypes.func,onSortModelChange:PropTypes.func,onStateChange:PropTypes.func,pageSizeOptions:PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number,PropTypes.shape({label:PropTypes.string.isRequired,value:PropTypes.number.isRequired})]).isRequired),pagination:d=>d.pagination===!1?new Error(["MUI: `<DataGrid pagination={false} />` is not a valid prop.","Infinite scrolling is not available in the MIT version.","","You need to upgrade to DataGridPro or DataGridPremium component to disable the pagination."].join(`
612
- `)):null,paginationMode:PropTypes.oneOf(["client","server"]),paginationModel:PropTypes.shape({page:PropTypes.number.isRequired,pageSize:PropTypes.number.isRequired}),processRowUpdate:PropTypes.func,rowBuffer:PropTypes.number,rowCount:PropTypes.number,rowHeight:PropTypes.number,rowModesModel:PropTypes.object,rowPositionsDebounceMs:PropTypes.number,rows:PropTypes.arrayOf(PropTypes.object).isRequired,rowSelection:PropTypes.bool,rowSelectionModel:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number,PropTypes.string]).isRequired),PropTypes.number,PropTypes.string]),rowSpacingType:PropTypes.oneOf(["border","margin"]),rowThreshold:PropTypes.number,scrollbarSize:PropTypes.number,showCellVerticalBorder:PropTypes.bool,showColumnVerticalBorder:PropTypes.bool,slotProps:PropTypes.object,slots:PropTypes.object,sortingMode:PropTypes.oneOf(["client","server"]),sortingOrder:PropTypes.arrayOf(PropTypes.oneOf(["asc","desc"])),sortModel:PropTypes.arrayOf(PropTypes.shape({field:PropTypes.string.isRequired,sort:PropTypes.oneOf(["asc","desc"])})),sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object]),unstable_ignoreValueFormatterDuringExport:PropTypes.oneOfType([PropTypes.shape({clipboardExport:PropTypes.bool,csvExport:PropTypes.bool}),PropTypes.bool])};const enUS$1={},getGridLocalization=(d,m)=>{var g;return{components:{MuiDataGrid:{defaultProps:{localeText:_extends$1({},d,{MuiTablePagination:(m==null||(g=m.components)==null||(g=g.MuiTablePagination)==null?void 0:g.defaultProps)||{}})}}}}},enUS=getGridLocalization(GRID_DEFAULT_LOCALE_TEXT,enUS$1),ACTIONS="Actions";function DataTable(D){var A=D,{columns:d,initialState:m={},actions:g,actionsProps:x,initializing:b,noRows:E,error:v,compact:S,footerSide:C,fillFlex:T,persist:R,details:k}=A,L=Vt(A,["columns","initialState","actions","actionsProps","initializing","noRows","error","compact","footerSide","fillFlex","persist","details"]);var ae;const I=useTheme$1(),N=useGridApiRef(),[z,j]=reactExports.useState(0),[Y,B]=reactExports.useState(0),U=reactExports.useMemo(()=>{const{localeText:ue}=enUS.components.MuiDataGrid.defaultProps,pe=onlyTruthy(d.map(ge=>{var ve;if(!ge)return;const{type:ye,sx:Ee}=ge;return(!ye||ye==="string")&&((ve=ge.filterOperators)!=null||(ge.filterOperators=getGridStringOperators().flatMap(Se=>Se.value.includes("Empty")?Se:[Se,$t(Fe($t(Fe({},Se),{value:"!"+Se.value,getApplyFilterFn($e,Me){const Re=Se.getApplyFilterFn($e,Me);return Re&&_.negate(Re)}}),Se.getApplyFilterFnV7&&{getApplyFilterFnV7($e,Me){var De;const Re=(De=Se.getApplyFilterFnV7)==null?void 0:De.call(Se,$e,Me);return Re?_.negate(Re):null}}),{label:"(not) "+(ue["filterOperator"+_.upperFirst(Se.value)]||Se.value)})]))),!ge.mergeRender&&!ge.sx?ge:$t(Fe({},ge),{originalRenderCell:ge.renderCell||!0,renderCell(Se){const{columns:$e}=Se.api.store.getSnapshot();return reactExports.createElement(Box,{maxHeight:"100%",sx:Fe({textWrap:"wrap"},callable(Ee,Se))},ge.renderCell?ge.renderCell(Se):Se.formattedValue,ge.mergeRender&&reactExports.createElement(Flex$1,Fe({fontSize:"smaller",flexWrap:"wrap",mt:"2px",rowGap:0},ge.mergeRenderSx),...onlyTruthy(_.map(ge.mergeRender,(Me,Re)=>{if(!Me||$e.columnVisibilityModel[Re]!==!1)return null;const De=fe(Fe(Fe({},$e.lookup[Re]),Me.override),Se.row);return De&&reactExports.createElement(Box,Fe($t(Fe({},Me),{override:void 0}),S&&{lineHeight:"1em"}),De)}))))}})}));return g&&pe.unshift(Fe({field:ACTIONS,width:40*z,headerName:"",align:"center",headerAlign:"center",hideSortIcons:!0,disableColumnMenu:!0,renderCell(ge){const ye=g(Fe(Fe({},ge.row),ge));return setTimeout(()=>j(ye.length)),reactExports.createElement(Box,{whiteSpace:"nowrap"},...ye)}},x)),pe},[d,g,z]),W=useGetSize(),V=useDebounce(W.w||0,500),J=reactExports.useMemo(()=>{const ue=onlyTruthy(U.map(({field:ge,hideUnder:ye})=>(ye===!0||ye&&V<(typeof ye=="number"?ye:I.breakpoints.values[ye]))&&ge)),pe=Object.fromEntries(ue.map(ge=>[ge,!1]));return _.merge(m,{columns:{columnVisibilityModel:pe}}),B(_.sumBy(ue,ge=>_.find(d,ye=>{var Ee;return ye&&!ue.includes(ye.field)&&((Ee=ye.mergeRender)==null?void 0:Ee[ge])})?1:0)),ue},[U,V]),[Q,X]=reactExports.useState(R&&((ae=state$1.dataTablePersistence[R])==null?void 0:ae.columnVisibility)||{}),re=reactExports.useRef({});reactExports.useEffect(()=>{const{current:{id:ue,setCurRow:pe}}=re;pe==null||pe(_.find(L.rows,{id:ue}))});const ie=useGetSize(),oe=reactExports.createElement(Box,{ref:ie.refToPass,className:"footerSide",sx:{whiteSpace:"nowrap"}},C==null?void 0:C(V)),[Z,ee]=reactExports.useState(!1),ce=reactExports.useCallback(_.debounce(()=>{var pe;const ue=(pe=W.ref.current)==null?void 0:pe.querySelector(".MuiTablePagination-root");ee(ue&&ue.scrollWidth>ue.clientWidth||!1)},500),[W]);return reactExports.useEffect(ce,[W,V,ie.w]),reactExports.createElement(reactExports.Fragment,{},v&&reactExports.createElement(Alert,{severity:"error"},v),b&&reactExports.createElement(Box,{position:"relative"},reactExports.createElement(LinearProgress,{sx:{position:"absolute",width:"calc(100% - 2px)",borderRadius:1,m:"1px 1px"}})),reactExports.createElement(DataGrid,$t(Fe({key:V,initialState:m,density:S?"compact":"standard",columns:U,apiRef:N,disableRowSelectionOnClick:!0,ref:W.refToPass},L),{sx:Fe($t(Fe({},T&&{height:0,flex:"auto"}),{"& .MuiDataGrid-virtualScroller":{minHeight:"3em"},"& .MuiTablePagination-root":{scrollbarWidth:"none"}}),L.sx),slots:{noRowsOverlay:()=>b?null:reactExports.createElement(Center,{},E||"No entries"),footer:CustomFooter},slotProps:{footer:{add:oe},pagination:Fe({labelRowsPerPage:"Rows"},!Z&&{showFirstButton:!0,showLastButton:!0})},onCellClick({field:ue,row:pe}){var Ee;if(ue===ACTIONS||k===!1||((Ee=window.getSelection())==null?void 0:Ee.type)==="Range")return;const ge=Y+N.current.getVisibleColumns().length,ye=U.filter(ve=>!ve.dialogHidden&&(ve.renderCell||ve.field===ACTIONS||pe[ve.field]!==void 0));ye.length<=ge||newDialog({title:"Details",onClose(){re.current={}},Content(){const[ve,Se]=reactExports.useState(pe),$e=reactExports.useRef(pe);ve&&($e.current=ve);const Me=$e.current;return re.current={id:Me.id,setCurRow:Se},reactExports.createElement(Box,{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(8em,1fr))",gap:"1em",gridAutoFlow:"dense",minWidth:"max(16em, 40vw)",sx:{opacity:ve?void 0:.5}},ye.map(Re=>reactExports.createElement(Box,{key:Re.field,gridColumn:Re.flex>=1?"1/-1":void 0},reactExports.createElement(Box,{bgcolor:"#0003",p:1},Re.headerName||Re.field),reactExports.createElement(Flex$1,{minHeight:"2.5em",px:1,wordBreak:"break-word",flexWrap:"wrap"},fe(Re,Me)))))}})},onColumnVisibilityModelChange:ue=>{X(ue),R&&updateStateObject(state$1,"dataTablePersistence",pe=>{pe[R]={columnVisibility:_.omitBy(ue,(ge,ye)=>J.includes(ye)===(ge===!1))}})},columnVisibilityModel:Fe(Fe(Fe({},Object.fromEntries(J.map(ue=>[ue,!1]))),L.columnVisibilityModel),Q)})));function fe(ue,pe){const ge=N.current;let ye=pe[ue.field];ue.valueGetter&&(ye=ue.valueGetter({value:ye,api:ge,row:pe,field:ue.field,id:pe.id}));const Ee=ue.originalRenderCell||ue.renderCell;return Ee&&Ee!==!0?Ee(Fe({value:ye,row:pe,api:ge},pe)):ue.valueFormatter?ue.valueFormatter(Fe({value:ye},pe)):ye}}function CustomFooter(g){var x=g,{add:d}=x,m=Vt(x,["add"]);return reactExports.createElement(GridFooterContainer,m,reactExports.createElement(Box,{ml:{sm:1}},d),reactExports.createElement(GridFooter,{sx:{border:"none"}}))}const fillFlexParentSx={display:"flex",flexDirection:"column"};function ConfigForm(E){var v=E,{keys:d,form:m,saveOnChange:g,onSave:x}=v,b=Vt(v,["keys","form","saveOnChange","onSave"]);const[S,C]=reactExports.useState(d),T=useApiEx(S&&"get_config",{only:S}),[R,k]=reactExports.useState(T.data);reactExports.useEffect(()=>k(I=>T.data||I),[T.data]);const L=R&&!_.isEqual(R,T.data);reactExports.useEffect(()=>{L&&g&&A()},[L]);const D=_.isFunction(m)?m(R,{setValues:k}):m;if(reactExports.useEffect(()=>{d||C(onlyTruthy(D.fields.map(I=>I==null?void 0:I.k)))},[d]),!R)return T.element;return reactExports.createElement(Form,$t(Fe(Fe({values:R,set(I,N){k(z=>$t(Fe({},z),{[N]:I}))},save:g?!1:Fe({onClick:A},propsForModifiedValues(L))},D),b),{barSx:Fe({gap:1},b.barSx),addToBar:[reactExports.createElement(IconBtn,{icon:RestartAlt,disabled:!L,title:"Reset",onClick(){k(T.data)}}),...b.addToBar||[]]}));function A(){return apiCall("set_config",{values:R}).then(x).then(T.reload)}}function BlockIpBtn(x){var b=x,{ip:d,comment:m}=b,g=Vt(b,["ip","comment"]);const{data:E,refresh:v}=useBatch(isIpBlocked,d,{delay:100,expireAfter:5e3});return reactExports.createElement(IconBtn,$t(Fe(Fe({icon:Block,title:"Block IP",confirm:"Block address "+d},E&&{disabled:!0,title:"Blocked"}),g),{onClick(){return vt(this,null,function*(){yield apiCall("add_block",{ip:d,merge:{comment:m}}),v(),toast$1("Blocked","success")})}}))}function isIpBlocked(d){return vt(this,null,function*(){return apiCall("is_ip_blocked",{ips:d}).then(m=>m.blocked)})}const logLabels={log:"Served",error_log:"Not served",console:"Console",disconnections:"Disconnections",ips:"IP's"};let reloadIps;function LogsPage({setTitleSide:d}){const[m,g]=reactExports.useState(0),x=typedKeys(logLabels),b=!useBreakpoint("sm")&&{error_log:"Not",console:reactExports.createElement(Terminal),disconnections:reactExports.createElement(DisconnectIcon)},E=x[m],v=E.endsWith("log"),S=useApiEx("get_log_info");return d(reactExports.useMemo(()=>v&&(S.element||with_(S.data,T=>reactExports.createElement(Box,{fontSize:"smaller"},`Current: ${formatBytes(_.sum(Object.values(T.current)))}`,reactExports.createElement("br"),with_(Object.values(T.rotated).flat(),R=>`Archived: ${formatBytes(_.sumBy(R,"size"))} / ${R.length} files`)))),[S.element,S.data,v])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{gap:0},reactExports.createElement(Tabs,{value:m,onChange(T,R){g(R)}},x.map(T=>reactExports.createElement(Tab,{label:_.get(b,T)||logLabels[T],key:T,sx:{minWidth:0,px:{xs:1.5,sm:2}}}))),reactExports.createElement(Box,{flex:1}),reactExports.createElement(IconBtn,{icon:Download,title:v?"Download as file":"Not available",link:API_URL+`get_log_file?file=${E}`,disabled:!v}),reactExports.createElement(IconBtn,{icon:Settings,title:"Options",onClick:C})),x.map(T=>reactExports.createElement(LogFile,{hidden:E!==T,file:T,key:T,fillFlex:!0})));function C(){newDialog({title:"Log options",dialogProps:{sx:{maxWidth:"40em"}},Content(){return reactExports.createElement(ConfigForm,{barSx:Fe({gap:2,width:"100%"},useDialogBarColors()),form:{stickyBar:!0,fields:[{k:CFG.log,label:logLabels.log,sm:6,helperText:"Requests are logged here. Empty to disable it."},{k:CFG.error_log,label:logLabels.error_log,sm:6,placeholder:"errors go to main log",helperText:"Write errors in a different file. Empty to use same file."},{k:CFG.log_rotation,comp:SelectField,sm:6,options:[{value:"",label:"disabled"},"daily","weekly","monthly"],helperText:wikiLink("Logs#rotation","To keep log-files smaller")},{k:CFG.dont_log_net,comp:NetmaskField,label:"Don't log address",sm:6,placeholder:"no exception"},{k:CFG.log_gui,sm:6,comp:BoolField,label:"Log interface loading",helperText:"Some requests are necessary to load the interface"},{k:CFG.log_api,sm:6,comp:BoolField,label:"Log API requests",helperText:"Requests for commands"},{k:CFG.log_ua,sm:6,comp:BoolField,label:"Log User-Agent",helperText:"Contains browser and possibly OS information. Can double the size of your logs on disk."},{k:CFG.log_spam,sm:6,comp:BoolField,label:"Log spam requests",helperText:md`Spam are *failed* requests that are considered attacks aimed *not* to HFS and therefore harmless`},{k:CFG.track_ips,sm:6,comp:BoolField,label:"Keep track of IPs",parentProps:{display:"flex",gap:1},after:reactExports.createElement(Btn$1,{size:"small",variant:"outlined",color:"warning",confirm:!0,doneMessage:!0,onClick:()=>apiCall("reset_ips").then(reloadIps)},"Reset")}]}})}})}}const LOGS_ON_FILE=[CFG.log,CFG.error_log];function LogFile(v){var S=v,{file:d,footerSide:m,hidden:g,limit:x,filter:b}=S,E=Vt(S,["file","footerSide","hidden","limit","filter"]);const[C,T]=reactExports.useState(!1),[R,k]=reactExports.useState(!1),{pause:L,pauseButton:D}=usePauseButton(),[A,I]=useToggleButton("Show APIs","Hide APIs",ye=>({icon:SmartToy,sx:{rotate:ye?0:"180deg"},disabled:d==="console"}),!0),[N,z]=reactExports.useState(NaN),[j,Y]=reactExports.useState(!0),[B,U]=reactExports.useState(0),W=oo(2,20),V=!0,[J,Q]=reactExports.useState(!g);reactExports.useEffect(()=>Q(ye=>ye||!g),[g]);const X=LOGS_ON_FILE.includes(d);useApi(J&&X&&"get_log_file",{file:d,range:j||!B?-1048576:`0-${B}`},{skipParse:!0,skipLog:!0,onResponse(ye,Ee){var $e;const ve=Ee.split(`
612
+ `)):null,paginationMode:PropTypes.oneOf(["client","server"]),paginationModel:PropTypes.shape({page:PropTypes.number.isRequired,pageSize:PropTypes.number.isRequired}),processRowUpdate:PropTypes.func,rowBuffer:PropTypes.number,rowCount:PropTypes.number,rowHeight:PropTypes.number,rowModesModel:PropTypes.object,rowPositionsDebounceMs:PropTypes.number,rows:PropTypes.arrayOf(PropTypes.object).isRequired,rowSelection:PropTypes.bool,rowSelectionModel:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.number,PropTypes.string]).isRequired),PropTypes.number,PropTypes.string]),rowSpacingType:PropTypes.oneOf(["border","margin"]),rowThreshold:PropTypes.number,scrollbarSize:PropTypes.number,showCellVerticalBorder:PropTypes.bool,showColumnVerticalBorder:PropTypes.bool,slotProps:PropTypes.object,slots:PropTypes.object,sortingMode:PropTypes.oneOf(["client","server"]),sortingOrder:PropTypes.arrayOf(PropTypes.oneOf(["asc","desc"])),sortModel:PropTypes.arrayOf(PropTypes.shape({field:PropTypes.string.isRequired,sort:PropTypes.oneOf(["asc","desc"])})),sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object]),unstable_ignoreValueFormatterDuringExport:PropTypes.oneOfType([PropTypes.shape({clipboardExport:PropTypes.bool,csvExport:PropTypes.bool}),PropTypes.bool])};const enUS$1={},getGridLocalization=(d,m)=>{var g;return{components:{MuiDataGrid:{defaultProps:{localeText:_extends$1({},d,{MuiTablePagination:(m==null||(g=m.components)==null||(g=g.MuiTablePagination)==null?void 0:g.defaultProps)||{}})}}}}},enUS=getGridLocalization(GRID_DEFAULT_LOCALE_TEXT,enUS$1),ACTIONS="Actions";function DataTable(D){var A=D,{columns:d,initialState:m={},actions:g,actionsProps:x,initializing:b,noRows:E,error:v,compact:S,footerSide:C,fillFlex:T,persist:R,details:k}=A,L=Vt(A,["columns","initialState","actions","actionsProps","initializing","noRows","error","compact","footerSide","fillFlex","persist","details"]);var ae;const I=useTheme$1(),N=useGridApiRef(),[z,j]=reactExports.useState(0),[Y,B]=reactExports.useState(0),U=reactExports.useMemo(()=>{const{localeText:ue}=enUS.components.MuiDataGrid.defaultProps,pe=onlyTruthy(d.map(ge=>{var ve;if(!ge)return;const{type:ye,sx:Ee}=ge;return(!ye||ye==="string")&&((ve=ge.filterOperators)!=null||(ge.filterOperators=getGridStringOperators().flatMap(Se=>Se.value.includes("Empty")?Se:[Se,$t(Fe($t(Fe({},Se),{value:"!"+Se.value,getApplyFilterFn($e,Me){const Re=Se.getApplyFilterFn($e,Me);return Re&&_.negate(Re)}}),Se.getApplyFilterFnV7&&{getApplyFilterFnV7($e,Me){var De;const Re=(De=Se.getApplyFilterFnV7)==null?void 0:De.call(Se,$e,Me);return Re?_.negate(Re):null}}),{label:"(not) "+(ue["filterOperator"+_.upperFirst(Se.value)]||Se.value)})]))),!ge.mergeRender&&!ge.sx?ge:$t(Fe({},ge),{originalRenderCell:ge.renderCell||!0,renderCell(Se){const{columns:$e}=Se.api.store.getSnapshot();return reactExports.createElement(Box,{maxHeight:"100%",sx:Fe({textWrap:"wrap"},callable(Ee,Se))},ge.renderCell?ge.renderCell(Se):Se.formattedValue,ge.mergeRender&&reactExports.createElement(Flex$1,Fe({fontSize:"smaller",flexWrap:"wrap",mt:"2px",rowGap:0},ge.mergeRenderSx),...onlyTruthy(_.map(ge.mergeRender,(Me,Re)=>{if(!Me||$e.columnVisibilityModel[Re]!==!1)return null;const De=fe(Fe(Fe({},$e.lookup[Re]),Me.override),Se.row);return De&&reactExports.createElement(Box,Fe($t(Fe({},Me),{override:void 0}),S&&{lineHeight:"1em"}),De)}))))}})}));return g&&pe.unshift(Fe({field:ACTIONS,width:40*z,headerName:"",align:"center",headerAlign:"center",hideSortIcons:!0,disableColumnMenu:!0,renderCell(ge){const ye=g(Fe(Fe({},ge.row),ge));return setTimeout(()=>j(ye.length)),reactExports.createElement(Box,{whiteSpace:"nowrap"},...ye)}},x)),pe},[d,g,z]),W=useGetSize(),V=useDebounce(W.w||0,500),J=reactExports.useMemo(()=>{const ue=onlyTruthy(U.map(({field:ge,hideUnder:ye})=>(ye===!0||ye&&V<(typeof ye=="number"?ye:I.breakpoints.values[ye]))&&ge)),pe=Object.fromEntries(ue.map(ge=>[ge,!1]));return _.merge(m,{columns:{columnVisibilityModel:pe}}),B(_.sumBy(ue,ge=>_.find(d,ye=>{var Ee;return ye&&!ue.includes(ye.field)&&((Ee=ye.mergeRender)==null?void 0:Ee[ge])})?1:0)),ue},[U,V]),[Q,X]=reactExports.useState(R&&((ae=state$1.dataTablePersistence[R])==null?void 0:ae.columnVisibility)||{}),re=reactExports.useRef({});reactExports.useEffect(()=>{const{current:{id:ue,setCurRow:pe}}=re;pe==null||pe(_.find(L.rows,{id:ue}))});const ie=useGetSize(),oe=reactExports.createElement(Box,{ref:ie.refToPass,className:"footerSide",sx:{whiteSpace:"nowrap"}},C==null?void 0:C(V)),[Z,ee]=reactExports.useState(!1),ce=reactExports.useCallback(_.debounce(()=>{var pe;const ue=(pe=W.ref.current)==null?void 0:pe.querySelector(".MuiTablePagination-root");ee(ue&&ue.scrollWidth>ue.clientWidth||!1)},500),[W]);return reactExports.useEffect(ce,[W,V,ie.w]),reactExports.createElement(reactExports.Fragment,{},v&&reactExports.createElement(Alert,{severity:"error"},v),b&&reactExports.createElement(Box,{position:"relative"},reactExports.createElement(LinearProgress,{sx:{position:"absolute",width:"calc(100% - 2px)",borderRadius:1,m:"1px 1px"}})),reactExports.createElement(DataGrid,$t(Fe({key:V,initialState:m,density:S?"compact":"standard",columns:U,apiRef:N,disableRowSelectionOnClick:!0,ref:W.refToPass},L),{sx:Fe($t(Fe({},T&&{height:0,flex:"auto"}),{"& .MuiDataGrid-virtualScroller":{minHeight:"3em"},"& .MuiTablePagination-root":{scrollbarWidth:"none"}}),L.sx),slots:{noRowsOverlay:()=>b?null:reactExports.createElement(Center,{},E||"No entries"),footer:CustomFooter},slotProps:{footer:{add:oe},pagination:Fe({labelRowsPerPage:"Rows"},!Z&&{showFirstButton:!0,showLastButton:!0})},onCellClick({field:ue,row:pe}){var Ee;if(ue===ACTIONS||k===!1||((Ee=window.getSelection())==null?void 0:Ee.type)==="Range")return;const ge=Y+N.current.getVisibleColumns().length,ye=U.filter(ve=>!ve.dialogHidden&&(ve.renderCell||ve.field===ACTIONS||pe[ve.field]!==void 0));ye.length<=ge||newDialog({title:"Details",onClose(){re.current={}},Content(){const[ve,Se]=reactExports.useState(pe),$e=reactExports.useRef(pe);ve&&($e.current=ve);const Me=$e.current;return re.current={id:Me.id,setCurRow:Se},reactExports.createElement(Box,{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(8em,1fr))",gap:"1em",gridAutoFlow:"dense",minWidth:"max(16em, 40vw)",sx:{opacity:ve?void 0:.5}},ye.map(Re=>reactExports.createElement(Box,{key:Re.field,gridColumn:Re.flex>=1?"1/-1":void 0},reactExports.createElement(Box,{bgcolor:"#0003",p:1},Re.headerName||Re.field),reactExports.createElement(Flex$1,{minHeight:"2.5em",px:1,wordBreak:"break-word",flexWrap:"wrap"},fe(Re,Me)))))}})},onColumnVisibilityModelChange:ue=>{X(ue),R&&updateStateObject(state$1,"dataTablePersistence",pe=>{pe[R]={columnVisibility:_.omitBy(ue,(ge,ye)=>J.includes(ye)===(ge===!1))}})},columnVisibilityModel:Fe(Fe(Fe({},Object.fromEntries(J.map(ue=>[ue,!1]))),L.columnVisibilityModel),Q)})));function fe(ue,pe){const ge=N.current;let ye=pe[ue.field];ue.valueGetter&&(ye=ue.valueGetter({value:ye,api:ge,row:pe,field:ue.field,id:pe.id}));const Ee=ue.originalRenderCell||ue.renderCell;return Ee&&Ee!==!0?Ee(Fe({value:ye,row:pe,api:ge},pe)):ue.valueFormatter?ue.valueFormatter(Fe({value:ye},pe)):ye}}function CustomFooter(g){var x=g,{add:d}=x,m=Vt(x,["add"]);return reactExports.createElement(GridFooterContainer,m,reactExports.createElement(Box,{ml:{sm:1}},d),reactExports.createElement(GridFooter,{sx:{border:"none"}}))}const fillFlexParentSx={display:"flex",flexDirection:"column"};function ConfigForm(E){var v=E,{keys:d,form:m,saveOnChange:g,onSave:x}=v,b=Vt(v,["keys","form","saveOnChange","onSave"]);const[S,C]=reactExports.useState(d),T=useApiEx(S&&"get_config",{only:S}),[R,k]=reactExports.useState(T.data);reactExports.useEffect(()=>k(I=>T.data||I),[T.data]);const L=R&&!_.isEqual(R,T.data);reactExports.useEffect(()=>{L&&g&&A()},[L]);const D=_.isFunction(m)?m(R,{setValues:k}):m;if(reactExports.useEffect(()=>{d||C(onlyTruthy(D.fields.map(I=>I==null?void 0:I.k)))},[d]),!R)return T.element;return reactExports.createElement(Form,$t(Fe(Fe({values:R,set(I,N){k(z=>$t(Fe({},z),{[N]:I}))},save:g?!1:Fe({onClick:A},propsForModifiedValues(L))},D),b),{barSx:Fe({gap:1},b.barSx),addToBar:[reactExports.createElement(IconBtn,{icon:RestartAlt,disabled:!L,title:"Reset",onClick(){k(T.data)}}),...b.addToBar||[]]}));function A(){return apiCall("set_config",{values:R}).then(x).then(T.reload)}}function BlockIpBtn(x){var b=x,{ip:d,comment:m}=b,g=Vt(b,["ip","comment"]);const{data:E,refresh:v}=useBatch(isIpBlocked,d,{delay:100,expireAfter:5e3});return reactExports.createElement(IconBtn,$t(Fe(Fe({icon:Block,title:"Block IP",confirm:"Block address "+d},E&&{disabled:!0,title:"Blocked"}),g),{onClick(){return yt(this,null,function*(){yield apiCall("add_block",{ip:d,merge:{comment:m}}),v(),toast$1("Blocked","success")})}}))}function isIpBlocked(d){return yt(this,null,function*(){return apiCall("is_ip_blocked",{ips:d}).then(m=>m.blocked)})}const logLabels={log:"Served",error_log:"Not served",console:"Console",disconnections:"Disconnections",ips:"IP's"};let reloadIps;function LogsPage({setTitleSide:d}){const[m,g]=reactExports.useState(0),x=typedKeys(logLabels),b=!useBreakpoint("sm")&&{error_log:"Not",console:reactExports.createElement(Terminal),disconnections:reactExports.createElement(DisconnectIcon)},E=x[m],v=E.endsWith("log"),S=useApiEx("get_log_info");return d(reactExports.useMemo(()=>v&&(S.element||with_(S.data,T=>reactExports.createElement(Box,{fontSize:"smaller"},`Current: ${formatBytes(_.sum(Object.values(T.current)))}`,reactExports.createElement("br"),with_(Object.values(T.rotated).flat(),R=>`Archived: ${formatBytes(_.sumBy(R,"size"))} / ${R.length} files`)))),[S.element,S.data,v])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{gap:0},reactExports.createElement(Tabs,{value:m,onChange(T,R){g(R)}},x.map(T=>reactExports.createElement(Tab,{label:_.get(b,T)||logLabels[T],key:T,sx:{minWidth:0,px:{xs:1.5,sm:2}}}))),reactExports.createElement(Box,{flex:1}),reactExports.createElement(IconBtn,{icon:Download,title:v?"Download as file":"Not available",link:API_URL+`get_log_file?file=${E}`,disabled:!v}),reactExports.createElement(IconBtn,{icon:Settings,title:"Options",onClick:C})),x.map(T=>reactExports.createElement(LogFile,{hidden:E!==T,file:T,key:T,fillFlex:!0})));function C(){newDialog({title:"Log options",dialogProps:{sx:{maxWidth:"40em"}},Content(){return reactExports.createElement(ConfigForm,{barSx:Fe({gap:2,width:"100%"},useDialogBarColors()),form:{stickyBar:!0,fields:[{k:CFG.log,label:logLabels.log,sm:6,helperText:"Requests are logged here. Empty to disable it."},{k:CFG.error_log,label:logLabels.error_log,sm:6,placeholder:"errors go to main log",helperText:"Write errors in a different file. Empty to use same file."},{k:CFG.log_rotation,comp:SelectField,sm:6,options:[{value:"",label:"disabled"},"daily","weekly","monthly"],helperText:wikiLink("Logs#rotation","To keep log-files smaller")},{k:CFG.dont_log_net,comp:NetmaskField,label:"Don't log address",sm:6,placeholder:"no exception"},{k:CFG.log_gui,sm:6,comp:BoolField,label:"Log interface loading",helperText:"Some requests are necessary to load the interface"},{k:CFG.log_api,sm:6,comp:BoolField,label:"Log API requests",helperText:"Requests for commands"},{k:CFG.log_ua,sm:6,comp:BoolField,label:"Log User-Agent",helperText:"Contains browser and possibly OS information. Can double the size of your logs on disk."},{k:CFG.log_spam,sm:6,comp:BoolField,label:"Log spam requests",helperText:md`Spam are *failed* requests that are considered attacks aimed *not* to HFS and therefore harmless`},{k:CFG.track_ips,sm:6,comp:BoolField,label:"Keep track of IPs",parentProps:{display:"flex",gap:1},after:reactExports.createElement(Btn$1,{size:"small",variant:"outlined",color:"warning",confirm:!0,doneMessage:!0,onClick:()=>apiCall("reset_ips").then(reloadIps)},"Reset")}]}})}})}}const LOGS_ON_FILE=[CFG.log,CFG.error_log];function LogFile(v){var S=v,{file:d,footerSide:m,hidden:g,limit:x,filter:b}=S,E=Vt(S,["file","footerSide","hidden","limit","filter"]);const[C,T]=reactExports.useState(!1),[R,k]=reactExports.useState(!1),{pause:L,pauseButton:D}=usePauseButton(),[A,I]=useToggleButton("Show APIs","Hide APIs",ye=>({icon:SmartToy,sx:{rotate:ye?0:"180deg"},disabled:d==="console"}),!0),[N,z]=reactExports.useState(NaN),[j,Y]=reactExports.useState(!0),[B,U]=reactExports.useState(0),W=oo(2,20),V=!0,[J,Q]=reactExports.useState(!g);reactExports.useEffect(()=>Q(ye=>ye||!g),[g]);const X=LOGS_ON_FILE.includes(d);useApi(J&&X&&"get_log_file",{file:d,range:j||!B?-1048576:`0-${B}`},{skipParse:!0,skipLog:!0,onResponse(ye,Ee){var $e;const ve=Ee.split(`
613
613
  `);if(j){const Me=Number(($e=splitAt("/",ye.headers.get("Content-Range")||""))==null?void 0:$e[1]);if(isNaN(Me))throw _dbg("shouldn't happen");z(Me),Ee.length>=Me?Y(!1):U(Me-Ee.length+ve.shift().length+1)}else B&&(toast$1(`Entire log loaded, ${formatBytes(B)}`),U(0));const Se=mapFilter(ve,(Me,Re)=>ge(parseLogLine(Me,Re)),Boolean,V);ie(Me=>[...Me,...Se])}});const{list:re,setList:ie,error:oe,connecting:Z,reload:ee}=useApiList(J&&"get_log",{file:d},{limit:x,invert:V,pause:L,map:ge}),ce=d==="ips";ce&&(reloadIps=ee);const fe={field:"ts",headerName:"Timestamp",type:"dateTime",width:96,valueGetter:({value:ye})=>new Date(ye),renderCell:({value:ye})=>reactExports.createElement(reactExports.Fragment,{},ye.toLocaleDateString(),reactExports.createElement("br"),ye.toLocaleTimeString())},ae={field:"ip",headerName:"Address",flex:.6,minWidth:130,maxWidth:230,mergeRender:{user:{display:"flex",justifyContent:"space-between",gap:".5em"},country:C&&{},ua:{}}},ue=reactExports.useMemo(()=>{var ye;return b?re.filter(b):A||((ye=re==null?void 0:re[0])==null?void 0:ye.uri)===void 0?re:re.filter(Ee=>!Ee.uri.startsWith(API_URL))},[re,A,b]),pe=d==="console";return g?null:reactExports.createElement(DataTable,$t(Fe({persist:"log_"+d,error:oe,loading:Z,rows:ue,compact:!0,actionsProps:{hideUnder:"md"},actions:pe?void 0:({row:ye})=>onlyTruthy([reactExports.createElement(BlockIpBtn,{ip:ye.ip,comment:"From log"}),ce&&reactExports.createElement(Btn$1,{icon:Delete,confirm:!0,title:`Delete ${ye.ip}`,doneMessage:!0,onClick:()=>apiCall("delete_ips",{ip:ye.ip}).then(()=>ie(Ee=>Ee.filter(ve=>ve.ip!==ye.ip)))}),ce&&reactExports.createElement(Btn$1,{icon:AutoDelete,confirm:!0,title:`Delete all records up to ${formatTimestamp$2(ye.ts)}`,onClick:()=>apiCall("delete_ips",{ts:ye.ts}).then(Ee=>toast$1(`${Ee.n} deleted`)).then(ee)}),X&&reactExports.createElement(Btn$1,{icon:ContentCopy,title:"Copy request",onClick(){copyTextToClipboard(JSON.stringify(_.omit(ye,"id"),void 0,2))}})]),initialState:ce?{sorting:{sortModel:[{field:"ts",sort:"desc"}]}}:void 0},E),{footerSide:ye=>reactExports.createElement(Box,{},D,I,!Z&&B>0&&reactExports.createElement(Btn$1,{icon:ClearAll,variant:"outlined",sx:{ml:{sm:1}},labelIf:ye>700,title:`Only ${formatBytes(W)} was loaded, for speed. Total size is ${formatBytes(N)}`,loading:!j,onClick:()=>Y(!1)},"Load whole log"),m),columns:pe?[fe,{field:"k",headerName:"Level",hideUnder:"sm"},{field:"msg",headerName:"Message",flex:1,mergeRender:{k:{override:{valueFormatter:({value:ye})=>ye!=="log"&&ye}}}}]:ce||d==="disconnections"?[fe,ae,{headerName:"Country",field:"country",flex:1,hideUnder:!C||"md",valueGetter:({value:ye})=>{var Ee;return((Ee=_.find(ALL,{code:ye}))==null?void 0:Ee.name)||ye},renderCell:({row:ye})=>reactExports.createElement(Country,{code:ye.country,long:!0,def:"-"})},!ce&&{field:"msg",headerName:"Message",flex:4}]:[ae,{headerName:"Country",field:"country",valueGetter:({row:ye})=>{var Ee;return(Ee=ye.extra)==null?void 0:Ee.country},hideUnder:!C||"xl",renderCell:({value:ye})=>reactExports.createElement(Country,{code:ye,def:"-"})},{field:"user",headerName:"Username",flex:.3,maxWidth:200,hideUnder:"xl"},fe,{field:"method",headerName:"Method",width:80,hideUnder:"xl"},{field:"status",headerName:"Code",type:"number",width:70,hideUnder:"xl",renderCell:({value:ye})=>hTooltip(prefix(ye+" - ",httpCodes[ye])||"Unknown",void 0,reactExports.createElement(Box,{bgcolor:"#888a",color:"#fff",borderRadius:".3em",p:".05em .2em"},ye))},{field:"length",headerName:"Size",type:"number",hideUnder:"md",valueFormatter:({value:ye})=>formatBytes(ye)},{headerName:"Agent",field:"ua",width:60,hideUnder:!R||"md",valueGetter:({row:ye})=>{var Ee;return(Ee=ye.extra)==null?void 0:Ee.ua},renderCell:({value:ye})=>agentIcons(ye)},{field:"notes",headerName:"Notes",width:110,hideUnder:"sm",cellClassName:"wrap",renderCell:({value:ye})=>ye&&md(ye)},{field:"uri",headerName:"URI",flex:2,minWidth:100,sx:{wordBreak:"break-all"},mergeRender:{method:{},status:{}},renderCell:({value:ye,row:Ee})=>{var De;const[ve,Se]=splitAt("?",ye).map(safeDecodeURIComponent),$e=(De=Ee.extra)==null?void 0:De.ul;if(_.isArray($e))return ve+$e.join(" + ");if(!ve.startsWith(API_URL))return[ve,Se&&reactExports.createElement(Box,{key:0,component:"span",color:"text.secondary",fontSize:"smaller"},"?",Se)];const Me=ve.slice(API_URL.length),Re=Se&&": "+Array.from(new URLSearchParams(Se)).map(Be=>{var Le;return`${Be[0]}=${(Le=tryJson(Be[1]))!=null?Le:Be[1]}`}).join(" ; ");return"API "+Me+Re}}]}));function ge(ye){var ve,Se,$e;if(!ye)return;const{extra:Ee}=ye;if((Ee!=null&&Ee.country||ye.country)&&!C&&T(!0),Ee!=null&&Ee.ua&&!R&&k(!0),ye.uri){const Me=ye.method==="PUT"||(Ee==null?void 0:Ee.ul),Re=Me&&stringAfter("?",ye.uri).includes("partial=");Me&&(ye.length=((ve=Ee==null?void 0:Ee.size)!=null?ve:0)+(!Re&&Number((Se=ye.uri.match(/\?.*resume=(\d+)/))==null?void 0:Se[1])||0)),ye.notes=Ee!=null&&Ee.dl?"full download "+(Ee.speed?formatSpeed(Ee.speed,{sep:" "}):""):Me?`${Re?"partial ":""} upload ${Ee.speed?formatSpeed(Ee.speed,{sep:" "}):""}`:ye.status===HTTP_UNAUTHORIZED&&(($e=ye.uri)!=null&&$e.startsWith(API_URL+"loginSrp"))?"login failed"+prefix(`:
614
614
  `,Ee==null?void 0:Ee.u):_.map(Ee==null?void 0:Ee.params,(De,Be)=>`${Be}: ${De}
615
615
  `).join("")+(ye.notes||""),Ee!=null&&Ee.aborted&&(ye.notes+=" (aborted)")}return ye}}const UW="https://upload.wikimedia.org/wikipedia/commons/",BROWSER_ICONS={Chrome:UW+"e/e1/Google_Chrome_icon_%28February_2022%29.svg",Chromium:UW+"f/fe/Chromium_Material_Icon.svg",Firefox:UW+"a/a0/Firefox_logo%2C_2019.svg",Safari:UW+"5/52/Safari_browser_logo.svg",Edge:UW+"9/98/Microsoft_Edge_logo_%282019%29.svg",Opera:UW+"4/49/Opera_2015_icon.svg"},OS_ICONS={android:UW+"d/d7/Android_robot.svg",linux:UW+"0/0a/Tux-shaded.svg",win:UW+"0/0a/Unofficial_Windows_logo_variant_-_2002%E2%80%932012_%28Multicolored%29.svg",apple:UW+"7/74/Apple_logo_dark_grey.svg"},OSS={apple:/Mac OS|iPhone OS/,win:/Windows NT/,android:/Android/,linux:/Linux/};function agentIcons(d){if(!d)return;const m=shortenAgent(d),g=reactExports.createElement(AgentIcon,{k:m,altText:!0,map:BROWSER_ICONS}),x=_.findKey(OSS,b=>b.test(d));return hTooltip(d,void 0,reactExports.createElement(Box,{fontSize:"110%"},g," ",x&&osIcon(x)))}const alreadyFailed={};function osIcon(d){return reactExports.createElement(AgentIcon,{k:d,map:OS_ICONS})}function AgentIcon({k:d,map:m,altText:g}){const x=m[d],[b,E]=reactExports.useState(alreadyFailed[d]);return!x||b?reactExports.createElement(reactExports.Fragment,{},g?d:null):reactExports.createElement("img",{src:x,alt:d+" icon",style:{height:"1.2em",verticalAlign:"bottom",marginRight:".2em"},onError(){E(alreadyFailed[d]=!0)}})}function parseLogLine(d,m){const g=/^(.+?) (.+?) (.+?) \[(.{11}):(.{14})] "(\w+) ([^"]+) HTTP\/\d.\d" (\d+) (-|\d+) ?(.*)/.exec(d);if(!g)return;const[,x,,b,E,v,S,C,T,R,k]=g;return{id:m,ip:x,user:b==="-"?void 0:b,ts:new Date(E+" "+v),method:S,uri:C,status:Number(T),length:R==="-"?void 0:Number(R),extra:tryJson(tryJson(k))||void 0}}function MonitorPage({setTitleSide:d}){return d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"If you are behind a proxy, connections list may not match browsers activity"),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(MoreInfo),reactExports.createElement(Connections))}function MoreInfo(){var L,D;const{data:d,element:m,reload:g}=useApiEx("get_status");useInterval(g,1e4);const{data:x}=useApiEvents("get_connection_stats"),[b,E]=reactExports.useState(!1),v=useBreakpoint("md"),S=useBreakpoint("sm"),C=useBreakpoint("xl"),T=createDurationFormatter({maxTokens:2,skipZeroes:!0});return m||reactExports.createElement(Box,{display:"flex",flexWrap:"wrap",gap:{xs:.5,md:1},mb:{xs:1,sm:2}},(b||v)&&R("started",{label:"Uptime",render:A=>T(Date.now()-+new Date(A)),title:A=>"Started: "+formatTimestamp$1(A)}),(b||S)&&R("sent_got",{render:A=>({Sent:formatBytes(A[0]),Got:formatBytes(A[1])}),title:A=>"Since: "+formatTimestamp$1(A[2]),onDelete:()=>confirmDialog$1("Reset stats?").then(A=>A&&apiCall("clear_persistent",{k:["totalSent","totalGot"]}).then(()=>alertDialog$1("Done","success"),alertDialog$1))}),R("outSpeed",{label:"Output",render:formatSpeedK,minWidth:"8.5em"}),R("inSpeed",{label:"Input",render:formatSpeedK,minWidth:"8.5em"}),(b||S)&&R("ips",{label:"IPs",title:()=>"Currently connected"}),(v||b&&v||((L=d==null?void 0:d.http)==null?void 0:L.error))&&R("http",{label:"HTTP",render:k}),(v||b&&v||((D=d==null?void 0:d.https)==null?void 0:D.error))&&R("https",{label:"HTTPS",render:k}),(C||b)&&R("ram",{label:"RAM",render:formatBytes}),!C&&reactExports.createElement(IconBtn,{size:"small",icon:b?ChevronLeft:ChevronRight,title:"Show more",onClick:()=>E(A=>!A)}));function R(A,{label:I,minWidth:N,render:z,title:j,onDelete:Y}={}){var V;let B=(V=_.get(x,A))!=null?V:_.get(d,A);if(B===void 0)return null;let U;const W=j==null?void 0:j(B);return z&&(B=z(B),Array.isArray(B)&&([B,U]=B)),I||(I=_.capitalize(A.replaceAll("_"," "))),hTooltip(W,void 0,reactExports.createElement(Chip,{variant:"filled",color:U,onDelete:Y,label:reactJoin(" – ",_.map(_.isPlainObject(B)?B:{[I]:B},(J,Q)=>reactExports.createElement("span",{style:{display:"inline-block",minWidth:N}},reactExports.createElement("b",{},Q),": ",J)))}))}function k(A){return A.listening?["port "+A.port,"success"]:A.error?[A.error,"error"]:"off"}}function Connections(){var L;const{list:d,error:m,props:g}=useApiList("get_connections"),x=useApiEx("get_config",{only:[CFG.geo_enable]}),{monitorOnlyFiles:b}=useSnapState$1(),{pause:E,pauseButton:v}=usePauseButton(),S=reactExports.useMemo(()=>d==null?void 0:d.filter(D=>!b||D.op).map((D,A)=>Fe({id:A},D)),[!E&&d,b]),C=useBreakpoint("md"),[T,R]=useToggleButton("Show log","Hide log",D=>({icon:History,sx:{rotate:D?0:"180deg"}}),state$1.monitorWithLog);state$1.monitorWithLog=T;const k=C&&T?6:0;return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Flex$1,{flex:1},reactExports.createElement(SelectField,{fullWidth:!1,value:b,onChange:D=>state$1.monitorOnlyFiles=D,options:{"Show downloads+uploads":!0,"Show all connections":!1}})),C&&reactExports.createElement(Flex$1,{flex:1,justifyContent:"space-between"},T?"Live log":reactExports.createElement(Box),R)),reactExports.createElement(Grid,{container:!0,flex:1,columnSpacing:1},reactExports.createElement(Grid,{item:!0,xs:12-k,sx:fillFlexParentSx},reactExports.createElement(DataTable,{persist:"connections",error:m,rows:S,fillFlex:!0,noRows:b&&"No downloads/uploads at the moment",footerSide:()=>reactExports.createElement(Flex$1,{},v,reactExports.createElement(Btn$1,{size:"small",icon:DisconnectIcon,labelIf:"xl",confirm:"Disconnecting all connections but localhost. Continue?",onClick:()=>apiCall("disconnect",{allButLocalhost:!0}).then(D=>toast$1(`Disconnected: ${D.result}`))},"Disconnect all")),columns:[{field:"ip",headerName:"Address",flex:1,maxWidth:400,renderCell:({row:D,value:A})=>ipForUrl(A)+" :"+D.port,mergeRender:{user:{display:"flex",justifyContent:"space-between",gap:".5em"},agent:{},country:{}}},{field:"country",headerName:"Country",hideUnder:((L=x.data)==null?void 0:L[CFG.geo_enable])!==!0||"md",renderCell:({value:D,row:A})=>reactExports.createElement(Country,{code:D,ip:A.ip})},{field:"user",headerName:"User",hideUnder:"md"},{field:"started",headerName:"Started",type:"dateTime",width:96,hideUnder:"lg",valueFormatter:({value:D})=>new Date(D).toLocaleTimeString()},{field:"path",headerName:"File",flex:1.5,renderCell({value:D,row:A}){var I;if(!(!D||!A.op))return A.op==="browsing"?reactExports.createElement(Box,{},D,reactExports.createElement(Box,{fontSize:"x-small"},"browsing")):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconProgress,{icon:A.archive?FolderZip:A.op==="upload"?Upload:Download,progress:(I=A.opProgress)!=null?I:A.opOffset,offset:A.opOffset,title:md(formatPerc(A.opProgress)+(A.opTotal?`
616
- Total: `+formatBytes(A.opTotal):"")),sx:{mr:1}}),A.archive?reactExports.createElement(Box,{},D,reactExports.createElement(Box,{fontSize:"x-small",color:"text.secondary"},A.archive)):with_(D==null?void 0:D.lastIndexOf("/"),N=>reactExports.createElement(Box,{},D.slice(N+1),N>0&&reactExports.createElement(Box,{fontSize:"x-small",color:"text.secondary"},D.slice(0,N)))))}},{field:"outSpeed",headerName:"Speed",width:110,hideUnder:"sm",type:"number",renderCell:({value:D,row:A})=>formatSpeedK(Math.max(D||0,A.inSpeed||0)||void 0),mergeRender:{sent:{fontSize:"small",textAlign:"right"}}},{field:"sent",headerName:"Sent",type:"number",hideUnder:"md",renderCell:({value:D,row:A})=>formatBytes(Math.max(D||0,A.got||0))},{field:"v",headerName:"Protocol",align:"center",hideUnder:1/0,renderCell:({value:D})=>reactExports.createElement(reactExports.Fragment,{},"IPv"+D,iconTooltip(Lock,"HTTPS",{opacity:.5}))},{field:"agent",headerName:"Agent",hideUnder:"lg",renderCell:({value:D})=>agentIcons(D)}],actionsProps:{hideUnder:"sm"},actions:({row:D})=>[reactExports.createElement(IconBtn,{icon:DisconnectIcon,title:"Disconnect",doneMessage:!0,onClick:()=>apiCall("disconnect",_.pick(D,["ip","port"])).then(A=>A.result>0)}),reactExports.createElement(BlockIpBtn,{ip:D.ip,comment:"From monitoring",disabled:D.ip===(g==null?void 0:g.you)})]})),C&&T&&reactExports.createElement(Grid,Fe({item:!0,xs:k},fillFlexParentSx),reactExports.createElement(LogFile,{file:`${CFG.log}|${CFG.error_log}`,filter:b?D=>!D.uri.startsWith(SPECIAL_URI):void 0,fillFlex:!0,compact:!1,limit:1e3,getRowClassName:({row:D})=>D.status<400?"":"isError",sx:{"& .isError":{backgroundColor:"#a443"}}}))))}function formatSpeedK(d){return d===void 0?"":formatSpeed(d*1e3,{digits:1})}function ArrayField(j){var Y=j,{label:d,helperText:m,fields:g,value:x,onChange:b,onError:E,setApi:v,reorder:S,prepend:C,noRows:T,valuesForAdd:R,autoRowHeight:k,dialog:L,form:D,details:A,objectK:I,saveOn:N}=Y,z=Vt(Y,["label","helperText","fields","value","onChange","onError","setApi","reorder","prepend","noRows","valuesForAdd","autoRowHeight","dialog","form","details","objectK","saveOn"]);const B=Array.isArray(x)?x:!I||!x?[]:Object.entries(x).map(([re,ie])=>Fe({[I]:re},ie)),U=reactExports.useMemo(()=>B.map((re,ie)=>setHidden(Fe({},re),re.hasOwnProperty("id")?{$idx:ie}:{id:ie})),[JSON.stringify(B)]),W=re=>ie=>Fe(Fe({fields:callable(g,ie).map(ge=>{var ye=ge,{$width:oe,$column:Z,$type:ee,$hideUnder:ce,showIf:fe,$render:ae,$mergeRender:ue}=ye,pe=Vt(ye,["$width","$column","$type","$hideUnder","showIf","$render","$mergeRender"]);var Ee;return(!fe||fe(ie))&&_.defaults(pe,(Ee=byType[ee])==null?void 0:Ee.field)})},D),re);v==null||v({isEqual:isOrderedEqual});const[V,J]=reactExports.useState();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{rowGap:0,flexWrap:"wrap"},d&&reactExports.createElement(FormLabel,{sx:{ml:.5}},d),m&&reactExports.createElement(FormHelperText,{},m)),reactExports.createElement(Box,Fe({},z),reactExports.createElement(DataTable,$t(Fe(Fe({rows:U,details:A},k&&{getRowHeight:()=>"auto"}),!useBreakpoint("sm")&&{compact:!0}),{sx:Fe({".MuiDataGrid-virtualScroller":{minHeight:"3em"}},k&&{".MuiDataGrid-cell":{minHeight:"52px !important"}}),hideFooterSelectedRowCount:!0,hideFooter:!0,slots:{noRowsOverlay:()=>reactExports.createElement(Center,{},T||"No entries")},slotProps:{pagination:{showFirstButton:!0,showLastButton:!0}},columns:[...callable(g,!1).map(re=>{var oe,Z;if(reactExports.isValidElement(re))return;const ie=(oe=byType[re.$type])==null?void 0:oe.column;return _.defaults(Fe($t(Fe({field:re.k,headerName:(Z=re.headerName)!=null?Z:typeof re.label=="string"?re.label:labelFromKey(re.k),disableColumnMenu:!0,valueGetter({value:ee}){return(re.toField||_.identity)(ee)}},re.$width?{[re.$width>=8?"width":"flex"]:re.$width}:!(ie!=null&&ie.width)&&!(ie!=null&&ie.flex)&&{flex:1}),{renderCell:re.$render,mergeRender:re.$mergeRender,hideUnder:re.$hideUnder}),re.$column),ie)}).filter(Boolean),{field:"",type:"actions",width:90,headerAlign:"center",renderHeader(){const re="Add";return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconBtn,{icon:Add,title:re,size:"small",onClick(oe){return vt(this,null,function*(){const Z=yield formDialog$1({form:W({}),title:re,values:R,dialogProps:L});if(!Z)return;const ee=B.slice()||[];C?ee.unshift(Z):ee.push(Z),X(ee,oe)})}}),V!==void 0&&reactExports.createElement(IconBtn,{icon:Undo,title:"Undo",size:"small",onClick:oe=>X(V,oe)}))},getActions({row:re}){const{$idx:ie=re.id}=re,oe="Modify";return[reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(Edit),label:oe,title:oe,onClick(ee){return vt(this,null,function*(){ee.stopPropagation();const ce=yield formDialog$1({values:re,form:W(N==="change"&&{save:!1,onChange(fe){Q(ie,fe,"change")}}||N&&{save:!1}),title:reactExports.createElement(reactExports.Fragment,{},oe,d&&" - ",d),dialogProps:L});ce&&Q(ie,ce,ee)})}}),reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(Delete),label:"Delete",showInMenu:S,onClick:ee=>{ee.stopPropagation(),X(B.filter((ce,fe)=>fe!==ie),ee)}}),S&&ie&&reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(ArrowUpward),label:"Move up",showInMenu:!0,onClick:ee=>{ee.stopPropagation(),X(swap(B.slice(),ie,ie-1),ee)}}),S&&ie<U.length-1&&reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(ArrowDownward),label:"Move down",showInMenu:!0,onClick:ee=>{ee.stopPropagation(),X(swap(B.slice(),ie,ie+1),ee)}})].filter(Boolean)}}]}))));function Q(re,ie,oe){X(B.map((Z,ee)=>ee===re?ie:Z),oe)}function X(re,ie){b(I?Object.fromEntries(re.map(ee=>{var ce=ee,{[I]:oe}=ce,Z=Vt(ce,[$m(I)]);return[oe,Z]})):re,{was:x,event:ie}),N!=="change"&&J(B)}}const byType={boolean:{field:{comp:BoolField},column:{renderCell:({value:d})=>d&&reactExports.createElement(Check)}},dateTime:{column:{minWidth:96,flex:.5,renderCell:({value:d})=>d&&new Date(d).toLocaleString()}}},_excluded$z=["element"];function findIndex(d,m){for(let g=0;g<d.length;g+=1)if(m(d[g]))return g;return-1}function binaryFindElement(d,m){let g=0,x=d.length-1;for(;g<=x;){const b=Math.floor((g+x)/2);if(d[b].element===m)return b;d[b].element.compareDocumentPosition(m)&Node.DOCUMENT_POSITION_PRECEDING?x=b-1:g=b+1}return g}const DescendantContext=reactExports.createContext({});function usePrevious(d){const m=reactExports.useRef(null);return reactExports.useEffect(()=>{m.current=d},[d]),m.current}const noop$1=()=>{};function useDescendant(d){const[,m]=reactExports.useState(),{registerDescendant:g=noop$1,unregisterDescendant:x=noop$1,descendants:b=[],parentId:E=null}=reactExports.useContext(DescendantContext),v=findIndex(b,T=>T.element===d.element),S=usePrevious(b),C=b.some((T,R)=>S&&S[R]&&S[R].element!==T.element);return useEnhancedEffect(()=>{if(d.element)return g(_extends$1({},d,{index:v})),()=>{x(d.element)};m({})},[g,x,v,C,d]),{parentId:E,index:v}}function DescendantProvider(d){const{children:m,id:g}=d,[x,b]=reactExports.useState([]),E=reactExports.useCallback(C=>{let{element:T}=C,R=_objectWithoutPropertiesLoose(C,_excluded$z);b(k=>{if(k.length===0)return[_extends$1({},R,{element:T,index:0})];const L=binaryFindElement(k,T);let D;if(k[L]&&k[L].element===T)D=k;else{const A=_extends$1({},R,{element:T,index:L});D=k.slice(),D.splice(L,0,A)}return D.forEach((A,I)=>{A.index=I}),D})},[]),v=reactExports.useCallback(C=>{b(T=>T.filter(R=>C!==R.element))},[]),S=reactExports.useMemo(()=>({descendants:x,registerDescendant:E,unregisterDescendant:v,parentId:g}),[x,E,v,g]);return jsxRuntimeExports.jsx(DescendantContext.Provider,{value:S,children:m})}const DEFAULT_TREE_VIEW_CONTEXT_VALUE={instance:null,multiSelect:!1,disabledItemsFocusable:!1,treeId:void 0,icons:{defaultCollapseIcon:null,defaultExpandIcon:null,defaultParentIcon:null,defaultEndIcon:null}},TreeViewContext=reactExports.createContext(DEFAULT_TREE_VIEW_CONTEXT_VALUE),useTreeViewContext=()=>reactExports.useContext(TreeViewContext);function useTreeItem(d){const{instance:m,multiSelect:g}=useTreeViewContext(),x=m?m.isNodeExpandable(d):!1,b=m?m.isNodeExpanded(d):!1,E=m?m.isNodeFocused(d):!1,v=m?m.isNodeSelected(d):!1,S=m?m.isNodeDisabled(d):!1;return{disabled:S,expanded:b,selected:v,focused:E,handleExpansion:k=>{if(m&&!S){E||m.focusNode(k,d);const L=g&&(k.shiftKey||k.ctrlKey||k.metaKey);x&&!(L&&m.isNodeExpanded(d))&&m.toggleNodeExpansion(k,d)}},handleSelection:k=>{m&&!S&&(E||m.focusNode(k,d),g&&(k.shiftKey||k.ctrlKey||k.metaKey)?k.shiftKey?m.selectRange(k,{end:d}):m.selectNode(k,d,!0):m.selectNode(k,d))},preventSelection:k=>{(k.shiftKey||k.ctrlKey||k.metaKey||S)&&k.preventDefault()}}}const _excluded$y=["classes","className","displayIcon","expansionIcon","icon","label","nodeId","onClick","onMouseDown"],TreeItemContent=reactExports.forwardRef(function(m,g){const{classes:x,className:b,displayIcon:E,expansionIcon:v,icon:S,label:C,nodeId:T,onClick:R,onMouseDown:k}=m,L=_objectWithoutPropertiesLoose(m,_excluded$y),{disabled:D,expanded:A,selected:I,focused:N,handleExpansion:z,handleSelection:j,preventSelection:Y}=useTreeItem(T),B=S||v||E,U=V=>{Y(V),k&&k(V)},W=V=>{z(V),j(V),R&&R(V)};return jsxRuntimeExports.jsxs("div",_extends$1({},L,{className:clsx(b,x.root,A&&x.expanded,I&&x.selected,N&&x.focused,D&&x.disabled),onClick:W,onMouseDown:U,ref:g,children:[jsxRuntimeExports.jsx("div",{className:x.iconContainer,children:B}),jsxRuntimeExports.jsx("div",{className:x.label,children:C})]}))});function getTreeItemUtilityClass(d){return generateUtilityClass("MuiTreeItem",d)}const treeItemClasses=generateUtilityClasses("MuiTreeItem",["root","group","content","expanded","selected","focused","disabled","iconContainer","label"]),_excluded$x=["children","className","collapseIcon","ContentComponent","ContentProps","endIcon","expandIcon","disabled","icon","id","label","nodeId","onClick","onMouseDown","TransitionComponent","TransitionProps"],useUtilityClasses$r=d=>{const{classes:m}=d;return composeClasses({root:["root"],content:["content"],expanded:["expanded"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],label:["label"],group:["group"]},getTreeItemUtilityClass,m)},TreeItemRoot=styled("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(d,m)=>m.root})({listStyle:"none",margin:0,padding:0,outline:0}),StyledTreeItemContent=styled(TreeItemContent,{name:"MuiTreeItem",slot:"Content",overridesResolver:(d,m)=>[m.content,m.iconContainer&&{[`& .${treeItemClasses.iconContainer}`]:m.iconContainer},m.label&&{[`& .${treeItemClasses.label}`]:m.label}]})(({theme:d})=>({padding:"0 8px",width:"100%",boxSizing:"border-box",display:"flex",alignItems:"center",cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(d.vars||d).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${treeItemClasses.disabled}`]:{opacity:(d.vars||d).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${treeItemClasses.focused}`]:{backgroundColor:(d.vars||d).palette.action.focus},[`&.${treeItemClasses.selected}`]:{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity),"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / calc(${d.vars.palette.action.selectedOpacity} + ${d.vars.palette.action.hoverOpacity}))`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity+d.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity)}},[`&.${treeItemClasses.focused}`]:{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / calc(${d.vars.palette.action.selectedOpacity} + ${d.vars.palette.action.focusOpacity}))`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity+d.palette.action.focusOpacity)}},[`& .${treeItemClasses.iconContainer}`]:{marginRight:4,width:15,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${treeItemClasses.label}`]:_extends$1({paddingLeft:4,width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},d.typography.body1)})),TreeItemGroup=styled(Collapse,{name:"MuiTreeItem",slot:"Group",overridesResolver:(d,m)=>m.group})({margin:0,padding:0,marginLeft:17}),TreeItem=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiTreeItem"}),{children:b,className:E,collapseIcon:v,ContentComponent:S=TreeItemContent,ContentProps:C,endIcon:T,expandIcon:R,disabled:k,icon:L,id:D,label:A,nodeId:I,onClick:N,onMouseDown:z,TransitionComponent:j=Collapse,TransitionProps:Y}=x,B=_objectWithoutPropertiesLoose(x,_excluded$x),{icons:U,multiSelect:W,disabledItemsFocusable:V,treeId:J,instance:Q}=useTreeViewContext();let X;D!=null?X=D:J&&I&&(X=`${J}-${I}`);const[re,ie]=reactExports.useState(null),oe=reactExports.useRef(null),Z=useForkRef(ie,g),ee=reactExports.useMemo(()=>({element:re,id:I}),[I,re]),{index:ce,parentId:fe}=useDescendant(ee),ae=!!(Array.isArray(b)?b.length:b),ue=Q?Q.isNodeExpanded(I):!1,pe=Q?Q.isNodeFocused(I):!1,ge=Q?Q.isNodeSelected(I):!1,ye=Q?Q.isNodeDisabled(I):!1,Ee=_extends$1({},x,{expanded:ue,focused:pe,selected:ge,disabled:ye}),ve=useUtilityClasses$r(Ee);let Se,$e;ae&&(ue?$e=v||U.defaultCollapseIcon:$e=R||U.defaultExpandIcon),ae?Se=U.defaultParentIcon:Se=T||U.defaultEndIcon,reactExports.useEffect(()=>{if(Q&&ce!==-1)return Q.updateNode({id:I,idAttribute:X,index:ce,parentId:fe,expandable:ae,disabled:k}),()=>Q.removeNode(I)},[Q,fe,ce,I,ae,k,X]),reactExports.useEffect(()=>{if(Q&&A){var De,Be;return Q.mapFirstChar(I,((De=(Be=oe.current)==null?void 0:Be.textContent)!=null?De:"").substring(0,1).toLowerCase())}},[Q,I,A]);let Me;W?Me=ge:ge&&(Me=!0);function Re(De){if(De.target===De.currentTarget){let Le;typeof De.target.getRootNode=="function"?Le=De.target.getRootNode():Le=ownerDocument(De.target),Le.getElementById(J).focus({preventScroll:!0})}const Be=!V&&ye;Q&&!pe&&De.currentTarget===De.target&&!Be&&Q.focusNode(De,I)}return jsxRuntimeExports.jsxs(TreeItemRoot,_extends$1({className:clsx(ve.root,E),role:"treeitem","aria-expanded":ae?ue:void 0,"aria-selected":Me,"aria-disabled":ye||void 0,id:X,tabIndex:-1},B,{ownerState:Ee,onFocus:Re,ref:Z,children:[jsxRuntimeExports.jsx(StyledTreeItemContent,_extends$1({as:S,ref:oe,classes:{root:ve.content,expanded:ve.expanded,selected:ve.selected,focused:ve.focused,disabled:ve.disabled,iconContainer:ve.iconContainer,label:ve.label},label:A,nodeId:I,onClick:N,onMouseDown:z,icon:L,expansionIcon:$e,displayIcon:Se,ownerState:Ee},C)),b&&jsxRuntimeExports.jsx(DescendantProvider,{id:I,children:jsxRuntimeExports.jsx(TreeItemGroup,_extends$1({as:j,unmountOnExit:!0,className:ve.group,in:ue,component:"ul",role:"group"},Y,{children:b}))})]}))});function getTreeViewUtilityClass(d){return generateUtilityClass("MuiTreeView",d)}generateUtilityClasses("MuiTreeView",["root"]);const useTreeViewModels=(d,m)=>{const g=reactExports.useRef({}),[x,b]=reactExports.useState(()=>{const v={};return d.forEach(S=>{S.models&&Object.entries(S.models).forEach(([C,T])=>{g.current[C]={controlledProp:T.controlledProp,defaultProp:T.defaultProp,isControlled:m[T.controlledProp]!==void 0},v[C]=m[T.defaultProp]})}),v});return Object.fromEntries(Object.entries(g.current).map(([v,S])=>{const C=S.isControlled?m[S.controlledProp]:x[v];return[v,{value:C,setValue:T=>{S.isControlled||b(R=>_extends$1({},R,{[v]:T}))}}]}))};class EventManager{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(m,g,x={}){let b=this.events[m];b||(b={highPriority:new Map,regular:new Map},this.events[m]=b),x.isFirst?b.highPriority.set(g,!0):b.regular.set(g,!0)}removeListener(m,g){this.events[m]&&(this.events[m].regular.delete(g),this.events[m].highPriority.delete(g))}removeAllListeners(){this.events={}}emit(m,...g){const x=this.events[m];if(!x)return;const b=Array.from(x.highPriority.keys()),E=Array.from(x.regular.keys());for(let v=b.length-1;v>=0;v-=1){const S=b[v];x.highPriority.has(S)&&S.apply(this,g)}for(let v=0;v<E.length;v+=1){const S=E[v];x.regular.has(S)&&S.apply(this,g)}}once(m,g){const x=this;this.on(m,function b(...E){x.removeListener(m,b),g.apply(x,E)})}}const getPreviousNode=(d,m)=>{const g=d.getNode(m),x=d.getNavigableChildrenIds(g.parentId),b=x.indexOf(m);if(b===0)return g.parentId;let E=x[b-1];for(;d.isNodeExpanded(E)&&d.getNavigableChildrenIds(E).length>0;)E=d.getNavigableChildrenIds(E).pop();return E},getNextNode=(d,m)=>{if(d.isNodeExpanded(m)&&d.getNavigableChildrenIds(m).length>0)return d.getNavigableChildrenIds(m)[0];let g=d.getNode(m);for(;g!=null;){const x=d.getNavigableChildrenIds(g.parentId),b=x[x.indexOf(g.id)+1];if(b)return b;g=d.getNode(g.parentId)}return null},getLastNode=d=>{let m=d.getNavigableChildrenIds(null).pop();for(;d.isNodeExpanded(m);)m=d.getNavigableChildrenIds(m).pop();return m},getFirstNode=d=>d.getNavigableChildrenIds(null)[0],populateInstance=(d,m)=>{Object.assign(d,m)},isSyntheticEvent=d=>d.isPropagationStopped!==void 0,useTreeViewInstanceEvents=({instance:d})=>{const[m]=reactExports.useState(()=>new EventManager),g=reactExports.useCallback((...b)=>{const[E,v,S={}]=b;S.defaultMuiPrevented=!1,!(isSyntheticEvent(S)&&S.isPropagationStopped())&&m.emit(E,v,S)},[m]),x=reactExports.useCallback((b,E)=>(m.on(b,E),()=>{m.removeListener(b,E)}),[m]);populateInstance(d,{$$publishEvent:g,$$subscribeEvent:x})},TREE_VIEW_CORE_PLUGINS=[useTreeViewInstanceEvents],useTreeView=d=>{const m=[...TREE_VIEW_CORE_PLUGINS,...d.plugins],g=m.reduce((A,I)=>I.getDefaultizedParams?I.getDefaultizedParams(A):A,d),x=useTreeViewModels(m,g),E=reactExports.useRef({}).current,v=reactExports.useRef(null),S=useForkRef(v,d.rootRef),[C,T]=reactExports.useState(()=>{const A={};return m.forEach(I=>{I.getInitialState&&Object.assign(A,I.getInitialState(g))}),A}),R=[];let k=DEFAULT_TREE_VIEW_CONTEXT_VALUE;const L=A=>{const I=A({instance:E,params:g,state:C,setState:T,rootRef:v,models:x})||{};I.getRootProps&&R.push(I.getRootProps),I.contextValue&&(k=I.contextValue)};return m.forEach(L),{getRootProps:(A={})=>{const I=_extends$1({role:"tree",tabIndex:0},A,{ref:S});return R.forEach(N=>{Object.assign(I,N(A))}),I},rootRef:S,contextValue:k}};function TreeViewProvider(d){const{value:m,children:g}=d;return jsxRuntimeExports.jsx(TreeViewContext.Provider,{value:m,children:jsxRuntimeExports.jsx(DescendantProvider,{children:g})})}const publishTreeViewEvent=(d,m,g)=>{d.$$publishEvent(m,g)},useTreeViewNodes=({instance:d,params:m})=>{const g=reactExports.useRef({}),x=reactExports.useCallback(T=>g.current[T],[]),b=reactExports.useCallback(T=>{g.current[T.id]=T},[]),E=reactExports.useCallback(T=>{const R=_extends$1({},g.current);delete R[T],g.current=R,publishTreeViewEvent(d,"removeNode",{id:T})},[d]),v=reactExports.useCallback(T=>{if(T==null)return!1;let R=d.getNode(T);if(!R)return!1;if(R.disabled)return!0;for(;R.parentId!=null;)if(R=d.getNode(R.parentId),R.disabled)return!0;return!1},[d]),S=useEventCallback(T=>Object.values(g.current).filter(R=>R.parentId===T).sort((R,k)=>R.index-k.index).map(R=>R.id));populateInstance(d,{getNode:x,updateNode:b,removeNode:E,getChildrenIds:S,getNavigableChildrenIds:T=>{let R=d.getChildrenIds(T);return m.disabledItemsFocusable||(R=R.filter(k=>!d.isNodeDisabled(k))),R},isNodeDisabled:v})},useTreeViewExpansion=({instance:d,params:m,models:g})=>{const x=reactExports.useCallback(S=>Array.isArray(g.expanded.value)?g.expanded.value.indexOf(S)!==-1:!1,[g.expanded.value]),b=reactExports.useCallback(S=>{var C;return!!((C=d.getNode(S))!=null&&C.expandable)},[d]),E=useEventCallback((S,C)=>{if(C==null)return;let T;g.expanded.value.indexOf(C)!==-1?T=g.expanded.value.filter(R=>R!==C):T=[C].concat(g.expanded.value),m.onNodeToggle&&m.onNodeToggle(S,T),g.expanded.setValue(T)});populateInstance(d,{isNodeExpanded:x,isNodeExpandable:b,toggleNodeExpansion:E,expandAllSiblings:(S,C)=>{const T=d.getNode(C),k=d.getChildrenIds(T.parentId).filter(D=>d.isNodeExpandable(D)&&!d.isNodeExpanded(D)),L=g.expanded.value.concat(k);k.length>0&&(g.expanded.setValue(L),m.onNodeToggle&&m.onNodeToggle(S,L))}})};useTreeViewExpansion.models={expanded:{controlledProp:"expanded",defaultProp:"defaultExpanded"}};const DEFAULT_EXPANDED=[];useTreeViewExpansion.getDefaultizedParams=d=>{var m;return _extends$1({},d,{defaultExpanded:(m=d.defaultExpanded)!=null?m:DEFAULT_EXPANDED})};const findOrderInTremauxTree=(d,m,g)=>{if(m===g)return[m,g];const x=d.getNode(m),b=d.getNode(g);if(x.parentId===b.id||b.parentId===x.id)return b.parentId===x.id?[x.id,b.id]:[b.id,x.id];const E=[x.id],v=[b.id];let S=x.parentId,C=b.parentId,T=v.indexOf(S)!==-1,R=E.indexOf(C)!==-1,k=!0,L=!0;for(;!R&&!T;)k&&(E.push(S),T=v.indexOf(S)!==-1,k=S!==null,!T&&k&&(S=d.getNode(S).parentId)),L&&!T&&(v.push(C),R=E.indexOf(C)!==-1,L=C!==null,!R&&L&&(C=d.getNode(C).parentId));const D=T?S:C,A=d.getChildrenIds(D),I=E[E.indexOf(D)-1],N=v[v.indexOf(D)-1];return A.indexOf(I)<A.indexOf(N)?[m,g]:[g,m]},useTreeViewSelection=({instance:d,params:m,models:g})=>{const x=reactExports.useRef(null),b=reactExports.useRef(!1),E=reactExports.useRef([]),v=A=>Array.isArray(g.selected.value)?g.selected.value.indexOf(A)!==-1:g.selected.value===A,S=(A,I,N=!1)=>{if(!m.disableSelection){if(N){if(Array.isArray(g.selected.value)){let z;g.selected.value.indexOf(I)!==-1?z=g.selected.value.filter(j=>j!==I):z=[I].concat(g.selected.value),m.onNodeSelect&&m.onNodeSelect(A,z),g.selected.setValue(z)}}else{const z=m.multiSelect?[I]:I;m.onNodeSelect&&m.onNodeSelect(A,z),g.selected.setValue(z)}x.current=I,b.current=!1,E.current=[]}},C=(A,I)=>{const[N,z]=findOrderInTremauxTree(d,A,I),j=[N];let Y=N;for(;Y!==z;)Y=getNextNode(d,Y),j.push(Y);return j},T=(A,I)=>{let N=g.selected.value.slice();const{start:z,next:j,current:Y}=I;!j||!Y||(E.current.indexOf(Y)===-1&&(E.current=[]),b.current?E.current.indexOf(j)!==-1?(N=N.filter(B=>B===z||B!==Y),E.current=E.current.filter(B=>B===z||B!==Y)):(N.push(j),E.current.push(j)):(N.push(j),E.current.push(Y,j)),m.onNodeSelect&&m.onNodeSelect(A,N),g.selected.setValue(N))},R=(A,I)=>{let N=g.selected.value.slice();const{start:z,end:j}=I;b.current&&(N=N.filter(U=>E.current.indexOf(U)===-1));let Y=C(z,j);Y=Y.filter(U=>!d.isNodeDisabled(U)),E.current=Y;let B=N.concat(Y);B=B.filter((U,W)=>B.indexOf(U)===W),m.onNodeSelect&&m.onNodeSelect(A,B),g.selected.setValue(B)};return populateInstance(d,{isNodeSelected:v,selectNode:S,selectRange:(A,I,N=!1)=>{if(m.disableSelection)return;const{start:z=x.current,end:j,current:Y}=I;N?T(A,{start:z,next:j,current:Y}):z!=null&&j!=null&&R(A,{start:z,end:j}),b.current=!0},rangeSelectToLast:(A,I)=>{x.current||(x.current=I);const N=b.current?x.current:I;d.selectRange(A,{start:N,end:getLastNode(d)})},rangeSelectToFirst:(A,I)=>{x.current||(x.current=I);const N=b.current?x.current:I;d.selectRange(A,{start:N,end:getFirstNode(d)})}}),{getRootProps:()=>({"aria-multiselectable":m.multiSelect})}};useTreeViewSelection.models={selected:{controlledProp:"selected",defaultProp:"defaultSelected"}};const DEFAULT_SELECTED=[];useTreeViewSelection.getDefaultizedParams=d=>{var m,g,x;return _extends$1({},d,{disableSelection:(m=d.disableSelection)!=null?m:!1,multiSelect:(g=d.multiSelect)!=null?g:!1,defaultSelected:(x=d.defaultSelected)!=null?x:d.multiSelect?DEFAULT_SELECTED:null})};const CLEANUP_TIMER_LOOP_MILLIS=1e3;class TimerBasedCleanupTracking{constructor(m=CLEANUP_TIMER_LOOP_MILLIS){this.timeouts=new Map,this.cleanupTimeout=CLEANUP_TIMER_LOOP_MILLIS,this.cleanupTimeout=m}register(m,g,x){this.timeouts||(this.timeouts=new Map);const b=setTimeout(()=>{typeof g=="function"&&g(),this.timeouts.delete(x.cleanupToken)},this.cleanupTimeout);this.timeouts.set(x.cleanupToken,b)}unregister(m){const g=this.timeouts.get(m.cleanupToken);g&&(this.timeouts.delete(m.cleanupToken),clearTimeout(g))}reset(){this.timeouts&&(this.timeouts.forEach((m,g)=>{this.unregister({cleanupToken:g})}),this.timeouts=void 0)}}class FinalizationRegistryBasedCleanupTracking{constructor(){this.registry=new FinalizationRegistry(m=>{typeof m=="function"&&m()})}register(m,g,x){this.registry.register(m,g,x)}unregister(m){this.registry.unregister(m)}reset(){}}class ObjectToBeRetainedByReact{}function createUseInstanceEventHandler(d){let m=0;return function(x,b,E){d.registry===null&&(d.registry=typeof FinalizationRegistry!="undefined"?new FinalizationRegistryBasedCleanupTracking:new TimerBasedCleanupTracking);const[v]=reactExports.useState(new ObjectToBeRetainedByReact),S=reactExports.useRef(null),C=reactExports.useRef();C.current=E;const T=reactExports.useRef(null);if(!S.current&&C.current){const R=(k,L)=>{if(!L.defaultMuiPrevented){var D;(D=C.current)==null||D.call(C,k,L)}};S.current=x.$$subscribeEvent(b,R),m+=1,T.current={cleanupToken:m},d.registry.register(v,()=>{var k;(k=S.current)==null||k.call(S),S.current=null,T.current=null},T.current)}else!C.current&&S.current&&(S.current(),S.current=null,T.current&&(d.registry.unregister(T.current),T.current=null));reactExports.useEffect(()=>{if(!S.current&&C.current){const R=(k,L)=>{if(!L.defaultMuiPrevented){var D;(D=C.current)==null||D.call(C,k,L)}};S.current=x.$$subscribeEvent(b,R)}return T.current&&d.registry&&(d.registry.unregister(T.current),T.current=null),()=>{var R;(R=S.current)==null||R.call(S),S.current=null}},[x,b])}}const registryContainer={registry:null},useInstanceEventHandler=createUseInstanceEventHandler(registryContainer),useTreeViewFocus=({instance:d,params:m,state:g,setState:x,models:b,rootRef:E})=>{const v=useEventCallback(D=>{const A=typeof D=="function"?D(g.focusedNodeId):D;x(I=>_extends$1({},I,{focusedNodeId:A}))}),S=reactExports.useCallback(D=>g.focusedNodeId===D,[g.focusedNodeId]),C=useEventCallback((D,A)=>{A&&(v(A),m.onNodeFocus&&m.onNodeFocus(D,A))});populateInstance(d,{isNodeFocused:S,focusNode:C}),useInstanceEventHandler(d,"removeNode",({id:D})=>{v(A=>A===D&&E.current===ownerDocument(E.current).activeElement?d.getChildrenIds(null)[0]:A)});const T=D=>A=>{var I;if((I=D.onFocus)==null||I.call(D,A),A.target===A.currentTarget){const N=j=>{const Y=d.getNode(j);return Y&&(Y.parentId==null||d.isNodeExpanded(Y.parentId))};let z;Array.isArray(b.selected.value)?z=b.selected.value.find(N):b.selected.value!=null&&N(b.selected.value)&&(z=b.selected.value),z==null&&(z=d.getNavigableChildrenIds(null)[0]),d.focusNode(A,z)}},R=D=>A=>{var I;(I=D.onBlur)==null||I.call(D,A),v(null)},k=d.getNode(g.focusedNodeId),L=k?k.idAttribute:null;return{getRootProps:D=>({onFocus:T(D),onBlur:R(D),"aria-activedescendant":L!=null?L:void 0})}};useTreeViewFocus.getInitialState=()=>({focusedNodeId:null});useTreeViewFocus.getDefaultizedParams=d=>{var m;return _extends$1({},d,{disabledItemsFocusable:(m=d.disabledItemsFocusable)!=null?m:!1})};function isPrintableCharacter(d){return d&&d.length===1&&d.match(/\S/)}function findNextFirstChar(d,m,g){for(let x=m;x<d.length;x+=1)if(g===d[x])return x;return-1}const useTreeViewKeyboardNavigation=({instance:d,params:m,state:g})=>{const b=useTheme$1().direction==="rtl",E=reactExports.useRef({}),v=useEventCallback((D,A)=>(E.current[D]=A,()=>{const I=_extends$1({},E.current);delete I[D],E.current=I}));populateInstance(d,{mapFirstChar:v});const S=D=>(g.focusedNodeId!=null&&d.isNodeExpandable(g.focusedNodeId)&&(d.isNodeExpanded(g.focusedNodeId)?d.focusNode(D,getNextNode(d,g.focusedNodeId)):d.isNodeDisabled(g.focusedNodeId)||d.toggleNodeExpansion(D,g.focusedNodeId)),!0),C=D=>{if(g.focusedNodeId==null)return!1;if(d.isNodeExpanded(g.focusedNodeId)&&!d.isNodeDisabled(g.focusedNodeId))return d.toggleNodeExpansion(D,g.focusedNodeId),!0;const A=d.getNode(g.focusedNodeId).parentId;return A?(d.focusNode(D,A),!0):!1},T=(D,A,I)=>{let N,z;const j=I.toLowerCase(),Y=[],B=[];Object.keys(E.current).forEach(U=>{const W=d.getNode(U),V=W.parentId?d.isNodeExpanded(W.parentId):!0,J=m.disabledItemsFocusable?!1:d.isNodeDisabled(U);V&&!J&&(Y.push(U),B.push(E.current[U]))}),N=Y.indexOf(A)+1,N>=Y.length&&(N=0),z=findNextFirstChar(B,N,j),z===-1&&(z=findNextFirstChar(B,0,j)),z>-1&&d.focusNode(D,Y[z])},R=(D,A)=>{d.isNodeDisabled(getNextNode(d,A))||d.selectRange(D,{end:getNextNode(d,A),current:A},!0)},k=(D,A)=>{d.isNodeDisabled(getPreviousNode(d,A))||d.selectRange(D,{end:getPreviousNode(d,A),current:A},!0)},L=D=>A=>{var I;(I=D.onKeyDown)==null||I.call(D,A);let N=!1;const z=A.key;if(A.altKey||A.currentTarget!==A.target||g.focusedNodeId==null)return;const j=A.ctrlKey||A.metaKey;switch(z){case" ":!m.disableSelection&&!d.isNodeDisabled(g.focusedNodeId)&&(N=!0,m.multiSelect&&A.shiftKey?d.selectRange(A,{end:g.focusedNodeId}):m.multiSelect?d.selectNode(A,g.focusedNodeId,!0):d.selectNode(A,g.focusedNodeId)),A.stopPropagation();break;case"Enter":d.isNodeDisabled(g.focusedNodeId)||(d.isNodeExpandable(g.focusedNodeId)?(d.toggleNodeExpansion(A,g.focusedNodeId),N=!0):m.disableSelection||(N=!0,m.multiSelect?d.selectNode(A,g.focusedNodeId,!0):d.selectNode(A,g.focusedNodeId))),A.stopPropagation();break;case"ArrowDown":m.multiSelect&&A.shiftKey&&!m.disableSelection&&R(A,g.focusedNodeId),d.focusNode(A,getNextNode(d,g.focusedNodeId)),N=!0;break;case"ArrowUp":m.multiSelect&&A.shiftKey&&!m.disableSelection&&k(A,g.focusedNodeId),d.focusNode(A,getPreviousNode(d,g.focusedNodeId)),N=!0;break;case"ArrowRight":b?N=C(A):N=S(A);break;case"ArrowLeft":b?N=S(A):N=C(A);break;case"Home":m.multiSelect&&j&&A.shiftKey&&!m.disableSelection&&!d.isNodeDisabled(g.focusedNodeId)&&d.rangeSelectToFirst(A,g.focusedNodeId),d.focusNode(A,getFirstNode(d)),N=!0;break;case"End":m.multiSelect&&j&&A.shiftKey&&!m.disableSelection&&!d.isNodeDisabled(g.focusedNodeId)&&d.rangeSelectToLast(A,g.focusedNodeId),d.focusNode(A,getLastNode(d)),N=!0;break;default:z==="*"?(d.expandAllSiblings(A,g.focusedNodeId),N=!0):m.multiSelect&&j&&z.toLowerCase()==="a"&&!m.disableSelection?(d.selectRange(A,{start:getFirstNode(d),end:getLastNode(d)}),N=!0):!j&&!A.shiftKey&&isPrintableCharacter(z)&&(T(A,g.focusedNodeId,z),N=!0)}N&&(A.preventDefault(),A.stopPropagation())};return{getRootProps:D=>({onKeyDown:L(D)})}},useTreeViewContextValueBuilder=({instance:d,params:m})=>{const g=useId(m.id);return{getRootProps:()=>({id:g}),contextValue:{treeId:g,instance:d,multiSelect:m.multiSelect,disabledItemsFocusable:m.disabledItemsFocusable,icons:{defaultCollapseIcon:m.defaultCollapseIcon,defaultEndIcon:m.defaultEndIcon,defaultExpandIcon:m.defaultExpandIcon,defaultParentIcon:m.defaultParentIcon}}}},DEFAULT_TREE_VIEW_PLUGINS=[useTreeViewNodes,useTreeViewExpansion,useTreeViewSelection,useTreeViewFocus,useTreeViewKeyboardNavigation,useTreeViewContextValueBuilder],_excluded$w=["disabledItemsFocusable","expanded","defaultExpanded","onNodeToggle","onNodeFocus","disableSelection","defaultSelected","selected","multiSelect","onNodeSelect","id","defaultCollapseIcon","defaultEndIcon","defaultExpandIcon","defaultParentIcon","children"],useUtilityClasses$q=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getTreeViewUtilityClass,m)},TreeViewRoot=styled("ul",{name:"MuiTreeView",slot:"Root",overridesResolver:(d,m)=>m.root})({padding:0,margin:0,listStyle:"none",outline:0}),TreeView=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiTreeView"}),b=x,E=x,{disabledItemsFocusable:v,expanded:S,defaultExpanded:C,onNodeToggle:T,onNodeFocus:R,disableSelection:k,defaultSelected:L,selected:D,multiSelect:A,onNodeSelect:I,id:N,defaultCollapseIcon:z,defaultEndIcon:j,defaultExpandIcon:Y,defaultParentIcon:B,children:U}=E,W=_objectWithoutPropertiesLoose(E,_excluded$w),{getRootProps:V,contextValue:J}=useTreeView({disabledItemsFocusable:v,expanded:S,defaultExpanded:C,onNodeToggle:T,onNodeFocus:R,disableSelection:k,defaultSelected:L,selected:D,multiSelect:A,onNodeSelect:I,id:N,defaultCollapseIcon:z,defaultEndIcon:j,defaultExpandIcon:Y,defaultParentIcon:B,plugins:DEFAULT_TREE_VIEW_PLUGINS,rootRef:g}),Q=useUtilityClasses$q(x),X=useSlotProps({elementType:TreeViewRoot,externalSlotProps:{},externalForwardedProps:W,className:Q.root,getSlotProps:V,ownerState:b});return jsxRuntimeExports.jsx(TreeViewProvider,{value:J,children:jsxRuntimeExports.jsx(TreeViewRoot,_extends$1({},X,{children:U}))})});function VfsPathField(C){var T=C,{value:d="",onChange:m,helperText:g,setApi:x,autocompleteProps:b,folders:E=!0,files:v=!0}=T,S=Vt(T,["value","onChange","helperText","setApi","autocompleteProps","folders","files"]);const R=dirname(d),{list:k,loading:L}=useApiList("get_file_list",{uri:R,admin:!0,fileMask:typeof v=="string"?v:void 0,onlyFolders:!v}),D=reactExports.useMemo(()=>{const A=[R&&dirname(R)+"/",R+"/"].filter(Boolean).concat(k.map(I=>R+"/"+I.n));return d&&!A.includes(d)&&A.push(d),A},[k,R]);return x==null||x({getError(){return!E&&(d==null?void 0:d.endsWith("/"))&&"must be a file"||!1}}),reactExports.createElement(Autocomplete,Fe({value:d,options:D,isOptionEqualToValue:(A,I)=>A===I||A===I+"/",loading:L,disableClearable:!0,disableCloseOnSelect:!0,renderInput:A=>reactExports.createElement(TextField,$t(Fe(Fe({helperText:g,onChange(I){const N=I.target.value;(N.endsWith("/")||!N)&&m(N,{was:d,event:I})},onBlur(I){const N=enforceFinal("/",I.target.value);D.includes(N)&&m(N,{was:d,event:I})}},A),S),{InputLabelProps:Fe(Fe({shrink:!0},A.InputLabelProps),S.InputLabelProps)})),onChange:(A,I)=>m(I,{was:d,event:A})},b))}const _excluded$v=["localeText"],MuiPickersAdapterContext=reactExports.createContext(null),LocalizationProvider=function(m){var g;const{localeText:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$v),{utils:E,localeText:v}=(g=reactExports.useContext(MuiPickersAdapterContext))!=null?g:{utils:void 0,localeText:void 0},S=useThemeProps({props:b,name:"MuiLocalizationProvider"}),{children:C,dateAdapter:T,dateFormats:R,dateLibInstance:k,adapterLocale:L,localeText:D}=S,A=reactExports.useMemo(()=>_extends$1({},D,v,x),[D,v,x]),I=reactExports.useMemo(()=>{if(!T)return E||null;const j=new T({locale:L,formats:R,instance:k});if(!j.isMUIAdapter)throw new Error(["MUI: The date adapter should be imported from `@mui/x-date-pickers` or `@mui/x-date-pickers-pro`, not from `@date-io`","For example, `import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'` instead of `import AdapterDayjs from '@date-io/dayjs'`","More information on the installation documentation: https://mui.com/x/react-date-pickers/getting-started/#installation"].join(`
616
+ Total: `+formatBytes(A.opTotal):"")),sx:{mr:1}}),A.archive?reactExports.createElement(Box,{},D,reactExports.createElement(Box,{fontSize:"x-small",color:"text.secondary"},A.archive)):with_(D==null?void 0:D.lastIndexOf("/"),N=>reactExports.createElement(Box,{},D.slice(N+1),N>0&&reactExports.createElement(Box,{fontSize:"x-small",color:"text.secondary"},D.slice(0,N)))))}},{field:"outSpeed",headerName:"Speed",width:110,hideUnder:"sm",type:"number",renderCell:({value:D,row:A})=>formatSpeedK(Math.max(D||0,A.inSpeed||0)||void 0),mergeRender:{sent:{fontSize:"small",textAlign:"right"}}},{field:"sent",headerName:"Sent",type:"number",hideUnder:"md",renderCell:({value:D,row:A})=>formatBytes(Math.max(D||0,A.got||0))},{field:"v",headerName:"Protocol",align:"center",hideUnder:1/0,renderCell:({value:D})=>reactExports.createElement(reactExports.Fragment,{},"IPv"+D,iconTooltip(Lock,"HTTPS",{opacity:.5}))},{field:"agent",headerName:"Agent",hideUnder:"lg",renderCell:({value:D})=>agentIcons(D)}],actionsProps:{hideUnder:"sm"},actions:({row:D})=>[reactExports.createElement(IconBtn,{icon:DisconnectIcon,title:"Disconnect",doneMessage:!0,onClick:()=>apiCall("disconnect",_.pick(D,["ip","port"])).then(A=>A.result>0)}),reactExports.createElement(BlockIpBtn,{ip:D.ip,comment:"From monitoring",disabled:D.ip===(g==null?void 0:g.you)})]})),C&&T&&reactExports.createElement(Grid,Fe({item:!0,xs:k},fillFlexParentSx),reactExports.createElement(LogFile,{file:`${CFG.log}|${CFG.error_log}`,filter:b?D=>!D.uri.startsWith(SPECIAL_URI):void 0,fillFlex:!0,compact:!1,limit:1e3,getRowClassName:({row:D})=>D.status<400?"":"isError",sx:{"& .isError":{backgroundColor:"#a443"}}}))))}function formatSpeedK(d){return d===void 0?"":formatSpeed(d*1e3,{digits:1})}function ArrayField(j){var Y=j,{label:d,helperText:m,fields:g,value:x,onChange:b,onError:E,setApi:v,reorder:S,prepend:C,noRows:T,valuesForAdd:R,autoRowHeight:k,dialog:L,form:D,details:A,objectK:I,saveOn:N}=Y,z=Vt(Y,["label","helperText","fields","value","onChange","onError","setApi","reorder","prepend","noRows","valuesForAdd","autoRowHeight","dialog","form","details","objectK","saveOn"]);const B=Array.isArray(x)?x:!I||!x?[]:Object.entries(x).map(([re,ie])=>Fe({[I]:re},ie)),U=reactExports.useMemo(()=>B.map((re,ie)=>setHidden(Fe({},re),re.hasOwnProperty("id")?{$idx:ie}:{id:ie})),[JSON.stringify(B)]),W=re=>ie=>Fe(Fe({fields:callable(g,ie).map(ge=>{var ye=ge,{$width:oe,$column:Z,$type:ee,$hideUnder:ce,showIf:fe,$render:ae,$mergeRender:ue}=ye,pe=Vt(ye,["$width","$column","$type","$hideUnder","showIf","$render","$mergeRender"]);var Ee;return(!fe||fe(ie))&&_.defaults(pe,(Ee=byType[ee])==null?void 0:Ee.field)})},D),re);v==null||v({isEqual:isOrderedEqual});const[V,J]=reactExports.useState();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{rowGap:0,flexWrap:"wrap"},d&&reactExports.createElement(FormLabel,{sx:{ml:.5}},d),m&&reactExports.createElement(FormHelperText,{},m)),reactExports.createElement(Box,Fe({},z),reactExports.createElement(DataTable,$t(Fe(Fe({rows:U,details:A},k&&{getRowHeight:()=>"auto"}),!useBreakpoint("sm")&&{compact:!0}),{sx:Fe({".MuiDataGrid-virtualScroller":{minHeight:"3em"}},k&&{".MuiDataGrid-cell":{minHeight:"52px !important"}}),hideFooterSelectedRowCount:!0,hideFooter:!0,slots:{noRowsOverlay:()=>reactExports.createElement(Center,{},T||"No entries")},slotProps:{pagination:{showFirstButton:!0,showLastButton:!0}},columns:[...callable(g,!1).map(re=>{var oe,Z;if(reactExports.isValidElement(re))return;const ie=(oe=byType[re.$type])==null?void 0:oe.column;return _.defaults(Fe($t(Fe({field:re.k,headerName:(Z=re.headerName)!=null?Z:typeof re.label=="string"?re.label:labelFromKey(re.k),disableColumnMenu:!0,valueGetter({value:ee}){return(re.toField||_.identity)(ee)}},re.$width?{[re.$width>=8?"width":"flex"]:re.$width}:!(ie!=null&&ie.width)&&!(ie!=null&&ie.flex)&&{flex:1}),{renderCell:re.$render,mergeRender:re.$mergeRender,hideUnder:re.$hideUnder}),re.$column),ie)}).filter(Boolean),{field:"",type:"actions",width:90,headerAlign:"center",renderHeader(){const re="Add";return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconBtn,{icon:Add,title:re,size:"small",onClick(oe){return yt(this,null,function*(){const Z=yield formDialog$1({form:W({}),title:re,values:R,dialogProps:L});if(!Z)return;const ee=B.slice()||[];C?ee.unshift(Z):ee.push(Z),X(ee,oe)})}}),V!==void 0&&reactExports.createElement(IconBtn,{icon:Undo,title:"Undo",size:"small",onClick:oe=>X(V,oe)}))},getActions({row:re}){const{$idx:ie=re.id}=re,oe="Modify";return[reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(Edit),label:oe,title:oe,onClick(ee){return yt(this,null,function*(){ee.stopPropagation();const ce=yield formDialog$1({values:re,form:W(N==="change"&&{save:!1,onChange(fe){Q(ie,fe,"change")}}||N&&{save:!1}),title:reactExports.createElement(reactExports.Fragment,{},oe,d&&" - ",d),dialogProps:L});ce&&Q(ie,ce,ee)})}}),reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(Delete),label:"Delete",showInMenu:S,onClick:ee=>{ee.stopPropagation(),X(B.filter((ce,fe)=>fe!==ie),ee)}}),S&&ie&&reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(ArrowUpward),label:"Move up",showInMenu:!0,onClick:ee=>{ee.stopPropagation(),X(swap(B.slice(),ie,ie-1),ee)}}),S&&ie<U.length-1&&reactExports.createElement(GridActionsCellItem,{icon:reactExports.createElement(ArrowDownward),label:"Move down",showInMenu:!0,onClick:ee=>{ee.stopPropagation(),X(swap(B.slice(),ie,ie+1),ee)}})].filter(Boolean)}}]}))));function Q(re,ie,oe){X(B.map((Z,ee)=>ee===re?ie:Z),oe)}function X(re,ie){b(I?Object.fromEntries(re.map(ee=>{var ce=ee,{[I]:oe}=ce,Z=Vt(ce,[$m(I)]);return[oe,Z]})):re,{was:x,event:ie}),N!=="change"&&J(B)}}const byType={boolean:{field:{comp:BoolField},column:{renderCell:({value:d})=>d&&reactExports.createElement(Check)}},dateTime:{column:{minWidth:96,flex:.5,renderCell:({value:d})=>d&&new Date(d).toLocaleString()}}},_excluded$z=["element"];function findIndex(d,m){for(let g=0;g<d.length;g+=1)if(m(d[g]))return g;return-1}function binaryFindElement(d,m){let g=0,x=d.length-1;for(;g<=x;){const b=Math.floor((g+x)/2);if(d[b].element===m)return b;d[b].element.compareDocumentPosition(m)&Node.DOCUMENT_POSITION_PRECEDING?x=b-1:g=b+1}return g}const DescendantContext=reactExports.createContext({});function usePrevious(d){const m=reactExports.useRef(null);return reactExports.useEffect(()=>{m.current=d},[d]),m.current}const noop$1=()=>{};function useDescendant(d){const[,m]=reactExports.useState(),{registerDescendant:g=noop$1,unregisterDescendant:x=noop$1,descendants:b=[],parentId:E=null}=reactExports.useContext(DescendantContext),v=findIndex(b,T=>T.element===d.element),S=usePrevious(b),C=b.some((T,R)=>S&&S[R]&&S[R].element!==T.element);return useEnhancedEffect(()=>{if(d.element)return g(_extends$1({},d,{index:v})),()=>{x(d.element)};m({})},[g,x,v,C,d]),{parentId:E,index:v}}function DescendantProvider(d){const{children:m,id:g}=d,[x,b]=reactExports.useState([]),E=reactExports.useCallback(C=>{let{element:T}=C,R=_objectWithoutPropertiesLoose(C,_excluded$z);b(k=>{if(k.length===0)return[_extends$1({},R,{element:T,index:0})];const L=binaryFindElement(k,T);let D;if(k[L]&&k[L].element===T)D=k;else{const A=_extends$1({},R,{element:T,index:L});D=k.slice(),D.splice(L,0,A)}return D.forEach((A,I)=>{A.index=I}),D})},[]),v=reactExports.useCallback(C=>{b(T=>T.filter(R=>C!==R.element))},[]),S=reactExports.useMemo(()=>({descendants:x,registerDescendant:E,unregisterDescendant:v,parentId:g}),[x,E,v,g]);return jsxRuntimeExports.jsx(DescendantContext.Provider,{value:S,children:m})}const DEFAULT_TREE_VIEW_CONTEXT_VALUE={instance:null,multiSelect:!1,disabledItemsFocusable:!1,treeId:void 0,icons:{defaultCollapseIcon:null,defaultExpandIcon:null,defaultParentIcon:null,defaultEndIcon:null}},TreeViewContext=reactExports.createContext(DEFAULT_TREE_VIEW_CONTEXT_VALUE),useTreeViewContext=()=>reactExports.useContext(TreeViewContext);function useTreeItem(d){const{instance:m,multiSelect:g}=useTreeViewContext(),x=m?m.isNodeExpandable(d):!1,b=m?m.isNodeExpanded(d):!1,E=m?m.isNodeFocused(d):!1,v=m?m.isNodeSelected(d):!1,S=m?m.isNodeDisabled(d):!1;return{disabled:S,expanded:b,selected:v,focused:E,handleExpansion:k=>{if(m&&!S){E||m.focusNode(k,d);const L=g&&(k.shiftKey||k.ctrlKey||k.metaKey);x&&!(L&&m.isNodeExpanded(d))&&m.toggleNodeExpansion(k,d)}},handleSelection:k=>{m&&!S&&(E||m.focusNode(k,d),g&&(k.shiftKey||k.ctrlKey||k.metaKey)?k.shiftKey?m.selectRange(k,{end:d}):m.selectNode(k,d,!0):m.selectNode(k,d))},preventSelection:k=>{(k.shiftKey||k.ctrlKey||k.metaKey||S)&&k.preventDefault()}}}const _excluded$y=["classes","className","displayIcon","expansionIcon","icon","label","nodeId","onClick","onMouseDown"],TreeItemContent=reactExports.forwardRef(function(m,g){const{classes:x,className:b,displayIcon:E,expansionIcon:v,icon:S,label:C,nodeId:T,onClick:R,onMouseDown:k}=m,L=_objectWithoutPropertiesLoose(m,_excluded$y),{disabled:D,expanded:A,selected:I,focused:N,handleExpansion:z,handleSelection:j,preventSelection:Y}=useTreeItem(T),B=S||v||E,U=V=>{Y(V),k&&k(V)},W=V=>{z(V),j(V),R&&R(V)};return jsxRuntimeExports.jsxs("div",_extends$1({},L,{className:clsx(b,x.root,A&&x.expanded,I&&x.selected,N&&x.focused,D&&x.disabled),onClick:W,onMouseDown:U,ref:g,children:[jsxRuntimeExports.jsx("div",{className:x.iconContainer,children:B}),jsxRuntimeExports.jsx("div",{className:x.label,children:C})]}))});function getTreeItemUtilityClass(d){return generateUtilityClass("MuiTreeItem",d)}const treeItemClasses=generateUtilityClasses("MuiTreeItem",["root","group","content","expanded","selected","focused","disabled","iconContainer","label"]),_excluded$x=["children","className","collapseIcon","ContentComponent","ContentProps","endIcon","expandIcon","disabled","icon","id","label","nodeId","onClick","onMouseDown","TransitionComponent","TransitionProps"],useUtilityClasses$r=d=>{const{classes:m}=d;return composeClasses({root:["root"],content:["content"],expanded:["expanded"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],label:["label"],group:["group"]},getTreeItemUtilityClass,m)},TreeItemRoot=styled("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(d,m)=>m.root})({listStyle:"none",margin:0,padding:0,outline:0}),StyledTreeItemContent=styled(TreeItemContent,{name:"MuiTreeItem",slot:"Content",overridesResolver:(d,m)=>[m.content,m.iconContainer&&{[`& .${treeItemClasses.iconContainer}`]:m.iconContainer},m.label&&{[`& .${treeItemClasses.label}`]:m.label}]})(({theme:d})=>({padding:"0 8px",width:"100%",boxSizing:"border-box",display:"flex",alignItems:"center",cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(d.vars||d).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${treeItemClasses.disabled}`]:{opacity:(d.vars||d).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${treeItemClasses.focused}`]:{backgroundColor:(d.vars||d).palette.action.focus},[`&.${treeItemClasses.selected}`]:{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity),"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / calc(${d.vars.palette.action.selectedOpacity} + ${d.vars.palette.action.hoverOpacity}))`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity+d.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.selectedOpacity})`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity)}},[`&.${treeItemClasses.focused}`]:{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / calc(${d.vars.palette.action.selectedOpacity} + ${d.vars.palette.action.focusOpacity}))`:alpha(d.palette.primary.main,d.palette.action.selectedOpacity+d.palette.action.focusOpacity)}},[`& .${treeItemClasses.iconContainer}`]:{marginRight:4,width:15,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${treeItemClasses.label}`]:_extends$1({paddingLeft:4,width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},d.typography.body1)})),TreeItemGroup=styled(Collapse,{name:"MuiTreeItem",slot:"Group",overridesResolver:(d,m)=>m.group})({margin:0,padding:0,marginLeft:17}),TreeItem=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiTreeItem"}),{children:b,className:E,collapseIcon:v,ContentComponent:S=TreeItemContent,ContentProps:C,endIcon:T,expandIcon:R,disabled:k,icon:L,id:D,label:A,nodeId:I,onClick:N,onMouseDown:z,TransitionComponent:j=Collapse,TransitionProps:Y}=x,B=_objectWithoutPropertiesLoose(x,_excluded$x),{icons:U,multiSelect:W,disabledItemsFocusable:V,treeId:J,instance:Q}=useTreeViewContext();let X;D!=null?X=D:J&&I&&(X=`${J}-${I}`);const[re,ie]=reactExports.useState(null),oe=reactExports.useRef(null),Z=useForkRef(ie,g),ee=reactExports.useMemo(()=>({element:re,id:I}),[I,re]),{index:ce,parentId:fe}=useDescendant(ee),ae=!!(Array.isArray(b)?b.length:b),ue=Q?Q.isNodeExpanded(I):!1,pe=Q?Q.isNodeFocused(I):!1,ge=Q?Q.isNodeSelected(I):!1,ye=Q?Q.isNodeDisabled(I):!1,Ee=_extends$1({},x,{expanded:ue,focused:pe,selected:ge,disabled:ye}),ve=useUtilityClasses$r(Ee);let Se,$e;ae&&(ue?$e=v||U.defaultCollapseIcon:$e=R||U.defaultExpandIcon),ae?Se=U.defaultParentIcon:Se=T||U.defaultEndIcon,reactExports.useEffect(()=>{if(Q&&ce!==-1)return Q.updateNode({id:I,idAttribute:X,index:ce,parentId:fe,expandable:ae,disabled:k}),()=>Q.removeNode(I)},[Q,fe,ce,I,ae,k,X]),reactExports.useEffect(()=>{if(Q&&A){var De,Be;return Q.mapFirstChar(I,((De=(Be=oe.current)==null?void 0:Be.textContent)!=null?De:"").substring(0,1).toLowerCase())}},[Q,I,A]);let Me;W?Me=ge:ge&&(Me=!0);function Re(De){if(De.target===De.currentTarget){let Le;typeof De.target.getRootNode=="function"?Le=De.target.getRootNode():Le=ownerDocument(De.target),Le.getElementById(J).focus({preventScroll:!0})}const Be=!V&&ye;Q&&!pe&&De.currentTarget===De.target&&!Be&&Q.focusNode(De,I)}return jsxRuntimeExports.jsxs(TreeItemRoot,_extends$1({className:clsx(ve.root,E),role:"treeitem","aria-expanded":ae?ue:void 0,"aria-selected":Me,"aria-disabled":ye||void 0,id:X,tabIndex:-1},B,{ownerState:Ee,onFocus:Re,ref:Z,children:[jsxRuntimeExports.jsx(StyledTreeItemContent,_extends$1({as:S,ref:oe,classes:{root:ve.content,expanded:ve.expanded,selected:ve.selected,focused:ve.focused,disabled:ve.disabled,iconContainer:ve.iconContainer,label:ve.label},label:A,nodeId:I,onClick:N,onMouseDown:z,icon:L,expansionIcon:$e,displayIcon:Se,ownerState:Ee},C)),b&&jsxRuntimeExports.jsx(DescendantProvider,{id:I,children:jsxRuntimeExports.jsx(TreeItemGroup,_extends$1({as:j,unmountOnExit:!0,className:ve.group,in:ue,component:"ul",role:"group"},Y,{children:b}))})]}))});function getTreeViewUtilityClass(d){return generateUtilityClass("MuiTreeView",d)}generateUtilityClasses("MuiTreeView",["root"]);const useTreeViewModels=(d,m)=>{const g=reactExports.useRef({}),[x,b]=reactExports.useState(()=>{const v={};return d.forEach(S=>{S.models&&Object.entries(S.models).forEach(([C,T])=>{g.current[C]={controlledProp:T.controlledProp,defaultProp:T.defaultProp,isControlled:m[T.controlledProp]!==void 0},v[C]=m[T.defaultProp]})}),v});return Object.fromEntries(Object.entries(g.current).map(([v,S])=>{const C=S.isControlled?m[S.controlledProp]:x[v];return[v,{value:C,setValue:T=>{S.isControlled||b(R=>_extends$1({},R,{[v]:T}))}}]}))};class EventManager{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(m,g,x={}){let b=this.events[m];b||(b={highPriority:new Map,regular:new Map},this.events[m]=b),x.isFirst?b.highPriority.set(g,!0):b.regular.set(g,!0)}removeListener(m,g){this.events[m]&&(this.events[m].regular.delete(g),this.events[m].highPriority.delete(g))}removeAllListeners(){this.events={}}emit(m,...g){const x=this.events[m];if(!x)return;const b=Array.from(x.highPriority.keys()),E=Array.from(x.regular.keys());for(let v=b.length-1;v>=0;v-=1){const S=b[v];x.highPriority.has(S)&&S.apply(this,g)}for(let v=0;v<E.length;v+=1){const S=E[v];x.regular.has(S)&&S.apply(this,g)}}once(m,g){const x=this;this.on(m,function b(...E){x.removeListener(m,b),g.apply(x,E)})}}const getPreviousNode=(d,m)=>{const g=d.getNode(m),x=d.getNavigableChildrenIds(g.parentId),b=x.indexOf(m);if(b===0)return g.parentId;let E=x[b-1];for(;d.isNodeExpanded(E)&&d.getNavigableChildrenIds(E).length>0;)E=d.getNavigableChildrenIds(E).pop();return E},getNextNode=(d,m)=>{if(d.isNodeExpanded(m)&&d.getNavigableChildrenIds(m).length>0)return d.getNavigableChildrenIds(m)[0];let g=d.getNode(m);for(;g!=null;){const x=d.getNavigableChildrenIds(g.parentId),b=x[x.indexOf(g.id)+1];if(b)return b;g=d.getNode(g.parentId)}return null},getLastNode=d=>{let m=d.getNavigableChildrenIds(null).pop();for(;d.isNodeExpanded(m);)m=d.getNavigableChildrenIds(m).pop();return m},getFirstNode=d=>d.getNavigableChildrenIds(null)[0],populateInstance=(d,m)=>{Object.assign(d,m)},isSyntheticEvent=d=>d.isPropagationStopped!==void 0,useTreeViewInstanceEvents=({instance:d})=>{const[m]=reactExports.useState(()=>new EventManager),g=reactExports.useCallback((...b)=>{const[E,v,S={}]=b;S.defaultMuiPrevented=!1,!(isSyntheticEvent(S)&&S.isPropagationStopped())&&m.emit(E,v,S)},[m]),x=reactExports.useCallback((b,E)=>(m.on(b,E),()=>{m.removeListener(b,E)}),[m]);populateInstance(d,{$$publishEvent:g,$$subscribeEvent:x})},TREE_VIEW_CORE_PLUGINS=[useTreeViewInstanceEvents],useTreeView=d=>{const m=[...TREE_VIEW_CORE_PLUGINS,...d.plugins],g=m.reduce((A,I)=>I.getDefaultizedParams?I.getDefaultizedParams(A):A,d),x=useTreeViewModels(m,g),E=reactExports.useRef({}).current,v=reactExports.useRef(null),S=useForkRef(v,d.rootRef),[C,T]=reactExports.useState(()=>{const A={};return m.forEach(I=>{I.getInitialState&&Object.assign(A,I.getInitialState(g))}),A}),R=[];let k=DEFAULT_TREE_VIEW_CONTEXT_VALUE;const L=A=>{const I=A({instance:E,params:g,state:C,setState:T,rootRef:v,models:x})||{};I.getRootProps&&R.push(I.getRootProps),I.contextValue&&(k=I.contextValue)};return m.forEach(L),{getRootProps:(A={})=>{const I=_extends$1({role:"tree",tabIndex:0},A,{ref:S});return R.forEach(N=>{Object.assign(I,N(A))}),I},rootRef:S,contextValue:k}};function TreeViewProvider(d){const{value:m,children:g}=d;return jsxRuntimeExports.jsx(TreeViewContext.Provider,{value:m,children:jsxRuntimeExports.jsx(DescendantProvider,{children:g})})}const publishTreeViewEvent=(d,m,g)=>{d.$$publishEvent(m,g)},useTreeViewNodes=({instance:d,params:m})=>{const g=reactExports.useRef({}),x=reactExports.useCallback(T=>g.current[T],[]),b=reactExports.useCallback(T=>{g.current[T.id]=T},[]),E=reactExports.useCallback(T=>{const R=_extends$1({},g.current);delete R[T],g.current=R,publishTreeViewEvent(d,"removeNode",{id:T})},[d]),v=reactExports.useCallback(T=>{if(T==null)return!1;let R=d.getNode(T);if(!R)return!1;if(R.disabled)return!0;for(;R.parentId!=null;)if(R=d.getNode(R.parentId),R.disabled)return!0;return!1},[d]),S=useEventCallback(T=>Object.values(g.current).filter(R=>R.parentId===T).sort((R,k)=>R.index-k.index).map(R=>R.id));populateInstance(d,{getNode:x,updateNode:b,removeNode:E,getChildrenIds:S,getNavigableChildrenIds:T=>{let R=d.getChildrenIds(T);return m.disabledItemsFocusable||(R=R.filter(k=>!d.isNodeDisabled(k))),R},isNodeDisabled:v})},useTreeViewExpansion=({instance:d,params:m,models:g})=>{const x=reactExports.useCallback(S=>Array.isArray(g.expanded.value)?g.expanded.value.indexOf(S)!==-1:!1,[g.expanded.value]),b=reactExports.useCallback(S=>{var C;return!!((C=d.getNode(S))!=null&&C.expandable)},[d]),E=useEventCallback((S,C)=>{if(C==null)return;let T;g.expanded.value.indexOf(C)!==-1?T=g.expanded.value.filter(R=>R!==C):T=[C].concat(g.expanded.value),m.onNodeToggle&&m.onNodeToggle(S,T),g.expanded.setValue(T)});populateInstance(d,{isNodeExpanded:x,isNodeExpandable:b,toggleNodeExpansion:E,expandAllSiblings:(S,C)=>{const T=d.getNode(C),k=d.getChildrenIds(T.parentId).filter(D=>d.isNodeExpandable(D)&&!d.isNodeExpanded(D)),L=g.expanded.value.concat(k);k.length>0&&(g.expanded.setValue(L),m.onNodeToggle&&m.onNodeToggle(S,L))}})};useTreeViewExpansion.models={expanded:{controlledProp:"expanded",defaultProp:"defaultExpanded"}};const DEFAULT_EXPANDED=[];useTreeViewExpansion.getDefaultizedParams=d=>{var m;return _extends$1({},d,{defaultExpanded:(m=d.defaultExpanded)!=null?m:DEFAULT_EXPANDED})};const findOrderInTremauxTree=(d,m,g)=>{if(m===g)return[m,g];const x=d.getNode(m),b=d.getNode(g);if(x.parentId===b.id||b.parentId===x.id)return b.parentId===x.id?[x.id,b.id]:[b.id,x.id];const E=[x.id],v=[b.id];let S=x.parentId,C=b.parentId,T=v.indexOf(S)!==-1,R=E.indexOf(C)!==-1,k=!0,L=!0;for(;!R&&!T;)k&&(E.push(S),T=v.indexOf(S)!==-1,k=S!==null,!T&&k&&(S=d.getNode(S).parentId)),L&&!T&&(v.push(C),R=E.indexOf(C)!==-1,L=C!==null,!R&&L&&(C=d.getNode(C).parentId));const D=T?S:C,A=d.getChildrenIds(D),I=E[E.indexOf(D)-1],N=v[v.indexOf(D)-1];return A.indexOf(I)<A.indexOf(N)?[m,g]:[g,m]},useTreeViewSelection=({instance:d,params:m,models:g})=>{const x=reactExports.useRef(null),b=reactExports.useRef(!1),E=reactExports.useRef([]),v=A=>Array.isArray(g.selected.value)?g.selected.value.indexOf(A)!==-1:g.selected.value===A,S=(A,I,N=!1)=>{if(!m.disableSelection){if(N){if(Array.isArray(g.selected.value)){let z;g.selected.value.indexOf(I)!==-1?z=g.selected.value.filter(j=>j!==I):z=[I].concat(g.selected.value),m.onNodeSelect&&m.onNodeSelect(A,z),g.selected.setValue(z)}}else{const z=m.multiSelect?[I]:I;m.onNodeSelect&&m.onNodeSelect(A,z),g.selected.setValue(z)}x.current=I,b.current=!1,E.current=[]}},C=(A,I)=>{const[N,z]=findOrderInTremauxTree(d,A,I),j=[N];let Y=N;for(;Y!==z;)Y=getNextNode(d,Y),j.push(Y);return j},T=(A,I)=>{let N=g.selected.value.slice();const{start:z,next:j,current:Y}=I;!j||!Y||(E.current.indexOf(Y)===-1&&(E.current=[]),b.current?E.current.indexOf(j)!==-1?(N=N.filter(B=>B===z||B!==Y),E.current=E.current.filter(B=>B===z||B!==Y)):(N.push(j),E.current.push(j)):(N.push(j),E.current.push(Y,j)),m.onNodeSelect&&m.onNodeSelect(A,N),g.selected.setValue(N))},R=(A,I)=>{let N=g.selected.value.slice();const{start:z,end:j}=I;b.current&&(N=N.filter(U=>E.current.indexOf(U)===-1));let Y=C(z,j);Y=Y.filter(U=>!d.isNodeDisabled(U)),E.current=Y;let B=N.concat(Y);B=B.filter((U,W)=>B.indexOf(U)===W),m.onNodeSelect&&m.onNodeSelect(A,B),g.selected.setValue(B)};return populateInstance(d,{isNodeSelected:v,selectNode:S,selectRange:(A,I,N=!1)=>{if(m.disableSelection)return;const{start:z=x.current,end:j,current:Y}=I;N?T(A,{start:z,next:j,current:Y}):z!=null&&j!=null&&R(A,{start:z,end:j}),b.current=!0},rangeSelectToLast:(A,I)=>{x.current||(x.current=I);const N=b.current?x.current:I;d.selectRange(A,{start:N,end:getLastNode(d)})},rangeSelectToFirst:(A,I)=>{x.current||(x.current=I);const N=b.current?x.current:I;d.selectRange(A,{start:N,end:getFirstNode(d)})}}),{getRootProps:()=>({"aria-multiselectable":m.multiSelect})}};useTreeViewSelection.models={selected:{controlledProp:"selected",defaultProp:"defaultSelected"}};const DEFAULT_SELECTED=[];useTreeViewSelection.getDefaultizedParams=d=>{var m,g,x;return _extends$1({},d,{disableSelection:(m=d.disableSelection)!=null?m:!1,multiSelect:(g=d.multiSelect)!=null?g:!1,defaultSelected:(x=d.defaultSelected)!=null?x:d.multiSelect?DEFAULT_SELECTED:null})};const CLEANUP_TIMER_LOOP_MILLIS=1e3;class TimerBasedCleanupTracking{constructor(m=CLEANUP_TIMER_LOOP_MILLIS){this.timeouts=new Map,this.cleanupTimeout=CLEANUP_TIMER_LOOP_MILLIS,this.cleanupTimeout=m}register(m,g,x){this.timeouts||(this.timeouts=new Map);const b=setTimeout(()=>{typeof g=="function"&&g(),this.timeouts.delete(x.cleanupToken)},this.cleanupTimeout);this.timeouts.set(x.cleanupToken,b)}unregister(m){const g=this.timeouts.get(m.cleanupToken);g&&(this.timeouts.delete(m.cleanupToken),clearTimeout(g))}reset(){this.timeouts&&(this.timeouts.forEach((m,g)=>{this.unregister({cleanupToken:g})}),this.timeouts=void 0)}}class FinalizationRegistryBasedCleanupTracking{constructor(){this.registry=new FinalizationRegistry(m=>{typeof m=="function"&&m()})}register(m,g,x){this.registry.register(m,g,x)}unregister(m){this.registry.unregister(m)}reset(){}}class ObjectToBeRetainedByReact{}function createUseInstanceEventHandler(d){let m=0;return function(x,b,E){d.registry===null&&(d.registry=typeof FinalizationRegistry!="undefined"?new FinalizationRegistryBasedCleanupTracking:new TimerBasedCleanupTracking);const[v]=reactExports.useState(new ObjectToBeRetainedByReact),S=reactExports.useRef(null),C=reactExports.useRef();C.current=E;const T=reactExports.useRef(null);if(!S.current&&C.current){const R=(k,L)=>{if(!L.defaultMuiPrevented){var D;(D=C.current)==null||D.call(C,k,L)}};S.current=x.$$subscribeEvent(b,R),m+=1,T.current={cleanupToken:m},d.registry.register(v,()=>{var k;(k=S.current)==null||k.call(S),S.current=null,T.current=null},T.current)}else!C.current&&S.current&&(S.current(),S.current=null,T.current&&(d.registry.unregister(T.current),T.current=null));reactExports.useEffect(()=>{if(!S.current&&C.current){const R=(k,L)=>{if(!L.defaultMuiPrevented){var D;(D=C.current)==null||D.call(C,k,L)}};S.current=x.$$subscribeEvent(b,R)}return T.current&&d.registry&&(d.registry.unregister(T.current),T.current=null),()=>{var R;(R=S.current)==null||R.call(S),S.current=null}},[x,b])}}const registryContainer={registry:null},useInstanceEventHandler=createUseInstanceEventHandler(registryContainer),useTreeViewFocus=({instance:d,params:m,state:g,setState:x,models:b,rootRef:E})=>{const v=useEventCallback(D=>{const A=typeof D=="function"?D(g.focusedNodeId):D;x(I=>_extends$1({},I,{focusedNodeId:A}))}),S=reactExports.useCallback(D=>g.focusedNodeId===D,[g.focusedNodeId]),C=useEventCallback((D,A)=>{A&&(v(A),m.onNodeFocus&&m.onNodeFocus(D,A))});populateInstance(d,{isNodeFocused:S,focusNode:C}),useInstanceEventHandler(d,"removeNode",({id:D})=>{v(A=>A===D&&E.current===ownerDocument(E.current).activeElement?d.getChildrenIds(null)[0]:A)});const T=D=>A=>{var I;if((I=D.onFocus)==null||I.call(D,A),A.target===A.currentTarget){const N=j=>{const Y=d.getNode(j);return Y&&(Y.parentId==null||d.isNodeExpanded(Y.parentId))};let z;Array.isArray(b.selected.value)?z=b.selected.value.find(N):b.selected.value!=null&&N(b.selected.value)&&(z=b.selected.value),z==null&&(z=d.getNavigableChildrenIds(null)[0]),d.focusNode(A,z)}},R=D=>A=>{var I;(I=D.onBlur)==null||I.call(D,A),v(null)},k=d.getNode(g.focusedNodeId),L=k?k.idAttribute:null;return{getRootProps:D=>({onFocus:T(D),onBlur:R(D),"aria-activedescendant":L!=null?L:void 0})}};useTreeViewFocus.getInitialState=()=>({focusedNodeId:null});useTreeViewFocus.getDefaultizedParams=d=>{var m;return _extends$1({},d,{disabledItemsFocusable:(m=d.disabledItemsFocusable)!=null?m:!1})};function isPrintableCharacter(d){return d&&d.length===1&&d.match(/\S/)}function findNextFirstChar(d,m,g){for(let x=m;x<d.length;x+=1)if(g===d[x])return x;return-1}const useTreeViewKeyboardNavigation=({instance:d,params:m,state:g})=>{const b=useTheme$1().direction==="rtl",E=reactExports.useRef({}),v=useEventCallback((D,A)=>(E.current[D]=A,()=>{const I=_extends$1({},E.current);delete I[D],E.current=I}));populateInstance(d,{mapFirstChar:v});const S=D=>(g.focusedNodeId!=null&&d.isNodeExpandable(g.focusedNodeId)&&(d.isNodeExpanded(g.focusedNodeId)?d.focusNode(D,getNextNode(d,g.focusedNodeId)):d.isNodeDisabled(g.focusedNodeId)||d.toggleNodeExpansion(D,g.focusedNodeId)),!0),C=D=>{if(g.focusedNodeId==null)return!1;if(d.isNodeExpanded(g.focusedNodeId)&&!d.isNodeDisabled(g.focusedNodeId))return d.toggleNodeExpansion(D,g.focusedNodeId),!0;const A=d.getNode(g.focusedNodeId).parentId;return A?(d.focusNode(D,A),!0):!1},T=(D,A,I)=>{let N,z;const j=I.toLowerCase(),Y=[],B=[];Object.keys(E.current).forEach(U=>{const W=d.getNode(U),V=W.parentId?d.isNodeExpanded(W.parentId):!0,J=m.disabledItemsFocusable?!1:d.isNodeDisabled(U);V&&!J&&(Y.push(U),B.push(E.current[U]))}),N=Y.indexOf(A)+1,N>=Y.length&&(N=0),z=findNextFirstChar(B,N,j),z===-1&&(z=findNextFirstChar(B,0,j)),z>-1&&d.focusNode(D,Y[z])},R=(D,A)=>{d.isNodeDisabled(getNextNode(d,A))||d.selectRange(D,{end:getNextNode(d,A),current:A},!0)},k=(D,A)=>{d.isNodeDisabled(getPreviousNode(d,A))||d.selectRange(D,{end:getPreviousNode(d,A),current:A},!0)},L=D=>A=>{var I;(I=D.onKeyDown)==null||I.call(D,A);let N=!1;const z=A.key;if(A.altKey||A.currentTarget!==A.target||g.focusedNodeId==null)return;const j=A.ctrlKey||A.metaKey;switch(z){case" ":!m.disableSelection&&!d.isNodeDisabled(g.focusedNodeId)&&(N=!0,m.multiSelect&&A.shiftKey?d.selectRange(A,{end:g.focusedNodeId}):m.multiSelect?d.selectNode(A,g.focusedNodeId,!0):d.selectNode(A,g.focusedNodeId)),A.stopPropagation();break;case"Enter":d.isNodeDisabled(g.focusedNodeId)||(d.isNodeExpandable(g.focusedNodeId)?(d.toggleNodeExpansion(A,g.focusedNodeId),N=!0):m.disableSelection||(N=!0,m.multiSelect?d.selectNode(A,g.focusedNodeId,!0):d.selectNode(A,g.focusedNodeId))),A.stopPropagation();break;case"ArrowDown":m.multiSelect&&A.shiftKey&&!m.disableSelection&&R(A,g.focusedNodeId),d.focusNode(A,getNextNode(d,g.focusedNodeId)),N=!0;break;case"ArrowUp":m.multiSelect&&A.shiftKey&&!m.disableSelection&&k(A,g.focusedNodeId),d.focusNode(A,getPreviousNode(d,g.focusedNodeId)),N=!0;break;case"ArrowRight":b?N=C(A):N=S(A);break;case"ArrowLeft":b?N=S(A):N=C(A);break;case"Home":m.multiSelect&&j&&A.shiftKey&&!m.disableSelection&&!d.isNodeDisabled(g.focusedNodeId)&&d.rangeSelectToFirst(A,g.focusedNodeId),d.focusNode(A,getFirstNode(d)),N=!0;break;case"End":m.multiSelect&&j&&A.shiftKey&&!m.disableSelection&&!d.isNodeDisabled(g.focusedNodeId)&&d.rangeSelectToLast(A,g.focusedNodeId),d.focusNode(A,getLastNode(d)),N=!0;break;default:z==="*"?(d.expandAllSiblings(A,g.focusedNodeId),N=!0):m.multiSelect&&j&&z.toLowerCase()==="a"&&!m.disableSelection?(d.selectRange(A,{start:getFirstNode(d),end:getLastNode(d)}),N=!0):!j&&!A.shiftKey&&isPrintableCharacter(z)&&(T(A,g.focusedNodeId,z),N=!0)}N&&(A.preventDefault(),A.stopPropagation())};return{getRootProps:D=>({onKeyDown:L(D)})}},useTreeViewContextValueBuilder=({instance:d,params:m})=>{const g=useId(m.id);return{getRootProps:()=>({id:g}),contextValue:{treeId:g,instance:d,multiSelect:m.multiSelect,disabledItemsFocusable:m.disabledItemsFocusable,icons:{defaultCollapseIcon:m.defaultCollapseIcon,defaultEndIcon:m.defaultEndIcon,defaultExpandIcon:m.defaultExpandIcon,defaultParentIcon:m.defaultParentIcon}}}},DEFAULT_TREE_VIEW_PLUGINS=[useTreeViewNodes,useTreeViewExpansion,useTreeViewSelection,useTreeViewFocus,useTreeViewKeyboardNavigation,useTreeViewContextValueBuilder],_excluded$w=["disabledItemsFocusable","expanded","defaultExpanded","onNodeToggle","onNodeFocus","disableSelection","defaultSelected","selected","multiSelect","onNodeSelect","id","defaultCollapseIcon","defaultEndIcon","defaultExpandIcon","defaultParentIcon","children"],useUtilityClasses$q=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getTreeViewUtilityClass,m)},TreeViewRoot=styled("ul",{name:"MuiTreeView",slot:"Root",overridesResolver:(d,m)=>m.root})({padding:0,margin:0,listStyle:"none",outline:0}),TreeView=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiTreeView"}),b=x,E=x,{disabledItemsFocusable:v,expanded:S,defaultExpanded:C,onNodeToggle:T,onNodeFocus:R,disableSelection:k,defaultSelected:L,selected:D,multiSelect:A,onNodeSelect:I,id:N,defaultCollapseIcon:z,defaultEndIcon:j,defaultExpandIcon:Y,defaultParentIcon:B,children:U}=E,W=_objectWithoutPropertiesLoose(E,_excluded$w),{getRootProps:V,contextValue:J}=useTreeView({disabledItemsFocusable:v,expanded:S,defaultExpanded:C,onNodeToggle:T,onNodeFocus:R,disableSelection:k,defaultSelected:L,selected:D,multiSelect:A,onNodeSelect:I,id:N,defaultCollapseIcon:z,defaultEndIcon:j,defaultExpandIcon:Y,defaultParentIcon:B,plugins:DEFAULT_TREE_VIEW_PLUGINS,rootRef:g}),Q=useUtilityClasses$q(x),X=useSlotProps({elementType:TreeViewRoot,externalSlotProps:{},externalForwardedProps:W,className:Q.root,getSlotProps:V,ownerState:b});return jsxRuntimeExports.jsx(TreeViewProvider,{value:J,children:jsxRuntimeExports.jsx(TreeViewRoot,_extends$1({},X,{children:U}))})});function VfsPathField(C){var T=C,{value:d="",onChange:m,helperText:g,setApi:x,autocompleteProps:b,folders:E=!0,files:v=!0}=T,S=Vt(T,["value","onChange","helperText","setApi","autocompleteProps","folders","files"]);const R=dirname(d),{list:k,loading:L}=useApiList("get_file_list",{uri:R,admin:!0,fileMask:typeof v=="string"?v:void 0,onlyFolders:!v}),D=reactExports.useMemo(()=>{const A=[R&&dirname(R)+"/",R+"/"].filter(Boolean).concat(k.map(I=>R+"/"+I.n));return d&&!A.includes(d)&&A.push(d),A},[k,R]);return x==null||x({getError(){return!E&&(d==null?void 0:d.endsWith("/"))&&"must be a file"||!1}}),reactExports.createElement(Autocomplete,Fe({value:d,options:D,isOptionEqualToValue:(A,I)=>A===I||A===I+"/",loading:L,disableClearable:!0,disableCloseOnSelect:!0,renderInput:A=>reactExports.createElement(TextField,$t(Fe(Fe({helperText:g,onChange(I){const N=I.target.value;(N.endsWith("/")||!N)&&m(N,{was:d,event:I})},onBlur(I){const N=enforceFinal("/",I.target.value);D.includes(N)&&m(N,{was:d,event:I})}},A),S),{InputLabelProps:Fe(Fe({shrink:!0},A.InputLabelProps),S.InputLabelProps)})),onChange:(A,I)=>m(I,{was:d,event:A})},b))}const _excluded$v=["localeText"],MuiPickersAdapterContext=reactExports.createContext(null),LocalizationProvider=function(m){var g;const{localeText:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$v),{utils:E,localeText:v}=(g=reactExports.useContext(MuiPickersAdapterContext))!=null?g:{utils:void 0,localeText:void 0},S=useThemeProps({props:b,name:"MuiLocalizationProvider"}),{children:C,dateAdapter:T,dateFormats:R,dateLibInstance:k,adapterLocale:L,localeText:D}=S,A=reactExports.useMemo(()=>_extends$1({},D,v,x),[D,v,x]),I=reactExports.useMemo(()=>{if(!T)return E||null;const j=new T({locale:L,formats:R,instance:k});if(!j.isMUIAdapter)throw new Error(["MUI: The date adapter should be imported from `@mui/x-date-pickers` or `@mui/x-date-pickers-pro`, not from `@date-io`","For example, `import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'` instead of `import AdapterDayjs from '@date-io/dayjs'`","More information on the installation documentation: https://mui.com/x/react-date-pickers/getting-started/#installation"].join(`
617
617
  `));return j},[T,L,R,k,E]),N=reactExports.useMemo(()=>I?{minDate:I.date("1900-01-01T00:00:00.000"),maxDate:I.date("2099-12-31T00:00:00.000")}:null,[I]),z=reactExports.useMemo(()=>({utils:I,defaultDates:N,localeText:A}),[N,I,A]);return jsxRuntimeExports.jsx(MuiPickersAdapterContext.Provider,{value:z,children:C})},getPickersLocalization=d=>({components:{MuiLocalizationProvider:{defaultProps:{localeText:_extends$1({},d)}}}}),enUSPickers={previousMonth:"Previous month",nextMonth:"Next month",openPreviousView:"open previous view",openNextView:"open next view",calendarViewSwitchingButtonAriaLabel:d=>d==="year"?"year view is open, switch to calendar view":"calendar view is open, switch to year view",start:"Start",end:"End",cancelButtonLabel:"Cancel",clearButtonLabel:"Clear",okButtonLabel:"OK",todayButtonLabel:"Today",datePickerToolbarTitle:"Select date",dateTimePickerToolbarTitle:"Select date & time",timePickerToolbarTitle:"Select time",dateRangePickerToolbarTitle:"Select date range",clockLabelText:(d,m,g)=>`Select ${d}. ${m===null?"No time selected":`Selected time is ${g.format(m,"fullTime")}`}`,hoursClockNumberText:d=>`${d} hours`,minutesClockNumberText:d=>`${d} minutes`,secondsClockNumberText:d=>`${d} seconds`,selectViewText:d=>`Select ${d}`,calendarWeekNumberHeaderLabel:"Week number",calendarWeekNumberHeaderText:"#",calendarWeekNumberAriaLabelText:d=>`Week ${d}`,calendarWeekNumberText:d=>`${d}`,openDatePickerDialogue:(d,m)=>d!==null&&m.isValid(d)?`Choose date, selected date is ${m.format(d,"fullDate")}`:"Choose date",openTimePickerDialogue:(d,m)=>d!==null&&m.isValid(d)?`Choose time, selected time is ${m.format(d,"fullTime")}`:"Choose time",fieldClearLabel:"Clear value",timeTableLabel:"pick time",dateTableLabel:"pick date",fieldYearPlaceholder:d=>"Y".repeat(d.digitAmount),fieldMonthPlaceholder:d=>d.contentType==="letter"?"MMMM":"MM",fieldDayPlaceholder:()=>"DD",fieldWeekDayPlaceholder:d=>d.contentType==="letter"?"EEEE":"EE",fieldHoursPlaceholder:()=>"hh",fieldMinutesPlaceholder:()=>"mm",fieldSecondsPlaceholder:()=>"ss",fieldMeridiemPlaceholder:()=>"aa"},DEFAULT_LOCALE=enUSPickers;getPickersLocalization(enUSPickers);const useLocalizationContext=()=>{const d=reactExports.useContext(MuiPickersAdapterContext);if(d===null)throw new Error(["MUI: Can not find the date and time pickers localization context.","It looks like you forgot to wrap your component in LocalizationProvider.","This can also happen if you are bundling multiple versions of the `@mui/x-date-pickers` package"].join(`
618
618
  `));if(d.utils===null)throw new Error(["MUI: Can not find the date and time pickers adapter from its localization context.","It looks like you forgot to pass a `dateAdapter` to your LocalizationProvider."].join(`
619
619
  `));const m=reactExports.useMemo(()=>_extends$1({},DEFAULT_LOCALE,d.localeText),[d.localeText]);return reactExports.useMemo(()=>_extends$1({},d,{localeText:m}),[d,m])},useUtils=()=>useLocalizationContext().utils,useDefaultDates=()=>useLocalizationContext().defaultDates,useLocaleText=()=>useLocalizationContext().localeText,useNow=d=>{const m=useUtils(),g=reactExports.useRef();return g.current===void 0&&(g.current=m.dateWithTimezone(void 0,d)),g.current},ArrowDropDownIcon=createSvgIcon(jsxRuntimeExports.jsx("path",{d:"M7 10l5 5 5-5z"}),"ArrowDropDown"),ArrowLeftIcon=createSvgIcon(jsxRuntimeExports.jsx("path",{d:"M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"}),"ArrowLeft"),ArrowRightIcon=createSvgIcon(jsxRuntimeExports.jsx("path",{d:"M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"}),"ArrowRight"),CalendarIcon=createSvgIcon(jsxRuntimeExports.jsx("path",{d:"M17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z"}),"Calendar");createSvgIcon(jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),jsxRuntimeExports.jsx("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"})]}),"Clock");const DateRangeIcon=createSvgIcon(jsxRuntimeExports.jsx("path",{d:"M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"}),"DateRange"),TimeIcon=createSvgIcon(jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),jsxRuntimeExports.jsx("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"})]}),"Time"),ClearIcon=createSvgIcon(jsxRuntimeExports.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),"Clear");function getPickersArrowSwitcherUtilityClass(d){return generateUtilityClass("MuiPickersArrowSwitcher",d)}generateUtilityClasses("MuiPickersArrowSwitcher",["root","spacer","button"]);const _excluded$u=["children","className","slots","slotProps","isNextDisabled","isNextHidden","onGoToNext","nextLabel","isPreviousDisabled","isPreviousHidden","onGoToPrevious","previousLabel"],_excluded2$5=["ownerState"],_excluded3$2=["ownerState"],PickersArrowSwitcherRoot=styled("div",{name:"MuiPickersArrowSwitcher",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"flex"}),PickersArrowSwitcherSpacer=styled("div",{name:"MuiPickersArrowSwitcher",slot:"Spacer",overridesResolver:(d,m)=>m.spacer})(({theme:d})=>({width:d.spacing(3)})),PickersArrowSwitcherButton=styled(IconButton,{name:"MuiPickersArrowSwitcher",slot:"Button",overridesResolver:(d,m)=>m.button})(({ownerState:d})=>_extends$1({},d.hidden&&{visibility:"hidden"})),useUtilityClasses$p=d=>{const{classes:m}=d;return composeClasses({root:["root"],spacer:["spacer"],button:["button"]},getPickersArrowSwitcherUtilityClass,m)},PickersArrowSwitcher=reactExports.forwardRef(function(m,g){var x,b,E,v;const C=useTheme$1().direction==="rtl",T=useThemeProps({props:m,name:"MuiPickersArrowSwitcher"}),{children:R,className:k,slots:L,slotProps:D,isNextDisabled:A,isNextHidden:I,onGoToNext:N,nextLabel:z,isPreviousDisabled:j,isPreviousHidden:Y,onGoToPrevious:B,previousLabel:U}=T,W=_objectWithoutPropertiesLoose(T,_excluded$u),V=T,J=useUtilityClasses$p(V),Q={isDisabled:A,isHidden:I,goTo:N,label:z},X={isDisabled:j,isHidden:Y,goTo:B,label:U},re=(x=L==null?void 0:L.previousIconButton)!=null?x:PickersArrowSwitcherButton,ie=useSlotProps({elementType:re,externalSlotProps:D==null?void 0:D.previousIconButton,additionalProps:{size:"medium",title:X.label,"aria-label":X.label,disabled:X.isDisabled,edge:"end",onClick:X.goTo},ownerState:_extends$1({},V,{hidden:X.isHidden}),className:J.button}),oe=(b=L==null?void 0:L.nextIconButton)!=null?b:PickersArrowSwitcherButton,Z=useSlotProps({elementType:oe,externalSlotProps:D==null?void 0:D.nextIconButton,additionalProps:{size:"medium",title:Q.label,"aria-label":Q.label,disabled:Q.isDisabled,edge:"start",onClick:Q.goTo},ownerState:_extends$1({},V,{hidden:Q.isHidden}),className:J.button}),ee=(E=L==null?void 0:L.leftArrowIcon)!=null?E:ArrowLeftIcon,ce=useSlotProps({elementType:ee,externalSlotProps:D==null?void 0:D.leftArrowIcon,additionalProps:{fontSize:"inherit"},ownerState:void 0}),fe=_objectWithoutPropertiesLoose(ce,_excluded2$5),ae=(v=L==null?void 0:L.rightArrowIcon)!=null?v:ArrowRightIcon,ue=useSlotProps({elementType:ae,externalSlotProps:D==null?void 0:D.rightArrowIcon,additionalProps:{fontSize:"inherit"},ownerState:void 0}),pe=_objectWithoutPropertiesLoose(ue,_excluded3$2);return jsxRuntimeExports.jsxs(PickersArrowSwitcherRoot,_extends$1({ref:g,className:clsx(J.root,k),ownerState:V},W,{children:[jsxRuntimeExports.jsx(re,_extends$1({},ie,{children:C?jsxRuntimeExports.jsx(ae,_extends$1({},pe)):jsxRuntimeExports.jsx(ee,_extends$1({},fe))})),R?jsxRuntimeExports.jsx(Typography,{variant:"subtitle1",component:"span",children:R}):jsxRuntimeExports.jsx(PickersArrowSwitcherSpacer,{className:J.spacer,ownerState:V}),jsxRuntimeExports.jsx(oe,_extends$1({},Z,{children:C?jsxRuntimeExports.jsx(ee,_extends$1({},fe)):jsxRuntimeExports.jsx(ae,_extends$1({},pe))}))]}))}),areViewsEqual=(d,m)=>d.length!==m.length?!1:m.every(g=>d.includes(g)),applyDefaultViewProps=({openTo:d,defaultOpenTo:m,views:g,defaultViews:x})=>{const b=g!=null?g:x;let E;if(d!=null)E=d;else if(b.includes(m))E=m;else if(b.length>0)E=b[0];else throw new Error("MUI: The `views` prop must contain at least one view");return{views:b,openTo:E}},timeViews=["hours","minutes","seconds"],isTimeView=d=>timeViews.includes(d),isInternalTimeView=d=>timeViews.includes(d)||d==="meridiem",getMeridiem=(d,m)=>d?m.getHours(d)>=12?"pm":"am":null,convertValueToMeridiem=(d,m,g)=>g&&(d>=12?"pm":"am")!==m?m==="am"?d-12:d+12:d,convertToMeridiem=(d,m,g,x)=>{const b=convertValueToMeridiem(x.getHours(d),m,g);return x.setHours(d,b)},getSecondsInDay=(d,m)=>m.getHours(d)*3600+m.getMinutes(d)*60+m.getSeconds(d),createIsAfterIgnoreDatePart=(d,m)=>(g,x)=>d?m.isAfter(g,x):getSecondsInDay(g,m)>getSecondsInDay(x,m),resolveTimeFormat=(d,{format:m,views:g,ampm:x})=>{if(m!=null)return m;const b=d.formats;return areViewsEqual(g,["hours"])?x?`${b.hours12h} ${b.meridiem}`:b.hours24h:areViewsEqual(g,["minutes"])?b.minutes:areViewsEqual(g,["seconds"])?b.seconds:areViewsEqual(g,["minutes","seconds"])?`${b.minutes}:${b.seconds}`:areViewsEqual(g,["hours","minutes","seconds"])?x?`${b.hours12h}:${b.minutes}:${b.seconds} ${b.meridiem}`:`${b.hours24h}:${b.minutes}:${b.seconds}`:x?`${b.hours12h}:${b.minutes} ${b.meridiem}`:`${b.hours24h}:${b.minutes}`};function useViews({onChange:d,onViewChange:m,openTo:g,view:x,views:b,autoFocus:E,focusedView:v,onFocusedViewChange:S}){var C,T;const R=reactExports.useRef(g),k=reactExports.useRef(b),L=reactExports.useRef(b.includes(g)?g:b[0]),[D,A]=useControlled({name:"useViews",state:"view",controlled:x,default:L.current}),I=reactExports.useRef(E?D:null),[N,z]=useControlled({name:"useViews",state:"focusedView",controlled:v,default:I.current});reactExports.useEffect(()=>{(R.current&&R.current!==g||k.current&&k.current.some(Q=>!b.includes(Q)))&&(A(b.includes(g)?g:b[0]),k.current=b,R.current=g)},[g,A,D,b]);const j=b.indexOf(D),Y=(C=b[j-1])!=null?C:null,B=(T=b[j+1])!=null?T:null,U=useEventCallback((Q,X)=>{z(X?Q:re=>Q===re?null:re),S==null||S(Q,X)}),W=useEventCallback(Q=>{U(Q,!0),Q!==D&&(A(Q),m&&m(Q))}),V=useEventCallback(()=>{B&&W(B)}),J=useEventCallback((Q,X,re)=>{const ie=X==="finish",oe=re?b.indexOf(re)<b.length-1:!!B;if(d(Q,ie&&oe?"partial":X,re),re&&re!==D){const ee=b[b.indexOf(re)+1];ee&&W(ee)}else ie&&V()});return{view:D,setView:W,focusedView:N,setFocusedView:U,nextView:B,previousView:Y,defaultView:b.includes(g)?g:b[0],goToNextView:V,setValueAndGoToNextView:J}}function useNextMonthDisabled(d,{disableFuture:m,maxDate:g,timezone:x}){const b=useUtils();return reactExports.useMemo(()=>{const E=b.dateWithTimezone(void 0,x),v=b.startOfMonth(m&&b.isBefore(E,g)?E:g);return!b.isAfter(v,d)},[m,g,d,b,x])}function usePreviousMonthDisabled(d,{disablePast:m,minDate:g,timezone:x}){const b=useUtils();return reactExports.useMemo(()=>{const E=b.dateWithTimezone(void 0,x),v=b.startOfMonth(m&&b.isAfter(E,g)?E:g);return!b.isBefore(v,d)},[m,g,d,b,x])}function useMeridiemMode(d,m,g,x){const b=useUtils(),E=getMeridiem(d,b),v=reactExports.useCallback(S=>{const C=d==null?null:convertToMeridiem(d,S,!!m,b);g(C,x!=null?x:"partial")},[m,d,g,x,b]);return{meridiemMode:E,handleMeridiemChange:v}}const DAY_SIZE=36,DAY_MARGIN=2,DIALOG_WIDTH=320,MAX_CALENDAR_HEIGHT=280,VIEW_HEIGHT=334,DIGITAL_CLOCK_VIEW_HEIGHT=232,MULTI_SECTION_CLOCK_SECTION_WIDTH=48,PickerViewRoot=styled("div")({overflow:"hidden",width:DIALOG_WIDTH,maxHeight:VIEW_HEIGHT,display:"flex",flexDirection:"column",margin:"0 auto"});function getTimeClockUtilityClass(d){return generateUtilityClass("MuiTimeClock",d)}generateUtilityClasses("MuiTimeClock",["root","arrowSwitcher"]);const CLOCK_WIDTH=220,CLOCK_HOUR_WIDTH=36,clockCenter={x:CLOCK_WIDTH/2,y:CLOCK_WIDTH/2},baseClockPoint={x:clockCenter.x,y:0},cx=baseClockPoint.x-clockCenter.x,cy$2=baseClockPoint.y-clockCenter.y,rad2deg=d=>d*(180/Math.PI),getAngleValue=(d,m,g)=>{const x=m-clockCenter.x,b=g-clockCenter.y,E=Math.atan2(cx,cy$2)-Math.atan2(x,b);let v=rad2deg(E);v=Math.round(v/d)*d,v%=360;const S=Math.floor(v/d)||0,C=oo(x,2)+oo(b,2),T=Math.sqrt(C);return{value:S,distance:T}},getMinutes=(d,m,g=1)=>{const x=g*6;let{value:b}=getAngleValue(x,d,m);return b=b*g%60,b},getHours=(d,m,g)=>{const{value:x,distance:b}=getAngleValue(30,d,m);let E=x||12;return g?E%=12:b<CLOCK_WIDTH/2-CLOCK_HOUR_WIDTH&&(E+=12,E%=24),E};function getClockPointerUtilityClass(d){return generateUtilityClass("MuiClockPointer",d)}generateUtilityClasses("MuiClockPointer",["root","thumb"]);const _excluded$t=["className","hasSelected","isInner","type","viewValue"],useUtilityClasses$o=d=>{const{classes:m}=d;return composeClasses({root:["root"],thumb:["thumb"]},getClockPointerUtilityClass,m)},ClockPointerRoot=styled("div",{name:"MuiClockPointer",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d,ownerState:m})=>_extends$1({width:2,backgroundColor:(d.vars||d).palette.primary.main,position:"absolute",left:"calc(50% - 1px)",bottom:"50%",transformOrigin:"center bottom 0px"},m.shouldAnimate&&{transition:d.transitions.create(["transform","height"])})),ClockPointerThumb=styled("div",{name:"MuiClockPointer",slot:"Thumb",overridesResolver:(d,m)=>m.thumb})(({theme:d,ownerState:m})=>_extends$1({width:4,height:4,backgroundColor:(d.vars||d).palette.primary.contrastText,borderRadius:"50%",position:"absolute",top:-21,left:`calc(50% - ${CLOCK_HOUR_WIDTH/2}px)`,border:`${(CLOCK_HOUR_WIDTH-4)/2}px solid ${(d.vars||d).palette.primary.main}`,boxSizing:"content-box"},m.hasSelected&&{backgroundColor:(d.vars||d).palette.primary.main}));function ClockPointer(d){const m=useThemeProps({props:d,name:"MuiClockPointer"}),{className:g,isInner:x,type:b,viewValue:E}=m,v=_objectWithoutPropertiesLoose(m,_excluded$t),S=reactExports.useRef(b);reactExports.useEffect(()=>{S.current=b},[b]);const C=_extends$1({},m,{shouldAnimate:S.current!==b}),T=useUtilityClasses$o(C),R=()=>{let L=360/(b==="hours"?12:60)*E;return b==="hours"&&E>12&&(L-=360),{height:Math.round((x?.26:.4)*CLOCK_WIDTH),transform:`rotateZ(${L}deg)`}};return jsxRuntimeExports.jsx(ClockPointerRoot,_extends$1({style:R(),className:clsx(g,T.root),ownerState:C},v,{children:jsxRuntimeExports.jsx(ClockPointerThumb,{ownerState:C,className:T.thumb})}))}function getClockUtilityClass(d){return generateUtilityClass("MuiClock",d)}generateUtilityClasses("MuiClock",["root","clock","wrapper","squareMask","pin","amButton","pmButton","meridiemText"]);const mergeDateAndTime=(d,m,g)=>{let x=m;return x=d.setHours(x,d.getHours(g)),x=d.setMinutes(x,d.getMinutes(g)),x=d.setSeconds(x,d.getSeconds(g)),x},findClosestEnabledDate=({date:d,disableFuture:m,disablePast:g,maxDate:x,minDate:b,isDateDisabled:E,utils:v,timezone:S})=>{const C=mergeDateAndTime(v,v.dateWithTimezone(void 0,S),d);g&&v.isBefore(b,C)&&(b=C),m&&v.isAfter(x,C)&&(x=C);let T=d,R=d;for(v.isBefore(d,b)&&(T=b,R=null),v.isAfter(d,x)&&(R&&(R=x),T=null);T||R;){if(T&&v.isAfter(T,x)&&(T=null),R&&v.isBefore(R,b)&&(R=null),T){if(!E(T))return T;T=v.addDays(T,1)}if(R){if(!E(R))return R;R=v.addDays(R,-1)}}return null},replaceInvalidDateByNull=(d,m)=>m==null||!d.isValid(m)?null:m,applyDefaultDate=(d,m,g)=>m==null||!d.isValid(m)?g:m,areDatesEqual=(d,m,g)=>!d.isValid(m)&&m!=null&&!d.isValid(g)&&g!=null?!0:d.isEqual(m,g),getMonthsInYear=(d,m)=>{const x=[d.startOfYear(m)];for(;x.length<12;){const b=x[x.length-1];x.push(d.addMonths(b,1))}return x},getTodayDate=(d,m,g)=>g==="date"?d.startOfDay(d.dateWithTimezone(void 0,m)):d.dateWithTimezone(void 0,m),formatMeridiem=(d,m)=>{const g=d.setHours(d.date(),m==="am"?2:14);return d.format(g,"meridiem")},dateViews=["year","month","day"],isDatePickerView=d=>dateViews.includes(d),resolveDateFormat=(d,{format:m,views:g},x)=>{if(m!=null)return m;const b=d.formats;return areViewsEqual(g,["year"])?b.year:areViewsEqual(g,["month"])?b.month:areViewsEqual(g,["day"])?b.dayOfMonth:areViewsEqual(g,["month","year"])?`${b.month} ${b.year}`:areViewsEqual(g,["day","month"])?`${b.month} ${b.dayOfMonth}`:b.keyboardDate},getWeekdays=(d,m)=>{const g=d.startOfWeek(m);return[0,1,2,3,4,5,6].map(x=>d.addDays(g,x))},useUtilityClasses$n=d=>{const{classes:m}=d;return composeClasses({root:["root"],clock:["clock"],wrapper:["wrapper"],squareMask:["squareMask"],pin:["pin"],amButton:["amButton"],pmButton:["pmButton"],meridiemText:["meridiemText"]},getClockUtilityClass,m)},ClockRoot=styled("div",{name:"MuiClock",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d})=>({display:"flex",justifyContent:"center",alignItems:"center",margin:d.spacing(2)})),ClockClock=styled("div",{name:"MuiClock",slot:"Clock",overridesResolver:(d,m)=>m.clock})({backgroundColor:"rgba(0,0,0,.07)",borderRadius:"50%",height:220,width:220,flexShrink:0,position:"relative",pointerEvents:"none"}),ClockWrapper=styled("div",{name:"MuiClock",slot:"Wrapper",overridesResolver:(d,m)=>m.wrapper})({"&:focus":{outline:"none"}}),ClockSquareMask=styled("div",{name:"MuiClock",slot:"SquareMask",overridesResolver:(d,m)=>m.squareMask})(({ownerState:d})=>_extends$1({width:"100%",height:"100%",position:"absolute",pointerEvents:"auto",outline:0,touchAction:"none",userSelect:"none"},d.disabled?{}:{"@media (pointer: fine)":{cursor:"pointer",borderRadius:"50%"},"&:active":{cursor:"move"}})),ClockPin=styled("div",{name:"MuiClock",slot:"Pin",overridesResolver:(d,m)=>m.pin})(({theme:d})=>({width:6,height:6,borderRadius:"50%",backgroundColor:(d.vars||d).palette.primary.main,position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"})),ClockAmButton=styled(IconButton,{name:"MuiClock",slot:"AmButton",overridesResolver:(d,m)=>m.amButton})(({theme:d,ownerState:m})=>_extends$1({zIndex:1,position:"absolute",bottom:8,left:8,paddingLeft:4,paddingRight:4,width:CLOCK_HOUR_WIDTH},m.meridiemMode==="am"&&{backgroundColor:(d.vars||d).palette.primary.main,color:(d.vars||d).palette.primary.contrastText,"&:hover":{backgroundColor:(d.vars||d).palette.primary.light}})),ClockPmButton=styled(IconButton,{name:"MuiClock",slot:"PmButton",overridesResolver:(d,m)=>m.pmButton})(({theme:d,ownerState:m})=>_extends$1({zIndex:1,position:"absolute",bottom:8,right:8,paddingLeft:4,paddingRight:4,width:CLOCK_HOUR_WIDTH},m.meridiemMode==="pm"&&{backgroundColor:(d.vars||d).palette.primary.main,color:(d.vars||d).palette.primary.contrastText,"&:hover":{backgroundColor:(d.vars||d).palette.primary.light}})),ClockMeridiemText=styled(Typography,{name:"MuiClock",slot:"meridiemText",overridesResolver:(d,m)=>m.meridiemText})({overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"});function Clock(d){const m=useThemeProps({props:d,name:"MuiClock"}),{ampm:g,ampmInClock:x,autoFocus:b,children:E,value:v,handleMeridiemChange:S,isTimeDisabled:C,meridiemMode:T,minutesStep:R=1,onChange:k,selectedId:L,type:D,viewValue:A,disabled:I,readOnly:N,className:z}=m,j=m,Y=useUtils(),B=useLocaleText(),U=reactExports.useRef(!1),W=useUtilityClasses$n(j),V=C(A,D),J=!g&&D==="hours"&&(A<1||A>12),Q=(ue,pe)=>{I||N||C(ue,D)||k(ue,pe)},X=(ue,pe)=>{let{offsetX:ge,offsetY:ye}=ue;if(ge===void 0){const ve=ue.target.getBoundingClientRect();ge=ue.changedTouches[0].clientX-ve.left,ye=ue.changedTouches[0].clientY-ve.top}const Ee=D==="seconds"||D==="minutes"?getMinutes(ge,ye,R):getHours(ge,ye,!!g);Q(Ee,pe)},re=ue=>{U.current=!0,X(ue,"shallow")},ie=ue=>{U.current&&(X(ue,"finish"),U.current=!1)},oe=ue=>{ue.buttons>0&&X(ue.nativeEvent,"shallow")},Z=ue=>{U.current&&(U.current=!1),X(ue.nativeEvent,"finish")},ee=reactExports.useMemo(()=>D==="hours"?!0:A%5===0,[D,A]),ce=D==="minutes"?R:1,fe=reactExports.useRef(null);useEnhancedEffect(()=>{b&&fe.current.focus()},[b]);const ae=ue=>{if(!U.current)switch(ue.key){case"Home":Q(0,"partial"),ue.preventDefault();break;case"End":Q(D==="minutes"?59:23,"partial"),ue.preventDefault();break;case"ArrowUp":Q(A+ce,"partial"),ue.preventDefault();break;case"ArrowDown":Q(A-ce,"partial"),ue.preventDefault();break}};return jsxRuntimeExports.jsxs(ClockRoot,{className:clsx(z,W.root),children:[jsxRuntimeExports.jsxs(ClockClock,{className:W.clock,children:[jsxRuntimeExports.jsx(ClockSquareMask,{onTouchMove:re,onTouchEnd:ie,onMouseUp:Z,onMouseMove:oe,ownerState:{disabled:I},className:W.squareMask}),!V&&jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx(ClockPin,{className:W.pin}),v!=null&&jsxRuntimeExports.jsx(ClockPointer,{type:D,viewValue:A,isInner:J,hasSelected:ee})]}),jsxRuntimeExports.jsx(ClockWrapper,{"aria-activedescendant":L,"aria-label":B.clockLabelText(D,v,Y),ref:fe,role:"listbox",onKeyDown:ae,tabIndex:0,className:W.wrapper,children:E})]}),g&&x&&jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx(ClockAmButton,{onClick:N?void 0:()=>S("am"),disabled:I||T===null,ownerState:j,className:W.amButton,title:formatMeridiem(Y,"am"),children:jsxRuntimeExports.jsx(ClockMeridiemText,{variant:"caption",className:W.meridiemText,children:formatMeridiem(Y,"am")})}),jsxRuntimeExports.jsx(ClockPmButton,{disabled:I||T===null,onClick:N?void 0:()=>S("pm"),ownerState:j,className:W.pmButton,title:formatMeridiem(Y,"pm"),children:jsxRuntimeExports.jsx(ClockMeridiemText,{variant:"caption",className:W.meridiemText,children:formatMeridiem(Y,"pm")})})]})]})}function getClockNumberUtilityClass(d){return generateUtilityClass("MuiClockNumber",d)}const clockNumberClasses=generateUtilityClasses("MuiClockNumber",["root","selected","disabled"]),_excluded$s=["className","disabled","index","inner","label","selected"],useUtilityClasses$m=d=>{const{classes:m,selected:g,disabled:x}=d;return composeClasses({root:["root",g&&"selected",x&&"disabled"]},getClockNumberUtilityClass,m)},ClockNumberRoot=styled("span",{name:"MuiClockNumber",slot:"Root",overridesResolver:(d,m)=>[m.root,{[`&.${clockNumberClasses.disabled}`]:m.disabled},{[`&.${clockNumberClasses.selected}`]:m.selected}]})(({theme:d,ownerState:m})=>_extends$1({height:CLOCK_HOUR_WIDTH,width:CLOCK_HOUR_WIDTH,position:"absolute",left:`calc((100% - ${CLOCK_HOUR_WIDTH}px) / 2)`,display:"inline-flex",justifyContent:"center",alignItems:"center",borderRadius:"50%",color:(d.vars||d).palette.text.primary,fontFamily:d.typography.fontFamily,"&:focused":{backgroundColor:(d.vars||d).palette.background.paper},[`&.${clockNumberClasses.selected}`]:{color:(d.vars||d).palette.primary.contrastText},[`&.${clockNumberClasses.disabled}`]:{pointerEvents:"none",color:(d.vars||d).palette.text.disabled}},m.inner&&_extends$1({},d.typography.body2,{color:(d.vars||d).palette.text.secondary})));function ClockNumber(d){const m=useThemeProps({props:d,name:"MuiClockNumber"}),{className:g,disabled:x,index:b,inner:E,label:v,selected:S}=m,C=_objectWithoutPropertiesLoose(m,_excluded$s),T=m,R=useUtilityClasses$m(T),k=b%12/12*Math.PI*2-Math.PI/2,L=(CLOCK_WIDTH-CLOCK_HOUR_WIDTH-2)/2*(E?.65:1),D=Math.round(Math.cos(k)*L),A=Math.round(Math.sin(k)*L);return jsxRuntimeExports.jsx(ClockNumberRoot,_extends$1({className:clsx(g,R.root),"aria-disabled":x?!0:void 0,"aria-selected":S?!0:void 0,role:"option",style:{transform:`translate(${D}px, ${A+(CLOCK_WIDTH-CLOCK_HOUR_WIDTH)/2}px`},ownerState:T},C,{children:v}))}const getHourNumbers=({ampm:d,value:m,getClockNumberText:g,isDisabled:x,selectedId:b,utils:E})=>{const v=m?E.getHours(m):null,S=[],C=d?1:0,T=d?12:23,R=k=>v===null?!1:d?k===12?v===12||v===0:v===k||v-12===k:v===k;for(let k=C;k<=T;k+=1){let L=k.toString();k===0&&(L="00");const D=!d&&(k===0||k>12);L=E.formatNumber(L);const A=R(k);S.push(jsxRuntimeExports.jsx(ClockNumber,{id:A?b:void 0,index:k,inner:D,selected:A,disabled:x(k),label:L,"aria-label":g(L)},k))}return S},getMinutesNumbers=({utils:d,value:m,isDisabled:g,getClockNumberText:x,selectedId:b})=>{const E=d.formatNumber;return[[5,E("05")],[10,E("10")],[15,E("15")],[20,E("20")],[25,E("25")],[30,E("30")],[35,E("35")],[40,E("40")],[45,E("45")],[50,E("50")],[55,E("55")],[0,E("00")]].map(([v,S],C)=>{const T=v===m;return jsxRuntimeExports.jsx(ClockNumber,{label:S,id:T?b:void 0,index:C+1,inner:!1,disabled:g(v),selected:T,"aria-label":x(S)},v)})},useValueWithTimezone=({timezone:d,value:m,defaultValue:g,onChange:x,valueManager:b})=>{var E,v;const S=useUtils(),C=reactExports.useRef(g),T=(E=m!=null?m:C.current)!=null?E:b.emptyValue,R=reactExports.useMemo(()=>b.getTimezone(S,T),[S,b,T]),k=useEventCallback(I=>R==null?I:b.setTimezone(S,R,I)),L=(v=d!=null?d:R)!=null?v:"default",D=reactExports.useMemo(()=>b.setTimezone(S,L,T),[b,S,L,T]),A=useEventCallback((I,...N)=>{const z=k(I);x==null||x(z,...N)});return{value:D,handleValueChange:A,timezone:L}},useControlledValueWithTimezone=({name:d,timezone:m,value:g,defaultValue:x,onChange:b,valueManager:E})=>{const[v,S]=useControlled({name:d,state:"value",controlled:g,default:x!=null?x:E.emptyValue}),C=useEventCallback((T,...R)=>{S(T),b==null||b(T,...R)});return useValueWithTimezone({timezone:m,value:v,defaultValue:void 0,onChange:C,valueManager:E})},SECTION_TYPE_GRANULARITY={year:1,month:2,day:3,hours:4,minutes:5,seconds:6,milliseconds:7},getSectionTypeGranularity=d=>Math.max(...d.map(m=>{var g;return(g=SECTION_TYPE_GRANULARITY[m.type])!=null?g:1})),roundDate=(d,m,g)=>{if(m===SECTION_TYPE_GRANULARITY.year)return d.startOfYear(g);if(m===SECTION_TYPE_GRANULARITY.month)return d.startOfMonth(g);if(m===SECTION_TYPE_GRANULARITY.day)return d.startOfDay(g);let x=g;return m<SECTION_TYPE_GRANULARITY.minutes&&(x=d.setMinutes(x,0)),m<SECTION_TYPE_GRANULARITY.seconds&&(x=d.setSeconds(x,0)),m<SECTION_TYPE_GRANULARITY.milliseconds&&(x=d.setMilliseconds(x,0)),x},getDefaultReferenceDate=({props:d,utils:m,granularity:g,timezone:x,getTodayDate:b})=>{var E;let v=b?b():roundDate(m,g,getTodayDate(m,x));d.minDate!=null&&m.isAfterDay(d.minDate,v)&&(v=roundDate(m,g,d.minDate)),d.maxDate!=null&&m.isBeforeDay(d.maxDate,v)&&(v=roundDate(m,g,d.maxDate));const S=createIsAfterIgnoreDatePart((E=d.disableIgnoringDatePartForTimeValidation)!=null?E:!1,m);return d.minTime!=null&&S(d.minTime,v)&&(v=roundDate(m,g,d.disableIgnoringDatePartForTimeValidation?d.minTime:mergeDateAndTime(m,v,d.minTime))),d.maxTime!=null&&S(v,d.maxTime)&&(v=roundDate(m,g,d.disableIgnoringDatePartForTimeValidation?d.maxTime:mergeDateAndTime(m,v,d.maxTime))),v},getDateSectionConfigFromFormatToken=(d,m)=>{const g=d.formatTokenMap[m];if(g==null)throw new Error([`MUI: The token "${m}" is not supported by the Date and Time Pickers.`,"Please try using another token or open an issue on https://github.com/mui/mui-x/issues/new/choose if you think it should be supported."].join(`
620
620
  `));return typeof g=="string"?{type:g,contentType:g==="meridiem"?"letter":"digit",maxLength:void 0}:{type:g.sectionType,contentType:g.contentType,maxLength:g.maxLength}},getDeltaFromKeyCode=d=>{switch(d){case"ArrowUp":return 1;case"ArrowDown":return-1;case"PageUp":return 5;case"PageDown":return-5;default:return 0}},getDaysInWeekStr=(d,m,g)=>{const x=[],b=d.dateWithTimezone(void 0,m),E=d.startOfWeek(b),v=d.endOfWeek(b);let S=E;for(;d.isBefore(S,v);)x.push(S),S=d.addDays(S,1);return x.map(C=>d.formatByString(C,g))},getLetterEditingOptions=(d,m,g,x)=>{switch(g){case"month":return getMonthsInYear(d,d.dateWithTimezone(void 0,m)).map(b=>d.formatByString(b,x));case"weekDay":return getDaysInWeekStr(d,m,x);case"meridiem":{const b=d.dateWithTimezone(void 0,m);return[d.startOfDay(b),d.endOfDay(b)].map(E=>d.formatByString(E,x))}default:return[]}},cleanLeadingZeros=(d,m,g)=>{let x=m;for(x=Number(x).toString();x.length<g;)x=`0${x}`;return x},cleanDigitSectionValue=(d,m,g,x,b)=>{if(b.type==="day"&&b.contentType==="digit-with-letter"){const v=d.setDate(x.longestMonth,g);return d.formatByString(v,b.format)}const E=g.toString();return b.hasLeadingZerosInInput?cleanLeadingZeros(d,E,b.maxLength):E},adjustSectionValue=(d,m,g,x,b,E,v)=>{const S=getDeltaFromKeyCode(x),C=x==="Home",T=x==="End",R=g.value===""||C||T,k=()=>{const D=b[g.type]({currentDate:E,format:g.format,contentType:g.contentType}),A=j=>cleanDigitSectionValue(d,m,j,D,g),I=g.type==="minutes"&&v!=null&&v.minutesStep?v.minutesStep:1;let z=parseInt(g.value,10)+S*I;if(R){if(g.type==="year"&&!T&&!C)return d.formatByString(d.dateWithTimezone(void 0,m),g.format);S>0||C?z=D.minimum:z=D.maximum}return z%I!==0&&((S<0||C)&&(z+=I-(I+z)%I),(S>0||T)&&(z-=z%I)),z>D.maximum?A(D.minimum+(z-D.maximum-1)%(D.maximum-D.minimum+1)):z<D.minimum?A(D.maximum-(D.minimum-z-1)%(D.maximum-D.minimum+1)):A(z)},L=()=>{const D=getLetterEditingOptions(d,m,g.type,g.format);if(D.length===0)return g.value;if(R)return S>0||C?D[0]:D[D.length-1];const I=(D.indexOf(g.value)+D.length+S)%D.length;return D[I]};return g.contentType==="digit"||g.contentType==="digit-with-letter"?k():L()},getSectionVisibleValue=(d,m)=>{let g=d.value||d.placeholder;const x=m==="non-input"?d.hasLeadingZerosInFormat:d.hasLeadingZerosInInput;return m==="non-input"&&d.hasLeadingZerosInInput&&!d.hasLeadingZerosInFormat&&(g=Number(g).toString()),["input-rtl","input-ltr"].includes(m)&&d.contentType==="digit"&&!x&&g.length===1&&(g=`${g}‎`),m==="input-rtl"&&(g=`⁨${g}⁩`),g},cleanString=d=>d.replace(/[\u2066\u2067\u2068\u2069]/g,""),addPositionPropertiesToSections=(d,m)=>{let g=0,x=m?1:0;const b=[];for(let E=0;E<d.length;E+=1){const v=d[E],S=getSectionVisibleValue(v,m?"input-rtl":"input-ltr"),C=`${v.startSeparator}${S}${v.endSeparator}`,T=cleanString(C).length,R=C.length,k=cleanString(S),L=x+S.indexOf(k[0])+v.startSeparator.length,D=L+k.length;b.push(_extends$1({},v,{start:g,end:g+T,startInInput:L,endInInput:D})),g+=T,x+=R}return b},getSectionPlaceholder=(d,m,g,x,b)=>{switch(x.type){case"year":return g.fieldYearPlaceholder({digitAmount:d.formatByString(d.dateWithTimezone(void 0,m),b).length,format:b});case"month":return g.fieldMonthPlaceholder({contentType:x.contentType,format:b});case"day":return g.fieldDayPlaceholder({format:b});case"weekDay":return g.fieldWeekDayPlaceholder({contentType:x.contentType,format:b});case"hours":return g.fieldHoursPlaceholder({format:b});case"minutes":return g.fieldMinutesPlaceholder({format:b});case"seconds":return g.fieldSecondsPlaceholder({format:b});case"meridiem":return g.fieldMeridiemPlaceholder({format:b});default:return b}},changeSectionValueFormat=(d,m,g,x)=>d.formatByString(d.parse(m,g),x),isFourDigitYearFormat=(d,m,g)=>d.formatByString(d.dateWithTimezone(void 0,m),g).length===4,doesSectionFormatHaveLeadingZeros=(d,m,g,x,b)=>{if(g!=="digit")return!1;const E=d.dateWithTimezone(void 0,m);switch(x){case"year":return isFourDigitYearFormat(d,m,b)?d.formatByString(d.setYear(E,1),b)==="0001":d.formatByString(d.setYear(E,2001),b)==="01";case"month":return d.formatByString(d.startOfYear(E),b).length>1;case"day":return d.formatByString(d.startOfMonth(E),b).length>1;case"weekDay":return d.formatByString(d.startOfWeek(E),b).length>1;case"hours":return d.formatByString(d.setHours(E,1),b).length>1;case"minutes":return d.formatByString(d.setMinutes(E,1),b).length>1;case"seconds":return d.formatByString(d.setSeconds(E,1),b).length>1;default:throw new Error("Invalid section type")}},getEscapedPartsFromFormat=(d,m)=>{const g=[],{start:x,end:b}=d.escapedCharacters,E=new RegExp(`(\\${x}[^\\${b}]*\\${b})+`,"g");let v=null;for(;v=E.exec(m);)g.push({start:v.index,end:E.lastIndex-1});return g},splitFormatIntoSections=(d,m,g,x,b,E,v,S)=>{let C="";const T=[],R=d.date(),k=Y=>{if(Y==="")return null;const B=getDateSectionConfigFromFormatToken(d,Y),U=doesSectionFormatHaveLeadingZeros(d,m,B.contentType,B.type,Y),W=v?U:B.contentType==="digit",V=b!=null&&d.isValid(b);let J=V?d.formatByString(b,Y):"",Q=null;if(W)if(U)Q=J===""?d.formatByString(R,Y).length:J.length;else{if(B.maxLength==null)throw new Error(`MUI: The token ${Y} should have a 'maxDigitNumber' property on it's adapter`);Q=B.maxLength,V&&(J=cleanLeadingZeros(d,J,Q))}return T.push(_extends$1({},B,{format:Y,maxLength:Q,value:J,placeholder:getSectionPlaceholder(d,m,g,B,Y),hasLeadingZeros:U,hasLeadingZerosInFormat:U,hasLeadingZerosInInput:W,startSeparator:T.length===0?C:"",endSeparator:"",modified:!1})),null};let L=10,D=x,A=d.expandFormat(x);for(;A!==D;)if(D=A,A=d.expandFormat(D),L-=1,L<0)throw new Error("MUI: The format expansion seems to be enter in an infinite loop. Please open an issue with the format passed to the picker component");const I=A,N=getEscapedPartsFromFormat(d,I),z=new RegExp(`^(${Object.keys(d.formatTokenMap).sort((Y,B)=>B.length-Y.length).join("|")})`,"g");let j="";for(let Y=0;Y<I.length;Y+=1){const B=N.find(Q=>Q.start<=Y&&Q.end>=Y),U=I[Y],W=B!=null,V=`${j}${I.slice(Y)}`,J=z.test(V);!W&&U.match(/([A-Za-z]+)/)&&J?(j=V.slice(0,z.lastIndex),Y+=z.lastIndex-1):W&&(B==null?void 0:B.start)===Y||(B==null?void 0:B.end)===Y||(k(j),j="",T.length===0?C+=U:T[T.length-1].endSeparator+=U)}return k(j),T.map(Y=>{const B=U=>{let W=U;return S&&W!==null&&W.includes(" ")&&(W=`⁩${W}⁦`),E==="spacious"&&["/",".","-"].includes(W)&&(W=` ${W} `),W};return Y.startSeparator=B(Y.startSeparator),Y.endSeparator=B(Y.endSeparator),Y})},getDateFromDateSections=(d,m)=>{const g=m.some(S=>S.type==="day"),x=[],b=[];for(let S=0;S<m.length;S+=1){const C=m[S];g&&C.type==="weekDay"||(x.push(C.format),b.push(getSectionVisibleValue(C,"non-input")))}const E=x.join(" "),v=b.join(" ");return d.parse(v,E)},createDateStrForInputFromSections=(d,m)=>{const x=d.map(b=>{const E=getSectionVisibleValue(b,m?"input-rtl":"input-ltr");return`${b.startSeparator}${E}${b.endSeparator}`}).join("");return m?`⁦${x}⁩`:x},getSectionsBoundaries=(d,m)=>{const g=d.dateWithTimezone(void 0,m),x=d.endOfYear(g),b=d.endOfDay(g),{maxDaysInMonth:E,longestMonth:v}=getMonthsInYear(d,g).reduce((S,C)=>{const T=d.getDaysInMonth(C);return T>S.maxDaysInMonth?{maxDaysInMonth:T,longestMonth:C}:S},{maxDaysInMonth:0,longestMonth:null});return{year:({format:S})=>({minimum:0,maximum:isFourDigitYearFormat(d,m,S)?9999:99}),month:()=>({minimum:1,maximum:d.getMonth(x)+1}),day:({currentDate:S})=>({minimum:1,maximum:S!=null&&d.isValid(S)?d.getDaysInMonth(S):E,longestMonth:v}),weekDay:({format:S,contentType:C})=>{if(C==="digit"){const T=getDaysInWeekStr(d,m,S).map(Number);return{minimum:Math.min(...T),maximum:Math.max(...T)}}return{minimum:1,maximum:7}},hours:({format:S})=>{const C=d.getHours(b);return d.formatByString(d.endOfDay(g),S)!==C.toString()?{minimum:1,maximum:Number(d.formatByString(d.startOfDay(g),S))}:{minimum:0,maximum:C}},minutes:()=>({minimum:0,maximum:d.getMinutes(b)}),seconds:()=>({minimum:0,maximum:d.getSeconds(b)}),meridiem:()=>({minimum:0,maximum:0})}},transferDateSectionValue=(d,m,g,x,b)=>{switch(g.type){case"year":return d.setYear(b,d.getYear(x));case"month":return d.setMonth(b,d.getMonth(x));case"weekDay":{const E=getDaysInWeekStr(d,m,g.format),v=d.formatByString(x,g.format),S=E.indexOf(v),T=E.indexOf(g.value)-S;return d.addDays(x,T)}case"day":return d.setDate(b,d.getDate(x));case"meridiem":{const E=d.getHours(x)<12,v=d.getHours(b);return E&&v>=12?d.addHours(b,-12):!E&&v<12?d.addHours(b,12):b}case"hours":return d.setHours(b,d.getHours(x));case"minutes":return d.setMinutes(b,d.getMinutes(x));case"seconds":return d.setSeconds(b,d.getSeconds(x));default:return b}},reliableSectionModificationOrder={year:1,month:2,day:3,weekDay:4,hours:5,minutes:6,seconds:7,meridiem:8},mergeDateIntoReferenceDate=(d,m,g,x,b,E)=>[...x].sort((v,S)=>reliableSectionModificationOrder[v.type]-reliableSectionModificationOrder[S.type]).reduce((v,S)=>!E||S.modified?transferDateSectionValue(d,m,S,g,v):v,b),isAndroid=()=>navigator.userAgent.toLowerCase().indexOf("android")>-1,getSectionOrder=(d,m)=>{const g={};if(!m)return d.forEach((C,T)=>{const R=T===0?null:T-1,k=T===d.length-1?null:T+1;g[T]={leftIndex:R,rightIndex:k}}),{neighbors:g,startIndex:0,endIndex:d.length-1};const x={},b={};let E=0,v=0,S=d.length-1;for(;S>=0;){v=d.findIndex((C,T)=>{var R;return T>=E&&((R=C.endSeparator)==null?void 0:R.includes(" "))&&C.endSeparator!==" / "}),v===-1&&(v=d.length-1);for(let C=v;C>=E;C-=1)b[C]=S,x[S]=C,S-=1;E=v+1}return d.forEach((C,T)=>{const R=b[T],k=R===0?null:x[R-1],L=R===d.length-1?null:x[R+1];g[T]={leftIndex:k,rightIndex:L}}),{neighbors:g,startIndex:x[0],endIndex:x[d.length-1]}},_excluded$r=["value","referenceDate"],singleItemValueManager={emptyValue:null,getTodayValue:getTodayDate,getInitialReferenceValue:d=>{let{value:m,referenceDate:g}=d,x=_objectWithoutPropertiesLoose(d,_excluded$r);return m!=null&&x.utils.isValid(m)?m:g!=null?g:getDefaultReferenceDate(x)},cleanValue:replaceInvalidDateByNull,areValuesEqual:areDatesEqual,isSameError:(d,m)=>d===m,hasError:d=>d!=null,defaultErrorState:null,getTimezone:(d,m)=>m==null||!d.isValid(m)?null:d.getTimezone(m),setTimezone:(d,m,g)=>g==null?null:d.setTimezone(g,m)},singleItemFieldValueManager={updateReferenceValue:(d,m,g)=>m==null||!d.isValid(m)?g:m,getSectionsFromValue:(d,m,g,x,b)=>!d.isValid(m)&&!!g?g:addPositionPropertiesToSections(b(m),x),getValueStrFromSections:createDateStrForInputFromSections,getActiveDateManager:(d,m)=>({date:m.value,referenceDate:m.referenceValue,getSections:g=>g,getNewValuesFromNewActiveDate:g=>({value:g,referenceValue:g==null||!d.isValid(g)?m.referenceValue:g})}),parseValueStr:(d,m,g)=>g(d.trim(),m)},uncapitalizeObjectKeys=d=>{if(d!==void 0)return Object.keys(d).reduce((m,g)=>_extends$1({},m,{[`${g.slice(0,1).toLowerCase()}${g.slice(1)}`]:d[g]}),{})},useClockReferenceDate=({value:d,referenceDate:m,utils:g,props:x,timezone:b})=>{const E=reactExports.useMemo(()=>singleItemValueManager.getInitialReferenceValue({value:d,utils:g,props:x,referenceDate:m,granularity:SECTION_TYPE_GRANULARITY.day,timezone:b,getTodayDate:()=>getTodayDate(g,b,"date")}),[]);return d!=null?d:E},_excluded$q=["ampm","ampmInClock","autoFocus","components","componentsProps","slots","slotProps","value","defaultValue","referenceDate","disableIgnoringDatePartForTimeValidation","maxTime","minTime","disableFuture","disablePast","minutesStep","shouldDisableClock","shouldDisableTime","showViewSwitcher","onChange","view","views","openTo","onViewChange","focusedView","onFocusedViewChange","className","disabled","readOnly","timezone"],useUtilityClasses$l=d=>{const{classes:m}=d;return composeClasses({root:["root"],arrowSwitcher:["arrowSwitcher"]},getTimeClockUtilityClass,m)},TimeClockRoot=styled(PickerViewRoot,{name:"MuiTimeClock",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"flex",flexDirection:"column",position:"relative"}),TimeClockArrowSwitcher=styled(PickersArrowSwitcher,{name:"MuiTimeClock",slot:"ArrowSwitcher",overridesResolver:(d,m)=>m.arrowSwitcher})({position:"absolute",right:12,top:15}),TIME_CLOCK_DEFAULT_VIEWS=["hours","minutes"],TimeClock=reactExports.forwardRef(function(m,g){const x=useUtils(),b=useThemeProps({props:m,name:"MuiTimeClock"}),{ampm:E=x.is12HourCycleInCurrentLocale(),ampmInClock:v=!1,autoFocus:S,components:C,componentsProps:T,slots:R,slotProps:k,value:L,defaultValue:D,referenceDate:A,disableIgnoringDatePartForTimeValidation:I=!1,maxTime:N,minTime:z,disableFuture:j,disablePast:Y,minutesStep:B=1,shouldDisableClock:U,shouldDisableTime:W,showViewSwitcher:V,onChange:J,view:Q,views:X=TIME_CLOCK_DEFAULT_VIEWS,openTo:re,onViewChange:ie,focusedView:oe,onFocusedViewChange:Z,className:ee,disabled:ce,readOnly:fe,timezone:ae}=b,ue=_objectWithoutPropertiesLoose(b,_excluded$q),pe=R!=null?R:uncapitalizeObjectKeys(C),ge=k!=null?k:T,{value:ye,handleValueChange:Ee,timezone:ve}=useControlledValueWithTimezone({name:"TimeClock",timezone:ae,value:L,defaultValue:D,onChange:J,valueManager:singleItemValueManager}),Se=useClockReferenceDate({value:ye,referenceDate:A,utils:x,props:b,timezone:ve}),$e=useLocaleText(),Me=useNow(ve),{view:Re,setView:De,previousView:Be,nextView:Le,setValueAndGoToNextView:Ge}=useViews({view:Q,views:X,openTo:re,onViewChange:ie,onChange:Ee,focusedView:oe,onFocusedViewChange:Z}),{meridiemMode:Ie,handleMeridiemChange:Ye}=useMeridiemMode(Se,E,Ge),He=reactExports.useCallback((ke,Ne)=>{const Ke=createIsAfterIgnoreDatePart(I,x),Xe=Ne==="hours"||Ne==="minutes"&&X.includes("seconds"),st=({start:Je,end:gt})=>!(z&&Ke(z,gt)||N&&Ke(Je,N)||j&&Ke(Je,Me)||Y&&Ke(Me,Xe?gt:Je)),xt=(Je,gt=1)=>{if(Je%gt!==0||U!=null&&U(Je,Ne))return!1;if(W)switch(Ne){case"hours":return!W(x.setHours(Se,Je),"hours");case"minutes":return!W(x.setMinutes(Se,Je),"minutes");case"seconds":return!W(x.setSeconds(Se,Je),"seconds");default:return!1}return!0};switch(Ne){case"hours":{const Je=convertValueToMeridiem(ke,Ie,E),gt=x.setHours(Se,Je),Ct=x.setSeconds(x.setMinutes(gt,0),0),dt=x.setSeconds(x.setMinutes(gt,59),59);return!st({start:Ct,end:dt})||!xt(Je)}case"minutes":{const Je=x.setMinutes(Se,ke),gt=x.setSeconds(Je,0),Ct=x.setSeconds(Je,59);return!st({start:gt,end:Ct})||!xt(ke,B)}case"seconds":{const Je=x.setSeconds(Se,ke);return!st({start:Je,end:Je})||!xt(ke)}default:throw new Error("not supported")}},[E,Se,I,N,Ie,z,B,U,W,x,j,Y,Me,X]),Ve=useId(),rt=reactExports.useMemo(()=>{switch(Re){case"hours":return{onChange:(Ne,Ke)=>{const Xe=convertValueToMeridiem(Ne,Ie,E);Ge(x.setHours(Se,Xe),Ke)},viewValue:x.getHours(Se),children:getHourNumbers({value:ye,utils:x,ampm:E,getClockNumberText:$e.hoursClockNumberText,isDisabled:Ne=>ce||He(Ne,"hours"),selectedId:Ve})};case"minutes":{const ke=x.getMinutes(Se);return{viewValue:ke,onChange:(Ke,Xe)=>{Ge(x.setMinutes(Se,Ke),Xe)},children:getMinutesNumbers({utils:x,value:ke,getClockNumberText:$e.minutesClockNumberText,isDisabled:Ke=>ce||He(Ke,"minutes"),selectedId:Ve})}}case"seconds":{const ke=x.getSeconds(Se);return{viewValue:ke,onChange:(Ke,Xe)=>{Ge(x.setSeconds(Se,Ke),Xe)},children:getMinutesNumbers({utils:x,value:ke,getClockNumberText:$e.secondsClockNumberText,isDisabled:Ke=>ce||He(Ke,"seconds"),selectedId:Ve})}}default:throw new Error("You must provide the type for ClockView")}},[Re,x,ye,E,$e.hoursClockNumberText,$e.minutesClockNumberText,$e.secondsClockNumberText,Ie,Ge,Se,He,Ve,ce]),Oe=b,ot=useUtilityClasses$l(Oe);return jsxRuntimeExports.jsxs(TimeClockRoot,_extends$1({ref:g,className:clsx(ot.root,ee),ownerState:Oe},ue,{children:[jsxRuntimeExports.jsx(Clock,_extends$1({autoFocus:S!=null?S:!!oe,ampmInClock:v&&X.includes("hours"),value:ye,type:Re,ampm:E,minutesStep:B,isTimeDisabled:He,meridiemMode:Ie,handleMeridiemChange:Ye,selectedId:Ve,disabled:ce,readOnly:fe},rt)),V&&jsxRuntimeExports.jsx(TimeClockArrowSwitcher,{className:ot.arrowSwitcher,slots:pe,slotProps:ge,onGoToPrevious:()=>De(Be),isPreviousDisabled:!Be,previousLabel:$e.openPreviousView,onGoToNext:()=>De(Le),isNextDisabled:!Le,nextLabel:$e.openNextView,ownerState:Oe})]}))});function getDigitalClockUtilityClass(d){return generateUtilityClass("MuiDigitalClock",d)}const digitalClockClasses=generateUtilityClasses("MuiDigitalClock",["root","list","item"]),_excluded$p=["ampm","timeStep","autoFocus","components","componentsProps","slots","slotProps","value","defaultValue","referenceDate","disableIgnoringDatePartForTimeValidation","maxTime","minTime","disableFuture","disablePast","minutesStep","shouldDisableClock","shouldDisableTime","onChange","view","openTo","onViewChange","focusedView","onFocusedViewChange","className","disabled","readOnly","views","skipDisabled","timezone"],useUtilityClasses$k=d=>{const{classes:m}=d;return composeClasses({root:["root"],list:["list"],item:["item"]},getDigitalClockUtilityClass,m)},DigitalClockRoot=styled(PickerViewRoot,{name:"MuiDigitalClock",slot:"Root",overridesResolver:(d,m)=>m.root})(({ownerState:d})=>({overflowY:"auto",width:"100%","@media (prefers-reduced-motion: no-preference)":{scrollBehavior:d.alreadyRendered?"smooth":"auto"},maxHeight:DIGITAL_CLOCK_VIEW_HEIGHT})),DigitalClockList=styled(MenuList,{name:"MuiDigitalClock",slot:"List",overridesResolver:(d,m)=>m.list})({padding:0}),DigitalClockItem=styled(MenuItem,{name:"MuiDigitalClock",slot:"Item",overridesResolver:(d,m)=>m.item})(({theme:d})=>({padding:"8px 16px",margin:"2px 4px","&:first-of-type":{marginTop:4},"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.hoverOpacity})`:alpha(d.palette.primary.main,d.palette.action.hoverOpacity)},"&.Mui-selected":{backgroundColor:(d.vars||d).palette.primary.main,color:(d.vars||d).palette.primary.contrastText,"&:focus-visible, &:hover":{backgroundColor:(d.vars||d).palette.primary.dark}},"&.Mui-focusVisible":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.focusOpacity})`:alpha(d.palette.primary.main,d.palette.action.focusOpacity)}})),DigitalClock=reactExports.forwardRef(function(m,g){var x,b,E;const v=useUtils(),S=reactExports.useRef(null),C=useForkRef(g,S),T=useThemeProps({props:m,name:"MuiDigitalClock"}),{ampm:R=v.is12HourCycleInCurrentLocale(),timeStep:k=30,autoFocus:L,components:D,componentsProps:A,slots:I,slotProps:N,value:z,defaultValue:j,referenceDate:Y,disableIgnoringDatePartForTimeValidation:B=!1,maxTime:U,minTime:W,disableFuture:V,disablePast:J,minutesStep:Q=1,shouldDisableClock:X,shouldDisableTime:re,onChange:ie,view:oe,openTo:Z,onViewChange:ee,focusedView:ce,onFocusedViewChange:fe,className:ae,disabled:ue,readOnly:pe,views:ge=["hours"],skipDisabled:ye=!1,timezone:Ee}=T,ve=_objectWithoutPropertiesLoose(T,_excluded$p),{value:Se,handleValueChange:$e,timezone:Me}=useControlledValueWithTimezone({name:"DigitalClock",timezone:Ee,value:z,defaultValue:j,onChange:ie,valueManager:singleItemValueManager}),Re=useLocaleText(),De=useNow(Me),Be=reactExports.useMemo(()=>_extends$1({},T,{alreadyRendered:!!S.current}),[T]),Le=useUtilityClasses$k(Be),Ge=(x=(b=I==null?void 0:I.digitalClockItem)!=null?b:D==null?void 0:D.DigitalClockItem)!=null?x:DigitalClockItem,Ie=useSlotProps({elementType:Ge,externalSlotProps:(E=N==null?void 0:N.digitalClockItem)!=null?E:A==null?void 0:A.digitalClockItem,ownerState:{},className:Le.item}),Ye=useClockReferenceDate({value:Se,referenceDate:Y,utils:v,props:T,timezone:Me}),He=useEventCallback(ke=>$e(ke,"finish","hours")),{setValueAndGoToNextView:Ve}=useViews({view:oe,views:ge,openTo:Z,onViewChange:ee,onChange:He,focusedView:ce,onFocusedViewChange:fe}),rt=useEventCallback(ke=>{Ve(ke,"finish")});reactExports.useEffect(()=>{if(S.current===null)return;const ke=S.current.querySelector('[role="listbox"] [role="option"][aria-selected="true"]');if(!ke)return;const Ne=ke.offsetTop;S.current.scrollTop=Ne-4});const Oe=reactExports.useCallback(ke=>{const Ne=createIsAfterIgnoreDatePart(B,v),Ke=()=>!(W&&Ne(W,ke)||U&&Ne(ke,U)||V&&Ne(ke,De)||J&&Ne(De,ke)),Xe=()=>v.getMinutes(ke)%Q!==0||X!=null&&X(v.toJsDate(ke).getTime(),"hours")?!1:re?!re(ke,"hours"):!0;return!Ke()||!Xe()},[B,v,W,U,V,De,J,Q,X,re]),ot=reactExports.useMemo(()=>{const ke=v.startOfDay(Ye);return[ke,...Array.from({length:Math.ceil(24*60/k)-1},(Ne,Ke)=>v.addMinutes(ke,k*(Ke+1)))]},[Ye,k,v]);return jsxRuntimeExports.jsx(DigitalClockRoot,_extends$1({ref:C,className:clsx(Le.root,ae),ownerState:Be},ve,{children:jsxRuntimeExports.jsx(DigitalClockList,{autoFocusItem:L||!!ce,role:"listbox","aria-label":Re.timePickerToolbarTitle,className:Le.list,children:ot.map(ke=>{if(ye&&Oe(ke))return null;const Ne=v.isEqual(ke,Se);return jsxRuntimeExports.jsx(Ge,_extends$1({onClick:()=>!pe&&rt(ke),selected:Ne,disabled:ue||Oe(ke),disableRipple:pe,role:"option","aria-disabled":pe,"aria-selected":Ne},Ie,{children:v.format(ke,R?"fullTime12h":"fullTime24h")}),v.toISO(ke))})})}))});function getMultiSectionDigitalClockUtilityClass(d){return generateUtilityClass("MuiMultiSectionDigitalClock",d)}generateUtilityClasses("MuiMultiSectionDigitalClock",["root"]);function getMultiSectionDigitalClockSectionUtilityClass(d){return generateUtilityClass("MuiMultiSectionDigitalClockSection",d)}const multiSectionDigitalClockSectionClasses=generateUtilityClasses("MuiMultiSectionDigitalClockSection",["root","item"]),_excluded$o=["autoFocus","onChange","className","disabled","readOnly","items","active","slots","slotProps","skipDisabled"],useUtilityClasses$j=d=>{const{classes:m}=d;return composeClasses({root:["root"],item:["item"]},getMultiSectionDigitalClockSectionUtilityClass,m)},MultiSectionDigitalClockSectionRoot=styled(MenuList,{name:"MuiMultiSectionDigitalClockSection",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d,ownerState:m})=>({maxHeight:DIGITAL_CLOCK_VIEW_HEIGHT,width:56,padding:0,overflow:"hidden","@media (prefers-reduced-motion: no-preference)":{scrollBehavior:m.alreadyRendered?"smooth":"auto"},"@media (pointer: fine)":{"&:hover":{overflowY:"auto"}},"@media (pointer: none), (pointer: coarse)":{overflowY:"auto"},"&:not(:first-of-type)":{borderLeft:`1px solid ${(d.vars||d).palette.divider}`},"&:after":{display:"block",content:'""',height:"calc(100% - 40px - 6px)"}})),MultiSectionDigitalClockSectionItem=styled(MenuItem,{name:"MuiMultiSectionDigitalClockSection",slot:"Item",overridesResolver:(d,m)=>m.item})(({theme:d})=>({padding:8,margin:"2px 4px",width:MULTI_SECTION_CLOCK_SECTION_WIDTH,justifyContent:"center","&:first-of-type":{marginTop:4},"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.hoverOpacity})`:alpha(d.palette.primary.main,d.palette.action.hoverOpacity)},"&.Mui-selected":{backgroundColor:(d.vars||d).palette.primary.main,color:(d.vars||d).palette.primary.contrastText,"&:focus-visible, &:hover":{backgroundColor:(d.vars||d).palette.primary.dark}},"&.Mui-focusVisible":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.focusOpacity})`:alpha(d.palette.primary.main,d.palette.action.focusOpacity)}})),MultiSectionDigitalClockSection=reactExports.forwardRef(function(m,g){var x;const b=reactExports.useRef(null),E=useForkRef(g,b),v=reactExports.useRef(null),S=useThemeProps({props:m,name:"MuiMultiSectionDigitalClockSection"}),{autoFocus:C,onChange:T,className:R,disabled:k,readOnly:L,items:D,active:A,slots:I,slotProps:N,skipDisabled:z}=S,j=_objectWithoutPropertiesLoose(S,_excluded$o),Y=reactExports.useMemo(()=>_extends$1({},S,{alreadyRendered:!!b.current}),[S]),B=useUtilityClasses$j(Y),U=(x=I==null?void 0:I.digitalClockSectionItem)!=null?x:MultiSectionDigitalClockSectionItem;return reactExports.useEffect(()=>{if(b.current===null)return;const W=b.current.querySelector('[role="option"][aria-selected="true"]');if(A&&C&&W&&W.focus(),!W||v.current===W)return;v.current=W;const V=W.offsetTop;b.current.scrollTop=V-4}),jsxRuntimeExports.jsx(MultiSectionDigitalClockSectionRoot,_extends$1({ref:E,className:clsx(B.root,R),ownerState:Y,autoFocusItem:C&&A,role:"listbox"},j,{children:D.map(W=>{var V,J;if(z&&(V=W.isDisabled)!=null&&V.call(W,W.value))return null;const Q=W.isSelected(W.value);return jsxRuntimeExports.jsx(U,_extends$1({onClick:()=>!L&&T(W.value),selected:Q,disabled:k||((J=W.isDisabled)==null?void 0:J.call(W,W.value)),disableRipple:L,role:"option","aria-disabled":L,"aria-label":W.ariaLabel,"aria-selected":Q,className:B.item},N==null?void 0:N.digitalClockSectionItem,{children:W.label}),W.label)})}))}),getHourSectionOptions=({now:d,value:m,utils:g,ampm:x,isDisabled:b,resolveAriaLabel:E,timeStep:v})=>{const S=m?g.getHours(m):null,C=[],T=k=>S===null?!1:x?k===12?S===12||S===0:S===k||S-12===k:S===k,R=x?11:23;for(let k=0;k<=R;k+=v){let L=g.format(g.setHours(d,k),x?"hours12h":"hours24h");const D=E(parseInt(L,10).toString());L=g.formatNumber(L),C.push({value:k,label:L,isSelected:T,isDisabled:b,ariaLabel:D})}return C},getTimeSectionOptions=({value:d,utils:m,isDisabled:g,timeStep:x,resolveLabel:b,resolveAriaLabel:E,hasValue:v=!0})=>{const S=C=>d===null?!1:v&&d===C;return[...Array.from({length:Math.ceil(60/x)},(C,T)=>{const R=x*T;return{value:R,label:m.formatNumber(b(R)),isDisabled:g,isSelected:S,ariaLabel:E(R.toString())}})]},_excluded$n=["ampm","timeSteps","autoFocus","components","componentsProps","slots","slotProps","value","defaultValue","referenceDate","disableIgnoringDatePartForTimeValidation","maxTime","minTime","disableFuture","disablePast","minutesStep","shouldDisableClock","shouldDisableTime","onChange","view","views","openTo","onViewChange","focusedView","onFocusedViewChange","className","disabled","readOnly","skipDisabled","timezone"],useUtilityClasses$i=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getMultiSectionDigitalClockUtilityClass,m)},MultiSectionDigitalClockRoot=styled(PickerViewRoot,{name:"MuiMultiSectionDigitalClock",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d})=>({display:"flex",flexDirection:"row",width:"100%",borderBottom:`1px solid ${(d.vars||d).palette.divider}`})),MultiSectionDigitalClock=reactExports.forwardRef(function(m,g){const x=useUtils(),b=useThemeProps({props:m,name:"MuiMultiSectionDigitalClock"}),{ampm:E=x.is12HourCycleInCurrentLocale(),timeSteps:v,autoFocus:S,components:C,componentsProps:T,slots:R,slotProps:k,value:L,defaultValue:D,referenceDate:A,disableIgnoringDatePartForTimeValidation:I=!1,maxTime:N,minTime:z,disableFuture:j,disablePast:Y,minutesStep:B=1,shouldDisableClock:U,shouldDisableTime:W,onChange:V,view:J,views:Q=["hours","minutes"],openTo:X,onViewChange:re,focusedView:ie,onFocusedViewChange:oe,className:Z,disabled:ee,readOnly:ce,skipDisabled:fe=!1,timezone:ae}=b,ue=_objectWithoutPropertiesLoose(b,_excluded$n),{value:pe,handleValueChange:ge,timezone:ye}=useControlledValueWithTimezone({name:"MultiSectionDigitalClock",timezone:ae,value:L,defaultValue:D,onChange:V,valueManager:singleItemValueManager}),Ee=useLocaleText(),ve=useNow(ye),Se=reactExports.useMemo(()=>_extends$1({hours:1,minutes:5,seconds:5},v),[v]),$e=useClockReferenceDate({value:pe,referenceDate:A,utils:x,props:b,timezone:ye}),Me=useEventCallback((ke,Ne,Ke)=>ge(ke,Ne,Ke)),Re=reactExports.useMemo(()=>!E||!Q.includes("hours")||Q.includes("meridiem")?Q:[...Q,"meridiem"],[E,Q]),{view:De,setValueAndGoToNextView:Be,focusedView:Le}=useViews({view:J,views:Re,openTo:X,onViewChange:re,onChange:Me,focusedView:ie,onFocusedViewChange:oe}),Ge=useEventCallback(ke=>{Be(ke,"finish","meridiem")}),{meridiemMode:Ie,handleMeridiemChange:Ye}=useMeridiemMode($e,E,Ge,"finish"),He=reactExports.useCallback((ke,Ne)=>{const Ke=createIsAfterIgnoreDatePart(I,x),Xe=Ne==="hours"||Ne==="minutes"&&Re.includes("seconds"),st=({start:Je,end:gt})=>!(z&&Ke(z,gt)||N&&Ke(Je,N)||j&&Ke(Je,ve)||Y&&Ke(ve,Xe?gt:Je)),xt=(Je,gt=1)=>{if(Je%gt!==0||U!=null&&U(Je,Ne))return!1;if(W)switch(Ne){case"hours":return!W(x.setHours($e,Je),"hours");case"minutes":return!W(x.setMinutes($e,Je),"minutes");case"seconds":return!W(x.setSeconds($e,Je),"seconds");default:return!1}return!0};switch(Ne){case"hours":{const Je=convertValueToMeridiem(ke,Ie,E),gt=x.setHours($e,Je),Ct=x.setSeconds(x.setMinutes(gt,0),0),dt=x.setSeconds(x.setMinutes(gt,59),59);return!st({start:Ct,end:dt})||!xt(Je)}case"minutes":{const Je=x.setMinutes($e,ke),gt=x.setSeconds(Je,0),Ct=x.setSeconds(Je,59);return!st({start:gt,end:Ct})||!xt(ke,B)}case"seconds":{const Je=x.setSeconds($e,ke);return!st({start:Je,end:Je})||!xt(ke)}default:throw new Error("not supported")}},[E,$e,I,N,Ie,z,B,U,W,x,j,Y,ve,Re]),Ve=reactExports.useCallback(ke=>{switch(ke){case"hours":return{onChange:Ne=>{const Ke=convertValueToMeridiem(Ne,Ie,E);Be(x.setHours($e,Ke),"finish","hours")},items:getHourSectionOptions({now:ve,value:pe,ampm:E,utils:x,isDisabled:Ne=>ee||He(Ne,"hours"),timeStep:Se.hours,resolveAriaLabel:Ee.hoursClockNumberText})};case"minutes":return{onChange:Ne=>{Be(x.setMinutes($e,Ne),"finish","minutes")},items:getTimeSectionOptions({value:x.getMinutes($e),utils:x,isDisabled:Ne=>ee||He(Ne,"minutes"),resolveLabel:Ne=>x.format(x.setMinutes(ve,Ne),"minutes"),timeStep:Se.minutes,hasValue:!!pe,resolveAriaLabel:Ee.minutesClockNumberText})};case"seconds":return{onChange:Ne=>{Be(x.setSeconds($e,Ne),"finish","seconds")},items:getTimeSectionOptions({value:x.getSeconds($e),utils:x,isDisabled:Ne=>ee||He(Ne,"seconds"),resolveLabel:Ne=>x.format(x.setSeconds(ve,Ne),"seconds"),timeStep:Se.seconds,hasValue:!!pe,resolveAriaLabel:Ee.secondsClockNumberText})};case"meridiem":{const Ne=formatMeridiem(x,"am"),Ke=formatMeridiem(x,"pm");return{onChange:Ye,items:[{value:"am",label:Ne,isSelected:()=>!!pe&&Ie==="am",ariaLabel:Ne},{value:"pm",label:Ke,isSelected:()=>!!pe&&Ie==="pm",ariaLabel:Ke}]}}default:throw new Error(`Unknown view: ${ke} found.`)}},[ve,pe,E,x,Se.hours,Se.minutes,Se.seconds,Ee.hoursClockNumberText,Ee.minutesClockNumberText,Ee.secondsClockNumberText,Ie,Be,$e,ee,He,Ye]),rt=reactExports.useMemo(()=>Re.reduce((ke,Ne)=>_extends$1({},ke,{[Ne]:Ve(Ne)}),{}),[Re,Ve]),Oe=b,ot=useUtilityClasses$i(Oe);return jsxRuntimeExports.jsx(MultiSectionDigitalClockRoot,_extends$1({ref:g,className:clsx(ot.root,Z),ownerState:Oe,role:"group"},ue,{children:Object.entries(rt).map(([ke,Ne])=>jsxRuntimeExports.jsx(MultiSectionDigitalClockSection,{items:Ne.items,onChange:Ne.onChange,active:De===ke,autoFocus:S!=null?S:Le===ke,disabled:ee,readOnly:ce,slots:R!=null?R:C,slotProps:k!=null?k:T,skipDisabled:fe,"aria-label":Ee.selectViewText(ke)},ke))}))});function getPickersDayUtilityClass(d){return generateUtilityClass("MuiPickersDay",d)}const pickersDayClasses=generateUtilityClasses("MuiPickersDay",["root","dayWithMargin","dayOutsideMonth","hiddenDaySpacingFiller","today","selected","disabled"]),_excluded$m=["autoFocus","className","day","disabled","disableHighlightToday","disableMargin","hidden","isAnimating","onClick","onDaySelect","onFocus","onBlur","onKeyDown","onMouseDown","onMouseEnter","outsideCurrentMonth","selected","showDaysOutsideCurrentMonth","children","today","isFirstVisibleCell","isLastVisibleCell"],useUtilityClasses$h=d=>{const{selected:m,disableMargin:g,disableHighlightToday:x,today:b,disabled:E,outsideCurrentMonth:v,showDaysOutsideCurrentMonth:S,classes:C}=d,T=v&&!S;return composeClasses({root:["root",m&&!T&&"selected",E&&"disabled",!g&&"dayWithMargin",!x&&b&&"today",v&&S&&"dayOutsideMonth",T&&"hiddenDaySpacingFiller"],hiddenDaySpacingFiller:["hiddenDaySpacingFiller"]},getPickersDayUtilityClass,C)},styleArg=({theme:d,ownerState:m})=>_extends$1({},d.typography.caption,{width:DAY_SIZE,height:DAY_SIZE,borderRadius:"50%",padding:0,backgroundColor:"transparent",transition:d.transitions.create("background-color",{duration:d.transitions.duration.short}),color:(d.vars||d).palette.text.primary,"@media (pointer: fine)":{"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.hoverOpacity})`:alpha(d.palette.primary.main,d.palette.action.hoverOpacity)}},"&:focus":{backgroundColor:d.vars?`rgba(${d.vars.palette.primary.mainChannel} / ${d.vars.palette.action.focusOpacity})`:alpha(d.palette.primary.main,d.palette.action.focusOpacity),[`&.${pickersDayClasses.selected}`]:{willChange:"background-color",backgroundColor:(d.vars||d).palette.primary.dark}},[`&.${pickersDayClasses.selected}`]:{color:(d.vars||d).palette.primary.contrastText,backgroundColor:(d.vars||d).palette.primary.main,fontWeight:d.typography.fontWeightMedium,"&:hover":{willChange:"background-color",backgroundColor:(d.vars||d).palette.primary.dark}},[`&.${pickersDayClasses.disabled}:not(.${pickersDayClasses.selected})`]:{color:(d.vars||d).palette.text.disabled},[`&.${pickersDayClasses.disabled}&.${pickersDayClasses.selected}`]:{opacity:.6}},!m.disableMargin&&{margin:`0 ${DAY_MARGIN}px`},m.outsideCurrentMonth&&m.showDaysOutsideCurrentMonth&&{color:(d.vars||d).palette.text.secondary},!m.disableHighlightToday&&m.today&&{[`&:not(.${pickersDayClasses.selected})`]:{border:`1px solid ${(d.vars||d).palette.text.secondary}`}}),overridesResolver=(d,m)=>{const{ownerState:g}=d;return[m.root,!g.disableMargin&&m.dayWithMargin,!g.disableHighlightToday&&g.today&&m.today,!g.outsideCurrentMonth&&g.showDaysOutsideCurrentMonth&&m.dayOutsideMonth,g.outsideCurrentMonth&&!g.showDaysOutsideCurrentMonth&&m.hiddenDaySpacingFiller]},PickersDayRoot=styled(ButtonBase,{name:"MuiPickersDay",slot:"Root",overridesResolver})(styleArg),PickersDayFiller=styled("div",{name:"MuiPickersDay",slot:"Root",overridesResolver})(({theme:d,ownerState:m})=>_extends$1({},styleArg({theme:d,ownerState:m}),{opacity:0,pointerEvents:"none"})),noop=()=>{},PickersDayRaw=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiPickersDay"}),{autoFocus:b=!1,className:E,day:v,disabled:S=!1,disableHighlightToday:C=!1,disableMargin:T=!1,isAnimating:R,onClick:k,onDaySelect:L,onFocus:D=noop,onBlur:A=noop,onKeyDown:I=noop,onMouseDown:N=noop,onMouseEnter:z=noop,outsideCurrentMonth:j,selected:Y=!1,showDaysOutsideCurrentMonth:B=!1,children:U,today:W=!1}=x,V=_objectWithoutPropertiesLoose(x,_excluded$m),J=_extends$1({},x,{autoFocus:b,disabled:S,disableHighlightToday:C,disableMargin:T,selected:Y,showDaysOutsideCurrentMonth:B,today:W}),Q=useUtilityClasses$h(J),X=useUtils(),re=reactExports.useRef(null),ie=useForkRef(re,g);useEnhancedEffect(()=>{b&&!S&&!R&&!j&&re.current.focus()},[b,S,R,j]);const oe=ee=>{N(ee),j&&ee.preventDefault()},Z=ee=>{S||L(v),j&&ee.currentTarget.focus(),k&&k(ee)};return j&&!B?jsxRuntimeExports.jsx(PickersDayFiller,{className:clsx(Q.root,Q.hiddenDaySpacingFiller,E),ownerState:J,role:V.role}):jsxRuntimeExports.jsx(PickersDayRoot,_extends$1({className:clsx(Q.root,E),ref:ie,centerRipple:!0,disabled:S,tabIndex:Y?0:-1,onKeyDown:ee=>I(ee,v),onFocus:ee=>D(ee,v),onBlur:ee=>A(ee,v),onMouseEnter:ee=>z(ee,v),onClick:Z,onMouseDown:oe},V,{ownerState:J,children:U||X.format(v,"dayOfMonth")}))}),PickersDay=reactExports.memo(PickersDayRaw);function useValidation(d,m,g,x){const{value:b,onError:E}=d,v=useLocalizationContext(),S=reactExports.useRef(x),C=m({adapter:v,value:b,props:d});return reactExports.useEffect(()=>{E&&!g(C,S.current)&&E(C,b),S.current=C},[g,E,S,C,b]),C}const useFieldState=d=>{const m=useUtils(),g=useLocaleText(),x=useLocalizationContext(),E=useTheme$1().direction==="rtl",{valueManager:v,fieldValueManager:S,validator:C,internalProps:T,internalProps:{value:R,defaultValue:k,referenceDate:L,onChange:D,format:A,formatDensity:I="dense",selectedSections:N,onSelectedSectionsChange:z,shouldRespectLeadingZeros:j=!1,timezone:Y}}=d,{timezone:B,value:U,handleValueChange:W}=useValueWithTimezone({timezone:Y,value:R,defaultValue:k,onChange:D,valueManager:v}),V=reactExports.useMemo(()=>getSectionsBoundaries(m,B),[m,B]),J=reactExports.useCallback((Ee,ve=null)=>S.getSectionsFromValue(m,Ee,ve,E,Se=>splitFormatIntoSections(m,B,g,A,Se,I,j,E)),[S,A,g,E,j,m,I,B]),Q=reactExports.useMemo(()=>S.getValueStrFromSections(J(v.emptyValue),E),[S,J,v.emptyValue,E]),[X,re]=reactExports.useState(()=>{const Ee=J(U),ve={sections:Ee,value:U,referenceValue:v.emptyValue,tempValueStrAndroid:null},Se=getSectionTypeGranularity(Ee),$e=v.getInitialReferenceValue({referenceDate:L,value:U,utils:m,props:T,granularity:Se,timezone:B});return _extends$1({},ve,{referenceValue:$e})}),[ie,oe]=useControlled({controlled:N,default:null,name:"useField",state:"selectedSectionIndexes"}),Z=Ee=>{oe(Ee),z==null||z(Ee),re(ve=>_extends$1({},ve,{selectedSectionQuery:null}))},ee=reactExports.useMemo(()=>{if(ie==null)return null;if(ie==="all")return{startIndex:0,endIndex:X.sections.length-1,shouldSelectBoundarySelectors:!0};if(typeof ie=="number")return{startIndex:ie,endIndex:ie};if(typeof ie=="string"){const Ee=X.sections.findIndex(ve=>ve.type===ie);return{startIndex:Ee,endIndex:Ee}}return ie},[ie,X.sections]),ce=({value:Ee,referenceValue:ve,sections:Se})=>{if(re(Me=>_extends$1({},Me,{sections:Se,value:Ee,referenceValue:ve,tempValueStrAndroid:null})),v.areValuesEqual(m,X.value,Ee))return;const $e={validationError:C({adapter:x,value:Ee,props:_extends$1({},T,{value:Ee,timezone:B})})};W(Ee,$e)},fe=(Ee,ve)=>{const Se=[...X.sections];return Se[Ee]=_extends$1({},Se[Ee],{value:ve,modified:!0}),addPositionPropertiesToSections(Se,E)},ae=()=>{ce({value:v.emptyValue,referenceValue:X.referenceValue,sections:J(v.emptyValue)})},ue=()=>{if(ee==null)return;const Ee=X.sections[ee.startIndex],ve=S.getActiveDateManager(m,X,Ee),$e=ve.getSections(X.sections).filter(Be=>Be.value!=="").length===(Ee.value===""?0:1),Me=fe(ee.startIndex,""),Re=$e?null:m.date(new Date("")),De=ve.getNewValuesFromNewActiveDate(Re);(Re!=null&&!m.isValid(Re))!=(ve.date!=null&&!m.isValid(ve.date))?ce(_extends$1({},De,{sections:Me})):re(Be=>_extends$1({},Be,De,{sections:Me,tempValueStrAndroid:null}))},pe=Ee=>{const ve=(Me,Re)=>{const De=m.parse(Me,A);if(De==null||!m.isValid(De))return null;const Be=splitFormatIntoSections(m,B,g,A,De,I,j,E);return mergeDateIntoReferenceDate(m,B,De,Be,Re,!1)},Se=S.parseValueStr(Ee,X.referenceValue,ve),$e=S.updateReferenceValue(m,Se,X.referenceValue);ce({value:Se,referenceValue:$e,sections:J(Se,X.sections)})},ge=({activeSection:Ee,newSectionValue:ve,shouldGoToNextSection:Se})=>{Se&&ee&&ee.startIndex<X.sections.length-1?Z(ee.startIndex+1):ee&&ee.startIndex!==ee.endIndex&&Z(ee.startIndex);const $e=S.getActiveDateManager(m,X,Ee),Me=fe(ee.startIndex,ve),Re=$e.getSections(Me),De=getDateFromDateSections(m,Re);let Be,Le;if(De!=null&&m.isValid(De)){const Ge=mergeDateIntoReferenceDate(m,B,De,Re,$e.referenceDate,!0);Be=$e.getNewValuesFromNewActiveDate(Ge),Le=!0}else Be=$e.getNewValuesFromNewActiveDate(De),Le=(De!=null&&!m.isValid(De))!=($e.date!=null&&!m.isValid($e.date));return Le?ce(_extends$1({},Be,{sections:Me})):re(Ge=>_extends$1({},Ge,Be,{sections:Me,tempValueStrAndroid:null}))},ye=Ee=>re(ve=>_extends$1({},ve,{tempValueStrAndroid:Ee}));return reactExports.useEffect(()=>{const Ee=J(X.value);re(ve=>_extends$1({},ve,{sections:Ee}))},[A,m.locale]),reactExports.useEffect(()=>{let Ee=!1;v.areValuesEqual(m,X.value,U)?Ee=v.getTimezone(m,X.value)!==v.getTimezone(m,U):Ee=!0,Ee&&re(ve=>_extends$1({},ve,{value:U,referenceValue:S.updateReferenceValue(m,U,ve.referenceValue),sections:J(U)}))},[U]),{state:X,selectedSectionIndexes:ee,setSelectedSections:Z,clearValue:ae,clearActiveSection:ue,updateSectionValue:ge,updateValueFromValueStr:pe,setTempAndroidValueStr:ye,sectionsValueBoundaries:V,placeholder:Q,timezone:B}},QUERY_LIFE_DURATION_MS=5e3,isQueryResponseWithoutValue=d=>d.saveQuery!=null,useFieldCharacterEditing=({sections:d,updateSectionValue:m,sectionsValueBoundaries:g,setTempAndroidValueStr:x,timezone:b})=>{const E=useUtils(),[v,S]=reactExports.useState(null),C=useEventCallback(()=>S(null));reactExports.useEffect(()=>{var D;v!=null&&((D=d[v.sectionIndex])==null?void 0:D.type)!==v.sectionType&&C()},[d,v,C]),reactExports.useEffect(()=>{if(v!=null){const D=setTimeout(()=>C(),QUERY_LIFE_DURATION_MS);return()=>{window.clearTimeout(D)}}return()=>{}},[v,C]);const T=({keyPressed:D,sectionIndex:A},I,N)=>{const z=D.toLowerCase(),j=d[A];if(v!=null&&(!N||N(v.value))&&v.sectionIndex===A){const B=`${v.value}${z}`,U=I(B,j);if(!isQueryResponseWithoutValue(U))return S({sectionIndex:A,value:B,sectionType:j.type}),U}const Y=I(z,j);return isQueryResponseWithoutValue(Y)&&!Y.saveQuery?(C(),null):(S({sectionIndex:A,value:z,sectionType:j.type}),isQueryResponseWithoutValue(Y)?null:Y)},R=D=>{const A=(z,j,Y)=>{const B=j.filter(U=>U.toLowerCase().startsWith(Y));return B.length===0?{saveQuery:!1}:{sectionValue:B[0],shouldGoToNextSection:B.length===1}},I=(z,j,Y,B)=>{const U=W=>getLetterEditingOptions(E,b,j.type,W);if(j.contentType==="letter")return A(j.format,U(j.format),z);if(Y&&B!=null&&getDateSectionConfigFromFormatToken(E,Y).contentType==="letter"){const W=U(Y),V=A(Y,W,z);return isQueryResponseWithoutValue(V)?{saveQuery:!1}:_extends$1({},V,{sectionValue:B(V.sectionValue,W)})}return{saveQuery:!1}};return T(D,(z,j)=>{switch(j.type){case"month":{const Y=B=>changeSectionValueFormat(E,B,E.formats.month,j.format);return I(z,j,E.formats.month,Y)}case"weekDay":{const Y=(B,U)=>U.indexOf(B).toString();return I(z,j,E.formats.weekday,Y)}case"meridiem":return I(z,j);default:return{saveQuery:!1}}})},k=D=>{const A=(N,z)=>{const j=+`${N}`,Y=g[z.type]({currentDate:null,format:z.format,contentType:z.contentType});if(j>Y.maximum)return{saveQuery:!1};if(j<Y.minimum)return{saveQuery:!0};const B=+`${N}0`>Y.maximum||N.length===Y.maximum.toString().length;return{sectionValue:cleanDigitSectionValue(E,b,j,Y,z),shouldGoToNextSection:B}};return T(D,(N,z)=>{if(z.contentType==="digit"||z.contentType==="digit-with-letter")return A(N,z);if(z.type==="month"){doesSectionFormatHaveLeadingZeros(E,b,"digit","month","MM");const j=A(N,{type:z.type,format:"MM",hasLeadingZerosInInput:!0,contentType:"digit",maxLength:2});if(isQueryResponseWithoutValue(j))return j;const Y=changeSectionValueFormat(E,j.sectionValue,"MM",z.format);return _extends$1({},j,{sectionValue:Y})}if(z.type==="weekDay"){const j=A(N,z);if(isQueryResponseWithoutValue(j))return j;const Y=getDaysInWeekStr(E,b,z.format)[Number(j.sectionValue)-1];return _extends$1({},j,{sectionValue:Y})}return{saveQuery:!1}},N=>!Number.isNaN(Number(N)))};return{applyCharacterEditing:useEventCallback(D=>{const A=d[D.sectionIndex],N=D.keyPressed!==" "&&!Number.isNaN(Number(D.keyPressed))?k(D):R(D);N==null?x(null):m({activeSection:A,newSectionValue:N.sectionValue,shouldGoToNextSection:N.shouldGoToNextSection})}),resetCharacterQuery:C}};function arrayIncludes(d,m){return Array.isArray(m)?m.every(g=>d.indexOf(g)!==-1):d.indexOf(m)!==-1}const onSpaceOrEnter=(d,m)=>g=>{(g.key==="Enter"||g.key===" ")&&(d(g),g.preventDefault(),g.stopPropagation())},getActiveElement=(d=document)=>{const m=d.activeElement;return m?m.shadowRoot?getActiveElement(m.shadowRoot):m:null},DEFAULT_DESKTOP_MODE_MEDIA_QUERY="@media (pointer: fine)",_excluded$l=["onClick","onKeyDown","onFocus","onBlur","onMouseUp","onPaste","error","clearable","onClear","disabled"],useField=d=>{const m=useUtils(),{state:g,selectedSectionIndexes:x,setSelectedSections:b,clearValue:E,clearActiveSection:v,updateSectionValue:S,updateValueFromValueStr:C,setTempAndroidValueStr:T,sectionsValueBoundaries:R,placeholder:k,timezone:L}=useFieldState(d),{inputRef:D,internalProps:A,internalProps:{readOnly:I=!1,unstableFieldRef:N,minutesStep:z},forwardedProps:{onClick:j,onKeyDown:Y,onFocus:B,onBlur:U,onMouseUp:W,onPaste:V,error:J,clearable:Q,onClear:X,disabled:re},fieldValueManager:ie,valueManager:oe,validator:Z}=d,ee=_objectWithoutPropertiesLoose(d.forwardedProps,_excluded$l),{applyCharacterEditing:ce,resetCharacterQuery:fe}=useFieldCharacterEditing({sections:g.sections,updateSectionValue:S,sectionsValueBoundaries:R,setTempAndroidValueStr:T,timezone:L}),ae=reactExports.useRef(null),ue=useForkRef(D,ae),pe=reactExports.useRef(void 0),ye=useTheme$1().direction==="rtl",Ee=reactExports.useMemo(()=>getSectionOrder(g.sections,ye),[g.sections,ye]),ve=()=>{var ke;if(I){b(null);return}const Ne=(ke=ae.current.selectionStart)!=null?ke:0;let Ke;Ne<=g.sections[0].startInInput||Ne>=g.sections[g.sections.length-1].endInInput?Ke=1:Ke=g.sections.findIndex(st=>st.startInInput-st.startSeparator.length>Ne);const Xe=Ke===-1?g.sections.length-1:Ke-1;b(Xe)},Se=useEventCallback((ke,...Ne)=>{ke.isDefaultPrevented()||(j==null||j(ke,...Ne),ve())}),$e=useEventCallback(ke=>{W==null||W(ke),ke.preventDefault()}),Me=useEventCallback((...ke)=>{B==null||B(...ke);const Ne=ae.current;window.clearTimeout(pe.current),pe.current=setTimeout(()=>{!Ne||Ne!==ae.current||x!=null||I||(Ne.value.length&&Number(Ne.selectionEnd)-Number(Ne.selectionStart)===Ne.value.length?b("all"):ve())})}),Re=useEventCallback((...ke)=>{U==null||U(...ke),b(null)}),De=useEventCallback(ke=>{if(V==null||V(ke),I){ke.preventDefault();return}const Ne=ke.clipboardData.getData("text");if(x&&x.startIndex===x.endIndex){const Ke=g.sections[x.startIndex],Xe=/^[a-zA-Z]+$/.test(Ne),st=/^[0-9]+$/.test(Ne),xt=/^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(Ne);if(Ke.contentType==="letter"&&Xe||Ke.contentType==="digit"&&st||Ke.contentType==="digit-with-letter"&&xt){fe(),S({activeSection:Ke,newSectionValue:Ne,shouldGoToNextSection:!0}),ke.preventDefault();return}if(Xe||st){ke.preventDefault();return}}ke.preventDefault(),fe(),C(Ne)}),Be=useEventCallback(ke=>{if(I)return;const Ne=ke.target.value;if(Ne===""){fe(),E();return}const Ke=ke.nativeEvent.data,Xe=Ke&&Ke.length>1,st=Xe?Ke:Ne,xt=cleanString(st);if(x==null||Xe){C(Xe?Ke:xt);return}let Je;if(x.startIndex===0&&x.endIndex===g.sections.length-1&&xt.length===1)Je=xt;else{const gt=cleanString(ie.getValueStrFromSections(g.sections,ye));let Ct=-1,dt=-1;for(let Pt=0;Pt<gt.length;Pt+=1)Ct===-1&&gt[Pt]!==xt[Pt]&&(Ct=Pt),dt===-1&&gt[gt.length-Pt-1]!==xt[xt.length-Pt-1]&&(dt=Pt);const jt=g.sections[x.startIndex];if(Ct<jt.start||gt.length-dt-1>jt.end)return;const Xt=xt.length-gt.length+jt.end-cleanString(jt.endSeparator||"").length;Je=xt.slice(jt.start+cleanString(jt.startSeparator||"").length,Xt)}if(Je.length===0){isAndroid()?T(st):(fe(),v());return}ce({keyPressed:Je,sectionIndex:x.startIndex})}),Le=useEventCallback(ke=>{switch(Y==null||Y(ke),!0){case(ke.key==="a"&&(ke.ctrlKey||ke.metaKey)):{ke.preventDefault(),b("all");break}case ke.key==="ArrowRight":{if(ke.preventDefault(),x==null)b(Ee.startIndex);else if(x.startIndex!==x.endIndex)b(x.endIndex);else{const Ne=Ee.neighbors[x.startIndex].rightIndex;Ne!==null&&b(Ne)}break}case ke.key==="ArrowLeft":{if(ke.preventDefault(),x==null)b(Ee.endIndex);else if(x.startIndex!==x.endIndex)b(x.startIndex);else{const Ne=Ee.neighbors[x.startIndex].leftIndex;Ne!==null&&b(Ne)}break}case ke.key==="Delete":{if(ke.preventDefault(),I)break;x==null||x.startIndex===0&&x.endIndex===g.sections.length-1?E():v(),fe();break}case["ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(ke.key):{if(ke.preventDefault(),I||x==null)break;const Ne=g.sections[x.startIndex],Ke=ie.getActiveDateManager(m,g,Ne),Xe=adjustSectionValue(m,L,Ne,ke.key,R,Ke.date,{minutesStep:z});S({activeSection:Ne,newSectionValue:Xe,shouldGoToNextSection:!1});break}}});useEnhancedEffect(()=>{if(!ae.current)return;if(x==null){ae.current.scrollLeft&&(ae.current.scrollLeft=0);return}const ke=g.sections[x.startIndex],Ne=g.sections[x.endIndex];let Ke=ke.startInInput,Xe=Ne.endInInput;if(x.shouldSelectBoundarySelectors&&(Ke-=ke.startSeparator.length,Xe+=Ne.endSeparator.length),Ke!==ae.current.selectionStart||Xe!==ae.current.selectionEnd){const st=ae.current.scrollTop;ae.current===getActiveElement(document)&&ae.current.setSelectionRange(Ke,Xe),ae.current.scrollTop=st}});const Ge=useValidation(_extends$1({},A,{value:g.value,timezone:L}),Z,oe.isSameError,oe.defaultErrorState),Ie=reactExports.useMemo(()=>J!==void 0?J:oe.hasError(Ge),[oe,Ge,J]);reactExports.useEffect(()=>{!Ie&&!x&&fe()},[g.referenceValue,x,Ie]),reactExports.useEffect(()=>(ae.current&&ae.current===document.activeElement&&b("all"),()=>window.clearTimeout(pe.current)),[]),reactExports.useEffect(()=>{g.tempValueStrAndroid!=null&&x!=null&&(fe(),v())},[g.tempValueStrAndroid]);const Ye=reactExports.useMemo(()=>{var ke;return(ke=g.tempValueStrAndroid)!=null?ke:ie.getValueStrFromSections(g.sections,ye)},[g.sections,ie,g.tempValueStrAndroid,ye]),He=reactExports.useMemo(()=>x==null||g.sections[x.startIndex].contentType==="letter"?"text":"numeric",[x,g.sections]),Ve=ae.current&&ae.current===getActiveElement(document),rt=oe.areValuesEqual(m,g.value,oe.emptyValue),Oe=!Ve&&rt;reactExports.useImperativeHandle(N,()=>({getSections:()=>g.sections,getActiveSectionIndex:()=>{var ke,Ne,Ke;const Xe=(ke=ae.current.selectionStart)!=null?ke:0,st=(Ne=ae.current.selectionEnd)!=null?Ne:0,xt=!!((Ke=ae.current)!=null&&Ke.readOnly);if(Xe===0&&st===0||xt)return null;const Je=Xe<=g.sections[0].startInInput?1:g.sections.findIndex(gt=>gt.startInInput-gt.startSeparator.length>Xe);return Je===-1?g.sections.length-1:Je-1},setSelectedSections:ke=>b(ke)}));const ot=useEventCallback((ke,...Ne)=>{var Ke;ke.preventDefault(),X==null||X(ke,...Ne),E(),ae==null||(Ke=ae.current)==null||Ke.focus(),b(0)});return _extends$1({placeholder:k,autoComplete:"off",disabled:!!re},ee,{value:Oe?"":Ye,inputMode:He,readOnly:I,onClick:Se,onFocus:Me,onBlur:Re,onPaste:De,onChange:Be,onKeyDown:Le,onMouseUp:$e,onClear:ot,error:Ie,ref:ue,clearable:!!(Q&&!rt&&!I&&!re)})},validateDate=({props:d,value:m,adapter:g})=>{if(m===null)return null;const{shouldDisableDate:x,shouldDisableMonth:b,shouldDisableYear:E,disablePast:v,disableFuture:S,timezone:C}=d,T=g.utils.dateWithTimezone(void 0,C),R=applyDefaultDate(g.utils,d.minDate,g.defaultDates.minDate),k=applyDefaultDate(g.utils,d.maxDate,g.defaultDates.maxDate);switch(!0){case!g.utils.isValid(m):return"invalidDate";case!!(x&&x(m)):return"shouldDisableDate";case!!(b&&b(m)):return"shouldDisableMonth";case!!(E&&E(m)):return"shouldDisableYear";case!!(S&&g.utils.isAfterDay(m,T)):return"disableFuture";case!!(v&&g.utils.isBeforeDay(m,T)):return"disablePast";case!!(R&&g.utils.isBeforeDay(m,R)):return"minDate";case!!(k&&g.utils.isAfterDay(m,k)):return"maxDate";default:return null}},DATE_VALIDATION_PROP_NAMES=["disablePast","disableFuture","minDate","maxDate","shouldDisableDate","shouldDisableMonth","shouldDisableYear"],TIME_VALIDATION_PROP_NAMES=["disablePast","disableFuture","minTime","maxTime","shouldDisableClock","shouldDisableTime","minutesStep","ampm","disableIgnoringDatePartForTimeValidation"],DATE_TIME_VALIDATION_PROP_NAMES=["minDateTime","maxDateTime"],VALIDATION_PROP_NAMES=[...DATE_VALIDATION_PROP_NAMES,...TIME_VALIDATION_PROP_NAMES,...DATE_TIME_VALIDATION_PROP_NAMES],extractValidationProps=d=>VALIDATION_PROP_NAMES.reduce((m,g)=>(d.hasOwnProperty(g)&&(m[g]=d[g]),m),{}),SHARED_FIELD_INTERNAL_PROP_NAMES=["value","defaultValue","referenceDate","format","formatDensity","onChange","timezone","readOnly","onError","shouldRespectLeadingZeros","selectedSections","onSelectedSectionsChange","unstableFieldRef"],splitFieldInternalAndForwardedProps=(d,m)=>{const g=_extends$1({},d),x={},b=E=>{g.hasOwnProperty(E)&&(x[E]=g[E],delete g[E])};return SHARED_FIELD_INTERNAL_PROP_NAMES.forEach(b),DATE_VALIDATION_PROP_NAMES.forEach(b),TIME_VALIDATION_PROP_NAMES.forEach(b),DATE_TIME_VALIDATION_PROP_NAMES.forEach(b),{forwardedProps:g,internalProps:x}},PickersModalDialogRoot=styled(Dialog$1)({[`& .${dialogClasses.container}`]:{outline:0},[`& .${dialogClasses.paper}`]:{outline:0,minWidth:DIALOG_WIDTH}}),PickersModalDialogContent=styled(DialogContent)({"&:first-of-type":{padding:0}});function PickersModalDialog(d){var m,g;const{children:x,onDismiss:b,open:E,slots:v,slotProps:S}=d,C=(m=v==null?void 0:v.dialog)!=null?m:PickersModalDialogRoot,T=(g=v==null?void 0:v.mobileTransition)!=null?g:Fade;return jsxRuntimeExports.jsx(C,_extends$1({open:E,onClose:b},S==null?void 0:S.dialog,{TransitionComponent:T,TransitionProps:S==null?void 0:S.mobileTransition,PaperComponent:v==null?void 0:v.mobilePaper,PaperProps:S==null?void 0:S.mobilePaper,children:jsxRuntimeExports.jsx(PickersModalDialogContent,{children:x})}))}function getPickersPopperUtilityClass(d){return generateUtilityClass("MuiPickersPopper",d)}generateUtilityClasses("MuiPickersPopper",["root","paper"]);const PREFERS_REDUCED_MOTION="@media (prefers-reduced-motion: reduce)",mobileVersionMatches=typeof navigator!="undefined"&&navigator.userAgent.match(/android\s(\d+)|OS\s(\d+)/i),androidVersion=mobileVersionMatches&&mobileVersionMatches[1]?parseInt(mobileVersionMatches[1],10):null,iOSVersion=mobileVersionMatches&&mobileVersionMatches[2]?parseInt(mobileVersionMatches[2],10):null,slowAnimationDevices=androidVersion&&androidVersion<10||iOSVersion&&iOSVersion<13||!1,useDefaultReduceAnimations=()=>useMediaQuery$1(PREFERS_REDUCED_MOTION,{defaultMatches:!1})||slowAnimationDevices,_excluded$k=["PaperComponent","popperPlacement","ownerState","children","paperSlotProps","paperClasses","onPaperClick","onPaperTouchStart"],useUtilityClasses$g=d=>{const{classes:m}=d;return composeClasses({root:["root"],paper:["paper"]},getPickersPopperUtilityClass,m)},PickersPopperRoot=styled(Popper,{name:"MuiPickersPopper",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d})=>({zIndex:d.zIndex.modal})),PickersPopperPaper=styled(Paper,{name:"MuiPickersPopper",slot:"Paper",overridesResolver:(d,m)=>m.paper})(({ownerState:d})=>_extends$1({outline:0,transformOrigin:"top center"},d.placement.includes("top")&&{transformOrigin:"bottom center"}));function clickedRootScrollbar(d,m){return m.documentElement.clientWidth<d.clientX||m.documentElement.clientHeight<d.clientY}function useClickAwayListener(d,m){const g=reactExports.useRef(!1),x=reactExports.useRef(!1),b=reactExports.useRef(null),E=reactExports.useRef(!1);reactExports.useEffect(()=>{if(!d)return;function C(){E.current=!0}return document.addEventListener("mousedown",C,!0),document.addEventListener("touchstart",C,!0),()=>{document.removeEventListener("mousedown",C,!0),document.removeEventListener("touchstart",C,!0),E.current=!1}},[d]);const v=useEventCallback(C=>{if(!E.current)return;const T=x.current;x.current=!1;const R=ownerDocument(b.current);if(!b.current||"clientX"in C&&clickedRootScrollbar(C,R))return;if(g.current){g.current=!1;return}let k;C.composedPath?k=C.composedPath().indexOf(b.current)>-1:k=!R.documentElement.contains(C.target)||b.current.contains(C.target),!k&&!T&&m(C)}),S=()=>{x.current=!0};return reactExports.useEffect(()=>{if(d){const C=ownerDocument(b.current),T=()=>{g.current=!0};return C.addEventListener("touchstart",v),C.addEventListener("touchmove",T),()=>{C.removeEventListener("touchstart",v),C.removeEventListener("touchmove",T)}}},[d,v]),reactExports.useEffect(()=>{if(d){const C=ownerDocument(b.current);return C.addEventListener("click",v),()=>{C.removeEventListener("click",v),x.current=!1}}},[d,v]),[b,S,S]}const PickersPopperPaperWrapper=reactExports.forwardRef((d,m)=>{const{PaperComponent:g,popperPlacement:x,ownerState:b,children:E,paperSlotProps:v,paperClasses:S,onPaperClick:C,onPaperTouchStart:T}=d,R=_objectWithoutPropertiesLoose(d,_excluded$k),k=_extends$1({},b,{placement:x}),L=useSlotProps({elementType:g,externalSlotProps:v,additionalProps:{tabIndex:-1,elevation:8,ref:m},className:S,ownerState:k});return jsxRuntimeExports.jsx(g,_extends$1({},R,L,{onClick:D=>{var A;C(D),(A=L.onClick)==null||A.call(L,D)},onTouchStart:D=>{var A;T(D),(A=L.onTouchStart)==null||A.call(L,D)},ownerState:k,children:E}))});function PickersPopper(d){var m,g,x,b;const E=useThemeProps({props:d,name:"MuiPickersPopper"}),{anchorEl:v,children:S,containerRef:C=null,shouldRestoreFocus:T,onBlur:R,onDismiss:k,open:L,role:D,placement:A,slots:I,slotProps:N,reduceAnimations:z}=E;reactExports.useEffect(()=>{function ue(pe){L&&(pe.key==="Escape"||pe.key==="Esc")&&k()}return document.addEventListener("keydown",ue),()=>{document.removeEventListener("keydown",ue)}},[k,L]);const j=reactExports.useRef(null);reactExports.useEffect(()=>{D==="tooltip"||T&&!T()||(L?j.current=getActiveElement(document):j.current&&j.current instanceof HTMLElement&&setTimeout(()=>{j.current instanceof HTMLElement&&j.current.focus()}))},[L,D,T]);const[Y,B,U]=useClickAwayListener(L,R!=null?R:k),W=reactExports.useRef(null),V=useForkRef(W,C),J=useForkRef(V,Y),Q=E,X=useUtilityClasses$g(Q),re=useDefaultReduceAnimations(),ie=z!=null?z:re,oe=ue=>{ue.key==="Escape"&&(ue.stopPropagation(),k())},Z=((m=I==null?void 0:I.desktopTransition)!=null?m:ie)?Fade:Grow,ee=(g=I==null?void 0:I.desktopTrapFocus)!=null?g:FocusTrap,ce=(x=I==null?void 0:I.desktopPaper)!=null?x:PickersPopperPaper,fe=(b=I==null?void 0:I.popper)!=null?b:PickersPopperRoot,ae=useSlotProps({elementType:fe,externalSlotProps:N==null?void 0:N.popper,additionalProps:{transition:!0,role:D,open:L,anchorEl:v,placement:A,onKeyDown:oe},className:X.root,ownerState:E});return jsxRuntimeExports.jsx(fe,_extends$1({},ae,{children:({TransitionProps:ue,placement:pe})=>jsxRuntimeExports.jsx(ee,_extends$1({open:L,disableAutoFocus:!0,disableRestoreFocus:!0,disableEnforceFocus:D==="tooltip",isEnabled:()=>!0},N==null?void 0:N.desktopTrapFocus,{children:jsxRuntimeExports.jsx(Z,_extends$1({},ue,N==null?void 0:N.desktopTransition,{children:jsxRuntimeExports.jsx(PickersPopperPaperWrapper,{PaperComponent:ce,ownerState:Q,popperPlacement:pe,ref:J,onPaperClick:B,onPaperTouchStart:U,paperClasses:X.paper,paperSlotProps:N==null?void 0:N.desktopPaper,children:S})}))}))}))}function getPickersToolbarUtilityClass(d){return generateUtilityClass("MuiPickersToolbar",d)}generateUtilityClasses("MuiPickersToolbar",["root","content"]);const useUtilityClasses$f=d=>{const{classes:m,isLandscape:g}=d;return composeClasses({root:["root"],content:["content"],penIconButton:["penIconButton",g&&"penIconButtonLandscape"]},getPickersToolbarUtilityClass,m)},PickersToolbarRoot=styled("div",{name:"MuiPickersToolbar",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d,ownerState:m})=>_extends$1({display:"flex",flexDirection:"column",alignItems:"flex-start",justifyContent:"space-between",padding:d.spacing(2,3)},m.isLandscape&&{height:"auto",maxWidth:160,padding:16,justifyContent:"flex-start",flexWrap:"wrap"})),PickersToolbarContent=styled("div",{name:"MuiPickersToolbar",slot:"Content",overridesResolver:(d,m)=>m.content})(({ownerState:d})=>{var m;return{display:"flex",flexWrap:"wrap",width:"100%",justifyContent:d.isLandscape?"flex-start":"space-between",flexDirection:d.isLandscape?(m=d.landscapeDirection)!=null?m:"column":"row",flex:1,alignItems:d.isLandscape?"flex-start":"center"}}),PickersToolbar=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiPickersToolbar"}),{children:b,className:E,toolbarTitle:v,hidden:S,titleId:C}=x,T=x,R=useUtilityClasses$f(T);return S?null:jsxRuntimeExports.jsxs(PickersToolbarRoot,{ref:g,className:clsx(R.root,E),ownerState:T,children:[jsxRuntimeExports.jsx(Typography,{color:"text.secondary",variant:"overline",id:C,children:v}),jsxRuntimeExports.jsx(PickersToolbarContent,{className:R.content,ownerState:T,children:b})]})});function getPickersToolbarTextUtilityClass(d){return generateUtilityClass("MuiPickersToolbarText",d)}const pickersToolbarTextClasses=generateUtilityClasses("MuiPickersToolbarText",["root","selected"]),_excluded$j=["className","selected","value"],useUtilityClasses$e=d=>{const{classes:m,selected:g}=d;return composeClasses({root:["root",g&&"selected"]},getPickersToolbarTextUtilityClass,m)},PickersToolbarTextRoot=styled(Typography,{name:"MuiPickersToolbarText",slot:"Root",overridesResolver:(d,m)=>[m.root,{[`&.${pickersToolbarTextClasses.selected}`]:m.selected}]})(({theme:d})=>({transition:d.transitions.create("color"),color:(d.vars||d).palette.text.secondary,[`&.${pickersToolbarTextClasses.selected}`]:{color:(d.vars||d).palette.text.primary}})),PickersToolbarText=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiPickersToolbarText"}),{className:b,value:E}=x,v=_objectWithoutPropertiesLoose(x,_excluded$j),S=useUtilityClasses$e(x);return jsxRuntimeExports.jsx(PickersToolbarTextRoot,_extends$1({ref:g,className:clsx(b,S.root),component:"span"},v,{children:E}))}),_excluded$i=["align","className","selected","typographyClassName","value","variant","width"],useUtilityClasses$d=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getPickersToolbarUtilityClass,m)},PickersToolbarButtonRoot=styled(Button,{name:"MuiPickersToolbarButton",slot:"Root",overridesResolver:(d,m)=>m.root})({padding:0,minWidth:16,textTransform:"none"}),PickersToolbarButton=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiPickersToolbarButton"}),{align:b,className:E,selected:v,typographyClassName:S,value:C,variant:T,width:R}=x,k=_objectWithoutPropertiesLoose(x,_excluded$i),L=useUtilityClasses$d(x);return jsxRuntimeExports.jsx(PickersToolbarButtonRoot,_extends$1({variant:"text",ref:g,className:clsx(E,L.root)},R?{sx:{width:R}}:{},k,{children:jsxRuntimeExports.jsx(PickersToolbarText,{align:b,className:S,variant:T,value:C,selected:v})}))}),useOpenState=({open:d,onOpen:m,onClose:g})=>{const x=reactExports.useRef(typeof d=="boolean").current,[b,E]=reactExports.useState(!1);reactExports.useEffect(()=>{if(x){if(typeof d!="boolean")throw new Error("You must not mix controlling and uncontrolled mode for `open` prop");E(d)}},[x,d]);const v=reactExports.useCallback(S=>{x||E(S),S&&m&&m(),!S&&g&&g()},[x,m,g]);return{isOpen:b,setIsOpen:v}},shouldPublishValue=d=>{const{action:m,hasChanged:g,dateState:x,isControlled:b}=d,E=!b&&!x.hasBeenModifiedSinceMount;return m.name==="setValueFromField"?!0:m.name==="setValueFromAction"?E&&["accept","today","clear"].includes(m.pickerAction)?!0:g(x.lastPublishedValue):m.name==="setValueFromView"&&m.selectionState!=="shallow"||m.name==="setValueFromShortcut"?E?!0:g(x.lastPublishedValue):!1},shouldCommitValue=d=>{const{action:m,hasChanged:g,dateState:x,isControlled:b,closeOnSelect:E}=d,v=!b&&!x.hasBeenModifiedSinceMount;return m.name==="setValueFromAction"?v&&["accept","today","clear"].includes(m.pickerAction)?!0:g(x.lastCommittedValue):m.name==="setValueFromView"&&m.selectionState==="finish"&&E?v?!0:g(x.lastCommittedValue):m.name==="setValueFromShortcut"?m.changeImportance==="accept"&&g(x.lastCommittedValue):!1},shouldClosePicker=d=>{const{action:m,closeOnSelect:g}=d;return m.name==="setValueFromAction"?!0:m.name==="setValueFromView"?m.selectionState==="finish"&&g:m.name==="setValueFromShortcut"?m.changeImportance==="accept":!1},usePickerValue=({props:d,valueManager:m,valueType:g,wrapperVariant:x,validator:b})=>{const{onAccept:E,onChange:v,value:S,defaultValue:C,closeOnSelect:T=x==="desktop",selectedSections:R,onSelectedSectionsChange:k,timezone:L}=d,{current:D}=reactExports.useRef(C),{current:A}=reactExports.useRef(S!==void 0),I=useUtils(),N=useLocalizationContext(),[z,j]=useControlled({controlled:R,default:null,name:"usePickerValue",state:"selectedSections"}),{isOpen:Y,setIsOpen:B}=useOpenState(d),[U,W]=reactExports.useState(()=>{let Me;return S!==void 0?Me=S:D!==void 0?Me=D:Me=m.emptyValue,{draft:Me,lastPublishedValue:Me,lastCommittedValue:Me,lastControlledValue:S,hasBeenModifiedSinceMount:!1}}),{timezone:V,handleValueChange:J}=useValueWithTimezone({timezone:L,value:S,defaultValue:D,onChange:v,valueManager:m});useValidation(_extends$1({},d,{value:U.draft,timezone:V}),b,m.isSameError,m.defaultErrorState);const Q=useEventCallback(Me=>{const Re={action:Me,dateState:U,hasChanged:Ge=>!m.areValuesEqual(I,Me.value,Ge),isControlled:A,closeOnSelect:T},De=shouldPublishValue(Re),Be=shouldCommitValue(Re),Le=shouldClosePicker(Re);if(W(Ge=>_extends$1({},Ge,{draft:Me.value,lastPublishedValue:De?Me.value:Ge.lastPublishedValue,lastCommittedValue:Be?Me.value:Ge.lastCommittedValue,hasBeenModifiedSinceMount:!0})),De){const Ie={validationError:Me.name==="setValueFromField"?Me.context.validationError:b({adapter:N,value:Me.value,props:_extends$1({},d,{value:Me.value,timezone:V})})};Me.name==="setValueFromShortcut"&&Me.shortcut!=null&&(Ie.shortcut=Me.shortcut),J(Me.value,Ie)}Be&&E&&E(Me.value),Le&&B(!1)});if(S!==void 0&&(U.lastControlledValue===void 0||!m.areValuesEqual(I,U.lastControlledValue,S))){const Me=m.areValuesEqual(I,U.draft,S);W(Re=>_extends$1({},Re,{lastControlledValue:S},Me?{}:{lastCommittedValue:S,lastPublishedValue:S,draft:S,hasBeenModifiedSinceMount:!0}))}const X=useEventCallback(()=>{Q({value:m.emptyValue,name:"setValueFromAction",pickerAction:"clear"})}),re=useEventCallback(()=>{Q({value:U.lastPublishedValue,name:"setValueFromAction",pickerAction:"accept"})}),ie=useEventCallback(()=>{Q({value:U.lastPublishedValue,name:"setValueFromAction",pickerAction:"dismiss"})}),oe=useEventCallback(()=>{Q({value:U.lastCommittedValue,name:"setValueFromAction",pickerAction:"cancel"})}),Z=useEventCallback(()=>{Q({value:m.getTodayValue(I,V,g),name:"setValueFromAction",pickerAction:"today"})}),ee=useEventCallback(()=>B(!0)),ce=useEventCallback(()=>B(!1)),fe=useEventCallback((Me,Re="partial")=>Q({name:"setValueFromView",value:Me,selectionState:Re})),ae=useEventCallback((Me,Re,De)=>Q({name:"setValueFromShortcut",value:Me,changeImportance:Re!=null?Re:"accept",shortcut:De})),ue=useEventCallback((Me,Re)=>Q({name:"setValueFromField",value:Me,context:Re})),pe=useEventCallback(Me=>{j(Me),k==null||k(Me)}),ge={onClear:X,onAccept:re,onDismiss:ie,onCancel:oe,onSetToday:Z,onOpen:ee,onClose:ce},ye={value:U.draft,onChange:ue,selectedSections:z,onSelectedSectionsChange:pe},Ee=reactExports.useMemo(()=>m.cleanValue(I,U.draft),[I,m,U.draft]),ve={value:Ee,onChange:fe,onClose:ce,open:Y,onSelectedSectionsChange:pe},$e=_extends$1({},ge,{value:Ee,onChange:fe,onSelectShortcut:ae,isValid:Me=>{const Re=b({adapter:N,value:Me,props:_extends$1({},d,{value:Me,timezone:V})});return!m.hasError(Re)}});return{open:Y,fieldProps:ye,viewProps:ve,layoutProps:$e,actions:ge}},_excluded$h=["className","sx"],usePickerViews=({props:d,propsFromPickerValue:m,additionalViewProps:g,inputRef:x,autoFocusView:b})=>{const{onChange:E,open:v,onSelectedSectionsChange:S,onClose:C}=m,{view:T,views:R,openTo:k,onViewChange:L,viewRenderers:D,timezone:A}=d,I=_objectWithoutPropertiesLoose(d,_excluded$h),{view:N,setView:z,defaultView:j,focusedView:Y,setFocusedView:B,setValueAndGoToNextView:U}=useViews({view:T,views:R,openTo:k,onChange:E,onViewChange:L,autoFocus:b}),{hasUIView:W,viewModeLookup:V}=reactExports.useMemo(()=>R.reduce((Z,ee)=>{let ce;return D[ee]!=null?ce="UI":ce="field",Z.viewModeLookup[ee]=ce,ce==="UI"&&(Z.hasUIView=!0),Z},{hasUIView:!1,viewModeLookup:{}}),[D,R]),J=reactExports.useMemo(()=>R.reduce((Z,ee)=>D[ee]!=null&&isTimeView(ee)?Z+1:Z,0),[D,R]),Q=V[N],X=useEventCallback(()=>Q==="UI"),[re,ie]=reactExports.useState(Q==="UI"?N:null);return re!==N&&V[N]==="UI"&&ie(N),useEnhancedEffect(()=>{Q==="field"&&v&&(C(),setTimeout(()=>{x==null||x.current.focus(),S(N)}))},[N]),useEnhancedEffect(()=>{if(!v)return;let Z=N;Q==="field"&&re!=null&&(Z=re),Z!==j&&V[Z]==="UI"&&V[j]==="UI"&&(Z=j),Z!==N&&z(Z),B(Z,!0)},[v]),{hasUIView:W,shouldRestoreFocus:X,layoutProps:{views:R,view:re,onViewChange:z},renderCurrentView:()=>{if(re==null)return null;const Z=D[re];return Z==null?null:Z(_extends$1({},I,g,m,{views:R,timezone:A,onChange:U,view:re,onViewChange:z,focusedView:Y,onFocusedViewChange:B,showViewSwitcher:J>1,timeViewsCount:J}))}}};function getOrientation(){return typeof window=="undefined"?"portrait":window.screen&&window.screen.orientation&&window.screen.orientation.angle?Math.abs(window.screen.orientation.angle)===90?"landscape":"portrait":window.orientation&&Math.abs(Number(window.orientation))===90?"landscape":"portrait"}const useIsLandscape=(d,m)=>{const[g,x]=reactExports.useState(getOrientation);return useEnhancedEffect(()=>{const E=()=>{x(getOrientation())};return window.addEventListener("orientationchange",E),()=>{window.removeEventListener("orientationchange",E)}},[]),arrayIncludes(d,["hours","minutes","seconds"])?!1:(m||g)==="landscape"},usePickerLayoutProps=({props:d,propsFromPickerValue:m,propsFromPickerViews:g,wrapperVariant:x})=>{const{orientation:b}=d,E=useIsLandscape(g.views,b);return{layoutProps:_extends$1({},g,m,{isLandscape:E,wrapperVariant:x,disabled:d.disabled,readOnly:d.readOnly})}},buildWarning=(d,m="warning")=>{let g=!1;const x=Array.isArray(d)?d.join(`
621
621
  `):d;return()=>{g||(g=!0,m==="error"?console.error(x):console.warn(x))}};buildWarning(["The `renderInput` prop has been removed in version 6.0 of the Date and Time Pickers.","You can replace it with the `textField` component slot in most cases.","For more information, please have a look at the migration guide (https://mui.com/x/migration/migration-pickers-v5/#input-renderer-required-in-v5)."]);const usePicker=({props:d,valueManager:m,valueType:g,wrapperVariant:x,inputRef:b,additionalViewProps:E,validator:v,autoFocusView:S})=>{const C=usePickerValue({props:d,valueManager:m,valueType:g,wrapperVariant:x,validator:v}),T=usePickerViews({props:d,inputRef:b,additionalViewProps:E,autoFocusView:S,propsFromPickerValue:C.viewProps}),R=usePickerLayoutProps({props:d,wrapperVariant:x,propsFromPickerValue:C.layoutProps,propsFromPickerViews:T.layoutProps});return{open:C.open,actions:C.actions,fieldProps:C.fieldProps,renderCurrentView:T.renderCurrentView,hasUIView:T.hasUIView,shouldRestoreFocus:T.shouldRestoreFocus,layoutProps:R.layoutProps}};function getPickersLayoutUtilityClass(d){return generateUtilityClass("MuiPickersLayout",d)}const pickersLayoutClasses=generateUtilityClasses("MuiPickersLayout",["root","landscape","contentWrapper","toolbar","actionBar","tabs","shortcuts"]),_excluded$g=["onAccept","onClear","onCancel","onSetToday","actions"];function PickersActionBar(d){const{onAccept:m,onClear:g,onCancel:x,onSetToday:b,actions:E}=d,v=_objectWithoutPropertiesLoose(d,_excluded$g),S=useLocaleText();if(E==null||E.length===0)return null;const C=E==null?void 0:E.map(T=>{switch(T){case"clear":return jsxRuntimeExports.jsx(Button,{onClick:g,children:S.clearButtonLabel},T);case"cancel":return jsxRuntimeExports.jsx(Button,{onClick:x,children:S.cancelButtonLabel},T);case"accept":return jsxRuntimeExports.jsx(Button,{onClick:m,children:S.okButtonLabel},T);case"today":return jsxRuntimeExports.jsx(Button,{onClick:b,children:S.todayButtonLabel},T);default:return null}});return jsxRuntimeExports.jsx(DialogActions,_extends$1({},v,{children:C}))}const _excluded$f=["items","changeImportance","isLandscape","onChange","isValid"],_excluded2$4=["getValue"];function PickersShortcuts(d){const{items:m,changeImportance:g,onChange:x,isValid:b}=d,E=_objectWithoutPropertiesLoose(d,_excluded$f);if(m==null||m.length===0)return null;const v=m.map(S=>{let{getValue:C}=S,T=_objectWithoutPropertiesLoose(S,_excluded2$4);const R=C({isValid:b});return{label:T.label,onClick:()=>{x(R,g,T)},disabled:!b(R)}});return jsxRuntimeExports.jsx(List,_extends$1({dense:!0,sx:[{maxHeight:VIEW_HEIGHT,maxWidth:200,overflow:"auto"},...Array.isArray(E.sx)?E.sx:[E.sx]]},E,{children:v.map(S=>jsxRuntimeExports.jsx(ListItem,{children:jsxRuntimeExports.jsx(Chip,_extends$1({},S))},S.label))}))}function toolbarHasView(d){return d.view!==null}const useUtilityClasses$c=d=>{const{classes:m,isLandscape:g}=d;return composeClasses({root:["root",g&&"landscape"],contentWrapper:["contentWrapper"],toolbar:["toolbar"],actionBar:["actionBar"],tabs:["tabs"],landscape:["landscape"],shortcuts:["shortcuts"]},getPickersLayoutUtilityClass,m)},usePickerLayout=d=>{var m,g;const{wrapperVariant:x,onAccept:b,onClear:E,onCancel:v,onSetToday:S,view:C,views:T,onViewChange:R,value:k,onChange:L,onSelectShortcut:D,isValid:A,isLandscape:I,disabled:N,readOnly:z,children:j,components:Y,componentsProps:B,slots:U,slotProps:W}=d,V=U!=null?U:uncapitalizeObjectKeys(Y),J=W!=null?W:B,Q=useUtilityClasses$c(d),X=(m=V==null?void 0:V.actionBar)!=null?m:PickersActionBar,re=useSlotProps({elementType:X,externalSlotProps:J==null?void 0:J.actionBar,additionalProps:{onAccept:b,onClear:E,onCancel:v,onSetToday:S,actions:x==="desktop"?[]:["cancel","accept"],className:Q.actionBar},ownerState:_extends$1({},d,{wrapperVariant:x})}),ie=jsxRuntimeExports.jsx(X,_extends$1({},re)),oe=V==null?void 0:V.toolbar,Z=useSlotProps({elementType:oe,externalSlotProps:J==null?void 0:J.toolbar,additionalProps:{isLandscape:I,onChange:L,value:k,view:C,onViewChange:R,views:T,disabled:N,readOnly:z,className:Q.toolbar},ownerState:_extends$1({},d,{wrapperVariant:x})}),ee=toolbarHasView(Z)&&oe?jsxRuntimeExports.jsx(oe,_extends$1({},Z)):null,ce=j,fe=V==null?void 0:V.tabs,ae=C&&fe?jsxRuntimeExports.jsx(fe,_extends$1({view:C,onViewChange:R,className:Q.tabs},J==null?void 0:J.tabs)):null,ue=(g=V==null?void 0:V.shortcuts)!=null?g:PickersShortcuts,pe=useSlotProps({elementType:ue,externalSlotProps:J==null?void 0:J.shortcuts,additionalProps:{isValid:A,isLandscape:I,onChange:D,className:Q.shortcuts},ownerState:{isValid:A,isLandscape:I,onChange:D,className:Q.shortcuts,wrapperVariant:x}}),ge=C&&ue?jsxRuntimeExports.jsx(ue,_extends$1({},pe)):null;return{toolbar:ee,content:ce,tabs:ae,actionBar:ie,shortcuts:ge}},useUtilityClasses$b=d=>{const{isLandscape:m,classes:g}=d;return composeClasses({root:["root",m&&"landscape"],contentWrapper:["contentWrapper"]},getPickersLayoutUtilityClass,g)},PickersLayoutRoot=styled("div",{name:"MuiPickersLayout",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d,ownerState:m})=>({display:"grid",gridAutoColumns:"max-content auto max-content",gridAutoRows:"max-content auto max-content",[`& .${pickersLayoutClasses.toolbar}`]:m.isLandscape?{gridColumn:d.direction==="rtl"?3:1,gridRow:"2 / 3"}:{gridColumn:"2 / 4",gridRow:1},[`.${pickersLayoutClasses.shortcuts}`]:m.isLandscape?{gridColumn:"2 / 4",gridRow:1}:{gridColumn:d.direction==="rtl"?3:1,gridRow:"2 / 3"},[`& .${pickersLayoutClasses.actionBar}`]:{gridColumn:"1 / 4",gridRow:3}}));PickersLayoutRoot.propTypes={as:PropTypes.elementType,ownerState:PropTypes.shape({isLandscape:PropTypes.bool.isRequired}).isRequired,sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object])};const PickersLayoutContentWrapper=styled("div",{name:"MuiPickersLayout",slot:"ContentWrapper",overridesResolver:(d,m)=>m.contentWrapper})({gridColumn:2,gridRow:2,display:"flex",flexDirection:"column"}),PickersLayout=function(m){const g=useThemeProps({props:m,name:"MuiPickersLayout"}),{toolbar:x,content:b,tabs:E,actionBar:v,shortcuts:S}=usePickerLayout(g),{sx:C,className:T,isLandscape:R,ref:k,wrapperVariant:L}=g,D=g,A=useUtilityClasses$b(D);return jsxRuntimeExports.jsxs(PickersLayoutRoot,{ref:k,sx:C,className:clsx(T,A.root),ownerState:D,children:[R?S:x,R?x:S,jsxRuntimeExports.jsx(PickersLayoutContentWrapper,{className:A.contentWrapper,children:L==="desktop"?jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[b,E]}):jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[E,b]})}),v]})},validateTime=({adapter:d,value:m,props:g})=>{if(m===null)return null;const{minTime:x,maxTime:b,minutesStep:E,shouldDisableClock:v,shouldDisableTime:S,disableIgnoringDatePartForTimeValidation:C=!1,disablePast:T,disableFuture:R,timezone:k}=g,L=d.utils.dateWithTimezone(void 0,k),D=createIsAfterIgnoreDatePart(C,d.utils);switch(!0){case!d.utils.isValid(m):return"invalidDate";case!!(x&&D(x,m)):return"minTime";case!!(b&&D(m,b)):return"maxTime";case!!(R&&d.utils.isAfter(m,L)):return"disableFuture";case!!(T&&d.utils.isBefore(m,L)):return"disablePast";case!!(S&&S(m,"hours")):return"shouldDisableTime-hours";case!!(S&&S(m,"minutes")):return"shouldDisableTime-minutes";case!!(S&&S(m,"seconds")):return"shouldDisableTime-seconds";case!!(v&&v(d.utils.getHours(m),"hours")):return"shouldDisableClock-hours";case!!(v&&v(d.utils.getMinutes(m),"minutes")):return"shouldDisableClock-minutes";case!!(v&&v(d.utils.getSeconds(m),"seconds")):return"shouldDisableClock-seconds";case!!(E&&d.utils.getMinutes(m)%E!==0):return"minutesStep";default:return null}},validateDateTime=({props:d,value:m,adapter:g})=>{const x=validateDate({adapter:g,value:m,props:d});return x!==null?x:validateTime({adapter:g,value:m,props:d})},getPickersSlideTransitionUtilityClass=d=>generateUtilityClass("MuiPickersSlideTransition",d),pickersSlideTransitionClasses=generateUtilityClasses("MuiPickersSlideTransition",["root","slideEnter-left","slideEnter-right","slideEnterActive","slideExit","slideExitActiveLeft-left","slideExitActiveLeft-right"]),_excluded$e=["children","className","reduceAnimations","slideDirection","transKey","classes"],useUtilityClasses$a=d=>{const{classes:m,slideDirection:g}=d,x={root:["root"],exit:["slideExit"],enterActive:["slideEnterActive"],enter:[`slideEnter-${g}`],exitActive:[`slideExitActiveLeft-${g}`]};return composeClasses(x,getPickersSlideTransitionUtilityClass,m)},PickersSlideTransitionRoot=styled(TransitionGroup,{name:"MuiPickersSlideTransition",slot:"Root",overridesResolver:(d,m)=>[m.root,{[`.${pickersSlideTransitionClasses["slideEnter-left"]}`]:m["slideEnter-left"]},{[`.${pickersSlideTransitionClasses["slideEnter-right"]}`]:m["slideEnter-right"]},{[`.${pickersSlideTransitionClasses.slideEnterActive}`]:m.slideEnterActive},{[`.${pickersSlideTransitionClasses.slideExit}`]:m.slideExit},{[`.${pickersSlideTransitionClasses["slideExitActiveLeft-left"]}`]:m["slideExitActiveLeft-left"]},{[`.${pickersSlideTransitionClasses["slideExitActiveLeft-right"]}`]:m["slideExitActiveLeft-right"]}]})(({theme:d})=>{const m=d.transitions.create("transform",{duration:d.transitions.duration.complex,easing:"cubic-bezier(0.35, 0.8, 0.4, 1)"});return{display:"block",position:"relative",overflowX:"hidden","& > *":{position:"absolute",top:0,right:0,left:0},[`& .${pickersSlideTransitionClasses["slideEnter-left"]}`]:{willChange:"transform",transform:"translate(100%)",zIndex:1},[`& .${pickersSlideTransitionClasses["slideEnter-right"]}`]:{willChange:"transform",transform:"translate(-100%)",zIndex:1},[`& .${pickersSlideTransitionClasses.slideEnterActive}`]:{transform:"translate(0%)",transition:m},[`& .${pickersSlideTransitionClasses.slideExit}`]:{transform:"translate(0%)"},[`& .${pickersSlideTransitionClasses["slideExitActiveLeft-left"]}`]:{willChange:"transform",transform:"translate(-100%)",transition:m,zIndex:0},[`& .${pickersSlideTransitionClasses["slideExitActiveLeft-right"]}`]:{willChange:"transform",transform:"translate(100%)",transition:m,zIndex:0}}});function PickersSlideTransition(d){const m=useThemeProps({props:d,name:"MuiPickersSlideTransition"}),{children:g,className:x,reduceAnimations:b,transKey:E}=m,v=_objectWithoutPropertiesLoose(m,_excluded$e),S=useUtilityClasses$a(m),C=useTheme$1();if(b)return jsxRuntimeExports.jsx("div",{className:clsx(S.root,x),children:g});const T={exit:S.exit,enterActive:S.enterActive,enter:S.enter,exitActive:S.exitActive};return jsxRuntimeExports.jsx(PickersSlideTransitionRoot,{className:clsx(S.root,x),childFactory:R=>reactExports.cloneElement(R,{classNames:T}),role:"presentation",children:jsxRuntimeExports.jsx(CSSTransition,_extends$1({mountOnEnter:!0,unmountOnExit:!0,timeout:C.transitions.duration.complex,classNames:T},v,{children:g}),E)})}const useIsDateDisabled=({shouldDisableDate:d,shouldDisableMonth:m,shouldDisableYear:g,minDate:x,maxDate:b,disableFuture:E,disablePast:v,timezone:S})=>{const C=useLocalizationContext();return reactExports.useCallback(T=>validateDate({adapter:C,value:T,props:{shouldDisableDate:d,shouldDisableMonth:m,shouldDisableYear:g,minDate:x,maxDate:b,disableFuture:E,disablePast:v,timezone:S}})!==null,[C,d,m,g,x,b,E,v,S])},getDayCalendarUtilityClass=d=>generateUtilityClass("MuiDayCalendar",d);generateUtilityClasses("MuiDayCalendar",["root","header","weekDayLabel","loadingContainer","slideTransition","monthContainer","weekContainer","weekNumberLabel","weekNumber"]);const _excluded$d=["parentProps","day","focusableDay","selectedDays","isDateDisabled","currentMonthNumber","isViewFocused"],_excluded2$3=["ownerState"],useUtilityClasses$9=d=>{const{classes:m}=d;return composeClasses({root:["root"],header:["header"],weekDayLabel:["weekDayLabel"],loadingContainer:["loadingContainer"],slideTransition:["slideTransition"],monthContainer:["monthContainer"],weekContainer:["weekContainer"],weekNumberLabel:["weekNumberLabel"],weekNumber:["weekNumber"]},getDayCalendarUtilityClass,m)},weeksContainerHeight=(DAY_SIZE+DAY_MARGIN*2)*6,PickersCalendarDayRoot=styled("div",{name:"MuiDayCalendar",slot:"Root",overridesResolver:(d,m)=>m.root})({}),PickersCalendarDayHeader=styled("div",{name:"MuiDayCalendar",slot:"Header",overridesResolver:(d,m)=>m.header})({display:"flex",justifyContent:"center",alignItems:"center"}),PickersCalendarWeekDayLabel=styled(Typography,{name:"MuiDayCalendar",slot:"WeekDayLabel",overridesResolver:(d,m)=>m.weekDayLabel})(({theme:d})=>({width:36,height:40,margin:"0 2px",textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",color:(d.vars||d).palette.text.secondary})),PickersCalendarWeekNumberLabel=styled(Typography,{name:"MuiDayCalendar",slot:"WeekNumberLabel",overridesResolver:(d,m)=>m.weekNumberLabel})(({theme:d})=>({width:36,height:40,margin:"0 2px",textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",color:d.palette.text.disabled})),PickersCalendarWeekNumber=styled(Typography,{name:"MuiDayCalendar",slot:"WeekNumber",overridesResolver:(d,m)=>m.weekNumber})(({theme:d})=>_extends$1({},d.typography.caption,{width:DAY_SIZE,height:DAY_SIZE,padding:0,margin:`0 ${DAY_MARGIN}px`,color:d.palette.text.disabled,fontSize:"0.75rem",alignItems:"center",justifyContent:"center",display:"inline-flex"})),PickersCalendarLoadingContainer=styled("div",{name:"MuiDayCalendar",slot:"LoadingContainer",overridesResolver:(d,m)=>m.loadingContainer})({display:"flex",justifyContent:"center",alignItems:"center",minHeight:weeksContainerHeight}),PickersCalendarSlideTransition=styled(PickersSlideTransition,{name:"MuiDayCalendar",slot:"SlideTransition",overridesResolver:(d,m)=>m.slideTransition})({minHeight:weeksContainerHeight}),PickersCalendarWeekContainer=styled("div",{name:"MuiDayCalendar",slot:"MonthContainer",overridesResolver:(d,m)=>m.monthContainer})({overflow:"hidden"}),PickersCalendarWeek=styled("div",{name:"MuiDayCalendar",slot:"WeekContainer",overridesResolver:(d,m)=>m.weekContainer})({margin:`${DAY_MARGIN}px 0`,display:"flex",justifyContent:"center"});function WrappedDay(d){var m,g,x;let{parentProps:b,day:E,focusableDay:v,selectedDays:S,isDateDisabled:C,currentMonthNumber:T,isViewFocused:R}=d,k=_objectWithoutPropertiesLoose(d,_excluded$d);const{disabled:L,disableHighlightToday:D,isMonthSwitchingAnimating:A,showDaysOutsideCurrentMonth:I,components:N,componentsProps:z,slots:j,slotProps:Y,timezone:B}=b,U=useUtils(),W=useNow(B),V=v!==null&&U.isSameDay(E,v),J=S.some(fe=>U.isSameDay(fe,E)),Q=U.isSameDay(E,W),X=(m=(g=j==null?void 0:j.day)!=null?g:N==null?void 0:N.Day)!=null?m:PickersDay,re=useSlotProps({elementType:X,externalSlotProps:(x=Y==null?void 0:Y.day)!=null?x:z==null?void 0:z.day,additionalProps:_extends$1({disableHighlightToday:D,showDaysOutsideCurrentMonth:I,role:"gridcell",isAnimating:A,"data-timestamp":U.toJsDate(E).valueOf()},k),ownerState:_extends$1({},b,{day:E,selected:J})}),ie=_objectWithoutPropertiesLoose(re,_excluded2$3),oe=reactExports.useMemo(()=>L||C(E),[L,C,E]),Z=reactExports.useMemo(()=>U.getMonth(E)!==T,[U,E,T]),ee=reactExports.useMemo(()=>{const fe=U.startOfMonth(U.setMonth(E,T));return I?U.isSameDay(E,U.startOfWeek(fe)):U.isSameDay(E,fe)},[T,E,I,U]),ce=reactExports.useMemo(()=>{const fe=U.endOfMonth(U.setMonth(E,T));return I?U.isSameDay(E,U.endOfWeek(fe)):U.isSameDay(E,fe)},[T,E,I,U]);return jsxRuntimeExports.jsx(X,_extends$1({},ie,{day:E,disabled:oe,autoFocus:R&&V,today:Q,outsideCurrentMonth:Z,isFirstVisibleCell:ee,isLastVisibleCell:ce,selected:J,tabIndex:V?0:-1,"aria-selected":J,"aria-current":Q?"date":void 0}))}function DayCalendar(d){const m=useThemeProps({props:d,name:"MuiDayCalendar"}),{onFocusedDayChange:g,className:x,currentMonth:b,selectedDays:E,focusedDay:v,loading:S,onSelectedDaysChange:C,onMonthSwitchingAnimationEnd:T,readOnly:R,reduceAnimations:k,renderLoading:L=()=>jsxRuntimeExports.jsx("span",{children:"..."}),slideDirection:D,TransitionProps:A,disablePast:I,disableFuture:N,minDate:z,maxDate:j,shouldDisableDate:Y,shouldDisableMonth:B,shouldDisableYear:U,dayOfWeekFormatter:W,hasFocus:V,onFocusedViewChange:J,gridLabelId:Q,displayWeekNumber:X,fixedWeekNumber:re,autoFocus:ie,timezone:oe}=m,Z=useNow(oe),ee=useUtils(),ce=useUtilityClasses$9(m),ae=useTheme$1().direction==="rtl",ue=W||((Oe,ot)=>ee.format(ot,"weekdayShort").charAt(0).toUpperCase()),pe=useIsDateDisabled({shouldDisableDate:Y,shouldDisableMonth:B,shouldDisableYear:U,minDate:z,maxDate:j,disablePast:I,disableFuture:N,timezone:oe}),ge=useLocaleText(),[ye,Ee]=useControlled({name:"DayCalendar",state:"hasFocus",controlled:V,default:ie!=null?ie:!1}),[ve,Se]=reactExports.useState(()=>v||Z),$e=useEventCallback(Oe=>{R||C(Oe)}),Me=Oe=>{pe(Oe)||(g(Oe),Se(Oe),J==null||J(!0),Ee(!0))},Re=useEventCallback((Oe,ot)=>{switch(Oe.key){case"ArrowUp":Me(ee.addDays(ot,-7)),Oe.preventDefault();break;case"ArrowDown":Me(ee.addDays(ot,7)),Oe.preventDefault();break;case"ArrowLeft":{const ke=ee.addDays(ot,ae?1:-1),Ne=ee.addMonths(ot,ae?1:-1),Ke=findClosestEnabledDate({utils:ee,date:ke,minDate:ae?ke:ee.startOfMonth(Ne),maxDate:ae?ee.endOfMonth(Ne):ke,isDateDisabled:pe,timezone:oe});Me(Ke||ke),Oe.preventDefault();break}case"ArrowRight":{const ke=ee.addDays(ot,ae?-1:1),Ne=ee.addMonths(ot,ae?-1:1),Ke=findClosestEnabledDate({utils:ee,date:ke,minDate:ae?ee.startOfMonth(Ne):ke,maxDate:ae?ke:ee.endOfMonth(Ne),isDateDisabled:pe,timezone:oe});Me(Ke||ke),Oe.preventDefault();break}case"Home":Me(ee.startOfWeek(ot)),Oe.preventDefault();break;case"End":Me(ee.endOfWeek(ot)),Oe.preventDefault();break;case"PageUp":Me(ee.addMonths(ot,1)),Oe.preventDefault();break;case"PageDown":Me(ee.addMonths(ot,-1)),Oe.preventDefault();break}}),De=useEventCallback((Oe,ot)=>Me(ot)),Be=useEventCallback((Oe,ot)=>{ye&&ee.isSameDay(ve,ot)&&(J==null||J(!1))}),Le=ee.getMonth(b),Ge=reactExports.useMemo(()=>E.filter(Oe=>!!Oe).map(Oe=>ee.startOfDay(Oe)),[ee,E]),Ie=Le,Ye=reactExports.useMemo(()=>reactExports.createRef(),[Ie]),He=ee.startOfWeek(Z),Ve=reactExports.useMemo(()=>{const Oe=ee.startOfMonth(b),ot=ee.endOfMonth(b);return pe(ve)||ee.isAfterDay(ve,ot)||ee.isBeforeDay(ve,Oe)?findClosestEnabledDate({utils:ee,date:ve,minDate:Oe,maxDate:ot,disablePast:I,disableFuture:N,isDateDisabled:pe,timezone:oe}):ve},[b,N,I,ve,pe,ee,oe]),rt=reactExports.useMemo(()=>{const Oe=ee.setTimezone(b,oe),ot=ee.getWeekArray(Oe);let ke=ee.addMonths(Oe,1);for(;re&&ot.length<re;){const Ne=ee.getWeekArray(ke),Ke=ee.isSameDay(ot[ot.length-1][0],Ne[0][0]);Ne.slice(Ke?1:0).forEach(Xe=>{ot.length<re&&ot.push(Xe)}),ke=ee.addMonths(ke,1)}return ot},[b,re,ee,oe]);return jsxRuntimeExports.jsxs(PickersCalendarDayRoot,{role:"grid","aria-labelledby":Q,className:ce.root,children:[jsxRuntimeExports.jsxs(PickersCalendarDayHeader,{role:"row",className:ce.header,children:[X&&jsxRuntimeExports.jsx(PickersCalendarWeekNumberLabel,{variant:"caption",role:"columnheader","aria-label":ge.calendarWeekNumberHeaderLabel,className:ce.weekNumberLabel,children:ge.calendarWeekNumberHeaderText}),getWeekdays(ee,Z).map((Oe,ot)=>{var ke;const Ne=ee.format(Oe,"weekdayShort");return jsxRuntimeExports.jsx(PickersCalendarWeekDayLabel,{variant:"caption",role:"columnheader","aria-label":ee.format(ee.addDays(He,ot),"weekday"),className:ce.weekDayLabel,children:(ke=ue==null?void 0:ue(Ne,Oe))!=null?ke:Ne},Ne+ot.toString())})]}),S?jsxRuntimeExports.jsx(PickersCalendarLoadingContainer,{className:ce.loadingContainer,children:L()}):jsxRuntimeExports.jsx(PickersCalendarSlideTransition,_extends$1({transKey:Ie,onExited:T,reduceAnimations:k,slideDirection:D,className:clsx(x,ce.slideTransition)},A,{nodeRef:Ye,children:jsxRuntimeExports.jsx(PickersCalendarWeekContainer,{ref:Ye,role:"rowgroup",className:ce.monthContainer,children:rt.map((Oe,ot)=>jsxRuntimeExports.jsxs(PickersCalendarWeek,{role:"row",className:ce.weekContainer,"aria-rowindex":ot+1,children:[X&&jsxRuntimeExports.jsx(PickersCalendarWeekNumber,{className:ce.weekNumber,role:"rowheader","aria-label":ge.calendarWeekNumberAriaLabelText(ee.getWeekNumber(Oe[0])),children:ge.calendarWeekNumberText(ee.getWeekNumber(Oe[0]))}),Oe.map((ke,Ne)=>jsxRuntimeExports.jsx(WrappedDay,{parentProps:m,day:ke,selectedDays:Ge,focusableDay:Ve,onKeyDown:Re,onFocus:De,onBlur:Be,onDaySelect:$e,isDateDisabled:pe,currentMonthNumber:Le,isViewFocused:ye,"aria-colindex":Ne+1},ke.toString()))]},`week-${Oe[0]}`))})}))]})}const createCalendarStateReducer=(d,m,g)=>(x,b)=>{switch(b.type){case"changeMonth":return _extends$1({},x,{slideDirection:b.direction,currentMonth:b.newMonth,isMonthSwitchingAnimating:!d});case"finishMonthSwitchingAnimation":return _extends$1({},x,{isMonthSwitchingAnimating:!1});case"changeFocusedDay":{if(x.focusedDay!=null&&b.focusedDay!=null&&g.isSameDay(b.focusedDay,x.focusedDay))return x;const E=b.focusedDay!=null&&!m&&!g.isSameMonth(x.currentMonth,b.focusedDay);return _extends$1({},x,{focusedDay:b.focusedDay,isMonthSwitchingAnimating:E&&!d&&!b.withoutMonthSwitchingAnimation,currentMonth:E?g.startOfMonth(b.focusedDay):x.currentMonth,slideDirection:b.focusedDay!=null&&g.isAfterDay(b.focusedDay,x.currentMonth)?"left":"right"})}default:throw new Error("missing support")}},useCalendarState=d=>{const{value:m,referenceDate:g,defaultCalendarMonth:x,disableFuture:b,disablePast:E,disableSwitchToMonthOnDayFocus:v=!1,maxDate:S,minDate:C,onMonthChange:T,reduceAnimations:R,shouldDisableDate:k,timezone:L}=d,D=useUtils(),A=reactExports.useRef(createCalendarStateReducer(!!R,v,D)).current,I=reactExports.useMemo(()=>{let V=null;return g?V=g:x&&(V=D.startOfMonth(x)),singleItemValueManager.getInitialReferenceValue({value:m,utils:D,timezone:L,props:d,referenceDate:V,granularity:SECTION_TYPE_GRANULARITY.day})},[]),[N,z]=reactExports.useReducer(A,{isMonthSwitchingAnimating:!1,focusedDay:I,currentMonth:D.startOfMonth(I),slideDirection:"left"}),j=reactExports.useCallback(V=>{z(_extends$1({type:"changeMonth"},V)),T&&T(V.newMonth)},[T]),Y=reactExports.useCallback(V=>{const J=V;D.isSameMonth(J,N.currentMonth)||j({newMonth:D.startOfMonth(J),direction:D.isAfterDay(J,N.currentMonth)?"left":"right"})},[N.currentMonth,j,D]),B=useIsDateDisabled({shouldDisableDate:k,minDate:C,maxDate:S,disableFuture:b,disablePast:E,timezone:L}),U=reactExports.useCallback(()=>{z({type:"finishMonthSwitchingAnimation"})},[]),W=useEventCallback((V,J)=>{B(V)||z({type:"changeFocusedDay",focusedDay:V,withoutMonthSwitchingAnimation:J})});return{referenceDate:I,calendarState:N,changeMonth:Y,changeFocusedDay:W,isDateDisabled:B,onMonthSwitchingAnimationEnd:U,handleChangeMonth:j}},_excluded$c=["ownerState"],useClearableField=({clearable:d,fieldProps:m,InputProps:g,onClear:x,slots:b,slotProps:E,components:v,componentsProps:S})=>{var C,T,R,k,L,D;const A=useLocaleText(),I=(C=(T=b==null?void 0:b.clearButton)!=null?T:v==null?void 0:v.ClearButton)!=null?C:IconButton,N=useSlotProps({elementType:I,externalSlotProps:(R=E==null?void 0:E.clearButton)!=null?R:S==null?void 0:S.clearButton,ownerState:{},className:"clearButton",additionalProps:{title:A.fieldClearLabel}}),z=_objectWithoutPropertiesLoose(N,_excluded$c),j=(k=(L=b==null?void 0:b.clearIcon)!=null?L:v==null?void 0:v.ClearIcon)!=null?k:ClearIcon,Y=useSlotProps({elementType:j,externalSlotProps:(D=E==null?void 0:E.clearIcon)!=null?D:S==null?void 0:S.clearIcon,ownerState:{}}),B=_extends$1({},g,{endAdornment:jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[d&&jsxRuntimeExports.jsx(InputAdornment,{position:"end",sx:{marginRight:g!=null&&g.endAdornment?-1:-1.5},children:jsxRuntimeExports.jsx(I,_extends$1({},z,{onClick:x,children:jsxRuntimeExports.jsx(j,_extends$1({fontSize:"small"},Y))}))}),g==null?void 0:g.endAdornment]})}),U=_extends$1({},m,{sx:[{"& .clearButton":{opacity:1},"@media (pointer: fine)":{"& .clearButton":{opacity:0},"&:hover, &:focus-within":{".clearButton":{opacity:1}}}},...Array.isArray(m.sx)?m.sx:[m.sx]]});return{InputProps:B,fieldProps:U}},useDefaultizedDateTimeField=d=>{var m,g,x,b,E,v,S,C;const T=useUtils(),R=useDefaultDates(),L=((m=d.ampm)!=null?m:T.is12HourCycleInCurrentLocale())?T.formats.keyboardDateTime12h:T.formats.keyboardDateTime24h;return _extends$1({},d,{disablePast:(g=d.disablePast)!=null?g:!1,disableFuture:(x=d.disableFuture)!=null?x:!1,format:(b=d.format)!=null?b:L,disableIgnoringDatePartForTimeValidation:!!(d.minDateTime||d.maxDateTime),minDate:applyDefaultDate(T,(E=d.minDateTime)!=null?E:d.minDate,R.minDate),maxDate:applyDefaultDate(T,(v=d.maxDateTime)!=null?v:d.maxDate,R.maxDate),minTime:(S=d.minDateTime)!=null?S:d.minTime,maxTime:(C=d.maxDateTime)!=null?C:d.maxTime})},useDateTimeField=({props:d,inputRef:m})=>{const g=useDefaultizedDateTimeField(d),{forwardedProps:x,internalProps:b}=splitFieldInternalAndForwardedProps(g);return useField({inputRef:m,forwardedProps:x,internalProps:b,valueManager:singleItemValueManager,fieldValueManager:singleItemFieldValueManager,validator:validateDateTime})},_excluded$b=["components","componentsProps","slots","slotProps","InputProps","inputProps"],_excluded2$2=["inputRef"],_excluded3$1=["ref","onPaste","onKeyDown","inputMode","readOnly","clearable","onClear"],DateTimeField$1=reactExports.forwardRef(function(m,g){var x,b,E;const v=useThemeProps({props:m,name:"MuiDateTimeField"}),{components:S,componentsProps:C,slots:T,slotProps:R,InputProps:k,inputProps:L}=v,D=_objectWithoutPropertiesLoose(v,_excluded$b),A=v,I=(x=(b=T==null?void 0:T.textField)!=null?b:S==null?void 0:S.TextField)!=null?x:TextField,N=useSlotProps({elementType:I,externalSlotProps:(E=R==null?void 0:R.textField)!=null?E:C==null?void 0:C.textField,externalForwardedProps:D,ownerState:A}),{inputRef:z}=N,j=_objectWithoutPropertiesLoose(N,_excluded2$2);j.inputProps=_extends$1({},L,j.inputProps),j.InputProps=_extends$1({},k,j.InputProps);const Y=useDateTimeField({props:j,inputRef:z}),{ref:B,onPaste:U,onKeyDown:W,inputMode:V,readOnly:J,clearable:Q,onClear:X}=Y,re=_objectWithoutPropertiesLoose(Y,_excluded3$1),{InputProps:ie,fieldProps:oe}=useClearableField({onClear:X,clearable:Q,fieldProps:re,InputProps:re.InputProps,slots:T,slotProps:R,components:S,componentsProps:C});return jsxRuntimeExports.jsx(I,_extends$1({ref:g},oe,{InputProps:_extends$1({},ie,{readOnly:J}),inputProps:_extends$1({},re.inputProps,{inputMode:V,onPaste:U,onKeyDown:W,ref:B})}))}),getPickersFadeTransitionGroupUtilityClass=d=>generateUtilityClass("MuiPickersFadeTransitionGroup",d);generateUtilityClasses("MuiPickersFadeTransitionGroup",["root"]);const useUtilityClasses$8=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getPickersFadeTransitionGroupUtilityClass,m)},PickersFadeTransitionGroupRoot=styled(TransitionGroup,{name:"MuiPickersFadeTransitionGroup",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"block",position:"relative"});function PickersFadeTransitionGroup(d){const m=useThemeProps({props:d,name:"MuiPickersFadeTransitionGroup"}),{children:g,className:x,reduceAnimations:b,transKey:E}=m,v=useUtilityClasses$8(m),S=useTheme$1();return b?g:jsxRuntimeExports.jsx(PickersFadeTransitionGroupRoot,{className:clsx(v.root,x),children:jsxRuntimeExports.jsx(Fade,{appear:!1,mountOnEnter:!0,unmountOnExit:!0,timeout:{appear:S.transitions.duration.enteringScreen,enter:S.transitions.duration.enteringScreen,exit:0},children:g},E)})}function getPickersMonthUtilityClass(d){return generateUtilityClass("MuiPickersMonth",d)}const pickersMonthClasses=generateUtilityClasses("MuiPickersMonth",["root","monthButton","disabled","selected"]),_excluded$a=["autoFocus","children","disabled","selected","value","tabIndex","onClick","onKeyDown","onFocus","onBlur","aria-current","aria-label","monthsPerRow"],useUtilityClasses$7=d=>{const{disabled:m,selected:g,classes:x}=d;return composeClasses({root:["root"],monthButton:["monthButton",m&&"disabled",g&&"selected"]},getPickersMonthUtilityClass,x)},PickersMonthRoot=styled("div",{name:"MuiPickersMonth",slot:"Root",overridesResolver:(d,m)=>[m.root]})(({ownerState:d})=>({flexBasis:d.monthsPerRow===3?"33.3%":"25%",display:"flex",alignItems:"center",justifyContent:"center"})),PickersMonthButton=styled("button",{name:"MuiPickersMonth",slot:"MonthButton",overridesResolver:(d,m)=>[m.monthButton,{[`&.${pickersMonthClasses.disabled}`]:m.disabled},{[`&.${pickersMonthClasses.selected}`]:m.selected}]})(({theme:d})=>_extends$1({color:"unset",backgroundColor:"transparent",border:0,outline:0},d.typography.subtitle1,{margin:"8px 0",height:36,width:72,borderRadius:18,cursor:"pointer","&:focus":{backgroundColor:d.vars?`rgba(${d.vars.palette.action.activeChannel} / ${d.vars.palette.action.hoverOpacity})`:alpha(d.palette.action.active,d.palette.action.hoverOpacity)},"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.action.activeChannel} / ${d.vars.palette.action.hoverOpacity})`:alpha(d.palette.action.active,d.palette.action.hoverOpacity)},"&:disabled":{cursor:"auto",pointerEvents:"none"},[`&.${pickersMonthClasses.disabled}`]:{color:(d.vars||d).palette.text.secondary},[`&.${pickersMonthClasses.selected}`]:{color:(d.vars||d).palette.primary.contrastText,backgroundColor:(d.vars||d).palette.primary.main,"&:focus, &:hover":{backgroundColor:(d.vars||d).palette.primary.dark}}})),PickersMonth=reactExports.memo(function(m){const g=useThemeProps({props:m,name:"MuiPickersMonth"}),{autoFocus:x,children:b,disabled:E,selected:v,value:S,tabIndex:C,onClick:T,onKeyDown:R,onFocus:k,onBlur:L,"aria-current":D,"aria-label":A}=g,I=_objectWithoutPropertiesLoose(g,_excluded$a),N=reactExports.useRef(null),z=useUtilityClasses$7(g);return useEnhancedEffect(()=>{if(x){var j;(j=N.current)==null||j.focus()}},[x]),jsxRuntimeExports.jsx(PickersMonthRoot,_extends$1({className:z.root,ownerState:g},I,{children:jsxRuntimeExports.jsx(PickersMonthButton,{ref:N,disabled:E,type:"button",role:"radio",tabIndex:E?-1:C,"aria-current":D,"aria-checked":v,"aria-label":A,onClick:j=>T(j,S),onKeyDown:j=>R(j,S),onFocus:j=>k(j,S),onBlur:j=>L(j,S),className:z.monthButton,ownerState:g,children:b})}))});function getMonthCalendarUtilityClass(d){return generateUtilityClass("MuiMonthCalendar",d)}generateUtilityClasses("MuiMonthCalendar",["root"]);const _excluded$9=["className","value","defaultValue","referenceDate","disabled","disableFuture","disablePast","maxDate","minDate","onChange","shouldDisableMonth","readOnly","disableHighlightToday","autoFocus","onMonthFocus","hasFocus","onFocusedViewChange","monthsPerRow","timezone","gridLabelId"],useUtilityClasses$6=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getMonthCalendarUtilityClass,m)};function useMonthCalendarDefaultizedProps(d,m){const g=useUtils(),x=useDefaultDates(),b=useThemeProps({props:d,name:m});return _extends$1({disableFuture:!1,disablePast:!1},b,{minDate:applyDefaultDate(g,b.minDate,x.minDate),maxDate:applyDefaultDate(g,b.maxDate,x.maxDate)})}const MonthCalendarRoot=styled("div",{name:"MuiMonthCalendar",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"flex",flexWrap:"wrap",alignContent:"stretch",padding:"0 4px",width:DIALOG_WIDTH,boxSizing:"border-box"}),MonthCalendar=reactExports.forwardRef(function(m,g){const x=useMonthCalendarDefaultizedProps(m,"MuiMonthCalendar"),{className:b,value:E,defaultValue:v,referenceDate:S,disabled:C,disableFuture:T,disablePast:R,maxDate:k,minDate:L,onChange:D,shouldDisableMonth:A,readOnly:I,disableHighlightToday:N,autoFocus:z=!1,onMonthFocus:j,hasFocus:Y,onFocusedViewChange:B,monthsPerRow:U=3,timezone:W,gridLabelId:V}=x,J=_objectWithoutPropertiesLoose(x,_excluded$9),{value:Q,handleValueChange:X,timezone:re}=useControlledValueWithTimezone({name:"MonthCalendar",timezone:W,value:E,defaultValue:v,onChange:D,valueManager:singleItemValueManager}),ie=useNow(re),oe=useTheme$3(),Z=useUtils(),ee=reactExports.useMemo(()=>singleItemValueManager.getInitialReferenceValue({value:Q,utils:Z,props:x,timezone:re,referenceDate:S,granularity:SECTION_TYPE_GRANULARITY.month}),[]),ce=x,fe=useUtilityClasses$6(ce),ae=reactExports.useMemo(()=>Z.getMonth(ie),[Z,ie]),ue=reactExports.useMemo(()=>Q!=null?Z.getMonth(Q):N?null:Z.getMonth(ee),[Q,Z,N,ee]),[pe,ge]=reactExports.useState(()=>ue||ae),[ye,Ee]=useControlled({name:"MonthCalendar",state:"hasFocus",controlled:Y,default:z!=null?z:!1}),ve=useEventCallback(Le=>{Ee(Le),B&&B(Le)}),Se=reactExports.useCallback(Le=>{const Ge=Z.startOfMonth(R&&Z.isAfter(ie,L)?ie:L),Ie=Z.startOfMonth(T&&Z.isBefore(ie,k)?ie:k),Ye=Z.startOfMonth(Le);return Z.isBefore(Ye,Ge)||Z.isAfter(Ye,Ie)?!0:A?A(Ye):!1},[T,R,k,L,ie,A,Z]),$e=useEventCallback((Le,Ge)=>{if(I)return;const Ie=Z.setMonth(Q!=null?Q:ee,Ge);X(Ie)}),Me=useEventCallback(Le=>{Se(Z.setMonth(Q!=null?Q:ee,Le))||(ge(Le),ve(!0),j&&j(Le))});reactExports.useEffect(()=>{ge(Le=>ue!==null&&Le!==ue?ue:Le)},[ue]);const Re=useEventCallback((Le,Ge)=>{switch(Le.key){case"ArrowUp":Me((12+Ge-3)%12),Le.preventDefault();break;case"ArrowDown":Me((12+Ge+3)%12),Le.preventDefault();break;case"ArrowLeft":Me((12+Ge+(oe.direction==="ltr"?-1:1))%12),Le.preventDefault();break;case"ArrowRight":Me((12+Ge+(oe.direction==="ltr"?1:-1))%12),Le.preventDefault();break}}),De=useEventCallback((Le,Ge)=>{Me(Ge)}),Be=useEventCallback((Le,Ge)=>{pe===Ge&&ve(!1)});return jsxRuntimeExports.jsx(MonthCalendarRoot,_extends$1({ref:g,className:clsx(fe.root,b),ownerState:ce,role:"radiogroup","aria-labelledby":V},J,{children:getMonthsInYear(Z,Q!=null?Q:ee).map(Le=>{const Ge=Z.getMonth(Le),Ie=Z.format(Le,"monthShort"),Ye=Z.format(Le,"month"),He=Ge===ue,Ve=C||Se(Le);return jsxRuntimeExports.jsx(PickersMonth,{selected:He,value:Ge,onClick:$e,onKeyDown:Re,autoFocus:ye&&Ge===pe,disabled:Ve,tabIndex:Ge===pe?0:-1,onFocus:De,onBlur:Be,"aria-current":ae===Ge?"date":void 0,"aria-label":Ye,monthsPerRow:U,children:Ie},Ie)})}))});function getPickersYearUtilityClass(d){return generateUtilityClass("MuiPickersYear",d)}const pickersYearClasses=generateUtilityClasses("MuiPickersYear",["root","yearButton","selected","disabled"]),_excluded$8=["autoFocus","className","children","disabled","selected","value","tabIndex","onClick","onKeyDown","onFocus","onBlur","aria-current","yearsPerRow"],useUtilityClasses$5=d=>{const{disabled:m,selected:g,classes:x}=d;return composeClasses({root:["root"],yearButton:["yearButton",m&&"disabled",g&&"selected"]},getPickersYearUtilityClass,x)},PickersYearRoot=styled("div",{name:"MuiPickersYear",slot:"Root",overridesResolver:(d,m)=>[m.root]})(({ownerState:d})=>({flexBasis:d.yearsPerRow===3?"33.3%":"25%",display:"flex",alignItems:"center",justifyContent:"center"})),PickersYearButton=styled("button",{name:"MuiPickersYear",slot:"YearButton",overridesResolver:(d,m)=>[m.yearButton,{[`&.${pickersYearClasses.disabled}`]:m.disabled},{[`&.${pickersYearClasses.selected}`]:m.selected}]})(({theme:d})=>_extends$1({color:"unset",backgroundColor:"transparent",border:0,outline:0},d.typography.subtitle1,{margin:"6px 0",height:36,width:72,borderRadius:18,cursor:"pointer","&:focus":{backgroundColor:d.vars?`rgba(${d.vars.palette.action.activeChannel} / ${d.vars.palette.action.focusOpacity})`:alpha(d.palette.action.active,d.palette.action.focusOpacity)},"&:hover":{backgroundColor:d.vars?`rgba(${d.vars.palette.action.activeChannel} / ${d.vars.palette.action.hoverOpacity})`:alpha(d.palette.action.active,d.palette.action.hoverOpacity)},"&:disabled":{cursor:"auto",pointerEvents:"none"},[`&.${pickersYearClasses.disabled}`]:{color:(d.vars||d).palette.text.secondary},[`&.${pickersYearClasses.selected}`]:{color:(d.vars||d).palette.primary.contrastText,backgroundColor:(d.vars||d).palette.primary.main,"&:focus, &:hover":{backgroundColor:(d.vars||d).palette.primary.dark}}})),PickersYear=reactExports.memo(function(m){const g=useThemeProps({props:m,name:"MuiPickersYear"}),{autoFocus:x,className:b,children:E,disabled:v,selected:S,value:C,tabIndex:T,onClick:R,onKeyDown:k,onFocus:L,onBlur:D,"aria-current":A}=g,I=_objectWithoutPropertiesLoose(g,_excluded$8),N=reactExports.useRef(null),z=useUtilityClasses$5(g);return reactExports.useEffect(()=>{x&&N.current.focus()},[x]),jsxRuntimeExports.jsx(PickersYearRoot,_extends$1({className:clsx(z.root,b),ownerState:g},I,{children:jsxRuntimeExports.jsx(PickersYearButton,{ref:N,disabled:v,type:"button",role:"radio",tabIndex:v?-1:T,"aria-current":A,"aria-checked":S,onClick:j=>R(j,C),onKeyDown:j=>k(j,C),onFocus:j=>L(j,C),onBlur:j=>D(j,C),className:z.yearButton,ownerState:g,children:E})}))});function getYearCalendarUtilityClass(d){return generateUtilityClass("MuiYearCalendar",d)}generateUtilityClasses("MuiYearCalendar",["root"]);const _excluded$7=["autoFocus","className","value","defaultValue","referenceDate","disabled","disableFuture","disablePast","maxDate","minDate","onChange","readOnly","shouldDisableYear","disableHighlightToday","onYearFocus","hasFocus","onFocusedViewChange","yearsPerRow","timezone","gridLabelId"],useUtilityClasses$4=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getYearCalendarUtilityClass,m)};function useYearCalendarDefaultizedProps(d,m){var g;const x=useUtils(),b=useDefaultDates(),E=useThemeProps({props:d,name:m});return _extends$1({disablePast:!1,disableFuture:!1},E,{yearsPerRow:(g=E.yearsPerRow)!=null?g:3,minDate:applyDefaultDate(x,E.minDate,b.minDate),maxDate:applyDefaultDate(x,E.maxDate,b.maxDate)})}const YearCalendarRoot=styled("div",{name:"MuiYearCalendar",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"flex",flexDirection:"row",flexWrap:"wrap",overflowY:"auto",height:"100%",padding:"0 4px",width:DIALOG_WIDTH,maxHeight:MAX_CALENDAR_HEIGHT,boxSizing:"border-box",position:"relative"}),YearCalendar=reactExports.forwardRef(function(m,g){const x=useYearCalendarDefaultizedProps(m,"MuiYearCalendar"),{autoFocus:b,className:E,value:v,defaultValue:S,referenceDate:C,disabled:T,disableFuture:R,disablePast:k,maxDate:L,minDate:D,onChange:A,readOnly:I,shouldDisableYear:N,disableHighlightToday:z,onYearFocus:j,hasFocus:Y,onFocusedViewChange:B,yearsPerRow:U,timezone:W,gridLabelId:V}=x,J=_objectWithoutPropertiesLoose(x,_excluded$7),{value:Q,handleValueChange:X,timezone:re}=useControlledValueWithTimezone({name:"YearCalendar",timezone:W,value:v,defaultValue:S,onChange:A,valueManager:singleItemValueManager}),ie=useNow(re),oe=useTheme$3(),Z=useUtils(),ee=reactExports.useMemo(()=>singleItemValueManager.getInitialReferenceValue({value:Q,utils:Z,props:x,timezone:re,referenceDate:C,granularity:SECTION_TYPE_GRANULARITY.year}),[]),ce=x,fe=useUtilityClasses$4(ce),ae=reactExports.useMemo(()=>Z.getYear(ie),[Z,ie]),ue=reactExports.useMemo(()=>Q!=null?Z.getYear(Q):z?null:Z.getYear(ee),[Q,Z,z,ee]),[pe,ge]=reactExports.useState(()=>ue||ae),[ye,Ee]=useControlled({name:"YearCalendar",state:"hasFocus",controlled:Y,default:b!=null?b:!1}),ve=useEventCallback(Ie=>{Ee(Ie),B&&B(Ie)}),Se=reactExports.useCallback(Ie=>{if(k&&Z.isBeforeYear(Ie,ie)||R&&Z.isAfterYear(Ie,ie)||D&&Z.isBeforeYear(Ie,D)||L&&Z.isAfterYear(Ie,L))return!0;if(!N)return!1;const Ye=Z.startOfYear(Ie);return N(Ye)},[R,k,L,D,ie,N,Z]),$e=useEventCallback((Ie,Ye)=>{if(I)return;const He=Z.setYear(Q!=null?Q:ee,Ye);X(He)}),Me=useEventCallback(Ie=>{Se(Z.setYear(Q!=null?Q:ee,Ie))||(ge(Ie),ve(!0),j==null||j(Ie))});reactExports.useEffect(()=>{ge(Ie=>ue!==null&&Ie!==ue?ue:Ie)},[ue]);const Re=useEventCallback((Ie,Ye)=>{switch(Ie.key){case"ArrowUp":Me(Ye-U),Ie.preventDefault();break;case"ArrowDown":Me(Ye+U),Ie.preventDefault();break;case"ArrowLeft":Me(Ye+(oe.direction==="ltr"?-1:1)),Ie.preventDefault();break;case"ArrowRight":Me(Ye+(oe.direction==="ltr"?1:-1)),Ie.preventDefault();break}}),De=useEventCallback((Ie,Ye)=>{Me(Ye)}),Be=useEventCallback((Ie,Ye)=>{pe===Ye&&ve(!1)}),Le=reactExports.useRef(null),Ge=useForkRef(g,Le);return reactExports.useEffect(()=>{if(b||Le.current===null)return;const Ie=Le.current.querySelector('[tabindex="0"]');if(!Ie)return;const Ye=Ie.offsetHeight,He=Ie.offsetTop,Ve=Le.current.clientHeight,rt=Le.current.scrollTop,Oe=He+Ye;Ye>Ve||He<rt||(Le.current.scrollTop=Oe-Ve/2-Ye/2)},[b]),jsxRuntimeExports.jsx(YearCalendarRoot,_extends$1({ref:Ge,className:clsx(fe.root,E),ownerState:ce,role:"radiogroup","aria-labelledby":V},J,{children:Z.getYearRange(D,L).map(Ie=>{const Ye=Z.getYear(Ie),He=Ye===ue,Ve=T||Se(Ie);return jsxRuntimeExports.jsx(PickersYear,{selected:He,value:Ye,onClick:$e,onKeyDown:Re,autoFocus:ye&&Ye===pe,disabled:Ve,tabIndex:Ye===pe?0:-1,onFocus:De,onBlur:Be,"aria-current":ae===Ye?"date":void 0,yearsPerRow:U,children:Z.format(Ie,"year")},Z.format(Ie,"year"))})}))}),getPickersCalendarHeaderUtilityClass=d=>generateUtilityClass("MuiPickersCalendarHeader",d),pickersCalendarHeaderClasses=generateUtilityClasses("MuiPickersCalendarHeader",["root","labelContainer","label","switchViewButton","switchViewIcon"]),_excluded$6=["slots","slotProps","components","componentsProps","currentMonth","disabled","disableFuture","disablePast","maxDate","minDate","onMonthChange","onViewChange","view","reduceAnimations","views","labelId","className","timezone"],_excluded2$1=["ownerState"],useUtilityClasses$3=d=>{const{classes:m}=d;return composeClasses({root:["root"],labelContainer:["labelContainer"],label:["label"],switchViewButton:["switchViewButton"],switchViewIcon:["switchViewIcon"]},getPickersCalendarHeaderUtilityClass,m)},PickersCalendarHeaderRoot=styled("div",{name:"MuiPickersCalendarHeader",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"flex",alignItems:"center",marginTop:16,marginBottom:8,paddingLeft:24,paddingRight:12,maxHeight:30,minHeight:30}),PickersCalendarHeaderLabelContainer=styled("div",{name:"MuiPickersCalendarHeader",slot:"LabelContainer",overridesResolver:(d,m)=>m.labelContainer})(({theme:d})=>_extends$1({display:"flex",overflow:"hidden",alignItems:"center",cursor:"pointer",marginRight:"auto"},d.typography.body1,{fontWeight:d.typography.fontWeightMedium})),PickersCalendarHeaderLabel=styled("div",{name:"MuiPickersCalendarHeader",slot:"Label",overridesResolver:(d,m)=>m.label})({marginRight:6}),PickersCalendarHeaderSwitchViewButton=styled(IconButton,{name:"MuiPickersCalendarHeader",slot:"SwitchViewButton",overridesResolver:(d,m)=>m.switchViewButton})(({ownerState:d})=>_extends$1({marginRight:"auto"},d.view==="year"&&{[`.${pickersCalendarHeaderClasses.switchViewIcon}`]:{transform:"rotate(180deg)"}})),PickersCalendarHeaderSwitchViewIcon=styled(ArrowDropDownIcon,{name:"MuiPickersCalendarHeader",slot:"SwitchViewIcon",overridesResolver:(d,m)=>m.switchViewIcon})(({theme:d})=>({willChange:"transform",transition:d.transitions.create("transform"),transform:"rotate(0deg)"})),PickersCalendarHeader=reactExports.forwardRef(function(m,g){var x,b,E,v;const S=useLocaleText(),C=useUtils(),T=useThemeProps({props:m,name:"MuiPickersCalendarHeader"}),{slots:R,slotProps:k,components:L,currentMonth:D,disabled:A,disableFuture:I,disablePast:N,maxDate:z,minDate:j,onMonthChange:Y,onViewChange:B,view:U,reduceAnimations:W,views:V,labelId:J,className:Q,timezone:X}=T,re=_objectWithoutPropertiesLoose(T,_excluded$6),ie=T,oe=useUtilityClasses$3(T),Z=(x=(b=R==null?void 0:R.switchViewButton)!=null?b:L==null?void 0:L.SwitchViewButton)!=null?x:PickersCalendarHeaderSwitchViewButton,ee=useSlotProps({elementType:Z,externalSlotProps:k==null?void 0:k.switchViewButton,additionalProps:{size:"small","aria-label":S.calendarViewSwitchingButtonAriaLabel(U)},ownerState:ie,className:oe.switchViewButton}),ce=(E=(v=R==null?void 0:R.switchViewIcon)!=null?v:L==null?void 0:L.SwitchViewIcon)!=null?E:PickersCalendarHeaderSwitchViewIcon,fe=useSlotProps({elementType:ce,externalSlotProps:k==null?void 0:k.switchViewIcon,ownerState:void 0,className:oe.switchViewIcon}),ae=_objectWithoutPropertiesLoose(fe,_excluded2$1),ue=()=>Y(C.addMonths(D,1),"left"),pe=()=>Y(C.addMonths(D,-1),"right"),ge=useNextMonthDisabled(D,{disableFuture:I,maxDate:z,timezone:X}),ye=usePreviousMonthDisabled(D,{disablePast:N,minDate:j,timezone:X}),Ee=()=>{if(!(V.length===1||!B||A))if(V.length===2)B(V.find(ve=>ve!==U)||V[0]);else{const ve=V.indexOf(U)!==0?0:1;B(V[ve])}};return V.length===1&&V[0]==="year"?null:jsxRuntimeExports.jsxs(PickersCalendarHeaderRoot,_extends$1({},re,{ownerState:ie,className:clsx(Q,oe.root),ref:g,children:[jsxRuntimeExports.jsxs(PickersCalendarHeaderLabelContainer,{role:"presentation",onClick:Ee,ownerState:ie,"aria-live":"polite",className:oe.labelContainer,children:[jsxRuntimeExports.jsx(PickersFadeTransitionGroup,{reduceAnimations:W,transKey:C.format(D,"monthAndYear"),children:jsxRuntimeExports.jsx(PickersCalendarHeaderLabel,{id:J,ownerState:ie,className:oe.label,children:C.format(D,"monthAndYear")})}),V.length>1&&!A&&jsxRuntimeExports.jsx(Z,_extends$1({},ee,{children:jsxRuntimeExports.jsx(ce,_extends$1({},ae))}))]}),jsxRuntimeExports.jsx(Fade,{in:U==="day",children:jsxRuntimeExports.jsx(PickersArrowSwitcher,{slots:R,slotProps:k,onGoToPrevious:pe,isPreviousDisabled:ye,previousLabel:S.previousMonth,onGoToNext:ue,isNextDisabled:ge,nextLabel:S.nextMonth})})]}))}),getDateCalendarUtilityClass=d=>generateUtilityClass("MuiDateCalendar",d);generateUtilityClasses("MuiDateCalendar",["root","viewTransitionContainer"]);const _excluded$5=["autoFocus","onViewChange","value","defaultValue","referenceDate","disableFuture","disablePast","defaultCalendarMonth","onChange","onYearChange","onMonthChange","reduceAnimations","shouldDisableDate","shouldDisableMonth","shouldDisableYear","view","views","openTo","className","disabled","readOnly","minDate","maxDate","disableHighlightToday","focusedView","onFocusedViewChange","showDaysOutsideCurrentMonth","fixedWeekNumber","dayOfWeekFormatter","components","componentsProps","slots","slotProps","loading","renderLoading","displayWeekNumber","yearsPerRow","monthsPerRow","timezone"],useUtilityClasses$2=d=>{const{classes:m}=d;return composeClasses({root:["root"],viewTransitionContainer:["viewTransitionContainer"]},getDateCalendarUtilityClass,m)};function useDateCalendarDefaultizedProps(d,m){var g,x,b,E,v,S,C;const T=useUtils(),R=useDefaultDates(),k=useDefaultReduceAnimations(),L=useThemeProps({props:d,name:m});return _extends$1({},L,{loading:(g=L.loading)!=null?g:!1,disablePast:(x=L.disablePast)!=null?x:!1,disableFuture:(b=L.disableFuture)!=null?b:!1,openTo:(E=L.openTo)!=null?E:"day",views:(v=L.views)!=null?v:["year","day"],reduceAnimations:(S=L.reduceAnimations)!=null?S:k,renderLoading:(C=L.renderLoading)!=null?C:()=>jsxRuntimeExports.jsx("span",{children:"..."}),minDate:applyDefaultDate(T,L.minDate,R.minDate),maxDate:applyDefaultDate(T,L.maxDate,R.maxDate)})}const DateCalendarRoot=styled(PickerViewRoot,{name:"MuiDateCalendar",slot:"Root",overridesResolver:(d,m)=>m.root})({display:"flex",flexDirection:"column",height:VIEW_HEIGHT}),DateCalendarViewTransitionContainer=styled(PickersFadeTransitionGroup,{name:"MuiDateCalendar",slot:"ViewTransitionContainer",overridesResolver:(d,m)=>m.viewTransitionContainer})({}),DateCalendar=reactExports.forwardRef(function(m,g){var x,b,E;const v=useUtils(),S=useId(),C=useDateCalendarDefaultizedProps(m,"MuiDateCalendar"),{autoFocus:T,onViewChange:R,value:k,defaultValue:L,referenceDate:D,disableFuture:A,disablePast:I,defaultCalendarMonth:N,onChange:z,onYearChange:j,onMonthChange:Y,reduceAnimations:B,shouldDisableDate:U,shouldDisableMonth:W,shouldDisableYear:V,view:J,views:Q,openTo:X,className:re,disabled:ie,readOnly:oe,minDate:Z,maxDate:ee,disableHighlightToday:ce,focusedView:fe,onFocusedViewChange:ae,showDaysOutsideCurrentMonth:ue,fixedWeekNumber:pe,dayOfWeekFormatter:ge,components:ye,componentsProps:Ee,slots:ve,slotProps:Se,loading:$e,renderLoading:Me,displayWeekNumber:Re,yearsPerRow:De,monthsPerRow:Be,timezone:Le}=C,Ge=_objectWithoutPropertiesLoose(C,_excluded$5),{value:Ie,handleValueChange:Ye,timezone:He}=useControlledValueWithTimezone({name:"DateCalendar",timezone:Le,value:k,defaultValue:L,onChange:z,valueManager:singleItemValueManager}),{view:Ve,setView:rt,focusedView:Oe,setFocusedView:ot,goToNextView:ke,setValueAndGoToNextView:Ne}=useViews({view:J,views:Q,openTo:X,onChange:Ye,onViewChange:R,autoFocus:T,focusedView:fe,onFocusedViewChange:ae}),{referenceDate:Ke,calendarState:Xe,changeFocusedDay:st,changeMonth:xt,handleChangeMonth:Je,isDateDisabled:gt,onMonthSwitchingAnimationEnd:Ct}=useCalendarState({value:Ie,defaultCalendarMonth:N,referenceDate:D,reduceAnimations:B,onMonthChange:Y,minDate:Z,maxDate:ee,shouldDisableDate:U,disablePast:I,disableFuture:A,timezone:He}),dt=ie&&Ie||Z,jt=ie&&Ie||ee,Wt=`${S}-grid-label`,Xt=Oe!==null,Pt=(x=(b=ve==null?void 0:ve.calendarHeader)!=null?b:ye==null?void 0:ye.CalendarHeader)!=null?x:PickersCalendarHeader,zt=useSlotProps({elementType:Pt,externalSlotProps:(E=Se==null?void 0:Se.calendarHeader)!=null?E:Ee==null?void 0:Ee.calendarHeader,additionalProps:{views:Q,view:Ve,currentMonth:Xe.currentMonth,onViewChange:rt,onMonthChange:(xr,qr)=>Je({newMonth:xr,direction:qr}),minDate:dt,maxDate:jt,disabled:ie,disablePast:I,disableFuture:A,reduceAnimations:B,timezone:He,labelId:Wt,slots:ve,slotProps:Se},ownerState:C}),St=useEventCallback(xr=>{const qr=v.startOfMonth(xr),yn=v.endOfMonth(xr),Qr=gt(xr)?findClosestEnabledDate({utils:v,date:xr,minDate:v.isBefore(Z,qr)?qr:Z,maxDate:v.isAfter(ee,yn)?yn:ee,disablePast:I,disableFuture:A,isDateDisabled:gt,timezone:He}):xr;Qr?(Ne(Qr,"finish"),Y==null||Y(qr)):(ke(),xt(qr)),st(Qr,!0)}),Lt=useEventCallback(xr=>{const qr=v.startOfYear(xr),yn=v.endOfYear(xr),Qr=gt(xr)?findClosestEnabledDate({utils:v,date:xr,minDate:v.isBefore(Z,qr)?qr:Z,maxDate:v.isAfter(ee,yn)?yn:ee,disablePast:I,disableFuture:A,isDateDisabled:gt,timezone:He}):xr;Qr?(Ne(Qr,"finish"),j==null||j(Qr)):(ke(),xt(qr)),st(Qr,!0)}),Kt=useEventCallback(xr=>Ye(xr&&mergeDateAndTime(v,xr,Ie!=null?Ie:Ke),"finish",Ve));reactExports.useEffect(()=>{Ie!=null&&v.isValid(Ie)&&xt(Ie)},[Ie]);const Zt=C,lr=useUtilityClasses$2(Zt),vr={disablePast:I,disableFuture:A,maxDate:ee,minDate:Z},Jt={disableHighlightToday:ce,readOnly:oe,disabled:ie,timezone:He,gridLabelId:Wt},rr=reactExports.useRef(Ve);reactExports.useEffect(()=>{rr.current!==Ve&&(Oe===rr.current&&ot(Ve,!0),rr.current=Ve)},[Oe,ot,Ve]);const Or=reactExports.useMemo(()=>[Ie],[Ie]);return jsxRuntimeExports.jsxs(DateCalendarRoot,_extends$1({ref:g,className:clsx(lr.root,re),ownerState:Zt},Ge,{children:[jsxRuntimeExports.jsx(Pt,_extends$1({},zt)),jsxRuntimeExports.jsx(DateCalendarViewTransitionContainer,{reduceAnimations:B,className:lr.viewTransitionContainer,transKey:Ve,ownerState:Zt,children:jsxRuntimeExports.jsxs("div",{children:[Ve==="year"&&jsxRuntimeExports.jsx(YearCalendar,_extends$1({},vr,Jt,{value:Ie,onChange:Lt,shouldDisableYear:V,hasFocus:Xt,onFocusedViewChange:xr=>ot("year",xr),yearsPerRow:De,referenceDate:Ke})),Ve==="month"&&jsxRuntimeExports.jsx(MonthCalendar,_extends$1({},vr,Jt,{hasFocus:Xt,className:re,value:Ie,onChange:St,shouldDisableMonth:W,onFocusedViewChange:xr=>ot("month",xr),monthsPerRow:Be,referenceDate:Ke})),Ve==="day"&&jsxRuntimeExports.jsx(DayCalendar,_extends$1({},Xe,vr,Jt,{onMonthSwitchingAnimationEnd:Ct,onFocusedDayChange:st,reduceAnimations:B,selectedDays:Or,onSelectedDaysChange:Kt,shouldDisableDate:U,shouldDisableMonth:W,shouldDisableYear:V,hasFocus:Xt,onFocusedViewChange:xr=>ot("day",xr),showDaysOutsideCurrentMonth:ue,fixedWeekNumber:pe,dayOfWeekFormatter:ge,displayWeekNumber:Re,components:ye,componentsProps:Ee,slots:ve,slotProps:Se,loading:$e,renderLoading:Me}))]})})]}))}),_excluded$4=["props","getOpenDialogAriaText"],_excluded2=["ownerState"],_excluded3=["ownerState"],useDesktopPicker=d=>{var m,g,x,b,E;let{props:v,getOpenDialogAriaText:S}=d,C=_objectWithoutPropertiesLoose(d,_excluded$4);const{slots:T,slotProps:R,className:k,sx:L,format:D,formatDensity:A,timezone:I,name:N,label:z,inputRef:j,readOnly:Y,disabled:B,autoFocus:U,localeText:W,reduceAnimations:V}=v,J=useUtils(),Q=reactExports.useRef(null),X=reactExports.useRef(null),re=useId(),ie=(m=R==null||(g=R.toolbar)==null?void 0:g.hidden)!=null?m:!1,{open:oe,actions:Z,hasUIView:ee,layoutProps:ce,renderCurrentView:fe,shouldRestoreFocus:ae,fieldProps:ue}=usePicker(_extends$1({},C,{props:v,inputRef:Q,autoFocusView:!0,additionalViewProps:{},wrapperVariant:"desktop"})),pe=(x=T.inputAdornment)!=null?x:InputAdornment,ge=useSlotProps({elementType:pe,externalSlotProps:R==null?void 0:R.inputAdornment,additionalProps:{position:"end"},ownerState:v}),ye=_objectWithoutPropertiesLoose(ge,_excluded2),Ee=(b=T.openPickerButton)!=null?b:IconButton,ve=useSlotProps({elementType:Ee,externalSlotProps:R==null?void 0:R.openPickerButton,additionalProps:{disabled:B||Y,onClick:oe?Z.onClose:Z.onOpen,"aria-label":S(ue.value,J),edge:ye.position},ownerState:v}),Se=_objectWithoutPropertiesLoose(ve,_excluded3),$e=T.openPickerIcon,Me=T.field,Re=useSlotProps({elementType:Me,externalSlotProps:R==null?void 0:R.field,additionalProps:_extends$1({},ue,ie&&{id:re},{readOnly:Y,disabled:B,className:k,sx:L,format:D,formatDensity:A,timezone:I,label:z,name:N,autoFocus:U&&!v.open,focused:oe?!0:void 0}),ownerState:v});ee&&(Re.InputProps=_extends$1({},Re.InputProps,{ref:X},!v.disableOpenPicker&&{[`${ye.position}Adornment`]:jsxRuntimeExports.jsx(pe,_extends$1({},ye,{children:jsxRuntimeExports.jsx(Ee,_extends$1({},Se,{children:jsxRuntimeExports.jsx($e,_extends$1({},R==null?void 0:R.openPickerIcon))}))}))}));const De=_extends$1({textField:T.textField,clearIcon:T.clearIcon,clearButton:T.clearButton},Re.slots),Be=(E=T.layout)!=null?E:PickersLayout,Le=useForkRef(Q,Re.inputRef,j);let Ge=re;ie&&(z?Ge=`${re}-label`:Ge=void 0);const Ie=_extends$1({},R,{toolbar:_extends$1({},R==null?void 0:R.toolbar,{titleId:re}),popper:_extends$1({"aria-labelledby":Ge},R==null?void 0:R.popper)});return{renderPicker:()=>jsxRuntimeExports.jsxs(LocalizationProvider,{localeText:W,children:[jsxRuntimeExports.jsx(Me,_extends$1({},Re,{slots:De,slotProps:Ie,inputRef:Le})),jsxRuntimeExports.jsx(PickersPopper,_extends$1({role:"dialog",placement:"bottom-start",anchorEl:X.current},Z,{open:oe,slots:T,slotProps:Ie,shouldRestoreFocus:ae,reduceAnimations:V,children:jsxRuntimeExports.jsx(Be,_extends$1({},ce,Ie==null?void 0:Ie.layout,{slots:T,slotProps:Ie,children:fe()}))}))]})}},renderDateViewCalendar=({view:d,onViewChange:m,views:g,focusedView:x,onFocusedViewChange:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minDate:D,maxDate:A,shouldDisableDate:I,shouldDisableMonth:N,shouldDisableYear:z,reduceAnimations:j,onMonthChange:Y,monthsPerRow:B,onYearChange:U,yearsPerRow:W,defaultCalendarMonth:V,components:J,componentsProps:Q,slots:X,slotProps:re,loading:ie,renderLoading:oe,disableHighlightToday:Z,readOnly:ee,disabled:ce,showDaysOutsideCurrentMonth:fe,dayOfWeekFormatter:ae,sx:ue,autoFocus:pe,fixedWeekNumber:ge,displayWeekNumber:ye,timezone:Ee})=>jsxRuntimeExports.jsx(DateCalendar,{view:d,onViewChange:m,views:g.filter(isDatePickerView),focusedView:x&&isDatePickerView(x)?x:null,onFocusedViewChange:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minDate:D,maxDate:A,shouldDisableDate:I,shouldDisableMonth:N,shouldDisableYear:z,reduceAnimations:j,onMonthChange:Y,monthsPerRow:B,onYearChange:U,yearsPerRow:W,defaultCalendarMonth:V,components:J,componentsProps:Q,slots:X,slotProps:re,loading:ie,renderLoading:oe,disableHighlightToday:Z,readOnly:ee,disabled:ce,showDaysOutsideCurrentMonth:fe,dayOfWeekFormatter:ae,sx:ue,autoFocus:pe,fixedWeekNumber:ge,displayWeekNumber:ye,timezone:Ee}),_excluded$3=["props","getOpenDialogAriaText"],useMobilePicker=d=>{var m,g,x;let{props:b,getOpenDialogAriaText:E}=d,v=_objectWithoutPropertiesLoose(d,_excluded$3);const{slots:S,slotProps:C,className:T,sx:R,format:k,formatDensity:L,timezone:D,name:A,label:I,inputRef:N,readOnly:z,disabled:j,localeText:Y}=b,B=useUtils(),U=reactExports.useRef(null),W=useId(),V=(m=C==null||(g=C.toolbar)==null?void 0:g.hidden)!=null?m:!1,{open:J,actions:Q,layoutProps:X,renderCurrentView:re,fieldProps:ie}=usePicker(_extends$1({},v,{props:b,inputRef:U,autoFocusView:!0,additionalViewProps:{},wrapperVariant:"mobile"})),oe=S.field,Z=useSlotProps({elementType:oe,externalSlotProps:C==null?void 0:C.field,additionalProps:_extends$1({},ie,V&&{id:W},!(j||z)&&{onClick:Q.onOpen,onKeyDown:onSpaceOrEnter(Q.onOpen)},{readOnly:z!=null?z:!0,disabled:j,className:T,sx:R,format:k,formatDensity:L,timezone:D,label:I,name:A}),ownerState:b});Z.inputProps=_extends$1({},Z.inputProps,{"aria-label":E(ie.value,B)});const ee=_extends$1({textField:S.textField},Z.slots),ce=(x=S.layout)!=null?x:PickersLayout,fe=useForkRef(U,Z.inputRef,N);let ae=W;V&&(I?ae=`${W}-label`:ae=void 0);const ue=_extends$1({},C,{toolbar:_extends$1({},C==null?void 0:C.toolbar,{titleId:W}),mobilePaper:_extends$1({"aria-labelledby":ae},C==null?void 0:C.mobilePaper)});return{renderPicker:()=>jsxRuntimeExports.jsxs(LocalizationProvider,{localeText:Y,children:[jsxRuntimeExports.jsx(oe,_extends$1({},Z,{slots:ee,slotProps:ue,inputRef:fe})),jsxRuntimeExports.jsx(PickersModalDialog,_extends$1({},Q,{open:J,slots:S,slotProps:ue,children:jsxRuntimeExports.jsx(ce,_extends$1({},X,ue==null?void 0:ue.layout,{slots:S,slotProps:ue,children:re()}))}))]})}},renderTimeViewClock=({view:d,onViewChange:m,focusedView:g,onFocusedViewChange:x,views:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:D,maxTime:A,shouldDisableTime:I,shouldDisableClock:N,minutesStep:z,ampm:j,ampmInClock:Y,components:B,componentsProps:U,slots:W,slotProps:V,readOnly:J,disabled:Q,sx:X,autoFocus:re,showViewSwitcher:ie,disableIgnoringDatePartForTimeValidation:oe,timezone:Z})=>jsxRuntimeExports.jsx(TimeClock,{view:d,onViewChange:m,focusedView:g&&isTimeView(g)?g:null,onFocusedViewChange:x,views:b.filter(isTimeView),value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:D,maxTime:A,shouldDisableTime:I,shouldDisableClock:N,minutesStep:z,ampm:j,ampmInClock:Y,components:B,componentsProps:U,slots:W,slotProps:V,readOnly:J,disabled:Q,sx:X,autoFocus:re,showViewSwitcher:ie,disableIgnoringDatePartForTimeValidation:oe,timezone:Z}),renderDigitalClockTimeView=({view:d,onViewChange:m,focusedView:g,onFocusedViewChange:x,views:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:D,maxTime:A,shouldDisableTime:I,shouldDisableClock:N,minutesStep:z,ampm:j,components:Y,componentsProps:B,slots:U,slotProps:W,readOnly:V,disabled:J,sx:Q,autoFocus:X,disableIgnoringDatePartForTimeValidation:re,timeSteps:ie,skipDisabled:oe,timezone:Z})=>jsxRuntimeExports.jsx(DigitalClock,{view:d,onViewChange:m,focusedView:g,onFocusedViewChange:x,views:b.filter(isTimeView),value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:D,maxTime:A,shouldDisableTime:I,shouldDisableClock:N,minutesStep:z,ampm:j,components:Y,componentsProps:B,slots:U,slotProps:W,readOnly:V,disabled:J,sx:Q,autoFocus:X,disableIgnoringDatePartForTimeValidation:re,timeStep:ie==null?void 0:ie.minutes,skipDisabled:oe,timezone:Z}),renderMultiSectionDigitalClockTimeView=({view:d,onViewChange:m,focusedView:g,onFocusedViewChange:x,views:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:D,maxTime:A,shouldDisableTime:I,shouldDisableClock:N,minutesStep:z,ampm:j,components:Y,componentsProps:B,slots:U,slotProps:W,readOnly:V,disabled:J,sx:Q,autoFocus:X,disableIgnoringDatePartForTimeValidation:re,timeSteps:ie,skipDisabled:oe,timezone:Z})=>jsxRuntimeExports.jsx(MultiSectionDigitalClock,{view:d,onViewChange:m,focusedView:g,onFocusedViewChange:x,views:b.filter(isTimeView),value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:D,maxTime:A,shouldDisableTime:I,shouldDisableClock:N,minutesStep:z,ampm:j,components:Y,componentsProps:B,slots:U,slotProps:W,readOnly:V,disabled:J,sx:Q,autoFocus:X,disableIgnoringDatePartForTimeValidation:re,timeSteps:ie,skipDisabled:oe,timezone:Z}),_excluded$2=["views","format"],resolveDateTimeFormat=(d,m)=>{let{views:g,format:x}=m,b=_objectWithoutPropertiesLoose(m,_excluded$2);if(x)return x;const E=[],v=[];if(g.forEach(T=>{isTimeView(T)?v.push(T):E.push(T)}),v.length===0)return resolveDateFormat(d,_extends$1({views:E},b));if(E.length===0)return resolveTimeFormat(d,_extends$1({views:v},b));const S=resolveTimeFormat(d,_extends$1({views:v},b));return`${resolveDateFormat(d,_extends$1({views:E},b))} ${S}`},resolveViews=(d,m,g)=>g?m.filter(x=>!isInternalTimeView(x)||x==="hours"):d?[...m,"meridiem"]:m,resolveShouldRenderTimeInASingleColumn=(d,m)=>{var g,x;return 24*60/(((g=d.hours)!=null?g:1)*((x=d.minutes)!=null?x:5))<=m};function resolveTimeViewsResponse({thresholdToRenderTimeInASingleColumn:d,ampm:m,timeSteps:g,views:x}){const b=d!=null?d:24,E=_extends$1({hours:1,minutes:5,seconds:5},g),v=resolveShouldRenderTimeInASingleColumn(E,b);return{thresholdToRenderTimeInASingleColumn:b,timeSteps:E,shouldRenderTimeInASingleColumn:v,views:resolveViews(m,x,v)}}function getDateTimePickerTabsUtilityClass(d){return generateUtilityClass("MuiDateTimePickerTabs",d)}generateUtilityClasses("MuiDateTimePickerTabs",["root"]);const viewToTab=d=>isDatePickerView(d)?"date":"time",tabToView=d=>d==="date"?"day":"hours",useUtilityClasses$1=d=>{const{classes:m}=d;return composeClasses({root:["root"]},getDateTimePickerTabsUtilityClass,m)},DateTimePickerTabsRoot=styled(Tabs,{name:"MuiDateTimePickerTabs",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d})=>({boxShadow:`0 -1px 0 0 inset ${(d.vars||d).palette.divider}`,"&:last-child":{boxShadow:`0 1px 0 0 inset ${(d.vars||d).palette.divider}`,[`& .${tabsClasses.indicator}`]:{bottom:"auto",top:0}}})),DateTimePickerTabs=function(m){const g=useThemeProps({props:m,name:"MuiDateTimePickerTabs"}),{dateIcon:x=jsxRuntimeExports.jsx(DateRangeIcon,{}),onViewChange:b,timeIcon:E=jsxRuntimeExports.jsx(TimeIcon,{}),view:v,hidden:S=typeof window=="undefined"||window.innerHeight<667,className:C,sx:T}=g,R=useLocaleText(),k=useUtilityClasses$1(g),L=(D,A)=>{b(tabToView(A))};return S?null:jsxRuntimeExports.jsxs(DateTimePickerTabsRoot,{ownerState:g,variant:"fullWidth",value:viewToTab(v),onChange:L,className:clsx(C,k.root),sx:T,children:[jsxRuntimeExports.jsx(Tab,{value:"date","aria-label":R.dateTableLabel,icon:jsxRuntimeExports.jsx(reactExports.Fragment,{children:x})}),jsxRuntimeExports.jsx(Tab,{value:"time","aria-label":R.timeTableLabel,icon:jsxRuntimeExports.jsx(reactExports.Fragment,{children:E})})]})};function getDateTimePickerToolbarUtilityClass(d){return generateUtilityClass("MuiDateTimePickerToolbar",d)}const dateTimePickerToolbarClasses=generateUtilityClasses("MuiDateTimePickerToolbar",["root","dateContainer","timeContainer","timeDigitsContainer","separator","timeLabelReverse","ampmSelection","ampmLandscape","ampmLabel"]),_excluded$1=["ampm","ampmInClock","value","onChange","view","isLandscape","onViewChange","toolbarFormat","toolbarPlaceholder","views","disabled","readOnly","toolbarVariant"],useUtilityClasses=d=>{const{classes:m,theme:g,isLandscape:x}=d,b={root:["root"],dateContainer:["dateContainer"],timeContainer:["timeContainer",g.direction==="rtl"&&"timeLabelReverse"],timeDigitsContainer:["timeDigitsContainer",g.direction==="rtl"&&"timeLabelReverse"],separator:["separator"],ampmSelection:["ampmSelection",x&&"ampmLandscape"],ampmLabel:["ampmLabel"]};return composeClasses(b,getDateTimePickerToolbarUtilityClass,m)},DateTimePickerToolbarRoot=styled(PickersToolbar,{name:"MuiDateTimePickerToolbar",slot:"Root",overridesResolver:(d,m)=>m.root})(({theme:d,ownerState:m})=>({paddingLeft:m.toolbarVariant==="desktop"&&!m.isLandscape?24:16,paddingRight:m.toolbarVariant==="desktop"&&!m.isLandscape?0:16,borderBottom:m.toolbarVariant==="desktop"?`1px solid ${(d.vars||d).palette.divider}`:void 0,borderRight:m.toolbarVariant==="desktop"&&m.isLandscape?`1px solid ${(d.vars||d).palette.divider}`:void 0,justifyContent:"space-around",position:"relative"}));DateTimePickerToolbarRoot.propTypes={as:PropTypes.elementType,classes:PropTypes.object,className:PropTypes.string,isLandscape:PropTypes.bool.isRequired,isMobileKeyboardViewOpen:PropTypes.bool,landscapeDirection:PropTypes.oneOf(["column","row"]),ownerState:PropTypes.object.isRequired,sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object]),toggleMobileKeyboardView:PropTypes.func,toolbarTitle:PropTypes.node,viewType:PropTypes.oneOf(["date","time"])};const DateTimePickerToolbarDateContainer=styled("div",{name:"MuiDateTimePickerToolbar",slot:"DateContainer",overridesResolver:(d,m)=>m.dateContainer})({display:"flex",flexDirection:"column",alignItems:"flex-start"}),DateTimePickerToolbarTimeContainer=styled("div",{name:"MuiDateTimePickerToolbar",slot:"TimeContainer",overridesResolver:(d,m)=>m.timeContainer})(({theme:d,ownerState:m})=>{const g=m.isLandscape&&m.toolbarVariant!=="desktop"?"column":"row";return _extends$1({display:"flex",flexDirection:g},m.toolbarVariant==="desktop"&&_extends$1({},!m.isLandscape&&{gap:9,marginRight:4,alignSelf:"flex-end"}),d.direction==="rtl"&&{flexDirection:`${g}-reverse`})}),DateTimePickerToolbarTimeDigitsContainer=styled("div",{name:"MuiDateTimePickerToolbar",slot:"TimeDigitsContainer",overridesResolver:(d,m)=>m.timeDigitsContainer})(({theme:d,ownerState:m})=>_extends$1({display:"flex"},m.toolbarVariant==="desktop"&&{gap:1.5},d.direction==="rtl"&&{flexDirection:"row-reverse"}));DateTimePickerToolbarTimeContainer.propTypes={as:PropTypes.elementType,ownerState:PropTypes.object.isRequired,sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object])};const DateTimePickerToolbarSeparator=styled(PickersToolbarText,{name:"MuiDateTimePickerToolbar",slot:"Separator",overridesResolver:(d,m)=>m.separator})(({ownerState:d})=>({margin:d.toolbarVariant==="desktop"?0:"0 4px 0 2px",cursor:"default"})),DateTimePickerToolbarAmPmSelection=styled("div",{name:"MuiDateTimePickerToolbar",slot:"AmPmSelection",overridesResolver:(d,m)=>[{[`.${dateTimePickerToolbarClasses.ampmLabel}`]:m.ampmLabel},{[`&.${dateTimePickerToolbarClasses.ampmLandscape}`]:m.ampmLandscape},m.ampmSelection]})(({ownerState:d})=>_extends$1({display:"flex",flexDirection:"column",marginRight:"auto",marginLeft:12},d.isLandscape&&{margin:"4px 0 auto",flexDirection:"row",justifyContent:"space-around",width:"100%"},{[`& .${dateTimePickerToolbarClasses.ampmLabel}`]:{fontSize:17}}));function DateTimePickerToolbar(d){const m=useThemeProps({props:d,name:"MuiDateTimePickerToolbar"}),{ampm:g,ampmInClock:x,value:b,onChange:E,view:v,isLandscape:S,onViewChange:C,toolbarFormat:T,toolbarPlaceholder:R="––",views:k,disabled:L,readOnly:D,toolbarVariant:A="mobile"}=m,I=_objectWithoutPropertiesLoose(m,_excluded$1),N=m,z=useUtils(),{meridiemMode:j,handleMeridiemChange:Y}=useMeridiemMode(b,g,E),B=!!(g&&!x),U=A==="desktop",W=useLocaleText(),V=useTheme$1(),J=useUtilityClasses(_extends$1({},N,{theme:V})),Q=re=>g?z.format(re,"hours12h"):z.format(re,"hours24h"),X=reactExports.useMemo(()=>b?T?z.formatByString(b,T):z.format(b,"shortDate"):R,[b,T,R,z]);return jsxRuntimeExports.jsxs(DateTimePickerToolbarRoot,_extends$1({toolbarTitle:W.dateTimePickerToolbarTitle,isLandscape:S,className:J.root},I,{ownerState:N,children:[jsxRuntimeExports.jsxs(DateTimePickerToolbarDateContainer,{className:J.dateContainer,ownerState:N,children:[k.includes("year")&&jsxRuntimeExports.jsx(PickersToolbarButton,{tabIndex:-1,variant:"subtitle1",onClick:()=>C("year"),selected:v==="year",value:b?z.format(b,"year"):"–"}),k.includes("day")&&jsxRuntimeExports.jsx(PickersToolbarButton,{tabIndex:-1,variant:U?"h5":"h4",onClick:()=>C("day"),selected:v==="day",value:X})]}),jsxRuntimeExports.jsxs(DateTimePickerToolbarTimeContainer,{className:J.timeContainer,ownerState:N,children:[jsxRuntimeExports.jsxs(DateTimePickerToolbarTimeDigitsContainer,{className:J.timeDigitsContainer,ownerState:N,children:[k.includes("hours")&&jsxRuntimeExports.jsx(PickersToolbarButton,{variant:U?"h5":"h3",width:U&&!S?MULTI_SECTION_CLOCK_SECTION_WIDTH:void 0,onClick:()=>C("hours"),selected:v==="hours",value:b?Q(b):"--"}),k.includes("minutes")&&jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx(DateTimePickerToolbarSeparator,{variant:U?"h5":"h3",value:":",className:J.separator,ownerState:N}),jsxRuntimeExports.jsx(PickersToolbarButton,{variant:U?"h5":"h3",width:U&&!S?MULTI_SECTION_CLOCK_SECTION_WIDTH:void 0,onClick:()=>C("minutes"),selected:v==="minutes",value:b?z.format(b,"minutes"):"--"})]}),k.includes("seconds")&&jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx(DateTimePickerToolbarSeparator,{variant:U?"h5":"h3",value:":",className:J.separator,ownerState:N}),jsxRuntimeExports.jsx(PickersToolbarButton,{variant:U?"h5":"h3",width:U&&!S?MULTI_SECTION_CLOCK_SECTION_WIDTH:void 0,onClick:()=>C("seconds"),selected:v==="seconds",value:b?z.format(b,"seconds"):"--"})]})]}),B&&!U&&jsxRuntimeExports.jsxs(DateTimePickerToolbarAmPmSelection,{className:J.ampmSelection,ownerState:N,children:[jsxRuntimeExports.jsx(PickersToolbarButton,{variant:"subtitle2",selected:j==="am",typographyClassName:J.ampmLabel,value:formatMeridiem(z,"am"),onClick:D?void 0:()=>Y("am"),disabled:L}),jsxRuntimeExports.jsx(PickersToolbarButton,{variant:"subtitle2",selected:j==="pm",typographyClassName:J.ampmLabel,value:formatMeridiem(z,"pm"),onClick:D?void 0:()=>Y("pm"),disabled:L})]}),g&&U&&jsxRuntimeExports.jsx(PickersToolbarButton,{variant:"h5",onClick:()=>C("meridiem"),selected:v==="meridiem",value:b&&j?formatMeridiem(z,j):"--",width:MULTI_SECTION_CLOCK_SECTION_WIDTH})]})]}))}function useDateTimePickerDefaultizedProps(d,m){var g,x,b,E,v,S,C,T,R,k,L;const D=useUtils(),A=useDefaultDates(),I=useThemeProps({props:d,name:m}),N=(g=I.ampm)!=null?g:D.is12HourCycleInCurrentLocale(),z=reactExports.useMemo(()=>{var B;return((B=I.localeText)==null?void 0:B.toolbarTitle)==null?I.localeText:_extends$1({},I.localeText,{dateTimePickerToolbarTitle:I.localeText.toolbarTitle})},[I.localeText]),j=(x=I.slots)!=null?x:uncapitalizeObjectKeys(I.components),Y=(b=I.slotProps)!=null?b:I.componentsProps;return _extends$1({},I,applyDefaultViewProps({views:I.views,openTo:I.openTo,defaultViews:["year","day","hours","minutes"],defaultOpenTo:"day"}),{ampm:N,localeText:z,orientation:(E=I.orientation)!=null?E:"portrait",disableIgnoringDatePartForTimeValidation:(v=I.disableIgnoringDatePartForTimeValidation)!=null?v:!!(I.minDateTime||I.maxDateTime||I.disablePast||I.disableFuture),disableFuture:(S=I.disableFuture)!=null?S:!1,disablePast:(C=I.disablePast)!=null?C:!1,minDate:applyDefaultDate(D,(T=I.minDateTime)!=null?T:I.minDate,A.minDate),maxDate:applyDefaultDate(D,(R=I.maxDateTime)!=null?R:I.maxDate,A.maxDate),minTime:(k=I.minDateTime)!=null?k:I.minTime,maxTime:(L=I.maxDateTime)!=null?L:I.maxTime,slots:_extends$1({toolbar:DateTimePickerToolbar,tabs:DateTimePickerTabs},j),slotProps:_extends$1({},Y,{toolbar:_extends$1({ampm:N},Y==null?void 0:Y.toolbar)})})}const DateTimeViewWrapper=styled("div")({display:"flex",margin:"0 auto"}),renderDesktopDateTimeView=({view:d,onViewChange:m,views:g,focusedView:x,onFocusedViewChange:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minDate:D,minTime:A,maxDate:I,maxTime:N,shouldDisableDate:z,shouldDisableMonth:j,shouldDisableYear:Y,shouldDisableTime:B,shouldDisableClock:U,reduceAnimations:W,minutesStep:V,ampm:J,onMonthChange:Q,monthsPerRow:X,onYearChange:re,yearsPerRow:ie,defaultCalendarMonth:oe,components:Z,componentsProps:ee,slots:ce,slotProps:fe,loading:ae,renderLoading:ue,disableHighlightToday:pe,readOnly:ge,disabled:ye,showDaysOutsideCurrentMonth:Ee,dayOfWeekFormatter:ve,sx:Se,autoFocus:$e,fixedWeekNumber:Me,displayWeekNumber:Re,timezone:De,disableIgnoringDatePartForTimeValidation:Be,timeSteps:Le,skipDisabled:Ge,timeViewsCount:Ie,shouldRenderTimeInASingleColumn:Ye})=>{var He,Ve;const rt=!!((He=resolveComponentProps((Ve=fe==null?void 0:fe.actionBar)!=null?Ve:ee==null?void 0:ee.actionBar,{}))!=null&&(He=He.actions)!=null&&He.length),Oe={view:isInternalTimeView(d)?d:"hours",onViewChange:m,focusedView:x&&isInternalTimeView(x)?x:null,onFocusedViewChange:b,views:g.filter(isInternalTimeView),value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minTime:A,maxTime:N,shouldDisableTime:B,shouldDisableClock:U,minutesStep:V,ampm:J,components:Z,componentsProps:ee,slots:ce,slotProps:fe,readOnly:ge,disabled:ye,autoFocus:$e,disableIgnoringDatePartForTimeValidation:Be,timeSteps:Le,skipDisabled:Ge,timezone:De};return jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsxs(DateTimeViewWrapper,{children:[jsxRuntimeExports.jsx(DateCalendar,{view:isDatePickerView(d)?d:"day",onViewChange:m,views:g.filter(isDatePickerView),focusedView:x&&isDatePickerView(x)?x:null,onFocusedViewChange:b,value:E,defaultValue:v,referenceDate:S,onChange:C,className:T,classes:R,disableFuture:k,disablePast:L,minDate:D,maxDate:I,shouldDisableDate:z,shouldDisableMonth:j,shouldDisableYear:Y,reduceAnimations:W,onMonthChange:Q,monthsPerRow:X,onYearChange:re,yearsPerRow:ie,defaultCalendarMonth:oe,components:Z,componentsProps:ee,slots:ce,slotProps:fe,loading:ae,renderLoading:ue,disableHighlightToday:pe,readOnly:ge,disabled:ye,showDaysOutsideCurrentMonth:Ee,dayOfWeekFormatter:ve,sx:Se,autoFocus:$e,fixedWeekNumber:Me,displayWeekNumber:Re,timezone:De}),Ie>0&&jsxRuntimeExports.jsxs(reactExports.Fragment,{children:[jsxRuntimeExports.jsx(Divider,{orientation:"vertical"}),Ye?renderDigitalClockTimeView(_extends$1({},Oe,{view:"hours",views:["hours"],focusedView:x&&isInternalTimeView(x)?"hours":null,sx:_extends$1({width:"auto",[`&.${digitalClockClasses.root}`]:{maxHeight:VIEW_HEIGHT}},Array.isArray(Se)?Se:[Se])})):renderMultiSectionDigitalClockTimeView(_extends$1({},Oe,{view:isInternalTimeView(d)?d:"hours",views:g.filter(isInternalTimeView),focusedView:x&&isInternalTimeView(x)?x:null,sx:_extends$1({borderBottom:0,width:"auto",[`.${multiSectionDigitalClockSectionClasses.root}`]:{maxHeight:"100%"}},Array.isArray(Se)?Se:[Se])}))]})]}),rt&&jsxRuntimeExports.jsx(Divider,{})]})},DesktopDateTimePicker=reactExports.forwardRef(function(m,g){var x,b,E,v,S,C,T;const R=useLocaleText(),k=useUtils(),L=useDateTimePickerDefaultizedProps(m,"MuiDesktopDateTimePicker"),{shouldRenderTimeInASingleColumn:D,thresholdToRenderTimeInASingleColumn:A,views:I,timeSteps:N}=resolveTimeViewsResponse(L),z=!L.viewRenderers||Object.keys(L.viewRenderers).length===0,j=z?{day:renderDesktopDateTimeView,month:renderDesktopDateTimeView,year:renderDesktopDateTimeView,hours:renderDesktopDateTimeView,minutes:renderDesktopDateTimeView,seconds:renderDesktopDateTimeView,meridiem:renderDesktopDateTimeView}:_extends$1({day:renderDateViewCalendar,month:renderDateViewCalendar,year:renderDateViewCalendar,hours:null,minutes:null,seconds:null,meridiem:null},L.viewRenderers),Y=(x=L.ampmInClock)!=null?x:!0,B=z?["accept"]:[],U=_extends$1({},L,{viewRenderers:j,format:resolveDateTimeFormat(k,L),views:I,yearsPerRow:(b=L.yearsPerRow)!=null?b:4,ampmInClock:Y,timeSteps:N,thresholdToRenderTimeInASingleColumn:A,shouldRenderTimeInASingleColumn:D,slots:_extends$1({field:DateTimeField$1,openPickerIcon:CalendarIcon},L.slots),slotProps:_extends$1({},L.slotProps,{field:V=>{var J;return _extends$1({},resolveComponentProps((J=L.slotProps)==null?void 0:J.field,V),extractValidationProps(L),{ref:g})},toolbar:_extends$1({hidden:!0,ampmInClock:Y,toolbarVariant:z?"desktop":"mobile"},(E=L.slotProps)==null?void 0:E.toolbar),tabs:_extends$1({hidden:!0},(v=L.slotProps)==null?void 0:v.tabs),actionBar:_extends$1({actions:B},(S=L.slotProps)==null?void 0:S.actionBar)})}),{renderPicker:W}=useDesktopPicker({props:U,valueManager:singleItemValueManager,valueType:"date-time",getOpenDialogAriaText:(C=(T=U.localeText)==null?void 0:T.openDatePickerDialogue)!=null?C:R.openDatePickerDialogue,validator:validateDateTime});return W()});DesktopDateTimePicker.propTypes={ampm:PropTypes.bool,ampmInClock:PropTypes.bool,autoFocus:PropTypes.bool,className:PropTypes.string,closeOnSelect:PropTypes.bool,components:PropTypes.object,componentsProps:PropTypes.object,dayOfWeekFormatter:PropTypes.func,defaultCalendarMonth:PropTypes.any,defaultValue:PropTypes.any,disabled:PropTypes.bool,disableFuture:PropTypes.bool,disableHighlightToday:PropTypes.bool,disableIgnoringDatePartForTimeValidation:PropTypes.bool,disableOpenPicker:PropTypes.bool,disablePast:PropTypes.bool,displayWeekNumber:PropTypes.bool,fixedWeekNumber:PropTypes.number,format:PropTypes.string,formatDensity:PropTypes.oneOf(["dense","spacious"]),inputRef:refType,label:PropTypes.node,loading:PropTypes.bool,localeText:PropTypes.object,maxDate:PropTypes.any,maxDateTime:PropTypes.any,maxTime:PropTypes.any,minDate:PropTypes.any,minDateTime:PropTypes.any,minTime:PropTypes.any,minutesStep:PropTypes.number,monthsPerRow:PropTypes.oneOf([3,4]),name:PropTypes.string,onAccept:PropTypes.func,onChange:PropTypes.func,onClose:PropTypes.func,onError:PropTypes.func,onMonthChange:PropTypes.func,onOpen:PropTypes.func,onSelectedSectionsChange:PropTypes.func,onViewChange:PropTypes.func,onYearChange:PropTypes.func,open:PropTypes.bool,openTo:PropTypes.oneOf(["day","hours","meridiem","minutes","month","seconds","year"]),orientation:PropTypes.oneOf(["landscape","portrait"]),readOnly:PropTypes.bool,reduceAnimations:PropTypes.bool,referenceDate:PropTypes.any,renderLoading:PropTypes.func,selectedSections:PropTypes.oneOfType([PropTypes.oneOf(["all","day","hours","meridiem","minutes","month","seconds","weekDay","year"]),PropTypes.number,PropTypes.shape({endIndex:PropTypes.number.isRequired,startIndex:PropTypes.number.isRequired})]),shouldDisableClock:PropTypes.func,shouldDisableDate:PropTypes.func,shouldDisableMonth:PropTypes.func,shouldDisableTime:PropTypes.func,shouldDisableYear:PropTypes.func,showDaysOutsideCurrentMonth:PropTypes.bool,skipDisabled:PropTypes.bool,slotProps:PropTypes.object,slots:PropTypes.object,sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object]),thresholdToRenderTimeInASingleColumn:PropTypes.number,timeSteps:PropTypes.shape({hours:PropTypes.number,minutes:PropTypes.number,seconds:PropTypes.number}),timezone:PropTypes.string,value:PropTypes.any,view:PropTypes.oneOf(["day","hours","meridiem","minutes","month","seconds","year"]),viewRenderers:PropTypes.shape({day:PropTypes.func,hours:PropTypes.func,meridiem:PropTypes.func,minutes:PropTypes.func,month:PropTypes.func,seconds:PropTypes.func,year:PropTypes.func}),views:PropTypes.arrayOf(PropTypes.oneOf(["day","hours","minutes","month","seconds","year"]).isRequired),yearsPerRow:PropTypes.oneOf([3,4])};const MobileDateTimePicker=reactExports.forwardRef(function(m,g){var x,b,E,v,S;const C=useLocaleText(),T=useUtils(),R=useDateTimePickerDefaultizedProps(m,"MuiMobileDateTimePicker"),k=_extends$1({day:renderDateViewCalendar,month:renderDateViewCalendar,year:renderDateViewCalendar,hours:renderTimeViewClock,minutes:renderTimeViewClock,seconds:renderTimeViewClock},R.viewRenderers),L=(x=R.ampmInClock)!=null?x:!1,D=_extends$1({},R,{viewRenderers:k,format:resolveDateTimeFormat(T,R),ampmInClock:L,slots:_extends$1({field:DateTimeField$1},R.slots),slotProps:_extends$1({},R.slotProps,{field:I=>{var N;return _extends$1({},resolveComponentProps((N=R.slotProps)==null?void 0:N.field,I),extractValidationProps(R),{ref:g})},toolbar:_extends$1({hidden:!1,ampmInClock:L},(b=R.slotProps)==null?void 0:b.toolbar),tabs:_extends$1({hidden:!1},(E=R.slotProps)==null?void 0:E.tabs)})}),{renderPicker:A}=useMobilePicker({props:D,valueManager:singleItemValueManager,valueType:"date-time",getOpenDialogAriaText:(v=(S=D.localeText)==null?void 0:S.openDatePickerDialogue)!=null?v:C.openDatePickerDialogue,validator:validateDateTime});return A()});MobileDateTimePicker.propTypes={ampm:PropTypes.bool,ampmInClock:PropTypes.bool,autoFocus:PropTypes.bool,className:PropTypes.string,closeOnSelect:PropTypes.bool,components:PropTypes.object,componentsProps:PropTypes.object,dayOfWeekFormatter:PropTypes.func,defaultCalendarMonth:PropTypes.any,defaultValue:PropTypes.any,disabled:PropTypes.bool,disableFuture:PropTypes.bool,disableHighlightToday:PropTypes.bool,disableIgnoringDatePartForTimeValidation:PropTypes.bool,disableOpenPicker:PropTypes.bool,disablePast:PropTypes.bool,displayWeekNumber:PropTypes.bool,fixedWeekNumber:PropTypes.number,format:PropTypes.string,formatDensity:PropTypes.oneOf(["dense","spacious"]),inputRef:refType,label:PropTypes.node,loading:PropTypes.bool,localeText:PropTypes.object,maxDate:PropTypes.any,maxDateTime:PropTypes.any,maxTime:PropTypes.any,minDate:PropTypes.any,minDateTime:PropTypes.any,minTime:PropTypes.any,minutesStep:PropTypes.number,monthsPerRow:PropTypes.oneOf([3,4]),name:PropTypes.string,onAccept:PropTypes.func,onChange:PropTypes.func,onClose:PropTypes.func,onError:PropTypes.func,onMonthChange:PropTypes.func,onOpen:PropTypes.func,onSelectedSectionsChange:PropTypes.func,onViewChange:PropTypes.func,onYearChange:PropTypes.func,open:PropTypes.bool,openTo:PropTypes.oneOf(["day","hours","minutes","month","seconds","year"]),orientation:PropTypes.oneOf(["landscape","portrait"]),readOnly:PropTypes.bool,reduceAnimations:PropTypes.bool,referenceDate:PropTypes.any,renderLoading:PropTypes.func,selectedSections:PropTypes.oneOfType([PropTypes.oneOf(["all","day","hours","meridiem","minutes","month","seconds","weekDay","year"]),PropTypes.number,PropTypes.shape({endIndex:PropTypes.number.isRequired,startIndex:PropTypes.number.isRequired})]),shouldDisableClock:PropTypes.func,shouldDisableDate:PropTypes.func,shouldDisableMonth:PropTypes.func,shouldDisableTime:PropTypes.func,shouldDisableYear:PropTypes.func,showDaysOutsideCurrentMonth:PropTypes.bool,slotProps:PropTypes.object,slots:PropTypes.object,sx:PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func,PropTypes.object,PropTypes.bool])),PropTypes.func,PropTypes.object]),timezone:PropTypes.string,value:PropTypes.any,view:PropTypes.oneOf(["day","hours","minutes","month","seconds","year"]),viewRenderers:PropTypes.shape({day:PropTypes.func,hours:PropTypes.func,minutes:PropTypes.func,month:PropTypes.func,seconds:PropTypes.func,year:PropTypes.func}),views:PropTypes.arrayOf(PropTypes.oneOf(["day","hours","minutes","month","seconds","year"]).isRequired),yearsPerRow:PropTypes.oneOf([3,4])};const _excluded=["desktopModeMediaQuery"],DateTimePicker=reactExports.forwardRef(function(m,g){const x=useThemeProps({props:m,name:"MuiDateTimePicker"}),{desktopModeMediaQuery:b=DEFAULT_DESKTOP_MODE_MEDIA_QUERY}=x,E=_objectWithoutPropertiesLoose(x,_excluded);return useMediaQuery$1(b,{defaultMatches:!0})?jsxRuntimeExports.jsx(DesktopDateTimePicker,_extends$1({ref:g},E)):jsxRuntimeExports.jsx(MobileDateTimePicker,_extends$1({ref:g},E))});var dayjs_min$1={exports:{}},dayjs_min=dayjs_min$1.exports,hasRequiredDayjs_min;function requireDayjs_min(){return hasRequiredDayjs_min||(hasRequiredDayjs_min=1,function(d,m){(function(g,x){d.exports=x()})(dayjs_min,function(){var g=1e3,x=6e4,b=36e5,E="millisecond",v="second",S="minute",C="hour",T="day",R="week",k="month",L="quarter",D="year",A="date",I="Invalid Date",N=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,z=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,j={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(Z){var ee=["th","st","nd","rd"],ce=Z%100;return"["+Z+(ee[(ce-20)%10]||ee[ce]||ee[0])+"]"}},Y=function(Z,ee,ce){var fe=String(Z);return!fe||fe.length>=ee?Z:""+Array(ee+1-fe.length).join(ce)+Z},B={s:Y,z:function(Z){var ee=-Z.utcOffset(),ce=Math.abs(ee),fe=Math.floor(ce/60),ae=ce%60;return(ee<=0?"+":"-")+Y(fe,2,"0")+":"+Y(ae,2,"0")},m:function Z(ee,ce){if(ee.date()<ce.date())return-Z(ce,ee);var fe=12*(ce.year()-ee.year())+(ce.month()-ee.month()),ae=ee.clone().add(fe,k),ue=ce-ae<0,pe=ee.clone().add(fe+(ue?-1:1),k);return+(-(fe+(ce-ae)/(ue?ae-pe:pe-ae))||0)},a:function(Z){return Z<0?Math.ceil(Z)||0:Math.floor(Z)},p:function(Z){return{M:k,y:D,w:R,d:T,D:A,h:C,m:S,s:v,ms:E,Q:L}[Z]||String(Z||"").toLowerCase().replace(/s$/,"")},u:function(Z){return Z===void 0}},U="en",W={};W[U]=j;var V="$isDayjsObject",J=function(Z){return Z instanceof ie||!(!Z||!Z[V])},Q=function Z(ee,ce,fe){var ae;if(!ee)return U;if(typeof ee=="string"){var ue=ee.toLowerCase();W[ue]&&(ae=ue),ce&&(W[ue]=ce,ae=ue);var pe=ee.split("-");if(!ae&&pe.length>1)return Z(pe[0])}else{var ge=ee.name;W[ge]=ee,ae=ge}return!fe&&ae&&(U=ae),ae||!fe&&U},X=function(Z,ee){if(J(Z))return Z.clone();var ce=typeof ee=="object"?ee:{};return ce.date=Z,ce.args=arguments,new ie(ce)},re=B;re.l=Q,re.i=J,re.w=function(Z,ee){return X(Z,{locale:ee.$L,utc:ee.$u,x:ee.$x,$offset:ee.$offset})};var ie=function(){function Z(ce){this.$L=Q(ce.locale,null,!0),this.parse(ce),this.$x=this.$x||ce.x||{},this[V]=!0}var ee=Z.prototype;return ee.parse=function(ce){this.$d=function(fe){var ae=fe.date,ue=fe.utc;if(ae===null)return new Date(NaN);if(re.u(ae))return new Date;if(ae instanceof Date)return new Date(ae);if(typeof ae=="string"&&!/Z$/i.test(ae)){var pe=ae.match(N);if(pe){var ge=pe[2]-1||0,ye=(pe[7]||"0").substring(0,3);return ue?new Date(Date.UTC(pe[1],ge,pe[3]||1,pe[4]||0,pe[5]||0,pe[6]||0,ye)):new Date(pe[1],ge,pe[3]||1,pe[4]||0,pe[5]||0,pe[6]||0,ye)}}return new Date(ae)}(ce),this.init()},ee.init=function(){var ce=this.$d;this.$y=ce.getFullYear(),this.$M=ce.getMonth(),this.$D=ce.getDate(),this.$W=ce.getDay(),this.$H=ce.getHours(),this.$m=ce.getMinutes(),this.$s=ce.getSeconds(),this.$ms=ce.getMilliseconds()},ee.$utils=function(){return re},ee.isValid=function(){return this.$d.toString()!==I},ee.isSame=function(ce,fe){var ae=X(ce);return this.startOf(fe)<=ae&&ae<=this.endOf(fe)},ee.isAfter=function(ce,fe){return X(ce)<this.startOf(fe)},ee.isBefore=function(ce,fe){return this.endOf(fe)<X(ce)},ee.$g=function(ce,fe,ae){return re.u(ce)?this[fe]:this.set(ae,ce)},ee.unix=function(){return Math.floor(this.valueOf()/1e3)},ee.valueOf=function(){return this.$d.getTime()},ee.startOf=function(ce,fe){var ae=this,ue=!!re.u(fe)||fe,pe=re.p(ce),ge=function(De,Be){var Le=re.w(ae.$u?Date.UTC(ae.$y,Be,De):new Date(ae.$y,Be,De),ae);return ue?Le:Le.endOf(T)},ye=function(De,Be){return re.w(ae.toDate()[De].apply(ae.toDate("s"),(ue?[0,0,0,0]:[23,59,59,999]).slice(Be)),ae)},Ee=this.$W,ve=this.$M,Se=this.$D,$e="set"+(this.$u?"UTC":"");switch(pe){case D:return ue?ge(1,0):ge(31,11);case k:return ue?ge(1,ve):ge(0,ve+1);case R:var Me=this.$locale().weekStart||0,Re=(Ee<Me?Ee+7:Ee)-Me;return ge(ue?Se-Re:Se+(6-Re),ve);case T:case A:return ye($e+"Hours",0);case C:return ye($e+"Minutes",1);case S:return ye($e+"Seconds",2);case v:return ye($e+"Milliseconds",3);default:return this.clone()}},ee.endOf=function(ce){return this.startOf(ce,!1)},ee.$set=function(ce,fe){var ae,ue=re.p(ce),pe="set"+(this.$u?"UTC":""),ge=(ae={},ae[T]=pe+"Date",ae[A]=pe+"Date",ae[k]=pe+"Month",ae[D]=pe+"FullYear",ae[C]=pe+"Hours",ae[S]=pe+"Minutes",ae[v]=pe+"Seconds",ae[E]=pe+"Milliseconds",ae)[ue],ye=ue===T?this.$D+(fe-this.$W):fe;if(ue===k||ue===D){var Ee=this.clone().set(A,1);Ee.$d[ge](ye),Ee.init(),this.$d=Ee.set(A,Math.min(this.$D,Ee.daysInMonth())).$d}else ge&&this.$d[ge](ye);return this.init(),this},ee.set=function(ce,fe){return this.clone().$set(ce,fe)},ee.get=function(ce){return this[re.p(ce)]()},ee.add=function(ce,fe){var ae,ue=this;ce=Number(ce);var pe=re.p(fe),ge=function(ve){var Se=X(ue);return re.w(Se.date(Se.date()+Math.round(ve*ce)),ue)};if(pe===k)return this.set(k,this.$M+ce);if(pe===D)return this.set(D,this.$y+ce);if(pe===T)return ge(1);if(pe===R)return ge(7);var ye=(ae={},ae[S]=x,ae[C]=b,ae[v]=g,ae)[pe]||1,Ee=this.$d.getTime()+ce*ye;return re.w(Ee,this)},ee.subtract=function(ce,fe){return this.add(-1*ce,fe)},ee.format=function(ce){var fe=this,ae=this.$locale();if(!this.isValid())return ae.invalidDate||I;var ue=ce||"YYYY-MM-DDTHH:mm:ssZ",pe=re.z(this),ge=this.$H,ye=this.$m,Ee=this.$M,ve=ae.weekdays,Se=ae.months,$e=ae.meridiem,Me=function(Be,Le,Ge,Ie){return Be&&(Be[Le]||Be(fe,ue))||Ge[Le].slice(0,Ie)},Re=function(Be){return re.s(ge%12||12,Be,"0")},De=$e||function(Be,Le,Ge){var Ie=Be<12?"AM":"PM";return Ge?Ie.toLowerCase():Ie};return ue.replace(z,function(Be,Le){return Le||function(Ge){switch(Ge){case"YY":return String(fe.$y).slice(-2);case"YYYY":return re.s(fe.$y,4,"0");case"M":return Ee+1;case"MM":return re.s(Ee+1,2,"0");case"MMM":return Me(ae.monthsShort,Ee,Se,3);case"MMMM":return Me(Se,Ee);case"D":return fe.$D;case"DD":return re.s(fe.$D,2,"0");case"d":return String(fe.$W);case"dd":return Me(ae.weekdaysMin,fe.$W,ve,2);case"ddd":return Me(ae.weekdaysShort,fe.$W,ve,3);case"dddd":return ve[fe.$W];case"H":return String(ge);case"HH":return re.s(ge,2,"0");case"h":return Re(1);case"hh":return Re(2);case"a":return De(ge,ye,!0);case"A":return De(ge,ye,!1);case"m":return String(ye);case"mm":return re.s(ye,2,"0");case"s":return String(fe.$s);case"ss":return re.s(fe.$s,2,"0");case"SSS":return re.s(fe.$ms,3,"0");case"Z":return pe}return null}(Be)||pe.replace(":","")})},ee.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},ee.diff=function(ce,fe,ae){var ue,pe=this,ge=re.p(fe),ye=X(ce),Ee=(ye.utcOffset()-this.utcOffset())*x,ve=this-ye,Se=function(){return re.m(pe,ye)};switch(ge){case D:ue=Se()/12;break;case k:ue=Se();break;case L:ue=Se()/3;break;case R:ue=(ve-Ee)/6048e5;break;case T:ue=(ve-Ee)/864e5;break;case C:ue=ve/b;break;case S:ue=ve/x;break;case v:ue=ve/g;break;default:ue=ve}return ae?ue:re.a(ue)},ee.daysInMonth=function(){return this.endOf(k).$D},ee.$locale=function(){return W[this.$L]},ee.locale=function(ce,fe){if(!ce)return this.$L;var ae=this.clone(),ue=Q(ce,fe,!0);return ue&&(ae.$L=ue),ae},ee.clone=function(){return re.w(this.$d,this)},ee.toDate=function(){return new Date(this.valueOf())},ee.toJSON=function(){return this.isValid()?this.toISOString():null},ee.toISOString=function(){return this.$d.toISOString()},ee.toString=function(){return this.$d.toUTCString()},Z}(),oe=ie.prototype;return X.prototype=oe,[["$ms",E],["$s",v],["$m",S],["$H",C],["$W",T],["$M",k],["$y",D],["$D",A]].forEach(function(Z){oe[Z[1]]=function(ee){return this.$g(ee,Z[0],Z[1])}}),X.extend=function(Z,ee){return Z.$i||(Z(ee,ie,X),Z.$i=!0),X},X.locale=Q,X.isDayjs=J,X.unix=function(Z){return X(1e3*Z)},X.en=W[U],X.Ls=W,X.p={},X})}(dayjs_min$1)),dayjs_min$1.exports}var dayjs_minExports=requireDayjs_min();const defaultDayjs=getDefaultExportFromCjs(dayjs_minExports);function DateTimeField(b){var E=b,{onChange:d,error:m,helperText:g}=E,x=Vt(E,["onChange","error","helperText"]);return reactExports.createElement(Box,{},reactExports.createElement(DateTimePicker,$t(Fe({},objSameKeys(x,v=>isTimestampString(v)||v&&v instanceof Date?defaultDayjs(v):v!=null?v:null)),{sx:Fe({width:"100%",color:"error.main"},x.sx),onChange(v){d(v&&new Date(v),{was:x.value,event:void 0})},slotProps:{actionBar:{actions:["clear",...window.innerWidth<400?[]:["cancel"],"today","accept"]}}})),g&&reactExports.createElement(FormHelperText,{error:m},g))}function AccountForm({account:d,done:m,groups:g,addToBar:x,reload:b}){var N,z;const{username:E}=useSnapState$1(),[v,S]=reactExports.useState(d),[C,T]=reactExports.useState([]),R=useIsMobile();reactExports.useEffect(()=>{var Y,B;S(d),T(g.filter(U=>U!==d.username)),R||(B=(Y=D.current)==null?void 0:Y.querySelector("input"))==null||B.focus()},[JSON.stringify(d)]);const k=!d.username,{isGroup:L}=v,D=reactExports.useRef(),{members:A}=d,I=(N=d.plugin)==null?void 0:N.auth;return reactExports.createElement(Form,{formRef:D,values:v,set(Y,B){S(U=>$t(Fe({},U),{[B]:Y}))},barSx:Fe({gap:2,width:"100%"},useDialogBarColors()),stickyBar:!0,addToBar:[!k&&reactExports.createElement(IconBtn,$t(Fe({icon:Delete,title:"Delete",confirm:`Delete ${d.username}?`},E===d.username&&{disabled:!0,title:"Cannot delete current account"}),{onClick:()=>apiCall("del_account",{username:d.username}).then(b)})),reactExports.createElement(IconBtn,{icon:AutoDelete,title:`Invalidate past sessions${prefix(`
622
- (already invalidated sessions before `,formatTimestamp$1(d.invalidated||0),")")}`,confirm:`Invalidate all sessions up to now for "${d.username}"?`,doneMessage:!0,onClick:()=>apiCall("invalidate_sessions",{username:d.username}).then(b)}),...wantArray(x)],fields:[{k:"username",label:L?"Group name":void 0,autoComplete:"off",required:!0,md:L&&!I?12:4,getError:Y=>Y!==d.username&&apiCall("get_account",{username:Y}).then(B=>(B==null?void 0:B.username)===d.username?"usernames are case-insensitive":"already used",()=>!1)},I&&{k:"",md:8,comp:reactExports.createElement(Alert,{severity:"info"}," Authentication handled by a plugin")},!L&&!I&&{k:"password",xs:6,md:4,type:"password",autoComplete:"new-password",required:k,label:k?"Password":"Change password"},!L&&!I&&{k:"password2",xs:6,md:4,type:"password",autoComplete:"new-password",label:"Repeat password",getError:(Y,{values:B})=>(Y||"")!==(B.password||"")&&"Enter same password"},{k:"disabled",comp:BoolField,fromField:Y=>!Y,toField:Y=>!Y,label:"Enabled",xs:12,sm:6,lg:4,helperText:v.disabled||v.canLogin!==!1?"Login is prevented if account is disabled, or all its groups are disabled":reactExports.createElement(Box,{color:"warning.main",component:"span"},new Date(d.expire)<new Date?"Login is prevented because account is expired":"Login is prevented because all of its groups are disabled")},{k:"ignore_limits",comp:BoolField,xs:12,sm:6,lg:4,helperText:v.ignore_limits?"Speed limits don't apply to this account":"Speed limits apply to this account"},Fe({k:"admin",comp:BoolField,fromField:Y=>Y||null,label:"Admin-panel access",xs:12,sm:6,lg:4,helperText:"To access THIS interface you are using right now"},!d.admin&&d.adminActualAccess&&{value:!0,disabled:!0,helperText:"This permission is inherited. To disable it, act on the groups."}),!L&&{k:"require_password_change",comp:BoolField,xs:12,sm:6,lg:6,helperText:"At next login"},{k:"disable_password_change",label:"Password change",comp:SelectField,xs:12,sm:6,lg:L?4:6,defaultValue:null,options:{[`Default (${v.canChangePassword?"Allowed":"Disabled"})`]:null,Allowed:!1,Disabled:!0}},A?L&&!A.length?reactExports.createElement(Box,{},"No members"):A.length>0&&reactExports.createElement(Flex$1,{gap:0,flexWrap:"wrap"},`${A.length} members: `,reactJoin(", ",(z=d.members)==null?void 0:z.map(Y=>reactExports.createElement(g.includes(Y)?"i":"span",{},Y))),reactExports.createElement(Btn$1,{icon:Delete,confirm:`Delete ${d.members.length} accounts?`,onClick:()=>apiCall("del_account",{username:d.members}).then(b),sx:{verticalAlign:"text-top"}})):null,L&&reactExports.createElement(Alert,{severity:"info"},'To add users to this group, select the user and then click "Inherit"'),{k:"belongs",comp:MultiSelectField,label:"Inherit from groups",options:C,sm:6,helperText:"Specify groups to inherit permissions from"+(L?". A group can inherit from another group":"")+(C.length?"":". Now disabled because there are no groups to select, create one first.")},{k:"allow_net",comp:NetmaskField,label:"Allowed network address",sm:6,placeholder:"Allow from any address"},{k:"expire",label:"Expiration",xs:v.expire?12:6,comp:DateTimeField,toField:Y=>Y&&new Date(Y),helperText:"When expired, login won't be allowed"},!v.expire&&{k:"days_to_live",xs:12,sm:6,comp:NumberField,step:"any",min:1/1e3,helperText:"Used to set expiration on first login"},{k:"redirect",comp:VfsPathField,placeholder:"no",sm:6,helperText:"If you want this account to be redirected to a specific folder/address (or even file) at login time"},{k:"notes",multiline:!0,sm:6}],onError:alertDialog$1,save:$t(Fe({},propsForModifiedValues(isModifiedConfig(v,d))),{onClick(){return vt(this,null,function*(){const ie=v,{password:Y="",password2:B,adminActualAccess:U,hasPassword:W,invalidated:V,canLogin:J,members:Q}=ie,X=Vt(ie,["password","password2","adminActualAccess","hasPassword","invalidated","canLogin","members"]);if(k){const oe=yield apiCall("add_account",X);if(Y)try{yield apiNewPassword(v.username,Y)}catch(Z){throw apiCall("del_account",{username:v.username}),Z}m(oe==null?void 0:oe.username);return}const re=yield apiCall("set_account",{username:d.username,changes:X});Y&&(yield apiNewPassword(v.username,Y)),d.username===E&&(state$1.username=v.username),m(re==null?void 0:re.username)})}})})}function isModifiedConfig(d,m){return!isEqualLax(d,m,(g,x)=>!g&&!x||void 0)}function apiNewPassword(d,m){return vt(this,null,function*(){const g=new distExports.SRPRoutines(new distExports.SRPParameters),x=yield distExports.createVerifierAndSalt(g,d,m);return apiCall("change_srp",{username:d,salt:String(x.s),verifier:String(x.v)})})}const ALIAS=Symbol.for("yaml.alias"),DOC=Symbol.for("yaml.document"),MAP=Symbol.for("yaml.map"),PAIR=Symbol.for("yaml.pair"),SCALAR$1=Symbol.for("yaml.scalar"),SEQ=Symbol.for("yaml.seq"),NODE_TYPE=Symbol.for("yaml.node.type"),isAlias=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===ALIAS,isDocument=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===DOC,isMap=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===MAP,isPair=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===PAIR,isScalar$1=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===SCALAR$1,isSeq=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===SEQ;function isCollection$1(d){if(d&&typeof d=="object")switch(d[NODE_TYPE]){case MAP:case SEQ:return!0}return!1}function isNode(d){if(d&&typeof d=="object")switch(d[NODE_TYPE]){case ALIAS:case MAP:case SCALAR$1:case SEQ:return!0}return!1}const hasAnchor=d=>(isScalar$1(d)||isCollection$1(d))&&!!d.anchor,BREAK$1=Symbol("break visit"),SKIP$1=Symbol("skip children"),REMOVE$1=Symbol("remove node");function visit$1(d,m){const g=initVisitor(m);isDocument(d)?visit_(null,d.contents,g,Object.freeze([d]))===REMOVE$1&&(d.contents=null):visit_(null,d,g,Object.freeze([]))}visit$1.BREAK=BREAK$1;visit$1.SKIP=SKIP$1;visit$1.REMOVE=REMOVE$1;function visit_(d,m,g,x){const b=callVisitor(d,m,g,x);if(isNode(b)||isPair(b))return replaceNode(d,x,b),visit_(d,b,g,x);if(typeof b!="symbol"){if(isCollection$1(m)){x=Object.freeze(x.concat(m));for(let E=0;E<m.items.length;++E){const v=visit_(E,m.items[E],g,x);if(typeof v=="number")E=v-1;else{if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.items.splice(E,1),E-=1)}}}else if(isPair(m)){x=Object.freeze(x.concat(m));const E=visit_("key",m.key,g,x);if(E===BREAK$1)return BREAK$1;E===REMOVE$1&&(m.key=null);const v=visit_("value",m.value,g,x);if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.value=null)}}return b}function visitAsync(d,m){return vt(this,null,function*(){const g=initVisitor(m);isDocument(d)?(yield visitAsync_(null,d.contents,g,Object.freeze([d])))===REMOVE$1&&(d.contents=null):yield visitAsync_(null,d,g,Object.freeze([]))})}visitAsync.BREAK=BREAK$1;visitAsync.SKIP=SKIP$1;visitAsync.REMOVE=REMOVE$1;function visitAsync_(d,m,g,x){return vt(this,null,function*(){const b=yield callVisitor(d,m,g,x);if(isNode(b)||isPair(b))return replaceNode(d,x,b),visitAsync_(d,b,g,x);if(typeof b!="symbol"){if(isCollection$1(m)){x=Object.freeze(x.concat(m));for(let E=0;E<m.items.length;++E){const v=yield visitAsync_(E,m.items[E],g,x);if(typeof v=="number")E=v-1;else{if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.items.splice(E,1),E-=1)}}}else if(isPair(m)){x=Object.freeze(x.concat(m));const E=yield visitAsync_("key",m.key,g,x);if(E===BREAK$1)return BREAK$1;E===REMOVE$1&&(m.key=null);const v=yield visitAsync_("value",m.value,g,x);if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.value=null)}}return b})}function initVisitor(d){return typeof d=="object"&&(d.Collection||d.Node||d.Value)?Object.assign({Alias:d.Node,Map:d.Node,Scalar:d.Node,Seq:d.Node},d.Value&&{Map:d.Value,Scalar:d.Value,Seq:d.Value},d.Collection&&{Map:d.Collection,Seq:d.Collection},d):d}function callVisitor(d,m,g,x){var b,E,v,S,C;if(typeof g=="function")return g(d,m,x);if(isMap(m))return(b=g.Map)==null?void 0:b.call(g,d,m,x);if(isSeq(m))return(E=g.Seq)==null?void 0:E.call(g,d,m,x);if(isPair(m))return(v=g.Pair)==null?void 0:v.call(g,d,m,x);if(isScalar$1(m))return(S=g.Scalar)==null?void 0:S.call(g,d,m,x);if(isAlias(m))return(C=g.Alias)==null?void 0:C.call(g,d,m,x)}function replaceNode(d,m,g){const x=m[m.length-1];if(isCollection$1(x))x.items[d]=g;else if(isPair(x))d==="key"?x.key=g:x.value=g;else if(isDocument(x))x.contents=g;else{const b=isAlias(x)?"alias":"scalar";throw new Error(`Cannot replace node with ${b} parent`)}}const escapeChars={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},escapeTagName=d=>d.replace(/[!,[\]{}]/g,m=>escapeChars[m]);class Directives{constructor(m,g){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Directives.defaultYaml,m),this.tags=Object.assign({},Directives.defaultTags,g)}clone(){const m=new Directives(this.yaml,this.tags);return m.docStart=this.docStart,m}atDocument(){const m=new Directives(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Directives.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Directives.defaultTags);break}return m}add(m,g){this.atNextDocument&&(this.yaml={explicit:Directives.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Directives.defaultTags),this.atNextDocument=!1);const x=m.trim().split(/[ \t]+/),b=x.shift();switch(b){case"%TAG":{if(x.length!==2&&(g(0,"%TAG directive should contain exactly two parts"),x.length<2))return!1;const[E,v]=x;return this.tags[E]=v,!0}case"%YAML":{if(this.yaml.explicit=!0,x.length!==1)return g(0,"%YAML directive should contain exactly one part"),!1;const[E]=x;if(E==="1.1"||E==="1.2")return this.yaml.version=E,!0;{const v=/^\d+\.\d+$/.test(E);return g(6,`Unsupported YAML version ${E}`,v),!1}}default:return g(0,`Unknown directive ${b}`,!0),!1}}tagName(m,g){if(m==="!")return"!";if(m[0]!=="!")return g(`Not a valid tag: ${m}`),null;if(m[1]==="<"){const v=m.slice(2,-1);return v==="!"||v==="!!"?(g(`Verbatim tags aren't resolved, so ${m} is invalid.`),null):(m[m.length-1]!==">"&&g("Verbatim tags must end with a >"),v)}const[,x,b]=m.match(new RegExp("^(.*!)([^!]*)$","s"));b||g(`The ${m} tag has no suffix`);const E=this.tags[x];if(E)try{return E+decodeURIComponent(b)}catch(v){return g(String(v)),null}return x==="!"?m:(g(`Could not resolve tag: ${m}`),null)}tagString(m){for(const[g,x]of Object.entries(this.tags))if(m.startsWith(x))return g+escapeTagName(m.substring(x.length));return m[0]==="!"?m:`!<${m}>`}toString(m){const g=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],x=Object.entries(this.tags);let b;if(m&&x.length>0&&isNode(m.contents)){const E={};visit$1(m.contents,(v,S)=>{isNode(S)&&S.tag&&(E[S.tag]=!0)}),b=Object.keys(E)}else b=[];for(const[E,v]of x)E==="!!"&&v==="tag:yaml.org,2002:"||(!m||b.some(S=>S.startsWith(v)))&&g.push(`%TAG ${E} ${v}`);return g.join(`
622
+ (already invalidated sessions before `,formatTimestamp$1(d.invalidated||0),")")}`,confirm:`Invalidate all sessions up to now for "${d.username}"?`,doneMessage:!0,onClick:()=>apiCall("invalidate_sessions",{username:d.username}).then(b)}),...wantArray(x)],fields:[{k:"username",label:L?"Group name":void 0,autoComplete:"off",required:!0,md:L&&!I?12:4,getError:Y=>Y!==d.username&&apiCall("get_account",{username:Y}).then(B=>(B==null?void 0:B.username)===d.username?"usernames are case-insensitive":"already used",()=>!1)},I&&{k:"",md:8,comp:reactExports.createElement(Alert,{severity:"info"}," Authentication handled by a plugin")},!L&&!I&&{k:"password",xs:6,md:4,type:"password",autoComplete:"new-password",required:k,label:k?"Password":"Change password"},!L&&!I&&{k:"password2",xs:6,md:4,type:"password",autoComplete:"new-password",label:"Repeat password",getError:(Y,{values:B})=>(Y||"")!==(B.password||"")&&"Enter same password"},{k:"disabled",comp:BoolField,fromField:Y=>!Y,toField:Y=>!Y,label:"Enabled",xs:12,sm:6,lg:4,helperText:v.disabled||v.canLogin!==!1?"Login is prevented if account is disabled, or all its groups are disabled":reactExports.createElement(Box,{color:"warning.main",component:"span"},new Date(d.expire)<new Date?"Login is prevented because account is expired":"Login is prevented because all of its groups are disabled")},{k:"ignore_limits",comp:BoolField,xs:12,sm:6,lg:4,helperText:v.ignore_limits?"Speed limits don't apply to this account":"Speed limits apply to this account"},Fe({k:"admin",comp:BoolField,fromField:Y=>Y||null,label:"Admin-panel access",xs:12,sm:6,lg:4,helperText:"To access THIS interface you are using right now"},!d.admin&&d.adminActualAccess&&{value:!0,disabled:!0,helperText:"This permission is inherited. To disable it, act on the groups."}),!L&&{k:"require_password_change",comp:BoolField,xs:12,sm:6,lg:6,helperText:"At next login"},{k:"disable_password_change",label:"Password change",comp:SelectField,xs:12,sm:6,lg:L?4:6,defaultValue:null,options:{[`Default (${v.canChangePassword?"Allowed":"Disabled"})`]:null,Allowed:!1,Disabled:!0}},A?L&&!A.length?reactExports.createElement(Box,{},"No members"):A.length>0&&reactExports.createElement(Flex$1,{gap:0,flexWrap:"wrap"},`${A.length} members: `,reactJoin(", ",(z=d.members)==null?void 0:z.map(Y=>reactExports.createElement(g.includes(Y)?"i":"span",{},Y))),reactExports.createElement(Btn$1,{icon:Delete,confirm:`Delete ${d.members.length} accounts?`,onClick:()=>apiCall("del_account",{username:d.members}).then(b),sx:{verticalAlign:"text-top"}})):null,L&&reactExports.createElement(Alert,{severity:"info"},'To add users to this group, select the user and then click "Inherit"'),{k:"belongs",comp:MultiSelectField,label:"Inherit from groups",options:C,sm:6,helperText:"Specify groups to inherit permissions from"+(L?". A group can inherit from another group":"")+(C.length?"":". Now disabled because there are no groups to select, create one first.")},{k:"allow_net",comp:NetmaskField,label:"Allowed network address",sm:6,placeholder:"Allow from any address"},{k:"expire",label:"Expiration",xs:v.expire?12:6,comp:DateTimeField,toField:Y=>Y&&new Date(Y),helperText:"When expired, login won't be allowed"},!v.expire&&{k:"days_to_live",xs:12,sm:6,comp:NumberField,step:"any",min:1/1e3,helperText:"Used to set expiration on first login"},{k:"redirect",comp:VfsPathField,placeholder:"no",sm:6,helperText:"If you want this account to be redirected to a specific folder/address (or even file) at login time"},{k:"notes",multiline:!0,sm:6}],onError:alertDialog$1,save:$t(Fe({},propsForModifiedValues(isModifiedConfig(v,d))),{onClick(){return yt(this,null,function*(){const ie=v,{password:Y="",password2:B,adminActualAccess:U,hasPassword:W,invalidated:V,canLogin:J,members:Q}=ie,X=Vt(ie,["password","password2","adminActualAccess","hasPassword","invalidated","canLogin","members"]);if(k){const oe=yield apiCall("add_account",X);if(Y)try{yield apiNewPassword(v.username,Y)}catch(Z){throw apiCall("del_account",{username:v.username}),Z}m(oe==null?void 0:oe.username);return}const re=yield apiCall("set_account",{username:d.username,changes:X});Y&&(yield apiNewPassword(v.username,Y)),d.username===E&&(state$1.username=v.username),m(re==null?void 0:re.username)})}})})}function isModifiedConfig(d,m){return!isEqualLax(d,m,(g,x)=>!g&&!x||void 0)}function apiNewPassword(d,m){return yt(this,null,function*(){const g=new distExports.SRPRoutines(new distExports.SRPParameters),x=yield distExports.createVerifierAndSalt(g,d,m);return apiCall("change_srp",{username:d,salt:String(x.s),verifier:String(x.v)})})}const ALIAS=Symbol.for("yaml.alias"),DOC=Symbol.for("yaml.document"),MAP=Symbol.for("yaml.map"),PAIR=Symbol.for("yaml.pair"),SCALAR$1=Symbol.for("yaml.scalar"),SEQ=Symbol.for("yaml.seq"),NODE_TYPE=Symbol.for("yaml.node.type"),isAlias=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===ALIAS,isDocument=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===DOC,isMap=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===MAP,isPair=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===PAIR,isScalar$1=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===SCALAR$1,isSeq=d=>!!d&&typeof d=="object"&&d[NODE_TYPE]===SEQ;function isCollection$1(d){if(d&&typeof d=="object")switch(d[NODE_TYPE]){case MAP:case SEQ:return!0}return!1}function isNode(d){if(d&&typeof d=="object")switch(d[NODE_TYPE]){case ALIAS:case MAP:case SCALAR$1:case SEQ:return!0}return!1}const hasAnchor=d=>(isScalar$1(d)||isCollection$1(d))&&!!d.anchor,BREAK$1=Symbol("break visit"),SKIP$1=Symbol("skip children"),REMOVE$1=Symbol("remove node");function visit$1(d,m){const g=initVisitor(m);isDocument(d)?visit_(null,d.contents,g,Object.freeze([d]))===REMOVE$1&&(d.contents=null):visit_(null,d,g,Object.freeze([]))}visit$1.BREAK=BREAK$1;visit$1.SKIP=SKIP$1;visit$1.REMOVE=REMOVE$1;function visit_(d,m,g,x){const b=callVisitor(d,m,g,x);if(isNode(b)||isPair(b))return replaceNode(d,x,b),visit_(d,b,g,x);if(typeof b!="symbol"){if(isCollection$1(m)){x=Object.freeze(x.concat(m));for(let E=0;E<m.items.length;++E){const v=visit_(E,m.items[E],g,x);if(typeof v=="number")E=v-1;else{if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.items.splice(E,1),E-=1)}}}else if(isPair(m)){x=Object.freeze(x.concat(m));const E=visit_("key",m.key,g,x);if(E===BREAK$1)return BREAK$1;E===REMOVE$1&&(m.key=null);const v=visit_("value",m.value,g,x);if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.value=null)}}return b}function visitAsync(d,m){return yt(this,null,function*(){const g=initVisitor(m);isDocument(d)?(yield visitAsync_(null,d.contents,g,Object.freeze([d])))===REMOVE$1&&(d.contents=null):yield visitAsync_(null,d,g,Object.freeze([]))})}visitAsync.BREAK=BREAK$1;visitAsync.SKIP=SKIP$1;visitAsync.REMOVE=REMOVE$1;function visitAsync_(d,m,g,x){return yt(this,null,function*(){const b=yield callVisitor(d,m,g,x);if(isNode(b)||isPair(b))return replaceNode(d,x,b),visitAsync_(d,b,g,x);if(typeof b!="symbol"){if(isCollection$1(m)){x=Object.freeze(x.concat(m));for(let E=0;E<m.items.length;++E){const v=yield visitAsync_(E,m.items[E],g,x);if(typeof v=="number")E=v-1;else{if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.items.splice(E,1),E-=1)}}}else if(isPair(m)){x=Object.freeze(x.concat(m));const E=yield visitAsync_("key",m.key,g,x);if(E===BREAK$1)return BREAK$1;E===REMOVE$1&&(m.key=null);const v=yield visitAsync_("value",m.value,g,x);if(v===BREAK$1)return BREAK$1;v===REMOVE$1&&(m.value=null)}}return b})}function initVisitor(d){return typeof d=="object"&&(d.Collection||d.Node||d.Value)?Object.assign({Alias:d.Node,Map:d.Node,Scalar:d.Node,Seq:d.Node},d.Value&&{Map:d.Value,Scalar:d.Value,Seq:d.Value},d.Collection&&{Map:d.Collection,Seq:d.Collection},d):d}function callVisitor(d,m,g,x){var b,E,v,S,C;if(typeof g=="function")return g(d,m,x);if(isMap(m))return(b=g.Map)==null?void 0:b.call(g,d,m,x);if(isSeq(m))return(E=g.Seq)==null?void 0:E.call(g,d,m,x);if(isPair(m))return(v=g.Pair)==null?void 0:v.call(g,d,m,x);if(isScalar$1(m))return(S=g.Scalar)==null?void 0:S.call(g,d,m,x);if(isAlias(m))return(C=g.Alias)==null?void 0:C.call(g,d,m,x)}function replaceNode(d,m,g){const x=m[m.length-1];if(isCollection$1(x))x.items[d]=g;else if(isPair(x))d==="key"?x.key=g:x.value=g;else if(isDocument(x))x.contents=g;else{const b=isAlias(x)?"alias":"scalar";throw new Error(`Cannot replace node with ${b} parent`)}}const escapeChars={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},escapeTagName=d=>d.replace(/[!,[\]{}]/g,m=>escapeChars[m]);class Directives{constructor(m,g){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},Directives.defaultYaml,m),this.tags=Object.assign({},Directives.defaultTags,g)}clone(){const m=new Directives(this.yaml,this.tags);return m.docStart=this.docStart,m}atDocument(){const m=new Directives(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:Directives.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},Directives.defaultTags);break}return m}add(m,g){this.atNextDocument&&(this.yaml={explicit:Directives.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},Directives.defaultTags),this.atNextDocument=!1);const x=m.trim().split(/[ \t]+/),b=x.shift();switch(b){case"%TAG":{if(x.length!==2&&(g(0,"%TAG directive should contain exactly two parts"),x.length<2))return!1;const[E,v]=x;return this.tags[E]=v,!0}case"%YAML":{if(this.yaml.explicit=!0,x.length!==1)return g(0,"%YAML directive should contain exactly one part"),!1;const[E]=x;if(E==="1.1"||E==="1.2")return this.yaml.version=E,!0;{const v=/^\d+\.\d+$/.test(E);return g(6,`Unsupported YAML version ${E}`,v),!1}}default:return g(0,`Unknown directive ${b}`,!0),!1}}tagName(m,g){if(m==="!")return"!";if(m[0]!=="!")return g(`Not a valid tag: ${m}`),null;if(m[1]==="<"){const v=m.slice(2,-1);return v==="!"||v==="!!"?(g(`Verbatim tags aren't resolved, so ${m} is invalid.`),null):(m[m.length-1]!==">"&&g("Verbatim tags must end with a >"),v)}const[,x,b]=m.match(new RegExp("^(.*!)([^!]*)$","s"));b||g(`The ${m} tag has no suffix`);const E=this.tags[x];if(E)try{return E+decodeURIComponent(b)}catch(v){return g(String(v)),null}return x==="!"?m:(g(`Could not resolve tag: ${m}`),null)}tagString(m){for(const[g,x]of Object.entries(this.tags))if(m.startsWith(x))return g+escapeTagName(m.substring(x.length));return m[0]==="!"?m:`!<${m}>`}toString(m){const g=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],x=Object.entries(this.tags);let b;if(m&&x.length>0&&isNode(m.contents)){const E={};visit$1(m.contents,(v,S)=>{isNode(S)&&S.tag&&(E[S.tag]=!0)}),b=Object.keys(E)}else b=[];for(const[E,v]of x)E==="!!"&&v==="tag:yaml.org,2002:"||(!m||b.some(S=>S.startsWith(v)))&&g.push(`%TAG ${E} ${v}`);return g.join(`
623
623
  `)}}Directives.defaultYaml={explicit:!1,version:"1.2"};Directives.defaultTags={"!!":"tag:yaml.org,2002:"};function anchorIsValid(d){if(/[\x00-\x19\s,[\]{}]/.test(d)){const g=`Anchor must not contain whitespace or control characters: ${JSON.stringify(d)}`;throw new Error(g)}return!0}function anchorNames(d){const m=new Set;return visit$1(d,{Value(g,x){x.anchor&&m.add(x.anchor)}}),m}function findNewAnchor(d,m){for(let g=1;;++g){const x=`${d}${g}`;if(!m.has(x))return x}}function createNodeAnchors(d,m){const g=[],x=new Map;let b=null;return{onAnchor:E=>{g.push(E),b!=null||(b=anchorNames(d));const v=findNewAnchor(m,b);return b.add(v),v},setAnchors:()=>{for(const E of g){const v=x.get(E);if(typeof v=="object"&&v.anchor&&(isScalar$1(v.node)||isCollection$1(v.node)))v.node.anchor=v.anchor;else{const S=new Error("Failed to resolve repeated object (this should not happen)");throw S.source=E,S}}},sourceObjects:x}}function applyReviver(d,m,g,x){if(x&&typeof x=="object")if(Array.isArray(x))for(let b=0,E=x.length;b<E;++b){const v=x[b],S=applyReviver(d,x,String(b),v);S===void 0?delete x[b]:S!==v&&(x[b]=S)}else if(x instanceof Map)for(const b of Array.from(x.keys())){const E=x.get(b),v=applyReviver(d,x,b,E);v===void 0?x.delete(b):v!==E&&x.set(b,v)}else if(x instanceof Set)for(const b of Array.from(x)){const E=applyReviver(d,x,b,b);E===void 0?x.delete(b):E!==b&&(x.delete(b),x.add(E))}else for(const[b,E]of Object.entries(x)){const v=applyReviver(d,x,b,E);v===void 0?delete x[b]:v!==E&&(x[b]=v)}return d.call(m,g,x)}function toJS(d,m,g){if(Array.isArray(d))return d.map((x,b)=>toJS(x,String(b),g));if(d&&typeof d.toJSON=="function"){if(!g||!hasAnchor(d))return d.toJSON(m,g);const x={aliasCount:0,count:1,res:void 0};g.anchors.set(d,x),g.onCreate=E=>{x.res=E,delete g.onCreate};const b=d.toJSON(m,g);return g.onCreate&&g.onCreate(b),b}return typeof d=="bigint"&&!(g!=null&&g.keep)?Number(d):d}class NodeBase{constructor(m){Object.defineProperty(this,NODE_TYPE,{value:m})}clone(){const m=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(m.range=this.range.slice()),m}toJS(m,{mapAsMap:g,maxAliasCount:x,onAnchor:b,reviver:E}={}){if(!isDocument(m))throw new TypeError("A document argument is required");const v={anchors:new Map,doc:m,keep:!0,mapAsMap:g===!0,mapKeyWarned:!1,maxAliasCount:typeof x=="number"?x:100},S=toJS(this,"",v);if(typeof b=="function")for(const{count:C,res:T}of v.anchors.values())b(T,C);return typeof E=="function"?applyReviver(E,{"":S},"",S):S}}class Alias extends NodeBase{constructor(m){super(ALIAS),this.source=m,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(m,g){let x;g!=null&&g.aliasResolveCache?x=g.aliasResolveCache:(x=[],visit$1(m,{Node:(E,v)=>{(isAlias(v)||hasAnchor(v))&&x.push(v)}}),g&&(g.aliasResolveCache=x));let b;for(const E of x){if(E===this)break;E.anchor===this.source&&(b=E)}return b}toJSON(m,g){if(!g)return{source:this.source};const{anchors:x,doc:b,maxAliasCount:E}=g,v=this.resolve(b,g);if(!v){const C=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(C)}let S=x.get(v);if(S||(toJS(v,null,g),S=x.get(v)),!S||S.res===void 0){const C="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(C)}if(E>=0&&(S.count+=1,S.aliasCount===0&&(S.aliasCount=getAliasCount(b,v,x)),S.count*S.aliasCount>E)){const C="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(C)}return S.res}toString(m,g,x){const b=`*${this.source}`;if(m){if(anchorIsValid(this.source),m.options.verifyAliasOrder&&!m.anchors.has(this.source)){const E=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(E)}if(m.implicitKey)return`${b} `}return b}}function getAliasCount(d,m,g){if(isAlias(m)){const x=m.resolve(d),b=g&&x&&g.get(x);return b?b.count*b.aliasCount:0}else if(isCollection$1(m)){let x=0;for(const b of m.items){const E=getAliasCount(d,b,g);E>x&&(x=E)}return x}else if(isPair(m)){const x=getAliasCount(d,m.key,g),b=getAliasCount(d,m.value,g);return Math.max(x,b)}return 1}const isScalarValue=d=>!d||typeof d!="function"&&typeof d!="object";class Scalar extends NodeBase{constructor(m){super(SCALAR$1),this.value=m}toJSON(m,g){return g!=null&&g.keep?this.value:toJS(this.value,m,g)}toString(){return String(this.value)}}Scalar.BLOCK_FOLDED="BLOCK_FOLDED";Scalar.BLOCK_LITERAL="BLOCK_LITERAL";Scalar.PLAIN="PLAIN";Scalar.QUOTE_DOUBLE="QUOTE_DOUBLE";Scalar.QUOTE_SINGLE="QUOTE_SINGLE";const defaultTagPrefix="tag:yaml.org,2002:";function findTagObject(d,m,g){var x;if(m){const b=g.filter(v=>v.tag===m),E=(x=b.find(v=>!v.format))!=null?x:b[0];if(!E)throw new Error(`Tag ${m} not found`);return E}return g.find(b=>{var E;return((E=b.identify)==null?void 0:E.call(b,d))&&!b.format})}function createNode(d,m,g){var k,L,D,A;if(isDocument(d)&&(d=d.contents),isNode(d))return d;if(isPair(d)){const I=(L=(k=g.schema[MAP]).createNode)==null?void 0:L.call(k,g.schema,null,g);return I.items.push(d),I}(d instanceof String||d instanceof Number||d instanceof Boolean||typeof BigInt!="undefined"&&d instanceof BigInt)&&(d=d.valueOf());const{aliasDuplicateObjects:x,onAnchor:b,onTagObj:E,schema:v,sourceObjects:S}=g;let C;if(x&&d&&typeof d=="object"){if(C=S.get(d),C)return(D=C.anchor)!=null||(C.anchor=b(d)),new Alias(C.anchor);C={anchor:null,node:null},S.set(d,C)}m!=null&&m.startsWith("!!")&&(m=defaultTagPrefix+m.slice(2));let T=findTagObject(d,m,v.tags);if(!T){if(d&&typeof d.toJSON=="function"&&(d=d.toJSON()),!d||typeof d!="object"){const I=new Scalar(d);return C&&(C.node=I),I}T=d instanceof Map?v[MAP]:Symbol.iterator in Object(d)?v[SEQ]:v[MAP]}E&&(E(T),delete g.onTagObj);const R=T!=null&&T.createNode?T.createNode(g.schema,d,g):typeof((A=T==null?void 0:T.nodeClass)==null?void 0:A.from)=="function"?T.nodeClass.from(g.schema,d,g):new Scalar(d);return m?R.tag=m:T.default||(R.tag=T.tag),C&&(C.node=R),R}function collectionFromPath(d,m,g){let x=g;for(let b=m.length-1;b>=0;--b){const E=m[b];if(typeof E=="number"&&Number.isInteger(E)&&E>=0){const v=[];v[E]=x,x=v}else x=new Map([[E,x]])}return createNode(x,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:d,sourceObjects:new Map})}const isEmptyPath=d=>d==null||typeof d=="object"&&!!d[Symbol.iterator]().next().done;class Collection extends NodeBase{constructor(m,g){super(m),Object.defineProperty(this,"schema",{value:g,configurable:!0,enumerable:!1,writable:!0})}clone(m){const g=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return m&&(g.schema=m),g.items=g.items.map(x=>isNode(x)||isPair(x)?x.clone(m):x),this.range&&(g.range=this.range.slice()),g}addIn(m,g){if(isEmptyPath(m))this.add(g);else{const[x,...b]=m,E=this.get(x,!0);if(isCollection$1(E))E.addIn(b,g);else if(E===void 0&&this.schema)this.set(x,collectionFromPath(this.schema,b,g));else throw new Error(`Expected YAML collection at ${x}. Remaining path: ${b}`)}}deleteIn(m){const[g,...x]=m;if(x.length===0)return this.delete(g);const b=this.get(g,!0);if(isCollection$1(b))return b.deleteIn(x);throw new Error(`Expected YAML collection at ${g}. Remaining path: ${x}`)}getIn(m,g){const[x,...b]=m,E=this.get(x,!0);return b.length===0?!g&&isScalar$1(E)?E.value:E:isCollection$1(E)?E.getIn(b,g):void 0}hasAllNullValues(m){return this.items.every(g=>{if(!isPair(g))return!1;const x=g.value;return x==null||m&&isScalar$1(x)&&x.value==null&&!x.commentBefore&&!x.comment&&!x.tag})}hasIn(m){const[g,...x]=m;if(x.length===0)return this.has(g);const b=this.get(g,!0);return isCollection$1(b)?b.hasIn(x):!1}setIn(m,g){const[x,...b]=m;if(b.length===0)this.set(x,g);else{const E=this.get(x,!0);if(isCollection$1(E))E.setIn(b,g);else if(E===void 0&&this.schema)this.set(x,collectionFromPath(this.schema,b,g));else throw new Error(`Expected YAML collection at ${x}. Remaining path: ${b}`)}}}const stringifyComment=d=>d.replace(/^(?!$)(?: $)?/gm,"#");function indentComment(d,m){return/^\n+$/.test(d)?d.substring(1):m?d.replace(/^(?! *$)/gm,m):d}const lineComment=(d,m,g)=>d.endsWith(`
624
624
  `)?indentComment(g,m):g.includes(`
625
625
  `)?`
@@ -757,11 +757,11 @@ ${g.comment}`:g.comment}this.doc.range[2]=g.offset;break}default:this.errors.pus
757
757
  `)+1;for(;g!==0;)this.onNewLine(this.offset+g),g=this.source.indexOf(`
758
758
  `,g)+1}yield*bt(this.pop());break;default:yield*bt(this.pop()),yield*bt(this.step())}}*blockMap(m){var x;const g=m.items[m.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,g.value){const b="end"in g.value?g.value.end:void 0,E=Array.isArray(b)?b[b.length-1]:void 0;(E==null?void 0:E.type)==="comment"?b==null||b.push(this.sourceToken):m.items.push({start:[this.sourceToken]})}else g.sep?g.sep.push(this.sourceToken):g.start.push(this.sourceToken);return;case"space":case"comment":if(g.value)m.items.push({start:[this.sourceToken]});else if(g.sep)g.sep.push(this.sourceToken);else{if(this.atIndentedComment(g.start,m.indent)){const b=m.items[m.items.length-2],E=(x=b==null?void 0:b.value)==null?void 0:x.end;if(Array.isArray(E)){Array.prototype.push.apply(E,g.start),E.push(this.sourceToken),m.items.pop();return}}g.start.push(this.sourceToken)}return}if(this.indent>=m.indent){const b=!this.onKeyLine&&this.indent===m.indent,E=b&&(g.sep||g.explicitKey)&&this.type!=="seq-item-ind";let v=[];if(E&&g.sep&&!g.value){const S=[];for(let C=0;C<g.sep.length;++C){const T=g.sep[C];switch(T.type){case"newline":S.push(C);break;case"space":break;case"comment":T.indent>m.indent&&(S.length=0);break;default:S.length=0}}S.length>=2&&(v=g.sep.splice(S[1]))}switch(this.type){case"anchor":case"tag":E||g.value?(v.push(this.sourceToken),m.items.push({start:v}),this.onKeyLine=!0):g.sep?g.sep.push(this.sourceToken):g.start.push(this.sourceToken);return;case"explicit-key-ind":!g.sep&&!g.explicitKey?(g.start.push(this.sourceToken),g.explicitKey=!0):E||g.value?(v.push(this.sourceToken),m.items.push({start:v,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(g.explicitKey)if(g.sep)if(g.value)m.items.push({start:[],key:null,sep:[this.sourceToken]});else if(includesToken(g.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:v,key:null,sep:[this.sourceToken]}]});else if(isFlowToken(g.key)&&!includesToken(g.sep,"newline")){const S=getFirstKeyStartProps(g.start),C=g.key,T=g.sep;T.push(this.sourceToken),delete g.key,delete g.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:S,key:C,sep:T}]})}else v.length>0?g.sep=g.sep.concat(v,this.sourceToken):g.sep.push(this.sourceToken);else if(includesToken(g.start,"newline"))Object.assign(g,{key:null,sep:[this.sourceToken]});else{const S=getFirstKeyStartProps(g.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:S,key:null,sep:[this.sourceToken]}]})}else g.sep?g.value||E?m.items.push({start:v,key:null,sep:[this.sourceToken]}):includesToken(g.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):g.sep.push(this.sourceToken):Object.assign(g,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const S=this.flowScalar(this.type);E||g.value?(m.items.push({start:v,key:S,sep:[]}),this.onKeyLine=!0):g.sep?this.stack.push(S):(Object.assign(g,{key:S,sep:[]}),this.onKeyLine=!0);return}default:{const S=this.startBlockValue(m);if(S){if(S.type==="block-seq"){if(!g.explicitKey&&g.sep&&!includesToken(g.sep,"newline")){yield*bt(this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source}));return}}else b&&m.items.push({start:v});this.stack.push(S);return}}}}yield*bt(this.pop()),yield*bt(this.step())}*blockSequence(m){var x;const g=m.items[m.items.length-1];switch(this.type){case"newline":if(g.value){const b="end"in g.value?g.value.end:void 0,E=Array.isArray(b)?b[b.length-1]:void 0;(E==null?void 0:E.type)==="comment"?b==null||b.push(this.sourceToken):m.items.push({start:[this.sourceToken]})}else g.start.push(this.sourceToken);return;case"space":case"comment":if(g.value)m.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(g.start,m.indent)){const b=m.items[m.items.length-2],E=(x=b==null?void 0:b.value)==null?void 0:x.end;if(Array.isArray(E)){Array.prototype.push.apply(E,g.start),E.push(this.sourceToken),m.items.pop();return}}g.start.push(this.sourceToken)}return;case"anchor":case"tag":if(g.value||this.indent<=m.indent)break;g.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==m.indent)break;g.value||includesToken(g.start,"seq-item-ind")?m.items.push({start:[this.sourceToken]}):g.start.push(this.sourceToken);return}if(this.indent>m.indent){const b=this.startBlockValue(m);if(b){this.stack.push(b);return}}yield*bt(this.pop()),yield*bt(this.step())}*flowCollection(m){const g=m.items[m.items.length-1];if(this.type==="flow-error-end"){let x;do yield*bt(this.pop()),x=this.peek(1);while(x&&x.type==="flow-collection")}else if(m.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!g||g.sep?m.items.push({start:[this.sourceToken]}):g.start.push(this.sourceToken);return;case"map-value-ind":!g||g.value?m.items.push({start:[],key:null,sep:[this.sourceToken]}):g.sep?g.sep.push(this.sourceToken):Object.assign(g,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!g||g.value?m.items.push({start:[this.sourceToken]}):g.sep?g.sep.push(this.sourceToken):g.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const b=this.flowScalar(this.type);!g||g.value?m.items.push({start:[],key:b,sep:[]}):g.sep?this.stack.push(b):Object.assign(g,{key:b,sep:[]});return}case"flow-map-end":case"flow-seq-end":m.end.push(this.sourceToken);return}const x=this.startBlockValue(m);x?this.stack.push(x):(yield*bt(this.pop()),yield*bt(this.step()))}else{const x=this.peek(2);if(x.type==="block-map"&&(this.type==="map-value-ind"&&x.indent===m.indent||this.type==="newline"&&!x.items[x.items.length-1].sep))yield*bt(this.pop()),yield*bt(this.step());else if(this.type==="map-value-ind"&&x.type!=="flow-collection"){const b=getPrevProps(x),E=getFirstKeyStartProps(b);fixFlowSeqItems(m);const v=m.end.splice(1,m.end.length);v.push(this.sourceToken);const S={type:"block-map",offset:m.offset,indent:m.indent,items:[{start:E,key:m,sep:v}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=S}else yield*bt(this.lineEnd(m))}}flowScalar(m){if(this.onNewLine){let g=this.source.indexOf(`
759
759
  `)+1;for(;g!==0;)this.onNewLine(this.offset+g),g=this.source.indexOf(`
760
- `,g)+1}return{type:m,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(m){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const g=getPrevProps(m),x=getFirstKeyStartProps(g);return x.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:x,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const g=getPrevProps(m),x=getFirstKeyStartProps(g);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:x,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(m,g){return this.type!=="comment"||this.indent<=g?!1:m.every(x=>x.type==="newline"||x.type==="space")}*documentEnd(m){this.type!=="doc-mode"&&(m.end?m.end.push(this.sourceToken):m.end=[this.sourceToken],this.type==="newline"&&(yield*bt(this.pop())))}*lineEnd(m){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*bt(this.pop()),yield*bt(this.step());break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:m.end?m.end.push(this.sourceToken):m.end=[this.sourceToken],this.type==="newline"&&(yield*bt(this.pop()))}}};function parseOptions(d){const m=d.prettyErrors!==!1;return{lineCounter:d.lineCounter||m&&new LineCounter||null,prettyErrors:m}}function parseAllDocuments(d,m={}){const{lineCounter:g,prettyErrors:x}=parseOptions(m),b=new Parser$1(g==null?void 0:g.addNewLine),E=new Composer(m),v=Array.from(E.compose(b.parse(d)));if(x&&g)for(const S of v)S.errors.forEach(prettifyError(d,g)),S.warnings.forEach(prettifyError(d,g));return v.length>0?v:Object.assign([],{empty:!0},E.streamInfo())}function parseDocument(d,m={}){const{lineCounter:g,prettyErrors:x}=parseOptions(m),b=new Parser$1(g==null?void 0:g.addNewLine),E=new Composer(m);let v=null;for(const S of E.compose(b.parse(d),!0,d.length))if(!v)v=S;else if(v.options.logLevel!=="silent"){v.errors.push(new YAMLParseError(S.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return x&&g&&(v.errors.forEach(prettifyError(d,g)),v.warnings.forEach(prettifyError(d,g))),v}function parse(d,m,g){let x;typeof m=="function"?x=m:g===void 0&&m&&typeof m=="object"&&(g=m);const b=parseDocument(d,g);if(!b)return null;if(b.warnings.forEach(E=>warn(b.options.logLevel,E)),b.errors.length>0){if(b.options.logLevel!=="silent")throw b.errors[0];b.errors=[]}return b.toJS(Object.assign({reviver:x},g))}function stringify(d,m,g){var b;let x=null;if(typeof m=="function"||Array.isArray(m)?x=m:g===void 0&&m&&(g=m),typeof g=="string"&&(g=g.length),typeof g=="number"){const E=Math.round(g);g=E<1?void 0:E>8?{indent:8}:{indent:E}}if(d===void 0){const{keepUndefined:E}=(b=g!=null?g:m)!=null?b:{};if(!E)return}return isDocument(d)&&!x?d.toString(g):new Document(d,x,g).toString(g)}const YAML=Object.freeze(Object.defineProperty({__proto__:null,Alias,CST:cst,Composer,Document,Lexer,LineCounter,Pair,Parser:Parser$1,Scalar,Schema,YAMLError,YAMLMap,YAMLParseError,YAMLSeq,YAMLWarning,isAlias,isCollection:isCollection$1,isDocument,isMap,isNode,isPair,isScalar:isScalar$1,isSeq,parse,parseAllDocuments,parseDocument,stringify,visit:visit$1,visitAsync},Symbol.toStringTag,{value:"Module"}));let G=null;class H{}H.render=function(d,m){G(d,m)};self.QrCreator=H;(function(d){function m(S,C,T,R){var k={},L=d(T,C);L.u(S),L.J(),R=R||0;var D=L.h(),A=L.h()+2*R;return k.text=S,k.level=C,k.version=T,k.O=A,k.a=function(I,N){return I-=R,N-=R,0>I||I>=D||0>N||N>=D?!1:L.a(I,N)},k}function g(S,C,T,R,k,L,D,A,I,N){function z(j,Y,B,U,W,V,J){j?(S.lineTo(Y+V,B+J),S.arcTo(Y,B,U,W,L)):S.lineTo(Y,B)}D?S.moveTo(C+L,T):S.moveTo(C,T),z(A,R,T,R,k,-L,0),z(I,R,k,C,k,0,-L),z(N,C,k,C,T,L,0),z(D,C,T,R,T,0,L)}function x(S,C,T,R,k,L,D,A,I,N){function z(j,Y,B,U){S.moveTo(j+B,Y),S.lineTo(j,Y),S.lineTo(j,Y+U),S.arcTo(j,Y,j+B,Y,L)}D&&z(C,T,L,L),A&&z(R,T,-L,L),I&&z(R,k,-L,-L),N&&z(C,k,L,-L)}function b(S,C){var T=C.fill;if(typeof T=="string")S.fillStyle=T;else{var R=T.type,k=T.colorStops;if(T=T.position.map(D=>Math.round(D*C.size)),R==="linear-gradient")var L=S.createLinearGradient.apply(S,T);else if(R==="radial-gradient")L=S.createRadialGradient.apply(S,T);else throw Error("Unsupported fill");k.forEach(([D,A])=>{L.addColorStop(D,A)}),S.fillStyle=L}}function E(S,C){e:{var T=C.text,R=C.v,k=C.N,L=C.K,D=C.P;for(k=Math.max(1,k||1),L=Math.min(40,L||40);k<=L;k+=1)try{var A=m(T,R,k,D);break e}catch(ce){}A=void 0}if(!A)return null;for(T=S.getContext("2d"),C.background&&(T.fillStyle=C.background,T.fillRect(C.left,C.top,C.size,C.size)),R=A.O,L=C.size/R,T.beginPath(),D=0;D<R;D+=1)for(k=0;k<R;k+=1){var I=T,N=C.left+k*L,z=C.top+D*L,j=D,Y=k,B=A.a,U=N+L,W=z+L,V=j-1,J=j+1,Q=Y-1,X=Y+1,re=Math.floor(Math.min(.5,Math.max(0,C.R))*L),ie=B(j,Y),oe=B(V,Q),Z=B(V,Y);V=B(V,X);var ee=B(j,X);X=B(J,X),Y=B(J,Y),J=B(J,Q),j=B(j,Q),N=Math.round(N),z=Math.round(z),U=Math.round(U),W=Math.round(W),ie?g(I,N,z,U,W,re,!Z&&!j,!Z&&!ee,!Y&&!ee,!Y&&!j):x(I,N,z,U,W,re,Z&&j&&oe,Z&&ee&&V,Y&&ee&&X,Y&&j&&J)}return b(T,C),T.fill(),S}var v={minVersion:1,maxVersion:40,ecLevel:"L",left:0,top:0,size:200,fill:"#000",background:null,text:"no text",radius:.5,quiet:0};G=function(S,C){var T={};Object.assign(T,v,S),T.N=T.minVersion,T.K=T.maxVersion,T.v=T.ecLevel,T.left=T.left,T.top=T.top,T.size=T.size,T.fill=T.fill,T.background=T.background,T.text=T.text,T.R=T.radius,T.P=T.quiet,C instanceof HTMLCanvasElement?((C.width!==T.size||C.height!==T.size)&&(C.width=T.size,C.height=T.size),C.getContext("2d").clearRect(0,0,C.width,C.height),E(C,T)):(S=document.createElement("canvas"),S.width=T.size,S.height=T.size,T=E(S,T),C.appendChild(T))}})(function(){function d(C){var T=g.s(C);return{S:function(){return 4},b:function(){return T.length},write:function(R){for(var k=0;k<T.length;k+=1)R.put(T[k],8)}}}function m(){var C=[],T=0,R={B:function(){return C},c:function(k){return(C[Math.floor(k/8)]>>>7-k%8&1)==1},put:function(k,L){for(var D=0;D<L;D+=1)R.m((k>>>L-D-1&1)==1)},f:function(){return T},m:function(k){var L=Math.floor(T/8);C.length<=L&&C.push(0),k&&(C[L]|=128>>>T%8),T+=1}};return R}function g(C,T){function R(j,Y){for(var B=-1;7>=B;B+=1)if(!(-1>=j+B||A<=j+B))for(var U=-1;7>=U;U+=1)-1>=Y+U||A<=Y+U||(D[j+B][Y+U]=0<=B&&6>=B&&(U==0||U==6)||0<=U&&6>=U&&(B==0||B==6)||2<=B&&4>=B&&2<=U&&4>=U)}function k(j,Y){for(var B=A=4*C+17,U=Array(B),W=0;W<B;W+=1){U[W]=Array(B);for(var V=0;V<B;V+=1)U[W][V]=null}for(D=U,R(0,0),R(A-7,0),R(0,A-7),B=E.G(C),U=0;U<B.length;U+=1)for(W=0;W<B.length;W+=1){V=B[U];var J=B[W];if(D[V][J]==null)for(var Q=-2;2>=Q;Q+=1)for(var X=-2;2>=X;X+=1)D[V+Q][J+X]=Q==-2||Q==2||X==-2||X==2||Q==0&&X==0}for(B=8;B<A-8;B+=1)D[B][6]==null&&(D[B][6]=B%2==0);for(B=8;B<A-8;B+=1)D[6][B]==null&&(D[6][B]=B%2==0);for(B=E.w(L<<3|Y),U=0;15>U;U+=1)W=!j&&(B>>U&1)==1,D[6>U?U:8>U?U+1:A-15+U][8]=W,D[8][8>U?A-U-1:9>U?15-U:14-U]=W;if(D[A-8][8]=!j,7<=C){for(B=E.A(C),U=0;18>U;U+=1)W=!j&&(B>>U&1)==1,D[Math.floor(U/3)][U%3+A-8-3]=W;for(U=0;18>U;U+=1)W=!j&&(B>>U&1)==1,D[U%3+A-8-3][Math.floor(U/3)]=W}if(I==null){for(j=S.I(C,L),B=m(),U=0;U<N.length;U+=1)W=N[U],B.put(4,4),B.put(W.b(),E.f(4,C)),W.write(B);for(U=W=0;U<j.length;U+=1)W+=j[U].j;if(B.f()>8*W)throw Error("code length overflow. ("+B.f()+">"+8*W+")");for(B.f()+4<=8*W&&B.put(0,4);B.f()%8!=0;)B.m(!1);for(;!(B.f()>=8*W)&&(B.put(236,8),!(B.f()>=8*W));)B.put(17,8);var re=0;for(W=U=0,V=Array(j.length),J=Array(j.length),Q=0;Q<j.length;Q+=1){var ie=j[Q].j,oe=j[Q].o-ie;for(U=Math.max(U,ie),W=Math.max(W,oe),V[Q]=Array(ie),X=0;X<V[Q].length;X+=1)V[Q][X]=255&B.B()[X+re];for(re+=ie,X=E.C(oe),ie=x(V[Q],X.b()-1).l(X),J[Q]=Array(X.b()-1),X=0;X<J[Q].length;X+=1)oe=X+ie.b()-J[Q].length,J[Q][X]=0<=oe?ie.c(oe):0}for(X=B=0;X<j.length;X+=1)B+=j[X].o;for(B=Array(B),X=re=0;X<U;X+=1)for(Q=0;Q<j.length;Q+=1)X<V[Q].length&&(B[re]=V[Q][X],re+=1);for(X=0;X<W;X+=1)for(Q=0;Q<j.length;Q+=1)X<J[Q].length&&(B[re]=J[Q][X],re+=1);I=B}for(j=I,B=-1,U=A-1,W=7,V=0,Y=E.F(Y),J=A-1;0<J;J-=2)for(J==6&&--J;;){for(Q=0;2>Q;Q+=1)D[U][J-Q]==null&&(X=!1,V<j.length&&(X=(j[V]>>>W&1)==1),Y(U,J-Q)&&(X=!X),D[U][J-Q]=X,--W,W==-1&&(V+=1,W=7));if(U+=B,0>U||A<=U){U-=B,B=-B;break}}}var L=b[T],D=null,A=0,I=null,N=[],z={u:function(j){j=d(j),N.push(j),I=null},a:function(j,Y){if(0>j||A<=j||0>Y||A<=Y)throw Error(j+","+Y);return D[j][Y]},h:function(){return A},J:function(){for(var j=0,Y=0,B=0;8>B;B+=1){k(!0,B);var U=E.D(z);(B==0||j>U)&&(j=U,Y=B)}k(!1,Y)}};return z}function x(C,T){if(typeof C.length=="undefined")throw Error(C.length+"/"+T);var R=function(){for(var L=0;L<C.length&&C[L]==0;)L+=1;for(var D=Array(C.length-L+T),A=0;A<C.length-L;A+=1)D[A]=C[A+L];return D}(),k={c:function(L){return R[L]},b:function(){return R.length},multiply:function(L){for(var D=Array(k.b()+L.b()-1),A=0;A<k.b();A+=1)for(var I=0;I<L.b();I+=1)D[A+I]^=v.i(v.g(k.c(A))+v.g(L.c(I)));return x(D,0)},l:function(L){if(0>k.b()-L.b())return k;for(var D=v.g(k.c(0))-v.g(L.c(0)),A=Array(k.b()),I=0;I<k.b();I+=1)A[I]=k.c(I);for(I=0;I<L.b();I+=1)A[I]^=v.i(v.g(L.c(I))+D);return x(A,0).l(L)}};return k}g.s=function(C){for(var T=[],R=0;R<C.length;R++){var k=C.charCodeAt(R);128>k?T.push(k):2048>k?T.push(192|k>>6,128|k&63):55296>k||57344<=k?T.push(224|k>>12,128|k>>6&63,128|k&63):(R++,k=65536+((k&1023)<<10|C.charCodeAt(R)&1023),T.push(240|k>>18,128|k>>12&63,128|k>>6&63,128|k&63))}return T};var b={L:1,M:0,Q:3,H:2},E=function(){function C(k){for(var L=0;k!=0;)L+=1,k>>>=1;return L}var T=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],R={w:function(k){for(var L=k<<10;0<=C(L)-C(1335);)L^=1335<<C(L)-C(1335);return(k<<10|L)^21522},A:function(k){for(var L=k<<12;0<=C(L)-C(7973);)L^=7973<<C(L)-C(7973);return k<<12|L},G:function(k){return T[k-1]},F:function(k){switch(k){case 0:return function(L,D){return(L+D)%2==0};case 1:return function(L){return L%2==0};case 2:return function(L,D){return D%3==0};case 3:return function(L,D){return(L+D)%3==0};case 4:return function(L,D){return(Math.floor(L/2)+Math.floor(D/3))%2==0};case 5:return function(L,D){return L*D%2+L*D%3==0};case 6:return function(L,D){return(L*D%2+L*D%3)%2==0};case 7:return function(L,D){return(L*D%3+(L+D)%2)%2==0};default:throw Error("bad maskPattern:"+k)}},C:function(k){for(var L=x([1],0),D=0;D<k;D+=1)L=L.multiply(x([1,v.i(D)],0));return L},f:function(k,L){if(k!=4||1>L||40<L)throw Error("mode: "+k+"; type: "+L);return 10>L?8:16},D:function(k){for(var L=k.h(),D=0,A=0;A<L;A+=1)for(var I=0;I<L;I+=1){for(var N=0,z=k.a(A,I),j=-1;1>=j;j+=1)if(!(0>A+j||L<=A+j))for(var Y=-1;1>=Y;Y+=1)0>I+Y||L<=I+Y||(j!=0||Y!=0)&&z==k.a(A+j,I+Y)&&(N+=1);5<N&&(D+=3+N-5)}for(A=0;A<L-1;A+=1)for(I=0;I<L-1;I+=1)N=0,k.a(A,I)&&(N+=1),k.a(A+1,I)&&(N+=1),k.a(A,I+1)&&(N+=1),k.a(A+1,I+1)&&(N+=1),(N==0||N==4)&&(D+=3);for(A=0;A<L;A+=1)for(I=0;I<L-6;I+=1)k.a(A,I)&&!k.a(A,I+1)&&k.a(A,I+2)&&k.a(A,I+3)&&k.a(A,I+4)&&!k.a(A,I+5)&&k.a(A,I+6)&&(D+=40);for(I=0;I<L;I+=1)for(A=0;A<L-6;A+=1)k.a(A,I)&&!k.a(A+1,I)&&k.a(A+2,I)&&k.a(A+3,I)&&k.a(A+4,I)&&!k.a(A+5,I)&&k.a(A+6,I)&&(D+=40);for(I=N=0;I<L;I+=1)for(A=0;A<L;A+=1)k.a(A,I)&&(N+=1);return D+=Math.abs(100*N/L/L-50)/5*10}};return R}(),v=function(){for(var C=Array(256),T=Array(256),R=0;8>R;R+=1)C[R]=1<<R;for(R=8;256>R;R+=1)C[R]=C[R-4]^C[R-5]^C[R-6]^C[R-8];for(R=0;255>R;R+=1)T[C[R]]=R;return{g:function(k){if(1>k)throw Error("glog("+k+")");return T[k]},i:function(k){for(;0>k;)k+=255;for(;256<=k;)k-=255;return C[k]}}}(),S=function(){function C(k,L){switch(L){case b.L:return T[4*(k-1)];case b.M:return T[4*(k-1)+1];case b.Q:return T[4*(k-1)+2];case b.H:return T[4*(k-1)+3]}}var T=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],R={I:function(k,L){var D=C(k,L);if(typeof D=="undefined")throw Error("bad rs block @ typeNumber:"+k+"/errorCorrectLevel:"+L);k=D.length/3,L=[];for(var A=0;A<k;A+=1)for(var I=D[3*A],N=D[3*A+1],z=D[3*A+2],j=0;j<I;j+=1){var Y=z,B={};B.o=N,B.j=Y,L.push(B)}return L}};return R}();return g}());const QrCreator$1=QrCreator;let lastFolder;function addFiles(){const{close:d}=newDialog({title:"Add files or folders",dialogProps:{sx:{minWidth:"min(80vw, 40em)",minHeight:"calc(100vh - 9em)"}},Content(){const m=getFolderFromSelected();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{sx:{typography:"body1",px:1,py:2}},"Selected elements will be added under ",m.isRoot?reactExports.createElement("i",{},"Home"):decodeURI(m.id)),reactExports.createElement(FilePicker,{from:lastFolder!=null?lastFolder:m.source,onSelect(x){return vt(this,null,function*(){const b=yield Promise.all(x.map(S=>apiCall("add_vfs",{parent:m.id,source:S}).then(C=>C,C=>[S,C.message])));lastFolder=x[0].slice(0,x[0].lastIndexOf("/"));const E=b.filter(Array.isArray);E.length&&(yield alertDialog$1(reactExports.createElement(Box,{},"Some elements have been rejected",reactExports.createElement("ul",{},E.map(([S,C])=>reactExports.createElement("li",{key:S},S,": ",C)))),"error"));const v=b.filter(S=>S.name).map(S=>m.id+pathEncode(S.name)+(S.link.endsWith("/")?"/":""));reloadVfs(v),d()})}}))}})}function addVirtual(){return vt(this,null,function*(){try{const d=yield promptDialog$1("Enter folder name");if(!d)return;const{id:m}=getFolderFromSelected(),g=yield apiCall("add_vfs",{parent:m,name:d});toast$1(`Folder "${g.name}" created`,"success"),reloadVfs([m+pathEncode(g.name)+"/"])}catch(d){yield alertDialog$1(d)}})}function addLink(){return vt(this,null,function*(){try{const{id:d}=getFolderFromSelected(),m=yield apiCall("add_vfs",{parent:d,name:"new link",url:"https://example.com"});reloadVfs([d+pathEncode(m.name)]),toast$1("Link created","success",{onClose:()=>focusSelector("input[name=url]")})}catch(d){yield alertDialog$1(d)}})}function getFolderFromSelected(){const d=state$1.selectedFiles[0]||state$1.vfs;return d.type==="folder"?d:d.parent}function MenuButton(g){var x=g,{items:d}=x,m=Vt(x,["items"]);const[b,E]=reactExports.useState(),v=!!b,S=reactExports.useCallback(()=>E(void 0),[]),C=reactExports.useId(),T=reactExports.useId();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Btn$1,Fe({id:C,"aria-controls":v?T:void 0,"aria-haspopup":!0,"aria-expanded":v?!0:void 0,onClick(R){E(R.currentTarget)}},m)),reactExports.createElement(Menu$2,{id:T,anchorEl:b,open:v,onClose:S,MenuListProps:{"aria-labelledby":C},children:d.map((R,k)=>reactExports.createElement(MenuItem,$t(Fe({key:k},R),{onClick(){var L;S(),(L=R.onClick)==null||L.apply(this,arguments)}})))}))}function VfsMenuBar({statusApi:d,add:m}){return reactExports.createElement(Flex$1,{zIndex:2,gap:1,backgroundColor:"background.paper",width:"fit-content"},reactExports.createElement(AddVfsBtn),reloadBtn(()=>reloadVfs()),reactExports.createElement(Btn$1,{icon:Storage,title:"Disk spaces",onClick:()=>apiCall("get_disk_spaces").then(g=>alertDialog$1(reactExports.createElement(List,{dense:!0},g.map(x=>reactExports.createElement(ListItem,{key:x.name},reactExports.createElement(ListItemIcon,{},reactExports.createElement(Storage)),reactExports.createElement(ListItemText,{sx:{wordBreak:"break-word"},primary:x.name+prefix(" (",x.description,")"),secondary:formatDiskSpace(x)})))),{title:"Disk spaces"}).then(()=>!1),alertDialog$1)}),m,reactExports.createElement(SystemIntegrationButton,d.data))}function AddVfsBtn(d){return reactExports.createElement(MenuButton,$t(Fe({variant:"contained",icon:Add},d),{items:[{children:"virtual folder",onClick:addVirtual},{children:"file or folder from disk",onClick:addFiles},{children:"web-link",onClick:addLink}]}))}function SystemIntegrationButton({platform:d}){const m=d==="win32",{data:g,reload:x}=useApi(m&&"windows_integrated"),b=useBreakpoint("sm");return m?reactExports.createElement(Btn$1,Fe({icon:osIcon("win"),variant:"outlined",doneMessage:!0},g!=null&&g.is?{confirm:!0,children:"Remove integration",onClick:()=>apiCall("windows_remove").then(x)}:{children:"System integration",onClick(){return vt(this,null,function*(){const v=reactExports.createElement(Box,{width:{xs:"100%",sm:"34em"}},reactExports.createElement("img",{src:"win-shell.png",style:{display:"block",width:"100%"}}),reactExports.createElement(Alert,{severity:"info"},"We are going to add a command in the right-click of Windows File Manager.",reactExports.createElement(Box,{},"It will also automatically copy the URL, ready to paste!"))),S=yield promptDialog$1(v,{field:{comp:VfsPathField,files:!1,label:"Add to this folder",placeholder:"home",autoFocus:b},form:{saveOnEnter:!1}});return typeof S=="string"&&apiCall("windows_integration",{parent:S}).then(x)})}})):null}const SYS_ICONS={login:["👤","user"],user:["👤","user"],filter:["✂"],search:["🔍"],search_off:["❌","cancel"],close:["❌","cancel"],error:["❌","cancel"],stop:["⏹️"],options:["⚙","cog"],archive:["📦"],logout:["🚪"],home:["🏠"],parent:["⬅","left"],folder:["📂"],file:["📄","doc"],spinner:["🎲","spin6 spinner"],password:["🗝️","key"],download:["⬇️"],upload:["⬆️"],reload:["🔄","reload"],lock:["🔒","lock"],admin:["👑","crown"],check:["✔️"],to_start:["◀"],to_end:["▶"],menu:["☰"],list:["☰","menu"],play:["▶"],pause:["⏸"],edit:["✏️"],zoom:["↔"],delete:["🗑️","trash"],comment:["💬"],link:["↗"],info:["ⓘ"],cut:["✄"],paste:["📋"],copy:["⧉"],shuffle:["🔀"],repeat:["🔁","reload"],success:["👍","check"],warning:["⚠️",!1],audio:["🎧"],video:["🎥"],image:["📸"],cancel:["❌","cancel"],total:["➕","spin6"]},ANY_LANGUAGE="all";function i18nFromTranslations(d,m="en"){const g=proxy({embedded:m,disabled:!1,translations:d}),x=[];watch(T=>{const R=T(g);x.splice(0,1/0,ANY_LANGUAGE,...R.disabled?[]:Object.keys(R.translations),R.embedded)});const b=new Set;function E(){return Object.keys(g.translations)}function v(T,R,k){var j,Y;if(!T)return"";const L=C(T)?[k!=null?k:k=T[0]]:Array.isArray(T)?T:[T];typeof R=="string"&&!k&&(k=R,R=null);let D,A="";const{embedded:I}=g,N=Object.keys(g.translations);for(const B of L){for(const U of x)if(D=(Y=(j=g.translations[A=U])==null?void 0:j.translate)==null?void 0:Y[B])break;if(D)break;!b.has(B)&&N.length&&N[0]!==I&&(b.add(B),console.debug("miss i18n:",B))}return D||(D=k||L[L.length-1],A=I),Array.from(S(D)).map(([B,U])=>{if(!U)return B;const[W,V,J]=B.split(",").map(X=>X.trim());if(!R)throw"missing params on "+L[0];const Q=W&&R[W];return V==="plural"&&J?z(Q,J):Q||Q===0?Q:""}).join("");function z(B,U){const W=Intl.PluralRules?new Intl.PluralRules(A||I).select(Number(B)):"other";let V="",J=!1,Q=!1;for(const[re,ie]of S(U)){if(J)return X(re);if(Q&&(V=re,Q=!1),ie)continue;const oe=re.trim().split(/\s+/);J=oe.some(Z=>Z[0]==="="&&B===Number(Z.slice(1))||Z===W),Q=!J&&oe.includes("other")}return X(V);function X(re){return re.replace("#",String(B))}}}function*S(T){let R=0;for(;;){const k=T.indexOf("{",R);if(k<0)break;yield[T.slice(R,k),!1];let L=1;for(R=k+1;L&&R<T.length;)T[R]==="{"?L++:T[R]==="}"&&L--,R++;if(L)return console.debug("tokenizer: unclosed");yield[T.slice(k+1,R-1),!0]}yield[T.slice(R),!1]}function C(T){return(T==null?void 0:T.raw)&&Array.isArray(T)}return{t:v,state:g,getLangs:E,i18nWrapperProps:()=>({lang:E()[0]||g.embedded}),useI18N(){return useSnapshot(g),{t:v}}}}const state=proxy($t(Fe({expandedUsername:[],uploadOnExisting:getHFS().dontOverwriteUploading?"rename":"skip",uri:"",canChangePassword:!1,props:{}},objSameKeys(FRONTEND_OPTIONS,(d,m)=>{var g;return(g=getHFS()[m])!=null?g:d})),{iconsReady:!1,username:"",list:[],clip:[],loading:!1,listReloader:0,patternFilter:"",showFilter:!1,selected:{},remoteSearch:void 0}));function useSnapState(){return useSnapshot(state)}const SETTINGS_KEY="hfs_settings",SETTINGS_WITHOUT_GUI=["file_menu_on_link"],SETTINGS_TO_STORE=_.difference(typedKeys(FRONTEND_OPTIONS),SETTINGS_WITHOUT_GUI).concat(["uploadOnExisting"]);loadSettings();for(const d of SETTINGS_TO_STORE)subscribeKey(state,d,storeSettings);function loadSettings(){const d=localStorage.getItem(SETTINGS_KEY);if(!d)return;let m;try{m=JSON.parse(d)}catch(g){console.error("invalid settings stored",d);return}for(const g of SETTINGS_TO_STORE){const x=m[g];x!==void 0&&(state[g]=x)}}function storeSettings(){localStorage.setItem(SETTINGS_KEY,JSON.stringify(_.pick(state,SETTINGS_TO_STORE)))}const nf=class nf{constructor(m,g){var b,E;if(this.ext="",this.isFolder=m.endsWith("/"),this.isFolder&&(m=m.slice(0,-1)),Object.assign(this,g),this.n=m,this.uri=(g==null?void 0:g.url)||(!m||m[0]==="/"?"":location.pathname)+pathEncode(m)+(this.isFolder?"/":""),!this.isFolder){const v=m.lastIndexOf(".")+1;this.ext=v?m.substring(v).toLowerCase():""}this.c&&(this.c=new Date(this.c)),this.m=this.m?new Date(this.m):this.c,this.name=m.slice(m.lastIndexOf("/")+1);const x=this.isFolder&&!this.web?"L":"R";this.cantOpen=(b=this.p)!=null&&b.match(x)?!0:(E=this.p)!=null&&E.match(x.toLowerCase())?nf.FORBIDDEN:void 0}isRoot(){return!this.name}getNext(){return this.getSibling(1)}getPrevious(){return this.getSibling(-1)}getNextFiltered(){return this.getSibling(1,state.filteredList)}getPreviousFiltered(){return this.getSibling(-1,state.filteredList)}getSibling(m,g=state.list){return g[m+g.findIndex(x=>x.n===this.n)]}getDefaultIcon(){var m;return hIcon(this.icon===!0?`${this.n}?get=icon`:(m=this.icon)!=null?m:this.isFolder||this.web?"folder":this.url?"link":ext2type(this.ext)||"file")}canArchive(){var m,g,x;return((m=this.p)==null?void 0:m.includes("A"))||((g=state.props)==null?void 0:g.can_archive)&&!((x=this.p)!=null&&x.includes("a"))}canDelete(){var m,g,x;return!this.isRoot()&&(((m=this.p)==null?void 0:m.includes("D"))||((g=state.props)==null?void 0:g.can_delete_children)&&!((x=this.p)!=null&&x.includes("d")))}canUpload(){var m,g,x;return this.isFolder&&(((m=this.p)==null?void 0:m.includes("U"))||((g=state.props)==null?void 0:g.can_upload)&&!((x=this.p)!=null&&x.includes("u")))}canSelect(){return this.url||this.isRoot()?!1:this.canArchive()||this.canDelete()||hfsEvent("enableEntrySelection",{entry:this}).some(Boolean)}};nf.FORBIDDEN="FORBIDDEN";let DirEntry=nf;const exts={image:["jpeg","jpg","gif","png","webp","svg"],audio:["mp3","wav","m4a","ogg","flac"],video:["mp4","mpeg","mpg","webm","mov","m4v","mkv"],archive:["zip","rar","gz","tgz"]};function ext2type(d){return _.findKey(exts,m=>m.includes(d))}const i18n=i18nFromTranslations(getHFS().lang||{},EMBEDDED_LANGUAGE);i18n.state.disabled=!urlParams.lang&&state.disableTranslation;const{t:t$d}=i18n;function Spinner(d){return hIcon("spinner",Fe({className:"spinner"},d))}const Flex=reactExports.forwardRef((C,S)=>{var T=C,{gap:d=".8em",center:m=!1,vert:g=!1,children:x=null,className:b="",props:E={}}=T,v=Vt(T,["gap","center","vert","children","className","props"]);return reactExports.createElement("div",Fe({ref:S,className:b,style:Fe({display:"flex",gap:d,flexDirection:g?"column":void 0,alignItems:g?void 0:"center",justifyContent:m?"center":void 0},v)},E),x)}),FlexV=reactExports.forwardRef((d,m)=>reactExports.createElement(Flex,Fe({ref:m,vert:!0},d))),Checkbox=reactExports.forwardRef((S,v)=>{var C=S,{onChange:d,value:m,children:g,labelProps:x,id:b}=C,E=Vt(C,["onChange","value","children","labelProps","id"]);const T=reactExports.createElement("input",Fe($t(Fe({ref:v,type:"checkbox",onChange:R=>d==null?void 0:d(!!R.target.checked,R)},m!==void 0&&{checked:!!m}),{value:1,id:g?void 0:b}),E));return g?reactExports.createElement("label",Fe({id:b},x),T,g):T});function CustomCode(b){var E=b,{name:d,children:m,render:g}=E,x=Vt(E,["name","children","render"]);const v=reactExports.useMemo(()=>hfsEvent(d,Object.assign(x,{def:m})),[d,m,...x?Object.values(x):[]]),[S,C]=useStateMounted([]);return reactExports.useEffect(()=>{var L,D;if(v.isDefaultPrevented()||v.some(A=>A===null))return C(null);const T=v.map(k);v.forEach((A,I)=>{typeof(A==null?void 0:A.then)=="function"&&A.then(N=>{T[I]=k(N,I),C(onlyTruthy(T))},()=>{})});const R=(L=getHFS().customHtml)==null?void 0:L[d];(D=R==null?void 0:R.trim)!=null&&D.call(R)&&T.push(k(R,-1)),C(onlyTruthy(T));function k(A,I){return reactExports.isValidElement(A)?reactExports.createElement(reactExports.Fragment,{key:I},A):A===0||A&&isPrimitive(A)?reactExports.createElement(Html,{key:I},String(A)):_.isArray(A)?reactExports.createElement(reactExports.Fragment,{key:I},...A):null}},[v]),g!=null||(g=_.identity),reactExports.createElement(reactExports.Fragment,{},g(S&&(S!=null&&S.length||!m?S:m)))}function iconBtn(d,m,b={}){var E=b,{title:g}=E,x=Vt(E,["title"]);return reactExports.createElement("button",$t(Fe({title:g!=null?g:t$d(_.capitalize(d)),onClick:m},x),{className:"icon-button "+(x.className||"")}),d.length>1?hIcon(d):d)}function Btn(T){var R=T,{icon:d,label:m,tooltip:g,toggled:x,onClick:b,onClickAnimation:E,asText:v,successFeedback:S}=R,C=Vt(R,["icon","label","tooltip","toggled","onClick","onClickAnimation","asText","successFeedback"]);const[k,L]=reactExports.useState(!1),[D,A]=reactExports.useState(!1),I=reactExports.useRef();return reactExports.createElement(v?"a":"button",$t(Fe(Fe({title:m+prefix(" - ",g),"aria-label":m,"aria-pressed":x,onClick(N){v&&N.preventDefault(),b&&(E!==!1&&L(!0),Promise.resolve(b()).finally(()=>L(!1)).then(()=>{S&&(A(!0),clearTimeout(I.current),I.current=setTimeout(()=>A(!1),1e3))},()=>{}))}},C),v?{role:"button",style:Fe({cursor:"pointer"},C.style)}:void 0),{className:[C.className,x&&"toggled",k&&"ani-working",D&&"success"].filter(Boolean).join(" ")}),d&&(reactExports.isValidElement(d)?d:hIcon(d)),reactExports.createElement("span",{className:"label"},m))}function Bytes(g){var x=g,{bytes:d}=x,m=Vt(x,["bytes"]);return reactExports.createElement("span",Fe(Fe({},noAriaTitle(d.toLocaleString())),m),formatBytes(d))}function toast(d,m="info",{timeout:g=5e3}={}){console.debug("toast",d);const x=Math.random();toasts.push({id:x,content:d,type:m,close:E});const b=pendingPromise();return setTimeout(E,g),{close:E,closed:b};function E(){const v=_.find(toasts,{id:x});v&&(v.closed=!0,b.resolve())}}const toasts=proxy([]),{t:t$c}=i18n;_.merge(dialogsDefaults,{closableProps:{"aria-label":t$c`Close`}});function promptDialog(L){return vt(this,arguments,function*(d,R={}){var k=R,{value:m,type:g,helperText:x,trim:b=!0,inputProps:E,onSubmit:v,onField:S,placeholder:C}=k,T=Vt(k,["value","type","helperText","trim","inputProps","onSubmit","onField","placeholder"]);const D=g==="textarea"&&g;return new Promise(I=>newDialog($t(Fe({className:"dialog-prompt",icon:"?",onClose:I},T),{Content:A})));function A(){const I=reactExports.useRef();return reactExports.useEffect(()=>{const z=I.current;if(!z)return;const j=z;if(setTimeout(()=>j.focus(),100),m&&(j.value=m),S==null||S(j),D){let Y=function(){j.style.height="auto",j.style.height=j.scrollHeight+5+"px"};setTimeout(Y),j.addEventListener("input",Y)}},[D]),reactExports.createElement("form",{},reactExports.createElement("label",{htmlFor:"input"},d),reactExports.createElement(D||"input",$t(Fe({ref:I,type:g,name:"input",autoFocus:!0,placeholder:C},E),{style:Fe({width:m?m.length/2+"em":"auto",minWidth:"100%",maxWidth:"100%",boxSizing:"border-box"},D&&{width:"30em",maxHeight:"70vh"}),onKeyDown(z){const{key:j}=z;if(j==="Escape")return closeDialog();if((D?isCtrlKey(z):j)==="Enter")return z.preventDefault(),N()}})),x&&reactExports.createElement("div",{style:{fontSize:"smaller",marginTop:".2em"}},x),reactExports.createElement("div",{style:{textAlign:"right",marginTop:".8em"}},reactExports.createElement("button",{onClick:N},t$c`Continue`)));function N(){return vt(this,null,function*(){var j,Y;let z=(j=I.current)==null?void 0:j.value;b&&(z=z==null?void 0:z.trim());try{v&&z!==void 0&&(z=(Y=yield v==null?void 0:v(z))!=null?Y:z),closeDialog(z)}catch(B){alertDialog(B,"error")}})}}})}function formDialog(m){return vt(this,null,function*(){var d=Vt(m,[]);return new Promise(g=>{const{close:x}=newDialog($t(Fe({className:"dialog-form"},d),{onClose:g,Content(){return reactExports.createElement("form",{onSubmit(b){b.preventDefault(),x(Object.fromEntries(new FormData(b.target).entries()))}},reactExports.createElement(d.Content))}}))})})}let lastMsg;function alertDialog(d,m="info",g=""){if(d===lastMsg)return;lastMsg=d,d instanceof Error&&(m="error");const x=pendingPromise();return Object.assign(x,newDialog({className:"dialog-alert dialog-alert-"+m,title:g||t$c(_.capitalize(m)),icon:"!",onClose:x.resolve,dialogProps:{role:"alertdialog"},Content:b}));function b(){if(d instanceof Error){const E=err2msg(d),v=d.message;d=reactExports.createElement("div",{},E,v!==E&&reactExports.createElement("div",{style:{marginTop:20,fontSize:"small"}},v))}return typeof d=="string"&&(d=reactExports.createElement("p",{},d)),d}}function confirmDialog(d,m={}){const R=m,{href:g,afterButtons:x,timeout:b,timeoutConfirm:E=!1}=R,v=Vt(R,["href","afterButtons","timeout","timeoutConfirm"]);typeof d=="string"&&(d=reactExports.createElement("p",{},d));const S=pendingPromise(),C=newDialog($t(Fe({className:"dialog-confirm",icon:"?",onClose:S.resolve},v),{Content:T}));return Object.assign(S,C);function T(){const[k,L]=reactExports.useState(Math.ceil(b||0));useInterval(()=>L(A=>Math.max(0,A-1)),1e3);const D=b&&b>0&&b<60&&` (${k})`||"";return reactExports.useEffect(()=>{b&&!k&&C.close(E)},[k]),reactExports.createElement("div",{},d,reactExports.createElement("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"1em"}},reactExports.createElement("a",{href:g,tabIndex:-1,onClick(){C.close(!0)}},reactExports.createElement("button",{},t$c`Yes`,E&&D)),reactExports.createElement("button",{onClick(){C.close(!1)}},t$c`Don't`,!E&&D),x))}}const dialogLib=Object.freeze(Object.defineProperty({__proto__:null,Dialogs,alertDialog,anyDialogOpen,closeDialog,componentOrNode,confirmDialog,dialogsDefaults,focusableSelector,formDialog,isDescendant,newDialog,promptDialog,toast},Symbol.toStringTag,{value:"Module"})),documentComplete=document.readyState==="complete"?Promise.resolve():new Promise(d=>document.addEventListener("readystatechange",d));var Am;Promise.race([documentComplete,(Am=document.fonts)==null?void 0:Am.ready]).then(()=>vt(void 0,null,function*(){if(!document.fonts)return state.iconsReady=!0;const d="9px fontello";yield document.fonts.load(d),state.iconsReady=document.fonts.check(d)}));const Icon=reactExports.memo(b=>{var E=b,{name:d,alt:m,className:g=""}=E,x=Vt(E,["name","alt","className"]);var L,D;if(!d)return null;d=(D=(L=getHFS().icons)==null?void 0:L[d])!=null?D:d;const[v,S=d]=SYS_ICONS[d]||[],{iconsReady:C}=useSnapState();g+=" icon";const T=d.length===1||d.match(/^[\uD800-\uDFFF\u2600-\u27BF\u2B00-\u2BFF\u3030-\u303F\u3297\u3299\u00A9\u00AE\u200D\u20E3\uFE0F\u2190-\u21FF\u2300-\u23FF\u2400-\u243F\u25A0-\u25FF\u2600-\u26FF\u2700-\u27BF]*$/),R=!T&&/[/?]/.test(d),k=C&&S;return g+=R?" file-icon":k?` font-icon fa-${S}`:" emoji-icon",reactExports.createElement("span",$t(Fe(Fe($t(Fe({},m?{"aria-label":m}:{"aria-hidden":!0}),{role:"img"}),x),R?{style:Fe({backgroundImage:`url(${JSON.stringify(d)})`},x==null?void 0:x.style)}:void 0),{className:g}),T?d:k?null:v||"#")}),{t:t$b}=i18n,{t:t$a,useI18N:useI18N$9}=i18n;function login$1(d,m,g){return vt(this,null,function*(){const x=working();return srpClientSequence(d,m,apiCall,g).catch(b=>{if(b.code==HTTP_METHOD_NOT_ALLOWED||!m)return apiCall("login",Fe({username:d,password:m},g));throw b}).then(b=>(hfsEvent("loginOk",{username:d}),refreshSession$1(b),state.loginRequired=!1,b),b=>{throw hfsEvent("loginFailed",{username:d,error:b}),Error(b.data==="trust"?t$a("login_untrusted","Login aborted: server identity cannot be trusted"):b.code===HTTP_UNAUTHORIZED&&!b.data?t$a("login_bad_credentials","Invalid credentials"):b.code===HTTP_CONFLICT?t$a("login_bad_cookies","Cookies not working - login failed"):t$a(b.message||String(b)))}).finally(x)})}const refreshSession$1=makeSessionRefresher(state);function logout(){return apiCall("logout",{},{modal:working}).catch(d=>{if(d.code!==HTTP_UNAUTHORIZED)throw d;if(state.username="",fallbackToBasicAuth())return location.reload();reloadList(),toast(t$a`Logged out`,"success")})}let closeLoginDialog,lastPromise;function loginDialog(d=!0,m=!0){return vt(this,null,function*(){return lastPromise=new Promise(g=>{if(fallbackToBasicAuth())return location.href="/?get=login";if(closeLoginDialog)return lastPromise;let x=!1;const{close:b}=newDialog({closable:d,className:"login-dialog",icon:()=>hIcon("login"),onClose(E){g(E),closeLoginDialog=void 0},title:()=>reactExports.createElement(reactExports.Fragment,{},useI18N$9().t("Login")),Content(){const E=reactExports.useRef(),v=reactExports.useRef(),S=reactExports.useRef();reactExports.useEffect(()=>{setTimeout(()=>{var k;return(k=E.current)==null?void 0:k.focus()})},[]);const{t:C}=useI18N$9();return reactExports.createElement("form",{onSubmit(k){k.preventDefault(),R(k)}},reactExports.createElement(CustomCode,{name:"beforeLogin"}),reactExports.createElement(CustomCode,{name:"loginUsernameField"},reactExports.createElement("div",{className:"field"},reactExports.createElement("label",{htmlFor:"login_username"},C`Username`),reactExports.createElement("input",{ref:E,id:"login_username",name:"username",autoComplete:"username",required:!0,onKeyDown:T}))),reactExports.createElement(CustomCode,{name:"loginPasswordField"},reactExports.createElement("div",{className:"field"},reactExports.createElement("label",{htmlFor:"login_password"},C`Password`),reactExports.createElement("input",{ref:v,id:"login_password",name:"password",type:"password",autoComplete:"current-password",required:!0,onKeyDown:T}))),reactExports.createElement(CustomCode,{name:"beforeLoginSubmit"}),reactExports.createElement("div",{className:"submit"},reactExports.createElement("button",{type:"submit"},C`Continue`)),reactExports.createElement("div",{id:"login-options"},reactExports.createElement(Checkbox,{ref:S,id:ALLOW_SESSION_IP_CHANGE},C(ALLOW_SESSION_IP_CHANGE,"Allow IP change during this session"))));function T(k){const{key:L}=k;if(L==="Escape")return b(null);if(L==="Enter")return R(k)}function R(k){return vt(this,null,function*(){var j,Y;const L=k.target instanceof HTMLElement&&k.target.closest("form");if(!L)return;k.stopPropagation();const z=_.pickBy(Object.fromEntries(new FormData(L).entries()),_.isString),{username:D,password:A}=z,I=Vt(z,["username","password"]),N=D.trim();if(!(x||!N)){x=!0;try{const B=yield login$1(N,A,Fe({[ALLOW_SESSION_IP_CHANGE]:(j=S.current)==null?void 0:j.checked},I));yield b(!0),toast(C`Logged in`,"success"),B!=null&&B.redirect?setTimeout(()=>getHFS().navigate(B.redirect),10):m&&reloadList()}catch(B){yield alertDialog(B),(Y=E.current)==null||Y.focus()}finally{x=!1}}})}}});closeLoginDialog=b})})}const{t:t$9,useI18N:useI18N$8}=i18n,{t:t$8,useI18N:useI18N$7}=i18n;function cut(d){if(state.clip=d,d.length)return toast(t$8("after_cut",`Your selection is now in the clipboard.
761
- Go to destination folder to paste.`),"info")}const{t:t$7,useI18N:useI18N$6}=i18n;function openFileMenu(d,m,g){return vt(this,null,function*(){var z,j,Y;const{uri:x,isFolder:b,s:E}=d,v=!((z=d.p)!=null&&z.includes("r")),S=!((j=d.p)!=null&&j.match(/L/i)),C=d.cantOpen===DirEntry.FORBIDDEN,R=[!(C||b&&!(v&&d.canArchive()&&S))&&{id:"download",label:t$7`Download`,href:x+(b?"?get=zip":"?dl"),icon:"download",target:"_blank"},((Y=state.props)==null?void 0:Y.can_comment)&&{id:"comment",label:t$7`Comment`,icon:"comment",onClick:()=>editComment(d)},...g.map(B=>{if(B==="open"){if(C)return;const U={id:"open",icon:"play",label:t$7("file_open","Open"),href:x,target:b||d.web?void 0:"_blank",rel:b||d.web?void 0:"noopener noreferrer",onClick:makeOnClickOpen(d)};return!b||U.onClick?U:reactExports.createElement(LinkClosingDialog,{to:x,reloadDocument:d.web},hIcon(U.icon),U.label)}return B==="delete"?d.canDelete()&&{id:"delete",label:t$7`Delete`,icon:"delete",onClick:()=>deleteFiles$1([d.uri])}:B==="show"?!d.cantOpen&&getShowComponent(d)&&{id:"show",label:t$7`Show`,icon:"image",onClick:()=>fileShow(d)}:B}),d.canDelete()&&{id:"rename",label:t$7`Rename`,icon:"edit",onClick:()=>rename(d)},d.canDelete()&&{id:"cut",label:t$7`Cut`,icon:"cut",onClick:()=>I(cut([d]))},b&&!d.web&&!d.cantOpen&&{id:"list",label:t$7`Get list`,href:x+"?get=list&folders=*",icon:"list",target:"_blank"}].filter(Boolean),k=d.n.slice(0,-1-d.name.length),L=[{id:"name",label:t$7`Name`,value:d.name},typeof E=="number"&&{id:"size",label:t$7`Size`,value:reactExports.createElement(reactExports.Fragment,{},formatBytes(E),reactExports.createElement("small",{className:HIDE_IN_TESTS},prefix(" (",E>getHFS().kb&&E.toLocaleString(),")")))},d.m&&{id:"timestamp",label:t$7`Timestamp`,value:d.m.toLocaleString()},d.c&&{id:"creation",label:t$7`Creation`,value:d.c.toLocaleString()},k&&{id:"folder",label:t$7`Folder`,value:reactExports.createElement(Link$2,{to:(k.startsWith("/")?"":location.pathname)+pathEncode(k)+"/",onClick:()=>closeDialog(null,!0)},k.replaceAll("/"," / "))},b&&!d.cantOpen&&{id:"folderSize",label:t$7`Size`,value:reactExports.createElement(N)}].filter(Boolean),D=yield Promise.all(hfsEvent("fileMenu",{entry:d,menu:R,props:L}));R.push(...D.flat().filter(Boolean)),_.remove(R,(B,U)=>_.find(R,W=>B.id?B.id===W.id:!W.id&&B.label===W.label,U+1));const A=getEntryIcon(d),{close:I}=newDialog({title:b?t$7`Folder menu`:t$7`File menu`,className:"file-dialog",icon:()=>A,position:Math.min(innerWidth,innerHeight)<800?void 0:[m.pageX,m.pageY-scrollY],restoreFocus:m.screenY||m.screenX?!1:void 0,Content(){var J;const{t:B}=useI18N$6(),{data:U}=useApi("get_file_details",{uris:[d.uri]}),W=(J=U==null?void 0:U.details)==null?void 0:J[0],V=[...L,with_(renderUploaderFromDetails(W),Q=>Q&&{id:"uploader",label:B`Uploader`,value:Q})];return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement("dl",{className:"file-dialog-properties"},dontBotherWithKeys(V.map(Q=>reactExports.isValidElement(Q)?Q:_.isPlainObject(Q)?reactExports.createElement("div",{id:`menu-prop-${Q.id}`},reactExports.createElement("dt",{},Q.label),reactExports.createElement("dd",{},Q.value)):null)),d.cantOpen&&reactExports.createElement("div",{},hIcon("password",{style:{marginRight:".5em",marginTop:".5em"}}),B(MISSING_PERM))),reactExports.createElement("div",{className:"file-menu"},dontBotherWithKeys(R.map((Q,X)=>reactExports.isValidElement(Q)?Q:(Q==null?void 0:Q.label)&&reactExports.createElement("a",$t(Fe({key:X,href:"#"},_.omit(Q,["label","icon","toggled"])),{id:Q.id&&`menu-entry-${Q.id}`,className:Q.toggled?"toggled":void 0,onClick(ie){return vt(this,null,function*(){var oe;Q.href||ie.preventDefault();try{(yield(oe=Q.onClick)==null?void 0:oe.call(Q,ie))!==!1&&I()}catch(Z){alertDialog(Z)}})}}),hIcon(Q.icon||"file"),reactExports.createElement("label",{style:{display:"flex",flexDirection:"column"}},reactExports.createElement("div",{},Q.label),reactExports.createElement("small",{},Q.subLabel)))))))}});function N(){const[B,U]=reactExports.useState(!1),[W]=reactExports.useState(()=>randomId()),{data:V,error:J,loading:Q}=useApi(B&&"get_folder_size",{uri:d.uri,id:W},{timeout:!1}),X=useApi(Q&&"get_folder_size_partial",{id:W});return useInterval(X.reload,1e3),re(V||J)||(Q?reactExports.createElement("span",{},re(X.data)," ",reactExports.createElement(Btn,{asText:!0,label:t$7`Cancel`,icon:reactExports.createElement(Spinner),onClick(){U(!1)}})):reactExports.createElement(Btn,{asText:!0,label:t$7`Calculate`,onClick(){U(!0)}}));function re(ie){return ie&&(ie.code?err2msg(ie):reactExports.createElement("span",{},reactExports.createElement(Bytes,_.pick(ie,"bytes"))," / ",t$7("n_files",{n:ie.files.toLocaleString()},"{n,plural,one{# file} other{# files}}")))}}})}function rename(d){return vt(this,null,function*(){var T;const m=yield promptDialog(t$7`Name`,{value:d.name,title:t$7`Rename`,onField:R=>R.setSelectionRange(0,d.name.lastIndexOf("."))});if(!m)return;const{n:g,uri:x}=d;yield apiCall("rename",{uri:x,dest:m},{modal:working});const b=t$7`Operation successful`;if(x===location.pathname)return(T=alertDialog(b))==null?void 0:T.then(()=>getHFS().navigate(x+"../"+pathEncode(m)+"/"));const E=g.replace(/(.*?)[^/]+$/,(R,k)=>k+m),v=new DirEntry(E,Fe({key:g},d)),S=_.findIndex(state.list,{n:g});state.list[S]=v;const C=_.findIndex(state.filteredList,{n:g});C>=0&&(state.filteredList[C]=v),toast(b,"success")})}function editComment(d){return vt(this,null,function*(){const m=yield inputComment(d.name,d.comment);m!==void 0&&(yield apiCall("comment",{uri:d.uri,comment:m},{modal:working}),decodeURI(d.uri)===decodeURI(location.pathname)?_.set(state,"props.comment",m):updateEntry(d,g=>g.comment=m),operationSuccessful())})}function updateEntry(d,m){m(_.find(state.list,{n:d.n}))}function LinkClosingDialog(d){return reactExports.createElement(Link$2,d.reloadDocument?d:$t(Fe({},d),{to:"",onClick(g){return vt(this,null,function*(){var x;for(g.preventDefault();anyDialogOpen();)yield(x=closeDialog())==null?void 0:x.closed;getHFS().navigate(d.to)})}}))}function makeOnClickOpen(d){return d.cantOpen?m=>vt(this,null,function*(){if(m.preventDefault(),d.cantOpen===DirEntry.FORBIDDEN)return alertDialog(t$7`Forbidden`,"warning");if(yield loginDialog(!0,!1)){if(d.isFolder&&!d.web)return setTimeout(()=>getHFS().navigate(d.uri));location.href=d.uri}}):void 0}function renderUploaderFromDetails(d){if(!d)return;const{upload:m}=d;return m&&`${m.username||""}${prefix("@",m.ip)}`}const{t:t$6}=i18n,uploadState=proxy({uploadDialogIsOpen:!1,eta:0,speed:0,partial:0,progress:0,paused:!1,qs:[],adding:[],skipped:[],errors:[],doneByte:0,done:[]});window.onbeforeunload=d=>{if(uploadState.qs.length)return d.preventDefault(),d.returnValue=t$6("Uploading")};let stuckSince=1/0,bytesSentTimestamp=Date.now(),bytesSent=0;const recentSpeedSamples=[];setInterval(()=>{const d=Date.now(),m=(d-bytesSentTimestamp)/1e3,g=bytesSent/m;currentReq&&d-stuckSince>=1e4&&(currentReq.abort(),console.debug("upload stuck, aborting")),bytesSent=0,bytesSentTimestamp=d;const b=_.sumBy(uploadState.qs,v=>_.sumBy(v.entries,S=>S.file.size))-uploadState.partial,E=uploadState.uploading;E&&recentSpeedSamples.push(g),(!E||recentSpeedSamples.length>5)&&recentSpeedSamples.shift(),uploadState.paused&&(recentSpeedSamples.length=0),uploadState.speed=_.mean(recentSpeedSamples),uploadState.eta=b/uploadState.speed},2e3);let currentReq;const id$2=randomId();let userAborted=!1,closeLastDialog,reloadOnClose=!1;function startUpload(d,m,g=0){return vt(this,null,function*(){console.debug("start upload",d.path,g),uploadState.uploading=d,uploadState.progress=0,userAborted=!1;let x=!0;const b=getHFS().splitUploads,E=d.file.size,v=m+pathEncode(d.path);let S=!1;do{let R=currentReq=new XMLHttpRequest;const k=pendingPromise();stuckSince=Date.now(),R.onloadend=()=>vt(this,null,function*(){try{if(currentReq=void 0,uploadState.paused)return S=!0;if(x=!0,!userAborted&&!R.status){R=new XMLHttpRequest,R.open("PUT",v+A+"&simulating="+I.size,!1);try{R.send()}catch(z){console.log(z)}yield wait(500)}const{status:N}=R;if(N===HTTP_RANGE_NOT_SATISFIABLE)return S=!0;if(N===HTTP_PRECONDITION_FAILED){const z=Number(R.getResponseHeader("x-size"));if(R.getResponseHeader(MTIME_CHECK)){const j=fetch(v+"?get="+UPLOAD_TEMP_HASH).then(B=>B.text());if((yield calcHash(d.file,z))!==(yield j))return x=!1,console.debug("upload hash mismatch");console.debug("upload hash is matching")}return g=z,console.debug("resuming upload",z.toLocaleString())}if(userAborted||N===HTTP_CONFLICT){if(R.responseText==="retry")return yield wait(2e3);d.error=N?t$6("upload_conflict","already exists"):t$6`Interrupted`,uploadState.skipped.push(d)}else if(N>=400)C(N);else if(N){if(b&&(g+=b,g<E))return;uploadState.done.push($t(Fe({},d),{response:tryJson(R.responseText)})),uploadState.doneByte+=d.file.size,reloadOnClose=!0}else return yield wait(2e3);S=!0,k.then(T)}finally{k.resolve()}});let L=0;R.upload.onprogress=N=>{uploadState.partial=N.loaded+g,uploadState.progress=uploadState.partial/E,bytesSent+=N.loaded-L,N.loaded>L&&(stuckSince=Date.now()),L=N.loaded};const D=b&&g+b<E,A=buildUrlQueryString({id:id$2,mtime:d.file.lastModified,resume:g+(x?"!":""),partial:D?E-g:void 0,comment:d.comment||void 0,existing:with_(state.uploadOnExisting,N=>N!=="rename"?N:void 0)});R.open("PUT",v+A,!0);const I=d.file.slice(g,b?g+b:void 0);R.send(I),yield k}while(!S);function C(R){var A;const L={[HTTP_PAYLOAD_TOO_LARGE]:t$6`file too large`+(getHFS().proxyDetected?`
762
- – `+t$6("proxy_413","Check for this limit on the proxy server"):""),[HTTP_CONFLICT]:t$6("upload_conflict","already exists"),[HTTP_INSUFFICIENT_STORAGE]:t$6`insufficient storage`}[R]||HTTP_MESSAGES[R]||R;if(d.error=L,uploadState.errors.push(d)>1)return;const D=t$6("failed_upload",{name:d.path},"Couldn't upload {name}")+prefix(": ",L);closeLastDialog==null||closeLastDialog(),closeLastDialog=(A=alertDialog(D,"error"))==null?void 0:A.close}function T(){uploadState.uploading=void 0,uploadState.partial=0;const{qs:R}=uploadState;if(!R.length||(R[0].entries.shift(),R[0].entries.length||R.shift(),R.length)||(setTimeout(reloadList,500),reloadOnClose=!1,uploadState.uploadDialogIsOpen))return;const k=snapshot(uploadState);resetCounters();const L=reactExports.createElement("div",{},t$6(["upload_concluded","Upload terminated"],"Upload concluded:"),reactExports.createElement(UploadStatus,{snapshot:k,display:"flex",flexDirection:"column"}));k.errors.length||k.skipped.length?alertDialog(L,"warning"):toast(L,"success")}})}subscribe(uploadState,()=>{const[d]=uploadState.qs;d!=null&&d.entries.length&&!uploadState.uploading&&!uploadState.paused&&startUpload(d.entries[0],d.to)});function resetCounters(){Object.assign(uploadState,{errors:[],done:[],doneByte:0,skipped:[]})}function calcHash(d,m=1/0){return vt(this,null,function*(){const g=yield C(),x=Date.now(),b=d.stream().getReader();let E=m;const v=_.debounce(()=>uploadState.hashing=(m-E)/m,100,{maxWait:500});try{for(;E>0;){const T=yield b.read();if(T.done)break;const R=T.value.slice(0,E);g.update(R.buffer),E-=R.length,v(),yield wait(1)}}finally{v.flush(),uploadState.hashing=void 0}const S=g.digest().toString(16);return console.debug("hash calculated in",Date.now()-x,"ms",S),S;function C(){return vt(this,null,function*(){const T=(yield __vitePreload(()=>vt(this,null,function*(){const{h32:k}=yield import("./index-DtaRq1wi.js").then(L=>L.i);return{h32:k}}),[])).h32(),R=T.update;return T.update=k=>R.call(T,k),T})}})}const{t:t$5}=i18n;getHFS().dontOverwriteUploading;function UploadStatus(g){var x=g,{snapshot:d}=x,m=Vt(x,["snapshot"]);const b=useSnapshot(uploadState),{done:E,doneByte:v,errors:S,skipped:C}=d||b,T=E.length>0&&t$5("upload_finished",{n:E.length,size:formatBytes(v)},"{n} finished ({size})"),R=C.length>0&&t$5("upload_skipped",{n:C.length},"{n} skipped"),k=S.length>0&&t$5("upload_errors",{n:S.length},"{n} failed"),L=[T,R,k].filter(Boolean).join(" – ");if(!L)return null;const D=reactExports.createElement("span",{className:"horiz-sep"}," – ");return reactExports.createElement("div",{style:Fe({},m)},L,D,reactExports.createElement(Btn,{label:t$5`Show details`,asText:!0,onClick:A}),D,reactExports.createElement(Btn,{label:t$5("copy_links","Copy links"),asText:!0,successFeedback:!0,onClick(){return vt(this,null,function*(){yield copyTextToClipboard(E.map(N=>location.origin+N.response.uri).join(`
763
- `)),operationSuccessful()})}}));function A(){uploadState.uploadDialogIsOpen||closeDialog(),alertDialog(reactExports.createElement("div",{},[[T,E],[R,C],[k,S]].map(([N,z],j)=>N&&reactExports.createElement("div",{key:j},N,reactExports.createElement("ul",{},z.map((Y,B)=>reactExports.createElement("li",{key:B},Y.path,prefix(" (",Y.error,")"))))))))}}function inputComment(d,m){return promptDialog(t$5("enter_comment",{name:d},"Comment for {name}"),{value:m,type:"textarea"})}const{t:t$4,useI18N:useI18N$5}=i18n;function deleteFiles$1(d){return vt(this,null,function*(){const m=d.length;if(!(yield confirmDialog(t$4("delete_confirm",{n:m},"Delete {n,plural, one{# item} other{# items}}?"))))return!1;const g=working(),x=onlyTruthy(yield Promise.all(d.map(v=>apiCall("delete",{},{restUri:v}).then(()=>null,S=>(S==null?void 0:S.code)!==HTTP_NOT_FOUND&&{uri:v,err:S}))));g(),reloadList();const b=x.length,E=t$4("delete_completed",{n:m-b},"Deletion: {n} completed");if(m===1&&!b)return toast(E,"success");alertDialog(reactExports.createElement(reactExports.Fragment,{},E,b>0&&t$4("delete_failed",{n:b},", {n} failed"),reactExports.createElement("div",{style:{textAlign:"left",marginTop:"1em"}},...x.map(v=>reactExports.createElement(ErrorMsg,{err:t$4(err2msg(v.err))+": "+v.uri})))))})}const{useI18N:useI18N$4}=i18n,{useI18N:useI18N$3}=i18n,{useI18N:useI18N$2}=i18n,{t:t$3,useI18N:useI18N$1}=i18n,MISSING_PERM="Missing permission";reactExports.memo(({nPages:d,current:m,pageSize:g,changePage:x,atBottom:b})=>{reactExports.useEffect(()=>(document.body.style.overflowY="scroll",()=>{document.body.style.overflowY=""}),[]);const E=reactExports.useRef();reactExports.useEffect(()=>{var T;return(T=E.current)==null?void 0:T.scrollIntoView({block:"nearest"})},[m]);const v=d>20,S=_.floor(m,-1),C=S+10;return reactExports.createElement("div",{id:"paging"},reactExports.createElement("button",{title:t$3("go_first","Go to first item"),className:m?void 0:"toggled",onClick(){x(0)}},hIcon("to_start")),reactExports.createElement("div",{id:"paging-middle"},_.range(1,d).map(T=>(!v||!(T%10)||T>=S&&T<C)&&reactExports.createElement("button",$t(Fe({key:T},T===m&&{className:"toggled",ref:E}),{onClick:()=>x(T)}),v&&!(T%10)?T/10+"K":T*g))),reactExports.createElement("button",{title:t$3("go_last","Go to last item"),className:b?"toggled":void 0,onClick(){x(d-1,!0)}},hIcon("to_end")))});function useMidnight(){const[d,m]=reactExports.useState(g);return reactExports.useEffect(()=>{setTimeout(()=>m(g()),10*6e4)},[]),d;function g(){const x=new Date;x.setHours(x.getHours()-6);const b=new Date;return b.setHours(0,0,0,0),x<b?x:b}}function getEntryIcon(d){return reactExports.createElement(CustomCode,{name:"entryIcon",entry:d},d.getDefaultIcon())}const EntryDetails=reactExports.memo(({entry:d,midnight:m})=>{const{sort_by:g}=useSnapState(),x=g==="creation"?d.c:d.m,b=x&&x>m,E=useWindowSize().width<800,{t:v}=useI18N$1(),S="2-digit";return reactExports.createElement("div",{className:"entry-details"},reactExports.createElement(CustomCode,{name:"additionalEntryDetails",entry:d}),d.cantOpen&&hIcon(d.cantOpen===DirEntry.FORBIDDEN?"lock":"password",{className:"miss-perm",title:v(MISSING_PERM)}),reactExports.createElement(EntrySize,{s:d.s}),x&&reactExports.createElement("span",{className:"entry-ts","aria-hidden":!0,onClick(){E&&alertDialog(v`Full timestamp:`+`
764
- `+formatTimestamp(x))}},formatTimestamp(x,Fe(Fe({},!E||!b?{year:E?S:"numeric",month:S,day:S}:null),!E||b?{hour:S,minute:S}:null))))}),EntrySize=reactExports.memo(({s:d})=>d===void 0?null:reactExports.createElement(Bytes,{className:"entry-size",bytes:d}));function getId3Tags(d){return vt(this,null,function*(){const m=yield fetch(d,{headers:{Range:"bytes=0-2047"}}).then(E=>E.arrayBuffer()),g=new DataView(m);if(g.getUint32(0)!==1229206275)return;const x={};let b=10;for(;b<m.byteLength;){const E=String.fromCharCode(g.getUint8(b++),g.getUint8(b++),g.getUint8(b++),g.getUint8(b++));if(E==="\0\0\0\0")break;const v=g.getUint32(b);b+=6;const S=g.getUint8(b++)?{239:"utf-8",255:"utf-16le",254:"utf-16be"}[g.getUint8(b)]:"ISO-8859-1";x[E]=new TextDecoder(S).decode(m.slice(b,b+=v-1))}for(const[E,v]of Object.entries({TALB:"album",TIT2:"title",TPE1:"artist",TYER:"year",TRCK:"track"}))x[v]=x[E];return x})}const{t:t$2,useI18N}=i18n;var ZoomMode=(d=>(d[d.fullWidth=0]="fullWidth",d[d.freeY=1]="freeY",d[d.contain=2]="contain",d))(ZoomMode||{});function fileShow(d,{startPlaying:m=!1,startShuffle:g=!1}={}){if(!getShowComponent(d))return;let x=!1,b,E,v=!0,S=!0;const{close:C}=newDialog({noFrame:!0,className:"file-show",onClose(){b==null||b()},Content(){const{uri:T}=useSnapState();reactExports.useEffect(()=>{T!==E&&(E!=null||(E=T),E!==T&&C())},[T]);const[R,k,L]=useStateMounted(d),D=reactExports.useRef(0),A=reactExports.useRef(d),[I,N]=reactExports.useState(2),[z,j]=reactExports.useState();reactExports.useEffect(()=>ke(g),[]);const Y=reactExports.useRef(0);z||(Y.current=0);const[B,U,W]=useStateMounted(!1),[V,J]=reactExports.useState("");reactExports.useEffect(()=>{z&&rt(z[0])},[!!z]),useEventListener("keydown",({key:Je})=>{if(Je==="Escape"){if(x)return C();x=!0,b=toast(Re("esc_again","Press ESC twice to close")).close;return}if(x=!1,Je==="ArrowLeft")return Ge();if(Je==="ArrowRight")return Ie();if(Je==="ArrowDown")return Xe(1);if(Je==="ArrowUp")return Xe(-1);if(Je==="d")return location.href=R.uri+"?dl";if(Je==="z")return ot();if(Je==="f")return Oe();if(Je==="s")return ke();if(Je==="r")return Ne();if(Je==="a")return Ke();if(Je===" "){const gt=state.selected;gt[R.uri]?delete gt[R.uri]:gt[R.uri]=!0,state.showFilter=!0;return}});const[Q,X]=reactExports.useState(!1),re=reactExports.useMemo(()=>getShowComponent(R),[R]),ie=re===Audio;reactExports.useEffect(()=>X(ie),[ie]);const oe=reactExports.useRef(0),Z="nav"+(Q?"":" nav-hidden"),[ee,ce]=reactExports.useState(!1),[fe,ae]=reactExports.useState(!1),ue=reactExports.useRef(),pe=reactExports.useRef();reactExports.useEffect(()=>{Xe(-1e9)},[R]);const[ge,ye]=reactExports.useState();reactExports.useEffect(()=>ye(void 0),[R]);const{auto_play_seconds:Ee}=useSnapState(),[ve,Se]=reactExports.useState(m);function $e(){var Je;return(Je=ue.current)==null?void 0:Je.querySelector(".showing")}reactExports.useEffect(()=>{const Je=$e();try{if(!ve&&!S||!Je)return}finally{S=!1}if(Je instanceof HTMLMediaElement)return Je.play().catch(He),domOn("ended",Ie,{target:Je});if(!ve)return;const gt=setTimeout(Ie,state.auto_play_seconds*1e3);return()=>clearTimeout(gt)},[ve,R]);const{mediaSession:Me}=navigator;Me==null||Me.setActionHandler("nexttrack",Ie),Me==null||Me.setActionHandler("previoustrack",Ge);const{t:Re}=useI18N(),De=Re("autoplay_seconds","Seconds to wait on images"),Be=dirname(R.n),Le=reactExports.useRef();return reactExports.useEffect(()=>{re||Le.current===R||(Ye(),Le.current=R)},[R,re]),reactExports.createElement(FlexV,{gap:0,alignItems:"stretch",className:ie?void 0:ZoomMode[I],props:{role:"dialog",onMouseMove(){ie||(X(!0),clearTimeout(oe.current),oe.current=+setTimeout(()=>X(!1),1e3))}}},reactExports.createElement("div",{className:"bar"},reactExports.createElement("div",{className:"filename"},reactExports.createElement("small",{},Be),R.n.slice(Be.length)),reactExports.createElement("div",{className:"controls"},reactExports.createElement(EntryDetails,{entry:R,midnight:useMidnight()}),useWindowSize().width>800&&iconBtn("?",showHelp),reactExports.createElement("div",{},reactExports.createElement(Btn,{className:"small",label:Re`Auto-play`,toggled:ve,onClick:Ke}),ve&&reactExports.createElement(Btn,{className:"small",label:String(Ee),title:De,onClick:st})),iconBtn("menu",Je=>openFileMenu(R,Je,["open","delete",{id:"zoom",icon:"zoom",label:Re`Switch zoom mode`,onClick:ot},{id:"fullscreen",icon:"fullscreen",label:Re`Full screen`,onClick:Oe},{id:"shuffle",icon:"shuffle",label:Re`Shuffle`,toggled:!!z,onClick:()=>ke()},{id:"repeat",icon:"repeat",label:Re`Repeat`,toggled:B,onClick:Ne}])),iconBtn("close",C))),reactExports.createElement(FlexV,{center:!0,alignItems:"center",className:"main",ref:pe},ee&&reactExports.createElement(Spinner,{style:{position:"absolute",fontSize:"20vh",opacity:.5}}),fe===R.n?reactExports.createElement(FlexV,{alignItems:"center",textAlign:"center"},hIcon("error",{style:{fontSize:"20vh"}}),reactExports.createElement("div",{},R.name),Re`Loading failed`):reactExports.createElement("div",{className:"showing-container",ref:ue},reactExports.createElement("div",{className:"cover "+(V?"":"none"),style:{backgroundImage:V&&`url("${V}")`}}),re&&reactExports.createElement(re,{src:R.uri,className:"showing",onLoad(){A.current=R,ce(!1)},onError:Ye,onPlay(){return vt(this,null,function*(){var dt,jt;const Je=ie?state.list.filter(Wt=>Be===dirname(Wt.n)&&Wt.name.match(/(?:folder|cover|front|albumart.*)\.jpe?g$/i)):[];J(pathEncode(((dt=_.maxBy(Je,"s"))==null?void 0:dt.n)||""));const gt={title:R.name,album:decodeURIComponent(basename(dirname(R.uri))),artwork:Je.map(Wt=>({src:Wt.n}))},Ct=window.MediaMetadata&&(navigator.mediaSession.metadata=new MediaMetadata(gt));if(R.ext==="mp3"){const Wt=R.name.split(" - ");ye(Object.assign(gt,Fe({title:(jt=Wt.at(-1))==null?void 0:jt.slice(0,-4),artist:Wt.filter(Xt=>!isNumeric(Xt)).at(-2)},yield getId3Tags(location.pathname+R.n).catch(()=>{})))),Ct&&Object.assign(Ct,gt)}hfsEvent("showPlay",{entry:R,meta:gt,setCover(Wt){typeof Wt=="string"&&(J(Wt),Ct&&(navigator.mediaSession.metadata=new MediaMetadata(Object.assign(gt,{artwork:[{src:Wt}]}))))}})})}}),ge&&reactExports.createElement("div",{className:"meta-tags"},reactExports.createElement("div",{},...["title","artist","album","year"].map(Je=>reactExports.createElement("div",{key:Je,className:`meta-${Je}`},ge[Je]))))),hIcon("❮",{className:Z,style:{left:0},onClick:Ge}),hIcon("❯",{className:Z,style:{right:0},onClick:Ie})));function Ge(){Ve(-1)}function Ie(){Ve(1)}function Ye(){var gt,Ct;if(((Ct=(gt=document.querySelector(".showing-container .showing"))==null?void 0:gt.error)==null?void 0:Ct.code)!==2){if(R!==A.current)return Ve();ce(!1),ae(R.n)}}function He(Je){if(console.debug(Je),(Je==null?void 0:Je.name)!=="NotAllowedError"||!v)return;v=!1;const gt=$e();if(!(gt instanceof HTMLMediaElement))return;const Ct=gt,dt=newDialog({onClose:()=>v=!0,Content:()=>reactExports.createElement(Btn,{autoFocus:!0,icon:"play",label:"Click here to play",onClick:()=>{Ct.play().catch(He),dt.close()}})})}function Ve(Je=1){if(L()!==R)return;const{list:gt}=state;let Ct=z;if(z&&Je>0&&z.length<gt.length){const Wt=_.findIndex(z,{n:R.n});if(Wt>=Y.current){const Xt=1+Wt,Pt=z.slice(0,Xt);j(Ct=Pt.concat(_.shuffle(_.difference(gt,Pt))))}}Je&&(D.current=Je);let dt=R;for(;dt=dt.getSibling(D.current,Ct),!jt();)if(!dt){if(Je>0){if(W()){if(dt=(Ct==null?void 0:Ct[0])||gt[0],jt())break;continue}Se(!1)}return rt(A.current),restartAnimation(document.body,".2s blink")}if(rt(dt),z){const Wt=_.findIndex(Ct,{n:dt.n});Y.current=Math.max(Y.current,Wt)}function jt(){return dt&&!dt.isFolder&&getShowComponent(dt)}}function rt(Je){ae(!1),ce(Je!==A.current),k(Je)}function Oe(){var Je;if(!document.fullscreenEnabled)return alertDialog(Re`Full-screen not supported`,"error");document.fullscreenElement?document.exitFullscreen():(Je=pe.current)==null||Je.requestFullscreen()}function ot(){N(Je=>Je?Je-1:2)}function ke(Je){j(gt=>(Je!=null?Je:!gt)?_.shuffle(state.list):void 0)}function Ne(){U(Je=>!Je)}function Ke(){Se(Je=>!Je)}function Xe(Je){var gt,Ct;(Ct=ue.current)==null||Ct.scrollBy(0,Je*.5*((gt=ue.current)==null?void 0:gt.clientHeight))}function st(){newDialog({title:Re`Auto-play`,Content(){const{auto_play_seconds:Je}=useSnapState();return reactExports.createElement(FlexV,{},De,reactExports.createElement("input",{type:"number",min:1,max:1e4,value:Je,style:{width:"4em"},onChange:gt=>state.auto_play_seconds=Number(gt.target.value)}))}})}}});return!0}function getShowComponent(d){const m=ext2type(d.ext),x={entry:d,Component:m==="audio"?Audio:m==="video"?Video:m==="image"?"img":""};return hfsEvent("fileShow",x).findLast(Boolean)||x.Component}const Audio=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=Vt(b,["onLoad"]);return reactExports.createElement("audio",Fe({ref:g,onLoadedData:d,controls:!0},m))}),Video=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=Vt(b,["onLoad"]);return reactExports.createElement("video",Fe({ref:g,onLoadedData:d,controls:!0},m))});function showHelp(){newDialog({title:t$2`File Show help`,className:"file-show-help",Content:()=>reactExports.createElement(reactExports.Fragment,{},t$2("showHelpMain",{},"You can use the keyboard for some actions:"),_.map({"←/→":t$2("showHelp_←/→_body","Go to previous/next file"),"↑/↓":t$2("showHelp_↑/↓_body","Scroll tall images"),space:t$2`Select`,D:t$2`Download`,Z:t$2`Switch zoom mode`,F:t$2`Full screen`,S:t$2`Shuffle`,R:t$2`Repeat`,A:t$2`Auto-play`},(d,m)=>reactExports.createElement("div",{key:m},reactExports.createElement("kbd",{},t$2("showHelp_"+m,m))," ",d)),reactExports.createElement("div",{style:{marginTop:"1em"}},t$2("showHelpListShortcut",{key:isMac?"SHIFT":"WIN"},"From the file list, click holding {key} to show")))})}const{t:t$1}=i18n;setTimeout(()=>{state.remoteSearch=urlParams.search?{search:urlParams.search}:void 0,objFromKeys(["onlyFiles","onlyFolders"],d=>d in urlParams||void 0)});urlParams.autoplay;function reloadList(){state.listReloader=Date.now()}getHFS().textSortCompare=new Intl.Collator(navigator.language).compare;function sort(d){const{sort_by:m,folders_first:g,sort_numerics:x}=state,b=m==="size",E=m==="extension",v=m==="time",S=m==="creation",C=state.invert_order?-1:1,{textSortCompare:T}=getHFS();return d.sort((k,L)=>-compareScalar(k.order||0,L.order||0)||hfsEvent("sortCompare",{a:k,b:L}).find(Boolean)||g&&-compareScalar(k.isFolder,L.isFolder)||C*(b?compareScalar(k.s||0,L.s||0):E?T(k.ext,L.ext):v?compareScalar(k.m,L.m):S?compareScalar(k.c,L.c):0)||x&&C*R(k.n,L.n)||C*T(k.n,L.n));function R(k,L){const D=/\d/g;if(!D.exec(k))return 0;const A=D.lastIndex;if(A){if(!L.startsWith(k.slice(0,A-1)))return 0;k=k.slice(A-1),L=L.slice(A-1)}return compareScalar(parseFloat(k),parseFloat(L))}}function compareScalar(d,m){return d-m}const sortAgain=_.debounce(()=>state.list=sort(state.list),100);for(const d of["sort_by","invert_order","folders_first","sort_numerics"])subscribeKey(state,d,sortAgain);const updateFilteredList=_.debounce(()=>{const d=state.patternFilter;if(!d)return state.filteredList=void 0;const m=new RegExp(_.escapeRegExp(d),"i");state.filteredList=state.list.filter(g=>m.test(g.n))});subscribeKey(state,"list",updateFilteredList);subscribeKey(state,"patternFilter",updateFilteredList);function debounceAsync(d,m={}){const{wait:g=0,leading:x=!1,maxWait:b=1/0,cancelable:E=!1,retain:v=0,retainFailure:S,reuseRunning:C}=m;let T=0,R,k,L=0,D,A,I=!1,N=0;return Object.assign((...B)=>k=j(...B),Fe({clearRetain:()=>A=void 0,flush:()=>R!=null?R:Y(),isWorking:()=>R},E&&{cancel(){L=0,D=void 0}}));function j(...B){return vt(this,null,function*(){if(C&&R)return R;const U=Date.now();if(A&&U-N<(I&&S!=null?S:v))return yield A;D=B,L||(L=U);const W=b-(U-(L||T)),V=Math.min(W,x?g-(U-T):g);if(V>0&&(yield new Promise(J=>setTimeout(J,V))),!D){L=0;return}return D!==B?k:(yield R,Y())})}function Y(){return vt(this,null,function*(){if(D){L=0,T=Date.now();try{const B=D;return D=void 0,R=Promise.resolve(d(...B)),R.then(()=>I=!1,()=>I=!0),yield R}finally{A=R,N=Date.now(),R=void 0}}})}}const{t,getLangs}=i18n;function err2msg(d){return typeof d=="number"?HTTP_MESSAGES[d]:HTTP_MESSAGES[d.code]||d.message||String(d)}function hIcon(d,m){return reactExports.createElement(Icon,Fe({name:d},m))}function ErrorMsg({err:d}){return d?reactExports.createElement("div",{className:"error-msg"},(d==null?void 0:d.message)||_.isString(d)&&d||`${t`Error`}:${d}`):null}let isWorking=!1;function working(){if(isWorking)return()=>{};isWorking=!0;const{close:d}=newDialog({closable:!1,noFrame:!0,Content:Spinner,reserveClosing:!0,className:"working",onClose(){isWorking=!1}});return d}function hfsEvent(d,m){const g=[],x=[],b={params:m,output:g,order:x};let E=new CustomEvent("hfs."+d,{detail:b,cancelable:!0});document.dispatchEvent(E),E.defaultPrevented||(E=new CustomEvent("hfs."+d+":after",{detail:b,cancelable:!0}),document.dispatchEvent(E));const v=x.length&&_.sortBy(g.map((S,C)=>[x[C]||0,S]),"0").map(S=>S[1]);return Object.assign(v||g,{isDefaultPrevented:()=>E.defaultPrevented})}function onHfsEvent(d,m,g){const x="hfs."+d;return document.addEventListener(x,b,g),()=>document.removeEventListener(x,b);function b(E){const{params:v,output:S,order:C}=E.detail;let T;const R=m(v,{output:S,setOrder(k){T=k},preventDefault:()=>E.preventDefault()});R!==void 0&&Array.isArray(S)&&(S.push(R),T&&(C[S.length-1]=T))}}function formatTimestamp(d,m){const g=getOrSet(formatTimestamp,"langs",()=>{const x=getLangs(),b=urlParams.lang||navigator.language;return!x.length||b.startsWith(x[0])?b:x});return d?(d instanceof Date?d:new Date(d)).toLocaleString(g,m):""}Object.assign(getHFS(),{h:reactExports.createElement,React,state,t,_,dialogLib,apiCall,useApi,reloadList,logout,Icon,hIcon,iconBtn,useBatch,fileShow,toast,domOn,getNotifications,debounceAsync,useSnapState,DirEntry,Btn,i18n,fileShowComponents:{Video,Audio},isVideoComponent,markVideoComponent,isAudioComponent,markAudioComponent,isShowSupported:getShowComponent,misc:Fe(Fe(Fe({},cross),shared),thisModule),emit:hfsEvent,onEvent:onHfsEvent,watchState(d,m,g=!1){const x=d.split("upload.")[1],b=x?uploadState:state;return g&&m(b[d]),subscribeKey(b,x||d,m,!0)},customRestCall(d,...m){return apiCall(PLUGIN_CUSTOM_REST_PREFIX+d,...m)},html:d=>reactExports.createElement(Html,{},d),elementToEntry(d){var g;if(!(d instanceof HTMLElement))return;const m=(g=d.closest("li"))==null?void 0:g.querySelector(".link-wrapper a");if(m instanceof HTMLAnchorElement)try{return _.find(state.list,{uri:new URL(m.href).pathname})}catch(x){}},customizeText(d,m=ANY_LANGUAGE){var x,b;const g=i18n.state.translations;(m===ANY_LANGUAGE||m===EMBEDDED_LANGUAGE)&&((x=g[m])!=null||(g[m]={translate:{}})),Object.assign(((b=g[m])==null?void 0:b.translate)||{},d)}});markVideoComponent(Video);markAudioComponent(Audio);function isVideoComponent(d){return!!(d!=null&&d.hfs_show_video)}function markVideoComponent(d){return d.hfs_show_video=!0,d}function isAudioComponent(d){return!!(d!=null&&d.hfs_show_audio)}function markAudioComponent(d){return d.hfs_show_audio=!0,d}function operationSuccessful(){return toast(t`Operation successful`,"success")}var lib={},hasRequiredLib;function requireLib(){if(hasRequiredLib)return lib;hasRequiredLib=1;var d=lib&&lib.__extends||function(){var X=function(re,ie){return X=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(oe,Z){oe.__proto__=Z}||function(oe,Z){for(var ee in Z)Object.prototype.hasOwnProperty.call(Z,ee)&&(oe[ee]=Z[ee])},X(re,ie)};return function(re,ie){if(typeof ie!="function"&&ie!==null)throw new TypeError("Class extends value "+String(ie)+" is not a constructor or null");X(re,ie);function oe(){this.constructor=re}re.prototype=ie===null?Object.create(ie):(oe.prototype=ie.prototype,new oe)}}(),m=lib&&lib.__assign||function(){return m=Object.assign||function(X){for(var re,ie=1,oe=arguments.length;ie<oe;ie++){re=arguments[ie];for(var Z in re)Object.prototype.hasOwnProperty.call(re,Z)&&(X[Z]=re[Z])}return X},m.apply(this,arguments)},g=lib&&lib.__createBinding||(Object.create?function(X,re,ie,oe){oe===void 0&&(oe=ie);var Z=Object.getOwnPropertyDescriptor(re,ie);(!Z||("get"in Z?!re.__esModule:Z.writable||Z.configurable))&&(Z={enumerable:!0,get:function(){return re[ie]}}),Object.defineProperty(X,oe,Z)}:function(X,re,ie,oe){oe===void 0&&(oe=ie),X[oe]=re[ie]}),x=lib&&lib.__setModuleDefault||(Object.create?function(X,re){Object.defineProperty(X,"default",{enumerable:!0,value:re})}:function(X,re){X.default=re}),b=lib&&lib.__importStar||function(X){if(X&&X.__esModule)return X;var re={};if(X!=null)for(var ie in X)ie!=="default"&&Object.prototype.hasOwnProperty.call(X,ie)&&g(re,X,ie);return x(re,X),re},E=lib&&lib.__rest||function(X,re){var ie={};for(var oe in X)Object.prototype.hasOwnProperty.call(X,oe)&&re.indexOf(oe)<0&&(ie[oe]=X[oe]);if(X!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Z=0,oe=Object.getOwnPropertySymbols(X);Z<oe.length;Z++)re.indexOf(oe[Z])<0&&Object.prototype.propertyIsEnumerable.call(X,oe[Z])&&(ie[oe[Z]]=X[oe[Z]]);return ie};Object.defineProperty(lib,"__esModule",{value:!0});var v=b(requireReact()),S=13,C=9,T=8,R=89,k=90,L=77,D=57,A=219,I=222,N=192,z=27,j=100,Y=3e3,B=typeof window!="undefined"&&"navigator"in window&&/Win/i.test(navigator.platform),U=typeof window!="undefined"&&"navigator"in window&&/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform),W="npm__react-simple-code-editor__textarea",V=`
760
+ `,g)+1}return{type:m,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(m){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const g=getPrevProps(m),x=getFirstKeyStartProps(g);return x.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:x,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const g=getPrevProps(m),x=getFirstKeyStartProps(g);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:x,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(m,g){return this.type!=="comment"||this.indent<=g?!1:m.every(x=>x.type==="newline"||x.type==="space")}*documentEnd(m){this.type!=="doc-mode"&&(m.end?m.end.push(this.sourceToken):m.end=[this.sourceToken],this.type==="newline"&&(yield*bt(this.pop())))}*lineEnd(m){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*bt(this.pop()),yield*bt(this.step());break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:m.end?m.end.push(this.sourceToken):m.end=[this.sourceToken],this.type==="newline"&&(yield*bt(this.pop()))}}};function parseOptions(d){const m=d.prettyErrors!==!1;return{lineCounter:d.lineCounter||m&&new LineCounter||null,prettyErrors:m}}function parseAllDocuments(d,m={}){const{lineCounter:g,prettyErrors:x}=parseOptions(m),b=new Parser$1(g==null?void 0:g.addNewLine),E=new Composer(m),v=Array.from(E.compose(b.parse(d)));if(x&&g)for(const S of v)S.errors.forEach(prettifyError(d,g)),S.warnings.forEach(prettifyError(d,g));return v.length>0?v:Object.assign([],{empty:!0},E.streamInfo())}function parseDocument(d,m={}){const{lineCounter:g,prettyErrors:x}=parseOptions(m),b=new Parser$1(g==null?void 0:g.addNewLine),E=new Composer(m);let v=null;for(const S of E.compose(b.parse(d),!0,d.length))if(!v)v=S;else if(v.options.logLevel!=="silent"){v.errors.push(new YAMLParseError(S.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return x&&g&&(v.errors.forEach(prettifyError(d,g)),v.warnings.forEach(prettifyError(d,g))),v}function parse(d,m,g){let x;typeof m=="function"?x=m:g===void 0&&m&&typeof m=="object"&&(g=m);const b=parseDocument(d,g);if(!b)return null;if(b.warnings.forEach(E=>warn(b.options.logLevel,E)),b.errors.length>0){if(b.options.logLevel!=="silent")throw b.errors[0];b.errors=[]}return b.toJS(Object.assign({reviver:x},g))}function stringify(d,m,g){var b;let x=null;if(typeof m=="function"||Array.isArray(m)?x=m:g===void 0&&m&&(g=m),typeof g=="string"&&(g=g.length),typeof g=="number"){const E=Math.round(g);g=E<1?void 0:E>8?{indent:8}:{indent:E}}if(d===void 0){const{keepUndefined:E}=(b=g!=null?g:m)!=null?b:{};if(!E)return}return isDocument(d)&&!x?d.toString(g):new Document(d,x,g).toString(g)}const YAML=Object.freeze(Object.defineProperty({__proto__:null,Alias,CST:cst,Composer,Document,Lexer,LineCounter,Pair,Parser:Parser$1,Scalar,Schema,YAMLError,YAMLMap,YAMLParseError,YAMLSeq,YAMLWarning,isAlias,isCollection:isCollection$1,isDocument,isMap,isNode,isPair,isScalar:isScalar$1,isSeq,parse,parseAllDocuments,parseDocument,stringify,visit:visit$1,visitAsync},Symbol.toStringTag,{value:"Module"}));let G=null;class H{}H.render=function(d,m){G(d,m)};self.QrCreator=H;(function(d){function m(S,C,T,R){var k={},L=d(T,C);L.u(S),L.J(),R=R||0;var D=L.h(),A=L.h()+2*R;return k.text=S,k.level=C,k.version=T,k.O=A,k.a=function(I,N){return I-=R,N-=R,0>I||I>=D||0>N||N>=D?!1:L.a(I,N)},k}function g(S,C,T,R,k,L,D,A,I,N){function z(j,Y,B,U,W,V,J){j?(S.lineTo(Y+V,B+J),S.arcTo(Y,B,U,W,L)):S.lineTo(Y,B)}D?S.moveTo(C+L,T):S.moveTo(C,T),z(A,R,T,R,k,-L,0),z(I,R,k,C,k,0,-L),z(N,C,k,C,T,L,0),z(D,C,T,R,T,0,L)}function x(S,C,T,R,k,L,D,A,I,N){function z(j,Y,B,U){S.moveTo(j+B,Y),S.lineTo(j,Y),S.lineTo(j,Y+U),S.arcTo(j,Y,j+B,Y,L)}D&&z(C,T,L,L),A&&z(R,T,-L,L),I&&z(R,k,-L,-L),N&&z(C,k,L,-L)}function b(S,C){var T=C.fill;if(typeof T=="string")S.fillStyle=T;else{var R=T.type,k=T.colorStops;if(T=T.position.map(D=>Math.round(D*C.size)),R==="linear-gradient")var L=S.createLinearGradient.apply(S,T);else if(R==="radial-gradient")L=S.createRadialGradient.apply(S,T);else throw Error("Unsupported fill");k.forEach(([D,A])=>{L.addColorStop(D,A)}),S.fillStyle=L}}function E(S,C){e:{var T=C.text,R=C.v,k=C.N,L=C.K,D=C.P;for(k=Math.max(1,k||1),L=Math.min(40,L||40);k<=L;k+=1)try{var A=m(T,R,k,D);break e}catch(ce){}A=void 0}if(!A)return null;for(T=S.getContext("2d"),C.background&&(T.fillStyle=C.background,T.fillRect(C.left,C.top,C.size,C.size)),R=A.O,L=C.size/R,T.beginPath(),D=0;D<R;D+=1)for(k=0;k<R;k+=1){var I=T,N=C.left+k*L,z=C.top+D*L,j=D,Y=k,B=A.a,U=N+L,W=z+L,V=j-1,J=j+1,Q=Y-1,X=Y+1,re=Math.floor(Math.min(.5,Math.max(0,C.R))*L),ie=B(j,Y),oe=B(V,Q),Z=B(V,Y);V=B(V,X);var ee=B(j,X);X=B(J,X),Y=B(J,Y),J=B(J,Q),j=B(j,Q),N=Math.round(N),z=Math.round(z),U=Math.round(U),W=Math.round(W),ie?g(I,N,z,U,W,re,!Z&&!j,!Z&&!ee,!Y&&!ee,!Y&&!j):x(I,N,z,U,W,re,Z&&j&&oe,Z&&ee&&V,Y&&ee&&X,Y&&j&&J)}return b(T,C),T.fill(),S}var v={minVersion:1,maxVersion:40,ecLevel:"L",left:0,top:0,size:200,fill:"#000",background:null,text:"no text",radius:.5,quiet:0};G=function(S,C){var T={};Object.assign(T,v,S),T.N=T.minVersion,T.K=T.maxVersion,T.v=T.ecLevel,T.left=T.left,T.top=T.top,T.size=T.size,T.fill=T.fill,T.background=T.background,T.text=T.text,T.R=T.radius,T.P=T.quiet,C instanceof HTMLCanvasElement?((C.width!==T.size||C.height!==T.size)&&(C.width=T.size,C.height=T.size),C.getContext("2d").clearRect(0,0,C.width,C.height),E(C,T)):(S=document.createElement("canvas"),S.width=T.size,S.height=T.size,T=E(S,T),C.appendChild(T))}})(function(){function d(C){var T=g.s(C);return{S:function(){return 4},b:function(){return T.length},write:function(R){for(var k=0;k<T.length;k+=1)R.put(T[k],8)}}}function m(){var C=[],T=0,R={B:function(){return C},c:function(k){return(C[Math.floor(k/8)]>>>7-k%8&1)==1},put:function(k,L){for(var D=0;D<L;D+=1)R.m((k>>>L-D-1&1)==1)},f:function(){return T},m:function(k){var L=Math.floor(T/8);C.length<=L&&C.push(0),k&&(C[L]|=128>>>T%8),T+=1}};return R}function g(C,T){function R(j,Y){for(var B=-1;7>=B;B+=1)if(!(-1>=j+B||A<=j+B))for(var U=-1;7>=U;U+=1)-1>=Y+U||A<=Y+U||(D[j+B][Y+U]=0<=B&&6>=B&&(U==0||U==6)||0<=U&&6>=U&&(B==0||B==6)||2<=B&&4>=B&&2<=U&&4>=U)}function k(j,Y){for(var B=A=4*C+17,U=Array(B),W=0;W<B;W+=1){U[W]=Array(B);for(var V=0;V<B;V+=1)U[W][V]=null}for(D=U,R(0,0),R(A-7,0),R(0,A-7),B=E.G(C),U=0;U<B.length;U+=1)for(W=0;W<B.length;W+=1){V=B[U];var J=B[W];if(D[V][J]==null)for(var Q=-2;2>=Q;Q+=1)for(var X=-2;2>=X;X+=1)D[V+Q][J+X]=Q==-2||Q==2||X==-2||X==2||Q==0&&X==0}for(B=8;B<A-8;B+=1)D[B][6]==null&&(D[B][6]=B%2==0);for(B=8;B<A-8;B+=1)D[6][B]==null&&(D[6][B]=B%2==0);for(B=E.w(L<<3|Y),U=0;15>U;U+=1)W=!j&&(B>>U&1)==1,D[6>U?U:8>U?U+1:A-15+U][8]=W,D[8][8>U?A-U-1:9>U?15-U:14-U]=W;if(D[A-8][8]=!j,7<=C){for(B=E.A(C),U=0;18>U;U+=1)W=!j&&(B>>U&1)==1,D[Math.floor(U/3)][U%3+A-8-3]=W;for(U=0;18>U;U+=1)W=!j&&(B>>U&1)==1,D[U%3+A-8-3][Math.floor(U/3)]=W}if(I==null){for(j=S.I(C,L),B=m(),U=0;U<N.length;U+=1)W=N[U],B.put(4,4),B.put(W.b(),E.f(4,C)),W.write(B);for(U=W=0;U<j.length;U+=1)W+=j[U].j;if(B.f()>8*W)throw Error("code length overflow. ("+B.f()+">"+8*W+")");for(B.f()+4<=8*W&&B.put(0,4);B.f()%8!=0;)B.m(!1);for(;!(B.f()>=8*W)&&(B.put(236,8),!(B.f()>=8*W));)B.put(17,8);var re=0;for(W=U=0,V=Array(j.length),J=Array(j.length),Q=0;Q<j.length;Q+=1){var ie=j[Q].j,oe=j[Q].o-ie;for(U=Math.max(U,ie),W=Math.max(W,oe),V[Q]=Array(ie),X=0;X<V[Q].length;X+=1)V[Q][X]=255&B.B()[X+re];for(re+=ie,X=E.C(oe),ie=x(V[Q],X.b()-1).l(X),J[Q]=Array(X.b()-1),X=0;X<J[Q].length;X+=1)oe=X+ie.b()-J[Q].length,J[Q][X]=0<=oe?ie.c(oe):0}for(X=B=0;X<j.length;X+=1)B+=j[X].o;for(B=Array(B),X=re=0;X<U;X+=1)for(Q=0;Q<j.length;Q+=1)X<V[Q].length&&(B[re]=V[Q][X],re+=1);for(X=0;X<W;X+=1)for(Q=0;Q<j.length;Q+=1)X<J[Q].length&&(B[re]=J[Q][X],re+=1);I=B}for(j=I,B=-1,U=A-1,W=7,V=0,Y=E.F(Y),J=A-1;0<J;J-=2)for(J==6&&--J;;){for(Q=0;2>Q;Q+=1)D[U][J-Q]==null&&(X=!1,V<j.length&&(X=(j[V]>>>W&1)==1),Y(U,J-Q)&&(X=!X),D[U][J-Q]=X,--W,W==-1&&(V+=1,W=7));if(U+=B,0>U||A<=U){U-=B,B=-B;break}}}var L=b[T],D=null,A=0,I=null,N=[],z={u:function(j){j=d(j),N.push(j),I=null},a:function(j,Y){if(0>j||A<=j||0>Y||A<=Y)throw Error(j+","+Y);return D[j][Y]},h:function(){return A},J:function(){for(var j=0,Y=0,B=0;8>B;B+=1){k(!0,B);var U=E.D(z);(B==0||j>U)&&(j=U,Y=B)}k(!1,Y)}};return z}function x(C,T){if(typeof C.length=="undefined")throw Error(C.length+"/"+T);var R=function(){for(var L=0;L<C.length&&C[L]==0;)L+=1;for(var D=Array(C.length-L+T),A=0;A<C.length-L;A+=1)D[A]=C[A+L];return D}(),k={c:function(L){return R[L]},b:function(){return R.length},multiply:function(L){for(var D=Array(k.b()+L.b()-1),A=0;A<k.b();A+=1)for(var I=0;I<L.b();I+=1)D[A+I]^=v.i(v.g(k.c(A))+v.g(L.c(I)));return x(D,0)},l:function(L){if(0>k.b()-L.b())return k;for(var D=v.g(k.c(0))-v.g(L.c(0)),A=Array(k.b()),I=0;I<k.b();I+=1)A[I]=k.c(I);for(I=0;I<L.b();I+=1)A[I]^=v.i(v.g(L.c(I))+D);return x(A,0).l(L)}};return k}g.s=function(C){for(var T=[],R=0;R<C.length;R++){var k=C.charCodeAt(R);128>k?T.push(k):2048>k?T.push(192|k>>6,128|k&63):55296>k||57344<=k?T.push(224|k>>12,128|k>>6&63,128|k&63):(R++,k=65536+((k&1023)<<10|C.charCodeAt(R)&1023),T.push(240|k>>18,128|k>>12&63,128|k>>6&63,128|k&63))}return T};var b={L:1,M:0,Q:3,H:2},E=function(){function C(k){for(var L=0;k!=0;)L+=1,k>>>=1;return L}var T=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],R={w:function(k){for(var L=k<<10;0<=C(L)-C(1335);)L^=1335<<C(L)-C(1335);return(k<<10|L)^21522},A:function(k){for(var L=k<<12;0<=C(L)-C(7973);)L^=7973<<C(L)-C(7973);return k<<12|L},G:function(k){return T[k-1]},F:function(k){switch(k){case 0:return function(L,D){return(L+D)%2==0};case 1:return function(L){return L%2==0};case 2:return function(L,D){return D%3==0};case 3:return function(L,D){return(L+D)%3==0};case 4:return function(L,D){return(Math.floor(L/2)+Math.floor(D/3))%2==0};case 5:return function(L,D){return L*D%2+L*D%3==0};case 6:return function(L,D){return(L*D%2+L*D%3)%2==0};case 7:return function(L,D){return(L*D%3+(L+D)%2)%2==0};default:throw Error("bad maskPattern:"+k)}},C:function(k){for(var L=x([1],0),D=0;D<k;D+=1)L=L.multiply(x([1,v.i(D)],0));return L},f:function(k,L){if(k!=4||1>L||40<L)throw Error("mode: "+k+"; type: "+L);return 10>L?8:16},D:function(k){for(var L=k.h(),D=0,A=0;A<L;A+=1)for(var I=0;I<L;I+=1){for(var N=0,z=k.a(A,I),j=-1;1>=j;j+=1)if(!(0>A+j||L<=A+j))for(var Y=-1;1>=Y;Y+=1)0>I+Y||L<=I+Y||(j!=0||Y!=0)&&z==k.a(A+j,I+Y)&&(N+=1);5<N&&(D+=3+N-5)}for(A=0;A<L-1;A+=1)for(I=0;I<L-1;I+=1)N=0,k.a(A,I)&&(N+=1),k.a(A+1,I)&&(N+=1),k.a(A,I+1)&&(N+=1),k.a(A+1,I+1)&&(N+=1),(N==0||N==4)&&(D+=3);for(A=0;A<L;A+=1)for(I=0;I<L-6;I+=1)k.a(A,I)&&!k.a(A,I+1)&&k.a(A,I+2)&&k.a(A,I+3)&&k.a(A,I+4)&&!k.a(A,I+5)&&k.a(A,I+6)&&(D+=40);for(I=0;I<L;I+=1)for(A=0;A<L-6;A+=1)k.a(A,I)&&!k.a(A+1,I)&&k.a(A+2,I)&&k.a(A+3,I)&&k.a(A+4,I)&&!k.a(A+5,I)&&k.a(A+6,I)&&(D+=40);for(I=N=0;I<L;I+=1)for(A=0;A<L;A+=1)k.a(A,I)&&(N+=1);return D+=Math.abs(100*N/L/L-50)/5*10}};return R}(),v=function(){for(var C=Array(256),T=Array(256),R=0;8>R;R+=1)C[R]=1<<R;for(R=8;256>R;R+=1)C[R]=C[R-4]^C[R-5]^C[R-6]^C[R-8];for(R=0;255>R;R+=1)T[C[R]]=R;return{g:function(k){if(1>k)throw Error("glog("+k+")");return T[k]},i:function(k){for(;0>k;)k+=255;for(;256<=k;)k-=255;return C[k]}}}(),S=function(){function C(k,L){switch(L){case b.L:return T[4*(k-1)];case b.M:return T[4*(k-1)+1];case b.Q:return T[4*(k-1)+2];case b.H:return T[4*(k-1)+3]}}var T=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],R={I:function(k,L){var D=C(k,L);if(typeof D=="undefined")throw Error("bad rs block @ typeNumber:"+k+"/errorCorrectLevel:"+L);k=D.length/3,L=[];for(var A=0;A<k;A+=1)for(var I=D[3*A],N=D[3*A+1],z=D[3*A+2],j=0;j<I;j+=1){var Y=z,B={};B.o=N,B.j=Y,L.push(B)}return L}};return R}();return g}());const QrCreator$1=QrCreator;let lastFolder;function addFiles(){const{close:d}=newDialog({title:"Add files or folders",dialogProps:{sx:{minWidth:"min(80vw, 40em)",minHeight:"calc(100vh - 9em)"}},Content(){const m=getFolderFromSelected();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{sx:{typography:"body1",px:1,py:2}},"Selected elements will be added under ",m.isRoot?reactExports.createElement("i",{},"Home"):decodeURI(m.id)),reactExports.createElement(FilePicker,{from:lastFolder!=null?lastFolder:m.source,onSelect(x){return yt(this,null,function*(){const b=yield Promise.all(x.map(S=>apiCall("add_vfs",{parent:m.id,source:S}).then(C=>C,C=>[S,C.message])));lastFolder=x[0].slice(0,x[0].lastIndexOf("/"));const E=b.filter(Array.isArray);E.length&&(yield alertDialog$1(reactExports.createElement(Box,{},"Some elements have been rejected",reactExports.createElement("ul",{},E.map(([S,C])=>reactExports.createElement("li",{key:S},S,": ",C)))),"error"));const v=b.filter(S=>S.name).map(S=>m.id+pathEncode(S.name)+(S.link.endsWith("/")?"/":""));reloadVfs(v),d()})}}))}})}function addVirtual(){return yt(this,null,function*(){try{const d=yield promptDialog$1("Enter folder name");if(!d)return;const{id:m}=getFolderFromSelected(),g=yield apiCall("add_vfs",{parent:m,name:d});toast$1(`Folder "${g.name}" created`,"success"),reloadVfs([m+pathEncode(g.name)+"/"])}catch(d){yield alertDialog$1(d)}})}function addLink(){return yt(this,null,function*(){try{const{id:d}=getFolderFromSelected(),m=yield apiCall("add_vfs",{parent:d,name:"new link",url:"https://example.com"});reloadVfs([d+pathEncode(m.name)]),toast$1("Link created","success",{onClose:()=>focusSelector("input[name=url]")})}catch(d){yield alertDialog$1(d)}})}function getFolderFromSelected(){const d=state$1.selectedFiles[0]||state$1.vfs;return d.type==="folder"?d:d.parent}function MenuButton(g){var x=g,{items:d}=x,m=Vt(x,["items"]);const[b,E]=reactExports.useState(),v=!!b,S=reactExports.useCallback(()=>E(void 0),[]),C=reactExports.useId(),T=reactExports.useId();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Btn$1,Fe({id:C,"aria-controls":v?T:void 0,"aria-haspopup":!0,"aria-expanded":v?!0:void 0,onClick(R){E(R.currentTarget)}},m)),reactExports.createElement(Menu$2,{id:T,anchorEl:b,open:v,onClose:S,MenuListProps:{"aria-labelledby":C},children:d.map((R,k)=>reactExports.createElement(MenuItem,$t(Fe({key:k},R),{onClick(){var L;S(),(L=R.onClick)==null||L.apply(this,arguments)}})))}))}function VfsMenuBar({statusApi:d,add:m}){return reactExports.createElement(Flex$1,{zIndex:2,gap:1,backgroundColor:"background.paper",width:"fit-content"},reactExports.createElement(AddVfsBtn),reloadBtn(()=>reloadVfs()),reactExports.createElement(Btn$1,{icon:Storage,title:"Disk spaces",onClick:()=>apiCall("get_disk_spaces").then(g=>alertDialog$1(reactExports.createElement(List,{dense:!0},g.map(x=>reactExports.createElement(ListItem,{key:x.name},reactExports.createElement(ListItemIcon,{},reactExports.createElement(Storage)),reactExports.createElement(ListItemText,{sx:{wordBreak:"break-word"},primary:x.name+prefix(" (",x.description,")"),secondary:formatDiskSpace(x)})))),{title:"Disk spaces"}).then(()=>!1),alertDialog$1)}),m,reactExports.createElement(SystemIntegrationButton,d.data))}function AddVfsBtn(d){return reactExports.createElement(MenuButton,$t(Fe({variant:"contained",icon:Add},d),{items:[{children:"virtual folder",onClick:addVirtual},{children:"file or folder from disk",onClick:addFiles},{children:"web-link",onClick:addLink}]}))}function SystemIntegrationButton({platform:d}){const m=d==="win32",{data:g,reload:x}=useApi(m&&"windows_integrated"),b=useBreakpoint("sm");return m?reactExports.createElement(Btn$1,Fe({icon:osIcon("win"),variant:"outlined",doneMessage:!0},g!=null&&g.is?{confirm:!0,children:"Remove integration",onClick:()=>apiCall("windows_remove").then(x)}:{children:"System integration",onClick(){return yt(this,null,function*(){const v=reactExports.createElement(Box,{width:{xs:"100%",sm:"34em"}},reactExports.createElement("img",{src:"win-shell.png",style:{display:"block",width:"100%"}}),reactExports.createElement(Alert,{severity:"info"},"We are going to add a command in the right-click of Windows File Manager.",reactExports.createElement(Box,{},"It will also automatically copy the URL, ready to paste!"))),S=yield promptDialog$1(v,{field:{comp:VfsPathField,files:!1,label:"Add to this folder",placeholder:"home",autoFocus:b},form:{saveOnEnter:!1}});return typeof S=="string"&&apiCall("windows_integration",{parent:S}).then(x)})}})):null}const SYS_ICONS={login:["👤","user"],user:["👤","user"],filter:["✂"],search:["🔍"],search_off:["❌","cancel"],close:["❌","cancel"],error:["❌","cancel"],stop:["⏹️"],options:["⚙","cog"],archive:["📦"],logout:["🚪"],home:["🏠"],parent:["⬅","left"],folder:["📂"],file:["📄","doc"],spinner:["🎲","spin6 spinner"],password:["🗝️","key"],download:["⬇️"],upload:["⬆️"],reload:["🔄","reload"],lock:["🔒","lock"],admin:["👑","crown"],check:["✔️"],to_start:["◀"],to_end:["▶"],menu:["☰"],list:["☰","menu"],play:["▶"],pause:["⏸"],edit:["✏️"],zoom:["↔"],delete:["🗑️","trash"],comment:["💬"],link:["↗"],info:["ⓘ"],cut:["✄"],paste:["📋"],copy:["⧉"],shuffle:["🔀"],repeat:["🔁","reload"],success:["👍","check"],warning:["⚠️",!1],audio:["🎧"],video:["🎥"],image:["📸"],cancel:["❌","cancel"],total:["➕","spin6"]},ANY_LANGUAGE="all";function i18nFromTranslations(d,m="en"){const g=proxy({embedded:m,disabled:!1,translations:d}),x=[];watch(T=>{const R=T(g);x.splice(0,1/0,ANY_LANGUAGE,...R.disabled?[]:Object.keys(R.translations),R.embedded)});const b=new Set;function E(){return Object.keys(g.translations)}function v(T,R,k){var j,Y;if(!T)return"";const L=C(T)?[k!=null?k:k=T[0]]:Array.isArray(T)?T:[T];typeof R=="string"&&!k&&(k=R,R=null);let D,A="";const{embedded:I}=g,N=Object.keys(g.translations);for(const B of L){for(const U of x)if(D=(Y=(j=g.translations[A=U])==null?void 0:j.translate)==null?void 0:Y[B])break;if(D)break;!b.has(B)&&N.length&&N[0]!==I&&(b.add(B),console.debug("miss i18n:",B))}return D||(D=k||L[L.length-1],A=I),Array.from(S(D)).map(([B,U])=>{if(!U)return B;const[W,V,J]=B.split(",").map(X=>X.trim());if(!R)throw"missing params on "+L[0];const Q=W&&R[W];return V==="plural"&&J?z(Q,J):Q||Q===0?Q:""}).join("");function z(B,U){const W=Intl.PluralRules?new Intl.PluralRules(A||I).select(Number(B)):"other";let V="",J=!1,Q=!1;for(const[re,ie]of S(U)){if(J)return X(re);if(Q&&(V=re,Q=!1),ie)continue;const oe=re.trim().split(/\s+/);J=oe.some(Z=>Z[0]==="="&&B===Number(Z.slice(1))||Z===W),Q=!J&&oe.includes("other")}return X(V);function X(re){return re.replace("#",String(B))}}}function*S(T){let R=0;for(;;){const k=T.indexOf("{",R);if(k<0)break;yield[T.slice(R,k),!1];let L=1;for(R=k+1;L&&R<T.length;)T[R]==="{"?L++:T[R]==="}"&&L--,R++;if(L)return console.debug("tokenizer: unclosed");yield[T.slice(k+1,R-1),!0]}yield[T.slice(R),!1]}function C(T){return(T==null?void 0:T.raw)&&Array.isArray(T)}return{t:v,state:g,getLangs:E,i18nWrapperProps:()=>({lang:E()[0]||g.embedded}),useI18N(){return useSnapshot(g),{t:v}}}}const state=proxy($t(Fe({expandedUsername:[],uploadOnExisting:getHFS().dontOverwriteUploading?"rename":"skip",uri:"",canChangePassword:!1,props:{}},objSameKeys(FRONTEND_OPTIONS,(d,m)=>{var g;return(g=getHFS()[m])!=null?g:d})),{iconsReady:!1,username:"",list:[],clip:[],loading:!1,listReloader:0,patternFilter:"",showFilter:!1,selected:{},remoteSearch:void 0}));function useSnapState(){return useSnapshot(state)}const SETTINGS_KEY="hfs_settings",SETTINGS_WITHOUT_GUI=["file_menu_on_link"],SETTINGS_TO_STORE=_.difference(typedKeys(FRONTEND_OPTIONS),SETTINGS_WITHOUT_GUI).concat(["uploadOnExisting"]);loadSettings();for(const d of SETTINGS_TO_STORE)subscribeKey(state,d,storeSettings);function loadSettings(){const d=localStorage.getItem(SETTINGS_KEY);if(!d)return;let m;try{m=JSON.parse(d)}catch(g){console.error("invalid settings stored",d);return}for(const g of SETTINGS_TO_STORE){const x=m[g];x!==void 0&&(state[g]=x)}}function storeSettings(){localStorage.setItem(SETTINGS_KEY,JSON.stringify(_.pick(state,SETTINGS_TO_STORE)))}const nf=class nf{constructor(m,g){var b,E;if(this.ext="",this.isFolder=m.endsWith("/"),this.isFolder&&(m=m.slice(0,-1)),Object.assign(this,g),this.n=m,this.uri=(g==null?void 0:g.url)||(!m||m[0]==="/"?"":location.pathname)+pathEncode(m)+(this.isFolder?"/":""),!this.isFolder){const v=m.lastIndexOf(".")+1;this.ext=v?m.substring(v).toLowerCase():""}this.c&&(this.c=new Date(this.c)),this.m=this.m?new Date(this.m):this.c,this.name=m.slice(m.lastIndexOf("/")+1);const x=this.isFolder&&!this.web?"L":"R";this.cantOpen=(b=this.p)!=null&&b.match(x)?!0:(E=this.p)!=null&&E.match(x.toLowerCase())?nf.FORBIDDEN:void 0}isRoot(){return!this.name}getNext(){return this.getSibling(1)}getPrevious(){return this.getSibling(-1)}getNextFiltered(){return this.getSibling(1,state.filteredList)}getPreviousFiltered(){return this.getSibling(-1,state.filteredList)}getSibling(m,g=state.list){return g[m+g.findIndex(x=>x.n===this.n)]}getDefaultIcon(){var m;return hIcon(this.icon===!0?`${this.n}?get=icon`:(m=this.icon)!=null?m:this.isFolder||this.web?"folder":this.url?"link":ext2type(this.ext)||"file")}canArchive(){var m,g,x;return((m=this.p)==null?void 0:m.includes("A"))||((g=state.props)==null?void 0:g.can_archive)&&!((x=this.p)!=null&&x.includes("a"))}canDelete(){var m,g,x;return!this.isRoot()&&(((m=this.p)==null?void 0:m.includes("D"))||((g=state.props)==null?void 0:g.can_delete_children)&&!((x=this.p)!=null&&x.includes("d")))}canUpload(){var m,g,x;return this.isFolder&&(((m=this.p)==null?void 0:m.includes("U"))||((g=state.props)==null?void 0:g.can_upload)&&!((x=this.p)!=null&&x.includes("u")))}canSelect(){return this.url||this.isRoot()?!1:this.canArchive()||this.canDelete()||hfsEvent("enableEntrySelection",{entry:this}).some(Boolean)}};nf.FORBIDDEN="FORBIDDEN";let DirEntry=nf;const exts={image:["jpeg","jpg","gif","png","webp","svg"],audio:["mp3","wav","m4a","ogg","flac"],video:["mp4","mpeg","mpg","webm","mov","m4v","mkv"],archive:["zip","rar","gz","tgz"]};function ext2type(d){return _.findKey(exts,m=>m.includes(d))}const i18n=i18nFromTranslations(getHFS().lang||{},EMBEDDED_LANGUAGE);i18n.state.disabled=!urlParams.lang&&state.disableTranslation;const{t:t$d}=i18n;function Spinner(d){return hIcon("spinner",Fe({className:"spinner"},d))}const Flex=reactExports.forwardRef((C,S)=>{var T=C,{gap:d=".8em",center:m=!1,vert:g=!1,children:x=null,className:b="",props:E={}}=T,v=Vt(T,["gap","center","vert","children","className","props"]);return reactExports.createElement("div",Fe({ref:S,className:b,style:Fe({display:"flex",gap:d,flexDirection:g?"column":void 0,alignItems:g?void 0:"center",justifyContent:m?"center":void 0},v)},E),x)}),FlexV=reactExports.forwardRef((d,m)=>reactExports.createElement(Flex,Fe({ref:m,vert:!0},d))),Checkbox=reactExports.forwardRef((S,v)=>{var C=S,{onChange:d,value:m,children:g,labelProps:x,id:b}=C,E=Vt(C,["onChange","value","children","labelProps","id"]);const T=reactExports.createElement("input",Fe($t(Fe({ref:v,type:"checkbox",onChange:R=>d==null?void 0:d(!!R.target.checked,R)},m!==void 0&&{checked:!!m}),{value:1,id:g?void 0:b}),E));return g?reactExports.createElement("label",Fe({id:b},x),T,g):T});function CustomCode(b){var E=b,{name:d,children:m,render:g}=E,x=Vt(E,["name","children","render"]);const v=reactExports.useMemo(()=>hfsEvent(d,Object.assign(x,{def:m})),[d,m,...x?Object.values(x):[]]),[S,C]=useStateMounted([]);return reactExports.useEffect(()=>{var L,D;if(v.isDefaultPrevented()||v.some(A=>A===null))return C(null);const T=v.map(k);v.forEach((A,I)=>{typeof(A==null?void 0:A.then)=="function"&&A.then(N=>{T[I]=k(N,I),C(onlyTruthy(T))},()=>{})});const R=(L=getHFS().customHtml)==null?void 0:L[d];(D=R==null?void 0:R.trim)!=null&&D.call(R)&&T.push(k(R,-1)),C(onlyTruthy(T));function k(A,I){return reactExports.isValidElement(A)?reactExports.createElement(reactExports.Fragment,{key:I},A):A===0||A&&isPrimitive(A)?reactExports.createElement(Html,{key:I},String(A)):_.isArray(A)?reactExports.createElement(reactExports.Fragment,{key:I},...A):null}},[v]),g!=null||(g=_.identity),reactExports.createElement(reactExports.Fragment,{},g(S&&(S!=null&&S.length||!m?S:m)))}function iconBtn(d,m,b={}){var E=b,{title:g}=E,x=Vt(E,["title"]);return reactExports.createElement("button",$t(Fe({title:g!=null?g:t$d(_.capitalize(d)),onClick:m},x),{className:"icon-button "+(x.className||"")}),d.length>1?hIcon(d):d)}function Btn(T){var R=T,{icon:d,label:m,tooltip:g,toggled:x,onClick:b,onClickAnimation:E,asText:v,successFeedback:S}=R,C=Vt(R,["icon","label","tooltip","toggled","onClick","onClickAnimation","asText","successFeedback"]);const[k,L]=reactExports.useState(!1),[D,A]=reactExports.useState(!1),I=reactExports.useRef();return reactExports.createElement(v?"a":"button",$t(Fe(Fe({title:m+prefix(" - ",g),"aria-label":m,"aria-pressed":x,onClick(N){v&&N.preventDefault(),b&&(E!==!1&&L(!0),Promise.resolve(b()).finally(()=>L(!1)).then(()=>{S&&(A(!0),clearTimeout(I.current),I.current=setTimeout(()=>A(!1),1e3))},()=>{}))}},C),v?{role:"button",style:Fe({cursor:"pointer"},C.style)}:void 0),{className:[C.className,x&&"toggled",k&&"ani-working",D&&"success"].filter(Boolean).join(" ")}),d&&(reactExports.isValidElement(d)?d:hIcon(d)),reactExports.createElement("span",{className:"label"},m))}function Bytes(g){var x=g,{bytes:d}=x,m=Vt(x,["bytes"]);return reactExports.createElement("span",Fe(Fe({},noAriaTitle(d.toLocaleString())),m),formatBytes(d))}function toast(d,m="info",{timeout:g=5e3}={}){console.debug("toast",d);const x=Math.random();toasts.push({id:x,content:d,type:m,close:E});const b=pendingPromise();return setTimeout(E,g),{close:E,closed:b};function E(){const v=_.find(toasts,{id:x});v&&(v.closed=!0,b.resolve())}}const toasts=proxy([]),{t:t$c}=i18n;_.merge(dialogsDefaults,{closableProps:{"aria-label":t$c`Close`}});function promptDialog(L){return yt(this,arguments,function*(d,R={}){var k=R,{value:m,type:g,helperText:x,trim:b=!0,inputProps:E,onSubmit:v,onField:S,placeholder:C}=k,T=Vt(k,["value","type","helperText","trim","inputProps","onSubmit","onField","placeholder"]);const D=g==="textarea"&&g;return new Promise(I=>newDialog($t(Fe({className:"dialog-prompt",icon:"?",onClose:I},T),{Content:A})));function A(){const I=reactExports.useRef();return reactExports.useEffect(()=>{const z=I.current;if(!z)return;const j=z;if(setTimeout(()=>j.focus(),100),m&&(j.value=m),S==null||S(j),D){let Y=function(){j.style.height="auto",j.style.height=j.scrollHeight+5+"px"};setTimeout(Y),j.addEventListener("input",Y)}},[D]),reactExports.createElement("form",{},reactExports.createElement("label",{htmlFor:"input"},d),reactExports.createElement(D||"input",$t(Fe({ref:I,type:g,name:"input",autoFocus:!0,placeholder:C},E),{style:Fe({width:m?m.length/2+"em":"auto",minWidth:"100%",maxWidth:"100%",boxSizing:"border-box"},D&&{width:"30em",maxHeight:"70vh"}),onKeyDown(z){const{key:j}=z;if(j==="Escape")return closeDialog();if((D?isCtrlKey(z):j)==="Enter")return z.preventDefault(),N()}})),x&&reactExports.createElement("div",{style:{fontSize:"smaller",marginTop:".2em"}},x),reactExports.createElement("div",{style:{textAlign:"right",marginTop:".8em"}},reactExports.createElement("button",{onClick:N},t$c`Continue`)));function N(){return yt(this,null,function*(){var j,Y;let z=(j=I.current)==null?void 0:j.value;b&&(z=z==null?void 0:z.trim());try{v&&z!==void 0&&(z=(Y=yield v==null?void 0:v(z))!=null?Y:z),closeDialog(z)}catch(B){alertDialog(B,"error")}})}}})}function formDialog(m){return yt(this,null,function*(){var d=Vt(m,[]);return new Promise(g=>{const{close:x}=newDialog($t(Fe({className:"dialog-form"},d),{onClose:g,Content(){return reactExports.createElement("form",{onSubmit(b){b.preventDefault(),x(Object.fromEntries(new FormData(b.target).entries()))}},reactExports.createElement(d.Content))}}))})})}let msgShowing;function alertDialog(d,m="info",g=""){if(d===msgShowing)return;const x=msgShowing;msgShowing=d,d instanceof Error&&(m="error");const b=pendingPromise();return b.finally(()=>{d===msgShowing&&(msgShowing=x)}),Object.assign(b,newDialog({className:"dialog-alert dialog-alert-"+m,title:g||t$c(_.capitalize(m)),icon:"!",onClose:b.resolve,dialogProps:{role:"alertdialog"},Content(){if(d instanceof Error){const E=err2msg(d),v=d.message;d=reactExports.createElement("div",{},E,v!==E&&reactExports.createElement("div",{style:{marginTop:20,fontSize:"small"}},v))}return typeof d=="string"&&(d=reactExports.createElement("p",{},d)),d}}))}function confirmDialog(d,m={}){const R=m,{href:g,afterButtons:x,timeout:b,timeoutConfirm:E=!1}=R,v=Vt(R,["href","afterButtons","timeout","timeoutConfirm"]);typeof d=="string"&&(d=reactExports.createElement("p",{},d));const S=pendingPromise(),C=newDialog($t(Fe({className:"dialog-confirm",icon:"?",onClose:S.resolve},v),{Content:T}));return Object.assign(S,C);function T(){const[k,L]=reactExports.useState(Math.ceil(b||0));useInterval(()=>L(A=>Math.max(0,A-1)),1e3);const D=b&&b>0&&b<60&&` (${k})`||"";return reactExports.useEffect(()=>{b&&!k&&C.close(E)},[k]),reactExports.createElement("div",{},d,reactExports.createElement("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"1em"}},reactExports.createElement("a",{href:g,tabIndex:-1,onClick(){C.close(!0)}},reactExports.createElement("button",{},t$c`Yes`,E&&D)),reactExports.createElement("button",{onClick(){C.close(!1)}},t$c`Don't`,!E&&D),x))}}const dialogLib=Object.freeze(Object.defineProperty({__proto__:null,Dialogs,alertDialog,anyDialogOpen,closeDialog,componentOrNode,confirmDialog,dialogsDefaults,focusableSelector,formDialog,isDescendant,newDialog,promptDialog,toast},Symbol.toStringTag,{value:"Module"})),documentComplete=document.readyState==="complete"?Promise.resolve():new Promise(d=>document.addEventListener("readystatechange",d));var Am;Promise.race([documentComplete,(Am=document.fonts)==null?void 0:Am.ready]).then(()=>yt(void 0,null,function*(){if(!document.fonts)return state.iconsReady=!0;const d="9px fontello";yield document.fonts.load(d),state.iconsReady=document.fonts.check(d)}));const Icon=reactExports.memo(b=>{var E=b,{name:d,alt:m,className:g=""}=E,x=Vt(E,["name","alt","className"]);var L,D;if(!d)return null;d=(D=(L=getHFS().icons)==null?void 0:L[d])!=null?D:d;const[v,S=d]=SYS_ICONS[d]||[],{iconsReady:C}=useSnapState();g+=" icon";const T=d.length===1||d.match(/^[\uD800-\uDFFF\u2600-\u27BF\u2B00-\u2BFF\u3030-\u303F\u3297\u3299\u00A9\u00AE\u200D\u20E3\uFE0F\u2190-\u21FF\u2300-\u23FF\u2400-\u243F\u25A0-\u25FF\u2600-\u26FF\u2700-\u27BF]*$/),R=!T&&/[/?]/.test(d),k=C&&S;return g+=R?" file-icon":k?` font-icon fa-${S}`:" emoji-icon",reactExports.createElement("span",$t(Fe(Fe($t(Fe({},m?{"aria-label":m}:{"aria-hidden":!0}),{role:"img"}),x),R?{style:Fe({backgroundImage:`url(${JSON.stringify(d)})`},x==null?void 0:x.style)}:void 0),{className:g}),T?d:k?null:v||"#")}),{t:t$b}=i18n,{t:t$a,useI18N:useI18N$9}=i18n;function login$1(d,m,g){return yt(this,null,function*(){const x=working();return srpClientSequence(d,m,apiCall,g).catch(b=>{if(b.code==HTTP_METHOD_NOT_ALLOWED||!m)return apiCall("login",Fe({username:d,password:m},g));throw b}).then(b=>(hfsEvent("loginOk",{username:d}),refreshSession$1(b),state.loginRequired=!1,b),b=>{throw hfsEvent("loginFailed",{username:d,error:b}),Error(b.data==="trust"?t$a("login_untrusted","Login aborted: server identity cannot be trusted"):b.code===HTTP_UNAUTHORIZED&&!b.data?t$a("login_bad_credentials","Invalid credentials"):b.code===HTTP_CONFLICT?t$a("login_bad_cookies","Cookies not working - login failed"):t$a(b.message||String(b)))}).finally(x)})}const refreshSession$1=makeSessionRefresher(state);function logout(){return apiCall("logout",{},{modal:working}).catch(d=>{if(d.code!==HTTP_UNAUTHORIZED)throw d;if(state.username="",fallbackToBasicAuth())return location.reload();reloadList(),toast(t$a`Logged out`,"success")})}let closeLoginDialog,lastPromise;function loginDialog(d=!0,m=!0){return yt(this,null,function*(){return lastPromise=new Promise(g=>{if(fallbackToBasicAuth())return location.href="/?get=login";if(closeLoginDialog)return lastPromise;let x=!1;const{close:b}=newDialog({closable:d,className:"login-dialog",icon:()=>hIcon("login"),onClose(E){g(E),closeLoginDialog=void 0},title:()=>reactExports.createElement(reactExports.Fragment,{},useI18N$9().t("Login")),Content(){const E=reactExports.useRef(),v=reactExports.useRef(),S=reactExports.useRef();reactExports.useEffect(()=>{setTimeout(()=>{var k;return(k=E.current)==null?void 0:k.focus()})},[]);const{t:C}=useI18N$9();return reactExports.createElement("form",{onSubmit(k){k.preventDefault(),R(k)}},reactExports.createElement(CustomCode,{name:"beforeLogin"}),reactExports.createElement(CustomCode,{name:"loginUsernameField"},reactExports.createElement("div",{className:"field"},reactExports.createElement("label",{htmlFor:"login_username"},C`Username`),reactExports.createElement("input",{ref:E,id:"login_username",name:"username",autoComplete:"username",required:!0,onKeyDown:T}))),reactExports.createElement(CustomCode,{name:"loginPasswordField"},reactExports.createElement("div",{className:"field"},reactExports.createElement("label",{htmlFor:"login_password"},C`Password`),reactExports.createElement("input",{ref:v,id:"login_password",name:"password",type:"password",autoComplete:"current-password",required:!0,onKeyDown:T}))),reactExports.createElement(CustomCode,{name:"beforeLoginSubmit"}),reactExports.createElement("div",{className:"submit"},reactExports.createElement("button",{type:"submit"},C`Continue`)),reactExports.createElement("div",{id:"login-options"},reactExports.createElement(Checkbox,{ref:S,id:ALLOW_SESSION_IP_CHANGE},C(ALLOW_SESSION_IP_CHANGE,"Allow IP change during this session"))));function T(k){const{key:L}=k;if(L==="Escape")return b(null);if(L==="Enter")return R(k)}function R(k){return yt(this,null,function*(){var j,Y;const L=k.target instanceof HTMLElement&&k.target.closest("form");if(!L)return;k.stopPropagation();const z=_.pickBy(Object.fromEntries(new FormData(L).entries()),_.isString),{username:D,password:A}=z,I=Vt(z,["username","password"]),N=D.trim();if(!(x||!N)){x=!0;try{const B=yield login$1(N,A,Fe({[ALLOW_SESSION_IP_CHANGE]:(j=S.current)==null?void 0:j.checked},I));yield b(!0),toast(C`Logged in`,"success"),B!=null&&B.redirect?setTimeout(()=>getHFS().navigate(B.redirect),10):m&&reloadList()}catch(B){yield alertDialog(B),(Y=E.current)==null||Y.focus()}finally{x=!1}}})}}});closeLoginDialog=b})})}const{t:t$9,useI18N:useI18N$8}=i18n,{t:t$8,useI18N:useI18N$7}=i18n;function cut(d){if(state.clip=d,d.length)return toast(t$8("after_cut",`Your selection is now in the clipboard.
761
+ Go to destination folder to paste.`),"info")}const{t:t$7,useI18N:useI18N$6}=i18n;function openFileMenu(d,m,g){return yt(this,null,function*(){var z,j,Y;const{uri:x,isFolder:b,s:E}=d,v=!((z=d.p)!=null&&z.includes("r")),S=!((j=d.p)!=null&&j.match(/L/i)),C=d.cantOpen===DirEntry.FORBIDDEN,R=[!(C||b&&!(v&&d.canArchive()&&S))&&{id:"download",label:t$7`Download`,href:x+(b?"?get=zip":"?dl"),icon:"download",target:"_blank"},((Y=state.props)==null?void 0:Y.can_comment)&&{id:"comment",label:t$7`Comment`,icon:"comment",onClick:()=>editComment(d)},...g.map(B=>{if(B==="open"){if(C)return;const U={id:"open",icon:"play",label:t$7("file_open","Open"),href:x,target:b||d.web?void 0:"_blank",rel:b||d.web?void 0:"noopener noreferrer",onClick:makeOnClickOpen(d)};return!b||U.onClick?U:reactExports.createElement(LinkClosingDialog,{to:x,reloadDocument:d.web},hIcon(U.icon),U.label)}return B==="delete"?d.canDelete()&&{id:"delete",label:t$7`Delete`,icon:"delete",onClick:()=>deleteFiles$1([d.uri])}:B==="show"?!d.cantOpen&&getShowComponent(d)&&{id:"show",label:t$7`Show`,icon:"image",onClick:()=>fileShow(d)}:B}),d.canDelete()&&{id:"rename",label:t$7`Rename`,icon:"edit",onClick:()=>rename(d)},d.canDelete()&&{id:"cut",label:t$7`Cut`,icon:"cut",onClick:()=>I(cut([d]))},b&&!d.web&&!d.cantOpen&&{id:"list",label:t$7`Get list`,href:x+"?get=list&folders=*",icon:"list",target:"_blank"}].filter(Boolean),k=d.n.slice(0,-1-d.name.length),L=[{id:"name",label:t$7`Name`,value:d.name},typeof E=="number"&&{id:"size",label:t$7`Size`,value:reactExports.createElement(reactExports.Fragment,{},formatBytes(E),reactExports.createElement("small",{className:HIDE_IN_TESTS},prefix(" (",E>getHFS().kb&&E.toLocaleString(),")")))},d.m&&{id:"timestamp",label:t$7`Timestamp`,value:d.m.toLocaleString()},d.c&&{id:"creation",label:t$7`Creation`,value:d.c.toLocaleString()},k&&{id:"folder",label:t$7`Folder`,value:reactExports.createElement(Link$2,{to:(k.startsWith("/")?"":location.pathname)+pathEncode(k)+"/",onClick:()=>closeDialog(null,!0)},k.replaceAll("/"," / "))},b&&!d.cantOpen&&{id:"folderSize",label:t$7`Size`,value:reactExports.createElement(N)}].filter(Boolean),D=yield Promise.all(hfsEvent("fileMenu",{entry:d,menu:R,props:L}));R.push(...D.flat().filter(Boolean)),_.remove(R,(B,U)=>_.find(R,W=>B.id?B.id===W.id:!W.id&&B.label===W.label,U+1));const A=getEntryIcon(d),{close:I}=newDialog({title:b?t$7`Folder menu`:t$7`File menu`,className:"file-dialog",icon:()=>A,position:Math.min(innerWidth,innerHeight)<800?void 0:[m.pageX,m.pageY-scrollY],restoreFocus:m.screenY||m.screenX?!1:void 0,Content(){var J;const{t:B}=useI18N$6(),{data:U}=useApi("get_file_details",{uris:[d.uri]}),W=(J=U==null?void 0:U.details)==null?void 0:J[0],V=[...L,with_(renderUploaderFromDetails(W),Q=>Q&&{id:"uploader",label:B`Uploader`,value:Q})];return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement("dl",{className:"file-dialog-properties"},dontBotherWithKeys(V.map(Q=>reactExports.isValidElement(Q)?Q:_.isPlainObject(Q)?reactExports.createElement("div",{id:`menu-prop-${Q.id}`},reactExports.createElement("dt",{},Q.label),reactExports.createElement("dd",{},Q.value)):null)),d.cantOpen&&reactExports.createElement("div",{},hIcon("password",{style:{marginRight:".5em",marginTop:".5em"}}),B(MISSING_PERM))),reactExports.createElement("div",{className:"file-menu"},dontBotherWithKeys(R.map((Q,X)=>reactExports.isValidElement(Q)?Q:(Q==null?void 0:Q.label)&&reactExports.createElement("a",$t(Fe({key:X,href:"#"},_.omit(Q,["label","icon","toggled"])),{id:Q.id&&`menu-entry-${Q.id}`,className:Q.toggled?"toggled":void 0,onClick(ie){return yt(this,null,function*(){var oe;Q.href||ie.preventDefault();try{(yield(oe=Q.onClick)==null?void 0:oe.call(Q,ie))!==!1&&I()}catch(Z){alertDialog(Z)}})}}),hIcon(Q.icon||"file"),reactExports.createElement("label",{style:{display:"flex",flexDirection:"column"}},reactExports.createElement("div",{},Q.label),reactExports.createElement("small",{},Q.subLabel)))))))}});function N(){const[B,U]=reactExports.useState(!1),[W]=reactExports.useState(()=>randomId()),{data:V,error:J,loading:Q}=useApi(B&&"get_folder_size",{uri:d.uri,id:W},{timeout:!1}),X=useApi(Q&&"get_folder_size_partial",{id:W});return useInterval(X.reload,1e3),re(V||J)||(Q?reactExports.createElement("span",{},re(X.data)," ",reactExports.createElement(Btn,{asText:!0,label:t$7`Cancel`,icon:reactExports.createElement(Spinner),onClick(){U(!1)}})):reactExports.createElement(Btn,{asText:!0,label:t$7`Calculate`,onClick(){U(!0)}}));function re(ie){return ie&&(ie.code?err2msg(ie):reactExports.createElement("span",{},reactExports.createElement(Bytes,_.pick(ie,"bytes"))," / ",t$7("n_files",{n:ie.files.toLocaleString()},"{n,plural,one{# file} other{# files}}")))}}})}function rename(d){return yt(this,null,function*(){var T;const m=yield promptDialog(t$7`Name`,{value:d.name,title:t$7`Rename`,onField:R=>R.setSelectionRange(0,d.name.lastIndexOf("."))});if(!m)return;const{n:g,uri:x}=d;yield apiCall("rename",{uri:x,dest:m},{modal:working});const b=t$7`Operation successful`;if(x===location.pathname)return(T=alertDialog(b))==null?void 0:T.then(()=>getHFS().navigate(x+"../"+pathEncode(m)+"/"));const E=g.replace(/(.*?)[^/]+$/,(R,k)=>k+m),v=new DirEntry(E,Fe({key:g},d)),S=_.findIndex(state.list,{n:g});state.list[S]=v;const C=_.findIndex(state.filteredList,{n:g});C>=0&&(state.filteredList[C]=v),toast(b,"success")})}function editComment(d){return yt(this,null,function*(){const m=yield inputComment(d.name,d.comment);m!==void 0&&(yield apiCall("comment",{uri:d.uri,comment:m},{modal:working}),decodeURI(d.uri)===decodeURI(location.pathname)?_.set(state,"props.comment",m):updateEntry(d,g=>g.comment=m),operationSuccessful())})}function updateEntry(d,m){m(_.find(state.list,{n:d.n}))}function LinkClosingDialog(d){return reactExports.createElement(Link$2,d.reloadDocument?d:$t(Fe({},d),{to:"",onClick(g){return yt(this,null,function*(){var x;for(g.preventDefault();anyDialogOpen();)yield(x=closeDialog())==null?void 0:x.closed;getHFS().navigate(d.to)})}}))}function makeOnClickOpen(d){return d.cantOpen?m=>yt(this,null,function*(){if(m.preventDefault(),d.cantOpen===DirEntry.FORBIDDEN)return alertDialog(t$7`Forbidden`,"warning");if(yield loginDialog(!0,!1)){if(d.isFolder&&!d.web)return setTimeout(()=>getHFS().navigate(d.uri));location.href=d.uri}}):void 0}function renderUploaderFromDetails(d){if(!d)return;const{upload:m}=d;return m&&`${m.username||""}${prefix("@",m.ip)}`}const{t:t$6}=i18n,uploadState=proxy({uploadDialogIsOpen:!1,eta:0,speed:0,partial:0,progress:0,paused:!1,qs:[],adding:[],skipped:[],errors:[],doneByte:0,done:[]});window.onbeforeunload=d=>{if(uploadState.qs.length)return d.preventDefault(),d.returnValue=t$6("Uploading")};let stuckSince=1/0,bytesSentTimestamp=Date.now(),bytesSent=0;const recentSpeedSamples=[];setInterval(()=>{const d=Date.now(),m=(d-bytesSentTimestamp)/1e3,g=bytesSent/m;currentReq&&d-stuckSince>=1e4&&(currentReq.abort(),console.debug("upload stuck, aborting")),bytesSent=0,bytesSentTimestamp=d;const b=_.sumBy(uploadState.qs,v=>_.sumBy(v.entries,S=>S.file.size))-uploadState.partial,E=uploadState.uploading;E&&recentSpeedSamples.push(g),(!E||recentSpeedSamples.length>5)&&recentSpeedSamples.shift(),uploadState.paused&&(recentSpeedSamples.length=0),uploadState.speed=_.mean(recentSpeedSamples),uploadState.eta=b/uploadState.speed},2e3);let currentReq;const id$2=randomId();let userAborted=!1,closeLastDialog,reloadOnClose=!1;function startUpload(d,m,g=0){return yt(this,null,function*(){console.debug("start upload",d.path,g),uploadState.uploading=d,uploadState.progress=0,userAborted=!1;let x=!0;const b=getHFS().splitUploads,E=d.file.size,v=m+pathEncode(d.path);let S=!1;do{let R=currentReq=new XMLHttpRequest;const k=pendingPromise();stuckSince=Date.now(),R.onloadend=()=>yt(this,null,function*(){try{if(currentReq=void 0,uploadState.paused)return S=!0;if(x=!0,!userAborted&&!R.status){R=new XMLHttpRequest,R.open("PUT",v+A+"&simulating="+I.size,!1);try{R.send()}catch(z){console.log(z)}yield wait(500)}const{status:N}=R;if(N===HTTP_RANGE_NOT_SATISFIABLE)return S=!0;if(N===HTTP_PRECONDITION_FAILED){const z=Number(R.getResponseHeader("x-size"));if(R.getResponseHeader(MTIME_CHECK)){const j=fetch(v+"?get="+UPLOAD_TEMP_HASH).then(B=>B.text());if((yield calcHash(d.file,z))!==(yield j))return x=!1,console.debug("upload hash mismatch");console.debug("upload hash is matching")}return g=z,console.debug("resuming upload",z.toLocaleString())}if(userAborted||N===HTTP_CONFLICT){if(R.responseText==="retry")return yield wait(2e3);d.error=N?t$6("upload_conflict","already exists"):t$6`Interrupted`,uploadState.skipped.push(d)}else if(N>=400)C(N);else if(N){if(b&&(g+=b,g<E))return;uploadState.done.push($t(Fe({},d),{response:tryJson(R.responseText)})),uploadState.doneByte+=d.file.size,reloadOnClose=!0}else return yield wait(2e3);S=!0,k.then(T)}finally{k.resolve()}});let L=0;R.upload.onprogress=N=>{uploadState.partial=N.loaded+g,uploadState.progress=uploadState.partial/E,bytesSent+=N.loaded-L,N.loaded>L&&(stuckSince=Date.now()),L=N.loaded};const D=b&&g+b<E,A=buildUrlQueryString({id:id$2,mtime:d.file.lastModified,resume:g+(x?"!":""),partial:D?E-g:void 0,comment:d.comment||void 0,existing:with_(state.uploadOnExisting,N=>N!=="rename"?N:void 0)});R.open("PUT",v+A,!0);const I=d.file.slice(g,b?g+b:void 0);R.send(I),yield k}while(!S);function C(R){var A;const L={[HTTP_PAYLOAD_TOO_LARGE]:t$6`file too large`+(getHFS().proxyDetected?`
762
+ – `+t$6("proxy_413","Check for this limit on the proxy server"):""),[HTTP_CONFLICT]:t$6("upload_conflict","already exists"),[HTTP_INSUFFICIENT_STORAGE]:t$6`insufficient storage`}[R]||HTTP_MESSAGES[R]||R;if(d.error=L,uploadState.errors.push(d)>1)return;const D=t$6("failed_upload",{name:d.path},"Couldn't upload {name}")+prefix(": ",L);closeLastDialog==null||closeLastDialog(),closeLastDialog=(A=alertDialog(D,"error"))==null?void 0:A.close}function T(){uploadState.uploading=void 0,uploadState.partial=0;const{qs:R}=uploadState;if(!R.length||(R[0].entries.shift(),R[0].entries.length||R.shift(),R.length)||(setTimeout(reloadList,500),reloadOnClose=!1,uploadState.uploadDialogIsOpen))return;const k=snapshot(uploadState);resetCounters();const L=reactExports.createElement("div",{},t$6(["upload_concluded","Upload terminated"],"Upload concluded:"),reactExports.createElement(UploadStatus,{snapshot:k,display:"flex",flexDirection:"column"}));k.errors.length||k.skipped.length?alertDialog(L,"warning"):toast(L,"success")}})}subscribe(uploadState,()=>{const[d]=uploadState.qs;d!=null&&d.entries.length&&!uploadState.uploading&&!uploadState.paused&&startUpload(d.entries[0],d.to)});function resetCounters(){Object.assign(uploadState,{errors:[],done:[],doneByte:0,skipped:[]})}function calcHash(d,m=1/0){return yt(this,null,function*(){const g=yield C(),x=Date.now(),b=d.stream().getReader();let E=m;const v=_.debounce(()=>uploadState.hashing=(m-E)/m,100,{maxWait:500});try{for(;E>0;){const T=yield b.read();if(T.done)break;const R=T.value.slice(0,E);g.update(R.buffer),E-=R.length,v(),yield wait(1)}}finally{v.flush(),uploadState.hashing=void 0}const S=g.digest().toString(16);return console.debug("hash calculated in",Date.now()-x,"ms",S),S;function C(){return yt(this,null,function*(){const T=(yield __vitePreload(()=>yt(this,null,function*(){const{h32:k}=yield import("./index-DtaRq1wi.js").then(L=>L.i);return{h32:k}}),[])).h32(),R=T.update;return T.update=k=>R.call(T,k),T})}})}const{t:t$5}=i18n;getHFS().dontOverwriteUploading;function UploadStatus(g){var x=g,{snapshot:d}=x,m=Vt(x,["snapshot"]);const b=useSnapshot(uploadState),{done:E,doneByte:v,errors:S,skipped:C}=d||b,T=E.length>0&&t$5("upload_finished",{n:E.length,size:formatBytes(v)},"{n} finished ({size})"),R=C.length>0&&t$5("upload_skipped",{n:C.length},"{n} skipped"),k=S.length>0&&t$5("upload_errors",{n:S.length},"{n} failed"),L=[T,R,k].filter(Boolean).join(" – ");if(!L)return null;const D=reactExports.createElement("span",{className:"horiz-sep"}," – ");return reactExports.createElement("div",{style:Fe({},m)},L,D,reactExports.createElement(Btn,{label:t$5`Show details`,asText:!0,onClick:A}),D,reactExports.createElement(Btn,{label:t$5("copy_links","Copy links"),asText:!0,successFeedback:!0,onClick(){return yt(this,null,function*(){yield copyTextToClipboard(E.map(N=>location.origin+N.response.uri).join(`
763
+ `)),operationSuccessful()})}}));function A(){uploadState.uploadDialogIsOpen||closeDialog(),alertDialog(reactExports.createElement("div",{},[[T,E],[R,C],[k,S]].map(([N,z],j)=>N&&reactExports.createElement("div",{key:j},N,reactExports.createElement("ul",{},z.map((Y,B)=>reactExports.createElement("li",{key:B},Y.path,prefix(" (",Y.error,")"))))))))}}function inputComment(d,m){return promptDialog(t$5("enter_comment",{name:d},"Comment for {name}"),{value:m,type:"textarea"})}const{t:t$4,useI18N:useI18N$5}=i18n;function deleteFiles$1(d){return yt(this,null,function*(){const m=d.length;if(!(yield confirmDialog(t$4("delete_confirm",{n:m},"Delete {n,plural, one{# item} other{# items}}?"))))return!1;const g=working(),x=onlyTruthy(yield Promise.all(d.map(v=>apiCall("delete",{},{restUri:v}).then(()=>null,S=>(S==null?void 0:S.code)!==HTTP_NOT_FOUND&&{uri:v,err:S}))));g(),reloadList();const b=x.length,E=t$4("delete_completed",{n:m-b},"Deletion: {n} completed");if(m===1&&!b)return toast(E,"success");alertDialog(reactExports.createElement(reactExports.Fragment,{},E,b>0&&t$4("delete_failed",{n:b},", {n} failed"),reactExports.createElement("div",{style:{textAlign:"left",marginTop:"1em"}},...x.map(v=>reactExports.createElement(ErrorMsg,{err:t$4(err2msg(v.err))+": "+v.uri})))))})}const{useI18N:useI18N$4}=i18n,{useI18N:useI18N$3}=i18n,{useI18N:useI18N$2}=i18n,{t:t$3,useI18N:useI18N$1}=i18n,MISSING_PERM="Missing permission";reactExports.memo(({nPages:d,current:m,pageSize:g,changePage:x,atBottom:b})=>{reactExports.useEffect(()=>(document.body.style.overflowY="scroll",()=>{document.body.style.overflowY=""}),[]);const E=reactExports.useRef();reactExports.useEffect(()=>{var T;return(T=E.current)==null?void 0:T.scrollIntoView({block:"nearest"})},[m]);const v=d>20,S=_.floor(m,-1),C=S+10;return reactExports.createElement("div",{id:"paging"},reactExports.createElement("button",{title:t$3("go_first","Go to first item"),className:m?void 0:"toggled",onClick(){x(0)}},hIcon("to_start")),reactExports.createElement("div",{id:"paging-middle"},_.range(1,d).map(T=>(!v||!(T%10)||T>=S&&T<C)&&reactExports.createElement("button",$t(Fe({key:T},T===m&&{className:"toggled",ref:E}),{onClick:()=>x(T)}),v&&!(T%10)?T/10+"K":T*g))),reactExports.createElement("button",{title:t$3("go_last","Go to last item"),className:b?"toggled":void 0,onClick(){x(d-1,!0)}},hIcon("to_end")))});function useMidnight(){const[d,m]=reactExports.useState(g);return reactExports.useEffect(()=>{setTimeout(()=>m(g()),10*6e4)},[]),d;function g(){const x=new Date;x.setHours(x.getHours()-6);const b=new Date;return b.setHours(0,0,0,0),x<b?x:b}}function getEntryIcon(d){return reactExports.createElement(CustomCode,{name:"entryIcon",entry:d},d.getDefaultIcon())}const EntryDetails=reactExports.memo(({entry:d,midnight:m})=>{const{sort_by:g}=useSnapState(),x=g==="creation"?d.c:d.m,b=x&&x>m,E=useWindowSize().width<800,{t:v}=useI18N$1(),S="2-digit";return reactExports.createElement("div",{className:"entry-details"},reactExports.createElement(CustomCode,{name:"additionalEntryDetails",entry:d}),d.cantOpen&&hIcon(d.cantOpen===DirEntry.FORBIDDEN?"lock":"password",{className:"miss-perm",title:v(MISSING_PERM)}),reactExports.createElement(EntrySize,{s:d.s}),x&&reactExports.createElement("span",{className:"entry-ts","aria-hidden":!0,onClick(){E&&alertDialog(v`Full timestamp:`+`
764
+ `+formatTimestamp(x))}},formatTimestamp(x,Fe(Fe({},!E||!b?{year:E?S:"numeric",month:S,day:S}:null),!E||b?{hour:S,minute:S}:null))))}),EntrySize=reactExports.memo(({s:d})=>d===void 0?null:reactExports.createElement(Bytes,{className:"entry-size",bytes:d}));function getId3Tags(d){return yt(this,null,function*(){const m=yield fetch(d,{headers:{Range:"bytes=0-2047"}}).then(E=>E.arrayBuffer()),g=new DataView(m);if(g.getUint32(0)!==1229206275)return;const x={};let b=10;for(;b<m.byteLength;){const E=String.fromCharCode(g.getUint8(b++),g.getUint8(b++),g.getUint8(b++),g.getUint8(b++));if(E==="\0\0\0\0")break;const v=g.getUint32(b);b+=6;const S=g.getUint8(b++)?{239:"utf-8",255:"utf-16le",254:"utf-16be"}[g.getUint8(b)]:"ISO-8859-1";x[E]=new TextDecoder(S).decode(m.slice(b,b+=v-1))}for(const[E,v]of Object.entries({TALB:"album",TIT2:"title",TPE1:"artist",TYER:"year",TRCK:"track"}))x[v]=x[E];return x})}const{t:t$2,useI18N}=i18n;var ZoomMode=(d=>(d[d.fullWidth=0]="fullWidth",d[d.freeY=1]="freeY",d[d.contain=2]="contain",d))(ZoomMode||{});function fileShow(d,{startPlaying:m=!1,startShuffle:g=!1}={}){if(!getShowComponent(d))return;let x=!1,b,E,v=!0,S=!0;const{close:C}=newDialog({noFrame:!0,className:"file-show",onClose(){b==null||b()},Content(){const{uri:T}=useSnapState();reactExports.useEffect(()=>{T!==E&&(E!=null||(E=T),E!==T&&C())},[T]);const[R,k,L]=useStateMounted(d),D=reactExports.useRef(0),A=reactExports.useRef(d),[I,N]=reactExports.useState(2),[z,j]=reactExports.useState();reactExports.useEffect(()=>ke(g),[]);const Y=reactExports.useRef(0);z||(Y.current=0);const[B,U,W]=useStateMounted(!1),[V,J]=reactExports.useState("");reactExports.useEffect(()=>{z&&rt(z[0])},[!!z]),useEventListener("keydown",({key:Je})=>{if(Je==="Escape"){if(x)return C();x=!0,b=toast(Re("esc_again","Press ESC twice to close")).close;return}if(x=!1,Je==="ArrowLeft")return Ge();if(Je==="ArrowRight")return Ie();if(Je==="ArrowDown")return Xe(1);if(Je==="ArrowUp")return Xe(-1);if(Je==="d")return location.href=R.uri+"?dl";if(Je==="z")return ot();if(Je==="f")return Oe();if(Je==="s")return ke();if(Je==="r")return Ne();if(Je==="a")return Ke();if(Je===" "){const gt=state.selected;gt[R.uri]?delete gt[R.uri]:gt[R.uri]=!0,state.showFilter=!0;return}});const[Q,X]=reactExports.useState(!1),re=reactExports.useMemo(()=>getShowComponent(R),[R]),ie=re===Audio;reactExports.useEffect(()=>X(ie),[ie]);const oe=reactExports.useRef(0),Z="nav"+(Q?"":" nav-hidden"),[ee,ce]=reactExports.useState(!1),[fe,ae]=reactExports.useState(!1),ue=reactExports.useRef(),pe=reactExports.useRef();reactExports.useEffect(()=>{Xe(-1e9)},[R]);const[ge,ye]=reactExports.useState();reactExports.useEffect(()=>ye(void 0),[R]);const{auto_play_seconds:Ee}=useSnapState(),[ve,Se]=reactExports.useState(m);function $e(){var Je;return(Je=ue.current)==null?void 0:Je.querySelector(".showing")}reactExports.useEffect(()=>{const Je=$e();try{if(!ve&&!S||!Je)return}finally{S=!1}if(Je instanceof HTMLMediaElement)return Je.play().catch(He),domOn("ended",Ie,{target:Je});if(!ve)return;const gt=setTimeout(Ie,state.auto_play_seconds*1e3);return()=>clearTimeout(gt)},[ve,R]);const{mediaSession:Me}=navigator;Me==null||Me.setActionHandler("nexttrack",Ie),Me==null||Me.setActionHandler("previoustrack",Ge);const{t:Re}=useI18N(),De=Re("autoplay_seconds","Seconds to wait on images"),Be=dirname(R.n),Le=reactExports.useRef();return reactExports.useEffect(()=>{re||Le.current===R||(Ye(),Le.current=R)},[R,re]),reactExports.createElement(FlexV,{gap:0,alignItems:"stretch",className:ie?void 0:ZoomMode[I],props:{role:"dialog",onMouseMove(){ie||(X(!0),clearTimeout(oe.current),oe.current=+setTimeout(()=>X(!1),1e3))}}},reactExports.createElement("div",{className:"bar"},reactExports.createElement("div",{className:"filename"},reactExports.createElement("small",{},Be),R.n.slice(Be.length)),reactExports.createElement("div",{className:"controls"},reactExports.createElement(EntryDetails,{entry:R,midnight:useMidnight()}),useWindowSize().width>800&&iconBtn("?",showHelp),reactExports.createElement("div",{},reactExports.createElement(Btn,{className:"small",label:Re`Auto-play`,toggled:ve,onClick:Ke}),ve&&reactExports.createElement(Btn,{className:"small",label:String(Ee),title:De,onClick:st})),iconBtn("menu",Je=>openFileMenu(R,Je,["open","delete",{id:"zoom",icon:"zoom",label:Re`Switch zoom mode`,onClick:ot},{id:"fullscreen",icon:"fullscreen",label:Re`Full screen`,onClick:Oe},{id:"shuffle",icon:"shuffle",label:Re`Shuffle`,toggled:!!z,onClick:()=>ke()},{id:"repeat",icon:"repeat",label:Re`Repeat`,toggled:B,onClick:Ne}])),iconBtn("close",C))),reactExports.createElement(FlexV,{center:!0,alignItems:"center",className:"main",ref:pe},ee&&reactExports.createElement(Spinner,{style:{position:"absolute",fontSize:"20vh",opacity:.5}}),fe===R.n?reactExports.createElement(FlexV,{alignItems:"center",textAlign:"center"},hIcon("error",{style:{fontSize:"20vh"}}),reactExports.createElement("div",{},R.name),Re`Loading failed`):reactExports.createElement("div",{className:"showing-container",ref:ue},reactExports.createElement("div",{className:"cover "+(V?"":"none"),style:{backgroundImage:V&&`url("${V}")`}}),re&&reactExports.createElement(re,{src:R.uri,className:"showing",onLoad(){A.current=R,ce(!1)},onError:Ye,onPlay(){return yt(this,null,function*(){var dt,jt;const Je=ie?state.list.filter(Wt=>Be===dirname(Wt.n)&&Wt.name.match(/(?:folder|cover|front|albumart.*)\.jpe?g$/i)):[];J(pathEncode(((dt=_.maxBy(Je,"s"))==null?void 0:dt.n)||""));const gt={title:R.name,album:decodeURIComponent(basename(dirname(R.uri))),artwork:Je.map(Wt=>({src:Wt.n}))},Ct=window.MediaMetadata&&(navigator.mediaSession.metadata=new MediaMetadata(gt));if(R.ext==="mp3"){const Wt=R.name.split(" - ");ye(Object.assign(gt,Fe({title:(jt=Wt.at(-1))==null?void 0:jt.slice(0,-4),artist:Wt.filter(Xt=>!isNumeric(Xt)).at(-2)},yield getId3Tags(location.pathname+R.n).catch(()=>{})))),Ct&&Object.assign(Ct,gt)}hfsEvent("showPlay",{entry:R,meta:gt,setCover(Wt){typeof Wt=="string"&&(J(Wt),Ct&&(navigator.mediaSession.metadata=new MediaMetadata(Object.assign(gt,{artwork:[{src:Wt}]}))))}})})}}),ge&&reactExports.createElement("div",{className:"meta-tags"},reactExports.createElement("div",{},...["title","artist","album","year"].map(Je=>reactExports.createElement("div",{key:Je,className:`meta-${Je}`},ge[Je]))))),hIcon("❮",{className:Z,style:{left:0},onClick:Ge}),hIcon("❯",{className:Z,style:{right:0},onClick:Ie})));function Ge(){Ve(-1)}function Ie(){Ve(1)}function Ye(){var gt,Ct;if(((Ct=(gt=document.querySelector(".showing-container .showing"))==null?void 0:gt.error)==null?void 0:Ct.code)!==2){if(R!==A.current)return Ve();ce(!1),ae(R.n)}}function He(Je){if(console.debug(Je),(Je==null?void 0:Je.name)!=="NotAllowedError"||!v)return;v=!1;const gt=$e();if(!(gt instanceof HTMLMediaElement))return;const Ct=gt,dt=newDialog({onClose:()=>v=!0,Content:()=>reactExports.createElement(Btn,{autoFocus:!0,icon:"play",label:"Click here to play",onClick:()=>{Ct.play().catch(He),dt.close()}})})}function Ve(Je=1){if(L()!==R)return;const{list:gt}=state;let Ct=z;if(z&&Je>0&&z.length<gt.length){const Wt=_.findIndex(z,{n:R.n});if(Wt>=Y.current){const Xt=1+Wt,Pt=z.slice(0,Xt);j(Ct=Pt.concat(_.shuffle(_.difference(gt,Pt))))}}Je&&(D.current=Je);let dt=R;for(;dt=dt.getSibling(D.current,Ct),!jt();)if(!dt){if(Je>0){if(W()){if(dt=(Ct==null?void 0:Ct[0])||gt[0],jt())break;continue}Se(!1)}return rt(A.current),restartAnimation(document.body,".2s blink")}if(rt(dt),z){const Wt=_.findIndex(Ct,{n:dt.n});Y.current=Math.max(Y.current,Wt)}function jt(){return dt&&!dt.isFolder&&getShowComponent(dt)}}function rt(Je){ae(!1),ce(Je!==A.current),k(Je)}function Oe(){var Je;if(!document.fullscreenEnabled)return alertDialog(Re`Full-screen not supported`,"error");document.fullscreenElement?document.exitFullscreen():(Je=pe.current)==null||Je.requestFullscreen()}function ot(){N(Je=>Je?Je-1:2)}function ke(Je){j(gt=>(Je!=null?Je:!gt)?_.shuffle(state.list):void 0)}function Ne(){U(Je=>!Je)}function Ke(){Se(Je=>!Je)}function Xe(Je){var gt,Ct;(Ct=ue.current)==null||Ct.scrollBy(0,Je*.5*((gt=ue.current)==null?void 0:gt.clientHeight))}function st(){newDialog({title:Re`Auto-play`,Content(){const{auto_play_seconds:Je}=useSnapState();return reactExports.createElement(FlexV,{},De,reactExports.createElement("input",{type:"number",min:1,max:1e4,value:Je,style:{width:"4em"},onChange:gt=>state.auto_play_seconds=Number(gt.target.value)}))}})}}});return!0}function getShowComponent(d){const m=ext2type(d.ext),x={entry:d,Component:m==="audio"?Audio:m==="video"?Video:m==="image"?"img":""};return hfsEvent("fileShow",x).findLast(Boolean)||x.Component}const Audio=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=Vt(b,["onLoad"]);return reactExports.createElement("audio",Fe({ref:g,onLoadedData:d,controls:!0},m))}),Video=reactExports.forwardRef((x,g)=>{var b=x,{onLoad:d}=b,m=Vt(b,["onLoad"]);return reactExports.createElement("video",Fe({ref:g,onLoadedData:d,controls:!0},m))});function showHelp(){newDialog({title:t$2`File Show help`,className:"file-show-help",Content:()=>reactExports.createElement(reactExports.Fragment,{},t$2("showHelpMain",{},"You can use the keyboard for some actions:"),_.map({"←/→":t$2("showHelp_←/→_body","Go to previous/next file"),"↑/↓":t$2("showHelp_↑/↓_body","Scroll tall images"),space:t$2`Select`,D:t$2`Download`,Z:t$2`Switch zoom mode`,F:t$2`Full screen`,S:t$2`Shuffle`,R:t$2`Repeat`,A:t$2`Auto-play`},(d,m)=>reactExports.createElement("div",{key:m},reactExports.createElement("kbd",{},t$2("showHelp_"+m,m))," ",d)),reactExports.createElement("div",{style:{marginTop:"1em"}},t$2("showHelpListShortcut",{key:isMac?"SHIFT":"WIN"},"From the file list, click holding {key} to show")))})}const{t:t$1}=i18n;setTimeout(()=>{state.remoteSearch=urlParams.search?{search:urlParams.search}:void 0,objFromKeys(["onlyFiles","onlyFolders"],d=>d in urlParams||void 0)});urlParams.autoplay;function reloadList(){state.listReloader=Date.now()}getHFS().textSortCompare=new Intl.Collator(navigator.language).compare;function sort(d){const{sort_by:m,folders_first:g,sort_numerics:x}=state,b=m==="size",E=m==="extension",v=m==="time",S=m==="creation",C=state.invert_order?-1:1,{textSortCompare:T}=getHFS();return d.sort((k,L)=>-compareScalar(k.order||0,L.order||0)||hfsEvent("sortCompare",{a:k,b:L}).find(Boolean)||g&&-compareScalar(k.isFolder,L.isFolder)||C*(b?compareScalar(k.s||0,L.s||0):E?T(k.ext,L.ext):v?compareScalar(k.m,L.m):S?compareScalar(k.c,L.c):0)||x&&C*R(k.n,L.n)||C*T(k.n,L.n));function R(k,L){const D=/\d/g;if(!D.exec(k))return 0;const A=D.lastIndex;if(A){if(!L.startsWith(k.slice(0,A-1)))return 0;k=k.slice(A-1),L=L.slice(A-1)}return compareScalar(parseFloat(k),parseFloat(L))}}function compareScalar(d,m){return d-m}const sortAgain=_.debounce(()=>state.list=sort(state.list),100);for(const d of["sort_by","invert_order","folders_first","sort_numerics"])subscribeKey(state,d,sortAgain);const updateFilteredList=_.debounce(()=>{const d=state.patternFilter;if(!d)return state.filteredList=void 0;const m=new RegExp(_.escapeRegExp(d),"i");state.filteredList=state.list.filter(g=>m.test(g.n))});subscribeKey(state,"list",updateFilteredList);subscribeKey(state,"patternFilter",updateFilteredList);function debounceAsync(d,m={}){const{wait:g=0,leading:x=!1,maxWait:b=1/0,cancelable:E=!1,retain:v=0,retainFailure:S,reuseRunning:C}=m;let T=0,R,k,L=0,D,A,I=!1,N=0;return Object.assign((...B)=>k=j(...B),Fe({clearRetain:()=>A=void 0,flush:()=>R!=null?R:Y(),isWorking:()=>R},E&&{cancel(){L=0,D=void 0}}));function j(...B){return yt(this,null,function*(){if(C&&R)return R;const U=Date.now();if(A&&U-N<(I&&S!=null?S:v))return yield A;D=B,L||(L=U);const W=b-(U-(L||T)),V=Math.min(W,x?g-(U-T):g);if(V>0&&(yield new Promise(J=>setTimeout(J,V))),!D){L=0;return}return D!==B?k:(yield R,Y())})}function Y(){return yt(this,null,function*(){if(D){L=0,T=Date.now();try{const B=D;return D=void 0,R=Promise.resolve(d(...B)),R.then(()=>I=!1,()=>I=!0),yield R}finally{A=R,N=Date.now(),R=void 0}}})}}const{t,getLangs}=i18n;function err2msg(d){return typeof d=="number"?HTTP_MESSAGES[d]:HTTP_MESSAGES[d.code]||d.message||String(d)}function hIcon(d,m){return reactExports.createElement(Icon,Fe({name:d},m))}function ErrorMsg({err:d}){return d?reactExports.createElement("div",{className:"error-msg"},(d==null?void 0:d.message)||_.isString(d)&&d||`${t`Error`}:${d}`):null}let isWorking=!1;function working(){if(isWorking)return()=>{};isWorking=!0;const{close:d}=newDialog({closable:!1,noFrame:!0,Content:Spinner,reserveClosing:!0,className:"working",onClose(){isWorking=!1}});return d}function hfsEvent(d,m){const g=[],x=[],b={params:m,output:g,order:x};let E=new CustomEvent("hfs."+d,{detail:b,cancelable:!0});document.dispatchEvent(E),E.defaultPrevented||(E=new CustomEvent("hfs."+d+":after",{detail:b,cancelable:!0}),document.dispatchEvent(E));const v=x.length&&_.sortBy(g.map((S,C)=>[x[C]||0,S]),"0").map(S=>S[1]);return Object.assign(v||g,{isDefaultPrevented:()=>E.defaultPrevented})}function onHfsEvent(d,m,g){const x="hfs."+d;return document.addEventListener(x,b,g),()=>document.removeEventListener(x,b);function b(E){const{params:v,output:S,order:C}=E.detail;let T;const R=m(v,{output:S,setOrder(k){T=k},preventDefault:()=>E.preventDefault()});R!==void 0&&Array.isArray(S)&&(S.push(R),T&&(C[S.length-1]=T))}}function formatTimestamp(d,m){const g=getOrSet(formatTimestamp,"langs",()=>{const x=getLangs(),b=urlParams.lang||navigator.language;return!x.length||b.startsWith(x[0])?b:x});return d?(d instanceof Date?d:new Date(d)).toLocaleString(g,m):""}Object.assign(getHFS(),{h:reactExports.createElement,React,state,t,_,dialogLib,apiCall,useApi,reloadList,logout,Icon,hIcon,iconBtn,useBatch,fileShow,toast,domOn,getNotifications,debounceAsync,useSnapState,DirEntry,Btn,i18n,fileShowComponents:{Video,Audio},isVideoComponent,markVideoComponent,isAudioComponent,markAudioComponent,isShowSupported:getShowComponent,misc:Fe(Fe(Fe({},cross),shared),thisModule),emit:hfsEvent,onEvent:onHfsEvent,watchState(d,m,g=!1){const x=d.split("upload.")[1],b=x?uploadState:state;return g&&m(b[d]),subscribeKey(b,x||d,m,!0)},customRestCall(d,...m){return apiCall(PLUGIN_CUSTOM_REST_PREFIX+d,...m)},html:d=>reactExports.createElement(Html,{},d),elementToEntry(d){var g;if(!(d instanceof HTMLElement))return;const m=(g=d.closest("li"))==null?void 0:g.querySelector(".link-wrapper a");if(m instanceof HTMLAnchorElement)try{return _.find(state.list,{uri:new URL(m.href).pathname})}catch(x){}},customizeText(d,m=ANY_LANGUAGE){var x,b;const g=i18n.state.translations;(m===ANY_LANGUAGE||m===EMBEDDED_LANGUAGE)&&((x=g[m])!=null||(g[m]={translate:{}})),Object.assign(((b=g[m])==null?void 0:b.translate)||{},d)}});markVideoComponent(Video);markAudioComponent(Audio);function isVideoComponent(d){return!!(d!=null&&d.hfs_show_video)}function markVideoComponent(d){return d.hfs_show_video=!0,d}function isAudioComponent(d){return!!(d!=null&&d.hfs_show_audio)}function markAudioComponent(d){return d.hfs_show_audio=!0,d}function operationSuccessful(){return toast(t`Operation successful`,"success")}var lib={},hasRequiredLib;function requireLib(){if(hasRequiredLib)return lib;hasRequiredLib=1;var d=lib&&lib.__extends||function(){var X=function(re,ie){return X=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(oe,Z){oe.__proto__=Z}||function(oe,Z){for(var ee in Z)Object.prototype.hasOwnProperty.call(Z,ee)&&(oe[ee]=Z[ee])},X(re,ie)};return function(re,ie){if(typeof ie!="function"&&ie!==null)throw new TypeError("Class extends value "+String(ie)+" is not a constructor or null");X(re,ie);function oe(){this.constructor=re}re.prototype=ie===null?Object.create(ie):(oe.prototype=ie.prototype,new oe)}}(),m=lib&&lib.__assign||function(){return m=Object.assign||function(X){for(var re,ie=1,oe=arguments.length;ie<oe;ie++){re=arguments[ie];for(var Z in re)Object.prototype.hasOwnProperty.call(re,Z)&&(X[Z]=re[Z])}return X},m.apply(this,arguments)},g=lib&&lib.__createBinding||(Object.create?function(X,re,ie,oe){oe===void 0&&(oe=ie);var Z=Object.getOwnPropertyDescriptor(re,ie);(!Z||("get"in Z?!re.__esModule:Z.writable||Z.configurable))&&(Z={enumerable:!0,get:function(){return re[ie]}}),Object.defineProperty(X,oe,Z)}:function(X,re,ie,oe){oe===void 0&&(oe=ie),X[oe]=re[ie]}),x=lib&&lib.__setModuleDefault||(Object.create?function(X,re){Object.defineProperty(X,"default",{enumerable:!0,value:re})}:function(X,re){X.default=re}),b=lib&&lib.__importStar||function(X){if(X&&X.__esModule)return X;var re={};if(X!=null)for(var ie in X)ie!=="default"&&Object.prototype.hasOwnProperty.call(X,ie)&&g(re,X,ie);return x(re,X),re},E=lib&&lib.__rest||function(X,re){var ie={};for(var oe in X)Object.prototype.hasOwnProperty.call(X,oe)&&re.indexOf(oe)<0&&(ie[oe]=X[oe]);if(X!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Z=0,oe=Object.getOwnPropertySymbols(X);Z<oe.length;Z++)re.indexOf(oe[Z])<0&&Object.prototype.propertyIsEnumerable.call(X,oe[Z])&&(ie[oe[Z]]=X[oe[Z]]);return ie};Object.defineProperty(lib,"__esModule",{value:!0});var v=b(requireReact()),S=13,C=9,T=8,R=89,k=90,L=77,D=57,A=219,I=222,N=192,z=27,j=100,Y=3e3,B=typeof window!="undefined"&&"navigator"in window&&/Win/i.test(navigator.platform),U=typeof window!="undefined"&&"navigator"in window&&/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform),W="npm__react-simple-code-editor__textarea",V=`
765
765
  /**
766
766
  * Reset the text fill color so that placeholder is visible
767
767
  */
@@ -802,19 +802,19 @@ Go to destination folder to paste.`),"info")}const{t:t$7,useI18N:useI18N$6}=i18n
802
802
  * @public
803
803
  */var g=function(x){var b=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,E=0,v={},S={manual:x.Prism&&x.Prism.manual,disableWorkerMessageHandler:x.Prism&&x.Prism.disableWorkerMessageHandler,util:{encode:function j(Y){return Y instanceof C?new C(Y.type,j(Y.content),Y.alias):Array.isArray(Y)?Y.map(j):Y.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/\u00a0/g," ")},type:function(j){return Object.prototype.toString.call(j).slice(8,-1)},objId:function(j){return j.__id||Object.defineProperty(j,"__id",{value:++E}),j.__id},clone:function j(Y,B){B=B||{};var U,W;switch(S.util.type(Y)){case"Object":if(W=S.util.objId(Y),B[W])return B[W];U={},B[W]=U;for(var V in Y)Y.hasOwnProperty(V)&&(U[V]=j(Y[V],B));return U;case"Array":return W=S.util.objId(Y),B[W]?B[W]:(U=[],B[W]=U,Y.forEach(function(J,Q){U[Q]=j(J,B)}),U);default:return Y}},getLanguage:function(j){for(;j;){var Y=b.exec(j.className);if(Y)return Y[1].toLowerCase();j=j.parentElement}return"none"},setLanguage:function(j,Y){j.className=j.className.replace(RegExp(b,"gi"),""),j.classList.add("language-"+Y)},currentScript:function(){if(typeof document=="undefined")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(U){var j=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(U.stack)||[])[1];if(j){var Y=document.getElementsByTagName("script");for(var B in Y)if(Y[B].src==j)return Y[B]}return null}},isActive:function(j,Y,B){for(var U="no-"+Y;j;){var W=j.classList;if(W.contains(Y))return!0;if(W.contains(U))return!1;j=j.parentElement}return!!B}},languages:{plain:v,plaintext:v,text:v,txt:v,extend:function(j,Y){var B=S.util.clone(S.languages[j]);for(var U in Y)B[U]=Y[U];return B},insertBefore:function(j,Y,B,U){U=U||S.languages;var W=U[j],V={};for(var J in W)if(W.hasOwnProperty(J)){if(J==Y)for(var Q in B)B.hasOwnProperty(Q)&&(V[Q]=B[Q]);B.hasOwnProperty(J)||(V[J]=W[J])}var X=U[j];return U[j]=V,S.languages.DFS(S.languages,function(re,ie){ie===X&&re!=j&&(this[re]=V)}),V},DFS:function j(Y,B,U,W){W=W||{};var V=S.util.objId;for(var J in Y)if(Y.hasOwnProperty(J)){B.call(Y,J,Y[J],U||J);var Q=Y[J],X=S.util.type(Q);X==="Object"&&!W[V(Q)]?(W[V(Q)]=!0,j(Q,B,null,W)):X==="Array"&&!W[V(Q)]&&(W[V(Q)]=!0,j(Q,B,J,W))}}},plugins:{},highlightAll:function(j,Y){S.highlightAllUnder(document,j,Y)},highlightAllUnder:function(j,Y,B){var U={callback:B,container:j,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};S.hooks.run("before-highlightall",U),U.elements=Array.prototype.slice.apply(U.container.querySelectorAll(U.selector)),S.hooks.run("before-all-elements-highlight",U);for(var W=0,V;V=U.elements[W++];)S.highlightElement(V,Y===!0,U.callback)},highlightElement:function(j,Y,B){var U=S.util.getLanguage(j),W=S.languages[U];S.util.setLanguage(j,U);var V=j.parentElement;V&&V.nodeName.toLowerCase()==="pre"&&S.util.setLanguage(V,U);var J=j.textContent,Q={element:j,language:U,grammar:W,code:J};function X(ie){Q.highlightedCode=ie,S.hooks.run("before-insert",Q),Q.element.innerHTML=Q.highlightedCode,S.hooks.run("after-highlight",Q),S.hooks.run("complete",Q),B&&B.call(Q.element)}if(S.hooks.run("before-sanity-check",Q),V=Q.element.parentElement,V&&V.nodeName.toLowerCase()==="pre"&&!V.hasAttribute("tabindex")&&V.setAttribute("tabindex","0"),!Q.code){S.hooks.run("complete",Q),B&&B.call(Q.element);return}if(S.hooks.run("before-highlight",Q),!Q.grammar){X(S.util.encode(Q.code));return}if(Y&&x.Worker){var re=new Worker(S.filename);re.onmessage=function(ie){X(ie.data)},re.postMessage(JSON.stringify({language:Q.language,code:Q.code,immediateClose:!0}))}else X(S.highlight(Q.code,Q.grammar,Q.language))},highlight:function(j,Y,B){var U={code:j,grammar:Y,language:B};if(S.hooks.run("before-tokenize",U),!U.grammar)throw new Error('The language "'+U.language+'" has no grammar.');return U.tokens=S.tokenize(U.code,U.grammar),S.hooks.run("after-tokenize",U),C.stringify(S.util.encode(U.tokens),U.language)},tokenize:function(j,Y){var B=Y.rest;if(B){for(var U in B)Y[U]=B[U];delete Y.rest}var W=new k;return L(W,W.head,j),R(j,W,Y,W.head,0),A(W)},hooks:{all:{},add:function(j,Y){var B=S.hooks.all;B[j]=B[j]||[],B[j].push(Y)},run:function(j,Y){var B=S.hooks.all[j];if(!(!B||!B.length))for(var U=0,W;W=B[U++];)W(Y)}},Token:C};x.Prism=S;function C(j,Y,B,U){this.type=j,this.content=Y,this.alias=B,this.length=(U||"").length|0}C.stringify=function j(Y,B){if(typeof Y=="string")return Y;if(Array.isArray(Y)){var U="";return Y.forEach(function(X){U+=j(X,B)}),U}var W={type:Y.type,content:j(Y.content,B),tag:"span",classes:["token",Y.type],attributes:{},language:B},V=Y.alias;V&&(Array.isArray(V)?Array.prototype.push.apply(W.classes,V):W.classes.push(V)),S.hooks.run("wrap",W);var J="";for(var Q in W.attributes)J+=" "+Q+'="'+(W.attributes[Q]||"").replace(/"/g,"&quot;")+'"';return"<"+W.tag+' class="'+W.classes.join(" ")+'"'+J+">"+W.content+"</"+W.tag+">"};function T(j,Y,B,U){j.lastIndex=Y;var W=j.exec(B);if(W&&U&&W[1]){var V=W[1].length;W.index+=V,W[0]=W[0].slice(V)}return W}function R(j,Y,B,U,W,V){for(var J in B)if(!(!B.hasOwnProperty(J)||!B[J])){var Q=B[J];Q=Array.isArray(Q)?Q:[Q];for(var X=0;X<Q.length;++X){if(V&&V.cause==J+","+X)return;var re=Q[X],ie=re.inside,oe=!!re.lookbehind,Z=!!re.greedy,ee=re.alias;if(Z&&!re.pattern.global){var ce=re.pattern.toString().match(/[imsuy]*$/)[0];re.pattern=RegExp(re.pattern.source,ce+"g")}for(var fe=re.pattern||re,ae=U.next,ue=W;ae!==Y.tail&&!(V&&ue>=V.reach);ue+=ae.value.length,ae=ae.next){var pe=ae.value;if(Y.length>j.length)return;if(!(pe instanceof C)){var ge=1,ye;if(Z){if(ye=T(fe,ue,j,oe),!ye||ye.index>=j.length)break;var $e=ye.index,Ee=ye.index+ye[0].length,ve=ue;for(ve+=ae.value.length;$e>=ve;)ae=ae.next,ve+=ae.value.length;if(ve-=ae.value.length,ue=ve,ae.value instanceof C)continue;for(var Se=ae;Se!==Y.tail&&(ve<Ee||typeof Se.value=="string");Se=Se.next)ge++,ve+=Se.value.length;ge--,pe=j.slice(ue,ve),ye.index-=ue}else if(ye=T(fe,0,pe,oe),!ye)continue;var $e=ye.index,Me=ye[0],Re=pe.slice(0,$e),De=pe.slice($e+Me.length),Be=ue+pe.length;V&&Be>V.reach&&(V.reach=Be);var Le=ae.prev;Re&&(Le=L(Y,Le,Re),ue+=Re.length),D(Y,Le,ge);var Ge=new C(J,ie?S.tokenize(Me,ie):Me,ee,Me);if(ae=L(Y,Le,Ge),De&&L(Y,ae,De),ge>1){var Ie={cause:J+","+X,reach:Be};R(j,Y,B,ae.prev,ue,Ie),V&&Ie.reach>V.reach&&(V.reach=Ie.reach)}}}}}}function k(){var j={value:null,prev:null,next:null},Y={value:null,prev:j,next:null};j.next=Y,this.head=j,this.tail=Y,this.length=0}function L(j,Y,B){var U=Y.next,W={value:B,prev:Y,next:U};return Y.next=W,U.prev=W,j.length++,W}function D(j,Y,B){for(var U=Y.next,W=0;W<B&&U!==j.tail;W++)U=U.next;Y.next=U,U.prev=Y,j.length-=W}function A(j){for(var Y=[],B=j.head.next;B!==j.tail;)Y.push(B.value),B=B.next;return Y}if(!x.document)return x.addEventListener&&(S.disableWorkerMessageHandler||x.addEventListener("message",function(j){var Y=JSON.parse(j.data),B=Y.language,U=Y.code,W=Y.immediateClose;x.postMessage(S.highlight(U,S.languages[B],B)),W&&x.close()},!1)),S;var I=S.util.currentScript();I&&(S.filename=I.src,I.hasAttribute("data-manual")&&(S.manual=!0));function N(){S.manual||S.highlightAll()}if(!S.manual){var z=document.readyState;z==="loading"||z==="interactive"&&I&&I.defer?document.addEventListener("DOMContentLoaded",N):window.requestAnimationFrame?window.requestAnimationFrame(N):window.setTimeout(N,16)}return S}(m);d.exports&&(d.exports=g),typeof commonjsGlobal!="undefined"&&(commonjsGlobal.Prism=g),g.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},g.languages.markup.tag.inside["attr-value"].inside.entity=g.languages.markup.entity,g.languages.markup.doctype.inside["internal-subset"].inside=g.languages.markup,g.hooks.add("wrap",function(x){x.type==="entity"&&(x.attributes.title=x.content.replace(/&amp;/,"&"))}),Object.defineProperty(g.languages.markup.tag,"addInlined",{value:function(b,E){var v={};v["language-"+E]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:g.languages[E]},v.cdata=/^<!\[CDATA\[|\]\]>$/i;var S={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:v}};S["language-"+E]={pattern:/[\s\S]+/,inside:g.languages[E]};var C={};C[b]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return b}),"i"),lookbehind:!0,greedy:!0,inside:S},g.languages.insertBefore("markup","cdata",C)}}),Object.defineProperty(g.languages.markup.tag,"addAttribute",{value:function(x,b){g.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+x+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[b,"language-"+b],inside:g.languages[b]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),g.languages.html=g.languages.markup,g.languages.mathml=g.languages.markup,g.languages.svg=g.languages.markup,g.languages.xml=g.languages.extend("markup",{}),g.languages.ssml=g.languages.xml,g.languages.atom=g.languages.xml,g.languages.rss=g.languages.xml,function(x){var b=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;x.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+b.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+b.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+b.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+b.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:b,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},x.languages.css.atrule.inside.rest=x.languages.css;var E=x.languages.markup;E&&(E.tag.addInlined("style","css"),E.tag.addAttribute("style","css"))}(g),g.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},g.languages.javascript=g.languages.extend("clike",{"class-name":[g.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),g.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,g.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:g.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:g.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:g.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:g.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:g.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),g.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:g.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),g.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),g.languages.markup&&(g.languages.markup.tag.addInlined("script","javascript"),g.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),g.languages.js=g.languages.javascript,function(){if(typeof g=="undefined"||typeof document=="undefined")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var x="Loading…",b=function(I,N){return"✖ Error "+I+" while fetching file: "+N},E="✖ Error: File does not exist or is empty",v={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},S="data-src-status",C="loading",T="loaded",R="failed",k="pre[data-src]:not(["+S+'="'+T+'"]):not(['+S+'="'+C+'"])';function L(I,N,z){var j=new XMLHttpRequest;j.open("GET",I,!0),j.onreadystatechange=function(){j.readyState==4&&(j.status<400&&j.responseText?N(j.responseText):j.status>=400?z(b(j.status,j.statusText)):z(E))},j.send(null)}function D(I){var N=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(I||"");if(N){var z=Number(N[1]),j=N[2],Y=N[3];return j?Y?[z,Number(Y)]:[z,void 0]:[z,z]}}g.hooks.add("before-highlightall",function(I){I.selector+=", "+k}),g.hooks.add("before-sanity-check",function(I){var N=I.element;if(N.matches(k)){I.code="",N.setAttribute(S,C);var z=N.appendChild(document.createElement("CODE"));z.textContent=x;var j=N.getAttribute("data-src"),Y=I.language;if(Y==="none"){var B=(/\.(\w+)$/.exec(j)||[,"none"])[1];Y=v[B]||B}g.util.setLanguage(z,Y),g.util.setLanguage(N,Y);var U=g.plugins.autoloader;U&&U.loadLanguages(Y),L(j,function(W){N.setAttribute(S,T);var V=D(N.getAttribute("data-range"));if(V){var J=W.split(/\r\n?|\n/g),Q=V[0],X=V[1]==null?J.length:V[1];Q<0&&(Q+=J.length),Q=Math.max(0,Math.min(Q-1,J.length)),X<0&&(X+=J.length),X=Math.max(0,Math.min(X,J.length)),W=J.slice(Q,X).join(`
804
804
  `),N.hasAttribute("data-start")||N.setAttribute("data-start",String(Q+1))}z.textContent=W,g.highlightElement(z)},function(W){N.setAttribute(S,R),z.textContent=W})}}),g.plugins.fileHighlight={highlight:function(N){for(var z=(N||document).querySelectorAll(k),j=0,Y;Y=z[j++];)g.highlightElement(Y)}};var A=!1;g.fileHighlight=function(){A||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),A=!0),g.plugins.fileHighlight.highlight.apply(this,arguments)}}()}(prism)),prism.exports}var prismExports=requirePrism();Prism.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]};Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity;Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup;Prism.hooks.add("wrap",function(d){d.type==="entity"&&(d.attributes.title=d.content.replace(/&amp;/,"&"))});Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(m,g){var x={};x["language-"+g]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[g]},x.cdata=/^<!\[CDATA\[|\]\]>$/i;var b={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:x}};b["language-"+g]={pattern:/[\s\S]+/,inside:Prism.languages[g]};var E={};E[m]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,function(){return m}),"i"),lookbehind:!0,greedy:!0,inside:b},Prism.languages.insertBefore("markup","cdata",E)}});Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(d,m){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+d+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[m,"language-"+m],inside:Prism.languages[m]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}});Prism.languages.html=Prism.languages.markup;Prism.languages.mathml=Prism.languages.markup;Prism.languages.svg=Prism.languages.markup;Prism.languages.xml=Prism.languages.extend("markup",{});Prism.languages.ssml=Prism.languages.xml;Prism.languages.atom=Prism.languages.xml;Prism.languages.rss=Prism.languages.xml;Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;(function(d){var m=/[*&][^\s[\]{},]+/,g=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,x="(?:"+g.source+"(?:[ ]+"+m.source+")?|"+m.source+"(?:[ ]+"+g.source+")?)",b=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),E=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function v(S,C){C=(C||"").replace(/m/g,"")+"m";var T=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,function(){return x}).replace(/<<value>>/g,function(){return S});return RegExp(T,C)}d.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,function(){return x})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,function(){return x}).replace(/<<key>>/g,function(){return"(?:"+b+"|"+E+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:v(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:v(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:v(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:v(E),lookbehind:!0,greedy:!0},number:{pattern:v(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:g,important:m,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},d.languages.yml=d.languages.yaml})(Prism);(function(d){var m=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;d.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+m.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+m.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+m.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+m.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:m,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},d.languages.css.atrule.inside.rest=d.languages.css;var g=d.languages.markup;g&&(g.tag.addInlined("style","css"),g.tag.addAttribute("style","css"))})(Prism);Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;const TextEditor=reactExports.forwardRef((b,x)=>{var E=b,{style:d,lang:m="plain"}=E,g=Vt(E,["style","lang"]);return reactExports.createElement(Editor,Fe({highlight:v=>prismExports.highlight(v,prismExports.languages[m],m),padding:10,tabSize:4,insertSpaces:!0,ignoreTabKey:!1,style:Fe({fontFamily:"ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace",fontSize:"1em",flex:1,background:"#8883",borderBottom:"1px solid #bbb"},d)},g))});function TextEditorField(v){var S=v,{onChange:d,value:m,onBlur:g,setApi:x,lang:b}=S,E=Vt(S,["onChange","value","onBlur","setApi","lang"]);x==null||x({getError(){return b==="js"&&m?try_(()=>new Function(m)&&null,R=>R.message):!1}});const[C,T]=reactExports.useState(m||"");return reactExports.createElement(TextField,$t(Fe({multiline:!0,fullWidth:!0,value:C,InputProps:{inputComponent:TextEditorAsInput},inputProps:{lang:b},onChange(R){T(R.target.value)},onBlur(R){g==null||g(R),d(R.target.value,{was:m,event:R})}},E),{onKeyDown(R){var I;if((I=E.onKeyDown)==null||I.call(E,R),isCtrlKey(R)==="Enter")return d(C,{was:m,event:R});if(!R.altKey||R.key!=="Tab")return;R.preventDefault();const k=document.querySelectorAll(focusableSelector),L=_.indexOf(k,R.target),D=k.length,A=(L+(R.shiftKey?-1:1)+D)%D;k[A].focus(),console.debug(k[A])}}))}const TextEditorAsInput=reactExports.forwardRef((x,g)=>{var b=x,{onChange:d}=b,m=Vt(b,["onChange"]);return reactExports.createElement(Box,{sx:{width:"100%",textarea:{outline:0}}},reactExports.createElement(TextEditor,$t(Fe({ref:g,padding:2,style:{background:"initial",borderBottom:"initial"}},m),{onValueChange:E=>d({target:{value:E}}),onKeyDown(E){isCtrlKey(E)==="Enter"&&E.preventDefault()}})))}),DefaultConfiguration={fieldSeparator:",",lineSeparator:`
805
- `,quote:'"'},CSV_INITAL_STATE={field:0,fieldOffset:0,line:0,lineOffset:0,quoted:!1,appendCell:!1,appendField:!1,appendRow:!1};class ParseError extends Error{constructor(m,g){super(`Invalid CSV at ${m}:${g}`)}}class Parser{constructor(m=DefaultConfiguration){Xo(this,"_rows",[]);Xo(this,"_row",[]);Xo(this,"_cell","");Xo(this,"_options",DefaultConfiguration);Xo(this,"_state",Fe({},CSV_INITAL_STATE));Xo(this,"_index",0);Xo(this,"_current","");Xo(this,"_previous","");Xo(this,"_quoteState",Fe({},CSV_INITAL_STATE));this._options=Object.assign({},DefaultConfiguration,m)}parse(m){for(this.reset(),this._index=0;this._index<m.length;this._index++)this._state.appendCell=!0,this._previous=this._current,this._current=m[this._index],this.handleNext();if(this._row.length>0&&(this.addField(this.fieldValue(this._cell),this._row,this._state),this.addRow(this._row,this._rows,this._state)),this._state.quoted)throw new ParseError(this._quoteState.line,this._quoteState.lineOffset);return this.makeImmutable(),this._rows}get rows(){return this._rows}get json(){if(this.rows.length>0){const m=this.rows[0].filter(g=>typeof g=="string");return Object.freeze(this.rows.filter((g,x)=>g&&x>0).map(g=>{const x={};return m.forEach((b,E)=>{x[b]=g[E]}),Object.freeze(x)}))}return Object.freeze([])}handleNext(){this.handleQuote()||this.handleFieldSeparator()||this.handleLineSeparator(),this.processState()}handleQuote(){return this._current===this._options.quote?(this._quoteState=Fe({},this._state),this._previous==="\\"?this.handleQuoteEscaped():this.handleQuoteNotEscaped(),!0):!1}handleQuoteEscaped(){this._cell=this._cell.slice(0,Math.max(0,this._cell.length-1))}handleQuoteNotEscaped(){if(this._cell.length===0||this._state.quoted)this._state.quoted=!this._state.quoted;else throw new ParseError(this._state.line,this._state.lineOffset);this._state.appendCell=!1}handleFieldSeparator(){return this._current===this._options.fieldSeparator?(this._state.quoted||(this._state.appendCell=!1,this._state.appendField=!0),!0):!1}handleLineSeparator(){return this._current===this._options.lineSeparator?(this._state.quoted||(this._state.appendCell=!1,this._state.appendField=!0,this._state.appendRow=!0),!0):!1}processState(){this._state.appendCell&&(this._cell+=this._current),this._state.appendField&&(this.addField(this.fieldValue(this._cell),this._row,this._state),this._cell=""),this._state.appendRow&&(this.addRow(this._row,this._rows,this._state),this._row=[]),this._state.lineOffset++,this._state.fieldOffset++}fieldValue(m){return m}addField(m,g,x){g.push(m),x.field++,x.fieldOffset=-1,x.appendField=!1}addRow(m,g,x){g.push(m),x.field=0,x.line++,x.lineOffset=-1,x.appendRow=!1}makeImmutable(){this.rows.forEach(m=>{m.forEach(g=>Object.freeze(g)),Object.freeze(m)}),Object.freeze(this._rows)}reset(){this._rows=[],this._row=[],this._cell="",this._state=Fe({},CSV_INITAL_STATE),this._index=0,this._current="",this._previous="",this._quoteState=Fe({},CSV_INITAL_STATE)}}function importAccountsCsv(d){return vt(this,null,function*(){selectFiles(m=>vt(this,null,function*(){const g=m==null?void 0:m[0];if(!g)return;const x=yield readFile(g);if(!x)return;const E=new Parser().parse(x.trim()),v={comp:NumberField,min:1,max:9,xs:6,typing:!0},S={skipFirstLines:0,usernameColumn:1,passwordColumn:2,groupColumn:3,redirectColumn:4,overwriteExistingAccounts:!1},C=yield formDialog$1({title:"Import accounts from CSV",dialogProps:{maxWidth:"sm"},values:S,form:k=>{const L=E[k.skipFirstLines||0],D=R(L,Fe(Fe({},S),k));return{save:{startIcon:reactExports.createElement(Upload),children:"Go"},fields:[reactExports.createElement(Box,{p:1},"Total lines:",E.length),{k:"skipFirstLines",comp:NumberField,max:E.length-1,typing:!0,md:6,helperText:reactExports.createElement(reactExports.Fragment,{},"First line: ",reactExports.createElement("code",{},L.join(", ")))},{k:"overwriteExistingAccounts",comp:BoolField,md:6},$t(Fe({k:"usernameColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First username: ",D.u)}),$t(Fe({k:"passwordColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First password: ",D.p)}),$t(Fe({k:"groupColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First group: ",D.g)}),$t(Fe({k:"redirectColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First redirect: ",D.r)})]}}});if(!C)return;const{close:T}=newDialog({title:"Importing...",Content(){const[k,L]=reactExports.useState(0),[D,A]=reactExports.useState();return reactExports.useEffect(()=>{let I=!1;return setTimeout(()=>vt(this,null,function*(){var B;if(I)return;let N=0,z=0,j=C.skipFirstLines;const Y=E.length-j;try{let U=0;for(const W of E){if(I)return;if(j){j--;continue}const V=R(W,C);A(V),L(U++/Y),yield apiCall("add_account",{username:V.u,belongs:(B=V.g)==null?void 0:B.split(","),redirect:V.r,overwrite:C.overwriteExistingAccounts}).then(()=>{if(V.p)return apiNewPassword(V.u,V.p)},J=>{if(J.code===HTTP_CONFLICT)return z++;N++})}}finally{T();const U=Y-N-z,W="Results: "+[prefix("",N," failed"),prefix("",U," succeeded"),prefix("",z," skipped because already present")].filter(Boolean).join(", ");alertDialog$1(W,!U&&N?"error":N||z?"warning":"success"),d==null||d()}})),()=>{I=!0}},[]),reactExports.createElement(Box,{display:"flex",gap:2,alignItems:"center"},reactExports.createElement(IconProgress,{icon:Group,progress:k}),D==null?void 0:D.u)}});function R(k,L){return{u:k[L.usernameColumn-1],p:k[L.passwordColumn-1],g:k[L.groupColumn-1],r:k[L.redirectColumn-1]}}}),{multiple:!1,accept:".csv"})})}function AccountsPage(){const{username:d,accountsAsTree:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_accounts"),[E,v]=reactExports.useState([]),S=Array.isArray(E);reactExports.useEffect(()=>{Array.isArray(g==null?void 0:g.list)&&S&&v(E.filter(Y=>g.list.find(B=>(B==null?void 0:B.username)===Y)))},[g]);const C=reactExports.useMemo(()=>g&&_.sortBy(g.list,[Y=>!Y.isGroup,Y=>!Y.adminActualAccess,"username"]),[g]),T=S&&_.find(C,{username:E[0]}),R="md",k=useBreakpoint(R),L=!(E.length>0)||!C?null:S&&E.length>1?reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},E.length+" selected"),reactExports.createElement(Btn$1,{onClick:j,icon:Delete},"Remove")),reactExports.createElement(List,{},E.map(Y=>reactExports.createElement(ListItem,{key:Y},reactExports.createElement(ListItemText,{},Y))))):with_(T||N(),Y=>reactExports.createElement(AccountForm,{account:Y,groups:C.filter(B=>B.isGroup).map(B=>B.username),addToBar:k&&[reactExports.createElement(Box,{flex:1}),account2icon(Y,{fontSize:"large",sx:{p:1}}),reactExports.createElement(IconBtn,{icon:Close,title:"Close",onClick:z})],reload:x,done(B){v(k?[B]:[]),x(),toast$1("Account saved","success")}}));reactExports.useEffect(()=>{if(k||!L||!E.length)return;const{close:Y}=newDialog({title:_.isString(E)?_.startCase(E):E.length>1?"Multiple selection":T?(T.isGroup?"Group: ":"User: ")+T.username:"?",Content:()=>L,onClose:z});return()=>void Y()},[k,E,T]);const D={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"},[A,I]=useToggleButton("Show tree","Show list",()=>({icon:AccountTree}),m);return state$1.accountsAsTree=A,b||reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[R]:5,lg:4,xl:5},D),reactExports.createElement(Box,{display:"flex",flexWrap:"wrap",gap:2,mb:2,boxShadow:Y=>`0px -8px 4px 10px ${Y.palette.background.paper}`,sx:{position:"sticky",top:0,zIndex:2,backgroundColor:"background.paper",width:"fit-content"}},reactExports.createElement(MenuButton,{variant:"contained",startIcon:reactExports.createElement(PersonAdd),items:[{children:"user",onClick:()=>v("new-user")},{children:"group",onClick:()=>v("new-group")},{children:"from CSV",onClick:()=>importAccountsCsv(x)}]},"Add"),reloadBtn(x),I,(C==null?void 0:C.length)>0&&reactExports.createElement(Typography,{p:1},`${C.length} account(s)`)),!(C!=null&&C.length)&&reactExports.createElement(Alert,{severity:"info"},md`To access administration <u>remotely</u> you will need to create a user account with admin permission`),reactExports.createElement(TreeView,{multiSelect:!0,sx:{pr:4,pb:2,minWidth:"15em"},selected:S?E:[],defaultCollapseIcon:reactExports.createElement(ExpandMore),defaultExpandIcon:reactExports.createElement(ChevronRight),onNodeSelect(Y,B){var U,W;(W=(U=Y.target)==null?void 0:U.closest)!=null&&W.call(U,".MuiTreeItem-iconContainer")||v(B)}},C&&function Y(B){return B.map(U=>{var W,V;return reactExports.createElement(TreeItem,{key:U.username,nodeId:U.username,label:reactExports.createElement(Box,{sx:{display:"flex",flexWrap:"wrap",padding:".2em 0",columnGap:".5em",alignItems:"center"}},account2icon(U),(U.disabled||U.canLogin===!1)&&iconTooltip(DoNotDisturb,U.disabled?"Disabled":"Disabled by its groups",U.disabled?void 0:{color:"text.secondary"}),(U.expire||U.days_to_live)&&reactExports.createElement(Schedule),U.adminActualAccess&&iconTooltip(MilitaryTech,"Can login into Admin"),U.username,!!((W=U.belongs)!=null&&W.length)&&reactExports.createElement(Box,{sx:{color:"text.secondary",fontSize:"small"}},"(",(V=U.belongs)==null?void 0:V.join(", "),")"))},A&&Y(C.filter(J=>{var Q;return(Q=U.directMembers)==null?void 0:Q.includes(J.username)})))})}(A?C.filter(Y=>!C.some(B=>{var U;return(U=B.members)==null?void 0:U.includes(Y.username)})):C))),k&&L&&reactExports.createElement(Grid,Fe({item:!0,[R]:!0,maxWidth:"100%"},D),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},L))));function N(){return{username:"",hasPassword:E==="new-user",adminActualAccess:!1,invalidated:void 0,canLogin:!0,canChangePassword:!0,isGroup:E==="new-group",members:[],directMembers:[]}}function z(){v([])}function j(){return vt(this,null,function*(){const Y=_.without(E,d);if(E.length>Y.length&&!(yield confirmDialog$1("You cannot ask to delete the account you are using. Continue with the rest?")))return;if(!Y.length)return alertDialog$1("Nothing to delete","info");if(!(yield confirmDialog$1(`Delete ${Y.length} item(s)?`)))return;const B=[];for(const U of Y)(yield apiCall("del_account",{username:U}).then(()=>1,()=>0))||B.push(U);if(x(),B.length)return alertDialog$1("Following elements couldn't be deleted: "+B.join(", "),"error")})}}function account2icon(d,m={}){return reactExports.createElement(d.isGroup?Group:Person,m)}const ACCEPT_LINK="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept";function FileForm({file:d,addToBar:m,statusApi:g,accounts:x,saved:b,isSideBreakpoint:E}){var ue,pe,ye;const ae=d,{parent:v,children:S,isRoot:C,byMasks:T}=ae,R=Vt(ae,["parent","children","isRoot","byMasks"]),[k,L]=reactExports.useState(R);reactExports.useEffect(()=>{L(Object.assign(objSameKeys(defaultPerms,()=>null),R))},[d]);const D=reactExports.useMemo(()=>{let Ee=d.parent;for(;Ee;){if(Ee.default!=null)return Ee.default;Ee=Ee.parent}},[d]),{source:A}=d,I=d.type==="folder",N=!d.type&&A&&d.size<0,z=k.url!==void 0,j=A!==void 0,Y=j&&I,B=useBreakpoint("xl"),U=!z&&(B||j),W=!z&&B||j&&!Y,V=d.accept>""||I&&((pe=d.can_upload)!=null?pe:(ue=d.inherited)==null?void 0:ue.can_upload),J=I,Q=useDialogBarColors(),{movingFile:X}=useSnapState$1(),re=!j&&reactExports.createElement(Box,{color:"warning.main",component:"span"},"Works only on folders with disk source! "),ie={can_read:!z,can_see:!0,can_archive:!z,can_list:I,can_upload:I,can_delete:I},oe=!k.icon,Z=k.icon&&!k.icon.includes("."),ee=A&&basename(A),ce=ee===k.name;return reactExports.createElement(Form,{values:k,set(Ee,ve){L(Se=>(ve==="source"&&ce&&(Se.name=basename(Ee)),$t(Fe({},Se),{[ve]:Ee})))},barSx:Fe({gap:2,width:"100%"},Q),stickyBar:!0,addToBar:[I&&!E&&reactExports.createElement(AddVfsBtn,{variant:"outlined"},"Add"),reactExports.createElement(IconBtn,{icon:ContentCut,disabled:C||X===d.id,title:"Cut (you can also use drag & drop to move items)","aria-label":"Cut",onClick(){state$1.movingFile=d.id,alertDialog$1(reactExports.createElement(Box,{},"Now that this is marked for moving, click on the destination folder, and then the paste button ",reactExports.createElement(ContentPaste)),"info")}}),X&&reactExports.createElement(IconBtn,{icon:ContentPaste,disabled:d.type!=="folder"||d.id.startsWith(X)||d.id===X.replace(/[^/]+\/?$/,""),title:X,onClick(){return state$1.movingFile="",moveVfs(X,d.id)}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Delete",confirm:`Delete ${d.name}?`,disabled:C,onClick:()=>apiCall("del_vfs",{uris:[d.id]}).then(({errors:[Ee]})=>{Ee?alertDialog$1(xlate(Ee,HTTP_MESSAGES),"error"):reloadVfs([])})}),...wantArray(m)],onError:alertDialog$1,save:$t(Fe({},propsForModifiedValues(isModifiedConfig(k,R))),{onClick(){return vt(this,null,function*(){const Ee=_.omit(k,["birthtime","mtime","size","id"]);Ee.masks||(Ee.masks=null),yield apiCall("set_vfs",{uri:k.id,props:Ee}),Ee.name!==d.name&&(state$1.selectedFiles[0].id=d.parent.id+Ee.name+(I?"/":"")),reloadVfs(),b()})}}),fields:[C?reactExports.createElement(Alert,{severity:"info"},"This is the Home folder, the root of your shared files. Options set here will be applied to all files."):I&&j&&reactExports.createElement(Alert,{severity:"info"},'To set permissions on individual items in folder, add them by clicking Add button, and then "from disk"'),$t(Fe({k:"name",required:!0,xl:!0,helperText:j&&"You can decide a name that's different from the one on your disk"},C&&{disabled:!0,value:"Home folder"}),{end:ee&&!ce&&reactExports.createElement(Btn$1,{icon:RestartAlt,title:"Reset to same name on disk",onClick:()=>L($t(Fe({},k),{name:ee}))})}),z?{k:"url",label:"URL",lg:12,xl:8,required:!0}:{k:"source",label:"Disk source",xl:!0,comp:FileField,files:N||!I,folders:N||I,placeholder:"none",helperText:k.source?I?"Files from this path on disk will be listed, but you can add more":void 0:"If you enter a path here, its content will be listed. Leaving this empty, makes this folder fully virtual."},{k:"id",comp:LinkField,statusApi:g,xs:12},{k:"order",comp:NumberField,min:-1e5,max:1e5,placeholder:"default",sm:4,helperText:wikiLink("Virtual-file-system#order","To force position")},{k:"iconType",comp:SelectField,options:["default","file","embedded"],value:k.icon?Z?"embedded":"file":"default",fromField:Ee=>L($t(Fe({},k),{icon:Ee==="default"?"":Ee==="file"?"select.a.file":Object.keys(SYS_ICONS)[0]})),xs:!0,sm:oe?8:!0},!oe&&Fe({k:"icon",xs:8,sm:4},Z?{comp:SelectField,options:_.map(_.uniqBy(_.map(SYS_ICONS,(Ee,ve)=>{var Se;return[ve,Ee[0],(Se=Ee[1])!=null?Se:ve]}),Ee=>Ee[2]),([Ee,ve])=>({value:Ee,label:reactExports.createElement(Flex$1,{gap:".5em"},hIcon(Ee),hIcon(ve)," ",Ee)})),helperText:"Second icon you see is the fallback"}:{label:"Icon file",placeholder:"default",comp:FileField,fileMask:IMAGE_FILEMASK}),fe("can_read","Who can see but not download will be asked to login"),fe("can_archive","Should this be included when user downloads as ZIP"),fe("can_list","Permission to requests the list of a folder. The list will include only things you can see.",{contentText:"subfolders"}),fe("can_delete",[re,"Those who can delete can also rename and cut/move"]),fe("can_upload",re,{contentText:"subfolders"}),fe("can_see",["See this item in the list. ",wikiLink("Permissions","More help.")]),z&&{k:"target",comp:BoolField,sm:!0,label:"Open in new browser",fromField:Ee=>Ee?"_blank":null,toField:Ee=>Ee>""},W&&{k:"size",comp:DisplayField,sm:6,lg:4,toField:formatBytes},U&&{k:"birthtime",comp:DisplayField,sm:6,lg:W&&4,label:"Created",toField:formatTimestamp$1},U&&{k:"mtime",comp:DisplayField,sm:6,lg:W&&4,label:"Modified",toField:formatTimestamp$1},V&&{k:"accept",label:"Accept on upload",placeholder:"anything",xl:J?4:12,helperText:reactExports.createElement(Link$1,{href:ACCEPT_LINK,target:"_blank"},"Example: .zip")},J&&{k:"default",comp:BoolField,xl:V?8:12,label:"Serve as web-page if index.html is found"+(D&&k.default==null?" (inherited)":""),value:(ye=k.default)!=null?ye:D,toField:Boolean,fromField:Ee=>Ee&&!D?"index.html":Ee?null:!1,helperText:md("...instead of showing list of files")},{k:"comment",multiline:!0,xl:!0},I&&{k:"masks",multiline:!0,xl:6,toField:YAML.stringify,fromField:Ee=>Ee?YAML.parse(Ee):void 0,comp:TextEditorField,lang:"yaml",helperText:["Special field, leave empty unless you know what you are doing. YAML syntax. ",wikiLink("Masks-field","(examples)")]}]});function fe(Ee,ve,Se={}){var De,Be,Le,Ge;if(!ie[Ee])return null;const $e=[Ee,...onlyTruthy(_.map(ie,(Ie,Ye)=>!Ie&&Ye))],Me=_.difference(Object.keys(defaultPerms),$e);let Re=(Be=(De=d.inherited)==null?void 0:De[Ee])!=null?Be:defaultPerms[Ee];for(;typeof Re=="string"&&_.get(ie,Re)===!1;)Re=(Ge=(Le=_.get(k,Re))!=null?Le:_.get(d.inherited,Re))!=null?Ge:_.get(defaultPerms,Re);return Fe({comp:WhoField,k:Ee,sm:6,lg:12,xl:4,parent:v,accounts:x,helperText:ve,isDir:I,otherPerms:Me.map(Ie=>({value:Ie,label:who2desc(Ie)})),label:"Who can "+perm2word(Ee),inherit:Re,byMasks:T==null?void 0:T[Ee],fromField:Ie=>Ie!=null?Ie:null},Se)}}function perm2word(d){return xlate(d.split("_")[1],{read:"download",archive:"zip",list:"access list"})}function WhoField(A){var I=A,{value:d,onChange:m,parent:g,inherit:x,accounts:b,helperText:E,otherPerms:v,byMasks:S,hideValues:C,isChildren:T,isDir:R,contentText:k="folder content",setApi:L}=I,D=Vt(I,["value","onChange","parent","inherit","accounts","helperText","otherPerms","byMasks","hideValues","isChildren","isDir","contentText","setApi"]);const N=who2desc(S!=null?S:x)+prefix(" (",S!==void 0?"from masks":g!==void 0?"as parent folder":"default",")"),z=isWhoObject(d),j=z?d.this:d,Y=reactExports.useMemo(()=>onlyTruthy([{value:null,label:N},{value:!0},{value:!1},{value:"*"},...v,{value:[],label:"Select accounts"}].map(V=>!(C!=null&&C.includes(V.value))&&Fe({label:who2desc(V.value)},V))),[x,g,j,...wantArray(C)]),B=500,U=Array.isArray(j);return reactExports.createElement(Box,{sx:{borderRight:z?"8px solid #8884":void 0,transition:`all ${B}ms`}},reactExports.createElement(SelectField,$t(Fe({},D),{value:U?[]:j!=null?j:null,onChange(V,{event:J}){m(z?W($t(Fe({},d),{this:V!=null?V:void 0})):V!=null?V:void 0,{was:d,event:J})},options:Y})),reactExports.createElement(Collapse,{in:U,timeout:B},U&&reactExports.createElement(MultiSelectField,$t(Fe({label:b!=null&&b.length?"Accounts "+D.label:"You didn't create any account yet",value:j,onChange:m,options:(b==null?void 0:b.map(V=>({value:V.username,label:V.username,a:V})))||[],placeholder:"none"},j.length===0&&{helperText:"Select some account",error:!0}),{renderOption:V=>{var J;return reactExports.createElement("span",{},((J=V.a)==null?void 0:J.isGroup)&&account2icon(V.a)," ",V.label)}}))),reactExports.createElement(FormHelperText,{},E,!T&&R&&reactExports.createElement(LinkBtn,{sx:{display:"block",mt:-.5},onClick(V){m(z?j:{this:j,children:j==null?!x:void 0},{was:d,event:V})}},z?"Set same permission for ":"Set different permission for ",k)),!T&&reactExports.createElement(Collapse,{in:z,timeout:B},reactExports.createElement(WhoField,{label:"Permission for "+k,parent:g,inherit:x,accounts:b,otherPerms:v,isDir:R,value:z?d==null?void 0:d.children:void 0,isChildren:!0,hideValues:[j!=null?j:x,j],onChange(V,{event:J}){z&&m(W($t(Fe({},d),{children:V})),{was:d,event:J})}})));function W(V){return V.this===V.children?V.this:V}}function who2desc(d){return d===!1?"No one":d===!0?"Anyone":d==="*"?"Any account login":Array.isArray(d)?d.join(", "):typeof d=="string"?`As "can ${perm2word(d)}"`:"*UNKNOWN*"+JSON.stringify(d)}function LinkField({value:d,statusApi:m}){const{reload:g,error:x}=m,b=useRequestRender();reactExports.useEffect(()=>m.sub(b),[]);const E=m.getData(),v=E&&(E.urls.https||E.urls.http||[E.base_url]),S=try_(()=>normalizeHost(new URL(E==null?void 0:E.baseUrl).host)),C=reactExports.useMemo(()=>S&&_.find(E.roots,(D,A)=>matches(S,A)),[E]);C&&d&&(d=d.indexOf(C)===1?d.slice(C.length):void 0);const T=prefix((E==null?void 0:E.baseUrl)||"",d),R=reactExports.useMemo(()=>reactExports.forwardRef((D,A)=>reactExports.createElement(Link$1,$t(Fe({ref:A},D),{href:T,style:{height:"auto",overflow:"hidden",textOverflow:"ellipsis"},target:"frontend"}),T)),[T]);return reactExports.createElement(Box,{display:"flex"},S?v?reactExports.createElement(DisplayField,{label:"Link",className:"maskInTests",value:T||`outside of configured main address (${S})`,error:x,InputProps:T?{inputComponent:R}:void 0,end:reactExports.createElement(Box,{},reactExports.createElement(IconBtn,{icon:ContentCopy,title:"Copy",disabled:!T,onClick:()=>copyTextToClipboard(T)}),reactExports.createElement(IconBtn,{icon:QrCode2,title:"QR Code",onClick:k,disabled:!T}),reactExports.createElement(IconBtn,{icon:Edit,title:"Change",onClick(){changeBaseUrl().then(g)}}))}):"error":"Invalid baseUrl");function k(){newDialog({title:"QR Code",dialogProps:{sx:{bgcolor:"background.default",border:"1px solid"}},Content(){const D=useTheme$1();return reactExports.createElement("canvas",{ref:A=>A&&L(A,T,D.palette.text.primary),style:{width:"100%"}})}})}function L(D,A,I){return vt(this,null,function*(){try{QrCreator$1.render({text:A,radius:0,ecLevel:"H",fill:I,background:null,size:300},D)}catch(N){console.error("Error generating QR code:",N)}})}}function changeBaseUrl(){return vt(this,null,function*(){return new Promise(d=>vt(this,null,function*(){const m=yield apiCall("get_status"),{base_url:g,roots:x}=yield apiCall("get_config",{only:[CFG.base_url,CFG.roots]}),b=m.urls.https||m.urls.http,E=Object.keys(x).map(C=>C.split("|")).flat().filter(C=>!/[*?]/.test(C)),v=splitAt("//",b[0])[0]+"//";b.push(..._.difference(E.map(C=>v+C),b));const{close:S}=newDialog({title:"Main address",Content(){const[C,T]=reactExports.useState(g||""),R=new URL(C||b[0]).protocol+"//",k=b.includes(C)?"":C.slice(R.length),L=reactExports.createElement(Check,{sx:{ml:2}});return reactExports.createElement(Box,{display:"flex",flexDirection:"column"},reactExports.createElement(Box,{mb:2},"Choose a main address for your links"),reactExports.createElement(MenuList,{},reactExports.createElement(MenuItem,{selected:!C,onClick:()=>D("")},"Automatic",!C&&L),b.map(I=>reactExports.createElement(MenuItem,{key:I,selected:I===C,onClick:()=>D(I)},I,I===C&&L))),reactExports.createElement(StringField,{label:"Custom IP or domain",helperText:md(`You can type any address but *you* are responsible to make the address work.
806
- This functionality is just to help you copy the link in case you have a domain or a complex network configuration.`),value:k,onChange:I=>D(prefix(R,I)),start:reactExports.createElement(SelectField,{value:R,onChange:I=>k?D(I+k):toast$1("Enter domain first"),options:["http://","https://"],size:"small",variant:"standard",sx:{"& .MuiSelect-select":{pt:"1px",pb:0}}}),sx:{mt:2}}),reactExports.createElement(Box,{mt:2,textAlign:"right"},reactExports.createElement(Btn$1,{icon:Save,children:"Save",onClick(){return vt(this,null,function*(){C!==g&&(yield apiCall("set_config",{values:{[CFG.base_url]:C.replace(/\/$/,"")}})),S(),d(C)})}})));function D(I){I.endsWith("/")&&(I=I.slice(0,-1)),T(I)}}})}))})}let selectOnReload,exposeVfsLoading;function VfsPage({setTitleSide:d}){var V,J,Q,X;const[m]=reactExports.useState(()=>new Map),{vfs:g,selectedFiles:x,movingFile:b}=useSnapState$1(),{data:E,reload:v,element:S,loading:C}=useApiEx("get_vfs");exposeVfsLoading=C,reactExports.useEffect(()=>{g||v()},[g,v]);const{data:T}=useApiEx("get_config",{only:[CFG.force_address,CFG.base_url]}),R="md",k=useBreakpoint(R),L=useApiEx("get_status"),{data:D}=L,A=reactExports.useMemo(()=>{var Z;const re=T==null?void 0:T[CFG.force_address],ie=(Z=(D==null?void 0:D.urls.https)||(D==null?void 0:D.urls.http))==null?void 0:Z.filter(ee=>{if(!re)return!0;const ce=normalizeHost(new URL(ee).host);return Object.keys(D.roots).some(fe=>matches(ce,fe))}),oe=re?T==null?void 0:T[CFG.base_url]:D==null?void 0:D.baseUrl;return oe&&ie&&!ie.includes(oe)&&ie.unshift(oe),ie},[D,T]),I=useApiEx("get_accounts"),N=reactExports.useMemo(()=>{var re;return _.sortBy((re=I==null?void 0:I.data)==null?void 0:re.list,"username")},[I.data]),z=reactExports.useRef(_.noop);reactExports.useEffect(()=>{var re;b===((re=x[0])==null?void 0:re.id)&&z.current()},[b]);const j=!((J=(V=E==null?void 0:E.root)==null?void 0:V.children)!=null&&J.length)&&!((Q=E==null?void 0:E.root)!=null&&Q.source),Y=reactExports.useMemo(()=>j?reactExports.createElement(Alert,{severity:"warning",children:reactExports.createElement(reactExports.Fragment,{},"Add something to your virtual file system — click the ",reactExports.createElement(Add),"button, or set a source for the Home folder")}):(A==null?void 0:A.length)>0&&reactExports.createElement(Alert,{severity:"info",children:["Your shared files can be browsed from ",reactExports.createElement("span",{className:HIDE_IN_TESTS,key:0},reactJoin(" or ",A.slice(0,3).map(re=>reactExports.createElement(Link$1,{href:re,target:"frontend"},re))))]}),[j,A]);d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},"If you rename or delete here, it's virtual, and only affects what is presented to the users"),Y),[Y]));const B=(x==null?void 0:x.length)<2&&x[0],U=I.element||!g||!x.length?null:B?reactExports.createElement(FileForm,{key:B.id,isSideBreakpoint:k,addToBar:k&&reactExports.createElement(Box,{flex:1,textAlign:"right",mr:1,color:"#8883"},vfsNodeIcon(B)),statusApi:L,saved:()=>z.current(),accounts:N!=null?N:[],file:B}):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},x.length+" selected"),reactExports.createElement(Button,{onClick:deleteFiles,startIcon:reactExports.createElement(Delete)},"Remove")),reactExports.createElement(List,{dense:!0,disablePadding:!0},x.map(re=>reactExports.createElement(ListItem,{key:re.id},reactExports.createElement(ListItemText,{primary:re.name,secondary:re.source})))));if(reactExports.useEffect(()=>{if(k||!U||!x.length)return;const re=[""];{let oe=B&&B.parent;for(;oe&&!oe.isRoot;)re.push(oe.name),oe=oe.parent}const{close:ie}=newDialog({title:x.length>1?"Multiple selection":reactExports.createElement(Flex$1,{},vfsNodeIcon(x[0]),reactExports.createElement(Flex$1,{flexWrap:"wrap",gap:"0 0.5em"},x[0].name||"Home",reactExports.createElement(Box,{component:"span",color:"text.secondary"},re.join(" /")))),dialogProps:{sx:{justifyContent:"flex-end"}},Content:()=>U,onClose(){state$1.selectedFiles=[]}});return z.current=ie,()=>void ie()},[k,(X=_.last(x))==null?void 0:X.id]),reactExports.useEffect(()=>{if(state$1.vfs=void 0,!E)return;m.clear();const{root:re}=E;if(!re)return;re.isRoot=!0,oe(re),state$1.vfs=re,state$1.selectedFiles=ie()||onlyTruthy(state$1.selectedFiles.map(Z=>m.get(Z.id)));function ie(){selectOnReload&&z.current();const Z=selectOnReload&&onlyTruthy(selectOnReload.map(ee=>m.get(ee)));return selectOnReload=void 0,Z}function oe(Z,ee="/",ce=void 0){if(Z.parent=ce,Z.id=Z.isRoot?"/":prefix(ee,pathEncode(Z.name),Z.type==="folder"?"/":""),m.set(Z.id,Z),!!Z.children){Z.children=_.sortBy(Z.children,["type",fe=>{var ae;return(ae=fe.name)==null?void 0:ae.toLocaleLowerCase()}]);for(const fe of Z.children)oe(fe,Z.id,Z)}}},[E,m]),S)return m.clear(),S;const W={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"};return reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[R]:5,lg:6,xl:5},W),m.size>0&&reactExports.createElement(VfsTree,{id2node:m,statusApi:L})),k&&U&&reactExports.createElement(Grid,Fe({item:!0,[R]:!0,maxWidth:"100%"},W),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},U))))}function reloadVfs(d){return selectOnReload=d,state$1.vfs=void 0,wait(100).then(()=>exposeVfsLoading)}function deleteFiles(){return vt(this,null,function*(){const d=state$1.selectedFiles;if(d.length&&(yield confirmDialog$1(`Delete ${d.length} item(s)?`)))try{const m=d.map(b=>b.id).sort();_.remove(m,(b,E)=>E&&_.findLastIndex(m,v=>b.startsWith(v),E-1)!==-1),_.pull(m,"/");const{errors:g}=yield apiCall("del_vfs",{uris:m}),x=m.filter((b,E)=>g[E]);if(x.length)return alertDialog$1("Following elements couldn't be deleted: "+x.join(", "),"error");reloadVfs()}catch(m){yield alertDialog$1(m)}})}const FolderIcon=Folder,FileIcon=InsertDriveFileOutlined;let once=!0;function VfsTree({id2node:d,statusApi:m}){var A;const{vfs:g,selectedFiles:x,expanded:b}=useSnapState$1(),E=reactExports.useRef(),v=reactExports.useCallback(function({node:I}){var V,Q,X,re;let{id:N,name:z,isRoot:j}=I;const Y=I.type==="folder",B=reactExports.useRef();return j&&B.current&&((V=B.current.firstElementChild)==null||V.classList.toggle("Mui-selected",!(x.length&&!_.find(x,{id:"/"})))),reactExports.createElement(TreeItem,{ref(ie){ie==null||ie.addEventListener("focusin",oe=>oe.stopImmediatePropagation()),B.current=ie},onDoubleClick:W,label:reactExports.createElement(Box,{draggable:!j,onDragStart(){E.current=N},onDragOver(ie){if(!Y)return;const oe=E.current;oe!=null&&oe.startsWith(N)&&!oe.slice(N.length+1,-1).includes("/")||ie.preventDefault()},onDrop(){return vt(this,null,function*(){const ie=E.current;ie&&(yield confirmDialog$1(`Moving ${ie} under ${N}`))&&moveVfs(ie,N)})},sx:{display:"flex",gap:".5em",minHeight:"1.8em",pt:".2em"}},reactExports.createElement(Box,{display:"flex",flex:0},vfsNodeIcon(I),reactExports.createElement(Box,{sx:{flex:0,ml:"2px",my:"2px","&>*":{fontSize:"87%",opacity:.6,mt:"-2px"},display:"grid",gridAutoFlow:"column",gridTemplateRows:"auto auto",height:"1em"}},I.can_delete!==void 0&&iconTooltip(Delete,"Delete permission"),I.can_upload!==void 0&&iconTooltip(Upload,"Upload permission"),!j&&!I.source&&!I.url&&iconTooltip(Cloud,"Virtual (no source)"),U(I.can_see)&&iconTooltip(RemoveRedEye,"Restrictions on who can see"),U(I.can_read)&&iconTooltip(Lock,"Restrictions on who can download"),I.default&&iconTooltip(Web,"Show as web-page"),I.masks&&iconTooltip(TheaterComedy,"Masks"),I.size===-1&&iconTooltip(HighlightOff,"Source not found"),with_(_.findKey((Q=m.data)==null?void 0:Q.roots,ie=>ie===N.slice(1)),ie=>ie&&iconTooltip(Home,`home for ${ie}`)))),j?"Home folder":z),collapseIcon:reactExports.createElement(ExpandMore,{onClick:W}),expandIcon:reactExports.createElement(ChevronRight,{onClick:W}),nodeId:N},j&&!((X=I.children)!=null&&X.length)?reactExports.createElement(TreeItem,{nodeId:"?",label:reactExports.createElement("i",{},"nothing here")}):(re=I.children)==null?void 0:re.map(ie=>reactExports.createElement(v,{key:ie.id,node:ie})));function U(ie){return ie!==void 0&&ie!==!0}function W(ie){const oe=state$1.expanded;state$1.expanded=oe.includes(N)?oe.filter(Z=>Z!==N):[...oe,N],ie.preventDefault(),ie.stopPropagation()}},[m.data]),S=reactExports.useRef(null),C=b.length===d.size,T=["/",...((A=g==null?void 0:g.children)==null?void 0:A.length)===1?[g.children[0].id]:[]];once&&(once=!1,state$1.expanded=T);const[R,k]=useToggleButton("Collapse all","Expand all",I=>({icon:I?UnfoldLess:UnfoldMore,sx:{rotate:I?0:"180deg"},onClick(){state$1.expanded=C?T:Array.from(d.keys())}}),C);reactExports.useEffect(()=>{state$1.expanded=_.uniq(state$1.expanded.concat(state$1.selectedFiles.map(I=>{var N;return((N=I.parent)==null?void 0:N.id)||""})))},[state$1.vfs]);const L="vfs",D=x[0];return reactExports.useEffect(()=>{var I;return(I=document.getElementById(`${L}-${D==null?void 0:D.id}`))==null?void 0:I.scrollIntoView({block:"nearest",behavior:"instant"})},[D]),reactExports.createElement(Flex$1,{flexDirection:"column",alignItems:"stretch",flex:1},reactExports.createElement(Flex$1,{mb:1,flexWrap:"wrap",gap:[1,2]},reactExports.createElement(Typography,{variant:"h6"},"Virtual File System"),reactExports.createElement(VfsMenuBar,{statusApi:m,add:k})),g&&reactExports.createElement(TreeView,{ref:S,expanded:toMutable(b),selected:x.map(I=>I.id),multiSelect:!0,id:L,sx:{height:0,flex:"1 1 auto",overflowX:"auto",maxWidth:S.current&&`calc(100vw - ${16+S.current.offsetLeft}px)`,"& ul":{borderLeft:"1px dashed #444",marginLeft:"15px",paddingLeft:"15px"}},onNodeSelect(I,N){typeof N!="string"&&(state$1.selectedFiles=onlyTruthy(N.map(z=>d.get(z))))}},reactExports.createElement(v,{node:g})))}function moveVfs(d,m){return apiCall("move_vfs",{from:d,parent:m}).then(()=>(reloadVfs([m+d.slice(1+d.lastIndexOf("/",d.length-2))]),!0),alertDialog$1)}function vfsNodeIcon(d){return d.isRoot?iconTooltip(Home,"home, or root if you like"):d.type==="folder"?iconTooltip(FolderIcon,"Folder"):d.url?iconTooltip(Link,"Web-link"):iconTooltip(FileIcon,"File")}var safeIsNaN=Number.isNaN||function(m){return typeof m=="number"&&m!==m};function isEqual(d,m){return!!(d===m||safeIsNaN(d)&&safeIsNaN(m))}function areInputsEqual(d,m){if(d.length!==m.length)return!1;for(var g=0;g<d.length;g++)if(!isEqual(d[g],m[g]))return!1;return!0}function memoizeOne(d,m){m===void 0&&(m=areInputsEqual);var g,x=[],b,E=!1;function v(){for(var S=[],C=0;C<arguments.length;C++)S[C]=arguments[C];return E&&g===this&&m(S,x)||(b=d.apply(this,S),E=!0,g=this,x=S),b}return v}var hasNativePerformanceNow=typeof performance=="object"&&typeof performance.now=="function",now=hasNativePerformanceNow?function(){return performance.now()}:function(){return Date.now()};function cancelTimeout(d){cancelAnimationFrame(d.id)}function requestTimeout(d,m){var g=now();function x(){now()-g>=m?d.call(null):b.id=requestAnimationFrame(x)}var b={id:requestAnimationFrame(x)};return b}var size=-1;function getScrollbarSize(d){if(d===void 0&&(d=!1),size===-1||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",document.body.appendChild(m),size=m.offsetWidth-m.clientWidth,document.body.removeChild(m)}return size}var cachedRTLResult=null;function getRTLOffsetType(d){if(d===void 0&&(d=!1),cachedRTLResult===null||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",g.direction="rtl";var x=document.createElement("div"),b=x.style;return b.width="100px",b.height="100px",m.appendChild(x),document.body.appendChild(m),m.scrollLeft>0?cachedRTLResult="positive-descending":(m.scrollLeft=1,m.scrollLeft===0?cachedRTLResult="negative":cachedRTLResult="positive-ascending"),document.body.removeChild(m),cachedRTLResult}return cachedRTLResult}var IS_SCROLLING_DEBOUNCE_INTERVAL$1=150,defaultItemKey$1=function(m,g){return m};function createListComponent(d){var m,g=d.getItemOffset,x=d.getEstimatedTotalSize,b=d.getItemSize,E=d.getOffsetForIndexAndAlignment,v=d.getStartIndexForOffset,S=d.getStopIndexForStartIndex,C=d.initInstanceProps,T=d.shouldResetStyleCacheOnItemSizeChange,R=d.validateProps;return m=function(k){_inheritsLoose(L,k);function L(A){var I;return I=k.call(this,A)||this,I._instanceProps=C(I.props,_assertThisInitialized(I)),I._outerRef=void 0,I._resetIsScrollingTimeoutId=null,I.state={instance:_assertThisInitialized(I),isScrolling:!1,scrollDirection:"forward",scrollOffset:typeof I.props.initialScrollOffset=="number"?I.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},I._callOnItemsRendered=void 0,I._callOnItemsRendered=memoizeOne(function(N,z,j,Y){return I.props.onItemsRendered({overscanStartIndex:N,overscanStopIndex:z,visibleStartIndex:j,visibleStopIndex:Y})}),I._callOnScroll=void 0,I._callOnScroll=memoizeOne(function(N,z,j){return I.props.onScroll({scrollDirection:N,scrollOffset:z,scrollUpdateWasRequested:j})}),I._getItemStyle=void 0,I._getItemStyle=function(N){var z=I.props,j=z.direction,Y=z.itemSize,B=z.layout,U=I._getItemStyleCache(T&&Y,T&&B,T&&j),W;if(U.hasOwnProperty(N))W=U[N];else{var V=g(I.props,N,I._instanceProps),J=b(I.props,N,I._instanceProps),Q=j==="horizontal"||B==="horizontal",X=j==="rtl",re=Q?V:0;U[N]=W={position:"absolute",left:X?void 0:re,right:X?re:void 0,top:Q?0:V,height:Q?"100%":J,width:Q?J:"100%"}}return W},I._getItemStyleCache=void 0,I._getItemStyleCache=memoizeOne(function(N,z,j){return{}}),I._onScrollHorizontal=function(N){var z=N.currentTarget,j=z.clientWidth,Y=z.scrollLeft,B=z.scrollWidth;I.setState(function(U){if(U.scrollOffset===Y)return null;var W=I.props.direction,V=Y;if(W==="rtl")switch(getRTLOffsetType()){case"negative":V=-Y;break;case"positive-descending":V=B-j-Y;break}return V=Math.max(0,Math.min(V,B-j)),{isScrolling:!0,scrollDirection:U.scrollOffset<V?"forward":"backward",scrollOffset:V,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._onScrollVertical=function(N){var z=N.currentTarget,j=z.clientHeight,Y=z.scrollHeight,B=z.scrollTop;I.setState(function(U){if(U.scrollOffset===B)return null;var W=Math.max(0,Math.min(B,Y-j));return{isScrolling:!0,scrollDirection:U.scrollOffset<W?"forward":"backward",scrollOffset:W,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._outerRefSetter=function(N){var z=I.props.outerRef;I._outerRef=N,typeof z=="function"?z(N):z!=null&&typeof z=="object"&&z.hasOwnProperty("current")&&(z.current=N)},I._resetIsScrollingDebounced=function(){I._resetIsScrollingTimeoutId!==null&&cancelTimeout(I._resetIsScrollingTimeoutId),I._resetIsScrollingTimeoutId=requestTimeout(I._resetIsScrolling,IS_SCROLLING_DEBOUNCE_INTERVAL$1)},I._resetIsScrolling=function(){I._resetIsScrollingTimeoutId=null,I.setState({isScrolling:!1},function(){I._getItemStyleCache(-1,null)})},I}L.getDerivedStateFromProps=function(I,N){return validateSharedProps$1(I,N),R(I),null};var D=L.prototype;return D.scrollTo=function(I){I=Math.max(0,I),this.setState(function(N){return N.scrollOffset===I?null:{scrollDirection:N.scrollOffset<I?"forward":"backward",scrollOffset:I,scrollUpdateWasRequested:!0}},this._resetIsScrollingDebounced)},D.scrollToItem=function(I,N){N===void 0&&(N="auto");var z=this.props,j=z.itemCount,Y=z.layout,B=this.state.scrollOffset;I=Math.max(0,Math.min(I,j-1));var U=0;if(this._outerRef){var W=this._outerRef;Y==="vertical"?U=W.scrollWidth>W.clientWidth?getScrollbarSize():0:U=W.scrollHeight>W.clientHeight?getScrollbarSize():0}this.scrollTo(E(this.props,I,N,B,this._instanceProps,U))},D.componentDidMount=function(){var I=this.props,N=I.direction,z=I.initialScrollOffset,j=I.layout;if(typeof z=="number"&&this._outerRef!=null){var Y=this._outerRef;N==="horizontal"||j==="horizontal"?Y.scrollLeft=z:Y.scrollTop=z}this._callPropsCallbacks()},D.componentDidUpdate=function(){var I=this.props,N=I.direction,z=I.layout,j=this.state,Y=j.scrollOffset,B=j.scrollUpdateWasRequested;if(B&&this._outerRef!=null){var U=this._outerRef;if(N==="horizontal"||z==="horizontal")if(N==="rtl")switch(getRTLOffsetType()){case"negative":U.scrollLeft=-Y;break;case"positive-ascending":U.scrollLeft=Y;break;default:var W=U.clientWidth,V=U.scrollWidth;U.scrollLeft=V-W-Y;break}else U.scrollLeft=Y;else U.scrollTop=Y}this._callPropsCallbacks()},D.componentWillUnmount=function(){this._resetIsScrollingTimeoutId!==null&&cancelTimeout(this._resetIsScrollingTimeoutId)},D.render=function(){var I=this.props,N=I.children,z=I.className,j=I.direction,Y=I.height,B=I.innerRef,U=I.innerElementType,W=I.innerTagName,V=I.itemCount,J=I.itemData,Q=I.itemKey,X=Q===void 0?defaultItemKey$1:Q,re=I.layout,ie=I.outerElementType,oe=I.outerTagName,Z=I.style,ee=I.useIsScrolling,ce=I.width,fe=this.state.isScrolling,ae=j==="horizontal"||re==="horizontal",ue=ae?this._onScrollHorizontal:this._onScrollVertical,pe=this._getRangeToRender(),ge=pe[0],ye=pe[1],Ee=[];if(V>0)for(var ve=ge;ve<=ye;ve++)Ee.push(reactExports.createElement(N,{data:J,key:X(ve,J),index:ve,isScrolling:ee?fe:void 0,style:this._getItemStyle(ve)}));var Se=x(this.props,this._instanceProps);return reactExports.createElement(ie||oe||"div",{className:z,onScroll:ue,ref:this._outerRefSetter,style:_extends$1({position:"relative",height:Y,width:ce,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:j},Z)},reactExports.createElement(U||W||"div",{children:Ee,ref:B,style:{height:ae?"100%":Se,pointerEvents:fe?"none":void 0,width:ae?Se:"100%"}}))},D._callPropsCallbacks=function(){if(typeof this.props.onItemsRendered=="function"){var I=this.props.itemCount;if(I>0){var N=this._getRangeToRender(),z=N[0],j=N[1],Y=N[2],B=N[3];this._callOnItemsRendered(z,j,Y,B)}}if(typeof this.props.onScroll=="function"){var U=this.state,W=U.scrollDirection,V=U.scrollOffset,J=U.scrollUpdateWasRequested;this._callOnScroll(W,V,J)}},D._getRangeToRender=function(){var I=this.props,N=I.itemCount,z=I.overscanCount,j=this.state,Y=j.isScrolling,B=j.scrollDirection,U=j.scrollOffset;if(N===0)return[0,0,0,0];var W=v(this.props,U,this._instanceProps),V=S(this.props,W,U,this._instanceProps),J=!Y||B==="backward"?Math.max(1,z):1,Q=!Y||B==="forward"?Math.max(1,z):1;return[Math.max(0,W-J),Math.max(0,Math.min(N-1,V+Q)),W,V]},L}(reactExports.PureComponent),m.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},m}var validateSharedProps$1=function(m,g){m.children,m.direction,m.height,m.layout,m.innerTagName,m.outerTagName,m.width,g.instance},FixedSizeList=createListComponent({getItemOffset:function(m,g){var x=m.itemSize;return g*x},getItemSize:function(m,g){var x=m.itemSize;return x},getEstimatedTotalSize:function(m){var g=m.itemCount,x=m.itemSize;return x*g},getOffsetForIndexAndAlignment:function(m,g,x,b,E,v){var S=m.direction,C=m.height,T=m.itemCount,R=m.itemSize,k=m.layout,L=m.width,D=S==="horizontal"||k==="horizontal",A=D?L:C,I=Math.max(0,T*R-A),N=Math.min(I,g*R),z=Math.max(0,g*R-A+R+v);switch(x==="smart"&&(b>=z-A&&b<=N+A?x="auto":x="center"),x){case"start":return N;case"end":return z;case"center":{var j=Math.round(z+(N-z)/2);return j<Math.ceil(A/2)?0:j>I+Math.floor(A/2)?I:j}case"auto":default:return b>=z&&b<=N?b:b<z?z:N}},getStartIndexForOffset:function(m,g){var x=m.itemCount,b=m.itemSize;return Math.max(0,Math.min(x-1,Math.floor(g/b)))},getStopIndexForStartIndex:function(m,g,x){var b=m.direction,E=m.height,v=m.itemCount,S=m.itemSize,C=m.layout,T=m.width,R=b==="horizontal"||C==="horizontal",k=g*S,L=R?T:E,D=Math.ceil((L+x-k)/S);return Math.max(0,Math.min(v-1,g+D-1))},initInstanceProps:function(m){},shouldResetStyleCacheOnItemSizeChange:!0,validateProps:function(m){m.itemSize}});let lastPath=".";function FilePicker({onSelect:d,multiple:m=!0,files:g=!0,folders:x=!0,fileMask:b,from:E=lastPath}){const[v,S]=reactExports.useState(E);lastPath=v;const[C,T]=reactExports.useState(!1),R=reactExports.useRef(!1);useApi(!C&&"resolve_path",{path:E,closestFolder:!0},{onResponse:(ce,fe)=>vt(this,null,function*(){try{const{path:ae}=fe;if(typeof ae!="string")return;S(ae),R.current=ae[1]===":"||ae.startsWith("\\\\")}finally{T(!0)}})});const{list:k,props:L,error:D,connecting:A,reload:I}=useApiList(C&&"get_ls",{path:v,files:g,fileMask:b});reactExports.useEffect(()=>{z([]),Y("")},[v]);const[N,z]=reactExports.useState([]),[j,Y]=reactExports.useState(""),B=reactExports.useMemo(()=>_.debounce(ce=>Y(ce)),[]),U=reactExports.useMemo(()=>{const ce=new RegExp(_.escapeRegExp(j),"i");return fe=>ce.test(fe)},[j]),W=useBreakpoint("sm"),[V,J]=reactExports.useState(0),Q=reactExports.useMemo(()=>_.sortBy(k.filter(ce=>U(ce.n)),["k","n"]),[k,U]),X=R.current?"":"/",re=R.current?"\\":"/",ie=enforceFinal(re,v),oe=v.length<2;return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{label:"Current folder",value:v,InputLabelProps:{shrink:!0},helperText:"UNC paths are supported",onChange(ce){return vt(this,null,function*(){if(!ce)return S(X);const fe=yield apiCall("resolve_path",{path:ce});if(fe.isFolder===!1)return g?d([ce]):S(ce.slice(0,-basename(ce).length-1));S(fe.path)})},end:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconBtn,{title:"root",disabled:oe,icon:VerticalAlignTop,onClick(){S(X)}}),reactExports.createElement(IconBtn,{title:"parent folder",disabled:oe,icon:ArrowUpward,onClick(){const ce=/[\\/]$/.test(v)?v.slice(0,-1):v,fe=ce.lastIndexOf(re),ae=fe===1,ue=isWindowsDrive(ce)||ae?X:ce.slice(0,fe||1);S(ue)}}))}),D?reactExports.createElement(Alert,{severity:"error",sx:{flex:1}},err2msg$1(D)):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{ref(ce){if(!ce)return;const fe=(ce==null?void 0:ce.clientHeight)-1;fe-V>1&&J(fe)},sx:{flex:1,display:"flex",flexDirection:"column"}},k.length?reactExports.createElement(FixedSizeList,{width:"100%",height:V,itemSize:46,itemCount:Q.length,overscanCount:5,children({index:ce,style:fe}){const ae=Q[ce],ue=ae.k==="d";return reactExports.createElement(MenuItem,{style:$t(Fe({},fe),{padding:0}),key:ae.n,onClick(){ue?S(ie+ae.n):d([ie+ae.n])}},m&&reactExports.createElement(Checkbox$1,{checked:N.includes(ae.n),disabled:!x&&ue,onClick(pe){const ge=ae.n,ye=N.filter(Ee=>Ee!==ge);z(ye.length<N.length?ye:[...N,ge]),pe.stopPropagation()}}),reactExports.createElement(ListItemIcon,{},reactExports.createElement(ae.k?FolderIcon:FileIcon)),reactExports.createElement(ListItemText,{sx:{whiteSpace:"pre-wrap",wordBreak:"break-all"}},ae.n),!ue&&ae.s!==void 0&&reactExports.createElement(Typography,{variant:"body2",color:"text.secondary",ml:4,mr:1},formatBytes(ae.s)))}}):reactExports.createElement(Center,{flex:1,mt:"4em"},A?spinner():"No elements in this folder")),reactExports.createElement(Flex$1,{alignItems:"center"},(m||x||!g)&&reactExports.createElement(Btn$1,{disabled:!N.length&&(!v||!x&&g),sx:{minWidth:"max-content"},onClick(){d(N.length?N.map(ce=>ie+ce):[v])}},g&&(N.length||!x)?`Select (${N.length})`:W?"Select this folder":"This folder"),x&&reactExports.createElement(Btn$1,{icon:CreateNewFolder,variant:"outlined",doneMessage:!0,labelIf:"sm",onClick(){return vt(this,null,function*(){const ce=yield promptDialog$1("New folder name");if(!ce)return!1;yield apiCall("mkdir",{path:`${v}/${ce}`}),I()})}},"New folder"),reactExports.createElement(TextField,{size:"small",value:j,label:`Filter results (${Q.length}${Q.length<k.length?"/"+k.length:""})`,onChange(ce){B(ce.target.value)},sx:{flex:1}}),(L==null?void 0:L.total)>0&&reactExports.createElement(IconProgress,{icon:Storage,progress:1,offset:(L.total-L.free)/L.total,title:formatDiskSpace(L)}))))}function formatDiskSpace({free:d,total:m}){return`${formatBytes(d)} available (${formatPerc(d/m)}) of ${formatBytes(m)}`}function FileField(C){var T=C,{value:d,onChange:m,files:g=!0,folders:x=!1,fileMask:b,defaultPath:E,title:v}=T,S=Vt(T,["value","onChange","files","folders","fileMask","defaultPath","title"]);const R=useBreakpoint("md");return reactExports.createElement(StringField,$t(Fe({},S),{value:d,onChange:m,wrap:!0,end:reactExports.createElement(IconBtn,{icon:Eject,title:"Browse files...",edge:"end",sx:{mb:.5},onClick(){const{close:k}=newDialog({title:v!=null?v:(g?"Pick a file":"Pick a folder")+prefix(": ",b),dialogProps:{fullScreen:!R,sx:{minWidth:"min(90vw, 40em)",minHeight:"calc(100vh - 9em)"}},Content(){return reactExports.createElement(FilePicker,{multiple:!1,folders:x,files:g,fileMask:b,from:d||E,onSelect(D){return vt(this,null,function*(){var N;let A=D==null?void 0:D[0];if(!A)return;const I=(N=yield apiCall("get_cwd"))==null?void 0:N.path;A.startsWith(I)&&(A=A.slice(I.length+1)||"."),m(A,{was:d,event:"picker"}),k()})}})}})}})}))}const HFS_GITHUB_ACCOUNT=HFS_REPO.replace(/\/.+/,"/");function OnlinePlugins(){const[d,m]=reactExports.useState(""),g=useDebounce(d,1e3),{list:x,error:b,initializing:E}=useApiList("get_online_plugins",{text:g}),v=useSnapState$1();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{value:d,onChange:m,start:reactExports.createElement(Search),typing:!0,label:"Search text"}),reactExports.createElement(DataTable,{error:b&&err2msg$1(xlate(b,PLUGIN_ERRORS)),rows:x.length?x:[],noRows:"No compatible plugins have been found",fillFlex:!0,initializing:E,columnVisibilityModel:v.onlinePluginsColumns,onColumnVisibilityModelChange:S=>Object.assign(state$1.onlinePluginsColumns,S),columns:[{field:"id",headerName:"name",flex:1,renderCell:renderName,mergeRender:{description:{fontSize:"x-small"}}},{field:"version",width:70},{field:"pushed_at",headerName:"last update",valueGetter:({value:S})=>new Date(S).toLocaleDateString()},{field:"license",width:80},themeField,$t(Fe({},descriptionField),{flex:3,hideUnder:"sm"}),{field:"stargazers_count",width:50,headerName:"stars",align:"center",hideUnder:"sm"}],actions:({row:S,id:C})=>[reactExports.createElement(IconBtn,{icon:Download,title:"Install",progress:S.downloading,disabled:S.installed&&"Already installed",tooltipProps:{placement:"bottom-end"},onClick:()=>installPluginFromResult(S)}),reactExports.createElement(IconBtn,{icon:RemoveRedEye,disabled:!S.preview,onClick:()=>newDialog({title:C,Content:()=>reactExports.createElement(ShowImages,{imgs:wantArray(S.preview)})})})]}))}function ShowImages({imgs:d}){const[m,g]=reactExports.useState(0);return reactExports.createElement(Flex$1,{vert:!0,flex:1},reactExports.createElement(Flex$1,{vert:!0,center:!0,height:0,flex:"auto",minHeight:"50vh",minWidth:"50vw"},reactExports.createElement("img",{src:d[m],style:{margin:"auto",maxWidth:"100%",maxHeight:"100%"}})),d.length>1&&reactExports.createElement(Flex$1,{center:!0},reactExports.createElement(IconBtn,{icon:ArrowBack,disabled:!m,onClick:()=>g(m-1)}),reactExports.createElement(IconBtn,{icon:ArrowForward,disabled:m>=d.length-1,onClick:()=>g(m+1)})))}function installPluginFromResult(d){return vt(this,null,function*(){if(!d.id.startsWith(HFS_GITHUB_ACCOUNT)&&!(yield confirmDialog$1(reactExports.createElement(Flex$1,{vert:!0,alignItems:"center"},reactExports.createElement(Warning,{color:"warning",fontSize:"large"}),"Proceed only if you trust this plugin",reactExports.createElement(Box,{fontSize:"60%"},"A plugin has the same power of any other software"))))||d.missing&&!(yield confirmDialog$1("This will also install: "+_.map(d.missing,"repo").join(", "))))return;const m=d.branch||d.default_branch;return installPlugin(d.id,m).catch(g=>{if(g.code!==HTTP_FAILED_DEPENDENCY)return alertDialog$1(g);const x=reactExports.createElement(reactExports.Fragment,{},"This plugin has some dependencies unmet:",g.data.map(b=>reactExports.createElement("li",{key:b.repo},b.repo+": "+b.error)));return alertDialog$1(x,"error")})})}function installPlugin(d,m){return vt(this,null,function*(){try{const g=yield apiCall("download_plugin",{id:d,branch:m,stop:!0},{timeout:!1});(yield confirmDialog$1(`Plugin ${d} downloaded`,{trueText:"Start"}))&&(yield startPlugin(g.id))}catch(g){let x=!1;if(g.code===HTTP_FAILED_DEPENDENCY)for(const b of g.cause)b.error==="missing"&&(toast$1("Installing dependency: "+b.repo),yield installPlugin(b.repo),x=!0);if(x)return installPlugin(d,m);throw g}})}const TABS={Installed:InstalledPlugins,"Search online|Search":OnlinePlugins,"Check updates|Updates":()=>reactExports.createElement(InstalledPlugins,{updates:!0})},LABELS=Object.keys(TABS),PANES=Object.values(TABS),PLUGIN_ERRORS={ENOTFOUND:"Cannot reach github.com",ECONNREFUSED:"Cannot reach github.com"};function PluginsPage(){const[d,m]=reactExports.useState(0),g=!useBreakpoint("sm");return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Tabs,{value:d,onChange(x,b){m(b)}},LABELS.map(x=>reactExports.createElement(Tab,{key:x,label:x.split("|").slice(g?-1:0)[0]}))),reactExports.createElement(PANES[d]))}function evalWrapper(s){return eval(s)}function InstalledPlugins({updates:d}){const{list:m,error:g,setList:x,initializing:b}=useApiList(d?"get_plugin_updates":"get_plugins",{},{map(T){T.config&&(T.config=tryJson(T.config,R=>evalWrapper("()=>("+R+")")()))}});reactExports.useEffect(()=>{x(T=>_.sortBy(T,R=>{var k;return(R.error?0:R.started?1:2)+treatPluginName(((k=R.repo)==null?void 0:k.split("/").reverse().join("/"))||R.id).toLowerCase()}))},[m.length]);const E="small",{pause:v,pauseButton:S}=usePauseButton("plugins",()=>getSingleConfig(CFG.suspend_plugins).then(T=>!T),{onClick:()=>apiCall("set_config",{values:{[CFG.suspend_plugins]:!v}})}),C=useTheme$1();return reactExports.createElement(DataTable,{error:isPrimitive(g)?xlate(g,PLUGIN_ERRORS):_.map(g,(T,R)=>`Error ${R} for: ${T.join(", ")}`).join("; "),rows:m.length?m:[],fillFlex:!0,initializing:b,disableColumnSelector:!0,getRowHeight:d&&(({model:T})=>T.changelog?"auto":50),noRows:d&&'No updates available. Only plugins available on "search online" are checked.',columns:[{field:"id",headerName:"name",flex:.3,minWidth:150,renderCell:renderName,valueGetter({row:T}){return T.repo||T.id},mergeRender:{[d?"changelog":"description"]:{fontSize:"x-small"}}},{field:"version",width:70,hideUnder:"sm",mergeRender:{installedVersion:{fontSize:"x-small"}}},themeField,$t(Fe({},descriptionField),{flex:1,hideUnder:"sm"}),{field:"installedVersion",hideUnder:!0,dialogHidden:!0,renderCell:({value:T})=>T&&`Yours ${T}`},{field:"changelog",headerName:"Change log",flex:2,hideUnder:!d||"sm",sx:{flexDirection:"column",alignItems:"flex-start"},renderCell({value:T,row:R}){return Array.isArray(T)?reactExports.createElement(Table,{sx:{td:{p:0}}},_.uniq(_.sortBy(T,"version").filter(k=>_.isString(k.message)&&k.message&&k.version>R.installedVersion)).map((k,L)=>reactExports.createElement(TableRow,{key:L},reactExports.createElement(TableCell,{sx:{whiteSpace:"pre",verticalAlign:"top"}},`• ${k.version}: `),reactExports.createElement(TableCell,{},md(k.message))))):null}}],footerSide:()=>!d&&S,actions:({row:T,id:R})=>d?[reactExports.createElement(IconBtn,{icon:Upgrade,title:T.downloading?"Downloading":T.updated?"Already updated":"Update",disabled:T.updated,progress:T.downloading,size:E,onClick(){return vt(this,null,function*(){yield apiCall("update_plugin",{id:R},{timeout:!1}).catch(A=>{var I;throw A.code!==HTTP_FAILED_DEPENDENCY?A:Error("Failed dependencies: "+((I=A.cause)==null?void 0:I.map(N=>prefix('plugin "',N.id||N.repo,'" ')+N.error).join("; ")))}),toast$1("Plugin updated")})}})]:[reactExports.createElement(IconBtn,T.started?{icon:StopCircle,title:reactExports.createElement(Box,{"aria-hidden":!0},`Stop ${R}`,reactExports.createElement("br"),"Started "+new Date(T.started).toLocaleString()),"aria-label":`Stop ${R}`,size:E,color:"success",doneAnimation:!0,onClick:()=>apiCall("stop_plugin",{id:R})}:{icon:PlayCircle,title:`Start ${R}`,disabled:v,size:E,onClick:()=>startPlugin(R)}),reactExports.createElement(IconBtn,{icon:T.config||!T.started||!T.log?Settings:ListAlt,title:T.config||!T.log?"Options":"Log",size:E,disabled:!T.started&&"Start plugin to access options"||!T.config&&!T.log&&"No options and no log for this plugin",onClick(){return vt(this,null,function*(){const{config:A}=yield apiCall("get_plugin",{id:R});let I=with_(T.configDialog,Y=>{var B;return C.breakpoints.values[Y==null?void 0:Y.maxWidth]||((B=Y==null?void 0:Y.sx)==null?void 0:B.maxWidth)||xlate(Y==null?void 0:Y.maxWidth,{xs:0})||432});typeof I=="number"&&(I+="px");const N=!!T.config,z=yield formDialog$1({title:N?`Options for ${R}`:`Log for ${R}`,form:Y=>({before:T.description&&reactExports.createElement(Box,{mx:2,mb:2},T.description),fields:makeFields(callable(T.config,Y)||{},Y),save:N?{children:"Save and close"}:!1,barSx:{gap:1},addToBar:[reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>j(Y)},"Save")]}),values:A,dialogProps:_.merge({maxWidth:"md",sx:{m:"auto"}},T.configDialog,{maxWidth:!1,sx:{maxWidth:null}}),Wrapper({children:Y}){const{list:B,setList:U}=useApiList("get_plugin_log",{id:R},{map(J){J.ts=new Date(J.ts)}}),W=useAutoScroll(B);let V;return reactExports.createElement(Flex$1,{alignItems:"stretch",justifyContent:"center",flexWrap:"wrap",flexDirection:N?void 0:"column"},reactExports.createElement(Box,{maxWidth:I,minWidth:"min-content"},Y),reactExports.createElement(Paper,{elevation:1,sx:{position:"relative",fontFamily:"monospace",flex:1,minWidth:"min(40em, 90vw)",minHeight:"20em",px:.5}},reactExports.createElement(Box,{my:.5,pb:.5,borderBottom:"1px solid",display:"flex",alignItems:"center",justifyContent:"space-between"},"Output",reactExports.createElement(Btn$1,{size:"small",sx:{p:0},onClick(){U([])}},"Clear")),reactExports.createElement(Box,{position:"absolute",bottom:0,top:"31px",left:0,right:0,sx:{overflowY:"auto"},ref:W},!B.length&&reactExports.createElement(Box,{p:1},"Log is empty"),reactExports.createElement(Box,{sx:{textIndent:"-1em",pl:"1em",position:"absolute",width:"calc(100% - 1.2em)",ml:"2px",pt:".2em"}},B.map(J=>{formatDate(J.ts);const Q=formatDate(J.ts);return reactExports.createElement(reactExports.Fragment,{key:J.id},Q!==V&&(V=Q),reactExports.createElement(Box,{},reactExports.createElement(Box,{title:Q,display:"inline",color:"text.secondary",mr:1},formatTime(J.ts)),replaceStringToReact(J.msg,/https?:\/\/\S+/,X=>reactExports.createElement(Link$1,{href:X[0],target:"_blank"},X[0]))))})))))}});if(z&&!_.isEqual(A,z))return j(z);function j(Y){return vt(this,null,function*(){yield apiCall("set_plugin",{id:R,config:Y}),Object.assign(A,Y),toast$1("Configuration saved")})}})}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Uninstall",size:E,onClick(){return vt(this,null,function*(){const A=yield confirmDialog$1(`${R}: delete configuration too?`,{trueText:"Yes",falseText:"No",after:({onClick:I})=>reactExports.createElement(Btn$1,{variant:"outlined",onClick(){I(void 0)}},"Abort")});A!==void 0&&(yield apiCall("uninstall_plugin",{id:R,deleteConfig:A}),toast$1("Plugin uninstalled"))})}})]})}function getSingleConfig(d){return apiCall("get_config",{only:[d]}).then(m=>m[d])}function treatPluginName(d){return d.replace(/hfs-/,"")}function renderName({row:d,value:m}){const{repo:g}=d;return reactExports.createElement(reactExports.Fragment,{},d.downgrade&&x("This version is older than the one you installed. It is possible that the author found a problem with your version and decided to retire it.",!0),x(d.error||d.badApi,!d.error),g!=null&&g.includes("//")?reactExports.createElement(Link$1,{href:g,target:"plugin"},m):with_(g==null?void 0:g.split("/"),b=>(b==null?void 0:b.length)!==2?m:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Link$1,{href:"https://github.com/"+g,target:"plugin",onClick(E){E.stopPropagation()}},treatPluginName(b[1])),NBSP+"by ",b[0])));function x(b,E=!1){return b&&hTooltip(b,b,reactExports.createElement(ErrorIcon,{fontSize:"small",color:E?"warning":"error",sx:{ml:-.5,mr:.5}}))}}function makeFields(d,m){return Object.entries(d).map(([g,x])=>{var k;if(!x)return;let R=x,{type:b,defaultValue:E,frontend:v,showIf:S}=R,C=Vt(R,["type","defaultValue","frontend","showIf"]);try{if(C.getError=evalWrapper(C.getError),typeof S=="string"&&(C.showIf=S=evalWrapper(S)),S&&!S(m))return}catch(L){}C.helperText&&(C.helperText=md(C.helperText,{html:!1}));const T=type2comp[b];if(m===!1&&b==="date_time"&&(C.$type="dateTime"),T===ArrayField){let{fields:L}=C;C.valuesForAdd=newObj(callable(L,!1),D=>D.defaultValue),typeof L=="string"&&(L=evalWrapper(L)),(k=C.details)!=null||(C.details=!1),C.fields=D=>_.map(makeFields(callable(L,D),D),(A,I)=>A&&$t(Fe({k:I},A),{defaultValue:void 0})).filter(Boolean)}return E!==void 0&&b==="boolean"&&(C.placeholder=`Default value is ${JSON.stringify(E)}`),Fe({k:g,comp:T},C)})}const type2comp={string:StringField,number:NumberField,boolean:BoolField,select:SelectField,multiselect:MultiSelectField,array:ArrayField,real_path:FileField,vfs_path:VfsPathField,username:UsernameField,color:ColorField,showHtml:({html:d})=>reactExports.createElement(Html,{},String(d)),date_time:DateTimeField,net_mask:NetmaskField};function startPlugin(d){return vt(this,null,function*(){try{return yield apiCall("start_plugin",{id:d}),toast$1("Plugin started",reactExports.createElement(PlayCircle,{color:"success"})),!0}catch(m){alertDialog$1(`Plugin ${d} didn't start, with error: ${String((m==null?void 0:m.message)||m)}`,"error")}})}function UsernameField(E){var v=E,{value:d,onChange:m,multiple:g,groups:x}=v,b=Vt(v,["value","onChange","multiple","groups"]);const{data:S,element:C,loading:T}=useApiEx("get_accounts");return!T&&C||reactExports.createElement(g?MultiSelectField:SelectField,Fe({value:d,onChange:m,options:S==null?void 0:S.list.filter(R=>x===void 0||x===R.isGroup).map(R=>R.username)},b))}function ColorField(d){return reactExports.createElement(StringField,Fe({inputProps:Fe({type:"color",style:{marginRight:24}},!d.value&&{value:"#888888",style:{zIndex:1,opacity:.1}}),InputProps:{endAdornment:d.value?reactExports.createElement(Btn$1,{icon:Clear,size:"small",sx:{position:"absolute",right:4},title:"Clear",onClick(m){d.onChange(null,{was:d.value,event:m})}}):reactExports.createElement(Box,{sx:{position:"absolute",width:"100%",bottom:2,pt:"3px",textAlign:"center",color:"#fff",background:"repeating-linear-gradient(45deg, #333, #333 10px, #444 10px, #444 20px)"}},"default")},typing:!0},d))}const descriptionField={field:"description",mergeRender:{isTheme:{}},mergeRenderSx:{float:"left"}},themeField={field:"isTheme",headerName:"is theme",hideUnder:!0,dialogHidden:!0,type:"boolean",renderCell({value:d}){return d&&iconTooltip(ThemeIcon,_.isString(d)?`${d} theme`:"theme",{fontSize:"1.2rem",mr:".3em"})}},cacheKey="onlinePluginsCache";function RandomPlugin(){const{hideRandomPlugin:d}=useSnapState$1(),m=localStorage.getItem(cacheKey),g=reactExports.useMemo(()=>{const C=tryJson(m||"");return(C==null?void 0:C.ts)&&Date.now()-C.ts<DAY&&_.shuffle(C.list)},[m]),{list:x,initializing:b}=useApiList(!d&&!g&&"get_online_plugins"),[E,v]=reactExports.useState(-1),S=g==null?void 0:g[E];if(reactExports.useEffect(()=>{!g&&!b&&x.length&&localStorage.setItem(cacheKey,JSON.stringify({ts:Date.now(),list:x})),v(0)},[x,b]),reactExports.useEffect(()=>{E>0&&!S&&toast$1("No more plugins!")},[E]),!(d||!S))return reactExports.createElement(Card,{sx:{display:{xs:"none",md:"block"},float:"right",width:"min(50%, 30em)",ml:"1em"}},reactExports.createElement(CardContent,{},reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.4em"},reactExports.createElement(Box,{color:"warning.main",mr:1,display:"inline"},"★"),"Random plugin:"),reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.8em",my:1},renderName({row:S})),reactExports.createElement(Box,{},S.description),S.preview&&reactExports.createElement("img",{src:wantArray(S.preview)[0],style:{maxWidth:"100%",maxHeight:"50vh",marginTop:"1em",border:"1px solid",maskImage:"radial-gradient(circle at center, black 50%, transparent 100%)"}})),reactExports.createElement(CardActions,{},reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>installPluginFromResult(S)},"Install"),reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>v(C=>C+1)},"Another"),reactExports.createElement(Btn$1,{variant:"outlined",onClick(){state$1.hideRandomPlugin=!0}},"Hide this box")))}function HomePage(){var X,re,ie,oe,Z;const d=" — ",{username:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_status"),{data:E}=useApiEx(m&&"get_account"),v=useApiEx("get_config",{only:["https_port","cert","private_key","proxies","ignore_proxies","vfs"]}),{list:S}=useApiList("get_plugins"),[C,T]=reactExports.useState(!1),{list:R}=useApiList(C&&"get_plugin_updates"),[k,L]=reactExports.useState(),[D,A]=reactExports.useState();if(b||!g)return b;const{http:I,https:N}=g,z=!(I!=null&&I.listening)&&(N!=null&&N.listening)?"s":"",j=z?N:(I==null?void 0:I.listening)&&I,Y=j&&`http${z}://`+window.location.hostname+(j.port===(z?443:80)?"":":"+j.port),B=objSameKeys({http:I,https:N},ee=>ee.busy?[`port ${ee.configuredPort} already used by ${ee.busy}${d}choose a `,cfgLink("different port"),` or stop ${ee.busy}`]:ee.error),U=B&&onlyTruthy(Object.entries(B).map(([ee,ce])=>ce&&[md(`Protocol <u>${ee}</u>: `),ce,(isCertError(ce)||isKeyError(ce))&&[d,reactExports.createElement(LinkBtn,{onClick(){suggestMakingCert().then(()=>wait(999)).then(v.reload).then(x)}},"make one")," or ",d,cfgLink("provide adequate files")]])),W={onContextMenu(ee){return vt(this,null,function*(){if(ee.preventDefault(),!g.updatePossible)return alertDialog$1("Automatic update is only for binary versions","warning");const ce=yield promptDialog$1("Enter a link to the zip to install");ce&&(yield update(ce))})},title:g.updatePossible&&"Right-click if you want to install a zip"},V=(X=v.data)==null?void 0:X.vfs;return reactExports.createElement(Box,{},reactExports.createElement(RandomPlugin),reactExports.createElement(Box,{display:"flex",gap:2,flexDirection:"column",alignItems:"flex-start",height:"100%"},dontBotherWithKeys((re=g.alerts)==null?void 0:re.map(ee=>entry("warning",md(ee,{html:!1})))),U.length?dontBotherWithKeys(U.map(ee=>entry("error",dontBotherWithKeys(ee)))):entry("success","Server is working"),V&&!((ie=V.children)!=null&&ie.length)&&!V.source?entry("warning","You have no shared files",d,fsLink("add some")):null,E!=null&&E.adminActualAccess?entry("","Welcome, "+m):entry("",md("You're accessing the Admin-panel without an account because you are on localhost"),...g.anyAccountCanLoginAdmin?[]:[d,"to access from another computer, you must ",reactExports.createElement(InLink,{to:"accounts"},md("create an account with *admin* permission"))]),!Y&&entry("warning","Frontend unreachable: ",_.map(B,(ee,ce)=>ce+" "+(ee?"is in error":"is off")).join(", "),!U.length&&[d,cfgLink("switch http or https on")]),with_(g.acmeRenewError,ee=>ee&&entry("warning",ee)),with_(g.blacklistedInstalledPlugins,ee=>(ee==null?void 0:ee.length)>0&&entry("warning","Found blacklisted plugin(s): ",ee.join(", "))),with_(S==null?void 0:S.filter(ee=>ee.error||ee.badApi).length,ee=>ee>0&&entry("warning",`${ee} plugin(s) failing`,d,reactExports.createElement(InLink,{to:"plugins"},"check now"))),!((oe=v.data)!=null&&oe.split_uploads)&&Date.now()-Number(g.cloudflareDetected||0)<DAY&&entry("",wikiLink("Reverse-proxy#cloudflare","Cloudflare detected, read our guide")),with_(proxyWarning(v.data,g),ee=>ee&&entry("warning",ee,d,cfgLink("set the number of proxies"),d,"unless you are sure and you can ",reactExports.createElement(Btn$1,{variant:"outlined",size:"small",sx:{lineHeight:"unset"},confirm:"Go on only if you know what you are doing",onClick:()=>apiCall("set_config",{values:{ignore_proxies:!0}}).then(v.reload)},"ignore this warning"),d,wikiLink("Proxy-warning","Explanation"))),(((Z=v.data)==null?void 0:Z.proxies)>0||(g==null?void 0:g.proxyDetected))&&entry("",wikiLink("Reverse-proxy","Read our guide on proxies")),g.frpDetected&&entry("warning",'FRP is detected. It should not be used with "type = tcp" with HFS. Possible solutions are',reactExports.createElement("ol",{},reactExports.createElement("li",{},"configure FRP with type=http (best solution)"),reactExports.createElement("li",{},md("configure FRP to connect to HFS <u>not</u> with localhost (safe, but you won't see users' IPs)")),reactExports.createElement("li",{},`disable "admin access for localhost" in HFS (safe, but you won't see users' IPs)`))),entry("",md("This is the *Admin-panel*, where you manage your server. Access your files on the [Front-end](../..).")),entry("",wikiLink("","See the documentation")," and ",reactExports.createElement(Link$1,{target:"support",href:REPO_URL+"discussions"},"get support")),!k&&with_(g.autoCheckUpdateResult,ee=>(ee==null?void 0:ee.isNewer)&&reactExports.createElement(Update,{info:ee,fromAuto:!0,bodyCollapsed:!0,title:"An update has been found"})),R.length>0&&entry("success","Updates available for plugin(s): "+R.map(ee=>ee.id).join(", ")),reactExports.createElement(ConfigForm,{gridProps:{sx:{mt:1,display:"flex",columnGap:1,alignitems:"center","&>div.MuiGrid2-root":{width:"auto",px:.5,py:0},".MuiCheckbox-root":{pl:"2px"}}},saveOnChange:!0,form:{fields:[g.updatePossible==="local"?reactExports.createElement(Btn$1,{icon:UpdateIcon,onClick:()=>update()},"Update from local file"):!k&&reactExports.createElement(Btn$1,Fe({icon:UpdateIcon,onClick(){return apiCall("wait_project_info").then(x),T(!0),apiCall("check_update").then(ee=>L(ee.options),alertDialog$1)}},W),"Check for updates"),{k:"auto_check_update",comp:CheckboxField,label:"Auto check updates daily"},{k:"update_to_beta",comp:CheckboxField,label:"Include beta versions"}]}}),k&&with_(_.find(k,"isNewer"),ee=>!k.length||!g.updatePossible&&!ee?entry("","No update available"):ee&&!g.updatePossible?entry("success",`Version ${ee.name} available`):reactExports.createElement(Flex$1,{vert:!0},k.map(ce=>reactExports.createElement(Update,{info:ce,key:ce.name})))),reactExports.createElement(Flex$1,{flexWrap:"wrap"},!D&&g.updatePossible&&g.previousVersionAvailable&&reactExports.createElement(Btn$1,{icon:Restore,onClick:()=>update(PREVIOUS_TAG)},"Reinstall previous version"),g.updatePossible?D?reactExports.createElement(Flex$1,{vert:!0},D.map(ee=>reactExports.createElement(Update,{info:ee,key:ee.name,bodyCollapsed:!0}))):reactExports.createElement(Btn$1,Fe({icon:Colorize,onClick:J},W),"Get another version"):entry("",reactExports.createElement(Link$1,{href:REPO_URL+"releases/",target:"repo"},"All releases"))),reactExports.createElement(SwitchThemeBtn),Date.now()-Number(new Date(g.started))>HOUR&&reactExports.createElement(Link$1,{title:"Donate",target:"donate",style:{textDecoration:"none",position:"fixed",bottom:0,right:4,fontSize:"large"},href:"https://www.paypal.com/donate/?hosted_button_id=HC8MB4GRVU5T2"},"❤️")));function J(){return vt(this,null,function*(){return apiCall("get_other_versions").then(ee=>A(ee.options),alertDialog$1)})}}function Update({info:d,title:m,bodyCollapsed:g,fromAuto:x}){const[b,E]=reactExports.useState(g);return reactExports.createElement(Flex$1,{alignItems:"flex-start",flexWrap:"wrap"},reactExports.createElement(Card,{className:"release"},reactExports.createElement(CardContent,{},reactExports.createElement(Flex$1,{},m&&reactExports.createElement(Box,{fontSize:"larger",mb:1},m),reactExports.createElement(Btn$1,$t(Fe({icon:UpdateIcon},!d.isNewer&&d.prerelease&&{color:"warning",variant:"outlined"}),{onClick:()=>update(x?void 0:d.tag_name)}),prefix("Install ",d.name,d.isNewer?"":" (older)")),reactExports.createElement(Link$1,{href:REPO_URL+"releases/tag/"+d.tag_name,target:"repo"},reactExports.createElement(OpenInNew))),b?reactExports.createElement(LinkBtn,{sx:{display:"block",mt:1},onClick(){E(!1)}},"See details"):reactExports.createElement(Box,{mt:1},renderChangelog(d.body)))))}function renderChangelog(d){return md(d,{html:!1,onText:m=>replaceStringToReact(m,new RegExp("(?<=^|\\W)#(\\d+)\\b|(https:.*\\S+)","g"),g=>g[1]?reactExports.createElement(Link$1,{href:REPO_URL+"issues/"+g[1],target:"_blank"},reactExports.createElement(OpenInNew,{fontSize:"small"})):reactExports.createElement(Link$1,{href:g[2],target:"_blank"},g[2]))})}function update(d){return vt(this,null,function*(){if(!(yield confirmDialog$1("Installation may take less than a minute, depending on the speed of your server")))return;toast$1("Downloading");const m=yield apiCall("update",{tag:d},{timeout:600}).then(()=>0,b=>b);if(m)return alertDialog$1(m);toast$1("Restarting");const g=Date.now();let x;for(;yield apiCall("NONE").then(()=>0,b=>!b.code);)!x&&Date.now()-g>15e3&&(x=alertDialog$1("This is taking too long, please check your server","warning")),yield wait(500);x==null||x.close(),subscribeKey(state$1,"loginRequired",()=>state$1.loginRequired=!1),yield alertDialog$1("Procedure complete","success"),window.location.reload()})}function entry(d,...m){return reactExports.createElement(Box,{fontSize:"x-large",color:g=>{var x;return d&&((x=g.palette[d])==null?void 0:x.main)}},reactExports.createElement({success:CheckCircle,info:Info,"":Info,warning:Warning,error:ErrorIcon}[d],{sx:{mr:1,color:d?void 0:"primary.main"}}),reactExports.createElement("span",{style:["warning","error"].includes(d)?{animation:".5s blink 2"}:void 0},...m))}function fsLink(d="File System page"){return reactExports.createElement(InLink,{to:"fs"},d)}function cfgLink(d="Options page"){return reactExports.createElement(InLink,{to:"options"},d)}function proxyWarning(d,m){return m&&d&&!d.ignore_proxies&&(!d.proxies&&m.proxyDetected?"A proxy was detected but none is configured":d.proxies&&!m.proxyDetected&&Date.now()-+new Date(m.started)>DAY?`Proxies is set to ${d.proxies} but none was detected recently. Consider setting it zero`:"")}let loaded,exposedReloadStatus;const pageState=proxy({changes:{}});subscribe(state$1,d=>{d.some(m=>m[1][0]==="config")&&recalculateChanges()});function OptionsPage(){var Y,B;const{data:d,reload:m,element:g}=useApiEx("get_config",{omit:["vfs"]}),x=useSnapState$1(),{changes:b}=useSnapshot(pageState),E=useApiEx(d&&"get_status"),v=E.data,S=exposedReloadStatus=E.reload;reactExports.useEffect(()=>void S(),[d]),reactExports.useEffect(()=>()=>exposedReloadStatus=void 0,[]);const C=useBreakpoint("sm"),T=(Y=useApiEx("get_admins").data)==null?void 0:Y.list,R=window.location.hostname,k=R==="localhost",L=R.includes(":"),D=[{label:"any",value:""},{label:"any IPv4",value:"0.0.0.0",disabled:!k&&L},{label:"any IPv6",value:"::",disabled:!k&&!L},...["127.0.0.1","::1"].map(U=>({label:U,value:U,disabled:!k&&R!==U})),...((B=v==null?void 0:v.ips)==null?void 0:B.map(U=>({value:U,disabled:R!==U})))||[]];if(g)return g;if(E.error)return E.element;const A=loaded!==d?state$1.config=loaded=d:x.config,I={comp:NumberField,min:1,unit:"KB/s",placeholder:"no limit",sm:6},N={comp:NumberField,placeholder:"no limit",toField:U=>U||"",sm:4},z=A.https_port>=0;return reactExports.createElement(Form,{sx:{maxWidth:"60em"},values:A,set(U,W){state$1.config[W]=U},stickyBar:!0,onError:alertDialog$1,save:Fe({onClick:j},propsForModifiedValues(Object.keys(b).length>0)),barSx:{gap:2},addToBar:[reactExports.createElement(Button,{onClick(){m(),S()},startIcon:reactExports.createElement(Refresh)},"Reload"),reactExports.createElement(Button,{component:Link$2,to:"/config",startIcon:reactExports.createElement(EditNote)},C?"Config file":"File")],defaults(){return{xs:6}},fields:[reactExports.createElement(Section,{title:"Networking"}),{k:"port",comp:PortField,xs:12,sm:6,label:"HTTP port",status:(v==null?void 0:v.http)||!0,suggestedPort:80},{k:"https_port",comp:PortField,xs:12,sm:6,label:"HTTPS port",status:(v==null?void 0:v.https)||!0,suggestedPort:443,onChange(U){return U>=0&&!z&&!A.cert&&suggestMakingCert(),U}},z&&{k:"cert",comp:FileField,sm:4,label:"HTTPS certificate file",helperText:wikiLink("HTTPS#certificate","What is this?"),error:with_(v==null?void 0:v.https.error,U=>isCertError(U)&&(v.https.listening?U:[U," - ",reactExports.createElement(LinkBtn,{key:"fix",onClick:suggestMakingCert},"make one")]))},z&&Fe({k:"private_key",comp:FileField,sm:4,label:"HTTPS private key file"},with_(v==null?void 0:v.https.error,U=>isKeyError(U)?{error:!0,helperText:U}:null)),z&&{k:"force_https",comp:BoolField,label:"Force HTTPS",sm:4,disabled:!z||A.port<0,helperText:"Not applied to localhost. Doesn't work with proxies."},{k:"listen_interface",comp:SelectField,sm:4,afterList:D.some(U=>U.disabled)&&reactExports.createElement(Box,{p:"8px 16px 0",borderTop:"1px solid",fontSize:"small"},"Disabled addresses depend on the address you used to connect"),options:D},$t(Fe({k:"max_kbps"},I),{sm:4,label:"Limit output",helperText:"Doesn't apply to localhost"}),$t(Fe({k:"max_kbps_per_ip"},I),{sm:4,label:"Limit output per-IP"}),$t(Fe({k:CFG.max_downloads},N),{helperText:"Number of simultaneous downloads"}),$t(Fe({k:CFG.max_downloads_per_ip},N),{label:"Max downloads per-IP"}),$t(Fe({k:CFG.max_downloads_per_account},N),{label:"Max downloads per-account",helperText:"Overrides other limits"}),{k:"admin_net",comp:NetmaskField,label:"Admin-panel accessible from",placeholder:"any address",helperText:"IP address of browser machine"},{k:"localhost_admin",comp:BoolField,xs:12,sm:6,label:"Unprotected Admin-panel on localhost",getError:U=>!U&&(T==null?void 0:T.length)===0&&"First create at least one admin account",helperText:"Access without entering credentials"},{k:"proxies",comp:NumberField,xs:12,sm:4,md:4,max:9,label:"Number of incoming HTTP proxies",placeholder:"none",error:proxyWarning(A,v),helperText:"Wrong number will prevent detection of users' IP"},{k:CFG.outbound_proxy,xs:12,sm:5,md:4,placeholder:"none",helperText:"URL form",getError:U=>try_(()=>U&&new URL(U)&&"",()=>"Invalid URL")},{k:"allowed_referer",comp:AllowedReferer,sm:3,md:4,placeholder:"any",label:"Links from other websites",helperText:"In case another website is linking your files"},{k:"block",label:!1,comp:ArrayField,xs:12,prepend:!0,sm:!0,autoRowHeight:!0,form:{maxWidth:"30em"},fields:[{k:"ip",label:"Blocked IP",sm:12,required:!0,wrap:!0,$width:2,comp:NetmaskField,$column:{mergeRender:{comment:{},expire:{}}},helperText:"Be careful to not kick yourself out, by blocking also your IP"},{k:"expire",$type:"dateTime",minDate:new Date,sm:6,$hideUnder:"sm",helperText:"Leave empty for no expiration"},{k:"disabled",$type:"boolean",label:"Enabled",helperText:"In case you want to not block without deleting the rule",toField:U=>!U,fromField:U=>U?void 0:!0,sm:6,$width:80},{k:"comment",$hideUnder:"sm"}]},reactExports.createElement(Section,{title:"Front-end",subtitle:"Following options affect only the front-end"}),{k:"file_menu_on_link",comp:SelectField,label:"Access file menu",md:4,options:{"by clicking on file name":!0,"by dedicated button":!1}},{k:"title",md:8,helperText:"You can see this in the tab of your browser"},{k:"auto_play_seconds",comp:NumberField,xs:6,sm:3,min:1,max:1e4,required:!0,label:"Auto-play seconds delay",helperText:md(`Default value for the [Show interface](${REPO_URL}discussions/270)`)},{k:"tile_size",comp:NumberField,xs:6,sm:3,max:MAX_TILE_SIZE,required:!0,label:"Default tiles size",helperText:wikiLink("Tiles","To enable tiles-mode")},{k:"theme",comp:SelectField,xs:6,sm:3,options:THEME_OPTIONS},{k:"sort_by",comp:SelectField,xs:6,sm:3,options:SORT_BY_OPTIONS},{k:"invert_order",comp:BoolField,xs:6,md:3},{k:"folders_first",comp:BoolField,xs:6,md:3},{k:"sort_numerics",comp:BoolField,xs:6,md:3,label:"Sort numeric names"},{k:"title_with_path",comp:BoolField,xs:6,md:3},{k:"favicon",comp:FileField,placeholder:"None",fileMask:"*.ico|"+IMAGE_FILEMASK,xs:12,helperText:"The icon associated to your website"},reactExports.createElement(Section,{title:"Uploads"}),{k:"dont_overwrite_uploading",comp:BoolField,md:4,label:"Uploads don't overwrite",helperText:"Files will be numbered to avoid overwriting"},{k:CFG.split_uploads,comp:NumberField,unit:"MB",md:2,step:.1,fromField:U=>U*1e6,toField:U=>U?U/1e6:null,placeholder:"disabled",label:"Split uploads in chunks",helperText:"Overcome proxy limits"},{k:"delete_unfinished_uploads_after",comp:NumberField,md:3,min:0,unit:"seconds",required:!0},{k:"min_available_mb",comp:NumberField,md:3,min:0,unit:"MBytes",placeholder:"None",label:"Min. available disk space",helperText:"Reject uploads that don't comply"},reactExports.createElement(Section,{title:"Others"}),{k:"keep_session_alive",comp:BoolField,sm:6,md:6,helperText:"Keeps you logged in while the page is left open and the computer is on"},{k:"session_duration",comp:NumberField,sm:3,md:3,min:5,unit:"seconds",required:!0},{k:CFG.size_1024,label:"KB size",comp:SelectField,sm:3,options:{1e3:!1,1024:!0}},{k:"show_hidden_files",comp:BoolField,sm:3},{k:CFG.comments_storage,comp:SelectField,xs:12,sm:6,md:5,options:{"in file DESCRIPT.ION":"","in file attributes":"attr","in file attributes + load DESCRIPT.ION":"attr+ion"}},{k:"descript_ion_encoding",xs:8,sm:3,md:4,label:"Encoding of file DESCRIPT.ION",comp:SelectField,disabled:!A.descript_ion,options:["utf8",720,775,819,850,852,862,869,874,808,..._.range(1250,1257),10029,20866,21866]},{k:"open_browser_at_start",comp:BoolField,label:"Open Admin-panel at start",xs:12,sm:6,md:3,helperText:"Browser is automatically launched with HFS"},{k:"zip_calculate_size_for_seconds",comp:NumberField,xs:12,sm:6,md:3,unit:"seconds",required:!0,label:"Calculate ZIP size for",helperText:"If time is not enough, the browser will not show download percentage"},{k:"mime",comp:ArrayField,label:!1,reorder:!0,prepend:!0,xs:12,sm:12,md:6,fields:[{k:"v",label:"Mime type",placeholder:"auto",$width:2,helperText:"Leave empty to get automatic value"},{k:"k",label:"File mask",helperText:reactExports.createElement(WildcardsSupported),$width:1,$column:{renderCell:({value:U,id:W})=>reactExports.createElement("code",{},U,U==="*"&&W<_.size(A.mime)-1&&iconTooltip(Warning,md("Mime with `*` should be the last, because first matching row applies"),{color:"warning.main",ml:1}))}}],toField:U=>Object.entries(U||{}).map(([W,V])=>({k:W,v:V})),fromField:U=>Object.fromEntries(U.map(W=>[W.k,W.v||"auto"]))},{k:"server_code",comp:TextEditorField,lang:"js",xs:12,helperText:md(`This code works similarly to [a plugin](${REPO_URL}blob/main/dev-plugins.md) (with some limitations)`)}]});function j(){return vt(this,null,function*(){var ue,pe;if(_.isEmpty(b))return toast$1("Nothing to save");const U=window.location,W=["port","https_port"];if(W.every(ge=>b[ge]!==void 0))return alertDialog$1("You cannot change both http and https port at once. Please, do one, save, and then do the other.","warning");const V=[(ue=v==null?void 0:v.http)==null?void 0:ue.listening,(pe=v==null?void 0:v.https)==null?void 0:pe.listening],J=location.protocol==="https:";J&&(W.reverse(),V.reverse());const Q=b[W[0]],X=A[W[1]],re=X>0&&V[1],ie=J?"http":"https";if(Q<0&&!re)return alertDialog$1("You cannot switch off this port unless you have a working fixed port for "+ie,"warning");if(Q===0&&!re)return alertDialog$1("You cannot randomize this port unless you have a working fixed port for "+ie,"warning");const oe=Q>0&&Q!=U.port;if(oe&&!(yield confirmDialog$1("You are changing the port and you may be disconnected")))return;const Z="cert"in b||"private_key"in b;if(J&&Z&&!(yield confirmDialog$1("You may disrupt https service, kicking you out")))return;yield apiCall("set_config",{values:b}),"split_uploads"in b&&(yield alertDialog$1('Users need to reload for the "split uploads" option to take effect',"warning"));const ee=ipForUrl(U.hostname),ce=U.pathname+U.hash,fe=Q<=0?`${J?"http:":"https:"}//${ee}:${X}${ce}`:oe?`${U.protocol}//${ee}:${Q||A[W[0]]}${ce}`:yield with_(`https://${ee}:${U.port}${ce}`,ge=>{var ye;return!J&&((ye=b.force_https)!=null?ye:d.force_https)&&fetch(ge).then(()=>ge,()=>0)});if(fe)return yield alertDialog$1("You are being redirected but in some cases this may fail. Hold on tight!","warning"),window.location.href=fe;const ae="port"in b||"https_port"in b;setTimeout(S,ae||Z?1e3:0),Object.assign(loaded,b),recalculateChanges(),toast$1("Changes applied","success")})}}function Section({title:d,subtitle:m}){return reactExports.createElement(Divider,{role:"heading",sx:{fontSize:"larger",fontWeight:"bold"}},d,reactExports.createElement(Box,{fontSize:"small",fontWeight:"normal"},m))}function recalculateChanges(){const d={};if(state$1.config)for(const[m,g]of Object.entries(state$1.config))JSON.stringify(g)!==JSON.stringify(loaded==null?void 0:loaded[m])&&(d[m]=g);pageState.changes=d}function isCertError(d){return/certificate/.test(d)}function isKeyError(d){return/private key/.test(d)}function PortField({label:d,value:m,onChange:g,setApi:x,status:b,suggestedPort:E=1,error:v,helperText:S}){const C=reactExports.useRef(E);m>0&&(C.current=m);const T=Number(m>0?C.current:m)||0;let R=b==null?void 0:b.error;return R&&(isCertError(R)||isKeyError(R)?R=void 0:v=!0),reactExports.createElement(Box,{},reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{sx:{flexGrow:1},label:d,error:v,value:T,options:[{label:"off",value:-1},{label:"random",value:0},{label:"choose",value:C.current}],onChange:g}),m>0&&reactExports.createElement(NumberField,{label:"Number",fullWidth:!1,value:m,onChange:g,setApi:x,error:v,min:1,max:65535,helperText:S,sx:{minWidth:"5.5em"}})),b&&reactExports.createElement(FormHelperText,{error:v},b===!0?"...":R!=null?R:(b==null?void 0:b.listening)&&"Correctly working on port "+b.port))}function AllowedReferer({label:d,value:m,onChange:g,error:x}){const b=!m||m==="-",E="example.com";return reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{label:d,value:b?m:E,options:{"allow all":"","forbid all":"-","allow some":E},onChange:g,error:x,sx:b?void 0:{maxWidth:"11em"}}),!b&&reactExports.createElement(StringField,{label:"Domain to allow",value:m,placeholder:"example.com",onChange:g,error:x,helperText:reactExports.createElement(WildcardsSupported)}))}function suggestMakingCert(){return vt(this,null,function*(){return new Promise(d=>{const{close:m}=newDialog({icon:CardMembership,title:"Get a certificate",onClose:d,Content:()=>reactExports.createElement(Box,{p:1,lineHeight:1.5},reactExports.createElement(Box,{},"HTTPS needs a certificate to work."),reactExports.createElement(Box,{},"We suggest you to ",reactExports.createElement(InLink,{to:"internet"},"get a free but proper certificate"),"."),reactExports.createElement(Box,{},"If you don't have a domain ",reactExports.createElement(LinkBtn,{onClick:g},"make a self-signed certificate")," but that ",wikiLink("HTTPS#certificate"," won't be perfect"),"."))});function g(){return vt(this,null,function*(){if(!window.crypto.subtle)return alertDialog$1("Retry this procedure on localhost","warning");const x=yield apiCall("make_self_signed_cert",{fileName:"self"});loaded&&Object.assign(loaded,x),setTimeout(exposedReloadStatus,1e3),setTimeout(exposedReloadStatus,2e3),Object.assign(state$1.config,x),yield alertDialog$1("Certificate saved","success"),m()})}})})}function LogoutPage(){const{element:d}=useApiEx("get_config",{only:[]}),{username:m}=useSnapState$1();return d||reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:2},m?reactExports.createElement(reactExports.Fragment,{},"You are logged in as: "+m,reactExports.createElement(Btn$1,{icon:Logout,size:"large",onClick:()=>apiCall("logout").catch(x=>x.code!==HTTP_UNAUTHORIZED&&alertDialog$1(x))},"I want to logout")):reactExports.createElement(Alert,{severity:"info"},"You are not logged in, because authentication is not required on localhost"),reactExports.createElement(Btn$1,{icon:PowerSettingsNew,size:"large",color:"warning",confirm:"Stopping the server, this interface won't respond anymore",onClick(){return vt(this,null,function*(){yield apiCall("quit"),yield alertDialog$1("Good-bye","success"),location.reload()})}},"Quit HFS"))}function LangPage({setTitleSide:d}){const{list:m,error:g,connecting:x,reload:b}=useApiList("get_langs"),E=reactExports.useMemo(()=>["en",..._.uniq(m.map(S=>S.code))],[m]);return d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"Translation is limited to Front-end, it doesn't apply to Admin-panel"),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,Fe({mt:1,maxWidth:"50em",flex:1},fillFlexParentSx),reactExports.createElement(Box,{mb:1,display:"flex"},reactExports.createElement(Btn$1,{icon:Upload,onClick:v},"Add"),reactExports.createElement(Box,{flex:1}),reactExports.createElement(ForceLang,{langs:E})),reactExports.createElement(DataTable,{error:g,loading:x,rows:reactExports.useMemo(()=>_.sortBy(m,S=>(S.embedded?2:1)+S.code),[m.length]),hideFooter:!0,fillFlex:!0,columns:[{field:"code",width:110,valueFormatter:({value:S})=>S==null?void 0:S.toUpperCase()},{field:"version",width:120,hideUnder:"sm"},{field:"hfs_version",headerName:"HFS version",width:110},{field:"author",flex:1,hideUnder:"sm"}],actions:({row:S})=>[reactExports.createElement(IconBtn,{icon:Delete,title:S.embedded?"Cannot delete (embedded)":"Delete",confirm:`Delete language code "${S.code}"?`,disabled:S.embedded,onClick(){return vt(this,null,function*(){yield apiCall("del_lang",_.pick(S,"code")),b(),toast$1("Deleted")})}})]})));function v(){selectFiles(S=>vt(this,null,function*(){if(!S)return;const C={};for(const T of S)C[T.name]=yield readFile(T);try{yield apiCall("add_langs",{langs:C}),b(),toast$1("Loaded")}catch(T){yield alertDialog$1(T)}}),{accept:".json"})}}function ForceLang({langs:d}){const m=CFG.force_lang,{data:g,reload:x,loading:b}=useApiEx("get_config",{only:[m]}),[E,v]=reactExports.useState();reactExports.useEffect(()=>{var R;return v((R=g==null?void 0:g[m])!=null?R:E)},[g]);const[S,C]=reactExports.useState();return reactExports.createElement(SelectField,{fullWidth:!1,disabled:!!b||typeof S=="string",value:S!=null?S:E,onChange(R){return vt(this,null,function*(){C(R);try{yield apiCall("set_config",{values:{[m]:R}}),yield x()}finally{C(void 0)}})},options:[{label:"Respect browser language",value:""},...d.map(R=>({value:R,label:"Force language: "+R}))]})}function switchBtn(d,m,g){return reactExports.createElement(VerticalSwitch,Fe({checked:d||!1,onChange(x,b){m(b)},disabled:d===void 0},g))}const VerticalSwitch=styled(Switch)(({theme:d,size:m})=>{const g=m&&m==="small";return{height:g?36:48,width:g?18:26,padding:5,"& .MuiSwitch-switchBase":{margin:1,padding:0,transform:`translateY(${g?16:22}px)`,"&.Mui-checked":{color:d.palette.primary.contrastText,transform:"translateY(2px)","& .MuiSwitch-thumb:before":{backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"/></svg>')`},"& + .MuiSwitch-track":{backgroundColor:d.palette.grey[500]}}},"& .Mui-checked .MuiSwitch-thumb":{backgroundColor:d.palette.primary.main,boxShadow:"0px 2px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12)"},"& .MuiSwitch-thumb":{width:g?16:24,height:g?16:24,backgroundColor:d.palette.grey[700],"&::before":{content:"''",position:"absolute",width:"85%",height:"85%",left:0,top:0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M19,13H5V11H19V13Z"/></svg>')`}},"& .MuiSwitch-track":{backgroundColor:d.palette.grey[500],borderRadius:20/2}}}),names={top:"Top of HTML Body",bottom:"Bottom of HTML Body"};function CustomHtmlPage({setTitleSide:d}){const{data:m,reload:g}=useApiEx("get_custom_html"),{customHtmlSection:x}=useSnapState$1(),[b,E]=reactExports.useState({}),[v,S]=reactExports.useState({});reactExports.useEffect(()=>{m&&(S(m.sections),k(m.enabled))},[m]),reactExports.useEffect(()=>E(v),[v]);const C=reactExports.useMemo(()=>{const D=_.sortBy(Object.keys(b),isNumeric);return D.length&&!D.includes(x)&&(state$1.customHtmlSection=_.findKey(b,Boolean)||(D==null?void 0:D[0])||""),D.map(A=>{var I;return{value:A,label:(names[A]||prefix("HTTP ",HTTP_MESSAGES[A])||_.startCase(A))+((I=b[A])!=null&&I.trim()?" *":"")}})},[useDebounce(b,500)]),T=reactExports.useMemo(()=>!_.isEqualWith(v,b,(D,A)=>!D&&!A||void 0),[v,b]),[R,k]=reactExports.useState();return d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},md("Add HTML code to some parts of the Front-end. It's saved to file `custom.html`, that you can edit directly with your editor of choice. "),wikiLink("customization","More help")),reactExports.createElement(Alert,{severity:"info"},md("To customize icons "),wikiLink("customization#icons","read documentation"))),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{display:"flex",alignItems:"center",gap:1,mb:1},reactExports.createElement(SelectField,{label:"Section",value:x,options:C,onChange:D=>state$1.customHtmlSection=D}),reloadBtn(g),reactExports.createElement(IconBtn,{icon:Save,title:`Save
807
- (ctrl+enter)`,modified:T,onClick:L}),hTooltip("Enable all sections",void 0,switchBtn(R,D=>vt(this,null,function*(){yield apiCall("set_config",{values:{[CFG.disable_custom_html]:!D}}),k(D)})))),reactExports.createElement(TextEditor,{lang:x==="style"?"css":x==="script"?"js":"html",value:(b==null?void 0:b[x])||"",style:{background:"#8881"},onValueChange(D){E(A=>$t(Fe({},A),{[x]:D}))},onKeyDown(D){["s","S","Enter"].includes(isCtrlKey(D))&&(L(),D.preventDefault())}}));function L(){return apiCall("set_custom_html",{sections:b}).then(()=>S(b))}}const COUNTRIES=ALL.filter(d=>WITH_IP.includes(d.code)),PORT_FORWARD_URL="https://portforward.com/",HIGHER_PORT=1080,MSG_ISP=reactExports.createElement("div",{},"HFS will probably not be reachable on the Internet. ",wikiLink("Work-on-the-internet#double-nat","Read more"));function InternetPage({setTitleSide:d}){var ee,ce,fe,ae,ue;const[m,g]=reactExports.useState(),[x,b]=reactExports.useState(!1),[E,v]=reactExports.useState(!1),S=useApiEx("get_status"),C=useApiEx("get_config",{only:[CFG.base_url]}),T=(ee=C.data)==null?void 0:ee[CFG.base_url],R=with_([(fe=(ce=S.data)==null?void 0:ce.http)==null?void 0:fe.error,(ue=(ae=S.data)==null?void 0:ae.https)==null?void 0:ue.error],([pe,ge])=>pe&&ge?"error":pe||ge?"warning":"success"),k=useApiEx("get_nat",{},{timeout:20}),{data:L}=useApiEx("get_public_ips"),{data:D}=k,A=D==null?void 0:D.internalPort,I=(D==null?void 0:D.mapped)&&D.mapped.private.port!==A&&D.mapped.private.port,N=(D==null?void 0:D.externalIp)&&L&&!L.includes(D.externalIp),z=useRequestRender();return reactExports.useEffect(()=>{z.state&&re(!0)},[z.state]),d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"This page makes sure your site is working correctly on the Internet"),[])),reactExports.createElement(Flex$1,{vert:!0,gap:"2em",maxWidth:"40em"},Q(),J(),W(),B(),Y());function j(pe){return pe.replace(new RegExp(".+<body>(.+)<\\/body>.+","is"),(ge,ye)=>ye||ge).replace(/<[^>]+>/g," ")}function Y(){const{data:pe}=useApiEvents("get_dynamic_dns_error"),ge=reactExports.useRef();return reactExports.useEffect(()=>ge.current&&restartAnimation(ge.current,"1s blink"),[pe]),reactExports.createElement(TitleCard,{icon:Dns,title:"Dynamic DNS updater"},pe&&reactExports.createElement(Flex$1,{},pe.error?reactExports.createElement(ErrorIcon,{color:"error",ref:ge}):reactExports.createElement(Check,{color:"success",ref:ge}),formatTimestamp$1(pe.ts)," – ",prefix("Error: ",j(pe.error)).slice(0,500)||"Updated successfully"),"This tool can keep your domain updated with your latest IP address. Not every service is compatible, and most of them have their own software for the job, which is superior, but we offer this lightweight solution in case you are more keen to it.",reactExports.createElement(ConfigForm,{form:(ye,{setValues:Ee})=>({fields:[reactExports.createElement(Flex$1,{},_.map({NoIP:{url:"https://$username:$password@dynupdate.no-ip.com/nic/update?hostname=$domain",fields:["username","password","domain"]},DuckDNS:{url:"https://www.duckdns.org/update/$domain/$token>OK",fields:[{k:"domain",helperText:"do NOT include the .duckdns.org part"},"token"]}},({url:ve,fields:Se},$e)=>reactExports.createElement(Btn$1,{key:ve,onClick:()=>formDialog$1({title:$e+" wizard",form:{maxWidth:"20em",before:reactExports.createElement(Box,{mb:1},"Following information is stored non-encrypted"),fields:Se.map(Me=>_.isString(Me)?{k:Me}:Me)}}).then(Me=>Me&&Ee({[CFG.dynamic_dns_url]:replace(ve,Me,"$")}))},$e+" wizard"))),{k:CFG.dynamic_dns_url,label:"Updater URL",multiline:!0,helperText:"Refer to your DNS service provider to know what URL can automatically keep your domain updated. Supported symbols are $IP4, $IP6, $IPX. Optionally, you can append “>” followed by a regular expression to determine a successful answer, otherwise status code will be used."}]})}))}function B(){const pe=reactExports.useMemo(()=>COUNTRIES.map(ge=>({value:ge.code,label:ge.name})),[COUNTRIES]);return reactExports.createElement(TitleCard,{title:"Geo IP",icon:Public},reactExports.createElement(ConfigForm,{keys:[CFG.geo_enable,CFG.geo_allow,CFG.geo_list,CFG.geo_allow_unknown],form:ge=>{var ye;return{fields:[{k:CFG.geo_enable,comp:BoolField,label:"Enable",helperText:md("Necessary database will be downloaded every month (2MB). Service is made possible thanks to [IP2Location](https://www.ip2location.com).")},...ge!=null&&ge[CFG.geo_enable]?[{k:CFG.geo_allow,comp:SelectField,label:"Rule",options:{"no restriction":null,"block selected countries":!1,"allow selected countries":!0}},ge[CFG.geo_allow]!=null&&{k:CFG.geo_list,comp:MultiSelectField,label:`Selected countries (${((ye=ge[CFG.geo_list])==null?void 0:ye.length)||0})`,valueSeparator:!1,placeholder:"none",options:pe,renderOption:Ee=>reactExports.createElement(Country,{code:Ee.value,long:!0}),clearable:!0,getError:Ee=>ge[CFG.geo_allow]&&!(Ee!=null&&Ee.length)&&"Cannot be empty"},ge[CFG.geo_allow]!=null&&{k:CFG.geo_allow_unknown,comp:SelectField,label:"When country cannot be determined",helperText:"Local IPs are ignored",options:{Allow:!0,Block:!1}}]:[]]}},addToBar:[reactExports.createElement(Box,{flex:1}),reactExports.createElement(Btn$1,{icon:Search,onClick:U},"Lookup IP")]}))}function U(){return vt(this,null,function*(){const pe=yield promptDialog$1("Lookup IP");if(!pe)return;const{country:ge}=yield apiCall("geo_ip",{ip:pe});return ge?alertDialog$1(reactExports.createElement(Country,{code:ge,long:!0}),"success"):alertDialog$1("IP not found","error")})}function W(){var De;const[pe,ge]=reactExports.useState(),ye=useApiEx("get_cert");reactExports.useEffect(()=>{apiCall("get_config",{only:["acme_domain","acme_renew"]}).then(ge)},[]);const[Ee,ve]=reactExports.useState(!1);if(!pe)return reactExports.createElement(CircularProgress);const{https:Se}=S.data||{},$e=(Se==null?void 0:Se.port)===PORT_DISABLED,Me=Se==null?void 0:Se.error;return S.element||reactExports.createElement(TitleCard,{title:"HTTPS",icon:Lock,color:Se!=null&&Se.listening&&!Me?"success":"warning"},Me?reactExports.createElement(Alert,{severity:"warning"},Me):$e&&reactExports.createElement(LinkBtn,{onClick:V},"Not enabled"),ye.element||with_(ye.data,Le=>{var Ge,Ie;return Le.none?reactExports.createElement(LinkBtn,{onClick:Re},"No certificate configured"):reactExports.createElement(Box,{},reactExports.createElement(CardMembership,{fontSize:"small",sx:{mr:1,verticalAlign:"middle"}}),"Current certificate",reactExports.createElement("ul",{},reactExports.createElement("li",{},"Domain: ",((Ge=Le.altNames)==null?void 0:Ge.join(" + "))||"-"),reactExports.createElement("li",{},"Issuer: ",((Ie=Le.issuer)==null?void 0:Ie.O)||reactExports.createElement("i",{},"self-signed")),reactExports.createElement("li",{},"Validity: ",["validFrom","validTo"].map(Ye=>formatTimestamp$1(Le[Ye])).join(" – "))))}),reactExports.createElement(Divider),reactExports.createElement(Form,{gap:1,gridProps:{rowSpacing:1},values:pe,set(Le,Ge){ge(Ie=>{const Ye=$t(Fe({},Ie),{[Ge]:Le});return ve(!0),apiCall("set_config",{values:Ye}).finally(()=>ve(!1)),Ye})},fields:[md("Generate certificate using [Let's Encrypt](https://letsencrypt.org)"),{k:"acme_domain",label:"Domain for certificate",sm:((De=pe.acme_domain)==null?void 0:De.length)>30?12:6,required:!0,multiline:!0,fromField:Le=>Le.replaceAll(`
805
+ `,quote:'"'},CSV_INITAL_STATE={field:0,fieldOffset:0,line:0,lineOffset:0,quoted:!1,appendCell:!1,appendField:!1,appendRow:!1};class ParseError extends Error{constructor(m,g){super(`Invalid CSV at ${m}:${g}`)}}class Parser{constructor(m=DefaultConfiguration){Xo(this,"_rows",[]);Xo(this,"_row",[]);Xo(this,"_cell","");Xo(this,"_options",DefaultConfiguration);Xo(this,"_state",Fe({},CSV_INITAL_STATE));Xo(this,"_index",0);Xo(this,"_current","");Xo(this,"_previous","");Xo(this,"_quoteState",Fe({},CSV_INITAL_STATE));this._options=Object.assign({},DefaultConfiguration,m)}parse(m){for(this.reset(),this._index=0;this._index<m.length;this._index++)this._state.appendCell=!0,this._previous=this._current,this._current=m[this._index],this.handleNext();if(this._row.length>0&&(this.addField(this.fieldValue(this._cell),this._row,this._state),this.addRow(this._row,this._rows,this._state)),this._state.quoted)throw new ParseError(this._quoteState.line,this._quoteState.lineOffset);return this.makeImmutable(),this._rows}get rows(){return this._rows}get json(){if(this.rows.length>0){const m=this.rows[0].filter(g=>typeof g=="string");return Object.freeze(this.rows.filter((g,x)=>g&&x>0).map(g=>{const x={};return m.forEach((b,E)=>{x[b]=g[E]}),Object.freeze(x)}))}return Object.freeze([])}handleNext(){this.handleQuote()||this.handleFieldSeparator()||this.handleLineSeparator(),this.processState()}handleQuote(){return this._current===this._options.quote?(this._quoteState=Fe({},this._state),this._previous==="\\"?this.handleQuoteEscaped():this.handleQuoteNotEscaped(),!0):!1}handleQuoteEscaped(){this._cell=this._cell.slice(0,Math.max(0,this._cell.length-1))}handleQuoteNotEscaped(){if(this._cell.length===0||this._state.quoted)this._state.quoted=!this._state.quoted;else throw new ParseError(this._state.line,this._state.lineOffset);this._state.appendCell=!1}handleFieldSeparator(){return this._current===this._options.fieldSeparator?(this._state.quoted||(this._state.appendCell=!1,this._state.appendField=!0),!0):!1}handleLineSeparator(){return this._current===this._options.lineSeparator?(this._state.quoted||(this._state.appendCell=!1,this._state.appendField=!0,this._state.appendRow=!0),!0):!1}processState(){this._state.appendCell&&(this._cell+=this._current),this._state.appendField&&(this.addField(this.fieldValue(this._cell),this._row,this._state),this._cell=""),this._state.appendRow&&(this.addRow(this._row,this._rows,this._state),this._row=[]),this._state.lineOffset++,this._state.fieldOffset++}fieldValue(m){return m}addField(m,g,x){g.push(m),x.field++,x.fieldOffset=-1,x.appendField=!1}addRow(m,g,x){g.push(m),x.field=0,x.line++,x.lineOffset=-1,x.appendRow=!1}makeImmutable(){this.rows.forEach(m=>{m.forEach(g=>Object.freeze(g)),Object.freeze(m)}),Object.freeze(this._rows)}reset(){this._rows=[],this._row=[],this._cell="",this._state=Fe({},CSV_INITAL_STATE),this._index=0,this._current="",this._previous="",this._quoteState=Fe({},CSV_INITAL_STATE)}}function importAccountsCsv(d){return yt(this,null,function*(){selectFiles(m=>yt(this,null,function*(){const g=m==null?void 0:m[0];if(!g)return;const x=yield readFile(g);if(!x)return;const E=new Parser().parse(x.trim()),v={comp:NumberField,min:1,max:9,xs:6,typing:!0},S={skipFirstLines:0,usernameColumn:1,passwordColumn:2,groupColumn:3,redirectColumn:4,overwriteExistingAccounts:!1},C=yield formDialog$1({title:"Import accounts from CSV",dialogProps:{maxWidth:"sm"},values:S,form:k=>{const L=E[k.skipFirstLines||0],D=R(L,Fe(Fe({},S),k));return{save:{startIcon:reactExports.createElement(Upload),children:"Go"},fields:[reactExports.createElement(Box,{p:1},"Total lines:",E.length),{k:"skipFirstLines",comp:NumberField,max:E.length-1,typing:!0,md:6,helperText:reactExports.createElement(reactExports.Fragment,{},"First line: ",reactExports.createElement("code",{},L.join(", ")))},{k:"overwriteExistingAccounts",comp:BoolField,md:6},$t(Fe({k:"usernameColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First username: ",D.u)}),$t(Fe({k:"passwordColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First password: ",D.p)}),$t(Fe({k:"groupColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First group: ",D.g)}),$t(Fe({k:"redirectColumn"},v),{helperText:reactExports.createElement(reactExports.Fragment,{},"First redirect: ",D.r)})]}}});if(!C)return;const{close:T}=newDialog({title:"Importing...",Content(){const[k,L]=reactExports.useState(0),[D,A]=reactExports.useState();return reactExports.useEffect(()=>{let I=!1;return setTimeout(()=>yt(this,null,function*(){var B;if(I)return;let N=0,z=0,j=C.skipFirstLines;const Y=E.length-j;try{let U=0;for(const W of E){if(I)return;if(j){j--;continue}const V=R(W,C);A(V),L(U++/Y),yield apiCall("add_account",{username:V.u,belongs:(B=V.g)==null?void 0:B.split(","),redirect:V.r,overwrite:C.overwriteExistingAccounts}).then(()=>{if(V.p)return apiNewPassword(V.u,V.p)},J=>{if(J.code===HTTP_CONFLICT)return z++;N++})}}finally{T();const U=Y-N-z,W="Results: "+[prefix("",N," failed"),prefix("",U," succeeded"),prefix("",z," skipped because already present")].filter(Boolean).join(", ");alertDialog$1(W,!U&&N?"error":N||z?"warning":"success"),d==null||d()}})),()=>{I=!0}},[]),reactExports.createElement(Box,{display:"flex",gap:2,alignItems:"center"},reactExports.createElement(IconProgress,{icon:Group,progress:k}),D==null?void 0:D.u)}});function R(k,L){return{u:k[L.usernameColumn-1],p:k[L.passwordColumn-1],g:k[L.groupColumn-1],r:k[L.redirectColumn-1]}}}),{multiple:!1,accept:".csv"})})}function AccountsPage(){const{username:d,accountsAsTree:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_accounts"),[E,v]=reactExports.useState([]),S=Array.isArray(E);reactExports.useEffect(()=>{Array.isArray(g==null?void 0:g.list)&&S&&v(E.filter(Y=>g.list.find(B=>(B==null?void 0:B.username)===Y)))},[g]);const C=reactExports.useMemo(()=>g&&_.sortBy(g.list,[Y=>!Y.isGroup,Y=>!Y.adminActualAccess,"username"]),[g]),T=S&&_.find(C,{username:E[0]}),R="md",k=useBreakpoint(R),L=!(E.length>0)||!C?null:S&&E.length>1?reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},E.length+" selected"),reactExports.createElement(Btn$1,{onClick:j,icon:Delete},"Remove")),reactExports.createElement(List,{},E.map(Y=>reactExports.createElement(ListItem,{key:Y},reactExports.createElement(ListItemText,{},Y))))):with_(T||N(),Y=>reactExports.createElement(AccountForm,{account:Y,groups:C.filter(B=>B.isGroup).map(B=>B.username),addToBar:k&&[reactExports.createElement(Box,{flex:1}),account2icon(Y,{fontSize:"large",sx:{p:1}}),reactExports.createElement(IconBtn,{icon:Close,title:"Close",onClick:z})],reload:x,done(B){v(k?[B]:[]),x(),toast$1("Account saved","success")}}));reactExports.useEffect(()=>{if(k||!L||!E.length)return;const{close:Y}=newDialog({title:_.isString(E)?_.startCase(E):E.length>1?"Multiple selection":T?(T.isGroup?"Group: ":"User: ")+T.username:"?",Content:()=>L,onClose:z});return()=>void Y()},[k,E,T]);const D={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"},[A,I]=useToggleButton("Show tree","Show list",()=>({icon:AccountTree}),m);return state$1.accountsAsTree=A,b||reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[R]:5,lg:4,xl:5},D),reactExports.createElement(Box,{display:"flex",flexWrap:"wrap",gap:2,mb:2,boxShadow:Y=>`0px -8px 4px 10px ${Y.palette.background.paper}`,sx:{position:"sticky",top:0,zIndex:2,backgroundColor:"background.paper",width:"fit-content"}},reactExports.createElement(MenuButton,{variant:"contained",startIcon:reactExports.createElement(PersonAdd),items:[{children:"user",onClick:()=>v("new-user")},{children:"group",onClick:()=>v("new-group")},{children:"from CSV",onClick:()=>importAccountsCsv(x)}]},"Add"),reloadBtn(x),I,(C==null?void 0:C.length)>0&&reactExports.createElement(Typography,{p:1},`${C.length} account(s)`)),!(C!=null&&C.length)&&reactExports.createElement(Alert,{severity:"info"},md`To access administration <u>remotely</u> you will need to create a user account with admin permission`),reactExports.createElement(TreeView,{multiSelect:!0,sx:{pr:4,pb:2,minWidth:"15em"},selected:S?E:[],defaultCollapseIcon:reactExports.createElement(ExpandMore),defaultExpandIcon:reactExports.createElement(ChevronRight),onNodeSelect(Y,B){var U,W;(W=(U=Y.target)==null?void 0:U.closest)!=null&&W.call(U,".MuiTreeItem-iconContainer")||v(B)}},C&&function Y(B){return B.map(U=>{var W,V;return reactExports.createElement(TreeItem,{key:U.username,nodeId:U.username,label:reactExports.createElement(Box,{sx:{display:"flex",flexWrap:"wrap",padding:".2em 0",columnGap:".5em",alignItems:"center"}},account2icon(U),(U.disabled||U.canLogin===!1)&&iconTooltip(DoNotDisturb,U.disabled?"Disabled":"Disabled by its groups",U.disabled?void 0:{color:"text.secondary"}),(U.expire||U.days_to_live)&&reactExports.createElement(Schedule),U.adminActualAccess&&iconTooltip(MilitaryTech,"Can login into Admin"),U.username,!!((W=U.belongs)!=null&&W.length)&&reactExports.createElement(Box,{sx:{color:"text.secondary",fontSize:"small"}},"(",(V=U.belongs)==null?void 0:V.join(", "),")"))},A&&Y(C.filter(J=>{var Q;return(Q=U.directMembers)==null?void 0:Q.includes(J.username)})))})}(A?C.filter(Y=>!C.some(B=>{var U;return(U=B.members)==null?void 0:U.includes(Y.username)})):C))),k&&L&&reactExports.createElement(Grid,Fe({item:!0,[R]:!0,maxWidth:"100%"},D),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},L))));function N(){return{username:"",hasPassword:E==="new-user",adminActualAccess:!1,invalidated:void 0,canLogin:!0,canChangePassword:!0,isGroup:E==="new-group",members:[],directMembers:[]}}function z(){v([])}function j(){return yt(this,null,function*(){const Y=_.without(E,d);if(E.length>Y.length&&!(yield confirmDialog$1("You cannot ask to delete the account you are using. Continue with the rest?")))return;if(!Y.length)return alertDialog$1("Nothing to delete","info");if(!(yield confirmDialog$1(`Delete ${Y.length} item(s)?`)))return;const B=[];for(const U of Y)(yield apiCall("del_account",{username:U}).then(()=>1,()=>0))||B.push(U);if(x(),B.length)return alertDialog$1("Following elements couldn't be deleted: "+B.join(", "),"error")})}}function account2icon(d,m={}){return reactExports.createElement(d.isGroup?Group:Person,m)}const ACCEPT_LINK="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept";function FileForm({file:d,addToBar:m,statusApi:g,accounts:x,saved:b,isSideBreakpoint:E}){var ue,pe,ye;const ae=d,{parent:v,children:S,isRoot:C,byMasks:T}=ae,R=Vt(ae,["parent","children","isRoot","byMasks"]),[k,L]=reactExports.useState(R);reactExports.useEffect(()=>{L(Object.assign(objSameKeys(defaultPerms,()=>null),R))},[d]);const D=reactExports.useMemo(()=>{let Ee=d.parent;for(;Ee;){if(Ee.default!=null)return Ee.default;Ee=Ee.parent}},[d]),{source:A}=d,I=d.type==="folder",N=!d.type&&A&&d.size<0,z=k.url!==void 0,j=A!==void 0,Y=j&&I,B=useBreakpoint("xl"),U=!z&&(B||j),W=!z&&B||j&&!Y,V=d.accept>""||I&&((pe=d.can_upload)!=null?pe:(ue=d.inherited)==null?void 0:ue.can_upload),J=I,Q=useDialogBarColors(),{movingFile:X}=useSnapState$1(),re=!j&&reactExports.createElement(Box,{color:"warning.main",component:"span"},"Works only on folders with disk source! "),ie={can_read:!z,can_see:!0,can_archive:!z,can_list:I,can_upload:I,can_delete:I},oe=!k.icon,Z=k.icon&&!k.icon.includes("."),ee=A&&basename(A),ce=ee===k.name;return reactExports.createElement(Form,{values:k,set(Ee,ve){L(Se=>(ve==="source"&&ce&&(Se.name=basename(Ee)),$t(Fe({},Se),{[ve]:Ee})))},barSx:Fe({gap:2,width:"100%"},Q),stickyBar:!0,addToBar:[I&&!E&&reactExports.createElement(AddVfsBtn,{variant:"outlined"},"Add"),reactExports.createElement(IconBtn,{icon:ContentCut,disabled:C||X===d.id,title:"Cut (you can also use drag & drop to move items)","aria-label":"Cut",onClick(){state$1.movingFile=d.id,alertDialog$1(reactExports.createElement(Box,{},"Now that this is marked for moving, click on the destination folder, and then the paste button ",reactExports.createElement(ContentPaste)),"info")}}),X&&reactExports.createElement(IconBtn,{icon:ContentPaste,disabled:d.type!=="folder"||d.id.startsWith(X)||d.id===X.replace(/[^/]+\/?$/,""),title:X,onClick(){return state$1.movingFile="",moveVfs(X,d.id)}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Delete",confirm:`Delete ${d.name}?`,disabled:C,onClick:()=>apiCall("del_vfs",{uris:[d.id]}).then(({errors:[Ee]})=>{Ee?alertDialog$1(xlate(Ee,HTTP_MESSAGES),"error"):reloadVfs([])})}),...wantArray(m)],onError:alertDialog$1,save:$t(Fe({},propsForModifiedValues(isModifiedConfig(k,R))),{onClick(){return yt(this,null,function*(){const Ee=_.omit(k,["birthtime","mtime","size","id"]);Ee.masks||(Ee.masks=null),yield apiCall("set_vfs",{uri:k.id,props:Ee}),Ee.name!==d.name&&(state$1.selectedFiles[0].id=d.parent.id+Ee.name+(I?"/":"")),reloadVfs(),b()})}}),fields:[C?reactExports.createElement(Alert,{severity:"info"},"This is the Home folder, the root of your shared files. Options set here will be applied to all files."):I&&j&&reactExports.createElement(Alert,{severity:"info"},'To set permissions on individual items in folder, add them by clicking Add button, and then "from disk"'),$t(Fe({k:"name",required:!0,xl:!0,helperText:j&&"You can decide a name that's different from the one on your disk"},C&&{disabled:!0,value:"Home folder"}),{end:ee&&!ce&&reactExports.createElement(Btn$1,{icon:RestartAlt,title:"Reset to same name on disk",onClick:()=>L($t(Fe({},k),{name:ee}))})}),z?{k:"url",label:"URL",lg:12,xl:8,required:!0}:{k:"source",label:"Disk source",xl:!0,comp:FileField,files:N||!I,folders:N||I,placeholder:"none",helperText:k.source?I?"Files from this path on disk will be listed, but you can add more":void 0:"If you enter a path here, its content will be listed. Leaving this empty, makes this folder fully virtual."},{k:"id",comp:LinkField,statusApi:g,xs:12},{k:"order",comp:NumberField,min:-1e5,max:1e5,placeholder:"default",sm:4,helperText:wikiLink("Virtual-file-system#order","To force position")},{k:"iconType",comp:SelectField,options:["default","file","embedded"],value:k.icon?Z?"embedded":"file":"default",fromField:Ee=>L($t(Fe({},k),{icon:Ee==="default"?"":Ee==="file"?"select.a.file":Object.keys(SYS_ICONS)[0]})),xs:!0,sm:oe?8:!0},!oe&&Fe({k:"icon",xs:8,sm:4},Z?{comp:SelectField,options:_.map(_.uniqBy(_.map(SYS_ICONS,(Ee,ve)=>{var Se;return[ve,Ee[0],(Se=Ee[1])!=null?Se:ve]}),Ee=>Ee[2]),([Ee,ve])=>({value:Ee,label:reactExports.createElement(Flex$1,{gap:".5em"},hIcon(Ee),hIcon(ve)," ",Ee)})),helperText:"Second icon you see is the fallback"}:{label:"Icon file",placeholder:"default",comp:FileField,fileMask:IMAGE_FILEMASK}),fe("can_read","Who can see but not download will be asked to login"),fe("can_archive","Should this be included when user downloads as ZIP"),fe("can_list","Permission to requests the list of a folder. The list will include only things you can see.",{contentText:"subfolders"}),fe("can_delete",[re,"Those who can delete can also rename and cut/move"]),fe("can_upload",re,{contentText:"subfolders"}),fe("can_see",["See this item in the list. ",wikiLink("Permissions","More help.")]),z&&{k:"target",comp:BoolField,sm:!0,label:"Open in new browser",fromField:Ee=>Ee?"_blank":null,toField:Ee=>Ee>""},W&&{k:"size",comp:DisplayField,sm:6,lg:4,toField:formatBytes},U&&{k:"birthtime",comp:DisplayField,sm:6,lg:W&&4,label:"Created",toField:formatTimestamp$1},U&&{k:"mtime",comp:DisplayField,sm:6,lg:W&&4,label:"Modified",toField:formatTimestamp$1},V&&{k:"accept",label:"Accept on upload",placeholder:"anything",xl:J?4:12,helperText:reactExports.createElement(Link$1,{href:ACCEPT_LINK,target:"_blank"},"Example: .zip")},J&&{k:"default",comp:BoolField,xl:V?8:12,label:"Serve as web-page if index.html is found"+(D&&k.default==null?" (inherited)":""),value:(ye=k.default)!=null?ye:D,toField:Boolean,fromField:Ee=>Ee&&!D?"index.html":Ee?null:!1,helperText:md("...instead of showing list of files")},{k:"comment",multiline:!0,xl:!0},I&&{k:"masks",multiline:!0,xl:6,toField:YAML.stringify,fromField:Ee=>Ee?YAML.parse(Ee):void 0,comp:TextEditorField,lang:"yaml",helperText:["Special field, leave empty unless you know what you are doing. YAML syntax. ",wikiLink("Masks-field","(examples)")]}]});function fe(Ee,ve,Se={}){var De,Be,Le,Ge;if(!ie[Ee])return null;const $e=[Ee,...onlyTruthy(_.map(ie,(Ie,Ye)=>!Ie&&Ye))],Me=_.difference(Object.keys(defaultPerms),$e);let Re=(Be=(De=d.inherited)==null?void 0:De[Ee])!=null?Be:defaultPerms[Ee];for(;typeof Re=="string"&&_.get(ie,Re)===!1;)Re=(Ge=(Le=_.get(k,Re))!=null?Le:_.get(d.inherited,Re))!=null?Ge:_.get(defaultPerms,Re);return Fe({comp:WhoField,k:Ee,sm:6,lg:12,xl:4,parent:v,accounts:x,helperText:ve,isDir:I,otherPerms:Me.map(Ie=>({value:Ie,label:who2desc(Ie)})),label:"Who can "+perm2word(Ee),inherit:Re,byMasks:T==null?void 0:T[Ee],fromField:Ie=>Ie!=null?Ie:null},Se)}}function perm2word(d){return xlate(d.split("_")[1],{read:"download",archive:"zip",list:"access list"})}function WhoField(A){var I=A,{value:d,onChange:m,parent:g,inherit:x,accounts:b,helperText:E,otherPerms:v,byMasks:S,hideValues:C,isChildren:T,isDir:R,contentText:k="folder content",setApi:L}=I,D=Vt(I,["value","onChange","parent","inherit","accounts","helperText","otherPerms","byMasks","hideValues","isChildren","isDir","contentText","setApi"]);const N=who2desc(S!=null?S:x)+prefix(" (",S!==void 0?"from masks":g!==void 0?"as parent folder":"default",")"),z=isWhoObject(d),j=z?d.this:d,Y=reactExports.useMemo(()=>onlyTruthy([{value:null,label:N},{value:!0},{value:!1},{value:"*"},...v,{value:[],label:"Select accounts"}].map(V=>!(C!=null&&C.includes(V.value))&&Fe({label:who2desc(V.value)},V))),[x,g,j,...wantArray(C)]),B=500,U=Array.isArray(j);return reactExports.createElement(Box,{sx:{borderRight:z?"8px solid #8884":void 0,transition:`all ${B}ms`}},reactExports.createElement(SelectField,$t(Fe({},D),{value:U?[]:j!=null?j:null,onChange(V,{event:J}){m(z?W($t(Fe({},d),{this:V!=null?V:void 0})):V!=null?V:void 0,{was:d,event:J})},options:Y})),reactExports.createElement(Collapse,{in:U,timeout:B},U&&reactExports.createElement(MultiSelectField,$t(Fe({label:b!=null&&b.length?"Accounts "+D.label:"You didn't create any account yet",value:j,onChange:m,options:(b==null?void 0:b.map(V=>({value:V.username,label:V.username,a:V})))||[],placeholder:"none"},j.length===0&&{helperText:"Select some account",error:!0}),{renderOption:V=>{var J;return reactExports.createElement("span",{},((J=V.a)==null?void 0:J.isGroup)&&account2icon(V.a)," ",V.label)}}))),reactExports.createElement(FormHelperText,{},E,!T&&R&&reactExports.createElement(LinkBtn,{sx:{display:"block",mt:-.5},onClick(V){m(z?j:{this:j,children:j==null?!x:void 0},{was:d,event:V})}},z?"Set same permission for ":"Set different permission for ",k)),!T&&reactExports.createElement(Collapse,{in:z,timeout:B},reactExports.createElement(WhoField,{label:"Permission for "+k,parent:g,inherit:x,accounts:b,otherPerms:v,isDir:R,value:z?d==null?void 0:d.children:void 0,isChildren:!0,hideValues:[j!=null?j:x,j],onChange(V,{event:J}){z&&m(W($t(Fe({},d),{children:V})),{was:d,event:J})}})));function W(V){return V.this===V.children?V.this:V}}function who2desc(d){return d===!1?"No one":d===!0?"Anyone":d==="*"?"Any account login":Array.isArray(d)?d.join(", "):typeof d=="string"?`As "can ${perm2word(d)}"`:"*UNKNOWN*"+JSON.stringify(d)}function LinkField({value:d,statusApi:m}){const{reload:g,error:x}=m,b=useRequestRender();reactExports.useEffect(()=>m.sub(b),[]);const E=m.getData(),v=E&&(E.urls.https||E.urls.http||[E.base_url]),S=try_(()=>normalizeHost(new URL(E==null?void 0:E.baseUrl).host)),C=reactExports.useMemo(()=>S&&_.find(E.roots,(D,A)=>matches(S,A)),[E]);C&&d&&(d=d.indexOf(C)===1?d.slice(C.length):void 0);const T=prefix((E==null?void 0:E.baseUrl)||"",d),R=reactExports.useMemo(()=>reactExports.forwardRef((D,A)=>reactExports.createElement(Link$1,$t(Fe({ref:A},D),{href:T,style:{height:"auto",overflow:"hidden",textOverflow:"ellipsis"},target:"frontend"}),T)),[T]);return reactExports.createElement(Box,{display:"flex"},S?v?reactExports.createElement(DisplayField,{label:"Link",className:"maskInTests",value:T||`outside of configured main address (${S})`,error:x,InputProps:T?{inputComponent:R}:void 0,end:reactExports.createElement(Box,{},reactExports.createElement(IconBtn,{icon:ContentCopy,title:"Copy",disabled:!T,onClick:()=>copyTextToClipboard(T)}),reactExports.createElement(IconBtn,{icon:QrCode2,title:"QR Code",onClick:k,disabled:!T}),reactExports.createElement(IconBtn,{icon:Edit,title:"Change",onClick(){changeBaseUrl().then(g)}}))}):"error":"Invalid baseUrl");function k(){newDialog({title:"QR Code",dialogProps:{sx:{bgcolor:"background.default",border:"1px solid"}},Content(){const D=useTheme$1();return reactExports.createElement("canvas",{ref:A=>A&&L(A,T,D.palette.text.primary),style:{width:"100%"}})}})}function L(D,A,I){return yt(this,null,function*(){try{QrCreator$1.render({text:A,radius:0,ecLevel:"H",fill:I,background:null,size:300},D)}catch(N){console.error("Error generating QR code:",N)}})}}function changeBaseUrl(){return yt(this,null,function*(){return new Promise(d=>yt(this,null,function*(){const m=yield apiCall("get_status"),{base_url:g,roots:x}=yield apiCall("get_config",{only:[CFG.base_url,CFG.roots]}),b=m.urls.https||m.urls.http,E=Object.keys(x).map(C=>C.split("|")).flat().filter(C=>!/[*?]/.test(C)),v=splitAt("//",b[0])[0]+"//";b.push(..._.difference(E.map(C=>v+C),b));const{close:S}=newDialog({title:"Main address",Content(){const[C,T]=reactExports.useState(g||""),R=new URL(C||b[0]).protocol+"//",k=b.includes(C)?"":C.slice(R.length),L=reactExports.createElement(Check,{sx:{ml:2}});return reactExports.createElement(Box,{display:"flex",flexDirection:"column"},reactExports.createElement(Box,{mb:2},"Choose a main address for your links"),reactExports.createElement(MenuList,{},reactExports.createElement(MenuItem,{selected:!C,onClick:()=>D("")},"Automatic",!C&&L),b.map(I=>reactExports.createElement(MenuItem,{key:I,selected:I===C,onClick:()=>D(I)},I,I===C&&L))),reactExports.createElement(StringField,{label:"Custom IP or domain",helperText:md(`You can type any address but *you* are responsible to make the address work.
806
+ This functionality is just to help you copy the link in case you have a domain or a complex network configuration.`),value:k,onChange:I=>D(prefix(R,I)),start:reactExports.createElement(SelectField,{value:R,onChange:I=>k?D(I+k):toast$1("Enter domain first"),options:["http://","https://"],size:"small",variant:"standard",sx:{"& .MuiSelect-select":{pt:"1px",pb:0}}}),sx:{mt:2}}),reactExports.createElement(Box,{mt:2,textAlign:"right"},reactExports.createElement(Btn$1,{icon:Save,children:"Save",onClick(){return yt(this,null,function*(){C!==g&&(yield apiCall("set_config",{values:{[CFG.base_url]:C.replace(/\/$/,"")}})),S(),d(C)})}})));function D(I){I.endsWith("/")&&(I=I.slice(0,-1)),T(I)}}})}))})}let selectOnReload,exposeVfsLoading;function VfsPage({setTitleSide:d}){var V,J,Q,X;const[m]=reactExports.useState(()=>new Map),{vfs:g,selectedFiles:x,movingFile:b}=useSnapState$1(),{data:E,reload:v,element:S,loading:C}=useApiEx("get_vfs");exposeVfsLoading=C,reactExports.useEffect(()=>{g||v()},[g,v]);const{data:T}=useApiEx("get_config",{only:[CFG.force_address,CFG.base_url]}),R="md",k=useBreakpoint(R),L=useApiEx("get_status"),{data:D}=L,A=reactExports.useMemo(()=>{var Z;const re=T==null?void 0:T[CFG.force_address],ie=(Z=(D==null?void 0:D.urls.https)||(D==null?void 0:D.urls.http))==null?void 0:Z.filter(ee=>{if(!re)return!0;const ce=normalizeHost(new URL(ee).host);return Object.keys(D.roots).some(fe=>matches(ce,fe))}),oe=re?T==null?void 0:T[CFG.base_url]:D==null?void 0:D.baseUrl;return oe&&ie&&!ie.includes(oe)&&ie.unshift(oe),ie},[D,T]),I=useApiEx("get_accounts"),N=reactExports.useMemo(()=>{var re;return _.sortBy((re=I==null?void 0:I.data)==null?void 0:re.list,"username")},[I.data]),z=reactExports.useRef(_.noop);reactExports.useEffect(()=>{var re;b===((re=x[0])==null?void 0:re.id)&&z.current()},[b]);const j=!((J=(V=E==null?void 0:E.root)==null?void 0:V.children)!=null&&J.length)&&!((Q=E==null?void 0:E.root)!=null&&Q.source),Y=reactExports.useMemo(()=>j?reactExports.createElement(Alert,{severity:"warning",children:reactExports.createElement(reactExports.Fragment,{},"Add something to your virtual file system — click the ",reactExports.createElement(Add),"button, or set a source for the Home folder")}):(A==null?void 0:A.length)>0&&reactExports.createElement(Alert,{severity:"info",children:["Your shared files can be browsed from ",reactExports.createElement("span",{className:HIDE_IN_TESTS,key:0},reactJoin(" or ",A.slice(0,3).map(re=>reactExports.createElement(Link$1,{href:re,target:"frontend"},re))))]}),[j,A]);d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},"If you rename or delete here, it's virtual, and only affects what is presented to the users"),Y),[Y]));const B=(x==null?void 0:x.length)<2&&x[0],U=I.element||!g||!x.length?null:B?reactExports.createElement(FileForm,{key:B.id,isSideBreakpoint:k,addToBar:k&&reactExports.createElement(Box,{flex:1,textAlign:"right",mr:1,color:"#8883"},vfsNodeIcon(B)),statusApi:L,saved:()=>z.current(),accounts:N!=null?N:[],file:B}):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{},reactExports.createElement(Typography,{variant:"h6"},x.length+" selected"),reactExports.createElement(Button,{onClick:deleteFiles,startIcon:reactExports.createElement(Delete)},"Remove")),reactExports.createElement(List,{dense:!0,disablePadding:!0},x.map(re=>reactExports.createElement(ListItem,{key:re.id},reactExports.createElement(ListItemText,{primary:re.name,secondary:re.source})))));if(reactExports.useEffect(()=>{if(k||!U||!x.length)return;const re=[""];{let oe=B&&B.parent;for(;oe&&!oe.isRoot;)re.push(oe.name),oe=oe.parent}const{close:ie}=newDialog({title:x.length>1?"Multiple selection":reactExports.createElement(Flex$1,{},vfsNodeIcon(x[0]),reactExports.createElement(Flex$1,{flexWrap:"wrap",gap:"0 0.5em"},x[0].name||"Home",reactExports.createElement(Box,{component:"span",color:"text.secondary"},re.join(" /")))),dialogProps:{sx:{justifyContent:"flex-end"}},Content:()=>U,onClose(){state$1.selectedFiles=[]}});return z.current=ie,()=>void ie()},[k,(X=_.last(x))==null?void 0:X.id]),reactExports.useEffect(()=>{if(state$1.vfs=void 0,!E)return;m.clear();const{root:re}=E;if(!re)return;re.isRoot=!0,oe(re),state$1.vfs=re,state$1.selectedFiles=ie()||onlyTruthy(state$1.selectedFiles.map(Z=>m.get(Z.id)));function ie(){selectOnReload&&z.current();const Z=selectOnReload&&onlyTruthy(selectOnReload.map(ee=>m.get(ee)));return selectOnReload=void 0,Z}function oe(Z,ee="/",ce=void 0){if(Z.parent=ce,Z.id=Z.isRoot?"/":prefix(ee,pathEncode(Z.name),Z.type==="folder"?"/":""),m.set(Z.id,Z),!!Z.children){Z.children=_.sortBy(Z.children,["type",fe=>{var ae;return(ae=fe.name)==null?void 0:ae.toLocaleLowerCase()}]);for(const fe of Z.children)oe(fe,Z.id,Z)}}},[E,m]),S)return m.clear(),S;const W={height:"100%",display:"flex",flexDirection:"column",overflow:"auto"};return reactExports.createElement(Grid,{container:!0,rowSpacing:1,columnSpacing:2,top:0,flex:"1 1 auto",height:0},reactExports.createElement(Grid,Fe({item:!0,xs:12,[R]:5,lg:6,xl:5},W),m.size>0&&reactExports.createElement(VfsTree,{id2node:m,statusApi:L})),k&&U&&reactExports.createElement(Grid,Fe({item:!0,[R]:!0,maxWidth:"100%"},W),reactExports.createElement(Card,{sx:{overflow:"initial"}},reactExports.createElement(CardContent,{},U))))}function reloadVfs(d){return selectOnReload=d,state$1.vfs=void 0,wait(100).then(()=>exposeVfsLoading)}function deleteFiles(){return yt(this,null,function*(){const d=state$1.selectedFiles;if(d.length&&(yield confirmDialog$1(`Delete ${d.length} item(s)?`)))try{const m=d.map(b=>b.id).sort();_.remove(m,(b,E)=>E&&_.findLastIndex(m,v=>b.startsWith(v),E-1)!==-1),_.pull(m,"/");const{errors:g}=yield apiCall("del_vfs",{uris:m}),x=m.filter((b,E)=>g[E]);if(x.length)return alertDialog$1("Following elements couldn't be deleted: "+x.join(", "),"error");reloadVfs()}catch(m){yield alertDialog$1(m)}})}const FolderIcon=Folder,FileIcon=InsertDriveFileOutlined;let once=!0;function VfsTree({id2node:d,statusApi:m}){var A;const{vfs:g,selectedFiles:x,expanded:b}=useSnapState$1(),E=reactExports.useRef(),v=reactExports.useCallback(function({node:I}){var V,Q,X,re;let{id:N,name:z,isRoot:j}=I;const Y=I.type==="folder",B=reactExports.useRef();return j&&B.current&&((V=B.current.firstElementChild)==null||V.classList.toggle("Mui-selected",!(x.length&&!_.find(x,{id:"/"})))),reactExports.createElement(TreeItem,{ref(ie){ie==null||ie.addEventListener("focusin",oe=>oe.stopImmediatePropagation()),B.current=ie},onDoubleClick:W,label:reactExports.createElement(Box,{draggable:!j,onDragStart(){E.current=N},onDragOver(ie){if(!Y)return;const oe=E.current;oe!=null&&oe.startsWith(N)&&!oe.slice(N.length+1,-1).includes("/")||ie.preventDefault()},onDrop(){return yt(this,null,function*(){const ie=E.current;ie&&(yield confirmDialog$1(`Moving ${ie} under ${N}`))&&moveVfs(ie,N)})},sx:{display:"flex",gap:".5em",minHeight:"1.8em",pt:".2em"}},reactExports.createElement(Box,{display:"flex",flex:0},vfsNodeIcon(I),reactExports.createElement(Box,{sx:{flex:0,ml:"2px",my:"2px","&>*":{fontSize:"87%",opacity:.6,mt:"-2px"},display:"grid",gridAutoFlow:"column",gridTemplateRows:"auto auto",height:"1em"}},I.can_delete!==void 0&&iconTooltip(Delete,"Delete permission"),I.can_upload!==void 0&&iconTooltip(Upload,"Upload permission"),!j&&!I.source&&!I.url&&iconTooltip(Cloud,"Virtual (no source)"),U(I.can_see)&&iconTooltip(RemoveRedEye,"Restrictions on who can see"),U(I.can_read)&&iconTooltip(Lock,"Restrictions on who can download"),I.default&&iconTooltip(Web,"Show as web-page"),I.masks&&iconTooltip(TheaterComedy,"Masks"),I.size===-1&&iconTooltip(HighlightOff,"Source not found"),with_(_.findKey((Q=m.data)==null?void 0:Q.roots,ie=>ie===N.slice(1)),ie=>ie&&iconTooltip(Home,`home for ${ie}`)))),j?"Home folder":z),collapseIcon:reactExports.createElement(ExpandMore,{onClick:W}),expandIcon:reactExports.createElement(ChevronRight,{onClick:W}),nodeId:N},j&&!((X=I.children)!=null&&X.length)?reactExports.createElement(TreeItem,{nodeId:"?",label:reactExports.createElement("i",{},"nothing here")}):(re=I.children)==null?void 0:re.map(ie=>reactExports.createElement(v,{key:ie.id,node:ie})));function U(ie){return ie!==void 0&&ie!==!0}function W(ie){const oe=state$1.expanded;state$1.expanded=oe.includes(N)?oe.filter(Z=>Z!==N):[...oe,N],ie.preventDefault(),ie.stopPropagation()}},[m.data]),S=reactExports.useRef(null),C=b.length===d.size,T=["/",...((A=g==null?void 0:g.children)==null?void 0:A.length)===1?[g.children[0].id]:[]];once&&(once=!1,state$1.expanded=T);const[R,k]=useToggleButton("Collapse all","Expand all",I=>({icon:I?UnfoldLess:UnfoldMore,sx:{rotate:I?0:"180deg"},onClick(){state$1.expanded=C?T:Array.from(d.keys())}}),C);reactExports.useEffect(()=>{state$1.expanded=_.uniq(state$1.expanded.concat(state$1.selectedFiles.map(I=>{var N;return((N=I.parent)==null?void 0:N.id)||""})))},[state$1.vfs]);const L="vfs",D=x[0];return reactExports.useEffect(()=>{var I;return(I=document.getElementById(`${L}-${D==null?void 0:D.id}`))==null?void 0:I.scrollIntoView({block:"nearest",behavior:"instant"})},[D]),reactExports.createElement(Flex$1,{flexDirection:"column",alignItems:"stretch",flex:1},reactExports.createElement(Flex$1,{mb:1,flexWrap:"wrap",gap:[1,2]},reactExports.createElement(Typography,{variant:"h6"},"Virtual File System"),reactExports.createElement(VfsMenuBar,{statusApi:m,add:k})),g&&reactExports.createElement(TreeView,{ref:S,expanded:toMutable(b),selected:x.map(I=>I.id),multiSelect:!0,id:L,sx:{height:0,flex:"1 1 auto",overflowX:"auto",maxWidth:S.current&&`calc(100vw - ${16+S.current.offsetLeft}px)`,"& ul":{borderLeft:"1px dashed #444",marginLeft:"15px",paddingLeft:"15px"}},onNodeSelect(I,N){typeof N!="string"&&(state$1.selectedFiles=onlyTruthy(N.map(z=>d.get(z))))}},reactExports.createElement(v,{node:g})))}function moveVfs(d,m){return apiCall("move_vfs",{from:d,parent:m}).then(()=>(reloadVfs([m+d.slice(1+d.lastIndexOf("/",d.length-2))]),!0),alertDialog$1)}function vfsNodeIcon(d){return d.isRoot?iconTooltip(Home,"home, or root if you like"):d.type==="folder"?iconTooltip(FolderIcon,"Folder"):d.url?iconTooltip(Link,"Web-link"):iconTooltip(FileIcon,"File")}var safeIsNaN=Number.isNaN||function(m){return typeof m=="number"&&m!==m};function isEqual(d,m){return!!(d===m||safeIsNaN(d)&&safeIsNaN(m))}function areInputsEqual(d,m){if(d.length!==m.length)return!1;for(var g=0;g<d.length;g++)if(!isEqual(d[g],m[g]))return!1;return!0}function memoizeOne(d,m){m===void 0&&(m=areInputsEqual);var g,x=[],b,E=!1;function v(){for(var S=[],C=0;C<arguments.length;C++)S[C]=arguments[C];return E&&g===this&&m(S,x)||(b=d.apply(this,S),E=!0,g=this,x=S),b}return v}var hasNativePerformanceNow=typeof performance=="object"&&typeof performance.now=="function",now=hasNativePerformanceNow?function(){return performance.now()}:function(){return Date.now()};function cancelTimeout(d){cancelAnimationFrame(d.id)}function requestTimeout(d,m){var g=now();function x(){now()-g>=m?d.call(null):b.id=requestAnimationFrame(x)}var b={id:requestAnimationFrame(x)};return b}var size=-1;function getScrollbarSize(d){if(d===void 0&&(d=!1),size===-1||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",document.body.appendChild(m),size=m.offsetWidth-m.clientWidth,document.body.removeChild(m)}return size}var cachedRTLResult=null;function getRTLOffsetType(d){if(d===void 0&&(d=!1),cachedRTLResult===null||d){var m=document.createElement("div"),g=m.style;g.width="50px",g.height="50px",g.overflow="scroll",g.direction="rtl";var x=document.createElement("div"),b=x.style;return b.width="100px",b.height="100px",m.appendChild(x),document.body.appendChild(m),m.scrollLeft>0?cachedRTLResult="positive-descending":(m.scrollLeft=1,m.scrollLeft===0?cachedRTLResult="negative":cachedRTLResult="positive-ascending"),document.body.removeChild(m),cachedRTLResult}return cachedRTLResult}var IS_SCROLLING_DEBOUNCE_INTERVAL$1=150,defaultItemKey$1=function(m,g){return m};function createListComponent(d){var m,g=d.getItemOffset,x=d.getEstimatedTotalSize,b=d.getItemSize,E=d.getOffsetForIndexAndAlignment,v=d.getStartIndexForOffset,S=d.getStopIndexForStartIndex,C=d.initInstanceProps,T=d.shouldResetStyleCacheOnItemSizeChange,R=d.validateProps;return m=function(k){_inheritsLoose(L,k);function L(A){var I;return I=k.call(this,A)||this,I._instanceProps=C(I.props,_assertThisInitialized(I)),I._outerRef=void 0,I._resetIsScrollingTimeoutId=null,I.state={instance:_assertThisInitialized(I),isScrolling:!1,scrollDirection:"forward",scrollOffset:typeof I.props.initialScrollOffset=="number"?I.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},I._callOnItemsRendered=void 0,I._callOnItemsRendered=memoizeOne(function(N,z,j,Y){return I.props.onItemsRendered({overscanStartIndex:N,overscanStopIndex:z,visibleStartIndex:j,visibleStopIndex:Y})}),I._callOnScroll=void 0,I._callOnScroll=memoizeOne(function(N,z,j){return I.props.onScroll({scrollDirection:N,scrollOffset:z,scrollUpdateWasRequested:j})}),I._getItemStyle=void 0,I._getItemStyle=function(N){var z=I.props,j=z.direction,Y=z.itemSize,B=z.layout,U=I._getItemStyleCache(T&&Y,T&&B,T&&j),W;if(U.hasOwnProperty(N))W=U[N];else{var V=g(I.props,N,I._instanceProps),J=b(I.props,N,I._instanceProps),Q=j==="horizontal"||B==="horizontal",X=j==="rtl",re=Q?V:0;U[N]=W={position:"absolute",left:X?void 0:re,right:X?re:void 0,top:Q?0:V,height:Q?"100%":J,width:Q?J:"100%"}}return W},I._getItemStyleCache=void 0,I._getItemStyleCache=memoizeOne(function(N,z,j){return{}}),I._onScrollHorizontal=function(N){var z=N.currentTarget,j=z.clientWidth,Y=z.scrollLeft,B=z.scrollWidth;I.setState(function(U){if(U.scrollOffset===Y)return null;var W=I.props.direction,V=Y;if(W==="rtl")switch(getRTLOffsetType()){case"negative":V=-Y;break;case"positive-descending":V=B-j-Y;break}return V=Math.max(0,Math.min(V,B-j)),{isScrolling:!0,scrollDirection:U.scrollOffset<V?"forward":"backward",scrollOffset:V,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._onScrollVertical=function(N){var z=N.currentTarget,j=z.clientHeight,Y=z.scrollHeight,B=z.scrollTop;I.setState(function(U){if(U.scrollOffset===B)return null;var W=Math.max(0,Math.min(B,Y-j));return{isScrolling:!0,scrollDirection:U.scrollOffset<W?"forward":"backward",scrollOffset:W,scrollUpdateWasRequested:!1}},I._resetIsScrollingDebounced)},I._outerRefSetter=function(N){var z=I.props.outerRef;I._outerRef=N,typeof z=="function"?z(N):z!=null&&typeof z=="object"&&z.hasOwnProperty("current")&&(z.current=N)},I._resetIsScrollingDebounced=function(){I._resetIsScrollingTimeoutId!==null&&cancelTimeout(I._resetIsScrollingTimeoutId),I._resetIsScrollingTimeoutId=requestTimeout(I._resetIsScrolling,IS_SCROLLING_DEBOUNCE_INTERVAL$1)},I._resetIsScrolling=function(){I._resetIsScrollingTimeoutId=null,I.setState({isScrolling:!1},function(){I._getItemStyleCache(-1,null)})},I}L.getDerivedStateFromProps=function(I,N){return validateSharedProps$1(I,N),R(I),null};var D=L.prototype;return D.scrollTo=function(I){I=Math.max(0,I),this.setState(function(N){return N.scrollOffset===I?null:{scrollDirection:N.scrollOffset<I?"forward":"backward",scrollOffset:I,scrollUpdateWasRequested:!0}},this._resetIsScrollingDebounced)},D.scrollToItem=function(I,N){N===void 0&&(N="auto");var z=this.props,j=z.itemCount,Y=z.layout,B=this.state.scrollOffset;I=Math.max(0,Math.min(I,j-1));var U=0;if(this._outerRef){var W=this._outerRef;Y==="vertical"?U=W.scrollWidth>W.clientWidth?getScrollbarSize():0:U=W.scrollHeight>W.clientHeight?getScrollbarSize():0}this.scrollTo(E(this.props,I,N,B,this._instanceProps,U))},D.componentDidMount=function(){var I=this.props,N=I.direction,z=I.initialScrollOffset,j=I.layout;if(typeof z=="number"&&this._outerRef!=null){var Y=this._outerRef;N==="horizontal"||j==="horizontal"?Y.scrollLeft=z:Y.scrollTop=z}this._callPropsCallbacks()},D.componentDidUpdate=function(){var I=this.props,N=I.direction,z=I.layout,j=this.state,Y=j.scrollOffset,B=j.scrollUpdateWasRequested;if(B&&this._outerRef!=null){var U=this._outerRef;if(N==="horizontal"||z==="horizontal")if(N==="rtl")switch(getRTLOffsetType()){case"negative":U.scrollLeft=-Y;break;case"positive-ascending":U.scrollLeft=Y;break;default:var W=U.clientWidth,V=U.scrollWidth;U.scrollLeft=V-W-Y;break}else U.scrollLeft=Y;else U.scrollTop=Y}this._callPropsCallbacks()},D.componentWillUnmount=function(){this._resetIsScrollingTimeoutId!==null&&cancelTimeout(this._resetIsScrollingTimeoutId)},D.render=function(){var I=this.props,N=I.children,z=I.className,j=I.direction,Y=I.height,B=I.innerRef,U=I.innerElementType,W=I.innerTagName,V=I.itemCount,J=I.itemData,Q=I.itemKey,X=Q===void 0?defaultItemKey$1:Q,re=I.layout,ie=I.outerElementType,oe=I.outerTagName,Z=I.style,ee=I.useIsScrolling,ce=I.width,fe=this.state.isScrolling,ae=j==="horizontal"||re==="horizontal",ue=ae?this._onScrollHorizontal:this._onScrollVertical,pe=this._getRangeToRender(),ge=pe[0],ye=pe[1],Ee=[];if(V>0)for(var ve=ge;ve<=ye;ve++)Ee.push(reactExports.createElement(N,{data:J,key:X(ve,J),index:ve,isScrolling:ee?fe:void 0,style:this._getItemStyle(ve)}));var Se=x(this.props,this._instanceProps);return reactExports.createElement(ie||oe||"div",{className:z,onScroll:ue,ref:this._outerRefSetter,style:_extends$1({position:"relative",height:Y,width:ce,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:j},Z)},reactExports.createElement(U||W||"div",{children:Ee,ref:B,style:{height:ae?"100%":Se,pointerEvents:fe?"none":void 0,width:ae?Se:"100%"}}))},D._callPropsCallbacks=function(){if(typeof this.props.onItemsRendered=="function"){var I=this.props.itemCount;if(I>0){var N=this._getRangeToRender(),z=N[0],j=N[1],Y=N[2],B=N[3];this._callOnItemsRendered(z,j,Y,B)}}if(typeof this.props.onScroll=="function"){var U=this.state,W=U.scrollDirection,V=U.scrollOffset,J=U.scrollUpdateWasRequested;this._callOnScroll(W,V,J)}},D._getRangeToRender=function(){var I=this.props,N=I.itemCount,z=I.overscanCount,j=this.state,Y=j.isScrolling,B=j.scrollDirection,U=j.scrollOffset;if(N===0)return[0,0,0,0];var W=v(this.props,U,this._instanceProps),V=S(this.props,W,U,this._instanceProps),J=!Y||B==="backward"?Math.max(1,z):1,Q=!Y||B==="forward"?Math.max(1,z):1;return[Math.max(0,W-J),Math.max(0,Math.min(N-1,V+Q)),W,V]},L}(reactExports.PureComponent),m.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},m}var validateSharedProps$1=function(m,g){m.children,m.direction,m.height,m.layout,m.innerTagName,m.outerTagName,m.width,g.instance},FixedSizeList=createListComponent({getItemOffset:function(m,g){var x=m.itemSize;return g*x},getItemSize:function(m,g){var x=m.itemSize;return x},getEstimatedTotalSize:function(m){var g=m.itemCount,x=m.itemSize;return x*g},getOffsetForIndexAndAlignment:function(m,g,x,b,E,v){var S=m.direction,C=m.height,T=m.itemCount,R=m.itemSize,k=m.layout,L=m.width,D=S==="horizontal"||k==="horizontal",A=D?L:C,I=Math.max(0,T*R-A),N=Math.min(I,g*R),z=Math.max(0,g*R-A+R+v);switch(x==="smart"&&(b>=z-A&&b<=N+A?x="auto":x="center"),x){case"start":return N;case"end":return z;case"center":{var j=Math.round(z+(N-z)/2);return j<Math.ceil(A/2)?0:j>I+Math.floor(A/2)?I:j}case"auto":default:return b>=z&&b<=N?b:b<z?z:N}},getStartIndexForOffset:function(m,g){var x=m.itemCount,b=m.itemSize;return Math.max(0,Math.min(x-1,Math.floor(g/b)))},getStopIndexForStartIndex:function(m,g,x){var b=m.direction,E=m.height,v=m.itemCount,S=m.itemSize,C=m.layout,T=m.width,R=b==="horizontal"||C==="horizontal",k=g*S,L=R?T:E,D=Math.ceil((L+x-k)/S);return Math.max(0,Math.min(v-1,g+D-1))},initInstanceProps:function(m){},shouldResetStyleCacheOnItemSizeChange:!0,validateProps:function(m){m.itemSize}});let lastPath=".";function FilePicker({onSelect:d,multiple:m=!0,files:g=!0,folders:x=!0,fileMask:b,from:E=lastPath}){const[v,S]=reactExports.useState(E);lastPath=v;const[C,T]=reactExports.useState(!1),R=reactExports.useRef(!1);useApi(!C&&"resolve_path",{path:E,closestFolder:!0},{onResponse:(ce,fe)=>yt(this,null,function*(){try{const{path:ae}=fe;if(typeof ae!="string")return;S(ae),R.current=ae[1]===":"||ae.startsWith("\\\\")}finally{T(!0)}})});const{list:k,props:L,error:D,connecting:A,reload:I}=useApiList(C&&"get_ls",{path:v,files:g,fileMask:b});reactExports.useEffect(()=>{z([]),Y("")},[v]);const[N,z]=reactExports.useState([]),[j,Y]=reactExports.useState(""),B=reactExports.useMemo(()=>_.debounce(ce=>Y(ce)),[]),U=reactExports.useMemo(()=>{const ce=new RegExp(_.escapeRegExp(j),"i");return fe=>ce.test(fe)},[j]),W=useBreakpoint("sm"),[V,J]=reactExports.useState(0),Q=reactExports.useMemo(()=>_.sortBy(k.filter(ce=>U(ce.n)),["k","n"]),[k,U]),X=R.current?"":"/",re=R.current?"\\":"/",ie=enforceFinal(re,v),oe=v.length<2;return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{label:"Current folder",value:v,InputLabelProps:{shrink:!0},helperText:"UNC paths are supported",onChange(ce){return yt(this,null,function*(){if(!ce)return S(X);const fe=yield apiCall("resolve_path",{path:ce});if(fe.isFolder===!1)return g?d([ce]):S(ce.slice(0,-basename(ce).length-1));S(fe.path)})},end:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(IconBtn,{title:"root",disabled:oe,icon:VerticalAlignTop,onClick(){S(X)}}),reactExports.createElement(IconBtn,{title:"parent folder",disabled:oe,icon:ArrowUpward,onClick(){const ce=/[\\/]$/.test(v)?v.slice(0,-1):v,fe=ce.lastIndexOf(re),ae=fe===1,ue=isWindowsDrive(ce)||ae?X:ce.slice(0,fe||1);S(ue)}}))}),D?reactExports.createElement(Alert,{severity:"error",sx:{flex:1}},err2msg$1(D)):reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{ref(ce){if(!ce)return;const fe=(ce==null?void 0:ce.clientHeight)-1;fe-V>1&&J(fe)},sx:{flex:1,display:"flex",flexDirection:"column"}},k.length?reactExports.createElement(FixedSizeList,{width:"100%",height:V,itemSize:46,itemCount:Q.length,overscanCount:5,children({index:ce,style:fe}){const ae=Q[ce],ue=ae.k==="d";return reactExports.createElement(MenuItem,{style:$t(Fe({},fe),{padding:0}),key:ae.n,onClick(){ue?S(ie+ae.n):d([ie+ae.n])}},m&&reactExports.createElement(Checkbox$1,{checked:N.includes(ae.n),disabled:!x&&ue,onClick(pe){const ge=ae.n,ye=N.filter(Ee=>Ee!==ge);z(ye.length<N.length?ye:[...N,ge]),pe.stopPropagation()}}),reactExports.createElement(ListItemIcon,{},reactExports.createElement(ae.k?FolderIcon:FileIcon)),reactExports.createElement(ListItemText,{sx:{whiteSpace:"pre-wrap",wordBreak:"break-all"}},ae.n),!ue&&ae.s!==void 0&&reactExports.createElement(Typography,{variant:"body2",color:"text.secondary",ml:4,mr:1},formatBytes(ae.s)))}}):reactExports.createElement(Center,{flex:1,mt:"4em"},A?spinner():"No elements in this folder")),reactExports.createElement(Flex$1,{alignItems:"center"},(m||x||!g)&&reactExports.createElement(Btn$1,{disabled:!N.length&&(!v||!x&&g),sx:{minWidth:"max-content"},onClick(){d(N.length?N.map(ce=>ie+ce):[v])}},g&&(N.length||!x)?`Select (${N.length})`:W?"Select this folder":"This folder"),x&&reactExports.createElement(Btn$1,{icon:CreateNewFolder,variant:"outlined",doneMessage:!0,labelIf:"sm",onClick(){return yt(this,null,function*(){const ce=yield promptDialog$1("New folder name");if(!ce)return!1;yield apiCall("mkdir",{path:`${v}/${ce}`}),I()})}},"New folder"),reactExports.createElement(TextField,{size:"small",value:j,label:`Filter results (${Q.length}${Q.length<k.length?"/"+k.length:""})`,onChange(ce){B(ce.target.value)},sx:{flex:1}}),(L==null?void 0:L.total)>0&&reactExports.createElement(IconProgress,{icon:Storage,progress:1,offset:(L.total-L.free)/L.total,title:formatDiskSpace(L)}))))}function formatDiskSpace({free:d,total:m}){return`${formatBytes(d)} available (${formatPerc(d/m)}) of ${formatBytes(m)}`}function FileField(C){var T=C,{value:d,onChange:m,files:g=!0,folders:x=!1,fileMask:b,defaultPath:E,title:v}=T,S=Vt(T,["value","onChange","files","folders","fileMask","defaultPath","title"]);const R=useBreakpoint("md");return reactExports.createElement(StringField,$t(Fe({},S),{value:d,onChange:m,wrap:!0,end:reactExports.createElement(IconBtn,{icon:Eject,title:"Browse files...",edge:"end",sx:{mb:.5},onClick(){const{close:k}=newDialog({title:v!=null?v:(g?"Pick a file":"Pick a folder")+prefix(": ",b),dialogProps:{fullScreen:!R,sx:{minWidth:"min(90vw, 40em)",minHeight:"calc(100vh - 9em)"}},Content(){return reactExports.createElement(FilePicker,{multiple:!1,folders:x,files:g,fileMask:b,from:d||E,onSelect(D){return yt(this,null,function*(){var N;let A=D==null?void 0:D[0];if(!A)return;const I=(N=yield apiCall("get_cwd"))==null?void 0:N.path;A.startsWith(I)&&(A=A.slice(I.length+1)||"."),m(A,{was:d,event:"picker"}),k()})}})}})}})}))}const HFS_GITHUB_ACCOUNT=HFS_REPO.replace(/\/.+/,"/");function OnlinePlugins(){const[d,m]=reactExports.useState(""),g=useDebounce(d,1e3),{list:x,error:b,initializing:E}=useApiList("get_online_plugins",{text:g}),v=useSnapState$1();return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(StringField,{value:d,onChange:m,start:reactExports.createElement(Search),typing:!0,label:"Search text"}),reactExports.createElement(DataTable,{error:b&&err2msg$1(xlate(b,PLUGIN_ERRORS)),rows:x.length?x:[],noRows:"No compatible plugins have been found",fillFlex:!0,initializing:E,columnVisibilityModel:v.onlinePluginsColumns,onColumnVisibilityModelChange:S=>Object.assign(state$1.onlinePluginsColumns,S),columns:[{field:"id",headerName:"name",flex:1,renderCell:renderName,mergeRender:{description:{fontSize:"x-small"}}},{field:"version",width:70},{field:"pushed_at",headerName:"last update",valueGetter:({value:S})=>new Date(S).toLocaleDateString()},{field:"license",width:80},themeField,$t(Fe({},descriptionField),{flex:3,hideUnder:"sm"}),{field:"stargazers_count",width:50,headerName:"stars",align:"center",hideUnder:"sm"}],actions:({row:S,id:C})=>[reactExports.createElement(IconBtn,{icon:Download,title:"Install",progress:S.downloading,disabled:S.installed&&"Already installed",tooltipProps:{placement:"bottom-end"},onClick:()=>installPluginFromResult(S)}),reactExports.createElement(IconBtn,{icon:RemoveRedEye,disabled:!S.preview,onClick:()=>newDialog({title:C,Content:()=>reactExports.createElement(ShowImages,{imgs:wantArray(S.preview)})})})]}))}function ShowImages({imgs:d}){const[m,g]=reactExports.useState(0);return reactExports.createElement(Flex$1,{vert:!0,flex:1},reactExports.createElement(Flex$1,{vert:!0,center:!0,height:0,flex:"auto",minHeight:"50vh",minWidth:"50vw"},reactExports.createElement("img",{src:d[m],style:{margin:"auto",maxWidth:"100%",maxHeight:"100%"}})),d.length>1&&reactExports.createElement(Flex$1,{center:!0},reactExports.createElement(IconBtn,{icon:ArrowBack,disabled:!m,onClick:()=>g(m-1)}),reactExports.createElement(IconBtn,{icon:ArrowForward,disabled:m>=d.length-1,onClick:()=>g(m+1)})))}function installPluginFromResult(d){return yt(this,null,function*(){if(!d.id.startsWith(HFS_GITHUB_ACCOUNT)&&!(yield confirmDialog$1(reactExports.createElement(Flex$1,{vert:!0,alignItems:"center"},reactExports.createElement(Warning,{color:"warning",fontSize:"large"}),"Proceed only if you trust this plugin",reactExports.createElement(Box,{fontSize:"60%"},"A plugin has the same power of any other software"))))||d.missing&&!(yield confirmDialog$1("This will also install: "+_.map(d.missing,"repo").join(", "))))return;const m=d.branch||d.default_branch;return installPlugin(d.id,m).catch(g=>{if(g.code!==HTTP_FAILED_DEPENDENCY)return alertDialog$1(g);const x=reactExports.createElement(reactExports.Fragment,{},"This plugin has some dependencies unmet:",g.data.map(b=>reactExports.createElement("li",{key:b.repo},b.repo+": "+b.error)));return alertDialog$1(x,"error")})})}function installPlugin(d,m){return yt(this,null,function*(){try{const g=yield apiCall("download_plugin",{id:d,branch:m,stop:!0},{timeout:!1});(yield confirmDialog$1(`Plugin ${d} downloaded`,{trueText:"Start"}))&&(yield startPlugin(g.id))}catch(g){let x=!1;if(g.code===HTTP_FAILED_DEPENDENCY)for(const b of g.cause)b.error==="missing"&&(toast$1("Installing dependency: "+b.repo),yield installPlugin(b.repo),x=!0);if(x)return installPlugin(d,m);throw g}})}const TABS={Installed:InstalledPlugins,"Search online|Search":OnlinePlugins,"Check updates|Updates":()=>reactExports.createElement(InstalledPlugins,{updates:!0})},LABELS=Object.keys(TABS),PANES=Object.values(TABS),PLUGIN_ERRORS={ENOTFOUND:"Cannot reach github.com",ECONNREFUSED:"Cannot reach github.com"};function PluginsPage(){const[d,m]=reactExports.useState(0),g=!useBreakpoint("sm");return reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Tabs,{value:d,onChange(x,b){m(b)}},LABELS.map(x=>reactExports.createElement(Tab,{key:x,label:x.split("|").slice(g?-1:0)[0]}))),reactExports.createElement(PANES[d]))}function evalWrapper(s){return eval(s)}function InstalledPlugins({updates:d}){const{list:m,error:g,setList:x,initializing:b}=useApiList(d?"get_plugin_updates":"get_plugins",{},{map(T){T.config&&(T.config=tryJson(T.config,R=>evalWrapper("()=>("+R+")")()))}});reactExports.useEffect(()=>{x(T=>_.sortBy(T,R=>{var k;return(R.error?0:R.started?1:2)+treatPluginName(((k=R.repo)==null?void 0:k.split("/").reverse().join("/"))||R.id).toLowerCase()}))},[m.length]);const E="small",{pause:v,pauseButton:S}=usePauseButton("plugins",()=>getSingleConfig(CFG.suspend_plugins).then(T=>!T),{onClick:()=>apiCall("set_config",{values:{[CFG.suspend_plugins]:!v}})}),C=useTheme$1();return reactExports.createElement(DataTable,{error:isPrimitive(g)?xlate(g,PLUGIN_ERRORS):_.map(g,(T,R)=>`Error ${R} for: ${T.join(", ")}`).join("; "),rows:m.length?m:[],fillFlex:!0,initializing:b,disableColumnSelector:!0,getRowHeight:d&&(({model:T})=>T.changelog?"auto":50),noRows:d&&'No updates available. Only plugins available on "search online" are checked.',columns:[{field:"id",headerName:"name",flex:.3,minWidth:150,renderCell:renderName,valueGetter({row:T}){return T.repo||T.id},mergeRender:{[d?"changelog":"description"]:{fontSize:"x-small"}}},{field:"version",width:70,hideUnder:"sm",mergeRender:{installedVersion:{fontSize:"x-small"}}},themeField,$t(Fe({},descriptionField),{flex:1,hideUnder:"sm"}),{field:"installedVersion",hideUnder:!0,dialogHidden:!0,renderCell:({value:T})=>T&&`Yours ${T}`},{field:"changelog",headerName:"Change log",flex:2,hideUnder:!d||"sm",sx:{flexDirection:"column",alignItems:"flex-start"},renderCell({value:T,row:R}){return Array.isArray(T)?reactExports.createElement(Table,{sx:{td:{p:0}}},_.uniq(_.sortBy(T,"version").filter(k=>_.isString(k.message)&&k.message&&k.version>R.installedVersion)).map((k,L)=>reactExports.createElement(TableRow,{key:L},reactExports.createElement(TableCell,{sx:{whiteSpace:"pre",verticalAlign:"top"}},`• ${k.version}: `),reactExports.createElement(TableCell,{},md(k.message))))):null}}],footerSide:()=>!d&&S,actions:({row:T,id:R})=>d?[reactExports.createElement(IconBtn,{icon:Upgrade,title:T.downloading?"Downloading":T.updated?"Already updated":"Update",disabled:T.updated,progress:T.downloading,size:E,onClick(){return yt(this,null,function*(){yield apiCall("update_plugin",{id:R},{timeout:!1}).catch(A=>{var I;throw A.code!==HTTP_FAILED_DEPENDENCY?A:Error("Failed dependencies: "+((I=A.cause)==null?void 0:I.map(N=>prefix('plugin "',N.id||N.repo,'" ')+N.error).join("; ")))}),toast$1("Plugin updated")})}})]:[reactExports.createElement(IconBtn,T.started?{icon:StopCircle,title:reactExports.createElement(Box,{"aria-hidden":!0},`Stop ${R}`,reactExports.createElement("br"),"Started "+new Date(T.started).toLocaleString()),"aria-label":`Stop ${R}`,size:E,color:"success",doneAnimation:!0,onClick:()=>apiCall("stop_plugin",{id:R})}:{icon:PlayCircle,title:`Start ${R}`,disabled:v,size:E,onClick:()=>startPlugin(R)}),reactExports.createElement(IconBtn,{icon:T.config||!T.started||!T.log?Settings:ListAlt,title:T.config||!T.log?"Options":"Log",size:E,disabled:!T.started&&"Start plugin to access options"||!T.config&&!T.log&&"No options and no log for this plugin",onClick(){return yt(this,null,function*(){const{config:A}=yield apiCall("get_plugin",{id:R});let I=with_(T.configDialog,Y=>{var B;return C.breakpoints.values[Y==null?void 0:Y.maxWidth]||((B=Y==null?void 0:Y.sx)==null?void 0:B.maxWidth)||xlate(Y==null?void 0:Y.maxWidth,{xs:0})||432});typeof I=="number"&&(I+="px");const N=!!T.config,z=yield formDialog$1({title:N?`Options for ${R}`:`Log for ${R}`,form:Y=>({before:T.description&&reactExports.createElement(Box,{mx:2,mb:2},T.description),fields:makeFields(callable(T.config,Y)||{},Y),save:N?{children:"Save and close"}:!1,barSx:{gap:1},addToBar:[reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>j(Y)},"Save")]}),values:A,dialogProps:_.merge({maxWidth:"md",sx:{m:"auto"}},T.configDialog,{maxWidth:!1,sx:{maxWidth:null}}),Wrapper({children:Y}){const{list:B,setList:U}=useApiList("get_plugin_log",{id:R},{map(J){J.ts=new Date(J.ts)}}),W=useAutoScroll(B);let V;return reactExports.createElement(Flex$1,{alignItems:"stretch",justifyContent:"center",flexWrap:"wrap",flexDirection:N?void 0:"column"},reactExports.createElement(Box,{maxWidth:I,minWidth:"min-content"},Y),reactExports.createElement(Paper,{elevation:1,sx:{position:"relative",fontFamily:"monospace",flex:1,minWidth:"min(40em, 90vw)",minHeight:"20em",px:.5}},reactExports.createElement(Box,{my:.5,pb:.5,borderBottom:"1px solid",display:"flex",alignItems:"center",justifyContent:"space-between"},"Output",reactExports.createElement(Btn$1,{size:"small",sx:{p:0},onClick(){U([])}},"Clear")),reactExports.createElement(Box,{position:"absolute",bottom:0,top:"31px",left:0,right:0,sx:{overflowY:"auto"},ref:W},!B.length&&reactExports.createElement(Box,{p:1},"Log is empty"),reactExports.createElement(Box,{sx:{textIndent:"-1em",pl:"1em",position:"absolute",width:"calc(100% - 1.2em)",ml:"2px",pt:".2em"}},B.map(J=>{formatDate(J.ts);const Q=formatDate(J.ts);return reactExports.createElement(reactExports.Fragment,{key:J.id},Q!==V&&(V=Q),reactExports.createElement(Box,{},reactExports.createElement(Box,{title:Q,display:"inline",color:"text.secondary",mr:1},formatTime(J.ts)),replaceStringToReact(J.msg,/https?:\/\/\S+/,X=>reactExports.createElement(Link$1,{href:X[0],target:"_blank"},X[0]))))})))))}});if(z&&!_.isEqual(A,z))return j(z);function j(Y){return yt(this,null,function*(){yield apiCall("set_plugin",{id:R,config:Y}),Object.assign(A,Y),toast$1("Configuration saved")})}})}}),reactExports.createElement(IconBtn,{icon:Delete,title:"Uninstall",size:E,onClick(){return yt(this,null,function*(){const A=yield confirmDialog$1(`${R}: delete configuration too?`,{trueText:"Yes",falseText:"No",after:({onClick:I})=>reactExports.createElement(Btn$1,{variant:"outlined",onClick(){I(void 0)}},"Abort")});A!==void 0&&(yield apiCall("uninstall_plugin",{id:R,deleteConfig:A}),toast$1("Plugin uninstalled"))})}})]})}function getSingleConfig(d){return apiCall("get_config",{only:[d]}).then(m=>m[d])}function treatPluginName(d){return d.replace(/hfs-/,"")}function renderName({row:d,value:m}){const{repo:g}=d;return reactExports.createElement(reactExports.Fragment,{},d.downgrade&&x("This version is older than the one you installed. It is possible that the author found a problem with your version and decided to retire it.",!0),x(d.error||d.badApi,!d.error),g!=null&&g.includes("//")?reactExports.createElement(Link$1,{href:g,target:"plugin"},m):with_(g==null?void 0:g.split("/"),b=>(b==null?void 0:b.length)!==2?m:reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Link$1,{href:"https://github.com/"+g,target:"plugin",onClick(E){E.stopPropagation()}},treatPluginName(b[1])),NBSP+"by ",b[0])));function x(b,E=!1){return b&&hTooltip(b,b,reactExports.createElement(ErrorIcon,{fontSize:"small",color:E?"warning":"error",sx:{ml:-.5,mr:.5}}))}}function makeFields(d,m){return Object.entries(d).map(([g,x])=>{var k;if(!x)return;let R=x,{type:b,defaultValue:E,frontend:v,showIf:S}=R,C=Vt(R,["type","defaultValue","frontend","showIf"]);try{if(C.getError=evalWrapper(C.getError),typeof S=="string"&&(C.showIf=S=evalWrapper(S)),S&&!S(m))return}catch(L){}C.helperText&&(C.helperText=md(C.helperText,{html:!1}));const T=type2comp[b];if(m===!1&&b==="date_time"&&(C.$type="dateTime"),T===ArrayField){let{fields:L}=C;C.valuesForAdd=newObj(callable(L,!1),D=>D.defaultValue),typeof L=="string"&&(L=evalWrapper(L)),(k=C.details)!=null||(C.details=!1),C.fields=D=>_.map(makeFields(callable(L,D),D),(A,I)=>A&&$t(Fe({k:I},A),{defaultValue:void 0})).filter(Boolean)}return E!==void 0&&b==="boolean"&&(C.placeholder=`Default value is ${JSON.stringify(E)}`),Fe({k:g,comp:T},C)})}const type2comp={string:StringField,number:NumberField,boolean:BoolField,select:SelectField,multiselect:MultiSelectField,array:ArrayField,real_path:FileField,vfs_path:VfsPathField,username:UsernameField,color:ColorField,showHtml:({html:d})=>reactExports.createElement(Html,{},String(d)),date_time:DateTimeField,net_mask:NetmaskField};function startPlugin(d){return yt(this,null,function*(){try{return yield apiCall("start_plugin",{id:d}),toast$1("Plugin started",reactExports.createElement(PlayCircle,{color:"success"})),!0}catch(m){alertDialog$1(`Plugin ${d} didn't start, with error: ${String((m==null?void 0:m.message)||m)}`,"error")}})}function UsernameField(E){var v=E,{value:d,onChange:m,multiple:g,groups:x}=v,b=Vt(v,["value","onChange","multiple","groups"]);const{data:S,element:C,loading:T}=useApiEx("get_accounts");return!T&&C||reactExports.createElement(g?MultiSelectField:SelectField,Fe({value:d,onChange:m,options:S==null?void 0:S.list.filter(R=>x===void 0||x===R.isGroup).map(R=>R.username)},b))}function ColorField(d){return reactExports.createElement(StringField,Fe({inputProps:Fe({type:"color",style:{marginRight:24}},!d.value&&{value:"#888888",style:{zIndex:1,opacity:.1}}),InputProps:{endAdornment:d.value?reactExports.createElement(Btn$1,{icon:Clear,size:"small",sx:{position:"absolute",right:4},title:"Clear",onClick(m){d.onChange(null,{was:d.value,event:m})}}):reactExports.createElement(Box,{sx:{position:"absolute",width:"100%",bottom:2,pt:"3px",textAlign:"center",color:"#fff",background:"repeating-linear-gradient(45deg, #333, #333 10px, #444 10px, #444 20px)"}},"default")},typing:!0},d))}const descriptionField={field:"description",mergeRender:{isTheme:{}},mergeRenderSx:{float:"left"}},themeField={field:"isTheme",headerName:"is theme",hideUnder:!0,dialogHidden:!0,type:"boolean",renderCell({value:d}){return d&&iconTooltip(ThemeIcon,_.isString(d)?`${d} theme`:"theme",{fontSize:"1.2rem",mr:".3em"})}},cacheKey="onlinePluginsCache";function RandomPlugin(){const{hideRandomPlugin:d}=useSnapState$1(),m=localStorage.getItem(cacheKey),g=reactExports.useMemo(()=>{const C=tryJson(m||"");return(C==null?void 0:C.ts)&&Date.now()-C.ts<DAY&&_.shuffle(C.list)},[m]),{list:x,initializing:b}=useApiList(!d&&!g&&"get_online_plugins"),[E,v]=reactExports.useState(-1),S=g==null?void 0:g[E];if(reactExports.useEffect(()=>{!g&&!b&&x.length&&localStorage.setItem(cacheKey,JSON.stringify({ts:Date.now(),list:x})),v(0)},[x,b]),reactExports.useEffect(()=>{E>0&&!S&&toast$1("No more plugins!")},[E]),!(d||!S))return reactExports.createElement(Card,{sx:{display:{xs:"none",md:"block"},float:"right",width:"min(50%, 30em)",ml:"1em"}},reactExports.createElement(CardContent,{},reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.4em"},reactExports.createElement(Box,{color:"warning.main",mr:1,display:"inline"},"★"),"Random plugin:"),reactExports.createElement(Box,{fontWeight:"bold",fontSize:"1.8em",my:1},renderName({row:S})),reactExports.createElement(Box,{},S.description),S.preview&&reactExports.createElement("img",{src:wantArray(S.preview)[0],style:{maxWidth:"100%",maxHeight:"50vh",marginTop:"1em",border:"1px solid",maskImage:"radial-gradient(circle at center, black 50%, transparent 100%)"}})),reactExports.createElement(CardActions,{},reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>installPluginFromResult(S)},"Install"),reactExports.createElement(Btn$1,{variant:"outlined",onClick:()=>v(C=>C+1)},"Another"),reactExports.createElement(Btn$1,{variant:"outlined",onClick(){state$1.hideRandomPlugin=!0}},"Hide this box")))}function HomePage(){var X,re,ie,oe,Z;const d=" — ",{username:m}=useSnapState$1(),{data:g,reload:x,element:b}=useApiEx("get_status"),{data:E}=useApiEx(m&&"get_account"),v=useApiEx("get_config",{only:["https_port","cert","private_key","proxies","ignore_proxies","vfs"]}),{list:S}=useApiList("get_plugins"),[C,T]=reactExports.useState(!1),{list:R}=useApiList(C&&"get_plugin_updates"),[k,L]=reactExports.useState(),[D,A]=reactExports.useState();if(b||!g)return b;const{http:I,https:N}=g,z=!(I!=null&&I.listening)&&(N!=null&&N.listening)?"s":"",j=z?N:(I==null?void 0:I.listening)&&I,Y=j&&`http${z}://`+window.location.hostname+(j.port===(z?443:80)?"":":"+j.port),B=objSameKeys({http:I,https:N},ee=>ee.busy?[`port ${ee.configuredPort} already used by ${ee.busy}${d}choose a `,cfgLink("different port"),` or stop ${ee.busy}`]:ee.error),U=B&&onlyTruthy(Object.entries(B).map(([ee,ce])=>ce&&[md(`Protocol <u>${ee}</u>: `),ce,(isCertError(ce)||isKeyError(ce))&&[d,reactExports.createElement(LinkBtn,{onClick(){suggestMakingCert().then(()=>wait(999)).then(v.reload).then(x)}},"make one")," or ",d,cfgLink("provide adequate files")]])),W={onContextMenu(ee){return yt(this,null,function*(){if(ee.preventDefault(),!g.updatePossible)return alertDialog$1("Automatic update is only for binary versions","warning");const ce=yield promptDialog$1("Enter a link to the zip to install");ce&&(yield update(ce))})},title:g.updatePossible&&"Right-click if you want to install a zip"},V=(X=v.data)==null?void 0:X.vfs;return reactExports.createElement(Box,{},reactExports.createElement(RandomPlugin),reactExports.createElement(Box,{display:"flex",gap:2,flexDirection:"column",alignItems:"flex-start",height:"100%"},dontBotherWithKeys((re=g.alerts)==null?void 0:re.map(ee=>entry("warning",md(ee,{html:!1})))),U.length?dontBotherWithKeys(U.map(ee=>entry("error",dontBotherWithKeys(ee)))):entry("success","Server is working"),V&&!((ie=V.children)!=null&&ie.length)&&!V.source?entry("warning","You have no shared files",d,fsLink("add some")):null,E!=null&&E.adminActualAccess?entry("","Welcome, "+m):entry("",md("You're accessing the Admin-panel without an account because you are on localhost"),...g.anyAccountCanLoginAdmin?[]:[d,"to access from another computer, you must ",reactExports.createElement(InLink,{to:"accounts"},md("create an account with *admin* permission"))]),!Y&&entry("warning","Frontend unreachable: ",_.map(B,(ee,ce)=>ce+" "+(ee?"is in error":"is off")).join(", "),!U.length&&[d,cfgLink("switch http or https on")]),with_(g.acmeRenewError,ee=>ee&&entry("warning",ee)),with_(g.blacklistedInstalledPlugins,ee=>(ee==null?void 0:ee.length)>0&&entry("warning","Found blacklisted plugin(s): ",ee.join(", "))),with_(S==null?void 0:S.filter(ee=>ee.error||ee.badApi).length,ee=>ee>0&&entry("warning",`${ee} plugin(s) failing`,d,reactExports.createElement(InLink,{to:"plugins"},"check now"))),!((oe=v.data)!=null&&oe.split_uploads)&&Date.now()-Number(g.cloudflareDetected||0)<DAY&&entry("",wikiLink("Reverse-proxy#cloudflare","Cloudflare detected, read our guide")),with_(proxyWarning(v.data,g),ee=>ee&&entry("warning",ee,d,cfgLink("set the number of proxies"),d,"unless you are sure and you can ",reactExports.createElement(Btn$1,{variant:"outlined",size:"small",sx:{lineHeight:"unset"},confirm:"Go on only if you know what you are doing",onClick:()=>apiCall("set_config",{values:{ignore_proxies:!0}}).then(v.reload)},"ignore this warning"),d,wikiLink("Proxy-warning","Explanation"))),(((Z=v.data)==null?void 0:Z.proxies)>0||(g==null?void 0:g.proxyDetected))&&entry("",wikiLink("Reverse-proxy","Read our guide on proxies")),g.frpDetected&&entry("warning",'FRP is detected. It should not be used with "type = tcp" with HFS. Possible solutions are',reactExports.createElement("ol",{},reactExports.createElement("li",{},"configure FRP with type=http (best solution)"),reactExports.createElement("li",{},md("configure FRP to connect to HFS <u>not</u> with localhost (safe, but you won't see users' IPs)")),reactExports.createElement("li",{},`disable "admin access for localhost" in HFS (safe, but you won't see users' IPs)`))),entry("",md("This is the *Admin-panel*, where you manage your server. Access your files on the [Front-end](../..).")),entry("",wikiLink("","See the documentation")," and ",reactExports.createElement(Link$1,{target:"support",href:REPO_URL+"discussions"},"get support")),!k&&with_(g.autoCheckUpdateResult,ee=>(ee==null?void 0:ee.isNewer)&&reactExports.createElement(Update,{info:ee,fromAuto:!0,bodyCollapsed:!0,title:"An update has been found"})),R.length>0&&entry("success","Updates available for plugin(s): "+R.map(ee=>ee.id).join(", ")),reactExports.createElement(ConfigForm,{gridProps:{sx:{mt:1,display:"flex",columnGap:1,alignitems:"center","&>div.MuiGrid2-root":{width:"auto",px:.5,py:0},".MuiCheckbox-root":{pl:"2px"}}},saveOnChange:!0,form:{fields:[g.updatePossible==="local"?reactExports.createElement(Btn$1,{icon:UpdateIcon,onClick:()=>update()},"Update from local file"):!k&&reactExports.createElement(Btn$1,Fe({icon:UpdateIcon,onClick(){return apiCall("wait_project_info").then(x),T(!0),apiCall("check_update").then(ee=>L(ee.options),alertDialog$1)}},W),"Check for updates"),{k:"auto_check_update",comp:CheckboxField,label:"Auto check updates daily"},{k:"update_to_beta",comp:CheckboxField,label:"Include beta versions"}]}}),k&&with_(_.find(k,"isNewer"),ee=>!k.length||!g.updatePossible&&!ee?entry("","No update available"):ee&&!g.updatePossible?entry("success",`Version ${ee.name} available`):reactExports.createElement(Flex$1,{vert:!0},k.map(ce=>reactExports.createElement(Update,{info:ce,key:ce.name})))),reactExports.createElement(Flex$1,{flexWrap:"wrap"},!D&&g.updatePossible&&g.previousVersionAvailable&&reactExports.createElement(Btn$1,{icon:Restore,onClick:()=>update(PREVIOUS_TAG)},"Reinstall previous version"),g.updatePossible?D?reactExports.createElement(Flex$1,{vert:!0},D.map(ee=>reactExports.createElement(Update,{info:ee,key:ee.name,bodyCollapsed:!0}))):reactExports.createElement(Btn$1,Fe({icon:Colorize,onClick:J},W),"Get another version"):entry("",reactExports.createElement(Link$1,{href:REPO_URL+"releases/",target:"repo"},"All releases"))),reactExports.createElement(SwitchThemeBtn),Date.now()-Number(new Date(g.started))>HOUR&&reactExports.createElement(Link$1,{title:"Donate",target:"donate",style:{textDecoration:"none",position:"fixed",bottom:0,right:4,fontSize:"large"},href:"https://www.paypal.com/donate/?hosted_button_id=HC8MB4GRVU5T2"},"❤️")));function J(){return yt(this,null,function*(){return apiCall("get_other_versions").then(ee=>A(ee.options),alertDialog$1)})}}function Update({info:d,title:m,bodyCollapsed:g,fromAuto:x}){const[b,E]=reactExports.useState(g);return reactExports.createElement(Flex$1,{alignItems:"flex-start",flexWrap:"wrap"},reactExports.createElement(Card,{className:"release"},reactExports.createElement(CardContent,{},reactExports.createElement(Flex$1,{},m&&reactExports.createElement(Box,{fontSize:"larger",mb:1},m),reactExports.createElement(Btn$1,$t(Fe({icon:UpdateIcon},!d.isNewer&&d.prerelease&&{color:"warning",variant:"outlined"}),{onClick:()=>update(x?void 0:d.tag_name)}),prefix("Install ",d.name,d.isNewer?"":" (older)")),reactExports.createElement(Link$1,{href:REPO_URL+"releases/tag/"+d.tag_name,target:"repo"},reactExports.createElement(OpenInNew))),b?reactExports.createElement(LinkBtn,{sx:{display:"block",mt:1},onClick(){E(!1)}},"See details"):reactExports.createElement(Box,{mt:1},renderChangelog(d.body)))))}function renderChangelog(d){return md(d,{html:!1,onText:m=>replaceStringToReact(m,new RegExp("(?<=^|\\W)#(\\d+)\\b|(https:.*\\S+)","g"),g=>g[1]?reactExports.createElement(Link$1,{href:REPO_URL+"issues/"+g[1],target:"_blank"},reactExports.createElement(OpenInNew,{fontSize:"small"})):reactExports.createElement(Link$1,{href:g[2],target:"_blank"},g[2]))})}function update(d){return yt(this,null,function*(){if(!(yield confirmDialog$1("Installation may take less than a minute, depending on the speed of your server")))return;toast$1("Downloading");const m=yield apiCall("update",{tag:d},{timeout:600}).then(()=>0,b=>b);if(m)return alertDialog$1(m);toast$1("Restarting");const g=Date.now();let x;for(;yield apiCall("NONE").then(()=>0,b=>!b.code);)!x&&Date.now()-g>15e3&&(x=alertDialog$1("This is taking too long, please check your server","warning")),yield wait(500);x==null||x.close(),subscribeKey(state$1,"loginRequired",()=>state$1.loginRequired=!1),yield alertDialog$1("Procedure complete","success"),window.location.reload()})}function entry(d,...m){return reactExports.createElement(Box,{fontSize:"x-large",color:g=>{var x;return d&&((x=g.palette[d])==null?void 0:x.main)}},reactExports.createElement({success:CheckCircle,info:Info,"":Info,warning:Warning,error:ErrorIcon}[d],{sx:{mr:1,color:d?void 0:"primary.main"}}),reactExports.createElement("span",{style:["warning","error"].includes(d)?{animation:".5s blink 2"}:void 0},...m))}function fsLink(d="File System page"){return reactExports.createElement(InLink,{to:"fs"},d)}function cfgLink(d="Options page"){return reactExports.createElement(InLink,{to:"options"},d)}function proxyWarning(d,m){return m&&d&&!d.ignore_proxies&&(!d.proxies&&m.proxyDetected?"A proxy was detected but none is configured":d.proxies&&!m.proxyDetected&&Date.now()-+new Date(m.started)>DAY?`Proxies is set to ${d.proxies} but none was detected recently. Consider setting it zero`:"")}let loaded,exposedReloadStatus;const pageState=proxy({changes:{}});subscribe(state$1,d=>{d.some(m=>m[1][0]==="config")&&recalculateChanges()});function OptionsPage(){var Y,B;const{data:d,reload:m,element:g}=useApiEx("get_config",{omit:["vfs"]}),x=useSnapState$1(),{changes:b}=useSnapshot(pageState),E=useApiEx(d&&"get_status"),v=E.data,S=exposedReloadStatus=E.reload;reactExports.useEffect(()=>void S(),[d]),reactExports.useEffect(()=>()=>exposedReloadStatus=void 0,[]);const C=useBreakpoint("sm"),T=(Y=useApiEx("get_admins").data)==null?void 0:Y.list,R=window.location.hostname,k=R==="localhost",L=R.includes(":"),D=[{label:"any",value:""},{label:"any IPv4",value:"0.0.0.0",disabled:!k&&L},{label:"any IPv6",value:"::",disabled:!k&&!L},...["127.0.0.1","::1"].map(U=>({label:U,value:U,disabled:!k&&R!==U})),...((B=v==null?void 0:v.ips)==null?void 0:B.map(U=>({value:U,disabled:R!==U})))||[]];if(g)return g;if(E.error)return E.element;const A=loaded!==d?state$1.config=loaded=d:x.config,I={comp:NumberField,min:1,unit:"KB/s",placeholder:"no limit",sm:6},N={comp:NumberField,placeholder:"no limit",toField:U=>U||"",sm:4},z=A.https_port>=0;return reactExports.createElement(Form,{sx:{maxWidth:"60em"},values:A,set(U,W){state$1.config[W]=U},stickyBar:!0,onError:alertDialog$1,save:Fe({onClick:j},propsForModifiedValues(Object.keys(b).length>0)),barSx:{gap:2},addToBar:[reactExports.createElement(Button,{onClick(){m(),S()},startIcon:reactExports.createElement(Refresh)},"Reload"),reactExports.createElement(Button,{component:Link$2,to:"/config",startIcon:reactExports.createElement(EditNote)},C?"Config file":"File")],defaults(){return{xs:6}},fields:[reactExports.createElement(Section,{title:"Networking"}),{k:"port",comp:PortField,xs:12,sm:6,label:"HTTP port",status:(v==null?void 0:v.http)||!0,suggestedPort:80},{k:"https_port",comp:PortField,xs:12,sm:6,label:"HTTPS port",status:(v==null?void 0:v.https)||!0,suggestedPort:443,onChange(U){return U>=0&&!z&&!A.cert&&suggestMakingCert(),U}},z&&{k:"cert",comp:FileField,sm:4,label:"HTTPS certificate file",helperText:wikiLink("HTTPS#certificate","What is this?"),error:with_(v==null?void 0:v.https.error,U=>isCertError(U)&&(v.https.listening?U:[U," - ",reactExports.createElement(LinkBtn,{key:"fix",onClick:suggestMakingCert},"make one")]))},z&&Fe({k:"private_key",comp:FileField,sm:4,label:"HTTPS private key file"},with_(v==null?void 0:v.https.error,U=>isKeyError(U)?{error:!0,helperText:U}:null)),z&&{k:"force_https",comp:BoolField,label:"Force HTTPS",sm:4,disabled:!z||A.port<0,helperText:"Not applied to localhost. Doesn't work with proxies."},{k:"listen_interface",comp:SelectField,sm:4,afterList:D.some(U=>U.disabled)&&reactExports.createElement(Box,{p:"8px 16px 0",borderTop:"1px solid",fontSize:"small"},"Disabled addresses depend on the address you used to connect"),options:D},$t(Fe({k:"max_kbps"},I),{sm:4,label:"Limit output",helperText:"Doesn't apply to localhost"}),$t(Fe({k:"max_kbps_per_ip"},I),{sm:4,label:"Limit output per-IP"}),$t(Fe({k:CFG.max_downloads},N),{helperText:"Number of simultaneous downloads"}),$t(Fe({k:CFG.max_downloads_per_ip},N),{label:"Max downloads per-IP"}),$t(Fe({k:CFG.max_downloads_per_account},N),{label:"Max downloads per-account",helperText:"Overrides other limits"}),{k:"admin_net",comp:NetmaskField,label:"Admin-panel accessible from",placeholder:"any address",helperText:"IP address of browser machine"},{k:"localhost_admin",comp:BoolField,xs:12,sm:6,label:"Unprotected Admin-panel on localhost",getError:U=>!U&&(T==null?void 0:T.length)===0&&"First create at least one admin account",helperText:"Access without entering credentials"},{k:"proxies",comp:NumberField,xs:12,sm:4,md:4,max:9,label:"Number of incoming HTTP proxies",placeholder:"none",error:proxyWarning(A,v),helperText:"Wrong number will prevent detection of users' IP"},{k:CFG.outbound_proxy,xs:12,sm:5,md:4,placeholder:"none",helperText:"URL form",getError:U=>try_(()=>U&&new URL(U)&&"",()=>"Invalid URL")},{k:"allowed_referer",comp:AllowedReferer,sm:3,md:4,placeholder:"any",label:"Links from other websites",helperText:"In case another website is linking your files"},{k:"block",label:!1,comp:ArrayField,xs:12,prepend:!0,sm:!0,autoRowHeight:!0,form:{maxWidth:"30em"},fields:[{k:"ip",label:"Blocked IP",sm:12,required:!0,wrap:!0,$width:2,comp:NetmaskField,$column:{mergeRender:{comment:{},expire:{}}},helperText:"Be careful to not kick yourself out, by blocking also your IP"},{k:"expire",$type:"dateTime",minDate:new Date,sm:6,$hideUnder:"sm",helperText:"Leave empty for no expiration"},{k:"disabled",$type:"boolean",label:"Enabled",helperText:"In case you want to not block without deleting the rule",toField:U=>!U,fromField:U=>U?void 0:!0,sm:6,$width:80},{k:"comment",$hideUnder:"sm"}]},reactExports.createElement(Section,{title:"Front-end",subtitle:"Following options affect only the front-end"}),{k:"file_menu_on_link",comp:SelectField,label:"Access file menu",md:4,options:{"by clicking on file name":!0,"by dedicated button":!1}},{k:"title",md:8,helperText:"You can see this in the tab of your browser"},{k:"auto_play_seconds",comp:NumberField,xs:6,sm:3,min:1,max:1e4,required:!0,label:"Auto-play seconds delay",helperText:md(`Default value for the [Show interface](${REPO_URL}discussions/270)`)},{k:"tile_size",comp:NumberField,xs:6,sm:3,max:MAX_TILE_SIZE,required:!0,label:"Default tiles size",helperText:wikiLink("Tiles","To enable tiles-mode")},{k:"theme",comp:SelectField,xs:6,sm:3,options:THEME_OPTIONS},{k:"sort_by",comp:SelectField,xs:6,sm:3,options:SORT_BY_OPTIONS},{k:"invert_order",comp:BoolField,xs:6,md:3},{k:"folders_first",comp:BoolField,xs:6,md:3},{k:"sort_numerics",comp:BoolField,xs:6,md:3,label:"Sort numeric names"},{k:"title_with_path",comp:BoolField,xs:6,md:3},{k:"favicon",comp:FileField,placeholder:"None",fileMask:"*.ico|"+IMAGE_FILEMASK,xs:12,helperText:"The icon associated to your website"},reactExports.createElement(Section,{title:"Uploads"}),{k:"dont_overwrite_uploading",comp:BoolField,md:4,label:"Uploads don't overwrite",helperText:"Files will be numbered to avoid overwriting"},{k:CFG.split_uploads,comp:NumberField,unit:"MB",md:2,step:.1,fromField:U=>U*1e6,toField:U=>U?U/1e6:null,placeholder:"disabled",label:"Split uploads in chunks",helperText:"Overcome proxy limits"},{k:"delete_unfinished_uploads_after",comp:NumberField,md:3,min:0,unit:"seconds",required:!0},{k:"min_available_mb",comp:NumberField,md:3,min:0,unit:"MBytes",placeholder:"None",label:"Min. available disk space",helperText:"Reject uploads that don't comply"},reactExports.createElement(Section,{title:"Others"}),{k:"keep_session_alive",comp:BoolField,sm:6,md:6,helperText:"Keeps you logged in while the page is left open and the computer is on"},{k:"session_duration",comp:NumberField,sm:3,md:3,min:5,unit:"seconds",required:!0},{k:CFG.size_1024,label:"KB size",comp:SelectField,sm:3,options:{1e3:!1,1024:!0}},{k:"show_hidden_files",comp:BoolField,sm:3},{k:CFG.comments_storage,comp:SelectField,xs:12,sm:6,md:5,options:{"in file DESCRIPT.ION":"","in file attributes":"attr","in file attributes + load DESCRIPT.ION":"attr+ion"}},{k:"descript_ion_encoding",xs:8,sm:3,md:4,label:"Encoding of file DESCRIPT.ION",comp:SelectField,disabled:!A.descript_ion,options:["utf8",720,775,819,850,852,862,869,874,808,..._.range(1250,1257),10029,20866,21866]},{k:"open_browser_at_start",comp:BoolField,label:"Open Admin-panel at start",xs:12,sm:6,md:3,helperText:"Browser is automatically launched with HFS"},{k:"zip_calculate_size_for_seconds",comp:NumberField,xs:12,sm:6,md:3,unit:"seconds",required:!0,label:"Calculate ZIP size for",helperText:"If time is not enough, the browser will not show download percentage"},{k:"mime",comp:ArrayField,label:!1,reorder:!0,prepend:!0,xs:12,sm:12,md:6,fields:[{k:"v",label:"Mime type",placeholder:"auto",$width:2,helperText:"Leave empty to get automatic value"},{k:"k",label:"File mask",helperText:reactExports.createElement(WildcardsSupported),$width:1,$column:{renderCell:({value:U,id:W})=>reactExports.createElement("code",{},U,U==="*"&&W<_.size(A.mime)-1&&iconTooltip(Warning,md("Mime with `*` should be the last, because first matching row applies"),{color:"warning.main",ml:1}))}}],toField:U=>Object.entries(U||{}).map(([W,V])=>({k:W,v:V})),fromField:U=>Object.fromEntries(U.map(W=>[W.k,W.v||"auto"]))},{k:"server_code",comp:TextEditorField,lang:"js",xs:12,helperText:md(`This code works similarly to [a plugin](${REPO_URL}blob/main/dev-plugins.md) (with some limitations)`)}]});function j(){return yt(this,null,function*(){var ue,pe;if(_.isEmpty(b))return toast$1("Nothing to save");const U=window.location,W=["port","https_port"];if(W.every(ge=>b[ge]!==void 0))return alertDialog$1("You cannot change both http and https port at once. Please, do one, save, and then do the other.","warning");const V=[(ue=v==null?void 0:v.http)==null?void 0:ue.listening,(pe=v==null?void 0:v.https)==null?void 0:pe.listening],J=location.protocol==="https:";J&&(W.reverse(),V.reverse());const Q=b[W[0]],X=A[W[1]],re=X>0&&V[1],ie=J?"http":"https";if(Q<0&&!re)return alertDialog$1("You cannot switch off this port unless you have a working fixed port for "+ie,"warning");if(Q===0&&!re)return alertDialog$1("You cannot randomize this port unless you have a working fixed port for "+ie,"warning");const oe=Q>0&&Q!=U.port;if(oe&&!(yield confirmDialog$1("You are changing the port and you may be disconnected")))return;const Z="cert"in b||"private_key"in b;if(J&&Z&&!(yield confirmDialog$1("You may disrupt https service, kicking you out")))return;yield apiCall("set_config",{values:b}),"split_uploads"in b&&(yield alertDialog$1('Users need to reload for the "split uploads" option to take effect',"warning"));const ee=ipForUrl(U.hostname),ce=U.pathname+U.hash,fe=Q<=0?`${J?"http:":"https:"}//${ee}:${X}${ce}`:oe?`${U.protocol}//${ee}:${Q||A[W[0]]}${ce}`:yield with_(`https://${ee}:${U.port}${ce}`,ge=>{var ye;return!J&&((ye=b.force_https)!=null?ye:d.force_https)&&fetch(ge).then(()=>ge,()=>0)});if(fe)return yield alertDialog$1("You are being redirected but in some cases this may fail. Hold on tight!","warning"),window.location.href=fe;const ae="port"in b||"https_port"in b;setTimeout(S,ae||Z?1e3:0),Object.assign(loaded,b),recalculateChanges(),toast$1("Changes applied","success")})}}function Section({title:d,subtitle:m}){return reactExports.createElement(Divider,{role:"heading",sx:{fontSize:"larger",fontWeight:"bold"}},d,reactExports.createElement(Box,{fontSize:"small",fontWeight:"normal"},m))}function recalculateChanges(){const d={};if(state$1.config)for(const[m,g]of Object.entries(state$1.config))JSON.stringify(g)!==JSON.stringify(loaded==null?void 0:loaded[m])&&(d[m]=g);pageState.changes=d}function isCertError(d){return/certificate/.test(d)}function isKeyError(d){return/private key/.test(d)}function PortField({label:d,value:m,onChange:g,setApi:x,status:b,suggestedPort:E=1,error:v,helperText:S}){const C=reactExports.useRef(E);m>0&&(C.current=m);const T=Number(m>0?C.current:m)||0;let R=b==null?void 0:b.error;return R&&(isCertError(R)||isKeyError(R)?R=void 0:v=!0),reactExports.createElement(Box,{},reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{sx:{flexGrow:1},label:d,error:v,value:T,options:[{label:"off",value:-1},{label:"random",value:0},{label:"choose",value:C.current}],onChange:g}),m>0&&reactExports.createElement(NumberField,{label:"Number",fullWidth:!1,value:m,onChange:g,setApi:x,error:v,min:1,max:65535,helperText:S,sx:{minWidth:"5.5em"}})),b&&reactExports.createElement(FormHelperText,{error:v},b===!0?"...":R!=null?R:(b==null?void 0:b.listening)&&"Correctly working on port "+b.port))}function AllowedReferer({label:d,value:m,onChange:g,error:x}){const b=!m||m==="-",E="example.com";return reactExports.createElement(Box,{display:"flex"},reactExports.createElement(SelectField,{label:d,value:b?m:E,options:{"allow all":"","forbid all":"-","allow some":E},onChange:g,error:x,sx:b?void 0:{maxWidth:"11em"}}),!b&&reactExports.createElement(StringField,{label:"Domain to allow",value:m,placeholder:"example.com",onChange:g,error:x,helperText:reactExports.createElement(WildcardsSupported)}))}function suggestMakingCert(){return yt(this,null,function*(){return new Promise(d=>{const{close:m}=newDialog({icon:CardMembership,title:"Get a certificate",onClose:d,Content:()=>reactExports.createElement(Box,{p:1,lineHeight:1.5},reactExports.createElement(Box,{},"HTTPS needs a certificate to work."),reactExports.createElement(Box,{},"We suggest you to ",reactExports.createElement(InLink,{to:"internet"},"get a free but proper certificate"),"."),reactExports.createElement(Box,{},"If you don't have a domain ",reactExports.createElement(LinkBtn,{onClick:g},"make a self-signed certificate")," but that ",wikiLink("HTTPS#certificate"," won't be perfect"),"."))});function g(){return yt(this,null,function*(){if(!window.crypto.subtle)return alertDialog$1("Retry this procedure on localhost","warning");const x=yield apiCall("make_self_signed_cert",{fileName:"self"});loaded&&Object.assign(loaded,x),setTimeout(exposedReloadStatus,1e3),setTimeout(exposedReloadStatus,2e3),Object.assign(state$1.config,x),yield alertDialog$1("Certificate saved","success"),m()})}})})}function LogoutPage(){const{element:d}=useApiEx("get_config",{only:[]}),{username:m}=useSnapState$1();return d||reactExports.createElement(Box,{display:"flex",flexDirection:"column",alignItems:"flex-start",gap:2},m?reactExports.createElement(reactExports.Fragment,{},"You are logged in as: "+m,reactExports.createElement(Btn$1,{icon:Logout,size:"large",onClick:()=>apiCall("logout").catch(x=>x.code!==HTTP_UNAUTHORIZED&&alertDialog$1(x))},"I want to logout")):reactExports.createElement(Alert,{severity:"info"},"You are not logged in, because authentication is not required on localhost"),reactExports.createElement(Btn$1,{icon:PowerSettingsNew,size:"large",color:"warning",confirm:"Stopping the server, this interface won't respond anymore",onClick(){return yt(this,null,function*(){yield apiCall("quit"),yield alertDialog$1("Good-bye","success"),location.reload()})}},"Quit HFS"))}function LangPage({setTitleSide:d}){const{list:m,error:g,connecting:x,reload:b}=useApiList("get_langs"),E=reactExports.useMemo(()=>["en",..._.uniq(m.map(S=>S.code))],[m]);return d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"Translation is limited to Front-end, it doesn't apply to Admin-panel"),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,Fe({mt:1,maxWidth:"50em",flex:1},fillFlexParentSx),reactExports.createElement(Box,{mb:1,display:"flex"},reactExports.createElement(Btn$1,{icon:Upload,onClick:v},"Add"),reactExports.createElement(Box,{flex:1}),reactExports.createElement(ForceLang,{langs:E})),reactExports.createElement(DataTable,{error:g,loading:x,rows:reactExports.useMemo(()=>_.sortBy(m,S=>(S.embedded?2:1)+S.code),[m.length]),hideFooter:!0,fillFlex:!0,columns:[{field:"code",width:110,valueFormatter:({value:S})=>S==null?void 0:S.toUpperCase()},{field:"version",width:120,hideUnder:"sm"},{field:"hfs_version",headerName:"HFS version",width:110},{field:"author",flex:1,hideUnder:"sm"}],actions:({row:S})=>[reactExports.createElement(IconBtn,{icon:Delete,title:S.embedded?"Cannot delete (embedded)":"Delete",confirm:`Delete language code "${S.code}"?`,disabled:S.embedded,onClick(){return yt(this,null,function*(){yield apiCall("del_lang",_.pick(S,"code")),b(),toast$1("Deleted")})}})]})));function v(){selectFiles(S=>yt(this,null,function*(){if(!S)return;const C={};for(const T of S)C[T.name]=yield readFile(T);try{yield apiCall("add_langs",{langs:C}),b(),toast$1("Loaded")}catch(T){yield alertDialog$1(T)}}),{accept:".json"})}}function ForceLang({langs:d}){const m=CFG.force_lang,{data:g,reload:x,loading:b}=useApiEx("get_config",{only:[m]}),[E,v]=reactExports.useState();reactExports.useEffect(()=>{var R;return v((R=g==null?void 0:g[m])!=null?R:E)},[g]);const[S,C]=reactExports.useState();return reactExports.createElement(SelectField,{fullWidth:!1,disabled:!!b||typeof S=="string",value:S!=null?S:E,onChange(R){return yt(this,null,function*(){C(R);try{yield apiCall("set_config",{values:{[m]:R}}),yield x()}finally{C(void 0)}})},options:[{label:"Respect browser language",value:""},...d.map(R=>({value:R,label:"Force language: "+R}))]})}function switchBtn(d,m,g){return reactExports.createElement(VerticalSwitch,Fe({checked:d||!1,onChange(x,b){m(b)},disabled:d===void 0},g))}const VerticalSwitch=styled(Switch)(({theme:d,size:m})=>{const g=m&&m==="small";return{height:g?36:48,width:g?18:26,padding:5,"& .MuiSwitch-switchBase":{margin:1,padding:0,transform:`translateY(${g?16:22}px)`,"&.Mui-checked":{color:d.palette.primary.contrastText,transform:"translateY(2px)","& .MuiSwitch-thumb:before":{backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"/></svg>')`},"& + .MuiSwitch-track":{backgroundColor:d.palette.grey[500]}}},"& .Mui-checked .MuiSwitch-thumb":{backgroundColor:d.palette.primary.main,boxShadow:"0px 2px 1px 1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12)"},"& .MuiSwitch-thumb":{width:g?16:24,height:g?16:24,backgroundColor:d.palette.grey[700],"&::before":{content:"''",position:"absolute",width:"85%",height:"85%",left:0,top:0,backgroundRepeat:"no-repeat",backgroundPosition:"center",backgroundImage:`url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" height="${g?14:20}" width="20" viewBox="0 0 20 20"><path fill="${encodeURIComponent(d.palette.primary.contrastText)}" d="M19,13H5V11H19V13Z"/></svg>')`}},"& .MuiSwitch-track":{backgroundColor:d.palette.grey[500],borderRadius:20/2}}}),names={top:"Top of HTML Body",bottom:"Bottom of HTML Body"};function CustomHtmlPage({setTitleSide:d}){const{data:m,reload:g}=useApiEx("get_custom_html"),{customHtmlSection:x}=useSnapState$1(),[b,E]=reactExports.useState({}),[v,S]=reactExports.useState({});reactExports.useEffect(()=>{m&&(S(m.sections),k(m.enabled))},[m]),reactExports.useEffect(()=>E(v),[v]);const C=reactExports.useMemo(()=>{const D=_.sortBy(Object.keys(b),isNumeric);return D.length&&!D.includes(x)&&(state$1.customHtmlSection=_.findKey(b,Boolean)||(D==null?void 0:D[0])||""),D.map(A=>{var I;return{value:A,label:(names[A]||prefix("HTTP ",HTTP_MESSAGES[A])||_.startCase(A))+((I=b[A])!=null&&I.trim()?" *":"")}})},[useDebounce(b,500)]),T=reactExports.useMemo(()=>!_.isEqualWith(v,b,(D,A)=>!D&&!A||void 0),[v,b]),[R,k]=reactExports.useState();return d(reactExports.useMemo(()=>reactExports.createElement(Box,{sx:{display:{xs:"none",md:"block"}}},reactExports.createElement(Alert,{severity:"info"},md("Add HTML code to some parts of the Front-end. It's saved to file `custom.html`, that you can edit directly with your editor of choice. "),wikiLink("customization","More help")),reactExports.createElement(Alert,{severity:"info"},md("To customize icons "),wikiLink("customization#icons","read documentation"))),[])),reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Box,{display:"flex",alignItems:"center",gap:1,mb:1},reactExports.createElement(SelectField,{label:"Section",value:x,options:C,onChange:D=>state$1.customHtmlSection=D}),reloadBtn(g),reactExports.createElement(IconBtn,{icon:Save,title:`Save
807
+ (ctrl+enter)`,modified:T,onClick:L}),hTooltip("Enable all sections",void 0,switchBtn(R,D=>yt(this,null,function*(){yield apiCall("set_config",{values:{[CFG.disable_custom_html]:!D}}),k(D)})))),reactExports.createElement(TextEditor,{lang:x==="style"?"css":x==="script"?"js":"html",value:(b==null?void 0:b[x])||"",style:{background:"#8881"},onValueChange(D){E(A=>$t(Fe({},A),{[x]:D}))},onKeyDown(D){["s","S","Enter"].includes(isCtrlKey(D))&&(L(),D.preventDefault())}}));function L(){return apiCall("set_custom_html",{sections:b}).then(()=>S(b))}}const COUNTRIES=ALL.filter(d=>WITH_IP.includes(d.code)),PORT_FORWARD_URL="https://portforward.com/",HIGHER_PORT=1080,MSG_ISP=reactExports.createElement("div",{},"HFS will probably not be reachable on the Internet. ",wikiLink("Work-on-the-internet#double-nat","Read more"));function InternetPage({setTitleSide:d}){var ee,ce,fe,ae,ue;const[m,g]=reactExports.useState(),[x,b]=reactExports.useState(!1),[E,v]=reactExports.useState(!1),S=useApiEx("get_status"),C=useApiEx("get_config",{only:[CFG.base_url]}),T=(ee=C.data)==null?void 0:ee[CFG.base_url],R=with_([(fe=(ce=S.data)==null?void 0:ce.http)==null?void 0:fe.error,(ue=(ae=S.data)==null?void 0:ae.https)==null?void 0:ue.error],([pe,ge])=>pe&&ge?"error":pe||ge?"warning":"success"),k=useApiEx("get_nat",{},{timeout:20}),{data:L}=useApiEx("get_public_ips"),{data:D}=k,A=D==null?void 0:D.internalPort,I=(D==null?void 0:D.mapped)&&D.mapped.private.port!==A&&D.mapped.private.port,N=(D==null?void 0:D.externalIp)&&L&&!L.includes(D.externalIp),z=useRequestRender();return reactExports.useEffect(()=>{z.state&&re(!0)},[z.state]),d(reactExports.useMemo(()=>reactExports.createElement(Alert,{severity:"info",sx:{display:{xs:"none",sm:"inherit"}}},"This page makes sure your site is working correctly on the Internet"),[])),reactExports.createElement(Flex$1,{vert:!0,gap:"2em",maxWidth:"40em"},Q(),J(),W(),B(),Y());function j(pe){return pe.replace(new RegExp(".+<body>(.+)<\\/body>.+","is"),(ge,ye)=>ye||ge).replace(/<[^>]+>/g," ")}function Y(){const{data:pe}=useApiEvents("get_dynamic_dns_error"),ge=reactExports.useRef();return reactExports.useEffect(()=>ge.current&&restartAnimation(ge.current,"1s blink"),[pe]),reactExports.createElement(TitleCard,{icon:Dns,title:"Dynamic DNS updater"},pe&&reactExports.createElement(Flex$1,{},pe.error?reactExports.createElement(ErrorIcon,{color:"error",ref:ge}):reactExports.createElement(Check,{color:"success",ref:ge}),formatTimestamp$1(pe.ts)," – ",prefix("Error: ",j(pe.error)).slice(0,500)||"Updated successfully"),"This tool can keep your domain updated with your latest IP address. Not every service is compatible, and most of them have their own software for the job, which is superior, but we offer this lightweight solution in case you are more keen to it.",reactExports.createElement(ConfigForm,{form:(ye,{setValues:Ee})=>({fields:[reactExports.createElement(Flex$1,{},_.map({NoIP:{url:"https://$username:$password@dynupdate.no-ip.com/nic/update?hostname=$domain",fields:["username","password","domain"]},DuckDNS:{url:"https://www.duckdns.org/update/$domain/$token>OK",fields:[{k:"domain",helperText:"do NOT include the .duckdns.org part"},"token"]}},({url:ve,fields:Se},$e)=>reactExports.createElement(Btn$1,{key:ve,onClick:()=>formDialog$1({title:$e+" wizard",form:{maxWidth:"20em",before:reactExports.createElement(Box,{mb:1},"Following information is stored non-encrypted"),fields:Se.map(Me=>_.isString(Me)?{k:Me}:Me)}}).then(Me=>Me&&Ee({[CFG.dynamic_dns_url]:replace(ve,Me,"$")}))},$e+" wizard"))),{k:CFG.dynamic_dns_url,label:"Updater URL",multiline:!0,helperText:"Refer to your DNS service provider to know what URL can automatically keep your domain updated. Supported symbols are $IP4, $IP6, $IPX. Optionally, you can append “>” followed by a regular expression to determine a successful answer, otherwise status code will be used."}]})}))}function B(){const pe=reactExports.useMemo(()=>COUNTRIES.map(ge=>({value:ge.code,label:ge.name})),[COUNTRIES]);return reactExports.createElement(TitleCard,{title:"Geo IP",icon:Public},reactExports.createElement(ConfigForm,{keys:[CFG.geo_enable,CFG.geo_allow,CFG.geo_list,CFG.geo_allow_unknown],form:ge=>{var ye;return{fields:[{k:CFG.geo_enable,comp:BoolField,label:"Enable",helperText:md("Necessary database will be downloaded every month (2MB). Service is made possible thanks to [IP2Location](https://www.ip2location.com).")},...ge!=null&&ge[CFG.geo_enable]?[{k:CFG.geo_allow,comp:SelectField,label:"Rule",options:{"no restriction":null,"block selected countries":!1,"allow selected countries":!0}},ge[CFG.geo_allow]!=null&&{k:CFG.geo_list,comp:MultiSelectField,label:`Selected countries (${((ye=ge[CFG.geo_list])==null?void 0:ye.length)||0})`,valueSeparator:!1,placeholder:"none",options:pe,renderOption:Ee=>reactExports.createElement(Country,{code:Ee.value,long:!0}),clearable:!0,getError:Ee=>ge[CFG.geo_allow]&&!(Ee!=null&&Ee.length)&&"Cannot be empty"},ge[CFG.geo_allow]!=null&&{k:CFG.geo_allow_unknown,comp:SelectField,label:"When country cannot be determined",helperText:"Local IPs are ignored",options:{Allow:!0,Block:!1}}]:[]]}},addToBar:[reactExports.createElement(Box,{flex:1}),reactExports.createElement(Btn$1,{icon:Search,onClick:U},"Lookup IP")]}))}function U(){return yt(this,null,function*(){const pe=yield promptDialog$1("Lookup IP");if(!pe)return;const{country:ge}=yield apiCall("geo_ip",{ip:pe});return ge?alertDialog$1(reactExports.createElement(Country,{code:ge,long:!0}),"success"):alertDialog$1("IP not found","error")})}function W(){var De;const[pe,ge]=reactExports.useState(),ye=useApiEx("get_cert");reactExports.useEffect(()=>{apiCall("get_config",{only:["acme_domain","acme_renew"]}).then(ge)},[]);const[Ee,ve]=reactExports.useState(!1);if(!pe)return reactExports.createElement(CircularProgress);const{https:Se}=S.data||{},$e=(Se==null?void 0:Se.port)===PORT_DISABLED,Me=Se==null?void 0:Se.error;return S.element||reactExports.createElement(TitleCard,{title:"HTTPS",icon:Lock,color:Se!=null&&Se.listening&&!Me?"success":"warning"},Me?reactExports.createElement(Alert,{severity:"warning"},Me):$e&&reactExports.createElement(LinkBtn,{onClick:V},"Not enabled"),ye.element||with_(ye.data,Le=>{var Ge,Ie;return Le.none?reactExports.createElement(LinkBtn,{onClick:Re},"No certificate configured"):reactExports.createElement(Box,{},reactExports.createElement(CardMembership,{fontSize:"small",sx:{mr:1,verticalAlign:"middle"}}),"Current certificate",reactExports.createElement("ul",{},reactExports.createElement("li",{},"Domain: ",((Ge=Le.altNames)==null?void 0:Ge.join(" + "))||"-"),reactExports.createElement("li",{},"Issuer: ",((Ie=Le.issuer)==null?void 0:Ie.O)||reactExports.createElement("i",{},"self-signed")),reactExports.createElement("li",{},"Validity: ",["validFrom","validTo"].map(Ye=>formatTimestamp$1(Le[Ye])).join(" – "))))}),reactExports.createElement(Divider),reactExports.createElement(Form,{gap:1,gridProps:{rowSpacing:1},values:pe,set(Le,Ge){ge(Ie=>{const Ye=$t(Fe({},Ie),{[Ge]:Le});return ve(!0),apiCall("set_config",{values:Ye}).finally(()=>ve(!1)),Ye})},fields:[md("Generate certificate using [Let's Encrypt](https://letsencrypt.org)"),{k:"acme_domain",label:"Domain for certificate",sm:((De=pe.acme_domain)==null?void 0:De.length)>30?12:6,required:!0,multiline:!0,fromField:Le=>Le.replaceAll(`
808
808
  `,","),toField:Le=>Le.replaceAll(",",`
809
809
  `),helperText:md(`Example: your.domain.com
810
- Multiple domains on separated lines`)},{k:"acme_renew",label:"Automatic renew one month before expiration",comp:BoolField,disabled:!pe.acme_domain},with_(S.data.acmeRenewError,Le=>Le&&reactExports.createElement(Alert,{severity:"error"},Le))],save:$t(Fe({children:"Request",startIcon:reactExports.createElement(Send)},Ee&&{loading:!0}),{onClick(){return vt(this,null,function*(){var Ye;const[Le,...Ge]=pe.acme_domain.split(",");Le===((Ye=ye.data.subject)==null?void 0:Ye.CN)&&Number(new Date(ye.data.validTo))-Date.now()>=30*DAY&&!(yield confirmDialog$1("Your certificate is still good",{trueText:"Make a new one anyway"}))||(yield confirmDialog$1("HFS must temporarily serve HTTP on public port 80, and your router must be configured or this operation will fail"))&&((yield X(Le))||(yield apiCall("make_cert",{domain:Le,altNames:Ge},{timeout:2e4}).then(()=>vt(this,null,function*(){yield alertDialog$1("Certificate created","success"),$e&&(yield V()),ye.reload()}),alertDialog$1).finally(S.reload)))})}})}));function Re(){return vt(this,null,function*(){yield suggestMakingCert(),ye.reload(),S.reload()})}}function V(){return vt(this,null,function*(){if(!(yield confirmDialog$1(`HTTPS is currently disabled.
811
- Full configuration is available in the Options page.`,{trueText:"Enable it"})))return;const pe=waitDialog();try{yield apiCall("set_config",{values:{https_port:443}}),yield wait(1e3),S.reload()}finally{pe()}})}function J(){return C.element||reactExports.createElement(TitleCard,{icon:Public,title:"Address"},reactExports.createElement(Flex$1,{flexWrap:"wrap"},"Main address: ",T?reactExports.createElement("tt",{},T):"automatic, not configured",reactExports.createElement(Btn$1,{size:"small",variant:"outlined","aria-label":"Change address",onClick:()=>void changeBaseUrl().then(C.reload)},"Change")),reactExports.createElement(ConfigForm,{saveOnChange:!0,onSave(){S.reload()},form:{fields:[{k:CFG.roots,label:!1,helperText:"You can decide different home-folders (in the VFS) for different domains, a bit like virtual hosts. If none is matched, the default home will be used.",comp:ArrayField,fields:[{k:"host",label:"Domain/Host",helperText:"Wildcards supported: *.domain.com|other.com",getError:pe=>(pe==null?void 0:pe.includes("/"))&&"No URLs or paths here!"},{k:"root",label:"Home/Root",comp:VfsPathField,files:!1,placeholder:"default",helperText:"Root path in VFS",$column:{renderCell({value:pe}){return pe||reactExports.createElement("i",{},"default")}}}],toField:pe=>Object.entries(pe||{}).map(([ge,ye])=>({host:ge,root:ye})),fromField:pe=>Object.fromEntries(pe.map(ge=>[ge.host,ge.root||""]))},{k:CFG.force_address,label:"Accept requests only using domains above (and localhost)",comp:BoolField}]}}))}function Q(){if(k.error)return k.element;if(!D||!L)return reactExports.createElement(CircularProgress);const pe=L.includes(D==null?void 0:D.localIp);return reactExports.createElement(Flex$1,{justifyContent:"space-around"},reactExports.createElement(Device,{name:"Server",icon:pe?Storage:HomeWorkTwoTone,color:R,ip:D==null?void 0:D.localIp,below:A&&reactExports.createElement(Box,{fontSize:"smaller",className:"port "+HIDE_IN_TESTS},"port ",A)}),!pe&&reactExports.createElement(DataLine),!pe&&reactExports.createElement(Device,{name:"Router",icon:RouterTwoTone,ip:D==null?void 0:D.gatewayIp,color:(D==null?void 0:D.mapped)&&(I?"warning":"success"),below:E?reactExports.createElement(LinearProgress,{sx:{height:"1em"}}):reactExports.createElement(LinkBtn,{fontSize:"smaller",display:"block",onClick:ie},"port ",I?"is wrong":(D==null?void 0:D.externalPort)||"unknown")}),reactExports.createElement(DataLine),reactExports.createElement(Device,{name:"Internet",icon:PublicTwoTone,ip:L,color:m?"success":m===!1?"error":N?"warning":void 0,below:x?reactExports.createElement(LinearProgress,{sx:{height:"1em"}}):reactExports.createElement(Box,{fontSize:"smaller",className:HIDE_IN_TESTS},N&&reactExports.createElement(LinkBtn,{display:"block",onClick:()=>alertDialog$1(MSG_ISP,"warning")},"Double NAT"),m?"Working!":m===!1?"Failed!":""," ",(T>""||L.length>0)&&D.internalPort&&reactExports.createElement(LinkBtn,{onClick:()=>re()},"Verify")||" ")}))}function X(pe){return vt(this,null,function*(){return pe&&(yield apiCall("check_domain",{domain:pe}).catch(ge=>confirmDialog$1(String(ge),{trueText:"Continue anyway",falseText:"Stop"})))===!1})}function re(pe=!1){return vt(this,null,function*(){yield k.loading;const ge=k.getData();if(ge&&(g(void 0),!(!pe&&!(yield confirmDialog$1("This test will check if your server is working properly on the Internet"))))){b(!0);try{const ye=T&&new URL(T).hostname,Ee=!isIpLan(ye)&&T;if(!isIP(ye)&&(yield X(ye)))return;const ve=Ee&&(yield apiCall("self_check",{url:Ee}).catch(De=>alertDialog$1(De.code?"Sorry, this function is not available at the moment. Retry later.":De,"error")));if(Ee&&!ve)return;if(ve!=null&&ve.success)return g(!0),alertDialog$1(reactExports.createElement(Box,{},"Your server is responding correctly over the Internet:",reactExports.createElement("ul",{},reactExports.createElement("li",{},ve.url))),"success");(ve==null?void 0:ve.success)===!1&&(yield alertDialog$1(md(`Your configured address ${Ee} doesn't seem to work 😰
810
+ Multiple domains on separated lines`)},{k:"acme_renew",label:"Automatic renew one month before expiration",comp:BoolField,disabled:!pe.acme_domain},with_(S.data.acmeRenewError,Le=>Le&&reactExports.createElement(Alert,{severity:"error"},Le))],save:$t(Fe({children:"Request",startIcon:reactExports.createElement(Send)},Ee&&{loading:!0}),{onClick(){return yt(this,null,function*(){var Ye;const[Le,...Ge]=pe.acme_domain.split(",");Le===((Ye=ye.data.subject)==null?void 0:Ye.CN)&&Number(new Date(ye.data.validTo))-Date.now()>=30*DAY&&!(yield confirmDialog$1("Your certificate is still good",{trueText:"Make a new one anyway"}))||(yield confirmDialog$1("HFS must temporarily serve HTTP on public port 80, and your router must be configured or this operation will fail"))&&((yield X(Le))||(yield apiCall("make_cert",{domain:Le,altNames:Ge},{timeout:2e4}).then(()=>yt(this,null,function*(){yield alertDialog$1("Certificate created","success"),$e&&(yield V()),ye.reload()}),alertDialog$1).finally(S.reload)))})}})}));function Re(){return yt(this,null,function*(){yield suggestMakingCert(),ye.reload(),S.reload()})}}function V(){return yt(this,null,function*(){if(!(yield confirmDialog$1(`HTTPS is currently disabled.
811
+ Full configuration is available in the Options page.`,{trueText:"Enable it"})))return;const pe=waitDialog();try{yield apiCall("set_config",{values:{https_port:443}}),yield wait(1e3),S.reload()}finally{pe()}})}function J(){return C.element||reactExports.createElement(TitleCard,{icon:Public,title:"Address"},reactExports.createElement(Flex$1,{flexWrap:"wrap"},"Main address: ",T?reactExports.createElement("tt",{},T):"automatic, not configured",reactExports.createElement(Btn$1,{size:"small",variant:"outlined","aria-label":"Change address",onClick:()=>void changeBaseUrl().then(C.reload)},"Change")),reactExports.createElement(ConfigForm,{saveOnChange:!0,onSave(){S.reload()},form:{fields:[{k:CFG.roots,label:!1,helperText:"You can decide different home-folders (in the VFS) for different domains, a bit like virtual hosts. If none is matched, the default home will be used.",comp:ArrayField,fields:[{k:"host",label:"Domain/Host",helperText:"Wildcards supported: *.domain.com|other.com",getError:pe=>(pe==null?void 0:pe.includes("/"))&&"No URLs or paths here!"},{k:"root",label:"Home/Root",comp:VfsPathField,files:!1,placeholder:"default",helperText:"Root path in VFS",$column:{renderCell({value:pe}){return pe||reactExports.createElement("i",{},"default")}}}],toField:pe=>Object.entries(pe||{}).map(([ge,ye])=>({host:ge,root:ye})),fromField:pe=>Object.fromEntries(pe.map(ge=>[ge.host,ge.root||""]))},{k:CFG.force_address,label:"Accept requests only using domains above (and localhost)",comp:BoolField}]}}))}function Q(){if(k.error)return k.element;if(!D||!L)return reactExports.createElement(CircularProgress);const pe=L.includes(D==null?void 0:D.localIp);return reactExports.createElement(Flex$1,{justifyContent:"space-around"},reactExports.createElement(Device,{name:"Server",icon:pe?Storage:HomeWorkTwoTone,color:R,ip:D==null?void 0:D.localIp,below:A&&reactExports.createElement(Box,{fontSize:"smaller",className:"port "+HIDE_IN_TESTS},"port ",A)}),!pe&&reactExports.createElement(DataLine),!pe&&reactExports.createElement(Device,{name:"Router",icon:RouterTwoTone,ip:D==null?void 0:D.gatewayIp,color:(D==null?void 0:D.mapped)&&(I?"warning":"success"),below:E?reactExports.createElement(LinearProgress,{sx:{height:"1em"}}):reactExports.createElement(LinkBtn,{fontSize:"smaller",display:"block",onClick:ie},"port ",I?"is wrong":(D==null?void 0:D.externalPort)||"unknown")}),reactExports.createElement(DataLine),reactExports.createElement(Device,{name:"Internet",icon:PublicTwoTone,ip:L,color:m?"success":m===!1?"error":N?"warning":void 0,below:x?reactExports.createElement(LinearProgress,{sx:{height:"1em"}}):reactExports.createElement(Box,{fontSize:"smaller",className:HIDE_IN_TESTS},N&&reactExports.createElement(LinkBtn,{display:"block",onClick:()=>alertDialog$1(MSG_ISP,"warning")},"Double NAT"),m?"Working!":m===!1?"Failed!":""," ",(T>""||L.length>0)&&D.internalPort&&reactExports.createElement(LinkBtn,{onClick:()=>re()},"Verify")||" ")}))}function X(pe){return yt(this,null,function*(){return pe&&(yield apiCall("check_domain",{domain:pe}).catch(ge=>confirmDialog$1(String(ge),{trueText:"Continue anyway",falseText:"Stop"})))===!1})}function re(pe=!1){return yt(this,null,function*(){yield k.loading;const ge=k.getData();if(ge&&(g(void 0),!(!pe&&!(yield confirmDialog$1("This test will check if your server is working properly on the Internet"))))){b(!0);try{const ye=T&&new URL(T).hostname,Ee=!isIpLan(ye)&&T;if(!isIP(ye)&&(yield X(ye)))return;const ve=Ee&&(yield apiCall("self_check",{url:Ee}).catch(De=>alertDialog$1(De.code?"Sorry, this function is not available at the moment. Retry later.":De,"error")));if(Ee&&!ve)return;if(ve!=null&&ve.success)return g(!0),alertDialog$1(reactExports.createElement(Box,{},"Your server is responding correctly over the Internet:",reactExports.createElement("ul",{},reactExports.createElement("li",{},ve.url))),"success");(ve==null?void 0:ve.success)===!1&&(yield alertDialog$1(md(`Your configured address ${Ee} doesn't seem to work 😰
812
812
  still, we are going to test your IP address 🤞`),"warning"));const Se=yield apiCall("self_check",{});if(Se.some(De=>De.success)){g(!0);const De=ve.success===!1&&md(`Your server is responding over the Internet 👍
813
813
  but not with configured address ${Ee} 👎
814
- just on your IP:`);return alertDialog$1(reactExports.createElement(Box,{},De||"Your server is responding correctly over the Internet:",reactExports.createElement("ul",{},...Se.map(Be=>reactExports.createElement("li",{},Be.url)))),De?"warning":"success")}if(g(!1),I)return oe().then(z);if(N)return alertDialog$1(MSG_ISP,"warning");const $e="We couldn't reach your server from the Internet. ";if(ge.upnp&&!ge.mapped)return confirmDialog$1($e+"Try port-forwarding on your router",{trueText:"Fix it"}).then(De=>vt(this,null,function*(){if(De){try{yield Z(ge.internalPort,"","")}catch(Be){yield Z(HIGHER_PORT,"")}toast$1("Port forwarded, now we verify again","success"),z()}}));const Me=yield apiCall("get_config",{only:[CFG.geo_enable,CFG.geo_allow]}),{close:Re}=alertDialog$1(reactExports.createElement(Box,{},$e+"Possible causes:",reactExports.createElement("ul",{},Me[CFG.geo_enable]&&Me[CFG.geo_allow]!=null&&reactExports.createElement("li",{},"You may be blocking a country from where the test is performed"),!ge.upnp&&reactExports.createElement("li",{},"Your router may need to be configured. ",reactExports.createElement(Link$1,{href:PORT_FORWARD_URL,target:"help"},"How?")),reactExports.createElement("li",{},"There could be a firewall, try configuring or disabling it."),(ge.externalPort||ge.internalPort)<=1024&&reactExports.createElement("li",{},"Your Internet Provider may be blocking ports under 1024. ",ge.upnp&&reactExports.createElement(Button,{size:"small",onClick(){Re(),Z(HIGHER_PORT).then(z)}},"Try "+HIGHER_PORT)),ge.mapped&&reactExports.createElement("li",{},"A bug in your modem/router, try rebooting it."),reactExports.createElement("li",{},MSG_ISP))),"warning")}catch(ye){alertDialog$1(ye)}finally{b(!1)}}})}function ie(){return vt(this,null,function*(){if(!D)return;if(I)return(yield confirmDialog$1(`There is a port-forwarding but it is pointing to the wrong port (${I})`,{trueText:"Fix it"}))&&oe();if(!D.upnp)return alertDialog$1(reactExports.createElement(Box,{lineHeight:1.5},md(`We cannot help you configuring your router because UPnP is not available.
814
+ just on your IP:`);return alertDialog$1(reactExports.createElement(Box,{},De||"Your server is responding correctly over the Internet:",reactExports.createElement("ul",{},...Se.map(Be=>reactExports.createElement("li",{},Be.url)))),De?"warning":"success")}if(g(!1),I)return oe().then(z);if(N)return alertDialog$1(MSG_ISP,"warning");const $e="We couldn't reach your server from the Internet. ";if(ge.upnp&&!ge.mapped)return confirmDialog$1($e+"Try port-forwarding on your router",{trueText:"Fix it"}).then(De=>yt(this,null,function*(){if(De){try{yield Z(ge.internalPort,"","")}catch(Be){yield Z(HIGHER_PORT,"")}toast$1("Port forwarded, now we verify again","success"),z()}}));const Me=yield apiCall("get_config",{only:[CFG.geo_enable,CFG.geo_allow]}),{close:Re}=alertDialog$1(reactExports.createElement(Box,{},$e+"Possible causes:",reactExports.createElement("ul",{},Me[CFG.geo_enable]&&Me[CFG.geo_allow]!=null&&reactExports.createElement("li",{},"You may be blocking a country from where the test is performed"),!ge.upnp&&reactExports.createElement("li",{},"Your router may need to be configured. ",reactExports.createElement(Link$1,{href:PORT_FORWARD_URL,target:"help"},"How?")),reactExports.createElement("li",{},"There could be a firewall, try configuring or disabling it."),(ge.externalPort||ge.internalPort)<=1024&&reactExports.createElement("li",{},"Your Internet Provider may be blocking ports under 1024. ",ge.upnp&&reactExports.createElement(Button,{size:"small",onClick(){Re(),Z(HIGHER_PORT).then(z)}},"Try "+HIGHER_PORT)),ge.mapped&&reactExports.createElement("li",{},"A bug in your modem/router, try rebooting it."),reactExports.createElement("li",{},MSG_ISP))),"warning")}catch(ye){alertDialog$1(ye)}finally{b(!1)}}})}function ie(){return yt(this,null,function*(){if(!D)return;if(I)return(yield confirmDialog$1(`There is a port-forwarding but it is pointing to the wrong port (${I})`,{trueText:"Fix it"}))&&oe();if(!D.upnp)return alertDialog$1(reactExports.createElement(Box,{lineHeight:1.5},md(`We cannot help you configuring your router because UPnP is not available.
815
815
  Find more help [on this website](${PORT_FORWARD_URL}).`)),"info");const pe=yield promptDialog$1(md(`This will ask the router to map your port, so that it can be reached from the Internet.
816
- You can set the same number of the local network (${A}), or a different one.`),{value:D.externalPort||A,field:{label:"Port seen from the Internet",comp:NumberField},addToBar:D.mapped&&[reactExports.createElement(Button,{color:"warning",onClick:ge},"Remove")],dialogProps:{sx:{maxWidth:"20em"}}});pe&&(yield Z(Number(pe),"Port forwarded").catch(()=>{}));function ge(){closeDialog(),Z(0,"Port removed")}})}function oe(){return D!=null&&D.externalPort?Z(D.externalPort,"Forwarding corrected"):alertDialog$1("externalPort not found","error")}function Z(pe,ge="",ye="Operation failed"){return vt(this,null,function*(){v(!0);try{yield apiCall("map_port",{external:pe}),k.reload(),ge&&toast$1(ge,"success"),g(void 0)}catch(Ee){if(ye){const ve=(pe||D.internalPort)<1024,Se=ye+prefix(": ",Ee==null?void 0:Ee.message)+(ve?". Some routers refuse to work with ports under 1024.":"");yield alertDialog$1(Se,"error")}throw Ee}finally{v(!1)}})}}function DataLine(){return reactExports.createElement(Box,{flex:1,className:"animated-dashed-line"})}function Device({name:d,icon:m,color:g,ip:x,below:b}){return reactExports.createElement(Box,{display:"inline-block",textAlign:"center"},reactExports.createElement(m,{color:g,sx:{fontSize:"min(20vw, 10vh)",mb:"-0.1em"}}),reactExports.createElement(Box,{fontSize:"larger"},d),reactExports.createElement(Box,{fontSize:"smaller",whiteSpace:"pre-wrap",className:"ip "+HIDE_IN_TESTS},wantArray(x).join(`
817
- `)||"unknown"),b)}function TitleCard({title:d,icon:m,color:g,children:x}){return reactExports.createElement(Card,{},reactExports.createElement(CardContent,{},reactExports.createElement(Flex$1,{vert:!0},reactExports.createElement(Typography,{variant:"h3",fontSize:"x-large"},m&&reactExports.createElement(m,{color:g,sx:{mr:1,mb:"2px"}}),d),x)))}const mainMenu=[{path:"",icon:Home,label:"Home",comp:HomePage},{path:"fs",icon:AccountTree,label:"Shared files",comp:VfsPage},{path:"accounts",icon:ManageAccounts,comp:AccountsPage},{path:"options",icon:Settings,comp:OptionsPage},{path:"internet",icon:Public,comp:InternetPage},{path:"monitoring",icon:Monitor,comp:MonitorPage,noPaddingOnMobile:!0},{path:"logs",icon:History,comp:LogsPage,noPaddingOnMobile:!0},{path:"language",icon:Translate,comp:LangPage},{path:"plugins",icon:Extension,comp:PluginsPage,noPaddingOnMobile:!0},{path:"html",icon:Code,label:"Custom HTML",comp:CustomHtmlPage},{path:"logout",icon:Logout,comp:LogoutPage}];function Menu({onSelect:d,itemTitle:m}){const{VERSION:g}=getHFS(),x="hfs-logo.svg",b=useWindowSize().height<700;return reactExports.createElement(Box,{display:"flex",flexDirection:"column",bgcolor:"primary.main",minHeight:"100%"},reactExports.createElement(List,{sx:{pr:1,py:0,color:"primary.contrastText",height:"100vh",boxSizing:"border-box",overflowY:"auto",position:"sticky",top:0,display:"flex",flexDirection:"column","&>a":{flex:"0"}}},reactExports.createElement(Box,{id:"hfs-name",display:"flex",px:2,py:.5,gap:2,alignItems:"center"},reactExports.createElement(Box,{color:"primary.contrastText",fontSize:"min(3rem, max(5vw, 4vh))",sx:{cursor:"pointer"},onClick(){return vt(this,null,function*(){(yield confirmDialog$1("Open HFS website?"))&&window.open(WEBSITE)})}},"HFS"),reactExports.createElement(Box,{fontSize:"small",className:HIDE_IN_TESTS},replaceStringToReact(g||"",/-/,()=>reactExports.createElement("br"))),b&&reactExports.createElement("img",{src:x,style:{height:"2.5em"}})),mainMenu.map((v,S)=>hTooltip(m(S),getMenuLabel(v)+" "+m(S),reactExports.createElement(ListItemButton,{to:v.path,component:NavLink,onClick:d,style:({isActive:C})=>C?{textDecoration:"underline"}:{},children:void 0},v.icon&&reactExports.createElement(ListItemIcon,{sx:{color:"primary.contrastText",minWidth:48}},reactExports.createElement(v.icon)),reactExports.createElement(ListItemText,{sx:{whiteSpace:"nowrap"},primary:getMenuLabel(v)})),{key:v.path,placement:"right"})),!b&&reactExports.createElement(Box,{id:"hfs-logo",sx:{flex:1,opacity:.7,background:`url(${x}) no-repeat bottom`,backgroundSize:"contain",margin:2}})))}function getMenuLabel(d){var m;return d&&((m=d.label)!=null?m:_.capitalize(d.path))}function LoginRequired({children:d}){const{loginRequired:m}=useSnapState$1();return m===HTTP_FORBIDDEN?reactExports.createElement(Center,{},reactExports.createElement(Alert,{severity:"error"},"Admin-panel only for localhost"),reactExports.createElement(Box,{mt:2,fontSize:"small"},"because no admin account was configured")):m?reactExports.createElement(LoginForm):reactExports.createElement(reactExports.Fragment,{},d)}function LoginForm(){var v;const[d,m]=reactExports.useState({username:"",password:"",[ALLOW_SESSION_IP_CHANGE]:!1}),[g,x]=reactExports.useState(""),b=reactExports.useRef(),E=(v=b.current)==null?void 0:v.querySelector('input[value=""]');return reactExports.useEffect(()=>{var C;return(C=E==null?void 0:E.focus)==null?void 0:C.call(E)},[E]),reactExports.createElement(Center,{},reactExports.createElement(Form,{formRef:b,values:d,m:2,maxWidth:"25em",set(C,T){m(R=>$t(Fe({},R),{[T]:C}))},fields:[{k:"username",autoComplete:"username",autoFocus:!0,required:!0},{k:"password",type:"password",autoComplete:"current-password",required:!0},{k:ALLOW_SESSION_IP_CHANGE,comp:BoolField,label:"Allow IP change during this session"}],addToBar:[g&&reactExports.createElement(Alert,{severity:"error",sx:{flex:1}},g)],saveOnEnter:!0,save:{children:"Enter",startIcon:null,onClick(){return vt(this,null,function*(){try{x(""),yield login(d.username,d.password,{[ALLOW_SESSION_IP_CHANGE]:d[ALLOW_SESSION_IP_CHANGE]})}catch(C){x(String(C))}})}}}))}function login(d,m,g){return vt(this,null,function*(){const x=yield srpClientSequence(d,m,apiCall,g).catch(b=>{throw(b==null?void 0:b.code)===HTTP_UNAUTHORIZED?b.message||"Wrong username or password":b==="trust"?"Login aborted: server identity cannot be trusted":(b==null?void 0:b.name)==="AbortError"?"Server didn't respond":(b==null?void 0:b.message)||"Unknown error"});if(!x.adminUrl)throw"This account has no Admin access";state$1.loginRequired=!1,refreshSession(x)})}const refreshSession=makeSessionRefresher(state$1);var weekOfYear$2={exports:{}},weekOfYear$1=weekOfYear$2.exports,hasRequiredWeekOfYear;function requireWeekOfYear(){return hasRequiredWeekOfYear||(hasRequiredWeekOfYear=1,function(d,m){(function(g,x){d.exports=x()})(weekOfYear$1,function(){var g="week",x="year";return function(b,E,v){var S=E.prototype;S.week=function(C){if(C===void 0&&(C=null),C!==null)return this.add(7*(C-this.week()),"day");var T=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var R=v(this).startOf(x).add(1,x).date(T),k=v(this).endOf(g);if(R.isBefore(k))return 1}var L=v(this).startOf(x).date(T).startOf(g).subtract(1,"millisecond"),D=this.diff(L,g,!0);return D<0?v(this).startOf("week").week():Math.ceil(D)},S.weeks=function(C){return C===void 0&&(C=null),this.week(C)}}})}(weekOfYear$2)),weekOfYear$2.exports}var weekOfYearExports=requireWeekOfYear();const weekOfYear=getDefaultExportFromCjs(weekOfYearExports);var customParseFormat$1={exports:{}},customParseFormat=customParseFormat$1.exports,hasRequiredCustomParseFormat;function requireCustomParseFormat(){return hasRequiredCustomParseFormat||(hasRequiredCustomParseFormat=1,function(d,m){(function(g,x){d.exports=x()})(customParseFormat,function(){var g={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},x=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,b=/\d\d/,E=/\d\d?/,v=/\d*[^-_:/,()\s\d]+/,S={},C=function(I){return(I=+I)+(I>68?1900:2e3)},T=function(I){return function(N){this[I]=+N}},R=[/[+-]\d\d:?(\d\d)?|Z/,function(I){(this.zone||(this.zone={})).offset=function(N){if(!N||N==="Z")return 0;var z=N.match(/([+-]|\d\d)/g),j=60*z[1]+(+z[2]||0);return j===0?0:z[0]==="+"?-j:j}(I)}],k=function(I){var N=S[I];return N&&(N.indexOf?N:N.s.concat(N.f))},L=function(I,N){var z,j=S.meridiem;if(j){for(var Y=1;Y<=24;Y+=1)if(I.indexOf(j(Y,0,N))>-1){z=Y>12;break}}else z=I===(N?"pm":"PM");return z},D={A:[v,function(I){this.afternoon=L(I,!1)}],a:[v,function(I){this.afternoon=L(I,!0)}],S:[/\d/,function(I){this.milliseconds=100*+I}],SS:[b,function(I){this.milliseconds=10*+I}],SSS:[/\d{3}/,function(I){this.milliseconds=+I}],s:[E,T("seconds")],ss:[E,T("seconds")],m:[E,T("minutes")],mm:[E,T("minutes")],H:[E,T("hours")],h:[E,T("hours")],HH:[E,T("hours")],hh:[E,T("hours")],D:[E,T("day")],DD:[b,T("day")],Do:[v,function(I){var N=S.ordinal,z=I.match(/\d+/);if(this.day=z[0],N)for(var j=1;j<=31;j+=1)N(j).replace(/\[|\]/g,"")===I&&(this.day=j)}],M:[E,T("month")],MM:[b,T("month")],MMM:[v,function(I){var N=k("months"),z=(k("monthsShort")||N.map(function(j){return j.slice(0,3)})).indexOf(I)+1;if(z<1)throw new Error;this.month=z%12||z}],MMMM:[v,function(I){var N=k("months").indexOf(I)+1;if(N<1)throw new Error;this.month=N%12||N}],Y:[/[+-]?\d+/,T("year")],YY:[b,function(I){this.year=C(I)}],YYYY:[/\d{4}/,T("year")],Z:R,ZZ:R};function A(I){var N,z;N=I,z=S&&S.formats;for(var j=(I=N.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Q,X,re){var ie=re&&re.toUpperCase();return X||z[re]||g[re]||z[ie].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(oe,Z,ee){return Z||ee.slice(1)})})).match(x),Y=j.length,B=0;B<Y;B+=1){var U=j[B],W=D[U],V=W&&W[0],J=W&&W[1];j[B]=J?{regex:V,parser:J}:U.replace(/^\[|\]$/g,"")}return function(Q){for(var X={},re=0,ie=0;re<Y;re+=1){var oe=j[re];if(typeof oe=="string")ie+=oe.length;else{var Z=oe.regex,ee=oe.parser,ce=Q.slice(ie),fe=Z.exec(ce)[0];ee.call(X,fe),Q=Q.replace(fe,"")}}return function(ae){var ue=ae.afternoon;if(ue!==void 0){var pe=ae.hours;ue?pe<12&&(ae.hours+=12):pe===12&&(ae.hours=0),delete ae.afternoon}}(X),X}}return function(I,N,z){z.p.customParseFormat=!0,I&&I.parseTwoDigitYear&&(C=I.parseTwoDigitYear);var j=N.prototype,Y=j.parse;j.parse=function(B){var U=B.date,W=B.utc,V=B.args;this.$u=W;var J=V[1];if(typeof J=="string"){var Q=V[2]===!0,X=V[3]===!0,re=Q||X,ie=V[2];X&&(ie=V[2]),S=this.$locale(),!Q&&ie&&(S=z.Ls[ie]),this.$d=function(ce,fe,ae){try{if(["x","X"].indexOf(fe)>-1)return new Date((fe==="X"?1e3:1)*ce);var ue=A(fe)(ce),pe=ue.year,ge=ue.month,ye=ue.day,Ee=ue.hours,ve=ue.minutes,Se=ue.seconds,$e=ue.milliseconds,Me=ue.zone,Re=new Date,De=ye||(pe||ge?1:Re.getDate()),Be=pe||Re.getFullYear(),Le=0;pe&&!ge||(Le=ge>0?ge-1:Re.getMonth());var Ge=Ee||0,Ie=ve||0,Ye=Se||0,He=$e||0;return Me?new Date(Date.UTC(Be,Le,De,Ge,Ie,Ye,He+60*Me.offset*1e3)):ae?new Date(Date.UTC(Be,Le,De,Ge,Ie,Ye,He)):new Date(Be,Le,De,Ge,Ie,Ye,He)}catch(Ve){return new Date("")}}(U,J,W),this.init(),ie&&ie!==!0&&(this.$L=this.locale(ie).$L),re&&U!=this.format(J)&&(this.$d=new Date("")),S={}}else if(J instanceof Array)for(var oe=J.length,Z=1;Z<=oe;Z+=1){V[1]=J[Z-1];var ee=z.apply(this,V);if(ee.isValid()){this.$d=ee.$d,this.$L=ee.$L,this.init();break}Z===oe&&(this.$d=new Date(""))}else Y.call(this,B)}}})}(customParseFormat$1)),customParseFormat$1.exports}var customParseFormatExports=requireCustomParseFormat();const customParseFormatPlugin=getDefaultExportFromCjs(customParseFormatExports);var localizedFormat$1={exports:{}},localizedFormat=localizedFormat$1.exports,hasRequiredLocalizedFormat;function requireLocalizedFormat(){return hasRequiredLocalizedFormat||(hasRequiredLocalizedFormat=1,function(d,m){(function(g,x){d.exports=x()})(localizedFormat,function(){var g={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(x,b,E){var v=b.prototype,S=v.format;E.en.formats=g,v.format=function(C){C===void 0&&(C="YYYY-MM-DDTHH:mm:ssZ");var T=this.$locale().formats,R=function(k,L){return k.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(D,A,I){var N=I&&I.toUpperCase();return A||L[I]||g[I]||L[N].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(z,j,Y){return j||Y.slice(1)})})}(C,T===void 0?{}:T);return S.call(this,R)}}})}(localizedFormat$1)),localizedFormat$1.exports}var localizedFormatExports=requireLocalizedFormat();const localizedFormatPlugin=getDefaultExportFromCjs(localizedFormatExports);var isBetween$1={exports:{}},isBetween=isBetween$1.exports,hasRequiredIsBetween;function requireIsBetween(){return hasRequiredIsBetween||(hasRequiredIsBetween=1,function(d,m){(function(g,x){d.exports=x()})(isBetween,function(){return function(g,x,b){x.prototype.isBetween=function(E,v,S,C){var T=b(E),R=b(v),k=(C=C||"()")[0]==="(",L=C[1]===")";return(k?this.isAfter(T,S):!this.isBefore(T,S))&&(L?this.isBefore(R,S):!this.isAfter(R,S))||(k?this.isBefore(T,S):!this.isAfter(T,S))&&(L?this.isAfter(R,S):!this.isBefore(R,S))}}})}(isBetween$1)),isBetween$1.exports}var isBetweenExports=requireIsBetween();const isBetweenPlugin=getDefaultExportFromCjs(isBetweenExports);defaultDayjs.extend(customParseFormatPlugin);defaultDayjs.extend(localizedFormatPlugin);defaultDayjs.extend(isBetweenPlugin);const localeNotFoundWarning=buildWarning(["Your locale has not been found.","Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale","Or you forget to import the locale from 'dayjs/locale/{localeUsed}'","fallback on English locale"]),formatTokenMap={YY:"year",YYYY:{sectionType:"year",contentType:"digit",maxLength:4},M:{sectionType:"month",contentType:"digit",maxLength:2},MM:"month",MMM:{sectionType:"month",contentType:"letter"},MMMM:{sectionType:"month",contentType:"letter"},D:{sectionType:"day",contentType:"digit",maxLength:2},DD:"day",Do:{sectionType:"day",contentType:"digit-with-letter"},d:{sectionType:"weekDay",contentType:"digit",maxLength:2},dd:{sectionType:"weekDay",contentType:"letter"},ddd:{sectionType:"weekDay",contentType:"letter"},dddd:{sectionType:"weekDay",contentType:"letter"},A:"meridiem",a:"meridiem",H:{sectionType:"hours",contentType:"digit",maxLength:2},HH:"hours",h:{sectionType:"hours",contentType:"digit",maxLength:2},hh:"hours",m:{sectionType:"minutes",contentType:"digit",maxLength:2},mm:"minutes",s:{sectionType:"seconds",contentType:"digit",maxLength:2},ss:"seconds"},defaultFormats={year:"YYYY",month:"MMMM",monthShort:"MMM",dayOfMonth:"D",weekday:"dddd",weekdayShort:"dd",hours24h:"HH",hours12h:"hh",meridiem:"A",minutes:"mm",seconds:"ss",fullDate:"ll",fullDateWithWeekday:"dddd, LL",keyboardDate:"L",shortDate:"MMM D",normalDate:"D MMMM",normalDateWithWeekday:"ddd, MMM D",monthAndYear:"MMMM YYYY",monthAndDate:"MMMM D",fullTime:"LT",fullTime12h:"hh:mm A",fullTime24h:"HH:mm",fullDateTime:"lll",fullDateTime12h:"ll hh:mm A",fullDateTime24h:"ll HH:mm",keyboardDateTime:"L LT",keyboardDateTime12h:"L hh:mm A",keyboardDateTime24h:"L HH:mm"},MISSING_UTC_PLUGIN=["Missing UTC plugin","To be able to use UTC or timezones, you have to enable the `utc` plugin","Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-utc"].join(`
816
+ You can set the same number of the local network (${A}), or a different one.`),{value:D.externalPort||A,field:{label:"Port seen from the Internet",comp:NumberField},addToBar:D.mapped&&[reactExports.createElement(Button,{color:"warning",onClick:ge},"Remove")],dialogProps:{sx:{maxWidth:"20em"}}});pe&&(yield Z(Number(pe),"Port forwarded").catch(()=>{}));function ge(){closeDialog(),Z(0,"Port removed")}})}function oe(){return D!=null&&D.externalPort?Z(D.externalPort,"Forwarding corrected"):alertDialog$1("externalPort not found","error")}function Z(pe,ge="",ye="Operation failed"){return yt(this,null,function*(){v(!0);try{yield apiCall("map_port",{external:pe}),k.reload(),ge&&toast$1(ge,"success"),g(void 0)}catch(Ee){if(ye){const ve=(pe||D.internalPort)<1024,Se=ye+prefix(": ",Ee==null?void 0:Ee.message)+(ve?". Some routers refuse to work with ports under 1024.":"");yield alertDialog$1(Se,"error")}throw Ee}finally{v(!1)}})}}function DataLine(){return reactExports.createElement(Box,{flex:1,className:"animated-dashed-line"})}function Device({name:d,icon:m,color:g,ip:x,below:b}){return reactExports.createElement(Box,{display:"inline-block",textAlign:"center"},reactExports.createElement(m,{color:g,sx:{fontSize:"min(20vw, 10vh)",mb:"-0.1em"}}),reactExports.createElement(Box,{fontSize:"larger"},d),reactExports.createElement(Box,{fontSize:"smaller",whiteSpace:"pre-wrap",className:"ip "+HIDE_IN_TESTS},wantArray(x).join(`
817
+ `)||"unknown"),b)}function TitleCard({title:d,icon:m,color:g,children:x}){return reactExports.createElement(Card,{},reactExports.createElement(CardContent,{},reactExports.createElement(Flex$1,{vert:!0},reactExports.createElement(Typography,{variant:"h3",fontSize:"x-large"},m&&reactExports.createElement(m,{color:g,sx:{mr:1,mb:"2px"}}),d),x)))}const mainMenu=[{path:"",icon:Home,label:"Home",comp:HomePage},{path:"fs",icon:AccountTree,label:"Shared files",comp:VfsPage},{path:"accounts",icon:ManageAccounts,comp:AccountsPage},{path:"options",icon:Settings,comp:OptionsPage},{path:"internet",icon:Public,comp:InternetPage},{path:"monitoring",icon:Monitor,comp:MonitorPage,noPaddingOnMobile:!0},{path:"logs",icon:History,comp:LogsPage,noPaddingOnMobile:!0},{path:"language",icon:Translate,comp:LangPage},{path:"plugins",icon:Extension,comp:PluginsPage,noPaddingOnMobile:!0},{path:"html",icon:Code,label:"Custom HTML",comp:CustomHtmlPage},{path:"logout",icon:Logout,comp:LogoutPage}];function Menu({onSelect:d,itemTitle:m}){const{VERSION:g}=getHFS(),x="hfs-logo.svg",b=useWindowSize().height<700;return reactExports.createElement(Box,{display:"flex",flexDirection:"column",bgcolor:"primary.main",minHeight:"100%"},reactExports.createElement(List,{sx:{pr:1,py:0,color:"primary.contrastText",height:"100vh",boxSizing:"border-box",overflowY:"auto",position:"sticky",top:0,display:"flex",flexDirection:"column","&>a":{flex:"0"}}},reactExports.createElement(Box,{id:"hfs-name",display:"flex",px:2,py:.5,gap:2,alignItems:"center"},reactExports.createElement(Box,{color:"primary.contrastText",fontSize:"min(3rem, max(5vw, 4vh))",sx:{cursor:"pointer"},onClick(){return yt(this,null,function*(){(yield confirmDialog$1("Open HFS website?"))&&window.open(WEBSITE)})}},"HFS"),reactExports.createElement(Box,{fontSize:"small",className:HIDE_IN_TESTS},replaceStringToReact(g||"",/-/,()=>reactExports.createElement("br"))),b&&reactExports.createElement("img",{src:x,style:{height:"2.5em"}})),mainMenu.map((v,S)=>hTooltip(m(S),getMenuLabel(v)+" "+m(S),reactExports.createElement(ListItemButton,{to:v.path,component:NavLink,onClick:d,style:({isActive:C})=>C?{textDecoration:"underline"}:{},children:void 0},v.icon&&reactExports.createElement(ListItemIcon,{sx:{color:"primary.contrastText",minWidth:48}},reactExports.createElement(v.icon)),reactExports.createElement(ListItemText,{sx:{whiteSpace:"nowrap"},primary:getMenuLabel(v)})),{key:v.path,placement:"right"})),!b&&reactExports.createElement(Box,{id:"hfs-logo",sx:{flex:1,opacity:.7,background:`url(${x}) no-repeat bottom`,backgroundSize:"contain",margin:2}})))}function getMenuLabel(d){var m;return d&&((m=d.label)!=null?m:_.capitalize(d.path))}function LoginRequired({children:d}){const{loginRequired:m}=useSnapState$1();return m===HTTP_FORBIDDEN?reactExports.createElement(Center,{},reactExports.createElement(Alert,{severity:"error"},"Admin-panel only for localhost"),reactExports.createElement(Box,{mt:2,fontSize:"small"},"because no admin account was configured")):m?reactExports.createElement(LoginForm):reactExports.createElement(reactExports.Fragment,{},d)}function LoginForm(){var v;const[d,m]=reactExports.useState({username:"",password:"",[ALLOW_SESSION_IP_CHANGE]:!1}),[g,x]=reactExports.useState(""),b=reactExports.useRef(),E=(v=b.current)==null?void 0:v.querySelector('input[value=""]');return reactExports.useEffect(()=>{var C;return(C=E==null?void 0:E.focus)==null?void 0:C.call(E)},[E]),reactExports.createElement(Center,{},reactExports.createElement(Form,{formRef:b,values:d,m:2,maxWidth:"25em",set(C,T){m(R=>$t(Fe({},R),{[T]:C}))},fields:[{k:"username",autoComplete:"username",autoFocus:!0,required:!0},{k:"password",type:"password",autoComplete:"current-password",required:!0},{k:ALLOW_SESSION_IP_CHANGE,comp:BoolField,label:"Allow IP change during this session"}],addToBar:[g&&reactExports.createElement(Alert,{severity:"error",sx:{flex:1}},g)],saveOnEnter:!0,save:{children:"Enter",startIcon:null,onClick(){return yt(this,null,function*(){try{x(""),yield login(d.username,d.password,{[ALLOW_SESSION_IP_CHANGE]:d[ALLOW_SESSION_IP_CHANGE]})}catch(C){x(String(C))}})}}}))}function login(d,m,g){return yt(this,null,function*(){const x=yield srpClientSequence(d,m,apiCall,g).catch(b=>{throw(b==null?void 0:b.code)===HTTP_UNAUTHORIZED?b.message||"Wrong username or password":b==="trust"?"Login aborted: server identity cannot be trusted":(b==null?void 0:b.name)==="AbortError"?"Server didn't respond":(b==null?void 0:b.message)||"Unknown error"});if(!x.adminUrl)throw"This account has no Admin access";state$1.loginRequired=!1,refreshSession(x)})}const refreshSession=makeSessionRefresher(state$1);var weekOfYear$2={exports:{}},weekOfYear$1=weekOfYear$2.exports,hasRequiredWeekOfYear;function requireWeekOfYear(){return hasRequiredWeekOfYear||(hasRequiredWeekOfYear=1,function(d,m){(function(g,x){d.exports=x()})(weekOfYear$1,function(){var g="week",x="year";return function(b,E,v){var S=E.prototype;S.week=function(C){if(C===void 0&&(C=null),C!==null)return this.add(7*(C-this.week()),"day");var T=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var R=v(this).startOf(x).add(1,x).date(T),k=v(this).endOf(g);if(R.isBefore(k))return 1}var L=v(this).startOf(x).date(T).startOf(g).subtract(1,"millisecond"),D=this.diff(L,g,!0);return D<0?v(this).startOf("week").week():Math.ceil(D)},S.weeks=function(C){return C===void 0&&(C=null),this.week(C)}}})}(weekOfYear$2)),weekOfYear$2.exports}var weekOfYearExports=requireWeekOfYear();const weekOfYear=getDefaultExportFromCjs(weekOfYearExports);var customParseFormat$1={exports:{}},customParseFormat=customParseFormat$1.exports,hasRequiredCustomParseFormat;function requireCustomParseFormat(){return hasRequiredCustomParseFormat||(hasRequiredCustomParseFormat=1,function(d,m){(function(g,x){d.exports=x()})(customParseFormat,function(){var g={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},x=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,b=/\d\d/,E=/\d\d?/,v=/\d*[^-_:/,()\s\d]+/,S={},C=function(I){return(I=+I)+(I>68?1900:2e3)},T=function(I){return function(N){this[I]=+N}},R=[/[+-]\d\d:?(\d\d)?|Z/,function(I){(this.zone||(this.zone={})).offset=function(N){if(!N||N==="Z")return 0;var z=N.match(/([+-]|\d\d)/g),j=60*z[1]+(+z[2]||0);return j===0?0:z[0]==="+"?-j:j}(I)}],k=function(I){var N=S[I];return N&&(N.indexOf?N:N.s.concat(N.f))},L=function(I,N){var z,j=S.meridiem;if(j){for(var Y=1;Y<=24;Y+=1)if(I.indexOf(j(Y,0,N))>-1){z=Y>12;break}}else z=I===(N?"pm":"PM");return z},D={A:[v,function(I){this.afternoon=L(I,!1)}],a:[v,function(I){this.afternoon=L(I,!0)}],S:[/\d/,function(I){this.milliseconds=100*+I}],SS:[b,function(I){this.milliseconds=10*+I}],SSS:[/\d{3}/,function(I){this.milliseconds=+I}],s:[E,T("seconds")],ss:[E,T("seconds")],m:[E,T("minutes")],mm:[E,T("minutes")],H:[E,T("hours")],h:[E,T("hours")],HH:[E,T("hours")],hh:[E,T("hours")],D:[E,T("day")],DD:[b,T("day")],Do:[v,function(I){var N=S.ordinal,z=I.match(/\d+/);if(this.day=z[0],N)for(var j=1;j<=31;j+=1)N(j).replace(/\[|\]/g,"")===I&&(this.day=j)}],M:[E,T("month")],MM:[b,T("month")],MMM:[v,function(I){var N=k("months"),z=(k("monthsShort")||N.map(function(j){return j.slice(0,3)})).indexOf(I)+1;if(z<1)throw new Error;this.month=z%12||z}],MMMM:[v,function(I){var N=k("months").indexOf(I)+1;if(N<1)throw new Error;this.month=N%12||N}],Y:[/[+-]?\d+/,T("year")],YY:[b,function(I){this.year=C(I)}],YYYY:[/\d{4}/,T("year")],Z:R,ZZ:R};function A(I){var N,z;N=I,z=S&&S.formats;for(var j=(I=N.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Q,X,re){var ie=re&&re.toUpperCase();return X||z[re]||g[re]||z[ie].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(oe,Z,ee){return Z||ee.slice(1)})})).match(x),Y=j.length,B=0;B<Y;B+=1){var U=j[B],W=D[U],V=W&&W[0],J=W&&W[1];j[B]=J?{regex:V,parser:J}:U.replace(/^\[|\]$/g,"")}return function(Q){for(var X={},re=0,ie=0;re<Y;re+=1){var oe=j[re];if(typeof oe=="string")ie+=oe.length;else{var Z=oe.regex,ee=oe.parser,ce=Q.slice(ie),fe=Z.exec(ce)[0];ee.call(X,fe),Q=Q.replace(fe,"")}}return function(ae){var ue=ae.afternoon;if(ue!==void 0){var pe=ae.hours;ue?pe<12&&(ae.hours+=12):pe===12&&(ae.hours=0),delete ae.afternoon}}(X),X}}return function(I,N,z){z.p.customParseFormat=!0,I&&I.parseTwoDigitYear&&(C=I.parseTwoDigitYear);var j=N.prototype,Y=j.parse;j.parse=function(B){var U=B.date,W=B.utc,V=B.args;this.$u=W;var J=V[1];if(typeof J=="string"){var Q=V[2]===!0,X=V[3]===!0,re=Q||X,ie=V[2];X&&(ie=V[2]),S=this.$locale(),!Q&&ie&&(S=z.Ls[ie]),this.$d=function(ce,fe,ae){try{if(["x","X"].indexOf(fe)>-1)return new Date((fe==="X"?1e3:1)*ce);var ue=A(fe)(ce),pe=ue.year,ge=ue.month,ye=ue.day,Ee=ue.hours,ve=ue.minutes,Se=ue.seconds,$e=ue.milliseconds,Me=ue.zone,Re=new Date,De=ye||(pe||ge?1:Re.getDate()),Be=pe||Re.getFullYear(),Le=0;pe&&!ge||(Le=ge>0?ge-1:Re.getMonth());var Ge=Ee||0,Ie=ve||0,Ye=Se||0,He=$e||0;return Me?new Date(Date.UTC(Be,Le,De,Ge,Ie,Ye,He+60*Me.offset*1e3)):ae?new Date(Date.UTC(Be,Le,De,Ge,Ie,Ye,He)):new Date(Be,Le,De,Ge,Ie,Ye,He)}catch(Ve){return new Date("")}}(U,J,W),this.init(),ie&&ie!==!0&&(this.$L=this.locale(ie).$L),re&&U!=this.format(J)&&(this.$d=new Date("")),S={}}else if(J instanceof Array)for(var oe=J.length,Z=1;Z<=oe;Z+=1){V[1]=J[Z-1];var ee=z.apply(this,V);if(ee.isValid()){this.$d=ee.$d,this.$L=ee.$L,this.init();break}Z===oe&&(this.$d=new Date(""))}else Y.call(this,B)}}})}(customParseFormat$1)),customParseFormat$1.exports}var customParseFormatExports=requireCustomParseFormat();const customParseFormatPlugin=getDefaultExportFromCjs(customParseFormatExports);var localizedFormat$1={exports:{}},localizedFormat=localizedFormat$1.exports,hasRequiredLocalizedFormat;function requireLocalizedFormat(){return hasRequiredLocalizedFormat||(hasRequiredLocalizedFormat=1,function(d,m){(function(g,x){d.exports=x()})(localizedFormat,function(){var g={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(x,b,E){var v=b.prototype,S=v.format;E.en.formats=g,v.format=function(C){C===void 0&&(C="YYYY-MM-DDTHH:mm:ssZ");var T=this.$locale().formats,R=function(k,L){return k.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(D,A,I){var N=I&&I.toUpperCase();return A||L[I]||g[I]||L[N].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(z,j,Y){return j||Y.slice(1)})})}(C,T===void 0?{}:T);return S.call(this,R)}}})}(localizedFormat$1)),localizedFormat$1.exports}var localizedFormatExports=requireLocalizedFormat();const localizedFormatPlugin=getDefaultExportFromCjs(localizedFormatExports);var isBetween$1={exports:{}},isBetween=isBetween$1.exports,hasRequiredIsBetween;function requireIsBetween(){return hasRequiredIsBetween||(hasRequiredIsBetween=1,function(d,m){(function(g,x){d.exports=x()})(isBetween,function(){return function(g,x,b){x.prototype.isBetween=function(E,v,S,C){var T=b(E),R=b(v),k=(C=C||"()")[0]==="(",L=C[1]===")";return(k?this.isAfter(T,S):!this.isBefore(T,S))&&(L?this.isBefore(R,S):!this.isAfter(R,S))||(k?this.isBefore(T,S):!this.isAfter(T,S))&&(L?this.isAfter(R,S):!this.isBefore(R,S))}}})}(isBetween$1)),isBetween$1.exports}var isBetweenExports=requireIsBetween();const isBetweenPlugin=getDefaultExportFromCjs(isBetweenExports);defaultDayjs.extend(customParseFormatPlugin);defaultDayjs.extend(localizedFormatPlugin);defaultDayjs.extend(isBetweenPlugin);const localeNotFoundWarning=buildWarning(["Your locale has not been found.","Either the locale key is not a supported one. Locales supported by dayjs are available here: https://github.com/iamkun/dayjs/tree/dev/src/locale","Or you forget to import the locale from 'dayjs/locale/{localeUsed}'","fallback on English locale"]),formatTokenMap={YY:"year",YYYY:{sectionType:"year",contentType:"digit",maxLength:4},M:{sectionType:"month",contentType:"digit",maxLength:2},MM:"month",MMM:{sectionType:"month",contentType:"letter"},MMMM:{sectionType:"month",contentType:"letter"},D:{sectionType:"day",contentType:"digit",maxLength:2},DD:"day",Do:{sectionType:"day",contentType:"digit-with-letter"},d:{sectionType:"weekDay",contentType:"digit",maxLength:2},dd:{sectionType:"weekDay",contentType:"letter"},ddd:{sectionType:"weekDay",contentType:"letter"},dddd:{sectionType:"weekDay",contentType:"letter"},A:"meridiem",a:"meridiem",H:{sectionType:"hours",contentType:"digit",maxLength:2},HH:"hours",h:{sectionType:"hours",contentType:"digit",maxLength:2},hh:"hours",m:{sectionType:"minutes",contentType:"digit",maxLength:2},mm:"minutes",s:{sectionType:"seconds",contentType:"digit",maxLength:2},ss:"seconds"},defaultFormats={year:"YYYY",month:"MMMM",monthShort:"MMM",dayOfMonth:"D",weekday:"dddd",weekdayShort:"dd",hours24h:"HH",hours12h:"hh",meridiem:"A",minutes:"mm",seconds:"ss",fullDate:"ll",fullDateWithWeekday:"dddd, LL",keyboardDate:"L",shortDate:"MMM D",normalDate:"D MMMM",normalDateWithWeekday:"ddd, MMM D",monthAndYear:"MMMM YYYY",monthAndDate:"MMMM D",fullTime:"LT",fullTime12h:"hh:mm A",fullTime24h:"HH:mm",fullDateTime:"lll",fullDateTime12h:"ll hh:mm A",fullDateTime24h:"ll HH:mm",keyboardDateTime:"L LT",keyboardDateTime12h:"L hh:mm A",keyboardDateTime24h:"L HH:mm"},MISSING_UTC_PLUGIN=["Missing UTC plugin","To be able to use UTC or timezones, you have to enable the `utc` plugin","Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-utc"].join(`
818
818
  `),MISSING_TIMEZONE_PLUGIN=["Missing timezone plugin","To be able to use timezones, you have to enable both the `utc` and the `timezone` plugin","Find more information on https://mui.com/x/react-date-pickers/timezone/#day-js-and-timezone"].join(`
819
819
  `),withLocale=(d,m)=>m?(...g)=>d(...g).locale(m):d;class AdapterDayjs{constructor({locale:m,formats:g,instance:x}={}){var b;this.isMUIAdapter=!0,this.isTimezoneCompatible=!0,this.lib="dayjs",this.rawDayJsInstance=void 0,this.dayjs=void 0,this.locale=void 0,this.formats=void 0,this.escapedCharacters={start:"[",end:"]"},this.formatTokenMap=formatTokenMap,this.setLocaleToValue=E=>{const v=this.getCurrentLocaleCode();return v===E.locale()?E:E.locale(v)},this.hasUTCPlugin=()=>typeof defaultDayjs.utc!="undefined",this.hasTimezonePlugin=()=>typeof defaultDayjs.tz!="undefined",this.isSame=(E,v,S)=>{const C=this.setTimezone(v,this.getTimezone(E));return E.format(S)===C.format(S)},this.cleanTimezone=E=>{switch(E){case"default":return;case"system":return defaultDayjs.tz.guess();default:return E}},this.createSystemDate=E=>{if(this.rawDayJsInstance)return this.rawDayJsInstance(E);if(this.hasUTCPlugin()&&this.hasTimezonePlugin()){const v=defaultDayjs.tz.guess();return v!=="UTC"?defaultDayjs.tz(E,v):defaultDayjs(E)}return defaultDayjs(E)},this.createUTCDate=E=>{if(!this.hasUTCPlugin())throw new Error(MISSING_UTC_PLUGIN);return defaultDayjs.utc(E)},this.createTZDate=(E,v)=>{if(!this.hasUTCPlugin())throw new Error(MISSING_UTC_PLUGIN);if(!this.hasTimezonePlugin())throw new Error(MISSING_TIMEZONE_PLUGIN);const S=E!==void 0&&!E.endsWith("Z");return defaultDayjs(E).tz(this.cleanTimezone(v),S)},this.getLocaleFormats=()=>{const E=defaultDayjs.Ls,v=this.locale||"en";let S=E[v];return S===void 0&&(localeNotFoundWarning(),S=E.en),S.formats},this.adjustOffset=E=>{if(!this.hasTimezonePlugin())return E;const v=this.getTimezone(E);if(v!=="UTC"){var S,C;const T=E.tz(this.cleanTimezone(v),!0);if(((S=T.$offset)!=null?S:0)===((C=E.$offset)!=null?C:0))return E;E.$offset=T.$offset}return E},this.date=E=>E===null?null:this.dayjs(E),this.dateWithTimezone=(E,v)=>{if(E===null)return null;let S;return v==="UTC"?S=this.createUTCDate(E):v==="system"||v==="default"&&!this.hasTimezonePlugin()?S=this.createSystemDate(E):S=this.createTZDate(E,v),this.locale===void 0?S:S.locale(this.locale)},this.getTimezone=E=>{if(this.hasTimezonePlugin()){var v;const S=(v=E.$x)==null?void 0:v.$timezone;if(S)return S}return this.hasUTCPlugin()&&E.isUTC()?"UTC":"system"},this.setTimezone=(E,v)=>{if(this.getTimezone(E)===v)return E;if(v==="UTC"){if(!this.hasUTCPlugin())throw new Error(MISSING_UTC_PLUGIN);return E.utc()}if(v==="system")return E.local();if(!this.hasTimezonePlugin()){if(v==="default")return E;throw new Error(MISSING_TIMEZONE_PLUGIN)}return defaultDayjs.tz(E,this.cleanTimezone(v))},this.toJsDate=E=>E.toDate(),this.parseISO=E=>this.dayjs(E),this.toISO=E=>E.toISOString(),this.parse=(E,v)=>E===""?null:this.dayjs(E,v,this.locale,!0),this.getCurrentLocaleCode=()=>this.locale||"en",this.is12HourCycleInCurrentLocale=()=>/A|a/.test(this.getLocaleFormats().LT||""),this.expandFormat=E=>{const v=this.getLocaleFormats(),S=C=>C.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(T,R,k)=>R||k.slice(1));return E.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(C,T,R)=>{const k=R&&R.toUpperCase();return T||v[R]||S(v[k])})},this.getFormatHelperText=E=>this.expandFormat(E).replace(/a/gi,"(a|p)m").toLocaleLowerCase(),this.isNull=E=>E===null,this.isValid=E=>this.dayjs(E).isValid(),this.format=(E,v)=>this.formatByString(E,this.formats[v]),this.formatByString=(E,v)=>this.dayjs(E).format(v),this.formatNumber=E=>E,this.getDiff=(E,v,S)=>E.diff(v,S),this.isEqual=(E,v)=>E===null&&v===null?!0:this.dayjs(E).toDate().getTime()===this.dayjs(v).toDate().getTime(),this.isSameYear=(E,v)=>this.isSame(E,v,"YYYY"),this.isSameMonth=(E,v)=>this.isSame(E,v,"YYYY-MM"),this.isSameDay=(E,v)=>this.isSame(E,v,"YYYY-MM-DD"),this.isSameHour=(E,v)=>E.isSame(v,"hour"),this.isAfter=(E,v)=>E>v,this.isAfterYear=(E,v)=>this.hasUTCPlugin()?!this.isSameYear(E,v)&&E.utc()>v.utc():E.isAfter(v,"year"),this.isAfterDay=(E,v)=>this.hasUTCPlugin()?!this.isSameDay(E,v)&&E.utc()>v.utc():E.isAfter(v,"day"),this.isBefore=(E,v)=>E<v,this.isBeforeYear=(E,v)=>this.hasUTCPlugin()?!this.isSameYear(E,v)&&E.utc()<v.utc():E.isBefore(v,"year"),this.isBeforeDay=(E,v)=>this.hasUTCPlugin()?!this.isSameDay(E,v)&&E.utc()<v.utc():E.isBefore(v,"day"),this.isWithinRange=(E,[v,S])=>E>=v&&E<=S,this.startOfYear=E=>this.adjustOffset(E.startOf("year")),this.startOfMonth=E=>this.adjustOffset(E.startOf("month")),this.startOfWeek=E=>this.adjustOffset(E.startOf("week")),this.startOfDay=E=>this.adjustOffset(E.startOf("day")),this.endOfYear=E=>this.adjustOffset(E.endOf("year")),this.endOfMonth=E=>this.adjustOffset(E.endOf("month")),this.endOfWeek=E=>this.adjustOffset(E.endOf("week")),this.endOfDay=E=>this.adjustOffset(E.endOf("day")),this.addYears=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"year"):E.add(v,"year")),this.addMonths=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"month"):E.add(v,"month")),this.addWeeks=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"week"):E.add(v,"week")),this.addDays=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"day"):E.add(v,"day")),this.addHours=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"hour"):E.add(v,"hour")),this.addMinutes=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"minute"):E.add(v,"minute")),this.addSeconds=(E,v)=>this.adjustOffset(v<0?E.subtract(Math.abs(v),"second"):E.add(v,"second")),this.getYear=E=>E.year(),this.getMonth=E=>E.month(),this.getDate=E=>E.date(),this.getHours=E=>E.hour(),this.getMinutes=E=>E.minute(),this.getSeconds=E=>E.second(),this.getMilliseconds=E=>E.millisecond(),this.setYear=(E,v)=>this.adjustOffset(E.set("year",v)),this.setMonth=(E,v)=>this.adjustOffset(E.set("month",v)),this.setDate=(E,v)=>this.adjustOffset(E.set("date",v)),this.setHours=(E,v)=>this.adjustOffset(E.set("hour",v)),this.setMinutes=(E,v)=>this.adjustOffset(E.set("minute",v)),this.setSeconds=(E,v)=>this.adjustOffset(E.set("second",v)),this.setMilliseconds=(E,v)=>this.adjustOffset(E.set("millisecond",v)),this.getDaysInMonth=E=>E.daysInMonth(),this.getNextMonth=E=>this.addMonths(E,1),this.getPreviousMonth=E=>this.addMonths(E,-1),this.getMonthArray=E=>{const S=[E.startOf("year")];for(;S.length<12;){const C=S[S.length-1];S.push(this.addMonths(C,1))}return S},this.mergeDateAndTime=(E,v)=>E.hour(v.hour()).minute(v.minute()).second(v.second()),this.getWeekdays=()=>{const E=this.dayjs().startOf("week");return[0,1,2,3,4,5,6].map(v=>this.formatByString(this.addDays(E,v),"dd"))},this.getWeekArray=E=>{const v=this.setLocaleToValue(E),S=v.startOf("month").startOf("week"),C=v.endOf("month").endOf("week");let T=0,R=S;const k=[];for(;R<C;){const L=Math.floor(T/7);k[L]=k[L]||[],k[L].push(R),R=this.addDays(R,1),T+=1}return k},this.getWeekNumber=E=>E.week(),this.getYearRange=(E,v)=>{const S=E.startOf("year"),C=v.endOf("year"),T=[];let R=S;for(;R<C;)T.push(R),R=this.addYears(R,1);return T},this.getMeridiemText=E=>E==="am"?"AM":"PM",this.rawDayJsInstance=x,this.dayjs=withLocale((b=this.rawDayJsInstance)!=null?b:defaultDayjs,m),this.locale=m,this.formats=_extends$1({},defaultFormats,g),defaultDayjs.extend(weekOfYear)}}function ConfigFilePage(){state$1.title="Config file";const{data:d,reload:m,element:g}=useApiEx("get_config_text",{}),[x,b]=reactExports.useState(),[E,v]=reactExports.useState(),[S,C]=reactExports.useState(!1);return reactExports.useEffect(()=>{v(d==null?void 0:d.text)},[d]),reactExports.useEffect(()=>{E!==void 0&&b(E||"")},[E]),g||reactExports.createElement(reactExports.Fragment,{},reactExports.createElement(Flex$1,{flexWrap:"wrap",justifyContent:"space-between"},reactExports.createElement(Btn$1,{icon:Download,onClick:R,disabled:!d},"Export without passwords"),S?reactExports.createElement(reactExports.Fragment,{},reloadBtn(m),reactExports.createElement(IconBtn,{icon:Save,title:`Save
820
820
  (ctrl+enter)`,modified:x!==E,onClick:T}),reactExports.createElement(Alert,{severity:"warning",sx:{minWidth:"10em"}},"Be careful, you can easily break things here")):reactExports.createElement(Btn$1,{icon:Edit,variant:"outlined",onClick(){C(!0),setTimeout(()=>focusSelector("main textarea"),500)}},"Edit"),reactExports.createElement(Box,{flex:1,minWidth:"fit-content"},reactExports.createElement(DisplayField,{label:"File path",value:d==null?void 0:d.fullPath,size:"small"}))),g||x!==void 0&&reactExports.createElement(Box,{sx:{"& pre,& textarea":{wordBreak:"break-all !important"}}},reactExports.createElement(KeepInScreen,{margin:10},reactExports.createElement(TextEditor,{value:x,disabled:!S,style:{background:"#8881"},onValueChange:b,onKeyDown(k){["s","Enter"].includes(isCtrlKey(k))&&(T(),k.preventDefault())}}))));function T(){return apiCall("set_config_text",{text:x}).then(()=>v(x))}function R(){var L;const k=(x||"").replace(/^(\s*(\w*password|_\w*|token|srp|dynamic_dns_url):\s*).+\n/gm,`$1removed