@elementspanel/panel 0.0.0-stage → 1.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.
Files changed (139) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +6 -2
  3. package/app.js +6400 -0
  4. package/app.js.map +1 -0
  5. package/bin/panel.cjs +2 -0
  6. package/package.json +107 -4
  7. package/public/assets/AppDialog.vue_vue_type_style_index_0_lang-e6e38e8b.js +2 -0
  8. package/public/assets/AppDialog.vue_vue_type_style_index_0_lang-e6e38e8b.js.map +1 -0
  9. package/public/assets/CardPanel-59b7da2e.js +2 -0
  10. package/public/assets/CardPanel-59b7da2e.js.map +1 -0
  11. package/public/assets/DesktopDialog-e4041e4e.js +2 -0
  12. package/public/assets/DesktopDialog-e4041e4e.js.map +1 -0
  13. package/public/assets/Loading.vue_vue_type_script_setup_true_lang-1b74dd54.js +2 -0
  14. package/public/assets/Loading.vue_vue_type_script_setup_true_lang-1b74dd54.js.map +1 -0
  15. package/public/assets/PageToolbar-7130e13d.js +2 -0
  16. package/public/assets/PageToolbar-7130e13d.js.map +1 -0
  17. package/public/assets/_elements-sdk_cordis-b0b88a2c.js +2 -0
  18. package/public/assets/_elements-sdk_cordis-b0b88a2c.js.map +1 -0
  19. package/public/assets/_elements-sdk_cordis-e3bebc89.js +9 -0
  20. package/public/assets/_elements-sdk_cordis-e3bebc89.js.map +1 -0
  21. package/public/assets/_elements-sdk_cosmokit-e4842f5c.js +2 -0
  22. package/public/assets/_elements-sdk_cosmokit-e4842f5c.js.map +1 -0
  23. package/public/assets/_elements-sdk_pinia-2c56d2c1.js +6 -0
  24. package/public/assets/_elements-sdk_pinia-2c56d2c1.js.map +1 -0
  25. package/public/assets/_elements-sdk_vue-80f42d87.js +2 -0
  26. package/public/assets/_elements-sdk_vue-80f42d87.js.map +1 -0
  27. package/public/assets/_elements-sdk_vue-i18n-4b8a106a.js +2 -0
  28. package/public/assets/_elements-sdk_vue-i18n-4b8a106a.js.map +1 -0
  29. package/public/assets/_elements-sdk_vue-router-a171591a.js +2 -0
  30. package/public/assets/_elements-sdk_vue-router-a171591a.js.map +1 -0
  31. package/public/assets/_plugin-vue_export-helper-c27b6911.js +2 -0
  32. package/public/assets/_plugin-vue_export-helper-c27b6911.js.map +1 -0
  33. package/public/assets/chartjs-1e331dfb.js +19 -0
  34. package/public/assets/chartjs-1e331dfb.js.map +1 -0
  35. package/public/assets/codemirror-1b74112a.js +29 -0
  36. package/public/assets/codemirror-1b74112a.js.map +1 -0
  37. package/public/assets/const-93b324c0.js +2 -0
  38. package/public/assets/const-93b324c0.js.map +1 -0
  39. package/public/assets/const-ea30795c.js +38 -0
  40. package/public/assets/const-ea30795c.js.map +1 -0
  41. package/public/assets/context-cc90576e.js +2 -0
  42. package/public/assets/context-cc90576e.js.map +1 -0
  43. package/public/assets/copy-b106bb10.js +2 -0
  44. package/public/assets/copy-b106bb10.js.map +1 -0
  45. package/public/assets/core-d3bfdede.js +2 -0
  46. package/public/assets/core-d3bfdede.js.map +1 -0
  47. package/public/assets/daemon_connection_error-9eb654cc.png +0 -0
  48. package/public/assets/dayjs.min-25183c0a.js +2 -0
  49. package/public/assets/dayjs.min-25183c0a.js.map +1 -0
  50. package/public/assets/desktopNotice-5ca3448c.js +2 -0
  51. package/public/assets/desktopNotice-5ca3448c.js.map +1 -0
  52. package/public/assets/dom-ff483262.js +2 -0
  53. package/public/assets/dom-ff483262.js.map +1 -0
  54. package/public/assets/htmlparser2-bcb8f9db.js +3 -0
  55. package/public/assets/htmlparser2-bcb8f9db.js.map +1 -0
  56. package/public/assets/i18n-e810b9fa.js +2 -0
  57. package/public/assets/i18n-e810b9fa.js.map +1 -0
  58. package/public/assets/index-6e8d74f8.js +2 -0
  59. package/public/assets/index-6e8d74f8.js.map +1 -0
  60. package/public/assets/index-c684efbd.js +2 -0
  61. package/public/assets/index-c684efbd.js.map +1 -0
  62. package/public/assets/index-e3f35709.js +2 -0
  63. package/public/assets/index-e3f35709.js.map +1 -0
  64. package/public/assets/instance-cc59e210.js +2 -0
  65. package/public/assets/instance-cc59e210.js.map +1 -0
  66. package/public/assets/instance_contract-0115efe5.js +2 -0
  67. package/public/assets/instance_contract-0115efe5.js.map +1 -0
  68. package/public/assets/lodash-001e4f93.js +28 -0
  69. package/public/assets/lodash-001e4f93.js.map +1 -0
  70. package/public/assets/logo-9e2a668b.svg +15 -0
  71. package/public/assets/logo_b-35ccadda.svg +8 -0
  72. package/public/assets/materialdesignicons-webfont-0b183104.eot +0 -0
  73. package/public/assets/materialdesignicons-webfont-61e8aba5.ttf +0 -0
  74. package/public/assets/materialdesignicons-webfont-662fefa8.woff2 +0 -0
  75. package/public/assets/materialdesignicons-webfont-a5928a0d.woff +0 -0
  76. package/public/assets/msl-logo-699c8076.png +0 -0
  77. package/public/assets/nodes-a56b1b35.js +2 -0
  78. package/public/assets/nodes-a56b1b35.js.map +1 -0
  79. package/public/assets/plugin_contract-691cd37a.js +2 -0
  80. package/public/assets/plugin_contract-691cd37a.js.map +1 -0
  81. package/public/assets/preload-helper-a4192956.js +2 -0
  82. package/public/assets/preload-helper-a4192956.js.map +1 -0
  83. package/public/assets/protocol-97f7bab7.js +2 -0
  84. package/public/assets/protocol-97f7bab7.js.map +1 -0
  85. package/public/assets/randId-56f93901.js +2 -0
  86. package/public/assets/randId-56f93901.js.map +1 -0
  87. package/public/assets/router-eff205cc.js +3 -0
  88. package/public/assets/router-eff205cc.js.map +1 -0
  89. package/public/assets/safe-87846d89.js +89 -0
  90. package/public/assets/safe-87846d89.js.map +1 -0
  91. package/public/assets/sdk-3f2277ab.js +2 -0
  92. package/public/assets/sdk-3f2277ab.js.map +1 -0
  93. package/public/assets/shared-597ef52b.js +2 -0
  94. package/public/assets/shared-597ef52b.js.map +1 -0
  95. package/public/assets/useAppConfigStore-352fe033.js +2 -0
  96. package/public/assets/useAppConfigStore-352fe033.js.map +1 -0
  97. package/public/assets/useAppRouters-747b627a.js +2 -0
  98. package/public/assets/useAppRouters-747b627a.js.map +1 -0
  99. package/public/assets/useAppStateStore-a438b9a6.js +2 -0
  100. package/public/assets/useAppStateStore-a438b9a6.js.map +1 -0
  101. package/public/assets/useAppToolsStore-288c4fe8.js +2 -0
  102. package/public/assets/useAppToolsStore-288c4fe8.js.map +1 -0
  103. package/public/assets/useDefineApi-b726db1e.js +7 -0
  104. package/public/assets/useDefineApi-b726db1e.js.map +1 -0
  105. package/public/assets/useInstanceActionAvailability-16de3001.js +2 -0
  106. package/public/assets/useInstanceActionAvailability-16de3001.js.map +1 -0
  107. package/public/assets/useKeyboardEvents-6f7f845c.js +2 -0
  108. package/public/assets/useKeyboardEvents-6f7f845c.js.map +1 -0
  109. package/public/assets/useMountComponent-4043cb4c.js +2 -0
  110. package/public/assets/useMountComponent-4043cb4c.js.map +1 -0
  111. package/public/assets/useOverviewChart-7d758bc4.js +2 -0
  112. package/public/assets/useOverviewChart-7d758bc4.js.map +1 -0
  113. package/public/assets/useOverviewInfo-9ca25ab9.js +2 -0
  114. package/public/assets/useOverviewInfo-9ca25ab9.js.map +1 -0
  115. package/public/assets/usePolling-1bc2009b.js +2 -0
  116. package/public/assets/usePolling-1bc2009b.js.map +1 -0
  117. package/public/assets/useScreen-fad29b7c.js +2 -0
  118. package/public/assets/useScreen-fad29b7c.js.map +1 -0
  119. package/public/assets/useSocketIo-ea3c9a61.js +2 -0
  120. package/public/assets/useSocketIo-ea3c9a61.js.map +1 -0
  121. package/public/assets/useThemeSwitch-dc70883c.js +2 -0
  122. package/public/assets/useThemeSwitch-dc70883c.js.map +1 -0
  123. package/public/assets/vue-4c6a2976.css +1 -0
  124. package/public/assets/vue-6b52a630.js +64 -0
  125. package/public/assets/vue-6b52a630.js.map +1 -0
  126. package/public/assets/vuetifyModal-8382b175.js +2 -0
  127. package/public/assets/vuetifyModal-8382b175.js.map +1 -0
  128. package/public/assets/xterm-62ba073f.js +67 -0
  129. package/public/assets/xterm-62ba073f.js.map +1 -0
  130. package/public/favicon.ico +0 -0
  131. package/public/index.html +207 -0
  132. package/public/robots.txt +2 -0
  133. package/public/stats.html +4950 -0
  134. package/runtime/cli.cjs +305 -0
  135. package/runtime/daemon-tools.cjs +113 -0
  136. package/runtime/npm-plugins.cjs +207 -0
  137. package/runtime/plugin-resolution.cjs +141 -0
  138. package/runtime/shared-dependencies.cjs +35 -0
  139. package/runtime/worker.cjs +25 -0
