@powerhousedao/connect 1.0.16-dev.0 → 1.0.16-dev.2

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 (74) hide show
  1. package/dist/assets/{app-CMOavKiq.js → app-DhH3gUSI.js} +60 -56
  2. package/dist/assets/{app-loader-DC5IyHMQ.js → app-loader-Btk_wf_z.js} +123 -67
  3. package/dist/assets/{ccip-DSbQ3ps3.js → ccip-D9a0ttP2.js} +3 -3
  4. package/dist/assets/{content-CHzDFdGF.js → content-BlRqE_8w.js} +18 -3
  5. package/dist/assets/{index-DPALYL1s.js → index-BuxuyYQU.js} +3 -3
  6. package/dist/assets/{index-CL8GxjbV.js → index-D3bygFYe.js} +4 -4
  7. package/dist/assets/{index-BAzB-bGZ.js → index-Whh7mT2J.js} +3 -3
  8. package/dist/assets/{main.glrVfQff.js → main.C1DJvpcL.js} +1 -1
  9. package/dist/index.html +2 -34
  10. package/dist/vite-envs.sh +1 -1
  11. package/package.json +9 -9
  12. package/dist/modules/@powerhousedao/reactor-browser/chunk-2ESYSVXG.js +0 -48
  13. package/dist/modules/@powerhousedao/reactor-browser/chunk-2ONJ2PX4.js +0 -50
  14. package/dist/modules/@powerhousedao/reactor-browser/chunk-2X2M6BYG.js +0 -2542
  15. package/dist/modules/@powerhousedao/reactor-browser/chunk-7MMXY5VI.js +0 -14203
  16. package/dist/modules/@powerhousedao/reactor-browser/chunk-7OQWVUC5.js +0 -43
  17. package/dist/modules/@powerhousedao/reactor-browser/chunk-C7QRY43M.js +0 -786
  18. package/dist/modules/@powerhousedao/reactor-browser/chunk-CO2RVWYY.js +0 -67
  19. package/dist/modules/@powerhousedao/reactor-browser/chunk-DKDARAJS.js +0 -0
  20. package/dist/modules/@powerhousedao/reactor-browser/chunk-EB4SAP74.js +0 -178
  21. package/dist/modules/@powerhousedao/reactor-browser/chunk-FQF4YAVC.js +0 -11917
  22. package/dist/modules/@powerhousedao/reactor-browser/chunk-GDP7BUIH.js +0 -45
  23. package/dist/modules/@powerhousedao/reactor-browser/chunk-IQTSFTNF.js +0 -48
  24. package/dist/modules/@powerhousedao/reactor-browser/chunk-J5TYPY7U.js +0 -36
  25. package/dist/modules/@powerhousedao/reactor-browser/chunk-KEMIF43H.js +0 -82
  26. package/dist/modules/@powerhousedao/reactor-browser/chunk-LH2T6NLN.js +0 -0
  27. package/dist/modules/@powerhousedao/reactor-browser/chunk-LRNZZ3SR.js +0 -14
  28. package/dist/modules/@powerhousedao/reactor-browser/chunk-NHD6VUCD.js +0 -53
  29. package/dist/modules/@powerhousedao/reactor-browser/chunk-OHBF7Q5F.js +0 -0
  30. package/dist/modules/@powerhousedao/reactor-browser/chunk-OVGOA2P5.js +0 -11
  31. package/dist/modules/@powerhousedao/reactor-browser/chunk-P6NJ6IAQ.js +0 -12
  32. package/dist/modules/@powerhousedao/reactor-browser/chunk-RGIB4DD4.js +0 -162
  33. package/dist/modules/@powerhousedao/reactor-browser/chunk-SNZRCTNV.js +0 -2477
  34. package/dist/modules/@powerhousedao/reactor-browser/chunk-TNPKLKIJ.js +0 -0
  35. package/dist/modules/@powerhousedao/reactor-browser/chunk-U34SEKEB.js +0 -250
  36. package/dist/modules/@powerhousedao/reactor-browser/chunk-U36SV333.js +0 -0
  37. package/dist/modules/@powerhousedao/reactor-browser/chunk-VT7IMWQB.js +0 -0
  38. package/dist/modules/@powerhousedao/reactor-browser/chunk-XBTEGV5M.js +0 -17
  39. package/dist/modules/@powerhousedao/reactor-browser/chunk-Y2AV245J.js +0 -113
  40. package/dist/modules/@powerhousedao/reactor-browser/chunk-Y7NTRTMT.js +0 -25
  41. package/dist/modules/@powerhousedao/reactor-browser/chunk-YG67WAIS.js +0 -0
  42. package/dist/modules/@powerhousedao/reactor-browser/chunk-YWKVPJNL.js +0 -52
  43. package/dist/modules/@powerhousedao/reactor-browser/chunk-ZL5IPB6D.js +0 -0
  44. package/dist/modules/@powerhousedao/reactor-browser/context/index.js +0 -16
  45. package/dist/modules/@powerhousedao/reactor-browser/context/read-mode.js +0 -15
  46. package/dist/modules/@powerhousedao/reactor-browser/crypto/browser.js +0 -7
  47. package/dist/modules/@powerhousedao/reactor-browser/crypto/index.js +0 -7
  48. package/dist/modules/@powerhousedao/reactor-browser/document-model.js +0 -10
  49. package/dist/modules/@powerhousedao/reactor-browser/hooks/document-state.js +0 -96
  50. package/dist/modules/@powerhousedao/reactor-browser/hooks/index.js +0 -98
  51. package/dist/modules/@powerhousedao/reactor-browser/hooks/useAddDebouncedOperations.js +0 -11
  52. package/dist/modules/@powerhousedao/reactor-browser/hooks/useConnectCrypto.js +0 -12
  53. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDocument.js +0 -7
  54. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDocumentDispatch.js +0 -7
  55. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDocumentDrives.js +0 -13
  56. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDocumentEditor.js +0 -20
  57. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDriveActions.js +0 -9
  58. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDriveActionsWithUiNodes.js +0 -14
  59. package/dist/modules/@powerhousedao/reactor-browser/hooks/useDriveContext.js +0 -9
  60. package/dist/modules/@powerhousedao/reactor-browser/hooks/useUiNodesContext.js +0 -46
  61. package/dist/modules/@powerhousedao/reactor-browser/hooks/useUserPermissions.js +0 -7
  62. package/dist/modules/@powerhousedao/reactor-browser/index.js +0 -127
  63. package/dist/modules/@powerhousedao/reactor-browser/reactor.js +0 -11
  64. package/dist/modules/@powerhousedao/reactor-browser/renown/constants.js +0 -53
  65. package/dist/modules/@powerhousedao/reactor-browser/renown/types.js +0 -1
  66. package/dist/modules/@powerhousedao/reactor-browser/storage/index.js +0 -1
  67. package/dist/modules/@powerhousedao/reactor-browser/storage/types.js +0 -1
  68. package/dist/modules/@powerhousedao/reactor-browser/types/drive-editor.js +0 -1
  69. package/dist/modules/@powerhousedao/reactor-browser/types/index.js +0 -2
  70. package/dist/modules/@powerhousedao/reactor-browser/uiNodes/constants.js +0 -37
  71. package/dist/modules/@powerhousedao/reactor-browser/uiNodes/types.js +0 -1
  72. package/dist/modules/@powerhousedao/reactor-browser/utils/export-document.js +0 -8
  73. package/dist/modules/@powerhousedao/reactor-browser/utils/index.js +0 -9
  74. package/dist/modules/@powerhousedao/reactor-browser/utils/signature.js +0 -10
