@powerhousedao/reactor-browser 4.1.0-dev.8 → 4.1.0-staging.1

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 (257) hide show
  1. package/README.md +578 -0
  2. package/dist/src/actions/dispatch.d.ts +3 -0
  3. package/dist/src/actions/dispatch.d.ts.map +1 -0
  4. package/dist/src/actions/dispatch.js +13 -0
  5. package/dist/src/actions/dispatch.js.map +1 -0
  6. package/dist/src/actions/document.d.ts +14 -0
  7. package/dist/src/actions/document.d.ts.map +1 -0
  8. package/dist/src/actions/document.js +260 -0
  9. package/dist/src/actions/document.js.map +1 -0
  10. package/dist/src/actions/drive.d.ts +14 -0
  11. package/dist/src/actions/drive.d.ts.map +1 -0
  12. package/dist/src/actions/drive.js +192 -0
  13. package/dist/src/actions/drive.js.map +1 -0
  14. package/dist/src/actions/index.d.ts +6 -0
  15. package/dist/src/actions/index.d.ts.map +1 -0
  16. package/dist/src/actions/index.js +6 -0
  17. package/dist/src/actions/index.js.map +1 -0
  18. package/dist/src/actions/queue.d.ts +9 -0
  19. package/dist/src/actions/queue.d.ts.map +1 -0
  20. package/dist/src/actions/queue.js +144 -0
  21. package/dist/src/actions/queue.js.map +1 -0
  22. package/dist/src/actions/sign.d.ts +5 -0
  23. package/dist/src/actions/sign.d.ts.map +1 -0
  24. package/dist/src/actions/sign.js +71 -0
  25. package/dist/src/actions/sign.js.map +1 -0
  26. package/dist/src/analytics/index.d.ts +2 -0
  27. package/dist/src/analytics/index.d.ts.map +1 -0
  28. package/dist/src/analytics/index.js +2 -0
  29. package/dist/src/analytics/index.js.map +1 -0
  30. package/dist/src/constants.d.ts +3 -0
  31. package/dist/src/constants.d.ts.map +1 -0
  32. package/dist/src/constants.js +3 -0
  33. package/dist/src/constants.js.map +1 -0
  34. package/dist/src/context/read-mode.d.ts.map +1 -1
  35. package/dist/src/context/read-mode.js +3 -7
  36. package/dist/src/context/read-mode.js.map +1 -1
  37. package/dist/src/crypto/index.d.ts +12 -5
  38. package/dist/src/crypto/index.d.ts.map +1 -1
  39. package/dist/src/crypto/index.js +61 -60
  40. package/dist/src/crypto/index.js.map +1 -1
  41. package/dist/src/events/add-ph-event-handlers.d.ts +2 -0
  42. package/dist/src/events/add-ph-event-handlers.d.ts.map +1 -0
  43. package/dist/src/events/add-ph-event-handlers.js +26 -0
  44. package/dist/src/events/add-ph-event-handlers.js.map +1 -0
  45. package/dist/src/events/config.d.ts +8 -0
  46. package/dist/src/events/config.d.ts.map +1 -0
  47. package/dist/src/events/config.js +25 -0
  48. package/dist/src/events/config.js.map +1 -0
  49. package/dist/src/events/crypto.d.ts +13 -0
  50. package/dist/src/events/crypto.d.ts.map +1 -0
  51. package/dist/src/events/crypto.js +49 -0
  52. package/dist/src/events/crypto.js.map +1 -0
  53. package/dist/src/events/documents.d.ts +7 -0
  54. package/dist/src/events/documents.d.ts.map +1 -0
  55. package/dist/src/events/documents.js +19 -0
  56. package/dist/src/events/documents.js.map +1 -0
  57. package/dist/src/events/drives.d.ts +13 -0
  58. package/dist/src/events/drives.d.ts.map +1 -0
  59. package/dist/src/events/drives.js +57 -0
  60. package/dist/src/events/drives.js.map +1 -0
  61. package/dist/src/events/index.d.ts +13 -0
  62. package/dist/src/events/index.d.ts.map +1 -0
  63. package/dist/src/events/index.js +13 -0
  64. package/dist/src/events/index.js.map +1 -0
  65. package/dist/src/events/nodes.d.ts +7 -0
  66. package/dist/src/events/nodes.d.ts.map +1 -0
  67. package/dist/src/events/nodes.js +34 -0
  68. package/dist/src/events/nodes.js.map +1 -0
  69. package/dist/src/events/processors.d.ts +8 -0
  70. package/dist/src/events/processors.d.ts.map +1 -0
  71. package/dist/src/events/processors.js +25 -0
  72. package/dist/src/events/processors.js.map +1 -0
  73. package/dist/src/events/reactor.d.ts +8 -0
  74. package/dist/src/events/reactor.d.ts.map +1 -0
  75. package/dist/src/events/reactor.js +25 -0
  76. package/dist/src/events/reactor.js.map +1 -0
  77. package/dist/src/events/renown.d.ts +8 -0
  78. package/dist/src/events/renown.d.ts.map +1 -0
  79. package/dist/src/events/renown.js +27 -0
  80. package/dist/src/events/renown.js.map +1 -0
  81. package/dist/src/events/types.d.ts +60 -0
  82. package/dist/src/events/types.d.ts.map +1 -0
  83. package/dist/src/{renown → events}/types.js.map +1 -1
  84. package/dist/src/events/user.d.ts +14 -0
  85. package/dist/src/events/user.d.ts.map +1 -0
  86. package/dist/src/events/user.js +50 -0
  87. package/dist/src/events/user.js.map +1 -0
  88. package/dist/src/events/vetra-packages.d.ts +8 -0
  89. package/dist/src/events/vetra-packages.d.ts.map +1 -0
  90. package/dist/src/events/vetra-packages.js +29 -0
  91. package/dist/src/events/vetra-packages.js.map +1 -0
  92. package/dist/src/hooks/config.d.ts +5 -0
  93. package/dist/src/hooks/config.d.ts.map +1 -0
  94. package/dist/src/hooks/config.js +18 -0
  95. package/dist/src/hooks/config.js.map +1 -0
  96. package/dist/src/hooks/crypto.d.ts +4 -0
  97. package/dist/src/hooks/crypto.d.ts.map +1 -0
  98. package/dist/src/hooks/crypto.js +15 -0
  99. package/dist/src/hooks/crypto.js.map +1 -0
  100. package/dist/src/hooks/dispatch.d.ts +3 -0
  101. package/dist/src/hooks/dispatch.d.ts.map +1 -0
  102. package/dist/src/hooks/dispatch.js +9 -0
  103. package/dist/src/hooks/dispatch.js.map +1 -0
  104. package/dist/src/hooks/documents.d.ts +12 -0
  105. package/dist/src/hooks/documents.d.ts.map +1 -0
  106. package/dist/src/hooks/documents.js +46 -0
  107. package/dist/src/hooks/documents.js.map +1 -0
  108. package/dist/src/hooks/{useDriveContext.d.ts → drive-context.d.ts} +1 -1
  109. package/dist/src/hooks/drive-context.d.ts.map +1 -0
  110. package/dist/src/hooks/{useDriveContext.js → drive-context.js} +1 -1
  111. package/dist/src/hooks/drive-context.js.map +1 -0
  112. package/dist/src/hooks/drives.d.ts +23 -0
  113. package/dist/src/hooks/drives.d.ts.map +1 -0
  114. package/dist/src/hooks/drives.js +88 -0
  115. package/dist/src/hooks/drives.js.map +1 -0
  116. package/dist/src/hooks/index.d.ts +11 -7
  117. package/dist/src/hooks/index.d.ts.map +1 -1
  118. package/dist/src/hooks/index.js +11 -7
  119. package/dist/src/hooks/index.js.map +1 -1
  120. package/dist/src/hooks/nodes.d.ts +41 -0
  121. package/dist/src/hooks/nodes.d.ts.map +1 -0
  122. package/dist/src/hooks/nodes.js +160 -0
  123. package/dist/src/hooks/nodes.js.map +1 -0
  124. package/dist/src/hooks/processor-manager.d.ts +3 -0
  125. package/dist/src/hooks/processor-manager.d.ts.map +1 -0
  126. package/dist/src/hooks/processor-manager.js +7 -0
  127. package/dist/src/hooks/processor-manager.js.map +1 -0
  128. package/dist/src/hooks/reactor.d.ts +3 -0
  129. package/dist/src/hooks/reactor.d.ts.map +1 -0
  130. package/dist/src/hooks/reactor.js +7 -0
  131. package/dist/src/hooks/reactor.js.map +1 -0
  132. package/dist/src/hooks/renown.d.ts +2 -0
  133. package/dist/src/hooks/renown.d.ts.map +1 -0
  134. package/dist/src/hooks/renown.js +7 -0
  135. package/dist/src/hooks/renown.js.map +1 -0
  136. package/dist/src/hooks/user.d.ts +7 -0
  137. package/dist/src/hooks/user.d.ts.map +1 -0
  138. package/dist/src/hooks/user.js +26 -0
  139. package/dist/src/hooks/user.js.map +1 -0
  140. package/dist/src/hooks/vetra-packages.d.ts +17 -0
  141. package/dist/src/hooks/vetra-packages.d.ts.map +1 -0
  142. package/dist/src/hooks/vetra-packages.js +82 -0
  143. package/dist/src/hooks/vetra-packages.js.map +1 -0
  144. package/dist/src/index.d.ts +6 -4
  145. package/dist/src/index.d.ts.map +1 -1
  146. package/dist/src/index.js +6 -2
  147. package/dist/src/index.js.map +1 -1
  148. package/dist/src/reactor.d.ts +7 -0
  149. package/dist/src/reactor.d.ts.map +1 -1
  150. package/dist/src/reactor.js +63 -0
  151. package/dist/src/reactor.js.map +1 -1
  152. package/dist/src/renown/index.d.ts +3 -0
  153. package/dist/src/renown/index.d.ts.map +1 -0
  154. package/dist/src/renown/index.js +3 -0
  155. package/dist/src/renown/index.js.map +1 -0
  156. package/dist/src/renown/utils.d.ts +7 -0
  157. package/dist/src/renown/utils.d.ts.map +1 -0
  158. package/dist/src/renown/utils.js +47 -0
  159. package/dist/src/renown/utils.js.map +1 -0
  160. package/dist/src/types/drive-editor.d.ts +9 -81
  161. package/dist/src/types/drive-editor.d.ts.map +1 -1
  162. package/dist/src/types/global.d.ts +64 -0
  163. package/dist/src/types/global.d.ts.map +1 -0
  164. package/dist/src/types/global.js +2 -0
  165. package/dist/src/types/global.js.map +1 -0
  166. package/dist/src/types/index.d.ts +3 -0
  167. package/dist/src/types/index.d.ts.map +1 -1
  168. package/dist/src/types/index.js +3 -0
  169. package/dist/src/types/index.js.map +1 -1
  170. package/dist/src/types/reactor.d.ts +4 -0
  171. package/dist/src/types/reactor.d.ts.map +1 -0
  172. package/dist/src/types/reactor.js +2 -0
  173. package/dist/src/types/reactor.js.map +1 -0
  174. package/dist/src/types/vetra.d.ts +65 -0
  175. package/dist/src/types/vetra.d.ts.map +1 -0
  176. package/dist/src/types/vetra.js +2 -0
  177. package/dist/src/types/vetra.js.map +1 -0
  178. package/dist/src/utils/drives.d.ts +32 -0
  179. package/dist/src/utils/drives.d.ts.map +1 -0
  180. package/dist/src/utils/drives.js +60 -0
  181. package/dist/src/utils/drives.js.map +1 -0
  182. package/dist/src/utils/index.d.ts +6 -4
  183. package/dist/src/utils/index.d.ts.map +1 -1
  184. package/dist/src/utils/index.js +6 -8
  185. package/dist/src/utils/index.js.map +1 -1
  186. package/dist/src/utils/nodes.d.ts +8 -0
  187. package/dist/src/utils/nodes.d.ts.map +1 -0
  188. package/dist/src/utils/nodes.js +17 -0
  189. package/dist/src/utils/nodes.js.map +1 -0
  190. package/dist/src/utils/url.d.ts +22 -0
  191. package/dist/src/utils/url.d.ts.map +1 -0
  192. package/dist/src/utils/url.js +59 -0
  193. package/dist/src/utils/url.js.map +1 -0
  194. package/dist/src/utils/user.d.ts +5 -0
  195. package/dist/src/utils/user.d.ts.map +1 -0
  196. package/dist/src/utils/user.js +15 -0
  197. package/dist/src/utils/user.js.map +1 -0
  198. package/dist/src/utils/vetra.d.ts +7 -0
  199. package/dist/src/utils/vetra.d.ts.map +1 -0
  200. package/dist/src/utils/vetra.js +78 -0
  201. package/dist/src/utils/vetra.js.map +1 -0
  202. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  203. package/dist/vitest.config.d.ts +3 -0
  204. package/dist/vitest.config.d.ts.map +1 -0
  205. package/dist/vitest.config.js +24 -0
  206. package/dist/vitest.config.js.map +1 -0
  207. package/package.json +11 -5
  208. package/dist/package.json +0 -75
  209. package/dist/src/hooks/document-state.d.ts +0 -24
  210. package/dist/src/hooks/document-state.d.ts.map +0 -1
  211. package/dist/src/hooks/document-state.js +0 -89
  212. package/dist/src/hooks/document-state.js.map +0 -1
  213. package/dist/src/hooks/useAddDebouncedOperations.d.ts +0 -7
  214. package/dist/src/hooks/useAddDebouncedOperations.d.ts.map +0 -1
  215. package/dist/src/hooks/useAddDebouncedOperations.js +0 -53
  216. package/dist/src/hooks/useAddDebouncedOperations.js.map +0 -1
  217. package/dist/src/hooks/useConnectCrypto.d.ts +0 -4
  218. package/dist/src/hooks/useConnectCrypto.d.ts.map +0 -1
  219. package/dist/src/hooks/useConnectCrypto.js +0 -57
  220. package/dist/src/hooks/useConnectCrypto.js.map +0 -1
  221. package/dist/src/hooks/useDocument.d.ts +0 -8
  222. package/dist/src/hooks/useDocument.d.ts.map +0 -1
  223. package/dist/src/hooks/useDocument.js +0 -32
  224. package/dist/src/hooks/useDocument.js.map +0 -1
  225. package/dist/src/hooks/useDocumentDispatch.d.ts +0 -10
  226. package/dist/src/hooks/useDocumentDispatch.d.ts.map +0 -1
  227. package/dist/src/hooks/useDocumentDispatch.js +0 -42
  228. package/dist/src/hooks/useDocumentDispatch.js.map +0 -1
  229. package/dist/src/hooks/useDocumentDrives.d.ts +0 -12
  230. package/dist/src/hooks/useDocumentDrives.d.ts.map +0 -1
  231. package/dist/src/hooks/useDocumentDrives.js +0 -122
  232. package/dist/src/hooks/useDocumentDrives.js.map +0 -1
  233. package/dist/src/hooks/useDocumentEditor.d.ts +0 -32
  234. package/dist/src/hooks/useDocumentEditor.d.ts.map +0 -1
  235. package/dist/src/hooks/useDocumentEditor.js +0 -41
  236. package/dist/src/hooks/useDocumentEditor.js.map +0 -1
  237. package/dist/src/hooks/useDriveActions.d.ts +0 -79
  238. package/dist/src/hooks/useDriveActions.d.ts.map +0 -1
  239. package/dist/src/hooks/useDriveActions.js +0 -108
  240. package/dist/src/hooks/useDriveActions.js.map +0 -1
  241. package/dist/src/hooks/useDriveContext.d.ts.map +0 -1
  242. package/dist/src/hooks/useDriveContext.js.map +0 -1
  243. package/dist/src/hooks/useUserPermissions.d.ts +0 -6
  244. package/dist/src/hooks/useUserPermissions.d.ts.map +0 -1
  245. package/dist/src/hooks/useUserPermissions.js +0 -7
  246. package/dist/src/hooks/useUserPermissions.js.map +0 -1
  247. package/dist/src/renown/types.d.ts +0 -76
  248. package/dist/src/renown/types.d.ts.map +0 -1
  249. package/dist/src/utils/export-document.d.ts +0 -3
  250. package/dist/src/utils/export-document.d.ts.map +0 -1
  251. package/dist/src/utils/export-document.js +0 -19
  252. package/dist/src/utils/export-document.js.map +0 -1
  253. package/dist/src/utils/signature.d.ts +0 -5
  254. package/dist/src/utils/signature.d.ts.map +0 -1
  255. package/dist/src/utils/signature.js +0 -40
  256. package/dist/src/utils/signature.js.map +0 -1
  257. /package/dist/src/{renown → events}/types.js +0 -0
