UNPKG

@open-formulieren/formio-builder

Version:

An opinionated Formio webform builder for Open Forms

47 lines (46 loc) 4.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const jsx_runtime_1 = require("react/jsx-runtime"); const react_intl_1 = require("react-intl"); const formio_1 = require("../../../components/formio"); const OperatorSelect = ({ name }) => { const intl = (0, react_intl_1.useIntl)(); const tooltip = intl.formatMessage({ id: "mMn7K3", defaultMessage: [{ type: 0, value: "Specify whether to add or subtract a time delta to/from the variable." }] }); return ((0, jsx_runtime_1.jsx)(formio_1.Select, { name: name, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: 'xI6md8', defaultMessage: [{ type: 0, value: "Add/subtract duration" }] }), tooltip: tooltip, options: [ { value: 'add', label: intl.formatMessage({ id: "W0AAhq", defaultMessage: [{ type: 0, value: "Add" }] }), }, { value: 'subtract', label: intl.formatMessage({ id: "9lk1eS", defaultMessage: [{ type: 0, value: "Subtract" }] }), }, ] })); }; // XXX: at some point we should provide all available variables in the context so that // you can select the variable from a dropdown rather than having to type the key // yourself. const Variable = ({ name }) => { const intl = (0, react_intl_1.useIntl)(); const tooltip = intl.formatMessage({ id: "bvY9oJ", defaultMessage: [{ type: 0, value: "Provide the key of a static, component, or user defined variable." }] }); return ((0, jsx_runtime_1.jsx)(formio_1.TextField, { name: name, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: 'EkVNqG', defaultMessage: [{ type: 0, value: "Variable" }] }), tooltip: tooltip, spellCheck: false })); }; const Years = ({ name }) => { const intl = (0, react_intl_1.useIntl)(); const tooltip = intl.formatMessage({ id: "PhXIai", defaultMessage: [{ type: 0, value: "Number of years. Empty values are ignored." }] }); return ((0, jsx_runtime_1.jsx)(formio_1.NumberField, { name: name, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: '7b9pD8', defaultMessage: [{ type: 0, value: "Years" }] }), tooltip: tooltip, step: 1, min: 0 })); }; const Months = ({ name }) => { const intl = (0, react_intl_1.useIntl)(); const tooltip = intl.formatMessage({ id: "5XOrxo", defaultMessage: [{ type: 0, value: "Number of months. Empty values are ignored." }] }); return ((0, jsx_runtime_1.jsx)(formio_1.NumberField, { name: name, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: '0gbtNe', defaultMessage: [{ type: 0, value: "Months" }] }), tooltip: tooltip, step: 1, min: 0 })); }; const Days = ({ name }) => { const intl = (0, react_intl_1.useIntl)(); const tooltip = intl.formatMessage({ id: "cQvPLh", defaultMessage: [{ type: 0, value: "Number of days. Empty values are ignored." }] }); return ((0, jsx_runtime_1.jsx)(formio_1.NumberField, { name: name, label: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: '4DkoO5', defaultMessage: [{ type: 0, value: "Days" }] }), tooltip: tooltip, step: 1, min: 0 })); }; const RelativeDelta = ({ constraint }) => { return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "row" }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "col-md-6 col-xs-12" }, { children: (0, jsx_runtime_1.jsx)(OperatorSelect, { name: `openForms.${constraint}.operator` }) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "col-md-6 col-xs-12" }, { children: (0, jsx_runtime_1.jsx)(Variable, { name: `openForms.${constraint}.variable` }) }))] })), (0, jsx_runtime_1.jsxs)("div", Object.assign({ className: "row" }, { children: [(0, jsx_runtime_1.jsx)("div", Object.assign({ className: "col-md-4 col-xs-12" }, { children: (0, jsx_runtime_1.jsx)(Years, { name: `openForms.${constraint}.delta.years` }) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "col-md-4 col-xs-12" }, { children: (0, jsx_runtime_1.jsx)(Months, { name: `openForms.${constraint}.delta.months` }) })), (0, jsx_runtime_1.jsx)("div", Object.assign({ className: "col-md-4 col-xs-12" }, { children: (0, jsx_runtime_1.jsx)(Days, { name: `openForms.${constraint}.delta.days` }) }))] }))] })); }; exports.default = RelativeDelta;