@powerhousedao/connect 6.0.0-dev.23 → 6.0.0-dev.230

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 (571) hide show
  1. package/.env +1 -1
  2. package/dist/AddDriveModal-B9BPORvo.js +89 -0
  3. package/dist/AddDriveModal-B9BPORvo.js.map +1 -0
  4. package/dist/ClearStorageModal-K1H6NgT6.js +44 -0
  5. package/dist/ClearStorageModal-K1H6NgT6.js.map +1 -0
  6. package/dist/CookiesPolicyModal-CnVx2R_8.js +30 -0
  7. package/dist/CookiesPolicyModal-CnVx2R_8.js.map +1 -0
  8. package/dist/CreateDocumentModal-TtG7E62x.js +28 -0
  9. package/dist/CreateDocumentModal-TtG7E62x.js.map +1 -0
  10. package/dist/DebugSettingsModal-CriX2NsN.js +169 -0
  11. package/dist/DebugSettingsModal-CriX2NsN.js.map +1 -0
  12. package/dist/DeleteDriveModal-Cb43NeNu.js +40 -0
  13. package/dist/DeleteDriveModal-Cb43NeNu.js.map +1 -0
  14. package/dist/DeleteItemModal-Brq4QKdd.js +39 -0
  15. package/dist/DeleteItemModal-Brq4QKdd.js.map +1 -0
  16. package/dist/DisclaimerModal-Dk6PpkZU.js +21 -0
  17. package/dist/DisclaimerModal-Dk6PpkZU.js.map +1 -0
  18. package/dist/DriveSettingsModal-BdcjrRh9.js +48 -0
  19. package/dist/DriveSettingsModal-BdcjrRh9.js.map +1 -0
  20. package/dist/ExportDocumentWithErrorsModal-DNRr3cjI.js +41 -0
  21. package/dist/ExportDocumentWithErrorsModal-DNRr3cjI.js.map +1 -0
  22. package/dist/InspectorModal-EDrjiXPs.js +372 -0
  23. package/dist/InspectorModal-EDrjiXPs.js.map +1 -0
  24. package/dist/MissingPackageModal-BfblPbd8.js +34 -0
  25. package/dist/MissingPackageModal-BfblPbd8.js.map +1 -0
  26. package/dist/SettingsModal-5hkkt5lV.js +294 -0
  27. package/dist/SettingsModal-5hkkt5lV.js.map +1 -0
  28. package/dist/UpgradeDriveModal-CBLALaaQ.js +31 -0
  29. package/dist/UpgradeDriveModal-CBLALaaQ.js.map +1 -0
  30. package/dist/build-info-CMRmLn5Q.js +12 -0
  31. package/dist/build-info-CMRmLn5Q.js.map +1 -0
  32. package/dist/connect.config-Cuh0hj_Q.js +139 -0
  33. package/dist/connect.config-Cuh0hj_Q.js.map +1 -0
  34. package/dist/i18n-Ch408v5-.js +125 -0
  35. package/dist/i18n-Ch408v5-.js.map +1 -0
  36. package/dist/load-Dy0OZx9L.js +109 -0
  37. package/dist/load-Dy0OZx9L.js.map +1 -0
  38. package/dist/main.d.ts +1 -0
  39. package/dist/main.js +9 -0
  40. package/dist/main.js.map +1 -0
  41. package/dist/package-C3I4TZuv.js +114 -0
  42. package/dist/package-C3I4TZuv.js.map +1 -0
  43. package/dist/pglite-runtime-C1g-4Jxl.js +132 -0
  44. package/dist/pglite-runtime-C1g-4Jxl.js.map +1 -0
  45. package/dist/pglite-seed-BtXWFpHf.js +46 -0
  46. package/dist/pglite-seed-BtXWFpHf.js.map +1 -0
  47. package/dist/pglite.worker.d.ts +1 -0
  48. package/dist/pglite.worker.js +15 -0
  49. package/dist/pglite.worker.js.map +1 -0
  50. package/dist/pglite.worker.legacy.d.ts +1 -0
  51. package/dist/pglite.worker.legacy.js +15 -0
  52. package/dist/pglite.worker.legacy.js.map +1 -0
  53. package/dist/reactor-Nm3jOev1.js +783 -0
  54. package/dist/reactor-Nm3jOev1.js.map +1 -0
  55. package/dist/registerServiceWorker-LI8_JXt3.js +76 -0
  56. package/dist/registerServiceWorker-LI8_JXt3.js.map +1 -0
  57. package/dist/sidebar-BCkxH2f3.js +1566 -0
  58. package/dist/sidebar-BCkxH2f3.js.map +1 -0
  59. package/dist/start-connect.d.ts +21 -0
  60. package/dist/start-connect.d.ts.map +1 -0
  61. package/dist/start-connect.js +16 -0
  62. package/dist/start-connect.js.map +1 -0
  63. package/{lib → dist}/style.css +2185 -311
  64. package/dist/toast-DnODOv28.js +20 -0
  65. package/dist/toast-DnODOv28.js.map +1 -0
  66. package/dist/useRegistryPackages-BOX4NMAb.js +125 -0
  67. package/dist/useRegistryPackages-BOX4NMAb.js.map +1 -0
  68. package/package.json +57 -121
  69. package/public/ph-packages.json +3 -0
  70. package/dist/assets/AddDriveModal-DBaGaeEv.js +0 -1
  71. package/dist/assets/ClearStorageModal-C-Eq31x6.js +0 -1
  72. package/dist/assets/CookiesPolicyModal-DDnLiRMa.js +0 -1
  73. package/dist/assets/CreateDocumentModal-CCWA7rsK.js +0 -1
  74. package/dist/assets/DebugSettingsModal-MX6tAmFS.js +0 -1
  75. package/dist/assets/DeleteDriveModal-BDKQZ4HZ.js +0 -1
  76. package/dist/assets/DeleteItemModal-B2q5Bzm0.js +0 -1
  77. package/dist/assets/DisclaimerModal-3N95_i1A.js +0 -1
  78. package/dist/assets/DriveSettingsModal-6Odc4iBB.js +0 -1
  79. package/dist/assets/ExportDocumentWithErrorsModal-BxgdM4Cn.js +0 -1
  80. package/dist/assets/SettingsModal-DxiLUh4m.js +0 -1
  81. package/dist/assets/UpgradeDriveModal-BNV5YhHT.js +0 -1
  82. package/dist/assets/_virtual_ph_external-packages-CM1tCR4L.js +0 -1
  83. package/dist/assets/config-CU-aFfVJ.js +0 -1
  84. package/dist/assets/connect-loader-CvOC68Ih.mp4 +0 -0
  85. package/dist/assets/design_system-uuqt99TZ.js +0 -45
  86. package/dist/assets/design_system_connect-DdtsYVPZ.js +0 -47
  87. package/dist/assets/design_system_ui-Duj5Ll6i.js +0 -1
  88. package/dist/assets/document_drive-Bubv8iix.js +0 -316
  89. package/dist/assets/document_engineering-C09a5UIJ.js +0 -1
  90. package/dist/assets/document_model-_oCbt5YE.js +0 -230
  91. package/dist/assets/document_model_editor-ohJ7LI9a.js +0 -25
  92. package/dist/assets/drive_explorer-gMzxtIW2.js +0 -2
  93. package/dist/assets/graphql-AKTCpY7l.js +0 -75
  94. package/dist/assets/graphql-editor-CKzx1Jnw.js +0 -73
  95. package/dist/assets/graphql_request-BJtmW2JS.js +0 -3
  96. package/dist/assets/hmr-LMNkvzP7.js +0 -1
  97. package/dist/assets/home-bg-BEhF9NuW.png +0 -0
  98. package/dist/assets/home-bg-BRYzhkhi.avif +0 -0
  99. package/dist/assets/hooks-CsZvAIjq.js +0 -12
  100. package/dist/assets/index-CiT5oJyj.js +0 -18
  101. package/dist/assets/index-DYdiZMfn.css +0 -1
  102. package/dist/assets/index-DZ0uz05k.js +0 -28
  103. package/dist/assets/json-editor-CN0vAdTn.js +0 -1
  104. package/dist/assets/nodefs-De9muFtb.js +0 -1
  105. package/dist/assets/opfs-ahp-DWJ33Mjx.js +0 -3
  106. package/dist/assets/pg_dump-CW0pN9tG.wasm +0 -0
  107. package/dist/assets/postgres-CkP7QCDB.data +0 -0
  108. package/dist/assets/postgres-CyuUVpXN.wasm +0 -0
  109. package/dist/assets/powerhouse-rounded-CeKGGUG4.png +0 -0
  110. package/dist/assets/react/jsx-runtime-DldvXD6N.js +0 -1
  111. package/dist/assets/react-DQSxOgtG.js +0 -1
  112. package/dist/assets/react-dom/client-BVPiT_FE.js +0 -9
  113. package/dist/assets/react-dom-D6zQJsh6.js +0 -1
  114. package/dist/assets/reactor_browser-7kCiebAa.js +0 -129
  115. package/dist/assets/renown-short-hover-BiSLBV7L.png +0 -0
  116. package/dist/assets/rwa-report-Bb0W5-ac.png +0 -0
  117. package/dist/assets/sentry_browser-B4YoBIIG.js +0 -498
  118. package/dist/assets/sentry_react-cODD7zWc.js +0 -3
  119. package/dist/assets/state-schemas-Ed8-N-Nl.js +0 -2
  120. package/dist/assets/tailwind_merge-Dr4f9Rms.js +0 -1
  121. package/dist/assets/zod-9j67vCAu.js +0 -39
  122. package/dist/icon.ico +0 -0
  123. package/dist/index.html +0 -51
  124. package/dist/robots.txt +0 -3
  125. package/dist/settings.png +0 -0
  126. package/heroku/Dockerfile +0 -101
  127. package/heroku/Procfile +0 -1
  128. package/heroku/config/nginx.conf.template +0 -77
  129. package/heroku/heroku-entrypoint.sh +0 -38
  130. package/lib/cypress/e2e/navigation.cy.d.ts +0 -2
  131. package/lib/cypress/e2e/navigation.cy.d.ts.map +0 -1
  132. package/lib/cypress/e2e/navigation.cy.js +0 -221
  133. package/lib/cypress/e2e/navigation.cy.js.map +0 -1
  134. package/lib/cypress/e2e/utils/index.d.ts +0 -15
  135. package/lib/cypress/e2e/utils/index.d.ts.map +0 -1
  136. package/lib/cypress/e2e/utils/index.js +0 -121
  137. package/lib/cypress/e2e/utils/index.js.map +0 -1
  138. package/lib/cypress/support/commands.d.ts +0 -2
  139. package/lib/cypress/support/commands.d.ts.map +0 -1
  140. package/lib/cypress/support/commands.js +0 -29
  141. package/lib/cypress/support/commands.js.map +0 -1
  142. package/lib/cypress/support/e2e.d.ts +0 -2
  143. package/lib/cypress/support/e2e.d.ts.map +0 -1
  144. package/lib/cypress/support/e2e.js +0 -19
  145. package/lib/cypress/support/e2e.js.map +0 -1
  146. package/lib/cypress.config.d.ts +0 -3
  147. package/lib/cypress.config.d.ts.map +0 -1
  148. package/lib/cypress.config.js +0 -15
  149. package/lib/cypress.config.js.map +0 -1
  150. package/lib/package.copy.json +0 -177
  151. package/lib/scripts/render-skeleton.d.ts +0 -2
  152. package/lib/scripts/render-skeleton.d.ts.map +0 -1
  153. package/lib/scripts/render-skeleton.js +0 -11
  154. package/lib/scripts/render-skeleton.js.map +0 -1
  155. package/lib/src/components/analytics.d.ts +0 -8
  156. package/lib/src/components/analytics.d.ts.map +0 -1
  157. package/lib/src/components/analytics.js +0 -30
  158. package/lib/src/components/analytics.js.map +0 -1
  159. package/lib/src/components/app-loader.d.ts +0 -3
  160. package/lib/src/components/app-loader.d.ts.map +0 -1
  161. package/lib/src/components/app-loader.js +0 -20
  162. package/lib/src/components/app-loader.js.map +0 -1
  163. package/lib/src/components/app-skeleton.d.ts +0 -3
  164. package/lib/src/components/app-skeleton.d.ts.map +0 -1
  165. package/lib/src/components/app-skeleton.js +0 -38
  166. package/lib/src/components/app-skeleton.js.map +0 -1
  167. package/lib/src/components/app.d.ts +0 -2
  168. package/lib/src/components/app.d.ts.map +0 -1
  169. package/lib/src/components/app.js +0 -29
  170. package/lib/src/components/app.js.map +0 -1
  171. package/lib/src/components/button.d.ts +0 -3
  172. package/lib/src/components/button.d.ts.map +0 -1
  173. package/lib/src/components/button.js +0 -7
  174. package/lib/src/components/button.js.map +0 -1
  175. package/lib/src/components/cookie-banner.d.ts +0 -2
  176. package/lib/src/components/cookie-banner.d.ts.map +0 -1
  177. package/lib/src/components/cookie-banner.js +0 -48
  178. package/lib/src/components/cookie-banner.js.map +0 -1
  179. package/lib/src/components/document-editor-container.d.ts +0 -2
  180. package/lib/src/components/document-editor-container.d.ts.map +0 -1
  181. package/lib/src/components/document-editor-container.js +0 -65
  182. package/lib/src/components/document-editor-container.js.map +0 -1
  183. package/lib/src/components/dots-loader.d.ts +0 -2
  184. package/lib/src/components/dots-loader.d.ts.map +0 -1
  185. package/lib/src/components/dots-loader.js +0 -15
  186. package/lib/src/components/dots-loader.js.map +0 -1
  187. package/lib/src/components/drive-editor-container.d.ts +0 -2
  188. package/lib/src/components/drive-editor-container.d.ts.map +0 -1
  189. package/lib/src/components/drive-editor-container.js +0 -22
  190. package/lib/src/components/drive-editor-container.js.map +0 -1
  191. package/lib/src/components/drive-icon.d.ts +0 -5
  192. package/lib/src/components/drive-icon.d.ts.map +0 -1
  193. package/lib/src/components/drive-icon.js +0 -15
  194. package/lib/src/components/drive-icon.js.map +0 -1
  195. package/lib/src/components/editor-loader.d.ts +0 -9
  196. package/lib/src/components/editor-loader.d.ts.map +0 -1
  197. package/lib/src/components/editor-loader.js +0 -19
  198. package/lib/src/components/editor-loader.js.map +0 -1
  199. package/lib/src/components/editors.d.ts +0 -10
  200. package/lib/src/components/editors.d.ts.map +0 -1
  201. package/lib/src/components/editors.js +0 -87
  202. package/lib/src/components/editors.js.map +0 -1
  203. package/lib/src/components/error-boundary.d.ts +0 -103
  204. package/lib/src/components/error-boundary.d.ts.map +0 -1
  205. package/lib/src/components/error-boundary.js +0 -104
  206. package/lib/src/components/error-boundary.js.map +0 -1
  207. package/lib/src/components/footer.d.ts +0 -2
  208. package/lib/src/components/footer.d.ts.map +0 -1
  209. package/lib/src/components/footer.js +0 -16
  210. package/lib/src/components/footer.js.map +0 -1
  211. package/lib/src/components/index.d.ts +0 -22
  212. package/lib/src/components/index.d.ts.map +0 -1
  213. package/lib/src/components/index.js +0 -22
  214. package/lib/src/components/index.js.map +0 -1
  215. package/lib/src/components/login.d.ts +0 -2
  216. package/lib/src/components/login.d.ts.map +0 -1
  217. package/lib/src/components/login.js +0 -12
  218. package/lib/src/components/login.js.map +0 -1
  219. package/lib/src/components/modal/index.d.ts +0 -18
  220. package/lib/src/components/modal/index.d.ts.map +0 -1
  221. package/lib/src/components/modal/index.js +0 -18
  222. package/lib/src/components/modal/index.js.map +0 -1
  223. package/lib/src/components/modal/modals/AddDriveModal.d.ts +0 -2
  224. package/lib/src/components/modal/modals/AddDriveModal.d.ts.map +0 -1
  225. package/lib/src/components/modal/modals/AddDriveModal.js +0 -121
  226. package/lib/src/components/modal/modals/AddDriveModal.js.map +0 -1
  227. package/lib/src/components/modal/modals/ClearStorageModal.d.ts +0 -2
  228. package/lib/src/components/modal/modals/ClearStorageModal.d.ts.map +0 -1
  229. package/lib/src/components/modal/modals/ClearStorageModal.js +0 -35
  230. package/lib/src/components/modal/modals/ClearStorageModal.js.map +0 -1
  231. package/lib/src/components/modal/modals/CookiesPolicyModal.d.ts +0 -2
  232. package/lib/src/components/modal/modals/CookiesPolicyModal.d.ts.map +0 -1
  233. package/lib/src/components/modal/modals/CookiesPolicyModal.js +0 -16
  234. package/lib/src/components/modal/modals/CookiesPolicyModal.js.map +0 -1
  235. package/lib/src/components/modal/modals/CreateDocumentModal.d.ts +0 -2
  236. package/lib/src/components/modal/modals/CreateDocumentModal.d.ts.map +0 -1
  237. package/lib/src/components/modal/modals/CreateDocumentModal.js +0 -24
  238. package/lib/src/components/modal/modals/CreateDocumentModal.js.map +0 -1
  239. package/lib/src/components/modal/modals/DebugSettingsModal.d.ts +0 -2
  240. package/lib/src/components/modal/modals/DebugSettingsModal.d.ts.map +0 -1
  241. package/lib/src/components/modal/modals/DebugSettingsModal.js +0 -108
  242. package/lib/src/components/modal/modals/DebugSettingsModal.js.map +0 -1
  243. package/lib/src/components/modal/modals/DeleteDriveModal.d.ts +0 -2
  244. package/lib/src/components/modal/modals/DeleteDriveModal.d.ts.map +0 -1
  245. package/lib/src/components/modal/modals/DeleteDriveModal.js +0 -32
  246. package/lib/src/components/modal/modals/DeleteDriveModal.js.map +0 -1
  247. package/lib/src/components/modal/modals/DeleteItemModal.d.ts +0 -3
  248. package/lib/src/components/modal/modals/DeleteItemModal.d.ts.map +0 -1
  249. package/lib/src/components/modal/modals/DeleteItemModal.js +0 -33
  250. package/lib/src/components/modal/modals/DeleteItemModal.js.map +0 -1
  251. package/lib/src/components/modal/modals/DisclaimerModal.d.ts +0 -3
  252. package/lib/src/components/modal/modals/DisclaimerModal.d.ts.map +0 -1
  253. package/lib/src/components/modal/modals/DisclaimerModal.js +0 -12
  254. package/lib/src/components/modal/modals/DisclaimerModal.js.map +0 -1
  255. package/lib/src/components/modal/modals/DriveSettingsModal.d.ts +0 -2
  256. package/lib/src/components/modal/modals/DriveSettingsModal.d.ts.map +0 -1
  257. package/lib/src/components/modal/modals/DriveSettingsModal.js +0 -28
  258. package/lib/src/components/modal/modals/DriveSettingsModal.js.map +0 -1
  259. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.d.ts +0 -2
  260. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.d.ts.map +0 -1
  261. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.js +0 -30
  262. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.js.map +0 -1
  263. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.d.ts +0 -2
  264. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.d.ts.map +0 -1
  265. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.js +0 -29
  266. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.js.map +0 -1
  267. package/lib/src/components/modal/modals/InspectorModal/index.d.ts +0 -2
  268. package/lib/src/components/modal/modals/InspectorModal/index.d.ts.map +0 -1
  269. package/lib/src/components/modal/modals/InspectorModal/index.js +0 -2
  270. package/lib/src/components/modal/modals/InspectorModal/index.js.map +0 -1
  271. package/lib/src/components/modal/modals/InspectorModal/useDbExplorer.d.ts +0 -31
  272. package/lib/src/components/modal/modals/InspectorModal/useDbExplorer.d.ts.map +0 -1
  273. package/lib/src/components/modal/modals/InspectorModal/useDbExplorer.js +0 -211
  274. package/lib/src/components/modal/modals/InspectorModal/useDbExplorer.js.map +0 -1
  275. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.d.ts +0 -4
  276. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.d.ts.map +0 -1
  277. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.js +0 -12
  278. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.js.map +0 -1
  279. package/lib/src/components/modal/modals/SettingsModal.d.ts +0 -3
  280. package/lib/src/components/modal/modals/SettingsModal.d.ts.map +0 -1
  281. package/lib/src/components/modal/modals/SettingsModal.js +0 -45
  282. package/lib/src/components/modal/modals/SettingsModal.js.map +0 -1
  283. package/lib/src/components/modal/modals/UpgradeDriveModal.d.ts +0 -3
  284. package/lib/src/components/modal/modals/UpgradeDriveModal.d.ts.map +0 -1
  285. package/lib/src/components/modal/modals/UpgradeDriveModal.js +0 -21
  286. package/lib/src/components/modal/modals/UpgradeDriveModal.js.map +0 -1
  287. package/lib/src/components/modal/modals/settings/about.d.ts +0 -2
  288. package/lib/src/components/modal/modals/settings/about.d.ts.map +0 -1
  289. package/lib/src/components/modal/modals/settings/about.js +0 -10
  290. package/lib/src/components/modal/modals/settings/about.js.map +0 -1
  291. package/lib/src/components/modal/modals/settings/danger-zone.d.ts +0 -2
  292. package/lib/src/components/modal/modals/settings/danger-zone.d.ts.map +0 -1
  293. package/lib/src/components/modal/modals/settings/danger-zone.js +0 -15
  294. package/lib/src/components/modal/modals/settings/danger-zone.js.map +0 -1
  295. package/lib/src/components/modal/modals/settings/default-editor.d.ts +0 -2
  296. package/lib/src/components/modal/modals/settings/default-editor.d.ts.map +0 -1
  297. package/lib/src/components/modal/modals/settings/default-editor.js +0 -18
  298. package/lib/src/components/modal/modals/settings/default-editor.js.map +0 -1
  299. package/lib/src/components/modal/modals/settings/package-manager.d.ts +0 -3
  300. package/lib/src/components/modal/modals/settings/package-manager.d.ts.map +0 -1
  301. package/lib/src/components/modal/modals/settings/package-manager.js +0 -87
  302. package/lib/src/components/modal/modals/settings/package-manager.js.map +0 -1
  303. package/lib/src/components/modal/modals-container.d.ts +0 -2
  304. package/lib/src/components/modal/modals-container.d.ts.map +0 -1
  305. package/lib/src/components/modal/modals-container.js +0 -66
  306. package/lib/src/components/modal/modals-container.js.map +0 -1
  307. package/lib/src/components/ph-logo.d.ts +0 -2
  308. package/lib/src/components/ph-logo.d.ts.map +0 -1
  309. package/lib/src/components/ph-logo.js +0 -7
  310. package/lib/src/components/ph-logo.js.map +0 -1
  311. package/lib/src/components/reload-connect-toast.d.ts +0 -2
  312. package/lib/src/components/reload-connect-toast.d.ts.map +0 -1
  313. package/lib/src/components/reload-connect-toast.js +0 -7
  314. package/lib/src/components/reload-connect-toast.js.map +0 -1
  315. package/lib/src/components/root.d.ts +0 -2
  316. package/lib/src/components/root.d.ts.map +0 -1
  317. package/lib/src/components/root.js +0 -8
  318. package/lib/src/components/root.js.map +0 -1
  319. package/lib/src/components/router.d.ts +0 -2
  320. package/lib/src/components/router.d.ts.map +0 -1
  321. package/lib/src/components/router.js +0 -41
  322. package/lib/src/components/router.js.map +0 -1
  323. package/lib/src/components/search-bar.d.ts +0 -2
  324. package/lib/src/components/search-bar.d.ts.map +0 -1
  325. package/lib/src/components/search-bar.js +0 -36
  326. package/lib/src/components/search-bar.js.map +0 -1
  327. package/lib/src/components/sidebar.d.ts +0 -2
  328. package/lib/src/components/sidebar.d.ts.map +0 -1
  329. package/lib/src/components/sidebar.js +0 -28
  330. package/lib/src/components/sidebar.js.map +0 -1
  331. package/lib/src/connect.config.d.ts +0 -115
  332. package/lib/src/connect.config.d.ts.map +0 -1
  333. package/lib/src/connect.config.js +0 -148
  334. package/lib/src/connect.config.js.map +0 -1
  335. package/lib/src/context/index.d.ts +0 -4
  336. package/lib/src/context/index.d.ts.map +0 -1
  337. package/lib/src/context/index.js +0 -4
  338. package/lib/src/context/index.js.map +0 -1
  339. package/lib/src/context/processor-manager.d.ts +0 -3
  340. package/lib/src/context/processor-manager.d.ts.map +0 -1
  341. package/lib/src/context/processor-manager.js +0 -189
  342. package/lib/src/context/processor-manager.js.map +0 -1
  343. package/lib/src/context/read-mode.d.ts +0 -2
  344. package/lib/src/context/read-mode.d.ts.map +0 -1
  345. package/lib/src/context/read-mode.js +0 -219
  346. package/lib/src/context/read-mode.js.map +0 -1
  347. package/lib/src/context/sentry-provider.d.ts +0 -6
  348. package/lib/src/context/sentry-provider.d.ts.map +0 -1
  349. package/lib/src/context/sentry-provider.js +0 -6
  350. package/lib/src/context/sentry-provider.js.map +0 -1
  351. package/lib/src/feature-flags.d.ts +0 -53
  352. package/lib/src/feature-flags.d.ts.map +0 -1
  353. package/lib/src/feature-flags.js +0 -186
  354. package/lib/src/feature-flags.js.map +0 -1
  355. package/lib/src/globals.d.ts +0 -9
  356. package/lib/src/globals.d.ts.map +0 -1
  357. package/lib/src/globals.js +0 -2
  358. package/lib/src/globals.js.map +0 -1
  359. package/lib/src/hmr.d.ts +0 -3
  360. package/lib/src/hmr.d.ts.map +0 -1
  361. package/lib/src/hmr.js +0 -2
  362. package/lib/src/hmr.js.map +0 -1
  363. package/lib/src/hooks/index.d.ts +0 -10
  364. package/lib/src/hooks/index.d.ts.map +0 -1
  365. package/lib/src/hooks/index.js +0 -10
  366. package/lib/src/hooks/index.js.map +0 -1
  367. package/lib/src/hooks/useAcceptedCookies.d.ts +0 -9
  368. package/lib/src/hooks/useAcceptedCookies.d.ts.map +0 -1
  369. package/lib/src/hooks/useAcceptedCookies.js +0 -34
  370. package/lib/src/hooks/useAcceptedCookies.js.map +0 -1
  371. package/lib/src/hooks/useCheckLatestVersion.d.ts +0 -2
  372. package/lib/src/hooks/useCheckLatestVersion.d.ts.map +0 -1
  373. package/lib/src/hooks/useCheckLatestVersion.js +0 -33
  374. package/lib/src/hooks/useCheckLatestVersion.js.map +0 -1
  375. package/lib/src/hooks/useClientErrorHandler.d.ts +0 -6
  376. package/lib/src/hooks/useClientErrorHandler.d.ts.map +0 -1
  377. package/lib/src/hooks/useClientErrorHandler.js +0 -131
  378. package/lib/src/hooks/useClientErrorHandler.js.map +0 -1
  379. package/lib/src/hooks/useCookieBanner.d.ts +0 -5
  380. package/lib/src/hooks/useCookieBanner.d.ts.map +0 -1
  381. package/lib/src/hooks/useCookieBanner.js +0 -32
  382. package/lib/src/hooks/useCookieBanner.js.map +0 -1
  383. package/lib/src/hooks/useInitSentry.d.ts +0 -2
  384. package/lib/src/hooks/useInitSentry.d.ts.map +0 -1
  385. package/lib/src/hooks/useInitSentry.js +0 -80
  386. package/lib/src/hooks/useInitSentry.js.map +0 -1
  387. package/lib/src/hooks/useNodeActions.d.ts +0 -6
  388. package/lib/src/hooks/useNodeActions.d.ts.map +0 -1
  389. package/lib/src/hooks/useNodeActions.js +0 -35
  390. package/lib/src/hooks/useNodeActions.js.map +0 -1
  391. package/lib/src/hooks/useUndoRedoShortcuts.d.ts +0 -8
  392. package/lib/src/hooks/useUndoRedoShortcuts.d.ts.map +0 -1
  393. package/lib/src/hooks/useUndoRedoShortcuts.js +0 -26
  394. package/lib/src/hooks/useUndoRedoShortcuts.js.map +0 -1
  395. package/lib/src/hooks/useWindowSize.d.ts +0 -5
  396. package/lib/src/hooks/useWindowSize.d.ts.map +0 -1
  397. package/lib/src/hooks/useWindowSize.js +0 -21
  398. package/lib/src/hooks/useWindowSize.js.map +0 -1
  399. package/lib/src/hooks/utils.d.ts +0 -7
  400. package/lib/src/hooks/utils.d.ts.map +0 -1
  401. package/lib/src/hooks/utils.js +0 -46
  402. package/lib/src/hooks/utils.js.map +0 -1
  403. package/lib/src/i18n/index.d.ts +0 -4
  404. package/lib/src/i18n/index.d.ts.map +0 -1
  405. package/lib/src/i18n/index.js +0 -26
  406. package/lib/src/i18n/index.js.map +0 -1
  407. package/lib/src/i18n/locales/en.json +0 -114
  408. package/lib/src/index.d.ts +0 -2
  409. package/lib/src/index.d.ts.map +0 -1
  410. package/lib/src/index.js +0 -2
  411. package/lib/src/index.js.map +0 -1
  412. package/lib/src/main.d.ts +0 -2
  413. package/lib/src/main.d.ts.map +0 -1
  414. package/lib/src/main.js +0 -5
  415. package/lib/src/main.js.map +0 -1
  416. package/lib/src/pages/content.d.ts +0 -2
  417. package/lib/src/pages/content.d.ts.map +0 -1
  418. package/lib/src/pages/content.js +0 -39
  419. package/lib/src/pages/content.js.map +0 -1
  420. package/lib/src/pages/demo/atlas-import.d.ts +0 -2
  421. package/lib/src/pages/demo/atlas-import.d.ts.map +0 -1
  422. package/lib/src/pages/demo/atlas-import.js +0 -122
  423. package/lib/src/pages/demo/atlas-import.js.map +0 -1
  424. package/lib/src/pages/index.d.ts +0 -4
  425. package/lib/src/pages/index.d.ts.map +0 -1
  426. package/lib/src/pages/index.js +0 -4
  427. package/lib/src/pages/index.js.map +0 -1
  428. package/lib/src/pages/settings.d.ts +0 -4
  429. package/lib/src/pages/settings.d.ts.map +0 -1
  430. package/lib/src/pages/settings.js +0 -9
  431. package/lib/src/pages/settings.js.map +0 -1
  432. package/lib/src/service-worker.d.ts +0 -2
  433. package/lib/src/service-worker.d.ts.map +0 -1
  434. package/lib/src/service-worker.js +0 -58
  435. package/lib/src/service-worker.js.map +0 -1
  436. package/lib/src/services/hmr.d.ts +0 -13
  437. package/lib/src/services/hmr.d.ts.map +0 -1
  438. package/lib/src/services/hmr.js +0 -85
  439. package/lib/src/services/hmr.js.map +0 -1
  440. package/lib/src/services/index.d.ts +0 -10
  441. package/lib/src/services/index.d.ts.map +0 -1
  442. package/lib/src/services/index.js +0 -9
  443. package/lib/src/services/index.js.map +0 -1
  444. package/lib/src/services/logger.d.ts +0 -2
  445. package/lib/src/services/logger.d.ts.map +0 -1
  446. package/lib/src/services/logger.js +0 -28
  447. package/lib/src/services/logger.js.map +0 -1
  448. package/lib/src/services/renown/browser.d.ts +0 -2
  449. package/lib/src/services/renown/browser.d.ts.map +0 -1
  450. package/lib/src/services/renown/browser.js +0 -6
  451. package/lib/src/services/renown/browser.js.map +0 -1
  452. package/lib/src/services/renown/constants.d.ts +0 -130
  453. package/lib/src/services/renown/constants.d.ts.map +0 -1
  454. package/lib/src/services/renown/constants.js +0 -41
  455. package/lib/src/services/renown/constants.js.map +0 -1
  456. package/lib/src/services/renown/utils.d.ts +0 -7
  457. package/lib/src/services/renown/utils.d.ts.map +0 -1
  458. package/lib/src/services/renown/utils.js +0 -20
  459. package/lib/src/services/renown/utils.js.map +0 -1
  460. package/lib/src/services/storage/base-storage.d.ts +0 -9
  461. package/lib/src/services/storage/base-storage.d.ts.map +0 -1
  462. package/lib/src/services/storage/base-storage.js +0 -21
  463. package/lib/src/services/storage/base-storage.js.map +0 -1
  464. package/lib/src/services/storage/browser.d.ts +0 -5
  465. package/lib/src/services/storage/browser.d.ts.map +0 -1
  466. package/lib/src/services/storage/browser.js +0 -25
  467. package/lib/src/services/storage/browser.js.map +0 -1
  468. package/lib/src/services/storage/types.d.ts +0 -6
  469. package/lib/src/services/storage/types.d.ts.map +0 -1
  470. package/lib/src/services/storage/types.js +0 -2
  471. package/lib/src/services/storage/types.js.map +0 -1
  472. package/lib/src/services/toast.d.ts +0 -8
  473. package/lib/src/services/toast.d.ts.map +0 -1
  474. package/lib/src/services/toast.js +0 -11
  475. package/lib/src/services/toast.js.map +0 -1
  476. package/lib/src/store/document-model.d.ts +0 -3
  477. package/lib/src/store/document-model.d.ts.map +0 -1
  478. package/lib/src/store/document-model.js +0 -80
  479. package/lib/src/store/document-model.js.map +0 -1
  480. package/lib/src/store/editor.d.ts +0 -5
  481. package/lib/src/store/editor.d.ts.map +0 -1
  482. package/lib/src/store/editor.js +0 -31
  483. package/lib/src/store/editor.js.map +0 -1
  484. package/lib/src/store/external-packages.d.ts +0 -4
  485. package/lib/src/store/external-packages.d.ts.map +0 -1
  486. package/lib/src/store/external-packages.js +0 -36
  487. package/lib/src/store/external-packages.js.map +0 -1
  488. package/lib/src/store/index.d.ts +0 -7
  489. package/lib/src/store/index.d.ts.map +0 -1
  490. package/lib/src/store/index.js +0 -7
  491. package/lib/src/store/index.js.map +0 -1
  492. package/lib/src/store/reactor.d.ts +0 -3
  493. package/lib/src/store/reactor.d.ts.map +0 -1
  494. package/lib/src/store/reactor.js +0 -272
  495. package/lib/src/store/reactor.js.map +0 -1
  496. package/lib/src/store/user.d.ts +0 -2
  497. package/lib/src/store/user.d.ts.map +0 -1
  498. package/lib/src/store/user.js +0 -16
  499. package/lib/src/store/user.js.map +0 -1
  500. package/lib/src/store/utils.d.ts +0 -2
  501. package/lib/src/store/utils.d.ts.map +0 -1
  502. package/lib/src/store/utils.js +0 -59
  503. package/lib/src/store/utils.js.map +0 -1
  504. package/lib/src/utils/browser.d.ts +0 -2
  505. package/lib/src/utils/browser.d.ts.map +0 -1
  506. package/lib/src/utils/browser.js +0 -9
  507. package/lib/src/utils/browser.js.map +0 -1
  508. package/lib/src/utils/document-editor-debug-tools.d.ts +0 -17
  509. package/lib/src/utils/document-editor-debug-tools.d.ts.map +0 -1
  510. package/lib/src/utils/document-editor-debug-tools.js +0 -55
  511. package/lib/src/utils/document-editor-debug-tools.js.map +0 -1
  512. package/lib/src/utils/drive-preservation.d.ts +0 -19
  513. package/lib/src/utils/drive-preservation.d.ts.map +0 -1
  514. package/lib/src/utils/drive-preservation.js +0 -51
  515. package/lib/src/utils/drive-preservation.js.map +0 -1
  516. package/lib/src/utils/drive-sections.d.ts +0 -31
  517. package/lib/src/utils/drive-sections.d.ts.map +0 -1
  518. package/lib/src/utils/drive-sections.js +0 -63
  519. package/lib/src/utils/drive-sections.js.map +0 -1
  520. package/lib/src/utils/index.d.ts +0 -12
  521. package/lib/src/utils/index.d.ts.map +0 -1
  522. package/lib/src/utils/index.js +0 -12
  523. package/lib/src/utils/index.js.map +0 -1
  524. package/lib/src/utils/join.d.ts +0 -2
  525. package/lib/src/utils/join.d.ts.map +0 -1
  526. package/lib/src/utils/join.js +0 -11
  527. package/lib/src/utils/join.js.map +0 -1
  528. package/lib/src/utils/openUrl.d.ts +0 -2
  529. package/lib/src/utils/openUrl.d.ts.map +0 -1
  530. package/lib/src/utils/openUrl.js +0 -3
  531. package/lib/src/utils/openUrl.js.map +0 -1
  532. package/lib/src/utils/path.d.ts +0 -4
  533. package/lib/src/utils/path.d.ts.map +0 -1
  534. package/lib/src/utils/path.js +0 -17
  535. package/lib/src/utils/path.js.map +0 -1
  536. package/lib/src/utils/reactor.d.ts +0 -26
  537. package/lib/src/utils/reactor.d.ts.map +0 -1
  538. package/lib/src/utils/reactor.js +0 -115
  539. package/lib/src/utils/reactor.js.map +0 -1
  540. package/lib/src/utils/registerServiceWorker.d.ts +0 -12
  541. package/lib/src/utils/registerServiceWorker.d.ts.map +0 -1
  542. package/lib/src/utils/registerServiceWorker.js +0 -97
  543. package/lib/src/utils/registerServiceWorker.js.map +0 -1
  544. package/lib/src/utils/signature.d.ts +0 -4
  545. package/lib/src/utils/signature.d.ts.map +0 -1
  546. package/lib/src/utils/signature.js +0 -36
  547. package/lib/src/utils/signature.js.map +0 -1
  548. package/lib/src/utils/slug.d.ts +0 -2
  549. package/lib/src/utils/slug.d.ts.map +0 -1
  550. package/lib/src/utils/slug.js +0 -4
  551. package/lib/src/utils/slug.js.map +0 -1
  552. package/lib/src/workers/pglite-worker.d.ts +0 -2
  553. package/lib/src/workers/pglite-worker.d.ts.map +0 -1
  554. package/lib/src/workers/pglite-worker.js +0 -32
  555. package/lib/src/workers/pglite-worker.js.map +0 -1
  556. package/lib/test/utils/signer.test.d.ts +0 -2
  557. package/lib/test/utils/signer.test.d.ts.map +0 -1
  558. package/lib/test/utils/signer.test.js +0 -330
  559. package/lib/test/utils/signer.test.js.map +0 -1
  560. package/lib/tsconfig.tsbuildinfo +0 -1
  561. package/lib/vite.config.d.ts +0 -3
  562. package/lib/vite.config.d.ts.map +0 -1
  563. package/lib/vite.config.js +0 -59
  564. package/lib/vite.config.js.map +0 -1
  565. package/lib/vitest.config.d.ts +0 -3
  566. package/lib/vitest.config.d.ts.map +0 -1
  567. package/lib/vitest.config.js +0 -8
  568. package/lib/vitest.config.js.map +0 -1
  569. package/nginx.conf +0 -77
  570. package/package.copy.json +0 -177
  571. package/src/index.css +0 -5
