@payloadcms/graphql 3.0.0-beta.5 → 3.0.0-beta.51

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.
Files changed (216) hide show
  1. package/bin.js +5 -0
  2. package/dist/bin/generateSchema.d.ts +3 -0
  3. package/dist/bin/generateSchema.d.ts.map +1 -0
  4. package/dist/bin/generateSchema.js +10 -0
  5. package/dist/bin/generateSchema.js.map +1 -0
  6. package/dist/bin/index.d.ts +2 -0
  7. package/dist/bin/index.d.ts.map +1 -0
  8. package/dist/bin/index.js +17 -0
  9. package/dist/bin/index.js.map +1 -0
  10. package/dist/exports/types.d.ts +2 -0
  11. package/dist/exports/types.d.ts.map +1 -0
  12. package/dist/exports/types.js +3 -0
  13. package/dist/exports/types.js.map +1 -0
  14. package/dist/exports/utilities.d.ts +3 -0
  15. package/dist/exports/utilities.d.ts.map +1 -0
  16. package/dist/exports/utilities.js +4 -0
  17. package/dist/exports/utilities.js.map +1 -0
  18. package/dist/index.d.ts +3 -3
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +2 -2
  21. package/dist/index.js.map +1 -1
  22. package/dist/packages/graphql-query-complexity/QueryComplexity.d.ts +51 -0
  23. package/dist/packages/graphql-query-complexity/QueryComplexity.d.ts.map +1 -0
  24. package/dist/packages/graphql-query-complexity/QueryComplexity.js +270 -0
  25. package/dist/packages/graphql-query-complexity/QueryComplexity.js.map +1 -0
  26. package/dist/packages/graphql-query-complexity/createComplexityRule.d.ts +5 -0
  27. package/dist/packages/graphql-query-complexity/createComplexityRule.d.ts.map +1 -0
  28. package/dist/packages/graphql-query-complexity/createComplexityRule.js +8 -0
  29. package/dist/packages/graphql-query-complexity/createComplexityRule.js.map +1 -0
  30. package/dist/packages/graphql-query-complexity/estimators/fieldExtensions/index.d.ts +3 -0
  31. package/dist/packages/graphql-query-complexity/estimators/fieldExtensions/index.d.ts.map +1 -0
  32. package/dist/packages/graphql-query-complexity/estimators/fieldExtensions/index.js +14 -0
  33. package/dist/packages/graphql-query-complexity/estimators/fieldExtensions/index.js.map +1 -0
  34. package/dist/packages/graphql-query-complexity/estimators/simple/index.d.ts +5 -0
  35. package/dist/packages/graphql-query-complexity/estimators/simple/index.d.ts.map +1 -0
  36. package/dist/packages/graphql-query-complexity/estimators/simple/index.js +8 -0
  37. package/dist/packages/graphql-query-complexity/estimators/simple/index.js.map +1 -0
  38. package/dist/packages/graphql-query-complexity/index.d.ts +4 -0
  39. package/dist/packages/graphql-query-complexity/index.d.ts.map +1 -0
  40. package/dist/packages/graphql-query-complexity/index.js +5 -0
  41. package/dist/packages/graphql-query-complexity/index.js.map +1 -0
  42. package/dist/packages/graphql-type-json/index.d.ts +4 -0
  43. package/dist/packages/graphql-type-json/index.d.ts.map +1 -0
  44. package/dist/packages/graphql-type-json/index.js +64 -0
  45. package/dist/packages/graphql-type-json/index.js.map +1 -0
  46. package/dist/resolvers/auth/access.d.ts +1 -1
  47. package/dist/resolvers/auth/access.d.ts.map +1 -1
  48. package/dist/resolvers/auth/access.js +1 -2
  49. package/dist/resolvers/auth/access.js.map +1 -1
  50. package/dist/resolvers/auth/forgotPassword.d.ts +1 -1
  51. package/dist/resolvers/auth/forgotPassword.d.ts.map +1 -1
  52. package/dist/resolvers/auth/forgotPassword.js +1 -2
  53. package/dist/resolvers/auth/forgotPassword.js.map +1 -1
  54. package/dist/resolvers/auth/init.d.ts.map +1 -1
  55. package/dist/resolvers/auth/init.js +1 -2
  56. package/dist/resolvers/auth/init.js.map +1 -1
  57. package/dist/resolvers/auth/login.d.ts +1 -1
  58. package/dist/resolvers/auth/login.d.ts.map +1 -1
  59. package/dist/resolvers/auth/login.js +1 -3
  60. package/dist/resolvers/auth/login.js.map +1 -1
  61. package/dist/resolvers/auth/logout.d.ts +1 -1
  62. package/dist/resolvers/auth/logout.d.ts.map +1 -1
  63. package/dist/resolvers/auth/logout.js +1 -3
  64. package/dist/resolvers/auth/logout.js.map +1 -1
  65. package/dist/resolvers/auth/me.d.ts +1 -1
  66. package/dist/resolvers/auth/me.d.ts.map +1 -1
  67. package/dist/resolvers/auth/me.js +1 -2
  68. package/dist/resolvers/auth/me.js.map +1 -1
  69. package/dist/resolvers/auth/refresh.d.ts +1 -1
  70. package/dist/resolvers/auth/refresh.d.ts.map +1 -1
  71. package/dist/resolvers/auth/refresh.js +1 -3
  72. package/dist/resolvers/auth/refresh.js.map +1 -1
  73. package/dist/resolvers/auth/resetPassword.d.ts +1 -1
  74. package/dist/resolvers/auth/resetPassword.d.ts.map +1 -1
  75. package/dist/resolvers/auth/resetPassword.js +1 -3
  76. package/dist/resolvers/auth/resetPassword.js.map +1 -1
  77. package/dist/resolvers/auth/unlock.d.ts +1 -1
  78. package/dist/resolvers/auth/unlock.d.ts.map +1 -1
  79. package/dist/resolvers/auth/unlock.js +1 -2
  80. package/dist/resolvers/auth/unlock.js.map +1 -1
  81. package/dist/resolvers/auth/verifyEmail.d.ts +1 -1
  82. package/dist/resolvers/auth/verifyEmail.d.ts.map +1 -1
  83. package/dist/resolvers/auth/verifyEmail.js +1 -2
  84. package/dist/resolvers/auth/verifyEmail.js.map +1 -1
  85. package/dist/resolvers/collections/count.d.ts +12 -0
  86. package/dist/resolvers/collections/count.d.ts.map +1 -0
  87. package/dist/resolvers/collections/count.js +22 -0
  88. package/dist/resolvers/collections/count.js.map +1 -0
  89. package/dist/resolvers/collections/create.d.ts +2 -4
  90. package/dist/resolvers/collections/create.d.ts.map +1 -1
  91. package/dist/resolvers/collections/create.js +1 -2
  92. package/dist/resolvers/collections/create.js.map +1 -1
  93. package/dist/resolvers/collections/delete.d.ts +5 -5
  94. package/dist/resolvers/collections/delete.d.ts.map +1 -1
  95. package/dist/resolvers/collections/delete.js +8 -6
  96. package/dist/resolvers/collections/delete.js.map +1 -1
  97. package/dist/resolvers/collections/docAccess.d.ts +2 -3
  98. package/dist/resolvers/collections/docAccess.d.ts.map +1 -1
  99. package/dist/resolvers/collections/docAccess.js +1 -2
  100. package/dist/resolvers/collections/docAccess.js.map +1 -1
  101. package/dist/resolvers/collections/duplicate.d.ts +2 -4
  102. package/dist/resolvers/collections/duplicate.d.ts.map +1 -1
  103. package/dist/resolvers/collections/duplicate.js +2 -2
  104. package/dist/resolvers/collections/duplicate.js.map +1 -1
  105. package/dist/resolvers/collections/find.d.ts +3 -5
  106. package/dist/resolvers/collections/find.d.ts.map +1 -1
  107. package/dist/resolvers/collections/find.js +6 -3
  108. package/dist/resolvers/collections/find.js.map +1 -1
  109. package/dist/resolvers/collections/findByID.d.ts +3 -5
  110. package/dist/resolvers/collections/findByID.d.ts.map +1 -1
  111. package/dist/resolvers/collections/findByID.js +6 -3
  112. package/dist/resolvers/collections/findByID.js.map +1 -1
  113. package/dist/resolvers/collections/findVersionByID.d.ts +3 -6
  114. package/dist/resolvers/collections/findVersionByID.d.ts.map +1 -1
  115. package/dist/resolvers/collections/findVersionByID.js +3 -4
  116. package/dist/resolvers/collections/findVersionByID.js.map +1 -1
  117. package/dist/resolvers/collections/findVersions.d.ts +4 -5
  118. package/dist/resolvers/collections/findVersions.d.ts.map +1 -1
  119. package/dist/resolvers/collections/findVersions.js +8 -6
  120. package/dist/resolvers/collections/findVersions.js.map +1 -1
  121. package/dist/resolvers/collections/restoreVersion.d.ts +2 -3
  122. package/dist/resolvers/collections/restoreVersion.d.ts.map +1 -1
  123. package/dist/resolvers/collections/restoreVersion.js +1 -2
  124. package/dist/resolvers/collections/restoreVersion.js.map +1 -1
  125. package/dist/resolvers/collections/update.d.ts +4 -5
  126. package/dist/resolvers/collections/update.d.ts.map +1 -1
  127. package/dist/resolvers/collections/update.js +8 -6
  128. package/dist/resolvers/collections/update.js.map +1 -1
  129. package/dist/resolvers/globals/docAccess.d.ts +2 -3
  130. package/dist/resolvers/globals/docAccess.d.ts.map +1 -1
  131. package/dist/resolvers/globals/docAccess.js +1 -2
  132. package/dist/resolvers/globals/docAccess.js.map +1 -1
  133. package/dist/resolvers/globals/findOne.d.ts +1 -1
  134. package/dist/resolvers/globals/findOne.d.ts.map +1 -1
  135. package/dist/resolvers/globals/findOne.js +1 -2
  136. package/dist/resolvers/globals/findOne.js.map +1 -1
  137. package/dist/resolvers/globals/findVersionByID.d.ts +2 -2
  138. package/dist/resolvers/globals/findVersionByID.d.ts.map +1 -1
  139. package/dist/resolvers/globals/findVersionByID.js +1 -2
  140. package/dist/resolvers/globals/findVersionByID.js.map +1 -1
  141. package/dist/resolvers/globals/findVersions.d.ts +2 -2
  142. package/dist/resolvers/globals/findVersions.d.ts.map +1 -1
  143. package/dist/resolvers/globals/findVersions.js +1 -2
  144. package/dist/resolvers/globals/findVersions.js.map +1 -1
  145. package/dist/resolvers/globals/restoreVersion.d.ts +2 -2
  146. package/dist/resolvers/globals/restoreVersion.d.ts.map +1 -1
  147. package/dist/resolvers/globals/restoreVersion.js +1 -2
  148. package/dist/resolvers/globals/restoreVersion.js.map +1 -1
  149. package/dist/resolvers/globals/update.d.ts +2 -3
  150. package/dist/resolvers/globals/update.d.ts.map +1 -1
  151. package/dist/resolvers/globals/update.js +1 -2
  152. package/dist/resolvers/globals/update.js.map +1 -1
  153. package/dist/resolvers/types.d.ts +2 -2
  154. package/dist/resolvers/types.d.ts.map +1 -1
  155. package/dist/resolvers/types.js.map +1 -1
  156. package/dist/schema/buildFallbackLocaleInputType.d.ts +1 -1
  157. package/dist/schema/buildFallbackLocaleInputType.d.ts.map +1 -1
  158. package/dist/schema/buildFallbackLocaleInputType.js.map +1 -1
  159. package/dist/schema/buildLocaleInputType.d.ts +1 -1
  160. package/dist/schema/buildLocaleInputType.d.ts.map +1 -1
  161. package/dist/schema/buildLocaleInputType.js.map +1 -1
  162. package/dist/schema/buildMutationInputType.d.ts +1 -2
  163. package/dist/schema/buildMutationInputType.d.ts.map +1 -1
  164. package/dist/schema/buildMutationInputType.js +4 -5
  165. package/dist/schema/buildMutationInputType.js.map +1 -1
  166. package/dist/schema/buildObjectType.d.ts +3 -4
  167. package/dist/schema/buildObjectType.d.ts.map +1 -1
  168. package/dist/schema/buildObjectType.js +66 -40
  169. package/dist/schema/buildObjectType.js.map +1 -1
  170. package/dist/schema/buildPoliciesType.d.ts +1 -1
  171. package/dist/schema/buildPoliciesType.d.ts.map +1 -1
  172. package/dist/schema/buildPoliciesType.js +2 -2
  173. package/dist/schema/buildPoliciesType.js.map +1 -1
  174. package/dist/schema/buildWhereInputType.d.ts +1 -1
  175. package/dist/schema/buildWhereInputType.d.ts.map +1 -1
  176. package/dist/schema/buildWhereInputType.js +3 -3
  177. package/dist/schema/buildWhereInputType.js.map +1 -1
  178. package/dist/schema/fieldToWhereInputSchemaMap.d.ts.map +1 -1
  179. package/dist/schema/fieldToWhereInputSchemaMap.js +1 -2
  180. package/dist/schema/fieldToWhereInputSchemaMap.js.map +1 -1
  181. package/dist/schema/initCollections.d.ts +2 -2
  182. package/dist/schema/initCollections.d.ts.map +1 -1
  183. package/dist/schema/initCollections.js +34 -10
  184. package/dist/schema/initCollections.js.map +1 -1
  185. package/dist/schema/initGlobals.d.ts +1 -2
  186. package/dist/schema/initGlobals.d.ts.map +1 -1
  187. package/dist/schema/initGlobals.js +2 -3
  188. package/dist/schema/initGlobals.js.map +1 -1
  189. package/dist/schema/isFieldNullable.d.ts +1 -1
  190. package/dist/schema/isFieldNullable.d.ts.map +1 -1
  191. package/dist/schema/isFieldNullable.js +1 -1
  192. package/dist/schema/isFieldNullable.js.map +1 -1
  193. package/dist/schema/recursivelyBuildNestedPaths.d.ts +1 -1
  194. package/dist/schema/recursivelyBuildNestedPaths.d.ts.map +1 -1
  195. package/dist/schema/recursivelyBuildNestedPaths.js +1 -1
  196. package/dist/schema/recursivelyBuildNestedPaths.js.map +1 -1
  197. package/dist/schema/withNullableType.d.ts +1 -1
  198. package/dist/schema/withNullableType.d.ts.map +1 -1
  199. package/dist/schema/withNullableType.js.map +1 -1
  200. package/dist/schema/withOperators.d.ts +1 -1
  201. package/dist/schema/withOperators.d.ts.map +1 -1
  202. package/dist/schema/withOperators.js +2 -2
  203. package/dist/schema/withOperators.js.map +1 -1
  204. package/dist/utilities/formatOptions.d.ts +1 -1
  205. package/dist/utilities/formatOptions.d.ts.map +1 -1
  206. package/dist/utilities/formatOptions.js.map +1 -1
  207. package/dist/utilities/groupOrTabHasRequiredSubfield.d.ts +1 -1
  208. package/dist/utilities/groupOrTabHasRequiredSubfield.d.ts.map +1 -1
  209. package/dist/utilities/groupOrTabHasRequiredSubfield.js +1 -1
  210. package/dist/utilities/groupOrTabHasRequiredSubfield.js.map +1 -1
  211. package/dist/utilities/wrapCustomResolver.d.ts +2 -2
  212. package/dist/utilities/wrapCustomResolver.d.ts.map +1 -1
  213. package/dist/utilities/wrapCustomResolver.js +1 -1
  214. package/dist/utilities/wrapCustomResolver.js.map +1 -1
  215. package/package.json +26 -21
  216. package/src/index.ts +0 -126
