@powerhousedao/connect 6.0.0-dev.53 → 6.0.0-dev.54

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 (226) hide show
  1. package/dist/assets/AddDriveModal-CUlc2LVq.js +2 -0
  2. package/dist/assets/AddDriveModal-CUlc2LVq.js.map +1 -0
  3. package/dist/assets/AnalyticsSubscriptionManager-B5G_L5RP.js +3 -0
  4. package/dist/assets/AnalyticsSubscriptionManager-B5G_L5RP.js.map +1 -0
  5. package/dist/assets/ClearStorageModal-xiZInXK_.js +2 -0
  6. package/dist/assets/ClearStorageModal-xiZInXK_.js.map +1 -0
  7. package/dist/assets/CookiesPolicyModal-DVXJp787.js +2 -0
  8. package/dist/assets/CookiesPolicyModal-DVXJp787.js.map +1 -0
  9. package/dist/assets/CreateDocumentModal-Cjpq1PBD.js +2 -0
  10. package/dist/assets/CreateDocumentModal-Cjpq1PBD.js.map +1 -0
  11. package/dist/assets/DebugSettingsModal-BvEPWw2E.js +7 -0
  12. package/dist/assets/DebugSettingsModal-BvEPWw2E.js.map +1 -0
  13. package/dist/assets/DeleteDriveModal-BEq8v3-E.js +2 -0
  14. package/dist/assets/DeleteDriveModal-BEq8v3-E.js.map +1 -0
  15. package/dist/assets/DeleteItemModal-B3ziER8J.js +2 -0
  16. package/dist/assets/DeleteItemModal-B3ziER8J.js.map +1 -0
  17. package/dist/assets/DisclaimerModal-CFnBcICu.js +2 -0
  18. package/dist/assets/DisclaimerModal-CFnBcICu.js.map +1 -0
  19. package/dist/assets/DriveSettingsModal-BOdnkWJn.js +2 -0
  20. package/dist/assets/DriveSettingsModal-BOdnkWJn.js.map +1 -0
  21. package/dist/assets/ExportDocumentWithErrorsModal--uHwELhU.js +2 -0
  22. package/dist/assets/ExportDocumentWithErrorsModal--uHwELhU.js.map +1 -0
  23. package/dist/assets/SettingsModal-BntFjuQb.js +2 -0
  24. package/dist/assets/SettingsModal-BntFjuQb.js.map +1 -0
  25. package/dist/assets/UpgradeDriveModal-DmbwNsbG.js +2 -0
  26. package/dist/assets/UpgradeDriveModal-DmbwNsbG.js.map +1 -0
  27. package/dist/assets/__vite-browser-external-D7Ct-6yo.js +2 -0
  28. package/dist/assets/__vite-browser-external-D7Ct-6yo.js.map +1 -0
  29. package/dist/assets/_virtual_ph_external-packages-CM1tCR4L.js +1 -0
  30. package/dist/assets/_virtual_ph_external-packages-CM1tCR4L.js.map +1 -0
  31. package/dist/assets/analytics-2CJbiDed.js +3 -0
  32. package/dist/assets/analytics-2CJbiDed.js.map +1 -0
  33. package/dist/assets/ccip-BEAjQRKG.js +2 -0
  34. package/dist/assets/ccip-BEAjQRKG.js.map +1 -0
  35. package/dist/assets/confirmation-modal-BOwR5ZQq.js +2 -0
  36. package/dist/assets/confirmation-modal-BOwR5ZQq.js.map +1 -0
  37. package/dist/assets/core-BmuZEe8D.js +2 -0
  38. package/dist/assets/core-BmuZEe8D.js.map +1 -0
  39. package/dist/assets/disclosure-BhnV_XS1.js +2 -0
  40. package/dist/assets/disclosure-BhnV_XS1.js.map +1 -0
  41. package/dist/assets/drive-by-id-DvdlB_kB.js +2 -0
  42. package/dist/assets/drive-by-id-DvdlB_kB.js.map +1 -0
  43. package/dist/assets/drives-DjHuIXXn.js +2 -0
  44. package/dist/assets/drives-DjHuIXXn.js.map +1 -0
  45. package/dist/assets/dropdown-menu-BzZBDp_E.js +2 -0
  46. package/dist/assets/dropdown-menu-BzZBDp_E.js.map +1 -0
  47. package/dist/assets/editor-DBekHIfI.js +2 -0
  48. package/dist/assets/editor-DBekHIfI.js.map +1 -0
  49. package/dist/assets/editor-DV2TvDV5.js +46 -0
  50. package/dist/assets/editor-DV2TvDV5.js.map +1 -0
  51. package/dist/assets/exports-CQVZRuji.js +3 -0
  52. package/dist/assets/exports-CQVZRuji.js.map +1 -0
  53. package/dist/assets/form-input-CPs_z-6y.js +2 -0
  54. package/dist/assets/form-input-CPs_z-6y.js.map +1 -0
  55. package/dist/assets/graphql-editor-CcDLLpoK.js +74 -0
  56. package/dist/assets/graphql-editor-CcDLLpoK.js.map +1 -0
  57. package/dist/assets/hmr-BfH10IPs.js +2 -0
  58. package/dist/assets/hmr-BfH10IPs.js.map +1 -0
  59. package/dist/assets/hmr-LMNkvzP7.js +1 -0
  60. package/dist/assets/hmr-LMNkvzP7.js.map +1 -0
  61. package/dist/assets/{hooks-53pCkdY-.js → hooks--iZen3H-.js} +13 -12
  62. package/dist/assets/hooks--iZen3H-.js.map +1 -0
  63. package/dist/assets/index-BDI8rK1R.js +2 -0
  64. package/dist/assets/index-BDI8rK1R.js.map +1 -0
  65. package/dist/assets/index-BWgPOeS2.js +500 -0
  66. package/dist/assets/index-BWgPOeS2.js.map +1 -0
  67. package/dist/assets/index-BeyYTlkr.js +2 -0
  68. package/dist/assets/index-BeyYTlkr.js.map +1 -0
  69. package/dist/assets/index-CUlo2oTb.js +199 -0
  70. package/dist/assets/index-CUlo2oTb.js.map +1 -0
  71. package/dist/assets/index-DN20Z-2K.js +222 -0
  72. package/dist/assets/index-DN20Z-2K.js.map +1 -0
  73. package/dist/assets/index-DPCEN2cB.js +2 -0
  74. package/dist/assets/index-DPCEN2cB.js.map +1 -0
  75. package/dist/assets/index-DcvFnjR9.css +1 -0
  76. package/dist/assets/index-RTtoSfzq.js +2 -0
  77. package/dist/assets/index-RTtoSfzq.js.map +1 -0
  78. package/dist/assets/index-WdPlK4TH.js +32 -0
  79. package/dist/assets/index-WdPlK4TH.js.map +1 -0
  80. package/dist/assets/index.esm-BeYGM8vk.js +2 -0
  81. package/dist/assets/index.esm-BeYGM8vk.js.map +1 -0
  82. package/dist/assets/index.modern-BKQ3hpRq.js +2 -0
  83. package/dist/assets/index.modern-BKQ3hpRq.js.map +1 -0
  84. package/dist/assets/json-editor-CfHUc1UK.js +2 -0
  85. package/dist/assets/json-editor-CfHUc1UK.js.map +1 -0
  86. package/dist/assets/load-D23NmM_n.js +4 -0
  87. package/dist/assets/load-D23NmM_n.js.map +1 -0
  88. package/dist/assets/location-info-N8RPWokW.js +2 -0
  89. package/dist/assets/location-info-N8RPWokW.js.map +1 -0
  90. package/dist/assets/message-list-0i5gk_8j.js +2 -0
  91. package/dist/assets/message-list-0i5gk_8j.js.map +1 -0
  92. package/dist/assets/migrator-CmQyl4ZK.js +78 -0
  93. package/dist/assets/migrator-CmQyl4ZK.js.map +1 -0
  94. package/dist/assets/node-input-DnUl9CxT.js +2 -0
  95. package/dist/assets/node-input-DnUl9CxT.js.map +1 -0
  96. package/dist/assets/nodefs-BP-sxN1O.js +2 -0
  97. package/dist/assets/nodefs-BP-sxN1O.js.map +1 -0
  98. package/dist/assets/nodefs-_NvywCGz.js +1 -0
  99. package/dist/assets/nodefs-_NvywCGz.js.map +1 -0
  100. package/dist/assets/opfs-ahp-DN9nZuJs.js +1 -0
  101. package/dist/assets/opfs-ahp-DN9nZuJs.js.map +1 -0
  102. package/dist/assets/opfs-ahp-DtmzPaVs.js +4 -0
  103. package/dist/assets/opfs-ahp-DtmzPaVs.js.map +1 -0
  104. package/dist/assets/options-CBc6-sTL.js +2 -0
  105. package/dist/assets/options-CBc6-sTL.js.map +1 -0
  106. package/dist/assets/pglite.db-B2bT8QML.js +133 -0
  107. package/dist/assets/pglite.db-B2bT8QML.js.map +1 -0
  108. package/dist/assets/pglite.worker-Ca6pWokV.js +1 -0
  109. package/dist/assets/pglite.worker-Ca6pWokV.js.map +1 -0
  110. package/dist/assets/processor-host-module-B89Dt9nZ.js +3 -0
  111. package/dist/assets/processor-host-module-B89Dt9nZ.js.map +1 -0
  112. package/dist/assets/queue-CxFgA-r3.js +2 -0
  113. package/dist/assets/queue-CxFgA-r3.js.map +1 -0
  114. package/dist/assets/reactor-7tK-WVaY.js +16 -0
  115. package/dist/assets/reactor-7tK-WVaY.js.map +1 -0
  116. package/dist/assets/reactor-Bsjwm88i.js +193 -0
  117. package/dist/assets/reactor-Bsjwm88i.js.map +1 -0
  118. package/dist/assets/reactor-CRqBKYEo.css +1 -0
  119. package/dist/assets/read-required-modal-BKEkfucI.js +2 -0
  120. package/dist/assets/read-required-modal-BKEkfucI.js.map +1 -0
  121. package/dist/assets/renown-CgfQ6oBU.js +2 -0
  122. package/dist/assets/renown-CgfQ6oBU.js.map +1 -0
  123. package/dist/assets/state-schemas-DK8TnzfC.js +3 -0
  124. package/dist/assets/state-schemas-DK8TnzfC.js.map +1 -0
  125. package/dist/assets/tabs-DY_DEdtI.js +2 -0
  126. package/dist/assets/tabs-DY_DEdtI.js.map +1 -0
  127. package/dist/assets/use-get-switchboard-link-B47eB8lt.js +12 -0
  128. package/dist/assets/use-get-switchboard-link-B47eB8lt.js.map +1 -0
  129. package/dist/assets/user-permissions-BJ8c2UOP.js +2 -0
  130. package/dist/assets/user-permissions-BJ8c2UOP.js.map +1 -0
  131. package/dist/assets/vetra-Bu3fuZWc.js +221 -0
  132. package/dist/assets/vetra-Bu3fuZWc.js.map +1 -0
  133. package/dist/index.html +2 -20
  134. package/lib/package.copy.json +3 -4
  135. package/lib/src/components/app-loader.d.ts.map +1 -1
  136. package/lib/src/components/app-loader.js +5 -16
  137. package/lib/src/components/app-loader.js.map +1 -1
  138. package/lib/src/components/index.d.ts +0 -1
  139. package/lib/src/components/index.d.ts.map +1 -1
  140. package/lib/src/components/index.js +0 -1
  141. package/lib/src/components/index.js.map +1 -1
  142. package/lib/src/components/load.d.ts +8 -0
  143. package/lib/src/components/load.d.ts.map +1 -0
  144. package/lib/src/components/load.js +17 -0
  145. package/lib/src/components/load.js.map +1 -0
  146. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.d.ts.map +1 -1
  147. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.js +2 -1
  148. package/lib/src/components/modal/modals/InspectorModal/InspectorModal.js.map +1 -1
  149. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.d.ts +1 -0
  150. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.d.ts.map +1 -1
  151. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.js +2 -0
  152. package/lib/src/components/modal/modals/InspectorModal/useRemotesInspector.js.map +1 -1
  153. package/lib/src/components/modal/modals/SettingsModal.d.ts.map +1 -1
  154. package/lib/src/components/modal/modals/SettingsModal.js +4 -1
  155. package/lib/src/components/modal/modals/SettingsModal.js.map +1 -1
  156. package/lib/src/components/modal/modals-container.d.ts +1 -1
  157. package/lib/src/components/modal/modals-container.d.ts.map +1 -1
  158. package/lib/src/components/modal/modals-container.js +12 -8
  159. package/lib/src/components/modal/modals-container.js.map +1 -1
  160. package/lib/src/main.js +3 -0
  161. package/lib/src/main.js.map +1 -1
  162. package/lib/src/services/storage/base-storage.d.ts.map +1 -1
  163. package/lib/src/services/storage/base-storage.js.map +1 -1
  164. package/lib/src/store/processor-host-module.d.ts.map +1 -1
  165. package/lib/src/store/processor-host-module.js +2 -2
  166. package/lib/src/store/processor-host-module.js.map +1 -1
  167. package/lib/src/store/reactor.d.ts.map +1 -1
  168. package/lib/src/store/reactor.js +1 -1
  169. package/lib/src/store/reactor.js.map +1 -1
  170. package/lib/style.css +15 -0
  171. package/lib/tsconfig.tsbuildinfo +1 -1
  172. package/lib/vite.config.d.ts.map +1 -1
  173. package/lib/vite.config.js +1 -29
  174. package/lib/vite.config.js.map +1 -1
  175. package/package.copy.json +3 -4
  176. package/package.json +12 -13
  177. package/dist/assets/AddDriveModal-BZ11MHBB.js +0 -1
  178. package/dist/assets/ClearStorageModal-BC3gq6BT.js +0 -1
  179. package/dist/assets/CookiesPolicyModal-Bdf-jIqf.js +0 -1
  180. package/dist/assets/CreateDocumentModal-CExWso4S.js +0 -1
  181. package/dist/assets/DebugSettingsModal-MIi3iDrt.js +0 -1
  182. package/dist/assets/DeleteDriveModal-Cj_y-Bmk.js +0 -1
  183. package/dist/assets/DeleteItemModal-DLPEfn21.js +0 -1
  184. package/dist/assets/DisclaimerModal-uqaE0dfB.js +0 -1
  185. package/dist/assets/DriveSettingsModal-0o6Em8ZV.js +0 -1
  186. package/dist/assets/ExportDocumentWithErrorsModal-BWd92B7i.js +0 -1
  187. package/dist/assets/SettingsModal-Ca4V2Rxs.js +0 -1
  188. package/dist/assets/UpgradeDriveModal-ByNuxxET.js +0 -1
  189. package/dist/assets/config-0mYxXHFp.js +0 -1
  190. package/dist/assets/design_system-Q9KmzSmh.js +0 -45
  191. package/dist/assets/design_system_connect-MVhUhmHT.js +0 -47
  192. package/dist/assets/design_system_ui-BQ-CYVFb.js +0 -1
  193. package/dist/assets/document_drive-DiwReQ7A.js +0 -154
  194. package/dist/assets/document_engineering-BMBT2RYA.js +0 -1
  195. package/dist/assets/document_model-ly1Z8uco.js +0 -241
  196. package/dist/assets/document_model_editor-D_cNq26d.js +0 -25
  197. package/dist/assets/drive_explorer-508O2XxT.js +0 -2
  198. package/dist/assets/editor-DAyyI5MD.js +0 -1
  199. package/dist/assets/graphql-BXSeDpaV.js +0 -75
  200. package/dist/assets/graphql-editor-Buhxp36K.js +0 -73
  201. package/dist/assets/graphql_request-BHyPFzlZ.js +0 -3
  202. package/dist/assets/index-B6A7sjLB.css +0 -1
  203. package/dist/assets/index-D0gnc_IY.js +0 -208
  204. package/dist/assets/index-DQyPoyxC.js +0 -149
  205. package/dist/assets/index-DnR9iRBe.js +0 -29
  206. package/dist/assets/json-editor-dXLfmMol.js +0 -1
  207. package/dist/assets/nodefs-2HQmaeC9.js +0 -1
  208. package/dist/assets/nodefs-DzAAA-1u.js +0 -1
  209. package/dist/assets/opfs-ahp-CwNbpJAw.js +0 -3
  210. package/dist/assets/opfs-ahp-xYZANhiQ.js +0 -3
  211. package/dist/assets/postgres-CkP7QCDB.data +0 -0
  212. package/dist/assets/postgres-CyuUVpXN.wasm +0 -0
  213. package/dist/assets/react/jsx-runtime-DldvXD6N.js +0 -1
  214. package/dist/assets/react-D_vzfE_e.js +0 -1
  215. package/dist/assets/react-dom/client-SoBEzBdt.js +0 -9
  216. package/dist/assets/react-dom-Cz_KAjfm.js +0 -1
  217. package/dist/assets/reactor_browser-D2taHyRs.js +0 -136
  218. package/dist/assets/sentry_browser-TIBDlywD.js +0 -498
  219. package/dist/assets/sentry_react-CVx4Qq7f.js +0 -3
  220. package/dist/assets/state-schemas-C876MuV7.js +0 -2
  221. package/dist/assets/tailwind_merge-CXl88Wxt.js +0 -1
  222. package/dist/assets/zod-Cc38s6JG.js +0 -39
  223. package/lib/src/components/modal/index.d.ts +0 -18
  224. package/lib/src/components/modal/index.d.ts.map +0 -1
  225. package/lib/src/components/modal/index.js +0 -18
  226. package/lib/src/components/modal/index.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ import{aJ as c,aK as o,aT as m,X as u,F as p,aI as v,S as l,i as h,a7 as D,b6 as b}from"./index-DN20Z-2K.js";import{u as x}from"./drive-by-id-DvdlB_kB.js";import{F as f}from"./form-input-CPs_z-6y.js";import{C as y}from"./confirmation-modal-BOwR5ZQq.js";const P=r=>{const{inputPlaceholder:s,body:a,driveName:t,...i}=r,[n,e]=c.useState("");return o.jsx(y,{bodyProps:{className:"p-0 bg-white my-0"},containerProps:{className:"w-[450px]"},continueButtonProps:{disabled:n!==t,className:n!==t?"bg-red-600 hover:scale-100 cursor-not-allowed active:opacity-100":"bg-red-900"},...i,children:o.jsxs("div",{children:[o.jsx("div",{className:"my-6 rounded-md bg-slate-50 p-4 text-center",children:a}),o.jsx("div",{children:o.jsx(f,{hideErrors:!0,icon:o.jsx(m,{name:"Lock"}),onChange:d=>e(d.target.value),placeholder:s,value:n})})]})})},I=()=>{const r=u(),s=r?.type==="deleteDrive",a=s?r.driveId:void 0,[t]=x(a),i=p();if(!t)return null;async function n(){a&&(await h(a),D(i?.[0]),l(),b(e("notifications.deleteDriveSuccess"),{type:"connect-deleted"}))}const{t:e}=v();return o.jsx(P,{open:s,driveName:t.header.name,onCancel:l,header:e("modals.deleteDrive.title",{label:t.header.name}),body:e("modals.deleteDrive.body"),inputPlaceholder:e("modals.deleteDrive.inputPlaceholder"),cancelLabel:e("common.cancel"),continueLabel:e("common.delete"),onContinue:()=>n(),onOpenChange:d=>{if(!d)return l()}})};export{I as DeleteDriveModal};
