@powerhousedao/reactor-browser 5.0.0-staging.9 → 5.0.1-staging.3

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 (488) hide show
  1. package/README.md +127 -81
  2. package/dist/src/actions/dispatch.d.ts +2 -2
  3. package/dist/src/actions/dispatch.d.ts.map +1 -1
  4. package/dist/src/actions/dispatch.js +1 -1
  5. package/dist/src/actions/dispatch.js.map +1 -1
  6. package/dist/src/actions/document.d.ts +4 -2
  7. package/dist/src/actions/document.d.ts.map +1 -1
  8. package/dist/src/actions/document.js +216 -20
  9. package/dist/src/actions/document.js.map +1 -1
  10. package/dist/src/actions/drive.d.ts +5 -6
  11. package/dist/src/actions/drive.d.ts.map +1 -1
  12. package/dist/src/actions/drive.js +13 -52
  13. package/dist/src/actions/drive.js.map +1 -1
  14. package/dist/src/actions/index.d.ts +2 -5
  15. package/dist/src/actions/index.d.ts.map +1 -1
  16. package/dist/src/actions/index.js +2 -5
  17. package/dist/src/actions/index.js.map +1 -1
  18. package/dist/src/actions/queue.d.ts +3 -1
  19. package/dist/src/actions/queue.d.ts.map +1 -1
  20. package/dist/src/actions/queue.js +19 -3
  21. package/dist/src/actions/queue.js.map +1 -1
  22. package/dist/src/actions/sign.d.ts +1 -1
  23. package/dist/src/actions/sign.d.ts.map +1 -1
  24. package/dist/src/actions/sign.js +7 -7
  25. package/dist/src/actions/sign.js.map +1 -1
  26. package/dist/src/analytics/context.d.ts +3 -3
  27. package/dist/src/analytics/context.d.ts.map +1 -1
  28. package/dist/src/analytics/context.js +2 -2
  29. package/dist/src/analytics/context.js.map +1 -1
  30. package/dist/src/analytics/hooks.d.ts +3 -2
  31. package/dist/src/analytics/hooks.d.ts.map +1 -1
  32. package/dist/src/analytics/hooks.js +3 -3
  33. package/dist/src/analytics/hooks.js.map +1 -1
  34. package/dist/src/analytics/index.d.ts +2 -1
  35. package/dist/src/analytics/index.d.ts.map +1 -1
  36. package/dist/src/analytics/index.js +2 -1
  37. package/dist/src/analytics/index.js.map +1 -1
  38. package/dist/src/analytics/store/browser.d.ts +1 -1
  39. package/dist/src/analytics/store/browser.d.ts.map +1 -1
  40. package/dist/src/analytics/store/browser.js +1 -1
  41. package/dist/src/analytics/store/browser.js.map +1 -1
  42. package/dist/src/analytics/store/memory.d.ts +1 -1
  43. package/dist/src/analytics/store/memory.d.ts.map +1 -1
  44. package/dist/src/analytics/store/memory.js +1 -1
  45. package/dist/src/analytics/store/memory.js.map +1 -1
  46. package/dist/src/analytics/types.d.ts +2 -3
  47. package/dist/src/analytics/types.d.ts.map +1 -1
  48. package/dist/src/connect.d.ts +2 -0
  49. package/dist/src/connect.d.ts.map +1 -0
  50. package/dist/src/connect.js +2 -0
  51. package/dist/src/connect.js.map +1 -0
  52. package/dist/src/context/index.d.ts +1 -1
  53. package/dist/src/context/index.d.ts.map +1 -1
  54. package/dist/src/context/index.js +1 -1
  55. package/dist/src/context/index.js.map +1 -1
  56. package/dist/src/context/read-mode.d.ts +2 -2
  57. package/dist/src/context/read-mode.d.ts.map +1 -1
  58. package/dist/src/context/read-mode.js +23 -41
  59. package/dist/src/context/read-mode.js.map +1 -1
  60. package/dist/src/document-model.d.ts +1 -2
  61. package/dist/src/document-model.d.ts.map +1 -1
  62. package/dist/src/document-model.js +1 -1
  63. package/dist/src/document-model.js.map +1 -1
  64. package/dist/src/errors.d.ts +16 -0
  65. package/dist/src/errors.d.ts.map +1 -0
  66. package/dist/src/errors.js +27 -0
  67. package/dist/src/errors.js.map +1 -0
  68. package/dist/src/global/core.d.ts.map +1 -1
  69. package/dist/src/global/core.js +0 -1
  70. package/dist/src/global/core.js.map +1 -1
  71. package/dist/src/global/index.d.ts +0 -1
  72. package/dist/src/global/index.d.ts.map +1 -1
  73. package/dist/src/global/index.js +0 -1
  74. package/dist/src/global/index.js.map +1 -1
  75. package/dist/src/global/types.d.ts +2 -2
  76. package/dist/src/global/types.d.ts.map +1 -1
  77. package/dist/src/hooks/add-ph-event-handlers.d.ts.map +1 -0
  78. package/dist/src/hooks/add-ph-event-handlers.js +89 -0
  79. package/dist/src/hooks/add-ph-event-handlers.js.map +1 -0
  80. package/dist/src/hooks/all-documents.d.ts +9 -0
  81. package/dist/src/hooks/all-documents.d.ts.map +1 -0
  82. package/dist/src/hooks/all-documents.js +9 -0
  83. package/dist/src/hooks/all-documents.js.map +1 -0
  84. package/dist/src/hooks/allowed-document-model-modules.d.ts +2 -0
  85. package/dist/src/hooks/allowed-document-model-modules.d.ts.map +1 -0
  86. package/dist/src/hooks/allowed-document-model-modules.js +10 -0
  87. package/dist/src/hooks/allowed-document-model-modules.js.map +1 -0
  88. package/dist/src/hooks/child-nodes.d.ts +4 -0
  89. package/dist/src/hooks/child-nodes.d.ts.map +1 -0
  90. package/dist/src/hooks/child-nodes.js +15 -0
  91. package/dist/src/hooks/child-nodes.js.map +1 -0
  92. package/dist/src/hooks/config/connect.d.ts +72 -0
  93. package/dist/src/hooks/config/connect.d.ts.map +1 -0
  94. package/dist/src/hooks/config/connect.js +174 -0
  95. package/dist/src/hooks/config/connect.js.map +1 -0
  96. package/dist/src/hooks/config/editor.d.ts +32 -0
  97. package/dist/src/hooks/config/editor.d.ts.map +1 -0
  98. package/dist/src/hooks/config/editor.js +43 -0
  99. package/dist/src/hooks/config/editor.js.map +1 -0
  100. package/dist/src/hooks/config/set-config-by-key.d.ts +5 -0
  101. package/dist/src/hooks/config/set-config-by-key.d.ts.map +1 -0
  102. package/dist/src/hooks/config/set-config-by-key.js +15 -0
  103. package/dist/src/hooks/config/set-config-by-key.js.map +1 -0
  104. package/dist/src/hooks/config/set-config-by-object.d.ts +31 -0
  105. package/dist/src/hooks/config/set-config-by-object.d.ts.map +1 -0
  106. package/dist/src/hooks/config/set-config-by-object.js +84 -0
  107. package/dist/src/hooks/config/set-config-by-object.js.map +1 -0
  108. package/dist/src/hooks/config/use-value-by-key.d.ts +13 -0
  109. package/dist/src/hooks/config/use-value-by-key.d.ts.map +1 -0
  110. package/dist/src/hooks/config/use-value-by-key.js +23 -0
  111. package/dist/src/hooks/config/use-value-by-key.js.map +1 -0
  112. package/dist/src/hooks/config/utils.d.ts +3 -0
  113. package/dist/src/hooks/config/utils.d.ts.map +1 -0
  114. package/dist/src/hooks/config/utils.js +6 -0
  115. package/dist/src/hooks/config/utils.js.map +1 -0
  116. package/dist/src/hooks/connect.d.ts +15 -0
  117. package/dist/src/hooks/connect.d.ts.map +1 -0
  118. package/dist/src/hooks/connect.js +15 -0
  119. package/dist/src/hooks/connect.js.map +1 -0
  120. package/dist/src/hooks/crypto.d.ts +1 -2
  121. package/dist/src/hooks/crypto.d.ts.map +1 -1
  122. package/dist/src/hooks/crypto.js +2 -10
  123. package/dist/src/hooks/crypto.js.map +1 -1
  124. package/dist/src/hooks/did.d.ts +2 -0
  125. package/dist/src/hooks/did.d.ts.map +1 -0
  126. package/dist/src/hooks/did.js +3 -0
  127. package/dist/src/hooks/did.js.map +1 -0
  128. package/dist/src/hooks/dispatch.d.ts +3 -2
  129. package/dist/src/hooks/dispatch.d.ts.map +1 -1
  130. package/dist/src/hooks/dispatch.js +1 -0
  131. package/dist/src/hooks/dispatch.js.map +1 -1
  132. package/dist/src/hooks/document-by-id.d.ts +4 -0
  133. package/dist/src/hooks/document-by-id.d.ts.map +1 -0
  134. package/dist/src/hooks/document-by-id.js +10 -0
  135. package/dist/src/hooks/document-by-id.js.map +1 -0
  136. package/dist/src/hooks/document-model-modules.d.ts +4 -0
  137. package/dist/src/hooks/document-model-modules.d.ts.map +1 -0
  138. package/dist/src/hooks/document-model-modules.js +10 -0
  139. package/dist/src/hooks/document-model-modules.js.map +1 -0
  140. package/dist/src/hooks/document-of-type.d.ts +5 -0
  141. package/dist/src/hooks/document-of-type.d.ts.map +1 -0
  142. package/dist/src/hooks/document-of-type.js +22 -0
  143. package/dist/src/hooks/document-of-type.js.map +1 -0
  144. package/dist/src/hooks/document-types.d.ts +7 -0
  145. package/dist/src/hooks/document-types.d.ts.map +1 -0
  146. package/dist/src/hooks/document-types.js +13 -0
  147. package/dist/src/hooks/document-types.js.map +1 -0
  148. package/dist/src/hooks/drive-by-id.d.ts +4 -0
  149. package/dist/src/hooks/drive-by-id.d.ts.map +1 -0
  150. package/dist/src/hooks/drive-by-id.js +12 -0
  151. package/dist/src/hooks/drive-by-id.js.map +1 -0
  152. package/dist/src/hooks/drives.d.ts +8 -23
  153. package/dist/src/hooks/drives.d.ts.map +1 -1
  154. package/dist/src/hooks/drives.js +8 -88
  155. package/dist/src/hooks/drives.js.map +1 -1
  156. package/dist/src/hooks/editor-modules.d.ts +9 -0
  157. package/dist/src/hooks/editor-modules.d.ts.map +1 -0
  158. package/dist/src/hooks/editor-modules.js +43 -0
  159. package/dist/src/hooks/editor-modules.js.map +1 -0
  160. package/dist/src/hooks/folder-by-id.d.ts +3 -0
  161. package/dist/src/hooks/folder-by-id.d.ts.map +1 -0
  162. package/dist/src/hooks/folder-by-id.js +6 -0
  163. package/dist/src/hooks/folder-by-id.js.map +1 -0
  164. package/dist/src/hooks/import-script-modules.d.ts +3 -0
  165. package/dist/src/hooks/import-script-modules.d.ts.map +1 -0
  166. package/dist/src/hooks/import-script-modules.js +6 -0
  167. package/dist/src/hooks/import-script-modules.js.map +1 -0
  168. package/dist/src/hooks/index.d.ts +37 -11
  169. package/dist/src/hooks/index.d.ts.map +1 -1
  170. package/dist/src/hooks/index.js +37 -11
  171. package/dist/src/hooks/index.js.map +1 -1
  172. package/dist/src/hooks/items-in-selected-drive.d.ts +13 -0
  173. package/dist/src/hooks/items-in-selected-drive.d.ts.map +1 -0
  174. package/dist/src/hooks/items-in-selected-drive.js +36 -0
  175. package/dist/src/hooks/items-in-selected-drive.js.map +1 -0
  176. package/dist/src/hooks/loading.d.ts +2 -0
  177. package/dist/src/hooks/loading.d.ts.map +1 -0
  178. package/dist/src/hooks/loading.js +3 -0
  179. package/dist/src/hooks/loading.js.map +1 -0
  180. package/dist/src/hooks/login-status.d.ts +2 -0
  181. package/dist/src/hooks/login-status.d.ts.map +1 -0
  182. package/dist/src/hooks/login-status.js +3 -0
  183. package/dist/src/hooks/login-status.js.map +1 -0
  184. package/dist/src/hooks/make-ph-event-functions.d.ts +7 -0
  185. package/dist/src/hooks/make-ph-event-functions.d.ts.map +1 -0
  186. package/dist/src/hooks/make-ph-event-functions.js +46 -0
  187. package/dist/src/hooks/make-ph-event-functions.js.map +1 -0
  188. package/dist/src/hooks/modals.d.ts +17 -0
  189. package/dist/src/hooks/modals.d.ts.map +1 -0
  190. package/dist/src/hooks/modals.js +26 -0
  191. package/dist/src/hooks/modals.js.map +1 -0
  192. package/dist/src/hooks/node-actions.d.ts +11 -0
  193. package/dist/src/hooks/node-actions.d.ts.map +1 -0
  194. package/dist/src/hooks/node-actions.js +97 -0
  195. package/dist/src/hooks/node-actions.js.map +1 -0
  196. package/dist/src/hooks/node-by-id.d.ts +4 -0
  197. package/dist/src/hooks/node-by-id.d.ts.map +1 -0
  198. package/dist/src/hooks/node-by-id.js +7 -0
  199. package/dist/src/hooks/node-by-id.js.map +1 -0
  200. package/dist/src/hooks/node-path.d.ts +6 -0
  201. package/dist/src/hooks/node-path.d.ts.map +1 -0
  202. package/dist/src/hooks/node-path.js +23 -0
  203. package/dist/src/hooks/node-path.js.map +1 -0
  204. package/dist/src/hooks/parent-folder.d.ts +4 -0
  205. package/dist/src/hooks/parent-folder.d.ts.map +1 -0
  206. package/dist/src/hooks/parent-folder.js +13 -0
  207. package/dist/src/hooks/parent-folder.js.map +1 -0
  208. package/dist/src/hooks/processor-manager.d.ts +8 -2
  209. package/dist/src/hooks/processor-manager.d.ts.map +1 -1
  210. package/dist/src/hooks/processor-manager.js +8 -6
  211. package/dist/src/hooks/processor-manager.js.map +1 -1
  212. package/dist/src/hooks/processor-modules.d.ts +4 -0
  213. package/dist/src/hooks/processor-modules.d.ts.map +1 -0
  214. package/dist/src/hooks/processor-modules.js +12 -0
  215. package/dist/src/hooks/processor-modules.js.map +1 -0
  216. package/dist/src/hooks/reactor.d.ts +8 -2
  217. package/dist/src/hooks/reactor.d.ts.map +1 -1
  218. package/dist/src/hooks/reactor.js +8 -6
  219. package/dist/src/hooks/reactor.js.map +1 -1
  220. package/dist/src/hooks/renown.d.ts +6 -1
  221. package/dist/src/hooks/renown.d.ts.map +1 -1
  222. package/dist/src/hooks/renown.js +8 -6
  223. package/dist/src/hooks/renown.js.map +1 -1
  224. package/dist/src/hooks/revision-history.d.ts +11 -0
  225. package/dist/src/hooks/revision-history.d.ts.map +1 -0
  226. package/dist/src/hooks/revision-history.js +17 -0
  227. package/dist/src/hooks/revision-history.js.map +1 -0
  228. package/dist/src/hooks/selected-document.d.ts +10 -0
  229. package/dist/src/hooks/selected-document.d.ts.map +1 -0
  230. package/dist/src/hooks/selected-document.js +28 -0
  231. package/dist/src/hooks/selected-document.js.map +1 -0
  232. package/dist/src/hooks/selected-drive.d.ts +12 -0
  233. package/dist/src/hooks/selected-drive.d.ts.map +1 -0
  234. package/dist/src/hooks/selected-drive.js +47 -0
  235. package/dist/src/hooks/selected-drive.js.map +1 -0
  236. package/dist/src/hooks/selected-folder.d.ts +4 -0
  237. package/dist/src/hooks/selected-folder.d.ts.map +1 -0
  238. package/dist/src/hooks/selected-folder.js +10 -0
  239. package/dist/src/hooks/selected-folder.js.map +1 -0
  240. package/dist/src/hooks/selected-node.d.ts +7 -0
  241. package/dist/src/hooks/selected-node.d.ts.map +1 -0
  242. package/dist/src/hooks/selected-node.js +31 -0
  243. package/dist/src/hooks/selected-node.js.map +1 -0
  244. package/dist/src/hooks/selected-timeline-item.d.ts +7 -0
  245. package/dist/src/hooks/selected-timeline-item.d.ts.map +1 -0
  246. package/dist/src/hooks/selected-timeline-item.js +9 -0
  247. package/dist/src/hooks/selected-timeline-item.js.map +1 -0
  248. package/dist/src/hooks/subgraph-modules.d.ts +3 -0
  249. package/dist/src/hooks/subgraph-modules.d.ts.map +1 -0
  250. package/dist/src/hooks/subgraph-modules.js +6 -0
  251. package/dist/src/hooks/subgraph-modules.js.map +1 -0
  252. package/dist/src/hooks/supported-document-types.d.ts +3 -0
  253. package/dist/src/hooks/supported-document-types.d.ts.map +1 -0
  254. package/dist/src/hooks/supported-document-types.js +7 -0
  255. package/dist/src/hooks/supported-document-types.js.map +1 -0
  256. package/dist/src/hooks/timeline-revision.d.ts +7 -0
  257. package/dist/src/hooks/timeline-revision.d.ts.map +1 -0
  258. package/dist/src/hooks/timeline-revision.js +9 -0
  259. package/dist/src/hooks/timeline-revision.js.map +1 -0
  260. package/dist/src/hooks/use-document-timeline.d.ts +19 -0
  261. package/dist/src/hooks/use-document-timeline.d.ts.map +1 -0
  262. package/dist/src/hooks/use-document-timeline.js +10 -0
  263. package/dist/src/hooks/use-document-timeline.js.map +1 -0
  264. package/dist/src/hooks/use-on-drop-file.d.ts +3 -0
  265. package/dist/src/hooks/use-on-drop-file.d.ts.map +1 -0
  266. package/dist/src/hooks/use-on-drop-file.js +21 -0
  267. package/dist/src/hooks/use-on-drop-file.js.map +1 -0
  268. package/dist/src/hooks/use-timeline-items.d.ts +25 -0
  269. package/dist/src/hooks/use-timeline-items.d.ts.map +1 -0
  270. package/dist/src/hooks/use-timeline-items.js +104 -0
  271. package/dist/src/hooks/use-timeline-items.js.map +1 -0
  272. package/dist/src/hooks/user-permissions.d.ts +5 -0
  273. package/dist/src/hooks/user-permissions.d.ts.map +1 -0
  274. package/dist/src/hooks/user-permissions.js +17 -0
  275. package/dist/src/hooks/user-permissions.js.map +1 -0
  276. package/dist/src/hooks/user.d.ts +1 -6
  277. package/dist/src/hooks/user.d.ts.map +1 -1
  278. package/dist/src/hooks/user.js +2 -25
  279. package/dist/src/hooks/user.js.map +1 -1
  280. package/dist/src/hooks/vetra-packages.d.ts +7 -17
  281. package/dist/src/hooks/vetra-packages.d.ts.map +1 -1
  282. package/dist/src/hooks/vetra-packages.js +13 -73
  283. package/dist/src/hooks/vetra-packages.js.map +1 -1
  284. package/dist/src/index.d.ts +2 -1
  285. package/dist/src/index.d.ts.map +1 -1
  286. package/dist/src/index.js +2 -1
  287. package/dist/src/index.js.map +1 -1
  288. package/dist/src/pglite/hooks/usePGlite.d.ts +1 -1
  289. package/dist/src/pglite/hooks/usePGlite.d.ts.map +1 -1
  290. package/dist/src/pglite/index.d.ts +0 -4
  291. package/dist/src/pglite/index.d.ts.map +1 -1
  292. package/dist/src/pglite/index.js +0 -4
  293. package/dist/src/pglite/index.js.map +1 -1
  294. package/dist/src/reactor.d.ts +10 -9
  295. package/dist/src/reactor.d.ts.map +1 -1
  296. package/dist/src/reactor.js +34 -19
  297. package/dist/src/reactor.js.map +1 -1
  298. package/dist/src/relational/hooks/useRelationalDb.d.ts +2 -2
  299. package/dist/src/relational/hooks/useRelationalDb.d.ts.map +1 -1
  300. package/dist/src/relational/hooks/useRelationalDb.js +2 -2
  301. package/dist/src/relational/hooks/useRelationalDb.js.map +1 -1
  302. package/dist/src/relational/hooks/useRelationalQuery.d.ts +2 -3
  303. package/dist/src/relational/hooks/useRelationalQuery.d.ts.map +1 -1
  304. package/dist/src/relational/hooks/useRelationalQuery.js +1 -1
  305. package/dist/src/relational/hooks/useRelationalQuery.js.map +1 -1
  306. package/dist/src/relational/utils/createProcessorQuery.d.ts +4 -4
  307. package/dist/src/relational/utils/createProcessorQuery.d.ts.map +1 -1
  308. package/dist/src/relational/utils/createProcessorQuery.js +2 -2
  309. package/dist/src/relational/utils/createProcessorQuery.js.map +1 -1
  310. package/dist/src/renown/utils.d.ts +3 -4
  311. package/dist/src/renown/utils.d.ts.map +1 -1
  312. package/dist/src/renown/utils.js +12 -12
  313. package/dist/src/renown/utils.js.map +1 -1
  314. package/dist/src/types/config.d.ts +90 -0
  315. package/dist/src/types/config.d.ts.map +1 -0
  316. package/dist/src/types/config.js +2 -0
  317. package/dist/src/types/config.js.map +1 -0
  318. package/dist/src/types/documents.d.ts +3 -0
  319. package/dist/src/types/documents.d.ts.map +1 -0
  320. package/dist/src/types/documents.js +2 -0
  321. package/dist/src/types/documents.js.map +1 -0
  322. package/dist/src/types/global.d.ts +35 -55
  323. package/dist/src/types/global.d.ts.map +1 -1
  324. package/dist/src/types/index.d.ts +8 -4
  325. package/dist/src/types/index.d.ts.map +1 -1
  326. package/dist/src/types/index.js +1 -4
  327. package/dist/src/types/index.js.map +1 -1
  328. package/dist/src/types/modals.d.ts +32 -0
  329. package/dist/src/types/modals.d.ts.map +1 -0
  330. package/dist/src/types/modals.js +2 -0
  331. package/dist/src/types/modals.js.map +1 -0
  332. package/dist/src/types/reactor.d.ts +0 -2
  333. package/dist/src/types/reactor.d.ts.map +1 -1
  334. package/dist/src/types/timeline.d.ts +24 -0
  335. package/dist/src/types/timeline.d.ts.map +1 -0
  336. package/dist/src/types/timeline.js +2 -0
  337. package/dist/src/types/timeline.js.map +1 -0
  338. package/dist/src/types/upload.d.ts +16 -0
  339. package/dist/src/types/upload.d.ts.map +1 -0
  340. package/dist/src/types/upload.js +2 -0
  341. package/dist/src/types/upload.js.map +1 -0
  342. package/dist/src/types/vetra.d.ts +6 -14
  343. package/dist/src/types/vetra.d.ts.map +1 -1
  344. package/dist/src/utils/documents.d.ts +2 -0
  345. package/dist/src/utils/documents.d.ts.map +1 -0
  346. package/dist/src/utils/documents.js +20 -0
  347. package/dist/src/utils/documents.js.map +1 -0
  348. package/dist/src/utils/drives.d.ts +23 -9
  349. package/dist/src/utils/drives.d.ts.map +1 -1
  350. package/dist/src/utils/drives.js +89 -18
  351. package/dist/src/utils/drives.js.map +1 -1
  352. package/dist/src/utils/export-document.d.ts +3 -0
  353. package/dist/src/utils/export-document.d.ts.map +1 -0
  354. package/dist/src/utils/export-document.js +18 -0
  355. package/dist/src/utils/export-document.js.map +1 -0
  356. package/dist/src/utils/get-revision-from-date.d.ts +3 -0
  357. package/dist/src/utils/get-revision-from-date.d.ts.map +1 -0
  358. package/dist/src/utils/get-revision-from-date.js +10 -0
  359. package/dist/src/utils/get-revision-from-date.js.map +1 -0
  360. package/dist/src/utils/index.d.ts +4 -0
  361. package/dist/src/utils/index.d.ts.map +1 -1
  362. package/dist/src/utils/index.js +4 -0
  363. package/dist/src/utils/index.js.map +1 -1
  364. package/dist/src/utils/nodes.d.ts +1 -1
  365. package/dist/src/utils/nodes.d.ts.map +1 -1
  366. package/dist/src/utils/switchboard.d.ts +3 -4
  367. package/dist/src/utils/switchboard.d.ts.map +1 -1
  368. package/dist/src/utils/switchboard.js +19 -15
  369. package/dist/src/utils/switchboard.js.map +1 -1
  370. package/dist/src/utils/url.d.ts +4 -1
  371. package/dist/src/utils/url.d.ts.map +1 -1
  372. package/dist/src/utils/url.js +13 -2
  373. package/dist/src/utils/url.js.map +1 -1
  374. package/dist/src/utils/user.js +2 -2
  375. package/dist/src/utils/user.js.map +1 -1
  376. package/dist/src/utils/validate-document.d.ts +3 -0
  377. package/dist/src/utils/validate-document.d.ts.map +1 -0
  378. package/dist/src/utils/validate-document.js +38 -0
  379. package/dist/src/utils/validate-document.js.map +1 -0
  380. package/dist/src/utils/vetra.d.ts +3 -3
  381. package/dist/src/utils/vetra.d.ts.map +1 -1
  382. package/dist/src/utils/vetra.js +21 -15
  383. package/dist/src/utils/vetra.js.map +1 -1
  384. package/dist/test/analytics.test.d.ts +2 -0
  385. package/dist/test/analytics.test.d.ts.map +1 -0
  386. package/dist/test/analytics.test.js +262 -0
  387. package/dist/test/analytics.test.js.map +1 -0
  388. package/dist/test/getSwitchboardUrl.test.d.ts +2 -0
  389. package/dist/test/getSwitchboardUrl.test.d.ts.map +1 -0
  390. package/dist/test/getSwitchboardUrl.test.js +105 -0
  391. package/dist/test/getSwitchboardUrl.test.js.map +1 -0
  392. package/dist/test/reactor.test.d.ts +2 -0
  393. package/dist/test/reactor.test.d.ts.map +1 -0
  394. package/dist/test/reactor.test.js +26 -0
  395. package/dist/test/reactor.test.js.map +1 -0
  396. package/dist/test/switchboard.test.d.ts +2 -0
  397. package/dist/test/switchboard.test.d.ts.map +1 -0
  398. package/dist/test/switchboard.test.js +25 -0
  399. package/dist/test/switchboard.test.js.map +1 -0
  400. package/dist/tsconfig.tsbuildinfo +1 -0
  401. package/dist/vitest.config.js +1 -1
  402. package/dist/vitest.config.js.map +1 -1
  403. package/package.json +27 -33
  404. package/dist/src/analytics/analytics.d.ts +0 -5
  405. package/dist/src/analytics/analytics.d.ts.map +0 -1
  406. package/dist/src/analytics/analytics.js +0 -6
  407. package/dist/src/analytics/analytics.js.map +0 -1
  408. package/dist/src/crypto/browser.d.ts +0 -8
  409. package/dist/src/crypto/browser.d.ts.map +0 -1
  410. package/dist/src/crypto/browser.js +0 -73
  411. package/dist/src/crypto/browser.js.map +0 -1
  412. package/dist/src/crypto/index.d.ts +0 -35
  413. package/dist/src/crypto/index.d.ts.map +0 -1
  414. package/dist/src/crypto/index.js +0 -153
  415. package/dist/src/crypto/index.js.map +0 -1
  416. package/dist/src/events/add-ph-event-handlers.d.ts.map +0 -1
  417. package/dist/src/events/add-ph-event-handlers.js +0 -26
  418. package/dist/src/events/add-ph-event-handlers.js.map +0 -1
  419. package/dist/src/events/config.d.ts +0 -8
  420. package/dist/src/events/config.d.ts.map +0 -1
  421. package/dist/src/events/config.js +0 -25
  422. package/dist/src/events/config.js.map +0 -1
  423. package/dist/src/events/crypto.d.ts +0 -13
  424. package/dist/src/events/crypto.d.ts.map +0 -1
  425. package/dist/src/events/crypto.js +0 -49
  426. package/dist/src/events/crypto.js.map +0 -1
  427. package/dist/src/events/documents.d.ts +0 -7
  428. package/dist/src/events/documents.d.ts.map +0 -1
  429. package/dist/src/events/documents.js +0 -19
  430. package/dist/src/events/documents.js.map +0 -1
  431. package/dist/src/events/drives.d.ts +0 -13
  432. package/dist/src/events/drives.d.ts.map +0 -1
  433. package/dist/src/events/drives.js +0 -57
  434. package/dist/src/events/drives.js.map +0 -1
  435. package/dist/src/events/index.d.ts +0 -13
  436. package/dist/src/events/index.d.ts.map +0 -1
  437. package/dist/src/events/index.js +0 -13
  438. package/dist/src/events/index.js.map +0 -1
  439. package/dist/src/events/nodes.d.ts +0 -7
  440. package/dist/src/events/nodes.d.ts.map +0 -1
  441. package/dist/src/events/nodes.js +0 -34
  442. package/dist/src/events/nodes.js.map +0 -1
  443. package/dist/src/events/processors.d.ts +0 -8
  444. package/dist/src/events/processors.d.ts.map +0 -1
  445. package/dist/src/events/processors.js +0 -25
  446. package/dist/src/events/processors.js.map +0 -1
  447. package/dist/src/events/reactor.d.ts +0 -8
  448. package/dist/src/events/reactor.d.ts.map +0 -1
  449. package/dist/src/events/reactor.js +0 -25
  450. package/dist/src/events/reactor.js.map +0 -1
  451. package/dist/src/events/renown.d.ts +0 -8
  452. package/dist/src/events/renown.d.ts.map +0 -1
  453. package/dist/src/events/renown.js +0 -27
  454. package/dist/src/events/renown.js.map +0 -1
  455. package/dist/src/events/types.d.ts +0 -60
  456. package/dist/src/events/types.d.ts.map +0 -1
  457. package/dist/src/events/types.js +0 -2
  458. package/dist/src/events/types.js.map +0 -1
  459. package/dist/src/events/user.d.ts +0 -14
  460. package/dist/src/events/user.d.ts.map +0 -1
  461. package/dist/src/events/user.js +0 -49
  462. package/dist/src/events/user.js.map +0 -1
  463. package/dist/src/events/vetra-packages.d.ts +0 -8
  464. package/dist/src/events/vetra-packages.d.ts.map +0 -1
  465. package/dist/src/events/vetra-packages.js +0 -29
  466. package/dist/src/events/vetra-packages.js.map +0 -1
  467. package/dist/src/hooks/config.d.ts +0 -5
  468. package/dist/src/hooks/config.d.ts.map +0 -1
  469. package/dist/src/hooks/config.js +0 -18
  470. package/dist/src/hooks/config.js.map +0 -1
  471. package/dist/src/hooks/documents.d.ts +0 -13
  472. package/dist/src/hooks/documents.d.ts.map +0 -1
  473. package/dist/src/hooks/documents.js +0 -46
  474. package/dist/src/hooks/documents.js.map +0 -1
  475. package/dist/src/hooks/drive-context.d.ts +0 -21
  476. package/dist/src/hooks/drive-context.d.ts.map +0 -1
  477. package/dist/src/hooks/drive-context.js +0 -26
  478. package/dist/src/hooks/drive-context.js.map +0 -1
  479. package/dist/src/hooks/nodes.d.ts +0 -41
  480. package/dist/src/hooks/nodes.d.ts.map +0 -1
  481. package/dist/src/hooks/nodes.js +0 -160
  482. package/dist/src/hooks/nodes.js.map +0 -1
  483. package/dist/src/types/drive-editor.d.ts +0 -71
  484. package/dist/src/types/drive-editor.d.ts.map +0 -1
  485. package/dist/src/types/drive-editor.js +0 -2
  486. package/dist/src/types/drive-editor.js.map +0 -1
  487. package/dist/tsconfig.lib.tsbuildinfo +0 -1
  488. /package/dist/src/{events → hooks}/add-ph-event-handlers.d.ts +0 -0
