strapi/packages/strapi-admin/validation/common-functions/check-fields-are-correctly-nested.js
Pierre Noël b6a5e78fe3 fix bad nesting
Signed-off-by: Pierre Noël <petersg83@gmail.com>
2020-07-08 11:47:19 +02:00

27 lines
584 B
JavaScript

'use strict';
const _ = require('lodash');
const checkFieldsAreCorrectlyNested = fields => {
if (_.isNil(fields)) {
// Only check if the fields exist
return true;
} else if (!Array.isArray(fields)) {
return false;
}
let failed = false;
for (let indexA = 0; indexA < fields.length; indexA++) {
failed = fields
.slice(indexA + 1)
.some(
fieldB => fieldB.startsWith(`${fields[indexA]}.`) || fields[indexA].startsWith(`${fieldB}.`)
);
if (failed) break;
}
return !failed;
};
module.exports = checkFieldsAreCorrectlyNested;