@powerhousedao/connect 5.0.0-staging.9 → 5.0.1-staging.10

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 (638) hide show
  1. package/{dist/.env → .env} +4 -6
  2. package/README.md +3 -4
  3. package/assets/icon.icns +0 -0
  4. package/assets/icon.ico +0 -0
  5. package/assets/icon.png +0 -0
  6. package/assets/icons/Atlas-Logomark.svg +24 -0
  7. package/assets/icons/BBP-logo-hover-dark.svg +14 -0
  8. package/assets/icons/BBP-logo-hover-light.svg +14 -0
  9. package/assets/icons/BBP-logo-main.svg +14 -0
  10. package/assets/icons/collapse.svg +7 -0
  11. package/assets/icons/connect-small.svg +3 -0
  12. package/assets/icons/connect.svg +16 -0
  13. package/assets/icons/cross.svg +4 -0
  14. package/assets/icons/dark.svg +5 -0
  15. package/assets/icons/draft.svg +3 -0
  16. package/assets/icons/file.svg +3 -0
  17. package/assets/icons/file2.svg +10 -0
  18. package/assets/icons/folder.svg +3 -0
  19. package/assets/icons/light.svg +20 -0
  20. package/assets/icons/logo.svg +11 -0
  21. package/assets/icons/plus-circle.svg +5 -0
  22. package/assets/icons/refresh.svg +4 -0
  23. package/assets/icons/renown.svg +27 -0
  24. package/assets/icons/settings.svg +6 -0
  25. package/assets/icons/template.svg +3 -0
  26. package/assets/info.plist +85 -0
  27. package/dist/assets/AddDriveModal-_VEckfgs.js +1 -0
  28. package/dist/assets/ClearStorageModal-BIEumLFB.js +1 -0
  29. package/dist/assets/CookiesPolicyModal-DxXlDzMD.js +1 -0
  30. package/dist/assets/CreateDocumentModal-i8Mn-zHZ.js +1 -0
  31. package/dist/assets/DebugSettingsModal-B7_0MfyY.js +1 -0
  32. package/dist/assets/DeleteDriveModal-Z_QkBHwL.js +1 -0
  33. package/dist/assets/DeleteItemModal-PX5rpWQp.js +1 -0
  34. package/dist/assets/DisclaimerModal-DnyAi8SY.js +1 -0
  35. package/dist/assets/DriveSettingsModal-CKBxDPF4.js +1 -0
  36. package/dist/assets/ExportDocumentWithErrorsModal-PwfR0wZb.js +1 -0
  37. package/dist/assets/SettingsModal-CvlSE5u_.js +1 -0
  38. package/dist/assets/UpgradeDriveModal-C5OBv8od.js +1 -0
  39. package/dist/assets/config-CU-aFfVJ.js +1 -0
  40. package/dist/assets/design_system-wkSa2XkO.js +45 -0
  41. package/dist/assets/design_system_connect-KiHH4lsC.js +45 -0
  42. package/dist/assets/design_system_ui-yn9Bp8-M.js +1 -0
  43. package/dist/assets/document_drive-BEIKnuGM.js +305 -0
  44. package/dist/assets/document_engineering-DwkL4RC_.js +1 -0
  45. package/dist/assets/document_model-DXcLJEjZ.js +230 -0
  46. package/dist/assets/document_model_editor-Dzl0xzA_.js +23 -0
  47. package/dist/assets/drive_explorer-BXnew3vz.js +2 -0
  48. package/dist/assets/graphql-BS4Brs_E.js +75 -0
  49. package/dist/assets/graphql-editor-CYvFkX8-.js +73 -0
  50. package/dist/assets/graphql_request-9RNJ00DB.js +3 -0
  51. package/dist/assets/hmr-LMNkvzP7.js +1 -0
  52. package/dist/assets/hooks-D1J714hY.js +12 -0
  53. package/dist/assets/index-2InhLUpC.js +18 -0
  54. package/dist/assets/index-Br7E7qjt.css +1 -0
  55. package/dist/assets/json-editor-Meugtes8.js +1 -0
  56. package/dist/assets/react/jsx-runtime-DldvXD6N.js +1 -0
  57. package/dist/assets/react-DQSxOgtG.js +1 -0
  58. package/dist/assets/react-dom/client-BVPiT_FE.js +9 -0
  59. package/dist/assets/react-dom-D6zQJsh6.js +1 -0
  60. package/dist/assets/reactor_browser-CSyNHuU2.js +25 -0
  61. package/dist/assets/sentry_browser-B4YoBIIG.js +498 -0
  62. package/dist/assets/sentry_react-cODD7zWc.js +3 -0
  63. package/dist/assets/state-schemas-Dq1fQPOB.js +2 -0
  64. package/dist/assets/tailwind_merge-Dr4f9Rms.js +1 -0
  65. package/dist/assets/virtual_ph_external-packages-CM1tCR4L.js +1 -0
  66. package/dist/assets/zod-C6yxFxyo.js +1 -0
  67. package/dist/index.html +51 -75
  68. package/heroku/Dockerfile +98 -0
  69. package/heroku/Procfile +1 -0
  70. package/heroku/config/nginx.conf.template +77 -0
  71. package/heroku/heroku-entrypoint.sh +38 -0
  72. package/lib/cypress/e2e/navigation.cy.d.ts +2 -0
  73. package/lib/cypress/e2e/navigation.cy.d.ts.map +1 -0
  74. package/lib/cypress/e2e/navigation.cy.js +221 -0
  75. package/lib/cypress/e2e/navigation.cy.js.map +1 -0
  76. package/lib/cypress/e2e/utils/index.d.ts +15 -0
  77. package/lib/cypress/e2e/utils/index.d.ts.map +1 -0
  78. package/lib/cypress/e2e/utils/index.js +121 -0
  79. package/lib/cypress/e2e/utils/index.js.map +1 -0
  80. package/lib/cypress/support/commands.d.ts +2 -0
  81. package/lib/cypress/support/commands.d.ts.map +1 -0
  82. package/lib/cypress/support/commands.js +29 -0
  83. package/lib/cypress/support/commands.js.map +1 -0
  84. package/lib/cypress/support/e2e.d.ts +2 -0
  85. package/lib/cypress/support/e2e.d.ts.map +1 -0
  86. package/lib/cypress/support/e2e.js +19 -0
  87. package/lib/cypress/support/e2e.js.map +1 -0
  88. package/lib/cypress.config.d.ts +3 -0
  89. package/lib/cypress.config.d.ts.map +1 -0
  90. package/lib/cypress.config.js +15 -0
  91. package/lib/cypress.config.js.map +1 -0
  92. package/lib/package.copy.json +165 -0
  93. package/lib/scripts/render-skeleton.d.ts +2 -0
  94. package/lib/scripts/render-skeleton.d.ts.map +1 -0
  95. package/lib/scripts/render-skeleton.js +11 -0
  96. package/lib/scripts/render-skeleton.js.map +1 -0
  97. package/lib/src/components/analytics.d.ts +8 -0
  98. package/lib/src/components/analytics.d.ts.map +1 -0
  99. package/lib/src/components/analytics.js +30 -0
  100. package/lib/src/components/analytics.js.map +1 -0
  101. package/lib/src/components/app-loader.d.ts +7 -0
  102. package/lib/src/components/app-loader.d.ts.map +1 -0
  103. package/lib/src/components/app-loader.js +20 -0
  104. package/lib/src/components/app-loader.js.map +1 -0
  105. package/lib/src/components/app-skeleton.d.ts +3 -0
  106. package/lib/src/components/app-skeleton.d.ts.map +1 -0
  107. package/lib/src/components/app-skeleton.js +38 -0
  108. package/lib/src/components/app-skeleton.js.map +1 -0
  109. package/lib/src/components/app.d.ts +2 -0
  110. package/lib/src/components/app.d.ts.map +1 -0
  111. package/lib/src/components/app.js +18 -0
  112. package/lib/src/components/app.js.map +1 -0
  113. package/lib/src/components/button.d.ts +3 -0
  114. package/lib/src/components/button.d.ts.map +1 -0
  115. package/lib/src/components/button.js +7 -0
  116. package/lib/src/components/button.js.map +1 -0
  117. package/lib/src/components/cookie-banner.d.ts +2 -0
  118. package/lib/src/components/cookie-banner.d.ts.map +1 -0
  119. package/lib/src/components/cookie-banner.js +48 -0
  120. package/lib/src/components/cookie-banner.js.map +1 -0
  121. package/lib/src/components/document-editor-container.d.ts +2 -0
  122. package/lib/src/components/document-editor-container.d.ts.map +1 -0
  123. package/lib/src/components/document-editor-container.js +62 -0
  124. package/lib/src/components/document-editor-container.js.map +1 -0
  125. package/lib/src/components/dots-loader.d.ts +2 -0
  126. package/lib/src/components/dots-loader.d.ts.map +1 -0
  127. package/lib/src/components/dots-loader.js +15 -0
  128. package/lib/src/components/dots-loader.js.map +1 -0
  129. package/lib/src/components/drive-editor-container.d.ts +2 -0
  130. package/lib/src/components/drive-editor-container.d.ts.map +1 -0
  131. package/lib/src/components/drive-editor-container.js +25 -0
  132. package/lib/src/components/drive-editor-container.js.map +1 -0
  133. package/lib/src/components/drive-icon.d.ts +5 -0
  134. package/lib/src/components/drive-icon.d.ts.map +1 -0
  135. package/lib/src/components/drive-icon.js +15 -0
  136. package/lib/src/components/drive-icon.js.map +1 -0
  137. package/lib/src/components/editor-loader.d.ts +9 -0
  138. package/lib/src/components/editor-loader.d.ts.map +1 -0
  139. package/lib/src/components/editor-loader.js +19 -0
  140. package/lib/src/components/editor-loader.js.map +1 -0
  141. package/lib/src/components/editors.d.ts +10 -0
  142. package/lib/src/components/editors.d.ts.map +1 -0
  143. package/lib/src/components/editors.js +93 -0
  144. package/lib/src/components/editors.js.map +1 -0
  145. package/lib/src/components/footer.d.ts +2 -0
  146. package/lib/src/components/footer.d.ts.map +1 -0
  147. package/lib/src/components/footer.js +16 -0
  148. package/lib/src/components/footer.js.map +1 -0
  149. package/lib/src/components/index.d.ts +22 -0
  150. package/lib/src/components/index.d.ts.map +1 -0
  151. package/lib/src/components/index.js +22 -0
  152. package/lib/src/components/index.js.map +1 -0
  153. package/lib/src/components/login.d.ts +2 -0
  154. package/lib/src/components/login.d.ts.map +1 -0
  155. package/lib/src/components/login.js +12 -0
  156. package/lib/src/components/login.js.map +1 -0
  157. package/lib/src/components/modal/index.d.ts +19 -0
  158. package/lib/src/components/modal/index.d.ts.map +1 -0
  159. package/lib/src/components/modal/index.js +19 -0
  160. package/lib/src/components/modal/index.js.map +1 -0
  161. package/lib/src/components/modal/modals/AddDriveModal.d.ts +2 -0
  162. package/lib/src/components/modal/modals/AddDriveModal.d.ts.map +1 -0
  163. package/lib/src/components/modal/modals/AddDriveModal.js +113 -0
  164. package/lib/src/components/modal/modals/AddDriveModal.js.map +1 -0
  165. package/lib/src/components/modal/modals/ClearStorageModal.d.ts +2 -0
  166. package/lib/src/components/modal/modals/ClearStorageModal.d.ts.map +1 -0
  167. package/lib/src/components/modal/modals/ClearStorageModal.js +35 -0
  168. package/lib/src/components/modal/modals/ClearStorageModal.js.map +1 -0
  169. package/lib/src/components/modal/modals/CookiesPolicyModal.d.ts +2 -0
  170. package/lib/src/components/modal/modals/CookiesPolicyModal.d.ts.map +1 -0
  171. package/lib/src/components/modal/modals/CookiesPolicyModal.js +16 -0
  172. package/lib/src/components/modal/modals/CookiesPolicyModal.js.map +1 -0
  173. package/lib/src/components/modal/modals/CreateDocumentModal.d.ts +2 -0
  174. package/lib/src/components/modal/modals/CreateDocumentModal.d.ts.map +1 -0
  175. package/lib/src/components/modal/modals/CreateDocumentModal.js +24 -0
  176. package/lib/src/components/modal/modals/CreateDocumentModal.js.map +1 -0
  177. package/lib/src/components/modal/modals/DebugSettingsModal.d.ts +2 -0
  178. package/lib/src/components/modal/modals/DebugSettingsModal.d.ts.map +1 -0
  179. package/lib/src/components/modal/modals/DebugSettingsModal.js +108 -0
  180. package/lib/src/components/modal/modals/DebugSettingsModal.js.map +1 -0
  181. package/lib/src/components/modal/modals/DeleteDriveModal.d.ts +2 -0
  182. package/lib/src/components/modal/modals/DeleteDriveModal.d.ts.map +1 -0
  183. package/lib/src/components/modal/modals/DeleteDriveModal.js +32 -0
  184. package/lib/src/components/modal/modals/DeleteDriveModal.js.map +1 -0
  185. package/lib/src/components/modal/modals/DeleteItemModal.d.ts +3 -0
  186. package/lib/src/components/modal/modals/DeleteItemModal.d.ts.map +1 -0
  187. package/lib/src/components/modal/modals/DeleteItemModal.js +33 -0
  188. package/lib/src/components/modal/modals/DeleteItemModal.js.map +1 -0
  189. package/lib/src/components/modal/modals/DisclaimerModal.d.ts +3 -0
  190. package/lib/src/components/modal/modals/DisclaimerModal.d.ts.map +1 -0
  191. package/lib/src/components/modal/modals/DisclaimerModal.js +12 -0
  192. package/lib/src/components/modal/modals/DisclaimerModal.js.map +1 -0
  193. package/lib/src/components/modal/modals/DriveSettingsModal.d.ts +2 -0
  194. package/lib/src/components/modal/modals/DriveSettingsModal.d.ts.map +1 -0
  195. package/lib/src/components/modal/modals/DriveSettingsModal.js +28 -0
  196. package/lib/src/components/modal/modals/DriveSettingsModal.js.map +1 -0
  197. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.d.ts +2 -0
  198. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.d.ts.map +1 -0
  199. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.js +30 -0
  200. package/lib/src/components/modal/modals/ExportDocumentWithErrorsModal.js.map +1 -0
  201. package/lib/src/components/modal/modals/SettingsModal.d.ts +3 -0
  202. package/lib/src/components/modal/modals/SettingsModal.d.ts.map +1 -0
  203. package/lib/src/components/modal/modals/SettingsModal.js +45 -0
  204. package/lib/src/components/modal/modals/SettingsModal.js.map +1 -0
  205. package/lib/src/components/modal/modals/UpgradeDriveModal.d.ts +3 -0
  206. package/lib/src/components/modal/modals/UpgradeDriveModal.d.ts.map +1 -0
  207. package/lib/src/components/modal/modals/UpgradeDriveModal.js +21 -0
  208. package/lib/src/components/modal/modals/UpgradeDriveModal.js.map +1 -0
  209. package/lib/src/components/modal/modals/settings/about.d.ts +2 -0
  210. package/lib/src/components/modal/modals/settings/about.d.ts.map +1 -0
  211. package/lib/src/components/modal/modals/settings/about.js +10 -0
  212. package/lib/src/components/modal/modals/settings/about.js.map +1 -0
  213. package/lib/src/components/modal/modals/settings/danger-zone.d.ts +2 -0
  214. package/lib/src/components/modal/modals/settings/danger-zone.d.ts.map +1 -0
  215. package/lib/src/components/modal/modals/settings/danger-zone.js +15 -0
  216. package/lib/src/components/modal/modals/settings/danger-zone.js.map +1 -0
  217. package/lib/src/components/modal/modals/settings/default-editor.d.ts +2 -0
  218. package/lib/src/components/modal/modals/settings/default-editor.d.ts.map +1 -0
  219. package/lib/src/components/modal/modals/settings/default-editor.js +18 -0
  220. package/lib/src/components/modal/modals/settings/default-editor.js.map +1 -0
  221. package/lib/src/components/modal/modals/settings/package-manager.d.ts +3 -0
  222. package/lib/src/components/modal/modals/settings/package-manager.d.ts.map +1 -0
  223. package/lib/src/components/modal/modals/settings/package-manager.js +87 -0
  224. package/lib/src/components/modal/modals/settings/package-manager.js.map +1 -0
  225. package/lib/src/components/modal/modals-container.d.ts +2 -0
  226. package/lib/src/components/modal/modals-container.d.ts.map +1 -0
  227. package/lib/src/components/modal/modals-container.js +62 -0
  228. package/lib/src/components/modal/modals-container.js.map +1 -0
  229. package/lib/src/components/modal/modals-error-boundary.d.ts +18 -0
  230. package/lib/src/components/modal/modals-error-boundary.d.ts.map +1 -0
  231. package/lib/src/components/modal/modals-error-boundary.js +22 -0
  232. package/lib/src/components/modal/modals-error-boundary.js.map +1 -0
  233. package/lib/src/components/ph-logo.d.ts +2 -0
  234. package/lib/src/components/ph-logo.d.ts.map +1 -0
  235. package/lib/src/components/ph-logo.js +7 -0
  236. package/lib/src/components/ph-logo.js.map +1 -0
  237. package/lib/src/components/reload-connect-toast.d.ts +2 -0
  238. package/lib/src/components/reload-connect-toast.d.ts.map +1 -0
  239. package/lib/src/components/reload-connect-toast.js +7 -0
  240. package/lib/src/components/reload-connect-toast.js.map +1 -0
  241. package/lib/src/components/root.d.ts +2 -0
  242. package/lib/src/components/root.d.ts.map +1 -0
  243. package/lib/src/components/root.js +8 -0
  244. package/lib/src/components/root.js.map +1 -0
  245. package/lib/src/components/router.d.ts +2 -0
  246. package/lib/src/components/router.d.ts.map +1 -0
  247. package/lib/src/components/router.js +41 -0
  248. package/lib/src/components/router.js.map +1 -0
  249. package/lib/src/components/search-bar.d.ts +2 -0
  250. package/lib/src/components/search-bar.d.ts.map +1 -0
  251. package/lib/src/components/search-bar.js +36 -0
  252. package/lib/src/components/search-bar.js.map +1 -0
  253. package/lib/src/components/sidebar.d.ts +2 -0
  254. package/lib/src/components/sidebar.d.ts.map +1 -0
  255. package/lib/src/components/sidebar.js +27 -0
  256. package/lib/src/components/sidebar.js.map +1 -0
  257. package/lib/src/connect.config.d.ts +113 -0
  258. package/lib/src/connect.config.d.ts.map +1 -0
  259. package/lib/src/connect.config.js +147 -0
  260. package/lib/src/connect.config.js.map +1 -0
  261. package/lib/src/context/index.d.ts +4 -0
  262. package/lib/src/context/index.d.ts.map +1 -0
  263. package/lib/src/context/index.js +4 -0
  264. package/lib/src/context/index.js.map +1 -0
  265. package/lib/src/context/processor-manager.d.ts +3 -0
  266. package/lib/src/context/processor-manager.d.ts.map +1 -0
  267. package/lib/src/context/processor-manager.js +189 -0
  268. package/lib/src/context/processor-manager.js.map +1 -0
  269. package/lib/src/context/read-mode.d.ts +2 -0
  270. package/lib/src/context/read-mode.d.ts.map +1 -0
  271. package/lib/src/context/read-mode.js +219 -0
  272. package/lib/src/context/read-mode.js.map +1 -0
  273. package/lib/src/context/sentry-provider.d.ts +6 -0
  274. package/lib/src/context/sentry-provider.d.ts.map +1 -0
  275. package/lib/src/context/sentry-provider.js +6 -0
  276. package/lib/src/context/sentry-provider.js.map +1 -0
  277. package/lib/src/feature-flags.d.ts +34 -0
  278. package/lib/src/feature-flags.d.ts.map +1 -0
  279. package/lib/src/feature-flags.js +124 -0
  280. package/lib/src/feature-flags.js.map +1 -0
  281. package/lib/src/globals.d.ts +9 -0
  282. package/lib/src/globals.d.ts.map +1 -0
  283. package/lib/src/globals.js +2 -0
  284. package/lib/src/globals.js.map +1 -0
  285. package/lib/src/hmr.d.ts +3 -0
  286. package/lib/src/hmr.d.ts.map +1 -0
  287. package/lib/src/hmr.js +2 -0
  288. package/lib/src/hmr.js.map +1 -0
  289. package/lib/src/hooks/index.d.ts +10 -0
  290. package/lib/src/hooks/index.d.ts.map +1 -0
  291. package/lib/src/hooks/index.js +10 -0
  292. package/lib/src/hooks/index.js.map +1 -0
  293. package/lib/src/hooks/useAcceptedCookies.d.ts +9 -0
  294. package/lib/src/hooks/useAcceptedCookies.d.ts.map +1 -0
  295. package/lib/src/hooks/useAcceptedCookies.js +34 -0
  296. package/lib/src/hooks/useAcceptedCookies.js.map +1 -0
  297. package/lib/src/hooks/useCheckLatestVersion.d.ts +2 -0
  298. package/lib/src/hooks/useCheckLatestVersion.d.ts.map +1 -0
  299. package/lib/src/hooks/useCheckLatestVersion.js +33 -0
  300. package/lib/src/hooks/useCheckLatestVersion.js.map +1 -0
  301. package/lib/src/hooks/useClientErrorHandler.d.ts +6 -0
  302. package/lib/src/hooks/useClientErrorHandler.d.ts.map +1 -0
  303. package/lib/src/hooks/useClientErrorHandler.js +120 -0
  304. package/lib/src/hooks/useClientErrorHandler.js.map +1 -0
  305. package/lib/src/hooks/useCookieBanner.d.ts +5 -0
  306. package/lib/src/hooks/useCookieBanner.d.ts.map +1 -0
  307. package/lib/src/hooks/useCookieBanner.js +32 -0
  308. package/lib/src/hooks/useCookieBanner.js.map +1 -0
  309. package/lib/src/hooks/useInitSentry.d.ts +2 -0
  310. package/lib/src/hooks/useInitSentry.d.ts.map +1 -0
  311. package/lib/src/hooks/useInitSentry.js +80 -0
  312. package/lib/src/hooks/useInitSentry.js.map +1 -0
  313. package/lib/src/hooks/useNodeActions.d.ts +6 -0
  314. package/lib/src/hooks/useNodeActions.d.ts.map +1 -0
  315. package/lib/src/hooks/useNodeActions.js +35 -0
  316. package/lib/src/hooks/useNodeActions.js.map +1 -0
  317. package/lib/src/hooks/useUndoRedoShortcuts.d.ts +8 -0
  318. package/lib/src/hooks/useUndoRedoShortcuts.d.ts.map +1 -0
  319. package/lib/src/hooks/useUndoRedoShortcuts.js +26 -0
  320. package/lib/src/hooks/useUndoRedoShortcuts.js.map +1 -0
  321. package/lib/src/hooks/useWindowSize.d.ts +5 -0
  322. package/lib/src/hooks/useWindowSize.d.ts.map +1 -0
  323. package/lib/src/hooks/useWindowSize.js +21 -0
  324. package/lib/src/hooks/useWindowSize.js.map +1 -0
  325. package/lib/src/hooks/utils.d.ts +7 -0
  326. package/lib/src/hooks/utils.d.ts.map +1 -0
  327. package/lib/src/hooks/utils.js +46 -0
  328. package/lib/src/hooks/utils.js.map +1 -0
  329. package/lib/src/i18n/index.d.ts +4 -0
  330. package/lib/src/i18n/index.d.ts.map +1 -0
  331. package/lib/src/i18n/index.js +26 -0
  332. package/lib/src/i18n/index.js.map +1 -0
  333. package/lib/src/i18n/locales/en.json +114 -0
  334. package/lib/src/index.d.ts +2 -0
  335. package/lib/src/index.d.ts.map +1 -0
  336. package/lib/src/index.js +2 -0
  337. package/lib/src/index.js.map +1 -0
  338. package/lib/src/main.d.ts +2 -0
  339. package/lib/src/main.d.ts.map +1 -0
  340. package/lib/src/main.js +5 -0
  341. package/lib/src/main.js.map +1 -0
  342. package/lib/src/pages/content.d.ts +2 -0
  343. package/lib/src/pages/content.d.ts.map +1 -0
  344. package/lib/src/pages/content.js +39 -0
  345. package/lib/src/pages/content.js.map +1 -0
  346. package/lib/src/pages/demo/atlas-import.d.ts +2 -0
  347. package/lib/src/pages/demo/atlas-import.d.ts.map +1 -0
  348. package/lib/src/pages/demo/atlas-import.js +122 -0
  349. package/lib/src/pages/demo/atlas-import.js.map +1 -0
  350. package/lib/src/pages/index.d.ts +4 -0
  351. package/lib/src/pages/index.d.ts.map +1 -0
  352. package/lib/src/pages/index.js +4 -0
  353. package/lib/src/pages/index.js.map +1 -0
  354. package/lib/src/pages/settings.d.ts +4 -0
  355. package/lib/src/pages/settings.d.ts.map +1 -0
  356. package/lib/src/pages/settings.js +9 -0
  357. package/lib/src/pages/settings.js.map +1 -0
  358. package/lib/src/service-worker.d.ts +2 -0
  359. package/lib/src/service-worker.d.ts.map +1 -0
  360. package/lib/src/service-worker.js +58 -0
  361. package/lib/src/service-worker.js.map +1 -0
  362. package/lib/src/services/hmr.d.ts +13 -0
  363. package/lib/src/services/hmr.d.ts.map +1 -0
  364. package/lib/src/services/hmr.js +85 -0
  365. package/lib/src/services/hmr.js.map +1 -0
  366. package/lib/src/services/index.d.ts +10 -0
  367. package/lib/src/services/index.d.ts.map +1 -0
  368. package/lib/src/services/index.js +9 -0
  369. package/lib/src/services/index.js.map +1 -0
  370. package/lib/src/services/logger.d.ts +2 -0
  371. package/lib/src/services/logger.d.ts.map +1 -0
  372. package/lib/src/services/logger.js +28 -0
  373. package/lib/src/services/logger.js.map +1 -0
  374. package/lib/src/services/renown/browser.d.ts +2 -0
  375. package/lib/src/services/renown/browser.d.ts.map +1 -0
  376. package/lib/src/services/renown/browser.js +6 -0
  377. package/lib/src/services/renown/browser.js.map +1 -0
  378. package/lib/src/services/renown/constants.d.ts +130 -0
  379. package/lib/src/services/renown/constants.d.ts.map +1 -0
  380. package/lib/src/services/renown/constants.js +41 -0
  381. package/lib/src/services/renown/constants.js.map +1 -0
  382. package/lib/src/services/renown/utils.d.ts +7 -0
  383. package/lib/src/services/renown/utils.d.ts.map +1 -0
  384. package/lib/src/services/renown/utils.js +20 -0
  385. package/lib/src/services/renown/utils.js.map +1 -0
  386. package/lib/src/services/storage/base-storage.d.ts +9 -0
  387. package/lib/src/services/storage/base-storage.d.ts.map +1 -0
  388. package/lib/src/services/storage/base-storage.js +21 -0
  389. package/lib/src/services/storage/base-storage.js.map +1 -0
  390. package/lib/src/services/storage/browser.d.ts +5 -0
  391. package/lib/src/services/storage/browser.d.ts.map +1 -0
  392. package/lib/src/services/storage/browser.js +25 -0
  393. package/lib/src/services/storage/browser.js.map +1 -0
  394. package/lib/src/services/storage/types.d.ts +6 -0
  395. package/lib/src/services/storage/types.d.ts.map +1 -0
  396. package/lib/src/services/storage/types.js +2 -0
  397. package/lib/src/services/storage/types.js.map +1 -0
  398. package/lib/src/services/toast.d.ts +8 -0
  399. package/lib/src/services/toast.d.ts.map +1 -0
  400. package/lib/src/services/toast.js +11 -0
  401. package/lib/src/services/toast.js.map +1 -0
  402. package/lib/src/store/document-model.d.ts +3 -0
  403. package/lib/src/store/document-model.d.ts.map +1 -0
  404. package/lib/src/store/document-model.js +79 -0
  405. package/lib/src/store/document-model.js.map +1 -0
  406. package/lib/src/store/editor.d.ts +5 -0
  407. package/lib/src/store/editor.d.ts.map +1 -0
  408. package/lib/src/store/editor.js +31 -0
  409. package/lib/src/store/editor.js.map +1 -0
  410. package/lib/src/store/external-packages.d.ts +4 -0
  411. package/lib/src/store/external-packages.d.ts.map +1 -0
  412. package/lib/src/store/external-packages.js +36 -0
  413. package/lib/src/store/external-packages.js.map +1 -0
  414. package/lib/src/store/index.d.ts +7 -0
  415. package/lib/src/store/index.d.ts.map +1 -0
  416. package/lib/src/store/index.js +7 -0
  417. package/lib/src/store/index.js.map +1 -0
  418. package/lib/src/store/reactor.d.ts +3 -0
  419. package/lib/src/store/reactor.d.ts.map +1 -0
  420. package/lib/src/store/reactor.js +177 -0
  421. package/lib/src/store/reactor.js.map +1 -0
  422. package/lib/src/store/user.d.ts +2 -0
  423. package/lib/src/store/user.d.ts.map +1 -0
  424. package/lib/src/store/user.js +16 -0
  425. package/lib/src/store/user.js.map +1 -0
  426. package/lib/src/store/utils.d.ts +2 -0
  427. package/lib/src/store/utils.d.ts.map +1 -0
  428. package/lib/src/store/utils.js +59 -0
  429. package/lib/src/store/utils.js.map +1 -0
  430. package/lib/src/utils/browser.d.ts +2 -0
  431. package/lib/src/utils/browser.d.ts.map +1 -0
  432. package/lib/src/utils/browser.js +9 -0
  433. package/lib/src/utils/browser.js.map +1 -0
  434. package/lib/src/utils/document-editor-debug-tools.d.ts +17 -0
  435. package/lib/src/utils/document-editor-debug-tools.d.ts.map +1 -0
  436. package/lib/src/utils/document-editor-debug-tools.js +55 -0
  437. package/lib/src/utils/document-editor-debug-tools.js.map +1 -0
  438. package/lib/src/utils/drive-preservation.d.ts +19 -0
  439. package/lib/src/utils/drive-preservation.d.ts.map +1 -0
  440. package/lib/src/utils/drive-preservation.js +51 -0
  441. package/lib/src/utils/drive-preservation.js.map +1 -0
  442. package/lib/src/utils/drive-sections.d.ts +31 -0
  443. package/lib/src/utils/drive-sections.d.ts.map +1 -0
  444. package/lib/src/utils/drive-sections.js +63 -0
  445. package/lib/src/utils/drive-sections.js.map +1 -0
  446. package/lib/src/utils/index.d.ts +12 -0
  447. package/lib/src/utils/index.d.ts.map +1 -0
  448. package/lib/src/utils/index.js +12 -0
  449. package/lib/src/utils/index.js.map +1 -0
  450. package/lib/src/utils/join.d.ts +2 -0
  451. package/lib/src/utils/join.d.ts.map +1 -0
  452. package/lib/src/utils/join.js +11 -0
  453. package/lib/src/utils/join.js.map +1 -0
  454. package/lib/src/utils/openUrl.d.ts +2 -0
  455. package/lib/src/utils/openUrl.d.ts.map +1 -0
  456. package/lib/src/utils/openUrl.js +3 -0
  457. package/lib/src/utils/openUrl.js.map +1 -0
  458. package/lib/src/utils/path.d.ts +4 -0
  459. package/lib/src/utils/path.d.ts.map +1 -0
  460. package/lib/src/utils/path.js +17 -0
  461. package/lib/src/utils/path.js.map +1 -0
  462. package/lib/src/utils/reactor.d.ts +6 -0
  463. package/lib/src/utils/reactor.d.ts.map +1 -0
  464. package/lib/src/utils/reactor.js +57 -0
  465. package/lib/src/utils/reactor.js.map +1 -0
  466. package/lib/src/utils/registerServiceWorker.d.ts +12 -0
  467. package/lib/src/utils/registerServiceWorker.d.ts.map +1 -0
  468. package/lib/src/utils/registerServiceWorker.js +97 -0
  469. package/lib/src/utils/registerServiceWorker.js.map +1 -0
  470. package/lib/src/utils/signature.d.ts +4 -0
  471. package/lib/src/utils/signature.d.ts.map +1 -0
  472. package/lib/src/utils/signature.js +36 -0
  473. package/lib/src/utils/signature.js.map +1 -0
  474. package/lib/src/utils/slug.d.ts +2 -0
  475. package/lib/src/utils/slug.d.ts.map +1 -0
  476. package/lib/src/utils/slug.js +4 -0
  477. package/lib/src/utils/slug.js.map +1 -0
  478. package/lib/src/workers/pglite-worker.d.ts +2 -0
  479. package/lib/src/workers/pglite-worker.d.ts.map +1 -0
  480. package/lib/src/workers/pglite-worker.js +32 -0
  481. package/lib/src/workers/pglite-worker.js.map +1 -0
  482. package/lib/tsconfig.tsbuildinfo +1 -0
  483. package/lib/vite.config.d.ts +3 -0
  484. package/lib/vite.config.d.ts.map +1 -0
  485. package/lib/vite.config.js +55 -0
  486. package/lib/vite.config.js.map +1 -0
  487. package/package.copy.json +165 -0
  488. package/package.json +126 -66
  489. package/public/icon.ico +0 -0
  490. package/public/robots.txt +3 -0
  491. package/public/settings.png +0 -0
  492. package/scripts/render-skeleton.ts +8 -10
  493. package/src/index.css +4 -0
  494. package/dist/assets/AddDriveModal.CsX1V9k8.js +0 -2
  495. package/dist/assets/AddDriveModal.CsX1V9k8.js.map +0 -1
  496. package/dist/assets/AddLocalDriveModal.9wlqUaI7.js +0 -2
  497. package/dist/assets/AddLocalDriveModal.9wlqUaI7.js.map +0 -1
  498. package/dist/assets/AddRemoteDriveModal.BViKJcIG.js +0 -2
  499. package/dist/assets/AddRemoteDriveModal.BViKJcIG.js.map +0 -1
  500. package/dist/assets/ConfirmationModal.Cwd4p-FQ.js +0 -2
  501. package/dist/assets/ConfirmationModal.Cwd4p-FQ.js.map +0 -1
  502. package/dist/assets/CookiesPolicyModal.DBYakGYw.js +0 -2
  503. package/dist/assets/CookiesPolicyModal.DBYakGYw.js.map +0 -1
  504. package/dist/assets/CreateDocumentModal.BCLwbl_7.js +0 -2
  505. package/dist/assets/CreateDocumentModal.BCLwbl_7.js.map +0 -1
  506. package/dist/assets/DebugSettingsModal.C2JfEGKx.js +0 -7
  507. package/dist/assets/DebugSettingsModal.C2JfEGKx.js.map +0 -1
  508. package/dist/assets/DeleteDriveModal.ccJLuz-v.js +0 -2
  509. package/dist/assets/DeleteDriveModal.ccJLuz-v.js.map +0 -1
  510. package/dist/assets/DeleteItemModal.lxt16WLJ.js +0 -2
  511. package/dist/assets/DeleteItemModal.lxt16WLJ.js.map +0 -1
  512. package/dist/assets/DisclaimerModal.YKaHnRz1.js +0 -2
  513. package/dist/assets/DisclaimerModal.YKaHnRz1.js.map +0 -1
  514. package/dist/assets/DriveSettingsModal.DUtXh2J3.js +0 -2
  515. package/dist/assets/DriveSettingsModal.DUtXh2J3.js.map +0 -1
  516. package/dist/assets/SettingsModal.NCZyx-LZ.js +0 -2
  517. package/dist/assets/SettingsModal.NCZyx-LZ.js.map +0 -1
  518. package/dist/assets/UpgradeDriveModal.Bp1cbwzD.js +0 -2
  519. package/dist/assets/UpgradeDriveModal.Bp1cbwzD.js.map +0 -1
  520. package/dist/assets/app-form-input.DrsD0P0g.js +0 -2
  521. package/dist/assets/app-form-input.DrsD0P0g.js.map +0 -1
  522. package/dist/assets/atlas-import.S0zyqygI.js +0 -6
  523. package/dist/assets/atlas-import.S0zyqygI.js.map +0 -1
  524. package/dist/assets/ccip.DbzT2NeK.js +0 -2
  525. package/dist/assets/ccip.DbzT2NeK.js.map +0 -1
  526. package/dist/assets/confirmation-modal.BRg1WqhO.js +0 -2
  527. package/dist/assets/confirmation-modal.BRg1WqhO.js.map +0 -1
  528. package/dist/assets/content.BwwSwPoU.js +0 -11
  529. package/dist/assets/content.BwwSwPoU.js.map +0 -1
  530. package/dist/assets/creators.Beog8W4R.js +0 -2
  531. package/dist/assets/creators.Beog8W4R.js.map +0 -1
  532. package/dist/assets/crypto.DdbxIXEQ.js +0 -2
  533. package/dist/assets/crypto.DdbxIXEQ.js.map +0 -1
  534. package/dist/assets/disclosure.g6ojAjR7.js +0 -2
  535. package/dist/assets/disclosure.g6ojAjR7.js.map +0 -1
  536. package/dist/assets/document.CskU24Eo.js +0 -2
  537. package/dist/assets/document.CskU24Eo.js.map +0 -1
  538. package/dist/assets/documents.WANXuQQw.js +0 -2
  539. package/dist/assets/documents.WANXuQQw.js.map +0 -1
  540. package/dist/assets/drive-name.f6u15KL9.js +0 -2
  541. package/dist/assets/drive-name.f6u15KL9.js.map +0 -1
  542. package/dist/assets/drive.Bwke9qtc.js +0 -2
  543. package/dist/assets/drive.Bwke9qtc.js.map +0 -1
  544. package/dist/assets/drives.BT9_cNvB.js +0 -2
  545. package/dist/assets/drives.BT9_cNvB.js.map +0 -1
  546. package/dist/assets/drives.CnLEcvUe.js +0 -2
  547. package/dist/assets/drives.CnLEcvUe.js.map +0 -1
  548. package/dist/assets/dropdown-menu.CrltaMAi.js +0 -2
  549. package/dist/assets/dropdown-menu.CrltaMAi.js.map +0 -1
  550. package/dist/assets/form-input.CKWaNWHS.js +0 -2
  551. package/dist/assets/form-input.CKWaNWHS.js.map +0 -1
  552. package/dist/assets/index.B0KswTVc.js +0 -2
  553. package/dist/assets/index.B0KswTVc.js.map +0 -1
  554. package/dist/assets/index.B5Jahs6e.js +0 -210
  555. package/dist/assets/index.B5Jahs6e.js.map +0 -1
  556. package/dist/assets/index.B_w9kQDS.js +0 -2
  557. package/dist/assets/index.B_w9kQDS.js.map +0 -1
  558. package/dist/assets/index.CJhJIgr2.js +0 -5
  559. package/dist/assets/index.CJhJIgr2.js.map +0 -1
  560. package/dist/assets/index.CZGlv_DJ.js +0 -2
  561. package/dist/assets/index.CZGlv_DJ.js.map +0 -1
  562. package/dist/assets/index.Cy9Uih6l.js +0 -368
  563. package/dist/assets/index.Cy9Uih6l.js.map +0 -1
  564. package/dist/assets/index.DgMWNgC4.js +0 -2
  565. package/dist/assets/index.DgMWNgC4.js.map +0 -1
  566. package/dist/assets/index.DnmeBfoc.js +0 -2
  567. package/dist/assets/index.DnmeBfoc.js.map +0 -1
  568. package/dist/assets/index.LCmAGl8C.js +0 -114
  569. package/dist/assets/index.LCmAGl8C.js.map +0 -1
  570. package/dist/assets/index._iE_O567.js +0 -2
  571. package/dist/assets/index._iE_O567.js.map +0 -1
  572. package/dist/assets/index.esm.B0PnDknv.js +0 -2
  573. package/dist/assets/index.esm.B0PnDknv.js.map +0 -1
  574. package/dist/assets/index.jCXguwyn.js +0 -2
  575. package/dist/assets/index.jCXguwyn.js.map +0 -1
  576. package/dist/assets/index.rWEXHbK2.js +0 -2
  577. package/dist/assets/index.rWEXHbK2.js.map +0 -1
  578. package/dist/assets/index.rdGjBzAn.js +0 -2
  579. package/dist/assets/index.rdGjBzAn.js.map +0 -1
  580. package/dist/assets/location-info.CUOr58bf.js +0 -2
  581. package/dist/assets/location-info.CUOr58bf.js.map +0 -1
  582. package/dist/assets/main-BhSHpqSI.css +0 -1
  583. package/dist/assets/main.DaFo88Bw.js +0 -857
  584. package/dist/assets/main.DaFo88Bw.js.map +0 -1
  585. package/dist/assets/modal.oz3Jhm_k.js +0 -6
  586. package/dist/assets/modal.oz3Jhm_k.js.map +0 -1
  587. package/dist/assets/modals.Qs6mizxC.js +0 -2
  588. package/dist/assets/modals.Qs6mizxC.js.map +0 -1
  589. package/dist/assets/nodefs-CYAJKQhI.js +0 -2
  590. package/dist/assets/nodefs-CYAJKQhI.js.map +0 -1
  591. package/dist/assets/nodefs.DhjGeTvv.js +0 -2
  592. package/dist/assets/nodefs.DhjGeTvv.js.map +0 -1
  593. package/dist/assets/opfs-ahp-Br3qpBoL.js +0 -4
  594. package/dist/assets/opfs-ahp-Br3qpBoL.js.map +0 -1
  595. package/dist/assets/opfs-ahp.r3uiPDIk.js +0 -4
  596. package/dist/assets/opfs-ahp.r3uiPDIk.js.map +0 -1
  597. package/dist/assets/options.BWIJIz-I.js +0 -2
  598. package/dist/assets/options.BWIJIz-I.js.map +0 -1
  599. package/dist/assets/pglite-worker-DgAiCanq.js +0 -144
  600. package/dist/assets/pglite-worker-DgAiCanq.js.map +0 -1
  601. package/dist/assets/pglite-worker.BmajlV4J.js +0 -2
  602. package/dist/assets/pglite-worker.BmajlV4J.js.map +0 -1
  603. package/dist/assets/postgres-CkP7QCDB.data +0 -0
  604. package/dist/assets/postgres-CyuUVpXN.wasm +0 -0
  605. package/dist/assets/queue.CnIzwthA.js +0 -2
  606. package/dist/assets/queue.CnIzwthA.js.map +0 -1
  607. package/dist/assets/read-required-modal.DpPnKHjB.js +0 -2
  608. package/dist/assets/read-required-modal.DpPnKHjB.js.map +0 -1
  609. package/dist/assets/root.ZkWX3Xsc.js +0 -2
  610. package/dist/assets/root.ZkWX3Xsc.js.map +0 -1
  611. package/dist/assets/select.DJuJpI3A.js +0 -2
  612. package/dist/assets/select.DJuJpI3A.js.map +0 -1
  613. package/dist/assets/sharing-type-form-input.CUG75fNB.js +0 -2
  614. package/dist/assets/sharing-type-form-input.CUG75fNB.js.map +0 -1
  615. package/dist/assets/style-GxvX-8si.css +0 -1
  616. package/dist/assets/toggle.8B3GpI90.js +0 -2
  617. package/dist/assets/toggle.8B3GpI90.js.map +0 -1
  618. package/dist/assets/user.7iHZB6Al.js +0 -2
  619. package/dist/assets/user.7iHZB6Al.js.map +0 -1
  620. package/dist/assets/utils.BpWye9Xm.js +0 -2
  621. package/dist/assets/utils.BpWye9Xm.js.map +0 -1
  622. package/dist/external-packages.js +0 -1
  623. package/dist/fonts/Inter-Black.ttf +0 -0
  624. package/dist/fonts/Inter-Bold.ttf +0 -0
  625. package/dist/fonts/Inter-ExtraBold.ttf +0 -0
  626. package/dist/fonts/Inter-ExtraLight.ttf +0 -0
  627. package/dist/fonts/Inter-Light.ttf +0 -0
  628. package/dist/fonts/Inter-Medium.ttf +0 -0
  629. package/dist/fonts/Inter-Regular.ttf +0 -0
  630. package/dist/fonts/Inter-SemiBold.ttf +0 -0
  631. package/dist/fonts/Inter-Thin.ttf +0 -0
  632. package/dist/fonts/Inter-VariableFont_slnt,wght.ttf +0 -0
  633. package/dist/hmr.js +0 -2
  634. package/dist/hmr.js.map +0 -1
  635. package/dist/service-worker.js +0 -2
  636. package/dist/service-worker.js.map +0 -1
  637. package/dist/swEnv.js +0 -70
  638. package/dist/vite-envs.sh +0 -494
