@payloadcms/graphql 3.0.0-alpha.8 → 3.0.0-beta.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/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -95
- package/dist/index.js.map +1 -0
- package/dist/resolvers/auth/access.d.ts +1 -1
- package/dist/resolvers/auth/access.d.ts.map +1 -1
- package/dist/resolvers/auth/access.js +8 -23
- package/dist/resolvers/auth/access.js.map +1 -0
- package/dist/resolvers/auth/forgotPassword.d.ts.map +1 -1
- package/dist/resolvers/auth/forgotPassword.js +6 -16
- package/dist/resolvers/auth/forgotPassword.js.map +1 -0
- package/dist/resolvers/auth/init.d.ts +1 -1
- package/dist/resolvers/auth/init.d.ts.map +1 -1
- package/dist/resolvers/auth/init.js +6 -16
- package/dist/resolvers/auth/init.js.map +1 -0
- package/dist/resolvers/auth/login.d.ts +1 -4
- package/dist/resolvers/auth/login.d.ts.map +1 -1
- package/dist/resolvers/auth/login.js +10 -20
- package/dist/resolvers/auth/login.js.map +1 -0
- package/dist/resolvers/auth/logout.d.ts.map +1 -1
- package/dist/resolvers/auth/logout.js +8 -18
- package/dist/resolvers/auth/logout.js.map +1 -0
- package/dist/resolvers/auth/me.d.ts.map +1 -1
- package/dist/resolvers/auth/me.js +6 -16
- package/dist/resolvers/auth/me.js.map +1 -0
- package/dist/resolvers/auth/refresh.d.ts +1 -2
- package/dist/resolvers/auth/refresh.d.ts.map +1 -1
- package/dist/resolvers/auth/refresh.js +11 -21
- package/dist/resolvers/auth/refresh.js.map +1 -0
- package/dist/resolvers/auth/resetPassword.d.ts +1 -2
- package/dist/resolvers/auth/resetPassword.d.ts.map +1 -1
- package/dist/resolvers/auth/resetPassword.js +10 -20
- package/dist/resolvers/auth/resetPassword.js.map +1 -0
- package/dist/resolvers/auth/unlock.d.ts +1 -1
- package/dist/resolvers/auth/unlock.d.ts.map +1 -1
- package/dist/resolvers/auth/unlock.js +6 -16
- package/dist/resolvers/auth/unlock.js.map +1 -0
- package/dist/resolvers/auth/verifyEmail.d.ts +1 -1
- package/dist/resolvers/auth/verifyEmail.d.ts.map +1 -1
- package/dist/resolvers/auth/verifyEmail.js +6 -16
- package/dist/resolvers/auth/verifyEmail.js.map +1 -0
- package/dist/resolvers/collections/create.d.ts +1 -1
- package/dist/resolvers/collections/create.d.ts.map +1 -1
- package/dist/resolvers/collections/create.js +6 -16
- package/dist/resolvers/collections/create.js.map +1 -0
- package/dist/resolvers/collections/delete.d.ts.map +1 -1
- package/dist/resolvers/collections/delete.js +8 -18
- package/dist/resolvers/collections/delete.js.map +1 -0
- package/dist/resolvers/collections/docAccess.d.ts +1 -1
- package/dist/resolvers/collections/docAccess.d.ts.map +1 -1
- package/dist/resolvers/collections/docAccess.js +7 -17
- package/dist/resolvers/collections/docAccess.js.map +1 -0
- package/dist/resolvers/collections/duplicate.d.ts +13 -0
- package/dist/resolvers/collections/duplicate.d.ts.map +1 -0
- package/dist/resolvers/collections/duplicate.js +22 -0
- package/dist/resolvers/collections/duplicate.js.map +1 -0
- package/dist/resolvers/collections/find.d.ts.map +1 -1
- package/dist/resolvers/collections/find.js +8 -18
- package/dist/resolvers/collections/find.js.map +1 -0
- package/dist/resolvers/collections/findByID.d.ts.map +1 -1
- package/dist/resolvers/collections/findByID.js +8 -18
- package/dist/resolvers/collections/findByID.js.map +1 -0
- package/dist/resolvers/collections/findVersionByID.d.ts +1 -1
- package/dist/resolvers/collections/findVersionByID.d.ts.map +1 -1
- package/dist/resolvers/collections/findVersionByID.js +8 -18
- package/dist/resolvers/collections/findVersionByID.js.map +1 -0
- package/dist/resolvers/collections/findVersions.d.ts +1 -1
- package/dist/resolvers/collections/findVersions.d.ts.map +1 -1
- package/dist/resolvers/collections/findVersions.js +8 -18
- package/dist/resolvers/collections/findVersions.js.map +1 -0
- package/dist/resolvers/collections/restoreVersion.d.ts.map +1 -1
- package/dist/resolvers/collections/restoreVersion.js +6 -16
- package/dist/resolvers/collections/restoreVersion.js.map +1 -0
- package/dist/resolvers/collections/update.d.ts.map +1 -1
- package/dist/resolvers/collections/update.js +8 -18
- package/dist/resolvers/collections/update.js.map +1 -0
- package/dist/resolvers/globals/docAccess.d.ts +1 -1
- package/dist/resolvers/globals/docAccess.d.ts.map +1 -1
- package/dist/resolvers/globals/docAccess.js +6 -16
- package/dist/resolvers/globals/docAccess.js.map +1 -0
- package/dist/resolvers/globals/findOne.d.ts.map +1 -1
- package/dist/resolvers/globals/findOne.js +6 -16
- package/dist/resolvers/globals/findOne.js.map +1 -0
- package/dist/resolvers/globals/findVersionByID.d.ts.map +1 -1
- package/dist/resolvers/globals/findVersionByID.js +6 -16
- package/dist/resolvers/globals/findVersionByID.js.map +1 -0
- package/dist/resolvers/globals/findVersions.d.ts.map +1 -1
- package/dist/resolvers/globals/findVersions.js +6 -16
- package/dist/resolvers/globals/findVersions.js.map +1 -0
- package/dist/resolvers/globals/index.d.ts +5 -5
- package/dist/resolvers/globals/index.d.ts.map +1 -1
- package/dist/resolvers/globals/index.js +7 -38
- package/dist/resolvers/globals/index.js.map +1 -0
- package/dist/resolvers/globals/restoreVersion.d.ts.map +1 -1
- package/dist/resolvers/globals/restoreVersion.js +6 -16
- package/dist/resolvers/globals/restoreVersion.js.map +1 -0
- package/dist/resolvers/globals/update.d.ts +1 -1
- package/dist/resolvers/globals/update.d.ts.map +1 -1
- package/dist/resolvers/globals/update.js +6 -16
- package/dist/resolvers/globals/update.js.map +1 -0
- package/dist/resolvers/types.d.ts +2 -2
- package/dist/resolvers/types.d.ts.map +1 -1
- package/dist/resolvers/types.js +2 -5
- package/dist/resolvers/types.js.map +1 -0
- package/dist/schema/buildFallbackLocaleInputType.d.ts +1 -1
- package/dist/schema/buildFallbackLocaleInputType.d.ts.map +1 -1
- package/dist/schema/buildFallbackLocaleInputType.js +6 -21
- package/dist/schema/buildFallbackLocaleInputType.js.map +1 -0
- package/dist/schema/buildLocaleInputType.d.ts +1 -1
- package/dist/schema/buildLocaleInputType.d.ts.map +1 -1
- package/dist/schema/buildLocaleInputType.js +6 -21
- package/dist/schema/buildLocaleInputType.js.map +1 -0
- package/dist/schema/buildMutationInputType.d.ts +6 -6
- package/dist/schema/buildMutationInputType.d.ts.map +1 -1
- package/dist/schema/buildMutationInputType.js +59 -81
- package/dist/schema/buildMutationInputType.js.map +1 -0
- package/dist/schema/buildObjectType.d.ts +5 -5
- package/dist/schema/buildObjectType.d.ts.map +1 -1
- package/dist/schema/buildObjectType.js +68 -83
- package/dist/schema/buildObjectType.js.map +1 -0
- package/dist/schema/buildPaginatedListType.js +15 -25
- package/dist/schema/buildPaginatedListType.js.map +1 -0
- package/dist/schema/buildPoliciesType.d.ts +1 -1
- package/dist/schema/buildPoliciesType.d.ts.map +1 -1
- package/dist/schema/buildPoliciesType.js +31 -57
- package/dist/schema/buildPoliciesType.js.map +1 -0
- package/dist/schema/buildWhereInputType.d.ts +1 -1
- package/dist/schema/buildWhereInputType.d.ts.map +1 -1
- package/dist/schema/buildWhereInputType.js +19 -34
- package/dist/schema/buildWhereInputType.js.map +1 -0
- package/dist/schema/fieldToWhereInputSchemaMap.d.ts.map +1 -1
- package/dist/schema/fieldToWhereInputSchemaMap.js +34 -48
- package/dist/schema/fieldToWhereInputSchemaMap.js.map +1 -0
- package/dist/schema/initCollections.d.ts.map +1 -1
- package/dist/schema/initCollections.js +182 -185
- package/dist/schema/initCollections.js.map +1 -0
- package/dist/schema/initGlobals.d.ts.map +1 -1
- package/dist/schema/initGlobals.js +59 -73
- package/dist/schema/initGlobals.js.map +1 -0
- package/dist/schema/isFieldNullable.js +4 -14
- package/dist/schema/isFieldNullable.js.map +1 -0
- package/dist/schema/operators.js +2 -12
- package/dist/schema/operators.js.map +1 -0
- package/dist/schema/recursivelyBuildNestedPaths.d.ts.map +1 -1
- package/dist/schema/recursivelyBuildNestedPaths.js +11 -26
- package/dist/schema/recursivelyBuildNestedPaths.js.map +1 -0
- package/dist/schema/withNullableType.d.ts.map +1 -1
- package/dist/schema/withNullableType.js +4 -14
- package/dist/schema/withNullableType.js.map +1 -0
- package/dist/schema/withOperators.d.ts +1 -1
- package/dist/schema/withOperators.d.ts.map +1 -1
- package/dist/schema/withOperators.js +82 -86
- package/dist/schema/withOperators.js.map +1 -0
- package/dist/utilities/combineParentName.js +4 -19
- package/dist/utilities/combineParentName.js.map +1 -0
- package/dist/utilities/formatName.js +2 -12
- package/dist/utilities/formatName.js.map +1 -0
- package/dist/utilities/formatName.spec.js +3 -12
- package/dist/utilities/formatName.spec.js.map +1 -0
- package/dist/utilities/formatOptions.js +5 -20
- package/dist/utilities/formatOptions.js.map +1 -0
- package/dist/utilities/getCheckIfLocaleObject.js +2 -12
- package/dist/utilities/getCheckIfLocaleObject.js.map +1 -0
- package/dist/utilities/groupOrTabHasRequiredSubfield.js +4 -14
- package/dist/utilities/groupOrTabHasRequiredSubfield.js.map +1 -0
- package/dist/utilities/uppercase.js +2 -12
- package/dist/utilities/uppercase.js.map +1 -0
- package/dist/utilities/wrapCustomResolver.d.ts +2 -2
- package/dist/utilities/wrapCustomResolver.d.ts.map +1 -1
- package/dist/utilities/wrapCustomResolver.js +4 -14
- package/dist/utilities/wrapCustomResolver.js.map +1 -0
- package/package.json +11 -6
- package/src/index.ts +24 -24
- package/dist/utilities/isolateTransactionID.d.ts +0 -2
- package/dist/utilities/isolateTransactionID.d.ts.map +0 -1
- package/dist/utilities/isolateTransactionID.js +0 -3
|
@@ -1,101 +1,86 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _graphql = require("graphql");
|
|
12
|
-
const _graphqlscalars = require("graphql-scalars");
|
|
13
|
-
const _graphqltypejson = require("graphql-type-json");
|
|
14
|
-
const _types = require("payload/types");
|
|
15
|
-
const _combineParentName = /*#__PURE__*/ _interop_require_default(require("../utilities/combineParentName"));
|
|
16
|
-
const _formatName = /*#__PURE__*/ _interop_require_default(require("../utilities/formatName"));
|
|
17
|
-
const _operators = /*#__PURE__*/ _interop_require_default(require("./operators"));
|
|
18
|
-
function _interop_require_default(obj) {
|
|
19
|
-
return obj && obj.__esModule ? obj : {
|
|
20
|
-
default: obj
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
const GeoJSONObject = new _graphql.GraphQLInputObjectType({
|
|
1
|
+
import { GraphQLBoolean, GraphQLEnumType, GraphQLFloat, GraphQLInputObjectType, GraphQLInt, GraphQLList, GraphQLString } from 'graphql';
|
|
2
|
+
import { DateTimeResolver, EmailAddressResolver } from 'graphql-scalars';
|
|
3
|
+
import { GraphQLJSON } from 'graphql-type-json';
|
|
4
|
+
import { optionIsObject } from 'payload/types';
|
|
5
|
+
import combineParentName from '../utilities/combineParentName.js';
|
|
6
|
+
import formatName from '../utilities/formatName.js';
|
|
7
|
+
import operators from './operators.js';
|
|
8
|
+
const GeoJSONObject = new GraphQLInputObjectType({
|
|
24
9
|
name: 'GeoJSONObject',
|
|
25
10
|
fields: {
|
|
26
|
-
coordinates: {
|
|
27
|
-
type: _graphqltypejson.GraphQLJSON
|
|
28
|
-
},
|
|
29
11
|
type: {
|
|
30
|
-
type:
|
|
12
|
+
type: GraphQLString
|
|
13
|
+
},
|
|
14
|
+
coordinates: {
|
|
15
|
+
type: GraphQLJSON
|
|
31
16
|
}
|
|
32
17
|
}
|
|
33
18
|
});
|
|
34
19
|
const defaults = {
|
|
35
20
|
checkbox: {
|
|
36
21
|
operators: [
|
|
37
|
-
...
|
|
22
|
+
...operators.equality.map((operator)=>({
|
|
38
23
|
name: operator,
|
|
39
|
-
type:
|
|
24
|
+
type: GraphQLBoolean
|
|
40
25
|
}))
|
|
41
26
|
]
|
|
42
27
|
},
|
|
43
28
|
code: {
|
|
44
29
|
operators: [
|
|
45
30
|
...[
|
|
46
|
-
...
|
|
47
|
-
...
|
|
31
|
+
...operators.equality,
|
|
32
|
+
...operators.partial
|
|
48
33
|
].map((operator)=>({
|
|
49
34
|
name: operator,
|
|
50
|
-
type:
|
|
35
|
+
type: GraphQLString
|
|
51
36
|
}))
|
|
52
37
|
]
|
|
53
38
|
},
|
|
54
39
|
date: {
|
|
55
40
|
operators: [
|
|
56
41
|
...[
|
|
57
|
-
...
|
|
58
|
-
...
|
|
42
|
+
...operators.equality,
|
|
43
|
+
...operators.comparison,
|
|
59
44
|
'like'
|
|
60
45
|
].map((operator)=>({
|
|
61
46
|
name: operator,
|
|
62
|
-
type:
|
|
47
|
+
type: DateTimeResolver
|
|
63
48
|
}))
|
|
64
49
|
]
|
|
65
50
|
},
|
|
66
51
|
email: {
|
|
67
52
|
operators: [
|
|
68
53
|
...[
|
|
69
|
-
...
|
|
70
|
-
...
|
|
71
|
-
...
|
|
54
|
+
...operators.equality,
|
|
55
|
+
...operators.partial,
|
|
56
|
+
...operators.contains
|
|
72
57
|
].map((operator)=>({
|
|
73
58
|
name: operator,
|
|
74
|
-
type:
|
|
59
|
+
type: EmailAddressResolver
|
|
75
60
|
}))
|
|
76
61
|
]
|
|
77
62
|
},
|
|
78
63
|
json: {
|
|
79
64
|
operators: [
|
|
80
65
|
...[
|
|
81
|
-
...
|
|
82
|
-
...
|
|
83
|
-
...
|
|
66
|
+
...operators.equality,
|
|
67
|
+
...operators.partial,
|
|
68
|
+
...operators.geojson
|
|
84
69
|
].map((operator)=>({
|
|
85
70
|
name: operator,
|
|
86
|
-
type:
|
|
71
|
+
type: GraphQLJSON
|
|
87
72
|
}))
|
|
88
73
|
]
|
|
89
74
|
},
|
|
90
75
|
number: {
|
|
91
76
|
operators: [
|
|
92
77
|
...[
|
|
93
|
-
...
|
|
94
|
-
...
|
|
78
|
+
...operators.equality,
|
|
79
|
+
...operators.comparison
|
|
95
80
|
].map((operator)=>({
|
|
96
81
|
name: operator,
|
|
97
82
|
type: (field)=>{
|
|
98
|
-
return field?.name === 'id' ?
|
|
83
|
+
return field?.name === 'id' ? GraphQLInt : GraphQLFloat;
|
|
99
84
|
}
|
|
100
85
|
}))
|
|
101
86
|
]
|
|
@@ -103,14 +88,14 @@ const defaults = {
|
|
|
103
88
|
point: {
|
|
104
89
|
operators: [
|
|
105
90
|
...[
|
|
106
|
-
...
|
|
107
|
-
...
|
|
108
|
-
...
|
|
91
|
+
...operators.equality,
|
|
92
|
+
...operators.comparison,
|
|
93
|
+
...operators.geo
|
|
109
94
|
].map((operator)=>({
|
|
110
95
|
name: operator,
|
|
111
|
-
type: new
|
|
96
|
+
type: new GraphQLList(GraphQLFloat)
|
|
112
97
|
})),
|
|
113
|
-
...
|
|
98
|
+
...operators.geojson.map((operator)=>({
|
|
114
99
|
name: operator,
|
|
115
100
|
/**
|
|
116
101
|
* @example:
|
|
@@ -135,24 +120,24 @@ const defaults = {
|
|
|
135
120
|
radio: {
|
|
136
121
|
operators: [
|
|
137
122
|
...[
|
|
138
|
-
...
|
|
139
|
-
...
|
|
123
|
+
...operators.equality,
|
|
124
|
+
...operators.partial
|
|
140
125
|
].map((operator)=>({
|
|
141
126
|
name: operator,
|
|
142
|
-
type: (field, parentName)=>new
|
|
143
|
-
name: `${(
|
|
127
|
+
type: (field, parentName)=>new GraphQLEnumType({
|
|
128
|
+
name: `${combineParentName(parentName, field.name)}_Input`,
|
|
144
129
|
values: field.options.reduce((values, option)=>{
|
|
145
|
-
if (
|
|
130
|
+
if (optionIsObject(option)) {
|
|
146
131
|
return {
|
|
147
132
|
...values,
|
|
148
|
-
[(
|
|
133
|
+
[formatName(option.value)]: {
|
|
149
134
|
value: option.value
|
|
150
135
|
}
|
|
151
136
|
};
|
|
152
137
|
}
|
|
153
138
|
return {
|
|
154
139
|
...values,
|
|
155
|
-
[(
|
|
140
|
+
[formatName(option)]: {
|
|
156
141
|
value: option
|
|
157
142
|
}
|
|
158
143
|
};
|
|
@@ -164,46 +149,46 @@ const defaults = {
|
|
|
164
149
|
relationship: {
|
|
165
150
|
operators: [
|
|
166
151
|
...[
|
|
167
|
-
...
|
|
168
|
-
...
|
|
152
|
+
...operators.equality,
|
|
153
|
+
...operators.contains
|
|
169
154
|
].map((operator)=>({
|
|
170
155
|
name: operator,
|
|
171
|
-
type:
|
|
156
|
+
type: GraphQLJSON
|
|
172
157
|
}))
|
|
173
158
|
]
|
|
174
159
|
},
|
|
175
160
|
richText: {
|
|
176
161
|
operators: [
|
|
177
162
|
...[
|
|
178
|
-
...
|
|
179
|
-
...
|
|
163
|
+
...operators.equality,
|
|
164
|
+
...operators.partial
|
|
180
165
|
].map((operator)=>({
|
|
181
166
|
name: operator,
|
|
182
|
-
type:
|
|
167
|
+
type: GraphQLJSON
|
|
183
168
|
}))
|
|
184
169
|
]
|
|
185
170
|
},
|
|
186
171
|
select: {
|
|
187
172
|
operators: [
|
|
188
173
|
...[
|
|
189
|
-
...
|
|
190
|
-
...
|
|
174
|
+
...operators.equality,
|
|
175
|
+
...operators.contains
|
|
191
176
|
].map((operator)=>({
|
|
192
177
|
name: operator,
|
|
193
|
-
type: (field, parentName)=>new
|
|
194
|
-
name: `${(
|
|
178
|
+
type: (field, parentName)=>new GraphQLEnumType({
|
|
179
|
+
name: `${combineParentName(parentName, field.name)}_Input`,
|
|
195
180
|
values: field.options.reduce((values, option)=>{
|
|
196
|
-
if (
|
|
181
|
+
if (optionIsObject(option)) {
|
|
197
182
|
return {
|
|
198
183
|
...values,
|
|
199
|
-
[(
|
|
184
|
+
[formatName(option.value)]: {
|
|
200
185
|
value: option.value
|
|
201
186
|
}
|
|
202
187
|
};
|
|
203
188
|
}
|
|
204
189
|
return {
|
|
205
190
|
...values,
|
|
206
|
-
[(
|
|
191
|
+
[formatName(option)]: {
|
|
207
192
|
value: option
|
|
208
193
|
}
|
|
209
194
|
};
|
|
@@ -215,31 +200,31 @@ const defaults = {
|
|
|
215
200
|
text: {
|
|
216
201
|
operators: [
|
|
217
202
|
...[
|
|
218
|
-
...
|
|
219
|
-
...
|
|
220
|
-
...
|
|
203
|
+
...operators.equality,
|
|
204
|
+
...operators.partial,
|
|
205
|
+
...operators.contains
|
|
221
206
|
].map((operator)=>({
|
|
222
207
|
name: operator,
|
|
223
|
-
type:
|
|
208
|
+
type: GraphQLString
|
|
224
209
|
}))
|
|
225
210
|
]
|
|
226
211
|
},
|
|
227
212
|
textarea: {
|
|
228
213
|
operators: [
|
|
229
214
|
...[
|
|
230
|
-
...
|
|
231
|
-
...
|
|
215
|
+
...operators.equality,
|
|
216
|
+
...operators.partial
|
|
232
217
|
].map((operator)=>({
|
|
233
218
|
name: operator,
|
|
234
|
-
type:
|
|
219
|
+
type: GraphQLString
|
|
235
220
|
}))
|
|
236
221
|
]
|
|
237
222
|
},
|
|
238
223
|
upload: {
|
|
239
224
|
operators: [
|
|
240
|
-
...
|
|
225
|
+
...operators.equality.map((operator)=>({
|
|
241
226
|
name: operator,
|
|
242
|
-
type:
|
|
227
|
+
type: GraphQLString
|
|
243
228
|
}))
|
|
244
229
|
]
|
|
245
230
|
}
|
|
@@ -250,9 +235,20 @@ const listOperators = [
|
|
|
250
235
|
'all'
|
|
251
236
|
];
|
|
252
237
|
const gqlTypeCache = {};
|
|
253
|
-
|
|
238
|
+
/**
|
|
239
|
+
* In GraphQL, you can use "where" as an argument to filter a collection. Example:
|
|
240
|
+
* { Posts(where: { title: { equals: "Hello" } }) { text } }
|
|
241
|
+
* This function defines the operators for a field's condition in the "where" argument of the collection (it thus gets called for every field).
|
|
242
|
+
* For example, in the example above, it would control that
|
|
243
|
+
* - "equals" is a valid operator for the "title" field
|
|
244
|
+
* - the accepted type of the "equals" argument has to be a string.
|
|
245
|
+
*
|
|
246
|
+
* @param field the field for which their valid operators inside a "where" argument is being defined
|
|
247
|
+
* @param parentName the name of the parent field (if any)
|
|
248
|
+
* @returns all the operators (including their types) which can be used as a condition for a given field inside a where
|
|
249
|
+
*/ export const withOperators = (field, parentName)=>{
|
|
254
250
|
if (!defaults?.[field.type]) throw new Error(`Error: ${field.type} has no defaults configured.`);
|
|
255
|
-
const name = `${(
|
|
251
|
+
const name = `${combineParentName(parentName, field.name)}_operator`;
|
|
256
252
|
// Get the default operators for the field type which are hard-coded above
|
|
257
253
|
const fieldOperators = [
|
|
258
254
|
...defaults[field.type].operators
|
|
@@ -263,7 +259,7 @@ const withOperators = (field, parentName)=>{
|
|
|
263
259
|
type: fieldOperators[0].type
|
|
264
260
|
});
|
|
265
261
|
}
|
|
266
|
-
return new
|
|
262
|
+
return new GraphQLInputObjectType({
|
|
267
263
|
name,
|
|
268
264
|
fields: fieldOperators.reduce((objectTypeFields, operator)=>{
|
|
269
265
|
// Get the type of the operator. It can be either static, or dynamic (=> a function)
|
|
@@ -279,9 +275,9 @@ const withOperators = (field, parentName)=>{
|
|
|
279
275
|
}
|
|
280
276
|
}
|
|
281
277
|
if (listOperators.includes(operator.name)) {
|
|
282
|
-
gqlType = new
|
|
278
|
+
gqlType = new GraphQLList(gqlType);
|
|
283
279
|
} else if (operator.name === 'exists') {
|
|
284
|
-
gqlType =
|
|
280
|
+
gqlType = GraphQLBoolean;
|
|
285
281
|
}
|
|
286
282
|
return {
|
|
287
283
|
...objectTypeFields,
|
|
@@ -293,4 +289,4 @@ const withOperators = (field, parentName)=>{
|
|
|
293
289
|
});
|
|
294
290
|
};
|
|
295
291
|
|
|
296
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWEvd2l0aE9wZXJhdG9ycy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEdyYXBoUUxUeXBlIH0gZnJvbSAnZ3JhcGhxbCdcblxuaW1wb3J0IHtcbiAgR3JhcGhRTEJvb2xlYW4sXG4gIEdyYXBoUUxFbnVtVHlwZSxcbiAgR3JhcGhRTEZsb2F0LFxuICBHcmFwaFFMSW5wdXRPYmplY3RUeXBlLFxuICBHcmFwaFFMSW50LFxuICBHcmFwaFFMTGlzdCxcbiAgR3JhcGhRTFN0cmluZyxcbn0gZnJvbSAnZ3JhcGhxbCdcbmltcG9ydCB7IERhdGVUaW1lUmVzb2x2ZXIsIEVtYWlsQWRkcmVzc1Jlc29sdmVyIH0gZnJvbSAnZ3JhcGhxbC1zY2FsYXJzJ1xuaW1wb3J0IHsgR3JhcGhRTEpTT04gfSBmcm9tICdncmFwaHFsLXR5cGUtanNvbidcblxuaW1wb3J0IHR5cGUgeyBGaWVsZEFmZmVjdGluZ0RhdGEsIE51bWJlckZpZWxkLCBSYWRpb0ZpZWxkLCBTZWxlY3RGaWVsZCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IG9wdGlvbklzT2JqZWN0IH0gZnJvbSAncGF5bG9hZC90eXBlcydcbmltcG9ydCBjb21iaW5lUGFyZW50TmFtZSBmcm9tICcuLi91dGlsaXRpZXMvY29tYmluZVBhcmVudE5hbWUnXG5pbXBvcnQgZm9ybWF0TmFtZSBmcm9tICcuLi91dGlsaXRpZXMvZm9ybWF0TmFtZSdcbmltcG9ydCBvcGVyYXRvcnMgZnJvbSAnLi9vcGVyYXRvcnMnXG5cbnR5cGUgc3RhdGljVHlwZXMgPVxuICB8ICdjaGVja2JveCdcbiAgfCAnY29kZSdcbiAgfCAnZGF0ZSdcbiAgfCAnZW1haWwnXG4gIHwgJ2pzb24nXG4gIHwgJ251bWJlcidcbiAgfCAncG9pbnQnXG4gIHwgJ3JlbGF0aW9uc2hpcCdcbiAgfCAncmljaFRleHQnXG4gIHwgJ3RleHQnXG4gIHwgJ3RleHRhcmVhJ1xuICB8ICd1cGxvYWQnXG5cbnR5cGUgZHluYW1pY1R5cGVzID0gJ3JhZGlvJyB8ICdzZWxlY3QnXG5cbmNvbnN0IEdlb0pTT05PYmplY3QgPSBuZXcgR3JhcGhRTElucHV0T2JqZWN0VHlwZSh7XG4gIG5hbWU6ICdHZW9KU09OT2JqZWN0JyxcbiAgZmllbGRzOiB7XG4gICAgY29vcmRpbmF0ZXM6IHtcbiAgICAgIHR5cGU6IEdyYXBoUUxKU09OLFxuICAgIH0sXG4gICAgdHlwZTogeyB0eXBlOiBHcmFwaFFMU3RyaW5nIH0sXG4gIH0sXG59KVxuXG50eXBlIERlZmF1bHRzVHlwZSA9IHtcbiAgW2tleSBpbiBzdGF0aWNUeXBlc106IHtcbiAgICBvcGVyYXRvcnM6IHtcbiAgICAgIG5hbWU6IHN0cmluZ1xuICAgICAgdHlwZTogKChmaWVsZDogRmllbGRBZmZlY3RpbmdEYXRhLCBwYXJlbnROYW1lOiBzdHJpbmcpID0+IEdyYXBoUUxUeXBlKSB8IEdyYXBoUUxUeXBlXG4gICAgfVtdXG4gIH1cbn0gJiB7XG4gIFtrZXkgaW4gZHluYW1pY1R5cGVzXToge1xuICAgIG9wZXJhdG9yczoge1xuICAgICAgbmFtZTogc3RyaW5nXG4gICAgICB0eXBlOiAoZmllbGQ6IEZpZWxkQWZmZWN0aW5nRGF0YSwgcGFyZW50TmFtZTogc3RyaW5nKSA9PiBHcmFwaFFMVHlwZVxuICAgIH1bXVxuICB9XG59XG5cbmNvbnN0IGRlZmF1bHRzOiBEZWZhdWx0c1R5cGUgPSB7XG4gIGNoZWNrYm94OiB7XG4gICAgb3BlcmF0b3JzOiBbXG4gICAgICAuLi5vcGVyYXRvcnMuZXF1YWxpdHkubWFwKChvcGVyYXRvcikgPT4gKHtcbiAgICAgICAgbmFtZTogb3BlcmF0b3IsXG4gICAgICAgIHR5cGU6IEdyYXBoUUxCb29sZWFuLFxuICAgICAgfSkpLFxuICAgIF0sXG4gIH0sXG4gIGNvZGU6IHtcbiAgICBvcGVyYXRvcnM6IFtcbiAgICAgIC4uLlsuLi5vcGVyYXRvcnMuZXF1YWxpdHksIC4uLm9wZXJhdG9ycy5wYXJ0aWFsXS5tYXAoKG9wZXJhdG9yKSA9PiAoe1xuICAgICAgICBuYW1lOiBvcGVyYXRvcixcbiAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgIH0pKSxcbiAgICBdLFxuICB9LFxuICBkYXRlOiB7XG4gICAgb3BlcmF0b3JzOiBbXG4gICAgICAuLi5bLi4ub3BlcmF0b3JzLmVxdWFsaXR5LCAuLi5vcGVyYXRvcnMuY29tcGFyaXNvbiwgJ2xpa2UnXS5tYXAoKG9wZXJhdG9yKSA9PiAoe1xuICAgICAgICBuYW1lOiBvcGVyYXRvcixcbiAgICAgICAgdHlwZTogRGF0ZVRpbWVSZXNvbHZlcixcbiAgICAgIH0pKSxcbiAgICBdLFxuICB9LFxuICBlbWFpbDoge1xuICAgIG9wZXJhdG9yczogW1xuICAgICAgLi4uWy4uLm9wZXJhdG9ycy5lcXVhbGl0eSwgLi4ub3BlcmF0b3JzLnBhcnRpYWwsIC4uLm9wZXJhdG9ycy5jb250YWluc10ubWFwKChvcGVyYXRvcikgPT4gKHtcbiAgICAgICAgbmFtZTogb3BlcmF0b3IsXG4gICAgICAgIHR5cGU6IEVtYWlsQWRkcmVzc1Jlc29sdmVyLFxuICAgICAgfSkpLFxuICAgIF0sXG4gIH0sXG4gIGpzb246IHtcbiAgICBvcGVyYXRvcnM6IFtcbiAgICAgIC4uLlsuLi5vcGVyYXRvcnMuZXF1YWxpdHksIC4uLm9wZXJhdG9ycy5wYXJ0aWFsLCAuLi5vcGVyYXRvcnMuZ2VvanNvbl0ubWFwKChvcGVyYXRvcikgPT4gKHtcbiAgICAgICAgbmFtZTogb3BlcmF0b3IsXG4gICAgICAgIHR5cGU6IEdyYXBoUUxKU09OLFxuICAgICAgfSkpLFxuICAgIF0sXG4gIH0sXG4gIG51bWJlcjoge1xuICAgIG9wZXJhdG9yczogW1xuICAgICAgLi4uWy4uLm9wZXJhdG9ycy5lcXVhbGl0eSwgLi4ub3BlcmF0b3JzLmNvbXBhcmlzb25dLm1hcCgob3BlcmF0b3IpID0+ICh7XG4gICAgICAgIG5hbWU6IG9wZXJhdG9yLFxuICAgICAgICB0eXBlOiAoZmllbGQ6IE51bWJlckZpZWxkKTogR3JhcGhRTFR5cGUgPT4ge1xuICAgICAgICAgIHJldHVybiBmaWVsZD8ubmFtZSA9PT0gJ2lkJyA/IEdyYXBoUUxJbnQgOiBHcmFwaFFMRmxvYXRcbiAgICAgICAgfSxcbiAgICAgIH0pKSxcbiAgICBdLFxuICB9LFxuICBwb2ludDoge1xuICAgIG9wZXJhdG9yczogW1xuICAgICAgLi4uWy4uLm9wZXJhdG9ycy5lcXVhbGl0eSwgLi4ub3BlcmF0b3JzLmNvbXBhcmlzb24sIC4uLm9wZXJhdG9ycy5nZW9dLm1hcCgob3BlcmF0b3IpID0+ICh7XG4gICAgICAgIG5hbWU6IG9wZXJhdG9yLFxuICAgICAgICB0eXBlOiBuZXcgR3JhcGhRTExpc3QoR3JhcGhRTEZsb2F0KSxcbiAgICAgIH0pKSxcbiAgICAgIC4uLm9wZXJhdG9ycy5nZW9qc29uLm1hcCgob3BlcmF0b3IpID0+ICh7XG4gICAgICAgIG5hbWU6IG9wZXJhdG9yLFxuICAgICAgICAvKipcbiAgICAgICAgICogQGV4YW1wbGU6XG4gICAgICAgICAqIHdpdGhpbjoge1xuICAgICAgICAgKiAgdHlwZTogXCJQb2x5Z29uXCIsXG4gICAgICAgICAqICBjb29yZGluYXRlczogW1tcbiAgICAgICAgICogICBbMC4wLCAwLjBdLFxuICAgICAgICAgKiAgIFsxLjAsIDEuMF0sXG4gICAgICAgICAqICAgWzEuMCwgMC4wXSxcbiAgICAgICAgICogICBbMC4wLCAwLjBdLFxuICAgICAgICAgKiAgXV0sXG4gICAgICAgICAqIH1cbiAgICAgICAgICogQGV4YW1wbGVcbiAgICAgICAgICogaW50ZXJzZWN0czoge1xuICAgICAgICAgKiAgdHlwZTogXCJQb2ludFwiLFxuICAgICAgICAgKiAgY29vcmRpbmF0ZXM6IFsgMC41LCAwLjUgXVxuICAgICAgICAgKiB9XG4gICAgICAgICAqL1xuICAgICAgICB0eXBlOiBHZW9KU09OT2JqZWN0LFxuICAgICAgfSkpLFxuICAgIF0sXG4gIH0sXG4gIHJhZGlvOiB7XG4gICAgb3BlcmF0b3JzOiBbXG4gICAgICAuLi5bLi4ub3BlcmF0b3JzLmVxdWFsaXR5LCAuLi5vcGVyYXRvcnMucGFydGlhbF0ubWFwKChvcGVyYXRvcikgPT4gKHtcbiAgICAgICAgbmFtZTogb3BlcmF0b3IsXG4gICAgICAgIHR5cGU6IChmaWVsZDogUmFkaW9GaWVsZCwgcGFyZW50TmFtZSk6IEdyYXBoUUxUeXBlID0+XG4gICAgICAgICAgbmV3IEdyYXBoUUxFbnVtVHlwZSh7XG4gICAgICAgICAgICBuYW1lOiBgJHtjb21iaW5lUGFyZW50TmFtZShwYXJlbnROYW1lLCBmaWVsZC5uYW1lKX1fSW5wdXRgLFxuICAgICAgICAgICAgdmFsdWVzOiBmaWVsZC5vcHRpb25zLnJlZHVjZSgodmFsdWVzLCBvcHRpb24pID0+IHtcbiAgICAgICAgICAgICAgaWYgKG9wdGlvbklzT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgLi4udmFsdWVzLFxuICAgICAgICAgICAgICAgICAgW2Zvcm1hdE5hbWUob3B0aW9uLnZhbHVlKV06IHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IG9wdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi52YWx1ZXMsXG4gICAgICAgICAgICAgICAgW2Zvcm1hdE5hbWUob3B0aW9uKV06IHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBvcHRpb24sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSwge30pLFxuICAgICAgICAgIH0pLFxuICAgICAgfSkpLFxuICAgIF0sXG4gIH0sXG4gIHJlbGF0aW9uc2hpcDoge1xuICAgIG9wZXJhdG9yczogW1xuICAgICAgLi4uWy4uLm9wZXJhdG9ycy5lcXVhbGl0eSwgLi4ub3BlcmF0b3JzLmNvbnRhaW5zXS5tYXAoKG9wZXJhdG9yKSA9PiAoe1xuICAgICAgICBuYW1lOiBvcGVyYXRvcixcbiAgICAgICAgdHlwZTogR3JhcGhRTEpTT04sXG4gICAgICB9KSksXG4gICAgXSxcbiAgfSxcbiAgcmljaFRleHQ6IHtcbiAgICBvcGVyYXRvcnM6IFtcbiAgICAgIC4uLlsuLi5vcGVyYXRvcnMuZXF1YWxpdHksIC4uLm9wZXJhdG9ycy5wYXJ0aWFsXS5tYXAoKG9wZXJhdG9yKSA9PiAoe1xuICAgICAgICBuYW1lOiBvcGVyYXRvcixcbiAgICAgICAgdHlwZTogR3JhcGhRTEpTT04sXG4gICAgICB9KSksXG4gICAgXSxcbiAgfSxcbiAgc2VsZWN0OiB7XG4gICAgb3BlcmF0b3JzOiBbXG4gICAgICAuLi5bLi4ub3BlcmF0b3JzLmVxdWFsaXR5LCAuLi5vcGVyYXRvcnMuY29udGFpbnNdLm1hcCgob3BlcmF0b3IpID0+ICh7XG4gICAgICAgIG5hbWU6IG9wZXJhdG9yLFxuICAgICAgICB0eXBlOiAoZmllbGQ6IFNlbGVjdEZpZWxkLCBwYXJlbnROYW1lKTogR3JhcGhRTFR5cGUgPT5cbiAgICAgICAgICBuZXcgR3JhcGhRTEVudW1UeXBlKHtcbiAgICAgICAgICAgIG5hbWU6IGAke2NvbWJpbmVQYXJlbnROYW1lKHBhcmVudE5hbWUsIGZpZWxkLm5hbWUpfV9JbnB1dGAsXG4gICAgICAgICAgICB2YWx1ZXM6IGZpZWxkLm9wdGlvbnMucmVkdWNlKCh2YWx1ZXMsIG9wdGlvbikgPT4ge1xuICAgICAgICAgICAgICBpZiAob3B0aW9uSXNPYmplY3Qob3B0aW9uKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAuLi52YWx1ZXMsXG4gICAgICAgICAgICAgICAgICBbZm9ybWF0TmFtZShvcHRpb24udmFsdWUpXToge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIC4uLnZhbHVlcyxcbiAgICAgICAgICAgICAgICBbZm9ybWF0TmFtZShvcHRpb24pXToge1xuICAgICAgICAgICAgICAgICAgdmFsdWU6IG9wdGlvbixcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCB7fSksXG4gICAgICAgICAgfSksXG4gICAgICB9KSksXG4gICAgXSxcbiAgfSxcbiAgdGV4dDoge1xuICAgIG9wZXJhdG9yczogW1xuICAgICAgLi4uWy4uLm9wZXJhdG9ycy5lcXVhbGl0eSwgLi4ub3BlcmF0b3JzLnBhcnRpYWwsIC4uLm9wZXJhdG9ycy5jb250YWluc10ubWFwKChvcGVyYXRvcikgPT4gKHtcbiAgICAgICAgbmFtZTogb3BlcmF0b3IsXG4gICAgICAgIHR5cGU6IEdyYXBoUUxTdHJpbmcsXG4gICAgICB9KSksXG4gICAgXSxcbiAgfSxcbiAgdGV4dGFyZWE6IHtcbiAgICBvcGVyYXRvcnM6IFtcbiAgICAgIC4uLlsuLi5vcGVyYXRvcnMuZXF1YWxpdHksIC4uLm9wZXJhdG9ycy5wYXJ0aWFsXS5tYXAoKG9wZXJhdG9yKSA9PiAoe1xuICAgICAgICBuYW1lOiBvcGVyYXRvcixcbiAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgIH0pKSxcbiAgICBdLFxuICB9LFxuICB1cGxvYWQ6IHtcbiAgICBvcGVyYXRvcnM6IFtcbiAgICAgIC4uLm9wZXJhdG9ycy5lcXVhbGl0eS5tYXAoKG9wZXJhdG9yKSA9PiAoe1xuICAgICAgICBuYW1lOiBvcGVyYXRvcixcbiAgICAgICAgdHlwZTogR3JhcGhRTFN0cmluZyxcbiAgICAgIH0pKSxcbiAgICBdLFxuICB9LFxuICAvLyBhcnJheTogbi9hXG4gIC8vIGdyb3VwOiBuL2FcbiAgLy8gcm93OiBuL2FcbiAgLy8gY29sbGFwc2libGU6IG4vYVxuICAvLyB0YWJzOiBuL2Fcbn1cblxuY29uc3QgbGlzdE9wZXJhdG9ycyA9IFsnaW4nLCAnbm90X2luJywgJ2FsbCddXG5cbmNvbnN0IGdxbFR5cGVDYWNoZTogUmVjb3JkPHN0cmluZywgR3JhcGhRTFR5cGU+ID0ge31cblxuLyoqXG4gKiBJbiBHcmFwaFFMLCB5b3UgY2FuIHVzZSBcIndoZXJlXCIgYXMgYW4gYXJndW1lbnQgdG8gZmlsdGVyIGEgY29sbGVjdGlvbi4gRXhhbXBsZTpcbiAqIHsgUG9zdHMod2hlcmU6IHsgdGl0bGU6IHsgZXF1YWxzOiBcIkhlbGxvXCIgfSB9KSB7IHRleHQgfSB9XG4gKiBUaGlzIGZ1bmN0aW9uIGRlZmluZXMgdGhlIG9wZXJhdG9ycyBmb3IgYSBmaWVsZCdzIGNvbmRpdGlvbiBpbiB0aGUgXCJ3aGVyZVwiIGFyZ3VtZW50IG9mIHRoZSBjb2xsZWN0aW9uIChpdCB0aHVzIGdldHMgY2FsbGVkIGZvciBldmVyeSBmaWVsZCkuXG4gKiBGb3IgZXhhbXBsZSwgaW4gdGhlIGV4YW1wbGUgYWJvdmUsIGl0IHdvdWxkIGNvbnRyb2wgdGhhdFxuICogLSBcImVxdWFsc1wiIGlzIGEgdmFsaWQgb3BlcmF0b3IgZm9yIHRoZSBcInRpdGxlXCIgZmllbGRcbiAqIC0gdGhlIGFjY2VwdGVkIHR5cGUgb2YgdGhlIFwiZXF1YWxzXCIgYXJndW1lbnQgaGFzIHRvIGJlIGEgc3RyaW5nLlxuICpcbiAqIEBwYXJhbSBmaWVsZCB0aGUgZmllbGQgZm9yIHdoaWNoIHRoZWlyIHZhbGlkIG9wZXJhdG9ycyBpbnNpZGUgYSBcIndoZXJlXCIgYXJndW1lbnQgaXMgYmVpbmcgZGVmaW5lZFxuICogQHBhcmFtIHBhcmVudE5hbWUgdGhlIG5hbWUgb2YgdGhlIHBhcmVudCBmaWVsZCAoaWYgYW55KVxuICogQHJldHVybnMgYWxsIHRoZSBvcGVyYXRvcnMgKGluY2x1ZGluZyB0aGVpciB0eXBlcykgd2hpY2ggY2FuIGJlIHVzZWQgYXMgYSBjb25kaXRpb24gZm9yIGEgZ2l2ZW4gZmllbGQgaW5zaWRlIGEgd2hlcmVcbiAqL1xuZXhwb3J0IGNvbnN0IHdpdGhPcGVyYXRvcnMgPSAoXG4gIGZpZWxkOiBGaWVsZEFmZmVjdGluZ0RhdGEsXG4gIHBhcmVudE5hbWU6IHN0cmluZyxcbik6IEdyYXBoUUxJbnB1dE9iamVjdFR5cGUgPT4ge1xuICBpZiAoIWRlZmF1bHRzPy5bZmllbGQudHlwZV0pIHRocm93IG5ldyBFcnJvcihgRXJyb3I6ICR7ZmllbGQudHlwZX0gaGFzIG5vIGRlZmF1bHRzIGNvbmZpZ3VyZWQuYClcblxuICBjb25zdCBuYW1lID0gYCR7Y29tYmluZVBhcmVudE5hbWUocGFyZW50TmFtZSwgZmllbGQubmFtZSl9X29wZXJhdG9yYFxuXG4gIC8vIEdldCB0aGUgZGVmYXVsdCBvcGVyYXRvcnMgZm9yIHRoZSBmaWVsZCB0eXBlIHdoaWNoIGFyZSBoYXJkLWNvZGVkIGFib3ZlXG4gIGNvbnN0IGZpZWxkT3BlcmF0b3JzID0gWy4uLmRlZmF1bHRzW2ZpZWxkLnR5cGVdLm9wZXJhdG9yc11cblxuICBpZiAoISgncmVxdWlyZWQnIGluIGZpZWxkKSB8fCAhZmllbGQucmVxdWlyZWQpIHtcbiAgICBmaWVsZE9wZXJhdG9ycy5wdXNoKHtcbiAgICAgIG5hbWU6ICdleGlzdHMnLFxuICAgICAgdHlwZTogZmllbGRPcGVyYXRvcnNbMF0udHlwZSxcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIG5ldyBHcmFwaFFMSW5wdXRPYmplY3RUeXBlKHtcbiAgICBuYW1lLFxuICAgIGZpZWxkczogZmllbGRPcGVyYXRvcnMucmVkdWNlKChvYmplY3RUeXBlRmllbGRzLCBvcGVyYXRvcikgPT4ge1xuICAgICAgLy8gR2V0IHRoZSB0eXBlIG9mIHRoZSBvcGVyYXRvci4gSXQgY2FuIGJlIGVpdGhlciBzdGF0aWMsIG9yIGR5bmFtaWMgKD0+IGEgZnVuY3Rpb24pXG4gICAgICBsZXQgZ3FsVHlwZTogR3JhcGhRTFR5cGUgPVxuICAgICAgICB0eXBlb2Ygb3BlcmF0b3IudHlwZSA9PT0gJ2Z1bmN0aW9uJyA/IG9wZXJhdG9yLnR5cGUoZmllbGQsIHBhcmVudE5hbWUpIDogb3BlcmF0b3IudHlwZVxuXG4gICAgICAvLyBHcmFwaFFMIGRvZXMgbm90IGFsbG93IHR5cGVzIHdpdGggZHVwbGljYXRlIG5hbWVzLCBzbyB3ZSB1c2UgdGhpcyBjYWNoZSB0byBhdm9pZCB0aGF0LlxuICAgICAgLy8gV2l0aG91dCB0aGlzLCBzZWxlY3QgYW5kIHJhZGlvIGZpZWxkcyB3b3VsZCBoYXZlIHRoZSBzYW1lIG5hbWUsIGFuZCBHcmFwaFFMIHdvdWxkIHRocm93IGFuIGVycm9yXG4gICAgICAvLyBUaGlzIHVzdWFsbHkgb25seSBoYXBwZW5zIGlmIGEgY3VzdG9tIHR5cGUgaXMgcmV0dXJuZWQgZnJvbSB0aGUgb3BlcmF0b3IudHlwZSBmdW5jdGlvblxuICAgICAgaWYgKHR5cGVvZiBvcGVyYXRvci50eXBlID09PSAnZnVuY3Rpb24nICYmICduYW1lJyBpbiBncWxUeXBlKSB7XG4gICAgICAgIGlmIChncWxUeXBlQ2FjaGVbZ3FsVHlwZS5uYW1lXSkge1xuICAgICAgICAgIGdxbFR5cGUgPSBncWxUeXBlQ2FjaGVbZ3FsVHlwZS5uYW1lXVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGdxbFR5cGVDYWNoZVtncWxUeXBlLm5hbWVdID0gZ3FsVHlwZVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmIChsaXN0T3BlcmF0b3JzLmluY2x1ZGVzKG9wZXJhdG9yLm5hbWUpKSB7XG4gICAgICAgIGdxbFR5cGUgPSBuZXcgR3JhcGhRTExpc3QoZ3FsVHlwZSlcbiAgICAgIH0gZWxzZSBpZiAob3BlcmF0b3IubmFtZSA9PT0gJ2V4aXN0cycpIHtcbiAgICAgICAgZ3FsVHlwZSA9IEdyYXBoUUxCb29sZWFuXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLm9iamVjdFR5cGVGaWVsZHMsXG4gICAgICAgIFtvcGVyYXRvci5uYW1lXToge1xuICAgICAgICAgIHR5cGU6IGdxbFR5cGUsXG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfSwge30pLFxuICB9KVxufVxuIl0sIm5hbWVzIjpbIndpdGhPcGVyYXRvcnMiLCJHZW9KU09OT2JqZWN0IiwiR3JhcGhRTElucHV0T2JqZWN0VHlwZSIsIm5hbWUiLCJmaWVsZHMiLCJjb29yZGluYXRlcyIsInR5cGUiLCJHcmFwaFFMSlNPTiIsIkdyYXBoUUxTdHJpbmciLCJkZWZhdWx0cyIsImNoZWNrYm94Iiwib3BlcmF0b3JzIiwiZXF1YWxpdHkiLCJtYXAiLCJvcGVyYXRvciIsIkdyYXBoUUxCb29sZWFuIiwiY29kZSIsInBhcnRpYWwiLCJkYXRlIiwiY29tcGFyaXNvbiIsIkRhdGVUaW1lUmVzb2x2ZXIiLCJlbWFpbCIsImNvbnRhaW5zIiwiRW1haWxBZGRyZXNzUmVzb2x2ZXIiLCJqc29uIiwiZ2VvanNvbiIsIm51bWJlciIsImZpZWxkIiwiR3JhcGhRTEludCIsIkdyYXBoUUxGbG9hdCIsInBvaW50IiwiZ2VvIiwiR3JhcGhRTExpc3QiLCJyYWRpbyIsInBhcmVudE5hbWUiLCJHcmFwaFFMRW51bVR5cGUiLCJjb21iaW5lUGFyZW50TmFtZSIsInZhbHVlcyIsIm9wdGlvbnMiLCJyZWR1Y2UiLCJvcHRpb24iLCJvcHRpb25Jc09iamVjdCIsImZvcm1hdE5hbWUiLCJ2YWx1ZSIsInJlbGF0aW9uc2hpcCIsInJpY2hUZXh0Iiwic2VsZWN0IiwidGV4dCIsInRleHRhcmVhIiwidXBsb2FkIiwibGlzdE9wZXJhdG9ycyIsImdxbFR5cGVDYWNoZSIsIkVycm9yIiwiZmllbGRPcGVyYXRvcnMiLCJyZXF1aXJlZCIsInB1c2giLCJvYmplY3RUeXBlRmllbGRzIiwiZ3FsVHlwZSIsImluY2x1ZGVzIl0sIm1hcHBpbmdzIjoiOzs7OytCQXNRYUE7OztlQUFBQTs7O3lCQTVQTjtnQ0FDZ0Q7aUNBQzNCO3VCQUlHOzBFQUNEO21FQUNQO2tFQUNEOzs7Ozs7QUFrQnRCLE1BQU1DLGdCQUFnQixJQUFJQywrQkFBc0IsQ0FBQztJQUMvQ0MsTUFBTTtJQUNOQyxRQUFRO1FBQ05DLGFBQWE7WUFDWEMsTUFBTUMsNEJBQVc7UUFDbkI7UUFDQUQsTUFBTTtZQUFFQSxNQUFNRSxzQkFB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
|
|
292
|
+
//# sourceMappingURL=withOperators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/schema/withOperators.ts"],"sourcesContent":["import type { GraphQLType } from 'graphql'\nimport type { FieldAffectingData, NumberField, RadioField, SelectField } from 'payload/types'\n\nimport {\n GraphQLBoolean,\n GraphQLEnumType,\n GraphQLFloat,\n GraphQLInputObjectType,\n GraphQLInt,\n GraphQLList,\n GraphQLString,\n} from 'graphql'\nimport { DateTimeResolver, EmailAddressResolver } from 'graphql-scalars'\nimport { GraphQLJSON } from 'graphql-type-json'\nimport { optionIsObject } from 'payload/types'\n\nimport combineParentName from '../utilities/combineParentName.js'\nimport formatName from '../utilities/formatName.js'\nimport operators from './operators.js'\n\ntype staticTypes =\n | 'checkbox'\n | 'code'\n | 'date'\n | 'email'\n | 'json'\n | 'number'\n | 'point'\n | 'relationship'\n | 'richText'\n | 'text'\n | 'textarea'\n | 'upload'\n\ntype dynamicTypes = 'radio' | 'select'\n\nconst GeoJSONObject = new GraphQLInputObjectType({\n name: 'GeoJSONObject',\n fields: {\n type: { type: GraphQLString },\n coordinates: {\n type: GraphQLJSON,\n },\n },\n})\n\ntype DefaultsType = {\n [key in staticTypes]: {\n operators: {\n name: string\n type: ((field: FieldAffectingData, parentName: string) => GraphQLType) | GraphQLType\n }[]\n }\n} & {\n [key in dynamicTypes]: {\n operators: {\n name: string\n type: (field: FieldAffectingData, parentName: string) => GraphQLType\n }[]\n }\n}\n\nconst defaults: DefaultsType = {\n checkbox: {\n operators: [\n ...operators.equality.map((operator) => ({\n name: operator,\n type: GraphQLBoolean,\n })),\n ],\n },\n code: {\n operators: [\n ...[...operators.equality, ...operators.partial].map((operator) => ({\n name: operator,\n type: GraphQLString,\n })),\n ],\n },\n date: {\n operators: [\n ...[...operators.equality, ...operators.comparison, 'like'].map((operator) => ({\n name: operator,\n type: DateTimeResolver,\n })),\n ],\n },\n email: {\n operators: [\n ...[...operators.equality, ...operators.partial, ...operators.contains].map((operator) => ({\n name: operator,\n type: EmailAddressResolver,\n })),\n ],\n },\n json: {\n operators: [\n ...[...operators.equality, ...operators.partial, ...operators.geojson].map((operator) => ({\n name: operator,\n type: GraphQLJSON,\n })),\n ],\n },\n number: {\n operators: [\n ...[...operators.equality, ...operators.comparison].map((operator) => ({\n name: operator,\n type: (field: NumberField): GraphQLType => {\n return field?.name === 'id' ? GraphQLInt : GraphQLFloat\n },\n })),\n ],\n },\n point: {\n operators: [\n ...[...operators.equality, ...operators.comparison, ...operators.geo].map((operator) => ({\n name: operator,\n type: new GraphQLList(GraphQLFloat),\n })),\n ...operators.geojson.map((operator) => ({\n name: operator,\n /**\n * @example:\n * within: {\n * type: \"Polygon\",\n * coordinates: [[\n * [0.0, 0.0],\n * [1.0, 1.0],\n * [1.0, 0.0],\n * [0.0, 0.0],\n * ]],\n * }\n * @example\n * intersects: {\n * type: \"Point\",\n * coordinates: [ 0.5, 0.5 ]\n * }\n */\n type: GeoJSONObject,\n })),\n ],\n },\n radio: {\n operators: [\n ...[...operators.equality, ...operators.partial].map((operator) => ({\n name: operator,\n type: (field: RadioField, parentName): GraphQLType =>\n new GraphQLEnumType({\n name: `${combineParentName(parentName, field.name)}_Input`,\n values: field.options.reduce((values, option) => {\n if (optionIsObject(option)) {\n return {\n ...values,\n [formatName(option.value)]: {\n value: option.value,\n },\n }\n }\n\n return {\n ...values,\n [formatName(option)]: {\n value: option,\n },\n }\n }, {}),\n }),\n })),\n ],\n },\n relationship: {\n operators: [\n ...[...operators.equality, ...operators.contains].map((operator) => ({\n name: operator,\n type: GraphQLJSON,\n })),\n ],\n },\n richText: {\n operators: [\n ...[...operators.equality, ...operators.partial].map((operator) => ({\n name: operator,\n type: GraphQLJSON,\n })),\n ],\n },\n select: {\n operators: [\n ...[...operators.equality, ...operators.contains].map((operator) => ({\n name: operator,\n type: (field: SelectField, parentName): GraphQLType =>\n new GraphQLEnumType({\n name: `${combineParentName(parentName, field.name)}_Input`,\n values: field.options.reduce((values, option) => {\n if (optionIsObject(option)) {\n return {\n ...values,\n [formatName(option.value)]: {\n value: option.value,\n },\n }\n }\n\n return {\n ...values,\n [formatName(option)]: {\n value: option,\n },\n }\n }, {}),\n }),\n })),\n ],\n },\n text: {\n operators: [\n ...[...operators.equality, ...operators.partial, ...operators.contains].map((operator) => ({\n name: operator,\n type: GraphQLString,\n })),\n ],\n },\n textarea: {\n operators: [\n ...[...operators.equality, ...operators.partial].map((operator) => ({\n name: operator,\n type: GraphQLString,\n })),\n ],\n },\n upload: {\n operators: [\n ...operators.equality.map((operator) => ({\n name: operator,\n type: GraphQLString,\n })),\n ],\n },\n // array: n/a\n // group: n/a\n // row: n/a\n // collapsible: n/a\n // tabs: n/a\n}\n\nconst listOperators = ['in', 'not_in', 'all']\n\nconst gqlTypeCache: Record<string, GraphQLType> = {}\n\n/**\n * In GraphQL, you can use \"where\" as an argument to filter a collection. Example:\n * { Posts(where: { title: { equals: \"Hello\" } }) { text } }\n * This function defines the operators for a field's condition in the \"where\" argument of the collection (it thus gets called for every field).\n * For example, in the example above, it would control that\n * - \"equals\" is a valid operator for the \"title\" field\n * - the accepted type of the \"equals\" argument has to be a string.\n *\n * @param field the field for which their valid operators inside a \"where\" argument is being defined\n * @param parentName the name of the parent field (if any)\n * @returns all the operators (including their types) which can be used as a condition for a given field inside a where\n */\nexport const withOperators = (\n field: FieldAffectingData,\n parentName: string,\n): GraphQLInputObjectType => {\n if (!defaults?.[field.type]) throw new Error(`Error: ${field.type} has no defaults configured.`)\n\n const name = `${combineParentName(parentName, field.name)}_operator`\n\n // Get the default operators for the field type which are hard-coded above\n const fieldOperators = [...defaults[field.type].operators]\n\n if (!('required' in field) || !field.required) {\n fieldOperators.push({\n name: 'exists',\n type: fieldOperators[0].type,\n })\n }\n\n return new GraphQLInputObjectType({\n name,\n fields: fieldOperators.reduce((objectTypeFields, operator) => {\n // Get the type of the operator. It can be either static, or dynamic (=> a function)\n let gqlType: GraphQLType =\n typeof operator.type === 'function' ? operator.type(field, parentName) : operator.type\n\n // GraphQL does not allow types with duplicate names, so we use this cache to avoid that.\n // Without this, select and radio fields would have the same name, and GraphQL would throw an error\n // This usually only happens if a custom type is returned from the operator.type function\n if (typeof operator.type === 'function' && 'name' in gqlType) {\n if (gqlTypeCache[gqlType.name]) {\n gqlType = gqlTypeCache[gqlType.name]\n } else {\n gqlTypeCache[gqlType.name] = gqlType\n }\n }\n\n if (listOperators.includes(operator.name)) {\n gqlType = new GraphQLList(gqlType)\n } else if (operator.name === 'exists') {\n gqlType = GraphQLBoolean\n }\n\n return {\n ...objectTypeFields,\n [operator.name]: {\n type: gqlType,\n },\n }\n }, {}),\n })\n}\n"],"names":["GraphQLBoolean","GraphQLEnumType","GraphQLFloat","GraphQLInputObjectType","GraphQLInt","GraphQLList","GraphQLString","DateTimeResolver","EmailAddressResolver","GraphQLJSON","optionIsObject","combineParentName","formatName","operators","GeoJSONObject","name","fields","type","coordinates","defaults","checkbox","equality","map","operator","code","partial","date","comparison","email","contains","json","geojson","number","field","point","geo","radio","parentName","values","options","reduce","option","value","relationship","richText","select","text","textarea","upload","listOperators","gqlTypeCache","withOperators","Error","fieldOperators","required","push","objectTypeFields","gqlType","includes"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _formatName = /*#__PURE__*/ _interop_require_default(require("./formatName"));
|
|
12
|
-
function _interop_require_default(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
const combineParentName = (parent, name)=>(0, _formatName.default)(`${parent ? `${parent}_` : ''}${name}`);
|
|
18
|
-
const _default = combineParentName;
|
|
1
|
+
import formatName from './formatName.js';
|
|
2
|
+
const combineParentName = (parent, name)=>formatName(`${parent ? `${parent}_` : ''}${name}`);
|
|
3
|
+
export default combineParentName;
|
|
19
4
|
|
|
20
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=combineParentName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/combineParentName.ts"],"sourcesContent":["import formatName from './formatName.js'\n\nconst combineParentName = (parent: string, name: string): string =>\n formatName(`${parent ? `${parent}_` : ''}${name}`)\n\nexport default combineParentName\n"],"names":["formatName","combineParentName","parent","name"],"rangeMappings":";;","mappings":"AAAA,OAAOA,gBAAgB,kBAAiB;AAExC,MAAMC,oBAAoB,CAACC,QAAgBC,OACzCH,WAAW,CAAC,EAAEE,SAAS,CAAC,EAAEA,OAAO,CAAC,CAAC,GAAG,GAAG,EAAEC,KAAK,CAAC;AAEnD,eAAeF,kBAAiB"}
|
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
1
|
const numbers = [
|
|
12
2
|
'0',
|
|
13
3
|
'1',
|
|
@@ -30,6 +20,6 @@ const formatName = (string)=>{
|
|
|
30
20
|
.normalize('NFKD').replace(/[\u0300-\u036f]/g, '').replace(/\./g, '_').replace(/-|\//g, '_').replace(/\+/g, '_').replace(/,/g, '_').replace(/\(/g, '_').replace(/\)/g, '_').replace(/'/g, '_').replace(/ /g, '');
|
|
31
21
|
return formatted || '_';
|
|
32
22
|
};
|
|
33
|
-
|
|
23
|
+
export default formatName;
|
|
34
24
|
|
|
35
|
-
//# sourceMappingURL=
|
|
25
|
+
//# sourceMappingURL=formatName.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/formatName.ts"],"sourcesContent":["const numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']\n\nconst formatName = (string: string): string => {\n let sanitizedString = String(string)\n\n const firstLetter = sanitizedString.substring(0, 1)\n\n if (numbers.indexOf(firstLetter) > -1) {\n sanitizedString = `_${sanitizedString}`\n }\n\n const formatted = sanitizedString\n // Convert accented characters\n .normalize('NFKD')\n .replace(/[\\u0300-\\u036f]/g, '')\n\n .replace(/\\./g, '_')\n .replace(/-|\\//g, '_')\n .replace(/\\+/g, '_')\n .replace(/,/g, '_')\n .replace(/\\(/g, '_')\n .replace(/\\)/g, '_')\n .replace(/'/g, '_')\n .replace(/ /g, '')\n\n return formatted || '_'\n}\n\nexport default formatName\n"],"names":["numbers","formatName","string","sanitizedString","String","firstLetter","substring","indexOf","formatted","normalize","replace"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,MAAMA,UAAU;IAAC;IAAK;IAAK;IAAK;IAAK;IAAK;IAAK;IAAK;IAAK;IAAK;CAAI;AAElE,MAAMC,aAAa,CAACC;IAClB,IAAIC,kBAAkBC,OAAOF;IAE7B,MAAMG,cAAcF,gBAAgBG,SAAS,CAAC,GAAG;IAEjD,IAAIN,QAAQO,OAAO,CAACF,eAAe,CAAC,GAAG;QACrCF,kBAAkB,CAAC,CAAC,EAAEA,gBAAgB,CAAC;IACzC;IAEA,MAAMK,YAAYL,eAChB,8BAA8B;KAC7BM,SAAS,CAAC,QACVC,OAAO,CAAC,oBAAoB,IAE5BA,OAAO,CAAC,OAAO,KACfA,OAAO,CAAC,SAAS,KACjBA,OAAO,CAAC,OAAO,KACfA,OAAO,CAAC,MAAM,KACdA,OAAO,CAAC,OAAO,KACfA,OAAO,CAAC,OAAO,KACfA,OAAO,CAAC,MAAM,KACdA,OAAO,CAAC,MAAM;IAEjB,OAAOF,aAAa;AACtB;AAEA,eAAeP,WAAU"}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
|
-
/* eslint-disable indent */ /* eslint-disable jest/prefer-strict-equal */
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
const _formatName = /*#__PURE__*/ _interop_require_default(require("./formatName"));
|
|
6
|
-
function _interop_require_default(obj) {
|
|
7
|
-
return obj && obj.__esModule ? obj : {
|
|
8
|
-
default: obj
|
|
9
|
-
};
|
|
10
|
-
}
|
|
1
|
+
/* eslint-disable indent */ /* eslint-disable jest/prefer-strict-equal */ import formatName from './formatName';
|
|
11
2
|
describe('formatName', ()=>{
|
|
12
3
|
it.each`
|
|
13
4
|
char | expected
|
|
@@ -19,8 +10,8 @@ describe('formatName', ()=>{
|
|
|
19
10
|
${'ñ'} | ${'n'}
|
|
20
11
|
${'ü'} | ${'u'}
|
|
21
12
|
`('should convert accented character: $char', ({ char, expected })=>{
|
|
22
|
-
expect((
|
|
13
|
+
expect(formatName(char)).toEqual(expected);
|
|
23
14
|
});
|
|
24
15
|
});
|
|
25
16
|
|
|
26
|
-
//# sourceMappingURL=
|
|
17
|
+
//# sourceMappingURL=formatName.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/formatName.spec.ts"],"sourcesContent":["/* eslint-disable indent */\n/* eslint-disable jest/prefer-strict-equal */\nimport formatName from './formatName'\n\ndescribe('formatName', () => {\n it.each`\n char | expected\n ${'á'} | ${'a'}\n ${'è'} | ${'e'}\n ${'í'} | ${'i'}\n ${'ó'} | ${'o'}\n ${'ú'} | ${'u'}\n ${'ñ'} | ${'n'}\n ${'ü'} | ${'u'}\n `('should convert accented character: $char', ({ char, expected }) => {\n expect(formatName(char)).toEqual(expected)\n })\n})\n"],"names":["formatName","describe","it","each","char","expected","expect","toEqual"],"rangeMappings":";;;;;;;;;;;;;;","mappings":"AAAA,yBAAyB,GACzB,2CAA2C,GAC3C,OAAOA,gBAAgB,eAAc;AAErCC,SAAS,cAAc;IACrBC,GAAGC,IAAI,CAAC;;IAEN,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;IACf,EAAE,IAAI,GAAG,EAAE,IAAI;EACjB,CAAC,CAAC,4CAA4C,CAAC,EAAEC,IAAI,EAAEC,QAAQ,EAAE;QAC/DC,OAAON,WAAWI,OAAOG,OAAO,CAACF;IACnC;AACF"}
|
|
@@ -1,37 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _formatName = /*#__PURE__*/ _interop_require_default(require("./formatName"));
|
|
12
|
-
function _interop_require_default(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
1
|
+
import formatName from './formatName.js';
|
|
17
2
|
const formatOptions = (field)=>{
|
|
18
3
|
return field.options.reduce((values, option)=>{
|
|
19
4
|
if (typeof option === 'object') {
|
|
20
5
|
return {
|
|
21
6
|
...values,
|
|
22
|
-
[(
|
|
7
|
+
[formatName(option.value)]: {
|
|
23
8
|
value: option.value
|
|
24
9
|
}
|
|
25
10
|
};
|
|
26
11
|
}
|
|
27
12
|
return {
|
|
28
13
|
...values,
|
|
29
|
-
[(
|
|
14
|
+
[formatName(option)]: {
|
|
30
15
|
value: option
|
|
31
16
|
}
|
|
32
17
|
};
|
|
33
18
|
}, {});
|
|
34
19
|
};
|
|
35
|
-
|
|
20
|
+
export default formatOptions;
|
|
36
21
|
|
|
37
|
-
//# sourceMappingURL=
|
|
22
|
+
//# sourceMappingURL=formatOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/formatOptions.ts"],"sourcesContent":["import type { RadioField, SelectField } from 'payload/types'\n\nimport formatName from './formatName.js'\n\nconst formatOptions = (field: RadioField | SelectField) => {\n return field.options.reduce((values, option) => {\n if (typeof option === 'object') {\n return {\n ...values,\n [formatName(option.value)]: {\n value: option.value,\n },\n }\n }\n\n return {\n ...values,\n [formatName(option)]: {\n value: option,\n },\n }\n }, {})\n}\n\nexport default formatOptions\n"],"names":["formatName","formatOptions","field","options","reduce","values","option","value"],"rangeMappings":";;;;;;;;;;;;;;;;;;;","mappings":"AAEA,OAAOA,gBAAgB,kBAAiB;AAExC,MAAMC,gBAAgB,CAACC;IACrB,OAAOA,MAAMC,OAAO,CAACC,MAAM,CAAC,CAACC,QAAQC;QACnC,IAAI,OAAOA,WAAW,UAAU;YAC9B,OAAO;gBACL,GAAGD,MAAM;gBACT,CAACL,WAAWM,OAAOC,KAAK,EAAE,EAAE;oBAC1BA,OAAOD,OAAOC,KAAK;gBACrB;YACF;QACF;QAEA,OAAO;YACL,GAAGF,MAAM;YACT,CAACL,WAAWM,QAAQ,EAAE;gBACpBC,OAAOD;YACT;QACF;IACF,GAAG,CAAC;AACN;AAEA,eAAeL,cAAa"}
|
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "default", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _default = (localization)=>(value)=>typeof value === 'object' && Object.keys(value).some((key)=>localization.locales.indexOf(key) > -1);
|
|
1
|
+
export default ((localization)=>(value)=>typeof value === 'object' && Object.keys(value).some((key)=>localization.locales.indexOf(key) > -1));
|
|
12
2
|
|
|
13
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=getCheckIfLocaleObject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getCheckIfLocaleObject.ts"],"sourcesContent":["export default (localization: { locales: string[] }) =>\n (value: unknown): boolean =>\n typeof value === 'object' &&\n Object.keys(value).some((key) => localization.locales.indexOf(key) > -1)\n"],"names":["localization","value","Object","keys","some","key","locales","indexOf"],"rangeMappings":"","mappings":"AAAA,eAAe,CAAA,CAACA,eACd,CAACC,QACC,OAAOA,UAAU,YACjBC,OAAOC,IAAI,CAACF,OAAOG,IAAI,CAAC,CAACC,MAAQL,aAAaM,OAAO,CAACC,OAAO,CAACF,OAAO,CAAC,EAAC,EAAC"}
|
|
@@ -1,18 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
value: true
|
|
4
|
-
});
|
|
5
|
-
Object.defineProperty(exports, "groupOrTabHasRequiredSubfield", {
|
|
6
|
-
enumerable: true,
|
|
7
|
-
get: function() {
|
|
8
|
-
return groupOrTabHasRequiredSubfield;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _types = require("payload/types");
|
|
12
|
-
const groupOrTabHasRequiredSubfield = (entity)=>{
|
|
1
|
+
import { fieldAffectsData } from 'payload/types';
|
|
2
|
+
export const groupOrTabHasRequiredSubfield = (entity)=>{
|
|
13
3
|
if ('type' in entity && entity.type === 'group') {
|
|
14
4
|
return entity.fields.some((subField)=>{
|
|
15
|
-
return
|
|
5
|
+
return fieldAffectsData(subField) && 'required' in subField && subField.required || groupOrTabHasRequiredSubfield(subField);
|
|
16
6
|
});
|
|
17
7
|
}
|
|
18
8
|
if ('fields' in entity && 'name' in entity) {
|
|
@@ -21,4 +11,4 @@ const groupOrTabHasRequiredSubfield = (entity)=>{
|
|
|
21
11
|
return false;
|
|
22
12
|
};
|
|
23
13
|
|
|
24
|
-
//# sourceMappingURL=
|
|
14
|
+
//# sourceMappingURL=groupOrTabHasRequiredSubfield.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/groupOrTabHasRequiredSubfield.ts"],"sourcesContent":["import type { Field, Tab } from 'payload/types'\n\nimport { fieldAffectsData } from 'payload/types'\n\nexport const groupOrTabHasRequiredSubfield = (entity: Field | Tab): boolean => {\n if ('type' in entity && entity.type === 'group') {\n return entity.fields.some((subField) => {\n return (\n (fieldAffectsData(subField) && 'required' in subField && subField.required) ||\n groupOrTabHasRequiredSubfield(subField)\n )\n })\n }\n\n if ('fields' in entity && 'name' in entity) {\n return (entity as Tab).fields.some((subField) => groupOrTabHasRequiredSubfield(subField))\n }\n\n return false\n}\n"],"names":["fieldAffectsData","groupOrTabHasRequiredSubfield","entity","type","fields","some","subField","required"],"rangeMappings":";;;;;;;;;;;","mappings":"AAEA,SAASA,gBAAgB,QAAQ,gBAAe;AAEhD,OAAO,MAAMC,gCAAgC,CAACC;IAC5C,IAAI,UAAUA,UAAUA,OAAOC,IAAI,KAAK,SAAS;QAC/C,OAAOD,OAAOE,MAAM,CAACC,IAAI,CAAC,CAACC;YACzB,OACE,AAACN,iBAAiBM,aAAa,cAAcA,YAAYA,SAASC,QAAQ,IAC1EN,8BAA8BK;QAElC;IACF;IAEA,IAAI,YAAYJ,UAAU,UAAUA,QAAQ;QAC1C,OAAO,AAACA,OAAeE,MAAM,CAACC,IAAI,CAAC,CAACC,WAAaL,8BAA8BK;IACjF;IAEA,OAAO;AACT,EAAC"}
|