@smartive/graphql-magic 17.0.0 → 17.1.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.
package/CHANGELOG.md CHANGED
@@ -1 +1,6 @@
1
- # [17.0.0](https://github.com/smartive/graphql-magic/compare/v16.3.8...v17.0.0) (2025-03-03)
1
+ # [17.1.0](https://github.com/smartive/graphql-magic/compare/v17.0.0...v17.1.0) (2025-03-03)
2
+
3
+
4
+ ### Features
5
+
6
+ * Filter relation by null ([#247](https://github.com/smartive/graphql-magic/issues/247)) ([a16ca2e](https://github.com/smartive/graphql-magic/commit/a16ca2e9d8fc4e8d78158e954153f353272d35e5))
@@ -1753,9 +1753,9 @@ var AliasGenerator = class {
1753
1753
  };
1754
1754
  var hash = (s) => (0, import_crypto.createHash)("md5").update(JSON.stringify(s)).digest("hex");
1755
1755
  var getColumnName = (field) => field.kind === "relation" ? field.foreignKey || `${field.name}Id` : field.name;
1756
- var getColumn = (node, key) => {
1757
- const field = node.model.fields.find((field2) => getColumnName(field2) === key);
1758
- return `${node.ctx.aliases.getShort(field.inherited ? node.rootTableAlias : node.tableAlias)}.${key}`;
1756
+ var getColumn = (node, fieldName) => {
1757
+ const field = node.model.fields.find((field2) => field2.name === fieldName);
1758
+ return `${node.ctx.aliases.getShort(field.inherited ? node.rootTableAlias : node.tableAlias)}.${getColumnName(field)}`;
1759
1759
  };
1760
1760
 
1761
1761
  // src/permissions/check.ts
@@ -2088,8 +2088,8 @@ var normalizeValueByTypeDefinition = (value2, type, schema) => {
2088
2088
  if (!type || type.kind !== import_graphql4.Kind.INPUT_OBJECT_TYPE_DEFINITION) {
2089
2089
  return value2;
2090
2090
  }
2091
- if (!value2) {
2092
- return;
2091
+ if (value2 === null || value2 === void 0) {
2092
+ return value2;
2093
2093
  }
2094
2094
  const res = {};
2095
2095
  for (const key of Object.keys(value2)) {
@@ -2223,8 +2223,13 @@ var applyWhere2 = (node, where, ops, joins) => {
2223
2223
  continue;
2224
2224
  }
2225
2225
  const field = node.model.getField(key);
2226
+ const column = getColumn(node, key);
2226
2227
  if (field.kind === "relation") {
2227
2228
  const relation = node.model.getRelation(field.name);
2229
+ if (value2 === null) {
2230
+ ops.push((query) => query.whereNull(column));
2231
+ continue;
2232
+ }
2228
2233
  const targetModel = relation.targetModel;
2229
2234
  const rootTableAlias = `${node.model.name}__W__${key}`;
2230
2235
  const tableAlias = targetModel === targetModel.rootModel ? rootTableAlias : `${node.model.name}__WS__${key}`;
@@ -2238,7 +2243,6 @@ var applyWhere2 = (node, where, ops, joins) => {
2238
2243
  applyWhere2(subNode, value2, ops, joins);
2239
2244
  continue;
2240
2245
  }
2241
- const column = getColumn(node, key);
2242
2246
  if (Array.isArray(value2)) {
2243
2247
  if (field && field.list) {
2244
2248
  ops.push(
@@ -71,8 +71,8 @@ export const normalizeValueByTypeDefinition = (value, type, schema) => {
71
71
  if (!type || type.kind !== Kind.INPUT_OBJECT_TYPE_DEFINITION) {
72
72
  return value;
73
73
  }
74
- if (!value) {
75
- return;
74
+ if (value === null || value === undefined) {
75
+ return value;
76
76
  }
77
77
  const res = {};
78
78
  for (const key of Object.keys(value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/resolvers/arguments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/resolvers/arguments.ts"],"names":[],"mappings":"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"}
@@ -119,8 +119,13 @@ const applyWhere = (node, where, ops, joins) => {
119
119
  continue;
120
120
  }
121
121
  const field = node.model.getField(key);
122
+ const column = getColumn(node, key);
122
123
  if (field.kind === 'relation') {
123
124
  const relation = node.model.getRelation(field.name);
125
+ if (value === null) {
126
+ ops.push((query) => query.whereNull(column));
127
+ continue;
128
+ }
124
129
  const targetModel = relation.targetModel;
125
130
  const rootTableAlias = `${node.model.name}__W__${key}`;
126
131
  const tableAlias = targetModel === targetModel.rootModel ? rootTableAlias : `${node.model.name}__WS__${key}`;
@@ -134,7 +139,6 @@ const applyWhere = (node, where, ops, joins) => {
134
139
  applyWhere(subNode, value, ops, joins);
135
140
  continue;
136
141
  }
137
- const column = getColumn(node, key);
138
142
  if (Array.isArray(value)) {
139
143
  if (field && field.list) {
140
144
  ops.push((query) => ors(query, value.map((v) => (subQuery) => subQuery.whereRaw('? = ANY(??)', [v, column]))));
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/resolvers/filters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../src/resolvers/filters.ts"],"names":[],"mappings":"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"}
@@ -44,5 +44,5 @@ export declare class AliasGenerator {
44
44
  }
45
45
  export declare const hash: (s: any) => string;
46
46
  export declare const getColumnName: (field: EntityField) => string;
47
- export declare const getColumn: (node: Pick<ResolverNode, "model" | "ctx" | "rootTableAlias" | "tableAlias">, key: string) => string;
47
+ export declare const getColumn: (node: Pick<ResolverNode, "model" | "ctx" | "rootTableAlias" | "tableAlias">, fieldName: string) => string;
48
48
  export {};
@@ -128,8 +128,8 @@ export class AliasGenerator {
128
128
  }
129
129
  export const hash = (s) => createHash('md5').update(JSON.stringify(s)).digest('hex');
130
130
  export const getColumnName = (field) => field.kind === 'relation' ? field.foreignKey || `${field.name}Id` : field.name;
131
- export const getColumn = (node, key) => {
132
- const field = node.model.fields.find((field) => getColumnName(field) === key);
133
- return `${node.ctx.aliases.getShort(field.inherited ? node.rootTableAlias : node.tableAlias)}.${key}`;
131
+ export const getColumn = (node, fieldName) => {
132
+ const field = node.model.fields.find((field) => field.name === fieldName);
133
+ return `${node.ctx.aliases.getShort(field.inherited ? node.rootTableAlias : node.tableAlias)}.${getColumnName(field)}`;
134
134
  };
135
135
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/resolvers/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/resolvers/utils.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export const up = async (knex: Knex) => {
31
31
  await knex.schema.createTable('SomeObject', (table) => {
32
32
  table.uuid('id').notNullable().primary();
33
33
  table.string('field', undefined).nullable();
34
- table.uuid('anotherId').notNullable();
34
+ table.uuid('anotherId').nullable();
35
35
  table.foreign('anotherId').references('id').inTable('AnotherObject').onDelete('CASCADE');
36
36
  table.decimal('float', 1, 1).notNullable();
37
37
  table.specificType('list', '"someEnum"[]').notNullable();
@@ -54,7 +54,7 @@ export const up = async (knex: Knex) => {
54
54
  table.uuid('createdById').notNullable();
55
55
  table.timestamp('createdAt').notNullable().defaultTo(knex.fn.now(0));
56
56
  table.boolean('deleted').notNullable();
57
- table.uuid('anotherId').notNullable();
57
+ table.uuid('anotherId').nullable();
58
58
  table.foreign('anotherId').references('id').inTable('AnotherObject').onDelete('CASCADE');
59
59
  table.integer('xyz').notNullable();
60
60
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smartive/graphql-magic",
3
- "version": "17.0.0",
3
+ "version": "17.1.0",
4
4
  "description": "",
5
5
  "source": "src/index.ts",
6
6
  "type": "module",
@@ -117,9 +117,11 @@ export const normalizeValueByTypeDefinition = (value: Value, type: Maybe<TypeDef
117
117
  if (!type || type.kind !== Kind.INPUT_OBJECT_TYPE_DEFINITION) {
118
118
  return value;
119
119
  }
120
- if (!value) {
121
- return;
120
+
121
+ if (value === null || value === undefined) {
122
+ return value;
122
123
  }
124
+
123
125
  const res: Record<string, Value> = {};
124
126
  for (const key of Object.keys(value)) {
125
127
  const field = summonByKey(type.fields, 'name.value', key);
@@ -158,8 +158,16 @@ const applyWhere = (node: WhereNode, where: Where | undefined, ops: QueryBuilder
158
158
 
159
159
  const field = node.model.getField(key);
160
160
 
161
+ const column = getColumn(node, key);
162
+
161
163
  if (field.kind === 'relation') {
162
164
  const relation = node.model.getRelation(field.name);
165
+
166
+ if (value === null) {
167
+ ops.push((query) => query.whereNull(column));
168
+ continue;
169
+ }
170
+
163
171
  const targetModel = relation.targetModel;
164
172
  const rootTableAlias = `${node.model.name}__W__${key}`;
165
173
  const tableAlias = targetModel === targetModel.rootModel ? rootTableAlias : `${node.model.name}__WS__${key}`;
@@ -174,8 +182,6 @@ const applyWhere = (node: WhereNode, where: Where | undefined, ops: QueryBuilder
174
182
  continue;
175
183
  }
176
184
 
177
- const column = getColumn(node, key);
178
-
179
185
  if (Array.isArray(value)) {
180
186
  if (field && field.list) {
181
187
  ops.push((query) =>
@@ -204,8 +204,11 @@ export const hash = (s: any) => createHash('md5').update(JSON.stringify(s)).dige
204
204
  export const getColumnName = (field: EntityField) =>
205
205
  field.kind === 'relation' ? field.foreignKey || `${field.name}Id` : field.name;
206
206
 
207
- export const getColumn = (node: Pick<ResolverNode, 'model' | 'ctx' | 'rootTableAlias' | 'tableAlias'>, key: string) => {
208
- const field = node.model.fields.find((field) => getColumnName(field) === key)!;
207
+ export const getColumn = (
208
+ node: Pick<ResolverNode, 'model' | 'ctx' | 'rootTableAlias' | 'tableAlias'>,
209
+ fieldName: string,
210
+ ) => {
211
+ const field = node.model.fields.find((field) => field.name === fieldName)!;
209
212
 
210
- return `${node.ctx.aliases.getShort(field.inherited ? node.rootTableAlias : node.tableAlias)}.${key}`;
213
+ return `${node.ctx.aliases.getShort(field.inherited ? node.rootTableAlias : node.tableAlias)}.${getColumnName(field)}`;
211
214
  };
@@ -19,6 +19,9 @@ exports[`query NOT works 1`] = `
19
19
  {
20
20
  "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
21
21
  },
22
+ {
23
+ "id": "a80213a4-3168-4500-b559-3d9c1b469f9e",
24
+ },
22
25
  ],
23
26
  }
24
27
  `;
@@ -44,7 +47,7 @@ exports[`query can be executed 1`] = `
44
47
  "id": "226a20e8-5c18-4423-99ca-eb0df6ff4fdd",
45
48
  "manyObjects": [
46
49
  {
47
- "field": null,
50
+ "field": "Some value",
48
51
  "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
49
52
  },
50
53
  ],
@@ -56,16 +59,184 @@ exports[`query can be executed 1`] = `
56
59
  {
57
60
  "another": {
58
61
  "id": "226a20e8-5c18-4423-99ca-eb0df6ff4fdd",
62
+ "manyObjects": [
63
+ {
64
+ "field": "Some value",
65
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
66
+ },
67
+ ],
68
+ },
69
+ "field": "Some value",
70
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
71
+ "xyz": 1,
72
+ },
73
+ ],
74
+ }
75
+ `;
76
+
77
+ exports[`query filters by null relation correctly 1`] = `
78
+ {
79
+ "all": [
80
+ {
81
+ "another": null,
82
+ "id": "a80213a4-3168-4500-b559-3d9c1b469f9e",
83
+ },
84
+ {
85
+ "another": {
86
+ "id": "ba5d94a8-0035-4e45-9258-2f7676eb8d18",
87
+ },
88
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
89
+ },
90
+ {
91
+ "another": {
92
+ "id": "226a20e8-5c18-4423-99ca-eb0df6ff4fdd",
93
+ },
94
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
95
+ },
96
+ {
97
+ "another": {
98
+ "id": "226a20e8-5c18-4423-99ca-eb0df6ff4fdd",
99
+ },
100
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
101
+ },
102
+ ],
103
+ "withNotNullAnother": [
104
+ {
105
+ "another": {
106
+ "id": "ba5d94a8-0035-4e45-9258-2f7676eb8d18",
107
+ },
108
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
109
+ },
110
+ {
111
+ "another": {
112
+ "id": "226a20e8-5c18-4423-99ca-eb0df6ff4fdd",
113
+ },
114
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
115
+ },
116
+ {
117
+ "another": {
118
+ "id": "226a20e8-5c18-4423-99ca-eb0df6ff4fdd",
119
+ },
120
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
121
+ },
122
+ ],
123
+ "withNullAnother": [
124
+ {
125
+ "another": null,
126
+ "id": "a80213a4-3168-4500-b559-3d9c1b469f9e",
127
+ },
128
+ ],
129
+ }
130
+ `;
131
+
132
+ exports[`query filters by null values correctly 1`] = `
133
+ {
134
+ "all": [
135
+ {
136
+ "field": null,
137
+ "id": "a80213a4-3168-4500-b559-3d9c1b469f9e",
138
+ },
139
+ {
140
+ "field": null,
141
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
142
+ },
143
+ {
144
+ "field": null,
145
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
146
+ },
147
+ {
148
+ "field": "Some value",
149
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
150
+ },
151
+ ],
152
+ "withComplexFilter": [
153
+ {
154
+ "field": null,
155
+ "id": "a80213a4-3168-4500-b559-3d9c1b469f9e",
156
+ },
157
+ {
158
+ "field": null,
159
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
160
+ },
161
+ {
162
+ "field": null,
163
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
164
+ },
165
+ {
166
+ "field": "Some value",
167
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
168
+ },
169
+ ],
170
+ "withNestedFilter": [
171
+ {
172
+ "another": {
173
+ "manyObjects": [
174
+ {
175
+ "field": null,
176
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
177
+ },
178
+ ],
179
+ },
180
+ "field": null,
181
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
182
+ },
183
+ {
184
+ "another": {
59
185
  "manyObjects": [
60
186
  {
61
187
  "field": null,
188
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
189
+ },
190
+ {
191
+ "field": "Some value",
62
192
  "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
63
193
  },
64
194
  ],
65
195
  },
66
196
  "field": null,
197
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
198
+ },
199
+ {
200
+ "another": {
201
+ "manyObjects": [
202
+ {
203
+ "field": null,
204
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
205
+ },
206
+ {
207
+ "field": "Some value",
208
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
209
+ },
210
+ ],
211
+ },
212
+ "field": "Some value",
213
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
214
+ },
215
+ ],
216
+ "withNotNullField": [
217
+ {
218
+ "field": "Some value",
219
+ "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
220
+ },
221
+ ],
222
+ "withNullField": [
223
+ {
224
+ "field": null,
225
+ "id": "a80213a4-3168-4500-b559-3d9c1b469f9e",
226
+ },
227
+ {
228
+ "field": null,
229
+ "id": "37a23870-e7f5-45c8-86e5-f14d9f2405f9",
230
+ },
231
+ {
232
+ "field": null,
233
+ "id": "fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90",
234
+ },
235
+ ],
236
+ "withSpecificField": [
237
+ {
238
+ "field": "Some value",
67
239
  "id": "604ab55d-ec3e-4857-9f27-219158f80e64",
68
- "xyz": 1,
69
240
  },
70
241
  ],
71
242
  }
@@ -114,4 +114,74 @@ describe('query', () => {
114
114
  ).toMatchSnapshot();
115
115
  });
116
116
  });
117
+
118
+ it('filters by null values correctly', async () => {
119
+ await withServer(async (request) => {
120
+ expect(
121
+ await request(gql`
122
+ query NullFilterQuery {
123
+ all: manyObjects {
124
+ id
125
+ field
126
+ }
127
+ withNullField: manyObjects(where: { field: null }) {
128
+ id
129
+ field
130
+ }
131
+ withNotNullField: manyObjects(where: { NOT: { field: null } }) {
132
+ id
133
+ field
134
+ }
135
+ withSpecificField: manyObjects(where: { field: "Some value" }) {
136
+ id
137
+ field
138
+ }
139
+ withComplexFilter: manyObjects(where: { OR: [{ field: null }, { field: "Some value" }] }) {
140
+ id
141
+ field
142
+ }
143
+ withNestedFilter: manyObjects(where: { another: { manyObjects_SOME: { field: null } } }) {
144
+ id
145
+ field
146
+ another {
147
+ manyObjects {
148
+ id
149
+ field
150
+ }
151
+ }
152
+ }
153
+ }
154
+ `)
155
+ ).toMatchSnapshot();
156
+ });
157
+ });
158
+
159
+ it('filters by null relation correctly', async () => {
160
+ await withServer(async (request) => {
161
+ expect(
162
+ await request(gql`
163
+ query NullRelationFilterQuery {
164
+ all: manyObjects {
165
+ id
166
+ another {
167
+ id
168
+ }
169
+ }
170
+ withNullAnother: manyObjects(where: { another: null }) {
171
+ id
172
+ another {
173
+ id
174
+ }
175
+ }
176
+ withNotNullAnother: manyObjects(where: { NOT: { another: null } }) {
177
+ id
178
+ another {
179
+ id
180
+ }
181
+ }
182
+ }
183
+ `)
184
+ ).toMatchSnapshot();
185
+ });
186
+ });
117
187
  });
@@ -599,7 +599,7 @@ export enum SomeEnum {
599
599
 
600
600
  export type SomeObject = {
601
601
  __typename?: 'SomeObject';
602
- another: AnotherObject;
602
+ another?: Maybe<AnotherObject>;
603
603
  createdAt: Scalars['DateTime']['output'];
604
604
  createdBy: User;
605
605
  deleted: Scalars['Boolean']['output'];
@@ -632,6 +632,7 @@ export type SomeObjectWhere = {
632
632
  OR?: InputMaybe<Array<SomeObjectWhere>>;
633
633
  another?: InputMaybe<AnotherObjectWhere>;
634
634
  deleted?: InputMaybe<Array<Scalars['Boolean']['input']>>;
635
+ field?: InputMaybe<Array<Scalars['String']['input']>>;
635
636
  float?: InputMaybe<Array<Scalars['Float']['input']>>;
636
637
  id?: InputMaybe<Array<Scalars['ID']['input']>>;
637
638
  xyz?: InputMaybe<Array<Scalars['Int']['input']>>;
@@ -1134,7 +1135,7 @@ export type ReviewResolvers<ContextType = any, ParentType extends ResolversParen
1134
1135
  };
1135
1136
 
1136
1137
  export type SomeObjectResolvers<ContextType = any, ParentType extends ResolversParentTypes['SomeObject'] = ResolversParentTypes['SomeObject']> = {
1137
- another?: Resolver<ResolversTypes['AnotherObject'], ParentType, ContextType>;
1138
+ another?: Resolver<Maybe<ResolversTypes['AnotherObject']>, ParentType, ContextType>;
1138
1139
  createdAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1139
1140
  createdBy?: Resolver<ResolversTypes['User'], ParentType, ContextType>;
1140
1141
  deleted?: Resolver<ResolversTypes['Boolean'], ParentType, ContextType>;
@@ -596,7 +596,7 @@ export enum SomeEnum {
596
596
 
597
597
  export type SomeObject = {
598
598
  __typename: 'SomeObject';
599
- another: AnotherObject;
599
+ another: Maybe<AnotherObject>;
600
600
  createdAt: Scalars['DateTime']['output'];
601
601
  createdBy: User;
602
602
  deleted: Scalars['Boolean']['output'];
@@ -629,6 +629,7 @@ export type SomeObjectWhere = {
629
629
  OR?: InputMaybe<Array<SomeObjectWhere>>;
630
630
  another?: InputMaybe<AnotherObjectWhere>;
631
631
  deleted?: InputMaybe<Array<Scalars['Boolean']['input']>>;
632
+ field?: InputMaybe<Array<Scalars['String']['input']>>;
632
633
  float?: InputMaybe<Array<Scalars['Float']['input']>>;
633
634
  id?: InputMaybe<Array<Scalars['ID']['input']>>;
634
635
  xyz?: InputMaybe<Array<Scalars['Int']['input']>>;
@@ -874,7 +875,7 @@ export type UpdateReviewMutation = { updateReview: { __typename: 'Review', conte
874
875
  export type SomeQueryQueryVariables = Exact<{ [key: string]: never; }>;
875
876
 
876
877
 
877
- export type SomeQueryQuery = { manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null, xyz: number, another: { __typename: 'AnotherObject', id: string, manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null }> } }> };
878
+ export type SomeQueryQuery = { manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null, xyz: number, another: { __typename: 'AnotherObject', id: string, manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null }> } | null }> };
878
879
 
879
880
  export type ReverseFiltersQueryQueryVariables = Exact<{ [key: string]: never; }>;
880
881
 
@@ -896,6 +897,16 @@ export type OrQueryQueryVariables = Exact<{ [key: string]: never; }>;
896
897
 
897
898
  export type OrQueryQuery = { manyObjects: Array<{ __typename: 'SomeObject', id: string }> };
898
899
 
900
+ export type NullFilterQueryQueryVariables = Exact<{ [key: string]: never; }>;
901
+
902
+
903
+ export type NullFilterQueryQuery = { all: Array<{ __typename: 'SomeObject', id: string, field: string | null }>, withNullField: Array<{ __typename: 'SomeObject', id: string, field: string | null }>, withNotNullField: Array<{ __typename: 'SomeObject', id: string, field: string | null }>, withSpecificField: Array<{ __typename: 'SomeObject', id: string, field: string | null }>, withComplexFilter: Array<{ __typename: 'SomeObject', id: string, field: string | null }>, withNestedFilter: Array<{ __typename: 'SomeObject', id: string, field: string | null, another: { __typename: 'AnotherObject', manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null }> } | null }> };
904
+
905
+ export type NullRelationFilterQueryQueryVariables = Exact<{ [key: string]: never; }>;
906
+
907
+
908
+ export type NullRelationFilterQueryQuery = { all: Array<{ __typename: 'SomeObject', id: string, another: { __typename: 'AnotherObject', id: string } | null }>, withNullAnother: Array<{ __typename: 'SomeObject', id: string, another: { __typename: 'AnotherObject', id: string } | null }>, withNotNullAnother: Array<{ __typename: 'SomeObject', id: string, another: { __typename: 'AnotherObject', id: string } | null }> };
909
+
899
910
  export type DeleteAnotherObjectMutationMutationVariables = Exact<{
900
911
  id: Scalars['ID']['input'];
901
912
  }>;
@@ -69,7 +69,7 @@ export type AnotherObjectSeed = {
69
69
  export type SomeObject = {
70
70
  'id': string;
71
71
  'field': string | null;
72
- 'anotherId': string;
72
+ 'anotherId': string | null;
73
73
  'float': number;
74
74
  'list': SomeEnum[];
75
75
  'xyz': number;
@@ -85,7 +85,7 @@ export type SomeObject = {
85
85
  export type SomeObjectInitializer = {
86
86
  'id': string;
87
87
  'field'?: string | null;
88
- 'anotherId': string;
88
+ 'anotherId'?: string | null;
89
89
  'float': number;
90
90
  'list': SomeEnum[] | string;
91
91
  'xyz': number;
@@ -101,7 +101,7 @@ export type SomeObjectInitializer = {
101
101
  export type SomeObjectMutator = {
102
102
  'id'?: string;
103
103
  'field'?: string | null;
104
- 'anotherId'?: string;
104
+ 'anotherId'?: string | null;
105
105
  'float'?: number;
106
106
  'list'?: SomeEnum[] | string;
107
107
  'xyz'?: number;
@@ -117,7 +117,7 @@ export type SomeObjectMutator = {
117
117
  export type SomeObjectSeed = {
118
118
  'id': string;
119
119
  'field'?: string | null;
120
- 'anotherId': string;
120
+ 'anotherId'?: string | null;
121
121
  'float': number;
122
122
  'list': string[] | string;
123
123
  'xyz': number;
@@ -126,6 +126,7 @@
126
126
  {
127
127
  "name": "field",
128
128
  "searchable": true,
129
+ "filterable": true,
129
130
  "type": "String"
130
131
  },
131
132
  {
@@ -135,7 +136,6 @@
135
136
  "filterable": true,
136
137
  "reverseFilterable": true,
137
138
  "updatable": true,
138
- "nonNull": true,
139
139
  "foreignKey": "anotherId"
140
140
  },
141
141
  {
@@ -257,7 +257,7 @@ enum SomeEnum {
257
257
  type SomeObject {
258
258
  id: ID!
259
259
  field: String
260
- another: AnotherObject!
260
+ another: AnotherObject
261
261
  float: Float!
262
262
  list(magic: Boolean): [SomeEnum!]!
263
263
  xyz: Int!
@@ -279,6 +279,7 @@ input SomeObjectOrderBy {
279
279
 
280
280
  input SomeObjectWhere {
281
281
  id: [ID!]
282
+ field: [String!]
282
283
  float: [Float!]
283
284
  xyz: [Int!]
284
285
  deleted: [Boolean!]
@@ -9,6 +9,7 @@ export const ADMIN_ID = '04e45b48-04cf-4b38-bb25-b9af5ae0b2c4';
9
9
  export const SOME_ID = '604ab55d-ec3e-4857-9f27-219158f80e64';
10
10
  export const SOME_ID_2 = 'fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90';
11
11
  export const SOME_ID_3 = '37a23870-e7f5-45c8-86e5-f14d9f2405f9';
12
+ export const SOME_ID_4 = 'a80213a4-3168-4500-b559-3d9c1b469f9e';
12
13
  export const ANOTHER_ID = '226a20e8-5c18-4423-99ca-eb0df6ff4fdd';
13
14
  export const ANOTHER_ID_2 = 'ba5d94a8-0035-4e45-9258-2f7676eb8d18';
14
15
  export const QUESTION_ID = '3d0f3254-282f-4f1f-95e3-c1f699f3c1e5';
@@ -37,6 +38,7 @@ export const seed: SeedData = {
37
38
  {
38
39
  id: SOME_ID,
39
40
  anotherId: ANOTHER_ID,
41
+ field: 'Some value',
40
42
  float: 0,
41
43
  list: ['A'],
42
44
  xyz: 1,
@@ -44,6 +46,7 @@ export const seed: SeedData = {
44
46
  {
45
47
  id: SOME_ID_2,
46
48
  anotherId: ANOTHER_ID,
49
+ field: null,
47
50
  float: 0.5,
48
51
  list: ['B'],
49
52
  xyz: 2,
@@ -55,6 +58,13 @@ export const seed: SeedData = {
55
58
  list: ['B'],
56
59
  xyz: 2,
57
60
  },
61
+ {
62
+ id: SOME_ID_4,
63
+ anotherId: null,
64
+ float: 0.5,
65
+ list: ['B'],
66
+ xyz: 2,
67
+ },
58
68
  ],
59
69
  Question: [
60
70
  {
@@ -70,6 +70,7 @@ const modelDefinitions: ModelDefinitions = [
70
70
  {
71
71
  name: 'field',
72
72
  searchable: true,
73
+ filterable: true,
73
74
  type: 'String',
74
75
  },
75
76
  {
@@ -79,7 +80,6 @@ const modelDefinitions: ModelDefinitions = [
79
80
  filterable: true,
80
81
  reverseFilterable: true,
81
82
  updatable: true,
82
- nonNull: true,
83
83
  },
84
84
  {
85
85
  name: 'float',