@@ -1,7 +1,6 @@
1
1
  /* eslint-disable no-param-reassign */ import { GraphQLBoolean, GraphQLInt, GraphQLNonNull, GraphQLObjectType, GraphQLString } from 'graphql';
2
- import { fieldAffectsData } from 'payload/types';
3
- import { flattenTopLevelFields, formatNames, toWords } from 'payload/utilities';
4
- import { buildVersionCollectionFields } from 'payload/versions';
2
+ import { buildVersionCollectionFields, flattenTopLevelFields, formatNames, toWords } from 'payload';
3
+ import { fieldAffectsData } from 'payload/shared';
5
4
  import forgotPassword from '../resolvers/auth/forgotPassword.js';
6
5
  import init from '../resolvers/auth/init.js';
7
6
  import login from '../resolvers/auth/login.js';
@@ -11,19 +10,20 @@ import refresh from '../resolvers/auth/refresh.js';
11
10
  import resetPassword from '../resolvers/auth/resetPassword.js';
12
11
  import unlock from '../resolvers/auth/unlock.js';
13
12
  import verifyEmail from '../resolvers/auth/verifyEmail.js';
13
+ import { countResolver } from '../resolvers/collections/count.js';
14
14
  import createResolver from '../resolvers/collections/create.js';
15
- import getDeleteResolver from '../resolvers/collections/delete.js';
15
+ import { getDeleteResolver } from '../resolvers/collections/delete.js';
16
16
  import { docAccessResolver } from '../resolvers/collections/docAccess.js';
17
17
  import duplicateResolver from '../resolvers/collections/duplicate.js';
18
- import findResolver from '../resolvers/collections/find.js';
19
- import findByIDResolver from '../resolvers/collections/findByID.js';
20
- import findVersionByIDResolver from '../resolvers/collections/findVersionByID.js';
21
- import findVersionsResolver from '../resolvers/collections/findVersions.js';
18
+ import { findResolver } from '../resolvers/collections/find.js';
19
+ import { findByIDResolver } from '../resolvers/collections/findByID.js';
20
+ import { findVersionByIDResolver } from '../resolvers/collections/findVersionByID.js';
21
+ import { findVersionsResolver } from '../resolvers/collections/findVersions.js';
22
22
  import restoreVersionResolver from '../resolvers/collections/restoreVersion.js';
23
- import updateResolver from '../resolvers/collections/update.js';
23
+ import { updateResolver } from '../resolvers/collections/update.js';
24
24
  import formatName from '../utilities/formatName.js';
25
25
  import { buildMutationInputType, getCollectionIDType } from './buildMutationInputType.js';
26
- import buildObjectType from './buildObjectType.js';
26
+ import { buildObjectType } from './buildObjectType.js';
27
27
  import buildPaginatedListType from './buildPaginatedListType.js';
28
28
  import { buildPolicyType } from './buildPoliciesType.js';
29
29
  import buildWhereInputType from './buildWhereInputType.js';
@@ -162,6 +162,30 @@ function initCollectionsGraphQL({ config, graphqlResult }) {
162
162
  },
163
163
  resolve: findResolver(collection)
164
164
  };
