datocms-plugin-sdk
Version:
27 lines • 1.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isManualFieldExtension = isManualFieldExtension;
exports.isReturnTypeOfManualFieldExtensionsHook = isReturnTypeOfManualFieldExtensionsHook;
var guardUtils_js_1 = require("../guardUtils.js");
function isManualFieldExtension(value) {
return ((0, guardUtils_js_1.isRecord)(value) &&
(0, guardUtils_js_1.isString)(value.id) &&
(0, guardUtils_js_1.isString)(value.name) &&
(0, guardUtils_js_1.isString)(value.type) &&
['editor', 'addon'].includes(value.type) &&
((0, guardUtils_js_1.isNullish)(value.asSidebarPanel) ||
(0, guardUtils_js_1.isBoolean)(value.asSidebarPanel) ||
((0, guardUtils_js_1.isRecord)(value.asSidebarPanel) &&
(0, guardUtils_js_1.isBoolean)(value.asSidebarPanel.startOpen))) &&
(((0, guardUtils_js_1.isString)(value.fieldTypes) && value.fieldTypes === 'all') ||
(0, guardUtils_js_1.isArray)(value.fieldTypes, guardUtils_js_1.isString)) &&
((0, guardUtils_js_1.isNullish)(value.configurable) ||
(0, guardUtils_js_1.isBoolean)(value.configurable) ||
((0, guardUtils_js_1.isRecord)(value.configurable) &&
(0, guardUtils_js_1.isNumber)(value.configurable.initialHeight))) &&
((0, guardUtils_js_1.isNullish)(value.initialHeight) || (0, guardUtils_js_1.isNumber)(value.initialHeight)));
}
function isReturnTypeOfManualFieldExtensionsHook(value) {
return (0, guardUtils_js_1.isArray)(value, isManualFieldExtension);
}
//# sourceMappingURL=manualFieldExtensions.js.map