@subsquid/openreader 0.0.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../src/scalars.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scalars.js","sourceRoot":"","sources":["../src/scalars.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -1,25 +1,19 @@
1
- import { IResolvers } from "@graphql-tools/utils";
2
- import { PluginDefinition } from "apollo-server-core/src/types";
1
+ /// <reference types="node" />
2
+ import { ApolloServer } from "apollo-server-express";
3
3
  import express from "express";
4
- import { DocumentNode, GraphQLSchema } from "graphql";
5
- import { Pool } from "pg";
6
- import { ResolverContext } from "./resolver";
4
+ import http from "http";
5
+ import type { Pool } from "pg";
6
+ import type { Model } from "./model";
7
7
  export interface ListeningServer {
8
8
  readonly port: number;
9
9
  stop(): Promise<void>;
10
10
  }
11
11
  export interface ServerOptions {
12
- schema: GraphQLSchema;
12
+ model: Model;
13
13
  db: Pool;
14
+ port: number | string;
15
+ graphiqlConsole?: boolean;
14
16
  }
15
- export declare class Server {
16
- private db;
17
- private model;
18
- constructor(options: ServerOptions);
19
- buildTypeDefs(): DocumentNode;
20
- buildResolvers(): IResolvers;
21
- buildContext(): () => Promise<ResolverContext>;
22
- buildPlugins(): PluginDefinition[];
23
- applyConsole(app: express.Application): void;
24
- listen(port?: number | string): Promise<ListeningServer>;
25
- }
17
+ export declare function serve(options: ServerOptions): Promise<ListeningServer>;
18
+ export declare function listen(apollo: ApolloServer, server: http.Server, port: number | string): Promise<ListeningServer>;
19
+ export declare function setupGraphiqlConsole(app: express.Application): void;
package/dist/server.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Server = void 0;
6
+ exports.setupGraphiqlConsole = exports.listen = exports.serve = void 0;
7
7
  const apollo_server_core_1 = require("apollo-server-core");
8
8
  const apollo_server_express_1 = require("apollo-server-express");
9
9
  const assert_1 = __importDefault(require("assert"));
@@ -11,109 +11,85 @@ const express_1 = __importDefault(require("express"));
11
11
  const fs_1 = __importDefault(require("fs"));
12
12
  const http_1 = __importDefault(require("http"));
13
13
  const path_1 = __importDefault(require("path"));
14
+ const db_1 = require("./db");
14
15
  const opencrud_1 = require("./gql/opencrud");
15
- const schema_1 = require("./gql/schema");
16
16
  const resolver_1 = require("./resolver");
