@common-stack/server-stack 7.0.4-alpha.15 → 7.0.4-alpha.17
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/package.json +7 -7
- package/lib/MainStackServer.cjs +0 -231
- package/lib/MainStackServer.cjs.map +0 -1
- package/lib/MainStackServer.d.ts +0 -28
- package/lib/MainStackServer.mjs +0 -231
- package/lib/MainStackServer.mjs.map +0 -1
- package/lib/StackServer.cjs +0 -92
- package/lib/StackServer.cjs.map +0 -1
- package/lib/StackServer.d.ts +0 -20
- package/lib/StackServer.mjs +0 -92
- package/lib/StackServer.mjs.map +0 -1
- package/lib/api/remote-config.cjs +0 -6
- package/lib/api/remote-config.cjs.map +0 -1
- package/lib/api/remote-config.d.ts +0 -6
- package/lib/api/remote-config.mjs +0 -6
- package/lib/api/remote-config.mjs.map +0 -1
- package/lib/api/resolver.cjs +0 -12
- package/lib/api/resolver.cjs.map +0 -1
- package/lib/api/resolver.d.ts +0 -10
- package/lib/api/resolver.mjs +0 -12
- package/lib/api/resolver.mjs.map +0 -1
- package/lib/api/root-schema.graphqls.cjs +0 -2
- package/lib/api/root-schema.graphqls.cjs.map +0 -1
- package/lib/api/root-schema.graphqls.mjs +0 -2
- package/lib/api/root-schema.graphqls.mjs.map +0 -1
- package/lib/api/scalar.cjs +0 -16
- package/lib/api/scalar.cjs.map +0 -1
- package/lib/api/scalar.d.ts +0 -2
- package/lib/api/scalar.mjs +0 -16
- package/lib/api/scalar.mjs.map +0 -1
- package/lib/api/schema-builder.cjs +0 -160
- package/lib/api/schema-builder.cjs.map +0 -1
- package/lib/api/schema-builder.d.ts +0 -24
- package/lib/api/schema-builder.mjs +0 -160
- package/lib/api/schema-builder.mjs.map +0 -1
- package/lib/api/utils.cjs +0 -27
- package/lib/api/utils.cjs.map +0 -1
- package/lib/api/utils.d.ts +0 -4
- package/lib/api/utils.mjs +0 -27
- package/lib/api/utils.mjs.map +0 -1
- package/lib/config/env-config.cjs +0 -38
- package/lib/config/env-config.cjs.map +0 -1
- package/lib/config/env-config.d.ts +0 -21
- package/lib/config/env-config.mjs +0 -38
- package/lib/config/env-config.mjs.map +0 -1
- package/lib/config/index.d.ts +0 -1
- package/lib/config/moleculer.config.cjs +0 -191
- package/lib/config/moleculer.config.cjs.map +0 -1
- package/lib/config/moleculer.config.d.ts +0 -20
- package/lib/config/moleculer.config.mjs +0 -191
- package/lib/config/moleculer.config.mjs.map +0 -1
- package/lib/connectors/connection-broker.cjs +0 -61
- package/lib/connectors/connection-broker.cjs.map +0 -1
- package/lib/connectors/connection-broker.d.ts +0 -26
- package/lib/connectors/connection-broker.mjs +0 -61
- package/lib/connectors/connection-broker.mjs.map +0 -1
- package/lib/connectors/graphql-pubsub-connector.cjs +0 -28
- package/lib/connectors/graphql-pubsub-connector.cjs.map +0 -1
- package/lib/connectors/graphql-pubsub-connector.d.ts +0 -22
- package/lib/connectors/graphql-pubsub-connector.mjs +0 -28
- package/lib/connectors/graphql-pubsub-connector.mjs.map +0 -1
- package/lib/connectors/mongo-connector.cjs +0 -57
- package/lib/connectors/mongo-connector.cjs.map +0 -1
- package/lib/connectors/mongo-connector.d.ts +0 -21
- package/lib/connectors/mongo-connector.mjs +0 -57
- package/lib/connectors/mongo-connector.mjs.map +0 -1
- package/lib/connectors/nats-connector.cjs +0 -63
- package/lib/connectors/nats-connector.cjs.map +0 -1
- package/lib/connectors/nats-connector.d.ts +0 -20
- package/lib/connectors/nats-connector.mjs +0 -63
- package/lib/connectors/nats-connector.mjs.map +0 -1
- package/lib/connectors/redis-connector.cjs +0 -79
- package/lib/connectors/redis-connector.cjs.map +0 -1
- package/lib/connectors/redis-connector.d.ts +0 -30
- package/lib/connectors/redis-connector.mjs +0 -79
- package/lib/connectors/redis-connector.mjs.map +0 -1
- package/lib/graphql/directives/index.cjs +0 -10
- package/lib/graphql/directives/index.cjs.map +0 -1
- package/lib/graphql/directives/index.d.ts +0 -7
- package/lib/graphql/directives/index.mjs +0 -10
- package/lib/graphql/directives/index.mjs.map +0 -1
- package/lib/graphql/index.d.ts +0 -2
- package/lib/graphql/schema/directives.graphql.cjs +0 -1
- package/lib/graphql/schema/directives.graphql.cjs.map +0 -1
- package/lib/graphql/schema/directives.graphql.mjs +0 -1
- package/lib/graphql/schema/directives.graphql.mjs.map +0 -1
- package/lib/graphql/schema/index.cjs +0 -1
- package/lib/graphql/schema/index.cjs.map +0 -1
- package/lib/graphql/schema/index.d.ts +0 -1
- package/lib/graphql/schema/index.mjs +0 -1
- package/lib/graphql/schema/index.mjs.map +0 -1
- package/lib/index.cjs +0 -1
- package/lib/index.cjs.map +0 -1
- package/lib/index.d.ts +0 -3
- package/lib/index.mjs +0 -1
- package/lib/index.mjs.map +0 -1
- package/lib/interfaces/dbMigration.d.ts +0 -8
- package/lib/interfaces/graphql-request-context.d.ts +0 -15
- package/lib/interfaces/index.d.ts +0 -4
- package/lib/interfaces/module-interface.d.ts +0 -13
- package/lib/interfaces/moleculer.d.ts +0 -7
- package/lib/middleware/cors.cjs +0 -26
- package/lib/middleware/cors.cjs.map +0 -1
- package/lib/middleware/cors.d.ts +0 -6
- package/lib/middleware/cors.mjs +0 -26
- package/lib/middleware/cors.mjs.map +0 -1
- package/lib/middleware/error.cjs +0 -18
- package/lib/middleware/error.cjs.map +0 -1
- package/lib/middleware/error.d.ts +0 -9
- package/lib/middleware/error.mjs +0 -18
- package/lib/middleware/error.mjs.map +0 -1
- package/lib/middleware/moleculer-inter-namespace.cjs +0 -44
- package/lib/middleware/moleculer-inter-namespace.cjs.map +0 -1
- package/lib/middleware/moleculer-inter-namespace.d.ts +0 -2
- package/lib/middleware/moleculer-inter-namespace.mjs +0 -44
- package/lib/middleware/moleculer-inter-namespace.mjs.map +0 -1
- package/lib/middleware/sentry.cjs +0 -3
- package/lib/middleware/sentry.cjs.map +0 -1
- package/lib/middleware/sentry.d.ts +0 -2
- package/lib/middleware/sentry.mjs +0 -3
- package/lib/middleware/sentry.mjs.map +0 -1
- package/lib/middleware/services.cjs +0 -12
- package/lib/middleware/services.cjs.map +0 -1
- package/lib/middleware/services.d.ts +0 -2
- package/lib/middleware/services.mjs +0 -12
- package/lib/middleware/services.mjs.map +0 -1
- package/lib/plugins/index.d.ts +0 -2
- package/lib/plugins/invalidateCachePlugin.cjs +0 -59
- package/lib/plugins/invalidateCachePlugin.cjs.map +0 -1
- package/lib/plugins/invalidateCachePlugin.d.ts +0 -8
- package/lib/plugins/invalidateCachePlugin.mjs +0 -59
- package/lib/plugins/invalidateCachePlugin.mjs.map +0 -1
- package/lib/plugins/responseCachePlugin.cjs +0 -58
- package/lib/plugins/responseCachePlugin.cjs.map +0 -1
- package/lib/plugins/responseCachePlugin.d.ts +0 -8
- package/lib/plugins/responseCachePlugin.mjs +0 -58
- package/lib/plugins/responseCachePlugin.mjs.map +0 -1
- package/lib/servers/ExpressApp.cjs +0 -37
- package/lib/servers/ExpressApp.cjs.map +0 -1
- package/lib/servers/ExpressApp.d.ts +0 -3
- package/lib/servers/ExpressApp.mjs +0 -37
- package/lib/servers/ExpressApp.mjs.map +0 -1
- package/lib/servers/GraphqlServer.cjs +0 -142
- package/lib/servers/GraphqlServer.cjs.map +0 -1
- package/lib/servers/GraphqlServer.d.ts +0 -23
- package/lib/servers/GraphqlServer.mjs +0 -142
- package/lib/servers/GraphqlServer.mjs.map +0 -1
- package/lib/servers/GraphqlWs.cjs +0 -97
- package/lib/servers/GraphqlWs.cjs.map +0 -1
- package/lib/servers/GraphqlWs.d.ts +0 -14
- package/lib/servers/GraphqlWs.mjs +0 -97
- package/lib/servers/GraphqlWs.mjs.map +0 -1
- package/lib/servers/WebsocketMultipathUpdate.cjs +0 -63
- package/lib/servers/WebsocketMultipathUpdate.cjs.map +0 -1
- package/lib/servers/WebsocketMultipathUpdate.d.ts +0 -18
- package/lib/servers/WebsocketMultipathUpdate.mjs +0 -63
- package/lib/servers/WebsocketMultipathUpdate.mjs.map +0 -1
- package/lib/servers/mongodb-migration-update.d.ts +0 -12
- package/lib/servers/utils.d.ts +0 -14
- package/lib/utils/index.d.ts +0 -1
- package/lib/utils/migrations.cjs +0 -26
- package/lib/utils/migrations.cjs.map +0 -1
- package/lib/utils/migrations.d.ts +0 -8
- package/lib/utils/migrations.mjs +0 -26
- package/lib/utils/migrations.mjs.map +0 -1
package/lib/StackServer.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StackServer.cjs","sources":["../src/StackServer.ts"],"sourcesContent":[null],"names":["ContainerModule","CommonType","config","serverLogger","ConnectionBroker","brokerConfig","ServiceBroker","InterNamespaceMiddleware","ServerFeature"],"mappings":"2bAAA;AACA;AAcA,MAAM,WAAW,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KACxD,IAAIA,yBAAe,CAAC,CAAC,IAAqB,KAAI;IAC1C,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAACC,eAAU,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;AAChD,IAAA,IAAI,CAAC,aAAa,CAAC,CAAC,eAAe,CAACC,gBAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,CAAC;AACtE,IAAA,IAAI,CAACD,eAAU,CAAC,WAAW,CAAC,CAAC,eAAe,CAACC,gBAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,CAAC;IAC/E,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAACD,eAAU,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAACA,eAAU,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,iBAAiB,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,mBAAmB,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEP;;;;;AAKG;MACU,WAAW,CAAA;AACZ,IAAA,MAAM,CAAU;AAEhB,IAAA,gBAAgB,CAAmB;AAEnC,IAAA,kBAAkB,CAAgB;AAElC,IAAA,gBAAgB,CAAY;AAE5B,IAAA,qBAAqB,CAAY;AAEjC,IAAA,aAAa,CAAgB;AAE7B,IAAA,QAAQ,CAAC;IAEjB,WAAY,CAAA,OAAsB,EAAE,QAAQ,EAAA;AACxC,QAAA,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;AAC7B,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;AACzB,QAAA,IAAI,CAAC,MAAM,GAAGE,aAAY,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;KAClE;AAEM,IAAA,MAAM,UAAU,GAAA;AACnB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;AAC7C,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAIC,iCAAgB,CAACC,wBAAY,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB;QAEhE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC;AAEhE,QAAA,IAAI,CAAC,kBAAkB,GAAG,IAAIC,uBAAa,CAAC;AACxC,YAAA,GAAGD,wBAAY;AACf,YAAA,WAAW,EAAE;AACT,gBAAAE,gDAAwB,CAAC;AACrB,oBAAA;AACI,wBAAA,SAAS,EAAE,WAAW;wBACtB,WAAW,EAAEF,wBAAY,CAAC,WAAW;AACxC,qBAAA;iBACJ,CAAC;AACL,aAAA;YACD,OAAO,EAAE,YAAW;gBAChB,MAAM,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;gBAC1E,MAAM,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aAC9E;AACJ,SAAA,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC;AACzD,QAAA,MAAM,qBAAqB,GAAG,IAAIG,kBAAa,CAAC;AAC5C,YAAA,yBAAyB,EAAE;gBACvB,MACI,WAAW,CAAC;oBACR,MAAM,EAAE,IAAI,CAAC,kBAAkB;oBAC/B,MAAM;oBACN,WAAW;AACX,oBAAA,MAAM,EAAEL,aAAY;iBACvB,CAAC;AACT,aAAA;AACJ,SAAA,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,IAAIK,kBAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;AAChF,QAAA,IAAI,CAAC,qBAAqB,GAAG,MAAM,UAAU,CAAC,sBAAsB,CAAC;YACjE,GAAG,IAAI,CAAC,QAAQ;AAChB,YAAA,eAAe,EAAE,WAAW;AAC/B,SAAA,CAAC,CAAC;AACH,QAAA,MAAM,aAAa,GAAG;YAClB,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,MAAM,EAAE,IAAI,CAAC,MAAM;SACtB,CAAC;;AAEF,QAAA,IAAI,CAAC,qBAAqB,GAAG,aAAa,CAAC,qBAAqB,CAAC;QACjE,UAAU,CAAC,0BAA0B,CAAC;YAClC,MAAM,EAAE,IAAI,CAAC,kBAAkB;YAC/B,SAAS,EAAE,IAAI,CAAC,qBAAqB;YACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;AAC1B,SAAA,CAAC,CAAC;KACN;AAEM,IAAA,MAAM,KAAK,GAAA;AACd,QAAA,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;KACzC;AAEM,IAAA,MAAM,OAAO,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE;AACvB,YAAA,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;SACtC;AACD,QAAA,IAAI,IAAI,CAAC,kBAAkB,EAAE;AACzB,YAAA,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;SACxC;KACJ;AACJ"}
|
package/lib/StackServer.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Feature as ServerFeature } from '@common-stack/server-core';
|
|
2
|
-
/**
|
|
3
|
-
* Controls the lifecycle of the Application Server
|
|
4
|
-
*
|
|
5
|
-
* @export
|
|
6
|
-
* @class StackServer
|
|
7
|
-
*/
|
|
8
|
-
export declare class StackServer {
|
|
9
|
-
private logger;
|
|
10
|
-
private connectionBroker;
|
|
11
|
-
private microserviceBroker;
|
|
12
|
-
private serviceContainer;
|
|
13
|
-
private microserviceContainer;
|
|
14
|
-
private serverFeature;
|
|
15
|
-
private settings;
|
|
16
|
-
constructor(feature: ServerFeature, settings: any);
|
|
17
|
-
initialize(): Promise<void>;
|
|
18
|
-
start(): Promise<void>;
|
|
19
|
-
cleanup(): Promise<void>;
|
|
20
|
-
}
|
package/lib/StackServer.mjs
DELETED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import {logger}from'@cdm-logger/server';import {Feature}from'@common-stack/server-core';import {ContainerModule}from'inversify';import {ServiceBroker}from'moleculer';import {CommonType}from'@common-stack/core';import brokerConfig from'./config/moleculer.config.mjs';import {config}from'./config/env-config.mjs';import {ConnectionBroker}from'./connectors/connection-broker.mjs';import {InterNamespaceMiddleware}from'./middleware/moleculer-inter-namespace.mjs';/* eslint-disable import/no-extraneous-dependencies */
|
|
2
|
-
/* eslint-disable import/namespace */
|
|
3
|
-
const infraModule = ({ broker, pubsub, mongoClient, logger }) => new ContainerModule((bind) => {
|
|
4
|
-
bind('Logger').toConstantValue(logger);
|
|
5
|
-
bind(CommonType.LOGGER).toConstantValue(logger);
|
|
6
|
-
bind('Environment').toConstantValue(config.NODE_ENV || 'development');
|
|
7
|
-
bind(CommonType.ENVIRONMENT).toConstantValue(config.NODE_ENV || 'development');
|
|
8
|
-
bind('PubSub').toConstantValue(pubsub);
|
|
9
|
-
bind(CommonType.PUBSUB).toConstantValue(pubsub);
|
|
10
|
-
bind(CommonType.MOLECULER_BROKER).toConstantValue(broker);
|
|
11
|
-
bind('MoleculerBroker').toConstantValue(broker);
|
|
12
|
-
bind('MongoDBConnection').toConstantValue(mongoClient);
|
|
13
|
-
});
|
|
14
|
-
/**
|
|
15
|
-
* Controls the lifecycle of the Application Server
|
|
16
|
-
*
|
|
17
|
-
* @export
|
|
18
|
-
* @class StackServer
|
|
19
|
-
*/
|
|
20
|
-
class StackServer {
|
|
21
|
-
logger;
|
|
22
|
-
connectionBroker;
|
|
23
|
-
microserviceBroker;
|
|
24
|
-
serviceContainer;
|
|
25
|
-
microserviceContainer;
|
|
26
|
-
serverFeature;
|
|
27
|
-
settings;
|
|
28
|
-
constructor(feature, settings) {
|
|
29
|
-
this.serverFeature = feature;
|
|
30
|
-
this.settings = settings;
|
|
31
|
-
this.logger = logger.child({ className: 'StackServer' });
|
|
32
|
-
}
|
|
33
|
-
async initialize() {
|
|
34
|
-
this.logger.info('StackServer initializing');
|
|
35
|
-
this.connectionBroker = new ConnectionBroker(brokerConfig.transporter, this.logger);
|
|
36
|
-
await this.connectionBroker.redisConnection;
|
|
37
|
-
const mongoClient = await this.connectionBroker.mongoConnection;
|
|
38
|
-
this.microserviceBroker = new ServiceBroker({
|
|
39
|
-
...brokerConfig,
|
|
40
|
-
middlewares: [
|
|
41
|
-
InterNamespaceMiddleware([
|
|
42
|
-
{
|
|
43
|
-
namespace: 'api-admin',
|
|
44
|
-
transporter: brokerConfig.transporter,
|
|
45
|
-
},
|
|
46
|
-
]),
|
|
47
|
-
],
|
|
48
|
-
started: async () => {
|
|
49
|
-
await this.serverFeature.microservicePreStart(this.microserviceContainer);
|
|
50
|
-
await this.serverFeature.microservicePostStart(this.microserviceContainer);
|
|
51
|
-
},
|
|
52
|
-
});
|
|
53
|
-
const pubsub = await this.connectionBroker.graphqlPubsub;
|
|
54
|
-
const InfraStructureFeature = new Feature({
|
|
55
|
-
createHemeraContainerFunc: [
|
|
56
|
-
() => infraModule({
|
|
57
|
-
broker: this.microserviceBroker,
|
|
58
|
-
pubsub,
|
|
59
|
-
mongoClient,
|
|
60
|
-
logger: logger,
|
|
61
|
-
}),
|
|
62
|
-
],
|
|
63
|
-
});
|
|
64
|
-
const allModules = new Feature(InfraStructureFeature, this.serverFeature);
|
|
65
|
-
this.microserviceContainer = await allModules.createHemeraContainers({
|
|
66
|
-
...this.settings,
|
|
67
|
-
mongoConnection: mongoClient,
|
|
68
|
-
});
|
|
69
|
-
const serviceBroker = {
|
|
70
|
-
microserviceContainer: this.microserviceContainer,
|
|
71
|
-
logger: this.logger,
|
|
72
|
-
};
|
|
73
|
-
// set the service container
|
|
74
|
-
this.microserviceContainer = serviceBroker.microserviceContainer;
|
|
75
|
-
allModules.loadClientMoleculerService({
|
|
76
|
-
broker: this.microserviceBroker,
|
|
77
|
-
container: this.microserviceContainer,
|
|
78
|
-
settings: this.settings,
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
async start() {
|
|
82
|
-
await this.microserviceBroker.start();
|
|
83
|
-
}
|
|
84
|
-
async cleanup() {
|
|
85
|
-
if (this.connectionBroker) {
|
|
86
|
-
await this.connectionBroker.stop();
|
|
87
|
-
}
|
|
88
|
-
if (this.microserviceBroker) {
|
|
89
|
-
await this.microserviceBroker.stop();
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}export{StackServer};//# sourceMappingURL=StackServer.mjs.map
|
package/lib/StackServer.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StackServer.mjs","sources":["../src/StackServer.ts"],"sourcesContent":[null],"names":["serverLogger","ServerFeature"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remote-config.cjs","sources":["../../src/api/remote-config.ts"],"sourcesContent":[null],"names":[],"mappings":"aAKa,MAAA,mBAAmB,GAAoB;AAChD;AACA;AACA;AACA;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remote-config.mjs","sources":["../../src/api/remote-config.ts"],"sourcesContent":[null],"names":[],"mappings":"AAKa,MAAA,mBAAmB,GAAoB;AAChD;AACA;AACA;AACA;"}
|
package/lib/api/resolver.cjs
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
'use strict';var GraphQLJSON=require('graphql-type-json'),graphqlScalars=require('graphql-scalars'),GraphQLURISource=require('@cdmbase/graphql-type-uri'),scalar=require('./scalar.cjs');/* eslint-disable import/no-extraneous-dependencies */
|
|
2
|
-
const GraphQLURI = GraphQLURISource.default ?? GraphQLURISource;
|
|
3
|
-
const resolvers = {
|
|
4
|
-
AnyObject: scalar.GraphQLAnyObject,
|
|
5
|
-
Date: graphqlScalars.GraphQLDate,
|
|
6
|
-
Time: graphqlScalars.GraphQLTime,
|
|
7
|
-
URI: GraphQLURI('URI'),
|
|
8
|
-
URIInput: GraphQLURI('URIInput'),
|
|
9
|
-
DateTime: graphqlScalars.GraphQLDateTime,
|
|
10
|
-
JSON: GraphQLJSON,
|
|
11
|
-
JSONObject: GraphQLJSON.GraphQLJSONObject,
|
|
12
|
-
};exports.resolvers=resolvers;//# sourceMappingURL=resolver.cjs.map
|
package/lib/api/resolver.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.cjs","sources":["../../src/api/resolver.ts"],"sourcesContent":[null],"names":["GraphQLAnyObject","GraphQLDate","GraphQLTime","GraphQLDateTime","GraphQLJSONObject"],"mappings":"yLAAA;AAMA,MAAM,UAAU,GAAI,gBAAwB,CAAC,OAAO,IAAI,gBAAgB,CAAC;AAC5D,MAAA,SAAS,GAAG;AACrB,IAAA,SAAS,EAAEA,uBAAgB;AAC3B,IAAA,IAAI,EAAEC,0BAAW;AACjB,IAAA,IAAI,EAAEC,0BAAW;AACjB,IAAA,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC;AACtB,IAAA,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC;AAChC,IAAA,QAAQ,EAAEC,8BAAe;AACzB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,UAAU,EAAEC,6BAAiB;"}
|
package/lib/api/resolver.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export declare const resolvers: {
|
|
2
|
-
AnyObject: import("graphql").GraphQLScalarType<unknown, unknown>;
|
|
3
|
-
Date: import("graphql").GraphQLScalarType<Date, string>;
|
|
4
|
-
Time: import("graphql").GraphQLScalarType<Date, string>;
|
|
5
|
-
URI: any;
|
|
6
|
-
URIInput: any;
|
|
7
|
-
DateTime: import("graphql").GraphQLScalarType<Date, Date>;
|
|
8
|
-
JSON: import("graphql").GraphQLScalarType<unknown, unknown>;
|
|
9
|
-
JSONObject: import("graphql").GraphQLScalarType<unknown, unknown>;
|
|
10
|
-
};
|
package/lib/api/resolver.mjs
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import GraphQLJSON,{GraphQLJSONObject}from'graphql-type-json';import {GraphQLDate,GraphQLTime,GraphQLDateTime}from'graphql-scalars';import GraphQLURISource from'@cdmbase/graphql-type-uri';import {GraphQLAnyObject}from'./scalar.mjs';/* eslint-disable import/no-extraneous-dependencies */
|
|
2
|
-
const GraphQLURI = GraphQLURISource.default ?? GraphQLURISource;
|
|
3
|
-
const resolvers = {
|
|
4
|
-
AnyObject: GraphQLAnyObject,
|
|
5
|
-
Date: GraphQLDate,
|
|
6
|
-
Time: GraphQLTime,
|
|
7
|
-
URI: GraphQLURI('URI'),
|
|
8
|
-
URIInput: GraphQLURI('URIInput'),
|
|
9
|
-
DateTime: GraphQLDateTime,
|
|
10
|
-
JSON: GraphQLJSON,
|
|
11
|
-
JSONObject: GraphQLJSONObject,
|
|
12
|
-
};export{resolvers};//# sourceMappingURL=resolver.mjs.map
|
package/lib/api/resolver.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.mjs","sources":["../../src/api/resolver.ts"],"sourcesContent":[null],"names":[],"mappings":"wOAAA;AAMA,MAAM,UAAU,GAAI,gBAAwB,CAAC,OAAO,IAAI,gBAAgB,CAAC;AAC5D,MAAA,SAAS,GAAG;AACrB,IAAA,SAAS,EAAE,gBAAgB;AAC3B,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC;AACtB,IAAA,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC;AAChC,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,UAAU,EAAE,iBAAiB;"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
'use strict';Object.defineProperty(exports,'__esModule',{value:true});var rootSchemaDef = "scalar AnyObject\nscalar Date\nscalar Time\nscalar DateTime\nscalar Timestamp\nscalar URI\nscalar URIInput\nscalar Observable\nscalar JSON\nscalar JSONObject\n\n\"\"\"\n An object with an ID.\n\"\"\"\ninterface Node {\n \"\"\"\n The ID of the node.\n \"\"\"\n id: ID!\n}\n\n# Pagination information. See https://facebook.github.io/relay/graphql/connections.htm#sec-undefined.PageInfo.\ntype PageInfo {\n # Whether there is a next page of nodes in the connection.\n hasNextPage: Boolean!\n}\n\n\"\"\"\n Represents a null return value.\n\"\"\"\ntype EmptyResponse {\n # A dummy null value.\n alwaysNil: String\n}\n\ntype FieldError {\n field: String!\n message: String!\n}\n\ninput Sort{\n key: String!,\n value: SortEnum!,\n}\n\nenum SortEnum{\n ASC\n DESC\n}\n\ntype Query {\n \"\"\"\n Looks up a node by ID.\n \"\"\"\n node(id: ID!): Node\n\n}\n\ntype Mutation {\n dummy: Int\n}\n\ntype Subscription {\n dummy: Int\n}\n\n\ntype AdminIdeSettings {\n dummy: Int\n}\n\n\"\"\" All Moleculer Topic names are extended from this.\"\"\"\nenum MoleculerServiceName {\n dummy\n}\n\ninterface IResourceUtilizationSettings {\n subTopic: String\n adminApiNamespace: String\n}\n\n\"\"\"\nTo calculate geometry over an Eath-like sphere.\nList the `longitude` first and then `latitude`\n - Validate longitude values are between `-180` and `180`\n - Validate latitude values are between `-90` and `90`\n\"\"\"\ntype GeoLocation {\n coordinates: [Float]\n}\n\"\"\"\nInput geometry of the location.\nList the `longitude` first and then `latitude`\n - Validate longitude values are between `-180` and `180`\n - Validate latitude values are between `-90` and `90`\n\"\"\"\ninput GeoLocationInput {\n type: String = \"Point\"\n coordinates: [Float]\n}\n\n\"\"\"\nInput geometry of the location.\nList the `longitude` first and then `latitude`\n - Validate longitude values are between `-180` and `180`\n - Validate latitude values are between `-90` and `90`\n\"\"\"\ninput GeoLocationInput {\n type: String = \"Point\"\n coordinates: [Float]\n}\n\nenum MailTemplateId {\n dummy\n}\n\nenum MoleculerCronServiceName {\n dummy\n}\n\nschema {\n query: Query\n mutation: Mutation\n subscription: Subscription\n}\n\n";
|
|
2
|
-
exports.default=rootSchemaDef;//# sourceMappingURL=root-schema.graphqls.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"root-schema.graphqls.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var rootSchemaDef = "scalar AnyObject\nscalar Date\nscalar Time\nscalar DateTime\nscalar Timestamp\nscalar URI\nscalar URIInput\nscalar Observable\nscalar JSON\nscalar JSONObject\n\n\"\"\"\n An object with an ID.\n\"\"\"\ninterface Node {\n \"\"\"\n The ID of the node.\n \"\"\"\n id: ID!\n}\n\n# Pagination information. See https://facebook.github.io/relay/graphql/connections.htm#sec-undefined.PageInfo.\ntype PageInfo {\n # Whether there is a next page of nodes in the connection.\n hasNextPage: Boolean!\n}\n\n\"\"\"\n Represents a null return value.\n\"\"\"\ntype EmptyResponse {\n # A dummy null value.\n alwaysNil: String\n}\n\ntype FieldError {\n field: String!\n message: String!\n}\n\ninput Sort{\n key: String!,\n value: SortEnum!,\n}\n\nenum SortEnum{\n ASC\n DESC\n}\n\ntype Query {\n \"\"\"\n Looks up a node by ID.\n \"\"\"\n node(id: ID!): Node\n\n}\n\ntype Mutation {\n dummy: Int\n}\n\ntype Subscription {\n dummy: Int\n}\n\n\ntype AdminIdeSettings {\n dummy: Int\n}\n\n\"\"\" All Moleculer Topic names are extended from this.\"\"\"\nenum MoleculerServiceName {\n dummy\n}\n\ninterface IResourceUtilizationSettings {\n subTopic: String\n adminApiNamespace: String\n}\n\n\"\"\"\nTo calculate geometry over an Eath-like sphere.\nList the `longitude` first and then `latitude`\n - Validate longitude values are between `-180` and `180`\n - Validate latitude values are between `-90` and `90`\n\"\"\"\ntype GeoLocation {\n coordinates: [Float]\n}\n\"\"\"\nInput geometry of the location.\nList the `longitude` first and then `latitude`\n - Validate longitude values are between `-180` and `180`\n - Validate latitude values are between `-90` and `90`\n\"\"\"\ninput GeoLocationInput {\n type: String = \"Point\"\n coordinates: [Float]\n}\n\n\"\"\"\nInput geometry of the location.\nList the `longitude` first and then `latitude`\n - Validate longitude values are between `-180` and `180`\n - Validate latitude values are between `-90` and `90`\n\"\"\"\ninput GeoLocationInput {\n type: String = \"Point\"\n coordinates: [Float]\n}\n\nenum MailTemplateId {\n dummy\n}\n\nenum MoleculerCronServiceName {\n dummy\n}\n\nschema {\n query: Query\n mutation: Mutation\n subscription: Subscription\n}\n\n";
|
|
2
|
-
export{rootSchemaDef as default};//# sourceMappingURL=root-schema.graphqls.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"root-schema.graphqls.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/lib/api/scalar.cjs
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
'use strict';var graphql=require('graphql');// add any scalar types
|
|
2
|
-
// https://stackoverflow.com/questions/41557536/custom-map-keys-in-graphql-response
|
|
3
|
-
const GraphQLAnyObject = new graphql.GraphQLScalarType({
|
|
4
|
-
name: 'AnyObject',
|
|
5
|
-
description: 'Any JSON object. This type bypasses type checking.',
|
|
6
|
-
serialize: (value) => value,
|
|
7
|
-
parseValue: (value) => value,
|
|
8
|
-
parseLiteral: (ast) => {
|
|
9
|
-
if (ast.kind !== graphql.Kind.OBJECT) {
|
|
10
|
-
throw new graphql.GraphQLError(`Query error: Can only parse object but got a: ${ast.kind}`, {
|
|
11
|
-
nodes: [ast],
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
return ast.fields;
|
|
15
|
-
},
|
|
16
|
-
});exports.GraphQLAnyObject=GraphQLAnyObject;//# sourceMappingURL=scalar.cjs.map
|
package/lib/api/scalar.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scalar.cjs","sources":["../../src/api/scalar.ts"],"sourcesContent":[null],"names":["GraphQLScalarType","Kind","GraphQLError"],"mappings":"4CAAA;AAGA;AACa,MAAA,gBAAgB,GAAG,IAAIA,yBAAiB,CAAC;AAClD,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,WAAW,EAAE,oDAAoD;AACjE,IAAA,SAAS,EAAE,CAAC,KAAK,KAAK,KAAK;AAC3B,IAAA,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK;AAC5B,IAAA,YAAY,EAAE,CAAC,GAAG,KAAI;QAClB,IAAI,GAAG,CAAC,IAAI,KAAKC,YAAI,CAAC,MAAM,EAAE;YAC1B,MAAM,IAAIC,oBAAY,CAAC,CAAA,8CAAA,EAAiD,GAAG,CAAC,IAAI,EAAE,EAAE;gBAChF,KAAK,EAAE,CAAC,GAAG,CAAC;AACf,aAAA,CAAC,CAAC;SACN;QACD,OAAO,GAAG,CAAC,MAAM,CAAC;KACrB;AACJ,CAAA"}
|
package/lib/api/scalar.d.ts
DELETED
package/lib/api/scalar.mjs
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import {GraphQLScalarType,Kind,GraphQLError}from'graphql';// add any scalar types
|
|
2
|
-
// https://stackoverflow.com/questions/41557536/custom-map-keys-in-graphql-response
|
|
3
|
-
const GraphQLAnyObject = new GraphQLScalarType({
|
|
4
|
-
name: 'AnyObject',
|
|
5
|
-
description: 'Any JSON object. This type bypasses type checking.',
|
|
6
|
-
serialize: (value) => value,
|
|
7
|
-
parseValue: (value) => value,
|
|
8
|
-
parseLiteral: (ast) => {
|
|
9
|
-
if (ast.kind !== Kind.OBJECT) {
|
|
10
|
-
throw new GraphQLError(`Query error: Can only parse object but got a: ${ast.kind}`, {
|
|
11
|
-
nodes: [ast],
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
return ast.fields;
|
|
15
|
-
},
|
|
16
|
-
});export{GraphQLAnyObject};//# sourceMappingURL=scalar.mjs.map
|
package/lib/api/scalar.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scalar.mjs","sources":["../../src/api/scalar.ts"],"sourcesContent":[null],"names":[],"mappings":"0DAAA;AAGA;AACa,MAAA,gBAAgB,GAAG,IAAI,iBAAiB,CAAC;AAClD,IAAA,IAAI,EAAE,WAAW;AACjB,IAAA,WAAW,EAAE,oDAAoD;AACjE,IAAA,SAAS,EAAE,CAAC,KAAK,KAAK,KAAK;AAC3B,IAAA,UAAU,EAAE,CAAC,KAAK,KAAK,KAAK;AAC5B,IAAA,YAAY,EAAE,CAAC,GAAG,KAAI;QAClB,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE;YAC1B,MAAM,IAAI,YAAY,CAAC,CAAA,8CAAA,EAAiD,GAAG,CAAC,IAAI,EAAE,EAAE;gBAChF,KAAK,EAAE,CAAC,GAAG,CAAC;AACf,aAAA,CAAC,CAAC;SACN;QACD,OAAO,GAAG,CAAC,MAAM,CAAC;KACrB;AACJ,CAAA"}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
'use strict';var fs=require('fs'),path=require('path'),stitch=require('@graphql-tools/stitch'),schema=require('@graphql-tools/schema'),links=require('@graphql-tools/links'),wrap=require('@graphql-tools/wrap'),ws$1=require('ws'),utilities=require('@apollo/client/utilities'),ws=require('@apollo/client/link/ws'),index_js=require('@apollo/client/index.js'),serverCore=require('@common-stack/server-core'),http=require('@apollo/client/link/http'),fetch=require('isomorphic-fetch'),graphqlShield=require('graphql-shield'),graphqlMiddleware=require('graphql-middleware'),remoteConfig=require('./remote-config.cjs'),rootSchema=require('./root-schema.graphqls.cjs'),resolver=require('./resolver.cjs'),utils=require('./utils.cjs'),envConfig=require('../config/env-config.cjs');function _interopNamespaceDefault(e){var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var fs__namespace=/*#__PURE__*/_interopNamespaceDefault(fs);var path__namespace=/*#__PURE__*/_interopNamespaceDefault(path);var ws__namespace=/*#__PURE__*/_interopNamespaceDefault(ws$1);var fetch__namespace=/*#__PURE__*/_interopNamespaceDefault(fetch);/// <reference path='../../../../typings/index.d.ts' />
|
|
2
|
-
/* eslint-disable class-methods-use-this */
|
|
3
|
-
/* eslint-disable no-useless-constructor */
|
|
4
|
-
/* eslint-disable import/no-extraneous-dependencies */
|
|
5
|
-
class GatewaySchemaBuilder {
|
|
6
|
-
options;
|
|
7
|
-
constructor(options) {
|
|
8
|
-
this.options = options;
|
|
9
|
-
}
|
|
10
|
-
async build() {
|
|
11
|
-
let gatewaySchema;
|
|
12
|
-
let ownSchema;
|
|
13
|
-
try {
|
|
14
|
-
ownSchema = this.createOwnSchema();
|
|
15
|
-
const remoteSchema = await this.load();
|
|
16
|
-
// techSchema = this.patchSchema(techSchema, 'TechService');
|
|
17
|
-
gatewaySchema = stitch.stitchSchemas({
|
|
18
|
-
subschemas: [ownSchema],
|
|
19
|
-
});
|
|
20
|
-
// Apply middleware to the schema
|
|
21
|
-
if (this.options.middlewares && this.options.middlewares.length > 0) {
|
|
22
|
-
gatewaySchema = graphqlMiddleware.applyMiddleware(gatewaySchema, ...this.options.middlewares, graphqlShield.shield(this.options.rules || {}, {
|
|
23
|
-
allowExternalErrors: true,
|
|
24
|
-
}));
|
|
25
|
-
}
|
|
26
|
-
// TODO after updating graphql-tools to v8
|
|
27
|
-
// addErrorLoggingToSchema(schema, { log: (e) => logger.error(e as Error) });
|
|
28
|
-
}
|
|
29
|
-
catch (err) {
|
|
30
|
-
serverCore.logger.error(err, '[Graphql Schema Errors] when building schema:', err.message);
|
|
31
|
-
gatewaySchema = ownSchema;
|
|
32
|
-
}
|
|
33
|
-
return gatewaySchema;
|
|
34
|
-
}
|
|
35
|
-
async load() {
|
|
36
|
-
const schemas = [];
|
|
37
|
-
// eslint-disable-next-line no-plusplus
|
|
38
|
-
for (let i = 0; i < remoteConfig.remoteSchemaDetails.length; i++) {
|
|
39
|
-
// eslint-disable-next-line no-await-in-loop
|
|
40
|
-
const schema = await this.loadRemoteSchema(remoteConfig.remoteSchemaDetails[i]);
|
|
41
|
-
schemas.push(schema);
|
|
42
|
-
}
|
|
43
|
-
return schemas;
|
|
44
|
-
}
|
|
45
|
-
async createRemoteSchema(service, iteration) {
|
|
46
|
-
serverCore.logger.info('Fetch service [%s] iteration [%s]', service, iteration);
|
|
47
|
-
const services = remoteConfig.remoteSchemaDetails;
|
|
48
|
-
if (!services.length) {
|
|
49
|
-
console.warn(`Service ${services} is undefined`);
|
|
50
|
-
if (iteration && iteration > 2) {
|
|
51
|
-
return Promise.reject(`tried upto ${iteration} attempts, now failing...`);
|
|
52
|
-
}
|
|
53
|
-
return new Promise((resolve, reject) => {
|
|
54
|
-
const timeout = iteration ? 1000 * iteration : 1000;
|
|
55
|
-
serverCore.logger.info('Wait for service startup %s', timeout);
|
|
56
|
-
setTimeout(() => {
|
|
57
|
-
this.createRemoteSchema(service, iteration ? iteration + 1 : 1)
|
|
58
|
-
.then(resolve)
|
|
59
|
-
.catch(reject);
|
|
60
|
-
}, timeout);
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
// instead need to loop it
|
|
64
|
-
// https://github.com/j-colter/graphql-gateway/blob/9c64d90a74727d2002d10b06f47e1f4a316070fc/src/schema.js#L50
|
|
65
|
-
const url = services[0].uri;
|
|
66
|
-
serverCore.logger.info('fetch service [%s]', url);
|
|
67
|
-
// 1. Create apollo Link that's connected to the underlying GraphQL API
|
|
68
|
-
const link = new http.HttpLink({ uri: url, fetch: fetch__namespace });
|
|
69
|
-
const executor = links.linkToExecutor(link);
|
|
70
|
-
// 2. Retrieve schema definition of the underlying GraphQL API
|
|
71
|
-
const remoteSchema = await wrap.schemaFromExecutor(link);
|
|
72
|
-
// 3. Create the executable schema based on schema definition and Apollo Link
|
|
73
|
-
return wrap.wrapSchema({
|
|
74
|
-
schema: remoteSchema,
|
|
75
|
-
executor,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
async loadRemoteSchema({ uri, wsUri }) {
|
|
79
|
-
try {
|
|
80
|
-
const httpLink = new http.HttpLink({ uri, fetch: fetch__namespace });
|
|
81
|
-
let link = null;
|
|
82
|
-
if (wsUri) {
|
|
83
|
-
const wsLink = new ws.WebSocketLink({
|
|
84
|
-
uri: wsUri,
|
|
85
|
-
options: {
|
|
86
|
-
reconnect: true,
|
|
87
|
-
},
|
|
88
|
-
webSocketImpl: ws__namespace,
|
|
89
|
-
});
|
|
90
|
-
link = index_js.split(
|
|
91
|
-
// split based on operatino type
|
|
92
|
-
({ query }) => {
|
|
93
|
-
const { kind, operation } = utilities.getMainDefinition(query);
|
|
94
|
-
return kind === 'OperationDefinition' && operation === 'subscription';
|
|
95
|
-
}, wsLink, httpLink);
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
link = httpLink;
|
|
99
|
-
}
|
|
100
|
-
const executor = links.linkToExecutor(link);
|
|
101
|
-
const remoteSchema = await wrap.schemaFromExecutor(link);
|
|
102
|
-
const executableSchema = wrap.wrapSchema({
|
|
103
|
-
schema: remoteSchema,
|
|
104
|
-
executor,
|
|
105
|
-
});
|
|
106
|
-
return executableSchema;
|
|
107
|
-
}
|
|
108
|
-
catch (err) {
|
|
109
|
-
this.options.logger.error(err, 'fetching schema error: ', err);
|
|
110
|
-
return {};
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
// disabled after updating to apollo-client to v3 and graphql-tools to v8
|
|
114
|
-
// private patchSchema(schema: GraphQLSchema, systemName: string) {
|
|
115
|
-
// return transformSchema(schema, [
|
|
116
|
-
// new RenameTypes((name: string) => (name === 'StatusInfo' ? `${systemName}StatusInfo` : undefined)),
|
|
117
|
-
// new RenameRootFields((_operation: string, name: string) =>
|
|
118
|
-
// name === 'status'
|
|
119
|
-
// ? `${systemName.substring(0, 1).toLowerCase()}${systemName.substring(1)}Status`
|
|
120
|
-
// : name,
|
|
121
|
-
// ),
|
|
122
|
-
// ]);
|
|
123
|
-
// }
|
|
124
|
-
createOwnSchema() {
|
|
125
|
-
const typeDefs = [rootSchema.default, this.options.schema].join('\n');
|
|
126
|
-
if (envConfig.config.isDev) {
|
|
127
|
-
// @ts-ignore
|
|
128
|
-
import('@src/modules/module').then(({ ExternalModules }) => {
|
|
129
|
-
const externalSchema = ExternalModules?.schemas || ``;
|
|
130
|
-
const writeData = `${externalSchema}`;
|
|
131
|
-
const filePath = path__namespace.join(process.cwd(), 'generated-schema.graphql');
|
|
132
|
-
fs__namespace.writeFileSync(filePath, writeData);
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
let mergedSchema = schema.makeExecutableSchema({
|
|
136
|
-
resolvers: [resolver.resolvers, this.options.resolvers],
|
|
137
|
-
typeDefs,
|
|
138
|
-
resolverValidationOptions: {
|
|
139
|
-
requireResolversForResolveType: 'warn',
|
|
140
|
-
},
|
|
141
|
-
});
|
|
142
|
-
try {
|
|
143
|
-
// Check if directives are provided and are iterable
|
|
144
|
-
if (Array.isArray(this.options.directives) && this.options.directives.length > 0) {
|
|
145
|
-
this.options.directives.forEach((transform) => {
|
|
146
|
-
mergedSchema = transform(mergedSchema);
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
// Handle deprecated directiveResolvers if they exist
|
|
150
|
-
if (this.options.directiveResolvers && Object.keys(this.options.directiveResolvers).length !== 0) {
|
|
151
|
-
this.options.logger.warn('directiveResolvers deprecated replaced with directives');
|
|
152
|
-
mergedSchema = utils.attachDirectiveResolvers(mergedSchema, this.options.directiveResolvers);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
catch (err) {
|
|
156
|
-
this.options.logger.error(err, 'Error in schema directives [%j], and directiveResolvers [%j]', this.options.directives, this.options.directiveResolvers);
|
|
157
|
-
}
|
|
158
|
-
return mergedSchema;
|
|
159
|
-
}
|
|
160
|
-
}exports.GatewaySchemaBuilder=GatewaySchemaBuilder;//# sourceMappingURL=schema-builder.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema-builder.cjs","sources":["../../src/api/schema-builder.ts"],"sourcesContent":[null],"names":["stitchSchemas","applyMiddleware","shield","logger","remoteSchemaDetails","HttpLink","fetch","linkToExecutor","schemaFromExecutor","wrapSchema","WebSocketLink","ws","split","getMainDefinition","rootSchemaDef","config","path","fs","makeExecutableSchema","rootResolver","attachDirectiveResolvers"],"mappings":"2xCAAA;AACA;AACA;AACA;MAkCa,oBAAoB,CAAA;AACT,IAAA,OAAA,CAAA;AAApB,IAAA,WAAA,CAAoB,OAAwB,EAAA;QAAxB,IAAO,CAAA,OAAA,GAAP,OAAO,CAAiB;KAAI;AAEzC,IAAA,MAAM,KAAK,GAAA;AACd,QAAA,IAAI,aAAa,CAAC;AAClB,QAAA,IAAI,SAAS,CAAC;AACd,QAAA,IAAI;AACA,YAAA,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;AACnC,YAAA,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;;YAGvC,aAAa,GAAGA,oBAAa,CAAC;gBAC1B,UAAU,EAAE,CAAC,SAAS,CAAC;AAC1B,aAAA,CAAC,CAAC;;AAGH,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBACjE,aAAa,GAAGC,iCAAe,CAC3B,aAAa,EACb,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAC3BC,oBAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE;AAC7B,oBAAA,mBAAmB,EAAE,IAAI;AAC5B,iBAAA,CAAC,CACL,CAAC;aACL;;;SAGJ;QAAC,OAAO,GAAG,EAAE;YACVC,iBAAM,CAAC,KAAK,CAAC,GAAG,EAAE,+CAA+C,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAChF,aAAa,GAAG,SAAS,CAAC;SAC7B;AAED,QAAA,OAAO,aAAa,CAAC;KACxB;AAEO,IAAA,MAAM,IAAI,GAAA;QACd,MAAM,OAAO,GAAG,EAAE,CAAC;;AAEnB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAGC,gCAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;;AAEjD,YAAA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAACA,gCAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;AACnE,YAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACxB;AACD,QAAA,OAAO,OAAO,CAAC;KAClB;AAEO,IAAA,MAAM,kBAAkB,CAAC,OAAe,EAAE,SAAkB,EAAA;QAChED,iBAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAGC,gCAAmB,CAAC;AACrC,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;AAClB,YAAA,OAAO,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAA,aAAA,CAAe,CAAC,CAAC;AACjD,YAAA,IAAI,SAAS,IAAI,SAAS,GAAG,CAAC,EAAE;gBAC5B,OAAO,OAAO,CAAC,MAAM,CAAC,cAAc,SAAS,CAAA,yBAAA,CAA2B,CAAC,CAAC;aAC7E;YACD,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,MAAM,KAAI;AAClD,gBAAA,MAAM,OAAO,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;AACpD,gBAAAD,iBAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;gBACpD,UAAU,CAAC,MAAK;AACZ,oBAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;yBAC1D,IAAI,CAAC,OAAO,CAAC;yBACb,KAAK,CAAC,MAAM,CAAC,CAAC;iBACtB,EAAE,OAAO,CAAC,CAAC;AAChB,aAAC,CAAC,CAAC;SACN;;;QAGD,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC5B,QAAAA,iBAAM,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;;AAEvC,QAAA,MAAM,IAAI,GAAG,IAAIE,aAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,SAAEC,gBAAK,EAAS,CAAC,CAAC;AACtD,QAAA,MAAM,QAAQ,GAAQC,oBAAc,CAAC,IAAI,CAAC,CAAC;;AAE3C,QAAA,MAAM,YAAY,GAAG,MAAMC,uBAAkB,CAAC,IAAW,CAAC,CAAC;;AAG3D,QAAA,OAAOC,eAAU,CAAC;AACd,YAAA,MAAM,EAAE,YAAY;YACpB,QAAQ;AACX,SAAA,CAAC,CAAC;KACN;AAEO,IAAA,MAAM,gBAAgB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAA;AACzC,QAAA,IAAI;YACA,MAAM,QAAQ,GAAG,IAAIJ,aAAQ,CAAC,EAAE,GAAG,SAAEC,gBAAK,EAAS,CAAC,CAAC;YACrD,IAAI,IAAI,GAAG,IAAI,CAAC;YAEhB,IAAI,KAAK,EAAE;AACP,gBAAA,MAAM,MAAM,GAAG,IAAII,gBAAa,CAAC;AAC7B,oBAAA,GAAG,EAAE,KAAK;AACV,oBAAA,OAAO,EAAE;AACL,wBAAA,SAAS,EAAE,IAAI;AAClB,qBAAA;AACD,oBAAA,aAAa,EAAEC,aAAE;AACpB,iBAAA,CAAC,CAAC;AACH,gBAAA,IAAI,GAAGC,cAAK;;AAER,gBAAA,CAAC,EAAE,KAAK,EAAE,KAAI;oBACV,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAGC,2BAAiB,CAAC,KAAK,CAA4B,CAAC;AAChF,oBAAA,OAAO,IAAI,KAAK,qBAAqB,IAAI,SAAS,KAAK,cAAc,CAAC;AAC1E,iBAAC,EACD,MAAM,EACN,QAAQ,CACX,CAAC;aACL;iBAAM;gBACH,IAAI,GAAG,QAAQ,CAAC;aACnB;AACD,YAAA,MAAM,QAAQ,GAAQN,oBAAc,CAAC,IAAI,CAAC,CAAC;AAC3C,YAAA,MAAM,YAAY,GAAG,MAAMC,uBAAkB,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,gBAAgB,GAAGC,eAAU,CAAC;AAChC,gBAAA,MAAM,EAAE,YAAY;gBACpB,QAAQ;AACX,aAAA,CAAC,CAAC;AACH,YAAA,OAAO,gBAAgB,CAAC;SAC3B;QAAC,OAAO,GAAG,EAAE;AACV,YAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,yBAAyB,EAAE,GAAG,CAAC,CAAC;AAC/D,YAAA,OAAO,EAAE,CAAC;SACb;KACJ;;;;;;;;;;;;IAcO,eAAe,GAAA;AACnB,QAAA,MAAM,QAAQ,GAAG,CAACK,kBAAa,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjE,QAAA,IAAIC,gBAAM,CAAC,KAAK,EAAE;;YAEd,OAAO,qBAAqB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,KAAI;AACvD,gBAAA,MAAM,cAAc,GAAG,eAAe,EAAE,OAAO,IAAI,EAAE,CAAC;AACtD,gBAAA,MAAM,SAAS,GAAG,CAAG,EAAA,cAAc,EAAE,CAAC;AACtC,gBAAA,MAAM,QAAQ,GAAGC,eAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,0BAA0B,CAAC,CAAC;AACtE,gBAAAC,aAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC1C,aAAC,CAAC,CAAC;SACN;QACD,IAAI,YAAY,GAAGC,2BAAoB,CAAC;YACpC,SAAS,EAAE,CAACC,kBAAY,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YACjD,QAAQ;AACR,YAAA,yBAAyB,EAAE;AACvB,gBAAA,8BAA8B,EAAE,MAAM;AACzC,aAAA;AACJ,SAAA,CAAC,CAAC;AACH,QAAA,IAAI;;YAEA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9E,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,KAAI;AAC1C,oBAAA,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;AAC3C,iBAAC,CAAC,CAAC;aACN;;YAGD,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC9F,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;gBACnF,YAAY,GAAGC,8BAAwB,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;aAC1F;SACJ;QAAC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,GAAG,EACH,8DAA8D,EAC9D,IAAI,CAAC,OAAO,CAAC,UAAU,EACvB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClC,CAAC;SACL;AACD,QAAA,OAAO,YAAY,CAAC;KACvB;AACJ"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { GraphQLSchema } from 'graphql';
|
|
2
|
-
import { IGraphqlShieldRules } from '@common-stack/server-core';
|
|
3
|
-
import { CdmLogger } from '@cdm-logger/core';
|
|
4
|
-
interface IGraphqlOptions {
|
|
5
|
-
schema: string | string[];
|
|
6
|
-
resolvers: any;
|
|
7
|
-
directives: any[];
|
|
8
|
-
directiveResolvers: {
|
|
9
|
-
[key: string]: any;
|
|
10
|
-
};
|
|
11
|
-
middlewares: any[];
|
|
12
|
-
rules?: IGraphqlShieldRules;
|
|
13
|
-
logger: CdmLogger.ILogger;
|
|
14
|
-
}
|
|
15
|
-
export declare class GatewaySchemaBuilder {
|
|
16
|
-
private options;
|
|
17
|
-
constructor(options: IGraphqlOptions);
|
|
18
|
-
build(): Promise<GraphQLSchema>;
|
|
19
|
-
private load;
|
|
20
|
-
private createRemoteSchema;
|
|
21
|
-
private loadRemoteSchema;
|
|
22
|
-
private createOwnSchema;
|
|
23
|
-
}
|
|
24
|
-
export {};
|