@powerhousedao/reactor-browser 4.1.0-dev.9 → 5.0.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 (263) 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 +259 -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 +194 -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/browser.d.ts.map +1 -1
  38. package/dist/src/crypto/browser.js +33 -10
  39. package/dist/src/crypto/browser.js.map +1 -1
  40. package/dist/src/crypto/index.d.ts +12 -5
  41. package/dist/src/crypto/index.d.ts.map +1 -1
  42. package/dist/src/crypto/index.js +61 -60
  43. package/dist/src/crypto/index.js.map +1 -1
  44. package/dist/src/document-model.d.ts +3 -2
  45. package/dist/src/document-model.d.ts.map +1 -1
  46. package/dist/src/document-model.js.map +1 -1
  47. package/dist/src/events/add-ph-event-handlers.d.ts +2 -0
  48. package/dist/src/events/add-ph-event-handlers.d.ts.map +1 -0
  49. package/dist/src/events/add-ph-event-handlers.js +26 -0
  50. package/dist/src/events/add-ph-event-handlers.js.map +1 -0
  51. package/dist/src/events/config.d.ts +8 -0
  52. package/dist/src/events/config.d.ts.map +1 -0
  53. package/dist/src/events/config.js +25 -0
  54. package/dist/src/events/config.js.map +1 -0
  55. package/dist/src/events/crypto.d.ts +13 -0
  56. package/dist/src/events/crypto.d.ts.map +1 -0
  57. package/dist/src/events/crypto.js +49 -0
  58. package/dist/src/events/crypto.js.map +1 -0
  59. package/dist/src/events/documents.d.ts +7 -0
  60. package/dist/src/events/documents.d.ts.map +1 -0
  61. package/dist/src/events/documents.js +19 -0
  62. package/dist/src/events/documents.js.map +1 -0
  63. package/dist/src/events/drives.d.ts +13 -0
  64. package/dist/src/events/drives.d.ts.map +1 -0
  65. package/dist/src/events/drives.js +57 -0
  66. package/dist/src/events/drives.js.map +1 -0
  67. package/dist/src/events/index.d.ts +13 -0
  68. package/dist/src/events/index.d.ts.map +1 -0
  69. package/dist/src/events/index.js +13 -0
  70. package/dist/src/events/index.js.map +1 -0
  71. package/dist/src/events/nodes.d.ts +7 -0
  72. package/dist/src/events/nodes.d.ts.map +1 -0
  73. package/dist/src/events/nodes.js +34 -0
  74. package/dist/src/events/nodes.js.map +1 -0
  75. package/dist/src/events/processors.d.ts +8 -0
  76. package/dist/src/events/processors.d.ts.map +1 -0
  77. package/dist/src/events/processors.js +25 -0
  78. package/dist/src/events/processors.js.map +1 -0
  79. package/dist/src/events/reactor.d.ts +8 -0
  80. package/dist/src/events/reactor.d.ts.map +1 -0
  81. package/dist/src/events/reactor.js +25 -0
  82. package/dist/src/events/reactor.js.map +1 -0
  83. package/dist/src/events/renown.d.ts +8 -0
  84. package/dist/src/events/renown.d.ts.map +1 -0
  85. package/dist/src/events/renown.js +27 -0
  86. package/dist/src/events/renown.js.map +1 -0
  87. package/dist/src/events/types.d.ts +60 -0
  88. package/dist/src/events/types.d.ts.map +1 -0
  89. package/dist/src/{renown → events}/types.js.map +1 -1
  90. package/dist/src/events/user.d.ts +14 -0
  91. package/dist/src/events/user.d.ts.map +1 -0
  92. package/dist/src/events/user.js +50 -0
  93. package/dist/src/events/user.js.map +1 -0
  94. package/dist/src/events/vetra-packages.d.ts +8 -0
  95. package/dist/src/events/vetra-packages.d.ts.map +1 -0
  96. package/dist/src/events/vetra-packages.js +29 -0
  97. package/dist/src/events/vetra-packages.js.map +1 -0
  98. package/dist/src/hooks/config.d.ts +5 -0
  99. package/dist/src/hooks/config.d.ts.map +1 -0
  100. package/dist/src/hooks/config.js +18 -0
  101. package/dist/src/hooks/config.js.map +1 -0
  102. package/dist/src/hooks/crypto.d.ts +4 -0
  103. package/dist/src/hooks/crypto.d.ts.map +1 -0
  104. package/dist/src/hooks/crypto.js +15 -0
  105. package/dist/src/hooks/crypto.js.map +1 -0
  106. package/dist/src/hooks/dispatch.d.ts +3 -0
  107. package/dist/src/hooks/dispatch.d.ts.map +1 -0
  108. package/dist/src/hooks/dispatch.js +9 -0
  109. package/dist/src/hooks/dispatch.js.map +1 -0
  110. package/dist/src/hooks/documents.d.ts +13 -0
  111. package/dist/src/hooks/documents.d.ts.map +1 -0
  112. package/dist/src/hooks/documents.js +46 -0
  113. package/dist/src/hooks/documents.js.map +1 -0
  114. package/dist/src/hooks/{useDriveContext.d.ts → drive-context.d.ts} +1 -1
  115. package/dist/src/hooks/drive-context.d.ts.map +1 -0
  116. package/dist/src/hooks/{useDriveContext.js → drive-context.js} +1 -1
  117. package/dist/src/hooks/drive-context.js.map +1 -0
  118. package/dist/src/hooks/drives.d.ts +24 -0
  119. package/dist/src/hooks/drives.d.ts.map +1 -0
  120. package/dist/src/hooks/drives.js +88 -0
  121. package/dist/src/hooks/drives.js.map +1 -0
  122. package/dist/src/hooks/index.d.ts +11 -7
  123. package/dist/src/hooks/index.d.ts.map +1 -1
  124. package/dist/src/hooks/index.js +11 -7
  125. package/dist/src/hooks/index.js.map +1 -1
  126. package/dist/src/hooks/nodes.d.ts +41 -0
  127. package/dist/src/hooks/nodes.d.ts.map +1 -0
  128. package/dist/src/hooks/nodes.js +160 -0
  129. package/dist/src/hooks/nodes.js.map +1 -0
  130. package/dist/src/hooks/processor-manager.d.ts +3 -0
  131. package/dist/src/hooks/processor-manager.d.ts.map +1 -0
  132. package/dist/src/hooks/processor-manager.js +7 -0
  133. package/dist/src/hooks/processor-manager.js.map +1 -0
  134. package/dist/src/hooks/reactor.d.ts +3 -0
  135. package/dist/src/hooks/reactor.d.ts.map +1 -0
  136. package/dist/src/hooks/reactor.js +7 -0
  137. package/dist/src/hooks/reactor.js.map +1 -0
  138. package/dist/src/hooks/renown.d.ts +2 -0
  139. package/dist/src/hooks/renown.d.ts.map +1 -0
  140. package/dist/src/hooks/renown.js +7 -0
  141. package/dist/src/hooks/renown.js.map +1 -0
  142. package/dist/src/hooks/user.d.ts +7 -0
  143. package/dist/src/hooks/user.d.ts.map +1 -0
  144. package/dist/src/hooks/user.js +26 -0
  145. package/dist/src/hooks/user.js.map +1 -0
  146. package/dist/src/hooks/vetra-packages.d.ts +18 -0
  147. package/dist/src/hooks/vetra-packages.d.ts.map +1 -0
  148. package/dist/src/hooks/vetra-packages.js +75 -0
  149. package/dist/src/hooks/vetra-packages.js.map +1 -0
  150. package/dist/src/index.d.ts +6 -4
  151. package/dist/src/index.d.ts.map +1 -1
  152. package/dist/src/index.js +6 -2
  153. package/dist/src/index.js.map +1 -1
  154. package/dist/src/reactor.d.ts +7 -0
  155. package/dist/src/reactor.d.ts.map +1 -1
  156. package/dist/src/reactor.js +63 -0
  157. package/dist/src/reactor.js.map +1 -1
  158. package/dist/src/renown/index.d.ts +3 -0
  159. package/dist/src/renown/index.d.ts.map +1 -0
  160. package/dist/src/renown/index.js +3 -0
  161. package/dist/src/renown/index.js.map +1 -0
  162. package/dist/src/renown/utils.d.ts +7 -0
  163. package/dist/src/renown/utils.d.ts.map +1 -0
  164. package/dist/src/renown/utils.js +52 -0
  165. package/dist/src/renown/utils.js.map +1 -0
  166. package/dist/src/types/drive-editor.d.ts +9 -81
  167. package/dist/src/types/drive-editor.d.ts.map +1 -1
  168. package/dist/src/types/global.d.ts +64 -0
  169. package/dist/src/types/global.d.ts.map +1 -0
  170. package/dist/src/types/global.js +2 -0
  171. package/dist/src/types/global.js.map +1 -0
  172. package/dist/src/types/index.d.ts +3 -0
  173. package/dist/src/types/index.d.ts.map +1 -1
  174. package/dist/src/types/index.js +3 -0
  175. package/dist/src/types/index.js.map +1 -1
  176. package/dist/src/types/reactor.d.ts +4 -0
  177. package/dist/src/types/reactor.d.ts.map +1 -0
  178. package/dist/src/types/reactor.js +2 -0
  179. package/dist/src/types/reactor.js.map +1 -0
  180. package/dist/src/types/vetra.d.ts +65 -0
  181. package/dist/src/types/vetra.d.ts.map +1 -0
  182. package/dist/src/types/vetra.js +2 -0
  183. package/dist/src/types/vetra.js.map +1 -0
  184. package/dist/src/utils/drives.d.ts +32 -0
  185. package/dist/src/utils/drives.d.ts.map +1 -0
  186. package/dist/src/utils/drives.js +60 -0
  187. package/dist/src/utils/drives.js.map +1 -0
  188. package/dist/src/utils/index.d.ts +6 -4
  189. package/dist/src/utils/index.d.ts.map +1 -1
  190. package/dist/src/utils/index.js +6 -8
  191. package/dist/src/utils/index.js.map +1 -1
  192. package/dist/src/utils/nodes.d.ts +8 -0
  193. package/dist/src/utils/nodes.d.ts.map +1 -0
  194. package/dist/src/utils/nodes.js +17 -0
  195. package/dist/src/utils/nodes.js.map +1 -0
  196. package/dist/src/utils/url.d.ts +22 -0
  197. package/dist/src/utils/url.d.ts.map +1 -0
  198. package/dist/src/utils/url.js +59 -0
  199. package/dist/src/utils/url.js.map +1 -0
  200. package/dist/src/utils/user.d.ts +5 -0
  201. package/dist/src/utils/user.d.ts.map +1 -0
  202. package/dist/src/utils/user.js +15 -0
  203. package/dist/src/utils/user.js.map +1 -0
  204. package/dist/src/utils/vetra.d.ts +7 -0
  205. package/dist/src/utils/vetra.d.ts.map +1 -0
  206. package/dist/src/utils/vetra.js +78 -0
  207. package/dist/src/utils/vetra.js.map +1 -0
  208. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  209. package/dist/vitest.config.d.ts +3 -0
  210. package/dist/vitest.config.d.ts.map +1 -0
  211. package/dist/vitest.config.js +24 -0
  212. package/dist/vitest.config.js.map +1 -0
  213. package/package.json +11 -5
  214. package/dist/package.json +0 -75
  215. package/dist/src/hooks/document-state.d.ts +0 -24
  216. package/dist/src/hooks/document-state.d.ts.map +0 -1
  217. package/dist/src/hooks/document-state.js +0 -89
  218. package/dist/src/hooks/document-state.js.map +0 -1
  219. package/dist/src/hooks/useAddDebouncedOperations.d.ts +0 -7
  220. package/dist/src/hooks/useAddDebouncedOperations.d.ts.map +0 -1
  221. package/dist/src/hooks/useAddDebouncedOperations.js +0 -53
  222. package/dist/src/hooks/useAddDebouncedOperations.js.map +0 -1
  223. package/dist/src/hooks/useConnectCrypto.d.ts +0 -4
  224. package/dist/src/hooks/useConnectCrypto.d.ts.map +0 -1
  225. package/dist/src/hooks/useConnectCrypto.js +0 -57
  226. package/dist/src/hooks/useConnectCrypto.js.map +0 -1
  227. package/dist/src/hooks/useDocument.d.ts +0 -8
  228. package/dist/src/hooks/useDocument.d.ts.map +0 -1
  229. package/dist/src/hooks/useDocument.js +0 -32
  230. package/dist/src/hooks/useDocument.js.map +0 -1
  231. package/dist/src/hooks/useDocumentDispatch.d.ts +0 -10
  232. package/dist/src/hooks/useDocumentDispatch.d.ts.map +0 -1
  233. package/dist/src/hooks/useDocumentDispatch.js +0 -42
  234. package/dist/src/hooks/useDocumentDispatch.js.map +0 -1
  235. package/dist/src/hooks/useDocumentDrives.d.ts +0 -12
  236. package/dist/src/hooks/useDocumentDrives.d.ts.map +0 -1
  237. package/dist/src/hooks/useDocumentDrives.js +0 -122
  238. package/dist/src/hooks/useDocumentDrives.js.map +0 -1
  239. package/dist/src/hooks/useDocumentEditor.d.ts +0 -32
  240. package/dist/src/hooks/useDocumentEditor.d.ts.map +0 -1
  241. package/dist/src/hooks/useDocumentEditor.js +0 -41
  242. package/dist/src/hooks/useDocumentEditor.js.map +0 -1
  243. package/dist/src/hooks/useDriveActions.d.ts +0 -79
  244. package/dist/src/hooks/useDriveActions.d.ts.map +0 -1
  245. package/dist/src/hooks/useDriveActions.js +0 -108
  246. package/dist/src/hooks/useDriveActions.js.map +0 -1
  247. package/dist/src/hooks/useDriveContext.d.ts.map +0 -1
  248. package/dist/src/hooks/useDriveContext.js.map +0 -1
  249. package/dist/src/hooks/useUserPermissions.d.ts +0 -6
  250. package/dist/src/hooks/useUserPermissions.d.ts.map +0 -1
  251. package/dist/src/hooks/useUserPermissions.js +0 -7
  252. package/dist/src/hooks/useUserPermissions.js.map +0 -1
  253. package/dist/src/renown/types.d.ts +0 -76
  254. package/dist/src/renown/types.d.ts.map +0 -1
  255. package/dist/src/utils/export-document.d.ts +0 -3
  256. package/dist/src/utils/export-document.d.ts.map +0 -1
  257. package/dist/src/utils/export-document.js +0 -19
  258. package/dist/src/utils/export-document.js.map +0 -1
  259. package/dist/src/utils/signature.d.ts +0 -5
  260. package/dist/src/utils/signature.d.ts.map +0 -1
  261. package/dist/src/utils/signature.js +0 -40
  262. package/dist/src/utils/signature.js.map +0 -1
  263. /package/dist/src/{renown → events}/types.js +0 -0