@@ -0,0 +1,783 @@
1
+ import { i as phGlobalConfigFromEnv } from "./connect.config-Cuh0hj_Q.js";
2
+ import { n as toast } from "./toast-DnODOv28.js";
3
+ import { a as loadPGliteModule, n as detectRelationalPgMajor, s as resolvePgMajorForRuntime, t as detectReactorPgMajor } from "./pglite-runtime-C1g-4Jxl.js";
4
+ import { BrowserLocalStorage, ChannelScheme, DocumentCache, DocumentChangeType, ReactorBuilder, ReactorClientBuilder, RegistryClient, addPHEventHandlers, addRemoteDrive, createAnalyticsStore, extractDriveSlugFromPath, extractNodeSlugFromPath, getDrives, login, refreshReactorDataClient, setDefaultPHGlobalConfig, setDocumentCache, setDrives, setFeatures, setPHToast, setPackageDiscoveryService, setReactorClient, setReactorClientModule, setRenown, setSelectedDrive, setSelectedNode, setVetraPackageManager } from "@powerhousedao/reactor-browser";
5
+ import { ConsoleLogger, logger, setLogLevel as setLogLevel$1 } from "document-model";
6
+ import { createRelationalDb } from "@powerhousedao/shared/processors";
7
+ import { BrowserKeyStorage, RenownBuilder, RenownCryptoBuilder, createSignatureVerifier } from "@renown/sdk";
8
+ import { Kysely } from "kysely";
9
+ import { PGliteDialect } from "kysely-pglite-dialect";
10
+ import { OpenFeature } from "@openfeature/web-sdk";
11
+ import * as common from "@powerhousedao/powerhouse-vetra-packages";
12
+ import commonPkg from "@powerhousedao/powerhouse-vetra-packages/package.json" with { type: "json" };
13
+ import * as vetra from "@powerhousedao/vetra";
14
+ import vetraPkg from "@powerhousedao/vetra/package.json" with { type: "json" };
15
+ //#region src/utils/reactor.ts
16
+ /**
17
+ * Creates a Reactor that plugs into legacy storage but syncs through the new
18
+ * Reactor GQL API.
19
+ */
20
+ async function createBrowserReactor(documentModelModules, upgradeManifests, renown, documentModelLoader) {
21
+ const signerConfig = {
22
+ signer: renown.signer,
23
+ verifier: createSignatureVerifier()
24
+ };
25
+ const jwtHandler = async (url) => {
26
+ if (!renown.user) return;
27
+ return renown.getBearerToken({
28
+ expiresIn: 10,
29
+ aud: url
30
+ });
31
+ };
32
+ const major = resolvePgMajorForRuntime(await detectReactorPgMajor());
33
+ if (major !== 17) console.warn(`[reactor] Running against legacy PGlite data dir (Postgres ${major}). Migrate to PG17 from the banner or the Inspector → Debug tab.`);
34
+ const { PGlite } = await loadPGliteModule(major);
35
+ const pg = new PGlite("idb://reactor", { relaxedDurability: true });
36
+ const logger = new ConsoleLogger(["reactor-client"]);
37
+ const builder = new ReactorClientBuilder().withLogger(logger).withSigner(signerConfig).withReactorBuilder(new ReactorBuilder().withDocumentModels(documentModelModules).withUpgradeManifests(upgradeManifests).withChannelScheme(ChannelScheme.CONNECT).withJwtHandler(jwtHandler).withKysely(new Kysely({ dialect: new PGliteDialect(pg) })));
38
+ if (documentModelLoader) builder.withDocumentModelLoader(documentModelLoader);
39
+ return {
40
+ ...await builder.buildModule(),
41
+ pg
42
+ };
43
+ }
44
+ /**
45
+ * Parse default drives from environment variable.
46
+ * Returns an array of drive REST endpoint URLs (e.g., "https://example.com/d/powerhouse").
47
+ */
48
+ function getDefaultDrivesFromEnv() {
49
+ const envValue = import.meta.env.PH_CONNECT_DEFAULT_DRIVES_URL;
50
+ if (!envValue) return [];
51
+ return envValue.split(",").filter((url) => url.trim().length > 0);
52
+ }
53
+ /**
54
+ * Add default drives for the new reactor via sync manager.
55
+ *
56
+ * Retries with linear backoff to handle the common race where Connect's
57
+ * dev server is ready before the switchboard has finished binding its port.
58
+ *
59
+ * @param defaultDriveUrls - Array of drive REST endpoint URLs (e.g., "https://example.com/d/powerhouse")
60
+ */
61
+ async function addDefaultDrivesForNewReactor(defaultDriveUrls) {
62
+ const MAX_ATTEMPTS = 3;
63
+ const BACKOFF_MS = 2e3;
64
+ for (const url of defaultDriveUrls) for (let attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) try {
65
+ await addRemoteDrive(url);
66
+ break;
67
+ } catch (error) {
68
+ if (attempt === MAX_ATTEMPTS) console.error(`Failed to add default drive ${url} after ${MAX_ATTEMPTS} attempts:`, error);
69
+ else {
70
+ const delay = BACKOFF_MS * attempt;
71
+ console.warn(`Default drive ${url} not reachable (attempt ${attempt}/${MAX_ATTEMPTS}), retrying in ${delay}ms...`);
72
+ await new Promise((resolve) => setTimeout(resolve, delay));
73
+ }
74
+ }
75
+ }
76
+ //#endregion
77
+ //#region src/feature-flags.ts
78
+ /**
79
+ * QueryParamProvider reads feature flags from URL query parameters.
80
+ *
81
+ * Usage:
82
+ * const params = new URLSearchParams(window.location.search);
83
+ * const provider = new QueryParamProvider(params);
84
+ * await OpenFeature.setProviderAndWait(provider);
85
+ *
86
+ * Query parameter format:
87
+ * ?FEATURE_DUAL_ACTION_CREATE_ENABLED=true&FEATURE_FOO=false
88
+ */
89
+ var QueryParamProvider = class {
90
+ runsOn = "client";
91
+ metadata = { name: "QueryParamProvider" };
92
+ flags;
93
+ constructor(searchParams) {
94
+ this.flags = /* @__PURE__ */ new Map();
95
+ for (const [key, value] of searchParams.entries()) this.flags.set(key, value);
96
+ }
97
+ resolveBooleanEvaluation(flagKey, defaultValue) {
98
+ const value = this.flags.get(flagKey);
99
+ if (value === void 0) return {
100
+ value: defaultValue,
101
+ reason: "DEFAULT"
102
+ };
103
+ return {
104
+ value: value.toLowerCase() === "true" || value === "1",
105
+ reason: "STATIC",
106
+ variant: value
107
+ };
108
+ }
109
+ resolveStringEvaluation(flagKey, defaultValue) {
110
+ const value = this.flags.get(flagKey);
111
+ if (value === void 0) return {
112
+ value: defaultValue,
113
+ reason: "DEFAULT"
114
+ };
115
+ return {
116
+ value,
117
+ reason: "STATIC",
118
+ variant: value
119
+ };
120
+ }
121
+ resolveNumberEvaluation(flagKey, defaultValue) {
122
+ const value = this.flags.get(flagKey);
123
+ if (value === void 0) return {
124
+ value: defaultValue,
125
+ reason: "DEFAULT"
126
+ };
127
+ const numValue = Number(value);
128
+ if (isNaN(numValue)) return {
129
+ value: defaultValue,
130
+ reason: "ERROR",
131
+ errorCode: "PARSE_ERROR",
132
+ errorMessage: `Failed to parse "${value}" as a number`
133
+ };
134
+ return {
135
+ value: numValue,
136
+ reason: "STATIC",
137
+ variant: value
138
+ };
139
+ }
140
+ resolveObjectEvaluation(flagKey, defaultValue) {
141
+ const value = this.flags.get(flagKey);
142
+ if (value === void 0) return {
143
+ value: defaultValue,
144
+ reason: "DEFAULT"
145
+ };
146
+ try {
147
+ return {
148
+ value: JSON.parse(value),
149
+ reason: "STATIC",
150
+ variant: value
151
+ };
152
+ } catch (error) {
153
+ return {
154
+ value: defaultValue,
155
+ reason: "ERROR",
156
+ errorCode: "PARSE_ERROR",
157
+ errorMessage: `Failed to parse JSON: ${error instanceof Error ? error.message : String(error)}`
158
+ };
159
+ }
160
+ }
161
+ };
162
+ /**
163
+ * Initialize OpenFeature with the QueryParamProvider.
164
+ * Reads feature flags from query parameters.
165
+ */
166
+ async function initFeatureFlags(searchParams) {
167
+ const params = searchParams ?? (typeof window !== "undefined" ? new URLSearchParams(window.location.search) : new URLSearchParams());
168
+ const provider = new QueryParamProvider(params);
169
+ await OpenFeature.setProviderAndWait(provider);
170
+ const features = /* @__PURE__ */ new Map();
171
+ const logLevelParam = params.get("LOG_LEVEL");
172
+ if (logLevelParam) {
173
+ const validLogLevels = [
174
+ "verbose",
175
+ "debug",
176
+ "info",
177
+ "warn",
178
+ "error"
179
+ ];
180
+ if (validLogLevels.includes(logLevelParam.toLowerCase())) {
181
+ setLogLevel$1(logLevelParam.toLowerCase());
182
+ logger.info("Log level set to @level via query param", logLevelParam.toLowerCase());
183
+ } else logger.warn("Invalid LOG_LEVEL query param: @param. Valid values: @validLevels", logLevelParam, validLogLevels.join(", "));
184
+ }
185
+ return features;
186
+ }
187
+ //#endregion
188
+ //#region src/package-discovery.ts
189
+ var PackageDiscoveryService = class {
190
+ #packageManager;
191
+ #registryClient;
192
+ #mode;
193
+ #deferred = /* @__PURE__ */ new Map();
194
+ #pending = /* @__PURE__ */ new Map();
195
+ #pendingMemo = [];
196
+ #pendingSubscribers = /* @__PURE__ */ new Set();
197
+ #eventSubscribers = /* @__PURE__ */ new Set();
198
+ #dismissedStorage;
199
+ #discoveredTypes = /* @__PURE__ */ new Map();
200
+ constructor(packageManager, registryClient, options) {
201
+ this.#packageManager = packageManager;
202
+ this.#registryClient = registryClient;
203
+ this.#mode = options.mode;
204
+ this.#dismissedStorage = new BrowserLocalStorage(options.storageKey + ":PH_DISMISSED_TYPES");
205
+ }
206
+ load(documentType) {
207
+ const existing = this.#findModuleInLoadedPackages(documentType);
208
+ if (existing) return Promise.resolve(existing);
209
+ if (this.#dismissedStorage.has(documentType)) return Promise.reject(/* @__PURE__ */ new Error(`Document type "${documentType}" was dismissed`));
210
+ const tracked = this.#deferred.get(documentType);
211
+ if (tracked) return tracked.promise;
212
+ return this.#discover(documentType);
213
+ }
214
+ promptInstallation(documentType) {
215
+ const packageNames = this.#discoveredTypes.get(documentType);
216
+ if (!packageNames) return;
217
+ if (this.#pending.has(documentType)) return;
218
+ this.#discoveredTypes.delete(documentType);
219
+ this.#addToPending(documentType, packageNames);
220
+ }
221
+ async approveInstallation(packageName) {
222
+ const affectedTypes = this.#findTypesByPackage(packageName);
223
+ if (affectedTypes.length === 0) return;
224
+ const result = await this.#packageManager.addPackage(packageName);
225
+ if (result.type === "error") {
226
+ this.#emitEvent({
227
+ type: "installation-failed",
228
+ packageName,
229
+ error: result.error
230
+ });
231
+ for (const documentType of affectedTypes) {
232
+ const entry = this.#deferred.get(documentType);
233
+ if (entry) {
234
+ entry.reject(result.error);
235
+ this.#deferred.delete(documentType);
236
+ this.#pending.delete(documentType);
237
+ }
238
+ }
239
+ this.#notifyPendingChanged();
240
+ return;
241
+ }
242
+ this.#emitEvent({
243
+ type: "installation-approved",
244
+ packageName,
245
+ documentTypes: affectedTypes
246
+ });
247
+ for (const documentType of affectedTypes) {
248
+ const entry = this.#deferred.get(documentType);
249
+ if (!entry) continue;
250
+ const module = this.#findModuleInLoadedPackages(documentType);
251
+ if (module) entry.resolve(module);
252
+ else entry.reject(/* @__PURE__ */ new Error(`Package "${packageName}" installed but module for "${documentType}" not found`));
253
+ this.#deferred.delete(documentType);
254
+ this.#pending.delete(documentType);
255
+ }
256
+ this.#notifyPendingChanged();
257
+ }
258
+ dismissInstallation(packageName) {
259
+ const affectedTypes = this.#findTypesByPackage(packageName);
260
+ if (affectedTypes.length === 0) return;
261
+ for (const documentType of affectedTypes) {
262
+ this.#dismissedStorage.set(documentType, true);
263
+ const entry = this.#deferred.get(documentType);
264
+ if (entry) entry.reject(/* @__PURE__ */ new Error(`Document type "${documentType}" was dismissed`));
265
+ this.#deferred.delete(documentType);
266
+ this.#pending.delete(documentType);
267
+ this.#discoveredTypes.delete(documentType);
268
+ }
269
+ this.#emitEvent({
270
+ type: "installation-dismissed",
271
+ packageName,
272
+ documentTypes: affectedTypes
273
+ });
274
+ this.#notifyPendingChanged();
275
+ }
276
+ getPendingInstallations() {
277
+ return this.#pendingMemo;
278
+ }
279
+ subscribePending(listener) {
280
+ this.#pendingSubscribers.add(listener);
281
+ return () => {
282
+ this.#pendingSubscribers.delete(listener);
283
+ };
284
+ }
285
+ subscribeEvents(listener) {
286
+ this.#eventSubscribers.add(listener);
287
+ return () => {
288
+ this.#eventSubscribers.delete(listener);
289
+ };
290
+ }
291
+ async #discover(documentType) {
292
+ let packageNames;
293
+ try {
294
+ packageNames = await this.#registryClient.getPackagesByDocumentType(documentType);
295
+ } catch (error) {
296
+ this.#emitEvent({
297
+ type: "registry-query-failed",
298
+ documentType,
299
+ error: error instanceof Error ? error : new Error(String(error))
300
+ });
301
+ return Promise.reject(error instanceof Error ? error : new Error(String(error)));
302
+ }
303
+ if (packageNames.length === 0) return Promise.reject(/* @__PURE__ */ new Error(`No packages found for document type "${documentType}"`));
304
+ const entry = this.#createDeferredEntry(documentType, packageNames);
305
+ this.#emitEvent({
306
+ type: "type-discovered",
307
+ documentType,
308
+ packageNames
309
+ });
310
+ if (this.#mode === "immediate") this.#addToPending(documentType, packageNames);
311
+ else this.#discoveredTypes.set(documentType, packageNames);
312
+ return entry.promise;
313
+ }
314
+ #createDeferredEntry(documentType, packageNames) {
315
+ let resolve;
316
+ let reject;
317
+ const promise = new Promise((res, rej) => {
318
+ resolve = res;
319
+ reject = rej;
320
+ });
321
+ const entry = {
322
+ packageNames,
323
+ resolve,
324
+ reject,
325
+ promise
326
+ };
327
+ this.#deferred.set(documentType, entry);
328
+ return entry;
329
+ }
330
+ #addToPending(documentType, packageNames) {
331
+ const installation = {
332
+ documentType,
333
+ packageNames
334
+ };
335
+ this.#pending.set(documentType, installation);
336
+ this.#emitEvent({
337
+ type: "installation-prompted",
338
+ documentType,
339
+ packageNames
340
+ });
341
+ this.#notifyPendingChanged();
342
+ }
343
+ #findModuleInLoadedPackages(documentType) {
344
+ return this.#packageManager.packages.flatMap((p) => p.documentModels).find((m) => m.documentModel.global.id === documentType);
345
+ }
346
+ #findTypesByPackage(packageName) {
347
+ const types = [];
348
+ for (const [documentType, entry] of this.#deferred) if (entry.packageNames.includes(packageName)) types.push(documentType);
349
+ return types;
350
+ }
351
+ #notifyPendingChanged() {
352
+ this.#pendingMemo = Array.from(this.#pending.values());
353
+ for (const listener of this.#pendingSubscribers) listener();
354
+ }
355
+ #emitEvent(event) {
356
+ for (const listener of this.#eventSubscribers) listener(event);
357
+ }
358
+ };
359
+ //#endregion
360
+ //#region src/package-manager.ts
361
+ /**
362
+ * Strip any `@tag` / `@version` suffix from a package spec, returning the bare
363
+ * package name. Mirrors `parsePackageSpec` on the UI side.
364
+ */
365
+ function parseBareName(spec) {
366
+ const trimmed = spec.trim();
367
+ const at = trimmed.startsWith("@") ? trimmed.lastIndexOf("@") : trimmed.indexOf("@");
368
+ return at > 0 ? trimmed.slice(0, at) : trimmed;
369
+ }
370
+ async function fetchPackageJsonVersion(baseUrl) {
371
+ try {
372
+ const res = await fetch(baseUrl);
373
+ if (!res.ok) return void 0;
374
+ const pkg = await res.json();
375
+ return typeof pkg.version === "string" ? pkg.version : void 0;
376
+ } catch {
377
+ return;
378
+ }
379
+ }
380
+ const LOCAL_PACKAGE_NAME = "Local";
381
+ var BrowserPackageManager = class {
382
+ registryUrl;
383
+ #storage;
384
+ #packages = /* @__PURE__ */ new Map();
385
+ #subscribers = /* @__PURE__ */ new Set();
386
+ #packagesMemo = [];
387
+ #stylesheets = /* @__PURE__ */ new Map();
388
+ #localPackage;
389
+ #cdnUrl;
390
+ #localPackageVersion;
391
+ #localPackageNames = new Set([LOCAL_PACKAGE_NAME]);
392
+ constructor(namespace, registryUrl) {
393
+ this.#storage = new BrowserLocalStorage(namespace + ":PH_PACKAGES");
394
+ this.registryUrl = registryUrl;
395
+ this.#cdnUrl = registryUrl !== null ? this.#toCdnUrl(registryUrl) : null;
396
+ }
397
+ #toCdnUrl(baseUrl) {
398
+ if (baseUrl.includes("/-/cdn")) return baseUrl;
399
+ return `${baseUrl.endsWith("/") ? baseUrl.slice(0, -1) : baseUrl}/-/cdn`;
400
+ }
401
+ async init(localPackage, localPackageVersion) {
402
+ this.addLocalPackage(common.manifest.name, common, commonPkg.version);
403
+ this.addLocalPackage(vetra.manifest.name, vetra, vetraPkg.version);
404
+ if (localPackage) this.updateLocalPackage(localPackage, localPackageVersion);
405
+ for (const packageName of this.#storage.keys()) {
406
+ const specForReload = this.#storage.get(packageName)?.spec ?? packageName;
407
+ console.debug(`[Connect][PackageManager] Rehydrating "${packageName}" via spec "${specForReload}"`);
408
+ if ((await this.addPackage(specForReload)).type === "error") this.#storage.delete(packageName);
409
+ }
410
+ }
411
+ addLocalPackage(name, loadedPackage, version) {
412
+ this.#localPackageNames.add(name);
413
+ this.#registerPackage({
414
+ name,
415
+ importUrl: null,
416
+ stylesheetUrl: null,
417
+ loadedPackage,
418
+ version
419
+ });
420
+ }
421
+ updateLocalPackage(pkg, version) {
422
+ console.debug("Updating local package:", pkg);
423
+ this.#localPackage = pkg;
424
+ this.#registerPackage({
425
+ name: LOCAL_PACKAGE_NAME,
426
+ stylesheetUrl: null,
427
+ importUrl: null,
428
+ loadedPackage: pkg
429
+ });
430
+ if (version) {
431
+ this.#localPackageVersion = version;
432
+ this.#notifyPackagesChanged();
433
+ return;
434
+ }
435
+ fetchPackageJsonVersion("/package.json").then((fetchedVersion) => {
436
+ this.#localPackageVersion = fetchedVersion;
437
+ if (fetchedVersion) this.#notifyPackagesChanged();
438
+ }).catch(() => {});
439
+ }
440
+ get packages() {
441
+ return this.#packagesMemo;
442
+ }
443
+ get cdnUrl() {
444
+ return this.#cdnUrl;
445
+ }
446
+ getPackageSource(packageName) {
447
+ if (this.#localPackageNames.has(packageName)) return "common";
448
+ if (packageName === this.#localPackage?.manifest.name) return "project";
449
+ const packageMeta = this.#storage.get(packageName);
450
+ if (!packageMeta) return null;
451
+ if (packageMeta.importUrl === `/node_modules/${packageName}`) return "local-install";
452
+ return "registry-install";
453
+ }
454
+ getPackageVersion(packageName) {
455
+ if (packageName === this.#localPackage?.manifest.name) return this.#localPackageVersion;
456
+ return this.#storage.get(packageName)?.version;
457
+ }
458
+ async addPackage(packageSpec) {
459
+ const bareName = parseBareName(packageSpec);
460
+ const hasTagOrVersion = bareName !== packageSpec;
461
+ console.debug(`[Connect][PackageManager] addPackage spec="${packageSpec}" bareName="${bareName}"`);
462
+ const existingPackage = this.#packages.get(bareName);
463
+ if (existingPackage) {
464
+ console.debug(`[Connect][PackageManager] "${bareName}" already loaded; skipping re-fetch`);
465
+ return {
466
+ type: "success",
467
+ package: existingPackage
468
+ };
469
+ }
470
+ try {
471
+ const packageWithMeta = await this.#loadPackage(packageSpec);
472
+ packageWithMeta.name = bareName;
473
+ if (hasTagOrVersion) packageWithMeta.spec = packageSpec;
474
+ this.#registerPackage(packageWithMeta);
475
+ return {
476
+ type: "success",
477
+ package: packageWithMeta.loadedPackage
478
+ };
479
+ } catch (error) {
480
+ const normalized = error instanceof Error ? error : new Error(String(error));
481
+ console.error(`[Connect][PackageManager] Failed to install package "${packageSpec}": ${normalized.message}`, normalized);
482
+ return {
483
+ type: "error",
484
+ error: normalized
485
+ };
486
+ }
487
+ }
488
+ async addPackages(packageNames) {
489
+ const results = [];
490
+ for (const packageName of packageNames) {
491
+ const result = await this.addPackage(packageName);
492
+ results.push(result);
493
+ }
494
+ return results;
495
+ }
496
+ removePackage(name) {
497
+ this.#packages.delete(name);
498
+ this.#storage.delete(name);
499
+ this.#unmountStylesheet(name);
500
+ this.#notifyPackagesChanged();
501
+ }
502
+ subscribe(handler) {
503
+ this.#subscribers.add(handler);
504
+ return () => {
505
+ this.#subscribers.delete(handler);
506
+ };
507
+ }
508
+ load(documentType) {
509
+ const documentModelModule = Array.from(this.#packages.values().flatMap((p) => p.documentModels)).find((m) => m.documentModel.global.id === documentType);
510
+ if (documentModelModule) return Promise.resolve(documentModelModule);
511
+ return Promise.reject(/* @__PURE__ */ new Error("Model not available"));
512
+ }
513
+ async #loadPackageFromNodeModules(name) {
514
+ const importUrl = `/node_modules/${name}/browser/index.js`;
515
+ const stylesheetUrl = `/node_modules/${name}/style.css`;
516
+ const packageWithMeta = await this.#importPackage({
517
+ name,
518
+ importUrl,
519
+ stylesheetUrl
520
+ });
521
+ packageWithMeta.version = await fetchPackageJsonVersion(`/node_modules/${name}/package.json`);
522
+ return packageWithMeta;
523
+ }
524
+ async #loadPackageFromRegistry(name) {
525
+ const importUrl = `${this.#cdnUrl}/${name}/browser/index.js`;
526
+ const stylesheetUrl = `${this.#cdnUrl}/${name}/style.css`;
527
+ const packageWithMeta = await this.#importPackage({
528
+ name,
529
+ importUrl,
530
+ stylesheetUrl
531
+ });
532
+ packageWithMeta.version = await fetchPackageJsonVersion(`${this.#cdnUrl}/${name}/package.json`);
533
+ return packageWithMeta;
534
+ }
535
+ async #importPackage(packageMeta) {
536
+ const { name, importUrl, stylesheetUrl } = packageMeta;
537
+ if (!importUrl) throw new Error(`Import url not defined for package "${name}".`);
538
+ return {
539
+ name,
540
+ loadedPackage: await import(
541
+ /* @vite-ignore */
542
+ importUrl
543
+ ),
544
+ importUrl,
545
+ stylesheetUrl
546
+ };
547
+ }
548
+ async #loadPackage(packageName) {
549
+ if (this.#localPackageNames.has(packageName)) throw new Error(`Package "${packageName}" is a local package and cannot be loaded dynamically.`);
550
+ if (!import.meta.env.PROD) try {
551
+ return await this.#loadPackageFromNodeModules(packageName);
552
+ } catch (error) {
553
+ console.warn(`Failed to load package "${packageName}" from node_modules:`, error);
554
+ }
555
+ if (!this.registryUrl) throw new Error("Registry url not defined.");
556
+ return await this.#loadPackageFromRegistry(packageName);
557
+ }
558
+ #registerPackage(packageWithMeta) {
559
+ const { name, loadedPackage, importUrl, stylesheetUrl, version, spec } = packageWithMeta;
560
+ if (stylesheetUrl !== null) this.#mountStylesheet(name, stylesheetUrl);
561
+ this.#packages.set(name, loadedPackage);
562
+ this.#storage.set(name, {
563
+ name,
564
+ importUrl,
565
+ stylesheetUrl,
566
+ version,
567
+ ...spec ? { spec } : {}
568
+ });
569
+ console.debug(`[Connect][PackageManager] Registered "${name}" (version=${version ?? "?"}, spec=${spec ?? "—"})`);
570
+ this.#notifyPackagesChanged();
571
+ }
572
+ #mountStylesheet(name, href) {
573
+ const existing = this.#stylesheets.get(name);
574
+ if (existing) return existing;
575
+ const link = document.createElement("link");
576
+ link.rel = "stylesheet";
577
+ link.href = href;
578
+ document.head.appendChild(link);
579
+ this.#stylesheets.set(name, link);
580
+ }
581
+ #unmountStylesheet(name) {
582
+ const link = this.#stylesheets.get(name);
583
+ if (!link) return;
584
+ link.remove();
585
+ this.#stylesheets.delete(name);
586
+ }
587
+ #notifyPackagesChanged() {
588
+ this.#packagesMemo = Array.from(this.#packages.values());
589
+ const packages = this.packages;
590
+ this.#subscribers.forEach((handler) => {
591
+ handler({ packages });
592
+ });
593
+ }
594
+ };
595
+ //#endregion
596
+ //#region src/packages.config.ts
597
+ function assertPackagesConfig(value) {
598
+ if (typeof value !== "object" || value === null) throw new Error("ph-packages.json must be a JSON object");
599
+ const obj = value;
600
+ if (!Array.isArray(obj.packages)) throw new Error("ph-packages.json: 'packages' must be an array");
601
+ if (!obj.packages.every((item) => typeof item === "string")) throw new Error("ph-packages.json: 'packages' must be an array of strings");
602
+ }
603
+ let cached;
604
+ async function loadPackagesConfig() {
605
+ if (cached) return cached;
606
+ const url = `${import.meta.env.BASE_URL ?? "/"}ph-packages.json`;
607
+ const json = await (await fetch(url)).json();
608
+ assertPackagesConfig(json);
609
+ cached = json;
610
+ return cached;
611
+ }
612
+ //#endregion
613
+ //#region src/pglite.db.ts
614
+ async function createPGliteWorkerForMajor(major) {
615
+ if (major === 16) {
616
+ const [legacyWorker, legacyLive] = await Promise.all([import("pglite-legacy-02/worker"), import("pglite-legacy-02/live")]);
617
+ const worker = new Worker(new URL("./pglite.worker.legacy.js", import.meta.url), { type: "module" });
618
+ return legacyWorker.PGliteWorker.create(worker, { extensions: { live: legacyLive.live } });
619
+ }
620
+ const [{ PGliteWorker }, { live }] = await Promise.all([import("@electric-sql/pglite/worker"), import("@electric-sql/pglite/live")]);
621
+ const worker = new Worker(new URL("./pglite.worker.js", import.meta.url), { type: "module" });
622
+ return PGliteWorker.create(worker, { extensions: { live } });
623
+ }
624
+ async function getDb() {
625
+ const major = resolvePgMajorForRuntime(await detectRelationalPgMajor());
626
+ if (major !== 17) console.warn(`[reactor] Relational worker is opening legacy Postgres ${major} data dir. Migrate to PG17 from the banner or the Inspector → Debug tab.`);
627
+ const pgLite = await createPGliteWorkerForMajor(major);
628
+ return {
629
+ pgLite,
630
+ relationalDb: createRelationalDb(new Kysely({ dialect: new PGliteDialect(pgLite) }))
631
+ };
632
+ }
633
+ //#endregion
634
+ //#region src/store/processor-host-module.ts
635
+ async function createProcessorHostModule(reactorClient, readModels) {
636
+ try {
637
+ const { pgLite, relationalDb } = await getDb();
638
+ const { store: analyticsStore } = await createAnalyticsStore({ pgLite });
639
+ return {
640
+ relationalDb,
641
+ analyticsStore,
642
+ processorApp: "connect",
643
+ dispatch: { async execute(docId, branch, actions, signal) {
644
+ const jobInfo = await reactorClient.executeAsync(docId, branch, actions, signal);
645
+ return {
646
+ id: jobInfo.id,
647
+ status: jobInfo.status
648
+ };
649
+ } },
650
+ getReadModel(name) {
651
+ const model = readModels.find((m) => m.name === name);
652
+ if (!model) throw new Error(`Read model "${name}" not found`);
653
+ return model;
654
+ }
655
+ };
656
+ } catch (error) {
657
+ console.error(`Failed to initialize processor host module:`);
658
+ console.error(error);
659
+ }
660
+ }
661
+ //#endregion
662
+ //#region src/store/reactor.ts
663
+ async function clearReactorStorage() {
664
+ await window.ph?.reactorClientModule?.pg?.close();
665
+ const targets = (await indexedDB.databases()).map((d) => d.name).filter((n) => !!n && !n.startsWith("ph-pglite-backup::") && /pglite|reactor/i.test(n));
666
+ await Promise.all(targets.map((name) => new Promise((resolve) => {
667
+ const req = indexedDB.deleteDatabase(name);
668
+ req.onsuccess = req.onerror = req.onblocked = () => resolve();
669
+ })));
670
+ }
671
+ async function createReactor(localPackage) {
672
+ if (!window.ph) window.ph = {};
673
+ if (window.ph.loading) return;
674
+ window.ph.loading = true;
675
+ addPHEventHandlers();
676
+ setPHToast(toast);
677
+ const features = await initFeatureFlags();
678
+ logger.info("Features: @features", JSON.stringify(Object.fromEntries(features), null, 2));
679
+ const keyPairStorage = await BrowserKeyStorage.create();
680
+ const renownCrypto = await new RenownCryptoBuilder().withKeyPairStorage(keyPairStorage).build();
681
+ const renown = await new RenownBuilder("connect", {
682
+ basename: phGlobalConfigFromEnv.routerBasename,
683
+ baseUrl: phGlobalConfigFromEnv.renownUrl
684
+ }).withCrypto(renownCrypto).build();
685
+ const packagesConfig = await loadPackagesConfig();
686
+ const packageManager = new BrowserPackageManager(phGlobalConfigFromEnv.routerBasename ?? "", PH_PACKAGE_REGISTRY_URL);
687
+ setVetraPackageManager(packageManager);
688
+ await packageManager.init(localPackage, packagesConfig.localPackage?.version);
689
+ try {
690
+ const { default: registerBundledPackages } = await import("ph-bundled-packages-virtual");
691
+ registerBundledPackages(packageManager);
692
+ } catch {}
693
+ (await packageManager.addPackages(packagesConfig.packages)).map((r) => {
694
+ if (r.type === "error") console.error(r.error);
695
+ });
696
+ const documentModelModules = packageManager.packages.flatMap((pkg) => pkg.documentModels).filter((module, index, modules) => modules.findIndex((m) => m.documentModel.global.id === module.documentModel.global.id && m.version === module.version) === index);
697
+ const upgradeManifests = packageManager.packages.flatMap((pkg) => pkg.upgradeManifests).filter((manifest, index, manifests) => manifest !== void 0 && manifests.findIndex((m) => m && m.documentType === manifest.documentType) === index);
698
+ const discoveryService = packageManager.cdnUrl !== null ? new PackageDiscoveryService(packageManager, new RegistryClient(packageManager.cdnUrl), {
699
+ mode: "immediate",
700
+ storageKey: phGlobalConfigFromEnv.routerBasename ?? ""
701
+ }) : void 0;
702
+ if (discoveryService) setPackageDiscoveryService(discoveryService);
703
+ const reactorClientModule = await createBrowserReactor(documentModelModules, upgradeManifests, renown, discoveryService);
704
+ const drives = await getDrives(reactorClientModule.client);
705
+ const path = window.location.pathname;
706
+ const driveSlug = extractDriveSlugFromPath(path);
707
+ const nodeSlug = extractNodeSlugFromPath(path);
708
+ await login(getDidFromUrl(), renown);
709
+ const documentCache = new DocumentCache(reactorClientModule.client);
710
+ setDefaultPHGlobalConfig(phGlobalConfigFromEnv);
711
+ setReactorClientModule(reactorClientModule);
712
+ setReactorClient(reactorClientModule.client);
713
+ setDocumentCache(documentCache);
714
+ setRenown(renown);
715
+ setDrives(drives);
716
+ setSelectedDrive(driveSlug);
717
+ setSelectedNode(nodeSlug);
718
+ setFeatures(features);
719
+ const defaultDrivesConfig = getDefaultDrivesFromEnv();
720
+ if (defaultDrivesConfig.length > 0) await addDefaultDrivesForNewReactor(defaultDrivesConfig);
721
+ const remoteUrl = getDriveUrl();
722
+ if (remoteUrl) try {
723
+ await addRemoteDrive(remoteUrl);
724
+ } catch (error) {
725
+ console.error(`Failed to add remote drive from ${remoteUrl}:`, error);
726
+ }
727
+ const reactorClient = reactorClientModule.client;
728
+ reactorClient.subscribe({ type: "powerhouse/document-drive" }, (event) => {
729
+ logger.verbose("ReactorClient subscription event: @event", event);
730
+ refreshReactorDataClient(reactorClientModule.client).catch((e) => logger.error("@error", e));
731
+ });
732
+ reactorClient.subscribe({}, (event) => {
733
+ if (event.type !== DocumentChangeType.Deleted) return;
734
+ const deletedId = event.context?.childId;
735
+ if (!deletedId) return;
736
+ const selectedDriveId = window.ph?.selectedDriveId;
737
+ const selectedNodeId = window.ph?.selectedNodeId;
738
+ if (selectedDriveId && deletedId === selectedDriveId) {
739
+ setSelectedDrive(void 0);
740
+ toast("The drive you were viewing has been deleted");
741
+ return;
742
+ }
743
+ if (selectedNodeId && deletedId === selectedNodeId) {
744
+ setSelectedNode(void 0);
745
+ toast("The document you were editing has been deleted");
746
+ }
747
+ });
748
+ await refreshReactorDataClient(reactorClientModule.client);
749
+ const packagesWithProcessorFactories = packageManager.packages.filter((pkg) => pkg.processorFactory !== void 0);
750
+ if (packagesWithProcessorFactories.length > 0) {
751
+ const readModels = reactorClientModule.reactorModule?.readModelCoordinator?.readModels ?? [];
752
+ const processorHostModule = await createProcessorHostModule(reactorClientModule.client, readModels);
753
+ if (processorHostModule !== void 0) await Promise.all(packagesWithProcessorFactories.map(async (pkg) => {
754
+ const { manifest, processorFactory } = pkg;
755
+ const name = manifest.name;
756
+ const id = manifest.name;
757
+ const version = packageManager.getPackageVersion(name);
758
+ const label = version ? `${name}@${version}` : name;
759
+ logger.info("Loading processor factory: @label", label);
760
+ try {
761
+ const factory = await processorFactory?.(processorHostModule);
762
+ if (!factory) return;
763
+ await reactorClientModule.reactorModule?.processorManager.registerFactory(id, factory);
764
+ } catch (error) {
765
+ logger.error(`Error registering processor: @label`, label);
766
+ logger.error("@error", error);
767
+ }
768
+ }));
769
+ }
770
+ window.ph.loading = false;
771
+ }
772
+ function getDidFromUrl() {
773
+ const didComponent = new URLSearchParams(window.location.search).get("user");
774
+ return didComponent ? decodeURIComponent(didComponent) : void 0;
775
+ }
776
+ function getDriveUrl() {
777
+ const driveUrl = new URLSearchParams(window.location.search).get("driveUrl");
778
+ return driveUrl ? decodeURIComponent(driveUrl) : void 0;
779
+ }
780
+ //#endregion
781
+ export { createReactor as n, clearReactorStorage as t };
782
+
783
+ //# sourceMappingURL=reactor-Nm3jOev1.js.map