@powerhousedao/reactor-browser 4.1.0-dev.7 → 4.1.0-dev.71
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.
- package/README.md +624 -0
- package/dist/src/actions/dispatch.d.ts +4 -0
- package/dist/src/actions/dispatch.d.ts.map +1 -0
- package/dist/src/actions/dispatch.js +29 -0
- package/dist/src/actions/dispatch.js.map +1 -0
- package/dist/src/actions/document.d.ts +16 -0
- package/dist/src/actions/document.d.ts.map +1 -0
- package/dist/src/actions/document.js +469 -0
- package/dist/src/actions/document.js.map +1 -0
- package/dist/src/actions/drive.d.ts +14 -0
- package/dist/src/actions/drive.d.ts.map +1 -0
- package/dist/src/actions/drive.js +188 -0
- package/dist/src/actions/drive.js.map +1 -0
- package/dist/src/actions/index.d.ts +6 -0
- package/dist/src/actions/index.d.ts.map +1 -0
- package/dist/src/actions/index.js +6 -0
- package/dist/src/actions/index.js.map +1 -0
- package/dist/src/actions/queue.d.ts +10 -0
- package/dist/src/actions/queue.d.ts.map +1 -0
- package/dist/src/actions/queue.js +135 -0
- package/dist/src/actions/queue.js.map +1 -0
- package/dist/src/actions/sign.d.ts +5 -0
- package/dist/src/actions/sign.d.ts.map +1 -0
- package/dist/src/actions/sign.js +71 -0
- package/dist/src/actions/sign.js.map +1 -0
- package/dist/src/analytics/context.d.ts +3 -3
- package/dist/src/analytics/context.d.ts.map +1 -1
- package/dist/src/analytics/context.js +2 -2
- package/dist/src/analytics/context.js.map +1 -1
- package/dist/src/analytics/hooks.d.ts +3 -2
- package/dist/src/analytics/hooks.d.ts.map +1 -1
- package/dist/src/analytics/hooks.js +3 -3
- package/dist/src/analytics/hooks.js.map +1 -1
- package/dist/src/analytics/index.d.ts +3 -0
- package/dist/src/analytics/index.d.ts.map +1 -0
- package/dist/src/analytics/index.js +3 -0
- package/dist/src/analytics/index.js.map +1 -0
- package/dist/src/analytics/store/browser.d.ts +1 -1
- package/dist/src/analytics/store/browser.d.ts.map +1 -1
- package/dist/src/analytics/store/browser.js +1 -1
- package/dist/src/analytics/store/browser.js.map +1 -1
- package/dist/src/analytics/store/memory.d.ts +1 -1
- package/dist/src/analytics/store/memory.d.ts.map +1 -1
- package/dist/src/analytics/store/memory.js +1 -1
- package/dist/src/analytics/store/memory.js.map +1 -1
- package/dist/src/analytics/types.d.ts +2 -3
- package/dist/src/analytics/types.d.ts.map +1 -1
- package/dist/src/constants.d.ts +3 -0
- package/dist/src/constants.d.ts.map +1 -0
- package/dist/src/constants.js +3 -0
- package/dist/src/constants.js.map +1 -0
- package/dist/src/context/index.d.ts +1 -1
- package/dist/src/context/index.d.ts.map +1 -1
- package/dist/src/context/index.js +1 -1
- package/dist/src/context/index.js.map +1 -1
- package/dist/src/context/read-mode.d.ts +2 -2
- package/dist/src/context/read-mode.d.ts.map +1 -1
- package/dist/src/context/read-mode.js +25 -47
- package/dist/src/context/read-mode.js.map +1 -1
- package/dist/src/document-model.d.ts +3 -3
- package/dist/src/document-model.d.ts.map +1 -1
- package/dist/src/document-model.js +1 -1
- package/dist/src/document-model.js.map +1 -1
- package/dist/src/events/add-ph-event-handlers.d.ts +2 -0
- package/dist/src/events/add-ph-event-handlers.d.ts.map +1 -0
- package/dist/src/events/add-ph-event-handlers.js +29 -0
- package/dist/src/events/add-ph-event-handlers.js.map +1 -0
- package/dist/src/events/config.d.ts +12 -0
- package/dist/src/events/config.d.ts.map +1 -0
- package/dist/src/events/config.js +44 -0
- package/dist/src/events/config.js.map +1 -0
- package/dist/src/events/crypto.d.ts +13 -0
- package/dist/src/events/crypto.d.ts.map +1 -0
- package/dist/src/events/crypto.js +49 -0
- package/dist/src/events/crypto.js.map +1 -0
- package/dist/src/events/documents.d.ts +7 -0
- package/dist/src/events/documents.d.ts.map +1 -0
- package/dist/src/events/documents.js +19 -0
- package/dist/src/events/documents.js.map +1 -0
- package/dist/src/events/drives.d.ts +13 -0
- package/dist/src/events/drives.d.ts.map +1 -0
- package/dist/src/events/drives.js +58 -0
- package/dist/src/events/drives.js.map +1 -0
- package/dist/src/events/index.d.ts +13 -0
- package/dist/src/events/index.d.ts.map +1 -0
- package/dist/src/events/index.js +13 -0
- package/dist/src/events/index.js.map +1 -0
- package/dist/src/events/modals.d.ts +9 -0
- package/dist/src/events/modals.d.ts.map +1 -0
- package/dist/src/events/modals.js +28 -0
- package/dist/src/events/modals.js.map +1 -0
- package/dist/src/events/nodes.d.ts +7 -0
- package/dist/src/events/nodes.d.ts.map +1 -0
- package/dist/src/events/nodes.js +34 -0
- package/dist/src/events/nodes.js.map +1 -0
- package/dist/src/events/processors.d.ts +8 -0
- package/dist/src/events/processors.d.ts.map +1 -0
- package/dist/src/events/processors.js +25 -0
- package/dist/src/events/processors.js.map +1 -0
- package/dist/src/events/reactor.d.ts +8 -0
- package/dist/src/events/reactor.d.ts.map +1 -0
- package/dist/src/events/reactor.js +25 -0
- package/dist/src/events/reactor.js.map +1 -0
- package/dist/src/events/renown.d.ts +8 -0
- package/dist/src/events/renown.d.ts.map +1 -0
- package/dist/src/events/renown.js +27 -0
- package/dist/src/events/renown.js.map +1 -0
- package/dist/src/events/types.d.ts +66 -0
- package/dist/src/events/types.d.ts.map +1 -0
- package/dist/src/{renown → events}/types.js.map +1 -1
- package/dist/src/events/user.d.ts +14 -0
- package/dist/src/events/user.d.ts.map +1 -0
- package/dist/src/events/user.js +49 -0
- package/dist/src/events/user.js.map +1 -0
- package/dist/src/events/vetra-packages.d.ts +8 -0
- package/dist/src/events/vetra-packages.d.ts.map +1 -0
- package/dist/src/events/vetra-packages.js +29 -0
- package/dist/src/events/vetra-packages.js.map +1 -0
- package/dist/src/global/core.d.ts.map +1 -1
- package/dist/src/global/core.js +0 -1
- package/dist/src/global/core.js.map +1 -1
- package/dist/src/global/index.d.ts +0 -1
- package/dist/src/global/index.d.ts.map +1 -1
- package/dist/src/global/index.js +0 -1
- package/dist/src/global/index.js.map +1 -1
- package/dist/src/global/types.d.ts +2 -2
- package/dist/src/global/types.d.ts.map +1 -1
- package/dist/src/hooks/config.d.ts +5 -0
- package/dist/src/hooks/config.d.ts.map +1 -0
- package/dist/src/hooks/config.js +18 -0
- package/dist/src/hooks/config.js.map +1 -0
- package/dist/src/hooks/crypto.d.ts +4 -0
- package/dist/src/hooks/crypto.d.ts.map +1 -0
- package/dist/src/hooks/crypto.js +15 -0
- package/dist/src/hooks/crypto.js.map +1 -0
- package/dist/src/hooks/dispatch.d.ts +3 -0
- package/dist/src/hooks/dispatch.d.ts.map +1 -0
- package/dist/src/hooks/dispatch.js +9 -0
- package/dist/src/hooks/dispatch.js.map +1 -0
- package/dist/src/hooks/documents.d.ts +29 -0
- package/dist/src/hooks/documents.d.ts.map +1 -0
- package/dist/src/hooks/documents.js +94 -0
- package/dist/src/hooks/documents.js.map +1 -0
- package/dist/src/hooks/drives.d.ts +26 -0
- package/dist/src/hooks/drives.d.ts.map +1 -0
- package/dist/src/hooks/drives.js +98 -0
- package/dist/src/hooks/drives.js.map +1 -0
- package/dist/src/hooks/index.d.ts +13 -7
- package/dist/src/hooks/index.d.ts.map +1 -1
- package/dist/src/hooks/index.js +13 -7
- package/dist/src/hooks/index.js.map +1 -1
- package/dist/src/hooks/modals.d.ts +7 -0
- package/dist/src/hooks/modals.d.ts.map +1 -0
- package/dist/src/hooks/modals.js +18 -0
- package/dist/src/hooks/modals.js.map +1 -0
- package/dist/src/hooks/nodes.d.ts +50 -0
- package/dist/src/hooks/nodes.d.ts.map +1 -0
- package/dist/src/hooks/nodes.js +247 -0
- package/dist/src/hooks/nodes.js.map +1 -0
- package/dist/src/hooks/processor-manager.d.ts +3 -0
- package/dist/src/hooks/processor-manager.d.ts.map +1 -0
- package/dist/src/hooks/processor-manager.js +7 -0
- package/dist/src/hooks/processor-manager.js.map +1 -0
- package/dist/src/hooks/reactor.d.ts +3 -0
- package/dist/src/hooks/reactor.d.ts.map +1 -0
- package/dist/src/hooks/reactor.js +7 -0
- package/dist/src/hooks/reactor.js.map +1 -0
- package/dist/src/hooks/renown.d.ts +2 -0
- package/dist/src/hooks/renown.d.ts.map +1 -0
- package/dist/src/hooks/renown.js +7 -0
- package/dist/src/hooks/renown.js.map +1 -0
- package/dist/src/hooks/use-on-drop-file.d.ts +6 -0
- package/dist/src/hooks/use-on-drop-file.d.ts.map +1 -0
- package/dist/src/hooks/use-on-drop-file.js +21 -0
- package/dist/src/hooks/use-on-drop-file.js.map +1 -0
- package/dist/src/hooks/user.d.ts +7 -0
- package/dist/src/hooks/user.d.ts.map +1 -0
- package/dist/src/hooks/user.js +26 -0
- package/dist/src/hooks/user.js.map +1 -0
- package/dist/src/hooks/vetra-packages.d.ts +18 -0
- package/dist/src/hooks/vetra-packages.d.ts.map +1 -0
- package/dist/src/hooks/vetra-packages.js +76 -0
- package/dist/src/hooks/vetra-packages.js.map +1 -0
- package/dist/src/index.d.ts +8 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +8 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/pglite/hooks/usePGlite.d.ts +1 -1
- package/dist/src/pglite/hooks/usePGlite.d.ts.map +1 -1
- package/dist/src/pglite/index.d.ts +0 -4
- package/dist/src/pglite/index.d.ts.map +1 -1
- package/dist/src/pglite/index.js +0 -4
- package/dist/src/pglite/index.js.map +1 -1
- package/dist/src/reactor.d.ts +8 -3
- package/dist/src/reactor.d.ts.map +1 -1
- package/dist/src/reactor.js +63 -10
- package/dist/src/reactor.js.map +1 -1
- package/dist/src/relational/hooks/useRelationalDb.d.ts +2 -2
- package/dist/src/relational/hooks/useRelationalDb.d.ts.map +1 -1
- package/dist/src/relational/hooks/useRelationalDb.js +2 -2
- package/dist/src/relational/hooks/useRelationalDb.js.map +1 -1
- package/dist/src/relational/hooks/useRelationalQuery.d.ts +2 -3
- package/dist/src/relational/hooks/useRelationalQuery.d.ts.map +1 -1
- package/dist/src/relational/hooks/useRelationalQuery.js +1 -1
- package/dist/src/relational/hooks/useRelationalQuery.js.map +1 -1
- package/dist/src/relational/utils/createProcessorQuery.d.ts +4 -4
- package/dist/src/relational/utils/createProcessorQuery.d.ts.map +1 -1
- package/dist/src/relational/utils/createProcessorQuery.js +2 -2
- package/dist/src/relational/utils/createProcessorQuery.js.map +1 -1
- package/dist/src/renown/index.d.ts +3 -0
- package/dist/src/renown/index.d.ts.map +1 -0
- package/dist/src/renown/index.js +3 -0
- package/dist/src/renown/index.js.map +1 -0
- package/dist/src/renown/utils.d.ts +6 -0
- package/dist/src/renown/utils.d.ts.map +1 -0
- package/dist/src/renown/utils.js +56 -0
- package/dist/src/renown/utils.js.map +1 -0
- package/dist/src/types/drive-editor.d.ts +17 -138
- package/dist/src/types/drive-editor.d.ts.map +1 -1
- package/dist/src/types/global.d.ts +69 -0
- package/dist/src/types/global.d.ts.map +1 -0
- package/dist/src/types/global.js +2 -0
- package/dist/src/types/global.js.map +1 -0
- package/dist/src/types/index.d.ts +4 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +4 -0
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/modals.d.ts +32 -0
- package/dist/src/types/modals.d.ts.map +1 -0
- package/dist/src/types/modals.js +2 -0
- package/dist/src/types/modals.js.map +1 -0
- package/dist/src/types/reactor.d.ts +4 -0
- package/dist/src/types/reactor.d.ts.map +1 -0
- package/dist/src/types/reactor.js +2 -0
- package/dist/src/types/reactor.js.map +1 -0
- package/dist/src/types/upload.d.ts +14 -0
- package/dist/src/types/upload.d.ts.map +1 -0
- package/dist/src/types/upload.js +2 -0
- package/dist/src/types/upload.js.map +1 -0
- package/dist/src/types/vetra.d.ts +68 -0
- package/dist/src/types/vetra.d.ts.map +1 -0
- package/dist/src/types/vetra.js +2 -0
- package/dist/src/types/vetra.js.map +1 -0
- package/dist/src/utils/documents.d.ts +2 -0
- package/dist/src/utils/documents.d.ts.map +1 -0
- package/dist/src/utils/documents.js +24 -0
- package/dist/src/utils/documents.js.map +1 -0
- package/dist/src/utils/drives.d.ts +32 -0
- package/dist/src/utils/drives.d.ts.map +1 -0
- package/dist/src/utils/drives.js +60 -0
- package/dist/src/utils/drives.js.map +1 -0
- package/dist/src/utils/index.d.ts +7 -4
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +7 -8
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/nodes.d.ts +8 -0
- package/dist/src/utils/nodes.d.ts.map +1 -0
- package/dist/src/utils/nodes.js +17 -0
- package/dist/src/utils/nodes.js.map +1 -0
- package/dist/src/utils/switchboard.d.ts +3 -4
- package/dist/src/utils/switchboard.d.ts.map +1 -1
- package/dist/src/utils/switchboard.js +25 -24
- package/dist/src/utils/switchboard.js.map +1 -1
- package/dist/src/utils/unsupported-document-type-error.d.ts +4 -0
- package/dist/src/utils/unsupported-document-type-error.d.ts.map +1 -0
- package/dist/src/utils/unsupported-document-type-error.js +7 -0
- package/dist/src/utils/unsupported-document-type-error.js.map +1 -0
- package/dist/src/utils/url.d.ts +25 -0
- package/dist/src/utils/url.d.ts.map +1 -0
- package/dist/src/utils/url.js +70 -0
- package/dist/src/utils/url.js.map +1 -0
- package/dist/src/utils/user.d.ts +5 -0
- package/dist/src/utils/user.d.ts.map +1 -0
- package/dist/src/utils/user.js +15 -0
- package/dist/src/utils/user.js.map +1 -0
- package/dist/src/utils/vetra.d.ts +7 -0
- package/dist/src/utils/vetra.d.ts.map +1 -0
- package/dist/src/utils/vetra.js +86 -0
- package/dist/src/utils/vetra.js.map +1 -0
- package/dist/test/analytics.test.d.ts +2 -0
- package/dist/test/analytics.test.d.ts.map +1 -0
- package/dist/test/analytics.test.js +262 -0
- package/dist/test/analytics.test.js.map +1 -0
- package/dist/test/getSwitchboardUrl.test.d.ts +2 -0
- package/dist/test/getSwitchboardUrl.test.d.ts.map +1 -0
- package/dist/test/getSwitchboardUrl.test.js +105 -0
- package/dist/test/getSwitchboardUrl.test.js.map +1 -0
- package/dist/test/reactor.test.d.ts +2 -0
- package/dist/test/reactor.test.d.ts.map +1 -0
- package/dist/test/reactor.test.js +26 -0
- package/dist/test/reactor.test.js.map +1 -0
- package/dist/test/switchboard.test.d.ts +2 -0
- package/dist/test/switchboard.test.d.ts.map +1 -0
- package/dist/test/switchboard.test.js +25 -0
- package/dist/test/switchboard.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/vitest.config.d.ts +3 -0
- package/dist/vitest.config.d.ts.map +1 -0
- package/dist/vitest.config.js +24 -0
- package/dist/vitest.config.js.map +1 -0
- package/package.json +30 -34
- package/dist/package.json +0 -75
- package/dist/src/analytics/analytics.d.ts +0 -5
- package/dist/src/analytics/analytics.d.ts.map +0 -1
- package/dist/src/analytics/analytics.js +0 -6
- package/dist/src/analytics/analytics.js.map +0 -1
- package/dist/src/crypto/browser.d.ts +0 -8
- package/dist/src/crypto/browser.d.ts.map +0 -1
- package/dist/src/crypto/browser.js +0 -50
- package/dist/src/crypto/browser.js.map +0 -1
- package/dist/src/crypto/index.d.ts +0 -27
- package/dist/src/crypto/index.d.ts.map +0 -1
- package/dist/src/crypto/index.js +0 -152
- package/dist/src/crypto/index.js.map +0 -1
- package/dist/src/hooks/document-state.d.ts +0 -24
- package/dist/src/hooks/document-state.d.ts.map +0 -1
- package/dist/src/hooks/document-state.js +0 -89
- package/dist/src/hooks/document-state.js.map +0 -1
- package/dist/src/hooks/useAddDebouncedOperations.d.ts +0 -7
- package/dist/src/hooks/useAddDebouncedOperations.d.ts.map +0 -1
- package/dist/src/hooks/useAddDebouncedOperations.js +0 -53
- package/dist/src/hooks/useAddDebouncedOperations.js.map +0 -1
- package/dist/src/hooks/useConnectCrypto.d.ts +0 -4
- package/dist/src/hooks/useConnectCrypto.d.ts.map +0 -1
- package/dist/src/hooks/useConnectCrypto.js +0 -57
- package/dist/src/hooks/useConnectCrypto.js.map +0 -1
- package/dist/src/hooks/useDocument.d.ts +0 -8
- package/dist/src/hooks/useDocument.d.ts.map +0 -1
- package/dist/src/hooks/useDocument.js +0 -32
- package/dist/src/hooks/useDocument.js.map +0 -1
- package/dist/src/hooks/useDocumentDispatch.d.ts +0 -10
- package/dist/src/hooks/useDocumentDispatch.d.ts.map +0 -1
- package/dist/src/hooks/useDocumentDispatch.js +0 -42
- package/dist/src/hooks/useDocumentDispatch.js.map +0 -1
- package/dist/src/hooks/useDocumentDrives.d.ts +0 -12
- package/dist/src/hooks/useDocumentDrives.d.ts.map +0 -1
- package/dist/src/hooks/useDocumentDrives.js +0 -122
- package/dist/src/hooks/useDocumentDrives.js.map +0 -1
- package/dist/src/hooks/useDocumentEditor.d.ts +0 -32
- package/dist/src/hooks/useDocumentEditor.d.ts.map +0 -1
- package/dist/src/hooks/useDocumentEditor.js +0 -41
- package/dist/src/hooks/useDocumentEditor.js.map +0 -1
- package/dist/src/hooks/useDriveActions.d.ts +0 -79
- package/dist/src/hooks/useDriveActions.d.ts.map +0 -1
- package/dist/src/hooks/useDriveActions.js +0 -108
- package/dist/src/hooks/useDriveActions.js.map +0 -1
- package/dist/src/hooks/useDriveContext.d.ts +0 -21
- package/dist/src/hooks/useDriveContext.d.ts.map +0 -1
- package/dist/src/hooks/useDriveContext.js +0 -26
- package/dist/src/hooks/useDriveContext.js.map +0 -1
- package/dist/src/hooks/useUserPermissions.d.ts +0 -6
- package/dist/src/hooks/useUserPermissions.d.ts.map +0 -1
- package/dist/src/hooks/useUserPermissions.js +0 -7
- package/dist/src/hooks/useUserPermissions.js.map +0 -1
- package/dist/src/renown/types.d.ts +0 -76
- package/dist/src/renown/types.d.ts.map +0 -1
- package/dist/src/utils/export-document.d.ts +0 -3
- package/dist/src/utils/export-document.d.ts.map +0 -1
- package/dist/src/utils/export-document.js +0 -19
- package/dist/src/utils/export-document.js.map +0 -1
- package/dist/src/utils/signature.d.ts +0 -5
- package/dist/src/utils/signature.d.ts.map +0 -1
- package/dist/src/utils/signature.js +0 -40
- package/dist/src/utils/signature.js.map +0 -1
- package/dist/tsconfig.lib.tsbuildinfo +0 -1
- /package/dist/src/{renown → events}/types.js +0 -0
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
import { addFile, addFolder, copyNode, dispatchSetSelectedNodeIdEvent, isFileNodeKind, isFolderNodeKind, makeFolderNodeFromDrive, makeNodeSlug, moveNode, renameNode, sortNodesByName, subscribeToSelectedNodeId, useDrives, useSelectedDocument, useSelectedDriveSafe, } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import {} from "document-drive";
|
|
3
|
+
import { useSyncExternalStore } from "react";
|
|
4
|
+
/** Returns the nodes for a drive. */
|
|
5
|
+
export function useNodes() {
|
|
6
|
+
const [selectedDrive] = useSelectedDriveSafe();
|
|
7
|
+
return selectedDrive?.state.global.nodes;
|
|
8
|
+
}
|
|
9
|
+
export function useSelectedNodeId() {
|
|
10
|
+
const selectedNodeId = useSyncExternalStore(subscribeToSelectedNodeId, () => window.phSelectedNodeId);
|
|
11
|
+
return selectedNodeId;
|
|
12
|
+
}
|
|
13
|
+
export function useFileNodes() {
|
|
14
|
+
const nodes = useNodes();
|
|
15
|
+
return nodes?.filter((n) => isFileNodeKind(n));
|
|
16
|
+
}
|
|
17
|
+
export function useFolderNodes() {
|
|
18
|
+
const nodes = useNodes();
|
|
19
|
+
return nodes?.filter((n) => isFolderNodeKind(n));
|
|
20
|
+
}
|
|
21
|
+
export function setSelectedNode(nodeOrNodeSlug) {
|
|
22
|
+
const nodeSlug = typeof nodeOrNodeSlug === "string"
|
|
23
|
+
? nodeOrNodeSlug
|
|
24
|
+
: makeNodeSlug(nodeOrNodeSlug);
|
|
25
|
+
dispatchSetSelectedNodeIdEvent(nodeSlug);
|
|
26
|
+
}
|
|
27
|
+
/** Returns a node in the selected drive by id. */
|
|
28
|
+
export function useNodeById(id) {
|
|
29
|
+
const nodes = useNodes();
|
|
30
|
+
return nodes?.find((n) => n.id === id);
|
|
31
|
+
}
|
|
32
|
+
/** Returns the parent folder id of a node by id */
|
|
33
|
+
export function useParentFolderId(id) {
|
|
34
|
+
const node = useNodeById(id);
|
|
35
|
+
return node?.parentFolder ?? undefined;
|
|
36
|
+
}
|
|
37
|
+
/** Returns the parent folder of a node by id */
|
|
38
|
+
export function useParentFolder(id) {
|
|
39
|
+
const parentFolderId = useParentFolderId(id);
|
|
40
|
+
const nodes = useNodes();
|
|
41
|
+
const parentFolder = nodes
|
|
42
|
+
?.filter((n) => isFolderNodeKind(n))
|
|
43
|
+
.find((n) => n.id === parentFolderId);
|
|
44
|
+
return parentFolder;
|
|
45
|
+
}
|
|
46
|
+
/** Returns the selected folder or document's parent folder. */
|
|
47
|
+
export function useSelectedParentFolder() {
|
|
48
|
+
const selectedFolder = useSelectedFolder();
|
|
49
|
+
const [selectedDocument] = useSelectedDocument();
|
|
50
|
+
const selectedNodeId = selectedDocument?.header.id ?? selectedFolder?.id;
|
|
51
|
+
return useParentFolder(selectedNodeId);
|
|
52
|
+
}
|
|
53
|
+
/** Returns the path to a node. */
|
|
54
|
+
export function useNodePath(id) {
|
|
55
|
+
const nodes = useNodes();
|
|
56
|
+
const [selectedDrive] = useSelectedDriveSafe();
|
|
57
|
+
if (!nodes || !selectedDrive)
|
|
58
|
+
return [];
|
|
59
|
+
const driveFolderNode = makeFolderNodeFromDrive(selectedDrive);
|
|
60
|
+
const path = [];
|
|
61
|
+
if (driveFolderNode) {
|
|
62
|
+
path.unshift(driveFolderNode);
|
|
63
|
+
}
|
|
64
|
+
let current = nodes.find((n) => n.id === id);
|
|
65
|
+
while (current) {
|
|
66
|
+
path.unshift(current);
|
|
67
|
+
if (!current.parentFolder)
|
|
68
|
+
break;
|
|
69
|
+
current = nodes.find((n) => n.id === current?.parentFolder);
|
|
70
|
+
}
|
|
71
|
+
return path.reverse();
|
|
72
|
+
}
|
|
73
|
+
/** Returns the selected folder. */
|
|
74
|
+
export function useSelectedFolder() {
|
|
75
|
+
const selectedNodeId = useSelectedNodeId();
|
|
76
|
+
const folderNodes = useFolderNodes();
|
|
77
|
+
const selectedFolder = folderNodes?.find((n) => n.id === selectedNodeId);
|
|
78
|
+
return selectedFolder;
|
|
79
|
+
}
|
|
80
|
+
/** Returns the path to the selected node. */
|
|
81
|
+
export function useSelectedNodePath() {
|
|
82
|
+
const selectedFolder = useSelectedFolder();
|
|
83
|
+
const [selectedDocument] = useSelectedDocument();
|
|
84
|
+
const selectedDocumentId = selectedDocument?.header.id;
|
|
85
|
+
const selectedNodeId = selectedDocumentId ?? selectedFolder?.id;
|
|
86
|
+
return useNodePath(selectedNodeId);
|
|
87
|
+
}
|
|
88
|
+
/** Returns the child nodes for the selected drive or folder. */
|
|
89
|
+
export function useChildNodes() {
|
|
90
|
+
const nodes = useNodes();
|
|
91
|
+
const selectedFolder = useSelectedFolder();
|
|
92
|
+
const selectedFolderId = selectedFolder?.id;
|
|
93
|
+
if (!nodes)
|
|
94
|
+
return [];
|
|
95
|
+
if (!selectedFolderId)
|
|
96
|
+
return sortNodesByName(nodes);
|
|
97
|
+
return sortNodesByName(nodes.filter((n) => n.parentFolder === selectedFolderId));
|
|
98
|
+
}
|
|
99
|
+
export function useAllFolderNodes() {
|
|
100
|
+
const nodes = useNodes();
|
|
101
|
+
return sortNodesByName(nodes?.filter((n) => isFolderNodeKind(n)) || []);
|
|
102
|
+
}
|
|
103
|
+
export function useAllFileNodes() {
|
|
104
|
+
const nodes = useNodes();
|
|
105
|
+
return sortNodesByName(nodes?.filter((n) => isFileNodeKind(n)) || []);
|
|
106
|
+
}
|
|
107
|
+
/** Returns the folder child nodes for the selected drive or folder. */
|
|
108
|
+
export function useFolderChildNodes() {
|
|
109
|
+
const childNodes = useChildNodes();
|
|
110
|
+
return sortNodesByName(childNodes.filter((n) => isFolderNodeKind(n)));
|
|
111
|
+
}
|
|
112
|
+
/** Returns the file (document) child nodes for the selected drive or folder. */
|
|
113
|
+
export function useFileChildNodes() {
|
|
114
|
+
const childNodes = useChildNodes();
|
|
115
|
+
return sortNodesByName(childNodes.filter((n) => isFileNodeKind(n)));
|
|
116
|
+
}
|
|
117
|
+
/** Returns the child nodes for a drive or folder by id. */
|
|
118
|
+
export function useChildNodesForId(id) {
|
|
119
|
+
const nodes = useNodes();
|
|
120
|
+
const drives = useDrives();
|
|
121
|
+
if (!nodes || !drives)
|
|
122
|
+
return [];
|
|
123
|
+
const isDrive = drives.some((d) => d.header.id === id);
|
|
124
|
+
const childNodes = isDrive
|
|
125
|
+
? nodes.filter((n) => !n.parentFolder)
|
|
126
|
+
: nodes.filter((n) => n.parentFolder === id);
|
|
127
|
+
return sortNodesByName(childNodes);
|
|
128
|
+
}
|
|
129
|
+
/** Returns the folder child nodes for a drive or folder by id. */
|
|
130
|
+
export function useFolderChildNodesForId(id) {
|
|
131
|
+
const childNodes = useChildNodesForId(id);
|
|
132
|
+
return sortNodesByName(childNodes.filter((n) => isFolderNodeKind(n)));
|
|
133
|
+
}
|
|
134
|
+
/** Returns the file (document) child nodes for a drive or folder by id. */
|
|
135
|
+
export function useFileChildNodesForId(id) {
|
|
136
|
+
const childNodes = useChildNodesForId(id);
|
|
137
|
+
return sortNodesByName(childNodes.filter((n) => isFileNodeKind(n)));
|
|
138
|
+
}
|
|
139
|
+
/** Returns the name of a node. */
|
|
140
|
+
export function useNodeName(id) {
|
|
141
|
+
const nodes = useNodes();
|
|
142
|
+
if (!nodes)
|
|
143
|
+
return undefined;
|
|
144
|
+
const node = nodes.find((n) => n.id === id);
|
|
145
|
+
return node?.name;
|
|
146
|
+
}
|
|
147
|
+
/** Returns the kind of a node. */
|
|
148
|
+
export function useNodeKind(id) {
|
|
149
|
+
const nodes = useNodes();
|
|
150
|
+
if (!nodes)
|
|
151
|
+
return undefined;
|
|
152
|
+
const node = nodes.find((n) => n.id === id);
|
|
153
|
+
if (!node)
|
|
154
|
+
return undefined;
|
|
155
|
+
return node.kind.toUpperCase();
|
|
156
|
+
}
|
|
157
|
+
function resolveNode(driveId, node) {
|
|
158
|
+
return node?.id !== driveId ? node : undefined;
|
|
159
|
+
}
|
|
160
|
+
export function useNodeActions() {
|
|
161
|
+
const [selectedDrive] = useSelectedDriveSafe();
|
|
162
|
+
const selectedFolder = useSelectedFolder();
|
|
163
|
+
const selectedParentFolder = useSelectedParentFolder();
|
|
164
|
+
const selectedDriveId = selectedDrive?.header.id;
|
|
165
|
+
async function onAddFile(file, parent) {
|
|
166
|
+
if (!selectedDriveId)
|
|
167
|
+
return;
|
|
168
|
+
const fileName = file.name.replace(/\..+/gim, "");
|
|
169
|
+
return addFile(file, selectedDriveId, fileName, resolveNode(selectedDriveId, parent)?.id);
|
|
170
|
+
}
|
|
171
|
+
async function onAddFolder(name, parent) {
|
|
172
|
+
if (!selectedDriveId)
|
|
173
|
+
return;
|
|
174
|
+
return addFolder(selectedDriveId, name, resolveNode(selectedDriveId, parent)?.id);
|
|
175
|
+
}
|
|
176
|
+
async function onRenameNode(newName, node) {
|
|
177
|
+
if (!selectedDriveId)
|
|
178
|
+
return;
|
|
179
|
+
const resolvedNode = resolveNode(selectedDriveId, node);
|
|
180
|
+
if (!resolvedNode) {
|
|
181
|
+
console.error(`Node ${node.id} not found`);
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
return await renameNode(selectedDriveId, node.id, newName);
|
|
185
|
+
}
|
|
186
|
+
async function onCopyNode(src, target) {
|
|
187
|
+
if (!selectedDriveId)
|
|
188
|
+
return;
|
|
189
|
+
const resolvedSrc = resolveNode(selectedDriveId, src);
|
|
190
|
+
if (!resolvedSrc) {
|
|
191
|
+
console.error(`Node ${src.id} not found`);
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
194
|
+
const resolvedTarget = resolveNode(selectedDriveId, target);
|
|
195
|
+
await copyNode(selectedDriveId, resolvedSrc, resolvedTarget);
|
|
196
|
+
}
|
|
197
|
+
async function onMoveNode(src, target) {
|
|
198
|
+
if (!selectedDriveId)
|
|
199
|
+
return;
|
|
200
|
+
const resolvedSrc = resolveNode(selectedDriveId, src);
|
|
201
|
+
if (!resolvedSrc) {
|
|
202
|
+
console.error(`Node ${src.id} not found`);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
const resolvedTarget = resolveNode(selectedDriveId, target);
|
|
206
|
+
// if node is already on target then ignore move
|
|
207
|
+
if ((!resolvedTarget?.id && !src.parentFolder) ||
|
|
208
|
+
resolvedTarget?.id === src.parentFolder) {
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
await moveNode(selectedDriveId, resolvedSrc, resolvedTarget);
|
|
212
|
+
}
|
|
213
|
+
async function onDuplicateNode(src) {
|
|
214
|
+
if (!selectedDriveId)
|
|
215
|
+
return;
|
|
216
|
+
const resolvedSrc = resolveNode(selectedDriveId, src);
|
|
217
|
+
if (!resolvedSrc) {
|
|
218
|
+
console.error(`Node ${src.id} not found`);
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
const target = resolveNode(selectedDriveId, selectedFolder ?? selectedParentFolder);
|
|
222
|
+
await copyNode(selectedDriveId, resolvedSrc, target);
|
|
223
|
+
}
|
|
224
|
+
async function onAddAndSelectNewFolder(name) {
|
|
225
|
+
if (!name)
|
|
226
|
+
return;
|
|
227
|
+
if (!selectedDriveId)
|
|
228
|
+
return;
|
|
229
|
+
const resolvedTarget = resolveNode(selectedDriveId, selectedFolder ?? selectedParentFolder);
|
|
230
|
+
if (!resolvedTarget)
|
|
231
|
+
return;
|
|
232
|
+
const newFolder = await onAddFolder(name, resolvedTarget);
|
|
233
|
+
if (newFolder) {
|
|
234
|
+
setSelectedNode(newFolder);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
return {
|
|
238
|
+
onAddFile,
|
|
239
|
+
onAddFolder,
|
|
240
|
+
onRenameNode,
|
|
241
|
+
onCopyNode,
|
|
242
|
+
onMoveNode,
|
|
243
|
+
onDuplicateNode,
|
|
244
|
+
onAddAndSelectNewFolder,
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
//# sourceMappingURL=nodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../../src/hooks/nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processor-manager.d.ts","sourceRoot":"","sources":["../../../src/hooks/processor-manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,SAAS,CAMlE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { subscribeToProcessorManager } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import { useSyncExternalStore } from "react";
|
|
3
|
+
export function useProcessorManager() {
|
|
4
|
+
const processorManager = useSyncExternalStore(subscribeToProcessorManager, () => window.phProcessorManager);
|
|
5
|
+
return processorManager;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=processor-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processor-manager.js","sourceRoot":"","sources":["../../../src/hooks/processor-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAE7C,MAAM,UAAU,mBAAmB;IACjC,MAAM,gBAAgB,GAAG,oBAAoB,CAC3C,2BAA2B,EAC3B,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAChC,CAAC;IACF,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../../../src/hooks/reactor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAI9D,wBAAgB,UAAU,IAAI,OAAO,GAAG,SAAS,CAMhD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { subscribeToReactor } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import { useSyncExternalStore } from "react";
|
|
3
|
+
export function useReactor() {
|
|
4
|
+
const reactor = useSyncExternalStore(subscribeToReactor, () => window.reactor);
|
|
5
|
+
return reactor;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=reactor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reactor.js","sourceRoot":"","sources":["../../../src/hooks/reactor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAE7C,MAAM,UAAU,UAAU;IACxB,MAAM,OAAO,GAAG,oBAAoB,CAClC,kBAAkB,EAClB,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CACrB,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renown.d.ts","sourceRoot":"","sources":["../../../src/hooks/renown.ts"],"names":[],"mappings":"AAGA,wBAAgB,SAAS,8CAGxB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { subscribeToRenown } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import { useSyncExternalStore } from "react";
|
|
3
|
+
export function useRenown() {
|
|
4
|
+
const renown = useSyncExternalStore(subscribeToRenown, () => window.renown);
|
|
5
|
+
return renown;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=renown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renown.js","sourceRoot":"","sources":["../../../src/hooks/renown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAE7C,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,oBAAoB,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5E,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { FileNode } from "document-drive";
|
|
2
|
+
import type { ConflictResolution, FileUploadProgressCallback } from "../types/upload.js";
|
|
3
|
+
type UseOnDropFile = (documentTypes?: string[]) => (file: File, onProgress?: FileUploadProgressCallback, resolveConflict?: ConflictResolution) => Promise<FileNode | undefined>;
|
|
4
|
+
export declare const useOnDropFile: UseOnDropFile;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=use-on-drop-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-on-drop-file.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-on-drop-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,KAAK,EACV,kBAAkB,EAClB,0BAA0B,EAC3B,MAAM,oBAAoB,CAAC;AAI5B,KAAK,aAAa,GAAG,CACnB,aAAa,CAAC,EAAE,MAAM,EAAE,KACrB,CACH,IAAI,EAAE,IAAI,EACV,UAAU,CAAC,EAAE,0BAA0B,EACvC,eAAe,CAAC,EAAE,kBAAkB,KACjC,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC;AAEnC,eAAO,MAAM,aAAa,EAAE,aAkC3B,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { useCallback } from "react";
|
|
2
|
+
import { addFileWithProgress } from "../actions/document.js";
|
|
3
|
+
import { useSelectedDriveSafe } from "./drives.js";
|
|
4
|
+
import { useSelectedFolder } from "./nodes.js";
|
|
5
|
+
export const useOnDropFile = (documentTypes = []) => {
|
|
6
|
+
const [selectedDrive] = useSelectedDriveSafe();
|
|
7
|
+
const selectedDriveId = selectedDrive?.header.id;
|
|
8
|
+
const selectedFolder = useSelectedFolder();
|
|
9
|
+
const onDropFile = useCallback(async (file, onProgress, resolveConflict) => {
|
|
10
|
+
if (!selectedDriveId) {
|
|
11
|
+
console.warn("No selected drive - upload skipped");
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
const fileName = file.name.replace(/\..+/gim, "");
|
|
15
|
+
const targetNodeId = selectedFolder?.id;
|
|
16
|
+
// Return the FileNode directly from addFileWithProgress
|
|
17
|
+
return await addFileWithProgress(file, selectedDriveId, fileName, targetNodeId, onProgress, documentTypes, resolveConflict);
|
|
18
|
+
}, [selectedDriveId, selectedFolder]);
|
|
19
|
+
return onDropFile;
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=use-on-drop-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-on-drop-file.js","sourceRoot":"","sources":["../../../src/hooks/use-on-drop-file.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAK7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAU/C,MAAM,CAAC,MAAM,aAAa,GAAkB,CAAC,aAAa,GAAG,EAAE,EAAE,EAAE;IACjE,MAAM,CAAC,aAAa,CAAC,GAAG,oBAAoB,EAAE,CAAC;IAC/C,MAAM,eAAe,GAAG,aAAa,EAAE,MAAM,CAAC,EAAE,CAAC;IACjD,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,MAAM,UAAU,GAAG,WAAW,CAC5B,KAAK,EACH,IAAU,EACV,UAAuC,EACvC,eAAoC,EACpC,EAAE;QACF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YACnD,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,cAAc,EAAE,EAAE,CAAC;QAExC,wDAAwD;QACxD,OAAO,MAAM,mBAAmB,CAC9B,IAAI,EACJ,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,aAAa,EACb,eAAe,CAChB,CAAC;IACJ,CAAC,EACD,CAAC,eAAe,EAAE,cAAc,CAAC,CAClC,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare function useUser(): import("@renown/sdk").User | undefined;
|
|
2
|
+
export declare function useUserPermissions(): {
|
|
3
|
+
isAllowedToCreateDocuments: boolean;
|
|
4
|
+
isAllowedToEditDocuments: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function useLoginStatus(): import("@powerhousedao/reactor-browser").LoginStatus | undefined;
|
|
7
|
+
//# sourceMappingURL=user.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/hooks/user.ts"],"names":[],"mappings":"AAOA,wBAAgB,OAAO,2CAGtB;AAED,wBAAgB,kBAAkB;;;EAcjC;AAED,wBAAgB,cAAc,qEAM7B"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { subscribeToLoginStatus, subscribeToUser, } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import { useSyncExternalStore } from "react";
|
|
3
|
+
import { useAllowList } from "./config.js";
|
|
4
|
+
export function useUser() {
|
|
5
|
+
const user = useSyncExternalStore(subscribeToUser, () => window.user);
|
|
6
|
+
return user;
|
|
7
|
+
}
|
|
8
|
+
export function useUserPermissions() {
|
|
9
|
+
const user = useUser();
|
|
10
|
+
const allowList = useAllowList();
|
|
11
|
+
if (!allowList) {
|
|
12
|
+
return {
|
|
13
|
+
isAllowedToCreateDocuments: true,
|
|
14
|
+
isAllowedToEditDocuments: true,
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
return {
|
|
18
|
+
isAllowedToCreateDocuments: allowList.includes(user?.address ?? ""),
|
|
19
|
+
isAllowedToEditDocuments: allowList.includes(user?.address ?? ""),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
export function useLoginStatus() {
|
|
23
|
+
const loginStatus = useSyncExternalStore(subscribeToLoginStatus, () => window.loginStatus);
|
|
24
|
+
return loginStatus;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../src/hooks/user.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,eAAe,GAChB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,UAAU,OAAO;IACrB,MAAM,IAAI,GAAG,oBAAoB,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACtE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,0BAA0B,EAAE,IAAI;YAChC,wBAAwB,EAAE,IAAI;SAC/B,CAAC;IACJ,CAAC;IAED,OAAO;QACL,0BAA0B,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;QACnE,wBAAwB,EAAE,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,MAAM,WAAW,GAAG,oBAAoB,CACtC,sBAAsB,EACtB,GAAG,EAAE,CAAC,MAAM,CAAC,WAAW,CACzB,CAAC;IACF,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Processors, VetraDocumentModelModule, VetraEditorModule, VetraPackage, VetraProcessorModule } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import type { ImportScriptModule, SubgraphModule } from "document-model";
|
|
3
|
+
export declare function useVetraPackages(): VetraPackage[];
|
|
4
|
+
export declare function setVetraPackages(packages: VetraPackage[]): void;
|
|
5
|
+
export declare function useDocumentModelModules(): VetraDocumentModelModule[] | undefined;
|
|
6
|
+
export declare function useEditorModules(): VetraEditorModule[] | undefined;
|
|
7
|
+
export declare function useDriveEditorModules(): VetraEditorModule[] | undefined;
|
|
8
|
+
export declare function useDocumentModelModuleById(id: string | null | undefined): VetraDocumentModelModule | undefined;
|
|
9
|
+
export declare function useEditorModuleById(id: string | null | undefined): VetraEditorModule | undefined;
|
|
10
|
+
export declare function useFallbackEditorModule(documentType: string | null | undefined): VetraEditorModule | undefined;
|
|
11
|
+
export declare function useDriveEditorModuleById(id: string | null | undefined): VetraEditorModule | undefined;
|
|
12
|
+
export declare function useDefaultDriveEditorModule(): VetraEditorModule | undefined;
|
|
13
|
+
export declare function useEditorModulesForDocumentType(documentType: string | null | undefined): VetraEditorModule[] | undefined;
|
|
14
|
+
export declare function useProcessorModules(): VetraProcessorModule[] | undefined;
|
|
15
|
+
export declare function useProcessors(): Processors[] | undefined;
|
|
16
|
+
export declare function useSubgraphModules(): SubgraphModule[] | undefined;
|
|
17
|
+
export declare function useImportScriptModules(): ImportScriptModule[] | undefined;
|
|
18
|
+
//# sourceMappingURL=vetra-packages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vetra-packages.d.ts","sourceRoot":"","sources":["../../../src/hooks/vetra-packages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,wBAAwB,EACxB,iBAAiB,EACjB,YAAY,EACZ,oBAAoB,EACrB,MAAM,gCAAgC,CAAC;AAMxC,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAKzE,wBAAgB,gBAAgB,IAAI,YAAY,EAAE,CAKjD;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAExD;AAED,wBAAgB,uBAAuB,IACnC,wBAAwB,EAAE,GAC1B,SAAS,CAGZ;AAED,wBAAgB,gBAAgB,IAAI,iBAAiB,EAAE,GAAG,SAAS,CAOlE;AAED,wBAAgB,qBAAqB,IAAI,iBAAiB,EAAE,GAAG,SAAS,CAOvE;AAED,wBAAgB,0BAA0B,CACxC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC5B,wBAAwB,GAAG,SAAS,CAKtC;AAED,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC5B,iBAAiB,GAAG,SAAS,CAG/B;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACtC,iBAAiB,GAAG,SAAS,CAS/B;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC5B,iBAAiB,GAAG,SAAS,CAG/B;AAED,wBAAgB,2BAA2B,IAAI,iBAAiB,GAAG,SAAS,CAK3E;AAED,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,mCASxC;AAED,wBAAgB,mBAAmB,IAAI,oBAAoB,EAAE,GAAG,SAAS,CAKxE;AAED,wBAAgB,aAAa,IAAI,UAAU,EAAE,GAAG,SAAS,CAGxD;AAED,wBAAgB,kBAAkB,IAAI,cAAc,EAAE,GAAG,SAAS,CAGjE;AAED,wBAAgB,sBAAsB,IAAI,kBAAkB,EAAE,GAAG,SAAS,CAGzE"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { DEFAULT_DRIVE_EDITOR_ID, dispatchSetVetraPackagesEvent, subscribeToVetraPackages, } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import { useSyncExternalStore } from "react";
|
|
3
|
+
const defaultVetraPackages = [];
|
|
4
|
+
export function useVetraPackages() {
|
|
5
|
+
return useSyncExternalStore(subscribeToVetraPackages, () => window.vetraPackages || defaultVetraPackages);
|
|
6
|
+
}
|
|
7
|
+
export function setVetraPackages(packages) {
|
|
8
|
+
dispatchSetVetraPackagesEvent(packages);
|
|
9
|
+
}
|
|
10
|
+
export function useDocumentModelModules() {
|
|
11
|
+
const vetraPackages = useVetraPackages();
|
|
12
|
+
return vetraPackages.flatMap((pkg) => pkg.modules.documentModelModules || []);
|
|
13
|
+
}
|
|
14
|
+
export function useEditorModules() {
|
|
15
|
+
const vetraPackages = useVetraPackages();
|
|
16
|
+
return vetraPackages
|
|
17
|
+
.flatMap((pkg) => pkg.modules.editorModules || [])
|
|
18
|
+
.filter((module) => !module.documentTypes.includes("powerhouse/document-drive"));
|
|
19
|
+
}
|
|
20
|
+
export function useDriveEditorModules() {
|
|
21
|
+
const vetraPackages = useVetraPackages();
|
|
22
|
+
return vetraPackages
|
|
23
|
+
.flatMap((pkg) => pkg.modules.editorModules || [])
|
|
24
|
+
.filter((module) => module.documentTypes.includes("powerhouse/document-drive"));
|
|
25
|
+
}
|
|
26
|
+
export function useDocumentModelModuleById(id) {
|
|
27
|
+
const documentModelModules = useDocumentModelModules();
|
|
28
|
+
return documentModelModules?.find((module) => module.documentModel.global.id === id);
|
|
29
|
+
}
|
|
30
|
+
export function useEditorModuleById(id) {
|
|
31
|
+
const editorModules = useEditorModules();
|
|
32
|
+
return editorModules?.find((module) => module.id === id);
|
|
33
|
+
}
|
|
34
|
+
export function useFallbackEditorModule(documentType) {
|
|
35
|
+
const editorModules = useEditorModules();
|
|
36
|
+
if (!documentType)
|
|
37
|
+
return undefined;
|
|
38
|
+
if (editorModules?.length === 0)
|
|
39
|
+
return undefined;
|
|
40
|
+
const modulesForType = editorModules?.filter((module) => module.documentTypes.includes(documentType));
|
|
41
|
+
return modulesForType?.[0];
|
|
42
|
+
}
|
|
43
|
+
export function useDriveEditorModuleById(id) {
|
|
44
|
+
const driveEditorModules = useDriveEditorModules();
|
|
45
|
+
return driveEditorModules?.find((module) => module.id === id);
|
|
46
|
+
}
|
|
47
|
+
export function useDefaultDriveEditorModule() {
|
|
48
|
+
const defaultDriveEditorModule = useDriveEditorModuleById(DEFAULT_DRIVE_EDITOR_ID);
|
|
49
|
+
return defaultDriveEditorModule;
|
|
50
|
+
}
|
|
51
|
+
export function useEditorModulesForDocumentType(documentType) {
|
|
52
|
+
const editorModules = useEditorModules();
|
|
53
|
+
if (!documentType)
|
|
54
|
+
return undefined;
|
|
55
|
+
const modulesForType = editorModules?.filter((module) => module.documentTypes.includes(documentType));
|
|
56
|
+
return modulesForType;
|
|
57
|
+
}
|
|
58
|
+
export function useProcessorModules() {
|
|
59
|
+
const vetraPackages = useVetraPackages();
|
|
60
|
+
return vetraPackages
|
|
61
|
+
.flatMap((pkg) => pkg.modules.processorModules)
|
|
62
|
+
.filter((module) => module !== undefined);
|
|
63
|
+
}
|
|
64
|
+
export function useProcessors() {
|
|
65
|
+
const processorModules = useProcessorModules();
|
|
66
|
+
return processorModules?.flatMap((module) => module.processors);
|
|
67
|
+
}
|
|
68
|
+
export function useSubgraphModules() {
|
|
69
|
+
const vetraPackages = useVetraPackages();
|
|
70
|
+
return vetraPackages.flatMap((pkg) => pkg.modules.subgraphModules || []);
|
|
71
|
+
}
|
|
72
|
+
export function useImportScriptModules() {
|
|
73
|
+
const vetraPackages = useVetraPackages();
|
|
74
|
+
return vetraPackages.flatMap((pkg) => pkg.modules.importScriptModules || []);
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=vetra-packages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vetra-packages.js","sourceRoot":"","sources":["../../../src/hooks/vetra-packages.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
|
|
1
|
+
export * from "./actions/index.js";
|
|
2
|
+
export * from "./analytics/index.js";
|
|
3
|
+
export * from "./analytics/types.js";
|
|
4
|
+
export * from "./constants.js";
|
|
2
5
|
export * from "./context/index.js";
|
|
3
6
|
export * from "./document-model.js";
|
|
7
|
+
export * from "./events/index.js";
|
|
8
|
+
export * from "./global/index.js";
|
|
4
9
|
export * from "./hooks/index.js";
|
|
5
10
|
export * from "./pglite/index.js";
|
|
6
11
|
export * from "./reactor.js";
|
|
7
12
|
export * from "./relational/index.js";
|
|
8
|
-
export * from "./renown/
|
|
13
|
+
export * from "./renown/index.js";
|
|
9
14
|
export * from "./types/index.js";
|
|
10
|
-
export * from "./utils/
|
|
11
|
-
export type DocumentDriveServerInterface = IDocumentDriveServer;
|
|
15
|
+
export * from "./utils/index.js";
|
|
12
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
|
+
export * from "./actions/index.js";
|
|
2
|
+
export * from "./analytics/index.js";
|
|
3
|
+
export * from "./analytics/types.js";
|
|
4
|
+
export * from "./constants.js";
|
|
1
5
|
export * from "./context/index.js";
|
|
2
6
|
export * from "./document-model.js";
|
|
7
|
+
export * from "./events/index.js";
|
|
8
|
+
export * from "./global/index.js";
|
|
3
9
|
export * from "./hooks/index.js";
|
|
4
10
|
export * from "./pglite/index.js";
|
|
5
11
|
export * from "./reactor.js";
|
|
6
12
|
export * from "./relational/index.js";
|
|
7
|
-
export * from "./renown/
|
|
13
|
+
export * from "./renown/index.js";
|
|
8
14
|
export * from "./types/index.js";
|
|
9
|
-
export * from "./utils/
|
|
15
|
+
export * from "./utils/index.js";
|
|
10
16
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePGlite.d.ts","sourceRoot":"","sources":["../../../../src/pglite/hooks/usePGlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"usePGlite.d.ts","sourceRoot":"","sources":["../../../../src/pglite/hooks/usePGlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGhE,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAQD,eAAO,MAAM,WAAW,mBAgBvB,CAAC;AAEF,eAAO,MAAM,cAAc,iBACO,OAAO,CAAC,WAAW,CAAC,SAerD,CAAC;AAEF,eAAO,MAAM,SAAS,iCAjBY,OAAO,CAAC,WAAW,CAAC,aAsBrD,CAAC"}
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
export { PGliteWorker, worker } from "@electric-sql/pglite/worker";
|
|
2
|
-
export type { PGliteWorkerOptions } from "@electric-sql/pglite/worker";
|
|
3
|
-
export { IdbFs, PGlite } from "@electric-sql/pglite";
|
|
4
|
-
export * from "@electric-sql/pglite/live";
|
|
5
1
|
export * from "./hooks/index.js";
|
|
6
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pglite/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pglite/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
package/dist/src/pglite/index.js
CHANGED
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
// Re-export electric-sql types and utilities for consuming packages
|
|
2
|
-
export { PGliteWorker, worker } from "@electric-sql/pglite/worker";
|
|
3
|
-
export { IdbFs, PGlite } from "@electric-sql/pglite";
|
|
4
|
-
export * from "@electric-sql/pglite/live";
|
|
5
1
|
export * from "./hooks/index.js";
|
|
6
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pglite/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pglite/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|