@things-factory/shell 4.3.281 → 4.3.378

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.
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GraphqlLocalClient = void 0;
4
+ const apollo_server_core_1 = require("apollo-server-core");
5
+ const graphql_1 = require("graphql");
6
+ class GraphqlLocalClient {
7
+ static init(schema, app) {
8
+ const resolve = async ({ query, mutation, variables, context }) => {
9
+ // Create a new Apollo Server for each request
10
+ const server = new apollo_server_core_1.ApolloServerBase({
11
+ schema,
12
+ context: Object.assign(Object.assign({}, context), { app })
13
+ });
14
+ const executeOperation = server.executeOperation.bind(server);
15
+ const operation = query || mutation;
16
+ if (!operation || (!!query && !!mutation)) {
17
+ throw new Error('Either query or mutation must be passed, but not both');
18
+ }
19
+ // Execute the actual operation
20
+ const res = await executeOperation({
21
+ variables,
22
+ query: typeof operation === 'string' ? operation : (0, graphql_1.print)(operation)
23
+ });
24
+ // Throw an error with all the messages of the
25
+ // errors to make them easy to match using Jest
26
+ if (!!res.errors && !!res.errors.length) {
27
+ const message = res.errors.map(error => error.message).join('\n');
28
+ throw new Error(message);
29
+ }
30
+ return res;
31
+ };
32
+ GraphqlLocalClient.client = { query: resolve, mutate: resolve };
33
+ }
34
+ }
35
+ exports.GraphqlLocalClient = GraphqlLocalClient;
36
+ //# sourceMappingURL=graphql-local-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql-local-client.js","sourceRoot":"","sources":["../server/graphql-local-client.ts"],"names":[],"mappings":";;;AAAA,2DAAqD;AAErD,qCAA6C;AA4B7C,MAAa,kBAAkB;IAG7B,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG;QACrB,MAAM,OAAO,GAAG,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;YAChE,8CAA8C;YAC9C,MAAM,MAAM,GAAG,IAAI,qCAAgB,CAAC;gBAClC,MAAM;gBACN,OAAO,kCAOF,OAAO,KACV,GAAG,GACJ;aACF,CAAC,CAAA;YAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC7D,MAAM,SAAS,GAAG,KAAK,IAAI,QAAQ,CAAA;YACnC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE;gBACzC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;aACzE;YAED,+BAA+B;YAC/B,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC;gBACjC,SAAS;gBACT,KAAK,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,SAAS,CAAC;aACpE,CAAC,CAAA;YAEF,8CAA8C;YAC9C,+CAA+C;YAC/C,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;gBACvC,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACjE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;aACzB;YAED,OAAO,GAAG,CAAA;QACZ,CAAC,CAAA;QAED,kBAAkB,CAAC,MAAM,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;IACjE,CAAC;CACF;AA5CD,gDA4CC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./migrations"), exports);
18
+ __exportStar(require("./initializers/naming-strategy"), exports);
19
+ __exportStar(require("./utils"), exports);
20
+ __exportStar(require("./pubsub"), exports);
21
+ __exportStar(require("./pubsub-log-transport"), exports);
22
+ __exportStar(require("./middlewares"), exports);
23
+ __exportStar(require("./graphql-local-client"), exports);
24
+ __exportStar(require("./service"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../server/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,iEAA8C;AAC9C,0CAAuB;AACvB,2CAAwB;AACxB,yDAAsC;AACtC,gDAA6B;AAC7B,yDAAsC;AACtC,4CAAyB"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.pubsub = void 0;
7
+ const graphql_mqtt_subscriptions_1 = require("graphql-mqtt-subscriptions");
8
+ const graphql_redis_subscriptions_1 = require("graphql-redis-subscriptions");
9
+ const graphql_subscriptions_1 = require("graphql-subscriptions");
10
+ const ioredis_1 = __importDefault(require("ioredis"));
11
+ const mqtt_1 = require("mqtt");
12
+ const env_1 = require("@things-factory/env");
13
+ const { middleware, host, port, nodes, topic, options } = env_1.config.get('pubsub', {});
14
+ const debug = require('debug')('things-factory:shell');
15
+ let pubsub;
16
+ exports.pubsub = pubsub;
17
+ switch (middleware) {
18
+ case 'mqtt':
19
+ exports.pubsub = pubsub = new graphql_mqtt_subscriptions_1.MQTTPubSub({
20
+ client: (0, mqtt_1.connect)('mqtt://' + host, Object.assign({ reconnectPeriod: 1000 }, options))
21
+ });
22
+ break;
23
+ case 'redis':
24
+ const redisOption = Object.assign({ host,
25
+ port, retryStrategy: times => {
26
+ // reconnect after
27
+ return Math.min(times * 50, 2000);
28
+ } }, options);
29
+ exports.pubsub = pubsub = new graphql_redis_subscriptions_1.RedisPubSub({
30
+ publisher: new ioredis_1.default(redisOption),
31
+ subscriber: new ioredis_1.default(redisOption)
32
+ });
33
+ break;
34
+ case 'redisCluster':
35
+ const cluster = new ioredis_1.default.Cluster(nodes, options);
36
+ exports.pubsub = pubsub = new graphql_redis_subscriptions_1.RedisPubSub({
37
+ publisher: cluster,
38
+ subscriber: cluster
39
+ });
40
+ break;
41
+ case 'kafka':
42
+ try {
43
+ /*
44
+ * https://github.com/hatiolab/things-factory/issues/1239
45
+ */
46
+ const { KafkaPubSub } = require('graphql-kafka-subscriptions');
47
+ exports.pubsub = pubsub = new KafkaPubSub(Object.assign({ topic,
48
+ host,
49
+ port }, options));
50
+ }
51
+ catch (e) {
52
+ console.error('graphql-kafka-subscriptions module is not installed, so application can not go further.');
53
+ throw e;
54
+ }
55
+ break;
56
+ default:
57
+ exports.pubsub = pubsub = new graphql_subscriptions_1.PubSub();
58
+ break;
59
+ }
60
+ debug(middleware || 'default', 'pubsub initialized.');
61
+ // kafka pubsub keeps connection and app port with 'ctrl+c' termination.
62
+ const exitHandler = async (evt) => {
63
+ if (pubsub.close) {
64
+ try {
65
+ await pubsub.close();
66
+ }
67
+ catch (err) {
68
+ console.error(err);
69
+ }
70
+ }
71
+ };
72
+ /*
73
+ * exit events hint from https://stackoverflow.com/a/14032965/14539284
74
+ */
75
+ //do something when app is closing
76
+ process.on('exit', exitHandler.bind(null, { name: 'exit', exit: true }));
77
+ //catches ctrl+c event
78
+ process.on('SIGINT', exitHandler.bind(null, { name: 'SIGINT', exit: true }));
79
+ // catches "kill pid" (for example: nodemon restart)
80
+ process.on('SIGUSR1', exitHandler.bind(null, { name: 'SIGUSR1', exit: true }));
81
+ process.on('SIGUSR2', exitHandler.bind(null, { name: 'SIGUSR2', exit: true }));
82
+ //catches uncaught exceptions
83
+ process.on('uncaughtException', exitHandler.bind(null, { name: 'uncaughtException', exit: true }));
84
+ //# sourceMappingURL=pubsub.js.map
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PubSubLogTransport = void 0;
7
+ const camelCase_1 = __importDefault(require("lodash/camelCase"));
8
+ const winston_transport_1 = __importDefault(require("winston-transport"));
9
+ const pubsub_1 = require("./pubsub");
10
+ class PubSubLogTransport extends winston_transport_1.default {
11
+ constructor(opts) {
12
+ super(opts);
13
+ this.topic = opts.topic;
14
+ this.source = opts.source;
15
+ this.resolver = opts.resolver || (0, camelCase_1.default)(this.topic);
16
+ }
17
+ log(info, callback) {
18
+ setImmediate(() => {
19
+ pubsub_1.pubsub.publish(this.topic, {
20
+ [this.resolver]: Object.assign({ source: this.source }, info)
21
+ });
22
+ });
23
+ callback();
24
+ }
25
+ }
26
+ exports.PubSubLogTransport = PubSubLogTransport;
27
+ //# sourceMappingURL=pubsub-log-transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pubsub-log-transport.js","sourceRoot":"","sources":["../server/pubsub-log-transport.ts"],"names":[],"mappings":";;;;;;AAAA,iEAAwC;AACxC,0EAAyC;AACzC,qCAAiC;AAEjC,MAAa,kBAAmB,SAAQ,2BAAS;IAK/C,YAAY,IAAI;QACd,KAAK,CAAC,IAAI,CAAC,CAAA;QAEX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAA,mBAAS,EAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACxD,CAAC;IAED,GAAG,CAAC,IAAI,EAAE,QAAQ;QAChB,YAAY,CAAC,GAAG,EAAE;YAChB,eAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;gBACzB,CAAC,IAAI,CAAC,QAAQ,CAAC,kBACb,MAAM,EAAE,IAAI,CAAC,MAAM,IAChB,IAAI,CACR;aACF,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,EAAE,CAAA;IACZ,CAAC;CACF;AAzBD,gDAyBC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pubsub.js","sourceRoot":"","sources":["../server/pubsub.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.schema = void 0;
4
+ const env_1 = require("@things-factory/env");
5
+ const graphql_upload_1 = require("graphql-upload");
6
+ const type_graphql_1 = require("type-graphql");
7
+ const utils_1 = require("@things-factory/utils");
8
+ const schema_1 = require("@graphql-tools/schema");
9
+ async function schema() {
10
+ const schemas = env_1.orderedModuleNames
11
+ .map(dep => (0, env_1.loader)(dep).schema)
12
+ .filter(schema => schema)
13
+ .reduce((sum, schema) => {
14
+ const { typeDefs, resolvers, resolverClasses, directives } = sum;
15
+ let { typeDefs: sTypeDefs = {}, resolvers: sResolvers = {}, resolverClasses: sResolverClasses = [], directives: sDirectives = {} } = schema;
16
+ return {
17
+ typeDefs: (0, utils_1.deepMerge)(typeDefs, sTypeDefs),
18
+ resolvers: (0, utils_1.deepMerge)(resolvers, sResolvers),
19
+ resolverClasses: [...resolverClasses, ...(sResolverClasses || [])],
20
+ directives: (0, utils_1.deepMerge)(directives, sDirectives)
21
+ };
22
+ }, {
23
+ typeDefs: {},
24
+ resolvers: {},
25
+ resolverClasses: [],
26
+ directives: {}
27
+ });
28
+ /* for typeDefs */
29
+ var typeDefs = schemas.typeDefs;
30
+ var { queries = [], mutations = [], subscriptions = [], directives = [], types = [] } = typeDefs;
31
+ queries = [...queries, ...(typeDefs.Query || [])];
32
+ mutations = [...mutations, ...(typeDefs.Mutation || [])];
33
+ subscriptions = [...subscriptions, ...(typeDefs.Subscription || [])];
34
+ directives = [...directives, ...(typeDefs.Directive || [])];
35
+ delete typeDefs.Query;
36
+ delete typeDefs.Mutation;
37
+ delete typeDefs.Subscription;
38
+ delete typeDefs.Directive;
39
+ delete typeDefs.queries;
40
+ delete typeDefs.mutations;
41
+ delete typeDefs.subscriptions;
42
+ delete typeDefs.directives;
43
+ delete typeDefs.types;
44
+ const defs = {
45
+ query: queries.length > 0 ? ['type Query {', ...queries, '}'].join('\n') : 'type Query { _ : Boolean }',
46
+ mutation: mutations.length > 0 ? ['type Mutation {', ...mutations, '}'].join('\n') : 'type Mutation { _ : Boolean }',
47
+ subscription: subscriptions.length > 0
48
+ ? ['type Subscription {', ...subscriptions, '}'].join('\n')
49
+ : 'type Subscription { _ : Boolean }'
50
+ };
51
+ typeDefs = [
52
+ `
53
+ scalar Upload
54
+ `,
55
+ defs.query,
56
+ defs.mutation,
57
+ defs.subscription,
58
+ ...directives,
59
+ ...types,
60
+ ...Object.values(typeDefs)
61
+ ].filter(type => !!type);
62
+ /* for resolvers */
63
+ var { resolvers } = schemas;
64
+ var { queries = [], mutations = [], subscriptions = [], directives = [] } = resolvers;
65
+ var queryResolvers = queries.length > 0 &&
66
+ queries.reduce((sum, query) => {
67
+ return Object.assign(Object.assign({}, sum), query);
68
+ }, {});
69
+ var mutationResolvers = mutations.length > 0 &&
70
+ mutations.reduce((sum, mutation) => {
71
+ return Object.assign(Object.assign({}, sum), mutation);
72
+ }, {});
73
+ var subscriptionResolvers = subscriptions.length > 0 &&
74
+ subscriptions.reduce((sum, subscription) => {
75
+ return Object.assign(Object.assign({}, sum), subscription);
76
+ }, {});
77
+ var directiveResolvers = directives.reduce((sum, directive) => {
78
+ return Object.assign(Object.assign({}, sum), directive);
79
+ }, {});
80
+ delete resolvers.queries;
81
+ delete resolvers.mutations;
82
+ delete resolvers.subscriptions;
83
+ delete resolvers.directives;
84
+ var Query = resolvers.Query || {};
85
+ var Mutation = resolvers.Mutation || {};
86
+ var Subscription = resolvers.Subscription || {};
87
+ var Directive = resolvers.Directive || {};
88
+ delete resolvers.Query;
89
+ delete resolvers.Mutation;
90
+ delete resolvers.Subscription;
91
+ delete resolvers.Directive;
92
+ resolvers = Object.assign({ Upload: graphql_upload_1.GraphQLUpload, Query: (0, utils_1.deepMerge)(Query, queryResolvers), Mutation: (0, utils_1.deepMerge)(Mutation, mutationResolvers), Subscription: (0, utils_1.deepMerge)(Subscription, subscriptionResolvers) }, resolvers);
93
+ var merged = (0, schema_1.mergeSchemas)({
94
+ schemas: [
95
+ await (0, type_graphql_1.buildSchema)({
96
+ resolvers: schemas.resolverClasses,
97
+ dateScalarMode: 'timestamp'
98
+ })
99
+ ],
100
+ typeDefs,
101
+ resolvers
102
+ });
103
+ Object.values(schemas.directives).map((directive) => {
104
+ merged = directive(merged);
105
+ });
106
+ return merged;
107
+ }
108
+ exports.schema = schema;
109
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../server/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ process.env.NODE_ENV = 'production';
7
+ process.setMaxListeners(0);
8
+ const subscriptions_transport_ws_1 = require("subscriptions-transport-ws");
9
+ const env_1 = require("@things-factory/env");
10
+ const routers_1 = require("./routers");
11
+ const graphql_1 = require("graphql");
12
+ const apollo_server_koa_1 = require("apollo-server-koa");
13
+ const graphql_local_client_1 = require("./graphql-local-client");
14
+ const koa_1 = __importDefault(require("koa"));
15
+ const co_1 = __importDefault(require("co"));
16
+ const koa_compose_1 = __importDefault(require("koa-compose"));
17
+ const cors_1 = __importDefault(require("@koa/cors"));
18
+ const http_1 = require("http");
19
+ const database_1 = require("./initializers/database");
20
+ const graphql_upload_1 = require("graphql-upload");
21
+ const koa2_connect_history_api_fallback_1 = require("koa2-connect-history-api-fallback");
22
+ const koa_ip_1 = __importDefault(require("koa-ip"));
23
+ const koa_bodyparser_1 = __importDefault(require("koa-bodyparser"));
24
+ const koa_static_1 = __importDefault(require("koa-static"));
25
+ const schema_1 = require("./schema");
26
+ const bytes_1 = __importDefault(require("bytes"));
27
+ const args = require('args');
28
+ args.option('port', 'The port on which the app will be running', env_1.config.get('port', 3000));
29
+ const flags = args.parse(process.argv);
30
+ const path = require('path');
31
+ const PORT = (process.env.PORT = flags.port);
32
+ const requestBody = env_1.config.get('requestBody') || {};
33
+ const bodyParserOption = {
34
+ formLimit: requestBody.formLimit || '10mb',
35
+ jsonLimit: requestBody.jsonLimit || '10mb',
36
+ textLimit: requestBody.textLimit || '10mb'
37
+ };
38
+ const fileUpload = env_1.config.get('fileUpload') || {};
39
+ const fileUploadOption = {
40
+ maxFileSize: bytes_1.default.parse(fileUpload.maxFileSize) || bytes_1.default.parse('10mb'),
41
+ maxFiles: fileUpload.maxFiles || 10
42
+ };
43
+ /* bootstrap */
44
+ const bootstrap = async () => {
45
+ await (0, database_1.databaseInitializer)();
46
+ const app = new koa_1.default();
47
+ app.use((0, cors_1.default)({
48
+ origin: function (ctx) {
49
+ return ctx.request.headers.origin || '*';
50
+ },
51
+ exposeHeaders: ['WWW-Authenticate', 'Server-Authorization'],
52
+ maxAge: 5,
53
+ credentials: true,
54
+ /* allowMethods: ['GET', 'POST', 'DELETE'], -- use default */
55
+ allowHeaders: ['Content-Type', 'Authorization', 'Accept']
56
+ }));
57
+ const whitelist = env_1.config.get('whitelist');
58
+ const blacklist = env_1.config.get('blacklist');
59
+ if (whitelist || blacklist) {
60
+ app.use((0, koa_ip_1.default)({
61
+ whitelist,
62
+ blacklist,
63
+ handler: async (ctx, next) => {
64
+ ctx.status = 403;
65
+ }
66
+ }));
67
+ }
68
+ var subscriptionMiddleware = [];
69
+ process.emit('bootstrap-module-subscription', app, subscriptionMiddleware);
70
+ const builtSchema = await (0, schema_1.schema)();
71
+ const httpServer = (0, http_1.createServer)(app.callback());
72
+ const subscriptionServer = subscriptions_transport_ws_1.SubscriptionServer.create({
73
+ schema: builtSchema,
74
+ // These are imported from `graphql`.
75
+ execute: graphql_1.execute,
76
+ subscribe: graphql_1.subscribe,
77
+ async onConnect(connectionParams, webSocket, context) {
78
+ var { request } = context;
79
+ var url = new URL((connectionParams['headers'] || connectionParams).referer);
80
+ var accessToken = url.searchParams.get('access_token');
81
+ connectionParams['headers']['authorization'] = accessToken;
82
+ request.headers = Object.assign(Object.assign({}, request.headers), (connectionParams['headers'] || connectionParams));
83
+ /* in case connect error(like a authentication error) just throw exception */
84
+ var koacontext = await app.createContext(request, {});
85
+ koacontext['state'] = {};
86
+ var middlewares = [...subscriptionMiddleware];
87
+ const fn = co_1.default.wrap((0, koa_compose_1.default)(middlewares));
88
+ await fn(koacontext);
89
+ return koacontext;
90
+ }
91
+ }, {
92
+ server: httpServer,
93
+ path: '/subscriptions'
94
+ });
95
+ const server = new apollo_server_koa_1.ApolloServer({
96
+ schema: builtSchema,
97
+ formatError: error => {
98
+ env_1.logger.error(error);
99
+ return error;
100
+ },
101
+ formatResponse: response => {
102
+ // logger.info('response %s', JSON.stringify(response, null, 2))
103
+ return response;
104
+ },
105
+ introspection: true,
106
+ context: async ({ connection, ctx }) => {
107
+ if (connection) {
108
+ return connection.context;
109
+ }
110
+ else {
111
+ return ctx;
112
+ }
113
+ },
114
+ plugins: [
115
+ {
116
+ async serverWillStart() {
117
+ return {
118
+ async drainServer() {
119
+ subscriptionServer.close();
120
+ }
121
+ };
122
+ }
123
+ }
124
+ ],
125
+ cache: 'bounded'
126
+ });
127
+ await server.start();
128
+ graphql_local_client_1.GraphqlLocalClient.init(builtSchema, app);
129
+ env_1.orderedModuleNames.forEach(name => {
130
+ const { initMiddlewares } = (0, env_1.loader)(name);
131
+ initMiddlewares && initMiddlewares(app);
132
+ });
133
+ const render = require('@things-factory/ejs-remote');
134
+ render(app, {
135
+ root: '/views',
136
+ host: `http://127.0.0.1:${PORT}`,
137
+ layout: false,
138
+ viewExt: 'html',
139
+ cache: true,
140
+ debug: false
141
+ });
142
+ app.use((0, koa_bodyparser_1.default)(bodyParserOption));
143
+ app.use((0, graphql_upload_1.graphqlUploadKoa)(fileUploadOption));
144
+ app.use(server.getMiddleware({
145
+ path: '/graphql'
146
+ }));
147
+ /* routers */
148
+ process.emit('bootstrap-module-global-public-route', app, routers_1.globalPublicRouter);
149
+ process.emit('bootstrap-module-global-private-route', app, routers_1.globalPrivateRouter);
150
+ process.emit('bootstrap-module-domain-public-route', app, routers_1.domainPublicRouter);
151
+ process.emit('bootstrap-module-domain-private-route', app, routers_1.domainPrivateRouter);
152
+ app
153
+ .use(routers_1.globalPublicRouter.routes())
154
+ .use(routers_1.globalPublicRouter.allowedMethods())
155
+ .use(routers_1.globalPrivateRouter.routes())
156
+ .use(routers_1.globalPrivateRouter.allowedMethods())
157
+ .use(routers_1.domainPublicRouter.routes())
158
+ .use(routers_1.domainPublicRouter.allowedMethods())
159
+ .use(routers_1.domainPrivateRouter.routes())
160
+ .use(routers_1.domainPrivateRouter.allowedMethods());
161
+ /* should be history-fallback => koaStatic */
162
+ app.use((0, koa2_connect_history_api_fallback_1.historyApiFallback)({ whiteList: [] }));
163
+ app.use((0, koa_static_1.default)(path.join(process.cwd(), 'dist-client'), {
164
+ index: 'index.html'
165
+ }));
166
+ httpServer.listen({ port: PORT }, () => {
167
+ env_1.logger.info(`🚀 Server ready at http://0.0.0.0:${PORT}${server.graphqlPath}`);
168
+ env_1.logger.info(`🚀 Subscriptions ready at ws://0.0.0.0:${PORT}${'/subscriptions'}`);
169
+ process.emit('bootstrap-module-start', { app, config: env_1.config, builtSchema, httpServer });
170
+ });
171
+ };
172
+ bootstrap();
173
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ // @prettier-ignore
7
+ process.env.NODE_ENV = 'development';
8
+ process.setMaxListeners(0);
9
+ /** Never move following lines */
10
+ const subscriptions_transport_ws_1 = require("subscriptions-transport-ws");
11
+ const env_1 = require("@things-factory/env");
12
+ const routers_1 = require("./routers");
13
+ const graphql_1 = require("graphql");
14
+ const apollo_server_koa_1 = require("apollo-server-koa");
15
+ const apollo_server_core_1 = require("apollo-server-core");
16
+ const graphql_local_client_1 = require("./graphql-local-client");
17
+ const koa_1 = __importDefault(require("koa"));
18
+ const co_1 = __importDefault(require("co"));
19
+ const koa_compose_1 = __importDefault(require("koa-compose"));
20
+ const cors_1 = __importDefault(require("@koa/cors"));
21
+ const http_1 = require("http");
22
+ const database_1 = require("./initializers/database");
23
+ const graphql_upload_1 = require("graphql-upload");
24
+ const koa2_connect_history_api_fallback_1 = require("koa2-connect-history-api-fallback");
25
+ const koa_ip_1 = __importDefault(require("koa-ip"));
26
+ const koa_bodyparser_1 = __importDefault(require("koa-bodyparser"));
27
+ const koa_static_1 = __importDefault(require("koa-static"));
28
+ const koa_webpack_1 = __importDefault(require("@hatiolab/koa-webpack"));
29
+ const schema_1 = require("./schema");
30
+ const bytes_1 = __importDefault(require("bytes"));
31
+ const debug = require('debug')('things-factory:shell:server-dev');
32
+ const args = require('args');
33
+ args.option('port', 'The port on which the app will be running', env_1.config.get('port', 3000));
34
+ args.option('inspect', `The address on which the inspection will be running. Used in development mode only.
35
+ This option is just to prevent termination for reasons of not recognizing the 'inspect' option.`, env_1.config.get('inspect', ':9229'));
36
+ const flags = args.parse(process.argv);
37
+ const path = require('path');
38
+ const webpack = require('webpack');
39
+ const webpackConfig = require('@things-factory/builder/webpack.config.dev.js');
40
+ const compiler = webpack(webpackConfig);
41
+ const PORT = (process.env.PORT = flags.port);
42
+ const requestBody = env_1.config.get('requestBody') || {};
43
+ const bodyParserOption = {
44
+ formLimit: requestBody.formLimit || '10mb',
45
+ jsonLimit: requestBody.jsonLimit || '10mb',
46
+ textLimit: requestBody.textLimit || '10mb'
47
+ };
48
+ const fileUpload = env_1.config.get('fileUpload') || {};
49
+ const fileUploadOption = {
50
+ maxFileSize: bytes_1.default.parse(fileUpload.maxFileSize) || bytes_1.default.parse('10mb'),
51
+ maxFiles: fileUpload.maxFiles || 10
52
+ };
53
+ /* bootstrap */
54
+ const bootstrap = async () => {
55
+ try {
56
+ await (0, database_1.databaseInitializer)();
57
+ const app = new koa_1.default();
58
+ app.use((0, cors_1.default)({
59
+ origin: function (ctx) {
60
+ return ctx.request.headers.origin || '*';
61
+ },
62
+ exposeHeaders: ['WWW-Authenticate', 'Server-Authorization'],
63
+ maxAge: 5,
64
+ credentials: true,
65
+ /* allowMethods: ['GET', 'POST', 'DELETE'], -- use default */
66
+ allowHeaders: ['Content-Type', 'Authorization', 'Accept']
67
+ }));
68
+ const whitelist = env_1.config.get('whitelist');
69
+ const blacklist = env_1.config.get('blacklist');
70
+ if (whitelist || blacklist) {
71
+ app.use((0, koa_ip_1.default)({
72
+ whitelist,
73
+ blacklist,
74
+ handler: async (ctx, next) => {
75
+ ctx.status = 403;
76
+ }
77
+ }));
78
+ }
79
+ var subscriptionMiddleware = [];
80
+ process.emit('bootstrap-module-subscription', app, subscriptionMiddleware);
81
+ const builtSchema = await (0, schema_1.schema)();
82
+ const httpServer = (0, http_1.createServer)(app.callback());
83
+ const subscriptionServer = subscriptions_transport_ws_1.SubscriptionServer.create({
84
+ schema: builtSchema,
85
+ // These are imported from `graphql`.
86
+ execute: graphql_1.execute,
87
+ subscribe: graphql_1.subscribe,
88
+ async onConnect(connectionParams, webSocket, context) {
89
+ var { request } = context;
90
+ var url = new URL((connectionParams['headers'] || connectionParams).referer);
91
+ var accessToken = url.searchParams.get('access_token');
92
+ connectionParams['headers']['authorization'] = accessToken;
93
+ request.headers = Object.assign(Object.assign({}, request.headers), (connectionParams['headers'] || connectionParams));
94
+ var koacontext = await app.createContext(request, {});
95
+ koacontext['state'] = {};
96
+ /* in case connect error(like a authentication error) just throw exception */
97
+ var middlewares = [...subscriptionMiddleware];
98
+ const fn = co_1.default.wrap((0, koa_compose_1.default)(middlewares));
99
+ await fn(koacontext);
100
+ return koacontext;
101
+ }
102
+ }, {
103
+ server: httpServer,
104
+ path: '/subscriptions'
105
+ });
106
+ const server = new apollo_server_koa_1.ApolloServer({
107
+ schema: builtSchema,
108
+ formatError: error => {
109
+ env_1.logger.error(error);
110
+ return error;
111
+ },
112
+ formatResponse: response => {
113
+ // logger.info('response %s', JSON.stringify(response, null, 2))
114
+ return response;
115
+ },
116
+ context: async ({ connection, ctx }) => {
117
+ if (connection) {
118
+ return connection.context;
119
+ }
120
+ else {
121
+ return ctx;
122
+ }
123
+ },
124
+ plugins: [
125
+ (0, apollo_server_core_1.ApolloServerPluginLandingPageGraphQLPlayground)({
126
+ settings: {
127
+ 'request.credentials': 'same-origin'
128
+ }
129
+ }),
130
+ {
131
+ async serverWillStart() {
132
+ return {
133
+ async drainServer() {
134
+ subscriptionServer.close();
135
+ }
136
+ };
137
+ }
138
+ }
139
+ ],
140
+ cache: 'bounded'
141
+ });
142
+ server.start();
143
+ graphql_local_client_1.GraphqlLocalClient.init(builtSchema, app);
144
+ env_1.orderedModuleNames.forEach(name => {
145
+ const { initMiddlewares } = (0, env_1.loader)(name);
146
+ initMiddlewares && initMiddlewares(app);
147
+ });
148
+ const render = require('@things-factory/ejs-remote');
149
+ render(app, {
150
+ root: '/views',
151
+ host: `http://127.0.0.1:${PORT}`,
152
+ layout: false,
153
+ viewExt: 'html',
154
+ cache: false,
155
+ debug: false
156
+ });
157
+ const middleware = await (0, koa_webpack_1.default)({
158
+ compiler,
159
+ hotClient: {},
160
+ devMiddleware: {
161
+ publicPath: webpackConfig.output.publicPath,
162
+ stats: { colors: true }
163
+ }
164
+ });
165
+ // only for development mode. triggered after webpack compilation is done.
166
+ compiler.hooks.done.tap({ name: 'server-dev' }, stats => {
167
+ process.emit('client-rebuilt', app, compiler.outputFileSystem);
168
+ });
169
+ app.use((0, koa_bodyparser_1.default)(bodyParserOption));
170
+ app.use((0, graphql_upload_1.graphqlUploadKoa)(fileUploadOption));
171
+ app.use(server.getMiddleware({
172
+ path: '/graphql'
173
+ }));
174
+ /* routers */
175
+ process.emit('bootstrap-module-global-public-route', app, routers_1.globalPublicRouter);
176
+ process.emit('bootstrap-module-global-private-route', app, routers_1.globalPrivateRouter);
177
+ process.emit('bootstrap-module-domain-public-route', app, routers_1.domainPublicRouter);
178
+ process.emit('bootstrap-module-domain-private-route', app, routers_1.domainPrivateRouter);
179
+ app
180
+ .use(routers_1.globalPublicRouter.routes())
181
+ .use(routers_1.globalPublicRouter.allowedMethods())
182
+ .use(routers_1.globalPrivateRouter.routes())
183
+ .use(routers_1.globalPrivateRouter.allowedMethods())
184
+ .use(routers_1.domainPublicRouter.routes())
185
+ .use(routers_1.domainPublicRouter.allowedMethods())
186
+ .use(routers_1.domainPrivateRouter.routes())
187
+ .use(routers_1.domainPrivateRouter.allowedMethods());
188
+ /* should be history-fallback => webpack-middleware => koaStatic */
189
+ app.use((0, koa2_connect_history_api_fallback_1.historyApiFallback)({ whiteList: [] }));
190
+ app.use(middleware);
191
+ app.use((0, koa_static_1.default)(compiler.outputPath, {
192
+ index: false
193
+ }));
194
+ httpServer.listen({ port: PORT }, () => {
195
+ env_1.logger.info(`🚀 Server ready at http://0.0.0.0:${PORT}${server.graphqlPath}`);
196
+ env_1.logger.info(`🚀 Subscriptions ready at ws://0.0.0.0:${PORT}${'/subscriptions'}`);
197
+ process.emit('bootstrap-module-start', { app, config: env_1.config, builtSchema, httpServer });
198
+ });
199
+ }
200
+ catch (error) {
201
+ console.log(error);
202
+ throw error;
203
+ }
204
+ };
205
+ bootstrap();
206
+ //# sourceMappingURL=server-dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-dev.js","sourceRoot":"","sources":["../server/server-dev.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../server/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/shell",
3
- "version": "4.3.281",
3
+ "version": "4.3.378",
4
4
  "description": "Core module for framework",
5
5
  "bin": {
6
6
  "things-factory": "bin/things-factory",
@@ -49,10 +49,10 @@
49
49
  "@operato/layout": "^0.4.6",
50
50
  "@operato/shell": "^0.4.6",
51
51
  "@operato/utils": "^0.4.6",
52
- "@things-factory/ejs-remote": "^4.3.281",
53
- "@things-factory/env": "^4.3.281",
54
- "@things-factory/styles": "^4.3.281",
55
- "@things-factory/utils": "^4.3.281",
52
+ "@things-factory/ejs-remote": "^4.3.378",
53
+ "@things-factory/env": "^4.3.378",
54
+ "@things-factory/styles": "^4.3.378",
55
+ "@things-factory/utils": "^4.3.378",
56
56
  "@webcomponents/webcomponentsjs": "^2.6.0",
57
57
  "@webpack-contrib/schema-utils": "^1.0.0-beta.0",
58
58
  "apollo-server-core": "^3.5.0",
@@ -128,5 +128,5 @@
128
128
  "resolutions": {
129
129
  "core-js": "^3.16.0"
130
130
  },
131
- "gitHead": "188bb788d3bf0de2e9ae82ac0433e8f08b979bfc"
131
+ "gitHead": "9de7af5e7b61574cdb4773876a41e1b9b77c1689"
132
132
  }