@payloadcms/graphql 4.0.0-internal.f15737c → 4.0.0-internal.f2a04f7

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 (47) hide show
  1. package/dist/index.d.ts.map +1 -1
  2. package/dist/index.js +3 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/resolvers/collections/find.d.ts.map +1 -1
  5. package/dist/resolvers/collections/find.js.map +1 -1
  6. package/dist/resolvers/collections/findByID.d.ts.map +1 -1
  7. package/dist/resolvers/collections/findByID.js.map +1 -1
  8. package/dist/resolvers/collections/findVersionByID.d.ts.map +1 -1
  9. package/dist/resolvers/collections/findVersionByID.js.map +1 -1
  10. package/dist/resolvers/collections/findVersions.d.ts.map +1 -1
  11. package/dist/resolvers/collections/findVersions.js.map +1 -1
  12. package/dist/resolvers/collections/renameFile.d.ts +8 -0
  13. package/dist/resolvers/collections/renameFile.d.ts.map +1 -0
  14. package/dist/resolvers/collections/renameFile.js +10 -0
  15. package/dist/resolvers/collections/renameFile.js.map +1 -0
  16. package/dist/resolvers/collections/validate.d.ts +16 -0
  17. package/dist/resolvers/collections/validate.d.ts.map +1 -0
  18. package/dist/resolvers/collections/validate.js +33 -0
  19. package/dist/resolvers/collections/validate.js.map +1 -0
  20. package/dist/resolvers/globals/findOne.d.ts.map +1 -1
  21. package/dist/resolvers/globals/findOne.js.map +1 -1
  22. package/dist/resolvers/globals/findVersionByID.d.ts.map +1 -1
  23. package/dist/resolvers/globals/findVersionByID.js.map +1 -1
  24. package/dist/resolvers/globals/findVersions.d.ts.map +1 -1
  25. package/dist/resolvers/globals/findVersions.js.map +1 -1
  26. package/dist/resolvers/globals/validate.d.ts +15 -0
  27. package/dist/resolvers/globals/validate.d.ts.map +1 -0
  28. package/dist/resolvers/globals/validate.js +21 -0
  29. package/dist/resolvers/globals/validate.js.map +1 -0
  30. package/dist/schema/buildMutationInputType.d.ts.map +1 -1
  31. package/dist/schema/buildMutationInputType.js +5 -2
  32. package/dist/schema/buildMutationInputType.js.map +1 -1
  33. package/dist/schema/buildPoliciesType.d.ts +1 -1
  34. package/dist/schema/buildPoliciesType.d.ts.map +1 -1
  35. package/dist/schema/buildPoliciesType.js +6 -3
  36. package/dist/schema/buildPoliciesType.js.map +1 -1
  37. package/dist/schema/buildValidationResultType.d.ts +3 -0
  38. package/dist/schema/buildValidationResultType.d.ts.map +1 -0
  39. package/dist/schema/buildValidationResultType.js +30 -0
  40. package/dist/schema/buildValidationResultType.js.map +1 -0
  41. package/dist/schema/initCollections.d.ts.map +1 -1
  42. package/dist/schema/initCollections.js +50 -0
  43. package/dist/schema/initCollections.js.map +1 -1
  44. package/dist/schema/initGlobals.d.ts.map +1 -1
  45. package/dist/schema/initGlobals.js +29 -0
  46. package/dist/schema/initGlobals.js.map +1 -1
  47. package/package.json +17 -17
