@powerhousedao/reactor-browser 4.1.0-dev.8 → 4.1.0-dev.81
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 +470 -0
- package/dist/src/actions/document.js.map +1 -0
- package/dist/src/actions/drive.d.ts +12 -0
- package/dist/src/actions/drive.d.ts.map +1 -0
- package/dist/src/actions/drive.js +152 -0
- package/dist/src/actions/drive.js.map +1 -0
- package/dist/src/actions/index.d.ts +3 -0
- package/dist/src/actions/index.d.ts.map +1 -0
- package/dist/src/actions/index.js +3 -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 +136 -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/connect.d.ts +2 -0
- package/dist/src/connect.d.ts.map +1 -0
- package/dist/src/connect.js +2 -0
- package/dist/src/connect.js.map +1 -0
- 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/errors.d.ts +16 -0
- package/dist/src/errors.d.ts.map +1 -0
- package/dist/src/errors.js +27 -0
- package/dist/src/errors.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/add-ph-event-handlers.d.ts +2 -0
- package/dist/src/hooks/add-ph-event-handlers.d.ts.map +1 -0
- package/dist/src/hooks/add-ph-event-handlers.js +85 -0
- package/dist/src/hooks/add-ph-event-handlers.js.map +1 -0
- package/dist/src/hooks/all-documents.d.ts +9 -0
- package/dist/src/hooks/all-documents.d.ts.map +1 -0
- package/dist/src/hooks/all-documents.js +9 -0
- package/dist/src/hooks/all-documents.js.map +1 -0
- package/dist/src/hooks/allowed-document-model-modules.d.ts +2 -0
- package/dist/src/hooks/allowed-document-model-modules.d.ts.map +1 -0
- package/dist/src/hooks/allowed-document-model-modules.js +10 -0
- package/dist/src/hooks/allowed-document-model-modules.js.map +1 -0
- package/dist/src/hooks/child-nodes.d.ts +4 -0
- package/dist/src/hooks/child-nodes.d.ts.map +1 -0
- package/dist/src/hooks/child-nodes.js +15 -0
- package/dist/src/hooks/child-nodes.js.map +1 -0
- package/dist/src/hooks/config/connect.d.ts +72 -0
- package/dist/src/hooks/config/connect.d.ts.map +1 -0
- package/dist/src/hooks/config/connect.js +174 -0
- package/dist/src/hooks/config/connect.js.map +1 -0
- package/dist/src/hooks/config/editor.d.ts +32 -0
- package/dist/src/hooks/config/editor.d.ts.map +1 -0
- package/dist/src/hooks/config/editor.js +43 -0
- package/dist/src/hooks/config/editor.js.map +1 -0
- package/dist/src/hooks/config/set-config-by-key.d.ts +5 -0
- package/dist/src/hooks/config/set-config-by-key.d.ts.map +1 -0
- package/dist/src/hooks/config/set-config-by-key.js +15 -0
- package/dist/src/hooks/config/set-config-by-key.js.map +1 -0
- package/dist/src/hooks/config/set-config-by-object.d.ts +31 -0
- package/dist/src/hooks/config/set-config-by-object.d.ts.map +1 -0
- package/dist/src/hooks/config/set-config-by-object.js +84 -0
- package/dist/src/hooks/config/set-config-by-object.js.map +1 -0
- package/dist/src/hooks/config/use-value-by-key.d.ts +13 -0
- package/dist/src/hooks/config/use-value-by-key.d.ts.map +1 -0
- package/dist/src/hooks/config/use-value-by-key.js +23 -0
- package/dist/src/hooks/config/use-value-by-key.js.map +1 -0
- package/dist/src/hooks/config/utils.d.ts +3 -0
- package/dist/src/hooks/config/utils.d.ts.map +1 -0
- package/dist/src/hooks/config/utils.js +6 -0
- package/dist/src/hooks/config/utils.js.map +1 -0
- package/dist/src/hooks/connect.d.ts +15 -0
- package/dist/src/hooks/connect.d.ts.map +1 -0
- package/dist/src/hooks/connect.js +15 -0
- package/dist/src/hooks/connect.js.map +1 -0
- package/dist/src/hooks/crypto.d.ts +3 -0
- package/dist/src/hooks/crypto.d.ts.map +1 -0
- package/dist/src/hooks/crypto.js +7 -0
- package/dist/src/hooks/crypto.js.map +1 -0
- package/dist/src/hooks/did.d.ts +2 -0
- package/dist/src/hooks/did.d.ts.map +1 -0
- package/dist/src/hooks/did.js +3 -0
- package/dist/src/hooks/did.js.map +1 -0
- package/dist/src/hooks/dispatch.d.ts +4 -0
- package/dist/src/hooks/dispatch.d.ts.map +1 -0
- package/dist/src/hooks/dispatch.js +10 -0
- package/dist/src/hooks/dispatch.js.map +1 -0
- package/dist/src/hooks/document-by-id.d.ts +4 -0
- package/dist/src/hooks/document-by-id.d.ts.map +1 -0
- package/dist/src/hooks/document-by-id.js +10 -0
- package/dist/src/hooks/document-by-id.js.map +1 -0
- package/dist/src/hooks/document-model-modules.d.ts +4 -0
- package/dist/src/hooks/document-model-modules.d.ts.map +1 -0
- package/dist/src/hooks/document-model-modules.js +10 -0
- package/dist/src/hooks/document-model-modules.js.map +1 -0
- package/dist/src/hooks/document-of-type.d.ts +5 -0
- package/dist/src/hooks/document-of-type.d.ts.map +1 -0
- package/dist/src/hooks/document-of-type.js +22 -0
- package/dist/src/hooks/document-of-type.js.map +1 -0
- package/dist/src/hooks/document-types.d.ts +7 -0
- package/dist/src/hooks/document-types.d.ts.map +1 -0
- package/dist/src/hooks/document-types.js +13 -0
- package/dist/src/hooks/document-types.js.map +1 -0
- package/dist/src/hooks/drive-by-id.d.ts +4 -0
- package/dist/src/hooks/drive-by-id.d.ts.map +1 -0
- package/dist/src/hooks/drive-by-id.js +12 -0
- package/dist/src/hooks/drive-by-id.js.map +1 -0
- package/dist/src/hooks/drives.d.ts +9 -0
- package/dist/src/hooks/drives.d.ts.map +1 -0
- package/dist/src/hooks/drives.js +9 -0
- package/dist/src/hooks/drives.js.map +1 -0
- package/dist/src/hooks/editor-modules.d.ts +9 -0
- package/dist/src/hooks/editor-modules.d.ts.map +1 -0
- package/dist/src/hooks/editor-modules.js +43 -0
- package/dist/src/hooks/editor-modules.js.map +1 -0
- package/dist/src/hooks/folder-by-id.d.ts +3 -0
- package/dist/src/hooks/folder-by-id.d.ts.map +1 -0
- package/dist/src/hooks/folder-by-id.js +6 -0
- package/dist/src/hooks/folder-by-id.js.map +1 -0
- package/dist/src/hooks/import-script-modules.d.ts +3 -0
- package/dist/src/hooks/import-script-modules.d.ts.map +1 -0
- package/dist/src/hooks/import-script-modules.js +6 -0
- package/dist/src/hooks/import-script-modules.js.map +1 -0
- package/dist/src/hooks/index.d.ts +33 -7
- package/dist/src/hooks/index.d.ts.map +1 -1
- package/dist/src/hooks/index.js +33 -7
- package/dist/src/hooks/index.js.map +1 -1
- package/dist/src/hooks/items-in-selected-drive.d.ts +13 -0
- package/dist/src/hooks/items-in-selected-drive.d.ts.map +1 -0
- package/dist/src/hooks/items-in-selected-drive.js +36 -0
- package/dist/src/hooks/items-in-selected-drive.js.map +1 -0
- package/dist/src/hooks/loading.d.ts +2 -0
- package/dist/src/hooks/loading.d.ts.map +1 -0
- package/dist/src/hooks/loading.js +3 -0
- package/dist/src/hooks/loading.js.map +1 -0
- package/dist/src/hooks/login-status.d.ts +2 -0
- package/dist/src/hooks/login-status.d.ts.map +1 -0
- package/dist/src/hooks/login-status.js +3 -0
- package/dist/src/hooks/login-status.js.map +1 -0
- package/dist/src/hooks/make-ph-event-functions.d.ts +7 -0
- package/dist/src/hooks/make-ph-event-functions.d.ts.map +1 -0
- package/dist/src/hooks/make-ph-event-functions.js +46 -0
- package/dist/src/hooks/make-ph-event-functions.js.map +1 -0
- package/dist/src/hooks/modals.d.ts +17 -0
- package/dist/src/hooks/modals.d.ts.map +1 -0
- package/dist/src/hooks/modals.js +26 -0
- package/dist/src/hooks/modals.js.map +1 -0
- package/dist/src/hooks/node-actions.d.ts +11 -0
- package/dist/src/hooks/node-actions.d.ts.map +1 -0
- package/dist/src/hooks/node-actions.js +97 -0
- package/dist/src/hooks/node-actions.js.map +1 -0
- package/dist/src/hooks/node-by-id.d.ts +4 -0
- package/dist/src/hooks/node-by-id.d.ts.map +1 -0
- package/dist/src/hooks/node-by-id.js +7 -0
- package/dist/src/hooks/node-by-id.js.map +1 -0
- package/dist/src/hooks/node-path.d.ts +6 -0
- package/dist/src/hooks/node-path.d.ts.map +1 -0
- package/dist/src/hooks/node-path.js +30 -0
- package/dist/src/hooks/node-path.js.map +1 -0
- package/dist/src/hooks/parent-folder.d.ts +4 -0
- package/dist/src/hooks/parent-folder.d.ts.map +1 -0
- package/dist/src/hooks/parent-folder.js +13 -0
- package/dist/src/hooks/parent-folder.js.map +1 -0
- package/dist/src/hooks/processor-manager.d.ts +9 -0
- package/dist/src/hooks/processor-manager.d.ts.map +1 -0
- package/dist/src/hooks/processor-manager.js +9 -0
- package/dist/src/hooks/processor-manager.js.map +1 -0
- package/dist/src/hooks/processor-modules.d.ts +4 -0
- package/dist/src/hooks/processor-modules.d.ts.map +1 -0
- package/dist/src/hooks/processor-modules.js +12 -0
- package/dist/src/hooks/processor-modules.js.map +1 -0
- package/dist/src/hooks/reactor.d.ts +9 -0
- package/dist/src/hooks/reactor.d.ts.map +1 -0
- package/dist/src/hooks/reactor.js +9 -0
- package/dist/src/hooks/reactor.js.map +1 -0
- package/dist/src/hooks/renown.d.ts +7 -0
- package/dist/src/hooks/renown.d.ts.map +1 -0
- package/dist/src/hooks/renown.js +9 -0
- package/dist/src/hooks/renown.js.map +1 -0
- package/dist/src/hooks/selected-document.d.ts +10 -0
- package/dist/src/hooks/selected-document.d.ts.map +1 -0
- package/dist/src/hooks/selected-document.js +28 -0
- package/dist/src/hooks/selected-document.js.map +1 -0
- package/dist/src/hooks/selected-drive.d.ts +12 -0
- package/dist/src/hooks/selected-drive.d.ts.map +1 -0
- package/dist/src/hooks/selected-drive.js +47 -0
- package/dist/src/hooks/selected-drive.js.map +1 -0
- package/dist/src/hooks/selected-folder.d.ts +4 -0
- package/dist/src/hooks/selected-folder.d.ts.map +1 -0
- package/dist/src/hooks/selected-folder.js +10 -0
- package/dist/src/hooks/selected-folder.js.map +1 -0
- package/dist/src/hooks/selected-node.d.ts +7 -0
- package/dist/src/hooks/selected-node.d.ts.map +1 -0
- package/dist/src/hooks/selected-node.js +31 -0
- package/dist/src/hooks/selected-node.js.map +1 -0
- package/dist/src/hooks/subgraph-modules.d.ts +3 -0
- package/dist/src/hooks/subgraph-modules.d.ts.map +1 -0
- package/dist/src/hooks/subgraph-modules.js +6 -0
- package/dist/src/hooks/subgraph-modules.js.map +1 -0
- package/dist/src/hooks/supported-document-types.d.ts +3 -0
- package/dist/src/hooks/supported-document-types.d.ts.map +1 -0
- package/dist/src/hooks/supported-document-types.js +7 -0
- package/dist/src/hooks/supported-document-types.js.map +1 -0
- package/dist/src/hooks/timeline-revision.d.ts +7 -0
- package/dist/src/hooks/timeline-revision.d.ts.map +1 -0
- package/dist/src/hooks/timeline-revision.js +9 -0
- package/dist/src/hooks/timeline-revision.js.map +1 -0
- package/dist/src/hooks/use-on-drop-file.d.ts +3 -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-permissions.d.ts +5 -0
- package/dist/src/hooks/user-permissions.d.ts.map +1 -0
- package/dist/src/hooks/user-permissions.js +17 -0
- package/dist/src/hooks/user-permissions.js.map +1 -0
- package/dist/src/hooks/user.d.ts +2 -0
- package/dist/src/hooks/user.d.ts.map +1 -0
- package/dist/src/hooks/user.js +3 -0
- package/dist/src/hooks/user.js.map +1 -0
- package/dist/src/hooks/vetra-packages.d.ts +8 -0
- package/dist/src/hooks/vetra-packages.d.ts.map +1 -0
- package/dist/src/hooks/vetra-packages.js +15 -0
- package/dist/src/hooks/vetra-packages.js.map +1 -0
- package/dist/src/index.d.ts +7 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +7 -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 +11 -3
- package/dist/src/reactor.d.ts.map +1 -1
- package/dist/src/reactor.js +90 -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/config.d.ts +90 -0
- package/dist/src/types/config.d.ts.map +1 -0
- package/dist/src/types/config.js +2 -0
- package/dist/src/types/config.js.map +1 -0
- package/dist/src/types/documents.d.ts +3 -0
- package/dist/src/types/documents.d.ts.map +1 -0
- package/dist/src/types/documents.js +2 -0
- package/dist/src/types/documents.js.map +1 -0
- package/dist/src/types/global.d.ts +39 -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 +7 -1
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +1 -1
- 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 +2 -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 +16 -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 +57 -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 +20 -0
- package/dist/src/utils/documents.js.map +1 -0
- package/dist/src/utils/drives.d.ts +37 -0
- package/dist/src/utils/drives.d.ts.map +1 -0
- package/dist/src/utils/drives.js +131 -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/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 +84 -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 +34 -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/renown/types.js +0 -2
- package/dist/src/renown/types.js.map +0 -1
- package/dist/src/types/drive-editor.d.ts +0 -143
- package/dist/src/types/drive-editor.d.ts.map +0 -1
- package/dist/src/types/drive-editor.js +0 -2
- package/dist/src/types/drive-editor.js.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
|
@@ -0,0 +1,470 @@
|
|
|
1
|
+
import { isDocumentTypeSupported, } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import { addFile as baseAddFile, addFolder as baseAddFolder, copyNode as baseCopyNode, deleteNode as baseDeleteNode, moveNode as baseMoveNode, updateFile as baseUpdateFile, generateNodesCopy, isFileNode, isFolderNode, logger, updateNode, } from "document-drive";
|
|
3
|
+
import { baseLoadFromInput, baseSaveToFileHandle, createPresignedHeader, createZip, generateId, replayDocument, } from "document-model/core";
|
|
4
|
+
import { UnsupportedDocumentTypeError } from "../errors.js";
|
|
5
|
+
import { getUserPermissions } from "../utils/user.js";
|
|
6
|
+
import { queueActions, queueOperations, uploadOperations } from "./queue.js";
|
|
7
|
+
async function isDocumentInLocation(document, driveId, parentFolder) {
|
|
8
|
+
const reactor = window.ph?.reactor;
|
|
9
|
+
if (!reactor) {
|
|
10
|
+
return { isDuplicate: false };
|
|
11
|
+
}
|
|
12
|
+
try {
|
|
13
|
+
// Get the drive and check its nodes
|
|
14
|
+
const drive = await reactor.getDrive(driveId);
|
|
15
|
+
// Case 1: Check for duplicate by ID
|
|
16
|
+
const nodeById = drive.state.global.nodes.find((node) => node.id === document.header.id);
|
|
17
|
+
if (nodeById && nodeById.parentFolder === (parentFolder ?? null)) {
|
|
18
|
+
return {
|
|
19
|
+
isDuplicate: true,
|
|
20
|
+
duplicateType: "id",
|
|
21
|
+
nodeId: nodeById.id,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
// Case 2: Check for duplicate by name + type in same parent folder
|
|
25
|
+
const nodeByNameAndType = drive.state.global.nodes.find((node) => isFileNode(node) &&
|
|
26
|
+
node.name === document.header.name &&
|
|
27
|
+
node.documentType === document.header.documentType &&
|
|
28
|
+
node.parentFolder === (parentFolder ?? null));
|
|
29
|
+
if (nodeByNameAndType) {
|
|
30
|
+
return {
|
|
31
|
+
isDuplicate: true,
|
|
32
|
+
duplicateType: "name",
|
|
33
|
+
nodeId: nodeByNameAndType.id,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
return { isDuplicate: false };
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// Drive doesn't exist or other error
|
|
40
|
+
return { isDuplicate: false };
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
function getDocumentTypeIcon(document) {
|
|
44
|
+
const documentType = document.header.documentType;
|
|
45
|
+
switch (documentType) {
|
|
46
|
+
case "powerhouse/document-model":
|
|
47
|
+
return "document-model";
|
|
48
|
+
case "powerhouse/app":
|
|
49
|
+
return "app";
|
|
50
|
+
case "powerhouse/document-editor":
|
|
51
|
+
return "editor";
|
|
52
|
+
case "powerhouse/subgraph":
|
|
53
|
+
return "subgraph";
|
|
54
|
+
case "powerhouse/package":
|
|
55
|
+
return "package";
|
|
56
|
+
case "powerhouse/processor": {
|
|
57
|
+
// Check the processor type from global state (safely)
|
|
58
|
+
const globalState = document.state
|
|
59
|
+
.global;
|
|
60
|
+
const processorType = globalState?.type;
|
|
61
|
+
if (processorType === "analytics")
|
|
62
|
+
return "analytics-processor";
|
|
63
|
+
if (processorType === "relational")
|
|
64
|
+
return "relational-processor";
|
|
65
|
+
if (processorType === "codegen")
|
|
66
|
+
return "codegen-processor";
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
default:
|
|
70
|
+
return undefined;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
export function downloadFile(document, fileName) {
|
|
74
|
+
const zip = createZip(document);
|
|
75
|
+
zip
|
|
76
|
+
.generateAsync({ type: "blob" })
|
|
77
|
+
.then((blob) => {
|
|
78
|
+
const link = window.document.createElement("a");
|
|
79
|
+
link.style.display = "none";
|
|
80
|
+
link.href = URL.createObjectURL(blob);
|
|
81
|
+
link.download = fileName;
|
|
82
|
+
window.document.body.appendChild(link);
|
|
83
|
+
link.click();
|
|
84
|
+
window.document.body.removeChild(link);
|
|
85
|
+
})
|
|
86
|
+
.catch(logger.error);
|
|
87
|
+
}
|
|
88
|
+
export async function exportFile(document, suggestedName) {
|
|
89
|
+
const reactor = window.ph?.reactor;
|
|
90
|
+
if (!reactor) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const documentModelModules = reactor.getDocumentModelModules();
|
|
94
|
+
const documentModelModule = documentModelModules.find((module) => module.documentModel.global.id === document.header.documentType);
|
|
95
|
+
let extension = "";
|
|
96
|
+
const documentExtension = documentModelModule?.documentModel.global.extension;
|
|
97
|
+
if (documentExtension) {
|
|
98
|
+
const cleanExtension = documentExtension.replace(/^\.+|\.+$/g, "") || "";
|
|
99
|
+
extension = `.${cleanExtension}`;
|
|
100
|
+
}
|
|
101
|
+
const name = `${suggestedName || document.header.name || "Untitled"}${extension}.phd`;
|
|
102
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
103
|
+
if (!window.showSaveFilePicker) {
|
|
104
|
+
return downloadFile(document, name);
|
|
105
|
+
}
|
|
106
|
+
try {
|
|
107
|
+
const fileHandle = await window.showSaveFilePicker({
|
|
108
|
+
suggestedName: name,
|
|
109
|
+
});
|
|
110
|
+
await baseSaveToFileHandle(document, fileHandle);
|
|
111
|
+
return fileHandle;
|
|
112
|
+
}
|
|
113
|
+
catch (e) {
|
|
114
|
+
// ignores error if user cancelled the file picker
|
|
115
|
+
if (!(e instanceof DOMException && e.name === "AbortError")) {
|
|
116
|
+
throw e;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
export async function loadFile(path) {
|
|
121
|
+
const reactor = window.ph?.reactor;
|
|
122
|
+
if (!reactor) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
const documentModelModules = reactor.getDocumentModelModules();
|
|
126
|
+
const baseDocument = await baseLoadFromInput(path, (state) => state, { checkHashes: true });
|
|
127
|
+
const documentModelModule = documentModelModules.find((module) => module.documentModel.global.id === baseDocument.header.documentType);
|
|
128
|
+
if (!documentModelModule) {
|
|
129
|
+
throw new Error(`Document "${baseDocument.header.documentType}" is not supported`);
|
|
130
|
+
}
|
|
131
|
+
return documentModelModule.utils.loadFromInput(path);
|
|
132
|
+
}
|
|
133
|
+
export async function addDocument(driveId, name, documentType, parentFolder, document, id, preferredEditor) {
|
|
134
|
+
const reactor = window.ph?.reactor;
|
|
135
|
+
if (!reactor) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
139
|
+
if (!isAllowedToCreateDocuments) {
|
|
140
|
+
throw new Error("User is not allowed to create documents");
|
|
141
|
+
}
|
|
142
|
+
const drive = await reactor.getDrive(driveId);
|
|
143
|
+
const documentId = id ?? generateId();
|
|
144
|
+
const reactorDocumentModelModules = reactor.getDocumentModelModules();
|
|
145
|
+
const documentModelModuleFromReactor = reactorDocumentModelModules.find((module) => module.documentModel.global.id === documentType);
|
|
146
|
+
if (!documentModelModuleFromReactor) {
|
|
147
|
+
throw new Error(`Document model module for type ${documentType} not found`);
|
|
148
|
+
}
|
|
149
|
+
const newDocument = documentModelModuleFromReactor.utils.createDocument({
|
|
150
|
+
...document?.state,
|
|
151
|
+
});
|
|
152
|
+
newDocument.header = createPresignedHeader(documentId, documentType);
|
|
153
|
+
newDocument.header.name = name;
|
|
154
|
+
const documentMeta = preferredEditor ? { preferredEditor } : undefined;
|
|
155
|
+
await reactor.addDocument(newDocument, documentMeta);
|
|
156
|
+
const action = baseAddFile({
|
|
157
|
+
id: documentId,
|
|
158
|
+
name,
|
|
159
|
+
documentType,
|
|
160
|
+
parentFolder: parentFolder ?? null,
|
|
161
|
+
});
|
|
162
|
+
const unsafeCastAsDrive = (await queueActions(drive, action));
|
|
163
|
+
const node = unsafeCastAsDrive.state.global.nodes.find((node) => node.id === documentId);
|
|
164
|
+
if (!node || !isFileNode(node)) {
|
|
165
|
+
throw new Error("There was an error adding document");
|
|
166
|
+
}
|
|
167
|
+
return node;
|
|
168
|
+
}
|
|
169
|
+
export async function addFile(file, driveId, name, parentFolder) {
|
|
170
|
+
logger.verbose(`addFile(drive: ${driveId}, name: ${name}, folder: ${parentFolder})`);
|
|
171
|
+
const reactor = window.ph?.reactor;
|
|
172
|
+
if (!reactor) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
176
|
+
if (!isAllowedToCreateDocuments) {
|
|
177
|
+
throw new Error("User is not allowed to create files");
|
|
178
|
+
}
|
|
179
|
+
const document = await loadFile(file);
|
|
180
|
+
if (!document) {
|
|
181
|
+
throw new Error("No document loaded");
|
|
182
|
+
}
|
|
183
|
+
const documentModule = reactor
|
|
184
|
+
.getDocumentModelModules()
|
|
185
|
+
.find((module) => module.documentModel.global.id === document.header.documentType);
|
|
186
|
+
if (!documentModule) {
|
|
187
|
+
throw new Error(`Document model module for type ${document.header.documentType} not found`);
|
|
188
|
+
}
|
|
189
|
+
let duplicateId = false;
|
|
190
|
+
try {
|
|
191
|
+
await reactor.getDocument(document.header.id);
|
|
192
|
+
duplicateId = true;
|
|
193
|
+
}
|
|
194
|
+
catch {
|
|
195
|
+
// document id not found
|
|
196
|
+
}
|
|
197
|
+
const documentId = duplicateId ? generateId() : document.header.id;
|
|
198
|
+
const header = createPresignedHeader(documentId, document.header.documentType);
|
|
199
|
+
header.lastModifiedAtUtcIso = document.header.createdAtUtcIso;
|
|
200
|
+
header.meta = document.header.meta;
|
|
201
|
+
header.name = name || document.header.name;
|
|
202
|
+
// copy the document at it's initial state
|
|
203
|
+
const initialDocument = {
|
|
204
|
+
...document,
|
|
205
|
+
header,
|
|
206
|
+
state: document.initialState,
|
|
207
|
+
operations: Object.keys(document.operations).reduce((acc, key) => {
|
|
208
|
+
acc[key] = [];
|
|
209
|
+
return acc;
|
|
210
|
+
}, {}),
|
|
211
|
+
};
|
|
212
|
+
const fileNode = await addDocument(driveId, name || document.header.name, document.header.documentType, parentFolder, initialDocument, documentId, document.header.meta?.preferredEditor);
|
|
213
|
+
if (!fileNode) {
|
|
214
|
+
throw new Error("There was an error adding file");
|
|
215
|
+
}
|
|
216
|
+
// then add all the operations in chunks
|
|
217
|
+
uploadOperations(documentId, document.operations, queueOperations).catch((error) => {
|
|
218
|
+
throw error;
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
export async function addFileWithProgress(file, driveId, name, parentFolder, onProgress, documentTypes, resolveConflict) {
|
|
222
|
+
logger.verbose(`addFileWithProgress(drive: ${driveId}, name: ${name}, folder: ${parentFolder})`);
|
|
223
|
+
const reactor = window.ph?.reactor;
|
|
224
|
+
if (!reactor) {
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
228
|
+
if (!isAllowedToCreateDocuments) {
|
|
229
|
+
throw new Error("User is not allowed to create files");
|
|
230
|
+
}
|
|
231
|
+
// Loading stage (0-10%)
|
|
232
|
+
try {
|
|
233
|
+
onProgress?.({ stage: "loading", progress: 0 });
|
|
234
|
+
const document = await loadFile(file);
|
|
235
|
+
if (!document) {
|
|
236
|
+
throw new Error("No document loaded");
|
|
237
|
+
}
|
|
238
|
+
// Check for duplicate in same location
|
|
239
|
+
const duplicateCheck = await isDocumentInLocation(document, driveId, parentFolder);
|
|
240
|
+
if (duplicateCheck.isDuplicate && !resolveConflict) {
|
|
241
|
+
// Report conflict and return early
|
|
242
|
+
onProgress?.({
|
|
243
|
+
stage: "conflict",
|
|
244
|
+
progress: 0,
|
|
245
|
+
duplicateType: duplicateCheck.duplicateType,
|
|
246
|
+
});
|
|
247
|
+
return undefined;
|
|
248
|
+
}
|
|
249
|
+
// Handle replace resolution by deleting the existing document
|
|
250
|
+
if (duplicateCheck.isDuplicate &&
|
|
251
|
+
resolveConflict === "replace" &&
|
|
252
|
+
duplicateCheck.nodeId) {
|
|
253
|
+
await deleteNode(driveId, duplicateCheck.nodeId);
|
|
254
|
+
}
|
|
255
|
+
// For "duplicate" resolution, we continue normally which creates a new document
|
|
256
|
+
// with a different ID (the default behavior)
|
|
257
|
+
// Send documentType info immediately after loading
|
|
258
|
+
const documentType = getDocumentTypeIcon(document);
|
|
259
|
+
if (documentType) {
|
|
260
|
+
onProgress?.({ stage: "loading", progress: 10, documentType });
|
|
261
|
+
}
|
|
262
|
+
else {
|
|
263
|
+
onProgress?.({ stage: "loading", progress: 10 });
|
|
264
|
+
}
|
|
265
|
+
if (!isDocumentTypeSupported(document.header.documentType, documentTypes)) {
|
|
266
|
+
onProgress?.({
|
|
267
|
+
stage: "unsupported-document-type",
|
|
268
|
+
progress: 100,
|
|
269
|
+
error: `Document type ${document.header.documentType} is not supported`,
|
|
270
|
+
});
|
|
271
|
+
throw new UnsupportedDocumentTypeError(document.header.documentType);
|
|
272
|
+
}
|
|
273
|
+
const documentModule = reactor
|
|
274
|
+
.getDocumentModelModules()
|
|
275
|
+
.find((module) => module.documentModel.global.id === document.header.documentType);
|
|
276
|
+
if (!documentModule) {
|
|
277
|
+
throw new Error(`Document model module for type ${document.header.documentType} not found`);
|
|
278
|
+
}
|
|
279
|
+
// Initializing stage (10-20%)
|
|
280
|
+
onProgress?.({ stage: "initializing", progress: 10 });
|
|
281
|
+
let duplicateId = false;
|
|
282
|
+
try {
|
|
283
|
+
await reactor.getDocument(document.header.id);
|
|
284
|
+
duplicateId = true;
|
|
285
|
+
}
|
|
286
|
+
catch {
|
|
287
|
+
// document id not found
|
|
288
|
+
}
|
|
289
|
+
const documentId = duplicateId ? generateId() : document.header.id;
|
|
290
|
+
const header = createPresignedHeader(documentId, document.header.documentType);
|
|
291
|
+
header.lastModifiedAtUtcIso = document.header.createdAtUtcIso;
|
|
292
|
+
header.meta = document.header.meta;
|
|
293
|
+
header.name = name || document.header.name;
|
|
294
|
+
// copy the document at it's initial state
|
|
295
|
+
const initialDocument = {
|
|
296
|
+
...document,
|
|
297
|
+
header,
|
|
298
|
+
state: document.initialState,
|
|
299
|
+
operations: Object.keys(document.operations).reduce((acc, key) => {
|
|
300
|
+
acc[key] = [];
|
|
301
|
+
return acc;
|
|
302
|
+
}, {}),
|
|
303
|
+
};
|
|
304
|
+
const fileNode = await addDocument(driveId, name || document.header.name, document.header.documentType, parentFolder, initialDocument, documentId, document.header.meta?.preferredEditor);
|
|
305
|
+
if (!fileNode) {
|
|
306
|
+
throw new Error("There was an error adding file");
|
|
307
|
+
}
|
|
308
|
+
onProgress?.({ stage: "initializing", progress: 20 });
|
|
309
|
+
// Uploading stage (20-100%)
|
|
310
|
+
await uploadOperations(documentId, document.operations, queueOperations, {
|
|
311
|
+
onProgress: (uploadProgress) => {
|
|
312
|
+
if (uploadProgress.totalOperations &&
|
|
313
|
+
uploadProgress.uploadedOperations !== undefined) {
|
|
314
|
+
const uploadPercent = uploadProgress.totalOperations > 0
|
|
315
|
+
? uploadProgress.uploadedOperations /
|
|
316
|
+
uploadProgress.totalOperations
|
|
317
|
+
: 0;
|
|
318
|
+
const overallProgress = 20 + Math.round(uploadPercent * 80);
|
|
319
|
+
onProgress?.({
|
|
320
|
+
stage: "uploading",
|
|
321
|
+
progress: overallProgress,
|
|
322
|
+
totalOperations: uploadProgress.totalOperations,
|
|
323
|
+
uploadedOperations: uploadProgress.uploadedOperations,
|
|
324
|
+
});
|
|
325
|
+
}
|
|
326
|
+
},
|
|
327
|
+
});
|
|
328
|
+
onProgress?.({ stage: "complete", progress: 100 });
|
|
329
|
+
return fileNode;
|
|
330
|
+
}
|
|
331
|
+
catch (error) {
|
|
332
|
+
// Don't override unsupported-document-type status
|
|
333
|
+
if (!(error instanceof UnsupportedDocumentTypeError)) {
|
|
334
|
+
const errorMessage = error instanceof Error ? error.message : "Unknown error occurred";
|
|
335
|
+
onProgress?.({
|
|
336
|
+
stage: "failed",
|
|
337
|
+
progress: 100,
|
|
338
|
+
error: errorMessage,
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
throw error;
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
export async function updateFile(driveId, nodeId, documentType, name, parentFolder) {
|
|
345
|
+
const reactor = window.ph?.reactor;
|
|
346
|
+
if (!reactor) {
|
|
347
|
+
return;
|
|
348
|
+
}
|
|
349
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
350
|
+
if (!isAllowedToCreateDocuments) {
|
|
351
|
+
throw new Error("User is not allowed to update files");
|
|
352
|
+
}
|
|
353
|
+
const drive = await reactor.getDrive(driveId);
|
|
354
|
+
const unsafeCastAsDrive = (await queueActions(drive, baseUpdateFile({
|
|
355
|
+
id: nodeId,
|
|
356
|
+
name: name ?? undefined,
|
|
357
|
+
parentFolder,
|
|
358
|
+
documentType,
|
|
359
|
+
})));
|
|
360
|
+
const node = unsafeCastAsDrive.state.global.nodes.find((node) => node.id === nodeId);
|
|
361
|
+
if (!node || !isFileNode(node)) {
|
|
362
|
+
throw new Error("There was an error updating document");
|
|
363
|
+
}
|
|
364
|
+
return node;
|
|
365
|
+
}
|
|
366
|
+
export async function addFolder(driveId, name, parentFolder) {
|
|
367
|
+
const reactor = window.ph?.reactor;
|
|
368
|
+
if (!reactor) {
|
|
369
|
+
return;
|
|
370
|
+
}
|
|
371
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
372
|
+
if (!isAllowedToCreateDocuments) {
|
|
373
|
+
throw new Error("User is not allowed to create folders");
|
|
374
|
+
}
|
|
375
|
+
const folderId = generateId();
|
|
376
|
+
const drive = await reactor.getDrive(driveId);
|
|
377
|
+
const unsafeCastAsDrive = (await queueActions(drive, baseAddFolder({
|
|
378
|
+
id: folderId,
|
|
379
|
+
name,
|
|
380
|
+
parentFolder,
|
|
381
|
+
})));
|
|
382
|
+
const node = unsafeCastAsDrive.state.global.nodes.find((node) => node.id === folderId);
|
|
383
|
+
if (!node || !isFolderNode(node)) {
|
|
384
|
+
throw new Error("There was an error adding folder");
|
|
385
|
+
}
|
|
386
|
+
return node;
|
|
387
|
+
}
|
|
388
|
+
export async function deleteNode(driveId, nodeId) {
|
|
389
|
+
const reactor = window.ph?.reactor;
|
|
390
|
+
if (!reactor) {
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
393
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
394
|
+
if (!isAllowedToCreateDocuments) {
|
|
395
|
+
throw new Error("User is not allowed to delete documents");
|
|
396
|
+
}
|
|
397
|
+
const drive = await reactor.getDrive(driveId);
|
|
398
|
+
await queueActions(drive, baseDeleteNode({ id: nodeId }));
|
|
399
|
+
}
|
|
400
|
+
export async function renameNode(driveId, nodeId, name) {
|
|
401
|
+
const reactor = window.ph?.reactor;
|
|
402
|
+
if (!reactor) {
|
|
403
|
+
return;
|
|
404
|
+
}
|
|
405
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
406
|
+
if (!isAllowedToCreateDocuments) {
|
|
407
|
+
throw new Error("User is not allowed to rename documents");
|
|
408
|
+
}
|
|
409
|
+
const drive = await reactor.getDrive(driveId);
|
|
410
|
+
const unsafeCastAsDrive = (await queueActions(drive, updateNode({ id: nodeId, name })));
|
|
411
|
+
const node = unsafeCastAsDrive.state.global.nodes.find((node) => node.id === nodeId);
|
|
412
|
+
if (!node) {
|
|
413
|
+
throw new Error("There was an error renaming node");
|
|
414
|
+
}
|
|
415
|
+
return node;
|
|
416
|
+
}
|
|
417
|
+
export async function moveNode(driveId, src, target) {
|
|
418
|
+
const reactor = window.ph?.reactor;
|
|
419
|
+
if (!reactor) {
|
|
420
|
+
return;
|
|
421
|
+
}
|
|
422
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
423
|
+
if (!isAllowedToCreateDocuments) {
|
|
424
|
+
throw new Error("User is not allowed to move documents");
|
|
425
|
+
}
|
|
426
|
+
const drive = await reactor.getDrive(driveId);
|
|
427
|
+
return await queueActions(drive, baseMoveNode({ srcFolder: src.id, targetParentFolder: target?.id }));
|
|
428
|
+
}
|
|
429
|
+
function _duplicateDocument(reactor, document, newId = generateId()) {
|
|
430
|
+
const documentModule = reactor
|
|
431
|
+
.getDocumentModelModules()
|
|
432
|
+
.find((module) => module.documentModel.global.id === document.header.documentType);
|
|
433
|
+
if (!documentModule) {
|
|
434
|
+
throw new Error(`Document model module for type ${document.header.documentType} not found`);
|
|
435
|
+
}
|
|
436
|
+
return replayDocument(document.initialState, document.operations, documentModule.reducer, undefined, createPresignedHeader(newId, document.header.documentType));
|
|
437
|
+
}
|
|
438
|
+
export async function copyNode(driveId, src, target) {
|
|
439
|
+
const reactor = window.ph?.reactor;
|
|
440
|
+
if (!reactor) {
|
|
441
|
+
return;
|
|
442
|
+
}
|
|
443
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
444
|
+
if (!isAllowedToCreateDocuments) {
|
|
445
|
+
throw new Error("User is not allowed to copy documents");
|
|
446
|
+
}
|
|
447
|
+
const drive = await reactor.getDrive(driveId);
|
|
448
|
+
const copyNodesInput = generateNodesCopy({
|
|
449
|
+
srcId: src.id,
|
|
450
|
+
targetParentFolder: target?.id,
|
|
451
|
+
targetName: src.name,
|
|
452
|
+
}, () => generateId(), drive.state.global.nodes);
|
|
453
|
+
const fileNodesToCopy = copyNodesInput.filter((copyNodeInput) => {
|
|
454
|
+
const node = drive.state.global.nodes.find((node) => node.id === copyNodeInput.srcId);
|
|
455
|
+
return node !== undefined && isFileNode(node);
|
|
456
|
+
});
|
|
457
|
+
for (const fileNodeToCopy of fileNodesToCopy) {
|
|
458
|
+
try {
|
|
459
|
+
const document = await reactor.getDocument(fileNodeToCopy.srcId);
|
|
460
|
+
const duplicatedDocument = _duplicateDocument(reactor, document, fileNodeToCopy.targetId);
|
|
461
|
+
await reactor.addDocument(duplicatedDocument);
|
|
462
|
+
}
|
|
463
|
+
catch (e) {
|
|
464
|
+
logger.error(`Error copying document ${fileNodeToCopy.srcId}: ${String(e)}`);
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
const copyActions = copyNodesInput.map((copyNodeInput) => baseCopyNode(copyNodeInput));
|
|
468
|
+
return await queueActions(drive, copyActions);
|
|
469
|
+
}
|
|
470
|
+
//# sourceMappingURL=document.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../../src/actions/document.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { DocumentDriveDocument, DriveInput, PullResponderTrigger, RemoteDriveOptions, SharingType, Trigger } from "document-drive";
|
|
2
|
+
import type { PHDocument } from "document-model";
|
|
3
|
+
export declare function addDrive(input: DriveInput, preferredEditor?: string): Promise<DocumentDriveDocument | undefined>;
|
|
4
|
+
export declare function addRemoteDrive(url: string, options: RemoteDriveOptions): Promise<DocumentDriveDocument | undefined>;
|
|
5
|
+
export declare function deleteDrive(driveId: string): Promise<void>;
|
|
6
|
+
export declare function renameDrive(driveId: string, name: string): Promise<PHDocument | undefined>;
|
|
7
|
+
export declare function setDriveAvailableOffline(driveId: string, availableOffline: boolean): Promise<PHDocument | undefined>;
|
|
8
|
+
export declare function setDriveSharingType(driveId: string, sharingType: SharingType): Promise<PHDocument | undefined>;
|
|
9
|
+
export declare function removeTrigger(driveId: string, triggerId: string): Promise<void>;
|
|
10
|
+
export declare function registerNewPullResponderTrigger(driveId: string, url: string, options: Pick<RemoteDriveOptions, "pullFilter" | "pullInterval">): Promise<PullResponderTrigger | undefined>;
|
|
11
|
+
export declare function addTrigger(driveId: string, trigger: Trigger): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=drive.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drive.d.ts","sourceRoot":"","sources":["../../../src/actions/drive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,UAAU,EACV,oBAAoB,EACpB,kBAAkB,EAElB,WAAW,EACX,OAAO,EACR,MAAM,gBAAgB,CAAC;AASxB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKjD,wBAAsB,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,MAAM,8CAoBzE;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,8CAQ5E;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,MAAM,iBAWhD;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAajC;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAgBjC;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAgBjC;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,iBAkBrE;AAED,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,cAAc,CAAC,GAC/D,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAqD3C;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,iBAkBjE"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { PullResponderTransmitter, addTrigger as baseAddTrigger, removeTrigger as baseRemoveTrigger, setAvailableOffline, setDriveName, setSharingType, } from "document-drive";
|
|
2
|
+
import { generateId } from "document-model/core";
|
|
3
|
+
import { getUserPermissions } from "../utils/user.js";
|
|
4
|
+
import { queueActions } from "./queue.js";
|
|
5
|
+
export async function addDrive(input, preferredEditor) {
|
|
6
|
+
const reactor = window.ph?.reactor;
|
|
7
|
+
if (!reactor) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
11
|
+
if (!isAllowedToCreateDocuments) {
|
|
12
|
+
throw new Error("User is not allowed to create drives");
|
|
13
|
+
}
|
|
14
|
+
const id = input.id || generateId();
|
|
15
|
+
const newDrive = await reactor.addDrive({
|
|
16
|
+
global: input.global,
|
|
17
|
+
local: input.local,
|
|
18
|
+
id,
|
|
19
|
+
}, preferredEditor);
|
|
20
|
+
return newDrive;
|
|
21
|
+
}
|
|
22
|
+
export async function addRemoteDrive(url, options) {
|
|
23
|
+
const reactor = window.ph?.reactor;
|
|
24
|
+
if (!reactor) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const newDrive = await reactor.addRemoteDrive(url, options);
|
|
28
|
+
return newDrive;
|
|
29
|
+
}
|
|
30
|
+
export async function deleteDrive(driveId) {
|
|
31
|
+
const reactor = window.ph?.reactor;
|
|
32
|
+
if (!reactor) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
36
|
+
if (!isAllowedToCreateDocuments) {
|
|
37
|
+
throw new Error("User is not allowed to delete drives");
|
|
38
|
+
}
|
|
39
|
+
await reactor.deleteDrive(driveId);
|
|
40
|
+
}
|
|
41
|
+
export async function renameDrive(driveId, name) {
|
|
42
|
+
const reactor = window.ph?.reactor;
|
|
43
|
+
if (!reactor) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
47
|
+
if (!isAllowedToCreateDocuments) {
|
|
48
|
+
throw new Error("User is not allowed to rename drives");
|
|
49
|
+
}
|
|
50
|
+
const drive = await reactor.getDrive(driveId);
|
|
51
|
+
const renamedDrive = await queueActions(drive, setDriveName({ name }));
|
|
52
|
+
return renamedDrive;
|
|
53
|
+
}
|
|
54
|
+
export async function setDriveAvailableOffline(driveId, availableOffline) {
|
|
55
|
+
const reactor = window.ph?.reactor;
|
|
56
|
+
if (!reactor) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
60
|
+
if (!isAllowedToCreateDocuments) {
|
|
61
|
+
throw new Error("User is not allowed to change drive availability");
|
|
62
|
+
}
|
|
63
|
+
const drive = await reactor.getDrive(driveId);
|
|
64
|
+
const updatedDrive = await queueActions(drive, setAvailableOffline({ availableOffline }));
|
|
65
|
+
return updatedDrive;
|
|
66
|
+
}
|
|
67
|
+
export async function setDriveSharingType(driveId, sharingType) {
|
|
68
|
+
const reactor = window.ph?.reactor;
|
|
69
|
+
if (!reactor) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const { isAllowedToCreateDocuments } = getUserPermissions();
|
|
73
|
+
if (!isAllowedToCreateDocuments) {
|
|
74
|
+
throw new Error("User is not allowed to change drive availability");
|
|
75
|
+
}
|
|
76
|
+
const drive = await reactor.getDrive(driveId);
|
|
77
|
+
const updatedDrive = await queueActions(drive, setSharingType({ type: sharingType }));
|
|
78
|
+
return updatedDrive;
|
|
79
|
+
}
|
|
80
|
+
export async function removeTrigger(driveId, triggerId) {
|
|
81
|
+
const reactor = window.ph?.reactor;
|
|
82
|
+
if (!reactor) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const drive = await reactor.getDrive(driveId);
|
|
86
|
+
const unsafeCastAsDrive = (await queueActions(drive, baseRemoveTrigger({ triggerId })));
|
|
87
|
+
const trigger = unsafeCastAsDrive.state.local.triggers.find((trigger) => trigger.id === triggerId);
|
|
88
|
+
if (trigger) {
|
|
89
|
+
throw new Error(`There was an error removing trigger ${triggerId}`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
export async function registerNewPullResponderTrigger(driveId, url, options) {
|
|
93
|
+
const reactor = window.ph?.reactor;
|
|
94
|
+
if (!reactor) {
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const uuid = generateId();
|
|
98
|
+
const listener = {
|
|
99
|
+
driveId,
|
|
100
|
+
listenerId: uuid,
|
|
101
|
+
block: false,
|
|
102
|
+
filter: {
|
|
103
|
+
branch: options.pullFilter?.branch ?? [],
|
|
104
|
+
documentId: options.pullFilter?.documentId ?? [],
|
|
105
|
+
documentType: options.pullFilter?.documentType ?? [],
|
|
106
|
+
scope: options.pullFilter?.scope ?? [],
|
|
107
|
+
},
|
|
108
|
+
system: false,
|
|
109
|
+
label: `Pullresponder #${uuid}`,
|
|
110
|
+
callInfo: {
|
|
111
|
+
data: "",
|
|
112
|
+
name: "PullResponder",
|
|
113
|
+
transmitterType: "PullResponder",
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
// TODO: circular reference
|
|
117
|
+
// TODO: once we have DI, remove this and pass around
|
|
118
|
+
const listenerManager = reactor.listeners;
|
|
119
|
+
listener.transmitter = new PullResponderTransmitter(listener, listenerManager);
|
|
120
|
+
// set the listener on the manager directly (bypassing operations)
|
|
121
|
+
try {
|
|
122
|
+
await listenerManager.setListener(driveId, listener);
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
throw new Error(`Listener couldn't be registered: ${error}`);
|
|
126
|
+
}
|
|
127
|
+
// for backwards compatibility: return everything but the transmitter
|
|
128
|
+
return {
|
|
129
|
+
driveId,
|
|
130
|
+
filter: listener.filter,
|
|
131
|
+
data: {
|
|
132
|
+
interval: `${options.pullInterval}` || "1000",
|
|
133
|
+
listenerId: uuid,
|
|
134
|
+
url,
|
|
135
|
+
},
|
|
136
|
+
id: uuid,
|
|
137
|
+
type: "PullResponder",
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
export async function addTrigger(driveId, trigger) {
|
|
141
|
+
const reactor = window.ph?.reactor;
|
|
142
|
+
if (!reactor) {
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
const drive = await reactor.getDrive(driveId);
|
|
146
|
+
const unsafeCastAsDrive = (await queueActions(drive, baseAddTrigger({ trigger })));
|
|
147
|
+
const newTrigger = unsafeCastAsDrive.state.local.triggers.find((trigger) => trigger.id === trigger.id);
|
|
148
|
+
if (!newTrigger) {
|
|
149
|
+
throw new Error(`There was an error adding the trigger ${trigger.id}`);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=drive.js.map
|