@@ -1,122 +0,0 @@
1
- import { atom, useAtom } from "jotai";
2
- import { useCallback, useMemo } from "react";
3
- import { documentToHash } from "../utils/index.js";
4
- const documentDrivesAtom = atom(new Map());
5
- documentDrivesAtom.debugLabel = "documentDrivesAtomInReactorBrowser";
6
- export function drivesToHash(drives) {
7
- return drives.map(documentToHash).join("&");
8
- }
9
- const readWriteDocumentDrivesAtom = (server) => () => atom((get) => (server ? (get(documentDrivesAtom).get(server) ?? []) : []), (_get, set, newDrives) => {
10
- set(documentDrivesAtom, (map) => {
11
- if (!server) {
12
- return new Map();
13
- }
14
- const currentDrives = map.get(server) ?? [];
15
- if (currentDrives.length !== newDrives.length ||
16
- drivesToHash(currentDrives) !== drivesToHash(newDrives)) {
17
- return new Map(map).set(server, newDrives);
18
- }
19
- else {
20
- return map;
21
- }
22
- });
23
- });
24
- export const documentDrivesInitialized = atom("INITIAL");
25
- documentDrivesInitialized.debugLabel =
26
- "documentDrivesInitializedInReactorBrowser";
27
- const FETCH_TIMEOUT = 250;
28
- let timeout;
29
- const listeners = new Array();
30
- function waitForResult(promise, callback, onError) {
31
- if (timeout) {
32
- clearTimeout(timeout);
33
- }
34
- listeners.push(callback);
35
- const listenersCopy = [...listeners];
36
- timeout = setTimeout(() => {
37
- promise()
38
- .then(() => {
39
- while (listenersCopy.length) {
40
- const listener = listenersCopy.shift();
41
- if (listener) {
42
- listener();
43
- const index = listeners.indexOf(listener);
44
- if (index > -1) {
45
- listeners.splice(index, 1);
46
- }
47
- }
48
- }
49
- })
50
- .catch(onError);
51
- }, FETCH_TIMEOUT);
52
- }
53
- async function fetchDocumentdrives(reactor) {
54
- const documentDrives = [];
55
- const driveIds = await reactor.getDrives();
56
- for (const id of driveIds) {
57
- try {
58
- const drive = await reactor.getDrive(id);
59
- documentDrives.push(drive);
60
- }
61
- catch (error) {
62
- console.error(error);
63
- }
64
- }
65
- return documentDrives;
66
- }
67
- export function useDocumentDrives(reactor) {
68
- const [documentDrives, setDocumentDrives] = useAtom(useMemo(readWriteDocumentDrivesAtom(reactor), [reactor]));
69
- const refreshDocumentDrives = useCallback(async () => {
70
- if (!reactor) {
71
- return;
72
- }
73
- return new Promise((resolve, reject) => {
74
- waitForResult(() => fetchDocumentdrives(reactor)
75
- .then((documentDrives) => {
76
- setDocumentDrives(documentDrives);
77
- })
78
- .catch(reject), resolve, reject);
79
- });
80
- }, [reactor]);
81
- const [status, setStatus] = useAtom(documentDrivesInitialized);
82
- if (status === "INITIAL" && reactor) {
83
- setStatus("LOADING");
84
- refreshDocumentDrives()
85
- .then(() => setStatus("LOADED"))
86
- .catch(() => setStatus("ERROR"));
87
- }
88
- const serverSubscribeUpdates = useCallback((clientErrorhandler) => {
89
- if (!reactor) {
90
- return;
91
- }
92
- const unsubStrandUpdate = reactor.on("strandUpdate", () => refreshDocumentDrives());
93
- const unsubSyncStatus = reactor.on("syncStatus", async (_event, _status, error) => {
94
- if (error) {
95
- console.error(error);
96
- }
97
- if (error)
98
- await refreshDocumentDrives();
99
- });
100
- const unsubDriveAdded = reactor.on("driveAdded", () => refreshDocumentDrives());
101
- const unsubDriveDeleted = reactor.on("driveDeleted", () => refreshDocumentDrives());
102
- const unsubDriveOperations = reactor.on("driveOperationsAdded", () => refreshDocumentDrives());
103
- const unsubOnSyncError = reactor.on("clientStrandsError", clientErrorhandler.strandsErrorHandler);
104
- const unsubDefaultRemoteDrive = reactor.on("defaultRemoteDrive", () => refreshDocumentDrives());
105
- return () => {
106
- unsubStrandUpdate();
107
- unsubSyncStatus();
108
- unsubDriveAdded();
109
- unsubDriveDeleted();
110
- unsubDriveOperations();
111
- unsubOnSyncError();
112
- unsubDefaultRemoteDrive();
113
- };
114
- }, [reactor, refreshDocumentDrives]);
115
- return useMemo(() => [
116
- documentDrives,
117
- refreshDocumentDrives,
118
- serverSubscribeUpdates,
119
- status,
120
- ], [documentDrives, status]);
121
- }
122
- //# sourceMappingURL=useDocumentDrives.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocumentDrives.js","sourceRoot":"","sources":["../../../src/hooks/useDocumentDrives.ts"],"names":[],"mappings":"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"}
@@ -1,32 +0,0 @@
1
- import { type IDocumentDriveServer } from "document-drive";
2
- import { type Action, type ActionErrorCallback, type DocumentModelModule, type Operation, type PHDocument } from "document-model";
3
- import { type DID, type IConnectCrypto } from "../crypto/index.js";
4
- import { type User } from "../renown/types.js";
5
- export type DocumentDispatchCallback<TDocument extends PHDocument> = (operation: Operation, state: {
6
- prevState: TDocument;
7
- newState: TDocument;
8
- }) => void;
9
- export type UseDocumentEditorProps<TDocument extends PHDocument> = {
10
- driveId: string | undefined;
11
- nodeId: string | undefined;
12
- document: TDocument | undefined;
13
- documentModelModule: DocumentModelModule<TDocument> | undefined;
14
- user?: User;
15
- onExport?: () => void;
16
- onOpenSwitchboardLink?: () => Promise<void>;
17
- onChange?: (document: TDocument) => void;
18
- };
19
- export declare function useDocumentEditorProps<TDocument extends PHDocument>(reactor: IDocumentDriveServer | undefined, props: UseDocumentEditorProps<TDocument> & {
20
- connectDid?: DID;
21
- sign: IConnectCrypto["sign"];
22
- }): {
23
- dispatch: (action: Action, onErrorCallback?: ActionErrorCallback) => void;
24
- document: TDocument | undefined;
25
- error: unknown;
26
- };
27
- export declare function useDocumentEditor<TDocument extends PHDocument>(reactor: IDocumentDriveServer | undefined, props: UseDocumentEditorProps<TDocument>): {
28
- dispatch: (action: Action, onErrorCallback?: ActionErrorCallback) => void;
29
- document: TDocument | undefined;
30
- error: unknown;
31
- };
32
- //# sourceMappingURL=useDocumentEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocumentEditor.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDocumentEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EACL,KAAK,MAAM,EACX,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EACd,KAAK,UAAU,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAM/C,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,sBAAsB,CAAC,SAAS,SAAS,UAAU,IAAI;IACjE,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,EAAE,SAAS,GAAG,SAAS,CAAC;IAChC,mBAAmB,EAAE,mBAAmB,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAChE,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;CAC1C,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,SAAS,SAAS,UAAU,EACjE,OAAO,EAAE,oBAAoB,GAAG,SAAS,EACzC,KAAK,EAAE,sBAAsB,CAAC,SAAS,CAAC,GAAG;IACzC,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;CAC9B;uBAoByB,MAAM,oBAAoB,mBAAmB;;;EAqCxE;AAED,wBAAgB,iBAAiB,CAAC,SAAS,SAAS,UAAU,EAC5D,OAAO,EAAE,oBAAoB,GAAG,SAAS,EACzC,KAAK,EAAE,sBAAsB,CAAC,SAAS,CAAC;uBAzCd,MAAM,oBAAoB,mBAAmB;;;EAqDxE"}
@@ -1,41 +0,0 @@
1
- import { addActionContext, signOperation } from "../utils/signature.js";
2
- import { useAddDebouncedOperations } from "./useAddDebouncedOperations.js";
3
- import { useConnectCrypto, useConnectDid } from "./useConnectCrypto.js";
4
- import { useDocumentDispatch } from "./useDocumentDispatch.js";
5
- export function useDocumentEditorProps(reactor, props) {
6
- const { nodeId, documentModelModule, document: initialDocument, user, connectDid, sign, } = props;
7
- const addDebouncedOperations = useAddDebouncedOperations(reactor, {
8
- documentId: nodeId,
9
- });
10
- const [document, _dispatch, error] = useDocumentDispatch(documentModelModule?.reducer, initialDocument);
11
- function dispatch(action, onErrorCallback) {
12
- const callback = (operation, state) => {
13
- const { prevState } = state;
14
- if (!nodeId) {
15
- throw new Error("Node id is not set");
16
- }
17
- signOperation(operation, sign, nodeId, prevState, documentModelModule?.reducer, user)
18
- .then((op) => {
19
- return addDebouncedOperations(op);
20
- })
21
- .catch(console.error);
22
- };
23
- _dispatch(addActionContext(action, connectDid, user), callback, onErrorCallback);
24
- }
25
- return {
26
- dispatch,
27
- document,
28
- error,
29
- };
30
- }
31
- export function useDocumentEditor(reactor, props) {
32
- const connectDid = useConnectDid();
33
- const { sign } = useConnectCrypto();
34
- const documentEditorDispatch = useDocumentEditorProps(reactor, {
35
- ...props,
36
- connectDid,
37
- sign,
38
- });
39
- return documentEditorDispatch;
40
- }
41
- //# sourceMappingURL=useDocumentEditor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDocumentEditor.js","sourceRoot":"","sources":["../../../src/hooks/useDocumentEditor.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAqB/D,MAAM,UAAU,sBAAsB,CACpC,OAAyC,EACzC,KAGC;IAED,MAAM,EACJ,MAAM,EACN,mBAAmB,EACnB,QAAQ,EAAE,eAAe,EACzB,IAAI,EACJ,UAAU,EACV,IAAI,GACL,GAAG,KAAK,CAAC;IAEV,MAAM,sBAAsB,GAAG,yBAAyB,CAAC,OAAO,EAAE;QAChE,UAAU,EAAE,MAAM;KACnB,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,mBAAmB,CACtD,mBAAmB,EAAE,OAAO,EAC5B,eAAe,CAChB,CAAC;IAEF,SAAS,QAAQ,CAAC,MAAc,EAAE,eAAqC;QACrE,MAAM,QAAQ,GAAwC,CACpD,SAAS,EACT,KAAK,EACL,EAAE;YACF,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;YAE5B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACxC,CAAC;YAED,aAAa,CACX,SAAS,EACT,IAAI,EACJ,MAAM,EACN,SAAS,EACT,mBAAmB,EAAE,OAAO,EAC5B,IAAI,CACL;iBACE,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;gBACX,OAAO,sBAAsB,CAAC,EAAE,CAAC,CAAC;YACpC,CAAC,CAAC;iBACD,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAC;QAEF,SAAS,CACP,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,EAC1C,QAAQ,EACR,eAAe,CAChB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAAyC,EACzC,KAAwC;IAExC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,EAAE,IAAI,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAEpC,MAAM,sBAAsB,GAAG,sBAAsB,CAAC,OAAO,EAAE;QAC7D,GAAG,KAAK;QACR,UAAU;QACV,IAAI;KACL,CAAC,CAAC;IAEH,OAAO,sBAAsB,CAAC;AAChC,CAAC"}
@@ -1,79 +0,0 @@
1
- import { type DocumentDriveDocument } from "document-drive";
2
- import { type EditorDispatch, type PHDocument } from "document-model";
3
- import { type IDriveContext } from "../types/drive-editor.js";
4
- /**
5
- * Actions for managing a document drive
6
- */
7
- export interface IDriveActions {
8
- /** The drive context provided by the host application */
9
- context: IDriveContext;
10
- /**
11
- * Creates a new folder in the drive
12
- * @param name - Name of the folder
13
- * @param parentFolder - Optional ID of parent folder
14
- * @param id - Optional custom ID for the folder
15
- */
16
- addFolder: (name: string, parentFolder?: string | null, id?: string) => Promise<void>;
17
- /**
18
- * Adds a file to the drive
19
- * @param file - File to be added
20
- * @param parentFolder - Optional ID of parent folder (defaults to selected folder)
21
- * @param name - Optional custom name for the file
22
- */
23
- addFile: (file: File, parentFolder?: string, name?: string) => Promise<void>;
24
- /**
25
- * Creates a new document in the drive
26
- * @param name - Name of the document
27
- * @param documentType - Type of document to create
28
- * @param document - Optional document content
29
- * @param parentFolder - Optional ID of parent folder
30
- * @param id - Optional custom ID for the document
31
- */
32
- addDocument: (name: string, documentType: string, document?: PHDocument, parentFolder?: string, id?: string) => Promise<void>;
33
- /**
34
- * Deletes a node from the drive
35
- * @param id - ID of the node to delete
36
- */
37
- deleteNode: (id: string) => Promise<void>;
38
- /**
39
- * Renames a node in the drive
40
- * @param id - ID of the node to rename
41
- * @param name - New name for the node
42
- */
43
- renameNode: (id: string, name: string) => Promise<void>;
44
- /**
45
- * Moves a node to a new parent folder
46
- * @param sourceId - ID of the node to move
47
- * @param targetId - ID of the target parent folder
48
- */
49
- moveNode: (sourceId: string, targetId: string) => Promise<void>;
50
- /**
51
- * Copies a node to a new location
52
- * @param sourceId - ID of the node to copy
53
- * @param targetFolderId - Optional ID of the target folder
54
- */
55
- copyNode: (sourceId: string, targetFolderId: string | undefined) => Promise<void>;
56
- /**
57
- * Creates a copy of a node in the same folder
58
- * @param sourceId - ID of the node to duplicate
59
- */
60
- duplicateNode: (sourceId: string) => Promise<void>;
61
- }
62
- /**
63
- * Hook that provides actions for managing a document drive
64
- *
65
- * @param document - The document drive document
66
- * @param dispatch - Function to dispatch drive actions
67
- * @param context - The drive context containing UI-related functions
68
- * @returns Object containing drive management actions
69
- *
70
- * @example
71
- * const {
72
- * addFolder,
73
- * addFile,
74
- * deleteNode,
75
- * moveNode
76
- * } = useDriveActions(document, dispatch, driveContext);
77
- */
78
- export declare function useDriveActions(document: DocumentDriveDocument, dispatch: EditorDispatch, context: IDriveContext): IDriveActions;
79
- //# sourceMappingURL=useDriveActions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDriveActions.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDriveActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,qBAAqB,EAQ3B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,UAAU,EAEhB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAc9D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,yDAAyD;IACzD,OAAO,EAAE,aAAa,CAAC;IAEvB;;;;;OAKG;IACH,SAAS,EAAE,CACT,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,EAAE,CAAC,EAAE,MAAM,KACR,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB;;;;;OAKG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7E;;;;;;;OAOG;IACH,WAAW,EAAE,CACX,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,UAAU,EACrB,YAAY,CAAC,EAAE,MAAM,EACrB,EAAE,CAAC,EAAE,MAAM,KACR,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB;;;OAGG;IACH,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;;OAIG;IACH,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;;OAIG;IACH,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE;;;;OAIG;IACH,QAAQ,EAAE,CACR,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,GAAG,SAAS,KAC/B,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB;;;OAGG;IACH,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD;AAoID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,qBAAqB,EAC/B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,aAAa,GACrB,aAAa,CAKf"}
@@ -1,108 +0,0 @@
1
- import { addFolder, copyNode, deleteNode, generateNodesCopy, isFolderNode, moveNode, updateNode, } from "document-drive";
2
- import { generateId as _generateId, } from "document-model";
3
- import { useMemo } from "react";
4
- const generateId = () => _generateId().toString();
5
- /**
6
- * Retrieves a node from the drive by its ID
7
- * @param id - The ID of the node to find
8
- * @param drive - The document drive to search in
9
- * @returns The found node or undefined
10
- */
11
- function getNode(id, drive) {
12
- return drive.state.global.nodes.find((node) => node.id === id);
13
- }
14
- /**
15
- * Creates an object containing actions for managing a document drive
16
- * @param document - The document drive document
17
- * @param dispatch - Function to dispatch drive actions
18
- * @param context - The drive context provided by the host application
19
- */
20
- function createDriveActions(document, dispatch, context) {
21
- const drive = document;
22
- const driveId = drive.header.id;
23
- const handleAddFolder = async (name, parentFolder, id = generateId()) => {
24
- dispatch(addFolder({
25
- id,
26
- name,
27
- parentFolder: parentFolder ?? null,
28
- }));
29
- };
30
- const addDocument = async (name, documentType, document, parentFolder, id = generateId()) => {
31
- await context.addDocument(driveId, name, documentType, parentFolder, document, id);
32
- };
33
- const addFile = async (file, parentFolderId, name = file.name.replace(/\.zip$/gim, "")) => {
34
- await context.addFile(file, driveId, name, parentFolderId ?? undefined);
35
- };
36
- const handleDeleteNode = async (id) => {
37
- dispatch(deleteNode({ id }));
38
- };
39
- const renameNode = async (id, name) => {
40
- dispatch(updateNode({ id, name }));
41
- };
42
- const handleMoveNode = async (sourceId, targetId) => {
43
- dispatch(moveNode({
44
- srcFolder: sourceId,
45
- targetParentFolder: targetId,
46
- }));
47
- };
48
- const handleCopyNode = async (sourceId, targetFolderId) => {
49
- const target = targetFolderId ? getNode(targetFolderId, drive) : undefined;
50
- if (targetFolderId && !target && targetFolderId !== driveId) {
51
- throw new Error(`Target node with id "${targetFolderId}" not found`);
52
- }
53
- if (target && !isFolderNode(target)) {
54
- throw new Error(`Target node with id "${targetFolderId}" is not a folder`);
55
- }
56
- const source = getNode(sourceId, drive);
57
- if (!source) {
58
- throw new Error(`Source node with id "${sourceId}" not found`);
59
- }
60
- const copyNodesInput = generateNodesCopy({
61
- srcId: sourceId,
62
- targetParentFolder: target?.id,
63
- targetName: source.name,
64
- }, generateId, drive.state.global.nodes);
65
- const copyActions = copyNodesInput.map((copyNodeInput) => copyNode(copyNodeInput));
66
- for (const copyAction of copyActions) {
67
- dispatch(copyAction); // TODO support batching dispatch
68
- }
69
- };
70
- const duplicateNode = async (sourceId) => {
71
- const node = getNode(sourceId, drive);
72
- if (!node) {
73
- throw new Error(`Node with id "${sourceId}" not found`);
74
- }
75
- await handleCopyNode(node.id, node.parentFolder || undefined);
76
- };
77
- return {
78
- context,
79
- addFolder: handleAddFolder,
80
- addFile,
81
- addDocument,
82
- deleteNode: handleDeleteNode,
83
- renameNode,
84
- moveNode: handleMoveNode,
85
- copyNode: handleCopyNode,
86
- duplicateNode,
87
- };
88
- }
89
- /**
90
- * Hook that provides actions for managing a document drive
91
- *
92
- * @param document - The document drive document
93
- * @param dispatch - Function to dispatch drive actions
94
- * @param context - The drive context containing UI-related functions
95
- * @returns Object containing drive management actions
96
- *
97
- * @example
98
- * const {
99
- * addFolder,
100
- * addFile,
101
- * deleteNode,
102
- * moveNode
103
- * } = useDriveActions(document, dispatch, driveContext);
104
- */
105
- export function useDriveActions(document, dispatch, context) {
106
- return useMemo(() => createDriveActions(document, dispatch, context), [document, dispatch, context]);
107
- }
108
- //# sourceMappingURL=useDriveActions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDriveActions.js","sourceRoot":"","sources":["../../../src/hooks/useDriveActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,QAAQ,EACR,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,UAAU,IAAI,WAAW,GAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGhC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;AAElD;;;;;GAKG;AACH,SAAS,OAAO,CAAC,EAAU,EAAE,KAA4B;IACvD,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACjE,CAAC;AAkFD;;;;;GAKG;AACH,SAAS,kBAAkB,CACzB,QAA+B,EAC/B,QAAwB,EACxB,OAAsB;IAEtB,MAAM,KAAK,GAAG,QAAQ,CAAC;IACvB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IAEhC,MAAM,eAAe,GAAG,KAAK,EAC3B,IAAY,EACZ,YAA4B,EAC5B,EAAE,GAAG,UAAU,EAAE,EACjB,EAAE;QACF,QAAQ,CACN,SAAS,CAAC;YACR,EAAE;YACF,IAAI;YACJ,YAAY,EAAE,YAAY,IAAI,IAAI;SACnC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,EACvB,IAAY,EACZ,YAAoB,EACpB,QAAqB,EACrB,YAAqB,EACrB,EAAE,GAAG,UAAU,EAAE,EACjB,EAAE;QACF,MAAM,OAAO,CAAC,WAAW,CACvB,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,EAAE,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,KAAK,EACnB,IAAU,EACV,cAAyC,EACzC,OAAe,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,EACjD,EAAE;QACF,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,IAAI,SAAS,CAAC,CAAC;IAC1E,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAU,EAAE,EAAE;QAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,KAAK,EAAE,EAAU,EAAE,IAAY,EAAE,EAAE;QACpD,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,EAAE,QAAgB,EAAE,QAAgB,EAAE,EAAE;QAClE,QAAQ,CACN,QAAQ,CAAC;YACP,SAAS,EAAE,QAAQ;YACnB,kBAAkB,EAAE,QAAQ;SAC7B,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,EAC1B,QAAgB,EAChB,cAAkC,EAClC,EAAE;QACF,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,IAAI,cAAc,IAAI,CAAC,MAAM,IAAI,cAAc,KAAK,OAAO,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,wBAAwB,cAAc,aAAa,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACb,wBAAwB,cAAc,mBAAmB,CAC1D,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,aAAa,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,cAAc,GAAG,iBAAiB,CACtC;YACE,KAAK,EAAE,QAAQ;YACf,kBAAkB,EAAE,MAAM,EAAE,EAAE;YAC9B,UAAU,EAAE,MAAM,CAAC,IAAI;SACxB,EACD,UAAU,EACV,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CACzB,CAAC;QAEF,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE,CACvD,QAAQ,CAAC,aAAa,CAAC,CACxB,CAAC;QAEF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,iCAAiC;QACzD,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,EAAE,QAAgB,EAAE,EAAE;QAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,iBAAiB,QAAQ,aAAa,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,CAAC;IAChE,CAAC,CAAC;IAEF,OAAO;QACL,OAAO;QACP,SAAS,EAAE,eAAe;QAC1B,OAAO;QACP,WAAW;QACX,UAAU,EAAE,gBAAgB;QAC5B,UAAU;QACV,QAAQ,EAAE,cAAc;QACxB,QAAQ,EAAE,cAAc;QACxB,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,eAAe,CAC7B,QAA+B,EAC/B,QAAwB,EACxB,OAAsB;IAEtB,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,EACrD,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAC9B,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDriveContext.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDriveContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAI9D,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CACzC,iBAAiB,CAAC;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,CAAC,CAG5C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,kBAQ9B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDriveContext.js","sourceRoot":"","sources":["../../../src/hooks/useDriveContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAA0B,MAAM,OAAO,CAAC;AAG1E,MAAM,YAAY,GAAG,aAAa,CAA4B,SAAS,CAAC,CAAC;AAEzE,MAAM,CAAC,MAAM,oBAAoB,GAE7B,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC3B,KAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAAyB,CACxE,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,6 +0,0 @@
1
- export type UserPermissions = {
2
- isAllowedToCreateDocuments: boolean;
3
- isAllowedToEditDocuments: boolean;
4
- };
5
- export declare function useUserPermissions(): UserPermissions | undefined;
6
- //# sourceMappingURL=useUserPermissions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useUserPermissions.d.ts","sourceRoot":"","sources":["../../../src/hooks/useUserPermissions.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B,0BAA0B,EAAE,OAAO,CAAC;IACpC,wBAAwB,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,wBAAgB,kBAAkB,IAAI,eAAe,GAAG,SAAS,CAKhE"}
@@ -1,7 +0,0 @@
1
- export function useUserPermissions() {
2
- return {
3
- isAllowedToCreateDocuments: true,
4
- isAllowedToEditDocuments: true,
5
- };
6
- }
7
- //# sourceMappingURL=useUserPermissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useUserPermissions.js","sourceRoot":"","sources":["../../../src/hooks/useUserPermissions.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,0BAA0B,EAAE,IAAI;QAChC,wBAAwB,EAAE,IAAI;KAC/B,CAAC;AACJ,CAAC"}
@@ -1,76 +0,0 @@
1
- import type { User as EditorUser } from "document-model";
2
- import type { IStorage } from "../storage/index.js";
3
- import { type CREDENTIAL_TYPES } from "./constants.js";
4
- export type User = EditorUser & {
5
- did: string;
6
- credential: PowerhouseVerifiableCredential | undefined;
7
- };
8
- export type Unsubscribe = () => void;
9
- export interface IRenown {
10
- user: () => Promise<User | undefined>;
11
- login: (did: string) => Promise<User | undefined>;
12
- logout: () => Promise<void>;
13
- on: {
14
- user: (cb: (user: User) => void) => Unsubscribe;
15
- };
16
- }
17
- export type RenownStorage = IStorage<{
18
- user: User | undefined;
19
- }>;
20
- type IssuerType<T> = {
21
- id: string;
22
- } & T;
23
- type CredentialSubjecType<T> = {
24
- id?: string;
25
- } & T;
26
- interface CredentialStatus {
27
- id: string;
28
- type: string;
29
- }
30
- interface CredentialSchema {
31
- id: string;
32
- type: string;
33
- }
34
- interface IVerifiableCredentialPayload<Subject, Issuer> {
35
- "@context": string[];
36
- id: string;
37
- type: string[];
38
- issuer: IssuerType<Issuer>;
39
- issuanceDate: string;
40
- expirationDate?: string;
41
- credentialSubject: CredentialSubjecType<Subject>;
42
- credentialStatus?: CredentialStatus;
43
- credentialSchema: CredentialSchema;
44
- }
45
- interface IProof {
46
- verificationMethod: string;
47
- ethereumAddress: `0x${string}`;
48
- created: string;
49
- proofPurpose: string;
50
- type: string;
51
- proofValue: string;
52
- eip712: {
53
- domain: {
54
- name: string;
55
- version: string;
56
- chainId: number;
57
- verifyingContract: string;
58
- };
59
- types: typeof CREDENTIAL_TYPES;
60
- primaryType: "VerifiableCredential";
61
- };
62
- }
63
- export interface IVerifiableCredential<Subject, Issuer> extends IVerifiableCredentialPayload<Subject, Issuer> {
64
- proof: IProof;
65
- }
66
- export interface IPowerhouseCredentialSubject {
67
- id: string;
68
- app: string;
69
- name?: string;
70
- }
71
- export interface IPowerhouseIssuerType {
72
- ethereumAddress: `0x${string}`;
73
- }
74
- export type PowerhouseVerifiableCredential = IVerifiableCredential<IPowerhouseCredentialSubject, IPowerhouseIssuerType>;
75
- export {};
76
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/renown/types.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { type PHDocument } from "document-model";
2
- export declare const exportDocument: (document: PHDocument, name?: string, extension?: string) => Promise<void>;
3
- //# sourceMappingURL=export-document.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"export-document.d.ts","sourceRoot":"","sources":["../../../src/utils/export-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAa,MAAM,gBAAgB,CAAC;AAE5D,eAAO,MAAM,cAAc,GACzB,UAAU,UAAU,EACpB,OAAO,MAAM,EACb,YAAY,MAAM,kBAoBnB,CAAC"}
@@ -1,19 +0,0 @@
1
- import { createZip } from "document-model";
2
- export const exportDocument = async (document, name, extension) => {
3
- const zip = createZip(document);
4
- const ext = extension ? `.${extension.replace(/^\./, "")}` : "";
5
- try {
6
- const blob = await zip.generateAsync({ type: "blob" });
7
- const link = window.document.createElement("a");
8
- link.style.display = "none";
9
- link.href = URL.createObjectURL(blob);
10
- link.download = `${name || document.header.name || "Untitled"}${ext}.zip`;
11
- window.document.body.appendChild(link);
12
- link.click();
13
- window.document.body.removeChild(link);
14
- }
15
- catch (error) {
16
- console.error(error);
17
- }
18
- };
19
- //# sourceMappingURL=export-document.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"export-document.js","sourceRoot":"","sources":["../../../src/utils/export-document.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE5D,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,QAAoB,EACpB,IAAa,EACb,SAAkB,EAClB,EAAE;IACF,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEhE,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,GAAG,GAAG,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,UAAU,GAAG,GAAG,MAAM,CAAC;QAE1E,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import { type Action, type Operation, type PHDocument, type Reducer, type User } from "document-model";
2
- import type { User as RenownUser } from "../renown/types.js";
3
- export declare function signOperation<TDocument extends PHDocument>(operation: Operation, sign: (data: Uint8Array) => Promise<Uint8Array>, documentId: string, document: TDocument, reducer?: Reducer<TDocument>, user?: User): Promise<Operation>;
4
- export declare function addActionContext<A extends Action = Action>(action: A, connectDid?: string, user?: RenownUser): A;
5
- //# sourceMappingURL=signature.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../src/utils/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAGX,KAAK,SAAS,EAEd,KAAK,UAAU,EACf,KAAK,OAAO,EACZ,KAAK,IAAI,EACV,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE7D,wBAAsB,aAAa,CAAC,SAAS,SAAS,UAAU,EAC9D,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,CAAC,EAC/C,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,SAAS,EACnB,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,EAC5B,IAAI,CAAC,EAAE,IAAI,GACV,OAAO,CAAC,SAAS,CAAC,CA4BpB;AAED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EACxD,MAAM,EAAE,CAAC,EACT,UAAU,CAAC,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,UAAU,KAqBlB"}
@@ -1,40 +0,0 @@
1
- import { buildSignedOperation, } from "document-model";
2
- export async function signOperation(operation, sign, documentId, document, reducer, user) {
3
- if (!user)
4
- return operation;
5
- if (!operation.context)
6
- return operation;
7
- if (!operation.context.signer)
8
- return operation;
9
- if (!reducer) {
10
- console.error(`Document model '${document.header.documentType}' does not have a reducer`);
11
- return operation;
12
- }
13
- const context = {
14
- documentId,
15
- signer: operation.context.signer,
16
- };
17
- const signedOperation = await buildSignedOperation(operation, reducer, document, context, sign);
18
- return signedOperation;
19
- }
20
- export function addActionContext(action, connectDid, user) {
21
- if (!user)
22
- return action;
23
- const signer = {
24
- app: {
25
- name: "Connect",
26
- key: connectDid || "",
27
- },
28
- user: {
29
- address: user.address,
30
- networkId: user.networkId,
31
- chainId: user.chainId,
32
- },
33
- signatures: [],
34
- };
35
- return {
36
- context: { signer },
37
- ...action,
38
- };
39
- }
40
- //# sourceMappingURL=signature.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signature.js","sourceRoot":"","sources":["../../../src/utils/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,oBAAoB,GAMrB,MAAM,gBAAgB,CAAC;AAGxB,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,SAAoB,EACpB,IAA+C,EAC/C,UAAkB,EAClB,QAAmB,EACnB,OAA4B,EAC5B,IAAW;IAEX,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,CAAC,SAAS,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACX,mBAAmB,QAAQ,CAAC,MAAM,CAAC,YAAY,2BAA2B,CAC3E,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,OAAO,GAGT;QACF,UAAU;QACV,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM;KACjC,CAAC;IAEF,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAChD,SAAS,EACT,OAAO,EACP,QAAQ,EACR,OAAO,EACP,IAAI,CACL,CAAC;IAEF,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,MAAS,EACT,UAAmB,EACnB,IAAiB;IAEjB,IAAI,CAAC,IAAI;QAAE,OAAO,MAAM,CAAC;IAEzB,MAAM,MAAM,GAAiB;QAC3B,GAAG,EAAE;YACH,IAAI,EAAE,SAAS;YACf,GAAG,EAAE,UAAU,IAAI,EAAE;SACtB;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;QACD,UAAU,EAAE,EAAE;KACf,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,EAAE,MAAM,EAAE;QACnB,GAAG,MAAM;KACV,CAAC;AACJ,CAAC"}
File without changes