2
+ //# sourceMappingURL=DeleteDriveModal-BEq8v3-E.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteDriveModal-BEq8v3-E.js","sources":["../../../../packages/design-system/dist/src/connect/components/modal/delete-drive-modal.js","../../src/components/modal/modals/DeleteDriveModal.tsx"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon } from \"@powerhousedao/design-system\";\nimport { useState } from \"react\";\nimport { FormInput } from \"../form-input/form-input.js\";\nimport { ConnectConfirmationModal } from \"./confirmation-modal.js\";\nexport const ConnectDeleteDriveModal = (props) => {\n const { inputPlaceholder, body, driveName, ...confirmationModalProps } = props;\n const [inputName, setInputName] = useState(\"\");\n return (_jsx(ConnectConfirmationModal, { bodyProps: { className: \"p-0 bg-white my-0\" }, containerProps: { className: \"w-[450px]\" }, continueButtonProps: {\n disabled: inputName !== driveName,\n className: inputName !== driveName\n ? \"bg-red-600 hover:scale-100 cursor-not-allowed active:opacity-100\"\n : \"bg-red-900\",\n }, ...confirmationModalProps, children: _jsxs(\"div\", { children: [_jsx(\"div\", { className: \"my-6 rounded-md bg-slate-50 p-4 text-center\", children: body }), _jsx(\"div\", { children: _jsx(FormInput, { hideErrors: true, icon: _jsx(Icon, { name: \"Lock\" }), onChange: (e) => setInputName(e.target.value), placeholder: inputPlaceholder, value: inputName }) })] }) }));\n};\n//# sourceMappingURL=delete-drive-modal.js.map","import { toast } from \"@powerhousedao/connect/services\";\nimport { ConnectDeleteDriveModal } from \"@powerhousedao/design-system/connect\";\nimport {\n closePHModal,\n deleteDrive,\n setSelectedDrive,\n useDriveById,\n useDrives,\n usePHModal,\n} from \"@powerhousedao/reactor-browser\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const DeleteDriveModal: React.FC = () => {\n const phModal = usePHModal();\n const open = phModal?.type === \"deleteDrive\";\n const driveId = open ? phModal.driveId : undefined;\n const [drive] = useDriveById(driveId);\n const drives = useDrives();\n if (!drive) {\n return null;\n }\n async function onDeleteDrive() {\n if (!driveId) {\n return;\n }\n await deleteDrive(driveId);\n\n setSelectedDrive(drives?.[0]);\n closePHModal();\n\n toast(t(\"notifications.deleteDriveSuccess\"), {\n type: \"connect-deleted\",\n });\n }\n\n const { t } = useTranslation();\n\n return (\n <ConnectDeleteDriveModal\n open={open}\n driveName={drive.header.name}\n onCancel={closePHModal}\n header={t(\"modals.deleteDrive.title\", { label: drive.header.name })}\n body={t(\"modals.deleteDrive.body\")}\n inputPlaceholder={t(\"modals.deleteDrive.inputPlaceholder\")}\n cancelLabel={t(\"common.cancel\")}\n continueLabel={t(\"common.delete\")}\n onContinue={() => onDeleteDrive()}\n onOpenChange={(status: boolean) => {\n if (!status) return closePHModal();\n }}\n />\n );\n};\n"],"names":["ConnectDeleteDriveModal","props","inputPlaceholder","body","driveName","confirmationModalProps","inputName","setInputName","useState","_jsx","ConnectConfirmationModal","_jsxs","FormInput","Icon","e","DeleteDriveModal","phModal","usePHModal","open","driveId","drive","useDriveById","drives","useDrives","onDeleteDrive","deleteDrive","setSelectedDrive","closePHModal","toast","t","useTranslation","jsx","status"],"mappings":"6PAKO,MAAMA,EAA2BC,GAAU,CAC9C,KAAM,CAAE,iBAAAC,EAAkB,KAAAC,EAAM,UAAAC,EAAW,GAAGC,CAAsB,EAAKJ,EACnE,CAACK,EAAWC,CAAY,EAAIC,EAAAA,SAAS,EAAE,EAC7C,OAAQC,MAAKC,EAA0B,CAAE,UAAW,CAAE,UAAW,mBAAmB,EAAI,eAAgB,CAAE,UAAW,WAAW,EAAI,oBAAqB,CACjJ,SAAUJ,IAAcF,EACxB,UAAWE,IAAcF,EACnB,mEACA,YAClB,EAAW,GAAGC,EAAwB,SAAUM,OAAM,MAAO,CAAE,SAAU,CAACF,MAAK,MAAO,CAAE,UAAW,8CAA+C,SAAUN,CAAI,CAAE,EAAGM,EAAAA,IAAK,MAAO,CAAE,SAAUA,EAAAA,IAAKG,EAAW,CAAE,WAAY,GAAM,KAAMH,EAAAA,IAAKI,EAAM,CAAE,KAAM,MAAM,CAAE,EAAG,SAAWC,GAAMP,EAAaO,EAAE,OAAO,KAAK,EAAG,YAAaZ,EAAkB,MAAOI,CAAS,CAAE,CAAC,CAAE,CAAC,CAAC,CAAE,EAAG,CAC/W,ECFaS,EAA6B,IAAM,CAC9C,MAAMC,EAAUC,EAAA,EACVC,EAAOF,GAAS,OAAS,cACzBG,EAAUD,EAAOF,EAAQ,QAAU,OACnC,CAACI,CAAK,EAAIC,EAAaF,CAAO,EAC9BG,EAASC,EAAA,EACf,GAAI,CAACH,EACH,OAAO,KAET,eAAeI,GAAgB,CACxBL,IAGL,MAAMM,EAAYN,CAAO,EAEzBO,EAAiBJ,IAAS,CAAC,CAAC,EAC5BK,EAAA,EAEAC,EAAMC,EAAE,kCAAkC,EAAG,CAC3C,KAAM,iBAAA,CACP,EACH,CAEA,KAAM,CAAE,EAAAA,CAAA,EAAMC,EAAA,EAEd,OACEC,EAAAA,IAAC/B,EAAA,CACC,KAAAkB,EACA,UAAWE,EAAM,OAAO,KACxB,SAAUO,EACV,OAAQE,EAAE,2BAA4B,CAAE,MAAOT,EAAM,OAAO,KAAM,EAClE,KAAMS,EAAE,yBAAyB,EACjC,iBAAkBA,EAAE,qCAAqC,EACzD,YAAaA,EAAE,eAAe,EAC9B,cAAeA,EAAE,eAAe,EAChC,WAAY,IAAML,EAAA,EAClB,aAAeQ,GAAoB,CACjC,GAAI,CAACA,EAAQ,OAAOL,EAAA,CACtB,CAAA,CAAA,CAGN"}
@@ -0,0 +1,2 @@
1
+ import{aK as l,X as p,aI as I,Z as f,a9 as D,_ as b,S as c,c as y,ac as C,b6 as L}from"./index-DN20Z-2K.js";import{C as P}from"./confirmation-modal-BOwR5ZQq.js";function x(t){const{onDelete:n,deleteLabel:o,...e}=t;return l.jsx(P,{...e,containerProps:{className:"w-[450px]"},continueButtonProps:{className:"bg-red-900"},continueLabel:o,onContinue:n})}const F=()=>{const t=p(),n=t?.type==="deleteItem",o=n?t.id:void 0,{t:e}=I(),s=f(o),r=s?.name,a=s?.kind,d=D(),i=b(s?.parentFolder);async function m(){if(!d||!o)return;c();const u=a==="FOLDER"?"notifications.deleteFolderSuccess":"notifications.fileDeleteSuccess";await y(d,o),C(i),L(e(u),{type:"connect-deleted"})}return l.jsx(x,{open:n,onDelete:()=>m(),onCancel:()=>c(),header:e(`modals.deleteItem.${a?.toLowerCase()}.header`,{item:r}),body:e(`modals.deleteItem.${a?.toLowerCase()}.body`),cancelLabel:e("common.cancel"),deleteLabel:e("common.delete")})};export{F as DeleteItemModal};
2
+ //# sourceMappingURL=DeleteItemModal-B3ziER8J.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteItemModal-B3ziER8J.js","sources":["../../../../packages/design-system/dist/src/connect/components/modal/delete-item-modal.js","../../src/components/modal/modals/DeleteItemModal.tsx"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { ConnectConfirmationModal, } from \"./confirmation-modal.js\";\nexport function ConnectDeleteItemModal(props) {\n const { onDelete, deleteLabel, ...restProps } = props;\n return (_jsx(ConnectConfirmationModal, { ...restProps, containerProps: { className: \"w-[450px]\" }, continueButtonProps: {\n className: \"bg-red-900\",\n }, continueLabel: deleteLabel, onContinue: onDelete }));\n}\n//# sourceMappingURL=delete-item-modal.js.map","import { toast } from \"@powerhousedao/connect/services\";\nimport { ConnectDeleteItemModal } from \"@powerhousedao/design-system/connect\";\nimport {\n closePHModal,\n deleteNode,\n setSelectedNode,\n useNodeById,\n useNodeParentFolderById,\n usePHModal,\n useSelectedDriveId,\n} from \"@powerhousedao/reactor-browser\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const DeleteItemModal: React.FC = () => {\n const phModal = usePHModal();\n const open = phModal?.type === \"deleteItem\";\n const id = open ? phModal.id : undefined;\n const { t } = useTranslation();\n const node = useNodeById(id);\n const name = node?.name;\n const kind = node?.kind;\n const selectedDriveId = useSelectedDriveId();\n const nodeParentFolder = useNodeParentFolderById(node?.parentFolder);\n async function onDelete() {\n if (!selectedDriveId || !id) {\n return;\n }\n closePHModal();\n\n const i18nKey =\n kind === \"FOLDER\"\n ? \"notifications.deleteFolderSuccess\"\n : \"notifications.fileDeleteSuccess\";\n\n await deleteNode(selectedDriveId, id);\n\n setSelectedNode(nodeParentFolder);\n\n toast(t(i18nKey), { type: \"connect-deleted\" });\n }\n\n return (\n <ConnectDeleteItemModal\n open={open}\n onDelete={() => onDelete()}\n onCancel={() => closePHModal()}\n header={t(`modals.deleteItem.${kind?.toLowerCase()}.header`, {\n item: name,\n })}\n body={t(`modals.deleteItem.${kind?.toLowerCase()}.body`)}\n cancelLabel={t(\"common.cancel\")}\n deleteLabel={t(\"common.delete\")}\n />\n );\n};\n"],"names":["ConnectDeleteItemModal","props","onDelete","deleteLabel","restProps","_jsx","ConnectConfirmationModal","DeleteItemModal","phModal","usePHModal","open","id","t","useTranslation","node","useNodeById","name","kind","selectedDriveId","useSelectedDriveId","nodeParentFolder","useNodeParentFolderById","closePHModal","i18nKey","deleteNode","setSelectedNode","toast","jsx"],"mappings":"iKAEO,SAASA,EAAuBC,EAAO,CAC1C,KAAM,CAAE,SAAAC,EAAU,YAAAC,EAAa,GAAGC,CAAS,EAAKH,EAChD,OAAQI,EAAAA,IAAKC,EAA0B,CAAE,GAAGF,EAAW,eAAgB,CAAE,UAAW,WAAW,EAAI,oBAAqB,CAChH,UAAW,YACvB,EAAW,cAAeD,EAAa,WAAYD,CAAQ,CAAE,CAC7D,CCOO,MAAMK,EAA4B,IAAM,CAC7C,MAAMC,EAAUC,EAAA,EACVC,EAAOF,GAAS,OAAS,aACzBG,EAAKD,EAAOF,EAAQ,GAAK,OACzB,CAAE,EAAAI,CAAA,EAAMC,EAAA,EACRC,EAAOC,EAAYJ,CAAE,EACrBK,EAAOF,GAAM,KACbG,EAAOH,GAAM,KACbI,EAAkBC,EAAA,EAClBC,EAAmBC,EAAwBP,GAAM,YAAY,EACnE,eAAeZ,GAAW,CACxB,GAAI,CAACgB,GAAmB,CAACP,EACvB,OAEFW,EAAA,EAEA,MAAMC,EACJN,IAAS,SACL,oCACA,kCAEN,MAAMO,EAAWN,EAAiBP,CAAE,EAEpCc,EAAgBL,CAAgB,EAEhCM,EAAMd,EAAEW,CAAO,EAAG,CAAE,KAAM,kBAAmB,CAC/C,CAEA,OACEI,EAAAA,IAAC3B,EAAA,CACC,KAAAU,EACA,SAAU,IAAMR,EAAA,EAChB,SAAU,IAAMoB,EAAA,EAChB,OAAQV,EAAE,qBAAqBK,GAAM,YAAA,CAAa,UAAW,CAC3D,KAAMD,CAAA,CACP,EACD,KAAMJ,EAAE,qBAAqBK,GAAM,YAAA,CAAa,OAAO,EACvD,YAAaL,EAAE,eAAe,EAC9B,YAAaA,EAAE,eAAe,CAAA,CAAA,CAGpC"}
@@ -0,0 +1,2 @@
1
+ import{X as s,aI as e,aK as l,S as d}from"./index-DN20Z-2K.js";import{R as t}from"./read-required-modal-BKEkfucI.js";const m=()=>{const a=s()?.type==="disclaimer",{t:o}=e();return l.jsx(t,{open:a,header:o("modals.disclaimer.title"),body:o("modals.disclaimer.body"),closeLabel:"Close",onContinue:()=>d()})};export{m as DisclaimerModal};
2
+ //# sourceMappingURL=DisclaimerModal-CFnBcICu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisclaimerModal-CFnBcICu.js","sources":["../../src/components/modal/modals/DisclaimerModal.tsx"],"sourcesContent":["import { ReadRequiredModal } from \"@powerhousedao/design-system/connect\";\nimport { closePHModal, usePHModal } from \"@powerhousedao/reactor-browser\";\nimport React from \"react\";\nimport { useTranslation } from \"react-i18next\";\n\nexport const DisclaimerModal: React.FC = () => {\n const phModal = usePHModal();\n const open = phModal?.type === \"disclaimer\";\n\n const { t } = useTranslation();\n\n return (\n <ReadRequiredModal\n open={open}\n header={t(\"modals.disclaimer.title\")}\n body={t(\"modals.disclaimer.body\")}\n closeLabel=\"Close\"\n onContinue={() => closePHModal()}\n />\n );\n};\n"],"names":["DisclaimerModal","open","usePHModal","t","useTranslation","jsx","ReadRequiredModal","closePHModal"],"mappings":"qHAKO,MAAMA,EAA4B,IAAM,CAE7C,MAAMC,EADUC,EAAA,GACM,OAAS,aAEzB,CAAE,EAAAC,CAAA,EAAMC,EAAA,EAEd,OACEC,EAAAA,IAACC,EAAA,CACC,KAAAL,EACA,OAAQE,EAAE,yBAAyB,EACnC,KAAMA,EAAE,wBAAwB,EAChC,WAAW,QACX,WAAY,IAAMI,EAAA,CAAa,CAAA,CAGrC"}
@@ -0,0 +1,2 @@
1
+ import{aJ as f,aK as e,aT as g,b5 as j,aN as C,aO as w,X as N,bG as O,bH as I,W as T,S as L,m as A,s as M,l as P}from"./index-DN20Z-2K.js";import{D as u,L as F,S as k,a as B,A as R}from"./location-info-N8RPWokW.js";import{u as H}from"./index.esm-BeYGM8vk.js";import{D as b}from"./disclosure-BhnV_XS1.js";import{F as z}from"./form-input-CPs_z-6y.js";import{u as E}from"./drive-by-id-DvdlB_kB.js";import"./options-CBc6-sTL.js";const y=f.forwardRef(function(n,s){return e.jsx(z,{...n,icon:n.icon??e.jsx(g,{name:"Drive"}),id:"driveName",placeholder:"Drive name",ref:s})});function U(l){const{drive:n,handleDeleteDrive:s,onCancel:i}=l,[o,t]=f.useState(""),c=o===n.header.name;function d(){c&&s()}return e.jsxs("div",{children:[e.jsx("p",{className:"mb-2 rounded-md bg-slate-50 p-4 text-center text-slate-200",children:"Are you sure you want to delete this drive? All files and subfolders within it will be removed. Do you want to proceed?"}),e.jsx(y,{icon:e.jsx(g,{name:"Lock"}),onChange:h=>t(h.target.value),placeholder:"Enter drive name...",value:o}),e.jsxs("div",{className:"flex gap-3",children:[e.jsx(j,{className:"w-full",color:"light",onClick:i,children:"Cancel"}),e.jsx(j,{className:"w-full",color:"red",disabled:!c,onClick:d,children:"Delete"})]})]})}function W(l){const{drive:n,sharingType:s,availableOffline:i,onSubmit:o,handleDeleteDrive:t}=l,c=n.header.name,[d,h]=f.useState(!1),[a,r]=f.useState(!1),[v,x]=f.useState(!1),{register:p,handleSubmit:D,control:m}=H({mode:"onBlur",defaultValues:{name:c,sharingType:s,availableOffline:i}}),S=s==="PUBLIC"?"SWITCHBOARD":s;return e.jsxs("form",{onSubmit:D(o),children:[e.jsx(y,{...p("name")}),e.jsx(u,{className:"my-4"}),e.jsx(F,{htmlFor:"sharingType",children:"Sharing settings"}),e.jsx(k,{control:m}),e.jsx(u,{className:"my-3"}),e.jsxs(b,{isOpen:d,onOpenChange:()=>h(!d),title:"Location",children:[e.jsx(B,{location:S}),e.jsx(R,{...p("availableOffline")})]}),e.jsx(u,{className:"my-3"}),e.jsx(b,{isOpen:a,onOpenChange:()=>r(!a),title:"Danger zone",children:e.jsxs("button",{className:"flex gap-2 py-3 font-semibold text-red-900 transition hover:brightness-125",onClick:()=>x(!0),type:"button",children:[e.jsx(g,{name:"Trash"}),"Delete drive"]})}),v&&a?e.jsx(U,{drive:n,handleDeleteDrive:t,onCancel:()=>x(!1)}):e.jsxs(e.Fragment,{children:[e.jsx(u,{className:"my-3"}),e.jsx(j,{className:"mb-4 w-full",type:"submit",children:"Confirm"})]})]})}function X(l){const{drive:n,open:s,sharingType:i,availableOffline:o,onOpenChange:t,onDeleteDrive:c,onRenameDrive:d,onChangeSharingType:h,onChangeAvailableOffline:a,modalProps:r,containerProps:v}=l,x=m=>{m.name!==n.header.name&&d(n,m.name),m.sharingType!==i&&h(n,m.sharingType),m.availableOffline!==o&&a(n,m.availableOffline),t(!1)};function p(){c(n),t(!1)}function D(){t(!1)}return e.jsx(C,{...r,contentProps:{className:"rounded-2xl"},onOpenChange:t,open:s,children:e.jsxs("div",{...v,className:w("max-w-[408px] rounded-2xl p-6",v?.className),children:[e.jsxs("div",{className:"flex justify-between",children:[e.jsx("h1",{className:"text-xl font-bold",children:"Drive settings"}),e.jsx("button",{className:"flex size-8 items-center justify-center rounded-md bg-gray-100 text-gray-500 outline-none hover:text-gray-900",onClick:D,tabIndex:-1,children:e.jsx(g,{name:"XmarkLight",size:24})})]}),e.jsx(u,{className:"my-4"}),e.jsx(W,{handleCancel:D,handleDeleteDrive:p,onSubmit:x,drive:n,sharingType:i,availableOffline:o})]})})}function Q(){const l=N(),n=l?.type==="driveSettings",s=n?l.driveId:void 0,[i]=E(s),o=O(),t=f.useMemo(()=>o.some(a=>a.collectionId===I("main",i.header.id)),[o,i]);if(!s||!i)return null;async function c(a,r){await P(a.header.id,r)}async function d(a,r){await A(a.header.id,r)}async function h(a,r){await M(a.header.id,r)}return e.jsx(X,{drive:i,sharingType:t?"PUBLIC":"LOCAL",availableOffline:!t,open:n,onRenameDrive:c,onDeleteDrive:()=>T({type:"deleteDrive",driveId:s}),onChangeAvailableOffline:h,onChangeSharingType:d,onOpenChange:a=>{if(!a)return L()}})}export{Q as DriveSettingsModal};
2
+ //# sourceMappingURL=DriveSettingsModal-BOdnkWJn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriveSettingsModal-BOdnkWJn.js","sources":["../../../../packages/design-system/dist/src/connect/components/form/inputs/drive-name-input.js","../../../../packages/design-system/dist/src/connect/components/form/inputs/delete-drive.js","../../../../packages/design-system/dist/src/connect/components/form/drive-settings-form.js","../../../../packages/design-system/dist/src/connect/components/modal/drive-settings-modal.js","../../src/components/modal/modals/DriveSettingsModal.tsx"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Icon } from \"@powerhousedao/design-system\";\nimport { forwardRef } from \"react\";\nimport { FormInput } from \"../../form-input/form-input.js\";\nexport const DriveNameInput = forwardRef(function DriveNameInput(props, ref) {\n return (_jsx(FormInput, { ...props, icon: props.icon ?? _jsx(Icon, { name: \"Drive\" }), id: \"driveName\", placeholder: \"Drive name\", ref: ref }));\n});\n//# sourceMappingURL=drive-name-input.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon, PowerhouseButton } from \"@powerhousedao/design-system\";\nimport { useState } from \"react\";\nimport { DriveNameInput } from \"./drive-name-input.js\";\nexport function DeleteDrive(props) {\n const { drive, handleDeleteDrive, onCancel } = props;\n const [driveNameInput, setDriveNameInput] = useState(\"\");\n const isAllowedToDelete = driveNameInput === drive.header.name;\n function deleteDrive() {\n if (isAllowedToDelete) {\n handleDeleteDrive();\n }\n }\n return (_jsxs(\"div\", { children: [_jsx(\"p\", { className: \"mb-2 rounded-md bg-slate-50 p-4 text-center text-slate-200\", children: \"Are you sure you want to delete this drive? All files and subfolders within it will be removed. Do you want to proceed?\" }), _jsx(DriveNameInput, { icon: _jsx(Icon, { name: \"Lock\" }), onChange: (event) => setDriveNameInput(event.target.value), placeholder: \"Enter drive name...\", value: driveNameInput }), _jsxs(\"div\", { className: \"flex gap-3\", children: [_jsx(PowerhouseButton, { className: \"w-full\", color: \"light\", onClick: onCancel, children: \"Cancel\" }), _jsx(PowerhouseButton, { className: \"w-full\", color: \"red\", disabled: !isAllowedToDelete, onClick: deleteDrive, children: \"Delete\" })] })] }));\n}\n//# sourceMappingURL=delete-drive.js.map","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { Icon, PowerhouseButton } from \"@powerhousedao/design-system\";\nimport { useState } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { Disclosure } from \"../disclosure/disclosure.js\";\nimport { Divider } from \"../divider/divider.js\";\nimport { AvailableOfflineToggle } from \"./inputs/available-offline-toggle.js\";\nimport { DeleteDrive } from \"./inputs/delete-drive.js\";\nimport { DriveNameInput } from \"./inputs/drive-name-input.js\";\nimport { Label } from \"./inputs/label.js\";\nimport { LocationInfo } from \"./inputs/location-info.js\";\nimport { SharingTypeFormInput } from \"./inputs/sharing-type-form-input.js\";\nexport function DriveSettingsForm(props) {\n const { drive, sharingType, availableOffline, onSubmit, handleDeleteDrive } = props;\n const name = drive.header.name;\n const [showLocationSettings, setShowLocationSettings] = useState(false);\n const [showDangerZone, setShowDangerZone] = useState(false);\n const [showDeleteDrive, setShowDeleteDrive] = useState(false);\n const { register, handleSubmit, control } = useForm({\n mode: \"onBlur\",\n defaultValues: {\n name,\n sharingType,\n availableOffline,\n },\n });\n const location = sharingType === \"PUBLIC\" ? \"SWITCHBOARD\" : sharingType;\n return (_jsxs(\"form\", { onSubmit: handleSubmit(onSubmit), children: [_jsx(DriveNameInput, { ...register(\"name\") }), _jsx(Divider, { className: \"my-4\" }), _jsx(Label, { htmlFor: \"sharingType\", children: \"Sharing settings\" }), _jsx(SharingTypeFormInput, { control: control }), _jsx(Divider, { className: \"my-3\" }), _jsxs(Disclosure, { isOpen: showLocationSettings, onOpenChange: () => setShowLocationSettings(!showLocationSettings), title: \"Location\", children: [_jsx(LocationInfo, { location: location }), _jsx(AvailableOfflineToggle, { ...register(\"availableOffline\") })] }), _jsx(Divider, { className: \"my-3\" }), _jsx(Disclosure, { isOpen: showDangerZone, onOpenChange: () => setShowDangerZone(!showDangerZone), title: \"Danger zone\", children: _jsxs(\"button\", { className: \"flex gap-2 py-3 font-semibold text-red-900 transition hover:brightness-125\", onClick: () => setShowDeleteDrive(true), type: \"button\", children: [_jsx(Icon, { name: \"Trash\" }), \"Delete drive\"] }) }), showDeleteDrive && showDangerZone ? (_jsx(DeleteDrive, { drive: drive, handleDeleteDrive: handleDeleteDrive, onCancel: () => setShowDeleteDrive(false) })) : (_jsxs(_Fragment, { children: [_jsx(Divider, { className: \"my-3\" }), _jsx(PowerhouseButton, { className: \"mb-4 w-full\", type: \"submit\", children: \"Confirm\" })] }))] }));\n}\n//# sourceMappingURL=drive-settings-form.js.map","import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Icon, Modal } from \"@powerhousedao/design-system\";\nimport { twMerge } from \"tailwind-merge\";\nimport { Divider } from \"../divider/divider.js\";\nimport { DriveSettingsForm, } from \"../form/drive-settings-form.js\";\nexport function DriveSettingsModal(props) {\n const { drive, open, sharingType, availableOffline, onOpenChange, onDeleteDrive, onRenameDrive, onChangeSharingType, onChangeAvailableOffline, modalProps, containerProps, } = props;\n const onSubmit = (data) => {\n if (data.name !== drive.header.name) {\n onRenameDrive(drive, data.name);\n }\n if (data.sharingType !== sharingType) {\n onChangeSharingType(drive, data.sharingType);\n }\n if (data.availableOffline !== availableOffline) {\n onChangeAvailableOffline(drive, data.availableOffline);\n }\n onOpenChange(false);\n };\n function handleDeleteDrive() {\n onDeleteDrive(drive);\n onOpenChange(false);\n }\n function handleCancel() {\n onOpenChange(false);\n }\n return (_jsx(Modal, { ...modalProps, contentProps: {\n className: \"rounded-2xl\",\n }, onOpenChange: onOpenChange, open: open, children: _jsxs(\"div\", { ...containerProps, className: twMerge(\"max-w-[408px] rounded-2xl p-6\", containerProps?.className), children: [_jsxs(\"div\", { className: \"flex justify-between\", children: [_jsx(\"h1\", { className: \"text-xl font-bold\", children: \"Drive settings\" }), _jsx(\"button\", { className: \"flex size-8 items-center justify-center rounded-md bg-gray-100 text-gray-500 outline-none hover:text-gray-900\", onClick: handleCancel, tabIndex: -1, children: _jsx(Icon, { name: \"XmarkLight\", size: 24 }) })] }), _jsx(Divider, { className: \"my-4\" }), _jsx(DriveSettingsForm, { handleCancel: handleCancel, handleDeleteDrive: handleDeleteDrive, onSubmit: onSubmit, drive: drive, sharingType: sharingType, availableOffline: availableOffline })] }) }));\n}\n//# sourceMappingURL=drive-settings-modal.js.map","import { DriveSettingsModal as ConnectDriveSettingsModal } from \"@powerhousedao/design-system/connect\";\nimport { driveCollectionId } from \"@powerhousedao/reactor\";\nimport {\n closePHModal,\n renameDrive,\n setDriveAvailableOffline,\n setDriveSharingType,\n showPHModal,\n useDriveById,\n usePHModal,\n} from \"@powerhousedao/reactor-browser\";\nimport { useSyncList } from \"@powerhousedao/reactor-browser/connect\";\nimport type { DocumentDriveDocument, SharingType } from \"document-drive\";\nimport { useMemo } from \"react\";\n\nexport function DriveSettingsModal() {\n const phModal = usePHModal();\n const open = phModal?.type === \"driveSettings\";\n const driveId = open ? phModal.driveId : undefined;\n const [drive] = useDriveById(driveId);\n const remotes = useSyncList();\n\n const isRemoteDrive = useMemo(() => {\n return remotes.some(\n (remote) =>\n remote.collectionId === driveCollectionId(\"main\", drive.header.id),\n );\n }, [remotes, drive]);\n\n if (!driveId || !drive) {\n return null;\n }\n\n async function onRenameDrive(drive: DocumentDriveDocument, newName: string) {\n await renameDrive(drive.header.id, newName);\n }\n\n async function onChangeSharingType(\n drive: DocumentDriveDocument,\n newSharingType: SharingType,\n ) {\n await setDriveSharingType(drive.header.id, newSharingType);\n }\n\n async function onChangeAvailableOffline(\n drive: DocumentDriveDocument,\n newAvailableOffline: boolean,\n ) {\n await setDriveAvailableOffline(drive.header.id, newAvailableOffline);\n }\n\n return (\n <ConnectDriveSettingsModal\n drive={drive}\n sharingType={isRemoteDrive ? \"PUBLIC\" : \"LOCAL\"}\n availableOffline={!isRemoteDrive}\n open={open}\n onRenameDrive={onRenameDrive}\n onDeleteDrive={() => showPHModal({ type: \"deleteDrive\", driveId })}\n onChangeAvailableOffline={onChangeAvailableOffline}\n onChangeSharingType={onChangeSharingType}\n onOpenChange={(status) => {\n if (!status) return closePHModal();\n }}\n />\n );\n}\n"],"names":["DriveNameInput","forwardRef","props","ref","_jsx","FormInput","Icon","DeleteDrive","drive","handleDeleteDrive","onCancel","driveNameInput","setDriveNameInput","useState","isAllowedToDelete","deleteDrive","_jsxs","event","PowerhouseButton","DriveSettingsForm","sharingType","availableOffline","onSubmit","name","showLocationSettings","setShowLocationSettings","showDangerZone","setShowDangerZone","showDeleteDrive","setShowDeleteDrive","register","handleSubmit","control","useForm","location","Divider","Label","SharingTypeFormInput","Disclosure","LocationInfo","AvailableOfflineToggle","_Fragment","DriveSettingsModal","open","onOpenChange","onDeleteDrive","onRenameDrive","onChangeSharingType","onChangeAvailableOffline","modalProps","containerProps","data","handleCancel","Modal","twMerge","phModal","usePHModal","driveId","useDriveById","remotes","useSyncList","isRemoteDrive","useMemo","remote","driveCollectionId","newName","renameDrive","newSharingType","setDriveSharingType","newAvailableOffline","setDriveAvailableOffline","jsx","ConnectDriveSettingsModal","showPHModal","status","closePHModal"],"mappings":"yaAIO,MAAMA,EAAiBC,EAAAA,WAAW,SAAwBC,EAAOC,EAAK,CACzE,OAAQC,EAAAA,IAAKC,EAAW,CAAE,GAAGH,EAAO,KAAMA,EAAM,MAAQE,EAAAA,IAAKE,EAAM,CAAE,KAAM,OAAO,CAAE,EAAG,GAAI,YAAa,YAAa,aAAc,IAAKH,EAAK,CACjJ,CAAC,ECFM,SAASI,EAAYL,EAAO,CAC/B,KAAM,CAAE,MAAAM,EAAO,kBAAAC,EAAmB,SAAAC,CAAQ,EAAKR,EACzC,CAACS,EAAgBC,CAAiB,EAAIC,EAAAA,SAAS,EAAE,EACjDC,EAAoBH,IAAmBH,EAAM,OAAO,KAC1D,SAASO,GAAc,CACfD,GACAL,EAAiB,CAEzB,CACA,OAAQO,EAAAA,KAAM,MAAO,CAAE,SAAU,CAACZ,EAAAA,IAAK,IAAK,CAAE,UAAW,6DAA8D,SAAU,yHAAyH,CAAE,EAAGA,EAAAA,IAAKJ,EAAgB,CAAE,KAAMI,EAAAA,IAAKE,EAAM,CAAE,KAAM,MAAM,CAAE,EAAG,SAAWW,GAAUL,EAAkBK,EAAM,OAAO,KAAK,EAAG,YAAa,sBAAuB,MAAON,EAAgB,EAAGK,EAAAA,KAAM,MAAO,CAAE,UAAW,aAAc,SAAU,CAACZ,EAAAA,IAAKc,EAAkB,CAAE,UAAW,SAAU,MAAO,QAAS,QAASR,EAAU,SAAU,QAAQ,CAAE,EAAGN,EAAAA,IAAKc,EAAkB,CAAE,UAAW,SAAU,MAAO,MAAO,SAAU,CAACJ,EAAmB,QAASC,EAAa,SAAU,QAAQ,CAAE,CAAC,CAAC,CAAE,CAAC,EAAG,CAC/tB,CCFO,SAASI,EAAkBjB,EAAO,CACrC,KAAM,CAAE,MAAAM,EAAO,YAAAY,EAAa,iBAAAC,EAAkB,SAAAC,EAAU,kBAAAb,CAAiB,EAAKP,EACxEqB,EAAOf,EAAM,OAAO,KACpB,CAACgB,EAAsBC,CAAuB,EAAIZ,EAAAA,SAAS,EAAK,EAChE,CAACa,EAAgBC,CAAiB,EAAId,EAAAA,SAAS,EAAK,EACpD,CAACe,EAAiBC,CAAkB,EAAIhB,EAAAA,SAAS,EAAK,EACtD,CAAE,SAAAiB,EAAU,aAAAC,EAAc,QAAAC,CAAO,EAAKC,EAAQ,CAChD,KAAM,SACN,cAAe,CACX,KAAAV,EACA,YAAAH,EACA,iBAAAC,CACZ,CACA,CAAK,EACKa,EAAWd,IAAgB,SAAW,cAAgBA,EAC5D,OAAQJ,EAAAA,KAAM,OAAQ,CAAE,SAAUe,EAAaT,CAAQ,EAAG,SAAU,CAAClB,EAAAA,IAAKJ,EAAgB,CAAE,GAAG8B,EAAS,MAAM,CAAC,CAAE,EAAG1B,EAAAA,IAAK+B,EAAS,CAAE,UAAW,MAAM,CAAE,EAAG/B,EAAAA,IAAKgC,EAAO,CAAE,QAAS,cAAe,SAAU,kBAAkB,CAAE,EAAGhC,EAAAA,IAAKiC,EAAsB,CAAE,QAASL,CAAO,CAAE,EAAG5B,EAAAA,IAAK+B,EAAS,CAAE,UAAW,MAAM,CAAE,EAAGnB,EAAAA,KAAMsB,EAAY,CAAE,OAAQd,EAAsB,aAAc,IAAMC,EAAwB,CAACD,CAAoB,EAAG,MAAO,WAAY,SAAU,CAACpB,EAAAA,IAAKmC,EAAc,CAAE,SAAUL,CAAQ,CAAE,EAAG9B,EAAAA,IAAKoC,EAAwB,CAAE,GAAGV,EAAS,kBAAkB,CAAC,CAAE,CAAC,EAAG,EAAG1B,EAAAA,IAAK+B,EAAS,CAAE,UAAW,MAAM,CAAE,EAAG/B,EAAAA,IAAKkC,EAAY,CAAE,OAAQZ,EAAgB,aAAc,IAAMC,EAAkB,CAACD,CAAc,EAAG,MAAO,cAAe,SAAUV,EAAAA,KAAM,SAAU,CAAE,UAAW,6EAA8E,QAAS,IAAMa,EAAmB,EAAI,EAAG,KAAM,SAAU,SAAU,CAACzB,EAAAA,IAAKE,EAAM,CAAE,KAAM,QAAS,EAAG,cAAc,CAAC,CAAE,CAAC,CAAE,EAAGsB,GAAmBF,EAAkBtB,EAAAA,IAAKG,EAAa,CAAE,MAAOC,EAAO,kBAAmBC,EAAmB,SAAU,IAAMoB,EAAmB,EAAK,CAAC,CAAE,EAAMb,EAAAA,KAAMyB,EAAAA,SAAW,CAAE,SAAU,CAACrC,EAAAA,IAAK+B,EAAS,CAAE,UAAW,MAAM,CAAE,EAAG/B,EAAAA,IAAKc,EAAkB,CAAE,UAAW,cAAe,KAAM,SAAU,SAAU,SAAS,CAAE,CAAC,CAAC,CAAE,CAAE,EAAG,CACrxC,CCvBO,SAASwB,EAAmBxC,EAAO,CACtC,KAAM,CAAE,MAAAM,EAAO,KAAAmC,EAAM,YAAAvB,EAAa,iBAAAC,EAAkB,aAAAuB,EAAc,cAAAC,EAAe,cAAAC,EAAe,oBAAAC,EAAqB,yBAAAC,EAA0B,WAAAC,EAAY,eAAAC,CAAc,EAAMhD,EACzKoB,EAAY6B,GAAS,CACnBA,EAAK,OAAS3C,EAAM,OAAO,MAC3BsC,EAActC,EAAO2C,EAAK,IAAI,EAE9BA,EAAK,cAAgB/B,GACrB2B,EAAoBvC,EAAO2C,EAAK,WAAW,EAE3CA,EAAK,mBAAqB9B,GAC1B2B,EAAyBxC,EAAO2C,EAAK,gBAAgB,EAEzDP,EAAa,EAAK,CACtB,EACA,SAASnC,GAAoB,CACzBoC,EAAcrC,CAAK,EACnBoC,EAAa,EAAK,CACtB,CACA,SAASQ,GAAe,CACpBR,EAAa,EAAK,CACtB,CACA,OAAQxC,EAAAA,IAAKiD,EAAO,CAAE,GAAGJ,EAAY,aAAc,CAC3C,UAAW,aACvB,EAAW,aAAcL,EAAc,KAAMD,EAAM,SAAU3B,EAAAA,KAAM,MAAO,CAAE,GAAGkC,EAAgB,UAAWI,EAAQ,gCAAiCJ,GAAgB,SAAS,EAAG,SAAU,CAAClC,EAAAA,KAAM,MAAO,CAAE,UAAW,uBAAwB,SAAU,CAACZ,EAAAA,IAAK,KAAM,CAAE,UAAW,oBAAqB,SAAU,gBAAgB,CAAE,EAAGA,EAAAA,IAAK,SAAU,CAAE,UAAW,gHAAiH,QAASgD,EAAc,SAAU,GAAI,SAAUhD,EAAAA,IAAKE,EAAM,CAAE,KAAM,aAAc,KAAM,EAAE,CAAE,CAAC,CAAE,CAAC,EAAG,EAAGF,EAAAA,IAAK+B,EAAS,CAAE,UAAW,MAAM,CAAE,EAAG/B,EAAAA,IAAKe,EAAmB,CAAE,aAAciC,EAAc,kBAAmB3C,EAAmB,SAAUa,EAAU,MAAOd,EAAO,YAAaY,EAAa,iBAAkBC,EAAkB,CAAC,CAAC,CAAE,EAAG,CAC7xB,CCdO,SAASqB,GAAqB,CACnC,MAAMa,EAAUC,EAAA,EACVb,EAAOY,GAAS,OAAS,gBACzBE,EAAUd,EAAOY,EAAQ,QAAU,OACnC,CAAC/C,CAAK,EAAIkD,EAAaD,CAAO,EAC9BE,EAAUC,EAAA,EAEVC,EAAgBC,EAAAA,QAAQ,IACrBH,EAAQ,KACZI,GACCA,EAAO,eAAiBC,EAAkB,OAAQxD,EAAM,OAAO,EAAE,CAAA,EAEpE,CAACmD,EAASnD,CAAK,CAAC,EAEnB,GAAI,CAACiD,GAAW,CAACjD,EACf,OAAO,KAGT,eAAesC,EAActC,EAA8ByD,EAAiB,CAC1E,MAAMC,EAAY1D,EAAM,OAAO,GAAIyD,CAAO,CAC5C,CAEA,eAAelB,EACbvC,EACA2D,EACA,CACA,MAAMC,EAAoB5D,EAAM,OAAO,GAAI2D,CAAc,CAC3D,CAEA,eAAenB,EACbxC,EACA6D,EACA,CACA,MAAMC,EAAyB9D,EAAM,OAAO,GAAI6D,CAAmB,CACrE,CAEA,OACEE,EAAAA,IAACC,EAAA,CACC,MAAAhE,EACA,YAAaqD,EAAgB,SAAW,QACxC,iBAAkB,CAACA,EACnB,KAAAlB,EACA,cAAAG,EACA,cAAe,IAAM2B,EAAY,CAAE,KAAM,cAAe,QAAAhB,EAAS,EACjE,yBAAAT,EACA,oBAAAD,EACA,aAAe2B,GAAW,CACxB,GAAI,CAACA,EAAQ,OAAOC,EAAA,CACtB,CAAA,CAAA,CAGN"}
@@ -0,0 +1,2 @@
1
+ import{X as m,v as d,aI as u,aH as x,aK as e,S as r,e as p}from"./index-DN20Z-2K.js";import{C as h}from"./confirmation-modal-BOwR5ZQq.js";function y(){const s=m(),a=s?.type==="exportDocumentWithErrors",c=a?s.documentId:void 0,[n]=d(c),{t:o}=u();if(!n)return null;const l=x(n);return e.jsx(h,{header:o("modals.exportDocumentWithErrors.title"),title:o("modals.exportDocumentWithErrors.title"),body:e.jsxs("div",{children:[e.jsx("p",{children:o("modals.exportDocumentWithErrors.body")}),e.jsx("ul",{className:"mt-4 flex list-disc flex-col items-start px-4 text-xs",children:l.map((t,i)=>e.jsx("li",{children:t.message},i))})]}),cancelLabel:o("common.cancel"),continueLabel:o("common.export"),onCancel:()=>r(),onContinue:async()=>{try{await p(n)}catch(t){console.error(t)}finally{r()}},open:a,onOpenChange:t=>{if(!t)return r()}})}export{y as ExportDocumentWithErrorsModal};
2
+ //# sourceMappingURL=ExportDocumentWithErrorsModal--uHwELhU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExportDocumentWithErrorsModal--uHwELhU.js","sources":["../../src/components/modal/modals/ExportDocumentWithErrorsModal.tsx"],"sourcesContent":["import { ConnectConfirmationModal } from \"@powerhousedao/design-system/connect\";\nimport {\n closePHModal,\n exportFile,\n useDocumentById,\n usePHModal,\n validateDocument,\n} from \"@powerhousedao/reactor-browser\";\nimport { useTranslation } from \"react-i18next\";\nexport function ExportDocumentWithErrorsModal() {\n const phModal = usePHModal();\n const open = phModal?.type === \"exportDocumentWithErrors\";\n const documentId = open ? phModal.documentId : undefined;\n const [document] = useDocumentById(documentId);\n const { t } = useTranslation();\n\n if (!document) {\n return null;\n }\n\n const validationErrors = validateDocument(document);\n return (\n <ConnectConfirmationModal\n header={t(\"modals.exportDocumentWithErrors.title\")}\n title={t(\"modals.exportDocumentWithErrors.title\")}\n body={\n <div>\n <p>{t(\"modals.exportDocumentWithErrors.body\")}</p>\n <ul className=\"mt-4 flex list-disc flex-col items-start px-4 text-xs\">\n {validationErrors.map((error, index) => (\n <li key={index}>{error.message}</li>\n ))}\n </ul>\n </div>\n }\n cancelLabel={t(\"common.cancel\")}\n continueLabel={t(\"common.export\")}\n onCancel={() => closePHModal()}\n onContinue={async () => {\n try {\n await exportFile(document);\n } catch (error) {\n console.error(error);\n } finally {\n closePHModal();\n }\n }}\n open={open}\n onOpenChange={(status: boolean) => {\n if (!status) return closePHModal();\n }}\n />\n );\n}\n"],"names":["ExportDocumentWithErrorsModal","phModal","usePHModal","open","documentId","document","useDocumentById","t","useTranslation","validationErrors","validateDocument","jsx","ConnectConfirmationModal","error","index","closePHModal","exportFile","status"],"mappings":"0IASO,SAASA,GAAgC,CAC9C,MAAMC,EAAUC,EAAA,EACVC,EAAOF,GAAS,OAAS,2BACzBG,EAAaD,EAAOF,EAAQ,WAAa,OACzC,CAACI,CAAQ,EAAIC,EAAgBF,CAAU,EACvC,CAAE,EAAAG,CAAA,EAAMC,EAAA,EAEd,GAAI,CAACH,EACH,OAAO,KAGT,MAAMI,EAAmBC,EAAiBL,CAAQ,EAClD,OACEM,EAAAA,IAACC,EAAA,CACC,OAAQL,EAAE,uCAAuC,EACjD,MAAOA,EAAE,uCAAuC,EAChD,YACG,MAAA,CACC,SAAA,CAAAI,EAAAA,IAAC,IAAA,CAAG,SAAAJ,EAAE,sCAAsC,CAAA,CAAE,EAC9CI,EAAAA,IAAC,KAAA,CAAG,UAAU,wDACX,WAAiB,IAAI,CAACE,EAAOC,UAC3B,KAAA,CAAgB,SAAAD,EAAM,OAAA,EAAdC,CAAsB,CAChC,CAAA,CACH,CAAA,EACF,EAEF,YAAaP,EAAE,eAAe,EAC9B,cAAeA,EAAE,eAAe,EAChC,SAAU,IAAMQ,EAAA,EAChB,WAAY,SAAY,CACtB,GAAI,CACF,MAAMC,EAAWX,CAAQ,CAC3B,OAASQ,EAAO,CACd,QAAQ,MAAMA,CAAK,CACrB,QAAA,CACEE,EAAA,CACF,CACF,EACA,KAAAZ,EACA,aAAec,GAAoB,CACjC,GAAI,CAACA,EAAQ,OAAOF,EAAA,CACtB,CAAA,CAAA,CAGN"}
@@ -0,0 +1,2 @@
1
+ import{c6 as Je,aJ as i,aK as t,c7 as yt,bD as b,b0 as le,c8 as ee,c9 as jt,ca as kt,cb as wt,cc as Nt,bU as ue,aW as Z,aT as D,cd as We,ce as Ct,cf as Ze,aO as Y,cg as Et,bE as Le,ch as St,ci as Dt,cj as At,ck as ze,cl as ie,cm as Te,b5 as Ot,aN as It,bF as Fe,F as Xe,W as Rt,i as Pt,a7 as Vt,ak as Mt,X as Lt,bY as zt,S as Tt}from"./index-DN20Z-2K.js";import{D as Ft}from"./disclosure-BhnV_XS1.js";import{g as $e,C as Qe}from"./dropdown-menu-BzZBDp_E.js";import{F as Ye,a as he,T as qe}from"./message-list-0i5gk_8j.js";import{a as et,b as $t,C as qt}from"./index.esm-BeYGM8vk.js";import{m as Ht}from"./vetra-Bu3fuZWc.js";import{a as Ut,r as _t}from"./hmr-BfH10IPs.js";import"./index-BDI8rK1R.js";const He=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Ue=Je,Bt=(e,r)=>a=>{var n;if(r?.variants==null)return Ue(e,a?.class,a?.className);const{variants:s,defaultVariants:o}=r,d=Object.keys(s).map(l=>{const u=a?.[l],m=o?.[l];if(u===null)return null;const v=He(u)||He(m);return s[l][v]}),c=a&&Object.entries(a).reduce((l,u)=>{let[m,v]=u;return v===void 0||(l[m]=v),l},{}),f=r==null||(n=r.compoundVariants)===null||n===void 0?void 0:n.reduce((l,u)=>{let{class:m,className:v,...h}=u;return Object.entries(h).every(j=>{let[S,y]=j;return Array.isArray(y)?y.includes({...o,...c}[S]):{...o,...c}[S]===y})?[...l,m,v]:l},[]);return Ue(e,d,f,a?.class,a?.className)},Kt=Bt(b("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"),{variants:{variant:{default:"",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",ghost:"hover:bg-accent hover:text-accent-foreground"}},defaultVariants:{variant:"default"}}),Gt=i.forwardRef(({variant:e,className:r,asChild:a=!1,...n},s)=>{const o=a?yt:"button";return t.jsx(o,{className:b(Kt({variant:e,className:r})),ref:s,...n})});var _e=1,Jt=.9,Wt=.8,Zt=.17,ke=.1,we=.999,Xt=.9999,Qt=.99,Yt=/[\\\/_+.#"@\[\(\{&]/,er=/[\\\/_+.#"@\[\(\{&]/g,tr=/[\s-]/,tt=/[\s-]/g;function De(e,r,a,n,s,o,d){if(o===r.length)return s===e.length?_e:Qt;var c=`${s},${o}`;if(d[c]!==void 0)return d[c];for(var f=n.charAt(o),l=a.indexOf(f,s),u=0,m,v,h,j;l>=0;)m=De(e,r,a,n,l+1,o+1,d),m>u&&(l===s?m*=_e:Yt.test(e.charAt(l-1))?(m*=Wt,h=e.slice(s,l-1).match(er),h&&s>0&&(m*=Math.pow(we,h.length))):tr.test(e.charAt(l-1))?(m*=Jt,j=e.slice(s,l-1).match(tt),j&&s>0&&(m*=Math.pow(we,j.length))):(m*=Zt,s>0&&(m*=Math.pow(we,l-s))),e.charAt(l)!==r.charAt(o)&&(m*=Xt)),(m<ke&&a.charAt(l-1)===n.charAt(o+1)||n.charAt(o+1)===n.charAt(o)&&a.charAt(l-1)!==n.charAt(o))&&(v=De(e,r,a,n,l+1,o+2,d),v*ke>m&&(m=v*ke)),m>u&&(u=m),l=a.indexOf(f,l+1);return d[c]=u,u}function Be(e){return e.toLowerCase().replace(tt," ")}function rr(e,r,a){return e=a&&a.length>0?`${e+" "+a.join(" ")}`:e,De(e,r,Be(e),Be(r),0,0,{})}var ce='[cmdk-group=""]',Ne='[cmdk-group-items=""]',ar='[cmdk-group-heading=""]',rt='[cmdk-item=""]',Ke=`${rt}:not([aria-disabled="true"])`,Ae="cmdk-item-select",ne="data-value",nr=(e,r,a)=>rr(e,r,a),at=i.createContext(void 0),ge=()=>i.useContext(at),nt=i.createContext(void 0),Ie=()=>i.useContext(nt),st=i.createContext(void 0),lt=i.forwardRef((e,r)=>{let a=se(()=>{var g,k;return{search:"",value:(k=(g=e.value)!=null?g:e.defaultValue)!=null?k:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),n=se(()=>new Set),s=se(()=>new Map),o=se(()=>new Map),d=se(()=>new Set),c=ot(e),{label:f,children:l,value:u,onValueChange:m,filter:v,shouldFilter:h,loop:j,disablePointerSelection:S=!1,vimBindings:y=!0,...O}=e,I=le(),B=le(),H=le(),L=i.useRef(null),N=pr();re(()=>{if(u!==void 0){let g=u.trim();a.current.value=g,A.emit()}},[u]),re(()=>{N(6,w)},[]);let A=i.useMemo(()=>({subscribe:g=>(d.current.add(g),()=>d.current.delete(g)),snapshot:()=>a.current,setState:(g,k,x)=>{var p,C,E,V;if(!Object.is(a.current[g],k)){if(a.current[g]=k,g==="search")K(),R(),N(1,$);else if(g==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let M=document.getElementById(H);M?M.focus():(p=document.getElementById(I))==null||p.focus()}if(N(7,()=>{var M;a.current.selectedItemId=(M=P())==null?void 0:M.id,A.emit()}),x||N(5,w),((C=c.current)==null?void 0:C.value)!==void 0){let M=k??"";(V=(E=c.current).onValueChange)==null||V.call(E,M);return}}A.emit()}},emit:()=>{d.current.forEach(g=>g())}}),[]),z=i.useMemo(()=>({value:(g,k,x)=>{var p;k!==((p=o.current.get(g))==null?void 0:p.value)&&(o.current.set(g,{value:k,keywords:x}),a.current.filtered.items.set(g,T(k,x)),N(2,()=>{R(),A.emit()}))},item:(g,k)=>(n.current.add(g),k&&(s.current.has(k)?s.current.get(k).add(g):s.current.set(k,new Set([g]))),N(3,()=>{K(),R(),a.current.value||$(),A.emit()}),()=>{o.current.delete(g),n.current.delete(g),a.current.filtered.items.delete(g);let x=P();N(4,()=>{K(),x?.getAttribute("id")===g&&$(),A.emit()})}),group:g=>(s.current.has(g)||s.current.set(g,new Set),()=>{o.current.delete(g),s.current.delete(g)}),filter:()=>c.current.shouldFilter,label:f||e["aria-label"],getDisablePointerSelection:()=>c.current.disablePointerSelection,listId:I,inputId:H,labelId:B,listInnerRef:L}),[]);function T(g,k){var x,p;let C=(p=(x=c.current)==null?void 0:x.filter)!=null?p:nr;return g?C(g,a.current.search,k):0}function R(){if(!a.current.search||c.current.shouldFilter===!1)return;let g=a.current.filtered.items,k=[];a.current.filtered.groups.forEach(p=>{let C=s.current.get(p),E=0;C.forEach(V=>{let M=g.get(V);E=Math.max(M,E)}),k.push([p,E])});let x=L.current;q().sort((p,C)=>{var E,V;let M=p.getAttribute("id"),J=C.getAttribute("id");return((E=g.get(J))!=null?E:0)-((V=g.get(M))!=null?V:0)}).forEach(p=>{let C=p.closest(Ne);C?C.appendChild(p.parentElement===C?p:p.closest(`${Ne} > *`)):x.appendChild(p.parentElement===x?p:p.closest(`${Ne} > *`))}),k.sort((p,C)=>C[1]-p[1]).forEach(p=>{var C;let E=(C=L.current)==null?void 0:C.querySelector(`${ce}[${ne}="${encodeURIComponent(p[0])}"]`);E?.parentElement.appendChild(E)})}function $(){let g=q().find(x=>x.getAttribute("aria-disabled")!=="true"),k=g?.getAttribute(ne);A.setState("value",k||void 0)}function K(){var g,k,x,p;if(!a.current.search||c.current.shouldFilter===!1){a.current.filtered.count=n.current.size;return}a.current.filtered.groups=new Set;let C=0;for(let E of n.current){let V=(k=(g=o.current.get(E))==null?void 0:g.value)!=null?k:"",M=(p=(x=o.current.get(E))==null?void 0:x.keywords)!=null?p:[],J=T(V,M);a.current.filtered.items.set(E,J),J>0&&C++}for(let[E,V]of s.current)for(let M of V)if(a.current.filtered.items.get(M)>0){a.current.filtered.groups.add(E);break}a.current.filtered.count=C}function w(){var g,k,x;let p=P();p&&(((g=p.parentElement)==null?void 0:g.firstChild)===p&&((x=(k=p.closest(ce))==null?void 0:k.querySelector(ar))==null||x.scrollIntoView({block:"nearest"})),p.scrollIntoView({block:"nearest"}))}function P(){var g;return(g=L.current)==null?void 0:g.querySelector(`${rt}[aria-selected="true"]`)}function q(){var g;return Array.from(((g=L.current)==null?void 0:g.querySelectorAll(Ke))||[])}function G(g){let k=q()[g];k&&A.setState("value",k.getAttribute(ne))}function X(g){var k;let x=P(),p=q(),C=p.findIndex(V=>V===x),E=p[C+g];(k=c.current)!=null&&k.loop&&(E=C+g<0?p[p.length-1]:C+g===p.length?p[0]:p[C+g]),E&&A.setState("value",E.getAttribute(ne))}function F(g){let k=P(),x=k?.closest(ce),p;for(;x&&!p;)x=g>0?fr(x,ce):mr(x,ce),p=x?.querySelector(Ke);p?A.setState("value",p.getAttribute(ne)):X(g)}let U=()=>G(q().length-1),te=g=>{g.preventDefault(),g.metaKey?U():g.altKey?F(1):X(1)},ae=g=>{g.preventDefault(),g.metaKey?G(0):g.altKey?F(-1):X(-1)};return i.createElement(ee.div,{ref:r,tabIndex:-1,...O,"cmdk-root":"",onKeyDown:g=>{var k;(k=O.onKeyDown)==null||k.call(O,g);let x=g.nativeEvent.isComposing||g.keyCode===229;if(!(g.defaultPrevented||x))switch(g.key){case"n":case"j":{y&&g.ctrlKey&&te(g);break}case"ArrowDown":{te(g);break}case"p":case"k":{y&&g.ctrlKey&&ae(g);break}case"ArrowUp":{ae(g);break}case"Home":{g.preventDefault(),G(0);break}case"End":{g.preventDefault(),U();break}case"Enter":{g.preventDefault();let p=P();if(p){let C=new Event(Ae);p.dispatchEvent(C)}}}}},i.createElement("label",{"cmdk-label":"",htmlFor:z.inputId,id:z.labelId,style:xr},f),ve(e,g=>i.createElement(nt.Provider,{value:A},i.createElement(at.Provider,{value:z},g))))}),sr=i.forwardRef((e,r)=>{var a,n;let s=le(),o=i.useRef(null),d=i.useContext(st),c=ge(),f=ot(e),l=(n=(a=f.current)==null?void 0:a.forceMount)!=null?n:d?.forceMount;re(()=>{if(!l)return c.item(s,d?.id)},[l]);let u=it(s,o,[e.value,e.children,o],e.keywords),m=Ie(),v=Q(N=>N.value&&N.value===u.current),h=Q(N=>l||c.filter()===!1?!0:N.search?N.filtered.items.get(s)>0:!0);i.useEffect(()=>{let N=o.current;if(!(!N||e.disabled))return N.addEventListener(Ae,j),()=>N.removeEventListener(Ae,j)},[h,e.onSelect,e.disabled]);function j(){var N,A;S(),(A=(N=f.current).onSelect)==null||A.call(N,u.current)}function S(){m.setState("value",u.current,!0)}if(!h)return null;let{disabled:y,value:O,onSelect:I,forceMount:B,keywords:H,...L}=e;return i.createElement(ee.div,{ref:ue(o,r),...L,id:s,"cmdk-item":"",role:"option","aria-disabled":!!y,"aria-selected":!!v,"data-disabled":!!y,"data-selected":!!v,onPointerMove:y||c.getDisablePointerSelection()?void 0:S,onClick:y?void 0:j},e.children)}),lr=i.forwardRef((e,r)=>{let{heading:a,children:n,forceMount:s,...o}=e,d=le(),c=i.useRef(null),f=i.useRef(null),l=le(),u=ge(),m=Q(h=>s||u.filter()===!1?!0:h.search?h.filtered.groups.has(d):!0);re(()=>u.group(d),[]),it(d,c,[e.value,e.heading,f]);let v=i.useMemo(()=>({id:d,forceMount:s}),[s]);return i.createElement(ee.div,{ref:ue(c,r),...o,"cmdk-group":"",role:"presentation",hidden:m?void 0:!0},a&&i.createElement("div",{ref:f,"cmdk-group-heading":"","aria-hidden":!0,id:l},a),ve(e,h=>i.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":a?l:void 0},i.createElement(st.Provider,{value:v},h))))}),or=i.forwardRef((e,r)=>{let{alwaysRender:a,...n}=e,s=i.useRef(null),o=Q(d=>!d.search);return!a&&!o?null:i.createElement(ee.div,{ref:ue(s,r),...n,"cmdk-separator":"",role:"separator"})}),ir=i.forwardRef((e,r)=>{let{onValueChange:a,...n}=e,s=e.value!=null,o=Ie(),d=Q(l=>l.search),c=Q(l=>l.selectedItemId),f=ge();return i.useEffect(()=>{e.value!=null&&o.setState("search",e.value)},[e.value]),i.createElement(ee.input,{ref:r,...n,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":f.listId,"aria-labelledby":f.labelId,"aria-activedescendant":c,id:f.inputId,type:"text",value:s?e.value:d,onChange:l=>{s||o.setState("search",l.target.value),a?.(l.target.value)}})}),cr=i.forwardRef((e,r)=>{let{children:a,label:n="Suggestions",...s}=e,o=i.useRef(null),d=i.useRef(null),c=Q(l=>l.selectedItemId),f=ge();return i.useEffect(()=>{if(d.current&&o.current){let l=d.current,u=o.current,m,v=new ResizeObserver(()=>{m=requestAnimationFrame(()=>{let h=l.offsetHeight;u.style.setProperty("--cmdk-list-height",h.toFixed(1)+"px")})});return v.observe(l),()=>{cancelAnimationFrame(m),v.unobserve(l)}}},[]),i.createElement(ee.div,{ref:ue(o,r),...s,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":c,"aria-label":n,id:f.listId},ve(e,l=>i.createElement("div",{ref:ue(d,f.listInnerRef),"cmdk-list-sizer":""},l)))}),dr=i.forwardRef((e,r)=>{let{open:a,onOpenChange:n,overlayClassName:s,contentClassName:o,container:d,...c}=e;return i.createElement(jt,{open:a,onOpenChange:n},i.createElement(kt,{container:d},i.createElement(wt,{"cmdk-overlay":"",className:s}),i.createElement(Nt,{"aria-label":e.label,"cmdk-dialog":"",className:o},i.createElement(lt,{ref:r,...c}))))}),ur=i.forwardRef((e,r)=>Q(a=>a.filtered.count===0)?i.createElement(ee.div,{ref:r,...e,"cmdk-empty":"",role:"presentation"}):null),gr=i.forwardRef((e,r)=>{let{progress:a,children:n,label:s="Loading...",...o}=e;return i.createElement(ee.div,{ref:r,...o,"cmdk-loading":"",role:"progressbar","aria-valuenow":a,"aria-valuemin":0,"aria-valuemax":100,"aria-label":s},ve(e,d=>i.createElement("div",{"aria-hidden":!0},d)))}),_=Object.assign(lt,{List:cr,Item:sr,Input:ir,Group:lr,Separator:or,Dialog:dr,Empty:ur,Loading:gr});function fr(e,r){let a=e.nextElementSibling;for(;a;){if(a.matches(r))return a;a=a.nextElementSibling}}function mr(e,r){let a=e.previousElementSibling;for(;a;){if(a.matches(r))return a;a=a.previousElementSibling}}function ot(e){let r=i.useRef(e);return re(()=>{r.current=e}),r}var re=typeof window>"u"?i.useEffect:i.useLayoutEffect;function se(e){let r=i.useRef();return r.current===void 0&&(r.current=e()),r}function Q(e){let r=Ie(),a=()=>e(r.snapshot());return i.useSyncExternalStore(r.subscribe,a,a)}function it(e,r,a,n=[]){let s=i.useRef(),o=ge();return re(()=>{var d;let c=(()=>{var l;for(let u of a){if(typeof u=="string")return u.trim();if(typeof u=="object"&&"current"in u)return u.current?(l=u.current.textContent)==null?void 0:l.trim():s.current}})(),f=n.map(l=>l.trim());o.value(e,c,f),(d=r.current)==null||d.setAttribute(ne,c),s.current=c}),s}var pr=()=>{let[e,r]=i.useState(),a=se(()=>new Map);return re(()=>{a.current.forEach(n=>n()),a.current=new Map},[e]),(n,s)=>{a.current.set(n,s),r({})}};function hr(e){let r=e.type;return typeof r=="function"?r(e.props):"render"in r?r.render(e.props):e}function ve({asChild:e,children:r},a){return e&&i.isValidElement(r)?i.cloneElement(hr(r),{ref:r.ref},a(r.props.children)):a(r)}var xr={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};const ct=Z.forwardRef(({className:e,...r},a)=>t.jsx(_,{ref:a,className:b("flex size-full flex-col rounded-md [&_[cmdk-label]]:hidden",e),...r}));ct.displayName=_.displayName;const dt=Z.forwardRef(({wrapperClassName:e,className:r,...a},n)=>t.jsxs("div",{className:b("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",e),"cmdk-input-wrapper":"",children:[t.jsx(D,{name:"Search",size:16,className:b("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")}),t.jsx(_.Input,{ref:n,className:b("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",r),...a})]}));dt.displayName=_.Input.displayName;const Re=Z.forwardRef(({className:e,...r},a)=>t.jsx(_.List,{ref:a,className:b("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",e),...r}));Re.displayName=_.List.displayName;const br=Z.forwardRef((e,r)=>t.jsx(_.Loading,{ref:r,...e}));br.displayName=_.Loading.displayName;const Pe=Z.forwardRef((e,r)=>t.jsx(_.Empty,{ref:r,...e}));Pe.displayName=_.Empty.displayName;const xe=Z.forwardRef(({className:e,...r},a)=>t.jsx(_.Group,{ref:a,className:b("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",e),...r}));xe.displayName=_.Group.displayName;const ye=Z.forwardRef(({className:e,...r},a)=>t.jsx(_.Item,{ref:a,className:b("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",e),...r}));ye.displayName=_.Item.displayName;function de(e,r,a=new Map){if(e===r)return!0;if(e===null||r===null||e===void 0||r===void 0||typeof e!=typeof r)return!1;if(Array.isArray(e)&&Array.isArray(r))return a.get(e)===r?!0:(a.set(e,r),e.length===r.length&&e.every((n,s)=>de(n,r[s],a)));if(typeof e=="object"&&typeof r=="object"&&!Array.isArray(e)&&!Array.isArray(r)){if(a.get(e)===r)return!0;a.set(e,r);const n=Object.keys(e),s=Object.keys(r);return n.length===s.length&&n.every(o=>o in r&&de(e[o],r[o],a))}return!1}const be={trimOnBlur:(e=!0)=>({transformer:r=>r?.trim(),options:{trigger:"blur",if:e}}),lowercaseOnChange:(e=!0)=>({transformer:r=>r?.toLowerCase(),options:{trigger:"change",if:e}}),uppercaseOnChange:(e=!0)=>({transformer:r=>r?.toUpperCase(),options:{trigger:"change",if:e}}),trimOnEnter:(e=!0)=>({transformer:r=>r?.trim(),options:{trigger:"keyDown",if:e}})},vr=(e,r)=>i.forwardRef(({value:a,name:n,showErrorOnBlur:s,showErrorOnChange:o,validators:d,...c},f)=>{const{onChange:l,onBlur:u}=c,{control:m,formState:{errors:v,defaultValues:h},trigger:j,setValue:S,getValues:y}=et(),{submitCount:O}=$t();if(!n)throw new Error(`[Field: ${e.displayName}] The name prop is required.`);const I=[...v[n]?.types?Object.values(v[n].types??[]):[]];I.length===0&&v[n]&&I.push("Invalid value"),i.useEffect(()=>{O>0&&j(n)},[c.required]),i.useEffect(()=>{c.errors&&c.errors.length>0&&j(n)},[n,c.errors,j]);const[B,H]=i.useState(!1);return i.useEffect(()=>{B&&S(n,a),H(!0)},[n,a]),a!==void 0&&!l&&console.warn(`[Field: ${n}] Value prop provided without onChange so it will be ignored. Use disabled/readOnly if you want to prevent changes.`),t.jsx(qt,{control:m,name:n,defaultValue:a??c.defaultValue,disabled:c.disabled,render:({field:{onChange:L,onBlur:N,value:A,...z}})=>{const T=i.useCallback(w=>{s?j(n):N(),u&&u(w)},[N,s]),R=i.useCallback(w=>{if(l)Object.hasOwn(w,"target")?S(n,w.target.value):S(n,w),l(w);else{let P=w;(w instanceof Event||w.target instanceof HTMLElement)&&(P=w.target.value),S(n,P)}o===void 0&&s===void 0?O>0&&j(n):o&&j(n)},[A,o,s,O]),{ref:$}=z,K=w=>{typeof f=="function"?f(w):f&&(f.current=w),$(w)};return t.jsx(e,{...c,...z,value:A,onBlur:T,onChange:R,errors:I,ref:K})},rules:{...c.required?{required:{value:c.required,message:"This field is required"}}:{required:void 0},...c.pattern&&{pattern:{value:new RegExp(c.pattern),message:"This field does not match the required pattern"}},...c.maxLength!==void 0&&c.maxLength>=0?{maxLength:{value:c.maxLength,message:`This field must be at most ${c.maxLength} characters`}}:{maxLength:void 0},...c.minLength!==void 0&&c.minLength>=0?{minLength:{value:c.minLength,message:`This field must be at least ${c.minLength} characters`}}:{minLength:void 0},...c.minValue&&{min:{value:c.minValue,message:`This field must be greater than or equal to ${c.minValue}`}},...c.maxValue&&{max:{value:c.maxValue,message:`This field must be less than or equal to ${c.maxValue}`}},validate:{...c.errors?Object.fromEntries(Array.isArray(c.errors)?c.errors.map((L,N)=>[`_propError${N}`,()=>L]):[]):{},...d!==void 0?Object.fromEntries((Array.isArray(d)?d:[d]).map((L,N)=>[`customValidation${N}`,L])):{}}}})}),ut=({children:e,as:r,className:a})=>{const n=r??"p";return t.jsx(n,{className:b("font-sans text-sm font-normal leading-5 text-gray-600 dark:text-gray-500",a),children:e})},gt=({children:e})=>t.jsx("div",{className:"flex flex-col gap-2",children:e}),yr=e=>typeof e=="string"?t.jsx(D,{name:e,size:16,className:b("text-gray-700 dark:text-gray-400")}):e&&t.jsx(e,{className:b("size-4","text-gray-700 dark:text-gray-400")}),Ge=({options:e=[],selectedValues:r,multiple:a,selectionIcon:n,selectionIconPosition:s,hasAnyIcon:o,toggleOption:d,tabIndex:c})=>t.jsx(t.Fragment,{children:e.map(f=>{const l=r.includes(f.value);return t.jsxs(ye,{tabIndex:c,value:f.label,onSelect:()=>!f.disabled&&d(f.value),disabled:f.disabled,className:b("cursor-pointer","data-[selected=true]:bg-gray-100 dark:data-[selected=true]:bg-gray-900",f.disabled&&"!pointer-events-auto cursor-not-allowed hover:bg-transparent dark:hover:bg-transparent"),role:"option","aria-selected":l,children:[n==="auto"&&(a?t.jsx("div",{className:b("flex size-4 items-center justify-center rounded-md border","border-gray-700 dark:border-gray-400",l&&"bg-gray-900 text-slate-50 dark:bg-gray-400 dark:text-black"),children:l&&t.jsx(D,{name:"Checkmark",size:16})}):t.jsx("div",{className:b("relative size-4 rounded-full border",l?"border-gray-900 dark:border-gray-400":"border-gray-800 dark:border-gray-400","bg-transparent dark:bg-transparent"),children:l&&t.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"})})),n==="checkmark"&&!(s==="right"&&o)&&t.jsx("div",{className:"size-4",children:s==="left"&&l&&t.jsx(D,{name:"Checkmark",size:16,className:"text-gray-900 dark:text-gray-50"})}),yr(f.icon),t.jsx("span",{className:b("flex-1 truncate text-[14px] font-normal leading-4","text-gray-700 dark:text-gray-500",f.disabled&&"text-gray-600 dark:text-gray-600"),children:f.label}),n==="checkmark"&&s==="right"&&t.jsx("div",{className:"size-4",children:l&&t.jsx(D,{name:"Checkmark",size:16,className:"text-gray-900 dark:text-gray-50"})})]},`favorite-${f.value}`)})}),jr=({searchable:e,commandListRef:r,multiple:a,selectedValues:n,selectionIcon:s,selectionIconPosition:o,options:d=[],toggleAll:c,toggleOption:f,favoriteOptions:l=[]})=>{const u=d.filter(h=>!h.disabled),m=d.some(h=>h.icon),v=Q(h=>h.search);return i.useEffect(()=>{r.current?.scrollTo({top:0,behavior:"instant"})},[r,v]),t.jsxs(t.Fragment,{children:[e&&t.jsx(dt,{placeholder:"Search...",onKeyDown:h=>{["ArrowUp","ArrowDown","Enter"].includes(h.key)&&u.length>0||h.stopPropagation()},wrapperClassName:"rounded-t",className:"text-gray-900 dark:text-gray-50"}),t.jsxs(Re,{ref:r,tabIndex:e?void 0:0,children:[t.jsx(Pe,{className:"p-4 text-center text-[14px] font-normal leading-5 text-gray-700 dark:text-gray-400",children:"No results found."}),a&&v===""&&t.jsx(xe,{className:"pb-0",children:t.jsx(ye,{value:"select-all",onSelect:c,disabled:!1,className:b("cursor-pointer","data-[selected=true]:bg-gray-100 dark:data-[selected=true]:bg-gray-900"),role:"option","aria-selected":n.length===u.length,children:t.jsxs("div",{className:"flex w-full items-center gap-2",children:[s==="auto"&&t.jsx("div",{className:b("flex size-4 items-center justify-center rounded-md border","border-gray-700 dark:border-gray-400",n.length===u.length&&"bg-gray-900 text-slate-50 dark:bg-gray-400 dark:text-black"),children:n.length===u.length&&t.jsx(D,{name:"Checkmark",size:16})}),s==="checkmark"&&!(o==="right"&&m)&&t.jsx("div",{className:"size-4",children:o==="left"&&n.length===u.length&&t.jsx(D,{name:"Checkmark",size:16,className:"text-gray-900 dark:text-gray-50"})}),t.jsx("span",{className:"text-[14px] font-semibold leading-4 text-gray-900 dark:text-gray-50",children:n.length===u.length?"Deselect All":"Select All"}),s==="checkmark"&&o==="right"&&t.jsx("div",{className:"ml-auto size-4",children:n.length===u.length&&t.jsx(D,{name:"Checkmark",size:16,className:"text-gray-900 dark:text-gray-50"})})]})})}),t.jsxs(xe,{className:a&&v===""?"pt-0":void 0,children:[t.jsx(Ge,{options:l,selectedValues:n,multiple:a,selectionIcon:s,selectionIconPosition:o,hasAnyIcon:m,toggleOption:f,tabIndex:e?void 0:0}),l.length>0&&t.jsx("div",{className:"my-1 border-b border-gray-300 dark:border-gray-600"}),t.jsx(Ge,{options:d,selectedValues:n,multiple:a,selectionIcon:s,selectionIconPosition:o,hasAnyIcon:m,toggleOption:f,tabIndex:e?void 0:0})]})]})]})},kr=({selectedValues:e,options:r=[],multiple:a,searchable:n,placeholder:s,handleClear:o})=>{const d=c=>typeof c=="string"?t.jsx(D,{name:c,size:16}):c&&t.jsx(c,{className:"size-4"});return e.length===0?t.jsxs("div",{className:b("mx-auto flex w-full items-center",s?"justify-between":"justify-end"),children:[s&&t.jsx("span",{className:"text-[14px] font-normal leading-5 text-gray-600 dark:text-gray-500",children:s}),n?t.jsx(D,{name:"CaretSort",size:16,className:"cursor-pointer text-gray-700 dark:text-gray-400"}):t.jsx(D,{name:"ChevronDown",size:16,className:"cursor-pointer text-gray-700 dark:text-gray-400"})]}):t.jsxs("div",{className:"flex w-full items-center justify-between gap-2",children:[t.jsx("div",{className:b("max-w-full truncate text-gray-900 dark:text-gray-50",!a&&"flex items-center gap-2"),children:e.map((c,f)=>{const l=r.find(u=>u.value===c);return a?t.jsx("span",{className:b("text-[14px] font-normal leading-5",f!==e.length-1&&"mr-1"),children:f!==e.length-1?`${l?.label},`:l?.label},c):t.jsxs(Z.Fragment,{children:[d(l?.icon),t.jsx("span",{className:"truncate text-[14px] font-normal leading-5",children:l?.label})]},c)})}),t.jsxs("div",{className:"flex items-center justify-between gap-2",children:[a&&e.length>0&&t.jsx("div",{onClick:c=>{c.preventDefault(),c.stopPropagation(),o()},className:"size-4 p-0",children:t.jsx(D,{name:"XmarkLight",size:16,className:"cursor-pointer text-gray-700 dark:text-gray-400"})}),n?t.jsx(D,{name:"CaretSort",size:16,className:"cursor-pointer text-gray-700 dark:text-gray-400"}):t.jsx(D,{name:"ChevronDown",size:16,className:"cursor-pointer text-gray-700 dark:text-gray-400"})]})]})};function wr({options:e=[],multiple:r=!1,defaultValue:a,value:n,onChange:s}){const o=i.useRef(!1),d=i.useRef(null),[c,f]=i.useState(!1),[l,u]=i.useState(()=>{const y=n??a??[];return y===""?[]:Array.isArray(y)?y:[y]});i.useEffect(()=>{if(o.current){o.current=!1;return}const y=n??a??[];u(y===""?[]:Array.isArray(y)?y:[y])},[n]);const m=i.useCallback(y=>{f(y)},[]),v=i.useCallback(y=>{o.current=!0;let O;r?O=l.includes(y)?l.filter(I=>I!==y):[...l,y]:(O=l[0]===y?[]:[y],f(!1)),u(O),s?.(r?O:O[0]??"")},[r,l,e,s]),h=i.useCallback(()=>{o.current=!0,u([]),s?.(r?[]:"")},[r,s]),j=i.useCallback(()=>{o.current=!0;const y=e.filter(I=>!I.disabled).map(I=>I.value),O=l.length===y.length?[]:y;u(O),s?.(r?O:O[0])},[e,l,r,s]),S=i.useRef(r);return i.useEffect(()=>{if(S.current!==r){if(S.current=r,!r&&l.length>1){o.current=!0,u([l[0]]),s?.(l[0]);return}l.length>0&&(o.current=!0,s?.(r?[l[0]]:l[0]))}},[r]),{selectedValues:l,isPopoverOpen:c,commandListRef:d,toggleOption:v,handleClear:h,toggleAll:j,handleOpenChange:m}}const Ve=Z.forwardRef(({options:e=[],favoriteOptions:r=[],defaultValue:a,value:n,onChange:s,onBlur:o,id:d,name:c,label:f,required:l,disabled:u,errors:m=[],warnings:v=[],multiple:h,selectionIcon:j="auto",selectionIconPosition:S="left",searchable:y,description:O,placeholder:I,className:B,contentClassName:H,contentAlign:L="start",...N},A)=>{const z=i.useId(),T=d??`${z}-select`,{selectedValues:R,isPopoverOpen:$,commandListRef:K,toggleOption:w,handleClear:P,toggleAll:q,handleOpenChange:G}=wr({options:e,multiple:h,defaultValue:a,value:n,onChange:s}),X=i.useCallback(F=>{$||o?.(F)},[o,$]);return t.jsxs(gt,{children:[f&&t.jsx(Ye,{htmlFor:T,required:l,disabled:u,hasError:m.length>0,inline:!1,onClick:F=>{F.preventDefault(),F.target.control?.focus()},children:f}),t.jsxs(We,{open:$,onOpenChange:F=>{G(F),!F&&document.activeElement?.id!==T&&o?.({target:{}})},children:[t.jsx(Ct,{asChild:!0,children:t.jsx(Gt,{id:T,name:c,type:"button",role:"combobox",onBlur:X,disabled:u,"aria-invalid":m.length>0,"aria-label":f?void 0:h?"Multi select":"Select","aria-required":l,"aria-expanded":$,className:b("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",u&&["!pointer-events-auto cursor-not-allowed bg-gray-50","dark:hover:border-charcoal-700 dark:hover:bg-charcoal-900 hover:border-gray-300 hover:bg-gray-50"],B),...N,ref:A,children:t.jsx(kr,{selectedValues:R,options:[...r,...e],multiple:h,searchable:y,placeholder:I,handleClear:P})})}),t.jsx(Ze,{align:L,onEscapeKeyDown:F=>{F.preventDefault(),G(!1)},className:H,children:t.jsx(ct,{defaultValue:!h&&R[0]?e.find(F=>F.value===R[0])?.label:void 0,children:t.jsx(jr,{favoriteOptions:r,searchable:y,commandListRef:K,multiple:h,selectedValues:R,selectionIcon:j,selectionIconPosition:S,options:e,toggleAll:q,toggleOption:w})})})]}),O&&t.jsx(ut,{children:O}),v.length>0&&t.jsx(he,{messages:v,type:"warning"}),m.length>0&&t.jsx(he,{messages:m,type:"error"})]})}),Nr=vr(Ve);Nr.displayName="SelectField";function ft(...e){return Y(Je(e))}const Cr=ft("flex h-9 w-full rounded-md text-sm font-normal leading-5 text-gray-900 dark:text-gray-50","dark:border-charcoal-700 dark:bg-charcoal-900 border border-gray-300 bg-white","px-3 py-2","font-sans placeholder:text-gray-500 dark:placeholder:text-gray-600","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","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"),je=i.forwardRef(({className:e,type:r,...a},n)=>t.jsx("input",{type:r,className:ft(Cr,e),ref:n,...a}));je.displayName="Input";function Ce(e,r){const a=Object.getOwnPropertyDescriptor(e,"value")?.set,n=Object.getPrototypeOf(e),s=Object.getOwnPropertyDescriptor(n,"value")?.set;a&&a!==s?s?.call(e,r):a?.call(e,r)}function me(e,r,a="blur"){return e.reduce((n,s)=>typeof s=="function"?a==="blur"||a==="all"?s(n):n:(s.options?.trigger??"blur")!==a&&a!=="all"?n:s.options?.if===void 0||s.options.if?s.transformer(n):n,r)}function mt({transformers:e,children:r}){const n=et()?.setValue;return i.useEffect(()=>{const s=r.props.value,o=me(e,s,"all");de(o,s)||(typeof n=="function"?n(r.props.name,o):r.props.onChange?.({target:{value:o}}))},[e,n]),Z.cloneElement(r,{...r.props,onChange:s=>{const o=me(e,s.target.value,"change");o!==s.target.value&&n&&(n(r.props.name,o),Ce(s.target,o)),r.props.onChange?.(s)},onBlur:s=>{r.props.onBlur?.(s);const o=s.target,d=me(e,o.value,"blur");if(!de(d,o.value)){Ce(o,d);const c=new Event("change",{bubbles:!0});o.dispatchEvent(c)}},onKeyDown:s=>{if(r.props.onKeyDown?.(s),s.key==="Enter"){const o=s.target,d=me(e,o.value,"keyDown");if(!de(d,o.value)){Ce(o,d);const c=new Event("change",{bubbles:!0});o.dispatchEvent(c)}}}})}const Er=Z.forwardRef(({id:e,name:r,value:a,className:n,isLoading:s,haveFetchError:o,disabled:d,onChange:c,onBlur:f,onClick:l,selectedOption:u,optionsLength:m,handleOpenChange:v,onKeyDown:h,onMouseDown:j,placeholder:S,hasError:y,label:O,required:I,isPopoverOpen:B,maxLength:H,handlePaste:L,onPaste:N,...A},z)=>{const[T,R]=i.useState(!1),$=Et("(hover: hover) and (pointer: fine)"),K=i.useMemo(()=>[be.trimOnBlur(),be.trimOnEnter()],[]);return t.jsxs("div",{className:b("group relative"),children:[t.jsx(mt,{transformers:K,children:t.jsx(_.Input,{asChild:!0,children:t.jsx(je,{id:e,name:r,value:a,className:b("pr-9",n),disabled:d,onChange:c,onBlur:f,onClick:w=>{const P=w.target;!(s||o)&&!u&&P.value!==""&&v?.(!0),l?.(w)},onKeyDown:w=>{h?.(w);const P=["ArrowUp","ArrowDown","Enter"].includes(w.key);if(w.key==="Enter"&&B&&m===0){v?.(!1),w.preventDefault();return}P&&B&&m>0||w.stopPropagation()},onMouseDown:w=>{const P=w.target;P.contains(document.activeElement)||requestAnimationFrame(()=>{P.select()}),j?.(w)},onPaste:w=>{L?.(w),N?.(w)},placeholder:S,"aria-invalid":y,"aria-label":O?void 0:"Id Autocomplete","aria-required":I,"aria-expanded":B,maxLength:H,...A,ref:z})})}),t.jsxs("div",{className:b("absolute right-3 top-1/2 flex size-4 -translate-y-1/2 items-center",!s&&!o&&!u&&"pointer-events-none"),children:[s&&t.jsx(D,{name:"Reload",size:16,className:b("animate-spin text-gray-500 dark:text-gray-600")}),o&&t.jsx(Le,{children:t.jsx(qe,{content:"Network error!",children:t.jsx(D,{name:"Error",size:16,className:b("text-red-900")})})}),u&&!s&&!o&&t.jsx(Le,{children:t.jsx(qe,{content:"Copied!",open:T,triggerAsChild:!0,children:t.jsx("button",{type:"button",onClick:()=>{navigator.clipboard.writeText(u.value).then(()=>{R(!0),setTimeout(()=>R(!1),2e3)}).catch(w=>{console.error("Failed to copy value: ",w)})},className:b("focus-visible:outline-none [&_svg]:pointer-events-none",$&&"opacity-0 transition-opacity duration-500 group-hover:opacity-100"),children:t.jsx(D,{name:"Copy",size:16,className:b("text-gray-500 dark:text-gray-600")})})})})]})]})}),Sr=({customIcon:e,asPlaceholder:r})=>typeof e=="string"?t.jsx(D,{name:e,size:24,className:b("shrink-0",r?"text-gray-400 dark:text-gray-700":"text-gray-900 dark:text-gray-300")}):Z.isValidElement(e)?t.jsx("div",{className:"size-6 shrink-0 overflow-hidden",children:e}):null,Dr=({isLoadingSelectedOption:e,handleFetchSelectedOption:r,isFetchSelectedOptionSync:a,value:n})=>t.jsx("div",{children:t.jsx("button",{type:"button",disabled:e||a,onClick:()=>{!e&&!a&&r(n)},className:b("mt-0.5 focus-visible:outline-none","disabled:pointer-events-none [&_svg]:pointer-events-none"),"aria-label":e?"Loading":a?"Success":"Reload",children:t.jsx(D,{name:a?"Checkmark":"Reload",size:16,className:b("text-gray-500 dark:text-gray-600",e&&"animate-spin",a&&"animate-in fade-in duration-500")})})}),Oe=({variant:e="withValue",icon:r,title:a="Title not available",path:n="Path not available",value:s,description:o="Description not available",asPlaceholder:d,showValue:c=!0,isLoadingSelectedOption:f,handleFetchSelectedOption:l,isFetchSelectedOptionSync:u,className:m,placeholderIcon:v="PowerhouseLogoSmall",...h})=>{const j=()=>t.jsx("div",{className:b("flex w-full items-center"),children:t.jsx("span",{className:b("truncate text-xs leading-5",d?"text-gray-400 dark:text-gray-700":"text-gray-500 dark:text-gray-600"),children:s})}),S=(y=!0)=>t.jsxs("div",{className:b("flex w-full flex-col gap-1"),children:[t.jsxs("div",{className:b("flex gap-2"),children:[t.jsx(Sr,{customIcon:d?v:r,asPlaceholder:d}),t.jsxs("div",{className:b("flex min-w-0 grow flex-col gap-[-2px]"),children:[t.jsx("span",{className:b("truncate text-sm font-bold leading-5",d?"text-gray-400 dark:text-gray-700":"text-gray-900 dark:text-gray-300"),children:a}),!c&&typeof n=="object"?t.jsx("a",{href:n.url,target:"_blank",rel:"noopener noreferrer",className:b("truncate text-xs leading-5 text-blue-900 hover:underline focus-visible:outline-none"),children:n.text}):t.jsx("span",{className:b("truncate text-xs leading-5",d?"text-gray-400 dark:text-gray-700":"text-gray-500 dark:text-gray-600"),children:typeof n=="object"?n.text:n})]}),d===!1&&l&&t.jsx(Dr,{isLoadingSelectedOption:f,handleFetchSelectedOption:l,isFetchSelectedOptionSync:u,value:s})]}),c&&t.jsx("div",{className:b("flex max-w-full items-center"),children:t.jsx("span",{className:b("truncate text-xs leading-5",d?"text-gray-400 dark:text-gray-700":"text-gray-500 dark:text-gray-600"),children:s})}),y&&t.jsx("div",{className:b("flex flex-col"),children:t.jsx("p",{className:b("line-clamp-2 text-xs leading-5",d?"text-gray-400 dark:text-gray-700":"text-gray-900 dark:text-gray-300"),children:o})}),y&&"agentType"in h&&typeof h.agentType=="string"&&t.jsx("div",{className:b("flex max-w-full items-center justify-end"),children:t.jsx("span",{className:b("truncate text-xs leading-5",d?"text-gray-400 dark:text-gray-700":"text-gray-500 dark:text-gray-600"),children:h.agentType})})]});return t.jsxs("div",{className:b("w-full max-w-full rounded-md bg-transparent px-3 pb-2",e==="withValue"?"pt-2":"pt-3",m),children:[e==="withValue"&&j(),e==="withValueAndTitle"&&S(!1),e==="withValueTitleAndDescription"&&S()]})},Ar=({variant:e,commandListRef:r,selectedValue:a,options:n=[],toggleOption:s,renderOption:o,previewPlaceholder:d})=>{const c=Q(l=>l.search),f=d||{value:"value not available",title:"Title not available",path:"Path not available",description:"Description not available"};return i.useEffect(()=>{r?.current?.scrollTo({top:0,behavior:"instant"})},[r,c]),t.jsxs(Re,{ref:r,children:[t.jsx(Pe,{className:b("h-full p-1"),children:o?o(f,{asPlaceholder:!0,showValue:!0,className:b("pb-0")}):t.jsx(Oe,{variant:e,icon:f.icon,title:f.title,path:f.path,value:f.value,description:f.description,asPlaceholder:!0,className:b("pb-0")})}),t.jsx(xe,{className:b("px-1"),children:n.map(l=>{const u=a===l.value;return t.jsx(ye,{value:l.value,onSelect:()=>s?.(l.value),className:b("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":u,children:o?o(l,{asPlaceholder:!1,showValue:!0}):t.jsx(Oe,{variant:e,...l})},l.value)})})]})},Or=i.createContext({}),Ir=()=>i.useContext(Or);function Rr({autoComplete:e,defaultValue:r,value:a,isOpenByDefault:n,initialOptions:s,onChange:o,onBlur:d,fetchOptions:c,fetchSelectedOption:f}){const l=Ir(),u=i.useRef(!1),m=i.useRef(!1),v=i.useRef(null),[h,j]=i.useState(n??!1),[S,y]=i.useState(s??[]),[O,I]=i.useState(!1),[B,H]=i.useState(!1),[L,N]=i.useState(!1),[A,z]=i.useState(a??r??""),[T,R]=i.useState(void 0),[$,K]=i.useState(""),[w,P]=i.useState(!1),q=i.useCallback(()=>{N(!1),I(!1),H(!1),j(!1)},[]),G=St(i.useCallback(x=>{if(!(!e||!c)){if(x===""){q(),y([]),z(""),R(void 0);return}N(!1),I(!0);try{const p=c(x,l);Promise.resolve(p).then(C=>{y(C);const E=C.find(V=>V.value===x);E?(R(E),j(!1)):(R(void 0),j(!0)),I(!1)}).catch(()=>{N(!0),I(!1)})}catch{N(!0),I(!1)}}},[q,e,c,l])),X=i.useCallback(x=>{if(!(!e||!f)){H(!0);try{const p=f(x),C=p instanceof Promise;Promise.resolve(p).then(E=>{E?(R(E),y(V=>{const M=V.findIndex(J=>J.value===x);if(M!==-1){const J=[...V];return J[M]=E,J}return V})):(q(),y([]),z(""),R(void 0)),H(!1),C||(P(!0),setTimeout(()=>{P(!1)},1500))}).catch(()=>{H(!1)})}catch{H(!1)}}},[q,e,f]),F=i.useCallback(x=>{x||K(S[0]?.value??""),j(x)},[S]),U=i.useCallback(x=>{u.current=!1,m.current=!0,z(x),R(S.find(p=>p.value===x)),q(),o?.(x)},[o,q,S]),te=i.useCallback(x=>{const p=x.target.value;u.current=!0,z(p),R(void 0),o?.(p)},[o]),ae=i.useCallback(x=>{K(x)},[]),g=i.useCallback(x=>{h||d?.(x)},[d,h]),k=i.useCallback(x=>{const p=x.clipboardData.getData("text"),C=p.trim();if(p!==C){x.preventDefault();const E=x.currentTarget,V=E.selectionStart||0,M=E.selectionEnd||0,J=E.value,oe=J.substring(0,V)+C+J.substring(M);o?.(oe),requestAnimationFrame(()=>{const fe=V+C.length;E.setSelectionRange(fe,fe),G(oe)})}else p===A&&G(A)},[A,G,o]);return i.useEffect(()=>{e?u.current&&G(A):(q(),y([]),z(""),R(void 0))},[e,A,G,q]),i.useEffect(()=>{m.current||(u.current=!1,z(a??r??""),R(void 0)),m.current=!1},[a]),i.useEffect(()=>{if(s?.length&&A){const x=s.find(p=>p.value===A);x&&R(x)}},[]),{selectedValue:A,selectedOption:T,isPopoverOpen:h,commandListRef:v,options:S,isLoading:O,isLoadingSelectedOption:B,haveFetchError:L,commandValue:$,isFetchSelectedOptionSync:w,toggleOption:U,handleOpenChange:F,onTriggerBlur:g,handleChange:te,handleCommandValue:ae,handleFetchSelectedOption:X,handlePaste:k}}const pt=Z.forwardRef(({id:e,name:r,className:a,label:n,description:s,value:o,defaultValue:d,disabled:c,placeholder:f,required:l,errors:u,warnings:m,onChange:v,onBlur:h,onClick:j,onKeyDown:S,onMouseDown:y,autoComplete:O=!0,variant:I="withValue",maxLength:B,fetchOptionsCallback:H,fetchSelectedOptionCallback:L,isOpenByDefault:N,initialOptions:A,renderOption:z,previewPlaceholder:T,...R},$)=>{const K=i.useId(),w=e??`${K}-id-autocomplete`,P=i.useRef(null),q=W=>{P.current=W,typeof $=="function"?$(W):$&&($.current=W)},G=Array.isArray(m)&&m.length>0,X=Array.isArray(u)&&u.length>0,{selectedValue:F,selectedOption:U,isPopoverOpen:te,commandListRef:ae,options:g,isLoading:k,isLoadingSelectedOption:x,haveFetchError:p,commandValue:C,isFetchSelectedOptionSync:E,toggleOption:V,handleOpenChange:M,onTriggerBlur:J,handleChange:oe,handleCommandValue:fe,handleFetchSelectedOption:Me,handlePaste:ht}=Rr({autoComplete:O,defaultValue:d,value:o,isOpenByDefault:N,initialOptions:A,onChange:v,onBlur:h,fetchOptions:H,fetchSelectedOption:L}),xt=W=>{V(W),P.current?.focus()},bt=I==="withValueAndTitle"||I==="withValueTitleAndDescription",vt=i.useMemo(()=>[be.trimOnBlur(),be.trimOnEnter()],[]);return t.jsxs(gt,{children:[!!n&&t.jsx(Ye,{htmlFor:w,disabled:c,hasError:X,required:l,onClick:W=>{W.preventDefault(),W.target.control?.focus()},children:n}),O&&H?t.jsx(We,{open:te,onOpenChange:M,children:t.jsxs(_,{shouldFilter:!1,value:C,onValueChange:fe,className:b("dark:bg-charcoal-900 bg-gray-100"),children:[t.jsx(Dt,{asChild:!0,children:t.jsx(Er,{id:w,name:r,value:F,className:a,isLoading:k,haveFetchError:p,disabled:c,onChange:oe,onBlur:J,onClick:j,selectedOption:U,optionsLength:g.length,handleOpenChange:M,onKeyDown:S,onMouseDown:y,placeholder:f,hasError:X,label:n,required:l,isPopoverOpen:te,maxLength:B,handlePaste:ht,...R,ref:q})}),bt&&(z?z(U===void 0&&T?{...T}:{...U,value:U?.value??""},{asPlaceholder:U===void 0,showValue:!1,isLoadingSelectedOption:x,handleFetchSelectedOption:L?Me:void 0,isFetchSelectedOptionSync:E,className:b("rounded-t-none pt-2")}):t.jsx(Oe,{variant:I,icon:U?.icon??T?.icon,title:U?.title??T?.title,path:U?.path??T?.path,value:U?.value??T?.value??"",description:U?.description??T?.description,asPlaceholder:U===void 0,showValue:!1,isLoadingSelectedOption:x,handleFetchSelectedOption:L?Me:void 0,isFetchSelectedOptionSync:E,className:b("rounded-t-none pt-2")})),t.jsx(Ze,{align:"start",onOpenAutoFocus:W=>W.preventDefault(),onInteractOutside:W=>{W.target instanceof Element&&W.target.id===w&&W.preventDefault()},children:t.jsx(Ar,{variant:I,commandListRef:ae,selectedValue:F,options:g,toggleOption:xt,renderOption:z,previewPlaceholder:T})})]})}):t.jsx(mt,{transformers:vt,children:t.jsx(je,{id:w,name:r,value:F,className:a,disabled:c,onChange:oe,onBlur:h,onClick:j,onMouseDown:y,placeholder:f,"aria-invalid":X,"aria-label":n?void 0:"Id Autocomplete","aria-required":l,maxLength:B,...R,ref:q})}),!!s&&t.jsx(ut,{children:s}),G&&t.jsx(he,{messages:m,type:"warning"}),X&&t.jsx(he,{messages:u,type:"error"})]})});pt.displayName="IdAutocomplete";const Pr=[/^@powerhousedao\/.+$/,"document-drive","document-model"],Vr=At({version:ie({message:"Missing version field in package.json"}),dependencies:ze(ie(),ie()).nullable(),devDependencies:ze(ie(),ie()).nullable()}).refine(e=>e.dependencies!=null||e.devDependencies!=null,"package.json must have either dependencies or devDependencies").transform(e=>{const r={...e.dependencies,...e.devDependencies};return{version:e.version,dependencies:Object.fromEntries(Object.entries(r).filter(([a])=>Pr.some(n=>typeof n=="string"?n===a:n.test(a))))}});function Mr(e){const r=Vr.safeParse(e);return r.success?r.data:(console.error("Package.json validation failed:",r.error.format()),!1)}function Lr(e){const[r,a]=i.useState(!1),{packageJson:n,phCliVersion:s}=e,o=Mr(n);return o?t.jsx(Ft,{isOpen:r,onOpenChange:()=>a(!r),title:`App version: ${o.version}`,toggleClassName:"text-gray-900 text-sm",children:t.jsxs("ul",{className:"text-sm text-gray-600",children:[Object.entries(o.dependencies).map(([d,c])=>t.jsxs("li",{className:"my-1 flex justify-between pr-1",children:[t.jsxs("span",{children:[d.replace("@powerhousedao/",""),":"]}),t.jsx("span",{className:"font-normal",children:c})]},d)),s&&t.jsxs("li",{className:"my-1 flex justify-between pr-1",children:[t.jsx("span",{children:"@powerhousedao/ph-cli:"}),t.jsx("span",{className:"font-normal",children:s})]},"ph-cli")]})}):(console.error("Failed to validate package.json data"),null)}function zr(e){const{packageJson:r,phCliVersion:a}=e;return t.jsxs("div",{className:"bg-white p-3",children:[t.jsx("h2",{className:"font-semibold",children:"About"}),t.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."}),t.jsx("div",{className:"my-4",children:t.jsx(Lr,{packageJson:r,phCliVersion:a})})]})}function Tr(e){const{className:r,...a}=e;return t.jsxs("div",{className:b("h-full rounded-lg bg-white p-3",r),children:[t.jsx("h2",{className:"mb-4 font-semibold",children:"Modify Drives"}),t.jsx(Fr,{...a}),t.jsx("h2",{className:"my-4 font-semibold",children:"Local Storage"}),t.jsx(Hr,{...a})]})}function Fr(e){const{className:r,...a}=e;return t.jsx("div",{className:r,children:t.jsx($r,{...a})})}function $r(e){const{className:r,...a}=e;return t.jsx("div",{className:r,children:e.drives.map(n=>t.jsx(qr,{drive:n,...a},n.header.id))})}function qr(e){const{drive:r,className:a,onDeleteDrive:n}=e,[s,o]=i.useState(!1),d=t.jsx(D,{name:"Hdd",size:16,className:"flex-none"}),c=t.jsx(D,{name:"Server",size:16,className:"flex-none"}),f=r.state.global.icon?t.jsx("img",{alt:"drive icon",className:"size-4 flex-none object-contain",src:r.state.global.icon}):t.jsx(D,{name:"Server",size:16,className:"flex-none"});function l(){const m=$e(r);return m==="PUBLIC"?f:m==="CLOUD"?c:d}const u=l();return t.jsxs("div",{className:b("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",a),children:[u,t.jsxs("div",{children:[t.jsx("span",{className:"block text-sm font-medium leading-[18px]",children:Te(r.header.name)}),t.jsxs("div",{className:"flex items-baseline gap-x-2 leading-[18px]",children:[t.jsxs("span",{className:"text-sm text-gray-600",children:[Te($e(r))," App"]}),t.jsxs("a",{href:"https://www.powerhouse.inc/",target:"_blank",rel:"noopener noreferrer",className:"group flex items-center gap-x-2 text-sm text-slate-500 transition-colors hover:text-[#9896FF]",children:["By Powerhouse",t.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:t.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"})})]})]})]}),t.jsx(Qe,{items:[{id:"delete-drive",label:"Delete",icon:t.jsx(D,{name:"Trash"}),className:"text-red-900"}],onItemClick:m=>{m==="delete-drive"&&n(r)},onOpenChange:o,open:s,children:t.jsx("button",{className:"group ml-auto flex-none",onClick:m=>{m.stopPropagation(),o(!0)},children:t.jsx(D,{className:"text-gray-600 group-hover:text-gray-900",name:"VerticalDots",size:16})})})]})}function Hr(e){const{onClearStorage:r}=e;return t.jsx("div",{children:t.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:r,children:["Clear Storage ",t.jsx(D,{name:"Trash",size:16})]})})}function Ur(e){const{className:r,...a}=e;return t.jsx("div",{className:Y("rounded-lg p-3",r),children:t.jsx(_r,{...a})})}function _r(e){const{documentModelEditor:r,setDocumentModelEditor:a,documentModelEditorOptions:n,className:s}=e;return t.jsxs("div",{children:[t.jsx("h3",{className:"mb-4 font-semibold text-gray-900",children:"Default Editor Selection"}),t.jsx(Ve,{className:Y("min-w-36 max-w-fit",s),name:"default-editor",required:!0,value:r,options:n,multiple:!1,onChange:o=>a(o)})]})}const Br={npm:{icon:"Npm"},github:{icon:"Github",size:28},local:{icon:"Hdd"}},Kr=({packageName:e,provider:r})=>{const a=r&&Br[r];return t.jsxs("div",{className:"flex w-full items-center justify-between px-2 py-1",children:[t.jsx("p",{className:"font-medium",children:e}),a&&t.jsx(D,{name:a.icon,size:a.size})]})},Gr=e=>{const{onInstall:r,packageOptions:a,className:n}=e,[s,o]=i.useState(""),[d,c]=i.useState(!1),[f,l]=i.useState(),u=i.useCallback(()=>{const j=r(s);j?(c(!0),j.then(()=>o("")).catch(l).finally(()=>c(!1))):(o(""),l(void 0))},[r,s]),m=i.useCallback(j=>{o(j.target.value)},[]),v=f?typeof f=="string"?f:f instanceof Error?f.message:f:" ",h=i.useMemo(()=>{const j=a?.map(S=>({...S,value:S.packageName}));return a?.length?{autoComplete:!0,initialOptions:j,fetchOptionsCallback:S=>j?.filter(y=>y.packageName.toLowerCase().includes(S.toLowerCase()))??[],renderOption:S=>t.jsx(Kr,{...S})}:{autoComplete:!1}},[a]);return t.jsxs("div",{className:n,children:[t.jsx("h3",{className:"mb-4 font-semibold text-gray-900",children:"Install Package"}),t.jsxs("div",{className:"flex items-center gap-4",children:[a?.length?t.jsx(pt,{...h,onChange:o}):t.jsx(je,{name:"package",className:"max-w-xs text-gray-700",value:s,onChange:m,onSubmit:u,disabled:d}),t.jsx(Ot,{className:"h-9 rounded-md text-sm",onClick:u,disabled:d,children:"Install"})]}),t.jsx("p",{className:"mb-3 ml-2 h-3 text-sm text-red-800",children:v})]})},pe=({label:e,value:r})=>t.jsxs("div",{className:"flex items-start gap-2 text-sm",children:[t.jsxs("p",{className:"text-gray-600",children:[e,":"]}),t.jsx("p",{className:"text-gray-600",children:r})]}),Jr=e=>{const{package:{name:r,description:a,category:n,publisher:s,publisherUrl:o,modules:d,id:c,removable:f},mutable:l,onUninstall:u,className:m}=e,[v,h]=i.useState(!1);return t.jsxs("li",{className:Y("relative flex flex-col items-start rounded-md border border-gray-200 p-3 text-sm leading-5 shadow-sm",m),children:[t.jsx("h3",{className:"font-semibold text-gray-900",children:r}),t.jsx(pe,{label:"Description",value:a}),t.jsx(pe,{label:"Category",value:n}),t.jsx(pe,{label:"Publisher",value:s}),t.jsx(pe,{label:"Publisher URL",value:t.jsx("a",{className:"underline",href:o,children:o})}),t.jsx("p",{className:"text-sm text-gray-600",children:"Modules included:"}),t.jsx("ul",{className:"list-disc pl-5",children:d.map(j=>t.jsx("li",{children:t.jsx("span",{className:"text-gray-600",children:j})},j))}),l&&f&&t.jsx(Qe,{items:[{id:"uninstall",label:"Uninstall",icon:t.jsx(D,{name:"Trash"}),className:"text-red-900"}],onItemClick:j=>{j==="uninstall"&&u(c)},onOpenChange:h,open:v,children:t.jsx("button",{className:"group absolute right-3 top-3",onClick:j=>{j.stopPropagation(),h(!0)},children:t.jsx(D,{className:"text-gray-600 group-hover:text-gray-900",name:"VerticalDots"})})})]})},Wr=e=>{const{className:r,packages:a,onUninstall:n,mutable:s,...o}=e,[d,c]=i.useState();i.useLayoutEffect(()=>{const l=()=>{const m=window.innerHeight-516;c(Math.max(200,m))};return l(),window.addEventListener("resize",l),()=>window.removeEventListener("resize",l)},[]);const f=i.useCallback(l=>{n(l)},[n]);return t.jsxs("div",{...o,className:Y("flex flex-col items-stretch overflow-hidden",r),style:{maxHeight:d},children:[t.jsx("h3",{className:"mb-4 font-semibold text-gray-900",children:"Installed Packages"}),t.jsx("div",{className:"flex-1 overflow-y-auto pr-2",children:t.jsx("ul",{className:"flex flex-col items-stretch gap-4 pr-2",children:a.map(l=>t.jsx(Jr,{package:l,onUninstall:f,mutable:s},l.id))})})]})},Zr=e=>{const{reactorOptions:r,reactor:a,onReactorChange:n,...s}=e,o=i.useCallback(d=>{n(Array.isArray(d)?d.at(-1):d)},[n]);return t.jsxs("div",{...s,children:[t.jsx("h3",{className:"mb-4 font-semibold text-gray-900",children:"Select Reactor"}),t.jsx(Ve,{className:"min-w-36 max-w-fit",name:"reactor",required:!0,value:a,options:r,multiple:!1,onChange:o})]})},Xr=e=>{const{className:r,reactorOptions:a,reactor:n,onReactorChange:s,onInstall:o,packages:d,onUninstall:c,mutable:f,packageOptions:l,...u}=e,m=i.useMemo(()=>l?.filter(v=>!d.find(h=>h.name===v.packageName)),[d,l]);return t.jsxs("div",{...u,className:Y("flex h-full flex-1 flex-col rounded-lg p-3",r),children:[t.jsx(Zr,{reactor:n,reactorOptions:a,onReactorChange:s,className:"mb-4"}),f&&t.jsx(Gr,{onInstall:o,packageOptions:m}),t.jsx(Wr,{packages:d,onUninstall:c,mutable:f})]})};function Qr(e){const{title:r,overlayProps:a,contentProps:n,onOpenChange:s,tabs:o,defaultTab:d,...c}=e,[f,l]=i.useState(d??o.at(0)?.id),u=o.map(h=>t.jsx("button",{type:"button",onClick:()=>l(h.id),children:t.jsxs("div",{className:Y("flex h-9 w-48 cursor-pointer items-center gap-x-2 rounded-md pl-3 hover:bg-slate-50",f===h.id?"bg-slate-50":"bg-transparent"),children:[h.icon,t.jsx("span",{children:h.label})]})},h.id)),v=o.find(h=>h.id===f)?.content;return t.jsxs(It,{contentProps:{...n,className:Y("min-h-full w-full max-w-4xl rounded-xl",n?.className),style:{...n?.style,boxShadow:"0px 0px 16px 4px rgba(0, 0, 0, 0.04), 0px 33px 32px -16px rgba(0, 0, 0, 0.10)"}},onOpenChange:s,overlayProps:{...a,className:Y("py-28",a?.className)},...c,children:[t.jsxs("div",{className:"flex justify-between border-b border-slate-50 p-4",children:[t.jsx("h1",{className:"text-center text-xl font-semibold",children:r}),t.jsx("button",{type:"button",className:"flex size-6 items-center justify-center rounded-md outline-none",onClick:()=>s?.(!1),children:t.jsx(D,{name:"XmarkLight",size:24})})]}),t.jsxs("div",{className:"flex flex-1",children:[t.jsx("div",{className:"flex flex-col gap-y-1 p-3 pt-6",children:u}),t.jsx("div",{className:"m-6 flex h-full flex-1 flex-col overflow-hidden rounded-lg border border-slate-50",children:typeof v=="function"?t.jsx(v,{}):v})]})]})}const Yr="@powerhousedao/connect",ea="Powerhouse-Connect",ta="6.0.0-dev.53",ra="Powerhouse Connect",aa="dist/index.html",na="module",sa={node:">=24.0.0"},la=["dist","lib","nginx.conf","nginx.sh","scripts","assets","public","heroku",".env","./src/index.css","./package.copy.json"],oa={".":{source:"./src/index.ts",import:"./lib/src/index.js",types:"./lib/src/index.d.ts"},"./package.json":"./package.copy.json","./main.js":{source:"./src/main.tsx",import:"./lib/src/main.js",types:"./lib/src/main.d.ts"},"./*.js":{source:"./src/*.ts",import:"./lib/src/*.js",types:"./lib/src/*.d.ts"},"./components":{source:"./src/components/index.ts",import:"./lib/src/components/index.js",types:"./lib/src/components/index.d.ts"},"./pages":{source:"./src/pages/index.ts",import:"./lib/src/pages/index.js",types:"./lib/src/pages/index.d.ts"},"./services":{source:"./src/services/index.ts",import:"./lib/src/services/index.js",types:"./lib/src/services/index.d.ts"},"./context":{source:"./src/context/index.ts",import:"./lib/src/context/index.js",types:"./lib/src/context/index.d.ts"},"./hooks":{source:"./src/hooks/index.ts",import:"./lib/src/hooks/index.js",types:"./lib/src/hooks/index.d.ts"},"./store":{source:"./src/store/index.ts",import:"./lib/src/store/index.js",types:"./lib/src/store/index.d.ts"},"./utils":{source:"./src/utils/index.ts",import:"./lib/src/utils/index.js",types:"./lib/src/utils/index.d.ts"},"./config":{source:"./src/connect.config.ts",import:"./lib/src/connect.config.js",types:"./lib/src/connect.config.d.ts"},"./i18n":{source:"./src/i18n/index.ts",import:"./lib/src/i18n/index.js",types:"./lib/src/i18n/index.d.ts"},"./custom.d.ts":"./lib/custom.d.ts","./style.css":"./lib/style.css","./assets/*.mp4":"./assets/*.mp4","./assets/*.png":"./assets/*.png","./assets/*.svg":"./assets/*.svg","./assets/*.jpg":"./assets/*.jpg","./assets/*.jpeg":"./assets/*.jpeg","./assets/*.gif":"./assets/*.gif","./assets/*.webp":"./assets/*.webp","./assets/*.avif":"./assets/*.avif","./public/icon.ico":"./public/icon.ico"},ia=["lib/src/main.js","src/main.tsx"],ca="AGPL-3.0-only",da="powerhouse.inc",ua={type:"git",url:"https://github.com/powerhouse-inc/powerhouse"},ga={url:"https://github.com/powerhouse-inc/powerhouse/issues"},fa="https://github.com/powerhouse-inc/powerhouse#readme",ma={tsc:"tsc",lint:"eslint",test:"vitest --run",postinstall:"cp ./package.json ./package.copy.json",dev:"vite dev","build:css":"pnpm exec tailwindcss -i ./src/index.css -o ./lib/style.css","build:vite":"vite build","build:debug":"PH_DEBUG_BUILD=true vite build",preview:"vite preview","cy:open":"cypress open","docker:build":"docker build -f ./Dockerfile --tag connect-test-dev --build-arg TAG=dev .","docker:run":"docker run -it -p 4000:4000 -v $(realpath ../../../monorepo):/monorepo -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf.template -e PH_USE_LOCAL=true -e PH_CONNECT_BASE_PATH=/develop/powerhouse/connect -e PORT=4000 connect-test-dev"},pa={"@electric-sql/pglite":"catalog:","@electric-sql/pglite-react":"catalog:","@electric-sql/pglite-tools":"catalog:","@openfeature/core":"^1.9.1","@openfeature/web-sdk":"^1.6.2","@powerhousedao/builder-tools":"workspace:*","@powerhousedao/common":"workspace:*","@powerhousedao/config":"workspace:*","@powerhousedao/design-system":"workspace:*","@powerhousedao/document-engineering":"catalog:","@powerhousedao/reactor":"workspace:*","@powerhousedao/reactor-browser":"workspace:*","@powerhousedao/shared":"workspace:","@renown/sdk":"workspace:*","@sentry/browser":"^10.17.0","@sentry/react":"^10.17.0","@sentry/vite-plugin":"^4.3.0","@tailwindcss/vite":"catalog:","@types/cypress":"^1.1.6","@types/node":"catalog:","@types/react":"catalog:","@types/react-dom":"catalog:","@types/wicg-file-system-access":"^2023.10.7","@vitejs/plugin-react":"catalog:",cypress:"^14.5.4","document-drive":"workspace:*","document-model":"workspace:*","fast-deep-equal":"^3.1.3",graphql:"catalog:","graphql-request":"catalog:",i18next:"^25.5.3",kysely:"catalog:","kysely-pglite-dialect":"catalog:",react:"catalog:","react-dom":"catalog:","react-error-boundary":"^4.0.11","react-hotkeys-hook":"^4.6.2","react-i18next":"^16.0.0","react-router-dom":"^6.11.2","tailwind-merge":"catalog:",tailwindcss:"catalog:",vite:"catalog:","vite-bundle-analyzer":"^1.3.6","vite-plugin-html":"catalog:","vite-plugin-node-polyfills":"catalog:","vite-plugin-svgr":"catalog:",zod:"catalog:"},ha={"@tailwindcss/cli":"catalog:"},xa={name:Yr,productName:ea,version:ta,description:ra,main:aa,type:na,engines:sa,files:la,exports:oa,sideEffects:ia,license:ca,author:da,repository:ua,bugs:ga,homepage:fa,scripts:ma,dependencies:pa,devDependencies:ha},ba=()=>t.jsx(zr,{packageJson:xa,phCliVersion:typeof Fe.phCliVersion=="string"?Fe.phCliVersion:void 0}),va=()=>{const e=Xe(),r=async n=>{await Pt(n.header.id),Vt(void 0)},a=()=>{Rt({type:"clearStorage"})};return t.jsx(Tr,{drives:e??[],onDeleteDrive:r,onClearStorage:a})},Ee=[{label:"V1",value:"document-model-editor"},{label:"V2",value:"document-model-editor-v2"}],ya=()=>{const[e,r]=i.useState(Ee[1]),a=i.useCallback(n=>{const s=Ee.find(o=>o.value==n);s&&r(s)},[]);return t.jsx(Ur,{documentModelEditor:e.value,setDocumentModelEditor:a,documentModelEditorOptions:Ee})},ja=[{packageName:"@sky-ph/atlas",version:"latest",provider:"npm",url:"https://www.npmjs.com/package/@sky-ph/atlas"}],Se="local-reactor",ka="Local Reactor",wa=()=>{const e=Mt(),r=Xe(),[a,n]=i.useState(""),s=i.useMemo(()=>r?.reduce((l,u)=>{const m=u.state.local.triggers.find(j=>j.data?.url);if(!m?.data?.url)return l;const v=m.data.url,h=u.state.global.name;return l.push({value:v,label:h,disabled:!0}),l},[{value:Se,label:ka,disabled:!1}]),[r]);i.useEffect(()=>{n(l=>{const u=s?.find(m=>!m.disabled);return l&&s?.find(m=>m.value===l)?l:u?.value??""})},[a,s]);const o=e?.map(l=>Ht(l)),d=i.useCallback(l=>n(l??""),[]),c=i.useCallback(l=>{if(a!==Se)throw new Error("Cannot install external package on a remote reactor");return Ut(l)},[a]),f=i.useCallback(l=>{if(a!==Se)throw new Error("Cannot delete external package on a remote reactor");return _t(l)},[a]);return t.jsx(Xr,{mutable:!0,reactorOptions:s??[],reactor:a,packages:o?.map(l=>({id:l.id,name:l.name,description:l.description,category:l.category,publisher:l.author.name,publisherUrl:l.author.website??"",modules:Object.values(l.modules).flatMap(u=>u.map(m=>m.name)),removable:!0}))??[],onReactorChange:d,onInstall:c,onUninstall:f,packageOptions:ja})},Ra=()=>{const r=Lt()?.type==="settings";function a(){window.location.reload()}const n=i.useMemo(()=>[{id:"package-manager",icon:t.jsx(D,{name:"PackageManager",size:12}),label:"Package Manager",content:wa},{id:"default-editors",icon:t.jsx(D,{name:"Edit",size:12}),label:"Default Editors",content:ya},{id:"danger-zone",icon:t.jsx(D,{name:"Danger",size:12,className:"text-red-900"}),label:t.jsx("span",{className:"text-red-900",children:"Danger Zone"}),content:()=>t.jsx(va,{})},{id:"about",icon:t.jsx(D,{name:"QuestionSquare",size:12}),label:"About",content:ba}],[a]);return t.jsx(Qr,{open:r,title:zt("modals.connectSettings.title"),onOpenChange:s=>{if(!s)return Tt()},tabs:n})};export{Ra as SettingsModal};
2
+ //# sourceMappingURL=SettingsModal-BntFjuQb.js.map