@@ -0,0 +1,11 @@
1
+ import type { Node } from "document-drive";
2
+ export declare function useNodeActions(): {
3
+ onAddFile: (file: File, parent: Node | undefined) => Promise<void>;
4
+ onAddFolder: (name: string, parent: Node | undefined) => Promise<import("document-drive").FolderNode | undefined>;
5
+ onRenameNode: (newName: string, node: Node) => Promise<Node | undefined>;
6
+ onCopyNode: (src: Node, target: Node | undefined) => Promise<void>;
7
+ onMoveNode: (src: Node, target: Node | undefined) => Promise<void>;
8
+ onDuplicateNode: (src: Node) => Promise<void>;
9
+ onAddAndSelectNewFolder: (name: string) => Promise<void>;
10
+ };
11
+ //# sourceMappingURL=node-actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-actions.d.ts","sourceRoot":"","sources":["../../../src/hooks/node-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAiB3C,wBAAgB,cAAc;sBAOG,IAAI,UAAU,IAAI,GAAG,SAAS;wBAa5B,MAAM,UAAU,IAAI,GAAG,SAAS;4BAWtD,MAAM,QACT,IAAI,KACT,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;sBAYG,IAAI,UAAU,IAAI,GAAG,SAAS;sBAY9B,IAAI,UAAU,IAAI,GAAG,SAAS;2BAoBzB,IAAI;oCAeK,MAAM;EA0BpD"}
@@ -0,0 +1,97 @@
1
+ import { addFile, addFolder, copyNode, moveNode, renameNode, } from "../actions/document.js";
2
+ import { useFolderById } from "./folder-by-id.js";
3
+ import { useSelectedDriveSafe } from "./selected-drive.js";
4
+ import { useSelectedFolder } from "./selected-folder.js";
5
+ import { setSelectedNode, useSelectedNode } from "./selected-node.js";
6
+ function resolveNode(driveId, node) {
7
+ return node?.id !== driveId ? node : undefined;
8
+ }
9
+ export function useNodeActions() {
10
+ const [selectedDrive] = useSelectedDriveSafe();
11
+ const selectedFolder = useSelectedFolder();
12
+ const selectedNode = useSelectedNode();
13
+ const selectedParentFolder = useFolderById(selectedNode?.parentFolder);
14
+ const selectedDriveId = selectedDrive?.header.id;
15
+ async function onAddFile(file, parent) {
16
+ if (!selectedDriveId)
17
+ return;
18
+ const fileName = file.name.replace(/\..+/gim, "");
19
+ return addFile(file, selectedDriveId, fileName, resolveNode(selectedDriveId, parent)?.id);
20
+ }
21
+ async function onAddFolder(name, parent) {
22
+ if (!selectedDriveId)
23
+ return;
24
+ return addFolder(selectedDriveId, name, resolveNode(selectedDriveId, parent)?.id);
25
+ }
26
+ async function onRenameNode(newName, node) {
27
+ if (!selectedDriveId)
28
+ return;
29
+ const resolvedNode = resolveNode(selectedDriveId, node);
30
+ if (!resolvedNode) {
31
+ console.error(`Node ${node.id} not found`);
32
+ return;
33
+ }
34
+ return await renameNode(selectedDriveId, node.id, newName);
35
+ }
36
+ async function onCopyNode(src, target) {
37
+ if (!selectedDriveId)
38
+ return;
39
+ const resolvedSrc = resolveNode(selectedDriveId, src);
40
+ if (!resolvedSrc) {
41
+ console.error(`Node ${src.id} not found`);
42
+ return;
43
+ }
44
+ const resolvedTarget = resolveNode(selectedDriveId, target);
45
+ await copyNode(selectedDriveId, resolvedSrc, resolvedTarget);
46
+ }
47
+ async function onMoveNode(src, target) {
48
+ if (!selectedDriveId)
49
+ return;
50
+ const resolvedSrc = resolveNode(selectedDriveId, src);
51
+ if (!resolvedSrc) {
52
+ console.error(`Node ${src.id} not found`);
53
+ return;
54
+ }
55
+ const resolvedTarget = resolveNode(selectedDriveId, target);
56
+ // if node is already on target then ignore move
57
+ if ((!resolvedTarget?.id && !src.parentFolder) ||
58
+ resolvedTarget?.id === src.parentFolder) {
59
+ return;
60
+ }
61
+ await moveNode(selectedDriveId, resolvedSrc, resolvedTarget);
62
+ }
63
+ async function onDuplicateNode(src) {
64
+ if (!selectedDriveId)
65
+ return;
66
+ const resolvedSrc = resolveNode(selectedDriveId, src);
67
+ if (!resolvedSrc) {
68
+ console.error(`Node ${src.id} not found`);
69
+ return;
70
+ }
71
+ const target = resolveNode(selectedDriveId, selectedFolder ?? selectedParentFolder);
72
+ await copyNode(selectedDriveId, resolvedSrc, target);
73
+ }
74
+ async function onAddAndSelectNewFolder(name) {
75
+ if (!name)
76
+ return;
77
+ if (!selectedDriveId)
78
+ return;
79
+ const resolvedTarget = resolveNode(selectedDriveId, selectedFolder ?? selectedParentFolder);
80
+ if (!resolvedTarget)
81
+ return;
82
+ const newFolder = await onAddFolder(name, resolvedTarget);
83
+ if (newFolder) {
84
+ setSelectedNode(newFolder);
85
+ }
86
+ }
87
+ return {
88
+ onAddFile,
89
+ onAddFolder,
90
+ onRenameNode,
91
+ onCopyNode,
92
+ onMoveNode,
93
+ onDuplicateNode,
94
+ onAddAndSelectNewFolder,
95
+ };
96
+ }
97
+ //# sourceMappingURL=node-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-actions.js","sourceRoot":"","sources":["../../../src/hooks/node-actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Node } from "document-drive";
2
+ /** Returns a node in the selected drive by id. */
3
+ export declare function useNodeById(id: string | null | undefined): Node | undefined;
4
+ //# sourceMappingURL=node-by-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-by-id.d.ts","sourceRoot":"","sources":["../../../src/hooks/node-by-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG3C,kDAAkD;AAClD,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,CAG3E"}
@@ -0,0 +1,7 @@
1
+ import { useNodesInSelectedDrive } from "./items-in-selected-drive.js";
2
+ /** Returns a node in the selected drive by id. */
3
+ export function useNodeById(id) {
4
+ const nodes = useNodesInSelectedDrive();
5
+ return nodes?.find((n) => n.id === id);
6
+ }
7
+ //# sourceMappingURL=node-by-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-by-id.js","sourceRoot":"","sources":["../../../src/hooks/node-by-id.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,kDAAkD;AAClD,MAAM,UAAU,WAAW,CAAC,EAA6B;IACvD,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;IACxC,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACzC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Node } from "document-drive";
2
+ /** Returns the path to a node in the selected drive */
3
+ export declare function useNodePathById(id: string | null | undefined): Node[];
4
+ /** Returns the path to the currently selected node in the selected drive. */
5
+ export declare function useSelectedNodePath(): Node[];
6
+ //# sourceMappingURL=node-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-path.d.ts","sourceRoot":"","sources":["../../../src/hooks/node-path.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAI3C,uDAAuD;AACvD,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,UAc5D;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,WAGlC"}
@@ -0,0 +1,23 @@
1
+ import { useNodesInSelectedDrive } from "./items-in-selected-drive.js";
2
+ import { useSelectedNode } from "./selected-node.js";
3
+ /** Returns the path to a node in the selected drive */
4
+ export function useNodePathById(id) {
5
+ const nodes = useNodesInSelectedDrive();
6
+ if (!nodes)
7
+ return [];
8
+ const path = [];
9
+ let current = nodes.find((n) => n.id === id);
10
+ while (current) {
11
+ path.push(current);
12
+ if (!current.parentFolder)
13
+ break;
14
+ current = nodes.find((n) => n.id === current?.parentFolder);
15
+ }
16
+ return path.reverse();
17
+ }
18
+ /** Returns the path to the currently selected node in the selected drive. */
19
+ export function useSelectedNodePath() {
20
+ const selectedNode = useSelectedNode();
21
+ return useNodePathById(selectedNode?.id);
22
+ }
23
+ //# sourceMappingURL=node-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-path.js","sourceRoot":"","sources":["../../../src/hooks/node-path.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,uDAAuD;AACvD,MAAM,UAAU,eAAe,CAAC,EAA6B;IAC3D,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;IACxC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IAEtB,MAAM,IAAI,GAAW,EAAE,CAAC;IACxB,IAAI,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAE7C,OAAO,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,MAAM;QACjC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,YAAY,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;AACxB,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB;IACjC,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,OAAO,eAAe,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { FolderNode } from "document-drive";
2
+ export declare function useNodeParentFolderById(id: string | null | undefined): FolderNode | undefined;
3
+ export declare function useParentFolderForSelectedNode(): FolderNode | undefined;
4
+ //# sourceMappingURL=parent-folder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parent-folder.d.ts","sourceRoot":"","sources":["../../../src/hooks/parent-folder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKjD,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC5B,UAAU,GAAG,SAAS,CAIxB;AAED,wBAAgB,8BAA8B,2BAG7C"}
@@ -0,0 +1,13 @@
1
+ import { useFolderById } from "./folder-by-id.js";
2
+ import { useNodeById } from "./node-by-id.js";
3
+ import { useSelectedNode } from "./selected-node.js";
4
+ export function useNodeParentFolderById(id) {
5
+ const node = useNodeById(id);
6
+ const parentFolder = useFolderById(node?.parentFolder);
7
+ return parentFolder;
8
+ }
9
+ export function useParentFolderForSelectedNode() {
10
+ const node = useSelectedNode();
11
+ return useNodeParentFolderById(node?.id);
12
+ }
13
+ //# sourceMappingURL=parent-folder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parent-folder.js","sourceRoot":"","sources":["../../../src/hooks/parent-folder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,UAAU,uBAAuB,CACrC,EAA6B;IAE7B,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACvD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,OAAO,uBAAuB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,3 +1,9 @@
1
- import { type ProcessorManager } from "document-drive";
2
- export declare function useProcessorManager(): ProcessorManager | undefined;
1
+ import type { AddPHGlobalEventHandler, SetPHGlobalValue, UsePHGlobalValue } from "@powerhousedao/reactor-browser";
2
+ import type { ProcessorManager } from "document-drive";
3
+ /** Returns the processor manager */
4
+ export declare const useProcessorManager: UsePHGlobalValue<ProcessorManager>;
5
+ /** Sets the processor manager */
6
+ export declare const setProcessorManager: SetPHGlobalValue<ProcessorManager>;
7
+ /** Adds an event handler for the processor manager */
8
+ export declare const addProcessorManagerEventHandler: AddPHGlobalEventHandler;
3
9
  //# sourceMappingURL=processor-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processor-manager.d.ts","sourceRoot":"","sources":["../../../src/hooks/processor-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIvD,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,SAAS,CAMlE"}
