@powerhousedao/connect 6.0.0-dev.33 → 6.0.0-dev.35
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-OXMDcTkb.js → AddDriveModal-DgWDjHk6.js} +1 -1
- package/dist/assets/{ClearStorageModal-D7SSEfHO.js → ClearStorageModal-NiCExsdP.js} +1 -1
- package/dist/assets/{CookiesPolicyModal-B6IvC-dh.js → CookiesPolicyModal-Cn_Rk_ws.js} +1 -1
- package/dist/assets/CreateDocumentModal-D-zj8JuH.js +1 -0
- package/dist/assets/{DebugSettingsModal-BPQtmD9d.js → DebugSettingsModal-B0NXumlG.js} +1 -1
- package/dist/assets/{DeleteDriveModal-CGKiLFVF.js → DeleteDriveModal-vJtB3esF.js} +1 -1
- package/dist/assets/{DeleteItemModal-BAmScid_.js → DeleteItemModal-CceF4AQk.js} +1 -1
- package/dist/assets/DisclaimerModal-q1BWMBgA.js +1 -0
- package/dist/assets/{DriveSettingsModal-z-nwyn2J.js → DriveSettingsModal-BgNxsvW0.js} +1 -1
- package/dist/assets/{ExportDocumentWithErrorsModal-wcQL_cnZ.js → ExportDocumentWithErrorsModal-ChOpQgZG.js} +1 -1
- package/dist/assets/{SettingsModal-ffV7JjcT.js → SettingsModal-vuXP88Mg.js} +1 -1
- package/dist/assets/UpgradeDriveModal-O7dF2Bbv.js +1 -0
- package/dist/assets/{design_system-Da5LZxVT.js → design_system-DJpOmF2E.js} +1 -1
- package/dist/assets/{design_system_connect-DpO_P60g.js → design_system_connect-Bf5zyCf6.js} +1 -1
- package/dist/assets/{design_system_ui-D9cdBaZ3.js → design_system_ui-BXlYYDQC.js} +1 -1
- package/dist/assets/{document_drive-BCSa7iW6.js → document_drive-CDMxtf9f.js} +1 -1
- package/dist/assets/{document_engineering-DR9pe4U5.js → document_engineering-D5yCrHRS.js} +1 -1
- package/dist/assets/{document_model-CPsSXf7O.js → document_model-DxDgOZQk.js} +11 -11
- package/dist/assets/{document_model_editor-CIde2Bem.js → document_model_editor-DNCGY7nR.js} +4 -4
- package/dist/assets/{drive_explorer-DYvuYHTD.js → drive_explorer-CtTqBc39.js} +2 -2
- package/dist/assets/{graphql-editor-CuSth38N.js → graphql-editor-BlN69xIT.js} +1 -1
- package/dist/assets/{hooks-NgdYiMof.js → hooks-C39wEEgX.js} +1 -1
- package/dist/assets/{index-D09b1OOv.js → index-0XDY9XMU.js} +3 -3
- package/dist/assets/{index-B9vSDZIB.js → index-Cg3B8BbM.js} +2 -2
- package/dist/assets/{json-editor-Di9_h65O.js → json-editor-DGIQ_sB8.js} +1 -1
- package/dist/assets/nodefs-B7r3fzXQ.js +1 -0
- package/dist/assets/{opfs-ahp-Be-APU_0.js → opfs-ahp-BICmUVJu.js} +1 -1
- package/dist/assets/{reactor_browser-BvhdfFT9.js → reactor_browser-CQckBDAv.js} +3 -3
- package/dist/assets/{state-schemas-DtEEuBHc.js → state-schemas-wgDPnzsE.js} +2 -2
- package/dist/index.html +9 -9
- package/lib/package.copy.json +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.copy.json +1 -1
- package/package.json +10 -10
- package/dist/assets/CreateDocumentModal-De7HFzqG.js +0 -1
- package/dist/assets/DisclaimerModal-zIDDMFY9.js +0 -1
- package/dist/assets/UpgradeDriveModal-C2bwCout.js +0 -1
- package/dist/assets/nodefs-C0bNYofw.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sentry_react-cODD7zWc.js","assets/react-DQSxOgtG.js","assets/sentry_browser-B4YoBIIG.js","assets/AddDriveModal-
|
|
2
|
-
import{o as Pe,g as Io,s as ae,h as ko,n as _i,i as Ci,j as y,k as Ni,E as Si}from"./document_model_editor-CIde2Bem.js";import{r as Ri}from"./react-dom/client-BVPiT_FE.js";import{r as g,R as bi,a as Mo}from"./sentry_react-cODD7zWc.js";import{$ as Ho,l as $e,k as Gr,S as xi,Y as Oi,X as Di,a0 as Vt,j as jo,h as Fo}from"./document_model-CPsSXf7O.js";import{_ as he,G as Li}from"./drive_explorer-DYvuYHTD.js";import{t as wi,c as Bo,H as Vo,A as Pi,W as Ai,d as Ti,e as Ii,f as ki,g as Mi,h as Hi,i as _n,F as ji,j as Uo,k as Fi,B as Bi,l as Vi,m as Ui,n as $i,S as zi,o as Ki}from"./design_system_connect-DpO_P60g.js";import{A as $o,B as Jr,U as Wi,R as Yi,C as Gi,D as Ji,E as Xi,F as qi,K as Zi,P as Qi,H as Xr,y as je,J as es,l as ts,L as rs,M as ns,g as Mr,N as os,O as zo,T as Ko,V as as,W as is,X as ss,Y as ls,i as cs,Z as us,_ as ds,$ as fs,a0 as hs,a1 as ps,a2 as gs,a3 as ms,c as Es,a4 as vs,a5 as ys,a6 as Wo,a7 as _s,a8 as Yo,a9 as Cs,aa as Ns,ab as Ss,ac as Rs,ad as bs,ae as xs,af as Os,ag as Ds,ah as Ls,ai as ws,aj as Ps,ak as As,al as Ts,am as Is,an as ks,ao as Ms,ap as Hs,aq as js,ar as Fs,as as Bs,at as Vs,au as Us,s as Jt,av as $s,aw as Cn,ax as zs,ay as Go,d as Jo,az as Ks,aA as Ws,aB as Xo,aC as Ys,aD as Nn,aE as Gs,aF as Js,aG as Xs}from"./reactor_browser-BvhdfFT9.js";import{I as Sn,l as qo,T as qs,c as Pt}from"./design_system-Da5LZxVT.js";import{g as Zs,r as Qs}from"./graphql_request-G5F4jsaa.js";import{g as el,r as tl}from"./react-DQSxOgtG.js";import{t as rl}from"./tailwind_merge-Dr4f9Rms.js";import{n as Ut}from"./document_drive-BCSa7iW6.js";import{an as nl}from"./sentry_browser-B4YoBIIG.js";import"./graphql-DwmBvzSo.js";import"./react/jsx-runtime-DldvXD6N.js";import"./zod-9j67vCAu.js";import"./react-dom-D6zQJsh6.js";import"./design_system_ui-D9cdBaZ3.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 ol=Ri();const Q=Io([Ci(),ko(["true","false"])]).transform(t=>typeof t=="boolean"?t:t==="true"),Xt=Io([_i(),ae()]).transform(t=>typeof t=="number"?t:parseInt(t,10)),al=Pe({PH_CONFIG_PATH:ae().optional(),PH_PACKAGES:ae().optional(),PH_LOCAL_PACKAGE:ae().optional(),PH_DISABLE_LOCAL_PACKAGE:Q.default(!1),PH_WATCH_TIMEOUT:Xt.default(300),PH_SENTRY_AUTH_TOKEN:ae().optional(),PH_SENTRY_ORG:ae().optional(),PH_SENTRY_PROJECT:ae().optional()}),il=Pe({PH_CONNECT_VERSION:ae().default("unknown"),PH_CONNECT_LOG_LEVEL:ko(["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:Xt.default(3600*1e3),PH_CONNECT_CLI_VERSION:ae().optional(),PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE:Xt.default(50)}),sl=Pe({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)}),ll=Pe({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)}),cl=Pe({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)}),ul=Pe({PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0)}),dl=Pe({PH_CONNECT_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED:Q.default(!0)}),fl=dl.merge(cl).merge(ul),hl=Pe({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)}),pl=Pe({PH_CONNECT_RENOWN_URL:ae().default("https://www.renown.id"),PH_CONNECT_RENOWN_NETWORK_ID:ae().default("eip155"),PH_CONNECT_RENOWN_CHAIN_ID:Xt.default(1)}),Kt=il.merge(sl).merge(ll).merge(fl).merge(hl).merge(pl);al.merge(Kt);function gl(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 ml(t={}){const e=new Set(Object.keys(Kt.shape)),r=gl(t,e,Kt);return Kt.parse(r)}function El(t){let e=t;return e.startsWith(".")&&(e=e.slice(1)),e.startsWith("/")||(e=`/${e}`),e.endsWith("/")||(e=`${e}/`),e}const vl={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://auth.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.32",PH_CONNECT_VERSION_CHECK_INTERVAL:"3600000",PH_CONNECT_WARN_OUTDATED_APP:"false",PROD:!0,SSR:!1},D=ml({processEnv:vl});function yl(t){return t.endsWith("/")?t:t+"/"}function _l(){const t=D.PH_CONNECT_BASE_PATH||"/",e=yl(t);return{basePath:t,routerBasename:e,allowList:void 0,allowedDocumentTypes:[],isDragAndDropEnabled:!0,isEditorDebugModeEnabled:!1,isEditorReadModeEnabled:!1,isExternalControlsEnabled:!1,version:D.PH_CONNECT_VERSION,logLevel:D.PH_CONNECT_LOG_LEVEL,requiresHardRefresh:D.PH_CONNECT_REQUIRES_HARD_REFRESH,warnOutdatedApp:D.PH_CONNECT_WARN_OUTDATED_APP,studioMode:D.PH_CONNECT_STUDIO_MODE,versionCheckInterval:D.PH_CONNECT_VERSION_CHECK_INTERVAL,cliVersion:D.PH_CONNECT_CLI_VERSION,fileUploadOperationsChunkSize:D.PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE,gaTrackingId:D.PH_CONNECT_GA_TRACKING_ID,defaultDrivesUrl:D.PH_CONNECT_DEFAULT_DRIVES_URL,drivesPreserveStrategy:D.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,enabledEditors:D.PH_CONNECT_ENABLED_EDITORS?.split(","),disabledEditors:D.PH_CONNECT_DISABLED_EDITORS.split(","),isExternalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED,isAnalyticsEnabled:D.PH_CONNECT_ANALYTICS_ENABLED,isAnalyticsExternalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&D.PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED,analyticsDatabaseName:D.PH_CONNECT_ANALYTICS_DATABASE_NAME,isRelationalProcessorsEnabled:D.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,isExternalRelationalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&D.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED,renownUrl:D.PH_CONNECT_RENOWN_URL,renownNetworkId:D.PH_CONNECT_RENOWN_NETWORK_ID,renownChainId:D.PH_CONNECT_RENOWN_CHAIN_ID,sentryRelease:D.PH_CONNECT_SENTRY_RELEASE,sentryDsn:D.PH_CONNECT_SENTRY_DSN,sentryEnv:D.PH_CONNECT_SENTRY_ENV,isDiffAnalyticsEnabled:D.PH_CONNECT_DIFF_ANALYTICS_ENABLED,isDriveAnalyticsEnabled:D.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,isPublicDrivesEnabled:D.PH_CONNECT_PUBLIC_DRIVES_ENABLED,isCloudDrivesEnabled:D.PH_CONNECT_CLOUD_DRIVES_ENABLED,isLocalDrivesEnabled:D.PH_CONNECT_LOCAL_DRIVES_ENABLED,isSentryTracingEnabled:D.PH_CONNECT_SENTRY_TRACING_ENABLED,isDocumentModelSelectionSettingsEnabled:!D.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,isAddDriveEnabled:!D.PH_CONNECT_DISABLE_ADD_DRIVE,isAddPublicDrivesEnabled:!D.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,isDeletePublicDrivesEnabled:!D.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES,isAddCloudDrivesEnabled:!D.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,isDeleteCloudDrivesEnabled:!D.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES,isAddLocalDrivesEnabled:!D.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,isDeleteLocalDrivesEnabled:!D.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES,isAnalyticsDatabaseWorkerEnabled:!D.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,isExternalPackagesEnabled:!D.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED}}const dt=_l(),Cl={isExternalControlsEnabled:dt.isExternalControlsEnabled},Nl={allowedDocumentTypes:dt.allowedDocumentTypes,isDragAndDropEnabled:dt.isDragAndDropEnabled};Ho(D.PH_CONNECT_LOG_LEVEL);$e.debug("Setting log level to @level.",D.PH_CONNECT_LOG_LEVEL);const Zo=El(D.PH_CONNECT_BASE_PATH||"/"),Sl=D.PH_CONNECT_ANALYTICS_DATABASE_NAME||`${Zo.replace(/\//g,"")}:analytics`,ce={appVersion:D.PH_CONNECT_VERSION,studioMode:D.PH_CONNECT_STUDIO_MODE,warnOutdatedApp:D.PH_CONNECT_WARN_OUTDATED_APP,appVersionCheckInterval:D.PH_CONNECT_VERSION_CHECK_INTERVAL,routerBasename:Zo,externalPackagesEnabled:!D.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED,processors:{enabled:D.PH_CONNECT_PROCESSORS_ENABLED,externalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},analytics:{enabled:D.PH_CONNECT_ANALYTICS_ENABLED,databaseName:Sl,useWorker:!D.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,driveAnalyticsEnabled:D.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,diffProcessorEnabled:D.PH_CONNECT_DIFF_ANALYTICS_ENABLED,externalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},relational:{enabled:D.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,externalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED},renown:{url:D.PH_CONNECT_RENOWN_URL,networkId:D.PH_CONNECT_RENOWN_NETWORK_ID,chainId:D.PH_CONNECT_RENOWN_CHAIN_ID},sentry:{release:D.PH_CONNECT_SENTRY_RELEASE,dsn:D.PH_CONNECT_SENTRY_DSN,env:D.PH_CONNECT_SENTRY_ENV,tracing:D.PH_CONNECT_SENTRY_TRACING_ENABLED},content:{showSearchBar:D.PH_CONNECT_SEARCH_BAR_ENABLED,showDocumentModelSelectionSetting:!D.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,inspectorEnabled:D.PH_CONNECT_INSPECTOR_ENABLED},drives:{addDriveEnabled:!D.PH_CONNECT_DISABLE_ADD_DRIVE,preserveStrategy:D.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,sections:{LOCAL:{enabled:D.PH_CONNECT_LOCAL_DRIVES_ENABLED,allowAdd:!D.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,allowDelete:!D.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES},CLOUD:{enabled:D.PH_CONNECT_CLOUD_DRIVES_ENABLED,allowAdd:!D.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,allowDelete:!D.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES},PUBLIC:{enabled:D.PH_CONNECT_PUBLIC_DRIVES_ENABLED,allowAdd:!D.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,allowDelete:!D.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES}}},gaTrackingId:D.PH_CONNECT_GA_TRACKING_ID,phCliVersion:D.PH_CONNECT_CLI_VERSION},Rl=ce.routerBasename,Qo=`${Rl}:acceptedCookies`,Hr=new Set;let Wt=bl();function bl(){try{const t=localStorage.getItem(Qo);return t?JSON.parse(t):{analytics:!1,marketing:!1,functional:!1}}catch{return{analytics:!1,marketing:!1,functional:!1}}}function Rn(){return Wt}function xl(t){Wt=t(Wt),localStorage.setItem(Qo,JSON.stringify(Wt)),Hr.forEach(e=>e())}function Ol(t){return Hr.add(t),()=>Hr.delete(t)}const qr=()=>[g.useSyncExternalStore(Ol,Rn,Rn),xl];async function Zr(){try{return(await he(()=>import("./hmr-LMNkvzP7.js"),[])).hmr}catch{return}}async function Dp(t){const e=await Zr();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 Lp(t){const e=await Zr();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 Dl(){const t=g.useRef(void 0);g.useEffect(()=>{const e=async n=>{const o=window.ph?.vetraPackages||[],l=(await he(()=>import(`${n.url}?t=${n.timestamp}`),[])).default.map($o),d=[...o.filter(u=>u.id==="powerhouse/common"),...l];Jr(d)};async function r(){const n=await Zr();t.current=n,n?.on("studio:external-packages-updated",e)}return r().catch(n=>$e.error("@error",n)),()=>{t.current?.off("studio:external-packages-updated",e)}},[])}const Ll="connect";function ft(t,e){const{type:r="default",containerId:n=Ll,...o}=e||{};return wi(t,{type:r,containerId:n,...o})}const U=t=>typeof t=="string",vt=()=>{let t,e;const r=new Promise((n,o)=>{t=n,e=o});return r.resolve=t,r.reject=e,r},bn=t=>t==null?"":""+t,wl=(t,e,r)=>{t.forEach(n=>{e[n]&&(r[n]=e[n])})},Pl=/###/g,xn=t=>t&&t.indexOf("###")>-1?t.replace(Pl,"."):t,On=t=>!t||U(t),bt=(t,e,r)=>{const n=U(e)?e.split("."):e;let o=0;for(;o<n.length-1;){if(On(t))return{};const a=xn(n[o]);!t[a]&&r&&(t[a]=new r),Object.prototype.hasOwnProperty.call(t,a)?t=t[a]:t={},++o}return On(t)?{}:{obj:t,k:xn(n[o])}},Dn=(t,e,r)=>{const{obj:n,k:o}=bt(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=bt(t,i,Object);for(;s.obj===void 0&&i.length;)a=`${i[i.length-1]}.${a}`,i=i.slice(0,i.length-1),s=bt(t,i,Object),s?.obj&&typeof s.obj[`${s.k}.${a}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=r},Al=(t,e,r,n)=>{const{obj:o,k:a}=bt(t,e,Object);o[a]=o[a]||[],o[a].push(r)},qt=(t,e)=>{const{obj:r,k:n}=bt(t,e);if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},Tl=(t,e,r)=>{const n=qt(t,r);return n!==void 0?n:qt(e,r)},ea=(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]):ea(t[n],e[n],r):t[n]=e[n]);return t},at=t=>t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var Il={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const kl=t=>U(t)?t.replace(/[&<>"'\/]/g,e=>Il[e]):t;class Ml{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 Hl=[" ",",","?","!",";"],jl=new Ml(20),Fl=(t,e,r)=>{e=e||"",r=r||"";const n=Hl.filter(i=>e.indexOf(i)<0&&r.indexOf(i)<0);if(n.length===0)return!0;const o=jl.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},jr=(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},xt=t=>t?.replace("_","-"),Bl={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 Zt{constructor(e,r={}){this.init(e,r)}init(e,r={}){this.prefix=r.prefix||"i18next:",this.logger=e||Bl,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 Zt(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return e=e||this.options,e.prefix=e.prefix||this.prefix,new Zt(this.logger,e)}}var xe=new Zt;class ar{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 Ln extends ar{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=qt(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:jr(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),Dn(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=qt(this.data,s)||{};i.skipCopy||(n=JSON.parse(JSON.stringify(n))),o?ea(l,n,a):l={...l,...n},Dn(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 ta={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 ra=Symbol("i18next/PATH_KEY");function Vl(){const t=[],e=Object.create(null);let r;return e.get=(n,o)=>(r?.revoke?.(),o===ra?t:(t.push(o),r=Proxy.revocable(n,e),r.proxy)),Proxy.revocable(Object.create(null),e).proxy}function Qt(t,e){const{[ra]:r}=t(Vl());return r.join(e?.keySeparator??".")}const wn={},Er=t=>!U(t)&&typeof t!="boolean"&&typeof t!="number";class er extends ar{constructor(e,r={}){super(),wl(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=xe.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=Er(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&&!Fl(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 m=f?.res;const _=f?.usedKey||s,S=f?.exactUsedKey||s,N=["[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=er.hasDefaultValue(o),T=b?this.pluralResolver.getSuffix(u,o.count,o):"",v=o.ordinal&&b?this.pluralResolver.getSuffix(u,o.count,{ordinal:!1}):"",O=b&&!o.ordinal&&o.count===0,j=O&&o[`defaultValue${this.options.pluralSeparator}zero`]||o[`defaultValue${T}`]||o[`defaultValue${v}`]||o.defaultValue;let M=m;A&&!m&&w&&(M=j);const K=Er(M),B=Object.prototype.toString.apply(M);if(A&&M&&K&&N.indexOf(B)<0&&!(U(R)&&Array.isArray(M))){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(_,M,{...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(M),G=W?[]:{},ge=W?S:_;for(const ue in M)if(Object.prototype.hasOwnProperty.call(M,ue)){const X=`${ge}${i}${ue}`;w&&!m?G[ue]=this.translate(X,{...o,defaultValue:Er(j)?j[ue]:void 0,joinArrays:!1,ns:l}):G[ue]=this.translate(X,{...o,joinArrays:!1,ns:l}),G[ue]===X&&(G[ue]=M[ue])}m=G}}else if(A&&U(R)&&Array.isArray(m))m=m.join(R),m&&(m=this.extendTranslation(m,e,o,n));else{let W=!1,G=!1;!this.isValidLookup(m)&&w&&(W=!0,m=j),this.isValidLookup(m)||(G=!0,m=s);const ue=(o.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&G?void 0:m,X=w&&j!==m&&this.options.updateMissing;if(G||W||X){if(this.logger.log(X?"updateKey":"missingKey",u,c,s,X?j:m),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 Ae=(ie,de,ye)=>{const Te=w&&ye!==m?ye:ue;this.options.missingKeyHandler?this.options.missingKeyHandler(ie,c,de,Te,X,o):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(ie,c,de,Te,X,o),this.emit("missingKey",ie,c,de,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?ee.forEach(ie=>{const de=this.pluralResolver.getSuffixes(ie,o);O&&o[`defaultValue${this.options.pluralSeparator}zero`]&&de.indexOf(`${this.options.pluralSeparator}zero`)<0&&de.push(`${this.options.pluralSeparator}zero`),de.forEach(ye=>{Ae([ie],s+ye,o[`defaultValue${ye}`]||j)})}):Ae(ee,s,j))}m=this.extendTranslation(m,e,o,f,n),G&&m===s&&this.options.appendNamespaceToMissingKey&&(m=`${c}${d}${s}`),(G||W)&&this.options.parseMissingKeyHandler&&(m=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${c}${d}${s}`:s,W?m:void 0,o))}return a?(f.res=m,f.usedParams=this.getUsedParamsDetails(o),f):m}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=ta.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,m=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,!wn[`${_[0]}-${S}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(s)&&(wn[`${_[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(N=>{if(this.isValidLookup(n))return;i=N;const R=[d];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(R,d,N,S,r);else{let b;h&&(b=this.pluralResolver.getSuffix(N,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)),m){const v=`${d}${this.options.contextSeparator||"_"}${r.context}`;R.push(v),h&&(r.ordinal&&b.indexOf(T)===0&&R.push(v+b.replace(T,this.options.pluralSeparator)),R.push(v+b),f&&R.push(v+w))}}let A;for(;A=R.pop();)this.isValidLookup(n)||(a=A,n=this.getResource(N,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 Pn{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=xe.create("languageUtils")}getScriptPartFromCode(e){if(e=xt(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=xt(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 An={zero:0,one:1,two:2,few:3,many:4,other:5},Tn={select:t=>t===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class Ul{constructor(e,r={}){this.languageUtils=e,this.options=r,this.logger=xe.create("pluralResolver"),this.pluralRulesCache={}}addRule(e,r){this.rules[e]=r}clearCache(){this.pluralRulesCache={}}getRule(e,r={}){const n=xt(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!"),Tn;if(!e.match(/-|_/))return Tn;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)=>An[o]-An[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 In=(t,e,r,n=".",o=!0)=>{let a=Tl(t,e,r);return!a&&o&&U(r)&&(a=jr(t,r,n),a===void 0&&(a=jr(e,r,n))),a},vr=t=>t.replace(/\$/g,"$$$$");class $l{constructor(e={}){this.logger=xe.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:m,nestingSuffixEscaped:_,nestingOptionsSeparator:S,maxReplaces:N,alwaysFormat:R}=e.interpolation;this.escape=r!==void 0?r:kl,this.escapeValue=n!==void 0?n:!0,this.useRawValueToEscape=o!==void 0?o:!1,this.prefix=a?at(a):i||"{{",this.suffix=s?at(s):l||"}}",this.formatSeparator=c||",",this.unescapePrefix=d?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=h?at(h):f||at("$t("),this.nestingSuffix=m?at(m):_||at(")"),this.nestingOptionsSeparator=S||",",this.maxReplaces=N||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 N=In(r,l,f,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(N,void 0,n,{...o,...r,interpolationkey:f}):N}const m=f.split(this.formatSeparator),_=m.shift().trim(),S=m.join(this.formatSeparator).trim();return this.format(In(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=>vr(f)},{regex:this.regexp,safeValue:f=>this.escapeValue?vr(this.escape(f)):vr(f)}].forEach(f=>{for(s=0;a=f.regex.exec(e);){const m=a[1].trim();if(i=c(m),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,m))i="";else if(u){i=a[0];continue}else this.logger.warn(`missed to pass in variable ${m} for interpolating ${e}`),i="";else!U(i)&&!this.useRawValueToEscape&&(i=bn(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),m=h.match(/"/g);((f?.length??0)%2===0&&!m||m.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=bn(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 zl=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}},kn=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(xt(n),o),e[i]=s),s(r)}},Kl=t=>(e,r,n)=>t(xt(r),n)(e);class Wl{constructor(e={}){this.logger=xe.create("formatter"),this.options=e,this.init(e)}init(e,r={interpolation:{}}){this.formatSeparator=r.interpolation.formatSeparator||",";const n=r.cacheInBuiltFormats?kn:Kl;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()]=kn(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}=zl(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 Yl=(t,e)=>{t.pending[e]!==void 0&&(delete t.pending[e],t.pendingCount--)};class Gl extends ar{constructor(e,r,n,o={}){super(),this.backend=e,this.store=r,this.services=n,this.languageUtils=n.languageUtils,this.options=o,this.logger=xe.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=>{Al(l.loaded,[a],i),Yl(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 Mn=()=>({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}),Hn=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),$t=()=>{},Jl=t=>{Object.getOwnPropertyNames(Object.getPrototypeOf(t)).forEach(r=>{typeof t[r]=="function"&&(t[r]=t[r].bind(t))})};class Ot extends ar{constructor(e={},r){if(super(),this.options=Hn(e),this.services={},this.logger=xe,this.modules={external:[]},Jl(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=Mn();this.options={...n,...this.options,...Hn(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?xe.init(o(this.modules.logger),this.options):xe.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:c=Wl;const d=new Pn(this.options);this.store=new Ln(this.options.resources,this.options);const u=this.services;u.logger=xe,u.resourceStore=this.store,u.languageUtils=d,u.pluralResolver=new Ul(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 $l(this.options),u.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},u.backendConnector=new Gl(o(this.modules.backend),u.resourceStore,u,this.options),u.backendConnector.on("*",(f,...m)=>{this.emit(f,...m)}),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 er(this.services,this.options),this.translator.on("*",(f,...m)=>{this.emit(f,...m)}),this.modules.external.forEach(f=>{f.init&&f.init(this)})}if(this.format=this.options.interpolation.format,r||(r=$t),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=vt(),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=$t){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=vt();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=$t),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"&&ta.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=vt();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=vt();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=vt();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 Pn(Mn());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 Ot(e,r)}cloneInstance(e={},r=$t){const n=e.forkResourceStore;n&&delete e.forkResourceStore;const o={...this.options,...e,isClone:!0},a=new Ot(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 Ln(s,o),a.services.resourceStore=a.store}return a.translator=new er(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=Ot.createInstance();pe.createInstance=Ot.createInstance;pe.createInstance;pe.dir;pe.init;pe.loadResources;pe.reloadResources;pe.use;pe.changeLanguage;pe.getFixedT;const wp=pe.t;pe.exists;pe.setDefaultNamespace;pe.hasLoadedNamespace;pe.loadNamespaces;pe.loadLanguages;var yr,jn;function Xl(){return jn||(jn=1,yr={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}),yr}var ql=Xl();const Zl=el(ql);var Ql=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function Fn(t){var e={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},r=t.match(/<\/?([^\s]+?)[/\s>]/);if(r&&(e.name=r[1],(Zl[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(Ql),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 ec=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,tc=/^\s*$/,rc=Object.create(null);function na(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(na,"")+"</"+e.name+">";case"comment":return t+"<!--"+e.comment+"-->"}}var nc={parse:function(t,e){e||(e={}),e.components||(e.components=rc);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(ec,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,m=t.charAt(f);if(h){var _=Fn(l);return a<0?(n.push(_),n):((d=o[a]).children.push(_),n)}if(u&&(a++,(r=Fn(l)).type==="tag"&&e.components[r.name]&&(r.type="component",i=!0),r.voidElement||i||!m||m==="<"||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&&m!=="<"&&m)){d=a===-1?n:o[a].children;var S=t.indexOf("<",f),N=t.slice(f,S===-1?void 0:S);tc.test(N)&&(N=" "),(S>-1&&a+d.length>=0||N!==" ")&&d.push({type:"text",content:N})}}),n},stringify:function(t){return t.reduce(function(e,r){return e+na("",r)},"")}};const Yt=(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);Ne(o[0])&&(o[0]=`react-i18next:: ${o[0]}`),t?.services?.logger?.warn?t.services.logger.warn(...o):console?.warn&&console.warn(...o)},Bn={},ir=(t,e,r,n)=>{Ne(r)&&Bn[r]||(Ne(r)&&(Bn[r]=new Date),Yt(t,e,r,n))},oa=(t,e)=>()=>{if(t.isInitialized)e();else{const r=()=>{setTimeout(()=>{t.off("initialized",r)},0),e()};t.on("initialized",r)}},Fr=(t,e,r)=>{t.loadNamespaces(e,oa(t,r))},Vn=(t,e,r,n)=>{if(Ne(r)&&(r=[r]),t.options.preload&&t.options.preload.indexOf(e)>-1)return Fr(t,r,n);r.forEach(o=>{t.options.ns.indexOf(o)<0&&t.options.ns.push(o)}),t.loadLanguages(e,oa(t,n))},oc=(t,e,r={})=>!e.languages||!e.languages.length?(ir(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}}),Ne=t=>typeof t=="string",Fe=t=>typeof t=="object"&&t!==null,ac=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,ic={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},sc=t=>ic[t],lc=t=>t.replace(ac,sc);let Br={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:lc};const cc=(t={})=>{Br={...Br,...t}},aa=()=>Br;let ia;const uc=t=>{ia=t},Qr=()=>ia,_r=(t,e)=>{if(!t)return!1;const r=t.props?.children??t.children;return e?r.length>0:!!r},Cr=t=>{if(!t)return[];const e=t.props?.children??t.children;return t.props?.i18nIsDynamicList?ut(e):e},dc=t=>Array.isArray(t)&&t.every(g.isValidElement),ut=t=>Array.isArray(t)?t:[t],fc=(t,e)=>{const r={...e};return r.props=Object.assign(t.props,e.props),r},sa=(t,e,r,n)=>{if(!t)return"";let o="";const a=ut(t),i=e?.transSupportBasicHtmlNodes?e.transKeepBasicHtmlNodesFor??[]:[];return a.forEach((s,l)=>{if(Ne(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&&Ne(f)){o+=`<${d}>${f}</${d}>`;return}const m=sa(f,e,r,n);o+=`<${l}>${m}</${l}>`;return}if(s===null){Yt(r,"TRANS_NULL_VALUE","Passed in a null value as child",{i18nKey:n});return}if(Fe(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}Yt(r,"TRANS_INVALID_OBJ","Invalid child - Object should only have keys {{ value, format }} (format is optional).",{i18nKey:n,child:s});return}Yt(r,"TRANS_INVALID_VAR","Passed in a variable like {number} - pass variables for interpolation as full objects like {{number}}.",{i18nKey:n,child:s})}),o},hc=(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},pc=(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=>{ut(R).forEach(b=>{Ne(b)||(_r(b)?d(Cr(b)):Fe(b)&&!g.isValidElement(b)&&Object.assign(c,b))})};d(t);const u=hc(r,s,c),h=nc.parse(`<0>${u}</0>`),f={...c,...a},m=(R,A,b)=>{const w=Cr(R),T=S(w,A.children,b);return dc(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],v=>{const O={...v.props};return delete O.i18nIsDynamicList,g.createElement(v.type,{...O,key:w,ref:v.props.ref??v.ref},T?null:A)}))},S=(R,A,b)=>{const w=ut(R);return ut(A).reduce((v,O,j)=>{const M=O.children?.[0]?.content&&n.services.interpolator.interpolate(O.children[0].content,f,n.language);if(O.type==="tag"){let K=w[parseInt(O.name,10)];!K&&e&&(K=e[O.name]),b.length===1&&!K&&(K=b[0][O.name]),K||(K={});const B=Object.keys(O.attrs).length!==0?fc({props:O.attrs},K):K,W=g.isValidElement(B),G=W&&_r(O,!0)&&!O.voidElement,ge=l&&Fe(B)&&B.dummy&&!W,ue=Fe(e)&&Object.hasOwnProperty.call(e,O.name);if(Ne(B)){const X=n.services.interpolator.interpolate(B,f,n.language);v.push(X)}else if(_r(B)||G){const X=m(B,O,b);_(B,X,v,j)}else if(ge){const X=S(w,O.children,b);_(B,X,v,j)}else if(Number.isNaN(parseFloat(O.name)))if(ue){const X=m(B,O,b);_(B,X,v,j,O.voidElement)}else if(o.transSupportBasicHtmlNodes&&s.indexOf(O.name)>-1)if(O.voidElement)v.push(g.createElement(O.name,{key:`${O.name}-${j}`}));else{const X=S(w,O.children,b);v.push(g.createElement(O.name,{key:`${O.name}-${j}`},X))}else if(O.voidElement)v.push(`<${O.name} />`);else{const X=S(w,O.children,b);v.push(`<${O.name}>${X}</${O.name}>`)}else if(Fe(B)&&!W){const X=O.children[0]?M:null;X&&v.push(X)}else _(B,M,v,j,O.children.length!==1||!M)}else if(O.type==="text"){const K=o.transWrapTextNodes,B=i?o.unescape(n.services.interpolator.interpolate(O.content,f,n.language)):n.services.interpolator.interpolate(O.content,f,n.language);K?v.push(g.createElement(K,{key:`${O.name}-${j}`},B)):v.push(B)}return v},[])},N=S([{dummy:!0,children:t||[]}],h,ut(t||[]));return Cr(N[0])},la=(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})},gc=(t,e)=>t.map((r,n)=>la(r,n,e)),mc=(t,e)=>{const r={};return Object.keys(t).forEach(n=>{Object.assign(r,{[n]:la(t[n],n,e)})}),r},Ec=(t,e,r,n)=>t?Array.isArray(t)?gc(t,e):Fe(t)?mc(t,e):(ir(r,"TRANS_INVALID_COMPONENTS",'<Trans /> "components" prop expects an object or array',{i18nKey:n}),null):null,vc=t=>!Fe(t)||Array.isArray(t)?!1:Object.keys(t).reduce((e,r)=>e&&Number.isNaN(Number.parseFloat(r)),!0);function yc({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 m=d||Qr();if(!m)return ir(m,"NO_I18NEXT_INSTANCE","Trans: You need to pass in an i18next instance using i18nextReactModule",{i18nKey:n}),t;const _=u||m.t.bind(m)||(G=>G),S={...aa(),...m.options?.react};let N=c||_.ns||m.options?.defaultNS;N=Ne(N)?[N]:N||["translation"];const R=sa(t,S,m,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);m.options?.interpolation?.defaultVariables&&(i=i&&Object.keys(i).length>0?{...i,...m.options.interpolation.defaultVariables}:{...m.options.interpolation.defaultVariables});const T=i||e!==void 0&&!m.options?.interpolation?.alwaysFormat||!t?a.interpolation:{interpolation:{...a.interpolation,prefix:"#$?",suffix:"?$#"}},v={...a,context:o||a.context,count:e,...i,...T,defaultValue:s||a?.defaultValue,ns:N};let O=w?_(w,v):A;O===w&&A&&(O=A);const j=Ec(l,O,m,n);let M=j||t,K=null;vc(j)&&(K=j,M=t);const B=pc(M,K,O,m,S,v,h),W=r??S.defaultTransParent;return W?g.createElement(W,f,B):B}const _c={type:"3rdParty",init(t){cc(t.options.react),uc(t)}},ca=g.createContext();class Cc{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}function Nc({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:m,defaultNS:_}=g.useContext(ca)||{},S=d||m||Qr(),N=u||S?.t.bind(S);return yc({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a,values:i,defaults:s,components:l,ns:c||N?.ns||_||S?.options?.defaultNS,i18n:S,t:u,shouldUnescape:h,...f})}var Nr={exports:{}},Sr={};var Un;function Sc(){if(Un)return Sr;Un=1;var t=tl();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(),m=n({inst:{value:f,getSnapshot:h}}),_=m[0].inst,S=m[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 Sr.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:d,Sr}var $n;function Rc(){return $n||($n=1,Nr.exports=Sc()),Nr.exports}var bc=Rc();const xc=(t,e)=>Ne(e)?e:Fe(e)&&Ne(e.defaultValue)?e.defaultValue:Array.isArray(t)?t[t.length-1]:t,Oc={t:xc,ready:!1},Dc=()=>()=>{},ua=(t,e={})=>{const{i18n:r}=e,{i18n:n,defaultNS:o}=g.useContext(ca)||{},a=r||n||Qr();a&&!a.reportNamespaces&&(a.reportNamespaces=new Cc),a||ir(a,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const i=g.useMemo(()=>({...aa(),...a?.options?.react,...e}),[a,e]),{useSuspense:s,keyPrefix:l}=i,c=g.useMemo(()=>{const b=o||a?.options?.defaultNS;return Ne(b)?[b]:b||["translation"]},[t,o,a]);a?.reportNamespaces?.addUsedNamespaces?.(c);const d=g.useRef(0),u=g.useCallback(b=>{if(!a)return Dc;const{bindI18n:w,bindI18nStore:T}=i,v=()=>{d.current+=1,b()};return w&&a.on(w,v),T&&a.store.on(T,v),()=>{w&&w.split(" ").forEach(O=>a.off(O,v)),T&&T.split(" ").forEach(O=>a.store.off(O,v))}},[a,i]),h=g.useRef(),f=g.useCallback(()=>{if(!a)return Oc;const b=!!(a.isInitialized||a.initializedStoreOnce)&&c.every(M=>oc(M,a,i)),w=e.lng||a.language,T=d.current,v=h.current;if(v&&v.ready===b&&v.lng===w&&v.keyPrefix===l&&v.revision===T)return v;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]),[m,_]=g.useState(0),{t:S,ready:N}=bc.useSyncExternalStore(u,f,f);g.useEffect(()=>{if(a&&!N&&!s){const b=()=>_(w=>w+1);e.lng?Vn(a,e.lng,c,b):Fr(a,c,b)}},[a,e.lng,c,N,s,m]);const R=a||{},A=g.useMemo(()=>{const b=[S,R,N];return b.t=S,b.i18n=R,b.ready=N,b},[S,R,N]);if(a&&s&&!N)throw new Promise(b=>{const w=()=>b();e.lng?Vn(a,e.lng,c,w):Fr(a,c,w)});return A},Lc=()=>{const{t}=ua();return y.jsxs("div",{children:[y.jsx("p",{className:"font-medium",children:t("notifications.reloadApp")}),y.jsxs("button",{onClick:()=>location.reload(),className:"underline decoration-solid underline-offset-2",children:[t("common.reloadConnect")," 🔄"]})]})},wc=()=>{async function t(){const e=await kd();if(e!==null){if(e.isLatest||e.currentVersion.includes("-"))return!0;ce.studioMode||!ce.warnOutdatedApp?$e.warn(`Connect is outdated:
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sentry_react-cODD7zWc.js","assets/react-DQSxOgtG.js","assets/sentry_browser-B4YoBIIG.js","assets/AddDriveModal-DgWDjHk6.js","assets/document_model_editor-DNCGY7nR.js","assets/graphql-DwmBvzSo.js","assets/drive_explorer-CtTqBc39.js","assets/react/jsx-runtime-DldvXD6N.js","assets/document_model-DxDgOZQk.js","assets/zod-9j67vCAu.js","assets/design_system-DJpOmF2E.js","assets/tailwind_merge-Dr4f9Rms.js","assets/react-dom-D6zQJsh6.js","assets/reactor_browser-CQckBDAv.js","assets/document_drive-CDMxtf9f.js","assets/design_system_connect-Bf5zyCf6.js","assets/design_system_ui-BXlYYDQC.js","assets/react-dom/client-BVPiT_FE.js","assets/graphql_request-G5F4jsaa.js","assets/ClearStorageModal-NiCExsdP.js","assets/CookiesPolicyModal-Cn_Rk_ws.js","assets/CreateDocumentModal-D-zj8JuH.js","assets/DebugSettingsModal-B0NXumlG.js","assets/DeleteDriveModal-vJtB3esF.js","assets/DeleteItemModal-CceF4AQk.js","assets/DisclaimerModal-q1BWMBgA.js","assets/DriveSettingsModal-BgNxsvW0.js","assets/ExportDocumentWithErrorsModal-ChOpQgZG.js","assets/SettingsModal-vuXP88Mg.js","assets/config-0mYxXHFp.js","assets/UpgradeDriveModal-O7dF2Bbv.js","assets/index-Cg3B8BbM.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{o as Pe,g as Io,s as ae,h as ko,n as _i,i as Ci,j as y,k as Ni,E as Si}from"./document_model_editor-DNCGY7nR.js";import{r as Ri}from"./react-dom/client-BVPiT_FE.js";import{r as g,R as bi,a as Mo}from"./sentry_react-cODD7zWc.js";import{$ as Ho,l as $e,k as Gr,S as xi,Y as Oi,X as Di,a0 as Vt,j as jo,h as Fo}from"./document_model-DxDgOZQk.js";import{_ as he,G as Li}from"./drive_explorer-CtTqBc39.js";import{t as wi,c as Bo,H as Vo,A as Pi,W as Ai,d as Ti,e as Ii,f as ki,g as Mi,h as Hi,i as _n,F as ji,j as Uo,k as Fi,B as Bi,l as Vi,m as Ui,n as $i,S as zi,o as Ki}from"./design_system_connect-Bf5zyCf6.js";import{A as $o,B as Jr,U as Wi,R as Yi,C as Gi,D as Ji,E as Xi,F as qi,K as Zi,P as Qi,H as Xr,y as je,J as es,l as ts,L as rs,M as ns,g as Mr,N as os,O as zo,T as Ko,V as as,W as is,X as ss,Y as ls,i as cs,Z as us,_ as ds,$ as fs,a0 as hs,a1 as ps,a2 as gs,a3 as ms,c as Es,a4 as vs,a5 as ys,a6 as Wo,a7 as _s,a8 as Yo,a9 as Cs,aa as Ns,ab as Ss,ac as Rs,ad as bs,ae as xs,af as Os,ag as Ds,ah as Ls,ai as ws,aj as Ps,ak as As,al as Ts,am as Is,an as ks,ao as Ms,ap as Hs,aq as js,ar as Fs,as as Bs,at as Vs,au as Us,s as Jt,av as $s,aw as Cn,ax as zs,ay as Go,d as Jo,az as Ks,aA as Ws,aB as Xo,aC as Ys,aD as Nn,aE as Gs,aF as Js,aG as Xs}from"./reactor_browser-CQckBDAv.js";import{I as Sn,l as qo,T as qs,c as Pt}from"./design_system-DJpOmF2E.js";import{g as Zs,r as Qs}from"./graphql_request-G5F4jsaa.js";import{g as el,r as tl}from"./react-DQSxOgtG.js";import{t as rl}from"./tailwind_merge-Dr4f9Rms.js";import{n as Ut}from"./document_drive-CDMxtf9f.js";import{an as nl}from"./sentry_browser-B4YoBIIG.js";import"./graphql-DwmBvzSo.js";import"./react/jsx-runtime-DldvXD6N.js";import"./zod-9j67vCAu.js";import"./react-dom-D6zQJsh6.js";import"./design_system_ui-BXlYYDQC.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 ol=Ri();const Q=Io([Ci(),ko(["true","false"])]).transform(t=>typeof t=="boolean"?t:t==="true"),Xt=Io([_i(),ae()]).transform(t=>typeof t=="number"?t:parseInt(t,10)),al=Pe({PH_CONFIG_PATH:ae().optional(),PH_PACKAGES:ae().optional(),PH_LOCAL_PACKAGE:ae().optional(),PH_DISABLE_LOCAL_PACKAGE:Q.default(!1),PH_WATCH_TIMEOUT:Xt.default(300),PH_SENTRY_AUTH_TOKEN:ae().optional(),PH_SENTRY_ORG:ae().optional(),PH_SENTRY_PROJECT:ae().optional()}),il=Pe({PH_CONNECT_VERSION:ae().default("unknown"),PH_CONNECT_LOG_LEVEL:ko(["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:Xt.default(3600*1e3),PH_CONNECT_CLI_VERSION:ae().optional(),PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE:Xt.default(50)}),sl=Pe({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)}),ll=Pe({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)}),cl=Pe({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)}),ul=Pe({PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED:Q.default(!0)}),dl=Pe({PH_CONNECT_PROCESSORS_ENABLED:Q.default(!0),PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED:Q.default(!0)}),fl=dl.merge(cl).merge(ul),hl=Pe({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)}),pl=Pe({PH_CONNECT_RENOWN_URL:ae().default("https://www.renown.id"),PH_CONNECT_RENOWN_NETWORK_ID:ae().default("eip155"),PH_CONNECT_RENOWN_CHAIN_ID:Xt.default(1)}),Kt=il.merge(sl).merge(ll).merge(fl).merge(hl).merge(pl);al.merge(Kt);function gl(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 ml(t={}){const e=new Set(Object.keys(Kt.shape)),r=gl(t,e,Kt);return Kt.parse(r)}function El(t){let e=t;return e.startsWith(".")&&(e=e.slice(1)),e.startsWith("/")||(e=`/${e}`),e.endsWith("/")||(e=`${e}/`),e}const vl={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://auth.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.34",PH_CONNECT_VERSION_CHECK_INTERVAL:"3600000",PH_CONNECT_WARN_OUTDATED_APP:"false",PROD:!0,SSR:!1},D=ml({processEnv:vl});function yl(t){return t.endsWith("/")?t:t+"/"}function _l(){const t=D.PH_CONNECT_BASE_PATH||"/",e=yl(t);return{basePath:t,routerBasename:e,allowList:void 0,allowedDocumentTypes:[],isDragAndDropEnabled:!0,isEditorDebugModeEnabled:!1,isEditorReadModeEnabled:!1,isExternalControlsEnabled:!1,version:D.PH_CONNECT_VERSION,logLevel:D.PH_CONNECT_LOG_LEVEL,requiresHardRefresh:D.PH_CONNECT_REQUIRES_HARD_REFRESH,warnOutdatedApp:D.PH_CONNECT_WARN_OUTDATED_APP,studioMode:D.PH_CONNECT_STUDIO_MODE,versionCheckInterval:D.PH_CONNECT_VERSION_CHECK_INTERVAL,cliVersion:D.PH_CONNECT_CLI_VERSION,fileUploadOperationsChunkSize:D.PH_CONNECT_FILE_UPLOAD_OPERATIONS_CHUNK_SIZE,gaTrackingId:D.PH_CONNECT_GA_TRACKING_ID,defaultDrivesUrl:D.PH_CONNECT_DEFAULT_DRIVES_URL,drivesPreserveStrategy:D.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,enabledEditors:D.PH_CONNECT_ENABLED_EDITORS?.split(","),disabledEditors:D.PH_CONNECT_DISABLED_EDITORS.split(","),isExternalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED,isAnalyticsEnabled:D.PH_CONNECT_ANALYTICS_ENABLED,isAnalyticsExternalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&D.PH_CONNECT_EXTERNAL_ANALYTICS_PROCESSORS_ENABLED,analyticsDatabaseName:D.PH_CONNECT_ANALYTICS_DATABASE_NAME,isRelationalProcessorsEnabled:D.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,isExternalRelationalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED&&D.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED,renownUrl:D.PH_CONNECT_RENOWN_URL,renownNetworkId:D.PH_CONNECT_RENOWN_NETWORK_ID,renownChainId:D.PH_CONNECT_RENOWN_CHAIN_ID,sentryRelease:D.PH_CONNECT_SENTRY_RELEASE,sentryDsn:D.PH_CONNECT_SENTRY_DSN,sentryEnv:D.PH_CONNECT_SENTRY_ENV,isDiffAnalyticsEnabled:D.PH_CONNECT_DIFF_ANALYTICS_ENABLED,isDriveAnalyticsEnabled:D.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,isPublicDrivesEnabled:D.PH_CONNECT_PUBLIC_DRIVES_ENABLED,isCloudDrivesEnabled:D.PH_CONNECT_CLOUD_DRIVES_ENABLED,isLocalDrivesEnabled:D.PH_CONNECT_LOCAL_DRIVES_ENABLED,isSentryTracingEnabled:D.PH_CONNECT_SENTRY_TRACING_ENABLED,isDocumentModelSelectionSettingsEnabled:!D.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,isAddDriveEnabled:!D.PH_CONNECT_DISABLE_ADD_DRIVE,isAddPublicDrivesEnabled:!D.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,isDeletePublicDrivesEnabled:!D.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES,isAddCloudDrivesEnabled:!D.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,isDeleteCloudDrivesEnabled:!D.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES,isAddLocalDrivesEnabled:!D.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,isDeleteLocalDrivesEnabled:!D.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES,isAnalyticsDatabaseWorkerEnabled:!D.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,isExternalPackagesEnabled:!D.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED}}const dt=_l(),Cl={isExternalControlsEnabled:dt.isExternalControlsEnabled},Nl={allowedDocumentTypes:dt.allowedDocumentTypes,isDragAndDropEnabled:dt.isDragAndDropEnabled};Ho(D.PH_CONNECT_LOG_LEVEL);$e.debug("Setting log level to @level.",D.PH_CONNECT_LOG_LEVEL);const Zo=El(D.PH_CONNECT_BASE_PATH||"/"),Sl=D.PH_CONNECT_ANALYTICS_DATABASE_NAME||`${Zo.replace(/\//g,"")}:analytics`,ce={appVersion:D.PH_CONNECT_VERSION,studioMode:D.PH_CONNECT_STUDIO_MODE,warnOutdatedApp:D.PH_CONNECT_WARN_OUTDATED_APP,appVersionCheckInterval:D.PH_CONNECT_VERSION_CHECK_INTERVAL,routerBasename:Zo,externalPackagesEnabled:!D.PH_CONNECT_EXTERNAL_PACKAGES_DISABLED,processors:{enabled:D.PH_CONNECT_PROCESSORS_ENABLED,externalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},analytics:{enabled:D.PH_CONNECT_ANALYTICS_ENABLED,databaseName:Sl,useWorker:!D.PH_CONNECT_ANALYTICS_DATABASE_WORKER_DISABLED,driveAnalyticsEnabled:D.PH_CONNECT_DRIVE_ANALYTICS_ENABLED,diffProcessorEnabled:D.PH_CONNECT_DIFF_ANALYTICS_ENABLED,externalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_PROCESSORS_ENABLED},relational:{enabled:D.PH_CONNECT_RELATIONAL_PROCESSORS_ENABLED,externalProcessorsEnabled:D.PH_CONNECT_EXTERNAL_RELATIONAL_PROCESSORS_ENABLED},renown:{url:D.PH_CONNECT_RENOWN_URL,networkId:D.PH_CONNECT_RENOWN_NETWORK_ID,chainId:D.PH_CONNECT_RENOWN_CHAIN_ID},sentry:{release:D.PH_CONNECT_SENTRY_RELEASE,dsn:D.PH_CONNECT_SENTRY_DSN,env:D.PH_CONNECT_SENTRY_ENV,tracing:D.PH_CONNECT_SENTRY_TRACING_ENABLED},content:{showSearchBar:D.PH_CONNECT_SEARCH_BAR_ENABLED,showDocumentModelSelectionSetting:!D.PH_CONNECT_HIDE_DOCUMENT_MODEL_SELECTION_SETTINGS,inspectorEnabled:D.PH_CONNECT_INSPECTOR_ENABLED},drives:{addDriveEnabled:!D.PH_CONNECT_DISABLE_ADD_DRIVE,preserveStrategy:D.PH_CONNECT_DRIVES_PRESERVE_STRATEGY,sections:{LOCAL:{enabled:D.PH_CONNECT_LOCAL_DRIVES_ENABLED,allowAdd:!D.PH_CONNECT_DISABLE_ADD_LOCAL_DRIVES,allowDelete:!D.PH_CONNECT_DISABLE_DELETE_LOCAL_DRIVES},CLOUD:{enabled:D.PH_CONNECT_CLOUD_DRIVES_ENABLED,allowAdd:!D.PH_CONNECT_DISABLE_ADD_CLOUD_DRIVES,allowDelete:!D.PH_CONNECT_DISABLE_DELETE_CLOUD_DRIVES},PUBLIC:{enabled:D.PH_CONNECT_PUBLIC_DRIVES_ENABLED,allowAdd:!D.PH_CONNECT_DISABLE_ADD_PUBLIC_DRIVES,allowDelete:!D.PH_CONNECT_DISABLE_DELETE_PUBLIC_DRIVES}}},gaTrackingId:D.PH_CONNECT_GA_TRACKING_ID,phCliVersion:D.PH_CONNECT_CLI_VERSION},Rl=ce.routerBasename,Qo=`${Rl}:acceptedCookies`,Hr=new Set;let Wt=bl();function bl(){try{const t=localStorage.getItem(Qo);return t?JSON.parse(t):{analytics:!1,marketing:!1,functional:!1}}catch{return{analytics:!1,marketing:!1,functional:!1}}}function Rn(){return Wt}function xl(t){Wt=t(Wt),localStorage.setItem(Qo,JSON.stringify(Wt)),Hr.forEach(e=>e())}function Ol(t){return Hr.add(t),()=>Hr.delete(t)}const qr=()=>[g.useSyncExternalStore(Ol,Rn,Rn),xl];async function Zr(){try{return(await he(()=>import("./hmr-LMNkvzP7.js"),[])).hmr}catch{return}}async function Dp(t){const e=await Zr();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 Lp(t){const e=await Zr();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 Dl(){const t=g.useRef(void 0);g.useEffect(()=>{const e=async n=>{const o=window.ph?.vetraPackages||[],l=(await he(()=>import(`${n.url}?t=${n.timestamp}`),[])).default.map($o),d=[...o.filter(u=>u.id==="powerhouse/common"),...l];Jr(d)};async function r(){const n=await Zr();t.current=n,n?.on("studio:external-packages-updated",e)}return r().catch(n=>$e.error("@error",n)),()=>{t.current?.off("studio:external-packages-updated",e)}},[])}const Ll="connect";function ft(t,e){const{type:r="default",containerId:n=Ll,...o}=e||{};return wi(t,{type:r,containerId:n,...o})}const U=t=>typeof t=="string",vt=()=>{let t,e;const r=new Promise((n,o)=>{t=n,e=o});return r.resolve=t,r.reject=e,r},bn=t=>t==null?"":""+t,wl=(t,e,r)=>{t.forEach(n=>{e[n]&&(r[n]=e[n])})},Pl=/###/g,xn=t=>t&&t.indexOf("###")>-1?t.replace(Pl,"."):t,On=t=>!t||U(t),bt=(t,e,r)=>{const n=U(e)?e.split("."):e;let o=0;for(;o<n.length-1;){if(On(t))return{};const a=xn(n[o]);!t[a]&&r&&(t[a]=new r),Object.prototype.hasOwnProperty.call(t,a)?t=t[a]:t={},++o}return On(t)?{}:{obj:t,k:xn(n[o])}},Dn=(t,e,r)=>{const{obj:n,k:o}=bt(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=bt(t,i,Object);for(;s.obj===void 0&&i.length;)a=`${i[i.length-1]}.${a}`,i=i.slice(0,i.length-1),s=bt(t,i,Object),s?.obj&&typeof s.obj[`${s.k}.${a}`]<"u"&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=r},Al=(t,e,r,n)=>{const{obj:o,k:a}=bt(t,e,Object);o[a]=o[a]||[],o[a].push(r)},qt=(t,e)=>{const{obj:r,k:n}=bt(t,e);if(r&&Object.prototype.hasOwnProperty.call(r,n))return r[n]},Tl=(t,e,r)=>{const n=qt(t,r);return n!==void 0?n:qt(e,r)},ea=(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]):ea(t[n],e[n],r):t[n]=e[n]);return t},at=t=>t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var Il={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};const kl=t=>U(t)?t.replace(/[&<>"'\/]/g,e=>Il[e]):t;class Ml{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 Hl=[" ",",","?","!",";"],jl=new Ml(20),Fl=(t,e,r)=>{e=e||"",r=r||"";const n=Hl.filter(i=>e.indexOf(i)<0&&r.indexOf(i)<0);if(n.length===0)return!0;const o=jl.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},jr=(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},xt=t=>t?.replace("_","-"),Bl={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 Zt{constructor(e,r={}){this.init(e,r)}init(e,r={}){this.prefix=r.prefix||"i18next:",this.logger=e||Bl,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 Zt(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return e=e||this.options,e.prefix=e.prefix||this.prefix,new Zt(this.logger,e)}}var xe=new Zt;class ar{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 Ln extends ar{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=qt(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:jr(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),Dn(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=qt(this.data,s)||{};i.skipCopy||(n=JSON.parse(JSON.stringify(n))),o?ea(l,n,a):l={...l,...n},Dn(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 ta={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 ra=Symbol("i18next/PATH_KEY");function Vl(){const t=[],e=Object.create(null);let r;return e.get=(n,o)=>(r?.revoke?.(),o===ra?t:(t.push(o),r=Proxy.revocable(n,e),r.proxy)),Proxy.revocable(Object.create(null),e).proxy}function Qt(t,e){const{[ra]:r}=t(Vl());return r.join(e?.keySeparator??".")}const wn={},Er=t=>!U(t)&&typeof t!="boolean"&&typeof t!="number";class er extends ar{constructor(e,r={}){super(),wl(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],e,this),this.options=r,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=xe.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=Er(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&&!Fl(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 m=f?.res;const _=f?.usedKey||s,S=f?.exactUsedKey||s,N=["[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=er.hasDefaultValue(o),T=b?this.pluralResolver.getSuffix(u,o.count,o):"",v=o.ordinal&&b?this.pluralResolver.getSuffix(u,o.count,{ordinal:!1}):"",O=b&&!o.ordinal&&o.count===0,j=O&&o[`defaultValue${this.options.pluralSeparator}zero`]||o[`defaultValue${T}`]||o[`defaultValue${v}`]||o.defaultValue;let M=m;A&&!m&&w&&(M=j);const K=Er(M),B=Object.prototype.toString.apply(M);if(A&&M&&K&&N.indexOf(B)<0&&!(U(R)&&Array.isArray(M))){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(_,M,{...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(M),G=W?[]:{},ge=W?S:_;for(const ue in M)if(Object.prototype.hasOwnProperty.call(M,ue)){const X=`${ge}${i}${ue}`;w&&!m?G[ue]=this.translate(X,{...o,defaultValue:Er(j)?j[ue]:void 0,joinArrays:!1,ns:l}):G[ue]=this.translate(X,{...o,joinArrays:!1,ns:l}),G[ue]===X&&(G[ue]=M[ue])}m=G}}else if(A&&U(R)&&Array.isArray(m))m=m.join(R),m&&(m=this.extendTranslation(m,e,o,n));else{let W=!1,G=!1;!this.isValidLookup(m)&&w&&(W=!0,m=j),this.isValidLookup(m)||(G=!0,m=s);const ue=(o.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&G?void 0:m,X=w&&j!==m&&this.options.updateMissing;if(G||W||X){if(this.logger.log(X?"updateKey":"missingKey",u,c,s,X?j:m),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 Ae=(ie,de,ye)=>{const Te=w&&ye!==m?ye:ue;this.options.missingKeyHandler?this.options.missingKeyHandler(ie,c,de,Te,X,o):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(ie,c,de,Te,X,o),this.emit("missingKey",ie,c,de,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?ee.forEach(ie=>{const de=this.pluralResolver.getSuffixes(ie,o);O&&o[`defaultValue${this.options.pluralSeparator}zero`]&&de.indexOf(`${this.options.pluralSeparator}zero`)<0&&de.push(`${this.options.pluralSeparator}zero`),de.forEach(ye=>{Ae([ie],s+ye,o[`defaultValue${ye}`]||j)})}):Ae(ee,s,j))}m=this.extendTranslation(m,e,o,f,n),G&&m===s&&this.options.appendNamespaceToMissingKey&&(m=`${c}${d}${s}`),(G||W)&&this.options.parseMissingKeyHandler&&(m=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${c}${d}${s}`:s,W?m:void 0,o))}return a?(f.res=m,f.usedParams=this.getUsedParamsDetails(o),f):m}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=ta.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,m=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,!wn[`${_[0]}-${S}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(s)&&(wn[`${_[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(N=>{if(this.isValidLookup(n))return;i=N;const R=[d];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(R,d,N,S,r);else{let b;h&&(b=this.pluralResolver.getSuffix(N,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)),m){const v=`${d}${this.options.contextSeparator||"_"}${r.context}`;R.push(v),h&&(r.ordinal&&b.indexOf(T)===0&&R.push(v+b.replace(T,this.options.pluralSeparator)),R.push(v+b),f&&R.push(v+w))}}let A;for(;A=R.pop();)this.isValidLookup(n)||(a=A,n=this.getResource(N,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 Pn{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=xe.create("languageUtils")}getScriptPartFromCode(e){if(e=xt(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=xt(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 An={zero:0,one:1,two:2,few:3,many:4,other:5},Tn={select:t=>t===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class Ul{constructor(e,r={}){this.languageUtils=e,this.options=r,this.logger=xe.create("pluralResolver"),this.pluralRulesCache={}}addRule(e,r){this.rules[e]=r}clearCache(){this.pluralRulesCache={}}getRule(e,r={}){const n=xt(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!"),Tn;if(!e.match(/-|_/))return Tn;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)=>An[o]-An[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 In=(t,e,r,n=".",o=!0)=>{let a=Tl(t,e,r);return!a&&o&&U(r)&&(a=jr(t,r,n),a===void 0&&(a=jr(e,r,n))),a},vr=t=>t.replace(/\$/g,"$$$$");class $l{constructor(e={}){this.logger=xe.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:m,nestingSuffixEscaped:_,nestingOptionsSeparator:S,maxReplaces:N,alwaysFormat:R}=e.interpolation;this.escape=r!==void 0?r:kl,this.escapeValue=n!==void 0?n:!0,this.useRawValueToEscape=o!==void 0?o:!1,this.prefix=a?at(a):i||"{{",this.suffix=s?at(s):l||"}}",this.formatSeparator=c||",",this.unescapePrefix=d?"":u||"-",this.unescapeSuffix=this.unescapePrefix?"":d||"",this.nestingPrefix=h?at(h):f||at("$t("),this.nestingSuffix=m?at(m):_||at(")"),this.nestingOptionsSeparator=S||",",this.maxReplaces=N||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 N=In(r,l,f,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(N,void 0,n,{...o,...r,interpolationkey:f}):N}const m=f.split(this.formatSeparator),_=m.shift().trim(),S=m.join(this.formatSeparator).trim();return this.format(In(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=>vr(f)},{regex:this.regexp,safeValue:f=>this.escapeValue?vr(this.escape(f)):vr(f)}].forEach(f=>{for(s=0;a=f.regex.exec(e);){const m=a[1].trim();if(i=c(m),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,m))i="";else if(u){i=a[0];continue}else this.logger.warn(`missed to pass in variable ${m} for interpolating ${e}`),i="";else!U(i)&&!this.useRawValueToEscape&&(i=bn(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),m=h.match(/"/g);((f?.length??0)%2===0&&!m||m.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=bn(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 zl=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}},kn=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(xt(n),o),e[i]=s),s(r)}},Kl=t=>(e,r,n)=>t(xt(r),n)(e);class Wl{constructor(e={}){this.logger=xe.create("formatter"),this.options=e,this.init(e)}init(e,r={interpolation:{}}){this.formatSeparator=r.interpolation.formatSeparator||",";const n=r.cacheInBuiltFormats?kn:Kl;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()]=kn(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}=zl(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 Yl=(t,e)=>{t.pending[e]!==void 0&&(delete t.pending[e],t.pendingCount--)};class Gl extends ar{constructor(e,r,n,o={}){super(),this.backend=e,this.store=r,this.services=n,this.languageUtils=n.languageUtils,this.options=o,this.logger=xe.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=>{Al(l.loaded,[a],i),Yl(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 Mn=()=>({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}),Hn=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),$t=()=>{},Jl=t=>{Object.getOwnPropertyNames(Object.getPrototypeOf(t)).forEach(r=>{typeof t[r]=="function"&&(t[r]=t[r].bind(t))})};class Ot extends ar{constructor(e={},r){if(super(),this.options=Hn(e),this.services={},this.logger=xe,this.modules={external:[]},Jl(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=Mn();this.options={...n,...this.options,...Hn(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?xe.init(o(this.modules.logger),this.options):xe.init(null,this.options);let c;this.modules.formatter?c=this.modules.formatter:c=Wl;const d=new Pn(this.options);this.store=new Ln(this.options.resources,this.options);const u=this.services;u.logger=xe,u.resourceStore=this.store,u.languageUtils=d,u.pluralResolver=new Ul(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 $l(this.options),u.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},u.backendConnector=new Gl(o(this.modules.backend),u.resourceStore,u,this.options),u.backendConnector.on("*",(f,...m)=>{this.emit(f,...m)}),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 er(this.services,this.options),this.translator.on("*",(f,...m)=>{this.emit(f,...m)}),this.modules.external.forEach(f=>{f.init&&f.init(this)})}if(this.format=this.options.interpolation.format,r||(r=$t),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=vt(),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=$t){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=vt();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=$t),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"&&ta.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=vt();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=vt();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=vt();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 Pn(Mn());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 Ot(e,r)}cloneInstance(e={},r=$t){const n=e.forkResourceStore;n&&delete e.forkResourceStore;const o={...this.options,...e,isClone:!0},a=new Ot(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 Ln(s,o),a.services.resourceStore=a.store}return a.translator=new er(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=Ot.createInstance();pe.createInstance=Ot.createInstance;pe.createInstance;pe.dir;pe.init;pe.loadResources;pe.reloadResources;pe.use;pe.changeLanguage;pe.getFixedT;const wp=pe.t;pe.exists;pe.setDefaultNamespace;pe.hasLoadedNamespace;pe.loadNamespaces;pe.loadLanguages;var yr,jn;function Xl(){return jn||(jn=1,yr={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}),yr}var ql=Xl();const Zl=el(ql);var Ql=/\s([^'"/\s><]+?)[\s/>]|([^\s=]+)=\s?(".*?"|'.*?')/g;function Fn(t){var e={type:"tag",name:"",voidElement:!1,attrs:{},children:[]},r=t.match(/<\/?([^\s]+?)[/\s>]/);if(r&&(e.name=r[1],(Zl[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(Ql),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 ec=/<[a-zA-Z0-9\-\!\/](?:"[^"]*"|'[^']*'|[^'">])*>/g,tc=/^\s*$/,rc=Object.create(null);function na(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(na,"")+"</"+e.name+">";case"comment":return t+"<!--"+e.comment+"-->"}}var nc={parse:function(t,e){e||(e={}),e.components||(e.components=rc);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(ec,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,m=t.charAt(f);if(h){var _=Fn(l);return a<0?(n.push(_),n):((d=o[a]).children.push(_),n)}if(u&&(a++,(r=Fn(l)).type==="tag"&&e.components[r.name]&&(r.type="component",i=!0),r.voidElement||i||!m||m==="<"||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&&m!=="<"&&m)){d=a===-1?n:o[a].children;var S=t.indexOf("<",f),N=t.slice(f,S===-1?void 0:S);tc.test(N)&&(N=" "),(S>-1&&a+d.length>=0||N!==" ")&&d.push({type:"text",content:N})}}),n},stringify:function(t){return t.reduce(function(e,r){return e+na("",r)},"")}};const Yt=(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);Ne(o[0])&&(o[0]=`react-i18next:: ${o[0]}`),t?.services?.logger?.warn?t.services.logger.warn(...o):console?.warn&&console.warn(...o)},Bn={},ir=(t,e,r,n)=>{Ne(r)&&Bn[r]||(Ne(r)&&(Bn[r]=new Date),Yt(t,e,r,n))},oa=(t,e)=>()=>{if(t.isInitialized)e();else{const r=()=>{setTimeout(()=>{t.off("initialized",r)},0),e()};t.on("initialized",r)}},Fr=(t,e,r)=>{t.loadNamespaces(e,oa(t,r))},Vn=(t,e,r,n)=>{if(Ne(r)&&(r=[r]),t.options.preload&&t.options.preload.indexOf(e)>-1)return Fr(t,r,n);r.forEach(o=>{t.options.ns.indexOf(o)<0&&t.options.ns.push(o)}),t.loadLanguages(e,oa(t,n))},oc=(t,e,r={})=>!e.languages||!e.languages.length?(ir(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}}),Ne=t=>typeof t=="string",Fe=t=>typeof t=="object"&&t!==null,ac=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,ic={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},sc=t=>ic[t],lc=t=>t.replace(ac,sc);let Br={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:lc};const cc=(t={})=>{Br={...Br,...t}},aa=()=>Br;let ia;const uc=t=>{ia=t},Qr=()=>ia,_r=(t,e)=>{if(!t)return!1;const r=t.props?.children??t.children;return e?r.length>0:!!r},Cr=t=>{if(!t)return[];const e=t.props?.children??t.children;return t.props?.i18nIsDynamicList?ut(e):e},dc=t=>Array.isArray(t)&&t.every(g.isValidElement),ut=t=>Array.isArray(t)?t:[t],fc=(t,e)=>{const r={...e};return r.props=Object.assign(t.props,e.props),r},sa=(t,e,r,n)=>{if(!t)return"";let o="";const a=ut(t),i=e?.transSupportBasicHtmlNodes?e.transKeepBasicHtmlNodesFor??[]:[];return a.forEach((s,l)=>{if(Ne(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&&Ne(f)){o+=`<${d}>${f}</${d}>`;return}const m=sa(f,e,r,n);o+=`<${l}>${m}</${l}>`;return}if(s===null){Yt(r,"TRANS_NULL_VALUE","Passed in a null value as child",{i18nKey:n});return}if(Fe(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}Yt(r,"TRANS_INVALID_OBJ","Invalid child - Object should only have keys {{ value, format }} (format is optional).",{i18nKey:n,child:s});return}Yt(r,"TRANS_INVALID_VAR","Passed in a variable like {number} - pass variables for interpolation as full objects like {{number}}.",{i18nKey:n,child:s})}),o},hc=(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},pc=(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=>{ut(R).forEach(b=>{Ne(b)||(_r(b)?d(Cr(b)):Fe(b)&&!g.isValidElement(b)&&Object.assign(c,b))})};d(t);const u=hc(r,s,c),h=nc.parse(`<0>${u}</0>`),f={...c,...a},m=(R,A,b)=>{const w=Cr(R),T=S(w,A.children,b);return dc(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],v=>{const O={...v.props};return delete O.i18nIsDynamicList,g.createElement(v.type,{...O,key:w,ref:v.props.ref??v.ref},T?null:A)}))},S=(R,A,b)=>{const w=ut(R);return ut(A).reduce((v,O,j)=>{const M=O.children?.[0]?.content&&n.services.interpolator.interpolate(O.children[0].content,f,n.language);if(O.type==="tag"){let K=w[parseInt(O.name,10)];!K&&e&&(K=e[O.name]),b.length===1&&!K&&(K=b[0][O.name]),K||(K={});const B=Object.keys(O.attrs).length!==0?fc({props:O.attrs},K):K,W=g.isValidElement(B),G=W&&_r(O,!0)&&!O.voidElement,ge=l&&Fe(B)&&B.dummy&&!W,ue=Fe(e)&&Object.hasOwnProperty.call(e,O.name);if(Ne(B)){const X=n.services.interpolator.interpolate(B,f,n.language);v.push(X)}else if(_r(B)||G){const X=m(B,O,b);_(B,X,v,j)}else if(ge){const X=S(w,O.children,b);_(B,X,v,j)}else if(Number.isNaN(parseFloat(O.name)))if(ue){const X=m(B,O,b);_(B,X,v,j,O.voidElement)}else if(o.transSupportBasicHtmlNodes&&s.indexOf(O.name)>-1)if(O.voidElement)v.push(g.createElement(O.name,{key:`${O.name}-${j}`}));else{const X=S(w,O.children,b);v.push(g.createElement(O.name,{key:`${O.name}-${j}`},X))}else if(O.voidElement)v.push(`<${O.name} />`);else{const X=S(w,O.children,b);v.push(`<${O.name}>${X}</${O.name}>`)}else if(Fe(B)&&!W){const X=O.children[0]?M:null;X&&v.push(X)}else _(B,M,v,j,O.children.length!==1||!M)}else if(O.type==="text"){const K=o.transWrapTextNodes,B=i?o.unescape(n.services.interpolator.interpolate(O.content,f,n.language)):n.services.interpolator.interpolate(O.content,f,n.language);K?v.push(g.createElement(K,{key:`${O.name}-${j}`},B)):v.push(B)}return v},[])},N=S([{dummy:!0,children:t||[]}],h,ut(t||[]));return Cr(N[0])},la=(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})},gc=(t,e)=>t.map((r,n)=>la(r,n,e)),mc=(t,e)=>{const r={};return Object.keys(t).forEach(n=>{Object.assign(r,{[n]:la(t[n],n,e)})}),r},Ec=(t,e,r,n)=>t?Array.isArray(t)?gc(t,e):Fe(t)?mc(t,e):(ir(r,"TRANS_INVALID_COMPONENTS",'<Trans /> "components" prop expects an object or array',{i18nKey:n}),null):null,vc=t=>!Fe(t)||Array.isArray(t)?!1:Object.keys(t).reduce((e,r)=>e&&Number.isNaN(Number.parseFloat(r)),!0);function yc({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 m=d||Qr();if(!m)return ir(m,"NO_I18NEXT_INSTANCE","Trans: You need to pass in an i18next instance using i18nextReactModule",{i18nKey:n}),t;const _=u||m.t.bind(m)||(G=>G),S={...aa(),...m.options?.react};let N=c||_.ns||m.options?.defaultNS;N=Ne(N)?[N]:N||["translation"];const R=sa(t,S,m,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);m.options?.interpolation?.defaultVariables&&(i=i&&Object.keys(i).length>0?{...i,...m.options.interpolation.defaultVariables}:{...m.options.interpolation.defaultVariables});const T=i||e!==void 0&&!m.options?.interpolation?.alwaysFormat||!t?a.interpolation:{interpolation:{...a.interpolation,prefix:"#$?",suffix:"?$#"}},v={...a,context:o||a.context,count:e,...i,...T,defaultValue:s||a?.defaultValue,ns:N};let O=w?_(w,v):A;O===w&&A&&(O=A);const j=Ec(l,O,m,n);let M=j||t,K=null;vc(j)&&(K=j,M=t);const B=pc(M,K,O,m,S,v,h),W=r??S.defaultTransParent;return W?g.createElement(W,f,B):B}const _c={type:"3rdParty",init(t){cc(t.options.react),uc(t)}},ca=g.createContext();class Cc{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(r=>{this.usedNamespaces[r]||(this.usedNamespaces[r]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}function Nc({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:m,defaultNS:_}=g.useContext(ca)||{},S=d||m||Qr(),N=u||S?.t.bind(S);return yc({children:t,count:e,parent:r,i18nKey:n,context:o,tOptions:a,values:i,defaults:s,components:l,ns:c||N?.ns||_||S?.options?.defaultNS,i18n:S,t:u,shouldUnescape:h,...f})}var Nr={exports:{}},Sr={};var Un;function Sc(){if(Un)return Sr;Un=1;var t=tl();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(),m=n({inst:{value:f,getSnapshot:h}}),_=m[0].inst,S=m[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 Sr.useSyncExternalStore=t.useSyncExternalStore!==void 0?t.useSyncExternalStore:d,Sr}var $n;function Rc(){return $n||($n=1,Nr.exports=Sc()),Nr.exports}var bc=Rc();const xc=(t,e)=>Ne(e)?e:Fe(e)&&Ne(e.defaultValue)?e.defaultValue:Array.isArray(t)?t[t.length-1]:t,Oc={t:xc,ready:!1},Dc=()=>()=>{},ua=(t,e={})=>{const{i18n:r}=e,{i18n:n,defaultNS:o}=g.useContext(ca)||{},a=r||n||Qr();a&&!a.reportNamespaces&&(a.reportNamespaces=new Cc),a||ir(a,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const i=g.useMemo(()=>({...aa(),...a?.options?.react,...e}),[a,e]),{useSuspense:s,keyPrefix:l}=i,c=g.useMemo(()=>{const b=o||a?.options?.defaultNS;return Ne(b)?[b]:b||["translation"]},[t,o,a]);a?.reportNamespaces?.addUsedNamespaces?.(c);const d=g.useRef(0),u=g.useCallback(b=>{if(!a)return Dc;const{bindI18n:w,bindI18nStore:T}=i,v=()=>{d.current+=1,b()};return w&&a.on(w,v),T&&a.store.on(T,v),()=>{w&&w.split(" ").forEach(O=>a.off(O,v)),T&&T.split(" ").forEach(O=>a.store.off(O,v))}},[a,i]),h=g.useRef(),f=g.useCallback(()=>{if(!a)return Oc;const b=!!(a.isInitialized||a.initializedStoreOnce)&&c.every(M=>oc(M,a,i)),w=e.lng||a.language,T=d.current,v=h.current;if(v&&v.ready===b&&v.lng===w&&v.keyPrefix===l&&v.revision===T)return v;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]),[m,_]=g.useState(0),{t:S,ready:N}=bc.useSyncExternalStore(u,f,f);g.useEffect(()=>{if(a&&!N&&!s){const b=()=>_(w=>w+1);e.lng?Vn(a,e.lng,c,b):Fr(a,c,b)}},[a,e.lng,c,N,s,m]);const R=a||{},A=g.useMemo(()=>{const b=[S,R,N];return b.t=S,b.i18n=R,b.ready=N,b},[S,R,N]);if(a&&s&&!N)throw new Promise(b=>{const w=()=>b();e.lng?Vn(a,e.lng,c,w):Fr(a,c,w)});return A},Lc=()=>{const{t}=ua();return y.jsxs("div",{children:[y.jsx("p",{className:"font-medium",children:t("notifications.reloadApp")}),y.jsxs("button",{onClick:()=>location.reload(),className:"underline decoration-solid underline-offset-2",children:[t("common.reloadConnect")," 🔄"]})]})},wc=()=>{async function t(){const e=await kd();if(e!==null){if(e.isLatest||e.currentVersion.includes("-"))return!0;ce.studioMode||!ce.warnOutdatedApp?$e.warn(`Connect is outdated:
|
|
3
3
|
Current: @currentVersion
|
|
4
4
|
Latest: @latestVersion`,e.currentVersion,e.latestVersion):ft(g.createElement(Lc),{type:"connect-warning",toastId:"outdated-app",autoClose:!1})}}g.useEffect(()=>{t().catch(console.error)},[])},Pc=ce.routerBasename,da=`${Pc}:display-cookie-banner`,zn=new Set;let fa=Ac();function Ac(){try{return localStorage.getItem(da)!=="false"}catch(t){return console.error(t),!0}}function Kn(){return fa}function Tc(t){fa=t,localStorage.setItem(da,JSON.stringify(t))}function Ic(t){return zn.add(t),()=>zn.delete(t)}const kc=()=>[g.useSyncExternalStore(Ic,Kn,Kn),Tc];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 Wn="popstate";function Mc(t){t===void 0&&(t={});function e(n,o){let{pathname:a,search:i,hash:s}=n.location;return Dt("",{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:At(o)}return jc(e,r,null,t)}function z(t,e){if(t===!1||t===null||typeof t>"u")throw new Error(e)}function ht(t,e){if(!t){typeof console<"u"&&console.warn(e);try{throw new Error(e)}catch{}}}function Hc(){return Math.random().toString(36).substr(2,8)}function Yn(t,e){return{usr:t.state,key:t.key,idx:e}}function Dt(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||Hc()})}function At(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 jc(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(),N=S==null?null:S-c;c=S,l&&l({action:s,location:_.location,delta:N})}function h(S,N){s=le.Push;let R=Dt(_.location,S,N);c=d()+1;let A=Yn(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,N){s=le.Replace;let R=Dt(_.location,S,N);c=d();let A=Yn(R,c),b=_.createHref(R);i.replaceState(A,"",b),a&&l&&l({action:s,location:_.location,delta:0})}function m(S){let N=o.location.origin!=="null"?o.location.origin:o.location.href,R=typeof S=="string"?S:At(S);return R=R.replace(/ $/,"%20"),z(N,"No window.location.(origin|href) available to create URL for href: "+R),new URL(R,N)}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(Wn,u),l=S,()=>{o.removeEventListener(Wn,u),l=null}},createHref(S){return e(o,S)},createURL:m,encodeLocation(S){let N=m(S);return{pathname:N.pathname,search:N.search,hash:N.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 Fc=new Set(["lazy","caseSensitive","path","id","index","children"]);function Bc(t){return t.index===!0}function tr(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(z(o.index!==!0||!o.children,"Cannot specify children on an index route"),z(!n[s],'Found a route id collision on id "'+s+`". Route id's must be globally unique within Data Router usages`),Bc(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=tr(o.children,e,i,n)),l}})}function He(t,e,r){return r===void 0&&(r="/"),Gt(t,e,r,!1)}function Gt(t,e,r,n){let o=typeof e=="string"?Ke(e):e,a=Tt(o.pathname||"/",r);if(a==null)return null;let i=ha(t);Uc(i);let s=null;for(let l=0;s==null&&l<i.length;++l){let c=Qc(a);s=qc(i[l],c,n)}return s}function Vc(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 ha(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("/")&&(z(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=ze([n,l.relativePath]),d=r.concat(l);a.children&&a.children.length>0&&(z(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),ha(a.children,e,d,c)),!(a.path==null&&!a.index)&&e.push({path:c,score:Jc(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 pa(a.path))o(a,i,l)}),e}function pa(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=pa(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 Uc(t){t.sort((e,r)=>e.score!==r.score?r.score-e.score:Xc(e.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const $c=/^:[\w-]+$/,zc=3,Kc=2,Wc=1,Yc=10,Gc=-2,Gn=t=>t==="*";function Jc(t,e){let r=t.split("/"),n=r.length;return r.some(Gn)&&(n+=Gc),e&&(n+=Kc),r.filter(o=>!Gn(o)).reduce((o,a)=>o+($c.test(a)?zc:a===""?Wc:Yc),n)}function Xc(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 qc(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=Jn({path:l.relativePath,caseSensitive:l.caseSensitive,end:c},d),h=l.route;if(!u&&c&&r&&!n[n.length-1].route.index&&(u=Jn({path:l.relativePath,caseSensitive:l.caseSensitive,end:!1},d)),!u)return null;Object.assign(o,u.params),i.push({params:o,pathname:ze([a,u.pathname]),pathnameBase:ru(ze([a,u.pathnameBase])),route:h}),u.pathnameBase!=="/"&&(a=ze([a,u.pathnameBase]))}return i}function Jn(t,e){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[r,n]=Zc(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 m=s[u];return f&&!m?c[h]=void 0:c[h]=(m||"").replace(/%2F/g,"/"),c},{}),pathname:a,pathnameBase:i,pattern:t}}function Zc(t,e,r){e===void 0&&(e=!1),r===void 0&&(r=!0),ht(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 Qc(t){try{return t.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}catch(e){return ht(!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 Tt(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 eu(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:tu(r,e):e,search:nu(n),hash:ou(o)}}function tu(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 Rr(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 ga(t){return t.filter((e,r)=>r===0||e.route.path&&e.route.path.length>0)}function ma(t,e){let r=ga(t);return e?r.map((n,o)=>o===r.length-1?n.pathname:n.pathnameBase):r.map(n=>n.pathnameBase)}function Ea(t,e,r,n){n===void 0&&(n=!1);let o;typeof t=="string"?o=Ke(t):(o=re({},t),z(!o.pathname||!o.pathname.includes("?"),Rr("?","pathname","search",o)),z(!o.pathname||!o.pathname.includes("#"),Rr("#","pathname","hash",o)),z(!o.search||!o.search.includes("#"),Rr("#","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=eu(o,s),c=i&&i!=="/"&&i.endsWith("/"),d=(a||i===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(c||d)&&(l.pathname+="/"),l}const ze=t=>t.join("/").replace(/\/\/+/g,"/"),ru=t=>t.replace(/\/+$/,"").replace(/^\/*/,"/"),nu=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,ou=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t;class rr{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 va=["post","put","patch","delete"],au=new Set(va),iu=["get",...va],su=new Set(iu),lu=new Set([301,302,303,307,308]),cu=new Set([307,308]),br={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},uu={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},yt={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},en=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,du=t=>({hasErrorBoundary:!!t.hasErrorBoundary}),ya="remix-router-transitions";function fu(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;z(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=E=>({hasErrorBoundary:p(E)})}else o=du;let a={},i=tr(t.routes,o,void 0,a),s,l=t.basename||"/",c=t.dataStrategy||mu,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,m=null,_=null,S=null,N=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:E,route:C}=io(i);R=E,b={[C.id]:p}}R&&!t.hydrationData&&Ht(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,E=t.hydrationData?t.hydrationData.errors:null;if(E){let C=R.findIndex(x=>E[x.route.id]!==void 0);w=R.slice(0,C+1).every(x=>!Ur(x.route,p,E))}else w=R.every(C=>!Ur(C.route,p,E))}else w=t.hydrationData!=null;else if(w=!1,R=[],u.v7_partialHydration){let p=Ht(null,i,t.history.location.pathname);p.active&&p.matches&&(A=!0,R=p.matches)}let T,v={historyAction:t.history.action,location:t.history.location,matches:R,initialized:w,navigation:br,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},O=le.Pop,j=!1,M,K=!1,B=new Map,W=null,G=!1,ge=!1,ue=[],X=new Set,ee=new Map,Oe=0,Ae=-1,ie=new Map,de=new Set,ye=new Map,Te=new Map,Se=new Set,Ge=new Map,Je=new Map,It;function ni(){if(h=t.history.listen(p=>{let{action:E,location:C,delta:x}=p;if(It){It(),It=void 0;return}ht(Je.size===0||x!=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 L=mn({currentLocation:v.location,nextLocation:C,historyAction:E});if(L&&x!=null){let F=new Promise(V=>{It=V});t.history.go(x*-1),Mt(L,{state:"blocked",location:C,proceed(){Mt(L,{state:"proceeding",proceed:void 0,reset:void 0,location:C}),F.then(()=>t.history.go(x))},reset(){let V=new Map(v.blockers);V.set(L,yt),me({blockers:V})}});return}return Xe(E,C)}),r){wu(e,B);let p=()=>Pu(e,B);e.addEventListener("pagehide",p),W=()=>e.removeEventListener("pagehide",p)}return v.initialized||Xe(le.Pop,v.location,{initialHydration:!0}),T}function oi(){h&&h(),W&&W(),f.clear(),M&&M.abort(),v.fetchers.forEach((p,E)=>kt(E)),v.blockers.forEach((p,E)=>gn(E))}function ai(p){return f.add(p),()=>f.delete(p)}function me(p,E){E===void 0&&(E={}),v=re({},v,p);let C=[],x=[];u.v7_fetcherPersist&&v.fetchers.forEach((L,F)=>{L.state==="idle"&&(Se.has(F)?x.push(F):C.push(F))}),Se.forEach(L=>{!v.fetchers.has(L)&&!ee.has(L)&&x.push(L)}),[...f].forEach(L=>L(v,{deletedFetchers:x,viewTransitionOpts:E.viewTransitionOpts,flushSync:E.flushSync===!0})),u.v7_fetcherPersist?(C.forEach(L=>v.fetchers.delete(L)),x.forEach(L=>kt(L))):x.forEach(L=>Se.delete(L))}function tt(p,E,C){var x,L;let{flushSync:F}=C===void 0?{}:C,V=v.actionData!=null&&v.navigation.formMethod!=null&&Re(v.navigation.formMethod)&&v.navigation.state==="loading"&&((x=p.state)==null?void 0:x._isRedirect)!==!0,I;E.actionData?Object.keys(E.actionData).length>0?I=E.actionData:I=null:V?I=v.actionData:I=null;let k=E.loaderData?oo(v.loaderData,E.loaderData,E.matches||[],E.errors):v.loaderData,P=v.blockers;P.size>0&&(P=new Map(P),P.forEach((Y,fe)=>P.set(fe,yt)));let H=j===!0||v.navigation.formMethod!=null&&Re(v.navigation.formMethod)&&((L=p.state)==null?void 0:L._isRedirect)!==!0;s&&(i=s,s=void 0),G||O===le.Pop||(O===le.Push?t.history.push(p,p.state):O===le.Replace&&t.history.replace(p,p.state));let $;if(O===le.Pop){let Y=B.get(v.location.pathname);Y&&Y.has(p.pathname)?$={currentLocation:v.location,nextLocation:p}:B.has(p.pathname)&&($={currentLocation:p,nextLocation:v.location})}else if(K){let Y=B.get(v.location.pathname);Y?Y.add(p.pathname):(Y=new Set([p.pathname]),B.set(v.location.pathname,Y)),$={currentLocation:v.location,nextLocation:p}}me(re({},E,{actionData:I,loaderData:k,historyAction:O,location:p,initialized:!0,navigation:br,revalidation:"idle",restoreScrollPosition:vn(p,E.matches||v.matches),preventScrollReset:H,blockers:P}),{viewTransitionOpts:$,flushSync:F===!0}),O=le.Pop,j=!1,K=!1,G=!1,ge=!1,ue=[]}async function ln(p,E){if(typeof p=="number"){t.history.go(p);return}let C=Vr(v.location,v.matches,l,u.v7_prependBasename,p,u.v7_relativeSplatPath,E?.fromRouteId,E?.relative),{path:x,submission:L,error:F}=Xn(u.v7_normalizeFormMethod,!1,C,E),V=v.location,I=Dt(v.location,x,E&&E.state);I=re({},I,t.history.encodeLocation(I));let k=E&&E.replace!=null?E.replace:void 0,P=le.Push;k===!0?P=le.Replace:k===!1||L!=null&&Re(L.formMethod)&&L.formAction===v.location.pathname+v.location.search&&(P=le.Replace);let H=E&&"preventScrollReset"in E?E.preventScrollReset===!0:void 0,$=(E&&E.flushSync)===!0,Y=mn({currentLocation:V,nextLocation:I,historyAction:P});if(Y){Mt(Y,{state:"blocked",location:I,proceed(){Mt(Y,{state:"proceeding",proceed:void 0,reset:void 0,location:I}),ln(p,E)},reset(){let fe=new Map(v.blockers);fe.set(Y,yt),me({blockers:fe})}});return}return await Xe(P,I,{submission:L,pendingError:F,preventScrollReset:H,replace:E&&E.replace,enableViewTransition:E&&E.viewTransition,flushSync:$})}function ii(){if(hr(),me({revalidation:"loading"}),v.navigation.state!=="submitting"){if(v.navigation.state==="idle"){Xe(v.historyAction,v.location,{startUninterruptedRevalidation:!0});return}Xe(O||v.historyAction,v.navigation.location,{overrideNavigation:v.navigation,enableViewTransition:K===!0})}}async function Xe(p,E,C){M&&M.abort(),M=null,O=p,G=(C&&C.startUninterruptedRevalidation)===!0,mi(v.location,v.matches),j=(C&&C.preventScrollReset)===!0,K=(C&&C.enableViewTransition)===!0;let x=s||i,L=C&&C.overrideNavigation,F=C!=null&&C.initialHydration&&v.matches&&v.matches.length>0&&!A?v.matches:He(x,E,l),V=(C&&C.flushSync)===!0;if(F&&v.initialized&&!ge&&Nu(v.location,E)&&!(C&&C.submission&&Re(C.submission.formMethod))){tt(E,{matches:F},{flushSync:V});return}let I=Ht(F,x,E.pathname);if(I.active&&I.matches&&(F=I.matches),!F){let{error:te,notFoundMatches:q,route:ne}=pr(E.pathname);tt(E,{matches:q,loaderData:{},errors:{[ne.id]:te}},{flushSync:V});return}M=new AbortController;let k=it(t.history,E,M.signal,C&&C.submission),P;if(C&&C.pendingError)P=[Qe(F).route.id,{type:Z.error,error:C.pendingError}];else if(C&&C.submission&&Re(C.submission.formMethod)){let te=await si(k,E,C.submission,F,I.active,{replace:C.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){M=null,tt(E,{matches:te.matches,loaderData:{},errors:{[q]:ne.error}});return}}F=te.matches||F,P=te.pendingActionResult,L=xr(E,C.submission),V=!1,I.active=!1,k=it(t.history,k.url,k.signal)}let{shortCircuited:H,matches:$,loaderData:Y,errors:fe}=await li(k,E,F,I.active,L,C&&C.submission,C&&C.fetcherSubmission,C&&C.replace,C&&C.initialHydration===!0,V,P);H||(M=null,tt(E,re({matches:$||F},ao(P),{loaderData:Y,errors:fe})))}async function si(p,E,C,x,L,F){F===void 0&&(F={}),hr();let V=Du(E,C);if(me({navigation:V},{flushSync:F.flushSync===!0}),L){let P=await jt(x,E.pathname,p.signal);if(P.type==="aborted")return{shortCircuited:!0};if(P.type==="error"){let H=Qe(P.partialMatches).route.id;return{matches:P.partialMatches,pendingActionResult:[H,{type:Z.error,error:P.error}]}}else if(P.matches)x=P.matches;else{let{notFoundMatches:H,error:$,route:Y}=pr(E.pathname);return{matches:H,pendingActionResult:[Y.id,{type:Z.error,error:$}]}}}let I,k=St(x,E);if(!k.route.action&&!k.route.lazy)I={type:Z.error,error:Ee(405,{method:p.method,pathname:E.pathname,routeId:k.route.id})};else if(I=(await pt("action",v,p,[k],x,null))[k.route.id],p.signal.aborted)return{shortCircuited:!0};if(et(I)){let P;return F&&F.replace!=null?P=F.replace:P=to(I.response.headers.get("Location"),new URL(p.url),l)===v.location.pathname+v.location.search,await qe(p,I,!0,{submission:C,replace:P}),{shortCircuited:!0}}if(Be(I))throw Ee(400,{type:"defer-action"});if(ve(I)){let P=Qe(x,k.route.id);return(F&&F.replace)!==!0&&(O=le.Push),{matches:x,pendingActionResult:[P.route.id,I]}}return{matches:x,pendingActionResult:[k.route.id,I]}}async function li(p,E,C,x,L,F,V,I,k,P,H){let $=L||xr(E,F),Y=F||V||lo($),fe=!G&&(!u.v7_partialHydration||!k);if(x){if(fe){let oe=cn(H);me(re({navigation:$},oe!==void 0?{actionData:oe}:{}),{flushSync:P})}let J=await jt(C,E.pathname,p.signal);if(J.type==="aborted")return{shortCircuited:!0};if(J.type==="error"){let oe=Qe(J.partialMatches).route.id;return{matches:J.partialMatches,loaderData:{},errors:{[oe]:J.error}}}else if(J.matches)C=J.matches;else{let{error:oe,notFoundMatches:nt,route:Et}=pr(E.pathname);return{matches:nt,loaderData:{},errors:{[Et.id]:oe}}}}let te=s||i,[q,ne]=Zn(t.history,v,C,Y,E,u.v7_partialHydration&&k===!0,u.v7_skipActionErrorRevalidation,ge,ue,X,Se,ye,de,te,l,H);if(gr(J=>!(C&&C.some(oe=>oe.route.id===J))||q&&q.some(oe=>oe.route.id===J)),Ae=++Oe,q.length===0&&ne.length===0){let J=hn();return tt(E,re({matches:C,loaderData:{},errors:H&&ve(H[1])?{[H[0]]:H[1].error}:null},ao(H),J?{fetchers:new Map(v.fetchers)}:{}),{flushSync:P}),{shortCircuited:!0}}if(fe){let J={};if(!x){J.navigation=$;let oe=cn(H);oe!==void 0&&(J.actionData=oe)}ne.length>0&&(J.fetchers=ci(ne)),me(J,{flushSync:P})}ne.forEach(J=>{ke(J.key),J.controller&&ee.set(J.key,J.controller)});let rt=()=>ne.forEach(J=>ke(J.key));M&&M.signal.addEventListener("abort",rt);let{loaderResults:gt,fetcherResults:Le}=await un(v,C,q,ne,p);if(p.signal.aborted)return{shortCircuited:!0};M&&M.signal.removeEventListener("abort",rt),ne.forEach(J=>ee.delete(J.key));let be=zt(gt);if(be)return await qe(p,be.result,!0,{replace:I}),{shortCircuited:!0};if(be=zt(Le),be)return de.add(be.key),await qe(p,be.result,!0,{replace:I}),{shortCircuited:!0};let{loaderData:mr,errors:mt}=no(v,C,gt,H,ne,Le,Ge);Ge.forEach((J,oe)=>{J.subscribe(nt=>{(nt||J.done)&&Ge.delete(oe)})}),u.v7_partialHydration&&k&&v.errors&&(mt=re({},v.errors,mt));let Ze=hn(),Ft=pn(Ae),Bt=Ze||Ft||ne.length>0;return re({matches:C,loaderData:mr,errors:mt},Bt?{fetchers:new Map(v.fetchers)}:{})}function cn(p){if(p&&!ve(p[1]))return{[p[0]]:p[1].data};if(v.actionData)return Object.keys(v.actionData).length===0?null:v.actionData}function ci(p){return p.forEach(E=>{let C=v.fetchers.get(E.key),x=_t(void 0,C?C.data:void 0);v.fetchers.set(E.key,x)}),new Map(v.fetchers)}function ui(p,E,C,x){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.");ke(p);let L=(x&&x.flushSync)===!0,F=s||i,V=Vr(v.location,v.matches,l,u.v7_prependBasename,C,u.v7_relativeSplatPath,E,x?.relative),I=He(F,V,l),k=Ht(I,F,V);if(k.active&&k.matches&&(I=k.matches),!I){De(p,E,Ee(404,{pathname:V}),{flushSync:L});return}let{path:P,submission:H,error:$}=Xn(u.v7_normalizeFormMethod,!0,V,x);if($){De(p,E,$,{flushSync:L});return}let Y=St(I,P),fe=(x&&x.preventScrollReset)===!0;if(H&&Re(H.formMethod)){di(p,E,P,Y,I,k.active,L,fe,H);return}ye.set(p,{routeId:E,path:P}),fi(p,E,P,Y,I,k.active,L,fe,H)}async function di(p,E,C,x,L,F,V,I,k){hr(),ye.delete(p);function P(se){if(!se.route.action&&!se.route.lazy){let ot=Ee(405,{method:k.formMethod,pathname:C,routeId:E});return De(p,E,ot,{flushSync:V}),!0}return!1}if(!F&&P(x))return;let H=v.fetchers.get(p);Ie(p,Lu(k,H),{flushSync:V});let $=new AbortController,Y=it(t.history,C,$.signal,k);if(F){let se=await jt(L,new URL(Y.url).pathname,Y.signal,p);if(se.type==="aborted")return;if(se.type==="error"){De(p,E,se.error,{flushSync:V});return}else if(se.matches){if(L=se.matches,x=St(L,C),P(x))return}else{De(p,E,Ee(404,{pathname:C}),{flushSync:V});return}}ee.set(p,$);let fe=Oe,q=(await pt("action",v,Y,[x],L,p))[x.route.id];if(Y.signal.aborted){ee.get(p)===$&&ee.delete(p);return}if(u.v7_fetcherPersist&&Se.has(p)){if(et(q)||ve(q)){Ie(p,Me(void 0));return}}else{if(et(q))if(ee.delete(p),Ae>fe){Ie(p,Me(void 0));return}else return de.add(p),Ie(p,_t(k)),qe(Y,q,!1,{fetcherSubmission:k,preventScrollReset:I});if(ve(q)){De(p,E,q.error);return}}if(Be(q))throw Ee(400,{type:"defer-action"});let ne=v.navigation.location||v.location,rt=it(t.history,ne,$.signal),gt=s||i,Le=v.navigation.state!=="idle"?He(gt,v.navigation.location,l):v.matches;z(Le,"Didn't find any matches after fetcher action");let be=++Oe;ie.set(p,be);let mr=_t(k,q.data);v.fetchers.set(p,mr);let[mt,Ze]=Zn(t.history,v,Le,k,ne,!1,u.v7_skipActionErrorRevalidation,ge,ue,X,Se,ye,de,gt,l,[x.route.id,q]);Ze.filter(se=>se.key!==p).forEach(se=>{let ot=se.key,yn=v.fetchers.get(ot),yi=_t(void 0,yn?yn.data:void 0);v.fetchers.set(ot,yi),ke(ot),se.controller&&ee.set(ot,se.controller)}),me({fetchers:new Map(v.fetchers)});let Ft=()=>Ze.forEach(se=>ke(se.key));$.signal.addEventListener("abort",Ft);let{loaderResults:Bt,fetcherResults:J}=await un(v,Le,mt,Ze,rt);if($.signal.aborted)return;$.signal.removeEventListener("abort",Ft),ie.delete(p),ee.delete(p),Ze.forEach(se=>ee.delete(se.key));let oe=zt(Bt);if(oe)return qe(rt,oe.result,!1,{preventScrollReset:I});if(oe=zt(J),oe)return de.add(oe.key),qe(rt,oe.result,!1,{preventScrollReset:I});let{loaderData:nt,errors:Et}=no(v,Le,Bt,void 0,Ze,J,Ge);if(v.fetchers.has(p)){let se=Me(q.data);v.fetchers.set(p,se)}pn(be),v.navigation.state==="loading"&&be>Ae?(z(O,"Expected pending action"),M&&M.abort(),tt(v.navigation.location,{matches:Le,loaderData:nt,errors:Et,fetchers:new Map(v.fetchers)})):(me({errors:Et,loaderData:oo(v.loaderData,nt,Le,Et),fetchers:new Map(v.fetchers)}),ge=!1)}async function fi(p,E,C,x,L,F,V,I,k){let P=v.fetchers.get(p);Ie(p,_t(k,P?P.data:void 0),{flushSync:V});let H=new AbortController,$=it(t.history,C,H.signal);if(F){let q=await jt(L,new URL($.url).pathname,$.signal,p);if(q.type==="aborted")return;if(q.type==="error"){De(p,E,q.error,{flushSync:V});return}else if(q.matches)L=q.matches,x=St(L,C);else{De(p,E,Ee(404,{pathname:C}),{flushSync:V});return}}ee.set(p,H);let Y=Oe,te=(await pt("loader",v,$,[x],L,p))[x.route.id];if(Be(te)&&(te=await tn(te,$.signal,!0)||te),ee.get(p)===H&&ee.delete(p),!$.signal.aborted){if(Se.has(p)){Ie(p,Me(void 0));return}if(et(te))if(Ae>Y){Ie(p,Me(void 0));return}else{de.add(p),await qe($,te,!1,{preventScrollReset:I});return}if(ve(te)){De(p,E,te.error);return}z(!Be(te),"Unhandled fetcher deferred data"),Ie(p,Me(te.data))}}async function qe(p,E,C,x){let{submission:L,fetcherSubmission:F,preventScrollReset:V,replace:I}=x===void 0?{}:x;E.response.headers.has("X-Remix-Revalidate")&&(ge=!0);let k=E.response.headers.get("Location");z(k,"Expected a Location header on the redirect Response"),k=to(k,new URL(p.url),l);let P=Dt(v.location,k,{_isRedirect:!0});if(r){let q=!1;if(E.response.headers.has("X-Remix-Reload-Document"))q=!0;else if(en.test(k)){const ne=t.history.createURL(k);q=ne.origin!==e.location.origin||Tt(ne.pathname,l)==null}if(q){I?e.location.replace(k):e.location.assign(k);return}}M=null;let H=I===!0||E.response.headers.has("X-Remix-Replace")?le.Replace:le.Push,{formMethod:$,formAction:Y,formEncType:fe}=v.navigation;!L&&!F&&$&&Y&&fe&&(L=lo(v.navigation));let te=L||F;if(cu.has(E.response.status)&&te&&Re(te.formMethod))await Xe(H,P,{submission:re({},te,{formAction:k}),preventScrollReset:V||j,enableViewTransition:C?K:void 0});else{let q=xr(P,L);await Xe(H,P,{overrideNavigation:q,fetcherSubmission:F,preventScrollReset:V||j,enableViewTransition:C?K:void 0})}}async function pt(p,E,C,x,L,F){let V,I={};try{V=await Eu(c,p,E,C,x,L,F,a,o)}catch(k){return x.forEach(P=>{I[P.route.id]={type:Z.error,error:k}}),I}for(let[k,P]of Object.entries(V))if(Su(P)){let H=P.result;I[k]={type:Z.redirect,response:_u(H,C,k,L,l,u.v7_relativeSplatPath)}}else I[k]=await yu(P);return I}async function un(p,E,C,x,L){let F=p.matches,V=pt("loader",p,L,C,E,null),I=Promise.all(x.map(async H=>{if(H.matches&&H.match&&H.controller){let Y=(await pt("loader",p,it(t.history,H.path,H.controller.signal),[H.match],H.matches,H.key))[H.match.route.id];return{[H.key]:Y}}else return Promise.resolve({[H.key]:{type:Z.error,error:Ee(404,{pathname:H.path})}})})),k=await V,P=(await I).reduce((H,$)=>Object.assign(H,$),{});return await Promise.all([xu(E,k,L.signal,F,p.loaderData),Ou(E,P,x)]),{loaderResults:k,fetcherResults:P}}function hr(){ge=!0,ue.push(...gr()),ye.forEach((p,E)=>{ee.has(E)&&X.add(E),ke(E)})}function Ie(p,E,C){C===void 0&&(C={}),v.fetchers.set(p,E),me({fetchers:new Map(v.fetchers)},{flushSync:(C&&C.flushSync)===!0})}function De(p,E,C,x){x===void 0&&(x={});let L=Qe(v.matches,E);kt(p),me({errors:{[L.route.id]:C},fetchers:new Map(v.fetchers)},{flushSync:(x&&x.flushSync)===!0})}function dn(p){return Te.set(p,(Te.get(p)||0)+1),Se.has(p)&&Se.delete(p),v.fetchers.get(p)||uu}function kt(p){let E=v.fetchers.get(p);ee.has(p)&&!(E&&E.state==="loading"&&ie.has(p))&&ke(p),ye.delete(p),ie.delete(p),de.delete(p),u.v7_fetcherPersist&&Se.delete(p),X.delete(p),v.fetchers.delete(p)}function hi(p){let E=(Te.get(p)||0)-1;E<=0?(Te.delete(p),Se.add(p),u.v7_fetcherPersist||kt(p)):Te.set(p,E),me({fetchers:new Map(v.fetchers)})}function ke(p){let E=ee.get(p);E&&(E.abort(),ee.delete(p))}function fn(p){for(let E of p){let C=dn(E),x=Me(C.data);v.fetchers.set(E,x)}}function hn(){let p=[],E=!1;for(let C of de){let x=v.fetchers.get(C);z(x,"Expected fetcher: "+C),x.state==="loading"&&(de.delete(C),p.push(C),E=!0)}return fn(p),E}function pn(p){let E=[];for(let[C,x]of ie)if(x<p){let L=v.fetchers.get(C);z(L,"Expected fetcher: "+C),L.state==="loading"&&(ke(C),ie.delete(C),E.push(C))}return fn(E),E.length>0}function pi(p,E){let C=v.blockers.get(p)||yt;return Je.get(p)!==E&&Je.set(p,E),C}function gn(p){v.blockers.delete(p),Je.delete(p)}function Mt(p,E){let C=v.blockers.get(p)||yt;z(C.state==="unblocked"&&E.state==="blocked"||C.state==="blocked"&&E.state==="blocked"||C.state==="blocked"&&E.state==="proceeding"||C.state==="blocked"&&E.state==="unblocked"||C.state==="proceeding"&&E.state==="unblocked","Invalid blocker state transition: "+C.state+" -> "+E.state);let x=new Map(v.blockers);x.set(p,E),me({blockers:x})}function mn(p){let{currentLocation:E,nextLocation:C,historyAction:x}=p;if(Je.size===0)return;Je.size>1&&ht(!1,"A router only supports one blocker at a time");let L=Array.from(Je.entries()),[F,V]=L[L.length-1],I=v.blockers.get(F);if(!(I&&I.state==="proceeding")&&V({currentLocation:E,nextLocation:C,historyAction:x}))return F}function pr(p){let E=Ee(404,{pathname:p}),C=s||i,{matches:x,route:L}=io(C);return gr(),{notFoundMatches:x,route:L,error:E}}function gr(p){let E=[];return Ge.forEach((C,x)=>{(!p||p(x))&&(C.cancel(),E.push(x),Ge.delete(x))}),E}function gi(p,E,C){if(m=p,S=E,_=C||null,!N&&v.navigation===br){N=!0;let x=vn(v.location,v.matches);x!=null&&me({restoreScrollPosition:x})}return()=>{m=null,S=null,_=null}}function En(p,E){return _&&_(p,E.map(x=>Vc(x,v.loaderData)))||p.key}function mi(p,E){if(m&&S){let C=En(p,E);m[C]=S()}}function vn(p,E){if(m){let C=En(p,E),x=m[C];if(typeof x=="number")return x}return null}function Ht(p,E,C){if(d)if(p){if(Object.keys(p[0].params).length>0)return{active:!0,matches:Gt(E,C,l,!0)}}else return{active:!0,matches:Gt(E,C,l,!0)||[]};return{active:!1,matches:null}}async function jt(p,E,C,x){if(!d)return{type:"success",matches:p};let L=p;for(;;){let F=s==null,V=s||i,I=a;try{await d({signal:C,path:E,matches:L,fetcherKey:x,patch:(H,$)=>{C.aborted||eo(H,$,V,I,o)}})}catch(H){return{type:"error",error:H,partialMatches:L}}finally{F&&!C.aborted&&(i=[...i])}if(C.aborted)return{type:"aborted"};let k=He(V,E,l);if(k)return{type:"success",matches:k};let P=Gt(V,E,l,!0);if(!P||L.length===P.length&&L.every((H,$)=>H.route.id===P[$].route.id))return{type:"success",matches:null};L=P}}function Ei(p){a={},s=tr(p,o,void 0,a)}function vi(p,E){let C=s==null;eo(p,E,s||i,a,o),C&&(i=[...i],me({}))}return T={get basename(){return l},get future(){return u},get state(){return v},get routes(){return i},get window(){return e},initialize:ni,subscribe:ai,enableScrollRestoration:gi,navigate:ln,fetch:ui,revalidate:ii,createHref:p=>t.history.createHref(p),encodeLocation:p=>t.history.encodeLocation(p),getFetcher:dn,deleteFetcher:hi,dispose:oi,getBlocker:pi,deleteBlocker:gn,patchRoutes:vi,_internalFetchControllers:ee,_internalActiveDeferreds:Ge,_internalSetRoutes:Ei},T}function hu(t){return t!=null&&("formData"in t&&t.formData!=null||"body"in t&&t.body!==void 0)}function Vr(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=Ea(o||".",ma(l,a),Tt(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=rn(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 m=h.toString();d.search=m?"?"+m:""}}return n&&r!=="/"&&(d.pathname=d.pathname==="/"?r:ze([r,d.pathname])),At(d)}function Xn(t,e,r,n){if(!n||!hu(n))return{path:r};if(n.formMethod&&!bu(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=Na(r);if(n.body!==void 0){if(n.formEncType==="text/plain"){if(!Re(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,m)=>{let[_,S]=m;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(!Re(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()}}}z(typeof FormData=="function","FormData is not available in this environment");let l,c;if(n.formData)l=$r(n.formData),c=n.formData;else if(n.body instanceof FormData)l=$r(n.body),c=n.body;else if(n.body instanceof URLSearchParams)l=n.body,c=ro(l);else if(n.body==null)l=new URLSearchParams,c=new FormData;else try{l=new URLSearchParams(n.body),c=ro(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(Re(d.formMethod))return{path:r,submission:d};let u=Ke(r);return e&&u.search&&rn(u.search)&&l.append("index",""),u.search="?"+l,{path:At(u),submission:d}}function qn(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,m,_){let S=_?ve(_[1])?_[1].error:_[1].data:void 0,N=t.createURL(e.location),R=t.createURL(o),A=r;a&&e.errors?A=qn(r,Object.keys(e.errors)[0],!0):_&&ve(_[1])&&(A=qn(r,_[0]));let b=_?_[1].statusCode:void 0,w=i&&b&&b>=400,T=A.filter((O,j)=>{let{route:M}=O;if(M.lazy)return!0;if(M.loader==null)return!1;if(a)return Ur(M,e.loaderData,e.errors);if(pu(e.loaderData,e.matches[j],O)||l.some(W=>W===O.route.id))return!0;let K=e.matches[j],B=O;return Qn(O,re({currentUrl:N,currentParams:K.params,nextUrl:R,nextParams:B.params},n,{actionResult:S,actionStatus:b,defaultShouldRevalidate:w?!1:s||N.pathname+N.search===R.pathname+R.search||N.search!==R.search||_a(K,B)}))}),v=[];return u.forEach((O,j)=>{if(a||!r.some(G=>G.route.id===O.routeId)||d.has(j))return;let M=He(f,O.path,m);if(!M){v.push({key:j,routeId:O.routeId,path:O.path,matches:null,match:null,controller:null});return}let K=e.fetchers.get(j),B=St(M,O.path),W=!1;h.has(j)?W=!1:c.has(j)?(c.delete(j),W=!0):K&&K.state!=="idle"&&K.data===void 0?W=s:W=Qn(B,re({currentUrl:N,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&&v.push({key:j,routeId:O.routeId,path:O.path,matches:M,match:B,controller:new AbortController})}),[T,v]}function Ur(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 pu(t,e,r){let n=!e||r.route.id!==e.route.id,o=t[r.route.id]===void 0;return n||o}function _a(t,e){let r=t.route.path;return t.pathname!==e.pathname||r!=null&&r.endsWith("*")&&t.params["*"]!==e.params["*"]}function Qn(t,e){if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate(e);if(typeof r=="boolean")return r}return e.defaultShouldRevalidate}function eo(t,e,r,n,o){var a;let i;if(t){let c=n[t];z(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=>Ca(c,d))),l=tr(s,o,[t||"_","patch",String(((a=i)==null?void 0:a.length)||"0")],n);i.push(...l)}function Ca(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=>Ca(r,a))}):!1}async function gu(t,e,r){if(!t.lazy)return;let n=await t.lazy();if(!t.lazy)return;let o=r[t.id];z(o,"No route found in manifest");let a={};for(let i in n){let l=o[i]!==void 0&&i!=="hasErrorBoundary";ht(!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&&!Fc.has(i)&&(a[i]=n[i])}Object.assign(o,a),Object.assign(o,re({},e(o),{lazy:void 0}))}async function mu(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 Eu(t,e,r,n,o,a,i,s,l,c){let d=a.map(f=>f.route.lazy?gu(f.route,l,s):void 0),u=a.map((f,m)=>{let _=d[m],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?vu(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 vu(t,e,r,n,o,a){let i,s,l=c=>{let d,u=new Promise((m,_)=>d=_);s=()=>d(),e.signal.addEventListener("abort",s);let h=m=>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},...m!==void 0?[m]:[]),f=(async()=>{try{return{type:"data",result:await(o?o(_=>h(_)):h())}}catch(m){return{type:"error",result:m}}})();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})}z(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 yu(t){let{result:e,type:r}=t;if(Sa(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 rr(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(so(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 rr(((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(Ru(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(so(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 _u(t,e,r,n,o,a){let i=t.headers.get("Location");if(z(i,"Redirects returned/thrown from loaders/actions must have a Location header"),!en.test(i)){let s=n.slice(0,n.findIndex(l=>l.route.id===r)+1);i=Vr(new URL(e.url),s,o,!0,i,a),t.headers.set("Location",i)}return t}function to(t,e,r){if(en.test(t)){let n=t,o=n.startsWith("//")?new URL(e.protocol+n):new URL(n),a=Tt(o.pathname,r)!=null;if(o.origin===e.origin&&a)return o.pathname+o.search+o.hash}return t}function it(t,e,r,n){let o=t.createURL(Na(e)).toString(),a={signal:r};if(n&&Re(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=$r(n.formData):a.body=n.formData}return new Request(o,a)}function $r(t){let e=new URLSearchParams;for(let[r,n]of t.entries())e.append(r,typeof n=="string"?n:n.name);return e}function ro(t){let e=new FormData;for(let[r,n]of t.entries())e.append(r,n);return e}function Cu(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(z(!et(f),"Cannot handle redirect results in processLoaderData"),ve(f)){let m=f.error;d!==void 0&&(m=d,d=void 0),i=i||{};{let _=Qe(t,h);i[_.route.id]==null&&(i[_.route.id]=m)}a[h]=void 0,l||(l=!0,s=Lt(f.error)?f.error.status:500),f.headers&&(c[h]=f.headers)}else Be(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 no(t,e,r,n,o,a,i){let{loaderData:s,errors:l}=Cu(e,r,n,i);return o.forEach(c=>{let{key:d,match:u,controller:h}=c,f=a[d];if(z(f,"Did not find corresponding fetcher result"),!(h&&h.signal.aborted))if(ve(f)){let m=Qe(t.matches,u?.route.id);l&&l[m.route.id]||(l=re({},l,{[m.route.id]:f.error})),t.fetchers.delete(d)}else if(et(f))z(!1,"Unhandled fetcher revalidation redirect");else if(Be(f))z(!1,"Unhandled fetcher deferred data");else{let m=Me(f.data);t.fetchers.set(d,m)}}),{loaderData:s,errors:l}}function oo(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 ao(t){return t?ve(t[1])?{actionData:{}}:{actionData:{[t[0]]:t[1].data}}:{}}function Qe(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 io(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 rr(t||500,s,new Error(l),!0)}function zt(t){let e=Object.entries(t);for(let r=e.length-1;r>=0;r--){let[n,o]=e[r];if(et(o))return{key:n,result:o}}}function Na(t){let e=typeof t=="string"?Ke(t):t;return At(re({},e,{hash:""}))}function Nu(t,e){return t.pathname!==e.pathname||t.search!==e.search?!1:t.hash===""?e.hash!=="":t.hash===e.hash?!0:e.hash!==""}function Su(t){return Sa(t.result)&&lu.has(t.result.status)}function Be(t){return t.type===Z.deferred}function ve(t){return t.type===Z.error}function et(t){return(t&&t.type)===Z.redirect}function so(t){return typeof t=="object"&&t!=null&&"type"in t&&"data"in t&&"init"in t&&t.type==="DataWithResponseInit"}function Ru(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 Sa(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.headers=="object"&&typeof t.body<"u"}function bu(t){return su.has(t.toLowerCase())}function Re(t){return au.has(t.toLowerCase())}async function xu(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&&!_a(d,c)&&(o&&o[c.route.id])!==void 0;Be(l)&&u&&await tn(l,r,!1).then(h=>{h&&(e[s]=h)})}}async function Ou(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)&&Be(s)&&(z(i,"Expected an AbortController for revalidating fetcher deferred result"),await tn(s,i.signal,!0).then(c=>{c&&(e[o]=c)}))}}async function tn(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 rn(t){return new URLSearchParams(t).getAll("index").some(e=>e==="")}function St(t,e){let r=typeof e=="string"?Ke(e).search:e.search;if(t[t.length-1].route.index&&rn(r||""))return t[t.length-1];let n=ga(t);return n[n.length-1]}function lo(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 xr(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 Du(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 Me(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 wu(t,e){try{let r=t.sessionStorage.getItem(ya);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 Pu(t,e){if(e.size>0){let r={};for(let[n,o]of e)r[n]=[...o];try{t.sessionStorage.setItem(ya,JSON.stringify(r))}catch(n){ht(!1,"Failed to save applied view transitions in sessionStorage ("+n+").")}}}function nr(){return nr=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},nr.apply(this,arguments)}const sr=g.createContext(null),Ra=g.createContext(null),lr=g.createContext(null),cr=g.createContext(null),We=g.createContext({outlet:null,matches:[],isDataRoute:!1}),ba=g.createContext(null);function ur(){return g.useContext(cr)!=null}function dr(){return ur()||z(!1),g.useContext(cr).location}function Au(){return g.useContext(cr).navigationType}function xa(t){g.useContext(lr).static||g.useLayoutEffect(t)}function Tu(){let{isDataRoute:t}=g.useContext(We);return t?Gu():Iu()}function Iu(){ur()||z(!1);let t=g.useContext(sr),{basename:e,future:r,navigator:n}=g.useContext(lr),{matches:o}=g.useContext(We),{pathname:a}=dr(),i=JSON.stringify(ma(o,r.v7_relativeSplatPath)),s=g.useRef(!1);return xa(()=>{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=Ea(c,JSON.parse(i),a,d.relative==="path");t==null&&e!=="/"&&(u.pathname=u.pathname==="/"?e:ze([e,u.pathname])),(d.replace?n.replace:n.push)(u,d.state,d)},[e,n,i,a,t])}const ku=g.createContext(null);function Mu(t){let e=g.useContext(We).outlet;return e&&g.createElement(ku.Provider,{value:t},e)}function Hu(){let{matches:t}=g.useContext(We),e=t[t.length-1];return e?e.params:{}}function ju(t,e,r,n){ur()||z(!1);let{navigator:o}=g.useContext(lr),{matches:a}=g.useContext(We),i=a[a.length-1],s=i?i.params:{};i&&i.pathname;let l=i?i.pathnameBase:"/";i&&i.route;let c=dr(),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 $u(f&&f.map(_=>Object.assign({},_,{params:Object.assign({},s,_.params),pathname:ze([l,o.encodeLocation?o.encodeLocation(_.pathname).pathname:_.pathname]),pathnameBase:_.pathnameBase==="/"?l:ze([l,o.encodeLocation?o.encodeLocation(_.pathnameBase).pathname:_.pathnameBase])})),a,r,n)}function Fu(){let t=Yu(),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 Bu=g.createElement(Fu,null);class Vu 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(We.Provider,{value:this.props.routeContext},g.createElement(ba.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Uu(t){let{routeContext:e,match:r,children:n}=t,o=g.useContext(sr);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),g.createElement(We.Provider,{value:e},n)}function $u(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||z(!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,m=u.route.loader&&h[u.route.id]===void 0&&(!f||f[u.route.id]===void 0);if(u.route.lazy||m){l=!0,c>=0?i=i.slice(0,c+1):i=[i[0]];break}}}return i.reduceRight((d,u,h)=>{let f,m=!1,_=null,S=null;r&&(f=s&&u.route.id?s[u.route.id]:void 0,_=u.route.errorElement||Bu,l&&(c<0&&h===0?(Ju("route-fallback"),m=!0,S=null):c===h&&(m=!0,S=u.route.hydrateFallbackElement||null)));let N=e.concat(i.slice(0,h+1)),R=()=>{let A;return f?A=_:m?A=S:u.route.Component?A=g.createElement(u.route.Component,null):u.route.element?A=u.route.element:A=d,g.createElement(Uu,{match:u,routeContext:{outlet:d,matches:N,isDataRoute:r!=null},children:A})};return r&&(u.route.ErrorBoundary||u.route.errorElement||h===0)?g.createElement(Vu,{location:r.location,revalidation:r.revalidation,component:_,error:f,children:R(),routeContext:{outlet:null,matches:N,isDataRoute:!0}}):R()},null)}var Oa=(function(t){return t.UseBlocker="useBlocker",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t})(Oa||{}),Da=(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})(Da||{});function zu(t){let e=g.useContext(sr);return e||z(!1),e}function Ku(t){let e=g.useContext(Ra);return e||z(!1),e}function Wu(t){let e=g.useContext(We);return e||z(!1),e}function La(t){let e=Wu(),r=e.matches[e.matches.length-1];return r.route.id||z(!1),r.route.id}function Yu(){var t;let e=g.useContext(ba),r=Ku(Da.UseRouteError),n=La();return e!==void 0?e:(t=r.errors)==null?void 0:t[n]}function Gu(){let{router:t}=zu(Oa.UseNavigateStable),e=La(),r=g.useRef(!1);return xa(()=>{r.current=!0}),g.useCallback(function(o,a){a===void 0&&(a={}),r.current&&(typeof o=="number"?t.navigate(o):t.navigate(o,nr({fromRouteId:e},a)))},[t,e])}const co={};function Ju(t,e,r){co[t]||(co[t]=!0)}function Xu(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 qu(t){return Mu(t.context)}function Zu(t){z(!1)}function Qu(t){let{basename:e="/",children:r=null,location:n,navigationType:o=le.Pop,navigator:a,static:i=!1,future:s}=t;ur()&&z(!1);let l=e.replace(/^\/*/,"/"),c=g.useMemo(()=>({basename:l,navigator:a,static:i,future:nr({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:m="default"}=n,_=g.useMemo(()=>{let S=Tt(d,l);return S==null?null:{location:{pathname:S,search:u,hash:h,state:f,key:m},navigationType:o}},[l,d,u,h,f,m,o]);return _==null?null:g.createElement(lr.Provider,{value:c},g.createElement(cr.Provider,{children:r,value:_}))}new Promise(()=>{});function zr(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,zr(n.props.children,a));return}n.type!==Zu&&z(!1),!n.props.index||!n.props.children||z(!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=zr(n.props.children,a)),r.push(i)}),r}function ed(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 or(){return or=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},or.apply(this,arguments)}const td="6";try{window.__reactRouterVersion=td}catch{}function rd(t,e){return fu({basename:e?.basename,future:or({},e?.future,{v7_prependBasename:!0}),history:Mc({window:e?.window}),hydrationData:e?.hydrationData||nd(),routes:t,mapRouteProperties:ed,dataStrategy:e?.dataStrategy,patchRoutesOnNavigation:e?.patchRoutesOnNavigation,window:e?.window}).initialize()}function nd(){var t;let e=(t=window)==null?void 0:t.__staticRouterHydrationData;return e&&e.errors&&(e=or({},e,{errors:od(e.errors)})),e}function od(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 rr(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 ad=g.createContext({isTransitioning:!1}),id=g.createContext(new Map),sd="startTransition",uo=bi[sd],ld="flushSync",fo=Ni[ld];function cd(t){uo?uo(t):t()}function Ct(t){fo?fo(t):t()}class ud{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 dd(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(),[m,_]=g.useState(),S=g.useRef(new Map),{v7_startTransition:N}=n||{},R=g.useCallback(O=>{N?cd(O):O()},[N]),A=g.useCallback((O,j)=>{let{deletedFetchers:M,flushSync:K,viewTransitionOpts:B}=j;O.fetchers.forEach((G,ge)=>{G.data!==void 0&&S.current.set(ge,G.data)}),M.forEach(G=>S.current.delete(G));let W=r.window==null||r.window.document==null||typeof r.window.document.startViewTransition!="function";if(!B||W){K?Ct(()=>a(O)):R(()=>a(O));return}if(K){Ct(()=>{h&&(d&&d.resolve(),h.skipTransition()),c({isTransitioning:!0,flushSync:!0,currentLocation:B.currentLocation,nextLocation:B.nextLocation})});let G=r.window.document.startViewTransition(()=>{Ct(()=>a(O))});G.finished.finally(()=>{Ct(()=>{u(void 0),f(void 0),s(void 0),c({isTransitioning:!1})})}),Ct(()=>f(G));return}h?(d&&d.resolve(),h.skipTransition(),_({state:O,currentLocation:B.currentLocation,nextLocation:B.nextLocation})):(s(O),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 ud)},[l]),g.useEffect(()=>{if(d&&i&&r.window){let O=i,j=d.promise,M=r.window.document.startViewTransition(async()=>{R(()=>a(O)),await j});M.finished.finally(()=>{u(void 0),f(void 0),s(void 0),c({isTransitioning:!1})}),f(M)}},[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&&m&&(s(m.state),c({isTransitioning:!0,flushSync:!1,currentLocation:m.currentLocation,nextLocation:m.nextLocation}),_(void 0))},[l.isTransitioning,m]),g.useEffect(()=>{},[]);let b=g.useMemo(()=>({createHref:r.createHref,encodeLocation:r.encodeLocation,go:O=>r.navigate(O),push:(O,j,M)=>r.navigate(O,{state:j,preventScrollReset:M?.preventScrollReset}),replace:(O,j,M)=>r.navigate(O,{replace:!0,state:j,preventScrollReset:M?.preventScrollReset})}),[r]),w=r.basename||"/",T=g.useMemo(()=>({router:r,navigator:b,static:!1,basename:w}),[r,b,w]),v=g.useMemo(()=>({v7_relativeSplatPath:r.future.v7_relativeSplatPath}),[r.future.v7_relativeSplatPath]);return g.useEffect(()=>Xu(n,r.future),[n,r.future]),g.createElement(g.Fragment,null,g.createElement(sr.Provider,{value:T},g.createElement(Ra.Provider,{value:o},g.createElement(id.Provider,{value:S.current},g.createElement(ad.Provider,{value:l},g.createElement(Qu,{basename:w,location:o.location,navigationType:o.historyAction,navigator:b,future:v},o.initialized||r.future.v7_partialHydration?g.createElement(fd,{routes:r.routes,future:r.future,state:o}):e))))),null)}const fd=g.memo(hd);function hd(t){let{routes:e,future:r,state:n}=t;return ju(e,void 0,n,r)}var ho;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher",t.useViewTransitionState="useViewTransitionState"})(ho||(ho={}));var po;(function(t){t.UseFetcher="useFetcher",t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(po||(po={}));const go=Gr(["sentry"]);let nn=!1;async function wa(){return await he(()=>import("./sentry_react-cODD7zWc.js").then(t=>t.i),__vite__mapDeps([0,1,2]))}async function pd(){const t=await wa(),e=[t.httpClientIntegration(),t.extraErrorDataIntegration({depth:5}),t.replayIntegration(),t.captureConsoleIntegration({levels:["error"]})];ce.sentry.tracing&&e.push(t.reactRouterV6BrowserTracingIntegration({useEffect:Mo.useEffect,useLocation:dr,useNavigationType:Au,createRoutesFromChildren:zr,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}}),nn=!0}async function gd(){return nn?(await wa()).getClient()?.close():void 0}function md(){const[t]=qr(),{analytics:e}=t;g.useEffect(()=>{if(!e){gd().catch(r=>go.error("@error",r));return}nn||!ce.sentry.dsn||ce.sentry.dsn===""||pd().catch(r=>go.error("@error",r))},[e])}function Kr(){return Kr=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},Kr.apply(null,arguments)}var Pa=["shift","alt","meta","mod","ctrl"],Ed={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 Ve(t){return(t&&Ed[t]||t||"").trim().toLowerCase().replace(/key|digit|numpad|arrow/,"")}function vd(t){return Pa.includes(t)}function Or(t,e){return e===void 0&&(e=","),t.split(e)}function Dr(t,e,r){e===void 0&&(e="+");var n=t.toLocaleLowerCase().split(e).map(function(i){return Ve(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!Pa.includes(i)});return Kr({},o,{keys:a,description:r,hotkey:t})}(function(){typeof document<"u"&&(document.addEventListener("keydown",function(t){t.key!==void 0&&Aa([Ve(t.key),Ve(t.code)])}),document.addEventListener("keyup",function(t){t.key!==void 0&&Ta([Ve(t.key),Ve(t.code)])})),typeof window<"u"&&window.addEventListener("blur",function(){Ue.clear()})})();var Ue=new Set;function on(t){return Array.isArray(t)}function yd(t,e){e===void 0&&(e=",");var r=on(t)?t:t.split(e);return r.every(function(n){return Ue.has(n.trim().toLowerCase())})}function Aa(t){var e=Array.isArray(t)?t:[t];Ue.has("meta")&&Ue.forEach(function(r){return!vd(r)&&Ue.delete(r.toLowerCase())}),e.forEach(function(r){return Ue.add(r.toLowerCase())})}function Ta(t){var e=Array.isArray(t)?t:[t];t==="meta"?Ue.clear():e.forEach(function(r){return Ue.delete(r.toLowerCase())})}function _d(t,e,r){(typeof r=="function"&&r(t,e)||r===!0)&&t.preventDefault()}function Cd(t,e,r){return typeof r=="function"?r(t,e):r===!0||r===void 0}function Nd(t){return Ia(t,["input","textarea","select"])}function Ia(t,e){e===void 0&&(e=!1);var r=t.target,n=t.composed,o=null;return Sd(r)&&n?o=t.composedPath()[0]&&t.composedPath()[0].tagName:o=r&&r.tagName,on(e)?!!(o&&e&&e.some(function(a){var i;return a.toLowerCase()===((i=o)==null?void 0:i.toLowerCase())})):!!(o&&e&&e)}function Sd(t){return!!t.tagName&&!t.tagName.startsWith("-")&&t.tagName.includes("-")}function Rd(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 bd=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,m=e.shiftKey,_=e.altKey,S=Ve(u),N=d.toLowerCase();if(!(c!=null&&c.includes(S))&&!(c!=null&&c.includes(N))&&!["ctrl","control","unknown","meta","alt","shift","os"].includes(S))return!1;if(!n){if(o===!_&&N!=="alt"||s===!m&&N!=="shift")return!1;if(i){if(!f&&!h)return!1}else if(a===!f&&N!=="meta"&&N!=="os"||l===!h&&N!=="ctrl"&&N!=="control")return!1}return c&&c.length===1&&(c.includes(N)||c.includes(S))?!0:c?yd(c):!c},xd=g.createContext(void 0),Od=function(){return g.useContext(xd)};function ka(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&&ka(t[n],e[n])},!0):t===e}var Dd=g.createContext({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),Ld=function(){return g.useContext(Dd)};function wd(t){var e=g.useRef(void 0);return ka(e.current,t)||(e.current=t),e.current}var mo=function(e){e.stopPropagation(),e.preventDefault(),e.stopImmediatePropagation()},Pd=typeof window<"u"?g.useLayoutEffect:g.useEffect;function Eo(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=on(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=wd(l),m=Ld(),_=m.enabledScopes,S=Od();return Pd(function(){if(!(f?.enabled===!1||!Rd(_,f?.scopes))){var N=function(T,v){var O;if(v===void 0&&(v=!1),!(Nd(T)&&!Ia(T,f?.enableOnFormTags))){if(a!==null){var j=a.getRootNode();if((j instanceof Document||j instanceof ShadowRoot)&&j.activeElement!==a&&!a.contains(j.activeElement)){mo(T);return}}(O=T.target)!=null&&O.isContentEditable&&!(f!=null&&f.enableOnContentEditable)||Or(c,f?.splitKey).forEach(function(M){var K,B=Dr(M,f?.combinationKey);if(bd(T,B,f?.ignoreModifiers)||(K=B.keys)!=null&&K.includes("*")){if(f!=null&&f.ignoreEventWhen!=null&&f.ignoreEventWhen(T)||v&&s.current)return;if(_d(T,B,f?.preventDefault),!Cd(T,B,f?.enabled)){mo(T);return}h.current(T,B),v||(s.current=!0)}})}},R=function(T){T.key!==void 0&&(Aa(Ve(T.code)),(f?.keydown===void 0&&f?.keyup!==!0||f!=null&&f.keydown)&&N(T))},A=function(T){T.key!==void 0&&(Ta(Ve(T.code)),s.current=!1,f!=null&&f.keyup&&N(T,!0))},b=a||l?.document||document;return b.addEventListener("keyup",A,l?.eventListenerOptions),b.addEventListener("keydown",R,l?.eventListenerOptions),S&&Or(c,f?.splitKey).forEach(function(w){return S.addHotkey(Dr(w,f?.combinationKey,f?.description))}),function(){b.removeEventListener("keyup",A,l?.eventListenerOptions),b.removeEventListener("keydown",R,l?.eventListenerOptions),S&&Or(c,f?.splitKey).forEach(function(w){return S.removeHotkey(Dr(w,f?.combinationKey,f?.description))})}}},[a,c,f,_]),i}const Ad=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"),Eo(i,l=>{l.preventDefault(),o&&e()},{},[o,e]),Eo(s,l=>{l.preventDefault(),n&&r()},{},[n,r])};window.navigator.appVersion.includes("Mac");const vo={"staging/makerdao":"deployments/staging/makerdao","staging/arbitrum":"arb-ltip","staging/powerhouse":"staging",makerdao:"deployments/makerdao",arbitrum:"deployments/arbitrum",arbgrants:"deployments/arbitrum",localhost:"develop"},Td=()=>{const t="https://raw.githubusercontent.com/powerhouse-inc/connect",e=window.location.href,r=Object.keys(vo).find(o=>e.includes(o)),n=r?vo[r]:void 0;if(n)return`${t}/${n}/package.json`},Id=async()=>{const t=Td();if(!t)return;const r=await(await fetch(t)).json(),{version:n}=r;return n},kd=async()=>{const t=ce.appVersion,e=await Id();return e?{isLatest:e===t,currentVersion:t,latestVersion:e}:null};function yo(...t){window.dataLayer?.push(...t)}const Md=()=>{const t=ce.gaTrackingId,[{analytics:e}]=qr(),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||[],yo("js",new Date),yo("config",t),()=>{document.head.removeChild(n)}}},[r,t]),null};function Hd(){return typeof document>"u"?"/":document.querySelector("base")?.getAttribute("href")||"/"}async function jd(t,e,r){const n={signer:r.signer,verifier:Gi()},o=async c=>{if(r.user)return r.getBearerToken({expiresIn:10,aud:c})},a=new Wi("idb://reactor",{relaxedDurability:!0}),i=new xi(["reactor-client"]);return{...await new Yi().withLogger(i).withSigner(n).withReactorBuilder(new Ji().withDocumentModels(t).withUpgradeManifests(e).withSync(new Xi().withChannelFactory(new qi(i,o))).withKysely(new Zi({dialect:new Qi(a)}))).buildModule(),pg:a}}function Fd(){return[]}async function Bd(t,e){const r=t.list(),n=new Set(r.map(o=>o.name));for(const o of e)try{const a=`default-drive-${o.driveId}`;if(n.has(a))continue;await t.add(a,Xr("main",o.driveId),{type:"gql",parameters:{url:o.graphqlEndpoint}})}catch(a){console.error(`Failed to add default drive ${o.url}:`,a)}}const Vd=ce.routerBasename,Ud=[Vd,"service-worker.js"].join("/").replace(/\/{2,}/gm,"/");class $d{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(Ud);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 zd=new $d,Kd=250,Wd=({delay:t=Kd})=>{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)},[]),y.jsxs("div",{className:`skeleton-loader absolute inset-0 z-10 flex items-center justify-center ${n?"":"hidden"}`,children:[y.jsx("div",{className:"animate-pulse overflow-hidden rounded-full shadow-lg",children:y.jsx(Pi,{})}),e?y.jsx("script",{dangerouslySetInnerHTML:{__html:`setTimeout(() => {
|
|
@@ -11,7 +11,7 @@ Latest: @latestVersion`,e.currentVersion,e.latestVersion):ft(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,y.jsx(Wd,{})]})};function Gd({children:t}){return y.jsx(y.Fragment,{children:t})}const Jd=({children:t})=>(md(),t),Xd=()=>(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(()=>{zd.registerServiceWorker(!1)},[]),y.jsx(Jd,{children:y.jsx(Ai,{children:y.jsxs(Gd,{children:[y.jsx(Ti,{position:"bottom-right",containerId:"connect"}),y.jsx(ip,{}),y.jsx(Md,{})]})})})),qd={cancel:"Cancel",delete:"Delete",continue:"Continue",empty:"Empty",create:"Create",save:"Save",export:"Export",reload:"Reload",reloadConnect:"Click here to reload Connect"},Zd={placeholder:"Search Powerhouse",filterLabel:"File type"},Qd={sections:{folders:{title:"Folders",empty:"No folders 🗂️"},documents:{title:"Documents and files",empty:"No documents or files 📄"}}},ef={options:{switchboardLink:"Switchboard Link"}},tf={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>"}},rf={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."},nf={cookiePolicy:"Cookie Policy",termsOfUse:"Terms of Use",disclaimer:"Disclaimer",builtWith:"Built with <icon /> Powerhouse"},of={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"}},af={common:qd,searchbar:Zd,folderView:Qd,files:ef,modals:tf,notifications:rf,footer:nf,cookieBanner:of},sf={en:{code:"en",name:"English",translation:af}};pe.use(_c).init({resources:sf,fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}}).catch(t=>{console.error(t)});const lf=(t,e)=>t.some(r=>r.id===e&&r.value),cf=()=>{const{t}=ua(void 0,{useSuspense:!0,i18n:pe}),[e,r]=kc(),[,n]=qr(),o=[{id:"analytics-cookie",label:t("cookieBanner.cookies.analytics"),value:!0}],a=s=>{r(!1),lf(s,"analytics-cookie")&&n(l=>({...l,analytics:!0}))},i=()=>{r(!1),n(()=>({analytics:!1,functional:!1,marketing:!1}))};return e?y.jsxs("div",{className:"absolute inset-0 z-[10000] backdrop-blur-sm",children:[y.jsx("div",{className:"absolute inset-0 bg-black opacity-15"}),y.jsx("div",{className:"absolute inset-x-0 bottom-0 flex justify-center bg-white px-10 pb-16 pt-10 shadow-lg",children:y.jsx(Ii,{className:"max-w-[1024px]",cookies:o,onSubmit:a,onReject:i,submitLabel:t("cookieBanner.accept"),rejectLabel:t("cookieBanner.reject"),children:y.jsx("p",{className:"font-semibold text-gray-500",children:y.jsx(Nc,{i18nKey:"cookieBanner.message",components:{a:y.jsx("a",{onClick:()=>je({type:"cookiesPolicy"}),className:"cursor-pointer text-gray-900 hover:underline"},"cookieBanner.message-link")}},"cookieBanner.message")})})})]}):null};function uf(){const[t]=es(),e=ts(t.header.id),r=g.useCallback(()=>{rs(t).length?je({type:"exportDocumentWithErrors",documentId:t.header.id}):ns(t).catch(i=>{console.error(i);const s=i instanceof Error?i.message:JSON.stringify(i,null,1);ft(`Failed to export document: ${s}`)})},[t]),n=g.useMemo(()=>async()=>{},[]),o=g.useCallback(()=>{Mr(e)},[e,Mr]);return y.jsx("div",{id:"document-editor-container",className:"flex-1","data-document-type":t.header.documentType,children:y.jsx(Cf,{document:t,onClose:o,onExport:r,onOpenSwitchboardLink:n})})}function Rt(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?y.jsx(y.Fragment,{children:n}):y.jsx(ki,{...o})}const df=g.createContext(null),Lr={didCatch:!1,error:null};let ff=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&&hf(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(df.Provider,{value:{didCatch:a,error:i,resetErrorBoundary:this.resetErrorBoundary}},s)}};function hf(){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 pf=Gr(["Connect"]);function gf(t){return"fallbackRender"in t}function mf(){return null}function Ef({message:t="Something went wrong"}){return y.jsx("div",{className:"text-center",children:t})}function vf({error:t}){const e=t instanceof Error?t.message:String(t);return y.jsxs("div",{className:"mx-auto flex max-w-[80%] flex-1 flex-col items-center justify-center",children:[y.jsx("h1",{className:"mb-2 text-xl font-semibold",children:"Error"}),y.jsx("i",{children:e}),y.jsx("pre",{children:JSON.stringify(t,null,2)})]})}function Ma({error:t}){const e=t instanceof Error?t.message:String(t);return y.jsx("div",{className:"flex size-full items-center justify-center",children:y.jsx("h3",{className:"text-lg font-semibold",children:e})})}function yf(t,e){switch(t){case"silent":return mf;case"text":return()=>y.jsx(Ef,{message:e});case"detailed":return vf;default:return Ma}}function fr(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?Gr(o):pf).error("@error @info",s,l),r?.(s,l)},i=gf(t)?t.fallbackRender:yf(t.variant,t.fallbackMessage);return y.jsx(ff,{fallbackRender:i,onError:a,resetKeys:n,children:e})}function _f(){const[t]=os(),e=zo(),r=Ko(t.header.meta?.preferredEditor),n=as(),o=r?.Component??n?.Component??Li.Component;if(!o)throw new Error("No drive editor component found");return y.jsx(fr,{variant:"detailed",resetKeys:[t.header.id],loggerContext:["Connect","DriveEditor"],children:y.jsx(g.Suspense,{fallback:y.jsx(Rt,{}),children:y.jsx(Mi,{className:"flex h-full flex-col overflow-auto",children:y.jsx(o,{children:e?y.jsx(uf,{}):null})})})})}function Ha({drive:t}){const{data:e=[]}=is(),r=g.useMemo(()=>t?e.some(o=>o.collectionId===Xr("main",t.header.id)):!1,[e,t]),n=t?.state.global.icon;return n?y.jsx("img",{src:n,alt:t.header.name,height:32,width:32}):r?y.jsx(Sn,{name:"Server",size:32}):y.jsx(Sn,{name:"Hdd",size:32})}function _o({message:t}){return y.jsx("div",{className:"flex size-full items-center justify-center",children:y.jsx("h3",{className:"text-lg font-semibold",children:t})})}const Cf=t=>{const{document:e,onClose:r,onExport:n,onOpenSwitchboardLink:o}=t,a=ss(),i=ls(),[s,l]=cs(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:m,isLoading:_,refetch:S}=us(c);g.useEffect(()=>{i&&S()},[i,S]);const N=s?.header.revision.global??0,R=s?.header.revision.local??0,A=ds(u),b=fs(h),w=hs(u),T=b??w,v=!s,O=T&&u&&!T.documentTypes.includes(u)&&!T.documentTypes.includes("*"),j=N>0||R>0,M=!!s?.clipboard.length;Ad({undo:()=>l(Oi()),redo:()=>l(Di()),canUndo:j,canRedo:M}),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(O)return y.jsx(Rt,{message:"Loading editor"});if(v)return y.jsx(Rt,{message:"Loading document"});if(!A)return y.jsx(_o,{message:y.jsxs("div",{className:"text-center leading-10",children:[y.jsxs("p",{children:['Unable to open the document because the document model "',u,'" is not supported.']}),y.jsxs("p",{children:["Go to the"," ",y.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{je({type:"settings"})},children:"package manager"})," ","to install this document model"]})]})});if(!T)return y.jsx(_o,{message:y.jsxs("div",{className:"text-center leading-10",children:[y.jsx("p",{children:"Unable to open the document because no editor has been found"}),y.jsxs("p",{children:["Go to the"," ",y.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{je({type:"settings"})},children:"package manager"})," ",'an editor for the "$',u,'" document type']})]})});const ue=T.Component;return y.jsx("div",{className:"relative h-full",id:"document-editor-context","data-editor":T.id,"data-document-type":u,children:i?_?y.jsx(Rt,{message:"Loading operations"}):y.jsx(Hi,{documentTitle:d??"",documentId:c??"",globalOperations:f,localOperations:m,onClose:()=>ps(!1),documentState:s.state,onCopyState:()=>{ft("Copied document state to clipboard",{type:"success"})},onCopyDocId:()=>{ft("Copied document ID to clipboard",{type:"success"})}},c):y.jsx(g.Suspense,{fallback:y.jsx(Rt,{message:"Loading editor"}),name:"EditorLoader",children:y.jsx(fr,{fallbackRender:Ma,resetKeys:[c],onError:ge,loggerContext:["Connect","DocumentEditor"],children:!W?.error&&y.jsx(ue,{context:{readMode:!!a,selectedTimelineRevision:gs(a?.startDate,a?.endDate,f)},documentId:s.header.id},c)})})})},Nf=g.lazy(()=>he(()=>import("./AddDriveModal-OXMDcTkb.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}))),Sf=g.lazy(()=>he(()=>import("./ClearStorageModal-D7SSEfHO.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(()=>he(()=>import("./CookiesPolicyModal-B6IvC-dh.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}))),bf=g.lazy(()=>he(()=>import("./CreateDocumentModal-De7HFzqG.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}))),xf=g.lazy(()=>he(()=>import("./DebugSettingsModal-BPQtmD9d.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}))),Of=g.lazy(()=>he(()=>import("./DeleteDriveModal-CGKiLFVF.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}))),Df=g.lazy(()=>he(()=>import("./DeleteItemModal-BAmScid_.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(()=>he(()=>import("./DisclaimerModal-zIDDMFY9.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}))),wf=g.lazy(()=>he(()=>import("./DriveSettingsModal-z-nwyn2J.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}))),Pf=g.lazy(()=>he(()=>import("./ExportDocumentWithErrorsModal-wcQL_cnZ.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}))),Af=g.lazy(()=>he(()=>import("./SettingsModal-ffV7JjcT.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}))),Tf=g.lazy(()=>he(()=>import("./UpgradeDriveModal-C2bwCout.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}))),If=g.lazy(()=>he(()=>import("./index-B9vSDZIB.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}))),kf={addDrive:Nf,clearStorage:Sf,cookiesPolicy:Rf,createDocument:bf,debugSettings:xf,deleteDrive:Of,deleteItem:Df,disclaimer:Lf,driveSettings:wf,exportDocumentWithErrors:Pf,inspector:If,settings:Af,upgradeDrive:Tf};function Mf(){const t=ms();if(!t?.type)return null;const e=kf[t.type];return e?y.jsx(fr,{variant:"silent",loggerContext:["Connect","Modals"],children:y.jsx(g.Suspense,{fallback:null,children:y.jsx(e,{})})}):null}function Hf(t){return t.documentModel.global}function jf(){const{isAllowedToCreateDocuments:t}=Es(),r=vs()?.filter(n=>n.documentModel.global.id!=="powerhouse/document-drive");return t?y.jsxs("div",{className:"px-6 py-4",children:[y.jsx("h3",{className:"mb-3 text-xl font-bold text-gray-600",children:"New document"}),y.jsx("div",{className:"flex w-full flex-wrap gap-4",children:r?.map(n=>{const o=Hf(n),a=n.version?` v${n.version}`:"";return y.jsx(qo,{color:"light",title:`${o.name}${a}`,"aria-description":o.description,onClick:()=>ys(o.id),children:y.jsxs("span",{className:"text-sm",children:[o.name,a]})},`${o.id}-v${n.version??1}`)})})]}):null}const Nt=8,wr=256,Pr=48,Ff=420;function Bf(){const t=g.useRef(null),r=qs().innerWidth-Ff,o=Wo().filter(h=>_s(h)),a=Math.floor(r/(wr+Nt))||1,i=Math.ceil(o.length/a),s=_n({count:i,getScrollElement:()=>t.current,estimateSize:h=>h>0?Pr+Nt:Pr,overscan:5}),l=_n({horizontal:!0,count:a,getScrollElement:()=>t.current,estimateSize:h=>h>0?wr+Nt:wr,overscan:5}),c=(h,f)=>h*a+f,d=(h,f)=>{const m=c(h,f);return o[m]||null};if(o.length===0)return y.jsx("div",{className:"mb-8 text-sm text-gray-400",children:"No documents or files 📄"});const u=(h,f)=>{const m=d(h,f);return m?y.jsx("div",{style:{marginLeft:f===0?0:Nt},children:y.jsx(ji,{fileNode:m},m.id)}):null};return y.jsx("div",{ref:t,style:{width:"100%",overflow:"auto"},children:y.jsx("div",{style:{height:`${s.getTotalSize()}px`,width:`${l.getTotalSize()}px`,position:"relative"},children:s.getVirtualItems().map(h=>y.jsx(Mo.Fragment,{children:l.getVirtualItems().map(f=>y.jsx("div",{style:{position:"absolute",top:0,left:0,marginTop:h.index===0?0:Nt,width:`${f.size}px`,height:`${Pr}px`,overflow:"hidden",transform:`translateX(${f.start}px) translateY(${h.start}px)`},children:u(h.index,f.index)},f.key))},h.key))})})}function Ce({children:t,className:e,...r}){return y.jsx(Ce.Container,{className:e,...r,children:t})}Ce.Container=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("flex grow flex-col overflow-auto",r),...n,...o,children:e})};Ce.Header=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("flex-0",r),...n,...o,children:e})};Ce.Content=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("mb-5 flex-1 px-4",r),...n,...o,children:e})};Ce.ContentSection=function({title:e,children:r,className:n,containerProps:o,...a}){return y.jsxs("div",{className:Pt(n),...o,...a,children:[e&&y.jsx("div",{className:"mb-4 text-base font-semibold text-gray-600",children:e}),y.jsx("div",{className:"flex flex-wrap gap-2",children:r})]})};Ce.Footer=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("flex-0",r),...n,...o,children:e})};function Vf(t){const{className:e}=t,r=Wo(),n=Yo(),o=r.filter(s=>Cs(s)),{isDropTarget:a,dropProps:i}=Uo({target:n});return y.jsxs("div",{className:rl("rounded-md border-2 border-transparent p-2",a&&"border-dashed border-blue-100",e),...i,children:[y.jsx(Ce.ContentSection,{title:"Folders",className:"mb-4",children:o.length>0?o.map(s=>y.jsx(Fi,{folderNode:s},s.id)):y.jsx("div",{className:"mb-8 text-sm text-gray-400",children:"No documents or files 📄"})}),y.jsx(Ce.ContentSection,{title:"Documents and files",children:y.jsx("div",{className:"w-full",children:y.jsx(Bf,{})})})]})}const Uf={allowedDocumentTypes:[],isDragAndDropEnabled:!0};function ja(t){Ns(Uf);const{className:e,children:r}=t,{isDropTarget:n,dropProps:o}=Uo(),a=!!r;return y.jsxs(Ce,{className:e,children:[!a&&y.jsx(Ce.Header,{children:y.jsx(Bi,{})}),a?r:y.jsx(Ce.Content,{...o,className:n?"rounded-xl bg-blue-100":"",children:y.jsx(Vf,{})}),!a&&y.jsx(Ce.Footer,{children:y.jsx(jf,{})})]})}const Ap=Object.freeze(Object.defineProperty({__proto__:null,default:ja},Symbol.toStringTag,{value:"Module"}));function $f(){return{id:Ss,name:"Generic Drive Explorer",documentTypes:["powerhouse/document-drive"],Component:ja}}function zf(){return{id:"document-model-editor-v2",name:"Document Model Editor",documentTypes:["powerhouse/document-model"],Component:Si}}async function Kf(){const t=Vt.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=Vt.reducer,s=Vt.actions,l=Vt.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:jo(Fo(),t)}}async function Wf(){const t=Ut.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=Ut.reducer,s=Ut.actions,l=Ut.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:jo(Fo(),t)}}async function Yf(){const t=await Kf(),e=await Wf(),r=zf(),n=$f();return{id:Rs,name:"Common",description:"Common",category:"Common",author:{name:"Powerhouse",website:"https://powerhousedao.com"},modules:{documentModelModules:[t,e],editorModules:[r,n]},upgradeManifests:[]}}const{externalPackagesEnabled:Gf}=ce;function Jf(t){return t.loadExternalPackages().then(e=>e.map($o))}async function Xf(){try{if(!Gf)return[];const t=await he(()=>import("./_virtual_ph_external-packages-CM1tCR4L.js"),[]);return Jf(t)}catch(t){return console.error(t),[]}}var qf=Object.defineProperty,Zf=Object.defineProperties,Qf=Object.getOwnPropertyDescriptors,Co=Object.getOwnPropertySymbols,eh=Object.prototype.hasOwnProperty,th=Object.prototype.propertyIsEnumerable,No=(t,e,r)=>e in t?qf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ar=(t,e)=>{for(var r in e||(e={}))eh.call(e,r)&&No(t,r,e[r]);if(Co)for(var r of Co(e))th.call(e,r)&&No(t,r,e[r]);return t},Tr=(t,e)=>Zf(t,Qf(e)),lt=(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())}),rh=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()}},nh={ERROR:"ERROR"},Fa=(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))(Fa||{}),Ye=class Ba extends Error{constructor(e,r){super(e),Object.setPrototypeOf(this,Ba.prototype),this.name="OpenFeatureError",this.cause=r?.cause}},oh=class Va extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Va.prototype),this.name="FlagNotFoundError",this.code="FLAG_NOT_FOUND"}},Ua=class $a extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,$a.prototype),this.name="GeneralError",this.code="GENERAL"}},ah=class za extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,za.prototype),this.name="InvalidContextError",this.code="INVALID_CONTEXT"}},ih=class Ka extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ka.prototype),this.name="ParseError",this.code="PARSE_ERROR"}},Wa=class Ya extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ya.prototype),this.name="ProviderFatalError",this.code="PROVIDER_FATAL"}},Ga=class Ja extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ja.prototype),this.name="ProviderNotReadyError",this.code="PROVIDER_NOT_READY"}},sh=class Xa extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Xa.prototype),this.name="TargetingKeyMissingError",this.code="TARGETING_KEY_MISSING"}},lh=class qa extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,qa.prototype),this.name="TypeMismatchError",this.code="TYPE_MISMATCH"}},ch=(t,e)=>{switch(t){case"FLAG_NOT_FOUND":return new oh(e);case"PARSE_ERROR":return new ih(e);case"TYPE_MISMATCH":return new lh(e);case"TARGETING_KEY_MISSING":return new sh(e);case"INVALID_CONTEXT":return new ah(e);case"PROVIDER_NOT_READY":return new Ga(e);case"PROVIDER_FATAL":return new Wa(e);default:return new Ua(e)}},wt=(t=>(t.NOT_READY="NOT_READY",t.READY="READY",t.ERROR="ERROR",t.STALE="STALE",t.FATAL="FATAL",t.RECONCILING="RECONCILING",t))(wt||{}),we=(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))(we||{}),uh={READY:"PROVIDER_READY",ERROR:"PROVIDER_ERROR",FATAL:"PROVIDER_ERROR",STALE:"PROVIDER_STALE",RECONCILING:"PROVIDER_RECONCILING",NOT_READY:void 0},Za=(t,e)=>!e&&t==="PROVIDER_READY"||uh[e]===t,Qa=class{error(...t){console.error(...t)}warn(...t){console.warn(...t)}info(){}debug(){}},dh=["error","warn","info","debug"],an=class{constructor(t){this.fallbackLogger=new Qa;try{for(const e of dh)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)}}},fh=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=>lt(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 an(t),this}get _logger(){var t,e;return(e=this._eventLogger)!=null?e:(t=this.globalLogger)==null?void 0:t.call(this)}};function hh(t){return typeof t=="string"}function ct(t){return hh(t)?t:void 0}function ph(t){return typeof t=="object"}function _e(t){return ph(t)?t:void 0}function So(t){return typeof t<"u"&&t!==null}var Wr=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--}},gh=class{constructor(t){this._hooks=[],this._context={},this._logger=new Qa,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 an(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(Za(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=ct(t),u=(r=_e(t))!=null?r:_e(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 Ua(`Provider '${u.metadata.name}' is intended for use on the ${u.runsOn}.`);const m=this.getAssociatedEventEmitters(d);let _;const S=new Wr(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 N;S.status=this._statusEnumType.READY,this.getAssociatedEventEmitters(d).forEach(R=>{R?.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}),(N=this._apiEmitter)==null||N.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}))==null?void 0:i.catch(N=>{var R;throw N?.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:N?.message})}),(R=this._apiEmitter)==null||R.emit("PROVIDER_ERROR",{clientName:d,domain:d,providerName:f,message:N?.message}),N}):(S.status=this._statusEnumType.READY,m.forEach(N=>{N?.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,m),this.allProviders.includes(h)||(c=(l=h?.onClose)==null?void 0:l.call(h))==null||c.catch(N=>{this._logger.error(`error closing provider: ${N?.message}, ${N?.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(we).forEach(o=>{var a;return(a=n.events)==null?void 0:a.addHandler(o,i=>lt(this,null,function*(){r.emit(o,Tr(Ar({},i),{clientName:t,domain:t,providerName:n.metadata.name}))}))}),r}getUnboundEmitters(){const t=[...this._domainScopedProviders.keys()];return[...[...this._clientEvents.keys()].filter(So).filter(n=>!t.includes(n)).map(n=>this._clientEvents.get(n)),this._clientEvents.get(void 0)].filter(So)}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(we).map(i=>[i,l=>lt(this,null,function*(){n.forEach(c=>{c?.emit(i,Tr(Ar({},l),{clientName:r,domain:r,providerName:e.metadata.name}))}),this._apiEmitter.emit(i,Tr(Ar({},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 lt(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=>lt(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 lt(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 Wr(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)}},mh=Object.create,sn=Object.defineProperty,Eh=Object.defineProperties,vh=Object.getOwnPropertyDescriptor,yh=Object.getOwnPropertyDescriptors,ei=Object.getOwnPropertyNames,Ro=Object.getOwnPropertySymbols,ti=Object.getPrototypeOf,ri=Object.prototype.hasOwnProperty,_h=Object.prototype.propertyIsEnumerable,Ch=Reflect.get,bo=(t,e,r)=>e in t?sn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ir=(t,e)=>{for(var r in e||(e={}))ri.call(e,r)&&bo(t,r,e[r]);if(Ro)for(var r of Ro(e))_h.call(e,r)&&bo(t,r,e[r]);return t},Nh=(t,e)=>Eh(t,yh(e)),Sh=(t,e)=>function(){return e||(0,t[ei(t)[0]])((e={exports:{}}).exports,e),e.exports},Rh=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of ei(e))!ri.call(t,o)&&o!==r&&sn(t,o,{get:()=>e[o],enumerable:!(n=vh(e,o))||n.enumerable});return t},bh=(t,e,r)=>(r=t!=null?mh(ti(t)):{},Rh(sn(r,"default",{value:t,enumerable:!0}),t)),xh=(t,e,r)=>Ch(ti(t),r,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())}),Oh=Sh({"../../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 m=new a(u,h||c,f),_=n?n+d:d;return c._events[_]?c._events[_].fn?c._events[_]=[c._events[_],m]:c._events[_].push(m):(c._events[_]=m,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,m=h.length,_=new Array(m);f<m;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,m,_){var S=n?n+d:d;if(!this._events[S])return!1;var N=this._events[S],R=arguments.length,A,b;if(N.fn){switch(N.once&&this.removeListener(d,N.fn,void 0,!0),R){case 1:return N.fn.call(N.context),!0;case 2:return N.fn.call(N.context,u),!0;case 3:return N.fn.call(N.context,u,h),!0;case 4:return N.fn.call(N.context,u,h,f),!0;case 5:return N.fn.call(N.context,u,h,f,m),!0;case 6:return N.fn.call(N.context,u,h,f,m,_),!0}for(b=1,A=new Array(R-1);b<R;b++)A[b-1]=arguments[b];N.fn.apply(N.context,A)}else{var w=N.length,T;for(b=0;b<w;b++)switch(N[b].once&&this.removeListener(d,N[b].fn,void 0,!0),R){case 1:N[b].fn.call(N[b].context);break;case 2:N[b].fn.call(N[b].context,u);break;case 3:N[b].fn.call(N[b].context,u,h);break;case 4:N[b].fn.call(N[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];N[b].fn.apply(N[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 m=n?n+d:d;if(!this._events[m])return this;if(!u)return s(this,m),this;var _=this._events[m];if(_.fn)_.fn===u&&(!f||_.once)&&(!h||_.context===h)&&s(this,m);else{for(var S=0,N=[],R=_.length;S<R;S++)(_[S].fn!==u||f&&!_[S].once||h&&_[S].context!==h)&&N.push(_[S]);N.length?this._events[m]=N.length===1?N[0]:N:s(this,m)}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)}}),Dh="No-op",Lh=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:Dh}}},xo=new Lh,wh=bh(Oh()),Oo=class extends fh{constructor(){super(),this.eventEmitter=new wh.default}},Ph=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),Za(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 an(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(Ir({},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=Ir({},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 rh}));let u;try{this.beforeHooks(s,d,o),this.shortCircuitIfNotReady();const h=e.call(this._provider,t,r,c,this._logger),f=Nh(Ir({},h),{flagMetadata:Object.freeze((i=h.flagMetadata)!=null?i:{}),flagKey:t});if(f.errorCode){const m=ch(f.errorCode,f.errorMessage);this.errorHooks(l,d,m,o),u=this.getErrorEvaluationDetails(t,r,m,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===wt.NOT_READY)throw new Ga("provider has not yet initialized");if(this.providerStatus===wt.FATAL)throw new Wa("provider is in an irrecoverable error state")}getErrorEvaluationDetails(t,e,r,n={}){const o=r?.message;return{errorCode:r?.code||Fa.GENERAL,errorMessage:o,value:e,reason:nh.ERROR,flagMetadata:Object.freeze(n),flagKey:t}}},Do=Symbol.for("@openfeature/web-sdk/api"),Lo=globalThis,Ah=class Yr extends gh{constructor(){super("client"),this._statusEnumType=wt,this._apiEmitter=new Oo,this._defaultProvider=new Wr(xo,wt.NOT_READY,this._statusEnumType),this._domainScopedProviders=new Map,this._createEventEmitter=()=>new Oo}static getInstance(){const e=Lo[Do];if(e)return e;const r=new Yr;return Lo[Do]=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 st(this,null,function*(){const o=ct(e),a=_e(o?r:e),i=_e(o?n:r);i&&(o?this._domainScopedContext.set(o,i):this._context=i),yield this.setAwaitableProvider(o,a)})}setProvider(e,r,n){const o=ct(e),a=_e(o?r:e),i=_e(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 st(this,null,function*(){var n,o;const a=ct(e),i=(o=(n=_e(e))!=null?n:_e(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=ct(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 st(this,null,function*(){const r=ct(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 st(this,null,function*(){yield this.clearContext(),yield Promise.allSettled(Array.from(this._domainScopedProviders.keys()).map(e=>this.clearContext(e)))})}getClient(e,r){return new Ph(()=>this.getProviderForClient(e),()=>this.getProviderStatus(e),()=>this.buildAndCacheEventEmitterForClient(e),n=>this.getContext(n),()=>this.getHooks(),()=>this._logger,{domain:e,version:r})}clearProviders(){return st(this,null,function*(){yield xh(Yr.prototype,this,"clearProvidersAndSetDefault").call(this,xo),this._domainScopedContext.clear()})}runProviderContextChangeHandler(e,r,n,o){return st(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(we.Reconciling,{domain:e,providerName:u})}),(s=this._apiEmitter)==null||s.emit(we.Reconciling,{domain:e,providerName:u}),yield h,r.decrementPendingContextChanges())}r.status=this._statusEnumType.READY,r.allContextChangesSettled&&(this.getAssociatedEventEmitters(e).forEach(h=>{h?.emit(we.ContextChanged,{clientName:e,domain:e,providerName:u})}),(l=this._apiEmitter)==null||l.emit(we.ContextChanged,{clientName:e,domain:e,providerName:u}))}catch(h){if(r.decrementPendingContextChanges(),r.status=this._statusEnumType.ERROR,r.allContextChangesSettled){const f=h,m=`Error running ${u}'s context change handler: ${f?.message}`;(c=this._logger)==null||c.error(`${m}`,h),this.getAssociatedEventEmitters(e).forEach(_=>{_?.emit(we.Error,{clientName:e,domain:e,providerName:u,message:m})}),(d=this._apiEmitter)==null||d.emit(we.Error,{clientName:e,domain:e,providerName:u,message:m})}}})}},wo=Ah.getInstance();class Th{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 Ih(t){const e=typeof window<"u"?new URLSearchParams(window.location.search):new URLSearchParams,r=new Th(e);await wo.setProviderAndWait(r);const n=new Map,o=wo.getClient();n.set(Po,o.getBooleanValue(Po,kh)),n.set(Ao,o.getBooleanValue(Ao,Mh)),n.set(To,o.getBooleanValue(To,Hh));const i=e.has(kr)?o.getBooleanValue(kr,jh):ce.content.inspectorEnabled;n.set(kr,i);const s=e.get("LOG_LEVEL");if(s){const l=["verbose","debug","info","warn","error"];l.includes(s.toLowerCase())?(Ho(s.toLowerCase()),$e.info("Log level set to @level via query param",s.toLowerCase())):$e.warn("Invalid LOG_LEVEL query param: @param. Valid values: @validLevels",s,l.join(", "))}return n}const Po="FEATURE_LEGACY_READ_ENABLED",kh=!1,Ao="FEATURE_LEGACY_WRITE_ENABLED",Mh=!1,To="FEATURE_CHANNEL_SYNC_ENABLED",Hh=!0,kr="FEATURE_INSPECTOR_ENABLED",jh=!1;async function Tp(){const t=window.ph?.reactorClientModule?.pg;if(!t)throw new Error("PGlite not found");await zs(t),await t.close()}async function Fh(t){const e=await Yf(),r=[e,...t];return Jr([e,...t]),r}async function Bh(){if(window.ph||(window.ph={}),window.ph.loading)return;window.ph.loading=!0,bs(),xs(ft);const t=await Ih();$e.info("Features: @features",JSON.stringify(Object.fromEntries(t),null,2));const e=await Os.create(),r=await new Ds().withKeyPairStorage(e).build(),n=await new Ls("connect",{basename:dt.routerBasename,baseUrl:dt.renownUrl}).withCrypto(r).build(),o=await Xf(),a=await Fh(o),i=a.flatMap(R=>R.modules.documentModelModules).filter(R=>R!==void 0),s=a.flatMap(R=>R.upgradeManifests),l=await jd(i,s,n),c=Fd();if(c.length>0){const R=l.reactorModule?.syncModule?.syncManager;R&&await Bd(R,c)}const d=await ws(l.client),u=Uh();if(u){const R=u.split("/").pop()??"";await l.reactorModule?.syncModule?.syncManager.add(`remote-drive-${R}`,Xr("main",R),{type:"gql",parameters:{url:u}})}const h=window.location.pathname,f=Ps(h),m=As(h),_=Vh();await Ts(_,n);const S=new Is(l.client);ks(dt),Ms(l),Hs(l.client),js(S),Fs(r),Bs(n.did),Vs(n),Us(d),Jr(a),Jt(f),Mr(m),$s(t),l.client.subscribe({type:"powerhouse/document-drive"},R=>{$e.verbose("ReactorClient subscription event: @event",R),Cn(l.client).catch(A=>$e.error("@error",A))}),await Cn(l.client),window.ph.loading=!1}function Vh(){const e=new URLSearchParams(window.location.search).get("user");return e?decodeURIComponent(e):void 0}function Uh(){const e=new URLSearchParams(window.location.search).get("driveUrl");return e?decodeURIComponent(e):void 0}function $h(){const t=Go();g.useEffect(()=>{let e=null;if(t){const{credential:r,...n}=t;e={id:n.did,username:n.ens?.name,...n}}nl(e)},[t])}function zh(){return y.jsx("div",{className:"h-screen",children:y.jsx("div",{className:"flex h-screen items-stretch overflow-auto",role:"presentation",tabIndex:0,children:y.jsxs(g.Suspense,{name:"Root",children:[y.jsx(sp,{}),y.jsx("div",{className:"relative flex-1 overflow-auto",children:y.jsx(qu,{})})]})})})}function Kh(){const[t]=Jo(),e=Yo(),r=zo();g.useEffect(()=>{r||Ks(Cl)},[r]),g.useEffect(()=>{t||Ws(Nl)},[t]);const n=!r&&!t&&!e;return y.jsx(Wh,{children:n?y.jsx(Gh,{}):y.jsx(_f,{})})}function Wh({children:t}){return y.jsx("div",{className:"flex h-full flex-col overflow-auto",id:"content-view",children:t})}function Yh({drive:t}){const r=Ko(t.header.meta?.preferredEditor)?.name||"Drive Explorer App";return y.jsx(Ui,{title:t.state.global.name,description:r,icon:y.jsx(Ha,{drive:t}),onClick:()=>Jt(t)},t.header.id)}function Gh(){const t=Xo(),e=ce;return y.jsxs(Vo,{children:[t?.map(r=>y.jsx(Yh,{drive:r},r.header.id)),e.drives.addDriveEnabled&&y.jsx(Vi,{})]})}const Jh=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"})))),Xh=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"})),qh="https://apps.powerhouse.io/sky-atlas/staging/switchboard",Zh=2e3;function Qh(){const{search:t}=dr();return g.useMemo(()=>{const r=new URLSearchParams(t).get("reactorUrl")??qh;return r.endsWith("/")?r:`${r}/`},[t])}async function ep(t,e){const r=Zs`
|
|
14
|
+
}`}}):null,y.jsx(Wd,{})]})};function Gd({children:t}){return y.jsx(y.Fragment,{children:t})}const Jd=({children:t})=>(md(),t),Xd=()=>(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(()=>{zd.registerServiceWorker(!1)},[]),y.jsx(Jd,{children:y.jsx(Ai,{children:y.jsxs(Gd,{children:[y.jsx(Ti,{position:"bottom-right",containerId:"connect"}),y.jsx(ip,{}),y.jsx(Md,{})]})})})),qd={cancel:"Cancel",delete:"Delete",continue:"Continue",empty:"Empty",create:"Create",save:"Save",export:"Export",reload:"Reload",reloadConnect:"Click here to reload Connect"},Zd={placeholder:"Search Powerhouse",filterLabel:"File type"},Qd={sections:{folders:{title:"Folders",empty:"No folders 🗂️"},documents:{title:"Documents and files",empty:"No documents or files 📄"}}},ef={options:{switchboardLink:"Switchboard Link"}},tf={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>"}},rf={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."},nf={cookiePolicy:"Cookie Policy",termsOfUse:"Terms of Use",disclaimer:"Disclaimer",builtWith:"Built with <icon /> Powerhouse"},of={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"}},af={common:qd,searchbar:Zd,folderView:Qd,files:ef,modals:tf,notifications:rf,footer:nf,cookieBanner:of},sf={en:{code:"en",name:"English",translation:af}};pe.use(_c).init({resources:sf,fallbackLng:"en",debug:!1,interpolation:{escapeValue:!1}}).catch(t=>{console.error(t)});const lf=(t,e)=>t.some(r=>r.id===e&&r.value),cf=()=>{const{t}=ua(void 0,{useSuspense:!0,i18n:pe}),[e,r]=kc(),[,n]=qr(),o=[{id:"analytics-cookie",label:t("cookieBanner.cookies.analytics"),value:!0}],a=s=>{r(!1),lf(s,"analytics-cookie")&&n(l=>({...l,analytics:!0}))},i=()=>{r(!1),n(()=>({analytics:!1,functional:!1,marketing:!1}))};return e?y.jsxs("div",{className:"absolute inset-0 z-[10000] backdrop-blur-sm",children:[y.jsx("div",{className:"absolute inset-0 bg-black opacity-15"}),y.jsx("div",{className:"absolute inset-x-0 bottom-0 flex justify-center bg-white px-10 pb-16 pt-10 shadow-lg",children:y.jsx(Ii,{className:"max-w-[1024px]",cookies:o,onSubmit:a,onReject:i,submitLabel:t("cookieBanner.accept"),rejectLabel:t("cookieBanner.reject"),children:y.jsx("p",{className:"font-semibold text-gray-500",children:y.jsx(Nc,{i18nKey:"cookieBanner.message",components:{a:y.jsx("a",{onClick:()=>je({type:"cookiesPolicy"}),className:"cursor-pointer text-gray-900 hover:underline"},"cookieBanner.message-link")}},"cookieBanner.message")})})})]}):null};function uf(){const[t]=es(),e=ts(t.header.id),r=g.useCallback(()=>{rs(t).length?je({type:"exportDocumentWithErrors",documentId:t.header.id}):ns(t).catch(i=>{console.error(i);const s=i instanceof Error?i.message:JSON.stringify(i,null,1);ft(`Failed to export document: ${s}`)})},[t]),n=g.useMemo(()=>async()=>{},[]),o=g.useCallback(()=>{Mr(e)},[e,Mr]);return y.jsx("div",{id:"document-editor-container",className:"flex-1","data-document-type":t.header.documentType,children:y.jsx(Cf,{document:t,onClose:o,onExport:r,onOpenSwitchboardLink:n})})}function Rt(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?y.jsx(y.Fragment,{children:n}):y.jsx(ki,{...o})}const df=g.createContext(null),Lr={didCatch:!1,error:null};let ff=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&&hf(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(df.Provider,{value:{didCatch:a,error:i,resetErrorBoundary:this.resetErrorBoundary}},s)}};function hf(){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 pf=Gr(["Connect"]);function gf(t){return"fallbackRender"in t}function mf(){return null}function Ef({message:t="Something went wrong"}){return y.jsx("div",{className:"text-center",children:t})}function vf({error:t}){const e=t instanceof Error?t.message:String(t);return y.jsxs("div",{className:"mx-auto flex max-w-[80%] flex-1 flex-col items-center justify-center",children:[y.jsx("h1",{className:"mb-2 text-xl font-semibold",children:"Error"}),y.jsx("i",{children:e}),y.jsx("pre",{children:JSON.stringify(t,null,2)})]})}function Ma({error:t}){const e=t instanceof Error?t.message:String(t);return y.jsx("div",{className:"flex size-full items-center justify-center",children:y.jsx("h3",{className:"text-lg font-semibold",children:e})})}function yf(t,e){switch(t){case"silent":return mf;case"text":return()=>y.jsx(Ef,{message:e});case"detailed":return vf;default:return Ma}}function fr(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?Gr(o):pf).error("@error @info",s,l),r?.(s,l)},i=gf(t)?t.fallbackRender:yf(t.variant,t.fallbackMessage);return y.jsx(ff,{fallbackRender:i,onError:a,resetKeys:n,children:e})}function _f(){const[t]=os(),e=zo(),r=Ko(t.header.meta?.preferredEditor),n=as(),o=r?.Component??n?.Component??Li.Component;if(!o)throw new Error("No drive editor component found");return y.jsx(fr,{variant:"detailed",resetKeys:[t.header.id],loggerContext:["Connect","DriveEditor"],children:y.jsx(g.Suspense,{fallback:y.jsx(Rt,{}),children:y.jsx(Mi,{className:"flex h-full flex-col overflow-auto",children:y.jsx(o,{children:e?y.jsx(uf,{}):null})})})})}function Ha({drive:t}){const{data:e=[]}=is(),r=g.useMemo(()=>t?e.some(o=>o.collectionId===Xr("main",t.header.id)):!1,[e,t]),n=t?.state.global.icon;return n?y.jsx("img",{src:n,alt:t.header.name,height:32,width:32}):r?y.jsx(Sn,{name:"Server",size:32}):y.jsx(Sn,{name:"Hdd",size:32})}function _o({message:t}){return y.jsx("div",{className:"flex size-full items-center justify-center",children:y.jsx("h3",{className:"text-lg font-semibold",children:t})})}const Cf=t=>{const{document:e,onClose:r,onExport:n,onOpenSwitchboardLink:o}=t,a=ss(),i=ls(),[s,l]=cs(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:m,isLoading:_,refetch:S}=us(c);g.useEffect(()=>{i&&S()},[i,S]);const N=s?.header.revision.global??0,R=s?.header.revision.local??0,A=ds(u),b=fs(h),w=hs(u),T=b??w,v=!s,O=T&&u&&!T.documentTypes.includes(u)&&!T.documentTypes.includes("*"),j=N>0||R>0,M=!!s?.clipboard.length;Ad({undo:()=>l(Oi()),redo:()=>l(Di()),canUndo:j,canRedo:M}),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(O)return y.jsx(Rt,{message:"Loading editor"});if(v)return y.jsx(Rt,{message:"Loading document"});if(!A)return y.jsx(_o,{message:y.jsxs("div",{className:"text-center leading-10",children:[y.jsxs("p",{children:['Unable to open the document because the document model "',u,'" is not supported.']}),y.jsxs("p",{children:["Go to the"," ",y.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{je({type:"settings"})},children:"package manager"})," ","to install this document model"]})]})});if(!T)return y.jsx(_o,{message:y.jsxs("div",{className:"text-center leading-10",children:[y.jsx("p",{children:"Unable to open the document because no editor has been found"}),y.jsxs("p",{children:["Go to the"," ",y.jsx("button",{type:"button",className:"cursor-pointer underline",onClick:()=>{je({type:"settings"})},children:"package manager"})," ",'an editor for the "$',u,'" document type']})]})});const ue=T.Component;return y.jsx("div",{className:"relative h-full",id:"document-editor-context","data-editor":T.id,"data-document-type":u,children:i?_?y.jsx(Rt,{message:"Loading operations"}):y.jsx(Hi,{documentTitle:d??"",documentId:c??"",globalOperations:f,localOperations:m,onClose:()=>ps(!1),documentState:s.state,onCopyState:()=>{ft("Copied document state to clipboard",{type:"success"})},onCopyDocId:()=>{ft("Copied document ID to clipboard",{type:"success"})}},c):y.jsx(g.Suspense,{fallback:y.jsx(Rt,{message:"Loading editor"}),name:"EditorLoader",children:y.jsx(fr,{fallbackRender:Ma,resetKeys:[c],onError:ge,loggerContext:["Connect","DocumentEditor"],children:!W?.error&&y.jsx(ue,{context:{readMode:!!a,selectedTimelineRevision:gs(a?.startDate,a?.endDate,f)},documentId:s.header.id},c)})})})},Nf=g.lazy(()=>he(()=>import("./AddDriveModal-DgWDjHk6.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}))),Sf=g.lazy(()=>he(()=>import("./ClearStorageModal-NiCExsdP.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(()=>he(()=>import("./CookiesPolicyModal-Cn_Rk_ws.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}))),bf=g.lazy(()=>he(()=>import("./CreateDocumentModal-D-zj8JuH.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}))),xf=g.lazy(()=>he(()=>import("./DebugSettingsModal-B0NXumlG.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}))),Of=g.lazy(()=>he(()=>import("./DeleteDriveModal-vJtB3esF.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}))),Df=g.lazy(()=>he(()=>import("./DeleteItemModal-CceF4AQk.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(()=>he(()=>import("./DisclaimerModal-q1BWMBgA.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}))),wf=g.lazy(()=>he(()=>import("./DriveSettingsModal-BgNxsvW0.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}))),Pf=g.lazy(()=>he(()=>import("./ExportDocumentWithErrorsModal-ChOpQgZG.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}))),Af=g.lazy(()=>he(()=>import("./SettingsModal-vuXP88Mg.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}))),Tf=g.lazy(()=>he(()=>import("./UpgradeDriveModal-O7dF2Bbv.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}))),If=g.lazy(()=>he(()=>import("./index-Cg3B8BbM.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}))),kf={addDrive:Nf,clearStorage:Sf,cookiesPolicy:Rf,createDocument:bf,debugSettings:xf,deleteDrive:Of,deleteItem:Df,disclaimer:Lf,driveSettings:wf,exportDocumentWithErrors:Pf,inspector:If,settings:Af,upgradeDrive:Tf};function Mf(){const t=ms();if(!t?.type)return null;const e=kf[t.type];return e?y.jsx(fr,{variant:"silent",loggerContext:["Connect","Modals"],children:y.jsx(g.Suspense,{fallback:null,children:y.jsx(e,{})})}):null}function Hf(t){return t.documentModel.global}function jf(){const{isAllowedToCreateDocuments:t}=Es(),r=vs()?.filter(n=>n.documentModel.global.id!=="powerhouse/document-drive");return t?y.jsxs("div",{className:"px-6 py-4",children:[y.jsx("h3",{className:"mb-3 text-xl font-bold text-gray-600",children:"New document"}),y.jsx("div",{className:"flex w-full flex-wrap gap-4",children:r?.map(n=>{const o=Hf(n),a=n.version?` v${n.version}`:"";return y.jsx(qo,{color:"light",title:`${o.name}${a}`,"aria-description":o.description,onClick:()=>ys(o.id),children:y.jsxs("span",{className:"text-sm",children:[o.name,a]})},`${o.id}-v${n.version??1}`)})})]}):null}const Nt=8,wr=256,Pr=48,Ff=420;function Bf(){const t=g.useRef(null),r=qs().innerWidth-Ff,o=Wo().filter(h=>_s(h)),a=Math.floor(r/(wr+Nt))||1,i=Math.ceil(o.length/a),s=_n({count:i,getScrollElement:()=>t.current,estimateSize:h=>h>0?Pr+Nt:Pr,overscan:5}),l=_n({horizontal:!0,count:a,getScrollElement:()=>t.current,estimateSize:h=>h>0?wr+Nt:wr,overscan:5}),c=(h,f)=>h*a+f,d=(h,f)=>{const m=c(h,f);return o[m]||null};if(o.length===0)return y.jsx("div",{className:"mb-8 text-sm text-gray-400",children:"No documents or files 📄"});const u=(h,f)=>{const m=d(h,f);return m?y.jsx("div",{style:{marginLeft:f===0?0:Nt},children:y.jsx(ji,{fileNode:m},m.id)}):null};return y.jsx("div",{ref:t,style:{width:"100%",overflow:"auto"},children:y.jsx("div",{style:{height:`${s.getTotalSize()}px`,width:`${l.getTotalSize()}px`,position:"relative"},children:s.getVirtualItems().map(h=>y.jsx(Mo.Fragment,{children:l.getVirtualItems().map(f=>y.jsx("div",{style:{position:"absolute",top:0,left:0,marginTop:h.index===0?0:Nt,width:`${f.size}px`,height:`${Pr}px`,overflow:"hidden",transform:`translateX(${f.start}px) translateY(${h.start}px)`},children:u(h.index,f.index)},f.key))},h.key))})})}function Ce({children:t,className:e,...r}){return y.jsx(Ce.Container,{className:e,...r,children:t})}Ce.Container=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("flex grow flex-col overflow-auto",r),...n,...o,children:e})};Ce.Header=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("flex-0",r),...n,...o,children:e})};Ce.Content=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("mb-5 flex-1 px-4",r),...n,...o,children:e})};Ce.ContentSection=function({title:e,children:r,className:n,containerProps:o,...a}){return y.jsxs("div",{className:Pt(n),...o,...a,children:[e&&y.jsx("div",{className:"mb-4 text-base font-semibold text-gray-600",children:e}),y.jsx("div",{className:"flex flex-wrap gap-2",children:r})]})};Ce.Footer=function({children:e,className:r,containerProps:n,...o}){return y.jsx("div",{className:Pt("flex-0",r),...n,...o,children:e})};function Vf(t){const{className:e}=t,r=Wo(),n=Yo(),o=r.filter(s=>Cs(s)),{isDropTarget:a,dropProps:i}=Uo({target:n});return y.jsxs("div",{className:rl("rounded-md border-2 border-transparent p-2",a&&"border-dashed border-blue-100",e),...i,children:[y.jsx(Ce.ContentSection,{title:"Folders",className:"mb-4",children:o.length>0?o.map(s=>y.jsx(Fi,{folderNode:s},s.id)):y.jsx("div",{className:"mb-8 text-sm text-gray-400",children:"No documents or files 📄"})}),y.jsx(Ce.ContentSection,{title:"Documents and files",children:y.jsx("div",{className:"w-full",children:y.jsx(Bf,{})})})]})}const Uf={allowedDocumentTypes:[],isDragAndDropEnabled:!0};function ja(t){Ns(Uf);const{className:e,children:r}=t,{isDropTarget:n,dropProps:o}=Uo(),a=!!r;return y.jsxs(Ce,{className:e,children:[!a&&y.jsx(Ce.Header,{children:y.jsx(Bi,{})}),a?r:y.jsx(Ce.Content,{...o,className:n?"rounded-xl bg-blue-100":"",children:y.jsx(Vf,{})}),!a&&y.jsx(Ce.Footer,{children:y.jsx(jf,{})})]})}const Ap=Object.freeze(Object.defineProperty({__proto__:null,default:ja},Symbol.toStringTag,{value:"Module"}));function $f(){return{id:Ss,name:"Generic Drive Explorer",documentTypes:["powerhouse/document-drive"],Component:ja}}function zf(){return{id:"document-model-editor-v2",name:"Document Model Editor",documentTypes:["powerhouse/document-model"],Component:Si}}async function Kf(){const t=Vt.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=Vt.reducer,s=Vt.actions,l=Vt.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:jo(Fo(),t)}}async function Wf(){const t=Ut.documentModel.global,e=t.name,r=t.id,n=r,o=t.extension,a=t.specifications,i=Ut.reducer,s=Ut.actions,l=Ut.utils;return{id:n,name:e,documentType:r,extension:o,specifications:a,reducer:i,actions:s,utils:l,documentModel:jo(Fo(),t)}}async function Yf(){const t=await Kf(),e=await Wf(),r=zf(),n=$f();return{id:Rs,name:"Common",description:"Common",category:"Common",author:{name:"Powerhouse",website:"https://powerhousedao.com"},modules:{documentModelModules:[t,e],editorModules:[r,n]},upgradeManifests:[]}}const{externalPackagesEnabled:Gf}=ce;function Jf(t){return t.loadExternalPackages().then(e=>e.map($o))}async function Xf(){try{if(!Gf)return[];const t=await he(()=>import("./_virtual_ph_external-packages-CM1tCR4L.js"),[]);return Jf(t)}catch(t){return console.error(t),[]}}var qf=Object.defineProperty,Zf=Object.defineProperties,Qf=Object.getOwnPropertyDescriptors,Co=Object.getOwnPropertySymbols,eh=Object.prototype.hasOwnProperty,th=Object.prototype.propertyIsEnumerable,No=(t,e,r)=>e in t?qf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ar=(t,e)=>{for(var r in e||(e={}))eh.call(e,r)&&No(t,r,e[r]);if(Co)for(var r of Co(e))th.call(e,r)&&No(t,r,e[r]);return t},Tr=(t,e)=>Zf(t,Qf(e)),lt=(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())}),rh=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()}},nh={ERROR:"ERROR"},Fa=(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))(Fa||{}),Ye=class Ba extends Error{constructor(e,r){super(e),Object.setPrototypeOf(this,Ba.prototype),this.name="OpenFeatureError",this.cause=r?.cause}},oh=class Va extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Va.prototype),this.name="FlagNotFoundError",this.code="FLAG_NOT_FOUND"}},Ua=class $a extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,$a.prototype),this.name="GeneralError",this.code="GENERAL"}},ah=class za extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,za.prototype),this.name="InvalidContextError",this.code="INVALID_CONTEXT"}},ih=class Ka extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ka.prototype),this.name="ParseError",this.code="PARSE_ERROR"}},Wa=class Ya extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ya.prototype),this.name="ProviderFatalError",this.code="PROVIDER_FATAL"}},Ga=class Ja extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Ja.prototype),this.name="ProviderNotReadyError",this.code="PROVIDER_NOT_READY"}},sh=class Xa extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,Xa.prototype),this.name="TargetingKeyMissingError",this.code="TARGETING_KEY_MISSING"}},lh=class qa extends Ye{constructor(e,r){super(e,r),Object.setPrototypeOf(this,qa.prototype),this.name="TypeMismatchError",this.code="TYPE_MISMATCH"}},ch=(t,e)=>{switch(t){case"FLAG_NOT_FOUND":return new oh(e);case"PARSE_ERROR":return new ih(e);case"TYPE_MISMATCH":return new lh(e);case"TARGETING_KEY_MISSING":return new sh(e);case"INVALID_CONTEXT":return new ah(e);case"PROVIDER_NOT_READY":return new Ga(e);case"PROVIDER_FATAL":return new Wa(e);default:return new Ua(e)}},wt=(t=>(t.NOT_READY="NOT_READY",t.READY="READY",t.ERROR="ERROR",t.STALE="STALE",t.FATAL="FATAL",t.RECONCILING="RECONCILING",t))(wt||{}),we=(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))(we||{}),uh={READY:"PROVIDER_READY",ERROR:"PROVIDER_ERROR",FATAL:"PROVIDER_ERROR",STALE:"PROVIDER_STALE",RECONCILING:"PROVIDER_RECONCILING",NOT_READY:void 0},Za=(t,e)=>!e&&t==="PROVIDER_READY"||uh[e]===t,Qa=class{error(...t){console.error(...t)}warn(...t){console.warn(...t)}info(){}debug(){}},dh=["error","warn","info","debug"],an=class{constructor(t){this.fallbackLogger=new Qa;try{for(const e of dh)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)}}},fh=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=>lt(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 an(t),this}get _logger(){var t,e;return(e=this._eventLogger)!=null?e:(t=this.globalLogger)==null?void 0:t.call(this)}};function hh(t){return typeof t=="string"}function ct(t){return hh(t)?t:void 0}function ph(t){return typeof t=="object"}function _e(t){return ph(t)?t:void 0}function So(t){return typeof t<"u"&&t!==null}var Wr=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--}},gh=class{constructor(t){this._hooks=[],this._context={},this._logger=new Qa,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 an(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(Za(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=ct(t),u=(r=_e(t))!=null?r:_e(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 Ua(`Provider '${u.metadata.name}' is intended for use on the ${u.runsOn}.`);const m=this.getAssociatedEventEmitters(d);let _;const S=new Wr(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 N;S.status=this._statusEnumType.READY,this.getAssociatedEventEmitters(d).forEach(R=>{R?.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}),(N=this._apiEmitter)==null||N.emit("PROVIDER_READY",{clientName:d,domain:d,providerName:f})}))==null?void 0:i.catch(N=>{var R;throw N?.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:N?.message})}),(R=this._apiEmitter)==null||R.emit("PROVIDER_ERROR",{clientName:d,domain:d,providerName:f,message:N?.message}),N}):(S.status=this._statusEnumType.READY,m.forEach(N=>{N?.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,m),this.allProviders.includes(h)||(c=(l=h?.onClose)==null?void 0:l.call(h))==null||c.catch(N=>{this._logger.error(`error closing provider: ${N?.message}, ${N?.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(we).forEach(o=>{var a;return(a=n.events)==null?void 0:a.addHandler(o,i=>lt(this,null,function*(){r.emit(o,Tr(Ar({},i),{clientName:t,domain:t,providerName:n.metadata.name}))}))}),r}getUnboundEmitters(){const t=[...this._domainScopedProviders.keys()];return[...[...this._clientEvents.keys()].filter(So).filter(n=>!t.includes(n)).map(n=>this._clientEvents.get(n)),this._clientEvents.get(void 0)].filter(So)}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(we).map(i=>[i,l=>lt(this,null,function*(){n.forEach(c=>{c?.emit(i,Tr(Ar({},l),{clientName:r,domain:r,providerName:e.metadata.name}))}),this._apiEmitter.emit(i,Tr(Ar({},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 lt(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=>lt(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 lt(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 Wr(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)}},mh=Object.create,sn=Object.defineProperty,Eh=Object.defineProperties,vh=Object.getOwnPropertyDescriptor,yh=Object.getOwnPropertyDescriptors,ei=Object.getOwnPropertyNames,Ro=Object.getOwnPropertySymbols,ti=Object.getPrototypeOf,ri=Object.prototype.hasOwnProperty,_h=Object.prototype.propertyIsEnumerable,Ch=Reflect.get,bo=(t,e,r)=>e in t?sn(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Ir=(t,e)=>{for(var r in e||(e={}))ri.call(e,r)&&bo(t,r,e[r]);if(Ro)for(var r of Ro(e))_h.call(e,r)&&bo(t,r,e[r]);return t},Nh=(t,e)=>Eh(t,yh(e)),Sh=(t,e)=>function(){return e||(0,t[ei(t)[0]])((e={exports:{}}).exports,e),e.exports},Rh=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of ei(e))!ri.call(t,o)&&o!==r&&sn(t,o,{get:()=>e[o],enumerable:!(n=vh(e,o))||n.enumerable});return t},bh=(t,e,r)=>(r=t!=null?mh(ti(t)):{},Rh(sn(r,"default",{value:t,enumerable:!0}),t)),xh=(t,e,r)=>Ch(ti(t),r,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())}),Oh=Sh({"../../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 m=new a(u,h||c,f),_=n?n+d:d;return c._events[_]?c._events[_].fn?c._events[_]=[c._events[_],m]:c._events[_].push(m):(c._events[_]=m,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,m=h.length,_=new Array(m);f<m;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,m,_){var S=n?n+d:d;if(!this._events[S])return!1;var N=this._events[S],R=arguments.length,A,b;if(N.fn){switch(N.once&&this.removeListener(d,N.fn,void 0,!0),R){case 1:return N.fn.call(N.context),!0;case 2:return N.fn.call(N.context,u),!0;case 3:return N.fn.call(N.context,u,h),!0;case 4:return N.fn.call(N.context,u,h,f),!0;case 5:return N.fn.call(N.context,u,h,f,m),!0;case 6:return N.fn.call(N.context,u,h,f,m,_),!0}for(b=1,A=new Array(R-1);b<R;b++)A[b-1]=arguments[b];N.fn.apply(N.context,A)}else{var w=N.length,T;for(b=0;b<w;b++)switch(N[b].once&&this.removeListener(d,N[b].fn,void 0,!0),R){case 1:N[b].fn.call(N[b].context);break;case 2:N[b].fn.call(N[b].context,u);break;case 3:N[b].fn.call(N[b].context,u,h);break;case 4:N[b].fn.call(N[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];N[b].fn.apply(N[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 m=n?n+d:d;if(!this._events[m])return this;if(!u)return s(this,m),this;var _=this._events[m];if(_.fn)_.fn===u&&(!f||_.once)&&(!h||_.context===h)&&s(this,m);else{for(var S=0,N=[],R=_.length;S<R;S++)(_[S].fn!==u||f&&!_[S].once||h&&_[S].context!==h)&&N.push(_[S]);N.length?this._events[m]=N.length===1?N[0]:N:s(this,m)}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)}}),Dh="No-op",Lh=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:Dh}}},xo=new Lh,wh=bh(Oh()),Oo=class extends fh{constructor(){super(),this.eventEmitter=new wh.default}},Ph=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),Za(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 an(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(Ir({},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=Ir({},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 rh}));let u;try{this.beforeHooks(s,d,o),this.shortCircuitIfNotReady();const h=e.call(this._provider,t,r,c,this._logger),f=Nh(Ir({},h),{flagMetadata:Object.freeze((i=h.flagMetadata)!=null?i:{}),flagKey:t});if(f.errorCode){const m=ch(f.errorCode,f.errorMessage);this.errorHooks(l,d,m,o),u=this.getErrorEvaluationDetails(t,r,m,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===wt.NOT_READY)throw new Ga("provider has not yet initialized");if(this.providerStatus===wt.FATAL)throw new Wa("provider is in an irrecoverable error state")}getErrorEvaluationDetails(t,e,r,n={}){const o=r?.message;return{errorCode:r?.code||Fa.GENERAL,errorMessage:o,value:e,reason:nh.ERROR,flagMetadata:Object.freeze(n),flagKey:t}}},Do=Symbol.for("@openfeature/web-sdk/api"),Lo=globalThis,Ah=class Yr extends gh{constructor(){super("client"),this._statusEnumType=wt,this._apiEmitter=new Oo,this._defaultProvider=new Wr(xo,wt.NOT_READY,this._statusEnumType),this._domainScopedProviders=new Map,this._createEventEmitter=()=>new Oo}static getInstance(){const e=Lo[Do];if(e)return e;const r=new Yr;return Lo[Do]=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 st(this,null,function*(){const o=ct(e),a=_e(o?r:e),i=_e(o?n:r);i&&(o?this._domainScopedContext.set(o,i):this._context=i),yield this.setAwaitableProvider(o,a)})}setProvider(e,r,n){const o=ct(e),a=_e(o?r:e),i=_e(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 st(this,null,function*(){var n,o;const a=ct(e),i=(o=(n=_e(e))!=null?n:_e(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=ct(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 st(this,null,function*(){const r=ct(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 st(this,null,function*(){yield this.clearContext(),yield Promise.allSettled(Array.from(this._domainScopedProviders.keys()).map(e=>this.clearContext(e)))})}getClient(e,r){return new Ph(()=>this.getProviderForClient(e),()=>this.getProviderStatus(e),()=>this.buildAndCacheEventEmitterForClient(e),n=>this.getContext(n),()=>this.getHooks(),()=>this._logger,{domain:e,version:r})}clearProviders(){return st(this,null,function*(){yield xh(Yr.prototype,this,"clearProvidersAndSetDefault").call(this,xo),this._domainScopedContext.clear()})}runProviderContextChangeHandler(e,r,n,o){return st(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(we.Reconciling,{domain:e,providerName:u})}),(s=this._apiEmitter)==null||s.emit(we.Reconciling,{domain:e,providerName:u}),yield h,r.decrementPendingContextChanges())}r.status=this._statusEnumType.READY,r.allContextChangesSettled&&(this.getAssociatedEventEmitters(e).forEach(h=>{h?.emit(we.ContextChanged,{clientName:e,domain:e,providerName:u})}),(l=this._apiEmitter)==null||l.emit(we.ContextChanged,{clientName:e,domain:e,providerName:u}))}catch(h){if(r.decrementPendingContextChanges(),r.status=this._statusEnumType.ERROR,r.allContextChangesSettled){const f=h,m=`Error running ${u}'s context change handler: ${f?.message}`;(c=this._logger)==null||c.error(`${m}`,h),this.getAssociatedEventEmitters(e).forEach(_=>{_?.emit(we.Error,{clientName:e,domain:e,providerName:u,message:m})}),(d=this._apiEmitter)==null||d.emit(we.Error,{clientName:e,domain:e,providerName:u,message:m})}}})}},wo=Ah.getInstance();class Th{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 Ih(t){const e=typeof window<"u"?new URLSearchParams(window.location.search):new URLSearchParams,r=new Th(e);await wo.setProviderAndWait(r);const n=new Map,o=wo.getClient();n.set(Po,o.getBooleanValue(Po,kh)),n.set(Ao,o.getBooleanValue(Ao,Mh)),n.set(To,o.getBooleanValue(To,Hh));const i=e.has(kr)?o.getBooleanValue(kr,jh):ce.content.inspectorEnabled;n.set(kr,i);const s=e.get("LOG_LEVEL");if(s){const l=["verbose","debug","info","warn","error"];l.includes(s.toLowerCase())?(Ho(s.toLowerCase()),$e.info("Log level set to @level via query param",s.toLowerCase())):$e.warn("Invalid LOG_LEVEL query param: @param. Valid values: @validLevels",s,l.join(", "))}return n}const Po="FEATURE_LEGACY_READ_ENABLED",kh=!1,Ao="FEATURE_LEGACY_WRITE_ENABLED",Mh=!1,To="FEATURE_CHANNEL_SYNC_ENABLED",Hh=!0,kr="FEATURE_INSPECTOR_ENABLED",jh=!1;async function Tp(){const t=window.ph?.reactorClientModule?.pg;if(!t)throw new Error("PGlite not found");await zs(t),await t.close()}async function Fh(t){const e=await Yf(),r=[e,...t];return Jr([e,...t]),r}async function Bh(){if(window.ph||(window.ph={}),window.ph.loading)return;window.ph.loading=!0,bs(),xs(ft);const t=await Ih();$e.info("Features: @features",JSON.stringify(Object.fromEntries(t),null,2));const e=await Os.create(),r=await new Ds().withKeyPairStorage(e).build(),n=await new Ls("connect",{basename:dt.routerBasename,baseUrl:dt.renownUrl}).withCrypto(r).build(),o=await Xf(),a=await Fh(o),i=a.flatMap(R=>R.modules.documentModelModules).filter(R=>R!==void 0),s=a.flatMap(R=>R.upgradeManifests),l=await jd(i,s,n),c=Fd();if(c.length>0){const R=l.reactorModule?.syncModule?.syncManager;R&&await Bd(R,c)}const d=await ws(l.client),u=Uh();if(u){const R=u.split("/").pop()??"";await l.reactorModule?.syncModule?.syncManager.add(`remote-drive-${R}`,Xr("main",R),{type:"gql",parameters:{url:u}})}const h=window.location.pathname,f=Ps(h),m=As(h),_=Vh();await Ts(_,n);const S=new Is(l.client);ks(dt),Ms(l),Hs(l.client),js(S),Fs(r),Bs(n.did),Vs(n),Us(d),Jr(a),Jt(f),Mr(m),$s(t),l.client.subscribe({type:"powerhouse/document-drive"},R=>{$e.verbose("ReactorClient subscription event: @event",R),Cn(l.client).catch(A=>$e.error("@error",A))}),await Cn(l.client),window.ph.loading=!1}function Vh(){const e=new URLSearchParams(window.location.search).get("user");return e?decodeURIComponent(e):void 0}function Uh(){const e=new URLSearchParams(window.location.search).get("driveUrl");return e?decodeURIComponent(e):void 0}function $h(){const t=Go();g.useEffect(()=>{let e=null;if(t){const{credential:r,...n}=t;e={id:n.did,username:n.ens?.name,...n}}nl(e)},[t])}function zh(){return y.jsx("div",{className:"h-screen",children:y.jsx("div",{className:"flex h-screen items-stretch overflow-auto",role:"presentation",tabIndex:0,children:y.jsxs(g.Suspense,{name:"Root",children:[y.jsx(sp,{}),y.jsx("div",{className:"relative flex-1 overflow-auto",children:y.jsx(qu,{})})]})})})}function Kh(){const[t]=Jo(),e=Yo(),r=zo();g.useEffect(()=>{r||Ks(Cl)},[r]),g.useEffect(()=>{t||Ws(Nl)},[t]);const n=!r&&!t&&!e;return y.jsx(Wh,{children:n?y.jsx(Gh,{}):y.jsx(_f,{})})}function Wh({children:t}){return y.jsx("div",{className:"flex h-full flex-col overflow-auto",id:"content-view",children:t})}function Yh({drive:t}){const r=Ko(t.header.meta?.preferredEditor)?.name||"Drive Explorer App";return y.jsx(Ui,{title:t.state.global.name,description:r,icon:y.jsx(Ha,{drive:t}),onClick:()=>Jt(t)},t.header.id)}function Gh(){const t=Xo(),e=ce;return y.jsxs(Vo,{children:[t?.map(r=>y.jsx(Yh,{drive:r},r.header.id)),e.drives.addDriveEnabled&&y.jsx(Vi,{})]})}const Jh=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"})))),Xh=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"})),qh="https://apps.powerhouse.io/sky-atlas/staging/switchboard",Zh=2e3;function Qh(){const{search:t}=dr();return g.useMemo(()=>{const r=new URLSearchParams(t).get("reactorUrl")??qh;return r.endsWith("/")?r:`${r}/`},[t])}async function ep(t,e){const r=Zs`
|
|
15
15
|
mutation ForkAtlas($docId: PHID) {
|
|
16
16
|
ForkAtlas(docId: $docId)
|
|
17
17
|
}
|