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