@powerhousedao/reactor-api 5.0.3 → 5.0.5
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 +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/src/graphql/drive-subgraph.d.ts +13 -1
- package/dist/src/graphql/drive-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/drive-subgraph.js +34 -18
- package/dist/src/graphql/drive-subgraph.js.map +1 -1
- package/dist/src/graphql/graphql-manager.d.ts.map +1 -1
- package/dist/src/graphql/graphql-manager.js +3 -2
- package/dist/src/graphql/graphql-manager.js.map +1 -1
- package/dist/src/graphql/reactor/validation.d.ts +38 -38
- package/dist/src/graphql/system/system-subgraph.d.ts +17 -1
- package/dist/src/graphql/system/system-subgraph.d.ts.map +1 -1
- package/dist/src/graphql/system/system-subgraph.js +34 -0
- package/dist/src/graphql/system/system-subgraph.js.map +1 -1
- package/dist/src/graphql/types.d.ts +59 -1
- package/dist/src/graphql/types.d.ts.map +1 -1
- package/dist/src/graphql/utils.d.ts +24 -1
- package/dist/src/graphql/utils.d.ts.map +1 -1
- package/dist/src/graphql/utils.js +87 -0
- package/dist/src/graphql/utils.js.map +1 -1
- package/dist/src/packages/types.d.ts +4 -4
- package/dist/src/packages/types.d.ts.map +1 -1
- package/dist/src/packages/util.d.ts +1 -1
- package/dist/src/packages/util.d.ts.map +1 -1
- package/dist/src/packages/util.js +22 -6
- package/dist/src/packages/util.js.map +1 -1
- package/dist/src/packages/vite-loader.d.ts +4 -3
- package/dist/src/packages/vite-loader.d.ts.map +1 -1
- package/dist/src/packages/vite-loader.js +24 -12
- package/dist/src/packages/vite-loader.js.map +1 -1
- package/dist/src/server.d.ts +23 -7
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +86 -28
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/auth.service.d.ts +2 -0
- package/dist/src/services/auth.service.d.ts.map +1 -1
- package/dist/src/services/auth.service.js +9 -3
- package/dist/src/services/auth.service.js.map +1 -1
- package/dist/src/utils/create-schema.d.ts +2 -0
- package/dist/src/utils/create-schema.d.ts.map +1 -1
- package/dist/src/utils/create-schema.js +16 -1
- package/dist/src/utils/create-schema.js.map +1 -1
- package/dist/test/reactor-resolvers.test.js +22 -2
- package/dist/test/reactor-resolvers.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +34 -33
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { IAnalyticsStore } from "@powerhousedao/analytics-engine-core";
|
|
2
2
|
import type { IReactorClient } from "@powerhousedao/reactor";
|
|
3
3
|
import type { GraphQLManager } from "@powerhousedao/reactor-api";
|
|
4
|
-
import type { IDocumentDriveServer, IRelationalDb } from "document-drive";
|
|
4
|
+
import type { DocumentDriveGlobalState, IDocumentDriveServer, IRelationalDb } from "document-drive";
|
|
5
|
+
import type { PHDocument } from "document-model";
|
|
5
6
|
import type { DocumentNode } from "graphql";
|
|
6
7
|
import type { IncomingHttpHeaders } from "http";
|
|
7
8
|
import type { BaseSubgraph } from "./base-subgraph.js";
|
|
@@ -9,6 +10,7 @@ export type SubgraphClass = typeof BaseSubgraph;
|
|
|
9
10
|
export type Context = {
|
|
10
11
|
driveServer: IDocumentDriveServer;
|
|
11
12
|
driveId?: string;
|
|
13
|
+
document?: PHDocument;
|
|
12
14
|
headers: IncomingHttpHeaders;
|
|
13
15
|
db: unknown;
|
|
14
16
|
isGuest?: (address: string) => boolean;
|
|
@@ -37,4 +39,60 @@ export type SubgraphArgs = {
|
|
|
37
39
|
graphqlManager: GraphQLManager;
|
|
38
40
|
path?: string;
|
|
39
41
|
};
|
|
42
|
+
export type GqlSigner = {
|
|
43
|
+
user: {
|
|
44
|
+
address: string;
|
|
45
|
+
networkId: string;
|
|
46
|
+
chainId: number;
|
|
47
|
+
};
|
|
48
|
+
app: {
|
|
49
|
+
name: string;
|
|
50
|
+
key: string;
|
|
51
|
+
};
|
|
52
|
+
signatures: string[];
|
|
53
|
+
};
|
|
54
|
+
export type GqlOperationContext = {
|
|
55
|
+
signer: GqlSigner | undefined;
|
|
56
|
+
};
|
|
57
|
+
export type GqlSignerUser = {
|
|
58
|
+
address: string;
|
|
59
|
+
networkId: string;
|
|
60
|
+
chainId: number;
|
|
61
|
+
};
|
|
62
|
+
export type GqlSignerApp = {
|
|
63
|
+
name: string;
|
|
64
|
+
key: string;
|
|
65
|
+
};
|
|
66
|
+
export type GqlOperation = {
|
|
67
|
+
id: string;
|
|
68
|
+
type: string;
|
|
69
|
+
index: number;
|
|
70
|
+
timestampUtcMs: string;
|
|
71
|
+
hash: string;
|
|
72
|
+
skip: number;
|
|
73
|
+
inputText: string;
|
|
74
|
+
error: string | undefined;
|
|
75
|
+
context: GqlOperationContext;
|
|
76
|
+
};
|
|
77
|
+
export type GqlDocument = {
|
|
78
|
+
__typename?: string;
|
|
79
|
+
id: string;
|
|
80
|
+
name: string;
|
|
81
|
+
documentType: string;
|
|
82
|
+
revision: number;
|
|
83
|
+
createdAtUtcIso: string;
|
|
84
|
+
lastModifiedAtUtcIso: string;
|
|
85
|
+
operations: GqlOperation[];
|
|
86
|
+
stateJSON: JSON;
|
|
87
|
+
state: unknown;
|
|
88
|
+
initialState: unknown;
|
|
89
|
+
};
|
|
90
|
+
export type GqlDriveDocument = GqlDocument & {
|
|
91
|
+
meta: {
|
|
92
|
+
preferredEditor?: string;
|
|
93
|
+
};
|
|
94
|
+
slug: string;
|
|
95
|
+
state: DocumentDriveGlobalState;
|
|
96
|
+
initialState: DocumentDriveGlobalState;
|
|
97
|
+
};
|
|
40
98
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/graphql/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/graphql/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,26 @@
|
|
|
1
|
-
import type { SubgraphClass } from "@powerhousedao/reactor-api";
|
|
1
|
+
import type { Context, GqlDocument, GqlDriveDocument, GqlOperation, SubgraphClass } from "@powerhousedao/reactor-api";
|
|
2
|
+
import type { DocumentDriveDocument } from "document-drive";
|
|
3
|
+
import type { Operation, PHDocument } from "document-model";
|
|
2
4
|
export declare function isSubgraphClass(candidate: unknown): candidate is SubgraphClass;
|
|
5
|
+
export declare function buildGraphqlOperations(operations: Operation[], skip: number, first: number): GqlOperation[];
|
|
6
|
+
export declare function buildGraphqlOperation(operation: Operation): GqlOperation;
|
|
7
|
+
export declare function buildGraphQlDocument(doc: PHDocument): GqlDocument;
|
|
8
|
+
export declare function buildGraphQlDriveDocument(doc: DocumentDriveDocument): GqlDriveDocument;
|
|
9
|
+
export declare const IDocumentGraphql: {
|
|
10
|
+
graphql: string;
|
|
11
|
+
Query: {
|
|
12
|
+
document: (parent: unknown, args: {
|
|
13
|
+
id: string;
|
|
14
|
+
}, ctx: Context) => Promise<GqlDocument>;
|
|
15
|
+
};
|
|
16
|
+
resolvers: {
|
|
17
|
+
IDocument: {
|
|
18
|
+
__resolveType: (obj: GqlDocument, ctx: Context) => string;
|
|
19
|
+
operations: (obj: unknown, { skip, first }: {
|
|
20
|
+
skip?: number;
|
|
21
|
+
first?: number;
|
|
22
|
+
}, ctx: Context) => GqlOperation[];
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
};
|
|
3
26
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/graphql/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/graphql/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI5D,wBAAgB,eAAe,CAC7B,SAAS,EAAE,OAAO,GACjB,SAAS,IAAI,aAAa,CAW5B;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,SAAS,EAAE,EACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,YAAY,EAAE,CAEhB;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,YAAY,CAwBxE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,UAAU,GAAG,WAAW,CAgBjE;AAED,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,qBAAqB,GACzB,gBAAgB,CAWlB;AAED,eAAO,MAAM,gBAAgB;;;2BAIf,OAAO,QACT;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,OACf,OAAO,KACX,OAAO,CAAC,WAAW,CAAC;;;;iCAQA,WAAW,OAAO,OAAO;8BAYvC,OAAO,mBACc;gBAAE,IAAI,CAAC,EAAE,MAAM,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,CAAA;aAAE,OACtD,OAAO;;;CAWnB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getDocumentModelSchemaName } from "../utils/create-schema.js";
|
|
1
2
|
import { BaseSubgraph } from "./base-subgraph.js";
|
|
2
3
|
export function isSubgraphClass(candidate) {
|
|
3
4
|
if (typeof candidate !== "function")
|
|
@@ -10,4 +11,90 @@ export function isSubgraphClass(candidate) {
|
|
|
10
11
|
}
|
|
11
12
|
return false;
|
|
12
13
|
}
|
|
14
|
+
export function buildGraphqlOperations(operations, skip, first) {
|
|
15
|
+
return operations.slice(skip, skip + first).map(buildGraphqlOperation);
|
|
16
|
+
}
|
|
17
|
+
export function buildGraphqlOperation(operation) {
|
|
18
|
+
const signer = operation.action.context?.signer;
|
|
19
|
+
return {
|
|
20
|
+
id: operation.id ?? "",
|
|
21
|
+
type: operation.action.type,
|
|
22
|
+
index: operation.index,
|
|
23
|
+
timestampUtcMs: operation.timestampUtcMs,
|
|
24
|
+
hash: operation.hash,
|
|
25
|
+
skip: operation.skip,
|
|
26
|
+
inputText: typeof operation.action.input === "string"
|
|
27
|
+
? operation.action.input
|
|
28
|
+
: JSON.stringify(operation.action.input),
|
|
29
|
+
error: operation.error,
|
|
30
|
+
context: {
|
|
31
|
+
signer: signer
|
|
32
|
+
? {
|
|
33
|
+
user: signer.user,
|
|
34
|
+
app: signer.app,
|
|
35
|
+
signatures: signer.signatures.map((s) => s.join(", ")),
|
|
36
|
+
}
|
|
37
|
+
: undefined,
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
export function buildGraphQlDocument(doc) {
|
|
42
|
+
const state = "global" in doc.state ? doc.state.global : {};
|
|
43
|
+
const initialState = "global" in doc.initialState ? doc.initialState.global : {};
|
|
44
|
+
return {
|
|
45
|
+
id: doc.header.id,
|
|
46
|
+
name: doc.header.name,
|
|
47
|
+
documentType: doc.header.documentType,
|
|
48
|
+
revision: doc.header.revision.global || 0,
|
|
49
|
+
createdAtUtcIso: doc.header.createdAtUtcIso,
|
|
50
|
+
lastModifiedAtUtcIso: doc.header.lastModifiedAtUtcIso,
|
|
51
|
+
operations: [],
|
|
52
|
+
stateJSON: state,
|
|
53
|
+
state,
|
|
54
|
+
initialState,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export function buildGraphQlDriveDocument(doc) {
|
|
58
|
+
const gqlDoc = buildGraphQlDocument(doc);
|
|
59
|
+
return {
|
|
60
|
+
...gqlDoc,
|
|
61
|
+
meta: {
|
|
62
|
+
preferredEditor: doc.header.meta?.preferredEditor,
|
|
63
|
+
},
|
|
64
|
+
slug: doc.header.slug,
|
|
65
|
+
state: doc.state.global,
|
|
66
|
+
initialState: doc.state.global,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
export const IDocumentGraphql = {
|
|
70
|
+
graphql: "document(id: String!): IDocument",
|
|
71
|
+
Query: {
|
|
72
|
+
document: async (parent, args, ctx) => {
|
|
73
|
+
const doc = await ctx.driveServer.getDocument(args.id);
|
|
74
|
+
ctx.document = doc;
|
|
75
|
+
return buildGraphQlDocument(doc);
|
|
76
|
+
},
|
|
77
|
+
},
|
|
78
|
+
resolvers: {
|
|
79
|
+
IDocument: {
|
|
80
|
+
__resolveType: (obj, ctx) => {
|
|
81
|
+
if (obj.__typename) {
|
|
82
|
+
return obj.__typename;
|
|
83
|
+
}
|
|
84
|
+
const modules = ctx.driveServer.getDocumentModelModules();
|
|
85
|
+
const module = modules.find((module) => module.documentModel.global.id === obj.documentType);
|
|
86
|
+
if (!module)
|
|
87
|
+
return "GqlDocument";
|
|
88
|
+
return getDocumentModelSchemaName(module.documentModel);
|
|
89
|
+
},
|
|
90
|
+
operations: (obj, { skip = 0, first = 10 }, ctx) => {
|
|
91
|
+
const documentOperations = ctx.document?.operations;
|
|
92
|
+
const operations = documentOperations && "global" in documentOperations
|
|
93
|
+
? documentOperations.global
|
|
94
|
+
: [];
|
|
95
|
+
return buildGraphqlOperations(operations, skip, first);
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
};
|
|
13
100
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/graphql/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/graphql/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import type { SubgraphClass } from "@powerhousedao/reactor-api";
|
|
1
2
|
import type { IProcessorHostModule, ProcessorFactory } from "document-drive";
|
|
2
3
|
import type { DocumentModelModule } from "document-model";
|
|
3
|
-
import type { SubgraphClass } from "@powerhousedao/reactor-api";
|
|
4
4
|
export interface IPackageLoader {
|
|
5
|
-
loadDocumentModels(identifier: string): Promise<DocumentModelModule[]>;
|
|
6
|
-
loadSubgraphs(identifier: string): Promise<SubgraphClass[]>;
|
|
7
|
-
loadProcessors(identifier: string): Promise<((module: IProcessorHostModule) => ProcessorFactory) | null>;
|
|
5
|
+
loadDocumentModels(identifier: string, immediate?: boolean): Promise<DocumentModelModule[]>;
|
|
6
|
+
loadSubgraphs(identifier: string, immediate?: boolean): Promise<SubgraphClass[]>;
|
|
7
|
+
loadProcessors(identifier: string, immediate?: boolean): Promise<((module: IProcessorHostModule) => ProcessorFactory) | null>;
|
|
8
8
|
}
|
|
9
9
|
export interface ISubscriptionOptions {
|
|
10
10
|
debounce?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/packages/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/packages/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC7B,kBAAkB,CAChB,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAClC,aAAa,CACX,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC5B,cAAc,CACZ,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,gBAAgB,CAAC,GAAG,IAAI,CAAC,CAAC;CACzE;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE,sBAAsB,CAAC,CACrB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,cAAc,EAAE,mBAAmB,EAAE,KAAK,IAAI,EACxD,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI,CAAC;IACd,iBAAiB,CAAC,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,IAAI,EAC7C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI,CAAC;IACd,kBAAkB,CAAC,CACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,gBAAgB,CAAC,GAAG,IAAI,KACpE,IAAI,EACT,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,sBAAsB,CACpB,OAAO,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,KAAK,IAAI,GACvE,IAAI,CAAC;CACT;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACxC,UAAU,EAAE,GAAG,CACb,MAAM,EACN,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,gBAAgB,CAAC,EAAE,CACvD,CAAC;CACH,CAAC"}
|
|
@@ -20,7 +20,7 @@ export declare function loadSubgraphs(packageName: string): Promise<SubgraphsExp
|
|
|
20
20
|
* Tries to import processors from a package. This function cannot throw.
|
|
21
21
|
*/
|
|
22
22
|
export declare function loadProcessors(packageName: string): Promise<ProcessorsExport | null>;
|
|
23
|
-
export declare function debounce<T extends (...args:
|
|
23
|
+
export declare function debounce<T extends unknown[], R>(func: (...args: T) => Promise<R>, delay?: number): (immediate?: boolean, ...args: T) => Promise<R>;
|
|
24
24
|
export declare function isSubpath(parent: string, dir: string): boolean | "";
|
|
25
25
|
export {};
|
|
26
26
|
//# sourceMappingURL=util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/packages/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/packages/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAO1D,KAAK,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAChE,KAAK,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC;AACrE,KAAK,gBAAgB,GAAG;IACtB,gBAAgB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,gBAAgB,CAAC;CACtE,CAAC;AAIF,eAAO,MAAM,eAAe,GAAU,UAAU,MAAM,EAAE,kBAIvD,CAAC;AAEF,eAAO,MAAM,YAAY,cAGxB,CAAC;AAEF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAEtC;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAEjC;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAElC;AAmDD,wBAAgB,QAAQ,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,EAC7C,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAChC,KAAK,SAAM,IAGH,mBAAiB,EAAE,GAAG,MAAM,CAAC,gBAkBtC;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,gBAGpD"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { childLogger } from "document-drive";
|
|
2
2
|
import { execSync } from "node:child_process";
|
|
3
3
|
import path from "node:path";
|
|
4
|
+
import { cwd } from "node:process";
|
|
4
5
|
import { resolveLinkedPackage } from "./import-resolver.js";
|
|
5
6
|
const logger = childLogger(["reactor-api", "packages/util"]);
|
|
6
7
|
export const installPackages = async (packages) => {
|
|
@@ -53,7 +54,7 @@ async function loadDependency(packageName, subPath) {
|
|
|
53
54
|
if (result)
|
|
54
55
|
return result;
|
|
55
56
|
// Only log when ALL attempts have failed
|
|
56
|
-
logger.warn(`Unable to load dependency ${fullPath}
|
|
57
|
+
logger.warn(`Unable to load dependency ${fullPath}.${packageName === cwd() ? " Did you build your project?" : ""}`);
|
|
57
58
|
logger.debug(e);
|
|
58
59
|
}
|
|
59
60
|
else if (e instanceof Error &&
|
|
@@ -67,11 +68,26 @@ async function loadDependency(packageName, subPath) {
|
|
|
67
68
|
return null;
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
|
-
export function debounce(func, delay =
|
|
71
|
-
let
|
|
72
|
-
return (...args) => {
|
|
73
|
-
|
|
74
|
-
|
|
71
|
+
export function debounce(func, delay = 250) {
|
|
72
|
+
let timer;
|
|
73
|
+
return (immediate = false, ...args) => {
|
|
74
|
+
if (timer) {
|
|
75
|
+
clearTimeout(timer);
|
|
76
|
+
}
|
|
77
|
+
return new Promise((resolve, reject) => {
|
|
78
|
+
if (immediate) {
|
|
79
|
+
func(...args)
|
|
80
|
+
.then(resolve)
|
|
81
|
+
.catch(reject);
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
timer = setTimeout(() => {
|
|
85
|
+
func(...args)
|
|
86
|
+
.then(resolve)
|
|
87
|
+
.catch(reject);
|
|
88
|
+
}, delay);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
75
91
|
};
|
|
76
92
|
}
|
|
77
93
|
export function isSubpath(parent, dir) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/packages/util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAS5D,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;AAE7D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE;IAC1D,KAAK,MAAM,WAAW,IAAI,QAAQ,EAAE,CAAC;QACnC,QAAQ,CAAC,cAAc,WAAW,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC;IACpD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAmB;IAEnB,OAAO,cAAc,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,WAAmB;IAEnB,OAAO,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAAmB;IAEnB,OAAO,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,cAAc,CAC3B,WAAmB,EACnB,OAAe;IAEf,MAAM,QAAQ,GAAG,GAAG,WAAW,IAAI,OAAO,EAAE,CAAC;IAE7C,gCAAgC;IAChC,IAAI,CAAC;QACH,sEAAsE;QACtE,+BAA+B;QAE/B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,0DAA0D;QAC1D,IACE,CAAC,YAAY,KAAK;YAClB,MAAM,IAAI,CAAC;YACX,CAAC,CAAC,CAAC,IAAI,KAAK,sBAAsB;gBAChC,CAAC,CAAC,IAAI,KAAK,4BAA4B,CAAC,EAC1C,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAI,WAAW,EAAE,OAAO,CAAC,CAAC;YACnE,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;YAE1B,yCAAyC;YACzC,MAAM,CAAC,IAAI,CACT,6BAA6B,QAAQ,
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/packages/util.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,19 +4,20 @@ import type { DocumentModelModule } from "document-model";
|
|
|
4
4
|
import type { ViteDevServer } from "vite";
|
|
5
5
|
import type { ISubscribablePackageLoader, ISubscriptionOptions } from "./types.js";
|
|
6
6
|
export declare class VitePackageLoader implements ISubscribablePackageLoader {
|
|
7
|
+
#private;
|
|
7
8
|
private readonly logger;
|
|
8
9
|
private readonly vite;
|
|
9
|
-
static build(vite
|
|
10
|
+
static build(vite: ViteDevServer): VitePackageLoader;
|
|
10
11
|
constructor(vite: ViteDevServer);
|
|
11
12
|
private getDocumentModelsPath;
|
|
12
13
|
private getSubgraphsPath;
|
|
13
14
|
private getProcessorsPath;
|
|
14
|
-
loadDocumentModels(identifier: string): Promise<DocumentModelModule[]>;
|
|
15
|
+
loadDocumentModels(identifier: string, immediate?: boolean): Promise<DocumentModelModule[]>;
|
|
15
16
|
loadSubgraphs(identifier: string): Promise<SubgraphClass[]>;
|
|
16
17
|
loadProcessors(identifier: string): Promise<((module: IProcessorHostModule) => ProcessorFactory) | null>;
|
|
17
18
|
onDocumentModelsChange(identifier: string, handler: (documentModels: DocumentModelModule[]) => void, options?: ISubscriptionOptions): () => void;
|
|
18
19
|
onSubgraphsChange(identifier: string, handler: (subgraphs: SubgraphClass[]) => void, options?: ISubscriptionOptions): () => void;
|
|
19
20
|
onProcessorsChange(identifier: string, handler: (processors: ((module: IProcessorHostModule) => ProcessorFactory) | null) => void, options?: ISubscriptionOptions): () => void;
|
|
20
21
|
}
|
|
21
|
-
export declare function startViteServer(): Promise<ViteDevServer>;
|
|
22
|
+
export declare function startViteServer(root: string): Promise<ViteDevServer>;
|
|
22
23
|
//# sourceMappingURL=vite-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-loader.d.ts","sourceRoot":"","sources":["../../../src/packages/vite-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"vite-loader.d.ts","sourceRoot":"","sources":["../../../src/packages/vite-loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAG1C,OAAO,KAAK,EACV,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAGpB,qBAAa,iBAAkB,YAAW,0BAA0B;;IAClE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA+C;IAEtE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAgB;IAErC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa;gBAIpB,IAAI,EAAE,aAAa;IAI/B,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,iBAAiB;IAIlB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,UAAQ;IA2CzD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IA4B3D,cAAc,CAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,gBAAgB,CAAC,GAAG,IAAI,CAAC;IAiCvE,sBAAsB,CACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,cAAc,EAAE,mBAAmB,EAAE,KAAK,IAAI,EACxD,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI;IAgBb,iBAAiB,CACf,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,IAAI,EAC7C,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI;IAeb,kBAAkB,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,gBAAgB,CAAC,GAAG,IAAI,KACpE,IAAI,EACT,OAAO,CAAC,EAAE,oBAAoB,GAC7B,MAAM,IAAI;CAcd;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,0BA8BjD"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { viteCommonjs } from "@originjs/vite-plugin-commonjs";
|
|
2
|
-
import { isSubgraphClass } from "@powerhousedao/reactor-api";
|
|
3
2
|
import { childLogger } from "document-drive";
|
|
4
3
|
import path from "node:path";
|
|
4
|
+
import { readPackage } from "read-pkg";
|
|
5
5
|
import { createServer } from "vite";
|
|
6
|
+
import { isSubgraphClass } from "../graphql/utils.js";
|
|
6
7
|
import { debounce, isSubpath } from "./util.js";
|
|
7
8
|
export class VitePackageLoader {
|
|
8
9
|
logger = childLogger(["reactor-api", "vite-loader"]);
|
|
9
10
|
vite;
|
|
10
|
-
static
|
|
11
|
-
|
|
12
|
-
return new VitePackageLoader(server);
|
|
11
|
+
static build(vite) {
|
|
12
|
+
return new VitePackageLoader(vite);
|
|
13
13
|
}
|
|
14
14
|
constructor(vite) {
|
|
15
15
|
this.vite = vite;
|
|
@@ -23,9 +23,13 @@ export class VitePackageLoader {
|
|
|
23
23
|
getProcessorsPath(identifier) {
|
|
24
24
|
return path.join(identifier, "./processors");
|
|
25
25
|
}
|
|
26
|
-
|
|
26
|
+
loadDocumentModels(identifier, immediate = false) {
|
|
27
|
+
return this.#loadDocumentModelsWithDebounce(immediate, identifier);
|
|
28
|
+
}
|
|
29
|
+
#loadDocumentModelsWithDebounce = debounce(this.#loadDocumentModels.bind(this), 500);
|
|
30
|
+
async #loadDocumentModels(identifier) {
|
|
27
31
|
const fullPath = this.getDocumentModelsPath(identifier);
|
|
28
|
-
this.logger.
|
|
32
|
+
this.logger.debug("Loading document models from", fullPath);
|
|
29
33
|
try {
|
|
30
34
|
const localDMs = (await this.vite.ssrLoadModule(fullPath));
|
|
31
35
|
const exports = Object.values(localDMs);
|
|
@@ -84,13 +88,13 @@ export class VitePackageLoader {
|
|
|
84
88
|
return null;
|
|
85
89
|
}
|
|
86
90
|
onDocumentModelsChange(identifier, handler, options) {
|
|
87
|
-
const
|
|
88
|
-
|
|
91
|
+
const listener = async (changedPath) => {
|
|
92
|
+
const documentModelsPath = this.getDocumentModelsPath(identifier);
|
|
89
93
|
if (isSubpath(documentModelsPath, changedPath)) {
|
|
90
94
|
const documentModels = await this.loadDocumentModels(identifier);
|
|
91
95
|
handler(documentModels);
|
|
92
96
|
}
|
|
93
|
-
}
|
|
97
|
+
};
|
|
94
98
|
this.vite.watcher.on("change", listener);
|
|
95
99
|
return () => {
|
|
96
100
|
this.vite.watcher.off("change", listener);
|
|
@@ -111,20 +115,23 @@ export class VitePackageLoader {
|
|
|
111
115
|
}
|
|
112
116
|
onProcessorsChange(identifier, handler, options) {
|
|
113
117
|
const processorsPath = this.getProcessorsPath(identifier);
|
|
114
|
-
const listener =
|
|
118
|
+
const listener = async (changedPath) => {
|
|
115
119
|
if (isSubpath(processorsPath, changedPath)) {
|
|
116
120
|
const processors = await this.loadProcessors(identifier);
|
|
117
121
|
handler(processors);
|
|
118
122
|
}
|
|
119
|
-
}
|
|
123
|
+
};
|
|
120
124
|
this.vite.watcher.on("change", listener);
|
|
121
125
|
return () => {
|
|
122
126
|
this.vite.watcher.off("change", listener);
|
|
123
127
|
};
|
|
124
128
|
}
|
|
125
129
|
}
|
|
126
|
-
export async function startViteServer() {
|
|
130
|
+
export async function startViteServer(root) {
|
|
131
|
+
const packageJson = await readPackage({ cwd: root });
|
|
127
132
|
const vite = await createServer({
|
|
133
|
+
root,
|
|
134
|
+
configFile: false,
|
|
128
135
|
server: { middlewareMode: true, watch: { ignored: ["**/.ph/**"] } },
|
|
129
136
|
appType: "custom",
|
|
130
137
|
build: {
|
|
@@ -132,6 +139,11 @@ export async function startViteServer() {
|
|
|
132
139
|
input: [],
|
|
133
140
|
},
|
|
134
141
|
},
|
|
142
|
+
resolve: {
|
|
143
|
+
alias: {
|
|
144
|
+
[packageJson.name]: root,
|
|
145
|
+
},
|
|
146
|
+
},
|
|
135
147
|
plugins: [
|
|
136
148
|
viteCommonjs(),
|
|
137
149
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-loader.js","sourceRoot":"","sources":["../../../src/packages/vite-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"vite-loader.js","sourceRoot":"","sources":["../../../src/packages/vite-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAKtD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEhD,MAAM,OAAO,iBAAiB;IACX,MAAM,GAAG,WAAW,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;IAErD,IAAI,CAAgB;IAErC,MAAM,CAAC,KAAK,CAAC,IAAmB;QAC9B,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,YAAY,IAAmB;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEO,qBAAqB,CAAC,UAAkB;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IACpD,CAAC;IAEO,gBAAgB,CAAC,UAAkB;QACzC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC;IAEO,iBAAiB,CAAC,UAAkB;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC/C,CAAC;IAEM,kBAAkB,CAAC,UAAkB,EAAE,SAAS,GAAG,KAAK;QAC7D,OAAO,IAAI,CAAC,+BAA+B,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACrE,CAAC;IAED,+BAA+B,GAAG,QAAQ,CACxC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,GAAG,CACJ,CAAC;IAEF,KAAK,CAAC,mBAAmB,CACvB,UAAkB;QAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,QAAQ,CAAC,CAAC;QAE5D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAGxD,CAAC;YAEF,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAExC,YAAY;YACZ,MAAM,cAAc,GAA0B,EAAE,CAAC;YACjD,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;gBACzB,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;oBACrB,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,OAAO,CACjB,eAAe,cAAc,CAAC,MAAM,0BAA0B,UAAU,EAAE,CAC3E,CAAC;YAEF,OAAO,cAAc,CAAC;QACxB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAEnD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,wBAAwB,EAAE,QAAQ,CAAC,CAAC;QAExD,IAAI,cAAc,GAAkD,EAAE,CAAC;QACvE,IAAI,CAAC;YACH,cAAc,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;YACnE,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,SAAS,GAAoB,EAAE,CAAC;QACtC,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9D,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,eAAe,SAAS,CAAC,MAAM,oBAAoB,UAAU,EAAE,CAChE,CAAC;QAEF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,UAAkB;QAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAEpD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAEvD,IACE,MAAM,CAAC,gBAAgB;gBACvB,OAAO,MAAM,CAAC,gBAAgB,KAAK,UAAU,EAC7C,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,OAAO,CACjB,uCAAuC,UAAU,EAAE,CACpD,CAAC;gBAEF,OAAO,MAAM,CAAC,gBAEO,CAAC;YACxB,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,wCAAwC,UAAU,EAAE,EACpD,CAAC,CACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,wCAAwC,UAAU,EAAE,CAAC,CAAC;QAE1E,iCAAiC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAsB,CACpB,UAAkB,EAClB,OAAwD,EACxD,OAA8B;QAE9B,MAAM,QAAQ,GAAG,KAAK,EAAE,WAAmB,EAAE,EAAE;YAC7C,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAClE,IAAI,SAAS,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,CAAC;gBAC/C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;gBACjE,OAAO,CAAC,cAAc,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEzC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC,CAAC;IACJ,CAAC;IAED,iBAAiB,CACf,UAAkB,EAClB,OAA6C,EAC7C,OAA8B;QAE9B,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,EAAE,WAAmB,EAAE,EAAE;YACtD,IAAI,SAAS,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,CAAC;gBAC1C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;gBACvD,OAAO,CAAC,SAAS,CAAC,CAAC;YACrB,CAAC;QACH,CAAC,EAAE,OAAO,EAAE,QAAQ,IAAI,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEzC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC,CAAC;IACJ,CAAC;IAED,kBAAkB,CAChB,UAAkB,EAClB,OAES,EACT,OAA8B;QAE9B,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,KAAK,EAAE,WAAmB,EAAE,EAAE;YAC7C,IAAI,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE,CAAC;gBAC3C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBACzD,OAAO,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEzC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC;QAC9B,IAAI;QACJ,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE;QACnE,OAAO,EAAE,QAAQ;QACjB,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,KAAK,EAAE,EAAE;aACV;SACF;QACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI;aACzB;SACF;QACD,OAAO,EAAE;YACP,YAAY,EAAE;YACd;gBACE,IAAI,EAAE,cAAc;gBACpB,eAAe;oBACb,OAAO,EAAE,CAAC,CAAC,gDAAgD;gBAC7D,CAAC;aACF;SACF;KACF,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/src/server.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { PGlite } from "@electric-sql/pglite";
|
|
2
2
|
import type { IReactorClient } from "@powerhousedao/reactor";
|
|
3
3
|
import type { IDocumentDriveServer } from "document-drive";
|
|
4
|
+
import type { DocumentModelModule } from "document-model";
|
|
4
5
|
import type { Express } from "express";
|
|
5
6
|
import type { Pool } from "pg";
|
|
6
7
|
import type { API, IPackageLoader, Processor } from "./types.js";
|
|
@@ -16,6 +17,7 @@ type Options = {
|
|
|
16
17
|
guests: string[];
|
|
17
18
|
users: string[];
|
|
18
19
|
admins: string[];
|
|
20
|
+
freeEntry: boolean;
|
|
19
21
|
};
|
|
20
22
|
https?: {
|
|
21
23
|
keyPath: string;
|
|
@@ -30,15 +32,29 @@ type Options = {
|
|
|
30
32
|
};
|
|
31
33
|
};
|
|
32
34
|
/**
|
|
33
|
-
* Starts the API server.
|
|
35
|
+
* Starts the API server with pre-initialized drive server and client instances.
|
|
34
36
|
*
|
|
35
|
-
* @param
|
|
36
|
-
* @param client -
|
|
37
|
-
* @param options - Additional options for server configuration.
|
|
38
|
-
* @param overrides - System overrides. These overrides are intended to be object references.
|
|
37
|
+
* @param driveServer - An already-initialized document drive server instance.
|
|
38
|
+
* @param client - An already-initialized reactor client instance.
|
|
39
|
+
* @param options - Additional options for server configuration.
|
|
39
40
|
*
|
|
40
|
-
* @returns The API server.
|
|
41
|
+
* @returns The API server components.
|
|
41
42
|
*/
|
|
42
|
-
export declare function startAPI(
|
|
43
|
+
export declare function startAPI(driveServer: IDocumentDriveServer, client: IReactorClient, options: Options): Promise<API>;
|
|
44
|
+
/**
|
|
45
|
+
* Initializes and starts the API server using initializer functions.
|
|
46
|
+
* This function first loads packages to get document models, then calls the initializer functions
|
|
47
|
+
* to create the drive server and client instances with the appropriate dependencies.
|
|
48
|
+
*
|
|
49
|
+
* @param driveServerInitializer - Initializer function that creates the document drive server with document models.
|
|
50
|
+
* @param clientInitializer - Initializer function that creates the reactor client with the drive server.
|
|
51
|
+
* @param options - Additional options for server configuration.
|
|
52
|
+
*
|
|
53
|
+
* @returns The API server components along with the created drive server and client instances.
|
|
54
|
+
*/
|
|
55
|
+
export declare function initializeAndStartAPI(driveServerInitializer: (documentModelModules: DocumentModelModule[]) => Promise<IDocumentDriveServer>, clientInitializer: (driveServer: IDocumentDriveServer, documentModels: DocumentModelModule[]) => Promise<IReactorClient>, options: Options): Promise<API & {
|
|
56
|
+
driveServer: IDocumentDriveServer;
|
|
57
|
+
client: IReactorClient;
|
|
58
|
+
}>;
|
|
43
59
|
export {};
|
|
44
60
|
//# sourceMappingURL=server.d.ts.map
|
package/dist/src/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,KAAK,EAEV,oBAAoB,EAKrB,MAAM,gBAAgB,CAAC;AAMxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAOvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAa/B,OAAO,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAKjE,KAAK,OAAO,GAAG;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,IAAI,GAAG,SAAS,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE;QACL,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EACF;QACE,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,GACD,OAAO,GACP,SAAS,CAAC;IACd,aAAa,CAAC,EAAE,cAAc,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE;QACV,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B,CAAC;CACH,CAAC;AA0aF;;;;;;;;GAQG;AACH,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,oBAAoB,EACjC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,GAAG,CAAC,CAyBd;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CACzC,sBAAsB,EAAE,CACtB,oBAAoB,EAAE,mBAAmB,EAAE,KACxC,OAAO,CAAC,oBAAoB,CAAC,EAClC,iBAAiB,EAAE,CACjB,WAAW,EAAE,oBAAoB,EACjC,cAAc,EAAE,mBAAmB,EAAE,KAClC,OAAO,CAAC,cAAc,CAAC,EAC5B,OAAO,EAAE,OAAO,GACf,OAAO,CACR,GAAG,GAAG;IAAE,WAAW,EAAE,oBAAoB,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CACpE,CA2BA"}
|