@open-formulieren/formio-builder
Version:
An opinionated Formio webform builder for Open Forms
92 lines (91 loc) • 3.89 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getRegistryEntry = exports.isKnownComponentType = void 0;
const types_1 = require("../types");
const addressNL_1 = __importDefault(require("./addressNL"));
const bsn_1 = __importDefault(require("./bsn"));
const checkbox_1 = __importDefault(require("./checkbox"));
const columns_1 = __importDefault(require("./columns"));
const content_1 = __importDefault(require("./content"));
const cosignV1_1 = __importDefault(require("./cosignV1"));
const cosignV2_1 = __importDefault(require("./cosignV2"));
const currency_1 = __importDefault(require("./currency"));
const date_1 = __importDefault(require("./date"));
const datetime_1 = __importDefault(require("./datetime"));
const editgrid_1 = __importDefault(require("./editgrid"));
const email_1 = __importDefault(require("./email"));
const fieldset_1 = __importDefault(require("./fieldset"));
const file_1 = __importDefault(require("./file"));
const iban_1 = __importDefault(require("./iban"));
const licenseplate_1 = __importDefault(require("./licenseplate"));
const map_1 = __importDefault(require("./map"));
const npFamilyMembers_1 = __importDefault(require("./npFamilyMembers"));
const number_1 = __importDefault(require("./number"));
const partners_1 = __importDefault(require("./partners"));
const phonenumber_1 = __importDefault(require("./phonenumber"));
const postcode_1 = __importDefault(require("./postcode"));
const productPrice_1 = __importDefault(require("./productPrice"));
const radio_1 = __importDefault(require("./radio"));
const select_1 = __importDefault(require("./select"));
const selectboxes_1 = __importDefault(require("./selectboxes"));
const signature_1 = __importDefault(require("./signature"));
const softRequiredErrors_1 = __importDefault(require("./softRequiredErrors"));
const textarea_1 = __importDefault(require("./textarea"));
const textfield_1 = __importDefault(require("./textfield"));
const time_1 = __importDefault(require("./time"));
/**
* Type guard to determine if the passed in 'component' is something we have type
* definitions for.
*
* Use this check as high as possible, so that all other child components and
* functionality do not need to worry about `FallbackSchema`.
*/
const isKnownComponentType = (component) => {
return Boolean(component.type && (0, types_1.hasOwnProperty)(REGISTRY, component.type));
};
exports.isKnownComponentType = isKnownComponentType;
const getRegistryEntry = (component) => {
const entry = REGISTRY[component.type];
return entry;
};
exports.getRegistryEntry = getRegistryEntry;
const REGISTRY = {
textfield: textfield_1.default,
email: email_1.default,
date: date_1.default,
datetime: datetime_1.default,
time: time_1.default,
phoneNumber: phonenumber_1.default,
postcode: postcode_1.default,
file: file_1.default,
textarea: textarea_1.default,
number: number_1.default,
checkbox: checkbox_1.default,
selectboxes: selectboxes_1.default,
select: select_1.default,
currency: currency_1.default,
radio: radio_1.default,
// Special types:
iban: iban_1.default,
licenseplate: licenseplate_1.default,
bsn: bsn_1.default,
npFamilyMembers: npFamilyMembers_1.default,
signature: signature_1.default,
cosign: cosignV2_1.default,
addressNL: addressNL_1.default,
map: map_1.default,
editgrid: editgrid_1.default,
partners: partners_1.default,
// layout
content: content_1.default,
columns: columns_1.default,
fieldset: fieldset_1.default,
softRequiredErrors: softRequiredErrors_1.default,
// deprecated
coSign: cosignV1_1.default,
productPrice: productPrice_1.default,
};
exports.default = REGISTRY;