@powerhousedao/connect 5.2.0-staging.6 → 5.2.0-staging.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/assets/{AddDriveModal-BPfg2aVp.js → AddDriveModal-_vu7AMGe.js} +1 -1
  2. package/dist/assets/{ClearStorageModal-DkzEs3J3.js → ClearStorageModal-BvZSnafT.js} +1 -1
  3. package/dist/assets/{CookiesPolicyModal-9HTOqDGi.js → CookiesPolicyModal-D40WGs4P.js} +1 -1
  4. package/dist/assets/{CreateDocumentModal-BVrngAVh.js → CreateDocumentModal-D1yLNfQx.js} +1 -1
  5. package/dist/assets/{DebugSettingsModal-C3F03ZDt.js → DebugSettingsModal-DyVtQ2I-.js} +1 -1
  6. package/dist/assets/{DeleteDriveModal-BwBYVng9.js → DeleteDriveModal-CNvaz9vw.js} +1 -1
  7. package/dist/assets/{DeleteItemModal-DQwVlqv-.js → DeleteItemModal-z6JNVv8x.js} +1 -1
  8. package/dist/assets/{DisclaimerModal-BY7I1-64.js → DisclaimerModal-rn0m214O.js} +1 -1
  9. package/dist/assets/{DriveSettingsModal-BcUGdfi5.js → DriveSettingsModal-C825_fYq.js} +1 -1
  10. package/dist/assets/{ExportDocumentWithErrorsModal-D18AVOle.js → ExportDocumentWithErrorsModal-BJsBxrLB.js} +1 -1
  11. package/dist/assets/{SettingsModal-BbOGnZB2.js → SettingsModal-DhnUK-J7.js} +1 -1
  12. package/dist/assets/{UpgradeDriveModal-DqMxQCoF.js → UpgradeDriveModal-BHLG5Qnh.js} +1 -1
  13. package/dist/assets/{design_system-CivzDHIq.js → design_system-C0Tt1eiW.js} +1 -1
  14. package/dist/assets/{design_system_connect-BRZJ3Vw4.js → design_system_connect-B6I_MUGW.js} +1 -1
  15. package/dist/assets/{design_system_ui-D74NrKvC.js → design_system_ui-BV3nUhle.js} +1 -1
  16. package/dist/assets/{document_engineering-CorBRLgC.js → document_engineering-BQPcn-UK.js} +1 -1
  17. package/dist/assets/{document_model_editor-BkDmLrc0.js → document_model_editor-DmfEkpqv.js} +4 -4
  18. package/dist/assets/{drive_explorer-CRZ83OvJ.js → drive_explorer-Lf29Qz6V.js} +2 -2
  19. package/dist/assets/{graphql-editor-bK8aKD9d.js → graphql-editor-DlpAk7zZ.js} +1 -1
  20. package/dist/assets/{hooks-C4xwrn3a.js → hooks-iTEiHphQ.js} +1 -1
  21. package/dist/assets/{index-mtUXtVai.js → index-Be5JC2Ut.js} +2 -2
  22. package/dist/assets/{index-BaXh7H_G.js → index-DhqK6YC5.js} +3 -3
  23. package/dist/assets/{json-editor-Ek6O-GGf.js → json-editor-D0NUYx1G.js} +1 -1
  24. package/dist/assets/{nodefs-DwD3CLeV.js → nodefs-BC0-fzUm.js} +1 -1
  25. package/dist/assets/{opfs-ahp-CXiEKQWP.js → opfs-ahp-B_L419WI.js} +1 -1
  26. package/dist/assets/{reactor_browser-BhmwuJ3V.js → reactor_browser-OaR-t_sy.js} +5 -5
  27. package/dist/assets/{state-schemas-CCZ_uel9.js → state-schemas-DtmN9f-E.js} +2 -2
  28. package/dist/index.html +7 -7
  29. package/lib/package.copy.json +1 -1
  30. package/lib/tsconfig.tsbuildinfo +1 -1
  31. package/package.copy.json +1 -1
  32. package/package.json +10 -10
