@powerhousedao/reactor-api 6.0.0-dev.11 → 6.0.0-dev.110
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/codegen.js +1 -1
- package/dist/codegen.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/src/config.d.ts +1 -2
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +1 -5
- package/dist/src/config.js.map +1 -1
- package/dist/src/dev.d.ts +2 -0
- package/dist/src/dev.d.ts.map +1 -0
- package/dist/src/dev.js +51 -0
- package/dist/src/dev.js.map +1 -0
- package/dist/src/graphql/auth/resolvers.d.ts +17 -0
- package/dist/src/graphql/auth/resolvers.d.ts.map +1 -1
- package/dist/src/graphql/auth/resolvers.js +54 -0
- package/dist/src/graphql/auth/resolvers.js.map +1 -1
- package/dist/src/graphql/auth/schema.graphql +27 -5
- package/dist/src/graphql/auth/subgraph.d.ts +25 -0
- package/dist/src/graphql/auth/subgraph.d.ts.map +1 -1
- package/dist/src/graphql/auth/subgraph.js +46 -2
- package/dist/src/graphql/auth/subgraph.js.map +1 -1
- package/dist/src/graphql/base-subgraph.d.ts +11 -4
- package/dist/src/graphql/base-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/base-subgraph.js +94 -2
- package/dist/src/graphql/base-subgraph.js.map +1 -1
- package/dist/src/graphql/document-model-subgraph.d.ts +104 -45
- package/dist/src/graphql/document-model-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/document-model-subgraph.js +323 -91
- package/dist/src/graphql/document-model-subgraph.js.map +1 -1
- package/dist/src/graphql/gateway/adapter-gateway-apollo.d.ts +23 -0
- package/dist/src/graphql/gateway/adapter-gateway-apollo.d.ts.map +1 -0
- package/dist/src/graphql/gateway/adapter-gateway-apollo.js +156 -0
- package/dist/src/graphql/gateway/adapter-gateway-apollo.js.map +1 -0
- package/dist/src/graphql/gateway/adapter-http-express.d.ts +23 -0
- package/dist/src/graphql/gateway/adapter-http-express.d.ts.map +1 -0
- package/dist/src/graphql/gateway/adapter-http-express.js +155 -0
- package/dist/src/graphql/gateway/adapter-http-express.js.map +1 -0
- package/dist/src/graphql/gateway/auth-middleware.d.ts +7 -0
- package/dist/src/graphql/gateway/auth-middleware.d.ts.map +1 -0
- package/dist/src/graphql/gateway/auth-middleware.js +15 -0
- package/dist/src/graphql/gateway/auth-middleware.js.map +1 -0
- package/dist/src/graphql/gateway/factory.d.ts +11 -0
- package/dist/src/graphql/gateway/factory.d.ts.map +1 -0
- package/dist/src/graphql/gateway/factory.js +15 -0
- package/dist/src/graphql/gateway/factory.js.map +1 -0
- package/dist/src/graphql/gateway/types.d.ts +84 -0
- package/dist/src/graphql/gateway/types.d.ts.map +1 -0
- package/dist/src/{sync → graphql/gateway}/types.js.map +1 -1
- package/dist/src/graphql/graphql-manager.d.ts +31 -12
- package/dist/src/graphql/graphql-manager.d.ts.map +1 -1
- package/dist/src/graphql/graphql-manager.js +284 -228
- package/dist/src/graphql/graphql-manager.js.map +1 -1
- package/dist/src/graphql/index.d.ts +5 -1
- package/dist/src/graphql/index.d.ts.map +1 -1
- package/dist/src/graphql/index.js +5 -1
- package/dist/src/graphql/index.js.map +1 -1
- package/dist/src/graphql/packages/index.d.ts +2 -0
- package/dist/src/graphql/packages/index.d.ts.map +1 -0
- package/dist/src/graphql/packages/index.js +2 -0
- package/dist/src/graphql/packages/index.js.map +1 -0
- package/dist/src/graphql/packages/resolvers.d.ts +31 -0
- package/dist/src/graphql/packages/resolvers.d.ts.map +1 -0
- package/dist/src/graphql/packages/resolvers.js +37 -0
- package/dist/src/graphql/packages/resolvers.js.map +1 -0
- package/dist/src/graphql/packages/schema.graphql +50 -0
- package/dist/src/graphql/packages/subgraph.d.ts +55 -0
- package/dist/src/graphql/packages/subgraph.d.ts.map +1 -0
- package/dist/src/graphql/packages/subgraph.js +73 -0
- package/dist/src/graphql/packages/subgraph.js.map +1 -0
- package/dist/src/graphql/playground.d.ts.map +1 -1
- package/dist/src/graphql/playground.js +19 -12
- package/dist/src/graphql/playground.js.map +1 -1
- package/dist/src/graphql/reactor/adapters.d.ts +10 -2
- package/dist/src/graphql/reactor/adapters.d.ts.map +1 -1
- package/dist/src/graphql/reactor/adapters.js +36 -1
- package/dist/src/graphql/reactor/adapters.js.map +1 -1
- package/dist/src/graphql/reactor/factory.d.ts +22 -1
- package/dist/src/graphql/reactor/factory.d.ts.map +1 -1
- package/dist/src/graphql/reactor/factory.js +1 -1
- package/dist/src/graphql/reactor/factory.js.map +1 -1
- package/dist/src/graphql/reactor/gen/graphql.d.ts +355 -76
- package/dist/src/graphql/reactor/gen/graphql.d.ts.map +1 -1
- package/dist/src/graphql/reactor/gen/graphql.js +245 -10
- package/dist/src/graphql/reactor/gen/graphql.js.map +1 -1
- package/dist/src/graphql/reactor/index.d.ts +1 -1
- package/dist/src/graphql/reactor/index.d.ts.map +1 -1
- package/dist/src/graphql/reactor/index.js +1 -1
- package/dist/src/graphql/reactor/index.js.map +1 -1
- package/dist/src/graphql/reactor/operations.graphql +191 -1
- package/dist/src/graphql/reactor/requester.with-zod.d.ts.map +1 -1
- package/dist/src/graphql/reactor/requester.with-zod.js +114 -38
- package/dist/src/graphql/reactor/requester.with-zod.js.map +1 -1
- package/dist/src/graphql/reactor/resolvers.d.ts +90 -26
- package/dist/src/graphql/reactor/resolvers.d.ts.map +1 -1
- package/dist/src/graphql/reactor/resolvers.js +275 -77
- package/dist/src/graphql/reactor/resolvers.js.map +1 -1
- package/dist/src/graphql/reactor/schema.graphql +76 -30
- package/dist/src/graphql/reactor/subgraph.d.ts +2 -31
- package/dist/src/graphql/reactor/subgraph.d.ts.map +1 -1
- package/dist/src/graphql/reactor/subgraph.js +133 -210
- package/dist/src/graphql/reactor/subgraph.js.map +1 -1
- package/dist/src/graphql/reactor/validation.d.ts +266 -20
- package/dist/src/graphql/reactor/validation.d.ts.map +1 -1
- package/dist/src/graphql/reactor/validation.js +98 -4
- package/dist/src/graphql/reactor/validation.js.map +1 -1
- package/dist/src/graphql/sse.d.ts +42 -0
- package/dist/src/graphql/sse.d.ts.map +1 -0
- package/dist/src/graphql/sse.js +33 -0
- package/dist/src/graphql/sse.js.map +1 -0
- package/dist/src/graphql/system/index.d.ts +0 -1
- package/dist/src/graphql/system/index.d.ts.map +1 -1
- package/dist/src/graphql/system/index.js +0 -1
- package/dist/src/graphql/system/index.js.map +1 -1
- package/dist/src/graphql/types.d.ts +7 -8
- package/dist/src/graphql/types.d.ts.map +1 -1
- package/dist/src/graphql/utils.d.ts +3 -20
- package/dist/src/graphql/utils.d.ts.map +1 -1
- package/dist/src/graphql/utils.js +7 -35
- package/dist/src/graphql/utils.js.map +1 -1
- package/dist/src/migrations/002_add_document_protection.d.ts +4 -0
- package/dist/src/migrations/002_add_document_protection.d.ts.map +1 -0
- package/dist/src/migrations/002_add_document_protection.js +18 -0
- package/dist/src/migrations/002_add_document_protection.js.map +1 -0
- package/dist/src/migrations/index.d.ts.map +1 -1
- package/dist/src/migrations/index.js +2 -0
- package/dist/src/migrations/index.js.map +1 -1
- package/dist/src/packages/http-loader.d.ts +68 -0
- package/dist/src/packages/http-loader.d.ts.map +1 -0
- package/dist/src/packages/http-loader.js +176 -0
- package/dist/src/packages/http-loader.js.map +1 -0
- package/dist/src/packages/https-hooks.d.mts +37 -0
- package/dist/src/packages/https-hooks.d.mts.map +1 -0
- package/dist/src/packages/https-hooks.mjs +88 -0
- package/dist/src/packages/https-hooks.mjs.map +1 -0
- package/dist/src/packages/import-loader.d.ts +3 -4
- package/dist/src/packages/import-loader.d.ts.map +1 -1
- package/dist/src/packages/import-loader.js +6 -12
- package/dist/src/packages/import-loader.js.map +1 -1
- package/dist/src/packages/package-manager.d.ts +3 -4
- package/dist/src/packages/package-manager.d.ts.map +1 -1
- package/dist/src/packages/package-manager.js +2 -2
- package/dist/src/packages/package-manager.js.map +1 -1
- package/dist/src/packages/types.d.ts +9 -6
- package/dist/src/packages/types.d.ts.map +1 -1
- package/dist/src/packages/util.d.ts +4 -4
- package/dist/src/packages/util.d.ts.map +1 -1
- package/dist/src/packages/util.js +2 -2
- package/dist/src/packages/util.js.map +1 -1
- package/dist/src/packages/vite-loader.d.ts +8 -7
- package/dist/src/packages/vite-loader.d.ts.map +1 -1
- package/dist/src/packages/vite-loader.js +20 -8
- package/dist/src/packages/vite-loader.js.map +1 -1
- package/dist/src/server.d.ts +15 -28
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +137 -167
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/auth.service.d.ts +11 -15
- package/dist/src/services/auth.service.d.ts.map +1 -1
- package/dist/src/services/auth.service.js +61 -40
- package/dist/src/services/auth.service.js.map +1 -1
- package/dist/src/services/authorization.service.d.ts +70 -0
- package/dist/src/services/authorization.service.d.ts.map +1 -0
- package/dist/src/services/authorization.service.js +155 -0
- package/dist/src/services/authorization.service.js.map +1 -0
- package/dist/src/services/document-permission.service.d.ts +47 -7
- package/dist/src/services/document-permission.service.d.ts.map +1 -1
- package/dist/src/services/document-permission.service.js +162 -7
- package/dist/src/services/document-permission.service.js.map +1 -1
- package/dist/src/services/package-management.service.d.ts +32 -0
- package/dist/src/services/package-management.service.d.ts.map +1 -0
- package/dist/src/services/package-management.service.js +95 -0
- package/dist/src/services/package-management.service.js.map +1 -0
- package/dist/src/services/package-storage.d.ts +23 -0
- package/dist/src/services/package-storage.d.ts.map +1 -0
- package/dist/src/services/package-storage.js +19 -0
- package/dist/src/services/package-storage.js.map +1 -0
- package/dist/src/tracing.d.ts.map +1 -1
- package/dist/src/tracing.js +19 -1
- package/dist/src/tracing.js.map +1 -1
- package/dist/src/types.d.ts +14 -6
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/create-schema.d.ts +31 -6
- package/dist/src/utils/create-schema.d.ts.map +1 -1
- package/dist/src/utils/create-schema.js +451 -43
- package/dist/src/utils/create-schema.js.map +1 -1
- package/dist/src/utils/db.d.ts +8 -0
- package/dist/src/utils/db.d.ts.map +1 -1
- package/dist/src/utils/db.js.map +1 -1
- package/dist/src/utils/drive-url.d.ts +2 -0
- package/dist/src/utils/drive-url.d.ts.map +1 -0
- package/dist/src/utils/drive-url.js +3 -0
- package/dist/src/utils/drive-url.js.map +1 -0
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -0
- package/dist/src/utils/index.js.map +1 -1
- package/dist/test/auth.service.test.d.ts +10 -0
- package/dist/test/auth.service.test.d.ts.map +1 -0
- package/dist/test/auth.service.test.js +141 -0
- package/dist/test/auth.service.test.js.map +1 -0
- package/dist/test/authorization.service.test.d.ts +2 -0
- package/dist/test/authorization.service.test.d.ts.map +1 -0
- package/dist/test/authorization.service.test.js +252 -0
- package/dist/test/authorization.service.test.js.map +1 -0
- package/dist/test/connect-switchboard-reshuffle-convergence.test.d.ts +2 -0
- package/dist/test/connect-switchboard-reshuffle-convergence.test.d.ts.map +1 -0
- package/dist/test/connect-switchboard-reshuffle-convergence.test.js +204 -0
- package/dist/test/connect-switchboard-reshuffle-convergence.test.js.map +1 -0
- package/dist/test/connect-switchboard-sync.test.d.ts +2 -0
- package/dist/test/connect-switchboard-sync.test.d.ts.map +1 -0
- package/dist/test/connect-switchboard-sync.test.js +582 -0
- package/dist/test/connect-switchboard-sync.test.js.map +1 -0
- package/dist/test/document-drive-subgraph.test.d.ts +2 -0
- package/dist/test/document-drive-subgraph.test.d.ts.map +1 -0
- package/dist/test/document-drive-subgraph.test.js +244 -0
- package/dist/test/document-drive-subgraph.test.js.map +1 -0
- package/dist/test/document-model-subgraph-permissions.test.d.ts +2 -0
- package/dist/test/document-model-subgraph-permissions.test.d.ts.map +1 -0
- package/dist/test/document-model-subgraph-permissions.test.js +587 -0
- package/dist/test/document-model-subgraph-permissions.test.js.map +1 -0
- package/dist/test/drive-info-endpoint.test.d.ts +2 -0
- package/dist/test/drive-info-endpoint.test.d.ts.map +1 -0
- package/dist/test/drive-info-endpoint.test.js +123 -0
- package/dist/test/drive-info-endpoint.test.js.map +1 -0
- package/dist/test/fault-injection-sync.test.d.ts +2 -0
- package/dist/test/fault-injection-sync.test.d.ts.map +1 -0
- package/dist/test/fault-injection-sync.test.js +197 -0
- package/dist/test/fault-injection-sync.test.js.map +1 -0
- package/dist/test/gateway/adapter-gateway-apollo.test.d.ts +2 -0
- package/dist/test/gateway/adapter-gateway-apollo.test.d.ts.map +1 -0
- package/dist/test/gateway/adapter-gateway-apollo.test.js +206 -0
- package/dist/test/gateway/adapter-gateway-apollo.test.js.map +1 -0
- package/dist/test/gateway/adapter-http-express.test.d.ts +2 -0
- package/dist/test/gateway/adapter-http-express.test.d.ts.map +1 -0
- package/dist/test/gateway/adapter-http-express.test.js +17 -0
- package/dist/test/gateway/adapter-http-express.test.js.map +1 -0
- package/dist/test/gateway/auth-middleware.test.d.ts +8 -0
- package/dist/test/gateway/auth-middleware.test.d.ts.map +1 -0
- package/dist/test/gateway/auth-middleware.test.js +73 -0
- package/dist/test/gateway/auth-middleware.test.js.map +1 -0
- package/dist/test/gateway/gateway-adapter-contract.d.ts +30 -0
- package/dist/test/gateway/gateway-adapter-contract.d.ts.map +1 -0
- package/dist/test/gateway/gateway-adapter-contract.js +347 -0
- package/dist/test/gateway/gateway-adapter-contract.js.map +1 -0
- package/dist/test/gateway/http-adapter-contract.d.ts +30 -0
- package/dist/test/gateway/http-adapter-contract.d.ts.map +1 -0
- package/dist/test/gateway/http-adapter-contract.js +226 -0
- package/dist/test/gateway/http-adapter-contract.js.map +1 -0
- package/dist/test/graphql-manager.test.d.ts +12 -0
- package/dist/test/graphql-manager.test.d.ts.map +1 -0
- package/dist/test/graphql-manager.test.js +488 -0
- package/dist/test/graphql-manager.test.js.map +1 -0
- package/dist/test/index.d.ts +0 -1
- package/dist/test/index.d.ts.map +1 -1
- package/dist/test/index.js +0 -1
- package/dist/test/index.js.map +1 -1
- package/dist/test/permissions-integration.test.js +6 -20
- package/dist/test/permissions-integration.test.js.map +1 -1
- package/dist/test/push-backfill.test.d.ts +2 -0
- package/dist/test/push-backfill.test.d.ts.map +1 -0
- package/dist/test/push-backfill.test.js +299 -0
- package/dist/test/push-backfill.test.js.map +1 -0
- package/dist/test/reactor-adapters.test.js +3 -2
- package/dist/test/reactor-adapters.test.js.map +1 -1
- package/dist/test/reactor-client.test.js +172 -13
- package/dist/test/reactor-client.test.js.map +1 -1
- package/dist/test/reactor-resolvers.test.js +11 -13
- package/dist/test/reactor-resolvers.test.js.map +1 -1
- package/dist/test/reactor-subgraph-permissions.test.js +7 -36
- package/dist/test/reactor-subgraph-permissions.test.js.map +1 -1
- package/dist/test/subscriptions-sse.test.d.ts +2 -0
- package/dist/test/subscriptions-sse.test.d.ts.map +1 -0
- package/dist/test/subscriptions-sse.test.js +264 -0
- package/dist/test/subscriptions-sse.test.js.map +1 -0
- package/dist/test/subscriptions.test.js +2 -0
- package/dist/test/subscriptions.test.js.map +1 -1
- package/dist/test/utils/gql-resolver-bridge.d.ts +4 -1
- package/dist/test/utils/gql-resolver-bridge.d.ts.map +1 -1
- package/dist/test/utils/gql-resolver-bridge.js +36 -7
- package/dist/test/utils/gql-resolver-bridge.js.map +1 -1
- package/dist/test/utils.d.ts +1 -5
- package/dist/test/utils.d.ts.map +1 -1
- package/dist/test/utils.js +0 -10
- package/dist/test/utils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +52 -58
- package/dist/src/graphql/drive-subgraph.d.ts +0 -25
- package/dist/src/graphql/drive-subgraph.d.ts.map +0 -1
- package/dist/src/graphql/drive-subgraph.js +0 -487
- package/dist/src/graphql/drive-subgraph.js.map +0 -1
- package/dist/src/graphql/system/system-subgraph.d.ts +0 -49
- package/dist/src/graphql/system/system-subgraph.d.ts.map +0 -1
- package/dist/src/graphql/system/system-subgraph.js +0 -130
- package/dist/src/graphql/system/system-subgraph.js.map +0 -1
- package/dist/src/sync/types.d.ts +0 -10
- package/dist/src/sync/types.d.ts.map +0 -1
- package/dist/src/sync/utils.d.ts +0 -7
- package/dist/src/sync/utils.d.ts.map +0 -1
- package/dist/src/sync/utils.js +0 -78
- package/dist/src/sync/utils.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 -19
- package/dist/src/utils/auth.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/drive-handlers.d.ts +0 -4
- package/dist/test/drive-handlers.d.ts.map +0 -1
- package/dist/test/drive-handlers.js +0 -39
- package/dist/test/drive-handlers.js.map +0 -1
- package/dist/test/drive-subgraph-permissions.test.d.ts +0 -2
- package/dist/test/drive-subgraph-permissions.test.d.ts.map +0 -1
- package/dist/test/drive-subgraph-permissions.test.js +0 -195
- package/dist/test/drive-subgraph-permissions.test.js.map +0 -1
- package/dist/test/drive.test.d.ts +0 -2
- package/dist/test/drive.test.d.ts.map +0 -1
- package/dist/test/drive.test.js +0 -142
- package/dist/test/drive.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/pull-responder-transmitter.test.d.ts +0 -2
- package/dist/test/pull-responder-transmitter.test.d.ts.map +0 -1
- package/dist/test/pull-responder-transmitter.test.js +0 -220
- package/dist/test/pull-responder-transmitter.test.js.map +0 -1
- package/dist/test/push-transmitter.test.d.ts +0 -2
- package/dist/test/push-transmitter.test.d.ts.map +0 -1
- package/dist/test/push-transmitter.test.js +0 -179
- package/dist/test/push-transmitter.test.js.map +0 -1
- package/dist/test/system.test.d.ts +0 -2
- package/dist/test/system.test.d.ts.map +0 -1
- package/dist/test/system.test.js +0 -211
- package/dist/test/system.test.js.map +0 -1
- package/dist/test/three-reactor-gql-sync.test.d.ts +0 -2
- package/dist/test/three-reactor-gql-sync.test.d.ts.map +0 -1
- package/dist/test/three-reactor-gql-sync.test.js +0 -368
- package/dist/test/three-reactor-gql-sync.test.js.map +0 -1
- package/dist/test/two-reactor-gql-sync.test.d.ts +0 -2
- package/dist/test/two-reactor-gql-sync.test.d.ts.map +0 -1
- package/dist/test/two-reactor-gql-sync.test.js +0 -348
- package/dist/test/two-reactor-gql-sync.test.js.map +0 -1
- /package/dist/src/{sync → graphql/gateway}/types.js +0 -0
|
@@ -9,17 +9,13 @@ import { sql } from "kysely";
|
|
|
9
9
|
*
|
|
10
10
|
* Operation permissions:
|
|
11
11
|
* - Users and groups can be granted permission to execute specific operations
|
|
12
|
-
*
|
|
13
|
-
* Global roles (via environment variables):
|
|
14
|
-
* - AUTH_ENABLED: Enables authorization checks
|
|
15
|
-
* - ADMINS: Comma-separated list of admin addresses (full access)
|
|
16
|
-
* - USERS: Comma-separated list of user addresses (read/write access)
|
|
17
|
-
* - GUESTS: Comma-separated list of guest addresses (read access)
|
|
18
12
|
*/
|
|
19
13
|
export class DocumentPermissionService {
|
|
20
14
|
db;
|
|
21
|
-
|
|
15
|
+
config;
|
|
16
|
+
constructor(db, config = { defaultProtection: false }) {
|
|
22
17
|
this.db = db;
|
|
18
|
+
this.config = config;
|
|
23
19
|
}
|
|
24
20
|
// ============================================
|
|
25
21
|
// User Permission Operations
|
|
@@ -632,5 +628,164 @@ export class DocumentPermissionService {
|
|
|
632
628
|
.executeTakeFirst();
|
|
633
629
|
return groupPermCount !== undefined && Number(groupPermCount.count) > 0;
|
|
634
630
|
}
|
|
631
|
+
// ============================================
|
|
632
|
+
// Document Protection
|
|
633
|
+
// ============================================
|
|
634
|
+
/**
|
|
635
|
+
* Check if a specific document has a protection row set to true.
|
|
636
|
+
* Falls back to `config.defaultProtection` if no row exists.
|
|
637
|
+
*/
|
|
638
|
+
async isDocumentProtected(documentId) {
|
|
639
|
+
const row = await this.db
|
|
640
|
+
.selectFrom("DocumentProtection")
|
|
641
|
+
.select("protected")
|
|
642
|
+
.where("documentId", "=", documentId)
|
|
643
|
+
.executeTakeFirst();
|
|
644
|
+
if (row === undefined) {
|
|
645
|
+
return this.config.defaultProtection;
|
|
646
|
+
}
|
|
647
|
+
return row.protected;
|
|
648
|
+
}
|
|
649
|
+
/**
|
|
650
|
+
* Walk the parent chain: if the document itself or any ancestor is protected, return true.
|
|
651
|
+
* Collects all ancestor IDs first (with cycle detection), then batch-checks protection.
|
|
652
|
+
*/
|
|
653
|
+
async isProtectedWithAncestors(documentId, getParentIds) {
|
|
654
|
+
// Collect all IDs in the hierarchy (document + all ancestors)
|
|
655
|
+
const allIds = await this.collectAncestorIds(documentId, getParentIds);
|
|
656
|
+
// Batch-check protection for all IDs at once
|
|
657
|
+
if (allIds.length === 0) {
|
|
658
|
+
return this.config.defaultProtection;
|
|
659
|
+
}
|
|
660
|
+
const rows = await this.db
|
|
661
|
+
.selectFrom("DocumentProtection")
|
|
662
|
+
.select(["documentId", "protected"])
|
|
663
|
+
.where("documentId", "in", allIds)
|
|
664
|
+
.execute();
|
|
665
|
+
const protectionMap = new Map(rows.map((r) => [r.documentId, r.protected]));
|
|
666
|
+
for (const id of allIds) {
|
|
667
|
+
const isProtected = protectionMap.get(id);
|
|
668
|
+
// If no row exists, fall back to defaultProtection
|
|
669
|
+
if (isProtected ?? this.config.defaultProtection) {
|
|
670
|
+
return true;
|
|
671
|
+
}
|
|
672
|
+
}
|
|
673
|
+
return false;
|
|
674
|
+
}
|
|
675
|
+
/**
|
|
676
|
+
* Collect all ancestor IDs (including the document itself) with cycle detection.
|
|
677
|
+
*/
|
|
678
|
+
async collectAncestorIds(documentId, getParentIds) {
|
|
679
|
+
const visited = new Set();
|
|
680
|
+
const queue = [documentId];
|
|
681
|
+
while (queue.length > 0) {
|
|
682
|
+
const current = queue.shift();
|
|
683
|
+
if (visited.has(current))
|
|
684
|
+
continue;
|
|
685
|
+
visited.add(current);
|
|
686
|
+
const parentIds = await getParentIds(current);
|
|
687
|
+
for (const parentId of parentIds) {
|
|
688
|
+
if (!visited.has(parentId)) {
|
|
689
|
+
queue.push(parentId);
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
return Array.from(visited);
|
|
694
|
+
}
|
|
695
|
+
/**
|
|
696
|
+
* Upsert protection status for a document.
|
|
697
|
+
*/
|
|
698
|
+
async setDocumentProtection(documentId, isProtected) {
|
|
699
|
+
const now = new Date();
|
|
700
|
+
await this.db
|
|
701
|
+
.insertInto("DocumentProtection")
|
|
702
|
+
.values({
|
|
703
|
+
documentId,
|
|
704
|
+
protected: isProtected,
|
|
705
|
+
ownerAddress: null,
|
|
706
|
+
createdAt: now,
|
|
707
|
+
updatedAt: now,
|
|
708
|
+
})
|
|
709
|
+
.onConflict((oc) => oc.column("documentId").doUpdateSet({
|
|
710
|
+
protected: isProtected,
|
|
711
|
+
updatedAt: now,
|
|
712
|
+
}))
|
|
713
|
+
.execute();
|
|
714
|
+
}
|
|
715
|
+
/**
|
|
716
|
+
* Get the owner address for a document, or null if not set.
|
|
717
|
+
*/
|
|
718
|
+
async getDocumentOwner(documentId) {
|
|
719
|
+
const row = await this.db
|
|
720
|
+
.selectFrom("DocumentProtection")
|
|
721
|
+
.select("ownerAddress")
|
|
722
|
+
.where("documentId", "=", documentId)
|
|
723
|
+
.executeTakeFirst();
|
|
724
|
+
return row?.ownerAddress ?? null;
|
|
725
|
+
}
|
|
726
|
+
/**
|
|
727
|
+
* Upsert owner address for a document.
|
|
728
|
+
*/
|
|
729
|
+
async setDocumentOwner(documentId, ownerAddress) {
|
|
730
|
+
const now = new Date();
|
|
731
|
+
const normalizedAddress = ownerAddress.toLowerCase();
|
|
732
|
+
await this.db
|
|
733
|
+
.insertInto("DocumentProtection")
|
|
734
|
+
.values({
|
|
735
|
+
documentId,
|
|
736
|
+
protected: this.config.defaultProtection,
|
|
737
|
+
ownerAddress: normalizedAddress,
|
|
738
|
+
createdAt: now,
|
|
739
|
+
updatedAt: now,
|
|
740
|
+
})
|
|
741
|
+
.onConflict((oc) => oc.column("documentId").doUpdateSet({
|
|
742
|
+
ownerAddress: normalizedAddress,
|
|
743
|
+
updatedAt: now,
|
|
744
|
+
}))
|
|
745
|
+
.execute();
|
|
746
|
+
}
|
|
747
|
+
/**
|
|
748
|
+
* Initialize protection for a newly created document.
|
|
749
|
+
* Sets protection status and grants ADMIN to the owner.
|
|
750
|
+
*/
|
|
751
|
+
async initializeDocumentProtection(documentId, ownerAddress, defaultProtection) {
|
|
752
|
+
const now = new Date();
|
|
753
|
+
const normalizedAddress = ownerAddress.toLowerCase();
|
|
754
|
+
const isProtected = defaultProtection ?? this.config.defaultProtection;
|
|
755
|
+
await this.db
|
|
756
|
+
.insertInto("DocumentProtection")
|
|
757
|
+
.values({
|
|
758
|
+
documentId,
|
|
759
|
+
protected: isProtected,
|
|
760
|
+
ownerAddress: normalizedAddress,
|
|
761
|
+
createdAt: now,
|
|
762
|
+
updatedAt: now,
|
|
763
|
+
})
|
|
764
|
+
.onConflict((oc) => oc.column("documentId").doUpdateSet({
|
|
765
|
+
ownerAddress: normalizedAddress,
|
|
766
|
+
updatedAt: now,
|
|
767
|
+
}))
|
|
768
|
+
.execute();
|
|
769
|
+
// Grant ADMIN permission to the owner
|
|
770
|
+
await this.grantPermission(documentId, normalizedAddress, "ADMIN", normalizedAddress);
|
|
771
|
+
}
|
|
772
|
+
/**
|
|
773
|
+
* Get the full protection info for a document.
|
|
774
|
+
*/
|
|
775
|
+
async getDocumentProtection(documentId) {
|
|
776
|
+
const row = await this.db
|
|
777
|
+
.selectFrom("DocumentProtection")
|
|
778
|
+
.select(["documentId", "protected", "ownerAddress"])
|
|
779
|
+
.where("documentId", "=", documentId)
|
|
780
|
+
.executeTakeFirst();
|
|
781
|
+
if (!row) {
|
|
782
|
+
return {
|
|
783
|
+
documentId,
|
|
784
|
+
protected: this.config.defaultProtection,
|
|
785
|
+
ownerAddress: null,
|
|
786
|
+
};
|
|
787
|
+
}
|
|
788
|
+
return row;
|
|
789
|
+
}
|
|
635
790
|
}
|
|
636
791
|
//# sourceMappingURL=document-permission.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-permission.service.js","sourceRoot":"","sources":["../../../src/services/document-permission.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"document-permission.service.js","sourceRoot":"","sources":["../../../src/services/document-permission.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { IDocumentModelRegistry } from "@powerhousedao/reactor";
|
|
2
|
+
import type { DocumentModelModule } from "@powerhousedao/shared/document-model";
|
|
3
|
+
import type { HttpPackageLoader } from "../packages/http-loader.js";
|
|
4
|
+
import { type IPackageStorage, type InstalledPackageInfo } from "./package-storage.js";
|
|
5
|
+
export interface InstallPackageResult {
|
|
6
|
+
package: InstalledPackageInfo;
|
|
7
|
+
documentModelsLoaded: number;
|
|
8
|
+
}
|
|
9
|
+
export interface PackageManagementServiceOptions {
|
|
10
|
+
storage?: IPackageStorage;
|
|
11
|
+
defaultRegistryUrl?: string;
|
|
12
|
+
httpLoader?: HttpPackageLoader;
|
|
13
|
+
documentModelRegistry?: IDocumentModelRegistry;
|
|
14
|
+
}
|
|
15
|
+
export declare class PackageManagementService {
|
|
16
|
+
private readonly storage;
|
|
17
|
+
private readonly defaultRegistryUrl?;
|
|
18
|
+
private readonly httpLoader?;
|
|
19
|
+
private readonly documentModelRegistry?;
|
|
20
|
+
private readonly logger;
|
|
21
|
+
private onModelsChanged?;
|
|
22
|
+
private loadedModulesCache;
|
|
23
|
+
constructor(options?: PackageManagementServiceOptions);
|
|
24
|
+
setOnModelsChanged(callback: (models: DocumentModelModule[]) => void): void;
|
|
25
|
+
installPackage(name: string, registryUrl?: string): Promise<InstallPackageResult>;
|
|
26
|
+
uninstallPackage(name: string): Promise<boolean>;
|
|
27
|
+
getInstalledPackages(): Promise<InstalledPackageInfo[]>;
|
|
28
|
+
getInstalledPackage(name: string): Promise<InstalledPackageInfo | undefined>;
|
|
29
|
+
getAllLoadedModules(): DocumentModelModule[];
|
|
30
|
+
private triggerModelsChanged;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=package-management.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-management.service.d.ts","sourceRoot":"","sources":["../../../src/services/package-management.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAEhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,oBAAoB,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,+BAA+B;IAC9C,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,qBAAqB,CAAC,EAAE,sBAAsB,CAAC;CAChD;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAS;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAyB;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAGpB;IAEH,OAAO,CAAC,eAAe,CAAC,CAA0C;IAClE,OAAO,CAAC,kBAAkB,CAA4C;gBAE1D,OAAO,GAAE,+BAAoC;IAOzD,kBAAkB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,KAAK,IAAI,GAAG,IAAI;IAIrE,cAAc,CAClB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,oBAAoB,CAAC;IAkD1B,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BhD,oBAAoB,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAIvD,mBAAmB,CACvB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAI5C,mBAAmB,IAAI,mBAAmB,EAAE;IAQ5C,OAAO,CAAC,oBAAoB;CAM7B"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { childLogger } from "document-model";
|
|
2
|
+
import { InMemoryPackageStorage, } from "./package-storage.js";
|
|
3
|
+
export class PackageManagementService {
|
|
4
|
+
storage;
|
|
5
|
+
defaultRegistryUrl;
|
|
6
|
+
httpLoader;
|
|
7
|
+
documentModelRegistry;
|
|
8
|
+
logger = childLogger([
|
|
9
|
+
"reactor-api",
|
|
10
|
+
"package-management-service",
|
|
11
|
+
]);
|
|
12
|
+
onModelsChanged;
|
|
13
|
+
loadedModulesCache = new Map();
|
|
14
|
+
constructor(options = {}) {
|
|
15
|
+
this.storage = options.storage ?? new InMemoryPackageStorage();
|
|
16
|
+
this.defaultRegistryUrl = options.defaultRegistryUrl;
|
|
17
|
+
this.httpLoader = options.httpLoader;
|
|
18
|
+
this.documentModelRegistry = options.documentModelRegistry;
|
|
19
|
+
}
|
|
20
|
+
setOnModelsChanged(callback) {
|
|
21
|
+
this.onModelsChanged = callback;
|
|
22
|
+
}
|
|
23
|
+
async installPackage(name, registryUrl) {
|
|
24
|
+
const url = registryUrl ?? this.defaultRegistryUrl;
|
|
25
|
+
if (!url) {
|
|
26
|
+
throw new Error("No registry URL provided and no default registry URL configured");
|
|
27
|
+
}
|
|
28
|
+
if (!this.httpLoader) {
|
|
29
|
+
throw new Error("HttpPackageLoader not configured");
|
|
30
|
+
}
|
|
31
|
+
const existing = await this.storage.get(name);
|
|
32
|
+
if (existing) {
|
|
33
|
+
throw new Error(`Package ${name} is already installed`);
|
|
34
|
+
}
|
|
35
|
+
this.logger.info("Installing package @name from @url", name, url);
|
|
36
|
+
const models = await this.httpLoader.loadDocumentModels(name);
|
|
37
|
+
const documentTypes = models.map((m) => m.documentModel.global.id);
|
|
38
|
+
const packageInfo = {
|
|
39
|
+
name,
|
|
40
|
+
registryUrl: url,
|
|
41
|
+
installedAt: new Date(),
|
|
42
|
+
documentTypes,
|
|
43
|
+
};
|
|
44
|
+
await this.storage.set(name, packageInfo);
|
|
45
|
+
this.loadedModulesCache.set(name, models);
|
|
46
|
+
if (this.documentModelRegistry) {
|
|
47
|
+
this.documentModelRegistry.registerModules(...models);
|
|
48
|
+
}
|
|
49
|
+
this.logger.info("Installed package @name with @count document models", name, models.length);
|
|
50
|
+
this.triggerModelsChanged();
|
|
51
|
+
return {
|
|
52
|
+
package: packageInfo,
|
|
53
|
+
documentModelsLoaded: models.length,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
async uninstallPackage(name) {
|
|
57
|
+
const existing = await this.storage.get(name);
|
|
58
|
+
if (!existing) {
|
|
59
|
+
this.logger.warn("Package @name is not installed", name);
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
this.logger.info("Uninstalling package @name", name);
|
|
63
|
+
await this.storage.delete(name);
|
|
64
|
+
this.loadedModulesCache.delete(name);
|
|
65
|
+
if (this.httpLoader) {
|
|
66
|
+
this.httpLoader.removeFromCache(name);
|
|
67
|
+
}
|
|
68
|
+
if (this.documentModelRegistry && existing) {
|
|
69
|
+
this.documentModelRegistry.unregisterModules(...existing.documentTypes);
|
|
70
|
+
}
|
|
71
|
+
this.triggerModelsChanged();
|
|
72
|
+
this.logger.info("Uninstalled package @name", name);
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
async getInstalledPackages() {
|
|
76
|
+
return this.storage.getAll();
|
|
77
|
+
}
|
|
78
|
+
async getInstalledPackage(name) {
|
|
79
|
+
return this.storage.get(name);
|
|
80
|
+
}
|
|
81
|
+
getAllLoadedModules() {
|
|
82
|
+
const allModules = [];
|
|
83
|
+
for (const modules of this.loadedModulesCache.values()) {
|
|
84
|
+
allModules.push(...modules);
|
|
85
|
+
}
|
|
86
|
+
return allModules;
|
|
87
|
+
}
|
|
88
|
+
triggerModelsChanged() {
|
|
89
|
+
if (this.onModelsChanged) {
|
|
90
|
+
const allModules = this.getAllLoadedModules();
|
|
91
|
+
this.onModelsChanged(allModules);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=package-management.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-management.service.js","sourceRoot":"","sources":["../../../src/services/package-management.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EACL,sBAAsB,GAGvB,MAAM,sBAAsB,CAAC;AAc9B,MAAM,OAAO,wBAAwB;IAClB,OAAO,CAAkB;IACzB,kBAAkB,CAAU;IAC5B,UAAU,CAAqB;IAC/B,qBAAqB,CAA0B;IAC/C,MAAM,GAAG,WAAW,CAAC;QACpC,aAAa;QACb,4BAA4B;KAC7B,CAAC,CAAC;IAEK,eAAe,CAA2C;IAC1D,kBAAkB,GAAG,IAAI,GAAG,EAAiC,CAAC;IAEtE,YAAY,UAA2C,EAAE;QACvD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,sBAAsB,EAAE,CAAC;QAC/D,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAC7D,CAAC;IAED,kBAAkB,CAAC,QAAiD;QAClE,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,IAAY,EACZ,WAAoB;QAEpB,MAAM,GAAG,GAAG,WAAW,IAAI,IAAI,CAAC,kBAAkB,CAAC;QACnD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,uBAAuB,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAElE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEnE,MAAM,WAAW,GAAyB;YACxC,IAAI;YACJ,WAAW,EAAE,GAAG;YAChB,WAAW,EAAE,IAAI,IAAI,EAAE;YACvB,aAAa;SACd,CAAC;QAEF,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,qDAAqD,EACrD,IAAI,EACJ,MAAM,CAAC,MAAM,CACd,CAAC;QAEF,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,oBAAoB,EAAE,MAAM,CAAC,MAAM;SACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,IAAY;QACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,IAAI,CAAC,CAAC;YACzD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,IAAI,CAAC,CAAC;QAErD,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAErC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,IAAI,CAAC,qBAAqB,IAAI,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,IAAY;QAEZ,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,mBAAmB;QACjB,MAAM,UAAU,GAA0B,EAAE,CAAC;QAC7C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;YACvD,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,oBAAoB;QAC1B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9C,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface InstalledPackageInfo {
|
|
2
|
+
name: string;
|
|
3
|
+
version?: string;
|
|
4
|
+
registryUrl: string;
|
|
5
|
+
installedAt: Date;
|
|
6
|
+
documentTypes: string[];
|
|
7
|
+
}
|
|
8
|
+
export interface IPackageStorage {
|
|
9
|
+
get(name: string): Promise<InstalledPackageInfo | undefined>;
|
|
10
|
+
getAll(): Promise<InstalledPackageInfo[]>;
|
|
11
|
+
set(name: string, info: InstalledPackageInfo): Promise<void>;
|
|
12
|
+
delete(name: string): Promise<boolean>;
|
|
13
|
+
has(name: string): Promise<boolean>;
|
|
14
|
+
}
|
|
15
|
+
export declare class InMemoryPackageStorage implements IPackageStorage {
|
|
16
|
+
private packages;
|
|
17
|
+
get(name: string): Promise<InstalledPackageInfo | undefined>;
|
|
18
|
+
getAll(): Promise<InstalledPackageInfo[]>;
|
|
19
|
+
set(name: string, info: InstalledPackageInfo): Promise<void>;
|
|
20
|
+
delete(name: string): Promise<boolean>;
|
|
21
|
+
has(name: string): Promise<boolean>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=package-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-storage.d.ts","sourceRoot":"","sources":["../../../src/services/package-storage.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;IAC7D,MAAM,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC1C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACrC;AAED,qBAAa,sBAAuB,YAAW,eAAe;IAC5D,OAAO,CAAC,QAAQ,CAA2C;IAErD,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAI5D,MAAM,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAIzC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAItC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAG1C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class InMemoryPackageStorage {
|
|
2
|
+
packages = new Map();
|
|
3
|
+
async get(name) {
|
|
4
|
+
return this.packages.get(name);
|
|
5
|
+
}
|
|
6
|
+
async getAll() {
|
|
7
|
+
return Array.from(this.packages.values());
|
|
8
|
+
}
|
|
9
|
+
async set(name, info) {
|
|
10
|
+
this.packages.set(name, info);
|
|
11
|
+
}
|
|
12
|
+
async delete(name) {
|
|
13
|
+
return this.packages.delete(name);
|
|
14
|
+
}
|
|
15
|
+
async has(name) {
|
|
16
|
+
return this.packages.has(name);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=package-storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package-storage.js","sourceRoot":"","sources":["../../../src/services/package-storage.ts"],"names":[],"mappings":"AAgBA,MAAM,OAAO,sBAAsB;IACzB,QAAQ,GAAG,IAAI,GAAG,EAAgC,CAAC;IAE3D,KAAK,CAAC,GAAG,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,IAA0B;QAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracing.d.ts","sourceRoot":"","sources":["../../src/tracing.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tracing.d.ts","sourceRoot":"","sources":["../../src/tracing.ts"],"names":[],"mappings":"AAuJA,wBAAsB,WAAW,kBAGhC;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAID,wBAAsB,KAAK,CAAC,CAAC,EAC3B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,GAAG,EACb,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAEZ"}
|
package/dist/src/tracing.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
// OpenTelemetry Tracing Configuration for Reactor API
|
|
2
2
|
// This file must be loaded before the application starts
|
|
3
3
|
import { getNodeAutoInstrumentations } from "@opentelemetry/auto-instrumentations-node";
|
|
4
|
+
import { OTLPMetricExporter } from "@opentelemetry/exporter-metrics-otlp-http";
|
|
4
5
|
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
|
|
5
6
|
import { Resource } from "@opentelemetry/resources";
|
|
7
|
+
import { PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics";
|
|
6
8
|
import { NodeSDK } from "@opentelemetry/sdk-node";
|
|
7
9
|
import { BatchSpanProcessor } from "@opentelemetry/sdk-trace-base";
|
|
8
10
|
import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION, } from "@opentelemetry/semantic-conventions";
|
|
@@ -12,6 +14,8 @@ const TEMPO_ENDPOINT = process.env.TEMPO_ENDPOINT ||
|
|
|
12
14
|
const SERVICE_NAME = process.env.OTEL_SERVICE_NAME || "reactor-api";
|
|
13
15
|
const SERVICE_VERSION = process.env.npm_package_version || "unknown";
|
|
14
16
|
const TENANT_ID = process.env.TENANT_ID || "default";
|
|
17
|
+
const METRICS_ENDPOINT = process.env.METRICS_ENDPOINT;
|
|
18
|
+
const METRICS_EXPORT_INTERVAL_MS = parseInt(process.env.METRICS_EXPORT_INTERVAL_MS || "30000", 10);
|
|
15
19
|
// Only enable tracing if explicitly enabled or in production
|
|
16
20
|
const TRACING_ENABLED = process.env.ENABLE_TRACING === "true" ||
|
|
17
21
|
process.env.NODE_ENV === "production";
|
|
@@ -32,10 +36,22 @@ if (TRACING_ENABLED) {
|
|
|
32
36
|
"tenant.id": TENANT_ID,
|
|
33
37
|
"deployment.environment": process.env.NODE_ENV || "development",
|
|
34
38
|
});
|
|
39
|
+
// Configure metrics exporter if endpoint is provided
|
|
40
|
+
const metricReader = METRICS_ENDPOINT
|
|
41
|
+
? new PeriodicExportingMetricReader({
|
|
42
|
+
exporter: new OTLPMetricExporter({ url: METRICS_ENDPOINT }),
|
|
43
|
+
exportIntervalMillis: METRICS_EXPORT_INTERVAL_MS,
|
|
44
|
+
})
|
|
45
|
+
: undefined;
|
|
46
|
+
if (METRICS_ENDPOINT) {
|
|
47
|
+
console.log(` Metrics endpoint: ${METRICS_ENDPOINT}`);
|
|
48
|
+
console.log(` Metrics interval: ${METRICS_EXPORT_INTERVAL_MS}ms`);
|
|
49
|
+
}
|
|
35
50
|
// Initialize OpenTelemetry SDK
|
|
36
51
|
const sdk = new NodeSDK({
|
|
37
52
|
resource,
|
|
38
53
|
spanProcessors: [new BatchSpanProcessor(traceExporter)],
|
|
54
|
+
metricReader,
|
|
39
55
|
instrumentations: [
|
|
40
56
|
getNodeAutoInstrumentations({
|
|
41
57
|
// Automatically instrument common libraries
|
|
@@ -103,7 +119,9 @@ if (TRACING_ENABLED) {
|
|
|
103
119
|
});
|
|
104
120
|
}
|
|
105
121
|
else {
|
|
106
|
-
console.
|
|
122
|
+
// console.debug(
|
|
123
|
+
// "OpenTelemetry tracing disabled (set ENABLE_TRACING=true to enable)",
|
|
124
|
+
// );
|
|
107
125
|
}
|
|
108
126
|
// Stub exports for backwards compatibility during migration
|
|
109
127
|
// With OpenTelemetry auto-instrumentation, these are no longer needed
|
package/dist/src/tracing.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../src/tracing.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,yDAAyD;AAEzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,qCAAqC,CAAC;AAG7C,qCAAqC;AACrC,MAAM,cAAc,GAClB,OAAO,CAAC,GAAG,CAAC,cAAc;IAC1B,0DAA0D,CAAC;AAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,aAAa,CAAC;AACpE,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,SAAS,CAAC;AACrE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../src/tracing.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,18 +1,26 @@
|
|
|
1
1
|
import type { IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
2
2
|
import type { GraphQLManager } from "@powerhousedao/reactor-api";
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
3
|
+
import type { PHDocumentHeader } from "@powerhousedao/shared/document-model";
|
|
4
|
+
import type { IProcessorHostModule, IRelationalDb, ProcessorRecord } from "@powerhousedao/shared/processors";
|
|
5
|
+
import type { IHttpAdapter } from "./graphql/gateway/types.js";
|
|
5
6
|
import type { IPackageManager } from "./packages/types.js";
|
|
6
|
-
export type { IPackageLoader } from "./packages/types.js";
|
|
7
|
+
export type { IPackageLoader, IPackageLoaderOptions, } from "./packages/types.js";
|
|
7
8
|
export type API = {
|
|
8
|
-
app:
|
|
9
|
+
app: IHttpAdapter;
|
|
9
10
|
graphqlManager: GraphQLManager;
|
|
10
|
-
processorManager: IProcessorManager;
|
|
11
11
|
packages: IPackageManager;
|
|
12
12
|
};
|
|
13
13
|
export type ReactorModule = {
|
|
14
14
|
analyticsStore: IAnalyticsStore;
|
|
15
15
|
relationalDb: IRelationalDb;
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
/** Per-drive factory after the host `module` has been applied once. */
|
|
18
|
+
export type ProcessorDriveFactory = (driveHeader: PHDocumentHeader) => ProcessorRecord[] | Promise<ProcessorRecord[]>;
|
|
19
|
+
/**
|
|
20
|
+
* Builds a per-drive factory from the host module (e.g. vetra `processorFactory`).
|
|
21
|
+
* Shape: `(module) => (driveHeader) => ...`
|
|
22
|
+
*/
|
|
23
|
+
export type ProcessorFactoryBuilder = (module: IProcessorHostModule) => ProcessorDriveFactory;
|
|
24
|
+
/** Multiple initializers per package name (e.g. Switchboard `processors` option). */
|
|
25
|
+
export type Processor = ProcessorFactoryBuilder[];
|
|
18
26
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EACV,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,eAAe,EAChB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,YAAY,EACV,cAAc,EACd,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,GAAG,GAAG;IAChB,GAAG,EAAE,YAAY,CAAC;IAClB,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,cAAc,EAAE,eAAe,CAAC;IAChC,YAAY,EAAE,aAAa,CAAC;CAC7B,CAAC;AAEF,uEAAuE;AACvE,MAAM,MAAM,qBAAqB,GAAG,CAClC,WAAW,EAAE,gBAAgB,KAC1B,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,CACpC,MAAM,EAAE,oBAAoB,KACzB,qBAAqB,CAAC;AAE3B,qFAAqF;AACrF,MAAM,MAAM,SAAS,GAAG,uBAAuB,EAAE,CAAC"}
|
|
@@ -1,11 +1,36 @@
|
|
|
1
1
|
import type { GraphQLResolverMap, GraphQLSchemaModule } from "@apollo/subgraph/dist/schema-helper/resolverMap.js";
|
|
2
2
|
import type { Context } from "@powerhousedao/reactor-api";
|
|
3
|
-
import {
|
|
4
|
-
import type { DocumentModelGlobalState } from "document-model";
|
|
3
|
+
import type { DocumentModelGlobalState, DocumentModelModule } from "@powerhousedao/shared/document-model";
|
|
5
4
|
import { type DocumentNode } from "graphql";
|
|
6
|
-
export declare const buildSubgraphSchemaModule: (
|
|
7
|
-
export declare const createSchema: (
|
|
5
|
+
export declare const buildSubgraphSchemaModule: (documentModels: DocumentModelModule[], resolvers: GraphQLResolverMap<Context>, typeDefs: DocumentNode) => GraphQLSchemaModule;
|
|
6
|
+
export declare const createSchema: (documentModels: DocumentModelModule[], resolvers: GraphQLResolverMap<Context>, typeDefs: DocumentNode) => import("graphql").GraphQLSchema;
|
|
7
|
+
/**
|
|
8
|
+
* Create a merged GraphQL schema from multiple subgraph modules.
|
|
9
|
+
* Uses buildSubgraphSchema's array overload to combine type definitions
|
|
10
|
+
* and resolvers from multiple subgraphs into a single executable schema.
|
|
11
|
+
*/
|
|
12
|
+
export declare const createMergedSchema: (modules: GraphQLSchemaModule[]) => import("graphql").GraphQLSchema;
|
|
8
13
|
export declare function getDocumentModelSchemaName(documentModel: DocumentModelGlobalState): string;
|
|
9
|
-
export declare const getDocumentModelTypeDefs: (
|
|
10
|
-
|
|
14
|
+
export declare const getDocumentModelTypeDefs: (documentModels: DocumentModelModule[], typeDefs: DocumentNode) => DocumentNode;
|
|
15
|
+
/**
|
|
16
|
+
* Options for generating document model GraphQL schemas.
|
|
17
|
+
*/
|
|
18
|
+
export interface DocumentModelSchemaOptions {
|
|
19
|
+
/**
|
|
20
|
+
* When true, generates new API patterns:
|
|
21
|
+
* - Mutations return full document objects (MutationResult type)
|
|
22
|
+
* - Adds createEmptyDocument mutation
|
|
23
|
+
* - Makes docId and input parameters required
|
|
24
|
+
* @default false
|
|
25
|
+
*/
|
|
26
|
+
useNewApi?: boolean;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Generate a GraphQL schema for a document model.
|
|
30
|
+
*
|
|
31
|
+
* @param documentModel - The document model global state
|
|
32
|
+
* @param options - Schema generation options
|
|
33
|
+
* @returns GraphQL DocumentNode
|
|
34
|
+
*/
|
|
35
|
+
export declare function generateDocumentModelSchema(documentModel: DocumentModelGlobalState, options?: DocumentModelSchemaOptions): DocumentNode;
|
|
11
36
|
//# sourceMappingURL=create-schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-schema.d.ts","sourceRoot":"","sources":["../../../src/utils/create-schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,oDAAoD,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"create-schema.d.ts","sourceRoot":"","sources":["../../../src/utils/create-schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,oDAAoD,CAAC;AAE5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EACV,wBAAwB,EACxB,mBAAmB,EACpB,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,SAAS,CAAC;AA4BhE,eAAO,MAAM,yBAAyB,GACpC,gBAAgB,mBAAmB,EAAE,EACrC,WAAW,kBAAkB,CAAC,OAAO,CAAC,EACtC,UAAU,YAAY,KACrB,mBAUF,CAAC;AACF,eAAO,MAAM,YAAY,GACvB,gBAAgB,mBAAmB,EAAE,EACrC,WAAW,kBAAkB,CAAC,OAAO,CAAC,EACtC,UAAU,YAAY,oCAKvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,SAAS,mBAAmB,EAAE,oCAEhE,CAAC;AAEF,wBAAgB,0BAA0B,CACxC,aAAa,EAAE,wBAAwB,UAGxC;AAED,eAAO,MAAM,wBAAwB,GACnC,gBAAgB,mBAAmB,EAAE,EACrC,UAAU,YAAY,iBA2KvB,CAAC;AA4QF;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,wBAAwB,EACvC,OAAO,GAAE,0BAA+B,GACvC,YAAY,CAsEd"}
|