165
+ graphqlResult.Query.fields[`count${pluralName}`] = {
166
+ type: new GraphQLObjectType({
167
+ name: `count${pluralName}`,
168
+ fields: {
169
+ totalDocs: {
170
+ type: GraphQLInt
171
+ }
172
+ }
173
+ }),
174
+ args: {
175
+ draft: {
176
+ type: GraphQLBoolean
177
+ },
178
+ where: {
179
+ type: collection.graphQL.whereInputType
180
+ },
181
+ ...config.localization ? {
182
+ locale: {
183
+ type: graphqlResult.types.localeInputType
184
+ }
185
+ } : {}
186
+ },
187
+ resolve: countResolver(collection)
188
+ };
165
189
  graphqlResult.Query.fields[`docAccess${singularName}`] = {
166
190
  type: buildPolicyType({
167
191
  type: 'collection',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/initCollections.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { GraphQLInfo } from 'payload/config'\nimport type { Collection, Field, SanitizedCollectionConfig, SanitizedConfig } from 'payload/types'\n\nimport {\n GraphQLBoolean,\n GraphQLInt,\n GraphQLNonNull,\n GraphQLObjectType,\n GraphQLString,\n} from 'graphql'\nimport { fieldAffectsData } from 'payload/types'\nimport { flattenTopLevelFields, formatNames, toWords } from 'payload/utilities'\nimport { buildVersionCollectionFields } from 'payload/versions'\n\nimport type { ObjectTypeConfig } from './buildObjectType.js'\n\nimport forgotPassword from '../resolvers/auth/forgotPassword.js'\nimport init from '../resolvers/auth/init.js'\nimport login from '../resolvers/auth/login.js'\nimport logout from '../resolvers/auth/logout.js'\nimport me from '../resolvers/auth/me.js'\nimport refresh from '../resolvers/auth/refresh.js'\nimport resetPassword from '../resolvers/auth/resetPassword.js'\nimport unlock from '../resolvers/auth/unlock.js'\nimport verifyEmail from '../resolvers/auth/verifyEmail.js'\nimport createResolver from '../resolvers/collections/create.js'\nimport getDeleteResolver from '../resolvers/collections/delete.js'\nimport { docAccessResolver } from '../resolvers/collections/docAccess.js'\nimport duplicateResolver from '../resolvers/collections/duplicate.js'\nimport findResolver from '../resolvers/collections/find.js'\nimport findByIDResolver from '../resolvers/collections/findByID.js'\nimport findVersionByIDResolver from '../resolvers/collections/findVersionByID.js'\nimport findVersionsResolver from '../resolvers/collections/findVersions.js'\nimport restoreVersionResolver from '../resolvers/collections/restoreVersion.js'\nimport updateResolver from '../resolvers/collections/update.js'\nimport formatName from '../utilities/formatName.js'\nimport { buildMutationInputType, getCollectionIDType } from './buildMutationInputType.js'\nimport buildObjectType from './buildObjectType.js'\nimport buildPaginatedListType from './buildPaginatedListType.js'\nimport { buildPolicyType } from './buildPoliciesType.js'\nimport buildWhereInputType from './buildWhereInputType.js'\n\ntype InitCollectionsGraphQLArgs = {\n config: SanitizedConfig\n graphqlResult: GraphQLInfo\n}\nfunction initCollectionsGraphQL({ config, graphqlResult }: InitCollectionsGraphQLArgs): void {\n Object.keys(graphqlResult.collections).forEach((slug) => {\n const collection: Collection = graphqlResult.collections[slug]\n const {\n config: collectionConfig,\n config: { fields, graphQL = {} as SanitizedCollectionConfig['graphQL'], versions },\n } = collection\n\n if (!graphQL) return\n\n let singularName\n let pluralName\n const fromSlug = formatNames(collection.config.slug)\n if (graphQL.singularName) {\n singularName = toWords(graphQL.singularName, true)\n } else {\n singularName = fromSlug.singular\n }\n if (graphQL.pluralName) {\n pluralName = toWords(graphQL.pluralName, true)\n } else {\n pluralName = fromSlug.plural\n }\n\n // For collections named 'Media' or similar,\n // there is a possibility that the singular name\n // will equal the plural name. Append `all` to the beginning\n // of potential conflicts\n if (singularName === pluralName) {\n pluralName = `all${singularName}`\n }\n\n collection.graphQL = {} as Collection['graphQL']\n\n const hasIDField =\n flattenTopLevelFields(fields).findIndex(\n (field) => fieldAffectsData(field) && field.name === 'id',\n ) > -1\n\n const idType = getCollectionIDType(config.db.defaultIDType, collectionConfig)\n\n const baseFields: ObjectTypeConfig = {}\n\n const whereInputFields = [...fields]\n\n if (!hasIDField) {\n baseFields.id = { type: idType }\n whereInputFields.push({\n name: 'id',\n type: config.db.defaultIDType as 'text',\n })\n }\n\n const forceNullableObjectType = Boolean(versions?.drafts)\n\n collection.graphQL.type = buildObjectType({\n name: singularName,\n baseFields,\n config,\n fields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: singularName,\n })\n\n collection.graphQL.paginatedType = buildPaginatedListType(pluralName, collection.graphQL.type)\n\n collection.graphQL.whereInputType = buildWhereInputType({\n name: singularName,\n fields: whereInputFields,\n parentName: singularName,\n })\n\n if (collectionConfig.auth && !collectionConfig.auth.disableLocalStrategy) {\n fields.push({\n name: 'password',\n type: 'text',\n label: 'Password',\n required: true,\n })\n }\n\n const createMutationInputType = buildMutationInputType({\n name: singularName,\n config,\n fields,\n graphqlResult,\n parentName: singularName,\n })\n if (createMutationInputType) {\n collection.graphQL.mutationInputType = new GraphQLNonNull(createMutationInputType)\n }\n\n const updateMutationInputType = buildMutationInputType({\n name: `${singularName}Update`,\n config,\n fields: fields.filter((field) => !(fieldAffectsData(field) && field.name === 'id')),\n forceNullable: true,\n graphqlResult,\n parentName: `${singularName}Update`,\n })\n if (updateMutationInputType) {\n collection.graphQL.updateMutationInputType = new GraphQLNonNull(updateMutationInputType)\n }\n\n graphqlResult.Query.fields[singularName] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findByIDResolver(collection),\n }\n\n graphqlResult.Query.fields[pluralName] = {\n type: buildPaginatedListType(pluralName, collection.graphQL.type),\n args: {\n draft: { type: GraphQLBoolean },\n where: { type: collection.graphQL.whereInputType },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n limit: { type: GraphQLInt },\n page: { type: GraphQLInt },\n sort: { type: GraphQLString },\n },\n resolve: findResolver(collection),\n }\n\n graphqlResult.Query.fields[`docAccess${singularName}`] = {\n type: buildPolicyType({\n type: 'collection',\n entity: collectionConfig,\n scope: 'docAccess',\n typeSuffix: 'DocAccess',\n }),\n args: {\n id: { type: new GraphQLNonNull(idType) },\n },\n resolve: docAccessResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`create${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n ...(createMutationInputType\n ? { data: { type: collection.graphQL.mutationInputType } }\n : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: createResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`update${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n autosave: { type: GraphQLBoolean },\n ...(updateMutationInputType\n ? { data: { type: collection.graphQL.updateMutationInputType } }\n : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: updateResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`delete${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n },\n resolve: getDeleteResolver(collection),\n }\n\n if (collectionConfig.disableDuplicate !== true) {\n graphqlResult.Mutation.fields[`duplicate${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n },\n resolve: duplicateResolver(collection),\n }\n }\n\n if (collectionConfig.versions) {\n const versionIDType = config.db.defaultIDType === 'text' ? GraphQLString : GraphQLInt\n const versionCollectionFields: Field[] = [\n ...buildVersionCollectionFields(collectionConfig),\n {\n name: 'id',\n type: config.db.defaultIDType as 'text',\n },\n {\n name: 'createdAt',\n type: 'date',\n label: 'Created At',\n },\n {\n name: 'updatedAt',\n type: 'date',\n label: 'Updated At',\n },\n ]\n\n collection.graphQL.versionType = buildObjectType({\n name: `${singularName}Version`,\n config,\n fields: versionCollectionFields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: `${singularName}Version`,\n })\n\n graphqlResult.Query.fields[`version${formatName(singularName)}`] = {\n type: collection.graphQL.versionType,\n args: {\n id: { type: versionIDType },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findVersionByIDResolver(collection),\n }\n graphqlResult.Query.fields[`versions${pluralName}`] = {\n type: buildPaginatedListType(\n `versions${formatName(pluralName)}`,\n collection.graphQL.versionType,\n ),\n args: {\n where: {\n type: buildWhereInputType({\n name: `versions${singularName}`,\n fields: versionCollectionFields,\n parentName: `versions${singularName}`,\n }),\n },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n limit: { type: GraphQLInt },\n page: { type: GraphQLInt },\n sort: { type: GraphQLString },\n },\n resolve: findVersionsResolver(collection),\n }\n graphqlResult.Mutation.fields[`restoreVersion${formatName(singularName)}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: versionIDType },\n },\n resolve: restoreVersionResolver(collection),\n }\n }\n\n if (collectionConfig.auth) {\n const authFields: Field[] = collectionConfig.auth.disableLocalStrategy\n ? []\n : [\n {\n name: 'email',\n type: 'email',\n required: true,\n },\n ]\n collection.graphQL.JWT = buildObjectType({\n name: formatName(`${slug}JWT`),\n config,\n fields: [\n ...collectionConfig.fields.filter((field) => fieldAffectsData(field) && field.saveToJWT),\n ...authFields,\n {\n name: 'collection',\n type: 'text',\n required: true,\n },\n ],\n graphqlResult,\n parentName: formatName(`${slug}JWT`),\n })\n\n graphqlResult.Query.fields[`me${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}Me`),\n fields: {\n collection: {\n type: GraphQLString,\n },\n exp: {\n type: GraphQLInt,\n },\n token: {\n type: GraphQLString,\n },\n user: {\n type: collection.graphQL.type,\n },\n },\n }),\n resolve: me(collection),\n }\n\n graphqlResult.Query.fields[`initialized${singularName}`] = {\n type: GraphQLBoolean,\n resolve: init(collection.config.slug),\n }\n\n graphqlResult.Mutation.fields[`refreshToken${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}Refreshed${singularName}`),\n fields: {\n exp: {\n type: GraphQLInt,\n },\n refreshedToken: {\n type: GraphQLString,\n },\n user: {\n type: collection.graphQL.JWT,\n },\n },\n }),\n args: {\n token: { type: GraphQLString },\n },\n resolve: refresh(collection),\n }\n\n graphqlResult.Mutation.fields[`logout${singularName}`] = {\n type: GraphQLString,\n resolve: logout(collection),\n }\n\n if (!collectionConfig.auth.disableLocalStrategy) {\n if (collectionConfig.auth.maxLoginAttempts > 0) {\n graphqlResult.Mutation.fields[`unlock${singularName}`] = {\n type: new GraphQLNonNull(GraphQLBoolean),\n args: {\n email: { type: new GraphQLNonNull(GraphQLString) },\n },\n resolve: unlock(collection),\n }\n }\n\n graphqlResult.Mutation.fields[`login${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}LoginResult`),\n fields: {\n exp: {\n type: GraphQLInt,\n },\n token: {\n type: GraphQLString,\n },\n user: {\n type: collection.graphQL.type,\n },\n },\n }),\n args: {\n email: { type: GraphQLString },\n password: { type: GraphQLString },\n },\n resolve: login(collection),\n }\n\n graphqlResult.Mutation.fields[`forgotPassword${singularName}`] = {\n type: new GraphQLNonNull(GraphQLBoolean),\n args: {\n disableEmail: { type: GraphQLBoolean },\n email: { type: new GraphQLNonNull(GraphQLString) },\n expiration: { type: GraphQLInt },\n },\n resolve: forgotPassword(collection),\n }\n\n graphqlResult.Mutation.fields[`resetPassword${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}ResetPassword`),\n fields: {\n token: { type: GraphQLString },\n user: { type: collection.graphQL.type },\n },\n }),\n args: {\n password: { type: GraphQLString },\n token: { type: GraphQLString },\n },\n resolve: resetPassword(collection),\n }\n\n graphqlResult.Mutation.fields[`verifyEmail${singularName}`] = {\n type: GraphQLBoolean,\n args: {\n token: { type: GraphQLString },\n },\n resolve: verifyEmail(collection),\n }\n }\n }\n })\n}\n\nexport default initCollectionsGraphQL\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLObjectType","GraphQLString","fieldAffectsData","flattenTopLevelFields","formatNames","toWords","buildVersionCollectionFields","forgotPassword","init","login","logout","me","refresh","resetPassword","unlock","verifyEmail","createResolver","getDeleteResolver","docAccessResolver","duplicateResolver","findResolver","findByIDResolver","findVersionByIDResolver","findVersionsResolver","restoreVersionResolver","updateResolver","formatName","buildMutationInputType","getCollectionIDType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initCollectionsGraphQL","config","graphqlResult","Object","keys","collections","forEach","slug","collection","collectionConfig","fields","graphQL","versions","singularName","pluralName","fromSlug","singular","plural","hasIDField","findIndex","field","name","idType","db","defaultIDType","baseFields","whereInputFields","id","type","push","forceNullableObjectType","Boolean","drafts","forceNullable","parentName","paginatedType","whereInputType","auth","disableLocalStrategy","label","required","createMutationInputType","mutationInputType","updateMutationInputType","filter","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","resolve","where","limit","page","sort","entity","scope","typeSuffix","Mutation","data","autosave","disableDuplicate","versionIDType","versionCollectionFields","versionType","authFields","JWT","saveToJWT","exp","token","user","refreshedToken","maxLoginAttempts","email","password","disableEmail","expiration"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,oCAAoC,GAIpC,SACEA,cAAc,EACdC,UAAU,EACVC,cAAc,EACdC,iBAAiB,EACjBC,aAAa,QACR,UAAS;AAChB,SAASC,gBAAgB,QAAQ,gBAAe;AAChD,SAASC,qBAAqB,EAAEC,WAAW,EAAEC,OAAO,QAAQ,oBAAmB;AAC/E,SAASC,4BAA4B,QAAQ,mBAAkB;AAI/D,OAAOC,oBAAoB,sCAAqC;AAChE,OAAOC,UAAU,4BAA2B;AAC5C,OAAOC,WAAW,6BAA4B;AAC9C,OAAOC,YAAY,8BAA6B;AAChD,OAAOC,QAAQ,0BAAyB;AACxC,OAAOC,aAAa,+BAA8B;AAClD,OAAOC,mBAAmB,qCAAoC;AAC9D,OAAOC,YAAY,8BAA6B;AAChD,OAAOC,iBAAiB,mCAAkC;AAC1D,OAAOC,oBAAoB,qCAAoC;AAC/D,OAAOC,uBAAuB,qCAAoC;AAClE,SAASC,iBAAiB,QAAQ,wCAAuC;AACzE,OAAOC,uBAAuB,wCAAuC;AACrE,OAAOC,kBAAkB,mCAAkC;AAC3D,OAAOC,sBAAsB,uCAAsC;AACnE,OAAOC,6BAA6B,8CAA6C;AACjF,OAAOC,0BAA0B,2CAA0C;AAC3E,OAAOC,4BAA4B,6CAA4C;AAC/E,OAAOC,oBAAoB,qCAAoC;AAC/D,OAAOC,gBAAgB,6BAA4B;AACnD,SAASC,sBAAsB,EAAEC,mBAAmB,QAAQ,8BAA6B;AACzF,OAAOC,qBAAqB,uBAAsB;AAClD,OAAOC,4BAA4B,8BAA6B;AAChE,SAASC,eAAe,QAAQ,yBAAwB;AACxD,OAAOC,yBAAyB,2BAA0B;AAM1D,SAASC,uBAAuB,EAAEC,MAAM,EAAEC,aAAa,EAA8B;IACnFC,OAAOC,IAAI,CAACF,cAAcG,WAAW,EAAEC,OAAO,CAAC,CAACC;QAC9C,MAAMC,aAAyBN,cAAcG,WAAW,CAACE,KAAK;QAC9D,MAAM,EACJN,QAAQQ,gBAAgB,EACxBR,QAAQ,EAAES,MAAM,EAAEC,UAAU,CAAC,CAAyC,EAAEC,QAAQ,EAAE,EACnF,GAAGJ;QAEJ,IAAI,CAACG,SAAS;QAEd,IAAIE;QACJ,IAAIC;QACJ,MAAMC,WAAW5C,YAAYqC,WAAWP,MAAM,CAACM,IAAI;QACnD,IAAII,QAAQE,YAAY,EAAE;YACxBA,eAAezC,QAAQuC,QAAQE,YAAY,EAAE;QAC/C,OAAO;YACLA,eAAeE,SAASC,QAAQ;QAClC;QACA,IAAIL,QAAQG,UAAU,EAAE;YACtBA,aAAa1C,QAAQuC,QAAQG,UAAU,EAAE;QAC3C,OAAO;YACLA,aAAaC,SAASE,MAAM;QAC9B;QAEA,4CAA4C;QAC5C,gDAAgD;QAChD,4DAA4D;QAC5D,yBAAyB;QACzB,IAAIJ,iBAAiBC,YAAY;YAC/BA,aAAa,CAAC,GAAG,EAAED,aAAa,CAAC;QACnC;QAEAL,WAAWG,OAAO,GAAG,CAAC;QAEtB,MAAMO,aACJhD,sBAAsBwC,QAAQS,SAAS,CACrC,CAACC,QAAUnD,iBAAiBmD,UAAUA,MAAMC,IAAI,KAAK,QACnD,CAAC;QAEP,MAAMC,SAAS3B,oBAAoBM,OAAOsB,EAAE,CAACC,aAAa,EAAEf;QAE5D,MAAMgB,aAA+B,CAAC;QAEtC,MAAMC,mBAAmB;eAAIhB;SAAO;QAEpC,IAAI,CAACQ,YAAY;YACfO,WAAWE,EAAE,GAAG;gBAAEC,MAAMN;YAAO;YAC/BI,iBAAiBG,IAAI,CAAC;gBACpBR,MAAM;gBACNO,MAAM3B,OAAOsB,EAAE,CAACC,aAAa;YAC/B;QACF;QAEA,MAAMM,0BAA0BC,QAAQnB,UAAUoB;QAElDxB,WAAWG,OAAO,CAACiB,IAAI,GAAGhC,gBAAgB;YACxCyB,MAAMR;YACNY;YACAxB;YACAS;YACAuB,eAAeH;YACf5B;YACAgC,YAAYrB;QACd;QAEAL,WAAWG,OAAO,CAACwB,aAAa,GAAGtC,uBAAuBiB,YAAYN,WAAWG,OAAO,CAACiB,IAAI;QAE7FpB,WAAWG,OAAO,CAACyB,cAAc,GAAGrC,oBAAoB;YACtDsB,MAAMR;YACNH,QAAQgB;YACRQ,YAAYrB;QACd;QAEA,IAAIJ,iBAAiB4B,IAAI,IAAI,CAAC5B,iBAAiB4B,IAAI,CAACC,oBAAoB,EAAE;YACxE5B,OAAOmB,IAAI,CAAC;gBACVR,MAAM;gBACNO,MAAM;gBACNW,OAAO;gBACPC,UAAU;YACZ;QACF;QAEA,MAAMC,0BAA0B/C,uBAAuB;YACrD2B,MAAMR;YACNZ;YACAS;YACAR;YACAgC,YAAYrB;QACd;QACA,IAAI4B,yBAAyB;YAC3BjC,WAAWG,OAAO,CAAC+B,iBAAiB,GAAG,IAAI5E,eAAe2E;QAC5D;QAEA,MAAME,0BAA0BjD,uBAAuB;YACrD2B,MAAM,CAAC,EAAER,aAAa,MAAM,CAAC;YAC7BZ;YACAS,QAAQA,OAAOkC,MAAM,CAAC,CAACxB,QAAU,CAAEnD,CAAAA,iBAAiBmD,UAAUA,MAAMC,IAAI,KAAK,IAAG;YAChFY,eAAe;YACf/B;YACAgC,YAAY,CAAC,EAAErB,aAAa,MAAM,CAAC;QACrC;QACA,IAAI8B,yBAAyB;YAC3BnC,WAAWG,OAAO,CAACgC,uBAAuB,GAAG,IAAI7E,eAAe6E;QAClE;QAEAzC,cAAc2C,KAAK,CAACnC,MAAM,CAACG,aAAa,GAAG;YACzCe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;YAC7BkB,MAAM;gBACJnB,IAAI;oBAAEC,MAAM,IAAI9D,eAAewD;gBAAQ;gBACvCyB,OAAO;oBAAEnB,MAAMhE;gBAAe;gBAC9B,GAAIqC,OAAO+C,YAAY,GACnB;oBACEC,gBAAgB;wBAAErB,MAAM1B,cAAcgD,KAAK,CAACC,uBAAuB;oBAAC;oBACpEC,QAAQ;wBAAExB,MAAM1B,cAAcgD,KAAK,CAACG,eAAe;oBAAC;gBACtD,IACA,CAAC,CAAC;YACR;YACAC,SAASlE,iBAAiBoB;QAC5B;QAEAN,cAAc2C,KAAK,CAACnC,MAAM,CAACI,WAAW,GAAG;YACvCc,MAAM/B,uBAAuBiB,YAAYN,WAAWG,OAAO,CAACiB,IAAI;YAChEkB,MAAM;gBACJC,OAAO;oBAAEnB,MAAMhE;gBAAe;gBAC9B2F,OAAO;oBAAE3B,MAAMpB,WAAWG,OAAO,CAACyB,cAAc;gBAAC;gBACjD,GAAInC,OAAO+C,YAAY,GACnB;oBACEC,gBAAgB;wBAAErB,MAAM1B,cAAcgD,KAAK,CAACC,uBAAuB;oBAAC;oBACpEC,QAAQ;wBAAExB,MAAM1B,cAAcgD,KAAK,CAACG,eAAe;oBAAC;gBACtD,IACA,CAAC,CAAC;gBACNG,OAAO;oBAAE5B,MAAM/D;gBAAW;gBAC1B4F,MAAM;oBAAE7B,MAAM/D;gBAAW;gBACzB6F,MAAM;oBAAE9B,MAAM5D;gBAAc;YAC9B;YACAsF,SAASnE,aAAaqB;QACxB;QAEAN,cAAc2C,KAAK,CAACnC,MAAM,CAAC,CAAC,SAAS,EAAEG,aAAa,CAAC,CAAC,GAAG;YACvDe,MAAM9B,gBAAgB;gBACpB8B,MAAM;gBACN+B,QAAQlD;gBACRmD,OAAO;gBACPC,YAAY;YACd;YACAf,MAAM;gBACJnB,IAAI;oBAAEC,MAAM,IAAI9D,eAAewD;gBAAQ;YACzC;YACAgC,SAASrE,kBAAkBuB;QAC7B;QAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,MAAM,EAAEG,aAAa,CAAC,CAAC,GAAG;YACvDe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;YAC7BkB,MAAM;gBACJ,GAAIL,0BACA;oBAAEsB,MAAM;wBAAEnC,MAAMpB,WAAWG,OAAO,CAAC+B,iBAAiB;oBAAC;gBAAE,IACvD,CAAC,CAAC;gBACNK,OAAO;oBAAEnB,MAAMhE;gBAAe;gBAC9B,GAAIqC,OAAO+C,YAAY,GACnB;oBACEI,QAAQ;wBAAExB,MAAM1B,cAAcgD,KAAK,CAACG,eAAe;oBAAC;gBACtD,IACA,CAAC,CAAC;YACR;YACAC,SAASvE,eAAeyB;QAC1B;QAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,MAAM,EAAEG,aAAa,CAAC,CAAC,GAAG;YACvDe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;YAC7BkB,MAAM;gBACJnB,IAAI;oBAAEC,MAAM,IAAI9D,eAAewD;gBAAQ;gBACvC0C,UAAU;oBAAEpC,MAAMhE;gBAAe;gBACjC,GAAI+E,0BACA;oBAAEoB,MAAM;wBAAEnC,MAAMpB,WAAWG,OAAO,CAACgC,uBAAuB;oBAAC;gBAAE,IAC7D,CAAC,CAAC;gBACNI,OAAO;oBAAEnB,MAAMhE;gBAAe;gBAC9B,GAAIqC,OAAO+C,YAAY,GACnB;oBACEI,QAAQ;wBAAExB,MAAM1B,cAAcgD,KAAK,CAACG,eAAe;oBAAC;gBACtD,IACA,CAAC,CAAC;YACR;YACAC,SAAS9D,eAAegB;QAC1B;QAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,MAAM,EAAEG,aAAa,CAAC,CAAC,GAAG;YACvDe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;YAC7BkB,MAAM;gBACJnB,IAAI;oBAAEC,MAAM,IAAI9D,eAAewD;gBAAQ;YACzC;YACAgC,SAAStE,kBAAkBwB;QAC7B;QAEA,IAAIC,iBAAiBwD,gBAAgB,KAAK,MAAM;YAC9C/D,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,SAAS,EAAEG,aAAa,CAAC,CAAC,GAAG;gBAC1De,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BkB,MAAM;oBACJnB,IAAI;wBAAEC,MAAM,IAAI9D,eAAewD;oBAAQ;gBACzC;gBACAgC,SAASpE,kBAAkBsB;YAC7B;QACF;QAEA,IAAIC,iBAAiBG,QAAQ,EAAE;YAC7B,MAAMsD,gBAAgBjE,OAAOsB,EAAE,CAACC,aAAa,KAAK,SAASxD,gBAAgBH;YAC3E,MAAMsG,0BAAmC;mBACpC9F,6BAA6BoC;gBAChC;oBACEY,MAAM;oBACNO,MAAM3B,OAAOsB,EAAE,CAACC,aAAa;gBAC/B;gBACA;oBACEH,MAAM;oBACNO,MAAM;oBACNW,OAAO;gBACT;gBACA;oBACElB,MAAM;oBACNO,MAAM;oBACNW,OAAO;gBACT;aACD;YAED/B,WAAWG,OAAO,CAACyD,WAAW,GAAGxE,gBAAgB;gBAC/CyB,MAAM,CAAC,EAAER,aAAa,OAAO,CAAC;gBAC9BZ;gBACAS,QAAQyD;gBACRlC,eAAeH;gBACf5B;gBACAgC,YAAY,CAAC,EAAErB,aAAa,OAAO,CAAC;YACtC;YAEAX,cAAc2C,KAAK,CAACnC,MAAM,CAAC,CAAC,OAAO,EAAEjB,WAAWoB,cAAc,CAAC,CAAC,GAAG;gBACjEe,MAAMpB,WAAWG,OAAO,CAACyD,WAAW;gBACpCtB,MAAM;oBACJnB,IAAI;wBAAEC,MAAMsC;oBAAc;oBAC1B,GAAIjE,OAAO+C,YAAY,GACnB;wBACEC,gBAAgB;4BAAErB,MAAM1B,cAAcgD,KAAK,CAACC,uBAAuB;wBAAC;wBACpEC,QAAQ;4BAAExB,MAAM1B,cAAcgD,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;gBACR;gBACAC,SAASjE,wBAAwBmB;YACnC;YACAN,cAAc2C,KAAK,CAACnC,MAAM,CAAC,CAAC,QAAQ,EAAEI,WAAW,CAAC,CAAC,GAAG;gBACpDc,MAAM/B,uBACJ,CAAC,QAAQ,EAAEJ,WAAWqB,YAAY,CAAC,EACnCN,WAAWG,OAAO,CAACyD,WAAW;gBAEhCtB,MAAM;oBACJS,OAAO;wBACL3B,MAAM7B,oBAAoB;4BACxBsB,MAAM,CAAC,QAAQ,EAAER,aAAa,CAAC;4BAC/BH,QAAQyD;4BACRjC,YAAY,CAAC,QAAQ,EAAErB,aAAa,CAAC;wBACvC;oBACF;oBACA,GAAIZ,OAAO+C,YAAY,GACnB;wBACEC,gBAAgB;4BAAErB,MAAM1B,cAAcgD,KAAK,CAACC,uBAAuB;wBAAC;wBACpEC,QAAQ;4BAAExB,MAAM1B,cAAcgD,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;oBACNG,OAAO;wBAAE5B,MAAM/D;oBAAW;oBAC1B4F,MAAM;wBAAE7B,MAAM/D;oBAAW;oBACzB6F,MAAM;wBAAE9B,MAAM5D;oBAAc;gBAC9B;gBACAsF,SAAShE,qBAAqBkB;YAChC;YACAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,cAAc,EAAEjB,WAAWoB,cAAc,CAAC,CAAC,GAAG;gBAC3Ee,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BkB,MAAM;oBACJnB,IAAI;wBAAEC,MAAMsC;oBAAc;gBAC5B;gBACAZ,SAAS/D,uBAAuBiB;YAClC;QACF;QAEA,IAAIC,iBAAiB4B,IAAI,EAAE;YACzB,MAAMgC,aAAsB5D,iBAAiB4B,IAAI,CAACC,oBAAoB,GAClE,EAAE,GACF;gBACE;oBACEjB,MAAM;oBACNO,MAAM;oBACNY,UAAU;gBACZ;aACD;YACLhC,WAAWG,OAAO,CAAC2D,GAAG,GAAG1E,gBAAgB;gBACvCyB,MAAM5B,WAAW,CAAC,EAAEc,KAAK,GAAG,CAAC;gBAC7BN;gBACAS,QAAQ;uBACHD,iBAAiBC,MAAM,CAACkC,MAAM,CAAC,CAACxB,QAAUnD,iBAAiBmD,UAAUA,MAAMmD,SAAS;uBACpFF;oBACH;wBACEhD,MAAM;wBACNO,MAAM;wBACNY,UAAU;oBACZ;iBACD;gBACDtC;gBACAgC,YAAYzC,WAAW,CAAC,EAAEc,KAAK,GAAG,CAAC;YACrC;YAEAL,cAAc2C,KAAK,CAACnC,MAAM,CAAC,CAAC,EAAE,EAAEG,aAAa,CAAC,CAAC,GAAG;gBAChDe,MAAM,IAAI7D,kBAAkB;oBAC1BsD,MAAM5B,WAAW,CAAC,EAAEc,KAAK,EAAE,CAAC;oBAC5BG,QAAQ;wBACNF,YAAY;4BACVoB,MAAM5D;wBACR;wBACAwG,KAAK;4BACH5C,MAAM/D;wBACR;wBACA4G,OAAO;4BACL7C,MAAM5D;wBACR;wBACA0G,MAAM;4BACJ9C,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;wBAC/B;oBACF;gBACF;gBACA0B,SAAS5E,GAAG8B;YACd;YAEAN,cAAc2C,KAAK,CAACnC,MAAM,CAAC,CAAC,WAAW,EAAEG,aAAa,CAAC,CAAC,GAAG;gBACzDe,MAAMhE;gBACN0F,SAAS/E,KAAKiC,WAAWP,MAAM,CAACM,IAAI;YACtC;YAEAL,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,YAAY,EAAEG,aAAa,CAAC,CAAC,GAAG;gBAC7De,MAAM,IAAI7D,kBAAkB;oBAC1BsD,MAAM5B,WAAW,CAAC,EAAEc,KAAK,SAAS,EAAEM,aAAa,CAAC;oBAClDH,QAAQ;wBACN8D,KAAK;4BACH5C,MAAM/D;wBACR;wBACA8G,gBAAgB;4BACd/C,MAAM5D;wBACR;wBACA0G,MAAM;4BACJ9C,MAAMpB,WAAWG,OAAO,CAAC2D,GAAG;wBAC9B;oBACF;gBACF;gBACAxB,MAAM;oBACJ2B,OAAO;wBAAE7C,MAAM5D;oBAAc;gBAC/B;gBACAsF,SAAS3E,QAAQ6B;YACnB;YAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,MAAM,EAAEG,aAAa,CAAC,CAAC,GAAG;gBACvDe,MAAM5D;gBACNsF,SAAS7E,OAAO+B;YAClB;YAEA,IAAI,CAACC,iBAAiB4B,IAAI,CAACC,oBAAoB,EAAE;gBAC/C,IAAI7B,iBAAiB4B,IAAI,CAACuC,gBAAgB,GAAG,GAAG;oBAC9C1E,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,MAAM,EAAEG,aAAa,CAAC,CAAC,GAAG;wBACvDe,MAAM,IAAI9D,eAAeF;wBACzBkF,MAAM;4BACJ+B,OAAO;gCAAEjD,MAAM,IAAI9D,eAAeE;4BAAe;wBACnD;wBACAsF,SAASzE,OAAO2B;oBAClB;gBACF;gBAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,KAAK,EAAEG,aAAa,CAAC,CAAC,GAAG;oBACtDe,MAAM,IAAI7D,kBAAkB;wBAC1BsD,MAAM5B,WAAW,CAAC,EAAEc,KAAK,WAAW,CAAC;wBACrCG,QAAQ;4BACN8D,KAAK;gCACH5C,MAAM/D;4BACR;4BACA4G,OAAO;gCACL7C,MAAM5D;4BACR;4BACA0G,MAAM;gCACJ9C,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;4BAC/B;wBACF;oBACF;oBACAkB,MAAM;wBACJ+B,OAAO;4BAAEjD,MAAM5D;wBAAc;wBAC7B8G,UAAU;4BAAElD,MAAM5D;wBAAc;oBAClC;oBACAsF,SAAS9E,MAAMgC;gBACjB;gBAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,cAAc,EAAEG,aAAa,CAAC,CAAC,GAAG;oBAC/De,MAAM,IAAI9D,eAAeF;oBACzBkF,MAAM;wBACJiC,cAAc;4BAAEnD,MAAMhE;wBAAe;wBACrCiH,OAAO;4BAAEjD,MAAM,IAAI9D,eAAeE;wBAAe;wBACjDgH,YAAY;4BAAEpD,MAAM/D;wBAAW;oBACjC;oBACAyF,SAAShF,eAAekC;gBAC1B;gBAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,aAAa,EAAEG,aAAa,CAAC,CAAC,GAAG;oBAC9De,MAAM,IAAI7D,kBAAkB;wBAC1BsD,MAAM5B,WAAW,CAAC,EAAEc,KAAK,aAAa,CAAC;wBACvCG,QAAQ;4BACN+D,OAAO;gCAAE7C,MAAM5D;4BAAc;4BAC7B0G,MAAM;gCAAE9C,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;4BAAC;wBACxC;oBACF;oBACAkB,MAAM;wBACJgC,UAAU;4BAAElD,MAAM5D;wBAAc;wBAChCyG,OAAO;4BAAE7C,MAAM5D;wBAAc;oBAC/B;oBACAsF,SAAS1E,cAAc4B;gBACzB;gBAEAN,cAAc4D,QAAQ,CAACpD,MAAM,CAAC,CAAC,WAAW,EAAEG,aAAa,CAAC,CAAC,GAAG;oBAC5De,MAAMhE;oBACNkF,MAAM;wBACJ2B,OAAO;4BAAE7C,MAAM5D;wBAAc;oBAC/B;oBACAsF,SAASxE,YAAY0B;gBACvB;YACF;QACF;IACF;AACF;AAEA,eAAeR,uBAAsB"}
1
+ {"version":3,"sources":["../../src/schema/initCollections.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport type { GraphQLInfo } from 'payload'\nimport type { Collection, Field, SanitizedCollectionConfig, SanitizedConfig } from 'payload'\n\nimport {\n GraphQLBoolean,\n GraphQLInt,\n GraphQLNonNull,\n GraphQLObjectType,\n GraphQLString,\n} from 'graphql'\nimport { buildVersionCollectionFields, flattenTopLevelFields, formatNames, toWords } from 'payload'\nimport { fieldAffectsData } from 'payload/shared'\n\nimport type { ObjectTypeConfig } from './buildObjectType.js'\n\nimport forgotPassword from '../resolvers/auth/forgotPassword.js'\nimport init from '../resolvers/auth/init.js'\nimport login from '../resolvers/auth/login.js'\nimport logout from '../resolvers/auth/logout.js'\nimport me from '../resolvers/auth/me.js'\nimport refresh from '../resolvers/auth/refresh.js'\nimport resetPassword from '../resolvers/auth/resetPassword.js'\nimport unlock from '../resolvers/auth/unlock.js'\nimport verifyEmail from '../resolvers/auth/verifyEmail.js'\nimport { countResolver } from '../resolvers/collections/count.js'\nimport createResolver from '../resolvers/collections/create.js'\nimport { getDeleteResolver } from '../resolvers/collections/delete.js'\nimport { docAccessResolver } from '../resolvers/collections/docAccess.js'\nimport duplicateResolver from '../resolvers/collections/duplicate.js'\nimport { findResolver } from '../resolvers/collections/find.js'\nimport { findByIDResolver } from '../resolvers/collections/findByID.js'\nimport { findVersionByIDResolver } from '../resolvers/collections/findVersionByID.js'\nimport { findVersionsResolver } from '../resolvers/collections/findVersions.js'\nimport restoreVersionResolver from '../resolvers/collections/restoreVersion.js'\nimport { updateResolver } from '../resolvers/collections/update.js'\nimport formatName from '../utilities/formatName.js'\nimport { buildMutationInputType, getCollectionIDType } from './buildMutationInputType.js'\nimport { buildObjectType } from './buildObjectType.js'\nimport buildPaginatedListType from './buildPaginatedListType.js'\nimport { buildPolicyType } from './buildPoliciesType.js'\nimport buildWhereInputType from './buildWhereInputType.js'\n\ntype InitCollectionsGraphQLArgs = {\n config: SanitizedConfig\n graphqlResult: GraphQLInfo\n}\nfunction initCollectionsGraphQL({ config, graphqlResult }: InitCollectionsGraphQLArgs): void {\n Object.keys(graphqlResult.collections).forEach((slug) => {\n const collection: Collection = graphqlResult.collections[slug]\n const {\n config: collectionConfig,\n config: { fields, graphQL = {} as SanitizedCollectionConfig['graphQL'], versions },\n } = collection\n\n if (!graphQL) return\n\n let singularName\n let pluralName\n const fromSlug = formatNames(collection.config.slug)\n if (graphQL.singularName) {\n singularName = toWords(graphQL.singularName, true)\n } else {\n singularName = fromSlug.singular\n }\n if (graphQL.pluralName) {\n pluralName = toWords(graphQL.pluralName, true)\n } else {\n pluralName = fromSlug.plural\n }\n\n // For collections named 'Media' or similar,\n // there is a possibility that the singular name\n // will equal the plural name. Append `all` to the beginning\n // of potential conflicts\n if (singularName === pluralName) {\n pluralName = `all${singularName}`\n }\n\n collection.graphQL = {} as Collection['graphQL']\n\n const hasIDField =\n flattenTopLevelFields(fields).findIndex(\n (field) => fieldAffectsData(field) && field.name === 'id',\n ) > -1\n\n const idType = getCollectionIDType(config.db.defaultIDType, collectionConfig)\n\n const baseFields: ObjectTypeConfig = {}\n\n const whereInputFields = [...fields]\n\n if (!hasIDField) {\n baseFields.id = { type: idType }\n whereInputFields.push({\n name: 'id',\n type: config.db.defaultIDType as 'text',\n })\n }\n\n const forceNullableObjectType = Boolean(versions?.drafts)\n\n collection.graphQL.type = buildObjectType({\n name: singularName,\n baseFields,\n config,\n fields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: singularName,\n })\n\n collection.graphQL.paginatedType = buildPaginatedListType(pluralName, collection.graphQL.type)\n\n collection.graphQL.whereInputType = buildWhereInputType({\n name: singularName,\n fields: whereInputFields,\n parentName: singularName,\n })\n\n if (collectionConfig.auth && !collectionConfig.auth.disableLocalStrategy) {\n fields.push({\n name: 'password',\n type: 'text',\n label: 'Password',\n required: true,\n })\n }\n\n const createMutationInputType = buildMutationInputType({\n name: singularName,\n config,\n fields,\n graphqlResult,\n parentName: singularName,\n })\n if (createMutationInputType) {\n collection.graphQL.mutationInputType = new GraphQLNonNull(createMutationInputType)\n }\n\n const updateMutationInputType = buildMutationInputType({\n name: `${singularName}Update`,\n config,\n fields: fields.filter((field) => !(fieldAffectsData(field) && field.name === 'id')),\n forceNullable: true,\n graphqlResult,\n parentName: `${singularName}Update`,\n })\n if (updateMutationInputType) {\n collection.graphQL.updateMutationInputType = new GraphQLNonNull(updateMutationInputType)\n }\n\n graphqlResult.Query.fields[singularName] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findByIDResolver(collection),\n }\n\n graphqlResult.Query.fields[pluralName] = {\n type: buildPaginatedListType(pluralName, collection.graphQL.type),\n args: {\n draft: { type: GraphQLBoolean },\n where: { type: collection.graphQL.whereInputType },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n limit: { type: GraphQLInt },\n page: { type: GraphQLInt },\n sort: { type: GraphQLString },\n },\n resolve: findResolver(collection),\n }\n\n graphqlResult.Query.fields[`count${pluralName}`] = {\n type: new GraphQLObjectType({\n name: `count${pluralName}`,\n fields: {\n totalDocs: { type: GraphQLInt },\n },\n }),\n args: {\n draft: { type: GraphQLBoolean },\n where: { type: collection.graphQL.whereInputType },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: countResolver(collection),\n }\n\n graphqlResult.Query.fields[`docAccess${singularName}`] = {\n type: buildPolicyType({\n type: 'collection',\n entity: collectionConfig,\n scope: 'docAccess',\n typeSuffix: 'DocAccess',\n }),\n args: {\n id: { type: new GraphQLNonNull(idType) },\n },\n resolve: docAccessResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`create${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n ...(createMutationInputType\n ? { data: { type: collection.graphQL.mutationInputType } }\n : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: createResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`update${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n autosave: { type: GraphQLBoolean },\n ...(updateMutationInputType\n ? { data: { type: collection.graphQL.updateMutationInputType } }\n : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: updateResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`delete${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n },\n resolve: getDeleteResolver(collection),\n }\n\n if (collectionConfig.disableDuplicate !== true) {\n graphqlResult.Mutation.fields[`duplicate${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n },\n resolve: duplicateResolver(collection),\n }\n }\n\n if (collectionConfig.versions) {\n const versionIDType = config.db.defaultIDType === 'text' ? GraphQLString : GraphQLInt\n const versionCollectionFields: Field[] = [\n ...buildVersionCollectionFields(collectionConfig),\n {\n name: 'id',\n type: config.db.defaultIDType as 'text',\n },\n {\n name: 'createdAt',\n type: 'date',\n label: 'Created At',\n },\n {\n name: 'updatedAt',\n type: 'date',\n label: 'Updated At',\n },\n ]\n\n collection.graphQL.versionType = buildObjectType({\n name: `${singularName}Version`,\n config,\n fields: versionCollectionFields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: `${singularName}Version`,\n })\n\n graphqlResult.Query.fields[`version${formatName(singularName)}`] = {\n type: collection.graphQL.versionType,\n args: {\n id: { type: versionIDType },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findVersionByIDResolver(collection),\n }\n graphqlResult.Query.fields[`versions${pluralName}`] = {\n type: buildPaginatedListType(\n `versions${formatName(pluralName)}`,\n collection.graphQL.versionType,\n ),\n args: {\n where: {\n type: buildWhereInputType({\n name: `versions${singularName}`,\n fields: versionCollectionFields,\n parentName: `versions${singularName}`,\n }),\n },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n limit: { type: GraphQLInt },\n page: { type: GraphQLInt },\n sort: { type: GraphQLString },\n },\n resolve: findVersionsResolver(collection),\n }\n graphqlResult.Mutation.fields[`restoreVersion${formatName(singularName)}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: versionIDType },\n },\n resolve: restoreVersionResolver(collection),\n }\n }\n\n if (collectionConfig.auth) {\n const authFields: Field[] = collectionConfig.auth.disableLocalStrategy\n ? []\n : [\n {\n name: 'email',\n type: 'email',\n required: true,\n },\n ]\n collection.graphQL.JWT = buildObjectType({\n name: formatName(`${slug}JWT`),\n config,\n fields: [\n ...collectionConfig.fields.filter((field) => fieldAffectsData(field) && field.saveToJWT),\n ...authFields,\n {\n name: 'collection',\n type: 'text',\n required: true,\n },\n ],\n graphqlResult,\n parentName: formatName(`${slug}JWT`),\n })\n\n graphqlResult.Query.fields[`me${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}Me`),\n fields: {\n collection: {\n type: GraphQLString,\n },\n exp: {\n type: GraphQLInt,\n },\n token: {\n type: GraphQLString,\n },\n user: {\n type: collection.graphQL.type,\n },\n },\n }),\n resolve: me(collection),\n }\n\n graphqlResult.Query.fields[`initialized${singularName}`] = {\n type: GraphQLBoolean,\n resolve: init(collection.config.slug),\n }\n\n graphqlResult.Mutation.fields[`refreshToken${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}Refreshed${singularName}`),\n fields: {\n exp: {\n type: GraphQLInt,\n },\n refreshedToken: {\n type: GraphQLString,\n },\n user: {\n type: collection.graphQL.JWT,\n },\n },\n }),\n args: {\n token: { type: GraphQLString },\n },\n resolve: refresh(collection),\n }\n\n graphqlResult.Mutation.fields[`logout${singularName}`] = {\n type: GraphQLString,\n resolve: logout(collection),\n }\n\n if (!collectionConfig.auth.disableLocalStrategy) {\n if (collectionConfig.auth.maxLoginAttempts > 0) {\n graphqlResult.Mutation.fields[`unlock${singularName}`] = {\n type: new GraphQLNonNull(GraphQLBoolean),\n args: {\n email: { type: new GraphQLNonNull(GraphQLString) },\n },\n resolve: unlock(collection),\n }\n }\n\n graphqlResult.Mutation.fields[`login${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}LoginResult`),\n fields: {\n exp: {\n type: GraphQLInt,\n },\n token: {\n type: GraphQLString,\n },\n user: {\n type: collection.graphQL.type,\n },\n },\n }),\n args: {\n email: { type: GraphQLString },\n password: { type: GraphQLString },\n },\n resolve: login(collection),\n }\n\n graphqlResult.Mutation.fields[`forgotPassword${singularName}`] = {\n type: new GraphQLNonNull(GraphQLBoolean),\n args: {\n disableEmail: { type: GraphQLBoolean },\n email: { type: new GraphQLNonNull(GraphQLString) },\n expiration: { type: GraphQLInt },\n },\n resolve: forgotPassword(collection),\n }\n\n graphqlResult.Mutation.fields[`resetPassword${singularName}`] = {\n type: new GraphQLObjectType({\n name: formatName(`${slug}ResetPassword`),\n fields: {\n token: { type: GraphQLString },\n user: { type: collection.graphQL.type },\n },\n }),\n args: {\n password: { type: GraphQLString },\n token: { type: GraphQLString },\n },\n resolve: resetPassword(collection),\n }\n\n graphqlResult.Mutation.fields[`verifyEmail${singularName}`] = {\n type: GraphQLBoolean,\n args: {\n token: { type: GraphQLString },\n },\n resolve: verifyEmail(collection),\n }\n }\n }\n })\n}\n\nexport default initCollectionsGraphQL\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLObjectType","GraphQLString","buildVersionCollectionFields","flattenTopLevelFields","formatNames","toWords","fieldAffectsData","forgotPassword","init","login","logout","me","refresh","resetPassword","unlock","verifyEmail","countResolver","createResolver","getDeleteResolver","docAccessResolver","duplicateResolver","findResolver","findByIDResolver","findVersionByIDResolver","findVersionsResolver","restoreVersionResolver","updateResolver","formatName","buildMutationInputType","getCollectionIDType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initCollectionsGraphQL","config","graphqlResult","Object","keys","collections","forEach","slug","collection","collectionConfig","fields","graphQL","versions","singularName","pluralName","fromSlug","singular","plural","hasIDField","findIndex","field","name","idType","db","defaultIDType","baseFields","whereInputFields","id","type","push","forceNullableObjectType","Boolean","drafts","forceNullable","parentName","paginatedType","whereInputType","auth","disableLocalStrategy","label","required","createMutationInputType","mutationInputType","updateMutationInputType","filter","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","resolve","where","limit","page","sort","totalDocs","entity","scope","typeSuffix","Mutation","data","autosave","disableDuplicate","versionIDType","versionCollectionFields","versionType","authFields","JWT","saveToJWT","exp","token","user","refreshedToken","maxLoginAttempts","email","password","disableEmail","expiration"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,5 +1,4 @@
1
- import type { GraphQLInfo } from 'payload/config';
2
- import type { SanitizedConfig } from 'payload/types';
1
+ import type { GraphQLInfo, SanitizedConfig } from 'payload';
3
2
  type InitGlobalsGraphQLArgs = {
4
3
  config: SanitizedConfig;
5
4
  graphqlResult: GraphQLInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"initGlobals.d.ts","sourceRoot":"","sources":["../../src/schema/initGlobals.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAK,EAAS,eAAe,EAAyB,MAAM,eAAe,CAAA;AAkBlF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,WAAW,CAAA;CAC3B,CAAA;AACD,iBAAS,kBAAkB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,sBAAsB,GAAG,IAAI,CAyJnF;AAED,eAAe,kBAAkB,CAAA"}
1
+ {"version":3,"file":"initGlobals.d.ts","sourceRoot":"","sources":["../../src/schema/initGlobals.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAS,WAAW,EAAE,eAAe,EAAyB,MAAM,SAAS,CAAA;AAiBzF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,WAAW,CAAA;CAC3B,CAAA;AACD,iBAAS,kBAAkB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,sBAAsB,GAAG,IAAI,CAyJnF;AAED,eAAe,kBAAkB,CAAA"}
@@ -1,8 +1,7 @@
1
1
  /* eslint-disable no-param-reassign */ import { GraphQLBoolean, GraphQLInt, GraphQLNonNull, GraphQLString } from 'graphql';
2
2
  import pluralize from 'pluralize';
3
3
  const { singular } = pluralize;
4
- import { toWords } from 'payload/utilities';
5
- import { buildVersionGlobalFields } from 'payload/versions';
4
+ import { buildVersionGlobalFields, toWords } from 'payload';
6
5
  import { docAccessResolver } from '../resolvers/globals/docAccess.js';
7
6
  import findOneResolver from '../resolvers/globals/findOne.js';
8
7
  import findVersionByIDResolver from '../resolvers/globals/findVersionByID.js';
@@ -11,7 +10,7 @@ import restoreVersionResolver from '../resolvers/globals/restoreVersion.js';
11
10
  import updateResolver from '../resolvers/globals/update.js';
12
11
  import formatName from '../utilities/formatName.js';
13
12
  import { buildMutationInputType } from './buildMutationInputType.js';
14
- import buildObjectType from './buildObjectType.js';
13
+ import { buildObjectType } from './buildObjectType.js';
15
14
  import buildPaginatedListType from './buildPaginatedListType.js';
16
15
  import { buildPolicyType } from './buildPoliciesType.js';
17
16
  import buildWhereInputType from './buildWhereInputType.js';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/initGlobals.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport { GraphQLBoolean, GraphQLInt, GraphQLNonNull, GraphQLString } from 'graphql'\nimport pluralize from 'pluralize'\nconst { singular } = pluralize\n\nimport type { GraphQLInfo } from 'payload/config'\nimport type { Field, SanitizedConfig, SanitizedGlobalConfig } from 'payload/types'\n\nimport { toWords } from 'payload/utilities'\nimport { buildVersionGlobalFields } from 'payload/versions'\n\nimport { docAccessResolver } from '../resolvers/globals/docAccess.js'\nimport findOneResolver from '../resolvers/globals/findOne.js'\nimport findVersionByIDResolver from '../resolvers/globals/findVersionByID.js'\nimport findVersionsResolver from '../resolvers/globals/findVersions.js'\nimport restoreVersionResolver from '../resolvers/globals/restoreVersion.js'\nimport updateResolver from '../resolvers/globals/update.js'\nimport formatName from '../utilities/formatName.js'\nimport { buildMutationInputType } from './buildMutationInputType.js'\nimport buildObjectType from './buildObjectType.js'\nimport buildPaginatedListType from './buildPaginatedListType.js'\nimport { buildPolicyType } from './buildPoliciesType.js'\nimport buildWhereInputType from './buildWhereInputType.js'\n\ntype InitGlobalsGraphQLArgs = {\n config: SanitizedConfig\n graphqlResult: GraphQLInfo\n}\nfunction initGlobalsGraphQL({ config, graphqlResult }: InitGlobalsGraphQLArgs): void {\n Object.keys(graphqlResult.globals.config).forEach((slug) => {\n const global: SanitizedGlobalConfig = graphqlResult.globals.config[slug]\n const { fields, graphQL, versions } = global\n\n if (graphQL === false) {\n return\n }\n\n const formattedName = graphQL?.name ? graphQL.name : singular(toWords(global.slug, true))\n\n const forceNullableObjectType = Boolean(versions?.drafts)\n\n if (!graphqlResult.globals.graphQL) graphqlResult.globals.graphQL = {}\n\n const updateMutationInputType = buildMutationInputType({\n name: formattedName,\n config,\n fields,\n graphqlResult,\n parentName: formattedName,\n })\n graphqlResult.globals.graphQL[slug] = {\n type: buildObjectType({\n name: formattedName,\n config,\n fields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: formattedName,\n }),\n mutationInputType: updateMutationInputType\n ? new GraphQLNonNull(updateMutationInputType)\n : null,\n }\n\n graphqlResult.Query.fields[formattedName] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findOneResolver(global),\n }\n\n graphqlResult.Mutation.fields[`update${formattedName}`] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n ...(updateMutationInputType\n ? { data: { type: graphqlResult.globals.graphQL[slug].mutationInputType } }\n : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: updateResolver(global),\n }\n\n graphqlResult.Query.fields[`docAccess${formattedName}`] = {\n type: buildPolicyType({\n type: 'global',\n entity: global,\n scope: 'docAccess',\n typeSuffix: 'DocAccess',\n }),\n resolve: docAccessResolver(global),\n }\n\n if (global.versions) {\n const idType = config.db.defaultIDType === 'number' ? GraphQLInt : GraphQLString\n\n const versionGlobalFields: Field[] = [\n ...buildVersionGlobalFields(global),\n {\n name: 'id',\n type: config.db.defaultIDType as 'text',\n },\n {\n name: 'createdAt',\n type: 'date',\n label: 'Created At',\n },\n {\n name: 'updatedAt',\n type: 'date',\n label: 'Updated At',\n },\n ]\n\n graphqlResult.globals.graphQL[slug].versionType = buildObjectType({\n name: `${formattedName}Version`,\n config,\n fields: versionGlobalFields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: `${formattedName}Version`,\n })\n\n graphqlResult.Query.fields[`version${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].versionType,\n args: {\n id: { type: idType },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findVersionByIDResolver(global),\n }\n graphqlResult.Query.fields[`versions${formattedName}`] = {\n type: buildPaginatedListType(\n `versions${formatName(formattedName)}`,\n graphqlResult.globals.graphQL[slug].versionType,\n ),\n args: {\n where: {\n type: buildWhereInputType({\n name: `versions${formattedName}`,\n fields: versionGlobalFields,\n parentName: `versions${formattedName}`,\n }),\n },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n limit: { type: GraphQLInt },\n page: { type: GraphQLInt },\n sort: { type: GraphQLString },\n },\n resolve: findVersionsResolver(global),\n }\n graphqlResult.Mutation.fields[`restoreVersion${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n id: { type: idType },\n },\n resolve: restoreVersionResolver(global),\n }\n }\n })\n}\n\nexport default initGlobalsGraphQL\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLString","pluralize","singular","toWords","buildVersionGlobalFields","docAccessResolver","findOneResolver","findVersionByIDResolver","findVersionsResolver","restoreVersionResolver","updateResolver","formatName","buildMutationInputType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initGlobalsGraphQL","config","graphqlResult","Object","keys","globals","forEach","slug","global","fields","graphQL","versions","formattedName","name","forceNullableObjectType","Boolean","drafts","updateMutationInputType","parentName","type","forceNullable","mutationInputType","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","resolve","Mutation","data","entity","scope","typeSuffix","idType","db","defaultIDType","versionGlobalFields","label","versionType","id","where","limit","page","sort"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../src/schema/initGlobals.ts"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport { GraphQLBoolean, GraphQLInt, GraphQLNonNull, GraphQLString } from 'graphql'\nimport pluralize from 'pluralize'\nconst { singular } = pluralize\n\nimport type { Field, GraphQLInfo, SanitizedConfig, SanitizedGlobalConfig } from 'payload'\n\nimport { buildVersionGlobalFields, toWords } from 'payload'\n\nimport { docAccessResolver } from '../resolvers/globals/docAccess.js'\nimport findOneResolver from '../resolvers/globals/findOne.js'\nimport findVersionByIDResolver from '../resolvers/globals/findVersionByID.js'\nimport findVersionsResolver from '../resolvers/globals/findVersions.js'\nimport restoreVersionResolver from '../resolvers/globals/restoreVersion.js'\nimport updateResolver from '../resolvers/globals/update.js'\nimport formatName from '../utilities/formatName.js'\nimport { buildMutationInputType } from './buildMutationInputType.js'\nimport { buildObjectType } from './buildObjectType.js'\nimport buildPaginatedListType from './buildPaginatedListType.js'\nimport { buildPolicyType } from './buildPoliciesType.js'\nimport buildWhereInputType from './buildWhereInputType.js'\n\ntype InitGlobalsGraphQLArgs = {\n config: SanitizedConfig\n graphqlResult: GraphQLInfo\n}\nfunction initGlobalsGraphQL({ config, graphqlResult }: InitGlobalsGraphQLArgs): void {\n Object.keys(graphqlResult.globals.config).forEach((slug) => {\n const global: SanitizedGlobalConfig = graphqlResult.globals.config[slug]\n const { fields, graphQL, versions } = global\n\n if (graphQL === false) {\n return\n }\n\n const formattedName = graphQL?.name ? graphQL.name : singular(toWords(global.slug, true))\n\n const forceNullableObjectType = Boolean(versions?.drafts)\n\n if (!graphqlResult.globals.graphQL) graphqlResult.globals.graphQL = {}\n\n const updateMutationInputType = buildMutationInputType({\n name: formattedName,\n config,\n fields,\n graphqlResult,\n parentName: formattedName,\n })\n graphqlResult.globals.graphQL[slug] = {\n type: buildObjectType({\n name: formattedName,\n config,\n fields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: formattedName,\n }),\n mutationInputType: updateMutationInputType\n ? new GraphQLNonNull(updateMutationInputType)\n : null,\n }\n\n graphqlResult.Query.fields[formattedName] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findOneResolver(global),\n }\n\n graphqlResult.Mutation.fields[`update${formattedName}`] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n ...(updateMutationInputType\n ? { data: { type: graphqlResult.globals.graphQL[slug].mutationInputType } }\n : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: updateResolver(global),\n }\n\n graphqlResult.Query.fields[`docAccess${formattedName}`] = {\n type: buildPolicyType({\n type: 'global',\n entity: global,\n scope: 'docAccess',\n typeSuffix: 'DocAccess',\n }),\n resolve: docAccessResolver(global),\n }\n\n if (global.versions) {\n const idType = config.db.defaultIDType === 'number' ? GraphQLInt : GraphQLString\n\n const versionGlobalFields: Field[] = [\n ...buildVersionGlobalFields(global),\n {\n name: 'id',\n type: config.db.defaultIDType as 'text',\n },\n {\n name: 'createdAt',\n type: 'date',\n label: 'Created At',\n },\n {\n name: 'updatedAt',\n type: 'date',\n label: 'Updated At',\n },\n ]\n\n graphqlResult.globals.graphQL[slug].versionType = buildObjectType({\n name: `${formattedName}Version`,\n config,\n fields: versionGlobalFields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: `${formattedName}Version`,\n })\n\n graphqlResult.Query.fields[`version${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].versionType,\n args: {\n id: { type: idType },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: findVersionByIDResolver(global),\n }\n graphqlResult.Query.fields[`versions${formattedName}`] = {\n type: buildPaginatedListType(\n `versions${formatName(formattedName)}`,\n graphqlResult.globals.graphQL[slug].versionType,\n ),\n args: {\n where: {\n type: buildWhereInputType({\n name: `versions${formattedName}`,\n fields: versionGlobalFields,\n parentName: `versions${formattedName}`,\n }),\n },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n limit: { type: GraphQLInt },\n page: { type: GraphQLInt },\n sort: { type: GraphQLString },\n },\n resolve: findVersionsResolver(global),\n }\n graphqlResult.Mutation.fields[`restoreVersion${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n id: { type: idType },\n },\n resolve: restoreVersionResolver(global),\n }\n }\n })\n}\n\nexport default initGlobalsGraphQL\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLString","pluralize","singular","buildVersionGlobalFields","toWords","docAccessResolver","findOneResolver","findVersionByIDResolver","findVersionsResolver","restoreVersionResolver","updateResolver","formatName","buildMutationInputType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initGlobalsGraphQL","config","graphqlResult","Object","keys","globals","forEach","slug","global","fields","graphQL","versions","formattedName","name","forceNullableObjectType","Boolean","drafts","updateMutationInputType","parentName","type","forceNullable","mutationInputType","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","resolve","Mutation","data","entity","scope","typeSuffix","idType","db","defaultIDType","versionGlobalFields","label","versionType","id","where","limit","page","sort"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,oCAAoC,GACpC,SAASA,cAAc,EAAEC,UAAU,EAAEC,cAAc,EAAEC,aAAa,QAAQ,UAAS;AACnF,OAAOC,eAAe,YAAW;AACjC,MAAM,EAAEC,QAAQ,EAAE,GAAGD;AAIrB,SAASE,wBAAwB,EAAEC,OAAO,QAAQ,UAAS;AAE3D,SAASC,iBAAiB,QAAQ,oCAAmC;AACrE,OAAOC,qBAAqB,kCAAiC;AAC7D,OAAOC,6BAA6B,0CAAyC;AAC7E,OAAOC,0BAA0B,uCAAsC;AACvE,OAAOC,4BAA4B,yCAAwC;AAC3E,OAAOC,oBAAoB,iCAAgC;AAC3D,OAAOC,gBAAgB,6BAA4B;AACnD,SAASC,sBAAsB,QAAQ,8BAA6B;AACpE,SAASC,eAAe,QAAQ,uBAAsB;AACtD,OAAOC,4BAA4B,8BAA6B;AAChE,SAASC,eAAe,QAAQ,yBAAwB;AACxD,OAAOC,yBAAyB,2BAA0B;AAM1D,SAASC,mBAAmB,EAAEC,MAAM,EAAEC,aAAa,EAA0B;IAC3EC,OAAOC,IAAI,CAACF,cAAcG,OAAO,CAACJ,MAAM,EAAEK,OAAO,CAAC,CAACC;QACjD,MAAMC,SAAgCN,cAAcG,OAAO,CAACJ,MAAM,CAACM,KAAK;QACxE,MAAM,EAAEE,MAAM,EAAEC,OAAO,EAAEC,QAAQ,EAAE,GAAGH;QAEtC,IAAIE,YAAY,OAAO;YACrB;QACF;QAEA,MAAME,gBAAgBF,SAASG,OAAOH,QAAQG,IAAI,GAAG5B,SAASE,QAAQqB,OAAOD,IAAI,EAAE;QAEnF,MAAMO,0BAA0BC,QAAQJ,UAAUK;QAElD,IAAI,CAACd,cAAcG,OAAO,CAACK,OAAO,EAAER,cAAcG,OAAO,CAACK,OAAO,GAAG,CAAC;QAErE,MAAMO,0BAA0BtB,uBAAuB;YACrDkB,MAAMD;YACNX;YACAQ;YACAP;YACAgB,YAAYN;QACd;QACAV,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,GAAG;YACpCY,MAAMvB,gBAAgB;gBACpBiB,MAAMD;gBACNX;gBACAQ;gBACAW,eAAeN;gBACfZ;gBACAgB,YAAYN;YACd;YACAS,mBAAmBJ,0BACf,IAAInC,eAAemC,2BACnB;QACN;QAEAf,cAAcoB,KAAK,CAACb,MAAM,CAACG,cAAc,GAAG;YAC1CO,MAAMjB,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACY,IAAI;YAC9CI,MAAM;gBACJC,OAAO;oBAAEL,MAAMvC;gBAAe;gBAC9B,GAAIqB,OAAOwB,YAAY,GACnB;oBACEC,gBAAgB;wBAAEP,MAAMjB,cAAcyB,KAAK,CAACC,uBAAuB;oBAAC;oBACpEC,QAAQ;wBAAEV,MAAMjB,cAAcyB,KAAK,CAACG,eAAe;oBAAC;gBACtD,IACA,CAAC,CAAC;YACR;YACAC,SAAS1C,gBAAgBmB;QAC3B;QAEAN,cAAc8B,QAAQ,CAACvB,MAAM,CAAC,CAAC,MAAM,EAAEG,cAAc,CAAC,CAAC,GAAG;YACxDO,MAAMjB,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACY,IAAI;YAC9CI,MAAM;gBACJ,GAAIN,0BACA;oBAAEgB,MAAM;wBAAEd,MAAMjB,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACc,iBAAiB;oBAAC;gBAAE,IACxE,CAAC,CAAC;gBACNG,OAAO;oBAAEL,MAAMvC;gBAAe;gBAC9B,GAAIqB,OAAOwB,YAAY,GACnB;oBACEI,QAAQ;wBAAEV,MAAMjB,cAAcyB,KAAK,CAACG,eAAe;oBAAC;gBACtD,IACA,CAAC,CAAC;YACR;YACAC,SAAStC,eAAee;QAC1B;QAEAN,cAAcoB,KAAK,CAACb,MAAM,CAAC,CAAC,SAAS,EAAEG,cAAc,CAAC,CAAC,GAAG;YACxDO,MAAMrB,gBAAgB;gBACpBqB,MAAM;gBACNe,QAAQ1B;gBACR2B,OAAO;gBACPC,YAAY;YACd;YACAL,SAAS3C,kBAAkBoB;QAC7B;QAEA,IAAIA,OAAOG,QAAQ,EAAE;YACnB,MAAM0B,SAASpC,OAAOqC,EAAE,CAACC,aAAa,KAAK,WAAW1D,aAAaE;YAEnE,MAAMyD,sBAA+B;mBAChCtD,yBAAyBsB;gBAC5B;oBACEK,MAAM;oBACNM,MAAMlB,OAAOqC,EAAE,CAACC,aAAa;gBAC/B;gBACA;oBACE1B,MAAM;oBACNM,MAAM;oBACNsB,OAAO;gBACT;gBACA;oBACE5B,MAAM;oBACNM,MAAM;oBACNsB,OAAO;gBACT;aACD;YAEDvC,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACmC,WAAW,GAAG9C,gBAAgB;gBAChEiB,MAAM,CAAC,EAAED,cAAc,OAAO,CAAC;gBAC/BX;gBACAQ,QAAQ+B;gBACRpB,eAAeN;gBACfZ;gBACAgB,YAAY,CAAC,EAAEN,cAAc,OAAO,CAAC;YACvC;YAEAV,cAAcoB,KAAK,CAACb,MAAM,CAAC,CAAC,OAAO,EAAEf,WAAWkB,eAAe,CAAC,CAAC,GAAG;gBAClEO,MAAMjB,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACmC,WAAW;gBACrDnB,MAAM;oBACJoB,IAAI;wBAAExB,MAAMkB;oBAAO;oBACnB,GAAIpC,OAAOwB,YAAY,GACnB;wBACEC,gBAAgB;4BAAEP,MAAMjB,cAAcyB,KAAK,CAACC,uBAAuB;wBAAC;wBACpEC,QAAQ;4BAAEV,MAAMjB,cAAcyB,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;gBACR;gBACAC,SAASzC,wBAAwBkB;YACnC;YACAN,cAAcoB,KAAK,CAACb,MAAM,CAAC,CAAC,QAAQ,EAAEG,cAAc,CAAC,CAAC,GAAG;gBACvDO,MAAMtB,uBACJ,CAAC,QAAQ,EAAEH,WAAWkB,eAAe,CAAC,EACtCV,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACmC,WAAW;gBAEjDnB,MAAM;oBACJqB,OAAO;wBACLzB,MAAMpB,oBAAoB;4BACxBc,MAAM,CAAC,QAAQ,EAAED,cAAc,CAAC;4BAChCH,QAAQ+B;4BACRtB,YAAY,CAAC,QAAQ,EAAEN,cAAc,CAAC;wBACxC;oBACF;oBACA,GAAIX,OAAOwB,YAAY,GACnB;wBACEC,gBAAgB;4BAAEP,MAAMjB,cAAcyB,KAAK,CAACC,uBAAuB;wBAAC;wBACpEC,QAAQ;4BAAEV,MAAMjB,cAAcyB,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;oBACNe,OAAO;wBAAE1B,MAAMtC;oBAAW;oBAC1BiE,MAAM;wBAAE3B,MAAMtC;oBAAW;oBACzBkE,MAAM;wBAAE5B,MAAMpC;oBAAc;gBAC9B;gBACAgD,SAASxC,qBAAqBiB;YAChC;YACAN,cAAc8B,QAAQ,CAACvB,MAAM,CAAC,CAAC,cAAc,EAAEf,WAAWkB,eAAe,CAAC,CAAC,GAAG;gBAC5EO,MAAMjB,cAAcG,OAAO,CAACK,OAAO,CAACH,KAAK,CAACY,IAAI;gBAC9CI,MAAM;oBACJoB,IAAI;wBAAExB,MAAMkB;oBAAO;gBACrB;gBACAN,SAASvC,uBAAuBgB;YAClC;QACF;IACF;AACF;AAEA,eAAeR,mBAAkB"}
@@ -1,4 +1,4 @@
1
- import type { FieldAffectingData } from 'payload/types';
1
+ import type { FieldAffectingData } from 'payload';
2
2
  declare const isFieldNullable: (field: FieldAffectingData, force: boolean) => boolean;
3
3
  export default isFieldNullable;
4
4
  //# sourceMappingURL=isFieldNullable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"isFieldNullable.d.ts","sourceRoot":"","sources":["../../src/schema/isFieldNullable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAIvD,QAAA,MAAM,eAAe,UAAW,kBAAkB,SAAS,OAAO,KAAG,OAYpE,CAAA;AAED,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"isFieldNullable.d.ts","sourceRoot":"","sources":["../../src/schema/isFieldNullable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAIjD,QAAA,MAAM,eAAe,UAAW,kBAAkB,SAAS,OAAO,KAAG,OAYpE,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -1,4 +1,4 @@
1
- import { fieldAffectsData } from 'payload/types';
1
+ import { fieldAffectsData } from 'payload/shared';
2
2
  const isFieldNullable = (field, force)=>{
3
3
  const hasReadAccessControl = field.access && field.access.read;
4
4
  const condition = field.admin && field.admin.condition;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/isFieldNullable.ts"],"sourcesContent":["import type { FieldAffectingData } from 'payload/types'\n\nimport { fieldAffectsData } from 'payload/types'\n\nconst isFieldNullable = (field: FieldAffectingData, force: boolean): boolean => {\n const hasReadAccessControl = field.access && field.access.read\n const condition = field.admin && field.admin.condition\n return !(\n force &&\n fieldAffectsData(field) &&\n 'required' in field &&\n field.required &&\n !field.localized &&\n !condition &&\n !hasReadAccessControl\n )\n}\n\nexport default isFieldNullable\n"],"names":["fieldAffectsData","isFieldNullable","field","force","hasReadAccessControl","access","read","condition","admin","required","localized"],"rangeMappings":";;;;;;","mappings":"AAEA,SAASA,gBAAgB,QAAQ,gBAAe;AAEhD,MAAMC,kBAAkB,CAACC,OAA2BC;IAClD,MAAMC,uBAAuBF,MAAMG,MAAM,IAAIH,MAAMG,MAAM,CAACC,IAAI;IAC9D,MAAMC,YAAYL,MAAMM,KAAK,IAAIN,MAAMM,KAAK,CAACD,SAAS;IACtD,OAAO,CACLJ,CAAAA,SACAH,iBAAiBE,UACjB,cAAcA,SACdA,MAAMO,QAAQ,IACd,CAACP,MAAMQ,SAAS,IAChB,CAACH,aACD,CAACH,oBAAmB;AAExB;AAEA,eAAeH,gBAAe"}
1
+ {"version":3,"sources":["../../src/schema/isFieldNullable.ts"],"sourcesContent":["import type { FieldAffectingData } from 'payload'\n\nimport { fieldAffectsData } from 'payload/shared'\n\nconst isFieldNullable = (field: FieldAffectingData, force: boolean): boolean => {\n const hasReadAccessControl = field.access && field.access.read\n const condition = field.admin && field.admin.condition\n return !(\n force &&\n fieldAffectsData(field) &&\n 'required' in field &&\n field.required &&\n !field.localized &&\n !condition &&\n !hasReadAccessControl\n )\n}\n\nexport default isFieldNullable\n"],"names":["fieldAffectsData","isFieldNullable","field","force","hasReadAccessControl","access","read","condition","admin","required","localized"],"rangeMappings":";;;;;;","mappings":"AAEA,SAASA,gBAAgB,QAAQ,iBAAgB;AAEjD,MAAMC,kBAAkB,CAACC,OAA2BC;IAClD,MAAMC,uBAAuBF,MAAMG,MAAM,IAAIH,MAAMG,MAAM,CAACC,IAAI;IAC9D,MAAMC,YAAYL,MAAMM,KAAK,IAAIN,MAAMM,KAAK,CAACD,SAAS;IACtD,OAAO,CACLJ,CAAAA,SACAH,iBAAiBE,UACjB,cAAcA,SACdA,MAAMO,QAAQ,IACd,CAACP,MAAMQ,SAAS,IAChB,CAACH,aACD,CAACH,oBAAmB;AAExB;AAEA,eAAeH,gBAAe"}
@@ -1,4 +1,4 @@
1
- import type { FieldWithSubFields, TabsField } from 'payload/types';
1
+ import type { FieldWithSubFields, TabsField } from 'payload';
2
2
  type Args = {
3
3
  field: FieldWithSubFields | TabsField;
4
4
  nestedFieldName2: string;
@@ -1 +1 @@
1
- {"version":3,"file":"recursivelyBuildNestedPaths.d.ts","sourceRoot":"","sources":["../../src/schema/recursivelyBuildNestedPaths.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAMlE,KAAK,IAAI,GAAG;IACV,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAAA;IACrC,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,2BAA2B,4CAA6C,IAAI,QAmEjF,CAAA;AAED,eAAe,2BAA2B,CAAA"}
1
+ {"version":3,"file":"recursivelyBuildNestedPaths.d.ts","sourceRoot":"","sources":["../../src/schema/recursivelyBuildNestedPaths.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAM5D,KAAK,IAAI,GAAG;IACV,KAAK,EAAE,kBAAkB,GAAG,SAAS,CAAA;IACrC,gBAAgB,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,2BAA2B,4CAA6C,IAAI,QAmEjF,CAAA;AAED,eAAe,2BAA2B,CAAA"}
@@ -1,4 +1,4 @@
1
- import { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types';
1
+ import { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared';
2
2
  import fieldToSchemaMap from './fieldToWhereInputSchemaMap.js';
3
3
  const recursivelyBuildNestedPaths = ({ field, nestedFieldName2, parentName })=>{
4
4
  const fieldName = fieldAffectsData(field) ? field.name : undefined;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/recursivelyBuildNestedPaths.ts"],"sourcesContent":["import type { FieldWithSubFields, TabsField } from 'payload/types'\n\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types'\n\nimport fieldToSchemaMap from './fieldToWhereInputSchemaMap.js'\n\ntype Args = {\n field: FieldWithSubFields | TabsField\n nestedFieldName2: string\n parentName: string\n}\n\nconst recursivelyBuildNestedPaths = ({ field, nestedFieldName2, parentName }: Args) => {\n const fieldName = fieldAffectsData(field) ? field.name : undefined\n const nestedFieldName = fieldName || nestedFieldName2\n\n if (field.type === 'tabs') {\n // if the tab has a name, treat it as a group\n // otherwise, treat it as a row\n return field.tabs.reduce((tabSchema, tab: any) => {\n tabSchema.push(\n ...recursivelyBuildNestedPaths({\n field: {\n ...tab,\n type: 'name' in tab ? 'group' : 'row',\n },\n nestedFieldName2: nestedFieldName,\n parentName,\n }),\n )\n return tabSchema\n }, [])\n }\n\n const nestedPaths = field.fields.reduce((nestedFields, nestedField) => {\n if (!fieldIsPresentationalOnly(nestedField)) {\n if (!fieldAffectsData(nestedField)) {\n return [\n ...nestedFields,\n ...recursivelyBuildNestedPaths({\n field: nestedField,\n nestedFieldName2: nestedFieldName,\n parentName,\n }),\n ]\n }\n\n const nestedPathName = fieldAffectsData(nestedField)\n ? `${nestedFieldName ? `${nestedFieldName}__` : ''}${nestedField.name}`\n : undefined\n const getFieldSchema = fieldToSchemaMap({\n nestedFieldName,\n parentName,\n })[nestedField.type]\n\n if (getFieldSchema) {\n const fieldSchema = getFieldSchema({\n ...nestedField,\n name: nestedPathName,\n })\n\n if (Array.isArray(fieldSchema)) {\n return [...nestedFields, ...fieldSchema]\n }\n\n return [\n ...nestedFields,\n {\n type: fieldSchema,\n key: nestedPathName,\n },\n ]\n }\n }\n\n return nestedFields\n }, [])\n\n return nestedPaths\n}\n\nexport default recursivelyBuildNestedPaths\n"],"names":["fieldAffectsData","fieldIsPresentationalOnly","fieldToSchemaMap","recursivelyBuildNestedPaths","field","nestedFieldName2","parentName","fieldName","name","undefined","nestedFieldName","type","tabs","reduce","tabSchema","tab","push","nestedPaths","fields","nestedFields","nestedField","nestedPathName","getFieldSchema","fieldSchema","Array","isArray","key"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,gBAAgB,EAAEC,yBAAyB,QAAQ,gBAAe;AAE3E,OAAOC,sBAAsB,kCAAiC;AAQ9D,MAAMC,8BAA8B,CAAC,EAAEC,KAAK,EAAEC,gBAAgB,EAAEC,UAAU,EAAQ;IAChF,MAAMC,YAAYP,iBAAiBI,SAASA,MAAMI,IAAI,GAAGC;IACzD,MAAMC,kBAAkBH,aAAaF;IAErC,IAAID,MAAMO,IAAI,KAAK,QAAQ;QACzB,6CAA6C;QAC7C,+BAA+B;QAC/B,OAAOP,MAAMQ,IAAI,CAACC,MAAM,CAAC,CAACC,WAAWC;YACnCD,UAAUE,IAAI,IACTb,4BAA4B;gBAC7BC,OAAO;oBACL,GAAGW,GAAG;oBACNJ,MAAM,UAAUI,MAAM,UAAU;gBAClC;gBACAV,kBAAkBK;gBAClBJ;YACF;YAEF,OAAOQ;QACT,GAAG,EAAE;IACP;IAEA,MAAMG,cAAcb,MAAMc,MAAM,CAACL,MAAM,CAAC,CAACM,cAAcC;QACrD,IAAI,CAACnB,0BAA0BmB,cAAc;YAC3C,IAAI,CAACpB,iBAAiBoB,cAAc;gBAClC,OAAO;uBACFD;uBACAhB,4BAA4B;wBAC7BC,OAAOgB;wBACPf,kBAAkBK;wBAClBJ;oBACF;iBACD;YACH;YAEA,MAAMe,iBAAiBrB,iBAAiBoB,eACpC,CAAC,EAAEV,kBAAkB,CAAC,EAAEA,gBAAgB,EAAE,CAAC,GAAG,GAAG,EAAEU,YAAYZ,IAAI,CAAC,CAAC,GACrEC;YACJ,MAAMa,iBAAiBpB,iBAAiB;gBACtCQ;gBACAJ;YACF,EAAE,CAACc,YAAYT,IAAI,CAAC;YAEpB,IAAIW,gBAAgB;gBAClB,MAAMC,cAAcD,eAAe;oBACjC,GAAGF,WAAW;oBACdZ,MAAMa;gBACR;gBAEA,IAAIG,MAAMC,OAAO,CAACF,cAAc;oBAC9B,OAAO;2BAAIJ;2BAAiBI;qBAAY;gBAC1C;gBAEA,OAAO;uBACFJ;oBACH;wBACER,MAAMY;wBACNG,KAAKL;oBACP;iBACD;YACH;QACF;QAEA,OAAOF;IACT,GAAG,EAAE;IAEL,OAAOF;AACT;AAEA,eAAed,4BAA2B"}
1
+ {"version":3,"sources":["../../src/schema/recursivelyBuildNestedPaths.ts"],"sourcesContent":["import type { FieldWithSubFields, TabsField } from 'payload'\n\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared'\n\nimport fieldToSchemaMap from './fieldToWhereInputSchemaMap.js'\n\ntype Args = {\n field: FieldWithSubFields | TabsField\n nestedFieldName2: string\n parentName: string\n}\n\nconst recursivelyBuildNestedPaths = ({ field, nestedFieldName2, parentName }: Args) => {\n const fieldName = fieldAffectsData(field) ? field.name : undefined\n const nestedFieldName = fieldName || nestedFieldName2\n\n if (field.type === 'tabs') {\n // if the tab has a name, treat it as a group\n // otherwise, treat it as a row\n return field.tabs.reduce((tabSchema, tab: any) => {\n tabSchema.push(\n ...recursivelyBuildNestedPaths({\n field: {\n ...tab,\n type: 'name' in tab ? 'group' : 'row',\n },\n nestedFieldName2: nestedFieldName,\n parentName,\n }),\n )\n return tabSchema\n }, [])\n }\n\n const nestedPaths = field.fields.reduce((nestedFields, nestedField) => {\n if (!fieldIsPresentationalOnly(nestedField)) {\n if (!fieldAffectsData(nestedField)) {\n return [\n ...nestedFields,\n ...recursivelyBuildNestedPaths({\n field: nestedField,\n nestedFieldName2: nestedFieldName,\n parentName,\n }),\n ]\n }\n\n const nestedPathName = fieldAffectsData(nestedField)\n ? `${nestedFieldName ? `${nestedFieldName}__` : ''}${nestedField.name}`\n : undefined\n const getFieldSchema = fieldToSchemaMap({\n nestedFieldName,\n parentName,\n })[nestedField.type]\n\n if (getFieldSchema) {\n const fieldSchema = getFieldSchema({\n ...nestedField,\n name: nestedPathName,\n })\n\n if (Array.isArray(fieldSchema)) {\n return [...nestedFields, ...fieldSchema]\n }\n\n return [\n ...nestedFields,\n {\n type: fieldSchema,\n key: nestedPathName,\n },\n ]\n }\n }\n\n return nestedFields\n }, [])\n\n return nestedPaths\n}\n\nexport default recursivelyBuildNestedPaths\n"],"names":["fieldAffectsData","fieldIsPresentationalOnly","fieldToSchemaMap","recursivelyBuildNestedPaths","field","nestedFieldName2","parentName","fieldName","name","undefined","nestedFieldName","type","tabs","reduce","tabSchema","tab","push","nestedPaths","fields","nestedFields","nestedField","nestedPathName","getFieldSchema","fieldSchema","Array","isArray","key"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,gBAAgB,EAAEC,yBAAyB,QAAQ,iBAAgB;AAE5E,OAAOC,sBAAsB,kCAAiC;AAQ9D,MAAMC,8BAA8B,CAAC,EAAEC,KAAK,EAAEC,gBAAgB,EAAEC,UAAU,EAAQ;IAChF,MAAMC,YAAYP,iBAAiBI,SAASA,MAAMI,IAAI,GAAGC;IACzD,MAAMC,kBAAkBH,aAAaF;IAErC,IAAID,MAAMO,IAAI,KAAK,QAAQ;QACzB,6CAA6C;QAC7C,+BAA+B;QAC/B,OAAOP,MAAMQ,IAAI,CAACC,MAAM,CAAC,CAACC,WAAWC;YACnCD,UAAUE,IAAI,IACTb,4BAA4B;gBAC7BC,OAAO;oBACL,GAAGW,GAAG;oBACNJ,MAAM,UAAUI,MAAM,UAAU;gBAClC;gBACAV,kBAAkBK;gBAClBJ;YACF;YAEF,OAAOQ;QACT,GAAG,EAAE;IACP;IAEA,MAAMG,cAAcb,MAAMc,MAAM,CAACL,MAAM,CAAC,CAACM,cAAcC;QACrD,IAAI,CAACnB,0BAA0BmB,cAAc;YAC3C,IAAI,CAACpB,iBAAiBoB,cAAc;gBAClC,OAAO;uBACFD;uBACAhB,4BAA4B;wBAC7BC,OAAOgB;wBACPf,kBAAkBK;wBAClBJ;oBACF;iBACD;YACH;YAEA,MAAMe,iBAAiBrB,iBAAiBoB,eACpC,CAAC,EAAEV,kBAAkB,CAAC,EAAEA,gBAAgB,EAAE,CAAC,GAAG,GAAG,EAAEU,YAAYZ,IAAI,CAAC,CAAC,GACrEC;YACJ,MAAMa,iBAAiBpB,iBAAiB;gBACtCQ;gBACAJ;YACF,EAAE,CAACc,YAAYT,IAAI,CAAC;YAEpB,IAAIW,gBAAgB;gBAClB,MAAMC,cAAcD,eAAe;oBACjC,GAAGF,WAAW;oBACdZ,MAAMa;gBACR;gBAEA,IAAIG,MAAMC,OAAO,CAACF,cAAc;oBAC9B,OAAO;2BAAIJ;2BAAiBI;qBAAY;gBAC1C;gBAEA,OAAO;uBACFJ;oBACH;wBACER,MAAMY;wBACNG,KAAKL;oBACP;iBACD;YACH;QACF;QAEA,OAAOF;IACT,GAAG,EAAE;IAEL,OAAOF;AACT;AAEA,eAAed,4BAA2B"}
@@ -1,5 +1,5 @@
1
1
  import type { GraphQLType } from 'graphql';
2
- import type { FieldAffectingData } from 'payload/types';
2
+ import type { FieldAffectingData } from 'payload';
3
3
  declare const withNullableType: (field: FieldAffectingData, type: GraphQLType, forceNullable?: boolean) => GraphQLType;
4
4
  export default withNullableType;
5
5
  //# sourceMappingURL=withNullableType.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withNullableType.d.ts","sourceRoot":"","sources":["../../src/schema/withNullableType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAIvD,QAAA,MAAM,gBAAgB,UACb,kBAAkB,QACnB,WAAW,8BAEhB,WAkBF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
1
+ {"version":3,"file":"withNullableType.d.ts","sourceRoot":"","sources":["../../src/schema/withNullableType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAIjD,QAAA,MAAM,gBAAgB,UACb,kBAAkB,QACnB,WAAW,8BAEhB,WAkBF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/withNullableType.ts"],"sourcesContent":["import type { GraphQLType } from 'graphql'\nimport type { FieldAffectingData } from 'payload/types'\n\nimport { GraphQLNonNull } from 'graphql'\n\nconst withNullableType = (\n field: FieldAffectingData,\n type: GraphQLType,\n forceNullable = false,\n): GraphQLType => {\n const hasReadAccessControl = field.access && field.access.read\n const condition = field.admin && field.admin.condition\n const isTimestamp = field.name === 'createdAt' || field.name === 'updatedAt'\n\n if (\n !forceNullable &&\n 'required' in field &&\n field.required &&\n !field.localized &&\n !condition &&\n !hasReadAccessControl &&\n !isTimestamp\n ) {\n return new GraphQLNonNull(type)\n }\n\n return type\n}\n\nexport default withNullableType\n"],"names":["GraphQLNonNull","withNullableType","field","type","forceNullable","hasReadAccessControl","access","read","condition","admin","isTimestamp","name","required","localized"],"rangeMappings":";;;;;;;;;;","mappings":"AAGA,SAASA,cAAc,QAAQ,UAAS;AAExC,MAAMC,mBAAmB,CACvBC,OACAC,MACAC,gBAAgB,KAAK;IAErB,MAAMC,uBAAuBH,MAAMI,MAAM,IAAIJ,MAAMI,MAAM,CAACC,IAAI;IAC9D,MAAMC,YAAYN,MAAMO,KAAK,IAAIP,MAAMO,KAAK,CAACD,SAAS;IACtD,MAAME,cAAcR,MAAMS,IAAI,KAAK,eAAeT,MAAMS,IAAI,KAAK;IAEjE,IACE,CAACP,iBACD,cAAcF,SACdA,MAAMU,QAAQ,IACd,CAACV,MAAMW,SAAS,IAChB,CAACL,aACD,CAACH,wBACD,CAACK,aACD;QACA,OAAO,IAAIV,eAAeG;IAC5B;IAEA,OAAOA;AACT;AAEA,eAAeF,iBAAgB"}
1
+ {"version":3,"sources":["../../src/schema/withNullableType.ts"],"sourcesContent":["import type { GraphQLType } from 'graphql'\nimport type { FieldAffectingData } from 'payload'\n\nimport { GraphQLNonNull } from 'graphql'\n\nconst withNullableType = (\n field: FieldAffectingData,\n type: GraphQLType,\n forceNullable = false,\n): GraphQLType => {\n const hasReadAccessControl = field.access && field.access.read\n const condition = field.admin && field.admin.condition\n const isTimestamp = field.name === 'createdAt' || field.name === 'updatedAt'\n\n if (\n !forceNullable &&\n 'required' in field &&\n field.required &&\n !field.localized &&\n !condition &&\n !hasReadAccessControl &&\n !isTimestamp\n ) {\n return new GraphQLNonNull(type)\n }\n\n return type\n}\n\nexport default withNullableType\n"],"names":["GraphQLNonNull","withNullableType","field","type","forceNullable","hasReadAccessControl","access","read","condition","admin","isTimestamp","name","required","localized"],"rangeMappings":";;;;;;;;;;","mappings":"AAGA,SAASA,cAAc,QAAQ,UAAS;AAExC,MAAMC,mBAAmB,CACvBC,OACAC,MACAC,gBAAgB,KAAK;IAErB,MAAMC,uBAAuBH,MAAMI,MAAM,IAAIJ,MAAMI,MAAM,CAACC,IAAI;IAC9D,MAAMC,YAAYN,MAAMO,KAAK,IAAIP,MAAMO,KAAK,CAACD,SAAS;IACtD,MAAME,cAAcR,MAAMS,IAAI,KAAK,eAAeT,MAAMS,IAAI,KAAK;IAEjE,IACE,CAACP,iBACD,cAAcF,SACdA,MAAMU,QAAQ,IACd,CAACV,MAAMW,SAAS,IAChB,CAACL,aACD,CAACH,wBACD,CAACK,aACD;QACA,OAAO,IAAIV,eAAeG;IAC5B;IAEA,OAAOA;AACT;AAEA,eAAeF,iBAAgB"}
@@ -1,4 +1,4 @@
1
- import type { FieldAffectingData } from 'payload/types';
1
+ import type { FieldAffectingData } from 'payload';
2
2
  import { GraphQLInputObjectType } from 'graphql';
3
3
  /**
4
4
  * In GraphQL, you can use "where" as an argument to filter a collection. Example:
@@ -1 +1 @@
1
- {"version":3,"file":"withOperators.d.ts","sourceRoot":"","sources":["../../src/schema/withOperators.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAwC,MAAM,eAAe,CAAA;AAE7F,OAAO,EAIL,sBAAsB,EAIvB,MAAM,SAAS,CAAA;AA8OhB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,UACjB,kBAAkB,cACb,MAAM,KACjB,sBA+CF,CAAA"}
1
+ {"version":3,"file":"withOperators.d.ts","sourceRoot":"","sources":["../../src/schema/withOperators.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAwC,MAAM,SAAS,CAAA;AAEvF,OAAO,EAIL,sBAAsB,EAIvB,MAAM,SAAS,CAAA;AA8OhB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,UACjB,kBAAkB,cACb,MAAM,KACjB,sBA+CF,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { GraphQLBoolean, GraphQLEnumType, GraphQLFloat, GraphQLInputObjectType, GraphQLInt, GraphQLList, GraphQLString } from 'graphql';
2
2
  import { DateTimeResolver, EmailAddressResolver } from 'graphql-scalars';
3
- import { GraphQLJSON } from 'graphql-type-json';
4
- import { optionIsObject } from 'payload/types';
3
+ import { optionIsObject } from 'payload/shared';
4
+ import { GraphQLJSON } from '../packages/graphql-type-json/index.js';
5
5
  import combineParentName from '../utilities/combineParentName.js';
6
6
  import formatName from '../utilities/formatName.js';
7
7
  import operators from './operators.js';
@@ -1 +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
+ {"version":3,"sources":["../../src/schema/withOperators.ts"],"sourcesContent":["import type { GraphQLType } from 'graphql'\nimport type { FieldAffectingData, NumberField, RadioField, SelectField } from 'payload'\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 { optionIsObject } from 'payload/shared'\n\nimport { GraphQLJSON } from '../packages/graphql-type-json/index.js'\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","optionIsObject","GraphQLJSON","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,4 +1,4 @@
1
- import type { RadioField, SelectField } from 'payload/types';
1
+ import type { RadioField, SelectField } from 'payload';
2
2
  declare const formatOptions: (field: RadioField | SelectField) => {};
3
3
  export default formatOptions;
4
4
  //# sourceMappingURL=formatOptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatOptions.d.ts","sourceRoot":"","sources":["../../src/utilities/formatOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAI5D,QAAA,MAAM,aAAa,UAAW,UAAU,GAAG,WAAW,OAkBrD,CAAA;AAED,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"formatOptions.d.ts","sourceRoot":"","sources":["../../src/utilities/formatOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAItD,QAAA,MAAM,aAAa,UAAW,UAAU,GAAG,WAAW,OAkBrD,CAAA;AAED,eAAe,aAAa,CAAA"}
@@ -1 +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
+ {"version":3,"sources":["../../src/utilities/formatOptions.ts"],"sourcesContent":["import type { RadioField, SelectField } from 'payload'\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,3 +1,3 @@
1
- import type { Field, Tab } from 'payload/types';
1
+ import type { Field, Tab } from 'payload';
2
2
  export declare const groupOrTabHasRequiredSubfield: (entity: Field | Tab) => boolean;
3
3
  //# sourceMappingURL=groupOrTabHasRequiredSubfield.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"groupOrTabHasRequiredSubfield.d.ts","sourceRoot":"","sources":["../../src/utilities/groupOrTabHasRequiredSubfield.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAI/C,eAAO,MAAM,6BAA6B,WAAY,KAAK,GAAG,GAAG,KAAG,OAenE,CAAA"}
1
+ {"version":3,"file":"groupOrTabHasRequiredSubfield.d.ts","sourceRoot":"","sources":["../../src/utilities/groupOrTabHasRequiredSubfield.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAIzC,eAAO,MAAM,6BAA6B,WAAY,KAAK,GAAG,GAAG,KAAG,OAenE,CAAA"}
@@ -1,4 +1,4 @@
1
- import { fieldAffectsData } from 'payload/types';
1
+ import { fieldAffectsData } from 'payload/shared';
2
2
  export const groupOrTabHasRequiredSubfield = (entity)=>{
3
3
  if ('type' in entity && entity.type === 'group') {
4
4
  return entity.fields.some((subField)=>{
@@ -1 +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"}
1
+ {"version":3,"sources":["../../src/utilities/groupOrTabHasRequiredSubfield.ts"],"sourcesContent":["import type { Field, Tab } from 'payload'\n\nimport { fieldAffectsData } from 'payload/shared'\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,iBAAgB;AAEjD,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"}
@@ -1,8 +1,8 @@
1
1
  import type { ObjMap } from 'graphql/jsutils/ObjMap.js';
2
2
  import type { GraphQLFieldConfig } from 'graphql/type/definition.js';
3
- import type { PayloadRequest } from 'payload/types';
3
+ import type { PayloadRequestWithData } from 'payload';
4
4
  type PayloadContext = {
5
- req: PayloadRequest;
5
+ req: PayloadRequestWithData;
6
6
  };
7
7
  export declare function wrapCustomFields<TSource>(fields: ObjMap<GraphQLFieldConfig<TSource, PayloadContext>>): ObjMap<GraphQLFieldConfig<TSource, PayloadContext>>;
8
8
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"wrapCustomResolver.d.ts","sourceRoot":"","sources":["../../src/utilities/wrapCustomResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAwB,MAAM,4BAA4B,CAAA;AAC1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAInD,KAAK,cAAc,GAAG;IAAE,GAAG,EAAE,cAAc,CAAA;CAAE,CAAA;AAe7C,wBAAgB,gBAAgB,CAAC,OAAO,EACtC,MAAM,EAAE,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,GAC1D,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAOrD"}
1
+ {"version":3,"file":"wrapCustomResolver.d.ts","sourceRoot":"","sources":["../../src/utilities/wrapCustomResolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAwB,MAAM,4BAA4B,CAAA;AAC1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAIrD,KAAK,cAAc,GAAG;IAAE,GAAG,EAAE,sBAAsB,CAAA;CAAE,CAAA;AAerD,wBAAgB,gBAAgB,CAAC,OAAO,EACtC,MAAM,EAAE,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,GAC1D,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAOrD"}
@@ -1,4 +1,4 @@
1
- import { isolateObjectProperty } from 'payload/utilities';
1
+ import { isolateObjectProperty } from 'payload';
2
2
  function wrapCustomResolver(resolver) {
3
3
  return (source, args, context, info)=>{
4
4
  return resolver(source, args, {