@strapi/content-type-builder 5.31.3 → 5.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/components/AIChat/Chat.js +3 -1
- package/dist/admin/components/AIChat/Chat.js.map +1 -1
- package/dist/admin/components/AIChat/Chat.mjs +4 -2
- package/dist/admin/components/AIChat/Chat.mjs.map +1 -1
- package/dist/admin/components/AIChat/hooks/useFeedback.js +4 -1
- package/dist/admin/components/AIChat/hooks/useFeedback.js.map +1 -1
- package/dist/admin/components/AIChat/hooks/useFeedback.mjs +5 -2
- package/dist/admin/components/AIChat/hooks/useFeedback.mjs.map +1 -1
- package/dist/admin/components/AIChat/providers/ChatProvider.js +3 -2
- package/dist/admin/components/AIChat/providers/ChatProvider.js.map +1 -1
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs +3 -2
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs.map +1 -1
- package/dist/admin/components/CTBSession/CTBSessionProvider.js +49 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.js.map +1 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.mjs +46 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.mjs.map +1 -0
- package/dist/admin/components/CTBSession/sessionContext.js +8 -0
- package/dist/admin/components/CTBSession/sessionContext.js.map +1 -0
- package/dist/admin/components/CTBSession/sessionContext.mjs +6 -0
- package/dist/admin/components/CTBSession/sessionContext.mjs.map +1 -0
- package/dist/admin/components/CTBSession/useCTBSession.js +25 -0
- package/dist/admin/components/CTBSession/useCTBSession.js.map +1 -0
- package/dist/admin/components/CTBSession/useCTBSession.mjs +23 -0
- package/dist/admin/components/CTBSession/useCTBSession.mjs.map +1 -0
- package/dist/admin/components/CTBSession/useCTBTracking.js +37 -0
- package/dist/admin/components/CTBSession/useCTBTracking.js.map +1 -0
- package/dist/admin/components/CTBSession/useCTBTracking.mjs +35 -0
- package/dist/admin/components/CTBSession/useCTBTracking.mjs.map +1 -0
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js +4 -2
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs +4 -2
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs.map +1 -1
- package/dist/admin/components/DataManager/DataManagerProvider.js +40 -3
- package/dist/admin/components/DataManager/DataManagerProvider.js.map +1 -1
- package/dist/admin/components/DataManager/DataManagerProvider.mjs +41 -4
- package/dist/admin/components/DataManager/DataManagerProvider.mjs.map +1 -1
- package/dist/admin/components/FormModal/FormModal.js +3 -1
- package/dist/admin/components/FormModal/FormModal.js.map +1 -1
- package/dist/admin/components/FormModal/FormModal.mjs +4 -2
- package/dist/admin/components/FormModal/FormModal.mjs.map +1 -1
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js +14 -1
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js.map +1 -1
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs +14 -1
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs.map +1 -1
- package/dist/admin/components/List.js +3 -1
- package/dist/admin/components/List.js.map +1 -1
- package/dist/admin/components/List.mjs +4 -2
- package/dist/admin/components/List.mjs.map +1 -1
- package/dist/admin/pages/App/index.js +40 -37
- package/dist/admin/pages/App/index.js.map +1 -1
- package/dist/admin/pages/App/index.mjs +40 -37
- package/dist/admin/pages/App/index.mjs.map +1 -1
- package/dist/admin/pages/ListView/ListView.js +10 -1
- package/dist/admin/pages/ListView/ListView.js.map +1 -1
- package/dist/admin/pages/ListView/ListView.mjs +11 -2
- package/dist/admin/pages/ListView/ListView.mjs.map +1 -1
- package/dist/admin/src/components/CTBSession/CTBSessionProvider.d.ts +26 -0
- package/dist/admin/src/components/CTBSession/ctbSession.d.ts +5 -0
- package/dist/admin/src/components/CTBSession/sessionContext.d.ts +25 -0
- package/dist/admin/src/components/CTBSession/useCTBSession.d.ts +12 -0
- package/dist/admin/src/components/CTBSession/useCTBTracking.d.ts +13 -0
- package/dist/server/controllers/content-types.js +6 -0
- package/dist/server/controllers/content-types.js.map +1 -1
- package/dist/server/controllers/content-types.mjs +6 -0
- package/dist/server/controllers/content-types.mjs.map +1 -1
- package/dist/server/controllers/validation/types.js +1 -1
- package/dist/server/controllers/validation/types.js.map +1 -1
- package/dist/server/controllers/validation/types.mjs +1 -1
- package/dist/server/controllers/validation/types.mjs.map +1 -1
- package/dist/server/src/controllers/content-types.d.ts.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.mjs","sources":["../../../../server/src/controllers/validation/types.ts"],"sourcesContent":["import _ from 'lodash';\nimport { yup } from '@strapi/utils';\n\nimport type { TestContext } from 'yup';\nimport type { Schema, Struct } from '@strapi/types';\n\nimport { modelTypes, VALID_UID_TARGETS } from '../../services/constants';\nimport {\n validators,\n areEnumValuesUnique,\n isValidDefaultJSON,\n isValidName,\n isValidEnum,\n isValidRegExpPattern,\n UID_REGEX,\n} from './common';\n\nexport type GetTypeValidatorOptions = {\n types: ReadonlyArray<string>;\n attributes?: Struct.SchemaAttributes;\n modelType?: (typeof modelTypes)[keyof typeof modelTypes];\n};\n\nconst maxLengthIsGreaterThanOrEqualToMinLength = {\n name: 'isGreaterThanMin',\n message: 'maxLength must be greater or equal to minLength',\n test(this: TestContext, value: unknown) {\n const { minLength } = this.parent;\n return !(!_.isUndefined(minLength) && !_.isUndefined(value) && (value as number) < minLength);\n },\n};\n\nexport const getTypeValidator = (\n attribute: Schema.Attribute.AnyAttribute,\n { types, modelType, attributes }: GetTypeValidatorOptions\n) => {\n return yup.object({\n type: yup\n .string()\n .oneOf([...types])\n .required(),\n configurable: yup.boolean().nullable(),\n private: yup.boolean().nullable(),\n pluginOptions: yup.object(),\n ...getTypeShape(attribute, { modelType, attributes }),\n } as any);\n};\n\nconst getTypeShape = (attribute: Schema.Attribute.AnyAttribute, { attributes }: any = {}) => {\n switch (attribute.type) {\n /**\n * complex types\n */\n\n case 'media': {\n return {\n multiple: yup.boolean(),\n required: validators.required,\n allowedTypes: yup\n .array()\n .of(yup.string().oneOf(['images', 'videos', 'files', 'audios']))\n .min(1),\n };\n }\n\n case 'uid': {\n return {\n required: validators.required,\n targetField: yup\n .string()\n .oneOf(\n Object.keys(attributes!).filter((key) =>\n VALID_UID_TARGETS.includes(_.get(attributes![key] as any, 'type'))\n )\n )\n .nullable(),\n default: yup\n .string()\n .test(\n 'isValidDefaultUID',\n 'cannot define a default UID if the targetField is set',\n function (value) {\n const { targetField } = this.parent;\n return !!(_.isNil(targetField) || _.isNil(value));\n }\n )\n .test(\n 'isValidDefaultRegexUID',\n `\\${path} must match the custom regex or the default one \"${UID_REGEX}\"`,\n function (value) {\n const { regex } = this.parent;\n\n if (regex) {\n return !_.isNil(value) && (value === '' || new RegExp(regex).test(value));\n }\n\n return value === '' || UID_REGEX.test(value as string);\n }\n ),\n minLength: validators.minLength,\n maxLength: validators.maxLength.max(256).test(maxLengthIsGreaterThanOrEqualToMinLength),\n options: yup.object().shape({\n separator: yup.string(),\n lowercase: yup.boolean(),\n decamelize: yup.boolean(),\n customReplacements: yup.array().of(yup.array().of(yup.string()).min(2).max(2)),\n preserveLeadingUnderscore: yup.boolean(),\n }),\n regex: yup.string().test(isValidRegExpPattern),\n };\n }\n\n /**\n * scalar types\n */\n case 'string': {\n return {\n default: yup.string(),\n required: validators.required,\n unique: validators.unique,\n minLength: validators.minLength,\n maxLength: validators.maxLength.max(255).test(maxLengthIsGreaterThanOrEqualToMinLength),\n regex: yup.string().test(isValidRegExpPattern),\n };\n }\n case 'text': {\n return {\n default: yup.string(),\n required: validators.required,\n unique: validators.unique,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n regex: yup.string().test(isValidRegExpPattern),\n };\n }\n case 'richtext': {\n return {\n default: yup.string(),\n required: validators.required,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n };\n }\n case 'blocks': {\n return {\n required: validators.required,\n };\n }\n case 'json': {\n return {\n default: yup.mixed().test(isValidDefaultJSON),\n required: validators.required,\n };\n }\n case 'enumeration': {\n return {\n enum: yup\n .array()\n .of(yup.string().test(isValidEnum).required())\n .min(1)\n .test(areEnumValuesUnique)\n .required(),\n default: yup.string().when('enum', (enumVal) => yup.string().oneOf(enumVal)),\n enumName: yup.string().test(isValidName),\n required: validators.required,\n };\n }\n case 'password': {\n return {\n required: validators.required,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n };\n }\n case 'email': {\n return {\n default: yup.string().email(),\n required: validators.required,\n unique: validators.unique,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n };\n }\n case 'integer': {\n return {\n default: yup.number().integer(),\n required: validators.required,\n unique: validators.unique,\n min: yup.number().integer(),\n max: yup.number().integer(),\n };\n }\n case 'biginteger': {\n return {\n default: yup.string().nullable().matches(/^\\d*$/),\n required: validators.required,\n unique: validators.unique,\n min: yup.string().nullable().matches(/^\\d*$/),\n max: yup.string().nullable().matches(/^\\d*$/),\n };\n }\n case 'float': {\n return {\n default: yup.number(),\n required: validators.required,\n unique: validators.unique,\n min: yup.number(),\n max: yup.number(),\n };\n }\n case 'decimal': {\n return {\n default: yup.number(),\n required: validators.required,\n unique: validators.unique,\n min: yup.number(),\n max: yup.number(),\n };\n }\n case 'time':\n case 'datetime':\n case 'date': {\n return {\n default: yup.string(),\n required: validators.required,\n unique: validators.unique,\n };\n }\n case 'boolean': {\n return {\n default: yup.boolean(),\n required: validators.required,\n };\n }\n\n case 'component': {\n return {\n required: validators.required,\n repeatable: yup.boolean(),\n // TODO: Add correct server validation for nested components\n component: yup.string().required(),\n min: yup.number(),\n max: yup.number(),\n };\n }\n\n case 'dynamiczone': {\n return {\n required: validators.required,\n components: yup\n .array()\n .of(yup.string().required())\n .test('isArray', '${path} must be an array', (value) => Array.isArray(value))\n .min(1),\n min: yup.number(),\n max: yup.number(),\n };\n }\n\n default: {\n return {};\n }\n }\n};\n"],"names":["maxLengthIsGreaterThanOrEqualToMinLength","name","message","test","value","minLength","parent","_","isUndefined","getTypeValidator","attribute","types","modelType","attributes","yup","object","type","string","oneOf","required","configurable","boolean","nullable","private","pluginOptions","getTypeShape","multiple","validators","allowedTypes","array","of","min","targetField","Object","keys","filter","key","VALID_UID_TARGETS","includes","get","default","isNil","UID_REGEX","regex","RegExp","maxLength","max","options","shape","separator","lowercase","decamelize","customReplacements","preserveLeadingUnderscore","isValidRegExpPattern","unique","mixed","isValidDefaultJSON","enum","isValidEnum","areEnumValuesUnique","when","enumVal","enumName","isValidName","email","number","integer","matches","repeatable","component","components","Array","isArray"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.mjs","sources":["../../../../server/src/controllers/validation/types.ts"],"sourcesContent":["import _ from 'lodash';\nimport { yup } from '@strapi/utils';\n\nimport type { TestContext } from 'yup';\nimport type { Schema, Struct } from '@strapi/types';\n\nimport { modelTypes, VALID_UID_TARGETS } from '../../services/constants';\nimport {\n validators,\n areEnumValuesUnique,\n isValidDefaultJSON,\n isValidName,\n isValidEnum,\n isValidRegExpPattern,\n UID_REGEX,\n} from './common';\n\nexport type GetTypeValidatorOptions = {\n types: ReadonlyArray<string>;\n attributes?: Struct.SchemaAttributes;\n modelType?: (typeof modelTypes)[keyof typeof modelTypes];\n};\n\nconst maxLengthIsGreaterThanOrEqualToMinLength = {\n name: 'isGreaterThanMin',\n message: 'maxLength must be greater or equal to minLength',\n test(this: TestContext, value: unknown) {\n const { minLength } = this.parent;\n return !(!_.isUndefined(minLength) && !_.isUndefined(value) && (value as number) < minLength);\n },\n};\n\nexport const getTypeValidator = (\n attribute: Schema.Attribute.AnyAttribute,\n { types, modelType, attributes }: GetTypeValidatorOptions\n) => {\n return yup.object({\n type: yup\n .string()\n .oneOf([...types])\n .required(),\n configurable: yup.boolean().nullable(),\n private: yup.boolean().nullable(),\n pluginOptions: yup.object(),\n ...getTypeShape(attribute, { modelType, attributes }),\n } as any);\n};\n\nconst getTypeShape = (attribute: Schema.Attribute.AnyAttribute, { attributes }: any = {}) => {\n switch (attribute.type) {\n /**\n * complex types\n */\n\n case 'media': {\n return {\n multiple: yup.boolean(),\n required: validators.required,\n allowedTypes: yup\n .array()\n .of(yup.string().oneOf(['images', 'videos', 'files', 'audios']))\n .min(1),\n };\n }\n\n case 'uid': {\n return {\n required: validators.required,\n targetField: yup\n .string()\n .oneOf(\n Object.keys(attributes!).filter((key) =>\n VALID_UID_TARGETS.includes(_.get(attributes![key] as any, 'type'))\n )\n )\n .nullable(),\n default: yup\n .string()\n .test(\n 'isValidDefaultUID',\n 'cannot define a default UID if the targetField is set',\n function (value) {\n const { targetField } = this.parent;\n return !!(_.isNil(targetField) || _.isNil(value));\n }\n )\n .test(\n 'isValidDefaultRegexUID',\n `\\${path} must match the custom regex or the default one \"${UID_REGEX}\"`,\n function (value) {\n const { regex } = this.parent;\n\n if (regex) {\n return !_.isNil(value) && (value === '' || new RegExp(regex).test(value));\n }\n\n return value === '' || UID_REGEX.test(value as string);\n }\n ),\n minLength: validators.minLength,\n maxLength: validators.maxLength.max(256).test(maxLengthIsGreaterThanOrEqualToMinLength),\n options: yup.object().shape({\n separator: yup.string(),\n lowercase: yup.boolean(),\n decamelize: yup.boolean(),\n customReplacements: yup.array().of(yup.array().of(yup.string()).min(2).max(2)),\n preserveLeadingUnderscore: yup.boolean(),\n }),\n regex: yup.string().test(isValidRegExpPattern),\n };\n }\n\n /**\n * scalar types\n */\n case 'string': {\n return {\n default: yup.string(),\n required: validators.required,\n unique: validators.unique,\n minLength: validators.minLength,\n maxLength: validators.maxLength.max(255).test(maxLengthIsGreaterThanOrEqualToMinLength),\n regex: yup.string().test(isValidRegExpPattern),\n };\n }\n case 'text': {\n return {\n default: yup.string(),\n required: validators.required,\n unique: validators.unique,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n regex: yup.string().test(isValidRegExpPattern),\n };\n }\n case 'richtext': {\n return {\n default: yup.string(),\n required: validators.required,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n };\n }\n case 'blocks': {\n return {\n required: validators.required,\n };\n }\n case 'json': {\n return {\n default: yup.mixed().test(isValidDefaultJSON),\n required: validators.required,\n };\n }\n case 'enumeration': {\n return {\n enum: yup\n .array()\n .of(yup.string().test(isValidEnum).required())\n .min(1)\n .test(areEnumValuesUnique)\n .required(),\n default: yup.string().when('enum', (enumVal) => yup.string().oneOf(enumVal)),\n enumName: yup.string().test(isValidName),\n required: validators.required,\n };\n }\n case 'password': {\n return {\n required: validators.required,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n };\n }\n case 'email': {\n return {\n default: yup.string().email(),\n required: validators.required,\n unique: validators.unique,\n minLength: validators.minLength,\n maxLength: validators.maxLength,\n };\n }\n case 'integer': {\n return {\n default: yup.number().integer(),\n required: validators.required,\n unique: validators.unique,\n min: yup.number().integer(),\n max: yup.number().integer(),\n };\n }\n case 'biginteger': {\n return {\n default: yup.string().nullable().matches(/^\\d*$/),\n required: validators.required,\n unique: validators.unique,\n min: yup.string().nullable().matches(/^\\d*$/),\n max: yup.string().nullable().matches(/^\\d*$/),\n };\n }\n case 'float': {\n return {\n default: yup.number(),\n required: validators.required,\n unique: validators.unique,\n min: yup.number(),\n max: yup.number(),\n };\n }\n case 'decimal': {\n return {\n default: yup.number(),\n required: validators.required,\n unique: validators.unique,\n min: yup.number(),\n max: yup.number(),\n };\n }\n case 'time':\n case 'datetime':\n case 'date': {\n return {\n default: yup.string(),\n required: validators.required,\n unique: validators.unique,\n };\n }\n case 'boolean': {\n return {\n default: yup.boolean().nullable(),\n required: validators.required,\n };\n }\n\n case 'component': {\n return {\n required: validators.required,\n repeatable: yup.boolean(),\n // TODO: Add correct server validation for nested components\n component: yup.string().required(),\n min: yup.number(),\n max: yup.number(),\n };\n }\n\n case 'dynamiczone': {\n return {\n required: validators.required,\n components: yup\n .array()\n .of(yup.string().required())\n .test('isArray', '${path} must be an array', (value) => Array.isArray(value))\n .min(1),\n min: yup.number(),\n max: yup.number(),\n };\n }\n\n default: {\n return {};\n }\n }\n};\n"],"names":["maxLengthIsGreaterThanOrEqualToMinLength","name","message","test","value","minLength","parent","_","isUndefined","getTypeValidator","attribute","types","modelType","attributes","yup","object","type","string","oneOf","required","configurable","boolean","nullable","private","pluginOptions","getTypeShape","multiple","validators","allowedTypes","array","of","min","targetField","Object","keys","filter","key","VALID_UID_TARGETS","includes","get","default","isNil","UID_REGEX","regex","RegExp","maxLength","max","options","shape","separator","lowercase","decamelize","customReplacements","preserveLeadingUnderscore","isValidRegExpPattern","unique","mixed","isValidDefaultJSON","enum","isValidEnum","areEnumValuesUnique","when","enumVal","enumName","isValidName","email","number","integer","matches","repeatable","component","components","Array","isArray"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-types.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/content-types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;
|
|
1
|
+
{"version":3,"file":"content-types.d.ts","sourceRoot":"","sources":["../../../../server/src/controllers/content-types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;;yBAYN,OAAO;wBA2Bd,OAAO;2BAkBE,OAAO;2BA2CP,OAAO;2BAiCP,OAAO;;AA1HtC,wBAgJE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strapi/content-type-builder",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.32.0",
|
|
4
4
|
"description": "Create and manage content types",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -68,9 +68,9 @@
|
|
|
68
68
|
"@reduxjs/toolkit": "1.9.7",
|
|
69
69
|
"@sindresorhus/slugify": "1.1.0",
|
|
70
70
|
"@strapi/design-system": "2.0.1",
|
|
71
|
-
"@strapi/generators": "5.
|
|
71
|
+
"@strapi/generators": "5.32.0",
|
|
72
72
|
"@strapi/icons": "2.0.1",
|
|
73
|
-
"@strapi/utils": "5.
|
|
73
|
+
"@strapi/utils": "5.32.0",
|
|
74
74
|
"ai": "5.0.26",
|
|
75
75
|
"date-fns": "2.30.0",
|
|
76
76
|
"fs-extra": "11.2.0",
|
|
@@ -88,11 +88,11 @@
|
|
|
88
88
|
"zod": "3.25.67"
|
|
89
89
|
},
|
|
90
90
|
"devDependencies": {
|
|
91
|
-
"@strapi/admin": "5.
|
|
92
|
-
"@strapi/types": "5.
|
|
93
|
-
"@testing-library/dom": "10.1
|
|
94
|
-
"@testing-library/react": "
|
|
95
|
-
"@testing-library/user-event": "14.
|
|
91
|
+
"@strapi/admin": "5.32.0",
|
|
92
|
+
"@strapi/types": "5.32.0",
|
|
93
|
+
"@testing-library/dom": "10.4.1",
|
|
94
|
+
"@testing-library/react": "16.3.0",
|
|
95
|
+
"@testing-library/user-event": "14.6.1",
|
|
96
96
|
"@types/fs-extra": "11.0.4",
|
|
97
97
|
"@types/micromatch": "^4.0.9",
|
|
98
98
|
"@types/pluralize": "0.0.30",
|