@@ -1 +0,0 @@
1
- {"version":3,"file":"SettingsModal.NCZyx-LZ.js","sources":["../../../../packages/design-system/dist/src/ui/components/tooltip/tooltip.js","../../../../packages/design-system/dist/src/ui/components/form-label/form-label.js","../../../../packages/design-system/dist/src/ui/components/form-message/form-message.js","../../../../packages/design-system/dist/src/ui/components/form-message/message-list.js","../../../../packages/design-system/dist/src/ui/lib/deep-equal.js","../../../../packages/design-system/dist/src/ui/lib/shared-value-transformers.js","../../../../packages/design-system/dist/src/ui/components/button/button.js","../../../../node_modules/.pnpm/cmdk@1.1.1_@types+react-dom@18.3.7_@types+react@18.3.23__@types+react@18.3.23_react-dom_efddfac62ebd0add77007bc1e69c432f/node_modules/cmdk/dist/chunk-NZJY6EH4.mjs","../../../../node_modules/.pnpm/cmdk@1.1.1_@types+react-dom@18.3.7_@types+react@18.3.23__@types+react@18.3.23_react-dom_efddfac62ebd0add77007bc1e69c432f/node_modules/cmdk/dist/index.mjs","../../../../packages/design-system/dist/src/ui/components/command/command.js","../../../../packages/design-system/dist/src/ui/components/with-field-validation/with-field-validation.js","../../../../packages/design-system/dist/src/ui/components/form-description/form-description.js","../../../../packages/design-system/dist/src/ui/components/form-group/form-group.js","../../../../packages/design-system/dist/src/ui/components/select-field/subcomponents/CommandItemList.js","../../../../packages/design-system/dist/src/ui/components/select-field/content.js","../../../../packages/design-system/dist/src/ui/components/select-field/selected-content.js","../../../../packages/design-system/dist/src/ui/components/select-field/use-select-field.js","../../../../packages/design-system/dist/src/ui/components/select-field/select-field.js","../../../../packages/design-system/dist/src/ui/components/input/input.js","../../../../packages/design-system/dist/src/ui/components/value-transformer/value-transformer.js","../../../../packages/design-system/dist/src/ui/components/id-autocomplete/id-autocomplete-input-container.js","../../../../packages/design-system/dist/src/ui/components/id-autocomplete/id-autocomplete-list-option.js","../../../../packages/design-system/dist/src/ui/components/id-autocomplete/id-autocomplete-list.js","../../../../packages/design-system/dist/src/ui/components/id-autocomplete/id-autocomplete-context.js","../../../../packages/design-system/dist/src/ui/components/id-autocomplete/use-id-autocomplete.js","../../../../packages/design-system/dist/src/ui/components/id-autocomplete/id-autocomplete.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal/dependency-versions/dependency-versions.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/about.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/danger-zone.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/default-editor.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/package-manager/package-manager-input.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/package-manager/package-manager-list.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/package-manager/package-manager-select.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/package-manager/package-manager.js","../../../../packages/design-system/dist/src/connect/components/modal/settings-modal-v2/settings-modal.js","../../src/components/modal/modals/settings/about.tsx","../../src/components/modal/modals/settings/danger-zone.tsx","../../src/components/modal/modals/settings/default-editor.tsx","../../../../packages/config/dist/src/packages.js","../../src/components/modal/modals/settings/package-manager.tsx","../../src/components/modal/modals/SettingsModal.tsx"],"sourcesContent":["\"use client\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { cn } from \"#powerhouse\";\nimport { Content, Portal, Provider, Root, Trigger, } from \"@radix-ui/react-tooltip\";\nimport * as React from \"react\";\nconst TooltipContent = React.forwardRef(({ children, className, ...props }, ref) => {\n return (_jsx(Content, { ref: ref, ...props, className: cn(\n // Base styles\n \"z-50 overflow-hidden rounded-md text-sm\", \n // Colors & Border\n \"border border-gray-200 bg-white text-gray-900 dark:border-gray-900 dark:bg-slate-900 dark:text-gray-200\", \n // Padding & Shadow\n \"px-3 py-1.5 shadow-md\", \n // Animations\n \"data-[state=open]:animate-fade-in data-[state=open]:animate-zoom-in\", \"data-[state=closed]:animate-fade-out data-[state=closed]:animate-zoom-out\", \n // Slide animations based on position\n \"data-[side=bottom]:animate-slide-in-from-top\", \"data-[side=left]:animate-slide-in-from-right\", \"data-[side=right]:animate-slide-in-from-left\", \"data-[side=top]:animate-slide-in-from-bottom\", className), children: children }));\n});\nconst Tooltip = ({ content, children, triggerAsChild = false, delayDuration = 0, ...props }) => {\n const { open, defaultOpen, onOpenChange, ...rest } = props;\n return (_jsxs(Root, { defaultOpen: defaultOpen, delayDuration: delayDuration, onOpenChange: onOpenChange, open: open, children: [_jsx(Trigger, { asChild: triggerAsChild, type: triggerAsChild ? undefined : \"button\", children: children }), _jsx(Portal, { children: _jsx(TooltipContent, { sideOffset: 3, ...rest, children: content }) })] }));\n};\nexport { Tooltip, TooltipContent, Provider as TooltipProvider, Root as TooltipRoot, Trigger as TooltipTrigger, };\n//# sourceMappingURL=tooltip.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon, cn } from \"#powerhouse\";\nimport { Tooltip, TooltipProvider } from \"../tooltip/index.js\";\nexport const FormLabel = ({ children, required, disabled, description, hasError, inline, className, ...htmlLabelProps }) => {\n const classes = cn(\"inline-flex items-center text-sm font-medium\", inline ? \"leading-[22px]\" : \"leading-4\", `text-gray-900 ${inline ? \"dark:text-gray-400\" : \"dark:text-gray-50\"}`, hasError && \"group-hover:!text-red-900 dark:group-hover:!text-red-900\", hasError && inline && \"text-red-800 dark:text-red-800\", hasError && !inline && \"text-red-900 dark:text-red-900\", disabled &&\n `cursor-not-allowed text-gray-700 ${inline ? \"dark:text-gray-600\" : \"dark:text-gray-300\"}`, inline\n ? !disabled && \"group-hover:text-gray-900 dark:group-hover:text-slate-50\"\n : \"mb-[3px]\", className);\n if (!children) {\n // no label provided\n return null;\n }\n const extraProps = {\n ...htmlLabelProps,\n };\n return (_jsxs(\"label\", { className: classes, ...extraProps, children: [children, required && (_jsx(\"span\", { className: cn(\"ml-1 text-gray-800 group-hover:text-gray-900 dark:text-gray-400 dark:group-hover:text-slate-50\", hasError &&\n `${inline ? \"!text-red-800\" : \"!text-red-900\"} group-hover:!text-red-900`), children: \"*\" })), description && (_jsx(TooltipProvider, { children: _jsx(Tooltip, { content: description, children: _jsx(Icon, { name: \"CircleInfo\", size: 16, className: cn(\"ml-1 cursor-pointer text-gray-600 hover:text-gray-500 dark:text-gray-500 dark:hover:text-gray-500\", disabled && \"text-gray-500\") }) }) }))] }));\n};\n//# sourceMappingURL=form-label.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from \"../../lib/index.js\";\nconst defaultElement = \"p\";\nexport const FormMessage = ({ children, type = \"info\", as, className, ...props }) => {\n const Component = as || defaultElement;\n const typeClasses = {\n error: \"text-red-900 dark:text-red-900\",\n info: \"text-blue-900 dark:text-blue-900\",\n warning: \"text-yellow-900 dark:text-yellow-900\",\n };\n const classes = cn(\"mb-0 inline-flex items-center text-xs font-medium\", typeClasses[type], className);\n // TODO: add icon\n return (_jsx(Component, { \"data-type\": type, className: classes, ...props, children: children }));\n};\n//# sourceMappingURL=form-message.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from \"../../lib/index.js\";\nimport { FormMessage } from \"./form-message.js\";\nexport const FormMessageList = ({ messages, type = \"info\", className, ...props }) => {\n if (messages.length === 0) {\n return null;\n }\n if (messages.length === 1) {\n return (_jsx(FormMessage, { type: type, ...props, children: messages[0] }));\n }\n const typeClasses = {\n error: \"before:bg-red-900 dark:before:bg-red-900\",\n info: \"before:bg-blue-900 dark:before:bg-blue-900\",\n warning: \"before:bg-orange-900 dark:before:bg-orange-900\",\n };\n return (_jsx(\"ul\", { className: cn(\"flex flex-col gap-1\", className), ...props, children: messages.map((message) => (_jsx(FormMessage, { as: \"li\", type: type, className: cn(\n // Layout\n \"relative pl-4\", \n // Visual styles\n \"before:absolute before:left-0 before:top-[0.4em] before:size-2 before:rounded-full\", typeClasses[type]), children: message }, message))) }));\n};\n//# sourceMappingURL=message-list.js.map","export function deepEqual(a, b, visited = new Map()) {\n if (a === b) {\n return true;\n }\n if (a === null || b === null || a === undefined || b === undefined) {\n return false;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (Array.isArray(a) && Array.isArray(b)) {\n if (visited.get(a) === b) {\n return true; // Same circular reference detected\n }\n visited.set(a, b);\n return (a.length === b.length &&\n a.every((value, index) => deepEqual(value, b[index], visited)));\n }\n if (typeof a === \"object\" &&\n typeof b === \"object\" &&\n !Array.isArray(a) &&\n !Array.isArray(b)) {\n if (visited.get(a) === b) {\n return true; // Same circular reference detected\n }\n visited.set(a, b);\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n return (aKeys.length === bKeys.length &&\n aKeys.every((key) => {\n return (key in b &&\n deepEqual(a[key], b[key], visited));\n }));\n }\n return false;\n}\n//# sourceMappingURL=deep-equal.js.map","export const sharedValueTransformers = {\n trimOnBlur: (ifParam = true) => ({\n transformer: (value) => value?.trim(),\n options: {\n trigger: \"blur\",\n if: ifParam,\n },\n }),\n lowercaseOnChange: (ifParam = true) => ({\n transformer: (value) => value?.toLowerCase(),\n options: {\n trigger: \"change\",\n if: ifParam,\n },\n }),\n uppercaseOnChange: (ifParam = true) => ({\n transformer: (value) => value?.toUpperCase(),\n options: {\n trigger: \"change\",\n if: ifParam,\n },\n }),\n trimOnEnter: (ifParam = true) => ({\n transformer: (value) => value?.trim(),\n options: {\n trigger: \"keyDown\",\n if: ifParam,\n },\n }),\n};\n//# sourceMappingURL=shared-value-transformers.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva } from \"class-variance-authority\";\nimport React from \"react\";\nimport { cn } from \"../../lib/index.js\";\nconst buttonVariants = cva(cn(\"inline-flex items-center justify-center gap-2\", \"whitespace-nowrap rounded-md text-sm font-medium\", \"transition-colors\", \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2\", \"disabled:pointer-events-none\", \"[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\"), {\n variants: {\n variant: {\n default: \"\",\n outline: \"border border-input bg-background hover:bg-accent hover:text-accent-foreground\",\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n});\nconst Button = React.forwardRef(({ variant, className, asChild = false, ...props }, ref) => {\n const Comp = asChild ? Slot : \"button\";\n return (_jsx(Comp, { className: cn(buttonVariants({ variant, className })), ref: ref, ...props }));\n});\nexport { Button, buttonVariants };\n//# sourceMappingURL=button.js.map","var U=1,Y=.9,H=.8,J=.17,p=.1,u=.999,$=.9999;var k=.99,m=/[\\\\\\/_+.#\"@\\[\\(\\{&]/,B=/[\\\\\\/_+.#\"@\\[\\(\\{&]/g,K=/[\\s-]/,X=/[\\s-]/g;function G(_,C,h,P,A,f,O){if(f===C.length)return A===_.length?U:k;var T=`${A},${f}`;if(O[T]!==void 0)return O[T];for(var L=P.charAt(f),c=h.indexOf(L,A),S=0,E,N,R,M;c>=0;)E=G(_,C,h,P,c+1,f+1,O),E>S&&(c===A?E*=U:m.test(_.charAt(c-1))?(E*=H,R=_.slice(A,c-1).match(B),R&&A>0&&(E*=Math.pow(u,R.length))):K.test(_.charAt(c-1))?(E*=Y,M=_.slice(A,c-1).match(X),M&&A>0&&(E*=Math.pow(u,M.length))):(E*=J,A>0&&(E*=Math.pow(u,c-A))),_.charAt(c)!==C.charAt(f)&&(E*=$)),(E<p&&h.charAt(c-1)===P.charAt(f+1)||P.charAt(f+1)===P.charAt(f)&&h.charAt(c-1)!==P.charAt(f))&&(N=G(_,C,h,P,c+1,f+2,O),N*p>E&&(E=N*p)),E>S&&(S=E),c=h.indexOf(L,c+1);return O[T]=S,S}function D(_){return _.toLowerCase().replace(X,\" \")}function W(_,C,h){return _=h&&h.length>0?`${_+\" \"+h.join(\" \")}`:_,G(_,C,D(_),D(C),0,0,{})}export{W as a};\n","\"use client\";import{a as ae}from\"./chunk-NZJY6EH4.mjs\";import*as w from\"@radix-ui/react-dialog\";import*as t from\"react\";import{Primitive as D}from\"@radix-ui/react-primitive\";import{useId as H}from\"@radix-ui/react-id\";import{composeRefs as G}from\"@radix-ui/react-compose-refs\";var N='[cmdk-group=\"\"]',Y='[cmdk-group-items=\"\"]',be='[cmdk-group-heading=\"\"]',le='[cmdk-item=\"\"]',ce=`${le}:not([aria-disabled=\"true\"])`,Z=\"cmdk-item-select\",T=\"data-value\",Re=(r,o,n)=>ae(r,o,n),ue=t.createContext(void 0),K=()=>t.useContext(ue),de=t.createContext(void 0),ee=()=>t.useContext(de),fe=t.createContext(void 0),me=t.forwardRef((r,o)=>{let n=L(()=>{var e,a;return{search:\"\",value:(a=(e=r.value)!=null?e:r.defaultValue)!=null?a:\"\",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),u=L(()=>new Set),c=L(()=>new Map),d=L(()=>new Map),f=L(()=>new Set),p=pe(r),{label:b,children:m,value:R,onValueChange:x,filter:C,shouldFilter:S,loop:A,disablePointerSelection:ge=!1,vimBindings:j=!0,...O}=r,$=H(),q=H(),_=H(),I=t.useRef(null),v=ke();k(()=>{if(R!==void 0){let e=R.trim();n.current.value=e,E.emit()}},[R]),k(()=>{v(6,ne)},[]);let E=t.useMemo(()=>({subscribe:e=>(f.current.add(e),()=>f.current.delete(e)),snapshot:()=>n.current,setState:(e,a,s)=>{var i,l,g,y;if(!Object.is(n.current[e],a)){if(n.current[e]=a,e===\"search\")J(),z(),v(1,W);else if(e===\"value\"){if(document.activeElement.hasAttribute(\"cmdk-input\")||document.activeElement.hasAttribute(\"cmdk-root\")){let h=document.getElementById(_);h?h.focus():(i=document.getElementById($))==null||i.focus()}if(v(7,()=>{var h;n.current.selectedItemId=(h=M())==null?void 0:h.id,E.emit()}),s||v(5,ne),((l=p.current)==null?void 0:l.value)!==void 0){let h=a!=null?a:\"\";(y=(g=p.current).onValueChange)==null||y.call(g,h);return}}E.emit()}},emit:()=>{f.current.forEach(e=>e())}}),[]),U=t.useMemo(()=>({value:(e,a,s)=>{var i;a!==((i=d.current.get(e))==null?void 0:i.value)&&(d.current.set(e,{value:a,keywords:s}),n.current.filtered.items.set(e,te(a,s)),v(2,()=>{z(),E.emit()}))},item:(e,a)=>(u.current.add(e),a&&(c.current.has(a)?c.current.get(a).add(e):c.current.set(a,new Set([e]))),v(3,()=>{J(),z(),n.current.value||W(),E.emit()}),()=>{d.current.delete(e),u.current.delete(e),n.current.filtered.items.delete(e);let s=M();v(4,()=>{J(),(s==null?void 0:s.getAttribute(\"id\"))===e&&W(),E.emit()})}),group:e=>(c.current.has(e)||c.current.set(e,new Set),()=>{d.current.delete(e),c.current.delete(e)}),filter:()=>p.current.shouldFilter,label:b||r[\"aria-label\"],getDisablePointerSelection:()=>p.current.disablePointerSelection,listId:$,inputId:_,labelId:q,listInnerRef:I}),[]);function te(e,a){var i,l;let s=(l=(i=p.current)==null?void 0:i.filter)!=null?l:Re;return e?s(e,n.current.search,a):0}function z(){if(!n.current.search||p.current.shouldFilter===!1)return;let e=n.current.filtered.items,a=[];n.current.filtered.groups.forEach(i=>{let l=c.current.get(i),g=0;l.forEach(y=>{let h=e.get(y);g=Math.max(h,g)}),a.push([i,g])});let s=I.current;V().sort((i,l)=>{var h,F;let g=i.getAttribute(\"id\"),y=l.getAttribute(\"id\");return((h=e.get(y))!=null?h:0)-((F=e.get(g))!=null?F:0)}).forEach(i=>{let l=i.closest(Y);l?l.appendChild(i.parentElement===l?i:i.closest(`${Y} > *`)):s.appendChild(i.parentElement===s?i:i.closest(`${Y} > *`))}),a.sort((i,l)=>l[1]-i[1]).forEach(i=>{var g;let l=(g=I.current)==null?void 0:g.querySelector(`${N}[${T}=\"${encodeURIComponent(i[0])}\"]`);l==null||l.parentElement.appendChild(l)})}function W(){let e=V().find(s=>s.getAttribute(\"aria-disabled\")!==\"true\"),a=e==null?void 0:e.getAttribute(T);E.setState(\"value\",a||void 0)}function J(){var a,s,i,l;if(!n.current.search||p.current.shouldFilter===!1){n.current.filtered.count=u.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let g of u.current){let y=(s=(a=d.current.get(g))==null?void 0:a.value)!=null?s:\"\",h=(l=(i=d.current.get(g))==null?void 0:i.keywords)!=null?l:[],F=te(y,h);n.current.filtered.items.set(g,F),F>0&&e++}for(let[g,y]of c.current)for(let h of y)if(n.current.filtered.items.get(h)>0){n.current.filtered.groups.add(g);break}n.current.filtered.count=e}function ne(){var a,s,i;let e=M();e&&(((a=e.parentElement)==null?void 0:a.firstChild)===e&&((i=(s=e.closest(N))==null?void 0:s.querySelector(be))==null||i.scrollIntoView({block:\"nearest\"})),e.scrollIntoView({block:\"nearest\"}))}function M(){var e;return(e=I.current)==null?void 0:e.querySelector(`${le}[aria-selected=\"true\"]`)}function V(){var e;return Array.from(((e=I.current)==null?void 0:e.querySelectorAll(ce))||[])}function X(e){let s=V()[e];s&&E.setState(\"value\",s.getAttribute(T))}function Q(e){var g;let a=M(),s=V(),i=s.findIndex(y=>y===a),l=s[i+e];(g=p.current)!=null&&g.loop&&(l=i+e<0?s[s.length-1]:i+e===s.length?s[0]:s[i+e]),l&&E.setState(\"value\",l.getAttribute(T))}function re(e){let a=M(),s=a==null?void 0:a.closest(N),i;for(;s&&!i;)s=e>0?we(s,N):De(s,N),i=s==null?void 0:s.querySelector(ce);i?E.setState(\"value\",i.getAttribute(T)):Q(e)}let oe=()=>X(V().length-1),ie=e=>{e.preventDefault(),e.metaKey?oe():e.altKey?re(1):Q(1)},se=e=>{e.preventDefault(),e.metaKey?X(0):e.altKey?re(-1):Q(-1)};return t.createElement(D.div,{ref:o,tabIndex:-1,...O,\"cmdk-root\":\"\",onKeyDown:e=>{var s;(s=O.onKeyDown)==null||s.call(O,e);let a=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||a))switch(e.key){case\"n\":case\"j\":{j&&e.ctrlKey&&ie(e);break}case\"ArrowDown\":{ie(e);break}case\"p\":case\"k\":{j&&e.ctrlKey&&se(e);break}case\"ArrowUp\":{se(e);break}case\"Home\":{e.preventDefault(),X(0);break}case\"End\":{e.preventDefault(),oe();break}case\"Enter\":{e.preventDefault();let i=M();if(i){let l=new Event(Z);i.dispatchEvent(l)}}}}},t.createElement(\"label\",{\"cmdk-label\":\"\",htmlFor:U.inputId,id:U.labelId,style:Te},b),B(r,e=>t.createElement(de.Provider,{value:E},t.createElement(ue.Provider,{value:U},e))))}),he=t.forwardRef((r,o)=>{var _,I;let n=H(),u=t.useRef(null),c=t.useContext(fe),d=K(),f=pe(r),p=(I=(_=f.current)==null?void 0:_.forceMount)!=null?I:c==null?void 0:c.forceMount;k(()=>{if(!p)return d.item(n,c==null?void 0:c.id)},[p]);let b=ve(n,u,[r.value,r.children,u],r.keywords),m=ee(),R=P(v=>v.value&&v.value===b.current),x=P(v=>p||d.filter()===!1?!0:v.search?v.filtered.items.get(n)>0:!0);t.useEffect(()=>{let v=u.current;if(!(!v||r.disabled))return v.addEventListener(Z,C),()=>v.removeEventListener(Z,C)},[x,r.onSelect,r.disabled]);function C(){var v,E;S(),(E=(v=f.current).onSelect)==null||E.call(v,b.current)}function S(){m.setState(\"value\",b.current,!0)}if(!x)return null;let{disabled:A,value:ge,onSelect:j,forceMount:O,keywords:$,...q}=r;return t.createElement(D.div,{ref:G(u,o),...q,id:n,\"cmdk-item\":\"\",role:\"option\",\"aria-disabled\":!!A,\"aria-selected\":!!R,\"data-disabled\":!!A,\"data-selected\":!!R,onPointerMove:A||d.getDisablePointerSelection()?void 0:S,onClick:A?void 0:C},r.children)}),Ee=t.forwardRef((r,o)=>{let{heading:n,children:u,forceMount:c,...d}=r,f=H(),p=t.useRef(null),b=t.useRef(null),m=H(),R=K(),x=P(S=>c||R.filter()===!1?!0:S.search?S.filtered.groups.has(f):!0);k(()=>R.group(f),[]),ve(f,p,[r.value,r.heading,b]);let C=t.useMemo(()=>({id:f,forceMount:c}),[c]);return t.createElement(D.div,{ref:G(p,o),...d,\"cmdk-group\":\"\",role:\"presentation\",hidden:x?void 0:!0},n&&t.createElement(\"div\",{ref:b,\"cmdk-group-heading\":\"\",\"aria-hidden\":!0,id:m},n),B(r,S=>t.createElement(\"div\",{\"cmdk-group-items\":\"\",role:\"group\",\"aria-labelledby\":n?m:void 0},t.createElement(fe.Provider,{value:C},S))))}),ye=t.forwardRef((r,o)=>{let{alwaysRender:n,...u}=r,c=t.useRef(null),d=P(f=>!f.search);return!n&&!d?null:t.createElement(D.div,{ref:G(c,o),...u,\"cmdk-separator\":\"\",role:\"separator\"})}),Se=t.forwardRef((r,o)=>{let{onValueChange:n,...u}=r,c=r.value!=null,d=ee(),f=P(m=>m.search),p=P(m=>m.selectedItemId),b=K();return t.useEffect(()=>{r.value!=null&&d.setState(\"search\",r.value)},[r.value]),t.createElement(D.input,{ref:o,...u,\"cmdk-input\":\"\",autoComplete:\"off\",autoCorrect:\"off\",spellCheck:!1,\"aria-autocomplete\":\"list\",role:\"combobox\",\"aria-expanded\":!0,\"aria-controls\":b.listId,\"aria-labelledby\":b.labelId,\"aria-activedescendant\":p,id:b.inputId,type:\"text\",value:c?r.value:f,onChange:m=>{c||d.setState(\"search\",m.target.value),n==null||n(m.target.value)}})}),Ce=t.forwardRef((r,o)=>{let{children:n,label:u=\"Suggestions\",...c}=r,d=t.useRef(null),f=t.useRef(null),p=P(m=>m.selectedItemId),b=K();return t.useEffect(()=>{if(f.current&&d.current){let m=f.current,R=d.current,x,C=new ResizeObserver(()=>{x=requestAnimationFrame(()=>{let S=m.offsetHeight;R.style.setProperty(\"--cmdk-list-height\",S.toFixed(1)+\"px\")})});return C.observe(m),()=>{cancelAnimationFrame(x),C.unobserve(m)}}},[]),t.createElement(D.div,{ref:G(d,o),...c,\"cmdk-list\":\"\",role:\"listbox\",tabIndex:-1,\"aria-activedescendant\":p,\"aria-label\":u,id:b.listId},B(r,m=>t.createElement(\"div\",{ref:G(f,b.listInnerRef),\"cmdk-list-sizer\":\"\"},m)))}),xe=t.forwardRef((r,o)=>{let{open:n,onOpenChange:u,overlayClassName:c,contentClassName:d,container:f,...p}=r;return t.createElement(w.Root,{open:n,onOpenChange:u},t.createElement(w.Portal,{container:f},t.createElement(w.Overlay,{\"cmdk-overlay\":\"\",className:c}),t.createElement(w.Content,{\"aria-label\":r.label,\"cmdk-dialog\":\"\",className:d},t.createElement(me,{ref:o,...p}))))}),Ie=t.forwardRef((r,o)=>P(u=>u.filtered.count===0)?t.createElement(D.div,{ref:o,...r,\"cmdk-empty\":\"\",role:\"presentation\"}):null),Pe=t.forwardRef((r,o)=>{let{progress:n,children:u,label:c=\"Loading...\",...d}=r;return t.createElement(D.div,{ref:o,...d,\"cmdk-loading\":\"\",role:\"progressbar\",\"aria-valuenow\":n,\"aria-valuemin\":0,\"aria-valuemax\":100,\"aria-label\":c},B(r,f=>t.createElement(\"div\",{\"aria-hidden\":!0},f)))}),_e=Object.assign(me,{List:Ce,Item:he,Input:Se,Group:Ee,Separator:ye,Dialog:xe,Empty:Ie,Loading:Pe});function we(r,o){let n=r.nextElementSibling;for(;n;){if(n.matches(o))return n;n=n.nextElementSibling}}function De(r,o){let n=r.previousElementSibling;for(;n;){if(n.matches(o))return n;n=n.previousElementSibling}}function pe(r){let o=t.useRef(r);return k(()=>{o.current=r}),o}var k=typeof window==\"undefined\"?t.useEffect:t.useLayoutEffect;function L(r){let o=t.useRef();return o.current===void 0&&(o.current=r()),o}function P(r){let o=ee(),n=()=>r(o.snapshot());return t.useSyncExternalStore(o.subscribe,n,n)}function ve(r,o,n,u=[]){let c=t.useRef(),d=K();return k(()=>{var b;let f=(()=>{var m;for(let R of n){if(typeof R==\"string\")return R.trim();if(typeof R==\"object\"&&\"current\"in R)return R.current?(m=R.current.textContent)==null?void 0:m.trim():c.current}})(),p=u.map(m=>m.trim());d.value(r,f,p),(b=o.current)==null||b.setAttribute(T,f),c.current=f}),c}var ke=()=>{let[r,o]=t.useState(),n=L(()=>new Map);return k(()=>{n.current.forEach(u=>u()),n.current=new Map},[r]),(u,c)=>{n.current.set(u,c),o({})}};function Me(r){let o=r.type;return typeof o==\"function\"?o(r.props):\"render\"in o?o.render(r.props):r}function B({asChild:r,children:o},n){return r&&t.isValidElement(o)?t.cloneElement(Me(o),{ref:o.ref},n(o.props.children)):n(o)}var Te={position:\"absolute\",width:\"1px\",height:\"1px\",padding:\"0\",margin:\"-1px\",overflow:\"hidden\",clip:\"rect(0, 0, 0, 0)\",whiteSpace:\"nowrap\",borderWidth:\"0\"};export{_e as Command,xe as CommandDialog,Ie as CommandEmpty,Ee as CommandGroup,Se as CommandInput,he as CommandItem,Ce as CommandList,Pe as CommandLoading,me as CommandRoot,ye as CommandSeparator,Re as defaultFilter,P as useCommandState};\n","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon, cn } from \"#powerhouse\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport React from \"react\";\nconst Command = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive, { ref: ref, className: cn(\"flex size-full flex-col rounded-md [&_[cmdk-label]]:hidden\", className), ...props })));\nCommand.displayName = CommandPrimitive.displayName;\nconst CommandInput = React.forwardRef(({ wrapperClassName, className, ...props }, ref) => (_jsxs(\"div\", { className: cn(\"group relative flex items-center border-b\", \"border-b-gray-300 dark:border-b-gray-900\", \"hover:border-b-gray-300 dark:hover:border-b-gray-800\", \"hover:bg-gray-100 dark:hover:bg-gray-900\", \"focus-within:border-b-gray-300 dark:focus-within:border-b-gray-800\", \"focus-within:bg-gray-100 dark:focus-within:bg-gray-900\", wrapperClassName), \"cmdk-input-wrapper\": \"\", children: [_jsx(Icon, { name: \"Search\", size: 16, className: cn(\"pointer-events-none absolute left-2 top-3.5 text-gray-500 dark:text-gray-700\", \"group-hover:text-gray-700 dark:group-hover:text-gray-500\", \"group-focus-within:!text-gray-900 dark:group-focus-within:!text-gray-50\") }), _jsx(CommandPrimitive.Input, { ref: ref, className: cn(\"flex w-full bg-transparent pb-2 pl-8 pr-3 pt-3 text-[14px] font-normal leading-5 outline-none\", \"placeholder:text-gray-500 dark:placeholder:text-gray-700\", \"group-hover:placeholder:text-gray-700 dark:group-hover:placeholder:text-gray-500\", \"group-focus-within:placeholder:!text-gray-700 dark:group-focus-within:placeholder:!text-gray-300\", \"disabled:cursor-not-allowed\", className), ...props })] })));\nCommandInput.displayName = CommandPrimitive.Input.displayName;\nconst CommandList = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.List, { ref: ref, className: cn(\"max-h-[300px] overflow-y-auto overflow-x-hidden\", \"focus:outline-none\", \"scrollbar-thin scrollbar-gutter-stable\", \"scrollbar-track-transparent\", \"scrollbar-thumb-gray-300 hover:scrollbar-thumb-gray-300\", \"dark:scrollbar-thumb-charcoal-700 dark:hover:scrollbar-thumb-charcoal-700\", \"scrollbar-thumb-rounded-md\", className), ...props })));\nCommandList.displayName = CommandPrimitive.List.displayName;\nconst CommandLoading = React.forwardRef((props, ref) => _jsx(CommandPrimitive.Loading, { ref: ref, ...props }));\nCommandLoading.displayName = CommandPrimitive.Loading.displayName;\nconst CommandEmpty = React.forwardRef((props, ref) => _jsx(CommandPrimitive.Empty, { ref: ref, ...props }));\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName;\nconst CommandGroup = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Group, { ref: ref, className: cn(\"overflow-hidden px-0.5 py-1\", \"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium\", className), ...props })));\nCommandGroup.displayName = CommandPrimitive.Group.displayName;\nconst CommandItem = React.forwardRef(({ className, ...props }, ref) => (_jsx(CommandPrimitive.Item, { ref: ref, className: cn(\"relative flex select-none items-center justify-between\", \"h-8 gap-2 rounded-md py-1.5 pl-1.5 pr-2.5\", \"text-[14px] leading-4 outline-none\", \"border-y-2 border-white dark:border-slate-600\", \"data-[disabled=true]:pointer-events-none\", \"[&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\", className), ...props })));\nCommandItem.displayName = CommandPrimitive.Item.displayName;\nexport { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandLoading, };\n//# sourceMappingURL=command.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { Controller, useFormContext, useFormState } from \"react-hook-form\";\nexport const withFieldValidation = (Component, options) => {\n return React.forwardRef(({ value, name, showErrorOnBlur, showErrorOnChange, validators: customValidators, ...props }, ref) => {\n const { onChange: onChangeProp, onBlur: onBlurProp } = props;\n const { control, formState: { errors: formErrors, defaultValues }, trigger, setValue, getValues, } = useFormContext();\n const { submitCount } = useFormState();\n if (!name) {\n throw new Error(`[Field: ${Component.displayName}] The name prop is required.`);\n }\n const errors = [\n ...(formErrors[name]?.types\n ? Object.values(formErrors[name].types ?? [])\n : []),\n ];\n if (errors.length === 0 && !!formErrors[name]) {\n // the field is invalid but no error message was provided\n errors.push(\"Invalid value\");\n }\n useEffect(() => {\n if (submitCount > 0) {\n void trigger(name);\n }\n // we should trigger a re-validation after the form is submitted, the errors are shown\n // and the required prop is changed. Other deps can not be added, otherwise a revalidation\n // will be triggered unnecessarily\n }, [props.required]);\n useEffect(() => {\n // if custom errors are provided, then we need to trigger the validation\n // otherwise the errors will not be shown till the form is submitted\n if (props.errors && props.errors.length > 0) {\n void trigger(name);\n }\n }, [name, props.errors, trigger]);\n const [initialized, setInitialized] = useState(false);\n useEffect(() => {\n if (initialized) {\n setValue(name, value);\n }\n setInitialized(true);\n // initialized can not be in the dependencies because it would cause\n // a change of the value on initial render\n }, [name, value]);\n if (value !== undefined && !onChangeProp) {\n console.warn(`[Field: ${name}] Value prop provided without onChange so it will be ignored. Use disabled/readOnly if you want to prevent changes.`);\n }\n return (_jsx(Controller, { control: control, name: name, defaultValue: (value ?? props.defaultValue), disabled: props.disabled, \n // eslint-disable-next-line react/jsx-no-bind\n render: ({ field: { \n // just preventing that onChange is included in the rest of the props\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onChange: _, onBlur: onBlurController, value: internalValue, ...rest }, }) => {\n // ignore eslint that flags an error here:\n // React Hook \"useCallback\" cannot be called inside a callback.\n // React Hooks must be called in a React function component or a custom React Hook function.\n const onBlurCallback = useCallback((event) => {\n if (showErrorOnBlur) {\n void trigger(name);\n }\n else {\n onBlurController(); // default behavior\n }\n // trigger parent onBlur\n if (onBlurProp) {\n onBlurProp(event);\n }\n }, [onBlurController, showErrorOnBlur]);\n // ignore eslint that flags an error here:\n // React Hook \"useCallback\" cannot be called inside a callback.\n // React Hooks must be called in a React function component or a custom React Hook function.\n const onChangeCallback = useCallback((event) => {\n // update value state\n if (onChangeProp) {\n if (Object.hasOwn(event, \"target\")) {\n // it is probably an actual event\n setValue(name, event.target.value);\n }\n else {\n // it is a custom onChange and it pass the value directly\n setValue(name, event);\n }\n // the fields is controlled by the parent\n onChangeProp(event);\n }\n else {\n // sometimes the onChange is overridden by the parent and use the new value as parameter instead of event\n let value = event;\n if (event instanceof Event ||\n event.target instanceof HTMLElement) {\n value = event.target.value;\n }\n setValue(name, value); // default behavior\n }\n // now let's validate the field\n if (showErrorOnChange === undefined &&\n showErrorOnBlur === undefined) {\n // use form validation mode...\n // if previously validated, then validate on change\n if (submitCount > 0) {\n void trigger(name);\n }\n }\n else {\n // default validation behavior was overridden\n if (showErrorOnChange) {\n void trigger(name);\n }\n }\n }, \n // `internalValue` is the value of the field that is controlled by the form\n // it is used to trigger the validation on change, so we need to add it to the dependencies\n // otherwise the validation will not be triggered on change\n [internalValue, showErrorOnChange, showErrorOnBlur, submitCount]);\n // extract ref from rest\n const { ref: formFieldRef } = rest;\n // create a combined ref\n const combinedRef = (element) => {\n // apply external ref if exists\n if (typeof ref === \"function\") {\n ref(element);\n }\n else if (ref) {\n ref.current = element;\n }\n // apply field ref\n formFieldRef(element);\n };\n return (_jsx(Component, { ...props, ...rest, value: internalValue, onBlur: onBlurCallback, onChange: onChangeCallback, errors: errors, ref: combinedRef }));\n }, rules: {\n ...(props.required\n ? {\n required: {\n value: props.required,\n message: \"This field is required\",\n },\n }\n : {\n required: undefined,\n }),\n ...(props.pattern && {\n pattern: {\n value: new RegExp(props.pattern),\n message: \"This field does not match the required pattern\",\n },\n }),\n ...(props.maxLength !== undefined && props.maxLength >= 0\n ? {\n maxLength: {\n value: props.maxLength,\n message: `This field must be at most ${props.maxLength} characters`,\n },\n }\n : {\n maxLength: undefined,\n }),\n ...(props.minLength !== undefined && props.minLength >= 0\n ? {\n minLength: {\n value: props.minLength,\n message: `This field must be at least ${props.minLength} characters`,\n },\n }\n : {\n minLength: undefined,\n }),\n ...(props.minValue && {\n min: {\n value: props.minValue,\n message: `This field must be greater than or equal to ${props.minValue}`,\n },\n }),\n ...(props.maxValue && {\n max: {\n value: props.maxValue,\n message: `This field must be less than or equal to ${props.maxValue}`,\n },\n }),\n validate: {\n // custom errors provided as props\n ...(props.errors\n ? Object.fromEntries(Array.isArray(props.errors)\n ? props.errors.map((error, index) => [\n `_propError${index}`,\n () => error,\n ])\n : [])\n : {}),\n // built in validations by the field in the library\n ...(options?.validations\n ? Object.fromEntries(Object.entries(options.validations).map(([key, validatorFactory]) => {\n const propsWithValues = {\n value: getValues(name), // get the actual value of the field in the form\n name,\n showErrorOnBlur,\n showErrorOnChange,\n ...props,\n };\n return [\n key,\n validatorFactory(propsWithValues),\n ];\n }))\n : {}),\n // custom validations by the user/developer\n ...(customValidators !== undefined\n ? Object.fromEntries((Array.isArray(customValidators)\n ? customValidators\n : [customValidators]).map((validator, index) => [\n `customValidation${index}`,\n validator,\n ]))\n : {}),\n },\n } }));\n });\n};\n//# sourceMappingURL=with-field-validation.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from \"../../lib/index.js\";\nconst FormDescription = ({ children, as, className, }) => {\n const Component = as ?? \"p\";\n return (_jsx(Component, { className: cn(\"font-sans text-sm font-normal leading-5 text-gray-600 dark:text-gray-500\", className), children: children }));\n};\nexport { FormDescription };\n//# sourceMappingURL=form-description.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nexport const FormGroup = ({ children }) => {\n return _jsx(\"div\", { className: \"flex flex-col gap-2\", children: children });\n};\n//# sourceMappingURL=form-group.js.map","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { Icon } from \"#powerhouse\";\nimport { cn } from \"../../../lib/index.js\";\nimport { CommandItem } from \"../../command/command.js\";\nconst renderIcon = (IconComponent) => {\n if (typeof IconComponent === \"string\") {\n return (_jsx(Icon, { name: IconComponent, size: 16, className: cn(\"text-gray-700 dark:text-gray-400\") }));\n }\n return (IconComponent && (_jsx(IconComponent, { className: cn(\"size-4\", \"text-gray-700 dark:text-gray-400\") })));\n};\nexport const CommandItemList = ({ options = [], selectedValues, multiple, selectionIcon, selectionIconPosition, hasAnyIcon, toggleOption, tabIndex, }) => {\n return (_jsx(_Fragment, { children: options.map((opt) => {\n const isSelected = selectedValues.includes(opt.value);\n return (_jsxs(CommandItem, { tabIndex: tabIndex, value: opt.label, onSelect: () => !opt.disabled && toggleOption(opt.value), disabled: opt.disabled, className: cn(\"cursor-pointer\", \"data-[selected=true]:bg-gray-100 dark:data-[selected=true]:bg-gray-900\", opt.disabled &&\n \"!pointer-events-auto cursor-not-allowed hover:bg-transparent dark:hover:bg-transparent\"), role: \"option\", \"aria-selected\": isSelected, children: [selectionIcon === \"auto\" &&\n (multiple ? (_jsx(\"div\", { className: cn(\"flex size-4 items-center justify-center rounded-md border\", \"border-gray-700 dark:border-gray-400\", isSelected &&\n \"bg-gray-900 text-slate-50 dark:bg-gray-400 dark:text-black\"), children: isSelected && _jsx(Icon, { name: \"Checkmark\", size: 16 }) })) : (_jsx(\"div\", { className: cn(\"relative size-4 rounded-full border\", isSelected\n ? \"border-gray-900 dark:border-gray-400\"\n : \"border-gray-800 dark:border-gray-400\", \"bg-transparent dark:bg-transparent\"), children: isSelected && (_jsx(\"div\", { className: \"absolute left-1/2 top-1/2 size-2.5 -translate-x-1/2 -translate-y-1/2 rounded-full bg-gray-900 dark:bg-gray-400\" })) }))), selectionIcon === \"checkmark\" &&\n !(selectionIconPosition === \"right\" && hasAnyIcon) && (_jsx(\"div\", { className: \"size-4\", children: selectionIconPosition === \"left\" && isSelected && (_jsx(Icon, { name: \"Checkmark\", size: 16, className: \"text-gray-900 dark:text-gray-50\" })) })), renderIcon(opt.icon), _jsx(\"span\", { className: cn(\"flex-1 truncate text-[14px] font-normal leading-4\", \"text-gray-700 dark:text-gray-500\", opt.disabled && \"text-gray-600 dark:text-gray-600\"), children: opt.label }), selectionIcon === \"checkmark\" &&\n selectionIconPosition === \"right\" && (_jsx(\"div\", { className: \"size-4\", children: isSelected && (_jsx(Icon, { name: \"Checkmark\", size: 16, className: \"text-gray-900 dark:text-gray-50\" })) }))] }, `favorite-${opt.value}`));\n }) }));\n};\n//# sourceMappingURL=CommandItemList.js.map","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\n/* eslint-disable react/jsx-max-depth */\nimport { Icon } from \"#powerhouse\";\nimport { useCommandState } from \"cmdk\";\nimport { useEffect } from \"react\";\nimport { cn } from \"../../lib/index.js\";\nimport { CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, } from \"../command/command.js\";\nimport { CommandItemList } from \"./subcomponents/CommandItemList.js\";\nexport const Content = ({ searchable, commandListRef, multiple, selectedValues, selectionIcon, selectionIconPosition, options = [], toggleAll, toggleOption, favoriteOptions = [], }) => {\n const enabledOptions = options.filter((opt) => !opt.disabled);\n const hasAnyIcon = options.some((opt) => opt.icon);\n const cmdkSearch = useCommandState((state) => state.search);\n // scroll to top when search change\n useEffect(() => {\n commandListRef.current?.scrollTo({ top: 0, behavior: \"instant\" });\n }, [commandListRef, cmdkSearch]);\n return (_jsxs(_Fragment, { children: [searchable && (_jsx(CommandInput, { placeholder: \"Search...\", onKeyDown: (e) => {\n const isOptionsRelatedKey = [\n \"ArrowUp\",\n \"ArrowDown\",\n \"Enter\",\n ].includes(e.key);\n if (!(isOptionsRelatedKey && enabledOptions.length > 0)) {\n e.stopPropagation();\n }\n }, wrapperClassName: \"rounded-t\", className: \"text-gray-900 dark:text-gray-50\" })), _jsxs(CommandList, { ref: commandListRef, tabIndex: !searchable ? 0 : undefined, children: [_jsx(CommandEmpty, { className: \"p-4 text-center text-[14px] font-normal leading-5 text-gray-700 dark:text-gray-400\", children: \"No results found.\" }), multiple && cmdkSearch === \"\" && (_jsx(CommandGroup, { className: \"pb-0\", children: _jsx(CommandItem, { value: \"select-all\", onSelect: toggleAll, disabled: false, className: cn(\"cursor-pointer\", \"data-[selected=true]:bg-gray-100 dark:data-[selected=true]:bg-gray-900\"), role: \"option\", \"aria-selected\": selectedValues.length === enabledOptions.length, children: _jsxs(\"div\", { className: \"flex w-full items-center gap-2\", children: [selectionIcon === \"auto\" && (_jsx(\"div\", { className: cn(\"flex size-4 items-center justify-center rounded-md border\", \"border-gray-700 dark:border-gray-400\", selectedValues.length === enabledOptions.length &&\n \"bg-gray-900 text-slate-50 dark:bg-gray-400 dark:text-black\"), children: selectedValues.length === enabledOptions.length && (_jsx(Icon, { name: \"Checkmark\", size: 16 })) })), selectionIcon === \"checkmark\" &&\n !(selectionIconPosition === \"right\" && hasAnyIcon) && (_jsx(\"div\", { className: \"size-4\", children: selectionIconPosition === \"left\" &&\n selectedValues.length === enabledOptions.length && (_jsx(Icon, { name: \"Checkmark\", size: 16, className: \"text-gray-900 dark:text-gray-50\" })) })), _jsx(\"span\", { className: \"text-[14px] font-semibold leading-4 text-gray-900 dark:text-gray-50\", children: selectedValues.length === enabledOptions.length\n ? \"Deselect All\"\n : \"Select All\" }), selectionIcon === \"checkmark\" &&\n selectionIconPosition === \"right\" && (_jsx(\"div\", { className: \"ml-auto size-4\", children: selectedValues.length === enabledOptions.length && (_jsx(Icon, { name: \"Checkmark\", size: 16, className: \"text-gray-900 dark:text-gray-50\" })) }))] }) }) })), _jsxs(CommandGroup, { className: multiple && cmdkSearch === \"\" ? \"pt-0\" : undefined, children: [_jsx(CommandItemList, { options: favoriteOptions, selectedValues: selectedValues, multiple: multiple, selectionIcon: selectionIcon, selectionIconPosition: selectionIconPosition, hasAnyIcon: hasAnyIcon, toggleOption: toggleOption, tabIndex: !searchable ? 0 : undefined }), favoriteOptions.length > 0 && (_jsx(\"div\", { className: \"my-1 border-b border-gray-300 dark:border-gray-600\" })), _jsx(CommandItemList, { options: options, selectedValues: selectedValues, multiple: multiple, selectionIcon: selectionIcon, selectionIconPosition: selectionIconPosition, hasAnyIcon: hasAnyIcon, toggleOption: toggleOption, tabIndex: !searchable ? 0 : undefined })] })] })] }));\n};\n//# sourceMappingURL=content.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon } from \"#powerhouse\";\nimport React from \"react\";\nimport { cn } from \"../../lib/index.js\";\nexport const SelectedContent = ({ selectedValues, options = [], multiple, searchable, placeholder, handleClear, }) => {\n const renderIcon = (IconComponent) => {\n if (typeof IconComponent === \"string\") {\n return _jsx(Icon, { name: IconComponent, size: 16 });\n }\n return IconComponent && _jsx(IconComponent, { className: \"size-4\" });\n };\n if (selectedValues.length === 0) {\n return (_jsxs(\"div\", { className: cn(\"mx-auto flex w-full items-center\", placeholder ? \"justify-between\" : \"justify-end\"), children: [placeholder && (_jsx(\"span\", { className: \"text-[14px] font-normal leading-5 text-gray-600 dark:text-gray-500\", children: placeholder })), searchable ? (_jsx(Icon, { name: \"CaretSort\", size: 16, className: \"cursor-pointer text-gray-700 dark:text-gray-400\" })) : (_jsx(Icon, { name: \"ChevronDown\", size: 16, className: \"cursor-pointer text-gray-700 dark:text-gray-400\" }))] }));\n }\n return (_jsxs(\"div\", { className: \"flex w-full items-center justify-between gap-2\", children: [_jsx(\"div\", { className: cn(\"max-w-full truncate text-gray-900 dark:text-gray-50\", !multiple && \"flex items-center gap-2\"), children: selectedValues.map((value, index) => {\n const option = options.find((o) => o.value === value);\n return !multiple ? (_jsxs(React.Fragment, { children: [renderIcon(option?.icon), _jsx(\"span\", { className: \"truncate text-[14px] font-normal leading-5\", children: option?.label })] }, value)) : (_jsx(\"span\", { className: cn(\"text-[14px] font-normal leading-5\", index !== selectedValues.length - 1 && \"mr-1\"), children: index !== selectedValues.length - 1\n ? `${option?.label},`\n : option?.label }, value));\n }) }), _jsxs(\"div\", { className: \"flex items-center justify-between gap-2\", children: [multiple && selectedValues.length > 0 && (_jsx(\"div\", { onClick: (e) => {\n e.preventDefault();\n e.stopPropagation();\n handleClear();\n }, className: \"size-4 p-0\", children: _jsx(Icon, { name: \"XmarkLight\", size: 16, className: \"cursor-pointer text-gray-700 dark:text-gray-400\" }) })), searchable ? (_jsx(Icon, { name: \"CaretSort\", size: 16, className: \"cursor-pointer text-gray-700 dark:text-gray-400\" })) : (_jsx(Icon, { name: \"ChevronDown\", size: 16, className: \"cursor-pointer text-gray-700 dark:text-gray-400\" }))] })] }));\n};\n//# sourceMappingURL=selected-content.js.map","import { useCallback, useEffect, useRef, useState } from \"react\";\nexport function useSelectField({ options = [], multiple = false, defaultValue, value, onChange, }) {\n const isInternalChange = useRef(false);\n const commandListRef = useRef(null);\n const [isPopoverOpen, setIsPopoverOpen] = useState(false);\n const [selectedValues, setSelectedValues] = useState(() => {\n const initialValue = value ?? defaultValue ?? [];\n if (initialValue === \"\") {\n return [];\n }\n return Array.isArray(initialValue) ? initialValue : [initialValue];\n });\n useEffect(() => {\n if (isInternalChange.current) {\n isInternalChange.current = false;\n return;\n }\n const newValue = value ?? defaultValue ?? [];\n if (newValue === \"\") {\n setSelectedValues([]);\n }\n else {\n setSelectedValues(Array.isArray(newValue) ? newValue : [newValue]);\n }\n }, [value]);\n const handleOpenChange = useCallback((open) => {\n setIsPopoverOpen(open);\n }, []);\n const toggleOption = useCallback((optionValue) => {\n isInternalChange.current = true;\n let newValues;\n if (multiple) {\n newValues = selectedValues.includes(optionValue)\n ? selectedValues.filter((v) => v !== optionValue)\n : [...selectedValues, optionValue];\n }\n else {\n newValues = selectedValues[0] === optionValue ? [] : [optionValue];\n setIsPopoverOpen(false);\n }\n setSelectedValues(newValues);\n onChange?.(multiple ? newValues : (newValues[0] ?? \"\"));\n }, [multiple, selectedValues, options, onChange]);\n const handleClear = useCallback(() => {\n isInternalChange.current = true;\n setSelectedValues([]);\n onChange?.(multiple ? [] : \"\");\n }, [multiple, onChange]);\n const toggleAll = useCallback(() => {\n isInternalChange.current = true;\n const enabledOptions = options\n .filter((opt) => !opt.disabled)\n .map((opt) => opt.value);\n const newValues = selectedValues.length === enabledOptions.length ? [] : enabledOptions;\n setSelectedValues(newValues);\n onChange?.(multiple ? newValues : newValues[0]);\n }, [options, selectedValues, multiple, onChange]);\n // handles changes to the \"multiple\" prop avoiding calling onChange on mount\n const prevMultiple = useRef(multiple);\n useEffect(() => {\n if (prevMultiple.current === multiple) {\n return;\n }\n prevMultiple.current = multiple;\n if (!multiple && selectedValues.length > 1) {\n isInternalChange.current = true;\n setSelectedValues([selectedValues[0]]);\n onChange?.(selectedValues[0]);\n return;\n }\n if (selectedValues.length > 0) {\n isInternalChange.current = true;\n onChange?.(multiple ? [selectedValues[0]] : selectedValues[0]);\n }\n }, [multiple]);\n return {\n selectedValues,\n isPopoverOpen,\n commandListRef,\n toggleOption,\n handleClear,\n toggleAll,\n handleOpenChange,\n };\n}\n//# sourceMappingURL=use-select-field.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\n/* eslint-disable react/jsx-max-depth */\n/* eslint-disable react/jsx-props-no-spreading */\nimport React, { useCallback, useId } from \"react\";\nimport { cn } from \"../../lib/index.js\";\nimport { Button } from \"../button/button.js\";\nimport { Command } from \"../command/command.js\";\nimport { FormDescription } from \"../form-description/index.js\";\nimport { FormGroup } from \"../form-group/index.js\";\nimport { FormLabel } from \"../form-label/index.js\";\nimport { FormMessageList } from \"../form-message/message-list.js\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"../popover/popover.js\";\nimport { withFieldValidation } from \"../with-field-validation/with-field-validation.js\";\nimport { Content } from \"./content.js\";\nimport { SelectedContent } from \"./selected-content.js\";\nimport { useSelectField } from \"./use-select-field.js\";\nexport const SelectFieldRaw = React.forwardRef(({ \n// core functionality props\noptions = [], favoriteOptions = [], defaultValue, value, onChange, onBlur, \n// form-related props\nid: propId, name, label, required, disabled, \n// validation props\nerrors = [], warnings = [], \n// behavior props\nmultiple, selectionIcon = \"auto\", selectionIconPosition = \"left\", searchable, \n// display props\ndescription, placeholder, className, contentClassName, contentAlign = \"start\", ...props }, ref) => {\n const prefix = useId();\n const id = propId ?? `${prefix}-select`;\n const { selectedValues, isPopoverOpen, commandListRef, toggleOption, handleClear, toggleAll, handleOpenChange, } = useSelectField({\n options,\n multiple,\n defaultValue,\n value,\n onChange,\n });\n const onTriggerBlur = useCallback((e) => {\n if (!isPopoverOpen) {\n // trigger the blur event when the trigger loses focus but the popover is not open,\n // because when the popover is open, the trigger loses focus but the select as a component still has the focus\n onBlur?.(e);\n }\n }, [onBlur, isPopoverOpen]);\n return (_jsxs(FormGroup, { children: [label && (_jsx(FormLabel, { htmlFor: id, required: required, disabled: disabled, hasError: errors.length > 0, inline: false, onClick: (e) => {\n e.preventDefault();\n e.target.control?.focus();\n }, children: label })), _jsxs(Popover, { open: isPopoverOpen, onOpenChange: (open) => {\n handleOpenChange(open);\n // if the popover is closing and it was not by the trigger button\n if (!open && document.activeElement?.id !== id) {\n onBlur?.({ target: {} });\n }\n }, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(Button, { id: id, name: name, type: \"button\", role: \"combobox\", onBlur: onTriggerBlur, disabled: disabled, \"aria-invalid\": errors.length > 0, \"aria-label\": label ? undefined : multiple ? \"Multi select\" : \"Select\", \"aria-required\": required, \"aria-expanded\": isPopoverOpen, className: cn(\"flex h-9 w-full items-center justify-between px-3 py-2\", \"dark:border-charcoal-700 dark:bg-charcoal-900 rounded-md border border-gray-300 bg-white\", \"hover:border-gray-300 hover:bg-gray-100\", \"dark:hover:border-charcoal-700 dark:hover:bg-charcoal-800\", \"dark:focus:ring-charcoal-300 focus:outline-none focus:ring-1 focus:ring-gray-900 focus:ring-offset-0\", \"dark:focus-visible:ring-charcoal-300 focus-visible:ring-1 focus-visible:ring-gray-900 focus-visible:ring-offset-0\", disabled && [\n \"!pointer-events-auto cursor-not-allowed bg-gray-50\",\n \"dark:hover:border-charcoal-700 dark:hover:bg-charcoal-900 hover:border-gray-300 hover:bg-gray-50\",\n ], className), ...props, ref: ref, children: _jsx(SelectedContent, { selectedValues: selectedValues, options: [...favoriteOptions, ...options], multiple: multiple, searchable: searchable, placeholder: placeholder, handleClear: handleClear }) }) }), _jsx(PopoverContent, { align: contentAlign, onEscapeKeyDown: (e) => {\n e.preventDefault();\n handleOpenChange(false);\n }, className: contentClassName, children: _jsx(Command, { defaultValue: !multiple && selectedValues[0]\n ? options.find((opt) => opt.value === selectedValues[0])\n ?.label\n : undefined, children: _jsx(Content, { favoriteOptions: favoriteOptions, searchable: searchable, commandListRef: commandListRef, multiple: multiple, selectedValues: selectedValues, selectionIcon: selectionIcon, selectionIconPosition: selectionIconPosition, options: options, toggleAll: toggleAll, toggleOption: toggleOption }) }) })] }), description && _jsx(FormDescription, { children: description }), warnings.length > 0 && (_jsx(FormMessageList, { messages: warnings, type: \"warning\" })), errors.length > 0 && (_jsx(FormMessageList, { messages: errors, type: \"error\" }))] }));\n});\nexport const SelectField = withFieldValidation(SelectFieldRaw);\nSelectField.displayName = \"SelectField\";\n//# sourceMappingURL=select-field.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { cn } from \"#powerhouse\";\nimport * as React from \"react\";\nconst inputBaseStyles = cn(\n// Base styles\n\"flex h-9 w-full rounded-md text-sm font-normal leading-5 text-gray-900 dark:text-gray-50\", \n// Border & Background\n\"dark:border-charcoal-700 dark:bg-charcoal-900 border border-gray-300 bg-white\", \n// Padding\n\"px-3 py-2\", \n// Placeholder\n\"font-sans placeholder:text-gray-500 dark:placeholder:text-gray-600\", \n// Focus styles\n\"focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-gray-900 focus-visible:ring-offset-0 focus-visible:ring-offset-white\", \"dark:focus-visible:ring-charcoal-300 dark:focus-visible:ring-offset-charcoal-900 dark:focus:bg-charcoal-900 focus:bg-gray-50\", \n// Disabled state\n\"disabled:cursor-not-allowed\", \"disabled:border-gray-300 disabled:bg-gray-50 disabled:text-gray-700\", \"disabled:dark:border-charcoal-800 disabled:dark:bg-charcoal-900 disabled:dark:text-gray-300\");\nconst Input = React.forwardRef(({ className, type, ...props }, ref) => {\n return (_jsx(\"input\", { type: type, className: cn(inputBaseStyles, className), ref: ref, ...props }));\n});\nInput.displayName = \"Input\";\nexport { Input };\n//# sourceMappingURL=input.js.map","import React, { useEffect } from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport { deepEqual } from \"../../lib/index.js\";\n// Workaround to set the value of an input element\n// following react core team recommendation\n// https://github.com/facebook/react/issues/10135\nfunction setNativeValue(element, value) {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const valueSetter = Object.getOwnPropertyDescriptor(element, \"value\")?.set;\n const prototype = Object.getPrototypeOf(element);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const prototypeValueSetter = Object.getOwnPropertyDescriptor(prototype, \"value\")?.set;\n if (valueSetter && valueSetter !== prototypeValueSetter) {\n prototypeValueSetter?.call(element, value);\n }\n else {\n valueSetter?.call(element, value);\n }\n}\n// apply transformers to the value\nfunction _applyTransformers(transformers, value, filter = \"blur\") {\n return transformers.reduce((value, transformer) => {\n if (typeof transformer === \"function\") {\n if (filter === \"blur\" || filter === \"all\") {\n // array of transformers are only applied on blur\n return transformer(value);\n }\n return value;\n }\n // it is a transformer object\n if ((transformer.options?.trigger ?? \"blur\") !== filter &&\n filter !== \"all\") {\n return value;\n }\n // if no set, we assume true\n if (transformer.options?.if === undefined || transformer.options.if) {\n return transformer.transformer(value);\n }\n return value;\n }, value);\n}\n/**\n * Apply transformers to the value of the input element. A transformer is a function that\n * will be applied to the value of the input element modifying the value.\n *\n * @param transformers - An array of transformers. A transformer is an object with a\n * `transformer` property, which is a function that will be applied to the value of\n * the input element, and an optional `options` property. The `options` property can\n * have a `trigger` property, which is the event that triggers the transformer, and\n * an `if` property, which is a boolean that indicates if the transformer should be\n * applied.\n * @param children - The input element to apply the transformers to as children\n *\n * @example\n * <ValueTransformer transformers={[\n * {\n * transformer: (value) => value.toUpperCase(),\n * options: {\n * trigger: \"change\",\n * },\n * },\n * ]}>\n * <Input />\n * </ValueTransformer>\n *\n * @example\n * <ValueTransformer transformers={[\n * {\n * // trim the value on blur\n * transformer: (value) => (value as string).trim(),\n * },\n * ]}>\n * <Input />\n * </ValueTransformer>\n */\nfunction ValueTransformer({ transformers, children }) {\n const formContext = useFormContext();\n const setValue = formContext?.setValue;\n useEffect(() => {\n // apply all the transformers on mount to prevent untransformed values\n // if the field is not touched by the user\n const value = children.props.value;\n const transformedValue = _applyTransformers(transformers, value, \"all\");\n if (!deepEqual(transformedValue, value)) {\n if (typeof setValue === \"function\") {\n setValue(children.props.name, transformedValue);\n }\n else {\n // if setValue is not available, then we're not inside a form context\n // so we need to update the value using onChange if available\n children.props.onChange?.({\n target: { value: transformedValue },\n });\n }\n }\n }, [transformers, setValue]);\n // eslint-disable-next-line @typescript-eslint/no-unsafe-argument\n return React.cloneElement(children, {\n ...children.props,\n onChange: (event) => {\n // apply transformers on change\n const transformedValue = _applyTransformers(transformers, event.target.value, \"change\");\n if (transformedValue !== event.target.value && setValue) {\n setValue(children.props.name, transformedValue);\n setNativeValue(event.target, transformedValue);\n }\n // call the original onChange\n children.props.onChange?.(event);\n },\n // apply transformers on blur\n onBlur: (event) => {\n // call the original onBlur\n children.props.onBlur?.(event);\n // apply the transformers\n const target = event.target;\n const transformedValue = _applyTransformers(transformers, target.value, \"blur\");\n if (!deepEqual(transformedValue, target.value)) {\n // only dispatch change if the value has changed\n setNativeValue(target, transformedValue);\n const changeEvent = new Event(\"change\", { bubbles: true });\n target.dispatchEvent(changeEvent);\n }\n },\n onKeyDown: (event) => {\n // call the original onKeyDown\n children.props.onKeyDown?.(event);\n // apply the transformers\n if (event.key === \"Enter\") {\n const target = event.target;\n const transformedValue = _applyTransformers(transformers, target.value, \"keyDown\");\n // only dispatch change if the value has changed\n if (!deepEqual(transformedValue, target.value)) {\n setNativeValue(target, transformedValue);\n const changeEvent = new Event(\"change\", { bubbles: true });\n target.dispatchEvent(changeEvent);\n }\n }\n },\n });\n}\nexport default ValueTransformer;\n//# sourceMappingURL=value-transformer.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\n/* eslint-disable react/jsx-no-bind */\nimport { Icon } from \"#powerhouse\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport React, { useMemo, useState } from \"react\";\nimport { useMediaQuery } from \"usehooks-ts\";\nimport { cn } from \"../../lib/index.js\";\nimport { sharedValueTransformers } from \"../../lib/shared-value-transformers.js\";\nimport { Input } from \"../input/index.js\";\nimport { Tooltip, TooltipProvider } from \"../tooltip/tooltip.js\";\nimport ValueTransformer from \"../value-transformer/value-transformer.js\";\nconst IdAutocompleteInputContainer = React.forwardRef(({ id, name, value, className, isLoading, haveFetchError, disabled, onChange, onBlur, onClick, selectedOption, optionsLength, handleOpenChange, onKeyDown, onMouseDown, placeholder, hasError, label, required, isPopoverOpen, maxLength, handlePaste, onPaste, ...props }, ref) => {\n const [hasCopied, setHasCopied] = useState(false);\n const hasHover = useMediaQuery(\"(hover: hover) and (pointer: fine)\");\n const transformers = useMemo(() => [\n sharedValueTransformers.trimOnBlur(),\n sharedValueTransformers.trimOnEnter(),\n ], []);\n return (_jsxs(\"div\", { className: cn(\"group relative\"), children: [_jsx(ValueTransformer, { transformers: transformers, children: _jsx(CommandPrimitive.Input, { asChild: true, children: _jsx(Input, { id: id, name: name, value: value, className: cn(\"pr-9\", className), disabled: disabled, onChange: onChange, onBlur: onBlur, onClick: (e) => {\n const input = e.target;\n if (!(isLoading || haveFetchError) &&\n !selectedOption &&\n input.value !== \"\") {\n handleOpenChange?.(true);\n }\n onClick?.(e);\n }, onKeyDown: (e) => {\n onKeyDown?.(e);\n const isOptionsRelatedKey = [\n \"ArrowUp\",\n \"ArrowDown\",\n \"Enter\",\n ].includes(e.key);\n if (e.key === \"Enter\" && isPopoverOpen && optionsLength === 0) {\n handleOpenChange?.(false);\n e.preventDefault();\n return;\n }\n if (!(isOptionsRelatedKey && isPopoverOpen && optionsLength > 0)) {\n e.stopPropagation();\n }\n }, onMouseDown: (e) => {\n const input = e.target;\n if (!input.contains(document.activeElement)) {\n // wait for the next tick to ensure the focus occurs first\n requestAnimationFrame(() => {\n input.select();\n });\n }\n onMouseDown?.(e);\n }, onPaste: (e) => {\n handlePaste?.(e);\n onPaste?.(e);\n }, placeholder: placeholder, \"aria-invalid\": hasError, \"aria-label\": !label ? \"Id Autocomplete\" : undefined, \"aria-required\": required, \"aria-expanded\": isPopoverOpen, maxLength: maxLength, ...props, ref: ref }) }) }), _jsxs(\"div\", { className: cn(\"absolute right-3 top-1/2 flex size-4 -translate-y-1/2 items-center\", !isLoading &&\n !haveFetchError &&\n !selectedOption &&\n \"pointer-events-none\"), children: [isLoading && (_jsx(Icon, { name: \"Reload\", size: 16, className: cn(\"animate-spin text-gray-500 dark:text-gray-600\") })), haveFetchError && (_jsx(TooltipProvider, { children: _jsx(Tooltip, { content: \"Network error!\", children: _jsx(Icon, { name: \"Error\", size: 16, className: cn(\"text-red-900\") }) }) })), selectedOption && !isLoading && !haveFetchError && (_jsx(TooltipProvider, { children: _jsx(Tooltip, { content: \"Copied!\", open: hasCopied, triggerAsChild: true, children: _jsx(\"button\", { type: \"button\", onClick: () => {\n navigator.clipboard\n .writeText(selectedOption.value)\n .then(() => {\n setHasCopied(true);\n setTimeout(() => setHasCopied(false), 2000);\n })\n .catch((error) => {\n console.error(\"Failed to copy value: \", error);\n });\n }, className: cn(\"focus-visible:outline-none [&_svg]:pointer-events-none\", hasHover &&\n \"opacity-0 transition-opacity duration-500 group-hover:opacity-100\"), children: _jsx(Icon, { name: \"Copy\", size: 16, className: cn(\"text-gray-500 dark:text-gray-600\") }) }) }) }))] })] }));\n});\nexport { IdAutocompleteInputContainer };\n//# sourceMappingURL=id-autocomplete-input-container.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon } from \"#powerhouse\";\nimport React from \"react\";\nimport { cn } from \"../../lib/index.js\";\nconst IconRenderer = ({ customIcon, asPlaceholder }) => {\n if (typeof customIcon === \"string\") {\n return (_jsx(Icon, { name: customIcon, size: 24, className: cn(\"shrink-0\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-900 dark:text-gray-300\") }));\n }\n if (React.isValidElement(customIcon)) {\n return _jsx(\"div\", { className: \"size-6 shrink-0 overflow-hidden\", children: customIcon });\n }\n return null;\n};\nconst ReloadButton = ({ isLoadingSelectedOption, handleFetchSelectedOption, isFetchSelectedOptionSync, value, }) => (_jsx(\"div\", { children: _jsx(\"button\", { type: \"button\", disabled: isLoadingSelectedOption || isFetchSelectedOptionSync, onClick: () => {\n if (!isLoadingSelectedOption && !isFetchSelectedOptionSync) {\n handleFetchSelectedOption(value);\n }\n }, className: cn(\"mt-0.5 focus-visible:outline-none\", \"disabled:pointer-events-none [&_svg]:pointer-events-none\"), \"aria-label\": isLoadingSelectedOption\n ? \"Loading\"\n : isFetchSelectedOptionSync\n ? \"Success\"\n : \"Reload\", children: _jsx(Icon, { name: isFetchSelectedOptionSync ? \"Checkmark\" : \"Reload\", size: 16, className: cn(\"text-gray-500 dark:text-gray-600\", isLoadingSelectedOption && \"animate-spin\", isFetchSelectedOptionSync && \"animate-in fade-in duration-500\") }) }) }));\nconst IdAutocompleteListOption = ({ variant = \"withValue\", icon, title = \"Title not available\", path = \"Path not available\", value, description = \"Description not available\", asPlaceholder, showValue = true, isLoadingSelectedOption, handleFetchSelectedOption, isFetchSelectedOptionSync, className, placeholderIcon = \"PowerhouseLogoSmall\", ...extraProps }) => {\n const renderWithValue = () => (_jsx(\"div\", { className: cn(\"flex w-full items-center\"), children: _jsx(\"span\", { className: cn(\"truncate text-xs leading-5\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-500 dark:text-gray-600\"), children: value }) }));\n const renderWithValueTitleAndDescription = (showDescription = true) => (_jsxs(\"div\", { className: cn(\"flex w-full flex-col gap-1\"), children: [_jsxs(\"div\", { className: cn(\"flex gap-2\"), children: [_jsx(IconRenderer, { customIcon: asPlaceholder ? placeholderIcon : icon, asPlaceholder: asPlaceholder }), _jsxs(\"div\", { className: cn(\"flex min-w-0 grow flex-col gap-[-2px]\"), children: [_jsx(\"span\", { className: cn(\"truncate text-sm font-bold leading-5\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-900 dark:text-gray-300\"), children: title }), !showValue && typeof path === \"object\" ? (_jsx(\"a\", { href: path.url, target: \"_blank\", rel: \"noopener noreferrer\", className: cn(\"truncate text-xs leading-5 text-blue-900 hover:underline focus-visible:outline-none\"), children: path.text })) : (_jsx(\"span\", { className: cn(\"truncate text-xs leading-5\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-500 dark:text-gray-600\"), children: typeof path === \"object\" ? path.text : path }))] }), asPlaceholder === false && handleFetchSelectedOption && (_jsx(ReloadButton, { isLoadingSelectedOption: isLoadingSelectedOption, handleFetchSelectedOption: handleFetchSelectedOption, isFetchSelectedOptionSync: isFetchSelectedOptionSync, value: value }))] }), showValue && (_jsx(\"div\", { className: cn(\"flex max-w-full items-center\"), children: _jsx(\"span\", { className: cn(\"truncate text-xs leading-5\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-500 dark:text-gray-600\"), children: value }) })), showDescription && (_jsx(\"div\", { className: cn(\"flex flex-col\"), children: _jsx(\"p\", { className: cn(\"line-clamp-2 text-xs leading-5\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-900 dark:text-gray-300\"), children: description }) })), showDescription &&\n \"agentType\" in extraProps &&\n typeof extraProps.agentType === \"string\" && (_jsx(\"div\", { className: cn(\"flex max-w-full items-center justify-end\"), children: _jsx(\"span\", { className: cn(\"truncate text-xs leading-5\", asPlaceholder\n ? \"text-gray-400 dark:text-gray-700\"\n : \"text-gray-500 dark:text-gray-600\"), children: extraProps.agentType }) }))] }));\n return (_jsxs(\"div\", { className: cn(\"w-full max-w-full rounded-md bg-transparent px-3 pb-2\", variant === \"withValue\" ? \"pt-2\" : \"pt-3\", className), children: [variant === \"withValue\" && renderWithValue(), variant === \"withValueAndTitle\" &&\n renderWithValueTitleAndDescription(false), variant === \"withValueTitleAndDescription\" &&\n renderWithValueTitleAndDescription()] }));\n};\nexport { IdAutocompleteListOption };\n//# sourceMappingURL=id-autocomplete-list-option.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useCommandState } from \"cmdk\";\nimport { useEffect } from \"react\";\nimport { cn } from \"../../lib/index.js\";\nimport { CommandEmpty, CommandGroup, CommandItem, CommandList, } from \"../command/index.js\";\nimport { IdAutocompleteListOption } from \"./id-autocomplete-list-option.js\";\nconst IdAutocompleteList = ({ variant, commandListRef, selectedValue, options = [], toggleOption, renderOption, previewPlaceholder, }) => {\n const cmdkSearch = useCommandState((state) => state.search);\n const defaultOption = previewPlaceholder || {\n value: \"value not available\",\n title: \"Title not available\",\n path: \"Path not available\",\n description: \"Description not available\",\n };\n useEffect(() => {\n commandListRef?.current?.scrollTo({ top: 0, behavior: \"instant\" });\n }, [commandListRef, cmdkSearch]);\n return (_jsxs(CommandList, { ref: commandListRef, children: [_jsx(CommandEmpty, { className: cn(\"h-full p-1\"), children: renderOption ? (renderOption(defaultOption, {\n asPlaceholder: true,\n showValue: true,\n className: cn(\"pb-0\"),\n })) : (_jsx(IdAutocompleteListOption, { variant: variant, icon: defaultOption.icon, title: defaultOption.title, path: defaultOption.path, value: defaultOption.value, description: defaultOption.description, asPlaceholder: true, className: cn(\"pb-0\") })) }), _jsx(CommandGroup, { className: cn(\"px-1\"), children: options.map((opt) => {\n const isSelected = selectedValue === opt.value;\n return (_jsx(CommandItem, { value: opt.value, onSelect: () => toggleOption?.(opt.value), className: cn(\"h-full cursor-pointer border-y-0 p-0\", \"data-[selected=true]:bg-gray-100 dark:data-[selected=true]:bg-gray-900\"), role: \"option\", \"aria-selected\": isSelected, children: renderOption ? (renderOption(opt, {\n asPlaceholder: false,\n showValue: true,\n })) : (_jsx(IdAutocompleteListOption, { variant: variant, ...opt })) }, opt.value));\n }) })] }));\n};\nexport { IdAutocompleteList };\n//# sourceMappingURL=id-autocomplete-list.js.map","import { createContext, useContext } from \"react\";\nexport const IdAutocompleteContext = createContext({});\nexport const useIdAutocompleteContext = () => useContext(IdAutocompleteContext);\n//# sourceMappingURL=id-autocomplete-context.js.map","import { useCallback, useEffect, useRef, useState } from \"react\";\nimport { useDebounceCallback } from \"usehooks-ts\";\nimport { useIdAutocompleteContext } from \"./id-autocomplete-context.js\";\nexport function useIdAutocomplete({ autoComplete, defaultValue, value, isOpenByDefault, initialOptions, onChange, onBlur, fetchOptions, fetchSelectedOption, }) {\n const context = useIdAutocompleteContext();\n const shouldFetchOptions = useRef(false);\n const isInternalChange = useRef(false);\n const commandListRef = useRef(null);\n const [isPopoverOpen, setIsPopoverOpen] = useState(isOpenByDefault ?? false);\n const [options, setOptions] = useState(initialOptions ?? []);\n const [isLoading, setIsLoading] = useState(false);\n const [isLoadingSelectedOption, setIsLoadingSelectedOption] = useState(false);\n const [haveFetchError, setHaveFetchError] = useState(false);\n const [selectedValue, setSelectedValue] = useState(value ?? defaultValue ?? \"\");\n const [selectedOption, setSelectedOption] = useState(undefined);\n const [commandValue, setCommandValue] = useState(\"\");\n const [isFetchSelectedOptionSync, setIsFetchSelectedOptionSync] = useState(false);\n const clear = useCallback(() => {\n setHaveFetchError(false);\n setIsLoading(false);\n setIsLoadingSelectedOption(false);\n setIsPopoverOpen(false);\n }, []);\n const debouncedFetchOptions = useDebounceCallback(useCallback((newValue) => {\n if (!autoComplete || !fetchOptions)\n return;\n if (newValue === \"\") {\n clear();\n setOptions([]);\n setSelectedValue(\"\");\n setSelectedOption(undefined);\n return;\n }\n setHaveFetchError(false);\n setIsLoading(true);\n try {\n const result = fetchOptions(newValue, context);\n Promise.resolve(result)\n .then((newOptions) => {\n setOptions(newOptions);\n const matchingOption = newOptions.find((opt) => opt.value === newValue);\n if (matchingOption) {\n setSelectedOption(matchingOption);\n setIsPopoverOpen(false);\n }\n else {\n setSelectedOption(undefined);\n setIsPopoverOpen(true);\n }\n setIsLoading(false);\n })\n .catch(() => {\n setHaveFetchError(true);\n setIsLoading(false);\n });\n }\n catch {\n setHaveFetchError(true);\n setIsLoading(false);\n }\n }, [clear, autoComplete, fetchOptions, context]));\n const handleFetchSelectedOption = useCallback((value) => {\n if (!autoComplete || !fetchSelectedOption)\n return;\n setIsLoadingSelectedOption(true);\n try {\n const result = fetchSelectedOption(value);\n const isPromise = result instanceof Promise;\n Promise.resolve(result)\n .then((option) => {\n if (option) {\n setSelectedOption(option);\n setOptions((prevOptions) => {\n const optionIndex = prevOptions.findIndex((opt) => opt.value === value);\n if (optionIndex !== -1) {\n const newOptions = [...prevOptions];\n newOptions[optionIndex] = option;\n return newOptions;\n }\n return prevOptions;\n });\n }\n else {\n clear();\n setOptions([]);\n setSelectedValue(\"\");\n setSelectedOption(undefined);\n }\n setIsLoadingSelectedOption(false);\n if (!isPromise) {\n setIsFetchSelectedOptionSync(true);\n setTimeout(() => {\n setIsFetchSelectedOptionSync(false);\n }, 1500);\n }\n })\n .catch(() => {\n setIsLoadingSelectedOption(false);\n });\n }\n catch {\n setIsLoadingSelectedOption(false);\n }\n }, [clear, autoComplete, fetchSelectedOption]);\n const handleOpenChange = useCallback((open) => {\n if (!open) {\n setCommandValue(options[0]?.value ?? \"\");\n }\n setIsPopoverOpen(open);\n }, [options]);\n const toggleOption = useCallback((optionValue) => {\n shouldFetchOptions.current = false;\n isInternalChange.current = true;\n setSelectedValue(optionValue);\n setSelectedOption(options.find((opt) => opt.value === optionValue));\n clear();\n onChange?.(optionValue);\n }, [onChange, clear, options]);\n const handleChange = useCallback((e) => {\n const newValue = e.target.value;\n shouldFetchOptions.current = true;\n setSelectedValue(newValue);\n setSelectedOption(undefined);\n onChange?.(newValue);\n }, [onChange]);\n const handleCommandValue = useCallback((value) => {\n setCommandValue(value);\n }, []);\n const onTriggerBlur = useCallback((e) => {\n if (!isPopoverOpen) {\n onBlur?.(e);\n }\n }, [onBlur, isPopoverOpen]);\n const handlePaste = useCallback((e) => {\n // Get clipboard data and trim it\n const clipboardData = e.clipboardData.getData(\"text\");\n const trimmedValue = clipboardData.trim();\n // If trimming changed the value, handle paste manually\n if (clipboardData !== trimmedValue) {\n e.preventDefault();\n // Get current input element and selection positions\n const input = e.currentTarget;\n const start = input.selectionStart || 0;\n const end = input.selectionEnd || 0;\n // Create new value by inserting trimmed text at cursor position\n const currentValue = input.value;\n const newValue = currentValue.substring(0, start) +\n trimmedValue +\n currentValue.substring(end);\n // Update input value via onChange\n onChange?.(newValue);\n // Set cursor position after pasted text and fetch options\n requestAnimationFrame(() => {\n const newPosition = start + trimmedValue.length;\n input.setSelectionRange(newPosition, newPosition);\n debouncedFetchOptions(newValue);\n });\n }\n else if (clipboardData === selectedValue) {\n debouncedFetchOptions(selectedValue);\n }\n }, [selectedValue, debouncedFetchOptions, onChange]);\n useEffect(() => {\n if (autoComplete) {\n if (shouldFetchOptions.current) {\n debouncedFetchOptions(selectedValue);\n }\n }\n else {\n clear();\n setOptions([]);\n setSelectedValue(\"\");\n setSelectedOption(undefined);\n }\n }, [autoComplete, selectedValue, debouncedFetchOptions, clear]);\n useEffect(() => {\n if (!isInternalChange.current) {\n shouldFetchOptions.current = false;\n setSelectedValue(value ?? defaultValue ?? \"\");\n setSelectedOption(undefined);\n }\n isInternalChange.current = false;\n }, [value]);\n useEffect(() => {\n if (initialOptions?.length && selectedValue) {\n const matchingOption = initialOptions.find((opt) => opt.value === selectedValue);\n if (matchingOption) {\n setSelectedOption(matchingOption);\n }\n }\n }, []);\n return {\n selectedValue,\n selectedOption,\n isPopoverOpen,\n commandListRef,\n options,\n isLoading,\n isLoadingSelectedOption,\n haveFetchError,\n commandValue,\n isFetchSelectedOptionSync,\n toggleOption,\n handleOpenChange,\n onTriggerBlur,\n handleChange,\n handleCommandValue,\n handleFetchSelectedOption,\n handlePaste,\n };\n}\n//# sourceMappingURL=use-id-autocomplete.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\n/* eslint-disable react/jsx-max-depth */\n/* eslint-disable react/jsx-no-bind */\n/* eslint-disable react/jsx-props-no-spreading */\nimport React, { useId, useMemo, useRef } from \"react\";\nimport { cn } from \"../../lib/index.js\";\nimport { sharedValueTransformers } from \"../../lib/shared-value-transformers.js\";\nimport { Command } from \"../command/command.js\";\nimport { FormDescription } from \"../form-description/form-description.js\";\nimport { FormGroup } from \"../form-group/form-group.js\";\nimport { FormLabel } from \"../form-label/form-label.js\";\nimport { FormMessageList } from \"../form-message/index.js\";\nimport { Input } from \"../input/index.js\";\nimport { Popover, PopoverAnchor, PopoverContent } from \"../popover/popover.js\";\nimport ValueTransformer from \"../value-transformer/value-transformer.js\";\nimport { IdAutocompleteInputContainer } from \"./id-autocomplete-input-container.js\";\nimport { IdAutocompleteListOption } from \"./id-autocomplete-list-option.js\";\nimport { IdAutocompleteList } from \"./id-autocomplete-list.js\";\nimport { useIdAutocomplete } from \"./use-id-autocomplete.js\";\nconst IdAutocomplete = React.forwardRef(({ id: idProp, name, className, label, description, value, defaultValue, disabled, placeholder, required, errors, warnings, onChange, onBlur, onClick, onKeyDown, onMouseDown, autoComplete = true, variant = \"withValue\", maxLength, fetchOptionsCallback, fetchSelectedOptionCallback, isOpenByDefault, // to be used only in stories\ninitialOptions, renderOption, previewPlaceholder, ...props }, ref) => {\n const prefix = useId();\n const id = idProp ?? `${prefix}-id-autocomplete`;\n const inputRef = useRef(null);\n const mergedRef = (node) => {\n inputRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n }\n else if (ref) {\n ref.current = node;\n }\n };\n const hasWarning = Array.isArray(warnings) && warnings.length > 0;\n const hasError = Array.isArray(errors) && errors.length > 0;\n const { selectedValue, selectedOption, isPopoverOpen, commandListRef, options, isLoading, isLoadingSelectedOption, haveFetchError, commandValue, isFetchSelectedOptionSync, toggleOption, handleOpenChange, onTriggerBlur, handleChange, handleCommandValue, handleFetchSelectedOption, handlePaste, } = useIdAutocomplete({\n autoComplete,\n defaultValue,\n value,\n isOpenByDefault,\n initialOptions,\n onChange,\n onBlur,\n fetchOptions: fetchOptionsCallback,\n fetchSelectedOption: fetchSelectedOptionCallback,\n });\n const handleOptionSelection = (optionValue) => {\n toggleOption(optionValue);\n inputRef.current?.focus();\n };\n const asCard = variant === \"withValueAndTitle\" ||\n variant === \"withValueTitleAndDescription\";\n const transformers = useMemo(() => [\n sharedValueTransformers.trimOnBlur(),\n sharedValueTransformers.trimOnEnter(),\n ], []);\n return (_jsxs(FormGroup, { children: [!!label && (_jsx(FormLabel, { htmlFor: id, disabled: disabled, hasError: hasError, required: required, onClick: (e) => {\n e.preventDefault();\n e.target.control?.focus();\n }, children: label })), autoComplete && fetchOptionsCallback ? (_jsx(Popover, { open: isPopoverOpen, onOpenChange: handleOpenChange, children: _jsxs(Command, { shouldFilter: false, value: commandValue, onValueChange: handleCommandValue, className: cn(\"dark:bg-charcoal-900 bg-gray-100\"), children: [_jsx(PopoverAnchor, { asChild: true, children: _jsx(IdAutocompleteInputContainer, { id: id, name: name, value: selectedValue, className: className, isLoading: isLoading, haveFetchError: haveFetchError, disabled: disabled, onChange: handleChange, onBlur: onTriggerBlur, onClick: onClick, selectedOption: selectedOption, optionsLength: options.length, handleOpenChange: handleOpenChange, onKeyDown: onKeyDown, onMouseDown: onMouseDown, placeholder: placeholder, hasError: hasError, label: label, required: required, isPopoverOpen: isPopoverOpen, maxLength: maxLength, handlePaste: handlePaste, ...props, ref: mergedRef }) }), asCard &&\n (renderOption ? (renderOption(selectedOption === undefined && previewPlaceholder\n ? {\n ...previewPlaceholder,\n }\n : {\n ...selectedOption,\n value: selectedOption?.value ?? \"\",\n }, {\n asPlaceholder: selectedOption === undefined,\n showValue: false,\n isLoadingSelectedOption,\n handleFetchSelectedOption: fetchSelectedOptionCallback\n ? handleFetchSelectedOption\n : undefined,\n isFetchSelectedOptionSync,\n className: cn(\"rounded-t-none pt-2\"),\n })) : (_jsx(IdAutocompleteListOption, { variant: variant, icon: selectedOption?.icon ?? previewPlaceholder?.icon, title: selectedOption?.title ?? previewPlaceholder?.title, path: selectedOption?.path ?? previewPlaceholder?.path, value: selectedOption?.value ?? previewPlaceholder?.value ?? \"\", description: selectedOption?.description ??\n previewPlaceholder?.description, asPlaceholder: selectedOption === undefined, showValue: false, isLoadingSelectedOption: isLoadingSelectedOption, handleFetchSelectedOption: fetchSelectedOptionCallback\n ? handleFetchSelectedOption\n : undefined, isFetchSelectedOptionSync: isFetchSelectedOptionSync, className: cn(\"rounded-t-none pt-2\") }))), _jsx(PopoverContent, { align: \"start\", onOpenAutoFocus: (e) => e.preventDefault(), onInteractOutside: (e) => {\n if (e.target instanceof Element && e.target.id === id) {\n e.preventDefault();\n }\n }, children: _jsx(IdAutocompleteList, { variant: variant, commandListRef: commandListRef, selectedValue: selectedValue, options: options, toggleOption: handleOptionSelection, renderOption: renderOption, previewPlaceholder: previewPlaceholder }) })] }) })) : (_jsx(ValueTransformer, { transformers: transformers, children: _jsx(Input, { id: id, name: name, value: selectedValue, className: className, disabled: disabled, onChange: handleChange, onBlur: onBlur, onClick: onClick, onMouseDown: onMouseDown, placeholder: placeholder, \"aria-invalid\": hasError, \"aria-label\": !label ? \"Id Autocomplete\" : undefined, \"aria-required\": required, maxLength: maxLength, ...props, ref: mergedRef }) })), !!description && _jsx(FormDescription, { children: description }), hasWarning && _jsx(FormMessageList, { messages: warnings, type: \"warning\" }), hasError && _jsx(FormMessageList, { messages: errors, type: \"error\" })] }));\n});\nIdAutocomplete.displayName = \"IdAutocomplete\";\nexport { IdAutocomplete };\n//# sourceMappingURL=id-autocomplete.js.map","import { jsxs as _jsxs, jsx as _jsx } from \"react/jsx-runtime\";\nimport { useState } from \"react\";\nimport { object, record, string } from \"zod\";\nimport { Disclosure } from \"../../../disclosure/index.js\";\nconst REQUIRED_DEPENDENCIES = [\n \"@powerhousedao/design-system\",\n \"document-drive\",\n \"document-model\",\n];\nconst PackageJsonSchema = object({\n version: string({ message: \"Missing version field in package.json\" }),\n dependencies: record(string(), string()).nullable(),\n devDependencies: record(string(), string()).nullable(),\n})\n .refine((data) => data.dependencies != null || data.devDependencies != null, \"package.json must have either dependencies or devDependencies\")\n .transform((data) => {\n const allDependencies = {\n ...data.dependencies,\n ...data.devDependencies,\n };\n // Check if all required dependencies exist\n const missingDeps = REQUIRED_DEPENDENCIES.filter((dep) => !allDependencies[dep] || typeof allDependencies[dep] !== \"string\");\n if (missingDeps.length > 0) {\n console.error(\"Missing or invalid dependencies:\", missingDeps, \"Available dependencies:\", Object.keys(allDependencies));\n return false;\n }\n return {\n version: data.version,\n dependencies: Object.fromEntries(REQUIRED_DEPENDENCIES.map((dep) => [dep, allDependencies[dep]])),\n };\n});\nexport function verifyPackageJsonFields(packageJson) {\n const parsed = PackageJsonSchema.safeParse(packageJson);\n if (!parsed.success) {\n console.error(\"Package.json validation failed:\", parsed.error.format());\n return false;\n }\n return parsed.data;\n}\nexport function DependencyVersions(props) {\n const [isOpen, setIsOpen] = useState(false);\n const { packageJson, phCliVersion } = props;\n const validatedData = verifyPackageJsonFields(packageJson);\n if (!validatedData) {\n console.error(\"Failed to validate package.json data\");\n return null;\n }\n return (_jsx(Disclosure, { isOpen: isOpen, onOpenChange: () => setIsOpen(!isOpen), title: `App version: ${validatedData.version}`, toggleClassName: \"text-gray-900 text-sm\", children: _jsxs(\"ul\", { className: \"text-sm text-gray-600\", children: [REQUIRED_DEPENDENCIES.map((dep) => (_jsxs(\"li\", { className: \"my-1 flex justify-between pr-1\", children: [_jsxs(\"span\", { children: [dep.replace(\"@powerhousedao/\", \"\"), \":\"] }), _jsx(\"span\", { className: \"font-normal\", children: validatedData.dependencies[dep] })] }, dep))), phCliVersion && (_jsxs(\"li\", { className: \"my-1 flex justify-between pr-1\", children: [_jsx(\"span\", { children: \"@powerhousedao/ph-cli:\" }), _jsx(\"span\", { className: \"font-normal\", children: phCliVersion })] }, \"ph-cli\"))] }) }));\n}\n//# sourceMappingURL=dependency-versions.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { DependencyVersions } from \"../settings-modal/dependency-versions/dependency-versions.js\";\nexport function About(props) {\n const { packageJson, phCliVersion } = props;\n return (_jsxs(\"div\", { className: \"bg-white p-3\", children: [_jsx(\"h2\", { className: \"font-semibold\", children: \"About\" }), _jsx(\"p\", { className: \"text-sm font-normal text-gray-600\", children: \"Connect is the hub for your most important documents and processes translated into software. Easily capture data in a structured way with Connect.\" }), _jsx(\"div\", { className: \"my-4\", children: _jsx(DependencyVersions, { packageJson: packageJson, phCliVersion: phCliVersion }) })] }));\n}\n//# sourceMappingURL=about.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon } from \"#powerhouse\";\nimport { cn } from \"#ui\";\nimport { capitalCase } from \"change-case\";\nimport { getDriveSharingType } from \"document-drive/server/utils\";\nimport { useState } from \"react\";\nimport { CLOUD, PUBLIC } from \"../../../constants/drives.js\";\nimport { ConnectDropdownMenu } from \"../../dropdown-menu/dropdown-menu.js\";\nexport function DangerZone(props) {\n const { className, ...rest } = props;\n return (_jsxs(\"div\", { className: cn(\"h-full rounded-lg bg-white p-3\", className), children: [_jsx(\"h2\", { className: \"mb-4 font-semibold\", children: \"Modify Drives\" }), _jsx(ModifyDrives, { ...rest }), _jsx(\"h2\", { className: \"my-4 font-semibold\", children: \"Local Storage\" }), _jsx(LocalStorage, { ...rest })] }));\n}\nfunction ModifyDrives(props) {\n const { className, ...rest } = props;\n return (_jsx(\"div\", { className: className, children: _jsx(DriveList, { ...rest }) }));\n}\nfunction DriveList(props) {\n const { className, ...rest } = props;\n return (_jsx(\"div\", { className: className, children: props.drives.map((drive) => (_jsx(Drive, { drive: drive, ...rest }, drive.header.id))) }));\n}\nfunction Drive(props) {\n const { drive, className, onDeleteDrive } = props;\n const [isDropdownMenuOpen, setIsDropdownMenuOpen] = useState(false);\n const localDriveIcon = _jsx(Icon, { name: \"Hdd\", size: 16, className: \"flex-none\" });\n const cloudDriveIcon = _jsx(Icon, { name: \"Server\", size: 16, className: \"flex-none\" });\n const publicDriveIcon = drive.state.global.icon ? (_jsx(\"img\", { alt: \"drive icon\", className: \"size-4 flex-none object-contain\", src: drive.state.global.icon })) : (_jsx(Icon, { name: \"M\", size: 16, className: \"flex-none\" }));\n function getNodeIcon() {\n const sharingType = getDriveSharingType(drive);\n if (sharingType === PUBLIC) {\n return publicDriveIcon;\n }\n if (sharingType === CLOUD) {\n return cloudDriveIcon;\n }\n return localDriveIcon;\n }\n const icon = getNodeIcon();\n return (_jsxs(\"div\", { className: cn(\"mb-4 flex w-96 items-center gap-2 rounded-md border border-gray-200 bg-gray-50 px-3 py-2 shadow-sm last-of-type:mb-0\", className), children: [icon, _jsxs(\"div\", { children: [_jsx(\"span\", { className: \"block text-sm font-medium leading-[18px]\", children: capitalCase(drive.header.name) }), _jsxs(\"div\", { className: \"flex items-baseline gap-x-2 leading-[18px]\", children: [_jsxs(\"span\", { className: \"text-sm text-gray-600\", children: [capitalCase(getDriveSharingType(drive)), \" App\"] }), _jsxs(\"a\", { className: \"group flex items-center gap-x-2 text-sm text-slate-500 transition-colors hover:text-[#9896FF]\", children: [\"By Powerhouse\", _jsx(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", viewBox: \"0 0 12 12\", className: \"size-4 text-gray-400 transition-colors group-hover:text-inherit\", children: _jsx(\"path\", { d: \"M7.99365 11.9939C9.46632 11.9939 10.6603 10.7999 10.6603 9.32722V7.32722C10.6603 6.95922 10.3617 6.66056 9.99365 6.66056C9.62565 6.66056 9.32699 6.95922 9.32699 7.32722V9.32722C9.32699 10.0639 8.73032 10.6606 7.99365 10.6606H2.66032C1.92365 10.6606 1.32699 10.0639 1.32699 9.32722V3.99389C1.32699 3.25723 1.92365 2.66056 2.66032 2.66056H4.66032C5.02832 2.66056 5.32699 2.36189 5.32699 1.99389C5.32699 1.6259 5.02832 1.32723 4.66032 1.32723H2.66032C1.18765 1.32723 -0.00634766 2.52123 -0.00634766 3.99389V9.32722C-0.00634766 10.7999 1.18765 11.9939 2.66032 11.9939H7.99365ZM5.32699 7.32722C5.49765 7.32722 5.67565 7.26989 5.80632 7.13989L10.1396 2.80656L11.9937 4.66056V-0.00610352H7.32699L9.18099 1.8479L4.84766 6.18123C4.58766 6.4419 4.58766 6.87922 4.84766 7.13989C4.97832 7.26989 5.15632 7.32722 5.32699 7.32722Z\", fill: \"currentColor\" }) })] })] })] }), _jsx(ConnectDropdownMenu, { items: [\n {\n id: \"delete-drive\",\n label: \"Delete\",\n icon: _jsx(Icon, { name: \"Trash\" }),\n className: \"text-red-900\",\n },\n ], onItemClick: (id) => {\n if (id === \"delete-drive\") {\n onDeleteDrive(drive);\n }\n }, onOpenChange: setIsDropdownMenuOpen, open: isDropdownMenuOpen, children: _jsx(\"button\", { className: \"group ml-auto flex-none\", onClick: (e) => {\n e.stopPropagation();\n setIsDropdownMenuOpen(true);\n }, children: _jsx(Icon, { className: \"text-gray-600 group-hover:text-gray-900\", name: \"VerticalDots\", size: 16 }) }) })] }));\n}\nfunction LocalStorage(props) {\n const { onClearStorage } = props;\n return (_jsx(\"div\", { children: _jsxs(\"button\", { className: \"flex items-center gap-x-2 rounded-md border border-gray-300 bg-transparent px-3 py-1 text-sm font-medium text-red-900 transition-colors hover:bg-gray-100\", onClick: onClearStorage, children: [\"Clear Storage \", _jsx(Icon, { name: \"Trash\", size: 16 })] }) }));\n}\n//# sourceMappingURL=danger-zone.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SelectFieldRaw } from \"#ui\";\nimport { twMerge } from \"tailwind-merge\";\nexport function DefaultEditor(props) {\n const { className, ...rest } = props;\n return (_jsx(\"div\", { className: twMerge(\"rounded-lg p-3\", className), children: _jsx(DefaultEditorSelect, { ...rest }) }));\n}\nexport function DefaultEditorSelect(props) {\n const { documentModelEditor, setDocumentModelEditor, documentModelEditorOptions, className, } = props;\n return (_jsxs(\"div\", { children: [_jsx(\"h3\", { className: \"mb-4 font-semibold text-gray-900\", children: \"Default Editor Selection\" }), _jsx(SelectFieldRaw, { className: twMerge(\"min-w-36 max-w-fit\", className), name: \"default-editor\", required: true, value: documentModelEditor, options: documentModelEditorOptions, multiple: false, onChange: (value) => setDocumentModelEditor(value) })] }));\n}\n//# sourceMappingURL=default-editor.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Button, Icon } from \"#powerhouse\";\nimport { IdAutocomplete, Input } from \"#ui\";\nimport { useCallback, useMemo, useState } from \"react\";\nconst ProviderIconMap = {\n npm: { icon: \"Npm\" },\n github: { icon: \"Github\", size: 28 },\n local: { icon: \"Hdd\" },\n};\nconst PackageItem = ({ packageName, provider }) => {\n const icon = provider && ProviderIconMap[provider];\n return (_jsxs(\"div\", { className: \"flex w-full items-center justify-between px-2 py-1\", children: [_jsx(\"p\", { className: \"font-medium\", children: packageName }), icon && _jsx(Icon, { name: icon.icon, size: icon.size })] }));\n};\nexport const PackageManagerInput = (props) => {\n const { onInstall, packageOptions, className } = props;\n const [value, setValue] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState();\n const handleSubmit = useCallback(() => {\n const result = onInstall(value);\n if (result) {\n setLoading(true);\n result\n .then(() => setValue(\"\"))\n .catch(setError)\n .finally(() => setLoading(false));\n }\n else {\n setValue(\"\");\n setError(undefined);\n }\n }, [onInstall, value]);\n const handleChange = useCallback((e) => {\n setValue(e.target.value);\n }, []);\n const errorMessage = !error\n ? \" \"\n : typeof error === \"string\"\n ? error\n : error instanceof Error\n ? error.message\n : error;\n const autoCompleteOptions = useMemo(() => {\n const initialOptions = packageOptions?.map((option) => ({\n ...option,\n value: option.packageName,\n }));\n return !packageOptions?.length\n ? {\n autoComplete: false,\n }\n : {\n autoComplete: true,\n initialOptions,\n fetchOptionsCallback: (userInput) => initialOptions?.filter((o) => o.packageName.toLowerCase().includes(userInput.toLowerCase())) ?? [],\n renderOption: (option) => (\n // eslint-disable-next-line react/jsx-props-no-spreading\n _jsx(PackageItem, { ...option })),\n };\n }, [packageOptions]);\n return (_jsxs(\"div\", { className: className, children: [_jsx(\"h3\", { className: \"mb-4 font-semibold text-gray-900\", children: \"Install Package\" }), _jsxs(\"div\", { className: \"flex items-center gap-4\", children: [!packageOptions?.length ? (_jsx(Input, { name: \"package\", className: \"max-w-xs text-gray-700\", value: value, onChange: handleChange, onSubmit: handleSubmit, disabled: loading })) : (\n // eslint-disable-next-line react/jsx-props-no-spreading\n _jsx(IdAutocomplete, { ...autoCompleteOptions, onChange: setValue })), _jsx(Button, { className: \"h-9 rounded-md text-sm\", onClick: handleSubmit, disabled: loading, children: \"Install\" })] }), _jsx(\"p\", { className: \"mb-3 ml-2 h-3 text-sm text-red-800\", children: errorMessage })] }));\n};\n//# sourceMappingURL=package-manager-input.js.map","import { jsxs as _jsxs, jsx as _jsx } from \"react/jsx-runtime\";\nimport { ConnectDropdownMenu } from \"#connect\";\nimport { Icon } from \"#powerhouse\";\nimport { useCallback, useState } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nconst PackageDetail = ({ label, value, }) => {\n return (_jsxs(\"div\", { className: \"flex items-start gap-2 text-sm\", children: [_jsxs(\"p\", { className: \"text-gray-600\", children: [label, \":\"] }), _jsx(\"p\", { className: \"text-gray-600\", children: value })] }));\n};\nexport const PackageManagerListItem = (props) => {\n const { package: { name, description, category, publisher, publisherUrl, modules, id, removable, }, mutable, onUninstall, className, } = props;\n const [isDropdownMenuOpen, setIsDropdownMenuOpen] = useState(false);\n return (_jsxs(\"li\", { className: twMerge(\"relative flex flex-col items-start rounded-md border border-gray-200 p-3 text-sm leading-5 shadow-sm\", className), children: [_jsx(\"h3\", { className: \"font-semibold text-gray-900\", children: name }), _jsx(PackageDetail, { label: \"Description\", value: description }), _jsx(PackageDetail, { label: \"Category\", value: category }), _jsx(PackageDetail, { label: \"Publisher\", value: publisher }), _jsx(PackageDetail, { label: \"Publisher URL\", value: _jsx(\"a\", { className: \"underline\", href: publisherUrl, children: publisherUrl }) }), _jsx(\"p\", { className: \"text-sm text-gray-600\", children: \"Modules included:\" }), _jsx(\"ul\", { className: \"list-disc pl-5\", children: modules.map((module) => (_jsx(\"li\", { children: _jsx(\"span\", { className: \"text-gray-600\", children: module }) }, module))) }), mutable && removable && (_jsx(ConnectDropdownMenu, { items: [\n {\n id: \"uninstall\",\n label: \"Uninstall\",\n icon: _jsx(Icon, { name: \"Trash\" }),\n className: \"text-red-900\",\n },\n ], onItemClick: (optionId) => {\n if (optionId === \"uninstall\") {\n onUninstall(id);\n }\n }, onOpenChange: setIsDropdownMenuOpen, open: isDropdownMenuOpen, children: _jsx(\"button\", { className: \"group absolute right-3 top-3\", onClick: (e) => {\n e.stopPropagation();\n setIsDropdownMenuOpen(true);\n }, children: _jsx(Icon, { className: \"text-gray-600 group-hover:text-gray-900\", name: \"VerticalDots\" }) }) }))] }));\n};\nexport const PackageManagerList = (props) => {\n const { className, packages, onUninstall, mutable, ...rest } = props;\n const handleUninstall = useCallback((id) => {\n onUninstall(id);\n }, [onUninstall]);\n return (_jsxs(\"div\", { ...rest, className: twMerge(\"flex max-h-[370px] flex-col items-stretch overflow-hidden\", className), children: [_jsx(\"h3\", { className: \"mb-4 font-semibold text-gray-900\", children: \"Installed Packages\" }), _jsx(\"div\", { className: \"flex-1 overflow-y-auto pr-2\", children: _jsx(\"ul\", { className: \"flex flex-col items-stretch gap-4 pr-2\", children: packages.map((pkg) => (_jsx(PackageManagerListItem, { package: pkg, onUninstall: handleUninstall, mutable: mutable }, pkg.id))) }) })] }));\n};\n//# sourceMappingURL=package-manager-list.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { SelectFieldRaw } from \"#ui\";\nimport { useCallback } from \"react\";\nexport const PackageManagerReactorSelect = (props) => {\n const { reactorOptions, reactor, onReactorChange, ...rest } = props;\n const handleChange = useCallback((value) => {\n onReactorChange(Array.isArray(value) ? value.at(-1) : value);\n }, [onReactorChange]);\n return (_jsxs(\"div\", { ...rest, children: [_jsx(\"h3\", { className: \"mb-4 font-semibold text-gray-900\", children: \"Select Reactor\" }), _jsx(SelectFieldRaw, { className: \"min-w-36 max-w-fit\", name: \"reactor\", required: true, value: reactor, options: reactorOptions, multiple: false, onChange: handleChange })] }));\n};\n//# sourceMappingURL=package-manager-select.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { PackageManagerInput, } from \"./package-manager-input.js\";\nimport { PackageManagerList, } from \"./package-manager-list.js\";\nimport { PackageManagerReactorSelect, } from \"./package-manager-select.js\";\nexport const PackageManager = (props) => {\n const { className, reactorOptions, reactor, onReactorChange, onInstall, packages, onUninstall, mutable, packageOptions, ...rest } = props;\n const packageOptionsSet = useMemo(() => packageOptions?.filter((o) => !packages.find((p) => p.name === o.packageName)), [packages, packageOptions]);\n return (_jsxs(\"div\", { ...rest, className: twMerge(\"flex h-full flex-1 flex-col rounded-lg p-3\", className), children: [_jsx(PackageManagerReactorSelect, { reactor: reactor, reactorOptions: reactorOptions, onReactorChange: onReactorChange, className: \"mb-4\" }), mutable && (_jsx(PackageManagerInput, { onInstall: onInstall, packageOptions: packageOptionsSet })), _jsx(PackageManagerList, { packages: packages, onUninstall: onUninstall, mutable: mutable })] }));\n};\n//# sourceMappingURL=package-manager.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon, Modal } from \"#powerhouse\";\nimport { useState } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nexport function SettingsModal(props) {\n const { title, overlayProps, contentProps, onOpenChange, tabs, defaultTab, ...restProps } = props;\n const [selectedTab, setSelectedTab] = useState(defaultTab ?? tabs.at(0)?.id);\n const tabsContent = tabs.map((tab) => (_jsx(\"button\", { type: \"button\", onClick: () => setSelectedTab(tab.id), children: _jsxs(\"div\", { className: twMerge(\"flex h-9 w-48 cursor-pointer items-center gap-x-2 rounded-md pl-3 hover:bg-slate-50\", selectedTab === tab.id ? \"bg-slate-50\" : \"bg-transparent\"), children: [tab.icon, _jsx(\"span\", { children: tab.label })] }) }, tab.id)));\n const selectedTabContent = tabs.find((tab) => tab.id === selectedTab)?.content;\n const SelectedTabComponent = selectedTabContent;\n return (_jsxs(Modal, { contentProps: {\n ...contentProps,\n className: twMerge(\"min-h-full w-full max-w-4xl rounded-xl\", contentProps?.className),\n style: {\n ...contentProps?.style,\n boxShadow: \"0px 0px 16px 4px rgba(0, 0, 0, 0.04), 0px 33px 32px -16px rgba(0, 0, 0, 0.10)\",\n },\n }, onOpenChange: onOpenChange, overlayProps: {\n ...overlayProps,\n className: twMerge(\"py-28\", overlayProps?.className),\n }, ...restProps, children: [_jsxs(\"div\", { className: \"flex justify-between border-b border-slate-50 p-4\", children: [_jsx(\"h1\", { className: \"text-center text-xl font-semibold\", children: title }), _jsx(\"button\", { type: \"button\", className: \"flex size-6 items-center justify-center rounded-md outline-none\", onClick: () => onOpenChange?.(false), children: _jsx(Icon, { name: \"XmarkLight\", size: 24 }) })] }), _jsxs(\"div\", { className: \"flex flex-1\", children: [_jsx(\"div\", { className: \"flex flex-col gap-y-1 p-3 pt-6\", children: tabsContent }), _jsx(\"div\", { className: \"m-6 flex h-full flex-1 flex-col overflow-hidden rounded-lg border border-slate-50\", children: typeof SelectedTabComponent === \"function\" ? (_jsx(SelectedTabComponent, {})) : (SelectedTabComponent) })] })] }));\n}\n//# sourceMappingURL=settings-modal.js.map","import connectConfig from '#connect-config';\nimport { About as BaseAbout } from '@powerhousedao/design-system';\nimport packageJson from '../../../../../package.json' with { type: 'json' };\n\nexport const About: React.FC = () => {\n return (\n <BaseAbout\n packageJson={packageJson}\n phCliVersion={\n typeof connectConfig.phCliVersion === 'string'\n ? connectConfig.phCliVersion\n : undefined\n }\n />\n );\n};\n","import { DangerZone as BaseDangerZone } from '@powerhousedao/design-system';\nimport {\n deleteDrive,\n setSelectedDrive,\n setSelectedNode,\n useDrives,\n} from '@powerhousedao/reactor-browser';\nimport { type DocumentDriveDocument, logger } from 'document-drive';\nimport { useTranslation } from 'react-i18next';\nimport { clearReactorStorage } from '../../../../store/reactor';\nimport { useModal } from '../../modal.js';\n\nexport const DangerZone: React.FC<{ onRefresh: () => void }> = ({\n onRefresh,\n}) => {\n const { t } = useTranslation();\n const drives = useDrives();\n const { showModal } = useModal();\n\n const handleDeleteDrive = async (drive: DocumentDriveDocument) => {\n await deleteDrive(drive.header.id);\n setSelectedDrive(undefined);\n };\n\n const handleClearStorage = () => {\n showModal('confirmationModal', {\n title: t('modals.connectSettings.clearStorage.confirmation.title'),\n body: t('modals.connectSettings.clearStorage.confirmation.body'),\n cancelLabel: t('common.cancel'),\n continueLabel: t(\n 'modals.connectSettings.clearStorage.confirmation.clearButton',\n ),\n onContinue: () => {\n clearReactorStorage()\n .then(() => {\n // refreshes the page to reload default drive\n setSelectedDrive(undefined);\n setSelectedNode(undefined);\n onRefresh();\n })\n .catch(logger.error);\n },\n onCancel: () => showModal('settingsModal', { onRefresh }),\n });\n };\n\n return (\n <BaseDangerZone\n drives={drives ?? []}\n onDeleteDrive={handleDeleteDrive}\n onClearStorage={handleClearStorage}\n />\n );\n};\n","import { DefaultEditor as BaseDefaultEditor } from '@powerhousedao/design-system';\nimport { type DocumentModelModule } from 'document-model';\nimport { useCallback, useState } from 'react';\n\nconst mapDocumentModelsToOptions = (documentModels: DocumentModelModule[]) =>\n documentModels.map(document => ({\n label: document.documentModel.name,\n value: document.documentModel.id,\n }));\n\nconst documentModelEditorOptions = [\n { label: 'V1', value: 'document-model-editor' },\n { label: 'V2', value: 'document-model-editor-v2' },\n] as const;\n\nexport const DefaultEditor: React.FC = () => {\n const [documentModelEditor, setDocumentModelEditor] = useState<\n (typeof documentModelEditorOptions)[number]\n >(documentModelEditorOptions[1]);\n\n const handleSetDocumentEditor = useCallback((value: string) => {\n const option = documentModelEditorOptions.find(dm => dm.value == value);\n if (option) {\n setDocumentModelEditor(option);\n }\n }, []);\n\n return (\n <BaseDefaultEditor\n documentModelEditor={documentModelEditor.value}\n setDocumentModelEditor={handleSetDocumentEditor}\n documentModelEditorOptions={\n documentModelEditorOptions as unknown as {\n value: string;\n label: string;\n }[]\n }\n />\n );\n};\n","export const PH_PACKAGES = [\n {\n packageName: \"@sky-ph/atlas\",\n version: \"latest\",\n provider: \"npm\",\n url: \"https://www.npmjs.com/package/@sky-ph/atlas\",\n },\n];\n//# sourceMappingURL=packages.js.map","import { addExternalPackage, removeExternalPackage } from '#services';\nimport { PH_PACKAGES } from '@powerhousedao/config/packages';\nimport { PackageManager as BasePackageManager } from '@powerhousedao/design-system';\nimport {\n makeVetraPackageManifest,\n useDrives,\n useVetraPackages,\n} from '@powerhousedao/reactor-browser';\nimport { type Manifest } from 'document-model';\nimport type React from 'react';\nimport { useCallback, useEffect, useMemo, useState } from 'react';\n\nconst LOCAL_REACTOR_VALUE = 'local-reactor';\nconst LOCAL_REACTOR_LABEL = 'Local Reactor';\n\nfunction manifestToDetails(\n manifest: Manifest | undefined,\n id: string,\n removable: boolean,\n) {\n if (!manifest) {\n return undefined;\n }\n\n const documentModels =\n manifest.documentModels?.map(dm => `Document Model: ${dm.name}`) ?? [];\n const editors =\n manifest.editors?.map(editor => `Editor: ${editor.name}`) ?? [];\n const apps = manifest.apps?.map(app => `App: ${app.name}`) ?? [];\n return {\n id,\n ...manifest,\n publisher: manifest.publisher.name,\n publisherUrl: manifest.publisher.url,\n modules: documentModels.concat(editors).concat(apps),\n removable,\n };\n}\n\nexport interface SettingsModalProps {\n open: boolean;\n onClose: () => void;\n onRefresh: () => void;\n}\n\nexport const PackageManager: React.FC = () => {\n const vetraPackages = useVetraPackages();\n const drives = useDrives();\n const [reactor, setReactor] = useState('');\n\n const options = useMemo(() => {\n return drives?.reduce<\n { value: string; label: string; disabled: boolean }[]\n >(\n (acc, drive) => {\n const trigger = drive.state.local.triggers.find(\n trigger => trigger.data?.url,\n );\n if (!trigger?.data?.url) {\n return acc;\n }\n\n const value = trigger.data.url;\n const label = drive.state.global.name;\n\n acc.push({\n value,\n label,\n disabled: true,\n });\n return acc;\n },\n [\n {\n value: LOCAL_REACTOR_VALUE,\n label: LOCAL_REACTOR_LABEL,\n disabled: false,\n },\n ],\n );\n }, [drives]);\n\n useEffect(() => {\n setReactor(reactor => {\n const defaultOption = options?.find(option => !option.disabled);\n if (reactor && options?.find(option => option.value === reactor)) {\n return reactor;\n } else {\n return defaultOption?.value ?? '';\n }\n });\n }, [reactor, options]);\n\n const packagesInfo = vetraPackages?.map(pkg =>\n makeVetraPackageManifest(pkg),\n );\n\n const handleReactorChange = useCallback(\n (reactor?: string) => setReactor(reactor ?? ''),\n [],\n );\n const handleInstall = useCallback(\n (packageName: string) => {\n if (reactor !== LOCAL_REACTOR_VALUE) {\n throw new Error(\n 'Cannot install external package on a remote reactor',\n );\n }\n return addExternalPackage(packageName);\n },\n [reactor],\n );\n\n const handleUninstall = useCallback(\n (packageName: string) => {\n if (reactor !== LOCAL_REACTOR_VALUE) {\n throw new Error(\n 'Cannot delete external package on a remote reactor',\n );\n }\n return removeExternalPackage(packageName);\n },\n [reactor],\n );\n\n return (\n <BasePackageManager\n mutable={true}\n reactorOptions={options ?? []}\n reactor={reactor}\n packages={\n packagesInfo?.map(pkg => ({\n id: pkg.id,\n name: pkg.name,\n description: pkg.description,\n category: pkg.category,\n publisher: pkg.author.name,\n publisherUrl: pkg.author.website ?? '',\n modules: Object.values(pkg.modules).flatMap(modules =>\n modules.map(module => module.name),\n ),\n removable: true,\n })) ?? []\n }\n onReactorChange={handleReactorChange}\n onInstall={handleInstall}\n onUninstall={handleUninstall}\n packageOptions={PH_PACKAGES}\n />\n );\n};\n","import {\n Icon,\n SettingsModal as SettingsModalV2,\n} from '@powerhousedao/design-system';\nimport { t } from 'i18next';\nimport type React from 'react';\nimport { useCallback, useMemo } from 'react';\nimport { About } from './settings/about.js';\nimport { DangerZone } from './settings/danger-zone.js';\nimport { DefaultEditor } from './settings/default-editor.js';\nimport { PackageManager } from './settings/package-manager.js';\n\nexport interface SettingsModalProps {\n open: boolean;\n onClose: () => void;\n onRefresh: () => void;\n}\n\nexport const SettingsModal: React.FC<SettingsModalProps> = props => {\n const { open, onClose, onRefresh } = props;\n\n const tabs = useMemo(\n () => [\n {\n id: 'package-manager',\n icon: <Icon name=\"PackageManager\" size={12} />,\n label: 'Package Manager',\n content: PackageManager,\n },\n {\n id: 'default-editors',\n icon: <Icon name=\"Edit\" size={12} />,\n label: 'Default Editors',\n content: DefaultEditor,\n },\n {\n id: 'danger-zone',\n icon: <Icon name=\"Danger\" size={12} className=\"text-red-900\" />,\n label: <span className=\"text-red-900\">Danger Zone</span>,\n content: () => <DangerZone onRefresh={onRefresh} />,\n },\n {\n id: 'about',\n icon: <Icon name=\"QuestionSquare\" size={12} />,\n label: 'About',\n content: About,\n },\n ],\n [onRefresh],\n );\n\n const handleOpenChange = useCallback(\n (status: boolean) => {\n if (!status) return onClose();\n },\n [onClose],\n );\n\n return (\n <SettingsModalV2\n open={open}\n title={t('modals.connectSettings.title')}\n onOpenChange={handleOpenChange}\n tabs={tabs}\n />\n );\n};\n"],"names":["TooltipContent","React","children","className","props","ref","_jsx","Content","cn","Tooltip","content","triggerAsChild","delayDuration","open","defaultOpen","onOpenChange","rest","_jsxs","Root","Trigger","Portal","FormLabel","required","disabled","description","hasError","inline","htmlLabelProps","classes","extraProps","TooltipProvider","Icon","defaultElement","FormMessage","type","as","Component","FormMessageList","messages","typeClasses","message","deepEqual","a","b","visited","value","index","aKeys","bKeys","key","sharedValueTransformers","ifParam","buttonVariants","cva","Button","variant","asChild","Slot","U","Y","H","J","p","u","$","k","m","B","K","X","G","_","C","h","P","A","f","O","T","L","c","S","E","N","R","M","D","W","be","le","ce","Z","Re","r","o","n","ae","ue","t","de","ee","fe","me","e","d","pe","x","ge","j","q","I","v","ke","ne","s","i","l","g","y","z","te","V","F","Q","re","we","De","oe","ie","se","Te","he","ve","Ee","ye","Se","Ce","xe","w.Root","w.Portal","w.Overlay","w.Content","Ie","Pe","_e","Me","Command","CommandPrimitive","CommandInput","wrapperClassName","CommandList","CommandLoading","CommandEmpty","CommandGroup","CommandItem","withFieldValidation","options","name","showErrorOnBlur","showErrorOnChange","customValidators","onChangeProp","onBlurProp","control","formErrors","trigger","setValue","useFormContext","submitCount","useFormState","errors","_a","useEffect","initialized","setInitialized","useState","Controller","onBlurController","internalValue","onBlurCallback","useCallback","event","onChangeCallback","formFieldRef","element","error","validator","FormDescription","FormGroup","renderIcon","IconComponent","CommandItemList","selectedValues","multiple","selectionIcon","selectionIconPosition","hasAnyIcon","toggleOption","tabIndex","_Fragment","opt","isSelected","searchable","commandListRef","toggleAll","favoriteOptions","enabledOptions","cmdkSearch","useCommandState","state","SelectedContent","placeholder","handleClear","option","useSelectField","defaultValue","onChange","isInternalChange","useRef","isPopoverOpen","setIsPopoverOpen","setSelectedValues","initialValue","newValue","handleOpenChange","optionValue","newValues","prevMultiple","SelectFieldRaw","onBlur","propId","label","warnings","contentClassName","contentAlign","prefix","useId","id","onTriggerBlur","Popover","PopoverTrigger","PopoverContent","SelectField","inputBaseStyles","Input","setNativeValue","valueSetter","prototype","prototypeValueSetter","_b","_applyTransformers","transformers","filter","transformer","ValueTransformer","formContext","transformedValue","target","changeEvent","IdAutocompleteInputContainer","isLoading","haveFetchError","onClick","selectedOption","optionsLength","onKeyDown","onMouseDown","maxLength","handlePaste","onPaste","hasCopied","setHasCopied","hasHover","useMediaQuery","useMemo","input","isOptionsRelatedKey","IconRenderer","customIcon","asPlaceholder","ReloadButton","isLoadingSelectedOption","handleFetchSelectedOption","isFetchSelectedOptionSync","IdAutocompleteListOption","icon","title","path","showValue","placeholderIcon","renderWithValue","renderWithValueTitleAndDescription","showDescription","IdAutocompleteList","selectedValue","renderOption","previewPlaceholder","defaultOption","IdAutocompleteContext","createContext","useIdAutocompleteContext","useContext","useIdAutocomplete","autoComplete","isOpenByDefault","initialOptions","fetchOptions","fetchSelectedOption","context","shouldFetchOptions","setOptions","setIsLoading","setIsLoadingSelectedOption","setHaveFetchError","setSelectedValue","setSelectedOption","commandValue","setCommandValue","setIsFetchSelectedOptionSync","clear","debouncedFetchOptions","useDebounceCallback","result","newOptions","matchingOption","isPromise","prevOptions","optionIndex","handleChange","handleCommandValue","clipboardData","trimmedValue","start","end","currentValue","newPosition","IdAutocomplete","idProp","fetchOptionsCallback","fetchSelectedOptionCallback","inputRef","mergedRef","node","hasWarning","handleOptionSelection","asCard","PopoverAnchor","REQUIRED_DEPENDENCIES","PackageJsonSchema","object","string","record","data","allDependencies","missingDeps","dep","verifyPackageJsonFields","packageJson","parsed","DependencyVersions","isOpen","setIsOpen","phCliVersion","validatedData","Disclosure","About","DangerZone","ModifyDrives","LocalStorage","DriveList","drive","Drive","onDeleteDrive","isDropdownMenuOpen","setIsDropdownMenuOpen","localDriveIcon","cloudDriveIcon","publicDriveIcon","getNodeIcon","sharingType","getDriveSharingType","PUBLIC","CLOUD","capitalCase","ConnectDropdownMenu","onClearStorage","DefaultEditor","twMerge","DefaultEditorSelect","documentModelEditor","setDocumentModelEditor","documentModelEditorOptions","ProviderIconMap","PackageItem","packageName","provider","PackageManagerInput","onInstall","packageOptions","loading","setLoading","setError","handleSubmit","errorMessage","autoCompleteOptions","userInput","PackageDetail","PackageManagerListItem","category","publisher","publisherUrl","modules","removable","mutable","onUninstall","module","optionId","PackageManagerList","packages","handleUninstall","pkg","PackageManagerReactorSelect","reactorOptions","reactor","onReactorChange","PackageManager","packageOptionsSet","SettingsModal","overlayProps","contentProps","tabs","defaultTab","restProps","selectedTab","setSelectedTab","tabsContent","tab","SelectedTabComponent","Modal","jsx","BaseAbout","connectConfig","onRefresh","useTranslation","drives","useDrives","showModal","useModal","BaseDangerZone","deleteDrive","setSelectedDrive","clearReactorStorage","setSelectedNode","logger","handleSetDocumentEditor","dm","BaseDefaultEditor","PH_PACKAGES","LOCAL_REACTOR_VALUE","LOCAL_REACTOR_LABEL","vetraPackages","useVetraPackages","setReactor","acc","packagesInfo","makeVetraPackageManifest","handleReactorChange","handleInstall","addExternalPackage","removeExternalPackage","BasePackageManager","onClose","status","SettingsModalV2"],"mappings":"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","x_google_ignoreList":[7,8]}
@@ -1,2 +0,0 @@
1
- import{jsx as n,jsxs as m}from"react/jsx-runtime";import{y as c,Y as u}from"./main.DaFo88Bw.js";import{M as x}from"./modal.oz3Jhm_k.js";import"react-dom/client";import"react";import"react-dom";import"./index.B0KswTVc.js";const p="min-h-[48px] min-w-[142px] text-base font-semibold py-3 px-6 rounded-xl outline-none active:opacity-75 hover:scale-105 transform transition-all";function g(l){const{body:s,header:t,onOpenChange:e,onContinue:o,cancelLabel:d,continueLabel:i,overlayProps:a,contentProps:r,...b}=l;return n(x,{contentProps:{...r,className:c("rounded-3xl",r==null?void 0:r.className)},onOpenChange:e,overlayProps:{...a,className:a==null?void 0:a.className},...b,children:m("div",{className:"w-[400px] p-6 text-slate-300",children:[n("div",{className:"border-b border-slate-50 pb-2 text-2xl font-bold text-gray-800",children:t}),n("div",{className:"my-6 rounded-md bg-slate-50 p-4 text-center",children:s}),m("div",{className:"mt-8 flex justify-between gap-3",children:[n("button",{className:c(p,"flex-1 bg-slate-50 text-slate-800"),onClick:()=>e==null?void 0:e(!1),children:d}),n("button",{className:c(p,"flex-1 bg-gray-800 text-gray-50"),onClick:o,children:i})]})]})})}const w=l=>{const{open:s,onClose:t,driveId:e}=l,{t:o}=u();return n(g,{open:s,onContinue:()=>{console.log("Upgrade drive: ",e),t()},header:o("modals.upgradeDrive.header"),body:o("modals.upgradeDrive.body"),cancelLabel:o("common.cancel"),continueLabel:o("common.continue"),onOpenChange:i=>{if(!i)return t()}})};export{w as UpgradeDriveModal};
2
- //# sourceMappingURL=UpgradeDriveModal.Bp1cbwzD.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UpgradeDriveModal.Bp1cbwzD.js","sources":["../../../../packages/design-system/dist/src/connect/components/modal/upgrade-drive-modal.js","../../src/components/modal/modals/UpgradeDriveModal.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Modal } from \"#powerhouse\";\nimport { twMerge } from \"tailwind-merge\";\nconst buttonStyles = \"min-h-[48px] min-w-[142px] text-base font-semibold py-3 px-6 rounded-xl outline-none active:opacity-75 hover:scale-105 transform transition-all\";\nexport function ConnectUpgradeDriveModal(props) {\n const { body, header, onOpenChange, onContinue, cancelLabel, continueLabel, overlayProps, contentProps, ...restProps } = props;\n return (_jsx(Modal, { contentProps: {\n ...contentProps,\n className: twMerge(\"rounded-3xl\", contentProps?.className),\n }, onOpenChange: onOpenChange, overlayProps: {\n ...overlayProps,\n className: overlayProps?.className,\n }, ...restProps, children: _jsxs(\"div\", { className: \"w-[400px] p-6 text-slate-300\", children: [_jsx(\"div\", { className: \"border-b border-slate-50 pb-2 text-2xl font-bold text-gray-800\", children: header }), _jsx(\"div\", { className: \"my-6 rounded-md bg-slate-50 p-4 text-center\", children: body }), _jsxs(\"div\", { className: \"mt-8 flex justify-between gap-3\", children: [_jsx(\"button\", { className: twMerge(buttonStyles, \"flex-1 bg-slate-50 text-slate-800\"), onClick: () => onOpenChange?.(false), children: cancelLabel }), _jsx(\"button\", { className: twMerge(buttonStyles, \"flex-1 bg-gray-800 text-gray-50\"), onClick: onContinue, children: continueLabel })] })] }) }));\n}\n//# sourceMappingURL=upgrade-drive-modal.js.map","import { ConnectUpgradeDriveModal } from '@powerhousedao/design-system';\nimport type React from 'react';\nimport { useTranslation } from 'react-i18next';\n\nexport interface UpgradeDriveModalProps {\n open: boolean;\n onClose: () => void;\n driveId: string;\n}\n\nexport const UpgradeDriveModal: React.FC<UpgradeDriveModalProps> = props => {\n const { open, onClose, driveId } = props;\n\n const { t } = useTranslation();\n\n const onContinue = () => {\n // TODO: Implement upgrade drive\n console.log('Upgrade drive: ', driveId);\n onClose();\n };\n\n return (\n <ConnectUpgradeDriveModal\n open={open}\n onContinue={onContinue}\n header={t('modals.upgradeDrive.header')}\n body={t('modals.upgradeDrive.body')}\n cancelLabel={t('common.cancel')}\n continueLabel={t('common.continue')}\n onOpenChange={(status: boolean) => {\n if (!status) return onClose();\n }}\n />\n );\n};\n"],"names":["buttonStyles","ConnectUpgradeDriveModal","props","body","header","onOpenChange","onContinue","cancelLabel","continueLabel","overlayProps","contentProps","restProps","_jsx","Modal","twMerge","_jsxs","UpgradeDriveModal","open","onClose","driveId","t","useTranslation","jsx","status"],"mappings":"6NAGA,MAAMA,EAAe,kJACd,SAASC,EAAyBC,EAAO,CAC5C,KAAM,CAAE,KAAAC,EAAM,OAAAC,EAAQ,aAAAC,EAAc,WAAAC,EAAY,YAAAC,EAAa,cAAAC,EAAe,aAAAC,EAAc,aAAAC,EAAc,GAAGC,CAAS,EAAKT,EACzH,OAAQU,EAAKC,EAAO,CAAE,aAAc,CAC5B,GAAGH,EACH,UAAWI,EAAQ,cAAeJ,GAAA,YAAAA,EAAc,SAAS,CACrE,EAAW,aAAcL,EAAc,aAAc,CACzC,GAAGI,EACH,UAAWA,GAAA,YAAAA,EAAc,SACrC,EAAW,GAAGE,EAAW,SAAUI,EAAM,MAAO,CAAE,UAAW,+BAAgC,SAAU,CAACH,EAAK,MAAO,CAAE,UAAW,iEAAkE,SAAUR,CAAM,CAAE,EAAGQ,EAAK,MAAO,CAAE,UAAW,8CAA+C,SAAUT,CAAI,CAAE,EAAGY,EAAM,MAAO,CAAE,UAAW,kCAAmC,SAAU,CAACH,EAAK,SAAU,CAAE,UAAWE,EAAQd,EAAc,mCAAmC,EAAG,QAAS,IAAMK,GAAA,YAAAA,EAAe,IAAQ,SAAUE,CAAW,CAAE,EAAGK,EAAK,SAAU,CAAE,UAAWE,EAAQd,EAAc,iCAAiC,EAAG,QAASM,EAAY,SAAUE,CAAa,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,CAAC,CAAE,CAClqB,CCHO,MAAMQ,EAAsDd,GAAS,CACxE,KAAM,CAAE,KAAAe,EAAM,QAAAC,EAAS,QAAAC,CAAA,EAAYjB,EAE7B,CAAE,EAAAkB,CAAA,EAAMC,EAAA,EAQd,OACIC,EAACrB,EAAA,CACG,KAAAgB,EACA,WATW,IAAM,CAErB,QAAQ,IAAI,kBAAmBE,CAAO,EACtCD,EAAA,CACJ,EAMQ,OAAQE,EAAE,4BAA4B,EACtC,KAAMA,EAAE,0BAA0B,EAClC,YAAaA,EAAE,eAAe,EAC9B,cAAeA,EAAE,iBAAiB,EAClC,aAAeG,GAAoB,CAC/B,GAAI,CAACA,EAAQ,OAAOL,EAAA,CACxB,CAAA,CAAA,CAGZ"}
@@ -1,2 +0,0 @@
1
- import{jsx as e,jsxs as i}from"react/jsx-runtime";import{u as s,C as p}from"./index.esm.B0PnDknv.js";import{L as d}from"./drives.CnLEcvUe.js";import{L as l,S as c}from"./sharing-type-form-input.CUG75fNB.js";import{F as u}from"./form-input.CKWaNWHS.js";import{S as f}from"./select.DJuJpI3A.js";import{a6 as h,V as v}from"./main.DaFo88Bw.js";import{A as g}from"./toggle.8B3GpI90.js";function D(r){var t;const{register:a,handleSubmit:n,control:o,formState:{errors:m}}=s({defaultValues:{name:"",sharingType:d,availableOffline:!1,appId:r.appOptions[0].id}});return e("form",{onSubmit:n(r.onSubmit),className:"flex flex-col gap-4",children:i("div",{className:"flex flex-col gap-4",children:[i("div",{children:[e(l,{htmlFor:"driveName",className:"text-sm font-medium text-gray-800",children:"Drive Name"}),e(u,{...a("name",{required:"Drive name is required"}),errorMessage:(t=m.name)==null?void 0:t.message,placeholder:"Drive name"})]}),i("div",{children:[e(l,{htmlFor:"driveApp",className:"text-sm font-medium text-gray-800",children:"Drive App"}),e(b,{control:o,appOptions:r.appOptions})]}),i("div",{children:[e(l,{htmlFor:"sharingType",className:"text-sm font-medium text-gray-800",children:"Location"}),e(c,{control:o})]}),e("div",{children:e(g,{...a("availableOffline")})}),e(h,{className:"mt-2 w-full",type:"submit",children:"Create new drive"})]})})}function x(r){return{value:r.id,displayValue:r.name,icon:e(v,{name:"PowerhouseLogoSmall"}),description:"Built by Powerhouse"}}function b(r){const{control:a,appOptions:n,...o}=r,m=n.map(x);return e(p,{control:a,name:"appId",render:({field:t})=>e(f,{...o,...t,id:"appId",items:m})})}export{D as A};
2
- //# sourceMappingURL=app-form-input.DrsD0P0g.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"app-form-input.DrsD0P0g.js","sources":["../../../../packages/design-system/dist/src/connect/components/form/add-local-drive-form.js","../../../../packages/design-system/dist/src/connect/components/form/inputs/app-form-input.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { AppFormInput, AvailableOfflineToggle, FormInput, Label, LOCAL, SharingTypeFormInput, } from \"#connect\";\nimport { Button } from \"#powerhouse\";\nimport { useForm } from \"react-hook-form\";\nexport function AddLocalDriveForm(props) {\n const { register, handleSubmit, control, formState: { errors }, } = useForm({\n defaultValues: {\n name: \"\",\n sharingType: LOCAL,\n availableOffline: false,\n appId: props.appOptions[0].id,\n },\n });\n return (_jsx(\"form\", { onSubmit: handleSubmit(props.onSubmit), className: \"flex flex-col gap-4\", children: _jsxs(\"div\", { className: \"flex flex-col gap-4\", children: [_jsxs(\"div\", { children: [_jsx(Label, { htmlFor: \"driveName\", className: \"text-sm font-medium text-gray-800\", children: \"Drive Name\" }), _jsx(FormInput, { ...register(\"name\", {\n required: \"Drive name is required\",\n }), errorMessage: errors.name?.message, placeholder: \"Drive name\" })] }), _jsxs(\"div\", { children: [_jsx(Label, { htmlFor: \"driveApp\", className: \"text-sm font-medium text-gray-800\", children: \"Drive App\" }), _jsx(AppFormInput, { control: control, appOptions: props.appOptions })] }), _jsxs(\"div\", { children: [_jsx(Label, { htmlFor: \"sharingType\", className: \"text-sm font-medium text-gray-800\", children: \"Location\" }), _jsx(SharingTypeFormInput, { control: control })] }), _jsx(\"div\", { children: _jsx(AvailableOfflineToggle, { ...register(\"availableOffline\") }) }), _jsx(Button, { className: \"mt-2 w-full\", type: \"submit\", children: \"Create new drive\" })] }) }));\n}\n//# sourceMappingURL=add-local-drive-form.js.map","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Select } from \"#connect\";\nimport { Icon } from \"#powerhouse\";\nimport { Controller } from \"react-hook-form\";\nexport function appToInputOption(app) {\n return {\n value: app.id,\n displayValue: app.name,\n icon: _jsx(Icon, { name: \"PowerhouseLogoSmall\" }),\n description: \"Built by Powerhouse\",\n };\n}\nexport function AppFormInput(props) {\n const { control, appOptions, ...delegatedProps } = props;\n const items = appOptions.map(appToInputOption);\n return (_jsx(Controller, { control: control, name: \"appId\", render: ({ field }) => (_jsx(Select, { ...delegatedProps, ...field, id: \"appId\", items: items })) }));\n}\n//# sourceMappingURL=app-form-input.js.map"],"names":["AddLocalDriveForm","props","register","handleSubmit","control","errors","useForm","LOCAL","_jsx","_jsxs","Label","FormInput","_a","AppFormInput","SharingTypeFormInput","AvailableOfflineToggle","Button","appToInputOption","app","Icon","appOptions","delegatedProps","items","Controller","field","Select"],"mappings":"6XAIO,SAASA,EAAkBC,EAAO,OACrC,KAAM,CAAE,SAAAC,EAAU,aAAAC,EAAc,QAAAC,EAAS,UAAW,CAAE,OAAAC,CAAM,CAAE,EAAMC,EAAQ,CACxE,cAAe,CACX,KAAM,GACN,YAAaC,EACb,iBAAkB,GAClB,MAAON,EAAM,WAAW,CAAC,EAAE,EACvC,CACA,CAAK,EACD,OAAQO,EAAK,OAAQ,CAAE,SAAUL,EAAaF,EAAM,QAAQ,EAAG,UAAW,sBAAuB,SAAUQ,EAAM,MAAO,CAAE,UAAW,sBAAuB,SAAU,CAACA,EAAM,MAAO,CAAE,SAAU,CAACD,EAAKE,EAAO,CAAE,QAAS,YAAa,UAAW,oCAAqC,SAAU,YAAY,CAAE,EAAGF,EAAKG,EAAW,CAAE,GAAGT,EAAS,OAAQ,CAC1T,SAAU,wBAC1C,CAA6B,EAAG,cAAcU,EAAAP,EAAO,OAAP,YAAAO,EAAa,QAAS,YAAa,YAAY,CAAE,CAAC,CAAC,CAAE,EAAGH,EAAM,MAAO,CAAE,SAAU,CAACD,EAAKE,EAAO,CAAE,QAAS,WAAY,UAAW,oCAAqC,SAAU,WAAW,CAAE,EAAGF,EAAKK,EAAc,CAAE,QAAST,EAAS,WAAYH,EAAM,UAAU,CAAE,CAAC,CAAC,CAAE,EAAGQ,EAAM,MAAO,CAAE,SAAU,CAACD,EAAKE,EAAO,CAAE,QAAS,cAAe,UAAW,oCAAqC,SAAU,UAAU,CAAE,EAAGF,EAAKM,EAAsB,CAAE,QAASV,EAAS,CAAC,CAAC,CAAE,EAAGI,EAAK,MAAO,CAAE,SAAUA,EAAKO,EAAwB,CAAE,GAAGb,EAAS,kBAAkB,CAAC,CAAE,CAAC,CAAE,EAAGM,EAAKQ,EAAQ,CAAE,UAAW,cAAe,KAAM,SAAU,SAAU,mBAAoB,CAAC,CAAC,CAAE,EAAG,CACprB,CCZO,SAASC,EAAiBC,EAAK,CAClC,MAAO,CACH,MAAOA,EAAI,GACX,aAAcA,EAAI,KAClB,KAAMV,EAAKW,EAAM,CAAE,KAAM,qBAAqB,CAAE,EAChD,YAAa,qBACrB,CACA,CACO,SAASN,EAAaZ,EAAO,CAChC,KAAM,CAAE,QAAAG,EAAS,WAAAgB,EAAY,GAAGC,CAAc,EAAKpB,EAC7CqB,EAAQF,EAAW,IAAIH,CAAgB,EAC7C,OAAQT,EAAKe,EAAY,CAAE,QAASnB,EAAS,KAAM,QAAS,OAAQ,CAAC,CAAE,MAAAoB,CAAK,IAAQhB,EAAKiB,EAAQ,CAAE,GAAGJ,EAAgB,GAAGG,EAAO,GAAI,QAAS,MAAOF,EAAO,EAAI,CACnK"}
@@ -1,6 +0,0 @@
1
- import{jsx as o,jsxs as g,Fragment as b}from"react/jsx-runtime";import*as t from"react";import{useSyncExternalStore as A,useRef as k,useState as h,useEffect as C,useCallback as L,useMemo as F}from"react";import{aW as I,aX as U,aO as R,aY as S,a6 as N,aZ as D,a_ as M,a$ as T}from"./main.DaFo88Bw.js";import{a as w}from"./drive.Bwke9qtc.js";import"react-dom/client";import"react-dom";import"./user.7iHZB6Al.js";import"./queue.CnIzwthA.js";function O(){return A(I,()=>window.reactor)}const Z=e=>t.createElement("svg",{width:28,height:32,viewBox:"0 0 28 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},t.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0.05092 23.7286L0.000163347 23.9993L0 23.9995L0.207853 24.067L27.6823 24.067L27.9995 23.9995L27.9161 23.6913L14.2182 0.209032L13.9998 0L13.749 0.246353L0.05092 23.7286ZM20.9994 11.9999L7.0003 11.9999L13.9998 23.999L20.9994 11.9999Z",fill:"url(#paint0_radial_319_20865)"}),t.createElement("path",{d:"M14 0L0 23.9998V7.99993L14 0Z",fill:"url(#paint1_linear_319_20865)"}),t.createElement("path",{d:"M28 24L7.82013e-05 24L14 31.9999L28 24Z",fill:"url(#paint2_linear_319_20865)"}),t.createElement("path",{d:"M14 0L28 23.9998V7.99993L14 0Z",fill:"url(#paint3_linear_319_20865)"}),t.createElement("defs",null,t.createElement("radialGradient",{id:"paint0_radial_319_20865",cx:0,cy:0,r:1,gradientUnits:"userSpaceOnUse",gradientTransform:"translate(13.9994 16.0344) rotate(-89.9988) scale(16.0344 16.201)"},t.createElement("stop",{offset:.181008,stopColor:"#FFCD6B"}),t.createElement("stop",{offset:1,stopColor:"#EB5EDF"})),t.createElement("linearGradient",{id:"paint1_linear_319_20865",x1:-.031454,y1:24.041,x2:13.801,y2:-.142908,gradientUnits:"userSpaceOnUse"},t.createElement("stop",{stopColor:"#4331E9"}),t.createElement("stop",{offset:1,stopColor:"#A273FF"})),t.createElement("linearGradient",{id:"paint2_linear_319_20865",x1:-.0310093,y1:24,x2:28.0444,y2:24,gradientUnits:"userSpaceOnUse"},t.createElement("stop",{stopColor:"#A273FF"}),t.createElement("stop",{offset:1,stopColor:"#4331E9"})),t.createElement("linearGradient",{id:"paint3_linear_319_20865",x1:28.0315,y1:24.041,x2:14.199,y2:-.142908,gradientUnits:"userSpaceOnUse"},t.createElement("stop",{stopColor:"#A273FF"}),t.createElement("stop",{offset:1,stopColor:"#4331E9"})))),$=e=>t.createElement("svg",{width:16,height:16,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},t.createElement("path",{d:"M15.6867 8.03333C15.4933 7.83999 15.1733 7.83999 14.98 8.03333L14.6733 8.34001V8C14.6733 4.32 11.68 1.32666 7.99999 1.32666C5.96666 1.32666 4.06666 2.23999 2.79333 3.82666C2.61999 4.03999 2.65332 4.35999 2.87332 4.52665C3.08666 4.69999 3.40666 4.66666 3.57332 4.44666C4.65999 3.09332 6.27332 2.31999 7.99999 2.31999C11.1267 2.31999 13.6733 4.86666 13.6733 7.99333V8.32666L13.3667 8.02002C13.1733 7.82669 12.8533 7.82669 12.66 8.02002C12.4667 8.21335 12.4667 8.53335 12.66 8.72668L13.82 9.88668C13.8667 9.93334 13.92 9.96666 13.98 9.99333C14.04 10.02 14.1067 10.0333 14.1733 10.0333C14.24 10.0333 14.3 10.02 14.3667 9.99333C14.4267 9.96666 14.48 9.93334 14.5267 9.88668L15.6867 8.72668C15.88 8.54668 15.88 8.22666 15.6867 8.03333Z",fill:"#6C7275"}),t.createElement("path",{d:"M13.1267 11.4666C12.9133 11.2933 12.5933 11.3266 12.4267 11.5466C11.34 12.9 9.72665 13.6733 7.99998 13.6733C4.87332 13.6733 2.32665 11.1266 2.32665 7.99996V7.66663L2.63332 7.97331C2.73332 8.07331 2.85999 8.11996 2.98665 8.11996C3.11332 8.11996 3.23999 8.07331 3.33999 7.97331C3.53332 7.77998 3.53332 7.45998 3.33999 7.26664L2.17998 6.10661C2.13332 6.05994 2.07998 6.02663 2.01998 5.99996C1.89998 5.94663 1.75998 5.94663 1.63998 5.99996C1.57998 6.02663 1.52665 6.05994 1.47999 6.10661L0.319988 7.26664C0.126654 7.45998 0.126654 7.77998 0.319988 7.97331C0.513321 8.16664 0.833319 8.16664 1.02665 7.97331L1.33332 7.66663V7.99996C1.33332 11.68 4.32665 14.6733 8.00665 14.6733C10.04 14.6733 11.94 13.76 13.2133 12.1733C13.38 11.96 13.3467 11.64 13.1267 11.4666Z",fill:"#6C7275"})),P="https://apps.powerhouse.io/sky-atlas/staging/switchboard",B=2e3;function V(){const{search:e}=D();return F(()=>{const a=new URLSearchParams(e).get("reactorUrl")??P;return a.endsWith("/")?a:`${a}/`},[e])}async function G(e,s){const a=M`
2
- mutation ForkAtlas($docId: PHID) {
3
- ForkAtlas(docId: $docId)
4
- }
5
- `;return await T(`${s}graphql`,a,{docId:e})}function K(){const e=k("initial"),s=O(),{documentId:a}=U(),l=V(),c=R(),[n,x]=h(void 0),[d,m]=h(void 0),[u,E]=h(!0),p=e.current==="error";C(()=>{d&&(console.error("Error forking Atlas:",d),S("Error forking Atlas",{type:"error"}))},[d]);async function v(r){const i=(await G(r,l)).ForkAtlas;e.current="forked",x(i)}const y=L(()=>{n&&!u&&c(`/d/${n}`,{replace:!0})},[n,c,u]),_=L(async r=>{console.log("Adding remote drive:",r);const f=`${l}d/${r}`;try{const i=await w(f,{sharingType:"PUBLIC",availableOffline:!0,listeners:[{block:!0,callInfo:{data:f,name:"switchboard-push",transmitterType:"SwitchboardPush"},filter:{branch:["main"],documentId:["*"],documentType:["*"],scope:["global"]},label:"Switchboard Sync",listenerId:"1",system:!0}],triggers:[]});e.current="done",console.log("Added remote drive:",i),setTimeout(()=>{E(!1)},B)}catch(i){e.current="error",E(!1),m(i)}},[w,c,l]);return C(()=>{!a||e.current!=="initial"||(e.current="forking",v(a).catch(r=>{e.current="error",m(r)}))},[a,e]),C(()=>{!n||!s||e.current!=="forked"||(e.current="addingDrive",new Promise(r=>{setTimeout(r,500)}).then(()=>_(n)).catch(r=>{e.current="error",m(r)}))},[n,s,e]),o("div",{className:"bg-gray-50 size-full flex justify-center gap-x-4",children:g("div",{className:"bg-white rounded-2xl w-full max-w-[850px] drop-shadow-sm p-6",children:[o("h1",{className:"text-lg text-gray-900 font-medium",children:"Welcome to the Atlas Explorer"}),o("div",{className:"mt-4 bg-gray-50 border border-gray-200 rounded-xl p-6",children:g("div",{className:"bg-slate-50 rounded-2xl min-h-80 flex flex-col justify-center items-center",children:[o("div",{children:o(Z,{})}),p?o("div",{className:"text-sm text-gray-800 mt-3",children:"Error forking Atlas scope. Please try again."}):o("div",{className:"text-sm text-gray-500 mt-3",children:"Forking Atlas scope..."}),o(N,{onClick:p?window.location.reload.bind(window.location):y,size:"small",color:"light",className:"bg-white border border-gray-200 h-9 px-3 mt-4 text-gray-600",children:p?"Retry":u?g(b,{children:[o($,{className:"animate-spin"}),"Loading"]}):"Continue"})]})})]})})}export{K as AtlasImport};
6
- //# sourceMappingURL=atlas-import.S0zyqygI.js.map