1
+ {"version":3,"file":"processor-manager.d.ts","sourceRoot":"","sources":["../../../src/hooks/processor-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKvD,oCAAoC;AACpC,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,CAAC,gBAAgB,CAC1C,CAAC;AAE1B,iCAAiC;AACjC,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,CAAC,gBAAgB,CAC1C,CAAC;AAE1B,sDAAsD;AACtD,eAAO,MAAM,+BAA+B,EAAE,uBACd,CAAC"}
@@ -1,7 +1,9 @@
1
- import { useSyncExternalStore } from "react";
2
- import { subscribeToProcessorManager } from "../events/index.js";
3
- export function useProcessorManager() {
4
- const processorManager = useSyncExternalStore(subscribeToProcessorManager, () => window.phProcessorManager);
5
- return processorManager;
6
- }
1
+ import { makePHEventFunctions } from "./make-ph-event-functions.js";
2
+ const eventFunctions = makePHEventFunctions("processorManager");
3
+ /** Returns the processor manager */
4
+ export const useProcessorManager = eventFunctions.useValue;
5
+ /** Sets the processor manager */
6
+ export const setProcessorManager = eventFunctions.setValue;
7
+ /** Adds an event handler for the processor manager */
8
+ export const addProcessorManagerEventHandler = eventFunctions.addEventHandler;
7
9
  //# sourceMappingURL=processor-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"processor-manager.js","sourceRoot":"","sources":["../../../src/hooks/processor-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,MAAM,UAAU,mBAAmB;IACjC,MAAM,gBAAgB,GAAG,oBAAoB,CAC3C,2BAA2B,EAC3B,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAChC,CAAC;IACF,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"processor-manager.js","sourceRoot":"","sources":["../../../src/hooks/processor-manager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,cAAc,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;AAEhE,oCAAoC;AACpC,MAAM,CAAC,MAAM,mBAAmB,GAC9B,cAAc,CAAC,QAAQ,CAAC;AAE1B,iCAAiC;AACjC,MAAM,CAAC,MAAM,mBAAmB,GAC9B,cAAc,CAAC,QAAQ,CAAC;AAE1B,sDAAsD;AACtD,MAAM,CAAC,MAAM,+BAA+B,GAC1C,cAAc,CAAC,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Processors, VetraProcessorModule } from "../types/vetra.js";
2
+ export declare function useProcessorModules(): VetraProcessorModule[] | undefined;
3
+ export declare function useProcessors(): Processors[] | undefined;
4
+ //# sourceMappingURL=processor-modules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processor-modules.d.ts","sourceRoot":"","sources":["../../../src/hooks/processor-modules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAG1E,wBAAgB,mBAAmB,IAAI,oBAAoB,EAAE,GAAG,SAAS,CAKxE;AAED,wBAAgB,aAAa,IAAI,UAAU,EAAE,GAAG,SAAS,CAGxD"}
@@ -0,0 +1,12 @@
1
+ import { useVetraPackages } from "./vetra-packages.js";
2
+ export function useProcessorModules() {
3
+ const vetraPackages = useVetraPackages();
4
+ return vetraPackages
5
+ ?.flatMap((pkg) => pkg.modules.processorModules)
6
+ .filter((module) => module !== undefined);
7
+ }
8
+ export function useProcessors() {
9
+ const processorModules = useProcessorModules();
10
+ return processorModules?.flatMap((module) => module.processors);
11
+ }
12
+ //# sourceMappingURL=processor-modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processor-modules.js","sourceRoot":"","sources":["../../../src/hooks/processor-modules.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,UAAU,mBAAmB;IACjC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,OAAO,aAAa;QAClB,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;SAC/C,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS,CAA2B,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,OAAO,gBAAgB,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAClE,CAAC"}
@@ -1,3 +1,9 @@
1
- import { type Reactor } from "../types/reactor.js";
2
- export declare function useReactor(): Reactor | undefined;
1
+ import type { AddPHGlobalEventHandler, SetPHGlobalValue, UsePHGlobalValue } from "@powerhousedao/reactor-browser";
2
+ import type { IDocumentDriveServer } from "document-drive";
3
+ /** Returns the reactor */
4
+ export declare const useReactor: UsePHGlobalValue<IDocumentDriveServer>;
5
+ /** Sets the reactor */
6
+ export declare const setReactor: SetPHGlobalValue<IDocumentDriveServer>;
7
+ /** Adds an event handler for the reactor */
8
+ export declare const addReactorEventHandler: AddPHGlobalEventHandler;
3
9
  //# sourceMappingURL=reactor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../../../src/hooks/reactor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,wBAAgB,UAAU,IAAI,OAAO,GAAG,SAAS,CAMhD"}
1
+ {"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../../../src/hooks/reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAK3D,0BAA0B;AAC1B,eAAO,MAAM,UAAU,EAAE,gBAAgB,CAAC,oBAAoB,CACrC,CAAC;AAE1B,uBAAuB;AACvB,eAAO,MAAM,UAAU,EAAE,gBAAgB,CAAC,oBAAoB,CACrC,CAAC;AAE1B,4CAA4C;AAC5C,eAAO,MAAM,sBAAsB,EAAE,uBACL,CAAC"}
@@ -1,7 +1,9 @@
1
- import { useSyncExternalStore } from "react";
2
- import { subscribeToReactor } from "../events/index.js";
3
- export function useReactor() {
4
- const reactor = useSyncExternalStore(subscribeToReactor, () => window.reactor);
5
- return reactor;
6
- }
1
+ import { makePHEventFunctions } from "./make-ph-event-functions.js";
2
+ const eventFunctions = makePHEventFunctions("reactor");
3
+ /** Returns the reactor */
4
+ export const useReactor = eventFunctions.useValue;
5
+ /** Sets the reactor */
6
+ export const setReactor = eventFunctions.setValue;
7
+ /** Adds an event handler for the reactor */
8
+ export const addReactorEventHandler = eventFunctions.addEventHandler;
7
9
  //# sourceMappingURL=reactor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reactor.js","sourceRoot":"","sources":["../../../src/hooks/reactor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD,MAAM,UAAU,UAAU;IACxB,MAAM,OAAO,GAAG,oBAAoB,CAClC,kBAAkB,EAClB,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CACrB,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"reactor.js","sourceRoot":"","sources":["../../../src/hooks/reactor.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,cAAc,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAEvD,0BAA0B;AAC1B,MAAM,CAAC,MAAM,UAAU,GACrB,cAAc,CAAC,QAAQ,CAAC;AAE1B,uBAAuB;AACvB,MAAM,CAAC,MAAM,UAAU,GACrB,cAAc,CAAC,QAAQ,CAAC;AAE1B,4CAA4C;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GACjC,cAAc,CAAC,eAAe,CAAC"}
@@ -1,2 +1,7 @@
1
- export declare function useRenown(): import("@renown/sdk").IRenown | undefined;
1
+ /** Returns the renown instance */
2
+ export declare const useRenown: () => import("@renown/sdk").IRenown | undefined;
3
+ /** Sets the renown instance */
4
+ export declare const setRenown: (value: import("@renown/sdk").IRenown | undefined) => void;
5
+ /** Adds an event handler for the renown instance */
6
+ export declare const addRenownEventHandler: () => void;
2
7
  //# sourceMappingURL=renown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renown.d.ts","sourceRoot":"","sources":["../../../src/hooks/renown.ts"],"names":[],"mappings":"AAGA,wBAAgB,SAAS,8CAGxB"}
1
+ {"version":3,"file":"renown.d.ts","sourceRoot":"","sources":["../../../src/hooks/renown.ts"],"names":[],"mappings":"AAIA,kCAAkC;AAClC,eAAO,MAAM,SAAS,iDAAgC,CAAC;AAEvD,+BAA+B;AAC/B,eAAO,MAAM,SAAS,4DAAgC,CAAC;AAEvD,oDAAoD;AACpD,eAAO,MAAM,qBAAqB,YAAuC,CAAC"}
@@ -1,7 +1,9 @@
1
- import { useSyncExternalStore } from "react";
2
- import { subscribeToRenown } from "../events/index.js";
3
- export function useRenown() {
4
- const renown = useSyncExternalStore(subscribeToRenown, () => window.renown);
5
- return renown;
6
- }
1
+ import { makePHEventFunctions } from "./make-ph-event-functions.js";
2
+ const renownEventFunctions = makePHEventFunctions("renown");
3
+ /** Returns the renown instance */
4
+ export const useRenown = renownEventFunctions.useValue;
5
+ /** Sets the renown instance */
6
+ export const setRenown = renownEventFunctions.setValue;
7
+ /** Adds an event handler for the renown instance */
8
+ export const addRenownEventHandler = renownEventFunctions.addEventHandler;
7
9
  //# sourceMappingURL=renown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renown.js","sourceRoot":"","sources":["../../../src/hooks/renown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,oBAAoB,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5E,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"renown.js","sourceRoot":"","sources":["../../../src/hooks/renown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;AAE5D,kCAAkC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC;AAEvD,+BAA+B;AAC/B,MAAM,CAAC,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC;AAEvD,oDAAoD;AACpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,eAAe,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** Returns whether revision history is visible */
2
+ export declare const useRevisionHistoryVisible: () => boolean | undefined;
3
+ /** Sets revision history visibility */
4
+ export declare const setRevisionHistoryVisible: (value: boolean | undefined) => void;
5
+ /** Adds event handler for revision history visibility */
6
+ export declare const addRevisionHistoryVisibleEventHandler: () => void;
7
+ /** Shows the revision history */
8
+ export declare function showRevisionHistory(): void;
9
+ /** Hides the revision history */
10
+ export declare function hideRevisionHistory(): void;
11
+ //# sourceMappingURL=revision-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revision-history.d.ts","sourceRoot":"","sources":["../../../src/hooks/revision-history.ts"],"names":[],"mappings":"AAMA,kDAAkD;AAClD,eAAO,MAAM,yBAAyB,2BAAyC,CAAC;AAEhF,uCAAuC;AACvC,eAAO,MAAM,yBAAyB,sCAAyC,CAAC;AAEhF,yDAAyD;AACzD,eAAO,MAAM,qCAAqC,YACH,CAAC;AAEhD,iCAAiC;AACjC,wBAAgB,mBAAmB,SAElC;AAED,iCAAiC;AACjC,wBAAgB,mBAAmB,SAElC"}
@@ -0,0 +1,17 @@
1
+ import { makePHEventFunctions } from "./make-ph-event-functions.js";
2
+ const revisionHistoryEventFunctions = makePHEventFunctions("revisionHistoryVisible");
3
+ /** Returns whether revision history is visible */
4
+ export const useRevisionHistoryVisible = revisionHistoryEventFunctions.useValue;
5
+ /** Sets revision history visibility */
6
+ export const setRevisionHistoryVisible = revisionHistoryEventFunctions.setValue;
7
+ /** Adds event handler for revision history visibility */
8
+ export const addRevisionHistoryVisibleEventHandler = revisionHistoryEventFunctions.addEventHandler;
9
+ /** Shows the revision history */
10
+ export function showRevisionHistory() {
11
+ setRevisionHistoryVisible(true);
12
+ }
13
+ /** Hides the revision history */
14
+ export function hideRevisionHistory() {
15
+ setRevisionHistoryVisible(false);
16
+ }
17
+ //# sourceMappingURL=revision-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revision-history.js","sourceRoot":"","sources":["../../../src/hooks/revision-history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,6BAA6B,GAAG,oBAAoB,CACxD,wBAAwB,CACzB,CAAC;AAEF,kDAAkD;AAClD,MAAM,CAAC,MAAM,yBAAyB,GAAG,6BAA6B,CAAC,QAAQ,CAAC;AAEhF,uCAAuC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GAAG,6BAA6B,CAAC,QAAQ,CAAC;AAEhF,yDAAyD;AACzD,MAAM,CAAC,MAAM,qCAAqC,GAChD,6BAA6B,CAAC,eAAe,CAAC;AAEhD,iCAAiC;AACjC,MAAM,UAAU,mBAAmB;IACjC,yBAAyB,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,mBAAmB;IACjC,yBAAyB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { DocumentDispatch } from "@powerhousedao/reactor-browser";
2
+ import type { Action, PHDocument } from "document-model";
3
+ /** Returns the selected document id */
4
+ export declare function useSelectedDocumentId(): string | undefined;
5
+ /** Returns the selected document. */
6
+ export declare function useSelectedDocument(): readonly [PHDocument | undefined, (actionOrActions: Action | Action[] | undefined) => void];
7
+ /** Returns the selected document of a specific type, throws an error if the found document has a different type */
8
+ export declare function useSelectedDocumentOfType(documentType: null | undefined): never[];
9
+ export declare function useSelectedDocumentOfType<TDocument extends PHDocument, TAction extends Action>(documentType: string): [TDocument, DocumentDispatch<TAction>];
10
+ //# sourceMappingURL=selected-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-document.d.ts","sourceRoot":"","sources":["../../../src/hooks/selected-document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAOzD,uCAAuC;AACvC,wBAAgB,qBAAqB,uBAKpC;AAED,qCAAqC;AACrC,wBAAgB,mBAAmB,gGAGlC;AAED,mHAAmH;AACnH,wBAAgB,yBAAyB,CACvC,YAAY,EAAE,IAAI,GAAG,SAAS,GAC7B,KAAK,EAAE,CAAC;AACX,wBAAgB,yBAAyB,CACvC,SAAS,SAAS,UAAU,EAC5B,OAAO,SAAS,MAAM,EACtB,YAAY,EAAE,MAAM,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { NoSelectedDocumentError } from "../errors.js";
2
+ import { useDocumentById } from "./document-by-id.js";
3
+ import { useDocumentOfType } from "./document-of-type.js";
4
+ import { useDocumentsInSelectedDrive } from "./items-in-selected-drive.js";
5
+ import { useSelectedNode } from "./selected-node.js";
6
+ /** Returns the selected document id */
7
+ export function useSelectedDocumentId() {
8
+ const selectedNode = useSelectedNode();
9
+ const selectedDriveDocuments = useDocumentsInSelectedDrive();
10
+ return selectedDriveDocuments?.find((d) => d.header.id === selectedNode?.id)
11
+ ?.header.id;
12
+ }
13
+ /** Returns the selected document. */
14
+ export function useSelectedDocument() {
15
+ const selectedDocumentId = useSelectedDocumentId();
16
+ return useDocumentById(selectedDocumentId);
17
+ }
18
+ export function useSelectedDocumentOfType(documentType) {
19
+ const documentId = useSelectedDocumentId();
20
+ if (!documentType) {
21
+ return [];
22
+ }
23
+ if (!documentId) {
24
+ throw new NoSelectedDocumentError();
25
+ }
26
+ return useDocumentOfType(documentId, documentType);
27
+ }
28
+ //# sourceMappingURL=selected-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-document.js","sourceRoot":"","sources":["../../../src/hooks/selected-document.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,uCAAuC;AACvC,MAAM,UAAU,qBAAqB;IACnC,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,sBAAsB,GAAG,2BAA2B,EAAE,CAAC;IAC7D,OAAO,sBAAsB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,YAAY,EAAE,EAAE,CAAC;QAC1E,EAAE,MAAM,CAAC,EAAE,CAAC;AAChB,CAAC;AAED,qCAAqC;AACrC,MAAM,UAAU,mBAAmB;IACjC,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;IACnD,OAAO,eAAe,CAAC,kBAAkB,CAAC,CAAC;AAC7C,CAAC;AAUD,MAAM,UAAU,yBAAyB,CAIvC,YAAuC;IAEvC,MAAM,UAAU,GAAG,qBAAqB,EAAE,CAAC;IAE3C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,uBAAuB,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,iBAAiB,CAAqB,UAAU,EAAE,YAAY,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { DocumentDispatch } from "@powerhousedao/reactor-browser";
2
+ import type { DocumentDriveAction, DocumentDriveDocument } from "document-drive";
3
+ /** Returns the selected drive id */
4
+ export declare const useSelectedDriveId: () => string | undefined;
5
+ /** Adds an event handler for the selected drive id */
6
+ export declare const addSelectedDriveIdEventHandler: () => void;
7
+ /** Returns the selected drive */
8
+ export declare function useSelectedDrive(): [DocumentDriveDocument, DocumentDispatch<DocumentDriveAction>];
9
+ /** Returns the selected drive, or undefined if no drive is selected */
10
+ export declare function useSelectedDriveSafe(): readonly [undefined, undefined] | [DocumentDriveDocument, DocumentDispatch<DocumentDriveAction>];
11
+ export declare function setSelectedDrive(driveOrDriveSlug: string | DocumentDriveDocument | undefined): void;
12
+ //# sourceMappingURL=selected-drive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-drive.d.ts","sourceRoot":"","sources":["../../../src/hooks/selected-drive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AASxB,oCAAoC;AACpC,eAAO,MAAM,kBAAkB,0BAAyC,CAAC;AAKzE,sDAAsD;AACtD,eAAO,MAAM,8BAA8B,YACI,CAAC;AAEhD,iCAAiC;AACjC,wBAAgB,gBAAgB,mEAS/B;AAED,uEAAuE;AACvE,wBAAgB,oBAAoB,qGAenC;AAED,wBAAgB,gBAAgB,CAC9B,gBAAgB,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS,QAmB7D"}
@@ -0,0 +1,47 @@
1
+ import { resolveUrlPathname } from "../utils/url.js";
2
+ import { useDispatch } from "./dispatch.js";
3
+ import { useDrives } from "./drives.js";
4
+ import { makePHEventFunctions } from "./make-ph-event-functions.js";
5
+ import { setSelectedNode } from "./selected-node.js";
6
+ const selectedDriveIdEventFunctions = makePHEventFunctions("selectedDriveId");
7
+ /** Returns the selected drive id */
8
+ export const useSelectedDriveId = selectedDriveIdEventFunctions.useValue;
9
+ /** Sets the selected drive id */
10
+ const setSelectedDriveId = selectedDriveIdEventFunctions.setValue;
11
+ /** Adds an event handler for the selected drive id */
12
+ export const addSelectedDriveIdEventHandler = selectedDriveIdEventFunctions.addEventHandler;
13
+ /** Returns the selected drive */
14
+ export function useSelectedDrive() {
15
+ const drive = useSelectedDriveSafe();
16
+ if (!drive[0]) {
17
+ throw new Error("There is no drive selected. Did you mean to call 'useSelectedDriveSafe'?");
18
+ }
19
+ return drive;
20
+ }
21
+ /** Returns the selected drive, or undefined if no drive is selected */
22
+ export function useSelectedDriveSafe() {
23
+ const selectedDriveId = useSelectedDriveId();
24
+ const drives = useDrives();
25
+ const selectedDrive = drives?.find((drive) => drive.header.id === selectedDriveId);
26
+ const [drive, dispatch] = useDispatch(selectedDrive);
27
+ if (!selectedDrive) {
28
+ return [undefined, undefined];
29
+ }
30
+ return [drive, dispatch];
31
+ }
32
+ export function setSelectedDrive(driveOrDriveSlug) {
33
+ const driveSlug = typeof driveOrDriveSlug === "string"
34
+ ? driveOrDriveSlug
35
+ : driveOrDriveSlug?.header.slug;
36
+ setSelectedNode(undefined);
37
+ // Find the drive by slug to get its actual ID
38
+ const drive = window.ph?.drives?.find((d) => d.header.slug === driveSlug);
39
+ const driveId = drive?.header.id;
40
+ setSelectedDriveId(driveId);
41
+ if (!driveId) {
42
+ window.history.pushState(null, "", resolveUrlPathname("/"));
43
+ return;
44
+ }
45
+ window.history.pushState(null, "", resolveUrlPathname(`/d/${driveSlug}`));
46
+ }
47
+ //# sourceMappingURL=selected-drive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-drive.js","sourceRoot":"","sources":["../../../src/hooks/selected-drive.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,6BAA6B,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;AAE9E,oCAAoC;AACpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,QAAQ,CAAC;AAEzE,iCAAiC;AACjC,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,QAAQ,CAAC;AAElE,sDAAsD;AACtD,MAAM,CAAC,MAAM,8BAA8B,GACzC,6BAA6B,CAAC,eAAe,CAAC;AAEhD,iCAAiC;AACjC,MAAM,UAAU,gBAAgB;IAC9B,MAAM,KAAK,GAAG,oBAAoB,EAAE,CAAC;IACrC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,oBAAoB;IAClC,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,aAAa,GAAG,MAAM,EAAE,IAAI,CAChC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,eAAe,CAC/C,CAAC;IAEF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;IACrD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,SAAS,EAAE,SAAS,CAAU,CAAC;IACzC,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,QAAQ,CAGtB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,gBAA4D;IAE5D,MAAM,SAAS,GACb,OAAO,gBAAgB,KAAK,QAAQ;QAClC,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC;IACpC,eAAe,CAAC,SAAS,CAAC,CAAC;IAE3B,8CAA8C;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;IAEjC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,kBAAkB,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC;AAC5E,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { FolderNode } from "document-drive";
2
+ /** Returns the selected folder. */
3
+ export declare function useSelectedFolder(): FolderNode | undefined;
4
+ //# sourceMappingURL=selected-folder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-folder.d.ts","sourceRoot":"","sources":["../../../src/hooks/selected-folder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD,mCAAmC;AACnC,wBAAgB,iBAAiB,IAAI,UAAU,GAAG,SAAS,CAI1D"}
@@ -0,0 +1,10 @@
1
+ import { isFolderNodeKind } from "../utils/nodes.js";
2
+ import { useSelectedNode } from "./selected-node.js";
3
+ /** Returns the selected folder. */
4
+ export function useSelectedFolder() {
5
+ const selectedNode = useSelectedNode();
6
+ if (isFolderNodeKind(selectedNode))
7
+ return selectedNode;
8
+ return undefined;
9
+ }
10
+ //# sourceMappingURL=selected-folder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-folder.js","sourceRoot":"","sources":["../../../src/hooks/selected-folder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,mCAAmC;AACnC,MAAM,UAAU,iBAAiB;IAC/B,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,IAAI,gBAAgB,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IACxD,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Node } from "document-drive";
2
+ export declare const addSelectedNodeIdEventHandler: () => void;
3
+ /** Returns the selected node. */
4
+ export declare function useSelectedNode(): Node | undefined;
5
+ /** Sets the selected node (file or folder). */
6
+ export declare function setSelectedNode(nodeOrNodeSlug: Node | string | undefined): void;
7
+ //# sourceMappingURL=selected-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-node.d.ts","sourceRoot":"","sources":["../../../src/hooks/selected-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAa3C,eAAO,MAAM,6BAA6B,YACI,CAAC;AAE/C,iCAAiC;AACjC,wBAAgB,eAAe,IAAI,IAAI,GAAG,SAAS,CAIlD;AAED,+CAA+C;AAC/C,wBAAgB,eAAe,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,QAwBxE"}
@@ -0,0 +1,31 @@
1
+ import { extractDriveSlugFromPath, extractNodeIdFromSlug, makeNodeSlug, resolveUrlPathname, } from "../utils/url.js";
2
+ import { useNodesInSelectedDrive } from "./items-in-selected-drive.js";
3
+ import { makePHEventFunctions } from "./make-ph-event-functions.js";
4
+ const selectedNodeIdEventFunctions = makePHEventFunctions("selectedNodeId");
5
+ const useSelectedNodeId = selectedNodeIdEventFunctions.useValue;
6
+ const setSelectedNodeId = selectedNodeIdEventFunctions.setValue;
7
+ export const addSelectedNodeIdEventHandler = selectedNodeIdEventFunctions.addEventHandler;
8
+ /** Returns the selected node. */
9
+ export function useSelectedNode() {
10
+ const selectedNodeId = useSelectedNodeId();
11
+ const nodes = useNodesInSelectedDrive();
12
+ return nodes?.find((n) => n.id === selectedNodeId);
13
+ }
14
+ /** Sets the selected node (file or folder). */
15
+ export function setSelectedNode(nodeOrNodeSlug) {
16
+ const nodeSlug = typeof nodeOrNodeSlug === "string"
17
+ ? nodeOrNodeSlug
18
+ : makeNodeSlug(nodeOrNodeSlug);
19
+ const nodeId = extractNodeIdFromSlug(nodeSlug);
20
+ setSelectedNodeId(nodeId);
21
+ const driveSlugFromPath = extractDriveSlugFromPath(window.location.pathname);
22
+ if (!driveSlugFromPath) {
23
+ return;
24
+ }
25
+ if (!nodeSlug) {
26
+ window.history.pushState(null, "", resolveUrlPathname(`/d/${driveSlugFromPath}`));
27
+ return;
28
+ }
29
+ window.history.pushState(null, "", resolveUrlPathname(`/d/${driveSlugFromPath}/${nodeSlug}`));
30
+ }
31
+ //# sourceMappingURL=selected-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selected-node.js","sourceRoot":"","sources":["../../../src/hooks/selected-node.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,YAAY,EACZ,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,MAAM,4BAA4B,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;AAC5E,MAAM,iBAAiB,GAAG,4BAA4B,CAAC,QAAQ,CAAC;AAChE,MAAM,iBAAiB,GAAG,4BAA4B,CAAC,QAAQ,CAAC;AAChE,MAAM,CAAC,MAAM,6BAA6B,GACxC,4BAA4B,CAAC,eAAe,CAAC;AAE/C,iCAAiC;AACjC,MAAM,UAAU,eAAe;IAC7B,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAG,uBAAuB,EAAE,CAAC;IACxC,OAAO,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC;AACrD,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,eAAe,CAAC,cAAyC;IACvE,MAAM,QAAQ,GACZ,OAAO,cAAc,KAAK,QAAQ;QAChC,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC/C,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1B,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7E,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO;IACT,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,CAAC,OAAO,CAAC,SAAS,CACtB,IAAI,EACJ,EAAE,EACF,kBAAkB,CAAC,MAAM,iBAAiB,EAAE,CAAC,CAC9C,CAAC;QACF,OAAO;IACT,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,SAAS,CACtB,IAAI,EACJ,EAAE,EACF,kBAAkB,CAAC,MAAM,iBAAiB,IAAI,QAAQ,EAAE,CAAC,CAC1D,CAAC;AACJ,CAAC"}