mirror of
https://github.com/strapi/strapi.git
synced 2025-08-22 07:38:41 +00:00
Merge pull request #2994 from Getriax/TRIM_MODEL
Trim content builder model attributes
This commit is contained in:
commit
b31d36b99d
@ -6,7 +6,12 @@ const _ = require('lodash');
|
|||||||
const generator = require('strapi-generate');
|
const generator = require('strapi-generate');
|
||||||
const { fromJS, List, Map } = require('immutable');
|
const { fromJS, List, Map } = require('immutable');
|
||||||
const Manager = require('../utils/Manager.js');
|
const Manager = require('../utils/Manager.js');
|
||||||
const { createManager, removeColsLine, reorderList } = require('../utils/helpers.js');
|
const {
|
||||||
|
createManager,
|
||||||
|
removeColsLine,
|
||||||
|
reorderList,
|
||||||
|
deepTrimObject,
|
||||||
|
} = require('../utils/helpers.js');
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
appearance: async (attributes, model, plugin) => {
|
appearance: async (attributes, model, plugin) => {
|
||||||
@ -369,8 +374,9 @@ module.exports = {
|
|||||||
});
|
});
|
||||||
|
|
||||||
Object.assign(attributesNotConfigurable, attrs);
|
Object.assign(attributesNotConfigurable, attrs);
|
||||||
|
const trimmedNotConfigurableAttributes = deepTrimObject(attributesNotConfigurable);
|
||||||
|
|
||||||
return [attributesNotConfigurable, errors];
|
return [trimmedNotConfigurableAttributes, errors];
|
||||||
},
|
},
|
||||||
|
|
||||||
clearRelations: (model, source, force) => {
|
clearRelations: (model, source, force) => {
|
||||||
|
@ -65,11 +65,31 @@ const escapeNewlines = (content, placeholder = '\n') => {
|
|||||||
return content.replace(/[\r\n]+/g, placeholder);
|
return content.replace(/[\r\n]+/g, placeholder);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const deepTrimObject = attribute => {
|
||||||
|
if (Array.isArray(attribute)) {
|
||||||
|
return attribute.map(deepTrimObject);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (typeof attribute === 'object') {
|
||||||
|
return Object.entries(attribute)
|
||||||
|
.reduce((acc, [key, value]) => {
|
||||||
|
const trimmedObject = deepTrimObject(value);
|
||||||
|
|
||||||
|
return { ...acc, [key]: trimmedObject };
|
||||||
|
}, {});
|
||||||
|
}
|
||||||
|
|
||||||
|
return typeof attribute === 'string'
|
||||||
|
? attribute.trim()
|
||||||
|
: attribute;
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
createArrayOfLastEls,
|
createArrayOfLastEls,
|
||||||
createManager,
|
createManager,
|
||||||
getElementsOnALine,
|
getElementsOnALine,
|
||||||
removeColsLine,
|
removeColsLine,
|
||||||
reorderList,
|
reorderList,
|
||||||
escapeNewlines
|
escapeNewlines,
|
||||||
|
deepTrimObject
|
||||||
};
|
};
|
Loading…
x
Reference in New Issue
Block a user