@smartive/graphql-magic 11.1.1 → 11.2.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 +3 -3
- package/dist/bin/gqm.cjs +6 -2
- package/dist/cjs/index.cjs +36 -6
- package/dist/esm/client/mutations.js.map +1 -1
- package/dist/esm/client/queries.js.map +1 -1
- package/dist/esm/db/generate.js.map +1 -1
- package/dist/esm/migrations/generate.js.map +1 -1
- package/dist/esm/models/model-definitions.d.ts +1 -0
- package/dist/esm/models/models.js.map +1 -1
- package/dist/esm/models/utils.d.ts +2 -0
- package/dist/esm/models/utils.js.map +1 -1
- package/dist/esm/permissions/check.js.map +1 -1
- package/dist/esm/permissions/generate.js.map +1 -1
- package/dist/esm/resolvers/arguments.js.map +1 -1
- package/dist/esm/resolvers/filters.d.ts +0 -1
- package/dist/esm/resolvers/filters.js +31 -4
- package/dist/esm/resolvers/filters.js.map +1 -1
- package/dist/esm/resolvers/mutations.js.map +1 -1
- package/dist/esm/resolvers/node.js.map +1 -1
- package/dist/esm/resolvers/resolver.js.map +1 -1
- package/dist/esm/resolvers/selects.js.map +1 -1
- package/dist/esm/resolvers/utils.d.ts +1 -0
- package/dist/esm/resolvers/utils.js.map +1 -1
- package/dist/esm/schema/generate.js +11 -6
- package/dist/esm/schema/generate.js.map +1 -1
- package/dist/esm/schema/utils.js.map +1 -1
- package/package.json +9 -9
- package/src/models/model-definitions.ts +1 -0
- package/src/resolvers/filters.ts +40 -9
- package/src/resolvers/utils.ts +2 -0
- package/src/schema/generate.ts +11 -6
- package/tests/api/__snapshots__/query.spec.ts.snap +74 -0
- package/tests/api/query.spec.ts +29 -0
- package/tests/generated/api/index.ts +2 -0
- package/tests/generated/client/index.ts +16 -24
- package/tests/generated/models.json +3 -1
- package/tests/generated/schema.graphql +2 -0
- package/tests/utils/database/seed.ts +21 -0
- package/tests/utils/models.ts +2 -0
|
@@ -53,6 +53,7 @@ export type AnotherObjectOrderBy = {
|
|
|
53
53
|
export type AnotherObjectWhere = {
|
|
54
54
|
deleted?: InputMaybe<Array<Scalars['Boolean']['input']>>;
|
|
55
55
|
id?: InputMaybe<Array<Scalars['ID']['input']>>;
|
|
56
|
+
manyObjects_SOME?: InputMaybe<SomeObjectWhere>;
|
|
56
57
|
};
|
|
57
58
|
|
|
58
59
|
export type AnotherObjectWhereUnique = {
|
|
@@ -609,6 +610,7 @@ export type SomeObjectOrderBy = {
|
|
|
609
610
|
export type SomeObjectWhere = {
|
|
610
611
|
another?: InputMaybe<AnotherObjectWhere>;
|
|
611
612
|
deleted?: InputMaybe<Array<Scalars['Boolean']['input']>>;
|
|
613
|
+
float?: InputMaybe<Array<Scalars['Float']['input']>>;
|
|
612
614
|
id?: InputMaybe<Array<Scalars['ID']['input']>>;
|
|
613
615
|
};
|
|
614
616
|
|
|
@@ -851,6 +853,11 @@ export type SomeQueryQueryVariables = Exact<{ [key: string]: never; }>;
|
|
|
851
853
|
|
|
852
854
|
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 }> } }> };
|
|
853
855
|
|
|
856
|
+
export type ReverseFiltersQueryQueryVariables = Exact<{ [key: string]: never; }>;
|
|
857
|
+
|
|
858
|
+
|
|
859
|
+
export type ReverseFiltersQueryQuery = { first: Array<{ __typename: 'AnotherObject', id: string, manyObjects: Array<{ __typename: 'SomeObject', float: number }> }>, second: Array<{ __typename: 'AnotherObject', id: string, manyObjects: Array<{ __typename: 'SomeObject', float: number }> }> };
|
|
860
|
+
|
|
854
861
|
export type DeleteAnotherObjectMutationMutationVariables = Exact<{
|
|
855
862
|
id: Scalars['ID']['input'];
|
|
856
863
|
}>;
|
|
@@ -981,16 +988,6 @@ export type RestoreAnswerMutationMutationVariables = Exact<{
|
|
|
981
988
|
|
|
982
989
|
export type RestoreAnswerMutationMutation = { restoreAnswer: string };
|
|
983
990
|
|
|
984
|
-
export type AnotherQueryQueryVariables = Exact<{ [key: string]: never; }>;
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
export type AnotherQueryQuery = { manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null, another: { __typename: 'AnotherObject', id: string, manyObjects: Array<{ __typename: 'SomeObject', id: string, field: string | null }> } }> };
|
|
988
|
-
|
|
989
|
-
export type YetAnotherQueryQueryVariables = Exact<{ [key: string]: never; }>;
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
export type YetAnotherQueryQuery = { someObject: { __typename: 'SomeObject', id: string, field: string | null } };
|
|
993
|
-
|
|
994
991
|
type DiscriminateUnion<T, U> = T extends U ? T : never;
|
|
995
992
|
|
|
996
993
|
export namespace DeleteAnotherObject {
|
|
@@ -1050,6 +1047,15 @@ export namespace SomeQuery {
|
|
|
1050
1047
|
export type _manyObjects = NonNullable<(NonNullable<(NonNullable<NonNullable<(NonNullable<SomeQueryQuery['manyObjects']>)[number]>['another']>)['manyObjects']>)[number]>;
|
|
1051
1048
|
}
|
|
1052
1049
|
|
|
1050
|
+
export namespace ReverseFiltersQuery {
|
|
1051
|
+
export type Variables = ReverseFiltersQueryQueryVariables;
|
|
1052
|
+
export type query = ReverseFiltersQueryQuery;
|
|
1053
|
+
export type first = NonNullable<(NonNullable<ReverseFiltersQueryQuery['first']>)[number]>;
|
|
1054
|
+
export type manyObjects = NonNullable<(NonNullable<NonNullable<(NonNullable<ReverseFiltersQueryQuery['first']>)[number]>['manyObjects']>)[number]>;
|
|
1055
|
+
export type second = NonNullable<(NonNullable<ReverseFiltersQueryQuery['second']>)[number]>;
|
|
1056
|
+
export type _manyObjects = NonNullable<(NonNullable<NonNullable<(NonNullable<ReverseFiltersQueryQuery['second']>)[number]>['manyObjects']>)[number]>;
|
|
1057
|
+
}
|
|
1058
|
+
|
|
1053
1059
|
export namespace DeleteAnotherObjectMutation {
|
|
1054
1060
|
export type Variables = DeleteAnotherObjectMutationMutationVariables;
|
|
1055
1061
|
export type mutation = DeleteAnotherObjectMutationMutation;
|
|
@@ -1147,17 +1153,3 @@ export namespace RestoreAnswerMutation {
|
|
|
1147
1153
|
export type Variables = RestoreAnswerMutationMutationVariables;
|
|
1148
1154
|
export type mutation = RestoreAnswerMutationMutation;
|
|
1149
1155
|
}
|
|
1150
|
-
|
|
1151
|
-
export namespace AnotherQuery {
|
|
1152
|
-
export type Variables = AnotherQueryQueryVariables;
|
|
1153
|
-
export type query = AnotherQueryQuery;
|
|
1154
|
-
export type manyObjects = NonNullable<(NonNullable<AnotherQueryQuery['manyObjects']>)[number]>;
|
|
1155
|
-
export type another = (NonNullable<NonNullable<(NonNullable<AnotherQueryQuery['manyObjects']>)[number]>['another']>);
|
|
1156
|
-
export type _manyObjects = NonNullable<(NonNullable<(NonNullable<NonNullable<(NonNullable<AnotherQueryQuery['manyObjects']>)[number]>['another']>)['manyObjects']>)[number]>;
|
|
1157
|
-
}
|
|
1158
|
-
|
|
1159
|
-
export namespace YetAnotherQuery {
|
|
1160
|
-
export type Variables = YetAnotherQueryQueryVariables;
|
|
1161
|
-
export type query = YetAnotherQueryQuery;
|
|
1162
|
-
export type someObject = (NonNullable<YetAnotherQueryQuery['someObject']>);
|
|
1163
|
-
}
|
|
@@ -132,6 +132,7 @@
|
|
|
132
132
|
"kind": "relation",
|
|
133
133
|
"type": "AnotherObject",
|
|
134
134
|
"filterable": true,
|
|
135
|
+
"reverseFilterable": true,
|
|
135
136
|
"updatable": true,
|
|
136
137
|
"nonNull": true,
|
|
137
138
|
"foreignKey": "anotherId"
|
|
@@ -141,7 +142,8 @@
|
|
|
141
142
|
"type": "Float",
|
|
142
143
|
"scale": 1,
|
|
143
144
|
"precision": 1,
|
|
144
|
-
"nonNull": true
|
|
145
|
+
"nonNull": true,
|
|
146
|
+
"filterable": true
|
|
145
147
|
},
|
|
146
148
|
{
|
|
147
149
|
"kind": "enum",
|
|
@@ -17,6 +17,7 @@ input AnotherObjectOrderBy {
|
|
|
17
17
|
input AnotherObjectWhere {
|
|
18
18
|
id: [ID!]
|
|
19
19
|
deleted: [Boolean!]
|
|
20
|
+
manyObjects_SOME: SomeObjectWhere
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
input AnotherObjectWhereUnique {
|
|
@@ -262,6 +263,7 @@ input SomeObjectOrderBy {
|
|
|
262
263
|
|
|
263
264
|
input SomeObjectWhere {
|
|
264
265
|
id: [ID!]
|
|
266
|
+
float: [Float!]
|
|
265
267
|
deleted: [Boolean!]
|
|
266
268
|
another: AnotherObjectWhere
|
|
267
269
|
}
|
|
@@ -8,7 +8,10 @@ import { models } from '../models';
|
|
|
8
8
|
export const ADMIN_ID = '04e45b48-04cf-4b38-bb25-b9af5ae0b2c4';
|
|
9
9
|
|
|
10
10
|
export const SOME_ID = '604ab55d-ec3e-4857-9f27-219158f80e64';
|
|
11
|
+
export const SOME_ID_2 = 'fc4e013e-4cb0-4ef8-9f2e-3d475bdf2b90';
|
|
12
|
+
export const SOME_ID_3 = '37a23870-e7f5-45c8-86e5-f14d9f2405f9';
|
|
11
13
|
export const ANOTHER_ID = '226a20e8-5c18-4423-99ca-eb0df6ff4fdd';
|
|
14
|
+
export const ANOTHER_ID_2 = 'ba5d94a8-0035-4e45-9258-2f7676eb8d18';
|
|
12
15
|
export const QUESTION_ID = '3d0f3254-282f-4f1f-95e3-c1f699f3c1e5';
|
|
13
16
|
export const ANSWER_ID = 'f2d7b3f1-8ea1-4c2c-91ec-024432da1b0d';
|
|
14
17
|
export const REVIEW_ID = '817c55de-2f77-4159-bd44-9837d868f889';
|
|
@@ -26,6 +29,10 @@ export const seed: SeedData = {
|
|
|
26
29
|
id: ANOTHER_ID,
|
|
27
30
|
myselfId: ANOTHER_ID,
|
|
28
31
|
},
|
|
32
|
+
{
|
|
33
|
+
id: ANOTHER_ID_2,
|
|
34
|
+
myselfId: ANOTHER_ID,
|
|
35
|
+
},
|
|
29
36
|
],
|
|
30
37
|
SomeObject: [
|
|
31
38
|
{
|
|
@@ -35,6 +42,20 @@ export const seed: SeedData = {
|
|
|
35
42
|
list: ['A'],
|
|
36
43
|
xyz: 1,
|
|
37
44
|
},
|
|
45
|
+
{
|
|
46
|
+
id: SOME_ID_2,
|
|
47
|
+
anotherId: ANOTHER_ID,
|
|
48
|
+
float: 0.5,
|
|
49
|
+
list: ['B'],
|
|
50
|
+
xyz: 2,
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
id: SOME_ID_3,
|
|
54
|
+
anotherId: ANOTHER_ID_2,
|
|
55
|
+
float: 0.5,
|
|
56
|
+
list: ['B'],
|
|
57
|
+
xyz: 2,
|
|
58
|
+
},
|
|
38
59
|
],
|
|
39
60
|
Question: [
|
|
40
61
|
{
|
package/tests/utils/models.ts
CHANGED
|
@@ -76,6 +76,7 @@ const modelDefinitions: ModelDefinitions = [
|
|
|
76
76
|
kind: 'relation',
|
|
77
77
|
type: 'AnotherObject',
|
|
78
78
|
filterable: true,
|
|
79
|
+
reverseFilterable: true,
|
|
79
80
|
updatable: true,
|
|
80
81
|
nonNull: true,
|
|
81
82
|
},
|
|
@@ -85,6 +86,7 @@ const modelDefinitions: ModelDefinitions = [
|
|
|
85
86
|
scale: 1,
|
|
86
87
|
precision: 1,
|
|
87
88
|
nonNull: true,
|
|
89
|
+
filterable: true,
|
|
88
90
|
},
|
|
89
91
|
{
|
|
90
92
|
kind: 'enum',
|