@subsquid/openreader 0.4.1 → 0.5.0

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":"opencrud.d.ts","sourceRoot":"","sources":["../../src/gql/opencrud.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAe,MAAM,SAAS,CAAA;AAClD,OAAO,EAAiD,KAAK,EAAc,MAAM,UAAU,CAAA;AAM3F,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAuT5D;AAGD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAI5D"}
1
+ {"version":3,"file":"opencrud.d.ts","sourceRoot":"","sources":["../../src/gql/opencrud.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAe,MAAM,SAAS,CAAA;AAClD,OAAO,EAAiD,KAAK,EAAc,MAAM,UAAU,CAAA;AAM3F,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAiU5D;AAGD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,YAAY,CAI5D"}
@@ -135,9 +135,11 @@ function generateOpenCrudQueries(model) {
135
135
  switch (prop.type.kind) {
136
136
  case 'scalar':
137
137
  case 'enum':
138
+ generateIsNullFilter(key, prop);
138
139
  generateScalarFilters(key, prop.type.name);
139
140
  break;
140
141
  case 'list':
142
+ generateIsNullFilter(key, prop);
141
143
  if (prop.type.item.type.kind == 'scalar' || prop.type.item.type.kind == 'enum') {
142
144
  let item = prop.type.item.type.name;
143
145
  out.line(`${key}_containsAll: [${item}!]`);
@@ -146,14 +148,17 @@ function generateOpenCrudQueries(model) {
146
148
  }
147
149
  break;
148
150
  case 'object':
151
+ generateIsNullFilter(key, prop);
149
152
  if (hasFilters(getObject(prop.type.name))) {
150
153
  out.line(`${key}: ${prop.type.name}WhereInput`);
151
154
  }
152
155
  break;
153
156
  case 'union':
157
+ generateIsNullFilter(key, prop);
154
158
  out.line(`${key}: ${prop.type.name}WhereInput`);
155
159
  break;
156
160
  case 'fk':
161
+ generateIsNullFilter(key, prop);
157
162
  out.line(`${key}: ${prop.type.foreignEntity}WhereInput`);
158
163
  break;
159
164
  case 'lookup':
@@ -167,6 +172,11 @@ function generateOpenCrudQueries(model) {
167
172
  }
168
173
  }
169
174
  }
175
+ function generateIsNullFilter(key, prop) {
176
+ if (!prop.nullable)
177
+ return;
178
+ out.line(`${key}_isNull: Boolean`);
179
+ }
170
180
  function hasFilters(obj) {
171
181
  for (let key in obj.properties) {
172
182
  let propType = obj.properties[key].type;
@@ -1 +1 @@
1
- {"version":3,"file":"opencrud.js","sourceRoot":"","sources":["../../src/gql/opencrud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencrud.js","sourceRoot":"","sources":["../../src/gql/opencrud.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"queryBuilder.d.ts","sourceRoot":"","sources":["../src/queryBuilder.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,QAAQ,EAAC,MAAM,MAAM,CAAA;AAC7B,OAAO,KAAK,EAAqB,KAAK,EAAC,MAAM,SAAS,CAAA;AAEtD,OAAO,EAAC,oBAAoB,EAAwB,MAAM,WAAW,CAAA;AACrE,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAA;AAM1E,MAAM,WAAW,QAAQ;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAChC,KAAK,CAAC,EAAE,GAAG,CAAA;CACd;AAGD,qBAAa,YAAY;IAKjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,EAAE;IALd,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,OAAO,CAA2B;gBAG9B,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,QAAQ;IAGxB,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,KAAK;IAIb,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM;IAkGrG,OAAO,CAAC,eAAe;IA+BvB,OAAO,CAAC,eAAe;IA2DvB,OAAO,CAAC,aAAa;IA8ErB,OAAO,CAAC,gBAAgB;IA2FxB,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,GAAG,EAAE;IAQxD,OAAO,CAAC,MAAM;IAgDR,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAM3F,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpE,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAM3E,OAAO,CAAC,KAAK;IAIb,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,GAAG,MAAM;IAoCvF,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,EAAE;IAwBtE,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CAK7G;AAGD,MAAM,WAAW,OAAO;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,GAAG,CAAA;CACb;AAGD,aAAK,aAAa,GAAG,UAAU,GAAG,YAAY,CAAA;AAG9C,UAAU,UAAU;IAChB,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CACpB;AAGD;;GAEG;AACH,UAAU,YAAY;IAClB,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACjB"}
1
+ {"version":3,"file":"queryBuilder.d.ts","sourceRoot":"","sources":["../src/queryBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,QAAQ,EAAC,MAAM,MAAM,CAAA;AAC7B,OAAO,KAAK,EAAqB,KAAK,EAAC,MAAM,SAAS,CAAA;AAEtD,OAAO,EAAC,oBAAoB,EAAwB,MAAM,WAAW,CAAA;AACrE,OAAO,KAAK,EAAC,kBAAkB,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAA;AAM1E,MAAM,WAAW,QAAQ;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAA;IAChC,KAAK,CAAC,EAAE,GAAG,CAAA;CACd;AAGD,qBAAa,YAAY;IAKjB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,EAAE;IALd,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,OAAO,CAA2B;gBAG9B,KAAK,EAAE,KAAK,EACZ,EAAE,EAAE,QAAQ;IAGxB,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,KAAK;IAIb,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM;IAkGrG,OAAO,CAAC,eAAe;IA+BvB,OAAO,CAAC,eAAe;IA2DvB,OAAO,CAAC,aAAa;IA8ErB,OAAO,CAAC,gBAAgB;IAoGxB,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,eAAe,GAAG,GAAG,EAAE;IAQxD,OAAO,CAAC,MAAM;IAgDR,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAM3F,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;IAMpE,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAM3E,OAAO,CAAC,KAAK;IAIb,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,GAAG,MAAM;IAoCvF,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,EAAE;IAwBtE,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CAK7G;AAGD,MAAM,WAAW,OAAO;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,GAAG,CAAA;CACb;AAGD,aAAK,aAAa,GAAG,UAAU,GAAG,YAAY,CAAA;AAG9C,UAAU,UAAU;IAChB,IAAI,EAAE,KAAK,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CACpB;AAGD;;GAEG;AACH,UAAU,YAAY;IAClB,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACjB"}
@@ -56,7 +56,7 @@ class QueryBuilder {
56
56
  break;
57
57
  default:
58
58
  if (columns.size()) {
59
- out += `SELECT ${columns.render()}\n`;
59
+ out += `SELECT ${columns.render(true)}\n`;
60
60
  }
61
61
  }
62
62
  out += `FROM ${this.ident(table)} ${this.ident(alias)}`;
@@ -220,6 +220,16 @@ class QueryBuilder {
220
220
  }
221
221
  addPropCondition(exps, cursor, field, op, arg) {
222
222
  let propType = cursor.object.properties[field].type;
223
+ if (op == 'isNull') {
224
+ let lhs = propType.kind == 'fk' ? cursor.fk(field) : cursor.field(field);
225
+ if (arg) {
226
+ exps.push(`${lhs} IS NULL`);
227
+ }
228
+ else {
229
+ exps.push(`${lhs} IS NOT NULL`);
230
+ }
231
+ return;
232
+ }
223
233
  switch (propType.kind) {
224
234
  case 'scalar':
225
235
  case 'enum': {
@@ -575,8 +585,12 @@ class ColumnSet {
575
585
  }
576
586
  return idx;
577
587
  }
578
- render() {
579
- return Array.from(this.columns.keys()).join(', ');
588
+ render(withAliases) {
589
+ let cols = Array.from(this.columns.keys());
590
+ if (withAliases) {
591
+ cols = cols.map((col, idx) => `${col} AS _c${idx}`);
592
+ }
593
+ return cols.join(', ');
580
594
  }
581
595
  size() {
582
596
  return this.columns.size;
@@ -1 +1 @@
1
- {"version":3,"file":"queryBuilder.js","sourceRoot":"","sources":["../src/queryBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queryBuilder.js","sourceRoot":"","sources":["../src/queryBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=isNull.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isNull.test.d.ts","sourceRoot":"","sources":["../../src/test/isNull.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const setup_1 = require("./util/setup");
4
+ describe('isNull operator', function () {
5
+ (0, setup_1.useDatabase)([
6
+ `create table meta (id text primary key)`,
7
+ `create table entity (id text primary key, scalar text, json jsonb, meta_id text)`,
8
+ `insert into meta (id) values ('1')`,
9
+ `insert into entity (id, json, meta_id) values ('1', '{"a": 1}', '1')`,
10
+ `insert into entity (id, scalar, meta_id) values ('2', 'foo', '1')`,
11
+ `insert into entity (id, scalar, json) values ('3', 'foo', '{"a": 2}')`,
12
+ `insert into entity (id, scalar, json, meta_id) values ('4', 'foo', '{}', '1')`,
13
+ ]);
14
+ const client = (0, setup_1.useServer)(`
15
+ type Meta @entity {
16
+ id: ID!
17
+ }
18
+
19
+ type Entity @entity {
20
+ id: ID!
21
+ scalar: String
22
+ json: JsonObject
23
+ meta: Meta
24
+ }
25
+
26
+ type JsonObject {
27
+ a: Int
28
+ }
29
+ `);
30
+ it("on scalar", function () {
31
+ return client.test(`
32
+ query {
33
+ entities(where: {scalar_isNull: true}) {
34
+ id
35
+ }
36
+ }
37
+ `, {
38
+ entities: [{ id: '1' }]
39
+ });
40
+ });
41
+ it("on json", function () {
42
+ return client.test(`
43
+ query {
44
+ entities(where: {json_isNull: true}) {
45
+ id
46
+ }
47
+ }
48
+ `, {
49
+ entities: [{ id: '2' }]
50
+ });
51
+ });
52
+ it("on nested json prop", function () {
53
+ return client.test(`
54
+ query {
55
+ entities(where: {json: {a_isNull: true}} orderBy: id_ASC) {
56
+ id
57
+ }
58
+ }
59
+ `, {
60
+ entities: [{ id: '2' }, { id: '4' }]
61
+ });
62
+ });
63
+ it("on fk", function () {
64
+ return client.test(`
65
+ query {
66
+ entities(where: {meta_isNull: true}) {
67
+ id
68
+ }
69
+ }
70
+ `, {
71
+ entities: [{ id: '3' }]
72
+ });
73
+ });
74
+ });
75
+ //# sourceMappingURL=isNull.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isNull.test.js","sourceRoot":"","sources":["../../src/test/isNull.test.ts"],"names":[],"mappings":";;AAAA,wCAAmD;AAGnD,QAAQ,CAAC,iBAAiB,EAAE;IACxB,IAAA,mBAAW,EAAC;QACR,yCAAyC;QACzC,kFAAkF;QAClF,oCAAoC;QACpC,sEAAsE;QACtE,mEAAmE;QACnE,uEAAuE;QACvE,+EAA+E;KAClF,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAA,iBAAS,EAAC;;;;;;;;;;;;;;;KAexB,CAAC,CAAA;IAEF,EAAE,CAAC,WAAW,EAAE;QACZ,OAAO,MAAM,CAAC,IAAI,CAAC;;;;;;SAMlB,EAAE;YACC,QAAQ,EAAE,CAAC,EAAC,EAAE,EAAE,GAAG,EAAC,CAAC;SACxB,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,SAAS,EAAE;QACV,OAAO,MAAM,CAAC,IAAI,CAAC;;;;;;SAMlB,EAAE;YACC,QAAQ,EAAE,CAAC,EAAC,EAAE,EAAE,GAAG,EAAC,CAAC;SACxB,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qBAAqB,EAAE;QACtB,OAAO,MAAM,CAAC,IAAI,CAAC;;;;;;SAMlB,EAAE;YACC,QAAQ,EAAE,CAAC,EAAC,EAAE,EAAE,GAAG,EAAC,EAAE,EAAC,EAAE,EAAE,GAAG,EAAC,CAAC;SACnC,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,OAAO,EAAE;QACR,OAAO,MAAM,CAAC,IAAI,CAAC;;;;;;SAMlB,EAAE;YACC,QAAQ,EAAE,CAAC,EAAC,EAAE,EAAE,GAAG,EAAC,CAAC;SACxB,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
package/dist/where.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export declare type WhereOp = '-' | // no operator
2
- 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'contains' | 'not_contains' | 'startsWith' | 'not_startsWith' | 'endsWith' | 'not_endsWith' | 'containsAll' | 'containsAny' | 'containsNone' | 'some' | 'every' | 'none';
2
+ 'isNull' | 'eq' | 'not_eq' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'not_in' | 'contains' | 'not_contains' | 'startsWith' | 'not_startsWith' | 'endsWith' | 'not_endsWith' | 'containsAll' | 'containsAny' | 'containsNone' | 'some' | 'every' | 'none';
3
3
  export declare function parseWhereField(field: string): {
4
4
  op: WhereOp;
5
5
  field: string;
@@ -1 +1 @@
1
- {"version":3,"file":"where.d.ts","sourceRoot":"","sources":["../src/where.ts"],"names":[],"mappings":"AACA,oBAAY,OAAO,GACf,GAAG,GAAG,cAAc;AACpB,IAAI,GAAG,QAAQ,GACf,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,IAAI,GAAG,QAAQ,GACf,UAAU,GAAG,cAAc,GAC3B,YAAY,GAAG,gBAAgB,GAC/B,UAAU,GAAG,cAAc,GAC3B,aAAa,GACb,aAAa,GACb,cAAc,GACd,MAAM,GACN,OAAO,GACP,MAAM,CAAA;AAmCV,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG;IAAC,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAQ3E;AAGD,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,GAAG,GAAG,KAAK,IAAI,GAAG,CAsBvD;AAGD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAqBxD"}
1
+ {"version":3,"file":"where.d.ts","sourceRoot":"","sources":["../src/where.ts"],"names":[],"mappings":"AACA,oBAAY,OAAO,GACf,GAAG,GAAG,cAAc;AACpB,QAAQ,GACR,IAAI,GAAG,QAAQ,GACf,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,IAAI,GAAG,QAAQ,GACf,UAAU,GAAG,cAAc,GAC3B,YAAY,GAAG,gBAAgB,GAC/B,UAAU,GAAG,cAAc,GAC3B,aAAa,GACb,aAAa,GACb,cAAc,GACd,MAAM,GACN,OAAO,GACP,MAAM,CAAA;AAoCV,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG;IAAC,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAQ3E;AAGD,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,GAAG,GAAG,KAAK,IAAI,GAAG,CAsBvD;AAGD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAqBxD"}
package/dist/where.js CHANGED
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.whereOpToSqlOperator = exports.hasConditions = exports.parseWhereField = void 0;
4
4
  const ENDINGS = [
5
+ 'isNull',
5
6
  'eq',
6
7
  'not_eq',
7
8
  'gt',
package/dist/where.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"where.js","sourceRoot":"","sources":["../src/where.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"where.js","sourceRoot":"","sources":["../src/where.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subsquid/openreader",
3
- "version": "0.4.1",
3
+ "version": "0.5.0",
4
4
  "description": "GraphQL server for squid framework",
5
5
  "keywords": [
6
6
  "graphql",
@@ -141,9 +141,11 @@ export function generateOpenCrudQueries(model: Model): string {
141
141
  switch(prop.type.kind) {
142
142
  case 'scalar':
143
143
  case 'enum':
144
+ generateIsNullFilter(key, prop)
144
145
  generateScalarFilters(key, prop.type.name)
145
146
  break
146
147
  case 'list':
148
+ generateIsNullFilter(key, prop)
147
149
  if (prop.type.item.type.kind == 'scalar' || prop.type.item.type.kind == 'enum') {
148
150
  let item = prop.type.item.type.name
149
151
  out.line(`${key}_containsAll: [${item}!]`)
@@ -152,14 +154,17 @@ export function generateOpenCrudQueries(model: Model): string {
152
154
  }
153
155
  break
154
156
  case 'object':
157
+ generateIsNullFilter(key, prop)
155
158
  if (hasFilters(getObject(prop.type.name))) {
156
159
  out.line(`${key}: ${prop.type.name}WhereInput`)
157
160
  }
158
161
  break
159
162
  case 'union':
163
+ generateIsNullFilter(key, prop)
160
164
  out.line(`${key}: ${prop.type.name}WhereInput`)
161
165
  break
162
166
  case 'fk':
167
+ generateIsNullFilter(key, prop)
163
168
  out.line(`${key}: ${prop.type.foreignEntity}WhereInput`)
164
169
  break
165
170
  case 'lookup':
@@ -174,6 +179,11 @@ export function generateOpenCrudQueries(model: Model): string {
174
179
  }
175
180
  }
176
181
 
182
+ function generateIsNullFilter(key: string, prop: Prop): void {
183
+ if (!prop.nullable) return
184
+ out.line(`${key}_isNull: Boolean`)
185
+ }
186
+
177
187
  function hasFilters(obj: JsonObject): boolean {
178
188
  for (let key in obj.properties) {
179
189
  let propType = obj.properties[key].type
@@ -1,6 +1,5 @@
1
1
  import {toSnakeCase} from "@subsquid/util"
2
2
  import assert from "assert"
3
- import type {ClientBase, QueryArrayResult} from "pg"
4
3
  import {Database} from "./db"
5
4
  import type {Entity, JsonObject, Model} from "./model"
6
5
  import {getEntity, getFtsQuery, getObject, getUnionProps} from "./model.tools"
@@ -81,7 +80,7 @@ export class QueryBuilder {
81
80
  break
82
81
  default:
83
82
  if (columns.size()) {
84
- out += `SELECT ${columns.render()}\n`
83
+ out += `SELECT ${columns.render(true)}\n`
85
84
  }
86
85
  }
87
86
 
@@ -304,6 +303,15 @@ export class QueryBuilder {
304
303
 
305
304
  private addPropCondition(exps: string[], cursor: Cursor, field: string, op: WhereOp, arg: any): void {
306
305
  let propType = cursor.object.properties[field].type
306
+ if (op == 'isNull') {
307
+ let lhs = propType.kind == 'fk' ? cursor.fk(field) : cursor.field(field)
308
+ if (arg) {
309
+ exps.push(`${lhs} IS NULL`)
310
+ } else {
311
+ exps.push(`${lhs} IS NOT NULL`)
312
+ }
313
+ return
314
+ }
307
315
  switch(propType.kind) {
308
316
  case 'scalar':
309
317
  case 'enum': {
@@ -724,8 +732,12 @@ class ColumnSet {
724
732
  return idx
725
733
  }
726
734
 
727
- render(): string {
728
- return Array.from(this.columns.keys()).join(', ')
735
+ render(withAliases?: boolean): string {
736
+ let cols = Array.from(this.columns.keys())
737
+ if (withAliases) {
738
+ cols = cols.map((col, idx) => `${col} AS _c${idx}`)
739
+ }
740
+ return cols.join(', ')
729
741
  }
730
742
 
731
743
  size(): number {
@@ -0,0 +1,79 @@
1
+ import {useDatabase, useServer} from "./util/setup"
2
+
3
+
4
+ describe('isNull operator', function() {
5
+ useDatabase([
6
+ `create table meta (id text primary key)`,
7
+ `create table entity (id text primary key, scalar text, json jsonb, meta_id text)`,
8
+ `insert into meta (id) values ('1')`,
9
+ `insert into entity (id, json, meta_id) values ('1', '{"a": 1}', '1')`,
10
+ `insert into entity (id, scalar, meta_id) values ('2', 'foo', '1')`,
11
+ `insert into entity (id, scalar, json) values ('3', 'foo', '{"a": 2}')`,
12
+ `insert into entity (id, scalar, json, meta_id) values ('4', 'foo', '{}', '1')`,
13
+ ])
14
+
15
+ const client = useServer(`
16
+ type Meta @entity {
17
+ id: ID!
18
+ }
19
+
20
+ type Entity @entity {
21
+ id: ID!
22
+ scalar: String
23
+ json: JsonObject
24
+ meta: Meta
25
+ }
26
+
27
+ type JsonObject {
28
+ a: Int
29
+ }
30
+ `)
31
+
32
+ it("on scalar", function() {
33
+ return client.test(`
34
+ query {
35
+ entities(where: {scalar_isNull: true}) {
36
+ id
37
+ }
38
+ }
39
+ `, {
40
+ entities: [{id: '1'}]
41
+ })
42
+ })
43
+
44
+ it("on json", function() {
45
+ return client.test(`
46
+ query {
47
+ entities(where: {json_isNull: true}) {
48
+ id
49
+ }
50
+ }
51
+ `, {
52
+ entities: [{id: '2'}]
53
+ })
54
+ })
55
+
56
+ it("on nested json prop", function() {
57
+ return client.test(`
58
+ query {
59
+ entities(where: {json: {a_isNull: true}} orderBy: id_ASC) {
60
+ id
61
+ }
62
+ }
63
+ `, {
64
+ entities: [{id: '2'}, {id: '4'}]
65
+ })
66
+ })
67
+
68
+ it("on fk", function() {
69
+ return client.test(`
70
+ query {
71
+ entities(where: {meta_isNull: true}) {
72
+ id
73
+ }
74
+ }
75
+ `, {
76
+ entities: [{id: '3'}]
77
+ })
78
+ })
79
+ })
package/src/where.ts CHANGED
@@ -1,6 +1,7 @@
1
1
 
2
2
  export type WhereOp =
3
3
  '-' | // no operator
4
+ 'isNull' |
4
5
  'eq' | 'not_eq' |
5
6
  'gt' |
6
7
  'gte' |
@@ -19,6 +20,7 @@ export type WhereOp =
19
20
 
20
21
 
21
22
  const ENDINGS = [
23
+ 'isNull',
22
24
  'eq',
23
25
  'not_eq',
24
26
  'gt',