@powerhousedao/reactor-browser 4.1.0-dev.9 → 5.0.0-staging.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +578 -0
- package/dist/src/actions/dispatch.d.ts +3 -0
- package/dist/src/actions/dispatch.d.ts.map +1 -0
- package/dist/src/actions/dispatch.js +13 -0
- package/dist/src/actions/dispatch.js.map +1 -0
- package/dist/src/actions/document.d.ts +14 -0
- package/dist/src/actions/document.d.ts.map +1 -0
- package/dist/src/actions/document.js +259 -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 +194 -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 +9 -0
- package/dist/src/actions/queue.d.ts.map +1 -0
- package/dist/src/actions/queue.js +144 -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/index.d.ts +2 -0
- package/dist/src/analytics/index.d.ts.map +1 -0
- package/dist/src/analytics/index.js +2 -0
- package/dist/src/analytics/index.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/read-mode.d.ts.map +1 -1
- package/dist/src/context/read-mode.js +3 -7
- package/dist/src/context/read-mode.js.map +1 -1
- package/dist/src/crypto/browser.d.ts.map +1 -1
- package/dist/src/crypto/browser.js +33 -10
- package/dist/src/crypto/browser.js.map +1 -1
- package/dist/src/crypto/index.d.ts +12 -5
- package/dist/src/crypto/index.d.ts.map +1 -1
- package/dist/src/crypto/index.js +61 -60
- package/dist/src/crypto/index.js.map +1 -1
- package/dist/src/document-model.d.ts +3 -2
- package/dist/src/document-model.d.ts.map +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 +26 -0
- package/dist/src/events/add-ph-event-handlers.js.map +1 -0
- package/dist/src/events/config.d.ts +8 -0
- package/dist/src/events/config.d.ts.map +1 -0
- package/dist/src/events/config.js +25 -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 +57 -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/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 +60 -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 +50 -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/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 +13 -0
- package/dist/src/hooks/documents.d.ts.map +1 -0
- package/dist/src/hooks/documents.js +46 -0
- package/dist/src/hooks/documents.js.map +1 -0
- package/dist/src/hooks/{useDriveContext.d.ts → drive-context.d.ts} +1 -1
- package/dist/src/hooks/drive-context.d.ts.map +1 -0
- package/dist/src/hooks/{useDriveContext.js → drive-context.js} +1 -1
- package/dist/src/hooks/drive-context.js.map +1 -0
- package/dist/src/hooks/drives.d.ts +24 -0
- package/dist/src/hooks/drives.d.ts.map +1 -0
- package/dist/src/hooks/drives.js +88 -0
- package/dist/src/hooks/drives.js.map +1 -0
- package/dist/src/hooks/index.d.ts +11 -7
- package/dist/src/hooks/index.d.ts.map +1 -1
- package/dist/src/hooks/index.js +11 -7
- package/dist/src/hooks/index.js.map +1 -1
- package/dist/src/hooks/nodes.d.ts +41 -0
- package/dist/src/hooks/nodes.d.ts.map +1 -0
- package/dist/src/hooks/nodes.js +160 -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/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 +75 -0
- package/dist/src/hooks/vetra-packages.js.map +1 -0
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +6 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/reactor.d.ts +7 -0
- package/dist/src/reactor.d.ts.map +1 -1
- package/dist/src/reactor.js +63 -0
- package/dist/src/reactor.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 +7 -0
- package/dist/src/renown/utils.d.ts.map +1 -0
- package/dist/src/renown/utils.js +52 -0
- package/dist/src/renown/utils.js.map +1 -0
- package/dist/src/types/drive-editor.d.ts +9 -81
- package/dist/src/types/drive-editor.d.ts.map +1 -1
- package/dist/src/types/global.d.ts +64 -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 +3 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +3 -0
- package/dist/src/types/index.js.map +1 -1
- 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/vetra.d.ts +65 -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/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 +6 -4
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +6 -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/url.d.ts +22 -0
- package/dist/src/utils/url.d.ts.map +1 -0
- package/dist/src/utils/url.js +59 -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 +78 -0
- package/dist/src/utils/vetra.js.map +1 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- 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 +11 -5
- package/dist/package.json +0 -75
- 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.map +0 -1
- 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/src/{renown → events}/types.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
package/dist/src/utils/index.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export
|
|
7
|
-
return drives.map(documentToHash).join("&");
|
|
8
|
-
}
|
|
1
|
+
export * from "./drives.js";
|
|
2
|
+
export * from "./nodes.js";
|
|
3
|
+
export * from "./switchboard.js";
|
|
4
|
+
export * from "./url.js";
|
|
5
|
+
export * from "./user.js";
|
|
6
|
+
export * from "./vetra.js";
|
|
9
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type FileNode, type FolderNode, type Node } from "document-drive";
|
|
2
|
+
/** Sorts nodes by name. */
|
|
3
|
+
export declare function sortNodesByName<T extends Node>(nodes: T[]): T[];
|
|
4
|
+
/** Returns whether a node is a file. */
|
|
5
|
+
export declare function isFileNodeKind(node: Node | null | undefined): node is FileNode;
|
|
6
|
+
/** Returns whether a node is a folder. */
|
|
7
|
+
export declare function isFolderNodeKind(node: Node | null | undefined): node is FolderNode;
|
|
8
|
+
//# sourceMappingURL=nodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../../src/utils/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE3E,2BAA2B;AAC3B,wBAAgB,eAAe,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,OAEzD;AAED,wCAAwC;AACxC,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAC5B,IAAI,IAAI,QAAQ,CAGlB;AAED,0CAA0C;AAC1C,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,SAAS,GAC5B,IAAI,IAAI,UAAU,CAGpB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Sorts nodes by name. */
|
|
2
|
+
export function sortNodesByName(nodes) {
|
|
3
|
+
return nodes.toSorted((a, b) => a.name.localeCompare(b.name));
|
|
4
|
+
}
|
|
5
|
+
/** Returns whether a node is a file. */
|
|
6
|
+
export function isFileNodeKind(node) {
|
|
7
|
+
if (!node)
|
|
8
|
+
return false;
|
|
9
|
+
return node.kind.toUpperCase() === "FILE";
|
|
10
|
+
}
|
|
11
|
+
/** Returns whether a node is a folder. */
|
|
12
|
+
export function isFolderNodeKind(node) {
|
|
13
|
+
if (!node)
|
|
14
|
+
return false;
|
|
15
|
+
return node.kind.toUpperCase() === "FOLDER";
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=nodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../../src/utils/nodes.ts"],"names":[],"mappings":"AAEA,2BAA2B;AAC3B,MAAM,UAAU,eAAe,CAAiB,KAAU;IACxD,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,wCAAwC;AACxC,MAAM,UAAU,cAAc,CAC5B,IAA6B;IAE7B,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;AAC5C,CAAC;AAED,0CAA0C;AAC1C,MAAM,UAAU,gBAAgB,CAC9B,IAA6B;IAE7B,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type DocumentDriveDocument, type Node } from "document-drive";
|
|
2
|
+
/** Makes a URL component for a drive. */
|
|
3
|
+
export declare function makeDriveUrlComponent(drive: DocumentDriveDocument | undefined): string;
|
|
4
|
+
/** Makes a URL component for a node. */
|
|
5
|
+
export declare function makeNodeSlug(node: Node | undefined): string;
|
|
6
|
+
/** Extracts the node slug from a path.
|
|
7
|
+
*
|
|
8
|
+
* The path is expected to be in the format `/d/<drive-slug>/<node-slug>`.
|
|
9
|
+
*/
|
|
10
|
+
export declare function extractNodeSlugFromPath(path: string): string;
|
|
11
|
+
/** Finds a UUID in a string, used for extracting node ids from node slugs in the URL. */
|
|
12
|
+
export declare function findUuid(input: string | undefined): string | undefined;
|
|
13
|
+
export declare function extractNodeIdFromSlug(nodeSlug: string | undefined): string | undefined;
|
|
14
|
+
export declare function extractNodeIdFromPath(path: string): string | undefined;
|
|
15
|
+
/** Extracts the drive slug from a path.
|
|
16
|
+
* Used for extracting drive ids from drive slugs in the URL.
|
|
17
|
+
* Expects the path to be in the format `/d/<drive-slug>`.
|
|
18
|
+
*/
|
|
19
|
+
export declare function extractDriveSlugFromPath(path: string): string;
|
|
20
|
+
export declare function extractDriveIdFromSlug(driveSlug: string | undefined): string | undefined;
|
|
21
|
+
export declare function extractDriveIdFromPath(path: string): string | undefined;
|
|
22
|
+
//# sourceMappingURL=url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/utils/url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAGvE,yCAAyC;AACzC,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,qBAAqB,GAAG,SAAS,UAIzC;AAED,wCAAwC;AACxC,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,UAKlD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,UAGnD;AAED,yFAAyF;AACzF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,sBAMjD;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,sBAGjE;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,sBAIjD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,UAGpD;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,sBAGnE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,sBAIlD"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import slug from "slug";
|
|
2
|
+
/** Makes a URL component for a drive. */
|
|
3
|
+
export function makeDriveUrlComponent(drive) {
|
|
4
|
+
if (!drive)
|
|
5
|
+
return "";
|
|
6
|
+
return `/d/${slug(drive.header.slug)}`;
|
|
7
|
+
}
|
|
8
|
+
/** Makes a URL component for a node. */
|
|
9
|
+
export function makeNodeSlug(node) {
|
|
10
|
+
if (!node)
|
|
11
|
+
return "";
|
|
12
|
+
const nodeName = node.name;
|
|
13
|
+
if (!nodeName)
|
|
14
|
+
return slug(node.id);
|
|
15
|
+
return slug(`${nodeName}-${node.id}`);
|
|
16
|
+
}
|
|
17
|
+
/** Extracts the node slug from a path.
|
|
18
|
+
*
|
|
19
|
+
* The path is expected to be in the format `/d/<drive-slug>/<node-slug>`.
|
|
20
|
+
*/
|
|
21
|
+
export function extractNodeSlugFromPath(path) {
|
|
22
|
+
const match = /^\/d\/[^/]+\/([^/]+)$/.exec(path);
|
|
23
|
+
return match?.[1] ?? "";
|
|
24
|
+
}
|
|
25
|
+
/** Finds a UUID in a string, used for extracting node ids from node slugs in the URL. */
|
|
26
|
+
export function findUuid(input) {
|
|
27
|
+
if (!input)
|
|
28
|
+
return undefined;
|
|
29
|
+
const uuidRegex = /\b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b/;
|
|
30
|
+
const match = uuidRegex.exec(input);
|
|
31
|
+
return match?.[0];
|
|
32
|
+
}
|
|
33
|
+
export function extractNodeIdFromSlug(nodeSlug) {
|
|
34
|
+
const nodeId = findUuid(nodeSlug);
|
|
35
|
+
return nodeId;
|
|
36
|
+
}
|
|
37
|
+
export function extractNodeIdFromPath(path) {
|
|
38
|
+
const nodeSlug = extractNodeSlugFromPath(path);
|
|
39
|
+
const nodeId = extractNodeIdFromSlug(nodeSlug);
|
|
40
|
+
return nodeId;
|
|
41
|
+
}
|
|
42
|
+
/** Extracts the drive slug from a path.
|
|
43
|
+
* Used for extracting drive ids from drive slugs in the URL.
|
|
44
|
+
* Expects the path to be in the format `/d/<drive-slug>`.
|
|
45
|
+
*/
|
|
46
|
+
export function extractDriveSlugFromPath(path) {
|
|
47
|
+
const match = /^\/d\/([^/]+)/.exec(path);
|
|
48
|
+
return match?.[1] ?? "";
|
|
49
|
+
}
|
|
50
|
+
export function extractDriveIdFromSlug(driveSlug) {
|
|
51
|
+
const driveId = findUuid(driveSlug);
|
|
52
|
+
return driveId;
|
|
53
|
+
}
|
|
54
|
+
export function extractDriveIdFromPath(path) {
|
|
55
|
+
const driveSlug = extractDriveSlugFromPath(path);
|
|
56
|
+
const driveId = extractDriveIdFromSlug(driveSlug);
|
|
57
|
+
return driveId;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url.js","sourceRoot":"","sources":["../../../src/utils/url.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,yCAAyC;AACzC,MAAM,UAAU,qBAAqB,CACnC,KAAwC;IAExC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;AACzC,CAAC;AAED,wCAAwC;AACxC,MAAM,UAAU,YAAY,CAAC,IAAsB;IACjD,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IAC3B,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,GAAG,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,QAAQ,CAAC,KAAyB;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,SAAS,GACb,iFAAiF,CAAC;IACpF,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAA4B;IAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAY;IAChD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAA6B;IAClE,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,SAAS,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../src/utils/user.ts"],"names":[],"mappings":"AAAA,wBAAgB,kBAAkB;;;EAajC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export function getUserPermissions() {
|
|
2
|
+
const user = window.user;
|
|
3
|
+
const allowList = window.phAppConfig?.allowList;
|
|
4
|
+
if (!allowList) {
|
|
5
|
+
return {
|
|
6
|
+
isAllowedToCreateDocuments: true,
|
|
7
|
+
isAllowedToEditDocuments: true,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
return {
|
|
11
|
+
isAllowedToCreateDocuments: allowList.includes(user?.address ?? ""),
|
|
12
|
+
isAllowedToEditDocuments: allowList.includes(user?.address ?? ""),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../../src/utils/user.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,kBAAkB;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACzB,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;IAChD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO;YACL,0BAA0B,EAAE,IAAI;YAChC,wBAAwB,EAAE,IAAI;SAC/B,CAAC;IACJ,CAAC;IACD,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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type DocumentModelLib, type DocumentModelModule, type EditorModule } from "document-model";
|
|
2
|
+
import { type VetraDocumentModelModule, type VetraEditorModule, type VetraPackage, type VetraPackageManifest } from "../types/vetra.js";
|
|
3
|
+
export declare function convertLegacyLibToVetraPackage(legacyLib: DocumentModelLib): VetraPackage;
|
|
4
|
+
export declare function convertLegacyDocumentModelModuleToVetraDocumentModelModule(legacyDocumentModelModule: DocumentModelModule): VetraDocumentModelModule;
|
|
5
|
+
export declare function convertLegacyEditorModuleToVetraEditorModule(legacyEditorModule: EditorModule): VetraEditorModule;
|
|
6
|
+
export declare function makeVetraPackageManifest(vetraPackage: VetraPackage): VetraPackageManifest;
|
|
7
|
+
//# sourceMappingURL=vetra.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/utils/vetra.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EAGtB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,gBAAgB,GAC1B,YAAY,CAsBd;AAED,wBAAgB,0DAA0D,CACxE,yBAAyB,EAAE,mBAAmB,4BAuB/C;AAED,wBAAgB,4CAA4C,CAC1D,kBAAkB,EAAE,YAAY,GAC/B,iBAAiB,CAcnB;AAED,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,YAAY,GACzB,oBAAoB,CAUtB"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { generateId, } from "document-model";
|
|
2
|
+
export function convertLegacyLibToVetraPackage(legacyLib) {
|
|
3
|
+
const id = generateId();
|
|
4
|
+
const vetraPackage = {
|
|
5
|
+
id,
|
|
6
|
+
name: legacyLib.manifest.name,
|
|
7
|
+
description: legacyLib.manifest.description,
|
|
8
|
+
category: legacyLib.manifest.category,
|
|
9
|
+
author: {
|
|
10
|
+
name: "Powerhouse",
|
|
11
|
+
website: "https://powerhousedao.com",
|
|
12
|
+
},
|
|
13
|
+
modules: {
|
|
14
|
+
documentModelModules: legacyLib.documentModels.map(convertLegacyDocumentModelModuleToVetraDocumentModelModule),
|
|
15
|
+
editorModules: legacyLib.editors.map(convertLegacyEditorModuleToVetraEditorModule),
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
return vetraPackage;
|
|
19
|
+
}
|
|
20
|
+
export function convertLegacyDocumentModelModuleToVetraDocumentModelModule(legacyDocumentModelModule) {
|
|
21
|
+
const documentModel = legacyDocumentModelModule.documentModel;
|
|
22
|
+
const name = documentModel.name;
|
|
23
|
+
const documentType = documentModel.id;
|
|
24
|
+
const unsafeIdFromDocumentType = documentType;
|
|
25
|
+
const extension = documentModel.extension;
|
|
26
|
+
const specifications = documentModel.specifications;
|
|
27
|
+
const reducer = legacyDocumentModelModule.reducer;
|
|
28
|
+
const actions = legacyDocumentModelModule.actions;
|
|
29
|
+
const utils = legacyDocumentModelModule.utils;
|
|
30
|
+
const vetraDocumentModelModule = {
|
|
31
|
+
id: unsafeIdFromDocumentType,
|
|
32
|
+
name,
|
|
33
|
+
documentType,
|
|
34
|
+
extension,
|
|
35
|
+
documentModel,
|
|
36
|
+
specifications,
|
|
37
|
+
reducer,
|
|
38
|
+
actions,
|
|
39
|
+
utils,
|
|
40
|
+
};
|
|
41
|
+
return vetraDocumentModelModule;
|
|
42
|
+
}
|
|
43
|
+
export function convertLegacyEditorModuleToVetraEditorModule(legacyEditorModule) {
|
|
44
|
+
const config = legacyEditorModule.config;
|
|
45
|
+
const unsafeNameFromConfig = config.id;
|
|
46
|
+
const unsafeIdFromConfig = unsafeNameFromConfig;
|
|
47
|
+
const documentTypes = legacyEditorModule.documentTypes;
|
|
48
|
+
const Component = legacyEditorModule.Component;
|
|
49
|
+
const vetraEditorModule = {
|
|
50
|
+
id: unsafeIdFromConfig,
|
|
51
|
+
name: unsafeNameFromConfig,
|
|
52
|
+
documentTypes,
|
|
53
|
+
Component,
|
|
54
|
+
config,
|
|
55
|
+
};
|
|
56
|
+
return vetraEditorModule;
|
|
57
|
+
}
|
|
58
|
+
export function makeVetraPackageManifest(vetraPackage) {
|
|
59
|
+
const { id, name, description, category, author, modules } = vetraPackage;
|
|
60
|
+
return {
|
|
61
|
+
id,
|
|
62
|
+
name,
|
|
63
|
+
description,
|
|
64
|
+
category,
|
|
65
|
+
author,
|
|
66
|
+
modules: makeVetraPackageManifestModulesEntry(modules),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function makeVetraPackageManifestModulesEntry(modules) {
|
|
70
|
+
return Object.entries(modules).reduce((acc, [moduleType, module]) => {
|
|
71
|
+
acc[moduleType] = module.map((m) => ({
|
|
72
|
+
id: m.id,
|
|
73
|
+
name: m.name,
|
|
74
|
+
}));
|
|
75
|
+
return acc;
|
|
76
|
+
}, {});
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=vetra.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/utils/vetra.ts"],"names":[],"mappings":"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"}
|