UNPKG

@indec/form-builder

Version:

Form builder

51 lines (50 loc) 1.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _questionTypes = _interopRequireDefault(require("../../../../constants/questionTypes")); var _getSelectedOptionLabel = _interopRequireDefault(require("../../../../utils/getSelectedOptionLabel")); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } var getHeaders = function getHeaders(questions, values, headers) { if (headers.some(function (header) { return header.question; })) { var headerQuestions = headers.map(function (header) { return header.question; }); return questions.reduce(function (acc, question) { var _values$question$name; if (headerQuestions.includes(question.id) && !question.multiple && (_values$question$name = values[question.name].answer) !== null && _values$question$name !== void 0 && _values$question$name.value) { var value = values[question.name].answer.value; if ([_questionTypes["default"].TEXT_FIELD, _questionTypes["default"].NUMERIC_FIELD].includes(question.type)) { acc.push(value); } else { acc.push((0, _getSelectedOptionLabel["default"])(question.options, value)); } } return acc; }, []).join(' | '); } return ''; }; function Headers(_ref) { var section = _ref.section, values = _ref.values; var headers = getHeaders(section.questions, values, section.headers); var isHTML = /<[^>]+>/g.test(headers); if (isHTML) { // eslint-disable-next-line react/no-danger return /*#__PURE__*/(0, _jsxRuntime.jsx)("p", { dangerouslySetInnerHTML: { __html: headers }, className: "whitespace-pre-line" }); } return /*#__PURE__*/(0, _jsxRuntime.jsx)("p", { children: headers }); } var _default = exports["default"] = Headers;