@strapi/content-type-builder 5.57.0 → 5.59.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/FeedbackModal.js +13 -7
- package/dist/admin/components/AIChat/FeedbackModal.js.map +1 -1
- package/dist/admin/components/AIChat/FeedbackModal.mjs +14 -8
- package/dist/admin/components/AIChat/FeedbackModal.mjs.map +1 -1
- package/dist/admin/components/AIChat/UploadCodeModal.js +12 -6
- package/dist/admin/components/AIChat/UploadCodeModal.js.map +1 -1
- package/dist/admin/components/AIChat/UploadCodeModal.mjs +13 -7
- package/dist/admin/components/AIChat/UploadCodeModal.mjs.map +1 -1
- package/dist/admin/components/AIChat/UploadFigmaModal.js +12 -6
- package/dist/admin/components/AIChat/UploadFigmaModal.js.map +1 -1
- package/dist/admin/components/AIChat/UploadFigmaModal.mjs +13 -7
- package/dist/admin/components/AIChat/UploadFigmaModal.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js +6 -3
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js.map +1 -1
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs +7 -4
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/Collapsible.js +9 -4
- package/dist/admin/components/AIChat/components/Collapsible.js.map +1 -1
- package/dist/admin/components/AIChat/components/Collapsible.mjs +10 -5
- package/dist/admin/components/AIChat/components/Collapsible.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/Dropzone.js +13 -6
- package/dist/admin/components/AIChat/components/Dropzone.js.map +1 -1
- package/dist/admin/components/AIChat/components/Dropzone.mjs +14 -7
- package/dist/admin/components/AIChat/components/Dropzone.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/FloatingPanel.js +11 -4
- package/dist/admin/components/AIChat/components/FloatingPanel.js.map +1 -1
- package/dist/admin/components/AIChat/components/FloatingPanel.mjs +12 -5
- package/dist/admin/components/AIChat/components/FloatingPanel.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/FullScreenImage.js +16 -8
- package/dist/admin/components/AIChat/components/FullScreenImage.js.map +1 -1
- package/dist/admin/components/AIChat/components/FullScreenImage.mjs +17 -9
- package/dist/admin/components/AIChat/components/FullScreenImage.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/Input.js +6 -3
- package/dist/admin/components/AIChat/components/Input.js.map +1 -1
- package/dist/admin/components/AIChat/components/Input.mjs +7 -4
- package/dist/admin/components/AIChat/components/Input.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/Messages/Message.js +88 -12
- package/dist/admin/components/AIChat/components/Messages/Message.js.map +1 -1
- package/dist/admin/components/AIChat/components/Messages/Message.mjs +87 -13
- package/dist/admin/components/AIChat/components/Messages/Message.mjs.map +1 -1
- package/dist/admin/components/AIChat/components/StepModal.js +44 -17
- package/dist/admin/components/AIChat/components/StepModal.js.map +1 -1
- package/dist/admin/components/AIChat/components/StepModal.mjs +45 -18
- package/dist/admin/components/AIChat/components/StepModal.mjs.map +1 -1
- package/dist/admin/components/AIChat/providers/ChatProvider.js +79 -27
- package/dist/admin/components/AIChat/providers/ChatProvider.js.map +1 -1
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs +80 -28
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs.map +1 -1
- package/dist/admin/components/AIChat/providers/SchemaProvider.js +6 -3
- package/dist/admin/components/AIChat/providers/SchemaProvider.js.map +1 -1
- package/dist/admin/components/AIChat/providers/SchemaProvider.mjs +7 -4
- package/dist/admin/components/AIChat/providers/SchemaProvider.mjs.map +1 -1
- package/dist/admin/components/AttributeOptions/AttributeOption.js +2 -2
- package/dist/admin/components/AttributeOptions/AttributeOption.js.map +1 -1
- package/dist/admin/components/AttributeOptions/AttributeOption.mjs +2 -2
- package/dist/admin/components/AttributeOptions/AttributeOption.mjs.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/lib/buildFolderTree.js.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/lib/buildFolderTree.mjs.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/lib/dropProjection.js.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/lib/dropProjection.mjs.map +1 -1
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js +2 -1
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js.map +1 -1
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs +2 -1
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs.map +1 -1
- package/dist/admin/components/DataManager/DataManagerProvider.js +317 -275
- package/dist/admin/components/DataManager/DataManagerProvider.js.map +1 -1
- package/dist/admin/components/DataManager/DataManagerProvider.mjs +319 -277
- package/dist/admin/components/DataManager/DataManagerProvider.mjs.map +1 -1
- package/dist/admin/components/DataManager/RenameMigrationModal.js.map +1 -1
- package/dist/admin/components/DataManager/RenameMigrationModal.mjs.map +1 -1
- package/dist/admin/components/DataManager/reducer.js +53 -4
- package/dist/admin/components/DataManager/reducer.js.map +1 -1
- package/dist/admin/components/DataManager/reducer.mjs +53 -4
- package/dist/admin/components/DataManager/reducer.mjs.map +1 -1
- package/dist/admin/components/DynamicZoneList.js +2 -1
- package/dist/admin/components/DynamicZoneList.js.map +1 -1
- package/dist/admin/components/DynamicZoneList.mjs +2 -1
- package/dist/admin/components/DynamicZoneList.mjs.map +1 -1
- package/dist/admin/components/FormModal/FormModal.js +36 -62
- package/dist/admin/components/FormModal/FormModal.js.map +1 -1
- package/dist/admin/components/FormModal/FormModal.mjs +36 -62
- package/dist/admin/components/FormModal/FormModal.mjs.map +1 -1
- package/dist/admin/components/FormModal/attributes/ConditionForm.js +2 -1
- package/dist/admin/components/FormModal/attributes/ConditionForm.js.map +1 -1
- package/dist/admin/components/FormModal/attributes/ConditionForm.mjs +2 -1
- package/dist/admin/components/FormModal/attributes/ConditionForm.mjs.map +1 -1
- package/dist/admin/components/FormModal/attributes/types.js +2 -2
- package/dist/admin/components/FormModal/attributes/types.js.map +1 -1
- package/dist/admin/components/FormModal/attributes/types.mjs +2 -2
- package/dist/admin/components/FormModal/attributes/types.mjs.map +1 -1
- package/dist/admin/components/FormModal/forms/forms.js +1 -1
- package/dist/admin/components/FormModal/forms/forms.js.map +1 -1
- package/dist/admin/components/FormModal/forms/forms.mjs +1 -1
- package/dist/admin/components/FormModal/forms/forms.mjs.map +1 -1
- package/dist/admin/components/GenericInputs.js +2 -1
- package/dist/admin/components/GenericInputs.js.map +1 -1
- package/dist/admin/components/GenericInputs.mjs +2 -1
- package/dist/admin/components/GenericInputs.mjs.map +1 -1
- package/dist/admin/components/TabForm.js.map +1 -1
- package/dist/admin/components/TabForm.mjs.map +1 -1
- package/dist/admin/src/components/AIChat/components/FullScreenImage.d.ts +8 -0
- package/dist/admin/src/components/AIChat/components/Messages/Message.d.ts +20 -0
- package/dist/admin/src/components/DataManager/utils/cleanData.d.ts +8 -8
- package/dist/admin/translations/cs.json.js +0 -2
- package/dist/admin/translations/cs.json.js.map +1 -1
- package/dist/admin/translations/cs.json.mjs +0 -2
- package/dist/admin/translations/cs.json.mjs.map +1 -1
- package/dist/admin/translations/de.json.js +0 -2
- package/dist/admin/translations/de.json.js.map +1 -1
- package/dist/admin/translations/de.json.mjs +0 -2
- package/dist/admin/translations/de.json.mjs.map +1 -1
- package/dist/admin/translations/en.json.js +0 -2
- package/dist/admin/translations/en.json.js.map +1 -1
- package/dist/admin/translations/en.json.mjs +0 -2
- package/dist/admin/translations/en.json.mjs.map +1 -1
- package/dist/admin/translations/ja.json.js +0 -2
- package/dist/admin/translations/ja.json.js.map +1 -1
- package/dist/admin/translations/ja.json.mjs +0 -2
- package/dist/admin/translations/ja.json.mjs.map +1 -1
- package/dist/admin/translations/ko.json.js +0 -2
- package/dist/admin/translations/ko.json.js.map +1 -1
- package/dist/admin/translations/ko.json.mjs +0 -2
- package/dist/admin/translations/ko.json.mjs.map +1 -1
- package/dist/admin/translations/nl.json.js +0 -2
- package/dist/admin/translations/nl.json.js.map +1 -1
- package/dist/admin/translations/nl.json.mjs +0 -2
- package/dist/admin/translations/nl.json.mjs.map +1 -1
- package/dist/admin/translations/pl.json.js +0 -2
- package/dist/admin/translations/pl.json.js.map +1 -1
- package/dist/admin/translations/pl.json.mjs +0 -2
- package/dist/admin/translations/pl.json.mjs.map +1 -1
- package/dist/admin/translations/ru.json.js +0 -2
- package/dist/admin/translations/ru.json.js.map +1 -1
- package/dist/admin/translations/ru.json.mjs +0 -2
- package/dist/admin/translations/ru.json.mjs.map +1 -1
- package/dist/admin/translations/sk.json.js +0 -2
- package/dist/admin/translations/sk.json.js.map +1 -1
- package/dist/admin/translations/sk.json.mjs +0 -2
- package/dist/admin/translations/sk.json.mjs.map +1 -1
- package/dist/admin/utils/folderTelemetry.js.map +1 -1
- package/dist/admin/utils/folderTelemetry.mjs.map +1 -1
- package/dist/admin/utils/formAPI.js.map +1 -1
- package/dist/admin/utils/formAPI.mjs.map +1 -1
- package/dist/server/controllers/validation/schema.js +3 -2
- package/dist/server/controllers/validation/schema.js.map +1 -1
- package/dist/server/controllers/validation/schema.mjs +4 -3
- package/dist/server/controllers/validation/schema.mjs.map +1 -1
- package/dist/server/register.js.map +1 -1
- package/dist/server/register.mjs.map +1 -1
- package/dist/server/services/migration-builder/index.js.map +1 -1
- package/dist/server/services/migration-builder/index.mjs.map +1 -1
- package/dist/server/services/schema.js +87 -1
- package/dist/server/services/schema.js.map +1 -1
- package/dist/server/services/schema.mjs +87 -1
- package/dist/server/services/schema.mjs.map +1 -1
- package/dist/server/src/controllers/validation/schema.d.ts.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/services/migration-builder/index.d.ts.map +1 -1
- package/dist/server/src/services/schema-builder/types.d.ts.map +1 -1
- package/dist/server/src/services/schema.d.ts.map +1 -1
- package/dist/server/src/utils/uid-target.d.ts +18 -0
- package/dist/server/src/utils/uid-target.d.ts.map +1 -0
- package/dist/server/utils/uid-target.js +34 -0
- package/dist/server/utils/uid-target.js.map +1 -0
- package/dist/server/utils/uid-target.mjs +31 -0
- package/dist/server/utils/uid-target.mjs.map +1 -0
- package/package.json +6 -6
|
@@ -131,39 +131,34 @@ const FormModal = ()=>{
|
|
|
131
131
|
}
|
|
132
132
|
return getRenameStorageChange.getRenameStorageChange(initialData, modifiedData, attributeRenameMigrationMode);
|
|
133
133
|
};
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
/**
|
|
135
|
+
* Fields whose visibility condition depends on this field and references an
|
|
136
|
+
* enum value that this edit removes or changes. Renames are followed
|
|
137
|
+
* automatically, so only an enum value change can break a condition.
|
|
138
|
+
*/ const getConditionsBrokenByEnumChange = ()=>{
|
|
136
139
|
if (actionType !== 'edit' || modalType !== 'attribute') {
|
|
137
140
|
return false;
|
|
138
141
|
}
|
|
139
|
-
const oldName = initialData.name;
|
|
140
142
|
const oldEnum = initialData.enum;
|
|
141
143
|
const newEnum = modifiedData.enum;
|
|
142
|
-
|
|
144
|
+
if (!Array.isArray(oldEnum) || !Array.isArray(newEnum)) {
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
const removedValues = oldEnum.filter((value)=>!newEnum.includes(value));
|
|
148
|
+
if (removedValues.length === 0) {
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
const fieldName = initialData.name;
|
|
143
152
|
const contentTypeAttributes = type?.attributes ?? [];
|
|
144
|
-
|
|
145
|
-
const referencedFields = contentTypeAttributes.filter((attr)=>{
|
|
153
|
+
const brokenFields = contentTypeAttributes.filter((attr)=>{
|
|
146
154
|
const conditionEntry = conditions.getFirstVisibleConditionEntry(attr.conditions);
|
|
147
155
|
if (conditionEntry === null) {
|
|
148
156
|
return false;
|
|
149
157
|
}
|
|
150
158
|
const { fieldVar, value } = conditionEntry;
|
|
151
|
-
|
|
152
|
-
if (fieldVar.var !== oldName) {
|
|
153
|
-
return false;
|
|
154
|
-
}
|
|
155
|
-
// If it's an enum field, also check if the value is being deleted/changed
|
|
156
|
-
if (oldEnum !== undefined && newEnum !== undefined) {
|
|
157
|
-
const deletedOrChangedValues = oldEnum.filter((oldValue)=>!newEnum.includes(oldValue));
|
|
158
|
-
return typeof value === 'string' && deletedOrChangedValues.includes(value);
|
|
159
|
-
}
|
|
160
|
-
return true;
|
|
159
|
+
return fieldVar.var === fieldName && typeof value === 'string' && removedValues.includes(value);
|
|
161
160
|
});
|
|
162
|
-
|
|
163
|
-
if (referencedFields.length > 0) {
|
|
164
|
-
return referencedFields;
|
|
165
|
-
}
|
|
166
|
-
return false;
|
|
161
|
+
return brokenFields.length > 0 ? brokenFields : false;
|
|
167
162
|
};
|
|
168
163
|
React__namespace.useEffect(()=>{
|
|
169
164
|
if (isOpen && modalType) {
|
|
@@ -860,9 +855,9 @@ const FormModal = ()=>{
|
|
|
860
855
|
};
|
|
861
856
|
const handleSubmit = async (e, shouldContinue = isCreating)=>{
|
|
862
857
|
e.preventDefault();
|
|
863
|
-
// Check for
|
|
864
|
-
const
|
|
865
|
-
if (
|
|
858
|
+
// Check for conditions broken by an enum value change when clicking Finish
|
|
859
|
+
const brokenFields = getConditionsBrokenByEnumChange();
|
|
860
|
+
if (brokenFields) {
|
|
866
861
|
setPendingSubmit({
|
|
867
862
|
e,
|
|
868
863
|
shouldContinue
|
|
@@ -1042,46 +1037,17 @@ const FormModal = ()=>{
|
|
|
1042
1037
|
setPendingSubmit(null);
|
|
1043
1038
|
},
|
|
1044
1039
|
children: (()=>{
|
|
1045
|
-
const
|
|
1046
|
-
if (
|
|
1047
|
-
const fieldNames =
|
|
1048
|
-
const oldEnum = initialData.enum;
|
|
1049
|
-
const newEnum = modifiedData.enum;
|
|
1050
|
-
const
|
|
1051
|
-
if (isEnum === true) {
|
|
1052
|
-
const deletedOrChangedValues = oldEnum.filter((value)=>!newEnum.includes(value));
|
|
1053
|
-
return /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
1054
|
-
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Typography, {
|
|
1055
|
-
children: [
|
|
1056
|
-
formatMessage({
|
|
1057
|
-
id: 'form.attribute.condition.enum-change-warning',
|
|
1058
|
-
defaultMessage: 'The following fields have conditions that depend on this field: '
|
|
1059
|
-
}),
|
|
1060
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
1061
|
-
fontWeight: "bold",
|
|
1062
|
-
children: fieldNames
|
|
1063
|
-
}),
|
|
1064
|
-
formatMessage({
|
|
1065
|
-
id: 'form.attribute.condition.enum-change-warning-values',
|
|
1066
|
-
defaultMessage: '. Changing or removing the enum values '
|
|
1067
|
-
}),
|
|
1068
|
-
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
1069
|
-
fontWeight: "bold",
|
|
1070
|
-
children: deletedOrChangedValues.join(', ')
|
|
1071
|
-
}),
|
|
1072
|
-
formatMessage({
|
|
1073
|
-
id: 'form.attribute.condition.enum-change-warning-end',
|
|
1074
|
-
defaultMessage: ' will break these conditions. Do you want to proceed?'
|
|
1075
|
-
})
|
|
1076
|
-
]
|
|
1077
|
-
})
|
|
1078
|
-
});
|
|
1079
|
-
}
|
|
1040
|
+
const brokenFields = getConditionsBrokenByEnumChange();
|
|
1041
|
+
if (brokenFields === false) return null;
|
|
1042
|
+
const fieldNames = brokenFields.map((field)=>field.name).join(', ');
|
|
1043
|
+
const oldEnum = initialData.enum ?? [];
|
|
1044
|
+
const newEnum = modifiedData.enum ?? [];
|
|
1045
|
+
const deletedOrChangedValues = oldEnum.filter((value)=>!newEnum.includes(value));
|
|
1080
1046
|
return /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
|
|
1081
1047
|
children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Typography, {
|
|
1082
1048
|
children: [
|
|
1083
1049
|
formatMessage({
|
|
1084
|
-
id: 'form.attribute.condition.
|
|
1050
|
+
id: 'form.attribute.condition.enum-change-warning',
|
|
1085
1051
|
defaultMessage: 'The following fields have conditions that depend on this field: '
|
|
1086
1052
|
}),
|
|
1087
1053
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
@@ -1089,8 +1055,16 @@ const FormModal = ()=>{
|
|
|
1089
1055
|
children: fieldNames
|
|
1090
1056
|
}),
|
|
1091
1057
|
formatMessage({
|
|
1092
|
-
id: 'form.attribute.condition.
|
|
1093
|
-
defaultMessage: '.
|
|
1058
|
+
id: 'form.attribute.condition.enum-change-warning-values',
|
|
1059
|
+
defaultMessage: '. Changing or removing the enum values '
|
|
1060
|
+
}),
|
|
1061
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
1062
|
+
fontWeight: "bold",
|
|
1063
|
+
children: deletedOrChangedValues.join(', ')
|
|
1064
|
+
}),
|
|
1065
|
+
formatMessage({
|
|
1066
|
+
id: 'form.attribute.condition.enum-change-warning-end',
|
|
1067
|
+
defaultMessage: ' will break these conditions. Do you want to proceed?'
|
|
1094
1068
|
})
|
|
1095
1069
|
]
|
|
1096
1070
|
})
|