@powerhousedao/reactor-api 1.29.17-dev.0 → 1.29.17-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/src/graphql/analytics/index.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/analytics/index.js +1 -1
- package/dist/src/graphql/auth/env/getters.d.ts.map +1 -0
- package/dist/src/graphql/auth/env/index.d.ts.map +1 -0
- package/dist/src/graphql/auth/index.d.ts +11 -0
- package/dist/src/graphql/auth/index.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/auth/index.js +2 -2
- package/dist/src/{subgraphs → graphql}/auth/types.d.ts +1 -1
- package/dist/src/graphql/auth/types.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/auth/utils/helpers.d.ts +1 -1
- package/dist/src/graphql/auth/utils/helpers.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/auth/utils/helpers.js +1 -1
- package/dist/src/{subgraphs → graphql}/auth/utils/session.d.ts +1 -1
- package/dist/src/graphql/auth/utils/session.d.ts.map +1 -0
- package/dist/src/graphql/auth/utils/user.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/base/index.d.ts +3 -3
- package/dist/src/graphql/base/index.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/base/index.js +2 -2
- package/dist/src/{subgraphs → graphql}/drive/index.d.ts +2 -2
- package/dist/src/graphql/drive/index.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/drive/index.js +1 -1
- package/dist/src/graphql/drive/temp-hack-rwa-type-defs.d.ts.map +1 -0
- package/dist/src/{subgraphs/manager.d.ts → graphql/graphql-manager.d.ts} +2 -2
- package/dist/src/graphql/graphql-manager.d.ts.map +1 -0
- package/dist/src/{subgraphs/manager.js → graphql/graphql-manager.js} +9 -2
- package/dist/src/graphql/index.d.ts.map +1 -0
- package/dist/src/graphql/playground.d.ts +2 -0
- package/dist/src/graphql/playground.d.ts.map +1 -0
- package/dist/src/graphql/playground.js +73 -0
- package/dist/src/graphql/system/env/getters.d.ts.map +1 -0
- package/dist/src/graphql/system/env/index.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/system/index.d.ts +1 -1
- package/dist/src/graphql/system/index.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/system/index.js +2 -2
- package/dist/src/{subgraphs → graphql}/system/types.d.ts +1 -1
- package/dist/src/graphql/system/types.d.ts.map +1 -0
- package/dist/src/{subgraphs → graphql}/types.d.ts +2 -2
- package/dist/src/{subgraphs → graphql}/types.d.ts.map +1 -1
- package/dist/src/package-manager.d.ts +10 -11
- package/dist/src/package-manager.d.ts.map +1 -1
- package/dist/src/package-manager.js +20 -24
- package/dist/src/processor-manager.d.ts +40 -0
- package/dist/src/processor-manager.d.ts.map +1 -0
- package/dist/src/processor-manager.js +65 -0
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +93 -38
- package/dist/src/sync/utils.d.ts +2 -2
- package/dist/src/sync/utils.d.ts.map +1 -1
- package/dist/src/types.d.ts +19 -3
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/create-schema.d.ts +1 -1
- package/dist/src/utils/create-schema.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -3
- package/dist/src/subgraphs/analytics/index.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/env/getters.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/env/index.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/index.d.ts +0 -11
- package/dist/src/subgraphs/auth/index.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/types.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/utils/helpers.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/utils/session.d.ts.map +0 -1
- package/dist/src/subgraphs/auth/utils/user.d.ts.map +0 -1
- package/dist/src/subgraphs/base/index.d.ts.map +0 -1
- package/dist/src/subgraphs/drive/index.d.ts.map +0 -1
- package/dist/src/subgraphs/drive/temp-hack-rwa-type-defs.d.ts.map +0 -1
- package/dist/src/subgraphs/index.d.ts.map +0 -1
- package/dist/src/subgraphs/manager.d.ts.map +0 -1
- package/dist/src/subgraphs/system/env/getters.d.ts.map +0 -1
- package/dist/src/subgraphs/system/env/index.d.ts.map +0 -1
- package/dist/src/subgraphs/system/index.d.ts.map +0 -1
- package/dist/src/subgraphs/system/types.d.ts.map +0 -1
- /package/dist/src/{subgraphs → graphql}/analytics/index.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/env/getters.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/env/getters.js +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/env/index.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/env/index.js +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/types.js +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/utils/session.js +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/utils/user.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/auth/utils/user.js +0 -0
- /package/dist/src/{subgraphs → graphql}/drive/temp-hack-rwa-type-defs.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/drive/temp-hack-rwa-type-defs.js +0 -0
- /package/dist/src/{subgraphs → graphql}/index.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/index.js +0 -0
- /package/dist/src/{subgraphs → graphql}/system/env/getters.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/system/env/getters.js +0 -0
- /package/dist/src/{subgraphs → graphql}/system/env/index.d.ts +0 -0
- /package/dist/src/{subgraphs → graphql}/system/env/index.js +0 -0
- /package/dist/src/{subgraphs → graphql}/system/types.js +0 -0
- /package/dist/src/{subgraphs → graphql}/types.js +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from "@powerhousedao/analytics-engine-core";
|
|
2
|
+
export * from "./src/graphql/graphql-manager.js";
|
|
3
|
+
export * from "./src/graphql/index.js";
|
|
2
4
|
export * from "./src/server.js";
|
|
3
|
-
export * from "./src/subgraphs/index.js";
|
|
4
|
-
export * from "./src/subgraphs/manager.js";
|
|
5
5
|
export * from "./src/types.js";
|
|
6
6
|
export * from "./src/utils/index.js";
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAC;AACrD,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAC;AACrD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export * from "@powerhousedao/analytics-engine-core";
|
|
2
|
+
export * from "./src/graphql/graphql-manager.js";
|
|
3
|
+
export * from "./src/graphql/index.js";
|
|
2
4
|
export * from "./src/server.js";
|
|
3
|
-
export * from "./src/subgraphs/index.js";
|
|
4
|
-
export * from "./src/subgraphs/manager.js";
|
|
5
5
|
export * from "./src/types.js";
|
|
6
6
|
export * from "./src/utils/index.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/graphql/analytics/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAC7F,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,cAAc,EAGf,MAAM,yCAAyC,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9D,qBAAa,iBAAkB,SAAQ,QAAQ;;IAC7C,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;IAiBxB,OAAO;CA4Ed"}
|
|
@@ -14,7 +14,7 @@ export class AnalyticsSubgraph extends Subgraph {
|
|
|
14
14
|
super(args);
|
|
15
15
|
this.analyticsStore = args.analyticsStore;
|
|
16
16
|
this.analyticsModel = new AnalyticsModel(new AnalyticsQueryEngine(this.analyticsStore));
|
|
17
|
-
args.
|
|
17
|
+
args.graphqlManager.setAdditionalContextFields({
|
|
18
18
|
dataSources: {
|
|
19
19
|
db: {
|
|
20
20
|
Analytics: this.analyticsModel,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getters.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/auth/env/getters.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,QAAO,MAO/B,CAAC;AAEF,eAAO,MAAM,sBAAsB,QAAO,MAkBzC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/auth/env/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,QAAiB,CAAC;AACzC,eAAO,MAAM,IAAI,QAA6B,CAAC;AAC/C,eAAO,MAAM,aAAa,SAAyC,CAAC;AACpE,eAAO,MAAM,mBAAmB,SAA2C,CAAC;AAC5E,eAAO,MAAM,qBAAqB,EAAE,MAAiC,CAAC;AACtE,eAAO,MAAM,UAAU,QAAuD,CAAC;AAC/E,eAAO,MAAM,YAAY,UAGxB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Subgraph } from "#graphql/index.js";
|
|
2
|
+
import { type GraphQLResolverMap } from "@apollo/subgraph/dist/schema-helper/resolverMap.js";
|
|
3
|
+
import { type AuthContext } from "./types.js";
|
|
4
|
+
export declare class AuthSubgraph extends Subgraph {
|
|
5
|
+
#private;
|
|
6
|
+
name: string;
|
|
7
|
+
typeDefs: import("graphql").DocumentNode;
|
|
8
|
+
resolvers: GraphQLResolverMap<AuthContext>;
|
|
9
|
+
onSetup(): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/graphql/auth/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAM7F,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,YAAY,CAAC;AASpB,qBAAa,YAAa,SAAQ,QAAQ;;IACxC,IAAI,SAAU;IACd,QAAQ,iCAkDN;IAEF,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CA8KxC;IAEI,OAAO;CAyEd"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Subgraph } from "#
|
|
1
|
+
import { Subgraph } from "#graphql/index.js";
|
|
2
2
|
import { generateUUID } from "document-drive";
|
|
3
3
|
import { GraphQLError } from "graphql";
|
|
4
4
|
import { gql } from "graphql-tag";
|
|
@@ -194,7 +194,7 @@ export class AuthSubgraph extends Subgraph {
|
|
|
194
194
|
async onSetup() {
|
|
195
195
|
await super.onSetup();
|
|
196
196
|
await this.#createTables();
|
|
197
|
-
this.
|
|
197
|
+
this.graphqlManager.setAdditionalContextFields({
|
|
198
198
|
session: async (ctx) => {
|
|
199
199
|
const bearerToken = ctx.headers.authorization?.split(" ")[1];
|
|
200
200
|
if (!bearerToken) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/graphql/auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG;IAClC,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/auth/utils/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAYlC,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,WACI,CAAC;AA4B9C,eAAO,MAAM,WAAW,GACtB,OAAO,MAAM,KACZ;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,SAiB1B,CAAC;AAkBF,wBAAgB,4BAA4B,CAC1C,cAAc,EAAE,MAAM,EACtB,cAAc,CAAC,EAAE,MAAM,QAmBxB;AAED,eAAO,MAAM,uBAAuB,GAClC,IAAI,EAAE,EACN,SAAS,YAAY,EACrB,QAAQ,MAAM,EACd,eAAe,OAAO;;;EAwBvB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { JWT_EXPIRATION_PERIOD, JWT_SECRET
|
|
1
|
+
import { JWT_EXPIRATION_PERIOD, JWT_SECRET } from "#graphql/auth/env/index.js";
|
|
2
2
|
import { randomUUID } from "crypto";
|
|
3
3
|
import { GraphQLError } from "graphql";
|
|
4
4
|
import jwt from "jsonwebtoken";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/auth/utils/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,MAAM,CAAC;AAExC,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAO3C,eAAO,MAAM,2BAA2B,GACtC,IAAI,EAAE,EACN,QAAQ,MAAM,EACd,yBAAsB;;;EAcvB,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,IAAI,EAAE,EACN,QAAQ,MAAM,EACd,SAAS;IACP,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,EACD,uBAAqB;;;EAGtB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,IAAI,EAAE,EAAE,QAAQ,MAAM,uBAExD,CAAC;AAEF,eAAO,MAAM,MAAM,GAAU,IAAI,EAAE,EAAE,WAAW,MAAM,EAAE,QAAQ,MAAM,kBAwBrE,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,SAAS,OAAO,qBAYlD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,IAAI,EAAE,EACN,SAAS,MAAM,EACf,QAAQ,MAAM,qBAoCf,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,eAAe,WAAW,EAC1B,WAAW,MAAM,yCAWlB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/auth/utils/user.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAElC,UAAU,IAAI;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,eAAO,MAAM,UAAU,GAAU,IAAI,EAAE,EAAE,MAAM,IAAI,kBAwBlD,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,IAAI,EAAE,EAAE,SAAS,MAAM,kBAGpD,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import { type ISubgraph, type SubgraphArgs } from "#
|
|
1
|
+
import { type GraphQLManager } from "#graphql/graphql-manager.js";
|
|
2
|
+
import { type ISubgraph, type SubgraphArgs } from "#graphql/types.js";
|
|
3
3
|
import { type Db } from "#types.js";
|
|
4
4
|
import { type IDocumentDriveServer } from "document-drive";
|
|
5
5
|
import { type DocumentNode } from "graphql";
|
|
@@ -9,7 +9,7 @@ export declare class Subgraph implements ISubgraph {
|
|
|
9
9
|
resolvers: Record<string, any>;
|
|
10
10
|
typeDefs: DocumentNode;
|
|
11
11
|
reactor: IDocumentDriveServer;
|
|
12
|
-
|
|
12
|
+
graphqlManager: GraphQLManager;
|
|
13
13
|
operationalStore: Db;
|
|
14
14
|
constructor(args: SubgraphArgs);
|
|
15
15
|
onSetup(): Promise<void>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/graphql/base/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,qBAAa,QAAS,YAAW,SAAS;IACxC,IAAI,SAAa;IACjB,IAAI,SAAM;IACV,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAI5B;IACF,QAAQ,EAAE,YAAY,CAIpB;IACF,OAAO,EAAE,oBAAoB,CAAC;IAC9B,cAAc,EAAE,cAAc,CAAC;IAC/B,gBAAgB,EAAE,EAAE,CAAC;gBACT,IAAI,EAAE,YAAY;IAKxB,OAAO;CAGd"}
|
|
@@ -13,11 +13,11 @@ export class Subgraph {
|
|
|
13
13
|
}
|
|
14
14
|
`;
|
|
15
15
|
reactor;
|
|
16
|
-
|
|
16
|
+
graphqlManager;
|
|
17
17
|
operationalStore;
|
|
18
18
|
constructor(args) {
|
|
19
19
|
this.reactor = args.reactor;
|
|
20
|
-
this.
|
|
20
|
+
this.graphqlManager = args.graphqlManager;
|
|
21
21
|
this.operationalStore = args.operationalStore;
|
|
22
22
|
}
|
|
23
23
|
async onSetup() {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Subgraph } from "#
|
|
2
|
-
import { type Context, type SubgraphArgs } from "#
|
|
1
|
+
import { Subgraph } from "#graphql/base/index.js";
|
|
2
|
+
import { type Context, type SubgraphArgs } from "#graphql/types.js";
|
|
3
3
|
import { type GraphQLResolverMap } from "@apollo/subgraph/dist/schema-helper/resolverMap.js";
|
|
4
4
|
export declare class DriveSubgraph extends Subgraph {
|
|
5
5
|
private logger;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/graphql/drive/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOpE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,oDAAoD,CAAC;AAyB7F,qBAAa,aAAc,SAAQ,QAAQ;IACzC,OAAO,CAAC,MAAM,CAGX;gBAES,IAAI,EAAE,YAAY;IAM9B,IAAI,SAAc;IAClB,QAAQ,iCAsJN;IAEF,SAAS,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAoPpC;CACH"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Subgraph } from "#
|
|
1
|
+
import { Subgraph } from "#graphql/base/index.js";
|
|
2
2
|
import { processAcknowledge, processGetStrands, processPushUpdate, } from "#sync/utils.js";
|
|
3
3
|
import { pascalCase } from "change-case";
|
|
4
4
|
import { childLogger, generateUUID, PullResponderTransmitter, } from "document-drive";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"temp-hack-rwa-type-defs.d.ts","sourceRoot":"","sources":["../../../../src/graphql/drive/temp-hack-rwa-type-defs.ts"],"names":[],"mappings":"AAAA,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAEzB,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,OAAO,EAAE;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7C,GAAG,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C,CAAC;AACF,MAAM,MAAM,KAAK,GAAG,IAAI,GAAG,WAAW,CAAC;AAEvC,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,aAAa,CAAC;AAC/C,MAAM,MAAM,IAAI,GAAG;IACjB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IACtC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;CAC7B,CAAC;AACF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3C,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5B,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/C,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5C,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1C,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7C,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5C,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1C,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/B,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;CAC7B,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { type IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
|
3
3
|
import { type IDocumentDriveServer } from "document-drive";
|
|
4
4
|
import type express from "express";
|
|
5
5
|
import { type Subgraph, type SubgraphClass } from "./index.js";
|
|
6
|
-
export declare class
|
|
6
|
+
export declare class GraphQLManager {
|
|
7
7
|
#private;
|
|
8
8
|
private readonly path;
|
|
9
9
|
private readonly app;
|
|
@@ -21,4 +21,4 @@ export declare class SubgraphManager {
|
|
|
21
21
|
setAdditionalContextFields(fields: Record<string, any>): void;
|
|
22
22
|
setSupergraph(supergraph: string, subgraphs: Subgraph[]): void;
|
|
23
23
|
}
|
|
24
|
-
//# sourceMappingURL=manager.d.ts.map
|
|
24
|
+
//# sourceMappingURL=graphql-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql-manager.d.ts","sourceRoot":"","sources":["../../../src/graphql/graphql-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,WAAW,CAAC;AAOpC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAG5E,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAMnC,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAG/D,qBAAa,cAAc;;IAKvB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAT5B,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,aAAa,CAA2B;gBAG7B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,OAAO,CAAC,OAAO,EACpB,OAAO,EAAE,oBAAoB,EAC7B,gBAAgB,EAAE,EAAE,EACpB,cAAc,EAAE,eAAe,EAC/B,SAAS,GAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAa;IAS3D,IAAI;IAmBJ,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,SAAK,EAAE,IAAI,SAAK;IAsBpE,YAAY;IAQlB,0BAA0B,4BAExB;IAEF,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAItD,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;CA8HxD"}
|
|
@@ -11,7 +11,7 @@ import { AnalyticsSubgraph } from "./analytics/index.js";
|
|
|
11
11
|
import { AuthSubgraph } from "./auth/index.js";
|
|
12
12
|
import { DriveSubgraph } from "./drive/index.js";
|
|
13
13
|
import { SystemSubgraph } from "./system/index.js";
|
|
14
|
-
export class
|
|
14
|
+
export class GraphQLManager {
|
|
15
15
|
path;
|
|
16
16
|
app;
|
|
17
17
|
reactor;
|
|
@@ -50,7 +50,7 @@ export class SubgraphManager {
|
|
|
50
50
|
operationalStore: this.operationalStore,
|
|
51
51
|
analyticsStore: this.analyticsStore,
|
|
52
52
|
reactor: this.reactor,
|
|
53
|
-
|
|
53
|
+
graphqlManager: this,
|
|
54
54
|
path,
|
|
55
55
|
});
|
|
56
56
|
await subgraphInstance.onSetup();
|
|
@@ -79,6 +79,13 @@ export class SubgraphManager {
|
|
|
79
79
|
}
|
|
80
80
|
setSupergraph(supergraph, subgraphs) {
|
|
81
81
|
this.subgraphs.set(supergraph, subgraphs);
|
|
82
|
+
const globalSubgraphs = this.subgraphs.get("graphql");
|
|
83
|
+
if (globalSubgraphs) {
|
|
84
|
+
this.subgraphs.set("graphql", [...globalSubgraphs, ...subgraphs]);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
this.subgraphs.set("graphql", subgraphs);
|
|
88
|
+
}
|
|
82
89
|
this.updateRouter();
|
|
83
90
|
}
|
|
84
91
|
#createApolloServer(schema) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphql/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,KAAK,iBAAiB,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,cAAc,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG,OAAO,QAAQ,CAAC;AAC5C,wBAAgB,eAAe,CAC7B,SAAS,EAAE,OAAO,GACjB,SAAS,IAAI,aAAa,CAW5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"playground.d.ts","sourceRoot":"","sources":["../../../src/graphql/playground.ts"],"names":[],"mappings":"AAAA,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GACnC,MAAM,CAwER"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
export function renderGraphqlPlayground(url, query, headers = {}) {
|
|
2
|
+
return `<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
<head>
|
|
5
|
+
<title>GraphiQL</title>
|
|
6
|
+
<style>
|
|
7
|
+
body {
|
|
8
|
+
height: 100%;
|
|
9
|
+
margin: 0;
|
|
10
|
+
width: 100%;
|
|
11
|
+
overflow: hidden;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
#graphiql {
|
|
15
|
+
height: 100vh;
|
|
16
|
+
}
|
|
17
|
+
</style>
|
|
18
|
+
<script
|
|
19
|
+
crossorigin
|
|
20
|
+
src="https://unpkg.com/react@18/umd/react.production.min.js"
|
|
21
|
+
></script>
|
|
22
|
+
<script
|
|
23
|
+
crossorigin
|
|
24
|
+
src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"
|
|
25
|
+
></script>
|
|
26
|
+
<script
|
|
27
|
+
src="https://unpkg.com/graphiql/graphiql.min.js"
|
|
28
|
+
type="application/javascript"
|
|
29
|
+
></script>
|
|
30
|
+
<link rel="stylesheet" href="https://unpkg.com/graphiql/graphiql.min.css" />
|
|
31
|
+
<script
|
|
32
|
+
src="https://unpkg.com/@graphiql/plugin-explorer/dist/index.umd.js"
|
|
33
|
+
crossorigin
|
|
34
|
+
></script>
|
|
35
|
+
<link
|
|
36
|
+
rel="stylesheet"
|
|
37
|
+
href="https://unpkg.com/@graphiql/plugin-explorer/dist/style.css"
|
|
38
|
+
/>
|
|
39
|
+
</head>
|
|
40
|
+
|
|
41
|
+
<body>
|
|
42
|
+
<div id="graphiql">Loading...</div>
|
|
43
|
+
<script>
|
|
44
|
+
var fetcher = GraphiQL.createFetcher({
|
|
45
|
+
url: '${url}',
|
|
46
|
+
headers: ${JSON.stringify(headers)}
|
|
47
|
+
});
|
|
48
|
+
var defaultQuery = ${query ? `\`${query}\`` : undefined};
|
|
49
|
+
|
|
50
|
+
if (defaultQuery) {
|
|
51
|
+
var sessionQuery = localStorage.getItem("graphiql:query");
|
|
52
|
+
if (sessionQuery) {
|
|
53
|
+
localStorage.setItem("graphiql:query", defaultQuery);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
var explorerPlugin = GraphiQLPluginExplorer.explorerPlugin();
|
|
58
|
+
|
|
59
|
+
function GraphiQLWithExplorer() {
|
|
60
|
+
return React.createElement(GraphiQL, {
|
|
61
|
+
fetcher: fetcher,
|
|
62
|
+
defaultEditorToolsVisibility: true,
|
|
63
|
+
plugins: [explorerPlugin],
|
|
64
|
+
defaultQuery
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
const root = ReactDOM.createRoot(document.getElementById('graphiql'));
|
|
69
|
+
root.render(React.createElement(GraphiQLWithExplorer));
|
|
70
|
+
</script>
|
|
71
|
+
</body>
|
|
72
|
+
</html>`;
|
|
73
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getters.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/system/env/getters.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,QAAO,MAAM,EAMtC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/graphql/system/env/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,UAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/graphql/system/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,IAAI,SAAY;IAEhB,QAAQ,iCAqBN;IAEF,SAAS;;;;;+BAQK,OAAO,QACT,UAAU,GAAG;gBAAE,eAAe,CAAC,EAAE,MAAM,CAAA;aAAE,OAC1C,aAAa;;MAkBtB;IAEI,OAAO;CAgBd"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Subgraph } from "#
|
|
1
|
+
import { Subgraph } from "#graphql/base/index.js";
|
|
2
2
|
import { GraphQLError } from "graphql";
|
|
3
3
|
import { gql } from "graphql-tag";
|
|
4
4
|
export class SystemSubgraph extends Subgraph {
|
|
@@ -50,7 +50,7 @@ export class SystemSubgraph extends Subgraph {
|
|
|
50
50
|
};
|
|
51
51
|
async onSetup() {
|
|
52
52
|
await super.onSetup();
|
|
53
|
-
this.
|
|
53
|
+
this.graphqlManager.setAdditionalContextFields({
|
|
54
54
|
isAdmin: (ctx) => {
|
|
55
55
|
const adminUsers = process.env.ADMIN_USERS?.split(",")
|
|
56
56
|
.map((user) => user.trim())
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/graphql/system/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG;IACxC,OAAO,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC;CACxC,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { type IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
|
3
3
|
import { type IDocumentDriveServer } from "document-drive";
|
|
4
4
|
import { type DocumentNode } from "graphql";
|
|
5
5
|
import type { IncomingHttpHeaders } from "http";
|
|
6
|
-
import { type
|
|
6
|
+
import { type GraphQLManager } from "./graphql-manager.js";
|
|
7
7
|
export type Context = {
|
|
8
8
|
driveServer: IDocumentDriveServer;
|
|
9
9
|
driveId?: string;
|
|
@@ -23,7 +23,7 @@ export type SubgraphArgs = {
|
|
|
23
23
|
reactor: IDocumentDriveServer;
|
|
24
24
|
operationalStore: Db;
|
|
25
25
|
analyticsStore: IAnalyticsStore;
|
|
26
|
-
|
|
26
|
+
graphqlManager: GraphQLManager;
|
|
27
27
|
path?: string;
|
|
28
28
|
};
|
|
29
29
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/graphql/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAChD,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,MAAM,OAAO,GAAG;IACpB,WAAW,EAAE,oBAAoB,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,EAAE,EAAE,OAAO,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,gBAAgB,EAAE,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,oBAAoB,CAAC;IAC9B,gBAAgB,EAAE,EAAE,CAAC;IACrB,cAAc,EAAE,eAAe,CAAC;IAChC,cAAc,EAAE,cAAc,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare const installPackages: (packages: string[]) => Promise<void>;
|
|
2
2
|
export declare const readManifest: () => string;
|
|
3
|
-
import { type SubgraphClass } from "@powerhousedao/reactor-api";
|
|
4
|
-
import { type Listener } from "document-drive/server/types";
|
|
3
|
+
import { ProcessorFactory, type SubgraphClass } from "@powerhousedao/reactor-api";
|
|
5
4
|
import { type DocumentModelModule } from "document-model";
|
|
6
5
|
interface IPackagesManager {
|
|
7
6
|
onDocumentModelsChange(handler: (documentModels: Record<string, DocumentModelModule[]>) => void): void;
|
|
@@ -13,30 +12,30 @@ type IPackagesManagerOptions = {
|
|
|
13
12
|
};
|
|
14
13
|
export declare function loadDependency(packageName: string, subPath: string): Promise<unknown>;
|
|
15
14
|
export declare function getUniqueDocumentModels(...documentModels: DocumentModelModule[][]): DocumentModelModule[];
|
|
15
|
+
export type PackageManagerResult = {
|
|
16
|
+
documentModels?: DocumentModelModule[];
|
|
17
|
+
subgraphs?: Map<string, SubgraphClass[]>;
|
|
18
|
+
processors?: Map<string, ProcessorFactory>;
|
|
19
|
+
};
|
|
16
20
|
export declare class PackagesManager implements IPackagesManager {
|
|
17
21
|
protected options: IPackagesManagerOptions;
|
|
18
22
|
protected onError?: ((e: unknown) => void) | undefined;
|
|
19
23
|
private docModelsMap;
|
|
20
24
|
private subgraphsMap;
|
|
21
|
-
private
|
|
25
|
+
private processorMap;
|
|
22
26
|
private configWatcher;
|
|
23
27
|
private eventEmitter;
|
|
24
28
|
constructor(options: IPackagesManagerOptions, onError?: ((e: unknown) => void) | undefined);
|
|
25
|
-
init(): Promise<
|
|
26
|
-
documentModels: DocumentModelModule[];
|
|
27
|
-
subgraphs: Map<string, typeof import("@powerhousedao/reactor-api").Subgraph[]>;
|
|
28
|
-
listeners: Listener[];
|
|
29
|
-
} | undefined>;
|
|
29
|
+
init(): Promise<PackageManagerResult>;
|
|
30
30
|
private loadPackages;
|
|
31
31
|
private loadFromConfigFile;
|
|
32
32
|
private initConfigFile;
|
|
33
33
|
private updatePackagesMap;
|
|
34
34
|
private updateSubgraphsMap;
|
|
35
|
-
private
|
|
36
|
-
private getUniqueListeners;
|
|
35
|
+
private updateProcessorsMap;
|
|
37
36
|
onDocumentModelsChange(handler: (documentModels: Record<string, DocumentModelModule[]>) => void): void;
|
|
38
37
|
onSubgraphsChange(handler: (subgraphs: Map<string, SubgraphClass[]>) => void): void;
|
|
39
|
-
|
|
38
|
+
onProcessorsChange(handler: (processors: Map<string, ProcessorFactory>) => void): void;
|
|
40
39
|
}
|
|
41
40
|
export {};
|
|
42
41
|
//# sourceMappingURL=package-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/package-manager.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,eAAe,GAAU,UAAU,MAAM,EAAE,kBAIvD,CAAC;AAEF,eAAO,MAAM,YAAY,cAGxB,CAAC;AAGF,OAAO,
|
|
1
|
+
{"version":3,"file":"package-manager.d.ts","sourceRoot":"","sources":["../../src/package-manager.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,eAAe,GAAU,UAAU,MAAM,EAAE,kBAIvD,CAAC;AAEF,eAAO,MAAM,YAAY,cAGxB,CAAC;AAGF,OAAO,EACL,gBAAgB,EAChB,KAAK,aAAa,EACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,UAAU,gBAAgB;IACxB,sBAAsB,CACpB,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,KAAK,IAAI,GACvE,IAAI,CAAC;CACT;AAED,KAAK,uBAAuB,GAAG;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AAU/E,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAQlB;AA+DD,wBAAgB,uBAAuB,CACrC,GAAG,cAAc,EAAE,mBAAmB,EAAE,EAAE,GACzC,mBAAmB,EAAE,CAUvB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,cAAc,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACvC,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACzC,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC5C,CAAC;AAEF,qBAAa,eAAgB,YAAW,gBAAgB;IAYpD,SAAS,CAAC,OAAO,EAAE,uBAAuB;IAC1C,SAAS,CAAC,OAAO,CAAC,GAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI;IAZ1C,OAAO,CAAC,YAAY,CAA4C;IAChE,OAAO,CAAC,YAAY,CAAsC;IAC1D,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,YAAY,CAIf;gBAGO,OAAO,EAAE,uBAAuB,EAChC,OAAO,CAAC,GAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,aAAA;IAK7B,IAAI,IAAI,OAAO,CAAC,oBAAoB,CAAC;YAcpC,YAAY;YAqBZ,kBAAkB;IAkBhC,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,mBAAmB;IAa3B,sBAAsB,CACpB,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,KAAK,IAAI,GACvE,IAAI;IAIP,iBAAiB,CACf,OAAO,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,KAAK,IAAI,GACzD,IAAI;IAIP,kBAAkB,CAChB,OAAO,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,IAAI,GAC3D,IAAI;CAGR"}
|
|
@@ -60,16 +60,16 @@ async function loadPackagesSubgraphs(packages) {
|
|
|
60
60
|
}
|
|
61
61
|
return loadedPackages;
|
|
62
62
|
}
|
|
63
|
-
async function
|
|
63
|
+
async function loadPackagesProcessors(packages) {
|
|
64
64
|
const loadedPackages = new Map();
|
|
65
65
|
for (const pkg of packages) {
|
|
66
66
|
const pkgModule = (await loadDependency(pkg, "processors"));
|
|
67
67
|
if (pkgModule) {
|
|
68
|
-
console.log(` ➜ Loaded
|
|
68
|
+
console.log(` ➜ Loaded Processor Factory from: ${pkg}`);
|
|
69
69
|
loadedPackages.set(pkg, pkgModule);
|
|
70
70
|
}
|
|
71
71
|
else {
|
|
72
|
-
console.warn(` ➜ No
|
|
72
|
+
console.warn(` ➜ No Processor Factory found: ${pkg}`);
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
return loadedPackages;
|
|
@@ -88,7 +88,7 @@ export class PackagesManager {
|
|
|
88
88
|
onError;
|
|
89
89
|
docModelsMap = new Map();
|
|
90
90
|
subgraphsMap = new Map();
|
|
91
|
-
|
|
91
|
+
processorMap = new Map();
|
|
92
92
|
configWatcher;
|
|
93
93
|
eventEmitter = new EventEmitter();
|
|
94
94
|
constructor(options, onError) {
|
|
@@ -103,19 +103,24 @@ export class PackagesManager {
|
|
|
103
103
|
else if ("configFile" in this.options) {
|
|
104
104
|
return await this.initConfigFile(this.options.configFile);
|
|
105
105
|
}
|
|
106
|
+
return {
|
|
107
|
+
documentModels: [],
|
|
108
|
+
subgraphs: new Map(),
|
|
109
|
+
processors: new Map(),
|
|
110
|
+
};
|
|
106
111
|
}
|
|
107
112
|
async loadPackages(packages) {
|
|
108
113
|
// install packages
|
|
109
114
|
const packagesMap = await loadPackagesDocumentModels(packages);
|
|
110
115
|
const subgraphsMap = await loadPackagesSubgraphs(packages);
|
|
111
|
-
const
|
|
116
|
+
const processorsMap = await loadPackagesProcessors(packages);
|
|
112
117
|
this.updatePackagesMap(packagesMap);
|
|
113
118
|
this.updateSubgraphsMap(subgraphsMap);
|
|
114
|
-
this.
|
|
119
|
+
this.updateProcessorsMap(processorsMap);
|
|
115
120
|
return {
|
|
116
121
|
documentModels: getUniqueDocumentModels(...Array.from(packagesMap.values())),
|
|
117
122
|
subgraphs: subgraphsMap,
|
|
118
|
-
|
|
123
|
+
processors: processorsMap,
|
|
119
124
|
};
|
|
120
125
|
}
|
|
121
126
|
async loadFromConfigFile(configFile) {
|
|
@@ -169,25 +174,16 @@ export class PackagesManager {
|
|
|
169
174
|
this.subgraphsMap = subgraphsMap;
|
|
170
175
|
this.eventEmitter.emit("subgraphsChange", subgraphsMap);
|
|
171
176
|
}
|
|
172
|
-
|
|
173
|
-
const oldPackages = Array.from(this.
|
|
174
|
-
const newPackages = Array.from(
|
|
177
|
+
updateProcessorsMap(processorsMap) {
|
|
178
|
+
const oldPackages = Array.from(this.processorMap.keys());
|
|
179
|
+
const newPackages = Array.from(processorsMap.keys());
|
|
175
180
|
oldPackages
|
|
176
181
|
.filter((pkg) => !newPackages.includes(pkg))
|
|
177
182
|
.forEach((pkg) => {
|
|
178
|
-
console.log("> Removed
|
|
183
|
+
console.log("> Removed Processor Factories from:", pkg);
|
|
179
184
|
});
|
|
180
|
-
this.
|
|
181
|
-
this.eventEmitter.emit("
|
|
182
|
-
}
|
|
183
|
-
getUniqueListeners(listeners) {
|
|
184
|
-
const uniqueListeners = new Map();
|
|
185
|
-
for (const packageListeners of listeners) {
|
|
186
|
-
for (const listener of packageListeners) {
|
|
187
|
-
uniqueListeners.set(listener.listenerId, listener);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
return Array.from(uniqueListeners.values());
|
|
185
|
+
this.processorMap = processorsMap;
|
|
186
|
+
this.eventEmitter.emit("processorsChange", processorsMap);
|
|
191
187
|
}
|
|
192
188
|
onDocumentModelsChange(handler) {
|
|
193
189
|
this.eventEmitter.on("documentModelsChange", handler);
|
|
@@ -195,7 +191,7 @@ export class PackagesManager {
|
|
|
195
191
|
onSubgraphsChange(handler) {
|
|
196
192
|
this.eventEmitter.on("subgraphsChange", handler);
|
|
197
193
|
}
|
|
198
|
-
|
|
199
|
-
this.eventEmitter.on("
|
|
194
|
+
onProcessorsChange(handler) {
|
|
195
|
+
this.eventEmitter.on("processorsChange", handler);
|
|
200
196
|
}
|
|
201
197
|
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
2
|
+
import { IDocumentDriveServer, IListenerManager } from "document-drive/server/types";
|
|
3
|
+
import { Db, ProcessorFactory } from "../index.js";
|
|
4
|
+
export interface IProcessorManager {
|
|
5
|
+
/**
|
|
6
|
+
* Registers a processor factory for a given identifier. This will create
|
|
7
|
+
* processors for all drives that have already been registered.
|
|
8
|
+
*
|
|
9
|
+
* @param identifier Any identifier to associate with the factory.
|
|
10
|
+
* @param factory The factory to register.
|
|
11
|
+
*/
|
|
12
|
+
registerFactory(identifier: string, factory: ProcessorFactory): Promise<void>;
|
|
13
|
+
/**
|
|
14
|
+
* Unregisters a processor factory for a given identifier. This will remove
|
|
15
|
+
* all listeners that were created by the factory.
|
|
16
|
+
*
|
|
17
|
+
* @param identifier The identifier to unregister.
|
|
18
|
+
*/
|
|
19
|
+
unregisterFactory(identifier: string): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Registers a drive with the processor manager. This will create processors
|
|
22
|
+
* for the drive for all factories that have already been registered.
|
|
23
|
+
*
|
|
24
|
+
* @param driveId The drive to register.
|
|
25
|
+
*/
|
|
26
|
+
registerDrive(driveId: string): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
export declare class ProcessorManager implements IProcessorManager {
|
|
29
|
+
private listeners;
|
|
30
|
+
private drive;
|
|
31
|
+
private operationalStore;
|
|
32
|
+
private analyticsStore;
|
|
33
|
+
private idToFactory;
|
|
34
|
+
private identifierToListeners;
|
|
35
|
+
constructor(listeners: IListenerManager, drive: IDocumentDriveServer, operationalStore: Db, analyticsStore: IAnalyticsStore);
|
|
36
|
+
registerFactory(identifier: string, factory: ProcessorFactory): Promise<void>;
|
|
37
|
+
unregisterFactory(identifier: string): Promise<void>;
|
|
38
|
+
registerDrive(driveId: string): Promise<void>;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=processor-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"processor-manager.d.ts","sourceRoot":"","sources":["../../src/processor-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAEvE,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAEjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC;;;;;;OAMG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E;;;;;OAKG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD;;;;;OAKG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED,qBAAa,gBAAiB,YAAW,iBAAiB;IAKtD,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IAPxB,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,qBAAqB,CAAiC;gBAGpD,SAAS,EAAE,gBAAgB,EAC3B,KAAK,EAAE,oBAAoB,EAC3B,gBAAgB,EAAE,EAAE,EACpB,cAAc,EAAE,eAAe;IAKnC,eAAe,CACnB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,IAAI,CAAC;IAUV,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcpD,aAAa,CAAC,OAAO,EAAE,MAAM;CAoCpC"}
|