@webiny/api-headless-cms 5.41.0-dbt.0 → 5.41.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/constants.d.ts +1 -0
  2. package/constants.js +2 -1
  3. package/constants.js.map +1 -1
  4. package/crud/contentEntry/afterDelete.js +7 -1
  5. package/crud/contentEntry/afterDelete.js.map +1 -1
  6. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.js +0 -8
  7. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.js.map +1 -1
  8. package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.js +0 -8
  9. package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.js.map +1 -1
  10. package/crud/contentModel/beforeDelete.js +31 -0
  11. package/crud/contentModel/beforeDelete.js.map +1 -1
  12. package/crud/contentModel/validation.d.ts +146 -146
  13. package/crud/contentModel.crud.js +8 -1
  14. package/crud/contentModel.crud.js.map +1 -1
  15. package/crud/contentModelGroup/validation.d.ts +1 -1
  16. package/export/crud/sanitize.d.ts +1 -1
  17. package/export/crud/sanitize.js +2 -1
  18. package/export/crud/sanitize.js.map +1 -1
  19. package/export/types.d.ts +1 -1
  20. package/export/types.js.map +1 -1
  21. package/graphql/createExecutableSchema.js +14 -7
  22. package/graphql/createExecutableSchema.js.map +1 -1
  23. package/graphql/graphQLHandlerFactory.d.ts +2 -2
  24. package/graphql/graphQLHandlerFactory.js.map +1 -1
  25. package/graphql/index.d.ts +2 -1
  26. package/graphql/index.js +1 -1
  27. package/graphql/index.js.map +1 -1
  28. package/graphql/schema/contentEntries.js.map +1 -1
  29. package/graphql/schema/createFieldResolvers.d.ts +1 -1
  30. package/graphql/schema/createFieldResolvers.js +1 -3
  31. package/graphql/schema/createFieldResolvers.js.map +1 -1
  32. package/graphql/schema/createManageSDL.js.map +1 -1
  33. package/graphql/schema/createReadSDL.js.map +1 -1
  34. package/graphql/schema/createSingularResolvers.d.ts +13 -0
  35. package/graphql/schema/createSingularResolvers.js +56 -0
  36. package/graphql/schema/createSingularResolvers.js.map +1 -0
  37. package/graphql/schema/createSingularSDL.d.ts +12 -0
  38. package/graphql/schema/createSingularSDL.js +95 -0
  39. package/graphql/schema/createSingularSDL.js.map +1 -0
  40. package/graphql/schema/resolvers/singular/resolveGet.d.ts +7 -0
  41. package/graphql/schema/resolvers/singular/resolveGet.js +21 -0
  42. package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -0
  43. package/graphql/schema/resolvers/singular/resolveUpdate.d.ts +8 -0
  44. package/graphql/schema/resolvers/singular/resolveUpdate.js +21 -0
  45. package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -0
  46. package/graphql/schema/schemaPlugins.js +23 -0
  47. package/graphql/schema/schemaPlugins.js.map +1 -1
  48. package/index.d.ts +4 -1
  49. package/index.js +25 -1
  50. package/index.js.map +1 -1
  51. package/modelManager/DefaultCmsModelManager.d.ts +4 -4
  52. package/modelManager/DefaultCmsModelManager.js +13 -13
  53. package/modelManager/DefaultCmsModelManager.js.map +1 -1
  54. package/modelManager/SingletonModelManager.d.ts +12 -0
  55. package/modelManager/SingletonModelManager.js +48 -0
  56. package/modelManager/SingletonModelManager.js.map +1 -0
  57. package/modelManager/index.d.ts +1 -0
  58. package/modelManager/index.js +15 -0
  59. package/modelManager/index.js.map +1 -1
  60. package/package.json +23 -22
  61. package/plugins/CmsModelPlugin.js +1 -1
  62. package/plugins/CmsModelPlugin.js.map +1 -1
  63. package/types/modelField.d.ts +2 -1
  64. package/types/modelField.js.map +1 -1
  65. package/types/types.d.ts +22 -6
  66. package/types/types.js.map +1 -1
  67. package/utils/contentEntryTraverser/ContentEntryTraverser.d.ts +4 -1
  68. package/utils/contentEntryTraverser/ContentEntryTraverser.js.map +1 -1
  69. package/utils/contentModelAst/CmsModelToAstConverter.d.ts +1 -1
  70. package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -1
  71. package/utils/getSchemaFromFieldPlugins.js +3 -2
  72. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  73. package/utils/index.d.ts +1 -0
  74. package/utils/index.js +11 -0
  75. package/utils/index.js.map +1 -1
  76. package/utils/modelFieldTraverser/ModelFieldTraverser.d.ts +16 -0
  77. package/utils/modelFieldTraverser/ModelFieldTraverser.js +41 -0
  78. package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -0
  79. package/utils/modelFieldTraverser/index.d.ts +1 -0
  80. package/utils/modelFieldTraverser/index.js +18 -0
  81. package/utils/modelFieldTraverser/index.js.map +1 -0
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.createFieldResolversFactory = void 0;
8
8
  var _set = _interopRequireDefault(require("lodash/set"));
9
- var _entryStorage = require("../../utils/entryStorage");
10
9
  var _error = _interopRequireDefault(require("@webiny/error"));
10
+ var _entryStorage = require("../../utils/entryStorage");
11
11
  var _getBaseFieldType = require("../../utils/getBaseFieldType");
