From d63c47b6e64fc977c3e8790eceb63a890af34fa7 Mon Sep 17 00:00:00 2001 From: WalkingPizza Date: Fri, 2 Sep 2022 13:18:07 +0200 Subject: [PATCH] Do not allow reserved names for singular/plural API names --- .../contentType/createContentTypeSchema.js | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/packages/core/content-type-builder/admin/src/components/FormModal/contentType/createContentTypeSchema.js b/packages/core/content-type-builder/admin/src/components/FormModal/contentType/createContentTypeSchema.js index c30a7b7ef6..b31c169cdc 100644 --- a/packages/core/content-type-builder/admin/src/components/FormModal/contentType/createContentTypeSchema.js +++ b/packages/core/content-type-builder/admin/src/components/FormModal/contentType/createContentTypeSchema.js @@ -62,6 +62,17 @@ const createContentTypeSchema = ( return context.parent.singularName !== value; }, }) + .test({ + name: 'nameNotAllowed', + message: getTrad('error.contentTypeName.reserved-name'), + test(value) { + if (!value) { + return false; + } + + return !reservedNames.includes(toLower(trim(value))); + }, + }) .required(errorsTrads.required), singularName: yup .string() @@ -87,6 +98,17 @@ const createContentTypeSchema = ( return context.parent.pluralName !== value; }, }) + .test({ + name: 'nameNotAllowed', + message: getTrad('error.contentTypeName.reserved-name'), + test(value) { + if (!value) { + return false; + } + + return !reservedNames.includes(toLower(trim(value))); + }, + }) .required(errorsTrads.required), draftAndPublish: yup.boolean(), kind: yup.string().oneOf(['singleType', 'collectionType']),