@powerhousedao/connect 6.0.0-dev.44 → 6.0.0-dev.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AddDriveModal-BfbPGU02.js → AddDriveModal-CLtIH36m.js} +1 -1
- package/dist/assets/{ClearStorageModal-Coerg9zi.js → ClearStorageModal-DVu2jGOi.js} +1 -1
- package/dist/assets/{CookiesPolicyModal-BeKWZ4pV.js → CookiesPolicyModal-7kRg-DxQ.js} +1 -1
- package/dist/assets/{DebugSettingsModal-hDpzKe0t.js → DebugSettingsModal-8jhXYQyg.js} +1 -1
- package/dist/assets/{DeleteDriveModal-TGKxgbIJ.js → DeleteDriveModal-DOfGKE2m.js} +1 -1
- package/dist/assets/{DeleteItemModal-K4sAhdtC.js → DeleteItemModal-B6YOYMpX.js} +1 -1
- package/dist/assets/{DisclaimerModal-Cw0GAVyN.js → DisclaimerModal-DpPQXBr8.js} +1 -1
- package/dist/assets/{ExportDocumentWithErrorsModal-CwguhKnx.js → ExportDocumentWithErrorsModal-DWSaMqCZ.js} +1 -1
- package/dist/assets/{SettingsModal-CGrGAdPi.js → SettingsModal-Y_gtPnBy.js} +1 -1
- package/dist/assets/{UpgradeDriveModal-DRhYtiiv.js → UpgradeDriveModal-D-b6vgNu.js} +1 -1
- package/dist/assets/{index-2R4Z5JTm.js → index-Bf7GGgE5.js} +3 -3
- package/dist/index.html +1 -1
- package/lib/package.copy.json +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.copy.json +1 -1
- package/package.json +10 -10
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sentry_react-CVx4Qq7f.js","assets/react-D_vzfE_e.js","assets/sentry_browser-TIBDlywD.js","assets/AddDriveModal-
|
|
2
|
-
import{o as we,f as Lo,s as ae,g as xo,n as li,h as ci,j as N,i as ui}from"./document_model_editor-B_fRFi56.js";import{r as di}from"./react-dom/client-SoBEzBdt.js";import{r as g,R as fi,a as hi}from"./sentry_react-CVx4Qq7f.js";import{_ as Do,l as Ue,$ as Kr,R as pi,X as gi,W as mi,a0 as jt,j as wo,h as Po}from"./document_model-C-Ne8Zoy.js";import{_ as de,G as Ao}from"./drive_explorer-DxDLfh8c.js";import{t as Ei,c as To,H as Io,A as vi,W as _i,d as yi,e as Ci,f as Si,g as Ni,h as Ri,i as bi,j as Oi,k as Li,S as xi,l as Di}from"./design_system_connect-SoJPzAdw.js";import{y as ko,z as zr,W as wi,R as Pi,A as Ai,B as Ti,C as Ii,D as ki,K as Hi,P as Mi,E as Wt,x as Me,F as ji,l as Fi,H as Bi,J as Vi,g as Ar,L as Ui,M as Ho,N as Mo,O as $i,Q as Ki,T as zi,U as Wi,V as Yi,i as Gi,X as Ji,Y as Xi,Z as qi,_ as Zi,$ as Qi,a0 as es,a1 as ts,a2 as rs,a3 as ns,a4 as os,a5 as as,a6 as is,a7 as ss,a8 as ls,a9 as cs,aa as us,ab as ds,ac as fs,ad as hs,ae as ps,af as gs,ag as ms,ah as Es,ai as vs,aj as _s,ak as ys,al as Cs,s as Yt,am as Ss,an as gn,ao as Ns,ap as jo,d as Fo,aq as Rs,ar as bs,as as Os,at as Bo,au as Ls,av as xs,aw as Ds,ax as ws}from"./reactor_browser-CI14TYlI.js";import{I as mn,l as Ps}from"./design_system-Cvyob7tr.js";import{g as As,r as Ts}from"./graphql_request-BHyPFzlZ.js";import{g as Is,r as ks}from"./react-D_vzfE_e.js";import{n as Ft}from"./document_drive-B4eFu84b.js";import{an as Hs}from"./sentry_browser-TIBDlywD.js";import"./graphql-BXSeDpaV.js";import"./react/jsx-runtime-DldvXD6N.js";import"./zod-Cc38s6JG.js";import"./tailwind_merge-CXl88Wxt.js";import"./react-dom-Cz_KAjfm.js";import"./design_system_ui-B4c9YVjt.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const i of a.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function r(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(o){if(o.ep)return;o.ep=!0;const a=r(o);fetch(o.href,a)}})();var Ms=di();const Q=Lo([ci(),xo(["true","false"])]).transform(t=>typeof t=="boolean"?t:t==="true"),Gt=Lo([li(),ae()]).transform(t=>typeof t=="number"?t:parseInt(t,10)),js=we({PH_CONFIG_PATH:ae().optional(),PH_PACKAGES:ae().optional(),PH_LOCAL_PACKAGE:ae().optional(),PH_DISABLE_LOCAL_PACKAGE:Q.default(!1),PH_WATCH_TIMEOUT:Gt.default(300),PH_SENTRY_AUTH_TOKEN:ae().optional(),PH_SENTRY_ORG:ae().optional(),PH_SENTRY_PROJECT:ae().optional()}),Fs=we({PH_CONNECT_VERSION:ae().default("unknown"),PH_CONNECT_LOG_LEVEL:xo(["debug","info","warn","error"]).default("info"),PH_CONNECT_REQUIRES_HARD_REFRESH:Q.default(!0),PH_CONNECT_WARN_OUTDATED_APP:Q.default(!1),PH_CONNECT_STUDIO_MODE:Q.default(!1),PH_CONNECT_BASE_PATH:ae().optional(),PH_CONNECT_DEFAULT_DRIVES_URL:ae().optional(),PH_CONNECT_DRIVES_PRESERVE_STRATEGY:ae().optional(),PH_CONNECT_VERSION_CHECK_INTERVAL:Gt.default(3600*1e3),PH_CONNECT_CLI_VERSION:ae().optional(),PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE:Gt.default(50)}),Bs=we({PH_CONNECT_DISABLE_ADD_DRIVE:Q.default(!1),PH_CONNECT_SEARCH_BAR_ENABLED:Q.default(!1),PH_CONNECT_INSPECTOR_ENABLED:Q.default(!1),PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS:Q.default(!0),PH_CONNECT_ENABLED_EDITORS:ae().optional(),PH_CONNECT_DISABLED_EDITORS:ae().default("powerhouse/document-drive"),PH_CONNECT_GA_TRACKING_ID:ae().optional(),PH_CONNECT_EXTERNAL_PACKAGES_DISABLED:Q.default(!1)}),Vs=we({PH_CONNECT_PUBLIC_DRIVES_ENABLED:Q.default(!0),PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES:Q.default(!1),PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES:Q.default(!1),PH_CONNECT_CLOUD_DRIVES_ENABLED:Q.default(!0),PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES:Q.default(!1),PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES:Q.default(!1),PH_CONNECT_LOCAL_DRIVES_ENABLED:Q.default(!0),PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES:Q.default(!1),PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES:Q.default(!1)}),Us=we({PH_CONNECT_ANALYTICS_ENABLED:Q.default(!0),PH_CONNECT_ANALYTICS_DATABASE_NAME:ae().optional(),PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED:Q.default(!0),PH_CONNECT_DIFF_ANALYTICS_ENABLED:Q.default(!1),PH_CONNECT_DRIVE_ANALYTICS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED:Q.default(!0)}),$s=we({PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0)}),Ks=we({PH_CONNECT_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED:Q.default(!0)}),zs=Ks.merge(Us).merge($s),Ws=we({PH_CONNECT_SENTRY_RELEASE:ae().optional(),PH_CONNECT_SENTRY_DSN:ae().optional(),PH_CONNECT_SENTRY_ENV:ae().default("dev"),PH_CONNECT_SENTRY_TRACING_ENABLED:Q.default(!1)}),Ys=we({PH_CONNECT_RENOWN_URL:ae().default("https://www.renown.id"),PH_CONNECT_RENOWN_NETWORK_ID:ae().default("eip155"),PH_CONNECT_RENOWN_CHAIN_ID:Gt.default(1)}),Ut=Fs.merge(Bs).merge(Vs).merge(zs).merge(Ws).merge(Ys);js.merge(Ut);function Gs(t,e,r){const{processEnv:n={},optionsEnv:o={},fileEnv:a={}}=t,i={};for(const s of e){const l=[{name:"process.env",value:n[s]},{name:"options",value:o[s]},{name:"fileEnv",value:a[s]}];for(const c of l){const d=c.value;if(!(d===void 0||d===""))try{const u=r.shape[s];if(u){u.parse(d),i[s]=d;break}console.warn(`Unknown environment variable: '${s}'`),i[s]=d;break}catch{const u=d===null?"null":typeof d=="object"?JSON.stringify(d):d;console.warn(`Invalid value for ${s} from ${c.name}: ${u}. Trying next source.`)}}}return i}function Js(t={}){const e=new Set(Object.keys(Ut.shape)),r=Gs(t,e,Ut);return Ut.parse(r)}function Xs(t){let e=t;return e.startsWith(".")&&(e=e.slice(1)),e.startsWith("/")||(e=`/${e}`),e.endsWith("/")||(e=`${e}/`),e}const qs={BASE_URL:"/",DEV:!1,MODE:"production",PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED:"true",PH_CONNECT_ANALYTICS_ENABLED:"true",PH_CONNECT_CLOUD_DRIVES_ENABLED:"true",PH_CONNECT_DIFF_ANALYTICS_ENABLED:"false",PH_CONNECT_DISABLED_EDITORS:"powerhouse/document-drive",PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES:"false",PH_CONNECT_DISABLE_ADD_DRIVE:"false",PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES:"false",PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES:"false",PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES:"false",PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES:"false",PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES:"false",PH_CONNECT_DRIVE_ANALYTICS_ENABLED:"true",PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED:"true",PH_CONNECT_EXTERNAL_PACKAGES_DISABLED:"false",PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED:"true",PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED:"true",PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE:"50",PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS:"true",PH_CONNECT_INSPECTOR_ENABLED:"false",PH_CONNECT_LOCAL_DRIVES_ENABLED:"true",PH_CONNECT_LOG_LEVEL:"info",PH_CONNECT_PROCESSORS_ENABLED:"true",PH_CONNECT_PUBLIC_DRIVES_ENABLED:"true",PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED:"true",PH_CONNECT_RENOWN_CHAIN_ID:"1",PH_CONNECT_RENOWN_NETWORK_ID:"eip155",PH_CONNECT_RENOWN_URL:"https://www.renown.id",PH_CONNECT_REQUIRES_HARD_REFRESH:"true",PH_CONNECT_SEARCH_BAR_ENABLED:"false",PH_CONNECT_SENTRY_ENV:"prod",PH_CONNECT_SENTRY_TRACING_ENABLED:"false",PH_CONNECT_STUDIO_MODE:"false",PH_CONNECT_VERSION:"6.0.0-dev.43",PH_CONNECT_VERSION_CHECK_INTERVAL:"3600000",PH_CONNECT_WARN_OUTDATED_APP:"false",PROD:!0,SSR:!1},x=Js({processEnv:qs});function Zs(t){return t.endsWith("/")?t:t+"/"}function Qs(){const t=x.PH_CONNECT_BASE_PATH||"/",e=Zs(t);return{basePath:t,routerBasename:e,allowList:void 0,allowedDocumentTypes:[],isDragAndDropEnabled:!0,isEditorDebugModeEnabled:!1,isEditorReadModeEnabled:!1,isExternalControlsEnabled:!1,version:x.PH_CONNECT_VERSION,logLevel:x.PH_CONNECT_LOG_LEVEL,requiresHardRefresh:x.PH_CONNECT_REQUIRES_HARD_REFRESH,warnOutdatedApp:x.PH_CONNECT_WARN_OUTDATED_APP,studioMode:x.PH_CONNECT_STUDIO_MODE,versionCheckInterval:x.PH_CONNECT_VERSION_CHECK_INTERVAL,cliVersion:x.PH_CONNECT_CLI_VERSION,fileUploadOperationsChunkSize:x.PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE,gaTrackingId:x.PH_CONNECT_GA_TRACKING_ID,defaultDrivesUrl:x.PH_CONNECT_DEFAULT_DRIVES_URL,drivesPreserveStrategy:x.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,enabledEditors:x.PH_CONNECT_ENABLED_EDITORS?.split(","),disabledEditors:x.PH_CONNECT_DISABLED_EDITORS.split(","),isExternalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED,isAnalyticsEnabled:x.PH_CONNECT_ANALYTICS_ENABLED,isAnalyticsExternalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&x.PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED,analyticsDatabaseName:x.PH_CONNECT_ANALYTICS_DATABASE_NAME,isRelationalProcessorsEnabled:x.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,isExternalRelationalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&x.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED,renownUrl:x.PH_CONNECT_RENOWN_URL,renownNetworkId:x.PH_CONNECT_RENOWN_NETWORK_ID,renownChainId:x.PH_CONNECT_RENOWN_CHAIN_ID,sentryRelease:x.PH_CONNECT_SENTRY_RELEASE,sentryDsn:x.PH_CONNECT_SENTRY_DSN,sentryEnv:x.PH_CONNECT_SENTRY_ENV,isDiffAnalyticsEnabled:x.PH_CONNECT_DIFF_ANALYTICS_ENABLED,isDriveAnalyticsEnabled:x.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,isPublicDrivesEnabled:x.PH_CONNECT_PUBLIC_DRIVES_ENABLED,isCloudDrivesEnabled:x.PH_CONNECT_CLOUD_DRIVES_ENABLED,isLocalDrivesEnabled:x.PH_CONNECT_LOCAL_DRIVES_ENABLED,isSentryTracingEnabled:x.PH_CONNECT_SENTRY_TRACING_ENABLED,isDocumentModelSelectionSettingsEnabled:!x.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,isAddDriveEnabled:!x.PH_CONNECT_DISABLE_ADD_DRIVE,isAddPublicDrivesEnabled:!x.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,isDeletePublicDrivesEnabled:!x.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES,isAddCloudDrivesEnabled:!x.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,isDeleteCloudDrivesEnabled:!x.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES,isAddLocalDrivesEnabled:!x.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,isDeleteLocalDrivesEnabled:!x.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES,isAnalyticsDatabaseWorkerEnabled:!x.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,isExternalPackagesEnabled:!x.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED}}const ut=Qs(),el={isExternalControlsEnabled:ut.isExternalControlsEnabled},tl={allowedDocumentTypes:ut.allowedDocumentTypes,isDragAndDropEnabled:ut.isDragAndDropEnabled};Do(x.PH_CONNECT_LOG_LEVEL);Ue.debug("Setting log level to @level.",x.PH_CONNECT_LOG_LEVEL);const Vo=Xs(x.PH_CONNECT_BASE_PATH||"/"),rl=x.PH_CONNECT_ANALYTICS_DATABASE_NAME||`${Vo.replace(/\//g,"")}:analytics`,ce={appVersion:x.PH_CONNECT_VERSION,studioMode:x.PH_CONNECT_STUDIO_MODE,warnOutdatedApp:x.PH_CONNECT_WARN_OUTDATED_APP,appVersionCheckInterval:x.PH_CONNECT_VERSION_CHECK_INTERVAL,routerBasename:Vo,externalPackagesEnabled:!x.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED,processors:{enabled:x.PH_CONNECT_PROCESSORS_ENABLED,externalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},analytics:{enabled:x.PH_CONNECT_ANALYTICS_ENABLED,databaseName:rl,useWorker:!x.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,driveAnalyticsEnabled:x.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,diffProcessorEnabled:x.PH_CONNECT_DIFF_ANALYTICS_ENABLED,externalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},relational:{enabled:x.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,externalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED},renown:{url:x.PH_CONNECT_RENOWN_URL,networkId:x.PH_CONNECT_RENOWN_NETWORK_ID,chainId:x.PH_CONNECT_RENOWN_CHAIN_ID},sentry:{release:x.PH_CONNECT_SENTRY_RELEASE,dsn:x.PH_CONNECT_SENTRY_DSN,env:x.PH_CONNECT_SENTRY_ENV,tracing:x.PH_CONNECT_SENTRY_TRACING_ENABLED},content:{showSearchBar:x.PH_CONNECT_SEARCH_BAR_ENABLED,showDocumentModelSelectionSetting:!x.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,inspectorEnabled:x.PH_CONNECT_INSPECTOR_ENABLED},drives:{addDriveEnabled:!x.PH_CONNECT_DISABLE_ADD_DRIVE,preserveStrategy:x.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,sections:{LOCAL:{enabled:x.PH_CONNECT_LOCAL_DRIVES_ENABLED,allowAdd:!x.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,allowDelete:!x.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES},CLOUD:{enabled:x.PH_CONNECT_CLOUD_DRIVES_ENABLED,allowAdd:!x.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,allowDelete:!x.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES},PUBLIC:{enabled:x.PH_CONNECT_PUBLIC_DRIVES_ENABLED,allowAdd:!x.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,allowDelete:!x.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES}}},gaTrackingId:x.PH_CONNECT_GA_TRACKING_ID,phCliVersion:x.PH_CONNECT_CLI_VERSION},nl=ce.routerBasename,Uo=`${nl}:acceptedCookies`,Tr=new Set;let $t=ol();function ol(){try{const t=localStorage.getItem(Uo);return t?JSON.parse(t):{analytics:!1,marketing:!1,functional:!1}}catch{return{analytics:!1,marketing:!1,functional:!1}}}function En(){return $t}function al(t){$t=t($t),localStorage.setItem(Uo,JSON.stringify($t)),Tr.forEach(e=>e())}function il(t){return Tr.add(t),()=>Tr.delete(t)}const Wr=()=>[g.useSyncExternalStore(il,En,En),al];async function Yr(){try{return(await de(()=>import("./hmr-LMNkvzP7.js"),[])).hmr}catch{return}}async function rp(t){const e=await Yr();if(!e)throw new Error("HMR not available.");return new Promise(r=>{function n(o){t===o.name&&(r(),e?.off("studio:external-package-added",n))}e.on("studio:external-package-added",n),e.send("studio:add-external-package",{name:t})})}async function np(t){const e=await Yr();if(!e)throw new Error("HMR not available.");return new Promise(r=>{function n(o){t===o.name&&(r(),e?.off("studio:external-package-removed",n))}e.on("studio:external-package-removed",n),e.send("studio:remove-external-package",{name:t})})}function sl(){const t=g.useRef(void 0);g.useEffect(()=>{const e=async n=>{const o=window.ph?.vetraPackages||[],l=(await de(()=>import(`${n.url}?t=${n.timestamp}`),[])).default.map(ko),d=[...o.filter(u=>u.id==="powerhouse/common"),...l];zr(d)};async function r(){const n=await Yr();t.current=n,n?.on("studio:external-packages-updated",e)}return r().catch(n=>Ue.error("@error",n)),()=>{t.current?.off("studio:external-packages-updated",e)}},[])}const ll="connect";function dt(t,e){const{type:r="default",containerId:n=ll,...o}=e||{};return Ei(t,{type:r,containerId:n,...o})}const U=t=>typeof t=="string",Et=()=>{let t,e;const r=new Promise((n,o)=>{t=n,e=o});return r.resolve=t,r.reject=e,r},vn=t=>t==null?"":""+t,cl=(t,e,r)=>{t.forEach(n=>{e[n]&&(r[n]=e[n])})},ul=/###/g,_n=t=>t&&t.indexOf("###")>-1?t.replace(ul,"."):t,yn=t=>!t||U(t),Nt=(t,e,r)=>{const n=U(e)?e.split("."):e;let o=0;for(;o<n.length-1;){if(yn(t))return{};const a=_n(n[o]);!t[a]&&r&&(t[a]=new r),Object.prototype.hasOwnProperty.call(t,a)?t=t[a]:t={},++o}return yn(t)?{}:{obj:t,k:_n(n[o])}},Cn=(t,e,r)=>{const{obj:n,k:o}=Nt(t,e,Object);if(n!==void 0||e.length===1){n[o]=r;return}let a=e[e.length-1],i=e.slice(0,e.length-1),s=Nt(t,i,Object);for(;s.obj===void 0&&i.length;)a=`${i[i.length-1]}.${a}`,i=i.slice(0,i.length-1),s=Nt(t,i,Object),s?.obj&&typeof s.obj[`${s.k}.${a}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=r},dl=(t,e,r,n)=>{const{obj:o,k:a}=Nt(t,e,Object);o[a]=o[a]||[],o[a].push(r)},Jt=(t,e)=>{const{obj:r,k:n}=Nt(t,e);if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},fl=(t,e,r)=>{const n=Jt(t,r);return n!==void 0?n:Jt(e,r)},$o=(t,e,r)=>{for(const n in e)n!=="__proto__"&&n!=="constructor"&&(n in t?U(t[n])||t[n]instanceof String||U(e[n])||e[n]instanceof String?r&&(t[n]=e[n]):$o(t[n],e[n],r):t[n]=e[n]);return t},ot=t=>t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var hl={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const pl=t=>U(t)?t.replace(/[&<>"'\/]/g,e=>hl[e]):t;class gl{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const r=this.regExpMap.get(e);if(r!==void 0)return r;const n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}const ml=[" ",",","?","!",";"],El=new gl(20),vl=(t,e,r)=>{e=e||"",r=r||"";const n=ml.filter(i=>e.indexOf(i)<0&&r.indexOf(i)<0);if(n.length===0)return!0;const o=El.getRegExp(`(${n.map(i=>i==="?"?"\\?":i).join("|")})`);let a=!o.test(t);if(!a){const i=t.indexOf(r);i>0&&!o.test(t.substring(0,i))&&(a=!0)}return a},Ir=(t,e,r=".")=>{if(!t)return;if(t[e])return Object.prototype.hasOwnProperty.call(t,e)?t[e]:void 0;const n=e.split(r);let o=t;for(let a=0;a<n.length;){if(!o||typeof o!="object")return;let i,s="";for(let l=a;l<n.length;++l)if(l!==a&&(s+=r),s+=n[l],i=o[s],i!==void 0){if(["string","number","boolean"].indexOf(typeof i)>-1&&l<n.length-1)continue;a+=l-a+1;break}o=i}return o},Rt=t=>t?.replace("_","-"),_l={type:"logger",log(t){this.output("log",t)},warn(t){this.output("warn",t)},error(t){this.output("error",t)},output(t,e){console?.[t]?.apply?.(console,e)}};class Xt{constructor(e,r={}){this.init(e,r)}init(e,r={}){this.prefix=r.prefix||"i18next:",this.logger=e||_l,this.options=r,this.debug=r.debug}log(...e){return this.forward(e,"log","",!0)}warn(...e){return this.forward(e,"warn","",!0)}error(...e){return this.forward(e,"error","")}deprecate(...e){return this.forward(e,"warn","WARNING DEPRECATED: ",!0)}forward(e,r,n,o){return o&&!this.debug?null:(U(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[r](e))}create(e){return new Xt(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return e=e||this.options,e.prefix=e.prefix||this.prefix,new Xt(this.logger,e)}}var be=new Xt;class nr{constructor(){this.observers={}}on(e,r){return e.split(" ").forEach(n=>{this.observers[n]||(this.observers[n]=new Map);const o=this.observers[n].get(r)||0;this.observers[n].set(r,o+1)}),this}off(e,r){if(this.observers[e]){if(!r){delete this.observers[e];return}this.observers[e].delete(r)}}emit(e,...r){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([o,a])=>{for(let i=0;i<a;i++)o(...r)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(([o,a])=>{for(let i=0;i<a;i++)o.apply(o,[e,...r])})}}class Sn extends nr{constructor(e,r={ns:["translation"],defaultNS:"translation"}){super(),this.data=e||{},this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const r=this.options.ns.indexOf(e);r>-1&&this.options.ns.splice(r,1)}getResource(e,r,n,o={}){const a=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,i=o.ignoreJSONStructure!==void 0?o.ignoreJSONStructure:this.options.ignoreJSONStructure;let s;e.indexOf(".")>-1?s=e.split("."):(s=[e,r],n&&(Array.isArray(n)?s.push(...n):U(n)&&a?s.push(...n.split(a)):s.push(n)));const l=Jt(this.data,s);return!l&&!r&&!n&&e.indexOf(".")>-1&&(e=s[0],r=s[1],n=s.slice(2).join(".")),l||!i||!U(n)?l:Ir(this.data?.[e]?.[r],n,a)}addResource(e,r,n,o,a={silent:!1}){const i=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let s=[e,r];n&&(s=s.concat(i?n.split(i):n)),e.indexOf(".")>-1&&(s=e.split("."),o=r,r=s[1]),this.addNamespaces(r),Cn(this.data,s,o),a.silent||this.emit("added",e,r,n,o)}addResources(e,r,n,o={silent:!1}){for(const a in n)(U(n[a])||Array.isArray(n[a]))&&this.addResource(e,r,a,n[a],{silent:!0});o.silent||this.emit("added",e,r,n)}addResourceBundle(e,r,n,o,a,i={silent:!1,skipCopy:!1}){let s=[e,r];e.indexOf(".")>-1&&(s=e.split("."),o=n,n=r,r=s[1]),this.addNamespaces(r);let l=Jt(this.data,s)||{};i.skipCopy||(n=JSON.parse(JSON.stringify(n))),o?$o(l,n,a):l={...l,...n},Cn(this.data,s,l),i.silent||this.emit("added",e,r,n)}removeResourceBundle(e,r){this.hasResourceBundle(e,r)&&delete this.data[e][r],this.removeNamespaces(r),this.emit("removed",e,r)}hasResourceBundle(e,r){return this.getResource(e,r)!==void 0}getResourceBundle(e,r){return r||(r=this.options.defaultNS),this.getResource(e,r)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const r=this.getDataByLanguage(e);return!!(r&&Object.keys(r)||[]).find(o=>r[o]&&Object.keys(r[o]).length>0)}toJSON(){return this.data}}var Ko={processors:{},addPostProcessor(t){this.processors[t.name]=t},handle(t,e,r,n,o){return t.forEach(a=>{e=this.processors[a]?.process(e,r,n,o)??e}),e}};const zo=Symbol("i18next/PATH_KEY");function yl(){const t=[],e=Object.create(null);let r;return e.get=(n,o)=>(r?.revoke?.(),o===zo?t:(t.push(o),r=Proxy.revocable(n,e),r.proxy)),Proxy.revocable(Object.create(null),e).proxy}function qt(t,e){const{[zo]:r}=t(yl());return r.join(e?.keySeparator??".")}const Nn={},gr=t=>!U(t)&&typeof t!="boolean"&&typeof t!="number";class Zt extends nr{constructor(e,r={}){super(),cl(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=be.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e,r={interpolation:{}}){const n={...r};if(e==null)return!1;const o=this.resolve(e,n);if(o?.res===void 0)return!1;const a=gr(o.res);return!(n.returnObjects===!1&&a)}extractFromKey(e,r){let n=r.nsSeparator!==void 0?r.nsSeparator:this.options.nsSeparator;n===void 0&&(n=":");const o=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator;let a=r.ns||this.options.defaultNS||[];const i=n&&e.indexOf(n)>-1,s=!this.options.userDefinedKeySeparator&&!r.keySeparator&&!this.options.userDefinedNsSeparator&&!r.nsSeparator&&!vl(e,n,o);if(i&&!s){const l=e.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:e,namespaces:U(a)?[a]:a};const c=e.split(n);(n!==o||n===o&&this.options.ns.indexOf(c[0])>-1)&&(a=c.shift()),e=c.join(o)}return{key:e,namespaces:U(a)?[a]:a}}translate(e,r,n){let o=typeof r=="object"?{...r}:r;if(typeof o!="object"&&this.options.overloadTranslationOptionHandler&&(o=this.options.overloadTranslationOptionHandler(arguments)),typeof o=="object"&&(o={...o}),o||(o={}),e==null)return"";typeof e=="function"&&(e=qt(e,{...this.options,...o})),Array.isArray(e)||(e=[String(e)]);const a=o.returnDetails!==void 0?o.returnDetails:this.options.returnDetails,i=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,{key:s,namespaces:l}=this.extractFromKey(e[e.length-1],o),c=l[l.length-1];let d=o.nsSeparator!==void 0?o.nsSeparator:this.options.nsSeparator;d===void 0&&(d=":");const u=o.lng||this.language,h=o.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u?.toLowerCase()==="cimode")return h?a?{res:`${c}${d}${s}`,usedKey:s,exactUsedKey:s,usedLng:u,usedNS:c,usedParams:this.getUsedParamsDetails(o)}:`${c}${d}${s}`:a?{res:s,usedKey:s,exactUsedKey:s,usedLng:u,usedNS:c,usedParams:this.getUsedParamsDetails(o)}:s;const f=this.resolve(e,o);let v=f?.res;const _=f?.usedKey||s,S=f?.exactUsedKey||s,C=["[object Number]","[object Function]","[object RegExp]"],R=o.joinArrays!==void 0?o.joinArrays:this.options.joinArrays,A=!this.i18nFormat||this.i18nFormat.handleAsObject,b=o.count!==void 0&&!U(o.count),w=Zt.hasDefaultValue(o),T=b?this.pluralResolver.getSuffix(u,o.count,o):"",E=o.ordinal&&b?this.pluralResolver.getSuffix(u,o.count,{ordinal:!1}):"",L=b&&!o.ordinal&&o.count===0,j=L&&o[`defaultValue${this.options.pluralSeparator}zero`]||o[`defaultValue${T}`]||o[`defaultValue${E}`]||o.defaultValue;let H=v;A&&!v&&w&&(H=j);const z=gr(H),B=Object.prototype.toString.apply(H);if(A&&H&&z&&C.indexOf(B)<0&&!(U(R)&&Array.isArray(H))){if(!o.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const W=this.options.returnedObjectHandler?this.options.returnedObjectHandler(_,H,{...o,ns:l}):`key '${s} (${this.language})' returned an object instead of string.`;return a?(f.res=W,f.usedParams=this.getUsedParamsDetails(o),f):W}if(i){const W=Array.isArray(H),G=W?[]:{},ge=W?S:_;for(const ue in H)if(Object.prototype.hasOwnProperty.call(H,ue)){const X=`${ge}${i}${ue}`;w&&!v?G[ue]=this.translate(X,{...o,defaultValue:gr(j)?j[ue]:void 0,joinArrays:!1,ns:l}):G[ue]=this.translate(X,{...o,joinArrays:!1,ns:l}),G[ue]===X&&(G[ue]=H[ue])}v=G}}else if(A&&U(R)&&Array.isArray(v))v=v.join(R),v&&(v=this.extendTranslation(v,e,o,n));else{let W=!1,G=!1;!this.isValidLookup(v)&&w&&(W=!0,v=j),this.isValidLookup(v)||(G=!0,v=s);const ue=(o.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&G?void 0:v,X=w&&j!==v&&this.options.updateMissing;if(G||W||X){if(this.logger.log(X?"updateKey":"missingKey",u,c,s,X?j:v),i){const ie=this.resolve(s,{...o,keySeparator:!1});ie&&ie.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let ee=[];const Oe=this.languageUtils.getFallbackCodes(this.options.fallbackLng,o.lng||this.language);if(this.options.saveMissingTo==="fallback"&&Oe&&Oe[0])for(let ie=0;ie<Oe.length;ie++)ee.push(Oe[ie]);else this.options.saveMissingTo==="all"?ee=this.languageUtils.toResolveHierarchy(o.lng||this.language):ee.push(o.lng||this.language);const Pe=(ie,fe,_e)=>{const Ae=w&&_e!==v?_e:ue;this.options.missingKeyHandler?this.options.missingKeyHandler(ie,c,fe,Ae,X,o):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(ie,c,fe,Ae,X,o),this.emit("missingKey",ie,c,fe,v)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?ee.forEach(ie=>{const fe=this.pluralResolver.getSuffixes(ie,o);L&&o[`defaultValue${this.options.pluralSeparator}zero`]&&fe.indexOf(`${this.options.pluralSeparator}zero`)<0&&fe.push(`${this.options.pluralSeparator}zero`),fe.forEach(_e=>{Pe([ie],s+_e,o[`defaultValue${_e}`]||j)})}):Pe(ee,s,j))}v=this.extendTranslation(v,e,o,f,n),G&&v===s&&this.options.appendNamespaceToMissingKey&&(v=`${c}${d}${s}`),(G||W)&&this.options.parseMissingKeyHandler&&(v=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${c}${d}${s}`:s,W?v:void 0,o))}return a?(f.res=v,f.usedParams=this.getUsedParamsDetails(o),f):v}extendTranslation(e,r,n,o,a){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||o.usedLng,o.usedNS,o.usedKey,{resolved:o});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const l=U(e)&&(n?.interpolation?.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let c;if(l){const u=e.match(this.interpolator.nestingRegexp);c=u&&u.length}let d=n.replace&&!U(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(d={...this.options.interpolation.defaultVariables,...d}),e=this.interpolator.interpolate(e,d,n.lng||this.language||o.usedLng,n),l){const u=e.match(this.interpolator.nestingRegexp),h=u&&u.length;c<h&&(n.nest=!1)}!n.lng&&o&&o.res&&(n.lng=this.language||o.usedLng),n.nest!==!1&&(e=this.interpolator.nest(e,(...u)=>a?.[0]===u[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${u[0]} in key: ${r[0]}`),null):this.translate(...u,r),n)),n.interpolation&&this.interpolator.reset()}const i=n.postProcess||this.options.postProcess,s=U(i)?[i]:i;return e!=null&&s?.length&&n.applyPostProcessor!==!1&&(e=Ko.handle(s,e,r,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...o,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,r={}){let n,o,a,i,s;return U(e)&&(e=[e]),e.forEach(l=>{if(this.isValidLookup(n))return;const c=this.extractFromKey(l,r),d=c.key;o=d;let u=c.namespaces;this.options.fallbackNS&&(u=u.concat(this.options.fallbackNS));const h=r.count!==void 0&&!U(r.count),f=h&&!r.ordinal&&r.count===0,v=r.context!==void 0&&(U(r.context)||typeof r.context=="number")&&r.context!=="",_=r.lngs?r.lngs:this.languageUtils.toResolveHierarchy(r.lng||this.language,r.fallbackLng);u.forEach(S=>{this.isValidLookup(n)||(s=S,!Nn[`${_[0]}-${S}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(s)&&(Nn[`${_[0]}-${S}`]=!0,this.logger.warn(`key "${o}" for languages "${_.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),_.forEach(C=>{if(this.isValidLookup(n))return;i=C;const R=[d];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(R,d,C,S,r);else{let b;h&&(b=this.pluralResolver.getSuffix(C,r.count,r));const w=`${this.options.pluralSeparator}zero`,T=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(h&&(r.ordinal&&b.indexOf(T)===0&&R.push(d+b.replace(T,this.options.pluralSeparator)),R.push(d+b),f&&R.push(d+w)),v){const E=`${d}${this.options.contextSeparator||"_"}${r.context}`;R.push(E),h&&(r.ordinal&&b.indexOf(T)===0&&R.push(E+b.replace(T,this.options.pluralSeparator)),R.push(E+b),f&&R.push(E+w))}}let A;for(;A=R.pop();)this.isValidLookup(n)||(a=A,n=this.getResource(C,S,A,r))}))})}),{res:n,usedKey:o,exactUsedKey:a,usedLng:i,usedNS:s}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e==="")}getResource(e,r,n,o={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,r,n,o):this.resourceStore.getResource(e,r,n,o)}getUsedParamsDetails(e={}){const r=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=e.replace&&!U(e.replace);let o=n?e.replace:e;if(n&&typeof e.count<"u"&&(o.count=e.count),this.options.interpolation.defaultVariables&&(o={...this.options.interpolation.defaultVariables,...o}),!n){o={...o};for(const a of r)delete o[a]}return o}static hasDefaultValue(e){const r="defaultValue";for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&r===n.substring(0,r.length)&&e[n]!==void 0)return!0;return!1}}class Rn{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=be.create("languageUtils")}getScriptPartFromCode(e){if(e=Rt(e),!e||e.indexOf("-")<0)return null;const r=e.split("-");return r.length===2||(r.pop(),r[r.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(r.join("-"))}getLanguagePartFromCode(e){if(e=Rt(e),!e||e.indexOf("-")<0)return e;const r=e.split("-");return this.formatLanguageCode(r[0])}formatLanguageCode(e){if(U(e)&&e.indexOf("-")>-1){let r;try{r=Intl.getCanonicalLocales(e)[0]}catch{}return r&&this.options.lowerCaseLng&&(r=r.toLowerCase()),r||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let r;return e.forEach(n=>{if(r)return;const o=this.formatLanguageCode(n);(!this.options.supportedLngs||this.isSupportedCode(o))&&(r=o)}),!r&&this.options.supportedLngs&&e.forEach(n=>{if(r)return;const o=this.getScriptPartFromCode(n);if(this.isSupportedCode(o))return r=o;const a=this.getLanguagePartFromCode(n);if(this.isSupportedCode(a))return r=a;r=this.options.supportedLngs.find(i=>{if(i===a)return i;if(!(i.indexOf("-")<0&&a.indexOf("-")<0)&&(i.indexOf("-")>0&&a.indexOf("-")<0&&i.substring(0,i.indexOf("-"))===a||i.indexOf(a)===0&&a.length>1))return i})}),r||(r=this.getFallbackCodes(this.options.fallbackLng)[0]),r}getFallbackCodes(e,r){if(!e)return[];if(typeof e=="function"&&(e=e(r)),U(e)&&(e=[e]),Array.isArray(e))return e;if(!r)return e.default||[];let n=e[r];return n||(n=e[this.getScriptPartFromCode(r)]),n||(n=e[this.formatLanguageCode(r)]),n||(n=e[this.getLanguagePartFromCode(r)]),n||(n=e.default),n||[]}toResolveHierarchy(e,r){const n=this.getFallbackCodes((r===!1?[]:r)||this.options.fallbackLng||[],e),o=[],a=i=>{i&&(this.isSupportedCode(i)?o.push(i):this.logger.warn(`rejecting language code not found in supportedLngs: ${i}`))};return U(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&a(this.formatLanguageCode(e)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&a(this.getScriptPartFromCode(e)),this.options.load!=="currentOnly"&&a(this.getLanguagePartFromCode(e))):U(e)&&a(this.formatLanguageCode(e)),n.forEach(i=>{o.indexOf(i)<0&&a(this.formatLanguageCode(i))}),o}}const bn={zero:0,one:1,two:2,few:3,many:4,other:5},On={select:t=>t===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class Cl{constructor(e,r={}){this.languageUtils=e,this.options=r,this.logger=be.create("pluralResolver"),this.pluralRulesCache={}}addRule(e,r){this.rules[e]=r}clearCache(){this.pluralRulesCache={}}getRule(e,r={}){const n=Rt(e==="dev"?"en":e),o=r.ordinal?"ordinal":"cardinal",a=JSON.stringify({cleanedCode:n,type:o});if(a in this.pluralRulesCache)return this.pluralRulesCache[a];let i;try{i=new Intl.PluralRules(n,{type:o})}catch{if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),On;if(!e.match(/-|_/))return On;const l=this.languageUtils.getLanguagePartFromCode(e);i=this.getRule(l,r)}return this.pluralRulesCache[a]=i,i}needsPlural(e,r={}){let n=this.getRule(e,r);return n||(n=this.getRule("dev",r)),n?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,r,n={}){return this.getSuffixes(e,n).map(o=>`${r}${o}`)}getSuffixes(e,r={}){let n=this.getRule(e,r);return n||(n=this.getRule("dev",r)),n?n.resolvedOptions().pluralCategories.sort((o,a)=>bn[o]-bn[a]).map(o=>`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${o}`):[]}getSuffix(e,r,n={}){const o=this.getRule(e,n);return o?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${o.select(r)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix("dev",r,n))}}const Ln=(t,e,r,n=".",o=!0)=>{let a=fl(t,e,r);return!a&&o&&U(r)&&(a=Ir(t,r,n),a===void 0&&(a=Ir(e,r,n))),a},mr=t=>t.replace(/\$/g,"$$$$");class Sl{constructor(e={}){this.logger=be.create("interpolator"),this.options=e,this.format=e?.interpolation?.format||(r=>r),this.init(e)}init(e={}){e.interpolation||(e.interpolation={escapeValue:!0});const{escape:r,escapeValue:n,useRawValueToEscape:o,prefix:a,prefixEscaped:i,suffix:s,suffixEscaped:l,formatSeparator:c,unescapeSuffix:d,unescapePrefix:u,nestingPrefix:h,nestingPrefixEscaped:f,nestingSuffix:v,nestingSuffixEscaped:_,nestingOptionsSeparator:S,maxReplaces:C,alwaysFormat:R}=e.interpolation;this.escape=r!==void 0?r:pl,this.escapeValue=n!==void 0?n:!0,this.useRawValueToEscape=o!==void 0?o:!1,this.prefix=a?ot(a):i||"{{",this.suffix=s?ot(s):l||"}}",this.formatSeparator=c||",",this.unescapePrefix=d?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=h?ot(h):f||ot("$t("),this.nestingSuffix=v?ot(v):_||ot(")"),this.nestingOptionsSeparator=S||",",this.maxReplaces=C||1e3,this.alwaysFormat=R!==void 0?R:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(r,n)=>r?.source===n?(r.lastIndex=0,r):new RegExp(n,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,r,n,o){let a,i,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=f=>{if(f.indexOf(this.formatSeparator)<0){const C=Ln(r,l,f,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(C,void 0,n,{...o,...r,interpolationkey:f}):C}const v=f.split(this.formatSeparator),_=v.shift().trim(),S=v.join(this.formatSeparator).trim();return this.format(Ln(r,l,_,this.options.keySeparator,this.options.ignoreJSONStructure),S,n,{...o,...r,interpolationkey:_})};this.resetRegExp();const d=o?.missingInterpolationHandler||this.options.missingInterpolationHandler,u=o?.interpolation?.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:f=>mr(f)},{regex:this.regexp,safeValue:f=>this.escapeValue?mr(this.escape(f)):mr(f)}].forEach(f=>{for(s=0;a=f.regex.exec(e);){const v=a[1].trim();if(i=c(v),i===void 0)if(typeof d=="function"){const S=d(e,a,o);i=U(S)?S:""}else if(o&&Object.prototype.hasOwnProperty.call(o,v))i="";else if(u){i=a[0];continue}else this.logger.warn(`missed to pass in variable ${v} for interpolating ${e}`),i="";else!U(i)&&!this.useRawValueToEscape&&(i=vn(i));const _=f.safeValue(i);if(e=e.replace(a[0],_),u?(f.regex.lastIndex+=i.length,f.regex.lastIndex-=a[0].length):f.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),e}nest(e,r,n={}){let o,a,i;const s=(l,c)=>{const d=this.nestingOptionsSeparator;if(l.indexOf(d)<0)return l;const u=l.split(new RegExp(`${d}[ ]*{`));let h=`{${u[1]}`;l=u[0],h=this.interpolate(h,i);const f=h.match(/'/g),v=h.match(/"/g);((f?.length??0)%2===0&&!v||v.length%2!==0)&&(h=h.replace(/'/g,'"'));try{i=JSON.parse(h),c&&(i={...c,...i})}catch(_){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,_),`${l}${d}${h}`}return i.defaultValue&&i.defaultValue.indexOf(this.prefix)>-1&&delete i.defaultValue,l};for(;o=this.nestingRegexp.exec(e);){let l=[];i={...n},i=i.replace&&!U(i.replace)?i.replace:i,i.applyPostProcessor=!1,delete i.defaultValue;const c=/{.*}/.test(o[1])?o[1].lastIndexOf("}")+1:o[1].indexOf(this.formatSeparator);if(c!==-1&&(l=o[1].slice(c).split(this.formatSeparator).map(d=>d.trim()).filter(Boolean),o[1]=o[1].slice(0,c)),a=r(s.call(this,o[1].trim(),i),i),a&&o[0]===e&&!U(a))return a;U(a)||(a=vn(a)),a||(this.logger.warn(`missed to resolve ${o[1]} for nesting ${e}`),a=""),l.length&&(a=l.reduce((d,u)=>this.format(d,u,n.lng,{...n,interpolationkey:o[1].trim()}),a.trim())),e=e.replace(o[0],a),this.regexp.lastIndex=0}return e}}const Nl=t=>{let e=t.toLowerCase().trim();const r={};if(t.indexOf("(")>-1){const n=t.split("(");e=n[0].toLowerCase().trim();const o=n[1].substring(0,n[1].length-1);e==="currency"&&o.indexOf(":")<0?r.currency||(r.currency=o.trim()):e==="relativetime"&&o.indexOf(":")<0?r.range||(r.range=o.trim()):o.split(";").forEach(i=>{if(i){const[s,...l]=i.split(":"),c=l.join(":").trim().replace(/^'+|'+$/g,""),d=s.trim();r[d]||(r[d]=c),c==="false"&&(r[d]=!1),c==="true"&&(r[d]=!0),isNaN(c)||(r[d]=parseInt(c,10))}})}return{formatName:e,formatOptions:r}},xn=t=>{const e={};return(r,n,o)=>{let a=o;o&&o.interpolationkey&&o.formatParams&&o.formatParams[o.interpolationkey]&&o[o.interpolationkey]&&(a={...a,[o.interpolationkey]:void 0});const i=n+JSON.stringify(a);let s=e[i];return s||(s=t(Rt(n),o),e[i]=s),s(r)}},Rl=t=>(e,r,n)=>t(Rt(r),n)(e);class bl{constructor(e={}){this.logger=be.create("formatter"),this.options=e,this.init(e)}init(e,r={interpolation:{}}){this.formatSeparator=r.interpolation.formatSeparator||",";const n=r.cacheInBuiltFormats?xn:Rl;this.formats={number:n((o,a)=>{const i=new Intl.NumberFormat(o,{...a});return s=>i.format(s)}),currency:n((o,a)=>{const i=new Intl.NumberFormat(o,{...a,style:"currency"});return s=>i.format(s)}),datetime:n((o,a)=>{const i=new Intl.DateTimeFormat(o,{...a});return s=>i.format(s)}),relativetime:n((o,a)=>{const i=new Intl.RelativeTimeFormat(o,{...a});return s=>i.format(s,a.range||"day")}),list:n((o,a)=>{const i=new Intl.ListFormat(o,{...a});return s=>i.format(s)})}}add(e,r){this.formats[e.toLowerCase().trim()]=r}addCached(e,r){this.formats[e.toLowerCase().trim()]=xn(r)}format(e,r,n,o={}){const a=r.split(this.formatSeparator);if(a.length>1&&a[0].indexOf("(")>1&&a[0].indexOf(")")<0&&a.find(s=>s.indexOf(")")>-1)){const s=a.findIndex(l=>l.indexOf(")")>-1);a[0]=[a[0],...a.splice(1,s)].join(this.formatSeparator)}return a.reduce((s,l)=>{const{formatName:c,formatOptions:d}=Nl(l);if(this.formats[c]){let u=s;try{const h=o?.formatParams?.[o.interpolationkey]||{},f=h.locale||h.lng||o.locale||o.lng||n;u=this.formats[c](s,f,{...d,...o,...h})}catch(h){this.logger.warn(h)}return u}else this.logger.warn(`there was no format function for ${c}`);return s},e)}}const Ol=(t,e)=>{t.pending[e]!==void 0&&(delete t.pending[e],t.pendingCount--)};class Ll extends nr{constructor(e,r,n,o={}){super(),this.backend=e,this.store=r,this.services=n,this.languageUtils=n.languageUtils,this.options=o,this.logger=be.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=o.maxParallelReads||10,this.readingCalls=0,this.maxRetries=o.maxRetries>=0?o.maxRetries:5,this.retryTimeout=o.retryTimeout>=1?o.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(n,o.backend,o)}queueLoad(e,r,n,o){const a={},i={},s={},l={};return e.forEach(c=>{let d=!0;r.forEach(u=>{const h=`${c}|${u}`;!n.reload&&this.store.hasResourceBundle(c,u)?this.state[h]=2:this.state[h]<0||(this.state[h]===1?i[h]===void 0&&(i[h]=!0):(this.state[h]=1,d=!1,i[h]===void 0&&(i[h]=!0),a[h]===void 0&&(a[h]=!0),l[u]===void 0&&(l[u]=!0)))}),d||(s[c]=!0)}),(Object.keys(a).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:o}),{toLoad:Object.keys(a),pending:Object.keys(i),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(e,r,n){const o=e.split("|"),a=o[0],i=o[1];r&&this.emit("failedLoading",a,i,r),!r&&n&&this.store.addResourceBundle(a,i,n,void 0,void 0,{skipCopy:!0}),this.state[e]=r?-1:2,r&&n&&(this.state[e]=0);const s={};this.queue.forEach(l=>{dl(l.loaded,[a],i),Ol(l,e),r&&l.errors.push(r),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(c=>{s[c]||(s[c]={});const d=l.loaded[c];d.length&&d.forEach(u=>{s[c][u]===void 0&&(s[c][u]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(e,r,n,o=0,a=this.retryTimeout,i){if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:r,fcName:n,tried:o,wait:a,callback:i});return}this.readingCalls++;const s=(c,d)=>{if(this.readingCalls--,this.waitingReads.length>0){const u=this.waitingReads.shift();this.read(u.lng,u.ns,u.fcName,u.tried,u.wait,u.callback)}if(c&&d&&o<this.maxRetries){setTimeout(()=>{this.read.call(this,e,r,n,o+1,a*2,i)},a);return}i(c,d)},l=this.backend[n].bind(this.backend);if(l.length===2){try{const c=l(e,r);c&&typeof c.then=="function"?c.then(d=>s(null,d)).catch(s):s(null,c)}catch(c){s(c)}return}return l(e,r,s)}prepareLoading(e,r,n={},o){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();U(e)&&(e=this.languageUtils.toResolveHierarchy(e)),U(r)&&(r=[r]);const a=this.queueLoad(e,r,n,o);if(!a.toLoad.length)return a.pending.length||o(),null;a.toLoad.forEach(i=>{this.loadOne(i)})}load(e,r,n){this.prepareLoading(e,r,{},n)}reload(e,r,n){this.prepareLoading(e,r,{reload:!0},n)}loadOne(e,r=""){const n=e.split("|"),o=n[0],a=n[1];this.read(o,a,"read",void 0,void 0,(i,s)=>{i&&this.logger.warn(`${r}loading namespace ${a} for language ${o} failed`,i),!i&&s&&this.logger.log(`${r}loaded namespace ${a} for language ${o}`,s),this.loaded(e,i,s)})}saveMissing(e,r,n,o,a,i={},s=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(r)){this.logger.warn(`did not save key "${n}" as the namespace "${r}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(n==null||n==="")){if(this.backend?.create){const l={...i,isUpdate:a},c=this.backend.create.bind(this.backend);if(c.length<6)try{let d;c.length===5?d=c(e,r,n,o,l):d=c(e,r,n,o),d&&typeof d.then=="function"?d.then(u=>s(null,u)).catch(s):s(null,d)}catch(d){s(d)}else c(e,r,n,o,s,l)}!e||!e[0]||this.store.addResource(e[0],r,n,o)}}}const Dn=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:t=>{let e={};if(typeof t[1]=="object"&&(e=t[1]),U(t[1])&&(e.defaultValue=t[1]),U(t[2])&&(e.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(n=>{e[n]=r[n]})}return e},interpolation:{escapeValue:!0,format:t=>t,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),wn=t=>(U(t.ns)&&(t.ns=[t.ns]),U(t.fallbackLng)&&(t.fallbackLng=[t.fallbackLng]),U(t.fallbackNS)&&(t.fallbackNS=[t.fallbackNS]),t.supportedLngs?.indexOf?.("cimode")<0&&(t.supportedLngs=t.supportedLngs.concat(["cimode"])),typeof t.initImmediate=="boolean"&&(t.initAsync=t.initImmediate),t),Bt=()=>{},xl=t=>{Object.getOwnPropertyNames(Object.getPrototypeOf(t)).forEach(r=>{typeof t[r]=="function"&&(t[r]=t[r].bind(t))})};class bt extends nr{constructor(e={},r){if(super(),this.options=wn(e),this.services={},this.logger=be,this.modules={external:[]},xl(this),r&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,r),this;setTimeout(()=>{this.init(e,r)},0)}}init(e={},r){this.isInitializing=!0,typeof e=="function"&&(r=e,e={}),e.defaultNS==null&&e.ns&&(U(e.ns)?e.defaultNS=e.ns:e.ns.indexOf("translation")<0&&(e.defaultNS=e.ns[0]));const n=Dn();this.options={...n,...this.options,...wn(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator);const o=c=>c?typeof c=="function"?new c:c:null;if(!this.options.isClone){this.modules.logger?be.init(o(this.modules.logger),this.options):be.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:c=bl;const d=new Rn(this.options);this.store=new Sn(this.options.resources,this.options);const u=this.services;u.logger=be,u.resourceStore=this.store,u.languageUtils=d,u.pluralResolver=new Cl(d,{prepend:this.options.pluralSeparator,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),this.options.interpolation.format&&this.options.interpolation.format!==n.interpolation.format&&this.logger.deprecate("init: you are still using the legacy format function, please use the new approach: https://www.i18next.com/translation-function/formatting"),c&&(!this.options.interpolation.format||this.options.interpolation.format===n.interpolation.format)&&(u.formatter=o(c),u.formatter.init&&u.formatter.init(u,this.options),this.options.interpolation.format=u.formatter.format.bind(u.formatter)),u.interpolator=new Sl(this.options),u.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},u.backendConnector=new Ll(o(this.modules.backend),u.resourceStore,u,this.options),u.backendConnector.on("*",(f,...v)=>{this.emit(f,...v)}),this.modules.languageDetector&&(u.languageDetector=o(this.modules.languageDetector),u.languageDetector.init&&u.languageDetector.init(u,this.options.detection,this.options)),this.modules.i18nFormat&&(u.i18nFormat=o(this.modules.i18nFormat),u.i18nFormat.init&&u.i18nFormat.init(this)),this.translator=new Zt(this.services,this.options),this.translator.on("*",(f,...v)=>{this.emit(f,...v)}),this.modules.external.forEach(f=>{f.init&&f.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Bt),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const c=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);c.length>0&&c[0]!=="dev"&&(this.options.lng=c[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(c=>{this[c]=(...d)=>this.store[c](...d)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(c=>{this[c]=(...d)=>(this.store[c](...d),this)});const s=Et(),l=()=>{const c=(d,u)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),s.resolve(u),r(d,u)};if(this.languages&&!this.isInitialized)return c(null,this.t.bind(this));this.changeLanguage(this.options.lng,c)};return this.options.resources||!this.options.initAsync?l():setTimeout(l,0),s}loadResources(e,r=Bt){let n=r;const o=U(e)?e:this.language;if(typeof e=="function"&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(o?.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return n();const a=[],i=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(c=>{c!=="cimode"&&a.indexOf(c)<0&&a.push(c)})};o?i(o):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>i(l)),this.options.preload?.forEach?.(s=>i(s)),this.services.backendConnector.load(a,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(s)})}else n(null)}reloadResources(e,r,n){const o=Et();return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r=void 0),e||(e=this.languages),r||(r=this.options.ns),n||(n=Bt),this.services.backendConnector.reload(e,r,a=>{o.resolve(),n(a)}),o}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return e.type==="backend"&&(this.modules.backend=e),(e.type==="logger"||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type==="languageDetector"&&(this.modules.languageDetector=e),e.type==="i18nFormat"&&(this.modules.i18nFormat=e),e.type==="postProcessor"&&Ko.addPostProcessor(e),e.type==="formatter"&&(this.modules.formatter=e),e.type==="3rdParty"&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&!(["cimode","dev"].indexOf(e)>-1)){for(let r=0;r<this.languages.length;r++){const n=this.languages[r];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}!this.resolvedLanguage&&this.languages.indexOf(e)<0&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,r){this.isLanguageChangingTo=e;const n=Et();this.emit("languageChanging",e);const o=s=>{this.language=s,this.languages=this.services.languageUtils.toResolveHierarchy(s),this.resolvedLanguage=void 0,this.setResolvedLanguage(s)},a=(s,l)=>{l?this.isLanguageChangingTo===e&&(o(l),this.translator.changeLanguage(l),this.isLanguageChangingTo=void 0,this.emit("languageChanged",l),this.logger.log("languageChanged",l)):this.isLanguageChangingTo=void 0,n.resolve((...c)=>this.t(...c)),r&&r(s,(...c)=>this.t(...c))},i=s=>{!e&&!s&&this.services.languageDetector&&(s=[]);const l=U(s)?s:s&&s[0],c=this.store.hasLanguageSomeTranslations(l)?l:this.services.languageUtils.getBestMatchFromCodes(U(s)?[s]:s);c&&(this.language||o(c),this.translator.language||this.translator.changeLanguage(c),this.services.languageDetector?.cacheUserLanguage?.(c)),this.loadResources(c,d=>{a(d,c)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?i(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(i):this.services.languageDetector.detect(i):i(e),n}getFixedT(e,r,n){const o=(a,i,...s)=>{let l;typeof i!="object"?l=this.options.overloadTranslationOptionHandler([a,i].concat(s)):l={...i},l.lng=l.lng||o.lng,l.lngs=l.lngs||o.lngs,l.ns=l.ns||o.ns,l.keyPrefix!==""&&(l.keyPrefix=l.keyPrefix||n||o.keyPrefix);const c=this.options.keySeparator||".";let d;return l.keyPrefix&&Array.isArray(a)?d=a.map(u=>(typeof u=="function"&&(u=qt(u,{...this.options,...i})),`${l.keyPrefix}${c}${u}`)):(typeof a=="function"&&(a=qt(a,{...this.options,...i})),d=l.keyPrefix?`${l.keyPrefix}${c}${a}`:a),this.t(d,l)};return U(e)?o.lng=e:o.lngs=e,o.ns=r,o.keyPrefix=n,o}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,r={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=r.lng||this.resolvedLanguage||this.languages[0],o=this.options?this.options.fallbackLng:!1,a=this.languages[this.languages.length-1];if(n.toLowerCase()==="cimode")return!0;const i=(s,l)=>{const c=this.services.backendConnector.state[`${s}|${l}`];return c===-1||c===0||c===2};if(r.precheck){const s=r.precheck(this,i);if(s!==void 0)return s}return!!(this.hasResourceBundle(n,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||i(n,e)&&(!o||i(a,e)))}loadNamespaces(e,r){const n=Et();return this.options.ns?(U(e)&&(e=[e]),e.forEach(o=>{this.options.ns.indexOf(o)<0&&this.options.ns.push(o)}),this.loadResources(o=>{n.resolve(),r&&r(o)}),n):(r&&r(),Promise.resolve())}loadLanguages(e,r){const n=Et();U(e)&&(e=[e]);const o=this.options.preload||[],a=e.filter(i=>o.indexOf(i)<0&&this.services.languageUtils.isSupportedCode(i));return a.length?(this.options.preload=o.concat(a),this.loadResources(i=>{n.resolve(),r&&r(i)}),n):(r&&r(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language)),!e)return"rtl";try{const o=new Intl.Locale(e);if(o&&o.getTextInfo){const a=o.getTextInfo();if(a&&a.direction)return a.direction}}catch{}const r=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],n=this.services?.languageUtils||new Rn(Dn());return e.toLowerCase().indexOf("-latn")>1?"ltr":r.indexOf(n.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(e={},r){return new bt(e,r)}cloneInstance(e={},r=Bt){const n=e.forkResourceStore;n&&delete e.forkResourceStore;const o={...this.options,...e,isClone:!0},a=new bt(o);if((e.debug!==void 0||e.prefix!==void 0)&&(a.logger=a.logger.clone(e)),["store","services","language"].forEach(s=>{a[s]=this[s]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},n){const s=Object.keys(this.store.data).reduce((l,c)=>(l[c]={...this.store.data[c]},l[c]=Object.keys(l[c]).reduce((d,u)=>(d[u]={...l[c][u]},d),l[c]),l),{});a.store=new Sn(s,o),a.services.resourceStore=a.store}return a.translator=new Zt(a.services,o),a.translator.on("*",(s,...l)=>{a.emit(s,...l)}),a.init(o,r),a.translator.options=o,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const pe=bt.createInstance();pe.createInstance=bt.createInstance;pe.createInstance;pe.dir;pe.init;pe.loadResources;pe.reloadResources;pe.use;pe.changeLanguage;pe.getFixedT;const op=pe.t;pe.exists;pe.setDefaultNamespace;pe.hasLoadedNamespace;pe.loadNamespaces;pe.loadLanguages;var Er,Pn;function Dl(){return Pn||(Pn=1,Er={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}),Er}var wl=Dl();const Pl=Is(wl);var Al=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function An(t){var e={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},r=t.match(/<\/?([^\s]+?)[/\s>]/);if(r&&(e.name=r[1],(Pl[r[1]]||t.charAt(t.length-2)==="/")&&(e.voidElement=!0),e.name.startsWith("!--"))){var n=t.indexOf("-->");return{type:"comment",comment:n!==-1?t.slice(4,n):""}}for(var o=new RegExp(Al),a=null;(a=o.exec(t))!==null;)if(a[0].trim())if(a[1]){var i=a[1].trim(),s=[i,""];i.indexOf("=")>-1&&(s=i.split("=")),e.attrs[s[0]]=s[1],o.lastIndex--}else a[2]&&(e.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return e}var Tl=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,Il=/^\s*$/,kl=Object.create(null);function Wo(t,e){switch(e.type){case"text":return t+e.content;case"tag":return t+="<"+e.name+(e.attrs?(function(r){var n=[];for(var o in r)n.push(o+'="'+r[o]+'"');return n.length?" "+n.join(" "):""})(e.attrs):"")+(e.voidElement?"/>":">"),e.voidElement?t:t+e.children.reduce(Wo,"")+"</"+e.name+">";case"comment":return t+"<!--"+e.comment+"-->"}}var Hl={parse:function(t,e){e||(e={}),e.components||(e.components=kl);var r,n=[],o=[],a=-1,i=!1;if(t.indexOf("<")!==0){var s=t.indexOf("<");n.push({type:"text",content:s===-1?t:t.substring(0,s)})}return t.replace(Tl,function(l,c){if(i){if(l!=="</"+r.name+">")return;i=!1}var d,u=l.charAt(1)!=="/",h=l.startsWith("<!--"),f=c+l.length,v=t.charAt(f);if(h){var _=An(l);return a<0?(n.push(_),n):((d=o[a]).children.push(_),n)}if(u&&(a++,(r=An(l)).type==="tag"&&e.components[r.name]&&(r.type="component",i=!0),r.voidElement||i||!v||v==="<"||r.children.push({type:"text",content:t.slice(f,t.indexOf("<",f))}),a===0&&n.push(r),(d=o[a-1])&&d.children.push(r),o[a]=r),(!u||r.voidElement)&&(a>-1&&(r.voidElement||r.name===l.slice(2,-1))&&(a--,r=a===-1?n:o[a]),!i&&v!=="<"&&v)){d=a===-1?n:o[a].children;var S=t.indexOf("<",f),C=t.slice(f,S===-1?void 0:S);Il.test(C)&&(C=" "),(S>-1&&a+d.length>=0||C!==" ")&&d.push({type:"text",content:C})}}),n},stringify:function(t){return t.reduce(function(e,r){return e+Wo("",r)},"")}};const Kt=(t,e,r,n)=>{const o=[r,{code:e,...n||{}}];if(t?.services?.logger?.forward)return t.services.logger.forward(o,"warn","react-i18next::",!0);Ce(o[0])&&(o[0]=`react-i18next:: ${o[0]}`),t?.services?.logger?.warn?t.services.logger.warn(...o):console?.warn&&console.warn(...o)},Tn={},or=(t,e,r,n)=>{Ce(r)&&Tn[r]||(Ce(r)&&(Tn[r]=new Date),Kt(t,e,r,n))},Yo=(t,e)=>()=>{if(t.isInitialized)e();else{const r=()=>{setTimeout(()=>{t.off("initialized",r)},0),e()};t.on("initialized",r)}},kr=(t,e,r)=>{t.loadNamespaces(e,Yo(t,r))},In=(t,e,r,n)=>{if(Ce(r)&&(r=[r]),t.options.preload&&t.options.preload.indexOf(e)>-1)return kr(t,r,n);r.forEach(o=>{t.options.ns.indexOf(o)<0&&t.options.ns.push(o)}),t.loadLanguages(e,Yo(t,n))},Ml=(t,e,r={})=>!e.languages||!e.languages.length?(or(e,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:e.languages}),!0):e.hasLoadedNamespace(t,{lng:r.lng,precheck:(n,o)=>{if(r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,t))return!1}}),Ce=t=>typeof t=="string",je=t=>typeof t=="object"&&t!==null,jl=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Fl={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},Bl=t=>Fl[t],Vl=t=>t.replace(jl,Bl);let Hr={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:Vl};const Ul=(t={})=>{Hr={...Hr,...t}},Go=()=>Hr;let Jo;const $l=t=>{Jo=t},Gr=()=>Jo,vr=(t,e)=>{if(!t)return!1;const r=t.props?.children??t.children;return e?r.length>0:!!r},_r=t=>{if(!t)return[];const e=t.props?.children??t.children;return t.props?.i18nIsDynamicList?ct(e):e},Kl=t=>Array.isArray(t)&&t.every(g.isValidElement),ct=t=>Array.isArray(t)?t:[t],zl=(t,e)=>{const r={...e};return r.props=Object.assign(t.props,e.props),r},Xo=(t,e,r,n)=>{if(!t)return"";let o="";const a=ct(t),i=e?.transSupportBasicHtmlNodes?e.transKeepBasicHtmlNodesFor??[]:[];return a.forEach((s,l)=>{if(Ce(s)){o+=`${s}`;return}if(g.isValidElement(s)){const{props:c,type:d}=s,u=Object.keys(c).length,h=i.indexOf(d)>-1,f=c.children;if(!f&&h&&!u){o+=`<${d}/>`;return}if(!f&&(!h||u)||c.i18nIsDynamicList){o+=`<${l}></${l}>`;return}if(h&&u===1&&Ce(f)){o+=`<${d}>${f}</${d}>`;return}const v=Xo(f,e,r,n);o+=`<${l}>${v}</${l}>`;return}if(s===null){Kt(r,"TRANS_NULL_VALUE","Passed in a null value as child",{i18nKey:n});return}if(je(s)){const{format:c,...d}=s,u=Object.keys(d);if(u.length===1){const h=c?`${u[0]}, ${c}`:u[0];o+=`{{${h}}}`;return}Kt(r,"TRANS_INVALID_OBJ","Invalid child - Object should only have keys {{ value, format }} (format is optional).",{i18nKey:n,child:s});return}Kt(r,"TRANS_INVALID_VAR","Passed in a variable like {number} - pass variables for interpolation as full objects like {{number}}.",{i18nKey:n,child:s})}),o},Wl=(t,e=[],r={})=>{if(!t)return t;const n=Object.keys(r),o=[...e,...n];let a="",i=0;for(;i<t.length;)if(t[i]==="<"){let s=!1;const l=t.slice(i).match(/^<\/(\d+|[a-zA-Z][a-zA-Z0-9-]*)>/);if(l){const c=l[1];(/^\d+$/.test(c)||o.includes(c))&&(s=!0,a+=l[0],i+=l[0].length)}if(!s){const c=t.slice(i).match(/^<(\d+|[a-zA-Z][a-zA-Z0-9-]*)(\s+[\w-]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]+))?)*\s*(\/)?>/);if(c){const d=c[1];(/^\d+$/.test(d)||o.includes(d))&&(s=!0,a+=c[0],i+=c[0].length)}}s||(a+="<",i+=1)}else a+=t[i],i+=1;return a},Yl=(t,e,r,n,o,a,i)=>{if(r==="")return[];const s=o.transKeepBasicHtmlNodesFor||[],l=r&&new RegExp(s.map(R=>`<${R}`).join("|")).test(r);if(!t&&!e&&!l&&!i)return[r];const c=e??{},d=R=>{ct(R).forEach(b=>{Ce(b)||(vr(b)?d(_r(b)):je(b)&&!g.isValidElement(b)&&Object.assign(c,b))})};d(t);const u=Wl(r,s,c),h=Hl.parse(`<0>${u}</0>`),f={...c,...a},v=(R,A,b)=>{const w=_r(R),T=S(w,A.children,b);return Kl(w)&&T.length===0||R.props?.i18nIsDynamicList?w:T},_=(R,A,b,w,T)=>{R.dummy?(R.children=A,b.push(g.cloneElement(R,{key:w},T?void 0:A))):b.push(...g.Children.map([R],E=>{const L={...E.props};return delete L.i18nIsDynamicList,g.createElement(E.type,{...L,key:w,ref:E.props.ref??E.ref},T?null:A)}))},S=(R,A,b)=>{const w=ct(R);return ct(A).reduce((E,L,j)=>{const H=L.children?.[0]?.content&&n.services.interpolator.interpolate(L.children[0].content,f,n.language);if(L.type==="tag"){let z=w[parseInt(L.name,10)];!z&&e&&(z=e[L.name]),b.length===1&&!z&&(z=b[0][L.name]),z||(z={});const B=Object.keys(L.attrs).length!==0?zl({props:L.attrs},z):z,W=g.isValidElement(B),G=W&&vr(L,!0)&&!L.voidElement,ge=l&&je(B)&&B.dummy&&!W,ue=je(e)&&Object.hasOwnProperty.call(e,L.name);if(Ce(B)){const X=n.services.interpolator.interpolate(B,f,n.language);E.push(X)}else if(vr(B)||G){const X=v(B,L,b);_(B,X,E,j)}else if(ge){const X=S(w,L.children,b);_(B,X,E,j)}else if(Number.isNaN(parseFloat(L.name)))if(ue){const X=v(B,L,b);_(B,X,E,j,L.voidElement)}else if(o.transSupportBasicHtmlNodes&&s.indexOf(L.name)>-1)if(L.voidElement)E.push(g.createElement(L.name,{key:`${L.name}-${j}`}));else{const X=S(w,L.children,b);E.push(g.createElement(L.name,{key:`${L.name}-${j}`},X))}else if(L.voidElement)E.push(`<${L.name} />`);else{const X=S(w,L.children,b);E.push(`<${L.name}>${X}</${L.name}>`)}else if(je(B)&&!W){const X=L.children[0]?H:null;X&&E.push(X)}else _(B,H,E,j,L.children.length!==1||!H)}else if(L.type==="text"){const z=o.transWrapTextNodes,B=i?o.unescape(n.services.interpolator.interpolate(L.content,f,n.language)):n.services.interpolator.interpolate(L.content,f,n.language);z?E.push(g.createElement(z,{key:`${L.name}-${j}`},B)):E.push(B)}return E},[])},C=S([{dummy:!0,children:t||[]}],h,ct(t||[]));return _r(C[0])},qo=(t,e,r)=>{const n=t.key||e,o=g.cloneElement(t,{key:n});if(!o.props||!o.props.children||r.indexOf(`${e}/>`)<0&&r.indexOf(`${e} />`)<0)return o;function a(){return g.createElement(g.Fragment,null,o)}return g.createElement(a,{key:n})},Gl=(t,e)=>t.map((r,n)=>qo(r,n,e)),Jl=(t,e)=>{const r={};return Object.keys(t).forEach(n=>{Object.assign(r,{[n]:qo(t[n],n,e)})}),r},Xl=(t,e,r,n)=>t?Array.isArray(t)?Gl(t,e):je(t)?Jl(t,e):(or(r,"TRANS_INVALID_COMPONENTS",'<Trans /> "components" prop expects an object or array',{i18nKey:n}),null):null,ql=t=>!je(t)||Array.isArray(t)?!1:Object.keys(t).reduce((e,r)=>e&&Number.isNaN(Number.parseFloat(r)),!0);function Zl({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a={},values:i,defaults:s,components:l,ns:c,i18n:d,t:u,shouldUnescape:h,...f}){const v=d||Gr();if(!v)return or(v,"NO_I18NEXT_INSTANCE","Trans: You need to pass in an i18next instance using i18nextReactModule",{i18nKey:n}),t;const _=u||v.t.bind(v)||(G=>G),S={...Go(),...v.options?.react};let C=c||_.ns||v.options?.defaultNS;C=Ce(C)?[C]:C||["translation"];const R=Xo(t,S,v,n),A=s||a?.defaultValue||R||S.transEmptyNodeValue||(typeof n=="function"?qt(n):n),{hashTransKey:b}=S,w=n||(b?b(R||A):R||A);v.options?.interpolation?.defaultVariables&&(i=i&&Object.keys(i).length>0?{...i,...v.options.interpolation.defaultVariables}:{...v.options.interpolation.defaultVariables});const T=i||e!==void 0&&!v.options?.interpolation?.alwaysFormat||!t?a.interpolation:{interpolation:{...a.interpolation,prefix:"#$?",suffix:"?$#"}},E={...a,context:o||a.context,count:e,...i,...T,defaultValue:s||a?.defaultValue,ns:C};let L=w?_(w,E):A;L===w&&A&&(L=A);const j=Xl(l,L,v,n);let H=j||t,z=null;ql(j)&&(z=j,H=t);const B=Yl(H,z,L,v,S,E,h),W=r??S.defaultTransParent;return W?g.createElement(W,f,B):B}const Ql={type:"3rdParty",init(t){Ul(t.options.react),$l(t)}},Zo=g.createContext();class ec{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}function tc({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a={},values:i,defaults:s,components:l,ns:c,i18n:d,t:u,shouldUnescape:h,...f}){const{i18n:v,defaultNS:_}=g.useContext(Zo)||{},S=d||v||Gr(),C=u||S?.t.bind(S);return Zl({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a,values:i,defaults:s,components:l,ns:c||C?.ns||_||S?.options?.defaultNS,i18n:S,t:u,shouldUnescape:h,...f})}var yr={exports:{}},Cr={};var kn;function rc(){if(kn)return Cr;kn=1;var t=ks();function e(u,h){return u===h&&(u!==0||1/u===1/h)||u!==u&&h!==h}var r=typeof Object.is=="function"?Object.is:e,n=t.useState,o=t.useEffect,a=t.useLayoutEffect,i=t.useDebugValue;function s(u,h){var f=h(),v=n({inst:{value:f,getSnapshot:h}}),_=v[0].inst,S=v[1];return a(function(){_.value=f,_.getSnapshot=h,l(_)&&S({inst:_})},[u,f,h]),o(function(){return l(_)&&S({inst:_}),u(function(){l(_)&&S({inst:_})})},[u]),i(f),f}function l(u){var h=u.getSnapshot;u=u.value;try{var f=h();return!r(u,f)}catch{return!0}}function c(u,h){return h()}var d=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?c:s;return Cr.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:d,Cr}var Hn;function nc(){return Hn||(Hn=1,yr.exports=rc()),yr.exports}var oc=nc();const ac=(t,e)=>Ce(e)?e:je(e)&&Ce(e.defaultValue)?e.defaultValue:Array.isArray(t)?t[t.length-1]:t,ic={t:ac,ready:!1},sc=()=>()=>{},Qo=(t,e={})=>{const{i18n:r}=e,{i18n:n,defaultNS:o}=g.useContext(Zo)||{},a=r||n||Gr();a&&!a.reportNamespaces&&(a.reportNamespaces=new ec),a||or(a,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const i=g.useMemo(()=>({...Go(),...a?.options?.react,...e}),[a,e]),{useSuspense:s,keyPrefix:l}=i,c=g.useMemo(()=>{const b=o||a?.options?.defaultNS;return Ce(b)?[b]:b||["translation"]},[t,o,a]);a?.reportNamespaces?.addUsedNamespaces?.(c);const d=g.useRef(0),u=g.useCallback(b=>{if(!a)return sc;const{bindI18n:w,bindI18nStore:T}=i,E=()=>{d.current+=1,b()};return w&&a.on(w,E),T&&a.store.on(T,E),()=>{w&&w.split(" ").forEach(L=>a.off(L,E)),T&&T.split(" ").forEach(L=>a.store.off(L,E))}},[a,i]),h=g.useRef(),f=g.useCallback(()=>{if(!a)return ic;const b=!!(a.isInitialized||a.initializedStoreOnce)&&c.every(H=>Ml(H,a,i)),w=e.lng||a.language,T=d.current,E=h.current;if(E&&E.ready===b&&E.lng===w&&E.keyPrefix===l&&E.revision===T)return E;const j={t:a.getFixedT(w,i.nsMode==="fallback"?c:c[0],l),ready:b,lng:w,keyPrefix:l,revision:T};return h.current=j,j},[a,c,l,i,e.lng]),[v,_]=g.useState(0),{t:S,ready:C}=oc.useSyncExternalStore(u,f,f);g.useEffect(()=>{if(a&&!C&&!s){const b=()=>_(w=>w+1);e.lng?In(a,e.lng,c,b):kr(a,c,b)}},[a,e.lng,c,C,s,v]);const R=a||{},A=g.useMemo(()=>{const b=[S,R,C];return b.t=S,b.i18n=R,b.ready=C,b},[S,R,C]);if(a&&s&&!C)throw new Promise(b=>{const w=()=>b();e.lng?In(a,e.lng,c,w):kr(a,c,w)});return A},lc=()=>{const{t}=Qo();return N.jsxs("div",{children:[N.jsx("p",{className:"font-medium",children:t("notifications.reloadApp")}),N.jsxs("button",{onClick:()=>location.reload(),className:"underline decoration-solid underline-offset-2",children:[t("common.reloadConnect")," 🔄"]})]})},cc=()=>{async function t(){const e=await pd();if(e!==null){if(e.isLatest||e.currentVersion.includes("-"))return!0;ce.studioMode||!ce.warnOutdatedApp?Ue.warn(`Connect is outdated:
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sentry_react-CVx4Qq7f.js","assets/react-D_vzfE_e.js","assets/sentry_browser-TIBDlywD.js","assets/AddDriveModal-CLtIH36m.js","assets/document_model_editor-B_fRFi56.js","assets/graphql-BXSeDpaV.js","assets/drive_explorer-DxDLfh8c.js","assets/react/jsx-runtime-DldvXD6N.js","assets/document_model-C-Ne8Zoy.js","assets/zod-Cc38s6JG.js","assets/design_system-Cvyob7tr.js","assets/tailwind_merge-CXl88Wxt.js","assets/react-dom-Cz_KAjfm.js","assets/reactor_browser-CI14TYlI.js","assets/document_drive-B4eFu84b.js","assets/design_system_connect-SoJPzAdw.js","assets/design_system_ui-B4c9YVjt.js","assets/react-dom/client-SoBEzBdt.js","assets/graphql_request-BHyPFzlZ.js","assets/ClearStorageModal-DVu2jGOi.js","assets/CookiesPolicyModal-7kRg-DxQ.js","assets/CreateDocumentModal-DJ0ZYujG.js","assets/DebugSettingsModal-8jhXYQyg.js","assets/DeleteDriveModal-DOfGKE2m.js","assets/DeleteItemModal-B6YOYMpX.js","assets/DisclaimerModal-DpPQXBr8.js","assets/DriveSettingsModal-DZvGgDDF.js","assets/ExportDocumentWithErrorsModal-DWSaMqCZ.js","assets/SettingsModal-Y_gtPnBy.js","assets/config-0mYxXHFp.js","assets/UpgradeDriveModal-D-b6vgNu.js","assets/index-CnEJ-s0j.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as we,f as Lo,s as ae,g as xo,n as li,h as ci,j as N,i as ui}from"./document_model_editor-B_fRFi56.js";import{r as di}from"./react-dom/client-SoBEzBdt.js";import{r as g,R as fi,a as hi}from"./sentry_react-CVx4Qq7f.js";import{_ as Do,l as Ue,$ as Kr,R as pi,X as gi,W as mi,a0 as jt,j as wo,h as Po}from"./document_model-C-Ne8Zoy.js";import{_ as de,G as Ao}from"./drive_explorer-DxDLfh8c.js";import{t as Ei,c as To,H as Io,A as vi,W as _i,d as yi,e as Ci,f as Si,g as Ni,h as Ri,i as bi,j as Oi,k as Li,S as xi,l as Di}from"./design_system_connect-SoJPzAdw.js";import{y as ko,z as zr,W as wi,R as Pi,A as Ai,B as Ti,C as Ii,D as ki,K as Hi,P as Mi,E as Wt,x as Me,F as ji,l as Fi,H as Bi,J as Vi,g as Ar,L as Ui,M as Ho,N as Mo,O as $i,Q as Ki,T as zi,U as Wi,V as Yi,i as Gi,X as Ji,Y as Xi,Z as qi,_ as Zi,$ as Qi,a0 as es,a1 as ts,a2 as rs,a3 as ns,a4 as os,a5 as as,a6 as is,a7 as ss,a8 as ls,a9 as cs,aa as us,ab as ds,ac as fs,ad as hs,ae as ps,af as gs,ag as ms,ah as Es,ai as vs,aj as _s,ak as ys,al as Cs,s as Yt,am as Ss,an as gn,ao as Ns,ap as jo,d as Fo,aq as Rs,ar as bs,as as Os,at as Bo,au as Ls,av as xs,aw as Ds,ax as ws}from"./reactor_browser-CI14TYlI.js";import{I as mn,l as Ps}from"./design_system-Cvyob7tr.js";import{g as As,r as Ts}from"./graphql_request-BHyPFzlZ.js";import{g as Is,r as ks}from"./react-D_vzfE_e.js";import{n as Ft}from"./document_drive-B4eFu84b.js";import{an as Hs}from"./sentry_browser-TIBDlywD.js";import"./graphql-BXSeDpaV.js";import"./react/jsx-runtime-DldvXD6N.js";import"./zod-Cc38s6JG.js";import"./tailwind_merge-CXl88Wxt.js";import"./react-dom-Cz_KAjfm.js";import"./design_system_ui-B4c9YVjt.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const i of a.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function r(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(o){if(o.ep)return;o.ep=!0;const a=r(o);fetch(o.href,a)}})();var Ms=di();const Q=Lo([ci(),xo(["true","false"])]).transform(t=>typeof t=="boolean"?t:t==="true"),Gt=Lo([li(),ae()]).transform(t=>typeof t=="number"?t:parseInt(t,10)),js=we({PH_CONFIG_PATH:ae().optional(),PH_PACKAGES:ae().optional(),PH_LOCAL_PACKAGE:ae().optional(),PH_DISABLE_LOCAL_PACKAGE:Q.default(!1),PH_WATCH_TIMEOUT:Gt.default(300),PH_SENTRY_AUTH_TOKEN:ae().optional(),PH_SENTRY_ORG:ae().optional(),PH_SENTRY_PROJECT:ae().optional()}),Fs=we({PH_CONNECT_VERSION:ae().default("unknown"),PH_CONNECT_LOG_LEVEL:xo(["debug","info","warn","error"]).default("info"),PH_CONNECT_REQUIRES_HARD_REFRESH:Q.default(!0),PH_CONNECT_WARN_OUTDATED_APP:Q.default(!1),PH_CONNECT_STUDIO_MODE:Q.default(!1),PH_CONNECT_BASE_PATH:ae().optional(),PH_CONNECT_DEFAULT_DRIVES_URL:ae().optional(),PH_CONNECT_DRIVES_PRESERVE_STRATEGY:ae().optional(),PH_CONNECT_VERSION_CHECK_INTERVAL:Gt.default(3600*1e3),PH_CONNECT_CLI_VERSION:ae().optional(),PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE:Gt.default(50)}),Bs=we({PH_CONNECT_DISABLE_ADD_DRIVE:Q.default(!1),PH_CONNECT_SEARCH_BAR_ENABLED:Q.default(!1),PH_CONNECT_INSPECTOR_ENABLED:Q.default(!1),PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS:Q.default(!0),PH_CONNECT_ENABLED_EDITORS:ae().optional(),PH_CONNECT_DISABLED_EDITORS:ae().default("powerhouse/document-drive"),PH_CONNECT_GA_TRACKING_ID:ae().optional(),PH_CONNECT_EXTERNAL_PACKAGES_DISABLED:Q.default(!1)}),Vs=we({PH_CONNECT_PUBLIC_DRIVES_ENABLED:Q.default(!0),PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES:Q.default(!1),PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES:Q.default(!1),PH_CONNECT_CLOUD_DRIVES_ENABLED:Q.default(!0),PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES:Q.default(!1),PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES:Q.default(!1),PH_CONNECT_LOCAL_DRIVES_ENABLED:Q.default(!0),PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES:Q.default(!1),PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES:Q.default(!1)}),Us=we({PH_CONNECT_ANALYTICS_ENABLED:Q.default(!0),PH_CONNECT_ANALYTICS_DATABASE_NAME:ae().optional(),PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED:Q.default(!0),PH_CONNECT_DIFF_ANALYTICS_ENABLED:Q.default(!1),PH_CONNECT_DRIVE_ANALYTICS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED:Q.default(!0)}),$s=we({PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0)}),Ks=we({PH_CONNECT_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED:Q.default(!0)}),zs=Ks.merge(Us).merge($s),Ws=we({PH_CONNECT_SENTRY_RELEASE:ae().optional(),PH_CONNECT_SENTRY_DSN:ae().optional(),PH_CONNECT_SENTRY_ENV:ae().default("dev"),PH_CONNECT_SENTRY_TRACING_ENABLED:Q.default(!1)}),Ys=we({PH_CONNECT_RENOWN_URL:ae().default("https://www.renown.id"),PH_CONNECT_RENOWN_NETWORK_ID:ae().default("eip155"),PH_CONNECT_RENOWN_CHAIN_ID:Gt.default(1)}),Ut=Fs.merge(Bs).merge(Vs).merge(zs).merge(Ws).merge(Ys);js.merge(Ut);function Gs(t,e,r){const{processEnv:n={},optionsEnv:o={},fileEnv:a={}}=t,i={};for(const s of e){const l=[{name:"process.env",value:n[s]},{name:"options",value:o[s]},{name:"fileEnv",value:a[s]}];for(const c of l){const d=c.value;if(!(d===void 0||d===""))try{const u=r.shape[s];if(u){u.parse(d),i[s]=d;break}console.warn(`Unknown environment variable: '${s}'`),i[s]=d;break}catch{const u=d===null?"null":typeof d=="object"?JSON.stringify(d):d;console.warn(`Invalid value for ${s} from ${c.name}: ${u}. Trying next source.`)}}}return i}function Js(t={}){const e=new Set(Object.keys(Ut.shape)),r=Gs(t,e,Ut);return Ut.parse(r)}function Xs(t){let e=t;return e.startsWith(".")&&(e=e.slice(1)),e.startsWith("/")||(e=`/${e}`),e.endsWith("/")||(e=`${e}/`),e}const qs={BASE_URL:"/",DEV:!1,MODE:"production",PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED:"true",PH_CONNECT_ANALYTICS_ENABLED:"true",PH_CONNECT_CLOUD_DRIVES_ENABLED:"true",PH_CONNECT_DIFF_ANALYTICS_ENABLED:"false",PH_CONNECT_DISABLED_EDITORS:"powerhouse/document-drive",PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES:"false",PH_CONNECT_DISABLE_ADD_DRIVE:"false",PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES:"false",PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES:"false",PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES:"false",PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES:"false",PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES:"false",PH_CONNECT_DRIVE_ANALYTICS_ENABLED:"true",PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED:"true",PH_CONNECT_EXTERNAL_PACKAGES_DISABLED:"false",PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED:"true",PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED:"true",PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE:"50",PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS:"true",PH_CONNECT_INSPECTOR_ENABLED:"false",PH_CONNECT_LOCAL_DRIVES_ENABLED:"true",PH_CONNECT_LOG_LEVEL:"info",PH_CONNECT_PROCESSORS_ENABLED:"true",PH_CONNECT_PUBLIC_DRIVES_ENABLED:"true",PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED:"true",PH_CONNECT_RENOWN_CHAIN_ID:"1",PH_CONNECT_RENOWN_NETWORK_ID:"eip155",PH_CONNECT_RENOWN_URL:"https://www.renown.id",PH_CONNECT_REQUIRES_HARD_REFRESH:"true",PH_CONNECT_SEARCH_BAR_ENABLED:"false",PH_CONNECT_SENTRY_ENV:"prod",PH_CONNECT_SENTRY_TRACING_ENABLED:"false",PH_CONNECT_STUDIO_MODE:"false",PH_CONNECT_VERSION:"6.0.0-dev.44",PH_CONNECT_VERSION_CHECK_INTERVAL:"3600000",PH_CONNECT_WARN_OUTDATED_APP:"false",PROD:!0,SSR:!1},x=Js({processEnv:qs});function Zs(t){return t.endsWith("/")?t:t+"/"}function Qs(){const t=x.PH_CONNECT_BASE_PATH||"/",e=Zs(t);return{basePath:t,routerBasename:e,allowList:void 0,allowedDocumentTypes:[],isDragAndDropEnabled:!0,isEditorDebugModeEnabled:!1,isEditorReadModeEnabled:!1,isExternalControlsEnabled:!1,version:x.PH_CONNECT_VERSION,logLevel:x.PH_CONNECT_LOG_LEVEL,requiresHardRefresh:x.PH_CONNECT_REQUIRES_HARD_REFRESH,warnOutdatedApp:x.PH_CONNECT_WARN_OUTDATED_APP,studioMode:x.PH_CONNECT_STUDIO_MODE,versionCheckInterval:x.PH_CONNECT_VERSION_CHECK_INTERVAL,cliVersion:x.PH_CONNECT_CLI_VERSION,fileUploadOperationsChunkSize:x.PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE,gaTrackingId:x.PH_CONNECT_GA_TRACKING_ID,defaultDrivesUrl:x.PH_CONNECT_DEFAULT_DRIVES_URL,drivesPreserveStrategy:x.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,enabledEditors:x.PH_CONNECT_ENABLED_EDITORS?.split(","),disabledEditors:x.PH_CONNECT_DISABLED_EDITORS.split(","),isExternalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED,isAnalyticsEnabled:x.PH_CONNECT_ANALYTICS_ENABLED,isAnalyticsExternalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&x.PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED,analyticsDatabaseName:x.PH_CONNECT_ANALYTICS_DATABASE_NAME,isRelationalProcessorsEnabled:x.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,isExternalRelationalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&x.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED,renownUrl:x.PH_CONNECT_RENOWN_URL,renownNetworkId:x.PH_CONNECT_RENOWN_NETWORK_ID,renownChainId:x.PH_CONNECT_RENOWN_CHAIN_ID,sentryRelease:x.PH_CONNECT_SENTRY_RELEASE,sentryDsn:x.PH_CONNECT_SENTRY_DSN,sentryEnv:x.PH_CONNECT_SENTRY_ENV,isDiffAnalyticsEnabled:x.PH_CONNECT_DIFF_ANALYTICS_ENABLED,isDriveAnalyticsEnabled:x.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,isPublicDrivesEnabled:x.PH_CONNECT_PUBLIC_DRIVES_ENABLED,isCloudDrivesEnabled:x.PH_CONNECT_CLOUD_DRIVES_ENABLED,isLocalDrivesEnabled:x.PH_CONNECT_LOCAL_DRIVES_ENABLED,isSentryTracingEnabled:x.PH_CONNECT_SENTRY_TRACING_ENABLED,isDocumentModelSelectionSettingsEnabled:!x.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,isAddDriveEnabled:!x.PH_CONNECT_DISABLE_ADD_DRIVE,isAddPublicDrivesEnabled:!x.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,isDeletePublicDrivesEnabled:!x.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES,isAddCloudDrivesEnabled:!x.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,isDeleteCloudDrivesEnabled:!x.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES,isAddLocalDrivesEnabled:!x.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,isDeleteLocalDrivesEnabled:!x.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES,isAnalyticsDatabaseWorkerEnabled:!x.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,isExternalPackagesEnabled:!x.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED}}const ut=Qs(),el={isExternalControlsEnabled:ut.isExternalControlsEnabled},tl={allowedDocumentTypes:ut.allowedDocumentTypes,isDragAndDropEnabled:ut.isDragAndDropEnabled};Do(x.PH_CONNECT_LOG_LEVEL);Ue.debug("Setting log level to @level.",x.PH_CONNECT_LOG_LEVEL);const Vo=Xs(x.PH_CONNECT_BASE_PATH||"/"),rl=x.PH_CONNECT_ANALYTICS_DATABASE_NAME||`${Vo.replace(/\//g,"")}:analytics`,ce={appVersion:x.PH_CONNECT_VERSION,studioMode:x.PH_CONNECT_STUDIO_MODE,warnOutdatedApp:x.PH_CONNECT_WARN_OUTDATED_APP,appVersionCheckInterval:x.PH_CONNECT_VERSION_CHECK_INTERVAL,routerBasename:Vo,externalPackagesEnabled:!x.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED,processors:{enabled:x.PH_CONNECT_PROCESSORS_ENABLED,externalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},analytics:{enabled:x.PH_CONNECT_ANALYTICS_ENABLED,databaseName:rl,useWorker:!x.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,driveAnalyticsEnabled:x.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,diffProcessorEnabled:x.PH_CONNECT_DIFF_ANALYTICS_ENABLED,externalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},relational:{enabled:x.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,externalProcessorsEnabled:x.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED},renown:{url:x.PH_CONNECT_RENOWN_URL,networkId:x.PH_CONNECT_RENOWN_NETWORK_ID,chainId:x.PH_CONNECT_RENOWN_CHAIN_ID},sentry:{release:x.PH_CONNECT_SENTRY_RELEASE,dsn:x.PH_CONNECT_SENTRY_DSN,env:x.PH_CONNECT_SENTRY_ENV,tracing:x.PH_CONNECT_SENTRY_TRACING_ENABLED},content:{showSearchBar:x.PH_CONNECT_SEARCH_BAR_ENABLED,showDocumentModelSelectionSetting:!x.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,inspectorEnabled:x.PH_CONNECT_INSPECTOR_ENABLED},drives:{addDriveEnabled:!x.PH_CONNECT_DISABLE_ADD_DRIVE,preserveStrategy:x.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,sections:{LOCAL:{enabled:x.PH_CONNECT_LOCAL_DRIVES_ENABLED,allowAdd:!x.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,allowDelete:!x.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES},CLOUD:{enabled:x.PH_CONNECT_CLOUD_DRIVES_ENABLED,allowAdd:!x.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,allowDelete:!x.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES},PUBLIC:{enabled:x.PH_CONNECT_PUBLIC_DRIVES_ENABLED,allowAdd:!x.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,allowDelete:!x.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES}}},gaTrackingId:x.PH_CONNECT_GA_TRACKING_ID,phCliVersion:x.PH_CONNECT_CLI_VERSION},nl=ce.routerBasename,Uo=`${nl}:acceptedCookies`,Tr=new Set;let $t=ol();function ol(){try{const t=localStorage.getItem(Uo);return t?JSON.parse(t):{analytics:!1,marketing:!1,functional:!1}}catch{return{analytics:!1,marketing:!1,functional:!1}}}function En(){return $t}function al(t){$t=t($t),localStorage.setItem(Uo,JSON.stringify($t)),Tr.forEach(e=>e())}function il(t){return Tr.add(t),()=>Tr.delete(t)}const Wr=()=>[g.useSyncExternalStore(il,En,En),al];async function Yr(){try{return(await de(()=>import("./hmr-LMNkvzP7.js"),[])).hmr}catch{return}}async function rp(t){const e=await Yr();if(!e)throw new Error("HMR not available.");return new Promise(r=>{function n(o){t===o.name&&(r(),e?.off("studio:external-package-added",n))}e.on("studio:external-package-added",n),e.send("studio:add-external-package",{name:t})})}async function np(t){const e=await Yr();if(!e)throw new Error("HMR not available.");return new Promise(r=>{function n(o){t===o.name&&(r(),e?.off("studio:external-package-removed",n))}e.on("studio:external-package-removed",n),e.send("studio:remove-external-package",{name:t})})}function sl(){const t=g.useRef(void 0);g.useEffect(()=>{const e=async n=>{const o=window.ph?.vetraPackages||[],l=(await de(()=>import(`${n.url}?t=${n.timestamp}`),[])).default.map(ko),d=[...o.filter(u=>u.id==="powerhouse/common"),...l];zr(d)};async function r(){const n=await Yr();t.current=n,n?.on("studio:external-packages-updated",e)}return r().catch(n=>Ue.error("@error",n)),()=>{t.current?.off("studio:external-packages-updated",e)}},[])}const ll="connect";function dt(t,e){const{type:r="default",containerId:n=ll,...o}=e||{};return Ei(t,{type:r,containerId:n,...o})}const U=t=>typeof t=="string",Et=()=>{let t,e;const r=new Promise((n,o)=>{t=n,e=o});return r.resolve=t,r.reject=e,r},vn=t=>t==null?"":""+t,cl=(t,e,r)=>{t.forEach(n=>{e[n]&&(r[n]=e[n])})},ul=/###/g,_n=t=>t&&t.indexOf("###")>-1?t.replace(ul,"."):t,yn=t=>!t||U(t),Nt=(t,e,r)=>{const n=U(e)?e.split("."):e;let o=0;for(;o<n.length-1;){if(yn(t))return{};const a=_n(n[o]);!t[a]&&r&&(t[a]=new r),Object.prototype.hasOwnProperty.call(t,a)?t=t[a]:t={},++o}return yn(t)?{}:{obj:t,k:_n(n[o])}},Cn=(t,e,r)=>{const{obj:n,k:o}=Nt(t,e,Object);if(n!==void 0||e.length===1){n[o]=r;return}let a=e[e.length-1],i=e.slice(0,e.length-1),s=Nt(t,i,Object);for(;s.obj===void 0&&i.length;)a=`${i[i.length-1]}.${a}`,i=i.slice(0,i.length-1),s=Nt(t,i,Object),s?.obj&&typeof s.obj[`${s.k}.${a}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=r},dl=(t,e,r,n)=>{const{obj:o,k:a}=Nt(t,e,Object);o[a]=o[a]||[],o[a].push(r)},Jt=(t,e)=>{const{obj:r,k:n}=Nt(t,e);if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},fl=(t,e,r)=>{const n=Jt(t,r);return n!==void 0?n:Jt(e,r)},$o=(t,e,r)=>{for(const n in e)n!=="__proto__"&&n!=="constructor"&&(n in t?U(t[n])||t[n]instanceof String||U(e[n])||e[n]instanceof String?r&&(t[n]=e[n]):$o(t[n],e[n],r):t[n]=e[n]);return t},ot=t=>t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var hl={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const pl=t=>U(t)?t.replace(/[&<>"'\/]/g,e=>hl[e]):t;class gl{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const r=this.regExpMap.get(e);if(r!==void 0)return r;const n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}}const ml=[" ",",","?","!",";"],El=new gl(20),vl=(t,e,r)=>{e=e||"",r=r||"";const n=ml.filter(i=>e.indexOf(i)<0&&r.indexOf(i)<0);if(n.length===0)return!0;const o=El.getRegExp(`(${n.map(i=>i==="?"?"\\?":i).join("|")})`);let a=!o.test(t);if(!a){const i=t.indexOf(r);i>0&&!o.test(t.substring(0,i))&&(a=!0)}return a},Ir=(t,e,r=".")=>{if(!t)return;if(t[e])return Object.prototype.hasOwnProperty.call(t,e)?t[e]:void 0;const n=e.split(r);let o=t;for(let a=0;a<n.length;){if(!o||typeof o!="object")return;let i,s="";for(let l=a;l<n.length;++l)if(l!==a&&(s+=r),s+=n[l],i=o[s],i!==void 0){if(["string","number","boolean"].indexOf(typeof i)>-1&&l<n.length-1)continue;a+=l-a+1;break}o=i}return o},Rt=t=>t?.replace("_","-"),_l={type:"logger",log(t){this.output("log",t)},warn(t){this.output("warn",t)},error(t){this.output("error",t)},output(t,e){console?.[t]?.apply?.(console,e)}};class Xt{constructor(e,r={}){this.init(e,r)}init(e,r={}){this.prefix=r.prefix||"i18next:",this.logger=e||_l,this.options=r,this.debug=r.debug}log(...e){return this.forward(e,"log","",!0)}warn(...e){return this.forward(e,"warn","",!0)}error(...e){return this.forward(e,"error","")}deprecate(...e){return this.forward(e,"warn","WARNING DEPRECATED: ",!0)}forward(e,r,n,o){return o&&!this.debug?null:(U(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[r](e))}create(e){return new Xt(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return e=e||this.options,e.prefix=e.prefix||this.prefix,new Xt(this.logger,e)}}var be=new Xt;class nr{constructor(){this.observers={}}on(e,r){return e.split(" ").forEach(n=>{this.observers[n]||(this.observers[n]=new Map);const o=this.observers[n].get(r)||0;this.observers[n].set(r,o+1)}),this}off(e,r){if(this.observers[e]){if(!r){delete this.observers[e];return}this.observers[e].delete(r)}}emit(e,...r){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([o,a])=>{for(let i=0;i<a;i++)o(...r)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(([o,a])=>{for(let i=0;i<a;i++)o.apply(o,[e,...r])})}}class Sn extends nr{constructor(e,r={ns:["translation"],defaultNS:"translation"}){super(),this.data=e||{},this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.indexOf(e)<0&&this.options.ns.push(e)}removeNamespaces(e){const r=this.options.ns.indexOf(e);r>-1&&this.options.ns.splice(r,1)}getResource(e,r,n,o={}){const a=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,i=o.ignoreJSONStructure!==void 0?o.ignoreJSONStructure:this.options.ignoreJSONStructure;let s;e.indexOf(".")>-1?s=e.split("."):(s=[e,r],n&&(Array.isArray(n)?s.push(...n):U(n)&&a?s.push(...n.split(a)):s.push(n)));const l=Jt(this.data,s);return!l&&!r&&!n&&e.indexOf(".")>-1&&(e=s[0],r=s[1],n=s.slice(2).join(".")),l||!i||!U(n)?l:Ir(this.data?.[e]?.[r],n,a)}addResource(e,r,n,o,a={silent:!1}){const i=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator;let s=[e,r];n&&(s=s.concat(i?n.split(i):n)),e.indexOf(".")>-1&&(s=e.split("."),o=r,r=s[1]),this.addNamespaces(r),Cn(this.data,s,o),a.silent||this.emit("added",e,r,n,o)}addResources(e,r,n,o={silent:!1}){for(const a in n)(U(n[a])||Array.isArray(n[a]))&&this.addResource(e,r,a,n[a],{silent:!0});o.silent||this.emit("added",e,r,n)}addResourceBundle(e,r,n,o,a,i={silent:!1,skipCopy:!1}){let s=[e,r];e.indexOf(".")>-1&&(s=e.split("."),o=n,n=r,r=s[1]),this.addNamespaces(r);let l=Jt(this.data,s)||{};i.skipCopy||(n=JSON.parse(JSON.stringify(n))),o?$o(l,n,a):l={...l,...n},Cn(this.data,s,l),i.silent||this.emit("added",e,r,n)}removeResourceBundle(e,r){this.hasResourceBundle(e,r)&&delete this.data[e][r],this.removeNamespaces(r),this.emit("removed",e,r)}hasResourceBundle(e,r){return this.getResource(e,r)!==void 0}getResourceBundle(e,r){return r||(r=this.options.defaultNS),this.getResource(e,r)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const r=this.getDataByLanguage(e);return!!(r&&Object.keys(r)||[]).find(o=>r[o]&&Object.keys(r[o]).length>0)}toJSON(){return this.data}}var Ko={processors:{},addPostProcessor(t){this.processors[t.name]=t},handle(t,e,r,n,o){return t.forEach(a=>{e=this.processors[a]?.process(e,r,n,o)??e}),e}};const zo=Symbol("i18next/PATH_KEY");function yl(){const t=[],e=Object.create(null);let r;return e.get=(n,o)=>(r?.revoke?.(),o===zo?t:(t.push(o),r=Proxy.revocable(n,e),r.proxy)),Proxy.revocable(Object.create(null),e).proxy}function qt(t,e){const{[zo]:r}=t(yl());return r.join(e?.keySeparator??".")}const Nn={},gr=t=>!U(t)&&typeof t!="boolean"&&typeof t!="number";class Zt extends nr{constructor(e,r={}){super(),cl(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=be.create("translator")}changeLanguage(e){e&&(this.language=e)}exists(e,r={interpolation:{}}){const n={...r};if(e==null)return!1;const o=this.resolve(e,n);if(o?.res===void 0)return!1;const a=gr(o.res);return!(n.returnObjects===!1&&a)}extractFromKey(e,r){let n=r.nsSeparator!==void 0?r.nsSeparator:this.options.nsSeparator;n===void 0&&(n=":");const o=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator;let a=r.ns||this.options.defaultNS||[];const i=n&&e.indexOf(n)>-1,s=!this.options.userDefinedKeySeparator&&!r.keySeparator&&!this.options.userDefinedNsSeparator&&!r.nsSeparator&&!vl(e,n,o);if(i&&!s){const l=e.match(this.interpolator.nestingRegexp);if(l&&l.length>0)return{key:e,namespaces:U(a)?[a]:a};const c=e.split(n);(n!==o||n===o&&this.options.ns.indexOf(c[0])>-1)&&(a=c.shift()),e=c.join(o)}return{key:e,namespaces:U(a)?[a]:a}}translate(e,r,n){let o=typeof r=="object"?{...r}:r;if(typeof o!="object"&&this.options.overloadTranslationOptionHandler&&(o=this.options.overloadTranslationOptionHandler(arguments)),typeof o=="object"&&(o={...o}),o||(o={}),e==null)return"";typeof e=="function"&&(e=qt(e,{...this.options,...o})),Array.isArray(e)||(e=[String(e)]);const a=o.returnDetails!==void 0?o.returnDetails:this.options.returnDetails,i=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,{key:s,namespaces:l}=this.extractFromKey(e[e.length-1],o),c=l[l.length-1];let d=o.nsSeparator!==void 0?o.nsSeparator:this.options.nsSeparator;d===void 0&&(d=":");const u=o.lng||this.language,h=o.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(u?.toLowerCase()==="cimode")return h?a?{res:`${c}${d}${s}`,usedKey:s,exactUsedKey:s,usedLng:u,usedNS:c,usedParams:this.getUsedParamsDetails(o)}:`${c}${d}${s}`:a?{res:s,usedKey:s,exactUsedKey:s,usedLng:u,usedNS:c,usedParams:this.getUsedParamsDetails(o)}:s;const f=this.resolve(e,o);let v=f?.res;const _=f?.usedKey||s,S=f?.exactUsedKey||s,C=["[object Number]","[object Function]","[object RegExp]"],R=o.joinArrays!==void 0?o.joinArrays:this.options.joinArrays,A=!this.i18nFormat||this.i18nFormat.handleAsObject,b=o.count!==void 0&&!U(o.count),w=Zt.hasDefaultValue(o),T=b?this.pluralResolver.getSuffix(u,o.count,o):"",E=o.ordinal&&b?this.pluralResolver.getSuffix(u,o.count,{ordinal:!1}):"",L=b&&!o.ordinal&&o.count===0,j=L&&o[`defaultValue${this.options.pluralSeparator}zero`]||o[`defaultValue${T}`]||o[`defaultValue${E}`]||o.defaultValue;let H=v;A&&!v&&w&&(H=j);const z=gr(H),B=Object.prototype.toString.apply(H);if(A&&H&&z&&C.indexOf(B)<0&&!(U(R)&&Array.isArray(H))){if(!o.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const W=this.options.returnedObjectHandler?this.options.returnedObjectHandler(_,H,{...o,ns:l}):`key '${s} (${this.language})' returned an object instead of string.`;return a?(f.res=W,f.usedParams=this.getUsedParamsDetails(o),f):W}if(i){const W=Array.isArray(H),G=W?[]:{},ge=W?S:_;for(const ue in H)if(Object.prototype.hasOwnProperty.call(H,ue)){const X=`${ge}${i}${ue}`;w&&!v?G[ue]=this.translate(X,{...o,defaultValue:gr(j)?j[ue]:void 0,joinArrays:!1,ns:l}):G[ue]=this.translate(X,{...o,joinArrays:!1,ns:l}),G[ue]===X&&(G[ue]=H[ue])}v=G}}else if(A&&U(R)&&Array.isArray(v))v=v.join(R),v&&(v=this.extendTranslation(v,e,o,n));else{let W=!1,G=!1;!this.isValidLookup(v)&&w&&(W=!0,v=j),this.isValidLookup(v)||(G=!0,v=s);const ue=(o.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&G?void 0:v,X=w&&j!==v&&this.options.updateMissing;if(G||W||X){if(this.logger.log(X?"updateKey":"missingKey",u,c,s,X?j:v),i){const ie=this.resolve(s,{...o,keySeparator:!1});ie&&ie.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let ee=[];const Oe=this.languageUtils.getFallbackCodes(this.options.fallbackLng,o.lng||this.language);if(this.options.saveMissingTo==="fallback"&&Oe&&Oe[0])for(let ie=0;ie<Oe.length;ie++)ee.push(Oe[ie]);else this.options.saveMissingTo==="all"?ee=this.languageUtils.toResolveHierarchy(o.lng||this.language):ee.push(o.lng||this.language);const Pe=(ie,fe,_e)=>{const Ae=w&&_e!==v?_e:ue;this.options.missingKeyHandler?this.options.missingKeyHandler(ie,c,fe,Ae,X,o):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(ie,c,fe,Ae,X,o),this.emit("missingKey",ie,c,fe,v)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?ee.forEach(ie=>{const fe=this.pluralResolver.getSuffixes(ie,o);L&&o[`defaultValue${this.options.pluralSeparator}zero`]&&fe.indexOf(`${this.options.pluralSeparator}zero`)<0&&fe.push(`${this.options.pluralSeparator}zero`),fe.forEach(_e=>{Pe([ie],s+_e,o[`defaultValue${_e}`]||j)})}):Pe(ee,s,j))}v=this.extendTranslation(v,e,o,f,n),G&&v===s&&this.options.appendNamespaceToMissingKey&&(v=`${c}${d}${s}`),(G||W)&&this.options.parseMissingKeyHandler&&(v=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${c}${d}${s}`:s,W?v:void 0,o))}return a?(f.res=v,f.usedParams=this.getUsedParamsDetails(o),f):v}extendTranslation(e,r,n,o,a){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||o.usedLng,o.usedNS,o.usedKey,{resolved:o});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});const l=U(e)&&(n?.interpolation?.skipOnVariables!==void 0?n.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let c;if(l){const u=e.match(this.interpolator.nestingRegexp);c=u&&u.length}let d=n.replace&&!U(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(d={...this.options.interpolation.defaultVariables,...d}),e=this.interpolator.interpolate(e,d,n.lng||this.language||o.usedLng,n),l){const u=e.match(this.interpolator.nestingRegexp),h=u&&u.length;c<h&&(n.nest=!1)}!n.lng&&o&&o.res&&(n.lng=this.language||o.usedLng),n.nest!==!1&&(e=this.interpolator.nest(e,(...u)=>a?.[0]===u[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${u[0]} in key: ${r[0]}`),null):this.translate(...u,r),n)),n.interpolation&&this.interpolator.reset()}const i=n.postProcess||this.options.postProcess,s=U(i)?[i]:i;return e!=null&&s?.length&&n.applyPostProcessor!==!1&&(e=Ko.handle(s,e,r,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...o,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,r={}){let n,o,a,i,s;return U(e)&&(e=[e]),e.forEach(l=>{if(this.isValidLookup(n))return;const c=this.extractFromKey(l,r),d=c.key;o=d;let u=c.namespaces;this.options.fallbackNS&&(u=u.concat(this.options.fallbackNS));const h=r.count!==void 0&&!U(r.count),f=h&&!r.ordinal&&r.count===0,v=r.context!==void 0&&(U(r.context)||typeof r.context=="number")&&r.context!=="",_=r.lngs?r.lngs:this.languageUtils.toResolveHierarchy(r.lng||this.language,r.fallbackLng);u.forEach(S=>{this.isValidLookup(n)||(s=S,!Nn[`${_[0]}-${S}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(s)&&(Nn[`${_[0]}-${S}`]=!0,this.logger.warn(`key "${o}" for languages "${_.join(", ")}" won't get resolved as namespace "${s}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),_.forEach(C=>{if(this.isValidLookup(n))return;i=C;const R=[d];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(R,d,C,S,r);else{let b;h&&(b=this.pluralResolver.getSuffix(C,r.count,r));const w=`${this.options.pluralSeparator}zero`,T=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(h&&(r.ordinal&&b.indexOf(T)===0&&R.push(d+b.replace(T,this.options.pluralSeparator)),R.push(d+b),f&&R.push(d+w)),v){const E=`${d}${this.options.contextSeparator||"_"}${r.context}`;R.push(E),h&&(r.ordinal&&b.indexOf(T)===0&&R.push(E+b.replace(T,this.options.pluralSeparator)),R.push(E+b),f&&R.push(E+w))}}let A;for(;A=R.pop();)this.isValidLookup(n)||(a=A,n=this.getResource(C,S,A,r))}))})}),{res:n,usedKey:o,exactUsedKey:a,usedLng:i,usedNS:s}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e==="")}getResource(e,r,n,o={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,r,n,o):this.resourceStore.getResource(e,r,n,o)}getUsedParamsDetails(e={}){const r=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],n=e.replace&&!U(e.replace);let o=n?e.replace:e;if(n&&typeof e.count<"u"&&(o.count=e.count),this.options.interpolation.defaultVariables&&(o={...this.options.interpolation.defaultVariables,...o}),!n){o={...o};for(const a of r)delete o[a]}return o}static hasDefaultValue(e){const r="defaultValue";for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&r===n.substring(0,r.length)&&e[n]!==void 0)return!0;return!1}}class Rn{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=be.create("languageUtils")}getScriptPartFromCode(e){if(e=Rt(e),!e||e.indexOf("-")<0)return null;const r=e.split("-");return r.length===2||(r.pop(),r[r.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(r.join("-"))}getLanguagePartFromCode(e){if(e=Rt(e),!e||e.indexOf("-")<0)return e;const r=e.split("-");return this.formatLanguageCode(r[0])}formatLanguageCode(e){if(U(e)&&e.indexOf("-")>-1){let r;try{r=Intl.getCanonicalLocales(e)[0]}catch{}return r&&this.options.lowerCaseLng&&(r=r.toLowerCase()),r||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(e)>-1}getBestMatchFromCodes(e){if(!e)return null;let r;return e.forEach(n=>{if(r)return;const o=this.formatLanguageCode(n);(!this.options.supportedLngs||this.isSupportedCode(o))&&(r=o)}),!r&&this.options.supportedLngs&&e.forEach(n=>{if(r)return;const o=this.getScriptPartFromCode(n);if(this.isSupportedCode(o))return r=o;const a=this.getLanguagePartFromCode(n);if(this.isSupportedCode(a))return r=a;r=this.options.supportedLngs.find(i=>{if(i===a)return i;if(!(i.indexOf("-")<0&&a.indexOf("-")<0)&&(i.indexOf("-")>0&&a.indexOf("-")<0&&i.substring(0,i.indexOf("-"))===a||i.indexOf(a)===0&&a.length>1))return i})}),r||(r=this.getFallbackCodes(this.options.fallbackLng)[0]),r}getFallbackCodes(e,r){if(!e)return[];if(typeof e=="function"&&(e=e(r)),U(e)&&(e=[e]),Array.isArray(e))return e;if(!r)return e.default||[];let n=e[r];return n||(n=e[this.getScriptPartFromCode(r)]),n||(n=e[this.formatLanguageCode(r)]),n||(n=e[this.getLanguagePartFromCode(r)]),n||(n=e.default),n||[]}toResolveHierarchy(e,r){const n=this.getFallbackCodes((r===!1?[]:r)||this.options.fallbackLng||[],e),o=[],a=i=>{i&&(this.isSupportedCode(i)?o.push(i):this.logger.warn(`rejecting language code not found in supportedLngs: ${i}`))};return U(e)&&(e.indexOf("-")>-1||e.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&a(this.formatLanguageCode(e)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&a(this.getScriptPartFromCode(e)),this.options.load!=="currentOnly"&&a(this.getLanguagePartFromCode(e))):U(e)&&a(this.formatLanguageCode(e)),n.forEach(i=>{o.indexOf(i)<0&&a(this.formatLanguageCode(i))}),o}}const bn={zero:0,one:1,two:2,few:3,many:4,other:5},On={select:t=>t===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class Cl{constructor(e,r={}){this.languageUtils=e,this.options=r,this.logger=be.create("pluralResolver"),this.pluralRulesCache={}}addRule(e,r){this.rules[e]=r}clearCache(){this.pluralRulesCache={}}getRule(e,r={}){const n=Rt(e==="dev"?"en":e),o=r.ordinal?"ordinal":"cardinal",a=JSON.stringify({cleanedCode:n,type:o});if(a in this.pluralRulesCache)return this.pluralRulesCache[a];let i;try{i=new Intl.PluralRules(n,{type:o})}catch{if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),On;if(!e.match(/-|_/))return On;const l=this.languageUtils.getLanguagePartFromCode(e);i=this.getRule(l,r)}return this.pluralRulesCache[a]=i,i}needsPlural(e,r={}){let n=this.getRule(e,r);return n||(n=this.getRule("dev",r)),n?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,r,n={}){return this.getSuffixes(e,n).map(o=>`${r}${o}`)}getSuffixes(e,r={}){let n=this.getRule(e,r);return n||(n=this.getRule("dev",r)),n?n.resolvedOptions().pluralCategories.sort((o,a)=>bn[o]-bn[a]).map(o=>`${this.options.prepend}${r.ordinal?`ordinal${this.options.prepend}`:""}${o}`):[]}getSuffix(e,r,n={}){const o=this.getRule(e,n);return o?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${o.select(r)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix("dev",r,n))}}const Ln=(t,e,r,n=".",o=!0)=>{let a=fl(t,e,r);return!a&&o&&U(r)&&(a=Ir(t,r,n),a===void 0&&(a=Ir(e,r,n))),a},mr=t=>t.replace(/\$/g,"$$$$");class Sl{constructor(e={}){this.logger=be.create("interpolator"),this.options=e,this.format=e?.interpolation?.format||(r=>r),this.init(e)}init(e={}){e.interpolation||(e.interpolation={escapeValue:!0});const{escape:r,escapeValue:n,useRawValueToEscape:o,prefix:a,prefixEscaped:i,suffix:s,suffixEscaped:l,formatSeparator:c,unescapeSuffix:d,unescapePrefix:u,nestingPrefix:h,nestingPrefixEscaped:f,nestingSuffix:v,nestingSuffixEscaped:_,nestingOptionsSeparator:S,maxReplaces:C,alwaysFormat:R}=e.interpolation;this.escape=r!==void 0?r:pl,this.escapeValue=n!==void 0?n:!0,this.useRawValueToEscape=o!==void 0?o:!1,this.prefix=a?ot(a):i||"{{",this.suffix=s?ot(s):l||"}}",this.formatSeparator=c||",",this.unescapePrefix=d?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=h?ot(h):f||ot("$t("),this.nestingSuffix=v?ot(v):_||ot(")"),this.nestingOptionsSeparator=S||",",this.maxReplaces=C||1e3,this.alwaysFormat=R!==void 0?R:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(r,n)=>r?.source===n?(r.lastIndex=0,r):new RegExp(n,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,r,n,o){let a,i,s;const l=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=f=>{if(f.indexOf(this.formatSeparator)<0){const C=Ln(r,l,f,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(C,void 0,n,{...o,...r,interpolationkey:f}):C}const v=f.split(this.formatSeparator),_=v.shift().trim(),S=v.join(this.formatSeparator).trim();return this.format(Ln(r,l,_,this.options.keySeparator,this.options.ignoreJSONStructure),S,n,{...o,...r,interpolationkey:_})};this.resetRegExp();const d=o?.missingInterpolationHandler||this.options.missingInterpolationHandler,u=o?.interpolation?.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:f=>mr(f)},{regex:this.regexp,safeValue:f=>this.escapeValue?mr(this.escape(f)):mr(f)}].forEach(f=>{for(s=0;a=f.regex.exec(e);){const v=a[1].trim();if(i=c(v),i===void 0)if(typeof d=="function"){const S=d(e,a,o);i=U(S)?S:""}else if(o&&Object.prototype.hasOwnProperty.call(o,v))i="";else if(u){i=a[0];continue}else this.logger.warn(`missed to pass in variable ${v} for interpolating ${e}`),i="";else!U(i)&&!this.useRawValueToEscape&&(i=vn(i));const _=f.safeValue(i);if(e=e.replace(a[0],_),u?(f.regex.lastIndex+=i.length,f.regex.lastIndex-=a[0].length):f.regex.lastIndex=0,s++,s>=this.maxReplaces)break}}),e}nest(e,r,n={}){let o,a,i;const s=(l,c)=>{const d=this.nestingOptionsSeparator;if(l.indexOf(d)<0)return l;const u=l.split(new RegExp(`${d}[ ]*{`));let h=`{${u[1]}`;l=u[0],h=this.interpolate(h,i);const f=h.match(/'/g),v=h.match(/"/g);((f?.length??0)%2===0&&!v||v.length%2!==0)&&(h=h.replace(/'/g,'"'));try{i=JSON.parse(h),c&&(i={...c,...i})}catch(_){return this.logger.warn(`failed parsing options string in nesting for key ${l}`,_),`${l}${d}${h}`}return i.defaultValue&&i.defaultValue.indexOf(this.prefix)>-1&&delete i.defaultValue,l};for(;o=this.nestingRegexp.exec(e);){let l=[];i={...n},i=i.replace&&!U(i.replace)?i.replace:i,i.applyPostProcessor=!1,delete i.defaultValue;const c=/{.*}/.test(o[1])?o[1].lastIndexOf("}")+1:o[1].indexOf(this.formatSeparator);if(c!==-1&&(l=o[1].slice(c).split(this.formatSeparator).map(d=>d.trim()).filter(Boolean),o[1]=o[1].slice(0,c)),a=r(s.call(this,o[1].trim(),i),i),a&&o[0]===e&&!U(a))return a;U(a)||(a=vn(a)),a||(this.logger.warn(`missed to resolve ${o[1]} for nesting ${e}`),a=""),l.length&&(a=l.reduce((d,u)=>this.format(d,u,n.lng,{...n,interpolationkey:o[1].trim()}),a.trim())),e=e.replace(o[0],a),this.regexp.lastIndex=0}return e}}const Nl=t=>{let e=t.toLowerCase().trim();const r={};if(t.indexOf("(")>-1){const n=t.split("(");e=n[0].toLowerCase().trim();const o=n[1].substring(0,n[1].length-1);e==="currency"&&o.indexOf(":")<0?r.currency||(r.currency=o.trim()):e==="relativetime"&&o.indexOf(":")<0?r.range||(r.range=o.trim()):o.split(";").forEach(i=>{if(i){const[s,...l]=i.split(":"),c=l.join(":").trim().replace(/^'+|'+$/g,""),d=s.trim();r[d]||(r[d]=c),c==="false"&&(r[d]=!1),c==="true"&&(r[d]=!0),isNaN(c)||(r[d]=parseInt(c,10))}})}return{formatName:e,formatOptions:r}},xn=t=>{const e={};return(r,n,o)=>{let a=o;o&&o.interpolationkey&&o.formatParams&&o.formatParams[o.interpolationkey]&&o[o.interpolationkey]&&(a={...a,[o.interpolationkey]:void 0});const i=n+JSON.stringify(a);let s=e[i];return s||(s=t(Rt(n),o),e[i]=s),s(r)}},Rl=t=>(e,r,n)=>t(Rt(r),n)(e);class bl{constructor(e={}){this.logger=be.create("formatter"),this.options=e,this.init(e)}init(e,r={interpolation:{}}){this.formatSeparator=r.interpolation.formatSeparator||",";const n=r.cacheInBuiltFormats?xn:Rl;this.formats={number:n((o,a)=>{const i=new Intl.NumberFormat(o,{...a});return s=>i.format(s)}),currency:n((o,a)=>{const i=new Intl.NumberFormat(o,{...a,style:"currency"});return s=>i.format(s)}),datetime:n((o,a)=>{const i=new Intl.DateTimeFormat(o,{...a});return s=>i.format(s)}),relativetime:n((o,a)=>{const i=new Intl.RelativeTimeFormat(o,{...a});return s=>i.format(s,a.range||"day")}),list:n((o,a)=>{const i=new Intl.ListFormat(o,{...a});return s=>i.format(s)})}}add(e,r){this.formats[e.toLowerCase().trim()]=r}addCached(e,r){this.formats[e.toLowerCase().trim()]=xn(r)}format(e,r,n,o={}){const a=r.split(this.formatSeparator);if(a.length>1&&a[0].indexOf("(")>1&&a[0].indexOf(")")<0&&a.find(s=>s.indexOf(")")>-1)){const s=a.findIndex(l=>l.indexOf(")")>-1);a[0]=[a[0],...a.splice(1,s)].join(this.formatSeparator)}return a.reduce((s,l)=>{const{formatName:c,formatOptions:d}=Nl(l);if(this.formats[c]){let u=s;try{const h=o?.formatParams?.[o.interpolationkey]||{},f=h.locale||h.lng||o.locale||o.lng||n;u=this.formats[c](s,f,{...d,...o,...h})}catch(h){this.logger.warn(h)}return u}else this.logger.warn(`there was no format function for ${c}`);return s},e)}}const Ol=(t,e)=>{t.pending[e]!==void 0&&(delete t.pending[e],t.pendingCount--)};class Ll extends nr{constructor(e,r,n,o={}){super(),this.backend=e,this.store=r,this.services=n,this.languageUtils=n.languageUtils,this.options=o,this.logger=be.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=o.maxParallelReads||10,this.readingCalls=0,this.maxRetries=o.maxRetries>=0?o.maxRetries:5,this.retryTimeout=o.retryTimeout>=1?o.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(n,o.backend,o)}queueLoad(e,r,n,o){const a={},i={},s={},l={};return e.forEach(c=>{let d=!0;r.forEach(u=>{const h=`${c}|${u}`;!n.reload&&this.store.hasResourceBundle(c,u)?this.state[h]=2:this.state[h]<0||(this.state[h]===1?i[h]===void 0&&(i[h]=!0):(this.state[h]=1,d=!1,i[h]===void 0&&(i[h]=!0),a[h]===void 0&&(a[h]=!0),l[u]===void 0&&(l[u]=!0)))}),d||(s[c]=!0)}),(Object.keys(a).length||Object.keys(i).length)&&this.queue.push({pending:i,pendingCount:Object.keys(i).length,loaded:{},errors:[],callback:o}),{toLoad:Object.keys(a),pending:Object.keys(i),toLoadLanguages:Object.keys(s),toLoadNamespaces:Object.keys(l)}}loaded(e,r,n){const o=e.split("|"),a=o[0],i=o[1];r&&this.emit("failedLoading",a,i,r),!r&&n&&this.store.addResourceBundle(a,i,n,void 0,void 0,{skipCopy:!0}),this.state[e]=r?-1:2,r&&n&&(this.state[e]=0);const s={};this.queue.forEach(l=>{dl(l.loaded,[a],i),Ol(l,e),r&&l.errors.push(r),l.pendingCount===0&&!l.done&&(Object.keys(l.loaded).forEach(c=>{s[c]||(s[c]={});const d=l.loaded[c];d.length&&d.forEach(u=>{s[c][u]===void 0&&(s[c][u]=!0)})}),l.done=!0,l.errors.length?l.callback(l.errors):l.callback())}),this.emit("loaded",s),this.queue=this.queue.filter(l=>!l.done)}read(e,r,n,o=0,a=this.retryTimeout,i){if(!e.length)return i(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:r,fcName:n,tried:o,wait:a,callback:i});return}this.readingCalls++;const s=(c,d)=>{if(this.readingCalls--,this.waitingReads.length>0){const u=this.waitingReads.shift();this.read(u.lng,u.ns,u.fcName,u.tried,u.wait,u.callback)}if(c&&d&&o<this.maxRetries){setTimeout(()=>{this.read.call(this,e,r,n,o+1,a*2,i)},a);return}i(c,d)},l=this.backend[n].bind(this.backend);if(l.length===2){try{const c=l(e,r);c&&typeof c.then=="function"?c.then(d=>s(null,d)).catch(s):s(null,c)}catch(c){s(c)}return}return l(e,r,s)}prepareLoading(e,r,n={},o){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),o&&o();U(e)&&(e=this.languageUtils.toResolveHierarchy(e)),U(r)&&(r=[r]);const a=this.queueLoad(e,r,n,o);if(!a.toLoad.length)return a.pending.length||o(),null;a.toLoad.forEach(i=>{this.loadOne(i)})}load(e,r,n){this.prepareLoading(e,r,{},n)}reload(e,r,n){this.prepareLoading(e,r,{reload:!0},n)}loadOne(e,r=""){const n=e.split("|"),o=n[0],a=n[1];this.read(o,a,"read",void 0,void 0,(i,s)=>{i&&this.logger.warn(`${r}loading namespace ${a} for language ${o} failed`,i),!i&&s&&this.logger.log(`${r}loaded namespace ${a} for language ${o}`,s),this.loaded(e,i,s)})}saveMissing(e,r,n,o,a,i={},s=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(r)){this.logger.warn(`did not save key "${n}" as the namespace "${r}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(n==null||n==="")){if(this.backend?.create){const l={...i,isUpdate:a},c=this.backend.create.bind(this.backend);if(c.length<6)try{let d;c.length===5?d=c(e,r,n,o,l):d=c(e,r,n,o),d&&typeof d.then=="function"?d.then(u=>s(null,u)).catch(s):s(null,d)}catch(d){s(d)}else c(e,r,n,o,s,l)}!e||!e[0]||this.store.addResource(e[0],r,n,o)}}}const Dn=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:t=>{let e={};if(typeof t[1]=="object"&&(e=t[1]),U(t[1])&&(e.defaultValue=t[1]),U(t[2])&&(e.tDescription=t[2]),typeof t[2]=="object"||typeof t[3]=="object"){const r=t[3]||t[2];Object.keys(r).forEach(n=>{e[n]=r[n]})}return e},interpolation:{escapeValue:!0,format:t=>t,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),wn=t=>(U(t.ns)&&(t.ns=[t.ns]),U(t.fallbackLng)&&(t.fallbackLng=[t.fallbackLng]),U(t.fallbackNS)&&(t.fallbackNS=[t.fallbackNS]),t.supportedLngs?.indexOf?.("cimode")<0&&(t.supportedLngs=t.supportedLngs.concat(["cimode"])),typeof t.initImmediate=="boolean"&&(t.initAsync=t.initImmediate),t),Bt=()=>{},xl=t=>{Object.getOwnPropertyNames(Object.getPrototypeOf(t)).forEach(r=>{typeof t[r]=="function"&&(t[r]=t[r].bind(t))})};class bt extends nr{constructor(e={},r){if(super(),this.options=wn(e),this.services={},this.logger=be,this.modules={external:[]},xl(this),r&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,r),this;setTimeout(()=>{this.init(e,r)},0)}}init(e={},r){this.isInitializing=!0,typeof e=="function"&&(r=e,e={}),e.defaultNS==null&&e.ns&&(U(e.ns)?e.defaultNS=e.ns:e.ns.indexOf("translation")<0&&(e.defaultNS=e.ns[0]));const n=Dn();this.options={...n,...this.options,...wn(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator);const o=c=>c?typeof c=="function"?new c:c:null;if(!this.options.isClone){this.modules.logger?be.init(o(this.modules.logger),this.options):be.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:c=bl;const d=new Rn(this.options);this.store=new Sn(this.options.resources,this.options);const u=this.services;u.logger=be,u.resourceStore=this.store,u.languageUtils=d,u.pluralResolver=new Cl(d,{prepend:this.options.pluralSeparator,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),this.options.interpolation.format&&this.options.interpolation.format!==n.interpolation.format&&this.logger.deprecate("init: you are still using the legacy format function, please use the new approach: https://www.i18next.com/translation-function/formatting"),c&&(!this.options.interpolation.format||this.options.interpolation.format===n.interpolation.format)&&(u.formatter=o(c),u.formatter.init&&u.formatter.init(u,this.options),this.options.interpolation.format=u.formatter.format.bind(u.formatter)),u.interpolator=new Sl(this.options),u.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},u.backendConnector=new Ll(o(this.modules.backend),u.resourceStore,u,this.options),u.backendConnector.on("*",(f,...v)=>{this.emit(f,...v)}),this.modules.languageDetector&&(u.languageDetector=o(this.modules.languageDetector),u.languageDetector.init&&u.languageDetector.init(u,this.options.detection,this.options)),this.modules.i18nFormat&&(u.i18nFormat=o(this.modules.i18nFormat),u.i18nFormat.init&&u.i18nFormat.init(this)),this.translator=new Zt(this.services,this.options),this.translator.on("*",(f,...v)=>{this.emit(f,...v)}),this.modules.external.forEach(f=>{f.init&&f.init(this)})}if(this.format=this.options.interpolation.format,r||(r=Bt),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const c=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);c.length>0&&c[0]!=="dev"&&(this.options.lng=c[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(c=>{this[c]=(...d)=>this.store[c](...d)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(c=>{this[c]=(...d)=>(this.store[c](...d),this)});const s=Et(),l=()=>{const c=(d,u)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),s.resolve(u),r(d,u)};if(this.languages&&!this.isInitialized)return c(null,this.t.bind(this));this.changeLanguage(this.options.lng,c)};return this.options.resources||!this.options.initAsync?l():setTimeout(l,0),s}loadResources(e,r=Bt){let n=r;const o=U(e)?e:this.language;if(typeof e=="function"&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(o?.toLowerCase()==="cimode"&&(!this.options.preload||this.options.preload.length===0))return n();const a=[],i=s=>{if(!s||s==="cimode")return;this.services.languageUtils.toResolveHierarchy(s).forEach(c=>{c!=="cimode"&&a.indexOf(c)<0&&a.push(c)})};o?i(o):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(l=>i(l)),this.options.preload?.forEach?.(s=>i(s)),this.services.backendConnector.load(a,this.options.ns,s=>{!s&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(s)})}else n(null)}reloadResources(e,r,n){const o=Et();return typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r=void 0),e||(e=this.languages),r||(r=this.options.ns),n||(n=Bt),this.services.backendConnector.reload(e,r,a=>{o.resolve(),n(a)}),o}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return e.type==="backend"&&(this.modules.backend=e),(e.type==="logger"||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type==="languageDetector"&&(this.modules.languageDetector=e),e.type==="i18nFormat"&&(this.modules.i18nFormat=e),e.type==="postProcessor"&&Ko.addPostProcessor(e),e.type==="formatter"&&(this.modules.formatter=e),e.type==="3rdParty"&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&!(["cimode","dev"].indexOf(e)>-1)){for(let r=0;r<this.languages.length;r++){const n=this.languages[r];if(!(["cimode","dev"].indexOf(n)>-1)&&this.store.hasLanguageSomeTranslations(n)){this.resolvedLanguage=n;break}}!this.resolvedLanguage&&this.languages.indexOf(e)<0&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,r){this.isLanguageChangingTo=e;const n=Et();this.emit("languageChanging",e);const o=s=>{this.language=s,this.languages=this.services.languageUtils.toResolveHierarchy(s),this.resolvedLanguage=void 0,this.setResolvedLanguage(s)},a=(s,l)=>{l?this.isLanguageChangingTo===e&&(o(l),this.translator.changeLanguage(l),this.isLanguageChangingTo=void 0,this.emit("languageChanged",l),this.logger.log("languageChanged",l)):this.isLanguageChangingTo=void 0,n.resolve((...c)=>this.t(...c)),r&&r(s,(...c)=>this.t(...c))},i=s=>{!e&&!s&&this.services.languageDetector&&(s=[]);const l=U(s)?s:s&&s[0],c=this.store.hasLanguageSomeTranslations(l)?l:this.services.languageUtils.getBestMatchFromCodes(U(s)?[s]:s);c&&(this.language||o(c),this.translator.language||this.translator.changeLanguage(c),this.services.languageDetector?.cacheUserLanguage?.(c)),this.loadResources(c,d=>{a(d,c)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?i(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(i):this.services.languageDetector.detect(i):i(e),n}getFixedT(e,r,n){const o=(a,i,...s)=>{let l;typeof i!="object"?l=this.options.overloadTranslationOptionHandler([a,i].concat(s)):l={...i},l.lng=l.lng||o.lng,l.lngs=l.lngs||o.lngs,l.ns=l.ns||o.ns,l.keyPrefix!==""&&(l.keyPrefix=l.keyPrefix||n||o.keyPrefix);const c=this.options.keySeparator||".";let d;return l.keyPrefix&&Array.isArray(a)?d=a.map(u=>(typeof u=="function"&&(u=qt(u,{...this.options,...i})),`${l.keyPrefix}${c}${u}`)):(typeof a=="function"&&(a=qt(a,{...this.options,...i})),d=l.keyPrefix?`${l.keyPrefix}${c}${a}`:a),this.t(d,l)};return U(e)?o.lng=e:o.lngs=e,o.ns=r,o.keyPrefix=n,o}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,r={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const n=r.lng||this.resolvedLanguage||this.languages[0],o=this.options?this.options.fallbackLng:!1,a=this.languages[this.languages.length-1];if(n.toLowerCase()==="cimode")return!0;const i=(s,l)=>{const c=this.services.backendConnector.state[`${s}|${l}`];return c===-1||c===0||c===2};if(r.precheck){const s=r.precheck(this,i);if(s!==void 0)return s}return!!(this.hasResourceBundle(n,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||i(n,e)&&(!o||i(a,e)))}loadNamespaces(e,r){const n=Et();return this.options.ns?(U(e)&&(e=[e]),e.forEach(o=>{this.options.ns.indexOf(o)<0&&this.options.ns.push(o)}),this.loadResources(o=>{n.resolve(),r&&r(o)}),n):(r&&r(),Promise.resolve())}loadLanguages(e,r){const n=Et();U(e)&&(e=[e]);const o=this.options.preload||[],a=e.filter(i=>o.indexOf(i)<0&&this.services.languageUtils.isSupportedCode(i));return a.length?(this.options.preload=o.concat(a),this.loadResources(i=>{n.resolve(),r&&r(i)}),n):(r&&r(),Promise.resolve())}dir(e){if(e||(e=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language)),!e)return"rtl";try{const o=new Intl.Locale(e);if(o&&o.getTextInfo){const a=o.getTextInfo();if(a&&a.direction)return a.direction}}catch{}const r=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],n=this.services?.languageUtils||new Rn(Dn());return e.toLowerCase().indexOf("-latn")>1?"ltr":r.indexOf(n.getLanguagePartFromCode(e))>-1||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(e={},r){return new bt(e,r)}cloneInstance(e={},r=Bt){const n=e.forkResourceStore;n&&delete e.forkResourceStore;const o={...this.options,...e,isClone:!0},a=new bt(o);if((e.debug!==void 0||e.prefix!==void 0)&&(a.logger=a.logger.clone(e)),["store","services","language"].forEach(s=>{a[s]=this[s]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},n){const s=Object.keys(this.store.data).reduce((l,c)=>(l[c]={...this.store.data[c]},l[c]=Object.keys(l[c]).reduce((d,u)=>(d[u]={...l[c][u]},d),l[c]),l),{});a.store=new Sn(s,o),a.services.resourceStore=a.store}return a.translator=new Zt(a.services,o),a.translator.on("*",(s,...l)=>{a.emit(s,...l)}),a.init(o,r),a.translator.options=o,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const pe=bt.createInstance();pe.createInstance=bt.createInstance;pe.createInstance;pe.dir;pe.init;pe.loadResources;pe.reloadResources;pe.use;pe.changeLanguage;pe.getFixedT;const op=pe.t;pe.exists;pe.setDefaultNamespace;pe.hasLoadedNamespace;pe.loadNamespaces;pe.loadLanguages;var Er,Pn;function Dl(){return Pn||(Pn=1,Er={area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0}),Er}var wl=Dl();const Pl=Is(wl);var Al=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function An(t){var e={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},r=t.match(/<\/?([^\s]+?)[/\s>]/);if(r&&(e.name=r[1],(Pl[r[1]]||t.charAt(t.length-2)==="/")&&(e.voidElement=!0),e.name.startsWith("!--"))){var n=t.indexOf("-->");return{type:"comment",comment:n!==-1?t.slice(4,n):""}}for(var o=new RegExp(Al),a=null;(a=o.exec(t))!==null;)if(a[0].trim())if(a[1]){var i=a[1].trim(),s=[i,""];i.indexOf("=")>-1&&(s=i.split("=")),e.attrs[s[0]]=s[1],o.lastIndex--}else a[2]&&(e.attrs[a[2]]=a[3].trim().substring(1,a[3].length-1));return e}var Tl=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,Il=/^\s*$/,kl=Object.create(null);function Wo(t,e){switch(e.type){case"text":return t+e.content;case"tag":return t+="<"+e.name+(e.attrs?(function(r){var n=[];for(var o in r)n.push(o+'="'+r[o]+'"');return n.length?" "+n.join(" "):""})(e.attrs):"")+(e.voidElement?"/>":">"),e.voidElement?t:t+e.children.reduce(Wo,"")+"</"+e.name+">";case"comment":return t+"<!--"+e.comment+"-->"}}var Hl={parse:function(t,e){e||(e={}),e.components||(e.components=kl);var r,n=[],o=[],a=-1,i=!1;if(t.indexOf("<")!==0){var s=t.indexOf("<");n.push({type:"text",content:s===-1?t:t.substring(0,s)})}return t.replace(Tl,function(l,c){if(i){if(l!=="</"+r.name+">")return;i=!1}var d,u=l.charAt(1)!=="/",h=l.startsWith("<!--"),f=c+l.length,v=t.charAt(f);if(h){var _=An(l);return a<0?(n.push(_),n):((d=o[a]).children.push(_),n)}if(u&&(a++,(r=An(l)).type==="tag"&&e.components[r.name]&&(r.type="component",i=!0),r.voidElement||i||!v||v==="<"||r.children.push({type:"text",content:t.slice(f,t.indexOf("<",f))}),a===0&&n.push(r),(d=o[a-1])&&d.children.push(r),o[a]=r),(!u||r.voidElement)&&(a>-1&&(r.voidElement||r.name===l.slice(2,-1))&&(a--,r=a===-1?n:o[a]),!i&&v!=="<"&&v)){d=a===-1?n:o[a].children;var S=t.indexOf("<",f),C=t.slice(f,S===-1?void 0:S);Il.test(C)&&(C=" "),(S>-1&&a+d.length>=0||C!==" ")&&d.push({type:"text",content:C})}}),n},stringify:function(t){return t.reduce(function(e,r){return e+Wo("",r)},"")}};const Kt=(t,e,r,n)=>{const o=[r,{code:e,...n||{}}];if(t?.services?.logger?.forward)return t.services.logger.forward(o,"warn","react-i18next::",!0);Ce(o[0])&&(o[0]=`react-i18next:: ${o[0]}`),t?.services?.logger?.warn?t.services.logger.warn(...o):console?.warn&&console.warn(...o)},Tn={},or=(t,e,r,n)=>{Ce(r)&&Tn[r]||(Ce(r)&&(Tn[r]=new Date),Kt(t,e,r,n))},Yo=(t,e)=>()=>{if(t.isInitialized)e();else{const r=()=>{setTimeout(()=>{t.off("initialized",r)},0),e()};t.on("initialized",r)}},kr=(t,e,r)=>{t.loadNamespaces(e,Yo(t,r))},In=(t,e,r,n)=>{if(Ce(r)&&(r=[r]),t.options.preload&&t.options.preload.indexOf(e)>-1)return kr(t,r,n);r.forEach(o=>{t.options.ns.indexOf(o)<0&&t.options.ns.push(o)}),t.loadLanguages(e,Yo(t,n))},Ml=(t,e,r={})=>!e.languages||!e.languages.length?(or(e,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:e.languages}),!0):e.hasLoadedNamespace(t,{lng:r.lng,precheck:(n,o)=>{if(r.bindI18n&&r.bindI18n.indexOf("languageChanging")>-1&&n.services.backendConnector.backend&&n.isLanguageChangingTo&&!o(n.isLanguageChangingTo,t))return!1}}),Ce=t=>typeof t=="string",je=t=>typeof t=="object"&&t!==null,jl=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,Fl={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},Bl=t=>Fl[t],Vl=t=>t.replace(jl,Bl);let Hr={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:Vl};const Ul=(t={})=>{Hr={...Hr,...t}},Go=()=>Hr;let Jo;const $l=t=>{Jo=t},Gr=()=>Jo,vr=(t,e)=>{if(!t)return!1;const r=t.props?.children??t.children;return e?r.length>0:!!r},_r=t=>{if(!t)return[];const e=t.props?.children??t.children;return t.props?.i18nIsDynamicList?ct(e):e},Kl=t=>Array.isArray(t)&&t.every(g.isValidElement),ct=t=>Array.isArray(t)?t:[t],zl=(t,e)=>{const r={...e};return r.props=Object.assign(t.props,e.props),r},Xo=(t,e,r,n)=>{if(!t)return"";let o="";const a=ct(t),i=e?.transSupportBasicHtmlNodes?e.transKeepBasicHtmlNodesFor??[]:[];return a.forEach((s,l)=>{if(Ce(s)){o+=`${s}`;return}if(g.isValidElement(s)){const{props:c,type:d}=s,u=Object.keys(c).length,h=i.indexOf(d)>-1,f=c.children;if(!f&&h&&!u){o+=`<${d}/>`;return}if(!f&&(!h||u)||c.i18nIsDynamicList){o+=`<${l}></${l}>`;return}if(h&&u===1&&Ce(f)){o+=`<${d}>${f}</${d}>`;return}const v=Xo(f,e,r,n);o+=`<${l}>${v}</${l}>`;return}if(s===null){Kt(r,"TRANS_NULL_VALUE","Passed in a null value as child",{i18nKey:n});return}if(je(s)){const{format:c,...d}=s,u=Object.keys(d);if(u.length===1){const h=c?`${u[0]}, ${c}`:u[0];o+=`{{${h}}}`;return}Kt(r,"TRANS_INVALID_OBJ","Invalid child - Object should only have keys {{ value, format }} (format is optional).",{i18nKey:n,child:s});return}Kt(r,"TRANS_INVALID_VAR","Passed in a variable like {number} - pass variables for interpolation as full objects like {{number}}.",{i18nKey:n,child:s})}),o},Wl=(t,e=[],r={})=>{if(!t)return t;const n=Object.keys(r),o=[...e,...n];let a="",i=0;for(;i<t.length;)if(t[i]==="<"){let s=!1;const l=t.slice(i).match(/^<\/(\d+|[a-zA-Z][a-zA-Z0-9-]*)>/);if(l){const c=l[1];(/^\d+$/.test(c)||o.includes(c))&&(s=!0,a+=l[0],i+=l[0].length)}if(!s){const c=t.slice(i).match(/^<(\d+|[a-zA-Z][a-zA-Z0-9-]*)(\s+[\w-]+(?:=(?:"[^"]*"|'[^']*'|[^\s>]+))?)*\s*(\/)?>/);if(c){const d=c[1];(/^\d+$/.test(d)||o.includes(d))&&(s=!0,a+=c[0],i+=c[0].length)}}s||(a+="<",i+=1)}else a+=t[i],i+=1;return a},Yl=(t,e,r,n,o,a,i)=>{if(r==="")return[];const s=o.transKeepBasicHtmlNodesFor||[],l=r&&new RegExp(s.map(R=>`<${R}`).join("|")).test(r);if(!t&&!e&&!l&&!i)return[r];const c=e??{},d=R=>{ct(R).forEach(b=>{Ce(b)||(vr(b)?d(_r(b)):je(b)&&!g.isValidElement(b)&&Object.assign(c,b))})};d(t);const u=Wl(r,s,c),h=Hl.parse(`<0>${u}</0>`),f={...c,...a},v=(R,A,b)=>{const w=_r(R),T=S(w,A.children,b);return Kl(w)&&T.length===0||R.props?.i18nIsDynamicList?w:T},_=(R,A,b,w,T)=>{R.dummy?(R.children=A,b.push(g.cloneElement(R,{key:w},T?void 0:A))):b.push(...g.Children.map([R],E=>{const L={...E.props};return delete L.i18nIsDynamicList,g.createElement(E.type,{...L,key:w,ref:E.props.ref??E.ref},T?null:A)}))},S=(R,A,b)=>{const w=ct(R);return ct(A).reduce((E,L,j)=>{const H=L.children?.[0]?.content&&n.services.interpolator.interpolate(L.children[0].content,f,n.language);if(L.type==="tag"){let z=w[parseInt(L.name,10)];!z&&e&&(z=e[L.name]),b.length===1&&!z&&(z=b[0][L.name]),z||(z={});const B=Object.keys(L.attrs).length!==0?zl({props:L.attrs},z):z,W=g.isValidElement(B),G=W&&vr(L,!0)&&!L.voidElement,ge=l&&je(B)&&B.dummy&&!W,ue=je(e)&&Object.hasOwnProperty.call(e,L.name);if(Ce(B)){const X=n.services.interpolator.interpolate(B,f,n.language);E.push(X)}else if(vr(B)||G){const X=v(B,L,b);_(B,X,E,j)}else if(ge){const X=S(w,L.children,b);_(B,X,E,j)}else if(Number.isNaN(parseFloat(L.name)))if(ue){const X=v(B,L,b);_(B,X,E,j,L.voidElement)}else if(o.transSupportBasicHtmlNodes&&s.indexOf(L.name)>-1)if(L.voidElement)E.push(g.createElement(L.name,{key:`${L.name}-${j}`}));else{const X=S(w,L.children,b);E.push(g.createElement(L.name,{key:`${L.name}-${j}`},X))}else if(L.voidElement)E.push(`<${L.name} />`);else{const X=S(w,L.children,b);E.push(`<${L.name}>${X}</${L.name}>`)}else if(je(B)&&!W){const X=L.children[0]?H:null;X&&E.push(X)}else _(B,H,E,j,L.children.length!==1||!H)}else if(L.type==="text"){const z=o.transWrapTextNodes,B=i?o.unescape(n.services.interpolator.interpolate(L.content,f,n.language)):n.services.interpolator.interpolate(L.content,f,n.language);z?E.push(g.createElement(z,{key:`${L.name}-${j}`},B)):E.push(B)}return E},[])},C=S([{dummy:!0,children:t||[]}],h,ct(t||[]));return _r(C[0])},qo=(t,e,r)=>{const n=t.key||e,o=g.cloneElement(t,{key:n});if(!o.props||!o.props.children||r.indexOf(`${e}/>`)<0&&r.indexOf(`${e} />`)<0)return o;function a(){return g.createElement(g.Fragment,null,o)}return g.createElement(a,{key:n})},Gl=(t,e)=>t.map((r,n)=>qo(r,n,e)),Jl=(t,e)=>{const r={};return Object.keys(t).forEach(n=>{Object.assign(r,{[n]:qo(t[n],n,e)})}),r},Xl=(t,e,r,n)=>t?Array.isArray(t)?Gl(t,e):je(t)?Jl(t,e):(or(r,"TRANS_INVALID_COMPONENTS",'<Trans /> "components" prop expects an object or array',{i18nKey:n}),null):null,ql=t=>!je(t)||Array.isArray(t)?!1:Object.keys(t).reduce((e,r)=>e&&Number.isNaN(Number.parseFloat(r)),!0);function Zl({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a={},values:i,defaults:s,components:l,ns:c,i18n:d,t:u,shouldUnescape:h,...f}){const v=d||Gr();if(!v)return or(v,"NO_I18NEXT_INSTANCE","Trans: You need to pass in an i18next instance using i18nextReactModule",{i18nKey:n}),t;const _=u||v.t.bind(v)||(G=>G),S={...Go(),...v.options?.react};let C=c||_.ns||v.options?.defaultNS;C=Ce(C)?[C]:C||["translation"];const R=Xo(t,S,v,n),A=s||a?.defaultValue||R||S.transEmptyNodeValue||(typeof n=="function"?qt(n):n),{hashTransKey:b}=S,w=n||(b?b(R||A):R||A);v.options?.interpolation?.defaultVariables&&(i=i&&Object.keys(i).length>0?{...i,...v.options.interpolation.defaultVariables}:{...v.options.interpolation.defaultVariables});const T=i||e!==void 0&&!v.options?.interpolation?.alwaysFormat||!t?a.interpolation:{interpolation:{...a.interpolation,prefix:"#$?",suffix:"?$#"}},E={...a,context:o||a.context,count:e,...i,...T,defaultValue:s||a?.defaultValue,ns:C};let L=w?_(w,E):A;L===w&&A&&(L=A);const j=Xl(l,L,v,n);let H=j||t,z=null;ql(j)&&(z=j,H=t);const B=Yl(H,z,L,v,S,E,h),W=r??S.defaultTransParent;return W?g.createElement(W,f,B):B}const Ql={type:"3rdParty",init(t){Ul(t.options.react),$l(t)}},Zo=g.createContext();class ec{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}function tc({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a={},values:i,defaults:s,components:l,ns:c,i18n:d,t:u,shouldUnescape:h,...f}){const{i18n:v,defaultNS:_}=g.useContext(Zo)||{},S=d||v||Gr(),C=u||S?.t.bind(S);return Zl({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a,values:i,defaults:s,components:l,ns:c||C?.ns||_||S?.options?.defaultNS,i18n:S,t:u,shouldUnescape:h,...f})}var yr={exports:{}},Cr={};var kn;function rc(){if(kn)return Cr;kn=1;var t=ks();function e(u,h){return u===h&&(u!==0||1/u===1/h)||u!==u&&h!==h}var r=typeof Object.is=="function"?Object.is:e,n=t.useState,o=t.useEffect,a=t.useLayoutEffect,i=t.useDebugValue;function s(u,h){var f=h(),v=n({inst:{value:f,getSnapshot:h}}),_=v[0].inst,S=v[1];return a(function(){_.value=f,_.getSnapshot=h,l(_)&&S({inst:_})},[u,f,h]),o(function(){return l(_)&&S({inst:_}),u(function(){l(_)&&S({inst:_})})},[u]),i(f),f}function l(u){var h=u.getSnapshot;u=u.value;try{var f=h();return!r(u,f)}catch{return!0}}function c(u,h){return h()}var d=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?c:s;return Cr.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:d,Cr}var Hn;function nc(){return Hn||(Hn=1,yr.exports=rc()),yr.exports}var oc=nc();const ac=(t,e)=>Ce(e)?e:je(e)&&Ce(e.defaultValue)?e.defaultValue:Array.isArray(t)?t[t.length-1]:t,ic={t:ac,ready:!1},sc=()=>()=>{},Qo=(t,e={})=>{const{i18n:r}=e,{i18n:n,defaultNS:o}=g.useContext(Zo)||{},a=r||n||Gr();a&&!a.reportNamespaces&&(a.reportNamespaces=new ec),a||or(a,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const i=g.useMemo(()=>({...Go(),...a?.options?.react,...e}),[a,e]),{useSuspense:s,keyPrefix:l}=i,c=g.useMemo(()=>{const b=o||a?.options?.defaultNS;return Ce(b)?[b]:b||["translation"]},[t,o,a]);a?.reportNamespaces?.addUsedNamespaces?.(c);const d=g.useRef(0),u=g.useCallback(b=>{if(!a)return sc;const{bindI18n:w,bindI18nStore:T}=i,E=()=>{d.current+=1,b()};return w&&a.on(w,E),T&&a.store.on(T,E),()=>{w&&w.split(" ").forEach(L=>a.off(L,E)),T&&T.split(" ").forEach(L=>a.store.off(L,E))}},[a,i]),h=g.useRef(),f=g.useCallback(()=>{if(!a)return ic;const b=!!(a.isInitialized||a.initializedStoreOnce)&&c.every(H=>Ml(H,a,i)),w=e.lng||a.language,T=d.current,E=h.current;if(E&&E.ready===b&&E.lng===w&&E.keyPrefix===l&&E.revision===T)return E;const j={t:a.getFixedT(w,i.nsMode==="fallback"?c:c[0],l),ready:b,lng:w,keyPrefix:l,revision:T};return h.current=j,j},[a,c,l,i,e.lng]),[v,_]=g.useState(0),{t:S,ready:C}=oc.useSyncExternalStore(u,f,f);g.useEffect(()=>{if(a&&!C&&!s){const b=()=>_(w=>w+1);e.lng?In(a,e.lng,c,b):kr(a,c,b)}},[a,e.lng,c,C,s,v]);const R=a||{},A=g.useMemo(()=>{const b=[S,R,C];return b.t=S,b.i18n=R,b.ready=C,b},[S,R,C]);if(a&&s&&!C)throw new Promise(b=>{const w=()=>b();e.lng?In(a,e.lng,c,w):kr(a,c,w)});return A},lc=()=>{const{t}=Qo();return N.jsxs("div",{children:[N.jsx("p",{className:"font-medium",children:t("notifications.reloadApp")}),N.jsxs("button",{onClick:()=>location.reload(),className:"underline decoration-solid underline-offset-2",children:[t("common.reloadConnect")," 🔄"]})]})},cc=()=>{async function t(){const e=await pd();if(e!==null){if(e.isLatest||e.currentVersion.includes("-"))return!0;ce.studioMode||!ce.warnOutdatedApp?Ue.warn(`Connect is outdated:
|
|
3
3
|
Current: @currentVersion
|
|
4
4
|
Latest: @latestVersion`,e.currentVersion,e.latestVersion):dt(g.createElement(lc),{type:"connect-warning",toastId:"outdated-app",autoClose:!1})}}g.useEffect(()=>{t().catch(console.error)},[])},uc=ce.routerBasename,ea=`${uc}:display-cookie-banner`,Mn=new Set;let ta=dc();function dc(){try{return localStorage.getItem(ea)!=="false"}catch(t){return console.error(t),!0}}function jn(){return ta}function fc(t){ta=t,localStorage.setItem(ea,JSON.stringify(t))}function hc(t){return Mn.add(t),()=>Mn.delete(t)}const pc=()=>[g.useSyncExternalStore(hc,jn,jn),fc];function re(){return re=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},re.apply(this,arguments)}var le;(function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"})(le||(le={}));const Fn="popstate";function gc(t){t===void 0&&(t={});function e(n,o){let{pathname:a,search:i,hash:s}=n.location;return Ot("",{pathname:a,search:i,hash:s},o.state&&o.state.usr||null,o.state&&o.state.key||"default")}function r(n,o){return typeof o=="string"?o:Dt(o)}return Ec(e,r,null,t)}function K(t,e){if(t===!1||t===null||typeof t>"u")throw new Error(e)}function ft(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}function mc(){return Math.random().toString(36).substr(2,8)}function Bn(t,e){return{usr:t.state,key:t.key,idx:e}}function Ot(t,e,r,n){return r===void 0&&(r=null),re({pathname:typeof t=="string"?t:t.pathname,search:"",hash:""},typeof e=="string"?Ke(e):e,{state:r,key:e&&e.key||n||mc()})}function Dt(t){let{pathname:e="/",search:r="",hash:n=""}=t;return r&&r!=="?"&&(e+=r.charAt(0)==="?"?r:"?"+r),n&&n!=="#"&&(e+=n.charAt(0)==="#"?n:"#"+n),e}function Ke(t){let e={};if(t){let r=t.indexOf("#");r>=0&&(e.hash=t.substr(r),t=t.substr(0,r));let n=t.indexOf("?");n>=0&&(e.search=t.substr(n),t=t.substr(0,n)),t&&(e.pathname=t)}return e}function Ec(t,e,r,n){n===void 0&&(n={});let{window:o=document.defaultView,v5Compat:a=!1}=n,i=o.history,s=le.Pop,l=null,c=d();c==null&&(c=0,i.replaceState(re({},i.state,{idx:c}),""));function d(){return(i.state||{idx:null}).idx}function u(){s=le.Pop;let S=d(),C=S==null?null:S-c;c=S,l&&l({action:s,location:_.location,delta:C})}function h(S,C){s=le.Push;let R=Ot(_.location,S,C);c=d()+1;let A=Bn(R,c),b=_.createHref(R);try{i.pushState(A,"",b)}catch(w){if(w instanceof DOMException&&w.name==="DataCloneError")throw w;o.location.assign(b)}a&&l&&l({action:s,location:_.location,delta:1})}function f(S,C){s=le.Replace;let R=Ot(_.location,S,C);c=d();let A=Bn(R,c),b=_.createHref(R);i.replaceState(A,"",b),a&&l&&l({action:s,location:_.location,delta:0})}function v(S){let C=o.location.origin!=="null"?o.location.origin:o.location.href,R=typeof S=="string"?S:Dt(S);return R=R.replace(/ $/,"%20"),K(C,"No window.location.(origin|href) available to create URL for href: "+R),new URL(R,C)}let _={get action(){return s},get location(){return t(o,i)},listen(S){if(l)throw new Error("A history only accepts one active listener");return o.addEventListener(Fn,u),l=S,()=>{o.removeEventListener(Fn,u),l=null}},createHref(S){return e(o,S)},createURL:v,encodeLocation(S){let C=v(S);return{pathname:C.pathname,search:C.search,hash:C.hash}},push:h,replace:f,go(S){return i.go(S)}};return _}var Z;(function(t){t.data="data",t.deferred="deferred",t.redirect="redirect",t.error="error"})(Z||(Z={}));const vc=new Set(["lazy","caseSensitive","path","id","index","children"]);function _c(t){return t.index===!0}function Qt(t,e,r,n){return r===void 0&&(r=[]),n===void 0&&(n={}),t.map((o,a)=>{let i=[...r,String(a)],s=typeof o.id=="string"?o.id:i.join("-");if(K(o.index!==!0||!o.children,"Cannot specify children on an index route"),K(!n[s],'Found a route id collision on id "'+s+`". Route id's must be globally unique within Data Router usages`),_c(o)){let l=re({},o,e(o),{id:s});return n[s]=l,l}else{let l=re({},o,e(o),{id:s,children:void 0});return n[s]=l,o.children&&(l.children=Qt(o.children,e,i,n)),l}})}function He(t,e,r){return r===void 0&&(r="/"),zt(t,e,r,!1)}function zt(t,e,r,n){let o=typeof e=="string"?Ke(e):e,a=wt(o.pathname||"/",r);if(a==null)return null;let i=ra(t);Cc(i);let s=null;for(let l=0;s==null&&l<i.length;++l){let c=Ac(a);s=wc(i[l],c,n)}return s}function yc(t,e){let{route:r,pathname:n,params:o}=t;return{id:r.id,pathname:n,params:o,data:e[r.id],handle:r.handle}}function ra(t,e,r,n){e===void 0&&(e=[]),r===void 0&&(r=[]),n===void 0&&(n="");let o=(a,i,s)=>{let l={relativePath:s===void 0?a.path||"":s,caseSensitive:a.caseSensitive===!0,childrenIndex:i,route:a};l.relativePath.startsWith("/")&&(K(l.relativePath.startsWith(n),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+n+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(n.length));let c=$e([n,l.relativePath]),d=r.concat(l);a.children&&a.children.length>0&&(K(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),ra(a.children,e,d,c)),!(a.path==null&&!a.index)&&e.push({path:c,score:xc(c,a.index),routesMeta:d})};return t.forEach((a,i)=>{var s;if(a.path===""||!((s=a.path)!=null&&s.includes("?")))o(a,i);else for(let l of na(a.path))o(a,i,l)}),e}function na(t){let e=t.split("/");if(e.length===0)return[];let[r,...n]=e,o=r.endsWith("?"),a=r.replace(/\?$/,"");if(n.length===0)return o?[a,""]:[a];let i=na(n.join("/")),s=[];return s.push(...i.map(l=>l===""?a:[a,l].join("/"))),o&&s.push(...i),s.map(l=>t.startsWith("/")&&l===""?"/":l)}function Cc(t){t.sort((e,r)=>e.score!==r.score?r.score-e.score:Dc(e.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const Sc=/^:[\w-]+$/,Nc=3,Rc=2,bc=1,Oc=10,Lc=-2,Vn=t=>t==="*";function xc(t,e){let r=t.split("/"),n=r.length;return r.some(Vn)&&(n+=Lc),e&&(n+=Rc),r.filter(o=>!Vn(o)).reduce((o,a)=>o+(Sc.test(a)?Nc:a===""?bc:Oc),n)}function Dc(t,e){return t.length===e.length&&t.slice(0,-1).every((n,o)=>n===e[o])?t[t.length-1]-e[e.length-1]:0}function wc(t,e,r){r===void 0&&(r=!1);let{routesMeta:n}=t,o={},a="/",i=[];for(let s=0;s<n.length;++s){let l=n[s],c=s===n.length-1,d=a==="/"?e:e.slice(a.length)||"/",u=Un({path:l.relativePath,caseSensitive:l.caseSensitive,end:c},d),h=l.route;if(!u&&c&&r&&!n[n.length-1].route.index&&(u=Un({path:l.relativePath,caseSensitive:l.caseSensitive,end:!1},d)),!u)return null;Object.assign(o,u.params),i.push({params:o,pathname:$e([a,u.pathname]),pathnameBase:kc($e([a,u.pathnameBase])),route:h}),u.pathnameBase!=="/"&&(a=$e([a,u.pathnameBase]))}return i}function Un(t,e){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[r,n]=Pc(t.path,t.caseSensitive,t.end),o=e.match(r);if(!o)return null;let a=o[0],i=a.replace(/(.)\/+$/,"$1"),s=o.slice(1);return{params:n.reduce((c,d,u)=>{let{paramName:h,isOptional:f}=d;if(h==="*"){let _=s[u]||"";i=a.slice(0,a.length-_.length).replace(/(.)\/+$/,"$1")}const v=s[u];return f&&!v?c[h]=void 0:c[h]=(v||"").replace(/%2F/g,"/"),c},{}),pathname:a,pathnameBase:i,pattern:t}}function Pc(t,e,r){e===void 0&&(e=!1),r===void 0&&(r=!0),ft(t==="*"||!t.endsWith("*")||t.endsWith("/*"),'Route path "'+t+'" will be treated as if it were '+('"'+t.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+t.replace(/\*$/,"/*")+'".'));let n=[],o="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,s,l)=>(n.push({paramName:s,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return t.endsWith("*")?(n.push({paramName:"*"}),o+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?o+="\\/*$":t!==""&&t!=="/"&&(o+="(?:(?=\\/|$))"),[new RegExp(o,e?void 0:"i"),n]}function Ac(t){try{return t.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(e){return ft(!1,'The URL path "'+t+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+e+").")),t}}function wt(t,e){if(e==="/")return t;if(!t.toLowerCase().startsWith(e.toLowerCase()))return null;let r=e.endsWith("/")?e.length-1:e.length,n=t.charAt(r);return n&&n!=="/"?null:t.slice(r)||"/"}function Tc(t,e){e===void 0&&(e="/");let{pathname:r,search:n="",hash:o=""}=typeof t=="string"?Ke(t):t;return{pathname:r?r.startsWith("/")?r:Ic(r,e):e,search:Hc(n),hash:Mc(o)}}function Ic(t,e){let r=e.replace(/\/+$/,"").split("/");return t.split("/").forEach(o=>{o===".."?r.length>1&&r.pop():o!=="."&&r.push(o)}),r.length>1?r.join("/"):"/"}function Sr(t,e,r,n){return"Cannot include a '"+t+"' character in a manually specified "+("`to."+e+"` field ["+JSON.stringify(n)+"]. Please separate it out to the ")+("`to."+r+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function oa(t){return t.filter((e,r)=>r===0||e.route.path&&e.route.path.length>0)}function aa(t,e){let r=oa(t);return e?r.map((n,o)=>o===r.length-1?n.pathname:n.pathnameBase):r.map(n=>n.pathnameBase)}function ia(t,e,r,n){n===void 0&&(n=!1);let o;typeof t=="string"?o=Ke(t):(o=re({},t),K(!o.pathname||!o.pathname.includes("?"),Sr("?","pathname","search",o)),K(!o.pathname||!o.pathname.includes("#"),Sr("#","pathname","hash",o)),K(!o.search||!o.search.includes("#"),Sr("#","search","hash",o)));let a=t===""||o.pathname==="",i=a?"/":o.pathname,s;if(i==null)s=r;else{let u=e.length-1;if(!n&&i.startsWith("..")){let h=i.split("/");for(;h[0]==="..";)h.shift(),u-=1;o.pathname=h.join("/")}s=u>=0?e[u]:"/"}let l=Tc(o,s),c=i&&i!=="/"&&i.endsWith("/"),d=(a||i===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(c||d)&&(l.pathname+="/"),l}const $e=t=>t.join("/").replace(/\/\/+/g,"/"),kc=t=>t.replace(/\/+$/,"").replace(/^\/*/,"/"),Hc=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,Mc=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t;class er{constructor(e,r,n,o){o===void 0&&(o=!1),this.status=e,this.statusText=r||"",this.internal=o,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}}function Lt(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}const sa=["post","put","patch","delete"],jc=new Set(sa),Fc=["get",...sa],Bc=new Set(Fc),Vc=new Set([301,302,303,307,308]),Uc=new Set([307,308]),Nr={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},$c={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},vt={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},Jr=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Kc=t=>({hasErrorBoundary:!!t.hasErrorBoundary}),la="remix-router-transitions";function zc(t){const e=t.window?t.window:typeof window<"u"?window:void 0,r=typeof e<"u"&&typeof e.document<"u"&&typeof e.document.createElement<"u",n=!r;K(t.routes.length>0,"You must provide a non-empty routes array to createRouter");let o;if(t.mapRouteProperties)o=t.mapRouteProperties;else if(t.detectErrorBoundary){let p=t.detectErrorBoundary;o=m=>({hasErrorBoundary:p(m)})}else o=Kc;let a={},i=Qt(t.routes,o,void 0,a),s,l=t.basename||"/",c=t.dataStrategy||Jc,d=t.patchRoutesOnNavigation,u=re({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1,v7_skipActionErrorRevalidation:!1},t.future),h=null,f=new Set,v=null,_=null,S=null,C=t.hydrationData!=null,R=He(i,t.history.location,l),A=!1,b=null;if(R==null&&!d){let p=Ee(404,{pathname:t.history.location.pathname}),{matches:m,route:y}=Qn(i);R=m,b={[y.id]:p}}R&&!t.hydrationData&&It(R,i,t.history.location.pathname).active&&(R=null);let w;if(R)if(R.some(p=>p.route.lazy))w=!1;else if(!R.some(p=>p.route.loader))w=!0;else if(u.v7_partialHydration){let p=t.hydrationData?t.hydrationData.loaderData:null,m=t.hydrationData?t.hydrationData.errors:null;if(m){let y=R.findIndex(O=>m[O.route.id]!==void 0);w=R.slice(0,y+1).every(O=>!jr(O.route,p,m))}else w=R.every(y=>!jr(y.route,p,m))}else w=t.hydrationData!=null;else if(w=!1,R=[],u.v7_partialHydration){let p=It(null,i,t.history.location.pathname);p.active&&p.matches&&(A=!0,R=p.matches)}let T,E={historyAction:t.history.action,location:t.history.location,matches:R,initialized:w,navigation:Nr,restoreScrollPosition:t.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:t.hydrationData&&t.hydrationData.loaderData||{},actionData:t.hydrationData&&t.hydrationData.actionData||null,errors:t.hydrationData&&t.hydrationData.errors||b,fetchers:new Map,blockers:new Map},L=le.Pop,j=!1,H,z=!1,B=new Map,W=null,G=!1,ge=!1,ue=[],X=new Set,ee=new Map,Oe=0,Pe=-1,ie=new Map,fe=new Set,_e=new Map,Ae=new Map,Se=new Set,Ye=new Map,Ge=new Map,Pt;function za(){if(h=t.history.listen(p=>{let{action:m,location:y,delta:O}=p;if(Pt){Pt(),Pt=void 0;return}ft(Ge.size===0||O!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let D=dn({currentLocation:E.location,nextLocation:y,historyAction:m});if(D&&O!=null){let F=new Promise(V=>{Pt=V});t.history.go(O*-1),Tt(D,{state:"blocked",location:y,proceed(){Tt(D,{state:"proceeding",proceed:void 0,reset:void 0,location:y}),F.then(()=>t.history.go(O))},reset(){let V=new Map(E.blockers);V.set(D,vt),me({blockers:V})}});return}return Je(m,y)}),r){cu(e,B);let p=()=>uu(e,B);e.addEventListener("pagehide",p),W=()=>e.removeEventListener("pagehide",p)}return E.initialized||Je(le.Pop,E.location,{initialHydration:!0}),T}function Wa(){h&&h(),W&&W(),f.clear(),H&&H.abort(),E.fetchers.forEach((p,m)=>At(m)),E.blockers.forEach((p,m)=>un(m))}function Ya(p){return f.add(p),()=>f.delete(p)}function me(p,m){m===void 0&&(m={}),E=re({},E,p);let y=[],O=[];u.v7_fetcherPersist&&E.fetchers.forEach((D,F)=>{D.state==="idle"&&(Se.has(F)?O.push(F):y.push(F))}),Se.forEach(D=>{!E.fetchers.has(D)&&!ee.has(D)&&O.push(D)}),[...f].forEach(D=>D(E,{deletedFetchers:O,viewTransitionOpts:m.viewTransitionOpts,flushSync:m.flushSync===!0})),u.v7_fetcherPersist?(y.forEach(D=>E.fetchers.delete(D)),O.forEach(D=>At(D))):O.forEach(D=>Se.delete(D))}function et(p,m,y){var O,D;let{flushSync:F}=y===void 0?{}:y,V=E.actionData!=null&&E.navigation.formMethod!=null&&Ne(E.navigation.formMethod)&&E.navigation.state==="loading"&&((O=p.state)==null?void 0:O._isRedirect)!==!0,I;m.actionData?Object.keys(m.actionData).length>0?I=m.actionData:I=null:V?I=E.actionData:I=null;let k=m.loaderData?qn(E.loaderData,m.loaderData,m.matches||[],m.errors):E.loaderData,P=E.blockers;P.size>0&&(P=new Map(P),P.forEach((Y,he)=>P.set(he,vt)));let M=j===!0||E.navigation.formMethod!=null&&Ne(E.navigation.formMethod)&&((D=p.state)==null?void 0:D._isRedirect)!==!0;s&&(i=s,s=void 0),G||L===le.Pop||(L===le.Push?t.history.push(p,p.state):L===le.Replace&&t.history.replace(p,p.state));let $;if(L===le.Pop){let Y=B.get(E.location.pathname);Y&&Y.has(p.pathname)?$={currentLocation:E.location,nextLocation:p}:B.has(p.pathname)&&($={currentLocation:p,nextLocation:E.location})}else if(z){let Y=B.get(E.location.pathname);Y?Y.add(p.pathname):(Y=new Set([p.pathname]),B.set(E.location.pathname,Y)),$={currentLocation:E.location,nextLocation:p}}me(re({},m,{actionData:I,loaderData:k,historyAction:L,location:p,initialized:!0,navigation:Nr,revalidation:"idle",restoreScrollPosition:hn(p,m.matches||E.matches),preventScrollReset:M,blockers:P}),{viewTransitionOpts:$,flushSync:F===!0}),L=le.Pop,j=!1,z=!1,G=!1,ge=!1,ue=[]}async function rn(p,m){if(typeof p=="number"){t.history.go(p);return}let y=Mr(E.location,E.matches,l,u.v7_prependBasename,p,u.v7_relativeSplatPath,m?.fromRouteId,m?.relative),{path:O,submission:D,error:F}=$n(u.v7_normalizeFormMethod,!1,y,m),V=E.location,I=Ot(E.location,O,m&&m.state);I=re({},I,t.history.encodeLocation(I));let k=m&&m.replace!=null?m.replace:void 0,P=le.Push;k===!0?P=le.Replace:k===!1||D!=null&&Ne(D.formMethod)&&D.formAction===E.location.pathname+E.location.search&&(P=le.Replace);let M=m&&"preventScrollReset"in m?m.preventScrollReset===!0:void 0,$=(m&&m.flushSync)===!0,Y=dn({currentLocation:V,nextLocation:I,historyAction:P});if(Y){Tt(Y,{state:"blocked",location:I,proceed(){Tt(Y,{state:"proceeding",proceed:void 0,reset:void 0,location:I}),rn(p,m)},reset(){let he=new Map(E.blockers);he.set(Y,vt),me({blockers:he})}});return}return await Je(P,I,{submission:D,pendingError:F,preventScrollReset:M,replace:m&&m.replace,enableViewTransition:m&&m.viewTransition,flushSync:$})}function Ga(){if(dr(),me({revalidation:"loading"}),E.navigation.state!=="submitting"){if(E.navigation.state==="idle"){Je(E.historyAction,E.location,{startUninterruptedRevalidation:!0});return}Je(L||E.historyAction,E.navigation.location,{overrideNavigation:E.navigation,enableViewTransition:z===!0})}}async function Je(p,m,y){H&&H.abort(),H=null,L=p,G=(y&&y.startUninterruptedRevalidation)===!0,oi(E.location,E.matches),j=(y&&y.preventScrollReset)===!0,z=(y&&y.enableViewTransition)===!0;let O=s||i,D=y&&y.overrideNavigation,F=y!=null&&y.initialHydration&&E.matches&&E.matches.length>0&&!A?E.matches:He(O,m,l),V=(y&&y.flushSync)===!0;if(F&&E.initialized&&!ge&&tu(E.location,m)&&!(y&&y.submission&&Ne(y.submission.formMethod))){et(m,{matches:F},{flushSync:V});return}let I=It(F,O,m.pathname);if(I.active&&I.matches&&(F=I.matches),!F){let{error:te,notFoundMatches:q,route:ne}=fr(m.pathname);et(m,{matches:q,loaderData:{},errors:{[ne.id]:te}},{flushSync:V});return}H=new AbortController;let k=at(t.history,m,H.signal,y&&y.submission),P;if(y&&y.pendingError)P=[Ze(F).route.id,{type:Z.error,error:y.pendingError}];else if(y&&y.submission&&Ne(y.submission.formMethod)){let te=await Ja(k,m,y.submission,F,I.active,{replace:y.replace,flushSync:V});if(te.shortCircuited)return;if(te.pendingActionResult){let[q,ne]=te.pendingActionResult;if(ve(ne)&&Lt(ne.error)&&ne.error.status===404){H=null,et(m,{matches:te.matches,loaderData:{},errors:{[q]:ne.error}});return}}F=te.matches||F,P=te.pendingActionResult,D=Rr(m,y.submission),V=!1,I.active=!1,k=at(t.history,k.url,k.signal)}let{shortCircuited:M,matches:$,loaderData:Y,errors:he}=await Xa(k,m,F,I.active,D,y&&y.submission,y&&y.fetcherSubmission,y&&y.replace,y&&y.initialHydration===!0,V,P);M||(H=null,et(m,re({matches:$||F},Zn(P),{loaderData:Y,errors:he})))}async function Ja(p,m,y,O,D,F){F===void 0&&(F={}),dr();let V=su(m,y);if(me({navigation:V},{flushSync:F.flushSync===!0}),D){let P=await kt(O,m.pathname,p.signal);if(P.type==="aborted")return{shortCircuited:!0};if(P.type==="error"){let M=Ze(P.partialMatches).route.id;return{matches:P.partialMatches,pendingActionResult:[M,{type:Z.error,error:P.error}]}}else if(P.matches)O=P.matches;else{let{notFoundMatches:M,error:$,route:Y}=fr(m.pathname);return{matches:M,pendingActionResult:[Y.id,{type:Z.error,error:$}]}}}let I,k=Ct(O,m);if(!k.route.action&&!k.route.lazy)I={type:Z.error,error:Ee(405,{method:p.method,pathname:m.pathname,routeId:k.route.id})};else if(I=(await ht("action",E,p,[k],O,null))[k.route.id],p.signal.aborted)return{shortCircuited:!0};if(Qe(I)){let P;return F&&F.replace!=null?P=F.replace:P=Gn(I.response.headers.get("Location"),new URL(p.url),l)===E.location.pathname+E.location.search,await Xe(p,I,!0,{submission:y,replace:P}),{shortCircuited:!0}}if(Fe(I))throw Ee(400,{type:"defer-action"});if(ve(I)){let P=Ze(O,k.route.id);return(F&&F.replace)!==!0&&(L=le.Push),{matches:O,pendingActionResult:[P.route.id,I]}}return{matches:O,pendingActionResult:[k.route.id,I]}}async function Xa(p,m,y,O,D,F,V,I,k,P,M){let $=D||Rr(m,F),Y=F||V||to($),he=!G&&(!u.v7_partialHydration||!k);if(O){if(he){let oe=nn(M);me(re({navigation:$},oe!==void 0?{actionData:oe}:{}),{flushSync:P})}let J=await kt(y,m.pathname,p.signal);if(J.type==="aborted")return{shortCircuited:!0};if(J.type==="error"){let oe=Ze(J.partialMatches).route.id;return{matches:J.partialMatches,loaderData:{},errors:{[oe]:J.error}}}else if(J.matches)y=J.matches;else{let{error:oe,notFoundMatches:rt,route:mt}=fr(m.pathname);return{matches:rt,loaderData:{},errors:{[mt.id]:oe}}}}let te=s||i,[q,ne]=zn(t.history,E,y,Y,m,u.v7_partialHydration&&k===!0,u.v7_skipActionErrorRevalidation,ge,ue,X,Se,_e,fe,te,l,M);if(hr(J=>!(y&&y.some(oe=>oe.route.id===J))||q&&q.some(oe=>oe.route.id===J)),Pe=++Oe,q.length===0&&ne.length===0){let J=ln();return et(m,re({matches:y,loaderData:{},errors:M&&ve(M[1])?{[M[0]]:M[1].error}:null},Zn(M),J?{fetchers:new Map(E.fetchers)}:{}),{flushSync:P}),{shortCircuited:!0}}if(he){let J={};if(!O){J.navigation=$;let oe=nn(M);oe!==void 0&&(J.actionData=oe)}ne.length>0&&(J.fetchers=qa(ne)),me(J,{flushSync:P})}ne.forEach(J=>{Ie(J.key),J.controller&&ee.set(J.key,J.controller)});let tt=()=>ne.forEach(J=>Ie(J.key));H&&H.signal.addEventListener("abort",tt);let{loaderResults:pt,fetcherResults:xe}=await on(E,y,q,ne,p);if(p.signal.aborted)return{shortCircuited:!0};H&&H.signal.removeEventListener("abort",tt),ne.forEach(J=>ee.delete(J.key));let Re=Vt(pt);if(Re)return await Xe(p,Re.result,!0,{replace:I}),{shortCircuited:!0};if(Re=Vt(xe),Re)return fe.add(Re.key),await Xe(p,Re.result,!0,{replace:I}),{shortCircuited:!0};let{loaderData:pr,errors:gt}=Xn(E,y,pt,M,ne,xe,Ye);Ye.forEach((J,oe)=>{J.subscribe(rt=>{(rt||J.done)&&Ye.delete(oe)})}),u.v7_partialHydration&&k&&E.errors&&(gt=re({},E.errors,gt));let qe=ln(),Ht=cn(Pe),Mt=qe||Ht||ne.length>0;return re({matches:y,loaderData:pr,errors:gt},Mt?{fetchers:new Map(E.fetchers)}:{})}function nn(p){if(p&&!ve(p[1]))return{[p[0]]:p[1].data};if(E.actionData)return Object.keys(E.actionData).length===0?null:E.actionData}function qa(p){return p.forEach(m=>{let y=E.fetchers.get(m.key),O=_t(void 0,y?y.data:void 0);E.fetchers.set(m.key,O)}),new Map(E.fetchers)}function Za(p,m,y,O){if(n)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");Ie(p);let D=(O&&O.flushSync)===!0,F=s||i,V=Mr(E.location,E.matches,l,u.v7_prependBasename,y,u.v7_relativeSplatPath,m,O?.relative),I=He(F,V,l),k=It(I,F,V);if(k.active&&k.matches&&(I=k.matches),!I){Le(p,m,Ee(404,{pathname:V}),{flushSync:D});return}let{path:P,submission:M,error:$}=$n(u.v7_normalizeFormMethod,!0,V,O);if($){Le(p,m,$,{flushSync:D});return}let Y=Ct(I,P),he=(O&&O.preventScrollReset)===!0;if(M&&Ne(M.formMethod)){Qa(p,m,P,Y,I,k.active,D,he,M);return}_e.set(p,{routeId:m,path:P}),ei(p,m,P,Y,I,k.active,D,he,M)}async function Qa(p,m,y,O,D,F,V,I,k){dr(),_e.delete(p);function P(se){if(!se.route.action&&!se.route.lazy){let nt=Ee(405,{method:k.formMethod,pathname:y,routeId:m});return Le(p,m,nt,{flushSync:V}),!0}return!1}if(!F&&P(O))return;let M=E.fetchers.get(p);Te(p,lu(k,M),{flushSync:V});let $=new AbortController,Y=at(t.history,y,$.signal,k);if(F){let se=await kt(D,new URL(Y.url).pathname,Y.signal,p);if(se.type==="aborted")return;if(se.type==="error"){Le(p,m,se.error,{flushSync:V});return}else if(se.matches){if(D=se.matches,O=Ct(D,y),P(O))return}else{Le(p,m,Ee(404,{pathname:y}),{flushSync:V});return}}ee.set(p,$);let he=Oe,q=(await ht("action",E,Y,[O],D,p))[O.route.id];if(Y.signal.aborted){ee.get(p)===$&&ee.delete(p);return}if(u.v7_fetcherPersist&&Se.has(p)){if(Qe(q)||ve(q)){Te(p,ke(void 0));return}}else{if(Qe(q))if(ee.delete(p),Pe>he){Te(p,ke(void 0));return}else return fe.add(p),Te(p,_t(k)),Xe(Y,q,!1,{fetcherSubmission:k,preventScrollReset:I});if(ve(q)){Le(p,m,q.error);return}}if(Fe(q))throw Ee(400,{type:"defer-action"});let ne=E.navigation.location||E.location,tt=at(t.history,ne,$.signal),pt=s||i,xe=E.navigation.state!=="idle"?He(pt,E.navigation.location,l):E.matches;K(xe,"Didn't find any matches after fetcher action");let Re=++Oe;ie.set(p,Re);let pr=_t(k,q.data);E.fetchers.set(p,pr);let[gt,qe]=zn(t.history,E,xe,k,ne,!1,u.v7_skipActionErrorRevalidation,ge,ue,X,Se,_e,fe,pt,l,[O.route.id,q]);qe.filter(se=>se.key!==p).forEach(se=>{let nt=se.key,pn=E.fetchers.get(nt),si=_t(void 0,pn?pn.data:void 0);E.fetchers.set(nt,si),Ie(nt),se.controller&&ee.set(nt,se.controller)}),me({fetchers:new Map(E.fetchers)});let Ht=()=>qe.forEach(se=>Ie(se.key));$.signal.addEventListener("abort",Ht);let{loaderResults:Mt,fetcherResults:J}=await on(E,xe,gt,qe,tt);if($.signal.aborted)return;$.signal.removeEventListener("abort",Ht),ie.delete(p),ee.delete(p),qe.forEach(se=>ee.delete(se.key));let oe=Vt(Mt);if(oe)return Xe(tt,oe.result,!1,{preventScrollReset:I});if(oe=Vt(J),oe)return fe.add(oe.key),Xe(tt,oe.result,!1,{preventScrollReset:I});let{loaderData:rt,errors:mt}=Xn(E,xe,Mt,void 0,qe,J,Ye);if(E.fetchers.has(p)){let se=ke(q.data);E.fetchers.set(p,se)}cn(Re),E.navigation.state==="loading"&&Re>Pe?(K(L,"Expected pending action"),H&&H.abort(),et(E.navigation.location,{matches:xe,loaderData:rt,errors:mt,fetchers:new Map(E.fetchers)})):(me({errors:mt,loaderData:qn(E.loaderData,rt,xe,mt),fetchers:new Map(E.fetchers)}),ge=!1)}async function ei(p,m,y,O,D,F,V,I,k){let P=E.fetchers.get(p);Te(p,_t(k,P?P.data:void 0),{flushSync:V});let M=new AbortController,$=at(t.history,y,M.signal);if(F){let q=await kt(D,new URL($.url).pathname,$.signal,p);if(q.type==="aborted")return;if(q.type==="error"){Le(p,m,q.error,{flushSync:V});return}else if(q.matches)D=q.matches,O=Ct(D,y);else{Le(p,m,Ee(404,{pathname:y}),{flushSync:V});return}}ee.set(p,M);let Y=Oe,te=(await ht("loader",E,$,[O],D,p))[O.route.id];if(Fe(te)&&(te=await Xr(te,$.signal,!0)||te),ee.get(p)===M&&ee.delete(p),!$.signal.aborted){if(Se.has(p)){Te(p,ke(void 0));return}if(Qe(te))if(Pe>Y){Te(p,ke(void 0));return}else{fe.add(p),await Xe($,te,!1,{preventScrollReset:I});return}if(ve(te)){Le(p,m,te.error);return}K(!Fe(te),"Unhandled fetcher deferred data"),Te(p,ke(te.data))}}async function Xe(p,m,y,O){let{submission:D,fetcherSubmission:F,preventScrollReset:V,replace:I}=O===void 0?{}:O;m.response.headers.has("X-Remix-Revalidate")&&(ge=!0);let k=m.response.headers.get("Location");K(k,"Expected a Location header on the redirect Response"),k=Gn(k,new URL(p.url),l);let P=Ot(E.location,k,{_isRedirect:!0});if(r){let q=!1;if(m.response.headers.has("X-Remix-Reload-Document"))q=!0;else if(Jr.test(k)){const ne=t.history.createURL(k);q=ne.origin!==e.location.origin||wt(ne.pathname,l)==null}if(q){I?e.location.replace(k):e.location.assign(k);return}}H=null;let M=I===!0||m.response.headers.has("X-Remix-Replace")?le.Replace:le.Push,{formMethod:$,formAction:Y,formEncType:he}=E.navigation;!D&&!F&&$&&Y&&he&&(D=to(E.navigation));let te=D||F;if(Uc.has(m.response.status)&&te&&Ne(te.formMethod))await Je(M,P,{submission:re({},te,{formAction:k}),preventScrollReset:V||j,enableViewTransition:y?z:void 0});else{let q=Rr(P,D);await Je(M,P,{overrideNavigation:q,fetcherSubmission:F,preventScrollReset:V||j,enableViewTransition:y?z:void 0})}}async function ht(p,m,y,O,D,F){let V,I={};try{V=await Xc(c,p,m,y,O,D,F,a,o)}catch(k){return O.forEach(P=>{I[P.route.id]={type:Z.error,error:k}}),I}for(let[k,P]of Object.entries(V))if(ru(P)){let M=P.result;I[k]={type:Z.redirect,response:Qc(M,y,k,D,l,u.v7_relativeSplatPath)}}else I[k]=await Zc(P);return I}async function on(p,m,y,O,D){let F=p.matches,V=ht("loader",p,D,y,m,null),I=Promise.all(O.map(async M=>{if(M.matches&&M.match&&M.controller){let Y=(await ht("loader",p,at(t.history,M.path,M.controller.signal),[M.match],M.matches,M.key))[M.match.route.id];return{[M.key]:Y}}else return Promise.resolve({[M.key]:{type:Z.error,error:Ee(404,{pathname:M.path})}})})),k=await V,P=(await I).reduce((M,$)=>Object.assign(M,$),{});return await Promise.all([au(m,k,D.signal,F,p.loaderData),iu(m,P,O)]),{loaderResults:k,fetcherResults:P}}function dr(){ge=!0,ue.push(...hr()),_e.forEach((p,m)=>{ee.has(m)&&X.add(m),Ie(m)})}function Te(p,m,y){y===void 0&&(y={}),E.fetchers.set(p,m),me({fetchers:new Map(E.fetchers)},{flushSync:(y&&y.flushSync)===!0})}function Le(p,m,y,O){O===void 0&&(O={});let D=Ze(E.matches,m);At(p),me({errors:{[D.route.id]:y},fetchers:new Map(E.fetchers)},{flushSync:(O&&O.flushSync)===!0})}function an(p){return Ae.set(p,(Ae.get(p)||0)+1),Se.has(p)&&Se.delete(p),E.fetchers.get(p)||$c}function At(p){let m=E.fetchers.get(p);ee.has(p)&&!(m&&m.state==="loading"&&ie.has(p))&&Ie(p),_e.delete(p),ie.delete(p),fe.delete(p),u.v7_fetcherPersist&&Se.delete(p),X.delete(p),E.fetchers.delete(p)}function ti(p){let m=(Ae.get(p)||0)-1;m<=0?(Ae.delete(p),Se.add(p),u.v7_fetcherPersist||At(p)):Ae.set(p,m),me({fetchers:new Map(E.fetchers)})}function Ie(p){let m=ee.get(p);m&&(m.abort(),ee.delete(p))}function sn(p){for(let m of p){let y=an(m),O=ke(y.data);E.fetchers.set(m,O)}}function ln(){let p=[],m=!1;for(let y of fe){let O=E.fetchers.get(y);K(O,"Expected fetcher: "+y),O.state==="loading"&&(fe.delete(y),p.push(y),m=!0)}return sn(p),m}function cn(p){let m=[];for(let[y,O]of ie)if(O<p){let D=E.fetchers.get(y);K(D,"Expected fetcher: "+y),D.state==="loading"&&(Ie(y),ie.delete(y),m.push(y))}return sn(m),m.length>0}function ri(p,m){let y=E.blockers.get(p)||vt;return Ge.get(p)!==m&&Ge.set(p,m),y}function un(p){E.blockers.delete(p),Ge.delete(p)}function Tt(p,m){let y=E.blockers.get(p)||vt;K(y.state==="unblocked"&&m.state==="blocked"||y.state==="blocked"&&m.state==="blocked"||y.state==="blocked"&&m.state==="proceeding"||y.state==="blocked"&&m.state==="unblocked"||y.state==="proceeding"&&m.state==="unblocked","Invalid blocker state transition: "+y.state+" -> "+m.state);let O=new Map(E.blockers);O.set(p,m),me({blockers:O})}function dn(p){let{currentLocation:m,nextLocation:y,historyAction:O}=p;if(Ge.size===0)return;Ge.size>1&&ft(!1,"A router only supports one blocker at a time");let D=Array.from(Ge.entries()),[F,V]=D[D.length-1],I=E.blockers.get(F);if(!(I&&I.state==="proceeding")&&V({currentLocation:m,nextLocation:y,historyAction:O}))return F}function fr(p){let m=Ee(404,{pathname:p}),y=s||i,{matches:O,route:D}=Qn(y);return hr(),{notFoundMatches:O,route:D,error:m}}function hr(p){let m=[];return Ye.forEach((y,O)=>{(!p||p(O))&&(y.cancel(),m.push(O),Ye.delete(O))}),m}function ni(p,m,y){if(v=p,S=m,_=y||null,!C&&E.navigation===Nr){C=!0;let O=hn(E.location,E.matches);O!=null&&me({restoreScrollPosition:O})}return()=>{v=null,S=null,_=null}}function fn(p,m){return _&&_(p,m.map(O=>yc(O,E.loaderData)))||p.key}function oi(p,m){if(v&&S){let y=fn(p,m);v[y]=S()}}function hn(p,m){if(v){let y=fn(p,m),O=v[y];if(typeof O=="number")return O}return null}function It(p,m,y){if(d)if(p){if(Object.keys(p[0].params).length>0)return{active:!0,matches:zt(m,y,l,!0)}}else return{active:!0,matches:zt(m,y,l,!0)||[]};return{active:!1,matches:null}}async function kt(p,m,y,O){if(!d)return{type:"success",matches:p};let D=p;for(;;){let F=s==null,V=s||i,I=a;try{await d({signal:y,path:m,matches:D,fetcherKey:O,patch:(M,$)=>{y.aborted||Yn(M,$,V,I,o)}})}catch(M){return{type:"error",error:M,partialMatches:D}}finally{F&&!y.aborted&&(i=[...i])}if(y.aborted)return{type:"aborted"};let k=He(V,m,l);if(k)return{type:"success",matches:k};let P=zt(V,m,l,!0);if(!P||D.length===P.length&&D.every((M,$)=>M.route.id===P[$].route.id))return{type:"success",matches:null};D=P}}function ai(p){a={},s=Qt(p,o,void 0,a)}function ii(p,m){let y=s==null;Yn(p,m,s||i,a,o),y&&(i=[...i],me({}))}return T={get basename(){return l},get future(){return u},get state(){return E},get routes(){return i},get window(){return e},initialize:za,subscribe:Ya,enableScrollRestoration:ni,navigate:rn,fetch:Za,revalidate:Ga,createHref:p=>t.history.createHref(p),encodeLocation:p=>t.history.encodeLocation(p),getFetcher:an,deleteFetcher:ti,dispose:Wa,getBlocker:ri,deleteBlocker:un,patchRoutes:ii,_internalFetchControllers:ee,_internalActiveDeferreds:Ye,_internalSetRoutes:ai},T}function Wc(t){return t!=null&&("formData"in t&&t.formData!=null||"body"in t&&t.body!==void 0)}function Mr(t,e,r,n,o,a,i,s){let l,c;if(i){l=[];for(let u of e)if(l.push(u),u.route.id===i){c=u;break}}else l=e,c=e[e.length-1];let d=ia(o||".",aa(l,a),wt(t.pathname,r)||t.pathname,s==="path");if(o==null&&(d.search=t.search,d.hash=t.hash),(o==null||o===""||o===".")&&c){let u=qr(d.search);if(c.route.index&&!u)d.search=d.search?d.search.replace(/^\?/,"?index&"):"?index";else if(!c.route.index&&u){let h=new URLSearchParams(d.search),f=h.getAll("index");h.delete("index"),f.filter(_=>_).forEach(_=>h.append("index",_));let v=h.toString();d.search=v?"?"+v:""}}return n&&r!=="/"&&(d.pathname=d.pathname==="/"?r:$e([r,d.pathname])),Dt(d)}function $n(t,e,r,n){if(!n||!Wc(n))return{path:r};if(n.formMethod&&!ou(n.formMethod))return{path:r,error:Ee(405,{method:n.formMethod})};let o=()=>({path:r,error:Ee(400,{type:"invalid-body"})}),a=n.formMethod||"get",i=t?a.toUpperCase():a.toLowerCase(),s=da(r);if(n.body!==void 0){if(n.formEncType==="text/plain"){if(!Ne(i))return o();let h=typeof n.body=="string"?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((f,v)=>{let[_,S]=v;return""+f+_+"="+S+`
|
|
5
5
|
`},""):String(n.body);return{path:r,submission:{formMethod:i,formAction:s,formEncType:n.formEncType,formData:void 0,json:void 0,text:h}}}else if(n.formEncType==="application/json"){if(!Ne(i))return o();try{let h=typeof n.body=="string"?JSON.parse(n.body):n.body;return{path:r,submission:{formMethod:i,formAction:s,formEncType:n.formEncType,formData:void 0,json:h,text:void 0}}}catch{return o()}}}K(typeof FormData=="function","FormData is not available in this environment");let l,c;if(n.formData)l=Fr(n.formData),c=n.formData;else if(n.body instanceof FormData)l=Fr(n.body),c=n.body;else if(n.body instanceof URLSearchParams)l=n.body,c=Jn(l);else if(n.body==null)l=new URLSearchParams,c=new FormData;else try{l=new URLSearchParams(n.body),c=Jn(l)}catch{return o()}let d={formMethod:i,formAction:s,formEncType:n&&n.formEncType||"application/x-www-form-urlencoded",formData:c,json:void 0,text:void 0};if(Ne(d.formMethod))return{path:r,submission:d};let u=Ke(r);return e&&u.search&&qr(u.search)&&l.append("index",""),u.search="?"+l,{path:Dt(u),submission:d}}function Kn(t,e,r){r===void 0&&(r=!1);let n=t.findIndex(o=>o.route.id===e);return n>=0?t.slice(0,r?n+1:n):t}function zn(t,e,r,n,o,a,i,s,l,c,d,u,h,f,v,_){let S=_?ve(_[1])?_[1].error:_[1].data:void 0,C=t.createURL(e.location),R=t.createURL(o),A=r;a&&e.errors?A=Kn(r,Object.keys(e.errors)[0],!0):_&&ve(_[1])&&(A=Kn(r,_[0]));let b=_?_[1].statusCode:void 0,w=i&&b&&b>=400,T=A.filter((L,j)=>{let{route:H}=L;if(H.lazy)return!0;if(H.loader==null)return!1;if(a)return jr(H,e.loaderData,e.errors);if(Yc(e.loaderData,e.matches[j],L)||l.some(W=>W===L.route.id))return!0;let z=e.matches[j],B=L;return Wn(L,re({currentUrl:C,currentParams:z.params,nextUrl:R,nextParams:B.params},n,{actionResult:S,actionStatus:b,defaultShouldRevalidate:w?!1:s||C.pathname+C.search===R.pathname+R.search||C.search!==R.search||ca(z,B)}))}),E=[];return u.forEach((L,j)=>{if(a||!r.some(G=>G.route.id===L.routeId)||d.has(j))return;let H=He(f,L.path,v);if(!H){E.push({key:j,routeId:L.routeId,path:L.path,matches:null,match:null,controller:null});return}let z=e.fetchers.get(j),B=Ct(H,L.path),W=!1;h.has(j)?W=!1:c.has(j)?(c.delete(j),W=!0):z&&z.state!=="idle"&&z.data===void 0?W=s:W=Wn(B,re({currentUrl:C,currentParams:e.matches[e.matches.length-1].params,nextUrl:R,nextParams:r[r.length-1].params},n,{actionResult:S,actionStatus:b,defaultShouldRevalidate:w?!1:s})),W&&E.push({key:j,routeId:L.routeId,path:L.path,matches:H,match:B,controller:new AbortController})}),[T,E]}function jr(t,e,r){if(t.lazy)return!0;if(!t.loader)return!1;let n=e!=null&&e[t.id]!==void 0,o=r!=null&&r[t.id]!==void 0;return!n&&o?!1:typeof t.loader=="function"&&t.loader.hydrate===!0?!0:!n&&!o}function Yc(t,e,r){let n=!e||r.route.id!==e.route.id,o=t[r.route.id]===void 0;return n||o}function ca(t,e){let r=t.route.path;return t.pathname!==e.pathname||r!=null&&r.endsWith("*")&&t.params["*"]!==e.params["*"]}function Wn(t,e){if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate(e);if(typeof r=="boolean")return r}return e.defaultShouldRevalidate}function Yn(t,e,r,n,o){var a;let i;if(t){let c=n[t];K(c,"No route found to patch children into: routeId = "+t),c.children||(c.children=[]),i=c.children}else i=r;let s=e.filter(c=>!i.some(d=>ua(c,d))),l=Qt(s,o,[t||"_","patch",String(((a=i)==null?void 0:a.length)||"0")],n);i.push(...l)}function ua(t,e){return"id"in t&&"id"in e&&t.id===e.id?!0:t.index===e.index&&t.path===e.path&&t.caseSensitive===e.caseSensitive?(!t.children||t.children.length===0)&&(!e.children||e.children.length===0)?!0:t.children.every((r,n)=>{var o;return(o=e.children)==null?void 0:o.some(a=>ua(r,a))}):!1}async function Gc(t,e,r){if(!t.lazy)return;let n=await t.lazy();if(!t.lazy)return;let o=r[t.id];K(o,"No route found in manifest");let a={};for(let i in n){let l=o[i]!==void 0&&i!=="hasErrorBoundary";ft(!l,'Route "'+o.id+'" has a static property "'+i+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+i+'" will be ignored.')),!l&&!vc.has(i)&&(a[i]=n[i])}Object.assign(o,a),Object.assign(o,re({},e(o),{lazy:void 0}))}async function Jc(t){let{matches:e}=t,r=e.filter(o=>o.shouldLoad);return(await Promise.all(r.map(o=>o.resolve()))).reduce((o,a,i)=>Object.assign(o,{[r[i].route.id]:a}),{})}async function Xc(t,e,r,n,o,a,i,s,l,c){let d=a.map(f=>f.route.lazy?Gc(f.route,l,s):void 0),u=a.map((f,v)=>{let _=d[v],S=o.some(R=>R.route.id===f.route.id);return re({},f,{shouldLoad:S,resolve:async R=>(R&&n.method==="GET"&&(f.route.lazy||f.route.loader)&&(S=!0),S?qc(e,n,f,_,R,c):Promise.resolve({type:Z.data,result:void 0}))})}),h=await t({matches:u,request:n,params:a[0].params,fetcherKey:i,context:c});try{await Promise.all(d)}catch{}return h}async function qc(t,e,r,n,o,a){let i,s,l=c=>{let d,u=new Promise((v,_)=>d=_);s=()=>d(),e.signal.addEventListener("abort",s);let h=v=>typeof c!="function"?Promise.reject(new Error("You cannot call the handler for a route which defines a boolean "+('"'+t+'" [routeId: '+r.route.id+"]"))):c({request:e,params:r.params,context:a},...v!==void 0?[v]:[]),f=(async()=>{try{return{type:"data",result:await(o?o(_=>h(_)):h())}}catch(v){return{type:"error",result:v}}})();return Promise.race([f,u])};try{let c=r.route[t];if(n)if(c){let d,[u]=await Promise.all([l(c).catch(h=>{d=h}),n]);if(d!==void 0)throw d;i=u}else if(await n,c=r.route[t],c)i=await l(c);else if(t==="action"){let d=new URL(e.url),u=d.pathname+d.search;throw Ee(405,{method:e.method,pathname:u,routeId:r.route.id})}else return{type:Z.data,result:void 0};else if(c)i=await l(c);else{let d=new URL(e.url),u=d.pathname+d.search;throw Ee(404,{pathname:u})}K(i.result!==void 0,"You defined "+(t==="action"?"an action":"a loader")+" for route "+('"'+r.route.id+"\" but didn't return anything from your `"+t+"` ")+"function. Please return a value or `null`.")}catch(c){return{type:Z.error,result:c}}finally{s&&e.signal.removeEventListener("abort",s)}return i}async function Zc(t){let{result:e,type:r}=t;if(fa(e)){let u;try{let h=e.headers.get("Content-Type");h&&/\bapplication\/json\b/.test(h)?e.body==null?u=null:u=await e.json():u=await e.text()}catch(h){return{type:Z.error,error:h}}return r===Z.error?{type:Z.error,error:new er(e.status,e.statusText,u),statusCode:e.status,headers:e.headers}:{type:Z.data,data:u,statusCode:e.status,headers:e.headers}}if(r===Z.error){if(eo(e)){var n,o;if(e.data instanceof Error){var a,i;return{type:Z.error,error:e.data,statusCode:(a=e.init)==null?void 0:a.status,headers:(i=e.init)!=null&&i.headers?new Headers(e.init.headers):void 0}}return{type:Z.error,error:new er(((n=e.init)==null?void 0:n.status)||500,void 0,e.data),statusCode:Lt(e)?e.status:void 0,headers:(o=e.init)!=null&&o.headers?new Headers(e.init.headers):void 0}}return{type:Z.error,error:e,statusCode:Lt(e)?e.status:void 0}}if(nu(e)){var s,l;return{type:Z.deferred,deferredData:e,statusCode:(s=e.init)==null?void 0:s.status,headers:((l=e.init)==null?void 0:l.headers)&&new Headers(e.init.headers)}}if(eo(e)){var c,d;return{type:Z.data,data:e.data,statusCode:(c=e.init)==null?void 0:c.status,headers:(d=e.init)!=null&&d.headers?new Headers(e.init.headers):void 0}}return{type:Z.data,data:e}}function Qc(t,e,r,n,o,a){let i=t.headers.get("Location");if(K(i,"Redirects returned/thrown from loaders/actions must have a Location header"),!Jr.test(i)){let s=n.slice(0,n.findIndex(l=>l.route.id===r)+1);i=Mr(new URL(e.url),s,o,!0,i,a),t.headers.set("Location",i)}return t}function Gn(t,e,r){if(Jr.test(t)){let n=t,o=n.startsWith("//")?new URL(e.protocol+n):new URL(n),a=wt(o.pathname,r)!=null;if(o.origin===e.origin&&a)return o.pathname+o.search+o.hash}return t}function at(t,e,r,n){let o=t.createURL(da(e)).toString(),a={signal:r};if(n&&Ne(n.formMethod)){let{formMethod:i,formEncType:s}=n;a.method=i.toUpperCase(),s==="application/json"?(a.headers=new Headers({"Content-Type":s}),a.body=JSON.stringify(n.json)):s==="text/plain"?a.body=n.text:s==="application/x-www-form-urlencoded"&&n.formData?a.body=Fr(n.formData):a.body=n.formData}return new Request(o,a)}function Fr(t){let e=new URLSearchParams;for(let[r,n]of t.entries())e.append(r,typeof n=="string"?n:n.name);return e}function Jn(t){let e=new FormData;for(let[r,n]of t.entries())e.append(r,n);return e}function eu(t,e,r,n,o){let a={},i=null,s,l=!1,c={},d=r&&ve(r[1])?r[1].error:void 0;return t.forEach(u=>{if(!(u.route.id in e))return;let h=u.route.id,f=e[h];if(K(!Qe(f),"Cannot handle redirect results in processLoaderData"),ve(f)){let v=f.error;d!==void 0&&(v=d,d=void 0),i=i||{};{let _=Ze(t,h);i[_.route.id]==null&&(i[_.route.id]=v)}a[h]=void 0,l||(l=!0,s=Lt(f.error)?f.error.status:500),f.headers&&(c[h]=f.headers)}else Fe(f)?(n.set(h,f.deferredData),a[h]=f.deferredData.data,f.statusCode!=null&&f.statusCode!==200&&!l&&(s=f.statusCode),f.headers&&(c[h]=f.headers)):(a[h]=f.data,f.statusCode&&f.statusCode!==200&&!l&&(s=f.statusCode),f.headers&&(c[h]=f.headers))}),d!==void 0&&r&&(i={[r[0]]:d},a[r[0]]=void 0),{loaderData:a,errors:i,statusCode:s||200,loaderHeaders:c}}function Xn(t,e,r,n,o,a,i){let{loaderData:s,errors:l}=eu(e,r,n,i);return o.forEach(c=>{let{key:d,match:u,controller:h}=c,f=a[d];if(K(f,"Did not find corresponding fetcher result"),!(h&&h.signal.aborted))if(ve(f)){let v=Ze(t.matches,u?.route.id);l&&l[v.route.id]||(l=re({},l,{[v.route.id]:f.error})),t.fetchers.delete(d)}else if(Qe(f))K(!1,"Unhandled fetcher revalidation redirect");else if(Fe(f))K(!1,"Unhandled fetcher deferred data");else{let v=ke(f.data);t.fetchers.set(d,v)}}),{loaderData:s,errors:l}}function qn(t,e,r,n){let o=re({},e);for(let a of r){let i=a.route.id;if(e.hasOwnProperty(i)?e[i]!==void 0&&(o[i]=e[i]):t[i]!==void 0&&a.route.loader&&(o[i]=t[i]),n&&n.hasOwnProperty(i))break}return o}function Zn(t){return t?ve(t[1])?{actionData:{}}:{actionData:{[t[0]]:t[1].data}}:{}}function Ze(t,e){return(e?t.slice(0,t.findIndex(n=>n.route.id===e)+1):[...t]).reverse().find(n=>n.route.hasErrorBoundary===!0)||t[0]}function Qn(t){let e=t.length===1?t[0]:t.find(r=>r.index||!r.path||r.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:e}],route:e}}function Ee(t,e){let{pathname:r,routeId:n,method:o,type:a,message:i}=e===void 0?{}:e,s="Unknown Server Error",l="Unknown @remix-run/router error";return t===400?(s="Bad Request",o&&r&&n?l="You made a "+o+' request to "'+r+'" but '+('did not provide a `loader` for route "'+n+'", ')+"so there is no way to handle the request.":a==="defer-action"?l="defer() is not supported in actions":a==="invalid-body"&&(l="Unable to encode submission body")):t===403?(s="Forbidden",l='Route "'+n+'" does not match URL "'+r+'"'):t===404?(s="Not Found",l='No route matches URL "'+r+'"'):t===405&&(s="Method Not Allowed",o&&r&&n?l="You made a "+o.toUpperCase()+' request to "'+r+'" but '+('did not provide an `action` for route "'+n+'", ')+"so there is no way to handle the request.":o&&(l='Invalid request method "'+o.toUpperCase()+'"')),new er(t||500,s,new Error(l),!0)}function Vt(t){let e=Object.entries(t);for(let r=e.length-1;r>=0;r--){let[n,o]=e[r];if(Qe(o))return{key:n,result:o}}}function da(t){let e=typeof t=="string"?Ke(t):t;return Dt(re({},e,{hash:""}))}function tu(t,e){return t.pathname!==e.pathname||t.search!==e.search?!1:t.hash===""?e.hash!=="":t.hash===e.hash?!0:e.hash!==""}function ru(t){return fa(t.result)&&Vc.has(t.result.status)}function Fe(t){return t.type===Z.deferred}function ve(t){return t.type===Z.error}function Qe(t){return(t&&t.type)===Z.redirect}function eo(t){return typeof t=="object"&&t!=null&&"type"in t&&"data"in t&&"init"in t&&t.type==="DataWithResponseInit"}function nu(t){let e=t;return e&&typeof e=="object"&&typeof e.data=="object"&&typeof e.subscribe=="function"&&typeof e.cancel=="function"&&typeof e.resolveData=="function"}function fa(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.headers=="object"&&typeof t.body<"u"}function ou(t){return Bc.has(t.toLowerCase())}function Ne(t){return jc.has(t.toLowerCase())}async function au(t,e,r,n,o){let a=Object.entries(e);for(let i=0;i<a.length;i++){let[s,l]=a[i],c=t.find(h=>h?.route.id===s);if(!c)continue;let d=n.find(h=>h.route.id===c.route.id),u=d!=null&&!ca(d,c)&&(o&&o[c.route.id])!==void 0;Fe(l)&&u&&await Xr(l,r,!1).then(h=>{h&&(e[s]=h)})}}async function iu(t,e,r){for(let n=0;n<r.length;n++){let{key:o,routeId:a,controller:i}=r[n],s=e[o];t.find(c=>c?.route.id===a)&&Fe(s)&&(K(i,"Expected an AbortController for revalidating fetcher deferred result"),await Xr(s,i.signal,!0).then(c=>{c&&(e[o]=c)}))}}async function Xr(t,e,r){if(r===void 0&&(r=!1),!await t.deferredData.resolveData(e)){if(r)try{return{type:Z.data,data:t.deferredData.unwrappedData}}catch(o){return{type:Z.error,error:o}}return{type:Z.data,data:t.deferredData.data}}}function qr(t){return new URLSearchParams(t).getAll("index").some(e=>e==="")}function Ct(t,e){let r=typeof e=="string"?Ke(e).search:e.search;if(t[t.length-1].route.index&&qr(r||""))return t[t.length-1];let n=oa(t);return n[n.length-1]}function to(t){let{formMethod:e,formAction:r,formEncType:n,text:o,formData:a,json:i}=t;if(!(!e||!r||!n)){if(o!=null)return{formMethod:e,formAction:r,formEncType:n,formData:void 0,json:void 0,text:o};if(a!=null)return{formMethod:e,formAction:r,formEncType:n,formData:a,json:void 0,text:void 0};if(i!==void 0)return{formMethod:e,formAction:r,formEncType:n,formData:void 0,json:i,text:void 0}}}function Rr(t,e){return e?{state:"loading",location:t,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text}:{state:"loading",location:t,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function su(t,e){return{state:"submitting",location:t,formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text}}function _t(t,e){return t?{state:"loading",formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text,data:e}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function lu(t,e){return{state:"submitting",formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text,data:e?e.data:void 0}}function ke(t){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function cu(t,e){try{let r=t.sessionStorage.getItem(la);if(r){let n=JSON.parse(r);for(let[o,a]of Object.entries(n||{}))a&&Array.isArray(a)&&e.set(o,new Set(a||[]))}}catch{}}function uu(t,e){if(e.size>0){let r={};for(let[n,o]of e)r[n]=[...o];try{t.sessionStorage.setItem(la,JSON.stringify(r))}catch(n){ft(!1,"Failed to save applied view transitions in sessionStorage ("+n+").")}}}function tr(){return tr=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},tr.apply(this,arguments)}const ar=g.createContext(null),ha=g.createContext(null),ir=g.createContext(null),sr=g.createContext(null),ze=g.createContext({outlet:null,matches:[],isDataRoute:!1}),pa=g.createContext(null);function lr(){return g.useContext(sr)!=null}function cr(){return lr()||K(!1),g.useContext(sr).location}function du(){return g.useContext(sr).navigationType}function ga(t){g.useContext(ir).static||g.useLayoutEffect(t)}function fu(){let{isDataRoute:t}=g.useContext(ze);return t?Lu():hu()}function hu(){lr()||K(!1);let t=g.useContext(ar),{basename:e,future:r,navigator:n}=g.useContext(ir),{matches:o}=g.useContext(ze),{pathname:a}=cr(),i=JSON.stringify(aa(o,r.v7_relativeSplatPath)),s=g.useRef(!1);return ga(()=>{s.current=!0}),g.useCallback(function(c,d){if(d===void 0&&(d={}),!s.current)return;if(typeof c=="number"){n.go(c);return}let u=ia(c,JSON.parse(i),a,d.relative==="path");t==null&&e!=="/"&&(u.pathname=u.pathname==="/"?e:$e([e,u.pathname])),(d.replace?n.replace:n.push)(u,d.state,d)},[e,n,i,a,t])}const pu=g.createContext(null);function gu(t){let e=g.useContext(ze).outlet;return e&&g.createElement(pu.Provider,{value:t},e)}function mu(){let{matches:t}=g.useContext(ze),e=t[t.length-1];return e?e.params:{}}function Eu(t,e,r,n){lr()||K(!1);let{navigator:o}=g.useContext(ir),{matches:a}=g.useContext(ze),i=a[a.length-1],s=i?i.params:{};i&&i.pathname;let l=i?i.pathnameBase:"/";i&&i.route;let c=cr(),d;d=c;let u=d.pathname||"/",h=u;if(l!=="/"){let _=l.replace(/^\//,"").split("/");h="/"+u.replace(/^\//,"").split("/").slice(_.length).join("/")}let f=He(t,{pathname:h});return Su(f&&f.map(_=>Object.assign({},_,{params:Object.assign({},s,_.params),pathname:$e([l,o.encodeLocation?o.encodeLocation(_.pathname).pathname:_.pathname]),pathnameBase:_.pathnameBase==="/"?l:$e([l,o.encodeLocation?o.encodeLocation(_.pathnameBase).pathname:_.pathnameBase])})),a,r,n)}function vu(){let t=Ou(),e=Lt(t)?t.status+" "+t.statusText:t instanceof Error?t.message:JSON.stringify(t),r=t instanceof Error?t.stack:null,o={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return g.createElement(g.Fragment,null,g.createElement("h2",null,"Unexpected Application Error!"),g.createElement("h3",{style:{fontStyle:"italic"}},e),r?g.createElement("pre",{style:o},r):null,null)}const _u=g.createElement(vu,null);class yu extends g.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,r){return r.location!==e.location||r.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:r.error,location:r.location,revalidation:e.revalidation||r.revalidation}}componentDidCatch(e,r){console.error("React Router caught the following error during render",e,r)}render(){return this.state.error!==void 0?g.createElement(ze.Provider,{value:this.props.routeContext},g.createElement(pa.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Cu(t){let{routeContext:e,match:r,children:n}=t,o=g.useContext(ar);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),g.createElement(ze.Provider,{value:e},n)}function Su(t,e,r,n){var o;if(e===void 0&&(e=[]),r===void 0&&(r=null),n===void 0&&(n=null),t==null){var a;if(!r)return null;if(r.errors)t=r.matches;else if((a=n)!=null&&a.v7_partialHydration&&e.length===0&&!r.initialized&&r.matches.length>0)t=r.matches;else return null}let i=t,s=(o=r)==null?void 0:o.errors;if(s!=null){let d=i.findIndex(u=>u.route.id&&s?.[u.route.id]!==void 0);d>=0||K(!1),i=i.slice(0,Math.min(i.length,d+1))}let l=!1,c=-1;if(r&&n&&n.v7_partialHydration)for(let d=0;d<i.length;d++){let u=i[d];if((u.route.HydrateFallback||u.route.hydrateFallbackElement)&&(c=d),u.route.id){let{loaderData:h,errors:f}=r,v=u.route.loader&&h[u.route.id]===void 0&&(!f||f[u.route.id]===void 0);if(u.route.lazy||v){l=!0,c>=0?i=i.slice(0,c+1):i=[i[0]];break}}}return i.reduceRight((d,u,h)=>{let f,v=!1,_=null,S=null;r&&(f=s&&u.route.id?s[u.route.id]:void 0,_=u.route.errorElement||_u,l&&(c<0&&h===0?(xu("route-fallback"),v=!0,S=null):c===h&&(v=!0,S=u.route.hydrateFallbackElement||null)));let C=e.concat(i.slice(0,h+1)),R=()=>{let A;return f?A=_:v?A=S:u.route.Component?A=g.createElement(u.route.Component,null):u.route.element?A=u.route.element:A=d,g.createElement(Cu,{match:u,routeContext:{outlet:d,matches:C,isDataRoute:r!=null},children:A})};return r&&(u.route.ErrorBoundary||u.route.errorElement||h===0)?g.createElement(yu,{location:r.location,revalidation:r.revalidation,component:_,error:f,children:R(),routeContext:{outlet:null,matches:C,isDataRoute:!0}}):R()},null)}var ma=(function(t){return t.UseBlocker="useBlocker",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t})(ma||{}),Ea=(function(t){return t.UseBlocker="useBlocker",t.UseLoaderData="useLoaderData",t.UseActionData="useActionData",t.UseRouteError="useRouteError",t.UseNavigation="useNavigation",t.UseRouteLoaderData="useRouteLoaderData",t.UseMatches="useMatches",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t.UseRouteId="useRouteId",t})(Ea||{});function Nu(t){let e=g.useContext(ar);return e||K(!1),e}function Ru(t){let e=g.useContext(ha);return e||K(!1),e}function bu(t){let e=g.useContext(ze);return e||K(!1),e}function va(t){let e=bu(),r=e.matches[e.matches.length-1];return r.route.id||K(!1),r.route.id}function Ou(){var t;let e=g.useContext(pa),r=Ru(Ea.UseRouteError),n=va();return e!==void 0?e:(t=r.errors)==null?void 0:t[n]}function Lu(){let{router:t}=Nu(ma.UseNavigateStable),e=va(),r=g.useRef(!1);return ga(()=>{r.current=!0}),g.useCallback(function(o,a){a===void 0&&(a={}),r.current&&(typeof o=="number"?t.navigate(o):t.navigate(o,tr({fromRouteId:e},a)))},[t,e])}const ro={};function xu(t,e,r){ro[t]||(ro[t]=!0)}function Du(t,e){t?.v7_startTransition,t?.v7_relativeSplatPath===void 0&&(!e||e.v7_relativeSplatPath),e&&(e.v7_fetcherPersist,e.v7_normalizeFormMethod,e.v7_partialHydration,e.v7_skipActionErrorRevalidation)}function wu(t){return gu(t.context)}function Pu(t){K(!1)}function Au(t){let{basename:e="/",children:r=null,location:n,navigationType:o=le.Pop,navigator:a,static:i=!1,future:s}=t;lr()&&K(!1);let l=e.replace(/^\/*/,"/"),c=g.useMemo(()=>({basename:l,navigator:a,static:i,future:tr({v7_relativeSplatPath:!1},s)}),[l,s,a,i]);typeof n=="string"&&(n=Ke(n));let{pathname:d="/",search:u="",hash:h="",state:f=null,key:v="default"}=n,_=g.useMemo(()=>{let S=wt(d,l);return S==null?null:{location:{pathname:S,search:u,hash:h,state:f,key:v},navigationType:o}},[l,d,u,h,f,v,o]);return _==null?null:g.createElement(ir.Provider,{value:c},g.createElement(sr.Provider,{children:r,value:_}))}new Promise(()=>{});function Br(t,e){e===void 0&&(e=[]);let r=[];return g.Children.forEach(t,(n,o)=>{if(!g.isValidElement(n))return;let a=[...e,o];if(n.type===g.Fragment){r.push.apply(r,Br(n.props.children,a));return}n.type!==Pu&&K(!1),!n.props.index||!n.props.children||K(!1);let i={id:n.props.id||a.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,loader:n.props.loader,action:n.props.action,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(i.children=Br(n.props.children,a)),r.push(i)}),r}function Tu(t){let e={hasErrorBoundary:t.ErrorBoundary!=null||t.errorElement!=null};return t.Component&&Object.assign(e,{element:g.createElement(t.Component),Component:void 0}),t.HydrateFallback&&Object.assign(e,{hydrateFallbackElement:g.createElement(t.HydrateFallback),HydrateFallback:void 0}),t.ErrorBoundary&&Object.assign(e,{errorElement:g.createElement(t.ErrorBoundary),ErrorBoundary:void 0}),e}function rr(){return rr=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},rr.apply(this,arguments)}const Iu="6";try{window.__reactRouterVersion=Iu}catch{}function ku(t,e){return zc({basename:e?.basename,future:rr({},e?.future,{v7_prependBasename:!0}),history:gc({window:e?.window}),hydrationData:e?.hydrationData||Hu(),routes:t,mapRouteProperties:Tu,dataStrategy:e?.dataStrategy,patchRoutesOnNavigation:e?.patchRoutesOnNavigation,window:e?.window}).initialize()}function Hu(){var t;let e=(t=window)==null?void 0:t.__staticRouterHydrationData;return e&&e.errors&&(e=rr({},e,{errors:Mu(e.errors)})),e}function Mu(t){if(!t)return null;let e=Object.entries(t),r={};for(let[n,o]of e)if(o&&o.__type==="RouteErrorResponse")r[n]=new er(o.status,o.statusText,o.data,o.internal===!0);else if(o&&o.__type==="Error"){if(o.__subType){let a=window[o.__subType];if(typeof a=="function")try{let i=new a(o.message);i.stack="",r[n]=i}catch{}}if(r[n]==null){let a=new Error(o.message);a.stack="",r[n]=a}}else r[n]=o;return r}const ju=g.createContext({isTransitioning:!1}),Fu=g.createContext(new Map),Bu="startTransition",no=fi[Bu],Vu="flushSync",oo=ui[Vu];function Uu(t){no?no(t):t()}function yt(t){oo?oo(t):t()}class $u{constructor(){this.status="pending",this.promise=new Promise((e,r)=>{this.resolve=n=>{this.status==="pending"&&(this.status="resolved",e(n))},this.reject=n=>{this.status==="pending"&&(this.status="rejected",r(n))}})}}function Ku(t){let{fallbackElement:e,router:r,future:n}=t,[o,a]=g.useState(r.state),[i,s]=g.useState(),[l,c]=g.useState({isTransitioning:!1}),[d,u]=g.useState(),[h,f]=g.useState(),[v,_]=g.useState(),S=g.useRef(new Map),{v7_startTransition:C}=n||{},R=g.useCallback(L=>{C?Uu(L):L()},[C]),A=g.useCallback((L,j)=>{let{deletedFetchers:H,flushSync:z,viewTransitionOpts:B}=j;L.fetchers.forEach((G,ge)=>{G.data!==void 0&&S.current.set(ge,G.data)}),H.forEach(G=>S.current.delete(G));let W=r.window==null||r.window.document==null||typeof r.window.document.startViewTransition!="function";if(!B||W){z?yt(()=>a(L)):R(()=>a(L));return}if(z){yt(()=>{h&&(d&&d.resolve(),h.skipTransition()),c({isTransitioning:!0,flushSync:!0,currentLocation:B.currentLocation,nextLocation:B.nextLocation})});let G=r.window.document.startViewTransition(()=>{yt(()=>a(L))});G.finished.finally(()=>{yt(()=>{u(void 0),f(void 0),s(void 0),c({isTransitioning:!1})})}),yt(()=>f(G));return}h?(d&&d.resolve(),h.skipTransition(),_({state:L,currentLocation:B.currentLocation,nextLocation:B.nextLocation})):(s(L),c({isTransitioning:!0,flushSync:!1,currentLocation:B.currentLocation,nextLocation:B.nextLocation}))},[r.window,h,d,S,R]);g.useLayoutEffect(()=>r.subscribe(A),[r,A]),g.useEffect(()=>{l.isTransitioning&&!l.flushSync&&u(new $u)},[l]),g.useEffect(()=>{if(d&&i&&r.window){let L=i,j=d.promise,H=r.window.document.startViewTransition(async()=>{R(()=>a(L)),await j});H.finished.finally(()=>{u(void 0),f(void 0),s(void 0),c({isTransitioning:!1})}),f(H)}},[R,i,d,r.window]),g.useEffect(()=>{d&&i&&o.location.key===i.location.key&&d.resolve()},[d,h,o.location,i]),g.useEffect(()=>{!l.isTransitioning&&v&&(s(v.state),c({isTransitioning:!0,flushSync:!1,currentLocation:v.currentLocation,nextLocation:v.nextLocation}),_(void 0))},[l.isTransitioning,v]),g.useEffect(()=>{},[]);let b=g.useMemo(()=>({createHref:r.createHref,encodeLocation:r.encodeLocation,go:L=>r.navigate(L),push:(L,j,H)=>r.navigate(L,{state:j,preventScrollReset:H?.preventScrollReset}),replace:(L,j,H)=>r.navigate(L,{replace:!0,state:j,preventScrollReset:H?.preventScrollReset})}),[r]),w=r.basename||"/",T=g.useMemo(()=>({router:r,navigator:b,static:!1,basename:w}),[r,b,w]),E=g.useMemo(()=>({v7_relativeSplatPath:r.future.v7_relativeSplatPath}),[r.future.v7_relativeSplatPath]);return g.useEffect(()=>Du(n,r.future),[n,r.future]),g.createElement(g.Fragment,null,g.createElement(ar.Provider,{value:T},g.createElement(ha.Provider,{value:o},g.createElement(Fu.Provider,{value:S.current},g.createElement(ju.Provider,{value:l},g.createElement(Au,{basename:w,location:o.location,navigationType:o.historyAction,navigator:b,future:E},o.initialized||r.future.v7_partialHydration?g.createElement(zu,{routes:r.routes,future:r.future,state:o}):e))))),null)}const zu=g.memo(Wu);function Wu(t){let{routes:e,future:r,state:n}=t;return Eu(e,void 0,n,r)}var ao;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher",t.useViewTransitionState="useViewTransitionState"})(ao||(ao={}));var io;(function(t){t.UseFetcher="useFetcher",t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(io||(io={}));const so=Kr(["sentry"]);let Zr=!1;async function _a(){return await de(()=>import("./sentry_react-CVx4Qq7f.js").then(t=>t.i),__vite__mapDeps([0,1,2]))}async function Yu(){const t=await _a(),e=[t.httpClientIntegration(),t.extraErrorDataIntegration({depth:5}),t.replayIntegration(),t.captureConsoleIntegration({levels:["error"]})];ce.sentry.tracing&&e.push(t.reactRouterV6BrowserTracingIntegration({useEffect:hi.useEffect,useLocation:cr,useNavigationType:du,createRoutesFromChildren:Br,matchRoutes:He})),t.init({release:ce.sentry.release,dsn:ce.sentry.dsn,environment:ce.sentry.env,integrations:e,ignoreErrors:["User is not allowed to create files","User is not allowed to move documents","The user aborted a request."],sendDefaultPii:!0,tracesSampleRate:1,replaysSessionSampleRate:.1,replaysOnErrorSampleRate:1,beforeSend(r,n){const o=n.originalException;return o instanceof TypeError&&o.message.includes("Failed to fetch")&&!navigator.onLine?null:r}}),Zr=!0}async function Gu(){return Zr?(await _a()).getClient()?.close():void 0}function Ju(){const[t]=Wr(),{analytics:e}=t;g.useEffect(()=>{if(!e){Gu().catch(r=>so.error("@error",r));return}Zr||!ce.sentry.dsn||ce.sentry.dsn===""||Yu().catch(r=>so.error("@error",r))},[e])}function Vr(){return Vr=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)({}).hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},Vr.apply(null,arguments)}var ya=["shift","alt","meta","mod","ctrl"],Xu={esc:"escape",return:"enter",".":"period",",":"comma","-":"slash"," ":"space","`":"backquote","#":"backslash","+":"bracketright",ShiftLeft:"shift",ShiftRight:"shift",AltLeft:"alt",AltRight:"alt",MetaLeft:"meta",MetaRight:"meta",OSLeft:"meta",OSRight:"meta",ControlLeft:"ctrl",ControlRight:"ctrl"};function Be(t){return(t&&Xu[t]||t||"").trim().toLowerCase().replace(/key|digit|numpad|arrow/,"")}function qu(t){return ya.includes(t)}function br(t,e){return e===void 0&&(e=","),t.split(e)}function Or(t,e,r){e===void 0&&(e="+");var n=t.toLocaleLowerCase().split(e).map(function(i){return Be(i)}),o={alt:n.includes("alt"),ctrl:n.includes("ctrl")||n.includes("control"),shift:n.includes("shift"),meta:n.includes("meta"),mod:n.includes("mod")},a=n.filter(function(i){return!ya.includes(i)});return Vr({},o,{keys:a,description:r,hotkey:t})}(function(){typeof document<"u"&&(document.addEventListener("keydown",function(t){t.key!==void 0&&Ca([Be(t.key),Be(t.code)])}),document.addEventListener("keyup",function(t){t.key!==void 0&&Sa([Be(t.key),Be(t.code)])})),typeof window<"u"&&window.addEventListener("blur",function(){Ve.clear()})})();var Ve=new Set;function Qr(t){return Array.isArray(t)}function Zu(t,e){e===void 0&&(e=",");var r=Qr(t)?t:t.split(e);return r.every(function(n){return Ve.has(n.trim().toLowerCase())})}function Ca(t){var e=Array.isArray(t)?t:[t];Ve.has("meta")&&Ve.forEach(function(r){return!qu(r)&&Ve.delete(r.toLowerCase())}),e.forEach(function(r){return Ve.add(r.toLowerCase())})}function Sa(t){var e=Array.isArray(t)?t:[t];t==="meta"?Ve.clear():e.forEach(function(r){return Ve.delete(r.toLowerCase())})}function Qu(t,e,r){(typeof r=="function"&&r(t,e)||r===!0)&&t.preventDefault()}function ed(t,e,r){return typeof r=="function"?r(t,e):r===!0||r===void 0}function td(t){return Na(t,["input","textarea","select"])}function Na(t,e){e===void 0&&(e=!1);var r=t.target,n=t.composed,o=null;return rd(r)&&n?o=t.composedPath()[0]&&t.composedPath()[0].tagName:o=r&&r.tagName,Qr(e)?!!(o&&e&&e.some(function(a){var i;return a.toLowerCase()===((i=o)==null?void 0:i.toLowerCase())})):!!(o&&e&&e)}function rd(t){return!!t.tagName&&!t.tagName.startsWith("-")&&t.tagName.includes("-")}function nd(t,e){return t.length===0&&e?(console.warn('A hotkey has the "scopes" option set, however no active scopes were found. If you want to use the global scopes feature, you need to wrap your app in a <HotkeysProvider>'),!0):e?t.some(function(r){return e.includes(r)})||t.includes("*"):!0}var od=function(e,r,n){n===void 0&&(n=!1);var o=r.alt,a=r.meta,i=r.mod,s=r.shift,l=r.ctrl,c=r.keys,d=e.key,u=e.code,h=e.ctrlKey,f=e.metaKey,v=e.shiftKey,_=e.altKey,S=Be(u),C=d.toLowerCase();if(!(c!=null&&c.includes(S))&&!(c!=null&&c.includes(C))&&!["ctrl","control","unknown","meta","alt","shift","os"].includes(S))return!1;if(!n){if(o===!_&&C!=="alt"||s===!v&&C!=="shift")return!1;if(i){if(!f&&!h)return!1}else if(a===!f&&C!=="meta"&&C!=="os"||l===!h&&C!=="ctrl"&&C!=="control")return!1}return c&&c.length===1&&(c.includes(C)||c.includes(S))?!0:c?Zu(c):!c},ad=g.createContext(void 0),id=function(){return g.useContext(ad)};function Ra(t,e){return t&&e&&typeof t=="object"&&typeof e=="object"?Object.keys(t).length===Object.keys(e).length&&Object.keys(t).reduce(function(r,n){return r&&Ra(t[n],e[n])},!0):t===e}var sd=g.createContext({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),ld=function(){return g.useContext(sd)};function cd(t){var e=g.useRef(void 0);return Ra(e.current,t)||(e.current=t),e.current}var lo=function(e){e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation()},ud=typeof window<"u"?g.useLayoutEffect:g.useEffect;function co(t,e,r,n){var o=g.useState(null),a=o[0],i=o[1],s=g.useRef(!1),l=r instanceof Array?n instanceof Array?void 0:n:r,c=Qr(t)?t.join(l?.splitKey):t,d=r instanceof Array?r:n instanceof Array?n:void 0,u=g.useCallback(e,d??[]),h=g.useRef(u);d?h.current=u:h.current=e;var f=cd(l),v=ld(),_=v.enabledScopes,S=id();return ud(function(){if(!(f?.enabled===!1||!nd(_,f?.scopes))){var C=function(T,E){var L;if(E===void 0&&(E=!1),!(td(T)&&!Na(T,f?.enableOnFormTags))){if(a!==null){var j=a.getRootNode();if((j instanceof Document||j instanceof ShadowRoot)&&j.activeElement!==a&&!a.contains(j.activeElement)){lo(T);return}}(L=T.target)!=null&&L.isContentEditable&&!(f!=null&&f.enableOnContentEditable)||br(c,f?.splitKey).forEach(function(H){var z,B=Or(H,f?.combinationKey);if(od(T,B,f?.ignoreModifiers)||(z=B.keys)!=null&&z.includes("*")){if(f!=null&&f.ignoreEventWhen!=null&&f.ignoreEventWhen(T)||E&&s.current)return;if(Qu(T,B,f?.preventDefault),!ed(T,B,f?.enabled)){lo(T);return}h.current(T,B),E||(s.current=!0)}})}},R=function(T){T.key!==void 0&&(Ca(Be(T.code)),(f?.keydown===void 0&&f?.keyup!==!0||f!=null&&f.keydown)&&C(T))},A=function(T){T.key!==void 0&&(Sa(Be(T.code)),s.current=!1,f!=null&&f.keyup&&C(T,!0))},b=a||l?.document||document;return b.addEventListener("keyup",A,l?.eventListenerOptions),b.addEventListener("keydown",R,l?.eventListenerOptions),S&&br(c,f?.splitKey).forEach(function(w){return S.addHotkey(Or(w,f?.combinationKey,f?.description))}),function(){b.removeEventListener("keyup",A,l?.eventListenerOptions),b.removeEventListener("keydown",R,l?.eventListenerOptions),S&&br(c,f?.splitKey).forEach(function(w){return S.removeHotkey(Or(w,f?.combinationKey,f?.description))})}}},[a,c,f,_]),i}const dd=t=>{const{undo:e,redo:r,canRedo:n,canUndo:o}=t,a=window.navigator.userAgent.includes("Mac");let i="ctrl+z",s="ctrl+y";a&&(i="mod+z",s="mod+shift+z"),co(i,l=>{l.preventDefault(),o&&e()},{},[o,e]),co(s,l=>{l.preventDefault(),n&&r()},{},[n,r])};window.navigator.appVersion.includes("Mac");const uo={"staging/makerdao":"deployments/staging/makerdao","staging/arbitrum":"arb-ltip","staging/powerhouse":"staging",makerdao:"deployments/makerdao",arbitrum:"deployments/arbitrum",arbgrants:"deployments/arbitrum",localhost:"develop"},fd=()=>{const t="https://raw.githubusercontent.com/powerhouse-inc/connect",e=window.location.href,r=Object.keys(uo).find(o=>e.includes(o)),n=r?uo[r]:void 0;if(n)return`${t}/${n}/package.json`},hd=async()=>{const t=fd();if(!t)return;const r=await(await fetch(t)).json(),{version:n}=r;return n},pd=async()=>{const t=ce.appVersion,e=await hd();return e?{isLatest:e===t,currentVersion:t,latestVersion:e}:null};function fo(...t){window.dataLayer?.push(...t)}const gd=()=>{const t=ce.gaTrackingId,[{analytics:e}]=Wr(),r=t&&e;return g.useEffect(()=>{if(r){const n=document.createElement("script");return n.src=`https://www.googletagmanager.com/gtag/js?id=${t}`,n.async=!0,document.head.appendChild(n),window.dataLayer=window.dataLayer||[],fo("js",new Date),fo("config",t),()=>{document.head.removeChild(n)}}},[r,t]),null};function md(){return typeof document>"u"?"/":document.querySelector("base")?.getAttribute("href")||"/"}async function Ed(t,e,r){const n={signer:r.signer,verifier:Ai()},o=async c=>{if(r.user)return r.getBearerToken({expiresIn:10,aud:c})},a=new wi("idb://reactor",{relaxedDurability:!0}),i=new pi(["reactor-client"]);return{...await new Pi().withLogger(i).withSigner(n).withReactorBuilder(new Ti().withDocumentModels(t).withUpgradeManifests(e).withSync(new Ii().withChannelFactory(new ki(i,o))).withKysely(new Hi({dialect:new Mi(a)}))).buildModule(),pg:a}}function vd(){return[]}async function _d(t){for(const e of t)try{await Wt(e,{})}catch(r){console.error(`Failed to add default drive ${e}:`,r)}}const yd=ce.routerBasename,Cd=[yd,"service-worker.js"].join("/").replace(/\/{2,}/gm,"/");class Sd{ready=!1;debug=!1;registration=null;constructor(e=!1){this.debug=e}setDebug(e){this.debug=e}#t(e){this.debug&&console.log("ServiceWorker message: ",e);const r="type"in e.data?e:null;switch(r?.data.type){case"NEW_VERSION_AVAILABLE":{if(r.data.version===ce.appVersion)return;r.data.requiresHardRefresh&&(this.debug&&console.log("New version available"),window.location.reload());break}default:{console.warn("Unhandled message:",r);break}}}#e(e){this.debug&&console.log("ServiceWorker registered: ",e),navigator.serviceWorker.addEventListener("message",this.#t.bind(this)),this.registration=e,this.ready=!0}async#r(){try{const e=await navigator.serviceWorker.getRegistration();if(e)await e.update(),this.#e(e);else{const n=await navigator.serviceWorker.register(Cd);this.#e(n),n.addEventListener("updatefound",()=>{this.#e(n)})}const r=setInterval(async()=>{const n=await navigator.serviceWorker.getRegistration();n?await n.update():(clearInterval(r),this.registerServiceWorker())},ce.appVersionCheckInterval)}catch(e){console.error("ServiceWorker registration failed: ",e)}}registerServiceWorker(e=!1){if(this.debug=e,!("serviceWorker"in navigator)){console.warn("Service Worker not available");return}window.addEventListener("load",()=>{this.#r().catch(console.error)})}}const Nd=new Sd,Rd=250,bd=({delay:t=Rd})=>{const e=typeof window>"u",r=typeof document<"u"&&document.body.getAttribute("data-show-loader")==="true",[n,o]=g.useState(!t||r);return g.useEffect(()=>{const a=setTimeout(()=>{o(!0)},t);return()=>clearTimeout(a)},[]),N.jsxs("div",{className:`skeleton-loader absolute inset-0 z-10 flex items-center justify-center ${n?"":"hidden"}`,children:[N.jsx("div",{className:"animate-pulse overflow-hidden rounded-full shadow-lg",children:N.jsx(vi,{})}),e?N.jsx("script",{dangerouslySetInnerHTML:{__html:`setTimeout(() => {
|
|
@@ -11,7 +11,7 @@ Latest: @latestVersion`,e.currentVersion,e.latestVersion):dt(g.createElement(lc)
|
|
|
11
11
|
const basePath = href || '/';
|
|
12
12
|
if (window.location.pathname === basePath) {
|
|
13
13
|
document.querySelector('.home-screen')?.classList.remove('hidden')
|
|
14
|
-
}`}}):null,N.jsx(bd,{})]})};function Ld({children:t}){return N.jsx(N.Fragment,{children:t})}const xd=({children:t})=>(Ju(),t),Dd=()=>(g.useEffect(()=>{const t=()=>{console.log("Outdated chunks detected, reloading page..."),window.location.reload()};return window.addEventListener("vite:preloadError",t),()=>{window.removeEventListener("vite:preloadError",t)}},[]),g.useEffect(()=>{Nd.registerServiceWorker(!1)},[]),N.jsx(xd,{children:N.jsx(_i,{children:N.jsxs(Ld,{children:[N.jsx(yi,{position:"bottom-right",containerId:"connect"}),N.jsx(Ih,{}),N.jsx(gd,{})]})})})),wd={cancel:"Cancel",delete:"Delete",continue:"Continue",empty:"Empty",create:"Create",save:"Save",export:"Export",reload:"Reload",reloadConnect:"Click here to reload Connect"},Pd={placeholder:"Search Powerhouse",filterLabel:"File type"},Ad={sections:{folders:{title:"Folders",empty:"No folders 🗂️"},documents:{title:"Documents and files",empty:"No documents or files 📄"}}},Td={options:{switchboardLink:"Switchboard Link"}},Id={deleteItem:{folder:{header:"Delete “{{item}}” folder?",body:"Are you sure you want to delete this folder? All files and subfolders within it will be removed."},file:{header:"Delete “{{item}}” file?",body:"Are you sure you want to delete this file?"}},deleteDrive:{title:'Delete "{{label}}" drive?',body:"Are you sure you want to delete this drive? All files and subfolders within it will be removed. Do you want to proceed?",inputPlaceholder:"Enter drive name..."},upgradeDrive:{header:"Upgrade to cloud drive",body:"You are moving files from a private to a shared drive. These files will become accessible to others in the shared drive.Do you want to proceed?"},createDocument:{header:"Create a new document",placeholder:"Document name"},connectSettings:{title:"Settings",body:"These settings will apply to all drives.",clearStorage:{button:"Clear Storage",description:"Delete previous session data",confirmation:{title:"Clear Storage",body:"Are you sure you want to clear the storage? This will remove all previous session data.",clearButton:"Clear Storage"}},enabledDocumentTypes:{title:"Document Models",description:"Documents enabled",allSelected:"All documents are selected"}},exportDocumentWithErrors:{title:"Your document contains errors",body:"Your document contains structure errors. Do you want to export it anyway?"},disclaimer:{title:"Disclaimer",body:"All content provided herein our website, hyperlinked sites, associated applications, forums, blogs, social media accounts and other platforms (“Site”) is for your general information only, procured from third party sources. We make no warranties of any kind in relation to our content, including but not limited to accuracy and updatedness. No part of the content that we provide constitutes financial advice, legal advice or any other form of advice meant for your specific reliance for any purpose. Any use or reliance on our content is solely at your own risk and discretion. You should conduct your own research, review, analyse and verify our content before relying on them. Trading is a highly risky activity that can lead to major losses, please therefore consult your financial advisor before making any decision. No content on our Site is meant to be a solicitation or offer."},cookiesPolicy:{title:"Cookies Policy",body:"<subtitle>Use of Cookies and Similar Technologies</subtitle><p>The Site is using cookies. Cookies are small text files that are placed on your computer by websites that you visit. They are widely used in order to make websites work, or work more efficiently, as well as to provide information to the owners of the site. Cookies are typically stored on your computer´s hard drive.Information collected from cookies is used by us to evaluate the effectiveness of our Site and analyze trends. The information collected from cookies allows us to determine such things as which parts of the Site are most visited and difficulties our visitors may experience in accessing the SIte. With this knowledge, we can improve the quality of your experience on the Site by recognizing and delivering more of the most desired features and information, as well as by resolving access difficulties.</p><p>We use third party service providers, to assist us in better understanding the use of our Site. Our service providers will place cookies on the hard drive of your computer (or use similar technologies) and will receive information that we select that will educate us on such things as how visitors navigate around our Site. This information is aggregated to provide statistical data about our users browsing actions and patterns, and does not personally identify individuals. This information may include:</p><p>Computer or mobile device information, Website usage information, such as:<list></p><bullet>Page views,</bullet><bullet>Button clicks,</bullet><bullet>Input form changes (without the values being entered),</bullet><bullet>Errors.</bullet></list><p>Our service providers analyses this information and provides us with aggregate reports. The information and analysis provided by our service providers will be used to assist us in better understanding our visitors interests in our Site and how to better serve those interests. If you want to avoid using cookies altogether, you can disable cookies in your browser. However, disabling cookies might make it impossible for you to use certain features of the Site. Your use of the Site with a browser that is configured to accept cookies constitutes an acceptance of our and third-party cookies.</p>"}},kd={deleteDriveSuccess:"Drive successfully deleted",deleteFolderSuccess:"Folder deleted",fileDeleteSuccess:"File deleted",addDriveSuccess:"New drive successfully added",driveSyncSuccess:"Drive synced successfully",driveSyncError:"Error synchronizing drive {{drive}}",driveSyncConflict:"Conflict error detected in {{drive}}",reloadApp:"It seems like you're running an outdated version of the app. Please reload Connect to get the latest version."},Hd={cookiePolicy:"Cookie Policy",termsOfUse:"Terms of Use",disclaimer:"Disclaimer",builtWith:"Built with <icon /> Powerhouse"},Md={message:"This website uses cookies for analytic purposes only. Cookies are anonymous and do not link to user data. We collect information to improve the user experience and validate UI changes. You can still use the page without cookies. For more information, please read our <a>cookies policy.</a>",accept:"Accept configured cookies",reject:"Reject all cookies",cookies:{functional:"Functional cookies",analytics:"Analytics cookies"}},jd={common:wd,searchbar:Pd,folderView:Ad,files:Td,modals:Id,notifications:kd,footer:Hd,cookieBanner:Md},Fd={en:{code:"en",name:"English",translation:jd}};pe.use(Ql).init({resources:Fd,fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}}).catch(t=>{console.error(t)});const Bd=(t,e)=>t.some(r=>r.id===e&&r.value),Vd=()=>{const{t}=Qo(void 0,{useSuspense:!0,i18n:pe}),[e,r]=pc(),[,n]=Wr(),o=[{id:"analytics-cookie",label:t("cookieBanner.cookies.analytics"),value:!0}],a=s=>{r(!1),Bd(s,"analytics-cookie")&&n(l=>({...l,analytics:!0}))},i=()=>{r(!1),n(()=>({analytics:!1,functional:!1,marketing:!1}))};return e?N.jsxs("div",{className:"absolute inset-0 z-[10000] backdrop-blur-sm",children:[N.jsx("div",{className:"absolute inset-0 bg-black opacity-15"}),N.jsx("div",{className:"absolute inset-x-0 bottom-0 flex justify-center bg-white px-10 pb-16 pt-10 shadow-lg",children:N.jsx(Ci,{className:"max-w-[1024px]",cookies:o,onSubmit:a,onReject:i,submitLabel:t("cookieBanner.accept"),rejectLabel:t("cookieBanner.reject"),children:N.jsx("p",{className:"font-semibold text-gray-500",children:N.jsx(tc,{i18nKey:"cookieBanner.message",components:{a:N.jsx("a",{onClick:()=>Me({type:"cookiesPolicy"}),className:"cursor-pointer text-gray-900 hover:underline"},"cookieBanner.message-link")}},"cookieBanner.message")})})})]}):null};function Ud(){const[t]=ji(),e=Fi(t.header.id),r=g.useCallback(()=>{Bi(t).length?Me({type:"exportDocumentWithErrors",documentId:t.header.id}):Vi(t).catch(i=>{console.error(i);const s=i instanceof Error?i.message:JSON.stringify(i,null,1);dt(`Failed to export document: ${s}`)})},[t]),n=g.useMemo(()=>async()=>{},[]),o=g.useCallback(()=>{Ar(e)},[e,Ar]);return N.jsx("div",{id:"document-editor-container",className:"flex-1","data-document-type":t.header.documentType,children:N.jsx(Qd,{document:t,onClose:o,onExport:r,onOpenSwitchboardLink:n})})}function St(t){const[e,r]=g.useState(!1);if(g.useEffect(()=>{setTimeout(()=>{r(!0)},t.loadingTimeout??200)},[t]),!e)return null;const{customEditorLoader:n,...o}=t;return n?N.jsx(N.Fragment,{children:n}):N.jsx(Si,{...o})}const $d=g.createContext(null),Lr={didCatch:!1,error:null};let Kd=class extends g.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Lr}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(e!==null){for(var r,n,o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];(r=(n=this.props).onReset)===null||r===void 0||r.call(n,{args:a,reason:"imperative-api"}),this.setState(Lr)}}componentDidCatch(e,r){var n,o;(n=(o=this.props).onError)===null||n===void 0||n.call(o,e,r)}componentDidUpdate(e,r){const{didCatch:n}=this.state,{resetKeys:o}=this.props;if(n&&r.error!==null&&zd(e.resetKeys,o)){var a,i;(a=(i=this.props).onReset)===null||a===void 0||a.call(i,{next:o,prev:e.resetKeys,reason:"keys"}),this.setState(Lr)}}render(){const{children:e,fallbackRender:r,FallbackComponent:n,fallback:o}=this.props,{didCatch:a,error:i}=this.state;let s=e;if(a){const l={error:i,resetErrorBoundary:this.resetErrorBoundary};if(typeof r=="function")s=r(l);else if(n)s=g.createElement(n,l);else if(o!==void 0)s=o;else throw i}return g.createElement($d.Provider,{value:{didCatch:a,error:i,resetErrorBoundary:this.resetErrorBoundary}},s)}};function zd(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.length!==e.length||t.some((r,n)=>!Object.is(r,e[n]))}const Wd=Kr(["Connect"]);function Yd(t){return"fallbackRender"in t}function Gd(){return null}function Jd({message:t="Something went wrong"}){return N.jsx("div",{className:"text-center",children:t})}function Xd({error:t}){const e=t instanceof Error?t.message:String(t);return N.jsxs("div",{className:"mx-auto flex max-w-[80%] flex-1 flex-col items-center justify-center",children:[N.jsx("h1",{className:"mb-2 text-xl font-semibold",children:"Error"}),N.jsx("i",{children:e}),N.jsx("pre",{children:JSON.stringify(t,null,2)})]})}function ba({error:t}){const e=t instanceof Error?t.message:String(t);return N.jsx("div",{className:"flex size-full items-center justify-center",children:N.jsx("h3",{className:"text-lg font-semibold",children:e})})}function qd(t,e){switch(t){case"silent":return Gd;case"text":return()=>N.jsx(Jd,{message:e});case"detailed":return Xd;default:return ba}}function ur(t){const{children:e,onError:r,resetKeys:n,loggerContext:o}=t,a=(s,l)=>{if(s.message.includes("Failed to fetch dynamically imported module")&&s.message.includes("node_modules/.vite")){console.error(s),console.log("Outdated chunk detected, reloading page..."),window.location.reload();return}(o?Kr(o):Wd).error("@error @info",s,l),r?.(s,l)},i=Yd(t)?t.fallbackRender:qd(t.variant,t.fallbackMessage);return N.jsx(Kd,{fallbackRender:i,onError:a,resetKeys:n,children:e})}function Zd(){const[t]=Ui(),e=Ho(),r=Mo(t.header.meta?.preferredEditor),n=$i(),o=r?.Component??n?.Component??Ao.Component;if(!o)throw new Error("No drive editor component found");return N.jsx(ur,{variant:"detailed",resetKeys:[t.header.id],loggerContext:["Connect","DriveEditor"],children:N.jsx(g.Suspense,{fallback:N.jsx(St,{}),children:N.jsx(Ni,{className:"flex h-full flex-col overflow-auto",children:N.jsx(o,{children:e?N.jsx(Ud,{}):null})})})})}function Oa({drive:t}){const e=Ki(),r=g.useMemo(()=>t?e.some(o=>o.collectionId===zi("main",t.header.id)):!1,[e,t]),n=t?.state.global.icon;return n?N.jsx("img",{src:n,alt:t.header.name,height:32,width:32}):r?N.jsx(mn,{name:"Server",size:32}):N.jsx(mn,{name:"Hdd",size:32})}function ho({message:t}){return N.jsx("div",{className:"flex size-full items-center justify-center",children:N.jsx("h3",{className:"text-lg font-semibold",children:t})})}const Qd=t=>{const{document:e,onClose:r,onExport:n,onOpenSwitchboardLink:o}=t,a=Wi(),i=Yi(),[s,l]=Gi(e.header.id),c=s?.header.id??void 0,d=s?.header.name??void 0,u=s?.header.documentType??void 0,h=s?.header.meta?.preferredEditor??void 0,{globalOperations:f,localOperations:v,isLoading:_,refetch:S}=Ji(c);g.useEffect(()=>{i&&S()},[i,S]);const C=s?.header.revision.global??0,R=s?.header.revision.local??0,A=Xi(u),b=qi(h),w=Zi(u),T=b??w,E=!s,L=T&&u&&!T.documentTypes.includes(u)&&!T.documentTypes.includes("*"),j=C>0||R>0,H=!!s?.clipboard.length;dd({undo:()=>l(gi()),redo:()=>l(mi()),canUndo:j,canRedo:H}),g.useEffect(()=>()=>{window.documentEditorDebugTools?.clear()},[]);const[W,G]=g.useState(void 0);g.useEffect(()=>{W&&W.documentId!==c&&G(void 0)},[W,c]);const ge=(X,ee)=>{G({error:X,documentId:c,info:ee})};if(L)return N.jsx(St,{message:"Loading editor"});if(E)return N.jsx(St,{message:"Loading document"});if(!A)return N.jsx(ho,{message:N.jsxs("div",{className:"text-center leading-10",children:[N.jsxs("p",{children:['Unable to open the document because the document model "',u,'" is not supported.']}),N.jsxs("p",{children:["Go to the"," ",N.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{Me({type:"settings"})},children:"package manager"})," ","to install this document model"]})]})});if(!T)return N.jsx(ho,{message:N.jsxs("div",{className:"text-center leading-10",children:[N.jsx("p",{children:"Unable to open the document because no editor has been found"}),N.jsxs("p",{children:["Go to the"," ",N.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{Me({type:"settings"})},children:"package manager"})," ",'an editor for the "$',u,'" document type']})]})});const ue=T.Component;return N.jsx("div",{className:"relative h-full",id:"document-editor-context","data-editor":T.id,"data-document-type":u,children:i?_?N.jsx(St,{message:"Loading operations"}):N.jsx(Ri,{documentTitle:d??"",documentId:c??"",globalOperations:f,localOperations:v,onClose:()=>Qi(!1),documentState:s.state,onCopyState:()=>{dt("Copied document state to clipboard",{type:"success"})},onCopyDocId:()=>{dt("Copied document ID to clipboard",{type:"success"})}},c):N.jsx(g.Suspense,{fallback:N.jsx(St,{message:"Loading editor"}),name:"EditorLoader",children:N.jsx(ur,{fallbackRender:ba,resetKeys:[c],onError:ge,loggerContext:["Connect","DocumentEditor"],children:!W?.error&&N.jsx(ue,{context:{readMode:!!a,selectedTimelineRevision:es(a?.startDate,a?.endDate,f)},documentId:s.header.id},c)})})})},ef=g.lazy(()=>de(()=>import("./AddDriveModal-BfbPGU02.js"),__vite__mapDeps([3,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.AddDriveModal}))),tf=g.lazy(()=>de(()=>import("./ClearStorageModal-Coerg9zi.js"),__vite__mapDeps([19,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.ClearStorageModal}))),rf=g.lazy(()=>de(()=>import("./CookiesPolicyModal-BeKWZ4pV.js"),__vite__mapDeps([20,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.CookiesPolicyModal}))),nf=g.lazy(()=>de(()=>import("./CreateDocumentModal-DJ0ZYujG.js"),__vite__mapDeps([21,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])).then(t=>({default:t.CreateDocumentModal}))),of=g.lazy(()=>de(()=>import("./DebugSettingsModal-hDpzKe0t.js"),__vite__mapDeps([22,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DebugSettingsModal}))),af=g.lazy(()=>de(()=>import("./DeleteDriveModal-TGKxgbIJ.js"),__vite__mapDeps([23,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DeleteDriveModal}))),sf=g.lazy(()=>de(()=>import("./DeleteItemModal-K4sAhdtC.js"),__vite__mapDeps([24,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DeleteItemModal}))),lf=g.lazy(()=>de(()=>import("./DisclaimerModal-Cw0GAVyN.js"),__vite__mapDeps([25,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DisclaimerModal}))),cf=g.lazy(()=>de(()=>import("./DriveSettingsModal-DZvGgDDF.js"),__vite__mapDeps([26,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])).then(t=>({default:t.DriveSettingsModal}))),uf=g.lazy(()=>de(()=>import("./ExportDocumentWithErrorsModal-CwguhKnx.js"),__vite__mapDeps([27,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.ExportDocumentWithErrorsModal}))),df=g.lazy(()=>de(()=>import("./SettingsModal-CGrGAdPi.js"),__vite__mapDeps([28,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,29,17,18])).then(t=>({default:t.SettingsModal}))),ff=g.lazy(()=>de(()=>import("./UpgradeDriveModal-DRhYtiiv.js"),__vite__mapDeps([30,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.UpgradeDriveModal}))),hf=g.lazy(()=>de(()=>import("./index-CnEJ-s0j.js"),__vite__mapDeps([31,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])).then(t=>({default:t.InspectorModal}))),pf={addDrive:ef,clearStorage:tf,cookiesPolicy:rf,createDocument:nf,debugSettings:of,deleteDrive:af,deleteItem:sf,disclaimer:lf,driveSettings:cf,exportDocumentWithErrors:uf,inspector:hf,settings:df,upgradeDrive:ff};function gf(){const t=ts();if(!t?.type)return null;const e=pf[t.type];return e?N.jsx(ur,{variant:"silent",loggerContext:["Connect","Modals"],children:N.jsx(g.Suspense,{fallback:null,children:N.jsx(e,{})})}):null}const mf={Component:g.lazy(()=>de(()=>import("./document_model_editor-B_fRFi56.js").then(t=>t.B),__vite__mapDeps([4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])))};function Ef(){const t="Generic Drive Explorer",e=["powerhouse/document-drive"],r=Ao.Component;return{id:rs,name:t,documentTypes:e,Component:r}}function vf(){const t="Document Model Editor",e="document-model-editor-v2",r=["powerhouse/document-model"],n=mf.Component;return{id:e,name:t,documentTypes:r,Component:n}}async function _f(){const t=jt.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=jt.reducer,s=jt.actions,l=jt.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:wo(Po(),t)}}async function yf(){const t=Ft.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=Ft.reducer,s=Ft.actions,l=Ft.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:wo(Po(),t)}}async function Cf(){const t=await _f(),e=await yf(),r=vf(),n=Ef();return{id:ns,name:"Common",description:"Common",category:"Common",author:{name:"Powerhouse",website:"https://powerhousedao.com"},modules:{documentModelModules:[t,e],editorModules:[r,n]},upgradeManifests:[]}}const{externalPackagesEnabled:Sf}=ce;function Nf(t){return t.loadExternalPackages().then(e=>e.map(ko))}async function Rf(){try{if(!Sf)return[];const t=await de(()=>import("./_virtual_ph_external-packages-CM1tCR4L.js"),[]);return Nf(t)}catch(t){return console.error(t),[]}}var bf=Object.defineProperty,Of=Object.defineProperties,Lf=Object.getOwnPropertyDescriptors,po=Object.getOwnPropertySymbols,xf=Object.prototype.hasOwnProperty,Df=Object.prototype.propertyIsEnumerable,go=(t,e,r)=>e in t?bf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,xr=(t,e)=>{for(var r in e||(e={}))xf.call(e,r)&&go(t,r,e[r]);if(po)for(var r of po(e))Df.call(e,r)&&go(t,r,e[r]);return t},Dr=(t,e)=>Of(t,Lf(e)),st=(t,e,r)=>new Promise((n,o)=>{var a=l=>{try{s(r.next(l))}catch(c){o(c)}},i=l=>{try{s(r.throw(l))}catch(c){o(c)}},s=l=>l.done?n(l.value):Promise.resolve(l.value).then(a,i);s((r=r.apply(t,e)).next())}),wf=class{constructor(){this.data=new Map}set(t,e){this.data.set(t,e)}get(t){return this.data.get(t)}has(t){return this.data.has(t)}delete(t){return this.data.delete(t)}clear(){this.data.clear()}},Pf={ERROR:"ERROR"},La=(t=>(t.PROVIDER_NOT_READY="PROVIDER_NOT_READY",t.PROVIDER_FATAL="PROVIDER_FATAL",t.FLAG_NOT_FOUND="FLAG_NOT_FOUND",t.PARSE_ERROR="PARSE_ERROR",t.TYPE_MISMATCH="TYPE_MISMATCH",t.TARGETING_KEY_MISSING="TARGETING_KEY_MISSING",t.INVALID_CONTEXT="INVALID_CONTEXT",t.GENERAL="GENERAL",t))(La||{}),We=class xa extends Error{constructor(e,r){super(e),Object.setPrototypeOf(this,xa.prototype),this.name="OpenFeatureError",this.cause=r?.cause}},Af=class Da extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Da.prototype),this.name="FlagNotFoundError",this.code="FLAG_NOT_FOUND"}},wa=class Pa extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Pa.prototype),this.name="GeneralError",this.code="GENERAL"}},Tf=class Aa extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Aa.prototype),this.name="InvalidContextError",this.code="INVALID_CONTEXT"}},If=class Ta extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ta.prototype),this.name="ParseError",this.code="PARSE_ERROR"}},Ia=class ka extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,ka.prototype),this.name="ProviderFatalError",this.code="PROVIDER_FATAL"}},Ha=class Ma extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ma.prototype),this.name="ProviderNotReadyError",this.code="PROVIDER_NOT_READY"}},kf=class ja extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,ja.prototype),this.name="TargetingKeyMissingError",this.code="TARGETING_KEY_MISSING"}},Hf=class Fa extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Fa.prototype),this.name="TypeMismatchError",this.code="TYPE_MISMATCH"}},Mf=(t,e)=>{switch(t){case"FLAG_NOT_FOUND":return new Af(e);case"PARSE_ERROR":return new If(e);case"TYPE_MISMATCH":return new Hf(e);case"TARGETING_KEY_MISSING":return new kf(e);case"INVALID_CONTEXT":return new Tf(e);case"PROVIDER_NOT_READY":return new Ha(e);case"PROVIDER_FATAL":return new Ia(e);default:return new wa(e)}},xt=(t=>(t.NOT_READY="NOT_READY",t.READY="READY",t.ERROR="ERROR",t.STALE="STALE",t.FATAL="FATAL",t.RECONCILING="RECONCILING",t))(xt||{}),De=(t=>(t.Ready="PROVIDER_READY",t.Error="PROVIDER_ERROR",t.ConfigurationChanged="PROVIDER_CONFIGURATION_CHANGED",t.ContextChanged="PROVIDER_CONTEXT_CHANGED",t.Reconciling="PROVIDER_RECONCILING",t.Stale="PROVIDER_STALE",t))(De||{}),jf={READY:"PROVIDER_READY",ERROR:"PROVIDER_ERROR",FATAL:"PROVIDER_ERROR",STALE:"PROVIDER_STALE",RECONCILING:"PROVIDER_RECONCILING",NOT_READY:void 0},Ba=(t,e)=>!e&&t==="PROVIDER_READY"||jf[e]===t,Va=class{error(...t){console.error(...t)}warn(...t){console.warn(...t)}info(){}debug(){}},Ff=["error","warn","info","debug"],en=class{constructor(t){this.fallbackLogger=new Va;try{for(const e of Ff)if(!t[e]||typeof t[e]!="function")throw new Error(`The provided logger is missing the ${e} method.`);this.logger=t}catch(e){console.error(e),console.error("Falling back to the default logger."),this.logger=this.fallbackLogger}}error(...t){this.log("error",...t)}warn(...t){this.log("warn",...t)}info(...t){this.log("info",...t)}debug(...t){this.log("debug",...t)}log(t,...e){try{this.logger[t](...e)}catch{this.fallbackLogger[t](...e)}}},Bf=class{constructor(t){this.globalLogger=t,this._handlers={PROVIDER_CONFIGURATION_CHANGED:new WeakMap,PROVIDER_CONTEXT_CHANGED:new WeakMap,PROVIDER_READY:new WeakMap,PROVIDER_ERROR:new WeakMap,PROVIDER_STALE:new WeakMap,PROVIDER_RECONCILING:new WeakMap}}emit(t,e){this.eventEmitter.emit(t,e)}addHandler(t,e){const r=o=>st(this,null,function*(){var a;try{yield e(o)}catch(i){(a=this._logger)==null||a.error("Error running event handler:",i)}}),n=this._handlers[t].get(e);this._handlers[t].set(e,[...n||[],r]),this.eventEmitter.on(t,r)}removeHandler(t,e){const r=this._handlers[t].get(e);if(r){const n=r.pop();n&&this.eventEmitter.removeListener(t,n)}}removeAllHandlers(t){t?this.eventEmitter.removeAllListeners(t):this.eventEmitter.removeAllListeners()}getHandlers(t){return this.eventEmitter.listeners(t)}setLogger(t){return this._eventLogger=new en(t),this}get _logger(){var t,e;return(e=this._eventLogger)!=null?e:(t=this.globalLogger)==null?void 0:t.call(this)}};function Vf(t){return typeof t=="string"}function lt(t){return Vf(t)?t:void 0}function Uf(t){return typeof t=="object"}function ye(t){return Uf(t)?t:void 0}function mo(t){return typeof t<"u"&&t!==null}var Ur=class{constructor(t,e,r){this._provider=t,this._status=e,this._pendingContextChanges=0;var n,o,a;(n=t.events)==null||n.addHandler("PROVIDER_READY",()=>{this._status=r.READY}),(o=t.events)==null||o.addHandler("PROVIDER_STALE",()=>{this._status=r.STALE}),(a=t.events)==null||a.addHandler("PROVIDER_ERROR",i=>{i?.errorCode==="PROVIDER_FATAL"?this._status=r.FATAL:this._status=r.ERROR})}get provider(){return this._provider}set provider(t){this._provider=t}get status(){return this._status}set status(t){this._status=t}get allContextChangesSettled(){return this._pendingContextChanges===0}incrementPendingContextChanges(){this._pendingContextChanges++}decrementPendingContextChanges(){this._pendingContextChanges--}},$f=class{constructor(t){this._hooks=[],this._context={},this._logger=new Va,this._clientEventHandlers=new Map,this._domainScopedContext=new Map,this._clientEvents=new Map,this._runsOn=t}addHooks(...t){return this._hooks=[...this._hooks,...t],this}getHooks(){return this._hooks}clearHooks(){return this._hooks=[],this}setLogger(t){return this._logger=new en(t),this}get providerMetadata(){return this.getProviderMetadata()}getProviderMetadata(t){return this.getProviderForClient(t).metadata}addHandler(t,e,r){[...new Map([[void 0,this._defaultProvider]]),...this._domainScopedProviders].forEach(n=>{var o;const a=n[0],i=n[1].provider,s=n[1].status;if(Ba(t,s))try{e({domain:a,providerName:i.metadata.name})}catch(c){(o=this._logger)==null||o.error("Error running event handler:",c)}}),this._apiEmitter.addHandler(t,e),r?.signal&&typeof r.signal.addEventListener=="function"&&r.signal.addEventListener("abort",()=>{this.removeHandler(t,e)})}removeHandler(t,e){this._apiEmitter.removeHandler(t,e)}clearHandlers(){this._apiEmitter.removeAllHandlers()}getHandlers(t){return this._apiEmitter.getHandlers(t)}setAwaitableProvider(t,e){var r,n,o,a,i,s,l,c;const d=lt(t),u=(r=ye(t))!=null?r:ye(e);if(!u){this._logger.debug("No provider defined, ignoring setProvider call");return}const h=this.getProviderForClient(d),f=u.metadata.name;if(h===u){this._logger.debug("Provider is already set, ignoring setProvider call");return}if(!u.runsOn)this._logger.debug(`Provider '${u.metadata.name}' has not defined its intended use.`);else if(u.runsOn!==this._runsOn)throw new wa(`Provider '${u.metadata.name}' is intended for use on the ${u.runsOn}.`);const v=this.getAssociatedEventEmitters(d);let _;const S=new Ur(u,this._statusEnumType.NOT_READY,this._statusEnumType);return typeof u.initialize=="function"&&!this.allProviders.includes(u)?_=(i=(a=(o=u.initialize)==null?void 0:o.call(u,d?(n=this._domainScopedContext.get(d))!=null?n:this._context:this._context))==null?void 0:a.then(()=>{var C;S.status=this._statusEnumType.READY,this.getAssociatedEventEmitters(d).forEach(R=>{R?.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}),(C=this._apiEmitter)==null||C.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}))==null?void 0:i.catch(C=>{var R;throw C?.code==="PROVIDER_FATAL"?S.status=this._statusEnumType.FATAL:S.status=this._statusEnumType.ERROR,this.getAssociatedEventEmitters(d).forEach(A=>{A?.emit("PROVIDER_ERROR",{clientName:d,domain:d,providerName:f,message:C?.message})}),(R=this._apiEmitter)==null||R.emit("PROVIDER_ERROR",{clientName:d,domain:d,providerName:f,message:C?.message}),C}):(S.status=this._statusEnumType.READY,v.forEach(C=>{C?.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}),(s=this._apiEmitter)==null||s.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})),d?this._domainScopedProviders.set(d,S):this._defaultProvider=S,this.transferListeners(h,u,d,v),this.allProviders.includes(h)||(c=(l=h?.onClose)==null?void 0:l.call(h))==null||c.catch(C=>{this._logger.error(`error closing provider: ${C?.message}, ${C?.stack}`)}),_}getProviderForClient(t){var e,r;return t?(r=(e=this._domainScopedProviders.get(t))==null?void 0:e.provider)!=null?r:this._defaultProvider.provider:this._defaultProvider.provider}buildAndCacheEventEmitterForClient(t){const e=this._clientEvents.get(t);if(e)return e;const r=this._createEventEmitter();this._clientEvents.set(t,r);const n=this.getProviderForClient(t);return Object.values(De).forEach(o=>{var a;return(a=n.events)==null?void 0:a.addHandler(o,i=>st(this,null,function*(){r.emit(o,Dr(xr({},i),{clientName:t,domain:t,providerName:n.metadata.name}))}))}),r}getUnboundEmitters(){const t=[...this._domainScopedProviders.keys()];return[...[...this._clientEvents.keys()].filter(mo).filter(n=>!t.includes(n)).map(n=>this._clientEvents.get(n)),this._clientEvents.get(void 0)].filter(mo)}getAssociatedEventEmitters(t){return t?[this.buildAndCacheEventEmitterForClient(t)]:this.getUnboundEmitters()}transferListeners(t,e,r,n){var o;(o=this._clientEventHandlers.get(r))==null||o.forEach(i=>{var s;return(s=t.events)==null?void 0:s.removeHandler(...i)});const a=Object.values(De).map(i=>[i,l=>st(this,null,function*(){n.forEach(c=>{c?.emit(i,Dr(xr({},l),{clientName:r,domain:r,providerName:e.metadata.name}))}),this._apiEmitter.emit(i,Dr(xr({},l),{clientName:r,domain:r,providerName:e.metadata.name}))})]);this._clientEventHandlers.set(r,a),a.forEach(i=>{var s;return(s=e.events)==null?void 0:s.addHandler(...i)})}close(){return st(this,null,function*(){var t,e;try{yield(e=(t=this==null?void 0:this._defaultProvider.provider)==null?void 0:t.onClose)==null?void 0:e.call(t)}catch(n){this.handleShutdownError(this._defaultProvider.provider,n)}const r=Array.from(this._domainScopedProviders);yield Promise.all(r.map(n=>st(this,[n],function*([,o]){var a,i;try{yield(i=o==null?void 0:(a=o.provider).onClose)==null?void 0:i.call(a)}catch(s){this.handleShutdownError(o?.provider,s)}})))})}clearProvidersAndSetDefault(t){return st(this,null,function*(){try{yield this.close()}catch{this._logger.error("Unable to cleanly close providers. Resetting to the default configuration.")}finally{this._domainScopedProviders.clear(),this._defaultProvider=new Ur(t,this._statusEnumType.NOT_READY,this._statusEnumType)}})}get allProviders(){return[...[...this._domainScopedProviders.values()].map(t=>t.provider),this._defaultProvider.provider]}handleShutdownError(t,e){this._logger.error(`Error during shutdown of provider ${t.metadata.name}: ${e}`),this._logger.error(e?.stack)}},Kf=Object.create,tn=Object.defineProperty,zf=Object.defineProperties,Wf=Object.getOwnPropertyDescriptor,Yf=Object.getOwnPropertyDescriptors,Ua=Object.getOwnPropertyNames,Eo=Object.getOwnPropertySymbols,$a=Object.getPrototypeOf,Ka=Object.prototype.hasOwnProperty,Gf=Object.prototype.propertyIsEnumerable,Jf=Reflect.get,vo=(t,e,r)=>e in t?tn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,wr=(t,e)=>{for(var r in e||(e={}))Ka.call(e,r)&&vo(t,r,e[r]);if(Eo)for(var r of Eo(e))Gf.call(e,r)&&vo(t,r,e[r]);return t},Xf=(t,e)=>zf(t,Yf(e)),qf=(t,e)=>function(){return e||(0,t[Ua(t)[0]])((e={exports:{}}).exports,e),e.exports},Zf=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ua(e))!Ka.call(t,o)&&o!==r&&tn(t,o,{get:()=>e[o],enumerable:!(n=Wf(e,o))||n.enumerable});return t},Qf=(t,e,r)=>(r=t!=null?Kf($a(t)):{},Zf(tn(r,"default",{value:t,enumerable:!0}),t)),eh=(t,e,r)=>Jf($a(t),r,e),it=(t,e,r)=>new Promise((n,o)=>{var a=l=>{try{s(r.next(l))}catch(c){o(c)}},i=l=>{try{s(r.throw(l))}catch(c){o(c)}},s=l=>l.done?n(l.value):Promise.resolve(l.value).then(a,i);s((r=r.apply(t,e)).next())}),th=qf({"../../node_modules/eventemitter3/index.js"(t,e){var r=Object.prototype.hasOwnProperty,n="~";function o(){}Object.create&&(o.prototype=Object.create(null),new o().__proto__||(n=!1));function a(c,d,u){this.fn=c,this.context=d,this.once=u||!1}function i(c,d,u,h,f){if(typeof u!="function")throw new TypeError("The listener must be a function");var v=new a(u,h||c,f),_=n?n+d:d;return c._events[_]?c._events[_].fn?c._events[_]=[c._events[_],v]:c._events[_].push(v):(c._events[_]=v,c._eventsCount++),c}function s(c,d){--c._eventsCount===0?c._events=new o:delete c._events[d]}function l(){this._events=new o,this._eventsCount=0}l.prototype.eventNames=function(){var d=[],u,h;if(this._eventsCount===0)return d;for(h in u=this._events)r.call(u,h)&&d.push(n?h.slice(1):h);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(u)):d},l.prototype.listeners=function(d){var u=n?n+d:d,h=this._events[u];if(!h)return[];if(h.fn)return[h.fn];for(var f=0,v=h.length,_=new Array(v);f<v;f++)_[f]=h[f].fn;return _},l.prototype.listenerCount=function(d){var u=n?n+d:d,h=this._events[u];return h?h.fn?1:h.length:0},l.prototype.emit=function(d,u,h,f,v,_){var S=n?n+d:d;if(!this._events[S])return!1;var C=this._events[S],R=arguments.length,A,b;if(C.fn){switch(C.once&&this.removeListener(d,C.fn,void 0,!0),R){case 1:return C.fn.call(C.context),!0;case 2:return C.fn.call(C.context,u),!0;case 3:return C.fn.call(C.context,u,h),!0;case 4:return C.fn.call(C.context,u,h,f),!0;case 5:return C.fn.call(C.context,u,h,f,v),!0;case 6:return C.fn.call(C.context,u,h,f,v,_),!0}for(b=1,A=new Array(R-1);b<R;b++)A[b-1]=arguments[b];C.fn.apply(C.context,A)}else{var w=C.length,T;for(b=0;b<w;b++)switch(C[b].once&&this.removeListener(d,C[b].fn,void 0,!0),R){case 1:C[b].fn.call(C[b].context);break;case 2:C[b].fn.call(C[b].context,u);break;case 3:C[b].fn.call(C[b].context,u,h);break;case 4:C[b].fn.call(C[b].context,u,h,f);break;default:if(!A)for(T=1,A=new Array(R-1);T<R;T++)A[T-1]=arguments[T];C[b].fn.apply(C[b].context,A)}}return!0},l.prototype.on=function(d,u,h){return i(this,d,u,h,!1)},l.prototype.once=function(d,u,h){return i(this,d,u,h,!0)},l.prototype.removeListener=function(d,u,h,f){var v=n?n+d:d;if(!this._events[v])return this;if(!u)return s(this,v),this;var _=this._events[v];if(_.fn)_.fn===u&&(!f||_.once)&&(!h||_.context===h)&&s(this,v);else{for(var S=0,C=[],R=_.length;S<R;S++)(_[S].fn!==u||f&&!_[S].once||h&&_[S].context!==h)&&C.push(_[S]);C.length?this._events[v]=C.length===1?C[0]:C:s(this,v)}return this},l.prototype.removeAllListeners=function(d){var u;return d?(u=n?n+d:d,this._events[u]&&s(this,u)):(this._events=new o,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=n,l.EventEmitter=l,typeof e<"u"&&(e.exports=l)}}),rh="No-op",nh=class{constructor(){this.metadata={name:"No-op Provider"}}resolveBooleanEvaluation(t,e){return this.noOp(e)}resolveStringEvaluation(t,e){return this.noOp(e)}resolveNumberEvaluation(t,e){return this.noOp(e)}resolveObjectEvaluation(t,e){return this.noOp(e)}noOp(t){return{value:t,reason:rh}}},_o=new nh,oh=Qf(th()),yo=class extends Bf{constructor(){super(),this.eventEmitter=new oh.default}},ah=class{constructor(t,e,r,n,o,a,i){this.providerAccessor=t,this.providerStatusAccessor=e,this.emitterAccessor=r,this.apiContextAccessor=n,this.apiHooksAccessor=o,this.globalLogger=a,this.options=i,this._hooks=[]}get metadata(){var t,e;return{name:(t=this.options.domain)!=null?t:this.options.name,domain:(e=this.options.domain)!=null?e:this.options.name,version:this.options.version,providerMetadata:this.providerAccessor().metadata}}get providerStatus(){return this.providerStatusAccessor()}addHandler(t,e,r){var n;if(this.emitterAccessor().addHandler(t,e),Ba(t,this.providerStatus))try{e({clientName:this.metadata.name,domain:this.metadata.domain,providerName:this._provider.metadata.name})}catch(a){(n=this._logger)==null||n.error("Error running event handler:",a)}r?.signal&&typeof r.signal.addEventListener=="function"&&r.signal.addEventListener("abort",()=>{this.removeHandler(t,e)})}removeHandler(t,e){this.emitterAccessor().removeHandler(t,e)}getHandlers(t){return this.emitterAccessor().getHandlers(t)}setLogger(t){return this._clientLogger=new en(t),this}addHooks(...t){return this._hooks=[...this._hooks,...t],this}getHooks(){return this._hooks}clearHooks(){return this._hooks=[],this}getBooleanValue(t,e,r){return this.getBooleanDetails(t,e,r).value}getBooleanDetails(t,e,r){return this.evaluate(t,this._provider.resolveBooleanEvaluation,e,"boolean",r)}getStringValue(t,e,r){return this.getStringDetails(t,e,r).value}getStringDetails(t,e,r){return this.evaluate(t,this._provider.resolveStringEvaluation,e,"string",r)}getNumberValue(t,e,r){return this.getNumberDetails(t,e,r).value}getNumberDetails(t,e,r){return this.evaluate(t,this._provider.resolveNumberEvaluation,e,"number",r)}getObjectValue(t,e,r){return this.getObjectDetails(t,e,r).value}getObjectDetails(t,e,r){return this.evaluate(t,this._provider.resolveObjectEvaluation,e,"object",r)}track(t,e={}){var r,n,o;try{if(this.shortCircuitIfNotReady(),typeof this._provider.track=="function"){const a=Object.freeze(wr({},this.apiContextAccessor((r=this==null?void 0:this.options)==null?void 0:r.domain)));return(o=(n=this._provider).track)==null?void 0:o.call(n,t,a,e)}else this._logger.debug("Provider does not support the track function; will no-op.")}catch(a){this._logger.debug("Error recording tracking event.",a)}}evaluate(t,e,r,n,o={}){var a,i;const s=[...this.apiHooksAccessor(),...this.getHooks(),...o.hooks||[],...this._provider.hooks||[]],l=[...s].reverse(),c=wr({},this.apiContextAccessor((a=this==null?void 0:this.options)==null?void 0:a.domain)),d=l.map(()=>Object.freeze({flagKey:t,defaultValue:r,flagValueType:n,clientMetadata:this.metadata,providerMetadata:this._provider.metadata,context:c,logger:this._logger,hookData:new wf}));let u;try{this.beforeHooks(s,d,o),this.shortCircuitIfNotReady();const h=e.call(this._provider,t,r,c,this._logger),f=Xf(wr({},h),{flagMetadata:Object.freeze((i=h.flagMetadata)!=null?i:{}),flagKey:t});if(f.errorCode){const v=Mf(f.errorCode,f.errorMessage);this.errorHooks(l,d,v,o),u=this.getErrorEvaluationDetails(t,r,v,f.flagMetadata)}else this.afterHooks(l,d,f,o),u=f}catch(h){this.errorHooks(l,d,h,o),u=this.getErrorEvaluationDetails(t,r,h)}return this.finallyHooks(l,d,u,o),u}beforeHooks(t,e,r){var n;for(const[o,a]of t.entries()){const i=t.length-1-o,s=e[i];Object.freeze(s),Object.freeze(s.context),(n=a?.before)==null||n.call(a,s,Object.freeze(r.hookHints))}}afterHooks(t,e,r,n){var o;for(const[a,i]of t.entries()){const s=e[a];(o=i?.after)==null||o.call(i,s,r,n.hookHints)}}errorHooks(t,e,r,n){var o;for(const[a,i]of t.entries())try{const s=e[a];(o=i?.error)==null||o.call(i,s,r,n.hookHints)}catch(s){this._logger.error(`Unhandled error during 'error' hook: ${s}`),s instanceof Error&&this._logger.error(s.stack),this._logger.error(s?.stack)}}finallyHooks(t,e,r,n){var o;for(const[a,i]of t.entries())try{const s=e[a];(o=i?.finally)==null||o.call(i,s,r,n.hookHints)}catch(s){this._logger.error(`Unhandled error during 'finally' hook: ${s}`),s instanceof Error&&this._logger.error(s.stack),this._logger.error(s?.stack)}}get _provider(){return this.providerAccessor()}get _logger(){return this._clientLogger||this.globalLogger()}shortCircuitIfNotReady(){if(this.providerStatus===xt.NOT_READY)throw new Ha("provider has not yet initialized");if(this.providerStatus===xt.FATAL)throw new Ia("provider is in an irrecoverable error state")}getErrorEvaluationDetails(t,e,r,n={}){const o=r?.message;return{errorCode:r?.code||La.GENERAL,errorMessage:o,value:e,reason:Pf.ERROR,flagMetadata:Object.freeze(n),flagKey:t}}},Co=Symbol.for("@openfeature/web-sdk/api"),So=globalThis,ih=class $r extends $f{constructor(){super("client"),this._statusEnumType=xt,this._apiEmitter=new yo,this._defaultProvider=new Ur(_o,xt.NOT_READY,this._statusEnumType),this._domainScopedProviders=new Map,this._createEventEmitter=()=>new yo}static getInstance(){const e=So[Co];if(e)return e;const r=new $r;return So[Co]=r,r}getProviderStatus(e){var r,n;return e?(n=(r=this._domainScopedProviders.get(e))==null?void 0:r.status)!=null?n:this._defaultProvider.status:this._defaultProvider.status}setProviderAndWait(e,r,n){return it(this,null,function*(){const o=lt(e),a=ye(o?r:e),i=ye(o?n:r);i&&(o?this._domainScopedContext.set(o,i):this._context=i),yield this.setAwaitableProvider(o,a)})}setProvider(e,r,n){const o=lt(e),a=ye(o?r:e),i=ye(o?n:r);i&&(o?this._domainScopedContext.set(o,i):this._context=i);const s=this.setAwaitableProvider(o,a);return Promise.resolve(s).catch(l=>{this._logger.error("Error during provider initialization:",l)}),this}getProvider(e){return this.getProviderForClient(e)}setContext(e,r){return it(this,null,function*(){var n,o;const a=lt(e),i=(o=(n=ye(e))!=null?n:ye(r))!=null?o:{};if(a){const s=this._domainScopedProviders.get(a);if(s){const l=this.getContext(a);this._domainScopedContext.set(a,i),yield this.runProviderContextChangeHandler(a,s,l,i)}else this._domainScopedContext.set(a,i)}else{const s=this._context;this._context=i;const l=Array.from(this._domainScopedProviders.entries()).filter(([d])=>!this._domainScopedContext.has(d)).reduce((d,[u,h])=>(d.push({domain:u,wrapper:h}),d),[]),c=[{domain:void 0,wrapper:this._defaultProvider},...l];yield Promise.all(c.map(d=>this.runProviderContextChangeHandler(d.domain,d.wrapper,s,i)))}})}getContext(e){const r=lt(e);if(r){const n=this._domainScopedContext.get(r);if(n)return n;this._logger.debug(`Unable to find context for '${r}'.`)}return this._context}clearContext(e){return it(this,null,function*(){const r=lt(e);if(r){const n=this._domainScopedProviders.get(r);if(n){const o=this.getContext(r);this._domainScopedContext.delete(r);const a=this.getContext();yield this.runProviderContextChangeHandler(r,n,o,a)}else this._domainScopedContext.delete(r)}else return this.setContext({})})}clearContexts(){return it(this,null,function*(){yield this.clearContext(),yield Promise.allSettled(Array.from(this._domainScopedProviders.keys()).map(e=>this.clearContext(e)))})}getClient(e,r){return new ah(()=>this.getProviderForClient(e),()=>this.getProviderStatus(e),()=>this.buildAndCacheEventEmitterForClient(e),n=>this.getContext(n),()=>this.getHooks(),()=>this._logger,{domain:e,version:r})}clearProviders(){return it(this,null,function*(){yield eh($r.prototype,this,"clearProvidersAndSetDefault").call(this,_o),this._domainScopedContext.clear()})}runProviderContextChangeHandler(e,r,n,o){return it(this,null,function*(){var a,i,s,l,c,d;const u=((i=(a=r.provider)==null?void 0:a.metadata)==null?void 0:i.name)||"unnamed-provider";try{if(typeof r.provider.onContextChange=="function"){const h=r.provider.onContextChange(n,o);h&&typeof h?.then=="function"&&(r.incrementPendingContextChanges(),r.status=this._statusEnumType.RECONCILING,this.getAssociatedEventEmitters(e).forEach(f=>{f?.emit(De.Reconciling,{domain:e,providerName:u})}),(s=this._apiEmitter)==null||s.emit(De.Reconciling,{domain:e,providerName:u}),yield h,r.decrementPendingContextChanges())}r.status=this._statusEnumType.READY,r.allContextChangesSettled&&(this.getAssociatedEventEmitters(e).forEach(h=>{h?.emit(De.ContextChanged,{clientName:e,domain:e,providerName:u})}),(l=this._apiEmitter)==null||l.emit(De.ContextChanged,{clientName:e,domain:e,providerName:u}))}catch(h){if(r.decrementPendingContextChanges(),r.status=this._statusEnumType.ERROR,r.allContextChangesSettled){const f=h,v=`Error running ${u}'s context change handler: ${f?.message}`;(c=this._logger)==null||c.error(`${v}`,h),this.getAssociatedEventEmitters(e).forEach(_=>{_?.emit(De.Error,{clientName:e,domain:e,providerName:u,message:v})}),(d=this._apiEmitter)==null||d.emit(De.Error,{clientName:e,domain:e,providerName:u,message:v})}}})}},No=ih.getInstance();class sh{runsOn="client";metadata={name:"QueryParamProvider"};flags;constructor(e){this.flags=new Map;for(const[r,n]of e.entries())this.flags.set(r,n)}resolveBooleanEvaluation(e,r){const n=this.flags.get(e);return n===void 0?{value:r,reason:"DEFAULT"}:{value:n.toLowerCase()==="true"||n==="1",reason:"STATIC",variant:n}}resolveStringEvaluation(e,r){const n=this.flags.get(e);return n===void 0?{value:r,reason:"DEFAULT"}:{value:n,reason:"STATIC",variant:n}}resolveNumberEvaluation(e,r){const n=this.flags.get(e);if(n===void 0)return{value:r,reason:"DEFAULT"};const o=Number(n);return isNaN(o)?{value:r,reason:"ERROR",errorCode:"PARSE_ERROR",errorMessage:`Failed to parse "${n}" as a number`}:{value:o,reason:"STATIC",variant:n}}resolveObjectEvaluation(e,r){const n=this.flags.get(e);if(n===void 0)return{value:r,reason:"DEFAULT"};try{return{value:JSON.parse(n),reason:"STATIC",variant:n}}catch(o){return{value:r,reason:"ERROR",errorCode:"PARSE_ERROR",errorMessage:`Failed to parse JSON: ${o instanceof Error?o.message:String(o)}`}}}}async function lh(t){const e=typeof window<"u"?new URLSearchParams(window.location.search):new URLSearchParams,r=new sh(e);await No.setProviderAndWait(r);const n=new Map,o=No.getClient();n.set(Ro,o.getBooleanValue(Ro,ch)),n.set(bo,o.getBooleanValue(bo,uh)),n.set(Oo,o.getBooleanValue(Oo,dh));const i=e.has(Pr)?o.getBooleanValue(Pr,fh):ce.content.inspectorEnabled;n.set(Pr,i);const s=e.get("LOG_LEVEL");if(s){const l=["verbose","debug","info","warn","error"];l.includes(s.toLowerCase())?(Do(s.toLowerCase()),Ue.info("Log level set to @level via query param",s.toLowerCase())):Ue.warn("Invalid LOG_LEVEL query param: @param. Valid values: @validLevels",s,l.join(", "))}return n}const Ro="FEATURE_LEGACY_READ_ENABLED",ch=!1,bo="FEATURE_LEGACY_WRITE_ENABLED",uh=!1,Oo="FEATURE_CHANNEL_SYNC_ENABLED",dh=!0,Pr="FEATURE_INSPECTOR_ENABLED",fh=!1;async function ip(){const t=window.ph?.reactorClientModule?.pg;if(!t)throw new Error("PGlite not found");await Ns(t),await t.close()}async function hh(t){const e=await Cf(),r=[e,...t];return zr([e,...t]),r}async function ph(){if(window.ph||(window.ph={}),window.ph.loading)return;window.ph.loading=!0,os(),as(dt);const t=await lh();Ue.info("Features: @features",JSON.stringify(Object.fromEntries(t),null,2));const e=await is.create(),r=await new ss().withKeyPairStorage(e).build(),n=await new ls("connect",{basename:ut.routerBasename,baseUrl:ut.renownUrl}).withCrypto(r).build(),o=await Rf(),a=await hh(o),i=a.flatMap(R=>R.modules.documentModelModules).filter(R=>R!==void 0),s=a.flatMap(R=>R.upgradeManifests),l=await Ed(i,s,n),c=await cs(l.client),d=window.location.pathname,u=us(d),h=ds(d),f=gh();await fs(f,n);const v=new hs(l.client);ps(ut),gs(l),ms(l.client),Es(v),vs(r),_s(n.did),ys(n),Cs(c),zr(a),Yt(u),Ar(h),Ss(t);const _=vd();_.length>0&&await _d(_);const S=mh();if(S)try{await Wt(S,{})}catch(R){console.error(`Failed to add remote drive from ${S}:`,R)}l.client.subscribe({type:"powerhouse/document-drive"},R=>{Ue.verbose("ReactorClient subscription event: @event",R),gn(l.client).catch(A=>Ue.error("@error",A))}),await gn(l.client),window.ph.loading=!1}function gh(){const e=new URLSearchParams(window.location.search).get("user");return e?decodeURIComponent(e):void 0}function mh(){const e=new URLSearchParams(window.location.search).get("driveUrl");return e?decodeURIComponent(e):void 0}function Eh(){const t=jo();g.useEffect(()=>{let e=null;if(t){const{credential:r,...n}=t;e={id:n.did,username:n.ens?.name,...n}}Hs(e)},[t])}function vh(){return N.jsx("div",{className:"h-screen",children:N.jsx("div",{className:"flex h-screen items-stretch overflow-auto",role:"presentation",tabIndex:0,children:N.jsxs(g.Suspense,{name:"Root",children:[N.jsx(kh,{}),N.jsx("div",{className:"relative flex-1 overflow-auto",children:N.jsx(wu,{})})]})})})}function _h(){const[t]=Fo(),e=Rs(),r=Ho();g.useEffect(()=>{r||bs(el)},[r]),g.useEffect(()=>{t||Os(tl)},[t]);const n=!r&&!t&&!e;return N.jsx(yh,{children:n?N.jsx(Sh,{}):N.jsx(Zd,{})})}function yh({children:t}){return N.jsx("div",{className:"flex h-full flex-col overflow-auto",id:"content-view",children:t})}function Ch({drive:t}){const r=Mo(t.header.meta?.preferredEditor)?.name||"Drive Explorer App";return N.jsx(Oi,{title:t.state.global.name,description:r,icon:N.jsx(Oa,{drive:t}),onClick:()=>Yt(t)},t.header.id)}function Sh(){const t=Bo(),e=ce;return N.jsxs(Io,{children:[t?.map(r=>N.jsx(Ch,{drive:r},r.header.id)),e.drives.addDriveEnabled&&N.jsx(bi,{})]})}const Nh=t=>g.createElement("svg",{width:28,height:32,viewBox:"0 0 28 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},g.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0.05092 23.7286L0.000163347 23.9993L0 23.9995L0.207853 24.067L27.6823 24.067L27.9995 23.9995L27.9161 23.6913L14.2182 0.209032L13.9998 0L13.749 0.246353L0.05092 23.7286ZM20.9994 11.9999L7.0003 11.9999L13.9998 23.999L20.9994 11.9999Z",fill:"url(#paint0_radial_319_20865)"}),g.createElement("path",{d:"M14 0L0 23.9998V7.99993L14 0Z",fill:"url(#paint1_linear_319_20865)"}),g.createElement("path",{d:"M28 24L7.82013e-05 24L14 31.9999L28 24Z",fill:"url(#paint2_linear_319_20865)"}),g.createElement("path",{d:"M14 0L28 23.9998V7.99993L14 0Z",fill:"url(#paint3_linear_319_20865)"}),g.createElement("defs",null,g.createElement("radialGradient",{id:"paint0_radial_319_20865",cx:0,cy:0,r:1,gradientUnits:"userSpaceOnUse",gradientTransform:"translate(13.9994 16.0344) rotate(-89.9988) scale(16.0344 16.201)"},g.createElement("stop",{offset:.181008,stopColor:"#FFCD6B"}),g.createElement("stop",{offset:1,stopColor:"#EB5EDF"})),g.createElement("linearGradient",{id:"paint1_linear_319_20865",x1:-.031454,y1:24.041,x2:13.801,y2:-.142908,gradientUnits:"userSpaceOnUse"},g.createElement("stop",{stopColor:"#4331E9"}),g.createElement("stop",{offset:1,stopColor:"#A273FF"})),g.createElement("linearGradient",{id:"paint2_linear_319_20865",x1:-.0310093,y1:24,x2:28.0444,y2:24,gradientUnits:"userSpaceOnUse"},g.createElement("stop",{stopColor:"#A273FF"}),g.createElement("stop",{offset:1,stopColor:"#4331E9"})),g.createElement("linearGradient",{id:"paint3_linear_319_20865",x1:28.0315,y1:24.041,x2:14.199,y2:-.142908,gradientUnits:"userSpaceOnUse"},g.createElement("stop",{stopColor:"#A273FF"}),g.createElement("stop",{offset:1,stopColor:"#4331E9"})))),Rh=t=>g.createElement("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},g.createElement("path",{d:"M15.6867 8.03333C15.4933 7.83999 15.1733 7.83999 14.98 8.03333L14.6733 8.34001V8C14.6733 4.32 11.68 1.32666 7.99999 1.32666C5.96666 1.32666 4.06666 2.23999 2.79333 3.82666C2.61999 4.03999 2.65332 4.35999 2.87332 4.52665C3.08666 4.69999 3.40666 4.66666 3.57332 4.44666C4.65999 3.09332 6.27332 2.31999 7.99999 2.31999C11.1267 2.31999 13.6733 4.86666 13.6733 7.99333V8.32666L13.3667 8.02002C13.1733 7.82669 12.8533 7.82669 12.66 8.02002C12.4667 8.21335 12.4667 8.53335 12.66 8.72668L13.82 9.88668C13.8667 9.93334 13.92 9.96666 13.98 9.99333C14.04 10.02 14.1067 10.0333 14.1733 10.0333C14.24 10.0333 14.3 10.02 14.3667 9.99333C14.4267 9.96666 14.48 9.93334 14.5267 9.88668L15.6867 8.72668C15.88 8.54668 15.88 8.22666 15.6867 8.03333Z",fill:"#6C7275"}),g.createElement("path",{d:"M13.1267 11.4666C12.9133 11.2933 12.5933 11.3266 12.4267 11.5466C11.34 12.9 9.72665 13.6733 7.99998 13.6733C4.87332 13.6733 2.32665 11.1266 2.32665 7.99996V7.66663L2.63332 7.97331C2.73332 8.07331 2.85999 8.11996 2.98665 8.11996C3.11332 8.11996 3.23999 8.07331 3.33999 7.97331C3.53332 7.77998 3.53332 7.45998 3.33999 7.26664L2.17998 6.10661C2.13332 6.05994 2.07998 6.02663 2.01998 5.99996C1.89998 5.94663 1.75998 5.94663 1.63998 5.99996C1.57998 6.02663 1.52665 6.05994 1.47999 6.10661L0.319988 7.26664C0.126654 7.45998 0.126654 7.77998 0.319988 7.97331C0.513321 8.16664 0.833319 8.16664 1.02665 7.97331L1.33332 7.66663V7.99996C1.33332 11.68 4.32665 14.6733 8.00665 14.6733C10.04 14.6733 11.94 13.76 13.2133 12.1733C13.38 11.96 13.3467 11.64 13.1267 11.4666Z",fill:"#6C7275"})),bh="https://apps.powerhouse.io/sky-atlas/staging/switchboard",Oh=2e3;function Lh(){const{search:t}=cr();return g.useMemo(()=>{const r=new URLSearchParams(t).get("reactorUrl")??bh;return r.endsWith("/")?r:`${r}/`},[t])}async function xh(t,e){const r=As`
|
|
14
|
+
}`}}):null,N.jsx(bd,{})]})};function Ld({children:t}){return N.jsx(N.Fragment,{children:t})}const xd=({children:t})=>(Ju(),t),Dd=()=>(g.useEffect(()=>{const t=()=>{console.log("Outdated chunks detected, reloading page..."),window.location.reload()};return window.addEventListener("vite:preloadError",t),()=>{window.removeEventListener("vite:preloadError",t)}},[]),g.useEffect(()=>{Nd.registerServiceWorker(!1)},[]),N.jsx(xd,{children:N.jsx(_i,{children:N.jsxs(Ld,{children:[N.jsx(yi,{position:"bottom-right",containerId:"connect"}),N.jsx(Ih,{}),N.jsx(gd,{})]})})})),wd={cancel:"Cancel",delete:"Delete",continue:"Continue",empty:"Empty",create:"Create",save:"Save",export:"Export",reload:"Reload",reloadConnect:"Click here to reload Connect"},Pd={placeholder:"Search Powerhouse",filterLabel:"File type"},Ad={sections:{folders:{title:"Folders",empty:"No folders 🗂️"},documents:{title:"Documents and files",empty:"No documents or files 📄"}}},Td={options:{switchboardLink:"Switchboard Link"}},Id={deleteItem:{folder:{header:"Delete “{{item}}” folder?",body:"Are you sure you want to delete this folder? All files and subfolders within it will be removed."},file:{header:"Delete “{{item}}” file?",body:"Are you sure you want to delete this file?"}},deleteDrive:{title:'Delete "{{label}}" drive?',body:"Are you sure you want to delete this drive? All files and subfolders within it will be removed. Do you want to proceed?",inputPlaceholder:"Enter drive name..."},upgradeDrive:{header:"Upgrade to cloud drive",body:"You are moving files from a private to a shared drive. These files will become accessible to others in the shared drive.Do you want to proceed?"},createDocument:{header:"Create a new document",placeholder:"Document name"},connectSettings:{title:"Settings",body:"These settings will apply to all drives.",clearStorage:{button:"Clear Storage",description:"Delete previous session data",confirmation:{title:"Clear Storage",body:"Are you sure you want to clear the storage? This will remove all previous session data.",clearButton:"Clear Storage"}},enabledDocumentTypes:{title:"Document Models",description:"Documents enabled",allSelected:"All documents are selected"}},exportDocumentWithErrors:{title:"Your document contains errors",body:"Your document contains structure errors. Do you want to export it anyway?"},disclaimer:{title:"Disclaimer",body:"All content provided herein our website, hyperlinked sites, associated applications, forums, blogs, social media accounts and other platforms (“Site”) is for your general information only, procured from third party sources. We make no warranties of any kind in relation to our content, including but not limited to accuracy and updatedness. No part of the content that we provide constitutes financial advice, legal advice or any other form of advice meant for your specific reliance for any purpose. Any use or reliance on our content is solely at your own risk and discretion. You should conduct your own research, review, analyse and verify our content before relying on them. Trading is a highly risky activity that can lead to major losses, please therefore consult your financial advisor before making any decision. No content on our Site is meant to be a solicitation or offer."},cookiesPolicy:{title:"Cookies Policy",body:"<subtitle>Use of Cookies and Similar Technologies</subtitle><p>The Site is using cookies. Cookies are small text files that are placed on your computer by websites that you visit. They are widely used in order to make websites work, or work more efficiently, as well as to provide information to the owners of the site. Cookies are typically stored on your computer´s hard drive.Information collected from cookies is used by us to evaluate the effectiveness of our Site and analyze trends. The information collected from cookies allows us to determine such things as which parts of the Site are most visited and difficulties our visitors may experience in accessing the SIte. With this knowledge, we can improve the quality of your experience on the Site by recognizing and delivering more of the most desired features and information, as well as by resolving access difficulties.</p><p>We use third party service providers, to assist us in better understanding the use of our Site. Our service providers will place cookies on the hard drive of your computer (or use similar technologies) and will receive information that we select that will educate us on such things as how visitors navigate around our Site. This information is aggregated to provide statistical data about our users browsing actions and patterns, and does not personally identify individuals. This information may include:</p><p>Computer or mobile device information, Website usage information, such as:<list></p><bullet>Page views,</bullet><bullet>Button clicks,</bullet><bullet>Input form changes (without the values being entered),</bullet><bullet>Errors.</bullet></list><p>Our service providers analyses this information and provides us with aggregate reports. The information and analysis provided by our service providers will be used to assist us in better understanding our visitors interests in our Site and how to better serve those interests. If you want to avoid using cookies altogether, you can disable cookies in your browser. However, disabling cookies might make it impossible for you to use certain features of the Site. Your use of the Site with a browser that is configured to accept cookies constitutes an acceptance of our and third-party cookies.</p>"}},kd={deleteDriveSuccess:"Drive successfully deleted",deleteFolderSuccess:"Folder deleted",fileDeleteSuccess:"File deleted",addDriveSuccess:"New drive successfully added",driveSyncSuccess:"Drive synced successfully",driveSyncError:"Error synchronizing drive {{drive}}",driveSyncConflict:"Conflict error detected in {{drive}}",reloadApp:"It seems like you're running an outdated version of the app. Please reload Connect to get the latest version."},Hd={cookiePolicy:"Cookie Policy",termsOfUse:"Terms of Use",disclaimer:"Disclaimer",builtWith:"Built with <icon /> Powerhouse"},Md={message:"This website uses cookies for analytic purposes only. Cookies are anonymous and do not link to user data. We collect information to improve the user experience and validate UI changes. You can still use the page without cookies. For more information, please read our <a>cookies policy.</a>",accept:"Accept configured cookies",reject:"Reject all cookies",cookies:{functional:"Functional cookies",analytics:"Analytics cookies"}},jd={common:wd,searchbar:Pd,folderView:Ad,files:Td,modals:Id,notifications:kd,footer:Hd,cookieBanner:Md},Fd={en:{code:"en",name:"English",translation:jd}};pe.use(Ql).init({resources:Fd,fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}}).catch(t=>{console.error(t)});const Bd=(t,e)=>t.some(r=>r.id===e&&r.value),Vd=()=>{const{t}=Qo(void 0,{useSuspense:!0,i18n:pe}),[e,r]=pc(),[,n]=Wr(),o=[{id:"analytics-cookie",label:t("cookieBanner.cookies.analytics"),value:!0}],a=s=>{r(!1),Bd(s,"analytics-cookie")&&n(l=>({...l,analytics:!0}))},i=()=>{r(!1),n(()=>({analytics:!1,functional:!1,marketing:!1}))};return e?N.jsxs("div",{className:"absolute inset-0 z-[10000] backdrop-blur-sm",children:[N.jsx("div",{className:"absolute inset-0 bg-black opacity-15"}),N.jsx("div",{className:"absolute inset-x-0 bottom-0 flex justify-center bg-white px-10 pb-16 pt-10 shadow-lg",children:N.jsx(Ci,{className:"max-w-[1024px]",cookies:o,onSubmit:a,onReject:i,submitLabel:t("cookieBanner.accept"),rejectLabel:t("cookieBanner.reject"),children:N.jsx("p",{className:"font-semibold text-gray-500",children:N.jsx(tc,{i18nKey:"cookieBanner.message",components:{a:N.jsx("a",{onClick:()=>Me({type:"cookiesPolicy"}),className:"cursor-pointer text-gray-900 hover:underline"},"cookieBanner.message-link")}},"cookieBanner.message")})})})]}):null};function Ud(){const[t]=ji(),e=Fi(t.header.id),r=g.useCallback(()=>{Bi(t).length?Me({type:"exportDocumentWithErrors",documentId:t.header.id}):Vi(t).catch(i=>{console.error(i);const s=i instanceof Error?i.message:JSON.stringify(i,null,1);dt(`Failed to export document: ${s}`)})},[t]),n=g.useMemo(()=>async()=>{},[]),o=g.useCallback(()=>{Ar(e)},[e,Ar]);return N.jsx("div",{id:"document-editor-container",className:"flex-1","data-document-type":t.header.documentType,children:N.jsx(Qd,{document:t,onClose:o,onExport:r,onOpenSwitchboardLink:n})})}function St(t){const[e,r]=g.useState(!1);if(g.useEffect(()=>{setTimeout(()=>{r(!0)},t.loadingTimeout??200)},[t]),!e)return null;const{customEditorLoader:n,...o}=t;return n?N.jsx(N.Fragment,{children:n}):N.jsx(Si,{...o})}const $d=g.createContext(null),Lr={didCatch:!1,error:null};let Kd=class extends g.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=Lr}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(e!==null){for(var r,n,o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];(r=(n=this.props).onReset)===null||r===void 0||r.call(n,{args:a,reason:"imperative-api"}),this.setState(Lr)}}componentDidCatch(e,r){var n,o;(n=(o=this.props).onError)===null||n===void 0||n.call(o,e,r)}componentDidUpdate(e,r){const{didCatch:n}=this.state,{resetKeys:o}=this.props;if(n&&r.error!==null&&zd(e.resetKeys,o)){var a,i;(a=(i=this.props).onReset)===null||a===void 0||a.call(i,{next:o,prev:e.resetKeys,reason:"keys"}),this.setState(Lr)}}render(){const{children:e,fallbackRender:r,FallbackComponent:n,fallback:o}=this.props,{didCatch:a,error:i}=this.state;let s=e;if(a){const l={error:i,resetErrorBoundary:this.resetErrorBoundary};if(typeof r=="function")s=r(l);else if(n)s=g.createElement(n,l);else if(o!==void 0)s=o;else throw i}return g.createElement($d.Provider,{value:{didCatch:a,error:i,resetErrorBoundary:this.resetErrorBoundary}},s)}};function zd(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return t.length!==e.length||t.some((r,n)=>!Object.is(r,e[n]))}const Wd=Kr(["Connect"]);function Yd(t){return"fallbackRender"in t}function Gd(){return null}function Jd({message:t="Something went wrong"}){return N.jsx("div",{className:"text-center",children:t})}function Xd({error:t}){const e=t instanceof Error?t.message:String(t);return N.jsxs("div",{className:"mx-auto flex max-w-[80%] flex-1 flex-col items-center justify-center",children:[N.jsx("h1",{className:"mb-2 text-xl font-semibold",children:"Error"}),N.jsx("i",{children:e}),N.jsx("pre",{children:JSON.stringify(t,null,2)})]})}function ba({error:t}){const e=t instanceof Error?t.message:String(t);return N.jsx("div",{className:"flex size-full items-center justify-center",children:N.jsx("h3",{className:"text-lg font-semibold",children:e})})}function qd(t,e){switch(t){case"silent":return Gd;case"text":return()=>N.jsx(Jd,{message:e});case"detailed":return Xd;default:return ba}}function ur(t){const{children:e,onError:r,resetKeys:n,loggerContext:o}=t,a=(s,l)=>{if(s.message.includes("Failed to fetch dynamically imported module")&&s.message.includes("node_modules/.vite")){console.error(s),console.log("Outdated chunk detected, reloading page..."),window.location.reload();return}(o?Kr(o):Wd).error("@error @info",s,l),r?.(s,l)},i=Yd(t)?t.fallbackRender:qd(t.variant,t.fallbackMessage);return N.jsx(Kd,{fallbackRender:i,onError:a,resetKeys:n,children:e})}function Zd(){const[t]=Ui(),e=Ho(),r=Mo(t.header.meta?.preferredEditor),n=$i(),o=r?.Component??n?.Component??Ao.Component;if(!o)throw new Error("No drive editor component found");return N.jsx(ur,{variant:"detailed",resetKeys:[t.header.id],loggerContext:["Connect","DriveEditor"],children:N.jsx(g.Suspense,{fallback:N.jsx(St,{}),children:N.jsx(Ni,{className:"flex h-full flex-col overflow-auto",children:N.jsx(o,{children:e?N.jsx(Ud,{}):null})})})})}function Oa({drive:t}){const e=Ki(),r=g.useMemo(()=>t?e.some(o=>o.collectionId===zi("main",t.header.id)):!1,[e,t]),n=t?.state.global.icon;return n?N.jsx("img",{src:n,alt:t.header.name,height:32,width:32}):r?N.jsx(mn,{name:"Server",size:32}):N.jsx(mn,{name:"Hdd",size:32})}function ho({message:t}){return N.jsx("div",{className:"flex size-full items-center justify-center",children:N.jsx("h3",{className:"text-lg font-semibold",children:t})})}const Qd=t=>{const{document:e,onClose:r,onExport:n,onOpenSwitchboardLink:o}=t,a=Wi(),i=Yi(),[s,l]=Gi(e.header.id),c=s?.header.id??void 0,d=s?.header.name??void 0,u=s?.header.documentType??void 0,h=s?.header.meta?.preferredEditor??void 0,{globalOperations:f,localOperations:v,isLoading:_,refetch:S}=Ji(c);g.useEffect(()=>{i&&S()},[i,S]);const C=s?.header.revision.global??0,R=s?.header.revision.local??0,A=Xi(u),b=qi(h),w=Zi(u),T=b??w,E=!s,L=T&&u&&!T.documentTypes.includes(u)&&!T.documentTypes.includes("*"),j=C>0||R>0,H=!!s?.clipboard.length;dd({undo:()=>l(gi()),redo:()=>l(mi()),canUndo:j,canRedo:H}),g.useEffect(()=>()=>{window.documentEditorDebugTools?.clear()},[]);const[W,G]=g.useState(void 0);g.useEffect(()=>{W&&W.documentId!==c&&G(void 0)},[W,c]);const ge=(X,ee)=>{G({error:X,documentId:c,info:ee})};if(L)return N.jsx(St,{message:"Loading editor"});if(E)return N.jsx(St,{message:"Loading document"});if(!A)return N.jsx(ho,{message:N.jsxs("div",{className:"text-center leading-10",children:[N.jsxs("p",{children:['Unable to open the document because the document model "',u,'" is not supported.']}),N.jsxs("p",{children:["Go to the"," ",N.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{Me({type:"settings"})},children:"package manager"})," ","to install this document model"]})]})});if(!T)return N.jsx(ho,{message:N.jsxs("div",{className:"text-center leading-10",children:[N.jsx("p",{children:"Unable to open the document because no editor has been found"}),N.jsxs("p",{children:["Go to the"," ",N.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{Me({type:"settings"})},children:"package manager"})," ",'an editor for the "$',u,'" document type']})]})});const ue=T.Component;return N.jsx("div",{className:"relative h-full",id:"document-editor-context","data-editor":T.id,"data-document-type":u,children:i?_?N.jsx(St,{message:"Loading operations"}):N.jsx(Ri,{documentTitle:d??"",documentId:c??"",globalOperations:f,localOperations:v,onClose:()=>Qi(!1),documentState:s.state,onCopyState:()=>{dt("Copied document state to clipboard",{type:"success"})},onCopyDocId:()=>{dt("Copied document ID to clipboard",{type:"success"})}},c):N.jsx(g.Suspense,{fallback:N.jsx(St,{message:"Loading editor"}),name:"EditorLoader",children:N.jsx(ur,{fallbackRender:ba,resetKeys:[c],onError:ge,loggerContext:["Connect","DocumentEditor"],children:!W?.error&&N.jsx(ue,{context:{readMode:!!a,selectedTimelineRevision:es(a?.startDate,a?.endDate,f)},documentId:s.header.id},c)})})})},ef=g.lazy(()=>de(()=>import("./AddDriveModal-CLtIH36m.js"),__vite__mapDeps([3,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.AddDriveModal}))),tf=g.lazy(()=>de(()=>import("./ClearStorageModal-DVu2jGOi.js"),__vite__mapDeps([19,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.ClearStorageModal}))),rf=g.lazy(()=>de(()=>import("./CookiesPolicyModal-7kRg-DxQ.js"),__vite__mapDeps([20,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.CookiesPolicyModal}))),nf=g.lazy(()=>de(()=>import("./CreateDocumentModal-DJ0ZYujG.js"),__vite__mapDeps([21,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])).then(t=>({default:t.CreateDocumentModal}))),of=g.lazy(()=>de(()=>import("./DebugSettingsModal-8jhXYQyg.js"),__vite__mapDeps([22,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DebugSettingsModal}))),af=g.lazy(()=>de(()=>import("./DeleteDriveModal-DOfGKE2m.js"),__vite__mapDeps([23,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DeleteDriveModal}))),sf=g.lazy(()=>de(()=>import("./DeleteItemModal-B6YOYMpX.js"),__vite__mapDeps([24,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DeleteItemModal}))),lf=g.lazy(()=>de(()=>import("./DisclaimerModal-DpPQXBr8.js"),__vite__mapDeps([25,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.DisclaimerModal}))),cf=g.lazy(()=>de(()=>import("./DriveSettingsModal-DZvGgDDF.js"),__vite__mapDeps([26,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])).then(t=>({default:t.DriveSettingsModal}))),uf=g.lazy(()=>de(()=>import("./ExportDocumentWithErrorsModal-DWSaMqCZ.js"),__vite__mapDeps([27,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.ExportDocumentWithErrorsModal}))),df=g.lazy(()=>de(()=>import("./SettingsModal-Y_gtPnBy.js"),__vite__mapDeps([28,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,29,17,18])).then(t=>({default:t.SettingsModal}))),ff=g.lazy(()=>de(()=>import("./UpgradeDriveModal-D-b6vgNu.js"),__vite__mapDeps([30,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16,17,18])).then(t=>({default:t.UpgradeDriveModal}))),hf=g.lazy(()=>de(()=>import("./index-CnEJ-s0j.js"),__vite__mapDeps([31,4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])).then(t=>({default:t.InspectorModal}))),pf={addDrive:ef,clearStorage:tf,cookiesPolicy:rf,createDocument:nf,debugSettings:of,deleteDrive:af,deleteItem:sf,disclaimer:lf,driveSettings:cf,exportDocumentWithErrors:uf,inspector:hf,settings:df,upgradeDrive:ff};function gf(){const t=ts();if(!t?.type)return null;const e=pf[t.type];return e?N.jsx(ur,{variant:"silent",loggerContext:["Connect","Modals"],children:N.jsx(g.Suspense,{fallback:null,children:N.jsx(e,{})})}):null}const mf={Component:g.lazy(()=>de(()=>import("./document_model_editor-B_fRFi56.js").then(t=>t.B),__vite__mapDeps([4,5,6,0,1,2,7,8,9,10,11,12,13,14,15,16])))};function Ef(){const t="Generic Drive Explorer",e=["powerhouse/document-drive"],r=Ao.Component;return{id:rs,name:t,documentTypes:e,Component:r}}function vf(){const t="Document Model Editor",e="document-model-editor-v2",r=["powerhouse/document-model"],n=mf.Component;return{id:e,name:t,documentTypes:r,Component:n}}async function _f(){const t=jt.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=jt.reducer,s=jt.actions,l=jt.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:wo(Po(),t)}}async function yf(){const t=Ft.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=Ft.reducer,s=Ft.actions,l=Ft.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:wo(Po(),t)}}async function Cf(){const t=await _f(),e=await yf(),r=vf(),n=Ef();return{id:ns,name:"Common",description:"Common",category:"Common",author:{name:"Powerhouse",website:"https://powerhousedao.com"},modules:{documentModelModules:[t,e],editorModules:[r,n]},upgradeManifests:[]}}const{externalPackagesEnabled:Sf}=ce;function Nf(t){return t.loadExternalPackages().then(e=>e.map(ko))}async function Rf(){try{if(!Sf)return[];const t=await de(()=>import("./_virtual_ph_external-packages-CM1tCR4L.js"),[]);return Nf(t)}catch(t){return console.error(t),[]}}var bf=Object.defineProperty,Of=Object.defineProperties,Lf=Object.getOwnPropertyDescriptors,po=Object.getOwnPropertySymbols,xf=Object.prototype.hasOwnProperty,Df=Object.prototype.propertyIsEnumerable,go=(t,e,r)=>e in t?bf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,xr=(t,e)=>{for(var r in e||(e={}))xf.call(e,r)&&go(t,r,e[r]);if(po)for(var r of po(e))Df.call(e,r)&&go(t,r,e[r]);return t},Dr=(t,e)=>Of(t,Lf(e)),st=(t,e,r)=>new Promise((n,o)=>{var a=l=>{try{s(r.next(l))}catch(c){o(c)}},i=l=>{try{s(r.throw(l))}catch(c){o(c)}},s=l=>l.done?n(l.value):Promise.resolve(l.value).then(a,i);s((r=r.apply(t,e)).next())}),wf=class{constructor(){this.data=new Map}set(t,e){this.data.set(t,e)}get(t){return this.data.get(t)}has(t){return this.data.has(t)}delete(t){return this.data.delete(t)}clear(){this.data.clear()}},Pf={ERROR:"ERROR"},La=(t=>(t.PROVIDER_NOT_READY="PROVIDER_NOT_READY",t.PROVIDER_FATAL="PROVIDER_FATAL",t.FLAG_NOT_FOUND="FLAG_NOT_FOUND",t.PARSE_ERROR="PARSE_ERROR",t.TYPE_MISMATCH="TYPE_MISMATCH",t.TARGETING_KEY_MISSING="TARGETING_KEY_MISSING",t.INVALID_CONTEXT="INVALID_CONTEXT",t.GENERAL="GENERAL",t))(La||{}),We=class xa extends Error{constructor(e,r){super(e),Object.setPrototypeOf(this,xa.prototype),this.name="OpenFeatureError",this.cause=r?.cause}},Af=class Da extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Da.prototype),this.name="FlagNotFoundError",this.code="FLAG_NOT_FOUND"}},wa=class Pa extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Pa.prototype),this.name="GeneralError",this.code="GENERAL"}},Tf=class Aa extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Aa.prototype),this.name="InvalidContextError",this.code="INVALID_CONTEXT"}},If=class Ta extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ta.prototype),this.name="ParseError",this.code="PARSE_ERROR"}},Ia=class ka extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,ka.prototype),this.name="ProviderFatalError",this.code="PROVIDER_FATAL"}},Ha=class Ma extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ma.prototype),this.name="ProviderNotReadyError",this.code="PROVIDER_NOT_READY"}},kf=class ja extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,ja.prototype),this.name="TargetingKeyMissingError",this.code="TARGETING_KEY_MISSING"}},Hf=class Fa extends We{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Fa.prototype),this.name="TypeMismatchError",this.code="TYPE_MISMATCH"}},Mf=(t,e)=>{switch(t){case"FLAG_NOT_FOUND":return new Af(e);case"PARSE_ERROR":return new If(e);case"TYPE_MISMATCH":return new Hf(e);case"TARGETING_KEY_MISSING":return new kf(e);case"INVALID_CONTEXT":return new Tf(e);case"PROVIDER_NOT_READY":return new Ha(e);case"PROVIDER_FATAL":return new Ia(e);default:return new wa(e)}},xt=(t=>(t.NOT_READY="NOT_READY",t.READY="READY",t.ERROR="ERROR",t.STALE="STALE",t.FATAL="FATAL",t.RECONCILING="RECONCILING",t))(xt||{}),De=(t=>(t.Ready="PROVIDER_READY",t.Error="PROVIDER_ERROR",t.ConfigurationChanged="PROVIDER_CONFIGURATION_CHANGED",t.ContextChanged="PROVIDER_CONTEXT_CHANGED",t.Reconciling="PROVIDER_RECONCILING",t.Stale="PROVIDER_STALE",t))(De||{}),jf={READY:"PROVIDER_READY",ERROR:"PROVIDER_ERROR",FATAL:"PROVIDER_ERROR",STALE:"PROVIDER_STALE",RECONCILING:"PROVIDER_RECONCILING",NOT_READY:void 0},Ba=(t,e)=>!e&&t==="PROVIDER_READY"||jf[e]===t,Va=class{error(...t){console.error(...t)}warn(...t){console.warn(...t)}info(){}debug(){}},Ff=["error","warn","info","debug"],en=class{constructor(t){this.fallbackLogger=new Va;try{for(const e of Ff)if(!t[e]||typeof t[e]!="function")throw new Error(`The provided logger is missing the ${e} method.`);this.logger=t}catch(e){console.error(e),console.error("Falling back to the default logger."),this.logger=this.fallbackLogger}}error(...t){this.log("error",...t)}warn(...t){this.log("warn",...t)}info(...t){this.log("info",...t)}debug(...t){this.log("debug",...t)}log(t,...e){try{this.logger[t](...e)}catch{this.fallbackLogger[t](...e)}}},Bf=class{constructor(t){this.globalLogger=t,this._handlers={PROVIDER_CONFIGURATION_CHANGED:new WeakMap,PROVIDER_CONTEXT_CHANGED:new WeakMap,PROVIDER_READY:new WeakMap,PROVIDER_ERROR:new WeakMap,PROVIDER_STALE:new WeakMap,PROVIDER_RECONCILING:new WeakMap}}emit(t,e){this.eventEmitter.emit(t,e)}addHandler(t,e){const r=o=>st(this,null,function*(){var a;try{yield e(o)}catch(i){(a=this._logger)==null||a.error("Error running event handler:",i)}}),n=this._handlers[t].get(e);this._handlers[t].set(e,[...n||[],r]),this.eventEmitter.on(t,r)}removeHandler(t,e){const r=this._handlers[t].get(e);if(r){const n=r.pop();n&&this.eventEmitter.removeListener(t,n)}}removeAllHandlers(t){t?this.eventEmitter.removeAllListeners(t):this.eventEmitter.removeAllListeners()}getHandlers(t){return this.eventEmitter.listeners(t)}setLogger(t){return this._eventLogger=new en(t),this}get _logger(){var t,e;return(e=this._eventLogger)!=null?e:(t=this.globalLogger)==null?void 0:t.call(this)}};function Vf(t){return typeof t=="string"}function lt(t){return Vf(t)?t:void 0}function Uf(t){return typeof t=="object"}function ye(t){return Uf(t)?t:void 0}function mo(t){return typeof t<"u"&&t!==null}var Ur=class{constructor(t,e,r){this._provider=t,this._status=e,this._pendingContextChanges=0;var n,o,a;(n=t.events)==null||n.addHandler("PROVIDER_READY",()=>{this._status=r.READY}),(o=t.events)==null||o.addHandler("PROVIDER_STALE",()=>{this._status=r.STALE}),(a=t.events)==null||a.addHandler("PROVIDER_ERROR",i=>{i?.errorCode==="PROVIDER_FATAL"?this._status=r.FATAL:this._status=r.ERROR})}get provider(){return this._provider}set provider(t){this._provider=t}get status(){return this._status}set status(t){this._status=t}get allContextChangesSettled(){return this._pendingContextChanges===0}incrementPendingContextChanges(){this._pendingContextChanges++}decrementPendingContextChanges(){this._pendingContextChanges--}},$f=class{constructor(t){this._hooks=[],this._context={},this._logger=new Va,this._clientEventHandlers=new Map,this._domainScopedContext=new Map,this._clientEvents=new Map,this._runsOn=t}addHooks(...t){return this._hooks=[...this._hooks,...t],this}getHooks(){return this._hooks}clearHooks(){return this._hooks=[],this}setLogger(t){return this._logger=new en(t),this}get providerMetadata(){return this.getProviderMetadata()}getProviderMetadata(t){return this.getProviderForClient(t).metadata}addHandler(t,e,r){[...new Map([[void 0,this._defaultProvider]]),...this._domainScopedProviders].forEach(n=>{var o;const a=n[0],i=n[1].provider,s=n[1].status;if(Ba(t,s))try{e({domain:a,providerName:i.metadata.name})}catch(c){(o=this._logger)==null||o.error("Error running event handler:",c)}}),this._apiEmitter.addHandler(t,e),r?.signal&&typeof r.signal.addEventListener=="function"&&r.signal.addEventListener("abort",()=>{this.removeHandler(t,e)})}removeHandler(t,e){this._apiEmitter.removeHandler(t,e)}clearHandlers(){this._apiEmitter.removeAllHandlers()}getHandlers(t){return this._apiEmitter.getHandlers(t)}setAwaitableProvider(t,e){var r,n,o,a,i,s,l,c;const d=lt(t),u=(r=ye(t))!=null?r:ye(e);if(!u){this._logger.debug("No provider defined, ignoring setProvider call");return}const h=this.getProviderForClient(d),f=u.metadata.name;if(h===u){this._logger.debug("Provider is already set, ignoring setProvider call");return}if(!u.runsOn)this._logger.debug(`Provider '${u.metadata.name}' has not defined its intended use.`);else if(u.runsOn!==this._runsOn)throw new wa(`Provider '${u.metadata.name}' is intended for use on the ${u.runsOn}.`);const v=this.getAssociatedEventEmitters(d);let _;const S=new Ur(u,this._statusEnumType.NOT_READY,this._statusEnumType);return typeof u.initialize=="function"&&!this.allProviders.includes(u)?_=(i=(a=(o=u.initialize)==null?void 0:o.call(u,d?(n=this._domainScopedContext.get(d))!=null?n:this._context:this._context))==null?void 0:a.then(()=>{var C;S.status=this._statusEnumType.READY,this.getAssociatedEventEmitters(d).forEach(R=>{R?.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}),(C=this._apiEmitter)==null||C.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}))==null?void 0:i.catch(C=>{var R;throw C?.code==="PROVIDER_FATAL"?S.status=this._statusEnumType.FATAL:S.status=this._statusEnumType.ERROR,this.getAssociatedEventEmitters(d).forEach(A=>{A?.emit("PROVIDER_ERROR",{clientName:d,domain:d,providerName:f,message:C?.message})}),(R=this._apiEmitter)==null||R.emit("PROVIDER_ERROR",{clientName:d,domain:d,providerName:f,message:C?.message}),C}):(S.status=this._statusEnumType.READY,v.forEach(C=>{C?.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}),(s=this._apiEmitter)==null||s.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})),d?this._domainScopedProviders.set(d,S):this._defaultProvider=S,this.transferListeners(h,u,d,v),this.allProviders.includes(h)||(c=(l=h?.onClose)==null?void 0:l.call(h))==null||c.catch(C=>{this._logger.error(`error closing provider: ${C?.message}, ${C?.stack}`)}),_}getProviderForClient(t){var e,r;return t?(r=(e=this._domainScopedProviders.get(t))==null?void 0:e.provider)!=null?r:this._defaultProvider.provider:this._defaultProvider.provider}buildAndCacheEventEmitterForClient(t){const e=this._clientEvents.get(t);if(e)return e;const r=this._createEventEmitter();this._clientEvents.set(t,r);const n=this.getProviderForClient(t);return Object.values(De).forEach(o=>{var a;return(a=n.events)==null?void 0:a.addHandler(o,i=>st(this,null,function*(){r.emit(o,Dr(xr({},i),{clientName:t,domain:t,providerName:n.metadata.name}))}))}),r}getUnboundEmitters(){const t=[...this._domainScopedProviders.keys()];return[...[...this._clientEvents.keys()].filter(mo).filter(n=>!t.includes(n)).map(n=>this._clientEvents.get(n)),this._clientEvents.get(void 0)].filter(mo)}getAssociatedEventEmitters(t){return t?[this.buildAndCacheEventEmitterForClient(t)]:this.getUnboundEmitters()}transferListeners(t,e,r,n){var o;(o=this._clientEventHandlers.get(r))==null||o.forEach(i=>{var s;return(s=t.events)==null?void 0:s.removeHandler(...i)});const a=Object.values(De).map(i=>[i,l=>st(this,null,function*(){n.forEach(c=>{c?.emit(i,Dr(xr({},l),{clientName:r,domain:r,providerName:e.metadata.name}))}),this._apiEmitter.emit(i,Dr(xr({},l),{clientName:r,domain:r,providerName:e.metadata.name}))})]);this._clientEventHandlers.set(r,a),a.forEach(i=>{var s;return(s=e.events)==null?void 0:s.addHandler(...i)})}close(){return st(this,null,function*(){var t,e;try{yield(e=(t=this==null?void 0:this._defaultProvider.provider)==null?void 0:t.onClose)==null?void 0:e.call(t)}catch(n){this.handleShutdownError(this._defaultProvider.provider,n)}const r=Array.from(this._domainScopedProviders);yield Promise.all(r.map(n=>st(this,[n],function*([,o]){var a,i;try{yield(i=o==null?void 0:(a=o.provider).onClose)==null?void 0:i.call(a)}catch(s){this.handleShutdownError(o?.provider,s)}})))})}clearProvidersAndSetDefault(t){return st(this,null,function*(){try{yield this.close()}catch{this._logger.error("Unable to cleanly close providers. Resetting to the default configuration.")}finally{this._domainScopedProviders.clear(),this._defaultProvider=new Ur(t,this._statusEnumType.NOT_READY,this._statusEnumType)}})}get allProviders(){return[...[...this._domainScopedProviders.values()].map(t=>t.provider),this._defaultProvider.provider]}handleShutdownError(t,e){this._logger.error(`Error during shutdown of provider ${t.metadata.name}: ${e}`),this._logger.error(e?.stack)}},Kf=Object.create,tn=Object.defineProperty,zf=Object.defineProperties,Wf=Object.getOwnPropertyDescriptor,Yf=Object.getOwnPropertyDescriptors,Ua=Object.getOwnPropertyNames,Eo=Object.getOwnPropertySymbols,$a=Object.getPrototypeOf,Ka=Object.prototype.hasOwnProperty,Gf=Object.prototype.propertyIsEnumerable,Jf=Reflect.get,vo=(t,e,r)=>e in t?tn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,wr=(t,e)=>{for(var r in e||(e={}))Ka.call(e,r)&&vo(t,r,e[r]);if(Eo)for(var r of Eo(e))Gf.call(e,r)&&vo(t,r,e[r]);return t},Xf=(t,e)=>zf(t,Yf(e)),qf=(t,e)=>function(){return e||(0,t[Ua(t)[0]])((e={exports:{}}).exports,e),e.exports},Zf=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ua(e))!Ka.call(t,o)&&o!==r&&tn(t,o,{get:()=>e[o],enumerable:!(n=Wf(e,o))||n.enumerable});return t},Qf=(t,e,r)=>(r=t!=null?Kf($a(t)):{},Zf(tn(r,"default",{value:t,enumerable:!0}),t)),eh=(t,e,r)=>Jf($a(t),r,e),it=(t,e,r)=>new Promise((n,o)=>{var a=l=>{try{s(r.next(l))}catch(c){o(c)}},i=l=>{try{s(r.throw(l))}catch(c){o(c)}},s=l=>l.done?n(l.value):Promise.resolve(l.value).then(a,i);s((r=r.apply(t,e)).next())}),th=qf({"../../node_modules/eventemitter3/index.js"(t,e){var r=Object.prototype.hasOwnProperty,n="~";function o(){}Object.create&&(o.prototype=Object.create(null),new o().__proto__||(n=!1));function a(c,d,u){this.fn=c,this.context=d,this.once=u||!1}function i(c,d,u,h,f){if(typeof u!="function")throw new TypeError("The listener must be a function");var v=new a(u,h||c,f),_=n?n+d:d;return c._events[_]?c._events[_].fn?c._events[_]=[c._events[_],v]:c._events[_].push(v):(c._events[_]=v,c._eventsCount++),c}function s(c,d){--c._eventsCount===0?c._events=new o:delete c._events[d]}function l(){this._events=new o,this._eventsCount=0}l.prototype.eventNames=function(){var d=[],u,h;if(this._eventsCount===0)return d;for(h in u=this._events)r.call(u,h)&&d.push(n?h.slice(1):h);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(u)):d},l.prototype.listeners=function(d){var u=n?n+d:d,h=this._events[u];if(!h)return[];if(h.fn)return[h.fn];for(var f=0,v=h.length,_=new Array(v);f<v;f++)_[f]=h[f].fn;return _},l.prototype.listenerCount=function(d){var u=n?n+d:d,h=this._events[u];return h?h.fn?1:h.length:0},l.prototype.emit=function(d,u,h,f,v,_){var S=n?n+d:d;if(!this._events[S])return!1;var C=this._events[S],R=arguments.length,A,b;if(C.fn){switch(C.once&&this.removeListener(d,C.fn,void 0,!0),R){case 1:return C.fn.call(C.context),!0;case 2:return C.fn.call(C.context,u),!0;case 3:return C.fn.call(C.context,u,h),!0;case 4:return C.fn.call(C.context,u,h,f),!0;case 5:return C.fn.call(C.context,u,h,f,v),!0;case 6:return C.fn.call(C.context,u,h,f,v,_),!0}for(b=1,A=new Array(R-1);b<R;b++)A[b-1]=arguments[b];C.fn.apply(C.context,A)}else{var w=C.length,T;for(b=0;b<w;b++)switch(C[b].once&&this.removeListener(d,C[b].fn,void 0,!0),R){case 1:C[b].fn.call(C[b].context);break;case 2:C[b].fn.call(C[b].context,u);break;case 3:C[b].fn.call(C[b].context,u,h);break;case 4:C[b].fn.call(C[b].context,u,h,f);break;default:if(!A)for(T=1,A=new Array(R-1);T<R;T++)A[T-1]=arguments[T];C[b].fn.apply(C[b].context,A)}}return!0},l.prototype.on=function(d,u,h){return i(this,d,u,h,!1)},l.prototype.once=function(d,u,h){return i(this,d,u,h,!0)},l.prototype.removeListener=function(d,u,h,f){var v=n?n+d:d;if(!this._events[v])return this;if(!u)return s(this,v),this;var _=this._events[v];if(_.fn)_.fn===u&&(!f||_.once)&&(!h||_.context===h)&&s(this,v);else{for(var S=0,C=[],R=_.length;S<R;S++)(_[S].fn!==u||f&&!_[S].once||h&&_[S].context!==h)&&C.push(_[S]);C.length?this._events[v]=C.length===1?C[0]:C:s(this,v)}return this},l.prototype.removeAllListeners=function(d){var u;return d?(u=n?n+d:d,this._events[u]&&s(this,u)):(this._events=new o,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=n,l.EventEmitter=l,typeof e<"u"&&(e.exports=l)}}),rh="No-op",nh=class{constructor(){this.metadata={name:"No-op Provider"}}resolveBooleanEvaluation(t,e){return this.noOp(e)}resolveStringEvaluation(t,e){return this.noOp(e)}resolveNumberEvaluation(t,e){return this.noOp(e)}resolveObjectEvaluation(t,e){return this.noOp(e)}noOp(t){return{value:t,reason:rh}}},_o=new nh,oh=Qf(th()),yo=class extends Bf{constructor(){super(),this.eventEmitter=new oh.default}},ah=class{constructor(t,e,r,n,o,a,i){this.providerAccessor=t,this.providerStatusAccessor=e,this.emitterAccessor=r,this.apiContextAccessor=n,this.apiHooksAccessor=o,this.globalLogger=a,this.options=i,this._hooks=[]}get metadata(){var t,e;return{name:(t=this.options.domain)!=null?t:this.options.name,domain:(e=this.options.domain)!=null?e:this.options.name,version:this.options.version,providerMetadata:this.providerAccessor().metadata}}get providerStatus(){return this.providerStatusAccessor()}addHandler(t,e,r){var n;if(this.emitterAccessor().addHandler(t,e),Ba(t,this.providerStatus))try{e({clientName:this.metadata.name,domain:this.metadata.domain,providerName:this._provider.metadata.name})}catch(a){(n=this._logger)==null||n.error("Error running event handler:",a)}r?.signal&&typeof r.signal.addEventListener=="function"&&r.signal.addEventListener("abort",()=>{this.removeHandler(t,e)})}removeHandler(t,e){this.emitterAccessor().removeHandler(t,e)}getHandlers(t){return this.emitterAccessor().getHandlers(t)}setLogger(t){return this._clientLogger=new en(t),this}addHooks(...t){return this._hooks=[...this._hooks,...t],this}getHooks(){return this._hooks}clearHooks(){return this._hooks=[],this}getBooleanValue(t,e,r){return this.getBooleanDetails(t,e,r).value}getBooleanDetails(t,e,r){return this.evaluate(t,this._provider.resolveBooleanEvaluation,e,"boolean",r)}getStringValue(t,e,r){return this.getStringDetails(t,e,r).value}getStringDetails(t,e,r){return this.evaluate(t,this._provider.resolveStringEvaluation,e,"string",r)}getNumberValue(t,e,r){return this.getNumberDetails(t,e,r).value}getNumberDetails(t,e,r){return this.evaluate(t,this._provider.resolveNumberEvaluation,e,"number",r)}getObjectValue(t,e,r){return this.getObjectDetails(t,e,r).value}getObjectDetails(t,e,r){return this.evaluate(t,this._provider.resolveObjectEvaluation,e,"object",r)}track(t,e={}){var r,n,o;try{if(this.shortCircuitIfNotReady(),typeof this._provider.track=="function"){const a=Object.freeze(wr({},this.apiContextAccessor((r=this==null?void 0:this.options)==null?void 0:r.domain)));return(o=(n=this._provider).track)==null?void 0:o.call(n,t,a,e)}else this._logger.debug("Provider does not support the track function; will no-op.")}catch(a){this._logger.debug("Error recording tracking event.",a)}}evaluate(t,e,r,n,o={}){var a,i;const s=[...this.apiHooksAccessor(),...this.getHooks(),...o.hooks||[],...this._provider.hooks||[]],l=[...s].reverse(),c=wr({},this.apiContextAccessor((a=this==null?void 0:this.options)==null?void 0:a.domain)),d=l.map(()=>Object.freeze({flagKey:t,defaultValue:r,flagValueType:n,clientMetadata:this.metadata,providerMetadata:this._provider.metadata,context:c,logger:this._logger,hookData:new wf}));let u;try{this.beforeHooks(s,d,o),this.shortCircuitIfNotReady();const h=e.call(this._provider,t,r,c,this._logger),f=Xf(wr({},h),{flagMetadata:Object.freeze((i=h.flagMetadata)!=null?i:{}),flagKey:t});if(f.errorCode){const v=Mf(f.errorCode,f.errorMessage);this.errorHooks(l,d,v,o),u=this.getErrorEvaluationDetails(t,r,v,f.flagMetadata)}else this.afterHooks(l,d,f,o),u=f}catch(h){this.errorHooks(l,d,h,o),u=this.getErrorEvaluationDetails(t,r,h)}return this.finallyHooks(l,d,u,o),u}beforeHooks(t,e,r){var n;for(const[o,a]of t.entries()){const i=t.length-1-o,s=e[i];Object.freeze(s),Object.freeze(s.context),(n=a?.before)==null||n.call(a,s,Object.freeze(r.hookHints))}}afterHooks(t,e,r,n){var o;for(const[a,i]of t.entries()){const s=e[a];(o=i?.after)==null||o.call(i,s,r,n.hookHints)}}errorHooks(t,e,r,n){var o;for(const[a,i]of t.entries())try{const s=e[a];(o=i?.error)==null||o.call(i,s,r,n.hookHints)}catch(s){this._logger.error(`Unhandled error during 'error' hook: ${s}`),s instanceof Error&&this._logger.error(s.stack),this._logger.error(s?.stack)}}finallyHooks(t,e,r,n){var o;for(const[a,i]of t.entries())try{const s=e[a];(o=i?.finally)==null||o.call(i,s,r,n.hookHints)}catch(s){this._logger.error(`Unhandled error during 'finally' hook: ${s}`),s instanceof Error&&this._logger.error(s.stack),this._logger.error(s?.stack)}}get _provider(){return this.providerAccessor()}get _logger(){return this._clientLogger||this.globalLogger()}shortCircuitIfNotReady(){if(this.providerStatus===xt.NOT_READY)throw new Ha("provider has not yet initialized");if(this.providerStatus===xt.FATAL)throw new Ia("provider is in an irrecoverable error state")}getErrorEvaluationDetails(t,e,r,n={}){const o=r?.message;return{errorCode:r?.code||La.GENERAL,errorMessage:o,value:e,reason:Pf.ERROR,flagMetadata:Object.freeze(n),flagKey:t}}},Co=Symbol.for("@openfeature/web-sdk/api"),So=globalThis,ih=class $r extends $f{constructor(){super("client"),this._statusEnumType=xt,this._apiEmitter=new yo,this._defaultProvider=new Ur(_o,xt.NOT_READY,this._statusEnumType),this._domainScopedProviders=new Map,this._createEventEmitter=()=>new yo}static getInstance(){const e=So[Co];if(e)return e;const r=new $r;return So[Co]=r,r}getProviderStatus(e){var r,n;return e?(n=(r=this._domainScopedProviders.get(e))==null?void 0:r.status)!=null?n:this._defaultProvider.status:this._defaultProvider.status}setProviderAndWait(e,r,n){return it(this,null,function*(){const o=lt(e),a=ye(o?r:e),i=ye(o?n:r);i&&(o?this._domainScopedContext.set(o,i):this._context=i),yield this.setAwaitableProvider(o,a)})}setProvider(e,r,n){const o=lt(e),a=ye(o?r:e),i=ye(o?n:r);i&&(o?this._domainScopedContext.set(o,i):this._context=i);const s=this.setAwaitableProvider(o,a);return Promise.resolve(s).catch(l=>{this._logger.error("Error during provider initialization:",l)}),this}getProvider(e){return this.getProviderForClient(e)}setContext(e,r){return it(this,null,function*(){var n,o;const a=lt(e),i=(o=(n=ye(e))!=null?n:ye(r))!=null?o:{};if(a){const s=this._domainScopedProviders.get(a);if(s){const l=this.getContext(a);this._domainScopedContext.set(a,i),yield this.runProviderContextChangeHandler(a,s,l,i)}else this._domainScopedContext.set(a,i)}else{const s=this._context;this._context=i;const l=Array.from(this._domainScopedProviders.entries()).filter(([d])=>!this._domainScopedContext.has(d)).reduce((d,[u,h])=>(d.push({domain:u,wrapper:h}),d),[]),c=[{domain:void 0,wrapper:this._defaultProvider},...l];yield Promise.all(c.map(d=>this.runProviderContextChangeHandler(d.domain,d.wrapper,s,i)))}})}getContext(e){const r=lt(e);if(r){const n=this._domainScopedContext.get(r);if(n)return n;this._logger.debug(`Unable to find context for '${r}'.`)}return this._context}clearContext(e){return it(this,null,function*(){const r=lt(e);if(r){const n=this._domainScopedProviders.get(r);if(n){const o=this.getContext(r);this._domainScopedContext.delete(r);const a=this.getContext();yield this.runProviderContextChangeHandler(r,n,o,a)}else this._domainScopedContext.delete(r)}else return this.setContext({})})}clearContexts(){return it(this,null,function*(){yield this.clearContext(),yield Promise.allSettled(Array.from(this._domainScopedProviders.keys()).map(e=>this.clearContext(e)))})}getClient(e,r){return new ah(()=>this.getProviderForClient(e),()=>this.getProviderStatus(e),()=>this.buildAndCacheEventEmitterForClient(e),n=>this.getContext(n),()=>this.getHooks(),()=>this._logger,{domain:e,version:r})}clearProviders(){return it(this,null,function*(){yield eh($r.prototype,this,"clearProvidersAndSetDefault").call(this,_o),this._domainScopedContext.clear()})}runProviderContextChangeHandler(e,r,n,o){return it(this,null,function*(){var a,i,s,l,c,d;const u=((i=(a=r.provider)==null?void 0:a.metadata)==null?void 0:i.name)||"unnamed-provider";try{if(typeof r.provider.onContextChange=="function"){const h=r.provider.onContextChange(n,o);h&&typeof h?.then=="function"&&(r.incrementPendingContextChanges(),r.status=this._statusEnumType.RECONCILING,this.getAssociatedEventEmitters(e).forEach(f=>{f?.emit(De.Reconciling,{domain:e,providerName:u})}),(s=this._apiEmitter)==null||s.emit(De.Reconciling,{domain:e,providerName:u}),yield h,r.decrementPendingContextChanges())}r.status=this._statusEnumType.READY,r.allContextChangesSettled&&(this.getAssociatedEventEmitters(e).forEach(h=>{h?.emit(De.ContextChanged,{clientName:e,domain:e,providerName:u})}),(l=this._apiEmitter)==null||l.emit(De.ContextChanged,{clientName:e,domain:e,providerName:u}))}catch(h){if(r.decrementPendingContextChanges(),r.status=this._statusEnumType.ERROR,r.allContextChangesSettled){const f=h,v=`Error running ${u}'s context change handler: ${f?.message}`;(c=this._logger)==null||c.error(`${v}`,h),this.getAssociatedEventEmitters(e).forEach(_=>{_?.emit(De.Error,{clientName:e,domain:e,providerName:u,message:v})}),(d=this._apiEmitter)==null||d.emit(De.Error,{clientName:e,domain:e,providerName:u,message:v})}}})}},No=ih.getInstance();class sh{runsOn="client";metadata={name:"QueryParamProvider"};flags;constructor(e){this.flags=new Map;for(const[r,n]of e.entries())this.flags.set(r,n)}resolveBooleanEvaluation(e,r){const n=this.flags.get(e);return n===void 0?{value:r,reason:"DEFAULT"}:{value:n.toLowerCase()==="true"||n==="1",reason:"STATIC",variant:n}}resolveStringEvaluation(e,r){const n=this.flags.get(e);return n===void 0?{value:r,reason:"DEFAULT"}:{value:n,reason:"STATIC",variant:n}}resolveNumberEvaluation(e,r){const n=this.flags.get(e);if(n===void 0)return{value:r,reason:"DEFAULT"};const o=Number(n);return isNaN(o)?{value:r,reason:"ERROR",errorCode:"PARSE_ERROR",errorMessage:`Failed to parse "${n}" as a number`}:{value:o,reason:"STATIC",variant:n}}resolveObjectEvaluation(e,r){const n=this.flags.get(e);if(n===void 0)return{value:r,reason:"DEFAULT"};try{return{value:JSON.parse(n),reason:"STATIC",variant:n}}catch(o){return{value:r,reason:"ERROR",errorCode:"PARSE_ERROR",errorMessage:`Failed to parse JSON: ${o instanceof Error?o.message:String(o)}`}}}}async function lh(t){const e=typeof window<"u"?new URLSearchParams(window.location.search):new URLSearchParams,r=new sh(e);await No.setProviderAndWait(r);const n=new Map,o=No.getClient();n.set(Ro,o.getBooleanValue(Ro,ch)),n.set(bo,o.getBooleanValue(bo,uh)),n.set(Oo,o.getBooleanValue(Oo,dh));const i=e.has(Pr)?o.getBooleanValue(Pr,fh):ce.content.inspectorEnabled;n.set(Pr,i);const s=e.get("LOG_LEVEL");if(s){const l=["verbose","debug","info","warn","error"];l.includes(s.toLowerCase())?(Do(s.toLowerCase()),Ue.info("Log level set to @level via query param",s.toLowerCase())):Ue.warn("Invalid LOG_LEVEL query param: @param. Valid values: @validLevels",s,l.join(", "))}return n}const Ro="FEATURE_LEGACY_READ_ENABLED",ch=!1,bo="FEATURE_LEGACY_WRITE_ENABLED",uh=!1,Oo="FEATURE_CHANNEL_SYNC_ENABLED",dh=!0,Pr="FEATURE_INSPECTOR_ENABLED",fh=!1;async function ip(){const t=window.ph?.reactorClientModule?.pg;if(!t)throw new Error("PGlite not found");await Ns(t),await t.close()}async function hh(t){const e=await Cf(),r=[e,...t];return zr([e,...t]),r}async function ph(){if(window.ph||(window.ph={}),window.ph.loading)return;window.ph.loading=!0,os(),as(dt);const t=await lh();Ue.info("Features: @features",JSON.stringify(Object.fromEntries(t),null,2));const e=await is.create(),r=await new ss().withKeyPairStorage(e).build(),n=await new ls("connect",{basename:ut.routerBasename,baseUrl:ut.renownUrl}).withCrypto(r).build(),o=await Rf(),a=await hh(o),i=a.flatMap(R=>R.modules.documentModelModules).filter(R=>R!==void 0),s=a.flatMap(R=>R.upgradeManifests),l=await Ed(i,s,n),c=await cs(l.client),d=window.location.pathname,u=us(d),h=ds(d),f=gh();await fs(f,n);const v=new hs(l.client);ps(ut),gs(l),ms(l.client),Es(v),vs(r),_s(n.did),ys(n),Cs(c),zr(a),Yt(u),Ar(h),Ss(t);const _=vd();_.length>0&&await _d(_);const S=mh();if(S)try{await Wt(S,{})}catch(R){console.error(`Failed to add remote drive from ${S}:`,R)}l.client.subscribe({type:"powerhouse/document-drive"},R=>{Ue.verbose("ReactorClient subscription event: @event",R),gn(l.client).catch(A=>Ue.error("@error",A))}),await gn(l.client),window.ph.loading=!1}function gh(){const e=new URLSearchParams(window.location.search).get("user");return e?decodeURIComponent(e):void 0}function mh(){const e=new URLSearchParams(window.location.search).get("driveUrl");return e?decodeURIComponent(e):void 0}function Eh(){const t=jo();g.useEffect(()=>{let e=null;if(t){const{credential:r,...n}=t;e={id:n.did,username:n.ens?.name,...n}}Hs(e)},[t])}function vh(){return N.jsx("div",{className:"h-screen",children:N.jsx("div",{className:"flex h-screen items-stretch overflow-auto",role:"presentation",tabIndex:0,children:N.jsxs(g.Suspense,{name:"Root",children:[N.jsx(kh,{}),N.jsx("div",{className:"relative flex-1 overflow-auto",children:N.jsx(wu,{})})]})})})}function _h(){const[t]=Fo(),e=Rs(),r=Ho();g.useEffect(()=>{r||bs(el)},[r]),g.useEffect(()=>{t||Os(tl)},[t]);const n=!r&&!t&&!e;return N.jsx(yh,{children:n?N.jsx(Sh,{}):N.jsx(Zd,{})})}function yh({children:t}){return N.jsx("div",{className:"flex h-full flex-col overflow-auto",id:"content-view",children:t})}function Ch({drive:t}){const r=Mo(t.header.meta?.preferredEditor)?.name||"Drive Explorer App";return N.jsx(Oi,{title:t.state.global.name,description:r,icon:N.jsx(Oa,{drive:t}),onClick:()=>Yt(t)},t.header.id)}function Sh(){const t=Bo(),e=ce;return N.jsxs(Io,{children:[t?.map(r=>N.jsx(Ch,{drive:r},r.header.id)),e.drives.addDriveEnabled&&N.jsx(bi,{})]})}const Nh=t=>g.createElement("svg",{width:28,height:32,viewBox:"0 0 28 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},g.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0.05092 23.7286L0.000163347 23.9993L0 23.9995L0.207853 24.067L27.6823 24.067L27.9995 23.9995L27.9161 23.6913L14.2182 0.209032L13.9998 0L13.749 0.246353L0.05092 23.7286ZM20.9994 11.9999L7.0003 11.9999L13.9998 23.999L20.9994 11.9999Z",fill:"url(#paint0_radial_319_20865)"}),g.createElement("path",{d:"M14 0L0 23.9998V7.99993L14 0Z",fill:"url(#paint1_linear_319_20865)"}),g.createElement("path",{d:"M28 24L7.82013e-05 24L14 31.9999L28 24Z",fill:"url(#paint2_linear_319_20865)"}),g.createElement("path",{d:"M14 0L28 23.9998V7.99993L14 0Z",fill:"url(#paint3_linear_319_20865)"}),g.createElement("defs",null,g.createElement("radialGradient",{id:"paint0_radial_319_20865",cx:0,cy:0,r:1,gradientUnits:"userSpaceOnUse",gradientTransform:"translate(13.9994 16.0344) rotate(-89.9988) scale(16.0344 16.201)"},g.createElement("stop",{offset:.181008,stopColor:"#FFCD6B"}),g.createElement("stop",{offset:1,stopColor:"#EB5EDF"})),g.createElement("linearGradient",{id:"paint1_linear_319_20865",x1:-.031454,y1:24.041,x2:13.801,y2:-.142908,gradientUnits:"userSpaceOnUse"},g.createElement("stop",{stopColor:"#4331E9"}),g.createElement("stop",{offset:1,stopColor:"#A273FF"})),g.createElement("linearGradient",{id:"paint2_linear_319_20865",x1:-.0310093,y1:24,x2:28.0444,y2:24,gradientUnits:"userSpaceOnUse"},g.createElement("stop",{stopColor:"#A273FF"}),g.createElement("stop",{offset:1,stopColor:"#4331E9"})),g.createElement("linearGradient",{id:"paint3_linear_319_20865",x1:28.0315,y1:24.041,x2:14.199,y2:-.142908,gradientUnits:"userSpaceOnUse"},g.createElement("stop",{stopColor:"#A273FF"}),g.createElement("stop",{offset:1,stopColor:"#4331E9"})))),Rh=t=>g.createElement("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},g.createElement("path",{d:"M15.6867 8.03333C15.4933 7.83999 15.1733 7.83999 14.98 8.03333L14.6733 8.34001V8C14.6733 4.32 11.68 1.32666 7.99999 1.32666C5.96666 1.32666 4.06666 2.23999 2.79333 3.82666C2.61999 4.03999 2.65332 4.35999 2.87332 4.52665C3.08666 4.69999 3.40666 4.66666 3.57332 4.44666C4.65999 3.09332 6.27332 2.31999 7.99999 2.31999C11.1267 2.31999 13.6733 4.86666 13.6733 7.99333V8.32666L13.3667 8.02002C13.1733 7.82669 12.8533 7.82669 12.66 8.02002C12.4667 8.21335 12.4667 8.53335 12.66 8.72668L13.82 9.88668C13.8667 9.93334 13.92 9.96666 13.98 9.99333C14.04 10.02 14.1067 10.0333 14.1733 10.0333C14.24 10.0333 14.3 10.02 14.3667 9.99333C14.4267 9.96666 14.48 9.93334 14.5267 9.88668L15.6867 8.72668C15.88 8.54668 15.88 8.22666 15.6867 8.03333Z",fill:"#6C7275"}),g.createElement("path",{d:"M13.1267 11.4666C12.9133 11.2933 12.5933 11.3266 12.4267 11.5466C11.34 12.9 9.72665 13.6733 7.99998 13.6733C4.87332 13.6733 2.32665 11.1266 2.32665 7.99996V7.66663L2.63332 7.97331C2.73332 8.07331 2.85999 8.11996 2.98665 8.11996C3.11332 8.11996 3.23999 8.07331 3.33999 7.97331C3.53332 7.77998 3.53332 7.45998 3.33999 7.26664L2.17998 6.10661C2.13332 6.05994 2.07998 6.02663 2.01998 5.99996C1.89998 5.94663 1.75998 5.94663 1.63998 5.99996C1.57998 6.02663 1.52665 6.05994 1.47999 6.10661L0.319988 7.26664C0.126654 7.45998 0.126654 7.77998 0.319988 7.97331C0.513321 8.16664 0.833319 8.16664 1.02665 7.97331L1.33332 7.66663V7.99996C1.33332 11.68 4.32665 14.6733 8.00665 14.6733C10.04 14.6733 11.94 13.76 13.2133 12.1733C13.38 11.96 13.3467 11.64 13.1267 11.4666Z",fill:"#6C7275"})),bh="https://apps.powerhouse.io/sky-atlas/staging/switchboard",Oh=2e3;function Lh(){const{search:t}=cr();return g.useMemo(()=>{const r=new URLSearchParams(t).get("reactorUrl")??bh;return r.endsWith("/")?r:`${r}/`},[t])}async function xh(t,e){const r=As`
|
|
15
15
|
mutation ForkAtlas($docId: PHID) {
|
|
16
16
|
ForkAtlas(docId: $docId)
|
|
17
17
|
}
|