@@ -0,0 +1,2 @@
1
+ import{c as A,s as I,u as P}from"./context-cc90576e.js";import{P as r,a as S}from"./plugin_contract-691cd37a.js";import{I as e,Q as Y,g as i,e as C,b as t,c as m,a as p,d as U,f as O,T as V}from"./instance_contract-0115efe5.js";import"./_elements-sdk_cordis-e3bebc89.js";import"./_elements-sdk_cosmokit-e4842f5c.js";import"./htmlparser2-bcb8f9db.js";import"./vue-6b52a630.js";export{e as INSTANCE_TYPES,r as PLUGIN_API_VERSION,S as PLUGIN_SDK_VERSION,Y as QUICKSTART_ACTION_TYPE,i as QUICKSTART_METHOD,C as TYPE_HYTALE,t as TYPE_MINECRAFT_BEDROCK,m as TYPE_MINECRAFT_BUNGEECORD,p as TYPE_MINECRAFT_JAVA,U as TYPE_STEAM_SERVER_UNIVERSAL,O as TYPE_TERRARIA,V as TYPE_UNIVERSAL,A as ctx,I as serviceRevision,P as usePluginService};
2
+ //# sourceMappingURL=sdk-3f2277ab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-3f2277ab.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{eY as s,eZ as t,e_ as r,e$ as f,f0 as o,f1 as n,f2 as c,f3 as i,f2 as u,f4 as g,f5 as l,f6 as d,f7 as h,f8 as m,f9 as y,fa as b,fb as p,fc as F,fd as v,fe as w,ff as A,f1 as D,fg as R,fh as O,fi as T,fj as C,fk as W,fl as I,fm as S,fn as j,fo as k,fp as P,fq as U,fr as x,fs as E,ft as L,fu as M,fv as q,fw as z,fx as B,fy as H,fz as N,fA as Z,fB as G,fC as J,fD as V,fE as Y,fF as _,f9 as $,fG as K,fH as Q,fI as X,fJ as ee,eZ as ae,fd as se,fK as te,fL as re,fM as fe,fN as oe,fO as ne,fP as ce,fQ as ie,fR as ue,fS as ge,fL as le,fT as de,fU as he,fV as me,fW as ye,fX as be,fY as pe,fZ as Fe,f_ as ve,f$ as we,g0 as Ae,g1 as De,g2 as Re,g3 as Oe,g4 as Te,g5 as Ce,g6 as We,g7 as Ie,g8 as Se,g9 as je,ga as ke,gb as Pe,gc as Ue,gd as xe,ge as Ee,gf as Le,gg as Me,fd as qe,gh as ze,gi as Be,gj as He,gk as Ne,fL as Ze,gl as Ge,gm as Je,gn as Ve,go as Ye,gp as _e,gq as $e,gr as Ke,gs as Qe,fe as Xe,gt as ea,fm as aa,gu as sa,gv as ta,fD as ra,fT as fa,gw as oa,gx as na,gy as ca}from"./vue-6b52a630.js";export{s as assert,t as autoResetRef,r as bypassFilter,f as camelize,o as clamp,n as computedEager,c as computedWithControl,i as containsProp,u as controlledComputed,g as controlledRef,l as createEventHook,d as createFilterWrapper,h as createGlobalState,m as createInjectionState,y as createReactiveFn,b as createSharedComposable,p as createSingletonPromise,F as debounceFilter,v as debouncedRef,w as debouncedWatch,A as directiveHooks,D as eagerComputed,R as extendRef,O as formatDate,T as get,C as hasOwn,W as hyphenate,I as identity,S as ignorableWatch,j as increaseWithUnit,k as invoke,P as isClient,U as isDef,x as isDefined,E as isIOS,L as isObject,M as makeDestructurable,q as noop,z as normalizeDate,B as notNullish,H as now,N as objectEntries,Z as objectOmit,G as objectPick,J as pausableFilter,V as pausableWatch,Y as promiseTimeout,_ as rand,$ as reactify,K as reactifyObject,Q as reactiveComputed,X as reactiveOmit,ee as reactivePick,ae as refAutoReset,se as refDebounced,te as refDefault,re as refThrottled,fe as refWithControl,oe as resolveRef,ne as resolveUnref,ce as set,ie as syncRef,ue as syncRefs,ge as throttleFilter,le as throttledRef,de as throttledWatch,he as timestamp,me as toReactive,ye as toRef,be as toRefs,pe as toValue,Fe as tryOnBeforeMount,ve as tryOnBeforeUnmount,we as tryOnMounted,Ae as tryOnScopeDispose,De as tryOnUnmounted,Re as until,Oe as useArrayDifference,Te as useArrayEvery,Ce as useArrayFilter,We as useArrayFind,Ie as useArrayFindIndex,Se as useArrayFindLast,je as useArrayIncludes,ke as useArrayJoin,Pe as useArrayMap,Ue as useArrayReduce,xe as useArraySome,Ee as useArrayUnique,Le as useCounter,Me as useDateFormat,qe as useDebounce,ze as useDebounceFn,Be as useInterval,He as useIntervalFn,Ne as useLastChanged,Ze as useThrottle,Ge as useThrottleFn,Je as useTimeout,Ve as useTimeoutFn,Ye as useToNumber,_e as useToString,$e as useToggle,Ke as watchArray,Qe as watchAtMost,Xe as watchDebounced,ea as watchDeep,aa as watchIgnorable,sa as watchImmediate,ta as watchOnce,ra as watchPausable,fa as watchThrottled,oa as watchTriggerable,na as watchWithFilter,ca as whenever};
2
+ //# sourceMappingURL=shared-597ef52b.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-597ef52b.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{s as P,g as R}from"./i18n-e810b9fa.js";import{T as k,a as c,A as o}from"./const-ea30795c.js";import{f7 as w,ed as _,dN as I,d3 as B,b5 as G,ay as K,bx as N,N as g,bz as C}from"./vue-6b52a630.js";import{u as H}from"./useDefineApi-b726db1e.js";const M=""+new URL("logo-9e2a668b.svg",import.meta.url).href,q=""+new URL("logo_b-35ccadda.svg",import.meta.url).href,f=H({url:"/api/overview/appearance",method:"GET"}),z=()=>{try{if(localStorage.getItem(k))return;localStorage.setItem(k,"1"),Number(localStorage.getItem(c))===o.LIGHT&&localStorage.setItem(c,String(o.AUTO))}catch{}};z();const J=w(()=>{const l=_(),r=N({logoImage:"",logoImageLight:void 0,logoImageDark:void 0}),s=g(()=>a.value===o.DARK?!0:a.value===o.AUTO?l.value:!1),T=g(()=>((s.value?r.logoImageDark:r.logoImageLight)??r.logoImage)||(s.value?M:q)),a=I(c,o.AUTO),n=C(!1),A=B({sidebar:993}).greaterOrEqual("sidebar"),m=g(()=>A.value),u=I("app-sidebar-open",!0),S=g(()=>m.value&&u.value),D=()=>{u.value=!u.value},d=()=>{const e=document.querySelector("body");e&&(e.style.removeProperty("background-image"),e.style.removeProperty("background-size"),e.style.removeProperty("background-position"),e.style.removeProperty("background-repeat"),e.classList.remove("app-light-extend-theme","app-dark-extend-theme"),n.value=!1)},v=e=>{if(!e){d();return}const t=document.querySelector("body");t&&(t.style.backgroundSize="cover",t.style.backgroundPosition="center",t.style.backgroundRepeat="no-repeat",s.value?(t.style.backgroundImage=`linear-gradient(135deg, rgba(0,0,0,0.65), rgba(0,0,0,0.65) 100%), url(${e})`,t.classList.remove("app-light-extend-theme"),t.classList.add("app-dark-extend-theme")):(t.style.backgroundImage=`linear-gradient(135deg, rgba(220,220,220,0.3), rgba(53,53,53,0.3) 100%), url(${e})`,t.classList.remove("app-dark-extend-theme"),t.classList.add("app-light-extend-theme")),n.value=!0)},b=()=>{document.body.classList.add("app-light-theme"),document.body.classList.remove("app-dark-theme")},h=()=>{document.body.classList.add("app-dark-theme"),document.body.classList.remove("app-light-theme")},O=()=>a.value=o.AUTO,i=async()=>{var L;(isNaN(a.value)||a.value<o.AUTO||a.value>o.DARK)&&O();const e={[o.AUTO]:()=>l.value?h():b(),[o.LIGHT]:()=>b(),[o.DARK]:()=>h()};(L=e[a.value])==null||L.call(e);const{value:t}=await f().execute();y(t),v((t==null?void 0:t.backgroundImage)||"")},x=e=>{a.value=e,i()},E=e=>{P(e)},U=()=>R()??"en_us",p=e=>{r.logoImage=e},y=e=>{p((e==null?void 0:e.logoImage)||""),r.logoImageLight=e==null?void 0:e.logoImageLight,r.logoImageDark=e==null?void 0:e.logoImageDark};return G(l,()=>{a.value===o.AUTO&&i()}),K(async()=>{try{const{value:e}=await f().execute();y(e)}catch(e){console.error("Failed to load appearance settings:",e)}}),{appConfig:r,logoImage:T,hasBgImage:n,useSidebarLayout:m,isSidebarOpen:S,toggleSidebar:D,setLogoImage:p,changeLanguage:E,getCurrentLanguage:U,isDarkTheme:s,initAppTheme:i,setTheme:x,clearBackgroundImage:d,setBackgroundImage:v,currentTheme:a}});export{f as g,J as u};
2
+ //# sourceMappingURL=useAppConfigStore-352fe033.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAppConfigStore-352fe033.js","sources":["../../../../plugins/console/panel/src/assets/logo.svg","../../../../plugins/console/panel/src/assets/logo_b.svg","../../../../plugins/console/panel/src/services/apis/appearance.ts","../../../../plugins/console/panel/src/stores/useAppConfigStore.ts"],"sourcesContent":["export default \"__VITE_ASSET__c2b3a5f0__\"","export default \"__VITE_ASSET__b23f8509__\"","import { useDefineApi } from \"@/stores/useDefineApi\";\n\nexport interface PanelAppearance {\n pageTitle: string;\n logoImage: string;\n logoImageLight?: string;\n logoImageDark?: string;\n backgroundImage: string;\n}\n\n/** Public: the shell reads it before authentication is restored. */\nexport const getAppearance = useDefineApi<unknown, PanelAppearance>({\n url: \"/api/overview/appearance\",\n method: \"GET\"\n});\n","/* eslint-disable no-unused-vars */\nimport logo from \"@/assets/logo.svg\";\nimport logoB from \"@/assets/logo_b.svg\";\nimport { getCurrentLang, setLanguage } from \"@/lang/i18n\";\nimport { AppTheme, THEME_AUTO_MIGRATED_KEY, THEME_KEY } from \"@/types/const\";\nimport { createGlobalState, useBreakpoints, useLocalStorage, usePreferredDark } from \"@vueuse/core\";\nimport { getAppearance, type PanelAppearance } from \"@/services/apis/appearance\";\nimport { computed, onMounted, reactive, ref, watch } from \"vue\";\n\n/**\n * Older builds defaulted to LIGHT and wrote that value on the very first visit,\n * so an upgraded browser keeps rendering the light background even on a dark\n * system. Rewrite that one stored value to AUTO, once: a light theme picked\n * after this has run is left alone.\n */\nconst migrateLegacyLightDefault = () => {\n try {\n if (localStorage.getItem(THEME_AUTO_MIGRATED_KEY)) return;\n localStorage.setItem(THEME_AUTO_MIGRATED_KEY, \"1\");\n if (Number(localStorage.getItem(THEME_KEY)) === AppTheme.LIGHT) {\n localStorage.setItem(THEME_KEY, String(AppTheme.AUTO));\n }\n } catch {\n // Storage can be unavailable (private mode, blocked cookies): nothing to migrate.\n }\n};\n\nmigrateLegacyLightDefault();\n\nexport const useAppConfigStore = createGlobalState(() => {\n const isPreferredDark = usePreferredDark();\n\n const appConfig = reactive({\n logoImage: \"\",\n logoImageLight: undefined as string | undefined,\n logoImageDark: undefined as string | undefined\n });\n\n const isDarkTheme = computed(() => {\n if (currentTheme.value === AppTheme.DARK) return true;\n if (currentTheme.value === AppTheme.AUTO) return isPreferredDark.value;\n return false;\n });\n\n const logoImage = computed(() => {\n const themedLogo = isDarkTheme.value ? appConfig.logoImageDark : appConfig.logoImageLight;\n return (themedLogo ?? appConfig.logoImage) || (isDarkTheme.value ? logo : logoB);\n });\n\n // Default to AUTO so a fresh visit follows the system dark mode\n // (index.html's loading screen already does the same).\n const currentTheme = useLocalStorage<AppTheme>(THEME_KEY, AppTheme.AUTO);\n\n const hasBgImage = ref(false);\n\n /** Desktop uses the sidebar/header layout; phones keep the compact navigation. */\n const breakpoints = useBreakpoints({ sidebar: 993 });\n const isWideEnoughForSidebar = breakpoints.greaterOrEqual(\"sidebar\");\n const useSidebarLayout = computed(() => isWideEnoughForSidebar.value);\n const sidebarOpen = useLocalStorage(\"app-sidebar-open\", true);\n const isSidebarOpen = computed(() => useSidebarLayout.value && sidebarOpen.value);\n\n const toggleSidebar = () => {\n sidebarOpen.value = !sidebarOpen.value;\n };\n\n const clearBackgroundImage = () => {\n const body = document.querySelector(\"body\");\n if (!body) return;\n body.style.removeProperty(\"background-image\");\n body.style.removeProperty(\"background-size\");\n body.style.removeProperty(\"background-position\");\n body.style.removeProperty(\"background-repeat\");\n body.classList.remove(\"app-light-extend-theme\", \"app-dark-extend-theme\");\n hasBgImage.value = false;\n };\n\n const setBackgroundImage = (url: string) => {\n if (!url) {\n clearBackgroundImage();\n return;\n }\n const body = document.querySelector(\"body\");\n if (body) {\n body.style.backgroundSize = \"cover\";\n body.style.backgroundPosition = \"center\";\n body.style.backgroundRepeat = \"no-repeat\";\n if (isDarkTheme.value) {\n body.style.backgroundImage = `linear-gradient(135deg, rgba(0,0,0,0.65), rgba(0,0,0,0.65) 100%), url(${url})`;\n body.classList.remove(\"app-light-extend-theme\");\n body.classList.add(\"app-dark-extend-theme\");\n } else {\n body.style.backgroundImage = `linear-gradient(135deg, rgba(220,220,220,0.3), rgba(53,53,53,0.3) 100%), url(${url})`;\n body.classList.remove(\"app-dark-extend-theme\");\n body.classList.add(\"app-light-extend-theme\");\n }\n\n hasBgImage.value = true;\n }\n };\n\n const setLight = () => {\n document.body.classList.add(\"app-light-theme\");\n document.body.classList.remove(\"app-dark-theme\");\n };\n\n const setDark = () => {\n document.body.classList.add(\"app-dark-theme\");\n document.body.classList.remove(\"app-light-theme\");\n };\n\n const resetTheme = () => (currentTheme.value = AppTheme.AUTO);\n\n const initAppTheme = async () => {\n if (\n isNaN(currentTheme.value) ||\n currentTheme.value < AppTheme.AUTO ||\n currentTheme.value > AppTheme.DARK\n ) {\n resetTheme();\n }\n const fn = {\n [AppTheme.AUTO]: () => (isPreferredDark.value ? setDark() : setLight()),\n [AppTheme.LIGHT]: () => setLight(),\n [AppTheme.DARK]: () => setDark()\n };\n fn[currentTheme.value]?.();\n\n const { value: appearance } = await getAppearance().execute();\n setLogoImages(appearance);\n setBackgroundImage(appearance?.backgroundImage || \"\");\n };\n\n const setTheme = (t: AppTheme) => {\n currentTheme.value = t;\n initAppTheme();\n };\n\n const changeLanguage = (lang: string) => {\n setLanguage(lang);\n };\n\n const getCurrentLanguage = () => {\n return getCurrentLang() ?? \"en_us\";\n };\n\n const setLogoImage = (url: string) => {\n appConfig.logoImage = url;\n };\n\n const setLogoImages = (appearance?: PanelAppearance) => {\n setLogoImage(appearance?.logoImage || \"\");\n appConfig.logoImageLight = appearance?.logoImageLight;\n appConfig.logoImageDark = appearance?.logoImageDark;\n };\n\n watch(isPreferredDark, () => {\n if (currentTheme.value === AppTheme.AUTO) {\n initAppTheme();\n }\n });\n\n onMounted(async () => {\n try {\n const { value: appearance } = await getAppearance().execute();\n setLogoImages(appearance);\n } catch (error) {\n console.error(\"Failed to load appearance settings:\", error);\n }\n });\n\n return {\n appConfig,\n logoImage,\n hasBgImage,\n useSidebarLayout,\n isSidebarOpen,\n toggleSidebar,\n setLogoImage,\n changeLanguage,\n getCurrentLanguage,\n isDarkTheme,\n initAppTheme,\n setTheme,\n clearBackgroundImage,\n setBackgroundImage,\n currentTheme\n };\n});\n"],"names":["logo","logoB","getAppearance","useDefineApi","migrateLegacyLightDefault","THEME_AUTO_MIGRATED_KEY","THEME_KEY","AppTheme","useAppConfigStore","createGlobalState","isPreferredDark","usePreferredDark","appConfig","reactive","isDarkTheme","computed","currentTheme","logoImage","useLocalStorage","hasBgImage","ref","isWideEnoughForSidebar","useBreakpoints","useSidebarLayout","sidebarOpen","isSidebarOpen","toggleSidebar","clearBackgroundImage","body","setBackgroundImage","url","setLight","setDark","resetTheme","initAppTheme","fn","_a","appearance","setLogoImages","setTheme","t","changeLanguage","lang","setLanguage","getCurrentLanguage","getCurrentLang","setLogoImage","watch","onMounted","error"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as o}from"./router-eff205cc.js";import{c9 as u}from"./vue-6b52a630.js";function c(){const t=u();return{getRouteParamsUrl:()=>t.fullPath.split("?")[1]||"",toPage:r=>{const e={...r};return e.query={...t.query||{},...r.query||{}},o.push(e)}}}export{c as u};
2
+ //# sourceMappingURL=useAppRouters-747b627a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAppRouters-747b627a.js","sources":["../../../../plugins/console/panel/src/hooks/useAppRouters.ts"],"sourcesContent":["import { router } from \"@/config/router\";\nimport { useRoute, type RouteLocationPathRaw } from \"vue-router\";\n\nexport function useAppRouters() {\n const route = useRoute();\n\n const getRouteParamsUrl = () => {\n return route.fullPath.split(\"?\")[1] || \"\";\n };\n\n const toPage = (params: RouteLocationPathRaw) => {\n const tmp = {\n ...params\n };\n tmp.query = {\n ...(route.query || {}),\n ...(params.query || {})\n };\n\n return router.push(tmp);\n };\n\n return {\n getRouteParamsUrl,\n toPage\n };\n}\n"],"names":["useAppRouters","route","useRoute","params","tmp","router"],"mappings":"gFAGO,SAASA,GAAgB,CAC9B,MAAMC,EAAQC,IAkBP,MAAA,CACL,kBAjBwB,IACjBD,EAAM,SAAS,MAAM,GAAG,EAAE,CAAC,GAAK,GAiBvC,OAdcE,GAAiC,CAC/C,MAAMC,EAAM,CACV,GAAGD,CAAA,EAEL,OAAAC,EAAI,MAAQ,CACV,GAAIH,EAAM,OAAS,CAAC,EACpB,GAAIE,EAAO,OAAS,CAAC,CAAA,EAGhBE,EAAO,KAAKD,CAAG,CAAA,CAKtB,CAEJ"}
@@ -0,0 +1,2 @@
1
+ import{a as d,L as w}from"./i18n-e810b9fa.js";import{u as p,s as I}from"./useDefineApi-b726db1e.js";import{u as m}from"./context-cc90576e.js";import{f7 as h,dN as S,bx as f,N as r}from"./vue-6b52a630.js";import{_ as P}from"./lodash-001e4f93.js";function b(){return m("user")!=null}function s(){const a=m("user");if(!a)throw new Error('Panel frontend plugin "user" is not loaded.');return a.api}const D=()=>s().loginUser(),K=()=>s().loginPageInfo(),_=()=>s().logoutUser(),C=()=>s().userInfoApi(),O=()=>s().userInfoApiAdvanced(),T=()=>s().getUserInfo(),Y=()=>s().deleteUser(),j=()=>s().addUser(),q=()=>s().editUserInfo(),J=()=>s().updateUserInstance(),R=()=>s().setUserApiKey(),W=()=>s().updatePassword(),z=()=>s().bind2FA(),H=()=>s().confirm2FA(),Q=()=>s().ssoConfig(),V=()=>s().ssoBindLogin(),X=()=>s().ssoBindCurrent(),Z=()=>s().ssoUnbind(),L=p({url:"/api/auth/status",method:"GET"}),$=p({url:"/api/overview"}),N={uuid:"",userName:"",permission:10,token:"",instances:[]},E=h(()=>{const a=S(w,d(window.navigator.language)),o=f({userInfo:null,versionChange:!1,language:a.value,settings:{canFileManager:!1,allowChangeCmd:!1,allowJavaManager:!0}}),v=()=>{const e=P.cloneDeep(o);return f(e)},i=r(()=>b()),U=r(()=>{var e;return((e=o.userInfo)==null?void 0:e.permission)===10}),A=r(()=>{var e;return Number((e=o.userInfo)==null?void 0:e.permission)>0}),t=e=>{o.userInfo=e,I(e==null?void 0:e.token)};return{cloneState:v,updateUserInfo:async e=>{if(!i.value){t({...N});return}try{if(e)t(e);else{const n=await C().execute();if(n.value)t(n.value);else throw new Error("Failed to get user information from server!")}}catch(n){throw console.error(n),new Error(n.message)}},updatePanelStatus:async()=>{var u,l,c,g;const{state:e}=E(),n=await L().execute();e.versionChange=!!((u=n.value)!=null&&u.versionChange),(l=n.value)!=null&&l.settings&&(e.settings=(c=n.value)==null?void 0:c.settings),e.language=a.value=d((g=n.value)==null?void 0:g.language),console.info("Window.navigator.language:",window.navigator.language),console.info("Panel Language:",e.language)},authEnabled:i,isAdmin:U,isLogged:A,state:o}});export{W as a,D as b,H as c,z as d,j as e,q as f,T as g,Y as h,J as i,O as j,C as k,_ as l,K as m,Q as n,$ as o,V as p,X as q,Z as r,R as s,E as u};
2
+ //# sourceMappingURL=useAppStateStore-a438b9a6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAppStateStore-a438b9a6.js","sources":["../../../../plugins/console/panel/src/services/apis/user.ts","../../../../plugins/console/panel/src/services/apis/index.ts","../../../../plugins/console/panel/src/stores/useAppStateStore.ts"],"sourcesContent":["import { usePluginService } from \"@/plugin/context\";\nimport type { BaseUserInfo, EditUserInfo, LoginUserInfo, UserInstance } from \"@/types/user\";\nimport type { Ref } from \"vue\";\n\n/**\n * Facade over the account API, which is owned by the \"user\" panel plugin.\n *\n * The console implementation and other plugins keep importing these names from\n * `@/services/apis`; the real definitions are registered by the plugin as the\n * `user.api` service and resolved at call time, so unloading the plugin takes\n * the API with it. Without the plugin the panel runs unauthenticated and\n * nothing should be calling these — guard with `isUserPluginLoaded()` or with\n * `useAppStateStore().authEnabled`.\n *\n * Imports `@/plugin/context` rather than `@/plugin` on purpose: the barrel pulls\n * the whole card and route registry into the app entry graph.\n */\n\nexport interface ApiCall<P, T> {\n isLoading: Ref<boolean>;\n state: Ref<T | undefined>;\n isReady: Ref<boolean>;\n execute: (config?: P & Record<string, any>) => Promise<Ref<T | undefined>>;\n}\n\nexport interface SsoPublicConfig {\n enabled: boolean;\n onlyMode: boolean;\n autoRedirect: boolean;\n providerName: string;\n iconUrl: string;\n}\n\nexport interface UserPluginApi {\n loginUser: () => ApiCall<\n { data: { username: string; password: string; code?: string } } | undefined,\n string\n >;\n loginPageInfo: () => ApiCall<any, { loginInfo: string; isFirstStartup: boolean }>;\n logoutUser: () => ApiCall<any, any>;\n userInfoApi: () => ApiCall<any, LoginUserInfo>;\n userInfoApiAdvanced: () => ApiCall<\n { params: { uuid: string; advanced: boolean } },\n BaseUserInfo\n >;\n getUserInfo: () => ApiCall<\n { params: { userName: string; page: number; page_size: number; role: string } },\n { total: number; pageSize: number; page: number; maxPage: number; data: BaseUserInfo[] }\n >;\n deleteUser: () => ApiCall<{ data: string[] }, any>;\n addUser: () => ApiCall<\n { data: { username: string; password: string; permission: number } },\n { uuid: string }\n >;\n editUserInfo: () => ApiCall<{ data: { config: EditUserInfo; uuid: string } }, boolean>;\n updateUserInstance: () => ApiCall<\n { data: { config: { instances: UserInstance[] }; uuid: string } },\n boolean\n >;\n setUserApiKey: () => ApiCall<{ data: { enable: boolean } }, string>;\n updatePassword: () => ApiCall<{ data: { passWord: string } }, boolean>;\n bind2FA: () => ApiCall<any, string>;\n confirm2FA: () => ApiCall<{ data: { enable: boolean; TOTPCode: string } }, undefined>;\n queryUsername: () => ApiCall<\n { params: { username: string } },\n { uuid?: string; userName?: string }\n >;\n ssoConfig: () => ApiCall<any, SsoPublicConfig | null>;\n ssoBindLogin: () => ApiCall<\n { data: { username: string; password: string; code?: string } },\n string\n >;\n ssoBindCurrent: () => ApiCall<any, boolean>;\n ssoUnbind: () => ApiCall<{ data: { uuid: string } }, boolean>;\n}\n\nexport function isUserPluginLoaded(): boolean {\n return usePluginService(\"user\") != null;\n}\n\nfunction resolveUserApi(): UserPluginApi {\n const user = usePluginService<{ api: UserPluginApi }>(\"user\");\n if (!user) {\n throw new Error('Panel frontend plugin \"user\" is not loaded.');\n }\n return user.api;\n}\n\nexport const loginUser = () => resolveUserApi().loginUser();\nexport const loginPageInfo = () => resolveUserApi().loginPageInfo();\nexport const logoutUser = () => resolveUserApi().logoutUser();\nexport const userInfoApi = () => resolveUserApi().userInfoApi();\nexport const userInfoApiAdvanced = () => resolveUserApi().userInfoApiAdvanced();\nexport const getUserInfo = () => resolveUserApi().getUserInfo();\nexport const deleteUser = () => resolveUserApi().deleteUser();\nexport const addUser = () => resolveUserApi().addUser();\nexport const editUserInfo = () => resolveUserApi().editUserInfo();\nexport const updateUserInstance = () => resolveUserApi().updateUserInstance();\nexport const setUserApiKey = () => resolveUserApi().setUserApiKey();\nexport const updatePassword = () => resolveUserApi().updatePassword();\nexport const bind2FA = () => resolveUserApi().bind2FA();\nexport const confirm2FA = () => resolveUserApi().confirm2FA();\nexport const queryUsername = () => resolveUserApi().queryUsername();\nexport const ssoConfig = () => resolveUserApi().ssoConfig();\nexport const ssoBindLogin = () => resolveUserApi().ssoBindLogin();\nexport const ssoBindCurrent = () => resolveUserApi().ssoBindCurrent();\nexport const ssoUnbind = () => resolveUserApi().ssoUnbind();\n","import { useDefineApi } from \"@/stores/useDefineApi\";\nimport type { PanelStatus, Settings } from \"@/types\";\nexport { addNode, connectNode, deleteNode, editNode, remoteNodeList } from \"./node\";\nexport { remoteInstances } from \"./instance\";\n// Account APIs live in the \"user\" plugin; these are facades over its\n// `user.api` service so existing call sites keep working.\nexport {\n addUser,\n bind2FA,\n confirm2FA,\n deleteUser,\n editUserInfo,\n getUserInfo,\n isUserPluginLoaded,\n loginPageInfo,\n loginUser,\n logoutUser,\n queryUsername,\n setUserApiKey,\n ssoBindCurrent,\n ssoBindLogin,\n ssoConfig,\n ssoUnbind,\n updatePassword,\n updateUserInstance,\n userInfoApi,\n userInfoApiAdvanced,\n type SsoPublicConfig\n} from \"./user\";\n\nexport const panelStatus = useDefineApi<any, PanelStatus>({\n url: \"/api/auth/status\",\n method: \"GET\"\n});\n\nexport const settingInfo = useDefineApi<any, Settings>({\n url: \"/api/overview/setting\"\n});\n\nexport const setSettingInfo = useDefineApi<\n | {\n data: Partial<Settings>;\n }\n | undefined,\n string\n>({\n url: \"/api/overview/setting\",\n method: \"PUT\"\n});\n\nexport const overviewInfo = useDefineApi<any, IPanelOverviewResponse>({\n url: \"/api/overview\"\n});\n","import { LANGUAGE_KEY, toStandardLang } from \"@/lang/i18n\";\nimport { setAuthToken } from \"@/services/apiService\";\nimport { panelStatus } from \"@/services/apis\";\nimport { isUserPluginLoaded, userInfoApi } from \"@/services/apis/user\";\nimport type { PanelStatus } from \"@/types\";\nimport type { LoginUserInfo } from \"@/types/user\";\nimport { createGlobalState, useLocalStorage } from \"@vueuse/core\";\nimport _ from \"lodash\";\nimport { computed, reactive } from \"vue\";\n\ninterface AppStateInfo extends PanelStatus {\n userInfo: LoginUserInfo | null;\n}\n\n/**\n * Identity used when the \"user\" plugin is absent. Authentication then lives\n * nowhere, the backend treats every request as an administrator, and the\n * frontend has to agree so the router lets the user in without a login page.\n */\nconst ANONYMOUS_ADMIN = {\n uuid: \"\",\n userName: \"\",\n permission: 10,\n token: \"\",\n instances: []\n} as unknown as LoginUserInfo;\n\nexport const useAppStateStore = createGlobalState(() => {\n const language = useLocalStorage(LANGUAGE_KEY, toStandardLang(window.navigator.language));\n const state: AppStateInfo = reactive<AppStateInfo>({\n userInfo: null,\n versionChange: false,\n language: language.value,\n settings: {\n canFileManager: false,\n allowChangeCmd: false,\n allowJavaManager: true\n }\n });\n\n const cloneState = (): AppStateInfo => {\n const tmp = _.cloneDeep(state);\n return reactive(tmp);\n };\n\n /** False when the \"user\" plugin is not installed: the panel has no login. */\n const authEnabled = computed(() => isUserPluginLoaded());\n const isAdmin = computed(() => state.userInfo?.permission === 10);\n const isLogged = computed(() => Number(state.userInfo?.permission) > 0);\n const setStateUserInfo = (userInfo: LoginUserInfo | null) => {\n state.userInfo = userInfo;\n setAuthToken(userInfo?.token);\n };\n\n const updateUserInfo = async (userInfo?: LoginUserInfo) => {\n if (!authEnabled.value) {\n setStateUserInfo({ ...ANONYMOUS_ADMIN });\n return;\n }\n try {\n if (userInfo) {\n setStateUserInfo(userInfo);\n } else {\n const info = await userInfoApi().execute();\n if (info.value) {\n setStateUserInfo(info.value);\n } else {\n throw new Error(\"Failed to get user information from server!\");\n }\n }\n } catch (err: any) {\n console.error(err);\n throw new Error(err.message);\n }\n };\n\n const updatePanelStatus = async () => {\n const { state } = useAppStateStore();\n const panelStatusRes = await panelStatus().execute();\n state.versionChange = panelStatusRes.value?.versionChange ? true : false;\n if (panelStatusRes.value?.settings) {\n state.settings = panelStatusRes.value?.settings;\n }\n state.language = language.value = toStandardLang(panelStatusRes.value?.language);\n console.info(\"Window.navigator.language:\", window.navigator.language);\n console.info(\"Panel Language:\", state.language);\n };\n\n return {\n cloneState,\n updateUserInfo,\n updatePanelStatus,\n authEnabled,\n isAdmin,\n isLogged,\n state\n };\n});\n"],"names":["isUserPluginLoaded","usePluginService","resolveUserApi","user","loginUser","loginPageInfo","logoutUser","userInfoApi","userInfoApiAdvanced","getUserInfo","deleteUser","addUser","editUserInfo","updateUserInstance","setUserApiKey","updatePassword","bind2FA","confirm2FA","ssoConfig","ssoBindLogin","ssoBindCurrent","ssoUnbind","panelStatus","useDefineApi","overviewInfo","ANONYMOUS_ADMIN","useAppStateStore","createGlobalState","language","useLocalStorage","LANGUAGE_KEY","toStandardLang","state","reactive","cloneState","tmp","_","authEnabled","computed","isAdmin","_a","isLogged","setStateUserInfo","userInfo","setAuthToken","info","err","panelStatusRes","_b","_c","_d"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{f7 as l,bx as i}from"./vue-6b52a630.js";const n=l(()=>{const e=i({inputDialog:{title:"",show:!1,resolve:t=>{},reject:t=>{}},showUserInfoDialog:!1});return{state:e,openInputDialog:t=>(e.inputDialog.title=t,e.inputDialog.show=!0,new Promise((o,a)=>{e.inputDialog.resolve=o,e.inputDialog.reject=a}))}});export{n as u};
2
+ //# sourceMappingURL=useAppToolsStore-288c4fe8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAppToolsStore-288c4fe8.js","sources":["../../../../plugins/console/panel/src/stores/useAppToolsStore.ts"],"sourcesContent":["/* eslint-disable no-unused-vars */\nimport { createGlobalState } from \"@vueuse/core\";\nimport { reactive } from \"vue\";\n\nexport const useAppToolsStore = createGlobalState(() => {\n const state = reactive({\n inputDialog: {\n title: \"\",\n show: false,\n resolve: (value: any) => {},\n reject: (value: any) => {}\n },\n showUserInfoDialog: false\n });\n\n const openInputDialog = (title: string) => {\n state.inputDialog.title = title;\n state.inputDialog.show = true;\n return new Promise<any>((resolve, reject) => {\n state.inputDialog.resolve = resolve;\n state.inputDialog.reject = reject;\n });\n };\n\n return {\n state,\n openInputDialog\n };\n});\n"],"names":["useAppToolsStore","createGlobalState","state","reactive","value","title","resolve","reject"],"mappings":"+CAIa,MAAAA,EAAmBC,EAAkB,IAAM,CACtD,MAAMC,EAAQC,EAAS,CACrB,YAAa,CACX,MAAO,GACP,KAAM,GACN,QAAUC,GAAe,CAAC,EAC1B,OAASA,GAAe,CAAC,CAC3B,EACA,mBAAoB,EAAA,CACrB,EAWM,MAAA,CACL,MAAAF,EACA,gBAXuBG,IACvBH,EAAM,YAAY,MAAQG,EAC1BH,EAAM,YAAY,KAAO,GAClB,IAAI,QAAa,CAACI,EAASC,IAAW,CAC3CL,EAAM,YAAY,QAAUI,EAC5BJ,EAAM,YAAY,OAASK,CAAA,CAC5B,EAKD,CAEJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ import{t as De}from"./i18n-e810b9fa.js";import{hk as Mt,hl as Ht,hm as Vt,an as vt,b as $t,bA as zt,ar as dt,a1 as Wt,ac as Oe,hn as Jt,bz as oe,bC as Kt}from"./vue-6b52a630.js";import{_ as Ae}from"./lodash-001e4f93.js";const ht=Mt({defaults:{VDialog:{scrollable:!0},VList:{VDivider:{class:"my-6"}},VCard:{rounded:"xl"},VAlert:{rounded:"xl"},VAutocomplete:{flat:!0,rounded:"xl"},VBtn:{flat:!0,rounded:"xl"},VCombobox:{flat:!0,rounded:"xl"},VField:{flat:!0,rounded:"xl",color:"var(--text-color)",baseColor:"var(--text-color)"},VFileInput:{flat:!0,rounded:"xl"},VSelect:{flat:!0,rounded:"xl"},VTextarea:{flat:!0,rounded:"xl"},VTextField:{flat:!0,rounded:"xl"}},icons:{defaultSet:"mdi",aliases:Ht,sets:{mdi:Vt}},theme:{defaultTheme:"light",themes:{light:{dark:!1,colors:{background:"#f5f5f5",surface:"#ffffff","field-surface":"#e8e8e8","surface-variant":"#f0f0f0","on-background":"#262626","on-surface":"#262626","on-surface-variant":"#262626",primary:"#1677ff",error:"#f5222d",info:"#8c8c8c"}},dark:{dark:!0,colors:{background:"#232429",surface:"#202020","field-surface":"#202020","surface-variant":"#303136","on-background":"#bfbfbf","on-surface":"#bfbfbf","on-surface-variant":"#ffffff",primary:"#3c89e8",error:"#e84749",info:"#8c8c8c"}}}}});function Vr(e){return ht.theme.change(e?"dark":"light")}const Xe=new WeakSet;function Xt(e){Xe.has(e)||(e.use(ht),Xe.add(e))}const Gt=3,pt=5e3,I=zt([]),j=new Map;let Qt=1,q,U;const Zt={success:"mdi-check-circle-outline",error:"mdi-alert-circle-outline",warning:"mdi-alert-outline",info:"mdi-information-outline"},mt=e=>{j.delete(e.id),dt(()=>{j.size===0&&tn()})},Yt=e=>{if(e.closing||j.get(e.id)!==e)return;e.closing=!0;const t=I.findIndex(n=>n.contentProps["data-toast-id"]===e.id);if(t>=0){I.splice(t,1),mt(e);return}dt(()=>{var n;j.get(e.id)===e&&((n=e.dismiss)==null||n.call(e))})},le=e=>typeof e=="function"?le(e()):Array.isArray(e)?e.map(le):e,fe=e=>typeof e=="function"?fe(e()):Array.isArray(e)?e.some(fe):typeof e=="string"?e.trim().length>0:e!=null,en=()=>{if(U||typeof document>"u")return;q=document.createElement("div"),q.className="vuetify-toast-host",document.body.appendChild(q);const e=Wt({setup(){return()=>Oe(Jt,{modelValue:I,"onUpdate:modelValue":t=>I.splice(0,I.length,...t),attach:"body",location:"top center",minWidth:0,maxWidth:"min(560px, calc(100vw - 32px))",zIndex:1e4,rounded:"xl",timeout:pt,totalVisible:Gt,variant:"tonal"},{text:({item:t})=>{const n=j.get(t.contentProps["data-toast-id"]);return n?Oe("div",{class:"vuetify-toast-text"},[le(n.content),n.description!=null?Oe("div",{class:"vuetify-toast-description"},[le(n.description)]):null]):null},actions:({item:t,props:n})=>{const r=j.get(t.contentProps["data-toast-id"]);return r&&(r.dismiss=n.onClick),null}})}});U=$t(e),Xt(U),U.mount(q)},V=(e,t)=>{const n=typeof t=="object"&&t!==null&&!Array.isArray(t)&&!vt(t)?t:{content:t},r=n.message??n.content,s=n.description;if(!fe(r)&&!fe(s))return{close:()=>{}};if(en(),!U)return{close:()=>{}};const o={id:Qt++,content:typeof r=="string"?r.trim():r,description:typeof s=="string"?s.trim():s,closing:!1};return j.set(o.id,o),I.push({class:"vuetify-toast",color:e,prependIcon:Zt[e],timeout:n.duration===0?-1:n.duration??pt,contentProps:{"data-toast-id":o.id},onDismiss:()=>o.closing=!0,onAfterLeave:()=>mt(o)}),{close:()=>{Yt(o)}}},X=e=>(t,n)=>V(e,{content:t,duration:n}),yt={success:X("success"),error:X("error"),warning:X("warning"),warn:X("warning"),info:X("info")},vr={success:e=>V("success",e),error:e=>V("error",e),warning:e=>V("warning",e),warn:e=>V("warning",e),info:e=>V("info",e),open:e=>V(e.type??"info",e)},tn=()=>{I.splice(0,I.length),j.clear(),U==null||U.unmount(),q==null||q.remove(),U=void 0,q=void 0};async function $r(e){if(e==null||String(e).trim()==="")throw new Error(De("TXT_CODE_cb08d342"))}function wt(e,t=""){var n;return e==null?t:e.message?e.message:e.errorFields instanceof Array?String(((n=e.errorFields[0])==null?void 0:n.errors[0])||""):String(e)}function zr(e){console.error("Function reportValidatorError():",e),yt.error(wt(e,De("TXT_CODE_6a365d01")))}function nn(e={}){console.error("Function reportErrorMsg():",e),yt.error(wt(e,De("TXT_CODE_6a365d01")))}const Wr=/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[\x00-\x7F]{9,36}$/;function Jr(e){if(!e||typeof e!="string")return!1;if(e=e.trim(),/^(\d{1,3}\.){3}\d{1,3}$/.test(e)){const n=e.split(".").map(Number);if(n.some(c=>c<0||c>255))return!1;const[r,s,o,i]=n;if(r===10||r===172&&s>=16&&s<=31||r===192&&s===168||r===127||r===169&&s===254||r>=224&&r<=239||r===0||r===255&&s===255&&o===255&&i===255)return!0}return!!(e.includes(":")&&(e==="::1"||e.toLowerCase().startsWith("fe80:")||e.toLowerCase().startsWith("fe8")||e.toLowerCase().startsWith("fe9")||e.toLowerCase().startsWith("fea")||e.toLowerCase().startsWith("feb")||e.toLowerCase().startsWith("fc")||e.toLowerCase().startsWith("fd")||e.toLowerCase().startsWith("fec")||e.toLowerCase().startsWith("fed")||e.toLowerCase().startsWith("fee")||e.toLowerCase().startsWith("fef")||e.toLowerCase().startsWith("ff")||e==="::"||e==="0:0:0:0:0:0:0:0"))}function bt(e,t){return function(){return e.apply(t,arguments)}}const{toString:rn}=Object.prototype,{getPrototypeOf:Ue}=Object,{iterator:me,toStringTag:gt}=Symbol,ye=(e=>t=>{const n=rn.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),F=e=>(e=e.toLowerCase(),t=>ye(t)===e),we=e=>t=>typeof t===e,{isArray:J}=Array,W=we("undefined");function Q(e){return e!==null&&!W(e)&&e.constructor!==null&&!W(e.constructor)&&x(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Et=F("ArrayBuffer");function sn(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Et(e.buffer),t}const on=we("string"),x=we("function"),Rt=we("number"),Z=e=>e!==null&&typeof e=="object",an=e=>e===!0||e===!1,ie=e=>{if(ye(e)!=="object")return!1;const t=Ue(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(gt in e)&&!(me in e)},cn=e=>{if(!Z(e)||Q(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},un=F("Date"),ln=F("File"),fn=F("Blob"),dn=F("FileList"),hn=e=>Z(e)&&x(e.pipe),pn=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||x(e.append)&&((t=ye(e))==="formdata"||t==="object"&&x(e.toString)&&e.toString()==="[object FormData]"))},mn=F("URLSearchParams"),[yn,wn,bn,gn]=["ReadableStream","Request","Response","Headers"].map(F),En=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Y(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),J(e))for(r=0,s=e.length;r<s;r++)t.call(null,e[r],r,e);else{if(Q(e))return;const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let c;for(r=0;r<i;r++)c=o[r],t.call(null,e[c],c,e)}}function St(e,t){if(Q(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r=n.length,s;for(;r-- >0;)if(s=n[r],t===s.toLowerCase())return s;return null}const v=(()=>typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global)(),Ot=e=>!W(e)&&e!==v;function _e(){const{caseless:e,skipUndefined:t}=Ot(this)&&this||{},n={},r=(s,o)=>{if(o==="__proto__"||o==="constructor"||o==="prototype")return;const i=e&&St(n,o)||o;ie(n[i])&&ie(s)?n[i]=_e(n[i],s):ie(s)?n[i]=_e({},s):J(s)?n[i]=s.slice():(!t||!W(s))&&(n[i]=s)};for(let s=0,o=arguments.length;s<o;s++)arguments[s]&&Y(arguments[s],r);return n}const Rn=(e,t,n,{allOwnKeys:r}={})=>(Y(t,(s,o)=>{n&&x(s)?Object.defineProperty(e,o,{value:bt(s,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,o,{value:s,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),Sn=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),On=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},An=(e,t,n,r)=>{let s,o,i;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),o=s.length;o-- >0;)i=s[o],(!r||r(i,e,t))&&!c[i]&&(t[i]=e[i],c[i]=!0);e=n!==!1&&Ue(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Tn=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},xn=e=>{if(!e)return null;if(J(e))return e;let t=e.length;if(!Rt(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Cn=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Ue(Uint8Array)),_n=(e,t)=>{const r=(e&&e[me]).call(e);let s;for(;(s=r.next())&&!s.done;){const o=s.value;t.call(e,o[0],o[1])}},Nn=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Pn=F("HTMLFormElement"),Ln=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),Ge=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Fn=F("RegExp"),At=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Y(n,(s,o)=>{let i;(i=t(s,o,e))!==!1&&(r[o]=i||s)}),Object.defineProperties(e,r)},Dn=e=>{At(e,(t,n)=>{if(x(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(x(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Un=(e,t)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return J(e)?r(e):r(String(e).split(t)),n},Bn=()=>{},kn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function qn(e){return!!(e&&x(e.append)&&e[gt]==="FormData"&&e[me])}const In=e=>{const t=new Array(10),n=(r,s)=>{if(Z(r)){if(t.indexOf(r)>=0)return;if(Q(r))return r;if(!("toJSON"in r)){t[s]=r;const o=J(r)?[]:{};return Y(r,(i,c)=>{const d=n(i,s+1);!W(d)&&(o[c]=d)}),t[s]=void 0,o}}return r};return n(e,0)},jn=F("AsyncFunction"),Mn=e=>e&&(Z(e)||x(e))&&x(e.then)&&x(e.catch),Tt=((e,t)=>e?setImmediate:t?((n,r)=>(v.addEventListener("message",({source:s,data:o})=>{s===v&&o===n&&r.length&&r.shift()()},!1),s=>{r.push(s),v.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",x(v.postMessage)),Hn=typeof queueMicrotask<"u"?queueMicrotask.bind(v):typeof process<"u"&&process.nextTick||Tt,Vn=e=>e!=null&&x(e[me]),a={isArray:J,isArrayBuffer:Et,isBuffer:Q,isFormData:pn,isArrayBufferView:sn,isString:on,isNumber:Rt,isBoolean:an,isObject:Z,isPlainObject:ie,isEmptyObject:cn,isReadableStream:yn,isRequest:wn,isResponse:bn,isHeaders:gn,isUndefined:W,isDate:un,isFile:ln,isBlob:fn,isRegExp:Fn,isFunction:x,isStream:hn,isURLSearchParams:mn,isTypedArray:Cn,isFileList:dn,forEach:Y,merge:_e,extend:Rn,trim:En,stripBOM:Sn,inherits:On,toFlatObject:An,kindOf:ye,kindOfTest:F,endsWith:Tn,toArray:xn,forEachEntry:_n,matchAll:Nn,isHTMLForm:Pn,hasOwnProperty:Ge,hasOwnProp:Ge,reduceDescriptors:At,freezeMethods:Dn,toObjectSet:Un,toCamelCase:Ln,noop:Bn,toFiniteNumber:kn,findKey:St,global:v,isContextDefined:Ot,isSpecCompliantForm:qn,toJSONObject:In,isAsyncFn:jn,isThenable:Mn,setImmediate:Tt,asap:Hn,isIterable:Vn};class O extends Error{static from(t,n,r,s,o,i){const c=new O(t.message,n||t.code,r,s,o);return c.cause=t,c.name=t.name,i&&Object.assign(c,i),c}constructor(t,n,r,s,o){super(t),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),s&&(this.request=s),o&&(this.response=o,this.status=o.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:a.toJSONObject(this.config),code:this.code,status:this.status}}}O.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";O.ERR_BAD_OPTION="ERR_BAD_OPTION";O.ECONNABORTED="ECONNABORTED";O.ETIMEDOUT="ETIMEDOUT";O.ERR_NETWORK="ERR_NETWORK";O.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";O.ERR_DEPRECATED="ERR_DEPRECATED";O.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";O.ERR_BAD_REQUEST="ERR_BAD_REQUEST";O.ERR_CANCELED="ERR_CANCELED";O.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";O.ERR_INVALID_URL="ERR_INVALID_URL";const y=O,vn=null;function Ne(e){return a.isPlainObject(e)||a.isArray(e)}function xt(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Qe(e,t,n){return e?e.concat(t).map(function(s,o){return s=xt(s),!n&&o?"["+s+"]":s}).join(n?".":""):t}function $n(e){return a.isArray(e)&&!e.some(Ne)}const zn=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function be(e,t,n){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,h){return!a.isUndefined(h[m])});const r=n.metaTokens,s=n.visitor||u,o=n.dots,i=n.indexes,d=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function l(f){if(f===null)return"";if(a.isDate(f))return f.toISOString();if(a.isBoolean(f))return f.toString();if(!d&&a.isBlob(f))throw new y("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(f)||a.isTypedArray(f)?d&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function u(f,m,h){let b=f;if(f&&!h&&typeof f=="object"){if(a.endsWith(m,"{}"))m=r?m:m.slice(0,-2),f=JSON.stringify(f);else if(a.isArray(f)&&$n(f)||(a.isFileList(f)||a.endsWith(m,"[]"))&&(b=a.toArray(f)))return m=xt(m),b.forEach(function(R,A){!(a.isUndefined(R)||R===null)&&t.append(i===!0?Qe([m],A,o):i===null?m:m+"[]",l(R))}),!1}return Ne(f)?!0:(t.append(Qe(h,m,o),l(f)),!1)}const p=[],w=Object.assign(zn,{defaultVisitor:u,convertValue:l,isVisitable:Ne});function E(f,m){if(!a.isUndefined(f)){if(p.indexOf(f)!==-1)throw Error("Circular reference detected in "+m.join("."));p.push(f),a.forEach(f,function(b,C){(!(a.isUndefined(b)||b===null)&&s.call(t,b,a.isString(C)?C.trim():C,m,w))===!0&&E(b,m?m.concat(C):[C])}),p.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return E(e),t}function Ze(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function Be(e,t){this._pairs=[],e&&be(e,this,t)}const Ct=Be.prototype;Ct.append=function(t,n){this._pairs.push([t,n])};Ct.toString=function(t){const n=t?function(r){return t.call(this,r,Ze)}:Ze;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function Wn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function _t(e,t,n){if(!t)return e;const r=n&&n.encode||Wn,s=a.isFunction(n)?{serialize:n}:n,o=s&&s.serialize;let i;if(o?i=o(t,s):i=a.isURLSearchParams(t)?t.toString():new Be(t,s).toString(r),i){const c=e.indexOf("#");c!==-1&&(e=e.slice(0,c)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Jn{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Ye=Jn,ke={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},Kn=typeof URLSearchParams<"u"?URLSearchParams:Be,Xn=typeof FormData<"u"?FormData:null,Gn=typeof Blob<"u"?Blob:null,Qn={isBrowser:!0,classes:{URLSearchParams:Kn,FormData:Xn,Blob:Gn},protocols:["http","https","file","blob","url","data"]},qe=typeof window<"u"&&typeof document<"u",Pe=typeof navigator=="object"&&navigator||void 0,Zn=qe&&(!Pe||["ReactNative","NativeScript","NS"].indexOf(Pe.product)<0),Yn=(()=>typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function")(),er=qe&&window.location.href||"http://localhost",tr=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:qe,hasStandardBrowserEnv:Zn,hasStandardBrowserWebWorkerEnv:Yn,navigator:Pe,origin:er},Symbol.toStringTag,{value:"Module"})),S={...tr,...Qn};function nr(e,t){return be(e,new S.classes.URLSearchParams,{visitor:function(n,r,s,o){return S.isNode&&a.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}function rr(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function sr(e){const t={},n=Object.keys(e);let r;const s=n.length;let o;for(r=0;r<s;r++)o=n[r],t[o]=e[o];return t}function Nt(e){function t(n,r,s,o){let i=n[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),d=o>=n.length;return i=!i&&a.isArray(s)?s.length:i,d?(a.hasOwnProp(s,i)?s[i]=[s[i],r]:s[i]=r,!c):((!s[i]||!a.isObject(s[i]))&&(s[i]=[]),t(n,r,s[i],o)&&a.isArray(s[i])&&(s[i]=sr(s[i])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const n={};return a.forEachEntry(e,(r,s)=>{t(rr(r),s,n,0)}),n}return null}function or(e,t,n){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Ie={transitional:ke,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=a.isObject(t);if(o&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(Nt(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t)||a.isReadableStream(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return nr(t,this.formSerializer).toString();if((c=a.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=this.env&&this.env.FormData;return be(c?{"files[]":t}:t,d&&new d,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),or(t)):t}],transformResponse:[function(t){const n=this.transitional||Ie.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(r&&!this.responseType||s)){const i=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t,this.parseReviver)}catch(c){if(i)throw c.name==="SyntaxError"?y.from(c,y.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:S.classes.FormData,Blob:S.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],e=>{Ie.headers[e]={}});const je=Ie,ir=a.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ar=e=>{const t={};let n,r,s;return e&&e.split(`
2
+ `).forEach(function(i){s=i.indexOf(":"),n=i.substring(0,s).trim().toLowerCase(),r=i.substring(s+1).trim(),!(!n||t[n]&&ir[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},et=Symbol("internals");function G(e){return e&&String(e).trim().toLowerCase()}function ae(e){return e===!1||e==null?e:a.isArray(e)?e.map(ae):String(e)}function cr(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const ur=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Te(e,t,n,r,s){if(a.isFunction(r))return r.call(this,t,n);if(s&&(t=n),!!a.isString(t)){if(a.isString(r))return t.indexOf(r)!==-1;if(a.isRegExp(r))return r.test(t)}}function lr(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function fr(e,t){const n=a.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(s,o,i){return this[r].call(this,t,s,o,i)},configurable:!0})})}class ge{constructor(t){t&&this.set(t)}set(t,n,r){const s=this;function o(c,d,l){const u=G(d);if(!u)throw new Error("header name must be a non-empty string");const p=a.findKey(s,u);(!p||s[p]===void 0||l===!0||l===void 0&&s[p]!==!1)&&(s[p||d]=ae(c))}const i=(c,d)=>a.forEach(c,(l,u)=>o(l,u,d));if(a.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(a.isString(t)&&(t=t.trim())&&!ur(t))i(ar(t),n);else if(a.isObject(t)&&a.isIterable(t)){let c={},d,l;for(const u of t){if(!a.isArray(u))throw TypeError("Object iterator must return a key-value pair");c[l=u[0]]=(d=c[l])?a.isArray(d)?[...d,u[1]]:[d,u[1]]:u[1]}i(c,n)}else t!=null&&o(n,t,r);return this}get(t,n){if(t=G(t),t){const r=a.findKey(this,t);if(r){const s=this[r];if(!n)return s;if(n===!0)return cr(s);if(a.isFunction(n))return n.call(this,s,r);if(a.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=G(t),t){const r=a.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||Te(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let s=!1;function o(i){if(i=G(i),i){const c=a.findKey(r,i);c&&(!n||Te(r,r[c],c,n))&&(delete r[c],s=!0)}}return a.isArray(t)?t.forEach(o):o(t),s}clear(t){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!t||Te(this,this[o],o,t,!0))&&(delete this[o],s=!0)}return s}normalize(t){const n=this,r={};return a.forEach(this,(s,o)=>{const i=a.findKey(r,o);if(i){n[i]=ae(s),delete n[o];return}const c=t?lr(o):String(o).trim();c!==o&&delete n[o],n[c]=ae(s),r[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=t&&a.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[et]=this[et]={accessors:{}}).accessors,s=this.prototype;function o(i){const c=G(i);r[c]||(fr(s,i),r[c]=!0)}return a.isArray(t)?t.forEach(o):o(t),this}}ge.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);a.reduceDescriptors(ge.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});a.freezeMethods(ge);const L=ge;function xe(e,t){const n=this||je,r=t||n,s=L.from(r.headers);let o=r.data;return a.forEach(e,function(c){o=c.call(n,o,s.normalize(),t?t.status:void 0)}),s.normalize(),o}function Pt(e){return!!(e&&e.__CANCEL__)}class dr extends y{constructor(t,n,r){super(t??"canceled",y.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}}const ee=dr;function Lt(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new y("Request failed with status code "+n.status,[y.ERR_BAD_REQUEST,y.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function hr(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function pr(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,o=0,i;return t=t!==void 0?t:1e3,function(d){const l=Date.now(),u=r[o];i||(i=l),n[s]=d,r[s]=l;let p=o,w=0;for(;p!==s;)w+=n[p++],p=p%e;if(s=(s+1)%e,s===o&&(o=(o+1)%e),l-i<t)return;const E=u&&l-u;return E?Math.round(w*1e3/E):void 0}}function mr(e,t){let n=0,r=1e3/t,s,o;const i=(l,u=Date.now())=>{n=u,s=null,o&&(clearTimeout(o),o=null),e(...l)};return[(...l)=>{const u=Date.now(),p=u-n;p>=r?i(l,u):(s=l,o||(o=setTimeout(()=>{o=null,i(s)},r-p)))},()=>s&&i(s)]}const de=(e,t,n=3)=>{let r=0;const s=pr(50,250);return mr(o=>{const i=o.loaded,c=o.lengthComputable?o.total:void 0,d=i-r,l=s(d),u=i<=c;r=i;const p={loaded:i,total:c,progress:c?i/c:void 0,bytes:d,rate:l||void 0,estimated:l&&c&&u?(c-i)/l:void 0,event:o,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(p)},n)},tt=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},nt=e=>(...t)=>a.asap(()=>e(...t)),yr=S.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,S.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(S.origin),S.navigator&&/(msie|trident)/i.test(S.navigator.userAgent)):()=>!0,wr=S.hasStandardBrowserEnv?{write(e,t,n,r,s,o,i){if(typeof document>"u")return;const c=[`${e}=${encodeURIComponent(t)}`];a.isNumber(n)&&c.push(`expires=${new Date(n).toUTCString()}`),a.isString(r)&&c.push(`path=${r}`),a.isString(s)&&c.push(`domain=${s}`),o===!0&&c.push("secure"),a.isString(i)&&c.push(`SameSite=${i}`),document.cookie=c.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function br(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function gr(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Ft(e,t,n){let r=!br(t);return e&&(r||n==!1)?gr(e,t):t}const rt=e=>e instanceof L?{...e}:e;function $(e,t){t=t||{};const n={};function r(l,u,p,w){return a.isPlainObject(l)&&a.isPlainObject(u)?a.merge.call({caseless:w},l,u):a.isPlainObject(u)?a.merge({},u):a.isArray(u)?u.slice():u}function s(l,u,p,w){if(a.isUndefined(u)){if(!a.isUndefined(l))return r(void 0,l,p,w)}else return r(l,u,p,w)}function o(l,u){if(!a.isUndefined(u))return r(void 0,u)}function i(l,u){if(a.isUndefined(u)){if(!a.isUndefined(l))return r(void 0,l)}else return r(void 0,u)}function c(l,u,p){if(p in t)return r(l,u);if(p in e)return r(void 0,l)}const d={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(l,u,p)=>s(rt(l),rt(u),p,!0)};return a.forEach(Object.keys({...e,...t}),function(u){if(u==="__proto__"||u==="constructor"||u==="prototype")return;const p=a.hasOwnProp(d,u)?d[u]:s,w=p(e[u],t[u],u);a.isUndefined(w)&&p!==c||(n[u]=w)}),n}const Dt=e=>{const t=$({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:i,auth:c}=t;if(t.headers=i=L.from(i),t.url=_t(Ft(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&i.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):""))),a.isFormData(n)){if(S.hasStandardBrowserEnv||S.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if(a.isFunction(n.getHeaders)){const d=n.getHeaders(),l=["content-type","content-length"];Object.entries(d).forEach(([u,p])=>{l.includes(u.toLowerCase())&&i.set(u,p)})}}if(S.hasStandardBrowserEnv&&(r&&a.isFunction(r)&&(r=r(t)),r||r!==!1&&yr(t.url))){const d=s&&o&&wr.read(o);d&&i.set(s,d)}return t},Er=typeof XMLHttpRequest<"u",Rr=Er&&function(e){return new Promise(function(n,r){const s=Dt(e);let o=s.data;const i=L.from(s.headers).normalize();let{responseType:c,onUploadProgress:d,onDownloadProgress:l}=s,u,p,w,E,f;function m(){E&&E(),f&&f(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u)}let h=new XMLHttpRequest;h.open(s.method.toUpperCase(),s.url,!0),h.timeout=s.timeout;function b(){if(!h)return;const R=L.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),P={data:!c||c==="text"||c==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:R,config:e,request:h};Lt(function(_){n(_),m()},function(_){r(_),m()},P),h=null}"onloadend"in h?h.onloadend=b:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.indexOf("file:")===0)||setTimeout(b)},h.onabort=function(){h&&(r(new y("Request aborted",y.ECONNABORTED,e,h)),h=null)},h.onerror=function(A){const P=A&&A.message?A.message:"Network Error",M=new y(P,y.ERR_NETWORK,e,h);M.event=A||null,r(M),h=null},h.ontimeout=function(){let A=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const P=s.transitional||ke;s.timeoutErrorMessage&&(A=s.timeoutErrorMessage),r(new y(A,P.clarifyTimeoutError?y.ETIMEDOUT:y.ECONNABORTED,e,h)),h=null},o===void 0&&i.setContentType(null),"setRequestHeader"in h&&a.forEach(i.toJSON(),function(A,P){h.setRequestHeader(P,A)}),a.isUndefined(s.withCredentials)||(h.withCredentials=!!s.withCredentials),c&&c!=="json"&&(h.responseType=s.responseType),l&&([w,f]=de(l,!0),h.addEventListener("progress",w)),d&&h.upload&&([p,E]=de(d),h.upload.addEventListener("progress",p),h.upload.addEventListener("loadend",E)),(s.cancelToken||s.signal)&&(u=R=>{h&&(r(!R||R.type?new ee(null,e,h):R),h.abort(),h=null)},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const C=hr(s.url);if(C&&S.protocols.indexOf(C)===-1){r(new y("Unsupported protocol "+C+":",y.ERR_BAD_REQUEST,e));return}h.send(o||null)})},Sr=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,s;const o=function(l){if(!s){s=!0,c();const u=l instanceof Error?l:this.reason;r.abort(u instanceof y?u:new ee(u instanceof Error?u.message:u))}};let i=t&&setTimeout(()=>{i=null,o(new y(`timeout of ${t}ms exceeded`,y.ETIMEDOUT))},t);const c=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(l=>{l.unsubscribe?l.unsubscribe(o):l.removeEventListener("abort",o)}),e=null)};e.forEach(l=>l.addEventListener("abort",o));const{signal:d}=r;return d.unsubscribe=()=>a.asap(c),d}},Or=Sr,Ar=function*(e,t){let n=e.byteLength;if(!t||n<t){yield e;return}let r=0,s;for(;r<n;)s=r+t,yield e.slice(r,s),r=s},Tr=async function*(e,t){for await(const n of xr(e))yield*Ar(n,t)},xr=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},st=(e,t,n,r)=>{const s=Tr(e,t);let o=0,i,c=d=>{i||(i=!0,r&&r(d))};return new ReadableStream({async pull(d){try{const{done:l,value:u}=await s.next();if(l){c(),d.close();return}let p=u.byteLength;if(n){let w=o+=p;n(w)}d.enqueue(new Uint8Array(u))}catch(l){throw c(l),l}},cancel(d){return c(d),s.return()}},{highWaterMark:2})},ot=64*1024,{isFunction:se}=a,Cr=(({Request:e,Response:t})=>({Request:e,Response:t}))(a.global),{ReadableStream:it,TextEncoder:at}=a.global,ct=(e,...t)=>{try{return!!e(...t)}catch{return!1}},_r=e=>{e=a.merge.call({skipUndefined:!0},Cr,e);const{fetch:t,Request:n,Response:r}=e,s=t?se(t):typeof fetch=="function",o=se(n),i=se(r);if(!s)return!1;const c=s&&se(it),d=s&&(typeof at=="function"?(f=>m=>f.encode(m))(new at):async f=>new Uint8Array(await new n(f).arrayBuffer())),l=o&&c&&ct(()=>{let f=!1;const m=new n(S.origin,{body:new it,method:"POST",get duplex(){return f=!0,"half"}}).headers.has("Content-Type");return f&&!m}),u=i&&c&&ct(()=>a.isReadableStream(new r("").body)),p={stream:u&&(f=>f.body)};s&&["text","arrayBuffer","blob","formData","stream"].forEach(f=>{!p[f]&&(p[f]=(m,h)=>{let b=m&&m[f];if(b)return b.call(m);throw new y(`Response type '${f}' is not supported`,y.ERR_NOT_SUPPORT,h)})});const w=async f=>{if(f==null)return 0;if(a.isBlob(f))return f.size;if(a.isSpecCompliantForm(f))return(await new n(S.origin,{method:"POST",body:f}).arrayBuffer()).byteLength;if(a.isArrayBufferView(f)||a.isArrayBuffer(f))return f.byteLength;if(a.isURLSearchParams(f)&&(f=f+""),a.isString(f))return(await d(f)).byteLength},E=async(f,m)=>{const h=a.toFiniteNumber(f.getContentLength());return h??w(m)};return async f=>{let{url:m,method:h,data:b,signal:C,cancelToken:R,timeout:A,onDownloadProgress:P,onUploadProgress:M,responseType:_,headers:Re,withCredentials:te="same-origin",fetchOptions:ve}=Dt(f),$e=t||fetch;_=_?(_+"").toLowerCase():"text";let ne=Or([C,R&&R.toAbortSignal()],A),K=null;const H=ne&&ne.unsubscribe&&(()=>{ne.unsubscribe()});let ze;try{if(M&&l&&h!=="get"&&h!=="head"&&(ze=await E(Re,b))!==0){let k=new n(m,{method:"POST",body:b,duplex:"half"}),z;if(a.isFormData(b)&&(z=k.headers.get("content-type"))&&Re.setContentType(z),k.body){const[Se,re]=tt(ze,de(nt(M)));b=st(k.body,ot,Se,re)}}a.isString(te)||(te=te?"include":"omit");const T=o&&"credentials"in n.prototype,We={...ve,signal:ne,method:h.toUpperCase(),headers:Re.normalize().toJSON(),body:b,duplex:"half",credentials:T?te:void 0};K=o&&new n(m,We);let B=await(o?$e(K,ve):$e(m,We));const Je=u&&(_==="stream"||_==="response");if(u&&(P||Je&&H)){const k={};["status","statusText","headers"].forEach(Ke=>{k[Ke]=B[Ke]});const z=a.toFiniteNumber(B.headers.get("content-length")),[Se,re]=P&&tt(z,de(nt(P),!0))||[];B=new r(st(B.body,ot,Se,()=>{re&&re(),H&&H()}),k)}_=_||"text";let jt=await p[a.findKey(p,_)||"text"](B,f);return!Je&&H&&H(),await new Promise((k,z)=>{Lt(k,z,{data:jt,headers:L.from(B.headers),status:B.status,statusText:B.statusText,config:f,request:K})})}catch(T){throw H&&H(),T&&T.name==="TypeError"&&/Load failed|fetch/i.test(T.message)?Object.assign(new y("Network Error",y.ERR_NETWORK,f,K,T&&T.response),{cause:T.cause||T}):y.from(T,T&&T.code,f,K,T&&T.response)}}},Nr=new Map,Ut=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:s}=t,o=[r,s,n];let i=o.length,c=i,d,l,u=Nr;for(;c--;)d=o[c],l=u.get(d),l===void 0&&u.set(d,l=c?new Map:_r(t)),u=l;return l};Ut();const Me={http:vn,xhr:Rr,fetch:{get:Ut}};a.forEach(Me,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const ut=e=>`- ${e}`,Pr=e=>a.isFunction(e)||e===null||e===!1;function Lr(e,t){e=a.isArray(e)?e:[e];const{length:n}=e;let r,s;const o={};for(let i=0;i<n;i++){r=e[i];let c;if(s=r,!Pr(r)&&(s=Me[(c=String(r)).toLowerCase()],s===void 0))throw new y(`Unknown adapter '${c}'`);if(s&&(a.isFunction(s)||(s=s.get(t))))break;o[c||"#"+i]=s}if(!s){const i=Object.entries(o).map(([d,l])=>`adapter ${d} `+(l===!1?"is not supported by the environment":"is not available in the build"));let c=n?i.length>1?`since :
4
+ `+i.map(ut).join(`
5
+ `):" "+ut(i[0]):"as no adapter specified";throw new y("There is no suitable adapter to dispatch the request "+c,"ERR_NOT_SUPPORT")}return s}const Bt={getAdapter:Lr,adapters:Me};function Ce(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new ee(null,e)}function lt(e){return Ce(e),e.headers=L.from(e.headers),e.data=xe.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Bt.getAdapter(e.adapter||je.adapter,e)(e).then(function(r){return Ce(e),r.data=xe.call(e,e.transformResponse,r),r.headers=L.from(r.headers),r},function(r){return Pt(r)||(Ce(e),r&&r.response&&(r.response.data=xe.call(e,e.transformResponse,r.response),r.response.headers=L.from(r.response.headers))),Promise.reject(r)})}const kt="1.13.5",Ee={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Ee[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const ft={};Ee.transitional=function(t,n,r){function s(o,i){return"[Axios v"+kt+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(t===!1)throw new y(s(i," has been removed"+(n?" in "+n:"")),y.ERR_DEPRECATED);return n&&!ft[i]&&(ft[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,c):!0}};Ee.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Fr(e,t,n){if(typeof e!="object")throw new y("options must be an object",y.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const o=r[s],i=t[o];if(i){const c=e[o],d=c===void 0||i(c,o,e);if(d!==!0)throw new y("option "+o+" must be "+d,y.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new y("Unknown option "+o,y.ERR_BAD_OPTION)}}const ce={assertOptions:Fr,validators:Ee},N=ce.validators;class he{constructor(t){this.defaults=t||{},this.interceptors={request:new Ye,response:new Ye}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
6
+ `+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=$(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&ce.assertOptions(r,{silentJSONParsing:N.transitional(N.boolean),forcedJSONParsing:N.transitional(N.boolean),clarifyTimeoutError:N.transitional(N.boolean),legacyInterceptorReqResOrdering:N.transitional(N.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:ce.assertOptions(s,{encode:N.function,serialize:N.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ce.assertOptions(n,{baseUrl:N.spelling("baseURL"),withXsrfToken:N.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],f=>{delete o[f]}),n.headers=L.concat(i,o);const c=[];let d=!0;this.interceptors.request.forEach(function(m){if(typeof m.runWhen=="function"&&m.runWhen(n)===!1)return;d=d&&m.synchronous;const h=n.transitional||ke;h&&h.legacyInterceptorReqResOrdering?c.unshift(m.fulfilled,m.rejected):c.push(m.fulfilled,m.rejected)});const l=[];this.interceptors.response.forEach(function(m){l.push(m.fulfilled,m.rejected)});let u,p=0,w;if(!d){const f=[lt.bind(this),void 0];for(f.unshift(...c),f.push(...l),w=f.length,u=Promise.resolve(n);p<w;)u=u.then(f[p++],f[p++]);return u}w=c.length;let E=n;for(;p<w;){const f=c[p++],m=c[p++];try{E=f(E)}catch(h){m.call(this,h);break}}try{u=lt.call(this,E)}catch(f){return Promise.reject(f)}for(p=0,w=l.length;p<w;)u=u.then(l[p++],l[p++]);return u}getUri(t){t=$(this.defaults,t);const n=Ft(t.baseURL,t.url,t.allowAbsoluteUrls);return _t(n,t.params,t.paramsSerializer)}}a.forEach(["delete","get","head","options"],function(t){he.prototype[t]=function(n,r){return this.request($(r||{},{method:t,url:n,data:(r||{}).data}))}});a.forEach(["post","put","patch"],function(t){function n(r){return function(o,i,c){return this.request($(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}he.prototype[t]=n(),he.prototype[t+"Form"]=n(!0)});const ue=he;class He{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(s=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},t(function(o,i,c){r.reason||(r.reason=new ee(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new He(function(s){t=s}),cancel:t}}}const Dr=He;function Ur(e){return function(n){return e.apply(null,n)}}function Br(e){return a.isObject(e)&&e.isAxiosError===!0}const Le={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Le).forEach(([e,t])=>{Le[t]=e});const kr=Le;function qt(e){const t=new ue(e),n=bt(ue.prototype.request,t);return a.extend(n,ue.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return qt($(e,s))},n}const g=qt(je);g.Axios=ue;g.CanceledError=ee;g.CancelToken=Dr;g.isCancel=Pt;g.VERSION=kt;g.toFormData=be;g.AxiosError=y;g.Cancel=g.CanceledError;g.all=function(t){return Promise.all(t)};g.spread=Ur;g.isAxiosError=Br;g.mergeConfig=$;g.AxiosHeaders=L;g.formToJSON=e=>Nt(a.isHTMLForm(e)?new FormData(e):e);g.getAdapter=Bt.getAdapter;g.HttpStatusCode=kr;g.default=g;const Ve=g;Ve.defaults.headers.common["X-Requested-With"]="XMLHttpRequest";let pe;const Fe=new Set;function Kr(e){return Fe.add(e),()=>Fe.delete(e)}let D;function Xr(e){D=e}function Gr(e){pe!==e&&It.clearCache(),pe=e}Ve.interceptors.request.use(e=>(pe?e.headers.set("Authorization",`Bearer ${pe}`):e.headers.delete("Authorization"),e));class qr{constructor(){this.responses=new Map,this.pending=new Map,this.generation=0}clearCache(){this.generation++,this.responses.clear(),this.pending.clear()}async subscribe(t){var c,d;if(!t.url)throw new Error("ApiService: RequestConfig: 'url' is empty!");const n={...t,method:(t.method||"GET").toUpperCase()};(c=n.url)!=null&&c.startsWith("/")&&(n.url="."+n.url),n.timeout??(n.timeout=3e4);const r=n.method==="GET"||n.method==="HEAD";(!r||n.forceRequest)&&this.clearCache();const s=r&&!n.forceRequest&&!n.signal,o=this.generation,i=s?JSON.stringify([n.method,n.baseURL,n.url,n.params,n.data,n.headers,n.responseType,n.withCredentials,n.timeout]):"";try{if(s){for(const[w,E]of this.responses)E.expiresAt<=Date.now()&&this.responses.delete(w);const u=this.responses.get(i);if(u)return Ae.cloneDeep(u.data);const p=this.pending.get(i);if(p)return Ae.cloneDeep(await p)}const l=this.sendRequest(n);s&&this.pending.set(i,l);try{const u=await l;return r||Fe.forEach(p=>p()),s&&o===this.generation&&this.responses.set(i,{expiresAt:Date.now()+2e3,data:u}),Ae.cloneDeep(u)}finally{this.pending.get(i)===l&&this.pending.delete(i),(!r||n.forceRequest)&&this.clearCache()}}catch(l){const u=(d=l==null?void 0:l.response)==null?void 0:d.data,p=u!=null&&u.data&&u.status!==200?new Error(String(u.data)):l instanceof Error?l:new Error(String(l));throw n.errorAlert&&nn(p.message),p}}async sendRequest(t){D==null||D.requestStarted();try{const{data:n}=await Ve(t);return D==null||D.requestSucceeded(),n==null?void 0:n.data}catch(n){throw D==null||D.requestFailed(n),n}}}const It=new qr;function Ir(e){const t=oe(),n=Kt(),r=oe(!1),s=oe(!1);let o=0;return{state:t,error:n,isLoading:r,isReady:s,execute:async(c={})=>{const d=++o;r.value=!0,s.value=!1,n.value=void 0;try{const l=await It.subscribe({...e,...c});return d===o&&(t.value=l,s.value=!0),l}catch(l){throw d===o&&(n.value=l),l}finally{d===o&&(r.value=!1)}}}}const Qr=(e={})=>()=>{const{isLoading:t,state:n,isReady:r,execute:s}=Ir(e);return{isLoading:t,state:n,isReady:r,execute:async o=>{const i=await s(o??{});return oe(i)}}};export{Wr as P,Jr as a,nn as b,Vr as c,It as d,$r as e,Xr as f,wt as g,Xt as i,yt as m,vr as n,Kr as o,zr as r,Gr as s,Qr as u};
7
+ //# sourceMappingURL=useDefineApi-b726db1e.js.map