@powerhousedao/reactor-api 6.0.2-staging.2 → 6.0.2-staging.3
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 +6 -0
- package/dist/index.d.mts +2943 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +6375 -0
- package/dist/index.mjs.map +1 -0
- package/dist/src/packages/https-hooks.d.mts +23 -7
- package/dist/src/packages/https-hooks.d.mts.map +1 -1
- package/dist/src/packages/https-hooks.mjs +73 -53
- package/dist/src/packages/https-hooks.mjs.map +1 -1
- package/dist/src/packages/vite-loader.d.mts +29 -0
- package/dist/src/packages/vite-loader.d.mts.map +1 -0
- package/dist/src/packages/vite-loader.mjs +142 -0
- package/dist/src/packages/vite-loader.mjs.map +1 -0
- package/dist/types-Do4QTfT3.d.mts +37 -0
- package/dist/types-Do4QTfT3.d.mts.map +1 -0
- package/dist/utils-DEEhP99G.mjs +286 -0
- package/dist/utils-DEEhP99G.mjs.map +1 -0
- package/package.json +45 -32
- package/dist/codegen.d.ts +0 -4
- package/dist/codegen.d.ts.map +0 -1
- package/dist/codegen.js +0 -38
- package/dist/codegen.js.map +0 -1
- package/dist/index.d.ts +0 -16
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -16
- package/dist/index.js.map +0 -1
- package/dist/src/config.d.ts +0 -6
- package/dist/src/config.d.ts.map +0 -1
- package/dist/src/config.js +0 -6
- package/dist/src/config.js.map +0 -1
- package/dist/src/dev.d.ts +0 -2
- package/dist/src/dev.d.ts.map +0 -1
- package/dist/src/dev.js +0 -51
- package/dist/src/dev.js.map +0 -1
- package/dist/src/graphql/analytics-subgraph.d.ts +0 -14
- package/dist/src/graphql/analytics-subgraph.d.ts.map +0 -1
- package/dist/src/graphql/analytics-subgraph.js +0 -26
- package/dist/src/graphql/analytics-subgraph.js.map +0 -1
- package/dist/src/graphql/auth/index.d.ts +0 -2
- package/dist/src/graphql/auth/index.d.ts.map +0 -1
- package/dist/src/graphql/auth/index.js +0 -2
- package/dist/src/graphql/auth/index.js.map +0 -1
- package/dist/src/graphql/auth/resolvers.d.ts +0 -166
- package/dist/src/graphql/auth/resolvers.d.ts.map +0 -1
- package/dist/src/graphql/auth/resolvers.js +0 -227
- package/dist/src/graphql/auth/resolvers.js.map +0 -1
- package/dist/src/graphql/auth/schema.graphql +0 -195
- package/dist/src/graphql/auth/subgraph.d.ts +0 -202
- package/dist/src/graphql/auth/subgraph.d.ts.map +0 -1
- package/dist/src/graphql/auth/subgraph.js +0 -384
- package/dist/src/graphql/auth/subgraph.js.map +0 -1
- package/dist/src/graphql/base-subgraph.d.ts +0 -28
- package/dist/src/graphql/base-subgraph.d.ts.map +0 -1
- package/dist/src/graphql/base-subgraph.js +0 -126
- package/dist/src/graphql/base-subgraph.js.map +0 -1
- package/dist/src/graphql/document-model-subgraph.d.ts +0 -105
- package/dist/src/graphql/document-model-subgraph.d.ts.map +0 -1
- package/dist/src/graphql/document-model-subgraph.js +0 -312
- package/dist/src/graphql/document-model-subgraph.js.map +0 -1
- package/dist/src/graphql/graphql-manager.d.ts +0 -68
- package/dist/src/graphql/graphql-manager.d.ts.map +0 -1
- package/dist/src/graphql/graphql-manager.js +0 -589
- package/dist/src/graphql/graphql-manager.js.map +0 -1
- package/dist/src/graphql/index.d.ts +0 -10
- package/dist/src/graphql/index.d.ts.map +0 -1
- package/dist/src/graphql/index.js +0 -10
- package/dist/src/graphql/index.js.map +0 -1
- package/dist/src/graphql/packages/index.d.ts +0 -2
- package/dist/src/graphql/packages/index.d.ts.map +0 -1
- package/dist/src/graphql/packages/index.js +0 -2
- package/dist/src/graphql/packages/index.js.map +0 -1
- package/dist/src/graphql/packages/resolvers.d.ts +0 -31
- package/dist/src/graphql/packages/resolvers.d.ts.map +0 -1
- package/dist/src/graphql/packages/resolvers.js +0 -37
- package/dist/src/graphql/packages/resolvers.js.map +0 -1
- package/dist/src/graphql/packages/schema.graphql +0 -50
- package/dist/src/graphql/packages/subgraph.d.ts +0 -55
- package/dist/src/graphql/packages/subgraph.d.ts.map +0 -1
- package/dist/src/graphql/packages/subgraph.js +0 -73
- package/dist/src/graphql/packages/subgraph.js.map +0 -1
- package/dist/src/graphql/playground.d.ts +0 -2
- package/dist/src/graphql/playground.d.ts.map +0 -1
- package/dist/src/graphql/playground.js +0 -81
- package/dist/src/graphql/playground.js.map +0 -1
- package/dist/src/graphql/reactor/adapters.d.ts +0 -62
- package/dist/src/graphql/reactor/adapters.d.ts.map +0 -1
- package/dist/src/graphql/reactor/adapters.js +0 -271
- package/dist/src/graphql/reactor/adapters.js.map +0 -1
- package/dist/src/graphql/reactor/factory.d.ts +0 -105
- package/dist/src/graphql/reactor/factory.d.ts.map +0 -1
- package/dist/src/graphql/reactor/factory.js +0 -7
- package/dist/src/graphql/reactor/factory.js.map +0 -1
- package/dist/src/graphql/reactor/gen/graphql.d.ts +0 -1489
- package/dist/src/graphql/reactor/gen/graphql.d.ts.map +0 -1
- package/dist/src/graphql/reactor/gen/graphql.js +0 -731
- package/dist/src/graphql/reactor/gen/graphql.js.map +0 -1
- package/dist/src/graphql/reactor/index.d.ts +0 -4
- package/dist/src/graphql/reactor/index.d.ts.map +0 -1
- package/dist/src/graphql/reactor/index.js +0 -4
- package/dist/src/graphql/reactor/index.js.map +0 -1
- package/dist/src/graphql/reactor/operations.graphql +0 -443
- package/dist/src/graphql/reactor/pubsub.d.ts +0 -27
- package/dist/src/graphql/reactor/pubsub.d.ts.map +0 -1
- package/dist/src/graphql/reactor/pubsub.js +0 -93
- package/dist/src/graphql/reactor/pubsub.js.map +0 -1
- package/dist/src/graphql/reactor/requester.d.ts +0 -4
- package/dist/src/graphql/reactor/requester.d.ts.map +0 -1
- package/dist/src/graphql/reactor/requester.js +0 -22
- package/dist/src/graphql/reactor/requester.js.map +0 -1
- package/dist/src/graphql/reactor/requester.with-zod.d.ts +0 -4
- package/dist/src/graphql/reactor/requester.with-zod.d.ts.map +0 -1
- package/dist/src/graphql/reactor/requester.with-zod.js +0 -129
- package/dist/src/graphql/reactor/requester.with-zod.js.map +0 -1
- package/dist/src/graphql/reactor/resolvers.d.ts +0 -223
- package/dist/src/graphql/reactor/resolvers.d.ts.map +0 -1
- package/dist/src/graphql/reactor/resolvers.js +0 -682
- package/dist/src/graphql/reactor/resolvers.js.map +0 -1
- package/dist/src/graphql/reactor/schema.graphql +0 -475
- package/dist/src/graphql/reactor/subgraph.d.ts +0 -18
- package/dist/src/graphql/reactor/subgraph.d.ts.map +0 -1
- package/dist/src/graphql/reactor/subgraph.js +0 -457
- package/dist/src/graphql/reactor/subgraph.js.map +0 -1
- package/dist/src/graphql/reactor/validation.d.ts +0 -348
- package/dist/src/graphql/reactor/validation.d.ts.map +0 -1
- package/dist/src/graphql/reactor/validation.js +0 -167
- package/dist/src/graphql/reactor/validation.js.map +0 -1
- package/dist/src/graphql/sse.d.ts +0 -42
- package/dist/src/graphql/sse.d.ts.map +0 -1
- package/dist/src/graphql/sse.js +0 -33
- package/dist/src/graphql/sse.js.map +0 -1
- package/dist/src/graphql/system/env/getters.d.ts +0 -2
- package/dist/src/graphql/system/env/getters.d.ts.map +0 -1
- package/dist/src/graphql/system/env/getters.js +0 -4
- package/dist/src/graphql/system/env/getters.js.map +0 -1
- package/dist/src/graphql/system/env/index.d.ts +0 -2
- package/dist/src/graphql/system/env/index.d.ts.map +0 -1
- package/dist/src/graphql/system/env/index.js +0 -5
- package/dist/src/graphql/system/env/index.js.map +0 -1
- package/dist/src/graphql/system/index.d.ts +0 -2
- package/dist/src/graphql/system/index.d.ts.map +0 -1
- package/dist/src/graphql/system/index.js +0 -2
- package/dist/src/graphql/system/index.js.map +0 -1
- package/dist/src/graphql/system/types.d.ts +0 -2
- package/dist/src/graphql/system/types.d.ts.map +0 -1
- package/dist/src/graphql/system/types.js +0 -2
- package/dist/src/graphql/system/types.js.map +0 -1
- package/dist/src/graphql/temp-hack-rwa-type-defs.d.ts +0 -57
- package/dist/src/graphql/temp-hack-rwa-type-defs.d.ts.map +0 -1
- package/dist/src/graphql/temp-hack-rwa-type-defs.js +0 -2
- package/dist/src/graphql/temp-hack-rwa-type-defs.js.map +0 -1
- package/dist/src/graphql/types.d.ts +0 -102
- package/dist/src/graphql/types.d.ts.map +0 -1
- package/dist/src/graphql/types.js +0 -2
- package/dist/src/graphql/types.js.map +0 -1
- package/dist/src/graphql/utils.d.ts +0 -9
- package/dist/src/graphql/utils.d.ts.map +0 -1
- package/dist/src/graphql/utils.js +0 -72
- package/dist/src/graphql/utils.js.map +0 -1
- package/dist/src/graphql/websocket.d.ts +0 -3
- package/dist/src/graphql/websocket.d.ts.map +0 -1
- package/dist/src/graphql/websocket.js +0 -15
- package/dist/src/graphql/websocket.js.map +0 -1
- package/dist/src/migrations/001_create_document_permissions.d.ts +0 -4
- package/dist/src/migrations/001_create_document_permissions.d.ts.map +0 -1
- package/dist/src/migrations/001_create_document_permissions.js +0 -91
- package/dist/src/migrations/001_create_document_permissions.js.map +0 -1
- package/dist/src/migrations/002_add_document_protection.d.ts +0 -4
- package/dist/src/migrations/002_add_document_protection.d.ts.map +0 -1
- package/dist/src/migrations/002_add_document_protection.js +0 -18
- package/dist/src/migrations/002_add_document_protection.js.map +0 -1
- package/dist/src/migrations/index.d.ts +0 -10
- package/dist/src/migrations/index.d.ts.map +0 -1
- package/dist/src/migrations/index.js +0 -58
- package/dist/src/migrations/index.js.map +0 -1
- package/dist/src/packages/http-loader.d.ts +0 -68
- package/dist/src/packages/http-loader.d.ts.map +0 -1
- package/dist/src/packages/http-loader.js +0 -176
- package/dist/src/packages/http-loader.js.map +0 -1
- package/dist/src/packages/import-loader.d.ts +0 -14
- package/dist/src/packages/import-loader.d.ts.map +0 -1
- package/dist/src/packages/import-loader.js +0 -46
- package/dist/src/packages/import-loader.js.map +0 -1
- package/dist/src/packages/import-resolver.d.ts +0 -5
- package/dist/src/packages/import-resolver.d.ts.map +0 -1
- package/dist/src/packages/import-resolver.js +0 -127
- package/dist/src/packages/import-resolver.js.map +0 -1
- package/dist/src/packages/package-manager.d.ts +0 -34
- package/dist/src/packages/package-manager.d.ts.map +0 -1
- package/dist/src/packages/package-manager.js +0 -213
- package/dist/src/packages/package-manager.js.map +0 -1
- package/dist/src/packages/types.d.ts +0 -38
- package/dist/src/packages/types.d.ts.map +0 -1
- package/dist/src/packages/types.js +0 -2
- package/dist/src/packages/types.js.map +0 -1
- package/dist/src/packages/util.d.ts +0 -27
- package/dist/src/packages/util.d.ts.map +0 -1
- package/dist/src/packages/util.js +0 -97
- package/dist/src/packages/util.js.map +0 -1
- package/dist/src/packages/vite-loader.d.ts +0 -24
- package/dist/src/packages/vite-loader.d.ts.map +0 -1
- package/dist/src/packages/vite-loader.js +0 -169
- package/dist/src/packages/vite-loader.js.map +0 -1
- package/dist/src/server.d.ts +0 -56
- package/dist/src/server.d.ts.map +0 -1
- package/dist/src/server.js +0 -365
- package/dist/src/server.js.map +0 -1
- package/dist/src/services/auth.service.d.ts +0 -56
- package/dist/src/services/auth.service.d.ts.map +0 -1
- package/dist/src/services/auth.service.js +0 -172
- package/dist/src/services/auth.service.js.map +0 -1
- package/dist/src/services/authorization.service.d.ts +0 -70
- package/dist/src/services/authorization.service.d.ts.map +0 -1
- package/dist/src/services/authorization.service.js +0 -155
- package/dist/src/services/authorization.service.js.map +0 -1
- package/dist/src/services/document-permission.service.d.ts +0 -241
- package/dist/src/services/document-permission.service.d.ts.map +0 -1
- package/dist/src/services/document-permission.service.js +0 -791
- package/dist/src/services/document-permission.service.js.map +0 -1
- package/dist/src/services/package-management.service.d.ts +0 -32
- package/dist/src/services/package-management.service.d.ts.map +0 -1
- package/dist/src/services/package-management.service.js +0 -95
- package/dist/src/services/package-management.service.js.map +0 -1
- package/dist/src/services/package-storage.d.ts +0 -23
- package/dist/src/services/package-storage.d.ts.map +0 -1
- package/dist/src/services/package-storage.js +0 -19
- package/dist/src/services/package-storage.js.map +0 -1
- package/dist/src/tracing.d.ts +0 -4
- package/dist/src/tracing.d.ts.map +0 -1
- package/dist/src/tracing.js +0 -140
- package/dist/src/tracing.js.map +0 -1
- package/dist/src/types.d.ts +0 -17
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/types.js +0 -2
- package/dist/src/types.js.map +0 -1
- package/dist/src/utils/auth.d.ts +0 -3
- package/dist/src/utils/auth.d.ts.map +0 -1
- package/dist/src/utils/auth.js +0 -12
- package/dist/src/utils/auth.js.map +0 -1
- package/dist/src/utils/create-schema.d.ts +0 -36
- package/dist/src/utils/create-schema.d.ts.map +0 -1
- package/dist/src/utils/create-schema.js +0 -725
- package/dist/src/utils/create-schema.js.map +0 -1
- package/dist/src/utils/db.d.ts +0 -82
- package/dist/src/utils/db.d.ts.map +0 -1
- package/dist/src/utils/db.js +0 -101
- package/dist/src/utils/db.js.map +0 -1
- package/dist/src/utils/drive-url.d.ts +0 -2
- package/dist/src/utils/drive-url.d.ts.map +0 -1
- package/dist/src/utils/drive-url.js +0 -3
- package/dist/src/utils/drive-url.js.map +0 -1
- package/dist/src/utils/index.d.ts +0 -4
- package/dist/src/utils/index.d.ts.map +0 -1
- package/dist/src/utils/index.js +0 -4
- package/dist/src/utils/index.js.map +0 -1
- package/dist/test/authorization.service.test.d.ts +0 -2
- package/dist/test/authorization.service.test.d.ts.map +0 -1
- package/dist/test/authorization.service.test.js +0 -252
- package/dist/test/authorization.service.test.js.map +0 -1
- package/dist/test/benchmarks/load.bench.d.ts +0 -2
- package/dist/test/benchmarks/load.bench.d.ts.map +0 -1
- package/dist/test/benchmarks/load.bench.js +0 -73
- package/dist/test/benchmarks/load.bench.js.map +0 -1
- package/dist/test/benchmarks/sync.bench.d.ts +0 -2
- package/dist/test/benchmarks/sync.bench.d.ts.map +0 -1
- package/dist/test/benchmarks/sync.bench.js +0 -119
- package/dist/test/benchmarks/sync.bench.js.map +0 -1
- package/dist/test/connect-switchboard-reshuffle-convergence.test.d.ts +0 -2
- package/dist/test/connect-switchboard-reshuffle-convergence.test.d.ts.map +0 -1
- package/dist/test/connect-switchboard-reshuffle-convergence.test.js +0 -203
- package/dist/test/connect-switchboard-reshuffle-convergence.test.js.map +0 -1
- package/dist/test/connect-switchboard-sync.test.d.ts +0 -2
- package/dist/test/connect-switchboard-sync.test.d.ts.map +0 -1
- package/dist/test/connect-switchboard-sync.test.js +0 -632
- package/dist/test/connect-switchboard-sync.test.js.map +0 -1
- package/dist/test/document-drive-subgraph.test.d.ts +0 -2
- package/dist/test/document-drive-subgraph.test.d.ts.map +0 -1
- package/dist/test/document-drive-subgraph.test.js +0 -249
- package/dist/test/document-drive-subgraph.test.js.map +0 -1
- package/dist/test/document-model-subgraph-permissions.test.d.ts +0 -2
- package/dist/test/document-model-subgraph-permissions.test.d.ts.map +0 -1
- package/dist/test/document-model-subgraph-permissions.test.js +0 -587
- package/dist/test/document-model-subgraph-permissions.test.js.map +0 -1
- package/dist/test/document-permission.service.test.d.ts +0 -2
- package/dist/test/document-permission.service.test.d.ts.map +0 -1
- package/dist/test/document-permission.service.test.js +0 -480
- package/dist/test/document-permission.service.test.js.map +0 -1
- package/dist/test/drive-info-endpoint.test.d.ts +0 -2
- package/dist/test/drive-info-endpoint.test.d.ts.map +0 -1
- package/dist/test/drive-info-endpoint.test.js +0 -123
- package/dist/test/drive-info-endpoint.test.js.map +0 -1
- package/dist/test/fault-injection-sync.test.d.ts +0 -2
- package/dist/test/fault-injection-sync.test.d.ts.map +0 -1
- package/dist/test/fault-injection-sync.test.js +0 -196
- package/dist/test/fault-injection-sync.test.js.map +0 -1
- package/dist/test/identity-integration.test.d.ts +0 -2
- package/dist/test/identity-integration.test.d.ts.map +0 -1
- package/dist/test/identity-integration.test.js +0 -349
- package/dist/test/identity-integration.test.js.map +0 -1
- package/dist/test/index.d.ts +0 -2
- package/dist/test/index.d.ts.map +0 -1
- package/dist/test/index.js +0 -2
- package/dist/test/index.js.map +0 -1
- package/dist/test/permissions-integration.test.d.ts +0 -2
- package/dist/test/permissions-integration.test.d.ts.map +0 -1
- package/dist/test/permissions-integration.test.js +0 -407
- package/dist/test/permissions-integration.test.js.map +0 -1
- package/dist/test/push-backfill.test.d.ts +0 -2
- package/dist/test/push-backfill.test.d.ts.map +0 -1
- package/dist/test/push-backfill.test.js +0 -298
- package/dist/test/push-backfill.test.js.map +0 -1
- package/dist/test/reactor-adapters.test.d.ts +0 -2
- package/dist/test/reactor-adapters.test.d.ts.map +0 -1
- package/dist/test/reactor-adapters.test.js +0 -379
- package/dist/test/reactor-adapters.test.js.map +0 -1
- package/dist/test/reactor-client.test.d.ts +0 -2
- package/dist/test/reactor-client.test.d.ts.map +0 -1
- package/dist/test/reactor-client.test.js +0 -371
- package/dist/test/reactor-client.test.js.map +0 -1
- package/dist/test/reactor-resolvers.test.d.ts +0 -2
- package/dist/test/reactor-resolvers.test.d.ts.map +0 -1
- package/dist/test/reactor-resolvers.test.js +0 -258
- package/dist/test/reactor-resolvers.test.js.map +0 -1
- package/dist/test/reactor-subgraph-permissions.test.d.ts +0 -2
- package/dist/test/reactor-subgraph-permissions.test.d.ts.map +0 -1
- package/dist/test/reactor-subgraph-permissions.test.js +0 -371
- package/dist/test/reactor-subgraph-permissions.test.js.map +0 -1
- package/dist/test/router.test.d.ts +0 -2
- package/dist/test/router.test.d.ts.map +0 -1
- package/dist/test/router.test.js +0 -38
- package/dist/test/router.test.js.map +0 -1
- package/dist/test/subscriptions-sse.test.d.ts +0 -2
- package/dist/test/subscriptions-sse.test.d.ts.map +0 -1
- package/dist/test/subscriptions-sse.test.js +0 -264
- package/dist/test/subscriptions-sse.test.js.map +0 -1
- package/dist/test/subscriptions.test.d.ts +0 -2
- package/dist/test/subscriptions.test.d.ts.map +0 -1
- package/dist/test/subscriptions.test.js +0 -248
- package/dist/test/subscriptions.test.js.map +0 -1
- package/dist/test/utils/gql-resolver-bridge.d.ts +0 -15
- package/dist/test/utils/gql-resolver-bridge.d.ts.map +0 -1
- package/dist/test/utils/gql-resolver-bridge.js +0 -89
- package/dist/test/utils/gql-resolver-bridge.js.map +0 -1
- package/dist/test/utils.d.ts +0 -10
- package/dist/test/utils.d.ts.map +0 -1
- package/dist/test/utils.js +0 -23
- package/dist/test/utils.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/vitest.config.d.ts +0 -3
- package/dist/vitest.config.d.ts.map +0 -1
- package/dist/vitest.config.js +0 -38
- package/dist/vitest.config.js.map +0 -1
package/dist/src/dev.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Development script for running reactor-api locally.
|
|
3
|
-
*
|
|
4
|
-
* Starts an HTTP server with the GraphQL endpoint using in-memory storage
|
|
5
|
-
* and PGlite for the read model (no external database required).
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* pnpm dev
|
|
9
|
-
*
|
|
10
|
-
* Environment variables:
|
|
11
|
-
* PORT - Server port (default: 4001)
|
|
12
|
-
* DB_PATH - PGlite database path (default: in-memory)
|
|
13
|
-
* LOG_LEVEL - Log level (default: info)
|
|
14
|
-
*/
|
|
15
|
-
import { ChannelScheme, EventBus, ReactorBuilder, ReactorClientBuilder, } from "@powerhousedao/reactor";
|
|
16
|
-
import { logger } from "document-drive";
|
|
17
|
-
import dotenv from "dotenv";
|
|
18
|
-
import { initializeAndStartAPI } from "./server.js";
|
|
19
|
-
dotenv.config();
|
|
20
|
-
const DEFAULT_PORT = 4001;
|
|
21
|
-
async function main() {
|
|
22
|
-
process.setMaxListeners(0);
|
|
23
|
-
const port = Number(process.env.PORT ?? DEFAULT_PORT);
|
|
24
|
-
const dbPath = process.env.DB_PATH; // undefined = in-memory PGlite
|
|
25
|
-
process.env.LOG_LEVEL = process.env.LOG_LEVEL || "info";
|
|
26
|
-
const initializeClient = async (documentModels) => {
|
|
27
|
-
const eventBus = new EventBus();
|
|
28
|
-
const builder = new ReactorBuilder()
|
|
29
|
-
.withEventBus(eventBus)
|
|
30
|
-
.withDocumentModels(documentModels)
|
|
31
|
-
.withChannelScheme(ChannelScheme.SWITCHBOARD);
|
|
32
|
-
return new ReactorClientBuilder().withReactorBuilder(builder).buildModule();
|
|
33
|
-
};
|
|
34
|
-
// Start the API
|
|
35
|
-
await initializeAndStartAPI(initializeClient, {
|
|
36
|
-
port,
|
|
37
|
-
dbPath,
|
|
38
|
-
mcp: true,
|
|
39
|
-
enableDocumentModelSubgraphs: true,
|
|
40
|
-
}, "switchboard");
|
|
41
|
-
logger.info(` Reactor API running:`);
|
|
42
|
-
logger.info(` GraphQL: http://localhost:${port}/graphql`);
|
|
43
|
-
logger.info(` Explorer: http://localhost:${port}/explorer`);
|
|
44
|
-
logger.info(` Health: http://localhost:${port}/health`);
|
|
45
|
-
logger.info(` MCP: http://localhost:${port}/mcp`);
|
|
46
|
-
}
|
|
47
|
-
main().catch((err) => {
|
|
48
|
-
console.error("Failed to start reactor-api dev server:", err);
|
|
49
|
-
process.exit(1);
|
|
50
|
-
});
|
|
51
|
-
//# sourceMappingURL=dev.js.map
|
package/dist/src/dev.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/dev.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,aAAa,EACb,QAAQ,EACR,cAAc,EACd,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAE3B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,YAAY,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,+BAA+B;IAEnE,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC;IAExD,MAAM,gBAAgB,GAAG,KAAK,EAAE,cAAqC,EAAE,EAAE;QACvE,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,IAAI,cAAc,EAAE;aACjC,YAAY,CAAC,QAAQ,CAAC;aACtB,kBAAkB,CAAC,cAAc,CAAC;aAClC,iBAAiB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAEhD,OAAO,IAAI,oBAAoB,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9E,CAAC,CAAC;IAEF,gBAAgB;IAChB,MAAM,qBAAqB,CACzB,gBAAgB,EAChB;QACE,IAAI;QACJ,MAAM;QACN,GAAG,EAAE,IAAI;QACT,4BAA4B,EAAE,IAAI;KACnC,EACD,aAAa,CACd,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,UAAU,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,WAAW,CAAC,CAAC;IACnE,MAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,SAAS,CAAC,CAAC;IACjE,MAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,MAAM,CAAC,CAAC;AAChE,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { GraphQLResolverMap } from "@apollo/subgraph/dist/schema-helper/resolverMap.js";
|
|
2
|
-
import type { IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
3
|
-
import { AnalyticsModel } from "@powerhousedao/analytics-engine-graphql";
|
|
4
|
-
import type { Context, SubgraphArgs } from "@powerhousedao/reactor-api";
|
|
5
|
-
import { BaseSubgraph } from "./base-subgraph.js";
|
|
6
|
-
export declare class AnalyticsSubgraph extends BaseSubgraph {
|
|
7
|
-
analyticsStore: IAnalyticsStore;
|
|
8
|
-
analyticsModel: AnalyticsModel;
|
|
9
|
-
name: string;
|
|
10
|
-
typeDefs: import("graphql").DocumentNode;
|
|
11
|
-
resolvers: GraphQLResolverMap<Context>;
|
|
12
|
-
constructor(args: SubgraphArgs);
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=analytics-subgraph.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analytics-subgraph.d.ts","sourceRoot":"","sources":["../../../src/graphql/analytics-subgraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAC7F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAE5E,OAAO,EACL,cAAc,EAGf,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,cAAc,EAAE,eAAe,CAAC;IAChC,cAAc,EAAE,cAAc,CAAC;IAE/B,IAAI,SAAe;IACnB,QAAQ,iCAEN;IAEF,SAAS,EAAyB,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBAElD,IAAI,EAAE,YAAY;CAgB/B"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { AnalyticsQueryEngine } from "@powerhousedao/analytics-engine-core";
|
|
2
|
-
import { AnalyticsModel, AnalyticsResolvers, typedefs, } from "@powerhousedao/analytics-engine-graphql";
|
|
3
|
-
import { gql } from "graphql-tag";
|
|
4
|
-
import { BaseSubgraph } from "./base-subgraph.js";
|
|
5
|
-
export class AnalyticsSubgraph extends BaseSubgraph {
|
|
6
|
-
analyticsStore;
|
|
7
|
-
analyticsModel;
|
|
8
|
-
name = "analytics";
|
|
9
|
-
typeDefs = gql `
|
|
10
|
-
${typedefs}
|
|
11
|
-
`;
|
|
12
|
-
resolvers = AnalyticsResolvers;
|
|
13
|
-
constructor(args) {
|
|
14
|
-
super(args);
|
|
15
|
-
this.analyticsStore = args.analyticsStore;
|
|
16
|
-
this.analyticsModel = new AnalyticsModel(new AnalyticsQueryEngine(this.analyticsStore));
|
|
17
|
-
args.graphqlManager.setAdditionalContextFields({
|
|
18
|
-
dataSources: {
|
|
19
|
-
db: {
|
|
20
|
-
Analytics: this.analyticsModel,
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=analytics-subgraph.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analytics-subgraph.js","sourceRoot":"","sources":["../../../src/graphql/analytics-subgraph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,QAAQ,GACT,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IACjD,cAAc,CAAkB;IAChC,cAAc,CAAiB;IAE/B,IAAI,GAAG,WAAW,CAAC;IACnB,QAAQ,GAAG,GAAG,CAAA;MACV,QAAQ;GACX,CAAC;IAEF,SAAS,GAAG,kBAAiD,CAAC;IAE9D,YAAY,IAAkB;QAC5B,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAE1C,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CACtC,IAAI,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,CAC9C,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,0BAA0B,CAAC;YAC7C,WAAW,EAAE;gBACX,EAAE,EAAE;oBACF,SAAS,EAAE,IAAI,CAAC,cAAc;iBAC/B;aACF;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/graphql/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/graphql/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
import type { AuthorizationService } from "../../services/authorization.service.js";
|
|
2
|
-
import type { DocumentPermissionService, GetParentIdsFn } from "../../services/document-permission.service.js";
|
|
3
|
-
import type { DocumentPermissionLevel } from "../../utils/db.js";
|
|
4
|
-
import type { IReactorClient } from "@powerhousedao/reactor";
|
|
5
|
-
export type DocumentAccessInfo = {
|
|
6
|
-
documentId: string;
|
|
7
|
-
permissions: Array<{
|
|
8
|
-
documentId: string;
|
|
9
|
-
userAddress: string;
|
|
10
|
-
permission: DocumentPermissionLevel;
|
|
11
|
-
grantedBy: string;
|
|
12
|
-
createdAt: Date;
|
|
13
|
-
updatedAt: Date;
|
|
14
|
-
}>;
|
|
15
|
-
groupPermissions: Array<{
|
|
16
|
-
documentId: string;
|
|
17
|
-
groupId: number;
|
|
18
|
-
permission: DocumentPermissionLevel;
|
|
19
|
-
grantedBy: string;
|
|
20
|
-
createdAt: Date;
|
|
21
|
-
updatedAt: Date;
|
|
22
|
-
}>;
|
|
23
|
-
};
|
|
24
|
-
export declare function documentAccess(service: DocumentPermissionService, args: {
|
|
25
|
-
documentId: string;
|
|
26
|
-
}): Promise<DocumentAccessInfo>;
|
|
27
|
-
export declare function userDocumentPermissions(service: DocumentPermissionService, userAddress: string): Promise<Array<{
|
|
28
|
-
documentId: string;
|
|
29
|
-
userAddress: string;
|
|
30
|
-
permission: DocumentPermissionLevel;
|
|
31
|
-
grantedBy: string;
|
|
32
|
-
createdAt: Date;
|
|
33
|
-
updatedAt: Date;
|
|
34
|
-
}>>;
|
|
35
|
-
export declare function grantDocumentPermission(service: DocumentPermissionService, args: {
|
|
36
|
-
documentId: string;
|
|
37
|
-
userAddress: string;
|
|
38
|
-
permission: DocumentPermissionLevel;
|
|
39
|
-
}, grantedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<{
|
|
40
|
-
documentId: string;
|
|
41
|
-
userAddress: string;
|
|
42
|
-
permission: DocumentPermissionLevel;
|
|
43
|
-
grantedBy: string;
|
|
44
|
-
createdAt: Date;
|
|
45
|
-
updatedAt: Date;
|
|
46
|
-
}>;
|
|
47
|
-
export declare function revokeDocumentPermission(service: DocumentPermissionService, args: {
|
|
48
|
-
documentId: string;
|
|
49
|
-
userAddress: string;
|
|
50
|
-
}, revokedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<boolean>;
|
|
51
|
-
/**
|
|
52
|
-
* Create a getParentIds function using the reactor client
|
|
53
|
-
*/
|
|
54
|
-
export declare function createGetParentIdsFn(reactorClient: IReactorClient): GetParentIdsFn;
|
|
55
|
-
export type Group = {
|
|
56
|
-
id: number;
|
|
57
|
-
name: string;
|
|
58
|
-
description: string | null;
|
|
59
|
-
createdAt: Date;
|
|
60
|
-
updatedAt: Date;
|
|
61
|
-
};
|
|
62
|
-
export declare function groups(service: DocumentPermissionService): Promise<Group[]>;
|
|
63
|
-
export declare function group(service: DocumentPermissionService, args: {
|
|
64
|
-
id: number;
|
|
65
|
-
}): Promise<Group | null>;
|
|
66
|
-
export declare function userGroups(service: DocumentPermissionService, args: {
|
|
67
|
-
userAddress: string;
|
|
68
|
-
}): Promise<Group[]>;
|
|
69
|
-
export declare function createGroup(service: DocumentPermissionService, args: {
|
|
70
|
-
name: string;
|
|
71
|
-
description?: string | null;
|
|
72
|
-
}): Promise<Group>;
|
|
73
|
-
export declare function deleteGroup(service: DocumentPermissionService, args: {
|
|
74
|
-
id: number;
|
|
75
|
-
}): Promise<boolean>;
|
|
76
|
-
export declare function addUserToGroup(service: DocumentPermissionService, args: {
|
|
77
|
-
userAddress: string;
|
|
78
|
-
groupId: number;
|
|
79
|
-
}): Promise<boolean>;
|
|
80
|
-
export declare function removeUserFromGroup(service: DocumentPermissionService, args: {
|
|
81
|
-
userAddress: string;
|
|
82
|
-
groupId: number;
|
|
83
|
-
}): Promise<boolean>;
|
|
84
|
-
export declare function getGroupMembers(service: DocumentPermissionService, groupId: number): Promise<string[]>;
|
|
85
|
-
export type DocumentGroupPermission = {
|
|
86
|
-
documentId: string;
|
|
87
|
-
groupId: number;
|
|
88
|
-
permission: DocumentPermissionLevel;
|
|
89
|
-
grantedBy: string;
|
|
90
|
-
createdAt: Date;
|
|
91
|
-
updatedAt: Date;
|
|
92
|
-
};
|
|
93
|
-
export declare function grantGroupPermission(service: DocumentPermissionService, args: {
|
|
94
|
-
documentId: string;
|
|
95
|
-
groupId: number;
|
|
96
|
-
permission: DocumentPermissionLevel;
|
|
97
|
-
}, grantedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<DocumentGroupPermission>;
|
|
98
|
-
export declare function revokeGroupPermission(service: DocumentPermissionService, args: {
|
|
99
|
-
documentId: string;
|
|
100
|
-
groupId: number;
|
|
101
|
-
}, revokedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<boolean>;
|
|
102
|
-
export type OperationUserPermission = {
|
|
103
|
-
documentId: string;
|
|
104
|
-
operationType: string;
|
|
105
|
-
userAddress: string;
|
|
106
|
-
grantedBy: string;
|
|
107
|
-
createdAt: Date;
|
|
108
|
-
};
|
|
109
|
-
export type OperationGroupPermission = {
|
|
110
|
-
documentId: string;
|
|
111
|
-
operationType: string;
|
|
112
|
-
groupId: number;
|
|
113
|
-
grantedBy: string;
|
|
114
|
-
createdAt: Date;
|
|
115
|
-
};
|
|
116
|
-
export type OperationPermissionsInfo = {
|
|
117
|
-
documentId: string;
|
|
118
|
-
operationType: string;
|
|
119
|
-
userPermissions: OperationUserPermission[];
|
|
120
|
-
groupPermissions: OperationGroupPermission[];
|
|
121
|
-
};
|
|
122
|
-
export declare function operationPermissions(service: DocumentPermissionService, args: {
|
|
123
|
-
documentId: string;
|
|
124
|
-
operationType: string;
|
|
125
|
-
}): Promise<OperationPermissionsInfo>;
|
|
126
|
-
export declare function canExecuteOperation(service: DocumentPermissionService, args: {
|
|
127
|
-
documentId: string;
|
|
128
|
-
operationType: string;
|
|
129
|
-
}, userAddress: string | undefined): Promise<boolean>;
|
|
130
|
-
export declare function grantOperationPermission(service: DocumentPermissionService, args: {
|
|
131
|
-
documentId: string;
|
|
132
|
-
operationType: string;
|
|
133
|
-
userAddress: string;
|
|
134
|
-
}, grantedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<OperationUserPermission>;
|
|
135
|
-
export declare function revokeOperationPermission(service: DocumentPermissionService, args: {
|
|
136
|
-
documentId: string;
|
|
137
|
-
operationType: string;
|
|
138
|
-
userAddress: string;
|
|
139
|
-
}, revokedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<boolean>;
|
|
140
|
-
export declare function grantGroupOperationPermission(service: DocumentPermissionService, args: {
|
|
141
|
-
documentId: string;
|
|
142
|
-
operationType: string;
|
|
143
|
-
groupId: number;
|
|
144
|
-
}, grantedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<OperationGroupPermission>;
|
|
145
|
-
export declare function revokeGroupOperationPermission(service: DocumentPermissionService, args: {
|
|
146
|
-
documentId: string;
|
|
147
|
-
operationType: string;
|
|
148
|
-
groupId: number;
|
|
149
|
-
}, revokedByAddress: string | undefined, isGlobalAdmin: boolean): Promise<boolean>;
|
|
150
|
-
export type DocumentProtectionInfo = {
|
|
151
|
-
documentId: string;
|
|
152
|
-
protected: boolean;
|
|
153
|
-
ownerAddress: string | null;
|
|
154
|
-
};
|
|
155
|
-
export declare function documentProtection(service: DocumentPermissionService, args: {
|
|
156
|
-
documentId: string;
|
|
157
|
-
}): Promise<DocumentProtectionInfo>;
|
|
158
|
-
export declare function setDocumentProtection(service: DocumentPermissionService, authorizationService: AuthorizationService | undefined, args: {
|
|
159
|
-
documentId: string;
|
|
160
|
-
protected: boolean;
|
|
161
|
-
}, userAddress: string | undefined, isGlobalAdmin: boolean): Promise<DocumentProtectionInfo>;
|
|
162
|
-
export declare function transferDocumentOwnership(service: DocumentPermissionService, authorizationService: AuthorizationService | undefined, args: {
|
|
163
|
-
documentId: string;
|
|
164
|
-
newOwnerAddress: string;
|
|
165
|
-
}, userAddress: string | undefined, isGlobalAdmin: boolean): Promise<DocumentProtectionInfo>;
|
|
166
|
-
//# sourceMappingURL=resolvers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolvers.d.ts","sourceRoot":"","sources":["../../../../src/graphql/auth/resolvers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,KAAK,EACV,yBAAyB,EACzB,cAAc,EACf,MAAM,+CAA+C,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAM7D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,KAAK,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,uBAAuB,CAAC;QACpC,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,IAAI,CAAC;QAChB,SAAS,EAAE,IAAI,CAAC;KACjB,CAAC,CAAC;IACH,gBAAgB,EAAE,KAAK,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,uBAAuB,CAAC;QACpC,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,IAAI,CAAC;QAChB,SAAS,EAAE,IAAI,CAAC;KACjB,CAAC,CAAC;CACJ,CAAC;AAEF,wBAAsB,cAAc,CAClC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CAW7B;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,yBAAyB,EAClC,WAAW,EAAE,MAAM,GAClB,OAAO,CACR,KAAK,CAAC;IACJ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,uBAAuB,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC,CACH,CAEA;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IACJ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,uBAAuB,CAAC;CACrC,EACD,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC;IACT,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,uBAAuB,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC,CAwBD;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EACjD,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,OAAO,CAAC,CAoBlB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,cAAc,GAC5B,cAAc,CAUhB;AAMD,MAAM,MAAM,KAAK,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,wBAAsB,MAAM,CAC1B,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,KAAK,EAAE,CAAC,CAElB;AAED,wBAAsB,KAAK,CACzB,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GACnB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAEvB;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAC5B,OAAO,CAAC,KAAK,EAAE,CAAC,CAElB;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAClD,OAAO,CAAC,KAAK,CAAC,CAEhB;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GACnB,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC7C,OAAO,CAAC,OAAO,CAAC,CAGlB;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,yBAAyB,EAClC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,EAAE,CAAC,CAEnB;AAMD,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,uBAAuB,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IACJ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,uBAAuB,CAAC;CACrC,EACD,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,uBAAuB,CAAC,CAwBlC;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAC7C,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,OAAO,CAAC,CAoBlB;AAMD,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,uBAAuB,EAAE,CAAC;IAC3C,gBAAgB,EAAE,wBAAwB,EAAE,CAAC;CAC9C,CAAC;AAEF,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAClD,OAAO,CAAC,wBAAwB,CAAC,CAgBnC;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,EACnD,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EACxE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,uBAAuB,CAAC,CAuBlC;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,EACxE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,OAAO,CAAC,CAuBlB;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EACpE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,wBAAwB,CAAC,CAuBnC;AAED,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EACpE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,OAAO,CAAC,CAuBlB;AAMD,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CAEjC;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,yBAAyB,EAClC,oBAAoB,EAAE,oBAAoB,GAAG,SAAS,EACtD,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,EAChD,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,sBAAsB,CAAC,CAgCjC;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,yBAAyB,EAClC,oBAAoB,EAAE,oBAAoB,GAAG,SAAS,EACtD,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,EACrD,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,sBAAsB,CAAC,CA+CjC"}
|
|
@@ -1,227 +0,0 @@
|
|
|
1
|
-
import { GraphQLError } from "graphql";
|
|
2
|
-
export async function documentAccess(service, args) {
|
|
3
|
-
const permissions = await service.getDocumentPermissions(args.documentId);
|
|
4
|
-
const groupPermissions = await service.getDocumentGroupPermissions(args.documentId);
|
|
5
|
-
return {
|
|
6
|
-
documentId: args.documentId,
|
|
7
|
-
permissions,
|
|
8
|
-
groupPermissions,
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
export async function userDocumentPermissions(service, userAddress) {
|
|
12
|
-
return service.getUserDocuments(userAddress);
|
|
13
|
-
}
|
|
14
|
-
export async function grantDocumentPermission(service, args, grantedByAddress, isGlobalAdmin) {
|
|
15
|
-
// Check authorization: must be global admin or document admin
|
|
16
|
-
if (!grantedByAddress) {
|
|
17
|
-
throw new GraphQLError("Authentication required");
|
|
18
|
-
}
|
|
19
|
-
if (!isGlobalAdmin) {
|
|
20
|
-
const canManage = await service.canManageDocument(args.documentId, grantedByAddress);
|
|
21
|
-
if (!canManage) {
|
|
22
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to grant permissions");
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return service.grantPermission(args.documentId, args.userAddress, args.permission, grantedByAddress);
|
|
26
|
-
}
|
|
27
|
-
export async function revokeDocumentPermission(service, args, revokedByAddress, isGlobalAdmin) {
|
|
28
|
-
// Check authorization: must be global admin or document admin
|
|
29
|
-
if (!revokedByAddress) {
|
|
30
|
-
throw new GraphQLError("Authentication required");
|
|
31
|
-
}
|
|
32
|
-
if (!isGlobalAdmin) {
|
|
33
|
-
const canManage = await service.canManageDocument(args.documentId, revokedByAddress);
|
|
34
|
-
if (!canManage) {
|
|
35
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to revoke permissions");
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
await service.revokePermission(args.documentId, args.userAddress);
|
|
39
|
-
return true;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Create a getParentIds function using the reactor client
|
|
43
|
-
*/
|
|
44
|
-
export function createGetParentIdsFn(reactorClient) {
|
|
45
|
-
return async (documentId) => {
|
|
46
|
-
try {
|
|
47
|
-
const result = await reactorClient.getParents(documentId);
|
|
48
|
-
return result.results.map((doc) => doc.header.id);
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
// If document has no parents or error, return empty array
|
|
52
|
-
return [];
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
export async function groups(service) {
|
|
57
|
-
return service.listGroups();
|
|
58
|
-
}
|
|
59
|
-
export async function group(service, args) {
|
|
60
|
-
return service.getGroup(args.id);
|
|
61
|
-
}
|
|
62
|
-
export async function userGroups(service, args) {
|
|
63
|
-
return service.getUserGroups(args.userAddress);
|
|
64
|
-
}
|
|
65
|
-
export async function createGroup(service, args) {
|
|
66
|
-
return service.createGroup(args.name, args.description ?? undefined);
|
|
67
|
-
}
|
|
68
|
-
export async function deleteGroup(service, args) {
|
|
69
|
-
await service.deleteGroup(args.id);
|
|
70
|
-
return true;
|
|
71
|
-
}
|
|
72
|
-
export async function addUserToGroup(service, args) {
|
|
73
|
-
await service.addUserToGroup(args.userAddress, args.groupId);
|
|
74
|
-
return true;
|
|
75
|
-
}
|
|
76
|
-
export async function removeUserFromGroup(service, args) {
|
|
77
|
-
await service.removeUserFromGroup(args.userAddress, args.groupId);
|
|
78
|
-
return true;
|
|
79
|
-
}
|
|
80
|
-
export async function getGroupMembers(service, groupId) {
|
|
81
|
-
return service.getGroupMembers(groupId);
|
|
82
|
-
}
|
|
83
|
-
export async function grantGroupPermission(service, args, grantedByAddress, isGlobalAdmin) {
|
|
84
|
-
// Check authorization: must be global admin or document admin
|
|
85
|
-
if (!grantedByAddress) {
|
|
86
|
-
throw new GraphQLError("Authentication required");
|
|
87
|
-
}
|
|
88
|
-
if (!isGlobalAdmin) {
|
|
89
|
-
const canManage = await service.canManageDocument(args.documentId, grantedByAddress);
|
|
90
|
-
if (!canManage) {
|
|
91
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to grant permissions");
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return service.grantGroupPermission(args.documentId, args.groupId, args.permission, grantedByAddress);
|
|
95
|
-
}
|
|
96
|
-
export async function revokeGroupPermission(service, args, revokedByAddress, isGlobalAdmin) {
|
|
97
|
-
// Check authorization: must be global admin or document admin
|
|
98
|
-
if (!revokedByAddress) {
|
|
99
|
-
throw new GraphQLError("Authentication required");
|
|
100
|
-
}
|
|
101
|
-
if (!isGlobalAdmin) {
|
|
102
|
-
const canManage = await service.canManageDocument(args.documentId, revokedByAddress);
|
|
103
|
-
if (!canManage) {
|
|
104
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to revoke permissions");
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
await service.revokeGroupPermission(args.documentId, args.groupId);
|
|
108
|
-
return true;
|
|
109
|
-
}
|
|
110
|
-
export async function operationPermissions(service, args) {
|
|
111
|
-
const userPermissions = await service.getOperationUserPermissions(args.documentId, args.operationType);
|
|
112
|
-
const groupPermissions = await service.getOperationGroupPermissions(args.documentId, args.operationType);
|
|
113
|
-
return {
|
|
114
|
-
documentId: args.documentId,
|
|
115
|
-
operationType: args.operationType,
|
|
116
|
-
userPermissions,
|
|
117
|
-
groupPermissions,
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
export async function canExecuteOperation(service, args, userAddress) {
|
|
121
|
-
return service.canExecuteOperation(args.documentId, args.operationType, userAddress);
|
|
122
|
-
}
|
|
123
|
-
export async function grantOperationPermission(service, args, grantedByAddress, isGlobalAdmin) {
|
|
124
|
-
if (!grantedByAddress) {
|
|
125
|
-
throw new GraphQLError("Authentication required");
|
|
126
|
-
}
|
|
127
|
-
if (!isGlobalAdmin) {
|
|
128
|
-
const canManage = await service.canManageDocument(args.documentId, grantedByAddress);
|
|
129
|
-
if (!canManage) {
|
|
130
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to grant operation permissions");
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
return service.grantOperationPermission(args.documentId, args.operationType, args.userAddress, grantedByAddress);
|
|
134
|
-
}
|
|
135
|
-
export async function revokeOperationPermission(service, args, revokedByAddress, isGlobalAdmin) {
|
|
136
|
-
if (!revokedByAddress) {
|
|
137
|
-
throw new GraphQLError("Authentication required");
|
|
138
|
-
}
|
|
139
|
-
if (!isGlobalAdmin) {
|
|
140
|
-
const canManage = await service.canManageDocument(args.documentId, revokedByAddress);
|
|
141
|
-
if (!canManage) {
|
|
142
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to revoke operation permissions");
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
await service.revokeOperationPermission(args.documentId, args.operationType, args.userAddress);
|
|
146
|
-
return true;
|
|
147
|
-
}
|
|
148
|
-
export async function grantGroupOperationPermission(service, args, grantedByAddress, isGlobalAdmin) {
|
|
149
|
-
if (!grantedByAddress) {
|
|
150
|
-
throw new GraphQLError("Authentication required");
|
|
151
|
-
}
|
|
152
|
-
if (!isGlobalAdmin) {
|
|
153
|
-
const canManage = await service.canManageDocument(args.documentId, grantedByAddress);
|
|
154
|
-
if (!canManage) {
|
|
155
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to grant operation permissions");
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
return service.grantGroupOperationPermission(args.documentId, args.operationType, args.groupId, grantedByAddress);
|
|
159
|
-
}
|
|
160
|
-
export async function revokeGroupOperationPermission(service, args, revokedByAddress, isGlobalAdmin) {
|
|
161
|
-
if (!revokedByAddress) {
|
|
162
|
-
throw new GraphQLError("Authentication required");
|
|
163
|
-
}
|
|
164
|
-
if (!isGlobalAdmin) {
|
|
165
|
-
const canManage = await service.canManageDocument(args.documentId, revokedByAddress);
|
|
166
|
-
if (!canManage) {
|
|
167
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to revoke operation permissions");
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
await service.revokeGroupOperationPermission(args.documentId, args.operationType, args.groupId);
|
|
171
|
-
return true;
|
|
172
|
-
}
|
|
173
|
-
export async function documentProtection(service, args) {
|
|
174
|
-
return service.getDocumentProtection(args.documentId);
|
|
175
|
-
}
|
|
176
|
-
export async function setDocumentProtection(service, authorizationService, args, userAddress, isGlobalAdmin) {
|
|
177
|
-
if (!userAddress) {
|
|
178
|
-
throw new GraphQLError("Authentication required");
|
|
179
|
-
}
|
|
180
|
-
// Check manage permission
|
|
181
|
-
if (!isGlobalAdmin) {
|
|
182
|
-
if (authorizationService) {
|
|
183
|
-
const canManage = await authorizationService.canManage(args.documentId, userAddress);
|
|
184
|
-
if (!canManage) {
|
|
185
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to change protection");
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
else {
|
|
189
|
-
const canManage = await service.canManageDocument(args.documentId, userAddress);
|
|
190
|
-
if (!canManage) {
|
|
191
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to change protection");
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
await service.setDocumentProtection(args.documentId, args.protected);
|
|
196
|
-
return service.getDocumentProtection(args.documentId);
|
|
197
|
-
}
|
|
198
|
-
export async function transferDocumentOwnership(service, authorizationService, args, userAddress, isGlobalAdmin) {
|
|
199
|
-
if (!userAddress) {
|
|
200
|
-
throw new GraphQLError("Authentication required");
|
|
201
|
-
}
|
|
202
|
-
// Check manage permission
|
|
203
|
-
if (!isGlobalAdmin) {
|
|
204
|
-
if (authorizationService) {
|
|
205
|
-
const canManage = await authorizationService.canManage(args.documentId, userAddress);
|
|
206
|
-
if (!canManage) {
|
|
207
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to transfer ownership");
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
else {
|
|
211
|
-
const canManage = await service.canManageDocument(args.documentId, userAddress);
|
|
212
|
-
if (!canManage) {
|
|
213
|
-
throw new GraphQLError("Forbidden: You must be an admin of this document to transfer ownership");
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
// Revoke old owner's explicit ADMIN grant before transferring
|
|
218
|
-
const previousOwner = await service.getDocumentOwner(args.documentId);
|
|
219
|
-
if (previousOwner) {
|
|
220
|
-
await service.revokePermission(args.documentId, previousOwner);
|
|
221
|
-
}
|
|
222
|
-
await service.setDocumentOwner(args.documentId, args.newOwnerAddress);
|
|
223
|
-
// Grant ADMIN to new owner
|
|
224
|
-
await service.grantPermission(args.documentId, args.newOwnerAddress, "ADMIN", userAddress);
|
|
225
|
-
return service.getDocumentProtection(args.documentId);
|
|
226
|
-
}
|
|
227
|
-
//# sourceMappingURL=resolvers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolvers.js","sourceRoot":"","sources":["../../../../src/graphql/auth/resolvers.ts"],"names":[],"mappings":"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"}
|