@sanity/form-builder
Version:
Sanity form builder
33 lines (32 loc) • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getCollapsedWithDefaults = getCollapsedWithDefaults;
exports.hasConditionalFields = hasConditionalFields;
function hasConditionalFields(type) {
return typeof type.readOnly === 'function' || typeof type.hidden === 'function';
}
function getCollapsedWithDefaults() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var level = arguments.length > 1 ? arguments[1] : undefined;
if (options.collapsible === true || options.collapsable === true) {
// collapsible explicit set to true
return {
collapsible: true,
collapsed: options.collapsed !== false
};
} else if (options.collapsible === false || options.collapsable === false) {
// collapsible explicit set to false
return {
// hard limit to avoid infinite recursion
collapsible: level > 9,
collapsed: level > 9
};
}
// default
return {
collapsible: level > 2,
collapsed: level > 2
};
}