@@ -11,7 +11,8 @@ const buildFields = (label, fieldsToBuild)=>fieldsToBuild.reduce((builtFields, f
11
11
  'create',
12
12
  'read',
13
13
  'update',
14
- 'delete'
14
+ 'delete',
15
+ 'validate'
15
16
  ].reduce((operations, operation)=>{
16
17
  const capitalizedOperation = operation.charAt(0).toUpperCase() + operation.slice(1);
17
18
  return {
@@ -119,7 +120,8 @@ export function buildPolicyType(args) {
119
120
  'create',
120
121
  'read',
121
122
  'update',
122
- 'delete'
123
+ 'delete',
124
+ 'validate'
123
125
  ];
124
126
  if (entity.auth && typeof entity.auth === 'object' && typeof entity.auth.maxLoginAttempts !== 'undefined' && entity.auth.maxLoginAttempts !== 0) {
125
127
  operations.push('unlock');
@@ -141,7 +143,8 @@ export function buildPolicyType(args) {
141
143
  // else create global type
142
144
  operations = [
143
145
  'read',
144
- 'update'
146
+ 'update',
147
+ 'validate'
145
148
  ];
146
149
  if (entity.versions) {
147
150
  operations.push('readVersions');
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/buildPoliciesType.ts"],"sourcesContent":["import type {\n CollectionConfig,\n Field,\n GlobalConfig,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { GraphQLBoolean, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport { toWords } from 'payload'\n\nimport { GraphQLJSONObject } from '../packages/graphql-type-json/index.js'\nimport { formatName } from '../utilities/formatName.js'\n\ntype OperationType = 'create' | 'delete' | 'read' | 'readVersions' | 'unlock' | 'update'\n\ntype AccessScopes = 'docAccess' | undefined\n\ntype ObjectTypeFields = {\n [key in 'fields' | OperationType]?: { type: GraphQLObjectType }\n}\n\nconst buildFields = (label, fieldsToBuild) =>\n fieldsToBuild.reduce((builtFields, field) => {\n const includeField = !field.hidden && field.type !== 'ui'\n if (includeField) {\n if (field.name) {\n const fieldName = formatName(field.name)\n\n const objectTypeFields: ObjectTypeFields = ['create', 'read', 'update', 'delete'].reduce(\n (operations, operation) => {\n const capitalizedOperation = operation.charAt(0).toUpperCase() + operation.slice(1)\n\n return {\n ...operations,\n [operation]: {\n type: new GraphQLObjectType({\n name: `${label}_${fieldName}_${capitalizedOperation}`,\n fields: {\n permission: {\n type: new GraphQLNonNull(GraphQLBoolean),\n },\n },\n }),\n },\n }\n },\n {},\n )\n\n if (field.fields) {\n objectTypeFields.fields = {\n type: new GraphQLObjectType({\n name: `${label}_${fieldName}_Fields`,\n fields: buildFields(`${label}_${fieldName}`, field.fields),\n }),\n }\n }\n\n return {\n ...builtFields,\n [formatName(field.name)]: {\n type: new GraphQLObjectType({\n name: `${label}_${fieldName}`,\n fields: objectTypeFields,\n }),\n },\n }\n }\n\n if (!field.name && field.fields && field.fields.length) {\n const subFields = buildFields(label, field.fields)\n\n return {\n ...builtFields,\n ...subFields,\n }\n }\n\n if (field.type === 'tabs') {\n return field.tabs.reduce(\n (fieldsWithTabFields, tab) => {\n if ('name' in tab) {\n if (tab.fields.length) {\n const tabName = formatName(tab.name)\n fieldsWithTabFields[tabName] = {\n type: new GraphQLObjectType({\n name: `${label}_${tabName}`,\n fields: buildFields(`${label}_${tabName}`, tab.fields),\n }),\n }\n }\n return fieldsWithTabFields\n }\n return {\n ...fieldsWithTabFields,\n ...buildFields(label, tab.fields),\n }\n },\n { ...builtFields },\n )\n }\n }\n return builtFields\n }, {})\n\ntype BuildEntityPolicy = {\n entityFields: Field[]\n name: string\n operations: OperationType[]\n scope: AccessScopes\n}\nexport const buildEntityPolicy = (args: BuildEntityPolicy) => {\n const { name, entityFields, operations, scope } = args\n\n const fieldsTypeName = toWords(`${name}-${scope || ''}-Fields`, true)\n const fields = {\n fields: {\n type: new GraphQLObjectType({\n name: fieldsTypeName,\n fields: buildFields(fieldsTypeName, entityFields),\n }),\n },\n }\n\n operations.forEach((operation) => {\n const operationTypeName = toWords(`${name}-${operation}-${scope || 'Access'}`, true)\n\n fields[operation] = {\n type: new GraphQLObjectType({\n name: operationTypeName,\n fields: {\n permission: { type: new GraphQLNonNull(GraphQLBoolean) },\n where: { type: GraphQLJSONObject },\n },\n }),\n }\n })\n\n return fields\n}\n\ntype BuildPolicyType = {\n scope?: AccessScopes\n typeSuffix?: string\n} & (\n | {\n entity: CollectionConfig\n type: 'collection'\n }\n | {\n entity: GlobalConfig\n type: 'global'\n }\n)\nexport function buildPolicyType(args: BuildPolicyType): GraphQLObjectType {\n const { type, entity, scope, typeSuffix } = args\n const { slug, fields, graphQL, versions } = entity\n\n let operations = []\n\n if (graphQL === false) {\n return null\n }\n\n if (type === 'collection') {\n operations = ['create', 'read', 'update', 'delete']\n\n if (\n entity.auth &&\n typeof entity.auth === 'object' &&\n typeof entity.auth.maxLoginAttempts !== 'undefined' &&\n entity.auth.maxLoginAttempts !== 0\n ) {\n operations.push('unlock')\n }\n\n if (versions) {\n operations.push('readVersions')\n }\n\n const collectionTypeName = formatName(`${slug}${typeSuffix || ''}`)\n\n return new GraphQLObjectType({\n name: collectionTypeName,\n fields: buildEntityPolicy({\n name: slug,\n entityFields: fields,\n operations,\n scope,\n }),\n })\n }\n\n // else create global type\n operations = ['read', 'update']\n\n if (entity.versions) {\n operations.push('readVersions')\n }\n\n const globalTypeName = formatName(`${global?.graphQL?.name || slug}${typeSuffix || ''}`)\n\n return new GraphQLObjectType({\n name: globalTypeName,\n fields: buildEntityPolicy({\n name: entity.graphQL ? entity?.graphQL?.name || slug : slug,\n entityFields: entity.fields,\n operations,\n scope,\n }),\n })\n}\n\nexport function buildPoliciesType(config: SanitizedConfig): GraphQLObjectType {\n const fields = {\n canAccessAdmin: {\n type: new GraphQLNonNull(GraphQLBoolean),\n },\n }\n\n Object.values(config.collections).forEach((collection: SanitizedCollectionConfig) => {\n if (collection.graphQL === false) {\n return\n }\n const collectionPolicyType = buildPolicyType({\n type: 'collection',\n entity: collection,\n typeSuffix: 'Access',\n })\n\n fields[formatName(collection.slug)] = {\n type: collectionPolicyType,\n }\n })\n\n Object.values(config.globals).forEach((global: SanitizedGlobalConfig) => {\n if (global.graphQL === false) {\n return\n }\n const globalPolicyType = buildPolicyType({\n type: 'global',\n entity: global,\n typeSuffix: 'Access',\n })\n\n fields[formatName(global.slug)] = {\n type: globalPolicyType,\n }\n })\n\n return new GraphQLObjectType({\n name: 'Access',\n fields,\n })\n}\n"],"names":["GraphQLBoolean","GraphQLNonNull","GraphQLObjectType","toWords","GraphQLJSONObject","formatName","buildFields","label","fieldsToBuild","reduce","builtFields","field","includeField","hidden","type","name","fieldName","objectTypeFields","operations","operation","capitalizedOperation","charAt","toUpperCase","slice","fields","permission","length","subFields","tabs","fieldsWithTabFields","tab","tabName","buildEntityPolicy","args","entityFields","scope","fieldsTypeName","forEach","operationTypeName","where","buildPolicyType","entity","typeSuffix","slug","graphQL","versions","auth","maxLoginAttempts","push","collectionTypeName","globalTypeName","global","buildPoliciesType","config","canAccessAdmin","Object","values","collections","collection","collectionPolicyType","globals","globalPolicyType"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/schema/buildPoliciesType.ts"],"sourcesContent":["import type {\n CollectionConfig,\n Field,\n GlobalConfig,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { GraphQLBoolean, GraphQLNonNull, GraphQLObjectType } from 'graphql'\nimport { toWords } from 'payload'\n\nimport { GraphQLJSONObject } from '../packages/graphql-type-json/index.js'\nimport { formatName } from '../utilities/formatName.js'\n\ntype OperationType =\n | 'create'\n | 'delete'\n | 'read'\n | 'readVersions'\n | 'unlock'\n | 'update'\n | 'validate'\n\ntype AccessScopes = 'docAccess' | undefined\n\ntype ObjectTypeFields = {\n [key in 'fields' | OperationType]?: { type: GraphQLObjectType }\n}\n\nconst buildFields = (label, fieldsToBuild) =>\n fieldsToBuild.reduce((builtFields, field) => {\n const includeField = !field.hidden && field.type !== 'ui'\n if (includeField) {\n if (field.name) {\n const fieldName = formatName(field.name)\n\n const objectTypeFields: ObjectTypeFields = [\n 'create',\n 'read',\n 'update',\n 'delete',\n 'validate',\n ].reduce((operations, operation) => {\n const capitalizedOperation = operation.charAt(0).toUpperCase() + operation.slice(1)\n\n return {\n ...operations,\n [operation]: {\n type: new GraphQLObjectType({\n name: `${label}_${fieldName}_${capitalizedOperation}`,\n fields: {\n permission: {\n type: new GraphQLNonNull(GraphQLBoolean),\n },\n },\n }),\n },\n }\n }, {})\n\n if (field.fields) {\n objectTypeFields.fields = {\n type: new GraphQLObjectType({\n name: `${label}_${fieldName}_Fields`,\n fields: buildFields(`${label}_${fieldName}`, field.fields),\n }),\n }\n }\n\n return {\n ...builtFields,\n [formatName(field.name)]: {\n type: new GraphQLObjectType({\n name: `${label}_${fieldName}`,\n fields: objectTypeFields,\n }),\n },\n }\n }\n\n if (!field.name && field.fields && field.fields.length) {\n const subFields = buildFields(label, field.fields)\n\n return {\n ...builtFields,\n ...subFields,\n }\n }\n\n if (field.type === 'tabs') {\n return field.tabs.reduce(\n (fieldsWithTabFields, tab) => {\n if ('name' in tab) {\n if (tab.fields.length) {\n const tabName = formatName(tab.name)\n fieldsWithTabFields[tabName] = {\n type: new GraphQLObjectType({\n name: `${label}_${tabName}`,\n fields: buildFields(`${label}_${tabName}`, tab.fields),\n }),\n }\n }\n return fieldsWithTabFields\n }\n return {\n ...fieldsWithTabFields,\n ...buildFields(label, tab.fields),\n }\n },\n { ...builtFields },\n )\n }\n }\n return builtFields\n }, {})\n\ntype BuildEntityPolicy = {\n entityFields: Field[]\n name: string\n operations: OperationType[]\n scope: AccessScopes\n}\nexport const buildEntityPolicy = (args: BuildEntityPolicy) => {\n const { name, entityFields, operations, scope } = args\n\n const fieldsTypeName = toWords(`${name}-${scope || ''}-Fields`, true)\n const fields = {\n fields: {\n type: new GraphQLObjectType({\n name: fieldsTypeName,\n fields: buildFields(fieldsTypeName, entityFields),\n }),\n },\n }\n\n operations.forEach((operation) => {\n const operationTypeName = toWords(`${name}-${operation}-${scope || 'Access'}`, true)\n\n fields[operation] = {\n type: new GraphQLObjectType({\n name: operationTypeName,\n fields: {\n permission: { type: new GraphQLNonNull(GraphQLBoolean) },\n where: { type: GraphQLJSONObject },\n },\n }),\n }\n })\n\n return fields\n}\n\ntype BuildPolicyType = {\n scope?: AccessScopes\n typeSuffix?: string\n} & (\n | {\n entity: CollectionConfig\n type: 'collection'\n }\n | {\n entity: GlobalConfig\n type: 'global'\n }\n)\nexport function buildPolicyType(args: BuildPolicyType): GraphQLObjectType {\n const { type, entity, scope, typeSuffix } = args\n const { slug, fields, graphQL, versions } = entity\n\n let operations = []\n\n if (graphQL === false) {\n return null\n }\n\n if (type === 'collection') {\n operations = ['create', 'read', 'update', 'delete', 'validate']\n\n if (\n entity.auth &&\n typeof entity.auth === 'object' &&\n typeof entity.auth.maxLoginAttempts !== 'undefined' &&\n entity.auth.maxLoginAttempts !== 0\n ) {\n operations.push('unlock')\n }\n\n if (versions) {\n operations.push('readVersions')\n }\n\n const collectionTypeName = formatName(`${slug}${typeSuffix || ''}`)\n\n return new GraphQLObjectType({\n name: collectionTypeName,\n fields: buildEntityPolicy({\n name: slug,\n entityFields: fields,\n operations,\n scope,\n }),\n })\n }\n\n // else create global type\n operations = ['read', 'update', 'validate']\n\n if (entity.versions) {\n operations.push('readVersions')\n }\n\n const globalTypeName = formatName(`${global?.graphQL?.name || slug}${typeSuffix || ''}`)\n\n return new GraphQLObjectType({\n name: globalTypeName,\n fields: buildEntityPolicy({\n name: entity.graphQL ? entity?.graphQL?.name || slug : slug,\n entityFields: entity.fields,\n operations,\n scope,\n }),\n })\n}\n\nexport function buildPoliciesType(config: SanitizedConfig): GraphQLObjectType {\n const fields = {\n canAccessAdmin: {\n type: new GraphQLNonNull(GraphQLBoolean),\n },\n }\n\n Object.values(config.collections).forEach((collection: SanitizedCollectionConfig) => {\n if (collection.graphQL === false) {\n return\n }\n const collectionPolicyType = buildPolicyType({\n type: 'collection',\n entity: collection,\n typeSuffix: 'Access',\n })\n\n fields[formatName(collection.slug)] = {\n type: collectionPolicyType,\n }\n })\n\n Object.values(config.globals).forEach((global: SanitizedGlobalConfig) => {\n if (global.graphQL === false) {\n return\n }\n const globalPolicyType = buildPolicyType({\n type: 'global',\n entity: global,\n typeSuffix: 'Access',\n })\n\n fields[formatName(global.slug)] = {\n type: globalPolicyType,\n }\n })\n\n return new GraphQLObjectType({\n name: 'Access',\n fields,\n })\n}\n"],"names":["GraphQLBoolean","GraphQLNonNull","GraphQLObjectType","toWords","GraphQLJSONObject","formatName","buildFields","label","fieldsToBuild","reduce","builtFields","field","includeField","hidden","type","name","fieldName","objectTypeFields","operations","operation","capitalizedOperation","charAt","toUpperCase","slice","fields","permission","length","subFields","tabs","fieldsWithTabFields","tab","tabName","buildEntityPolicy","args","entityFields","scope","fieldsTypeName","forEach","operationTypeName","where","buildPolicyType","entity","typeSuffix","slug","graphQL","versions","auth","maxLoginAttempts","push","collectionTypeName","globalTypeName","global","buildPoliciesType","config","canAccessAdmin","Object","values","collections","collection","collectionPolicyType","globals","globalPolicyType"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { GraphQLObjectType } from 'graphql';
2
+ export declare const buildValidationResultType: () => GraphQLObjectType;
3
+ //# sourceMappingURL=buildValidationResultType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildValidationResultType.d.ts","sourceRoot":"","sources":["../../src/schema/buildValidationResultType.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,iBAAiB,EAElB,MAAM,SAAS,CAAA;AAWhB,eAAO,MAAM,yBAAyB,QAAO,iBAU5C,CAAA"}
@@ -0,0 +1,30 @@
1
+ import { GraphQLBoolean, GraphQLList, GraphQLNonNull, GraphQLObjectType, GraphQLString } from 'graphql';
2
+ const validationFieldErrorType = new GraphQLObjectType({
3
+ name: 'PayloadValidationFieldError',
4
+ fields: {
5
+ locale: {
6
+ type: GraphQLString
7
+ },
8
+ message: {
9
+ type: new GraphQLNonNull(GraphQLString)
10
+ },
11
+ path: {
12
+ type: new GraphQLNonNull(GraphQLString)
13
+ }
14
+ }
15
+ });
16
+ export const buildValidationResultType = ()=>{
17
+ return new GraphQLObjectType({
18
+ name: 'PayloadValidationResult',
19
+ fields: {
20
+ errors: {
21
+ type: new GraphQLNonNull(new GraphQLList(new GraphQLNonNull(validationFieldErrorType)))
22
+ },
23
+ valid: {
24
+ type: new GraphQLNonNull(GraphQLBoolean)
25
+ }
26
+ }
27
+ });
28
+ };
29
+
30
+ //# sourceMappingURL=buildValidationResultType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/schema/buildValidationResultType.ts"],"sourcesContent":["import {\n GraphQLBoolean,\n GraphQLList,\n GraphQLNonNull,\n GraphQLObjectType,\n GraphQLString,\n} from 'graphql'\n\nconst validationFieldErrorType = new GraphQLObjectType({\n name: 'PayloadValidationFieldError',\n fields: {\n locale: { type: GraphQLString },\n message: { type: new GraphQLNonNull(GraphQLString) },\n path: { type: new GraphQLNonNull(GraphQLString) },\n },\n})\n\nexport const buildValidationResultType = (): GraphQLObjectType => {\n return new GraphQLObjectType({\n name: 'PayloadValidationResult',\n fields: {\n errors: {\n type: new GraphQLNonNull(new GraphQLList(new GraphQLNonNull(validationFieldErrorType))),\n },\n valid: { type: new GraphQLNonNull(GraphQLBoolean) },\n },\n })\n}\n"],"names":["GraphQLBoolean","GraphQLList","GraphQLNonNull","GraphQLObjectType","GraphQLString","validationFieldErrorType","name","fields","locale","type","message","path","buildValidationResultType","errors","valid"],"mappings":"AAAA,SACEA,cAAc,EACdC,WAAW,EACXC,cAAc,EACdC,iBAAiB,EACjBC,aAAa,QACR,UAAS;AAEhB,MAAMC,2BAA2B,IAAIF,kBAAkB;IACrDG,MAAM;IACNC,QAAQ;QACNC,QAAQ;YAAEC,MAAML;QAAc;QAC9BM,SAAS;YAAED,MAAM,IAAIP,eAAeE;QAAe;QACnDO,MAAM;YAAEF,MAAM,IAAIP,eAAeE;QAAe;IAClD;AACF;AAEA,OAAO,MAAMQ,4BAA4B;IACvC,OAAO,IAAIT,kBAAkB;QAC3BG,MAAM;QACNC,QAAQ;YACNM,QAAQ;gBACNJ,MAAM,IAAIP,eAAe,IAAID,YAAY,IAAIC,eAAeG;YAC9D;YACAS,OAAO;gBAAEL,MAAM,IAAIP,eAAeF;YAAgB;QACpD;IACF;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"initCollections.d.ts","sourceRoot":"","sources":["../../src/schema/initCollections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,WAAW,EAEX,eAAe,EAChB,MAAM,SAAS,CAAA;AAyChB,KAAK,0BAA0B,GAAG;IAChC,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,WAAW,CAAA;CAC3B,CAAA;AACD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,0BAA0B,GAAG,IAAI,CAshB3F"}
1
+ {"version":3,"file":"initCollections.d.ts","sourceRoot":"","sources":["../../src/schema/initCollections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,WAAW,EAEX,eAAe,EAChB,MAAM,SAAS,CAAA;AA2ChB,KAAK,0BAA0B,GAAG;IAChC,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,WAAW,CAAA;CAC3B,CAAA;AACD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,0BAA0B,GAAG,IAAI,CA2jB3F"}
@@ -19,8 +19,10 @@ import { findResolver } from '../resolvers/collections/find.js';
19
19
  import { findByIDResolver } from '../resolvers/collections/findByID.js';
20
20
  import { findVersionByIDResolver } from '../resolvers/collections/findVersionByID.js';
21
21
  import { findVersionsResolver } from '../resolvers/collections/findVersions.js';
22
+ import { renameFileResolver } from '../resolvers/collections/renameFile.js';
22
23
  import { restoreVersionResolver } from '../resolvers/collections/restoreVersion.js';
23
24
  import { updateResolver } from '../resolvers/collections/update.js';
25
+ import { validateResolver } from '../resolvers/collections/validate.js';
24
26
  import { formatName } from '../utilities/formatName.js';
25
27
  import { buildMutationInputType, getCollectionIDType } from './buildMutationInputType.js';
26
28
  import { buildObjectType } from './buildObjectType.js';
@@ -136,6 +138,15 @@ export function initCollections({ config, graphqlResult }) {
136
138
  if (updateMutationInputType) {
137
139
  collection.graphQL.updateMutationInputType = new GraphQLNonNull(updateMutationInputType);
138
140
  }
141
+ const validationMutationInputType = buildMutationInputType({
142
+ name: `${singularName}Validation`,
143
+ config,
144
+ fields: mutationCreateInputFields,
145
+ forceNullable: true,
146
+ graphqlResult,
147
+ parentIsLocalized: false,
148
+ parentName: `${singularName}Validation`
149
+ });
139
150
  const queriesEnabled = typeof collectionConfig.graphQL !== 'object' || !collectionConfig.graphQL.disableQueries;
140
151
  const mutationsEnabled = typeof collectionConfig.graphQL !== 'object' || !collectionConfig.graphQL.disableMutations;
141
152
  if (queriesEnabled) {
@@ -293,6 +304,28 @@ export function initCollections({ config, graphqlResult }) {
293
304
  },
294
305
  resolve: updateResolver(collection)
295
306
  };
307
+ graphqlResult.Mutation.fields[`validate${singularName}`] = {
308
+ type: graphqlResult.types.validationResultType,
309
+ args: {
310
+ id: {
311
+ type: idType
312
+ },
313
+ ...validationMutationInputType ? {
314
+ data: {
315
+ type: validationMutationInputType
316
+ }
317
+ } : {},
318
+ draft: {
319
+ type: GraphQLBoolean
320
+ },
321
+ ...config.localization ? {
322
+ locale: {
323
+ type: graphqlResult.types.localeInputType
324
+ }
325
+ } : {}
326
+ },
327
+ resolve: validateResolver(collection)
328
+ };
296
329
  graphqlResult.Mutation.fields[`delete${singularName}`] = {
297
330
  type: collection.graphQL.type,
298
331
  args: {
@@ -426,6 +459,23 @@ export function initCollections({ config, graphqlResult }) {
426
459
  };
427
460
  }
428
461
  }
462
+ if (mutationsEnabled && collectionConfig.upload) {
463
+ graphqlResult.Mutation.fields[`renameFile${formatName(singularName)}`] = {
464
+ type: collection.graphQL.type,
465
+ args: {
466
+ id: {
467
+ type: new GraphQLNonNull(idType)
468
+ },
469
+ draft: {
470
+ type: GraphQLBoolean
471
+ },
472
+ filename: {
473
+ type: new GraphQLNonNull(GraphQLString)
474
+ }
475
+ },
476
+ resolve: renameFileResolver(collection)
477
+ };
478
+ }
429
479
  if (collectionConfig.auth) {
430
480
  const authFields = collectionConfig.auth.disableLocalStrategy || collectionConfig.auth.loginWithUsername && !collectionConfig.auth.loginWithUsername.allowEmailLogin && !collectionConfig.auth.loginWithUsername.requireEmail ? [] : [
431
481
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/initCollections.ts"],"sourcesContent":["import type {\n Collection,\n Field,\n GraphQLInfo,\n SanitizedCollectionConfig,\n SanitizedConfig,\n} 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, getLoginOptions } 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}\nexport function initCollections({ 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) {\n return\n }\n\n let singularName\n let pluralName\n\n const fromSlug = formatNames(collection.config.slug)\n\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: new GraphQLNonNull(idType) }\n whereInputFields.push({\n name: 'id',\n type: config.db.defaultIDType as 'text',\n })\n }\n\n if (collectionConfig.auth) {\n baseFields._strategy = { type: GraphQLString }\n }\n\n const forceNullableObjectType = Boolean(versions?.drafts)\n\n collection.graphQL.type = buildObjectType({\n name: singularName,\n baseFields,\n collectionSlug: collectionConfig.slug,\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 const mutationInputFields = [...fields]\n\n if (\n collectionConfig.auth &&\n (!collectionConfig.auth.disableLocalStrategy ||\n (typeof collectionConfig.auth.disableLocalStrategy === 'object' &&\n collectionConfig.auth.disableLocalStrategy.optionalPassword))\n ) {\n mutationInputFields.push({\n name: 'password',\n type: 'text',\n label: 'Password',\n required: !(\n typeof collectionConfig.auth.disableLocalStrategy === 'object' &&\n collectionConfig.auth.disableLocalStrategy.optionalPassword\n ),\n })\n }\n\n let mutationCreateInputFields = mutationInputFields\n\n if (\n config.db.allowIDOnCreate &&\n !collectionConfig.flattenedFields.some((field) => field.name === 'id')\n ) {\n mutationCreateInputFields = [\n ...mutationCreateInputFields,\n {\n name: 'id',\n type: config.db.defaultIDType,\n } as Field,\n ]\n }\n\n const createMutationInputType = buildMutationInputType({\n name: singularName,\n config,\n fields: mutationCreateInputFields,\n graphqlResult,\n parentIsLocalized: false,\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: mutationInputFields.filter(\n (field) => !(fieldAffectsData(field) && field.name === 'id'),\n ),\n forceNullable: true,\n graphqlResult,\n parentIsLocalized: false,\n parentName: `${singularName}Update`,\n })\n if (updateMutationInputType) {\n collection.graphQL.updateMutationInputType = new GraphQLNonNull(updateMutationInputType)\n }\n\n const queriesEnabled =\n typeof collectionConfig.graphQL !== 'object' || !collectionConfig.graphQL.disableQueries\n const mutationsEnabled =\n typeof collectionConfig.graphQL !== 'object' || !collectionConfig.graphQL.disableMutations\n\n if (queriesEnabled) {\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 select: { type: GraphQLBoolean },\n trash: { type: GraphQLBoolean },\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 pagination: { type: GraphQLBoolean },\n select: { type: GraphQLBoolean },\n sort: { type: GraphQLString },\n trash: { type: GraphQLBoolean },\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 trash: { 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\n if (mutationsEnabled) {\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 trash: { type: GraphQLBoolean },\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 trash: { type: GraphQLBoolean },\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 ...(createMutationInputType\n ? { data: { type: collection.graphQL.mutationInputType } }\n : {}),\n },\n resolve: duplicateResolver(collection),\n }\n }\n }\n\n if (collectionConfig.versions) {\n const versionIDType = config.db.defaultIDType === 'text' ? GraphQLString : GraphQLInt\n const versionCollectionFields: Field[] = [\n ...buildVersionCollectionFields(config, collectionConfig),\n {\n name: 'id',\n type: config.db.defaultIDType as 'text',\n },\n {\n name: 'createdAt',\n type: 'date',\n label: ({ t }) => t('general:createdAt'),\n },\n {\n name: 'updatedAt',\n type: 'date',\n label: ({ t }) => t('general:updatedAt'),\n },\n ]\n\n collection.graphQL.versionType = buildObjectType({\n name: `${singularName}Version`,\n collectionSlug: collectionConfig.slug,\n config,\n fields: versionCollectionFields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: `${singularName}Version`,\n })\n\n if (queriesEnabled) {\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 trash: { type: GraphQLBoolean },\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 pagination: { type: GraphQLBoolean },\n select: { type: GraphQLBoolean },\n sort: { type: GraphQLString },\n trash: { type: GraphQLBoolean },\n },\n resolve: findVersionsResolver(collection),\n }\n }\n\n if (mutationsEnabled) {\n graphqlResult.Mutation.fields[`restoreVersion${formatName(singularName)}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: versionIDType },\n draft: { type: GraphQLBoolean },\n },\n resolve: restoreVersionResolver(collection),\n }\n }\n }\n\n if (collectionConfig.auth) {\n const authFields: Field[] =\n collectionConfig.auth.disableLocalStrategy ||\n (collectionConfig.auth.loginWithUsername &&\n !collectionConfig.auth.loginWithUsername.allowEmailLogin &&\n !collectionConfig.auth.loginWithUsername.requireEmail)\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 name: '_strategy',\n type: 'text',\n },\n ],\n graphqlResult,\n parentName: formatName(`${slug}JWT`),\n })\n\n if (queriesEnabled) {\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\n if (mutationsEnabled) {\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 resolve: refresh(collection),\n }\n\n graphqlResult.Mutation.fields[`logout${singularName}`] = {\n type: GraphQLString,\n args: {\n allSessions: { type: GraphQLBoolean },\n },\n resolve: logout(collection),\n }\n\n if (!collectionConfig.auth.disableLocalStrategy) {\n const authArgs = {}\n\n const { canLoginWithEmail, canLoginWithUsername } = getLoginOptions(\n collectionConfig.auth.loginWithUsername,\n )\n\n if (canLoginWithEmail) {\n authArgs['email'] = { type: new GraphQLNonNull(GraphQLString) }\n }\n if (canLoginWithUsername) {\n authArgs['username'] = { type: new GraphQLNonNull(GraphQLString) }\n }\n\n if (collectionConfig.auth.maxLoginAttempts > 0) {\n graphqlResult.Mutation.fields[`unlock${singularName}`] = {\n type: new GraphQLNonNull(GraphQLBoolean),\n args: authArgs,\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 ...authArgs,\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 ...authArgs,\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}\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLObjectType","GraphQLString","buildVersionCollectionFields","flattenTopLevelFields","formatNames","toWords","fieldAffectsData","getLoginOptions","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","initCollections","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","auth","_strategy","forceNullableObjectType","Boolean","drafts","collectionSlug","forceNullable","parentName","paginatedType","whereInputType","mutationInputFields","disableLocalStrategy","optionalPassword","label","required","mutationCreateInputFields","allowIDOnCreate","flattenedFields","some","createMutationInputType","parentIsLocalized","mutationInputType","updateMutationInputType","filter","queriesEnabled","disableQueries","mutationsEnabled","disableMutations","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","select","trash","resolve","where","limit","page","pagination","sort","totalDocs","entity","scope","typeSuffix","Mutation","data","autosave","disableDuplicate","versionIDType","versionCollectionFields","t","versionType","authFields","loginWithUsername","allowEmailLogin","requireEmail","JWT","saveToJWT","exp","token","user","refreshedToken","allSessions","authArgs","canLoginWithEmail","canLoginWithUsername","maxLoginAttempts","password"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/schema/initCollections.ts"],"sourcesContent":["import type {\n Collection,\n Field,\n GraphQLInfo,\n SanitizedCollectionConfig,\n SanitizedConfig,\n} 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, getLoginOptions } 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 { renameFileResolver } from '../resolvers/collections/renameFile.js'\nimport { restoreVersionResolver } from '../resolvers/collections/restoreVersion.js'\nimport { updateResolver } from '../resolvers/collections/update.js'\nimport { validateResolver } from '../resolvers/collections/validate.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}\nexport function initCollections({ 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) {\n return\n }\n\n let singularName\n let pluralName\n\n const fromSlug = formatNames(collection.config.slug)\n\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: new GraphQLNonNull(idType) }\n whereInputFields.push({\n name: 'id',\n type: config.db.defaultIDType as 'text',\n })\n }\n\n if (collectionConfig.auth) {\n baseFields._strategy = { type: GraphQLString }\n }\n\n const forceNullableObjectType = Boolean(versions?.drafts)\n\n collection.graphQL.type = buildObjectType({\n name: singularName,\n baseFields,\n collectionSlug: collectionConfig.slug,\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 const mutationInputFields = [...fields]\n\n if (\n collectionConfig.auth &&\n (!collectionConfig.auth.disableLocalStrategy ||\n (typeof collectionConfig.auth.disableLocalStrategy === 'object' &&\n collectionConfig.auth.disableLocalStrategy.optionalPassword))\n ) {\n mutationInputFields.push({\n name: 'password',\n type: 'text',\n label: 'Password',\n required: !(\n typeof collectionConfig.auth.disableLocalStrategy === 'object' &&\n collectionConfig.auth.disableLocalStrategy.optionalPassword\n ),\n })\n }\n\n let mutationCreateInputFields = mutationInputFields\n\n if (\n config.db.allowIDOnCreate &&\n !collectionConfig.flattenedFields.some((field) => field.name === 'id')\n ) {\n mutationCreateInputFields = [\n ...mutationCreateInputFields,\n {\n name: 'id',\n type: config.db.defaultIDType,\n } as Field,\n ]\n }\n\n const createMutationInputType = buildMutationInputType({\n name: singularName,\n config,\n fields: mutationCreateInputFields,\n graphqlResult,\n parentIsLocalized: false,\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: mutationInputFields.filter(\n (field) => !(fieldAffectsData(field) && field.name === 'id'),\n ),\n forceNullable: true,\n graphqlResult,\n parentIsLocalized: false,\n parentName: `${singularName}Update`,\n })\n if (updateMutationInputType) {\n collection.graphQL.updateMutationInputType = new GraphQLNonNull(updateMutationInputType)\n }\n\n const validationMutationInputType = buildMutationInputType({\n name: `${singularName}Validation`,\n config,\n fields: mutationCreateInputFields,\n forceNullable: true,\n graphqlResult,\n parentIsLocalized: false,\n parentName: `${singularName}Validation`,\n })\n\n const queriesEnabled =\n typeof collectionConfig.graphQL !== 'object' || !collectionConfig.graphQL.disableQueries\n const mutationsEnabled =\n typeof collectionConfig.graphQL !== 'object' || !collectionConfig.graphQL.disableMutations\n\n if (queriesEnabled) {\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 select: { type: GraphQLBoolean },\n trash: { type: GraphQLBoolean },\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 pagination: { type: GraphQLBoolean },\n select: { type: GraphQLBoolean },\n sort: { type: GraphQLString },\n trash: { type: GraphQLBoolean },\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 trash: { 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\n if (mutationsEnabled) {\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 trash: { type: GraphQLBoolean },\n },\n resolve: updateResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`validate${singularName}`] = {\n type: graphqlResult.types.validationResultType,\n args: {\n id: { type: idType },\n ...(validationMutationInputType ? { data: { type: validationMutationInputType } } : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: validateResolver(collection),\n }\n\n graphqlResult.Mutation.fields[`delete${singularName}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n trash: { type: GraphQLBoolean },\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 ...(createMutationInputType\n ? { data: { type: collection.graphQL.mutationInputType } }\n : {}),\n },\n resolve: duplicateResolver(collection),\n }\n }\n }\n\n if (collectionConfig.versions) {\n const versionIDType = config.db.defaultIDType === 'text' ? GraphQLString : GraphQLInt\n const versionCollectionFields: Field[] = [\n ...buildVersionCollectionFields(config, collectionConfig),\n {\n name: 'id',\n type: config.db.defaultIDType as 'text',\n },\n {\n name: 'createdAt',\n type: 'date',\n label: ({ t }) => t('general:createdAt'),\n },\n {\n name: 'updatedAt',\n type: 'date',\n label: ({ t }) => t('general:updatedAt'),\n },\n ]\n\n collection.graphQL.versionType = buildObjectType({\n name: `${singularName}Version`,\n collectionSlug: collectionConfig.slug,\n config,\n fields: versionCollectionFields,\n forceNullable: forceNullableObjectType,\n graphqlResult,\n parentName: `${singularName}Version`,\n })\n\n if (queriesEnabled) {\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 trash: { type: GraphQLBoolean },\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 pagination: { type: GraphQLBoolean },\n select: { type: GraphQLBoolean },\n sort: { type: GraphQLString },\n trash: { type: GraphQLBoolean },\n },\n resolve: findVersionsResolver(collection),\n }\n }\n\n if (mutationsEnabled) {\n graphqlResult.Mutation.fields[`restoreVersion${formatName(singularName)}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: versionIDType },\n draft: { type: GraphQLBoolean },\n },\n resolve: restoreVersionResolver(collection),\n }\n }\n }\n\n if (mutationsEnabled && collectionConfig.upload) {\n graphqlResult.Mutation.fields[`renameFile${formatName(singularName)}`] = {\n type: collection.graphQL.type,\n args: {\n id: { type: new GraphQLNonNull(idType) },\n draft: { type: GraphQLBoolean },\n filename: { type: new GraphQLNonNull(GraphQLString) },\n },\n resolve: renameFileResolver(collection),\n }\n }\n\n if (collectionConfig.auth) {\n const authFields: Field[] =\n collectionConfig.auth.disableLocalStrategy ||\n (collectionConfig.auth.loginWithUsername &&\n !collectionConfig.auth.loginWithUsername.allowEmailLogin &&\n !collectionConfig.auth.loginWithUsername.requireEmail)\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 name: '_strategy',\n type: 'text',\n },\n ],\n graphqlResult,\n parentName: formatName(`${slug}JWT`),\n })\n\n if (queriesEnabled) {\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\n if (mutationsEnabled) {\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 resolve: refresh(collection),\n }\n\n graphqlResult.Mutation.fields[`logout${singularName}`] = {\n type: GraphQLString,\n args: {\n allSessions: { type: GraphQLBoolean },\n },\n resolve: logout(collection),\n }\n\n if (!collectionConfig.auth.disableLocalStrategy) {\n const authArgs = {}\n\n const { canLoginWithEmail, canLoginWithUsername } = getLoginOptions(\n collectionConfig.auth.loginWithUsername,\n )\n\n if (canLoginWithEmail) {\n authArgs['email'] = { type: new GraphQLNonNull(GraphQLString) }\n }\n if (canLoginWithUsername) {\n authArgs['username'] = { type: new GraphQLNonNull(GraphQLString) }\n }\n\n if (collectionConfig.auth.maxLoginAttempts > 0) {\n graphqlResult.Mutation.fields[`unlock${singularName}`] = {\n type: new GraphQLNonNull(GraphQLBoolean),\n args: authArgs,\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 ...authArgs,\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 ...authArgs,\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}\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLObjectType","GraphQLString","buildVersionCollectionFields","flattenTopLevelFields","formatNames","toWords","fieldAffectsData","getLoginOptions","forgotPassword","init","login","logout","me","refresh","resetPassword","unlock","verifyEmail","countResolver","createResolver","getDeleteResolver","docAccessResolver","duplicateResolver","findResolver","findByIDResolver","findVersionByIDResolver","findVersionsResolver","renameFileResolver","restoreVersionResolver","updateResolver","validateResolver","formatName","buildMutationInputType","getCollectionIDType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initCollections","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","auth","_strategy","forceNullableObjectType","Boolean","drafts","collectionSlug","forceNullable","parentName","paginatedType","whereInputType","mutationInputFields","disableLocalStrategy","optionalPassword","label","required","mutationCreateInputFields","allowIDOnCreate","flattenedFields","some","createMutationInputType","parentIsLocalized","mutationInputType","updateMutationInputType","filter","validationMutationInputType","queriesEnabled","disableQueries","mutationsEnabled","disableMutations","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","select","trash","resolve","where","limit","page","pagination","sort","totalDocs","entity","scope","typeSuffix","Mutation","data","autosave","validationResultType","disableDuplicate","versionIDType","versionCollectionFields","t","versionType","upload","filename","authFields","loginWithUsername","allowEmailLogin","requireEmail","JWT","saveToJWT","exp","token","user","refreshedToken","allSessions","authArgs","canLoginWithEmail","canLoginWithUsername","maxLoginAttempts","password"],"mappings":"AAQA,SACEA,cAAc,EACdC,UAAU,EACVC,cAAc,EACdC,iBAAiB,EACjBC,aAAa,QACR,UAAS;AAChB,SAASC,4BAA4B,EAAEC,qBAAqB,EAAEC,WAAW,EAAEC,OAAO,QAAQ,UAAS;AACnG,SAASC,gBAAgB,EAAEC,eAAe,QAAQ,iBAAgB;AAIlE,SAASC,cAAc,QAAQ,sCAAqC;AACpE,SAASC,IAAI,QAAQ,4BAA2B;AAChD,SAASC,KAAK,QAAQ,6BAA4B;AAClD,SAASC,MAAM,QAAQ,8BAA6B;AACpD,SAASC,EAAE,QAAQ,0BAAyB;AAC5C,SAASC,OAAO,QAAQ,+BAA8B;AACtD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,MAAM,QAAQ,8BAA6B;AACpD,SAASC,WAAW,QAAQ,mCAAkC;AAC9D,SAASC,aAAa,QAAQ,oCAAmC;AACjE,SAASC,cAAc,QAAQ,qCAAoC;AACnE,SAASC,iBAAiB,QAAQ,qCAAoC;AACtE,SAASC,iBAAiB,QAAQ,wCAAuC;AACzE,SAASC,iBAAiB,QAAQ,wCAAuC;AACzE,SAASC,YAAY,QAAQ,mCAAkC;AAC/D,SAASC,gBAAgB,QAAQ,uCAAsC;AACvE,SAASC,uBAAuB,QAAQ,8CAA6C;AACrF,SAASC,oBAAoB,QAAQ,2CAA0C;AAC/E,SAASC,kBAAkB,QAAQ,yCAAwC;AAC3E,SAASC,sBAAsB,QAAQ,6CAA4C;AACnF,SAASC,cAAc,QAAQ,qCAAoC;AACnE,SAASC,gBAAgB,QAAQ,uCAAsC;AACvE,SAASC,UAAU,QAAQ,6BAA4B;AACvD,SAASC,sBAAsB,EAAEC,mBAAmB,QAAQ,8BAA6B;AACzF,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,sBAAsB,QAAQ,8BAA6B;AACpE,SAASC,eAAe,QAAQ,yBAAwB;AACxD,SAASC,mBAAmB,QAAQ,2BAA0B;AAM9D,OAAO,SAASC,gBAAgB,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;YACZ;QACF;QAEA,IAAIE;QACJ,IAAIC;QAEJ,MAAMC,WAAWhD,YAAYyC,WAAWP,MAAM,CAACM,IAAI;QAEnD,IAAII,QAAQE,YAAY,EAAE;YACxBA,eAAe7C,QAAQ2C,QAAQE,YAAY,EAAE;QAC/C,OAAO;YACLA,eAAeE,SAASC,QAAQ;QAClC;QACA,IAAIL,QAAQG,UAAU,EAAE;YACtBA,aAAa9C,QAAQ2C,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,cAAc;QACnC;QAEAL,WAAWG,OAAO,GAAG,CAAC;QAEtB,MAAMO,aACJpD,sBAAsB4C,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,MAAM,IAAIlE,eAAe4D;YAAQ;YACnDI,iBAAiBG,IAAI,CAAC;gBACpBR,MAAM;gBACNO,MAAM3B,OAAOsB,EAAE,CAACC,aAAa;YAC/B;QACF;QAEA,IAAIf,iBAAiBqB,IAAI,EAAE;YACzBL,WAAWM,SAAS,GAAG;gBAAEH,MAAMhE;YAAc;QAC/C;QAEA,MAAMoE,0BAA0BC,QAAQrB,UAAUsB;QAElD1B,WAAWG,OAAO,CAACiB,IAAI,GAAGhC,gBAAgB;YACxCyB,MAAMR;YACNY;YACAU,gBAAgB1B,iBAAiBF,IAAI;YACrCN;YACAS;YACA0B,eAAeJ;YACf9B;YACAmC,YAAYxB;QACd;QAEAL,WAAWG,OAAO,CAAC2B,aAAa,GAAGzC,uBAAuBiB,YAAYN,WAAWG,OAAO,CAACiB,IAAI;QAE7FpB,WAAWG,OAAO,CAAC4B,cAAc,GAAGxC,oBAAoB;YACtDsB,MAAMR;YACNH,QAAQgB;YACRW,YAAYxB;QACd;QAEA,MAAM2B,sBAAsB;eAAI9B;SAAO;QAEvC,IACED,iBAAiBqB,IAAI,IACpB,CAAA,CAACrB,iBAAiBqB,IAAI,CAACW,oBAAoB,IACzC,OAAOhC,iBAAiBqB,IAAI,CAACW,oBAAoB,KAAK,YACrDhC,iBAAiBqB,IAAI,CAACW,oBAAoB,CAACC,gBAAgB,GAC/D;YACAF,oBAAoBX,IAAI,CAAC;gBACvBR,MAAM;gBACNO,MAAM;gBACNe,OAAO;gBACPC,UAAU,CACR,CAAA,OAAOnC,iBAAiBqB,IAAI,CAACW,oBAAoB,KAAK,YACtDhC,iBAAiBqB,IAAI,CAACW,oBAAoB,CAACC,gBAAgB,AAAD;YAE9D;QACF;QAEA,IAAIG,4BAA4BL;QAEhC,IACEvC,OAAOsB,EAAE,CAACuB,eAAe,IACzB,CAACrC,iBAAiBsC,eAAe,CAACC,IAAI,CAAC,CAAC5B,QAAUA,MAAMC,IAAI,KAAK,OACjE;YACAwB,4BAA4B;mBACvBA;gBACH;oBACExB,MAAM;oBACNO,MAAM3B,OAAOsB,EAAE,CAACC,aAAa;gBAC/B;aACD;QACH;QAEA,MAAMyB,0BAA0BvD,uBAAuB;YACrD2B,MAAMR;YACNZ;YACAS,QAAQmC;YACR3C;YACAgD,mBAAmB;YACnBb,YAAYxB;QACd;QACA,IAAIoC,yBAAyB;YAC3BzC,WAAWG,OAAO,CAACwC,iBAAiB,GAAG,IAAIzF,eAAeuF;QAC5D;QAEA,MAAMG,0BAA0B1D,uBAAuB;YACrD2B,MAAM,GAAGR,aAAa,MAAM,CAAC;YAC7BZ;YACAS,QAAQ8B,oBAAoBa,MAAM,CAChC,CAACjC,QAAU,CAAEnD,CAAAA,iBAAiBmD,UAAUA,MAAMC,IAAI,KAAK,IAAG;YAE5De,eAAe;YACflC;YACAgD,mBAAmB;YACnBb,YAAY,GAAGxB,aAAa,MAAM,CAAC;QACrC;QACA,IAAIuC,yBAAyB;YAC3B5C,WAAWG,OAAO,CAACyC,uBAAuB,GAAG,IAAI1F,eAAe0F;QAClE;QAEA,MAAME,8BAA8B5D,uBAAuB;YACzD2B,MAAM,GAAGR,aAAa,UAAU,CAAC;YACjCZ;YACAS,QAAQmC;YACRT,eAAe;YACflC;YACAgD,mBAAmB;YACnBb,YAAY,GAAGxB,aAAa,UAAU,CAAC;QACzC;QAEA,MAAM0C,iBACJ,OAAO9C,iBAAiBE,OAAO,KAAK,YAAY,CAACF,iBAAiBE,OAAO,CAAC6C,cAAc;QAC1F,MAAMC,mBACJ,OAAOhD,iBAAiBE,OAAO,KAAK,YAAY,CAACF,iBAAiBE,OAAO,CAAC+C,gBAAgB;QAE5F,IAAIH,gBAAgB;YAClBrD,cAAcyD,KAAK,CAACjD,MAAM,CAACG,aAAa,GAAG;gBACzCe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BgC,MAAM;oBACJjC,IAAI;wBAAEC,MAAM,IAAIlE,eAAe4D;oBAAQ;oBACvCuC,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9B,GAAIyC,OAAO6D,YAAY,GACnB;wBACEC,gBAAgB;4BAAEnC,MAAM1B,cAAc8D,KAAK,CAACC,uBAAuB;wBAAC;wBACpEC,QAAQ;4BAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;oBACNC,QAAQ;wBAAExC,MAAMpE;oBAAe;oBAC/B6G,OAAO;wBAAEzC,MAAMpE;oBAAe;gBAChC;gBACA8G,SAASpF,iBAAiBsB;YAC5B;YAEAN,cAAcyD,KAAK,CAACjD,MAAM,CAACI,WAAW,GAAG;gBACvCc,MAAM/B,uBAAuBiB,YAAYN,WAAWG,OAAO,CAACiB,IAAI;gBAChEgC,MAAM;oBACJC,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9B+G,OAAO;wBAAE3C,MAAMpB,WAAWG,OAAO,CAAC4B,cAAc;oBAAC;oBACjD,GAAItC,OAAO6D,YAAY,GACnB;wBACEC,gBAAgB;4BAAEnC,MAAM1B,cAAc8D,KAAK,CAACC,uBAAuB;wBAAC;wBACpEC,QAAQ;4BAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;oBACNK,OAAO;wBAAE5C,MAAMnE;oBAAW;oBAC1BgH,MAAM;wBAAE7C,MAAMnE;oBAAW;oBACzBiH,YAAY;wBAAE9C,MAAMpE;oBAAe;oBACnC4G,QAAQ;wBAAExC,MAAMpE;oBAAe;oBAC/BmH,MAAM;wBAAE/C,MAAMhE;oBAAc;oBAC5ByG,OAAO;wBAAEzC,MAAMpE;oBAAe;gBAChC;gBACA8G,SAASrF,aAAauB;YACxB;YAEAN,cAAcyD,KAAK,CAACjD,MAAM,CAAC,CAAC,KAAK,EAAEI,YAAY,CAAC,GAAG;gBACjDc,MAAM,IAAIjE,kBAAkB;oBAC1B0D,MAAM,CAAC,KAAK,EAAEP,YAAY;oBAC1BJ,QAAQ;wBACNkE,WAAW;4BAAEhD,MAAMnE;wBAAW;oBAChC;gBACF;gBACAmG,MAAM;oBACJC,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9B6G,OAAO;wBAAEzC,MAAMpE;oBAAe;oBAC9B+G,OAAO;wBAAE3C,MAAMpB,WAAWG,OAAO,CAAC4B,cAAc;oBAAC;oBACjD,GAAItC,OAAO6D,YAAY,GACnB;wBACEI,QAAQ;4BAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;gBACR;gBACAG,SAAS1F,cAAc4B;YACzB;YAEAN,cAAcyD,KAAK,CAACjD,MAAM,CAAC,CAAC,SAAS,EAAEG,cAAc,CAAC,GAAG;gBACvDe,MAAM9B,gBAAgB;oBACpB8B,MAAM;oBACNiD,QAAQpE;oBACRqE,OAAO;oBACPC,YAAY;gBACd;gBACAnB,MAAM;oBACJjC,IAAI;wBAAEC,MAAM,IAAIlE,eAAe4D;oBAAQ;gBACzC;gBACAgD,SAASvF,kBAAkByB;YAC7B;QACF;QAEA,IAAIiD,kBAAkB;YACpBvD,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,MAAM,EAAEG,cAAc,CAAC,GAAG;gBACvDe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BgC,MAAM;oBACJ,GAAIX,0BACA;wBAAEgC,MAAM;4BAAErD,MAAMpB,WAAWG,OAAO,CAACwC,iBAAiB;wBAAC;oBAAE,IACvD,CAAC,CAAC;oBACNU,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9B,GAAIyC,OAAO6D,YAAY,GACnB;wBACEI,QAAQ;4BAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;gBACR;gBACAG,SAASzF,eAAe2B;YAC1B;YAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,MAAM,EAAEG,cAAc,CAAC,GAAG;gBACvDe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BgC,MAAM;oBACJjC,IAAI;wBAAEC,MAAM,IAAIlE,eAAe4D;oBAAQ;oBACvC4D,UAAU;wBAAEtD,MAAMpE;oBAAe;oBACjC,GAAI4F,0BACA;wBAAE6B,MAAM;4BAAErD,MAAMpB,WAAWG,OAAO,CAACyC,uBAAuB;wBAAC;oBAAE,IAC7D,CAAC,CAAC;oBACNS,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9B,GAAIyC,OAAO6D,YAAY,GACnB;wBACEI,QAAQ;4BAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;oBACNE,OAAO;wBAAEzC,MAAMpE;oBAAe;gBAChC;gBACA8G,SAAS/E,eAAeiB;YAC1B;YAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,QAAQ,EAAEG,cAAc,CAAC,GAAG;gBACzDe,MAAM1B,cAAc8D,KAAK,CAACmB,oBAAoB;gBAC9CvB,MAAM;oBACJjC,IAAI;wBAAEC,MAAMN;oBAAO;oBACnB,GAAIgC,8BAA8B;wBAAE2B,MAAM;4BAAErD,MAAM0B;wBAA4B;oBAAE,IAAI,CAAC,CAAC;oBACtFO,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9B,GAAIyC,OAAO6D,YAAY,GACnB;wBACEI,QAAQ;4BAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;wBAAC;oBACtD,IACA,CAAC,CAAC;gBACR;gBACAG,SAAS9E,iBAAiBgB;YAC5B;YAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,MAAM,EAAEG,cAAc,CAAC,GAAG;gBACvDe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BgC,MAAM;oBACJjC,IAAI;wBAAEC,MAAM,IAAIlE,eAAe4D;oBAAQ;oBACvC+C,OAAO;wBAAEzC,MAAMpE;oBAAe;gBAChC;gBACA8G,SAASxF,kBAAkB0B;YAC7B;YAEA,IAAIC,iBAAiB2E,gBAAgB,KAAK,MAAM;gBAC9ClF,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,SAAS,EAAEG,cAAc,CAAC,GAAG;oBAC1De,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;oBAC7BgC,MAAM;wBACJjC,IAAI;4BAAEC,MAAM,IAAIlE,eAAe4D;wBAAQ;wBACvC,GAAI2B,0BACA;4BAAEgC,MAAM;gCAAErD,MAAMpB,WAAWG,OAAO,CAACwC,iBAAiB;4BAAC;wBAAE,IACvD,CAAC,CAAC;oBACR;oBACAmB,SAAStF,kBAAkBwB;gBAC7B;YACF;QACF;QAEA,IAAIC,iBAAiBG,QAAQ,EAAE;YAC7B,MAAMyE,gBAAgBpF,OAAOsB,EAAE,CAACC,aAAa,KAAK,SAAS5D,gBAAgBH;YAC3E,MAAM6H,0BAAmC;mBACpCzH,6BAA6BoC,QAAQQ;gBACxC;oBACEY,MAAM;oBACNO,MAAM3B,OAAOsB,EAAE,CAACC,aAAa;gBAC/B;gBACA;oBACEH,MAAM;oBACNO,MAAM;oBACNe,OAAO,CAAC,EAAE4C,CAAC,EAAE,GAAKA,EAAE;gBACtB;gBACA;oBACElE,MAAM;oBACNO,MAAM;oBACNe,OAAO,CAAC,EAAE4C,CAAC,EAAE,GAAKA,EAAE;gBACtB;aACD;YAED/E,WAAWG,OAAO,CAAC6E,WAAW,GAAG5F,gBAAgB;gBAC/CyB,MAAM,GAAGR,aAAa,OAAO,CAAC;gBAC9BsB,gBAAgB1B,iBAAiBF,IAAI;gBACrCN;gBACAS,QAAQ4E;gBACRlD,eAAeJ;gBACf9B;gBACAmC,YAAY,GAAGxB,aAAa,OAAO,CAAC;YACtC;YAEA,IAAI0C,gBAAgB;gBAClBrD,cAAcyD,KAAK,CAACjD,MAAM,CAAC,CAAC,OAAO,EAAEjB,WAAWoB,eAAe,CAAC,GAAG;oBACjEe,MAAMpB,WAAWG,OAAO,CAAC6E,WAAW;oBACpC5B,MAAM;wBACJjC,IAAI;4BAAEC,MAAMyD;wBAAc;wBAC1B,GAAIpF,OAAO6D,YAAY,GACnB;4BACEC,gBAAgB;gCAAEnC,MAAM1B,cAAc8D,KAAK,CAACC,uBAAuB;4BAAC;4BACpEC,QAAQ;gCAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;4BAAC;wBACtD,IACA,CAAC,CAAC;wBACNE,OAAO;4BAAEzC,MAAMpE;wBAAe;oBAChC;oBACA8G,SAASnF,wBAAwBqB;gBACnC;gBACAN,cAAcyD,KAAK,CAACjD,MAAM,CAAC,CAAC,QAAQ,EAAEI,YAAY,CAAC,GAAG;oBACpDc,MAAM/B,uBACJ,CAAC,QAAQ,EAAEJ,WAAWqB,aAAa,EACnCN,WAAWG,OAAO,CAAC6E,WAAW;oBAEhC5B,MAAM;wBACJW,OAAO;4BACL3C,MAAM7B,oBAAoB;gCACxBsB,MAAM,CAAC,QAAQ,EAAER,cAAc;gCAC/BH,QAAQ4E;gCACRjD,YAAY,CAAC,QAAQ,EAAExB,cAAc;4BACvC;wBACF;wBACA,GAAIZ,OAAO6D,YAAY,GACnB;4BACEC,gBAAgB;gCAAEnC,MAAM1B,cAAc8D,KAAK,CAACC,uBAAuB;4BAAC;4BACpEC,QAAQ;gCAAEtC,MAAM1B,cAAc8D,KAAK,CAACG,eAAe;4BAAC;wBACtD,IACA,CAAC,CAAC;wBACNK,OAAO;4BAAE5C,MAAMnE;wBAAW;wBAC1BgH,MAAM;4BAAE7C,MAAMnE;wBAAW;wBACzBiH,YAAY;4BAAE9C,MAAMpE;wBAAe;wBACnC4G,QAAQ;4BAAExC,MAAMpE;wBAAe;wBAC/BmH,MAAM;4BAAE/C,MAAMhE;wBAAc;wBAC5ByG,OAAO;4BAAEzC,MAAMpE;wBAAe;oBAChC;oBACA8G,SAASlF,qBAAqBoB;gBAChC;YACF;YAEA,IAAIiD,kBAAkB;gBACpBvD,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,cAAc,EAAEjB,WAAWoB,eAAe,CAAC,GAAG;oBAC3Ee,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;oBAC7BgC,MAAM;wBACJjC,IAAI;4BAAEC,MAAMyD;wBAAc;wBAC1BxB,OAAO;4BAAEjC,MAAMpE;wBAAe;oBAChC;oBACA8G,SAAShF,uBAAuBkB;gBAClC;YACF;QACF;QAEA,IAAIiD,oBAAoBhD,iBAAiBgF,MAAM,EAAE;YAC/CvF,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,UAAU,EAAEjB,WAAWoB,eAAe,CAAC,GAAG;gBACvEe,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gBAC7BgC,MAAM;oBACJjC,IAAI;wBAAEC,MAAM,IAAIlE,eAAe4D;oBAAQ;oBACvCuC,OAAO;wBAAEjC,MAAMpE;oBAAe;oBAC9BkI,UAAU;wBAAE9D,MAAM,IAAIlE,eAAeE;oBAAe;gBACtD;gBACA0G,SAASjF,mBAAmBmB;YAC9B;QACF;QAEA,IAAIC,iBAAiBqB,IAAI,EAAE;YACzB,MAAM6D,aACJlF,iBAAiBqB,IAAI,CAACW,oBAAoB,IACzChC,iBAAiBqB,IAAI,CAAC8D,iBAAiB,IACtC,CAACnF,iBAAiBqB,IAAI,CAAC8D,iBAAiB,CAACC,eAAe,IACxD,CAACpF,iBAAiBqB,IAAI,CAAC8D,iBAAiB,CAACE,YAAY,GACnD,EAAE,GACF;gBACE;oBACEzE,MAAM;oBACNO,MAAM;oBACNgB,UAAU;gBACZ;aACD;YACPpC,WAAWG,OAAO,CAACoF,GAAG,GAAGnG,gBAAgB;gBACvCyB,MAAM5B,WAAW,GAAGc,KAAK,GAAG,CAAC;gBAC7BN;gBACAS,QAAQ;uBACHD,iBAAiBC,MAAM,CAAC2C,MAAM,CAAC,CAACjC,QAAUnD,iBAAiBmD,UAAUA,MAAM4E,SAAS;uBACpFL;oBACH;wBACEtE,MAAM;wBACNO,MAAM;wBACNgB,UAAU;oBACZ;oBACA;wBACEvB,MAAM;wBACNO,MAAM;oBACR;iBACD;gBACD1B;gBACAmC,YAAY5C,WAAW,GAAGc,KAAK,GAAG,CAAC;YACrC;YAEA,IAAIgD,gBAAgB;gBAClBrD,cAAcyD,KAAK,CAACjD,MAAM,CAAC,CAAC,EAAE,EAAEG,cAAc,CAAC,GAAG;oBAChDe,MAAM,IAAIjE,kBAAkB;wBAC1B0D,MAAM5B,WAAW,GAAGc,KAAK,EAAE,CAAC;wBAC5BG,QAAQ;4BACNF,YAAY;gCACVoB,MAAMhE;4BACR;4BACAqI,KAAK;gCACHrE,MAAMnE;4BACR;4BACAyI,OAAO;gCACLtE,MAAMhE;4BACR;4BACAuI,MAAM;gCACJvE,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;4BAC/B;wBACF;oBACF;oBACA0C,SAAS/F,GAAGiC;gBACd;gBAEAN,cAAcyD,KAAK,CAACjD,MAAM,CAAC,CAAC,WAAW,EAAEG,cAAc,CAAC,GAAG;oBACzDe,MAAMpE;oBACN8G,SAASlG,KAAKoC,WAAWP,MAAM,CAACM,IAAI;gBACtC;YACF;YAEA,IAAIkD,kBAAkB;gBACpBvD,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,YAAY,EAAEG,cAAc,CAAC,GAAG;oBAC7De,MAAM,IAAIjE,kBAAkB;wBAC1B0D,MAAM5B,WAAW,GAAGc,KAAK,SAAS,EAAEM,cAAc;wBAClDH,QAAQ;4BACNuF,KAAK;gCACHrE,MAAMnE;4BACR;4BACA2I,gBAAgB;gCACdxE,MAAMhE;4BACR;4BACAuI,MAAM;gCACJvE,MAAMpB,WAAWG,OAAO,CAACoF,GAAG;4BAC9B;wBACF;oBACF;oBACAzB,SAAS9F,QAAQgC;gBACnB;gBAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,MAAM,EAAEG,cAAc,CAAC,GAAG;oBACvDe,MAAMhE;oBACNgG,MAAM;wBACJyC,aAAa;4BAAEzE,MAAMpE;wBAAe;oBACtC;oBACA8G,SAAShG,OAAOkC;gBAClB;gBAEA,IAAI,CAACC,iBAAiBqB,IAAI,CAACW,oBAAoB,EAAE;oBAC/C,MAAM6D,WAAW,CAAC;oBAElB,MAAM,EAAEC,iBAAiB,EAAEC,oBAAoB,EAAE,GAAGtI,gBAClDuC,iBAAiBqB,IAAI,CAAC8D,iBAAiB;oBAGzC,IAAIW,mBAAmB;wBACrBD,QAAQ,CAAC,QAAQ,GAAG;4BAAE1E,MAAM,IAAIlE,eAAeE;wBAAe;oBAChE;oBACA,IAAI4I,sBAAsB;wBACxBF,QAAQ,CAAC,WAAW,GAAG;4BAAE1E,MAAM,IAAIlE,eAAeE;wBAAe;oBACnE;oBAEA,IAAI6C,iBAAiBqB,IAAI,CAAC2E,gBAAgB,GAAG,GAAG;wBAC9CvG,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,MAAM,EAAEG,cAAc,CAAC,GAAG;4BACvDe,MAAM,IAAIlE,eAAeF;4BACzBoG,MAAM0C;4BACNhC,SAAS5F,OAAO8B;wBAClB;oBACF;oBAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,KAAK,EAAEG,cAAc,CAAC,GAAG;wBACtDe,MAAM,IAAIjE,kBAAkB;4BAC1B0D,MAAM5B,WAAW,GAAGc,KAAK,WAAW,CAAC;4BACrCG,QAAQ;gCACNuF,KAAK;oCACHrE,MAAMnE;gCACR;gCACAyI,OAAO;oCACLtE,MAAMhE;gCACR;gCACAuI,MAAM;oCACJvE,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gCAC/B;4BACF;wBACF;wBACAgC,MAAM;4BACJ,GAAG0C,QAAQ;4BACXI,UAAU;gCAAE9E,MAAMhE;4BAAc;wBAClC;wBACA0G,SAASjG,MAAMmC;oBACjB;oBAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,cAAc,EAAEG,cAAc,CAAC,GAAG;wBAC/De,MAAM,IAAIlE,eAAeF;wBACzBoG,MAAM;4BACJ,GAAG0C,QAAQ;wBACb;wBACAhC,SAASnG,eAAeqC;oBAC1B;oBAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,aAAa,EAAEG,cAAc,CAAC,GAAG;wBAC9De,MAAM,IAAIjE,kBAAkB;4BAC1B0D,MAAM5B,WAAW,GAAGc,KAAK,aAAa,CAAC;4BACvCG,QAAQ;gCACNwF,OAAO;oCAAEtE,MAAMhE;gCAAc;gCAC7BuI,MAAM;oCAAEvE,MAAMpB,WAAWG,OAAO,CAACiB,IAAI;gCAAC;4BACxC;wBACF;wBACAgC,MAAM;4BACJ8C,UAAU;gCAAE9E,MAAMhE;4BAAc;4BAChCsI,OAAO;gCAAEtE,MAAMhE;4BAAc;wBAC/B;wBACA0G,SAAS7F,cAAc+B;oBACzB;oBAEAN,cAAc8E,QAAQ,CAACtE,MAAM,CAAC,CAAC,WAAW,EAAEG,cAAc,CAAC,GAAG;wBAC5De,MAAMpE;wBACNoG,MAAM;4BACJsC,OAAO;gCAAEtE,MAAMhE;4BAAc;wBAC/B;wBACA0G,SAAS3F,YAAY6B;oBACvB;gBACF;YACF;QACF;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"initGlobals.d.ts","sourceRoot":"","sources":["../../src/schema/initGlobals.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAS,WAAW,EAAE,eAAe,EAAyB,MAAM,SAAS,CAAA;AAkBzF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,WAAW,CAAA;CAC3B,CAAA;AACD,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,sBAAsB,GAAG,IAAI,CA8KnF"}
1
+ {"version":3,"file":"initGlobals.d.ts","sourceRoot":"","sources":["../../src/schema/initGlobals.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAS,WAAW,EAAE,eAAe,EAAyB,MAAM,SAAS,CAAA;AAmBzF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,EAAE,WAAW,CAAA;CAC3B,CAAA;AACD,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,sBAAsB,GAAG,IAAI,CAqMnF"}
@@ -9,6 +9,7 @@ import { findVersionByID } from '../resolvers/globals/findVersionByID.js';
9
9
  import { findVersions } from '../resolvers/globals/findVersions.js';
10
10
  import { restoreVersion } from '../resolvers/globals/restoreVersion.js';
11
11
  import { update } from '../resolvers/globals/update.js';
12
+ import { validateResolver as validateGlobalResolver } from '../resolvers/globals/validate.js';
12
13
  import { formatName } from '../utilities/formatName.js';
13
14
  import { buildMutationInputType } from './buildMutationInputType.js';
14
15
  import { buildObjectType } from './buildObjectType.js';
@@ -35,6 +36,15 @@ export function initGlobals({ config, graphqlResult }) {
35
36
  parentIsLocalized: false,
36
37
  parentName: formattedName
37
38
  });
39
+ const validationMutationInputType = buildMutationInputType({
40
+ name: `${formattedName}Validation`,
41
+ config,
42
+ fields,
43
+ forceNullable: true,
44
+ graphqlResult,
45
+ parentIsLocalized: false,
46
+ parentName: `${formattedName}Validation`
47
+ });
38
48
  graphqlResult.globals.graphQL[slug] = {
39
49
  type: buildObjectType({
40
50
  name: formattedName,
@@ -99,6 +109,25 @@ export function initGlobals({ config, graphqlResult }) {
99
109
  },
100
110
  resolve: update(global)
101
111
  };
112
+ graphqlResult.Mutation.fields[`validate${formattedName}`] = {
113
+ type: graphqlResult.types.validationResultType,
114
+ args: {
115
+ ...validationMutationInputType ? {
116
+ data: {
117
+ type: validationMutationInputType
118
+ }
119
+ } : {},
120
+ draft: {
121
+ type: GraphQLBoolean
122
+ },
123
+ ...config.localization ? {
124
+ locale: {
125
+ type: graphqlResult.types.localeInputType
126
+ }
127
+ } : {}
128
+ },
129
+ resolve: validateGlobalResolver(global)
130
+ };
102
131
  }
103
132
  if (global.versions) {
104
133
  const idType = config.db.defaultIDType === 'number' ? GraphQLInt : GraphQLString;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/schema/initGlobals.ts"],"sourcesContent":["import { 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'\nimport { hasDraftsEnabled } from 'payload/shared'\n\nimport { docAccessResolver } from '../resolvers/globals/docAccess.js'\nimport { findOne } from '../resolvers/globals/findOne.js'\nimport { findVersionByID } from '../resolvers/globals/findVersionByID.js'\nimport { findVersions } from '../resolvers/globals/findVersions.js'\nimport { restoreVersion } from '../resolvers/globals/restoreVersion.js'\nimport { update } 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}\nexport function initGlobals({ config, graphqlResult }: InitGlobalsGraphQLArgs): void {\n Object.keys(graphqlResult.globals.config).forEach((slug) => {\n const global: SanitizedGlobalConfig = graphqlResult.globals.config[slug]\n const { fields, graphQL } = 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 = hasDraftsEnabled(global)\n\n if (!graphqlResult.globals.graphQL) {\n graphqlResult.globals.graphQL = {}\n }\n\n const updateMutationInputType = buildMutationInputType({\n name: formattedName,\n config,\n fields,\n graphqlResult,\n parentIsLocalized: false,\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 const queriesEnabled = typeof global.graphQL !== 'object' || !global.graphQL.disableQueries\n const mutationsEnabled = typeof global.graphQL !== 'object' || !global.graphQL.disableMutations\n\n if (queriesEnabled) {\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 select: { type: GraphQLBoolean },\n },\n resolve: findOne(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\n if (mutationsEnabled) {\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: update(global),\n }\n }\n\n if (global.versions) {\n const idType = config.db.defaultIDType === 'number' ? GraphQLInt : GraphQLString\n\n const versionGlobalFields: Field[] = [\n ...buildVersionGlobalFields(config, 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 if (queriesEnabled) {\n graphqlResult.Query.fields[`version${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].versionType,\n args: {\n id: { type: idType },\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n select: { type: GraphQLBoolean },\n },\n resolve: findVersionByID(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 pagination: { type: GraphQLBoolean },\n select: { type: GraphQLBoolean },\n sort: { type: GraphQLString },\n },\n resolve: findVersions(global),\n }\n }\n\n if (mutationsEnabled) {\n graphqlResult.Mutation.fields[`restoreVersion${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n id: { type: idType },\n draft: { type: GraphQLBoolean },\n },\n resolve: restoreVersion(global),\n }\n }\n }\n })\n}\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLString","pluralize","singular","buildVersionGlobalFields","toWords","hasDraftsEnabled","docAccessResolver","findOne","findVersionByID","findVersions","restoreVersion","update","formatName","buildMutationInputType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initGlobals","config","graphqlResult","Object","keys","globals","forEach","slug","global","fields","graphQL","formattedName","name","forceNullableObjectType","updateMutationInputType","parentIsLocalized","parentName","type","forceNullable","mutationInputType","queriesEnabled","disableQueries","mutationsEnabled","disableMutations","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","select","resolve","entity","scope","typeSuffix","Mutation","data","versions","idType","db","defaultIDType","versionGlobalFields","label","versionType","id","where","limit","page","pagination","sort"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/schema/initGlobals.ts"],"sourcesContent":["import { 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'\nimport { hasDraftsEnabled } from 'payload/shared'\n\nimport { docAccessResolver } from '../resolvers/globals/docAccess.js'\nimport { findOne } from '../resolvers/globals/findOne.js'\nimport { findVersionByID } from '../resolvers/globals/findVersionByID.js'\nimport { findVersions } from '../resolvers/globals/findVersions.js'\nimport { restoreVersion } from '../resolvers/globals/restoreVersion.js'\nimport { update } from '../resolvers/globals/update.js'\nimport { validateResolver as validateGlobalResolver } from '../resolvers/globals/validate.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}\nexport function initGlobals({ config, graphqlResult }: InitGlobalsGraphQLArgs): void {\n Object.keys(graphqlResult.globals.config).forEach((slug) => {\n const global: SanitizedGlobalConfig = graphqlResult.globals.config[slug]\n const { fields, graphQL } = 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 = hasDraftsEnabled(global)\n\n if (!graphqlResult.globals.graphQL) {\n graphqlResult.globals.graphQL = {}\n }\n\n const updateMutationInputType = buildMutationInputType({\n name: formattedName,\n config,\n fields,\n graphqlResult,\n parentIsLocalized: false,\n parentName: formattedName,\n })\n const validationMutationInputType = buildMutationInputType({\n name: `${formattedName}Validation`,\n config,\n fields,\n forceNullable: true,\n graphqlResult,\n parentIsLocalized: false,\n parentName: `${formattedName}Validation`,\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 const queriesEnabled = typeof global.graphQL !== 'object' || !global.graphQL.disableQueries\n const mutationsEnabled = typeof global.graphQL !== 'object' || !global.graphQL.disableMutations\n\n if (queriesEnabled) {\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 select: { type: GraphQLBoolean },\n },\n resolve: findOne(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\n if (mutationsEnabled) {\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: update(global),\n }\n\n graphqlResult.Mutation.fields[`validate${formattedName}`] = {\n type: graphqlResult.types.validationResultType,\n args: {\n ...(validationMutationInputType ? { data: { type: validationMutationInputType } } : {}),\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n },\n resolve: validateGlobalResolver(global),\n }\n }\n\n if (global.versions) {\n const idType = config.db.defaultIDType === 'number' ? GraphQLInt : GraphQLString\n\n const versionGlobalFields: Field[] = [\n ...buildVersionGlobalFields(config, 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 if (queriesEnabled) {\n graphqlResult.Query.fields[`version${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].versionType,\n args: {\n id: { type: idType },\n draft: { type: GraphQLBoolean },\n ...(config.localization\n ? {\n fallbackLocale: { type: graphqlResult.types.fallbackLocaleInputType },\n locale: { type: graphqlResult.types.localeInputType },\n }\n : {}),\n select: { type: GraphQLBoolean },\n },\n resolve: findVersionByID(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 pagination: { type: GraphQLBoolean },\n select: { type: GraphQLBoolean },\n sort: { type: GraphQLString },\n },\n resolve: findVersions(global),\n }\n }\n\n if (mutationsEnabled) {\n graphqlResult.Mutation.fields[`restoreVersion${formatName(formattedName)}`] = {\n type: graphqlResult.globals.graphQL[slug].type,\n args: {\n id: { type: idType },\n draft: { type: GraphQLBoolean },\n },\n resolve: restoreVersion(global),\n }\n }\n }\n })\n}\n"],"names":["GraphQLBoolean","GraphQLInt","GraphQLNonNull","GraphQLString","pluralize","singular","buildVersionGlobalFields","toWords","hasDraftsEnabled","docAccessResolver","findOne","findVersionByID","findVersions","restoreVersion","update","validateResolver","validateGlobalResolver","formatName","buildMutationInputType","buildObjectType","buildPaginatedListType","buildPolicyType","buildWhereInputType","initGlobals","config","graphqlResult","Object","keys","globals","forEach","slug","global","fields","graphQL","formattedName","name","forceNullableObjectType","updateMutationInputType","parentIsLocalized","parentName","validationMutationInputType","forceNullable","type","mutationInputType","queriesEnabled","disableQueries","mutationsEnabled","disableMutations","Query","args","draft","localization","fallbackLocale","types","fallbackLocaleInputType","locale","localeInputType","select","resolve","entity","scope","typeSuffix","Mutation","data","validationResultType","versions","idType","db","defaultIDType","versionGlobalFields","label","versionType","id","where","limit","page","pagination","sort"],"mappings":"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"}
package/package.json CHANGED
@@ -1,12 +1,7 @@
1
1
  {
2
2
  "name": "@payloadcms/graphql",
3
- "version": "4.0.0-internal.f15737c",
3
+ "version": "4.0.0-internal.f2a04f7",
4
4
  "homepage": "https://payloadcms.com",
5
- "repository": {
6
- "type": "git",
7
- "url": "https://github.com/payloadcms/payload.git",
8
- "directory": "packages/graphql"
9
- },
10
5
  "license": "MIT",
11
6
  "author": "Payload <dev@payloadcms.com> (https://payloadcms.com)",
12
7
  "maintainers": [
@@ -16,8 +11,21 @@
16
11
  "url": "https://payloadcms.com"
17
12
  }
18
13
  ],
19
- "sideEffects": false,
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "https://github.com/payloadcms/payload.git",
17
+ "directory": "packages/graphql"
18
+ },
19
+ "bin": {
20
+ "payload-graphql": "bin.js"
21
+ },
22
+ "files": [
23
+ "dist"
24
+ ],
20
25
  "type": "module",
26
+ "sideEffects": false,
27
+ "main": "./dist/index.js",
28
+ "types": "./dist/index.d.ts",
21
29
  "exports": {
22
30
  ".": {
23
31
  "import": "./dist/index.js",
@@ -35,14 +43,6 @@
35
43
  "default": "./dist/exports/utilities.js"
36
44
  }
37
45
  },
38
- "main": "./dist/index.js",
39
- "types": "./dist/index.d.ts",
40
- "bin": {
41
- "payload-graphql": "bin.js"
42
- },
43
- "files": [
44
- "dist"
45
- ],
46
46
  "dependencies": {
47
47
  "graphql-scalars": "1.22.2",
48
48
  "pluralize": "8.0.0",
@@ -53,11 +53,11 @@
53
53
  "@types/pluralize": "^0.0.33",
54
54
  "graphql-http": "1.22.4",
55
55
  "@payloadcms/eslint-config": "3.28.0",
56
- "payload": "4.0.0-internal.f15737c"
56
+ "payload": "4.0.0-internal.f2a04f7"
57
57
  },
58
58
  "peerDependencies": {
59
59
  "graphql": "^16.8.1",
60
- "payload": "4.0.0-internal.f15737c"
60
+ "payload": "4.0.0-internal.f2a04f7"
61
61
  },
62
62
  "scripts": {
63
63
  "build": "pnpm build:types && pnpm build:swc",