@@ -0,0 +1,3 @@
1
+ declare const _default: import("vite").UserConfig;
2
+ export default _default;
3
+ //# sourceMappingURL=vitest.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.config.d.ts","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":";AAGA,wBAoBG"}
@@ -0,0 +1,24 @@
1
+ import react from "@vitejs/plugin-react";
2
+ import { defaultExclude, defineConfig } from "vitest/config";
3
+ export default defineConfig({
4
+ test: {
5
+ include: ["test/**/*.test.ts", "test/**/*.test.tsx"],
6
+ exclude: [...defaultExclude, "test/__screenshots__/**"],
7
+ globals: true,
8
+ environment: "happy-dom",
9
+ browser: {
10
+ provider: "playwright",
11
+ enabled: true,
12
+ headless: true,
13
+ instances: [{ browser: "chromium" }],
14
+ },
15
+ },
16
+ plugins: [react()],
17
+ optimizeDeps: {
18
+ exclude: ["@electric-sql/pglite"],
19
+ },
20
+ define: {
21
+ "process.env": {},
22
+ },
23
+ });
24
+ //# sourceMappingURL=vitest.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7D,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE;QACJ,OAAO,EAAE,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;QACpD,OAAO,EAAE,CAAC,GAAG,cAAc,EAAE,yBAAyB,CAAC;QACvD,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,WAAW;QACxB,OAAO,EAAE;YACP,QAAQ,EAAE,YAAY;YACtB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;SACrC;KACF;IACD,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,YAAY,EAAE;QACZ,OAAO,EAAE,CAAC,sBAAsB,CAAC;KAClC;IACD,MAAM,EAAE;QACN,aAAa,EAAE,EAAE;KAClB;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerhousedao/reactor-browser",
3
- "version": "4.1.0-dev.8",
3
+ "version": "4.1.0-staging.1",
4
4
  "license": "AGPL-3.0-only",