17
- class Server {
18
- constructor(options) {
19
- this.db = options.db;
20
- this.model = (0, schema_1.buildModel)(options.schema);
21
- }
22
- buildTypeDefs() {
23
- return (0, opencrud_1.buildServerSchema)(this.model);
24
- }
25
- buildResolvers() {
26
- return (0, resolver_1.buildResolvers)(this.model);
27
- }
28
- buildContext() {
29
- return async () => {
30
- let db = await this.db.connect();
31
- try {
32
- await db.query('START TRANSACTION ISOLATION LEVEL SERIALIZABLE READ ONLY');
33
- }
34
- catch (e) {
35
- db.release();
36
- throw e;
37
- }
38
- return { db, model: this.model };
39
- };
40
- }
41
- buildPlugins() {
42
- return [{
17
+ async function serve(options) {
18
+ let { model, db } = options;
19
+ let resolvers = (0, resolver_1.buildResolvers)(model);
20
+ let typeDefs = (0, opencrud_1.buildServerSchema)(model);
21
+ let app = (0, express_1.default)();
22
+ let server = http_1.default.createServer(app);
23
+ let apollo = new apollo_server_express_1.ApolloServer({
24
+ typeDefs,
25
+ resolvers,
26
+ context: () => ({ openReaderTransaction: new db_1.PoolTransaction(db) }),
27
+ plugins: [
28
+ {
43
29
  async requestDidStart() {
44
30
  return {
45
- async willSendResponse(req) {
46
- let ctx = req.context;
47
- try {
48
- await ctx.db.query('COMMIT');
49
- }
50
- finally {
51
- ctx.db.release();
52
- }
31
+ willSendResponse(req) {
32
+ return req.context.openReaderTransaction.close();
53
33
  }
54
34
  };
55
35
  }
56
- }];
57
- }
58
- applyConsole(app) {
59
- let assets = path_1.default.join(require.resolve('@subsquid/graphiql-console/package.json'), '../build');
60
- let indexHtml = fs_1.default.readFileSync(path_1.default.join(assets, 'index.html'), 'utf-8')
61
- .replace(/\/static\//g, 'console/static/')
62
- .replace('/manifest.json', 'console/manifest.json')
63
- .replace('${GRAPHQL_API}', 'graphql')
64
- .replace('${APP_TITLE}', 'Query node playground');
65
- app.use('/console', express_1.default.static(assets));
66
- app.use('/graphql', (req, res, next) => {
67
- if (req.path != '/')
68
- return next();
69
- if (req.method != 'GET' && req.method != 'HEAD')
70
- return next();
71
- if (req.query['query'])
72
- return next();
73
- res.vary('Accept');
74
- if (!req.accepts('html'))
75
- return next();
76
- res.type('html').send(indexHtml);
77
- });
78
- }
79
- async listen(port) {
80
- let app = (0, express_1.default)();
81
- let server = http_1.default.createServer(app);
82
- let apollo = new apollo_server_express_1.ApolloServer({
83
- typeDefs: this.buildTypeDefs(),
84
- resolvers: this.buildResolvers(),
85
- context: this.buildContext(),
86
- plugins: [
87
- ...this.buildPlugins(),
88
- (0, apollo_server_core_1.ApolloServerPluginDrainHttpServer)({ httpServer: server })
89
- ]
90
- });
91
- await apollo.start();
92
- this.applyConsole(app);
93
- apollo.applyMiddleware({ app });
94
- return new Promise((resolve, reject) => {
95
- function onerror(err) {
96
- cleanup();
97
- reject(err);
98
- }
99
- function onlistening() {
100
- cleanup();
101
- let address = server.address();
102
- (0, assert_1.default)(address != null && typeof address == 'object');
103
- resolve({
104
- port: address.port,
105
- stop: () => apollo.stop()
106
- });
107
- }
108
- function cleanup() {
109
- server.removeListener('error', onerror);
110
- server.removeListener('listening', onlistening);
111
- }
112
- server.on('error', onerror);
113
- server.on('listening', onlistening);
114
- server.listen(port);
115
- });
36
+ },
37
+ (0, apollo_server_core_1.ApolloServerPluginDrainHttpServer)({ httpServer: server })
38
+ ]
39
+ });
40
+ if (options.graphiqlConsole !== false) {
41
+ setupGraphiqlConsole(app);
116
42
  }
43
+ await apollo.start();
44
+ apollo.applyMiddleware({ app });
45
+ return listen(apollo, server, options.port);
46
+ }
47
+ exports.serve = serve;
48
+ function listen(apollo, server, port) {
49
+ return new Promise((resolve, reject) => {
50
+ function onerror(err) {
51
+ cleanup();
52
+ reject(err);
53
+ }
54
+ function onlistening() {
55
+ cleanup();
56
+ let address = server.address();
57
+ (0, assert_1.default)(address != null && typeof address == 'object');
58
+ resolve({
59
+ port: address.port,
60
+ stop: () => apollo.stop()
61
+ });
62
+ }
63
+ function cleanup() {
64
+ server.removeListener('error', onerror);
65
+ server.removeListener('listening', onlistening);
66
+ }
67
+ server.on('error', onerror);
68
+ server.on('listening', onlistening);
69
+ server.listen(port);
70
+ });
71
+ }
72
+ exports.listen = listen;
73
+ function setupGraphiqlConsole(app) {
74
+ let assets = path_1.default.join(require.resolve('@subsquid/graphiql-console/package.json'), '../build');
75
+ let indexHtml = fs_1.default.readFileSync(path_1.default.join(assets, 'index.html'), 'utf-8')
76
+ .replace(/\/static\//g, 'console/static/')
77
+ .replace('/manifest.json', 'console/manifest.json')
78
+ .replace('${GRAPHQL_API}', 'graphql')
79
+ .replace('${APP_TITLE}', 'Query node playground');
80
+ app.use('/console', express_1.default.static(assets));
81
+ app.use('/graphql', (req, res, next) => {
82
+ if (req.path != '/')
83
+ return next();
84
+ if (req.method != 'GET' && req.method != 'HEAD')
85
+ return next();
86
+ if (req.query['query'])
87
+ return next();
88
+ res.vary('Accept');
89
+ if (!req.accepts('html'))
90
+ return next();
91
+ res.type('html').send(indexHtml);
92
+ });
117
93
  }
118
- exports.Server = Server;
94
+ exports.setupGraphiqlConsole = setupGraphiqlConsole;
119
95
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { Model } from "./model";
2
+ export declare function loadModel(schemaFile: string): Model;
package/dist/tools.js ADDED
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.loadModel = void 0;
23
+ const merge_1 = require("@graphql-tools/merge");
24
+ const fs = __importStar(require("fs"));
25
+ const path = __importStar(require("path"));
26
+ const graphql_1 = require("graphql");
27
+ const schema_1 = require("./gql/schema");
28
+ function loadModel(schemaFile) {
29
+ let files = [];
30
+ if (fs.statSync(schemaFile).isDirectory()) {
31
+ fs.readdirSync(schemaFile, { withFileTypes: true }).forEach(item => {
32
+ if (item.isFile() && (item.name.endsWith('.graphql') || item.name.endsWith('.gql'))) {
33
+ files.push(path.join(schemaFile, item.name));
34
+ }
35
+ });
36
+ }
37
+ else {
38
+ files.push(schemaFile);
39
+ }
40
+ let docs = files.map(f => {
41
+ let src = new graphql_1.Source(fs.readFileSync(f, 'utf-8'), f);
42
+ return (0, graphql_1.parse)(src);
43
+ });
44
+ if (docs.length == 0)
45
+ return {};
46
+ let doc = docs.length == 1 ? docs[0] : (0, merge_1.mergeTypeDefs)(docs);
47
+ let schema = (0, schema_1.buildSchema)(doc);
48
+ return (0, schema_1.buildModel)(schema);
49
+ }
50
+ exports.loadModel = loadModel;
51
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkD;AAClD,uCAAwB;AACxB,2CAA4B;AAC5B,qCAAqC;AACrC,yCAAoD;AAIpD,SAAgB,SAAS,CAAC,UAAkB;IACxC,IAAI,KAAK,GAAa,EAAE,CAAA;IACxB,IAAI,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,EAAE;QACvC,EAAE,CAAC,WAAW,CAAC,UAAU,EAAE,EAAC,aAAa,EAAE,IAAI,EAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7D,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE;gBACjF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;aAC/C;QACL,CAAC,CAAC,CAAA;KACL;SAAM;QACH,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;KACzB;IAED,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACrB,IAAI,GAAG,GAAG,IAAI,gBAAM,CAChB,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,EAC3B,CAAC,CACJ,CAAA;QACD,OAAO,IAAA,eAAK,EAAC,GAAG,CAAC,CAAA;IACrB,CAAC,CAAC,CAAA;IAEF,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,EAAE,CAAA;IAC/B,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAa,EAAC,IAAI,CAAC,CAAA;IAC1D,IAAI,MAAM,GAAG,IAAA,oBAAW,EAAC,GAAG,CAAC,CAAA;IAC7B,OAAO,IAAA,mBAAU,EAAC,MAAM,CAAC,CAAA;AAC7B,CAAC;AAxBD,8BAwBC"}
package/dist/util.d.ts CHANGED
@@ -1,8 +1,3 @@
1
- import { pluralize } from "inflected";
2
- export { pluralize };
3
- export declare function snakeCase(name: string): string;
4
- export declare function lowerCaseFirst(s: string): string;
5
- export declare function upperCaseFirst(s: string): string;
6
1
  export declare function toQueryListField(entityName: string): string;
7
2
  export declare function toColumn(gqlFieldName: string): string;
8
3
  export declare function toFkColumn(gqlFieldName: string): string;
@@ -10,10 +5,3 @@ export declare function toTable(entityName: string): string;
10
5
  export declare function ensureArray<T>(item: T | T[]): T[];
11
6
  export declare function unsupportedCase(value: string): Error;
12
7
  export declare function toInt(val: number | string): number;
13
- export declare class Output {
14
- private out;
15
- private indent;
16
- line(s?: string): void;
17
- block(start: string, cb: () => void): void;
18
- toString(): string;
19
- }
package/dist/util.js CHANGED
@@ -3,46 +3,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Output = exports.toInt = exports.unsupportedCase = exports.ensureArray = exports.toTable = exports.toFkColumn = exports.toColumn = exports.toQueryListField = exports.upperCaseFirst = exports.lowerCaseFirst = exports.snakeCase = exports.pluralize = void 0;
6
+ exports.toInt = exports.unsupportedCase = exports.ensureArray = exports.toTable = exports.toFkColumn = exports.toColumn = exports.toQueryListField = void 0;
7
+ const util_1 = require("@subsquid/util");
7
8
  const assert_1 = __importDefault(require("assert"));
8
- const inflected_1 = require("inflected");
9
- Object.defineProperty(exports, "pluralize", { enumerable: true, get: function () { return inflected_1.pluralize; } });
10
- function snakeCase(name) {
11
- return (0, inflected_1.underscore)(name);
12
- }
13
- exports.snakeCase = snakeCase;
14
- function lowerCaseFirst(s) {
15
- if (s) {
16
- return s[0].toLowerCase() + s.slice(1);
17
- }
18
- else {
19
- return s;
20
- }
21
- }
22
- exports.lowerCaseFirst = lowerCaseFirst;
23
- function upperCaseFirst(s) {
24
- if (s) {
25
- return s[0].toUpperCase() + s.slice(1);
26
- }
27
- else {
28
- return s;
29
- }
30
- }
31
- exports.upperCaseFirst = upperCaseFirst;
32
9
  function toQueryListField(entityName) {
33
- return (0, inflected_1.pluralize)(lowerCaseFirst(entityName));
10
+ return (0, util_1.toPlural)((0, util_1.toCamelCase)(entityName));
34
11
  }
35
12
  exports.toQueryListField = toQueryListField;
36
13
  function toColumn(gqlFieldName) {
37
- return snakeCase(gqlFieldName);
14
+ return (0, util_1.toSnakeCase)(gqlFieldName);
38
15
  }
39
16
  exports.toColumn = toColumn;
40
17
  function toFkColumn(gqlFieldName) {
41
- return snakeCase(gqlFieldName) + '_id';
18
+ return (0, util_1.toSnakeCase)(gqlFieldName) + '_id';
42
19
  }
43
20
  exports.toFkColumn = toFkColumn;
44
21
  function toTable(entityName) {
45
- return snakeCase(entityName);
22
+ return (0, util_1.toSnakeCase)(entityName);
46
23
  }
47
24
  exports.toTable = toTable;
48
25
  function ensureArray(item) {
@@ -59,31 +36,4 @@ function toInt(val) {
59
36
  return i;
60
37
  }
61
38
  exports.toInt = toInt;
62
- class Output {
63
- constructor() {
64
- this.out = '';
65
- this.indent = '';
66
- }
67
- line(s) {
68
- if (s) {
69
- this.out += this.indent + s;
70
- }
71
- this.out += '\n';
72
- }
73
- block(start, cb) {
74
- this.line(start + ' {');
75
- this.indent += ' ';
76
- try {
77
- cb();
78
- }
79
- finally {
80
- this.indent = this.indent.slice(0, this.indent.length - 2);
81
- }
82
- this.line('}');
83
- }
84
- toString() {
85
- return this.out;
86
- }
87
- }
88
- exports.Output = Output;
89
39
  //# sourceMappingURL=util.js.map
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA2B;AAC3B,yCAA+C;AAGvC,0FAHA,qBAAS,OAGA;AAGjB,SAAgB,SAAS,CAAC,IAAY;IAClC,OAAO,IAAA,sBAAU,EAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAFD,8BAEC;AAGD,SAAgB,cAAc,CAAC,CAAS;IACpC,IAAI,CAAC,EAAE;QACH,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;KACzC;SAAM;QACH,OAAO,CAAC,CAAA;KACX;AACL,CAAC;AAND,wCAMC;AAGD,SAAgB,cAAc,CAAC,CAAS;IACpC,IAAI,CAAC,EAAE;QACH,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;KACzC;SAAM;QACH,OAAO,CAAC,CAAA;KACX;AACL,CAAC;AAND,wCAMC;AAGD,SAAgB,gBAAgB,CAAC,UAAkB;IAC/C,OAAO,IAAA,qBAAS,EAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAA;AAChD,CAAC;AAFD,4CAEC;AAGD,SAAgB,QAAQ,CAAC,YAAoB;IACzC,OAAO,SAAS,CAAC,YAAY,CAAC,CAAA;AAClC,CAAC;AAFD,4BAEC;AAGD,SAAgB,UAAU,CAAC,YAAoB;IAC3C,OAAO,SAAS,CAAC,YAAY,CAAC,GAAG,KAAK,CAAA;AAC1C,CAAC;AAFD,gCAEC;AAGD,SAAgB,OAAO,CAAC,UAAkB;IACtC,OAAO,SAAS,CAAC,UAAU,CAAC,CAAA;AAChC,CAAC;AAFD,0BAEC;AAGD,SAAgB,WAAW,CAAI,IAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAC9C,CAAC;AAFD,kCAEC;AAGD,SAAgB,eAAe,CAAC,KAAa;IACzC,OAAO,IAAI,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAA;AAClD,CAAC;AAFD,0CAEC;AAGD,SAAgB,KAAK,CAAC,GAAoB;IACtC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAa,CAAC,CAAA;IAC/B,IAAA,gBAAM,EAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,OAAO,CAAC,CAAA;AACZ,CAAC;AAJD,sBAIC;AAGD,MAAa,MAAM;IAAnB;QACY,QAAG,GAAG,EAAE,CAAA;QACR,WAAM,GAAG,EAAE,CAAA;IAuBvB,CAAC;IArBG,IAAI,CAAC,CAAU;QACX,IAAI,CAAC,EAAE;YACH,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;SAC9B;QACD,IAAI,CAAC,GAAG,IAAI,IAAI,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,KAAa,EAAE,EAAc;QAC/B,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;QACvB,IAAI,CAAC,MAAM,IAAI,IAAI,CAAA;QACnB,IAAI;YACA,EAAE,EAAE,CAAA;SACP;gBAAS;YACN,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;SAC7D;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAClB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACnB,CAAC;CACJ;AAzBD,wBAyBC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAiE;AACjE,oDAA2B;AAG3B,SAAgB,gBAAgB,CAAC,UAAkB;IAC/C,OAAO,IAAA,eAAQ,EAAC,IAAA,kBAAW,EAAC,UAAU,CAAC,CAAC,CAAA;AAC5C,CAAC;AAFD,4CAEC;AAGD,SAAgB,QAAQ,CAAC,YAAoB;IACzC,OAAO,IAAA,kBAAW,EAAC,YAAY,CAAC,CAAA;AACpC,CAAC;AAFD,4BAEC;AAGD,SAAgB,UAAU,CAAC,YAAoB;IAC3C,OAAO,IAAA,kBAAW,EAAC,YAAY,CAAC,GAAG,KAAK,CAAA;AAC5C,CAAC;AAFD,gCAEC;AAGD,SAAgB,OAAO,CAAC,UAAkB;IACtC,OAAO,IAAA,kBAAW,EAAC,UAAU,CAAC,CAAA;AAClC,CAAC;AAFD,0BAEC;AAGD,SAAgB,WAAW,CAAI,IAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AAC9C,CAAC;AAFD,kCAEC;AAGD,SAAgB,eAAe,CAAC,KAAa;IACzC,OAAO,IAAI,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAA;AAClD,CAAC;AAFD,0CAEC;AAGD,SAAgB,KAAK,CAAC,GAAoB;IACtC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAa,CAAC,CAAA;IAC/B,IAAA,gBAAM,EAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,OAAO,CAAC,CAAA;AACZ,CAAC;AAJD,sBAIC"}
package/package.json CHANGED
@@ -1,39 +1,48 @@
1
1
  {
2
2
  "name": "@subsquid/openreader",
3
- "version": "0.0.0",
4
- "description": "GraphQL server for Hydra",
5
- "keywords": ["graphql", "opencrud"],
3
+ "version": "0.3.1",
4
+ "description": "GraphQL server for squid framework",
5
+ "keywords": [
6
+ "graphql",
7
+ "opencrud"
8
+ ],
6
9
  "license": "MIT",
7
- "repository": "git@github.com:subsquid/openreader.git",
10
+ "repository": "git@github.com:subsquid/squid.git",
8
11
  "publishConfig": {
9
12
  "access": "public"
10
13
  },
11
14
  "bin": {
12
- "openreader": "./dist/main.js"
15
+ "openreader": "./bin/main.js"
13
16
  },
14
17
  "files": [
15
18
  "dist",
16
19
  "!dist/test"
17
20
  ],
18
21
  "dependencies": {
22
+ "@graphql-tools/merge": "^8",
23
+ "@graphql-tools/utils": "^8",
19
24
  "@subsquid/graphiql-console": "^0.2.0",
20
- "apollo-server-core": "^3.3.0",
21
- "apollo-server-express": "^3.3.0",
22
- "express": "^4.17.1",
23
- "graphql": "^15.5.2",
25
+ "@subsquid/util": "^0.0.1",
26
+ "apollo-server-core": "^3.5.0",
27
+ "apollo-server-express": "^3.5.0",
28
+ "express": "^4.17.2",
29
+ "graphql": "^15.8.0",
24
30
  "graphql-parse-resolve-info": "^4.12.0",
25
- "inflected": "^2.1.0",
26
31
  "pg": "^8.7.1"
27
32
  },
28
33
  "devDependencies": {
29
- "@types/inflected": "^1.1.29",
34
+ "@types/express": "^4.17.13",
30
35
  "@types/mocha": "^9.0.0",
31
- "@types/node-fetch": "^2.5.12",
32
- "@types/pg": "^8.6.1",
36
+ "@types/node": "^16.11.17",
37
+ "@types/pg": "^8.6.3",
33
38
  "dotenv": "^10.0.0",
34
- "expect": "^27.2.1",
35
- "mocha": "^9.1.1",
36
- "node-fetch": "^2.6.3",
37
- "typescript": "^4.4.2"
38
- }
39
- }
39
+ "expect": "^27.4.2",
40
+ "gql-test-client": "^0.0.0",
41
+ "mocha": "^9.1.3",
42
+ "typescript": "~4.5.4"
43
+ },
44
+ "scripts": {
45
+ "build": "rm -rf dist && tsc"
46
+ },
47
+ "readme": "# OpenReader\n\nGraphQL server for squid framework. Given [data schema](https://docs.subsquid.io/schema-spec) \nand compatible Postgres database it serves \"read part\" of [OpenCRUD spec](https://www.opencrud.org).\n\n## Usage\n\n```bash\nopenreader schema.graphql\n```\n\nDatabase connection and server port are configured via environment variables:\n\n```\nDB_NAME\nDB_USER\nDB_PASS\nDB_HOST\nDB_PORT\nGRAPHQL_SERVER_PORT\n```\n"
48
+ }