12
12
  /**
13
13
  * We use a factory to avoid passing the parameters for recursive invocations.
@@ -70,8 +70,6 @@ const createFieldResolversFactory = factoryParams => {
70
70
  const {
71
71
  fieldId
72
72
  } = field;
73
- // TODO @ts-refactor figure out types for parameters
74
- // @ts-expect-error
75
73
  fieldResolvers[fieldId] = async (parent, args, context, info) => {
76
74
  /**
77
75
  * This is required because due to ref field can be requested without the populated data.
@@ -1 +1 @@
1
- {"version":3,"names":["_set","_interopRequireDefault","require","_entryStorage","_error","_getBaseFieldType","createFieldResolversFactory","factoryParams","endpointType","models","model","fieldTypePlugins","createFieldResolvers","params","graphQLType","fields","isRoot","extraResolvers","fieldResolvers","typeResolvers","field","plugin","getBaseFieldType","fieldId","WebinyError","createResolver","resolver","fieldResolver","Object","assign","parent","args","context","info","value","values","undefined","transformedValue","entryFieldFromStorageTransform","set","exports"],"sources":["createFieldResolvers.ts"],"sourcesContent":["import set from \"lodash/set\";\nimport { ApiEndpoint, CmsContext, CmsFieldTypePlugins, CmsModel, CmsModelField } from \"~/types\";\nimport { entryFieldFromStorageTransform } from \"~/utils/entryStorage\";\nimport { Resolvers } from \"@webiny/handler-graphql/types\";\nimport WebinyError from \"@webiny/error\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface CreateFieldResolvers {\n graphQLType: string;\n fields: CmsModelField[];\n isRoot: boolean;\n extraResolvers?: Resolvers<any>;\n}\n\ninterface CreateFieldResolversFactoryParams {\n endpointType: ApiEndpoint;\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\n/**\n * We use a factory to avoid passing the parameters for recursive invocations.\n * This way they will always be in the function scope, and we can only pass \"fields\".\n */\nexport const createFieldResolversFactory = (factoryParams: CreateFieldResolversFactoryParams) => {\n const { endpointType, models, model, fieldTypePlugins } = factoryParams;\n return function createFieldResolvers(params: CreateFieldResolvers) {\n const { graphQLType, fields, isRoot = false, extraResolvers = {} } = params;\n\n const fieldResolvers = { ...extraResolvers };\n const typeResolvers = {};\n\n for (const field of fields) {\n const plugin = fieldTypePlugins[getBaseFieldType(field)];\n if (!plugin) {\n continue;\n }\n /**\n * Field that is passed into this factory MUST have fieldId, so filter it before the method call.\n */\n if (!field.fieldId) {\n throw new WebinyError(\n \"Field is missing an `fieldId`. Cannot process field without the `fieldId` in the resolvers.\",\n \"FIELD_ID_ERROR\",\n {\n field\n }\n );\n }\n\n const createResolver = plugin[endpointType]?.createResolver || null;\n\n let resolver: any;\n const fieldResolver = createResolver\n ? createResolver({\n graphQLType,\n models,\n model,\n field,\n createFieldResolvers,\n fieldTypePlugins\n })\n : null;\n\n /**\n * When fieldResolver is false it will completely skip adding field fieldId into the resolvers.\n * This is to fix the breaking of GraphQL schema.\n */\n if (fieldResolver === false) {\n continue;\n } else if (typeof fieldResolver === \"function\") {\n resolver = fieldResolver;\n } else if (fieldResolver) {\n resolver = fieldResolver.resolver;\n Object.assign(typeResolvers, fieldResolver.typeResolvers);\n }\n\n const { fieldId } = field;\n // TODO @ts-refactor figure out types for parameters\n // @ts-expect-error\n fieldResolvers[fieldId] = async (parent, args, context: CmsContext, info) => {\n /**\n * This is required because due to ref field can be requested without the populated data.\n * At that point there is no .values no fieldId property on the parent\n */\n const value =\n parent?.values?.[fieldId] === undefined\n ? parent?.[fieldId]\n : parent?.values?.[fieldId];\n if (value === undefined) {\n return undefined;\n }\n // Get transformed value (eg. data decompression)\n const transformedValue = await entryFieldFromStorageTransform({\n context,\n model,\n field,\n value: isRoot ? parent.values?.[fieldId] : parent[fieldId]\n });\n\n set(isRoot ? parent.values : parent, fieldId, transformedValue);\n\n if (!resolver) {\n return isRoot ? parent.values[fieldId] : parent[fieldId];\n }\n\n return await resolver(isRoot ? parent.values : parent, args, context, info);\n };\n }\n\n return { [graphQLType]: fieldResolvers, ...typeResolvers };\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_set","_interopRequireDefault","require","_error","_entryStorage","_getBaseFieldType","createFieldResolversFactory","factoryParams","endpointType","models","model","fieldTypePlugins","createFieldResolvers","params","graphQLType","fields","isRoot","extraResolvers","fieldResolvers","typeResolvers","field","plugin","getBaseFieldType","fieldId","WebinyError","createResolver","resolver","fieldResolver","Object","assign","parent","args","context","info","value","values","undefined","transformedValue","entryFieldFromStorageTransform","set","exports"],"sources":["createFieldResolvers.ts"],"sourcesContent":["import set from \"lodash/set\";\nimport { Resolvers } from \"@webiny/handler-graphql/types\";\nimport WebinyError from \"@webiny/error\";\nimport { ApiEndpoint, CmsContext, CmsFieldTypePlugins, CmsModel, CmsModelField } from \"~/types\";\nimport { entryFieldFromStorageTransform } from \"~/utils/entryStorage\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface CreateFieldResolvers {\n graphQLType: string;\n fields: CmsModelField[];\n isRoot: boolean;\n extraResolvers?: Resolvers<any>;\n}\n\ninterface CreateFieldResolversFactoryParams {\n endpointType: ApiEndpoint;\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\n/**\n * We use a factory to avoid passing the parameters for recursive invocations.\n * This way they will always be in the function scope, and we can only pass \"fields\".\n */\nexport const createFieldResolversFactory = (factoryParams: CreateFieldResolversFactoryParams) => {\n const { endpointType, models, model, fieldTypePlugins } = factoryParams;\n return function createFieldResolvers(params: CreateFieldResolvers) {\n const { graphQLType, fields, isRoot = false, extraResolvers = {} } = params;\n\n const fieldResolvers = { ...extraResolvers };\n const typeResolvers = {};\n\n for (const field of fields) {\n const plugin = fieldTypePlugins[getBaseFieldType(field)];\n if (!plugin) {\n continue;\n }\n /**\n * Field that is passed into this factory MUST have fieldId, so filter it before the method call.\n */\n if (!field.fieldId) {\n throw new WebinyError(\n \"Field is missing an `fieldId`. Cannot process field without the `fieldId` in the resolvers.\",\n \"FIELD_ID_ERROR\",\n {\n field\n }\n );\n }\n\n const createResolver = plugin[endpointType]?.createResolver || null;\n\n let resolver: any;\n const fieldResolver = createResolver\n ? createResolver({\n graphQLType,\n models,\n model,\n field,\n createFieldResolvers,\n fieldTypePlugins\n })\n : null;\n\n /**\n * When fieldResolver is false it will completely skip adding field fieldId into the resolvers.\n * This is to fix the breaking of GraphQL schema.\n */\n if (fieldResolver === false) {\n continue;\n } else if (typeof fieldResolver === \"function\") {\n resolver = fieldResolver;\n } else if (fieldResolver) {\n resolver = fieldResolver.resolver;\n Object.assign(typeResolvers, fieldResolver.typeResolvers);\n }\n\n const { fieldId } = field;\n fieldResolvers[fieldId] = async (parent, args, context: CmsContext, info) => {\n /**\n * This is required because due to ref field can be requested without the populated data.\n * At that point there is no .values no fieldId property on the parent\n */\n const value =\n parent?.values?.[fieldId] === undefined\n ? parent?.[fieldId]\n : parent?.values?.[fieldId];\n if (value === undefined) {\n return undefined;\n }\n // Get transformed value (eg. data decompression)\n const transformedValue = await entryFieldFromStorageTransform({\n context,\n model,\n field,\n value: isRoot ? parent.values?.[fieldId] : parent[fieldId]\n });\n\n set(isRoot ? parent.values : parent, fieldId, transformedValue);\n\n if (!resolver) {\n return isRoot ? parent.values[fieldId] : parent[fieldId];\n }\n\n return await resolver(isRoot ? parent.values : parent, args, context, info);\n };\n }\n\n return { [graphQLType]: fieldResolvers, ...typeResolvers };\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_renderListFilterFields","require","_renderSortEnum","_renderGetFilterFields","_renderInputFields","_renderFields","_constants","createManageSDL","models","model","fieldTypePlugins","sorterPlugins","inputFields","renderInputFields","fields","listFilterFieldsRender","renderListFilterFields","type","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","renderFields","singularApiName","singularName","pluralApiName","pluralName","inputGqlFields","map","f","join","onByMetaInputGqlFields","ENTRY_META_FIELDS","field","fieldType","isDateTimeEntryMetaField","onByMetaGqlFields","description","typeDefs","exports"],"sources":["createManageSDL.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { renderListFilterFields } from \"~/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"~/utils/renderSortEnum\";\nimport { renderGetFilterFields } from \"~/utils/renderGetFilterFields\";\nimport { renderInputFields } from \"~/utils/renderInputFields\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateManageSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\n\ninterface CreateManageSDL {\n (params: CreateManageSDLParams): string;\n}\n\nexport const createManageSDL: CreateManageSDL = ({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n const inputFields = renderInputFields({\n models,\n model,\n fields: model.fields,\n fieldTypePlugins\n });\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields,\n fieldTypePlugins,\n sorterPlugins\n });\n const getFilterFieldsRender = renderGetFilterFields({\n fields: model.fields,\n fieldTypePlugins\n });\n\n const fields = renderFields({\n models,\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n const inputGqlFields = inputFields.map(f => f.fields).join(\"\\n\");\n\n const onByMetaInputGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentityInput\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n return `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n \n ${onByMetaGqlFields}\n \n publishedOn: DateTime @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'firstPublishedOn' or 'lastPublishedOn' field.\")\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \n meta: ${singularName}Meta\n ${fields.map(f => f.fields).join(\"\\n\")}\n # Advanced Content Organization - make required in 5.38.0\n wbyAco_location: WbyAcoLocation\n }\n\n type ${singularName}Meta {\n modelId: String\n version: Int\n locked: Boolean\n \n status: String\n \"\"\"\n CAUTION: this field is resolved by making an extra query to DB.\n RECOMMENDATION: Use it only with \"get\" queries (avoid in \"list\")\n \"\"\"\n revisions: [${singularName}!]\n title: String\n description: String\n image: String\n \"\"\"\n Custom meta data stored in the root of the entry object.\n \"\"\"\n data: JSON\n }\n\n ${fields.map(f => f.typeDefs).join(\"\\n\")}\n\n ${inputFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input ${singularName}Input {\n id: ID\n \n # Set status of the entry.\n status: String\n \n ${onByMetaInputGqlFields}\n \n wbyAco_location: WbyAcoLocationInput\n \n ${inputGqlFields}\n \n }\n \n input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }\n\n input ${singularName}ListWhereInput {\n wbyAco_location: WbyAcoLocationWhereInput\n ${listFilterFieldsRender}\n AND: [${singularName}ListWhereInput!]\n OR: [${singularName}ListWhereInput!]\n }\n\n\n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n type ${singularName}MoveResponse {\n data: Boolean\n error: CmsError\n }\n\n type ${singularName}ArrayResponse {\n data: [${singularName}]\n error: CmsError\n }\n\n type ${singularName}ListResponse {\n data: [${singularName}]\n meta: CmsListMeta\n error: CmsError\n }\n\n\n enum ${singularName}ListSorter {\n ${sortEnumRender}\n }\n\n extend type Query {\n get${singularName}(revision: ID, entryId: ID, status: CmsEntryStatusType): ${singularName}Response\n \n get${singularName}Revisions(id: ID!): ${singularName}ArrayResponse\n \n get${pluralName}ByIds(revisions: [ID!]!): ${singularName}ArrayResponse\n \n list${pluralName} (\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n \n listDeleted${pluralName} (\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n }\n\n extend type Mutation {\n create${singularName}(data: ${singularName}Input!, options: CreateCmsEntryOptionsInput): ${singularName}Response\n\n create${singularName}From(revision: ID!, data: ${singularName}Input, options: CreateRevisionCmsEntryOptionsInput): ${singularName}Response\n \n update${singularName}(revision: ID!, data: ${singularName}Input!, options: UpdateCmsEntryOptionsInput): ${singularName}Response\n\n validate${singularName}(revision: ID, data: ${singularName}Input!): CmsEntryValidationResponse!\n \n move${singularName}(revision: ID!, folderId: ID!): ${singularName}MoveResponse\n\n delete${singularName}(revision: ID!, options: CmsDeleteEntryOptions): CmsDeleteResponse\n \n restore${singularName}FromBin(revision: ID!): ${singularName}Response\n\n deleteMultiple${pluralName}(entries: [ID!]!): CmsDeleteMultipleResponse!\n \n publish${singularName}(revision: ID!): ${singularName}Response\n \n republish${singularName}(revision: ID!): ${singularName}Response\n \n unpublish${singularName}(revision: ID!): ${singularName}Response\n }\n `;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_renderListFilterFields","require","_renderSortEnum","_renderGetFilterFields","_renderInputFields","_renderFields","_constants","createManageSDL","models","model","fieldTypePlugins","sorterPlugins","inputFields","renderInputFields","fields","listFilterFieldsRender","renderListFilterFields","type","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","renderFields","singularApiName","singularName","pluralApiName","pluralName","inputGqlFields","map","f","join","onByMetaInputGqlFields","ENTRY_META_FIELDS","field","fieldType","isDateTimeEntryMetaField","onByMetaGqlFields","description","typeDefs","exports"],"sources":["createManageSDL.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { renderListFilterFields } from \"~/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"~/utils/renderSortEnum\";\nimport { renderGetFilterFields } from \"~/utils/renderGetFilterFields\";\nimport { renderInputFields } from \"~/utils/renderInputFields\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateManageSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\n\ninterface CreateManageSDL {\n (params: CreateManageSDLParams): string;\n}\n\nexport const createManageSDL: CreateManageSDL = ({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n const inputFields = renderInputFields({\n models,\n model,\n fields: model.fields,\n fieldTypePlugins\n });\n\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields,\n fieldTypePlugins,\n sorterPlugins\n });\n const getFilterFieldsRender = renderGetFilterFields({\n fields: model.fields,\n fieldTypePlugins\n });\n\n const fields = renderFields({\n models,\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n const inputGqlFields = inputFields.map(f => f.fields).join(\"\\n\");\n\n const onByMetaInputGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentityInput\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n return `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n \n ${onByMetaGqlFields}\n \n publishedOn: DateTime @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'firstPublishedOn' or 'lastPublishedOn' field.\")\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \n meta: ${singularName}Meta\n ${fields.map(f => f.fields).join(\"\\n\")}\n # Advanced Content Organization - make required in 5.38.0\n wbyAco_location: WbyAcoLocation\n }\n\n type ${singularName}Meta {\n modelId: String\n version: Int\n locked: Boolean\n \n status: String\n \"\"\"\n CAUTION: this field is resolved by making an extra query to DB.\n RECOMMENDATION: Use it only with \"get\" queries (avoid in \"list\")\n \"\"\"\n revisions: [${singularName}!]\n title: String\n description: String\n image: String\n \"\"\"\n Custom meta data stored in the root of the entry object.\n \"\"\"\n data: JSON\n }\n\n ${fields.map(f => f.typeDefs).join(\"\\n\")}\n\n ${inputFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input ${singularName}Input {\n id: ID\n \n # Set status of the entry.\n status: String\n \n ${onByMetaInputGqlFields}\n \n wbyAco_location: WbyAcoLocationInput\n \n ${inputGqlFields}\n \n }\n \n input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }\n\n input ${singularName}ListWhereInput {\n wbyAco_location: WbyAcoLocationWhereInput\n ${listFilterFieldsRender}\n AND: [${singularName}ListWhereInput!]\n OR: [${singularName}ListWhereInput!]\n }\n\n\n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n type ${singularName}MoveResponse {\n data: Boolean\n error: CmsError\n }\n\n type ${singularName}ArrayResponse {\n data: [${singularName}]\n error: CmsError\n }\n\n type ${singularName}ListResponse {\n data: [${singularName}]\n meta: CmsListMeta\n error: CmsError\n }\n\n\n enum ${singularName}ListSorter {\n ${sortEnumRender}\n }\n\n extend type Query {\n get${singularName}(revision: ID, entryId: ID, status: CmsEntryStatusType): ${singularName}Response\n \n get${singularName}Revisions(id: ID!): ${singularName}ArrayResponse\n \n get${pluralName}ByIds(revisions: [ID!]!): ${singularName}ArrayResponse\n \n list${pluralName} (\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n \n listDeleted${pluralName} (\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n }\n\n extend type Mutation {\n create${singularName}(data: ${singularName}Input!, options: CreateCmsEntryOptionsInput): ${singularName}Response\n\n create${singularName}From(revision: ID!, data: ${singularName}Input, options: CreateRevisionCmsEntryOptionsInput): ${singularName}Response\n \n update${singularName}(revision: ID!, data: ${singularName}Input!, options: UpdateCmsEntryOptionsInput): ${singularName}Response\n\n validate${singularName}(revision: ID, data: ${singularName}Input!): CmsEntryValidationResponse!\n \n move${singularName}(revision: ID!, folderId: ID!): ${singularName}MoveResponse\n\n delete${singularName}(revision: ID!, options: CmsDeleteEntryOptions): CmsDeleteResponse\n \n restore${singularName}FromBin(revision: ID!): ${singularName}Response\n\n deleteMultiple${pluralName}(entries: [ID!]!): CmsDeleteMultipleResponse!\n \n publish${singularName}(revision: ID!): ${singularName}Response\n \n republish${singularName}(revision: ID!): ${singularName}Response\n \n unpublish${singularName}(revision: ID!): ${singularName}Response\n }\n `;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_renderListFilterFields","require","_renderSortEnum","_renderFields","_renderGetFilterFields","_constants","createReadSDL","models","model","fieldTypePlugins","sorterPlugins","type","fieldsRender","renderFields","fields","listFilterFieldsRender","renderListFilterFields","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","hasModelIdField","some","f","fieldId","singularApiName","singularName","pluralApiName","pluralName","onByMetaGqlFields","ENTRY_META_FIELDS","map","field","fieldType","isDateTimeEntryMetaField","join","description","typeDefs","filter","Boolean","exports"],"sources":["createReadSDL.ts"],"sourcesContent":["import { CmsModel, CmsFieldTypePlugins, ApiEndpoint } from \"~/types\";\nimport { renderListFilterFields } from \"~/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"~/utils/renderSortEnum\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { renderGetFilterFields } from \"~/utils/renderGetFilterFields\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateReadSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\n\ninterface CreateReadSDL {\n (params: CreateReadSDLParams): string;\n}\n\nexport const createReadSDL: CreateReadSDL = ({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n const type: ApiEndpoint = \"read\";\n\n const fieldsRender = renderFields({\n models,\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields,\n fieldTypePlugins,\n sorterPlugins\n });\n const getFilterFieldsRender = renderGetFilterFields({\n fields: model.fields,\n fieldTypePlugins\n });\n\n const hasModelIdField = model.fields.some(f => f.fieldId === \"modelId\");\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n return `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n ${hasModelIdField ? \"\" : \"modelId: String!\"}\n \n ${onByMetaGqlFields}\n \n publishedOn: DateTime @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'firstPublishedOn' or 'lastPublishedOn' field.\")\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \n ${fieldsRender.map(f => f.fields).join(\"\\n\")}\n }\n \n ${fieldsRender\n .map(f => f.typeDefs)\n .filter(Boolean)\n .join(\"\\n\")}\n \n input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }\n \n \n input ${singularName}ListWhereInput {\n ${listFilterFieldsRender}\n AND: [${singularName}ListWhereInput!]\n OR: [${singularName}ListWhereInput!]\n }\n \n \n enum ${singularName}ListSorter {\n ${sortEnumRender}\n }\n \n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n type ${singularName}ListResponse {\n data: [${singularName}]\n meta: CmsListMeta\n error: CmsError\n }\n \n extend type Query {\n get${singularName}(where: ${singularName}GetWhereInput!): ${singularName}Response\n\n list${pluralName}(\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n }\n `;\n};\n"],"mappings":";;;;;;AACA,IAAAA,uBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAJ,OAAA;AAaO,MAAMK,aAA4B,GAAGA,CAAC;EACzCC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAa;EACV,MAAMC,IAAiB,GAAG,MAAM;EAEhC,MAAMC,YAAY,GAAG,IAAAC,0BAAY,EAAC;IAC9BN,MAAM;IACNC,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EACF,MAAMM,sBAAsB,GAAG,IAAAC,8CAAsB,EAAC;IAClDR,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EACF,MAAMQ,cAAc,GAAG,IAAAC,8BAAc,EAAC;IAClCV,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL,gBAAgB;IAChBC;EACJ,CAAC,CAAC;EACF,MAAMS,qBAAqB,GAAG,IAAAC,4CAAqB,EAAC;IAChDN,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL;EACJ,CAAC,CAAC;EAEF,MAAMY,eAAe,GAAGb,KAAK,CAACM,MAAM,CAACQ,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,KAAK,SAAS,CAAC;EAEvE,MAAM;IAAEC,eAAe,EAAEC,YAAY;IAAEC,aAAa,EAAEC;EAAW,CAAC,GAAGpB,KAAK;EAE1E,MAAMqB,iBAAiB,GAAGC,4BAAiB,CAACC,GAAG,CAACC,KAAK,IAAI;IACrD,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,aAAa;IAE9E,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;EAEb,OAAQ;AACZ,aAAa3B,KAAK,CAAC4B,WAAW,IAAIV,YAAa;AAC/C,eAAeA,YAAa;AAC5B;AACA;AACA,cAAcL,eAAe,GAAG,EAAE,GAAG,kBAAmB;AACxD;AACA,cAAcQ,iBAAkB;AAChC;AACA;AACA;AACA;AACA,cAAcjB,YAAY,CAACmB,GAAG,CAACR,CAAC,IAAIA,CAAC,CAACT,MAAM,CAAC,CAACqB,IAAI,CAAC,IAAI,CAAE;AACzD;AACA;AACA,UAAUvB,YAAY,CACTmB,GAAG,CAACR,CAAC,IAAIA,CAAC,CAACc,QAAQ,CAAC,CACpBC,MAAM,CAACC,OAAO,CAAC,CACfJ,IAAI,CAAC,IAAI,CAAE;AACxB;AACA,gBAAgBT,YAAa;AAC7B,cAAcP,qBAAsB;AACpC;AACA;AACA;AACA,gBAAgBO,YAAa;AAC7B,cAAcX,sBAAuB;AACrC,oBAAoBW,YAAa;AACjC,mBAAmBA,YAAa;AAChC;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,cAAcT,cAAe;AAC7B;AACA;AACA,eAAeS,YAAa;AAC5B,oBAAoBA,YAAa;AACjC;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA;AACA,iBAAiBA,YAAa,WAAUA,YAAa,oBAAmBA,YAAa;AACrF;AACA,kBAAkBE,UAAW;AAC7B,yBAAyBF,YAAa;AACtC,yBAAyBA,YAAa;AACtC;AACA;AACA;AACA,iBAAiBA,YAAa;AAC9B;AACA,KAAK;AACL,CAAC;AAACc,OAAA,CAAAlC,aAAA,GAAAA,aAAA","ignoreList":[]}
1
+ {"version":3,"names":["_renderListFilterFields","require","_renderSortEnum","_renderFields","_renderGetFilterFields","_constants","createReadSDL","models","model","fieldTypePlugins","sorterPlugins","type","fieldsRender","renderFields","fields","listFilterFieldsRender","renderListFilterFields","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","hasModelIdField","some","f","fieldId","singularApiName","singularName","pluralApiName","pluralName","onByMetaGqlFields","ENTRY_META_FIELDS","map","field","fieldType","isDateTimeEntryMetaField","join","description","typeDefs","filter","Boolean","exports"],"sources":["createReadSDL.ts"],"sourcesContent":["import { CmsModel, CmsFieldTypePlugins, ApiEndpoint } from \"~/types\";\nimport { renderListFilterFields } from \"~/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"~/utils/renderSortEnum\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { renderGetFilterFields } from \"~/utils/renderGetFilterFields\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateReadSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\n\ninterface CreateReadSDL {\n (params: CreateReadSDLParams): string;\n}\n\nexport const createReadSDL: CreateReadSDL = ({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n const type: ApiEndpoint = \"read\";\n\n const fieldsRender = renderFields({\n models,\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields,\n fieldTypePlugins,\n sorterPlugins\n });\n const getFilterFieldsRender = renderGetFilterFields({\n fields: model.fields,\n fieldTypePlugins\n });\n\n const hasModelIdField = model.fields.some(f => f.fieldId === \"modelId\");\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n return `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n ${hasModelIdField ? \"\" : \"modelId: String!\"}\n \n ${onByMetaGqlFields}\n \n publishedOn: DateTime @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'firstPublishedOn' or 'lastPublishedOn' field.\")\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \n ${fieldsRender.map(f => f.fields).join(\"\\n\")}\n }\n \n ${fieldsRender\n .map(f => f.typeDefs)\n .filter(Boolean)\n .join(\"\\n\")}\n \n input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }\n \n \n input ${singularName}ListWhereInput {\n ${listFilterFieldsRender}\n AND: [${singularName}ListWhereInput!]\n OR: [${singularName}ListWhereInput!]\n }\n \n \n enum ${singularName}ListSorter {\n ${sortEnumRender}\n }\n \n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n type ${singularName}ListResponse {\n data: [${singularName}]\n meta: CmsListMeta\n error: CmsError\n }\n \n extend type Query {\n get${singularName}(where: ${singularName}GetWhereInput!): ${singularName}Response\n\n list${pluralName}(\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n }\n `;\n};\n"],"mappings":";;;;;;AACA,IAAAA,uBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAJ,OAAA;AAaO,MAAMK,aAA4B,GAAGA,CAAC;EACzCC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAa;EACV,MAAMC,IAAiB,GAAG,MAAM;EAEhC,MAAMC,YAAY,GAAG,IAAAC,0BAAY,EAAC;IAC9BN,MAAM;IACNC,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EAEF,MAAMM,sBAAsB,GAAG,IAAAC,8CAAsB,EAAC;IAClDR,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EACF,MAAMQ,cAAc,GAAG,IAAAC,8BAAc,EAAC;IAClCV,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL,gBAAgB;IAChBC;EACJ,CAAC,CAAC;EACF,MAAMS,qBAAqB,GAAG,IAAAC,4CAAqB,EAAC;IAChDN,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL;EACJ,CAAC,CAAC;EAEF,MAAMY,eAAe,GAAGb,KAAK,CAACM,MAAM,CAACQ,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,KAAK,SAAS,CAAC;EAEvE,MAAM;IAAEC,eAAe,EAAEC,YAAY;IAAEC,aAAa,EAAEC;EAAW,CAAC,GAAGpB,KAAK;EAE1E,MAAMqB,iBAAiB,GAAGC,4BAAiB,CAACC,GAAG,CAACC,KAAK,IAAI;IACrD,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,aAAa;IAE9E,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;EAEb,OAAQ;AACZ,aAAa3B,KAAK,CAAC4B,WAAW,IAAIV,YAAa;AAC/C,eAAeA,YAAa;AAC5B;AACA;AACA,cAAcL,eAAe,GAAG,EAAE,GAAG,kBAAmB;AACxD;AACA,cAAcQ,iBAAkB;AAChC;AACA;AACA;AACA;AACA,cAAcjB,YAAY,CAACmB,GAAG,CAACR,CAAC,IAAIA,CAAC,CAACT,MAAM,CAAC,CAACqB,IAAI,CAAC,IAAI,CAAE;AACzD;AACA;AACA,UAAUvB,YAAY,CACTmB,GAAG,CAACR,CAAC,IAAIA,CAAC,CAACc,QAAQ,CAAC,CACpBC,MAAM,CAACC,OAAO,CAAC,CACfJ,IAAI,CAAC,IAAI,CAAE;AACxB;AACA,gBAAgBT,YAAa;AAC7B,cAAcP,qBAAsB;AACpC;AACA;AACA;AACA,gBAAgBO,YAAa;AAC7B,cAAcX,sBAAuB;AACrC,oBAAoBW,YAAa;AACjC,mBAAmBA,YAAa;AAChC;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,cAAcT,cAAe;AAC7B;AACA;AACA,eAAeS,YAAa;AAC5B,oBAAoBA,YAAa;AACjC;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA;AACA,iBAAiBA,YAAa,WAAUA,YAAa,oBAAmBA,YAAa;AACrF;AACA,kBAAkBE,UAAW;AAC7B,yBAAyBF,YAAa;AACtC,yBAAyBA,YAAa;AACtC;AACA;AACA;AACA,iBAAiBA,YAAa;AAC9B;AACA,KAAK;AACL,CAAC;AAACc,OAAA,CAAAlC,aAAA,GAAAA,aAAA","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import { ApiEndpoint, CmsContext, CmsFieldTypePlugins, CmsModel } from "../../types";
2
+ interface CreateSingularResolversParams {
3
+ models: CmsModel[];
4
+ model: CmsModel;
5
+ context: CmsContext;
6
+ fieldTypePlugins: CmsFieldTypePlugins;
7
+ type: ApiEndpoint;
8
+ }
9
+ interface CreateSingularResolvers {
10
+ (params: CreateSingularResolversParams): any;
11
+ }
12
+ export declare const createSingularResolvers: CreateSingularResolvers;
13
+ export {};
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createSingularResolvers = void 0;
7
+ var _resolveGet = require("./resolvers/singular/resolveGet");
8
+ var _resolveUpdate = require("./resolvers/singular/resolveUpdate");
9
+ var _normalizeGraphQlInput = require("./resolvers/manage/normalizeGraphQlInput");
10
+ var _createFieldResolvers = require("./createFieldResolvers");
11
+ const createSingularResolvers = ({
12
+ models,
13
+ model,
14
+ fieldTypePlugins,
15
+ type
16
+ }) => {
17
+ if (model.fields.length === 0) {
18
+ return {
19
+ Query: {},
20
+ Mutation: {}
21
+ };
22
+ }
23
+ const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
24
+ endpointType: type,
25
+ models,
26
+ model,
27
+ fieldTypePlugins
28
+ });
29
+ const fieldResolvers = createFieldResolvers({
30
+ graphQLType: model.singularApiName,
31
+ fields: model.fields,
32
+ isRoot: true
33
+ });
34
+ const resolverFactoryParams = {
35
+ model,
36
+ fieldTypePlugins
37
+ };
38
+ const result = {
39
+ Query: {
40
+ [`get${model.singularApiName}`]: (0, _resolveGet.resolveGet)(resolverFactoryParams)
41
+ },
42
+ ...fieldResolvers
43
+ };
44
+ if (type !== "manage") {
45
+ return result;
46
+ }
47
+ return {
48
+ ...result,
49
+ Mutation: {
50
+ [`update${model.singularApiName}`]: (0, _normalizeGraphQlInput.normalizeGraphQlInput)(_resolveUpdate.resolveUpdate)(resolverFactoryParams)
51
+ }
52
+ };
53
+ };
54
+ exports.createSingularResolvers = createSingularResolvers;
55
+
56
+ //# sourceMappingURL=createSingularResolvers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_resolveGet","require","_resolveUpdate","_normalizeGraphQlInput","_createFieldResolvers","createSingularResolvers","models","model","fieldTypePlugins","type","fields","length","Query","Mutation","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","isRoot","resolverFactoryParams","result","resolveGet","normalizeGraphQlInput","resolveUpdate","exports"],"sources":["createSingularResolvers.ts"],"sourcesContent":["import { ApiEndpoint, CmsContext, CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { resolveGet } from \"./resolvers/singular/resolveGet\";\nimport { resolveUpdate } from \"./resolvers/singular/resolveUpdate\";\nimport { normalizeGraphQlInput } from \"./resolvers/manage/normalizeGraphQlInput\";\nimport { createFieldResolversFactory } from \"./createFieldResolvers\";\n\ninterface CreateSingularResolversParams {\n models: CmsModel[];\n model: CmsModel;\n context: CmsContext;\n fieldTypePlugins: CmsFieldTypePlugins;\n type: ApiEndpoint;\n}\n\ninterface CreateSingularResolvers {\n // TODO @ts-refactor determine correct type.\n (params: CreateSingularResolversParams): any;\n}\n\nexport const createSingularResolvers: CreateSingularResolvers = ({\n models,\n model,\n fieldTypePlugins,\n type\n}) => {\n if (model.fields.length === 0) {\n return {\n Query: {},\n Mutation: {}\n };\n }\n\n const createFieldResolvers = createFieldResolversFactory({\n endpointType: type,\n models,\n model,\n fieldTypePlugins\n });\n\n const fieldResolvers = createFieldResolvers({\n graphQLType: model.singularApiName,\n fields: model.fields,\n isRoot: true\n });\n\n const resolverFactoryParams = { model, fieldTypePlugins };\n\n const result = {\n Query: {\n [`get${model.singularApiName}`]: resolveGet(resolverFactoryParams)\n },\n ...fieldResolvers\n };\n if (type !== \"manage\") {\n return result;\n }\n return {\n ...result,\n Mutation: {\n [`update${model.singularApiName}`]:\n normalizeGraphQlInput(resolveUpdate)(resolverFactoryParams)\n }\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AAeO,MAAMI,uBAAgD,GAAGA,CAAC;EAC7DC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAK;EACF,IAAIF,KAAK,CAACG,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE;IAC3B,OAAO;MACHC,KAAK,EAAE,CAAC,CAAC;MACTC,QAAQ,EAAE,CAAC;IACf,CAAC;EACL;EAEA,MAAMC,oBAAoB,GAAG,IAAAC,iDAA2B,EAAC;IACrDC,YAAY,EAAEP,IAAI;IAClBH,MAAM;IACNC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,MAAMS,cAAc,GAAGH,oBAAoB,CAAC;IACxCI,WAAW,EAAEX,KAAK,CAACY,eAAe;IAClCT,MAAM,EAAEH,KAAK,CAACG,MAAM;IACpBU,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,MAAMC,qBAAqB,GAAG;IAAEd,KAAK;IAAEC;EAAiB,CAAC;EAEzD,MAAMc,MAAM,GAAG;IACXV,KAAK,EAAE;MACH,CAAE,MAAKL,KAAK,CAACY,eAAgB,EAAC,GAAG,IAAAI,sBAAU,EAACF,qBAAqB;IACrE,CAAC;IACD,GAAGJ;EACP,CAAC;EACD,IAAIR,IAAI,KAAK,QAAQ,EAAE;IACnB,OAAOa,MAAM;EACjB;EACA,OAAO;IACH,GAAGA,MAAM;IACTT,QAAQ,EAAE;MACN,CAAE,SAAQN,KAAK,CAACY,eAAgB,EAAC,GAC7B,IAAAK,4CAAqB,EAACC,4BAAa,CAAC,CAACJ,qBAAqB;IAClE;EACJ,CAAC;AACL,CAAC;AAACK,OAAA,CAAArB,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { ApiEndpoint, CmsFieldTypePlugins, CmsModel } from "../../types";
2
+ interface CreateSingularSDLParams {
3
+ models: CmsModel[];
4
+ model: CmsModel;
5
+ fieldTypePlugins: CmsFieldTypePlugins;
6
+ type: ApiEndpoint;
7
+ }
8
+ interface CreateSingularSDL {
9
+ (params: CreateSingularSDLParams): string;
10
+ }
11
+ export declare const createSingularSDL: CreateSingularSDL;
12
+ export {};
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createSingularSDL = void 0;
7
+ var _renderInputFields = require("../../utils/renderInputFields");
8
+ var _renderFields = require("../../utils/renderFields");
9
+ var _constants = require("../../constants");
10
+ const createSingularSDL = ({
11
+ models,
12
+ model,
13
+ fieldTypePlugins,
14
+ type
15
+ }) => {
16
+ const inputFields = (0, _renderInputFields.renderInputFields)({
17
+ models,
18
+ model,
19
+ fields: model.fields,
20
+ fieldTypePlugins
21
+ });
22
+ if (inputFields.length === 0) {
23
+ return "";
24
+ }
25
+ const fields = (0, _renderFields.renderFields)({
26
+ models,
27
+ model,
28
+ fields: model.fields,
29
+ type,
30
+ fieldTypePlugins
31
+ });
32
+ const {
33
+ singularApiName: singularName
34
+ } = model;
35
+ const inputGqlFields = inputFields.map(f => f.fields).join("\n");
36
+ const onByMetaInputGqlFields = _constants.ENTRY_META_FIELDS.map(field => {
37
+ const fieldType = (0, _constants.isDateTimeEntryMetaField)(field) ? "DateTime" : "CmsIdentityInput";
38
+ return `${field}: ${fieldType}`;
39
+ }).join("\n");
40
+ const onByMetaGqlFields = _constants.ENTRY_META_FIELDS.map(field => {
41
+ const fieldType = (0, _constants.isDateTimeEntryMetaField)(field) ? "DateTime" : "CmsIdentity";
42
+ return `${field}: ${fieldType}`;
43
+ }).join("\n");
44
+
45
+ // Had to remove /* GraphQL */ because prettier would not format the code correctly.
46
+ const read = `
47
+ """${model.description || singularName}"""
48
+ type ${singularName} {
49
+ id: ID!
50
+ entryId: String!
51
+
52
+ ${onByMetaGqlFields}
53
+
54
+ ownedBy: CmsIdentity @deprecated(reason: "Field was removed with the 5.39.0 release. Use 'createdBy' field.")
55
+
56
+ ${fields.map(f => f.fields).join("\n")}
57
+ }
58
+
59
+ ${fields.map(f => f.typeDefs).join("\n")}
60
+
61
+ input ${singularName}ListWhereInput {
62
+ id: String
63
+ }
64
+
65
+ type ${singularName}Response {
66
+ data: ${singularName}
67
+ error: CmsError
68
+ }
69
+
70
+ extend type Query {
71
+ get${singularName}: ${singularName}Response
72
+ }
73
+
74
+ `;
75
+ if (type !== "manage") {
76
+ return read;
77
+ }
78
+ return `
79
+ ${read}
80
+
81
+ ${inputFields.map(f => f.typeDefs).join("\n")}
82
+
83
+ input ${singularName}Input {
84
+ ${onByMetaInputGqlFields}
85
+ ${inputGqlFields}
86
+ }
87
+
88
+ extend type Mutation {
89
+ update${singularName}(data: ${singularName}Input!, options: UpdateCmsEntryOptionsInput): ${singularName}Response
90
+ }
91
+ `;
92
+ };
93
+ exports.createSingularSDL = createSingularSDL;
94
+
95
+ //# sourceMappingURL=createSingularSDL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_renderInputFields","require","_renderFields","_constants","createSingularSDL","models","model","fieldTypePlugins","type","inputFields","renderInputFields","fields","length","renderFields","singularApiName","singularName","inputGqlFields","map","f","join","onByMetaInputGqlFields","ENTRY_META_FIELDS","field","fieldType","isDateTimeEntryMetaField","onByMetaGqlFields","read","description","typeDefs","exports"],"sources":["createSingularSDL.ts"],"sourcesContent":["import { ApiEndpoint, CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { renderInputFields } from \"~/utils/renderInputFields\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateSingularSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n type: ApiEndpoint;\n}\n\ninterface CreateSingularSDL {\n (params: CreateSingularSDLParams): string;\n}\n\nexport const createSingularSDL: CreateSingularSDL = ({\n models,\n model,\n fieldTypePlugins,\n type\n}): string => {\n const inputFields = renderInputFields({\n models,\n model,\n fields: model.fields,\n fieldTypePlugins\n });\n if (inputFields.length === 0) {\n return \"\";\n }\n\n const fields = renderFields({\n models,\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n\n const { singularApiName: singularName } = model;\n\n const inputGqlFields = inputFields.map(f => f.fields).join(\"\\n\");\n\n const onByMetaInputGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentityInput\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n const read = `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n \n ${onByMetaGqlFields}\n\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \n ${fields.map(f => f.fields).join(\"\\n\")}\n }\n\n ${fields.map(f => f.typeDefs).join(\"\\n\")}\n \n input ${singularName}ListWhereInput {\n id: String\n }\n\n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n extend type Query {\n get${singularName}: ${singularName}Response\n }\n\n `;\n if (type !== \"manage\") {\n return read;\n }\n return `\n ${read}\n \n ${inputFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input ${singularName}Input {\n ${onByMetaInputGqlFields}\n ${inputGqlFields}\n }\n \n extend type Mutation {\n update${singularName}(data: ${singularName}Input!, options: UpdateCmsEntryOptionsInput): ${singularName}Response\n }\n `;\n};\n"],"mappings":";;;;;;AACA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAaO,MAAMG,iBAAoC,GAAGA,CAAC;EACjDC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAa;EACV,MAAMC,WAAW,GAAG,IAAAC,oCAAiB,EAAC;IAClCL,MAAM;IACNC,KAAK;IACLK,MAAM,EAAEL,KAAK,CAACK,MAAM;IACpBJ;EACJ,CAAC,CAAC;EACF,IAAIE,WAAW,CAACG,MAAM,KAAK,CAAC,EAAE;IAC1B,OAAO,EAAE;EACb;EAEA,MAAMD,MAAM,GAAG,IAAAE,0BAAY,EAAC;IACxBR,MAAM;IACNC,KAAK;IACLK,MAAM,EAAEL,KAAK,CAACK,MAAM;IACpBH,IAAI;IACJD;EACJ,CAAC,CAAC;EAEF,MAAM;IAAEO,eAAe,EAAEC;EAAa,CAAC,GAAGT,KAAK;EAE/C,MAAMU,cAAc,GAAGP,WAAW,CAACQ,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACP,MAAM,CAAC,CAACQ,IAAI,CAAC,IAAI,CAAC;EAEhE,MAAMC,sBAAsB,GAAGC,4BAAiB,CAACJ,GAAG,CAACK,KAAK,IAAI;IAC1D,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,kBAAkB;IAEnF,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACJ,IAAI,CAAC,IAAI,CAAC;EAEb,MAAMM,iBAAiB,GAAGJ,4BAAiB,CAACJ,GAAG,CAACK,KAAK,IAAI;IACrD,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,aAAa;IAE9E,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACJ,IAAI,CAAC,IAAI,CAAC;;EAEb;EACA,MAAMO,IAAI,GAAI;AAClB,aAAapB,KAAK,CAACqB,WAAW,IAAIZ,YAAa;AAC/C,eAAeA,YAAa;AAC5B;AACA;AACA;AACA,cAAcU,iBAAkB;AAChC;AACA;AACA;AACA,cAAcd,MAAM,CAACM,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACP,MAAM,CAAC,CAACQ,IAAI,CAAC,IAAI,CAAE;AACnD;AACA;AACA,UAAUR,MAAM,CAACM,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACU,QAAQ,CAAC,CAACT,IAAI,CAAC,IAAI,CAAE;AACjD;AACA,gBAAgBJ,YAAa;AAC7B;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,oBAAoBA,YAAa;AACjC;AACA;AACA;AACA;AACA,iBAAiBA,YAAa,KAAIA,YAAa;AAC/C;AACA;AACA,KAAK;EACD,IAAIP,IAAI,KAAK,QAAQ,EAAE;IACnB,OAAOkB,IAAI;EACf;EACA,OAAQ;AACZ,UAAUA,IAAK;AACf;AACA,UAAUjB,WAAW,CAACQ,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACU,QAAQ,CAAC,CAACT,IAAI,CAAC,IAAI,CAAE;AACtD;AACA,gBAAgBJ,YAAa;AAC7B,cAAcK,sBAAuB;AACrC,cAAcJ,cAAe;AAC7B;AACA;AACA;AACA,oBAAoBD,YAAa,UAASA,YAAa,iDAAgDA,YAAa;AACpH;AACA,KAAK;AACL,CAAC;AAACc,OAAA,CAAAzB,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import { CmsEntryResolverFactory as ResolverFactory } from "../../../../types";
2
+ interface ResolveGetArgs {
3
+ revision: string;
4
+ }
5
+ type ResolveGet = ResolverFactory<any, ResolveGetArgs>;
6
+ export declare const resolveGet: ResolveGet;
7
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolveGet = void 0;
7
+ var _responses = require("@webiny/handler-graphql/responses");
8
+ const resolveGet = ({
9
+ model
10
+ }) => async (_, __, context) => {
11
+ try {
12
+ const manager = await context.cms.getSingletonEntryManager(model);
13
+ const entry = await manager.get();
14
+ return new _responses.Response(entry);
15
+ } catch (e) {
16
+ return new _responses.ErrorResponse(e);
17
+ }
18
+ };
19
+ exports.resolveGet = resolveGet;
20
+
21
+ //# sourceMappingURL=resolveGet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_responses","require","resolveGet","model","_","__","context","manager","cms","getSingletonEntryManager","entry","get","Response","e","ErrorResponse","exports"],"sources":["resolveGet.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { CmsEntryResolverFactory as ResolverFactory } from \"~/types\";\n\ninterface ResolveGetArgs {\n revision: string;\n}\n\ntype ResolveGet = ResolverFactory<any, ResolveGetArgs>;\n\nexport const resolveGet: ResolveGet =\n ({ model }) =>\n async (_: unknown, __: unknown, context) => {\n try {\n const manager = await context.cms.getSingletonEntryManager(model);\n const entry = await manager.get();\n\n return new Response(entry);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AASO,MAAMC,UAAsB,GAC/BA,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAU,EAAEC,EAAW,EAAEC,OAAO,KAAK;EACxC,IAAI;IACA,MAAMC,OAAO,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,wBAAwB,CAACN,KAAK,CAAC;IACjE,MAAMO,KAAK,GAAG,MAAMH,OAAO,CAACI,GAAG,CAAC,CAAC;IAEjC,OAAO,IAAIC,mBAAQ,CAACF,KAAK,CAAC;EAC9B,CAAC,CAAC,OAAOG,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAACE,OAAA,CAAAb,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import { CmsEntryResolverFactory as ResolverFactory, UpdateCmsEntryInput, UpdateCmsEntryOptionsInput } from "../../../../types";
2
+ interface ResolveUpdateArgs {
3
+ data: UpdateCmsEntryInput;
4
+ options?: UpdateCmsEntryOptionsInput;
5
+ }
6
+ type ResolveUpdate = ResolverFactory<any, ResolveUpdateArgs>;
7
+ export declare const resolveUpdate: ResolveUpdate;
8
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resolveUpdate = void 0;
7
+ var _responses = require("@webiny/handler-graphql/responses");
8
+ const resolveUpdate = ({
9
+ model
10
+ }) => async (_, args, context) => {
11
+ try {
12
+ const manager = await context.cms.getSingletonEntryManager(model.modelId);
13
+ const entry = await manager.update(args.data, args.options);
14
+ return new _responses.Response(entry);
15
+ } catch (e) {
16
+ return new _responses.ErrorResponse(e);
17
+ }
18
+ };
19
+ exports.resolveUpdate = resolveUpdate;
20
+
21
+ //# sourceMappingURL=resolveUpdate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_responses","require","resolveUpdate","model","_","args","context","manager","cms","getSingletonEntryManager","modelId","entry","update","data","options","Response","e","ErrorResponse","exports"],"sources":["resolveUpdate.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport {\n CmsEntryResolverFactory as ResolverFactory,\n UpdateCmsEntryInput,\n UpdateCmsEntryOptionsInput\n} from \"~/types\";\n\ninterface ResolveUpdateArgs {\n data: UpdateCmsEntryInput;\n options?: UpdateCmsEntryOptionsInput;\n}\n\ntype ResolveUpdate = ResolverFactory<any, ResolveUpdateArgs>;\n\nexport const resolveUpdate: ResolveUpdate =\n ({ model }) =>\n async (_: unknown, args, context) => {\n try {\n const manager = await context.cms.getSingletonEntryManager(model.modelId);\n const entry = await manager.update(args.data, args.options);\n\n return new Response(entry);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAcO,MAAMC,aAA4B,GACrCA,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAU,EAAEC,IAAI,EAAEC,OAAO,KAAK;EACjC,IAAI;IACA,MAAMC,OAAO,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,wBAAwB,CAACN,KAAK,CAACO,OAAO,CAAC;IACzE,MAAMC,KAAK,GAAG,MAAMJ,OAAO,CAACK,MAAM,CAACP,IAAI,CAACQ,IAAI,EAAER,IAAI,CAACS,OAAO,CAAC;IAE3D,OAAO,IAAIC,mBAAQ,CAACJ,KAAK,CAAC;EAC9B,CAAC,CAAC,OAAOK,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAACE,OAAA,CAAAhB,aAAA,GAAAA,aAAA","ignoreList":[]}
@@ -12,6 +12,9 @@ var _createPreviewResolvers = require("./createPreviewResolvers");
12
12
  var _getSchemaFromFieldPlugins = require("../../utils/getSchemaFromFieldPlugins");
13
13
  var _plugins = require("../../plugins");
14
14
  var _createFieldTypePluginRecords = require("./createFieldTypePluginRecords");
15
+ var _constants = require("../../constants");
16
+ var _createSingularSDL = require("./createSingularSDL");
17
+ var _createSingularResolvers = require("./createSingularResolvers");
15
18
  const generateSchemaPlugins = async params => {
16
19
  const {
17
20
  context,
@@ -42,6 +45,26 @@ const generateSchemaPlugins = async params => {
42
45
  type
43
46
  });
44
47
  models.forEach(model => {
48
+ if (model.tags?.includes(_constants.CMS_MODEL_SINGLETON_TAG)) {
49
+ const plugin = (0, _plugins.createCmsGraphQLSchemaPlugin)({
50
+ typeDefs: (0, _createSingularSDL.createSingularSDL)({
51
+ models,
52
+ model,
53
+ fieldTypePlugins,
54
+ type
55
+ }),
56
+ resolvers: (0, _createSingularResolvers.createSingularResolvers)({
57
+ context,
58
+ models,
59
+ model,
60
+ fieldTypePlugins,
61
+ type
62
+ })
63
+ });
64
+ plugin.name = `headless-cms.graphql.schema.singular.${model.modelId}`;
65
+ schemaPlugins.push(plugin);
66
+ return;
67
+ }
45
68
  switch (type) {
46
69
  case "manage":
47
70
  {
@@ -1 +1 @@
1
- {"version":3,"names":["_createManageSDL","require","_createReadSDL","_createManageResolvers","_createReadResolvers","_createPreviewResolvers","_getSchemaFromFieldPlugins","_plugins","_createFieldTypePluginRecords","generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","createFieldTypePluginRecords","sorterPlugins","byType","CmsGraphQLSchemaSorterPlugin","schemaPlugins","createGraphQLSchemaPluginFromFieldPlugins","forEach","model","plugin","createCmsGraphQLSchemaPlugin","typeDefs","createManageSDL","resolvers","createManageResolvers","name","modelId","push","createReadSDL","READ","createReadResolvers","createPreviewResolvers","filter","pl","schema","exports"],"sources":["schemaPlugins.ts"],"sourcesContent":["import { CmsContext, CmsModel } from \"~/types\";\nimport { createManageSDL } from \"./createManageSDL\";\nimport { createReadSDL } from \"./createReadSDL\";\nimport { createManageResolvers } from \"./createManageResolvers\";\nimport { createReadResolvers } from \"./createReadResolvers\";\nimport { createPreviewResolvers } from \"./createPreviewResolvers\";\nimport { createGraphQLSchemaPluginFromFieldPlugins } from \"~/utils/getSchemaFromFieldPlugins\";\nimport {\n CmsGraphQLSchemaSorterPlugin,\n createCmsGraphQLSchemaPlugin,\n ICmsGraphQLSchemaPlugin\n} from \"~/plugins\";\nimport { createFieldTypePluginRecords } from \"~/graphql/schema/createFieldTypePluginRecords\";\n\ninterface GenerateSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\n\nexport const generateSchemaPlugins = async (\n params: GenerateSchemaPluginsParams\n): Promise<ICmsGraphQLSchemaPlugin[]> => {\n const { context, models } = params;\n const { plugins, cms } = context;\n\n /**\n * If type does not exist, we are not generating schema plugins for models.\n * It should not come to this point, but we check it anyways.\n */\n const { type } = cms;\n if (!type) {\n return [];\n }\n\n // Structure plugins for faster access\n const fieldTypePlugins = createFieldTypePluginRecords(plugins);\n\n const sorterPlugins = plugins.byType<CmsGraphQLSchemaSorterPlugin>(\n CmsGraphQLSchemaSorterPlugin.type\n );\n\n const schemaPlugins = createGraphQLSchemaPluginFromFieldPlugins({\n models,\n fieldTypePlugins,\n type\n });\n\n models.forEach(model => {\n switch (type) {\n case \"manage\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createManageSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: createManageResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n });\n plugin.name = `headless-cms.graphql.schema.manage.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n\n break;\n case \"preview\":\n case \"read\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createReadSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: cms.READ\n ? createReadResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n : createPreviewResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n });\n plugin.name = `headless-cms.graphql.schema.${type}.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n break;\n default:\n return;\n }\n });\n\n return schemaPlugins.filter(pl => !!pl.schema.typeDefs);\n};\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAH,OAAA;AACA,IAAAI,uBAAA,GAAAJ,OAAA;AACA,IAAAK,0BAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AAKA,IAAAO,6BAAA,GAAAP,OAAA;AAOO,MAAMQ,qBAAqB,GAAG,MACjCC,MAAmC,IACE;EACrC,MAAM;IAAEC,OAAO;IAAEC;EAAO,CAAC,GAAGF,MAAM;EAClC,MAAM;IAAEG,OAAO;IAAEC;EAAI,CAAC,GAAGH,OAAO;;EAEhC;AACJ;AACA;AACA;EACI,MAAM;IAAEI;EAAK,CAAC,GAAGD,GAAG;EACpB,IAAI,CAACC,IAAI,EAAE;IACP,OAAO,EAAE;EACb;;EAEA;EACA,MAAMC,gBAAgB,GAAG,IAAAC,0DAA4B,EAACJ,OAAO,CAAC;EAE9D,MAAMK,aAAa,GAAGL,OAAO,CAACM,MAAM,CAChCC,qCAA4B,CAACL,IACjC,CAAC;EAED,MAAMM,aAAa,GAAG,IAAAC,oEAAyC,EAAC;IAC5DV,MAAM;IACNI,gBAAgB;IAChBD;EACJ,CAAC,CAAC;EAEFH,MAAM,CAACW,OAAO,CAACC,KAAK,IAAI;IACpB,QAAQT,IAAI;MACR,KAAK,QAAQ;QACT;UACI,MAAMU,MAAM,GAAG,IAAAC,qCAA4B,EAAC;YACxCC,QAAQ,EAAE,IAAAC,gCAAe,EAAC;cACtBhB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBE;YACJ,CAAC,CAAC;YACFW,SAAS,EAAE,IAAAC,4CAAqB,EAAC;cAC7BlB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBL;YACJ,CAAC;UACL,CAAC,CAAC;UACFc,MAAM,CAACM,IAAI,GAAI,sCAAqCP,KAAK,CAACQ,OAAQ,EAAC;UACnEX,aAAa,CAACY,IAAI,CAACR,MAAM,CAAC;QAC9B;QAEA;MACJ,KAAK,SAAS;MACd,KAAK,MAAM;QACP;UACI,MAAMA,MAAM,GAAG,IAAAC,qCAA4B,EAAC;YACxCC,QAAQ,EAAE,IAAAO,4BAAa,EAAC;cACpBtB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBE;YACJ,CAAC,CAAC;YACFW,SAAS,EAAEf,GAAG,CAACqB,IAAI,GACb,IAAAC,wCAAmB,EAAC;cAChBxB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBL;YACJ,CAAC,CAAC,GACF,IAAA0B,8CAAsB,EAAC;cACnBzB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBL;YACJ,CAAC;UACX,CAAC,CAAC;UACFc,MAAM,CAACM,IAAI,GAAI,+BAA8BhB,IAAK,IAAGS,KAAK,CAACQ,OAAQ,EAAC;UACpEX,aAAa,CAACY,IAAI,CAACR,MAAM,CAAC;QAC9B;QACA;MACJ;QACI;IACR;EACJ,CAAC,CAAC;EAEF,OAAOJ,aAAa,CAACiB,MAAM,CAACC,EAAE,IAAI,CAAC,CAACA,EAAE,CAACC,MAAM,CAACb,QAAQ,CAAC;AAC3D,CAAC;AAACc,OAAA,CAAAhC,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_createManageSDL","require","_createReadSDL","_createManageResolvers","_createReadResolvers","_createPreviewResolvers","_getSchemaFromFieldPlugins","_plugins","_createFieldTypePluginRecords","_constants","_createSingularSDL","_createSingularResolvers","generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","createFieldTypePluginRecords","sorterPlugins","byType","CmsGraphQLSchemaSorterPlugin","schemaPlugins","createGraphQLSchemaPluginFromFieldPlugins","forEach","model","tags","includes","CMS_MODEL_SINGLETON_TAG","plugin","createCmsGraphQLSchemaPlugin","typeDefs","createSingularSDL","resolvers","createSingularResolvers","name","modelId","push","createManageSDL","createManageResolvers","createReadSDL","READ","createReadResolvers","createPreviewResolvers","filter","pl","schema","exports"],"sources":["schemaPlugins.ts"],"sourcesContent":["import { CmsContext, CmsModel } from \"~/types\";\nimport { createManageSDL } from \"./createManageSDL\";\nimport { createReadSDL } from \"./createReadSDL\";\nimport { createManageResolvers } from \"./createManageResolvers\";\nimport { createReadResolvers } from \"./createReadResolvers\";\nimport { createPreviewResolvers } from \"./createPreviewResolvers\";\nimport { createGraphQLSchemaPluginFromFieldPlugins } from \"~/utils/getSchemaFromFieldPlugins\";\nimport {\n CmsGraphQLSchemaSorterPlugin,\n createCmsGraphQLSchemaPlugin,\n ICmsGraphQLSchemaPlugin\n} from \"~/plugins\";\nimport { createFieldTypePluginRecords } from \"./createFieldTypePluginRecords\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants\";\nimport { createSingularSDL } from \"./createSingularSDL\";\nimport { createSingularResolvers } from \"./createSingularResolvers\";\n\ninterface GenerateSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\n\nexport const generateSchemaPlugins = async (\n params: GenerateSchemaPluginsParams\n): Promise<ICmsGraphQLSchemaPlugin[]> => {\n const { context, models } = params;\n const { plugins, cms } = context;\n\n /**\n * If type does not exist, we are not generating schema plugins for models.\n * It should not come to this point, but we check it anyways.\n */\n const { type } = cms;\n if (!type) {\n return [];\n }\n\n // Structure plugins for faster access\n const fieldTypePlugins = createFieldTypePluginRecords(plugins);\n\n const sorterPlugins = plugins.byType<CmsGraphQLSchemaSorterPlugin>(\n CmsGraphQLSchemaSorterPlugin.type\n );\n\n const schemaPlugins = createGraphQLSchemaPluginFromFieldPlugins({\n models,\n fieldTypePlugins,\n type\n });\n\n models.forEach(model => {\n if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createSingularSDL({\n models,\n model,\n fieldTypePlugins,\n type\n }),\n resolvers: createSingularResolvers({\n context,\n models,\n model,\n fieldTypePlugins,\n type\n })\n });\n plugin.name = `headless-cms.graphql.schema.singular.${model.modelId}`;\n schemaPlugins.push(plugin);\n return;\n }\n switch (type) {\n case \"manage\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createManageSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: createManageResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n });\n plugin.name = `headless-cms.graphql.schema.manage.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n\n break;\n case \"preview\":\n case \"read\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createReadSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: cms.READ\n ? createReadResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n : createPreviewResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n });\n plugin.name = `headless-cms.graphql.schema.${type}.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n break;\n default:\n return;\n }\n });\n\n return schemaPlugins.filter(pl => !!pl.schema.typeDefs);\n};\n"],"mappings":"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","ignoreList":[]}
package/index.d.ts CHANGED
@@ -1,11 +1,12 @@
1
1
  import { CreateGraphQLParams } from "./graphql";
2
2
  import { CrudParams } from "./context";
3
3
  import { entryFieldFromStorageTransform, entryFromStorageTransform, entryToStorageTransform } from "./utils/entryStorage";
4
+ import { Plugin } from "@webiny/plugins/types";
4
5
  export * from "./utils/isHeadlessCmsReady";
5
6
  export * from "./utils/createModelField";
6
7
  export * from "./graphql/schema/resolvers/manage/normalizeGraphQlInput";
7
8
  export type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;
8
- export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => (import("@webiny/plugins/types").PluginCollection | import("./plugins").CmsParametersPlugin | import("@webiny/handler-graphql").GraphQLSchemaPlugin<import("./types").CmsContext> | import("@webiny/api").ContextPlugin<import("@webiny/api/types").Context> | import("./plugins").CmsRichTextRendererPlugin<string | undefined>)[];
9
+ export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => Plugin[];
9
10
  export type ContentContextParams = CrudParams;
10
11
  export declare const createHeadlessCmsContext: (params: ContentContextParams) => (import("./types").ModelManagerPlugin | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelField> | import("@webiny/api").ContextPlugin<import("./types").CmsContext> | import("./types").CmsModelFieldToGraphQLPlugin<any>[] | (import("./types").CmsModelFieldValidatorPlugin | import("./types").CmsModelFieldPatternValidatorPlugin[])[] | (import("./fieldConverters/CmsModelObjectFieldConverterPlugin").CmsModelObjectFieldConverterPlugin | import("./fieldConverters/CmsModelDefaultFieldConverterPlugin").CmsModelDefaultFieldConverterPlugin | import("./fieldConverters/CmsModelDynamicZoneFieldConverterPlugin").CmsModelDynamicZoneFieldConverterPlugin)[])[];
11
12
  export * from "./graphqlFields";
@@ -13,4 +14,6 @@ export * from "./plugins";
13
14
  export * from "./utils/incrementEntryIdVersion";
14
15
  export * from "./utils/RichTextRenderer";
15
16
  export * from "./graphql/handleRequest";
17
+ export * from "./utils/contentEntryTraverser/ContentEntryTraverser";
18
+ export * from "./utils/contentModelAst";
16
19
  export { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };
package/index.js CHANGED
@@ -136,8 +136,32 @@ Object.keys(_handleRequest).forEach(function (key) {
136
136
  }
137
137
  });
138
138
  });
139
+ var _ContentEntryTraverser = require("./utils/contentEntryTraverser/ContentEntryTraverser");
140
+ Object.keys(_ContentEntryTraverser).forEach(function (key) {
141
+ if (key === "default" || key === "__esModule") return;
142
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
143
+ if (key in exports && exports[key] === _ContentEntryTraverser[key]) return;
144
+ Object.defineProperty(exports, key, {
145
+ enumerable: true,
146
+ get: function () {
147
+ return _ContentEntryTraverser[key];
148
+ }
149
+ });
150
+ });
151
+ var _contentModelAst = require("./utils/contentModelAst");
152
+ Object.keys(_contentModelAst).forEach(function (key) {
153
+ if (key === "default" || key === "__esModule") return;
154
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
155
+ if (key in exports && exports[key] === _contentModelAst[key]) return;
156
+ Object.defineProperty(exports, key, {
157
+ enumerable: true,
158
+ get: function () {
159
+ return _contentModelAst[key];
160
+ }
161
+ });
162
+ });
139
163
  const createHeadlessCmsGraphQL = (params = {}) => {
140
- return [(0, _RevisionIdScalarPlugin.createRevisionIdScalarPlugin)(),
164
+ return [...(0, _RevisionIdScalarPlugin.createRevisionIdScalarPlugin)(),
141
165
  /**
142
166
  * PathParameter plugins are used to determine the type of the cms endpoint
143
167
  */
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_graphql","require","_modelManager","_graphqlFields","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_validators","_parameters","_context","_entryStorage","_fieldConverters","_export","_storage","_createLexicalHTMLRenderer","_RevisionIdScalarPlugin","_isHeadlessCmsReady","_createModelField","_normalizeGraphQlInput","_plugins","_incrementEntryIdVersion","_RichTextRenderer","_handleRequest","createHeadlessCmsGraphQL","params","createRevisionIdScalarPlugin","createPathParameterPlugin","createHeaderParameterPlugin","createContextParameterPlugin","baseCreateGraphQL","createExportGraphQL","createLexicalHTMLRenderer","createHeadlessCmsContext","createContextPlugin","createDefaultModelManager","createGraphQLFields","createFieldConverters","createValidators","createStorageTransform"],"sources":["index.ts"],"sourcesContent":["import { createGraphQL as baseCreateGraphQL, CreateGraphQLParams } from \"~/graphql\";\nimport { createDefaultModelManager } from \"~/modelManager\";\nimport { createGraphQLFields } from \"~/graphqlFields\";\nimport { createValidators } from \"~/validators\";\nimport {\n createContextParameterPlugin,\n createHeaderParameterPlugin,\n createPathParameterPlugin\n} from \"~/parameters\";\nimport { createContextPlugin, CrudParams } from \"~/context\";\nimport {\n entryFieldFromStorageTransform,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"./utils/entryStorage\";\nimport { createFieldConverters } from \"~/fieldConverters\";\nimport { createExportGraphQL } from \"~/export\";\nimport { createStorageTransform } from \"~/storage\";\nimport { createLexicalHTMLRenderer } from \"./htmlRenderer/createLexicalHTMLRenderer\";\nimport { createRevisionIdScalarPlugin } from \"~/graphql/scalars/RevisionIdScalarPlugin\";\n\nexport * from \"./utils/isHeadlessCmsReady\";\nexport * from \"./utils/createModelField\";\nexport * from \"./graphql/schema/resolvers/manage/normalizeGraphQlInput\";\n\nexport type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;\nexport const createHeadlessCmsGraphQL = (params: CreateHeadlessCmsGraphQLParams = {}) => {\n return [\n createRevisionIdScalarPlugin(),\n /**\n * PathParameter plugins are used to determine the type of the cms endpoint\n */\n createPathParameterPlugin(),\n createHeaderParameterPlugin(),\n createContextParameterPlugin(),\n /**\n * At this point we can create, or not create, CMS GraphQL Schema.\n */\n ...baseCreateGraphQL(params),\n createExportGraphQL(),\n createLexicalHTMLRenderer()\n ];\n};\n\nexport type ContentContextParams = CrudParams;\nexport const createHeadlessCmsContext = (params: ContentContextParams) => {\n return [\n /**\n * Context for all Lambdas - everything is loaded now.\n */\n createContextPlugin(params),\n createDefaultModelManager(),\n createGraphQLFields(),\n createFieldConverters(),\n createValidators(),\n ...createStorageTransform()\n ];\n};\nexport * from \"~/graphqlFields\";\nexport * from \"~/plugins\";\nexport * from \"~/utils/incrementEntryIdVersion\";\nexport * from \"~/utils/RichTextRenderer\";\nexport * from \"./graphql/handleRequest\";\nexport { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_graphql","require","_modelManager","_graphqlFields","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_validators","_parameters","_context","_entryStorage","_fieldConverters","_export","_storage","_createLexicalHTMLRenderer","_RevisionIdScalarPlugin","_isHeadlessCmsReady","_createModelField","_normalizeGraphQlInput","_plugins","_incrementEntryIdVersion","_RichTextRenderer","_handleRequest","_ContentEntryTraverser","_contentModelAst","createHeadlessCmsGraphQL","params","createRevisionIdScalarPlugin","createPathParameterPlugin","createHeaderParameterPlugin","createContextParameterPlugin","baseCreateGraphQL","createExportGraphQL","createLexicalHTMLRenderer","createHeadlessCmsContext","createContextPlugin","createDefaultModelManager","createGraphQLFields","createFieldConverters","createValidators","createStorageTransform"],"sources":["index.ts"],"sourcesContent":["import { createGraphQL as baseCreateGraphQL, CreateGraphQLParams } from \"~/graphql\";\nimport { createDefaultModelManager } from \"~/modelManager\";\nimport { createGraphQLFields } from \"~/graphqlFields\";\nimport { createValidators } from \"~/validators\";\nimport {\n createContextParameterPlugin,\n createHeaderParameterPlugin,\n createPathParameterPlugin\n} from \"~/parameters\";\nimport { createContextPlugin, CrudParams } from \"~/context\";\nimport {\n entryFieldFromStorageTransform,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"./utils/entryStorage\";\nimport { createFieldConverters } from \"~/fieldConverters\";\nimport { createExportGraphQL } from \"~/export\";\nimport { createStorageTransform } from \"~/storage\";\nimport { createLexicalHTMLRenderer } from \"./htmlRenderer/createLexicalHTMLRenderer\";\nimport { createRevisionIdScalarPlugin } from \"~/graphql/scalars/RevisionIdScalarPlugin\";\nimport { Plugin } from \"@webiny/plugins/types\";\n\nexport * from \"./utils/isHeadlessCmsReady\";\nexport * from \"./utils/createModelField\";\nexport * from \"./graphql/schema/resolvers/manage/normalizeGraphQlInput\";\n\nexport type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;\nexport const createHeadlessCmsGraphQL = (params: CreateHeadlessCmsGraphQLParams = {}): Plugin[] => {\n return [\n ...createRevisionIdScalarPlugin(),\n /**\n * PathParameter plugins are used to determine the type of the cms endpoint\n */\n createPathParameterPlugin(),\n createHeaderParameterPlugin(),\n createContextParameterPlugin(),\n /**\n * At this point we can create, or not create, CMS GraphQL Schema.\n */\n ...baseCreateGraphQL(params),\n createExportGraphQL(),\n createLexicalHTMLRenderer()\n ];\n};\n\nexport type ContentContextParams = CrudParams;\nexport const createHeadlessCmsContext = (params: ContentContextParams) => {\n return [\n /**\n * Context for all Lambdas - everything is loaded now.\n */\n createContextPlugin(params),\n createDefaultModelManager(),\n createGraphQLFields(),\n createFieldConverters(),\n createValidators(),\n ...createStorageTransform()\n ];\n};\nexport * from \"~/graphqlFields\";\nexport * from \"~/plugins\";\nexport * from \"~/utils/incrementEntryIdVersion\";\nexport * from \"~/utils/RichTextRenderer\";\nexport * from \"./graphql/handleRequest\";\nexport * from \"./utils/contentEntryTraverser/ContentEntryTraverser\";\nexport * from \"./utils/contentModelAst\";\nexport { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };\n"],"mappings":"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","ignoreList":[]}