UNPKG

@contentstack/live-preview-utils

Version:

Contentstack provides the Live Preview SDK to establish a communication channel between the various Contentstack SDKs and your website, transmitting live changes to the preview pane.

55 lines (54 loc) 1.68 kB
import "../../chunk-5WRI5ZAA.js"; // src/visualBuilder/utils/getFieldType.ts import { FieldDataType } from "./types/index.types.js"; function getFieldType(fieldSchema) { var _a, _b, _c, _d, _e; if (!fieldSchema) return; if (Object.hasOwnProperty.call(fieldSchema, "extension_uid")) { return FieldDataType.CUSTOM_FIELD; } switch (fieldSchema.data_type) { case "text": { if ((_a = fieldSchema.field_metadata) == null ? void 0 : _a.multiline) { return FieldDataType.MULTILINE; } else if ((_b = fieldSchema.field_metadata) == null ? void 0 : _b.allow_rich_text) { return FieldDataType.HTML_RTE; } else if ((_c = fieldSchema.field_metadata) == null ? void 0 : _c.markdown) { return FieldDataType.MARKDOWN_RTE; } else if (fieldSchema.enum) { return FieldDataType.SELECT; } else if (fieldSchema.uid === "url" && ((_d = fieldSchema.field_metadata) == null ? void 0 : _d._default)) { return FieldDataType.URL; } else { return FieldDataType.SINGLELINE; } } case "json": { if ((_e = fieldSchema.field_metadata) == null ? void 0 : _e.allow_json_rte) { return FieldDataType.JSON_RTE; } break; } case "blocks": { return "modular_block"; } case "link": case "isodate": case "boolean": case "block": case "number": case "reference": case "group": case "experience_container": case "file": case "taxonomy": case "global_field": { return FieldDataType[fieldSchema.data_type.toUpperCase()]; } } return ""; } export { getFieldType }; //# sourceMappingURL=getFieldType.js.map