@@ -1,250 +0,0 @@
1
- import {
2
- atom,
3
- useAtom
4
- } from "./chunk-C7QRY43M.js";
5
- import {
6
- documentToHash
7
- } from "./chunk-P6NJ6IAQ.js";
8
-
9
- // ../../packages/reactor-browser/dist/src/hooks/useDocumentDrives.js
10
- import { useMemo, useCallback } from "react";
11
-
12
- // ../../node_modules/.pnpm/jotai@2.12.2_@types+react@18.3.20_react@18.3.1/node_modules/jotai/esm/vanilla/utils.mjs
13
- var RESET = Symbol(
14
- (import.meta.env ? import.meta.env.MODE : void 0) !== "production" ? "RESET" : ""
15
- );
16
- function atomFamily(initializeAtom, areEqual) {
17
- let shouldRemove = null;
18
- const atoms = /* @__PURE__ */ new Map();
19
- const listeners = /* @__PURE__ */ new Set();
20
- const createAtom = (param) => {
21
- let item;
22
- if (areEqual === void 0) {
23
- item = atoms.get(param);
24
- } else {
25
- for (const [key, value] of atoms) {
26
- if (areEqual(key, param)) {
27
- item = value;
28
- break;
29
- }
30
- }
31
- }
32
- if (item !== void 0) {
33
- if (shouldRemove == null ? void 0 : shouldRemove(item[1], param)) {
34
- createAtom.remove(param);
35
- } else {
36
- return item[0];
37
- }
38
- }
39
- const newAtom = initializeAtom(param);
40
- atoms.set(param, [newAtom, Date.now()]);
41
- notifyListeners("CREATE", param, newAtom);
42
- return newAtom;
43
- };
44
- const notifyListeners = (type, param, atom2) => {
45
- for (const listener of listeners) {
46
- listener({ type, param, atom: atom2 });
47
- }
48
- };
49
- createAtom.unstable_listen = (callback) => {
50
- listeners.add(callback);
51
- return () => {
52
- listeners.delete(callback);
53
- };
54
- };
55
- createAtom.getParams = () => atoms.keys();
56
- createAtom.remove = (param) => {
57
- if (areEqual === void 0) {
58
- if (!atoms.has(param)) return;
59
- const [atom2] = atoms.get(param);
60
- atoms.delete(param);
61
- notifyListeners("REMOVE", param, atom2);
62
- } else {
63
- for (const [key, [atom2]] of atoms) {
64
- if (areEqual(key, param)) {
65
- atoms.delete(key);
66
- notifyListeners("REMOVE", key, atom2);
67
- break;
68
- }
69
- }
70
- }
71
- };
72
- createAtom.setShouldRemove = (fn) => {
73
- shouldRemove = fn;
74
- if (!shouldRemove) return;
75
- for (const [key, [atom2, createdAt]] of atoms) {
76
- if (shouldRemove(createdAt, key)) {
77
- atoms.delete(key);
78
- notifyListeners("REMOVE", key, atom2);
79
- }
80
- }
81
- };
82
- return createAtom;
83
- }
84
- var isPromiseLike = (x) => typeof (x == null ? void 0 : x.then) === "function";
85
- function createJSONStorage(getStringStorage = () => {
86
- try {
87
- return window.localStorage;
88
- } catch (e) {
89
- if ((import.meta.env ? import.meta.env.MODE : void 0) !== "production") {
90
- if (typeof window !== "undefined") {
91
- console.warn(e);
92
- }
93
- }
94
- return void 0;
95
- }
96
- }, options) {
97
- var _a;
98
- let lastStr;
99
- let lastValue;
100
- const storage = {
101
- getItem: (key, initialValue) => {
102
- var _a2, _b;
103
- const parse = (str2) => {
104
- str2 = str2 || "";
105
- if (lastStr !== str2) {
106
- try {
107
- lastValue = JSON.parse(str2, options == null ? void 0 : options.reviver);
108
- } catch (e) {
109
- return initialValue;
110
- }
111
- lastStr = str2;
112
- }
113
- return lastValue;
114
- };
115
- const str = (_b = (_a2 = getStringStorage()) == null ? void 0 : _a2.getItem(key)) != null ? _b : null;
116
- if (isPromiseLike(str)) {
117
- return str.then(parse);
118
- }
119
- return parse(str);
120
- },
121
- setItem: (key, newValue) => {
122
- var _a2;
123
- return (_a2 = getStringStorage()) == null ? void 0 : _a2.setItem(
124
- key,
125
- JSON.stringify(newValue, options == null ? void 0 : options.replacer)
126
- );
127
- },
128
- removeItem: (key) => {
129
- var _a2;
130
- return (_a2 = getStringStorage()) == null ? void 0 : _a2.removeItem(key);
131
- }
132
- };
133
- const createHandleSubscribe = (subscriber2) => (key, callback, initialValue) => subscriber2(key, (v) => {
134
- let newValue;
135
- try {
136
- newValue = JSON.parse(v || "");
137
- } catch (e) {
138
- newValue = initialValue;
139
- }
140
- callback(newValue);
141
- });
142
- let subscriber;
143
- try {
144
- subscriber = (_a = getStringStorage()) == null ? void 0 : _a.subscribe;
145
- } catch (e) {
146
- }
147
- if (!subscriber && typeof window !== "undefined" && typeof window.addEventListener === "function" && window.Storage) {
148
- subscriber = (key, callback) => {
149
- if (!(getStringStorage() instanceof window.Storage)) {
150
- return () => {
151
- };
152
- }
153
- const storageEventCallback = (e) => {
154
- if (e.storageArea === getStringStorage() && e.key === key) {
155
- callback(e.newValue);
156
- }
157
- };
158
- window.addEventListener("storage", storageEventCallback);
159
- return () => {
160
- window.removeEventListener("storage", storageEventCallback);
161
- };
162
- };
163
- }
164
- if (subscriber) {
165
- storage.subscribe = createHandleSubscribe(subscriber);
166
- }
167
- return storage;
168
- }
169
- var defaultStorage = createJSONStorage();
170
-
171
- // ../../packages/reactor-browser/dist/src/hooks/useDocumentDrives.js
172
- var documentDrivesAtom = atom(/* @__PURE__ */ new Map());
173
- function drivesToHash(drives) {
174
- return drives.map(documentToHash).join("&");
175
- }
176
- var readWriteDocumentDrivesAtom = (server) => () => atom((get) => server ? get(documentDrivesAtom).get(server) ?? [] : [], (_get, set, newDrives) => {
177
- set(documentDrivesAtom, (map) => {
178
- if (!server) {
179
- return /* @__PURE__ */ new Map();
180
- }
181
- const currentDrives = map.get(server) ?? [];
182
- if (currentDrives.length !== newDrives.length || drivesToHash(currentDrives) !== drivesToHash(newDrives)) {
183
- return new Map(map).set(server, newDrives);
184
- } else {
185
- return map;
186
- }
187
- });
188
- });
189
- var documentDrivesInitializedMapAtomFamily = atomFamily(() => atom("INITIAL"));
190
- function useDocumentDrives(reactor) {
191
- const [documentDrives, setDocumentDrives] = useAtom(useMemo(readWriteDocumentDrivesAtom(reactor), [reactor]));
192
- const refreshDocumentDrives = useCallback(async () => {
193
- if (!reactor) {
194
- return;
195
- }
196
- const documentDrives2 = [];
197
- try {
198
- const driveIds = await reactor.getDrives();
199
- for (const id of driveIds) {
200
- try {
201
- const drive = await reactor.getDrive(id);
202
- documentDrives2.push(drive);
203
- } catch (error) {
204
- console.error(error);
205
- }
206
- }
207
- } catch (error) {
208
- console.error(error);
209
- } finally {
210
- setDocumentDrives(documentDrives2);
211
- }
212
- }, [reactor]);
213
- const [status, setStatus] = useAtom(documentDrivesInitializedMapAtomFamily(reactor));
214
- if (status === "INITIAL") {
215
- setStatus("LOADING");
216
- refreshDocumentDrives().then(() => setStatus("LOADED")).catch(() => setStatus("ERROR"));
217
- }
218
- const serverSubscribeUpdates = useCallback((clientErrorhandler) => {
219
- if (!reactor) {
220
- return;
221
- }
222
- const unsub1 = reactor.on("syncStatus", async (_event, _status, error) => {
223
- if (error) {
224
- console.error(error);
225
- }
226
- await refreshDocumentDrives();
227
- });
228
- const unsub2 = reactor.on("strandUpdate", () => refreshDocumentDrives());
229
- const unsubOnSyncError = reactor.on("clientStrandsError", clientErrorhandler.strandsErrorHandler);
230
- const unsub3 = reactor.on("defaultRemoteDrive", () => refreshDocumentDrives());
231
- return () => {
232
- unsub1();
233
- unsub2();
234
- unsubOnSyncError();
235
- unsub3();
236
- };
237
- }, [reactor, refreshDocumentDrives]);
238
- return useMemo(() => [
239
- documentDrives,
240
- refreshDocumentDrives,
241
- serverSubscribeUpdates,
242
- status
243
- ], [documentDrives, status]);
244
- }
245
-
246
- export {
247
- drivesToHash,
248
- documentDrivesInitializedMapAtomFamily,
249
- useDocumentDrives
250
- };
@@ -1,17 +0,0 @@
1
- // ../../packages/reactor-browser/dist/src/hooks/useDriveContext.js
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { createContext, useContext } from "react";
4
- var DriveContext = createContext(void 0);
5
- var DriveContextProvider = ({ value, children }) => _jsx(DriveContext.Provider, { value, children });
6
- function useDriveContext() {
7
- const context = useContext(DriveContext);
8
- if (!context) {
9
- throw new Error("useDriveContext must be used within a DriveContextProvider");
10
- }
11
- return context;
12
- }
13
-
14
- export {
15
- DriveContextProvider,
16
- useDriveContext
17
- };
@@ -1,113 +0,0 @@
1
- import {
2
- addFolder,
3
- copyNode,
4
- deleteNode,
5
- generateAddNodeAction,
6
- generateNodesCopy,
7
- isFileNode,
8
- isFolderNode,
9
- moveNode,
10
- updateNode
11
- } from "./chunk-7MMXY5VI.js";
12
- import {
13
- generateId
14
- } from "./chunk-FQF4YAVC.js";
15
-
16
- // ../../packages/reactor-browser/dist/src/hooks/useDriveActions.js
17
- import { useMemo } from "react";
18
- var generateId2 = () => generateId().toString();
19
- function getNode(id, drive) {
20
- return drive.state.global.nodes.find((node) => node.id === id);
21
- }
22
- function createDriveActions(document, dispatch, context) {
23
- const drive = document;
24
- const { id: driveId } = drive.state.global;
25
- const { selectedNode } = context;
26
- const handleAddFolder = async (name, parentFolder, id = generateId2()) => {
27
- dispatch(addFolder({
28
- id,
29
- name,
30
- parentFolder: parentFolder ?? null
31
- }));
32
- };
33
- const addDocument = async (name, documentType, document2, parentFolder, id = generateId2()) => {
34
- const action = generateAddNodeAction(drive.state.global, {
35
- id,
36
- name,
37
- parentFolder: parentFolder ?? null,
38
- documentType,
39
- document: document2
40
- }, ["global"]);
41
- dispatch(action);
42
- };
43
- const addFile = async (file, parentFolder = selectedNode && isFileNode(selectedNode) ? void 0 : selectedNode?.id, name = file.name.replace(/\.zip$/gim, "")) => {
44
- const folder = parentFolder ? getNode(parentFolder, drive) : void 0;
45
- if (parentFolder && !folder) {
46
- throw new Error(`Parent folder with id "${parentFolder}" not found`);
47
- }
48
- if (folder && !isFolderNode(folder)) {
49
- throw new Error(`Parent folder with id "${parentFolder}" is not a folder`);
50
- }
51
- await context.addFile(file, driveId, name, parentFolder);
52
- };
53
- const handleDeleteNode = async (id) => {
54
- dispatch(deleteNode({ id }));
55
- };
56
- const renameNode = async (id, name) => {
57
- dispatch(updateNode({ id, name }));
58
- };
59
- const handleMoveNode = async (sourceId, targetId) => {
60
- dispatch(moveNode({
61
- srcFolder: sourceId,
62
- targetParentFolder: targetId
63
- }));
64
- };
65
- const handleCopyNode = async (sourceId, targetFolderId) => {
66
- const target = targetFolderId ? getNode(targetFolderId, drive) : void 0;
67
- if (targetFolderId && !target) {
68
- throw new Error(`Target node with id "${targetFolderId}" not found`);
69
- }
70
- if (target && !isFolderNode(target)) {
71
- throw new Error(`Target node with id "${targetFolderId}" is not a folder`);
72
- }
73
- const source = getNode(sourceId, drive);
74
- if (!source) {
75
- throw new Error(`Source node with id "${sourceId}" not found`);
76
- }
77
- const copyNodesInput = generateNodesCopy({
78
- srcId: sourceId,
79
- targetParentFolder: target?.id,
80
- targetName: source.name
81
- }, generateId2, drive.state.global.nodes);
82
- const copyActions = copyNodesInput.map((copyNodeInput) => copyNode(copyNodeInput));
83
- for (const copyAction of copyActions) {
84
- dispatch(copyAction);
85
- }
86
- };
87
- const duplicateNode = async (sourceId) => {
88
- const node = getNode(sourceId, drive);
89
- if (!node) {
90
- throw new Error(`Node with id "${sourceId}" not found`);
91
- }
92
- await handleCopyNode(node.id, node.parentFolder || void 0);
93
- };
94
- return {
95
- context,
96
- selectNode: context.selectNode,
97
- addFolder: handleAddFolder,
98
- addFile,
99
- addDocument,
100
- deleteNode: handleDeleteNode,
101
- renameNode,
102
- moveNode: handleMoveNode,
103
- copyNode: handleCopyNode,
104
- duplicateNode
105
- };
106
- }
107
- function useDriveActions(document, dispatch, context) {
108
- return useMemo(() => createDriveActions(document, dispatch, context), [document, dispatch, context]);
109
- }
110
-
111
- export {
112
- useDriveActions
113
- };
@@ -1,25 +0,0 @@
1
- import {
2
- createZip
3
- } from "./chunk-FQF4YAVC.js";
4
-
5
- // ../../packages/reactor-browser/dist/src/utils/export-document.js
6
- var exportDocument = async (document, name, extension) => {
7
- const zip = createZip(document);
8
- const ext = extension ? `.${extension.replace(/^\./, "")}` : "";
9
- try {
10
- const blob = await zip.generateAsync({ type: "blob" });
11
- const link = window.document.createElement("a");
12
- link.style.display = "none";
13
- link.href = URL.createObjectURL(blob);
14
- link.download = `${name || document.name || "Untitled"}${ext}.zip`;
15
- window.document.body.appendChild(link);
16
- link.click();
17
- window.document.body.removeChild(link);
18
- } catch (error) {
19
- console.error(error);
20
- }
21
- };
22
-
23
- export {
24
- exportDocument
25
- };
@@ -1,52 +0,0 @@
1
- // ../../packages/reactor-browser/dist/src/crypto/browser.js
2
- var BrowserKeyStorage = class _BrowserKeyStorage {
3
- static #DB_NAME = "browserKeyDB";
4
- static #STORE_NAME = "keyPairs";
5
- static #KEY = "keyPair";
6
- #db;
7
- constructor() {
8
- this.#db = new Promise((resolve, reject) => {
9
- const req = indexedDB.open(_BrowserKeyStorage.#DB_NAME, 1);
10
- req.onupgradeneeded = () => {
11
- req.result.createObjectStore(_BrowserKeyStorage.#STORE_NAME);
12
- };
13
- req.onsuccess = () => resolve(req.result);
14
- req.onerror = () => reject(req.error);
15
- });
16
- }
17
- async #useStore(mode = "readwrite") {
18
- const database = await this.#db;
19
- const transaction = database.transaction(_BrowserKeyStorage.#STORE_NAME, mode);
20
- const store = transaction.objectStore(_BrowserKeyStorage.#STORE_NAME);
21
- return store;
22
- }
23
- async saveKeyPair(keyPair) {
24
- const store = await this.#useStore();
25
- const request = store.put(keyPair, _BrowserKeyStorage.#KEY);
26
- return new Promise((resolve, reject) => {
27
- request.onsuccess = () => {
28
- resolve();
29
- };
30
- request.onerror = () => {
31
- reject(new Error("Failed to save key pair"));
32
- };
33
- });
34
- }
35
- async loadKeyPair() {
36
- const store = await this.#useStore("readonly");
37
- const request = store.getAll();
38
- return new Promise((resolve, reject) => {
39
- request.onsuccess = () => {
40
- const keyPair = request.result.length ? request.result[0] : void 0;
41
- resolve(keyPair);
42
- };
43
- request.onerror = () => {
44
- reject(new Error("Failed to load key pair"));
45
- };
46
- });
47
- }
48
- };
49
-
50
- export {
51
- BrowserKeyStorage
52
- };
@@ -1,16 +0,0 @@
1
- import "../chunk-U36SV333.js";
2
- import {
3
- ReadModeContext,
4
- ReadModeContextProvider,
5
- useReadModeContext
6
- } from "../chunk-EB4SAP74.js";
7
- import "../chunk-OVGOA2P5.js";
8
- import "../chunk-P6NJ6IAQ.js";
9
- import "../chunk-7MMXY5VI.js";
10
- import "../chunk-FQF4YAVC.js";
11
- import "../chunk-2ESYSVXG.js";
12
- export {
13
- ReadModeContext,
14
- ReadModeContextProvider,
15
- useReadModeContext
16
- };
@@ -1,15 +0,0 @@
1
- import {
2
- ReadModeContext,
3
- ReadModeContextProvider,
4
- useReadModeContext
5
- } from "../chunk-EB4SAP74.js";
6
- import "../chunk-OVGOA2P5.js";
7
- import "../chunk-P6NJ6IAQ.js";
8
- import "../chunk-7MMXY5VI.js";
9
- import "../chunk-FQF4YAVC.js";
10
- import "../chunk-2ESYSVXG.js";
11
- export {
12
- ReadModeContext,
13
- ReadModeContextProvider,
14
- useReadModeContext
15
- };
@@ -1,7 +0,0 @@
1
- import {
2
- BrowserKeyStorage
3
- } from "../chunk-YWKVPJNL.js";
4
- import "../chunk-2ESYSVXG.js";
5
- export {
6
- BrowserKeyStorage
7
- };
@@ -1,7 +0,0 @@
1
- import {
2
- ConnectCrypto
3
- } from "../chunk-2X2M6BYG.js";
4
- import "../chunk-2ESYSVXG.js";
5
- export {
6
- ConnectCrypto
7
- };
@@ -1,10 +0,0 @@
1
- import {
2
- baseDocumentModels,
3
- baseDocumentModelsMap
4
- } from "./chunk-LRNZZ3SR.js";
5
- import "./chunk-FQF4YAVC.js";
6
- import "./chunk-2ESYSVXG.js";
7
- export {
8
- baseDocumentModels,
9
- baseDocumentModelsMap
10
- };
@@ -1,96 +0,0 @@
1
- import "../chunk-2ESYSVXG.js";
2
-
3
- // ../../packages/reactor-browser/dist/src/hooks/document-state.js
4
- import { useCallback, useEffect, useMemo, useRef, useState } from "react";
5
- function useDocumentsState(args) {
6
- const { reactor, driveId, documentIds, options } = args;
7
- const [statesByDocumentId, setStatesByDocumentId] = useState({});
8
- const isInitialized = useRef(false);
9
- const isSubscribed = useRef(false);
10
- useEffect(() => {
11
- async function initialize() {
12
- if (isInitialized.current)
13
- return;
14
- if (!reactor || !driveId)
15
- return;
16
- isInitialized.current = true;
17
- const ids = documentIds ?? await reactor.getDocuments(driveId);
18
- const statesByDocumentId2 = {};
19
- for (const id of ids) {
20
- const document = await reactor.getDocument(driveId, id, options);
21
- statesByDocumentId2[id] = {
22
- ...document.state,
23
- documentType: document.documentType,
24
- revision: document.revision,
25
- created: document.created,
26
- lastModified: document.lastModified
27
- };
28
- }
29
- setStatesByDocumentId(statesByDocumentId2);
30
- }
31
- void initialize();
32
- }, [reactor, driveId, options]);
33
- useEffect(() => {
34
- if (!reactor || !driveId)
35
- return;
36
- if (isSubscribed.current)
37
- return;
38
- isSubscribed.current = true;
39
- const unsubscribe = reactor.on("strandUpdate", async (update) => {
40
- if (update.driveId !== driveId || documentIds && !documentIds.includes(update.documentId))
41
- return;
42
- const updatedDocument = await reactor.getDocument(driveId, update.documentId, options);
43
- setStatesByDocumentId((prev) => {
44
- const newStatesByDocumentId = { ...prev };
45
- newStatesByDocumentId[update.documentId] = {
46
- ...updatedDocument.state,
47
- documentType: updatedDocument.documentType,
48
- revision: updatedDocument.revision,
49
- created: updatedDocument.created,
50
- lastModified: updatedDocument.lastModified
51
- };
52
- return newStatesByDocumentId;
53
- });
54
- });
55
- return unsubscribe;
56
- }, [reactor, driveId, options]);
57
- return useMemo(() => statesByDocumentId, [statesByDocumentId]);
58
- }
59
- function makeDriveDocumentStatesHook(reactor) {
60
- const useDriveDocumentStates = useCallback((args) => {
61
- const { driveId, documentIds, options } = args;
62
- return useDocumentsState({
63
- reactor,
64
- driveId,
65
- documentIds,
66
- options
67
- });
68
- }, [reactor]);
69
- return useDriveDocumentStates;
70
- }
71
- function makeDriveDocumentStateHook(reactor) {
72
- const useDriveDocumentState = useCallback((args) => {
73
- const { driveId, documentId } = args;
74
- return useDocumentState({
75
- reactor,
76
- driveId,
77
- documentId
78
- });
79
- }, [reactor]);
80
- return useDriveDocumentState;
81
- }
82
- function useDocumentState(args) {
83
- const { reactor, driveId, documentId } = args;
84
- const state = useDocumentsState({
85
- reactor,
86
- driveId,
87
- documentIds: [documentId]
88
- });
89
- return useMemo(() => state[documentId], [state, documentId]);
90
- }
91
- export {
92
- makeDriveDocumentStateHook,
93
- makeDriveDocumentStatesHook,
94
- useDocumentState,
95
- useDocumentsState
96
- };