5
5
  "type": "module",
6
6
  "repository": {
@@ -27,9 +27,10 @@
27
27
  "@types/luxon": "^3.6.2",
28
28
  "@types/react": "^18.3.1",
29
29
  "@types/react-dom": "^18.3.1",
30
+ "@types/slug": "^5.0.9",
31
+ "@types/wicg-file-system-access": "^2020.9.8",
30
32
  "@vitejs/plugin-react": "^4.4.1",
31
33
  "@vitest/browser": "^3.1.2",
32
- "jotai": "^2.10.3",
33
34
  "playwright": "^1.51.1",
34
35
  "react": "^18.3.1",
35
36
  "react-dom": "^18.3.1",
@@ -38,7 +39,6 @@
38
39
  "vitest-browser-react": "^0.2.0"
39
40
  },
40
41
  "peerDependencies": {
41
- "jotai": "^2.10.3",
42
42
  "react": "^18.3.1",
43
43
  "react-dom": "^18.3.1"
44
44
  },
@@ -50,14 +50,20 @@
50
50
  "@powerhousedao/analytics-engine-knex": "^0.6.0",
51
51
  "@tanstack/react-query": "^5.49.2",
52
52
  "change-case": "^5.4.4",
53
+ "did-jwt": "^8.0.17",
54
+ "did-jwt-vc": "^4.0.15",
53
55
  "did-key-creator": "^1.2.0",