@@ -1 +1 @@
1
- import{j as l}from"./document_model_editor-BkDmLrc0.js";import{b as g,s as f,t,L as R,i as y,f as T,x as m,c as h,a as S,u as b,E as k,g as u,h as j,k as C,j as E,l as x,m as $,n as N,o as V,p as Z,q as w,r as W,v as X,w as Y}from"./hooks-C4xwrn3a.js";import{r as Q}from"./sentry_react-cODD7zWc.js";import"./graphql-BS4Brs_E.js";import"./drive_explorer-CRZ83OvJ.js";import"./react/jsx-runtime-DldvXD6N.js";import"./document_model-DB4SzBSe.js";import"./zod-BpTyxkjy.js";import"./react-DQSxOgtG.js";import"./design_system-CivzDHIq.js";import"./tailwind_merge-Dr4f9Rms.js";import"./reactor_browser-BhmwuJ3V.js";import"./document_drive-BuVpBb4l.js";import"./config-CU-aFfVJ.js";import"./react-dom-D6zQJsh6.js";import"./design_system_connect-BRZJ3Vw4.js";import"./design_system_ui-D74NrKvC.js";import"./react-dom/client-BVPiT_FE.js";import"./sentry_browser-B4YoBIIG.js";const L=f({String:t.string,Number:t.number,"True False":t.bool,PropertyName:t.propertyName,Null:t.null,", :":t.separator,"[ ]":t.squareBracket,"{ }":t.brace}),H=g.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[L],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),q=()=>a=>{try{JSON.parse(a.state.doc.toString())}catch(r){if(!(r instanceof SyntaxError))throw r;const e=v(r,a.state.doc);return[{from:e,message:r.message,severity:"error",to:e}]}return[]};function v(a,r){let e;return(e=a.message.match(/at position (\d+)/))?Math.min(+e[1],r.length):(e=a.message.match(/at line (\d+) column (\d+)/))?Math.min(r.line(+e[1]).from+ +e[2]-1,r.length):0}const d=R.define({name:"json",parser:H.configure({props:[y.add({Object:m({except:/^\s*\}/}),Array:m({except:/^\s*\]/})}),T.add({"Object Array":h})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function G(){return new S(d)}const ie=Q.memo(function(r){const{doc:e,readonly:o=!1,updateDocumentInModel:n}=r,{editorRef:i,viewRef:O,updateListenerCompartment:c,focusHandlerCompartment:p,pasteHandlerCompartment:P,timeoutRef:s}=b();return Q.useEffect(()=>{O.current||(O.current=new k({state:u.create({doc:e,extensions:[...j,C.of($),E,d,G(),x(q()),c.current.of(N(o,s,n)),p.current.of(V(o,s,n)),P.current.of(Z(o,s,n)),u.readOnly.of(o)]}),parent:i.current}),w(O.current))},[]),W(O),X(O.current,o,s,n,{updateListener:c.current,focusHandler:p.current,pasteHandler:P.current}),Y(O.current,e),l.jsx("div",{ref:i})});export{ie as default};
1
+ import{j as l}from"./document_model_editor-DmfEkpqv.js";import{b as g,s as f,t,L as R,i as y,f as T,x as m,c as h,a as S,u as b,E as k,g as u,h as j,k as C,j as E,l as x,m as $,n as N,o as V,p as Z,q as w,r as W,v as X,w as Y}from"./hooks-iTEiHphQ.js";import{r as Q}from"./sentry_react-cODD7zWc.js";import"./graphql-BS4Brs_E.js";import"./drive_explorer-Lf29Qz6V.js";import"./react/jsx-runtime-DldvXD6N.js";import"./document_model-DB4SzBSe.js";import"./zod-BpTyxkjy.js";import"./react-DQSxOgtG.js";import"./design_system-C0Tt1eiW.js";import"./tailwind_merge-Dr4f9Rms.js";import"./reactor_browser-OaR-t_sy.js";import"./document_drive-BuVpBb4l.js";import"./config-CU-aFfVJ.js";import"./react-dom-D6zQJsh6.js";import"./design_system_connect-B6I_MUGW.js";import"./design_system_ui-BV3nUhle.js";import"./react-dom/client-BVPiT_FE.js";import"./sentry_browser-B4YoBIIG.js";const L=f({String:t.string,Number:t.number,"True False":t.bool,PropertyName:t.propertyName,Null:t.null,", :":t.separator,"[ ]":t.squareBracket,"{ }":t.brace}),H=g.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"⚠ JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[L],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0}),q=()=>a=>{try{JSON.parse(a.state.doc.toString())}catch(r){if(!(r instanceof SyntaxError))throw r;const e=v(r,a.state.doc);return[{from:e,message:r.message,severity:"error",to:e}]}return[]};function v(a,r){let e;return(e=a.message.match(/at position (\d+)/))?Math.min(+e[1],r.length):(e=a.message.match(/at line (\d+) column (\d+)/))?Math.min(r.line(+e[1]).from+ +e[2]-1,r.length):0}const d=R.define({name:"json",parser:H.configure({props:[y.add({Object:m({except:/^\s*\}/}),Array:m({except:/^\s*\]/})}),T.add({"Object Array":h})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function G(){return new S(d)}const ie=Q.memo(function(r){const{doc:e,readonly:o=!1,updateDocumentInModel:n}=r,{editorRef:i,viewRef:O,updateListenerCompartment:c,focusHandlerCompartment:p,pasteHandlerCompartment:P,timeoutRef:s}=b();return Q.useEffect(()=>{O.current||(O.current=new k({state:u.create({doc:e,extensions:[...j,C.of($),E,d,G(),x(q()),c.current.of(N(o,s,n)),p.current.of(V(o,s,n)),P.current.of(Z(o,s,n)),u.readOnly.of(o)]}),parent:i.current}),w(O.current))},[]),W(O),X(O.current,o,s,n,{updateListener:c.current,focusHandler:p.current,pasteHandler:P.current}),Y(O.current,e),l.jsx("div",{ref:i})});export{ie as default};
@@ -1 +1 @@
1
- import{b1 as m,b2 as o,b3 as s}from"./reactor_browser-BhmwuJ3V.js";import"./document_model-DB4SzBSe.js";import"./zod-BpTyxkjy.js";import"./react-DQSxOgtG.js";import"./document_drive-BuVpBb4l.js";import"./graphql-BS4Brs_E.js";import"./config-CU-aFfVJ.js";import"./drive_explorer-CRZ83OvJ.js";import"./sentry_react-cODD7zWc.js";import"./sentry_browser-B4YoBIIG.js";import"./document_model_editor-BkDmLrc0.js";import"./react/jsx-runtime-DldvXD6N.js";import"./design_system-CivzDHIq.js";import"./tailwind_merge-Dr4f9Rms.js";import"./react-dom-D6zQJsh6.js";import"./design_system_connect-BRZJ3Vw4.js";import"./design_system_ui-D74NrKvC.js";import"./react-dom/client-BVPiT_FE.js";s();var R=class extends m{constructor(t){super(t),this.rootDir=(void 0)(t),(void 0)((void 0)(this.rootDir))||(void 0)(this.rootDir)}async init(t,r){return this.pg=t,{emscriptenOpts:{...r,preRun:[...r.preRun||[],i=>{let p=i.FS.filesystems.NODEFS;i.FS.mkdir(o),i.FS.mount(p,{root:this.rootDir},o)}]}}}async closeFs(){this.pg.Module.FS.quit()}};export{R as NodeFS};
1
+ import{b1 as m,b2 as o,b3 as s}from"./reactor_browser-OaR-t_sy.js";import"./document_model-DB4SzBSe.js";import"./zod-BpTyxkjy.js";import"./react-DQSxOgtG.js";import"./document_drive-BuVpBb4l.js";import"./graphql-BS4Brs_E.js";import"./config-CU-aFfVJ.js";import"./drive_explorer-Lf29Qz6V.js";import"./sentry_react-cODD7zWc.js";import"./sentry_browser-B4YoBIIG.js";import"./document_model_editor-DmfEkpqv.js";import"./react/jsx-runtime-DldvXD6N.js";import"./design_system-C0Tt1eiW.js";import"./tailwind_merge-Dr4f9Rms.js";import"./react-dom-D6zQJsh6.js";import"./design_system_connect-B6I_MUGW.js";import"./design_system_ui-BV3nUhle.js";import"./react-dom/client-BVPiT_FE.js";s();var R=class extends m{constructor(t){super(t),this.rootDir=(void 0)(t),(void 0)((void 0)(this.rootDir))||(void 0)(this.rootDir)}async init(t,r){return this.pg=t,{emscriptenOpts:{...r,preRun:[...r.preRun||[],i=>{let p=i.FS.filesystems.NODEFS;i.FS.mkdir(o),i.FS.mount(p,{root:this.rootDir},o)}]}}}async closeFs(){this.pg.Module.FS.quit()}};export{R as NodeFS};
@@ -1,3 +1,3 @@
1
- import{b4 as H,b5 as m,b6 as o,b7 as s,b8 as A,b3 as C,b9 as P,ba as x}from"./reactor_browser-BhmwuJ3V.js";import"./document_model-DB4SzBSe.js";import"./zod-BpTyxkjy.js";import"./react-DQSxOgtG.js";import"./document_drive-BuVpBb4l.js";import"./graphql-BS4Brs_E.js";import"./config-CU-aFfVJ.js";import"./drive_explorer-CRZ83OvJ.js";import"./sentry_react-cODD7zWc.js";import"./sentry_browser-B4YoBIIG.js";import"./document_model_editor-BkDmLrc0.js";import"./react/jsx-runtime-DldvXD6N.js";import"./design_system-CivzDHIq.js";import"./tailwind_merge-Dr4f9Rms.js";import"./react-dom-D6zQJsh6.js";import"./design_system_connect-BRZJ3Vw4.js";import"./design_system_ui-D74NrKvC.js";import"./react-dom/client-BVPiT_FE.js";C();var B="state.txt",L="data",$={DIR:16384,FILE:32768},T,I,E,_,w,k,y,j,N,b,S,l,v,O,M,g,f,D,R,W,ht=class extends H{constructor(t,{initialPoolSize:e=1e3,maintainedPoolSize:a=100,debug:i=!1}={}){super(t,{debug:i}),m(this,l),m(this,T),m(this,I),m(this,E),m(this,_),m(this,w),m(this,k,new Map),m(this,y,new Map),m(this,j,0),m(this,N,new Map),m(this,b,new Map),this.lastCheckpoint=0,this.checkpointInterval=1e3*60,this.poolCounter=0,m(this,S,new Set),this.initialPoolSize=e,this.maintainedPoolSize=a}async init(t,e){return await o(this,l,v).call(this),super.init(t,e)}async syncToFs(t=!1){await this.maybeCheckpointState(),await this.maintainPool(),t||this.flush()}async closeFs(){for(let t of s(this,y).values())t.close();s(this,w).flush(),s(this,w).close(),this.pg.Module.FS.quit()}async maintainPool(t){t=t||this.maintainedPoolSize;let e=t-this.state.pool.length,a=[];for(let i=0;i<e;i++)a.push(new Promise(async h=>{++this.poolCounter;let r=`${(Date.now()-1704063600).toString(16).padStart(8,"0")}-${this.poolCounter.toString(16).padStart(8,"0")}`,c=await s(this,E).getFileHandle(r,{create:!0}),d=await c.createSyncAccessHandle();s(this,k).set(r,c),s(this,y).set(r,d),o(this,l,M).call(this,{opp:"createPoolFile",args:[r]}),this.state.pool.push(r),h()}));for(let i=0;i>e;i--)a.push(new Promise(async h=>{let r=this.state.pool.pop();o(this,l,M).call(this,{opp:"deletePoolFile",args:[r]});let c=s(this,k).get(r);s(this,y).get(r)?.close(),await s(this,E).removeEntry(c.name),s(this,k).delete(r),s(this,y).delete(r),h()}));await Promise.all(a)}_createPoolFileState(t){this.state.pool.push(t)}_deletePoolFileState(t){let e=this.state.pool.indexOf(t);e>-1&&this.state.pool.splice(e,1)}async maybeCheckpointState(){Date.now()-this.lastCheckpoint>this.checkpointInterval&&await this.checkpointState()}async checkpointState(){let t=new TextEncoder().encode(JSON.stringify(this.state));s(this,w).truncate(0),s(this,w).write(t,{at:0}),s(this,w).flush(),this.lastCheckpoint=Date.now()}flush(){for(let t of s(this,S))try{t.flush()}catch{}s(this,S).clear()}chmod(t,e){o(this,l,O).call(this,{opp:"chmod",args:[t,e]},()=>{this._chmodState(t,e)})}_chmodState(t,e){let a=o(this,l,f).call(this,t);a.mode=e}close(t){let e=o(this,l,D).call(this,t);s(this,N).delete(t),s(this,b).delete(e)}fstat(t){let e=o(this,l,D).call(this,t);return this.lstat(e)}lstat(t){let e=o(this,l,f).call(this,t),a=e.type==="file"?s(this,y).get(e.backingFilename).getSize():0,i=4096;return{dev:0,ino:0,mode:e.mode,nlink:1,uid:0,gid:0,rdev:0,size:a,blksize:i,blocks:Math.ceil(a/i),atime:e.lastModified,mtime:e.lastModified,ctime:e.lastModified}}mkdir(t,e){o(this,l,O).call(this,{opp:"mkdir",args:[t,e]},()=>{this._mkdirState(t,e)})}_mkdirState(t,e){let a=o(this,l,g).call(this,t),i=a.pop(),h=[],r=this.state.root;for(let d of a){if(h.push(t),!Object.prototype.hasOwnProperty.call(r.children,d))if(e?.recursive)this.mkdir(h.join("/"));else throw new p("ENOENT","No such file or directory");if(r.children[d].type!=="directory")throw new p("ENOTDIR","Not a directory");r=r.children[d]}if(Object.prototype.hasOwnProperty.call(r.children,i))throw new p("EEXIST","File exists");let c={type:"directory",lastModified:Date.now(),mode:e?.mode||$.DIR,children:{}};r.children[i]=c}open(t,e,a){if(o(this,l,f).call(this,t).type!=="file")throw new p("EISDIR","Is a directory");let i=o(this,l,R).call(this);return s(this,N).set(i,t),s(this,b).set(t,i),i}readdir(t){let e=o(this,l,f).call(this,t);if(e.type!=="directory")throw new p("ENOTDIR","Not a directory");return Object.keys(e.children)}read(t,e,a,i,h){let r=o(this,l,D).call(this,t),c=o(this,l,f).call(this,r);if(c.type!=="file")throw new p("EISDIR","Is a directory");return s(this,y).get(c.backingFilename).read(new Uint8Array(e.buffer,a,i),{at:h})}rename(t,e){o(this,l,O).call(this,{opp:"rename",args:[t,e]},()=>{this._renameState(t,e,!0)})}_renameState(t,e,a=!1){let i=o(this,l,g).call(this,t),h=i.pop(),r=o(this,l,f).call(this,i.join("/"));if(!Object.prototype.hasOwnProperty.call(r.children,h))throw new p("ENOENT","No such file or directory");let c=o(this,l,g).call(this,e),d=c.pop(),n=o(this,l,f).call(this,c.join("/"));if(a&&Object.prototype.hasOwnProperty.call(n.children,d)){let u=n.children[d];s(this,y).get(u.backingFilename).truncate(0),this.state.pool.push(u.backingFilename)}n.children[d]=r.children[h],delete r.children[h]}rmdir(t){o(this,l,O).call(this,{opp:"rmdir",args:[t]},()=>{this._rmdirState(t)})}_rmdirState(t){let e=o(this,l,g).call(this,t),a=e.pop(),i=o(this,l,f).call(this,e.join("/"));if(!Object.prototype.hasOwnProperty.call(i.children,a))throw new p("ENOENT","No such file or directory");let h=i.children[a];if(h.type!=="directory")throw new p("ENOTDIR","Not a directory");if(Object.keys(h.children).length>0)throw new p("ENOTEMPTY","Directory not empty");delete i.children[a]}truncate(t,e=0){let a=o(this,l,f).call(this,t);if(a.type!=="file")throw new p("EISDIR","Is a directory");let i=s(this,y).get(a.backingFilename);if(!i)throw new p("ENOENT","No such file or directory");i.truncate(e),s(this,S).add(i)}unlink(t){o(this,l,O).call(this,{opp:"unlink",args:[t]},()=>{this._unlinkState(t,!0)})}_unlinkState(t,e=!1){let a=o(this,l,g).call(this,t),i=a.pop(),h=o(this,l,f).call(this,a.join("/"));if(!Object.prototype.hasOwnProperty.call(h.children,i))throw new p("ENOENT","No such file or directory");let r=h.children[i];if(r.type!=="file")throw new p("EISDIR","Is a directory");if(delete h.children[i],e){let c=s(this,y).get(r.backingFilename);c?.truncate(0),s(this,S).add(c),s(this,b).has(t)&&(s(this,N).delete(s(this,b).get(t)),s(this,b).delete(t))}this.state.pool.push(r.backingFilename)}utimes(t,e,a){o(this,l,O).call(this,{opp:"utimes",args:[t,e,a]},()=>{this._utimesState(t,e,a)})}_utimesState(t,e,a){let i=o(this,l,f).call(this,t);i.lastModified=a}writeFile(t,e,a){let i=o(this,l,g).call(this,t),h=i.pop(),r=o(this,l,f).call(this,i.join("/"));if(Object.prototype.hasOwnProperty.call(r.children,h)){let n=r.children[h];n.lastModified=Date.now(),o(this,l,M).call(this,{opp:"setLastModified",args:[t,n.lastModified]})}else{if(this.state.pool.length===0)throw new Error("No more file handles available in the pool");let n={type:"file",lastModified:Date.now(),mode:a?.mode||$.FILE,backingFilename:this.state.pool.pop()};r.children[h]=n,o(this,l,M).call(this,{opp:"createFileNode",args:[t,n]})}let c=r.children[h],d=s(this,y).get(c.backingFilename);e.length>0&&(d.write(typeof e=="string"?new TextEncoder().encode(e):new Uint8Array(e),{at:0}),t.startsWith("/pg_wal")&&s(this,S).add(d))}_createFileNodeState(t,e){let a=o(this,l,g).call(this,t),i=a.pop(),h=o(this,l,f).call(this,a.join("/"));h.children[i]=e;let r=this.state.pool.indexOf(e.backingFilename);return r>-1&&this.state.pool.splice(r,1),e}_setLastModifiedState(t,e){let a=o(this,l,f).call(this,t);a.lastModified=e}write(t,e,a,i,h){let r=o(this,l,D).call(this,t),c=o(this,l,f).call(this,r);if(c.type!=="file")throw new p("EISDIR","Is a directory");let d=s(this,y).get(c.backingFilename);if(!d)throw new p("EBADF","Bad file descriptor");let n=d.write(new Uint8Array(e,a,i),{at:h});return r.startsWith("/pg_wal")&&s(this,S).add(d),n}};T=new WeakMap,I=new WeakMap,E=new WeakMap,_=new WeakMap,w=new WeakMap,k=new WeakMap,y=new WeakMap,j=new WeakMap,N=new WeakMap,b=new WeakMap,S=new WeakMap,l=new WeakSet,v=async function(){P(this,T,await navigator.storage.getDirectory()),P(this,I,await o(this,l,W).call(this,this.dataDir,{create:!0})),P(this,E,await o(this,l,W).call(this,L,{from:s(this,I),create:!0})),P(this,_,await s(this,I).getFileHandle(B,{create:!0})),P(this,w,await s(this,_).createSyncAccessHandle());let t=new ArrayBuffer(s(this,w).getSize());s(this,w).read(t,{at:0});let e,a=new TextDecoder().decode(t).split(`
1
+ import{b4 as H,b5 as m,b6 as o,b7 as s,b8 as A,b3 as C,b9 as P,ba as x}from"./reactor_browser-OaR-t_sy.js";import"./document_model-DB4SzBSe.js";import"./zod-BpTyxkjy.js";import"./react-DQSxOgtG.js";import"./document_drive-BuVpBb4l.js";import"./graphql-BS4Brs_E.js";import"./config-CU-aFfVJ.js";import"./drive_explorer-Lf29Qz6V.js";import"./sentry_react-cODD7zWc.js";import"./sentry_browser-B4YoBIIG.js";import"./document_model_editor-DmfEkpqv.js";import"./react/jsx-runtime-DldvXD6N.js";import"./design_system-C0Tt1eiW.js";import"./tailwind_merge-Dr4f9Rms.js";import"./react-dom-D6zQJsh6.js";import"./design_system_connect-B6I_MUGW.js";import"./design_system_ui-BV3nUhle.js";import"./react-dom/client-BVPiT_FE.js";C();var B="state.txt",L="data",$={DIR:16384,FILE:32768},T,I,E,_,w,k,y,j,N,b,S,l,v,O,M,g,f,D,R,W,ht=class extends H{constructor(t,{initialPoolSize:e=1e3,maintainedPoolSize:a=100,debug:i=!1}={}){super(t,{debug:i}),m(this,l),m(this,T),m(this,I),m(this,E),m(this,_),m(this,w),m(this,k,new Map),m(this,y,new Map),m(this,j,0),m(this,N,new Map),m(this,b,new Map),this.lastCheckpoint=0,this.checkpointInterval=1e3*60,this.poolCounter=0,m(this,S,new Set),this.initialPoolSize=e,this.maintainedPoolSize=a}async init(t,e){return await o(this,l,v).call(this),super.init(t,e)}async syncToFs(t=!1){await this.maybeCheckpointState(),await this.maintainPool(),t||this.flush()}async closeFs(){for(let t of s(this,y).values())t.close();s(this,w).flush(),s(this,w).close(),this.pg.Module.FS.quit()}async maintainPool(t){t=t||this.maintainedPoolSize;let e=t-this.state.pool.length,a=[];for(let i=0;i<e;i++)a.push(new Promise(async h=>{++this.poolCounter;let r=`${(Date.now()-1704063600).toString(16).padStart(8,"0")}-${this.poolCounter.toString(16).padStart(8,"0")}`,c=await s(this,E).getFileHandle(r,{create:!0}),d=await c.createSyncAccessHandle();s(this,k).set(r,c),s(this,y).set(r,d),o(this,l,M).call(this,{opp:"createPoolFile",args:[r]}),this.state.pool.push(r),h()}));for(let i=0;i>e;i--)a.push(new Promise(async h=>{let r=this.state.pool.pop();o(this,l,M).call(this,{opp:"deletePoolFile",args:[r]});let c=s(this,k).get(r);s(this,y).get(r)?.close(),await s(this,E).removeEntry(c.name),s(this,k).delete(r),s(this,y).delete(r),h()}));await Promise.all(a)}_createPoolFileState(t){this.state.pool.push(t)}_deletePoolFileState(t){let e=this.state.pool.indexOf(t);e>-1&&this.state.pool.splice(e,1)}async maybeCheckpointState(){Date.now()-this.lastCheckpoint>this.checkpointInterval&&await this.checkpointState()}async checkpointState(){let t=new TextEncoder().encode(JSON.stringify(this.state));s(this,w).truncate(0),s(this,w).write(t,{at:0}),s(this,w).flush(),this.lastCheckpoint=Date.now()}flush(){for(let t of s(this,S))try{t.flush()}catch{}s(this,S).clear()}chmod(t,e){o(this,l,O).call(this,{opp:"chmod",args:[t,e]},()=>{this._chmodState(t,e)})}_chmodState(t,e){let a=o(this,l,f).call(this,t);a.mode=e}close(t){let e=o(this,l,D).call(this,t);s(this,N).delete(t),s(this,b).delete(e)}fstat(t){let e=o(this,l,D).call(this,t);return this.lstat(e)}lstat(t){let e=o(this,l,f).call(this,t),a=e.type==="file"?s(this,y).get(e.backingFilename).getSize():0,i=4096;return{dev:0,ino:0,mode:e.mode,nlink:1,uid:0,gid:0,rdev:0,size:a,blksize:i,blocks:Math.ceil(a/i),atime:e.lastModified,mtime:e.lastModified,ctime:e.lastModified}}mkdir(t,e){o(this,l,O).call(this,{opp:"mkdir",args:[t,e]},()=>{this._mkdirState(t,e)})}_mkdirState(t,e){let a=o(this,l,g).call(this,t),i=a.pop(),h=[],r=this.state.root;for(let d of a){if(h.push(t),!Object.prototype.hasOwnProperty.call(r.children,d))if(e?.recursive)this.mkdir(h.join("/"));else throw new p("ENOENT","No such file or directory");if(r.children[d].type!=="directory")throw new p("ENOTDIR","Not a directory");r=r.children[d]}if(Object.prototype.hasOwnProperty.call(r.children,i))throw new p("EEXIST","File exists");let c={type:"directory",lastModified:Date.now(),mode:e?.mode||$.DIR,children:{}};r.children[i]=c}open(t,e,a){if(o(this,l,f).call(this,t).type!=="file")throw new p("EISDIR","Is a directory");let i=o(this,l,R).call(this);return s(this,N).set(i,t),s(this,b).set(t,i),i}readdir(t){let e=o(this,l,f).call(this,t);if(e.type!=="directory")throw new p("ENOTDIR","Not a directory");return Object.keys(e.children)}read(t,e,a,i,h){let r=o(this,l,D).call(this,t),c=o(this,l,f).call(this,r);if(c.type!=="file")throw new p("EISDIR","Is a directory");return s(this,y).get(c.backingFilename).read(new Uint8Array(e.buffer,a,i),{at:h})}rename(t,e){o(this,l,O).call(this,{opp:"rename",args:[t,e]},()=>{this._renameState(t,e,!0)})}_renameState(t,e,a=!1){let i=o(this,l,g).call(this,t),h=i.pop(),r=o(this,l,f).call(this,i.join("/"));if(!Object.prototype.hasOwnProperty.call(r.children,h))throw new p("ENOENT","No such file or directory");let c=o(this,l,g).call(this,e),d=c.pop(),n=o(this,l,f).call(this,c.join("/"));if(a&&Object.prototype.hasOwnProperty.call(n.children,d)){let u=n.children[d];s(this,y).get(u.backingFilename).truncate(0),this.state.pool.push(u.backingFilename)}n.children[d]=r.children[h],delete r.children[h]}rmdir(t){o(this,l,O).call(this,{opp:"rmdir",args:[t]},()=>{this._rmdirState(t)})}_rmdirState(t){let e=o(this,l,g).call(this,t),a=e.pop(),i=o(this,l,f).call(this,e.join("/"));if(!Object.prototype.hasOwnProperty.call(i.children,a))throw new p("ENOENT","No such file or directory");let h=i.children[a];if(h.type!=="directory")throw new p("ENOTDIR","Not a directory");if(Object.keys(h.children).length>0)throw new p("ENOTEMPTY","Directory not empty");delete i.children[a]}truncate(t,e=0){let a=o(this,l,f).call(this,t);if(a.type!=="file")throw new p("EISDIR","Is a directory");let i=s(this,y).get(a.backingFilename);if(!i)throw new p("ENOENT","No such file or directory");i.truncate(e),s(this,S).add(i)}unlink(t){o(this,l,O).call(this,{opp:"unlink",args:[t]},()=>{this._unlinkState(t,!0)})}_unlinkState(t,e=!1){let a=o(this,l,g).call(this,t),i=a.pop(),h=o(this,l,f).call(this,a.join("/"));if(!Object.prototype.hasOwnProperty.call(h.children,i))throw new p("ENOENT","No such file or directory");let r=h.children[i];if(r.type!=="file")throw new p("EISDIR","Is a directory");if(delete h.children[i],e){let c=s(this,y).get(r.backingFilename);c?.truncate(0),s(this,S).add(c),s(this,b).has(t)&&(s(this,N).delete(s(this,b).get(t)),s(this,b).delete(t))}this.state.pool.push(r.backingFilename)}utimes(t,e,a){o(this,l,O).call(this,{opp:"utimes",args:[t,e,a]},()=>{this._utimesState(t,e,a)})}_utimesState(t,e,a){let i=o(this,l,f).call(this,t);i.lastModified=a}writeFile(t,e,a){let i=o(this,l,g).call(this,t),h=i.pop(),r=o(this,l,f).call(this,i.join("/"));if(Object.prototype.hasOwnProperty.call(r.children,h)){let n=r.children[h];n.lastModified=Date.now(),o(this,l,M).call(this,{opp:"setLastModified",args:[t,n.lastModified]})}else{if(this.state.pool.length===0)throw new Error("No more file handles available in the pool");let n={type:"file",lastModified:Date.now(),mode:a?.mode||$.FILE,backingFilename:this.state.pool.pop()};r.children[h]=n,o(this,l,M).call(this,{opp:"createFileNode",args:[t,n]})}let c=r.children[h],d=s(this,y).get(c.backingFilename);e.length>0&&(d.write(typeof e=="string"?new TextEncoder().encode(e):new Uint8Array(e),{at:0}),t.startsWith("/pg_wal")&&s(this,S).add(d))}_createFileNodeState(t,e){let a=o(this,l,g).call(this,t),i=a.pop(),h=o(this,l,f).call(this,a.join("/"));h.children[i]=e;let r=this.state.pool.indexOf(e.backingFilename);return r>-1&&this.state.pool.splice(r,1),e}_setLastModifiedState(t,e){let a=o(this,l,f).call(this,t);a.lastModified=e}write(t,e,a,i,h){let r=o(this,l,D).call(this,t),c=o(this,l,f).call(this,r);if(c.type!=="file")throw new p("EISDIR","Is a directory");let d=s(this,y).get(c.backingFilename);if(!d)throw new p("EBADF","Bad file descriptor");let n=d.write(new Uint8Array(e,a,i),{at:h});return r.startsWith("/pg_wal")&&s(this,S).add(d),n}};T=new WeakMap,I=new WeakMap,E=new WeakMap,_=new WeakMap,w=new WeakMap,k=new WeakMap,y=new WeakMap,j=new WeakMap,N=new WeakMap,b=new WeakMap,S=new WeakMap,l=new WeakSet,v=async function(){P(this,T,await navigator.storage.getDirectory()),P(this,I,await o(this,l,W).call(this,this.dataDir,{create:!0})),P(this,E,await o(this,l,W).call(this,L,{from:s(this,I),create:!0})),P(this,_,await s(this,I).getFileHandle(B,{create:!0})),P(this,w,await s(this,_).createSyncAccessHandle());let t=new ArrayBuffer(s(this,w).getSize());s(this,w).read(t,{at:0});let e,a=new TextDecoder().decode(t).split(`
2
2
  `),i=!1;try{e=JSON.parse(a[0])}catch{e={root:{type:"directory",lastModified:Date.now(),mode:$.DIR,children:{}},pool:[]},s(this,w).truncate(0),s(this,w).write(new TextEncoder().encode(JSON.stringify(e)),{at:0}),i=!0}this.state=e;let h=a.slice(1).filter(Boolean).map(n=>JSON.parse(n));for(let n of h){let u=`_${n.opp}State`;if(typeof this[u]=="function")try{this[u].bind(this)(...n.args)}catch(F){console.warn("Error applying OPFS AHP WAL entry",n,F)}}let r=[],c=async n=>{if(n.type==="file")try{let u=await s(this,E).getFileHandle(n.backingFilename),F=await u.createSyncAccessHandle();s(this,k).set(n.backingFilename,u),s(this,y).set(n.backingFilename,F)}catch(u){console.error("Error opening file handle for node",n,u)}else for(let u of Object.values(n.children))r.push(c(u))};await c(this.state.root);let d=[];for(let n of this.state.pool)d.push(new Promise(async u=>{s(this,k).has(n)&&console.warn("File handle already exists for pool file",n);let F=await s(this,E).getFileHandle(n),z=await F.createSyncAccessHandle();s(this,k).set(n,F),s(this,y).set(n,z),u()}));await Promise.all([...r,...d]),await this.maintainPool(i?this.initialPoolSize:this.maintainedPoolSize)},O=function(t,e){let a=o(this,l,M).call(this,t);try{e()}catch(i){throw s(this,w).truncate(a),i}},M=function(t){let e=JSON.stringify(t),a=new TextEncoder().encode(`
3
3
  ${e}`),i=s(this,w).getSize();return s(this,w).write(a,{at:i}),s(this,S).add(s(this,w)),i},g=function(t){return t.split("/").filter(Boolean)},f=function(t,e){let a=o(this,l,g).call(this,t),i=e||this.state.root;for(let h of a){if(i.type!=="directory")throw new p("ENOTDIR","Not a directory");if(!Object.prototype.hasOwnProperty.call(i.children,h))throw new p("ENOENT","No such file or directory");i=i.children[h]}return i},D=function(t){let e=s(this,N).get(t);if(!e)throw new p("EBADF","Bad file descriptor");return e},R=function(){let t=++x(this,j)._;for(;s(this,N).has(t);)x(this,j)._++;return t},W=async function(t,e){let a=o(this,l,g).call(this,t),i=e?.from||s(this,T);for(let h of a)i=await i.getDirectoryHandle(h,{create:e?.create});return i};var p=class extends Error{constructor(t,e){super(e),typeof t=="number"?this.code=t:typeof t=="string"&&(this.code=A[t])}};export{ht as OpfsAhpFS};