56
+ "fast-deep-equal": "^3.1.3",
54
57
  "kysely": "^0.28.2",
55
58
  "kysely-pglite-dialect": "^1.1.1",
56
59
  "lodash.isequal": "^4.5.0",
57
60
  "luxon": "^3.6.1",
58
61
  "lz-string": "^1.5.0",
59
- "document-drive": "4.1.0-dev.8",
60
- "document-model": "4.1.0-dev.8"
62
+ "slug": "^11.0.0",
63
+ "uint8arrays": "^5.1.0",
64
+ "@renown/sdk": "4.1.0-staging.1",
65
+ "document-model": "4.1.0-staging.1",
66
+ "document-drive": "4.1.0-staging.1"
61
67
  },
62
68
  "scripts": {
63
69
  "build:tsc": "tsc --build",
package/dist/package.json DELETED
@@ -1,75 +0,0 @@
1
- {
2
- "name": "@powerhousedao/reactor-browser",
3
- "version": "4.1.0-dev.7",
4
- "license": "AGPL-3.0-only",
5
- "type": "module",
6
- "repository": {
7
- "type": "git",
8
- "url": "https://github.com/powerhouse-inc/powerhouse"
9
- },
10
- "publishConfig": {
11
- "access": "public"
12
- },
13
- "files": [
14
- "dist"
15
- ],
16
- "types": "./dist/src/index.d.ts",
17
- "main": "./dist/src/index.js",
18
- "exports": {
19
- ".": "./dist/src/index.js",
20
- "./analytics": "./dist/src/analytics/analytics.js",
21
- "./pglite": "./dist/src/pglite/index.js",
22
- "./relational": "./dist/src/relational/index.js",
23
- "./*": "./dist/src/*.js"
24
- },
25
- "scripts": {
26
- "build:tsc": "tsc --build",
27
- "lint": "eslint .",
28
- "lint:nx": "eslint . --fix --quiet",
29
- "lint:fix": "eslint --fix",
30
- "build": "tsc --build",
31
- "build:watch": "tsc --build --watch",
32
- "prebuild": "npm run clean",
33
- "test:browser": "vitest run",
34
- "clean": "rimraf dist",
35
- "clean:node_modules": "rimraf node_modules",
36
- "install:playwright": "playwright install"
37
- },
38
- "devDependencies": {
39
- "@types/lodash.isequal": "^4.5.8",
40
- "@types/luxon": "^3.6.2",
41
- "@types/react": "^18.3.1",
42
- "@types/react-dom": "^18.3.1",
43
- "@vitejs/plugin-react": "^4.4.1",
44
- "@vitest/browser": "^3.1.2",
45
- "jotai": "^2.10.3",
46
- "playwright": "^1.51.1",
47
- "react": "^18.3.1",
48
- "react-dom": "^18.3.1",
49
- "vite-plugin-node-polyfills": "^0.23.0",
50
- "vitest": "^3.1.2",
51
- "vitest-browser-react": "^0.2.0"
52
- },
53
- "peerDependencies": {
54
- "jotai": "^2.10.3",
55
- "react": "^18.3.1",
56
- "react-dom": "^18.3.1"
57
- },
58
- "dependencies": {
59
- "@electric-sql/pglite": "^0.2.17",
60
- "@electric-sql/pglite-react": "^0.2.17",
61
- "@powerhousedao/analytics-engine-browser": "^0.6.0",
62
- "@powerhousedao/analytics-engine-core": "^0.5.0",
63
- "@powerhousedao/analytics-engine-knex": "^0.6.0",
64
- "@tanstack/react-query": "^5.49.2",
65
- "change-case": "^5.4.4",
66
- "did-key-creator": "^1.2.0",
67
- "document-drive": "workspace:*",
68
- "document-model": "workspace:*",
69
- "kysely": "^0.28.2",
70
- "kysely-pglite-dialect": "^1.1.1",
71
- "lodash.isequal": "^4.5.0",
72
- "luxon": "^3.6.1",
73
- "lz-string": "^1.5.0"
74
- }
75
- }
@@ -1,24 +0,0 @@
1
- import { type GetDocumentOptions, type IDocumentDriveServer } from "document-drive";
2
- import { type PHDocumentHeader, type PHDocument } from "document-model";
3
- export type HookState = PHDocument["state"] & Pick<PHDocumentHeader, "documentType" | "revision" | "createdAtUtcIso" | "lastModifiedAtUtcIso">;
4
- export declare function useDocumentsState(args: {
5
- reactor: IDocumentDriveServer | undefined | null;
6
- driveId: string | undefined | null;
7
- documentIds?: string[];
8
- options?: GetDocumentOptions;
9
- }): Record<string, HookState>;
10
- export declare function makeDriveDocumentStatesHook(reactor: IDocumentDriveServer | undefined | null): (args: {
11
- driveId: string | undefined | null;
12
- documentIds?: string[];
13
- options?: GetDocumentOptions;
14
- }) => Record<string, HookState>;
15
- export declare function makeDriveDocumentStateHook(reactor: IDocumentDriveServer | undefined | null): (args: {
16
- driveId: string | undefined | null;
17
- documentId: string;
18
- }) => HookState;
19
- export declare function useDocumentState(args: {
20
- reactor: IDocumentDriveServer | undefined | null;
21
- driveId: string | undefined | null;
22
- documentId: string;
23
- }): HookState;
24
- //# sourceMappingURL=document-state.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-state.d.ts","sourceRoot":"","sources":["../../../src/hooks/document-state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGxE,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,GACzC,IAAI,CACF,gBAAgB,EAChB,cAAc,GAAG,UAAU,GAAG,iBAAiB,GAAG,sBAAsB,CACzE,CAAC;AAEJ,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,OAAO,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA+D5B;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,UAGvC;IACL,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B,+BAaJ;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,UAGvC;IAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,eAYpE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,OAAO,EAAE,oBAAoB,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB,aASA"}
@@ -1,89 +0,0 @@
1
- import { useCallback, useEffect, useMemo, useRef, useState } from "react";
2
- export function useDocumentsState(args) {
3
- const { reactor, driveId, documentIds, options } = args;
4
- const [statesByDocumentId, setStatesByDocumentId] = useState({});
5
- const isInitialized = useRef(false);
6
- const isSubscribed = useRef(false);
7
- useEffect(() => {
8
- async function initialize() {
9
- if (isInitialized.current)
10
- return;
11
- if (!reactor || !driveId)
12
- return;
13
- isInitialized.current = true;
14
- const ids = documentIds ?? (await reactor.getDocuments(driveId));
15
- const statesByDocumentId = {};
16
- for (const id of ids) {
17
- const document = await reactor.getDocument(id, options);
18
- statesByDocumentId[id] = {
19
- ...document.state,
20
- documentType: document.header.documentType,
21
- revision: document.header.revision,
22
- createdAtUtcIso: document.header.createdAtUtcIso,
23
- lastModifiedAtUtcIso: document.header.lastModifiedAtUtcIso,
24
- };
25
- }
26
- setStatesByDocumentId(statesByDocumentId);
27
- }
28
- void initialize();
29
- }, [reactor, driveId, options]);
30
- useEffect(() => {
31
- if (!reactor || !driveId)
32
- return;
33
- if (isSubscribed.current)
34
- return;
35
- isSubscribed.current = true;
36
- const unsubscribe = reactor.on("strandUpdate", async (update) => {
37
- if (update.driveId !== driveId ||
38
- (documentIds && !documentIds.includes(update.documentId)))
39
- return;
40
- const updatedDocument = await reactor.getDocument(update.documentId, options);
41
- setStatesByDocumentId((prev) => {
42
- const newStatesByDocumentId = { ...prev };
43
- newStatesByDocumentId[update.documentId] = {
44
- ...updatedDocument.state,
45
- documentType: updatedDocument.header.documentType,
46
- revision: updatedDocument.header.revision,
47
- createdAtUtcIso: updatedDocument.header.createdAtUtcIso,
48
- lastModifiedAtUtcIso: updatedDocument.header.lastModifiedAtUtcIso,
49
- };
50
- return newStatesByDocumentId;
51
- });
52
- });
53
- return unsubscribe;
54
- }, [reactor, driveId, options]);
55
- return useMemo(() => statesByDocumentId, [statesByDocumentId]);
56
- }
57
- export function makeDriveDocumentStatesHook(reactor) {
58
- const useDriveDocumentStates = useCallback((args) => {
59
- const { driveId, documentIds, options } = args;
60
- return useDocumentsState({
61
- reactor,
62
- driveId,
63
- documentIds,
64
- options,
65
- });
66
- }, [reactor]);
67
- return useDriveDocumentStates;
68
- }
69
- export function makeDriveDocumentStateHook(reactor) {
70
- const useDriveDocumentState = useCallback((args) => {
71
- const { driveId, documentId } = args;
72
- return useDocumentState({
73
- reactor,
74
- driveId,
75
- documentId,
76
- });
77
- }, [reactor]);
78
- return useDriveDocumentState;
79
- }
80
- export function useDocumentState(args) {
81
- const { reactor, driveId, documentId } = args;
82
- const state = useDocumentsState({
83
- reactor,
84
- driveId,
85
- documentIds: [documentId],
86
- });
87
- return useMemo(() => state[documentId], [state, documentId]);
88
- }
89
- //# sourceMappingURL=document-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-state.js","sourceRoot":"","sources":["../../../src/hooks/document-state.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { type Operation, type PHDocument } from "document-model";
2
- import { type IDocumentDriveServer } from "document-drive";
3
- export type UseAddDebouncedOperationsProps = {
4
- documentId: string | undefined;
5
- };
6
- export declare function useAddDebouncedOperations(reactor: IDocumentDriveServer | undefined, props: UseAddDebouncedOperationsProps): (operation: Operation) => Promise<PHDocument | undefined>;
7
- //# sourceMappingURL=useAddDebouncedOperations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAddDebouncedOperations.d.ts","sourceRoot":"","sources":["../../../src/hooks/useAddDebouncedOperations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGjE,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AA0C3D,MAAM,MAAM,8BAA8B,GAAG;IAC3C,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,oBAAoB,GAAG,SAAS,EACzC,KAAK,EAAE,8BAA8B,eAvClB,SAAS,qCA2E7B"}
@@ -1,53 +0,0 @@
1
- import { useCallback, useMemo } from "react";
2
- import { useUserPermissions } from "./useUserPermissions.js";
3
- function debounceOperations(callback, timeout = 50) {
4
- let timer;
5
- const operations = [];
6
- return (operation) => {
7
- if (timer) {
8
- clearTimeout(timer);
9
- }
10
- const index = operations.findIndex((op) => op.scope === operation.scope && op.index === operation.index);
11
- if (index > -1) {
12
- const oldOperation = operations[index];
13
- if (!(oldOperation.type === operation.type &&
14
- JSON.stringify(operation.input) === JSON.stringify(oldOperation.input))) {
15
- console.warn("Two conflicting operations were dispatched:", oldOperation, operation);
16
- }
17
- operations[index] = operation;
18
- }
19
- else {
20
- operations.push(operation);
21
- }
22
- return new Promise((resolve, reject) => {
23
- timer = setTimeout(() => {
24
- callback(operations).then(resolve).catch(reject);
25
- }, timeout);
26
- });
27
- };
28
- }
29
- export function useAddDebouncedOperations(reactor, props) {
30
- const { documentId } = props;
31
- const { isAllowedToEditDocuments } = useUserPermissions() || {
32
- isAllowedToCreateDocuments: false,
33
- isAllowedToEditDocuments: false,
34
- };
35
- const addOperations = useCallback(async (id, operations) => {
36
- if (!isAllowedToEditDocuments) {
37
- throw new Error("User is not allowed to edit documents");
38
- }
39
- if (!reactor) {
40
- throw new Error("Reactor is not loaded");
41
- }
42
- if (!id) {
43
- throw new Error("Document id is not set");
44
- }
45
- const newDocument = await reactor.queueOperations(id, operations);
46
- return newDocument.document;
47
- }, [isAllowedToEditDocuments, reactor]);
48
- const addDebouncedOperations = useMemo(() => {
49
- return debounceOperations((operations) => addOperations(documentId, operations));
50
- }, [addOperations, documentId]);
51
- return addDebouncedOperations;
52
- }
53
- //# sourceMappingURL=useAddDebouncedOperations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAddDebouncedOperations.js","sourceRoot":"","sources":["../../../src/hooks/useAddDebouncedOperations.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { DID, IConnectCrypto } from "../crypto/index.js";
2
- export declare function useConnectCrypto(): IConnectCrypto;
3
- export declare function useConnectDid(): DID | undefined;
4
- //# sourceMappingURL=useConnectCrypto.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useConnectCrypto.d.ts","sourceRoot":"","sources":["../../../src/hooks/useConnectCrypto.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAqB9D,wBAAgB,gBAAgB,IAAI,cAAc,CA0BjD;AAID,wBAAgB,aAAa,IAAI,GAAG,GAAG,SAAS,CAc/C"}
@@ -1,57 +0,0 @@
1
- import { atom, useAtom } from "jotai";
2
- import { useEffect, useMemo } from "react";
3
- let _connectCrypto;
4
- async function initConnectCrypto() {
5
- const { ConnectCrypto } = await import("../crypto/index.js");
6
- const { BrowserKeyStorage } = await import("../crypto/browser.js");
7
- const connectCrypto = new ConnectCrypto(new BrowserKeyStorage());
8
- await connectCrypto.did();
9
- return connectCrypto;
10
- }
11
- function getConnectCrypto() {
12
- if (_connectCrypto) {
13
- return _connectCrypto;
14
- }
15
- _connectCrypto = initConnectCrypto();
16
- return _connectCrypto;
17
- }
18
- export function useConnectCrypto() {
19
- return useMemo(() => ({
20
- async regenerateDid() {
21
- const crypto = await getConnectCrypto();
22
- return crypto.regenerateDid();
23
- },
24
- async did() {
25
- const crypto = await getConnectCrypto();
26
- return crypto.did();
27
- },
28
- sign: async (data) => {
29
- const crypto = await getConnectCrypto();
30
- return await crypto.sign(data);
31
- },
32
- verify: async (data, signature) => {
33
- const crypto = await getConnectCrypto();
34
- return await crypto.verify(data, signature);
35
- },
36
- publicKey: async () => {
37
- const crypto = await getConnectCrypto();
38
- return await crypto.publicKey();
39
- },
40
- }), []);
41
- }
42
- const didAtom = atom(undefined);
43
- didAtom.debugLabel = "didAtomInReactorBrowser";
44
- export function useConnectDid() {
45
- const [did, setDid] = useAtom(didAtom);
46
- useEffect(() => {
47
- if (did) {
48
- return;
49
- }
50
- getConnectCrypto()
51
- .then((c) => c.did())
52
- .then((did) => setDid(did))
53
- .catch(console.error);
54
- });
55
- return did;
56
- }
57
- //# sourceMappingURL=useConnectCrypto.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useConnectCrypto.js","sourceRoot":"","sources":["../../../src/hooks/useConnectCrypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAG3C,IAAI,cAAmD,CAAC;AAExD,KAAK,UAAU,iBAAiB;IAC9B,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC7D,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IACjE,MAAM,aAAa,CAAC,GAAG,EAAE,CAAC;IAC1B,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,cAAc,GAAG,iBAAiB,EAAE,CAAC;IACrC,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,KAAK,CAAC,aAAa;YACjB,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACxC,OAAO,MAAM,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC;QACD,KAAK,CAAC,GAAG;YACP,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACxC,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,IAAgB,EAAE,EAAE;YAC/B,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACxC,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,IAAgB,EAAE,SAAqB,EAAE,EAAE;YACxD,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACxC,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC;QACD,SAAS,EAAE,KAAK,IAAI,EAAE;YACpB,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;YACxC,OAAO,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAClC,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,CAAkB,SAAS,CAAC,CAAC;AACjD,OAAO,CAAC,UAAU,GAAG,yBAAyB,CAAC;AAC/C,MAAM,UAAU,aAAa;IAC3B,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,GAAG,EAAE,CAAC;YACR,OAAO;QACT,CAAC;QACD,gBAAgB,EAAE;aACf,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;aACpB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aAC1B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,8 +0,0 @@
1
- import { type IDocumentDriveServer } from "document-drive";
2
- import { type PHDocument } from "document-model";
3
- export type DocumentMeta = {
4
- documentId?: string;
5
- documentType?: string;
6
- };
7
- export declare function useDocument(reactor: IDocumentDriveServer | undefined, documentMeta?: DocumentMeta): PHDocument | undefined;
8
- //# sourceMappingURL=useDocument.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocument.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAqB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGjD,MAAM,MAAM,YAAY,GAAG;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,wBAAgB,WAAW,CACzB,OAAO,EAAE,oBAAoB,GAAG,SAAS,EACzC,YAAY,GAAE,YAAiB,0BAqChC"}
@@ -1,32 +0,0 @@
1
- import { useCallback, useEffect, useState } from "react";
2
- export function useDocument(reactor, documentMeta = {}) {
3
- const { documentId, documentType } = documentMeta;
4
- const [document, setDocument] = useState();
5
- const onStrandUpdate = useCallback((cb) => {
6
- if (!reactor) {
7
- throw new Error("Reactor is not loaded");
8
- }
9
- return reactor.on("strandUpdate", cb);
10
- }, [reactor]);
11
- useEffect(() => {
12
- if (!reactor)
13
- return;
14
- if (!documentId || !documentType)
15
- return;
16
- reactor.getDocument(documentId).then(setDocument).catch(console.error);
17
- }, [documentId, documentType, reactor]);
18
- useEffect(() => {
19
- if (!reactor)
20
- return;
21
- if (!documentId || !documentType)
22
- return;
23
- const removeListener = onStrandUpdate((strand) => {
24
- if (strand.documentId === documentId) {
25
- reactor.getDocument(documentId).then(setDocument).catch(console.error);
26
- }
27
- });
28
- return removeListener;
29
- }, [onStrandUpdate, documentId, documentType]);
30
- return document;
31
- }
32
- //# sourceMappingURL=useDocument.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocument.js","sourceRoot":"","sources":["../../../src/hooks/useDocument.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAOzD,MAAM,UAAU,WAAW,CACzB,OAAyC,EACzC,eAA6B,EAAE;IAE/B,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,YAAY,CAAC;IAElD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAA0B,CAAC;IAEnE,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,EAAkC,EAAE,EAAE;QACrC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC,EACD,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY;YAAE,OAAO;QAEzC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACzE,CAAC,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;IAExC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY;YAAE,OAAO;QAEzC,MAAM,cAAc,GAAG,cAAc,CAAC,CAAC,MAAM,EAAE,EAAE;YAC/C,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBACrC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACzE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,cAAc,CAAC;IACxB,CAAC,EAAE,CAAC,cAAc,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IAE/C,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,10 +0,0 @@
1
- import type { Action, ActionErrorCallback, Operation, PHDocument, Reducer } from "document-model";
2
- export type DocumentDispatchCallback<TDocument extends PHDocument> = (operation: Operation, state: {
3
- prevState: TDocument;
4
- newState: TDocument;
5
- }) => void;
6
- export type DocumentDispatch<TDocument extends PHDocument> = (action: Action, callback?: DocumentDispatchCallback<TDocument>, onErrorCallback?: ActionErrorCallback) => void;
7
- type OnErrorHandler = (error: unknown) => void;
8
- export declare function useDocumentDispatch<TDocument extends PHDocument>(documentReducer: Reducer<TDocument> | undefined, initialState: TDocument | undefined, onError?: OnErrorHandler): readonly [TDocument | undefined, DocumentDispatch<TDocument>, unknown];
9
- export {};
10
- //# sourceMappingURL=useDocumentDispatch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocumentDispatch.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDocumentDispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,mBAAmB,EACnB,SAAS,EACT,UAAU,EACV,OAAO,EACR,MAAM,gBAAgB,CAAC;AAGxB,MAAM,MAAM,wBAAwB,CAAC,SAAS,SAAS,UAAU,IAAI,CACnE,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;IACL,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB,KACE,IAAI,CAAC;AAEV,MAAM,MAAM,gBAAgB,CAAC,SAAS,SAAS,UAAU,IAAI,CAC3D,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,wBAAwB,CAAC,SAAS,CAAC,EAC9C,eAAe,CAAC,EAAE,mBAAmB,KAClC,IAAI,CAAC;AAEV,KAAK,cAAc,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAE/C,wBAAgB,mBAAmB,CAAC,SAAS,SAAS,UAAU,EAC9D,eAAe,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,EAC/C,YAAY,EAAE,SAAS,GAAG,SAAS,EACnC,OAAO,GAAE,cAA8B,GACtC,SAAS,CAAC,SAAS,GAAG,SAAS,EAAE,gBAAgB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAkDxE"}
@@ -1,42 +0,0 @@
1
- import { useEffect, useState } from "react";
2
- export function useDocumentDispatch(documentReducer, initialState, onError = console.error) {
3
- const [state, setState] = useState(initialState);
4
- const [error, setError] = useState();
5
- const onErrorHandler = (error) => {
6
- setError(error);
7
- onError(error);
8
- };
9
- useEffect(() => {
10
- setState(initialState);
11
- }, [initialState]);
12
- const dispatch = (action, callback, onErrorCallback) => {
13
- setError(undefined);
14
- setState((_state) => {
15
- if (!documentReducer || !_state)
16
- return _state;
17
- try {
18
- const newState = documentReducer(_state, action);
19
- const scope = action.scope ?? "global";
20
- const operations = newState.operations[scope];
21
- const operation = operations[operations.length - 1];
22
- if (operation.error) {
23
- const error = new Error(operation.error);
24
- onErrorHandler(error);
25
- onErrorCallback?.(error);
26
- }
27
- callback?.(operation, {
28
- prevState: { ..._state },
29
- newState: { ...newState },
30
- });
31
- return newState;
32
- }
33
- catch (error) {
34
- onErrorHandler(error);
35
- onErrorCallback?.(error);
36
- return _state;
37
- }
38
- });
39
- };
40
- return [state, dispatch, error];
41
- }
42
- //# sourceMappingURL=useDocumentDispatch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocumentDispatch.js","sourceRoot":"","sources":["../../../src/hooks/useDocumentDispatch.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAkB5C,MAAM,UAAU,mBAAmB,CACjC,eAA+C,EAC/C,YAAmC,EACnC,UAA0B,OAAO,CAAC,KAAK;IAEvC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,EAAW,CAAC;IAE9C,MAAM,cAAc,GAAmB,CAAC,KAAK,EAAE,EAAE;QAC/C,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,YAAY,CAAC,CAAC;IACzB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,QAAQ,GAAgC,CAC5C,MAAM,EACN,QAAQ,EACR,eAAqC,EACrC,EAAE;QACF,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpB,QAAQ,CAAC,CAAC,MAAM,EAAE,EAAE;YAClB,IAAI,CAAC,eAAe,IAAI,CAAC,MAAM;gBAAE,OAAO,MAAM,CAAC;YAE/C,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACjD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC;gBACvC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAEpD,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oBACpB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBAEzC,cAAc,CAAC,KAAK,CAAC,CAAC;oBACtB,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBAED,QAAQ,EAAE,CAAC,SAAS,EAAE;oBACpB,SAAS,EAAE,EAAE,GAAG,MAAM,EAAE;oBACxB,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE;iBAC1B,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,cAAc,CAAC,KAAK,CAAC,CAAC;gBACtB,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC;gBACzB,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAU,CAAC;AAC3C,CAAC"}
@@ -1,12 +0,0 @@
1
- import type { IDocumentDriveServer } from "document-drive";
2
- import { type DocumentDriveDocument, type Trigger } from "document-drive";
3
- export declare function drivesToHash(drives: DocumentDriveDocument[]): string;
4
- export type IDrivesState = "INITIAL" | "LOADING" | "LOADED" | "ERROR";
5
- export declare const documentDrivesInitialized: import("jotai").PrimitiveAtom<IDrivesState> & {
6
- init: IDrivesState;
7
- };
8
- export type ClientErrorHandler = {
9
- strandsErrorHandler: (driveId: string, trigger: Trigger, status: number, errorMessage: string) => Promise<void>;
10
- };
11
- export declare function useDocumentDrives(reactor?: IDocumentDriveServer): readonly [DocumentDriveDocument[], () => Promise<void>, (clientErrorhandler: ClientErrorHandler) => (() => void) | undefined, IDrivesState];
12
- //# sourceMappingURL=useDocumentDrives.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocumentDrives.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDocumentDrives.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAW1E,wBAAgB,YAAY,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAEpE;AAuBD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;AACtE,eAAO,MAAM,yBAAyB;;CAAgC,CAAC;AAIvE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,mBAAmB,EAAE,CACnB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,KACjB,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB,CAAC;AAgDF,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,oBAAoB,gFAkCvC,kBAAkB,6CA4D1C"}